Method: Hive::Broadcast.create_claimed_account

Defined in:
lib/hive/broadcast.rb

.create_claimed_account(options, &block) ⇒ Object

Create a claimed account. options = { wif: wif, params: { creator: creator_account_name, new_account_name: new_account_name, owner: { weight_threshold: 1, account_auths: [], key_auths: [[owner_public_key, 1]], }, active: { weight_threshold: 1, account_auths: [], key_auths: [[active_public_key, 1]], }, posting: { weight_threshold: 1, account_auths: [], key_auths: [[posting_public_key, 1]], }, memo_key: memo_public_key, json_metadata: '{}' } }

Hive::Broadcast.(options)

Parameters:

  • options (Hash)

    options

Options Hash (options):

  • :wif (String)

    Active wif

  • :params (Hash)
    • :creator (String)
    • :new_account_name (String)
    • :owner (Hash)
    • :active (Hash)
    • :posting (Hash)
    • :memo_key (String)
    • :metadata (Hash) Metadata of the account, becomes json_metadata.
    • :json_metadata (String) String version of metadata (use one or the other).
    • :extensions (Array) (optional)
  • :pretend (Boolean)

    Just validate, do not broadcast.

See Also:



559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
# File 'lib/hive/broadcast.rb', line 559

def self.(options, &block)
  required_fields = %i(creator new_account_name owner active posting memo_key json_metadata)
  params = options[:params]
  
  if !!params[:metadata] && !!params[:json_metadata]
    raise Hive::ArgumentError, 'Assign either metadata or json_metadata, not both.'
  end
  
   = params.delete(:metadata) || {}
   ||= (JSON[params[:json_metadata]] || nil) || {}
  params[:json_metadata] = .to_json
  
  check_required_fields(params, *required_fields)
  
  params[:extensions] ||= []
  ops = [[:create_claimed_account, params]]
  
  process(options.merge(ops: ops), &block)
end