# 项目需求

1.任意项目方用户在 Twitter 上建立 Airdrop 活动。

2.符合项目方的地址列表在设定的时间内进行空投。

3.可以设定固定、等比、等差减少的方式来进行投放。

#

# 发布

1.新增入口 Airdrop

# 创建

  • 投放标题 输入不超出 32 字符,超出不显示。

  • 投递方式

    • 所有人

      • 份数
      • 单份投放数量 输入后自动计算总量
      • Amount 输入后自动计算总量
      • Balance
        • ETH 显示 6 位精度。并添加 info 图标,划过图标显示 Transaction costs were subtracted from your ETH balance. This is not your full wallet ETH balance.
        • ERC20 有余额设整数位=x。x<0,显示 6 位精度,值≦0.000000...显示<0.000001。6≦x<12。小数精度=12-x。x≧12.小数精度=0. 没有余额显示为 0.
    • 限定名单

      • 在线 json 或者 csv

        • json 地址、空格、数量、逗号、

        • csv 地址、空格、数量、逗号。

        • 地址判定

          第一步,先判断地址非空和是否 0x 开头

          第二步,把 16 进制字符串转成 10 进制数,看是否能否转换成功

          第三部,判断是否长度是 40 位(去掉 0x)

        • 解析数据

          • 解析失败,显示解析失败信息
          • 解析部分,显示解析详情和失败错误条目数。
          • 计算地址总数,计算空投总数。
          • 显示数据列表,超出 15 条显示滑动条。
      • Amount 不能进行调整,按在线 json 和 csv 的解析的总量进行填充。

  • Amount 选择 Token 显示 Select a Token

    • 默认第一行显示 ETH。并显示自己钱包中余额。同上 Balance。

    • 搜索 Token symbol 、name 、address 可以进行搜索,

    • 默认列表

    • 非默认列表可以进行添加和删除。

    • 判断余额是否小于 Amount,并显示报错。

  • 领取规则

    • 固定 在活动开始到结束时间,符合投放地址领取设定好的
    • 等差递减 设定为 1-99。设置提示信息。例如设置 10 ,那么第一个 24 小时可以领取为 100%,第二个 24 小时领取 90%。第三个 24 小时领取 80%。
    • 等比递减 设定为 1-99。设置提示信息。例如设置 10%,那么第一个 24 小时可以领取为 100%,第二个 24 小时领取 90%。第三个 24 小时领取 81%。
    • 每个地址仅能领取一次。
  • 起止时间

    • 结束时间不能早于开始时间和当前时间。
  • 主按钮

    • 判断钱包连接
    • 判断是否输入标题
    • 判断是否输入份额
    • 判断是否每分数量
    • 判断余额是否大于发送数量
    • 判断结束时间是够小于开始时间
    • 判断解锁数量是否大于发送数量-小于显示解锁当前数量和无限量解锁
    • send
  • 发送状态,

    • 确认页面

      • 所有人
      • 指定列表
    • 发送状态

      • 发送等待

      • 交易上链

      • 交易被取消

  • 推文发送

# 页面展示

  • # 活动加载状态

    • 页面 Loading 状态
    • 页面加载失败状态
  • # 活动状态

  • # 卡片展示

    • 标题
    • 投放进度条
    • 已领取/总数 token symbol 链接地址(eth 无链接)
    • 设置了等差或者等比递减的显示当前能领取比例。
    • 领取范围
    • 可领取/已领取数量
    • 开始时间/活动剩余时间/结束时间
  • # 活动按钮

    • # 所有人

      • 未开始
        • 未连接钱包
          • 显示分享和链接钱包
        • 已链接钱包
          • 显示分享、链接钱包和能 Claim 数量
      • 活动中
        • 未连接钱包
        • 已连接钱包
        • 已领完
      • 活动结束
        • 未连接钱包
        • 已连接钱包
          • 未领取
          • 已领取
          • 发行者取回资产 (剩余资产大于 0 且结束)
    • # 限定列表

      • 未开始
        • 未连接钱包
        • 已链接钱包
      • 活动中
        • 发放中
          • 未连接钱包
          • 已连接钱包
            • 已领取
            • 未领取
        • 发放完成
          • 未连接钱包
          • 已连接钱包
            • 已领取
            • 未领取
      • 结束
        • 未连接
        • 已连接
          • 未领取
          • 已领取
          • 发行者取回资产 (剩余资产大于 0 且结束)

# 分享

  • 未领取分享
  • 已领取分享

# Past

  • 所有人

  • 限定名单

  • 未结束

    • 发送活动
  • 已结束

    • 取回资产