tapass 0.0.0-stage → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +2886 -2
- package/dist/grpc/emit_subscription_error.d.ts +21 -0
- package/dist/grpc/emit_subscription_error.d.ts.map +1 -0
- package/dist/grpc/emit_subscription_error.js +26 -0
- package/dist/grpc/emit_subscription_error.js.map +1 -0
- package/dist/grpc/grpc_services.d.ts +46 -0
- package/dist/grpc/grpc_services.d.ts.map +1 -0
- package/dist/grpc/grpc_services.js +45 -0
- package/dist/grpc/grpc_services.js.map +1 -0
- package/dist/grpc/handle_remove_listener.d.ts +18 -0
- package/dist/grpc/handle_remove_listener.d.ts.map +1 -0
- package/dist/grpc/handle_remove_listener.js +22 -0
- package/dist/grpc/handle_remove_listener.js.map +1 -0
- package/dist/grpc/index.d.ts +32 -0
- package/dist/grpc/index.d.ts.map +1 -0
- package/dist/grpc/index.js +6 -0
- package/dist/grpc/index.js.map +1 -0
- package/dist/index.d.ts +25 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -0
- package/dist/tapd_grpc/api_for_proto.d.ts +28 -0
- package/dist/tapd_grpc/api_for_proto.d.ts.map +1 -0
- package/dist/tapd_grpc/api_for_proto.js +24 -0
- package/dist/tapd_grpc/api_for_proto.js.map +1 -0
- package/dist/tapd_grpc/authenticated_tapd_grpc.d.ts +35 -0
- package/dist/tapd_grpc/authenticated_tapd_grpc.d.ts.map +1 -0
- package/dist/tapd_grpc/authenticated_tapd_grpc.js +76 -0
- package/dist/tapd_grpc/authenticated_tapd_grpc.js.map +1 -0
- package/dist/tapd_grpc/decode_serialized.d.ts +18 -0
- package/dist/tapd_grpc/decode_serialized.d.ts.map +1 -0
- package/dist/tapd_grpc/decode_serialized.js +23 -0
- package/dist/tapd_grpc/decode_serialized.js.map +1 -0
- package/dist/tapd_grpc/grpc_credentials.d.ts +24 -0
- package/dist/tapd_grpc/grpc_credentials.d.ts.map +1 -0
- package/dist/tapd_grpc/grpc_credentials.js +39 -0
- package/dist/tapd_grpc/grpc_credentials.js.map +1 -0
- package/dist/tapd_grpc/grpc_options.d.ts +10 -0
- package/dist/tapd_grpc/grpc_options.d.ts.map +1 -0
- package/dist/tapd_grpc/grpc_options.js +9 -0
- package/dist/tapd_grpc/grpc_options.js.map +1 -0
- package/dist/tapd_grpc/grpc_ssl.d.ts +19 -0
- package/dist/tapd_grpc/grpc_ssl.d.ts.map +1 -0
- package/dist/tapd_grpc/grpc_ssl.js +18 -0
- package/dist/tapd_grpc/grpc_ssl.js.map +1 -0
- package/dist/tapd_grpc/index.d.ts +6 -0
- package/dist/tapd_grpc/index.d.ts.map +1 -0
- package/dist/tapd_grpc/index.js +2 -0
- package/dist/tapd_grpc/index.js.map +1 -0
- package/dist/tapd_grpc/types.d.ts +35 -0
- package/dist/tapd_grpc/types.d.ts.map +1 -0
- package/dist/tapd_grpc/types.js +2 -0
- package/dist/tapd_grpc/types.js.map +1 -0
- package/dist/tapd_methods/address/create_asset_address.d.ts +52 -0
- package/dist/tapd_methods/address/create_asset_address.d.ts.map +1 -0
- package/dist/tapd_methods/address/create_asset_address.js +127 -0
- package/dist/tapd_methods/address/create_asset_address.js.map +1 -0
- package/dist/tapd_methods/address/decode_asset_address.d.ts +38 -0
- package/dist/tapd_methods/address/decode_asset_address.d.ts.map +1 -0
- package/dist/tapd_methods/address/decode_asset_address.js +81 -0
- package/dist/tapd_methods/address/decode_asset_address.js.map +1 -0
- package/dist/tapd_methods/address/get_asset_addresses.d.ts +54 -0
- package/dist/tapd_methods/address/get_asset_addresses.d.ts.map +1 -0
- package/dist/tapd_methods/address/get_asset_addresses.js +153 -0
- package/dist/tapd_methods/address/get_asset_addresses.js.map +1 -0
- package/dist/tapd_methods/address/get_asset_receives.d.ts +72 -0
- package/dist/tapd_methods/address/get_asset_receives.d.ts.map +1 -0
- package/dist/tapd_methods/address/get_asset_receives.js +191 -0
- package/dist/tapd_methods/address/get_asset_receives.js.map +1 -0
- package/dist/tapd_methods/address/index.d.ts +15 -0
- package/dist/tapd_methods/address/index.d.ts.map +1 -0
- package/dist/tapd_methods/address/index.js +6 -0
- package/dist/tapd_methods/address/index.js.map +1 -0
- package/dist/tapd_methods/address/subscribe_to_asset_receives.d.ts +53 -0
- package/dist/tapd_methods/address/subscribe_to_asset_receives.d.ts.map +1 -0
- package/dist/tapd_methods/address/subscribe_to_asset_receives.js +93 -0
- package/dist/tapd_methods/address/subscribe_to_asset_receives.js.map +1 -0
- package/dist/tapd_methods/assets/get_asset_balances.d.ts +64 -0
- package/dist/tapd_methods/assets/get_asset_balances.d.ts.map +1 -0
- package/dist/tapd_methods/assets/get_asset_balances.js +177 -0
- package/dist/tapd_methods/assets/get_asset_balances.js.map +1 -0
- package/dist/tapd_methods/assets/get_asset_burns.d.ts +40 -0
- package/dist/tapd_methods/assets/get_asset_burns.d.ts.map +1 -0
- package/dist/tapd_methods/assets/get_asset_burns.js +92 -0
- package/dist/tapd_methods/assets/get_asset_burns.js.map +1 -0
- package/dist/tapd_methods/assets/get_asset_groups.d.ts +35 -0
- package/dist/tapd_methods/assets/get_asset_groups.d.ts.map +1 -0
- package/dist/tapd_methods/assets/get_asset_groups.js +78 -0
- package/dist/tapd_methods/assets/get_asset_groups.js.map +1 -0
- package/dist/tapd_methods/assets/get_asset_metadata.d.ts +40 -0
- package/dist/tapd_methods/assets/get_asset_metadata.d.ts.map +1 -0
- package/dist/tapd_methods/assets/get_asset_metadata.js +99 -0
- package/dist/tapd_methods/assets/get_asset_metadata.js.map +1 -0
- package/dist/tapd_methods/assets/get_asset_utxos.d.ts +83 -0
- package/dist/tapd_methods/assets/get_asset_utxos.d.ts.map +1 -0
- package/dist/tapd_methods/assets/get_asset_utxos.js +135 -0
- package/dist/tapd_methods/assets/get_asset_utxos.js.map +1 -0
- package/dist/tapd_methods/assets/get_assets.d.ts +113 -0
- package/dist/tapd_methods/assets/get_assets.d.ts.map +1 -0
- package/dist/tapd_methods/assets/get_assets.js +243 -0
- package/dist/tapd_methods/assets/get_assets.js.map +1 -0
- package/dist/tapd_methods/assets/index.d.ts +19 -0
- package/dist/tapd_methods/assets/index.d.ts.map +1 -0
- package/dist/tapd_methods/assets/index.js +7 -0
- package/dist/tapd_methods/assets/index.js.map +1 -0
- package/dist/tapd_methods/channels/asset_payment_args_error.d.ts +18 -0
- package/dist/tapd_methods/channels/asset_payment_args_error.d.ts.map +1 -0
- package/dist/tapd_methods/channels/asset_payment_args_error.js +59 -0
- package/dist/tapd_methods/channels/asset_payment_args_error.js.map +1 -0
- package/dist/tapd_methods/channels/asset_payment_request.d.ts +68 -0
- package/dist/tapd_methods/channels/asset_payment_request.d.ts.map +1 -0
- package/dist/tapd_methods/channels/asset_payment_request.js +54 -0
- package/dist/tapd_methods/channels/asset_payment_request.js.map +1 -0
- package/dist/tapd_methods/channels/create_asset_invoice.d.ts +134 -0
- package/dist/tapd_methods/channels/create_asset_invoice.d.ts.map +1 -0
- package/dist/tapd_methods/channels/create_asset_invoice.js +264 -0
- package/dist/tapd_methods/channels/create_asset_invoice.js.map +1 -0
- package/dist/tapd_methods/channels/decode_asset_payment_request.d.ts +72 -0
- package/dist/tapd_methods/channels/decode_asset_payment_request.d.ts.map +1 -0
- package/dist/tapd_methods/channels/decode_asset_payment_request.js +143 -0
- package/dist/tapd_methods/channels/decode_asset_payment_request.js.map +1 -0
- package/dist/tapd_methods/channels/emit_asset_payment.d.ts +30 -0
- package/dist/tapd_methods/channels/emit_asset_payment.d.ts.map +1 -0
- package/dist/tapd_methods/channels/emit_asset_payment.js +59 -0
- package/dist/tapd_methods/channels/emit_asset_payment.js.map +1 -0
- package/dist/tapd_methods/channels/encode_asset_custom_records.d.ts +51 -0
- package/dist/tapd_methods/channels/encode_asset_custom_records.d.ts.map +1 -0
- package/dist/tapd_methods/channels/encode_asset_custom_records.js +127 -0
- package/dist/tapd_methods/channels/encode_asset_custom_records.js.map +1 -0
- package/dist/tapd_methods/channels/get_asset_invoices.d.ts +84 -0
- package/dist/tapd_methods/channels/get_asset_invoices.d.ts.map +1 -0
- package/dist/tapd_methods/channels/get_asset_invoices.js +193 -0
- package/dist/tapd_methods/channels/get_asset_invoices.js.map +1 -0
- package/dist/tapd_methods/channels/get_asset_payments.d.ts +69 -0
- package/dist/tapd_methods/channels/get_asset_payments.d.ts.map +1 -0
- package/dist/tapd_methods/channels/get_asset_payments.js +180 -0
- package/dist/tapd_methods/channels/get_asset_payments.js.map +1 -0
- package/dist/tapd_methods/channels/index.d.ts +31 -0
- package/dist/tapd_methods/channels/index.d.ts.map +1 -0
- package/dist/tapd_methods/channels/index.js +12 -0
- package/dist/tapd_methods/channels/index.js.map +1 -0
- package/dist/tapd_methods/channels/open_asset_channel.d.ts +53 -0
- package/dist/tapd_methods/channels/open_asset_channel.d.ts.map +1 -0
- package/dist/tapd_methods/channels/open_asset_channel.js +128 -0
- package/dist/tapd_methods/channels/open_asset_channel.js.map +1 -0
- package/dist/tapd_methods/channels/pay_asset_invoice.d.ts +95 -0
- package/dist/tapd_methods/channels/pay_asset_invoice.d.ts.map +1 -0
- package/dist/tapd_methods/channels/pay_asset_invoice.js +132 -0
- package/dist/tapd_methods/channels/pay_asset_invoice.js.map +1 -0
- package/dist/tapd_methods/channels/send_asset_keysend.d.ts +84 -0
- package/dist/tapd_methods/channels/send_asset_keysend.d.ts.map +1 -0
- package/dist/tapd_methods/channels/send_asset_keysend.js +144 -0
- package/dist/tapd_methods/channels/send_asset_keysend.js.map +1 -0
- package/dist/tapd_methods/channels/send_asset_payment.d.ts +33 -0
- package/dist/tapd_methods/channels/send_asset_payment.d.ts.map +1 -0
- package/dist/tapd_methods/channels/send_asset_payment.js +114 -0
- package/dist/tapd_methods/channels/send_asset_payment.js.map +1 -0
- package/dist/tapd_methods/channels/subscribe_to_asset_invoices.d.ts +51 -0
- package/dist/tapd_methods/channels/subscribe_to_asset_invoices.d.ts.map +1 -0
- package/dist/tapd_methods/channels/subscribe_to_asset_invoices.js +104 -0
- package/dist/tapd_methods/channels/subscribe_to_asset_invoices.js.map +1 -0
- package/dist/tapd_methods/channels/subscribe_to_asset_payments.d.ts +59 -0
- package/dist/tapd_methods/channels/subscribe_to_asset_payments.d.ts.map +1 -0
- package/dist/tapd_methods/channels/subscribe_to_asset_payments.js +104 -0
- package/dist/tapd_methods/channels/subscribe_to_asset_payments.js.map +1 -0
- package/dist/tapd_methods/channels/subscribe_to_past_asset_payment.d.ts +62 -0
- package/dist/tapd_methods/channels/subscribe_to_past_asset_payment.d.ts.map +1 -0
- package/dist/tapd_methods/channels/subscribe_to_past_asset_payment.js +106 -0
- package/dist/tapd_methods/channels/subscribe_to_past_asset_payment.js.map +1 -0
- package/dist/tapd_methods/daemon/create_tapd_macaroon.d.ts +45 -0
- package/dist/tapd_methods/daemon/create_tapd_macaroon.d.ts.map +1 -0
- package/dist/tapd_methods/daemon/create_tapd_macaroon.js +99 -0
- package/dist/tapd_methods/daemon/create_tapd_macaroon.js.map +1 -0
- package/dist/tapd_methods/daemon/index.d.ts +8 -0
- package/dist/tapd_methods/daemon/index.d.ts.map +1 -0
- package/dist/tapd_methods/daemon/index.js +4 -0
- package/dist/tapd_methods/daemon/index.js.map +1 -0
- package/dist/tapd_methods/daemon/set_tapd_debug_level.d.ts +23 -0
- package/dist/tapd_methods/daemon/set_tapd_debug_level.d.ts.map +1 -0
- package/dist/tapd_methods/daemon/set_tapd_debug_level.js +60 -0
- package/dist/tapd_methods/daemon/set_tapd_debug_level.js.map +1 -0
- package/dist/tapd_methods/daemon/stop_tapd.d.ts +16 -0
- package/dist/tapd_methods/daemon/stop_tapd.d.ts.map +1 -0
- package/dist/tapd_methods/daemon/stop_tapd.js +50 -0
- package/dist/tapd_methods/daemon/stop_tapd.js.map +1 -0
- package/dist/tapd_methods/index.d.ts +10 -0
- package/dist/tapd_methods/index.d.ts.map +1 -0
- package/dist/tapd_methods/index.js +10 -0
- package/dist/tapd_methods/index.js.map +1 -0
- package/dist/tapd_methods/info/get_tapd_info.d.ts +44 -0
- package/dist/tapd_methods/info/get_tapd_info.d.ts.map +1 -0
- package/dist/tapd_methods/info/get_tapd_info.js +80 -0
- package/dist/tapd_methods/info/get_tapd_info.js.map +1 -0
- package/dist/tapd_methods/info/index.d.ts +4 -0
- package/dist/tapd_methods/info/index.d.ts.map +1 -0
- package/dist/tapd_methods/info/index.js +2 -0
- package/dist/tapd_methods/info/index.js.map +1 -0
- package/dist/tapd_methods/mint/add_asset_to_mint_batch.d.ts +124 -0
- package/dist/tapd_methods/mint/add_asset_to_mint_batch.d.ts.map +1 -0
- package/dist/tapd_methods/mint/add_asset_to_mint_batch.js +283 -0
- package/dist/tapd_methods/mint/add_asset_to_mint_batch.js.map +1 -0
- package/dist/tapd_methods/mint/cancel_mint_batch.d.ts +23 -0
- package/dist/tapd_methods/mint/cancel_mint_batch.d.ts.map +1 -0
- package/dist/tapd_methods/mint/cancel_mint_batch.js +62 -0
- package/dist/tapd_methods/mint/cancel_mint_batch.js.map +1 -0
- package/dist/tapd_methods/mint/finalize_mint_batch.d.ts +64 -0
- package/dist/tapd_methods/mint/finalize_mint_batch.d.ts.map +1 -0
- package/dist/tapd_methods/mint/finalize_mint_batch.js +130 -0
- package/dist/tapd_methods/mint/finalize_mint_batch.js.map +1 -0
- package/dist/tapd_methods/mint/fund_mint_batch.d.ts +82 -0
- package/dist/tapd_methods/mint/fund_mint_batch.d.ts.map +1 -0
- package/dist/tapd_methods/mint/fund_mint_batch.js +145 -0
- package/dist/tapd_methods/mint/fund_mint_batch.js.map +1 -0
- package/dist/tapd_methods/mint/get_mint_batches.d.ts +72 -0
- package/dist/tapd_methods/mint/get_mint_batches.d.ts.map +1 -0
- package/dist/tapd_methods/mint/get_mint_batches.js +123 -0
- package/dist/tapd_methods/mint/get_mint_batches.js.map +1 -0
- package/dist/tapd_methods/mint/index.d.ts +21 -0
- package/dist/tapd_methods/mint/index.d.ts.map +1 -0
- package/dist/tapd_methods/mint/index.js +8 -0
- package/dist/tapd_methods/mint/index.js.map +1 -0
- package/dist/tapd_methods/mint/seal_mint_batch.d.ts +64 -0
- package/dist/tapd_methods/mint/seal_mint_batch.d.ts.map +1 -0
- package/dist/tapd_methods/mint/seal_mint_batch.js +135 -0
- package/dist/tapd_methods/mint/seal_mint_batch.js.map +1 -0
- package/dist/tapd_methods/mint/subscribe_to_mint_events.d.ts +52 -0
- package/dist/tapd_methods/mint/subscribe_to_mint_events.d.ts.map +1 -0
- package/dist/tapd_methods/mint/subscribe_to_mint_events.js +91 -0
- package/dist/tapd_methods/mint/subscribe_to_mint_events.js.map +1 -0
- package/dist/tapd_methods/proofs/decode_asset_proof.d.ts +61 -0
- package/dist/tapd_methods/proofs/decode_asset_proof.d.ts.map +1 -0
- package/dist/tapd_methods/proofs/decode_asset_proof.js +129 -0
- package/dist/tapd_methods/proofs/decode_asset_proof.js.map +1 -0
- package/dist/tapd_methods/proofs/export_asset_proof.d.ts +39 -0
- package/dist/tapd_methods/proofs/export_asset_proof.d.ts.map +1 -0
- package/dist/tapd_methods/proofs/export_asset_proof.js +113 -0
- package/dist/tapd_methods/proofs/export_asset_proof.js.map +1 -0
- package/dist/tapd_methods/proofs/index.d.ts +13 -0
- package/dist/tapd_methods/proofs/index.d.ts.map +1 -0
- package/dist/tapd_methods/proofs/index.js +5 -0
- package/dist/tapd_methods/proofs/index.js.map +1 -0
- package/dist/tapd_methods/proofs/unpack_asset_proof_file.d.ts +29 -0
- package/dist/tapd_methods/proofs/unpack_asset_proof_file.d.ts.map +1 -0
- package/dist/tapd_methods/proofs/unpack_asset_proof_file.js +85 -0
- package/dist/tapd_methods/proofs/unpack_asset_proof_file.js.map +1 -0
- package/dist/tapd_methods/proofs/verify_asset_proof.d.ts +58 -0
- package/dist/tapd_methods/proofs/verify_asset_proof.d.ts.map +1 -0
- package/dist/tapd_methods/proofs/verify_asset_proof.js +110 -0
- package/dist/tapd_methods/proofs/verify_asset_proof.js.map +1 -0
- package/dist/tapd_methods/rfq/add_asset_buy_offer.d.ts +31 -0
- package/dist/tapd_methods/rfq/add_asset_buy_offer.d.ts.map +1 -0
- package/dist/tapd_methods/rfq/add_asset_buy_offer.js +88 -0
- package/dist/tapd_methods/rfq/add_asset_buy_offer.js.map +1 -0
- package/dist/tapd_methods/rfq/add_asset_buy_order.d.ts +79 -0
- package/dist/tapd_methods/rfq/add_asset_buy_order.d.ts.map +1 -0
- package/dist/tapd_methods/rfq/add_asset_buy_order.js +200 -0
- package/dist/tapd_methods/rfq/add_asset_buy_order.js.map +1 -0
- package/dist/tapd_methods/rfq/add_asset_sell_offer.d.ts +30 -0
- package/dist/tapd_methods/rfq/add_asset_sell_offer.d.ts.map +1 -0
- package/dist/tapd_methods/rfq/add_asset_sell_offer.js +87 -0
- package/dist/tapd_methods/rfq/add_asset_sell_offer.js.map +1 -0
- package/dist/tapd_methods/rfq/add_asset_sell_order.d.ts +79 -0
- package/dist/tapd_methods/rfq/add_asset_sell_order.d.ts.map +1 -0
- package/dist/tapd_methods/rfq/add_asset_sell_order.js +200 -0
- package/dist/tapd_methods/rfq/add_asset_sell_order.js.map +1 -0
- package/dist/tapd_methods/rfq/get_accepted_quotes.d.ts +52 -0
- package/dist/tapd_methods/rfq/get_accepted_quotes.d.ts.map +1 -0
- package/dist/tapd_methods/rfq/get_accepted_quotes.js +100 -0
- package/dist/tapd_methods/rfq/get_accepted_quotes.js.map +1 -0
- package/dist/tapd_methods/rfq/get_asset_forwards.d.ts +70 -0
- package/dist/tapd_methods/rfq/get_asset_forwards.d.ts.map +1 -0
- package/dist/tapd_methods/rfq/get_asset_forwards.js +185 -0
- package/dist/tapd_methods/rfq/get_asset_forwards.js.map +1 -0
- package/dist/tapd_methods/rfq/index.d.ts +19 -0
- package/dist/tapd_methods/rfq/index.d.ts.map +1 -0
- package/dist/tapd_methods/rfq/index.js +8 -0
- package/dist/tapd_methods/rfq/index.js.map +1 -0
- package/dist/tapd_methods/rfq/subscribe_to_rfq_events.d.ts +68 -0
- package/dist/tapd_methods/rfq/subscribe_to_rfq_events.d.ts.map +1 -0
- package/dist/tapd_methods/rfq/subscribe_to_rfq_events.js +107 -0
- package/dist/tapd_methods/rfq/subscribe_to_rfq_events.js.map +1 -0
- package/dist/tapd_methods/send/burn_asset.d.ts +135 -0
- package/dist/tapd_methods/send/burn_asset.d.ts.map +1 -0
- package/dist/tapd_methods/send/burn_asset.js +220 -0
- package/dist/tapd_methods/send/burn_asset.js.map +1 -0
- package/dist/tapd_methods/send/get_asset_transfers.d.ts +73 -0
- package/dist/tapd_methods/send/get_asset_transfers.d.ts.map +1 -0
- package/dist/tapd_methods/send/get_asset_transfers.js +122 -0
- package/dist/tapd_methods/send/get_asset_transfers.js.map +1 -0
- package/dist/tapd_methods/send/index.d.ts +15 -0
- package/dist/tapd_methods/send/index.d.ts.map +1 -0
- package/dist/tapd_methods/send/index.js +6 -0
- package/dist/tapd_methods/send/index.js.map +1 -0
- package/dist/tapd_methods/send/register_asset_transfer.d.ts +77 -0
- package/dist/tapd_methods/send/register_asset_transfer.d.ts.map +1 -0
- package/dist/tapd_methods/send/register_asset_transfer.js +165 -0
- package/dist/tapd_methods/send/register_asset_transfer.js.map +1 -0
- package/dist/tapd_methods/send/send_asset.d.ts +94 -0
- package/dist/tapd_methods/send/send_asset.d.ts.map +1 -0
- package/dist/tapd_methods/send/send_asset.js +169 -0
- package/dist/tapd_methods/send/send_asset.js.map +1 -0
- package/dist/tapd_methods/send/subscribe_to_asset_sends.d.ts +117 -0
- package/dist/tapd_methods/send/subscribe_to_asset_sends.d.ts.map +1 -0
- package/dist/tapd_methods/send/subscribe_to_asset_sends.js +159 -0
- package/dist/tapd_methods/send/subscribe_to_asset_sends.js.map +1 -0
- package/dist/tapd_requests/decimal_as_fixed_point.d.ts +23 -0
- package/dist/tapd_requests/decimal_as_fixed_point.d.ts.map +1 -0
- package/dist/tapd_requests/decimal_as_fixed_point.js +31 -0
- package/dist/tapd_requests/decimal_as_fixed_point.js.map +1 -0
- package/dist/tapd_requests/fee_rate_as_tokens_per_kw.d.ts +13 -0
- package/dist/tapd_requests/fee_rate_as_tokens_per_kw.d.ts.map +1 -0
- package/dist/tapd_requests/fee_rate_as_tokens_per_kw.js +21 -0
- package/dist/tapd_requests/fee_rate_as_tokens_per_kw.js.map +1 -0
- package/dist/tapd_requests/index.d.ts +9 -0
- package/dist/tapd_requests/index.d.ts.map +1 -0
- package/dist/tapd_requests/index.js +9 -0
- package/dist/tapd_requests/index.js.map +1 -0
- package/dist/tapd_requests/is_connection_failure.d.ts +23 -0
- package/dist/tapd_requests/is_connection_failure.d.ts.map +1 -0
- package/dist/tapd_requests/is_connection_failure.js +40 -0
- package/dist/tapd_requests/is_connection_failure.js.map +1 -0
- package/dist/tapd_requests/is_method_unsupported.d.ts +24 -0
- package/dist/tapd_requests/is_method_unsupported.d.ts.map +1 -0
- package/dist/tapd_requests/is_method_unsupported.js +27 -0
- package/dist/tapd_requests/is_method_unsupported.js.map +1 -0
- package/dist/tapd_requests/is_permission_denied.d.ts +19 -0
- package/dist/tapd_requests/is_permission_denied.d.ts.map +1 -0
- package/dist/tapd_requests/is_permission_denied.js +16 -0
- package/dist/tapd_requests/is_permission_denied.js.map +1 -0
- package/dist/tapd_requests/is_tapd.d.ts +19 -0
- package/dist/tapd_requests/is_tapd.d.ts.map +1 -0
- package/dist/tapd_requests/is_tapd.js +16 -0
- package/dist/tapd_requests/is_tapd.js.map +1 -0
- package/dist/tapd_requests/mint_funding_request.d.ts +53 -0
- package/dist/tapd_requests/mint_funding_request.d.ts.map +1 -0
- package/dist/tapd_requests/mint_funding_request.js +48 -0
- package/dist/tapd_requests/mint_funding_request.js.map +1 -0
- package/dist/tapd_requests/script_key_type_query.d.ts +26 -0
- package/dist/tapd_requests/script_key_type_query.d.ts.map +1 -0
- package/dist/tapd_requests/script_key_type_query.js +41 -0
- package/dist/tapd_requests/script_key_type_query.js.map +1 -0
- package/dist/tapd_responses/asset_channel_rpc_error.d.ts +19 -0
- package/dist/tapd_responses/asset_channel_rpc_error.d.ts.map +1 -0
- package/dist/tapd_responses/asset_channel_rpc_error.js +69 -0
- package/dist/tapd_responses/asset_channel_rpc_error.js.map +1 -0
- package/dist/tapd_responses/batch_states.d.ts +4 -0
- package/dist/tapd_responses/batch_states.d.ts.map +1 -0
- package/dist/tapd_responses/batch_states.js +13 -0
- package/dist/tapd_responses/batch_states.js.map +1 -0
- package/dist/tapd_responses/fixed_point_as_decimal.d.ts +25 -0
- package/dist/tapd_responses/fixed_point_as_decimal.d.ts.map +1 -0
- package/dist/tapd_responses/fixed_point_as_decimal.js +39 -0
- package/dist/tapd_responses/fixed_point_as_decimal.js.map +1 -0
- package/dist/tapd_responses/index.d.ts +76 -0
- package/dist/tapd_responses/index.d.ts.map +1 -0
- package/dist/tapd_responses/index.js +30 -0
- package/dist/tapd_responses/index.js.map +1 -0
- package/dist/tapd_responses/long_key_as_number.d.ts +16 -0
- package/dist/tapd_responses/long_key_as_number.d.ts.map +1 -0
- package/dist/tapd_responses/long_key_as_number.js +28 -0
- package/dist/tapd_responses/long_key_as_number.js.map +1 -0
- package/dist/tapd_responses/mint_rpc_error.d.ts +19 -0
- package/dist/tapd_responses/mint_rpc_error.d.ts.map +1 -0
- package/dist/tapd_responses/mint_rpc_error.js +35 -0
- package/dist/tapd_responses/mint_rpc_error.js.map +1 -0
- package/dist/tapd_responses/outpoint_as_transaction.d.ts +19 -0
- package/dist/tapd_responses/outpoint_as_transaction.d.ts.map +1 -0
- package/dist/tapd_responses/outpoint_as_transaction.js +23 -0
- package/dist/tapd_responses/outpoint_as_transaction.js.map +1 -0
- package/dist/tapd_responses/receive_statuses.d.ts +4 -0
- package/dist/tapd_responses/receive_statuses.d.ts.map +1 -0
- package/dist/tapd_responses/receive_statuses.js +9 -0
- package/dist/tapd_responses/receive_statuses.js.map +1 -0
- package/dist/tapd_responses/rpc_addr_as_address.d.ts +79 -0
- package/dist/tapd_responses/rpc_addr_as_address.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_addr_as_address.js +87 -0
- package/dist/tapd_responses/rpc_addr_as_address.js.map +1 -0
- package/dist/tapd_responses/rpc_addr_event_as_receive.d.ts +63 -0
- package/dist/tapd_responses/rpc_addr_event_as_receive.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_addr_event_as_receive.js +64 -0
- package/dist/tapd_responses/rpc_addr_event_as_receive.js.map +1 -0
- package/dist/tapd_responses/rpc_asset_amount_as_amount.d.ts +34 -0
- package/dist/tapd_responses/rpc_asset_amount_as_amount.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_asset_amount_as_amount.js +38 -0
- package/dist/tapd_responses/rpc_asset_amount_as_amount.js.map +1 -0
- package/dist/tapd_responses/rpc_asset_as_asset.d.ts +204 -0
- package/dist/tapd_responses/rpc_asset_as_asset.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_asset_as_asset.js +174 -0
- package/dist/tapd_responses/rpc_asset_as_asset.js.map +1 -0
- package/dist/tapd_responses/rpc_asset_balance_as_balance.d.ts +53 -0
- package/dist/tapd_responses/rpc_asset_balance_as_balance.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_asset_balance_as_balance.js +53 -0
- package/dist/tapd_responses/rpc_asset_balance_as_balance.js.map +1 -0
- package/dist/tapd_responses/rpc_asset_burn_as_burn.d.ts +51 -0
- package/dist/tapd_responses/rpc_asset_burn_as_burn.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_asset_burn_as_burn.js +54 -0
- package/dist/tapd_responses/rpc_asset_burn_as_burn.js.map +1 -0
- package/dist/tapd_responses/rpc_asset_invoice_as_invoice.d.ts +39 -0
- package/dist/tapd_responses/rpc_asset_invoice_as_invoice.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_asset_invoice_as_invoice.js +45 -0
- package/dist/tapd_responses/rpc_asset_invoice_as_invoice.js.map +1 -0
- package/dist/tapd_responses/rpc_asset_meta_as_metadata.d.ts +68 -0
- package/dist/tapd_responses/rpc_asset_meta_as_metadata.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_asset_meta_as_metadata.js +70 -0
- package/dist/tapd_responses/rpc_asset_meta_as_metadata.js.map +1 -0
- package/dist/tapd_responses/rpc_asset_pay_req_as_request.d.ts +76 -0
- package/dist/tapd_responses/rpc_asset_pay_req_as_request.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_asset_pay_req_as_request.js +73 -0
- package/dist/tapd_responses/rpc_asset_pay_req_as_request.js.map +1 -0
- package/dist/tapd_responses/rpc_asset_payment_as_payment.d.ts +39 -0
- package/dist/tapd_responses/rpc_asset_payment_as_payment.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_asset_payment_as_payment.js +45 -0
- package/dist/tapd_responses/rpc_asset_payment_as_payment.js.map +1 -0
- package/dist/tapd_responses/rpc_batch_as_batch.d.ts +158 -0
- package/dist/tapd_responses/rpc_batch_as_batch.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_batch_as_batch.js +181 -0
- package/dist/tapd_responses/rpc_batch_as_batch.js.map +1 -0
- package/dist/tapd_responses/rpc_buy_quote_as_quote.d.ts +83 -0
- package/dist/tapd_responses/rpc_buy_quote_as_quote.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_buy_quote_as_quote.js +85 -0
- package/dist/tapd_responses/rpc_buy_quote_as_quote.js.map +1 -0
- package/dist/tapd_responses/rpc_decoded_proof_as_proof.d.ts +161 -0
- package/dist/tapd_responses/rpc_decoded_proof_as_proof.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_decoded_proof_as_proof.js +138 -0
- package/dist/tapd_responses/rpc_decoded_proof_as_proof.js.map +1 -0
- package/dist/tapd_responses/rpc_forward_as_asset_forward.d.ts +100 -0
- package/dist/tapd_responses/rpc_forward_as_asset_forward.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_forward_as_asset_forward.js +101 -0
- package/dist/tapd_responses/rpc_forward_as_asset_forward.js.map +1 -0
- package/dist/tapd_responses/rpc_grouped_assets_as_group.d.ts +76 -0
- package/dist/tapd_responses/rpc_grouped_assets_as_group.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_grouped_assets_as_group.js +71 -0
- package/dist/tapd_responses/rpc_grouped_assets_as_group.js.map +1 -0
- package/dist/tapd_responses/rpc_managed_utxo_as_utxo.d.ts +63 -0
- package/dist/tapd_responses/rpc_managed_utxo_as_utxo.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_managed_utxo_as_utxo.js +65 -0
- package/dist/tapd_responses/rpc_managed_utxo_as_utxo.js.map +1 -0
- package/dist/tapd_responses/rpc_receive_event_as_receive_update.d.ts +53 -0
- package/dist/tapd_responses/rpc_receive_event_as_receive_update.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_receive_event_as_receive_update.js +52 -0
- package/dist/tapd_responses/rpc_receive_event_as_receive_update.js.map +1 -0
- package/dist/tapd_responses/rpc_rfq_event_as_event.d.ts +70 -0
- package/dist/tapd_responses/rpc_rfq_event_as_event.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_rfq_event_as_event.js +89 -0
- package/dist/tapd_responses/rpc_rfq_event_as_event.js.map +1 -0
- package/dist/tapd_responses/rpc_sell_quote_as_quote.d.ts +80 -0
- package/dist/tapd_responses/rpc_sell_quote_as_quote.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_sell_quote_as_quote.js +85 -0
- package/dist/tapd_responses/rpc_sell_quote_as_quote.js.map +1 -0
- package/dist/tapd_responses/rpc_send_event_as_send_event.d.ts +124 -0
- package/dist/tapd_responses/rpc_send_event_as_send_event.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_send_event_as_send_event.js +161 -0
- package/dist/tapd_responses/rpc_send_event_as_send_event.js.map +1 -0
- package/dist/tapd_responses/rpc_transfer_as_transfer.d.ts +241 -0
- package/dist/tapd_responses/rpc_transfer_as_transfer.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_transfer_as_transfer.js +212 -0
- package/dist/tapd_responses/rpc_transfer_as_transfer.js.map +1 -0
- package/dist/tapd_responses/short_channel_id_as_channel.d.ts +13 -0
- package/dist/tapd_responses/short_channel_id_as_channel.d.ts.map +1 -0
- package/dist/tapd_responses/short_channel_id_as_channel.js +26 -0
- package/dist/tapd_responses/short_channel_id_as_channel.js.map +1 -0
- package/dist/typescript/index.d.ts +16 -0
- package/dist/typescript/index.d.ts.map +1 -0
- package/dist/typescript/index.js +2 -0
- package/dist/typescript/index.js.map +1 -0
- package/package.json +76 -3
- package/protos/VERSIONS +2 -0
- package/protos/lnrpc/lightning.proto +5380 -0
- package/protos/lnrpc/routerrpc/router.proto +1115 -0
- package/protos/taprpc/assetwalletrpc/assetwallet.proto +631 -0
- package/protos/taprpc/authmailboxrpc/mailbox.proto +281 -0
- package/protos/taprpc/mintrpc/mint.proto +452 -0
- package/protos/taprpc/portfoliopilotrpc/portfolio_pilot.proto +410 -0
- package/protos/taprpc/priceoraclerpc/price_oracle.proto +262 -0
- package/protos/taprpc/rfqrpc/rfq.proto +614 -0
- package/protos/taprpc/tapchannelrpc/tapchannel.proto +490 -0
- package/protos/taprpc/tapcommon.proto +47 -0
- package/protos/taprpc/tapdevrpc/tapdev.proto +120 -0
- package/protos/taprpc/taprootassets.proto +2117 -0
- package/protos/taprpc/universerpc/universe.proto +1101 -0
- package/src/grpc/emit_subscription_error.ts +39 -0
- package/src/grpc/grpc_services.ts +45 -0
- package/src/grpc/handle_remove_listener.ts +35 -0
- package/src/grpc/index.ts +18 -0
- package/src/index.ts +24 -0
- package/src/tapd_grpc/api_for_proto.ts +42 -0
- package/src/tapd_grpc/authenticated_tapd_grpc.ts +88 -0
- package/src/tapd_grpc/decode_serialized.ts +25 -0
- package/src/tapd_grpc/grpc_credentials.ts +48 -0
- package/src/tapd_grpc/grpc_options.ts +10 -0
- package/src/tapd_grpc/grpc_ssl.ts +20 -0
- package/src/tapd_grpc/index.ts +5 -0
- package/src/tapd_grpc/types.ts +35 -0
- package/src/tapd_methods/address/create_asset_address.ts +179 -0
- package/src/tapd_methods/address/decode_asset_address.ts +117 -0
- package/src/tapd_methods/address/get_asset_addresses.ts +212 -0
- package/src/tapd_methods/address/get_asset_receives.ts +265 -0
- package/src/tapd_methods/address/index.ts +14 -0
- package/src/tapd_methods/address/subscribe_to_asset_receives.ts +114 -0
- package/src/tapd_methods/assets/get_asset_balances.ts +249 -0
- package/src/tapd_methods/assets/get_asset_burns.ts +133 -0
- package/src/tapd_methods/assets/get_asset_groups.ts +109 -0
- package/src/tapd_methods/assets/get_asset_metadata.ts +141 -0
- package/src/tapd_methods/assets/get_asset_utxos.ts +175 -0
- package/src/tapd_methods/assets/get_assets.ts +327 -0
- package/src/tapd_methods/assets/index.ts +18 -0
- package/src/tapd_methods/channels/asset_payment_args_error.ts +83 -0
- package/src/tapd_methods/channels/asset_payment_request.ts +76 -0
- package/src/tapd_methods/channels/create_asset_invoice.ts +387 -0
- package/src/tapd_methods/channels/decode_asset_payment_request.ts +192 -0
- package/src/tapd_methods/channels/emit_asset_payment.ts +78 -0
- package/src/tapd_methods/channels/encode_asset_custom_records.ts +187 -0
- package/src/tapd_methods/channels/get_asset_invoices.ts +258 -0
- package/src/tapd_methods/channels/get_asset_payments.ts +243 -0
- package/src/tapd_methods/channels/index.ts +30 -0
- package/src/tapd_methods/channels/open_asset_channel.ts +193 -0
- package/src/tapd_methods/channels/pay_asset_invoice.ts +171 -0
- package/src/tapd_methods/channels/send_asset_keysend.ts +196 -0
- package/src/tapd_methods/channels/send_asset_payment.ts +158 -0
- package/src/tapd_methods/channels/subscribe_to_asset_invoices.ts +134 -0
- package/src/tapd_methods/channels/subscribe_to_asset_payments.ts +126 -0
- package/src/tapd_methods/channels/subscribe_to_past_asset_payment.ts +132 -0
- package/src/tapd_methods/daemon/create_tapd_macaroon.ts +153 -0
- package/src/tapd_methods/daemon/index.ts +7 -0
- package/src/tapd_methods/daemon/set_tapd_debug_level.ts +90 -0
- package/src/tapd_methods/daemon/stop_tapd.ts +75 -0
- package/src/tapd_methods/index.ts +9 -0
- package/src/tapd_methods/info/get_tapd_info.ts +129 -0
- package/src/tapd_methods/info/index.ts +3 -0
- package/src/tapd_methods/mint/add_asset_to_mint_batch.ts +396 -0
- package/src/tapd_methods/mint/cancel_mint_batch.ts +95 -0
- package/src/tapd_methods/mint/finalize_mint_batch.ts +181 -0
- package/src/tapd_methods/mint/fund_mint_batch.ts +193 -0
- package/src/tapd_methods/mint/get_mint_batches.ts +162 -0
- package/src/tapd_methods/mint/index.ts +20 -0
- package/src/tapd_methods/mint/seal_mint_batch.ts +184 -0
- package/src/tapd_methods/mint/subscribe_to_mint_events.ts +104 -0
- package/src/tapd_methods/proofs/decode_asset_proof.ts +175 -0
- package/src/tapd_methods/proofs/export_asset_proof.ts +169 -0
- package/src/tapd_methods/proofs/index.ts +12 -0
- package/src/tapd_methods/proofs/unpack_asset_proof_file.ts +126 -0
- package/src/tapd_methods/proofs/verify_asset_proof.ts +156 -0
- package/src/tapd_methods/rfq/add_asset_buy_offer.ts +127 -0
- package/src/tapd_methods/rfq/add_asset_buy_order.ts +279 -0
- package/src/tapd_methods/rfq/add_asset_sell_offer.ts +126 -0
- package/src/tapd_methods/rfq/add_asset_sell_order.ts +279 -0
- package/src/tapd_methods/rfq/get_accepted_quotes.ts +137 -0
- package/src/tapd_methods/rfq/get_asset_forwards.ts +259 -0
- package/src/tapd_methods/rfq/index.ts +18 -0
- package/src/tapd_methods/rfq/subscribe_to_rfq_events.ts +130 -0
- package/src/tapd_methods/send/burn_asset.ts +280 -0
- package/src/tapd_methods/send/get_asset_transfers.ts +161 -0
- package/src/tapd_methods/send/index.ts +14 -0
- package/src/tapd_methods/send/register_asset_transfer.ts +219 -0
- package/src/tapd_methods/send/send_asset.ts +223 -0
- package/src/tapd_methods/send/subscribe_to_asset_sends.ts +181 -0
- package/src/tapd_requests/decimal_as_fixed_point.ts +36 -0
- package/src/tapd_requests/fee_rate_as_tokens_per_kw.ts +23 -0
- package/src/tapd_requests/index.ts +8 -0
- package/src/tapd_requests/is_connection_failure.ts +48 -0
- package/src/tapd_requests/is_method_unsupported.ts +33 -0
- package/src/tapd_requests/is_permission_denied.ts +18 -0
- package/src/tapd_requests/is_tapd.ts +22 -0
- package/src/tapd_requests/mint_funding_request.ts +57 -0
- package/src/tapd_requests/script_key_type_query.ts +44 -0
- package/src/tapd_responses/asset_channel_rpc_error.ts +73 -0
- package/src/tapd_responses/batch_states.ts +12 -0
- package/src/tapd_responses/fixed_point_as_decimal.ts +51 -0
- package/src/tapd_responses/index.ts +75 -0
- package/src/tapd_responses/long_key_as_number.ts +31 -0
- package/src/tapd_responses/mint_rpc_error.ts +39 -0
- package/src/tapd_responses/outpoint_as_transaction.ts +25 -0
- package/src/tapd_responses/receive_statuses.ts +8 -0
- package/src/tapd_responses/rpc_addr_as_address.ts +138 -0
- package/src/tapd_responses/rpc_addr_event_as_receive.ts +103 -0
- package/src/tapd_responses/rpc_asset_amount_as_amount.ts +57 -0
- package/src/tapd_responses/rpc_asset_as_asset.ts +299 -0
- package/src/tapd_responses/rpc_asset_balance_as_balance.ts +85 -0
- package/src/tapd_responses/rpc_asset_burn_as_burn.ts +85 -0
- package/src/tapd_responses/rpc_asset_invoice_as_invoice.ts +62 -0
- package/src/tapd_responses/rpc_asset_meta_as_metadata.ts +113 -0
- package/src/tapd_responses/rpc_asset_pay_req_as_request.ts +114 -0
- package/src/tapd_responses/rpc_asset_payment_as_payment.ts +62 -0
- package/src/tapd_responses/rpc_batch_as_batch.ts +281 -0
- package/src/tapd_responses/rpc_buy_quote_as_quote.ts +139 -0
- package/src/tapd_responses/rpc_decoded_proof_as_proof.ts +229 -0
- package/src/tapd_responses/rpc_forward_as_asset_forward.ts +164 -0
- package/src/tapd_responses/rpc_grouped_assets_as_group.ts +117 -0
- package/src/tapd_responses/rpc_managed_utxo_as_utxo.ts +105 -0
- package/src/tapd_responses/rpc_receive_event_as_receive_update.ts +84 -0
- package/src/tapd_responses/rpc_rfq_event_as_event.ts +123 -0
- package/src/tapd_responses/rpc_sell_quote_as_quote.ts +136 -0
- package/src/tapd_responses/rpc_send_event_as_send_event.ts +245 -0
- package/src/tapd_responses/rpc_transfer_as_transfer.ts +366 -0
- package/src/tapd_responses/short_channel_id_as_channel.ts +30 -0
- package/src/typescript/asyncjs_util.d.ts +14 -0
- package/src/typescript/index.ts +22 -0
- package/src/typescript/invoices.d.ts +30 -0
- package/src/typescript/lightning_lnd_responses.d.ts +44 -0
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import {auto as asyncAuto} from 'async';
|
|
2
|
+
import {returnResult} from 'asyncjs-util';
|
|
3
|
+
|
|
4
|
+
import {isConnectionFailure} from '../../tapd_requests/index.js';
|
|
5
|
+
import {isPermissionDenied} from '../../tapd_requests/index.js';
|
|
6
|
+
import {isTapd} from '../../tapd_requests/index.js';
|
|
7
|
+
import {rpcAssetMetaAsMetadata} from '../../tapd_responses/index.js';
|
|
8
|
+
import type {Metadata} from '../../tapd_responses/index.js';
|
|
9
|
+
import type {AuthenticatedTapdArgs} from '../../typescript/index.js';
|
|
10
|
+
import type {TapdCallback} from '../../typescript/index.js';
|
|
11
|
+
import type {TapdError} from '../../typescript/index.js';
|
|
12
|
+
import type {TapdMethod} from '../../typescript/index.js';
|
|
13
|
+
|
|
14
|
+
const {from} = Buffer;
|
|
15
|
+
const isHash = (n: string) => /^[0-9A-F]{64}$/i.test(n);
|
|
16
|
+
const lookupError = 'asset lookup failed for asset';
|
|
17
|
+
const method = 'fetchAssetMeta';
|
|
18
|
+
const notFoundError = 'asset meta not found';
|
|
19
|
+
const type = 'default';
|
|
20
|
+
|
|
21
|
+
export type GetAssetMetadataArgs = AuthenticatedTapdArgs<{
|
|
22
|
+
/** Asset Id Hex String */
|
|
23
|
+
asset_id?: string;
|
|
24
|
+
/** Metadata Hash Hex String */
|
|
25
|
+
meta_hash?: string;
|
|
26
|
+
}>;
|
|
27
|
+
|
|
28
|
+
export type GetAssetMetadataResult = Metadata;
|
|
29
|
+
|
|
30
|
+
type Tasks = {
|
|
31
|
+
getMetadata: GetAssetMetadataResult;
|
|
32
|
+
validate: undefined;
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
/** Get the metadata of an asset
|
|
36
|
+
|
|
37
|
+
Requires `assets:read` permission
|
|
38
|
+
|
|
39
|
+
An `asset_id` or a `meta_hash` is required, but not both
|
|
40
|
+
|
|
41
|
+
{
|
|
42
|
+
[asset_id]: <Asset Id Hex String>
|
|
43
|
+
[meta_hash]: <Metadata Hash Hex String>
|
|
44
|
+
tapd: <Authenticated tapd API Object>
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
@returns via cbk or Promise
|
|
48
|
+
{
|
|
49
|
+
canonical_universes: [<Canonical Universe URL String>]
|
|
50
|
+
data: <Metadata Hex String>
|
|
51
|
+
[decimal_display]: <Decimal Places To Show Number>
|
|
52
|
+
[delegation_key]: <Supply Commitment Delegation Public Key Hex String>
|
|
53
|
+
hash: <Metadata Hash Hex String>
|
|
54
|
+
is_publishing_supply_commitments: <Issuer Publishes Supply Commitments Bool>
|
|
55
|
+
type: <Metadata Type String> // json, opaque, unknown
|
|
56
|
+
unknown_types: [{
|
|
57
|
+
type: <TLV Type Numeric String>
|
|
58
|
+
value: <Value Hex String>
|
|
59
|
+
}]
|
|
60
|
+
}
|
|
61
|
+
*/
|
|
62
|
+
const getAssetMetadata: TapdMethod<
|
|
63
|
+
GetAssetMetadataArgs,
|
|
64
|
+
GetAssetMetadataResult
|
|
65
|
+
> = (
|
|
66
|
+
args: GetAssetMetadataArgs,
|
|
67
|
+
cbk?: TapdCallback<GetAssetMetadataResult>,
|
|
68
|
+
) => {
|
|
69
|
+
return new Promise((resolve, reject) => {
|
|
70
|
+
return asyncAuto<Tasks, TapdError>(
|
|
71
|
+
{
|
|
72
|
+
// Check arguments
|
|
73
|
+
validate: cbk => {
|
|
74
|
+
if (!args.asset_id && !args.meta_hash) {
|
|
75
|
+
return cbk([400, 'ExpectedAssetIdOrMetaHashToGetAssetMetadata']);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
if (!!args.asset_id && !!args.meta_hash) {
|
|
79
|
+
return cbk([400, 'ExpectedAssetIdOrMetaHashNotBothToGetMetadata']);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
if (!!args.asset_id && !isHash(args.asset_id)) {
|
|
83
|
+
return cbk([400, 'ExpectedAssetIdHexToGetAssetMetadata']);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
if (!!args.meta_hash && !isHash(args.meta_hash)) {
|
|
87
|
+
return cbk([400, 'ExpectedMetaHashHexToGetAssetMetadata']);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
if (!isTapd({method, type, tapd: args.tapd})) {
|
|
91
|
+
return cbk([400, 'ExpectedAuthenticatedTapdToGetAssetMetadata']);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
return cbk();
|
|
95
|
+
},
|
|
96
|
+
|
|
97
|
+
// Get the metadata
|
|
98
|
+
getMetadata: [
|
|
99
|
+
'validate',
|
|
100
|
+
({}, cbk) => {
|
|
101
|
+
const request = !!args.asset_id
|
|
102
|
+
? {asset_id: from(args.asset_id, 'hex')}
|
|
103
|
+
: {meta_hash: from(args.meta_hash!, 'hex')};
|
|
104
|
+
|
|
105
|
+
return args.tapd[type][method](request, (err: any, res: any) => {
|
|
106
|
+
if (isConnectionFailure({err})) {
|
|
107
|
+
return cbk([503, 'FailedToConnectToTapdToGetAssetMetadata']);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
if (isPermissionDenied({err})) {
|
|
111
|
+
return cbk([403, 'PermissionDeniedToGetAssetMetadata']);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
if (!!err && String(err.details).includes(notFoundError)) {
|
|
115
|
+
return cbk([404, 'AssetMetadataNotFound']);
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
// tapd did not find the asset locally or in its universes
|
|
119
|
+
if (!!err && String(err.details).includes(lookupError)) {
|
|
120
|
+
return cbk([404, 'AssetNotFound']);
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
if (!!err) {
|
|
124
|
+
return cbk([503, 'UnexpectedErrorGettingAssetMetadata', {err}]);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
try {
|
|
128
|
+
return cbk(null, rpcAssetMetaAsMetadata(res));
|
|
129
|
+
} catch (err: any) {
|
|
130
|
+
return cbk([503, err.message]);
|
|
131
|
+
}
|
|
132
|
+
});
|
|
133
|
+
},
|
|
134
|
+
],
|
|
135
|
+
},
|
|
136
|
+
returnResult({reject, resolve, of: 'getMetadata'}, cbk),
|
|
137
|
+
);
|
|
138
|
+
});
|
|
139
|
+
};
|
|
140
|
+
|
|
141
|
+
export default getAssetMetadata;
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
import {auto as asyncAuto} from 'async';
|
|
2
|
+
import {returnResult} from 'asyncjs-util';
|
|
3
|
+
|
|
4
|
+
import {isConnectionFailure} from '../../tapd_requests/index.js';
|
|
5
|
+
import {isPermissionDenied} from '../../tapd_requests/index.js';
|
|
6
|
+
import {isTapd} from '../../tapd_requests/index.js';
|
|
7
|
+
import {scriptKeyTypeQuery} from '../../tapd_requests/index.js';
|
|
8
|
+
import {rpcManagedUtxoAsUtxo} from '../../tapd_responses/index.js';
|
|
9
|
+
import type {Utxo} from '../../tapd_responses/index.js';
|
|
10
|
+
import type {AuthenticatedTapdArgs} from '../../typescript/index.js';
|
|
11
|
+
import type {TapdCallback} from '../../typescript/index.js';
|
|
12
|
+
import type {TapdError} from '../../typescript/index.js';
|
|
13
|
+
import type {TapdMethod} from '../../typescript/index.js';
|
|
14
|
+
|
|
15
|
+
const method = 'listUtxos';
|
|
16
|
+
const type = 'default';
|
|
17
|
+
const {values} = Object;
|
|
18
|
+
|
|
19
|
+
export type GetAssetUtxosArgs = AuthenticatedTapdArgs<{
|
|
20
|
+
/** Include Leased UTXOs */
|
|
21
|
+
is_including_leased?: boolean;
|
|
22
|
+
/** Script Key Type */
|
|
23
|
+
script_key_type?: string;
|
|
24
|
+
}>;
|
|
25
|
+
|
|
26
|
+
export type GetAssetUtxosResult = {
|
|
27
|
+
utxos: Utxo[];
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
type Tasks = {
|
|
31
|
+
getUtxos: GetAssetUtxosResult;
|
|
32
|
+
validate: undefined;
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
/** Get the on-chain outputs that hold the assets of this node
|
|
36
|
+
|
|
37
|
+
Requires `assets:read` permission
|
|
38
|
+
|
|
39
|
+
By default, tapd includes only assets with a BIP-86 script key. Use
|
|
40
|
+
`script_key_type` to get other assets, for example assets in channels.
|
|
41
|
+
|
|
42
|
+
{
|
|
43
|
+
[is_including_leased]: <Include Leased UTXOs Bool>
|
|
44
|
+
[script_key_type]: <Script Key Type String> // all, bip86, burn, channel,
|
|
45
|
+
// script_path_external,
|
|
46
|
+
// tombstone, unique_pedersen
|
|
47
|
+
tapd: <Authenticated tapd API Object>
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
@returns via cbk or Promise
|
|
51
|
+
{
|
|
52
|
+
utxos: [{
|
|
53
|
+
assets: [{
|
|
54
|
+
amount: <Asset Units Numeric String>
|
|
55
|
+
[anchor]: {
|
|
56
|
+
[block_hash]: <Anchor Block Hash Hex String>
|
|
57
|
+
[block_height]: <Anchor Block Height Number>
|
|
58
|
+
[confirmed_at]: <Anchor Confirmed At ISO 8601 Date String>
|
|
59
|
+
internal_key: <Anchor Internal Key Hex String>
|
|
60
|
+
merkle_root: <Anchor Taproot Merkle Root Hex String>
|
|
61
|
+
[tapscript_sibling]: <Tapscript Sibling Preimage Hex String>
|
|
62
|
+
transaction: <Raw Anchor Transaction Hex String>
|
|
63
|
+
transaction_id: <Anchor Transaction Id Hex String>
|
|
64
|
+
transaction_vout: <Anchor Transaction Output Index Number>
|
|
65
|
+
}
|
|
66
|
+
asset_id: <Asset Id Hex String>
|
|
67
|
+
[decimal_display]: <Decimal Places To Show Number>
|
|
68
|
+
genesis_output_index: <Genesis Commitment Output Index Number>
|
|
69
|
+
genesis_transaction_id: <Genesis Point Transaction Id Hex String>
|
|
70
|
+
genesis_transaction_vout: <Genesis Point Output Index Number>
|
|
71
|
+
[group]: {
|
|
72
|
+
key: <Tweaked Group Key Hex String>
|
|
73
|
+
raw_key: <Raw Group Key Hex String>
|
|
74
|
+
[tapscript_root]: <Group Tapscript Root Hex String>
|
|
75
|
+
[witness]: <Group Membership Witness Hex String>
|
|
76
|
+
}
|
|
77
|
+
is_burn: <Asset Is Burned Bool>
|
|
78
|
+
is_collectible: <Asset Is Collectible Bool>
|
|
79
|
+
is_local: <Script Key Belongs To This Node Bool>
|
|
80
|
+
is_spent: <Asset Is Spent Bool>
|
|
81
|
+
[lease_expires_at]: <Lease Expires At ISO 8601 Date String>
|
|
82
|
+
[lease_owner]: <Lease Owner Id Hex String>
|
|
83
|
+
[lock_time]: <Lock Time Number>
|
|
84
|
+
meta_hash: <Asset Metadata Hash Hex String>
|
|
85
|
+
name: <Asset Name String>
|
|
86
|
+
[relative_lock_time]: <Relative Lock Time Number>
|
|
87
|
+
script_key: <Script Key Hex String>
|
|
88
|
+
script_key_type: <Script Key Type String>
|
|
89
|
+
script_version: <Script Version Number>
|
|
90
|
+
version: <Asset Version Number>
|
|
91
|
+
}]
|
|
92
|
+
internal_key: <Internal Key Hex String>
|
|
93
|
+
[lease_expires_at]: <Lease Expires At ISO 8601 Date String>
|
|
94
|
+
[lease_owner]: <Lease Owner Id Hex String>
|
|
95
|
+
merkle_root: <Taproot Merkle Root Hex String>
|
|
96
|
+
taproot_asset_root: <Taproot Asset Root Commitment Hash Hex String>
|
|
97
|
+
tokens: <Output Value Tokens Number>
|
|
98
|
+
transaction_id: <Transaction Id Hex String>
|
|
99
|
+
transaction_vout: <Transaction Output Index Number>
|
|
100
|
+
}]
|
|
101
|
+
}
|
|
102
|
+
*/
|
|
103
|
+
const getAssetUtxos: TapdMethod<GetAssetUtxosArgs, GetAssetUtxosResult> = (
|
|
104
|
+
args: GetAssetUtxosArgs,
|
|
105
|
+
cbk?: TapdCallback<GetAssetUtxosResult>,
|
|
106
|
+
) => {
|
|
107
|
+
return new Promise((resolve, reject) => {
|
|
108
|
+
return asyncAuto<Tasks, TapdError>(
|
|
109
|
+
{
|
|
110
|
+
// Check arguments
|
|
111
|
+
validate: cbk => {
|
|
112
|
+
try {
|
|
113
|
+
scriptKeyTypeQuery(args.script_key_type);
|
|
114
|
+
} catch {
|
|
115
|
+
return cbk([400, 'ExpectedKnownScriptKeyTypeToGetAssetUtxos']);
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
if (!isTapd({method, type, tapd: args.tapd})) {
|
|
119
|
+
return cbk([400, 'ExpectedAuthenticatedTapdToGetAssetUtxos']);
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
return cbk();
|
|
123
|
+
},
|
|
124
|
+
|
|
125
|
+
// Get the UTXOs
|
|
126
|
+
getUtxos: [
|
|
127
|
+
'validate',
|
|
128
|
+
({}, cbk) => {
|
|
129
|
+
const request = {
|
|
130
|
+
include_leased: !!args.is_including_leased,
|
|
131
|
+
script_key_type: scriptKeyTypeQuery(args.script_key_type),
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
return args.tapd[type][method](request, (err: any, res: any) => {
|
|
135
|
+
if (isConnectionFailure({err})) {
|
|
136
|
+
return cbk([503, 'FailedToConnectToTapdToGetAssetUtxos']);
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
if (isPermissionDenied({err})) {
|
|
140
|
+
return cbk([403, 'PermissionDeniedToGetAssetUtxos']);
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
if (!!err) {
|
|
144
|
+
return cbk([503, 'UnexpectedErrorGettingAssetUtxos', {err}]);
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
if (!res || !res.managed_utxos) {
|
|
148
|
+
return cbk([503, 'ExpectedManagedUtxosInAssetUtxosResponse']);
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
try {
|
|
152
|
+
const utxos = values(res.managed_utxos as object)
|
|
153
|
+
.map(rpcManagedUtxoAsUtxo)
|
|
154
|
+
.sort((a, b) => {
|
|
155
|
+
const byId = a.transaction_id.localeCompare(
|
|
156
|
+
b.transaction_id,
|
|
157
|
+
);
|
|
158
|
+
|
|
159
|
+
return byId || a.transaction_vout - b.transaction_vout;
|
|
160
|
+
});
|
|
161
|
+
|
|
162
|
+
return cbk(null, {utxos});
|
|
163
|
+
} catch (err: any) {
|
|
164
|
+
return cbk([503, err.message]);
|
|
165
|
+
}
|
|
166
|
+
});
|
|
167
|
+
},
|
|
168
|
+
],
|
|
169
|
+
},
|
|
170
|
+
returnResult({reject, resolve, of: 'getUtxos'}, cbk),
|
|
171
|
+
);
|
|
172
|
+
});
|
|
173
|
+
};
|
|
174
|
+
|
|
175
|
+
export default getAssetUtxos;
|
|
@@ -0,0 +1,327 @@
|
|
|
1
|
+
import {auto as asyncAuto} from 'async';
|
|
2
|
+
import {returnResult} from 'asyncjs-util';
|
|
3
|
+
|
|
4
|
+
import {isConnectionFailure} from '../../tapd_requests/index.js';
|
|
5
|
+
import {isMethodUnsupported} from '../../tapd_requests/index.js';
|
|
6
|
+
import {isPermissionDenied} from '../../tapd_requests/index.js';
|
|
7
|
+
import {isTapd} from '../../tapd_requests/index.js';
|
|
8
|
+
import {scriptKeyTypeQuery} from '../../tapd_requests/index.js';
|
|
9
|
+
import {rpcAssetAsAsset} from '../../tapd_responses/index.js';
|
|
10
|
+
import type {Asset} from '../../tapd_responses/index.js';
|
|
11
|
+
import type {AuthenticatedTapdArgs} from '../../typescript/index.js';
|
|
12
|
+
import type {TapdCallback} from '../../typescript/index.js';
|
|
13
|
+
import type {TapdError} from '../../typescript/index.js';
|
|
14
|
+
import type {TapdMethod} from '../../typescript/index.js';
|
|
15
|
+
|
|
16
|
+
const defaultLimit = 512;
|
|
17
|
+
const {from} = Buffer;
|
|
18
|
+
const {isArray} = Array;
|
|
19
|
+
const isAssetId = (n: string) => /^[0-9A-F]{64}$/i.test(n);
|
|
20
|
+
const isGroupKey = (n: string) => /^0[23][0-9A-F]{64}$/i.test(n);
|
|
21
|
+
const isNumeric = (n: unknown) => typeof n === 'string' && /^\d+$/.test(n);
|
|
22
|
+
const lookupError = 'asset lookup failed for asset';
|
|
23
|
+
const {isSafeInteger} = Number;
|
|
24
|
+
const maxLimit = 16384;
|
|
25
|
+
const {parse} = JSON;
|
|
26
|
+
const sortDescending = 'SORT_DIRECTION_DESC';
|
|
27
|
+
const {stringify} = JSON;
|
|
28
|
+
const type = 'default';
|
|
29
|
+
|
|
30
|
+
export type GetAssetsArgs = AuthenticatedTapdArgs<{
|
|
31
|
+
/** Asset Id Hex String */
|
|
32
|
+
asset_id?: string;
|
|
33
|
+
/** Asset Group Key Hex String */
|
|
34
|
+
group_key?: string;
|
|
35
|
+
/** Include Leased Assets */
|
|
36
|
+
is_including_leased?: boolean;
|
|
37
|
+
/** Include Spent Assets */
|
|
38
|
+
is_including_spent?: boolean;
|
|
39
|
+
/** Include Unconfirmed Mints */
|
|
40
|
+
is_including_unconfirmed?: boolean;
|
|
41
|
+
/** Page Result Limit Number */
|
|
42
|
+
limit?: number;
|
|
43
|
+
/** Maximum Asset Units Numeric String */
|
|
44
|
+
max_amount?: string;
|
|
45
|
+
/** Minimum Asset Units Numeric String */
|
|
46
|
+
min_amount?: string;
|
|
47
|
+
/** Script Key Type */
|
|
48
|
+
script_key_type?: string;
|
|
49
|
+
/** Opaque Paging Token String */
|
|
50
|
+
token?: string;
|
|
51
|
+
}>;
|
|
52
|
+
|
|
53
|
+
export type GetAssetsResult = {
|
|
54
|
+
assets: Asset[];
|
|
55
|
+
/** Next Opaque Paging Token */
|
|
56
|
+
next?: string;
|
|
57
|
+
/** Unconfirmed Mints Count */
|
|
58
|
+
unconfirmed_mints?: number;
|
|
59
|
+
/** Unconfirmed Transfers Count */
|
|
60
|
+
unconfirmed_transfers?: number;
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
type Tasks = {
|
|
64
|
+
getAssets: GetAssetsResult;
|
|
65
|
+
validate: undefined;
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
/** Get the assets that this node owns
|
|
69
|
+
|
|
70
|
+
Requires `assets:read` permission
|
|
71
|
+
|
|
72
|
+
By default, tapd includes only assets with a BIP-86 script key. Use
|
|
73
|
+
`script_key_type` to get other assets, for example assets in channels.
|
|
74
|
+
|
|
75
|
+
An `asset_id` or a `group_key` is a filter, but not both. An `asset_id` needs
|
|
76
|
+
tapd v0.8.0 or later, and it does not support paging or amount filters.
|
|
77
|
+
|
|
78
|
+
Spent assets and leased assets are not supported together.
|
|
79
|
+
|
|
80
|
+
Use the `next` token with the same filters to get the next page.
|
|
81
|
+
|
|
82
|
+
{
|
|
83
|
+
[asset_id]: <Asset Id Hex String>
|
|
84
|
+
[group_key]: <Asset Group Key Hex String>
|
|
85
|
+
[is_including_leased]: <Include Leased Assets Bool>
|
|
86
|
+
[is_including_spent]: <Include Spent Assets Bool>
|
|
87
|
+
[is_including_unconfirmed]: <Include Unconfirmed Mints Bool>
|
|
88
|
+
[limit]: <Page Result Limit Number>
|
|
89
|
+
[max_amount]: <Maximum Asset Units Numeric String>
|
|
90
|
+
[min_amount]: <Minimum Asset Units Numeric String>
|
|
91
|
+
[script_key_type]: <Script Key Type String> // all, bip86, burn, channel,
|
|
92
|
+
// script_path_external,
|
|
93
|
+
// tombstone, unique_pedersen
|
|
94
|
+
tapd: <Authenticated tapd API Object>
|
|
95
|
+
[token]: <Opaque Paging Token String>
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
@returns via cbk or Promise
|
|
99
|
+
{
|
|
100
|
+
assets: [{
|
|
101
|
+
amount: <Asset Units Numeric String>
|
|
102
|
+
[anchor]: {
|
|
103
|
+
[block_hash]: <Anchor Block Hash Hex String>
|
|
104
|
+
[block_height]: <Anchor Block Height Number>
|
|
105
|
+
[confirmed_at]: <Anchor Confirmed At ISO 8601 Date String>
|
|
106
|
+
internal_key: <Anchor Internal Key Hex String>
|
|
107
|
+
merkle_root: <Anchor Taproot Merkle Root Hex String>
|
|
108
|
+
[tapscript_sibling]: <Tapscript Sibling Preimage Hex String>
|
|
109
|
+
transaction: <Raw Anchor Transaction Hex String>
|
|
110
|
+
transaction_id: <Anchor Transaction Id Hex String>
|
|
111
|
+
transaction_vout: <Anchor Transaction Output Index Number>
|
|
112
|
+
}
|
|
113
|
+
asset_id: <Asset Id Hex String>
|
|
114
|
+
[decimal_display]: <Decimal Places To Show Number>
|
|
115
|
+
genesis_output_index: <Genesis Commitment Output Index Number>
|
|
116
|
+
genesis_transaction_id: <Genesis Point Transaction Id Hex String>
|
|
117
|
+
genesis_transaction_vout: <Genesis Point Transaction Output Index Number>
|
|
118
|
+
[group]: {
|
|
119
|
+
key: <Tweaked Group Key Hex String>
|
|
120
|
+
raw_key: <Raw Group Key Hex String>
|
|
121
|
+
[tapscript_root]: <Group Tapscript Root Hex String>
|
|
122
|
+
[witness]: <Group Membership Witness Hex String>
|
|
123
|
+
}
|
|
124
|
+
is_burn: <Asset Is Burned Bool>
|
|
125
|
+
is_collectible: <Asset Is Collectible Bool>
|
|
126
|
+
is_local: <Script Key Belongs To This Node Bool>
|
|
127
|
+
is_spent: <Asset Is Spent Bool>
|
|
128
|
+
[lease_expires_at]: <Lease Expires At ISO 8601 Date String>
|
|
129
|
+
[lease_owner]: <Lease Owner Id Hex String>
|
|
130
|
+
[lock_time]: <Lock Time Number>
|
|
131
|
+
meta_hash: <Asset Metadata Hash Hex String>
|
|
132
|
+
name: <Asset Name String>
|
|
133
|
+
[relative_lock_time]: <Relative Lock Time Number>
|
|
134
|
+
script_key: <Script Key Hex String>
|
|
135
|
+
script_key_type: <Script Key Type String>
|
|
136
|
+
script_version: <Script Version Number>
|
|
137
|
+
version: <Asset Version Number>
|
|
138
|
+
}]
|
|
139
|
+
[next]: <Next Opaque Paging Token String>
|
|
140
|
+
[unconfirmed_mints]: <Unconfirmed Mints Count Number>
|
|
141
|
+
[unconfirmed_transfers]: <Unconfirmed Transfers Count Number>
|
|
142
|
+
}
|
|
143
|
+
*/
|
|
144
|
+
const getAssets: TapdMethod<GetAssetsArgs, GetAssetsResult> = (
|
|
145
|
+
args: GetAssetsArgs,
|
|
146
|
+
cbk?: TapdCallback<GetAssetsResult>,
|
|
147
|
+
) => {
|
|
148
|
+
return new Promise((resolve, reject) => {
|
|
149
|
+
return asyncAuto<Tasks, TapdError>(
|
|
150
|
+
{
|
|
151
|
+
// Check arguments
|
|
152
|
+
validate: cbk => {
|
|
153
|
+
const hasPaging = args.limit !== undefined || !!args.token;
|
|
154
|
+
const hasRange = !!args.max_amount || !!args.min_amount;
|
|
155
|
+
|
|
156
|
+
if (!!args.asset_id && !!args.group_key) {
|
|
157
|
+
return cbk([400, 'ExpectedAssetIdOrGroupKeyNotBothToGetAssets']);
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
if (args.asset_id !== undefined && !isAssetId(args.asset_id)) {
|
|
161
|
+
return cbk([400, 'ExpectedAssetIdHexToGetAssets']);
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
if (!!args.asset_id && (hasPaging || hasRange)) {
|
|
165
|
+
return cbk([400, 'UnexpectedPagingOrAmountFilterWithAssetId']);
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
if (args.group_key !== undefined && !isGroupKey(args.group_key)) {
|
|
169
|
+
return cbk([400, 'ExpectedGroupKeyHexToGetAssets']);
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
if (!!args.is_including_leased && !!args.is_including_spent) {
|
|
173
|
+
return cbk([400, 'ExpectedLeasedOrSpentAssetsNotBothToGetAssets']);
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
if (args.limit !== undefined && !isSafeInteger(args.limit)) {
|
|
177
|
+
return cbk([400, 'ExpectedIntegerLimitToGetAssets']);
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
if (args.limit !== undefined && args.limit < 1) {
|
|
181
|
+
return cbk([400, 'ExpectedPositiveLimitToGetAssets']);
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
if (args.limit !== undefined && args.limit > maxLimit) {
|
|
185
|
+
return cbk([400, 'ExpectedLimitNotAboveMaximumToGetAssets']);
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
if (!!args.limit && !!args.token) {
|
|
189
|
+
return cbk([400, 'UnexpectedLimitWhenPagingAssetsWithToken']);
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
if (args.max_amount !== undefined && !isNumeric(args.max_amount)) {
|
|
193
|
+
return cbk([400, 'ExpectedNumericMaxAmountToGetAssets']);
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
if (args.min_amount !== undefined && !isNumeric(args.min_amount)) {
|
|
197
|
+
return cbk([400, 'ExpectedNumericMinAmountToGetAssets']);
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
try {
|
|
201
|
+
scriptKeyTypeQuery(args.script_key_type);
|
|
202
|
+
} catch {
|
|
203
|
+
return cbk([400, 'ExpectedKnownScriptKeyTypeToGetAssets']);
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
const method = !!args.asset_id ? 'fetchAsset' : 'listAssets';
|
|
207
|
+
|
|
208
|
+
if (!isTapd({method, type, tapd: args.tapd})) {
|
|
209
|
+
return cbk([400, 'ExpectedAuthenticatedTapdToGetAssets']);
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
return cbk();
|
|
213
|
+
},
|
|
214
|
+
|
|
215
|
+
// Get the assets
|
|
216
|
+
getAssets: [
|
|
217
|
+
'validate',
|
|
218
|
+
({}, cbk) => {
|
|
219
|
+
let limit = args.limit || defaultLimit;
|
|
220
|
+
let offset = 0;
|
|
221
|
+
|
|
222
|
+
// tapd reads the offset as a row offset in the results
|
|
223
|
+
if (!!args.token) {
|
|
224
|
+
try {
|
|
225
|
+
const pagingToken = parse(args.token);
|
|
226
|
+
|
|
227
|
+
limit = pagingToken.limit;
|
|
228
|
+
offset = pagingToken.offset;
|
|
229
|
+
} catch (err) {
|
|
230
|
+
return cbk([400, 'ExpectedValidPagingTokenToGetAssets', {err}]);
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
if (!isSafeInteger(limit) || limit < 1 || limit > maxLimit) {
|
|
234
|
+
return cbk([400, 'ExpectedValidPagingTokenToGetAssets']);
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
if (!isSafeInteger(offset) || offset < 0) {
|
|
238
|
+
return cbk([400, 'ExpectedValidPagingTokenToGetAssets']);
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
const filters = {
|
|
243
|
+
include_leased: !!args.is_including_leased,
|
|
244
|
+
include_spent: !!args.is_including_spent,
|
|
245
|
+
include_unconfirmed_mints: !!args.is_including_unconfirmed,
|
|
246
|
+
script_key_type: scriptKeyTypeQuery(args.script_key_type),
|
|
247
|
+
with_witness: false,
|
|
248
|
+
};
|
|
249
|
+
|
|
250
|
+
const isFetch = !!args.asset_id;
|
|
251
|
+
|
|
252
|
+
const request = isFetch
|
|
253
|
+
? {
|
|
254
|
+
...filters,
|
|
255
|
+
asset_specifier: {asset_id: from(args.asset_id!, 'hex')},
|
|
256
|
+
}
|
|
257
|
+
: {
|
|
258
|
+
...filters,
|
|
259
|
+
direction: sortDescending,
|
|
260
|
+
group_key: from(args.group_key || '', 'hex'),
|
|
261
|
+
limit,
|
|
262
|
+
max_amount: args.max_amount || '0',
|
|
263
|
+
min_amount: args.min_amount || '0',
|
|
264
|
+
offset,
|
|
265
|
+
};
|
|
266
|
+
|
|
267
|
+
const method = isFetch ? 'fetchAsset' : 'listAssets';
|
|
268
|
+
|
|
269
|
+
return args.tapd[type][method](request, (err: any, res: any) => {
|
|
270
|
+
if (isConnectionFailure({err})) {
|
|
271
|
+
return cbk([503, 'FailedToConnectToTapdToGetAssets']);
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
if (isPermissionDenied({err})) {
|
|
275
|
+
return cbk([403, 'PermissionDeniedToGetAssets']);
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
const details = String(err?.details);
|
|
279
|
+
|
|
280
|
+
// tapd added FetchAsset in v0.8.0
|
|
281
|
+
if (isFetch && isMethodUnsupported({err})) {
|
|
282
|
+
return cbk([501, 'ExpectedNewerTapdToGetAssetsByAssetId']);
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
if (!!err && details.includes(lookupError)) {
|
|
286
|
+
return cbk([404, 'AssetNotFound']);
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
if (!!err) {
|
|
290
|
+
return cbk([503, 'UnexpectedErrorGettingAssets', {err}]);
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
if (!res || !isArray(res.assets)) {
|
|
294
|
+
return cbk([503, 'ExpectedArrayOfAssetsInAssetsResponse']);
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
try {
|
|
298
|
+
const assets = res.assets.map(rpcAssetAsAsset);
|
|
299
|
+
|
|
300
|
+
// A tapd before v0.8.0 sends all the assets, with no page
|
|
301
|
+
const isLastPage = isFetch || assets.length !== limit;
|
|
302
|
+
|
|
303
|
+
const token = stringify({limit, offset: offset + limit});
|
|
304
|
+
|
|
305
|
+
return cbk(null, {
|
|
306
|
+
assets,
|
|
307
|
+
next: isLastPage ? undefined : token,
|
|
308
|
+
unconfirmed_mints: isFetch
|
|
309
|
+
? undefined
|
|
310
|
+
: Number(res.unconfirmed_mints),
|
|
311
|
+
unconfirmed_transfers: isFetch
|
|
312
|
+
? undefined
|
|
313
|
+
: Number(res.unconfirmed_transfers),
|
|
314
|
+
});
|
|
315
|
+
} catch (err: any) {
|
|
316
|
+
return cbk([503, err.message]);
|
|
317
|
+
}
|
|
318
|
+
});
|
|
319
|
+
},
|
|
320
|
+
],
|
|
321
|
+
},
|
|
322
|
+
returnResult({reject, resolve, of: 'getAssets'}, cbk),
|
|
323
|
+
);
|
|
324
|
+
});
|
|
325
|
+
};
|
|
326
|
+
|
|
327
|
+
export default getAssets;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export {default as getAssetBalances} from './get_asset_balances.js';
|
|
2
|
+
export type {GetAssetBalancesArgs} from './get_asset_balances.js';
|
|
3
|
+
export type {GetAssetBalancesResult} from './get_asset_balances.js';
|
|
4
|
+
export {default as getAssetBurns} from './get_asset_burns.js';
|
|
5
|
+
export type {GetAssetBurnsArgs} from './get_asset_burns.js';
|
|
6
|
+
export type {GetAssetBurnsResult} from './get_asset_burns.js';
|
|
7
|
+
export {default as getAssetGroups} from './get_asset_groups.js';
|
|
8
|
+
export type {GetAssetGroupsArgs} from './get_asset_groups.js';
|
|
9
|
+
export type {GetAssetGroupsResult} from './get_asset_groups.js';
|
|
10
|
+
export {default as getAssetMetadata} from './get_asset_metadata.js';
|
|
11
|
+
export type {GetAssetMetadataArgs} from './get_asset_metadata.js';
|
|
12
|
+
export type {GetAssetMetadataResult} from './get_asset_metadata.js';
|
|
13
|
+
export {default as getAssetUtxos} from './get_asset_utxos.js';
|
|
14
|
+
export type {GetAssetUtxosArgs} from './get_asset_utxos.js';
|
|
15
|
+
export type {GetAssetUtxosResult} from './get_asset_utxos.js';
|
|
16
|
+
export {default as getAssets} from './get_assets.js';
|
|
17
|
+
export type {GetAssetsArgs} from './get_assets.js';
|
|
18
|
+
export type {GetAssetsResult} from './get_assets.js';
|