The app allows you to give people NEAR accounts that are prefunded with NEAR tokens. This is better than just a vanilla Linkdrop because it allows you to queue up multiple of them and it has a nice UI for the recipient.
The app does this by sending funds to the Linkdrop contract which will create "Drops". You will have a list of these in local storage and you can remove them at any time. This claims the funds back to your current account.
NOTE: If you follow the wallet link of a drop, be warned it will not create accounts because your contract is not eligible to create the .testnet
domain accounts.
Instead, click "Share Drop Link" and visit your own drop.
You will now see a URL Drop heading with some information about the drop. This is what another user would see if they used your URL.
You can either:
- claim the funds
- create an account
- create a contract account (deploys a locked multisig account)
For more details on the linkdrop contract: https://github.com/near/near-linkdrop
yarn && yarn dev
It's recommended you create a sub account to handle your contract deployments:
near login
near create_account [account_id] --masterAccount [your_account_id] --initialBalance [1-5 N]
Now update config.js and set:
const CONTRACT_NAME = [account_id]
All calls to the contract can be found in src/Drops.js
.
The original linkdrop contract is here: https://github.com/nearprotocol/near-linkdrop
An additional function is added to the regular linkdrop contract:
pub fn create_limited_contract_account
This takes 3 additional arguments over the existing pub fn create_account_and_claim
function.
In order to successfully invoke from JS you must pass in the following:
new_account_id: string,
new_public_key: string,
allowance: string,
contract_bytes: [...new Uint8Array(contract_bytes)],
method_names: [...new Uint8Array(new TextEncoder().encode(`
methods,account,is_limited_too_call
`))]
- Node.js
- near-shell
npm i -g near-shell
yarn && yarn dev