diff --git a/app2/app2.nix b/app2/app2.nix index a596314dc0..ced4e8fbf0 100644 --- a/app2/app2.nix +++ b/app2/app2.nix @@ -38,7 +38,7 @@ _: { ../ts-sdk-evm ../ts-sdk-sui ]; - hash = "sha256-6n4Co3CIVrmjbG4/bCLEBJi+doAB+u24x5C79WiA180="; + hash = "sha256-muTjcrxyASfVYRIClyU4Z+ZyCwlFTNkw9UnVWOBEhGA="; buildInputs = deps; nativeBuildInputs = buildInputs; pnpmWorkspaces = [ @@ -135,7 +135,7 @@ _: { text = '' ${ensureAtRepositoryRoot} cd app2/ - pnpm dlx gql.tada generate-schema --tsconfig ./tsconfig.json --output "./src/generated/schema.graphql" "https://orion.james.union.build/v1/graphql" + pnpm dlx gql.tada generate-schema --tsconfig ./tsconfig.json --output "./src/generated/schema.graphql" "https://development.graphql.union.build/v1/graphql" pnpm dlx gql.tada generate-output --disable-preprocessing --tsconfig ./tsconfig.json --output ./src/generated/graphql-env.d.ts ''; }; diff --git a/app2/package.json b/app2/package.json index d1798f5144..c1c09754fa 100644 --- a/app2/package.json +++ b/app2/package.json @@ -33,6 +33,8 @@ "@eslint/js": "^9.24.0", "@keplr-wallet/types": "^0.12.220", "@leapwallet/types": "^0.0.5", + "@mysten/sui": "^1.38.0", + "@mysten/wallet-standard": "^0.19.3", "@number-flow/svelte": "^0.3.7", "@safe-global/safe-apps-sdk": "^9.1.0", "@safe-global/safe-gateway-typescript-sdk": "^3.23.1", diff --git a/app2/src/generated/graphql-env.d.ts b/app2/src/generated/graphql-env.d.ts index 856eb0c4e8..7754b6abe6 100644 --- a/app2/src/generated/graphql-env.d.ts +++ b/app2/src/generated/graphql-env.d.ts @@ -12,7 +12,7 @@ export type introspection_types = { 'LatencyPercentiles': { kind: 'OBJECT'; name: 'LatencyPercentiles'; fields: { 'median': { name: 'median'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Float'; ofType: null; }; } }; 'p5': { name: 'p5'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Float'; ofType: null; }; } }; 'p95': { name: 'p95'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Float'; ofType: null; }; } }; }; }; 'NaiveDate': unknown; 'OrderBy': { name: 'OrderBy'; enumValues: 'asc' | 'asc_nulls_first' | 'asc_nulls_last' | 'desc' | 'desc_nulls_first' | 'desc_nulls_last'; }; - 'Query': { kind: 'OBJECT'; name: 'Query'; fields: { 'dashboard_balance_current': { name: 'dashboard_balance_current'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'dashboard_balance_current_type'; ofType: null; }; }; }; } }; 'dashboard_transfer_count_by_chain': { name: 'dashboard_transfer_count_by_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'dashboard_count_by_chain_type'; ofType: null; }; }; }; } }; 'dashboard_transfer_days_count_by_chain': { name: 'dashboard_transfer_days_count_by_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'dashboard_days_by_chain_type'; ofType: null; }; }; }; } }; 'v2_bonds': { name: 'v2_bonds'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_bond_type'; ofType: null; }; }; }; } }; 'v2_chains': { name: 'v2_chains'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; }; }; } }; 'v2_channels': { name: 'v2_channels'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_channel_type'; ofType: null; }; }; }; } }; 'v2_clients': { name: 'v2_clients'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_client_type'; ofType: null; }; }; }; } }; 'v2_connections': { name: 'v2_connections'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_connection_type'; ofType: null; }; }; }; } }; 'v2_errors': { name: 'v2_errors'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_error_type'; ofType: null; }; }; }; } }; 'v2_health_check': { name: 'v2_health_check'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_health_check_type'; ofType: null; }; }; }; } }; 'v2_instructions': { name: 'v2_instructions'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_instruction_type'; ofType: null; }; }; }; } }; 'v2_packets': { name: 'v2_packets'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_packet_type'; ofType: null; }; }; }; } }; 'v2_stats_count': { name: 'v2_stats_count'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_stats_type'; ofType: null; }; }; }; } }; 'v2_stats_latency': { name: 'v2_stats_latency'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_stats_latency_type'; ofType: null; }; }; }; } }; 'v2_stats_packets_chain': { name: 'v2_stats_packets_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_stats_packets_chain_type'; ofType: null; }; }; }; } }; 'v2_stats_packets_daily_count': { name: 'v2_stats_packets_daily_count'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_stats_daily_count_type'; ofType: null; }; }; }; } }; 'v2_stats_transfers_chain': { name: 'v2_stats_transfers_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_stats_transfers_chain_type'; ofType: null; }; }; }; } }; 'v2_stats_transfers_daily_count': { name: 'v2_stats_transfers_daily_count'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_stats_daily_count_type'; ofType: null; }; }; }; } }; 'v2_tokens': { name: 'v2_tokens'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; }; }; }; } }; 'v2_transfers': { name: 'v2_transfers'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_transfer_type'; ofType: null; }; }; }; } }; 'v2_unbonds': { name: 'v2_unbonds'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_unbond_type'; ofType: null; }; }; }; } }; 'v2_util_get_address_types_for_display_address': { name: 'v2_util_get_address_types_for_display_address'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_util_get_address_types_for_display_address_type'; ofType: null; }; }; }; } }; 'v2_util_get_transfer_request_details': { name: 'v2_util_get_transfer_request_details'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_util_get_transfer_request_details_type'; ofType: null; }; }; }; } }; }; }; + 'Query': { kind: 'OBJECT'; name: 'Query'; fields: { 'dashboard_balance_current': { name: 'dashboard_balance_current'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'dashboard_balance_current_type'; ofType: null; }; }; }; } }; 'dashboard_transfer_count_by_chain': { name: 'dashboard_transfer_count_by_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'dashboard_count_by_chain_type'; ofType: null; }; }; }; } }; 'dashboard_transfer_days_count_by_chain': { name: 'dashboard_transfer_days_count_by_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'dashboard_days_by_chain_type'; ofType: null; }; }; }; } }; 'v2_bonds': { name: 'v2_bonds'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_bond_type'; ofType: null; }; }; }; } }; 'v2_chains': { name: 'v2_chains'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; }; }; } }; 'v2_channels': { name: 'v2_channels'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_channel_type'; ofType: null; }; }; }; } }; 'v2_clients': { name: 'v2_clients'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_client_type'; ofType: null; }; }; }; } }; 'v2_connections': { name: 'v2_connections'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_connection_type'; ofType: null; }; }; }; } }; 'v2_dust_withdraws': { name: 'v2_dust_withdraws'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_dust_withdraw_type'; ofType: null; }; }; }; } }; 'v2_errors': { name: 'v2_errors'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_error_type'; ofType: null; }; }; }; } }; 'v2_health_check': { name: 'v2_health_check'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_health_check_type'; ofType: null; }; }; }; } }; 'v2_instructions': { name: 'v2_instructions'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_instruction_type'; ofType: null; }; }; }; } }; 'v2_packets': { name: 'v2_packets'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_packet_type'; ofType: null; }; }; }; } }; 'v2_stats_count': { name: 'v2_stats_count'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_stats_type'; ofType: null; }; }; }; } }; 'v2_stats_latency': { name: 'v2_stats_latency'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_stats_latency_type'; ofType: null; }; }; }; } }; 'v2_stats_packets_chain': { name: 'v2_stats_packets_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_stats_packets_chain_type'; ofType: null; }; }; }; } }; 'v2_stats_packets_daily_count': { name: 'v2_stats_packets_daily_count'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_stats_daily_count_type'; ofType: null; }; }; }; } }; 'v2_stats_transfers_chain': { name: 'v2_stats_transfers_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_stats_transfers_chain_type'; ofType: null; }; }; }; } }; 'v2_stats_transfers_daily_count': { name: 'v2_stats_transfers_daily_count'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_stats_daily_count_type'; ofType: null; }; }; }; } }; 'v2_tokens': { name: 'v2_tokens'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; }; }; }; } }; 'v2_transfers': { name: 'v2_transfers'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_transfer_type'; ofType: null; }; }; }; } }; 'v2_unbonds': { name: 'v2_unbonds'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_unbond_type'; ofType: null; }; }; }; } }; 'v2_util_get_address_types_for_display_address': { name: 'v2_util_get_address_types_for_display_address'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_util_get_address_types_for_display_address_type'; ofType: null; }; }; }; } }; 'v2_util_get_transfer_request_details': { name: 'v2_util_get_transfer_request_details'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_util_get_transfer_request_details_type'; ofType: null; }; }; }; } }; 'v2_withdraws': { name: 'v2_withdraws'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_withdraw_type'; ofType: null; }; }; }; } }; }; }; 'String': unknown; 'String_comparison_exp': { kind: 'INPUT_OBJECT'; name: 'String_comparison_exp'; isOneOf: false; inputFields: [{ name: '_eq'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; 'dashboard_balance_current_args': { kind: 'INPUT_OBJECT'; name: 'dashboard_balance_current_args'; isOneOf: false; inputFields: [{ name: 'p_contract_address_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_phase'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_wallet_addresses_canonical'; type: { kind: 'SCALAR'; name: 'jsonb'; ofType: null; }; defaultValue: null }]; }; @@ -24,13 +24,13 @@ export type introspection_types = { 'dashboard_days_by_chain_type': { kind: 'OBJECT'; name: 'dashboard_days_by_chain_type'; fields: { 'day_count': { name: 'day_count'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'universal_chain_id': { name: 'universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; 'dashboard_days_by_chain_type_order_by': { kind: 'INPUT_OBJECT'; name: 'dashboard_days_by_chain_type_order_by'; isOneOf: false; inputFields: [{ name: 'universal_chain_id'; type: { kind: 'ENUM'; name: 'OrderBy'; ofType: null; }; defaultValue: "null" }]; }; 'jsonb': unknown; - 'v2_bond_type': { kind: 'OBJECT'; name: 'v2_bond_type'; fields: { 'base_amount': { name: 'base_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token': { name: 'base_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token_meta': { name: 'base_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'bond_recv_timestamp': { name: 'bond_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'bond_recv_transaction_hash': { name: 'bond_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'bond_send_timestamp': { name: 'bond_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'bond_send_transaction_hash': { name: 'bond_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'bond_success': { name: 'bond_success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'bond_timeout_timestamp': { name: 'bond_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'bond_timeout_transaction_hash': { name: 'bond_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'bond_traces': { name: 'bond_traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; 'delivery_packet_hash': { name: 'delivery_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_recv_timestamp': { name: 'delivery_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_recv_transaction_hash': { name: 'delivery_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_send_timestamp': { name: 'delivery_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_send_transaction_hash': { name: 'delivery_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_success': { name: 'delivery_success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'delivery_timeout_timestamp': { name: 'delivery_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_timeout_transaction_hash': { name: 'delivery_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_traces': { name: 'delivery_traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; 'destination_chain': { name: 'destination_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_hash': { name: 'packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_shape': { name: 'packet_shape'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_amount': { name: 'quote_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_token': { name: 'quote_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_token_meta': { name: 'quote_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'receiver_canonical': { name: 'receiver_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'receiver_display': { name: 'receiver_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'receiver_zkgm': { name: 'receiver_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_amount': { name: 'remote_base_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_token': { name: 'remote_base_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_token_meta': { name: 'remote_base_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'remote_quote_amount': { name: 'remote_quote_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_quote_token': { name: 'remote_quote_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_quote_token_meta': { name: 'remote_quote_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'remote_universal_chain_id': { name: 'remote_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_canonical': { name: 'sender_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_display': { name: 'sender_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_zkgm': { name: 'sender_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_chain': { name: 'source_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_bond_type': { kind: 'OBJECT'; name: 'v2_bond_type'; fields: { 'base_amount': { name: 'base_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token': { name: 'base_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token_meta': { name: 'base_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'bond_recv_timestamp': { name: 'bond_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'bond_recv_transaction_hash': { name: 'bond_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'bond_send_timestamp': { name: 'bond_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'bond_send_transaction_hash': { name: 'bond_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'bond_success': { name: 'bond_success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'bond_timeout_timestamp': { name: 'bond_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'bond_timeout_transaction_hash': { name: 'bond_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'bond_traces': { name: 'bond_traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; 'delivery_packet_hash': { name: 'delivery_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_recv_timestamp': { name: 'delivery_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_recv_transaction_hash': { name: 'delivery_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_send_timestamp': { name: 'delivery_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_send_transaction_hash': { name: 'delivery_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_success': { name: 'delivery_success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'delivery_timeout_timestamp': { name: 'delivery_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_timeout_transaction_hash': { name: 'delivery_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_traces': { name: 'delivery_traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; 'destination_chain': { name: 'destination_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_hash': { name: 'packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_shape': { name: 'packet_shape'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_amount': { name: 'quote_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_token': { name: 'quote_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_token_meta': { name: 'quote_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'receiver_canonical': { name: 'receiver_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'receiver_display': { name: 'receiver_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'receiver_zkgm': { name: 'receiver_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_amount': { name: 'remote_base_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_token': { name: 'remote_base_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_token_meta': { name: 'remote_base_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'remote_quote_amount': { name: 'remote_quote_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_quote_token': { name: 'remote_quote_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_quote_token_meta': { name: 'remote_quote_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'remote_universal_chain_id': { name: 'remote_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_canonical': { name: 'sender_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_display': { name: 'sender_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_zkgm': { name: 'sender_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_chain': { name: 'source_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_canonical': { name: 'staker_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_display': { name: 'staker_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_zkgm': { name: 'staker_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; 'v2_bonds_args': { kind: 'INPUT_OBJECT'; name: 'v2_bonds_args'; isOneOf: false; inputFields: [{ name: 'p_addresses_canonical'; type: { kind: 'SCALAR'; name: 'jsonb'; ofType: null; }; defaultValue: null }, { name: 'p_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_network'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; 'v2_chain_edition': { kind: 'OBJECT'; name: 'v2_chain_edition'; fields: { 'environment': { name: 'environment'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'name': { name: 'name'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; 'v2_chain_features': { kind: 'OBJECT'; name: 'v2_chain_features'; fields: { 'channel_list': { name: 'channel_list'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'connection_list': { name: 'connection_list'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'environment': { name: 'environment'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'index_status': { name: 'index_status'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'packet_list': { name: 'packet_list'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'transfer_list': { name: 'transfer_list'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'transfer_submission': { name: 'transfer_submission'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; }; }; 'v2_chain_features_bool_exp': { kind: 'INPUT_OBJECT'; name: 'v2_chain_features_bool_exp'; isOneOf: false; inputFields: [{ name: 'environment'; type: { kind: 'INPUT_OBJECT'; name: 'String_comparison_exp'; ofType: null; }; defaultValue: "null" }]; }; 'v2_chain_status_type': { kind: 'OBJECT'; name: 'v2_chain_status_type'; fields: { 'height': { name: 'height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'status': { name: 'status'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'timestamp': { name: 'timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'tip_age_seconds': { name: 'tip_age_seconds'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; }; }; - 'v2_chain_type': { kind: 'OBJECT'; name: 'v2_chain_type'; fields: { 'addr_prefix': { name: 'addr_prefix'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'chain_id': { name: 'chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'display_name': { name: 'display_name'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'editions': { name: 'editions'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_edition'; ofType: null; }; }; }; } }; 'explorers': { name: 'explorers'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_explorers'; ofType: null; }; }; }; } }; 'features': { name: 'features'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_features'; ofType: null; }; }; }; } }; 'logo_uri': { name: 'logo_uri'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'minter_address_display': { name: 'minter_address_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'rpc_type': { name: 'rpc_type'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'rpcs': { name: 'rpcs'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_rpcs'; ofType: null; }; }; }; } }; 'status': { name: 'status'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_status_type'; ofType: null; }; } }; 'testnet': { name: 'testnet'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'universal_chain_id': { name: 'universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_chain_type': { kind: 'OBJECT'; name: 'v2_chain_type'; fields: { 'addr_prefix': { name: 'addr_prefix'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'chain_id': { name: 'chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'display_name': { name: 'display_name'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'editions': { name: 'editions'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_edition'; ofType: null; }; }; }; } }; 'explorers': { name: 'explorers'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_explorers'; ofType: null; }; }; }; } }; 'family': { name: 'family'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_family_type'; ofType: null; }; } }; 'features': { name: 'features'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_features'; ofType: null; }; }; }; } }; 'logo_uri': { name: 'logo_uri'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'minter_address_display': { name: 'minter_address_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'rpc_type': { name: 'rpc_type'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'rpcs': { name: 'rpcs'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_rpcs'; ofType: null; }; }; }; } }; 'status': { name: 'status'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_status_type'; ofType: null; }; } }; 'testnet': { name: 'testnet'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'universal_chain_id': { name: 'universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; 'v2_chains_args': { kind: 'INPUT_OBJECT'; name: 'v2_chains_args'; isOneOf: false; inputFields: [{ name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; 'v2_channel_fee': { kind: 'OBJECT'; name: 'v2_channel_fee'; fields: { 'action': { name: 'action'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'fee': { name: 'fee'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; 'v2_channel_type': { kind: 'OBJECT'; name: 'v2_channel_type'; fields: { 'destination_chain': { name: 'destination_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'destination_channel_id': { name: 'destination_channel_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'destination_client_id': { name: 'destination_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'destination_connection_id': { name: 'destination_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'destination_port_id': { name: 'destination_port_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'fees': { name: 'fees'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_channel_fee'; ofType: null; }; }; }; } }; 'sla': { name: 'sla'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_chain': { name: 'source_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'source_channel_id': { name: 'source_channel_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'source_client_id': { name: 'source_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'source_connection_id': { name: 'source_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'source_port_id': { name: 'source_port_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'tags': { name: 'tags'; type: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'String'; ofType: null; }; }; } }; 'version': { name: 'version'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; @@ -40,8 +40,11 @@ export type introspection_types = { 'v2_clients_args': { kind: 'INPUT_OBJECT'; name: 'v2_clients_args'; isOneOf: false; inputFields: [{ name: 'p_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_counterparty_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; 'v2_connection_type': { kind: 'OBJECT'; name: 'v2_connection_type'; fields: { 'destination_chain': { name: 'destination_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'destination_client_id': { name: 'destination_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'destination_connection_id': { name: 'destination_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_chain': { name: 'source_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'source_client_id': { name: 'source_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'source_connection_id': { name: 'source_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; 'v2_connections_args': { kind: 'INPUT_OBJECT'; name: 'v2_connections_args'; isOneOf: false; inputFields: [{ name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_destination_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_destination_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_source_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_source_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; + 'v2_dust_withdraw_type': { kind: 'OBJECT'; name: 'v2_dust_withdraw_type'; fields: { 'delivery_packet_hash': { name: 'delivery_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_recv_timestamp': { name: 'delivery_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_recv_transaction_hash': { name: 'delivery_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_send_timestamp': { name: 'delivery_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_send_transaction_hash': { name: 'delivery_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_success': { name: 'delivery_success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'delivery_timeout_timestamp': { name: 'delivery_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_timeout_transaction_hash': { name: 'delivery_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_traces': { name: 'delivery_traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; 'destination_chain': { name: 'destination_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'dust_withdraw_recv_timestamp': { name: 'dust_withdraw_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'dust_withdraw_recv_transaction_hash': { name: 'dust_withdraw_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'dust_withdraw_send_timestamp': { name: 'dust_withdraw_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'dust_withdraw_send_transaction_hash': { name: 'dust_withdraw_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'dust_withdraw_success': { name: 'dust_withdraw_success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'dust_withdraw_timeout_timestamp': { name: 'dust_withdraw_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'dust_withdraw_timeout_transaction_hash': { name: 'dust_withdraw_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'dust_withdraw_traces': { name: 'dust_withdraw_traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; 'packet_hash': { name: 'packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_shape': { name: 'packet_shape'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_amount': { name: 'quote_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_token': { name: 'quote_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_token_meta': { name: 'quote_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'receiver_canonical': { name: 'receiver_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'receiver_display': { name: 'receiver_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'receiver_zkgm': { name: 'receiver_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_amount': { name: 'remote_base_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_token': { name: 'remote_base_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_token_meta': { name: 'remote_base_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'remote_universal_chain_id': { name: 'remote_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_chain': { name: 'source_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_canonical': { name: 'staker_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_display': { name: 'staker_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_zkgm': { name: 'staker_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_dust_withdraws_args': { kind: 'INPUT_OBJECT'; name: 'v2_dust_withdraws_args'; isOneOf: false; inputFields: [{ name: 'p_addresses_canonical'; type: { kind: 'SCALAR'; name: 'jsonb'; ofType: null; }; defaultValue: null }, { name: 'p_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_network'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; 'v2_error_type': { kind: 'OBJECT'; name: 'v2_error_type'; fields: { 'detail': { name: 'detail'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'hint': { name: 'hint'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'message': { name: 'message'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'union_error_code': { name: 'union_error_code'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; 'v2_explorers': { kind: 'OBJECT'; name: 'v2_explorers'; fields: { 'address_url': { name: 'address_url'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'block_url': { name: 'block_url'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'description': { name: 'description'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'display_name': { name: 'display_name'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'home_url': { name: 'home_url'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'logo_uri': { name: 'logo_uri'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'name': { name: 'name'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'tx_url': { name: 'tx_url'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_family_type': { kind: 'OBJECT'; name: 'v2_family_type'; fields: { 'ibc_interface': { name: 'ibc_interface'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'name': { name: 'name'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; 'v2_health_check_type': { kind: 'OBJECT'; name: 'v2_health_check_type'; fields: { 'environment': { name: 'environment'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'last_update': { name: 'last_update'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'status': { name: 'status'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; 'v2_instruction_type': { kind: 'OBJECT'; name: 'v2_instruction_type'; fields: { 'acknowledgement': { name: 'acknowledgement'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'channel_version': { name: 'channel_version'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'data': { name: 'data'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'decoded': { name: 'decoded'; type: { kind: 'SCALAR'; name: 'JSON'; ofType: null; } }; 'decoded_flattened': { name: 'decoded_flattened'; type: { kind: 'SCALAR'; name: 'JSON'; ofType: null; } }; 'destination_chain': { name: 'destination_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'destination_chain_id': { name: 'destination_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'destination_channel_id': { name: 'destination_channel_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'destination_client_id': { name: 'destination_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'destination_connection_id': { name: 'destination_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'destination_port_id': { name: 'destination_port_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'instruction': { name: 'instruction'; type: { kind: 'SCALAR'; name: 'JSON'; ofType: null; } }; 'instruction_hash': { name: 'instruction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'instruction_index': { name: 'instruction_index'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'instruction_path': { name: 'instruction_path'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'instruction_type': { name: 'instruction_type'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'internal_destination_chain_id': { name: 'internal_destination_chain_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'internal_source_chain_id': { name: 'internal_source_chain_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'opcode': { name: 'opcode'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'operand': { name: 'operand'; type: { kind: 'SCALAR'; name: 'JSON'; ofType: null; } }; 'packet_ack_block_hash': { name: 'packet_ack_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_ack_height': { name: 'packet_ack_height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_ack_maker': { name: 'packet_ack_maker'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_ack_timestamp': { name: 'packet_ack_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'packet_ack_transaction_hash': { name: 'packet_ack_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_hash': { name: 'packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_recv_block_hash': { name: 'packet_recv_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_recv_height': { name: 'packet_recv_height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_recv_maker': { name: 'packet_recv_maker'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_recv_maker_msg': { name: 'packet_recv_maker_msg'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_recv_timestamp': { name: 'packet_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'packet_recv_transaction_hash': { name: 'packet_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_send_block_hash': { name: 'packet_send_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_send_height': { name: 'packet_send_height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_send_timestamp': { name: 'packet_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'packet_send_transaction_hash': { name: 'packet_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_timeout_block_hash': { name: 'packet_timeout_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_timeout_height': { name: 'packet_timeout_height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_timeout_maker': { name: 'packet_timeout_maker'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_timeout_timestamp': { name: 'packet_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'packet_timeout_transaction_hash': { name: 'packet_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'path': { name: 'path'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'salt': { name: 'salt'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_chain': { name: 'source_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'source_channel_id': { name: 'source_channel_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'source_client_id': { name: 'source_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'source_connection_id': { name: 'source_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'source_port_id': { name: 'source_port_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'status': { name: 'status'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'structure': { name: 'structure'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'success': { name: 'success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'timeout_height': { name: 'timeout_height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'timeout_timestamp': { name: 'timeout_timestamp'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'version': { name: 'version'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'write_ack_block_hash': { name: 'write_ack_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'write_ack_height': { name: 'write_ack_height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'write_ack_timestamp': { name: 'write_ack_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'write_ack_transaction_hash': { name: 'write_ack_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; 'v2_instructions_args': { kind: 'INPUT_OBJECT'; name: 'v2_instructions_args'; isOneOf: false; inputFields: [{ name: 'p_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_multiplex_contract_address'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_multiplex_sender'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_network'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; @@ -58,7 +61,7 @@ export type introspection_types = { 'v2_stats_transfers_chain_type': { kind: 'OBJECT'; name: 'v2_stats_transfers_chain_type'; fields: { 'day_date': { name: 'day_date'; type: { kind: 'SCALAR'; name: 'NaiveDate'; ofType: null; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'total_transfers': { name: 'total_transfers'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; 'v2_stats_transfers_daily_count_args': { kind: 'INPUT_OBJECT'; name: 'v2_stats_transfers_daily_count_args'; isOneOf: false; inputFields: [{ name: 'p_days_back'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }]; }; 'v2_stats_type': { kind: 'OBJECT'; name: 'v2_stats_type'; fields: { 'name': { name: 'name'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'value': { name: 'value'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; - 'v2_token_meta': { kind: 'OBJECT'; name: 'v2_token_meta'; fields: { 'bucket': { name: 'bucket'; type: { kind: 'OBJECT'; name: 'v2_token_meta_bucket'; ofType: null; } }; 'chain': { name: 'chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'denom': { name: 'denom'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'rank': { name: 'rank'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'representations': { name: 'representations'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_token_meta_representations'; ofType: null; }; }; }; } }; 'universal_chain_id': { name: 'universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'wrapping': { name: 'wrapping'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_token_meta_wrapping'; ofType: null; }; }; }; } }; }; }; + 'v2_token_meta': { kind: 'OBJECT'; name: 'v2_token_meta'; fields: { 'bucket': { name: 'bucket'; type: { kind: 'OBJECT'; name: 'v2_token_meta_bucket'; ofType: null; } }; 'chain': { name: 'chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'denom': { name: 'denom'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'native_denom': { name: 'native_denom'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'rank': { name: 'rank'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'representations': { name: 'representations'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_token_meta_representations'; ofType: null; }; }; }; } }; 'universal_chain_id': { name: 'universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'wrapping': { name: 'wrapping'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_token_meta_wrapping'; ofType: null; }; }; }; } }; }; }; 'v2_token_meta_bucket': { kind: 'OBJECT'; name: 'v2_token_meta_bucket'; fields: { 'capacity': { name: 'capacity'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'chain': { name: 'chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'denom': { name: 'denom'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'refill_rate': { name: 'refill_rate'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; 'v2_token_meta_order_by': { kind: 'INPUT_OBJECT'; name: 'v2_token_meta_order_by'; isOneOf: false; inputFields: [{ name: 'rank'; type: { kind: 'ENUM'; name: 'OrderBy'; ofType: null; }; defaultValue: "null" }]; }; 'v2_token_meta_representation_sources': { kind: 'OBJECT'; name: 'v2_token_meta_representation_sources'; fields: { 'chain': { name: 'chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'decimals': { name: 'decimals'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'denom': { name: 'denom'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'name': { name: 'name'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source': { name: 'source'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_token_meta_sources'; ofType: null; }; } }; 'symbol': { name: 'symbol'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'update_timestamp': { name: 'update_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; }; }; @@ -70,12 +73,14 @@ export type introspection_types = { 'v2_traces_type': { kind: 'OBJECT'; name: 'v2_traces_type'; fields: { 'block_hash': { name: 'block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'chain': { name: 'chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'event_index': { name: 'event_index'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'height': { name: 'height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'timestamp': { name: 'timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'transaction_hash': { name: 'transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'type': { name: 'type'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'universal_chain_id': { name: 'universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; 'v2_transfer_type': { kind: 'OBJECT'; name: 'v2_transfer_type'; fields: { 'base_amount': { name: 'base_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token': { name: 'base_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token_decimals': { name: 'base_token_decimals'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'base_token_meta': { name: 'base_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'base_token_name': { name: 'base_token_name'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token_path': { name: 'base_token_path'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token_symbol': { name: 'base_token_symbol'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'destination_chain': { name: 'destination_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'fee_amount': { name: 'fee_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'fee_token': { name: 'fee_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'fee_token_meta': { name: 'fee_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'fee_type': { name: 'fee_type'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_hash': { name: 'packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_shape': { name: 'packet_shape'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_amount': { name: 'quote_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_token': { name: 'quote_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_token_meta': { name: 'quote_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'receiver_canonical': { name: 'receiver_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'receiver_display': { name: 'receiver_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'receiver_zkgm': { name: 'receiver_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_canonical': { name: 'sender_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_display': { name: 'sender_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_zkgm': { name: 'sender_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_chain': { name: 'source_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'success': { name: 'success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'traces': { name: 'traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; 'transfer_index': { name: 'transfer_index'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'transfer_recv_timestamp': { name: 'transfer_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'transfer_recv_transaction_hash': { name: 'transfer_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'transfer_send_timestamp': { name: 'transfer_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'transfer_send_transaction_hash': { name: 'transfer_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'transfer_timeout_timestamp': { name: 'transfer_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'transfer_timeout_transaction_hash': { name: 'transfer_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'wrap_direction': { name: 'wrap_direction'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; 'v2_transfers_args': { kind: 'INPUT_OBJECT'; name: 'v2_transfers_args'; isOneOf: false; inputFields: [{ name: 'p_addresses_canonical'; type: { kind: 'SCALAR'; name: 'jsonb'; ofType: null; }; defaultValue: null }, { name: 'p_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_network'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_transfer_index'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }]; }; - 'v2_unbond_type': { kind: 'OBJECT'; name: 'v2_unbond_type'; fields: { 'base_amount': { name: 'base_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token': { name: 'base_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token_meta': { name: 'base_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'batch': { name: 'batch'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'destination_chain': { name: 'destination_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_hash': { name: 'packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_shape': { name: 'packet_shape'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_canonical': { name: 'sender_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_display': { name: 'sender_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_zkgm': { name: 'sender_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_chain': { name: 'source_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'success': { name: 'success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'traces': { name: 'traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; 'unbond_recv_timestamp': { name: 'unbond_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'unbond_recv_transaction_hash': { name: 'unbond_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'unbond_send_timestamp': { name: 'unbond_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'unbond_send_transaction_hash': { name: 'unbond_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'unbond_timeout_timestamp': { name: 'unbond_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'unbond_timeout_transaction_hash': { name: 'unbond_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_unbond_type': { kind: 'OBJECT'; name: 'v2_unbond_type'; fields: { 'base_amount': { name: 'base_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token': { name: 'base_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token_meta': { name: 'base_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'batch': { name: 'batch'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'destination_chain': { name: 'destination_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_hash': { name: 'packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_shape': { name: 'packet_shape'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_canonical': { name: 'sender_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_display': { name: 'sender_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_zkgm': { name: 'sender_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_chain': { name: 'source_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_canonical': { name: 'staker_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_display': { name: 'staker_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_zkgm': { name: 'staker_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'success': { name: 'success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'traces': { name: 'traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; 'unbond_recv_timestamp': { name: 'unbond_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'unbond_recv_transaction_hash': { name: 'unbond_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'unbond_send_timestamp': { name: 'unbond_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'unbond_send_transaction_hash': { name: 'unbond_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'unbond_timeout_timestamp': { name: 'unbond_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'unbond_timeout_transaction_hash': { name: 'unbond_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'withdraw_packet_hash': { name: 'withdraw_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; 'v2_unbonds_args': { kind: 'INPUT_OBJECT'; name: 'v2_unbonds_args'; isOneOf: false; inputFields: [{ name: 'p_addresses_canonical'; type: { kind: 'SCALAR'; name: 'jsonb'; ofType: null; }; defaultValue: null }, { name: 'p_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_network'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; 'v2_util_get_address_types_for_display_address_args': { kind: 'INPUT_OBJECT'; name: 'v2_util_get_address_types_for_display_address_args'; isOneOf: false; inputFields: [{ name: 'p_display_address'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_chain_type'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; 'v2_util_get_address_types_for_display_address_type': { kind: 'OBJECT'; name: 'v2_util_get_address_types_for_display_address_type'; fields: { 'canonical': { name: 'canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'display': { name: 'display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'zkgm': { name: 'zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; 'v2_util_get_transfer_request_details_args': { kind: 'INPUT_OBJECT'; name: 'v2_util_get_transfer_request_details_args'; isOneOf: false; inputFields: [{ name: 'p_source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_base_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; 'v2_util_get_transfer_request_details_type': { kind: 'OBJECT'; name: 'v2_util_get_transfer_request_details_type'; fields: { 'already_exists': { name: 'already_exists'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'destination_channel_id': { name: 'destination_channel_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'quote_token': { name: 'quote_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_channel_id': { name: 'source_channel_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'wrap_direction': { name: 'wrap_direction'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_withdraw_type': { kind: 'OBJECT'; name: 'v2_withdraw_type'; fields: { 'batches': { name: 'batches'; type: { kind: 'SCALAR'; name: 'JSON'; ofType: null; } }; 'delivery_packet_hash': { name: 'delivery_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_recv_timestamp': { name: 'delivery_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_recv_transaction_hash': { name: 'delivery_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_send_timestamp': { name: 'delivery_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_send_transaction_hash': { name: 'delivery_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_success': { name: 'delivery_success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'delivery_timeout_timestamp': { name: 'delivery_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_timeout_transaction_hash': { name: 'delivery_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_traces': { name: 'delivery_traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; 'destination_chain': { name: 'destination_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_hash': { name: 'packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_shape': { name: 'packet_shape'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_amount': { name: 'quote_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_token': { name: 'quote_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_token_meta': { name: 'quote_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'receiver_canonical': { name: 'receiver_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'receiver_display': { name: 'receiver_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'receiver_zkgm': { name: 'receiver_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_amount': { name: 'remote_base_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_token': { name: 'remote_base_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_token_meta': { name: 'remote_base_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'remote_universal_chain_id': { name: 'remote_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_chain': { name: 'source_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_canonical': { name: 'staker_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_display': { name: 'staker_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_zkgm': { name: 'staker_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'withdraw_recv_timestamp': { name: 'withdraw_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'withdraw_recv_transaction_hash': { name: 'withdraw_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'withdraw_send_timestamp': { name: 'withdraw_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'withdraw_send_transaction_hash': { name: 'withdraw_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'withdraw_success': { name: 'withdraw_success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'withdraw_timeout_timestamp': { name: 'withdraw_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'withdraw_timeout_transaction_hash': { name: 'withdraw_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'withdraw_traces': { name: 'withdraw_traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; }; }; + 'v2_withdraws_args': { kind: 'INPUT_OBJECT'; name: 'v2_withdraws_args'; isOneOf: false; inputFields: [{ name: 'p_addresses_canonical'; type: { kind: 'SCALAR'; name: 'jsonb'; ofType: null; }; defaultValue: null }, { name: 'p_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_network'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; }; /** An IntrospectionQuery representation of your schema. diff --git a/app2/src/generated/schema.graphql b/app2/src/generated/schema.graphql index 407f50a565..078d2678d6 100644 --- a/app2/src/generated/schema.graphql +++ b/app2/src/generated/schema.graphql @@ -61,6 +61,7 @@ type Query { v2_channels(args: v2_channels_args! = {p_comparison: lt, p_destination_channel_id: null, p_destination_client_id: null, p_destination_connection_id: null, p_destination_port_id: null, p_destination_universal_chain_id: null, p_limit: null, p_recommended: null, p_sort_order: null, p_source_channel_id: null, p_source_client_id: null, p_source_connection_id: null, p_source_port_id: null, p_source_universal_chain_id: null, p_tags: null, p_version: null}): [v2_channel_type!]! v2_clients(args: v2_clients_args! = {p_client_id: null, p_comparison: lt, p_counterparty_universal_chain_id: null, p_limit: null, p_sort_order: null, p_universal_chain_id: null}): [v2_client_type!]! v2_connections(args: v2_connections_args! = {p_comparison: lt, p_destination_client_id: null, p_destination_connection_id: null, p_destination_universal_chain_id: null, p_limit: null, p_sort_order: null, p_source_client_id: null, p_source_connection_id: null, p_source_universal_chain_id: null}): [v2_connection_type!]! + v2_dust_withdraws(args: v2_dust_withdraws_args! = {p_addresses_canonical: null, p_block_hash: null, p_comparison: lt, p_destination_universal_chain_id: null, p_limit: null, p_network: null, p_packet_hash: null, p_sort_order: null, p_source_universal_chain_id: null, p_transaction_hash: null}): [v2_dust_withdraw_type!]! v2_errors: [v2_error_type!]! v2_health_check: [v2_health_check_type!]! v2_instructions(args: v2_instructions_args! = {p_block_hash: null, p_comparison: lt, p_limit: null, p_multiplex_contract_address: null, p_multiplex_sender: null, p_network: null, p_packet_hash: null, p_sort_order: null, p_transaction_hash: null}): [v2_instruction_type!]! @@ -70,6 +71,7 @@ type Query { v2_unbonds(args: v2_unbonds_args! = {p_addresses_canonical: null, p_block_hash: null, p_comparison: lt, p_destination_universal_chain_id: null, p_limit: null, p_network: null, p_packet_hash: null, p_sort_order: null, p_source_universal_chain_id: null, p_transaction_hash: null}): [v2_unbond_type!]! v2_util_get_transfer_request_details(args: v2_util_get_transfer_request_details_args! = {p_source_universal_chain_id: null, p_destination_universal_chain_id: null, p_base_token: null}): [v2_util_get_transfer_request_details_type!]! v2_util_get_address_types_for_display_address(args: v2_util_get_address_types_for_display_address_args! = {p_display_address: null, p_chain_type: null}): [v2_util_get_address_types_for_display_address_type!]! + v2_withdraws(args: v2_withdraws_args! = {p_addresses_canonical: null, p_block_hash: null, p_comparison: lt, p_destination_universal_chain_id: null, p_limit: null, p_network: null, p_packet_hash: null, p_sort_order: null, p_source_universal_chain_id: null, p_transaction_hash: null}): [v2_withdraw_type!]! v2_stats_count: [v2_stats_type!]! v2_stats_latency(args: v2_stats_latency_args! = {p_destination_universal_chain_id: null, p_phase: null, p_source_universal_chain_id: null}): [v2_stats_latency_type!]! v2_stats_packets_chain(args: v2_stats_packets_chain_args! = {p_days_back: null, p_destination_universal_chain_id: null, p_source_universal_chain_id: null}): [v2_stats_packets_chain_type!]! @@ -146,6 +148,9 @@ type v2_bond_type { sender_canonical: String sender_display: String sender_zkgm: String + staker_canonical: String + staker_display: String + staker_zkgm: String receiver_canonical: String receiver_display: String receiver_zkgm: String @@ -234,6 +239,7 @@ type v2_chain_type { explorers: [v2_explorers!]! features(where: v2_chain_features_bool_exp! = {environment: null}): [v2_chain_features!]! rpcs: [v2_rpcs!]! + family: v2_family_type! } input v2_chains_args { @@ -338,6 +344,59 @@ input v2_connections_args { p_source_universal_chain_id: String } +type v2_dust_withdraw_type { + packet_hash: String + dust_withdraw_success: Boolean + delivery_success: Boolean + packet_shape: String + source_universal_chain_id: String + remote_universal_chain_id: String + destination_universal_chain_id: String + staker_canonical: String + staker_display: String + staker_zkgm: String + receiver_canonical: String + receiver_display: String + receiver_zkgm: String + quote_token: String + quote_amount: String + remote_base_token: String + remote_base_amount: String + dust_withdraw_send_timestamp: DateTime + dust_withdraw_send_transaction_hash: String + dust_withdraw_recv_timestamp: DateTime + dust_withdraw_recv_transaction_hash: String + dust_withdraw_timeout_timestamp: DateTime + dust_withdraw_timeout_transaction_hash: String + delivery_packet_hash: String + delivery_send_timestamp: DateTime + delivery_send_transaction_hash: String + delivery_recv_timestamp: DateTime + delivery_recv_transaction_hash: String + delivery_timeout_timestamp: DateTime + delivery_timeout_transaction_hash: String + sort_order: String + source_chain: v2_chain_type! + destination_chain: v2_chain_type! + dust_withdraw_traces: [v2_traces_type!]! + delivery_traces: [v2_traces_type!]! + quote_token_meta: v2_token_meta + remote_base_token_meta: v2_token_meta +} + +input v2_dust_withdraws_args { + p_addresses_canonical: jsonb + p_block_hash: String + p_comparison: ComparisonOp! = lt + p_destination_universal_chain_id: String + p_limit: Int + p_network: String + p_packet_hash: String + p_sort_order: String + p_source_universal_chain_id: String + p_transaction_hash: String +} + type v2_error_type { union_error_code: String message: String @@ -356,6 +415,11 @@ type v2_explorers { logo_uri: String } +type v2_family_type { + name: String + ibc_interface: String +} + type v2_health_check_type { status: String last_update: DateTime @@ -572,6 +636,7 @@ type v2_stats_type { type v2_token_meta { denom: String + native_denom: String rank: Int universal_chain_id: String chain: v2_chain_type! @@ -711,6 +776,9 @@ type v2_unbond_type { sender_canonical: String sender_display: String sender_zkgm: String + staker_canonical: String + staker_display: String + staker_zkgm: String base_token: String base_amount: String batch: String @@ -720,6 +788,7 @@ type v2_unbond_type { unbond_recv_transaction_hash: String unbond_timeout_timestamp: DateTime unbond_timeout_transaction_hash: String + withdraw_packet_hash: String sort_order: String source_chain: v2_chain_type! destination_chain: v2_chain_type! @@ -763,4 +832,58 @@ type v2_util_get_transfer_request_details_type { destination_channel_id: Int already_exists: Boolean wrap_direction: String +} + +type v2_withdraw_type { + packet_hash: String + withdraw_success: Boolean + delivery_success: Boolean + packet_shape: String + source_universal_chain_id: String + remote_universal_chain_id: String + destination_universal_chain_id: String + staker_canonical: String + staker_display: String + staker_zkgm: String + receiver_canonical: String + receiver_display: String + receiver_zkgm: String + quote_token: String + quote_amount: String + remote_base_token: String + remote_base_amount: String + withdraw_send_timestamp: DateTime + withdraw_send_transaction_hash: String + withdraw_recv_timestamp: DateTime + withdraw_recv_transaction_hash: String + withdraw_timeout_timestamp: DateTime + withdraw_timeout_transaction_hash: String + delivery_packet_hash: String + delivery_send_timestamp: DateTime + delivery_send_transaction_hash: String + delivery_recv_timestamp: DateTime + delivery_recv_transaction_hash: String + delivery_timeout_timestamp: DateTime + delivery_timeout_transaction_hash: String + batches: JSON + sort_order: String + source_chain: v2_chain_type! + destination_chain: v2_chain_type! + withdraw_traces: [v2_traces_type!]! + delivery_traces: [v2_traces_type!]! + quote_token_meta: v2_token_meta + remote_base_token_meta: v2_token_meta +} + +input v2_withdraws_args { + p_addresses_canonical: jsonb + p_block_hash: String + p_comparison: ComparisonOp! = lt + p_destination_universal_chain_id: String + p_limit: Int + p_network: String + p_packet_hash: String + p_sort_order: String + p_source_universal_chain_id: String + p_transaction_hash: String } \ No newline at end of file diff --git a/app2/src/lib/components/ui/ConnectWalletButton.svelte b/app2/src/lib/components/ui/ConnectWalletButton.svelte index 8fedf0b552..4dad700700 100644 --- a/app2/src/lib/components/ui/ConnectWalletButton.svelte +++ b/app2/src/lib/components/ui/ConnectWalletButton.svelte @@ -36,6 +36,11 @@ import Button from "./Button.svelte" title="Cosmos" > +
+
diff --git a/app2/src/lib/components/ui/Wallet/connect/connection.svelte b/app2/src/lib/components/ui/Wallet/connect/connection.svelte index d72716b50b..0a0cf2b27c 100644 --- a/app2/src/lib/components/ui/Wallet/connect/connection.svelte +++ b/app2/src/lib/components/ui/Wallet/connect/connection.svelte @@ -5,6 +5,7 @@ import SharpPowerIcon from "$lib/components/icons/SharpPowerIcon.svelte" import { type CosmosWalletId } from "$lib/wallet/cosmos" import { type EvmWalletId } from "$lib/wallet/evm" +import { type SuiWalletId } from "$lib/wallet/sui" import { RpcType } from "@unionlabs/sdk/schema" import type { State } from "@wagmi/core" import { Schema } from "effect" @@ -27,6 +28,7 @@ interface Props { connectedWalletId?: | (T extends "cosmos" ? CosmosWalletId : T extends "evm" ? EvmWalletId + : T extends "sui" ? SuiWalletId : never) | undefined | null diff --git a/app2/src/lib/components/ui/Wallet/connect/index.ts b/app2/src/lib/components/ui/Wallet/connect/index.ts index 122e5a9812..dbbf5c7a06 100644 --- a/app2/src/lib/components/ui/Wallet/connect/index.ts +++ b/app2/src/lib/components/ui/Wallet/connect/index.ts @@ -1,5 +1,6 @@ import type { CosmosWalletId } from "$lib/wallet/cosmos" import type { EvmWalletId } from "$lib/wallet/evm" +import type { SuiWalletId } from "$lib/wallet/sui" import type { RpcType } from "@unionlabs/sdk/schema" import type { State } from "@wagmi/core" import type { Schema } from "effect" @@ -21,6 +22,7 @@ type Props = { connectedWalletId?: | (TChain extends "cosmos" ? CosmosWalletId : TChain extends "evm" ? EvmWalletId + : TChain extends "sui" ? SuiWalletId : never) | undefined onConnectClick: (walletIdentifier: string) => void | Promise diff --git a/app2/src/lib/components/ui/Wallet/index.svelte b/app2/src/lib/components/ui/Wallet/index.svelte index a96f42cf13..6b5f300629 100644 --- a/app2/src/lib/components/ui/Wallet/index.svelte +++ b/app2/src/lib/components/ui/Wallet/index.svelte @@ -4,6 +4,7 @@ import { dashboard } from "$lib/dashboard/stores/user.svelte" import { uiStore } from "$lib/stores/ui.svelte" import { cosmosStore, cosmosWalletsInformation } from "$lib/wallet/cosmos/index.js" import { evmWalletsInformation, sepoliaStore } from "$lib/wallet/evm/index.js" +import { suiStore, suiWalletsInformation } from "$lib/wallet/sui" import { Option } from "effect" import Modal from "../Modal.svelte" @@ -11,10 +12,12 @@ let currentWalletType = $state("all") let evmConnected = $state(false) let cosmosConnected = $state(false) +let suiConnected = $state(false) $effect(() => { evmConnected = sepoliaStore.connectionStatus === "connected" cosmosConnected = cosmosStore.connectionStatus === "connected" + suiConnected = suiStore.connectionStatus === "connected" }) @@ -43,10 +46,12 @@ $effect(() => { style:left={currentWalletType === "all" ? "0" : currentWalletType === "evm" - ? "33.333%" - : "66.666%"} - style:width="33.333%" - style:height="100%" + ? "25%" + : currentWalletType === "cosmos" + ? "50%" + : "75%"} + style:width="25%" + style:height="75%" > + @@ -128,6 +154,17 @@ $effect(() => { onDisconnectClick={cosmosStore.disconnect} showDivider={false} /> + {:else if currentWalletType === "sui"} + suiStore.connect(id as any)} + onDisconnectClick={suiStore.disconnect} + showDivider={false} + /> {:else if currentWalletType === "all"} { onDisconnectClick={cosmosStore.disconnect} showDivider={true} /> + suiStore.connect(id as any)} + onDisconnectClick={suiStore.disconnect} + showDivider={false} + /> {/if} diff --git a/app2/src/lib/gasprice/index.ts b/app2/src/lib/gasprice/index.ts index 82f321c5d4..a53b4d55bb 100644 --- a/app2/src/lib/gasprice/index.ts +++ b/app2/src/lib/gasprice/index.ts @@ -193,6 +193,35 @@ export class GasPriceMap extends LayerMap.Service()("GasPriceByChai }), ), ), + Match.when( + { rpc_type: "sui" }, + (chain) => + Layer.effect( + GasPrice.GasPrice, + Effect.gen(function*() { + // ── MOCKED SUI GAS PRICE ───────────────────────────────────────────── + // TODO: Change it later. + const of = Effect.gen(function*() { + const atomic = BigDecimal.unsafeFromNumber(1_000) + const value = GasPrice.AtomicGasPrice(atomic) + + yield* Effect.logDebug( + `${chain.display_name} gas price (mock MIST): ${JSON.stringify(atomic)}`, + ) + + return { + value, + minimalDenom: "MIST", + denom: "SUI", + additiveFee: O.none(), + decimals: 9, + } + }).pipe(Effect.tapError((cause) => Effect.logError("GasPrice.of (sui)", cause))) + + return GasPrice.GasPrice.of({ of }) + }), + ), + ), Match.orElseAbsurd, ), idleTimeToLive: "30 seconds", diff --git a/app2/src/lib/queries/tokens.svelte.ts b/app2/src/lib/queries/tokens.svelte.ts index 5ba2d78db5..e2049451c7 100644 --- a/app2/src/lib/queries/tokens.svelte.ts +++ b/app2/src/lib/queries/tokens.svelte.ts @@ -17,10 +17,12 @@ export const tokensQuery = (universalChainId: UniversalChainId) => query TokensForChain($universal_chain_id: String!) @cached(ttl: 3600) { whitelist: v2_tokens(args: {p_whitelist: true, p_universal_chain_id: $universal_chain_id}, order_by: {rank: asc_nulls_last}) { denom + native_denom } v2_tokens(args: {p_universal_chain_id: $universal_chain_id }, order_by: {rank: asc_nulls_last}) { rank denom + native_denom bucket { capacity refill_rate diff --git a/app2/src/lib/services/sui/balances.ts b/app2/src/lib/services/sui/balances.ts new file mode 100644 index 0000000000..fc0a6a03e6 --- /dev/null +++ b/app2/src/lib/services/sui/balances.ts @@ -0,0 +1,50 @@ +import { type FromHexError, fromHexString } from "$lib/utils/hex" +import { Sui } from "@unionlabs/sdk-sui" +import type { Chain } from "@unionlabs/sdk/schema" +import { RawTokenBalance, TokenRawAmount, type TokenRawDenom } from "@unionlabs/sdk/schema" +import { Data, Effect, Option, Schema, Unify } from "effect" +import { getSuiPublicClient, NoSuiRpcError } from "./clients" + +export class ReadSuiCoinError extends Data.TaggedError("ReadSuiCoinError")<{ cause: unknown }> {} + +export type FetchSuiBalanceError = + | NoSuiRpcError + | FromHexError + | ReadSuiCoinError + | Sui.CreatePublicClientError + +export const BalanceSchema = Schema.Struct({ + balance: Schema.String, + token: Schema.String, + address: Schema.String, +}) + +export const fetchSuiBalance = ({ + chain, + tokenAddress, + walletAddress, +}: { + chain: Chain + tokenAddress: TokenRawDenom + walletAddress: string +}) => + Effect.gen(function*() { + console.log(tokenAddress) + const coinType = yield* fromHexString(tokenAddress) + console.log(coinType) + + const publicClient = yield* getSuiPublicClient(chain) + + const total = yield* Sui.readTotalCoinBalance(coinType, walletAddress).pipe( + Effect.provideService(Sui.PublicClient, publicClient), + Effect.mapError((cause) => new ReadSuiCoinError({ cause })), + ) + + return RawTokenBalance.make(Option.some(TokenRawAmount.make(total))) + }).pipe( + Effect.annotateLogs({ + universal_chain_id: chain.universal_chain_id, + walletAddress, + tokenAddress, + }), + ) diff --git a/app2/src/lib/services/sui/clients.ts b/app2/src/lib/services/sui/clients.ts new file mode 100644 index 0000000000..8ddc4dd346 --- /dev/null +++ b/app2/src/lib/services/sui/clients.ts @@ -0,0 +1,33 @@ +import { getFullnodeUrl } from "@mysten/sui/client" +import type { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" +import { Sui } from "@unionlabs/sdk-sui" +import type { Chain } from "@unionlabs/sdk/schema" +import { Data, Effect, Option } from "effect" + +export class NoSuiRpcError extends Data.TaggedError("NoSuiRpcError")<{ chain: Chain }> {} + +export const getSuiPublicClient = (chain: Chain) => + Effect.gen(function*() { + const maybeRpc = chain.getRpcUrl("rpc") + if (Option.isNone(maybeRpc)) { + return yield* new NoSuiRpcError({ chain }) + } + const url = maybeRpc.value.toString() + + const layer = Sui.PublicClient.Live({ url: url }) + const client = yield* Sui.PublicClient.pipe(Effect.provide(layer)) + return client + }) + +export const getSuiWalletClient = (chain: Chain, signer: Ed25519Keypair) => + Effect.gen(function*() { + const maybeRpc = chain.getRpcUrl("rpc") + if (Option.isNone(maybeRpc)) { + return yield* new NoSuiRpcError({ chain }) + } + const url = maybeRpc.value.toString() + + const layer = Sui.WalletClient.Live({ url: url, signer: signer as any }) + const wallet = yield* Sui.WalletClient.pipe(Effect.provide(layer)) + return wallet + }) diff --git a/app2/src/lib/services/transfer-ucs03-sui/account.ts b/app2/src/lib/services/transfer-ucs03-sui/account.ts new file mode 100644 index 0000000000..e2622631b8 --- /dev/null +++ b/app2/src/lib/services/transfer-ucs03-sui/account.ts @@ -0,0 +1,11 @@ +import { getAccountError } from "$lib/services/transfer-ucs03-evm/errors" +import { getWagmiConfig } from "$lib/wallet/evm/wagmi-config.svelte" +import { getAccount as getConnectedAccount } from "@wagmi/core" +import { Effect } from "effect" + +export const getAccount = Effect.gen(function*() { + return yield* Effect.try({ + try: () => getConnectedAccount(getWagmiConfig()), + catch: () => new getAccountError({ cause: "Could not get connected account" }), + }) +}) diff --git a/app2/src/lib/services/transfer-ucs03-sui/approval.ts b/app2/src/lib/services/transfer-ucs03-sui/approval.ts new file mode 100644 index 0000000000..8c05b79863 --- /dev/null +++ b/app2/src/lib/services/transfer-ucs03-sui/approval.ts @@ -0,0 +1,9 @@ +import type { ValidTransfer } from "@unionlabs/sdk/schema" +import { Effect } from "effect" + +/** + * Sui coins don’t use approve/allowance. + * We short-circuit with a sentinel message so callers can skip receipt waits. + */ +export const approveTransfer = (_params: ValidTransfer["args"]) => + Effect.succeed("sui-no-approval-needed" as const) diff --git a/app2/src/lib/services/transfer-ucs03-sui/chain.ts b/app2/src/lib/services/transfer-ucs03-sui/chain.ts new file mode 100644 index 0000000000..5a0ed93df3 --- /dev/null +++ b/app2/src/lib/services/transfer-ucs03-sui/chain.ts @@ -0,0 +1,55 @@ +import type { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" +import { Sui } from "@unionlabs/sdk-sui" +import type { Chain } from "@unionlabs/sdk/schema" +import { Effect, pipe } from "effect" + +export class SuiSwitchChainError extends Error { + constructor(readonly cause: unknown, readonly chainId?: string) { + super(`Sui switch network failed: ${String(cause)}`) + } +} +export class SuiWalletNotProvidedError extends Error { + constructor() { + super("Sui signer (Ed25519Keypair) not provided") + } +} + +type SwitchChainSuccess = { + success: true + rpcUrl: string + publicClient: Sui.Sui.PublicClient + walletClient: Sui.Sui.WalletClient +} + +export const SwitchChain = (chain: Chain, signer: Ed25519Keypair) => + Effect.gen(function*() { + if (!signer) { + return yield* Effect.fail(new SuiWalletNotProvidedError()) + } + + const rpcUrl = yield* chain.getRpcUrl("rpc").pipe( + Effect.mapError((cause) => new SuiSwitchChainError(cause, chain.universal_chain_id)), + ) + + const publicLayer = Sui.PublicClient.Live({ url: rpcUrl }) + const walletLayer = Sui.WalletClient.Live({ url: rpcUrl, signer: signer as any }) + + const { pub, wal } = yield* Effect.all({ + pub: Sui.PublicClient, + wal: Sui.WalletClient, + }).pipe(Effect.provide(publicLayer), Effect.provide(walletLayer)) + + yield* Effect.tryPromise({ + try: async () => pub.client.getReferenceGasPrice(), + catch: (cause) => new SuiSwitchChainError(cause, chain.universal_chain_id), + }) + + yield* Effect.sleep("1.5 seconds") + + return { + success: true, + rpcUrl, + publicClient: pub, + walletClient: wal, + } satisfies SwitchChainSuccess + }) diff --git a/app2/src/lib/services/transfer-ucs03-sui/channel.ts b/app2/src/lib/services/transfer-ucs03-sui/channel.ts new file mode 100644 index 0000000000..34c05d317e --- /dev/null +++ b/app2/src/lib/services/transfer-ucs03-sui/channel.ts @@ -0,0 +1,51 @@ +import { ChannelValidationError } from "$lib/services/transfer-ucs03-evm/errors" +import type { UniversalChainId } from "@unionlabs/sdk/schema" +import { Channel, type Channels } from "@unionlabs/sdk/schema" +import { Effect } from "effect" + +// TODO(ehegnes): replace this with a schema transform +export const getChannelInfo = ( + source_universal_chain_id: UniversalChainId, + destination_universal_chain_id: UniversalChainId, + channels: typeof Channels.Type, +): Effect.Effect => + Effect.gen(function*() { + const channel = channels.find( + chan => + chan.destination_universal_chain_id === destination_universal_chain_id + && chan.source_universal_chain_id === source_universal_chain_id, + ) + + if ( + !channel + || channel.source_connection_id === null + || channel.source_channel_id === null + || !channel.source_port_id + || channel.destination_connection_id === null + || channel.destination_channel_id === null + || !channel.destination_port_id + ) { + return yield* Effect.fail( + new ChannelValidationError({ + source_universal_chain_id, + destination_universal_chain_id, + cause: "Missing required channel information", + }), + ) + } + + return new Channel({ + source_universal_chain_id, + source_connection_id: channel.source_connection_id, + source_channel_id: channel.source_channel_id, + source_client_id: channel.source_client_id, + source_port_id: channel.source_port_id, + fees: channel.fees, + destination_universal_chain_id, + destination_connection_id: channel.destination_connection_id, + destination_channel_id: channel.destination_channel_id, + destination_client_id: channel.destination_client_id, + destination_port_id: channel.destination_port_id, + tags: channel.tags, + }) + }) diff --git a/app2/src/lib/services/transfer-ucs03-sui/errors.ts b/app2/src/lib/services/transfer-ucs03-sui/errors.ts new file mode 100644 index 0000000000..744403d7c9 --- /dev/null +++ b/app2/src/lib/services/transfer-ucs03-sui/errors.ts @@ -0,0 +1,61 @@ +import type { GetConnectorClientErrorType } from "@wagmi/core" +import { Data } from "effect" +import type { + CreatePublicClientErrorType, + CreateWalletClientErrorType, + SwitchChainErrorType, + WaitForTransactionReceiptErrorType, + WriteContractErrorType, +} from "viem" + +export class CreateWalletClientError extends Data.TaggedError("CreateWalletClientError")<{ + cause: CreateWalletClientErrorType +}> {} + +export class WaitForTransactionReceiptError extends Data.TaggedError( + "WaitForTransactionReceiptError", +)<{ + cause: WaitForTransactionReceiptErrorType +}> {} + +export class CreatePublicClientError extends Data.TaggedError("CreatePublicClientError")<{ + cause: CreatePublicClientErrorType +}> {} + +export class WriteContractError extends Data.TaggedError("WriteContractError")<{ + cause: WriteContractErrorType +}> {} + +export class EvmSwitchChainError extends Data.TaggedError("EvmSwitchChainError")<{ + cause: SwitchChainErrorType +}> {} + +export class getAccountError extends Data.TaggedError("SwitchChainError")<{ + cause: string +}> {} + +export class ConnectorClientError extends Data.TaggedError("ConnectorClientError")<{ + cause: GetConnectorClientErrorType +}> {} + +export class AmountParsingError extends Data.TaggedError("AmountParsingError")<{ + input: string + decimals: number + cause?: unknown | undefined +}> {} + +export class ChannelValidationError extends Data.TaggedError("ChannelValidationError")<{ + source_universal_chain_id: string + destination_universal_chain_id: string + cause?: unknown | undefined +}> {} + +export class GetQuoteError extends Data.TaggedError("GetQuoteError")<{ + cause: string +}> {} + +export class GetWethQuoteError extends Data.TaggedError("GetWethQuoteError")<{ + cause: string +}> {} + +export type SubmitTransferError = WriteContractError | CreateWalletClientError diff --git a/app2/src/lib/services/transfer-ucs03-sui/index.ts b/app2/src/lib/services/transfer-ucs03-sui/index.ts new file mode 100644 index 0000000000..2af8b7f2d9 --- /dev/null +++ b/app2/src/lib/services/transfer-ucs03-sui/index.ts @@ -0,0 +1,6 @@ +export * from "./approval" +export * from "./chain" +export * from "./errors" +export * from "./machine" +export * from "./state" +export * from "./transactions" diff --git a/app2/src/lib/services/transfer-ucs03-sui/machine.ts b/app2/src/lib/services/transfer-ucs03-sui/machine.ts new file mode 100644 index 0000000000..9a893c8982 --- /dev/null +++ b/app2/src/lib/services/transfer-ucs03-sui/machine.ts @@ -0,0 +1,85 @@ +import { runPromiseExit } from "$lib/runtime" +import { approveTransfer, waitForApprovalReceipt } from "$lib/services/transfer-ucs03-evm/approval" +import { EvmSwitchChainError } from "$lib/services/transfer-ucs03-evm/errors" +import { suiStore } from "$lib/wallet/sui/config.svelte" +import type { ValidTransfer } from "@unionlabs/sdk/schema" +import { Effect, Option } from "effect" +import type { SwitchChainErrorType } from "viem" +import { SwitchChain } from "./chain" +import { + SwitchChainState, + TransferReceiptState, + TransferSubmission, + TransferSubmitState, +} from "./state" +import { submitTransfer, waitForTransferReceipt } from "./transactions" + +export async function nextState( + ts: TransferSubmission, + params: ValidTransfer["args"], +): Promise { + return TransferSubmission.$match(ts, { + Filling: () => { + return TransferSubmission.SwitchChain({ state: SwitchChainState.InProgress() }) + }, + + SwitchChain: ({ state }) => { + return SwitchChainState.$match(state, { + InProgress: async () => { + const suiSigner = suiStore.getSuiSigner() + if (!suiSigner) { + throw new Error("Sui signer not available. Connect a Sui wallet.") + } + + const exit = await runPromiseExit(SwitchChain(params.sourceChain, suiSigner as any)) + return TransferSubmission.SwitchChain({ state: SwitchChainState.Complete({ exit }) }) + }, + Complete: ({ exit }) => { + if (exit._tag === "Failure") { + return TransferSubmission.SwitchChain({ state: SwitchChainState.InProgress() }) + } + return TransferSubmission.TransferSubmit({ state: TransferSubmitState.InProgress() }) + }, + }) + }, + + TransferSubmit: ({ state }) => { + return TransferSubmitState.$match(state, { + InProgress: async () => { + const exit = await runPromiseExit(submitTransfer(params.sourceChain, params)) + return TransferSubmission.TransferSubmit({ + state: TransferSubmitState.Complete({ exit }), + }) + }, + Complete: ({ exit }) => { + if (exit._tag === "Failure") { + return TransferSubmission.TransferSubmit({ state: TransferSubmitState.InProgress() }) + } + return TransferSubmission.TransferReceipt({ + state: TransferReceiptState.InProgress({ + // @ts-ignore-error + hash: exit.value, + }), + }) + }, + }) + }, + + TransferReceipt: ({ state }) => { + return TransferReceiptState.$match(state, { + InProgress: async ({ digest }) => { + const exit = await runPromiseExit(waitForTransferReceipt(params.sourceChain, digest)) + return TransferSubmission.TransferReceipt({ + state: TransferReceiptState.Complete({ exit }), + }) + }, + Complete: ({ exit }) => { + // TODO: there is no real next state here + return TransferSubmission.TransferReceipt({ + state: TransferReceiptState.Complete({ exit }), + }) + }, + }) + }, + }) +} diff --git a/app2/src/lib/services/transfer-ucs03-sui/state.ts b/app2/src/lib/services/transfer-ucs03-sui/state.ts new file mode 100644 index 0000000000..e8efa3ae3e --- /dev/null +++ b/app2/src/lib/services/transfer-ucs03-sui/state.ts @@ -0,0 +1,52 @@ +// src/lib/services/transfer-ucs03-sui/state.ts +import { Data, type Effect, type Exit } from "effect" +import type { SwitchChain } from "./chain" +import type { submitTransfer, waitForTransferReceipt } from "./transactions" + +type EffectToExit = T extends Effect.Effect ? Exit.Exit : never + +export type SwitchChainState = Data.TaggedEnum<{ + InProgress: {} + Complete: { exit: EffectToExit> } +}> +export const SwitchChainState = Data.taggedEnum() + +export type TransferSubmitState = Data.TaggedEnum<{ + InProgress: {} + Complete: { exit: EffectToExit> } +}> +export const TransferSubmitState = Data.taggedEnum() + +export type TransferReceiptState = Data.TaggedEnum<{ + InProgress: { readonly digest: `0x${string}` } + Complete: { exit: EffectToExit> } +}> +export const TransferReceiptState = Data.taggedEnum() + +export type TransferSubmission = Data.TaggedEnum<{ + Filling: {} + SwitchChain: { state: SwitchChainState } + TransferSubmit: { state: TransferSubmitState } + TransferReceipt: { state: TransferReceiptState } +}> +export const TransferSubmission = Data.taggedEnum() + +type StateWithExit = + | { _tag: "SwitchChain"; state: SwitchChainState } + | { _tag: "TransferSubmit"; state: TransferSubmitState } + | { _tag: "TransferReceipt"; state: TransferReceiptState } + +export function hasFailedExit(state: StateWithExit | { _tag: "Filling" }): boolean { + if (state._tag === "Filling") { + return false + } + return state.state._tag === "Complete" && state.state.exit._tag === "Failure" +} + +export function isComplete(state: StateWithExit | { _tag: "Filling" }): boolean { + return ( + state._tag === "TransferReceipt" + && state.state._tag === "Complete" + && state.state.exit._tag === "Success" + ) +} diff --git a/app2/src/lib/services/transfer-ucs03-sui/transactions.ts b/app2/src/lib/services/transfer-ucs03-sui/transactions.ts new file mode 100644 index 0000000000..4124e7370f --- /dev/null +++ b/app2/src/lib/services/transfer-ucs03-sui/transactions.ts @@ -0,0 +1,95 @@ +import { getAccount } from "$lib/services/transfer-ucs03-evm/account" +import { ViemPublicClient } from "@unionlabs/sdk/evm" +import { readErc20Meta } from "@unionlabs/sdk/evm/erc20" +import type { Chain, ValidTransfer } from "@unionlabs/sdk/schema" +import { generateSalt } from "@unionlabs/sdk/utils/index" +import { Effect } from "effect" +import type { Hash, WaitForTransactionReceiptErrorType } from "viem" +import { getPublicClient, getWalletClient } from "../evm/clients" +import { WaitForTransactionReceiptError } from "./errors" + +export const submitTransfer = (chain: Chain, transfer: ValidTransfer["args"]) => + Effect.gen(function*() { + if (transfer.sourceRpcType !== "evm") { + return yield* Effect.fail(new Error("Only EVM transfers are supported")) + } + const account = yield* Effect.flatMap( + getAccount, + account => account ? Effect.succeed(account) : Effect.fail(new Error("No account connected")), + ) + const salt = yield* generateSalt("evm") + + const client = yield* getPublicClient(chain) + const onchainBaseTokenMeta = yield* readErc20Meta( + transfer.baseToken, + transfer.sourceChain.universal_chain_id, + ).pipe( + Effect.provideService(ViemPublicClient, { client }), + ) + + const walletClient = yield* getWalletClient(chain) + + return "0x0fabab" + + // return yield* sendInstructionEvm( + // Batch([ + // FungibleAssetOrder([ + // account.address as `0x${string}`, + // transfer.receiver as `0x${string}`, + // transfer.baseToken, + // transfer.baseAmount, + // onchainBaseTokenMeta.symbol, + // onchainBaseTokenMeta.name, + // onchainBaseTokenMeta.decimals, + // 9n, // when unwrapping, otherwise 0 + // transfer.quoteToken, + // transfer.quoteAmount + // ]) + // ]) + // ).pipe( + // Effect.provideService(ViemWalletClient, { + // account: account as Account, + // client: walletClient, + // chain: sepolia + // }) + // ) + // return yield* writeContract(walletClient, { + // account: account.address as `0x${string}`, + // abi: ucs03abi, + // chain: sepolia, + // functionName: "send", + // address: transfer.ucs03address as `0x${string}`, + // args: [ + // transfer.sourceChannelId, + // transfer.timeoutHeight, + // BigInt(transfer.timeoutTimestamp), + // salt, + // encodeAbi( + // Batch([ + // FungibleAssetOrder([ + // account.address as `0x${string}`, + // transfer.receiver as `0x${string}`, + // transfer.baseToken, + // transfer.baseAmount, + // onchainBaseTokenMeta.symbol, + // onchainBaseTokenMeta.name, + // onchainBaseTokenMeta.decimals, + // 9n, // when unwrapping, otherwise 0 + // transfer.quoteToken, + // transfer.quoteAmount + // ]) + // ]) + // ) + // ] + // }) + }) + +export const waitForTransferReceipt = (chain: Chain, hash: Hash) => + Effect.gen(function*() { + const publicClient = yield* getPublicClient(chain) + return yield* Effect.tryPromise({ + try: () => publicClient.waitForTransactionReceipt({ hash }), + catch: err => + new WaitForTransactionReceiptError({ cause: err as WaitForTransactionReceiptErrorType }), + }) + }) diff --git a/app2/src/lib/stores/balances.svelte.ts b/app2/src/lib/stores/balances.svelte.ts index b48a4657fb..5b3a1759d9 100644 --- a/app2/src/lib/stores/balances.svelte.ts +++ b/app2/src/lib/stores/balances.svelte.ts @@ -1,6 +1,7 @@ import { runFork, runPromise, runSync } from "$lib/runtime" import { fetchCosmosBalance, type FetchCosmosBalanceError } from "$lib/services/cosmos/balances" import { fetchEvmBalance, type FetchEvmBalanceError } from "$lib/services/evm/balances" +import { fetchSuiBalance, type FetchSuiBalanceError } from "$lib/services/sui/balances" import type { Chain, TokenRawDenom, UniversalChainId } from "@unionlabs/sdk/schema" import { type AddressCanonicalBytes, @@ -71,6 +72,7 @@ const boundedFibonacci$: (maxDelta: number) => Stream.Stream = maxDelta export type BalancesStoreError = | FetchEvmBalanceError | FetchCosmosBalanceError + | FetchSuiBalanceError export class BalancesStore { data = $state(new SvelteMap()) @@ -149,6 +151,12 @@ export class BalancesStore { tokenAddress: denom, walletAddress: AddressEvmCanonical.make(address), })), + Match.when({ chain: { rpc_type: "sui" } }, ({ chain, address, denom }) => + fetchSuiBalance({ + chain, + tokenAddress: denom, + walletAddress: address, + })), Match.when( { chain: { rpc_type: "cosmos" } }, ({ chain, address, denom }) => diff --git a/app2/src/lib/stores/fee.svelte.ts b/app2/src/lib/stores/fee.svelte.ts index 37b502b7e8..e4cd387ac6 100644 --- a/app2/src/lib/stores/fee.svelte.ts +++ b/app2/src/lib/stores/fee.svelte.ts @@ -425,6 +425,11 @@ const createFeeStore = () => { A.findFirst(VIEM_CHAINS, y => String(y.id) === x.chain_id), O.map(x => x.nativeCurrency.symbol), )), + Match.when({ rpc_type: "sui" }, (x) => + pipe( + R.get(GAS_DENOMS, x.universal_chain_id), + O.map(g => (g as any).tickerSymbol ?? "SUI"), + )), Match.orElseAbsurd, ) @@ -446,6 +451,11 @@ const createFeeStore = () => { A.findFirst(VIEM_CHAINS, y => String(y.id) === x.chain_id), O.map(x => x.nativeCurrency.symbol), )), + Match.when({ rpc_type: "sui" }, (x) => + pipe( + R.get(GAS_DENOMS, x.universal_chain_id), + O.map(g => (g as any).tickerSymbol ?? "SUI"), + )), Match.orElseAbsurd, ) diff --git a/app2/src/lib/transfer/normal/steps/ApprovalStep.svelte b/app2/src/lib/transfer/normal/steps/ApprovalStep.svelte index 508a29cc99..f9cd5ae813 100644 --- a/app2/src/lib/transfer/normal/steps/ApprovalStep.svelte +++ b/app2/src/lib/transfer/normal/steps/ApprovalStep.svelte @@ -109,6 +109,9 @@ const submitButtonText = $derived.by(() => { if (Option.isSome(error)) { return "Try Again" } + if (isSui) { + return "Continue" + } if (!WriteEvm.is("Filling")(ets)) { return WriteEvm.toCtaText(actionButtonText)(ets) @@ -209,6 +212,11 @@ const submit = Effect.gen(function*() { yield* Match.value(rpcType).pipe( Match.when("evm", () => doEvm), Match.when("cosmos", () => doCosmos), + Match.when("sui", () => + Effect.gen(function*() { + // no approval on Sui — directly proceed to the next step + yield* approve + })), Match.orElse(() => Effect.gen(function*() { yield* Effect.logFatal("Unsupported chain type") @@ -249,6 +257,7 @@ const handleSubmit = () => { // XXX: why not reactive const sourceChain = step.intent.sourceChain +const isSui = sourceChain.rpc_type === "sui" // TODO: is this correct? // XXX: why not reactive const massagedDenom = Schema.decodeSync(TokenRawDenom)(ensureHex(step.token.address)) @@ -256,6 +265,7 @@ function getMaxApprovalAmount() { return Match.value(step.intent.sourceChain.rpc_type).pipe( Match.when("evm", () => MAX_UINT256), Match.when("cosmos", () => MAX_UINT128), + Match.when("sui", () => step.requiredAmount), Match.orElse(() => step.requiredAmount), // Fallback to required amount for unknown ) } @@ -382,7 +392,11 @@ function handleBackClick() {

- Approve + {#if isSui} + No Approval Needed + {:else} + Approve + {/if}

- You need to approve Union to send - . This is a one-time approval for this token. -

- -
- -
+ {#if isSui} + Sui coins don’t use ERC-20 style approvals. We’ll continue to the next step. + {:else} + You need to approve Union to send + showWrapping={false} + />. This is a one-time approval for this token. + {/if} +

+ {#if !isSui} +
+ +
+ +
-
+ {/if}
@@ -419,86 +438,92 @@ function handleBackClick() {
{/if}
- - - {#if !showCustomInput} -
- - - - - + {#if isSui} +
+ Approval amount selection isn’t required on Sui.
{:else} -
- -
- Select Approval Amount + + {#if !showCustomInput} +
+ + + + +
-
+ {:else} +
+ +
+ +
+
+ {/if} {/if}

diff --git a/app2/src/lib/transfer/normal/steps/SubmitStep.svelte b/app2/src/lib/transfer/normal/steps/SubmitStep.svelte index 39a99cafc0..492904e4ae 100644 --- a/app2/src/lib/transfer/normal/steps/SubmitStep.svelte +++ b/app2/src/lib/transfer/normal/steps/SubmitStep.svelte @@ -30,10 +30,15 @@ import type { SubmitInstruction } from "$lib/transfer/normal/steps/steps" import { safeOpts } from "$lib/transfer/shared/services/handlers/safe" import { getLastConnectedWalletId } from "$lib/wallet/evm/config.svelte" import { fallbackTransport } from "$lib/wallet/evm/wagmi-config.svelte" +import { suiStore } from "$lib/wallet/sui/config.svelte" +import { getFullnodeUrl } from "@mysten/sui/client" +import type { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" import { ZkgmClientError, ZkgmIncomingMessage } from "@unionlabs/sdk" import { ZkgmClient } from "@unionlabs/sdk" import { Cosmos, CosmosZkgmClient } from "@unionlabs/sdk-cosmos" import { Evm, EvmZkgmClient, Safe } from "@unionlabs/sdk-evm" +import { Sui } from "@unionlabs/sdk-sui" +import { SuiZkgmClient } from "@unionlabs/sdk-sui" import type { ExecuteContractError } from "@unionlabs/sdk/cosmos" import { CreateViemPublicClientError, @@ -79,6 +84,9 @@ let error = $state< | Evm.CreateWalletClientError | Evm.CreatePublicClientError | Cosmos.ClientError + | Sui.CreatePublicClientError + | Sui.CreateWalletClientError + | Sui.WriteContractError | NoSuchElementException | CryptoError | ExecuteContractError @@ -195,6 +203,45 @@ export const submit = Effect.gen(function*() { Effect.provide(walletClient), ) }) + const doSui = Effect.gen(function*() { + const chain = step.intent.sourceChain + + const url = yield* chain.getRpcUrl("rpc") + + const { address } = yield* wallets.getAddressForChain(chain) + const maybe = (wallets as any).getSuiSigner?.() + + const signer = yield* pipe( + Effect.sync(() => suiStore.getSuiSigner()), + Effect.flatMap( + Option.match({ + onNone: () => Effect.fail(new Error("Sui signer not available. Connect a Sui wallet.")), + onSome: (s) => Effect.succeed(s), + }), + ), + ) + + ctaCopy = "Switching Network..." + yield* Effect.sleep("1.5 seconds") + + const publicClient = Sui.PublicClient.Live({ url: url }) + const walletClient = Sui.WalletClient.Live({ + url: url, + signer: signer as any, + }) + + // 5) Execute ZKGM request + ctaCopy = "Executing..." + + const response = yield* ZkgmClient.execute(request).pipe( + Effect.provide(SuiZkgmClient.layerWithoutWallet), + Effect.provide(publicClient), + Effect.provide(walletClient), + ) + + ctaCopy = "Confirming Transaction..." + return response.txHash + }) const doCosmos = Effect.gen(function*() { const chain = step.intent.sourceChain @@ -215,7 +262,7 @@ export const submit = Effect.gen(function*() { const publicClient = Cosmos.Client.Live(rpcUrl) ctaCopy = "Executing..." - + console.log("instruction:", step.instruction) // --- IGNORE --- const response = yield* ZkgmClient.execute(step.instruction).pipe( Effect.provide(CosmosZkgmClient.layerWithoutSigningClient), Effect.provide(walletClient), @@ -229,6 +276,7 @@ export const submit = Effect.gen(function*() { return yield* Match.value(sourceChainRpcType).pipe( Match.when("evm", () => doEvm), Match.when("cosmos", () => doCosmos), + Match.when("sui", () => doSui), Match.orElse(() => Effect.gen(function*() { yield* Effect.logFatal("Unknown chain type") @@ -256,13 +304,7 @@ const handleSubmit = () => { onFailure: cause => { const err = Cause.originalError(cause) ctaCopy = "Retry" - error = pipe( - err, - Cause.failures, - xs => Array.from(xs), - Arr.head, - ) - isSubmitting = false + error = pipe(cause, Cause.failureOption, Option.map(e => e as any)), isSubmitting = false }, onSuccess: (hash) => { startPolling(hash as TransactionHash) @@ -314,7 +356,7 @@ const handleSubmit = () => { onOpen={() => { showError = true }} - error={error.value} + error={error.value as any} /> {/if} {:else} diff --git a/app2/src/lib/transfer/shared/data/transfer-data.svelte.ts b/app2/src/lib/transfer/shared/data/transfer-data.svelte.ts index fc5ca126c2..987a3f7c11 100644 --- a/app2/src/lib/transfer/shared/data/transfer-data.svelte.ts +++ b/app2/src/lib/transfer/shared/data/transfer-data.svelte.ts @@ -17,10 +17,18 @@ import { EU_LST, EU_SOLVER_ON_ETH_METADATA, EU_SOLVER_ON_UNION_METADATA, + SUI_ADDR, + SUI_NATIVE_COIN, + SUI_NATIVE_COIN_WITHOUT_0x, + SUI_SOLVER_ON_COSMOS_METADATA, + SUI_SOLVER_ON_SUI_METADATA, + SUI_U_COIN, U_BANK, U_ERC20, U_SOLVER_ON_ETH_METADATA, + U_SOLVER_ON_SUI_METADATA, U_SOLVER_ON_UNION_METADATA, + U_SUI, } from "@unionlabs/sdk/Constants" import * as US from "@unionlabs/sdk/schema" import { Array as A, Brand, Effect, Match, Option, pipe, String as Str, Struct } from "effect" @@ -108,6 +116,9 @@ export class TransferData { "0xba5ed44733953d79717f6269357c77718c8ba5ed", // U EU_ERC20.address.toLowerCase(), // toHex(EU_LST.address), + toHex(SUI_NATIVE_COIN.address), + toHex(SUI_U_COIN.address), + toHex(SUI_ADDR.address), // TODO: add eU base // TODO: add eU quote ], @@ -126,6 +137,11 @@ export class TransferData { ]).pipe( Option.flatMap( ([baseToken, sourceChain, destinationChain, quoteTokens]) => { + console.log("isSolve: ", this.isSolve) + console.log("baseToken: ", this.baseToken) + console.log("quoteTokens: ", this.quoteTokens) + console.log("destinationChain: ", this.destinationChain) + console.log("sourceChain: ", this.baseToken) if (this.isSolve) { return Match.value([ Brand.unbranded(baseToken.denom).toLowerCase(), @@ -136,6 +152,22 @@ export class TransferData { ["0x6175", "evm", Match.any], () => U_ERC20, ), + Match.when( + ["0x6175", "sui", Str.startsWith("sui.")], + () => U_SUI, + ), + Match.when( + [toHex(SUI_NATIVE_COIN.address), "cosmos", Str.startsWith("union.")], + () => Token.Cw20.make({ address: SUI_ADDR.address }), + ), + Match.when( + [toHex(SUI_U_COIN.address), "cosmos", Str.startsWith("union.")], + () => U_BANK, + ), + Match.when( + [toHex(SUI_ADDR.address), "sui", Str.startsWith("sui.")], + () => SUI_NATIVE_COIN_WITHOUT_0x, + ), Match.when( [U_ERC20.address.toLowerCase(), "evm", Match.any], () => U_ERC20, @@ -260,10 +292,26 @@ export class TransferData { ["solve", U_ERC20.address.toLowerCase(), "evm", Match.any], () => Option.some(U_SOLVER_ON_ETH_METADATA), ), + Match.when( + ["solve", "0x6175", "sui", Str.startsWith("sui.")], + () => Option.some(U_SOLVER_ON_SUI_METADATA), + ), + Match.when( + ["solve", toHex(SUI_NATIVE_COIN.address), "cosmos", Str.startsWith("union.")], + () => Option.some(SUI_SOLVER_ON_COSMOS_METADATA), + ), + Match.when( + ["solve", toHex(SUI_ADDR.address), "sui", Str.startsWith("sui.")], + () => Option.some(SUI_SOLVER_ON_SUI_METADATA), + ), Match.when( ["solve", U_ERC20.address.toLowerCase(), "cosmos", Str.startsWith("union.")], () => Option.some(U_SOLVER_ON_UNION_METADATA), ), + Match.when( + ["solve", toHex(SUI_U_COIN.address), "cosmos", Str.startsWith("union.")], + () => Option.some(U_SOLVER_ON_UNION_METADATA), + ), Match.when( ["solve", EU_ERC20.address.toLowerCase(), "evm", Str.startsWith("union.")], () => Option.some(EU_SOLVER_ON_ETH_METADATA), @@ -276,6 +324,10 @@ export class TransferData { ["solve", toHex(EU_LST.address.toLowerCase()), "evm", Str.startsWith("ethereum.")], () => Option.some(EU_SOLVER_ON_ETH_METADATA), ), + Match.when( + ["solve", U_ERC20.address.toLowerCase(), "sui", Str.startsWith("sui.")], + () => Option.some(U_SOLVER_ON_SUI_METADATA), + ), Match.when( ["solve", Match.any, Match.any, Match.any], () => Option.none(), diff --git a/app2/src/lib/transfer/shared/services/filling/check-allowance.ts b/app2/src/lib/transfer/shared/services/filling/check-allowance.ts index 1d5bd40a2b..0ff586295b 100644 --- a/app2/src/lib/transfer/shared/services/filling/check-allowance.ts +++ b/app2/src/lib/transfer/shared/services/filling/check-allowance.ts @@ -4,6 +4,7 @@ import { fallbackTransport } from "$lib/wallet/evm/wagmi-config.svelte" import { Token, Ucs05, Utils, ZkgmClientRequest } from "@unionlabs/sdk" import { Cosmos } from "@unionlabs/sdk-cosmos" import { Evm } from "@unionlabs/sdk-evm" +import { Sui } from "@unionlabs/sdk-sui" import type { Chain } from "@unionlabs/sdk/schema" import { Data, Effect, HashMap, Match, Option, pipe, Tuple } from "effect" import * as A from "effect/Array" @@ -130,6 +131,50 @@ const handleEvmAllowances = ( ) }) +const handleSuiAllowances = ( + tokens: ReadonlyArray, + sender: Ucs05.SuiDisplay, + sourceChain: Chain, +): Effect.Effect< + ReadonlyArray<{ readonly token: Token.Any; readonly allowance: bigint }>, + AllowanceCheckError +> => + Effect.gen(function*() { + const rpc = yield* sourceChain.getRpcUrl("rpc").pipe( + Effect.mapError( + () => + new AllowanceCheckError({ + message: "Could not derive Sui RPC URL", + }), + ), + ) + + const suiPublicClientLayer = Sui.PublicClient.Live({ url: rpc }) + + return yield* pipe( + tokens, + A.map((token) => + pipe( + Sui.readTotalCoinBalance( + token.address as unknown as string, + sender.address as unknown as string, + ), + Effect.map((total) => ({ token, allowance: total })), + ) + ), + Effect.allWith({ concurrency: 2 }), + Effect.provide(suiPublicClientLayer), + Effect.catchAll((cause) => + Effect.fail( + new AllowanceCheckError({ + message: "Sui allowance (balance) lookup failed", + cause, + }), + ) + ), + ) + }) + export const handleCosmosAllowances = ( tokenAddresses: Array, sender: Ucs05.CosmosDisplay, diff --git a/app2/src/lib/transfer/shared/services/filling/check-filling.ts b/app2/src/lib/transfer/shared/services/filling/check-filling.ts index 6ac25de570..1c9c254ff8 100644 --- a/app2/src/lib/transfer/shared/services/filling/check-filling.ts +++ b/app2/src/lib/transfer/shared/services/filling/check-filling.ts @@ -8,6 +8,8 @@ import { Data, flow, Option, pipe, Struct } from "effect" import * as A from "effect/Array" import * as E from "effect/Either" import * as S from "effect/Schema" +// in create-context (or wherever you define TransferArgs) +import type { Transport as ZkgmTransport } from "@unionlabs/sdk/ZkgmClientRequest" export interface TransferArgs { sourceChain: Chain @@ -28,6 +30,7 @@ export interface TransferArgs { sourceChannelId: ChannelId fee: FeeIntent version: 1 | 2 + transport?: ZkgmTransport.Params } export type FillingState = Data.TaggedEnum<{ @@ -156,6 +159,7 @@ export const getFillingState = ( version: transferData.version, }) + console.log("✅ [getFillingState] derived filling state") return Option.match(unwrapped, { onNone: () => { console.warn("❌ [getFillingState] Option.all failed — shouldn't happen now") diff --git a/app2/src/lib/transfer/shared/services/filling/create-context.ts b/app2/src/lib/transfer/shared/services/filling/create-context.ts index c2913d57e3..88dcdfa233 100644 --- a/app2/src/lib/transfer/shared/services/filling/create-context.ts +++ b/app2/src/lib/transfer/shared/services/filling/create-context.ts @@ -55,7 +55,7 @@ export const createContext = Effect.fn(( never > => Effect.gen(function*() { - console.debug("[createContext] args:", args) + console.log("[createContext] args:", args) const sendOrder = yield* TokenOrder.make({ baseAmount: Option.getOrThrow(parseBaseAmount(args.baseAmount)), @@ -140,12 +140,33 @@ export const createContext = Effect.fn(( const batch = yield* produceBatch + // TODO: vaultId & ibcStoreId will be fetched from hubble probably + const SUI_HARDCODED_TRANSPORT = { + sui: { + vaultId: "0xc3ac8618f622fc70ea30eaec5b45d504e239af668033d07e396be44d45f8f45d", + ibcStoreId: "0xdc5f20df5f143a06772c073e9c30dacd30e31f6788885cf478d0fd40f92766c4", + coins: [ + { + typeArg: args.baseToken.address, + baseAmount: Option.getOrThrow(parseBaseAmount(args.baseAmount)), + }, + ], + }, + } + + // const maybeTransport = + // args.transport?.sui && args.sourceChain.rpc_type === "sui" + // ? { sui: args.transport.sui } + // : undefined + const maybeTransport = args.sourceChain.rpc_type === "sui" ? SUI_HARDCODED_TRANSPORT : undefined + const request = ZkgmClientRequest.make({ channelId: args.sourceChannelId, destination: args.destinationChain, source: args.sourceChain, instruction: batch, ucs03Address: args.ucs03address, + ...(maybeTransport ? { transport: maybeTransport } : {}), }).pipe( Option.some, ) @@ -219,6 +240,25 @@ const createIntents = (args: TransferArgs, baseAmount: TokenRawAmount): Intent[] return shouldIncludeFees ? [intent, feeIntent] : [intent] }), + Match.when("sui", () => { + const intent: Intent = { + ...baseIntent, + baseToken: args.baseToken, + kind: args.kind, + quoteToken: args.quoteToken, + } + + const feeIntent: Intent = { + ...baseIntent, + baseToken: args.fee.baseToken, + baseAmount: args.fee.baseAmount, + quoteAmount: args.fee.quoteAmount, + decimals: args.fee.decimals, + kind: args.kind, + quoteToken: args.quoteToken, + } + return shouldIncludeFees ? [intent, feeIntent] : [intent] + }), Match.orElse(() => []), ) } diff --git a/app2/src/lib/wallet/sui/config.svelte.ts b/app2/src/lib/wallet/sui/config.svelte.ts new file mode 100644 index 0000000000..7c924c82f2 --- /dev/null +++ b/app2/src/lib/wallet/sui/config.svelte.ts @@ -0,0 +1,364 @@ +import { runSync } from "$lib/runtime" +import { wallets } from "$lib/stores/wallets.svelte" +import { Ucs05 } from "@unionlabs/sdk" +import { Effect, Option } from "effect" +import * as S from "effect/Schema" + +import { getWallets } from "@mysten/wallet-standard" + +import type { + SuiWalletFeatures, + WalletAccount, + WalletWithFeatures, + // ConnectFeature, +} from "@mysten/wallet-standard" + +import { Ed25519PublicKey } from "@mysten/sui/keypairs/ed25519" + +import { SuiClient } from "@mysten/sui/client" +import { Transaction } from "@mysten/sui/transactions" +import { fromBase64, toBase64 } from "@mysten/sui/utils" // 👈 add toB64 + +export const suiWalletsInformation = [ + { + id: "slush", + name: "Slush Wallet", + icon: "/images/icons/slush.svg", + deepLink: "https://slush.app", + download: "https://slush.app", + }, +] as const + +type AnyWallet = WalletWithFeatures> + +export type SuiWalletId = (typeof suiWalletsInformation)[number]["id"] + +function pickSuiWallet(targetId: SuiWalletId | undefined) { + const registry = getWallets().get() + + const byId = targetId + ? registry.find((w) => w.id?.toLowerCase?.() === targetId.toLowerCase()) + : undefined + + const byName = registry.find((w) => /slush/i.test(w.name)) + + return byId ?? byName ?? registry[0] +} + +function inferSuiChainTag(rpcUrl: string | URL | undefined) { + const u = rpcUrl ? rpcUrl.toString() : "" + if (/testnet/i.test(u)) { + return "sui:testnet" + } + if (/devnet|local/i.test(u)) { + return "sui:devnet" + } + return "sui:mainnet" +} +function hexToBytes(hex: string): Uint8Array { + const s = hex.startsWith("0x") ? hex.slice(2) : hex + if (s.length % 2 !== 0) { + throw new Error("Invalid hex length") + } + const out = new Uint8Array(s.length / 2) + for (let i = 0; i < out.length; i++) { + out[i] = parseInt(s.slice(i * 2, i * 2 + 2), 16) + } + return out +} + +function normalizePubKey(pub: string | Uint8Array): Uint8Array { + let bytes: Uint8Array + if (pub instanceof Uint8Array) { + bytes = pub + } else if (/^0x/i.test(pub)) { + bytes = hexToBytes(pub) + } else { + bytes = fromBase64(pub) + } + if (bytes.length === 33 && bytes[0] === 0x00) { + return bytes.slice(1) + } + if (bytes.length !== 32) { + throw new Error(`Invalid public key length: expected 32, got ${bytes.length}`) + } + return bytes +} + +function makeWalletStandardSigner( + wallet: AnyWallet, + account: (typeof wallet)["accounts"][number], + rpcUrl?: string | URL, +) { + const chainTag = inferSuiChainTag(rpcUrl) + const pk = () => new Ed25519PublicKey(new Uint8Array(account.publicKey)) + async function signTransactionImpl( + input: { transactionBlock: Transaction | Uint8Array | string }, + ) { + let bytes: Uint8Array + if (input.transactionBlock instanceof Transaction) { + const tmpClient = new SuiClient({ + url: typeof rpcUrl === "string" ? rpcUrl : (rpcUrl?.toString() ?? ""), + }) + bytes = await input.transactionBlock.build({ client: tmpClient }) + } else if (typeof input.transactionBlock === "string") { + try { + bytes = fromBase64(input.transactionBlock) + } catch { + throw new Error("transactionBlock string must be base64") + } + } else { + bytes = input.transactionBlock + } + + const base64 = toBase64(bytes) + const txbLike = { serialize: () => base64 } as any + + // Prefer sign+execute + const signExec = wallet.features["sui:signAndExecuteTransactionBlock"] + if (signExec) { + const resp = await signExec.signAndExecuteTransactionBlock({ + account, + transactionBlock: txbLike, + chain: chainTag, + options: { showEffects: true, showEvents: true }, + }) + return { kind: "executed" as const, executeResult: resp } + } + + const signFeature = wallet.features["sui:signTransactionBlock"] + if (!signFeature) { + throw new Error( + "Wallet does not support sui:signTransactionBlock nor sui:signAndExecuteTransactionBlock", + ) + } + + const { signature, transactionBlockBytes } = await signFeature.signTransactionBlock({ + account, + transactionBlock: txbLike, + chain: chainTag, + }) + return { kind: "signed" as const, signature, bytes: transactionBlockBytes } + } + + return { + getPublicKey() { + return pk() + }, + + toSuiAddress() { + return account.address + }, + signTransactionBlock: signTransactionImpl, + signTransaction: signTransactionImpl, + // async signTransactionBlock(input: { transactionBlock: Transaction | Uint8Array | string }) { + // let bytes: Uint8Array + + // if (input.transactionBlock instanceof Transaction) { + // const tmpClient = new SuiClient({ + // url: typeof rpcUrl === "string" ? rpcUrl : (rpcUrl?.toString() ?? ""), + // }) + // bytes = await input.transactionBlock.build({ client: tmpClient }) + // } else if (typeof input.transactionBlock === "string") { + // try { + // bytes = fromBase64(input.transactionBlock) + // } catch { + // throw new Error("transactionBlock string must be base64") + // } + // } else { + // bytes = input.transactionBlock + // } + + // const base64 = toBase64(bytes) + // const txbLike = { serialize: () => base64 } as any + + // // Prefer sign+execute + // const signExec = wallet.features["sui:signAndExecuteTransactionBlock"] + // if (signExec) { + // const resp = await signExec.signAndExecuteTransactionBlock({ + // account, + // transactionBlock: txbLike, + // chain: chainTag, + // options: { showEffects: true, showEvents: true }, + // }) + // return { + // signature: resp.signature ?? "", + // bytes, + // executeResult: resp, + // } + // } + + // const signFeature = wallet.features["sui:signTransactionBlock"] + // if (!signFeature) { + // throw new Error( + // "Wallet does not support sui:signTransactionBlock nor sui:signAndExecuteTransactionBlock", + // ) + // } + + // const { signature, bytes: signedBytes } = await signFeature.signTransactionBlock({ + // account, + // transactionBlock: txbLike, + // chain: chainTag, + // }) + + // return { + // signature, + // bytes: typeof signedBytes === "string" ? fromBase64(signedBytes) : (signedBytes ?? bytes), + // } + // }, + } as unknown +} + +class SuiStore { + address = $state(undefined) + connectedWallet = $state(undefined) + connectionStatus = $state<"disconnected" | "connecting" | "connected">("disconnected") + private _signer: ReturnType | undefined + private _account: any | undefined + private _rpcUrl: string | undefined + + constructor() { + this.loadFromStorage() + this._rpcUrl = "https://fullnode.testnet.sui.io" // TODO(kaan): How to get this from hubble & save here? + + if (this.connectedWallet && this.connectionStatus === "connected") { + setTimeout(() => this.reconnect(this.connectedWallet!), 500) + } + } + + loadFromStorage() { + try { + const raw = sessionStorage.getItem("sui-store") + if (!raw) { + return + } + const parsed = JSON.parse(raw) + this.address = parsed.address + this.connectedWallet = parsed.connectedWallet + this.connectionStatus = parsed.connectionStatus ?? "disconnected" + if (this.address && this.connectionStatus === "connected") { + wallets.suiAddress = S.decodeOption(Ucs05.SuiDisplay)({ + _tag: "SuiDisplay", + address: this.address as `0x${string}`, + }) + } + } catch (e) { + console.error("Failed to load Sui store:", e) + } + } + + saveToStorage() { + try { + sessionStorage.setItem( + "sui-store", + JSON.stringify({ + address: this.address, + connectedWallet: this.connectedWallet, + connectionStatus: this.connectionStatus, + }), + ) + } catch (e) { + console.error("Failed to save Sui store:", e) + } + } + + async connect(walletId: SuiWalletId = "slush") { + this.connectionStatus = "connecting" + this.saveToStorage() + + const wallet = pickSuiWallet(walletId) + if (!wallet) { + this.connectionStatus = "disconnected" + this.saveToStorage() + window.open("https://slushwallet.xyz", "_blank", "noopener,noreferrer") + return + } + + try { + type ConnectFeature = { + version: string + connect(input?: { silent?: boolean }): Promise<{ accounts: WalletAccount[] }> + } + const suiWallet = wallet as WalletWithFeatures + + const connectFeature = suiWallet.features["standard:connect"] as { + version: string + connect: (input?: { silent?: boolean }) => Promise<{ accounts: readonly unknown[] }> + } + if (!connectFeature) { + throw new Error("Wallet does not support standard:connect") + } + + const res = await connectFeature.connect({ silent: false } as any) + console.log("wallet.account: ", wallet.accounts) + const accounts = (res && (res as any).accounts) ? (res as any).accounts : wallet.accounts + const account = accounts?.[0] + if (!account) { + throw new Error("No Sui account returned by wallet") + } + + this._account = account + + this._signer = makeWalletStandardSigner(suiWallet, account, this._rpcUrl) + + this.address = account.address + this.connectedWallet = "slush" + this.connectionStatus = "connected" + + wallets.suiAddress = S.decodeOption(Ucs05.SuiDisplay)({ + _tag: "SuiDisplay", + address: account.address as `0x${string}`, + }) + + this.saveToStorage() + + Effect.log("wallet.connect (sui)").pipe(runSync) + } catch (e) { + console.error("Sui connect failed:", e) + this.connectionStatus = "disconnected" + this.connectedWallet = undefined + this.address = undefined + wallets.suiAddress = Option.none() + this.saveToStorage() + } + } + + async reconnect(walletId: SuiWalletId = "slush") { + return this.connect(walletId) + } + + disconnect = async () => { + try { + const w = this.connectedWallet ? pickSuiWallet(this.connectedWallet) : undefined + const off = (this as any)._offAccountsChanged as undefined | (() => void) + off?.() + + if (w?.features?.["standard:disconnect"]) { + try { + await (w.features["standard:disconnect"] as any).disconnect() + } catch (_) { + // swallow; some wallets throw if already disconnected + } + } + + this.connectedWallet = undefined + this.connectionStatus = "disconnected" + this.address = undefined + this._signer = undefined + this._account = undefined + wallets.suiAddress = Option.none() + sessionStorage.removeItem("sui-store") + } catch (e) { + console.error("Sui disconnect failed:", e) + } + } + + getSuiSigner() { + if (!this._signer || !this.address) { + return Option.none() + } + return Option.some(this._signer) + } +} + +export const suiStore = new SuiStore() diff --git a/app2/src/lib/wallet/sui/index.ts b/app2/src/lib/wallet/sui/index.ts new file mode 100644 index 0000000000..003bd52a15 --- /dev/null +++ b/app2/src/lib/wallet/sui/index.ts @@ -0,0 +1 @@ +export { suiStore, type SuiWalletId, suiWalletsInformation } from "./config.svelte" diff --git a/app2/src/routes/balances/+page.svelte b/app2/src/routes/balances/+page.svelte index 187e26cda3..d45da842cd 100644 --- a/app2/src/routes/balances/+page.svelte +++ b/app2/src/routes/balances/+page.svelte @@ -13,6 +13,7 @@ import { uiStore } from "$lib/stores/ui.svelte" import { wallets } from "$lib/stores/wallets.svelte" import { Ucs05 } from "@unionlabs/sdk" import { Option } from "effect" +import { as } from "effect/Option" function fetchAllBalances() { const chainsData = Option.getOrNull(chains.data) @@ -110,7 +111,7 @@ $effect(() => { chain={chain} denom={token.denom} /> - + {/if}
{/each} diff --git a/app2/static/images/icons/slush.svg b/app2/static/images/icons/slush.svg new file mode 100644 index 0000000000..73985ed2d7 --- /dev/null +++ b/app2/static/images/icons/slush.svg @@ -0,0 +1,77 @@ + + + + + + + + + diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 19cc5ada40..dbaf6597e0 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -201,6 +201,12 @@ importers: '@leapwallet/types': specifier: ^0.0.5 version: 0.0.5 + '@mysten/sui': + specifier: ^1.38.0 + version: 1.39.0(typescript@5.9.3) + '@mysten/wallet-standard': + specifier: ^0.19.3 + version: 0.19.7(typescript@5.9.3) '@number-flow/svelte': specifier: ^0.3.7 version: 0.3.9(svelte@5.39.9) @@ -1323,6 +1329,9 @@ importers: '@scure/base': specifier: 1.2.4 version: 1.2.4 + bs58: + specifier: ^6 + version: 6.0.0 crc: specifier: ^4.3.2 version: 4.3.2(buffer@6.0.3) @@ -2892,7 +2901,7 @@ packages: resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} '@jsr/rehype-pretty__transformers@0.13.4': - resolution: {integrity: sha512-iGWAx/2I+5YcoZN2yB7YceBUA24ktRPAhyCBqEvkELuAmw7XCYknEqRAIm+0MdBgDv3wPlk3y6gz4IUXBf7I6w==, tarball: 'https://npm.jsr.io/~/11/@jsr/rehype-pretty__transformers/0.13.4.tgz'} + resolution: {integrity: sha512-iGWAx/2I+5YcoZN2yB7YceBUA24ktRPAhyCBqEvkELuAmw7XCYknEqRAIm+0MdBgDv3wPlk3y6gz4IUXBf7I6w==, tarball: https://npm.jsr.io/~/11/@jsr/rehype-pretty__transformers/0.13.4.tgz} '@keplr-wallet/types@0.12.279': resolution: {integrity: sha512-MZuSzpFT5Bqr3BAjnWEIcVnvi9rEJtSONteCS7c3CBhMvCMmwJ96X+g+PKfwI4WodZdNXbUJa1+eat+3hgeoaw==} @@ -3070,13 +3079,23 @@ packages: '@mysten/bcs@1.8.0': resolution: {integrity: sha512-bDoLN1nN+XPONsvpNyNyqYHndM3PKWS419GLeRnbLoWyNm4bnyD1X4luEpJLLDq400hBuXiCan4RWjofvyTUIQ==} + '@mysten/bcs@1.9.2': + resolution: {integrity: sha512-kBk5xrxV9OWR7i+JhL/plQrgQ2/KJhB2pB5gj+w6GXhbMQwS3DPpOvi/zN0Tj84jwPvHMllpEl0QHj6ywN7/eQ==} + '@mysten/sui@1.39.0': resolution: {integrity: sha512-tjH4oVAODO9JWPNvIBhAvorrwh7UfX5Lwf1oBjawnpk4sAIyajD8JYJUWXdI8o1H1519/5KEKaMT3ABAwTamQg==} engines: {node: '>=18'} + '@mysten/sui@1.45.0': + resolution: {integrity: sha512-WYpZmrGWE/FeQaRhYrAYpHcHallj4BFIfSmjq6BkODzEhP9HfMplQAtd8AmtctwO7cpHJ+BjPUOguEAcf1gU4g==} + engines: {node: '>=18'} + '@mysten/utils@0.2.0': resolution: {integrity: sha512-CM6kJcJHX365cK6aXfFRLBiuyXc5WSBHQ43t94jqlCAIRw8umgNcTb5EnEA9n31wPAQgLDGgbG/rCUISCTJ66w==} + '@mysten/wallet-standard@0.19.7': + resolution: {integrity: sha512-p0W1WUkXqUXtmCL8wlkjToSXoqTj5zRH2dVI+yhxrFCiR236SdgZ+BGIZrx0yaE/igzttsTaVztbA7jMc8t6oQ==} + '@n1ru4l/push-pull-async-iterable-iterator@3.2.0': resolution: {integrity: sha512-3fkKj25kEjsfObL6IlKPAlHYPq/oYwUkkQ03zsTTiDjD7vg/RxjdiLeCydqtxHZP0JgsXL3D/X5oAkMGzuUp/Q==} engines: {node: '>=12'} @@ -3187,6 +3206,10 @@ packages: resolution: {integrity: sha512-HxngEd2XUcg9xi20JkwlLCtYwfoFw4JGkuZpT+WlsPD4gB/cxkvTD8fSsoAnphGZhFdZYKeQIPCuFlWPm1uE0g==} engines: {node: ^14.21.3 || >=16} + '@noble/curves@1.9.4': + resolution: {integrity: sha512-2bKONnuM53lINoDrSmK8qP8W271ms7pygDhZt4SiLOoLwBtoHqeCFi6RG42V8zd3mLHuJFhU/Bmaqo4nX0/kBw==} + engines: {node: ^14.21.3 || >=16} + '@noble/curves@1.9.7': resolution: {integrity: sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw==} engines: {node: ^14.21.3 || >=16} @@ -3378,6 +3401,15 @@ packages: '@polka/url@1.0.0-next.29': resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==} + '@protobuf-ts/grpcweb-transport@2.11.1': + resolution: {integrity: sha512-1W4utDdvOB+RHMFQ0soL4JdnxjXV+ddeGIUg08DvZrA8Ms6k5NN6GBFU2oHZdTOcJVpPrDJ02RJlqtaoCMNBtw==} + + '@protobuf-ts/runtime-rpc@2.11.1': + resolution: {integrity: sha512-4CqqUmNA+/uMz00+d3CYKgElXO9VrEbucjnBFEjqI4GuDrEQ32MaI3q+9qPBvIGOlL4PmHXrzM32vBPWRhQKWQ==} + + '@protobuf-ts/runtime@2.11.1': + resolution: {integrity: sha512-KuDaT1IfHkugM2pyz+FwiY80ejWrkH1pAtOBOZFuR6SXEFTsnb/jiQWQ1rCIrcKx2BtyxnxW6BWwsVSA/Ie+WQ==} + '@protobufjs/aspromise@1.1.2': resolution: {integrity: sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==} @@ -4899,6 +4931,31 @@ packages: typescript: optional: true + '@wallet-standard/app@1.1.0': + resolution: {integrity: sha512-3CijvrO9utx598kjr45hTbbeeykQrQfKmSnxeWOgU25TOEpvcipD/bYDQWIqUv1Oc6KK4YStokSMu/FBNecGUQ==} + engines: {node: '>=16'} + + '@wallet-standard/base@1.1.0': + resolution: {integrity: sha512-DJDQhjKmSNVLKWItoKThJS+CsJQjR9AOBOirBVT1F9YpRyC9oYHE+ZnSf8y8bxUphtKqdQMPVQ2mHohYdRvDVQ==} + engines: {node: '>=16'} + + '@wallet-standard/core@1.1.1': + resolution: {integrity: sha512-5Xmjc6+Oe0hcPfVc5n8F77NVLwx1JVAoCVgQpLyv/43/bhtIif+Gx3WUrDlaSDoM8i2kA2xd6YoFbHCxs+e0zA==} + engines: {node: '>=16'} + + '@wallet-standard/errors@0.1.1': + resolution: {integrity: sha512-V8Ju1Wvol8i/VDyQOHhjhxmMVwmKiwyxUZBnHhtiPZJTWY0U/Shb2iEWyGngYEbAkp2sGTmEeNX1tVyGR7PqNw==} + engines: {node: '>=16'} + hasBin: true + + '@wallet-standard/features@1.1.0': + resolution: {integrity: sha512-hiEivWNztx73s+7iLxsuD1sOJ28xtRix58W7Xnz4XzzA/pF0+aicnWgjOdA10doVDEDZdUuZCIIqG96SFNlDUg==} + engines: {node: '>=16'} + + '@wallet-standard/wallet@1.1.0': + resolution: {integrity: sha512-Gt8TnSlDZpAl+RWOOAB/kuvC7RpcdWAlFbHNoi4gsXsfaWa1QCT6LBcfIYTPdOZC9OVZUDwqGuGAcqZejDmHjg==} + engines: {node: '>=16'} + '@walletconnect/core@2.21.0': resolution: {integrity: sha512-o6R7Ua4myxR8aRUAJ1z3gT9nM+jd2B2mfamu6arzy1Cc6vi10fIwFWb6vg3bC8xJ6o9H3n/cN5TOW3aA9Y1XVw==} engines: {node: '>=18'} @@ -4912,6 +4969,7 @@ packages: '@walletconnect/ethereum-provider@2.21.1': resolution: {integrity: sha512-SSlIG6QEVxClgl1s0LMk4xr2wg4eT3Zn/Hb81IocyqNSGfXpjtawWxKxiC5/9Z95f1INyBD6MctJbL/R1oBwIw==} + deprecated: 'Reliability and performance improvements. See: https://github.com/WalletConnect/walletconnect-monorepo/releases' '@walletconnect/events@1.0.1': resolution: {integrity: sha512-NPTqaoi0oPBVNuLv7qPaJazmGHs5JGyO8eEAk5VGKmJzDR7AHzD4k6ilox5kxk1iwiOnFopBOOMLs86Oa76HpQ==} @@ -4956,9 +5014,11 @@ packages: '@walletconnect/sign-client@2.21.0': resolution: {integrity: sha512-z7h+PeLa5Au2R591d/8ZlziE0stJvdzP9jNFzFolf2RG/OiXulgFKum8PrIyXy+Rg2q95U9nRVUF9fWcn78yBA==} + deprecated: 'Reliability and performance improvements. See: https://github.com/WalletConnect/walletconnect-monorepo/releases' '@walletconnect/sign-client@2.21.1': resolution: {integrity: sha512-QaXzmPsMnKGV6tc4UcdnQVNOz4zyXgarvdIQibJ4L3EmLat73r5ZVl4c0cCOcoaV7rgM9Wbphgu5E/7jNcd3Zg==} + deprecated: 'Reliability and performance improvements. See: https://github.com/WalletConnect/walletconnect-monorepo/releases' '@walletconnect/time@1.0.2': resolution: {integrity: sha512-uzdd9woDcJ1AaBZRhqy5rNC9laqWGErfc4dxA9a87mPdKOgWMD85mcFo9dIYIts/Jwocfwn07EC6EzclKubk/g==} @@ -4971,9 +5031,11 @@ packages: '@walletconnect/universal-provider@2.21.0': resolution: {integrity: sha512-mtUQvewt+X0VBQay/xOJBvxsB3Xsm1lTwFjZ6WUwSOTR1X+FNb71hSApnV5kbsdDIpYPXeQUbGt2se1n5E5UBg==} + deprecated: 'Reliability and performance improvements. See: https://github.com/WalletConnect/walletconnect-monorepo/releases' '@walletconnect/universal-provider@2.21.1': resolution: {integrity: sha512-Wjx9G8gUHVMnYfxtasC9poGm8QMiPCpXpbbLFT+iPoQskDDly8BwueWnqKs4Mx2SdIAWAwuXeZ5ojk5qQOxJJg==} + deprecated: 'Reliability and performance improvements. See: https://github.com/WalletConnect/walletconnect-monorepo/releases' '@walletconnect/utils@2.21.0': resolution: {integrity: sha512-zfHLiUoBrQ8rP57HTPXW7rQMnYxYI4gT9yTACxVW6LhIFROTF6/ytm5SKNoIvi4a5nX5dfXG4D9XwQUCu8Ilig==} @@ -7677,6 +7739,7 @@ packages: mathjax-full@3.2.2: resolution: {integrity: sha512-+LfG9Fik+OuI8SLwsiR02IVdjcnRCy5MufYLi0C3TdMT56L/pjB0alMVGgoWJF8pN9Rc7FESycZB9BMNWIid5w==} + deprecated: Version 4 replaces this package with the scoped package @mathjax/src mdast-util-definitions@6.0.0: resolution: {integrity: sha512-scTllyX6pnYNZH/AIp/0ePz6s4cZtARxImwoPJ7kS42n+MnVsI4XbnG6d4ibehRIldYMWM2LD7ImQblVhUejVQ==} @@ -9266,6 +9329,7 @@ packages: sitemap@8.0.0: resolution: {integrity: sha512-+AbdxhM9kJsHtruUF39bwS/B0Fytw6Fr1o4ZAIAEqA6cke2xcoO2GleBw9Zw7nRzILVEgz7zBM5GiTJjie1G9A==} engines: {node: '>=14.0.0', npm: '>=6.0.0'} + deprecated: 'SECURITY: Multiple vulnerabilities fixed in 8.0.1 (XML injection, path traversal, command injection, protocol injection). Upgrade immediately: npm install sitemap@8.0.1' hasBin: true slash@2.0.0: @@ -10832,19 +10896,19 @@ snapshots: css-tree: 2.3.1 is-potential-custom-element-name: 1.0.1 - ? '@astro-community/astro-embed-baseline-status@0.2.0(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))' - : dependencies: + '@astro-community/astro-embed-baseline-status@0.2.0(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))': + dependencies: '@astro-community/astro-embed-utils': 0.1.3 astro: 5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) - ? '@astro-community/astro-embed-bluesky@0.1.3(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))' - : dependencies: + '@astro-community/astro-embed-bluesky@0.1.3(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))': + dependencies: '@atproto/api': 0.13.35 astro: 5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) ts-pattern: 5.8.0 - ? '@astro-community/astro-embed-integration@0.8.1(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))' - : dependencies: + '@astro-community/astro-embed-integration@0.8.1(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))': + dependencies: '@astro-community/astro-embed-bluesky': 0.1.3(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) '@astro-community/astro-embed-link-preview': 0.2.2 '@astro-community/astro-embed-twitter': 0.5.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) @@ -10859,8 +10923,8 @@ snapshots: dependencies: '@astro-community/astro-embed-utils': 0.1.3 - ? '@astro-community/astro-embed-twitter@0.5.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))' - : dependencies: + '@astro-community/astro-embed-twitter@0.5.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))': + dependencies: '@astro-community/astro-embed-utils': 0.1.3 astro: 5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) @@ -10868,13 +10932,13 @@ snapshots: dependencies: linkedom: 0.14.26 - ? '@astro-community/astro-embed-vimeo@0.3.10(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))' - : dependencies: + '@astro-community/astro-embed-vimeo@0.3.10(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))': + dependencies: '@astro-community/astro-embed-utils': 0.1.3 astro: 5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) - ? '@astro-community/astro-embed-youtube@0.5.7(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))' - : dependencies: + '@astro-community/astro-embed-youtube@0.5.7(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))': + dependencies: astro: 5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) lite-youtube-embed: 0.3.3 @@ -10957,8 +11021,8 @@ snapshots: transitivePeerDependencies: - supports-color - ? '@astrojs/mdx@4.3.6(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))' - : dependencies: + '@astrojs/mdx@4.3.6(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))': + dependencies: '@astrojs/markdown-remark': 6.3.7 '@mdx-js/mdx': 3.1.1 acorn: 8.15.0 @@ -10980,8 +11044,8 @@ snapshots: dependencies: prismjs: 1.30.0 - ? '@astrojs/react@4.4.0(@types/node@22.18.8)(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(jiti@2.6.1)(lightningcss@1.30.1)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(tsx@4.20.6)(yaml@2.8.1)' - : dependencies: + '@astrojs/react@4.4.0(@types/node@22.18.8)(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(jiti@2.6.1)(lightningcss@1.30.1)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(tsx@4.20.6)(yaml@2.8.1)': + dependencies: '@types/react': 19.2.0 '@types/react-dom': 19.2.0(@types/react@19.2.0) '@vitejs/plugin-react': 4.7.0(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) @@ -11014,13 +11078,13 @@ snapshots: stream-replace-string: 2.0.0 zod: 3.25.76 - ? '@astrojs/starlight-tailwind@4.0.1(@astrojs/starlight@0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)))(tailwindcss@4.1.14)' - : dependencies: + '@astrojs/starlight-tailwind@4.0.1(@astrojs/starlight@0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)))(tailwindcss@4.1.14)': + dependencies: '@astrojs/starlight': 0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) tailwindcss: 4.1.14 - ? '@astrojs/starlight@0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))' - : dependencies: + '@astrojs/starlight@0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))': + dependencies: '@astrojs/markdown-remark': 6.3.7 '@astrojs/mdx': 4.3.6(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) '@astrojs/sitemap': 3.6.0 @@ -11052,8 +11116,8 @@ snapshots: transitivePeerDependencies: - supports-color - ? '@astrojs/svelte@7.2.0(@types/node@22.18.8)(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))(jiti@2.6.1)(lightningcss@1.30.1)(svelte@5.39.9)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)' - : dependencies: + '@astrojs/svelte@7.2.0(@types/node@22.18.8)(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))(jiti@2.6.1)(lightningcss@1.30.1)(svelte@5.39.9)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)': + dependencies: '@sveltejs/vite-plugin-svelte': 5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) astro: 5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) svelte: 5.39.9 @@ -11074,8 +11138,8 @@ snapshots: - tsx - yaml - ? '@astrojs/tailwind@5.1.5(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))(tailwindcss@3.4.18(tsx@4.20.6)(yaml@2.8.1))(ts-node@10.9.2(@types/node@22.18.8)(typescript@5.9.3))' - : dependencies: + '@astrojs/tailwind@5.1.5(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))(tailwindcss@3.4.18(tsx@4.20.6)(yaml@2.8.1))(ts-node@10.9.2(@types/node@22.18.8)(typescript@5.9.3))': + dependencies: astro: 5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) autoprefixer: 10.4.21(postcss@8.5.6) postcss: 8.5.6 @@ -11106,8 +11170,8 @@ snapshots: semver: 7.7.2 vscode-languageserver-textdocument: 1.0.12 - ? '@astrojs/vercel@8.2.8(@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))(react@19.2.0)(rollup@4.52.4)(svelte@5.39.9)(vue@3.5.22(typescript@5.9.3))' - : dependencies: + '@astrojs/vercel@8.2.8(@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))(react@19.2.0)(rollup@4.52.4)(svelte@5.39.9)(vue@3.5.22(typescript@5.9.3))': + dependencies: '@astrojs/internal-helpers': 0.7.3 '@vercel/analytics': 1.5.0(@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(react@19.2.0)(svelte@5.39.9)(vue@3.5.22(typescript@5.9.3)) '@vercel/functions': 2.2.13 @@ -11129,8 +11193,8 @@ snapshots: - vue - vue-router - ? '@astrojs/vue@5.1.1(@types/node@22.18.8)(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(vue@3.5.22(typescript@5.9.3))(yaml@2.8.1)' - : dependencies: + '@astrojs/vue@5.1.1(@types/node@22.18.8)(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(vue@3.5.22(typescript@5.9.3))(yaml@2.8.1)': + dependencies: '@vitejs/plugin-vue': 5.2.1(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)) '@vitejs/plugin-vue-jsx': 4.2.0(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)) '@vue/compiler-sfc': 3.5.22 @@ -11428,8 +11492,8 @@ snapshots: '@babel/helper-string-parser': 7.27.1 '@babel/helper-validator-identifier': 7.27.1 - ? '@base-org/account@1.1.1(@types/react@19.2.0)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(use-sync-external-store@1.6.0(react@18.3.1))(utf-8-validate@5.0.10)(zod@3.25.76)' - : dependencies: + '@base-org/account@1.1.1(@types/react@19.2.0)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(use-sync-external-store@1.6.0(react@18.3.1))(utf-8-validate@5.0.10)(zod@3.25.76)': + dependencies: '@noble/hashes': 1.4.0 clsx: 1.2.1 eventemitter3: 5.0.1 @@ -11493,8 +11557,8 @@ snapshots: transitivePeerDependencies: - supports-color - ? '@coinbase/wallet-sdk@4.3.6(@types/react@19.2.0)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(use-sync-external-store@1.6.0(react@18.3.1))(utf-8-validate@5.0.10)(zod@3.25.76)' - : dependencies: + '@coinbase/wallet-sdk@4.3.6(@types/react@19.2.0)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(use-sync-external-store@1.6.0(react@18.3.1))(utf-8-validate@5.0.10)(zod@3.25.76)': + dependencies: '@noble/hashes': 1.4.0 clsx: 1.2.1 eventemitter3: 5.0.1 @@ -11695,8 +11759,8 @@ snapshots: - bufferutil - utf-8-validate - ? '@cosmjs/stargate@0.32.4(patch_hash=746102a36fec3bbfa8804e1d470fc65c724740343f31ecc65cb8637de7173bf8)(bufferutil@4.0.9)(utf-8-validate@5.0.10)' - : dependencies: + '@cosmjs/stargate@0.32.4(patch_hash=746102a36fec3bbfa8804e1d470fc65c724740343f31ecc65cb8637de7173bf8)(bufferutil@4.0.9)(utf-8-validate@5.0.10)': + dependencies: '@confio/ics23': 0.6.8 '@cosmjs/amino': 0.32.4 '@cosmjs/encoding': 0.32.4 @@ -11712,8 +11776,8 @@ snapshots: - debug - utf-8-validate - ? '@cosmjs/stargate@0.33.1(patch_hash=746102a36fec3bbfa8804e1d470fc65c724740343f31ecc65cb8637de7173bf8)(bufferutil@4.0.9)(utf-8-validate@5.0.10)' - : dependencies: + '@cosmjs/stargate@0.33.1(patch_hash=746102a36fec3bbfa8804e1d470fc65c724740343f31ecc65cb8637de7173bf8)(bufferutil@4.0.9)(utf-8-validate@5.0.10)': + dependencies: '@cosmjs/amino': 0.33.1(patch_hash=009a0401b33075fe62c3f766de38d9cb6305fe29be495b1e624b366c270cd9a4) '@cosmjs/encoding': 0.33.1 '@cosmjs/math': 0.33.1 @@ -11752,8 +11816,8 @@ snapshots: - debug - utf-8-validate - ? '@cosmjs/tendermint-rpc@0.33.1(patch_hash=d6d84acfc406c9bb60bb24c691bf474327d6a3a3140be568a3b77e1063897c4e)(bufferutil@4.0.9)(utf-8-validate@5.0.10)' - : dependencies: + '@cosmjs/tendermint-rpc@0.33.1(patch_hash=d6d84acfc406c9bb60bb24c691bf474327d6a3a3140be568a3b77e1063897c4e)(bufferutil@4.0.9)(utf-8-validate@5.0.10)': + dependencies: '@cosmjs/crypto': 0.33.1 '@cosmjs/encoding': 0.33.1 '@cosmjs/json-rpc': 0.33.1 @@ -11784,8 +11848,8 @@ snapshots: '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4) '@csstools/css-tokenizer': 3.0.4 - ? '@csstools/css-color-parser@3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)' - : dependencies: + '@csstools/css-color-parser@3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)': + dependencies: '@csstools/color-helpers': 5.1.0 '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4) '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4) @@ -11862,13 +11926,13 @@ snapshots: dependencies: effect: 3.17.14 - ? '@effect/vitest@0.25.1(effect@3.17.14)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.6.1)(happy-dom@17.6.3)(jiti@2.6.1)(jsdom@23.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))' - : dependencies: + '@effect/vitest@0.25.1(effect@3.17.14)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.6.1)(happy-dom@17.6.3)(jiti@2.6.1)(jsdom@23.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))': + dependencies: effect: 3.17.14 vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.6.1)(happy-dom@17.6.3)(jiti@2.6.1)(jsdom@23.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1) - ? '@effect/vitest@0.25.1(effect@3.17.14)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.6.1)(happy-dom@18.0.1)(jiti@2.6.1)(jsdom@23.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))' - : dependencies: + '@effect/vitest@0.25.1(effect@3.17.14)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.6.1)(happy-dom@18.0.1)(jiti@2.6.1)(jsdom@23.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))': + dependencies: effect: 3.17.14 vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.6.1)(happy-dom@18.0.1)(jiti@2.6.1)(jsdom@23.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1) @@ -12472,8 +12536,8 @@ snapshots: graphql: 16.11.0 typescript: 5.9.3 - ? '@graphiql/plugin-doc-explorer@0.4.1(@graphiql/react@0.37.1(@types/node@22.18.8)(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0)))(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0))' - : dependencies: + '@graphiql/plugin-doc-explorer@0.4.1(@graphiql/react@0.37.1(@types/node@22.18.8)(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0)))(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0))': + dependencies: '@graphiql/react': 0.37.1(@types/node@22.18.8)(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0)) '@headlessui/react': 2.2.9(react-dom@19.2.0(react@19.2.0))(react@19.2.0) graphql: 16.11.0 @@ -12486,16 +12550,16 @@ snapshots: - immer - use-sync-external-store - ? '@graphiql/plugin-explorer@5.1.1(@graphiql/react@0.37.1(@types/node@22.18.8)(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0)))(graphql@16.11.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)' - : dependencies: + '@graphiql/plugin-explorer@5.1.1(@graphiql/react@0.37.1(@types/node@22.18.8)(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0)))(graphql@16.11.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: '@graphiql/react': 0.37.1(@types/node@22.18.8)(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0)) graphiql-explorer: 0.9.0(graphql@16.11.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) graphql: 16.11.0 react: 19.2.0 react-dom: 19.2.0(react@19.2.0) - ? '@graphiql/plugin-history@0.4.1(@graphiql/react@0.37.1(@types/node@22.18.8)(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0)))(@types/node@22.18.8)(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0))' - : dependencies: + '@graphiql/plugin-history@0.4.1(@graphiql/react@0.37.1(@types/node@22.18.8)(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0)))(@types/node@22.18.8)(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0))': + dependencies: '@graphiql/react': 0.37.1(@types/node@22.18.8)(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0)) '@graphiql/toolkit': 0.11.3(@types/node@22.18.8)(graphql@16.11.0) react: 19.2.0 @@ -12510,8 +12574,8 @@ snapshots: - immer - use-sync-external-store - ? '@graphiql/react@0.37.1(@types/node@22.18.8)(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0))' - : dependencies: + '@graphiql/react@0.37.1(@types/node@22.18.8)(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0))': + dependencies: '@graphiql/toolkit': 0.11.3(@types/node@22.18.8)(graphql@16.11.0) '@radix-ui/react-dialog': 1.1.15(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) '@radix-ui/react-dropdown-menu': 2.1.16(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) @@ -12821,8 +12885,8 @@ snapshots: dependencies: '@lit-labs/ssr-dom-shim': 1.4.0 - ? '@lorenzo_lewis/starlight-utils@0.3.2(@astrojs/starlight@0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)))(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))' - : dependencies: + '@lorenzo_lewis/starlight-utils@0.3.2(@astrojs/starlight@0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)))(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))': + dependencies: '@astrojs/starlight': 0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) astro: 5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) astro-integration-kit: 0.18.0(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) @@ -12959,8 +13023,8 @@ snapshots: dependencies: openapi-fetch: 0.13.8 - ? '@metamask/sdk-communication-layer@0.33.1(cross-fetch@4.1.0)(eciesjs@0.4.15)(eventemitter2@6.4.9)(readable-stream@3.6.2)(socket.io-client@4.8.1(bufferutil@4.0.9)(utf-8-validate@5.0.10))' - : dependencies: + '@metamask/sdk-communication-layer@0.33.1(cross-fetch@4.1.0)(eciesjs@0.4.15)(eventemitter2@6.4.9)(readable-stream@3.6.2)(socket.io-client@4.8.1(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + dependencies: '@metamask/sdk-analytics': 0.0.5 bufferutil: 4.0.9 cross-fetch: 4.1.0 @@ -13097,6 +13161,11 @@ snapshots: '@mysten/utils': 0.2.0 '@scure/base': 1.2.6 + '@mysten/bcs@1.9.2': + dependencies: + '@mysten/utils': 0.2.0 + '@scure/base': 1.2.6 + '@mysten/sui@1.39.0(typescript@5.9.3)': dependencies: '@graphql-typed-document-node/core': 3.2.0(graphql@16.11.0) @@ -13116,10 +13185,41 @@ snapshots: - '@gql.tada/vue-support' - typescript + '@mysten/sui@1.45.0(typescript@5.9.3)': + dependencies: + '@graphql-typed-document-node/core': 3.2.0(graphql@16.11.0) + '@mysten/bcs': 1.9.2 + '@mysten/utils': 0.2.0 + '@noble/curves': 1.9.4 + '@noble/hashes': 1.8.0 + '@protobuf-ts/grpcweb-transport': 2.11.1 + '@protobuf-ts/runtime': 2.11.1 + '@protobuf-ts/runtime-rpc': 2.11.1 + '@scure/base': 1.2.6 + '@scure/bip32': 1.7.0 + '@scure/bip39': 1.6.0 + gql.tada: 1.8.13(graphql@16.11.0)(typescript@5.9.3) + graphql: 16.11.0 + poseidon-lite: 0.2.1 + valibot: 0.36.0 + transitivePeerDependencies: + - '@gql.tada/svelte-support' + - '@gql.tada/vue-support' + - typescript + '@mysten/utils@0.2.0': dependencies: '@scure/base': 1.2.6 + '@mysten/wallet-standard@0.19.7(typescript@5.9.3)': + dependencies: + '@mysten/sui': 1.45.0(typescript@5.9.3) + '@wallet-standard/core': 1.1.1 + transitivePeerDependencies: + - '@gql.tada/svelte-support' + - '@gql.tada/vue-support' + - typescript + '@n1ru4l/push-pull-async-iterable-iterator@3.2.0': {} '@napi-rs/canvas-android-arm64@0.1.80': @@ -13204,6 +13304,10 @@ snapshots: dependencies: '@noble/hashes': 1.8.0 + '@noble/curves@1.9.4': + dependencies: + '@noble/hashes': 1.8.0 + '@noble/curves@1.9.7': dependencies: '@noble/hashes': 1.8.0 @@ -13324,6 +13428,17 @@ snapshots: '@polka/url@1.0.0-next.29': {} + '@protobuf-ts/grpcweb-transport@2.11.1': + dependencies: + '@protobuf-ts/runtime': 2.11.1 + '@protobuf-ts/runtime-rpc': 2.11.1 + + '@protobuf-ts/runtime-rpc@2.11.1': + dependencies: + '@protobuf-ts/runtime': 2.11.1 + + '@protobuf-ts/runtime@2.11.1': {} + '@protobufjs/aspromise@1.1.2': {} '@protobufjs/base64@1.1.2': {} @@ -13359,8 +13474,8 @@ snapshots: '@radix-ui/primitive@1.1.3': {} - ? '@radix-ui/react-arrow@1.1.7(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)' - : dependencies: + '@radix-ui/react-arrow@1.1.7(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) react: 19.2.0 react-dom: 19.2.0(react@19.2.0) @@ -13368,8 +13483,8 @@ snapshots: '@types/react': 19.2.0 '@types/react-dom': 19.2.0(@types/react@19.2.0) - ? '@radix-ui/react-collection@1.1.7(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)' - : dependencies: + '@radix-ui/react-collection@1.1.7(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.0)(react@19.2.0) '@radix-ui/react-context': 1.1.2(@types/react@19.2.0)(react@19.2.0) '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) @@ -13392,8 +13507,8 @@ snapshots: optionalDependencies: '@types/react': 19.2.0 - ? '@radix-ui/react-dialog@1.1.15(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)' - : dependencies: + '@radix-ui/react-dialog@1.1.15(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: '@radix-ui/primitive': 1.1.3 '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.0)(react@19.2.0) '@radix-ui/react-context': 1.1.2(@types/react@19.2.0)(react@19.2.0) @@ -13420,8 +13535,8 @@ snapshots: optionalDependencies: '@types/react': 19.2.0 - ? '@radix-ui/react-dismissable-layer@1.1.11(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)' - : dependencies: + '@radix-ui/react-dismissable-layer@1.1.11(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: '@radix-ui/primitive': 1.1.3 '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.0)(react@19.2.0) '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) @@ -13433,8 +13548,8 @@ snapshots: '@types/react': 19.2.0 '@types/react-dom': 19.2.0(@types/react@19.2.0) - ? '@radix-ui/react-dropdown-menu@2.1.16(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)' - : dependencies: + '@radix-ui/react-dropdown-menu@2.1.16(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: '@radix-ui/primitive': 1.1.3 '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.0)(react@19.2.0) '@radix-ui/react-context': 1.1.2(@types/react@19.2.0)(react@19.2.0) @@ -13454,8 +13569,8 @@ snapshots: optionalDependencies: '@types/react': 19.2.0 - ? '@radix-ui/react-focus-scope@1.1.7(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)' - : dependencies: + '@radix-ui/react-focus-scope@1.1.7(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.0)(react@19.2.0) '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.0)(react@19.2.0) @@ -13472,8 +13587,8 @@ snapshots: optionalDependencies: '@types/react': 19.2.0 - ? '@radix-ui/react-menu@2.1.16(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)' - : dependencies: + '@radix-ui/react-menu@2.1.16(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: '@radix-ui/primitive': 1.1.3 '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.0)(react@19.2.0) @@ -13498,8 +13613,8 @@ snapshots: '@types/react': 19.2.0 '@types/react-dom': 19.2.0(@types/react@19.2.0) - ? '@radix-ui/react-popper@1.2.8(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)' - : dependencies: + '@radix-ui/react-popper@1.2.8(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: '@floating-ui/react-dom': 2.1.6(react-dom@19.2.0(react@19.2.0))(react@19.2.0) '@radix-ui/react-arrow': 1.1.7(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.0)(react@19.2.0) @@ -13516,8 +13631,8 @@ snapshots: '@types/react': 19.2.0 '@types/react-dom': 19.2.0(@types/react@19.2.0) - ? '@radix-ui/react-portal@1.1.9(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)' - : dependencies: + '@radix-ui/react-portal@1.1.9(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.0)(react@19.2.0) react: 19.2.0 @@ -13526,8 +13641,8 @@ snapshots: '@types/react': 19.2.0 '@types/react-dom': 19.2.0(@types/react@19.2.0) - ? '@radix-ui/react-presence@1.1.5(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)' - : dependencies: + '@radix-ui/react-presence@1.1.5(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.0)(react@19.2.0) '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.0)(react@19.2.0) react: 19.2.0 @@ -13536,8 +13651,8 @@ snapshots: '@types/react': 19.2.0 '@types/react-dom': 19.2.0(@types/react@19.2.0) - ? '@radix-ui/react-primitive@2.1.3(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)' - : dependencies: + '@radix-ui/react-primitive@2.1.3(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: '@radix-ui/react-slot': 1.2.3(@types/react@19.2.0)(react@19.2.0) react: 19.2.0 react-dom: 19.2.0(react@19.2.0) @@ -13545,8 +13660,8 @@ snapshots: '@types/react': 19.2.0 '@types/react-dom': 19.2.0(@types/react@19.2.0) - ? '@radix-ui/react-roving-focus@1.1.11(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)' - : dependencies: + '@radix-ui/react-roving-focus@1.1.11(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: '@radix-ui/primitive': 1.1.3 '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.0)(react@19.2.0) @@ -13569,8 +13684,8 @@ snapshots: optionalDependencies: '@types/react': 19.2.0 - ? '@radix-ui/react-tooltip@1.2.8(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)' - : dependencies: + '@radix-ui/react-tooltip@1.2.8(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: '@radix-ui/primitive': 1.1.3 '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.0)(react@19.2.0) '@radix-ui/react-context': 1.1.2(@types/react@19.2.0)(react@19.2.0) @@ -13637,8 +13752,8 @@ snapshots: optionalDependencies: '@types/react': 19.2.0 - ? '@radix-ui/react-visually-hidden@1.2.3(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)' - : dependencies: + '@radix-ui/react-visually-hidden@1.2.3(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) react: 19.2.0 react-dom: 19.2.0(react@19.2.0) @@ -13761,8 +13876,8 @@ snapshots: - utf-8-validate - zod - ? '@reown/appkit-controllers@1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)' - : dependencies: + '@reown/appkit-controllers@1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)': + dependencies: '@reown/appkit-common': 1.7.8(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) '@reown/appkit-wallet': 1.7.8(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10) '@walletconnect/universal-provider': 2.21.0(@vercel/functions@2.2.13)(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) @@ -13796,8 +13911,8 @@ snapshots: - utf-8-validate - zod - ? '@reown/appkit-pay@1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)' - : dependencies: + '@reown/appkit-pay@1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)': + dependencies: '@reown/appkit-common': 1.7.8(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) '@reown/appkit-controllers': 1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) '@reown/appkit-ui': 1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) @@ -13836,8 +13951,8 @@ snapshots: dependencies: buffer: 6.0.3 - ? '@reown/appkit-scaffold-ui@1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)' - : dependencies: + '@reown/appkit-scaffold-ui@1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)': + dependencies: '@reown/appkit-common': 1.7.8(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) '@reown/appkit-controllers': 1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) '@reown/appkit-ui': 1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) @@ -13872,8 +13987,8 @@ snapshots: - utf-8-validate - zod - ? '@reown/appkit-ui@1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)' - : dependencies: + '@reown/appkit-ui@1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)': + dependencies: '@reown/appkit-common': 1.7.8(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) '@reown/appkit-controllers': 1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) '@reown/appkit-wallet': 1.7.8(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10) @@ -13907,8 +14022,8 @@ snapshots: - utf-8-validate - zod - ? '@reown/appkit-utils@1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)' - : dependencies: + '@reown/appkit-utils@1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)': + dependencies: '@reown/appkit-common': 1.7.8(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) '@reown/appkit-controllers': 1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) '@reown/appkit-polyfills': 1.7.8 @@ -13956,8 +14071,8 @@ snapshots: - typescript - utf-8-validate - ? '@reown/appkit@1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)' - : dependencies: + '@reown/appkit@1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)': + dependencies: '@reown/appkit-common': 1.7.8(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) '@reown/appkit-controllers': 1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) '@reown/appkit-pay': 1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) @@ -14298,25 +14413,25 @@ snapshots: dependencies: acorn: 8.15.0 - ? '@sveltejs/adapter-auto@3.3.1(@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))' - : dependencies: + '@sveltejs/adapter-auto@3.3.1(@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))': + dependencies: '@sveltejs/kit': 2.44.0(@sveltejs/vite-plugin-svelte@5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) import-meta-resolve: 4.2.0 - ? '@sveltejs/adapter-static@3.0.10(@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@4.0.4(svelte@5.39.9)(vite@5.4.20(@types/node@24.1.0)(lightningcss@1.30.1)))(svelte@5.39.9)(vite@5.4.20(@types/node@24.1.0)(lightningcss@1.30.1)))' - : dependencies: + '@sveltejs/adapter-static@3.0.10(@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@4.0.4(svelte@5.39.9)(vite@5.4.20(@types/node@24.1.0)(lightningcss@1.30.1)))(svelte@5.39.9)(vite@5.4.20(@types/node@24.1.0)(lightningcss@1.30.1)))': + dependencies: '@sveltejs/kit': 2.44.0(@sveltejs/vite-plugin-svelte@4.0.4(svelte@5.39.9)(vite@5.4.20(@types/node@24.1.0)(lightningcss@1.30.1)))(svelte@5.39.9)(vite@5.4.20(@types/node@24.1.0)(lightningcss@1.30.1)) - ? '@sveltejs/adapter-static@3.0.10(@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))' - : dependencies: + '@sveltejs/adapter-static@3.0.10(@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))': + dependencies: '@sveltejs/kit': 2.44.0(@sveltejs/vite-plugin-svelte@5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) - ? '@sveltejs/adapter-static@3.0.10(@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))' - : dependencies: + '@sveltejs/adapter-static@3.0.10(@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))': + dependencies: '@sveltejs/kit': 2.44.0(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) - ? '@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@4.0.4(svelte@5.39.9)(vite@5.4.20(@types/node@24.1.0)(lightningcss@1.30.1)))(svelte@5.39.9)(vite@5.4.20(@types/node@24.1.0)(lightningcss@1.30.1))' - : dependencies: + '@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@4.0.4(svelte@5.39.9)(vite@5.4.20(@types/node@24.1.0)(lightningcss@1.30.1)))(svelte@5.39.9)(vite@5.4.20(@types/node@24.1.0)(lightningcss@1.30.1))': + dependencies: '@standard-schema/spec': 1.0.0 '@sveltejs/acorn-typescript': 1.0.6(acorn@8.15.0) '@sveltejs/vite-plugin-svelte': 4.0.4(svelte@5.39.9)(vite@5.4.20(@types/node@24.1.0)(lightningcss@1.30.1)) @@ -14334,8 +14449,8 @@ snapshots: svelte: 5.39.9 vite: 5.4.20(@types/node@24.1.0)(lightningcss@1.30.1) - ? '@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))' - : dependencies: + '@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))': + dependencies: '@standard-schema/spec': 1.0.0 '@sveltejs/acorn-typescript': 1.0.6(acorn@8.15.0) '@sveltejs/vite-plugin-svelte': 5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) @@ -14353,8 +14468,8 @@ snapshots: svelte: 5.39.9 vite: 6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1) - ? '@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))' - : dependencies: + '@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))': + dependencies: '@standard-schema/spec': 1.0.0 '@sveltejs/acorn-typescript': 1.0.6(acorn@8.15.0) '@sveltejs/vite-plugin-svelte': 6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) @@ -14373,8 +14488,8 @@ snapshots: vite: 6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1) optional: true - ? '@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))' - : dependencies: + '@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))': + dependencies: '@standard-schema/spec': 1.0.0 '@sveltejs/acorn-typescript': 1.0.6(acorn@8.15.0) '@sveltejs/vite-plugin-svelte': 6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) @@ -14403,8 +14518,8 @@ snapshots: transitivePeerDependencies: - typescript - ? '@sveltejs/vite-plugin-svelte-inspector@3.0.1(@sveltejs/vite-plugin-svelte@4.0.4(svelte@5.39.9)(vite@5.4.20(@types/node@24.1.0)(lightningcss@1.30.1)))(svelte@5.39.9)(vite@5.4.20(@types/node@24.1.0)(lightningcss@1.30.1))' - : dependencies: + '@sveltejs/vite-plugin-svelte-inspector@3.0.1(@sveltejs/vite-plugin-svelte@4.0.4(svelte@5.39.9)(vite@5.4.20(@types/node@24.1.0)(lightningcss@1.30.1)))(svelte@5.39.9)(vite@5.4.20(@types/node@24.1.0)(lightningcss@1.30.1))': + dependencies: '@sveltejs/vite-plugin-svelte': 4.0.4(svelte@5.39.9)(vite@5.4.20(@types/node@24.1.0)(lightningcss@1.30.1)) debug: 4.4.1 svelte: 5.39.9 @@ -14412,8 +14527,8 @@ snapshots: transitivePeerDependencies: - supports-color - ? '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))' - : dependencies: + '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))': + dependencies: '@sveltejs/vite-plugin-svelte': 5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) debug: 4.4.1 svelte: 5.39.9 @@ -14421,8 +14536,8 @@ snapshots: transitivePeerDependencies: - supports-color - ? '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))' - : dependencies: + '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))': + dependencies: '@sveltejs/vite-plugin-svelte': 5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) debug: 4.4.1 svelte: 5.39.9 @@ -14430,8 +14545,8 @@ snapshots: transitivePeerDependencies: - supports-color - ? '@sveltejs/vite-plugin-svelte-inspector@5.0.1(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))' - : dependencies: + '@sveltejs/vite-plugin-svelte-inspector@5.0.1(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))': + dependencies: '@sveltejs/vite-plugin-svelte': 6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) debug: 4.4.1 svelte: 5.39.9 @@ -14440,8 +14555,8 @@ snapshots: - supports-color optional: true - ? '@sveltejs/vite-plugin-svelte-inspector@5.0.1(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))' - : dependencies: + '@sveltejs/vite-plugin-svelte-inspector@5.0.1(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))': + dependencies: '@sveltejs/vite-plugin-svelte': 6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) debug: 4.4.1 svelte: 5.39.9 @@ -14462,8 +14577,8 @@ snapshots: transitivePeerDependencies: - supports-color - ? '@sveltejs/vite-plugin-svelte@5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))' - : dependencies: + '@sveltejs/vite-plugin-svelte@5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))': + dependencies: '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) debug: 4.4.1 deepmerge: 4.3.1 @@ -14475,8 +14590,8 @@ snapshots: transitivePeerDependencies: - supports-color - ? '@sveltejs/vite-plugin-svelte@5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))' - : dependencies: + '@sveltejs/vite-plugin-svelte@5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))': + dependencies: '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.1.1(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) debug: 4.4.1 deepmerge: 4.3.1 @@ -14488,8 +14603,8 @@ snapshots: transitivePeerDependencies: - supports-color - ? '@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))' - : dependencies: + '@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))': + dependencies: '@sveltejs/vite-plugin-svelte-inspector': 5.0.1(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) debug: 4.4.1 deepmerge: 4.3.1 @@ -14501,8 +14616,8 @@ snapshots: - supports-color optional: true - ? '@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))' - : dependencies: + '@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))': + dependencies: '@sveltejs/vite-plugin-svelte-inspector': 5.0.1(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) debug: 4.4.1 deepmerge: 4.3.1 @@ -14668,16 +14783,16 @@ snapshots: picocolors: 1.1.1 redent: 3.0.0 - ? '@testing-library/svelte@5.2.8(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.6.1)(happy-dom@17.6.3)(jiti@2.6.1)(jsdom@23.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))' - : dependencies: + '@testing-library/svelte@5.2.8(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.6.1)(happy-dom@17.6.3)(jiti@2.6.1)(jsdom@23.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))': + dependencies: '@testing-library/dom': 10.4.1 svelte: 5.39.9 optionalDependencies: vite: 6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1) vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.6.1)(happy-dom@17.6.3)(jiti@2.6.1)(jsdom@23.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1) - ? '@testing-library/svelte@5.2.8(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.6.1)(happy-dom@18.0.1)(jiti@2.6.1)(jsdom@23.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))' - : dependencies: + '@testing-library/svelte@5.2.8(svelte@5.39.9)(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.6.1)(happy-dom@18.0.1)(jiti@2.6.1)(jsdom@23.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))': + dependencies: '@testing-library/dom': 10.4.1 svelte: 5.39.9 optionalDependencies: @@ -15021,8 +15136,8 @@ snapshots: '@types/node': 22.18.8 optional: true - ? '@typescript-eslint/eslint-plugin@8.45.0(@typescript-eslint/parser@8.45.0(eslint@9.37.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.37.0(jiti@2.6.1))(typescript@5.9.3)' - : dependencies: + '@typescript-eslint/eslint-plugin@8.45.0(@typescript-eslint/parser@8.45.0(eslint@9.37.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.37.0(jiti@2.6.1))(typescript@5.9.3)': + dependencies: '@eslint-community/regexpp': 4.12.1 '@typescript-eslint/parser': 8.45.0(eslint@9.37.0(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/scope-manager': 8.45.0 @@ -15152,8 +15267,8 @@ snapshots: - utf-8-validate - zod - ? '@vercel/analytics@1.5.0(@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(react@19.2.0)(svelte@5.39.9)(vue@3.5.22(typescript@5.9.3))' - : optionalDependencies: + '@vercel/analytics@1.5.0(@sveltejs/kit@2.44.0(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(react@19.2.0)(svelte@5.39.9)(vue@3.5.22(typescript@5.9.3))': + optionalDependencies: '@sveltejs/kit': 2.44.0(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)))(svelte@5.39.9)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) react: 19.2.0 svelte: 5.39.9 @@ -15208,8 +15323,8 @@ snapshots: transitivePeerDependencies: - supports-color - ? '@vitejs/plugin-vue-jsx@4.2.0(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))' - : dependencies: + '@vitejs/plugin-vue-jsx@4.2.0(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))': + dependencies: '@babel/core': 7.28.4 '@babel/plugin-transform-typescript': 7.28.0(@babel/core@7.28.4) '@rolldown/pluginutils': 1.0.0-beta.9-commit.d91dfb5 @@ -15219,13 +15334,13 @@ snapshots: transitivePeerDependencies: - supports-color - ? '@vitejs/plugin-vue@5.2.1(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))' - : dependencies: + '@vitejs/plugin-vue@5.2.1(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))': + dependencies: vite: 6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1) vue: 3.5.22(typescript@5.9.3) - ? '@vitest/coverage-v8@3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.6.1)(happy-dom@18.0.1)(jiti@2.6.1)(jsdom@23.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))' - : dependencies: + '@vitest/coverage-v8@3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.6.1)(happy-dom@18.0.1)(jiti@2.6.1)(jsdom@23.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))': + dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 1.0.2 ast-v8-to-istanbul: 0.3.8 @@ -15394,8 +15509,8 @@ snapshots: '@vue/compiler-dom': 3.5.22 '@vue/shared': 3.5.22 - ? '@vue/devtools-core@7.7.7(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))' - : dependencies: + '@vue/devtools-core@7.7.7(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))': + dependencies: '@vue/devtools-kit': 7.7.7 '@vue/devtools-shared': 7.7.7 mitt: 3.0.1 @@ -15444,8 +15559,8 @@ snapshots: '@vue/shared@3.5.22': {} - ? '@wagmi/connectors@5.11.2(@types/react@19.2.0)(@vercel/functions@2.2.13)(@wagmi/core@2.21.2(@tanstack/query-core@5.90.2)(@types/react@19.2.0)(react@18.3.1)(typescript@5.9.3)(use-sync-external-store@1.6.0(react@18.3.1))(viem@2.33.3(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)))(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(use-sync-external-store@1.6.0(react@18.3.1))(utf-8-validate@5.0.10)(viem@2.33.3(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76))(zod@3.25.76)' - : dependencies: + '@wagmi/connectors@5.11.2(@types/react@19.2.0)(@vercel/functions@2.2.13)(@wagmi/core@2.21.2(@tanstack/query-core@5.90.2)(@types/react@19.2.0)(react@18.3.1)(typescript@5.9.3)(use-sync-external-store@1.6.0(react@18.3.1))(viem@2.33.3(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)))(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(use-sync-external-store@1.6.0(react@18.3.1))(utf-8-validate@5.0.10)(viem@2.33.3(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76))(zod@3.25.76)': + dependencies: '@base-org/account': 1.1.1(@types/react@19.2.0)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(use-sync-external-store@1.6.0(react@18.3.1))(utf-8-validate@5.0.10)(zod@3.25.76) '@coinbase/wallet-sdk': 4.3.6(@types/react@19.2.0)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(use-sync-external-store@1.6.0(react@18.3.1))(utf-8-validate@5.0.10)(zod@3.25.76) '@gemini-wallet/core': 0.2.0(viem@2.33.3(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)) @@ -15491,8 +15606,8 @@ snapshots: - wagmi - zod - ? '@wagmi/core@2.21.2(@tanstack/query-core@5.90.2)(@types/react@19.2.0)(react@18.3.1)(typescript@5.9.3)(use-sync-external-store@1.6.0(react@18.3.1))(viem@2.33.3(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76))' - : dependencies: + '@wagmi/core@2.21.2(@tanstack/query-core@5.90.2)(@types/react@19.2.0)(react@18.3.1)(typescript@5.9.3)(use-sync-external-store@1.6.0(react@18.3.1))(viem@2.33.3(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76))': + dependencies: eventemitter3: 5.0.1 mipd: 0.0.7(typescript@5.9.3) viem: 2.33.3(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) @@ -15506,6 +15621,33 @@ snapshots: - react - use-sync-external-store + '@wallet-standard/app@1.1.0': + dependencies: + '@wallet-standard/base': 1.1.0 + + '@wallet-standard/base@1.1.0': {} + + '@wallet-standard/core@1.1.1': + dependencies: + '@wallet-standard/app': 1.1.0 + '@wallet-standard/base': 1.1.0 + '@wallet-standard/errors': 0.1.1 + '@wallet-standard/features': 1.1.0 + '@wallet-standard/wallet': 1.1.0 + + '@wallet-standard/errors@0.1.1': + dependencies: + chalk: 5.6.0 + commander: 13.1.0 + + '@wallet-standard/features@1.1.0': + dependencies: + '@wallet-standard/base': 1.1.0 + + '@wallet-standard/wallet@1.1.0': + dependencies: + '@wallet-standard/base': 1.1.0 + '@walletconnect/core@2.21.0(@vercel/functions@2.2.13)(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)': dependencies: '@walletconnect/heartbeat': 1.2.2 @@ -15598,8 +15740,8 @@ snapshots: dependencies: tslib: 1.14.1 - ? '@walletconnect/ethereum-provider@2.21.1(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)' - : dependencies: + '@walletconnect/ethereum-provider@2.21.1(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)': + dependencies: '@reown/appkit': 1.7.8(@types/react@19.2.0)(@vercel/functions@2.2.13)(bufferutil@4.0.9)(react@18.3.1)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) '@walletconnect/jsonrpc-http-connection': 1.0.8 '@walletconnect/jsonrpc-provider': 1.0.14 @@ -15732,8 +15874,8 @@ snapshots: dependencies: tslib: 1.14.1 - ? '@walletconnect/sign-client@2.21.0(@vercel/functions@2.2.13)(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)' - : dependencies: + '@walletconnect/sign-client@2.21.0(@vercel/functions@2.2.13)(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)': + dependencies: '@walletconnect/core': 2.21.0(@vercel/functions@2.2.13)(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) '@walletconnect/events': 1.0.1 '@walletconnect/heartbeat': 1.2.2 @@ -15768,8 +15910,8 @@ snapshots: - utf-8-validate - zod - ? '@walletconnect/sign-client@2.21.1(@vercel/functions@2.2.13)(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)' - : dependencies: + '@walletconnect/sign-client@2.21.1(@vercel/functions@2.2.13)(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)': + dependencies: '@walletconnect/core': 2.21.1(@vercel/functions@2.2.13)(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) '@walletconnect/events': 1.0.1 '@walletconnect/heartbeat': 1.2.2 @@ -15866,8 +16008,8 @@ snapshots: - ioredis - uploadthing - ? '@walletconnect/universal-provider@2.21.0(@vercel/functions@2.2.13)(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)' - : dependencies: + '@walletconnect/universal-provider@2.21.0(@vercel/functions@2.2.13)(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)': + dependencies: '@walletconnect/events': 1.0.1 '@walletconnect/jsonrpc-http-connection': 1.0.8 '@walletconnect/jsonrpc-provider': 1.0.14 @@ -15906,8 +16048,8 @@ snapshots: - utf-8-validate - zod - ? '@walletconnect/universal-provider@2.21.1(@vercel/functions@2.2.13)(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)' - : dependencies: + '@walletconnect/universal-provider@2.21.1(@vercel/functions@2.2.13)(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)': + dependencies: '@walletconnect/events': 1.0.1 '@walletconnect/jsonrpc-http-connection': 1.0.8 '@walletconnect/jsonrpc-provider': 1.0.14 @@ -16205,19 +16347,19 @@ snapshots: astring@1.9.0: {} - ? astro-auto-import@0.4.5(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) - : dependencies: + astro-auto-import@0.4.5(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)): + dependencies: '@types/node': 18.19.129 acorn: 8.15.0 astro: 5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) - ? astro-capo@0.0.1(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) - : dependencies: + astro-capo@0.0.1(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)): + dependencies: astro: 5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) ultrahtml: 1.6.0 - ? astro-embed@0.9.1(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) - : dependencies: + astro-embed@0.9.1(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)): + dependencies: '@astro-community/astro-embed-baseline-status': 0.2.0(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) '@astro-community/astro-embed-bluesky': 0.1.3(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) '@astro-community/astro-embed-integration': 0.8.1(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) @@ -16227,8 +16369,8 @@ snapshots: '@astro-community/astro-embed-youtube': 0.5.7(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) astro: 5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) - ? astro-expressive-code@0.41.3(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) - : dependencies: + astro-expressive-code@0.41.3(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)): + dependencies: astro: 5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) rehype-expressive-code: 0.41.3 @@ -16243,8 +16385,8 @@ snapshots: - debug - supports-color - ? astro-integration-kit@0.18.0(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) - : dependencies: + astro-integration-kit@0.18.0(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)): + dependencies: astro: 5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) pathe: 1.1.2 recast: 0.23.11 @@ -16263,8 +16405,8 @@ snapshots: - prettier-plugin-astro - typescript - ? astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) - : dependencies: + astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1): + dependencies: '@astrojs/compiler': 2.13.0 '@astrojs/internal-helpers': 0.7.3 '@astrojs/markdown-remark': 6.3.7 @@ -18137,8 +18279,8 @@ snapshots: react: 19.2.0 react-dom: 19.2.0(react@19.2.0) - ? graphiql@5.2.0(@types/node@22.18.8)(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(graphql@16.11.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0)) - : dependencies: + graphiql@5.2.0(@types/node@22.18.8)(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(graphql@16.11.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0)): + dependencies: '@graphiql/plugin-doc-explorer': 0.4.1(@graphiql/react@0.37.1(@types/node@22.18.8)(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0)))(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0)) '@graphiql/plugin-history': 0.4.1(@graphiql/react@0.37.1(@types/node@22.18.8)(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0)))(@types/node@22.18.8)(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0)) '@graphiql/react': 0.37.1(@types/node@22.18.8)(@types/react-dom@19.2.0(@types/react@19.2.0))(@types/react@19.2.0)(graphql@16.11.0)(react-compiler-runtime@19.1.0-rc.1(react@19.2.0))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(use-sync-external-store@1.6.0(react@19.2.0)) @@ -20036,7 +20178,7 @@ snapshots: dependencies: '@adraffy/ens-normalize': 1.11.1 '@noble/ciphers': 1.3.0 - '@noble/curves': 1.9.2 + '@noble/curves': 1.9.7 '@noble/hashes': 1.8.0 '@scure/bip32': 1.7.0 '@scure/bip39': 1.6.0 @@ -20051,7 +20193,7 @@ snapshots: dependencies: '@adraffy/ens-normalize': 1.11.1 '@noble/ciphers': 1.3.0 - '@noble/curves': 1.9.2 + '@noble/curves': 1.9.7 '@noble/hashes': 1.8.0 '@scure/bip32': 1.7.0 '@scure/bip39': 1.6.0 @@ -20316,8 +20458,8 @@ snapshots: pony-cause@2.1.11: {} - ? porto@0.2.19(@types/react@19.2.0)(@wagmi/core@2.21.2(@tanstack/query-core@5.90.2)(@types/react@19.2.0)(react@18.3.1)(typescript@5.9.3)(use-sync-external-store@1.6.0(react@18.3.1))(viem@2.33.3(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)))(react@18.3.1)(typescript@5.9.3)(use-sync-external-store@1.6.0(react@18.3.1))(viem@2.33.3(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)) - : dependencies: + porto@0.2.19(@types/react@19.2.0)(@wagmi/core@2.21.2(@tanstack/query-core@5.90.2)(@types/react@19.2.0)(react@18.3.1)(typescript@5.9.3)(use-sync-external-store@1.6.0(react@18.3.1))(viem@2.33.3(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)))(react@18.3.1)(typescript@5.9.3)(use-sync-external-store@1.6.0(react@18.3.1))(viem@2.33.3(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)): + dependencies: '@wagmi/core': 2.21.2(@tanstack/query-core@5.90.2)(@types/react@19.2.0)(react@18.3.1)(typescript@5.9.3)(use-sync-external-store@1.6.0(react@18.3.1))(viem@2.33.3(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)) hono: 4.9.10 idb-keyval: 6.2.2 @@ -21380,8 +21522,8 @@ snapshots: pako: 2.1.0 ts-mixer: 6.0.4 - ? starlight-heading-badges@0.5.0(@astrojs/starlight@0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))) - : dependencies: + starlight-heading-badges@0.5.0(@astrojs/starlight@0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))): + dependencies: '@astrojs/markdown-remark': 6.3.7 '@astrojs/starlight': 0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) github-slugger: 2.0.0 @@ -21390,8 +21532,8 @@ snapshots: transitivePeerDependencies: - supports-color - ? starlight-links-validator@0.17.2(@astrojs/starlight@0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))) - : dependencies: + starlight-links-validator@0.17.2(@astrojs/starlight@0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))): + dependencies: '@astrojs/starlight': 0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) '@types/picomatch': 3.0.2 github-slugger: 2.0.0 @@ -21406,12 +21548,12 @@ snapshots: transitivePeerDependencies: - supports-color - ? starlight-theme-rapide@0.5.1(@astrojs/starlight@0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))) - : dependencies: + starlight-theme-rapide@0.5.1(@astrojs/starlight@0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))): + dependencies: '@astrojs/starlight': 0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) - ? starlight-typedoc@0.21.3(@astrojs/starlight@0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)))(typedoc-plugin-markdown@4.9.0(typedoc@0.28.13(typescript@5.9.3)))(typedoc@0.28.13(typescript@5.9.3)) - : dependencies: + starlight-typedoc@0.21.3(@astrojs/starlight@0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)))(typedoc-plugin-markdown@4.9.0(typedoc@0.28.13(typescript@5.9.3)))(typedoc@0.28.13(typescript@5.9.3)): + dependencies: '@astrojs/starlight': 0.34.8(astro@5.14.1(@types/node@22.18.8)(@vercel/functions@2.2.13)(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.1)(rollup@4.52.4)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) github-slugger: 2.0.0 typedoc: 0.28.13(typescript@5.9.3) @@ -21542,8 +21684,8 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} - ? svelte-check@3.8.6(@babel/core@7.28.4)(postcss-load-config@4.0.2(postcss@8.5.6)(ts-node@10.9.2(@types/node@24.1.0)(typescript@5.9.3)))(postcss@8.5.6)(svelte@5.39.9) - : dependencies: + svelte-check@3.8.6(@babel/core@7.28.4)(postcss-load-config@4.0.2(postcss@8.5.6)(ts-node@10.9.2(@types/node@24.1.0)(typescript@5.9.3)))(postcss@8.5.6)(svelte@5.39.9): + dependencies: '@jridgewell/trace-mapping': 0.3.31 chokidar: 3.6.0 picocolors: 1.1.1 @@ -21585,8 +21727,8 @@ snapshots: optionalDependencies: svelte: 5.39.9 - ? svelte-preprocess@5.1.4(@babel/core@7.28.4)(postcss-load-config@4.0.2(postcss@8.5.6)(ts-node@10.9.2(@types/node@24.1.0)(typescript@5.9.3)))(postcss@8.5.6)(svelte@5.39.9)(typescript@5.9.3) - : dependencies: + svelte-preprocess@5.1.4(@babel/core@7.28.4)(postcss-load-config@4.0.2(postcss@8.5.6)(ts-node@10.9.2(@types/node@24.1.0)(typescript@5.9.3)))(postcss@8.5.6)(svelte@5.39.9)(typescript@5.9.3): + dependencies: '@types/pug': 2.0.10 detect-indent: 6.1.0 magic-string: 0.30.19 @@ -22295,8 +22437,8 @@ snapshots: - tsx - yaml - ? vite-plugin-inspect@0.8.9(rollup@4.52.4)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) - : dependencies: + vite-plugin-inspect@0.8.9(rollup@4.52.4)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)): + dependencies: '@antfu/utils': 0.7.10 '@rollup/pluginutils': 5.3.0(rollup@4.52.4) debug: 4.4.1 @@ -22311,8 +22453,8 @@ snapshots: - rollup - supports-color - ? vite-plugin-vue-devtools@7.7.7(rollup@4.52.4)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)) - : dependencies: + vite-plugin-vue-devtools@7.7.7(rollup@4.52.4)(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)): + dependencies: '@vue/devtools-core': 7.7.7(vite@6.3.6(@types/node@22.18.8)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)) '@vue/devtools-kit': 7.7.7 '@vue/devtools-shared': 7.7.7 @@ -22396,8 +22538,8 @@ snapshots: optionalDependencies: vite: 6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1) - ? vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.6.1)(happy-dom@17.6.3)(jiti@2.6.1)(jsdom@23.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1) - : dependencies: + vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.6.1)(happy-dom@17.6.3)(jiti@2.6.1)(jsdom@23.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1): + dependencies: '@types/chai': 5.2.2 '@vitest/expect': 3.2.4 '@vitest/mocker': 3.2.4(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) @@ -22440,8 +22582,8 @@ snapshots: - tsx - yaml - ? vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.6.1)(happy-dom@18.0.1)(jiti@2.6.1)(jsdom@23.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1) - : dependencies: + vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.6.1)(happy-dom@18.0.1)(jiti@2.6.1)(jsdom@23.2.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1): + dependencies: '@types/chai': 5.2.2 '@vitest/expect': 3.2.4 '@vitest/mocker': 3.2.4(vite@6.3.6(@types/node@24.6.1)(jiti@2.6.1)(lightningcss@1.30.1)(tsx@4.20.6)(yaml@2.8.1)) diff --git a/ts-sdk-sui/examples/sui-create-client-generate-instruction.ts b/ts-sdk-sui/examples/sui-create-client-generate-instruction.ts index c33b4ba56c..21523b2938 100644 --- a/ts-sdk-sui/examples/sui-create-client-generate-instruction.ts +++ b/ts-sdk-sui/examples/sui-create-client-generate-instruction.ts @@ -61,19 +61,20 @@ const program = Effect.gen(function*() { source, destination, channelId: ChannelId.make(5), - ucs03Address: "0x8675045186976da5b60baf20dc94413fb5415a7054052dc14d93c13d3dbdf830", + ucs03Address: + "0x3078623965306634373861623162623735393639343336386465363263656437636230343035376634383964353666326230613661376435656263313430373037393a3a7a6b676d3a3a307861316362663135656236333166303139323234643530613935373035356464663931313331333636303133323934393438656535346537663036666635383462", instruction: tokenOrder, // NEW — only read by the Sui client transport: { sui: { - relayStoreId: "0x393a99c6d55d9a79efa52dea6ea253fef25d2526787127290b985222cc20a924", - vaultId: "0x7c4ade19208295ed6bf3c4b58487aa4b917ba87d31460e9e7a917f7f12207ca3", - ibcStoreId: "0xac7814eebdfbf975235bbb796e07533718a9d83201346769e5f281dc90009175", + vaultId: "0xc3ac8618f622fc70ea30eaec5b45d504e239af668033d07e396be44d45f8f45d", + ibcStoreId: "0xdc5f20df5f143a06772c073e9c30dacd30e31f6788885cf478d0fd40f92766c4", coins: [ { typeArg: "0x2::sui::SUI", objectId: "0x266d00c4b329111255339c041cc57a1b616cfeddafdae47df8f814002578e95b", + baseAmount: BigInt(3), }, ], }, diff --git a/ts-sdk-sui/package.json b/ts-sdk-sui/package.json index dd96e957c0..c33b38fe93 100644 --- a/ts-sdk-sui/package.json +++ b/ts-sdk-sui/package.json @@ -60,8 +60,9 @@ "vitest": "catalog:" }, "dependencies": { + "@mysten/sui": "^1.38.0", "@scure/base": "1.2.4", - "crc": "^4.3.2", - "@mysten/sui": "^1.38.0" + "bs58": "^6", + "crc": "^4.3.2" } } diff --git a/ts-sdk-sui/src/Sui.ts b/ts-sdk-sui/src/Sui.ts index c2e4bdde89..f1c3424057 100644 --- a/ts-sdk-sui/src/Sui.ts +++ b/ts-sdk-sui/src/Sui.ts @@ -4,13 +4,24 @@ * @since 0.0.0 */ import { SuiClient } from "@mysten/sui/client" -import { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" +import type { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" + import { Transaction } from "@mysten/sui/transactions" import { extractErrorDetails } from "@unionlabs/sdk/Utils" import { Context, Data, Effect, flow, Layer } from "effect" import { type Address } from "viem" import * as internal from "./internal/sui.js" +// Minimal shape your zkgm client expects +type WalletStandardSigner = { + toSuiAddress(): string + signTransaction(input: { transactionBlock: Transaction | Uint8Array | string }): Promise<{ + signature: string + bytes: Uint8Array + executeResult?: unknown + }> +} + /** * @category models * @since 0.0.0 @@ -30,7 +41,8 @@ export namespace Sui { */ export interface WalletClient { readonly client: SuiClient - readonly signer: Ed25519Keypair + readonly signer: WalletStandardSigner | Ed25519Keypair + readonly rpc: string } /** @@ -363,6 +375,89 @@ export const readCoinBalances = (contractAddress: string, address: string) => return coins }) +/** + * Resolve the signer address from WalletClient. + */ +export const getSignerAddress = Effect.gen(function*() { + const { signer } = yield* WalletClient + return signer.toSuiAddress() +}) + +/** + * Incrementally fetch coin objects for `owner` and `coinType` until the running + */ +export const getCoinsWithBalance = (coinType: string, min: bigint) => + Effect.gen(function*() { + const { client } = yield* PublicClient + const resolvedOwner = yield* getSignerAddress + + return yield* Effect.tryPromise({ + try: async () => { + let cursor: string | null | undefined = undefined + let acc: Array<{ coinObjectId: string; balance: string }> = [] + let total = 0n + + while (true) { + const page = await client.getCoins({ + owner: resolvedOwner, + coinType: coinType, + cursor, + limit: 50, + }) + for (const c of page.data) { + acc.push({ coinObjectId: c.coinObjectId, balance: c.balance }) + total += BigInt(c.balance) + if (total >= min) { + return { coins: acc, total, hasEnough: true as const } + } + } + if (!page.hasNextPage) { + break + } + cursor = page.nextCursor + } + + return { coins: acc, total, hasEnough: false as const } + }, + catch: (err) => new ReadCoinError({ cause: extractErrorDetails(err as Error) }), + }) + }) + +/** + * Prepare a coin for spending inside the SAME PTB: + */ +export const prepareCoinForAmount = ( + tx: Transaction, + coinType: string, + amount: bigint, +) => + Effect.gen(function*() { + // SUI special case: split from gas + if ( + coinType === "0x2::sui::SUI" + || coinType === "0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI" + ) { + const [out] = tx.splitCoins(tx.gas, [tx.pure.u64(amount)]) + return out + } + const { coins, hasEnough } = yield* getCoinsWithBalance(coinType, amount) + if (!hasEnough || coins.length === 0) { + return yield* Effect.fail( + new ReadCoinError({ cause: `Insufficient ${coinType} balance for split ${amount}` }), + ) + } + + const target = coins[0] + const targetArg = tx.object(target.coinObjectId) + const rest = coins.slice(1).map(c => tx.object(c.coinObjectId)) + if (rest.length > 0) { + tx.mergeCoins(targetArg, rest) + } + + const [out] = tx.splitCoins(targetArg, [tx.pure.u64(amount)]) + return out + }) + /** * Read and sum all coin object balances for a given `coinType` and owner. * diff --git a/ts-sdk-sui/src/internal/sui.ts b/ts-sdk-sui/src/internal/sui.ts index 863e1d33a5..ce4561b75f 100644 --- a/ts-sdk-sui/src/internal/sui.ts +++ b/ts-sdk-sui/src/internal/sui.ts @@ -1,5 +1,5 @@ import { SuiClient, SuiClientOptions } from "@mysten/sui/client" -import { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" +import type { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" import * as Utils from "@unionlabs/sdk/Utils" import { Context, Effect, Layer, pipe } from "effect" import * as Sui from "../Sui.js" @@ -38,7 +38,7 @@ export const walletClientLayer = ( throw new Error("Invalid Sui signer: expected Ed25519Keypair") } const client = new SuiClient({ url: opts.url } satisfies SuiClientOptions) - return { client, signer: opts.signer } + return { client, signer: opts.signer, rpc: opts.url } }, catch: (err) => new Sui.CreateWalletClientError({ diff --git a/ts-sdk-sui/src/internal/zkgmClient.ts b/ts-sdk-sui/src/internal/zkgmClient.ts index 6f0526ccab..588b65ee72 100644 --- a/ts-sdk-sui/src/internal/zkgmClient.ts +++ b/ts-sdk-sui/src/internal/zkgmClient.ts @@ -10,6 +10,7 @@ import * as ClientRequest from "@unionlabs/sdk/ZkgmClientRequest" import * as ClientResponse from "@unionlabs/sdk/ZkgmClientResponse" import * as IncomingMessage from "@unionlabs/sdk/ZkgmIncomingMessage" import * as ZkgmInstruction from "@unionlabs/sdk/ZkgmInstruction" +import bs58 from "bs58" import { Match, ParseResult, pipe, Predicate } from "effect" import * as A from "effect/Array" import * as Effect from "effect/Effect" @@ -17,8 +18,24 @@ import * as Inspectable from "effect/Inspectable" import * as Option from "effect/Option" import * as S from "effect/Schema" import * as Stream from "effect/Stream" +import { toHex } from "viem" import * as Sui from "../Sui.js" +type HexAddr = `0x${string}` +const base58ToHex = (s: string): Hex => toHex(bs58.decode(s)) as Hex + +export function parseUcs03Port(raw: string): { + ucs03Address: HexAddr + module: string + relayStoreId: HexAddr +} { + return { + ucs03Address: "0xa1cfaf8c85635bef3615e59f4b653810835be05647baaed6cad8afc2bb25969b" as HexAddr, + module: "zkgm", + relayStoreId: "0xb7d2a0610ffdc3773a0953f61dd108b99397201a1fc507191f038ca3b844859e" as HexAddr, + } +} + export const fromWallet = ( opts: { client: Sui.Sui.PublicClient; wallet: Sui.Sui.WalletClient }, ): Client.ZkgmClient => @@ -108,13 +125,19 @@ export const fromWallet = ( ), ) - console.log("[@unionlabs/sdk-sui/internal/zkgmClient]", { operand }) - const tx = new Transaction() const CLOCK_OBJECT_ID = "0x6" // Sui system clock const tHeight = 0n - const module = "zkgm" // zkgm module name + const { ucs03Address: decodedUcs03, module: decodedModule, relayStoreId: relayFromPort } = + parseUcs03Port(request.ucs03Address as unknown as string) + console.log("[@unionlabs/sdk-sui/internal/zkgmClient]", { + decodedUcs03, + decodedModule, + relayFromPort, + }) + + const module = decodedModule // zkgm module name const suiParams = request.transport?.sui console.log("request.transport:", request.transport) if (!suiParams) { @@ -128,15 +151,17 @@ export const fromWallet = ( ) } - const { relayStoreId, vaultId, ibcStoreId, coins } = suiParams + const { vaultId, ibcStoreId, coins } = suiParams console.log("[@unionlabs/sdk-sui/internal/zkgmClient]", { - relayStoreId, + decodedUcs03, vaultId, ibcStoreId, coins, }) + console.log("[@unionlabs/sdk-sui/internal/zkgmClient] request:", request) + const hexToBytes = (hex: `0x${string}`): Uint8Array => { const s = hex.slice(2) const out = new Uint8Array(s.length / 2) @@ -148,7 +173,7 @@ export const fromWallet = ( // 1) begin_send(channel_id: u32, salt: vector) -> SendCtx let sendCtx = tx.moveCall({ - target: `${request.ucs03Address}::${module}::begin_send`, + target: `${decodedUcs03}::${module}::begin_send`, typeArguments: [], arguments: [ tx.pure.u32(Number(request.channelId)), @@ -157,15 +182,32 @@ export const fromWallet = ( }) // 2) For each coin: send_with_coin(relay_store, vault, ibc_store, coin, version, opcode, operand, ctx) -> SendCtx - for (const { typeArg, objectId } of coins) { + for (const { typeArg, baseAmount, objectId } of coins) { + console.log("typeArg, baseAmount objectId: ", { typeArg, baseAmount, objectId }) + const coinArg = yield* Sui.prepareCoinForAmount( + tx, + typeArg, + baseAmount, + ).pipe( + Effect.provideService(Sui.PublicClient, client), + Effect.mapError((cause) => + new ClientError.RequestError({ + reason: "Transport", + request, + cause, + description: "prepareCoinForAmount", + }) + ), + ) + console.log("coinArg: ", coinArg) sendCtx = tx.moveCall({ - target: `${request.ucs03Address}::${module}::send_with_coin`, + target: `${decodedUcs03}::${module}::send_with_coin`, typeArguments: [typeArg], arguments: [ - tx.object(relayStoreId), + tx.object(relayFromPort), tx.object(vaultId), tx.object(ibcStoreId), - tx.object(objectId), + coinArg, tx.pure.u8(Number(request.instruction.version)), tx.pure.u8(Number(request.instruction.opcode)), tx.pure.vector("u8", hexToBytes(operand as `0x${string}`)), @@ -176,40 +218,63 @@ export const fromWallet = ( // 3) end_send(ibc_store, clock, t_height: u64, timeout_ns: u64, ctx) tx.moveCall({ - target: `${request.ucs03Address}::${module}::end_send`, + target: `${decodedUcs03}::${module}::end_send`, typeArguments: [], arguments: [ tx.object(ibcStoreId), + tx.object(relayFromPort), tx.object(CLOCK_OBJECT_ID), tx.pure.u64(tHeight), tx.pure.u64(BigInt(timeoutTimestamp)), sendCtx, ], }) - // sign & execute + + // wallet.signer?.setRpcUrl(wallet.rpc); + // wallet.setRpcUrl(wallet.rpc); const submit = Effect.tryPromise({ - try: async () => - wallet.client.signAndExecuteTransaction({ - signer: wallet.signer, - transaction: tx, - }), + try: async () => { + if ((tx as any).setSender && typeof wallet.signer?.toSuiAddress === "function") { + tx.setSender(wallet.signer.toSuiAddress()) + } + + // Our wrapper may already execute + const signed = await (wallet.signer as any).signTransaction({ transactionBlock: tx }) + + if ((signed as any).executeResult) { + // Wallet already executed (signAndExecute path) + return (signed as any).executeResult + } + + // Old path: we only signed, so execute via client + const { signature, bytes } = signed as { signature: string; bytes: Uint8Array } + return wallet.client.executeTransactionBlock({ + transactionBlock: bytes, + signature, + options: { showEffects: true, showEvents: true }, + }) + }, catch: (cause) => new ClientError.RequestError({ reason: "Transport", request, cause, - description: "signAndExecuteTransaction", + description: "signTransactionBlock + executeTransactionBlock", }), }) const res = yield* submit - console.log("Res.transaction:", res.transaction) const txHash = (res.digest ?? res.transaction?.txSignatures[0] ?? "") as Hex + const convertedHex = base58ToHex(txHash) - return new ClientResponseImpl(request, client, txHash) + return new ClientResponseImpl(request, client, convertedHex) }) + .pipe( + Effect.provideService(Sui.PublicClient, opts.client), + Effect.provideService(Sui.WalletClient, opts.wallet), + ) ) /** @internal */ diff --git a/ts-sdk-sui/ts-sdk-sui.nix b/ts-sdk-sui/ts-sdk-sui.nix index fb6d383548..400040c57a 100644 --- a/ts-sdk-sui/ts-sdk-sui.nix +++ b/ts-sdk-sui/ts-sdk-sui.nix @@ -16,7 +16,7 @@ _: { "@unionlabs/sdk" "@unionlabs/sdk-sui" ]; - hash = "sha256-UPSWVyM2UxIUXeWNChXIJz+BAJbg+Sd2YCbiVFDtwjw="; + hash = "sha256-JAhQWOVoLk+0B07WbVH9lSTrzk2tVIZL+yfs7Hv1oO0="; doCheck = true; buildPhase = '' runHook preBuild diff --git a/ts-sdk/examples/ucs03-send-sui-to-union-testnet-10.ts b/ts-sdk/examples/ucs03-send-sui-to-union-testnet-10.ts index 7c924a9351..040694c371 100644 --- a/ts-sdk/examples/ucs03-send-sui-to-union-testnet-10.ts +++ b/ts-sdk/examples/ucs03-send-sui-to-union-testnet-10.ts @@ -1,7 +1,7 @@ import { Decimal } from "@cosmjs/math" import { DirectSecp256k1HdWallet } from "@cosmjs/proto-signing" import { getFullnodeUrl } from "@mysten/sui/client" -import { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" +import type { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" import { Transaction } from "@mysten/sui/transactions" import { AddressCosmosZkgm } from "@unionlabs/sdk/schema/address" import { Instruction } from "@unionlabs/sdk/ucs03" diff --git a/ts-sdk/examples/ucs03-send-union-testnet-10-to-sui-muno.ts b/ts-sdk/examples/ucs03-send-union-testnet-10-to-sui-muno.ts index adff43dd14..848661d826 100644 --- a/ts-sdk/examples/ucs03-send-union-testnet-10-to-sui-muno.ts +++ b/ts-sdk/examples/ucs03-send-union-testnet-10-to-sui-muno.ts @@ -2,7 +2,7 @@ import { Decimal } from "@cosmjs/math" import { DirectSecp256k1HdWallet } from "@cosmjs/proto-signing" import { DirectSecp256k1Wallet } from "@cosmjs/proto-signing" import { getFullnodeUrl } from "@mysten/sui/client" -import { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" +import type { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" import { Transaction } from "@mysten/sui/transactions" import { bech32, bytes, hex } from "@scure/base" import { AddressCosmosZkgm } from "@unionlabs/sdk/schema/address" diff --git a/ts-sdk/examples/ucs03-send-union-testnet-10-to-sui-unwrap.ts b/ts-sdk/examples/ucs03-send-union-testnet-10-to-sui-unwrap.ts index 99aee5268b..b5f9592472 100644 --- a/ts-sdk/examples/ucs03-send-union-testnet-10-to-sui-unwrap.ts +++ b/ts-sdk/examples/ucs03-send-union-testnet-10-to-sui-unwrap.ts @@ -2,7 +2,7 @@ import { Decimal } from "@cosmjs/math" import { DirectSecp256k1HdWallet } from "@cosmjs/proto-signing" import { DirectSecp256k1Wallet } from "@cosmjs/proto-signing" import { getFullnodeUrl } from "@mysten/sui/client" -import { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" +import type { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" import { Transaction } from "@mysten/sui/transactions" import { bech32, bytes, hex } from "@scure/base" import { AddressCosmosZkgm } from "@unionlabs/sdk/schema/address" diff --git a/ts-sdk/src/Constants.ts b/ts-sdk/src/Constants.ts index 0d23fe70ae..ffcf46062b 100644 --- a/ts-sdk/src/Constants.ts +++ b/ts-sdk/src/Constants.ts @@ -5,6 +5,7 @@ */ import { Match, Schedule } from "effect" import { UniversalChainId } from "./schema/chain.js" +import { SuiTypeTag } from "./schema/hex.js" import { TokenRawDenom } from "./schema/token.js" import * as Token from "./Token.js" import * as Ucs05 from "./Ucs05.js" @@ -14,7 +15,7 @@ import * as Ucs05 from "./Ucs05.js" * @since 2.0.0 */ interface GasDenomMetadata { - address: TokenRawDenom + address: TokenRawDenom | SuiTypeTag name: string symbol: string /** @@ -120,6 +121,13 @@ const BNB_METADATA: GasDenomMetadata = { decimals: 18, } as const +const SUI_METADATA: GasDenomMetadata = { + address: SuiTypeTag.make("0x2::sui::SUI"), + name: "SUI", + symbol: "SUI", + tickerSymbol: "SUI", + decimals: 9, +} as const /** * @category constants * @since 2.0.0 @@ -173,6 +181,9 @@ export const GAS_DENOMS: Record = { // Base [UniversalChainId.make("base.8453")]: ETH_METADATA, [UniversalChainId.make("base.84532")]: ETH_METADATA, + + // Sui + [UniversalChainId.make("sui.4c78adac")]: SUI_METADATA, } /** @@ -230,6 +241,30 @@ export const U_BANK = Token.CosmosBank.make({ address: "au" }) */ export const U_ERC20 = Token.Erc20.make({ address: "0xba5eD44733953d79717F6269357C77718C8Ba5ed" }) +/** + * @category constants + * @since 2.0.0 + */ +export const U_SUI = Token.SuiCoin.make({ + address: "650be2f4aafc86a91f506b4efc35f34af9a7fafe21e143c0f45f4f465f4d51ff::u::U", +}) + +/** + * @category constants + * @since 2.0.0 + */ +export const SUI_NATIVE_COIN_WITHOUT_0x = Token.SuiCoin.make({ + address: "0000000000000000000000000000000000000000000000000000000000000002::sui::SUI", +}) + +/** + * @category constants + * @since 2.0.0 + */ +export const SUI_NATIVE_COIN = Token.SuiCoin.make({ + address: "0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI", +}) + /** * @category constants * @since 2.0.0 @@ -244,6 +279,22 @@ export const EU_LST = Ucs05.CosmosDisplay.make({ address: "union1eueueueu9var4yhdruyzkjcsh74xzeug6ckyy60hs0vcqnzql2hq0lxc2f", }) +/** + * @category constants + * @since 2.0.0 + */ +export const SUI_ADDR = Ucs05.CosmosDisplay.make({ + address: "union1fufatgkyd23qmqlzt4avwj36kfhvjuur20pqjf8xewnx2mnhsses6dspmf", +}) + +/** + * @category constants + * @since 2.0.0 + */ +export const SUI_U_COIN = Token.SuiCoin.make({ + address: "0x650be2f4aafc86a91f506b4efc35f34af9a7fafe21e143c0f45f4f465f4d51ff::u::U", +}) + /** * @category constants * @since 2.0.0 @@ -279,3 +330,24 @@ export const EU_SOLVER_ON_UNION_METADATA = */ export const EU_SOLVER_ON_ETH_METADATA = "0x000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000014e5cf13c84c0fea3236c101bd7d743d30366e5cf10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" as const + +/** + * @category constants + * @since 2.0.0 + */ +export const SUI_SOLVER_ON_COSMOS_METADATA = + "0x000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000040756e696f6e316675666174676b79643233716d716c7a74346176776a33366b6668766a757572323070716a66387865776e78326d6e6873736573366473706d660000000000000000000000000000000000000000000000000000000000000000" as const + +/** + * @category constants + * @since 2.0.0 + */ +export const SUI_SOLVER_ON_SUI_METADATA = + "0x00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001775637330332d7a6b676d2d657363726f772d7661756c74000000000000000000" as const + +/** + * @category constants + * @since 2.0.0 + */ +export const U_SOLVER_ON_SUI_METADATA = + "0x00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000001675637330332d7a6b676d2d6f776e65642d7661756c74000000000000000000000000000000000000000000000000000000000000000000000000000000000000" as const diff --git a/ts-sdk/src/Sui.ts b/ts-sdk/src/Sui.ts index a8aa624aee..c8cd79fcce 100644 --- a/ts-sdk/src/Sui.ts +++ b/ts-sdk/src/Sui.ts @@ -9,7 +9,7 @@ */ import { bcs } from "@mysten/sui/bcs" import { getFullnodeUrl, SuiClient } from "@mysten/sui/client" -import { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" +import type { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" import { Transaction } from "@mysten/sui/transactions" import { Context, Data, Effect, flow, Layer } from "effect" import type { Address } from "viem" diff --git a/ts-sdk/src/Token.ts b/ts-sdk/src/Token.ts index 29a82b69cb..2aa30ccb8b 100644 --- a/ts-sdk/src/Token.ts +++ b/ts-sdk/src/Token.ts @@ -205,40 +205,76 @@ export const TokenFromString = S.transformOrFail( }, ) +// export const AnyFromEncoded = (rpcType: Chain.RpcType) => +// S.transformOrFail( +// Hex.Hex, +// Any, +// { +// decode: (fromA, options, ast, fromI) => { +// return Match.value(rpcType).pipe( +// Match.when("evm", () => S.decode(TokenFromString)(fromA)), +// Match.when("cosmos", () => +// pipe( +// fromA, +// S.decode(S.compose( +// Hex.StringFromHex, +// TokenFromString, +// )), +// )), +// Match.when("aptos", (fromA) => +// Effect.fail(new ParseResult.Type(ast, fromA, "Aptos not supported."))), +// Match.when("sui", () => +// pipe(fromA, S.decode(S.compose(Hex.StringFromSuiHex, TokenFromString)))), +// Match.exhaustive, +// Effect.catchTag("ParseError", (error) => +// ParseResult.fail(error.issue)), +// ) +// }, +// encode: (toI, toA) => { +// // TODO: do encode +// return Effect.succeed(Utils.ensureHex(toI.address)) +// }, +// }, +// ) + /** * @since 2.0.0 */ -export const AnyFromEncoded = (rpcType: Chain.RpcType) => - S.transformOrFail( - Hex.Hex, - Any, - { - decode: (fromA, options, ast, fromI) => { - return Match.value(rpcType).pipe( - Match.when("evm", () => S.decode(TokenFromString)(fromA)), - Match.when("cosmos", () => - pipe( - fromA, - S.decode(S.compose( - Hex.StringFromHex, - TokenFromString, - )), - )), - Match.when("aptos", (fromA) => - Effect.fail(new ParseResult.Type(ast, fromA, "Aptos not supported."))), - Match.when("sui", () => - pipe(fromA, S.decode(S.compose(Hex.StringFromHex, TokenFromString)))), - Match.exhaustive, - Effect.catchTag("ParseError", (error) => - ParseResult.fail(error.issue)), - ) - }, - encode: (toI, toA) => { - // TODO: do encode - return Effect.succeed(Utils.ensureHex(toI.address)) - }, +export const AnyFromEncoded = (rpcType: Chain.RpcType) => { + const From = rpcType === "sui" + ? S.Union(Hex.Hex, S.String) + : Hex.Hex + + return S.transformOrFail(From, Any, { + decode: (fromA, options, ast) => { + return Match.value(rpcType).pipe( + Match.when("evm", () => S.decode(TokenFromString)(fromA as string)), + Match.when("cosmos", () => + pipe( + fromA as typeof Hex.Hex.Type, + S.decode(S.compose(Hex.StringFromHex, TokenFromString)), + )), + Match.when( + "aptos", + () => Effect.fail(new ParseResult.Type(ast, fromA, "Aptos not supported.")), + ), + Match.when("sui", () => { + const s = String(fromA) + if (/^0x[0-9a-fA-F]+$/.test(s)) { + return pipe( + s as typeof Hex.Hex.Type, + S.decode(S.compose(Hex.StringFromSuiHex, TokenFromString)), + ) + } + return S.decode(TokenFromString)(s) + }), + Match.exhaustive, + Effect.catchTag("ParseError", (error) => ParseResult.fail(error.issue)), + ) }, - ) + encode: (toI) => Effect.succeed(Utils.ensureHex(toI.address)), + }) +} /** * @since 2.0.0 diff --git a/ts-sdk/src/Ucs05.ts b/ts-sdk/src/Ucs05.ts index 7c9d4ac200..3fe420b7ed 100644 --- a/ts-sdk/src/Ucs05.ts +++ b/ts-sdk/src/Ucs05.ts @@ -3,7 +3,7 @@ * * @since 2.0.0 */ -import { isValidSuiAddress, normalizeSuiAddress } from "@mysten/sui/utils" +import { isValidSuiAddress } from "@mysten/sui/utils" import { bech32, bytes } from "@scure/base" import { absurd, @@ -298,7 +298,7 @@ export const ZkgmFromAnyDisplay = S.transform( Match.tagsExhaustive({ CosmosDisplay: ({ address }) => toHex(address), EvmDisplay: ({ address }) => identity(address), - SuiDisplay: ({ address }) => identity(normalizeSuiAddress(address) as Hex), + SuiDisplay: ({ address }) => identity(address as Hex), }), ), encode: (_) => absurd(void 0 as never), @@ -313,10 +313,12 @@ export const anyDisplayToZkgm = Match.type().pipe( Match.tagsExhaustive({ CosmosDisplay: ({ address }) => S.decode(HexFromString)(address), EvmDisplay: ({ address }) => Effect.succeed(address), - SuiDisplay: ({ address }) => S.decode(HexFromString)(normalizeSuiAddress(address)), + SuiDisplay: ({ address }) => Effect.succeed(address as Hex), }), ) +const asCanonical = (hex: Hex) => AddressCanonicalBytes.make(hex) + /** * @category transformations * @since 2.0.0 @@ -329,10 +331,9 @@ export const anyDisplayToCanonical = Match.type().pipe( const { bytes } = bech32.decodeToBytes(address) const result = AddressCanonicalBytes.make(toHex(bytes)) return result - console.log("bytes", { result }) }, EvmDisplay: ({ address }) => AddressCanonicalBytes.make(address), - SuiDisplay: ({ address }) => AddressCanonicalBytes.make(normalizeSuiAddress(address) as Hex), + SuiDisplay: ({ address }) => asCanonical(address as Hex), // brand the 0x… Sui address }), ) /** diff --git a/ts-sdk/src/ZkgmClientRequest.ts b/ts-sdk/src/ZkgmClientRequest.ts index 56fa2b06b6..f90091e4dd 100644 --- a/ts-sdk/src/ZkgmClientRequest.ts +++ b/ts-sdk/src/ZkgmClientRequest.ts @@ -20,15 +20,15 @@ export namespace Transport { * @since 2.0.0 */ export interface Sui { - readonly relayStoreId: string readonly vaultId: string readonly ibcStoreId: string /** One or more coins a user wants to spend. Keep array for multi-coin support. */ readonly coins: ReadonlyArray<{ /** e.g. "0x2::sui::SUI" or a custom coin type */ readonly typeArg: string + readonly baseAmount: bigint /** Concrete coin object id(s) for spending */ - readonly objectId: string + readonly objectId?: string }> } diff --git a/ts-sdk/src/generated/graphql-env.d.ts b/ts-sdk/src/generated/graphql-env.d.ts index b9625b1aba..1888583f21 100644 --- a/ts-sdk/src/generated/graphql-env.d.ts +++ b/ts-sdk/src/generated/graphql-env.d.ts @@ -1,6 +1,87 @@ /* eslint-disable */ /* prettier-ignore */ +export type introspection_types = { + 'Boolean': unknown; + 'ComparisonOp': { name: 'ComparisonOp'; enumValues: 'lt' | 'gt'; }; + 'DateTime': unknown; + 'Float': unknown; + 'Int': unknown; + 'Int_comparison_exp': { kind: 'INPUT_OBJECT'; name: 'Int_comparison_exp'; isOneOf: false; inputFields: [{ name: '_eq'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; }; defaultValue: null }]; }; + 'JSON': unknown; + 'LatencyPercentiles': { kind: 'OBJECT'; name: 'LatencyPercentiles'; fields: { 'median': { name: 'median'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Float'; ofType: null; }; } }; 'p5': { name: 'p5'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Float'; ofType: null; }; } }; 'p95': { name: 'p95'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Float'; ofType: null; }; } }; }; }; + 'NaiveDate': unknown; + 'OrderBy': { name: 'OrderBy'; enumValues: 'asc' | 'asc_nulls_first' | 'asc_nulls_last' | 'desc' | 'desc_nulls_first' | 'desc_nulls_last'; }; + 'Query': { kind: 'OBJECT'; name: 'Query'; fields: { 'dashboard_balance_current': { name: 'dashboard_balance_current'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'dashboard_balance_current_type'; ofType: null; }; }; }; } }; 'dashboard_transfer_count_by_chain': { name: 'dashboard_transfer_count_by_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'dashboard_count_by_chain_type'; ofType: null; }; }; }; } }; 'dashboard_transfer_days_count_by_chain': { name: 'dashboard_transfer_days_count_by_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'dashboard_days_by_chain_type'; ofType: null; }; }; }; } }; 'v2_bonds': { name: 'v2_bonds'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_bond_type'; ofType: null; }; }; }; } }; 'v2_chains': { name: 'v2_chains'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; }; }; } }; 'v2_channels': { name: 'v2_channels'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_channel_type'; ofType: null; }; }; }; } }; 'v2_clients': { name: 'v2_clients'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_client_type'; ofType: null; }; }; }; } }; 'v2_connections': { name: 'v2_connections'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_connection_type'; ofType: null; }; }; }; } }; 'v2_dust_withdraws': { name: 'v2_dust_withdraws'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_dust_withdraw_type'; ofType: null; }; }; }; } }; 'v2_errors': { name: 'v2_errors'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_error_type'; ofType: null; }; }; }; } }; 'v2_health_check': { name: 'v2_health_check'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_health_check_type'; ofType: null; }; }; }; } }; 'v2_instructions': { name: 'v2_instructions'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_instruction_type'; ofType: null; }; }; }; } }; 'v2_packets': { name: 'v2_packets'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_packet_type'; ofType: null; }; }; }; } }; 'v2_stats_count': { name: 'v2_stats_count'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_stats_type'; ofType: null; }; }; }; } }; 'v2_stats_latency': { name: 'v2_stats_latency'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_stats_latency_type'; ofType: null; }; }; }; } }; 'v2_stats_packets_chain': { name: 'v2_stats_packets_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_stats_packets_chain_type'; ofType: null; }; }; }; } }; 'v2_stats_packets_daily_count': { name: 'v2_stats_packets_daily_count'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_stats_daily_count_type'; ofType: null; }; }; }; } }; 'v2_stats_transfers_chain': { name: 'v2_stats_transfers_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_stats_transfers_chain_type'; ofType: null; }; }; }; } }; 'v2_stats_transfers_daily_count': { name: 'v2_stats_transfers_daily_count'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_stats_daily_count_type'; ofType: null; }; }; }; } }; 'v2_tokens': { name: 'v2_tokens'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; }; }; }; } }; 'v2_transfers': { name: 'v2_transfers'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_transfer_type'; ofType: null; }; }; }; } }; 'v2_unbonds': { name: 'v2_unbonds'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_unbond_type'; ofType: null; }; }; }; } }; 'v2_util_get_address_types_for_display_address': { name: 'v2_util_get_address_types_for_display_address'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_util_get_address_types_for_display_address_type'; ofType: null; }; }; }; } }; 'v2_util_get_transfer_request_details': { name: 'v2_util_get_transfer_request_details'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_util_get_transfer_request_details_type'; ofType: null; }; }; }; } }; 'v2_withdraws': { name: 'v2_withdraws'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_withdraw_type'; ofType: null; }; }; }; } }; }; }; + 'String': unknown; + 'String_comparison_exp': { kind: 'INPUT_OBJECT'; name: 'String_comparison_exp'; isOneOf: false; inputFields: [{ name: '_eq'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; + 'dashboard_balance_current_args': { kind: 'INPUT_OBJECT'; name: 'dashboard_balance_current_args'; isOneOf: false; inputFields: [{ name: 'p_contract_address_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_phase'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_wallet_addresses_canonical'; type: { kind: 'SCALAR'; name: 'jsonb'; ofType: null; }; defaultValue: null }]; }; + 'dashboard_balance_current_type': { kind: 'OBJECT'; name: 'dashboard_balance_current_type'; fields: { 'balance': { name: 'balance'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'balance_usd': { name: 'balance_usd'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'contract_address_canonical': { name: 'contract_address_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'token': { name: 'token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'universal_chain_id': { name: 'universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'wallet_address_canonical': { name: 'wallet_address_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'weighted_balance': { name: 'weighted_balance'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'weighted_balance_usd': { name: 'weighted_balance_usd'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'dashboard_count_by_chain_args': { kind: 'INPUT_OBJECT'; name: 'dashboard_count_by_chain_args'; isOneOf: false; inputFields: [{ name: 'p_addresses_dashboard'; type: { kind: 'SCALAR'; name: 'jsonb'; ofType: null; }; defaultValue: null }, { name: 'p_phase'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; + 'dashboard_count_by_chain_type': { kind: 'OBJECT'; name: 'dashboard_count_by_chain_type'; fields: { 'count': { name: 'count'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'phase': { name: 'phase'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'universal_chain_id': { name: 'universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'dashboard_count_by_chain_type_order_by': { kind: 'INPUT_OBJECT'; name: 'dashboard_count_by_chain_type_order_by'; isOneOf: false; inputFields: [{ name: 'phase'; type: { kind: 'ENUM'; name: 'OrderBy'; ofType: null; }; defaultValue: "null" }, { name: 'universal_chain_id'; type: { kind: 'ENUM'; name: 'OrderBy'; ofType: null; }; defaultValue: "null" }]; }; + 'dashboard_days_by_chain_args': { kind: 'INPUT_OBJECT'; name: 'dashboard_days_by_chain_args'; isOneOf: false; inputFields: [{ name: 'p_addresses_dashboard'; type: { kind: 'SCALAR'; name: 'jsonb'; ofType: null; }; defaultValue: null }]; }; + 'dashboard_days_by_chain_type': { kind: 'OBJECT'; name: 'dashboard_days_by_chain_type'; fields: { 'day_count': { name: 'day_count'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'universal_chain_id': { name: 'universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'dashboard_days_by_chain_type_order_by': { kind: 'INPUT_OBJECT'; name: 'dashboard_days_by_chain_type_order_by'; isOneOf: false; inputFields: [{ name: 'universal_chain_id'; type: { kind: 'ENUM'; name: 'OrderBy'; ofType: null; }; defaultValue: "null" }]; }; + 'jsonb': unknown; + 'v2_bond_type': { kind: 'OBJECT'; name: 'v2_bond_type'; fields: { 'base_amount': { name: 'base_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token': { name: 'base_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token_meta': { name: 'base_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'bond_recv_timestamp': { name: 'bond_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'bond_recv_transaction_hash': { name: 'bond_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'bond_send_timestamp': { name: 'bond_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'bond_send_transaction_hash': { name: 'bond_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'bond_success': { name: 'bond_success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'bond_timeout_timestamp': { name: 'bond_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'bond_timeout_transaction_hash': { name: 'bond_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'bond_traces': { name: 'bond_traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; 'delivery_packet_hash': { name: 'delivery_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_recv_timestamp': { name: 'delivery_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_recv_transaction_hash': { name: 'delivery_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_send_timestamp': { name: 'delivery_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_send_transaction_hash': { name: 'delivery_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_success': { name: 'delivery_success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'delivery_timeout_timestamp': { name: 'delivery_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_timeout_transaction_hash': { name: 'delivery_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_traces': { name: 'delivery_traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; 'destination_chain': { name: 'destination_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_hash': { name: 'packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_shape': { name: 'packet_shape'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_amount': { name: 'quote_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_token': { name: 'quote_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_token_meta': { name: 'quote_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'receiver_canonical': { name: 'receiver_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'receiver_display': { name: 'receiver_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'receiver_zkgm': { name: 'receiver_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_amount': { name: 'remote_base_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_token': { name: 'remote_base_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_token_meta': { name: 'remote_base_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'remote_quote_amount': { name: 'remote_quote_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_quote_token': { name: 'remote_quote_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_quote_token_meta': { name: 'remote_quote_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'remote_universal_chain_id': { name: 'remote_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_canonical': { name: 'sender_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_display': { name: 'sender_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_zkgm': { name: 'sender_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_chain': { name: 'source_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_canonical': { name: 'staker_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_display': { name: 'staker_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_zkgm': { name: 'staker_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_bonds_args': { kind: 'INPUT_OBJECT'; name: 'v2_bonds_args'; isOneOf: false; inputFields: [{ name: 'p_addresses_canonical'; type: { kind: 'SCALAR'; name: 'jsonb'; ofType: null; }; defaultValue: null }, { name: 'p_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_network'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; + 'v2_chain_edition': { kind: 'OBJECT'; name: 'v2_chain_edition'; fields: { 'environment': { name: 'environment'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'name': { name: 'name'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_chain_features': { kind: 'OBJECT'; name: 'v2_chain_features'; fields: { 'channel_list': { name: 'channel_list'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'connection_list': { name: 'connection_list'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'environment': { name: 'environment'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'index_status': { name: 'index_status'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'packet_list': { name: 'packet_list'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'transfer_list': { name: 'transfer_list'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'transfer_submission': { name: 'transfer_submission'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; }; }; + 'v2_chain_features_bool_exp': { kind: 'INPUT_OBJECT'; name: 'v2_chain_features_bool_exp'; isOneOf: false; inputFields: [{ name: 'environment'; type: { kind: 'INPUT_OBJECT'; name: 'String_comparison_exp'; ofType: null; }; defaultValue: "null" }]; }; + 'v2_chain_status_type': { kind: 'OBJECT'; name: 'v2_chain_status_type'; fields: { 'height': { name: 'height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'status': { name: 'status'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'timestamp': { name: 'timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'tip_age_seconds': { name: 'tip_age_seconds'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; }; }; + 'v2_chain_type': { kind: 'OBJECT'; name: 'v2_chain_type'; fields: { 'addr_prefix': { name: 'addr_prefix'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'chain_id': { name: 'chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'display_name': { name: 'display_name'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'editions': { name: 'editions'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_edition'; ofType: null; }; }; }; } }; 'explorers': { name: 'explorers'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_explorers'; ofType: null; }; }; }; } }; 'features': { name: 'features'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_features'; ofType: null; }; }; }; } }; 'logo_uri': { name: 'logo_uri'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'minter_address_display': { name: 'minter_address_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'rpc_type': { name: 'rpc_type'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'rpcs': { name: 'rpcs'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_rpcs'; ofType: null; }; }; }; } }; 'status': { name: 'status'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_status_type'; ofType: null; }; } }; 'testnet': { name: 'testnet'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'universal_chain_id': { name: 'universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_chains_args': { kind: 'INPUT_OBJECT'; name: 'v2_chains_args'; isOneOf: false; inputFields: [{ name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; + 'v2_channel_fee': { kind: 'OBJECT'; name: 'v2_channel_fee'; fields: { 'action': { name: 'action'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'fee': { name: 'fee'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_channel_type': { kind: 'OBJECT'; name: 'v2_channel_type'; fields: { 'destination_chain': { name: 'destination_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'destination_channel_id': { name: 'destination_channel_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'destination_client_id': { name: 'destination_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'destination_connection_id': { name: 'destination_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'destination_port_id': { name: 'destination_port_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'fees': { name: 'fees'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_channel_fee'; ofType: null; }; }; }; } }; 'sla': { name: 'sla'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_chain': { name: 'source_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'source_channel_id': { name: 'source_channel_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'source_client_id': { name: 'source_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'source_connection_id': { name: 'source_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'source_port_id': { name: 'source_port_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'tags': { name: 'tags'; type: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'String'; ofType: null; }; }; } }; 'version': { name: 'version'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_channels_args': { kind: 'INPUT_OBJECT'; name: 'v2_channels_args'; isOneOf: false; inputFields: [{ name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_destination_channel_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_destination_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_destination_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_destination_port_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_recommended'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_source_channel_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_source_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_source_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_source_port_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_tags'; type: { kind: 'SCALAR'; name: 'jsonb'; ofType: null; }; defaultValue: null }, { name: 'p_version'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; + 'v2_client_status_type': { kind: 'OBJECT'; name: 'v2_client_status_type'; fields: { 'block_hash': { name: 'block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'counterparty_height': { name: 'counterparty_height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'height': { name: 'height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'timestamp': { name: 'timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'transaction_hash': { name: 'transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_client_type': { kind: 'OBJECT'; name: 'v2_client_type'; fields: { 'chain': { name: 'chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'client_id': { name: 'client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'counterparty_chain': { name: 'counterparty_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'counterparty_universal_chain_id': { name: 'counterparty_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'status': { name: 'status'; type: { kind: 'OBJECT'; name: 'v2_client_status_type'; ofType: null; } }; 'universal_chain_id': { name: 'universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_clients_args': { kind: 'INPUT_OBJECT'; name: 'v2_clients_args'; isOneOf: false; inputFields: [{ name: 'p_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_counterparty_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; + 'v2_connection_type': { kind: 'OBJECT'; name: 'v2_connection_type'; fields: { 'destination_chain': { name: 'destination_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'destination_client_id': { name: 'destination_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'destination_connection_id': { name: 'destination_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_chain': { name: 'source_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'source_client_id': { name: 'source_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'source_connection_id': { name: 'source_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_connections_args': { kind: 'INPUT_OBJECT'; name: 'v2_connections_args'; isOneOf: false; inputFields: [{ name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_destination_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_destination_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_source_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_source_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; + 'v2_dust_withdraw_type': { kind: 'OBJECT'; name: 'v2_dust_withdraw_type'; fields: { 'delivery_packet_hash': { name: 'delivery_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_recv_timestamp': { name: 'delivery_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_recv_transaction_hash': { name: 'delivery_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_send_timestamp': { name: 'delivery_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_send_transaction_hash': { name: 'delivery_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_success': { name: 'delivery_success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'delivery_timeout_timestamp': { name: 'delivery_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_timeout_transaction_hash': { name: 'delivery_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_traces': { name: 'delivery_traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; 'destination_chain': { name: 'destination_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'dust_withdraw_recv_timestamp': { name: 'dust_withdraw_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'dust_withdraw_recv_transaction_hash': { name: 'dust_withdraw_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'dust_withdraw_send_timestamp': { name: 'dust_withdraw_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'dust_withdraw_send_transaction_hash': { name: 'dust_withdraw_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'dust_withdraw_success': { name: 'dust_withdraw_success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'dust_withdraw_timeout_timestamp': { name: 'dust_withdraw_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'dust_withdraw_timeout_transaction_hash': { name: 'dust_withdraw_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'dust_withdraw_traces': { name: 'dust_withdraw_traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; 'packet_hash': { name: 'packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_shape': { name: 'packet_shape'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_amount': { name: 'quote_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_token': { name: 'quote_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_token_meta': { name: 'quote_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'receiver_canonical': { name: 'receiver_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'receiver_display': { name: 'receiver_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'receiver_zkgm': { name: 'receiver_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_amount': { name: 'remote_base_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_token': { name: 'remote_base_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_token_meta': { name: 'remote_base_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'remote_universal_chain_id': { name: 'remote_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_chain': { name: 'source_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_canonical': { name: 'staker_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_display': { name: 'staker_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_zkgm': { name: 'staker_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_dust_withdraws_args': { kind: 'INPUT_OBJECT'; name: 'v2_dust_withdraws_args'; isOneOf: false; inputFields: [{ name: 'p_addresses_canonical'; type: { kind: 'SCALAR'; name: 'jsonb'; ofType: null; }; defaultValue: null }, { name: 'p_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_network'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; + 'v2_error_type': { kind: 'OBJECT'; name: 'v2_error_type'; fields: { 'detail': { name: 'detail'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'hint': { name: 'hint'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'message': { name: 'message'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'union_error_code': { name: 'union_error_code'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_explorers': { kind: 'OBJECT'; name: 'v2_explorers'; fields: { 'address_url': { name: 'address_url'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'block_url': { name: 'block_url'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'description': { name: 'description'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'display_name': { name: 'display_name'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'home_url': { name: 'home_url'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'logo_uri': { name: 'logo_uri'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'name': { name: 'name'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'tx_url': { name: 'tx_url'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_health_check_type': { kind: 'OBJECT'; name: 'v2_health_check_type'; fields: { 'environment': { name: 'environment'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'last_update': { name: 'last_update'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'status': { name: 'status'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_instruction_type': { kind: 'OBJECT'; name: 'v2_instruction_type'; fields: { 'acknowledgement': { name: 'acknowledgement'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'channel_version': { name: 'channel_version'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'data': { name: 'data'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'decoded': { name: 'decoded'; type: { kind: 'SCALAR'; name: 'JSON'; ofType: null; } }; 'decoded_flattened': { name: 'decoded_flattened'; type: { kind: 'SCALAR'; name: 'JSON'; ofType: null; } }; 'destination_chain': { name: 'destination_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'destination_chain_id': { name: 'destination_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'destination_channel_id': { name: 'destination_channel_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'destination_client_id': { name: 'destination_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'destination_connection_id': { name: 'destination_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'destination_port_id': { name: 'destination_port_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'instruction': { name: 'instruction'; type: { kind: 'SCALAR'; name: 'JSON'; ofType: null; } }; 'instruction_hash': { name: 'instruction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'instruction_index': { name: 'instruction_index'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'instruction_path': { name: 'instruction_path'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'instruction_type': { name: 'instruction_type'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'internal_destination_chain_id': { name: 'internal_destination_chain_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'internal_source_chain_id': { name: 'internal_source_chain_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'opcode': { name: 'opcode'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'operand': { name: 'operand'; type: { kind: 'SCALAR'; name: 'JSON'; ofType: null; } }; 'packet_ack_block_hash': { name: 'packet_ack_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_ack_height': { name: 'packet_ack_height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_ack_maker': { name: 'packet_ack_maker'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_ack_timestamp': { name: 'packet_ack_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'packet_ack_transaction_hash': { name: 'packet_ack_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_hash': { name: 'packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_recv_block_hash': { name: 'packet_recv_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_recv_height': { name: 'packet_recv_height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_recv_maker': { name: 'packet_recv_maker'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_recv_maker_msg': { name: 'packet_recv_maker_msg'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_recv_timestamp': { name: 'packet_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'packet_recv_transaction_hash': { name: 'packet_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_send_block_hash': { name: 'packet_send_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_send_height': { name: 'packet_send_height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_send_timestamp': { name: 'packet_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'packet_send_transaction_hash': { name: 'packet_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_timeout_block_hash': { name: 'packet_timeout_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_timeout_height': { name: 'packet_timeout_height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_timeout_maker': { name: 'packet_timeout_maker'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_timeout_timestamp': { name: 'packet_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'packet_timeout_transaction_hash': { name: 'packet_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'path': { name: 'path'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'salt': { name: 'salt'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_chain': { name: 'source_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'source_channel_id': { name: 'source_channel_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'source_client_id': { name: 'source_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'source_connection_id': { name: 'source_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'source_port_id': { name: 'source_port_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'status': { name: 'status'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'structure': { name: 'structure'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'success': { name: 'success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'timeout_height': { name: 'timeout_height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'timeout_timestamp': { name: 'timeout_timestamp'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'version': { name: 'version'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'write_ack_block_hash': { name: 'write_ack_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'write_ack_height': { name: 'write_ack_height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'write_ack_timestamp': { name: 'write_ack_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'write_ack_transaction_hash': { name: 'write_ack_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_instructions_args': { kind: 'INPUT_OBJECT'; name: 'v2_instructions_args'; isOneOf: false; inputFields: [{ name: 'p_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_multiplex_contract_address'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_multiplex_sender'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_network'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; + 'v2_packet_type': { kind: 'OBJECT'; name: 'v2_packet_type'; fields: { 'acknowledgement': { name: 'acknowledgement'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'channel_version': { name: 'channel_version'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'data': { name: 'data'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'decoded': { name: 'decoded'; type: { kind: 'SCALAR'; name: 'JSON'; ofType: null; } }; 'decoded_flattened': { name: 'decoded_flattened'; type: { kind: 'SCALAR'; name: 'JSON'; ofType: null; } }; 'destination_chain': { name: 'destination_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'destination_chain_id': { name: 'destination_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'destination_channel_id': { name: 'destination_channel_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'destination_client_id': { name: 'destination_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'destination_connection_id': { name: 'destination_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'destination_port_id': { name: 'destination_port_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'internal_destination_chain_id': { name: 'internal_destination_chain_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'internal_source_chain_id': { name: 'internal_source_chain_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'packet_ack_block_hash': { name: 'packet_ack_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_ack_height': { name: 'packet_ack_height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_ack_maker': { name: 'packet_ack_maker'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_ack_timestamp': { name: 'packet_ack_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'packet_ack_transaction_hash': { name: 'packet_ack_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_hash': { name: 'packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_recv_block_hash': { name: 'packet_recv_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_recv_height': { name: 'packet_recv_height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_recv_maker': { name: 'packet_recv_maker'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_recv_maker_msg': { name: 'packet_recv_maker_msg'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_recv_timestamp': { name: 'packet_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'packet_recv_transaction_hash': { name: 'packet_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_send_block_hash': { name: 'packet_send_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_send_height': { name: 'packet_send_height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_send_timestamp': { name: 'packet_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'packet_send_transaction_hash': { name: 'packet_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_timeout_block_hash': { name: 'packet_timeout_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_timeout_height': { name: 'packet_timeout_height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_timeout_maker': { name: 'packet_timeout_maker'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_timeout_timestamp': { name: 'packet_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'packet_timeout_transaction_hash': { name: 'packet_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_chain': { name: 'source_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'source_channel_id': { name: 'source_channel_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'source_client_id': { name: 'source_client_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'source_connection_id': { name: 'source_connection_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'source_port_id': { name: 'source_port_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'status': { name: 'status'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'structure': { name: 'structure'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'success': { name: 'success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'timeout_height': { name: 'timeout_height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'timeout_timestamp': { name: 'timeout_timestamp'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'traces': { name: 'traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; 'write_ack_block_hash': { name: 'write_ack_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'write_ack_height': { name: 'write_ack_height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'write_ack_timestamp': { name: 'write_ack_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'write_ack_transaction_hash': { name: 'write_ack_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_packets_args': { kind: 'INPUT_OBJECT'; name: 'v2_packets_args'; isOneOf: false; inputFields: [{ name: 'p_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_exceeding_sla'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_network'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_packet_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; + 'v2_rpcs': { kind: 'OBJECT'; name: 'v2_rpcs'; fields: { 'contact': { name: 'contact'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'description': { name: 'description'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'type': { name: 'type'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'url': { name: 'url'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_stats_daily_count_type': { kind: 'OBJECT'; name: 'v2_stats_daily_count_type'; fields: { 'count': { name: 'count'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'day_date': { name: 'day_date'; type: { kind: 'SCALAR'; name: 'NaiveDate'; ofType: null; } }; }; }; + 'v2_stats_latency_args': { kind: 'INPUT_OBJECT'; name: 'v2_stats_latency_args'; isOneOf: false; inputFields: [{ name: 'p_destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_phase'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; + 'v2_stats_latency_type': { kind: 'OBJECT'; name: 'v2_stats_latency_type'; fields: { 'secs_until_packet_ack': { name: 'secs_until_packet_ack'; type: { kind: 'OBJECT'; name: 'LatencyPercentiles'; ofType: null; } }; 'secs_until_packet_recv': { name: 'secs_until_packet_recv'; type: { kind: 'OBJECT'; name: 'LatencyPercentiles'; ofType: null; } }; 'secs_until_write_ack': { name: 'secs_until_write_ack'; type: { kind: 'OBJECT'; name: 'LatencyPercentiles'; ofType: null; } }; }; }; + 'v2_stats_packets_chain_args': { kind: 'INPUT_OBJECT'; name: 'v2_stats_packets_chain_args'; isOneOf: false; inputFields: [{ name: 'p_days_back'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; + 'v2_stats_packets_chain_type': { kind: 'OBJECT'; name: 'v2_stats_packets_chain_type'; fields: { 'day_date': { name: 'day_date'; type: { kind: 'SCALAR'; name: 'NaiveDate'; ofType: null; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'total_packets': { name: 'total_packets'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_stats_packets_daily_count_args': { kind: 'INPUT_OBJECT'; name: 'v2_stats_packets_daily_count_args'; isOneOf: false; inputFields: [{ name: 'p_days_back'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }]; }; + 'v2_stats_transfers_chain_args': { kind: 'INPUT_OBJECT'; name: 'v2_stats_transfers_chain_args'; isOneOf: false; inputFields: [{ name: 'p_days_back'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; + 'v2_stats_transfers_chain_type': { kind: 'OBJECT'; name: 'v2_stats_transfers_chain_type'; fields: { 'day_date': { name: 'day_date'; type: { kind: 'SCALAR'; name: 'NaiveDate'; ofType: null; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'total_transfers': { name: 'total_transfers'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_stats_transfers_daily_count_args': { kind: 'INPUT_OBJECT'; name: 'v2_stats_transfers_daily_count_args'; isOneOf: false; inputFields: [{ name: 'p_days_back'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }]; }; + 'v2_stats_type': { kind: 'OBJECT'; name: 'v2_stats_type'; fields: { 'name': { name: 'name'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'value': { name: 'value'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_token_meta': { kind: 'OBJECT'; name: 'v2_token_meta'; fields: { 'bucket': { name: 'bucket'; type: { kind: 'OBJECT'; name: 'v2_token_meta_bucket'; ofType: null; } }; 'chain': { name: 'chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'denom': { name: 'denom'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'rank': { name: 'rank'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'representations': { name: 'representations'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_token_meta_representations'; ofType: null; }; }; }; } }; 'universal_chain_id': { name: 'universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'wrapping': { name: 'wrapping'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_token_meta_wrapping'; ofType: null; }; }; }; } }; }; }; + 'v2_token_meta_bucket': { kind: 'OBJECT'; name: 'v2_token_meta_bucket'; fields: { 'capacity': { name: 'capacity'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'chain': { name: 'chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'denom': { name: 'denom'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'refill_rate': { name: 'refill_rate'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_token_meta_order_by': { kind: 'INPUT_OBJECT'; name: 'v2_token_meta_order_by'; isOneOf: false; inputFields: [{ name: 'rank'; type: { kind: 'ENUM'; name: 'OrderBy'; ofType: null; }; defaultValue: "null" }]; }; + 'v2_token_meta_representation_sources': { kind: 'OBJECT'; name: 'v2_token_meta_representation_sources'; fields: { 'chain': { name: 'chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'decimals': { name: 'decimals'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'denom': { name: 'denom'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'name': { name: 'name'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source': { name: 'source'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_token_meta_sources'; ofType: null; }; } }; 'symbol': { name: 'symbol'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'update_timestamp': { name: 'update_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; }; }; + 'v2_token_meta_representations': { kind: 'OBJECT'; name: 'v2_token_meta_representations'; fields: { 'chain': { name: 'chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'decimals': { name: 'decimals'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'denom': { name: 'denom'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'logo_uri': { name: 'logo_uri'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'name': { name: 'name'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sources': { name: 'sources'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_token_meta_representation_sources'; ofType: null; }; }; }; } }; 'symbol': { name: 'symbol'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_token_meta_sources': { kind: 'OBJECT'; name: 'v2_token_meta_sources'; fields: { 'logo_uri': { name: 'logo_uri'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'name': { name: 'name'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_uri': { name: 'source_uri'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_token_meta_wrapping': { kind: 'OBJECT'; name: 'v2_token_meta_wrapping'; fields: { 'destination_channel_id': { name: 'destination_channel_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'index': { name: 'index'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'unwrapped_chain': { name: 'unwrapped_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'unwrapped_denom': { name: 'unwrapped_denom'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'wrapped_chain': { name: 'wrapped_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'wrapped_denom': { name: 'wrapped_denom'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'wrapper': { name: 'wrapper'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_token_meta_wrapping_bool_exp': { kind: 'INPUT_OBJECT'; name: 'v2_token_meta_wrapping_bool_exp'; isOneOf: false; inputFields: [{ name: 'destination_channel_id'; type: { kind: 'INPUT_OBJECT'; name: 'Int_comparison_exp'; ofType: null; }; defaultValue: "null" }]; }; + 'v2_tokens_args': { kind: 'INPUT_OBJECT'; name: 'v2_tokens_args'; isOneOf: false; inputFields: [{ name: 'p_denom'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_whitelist'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; }; defaultValue: null }]; }; + 'v2_traces_type': { kind: 'OBJECT'; name: 'v2_traces_type'; fields: { 'block_hash': { name: 'block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'chain': { name: 'chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'event_index': { name: 'event_index'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'height': { name: 'height'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'timestamp': { name: 'timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'transaction_hash': { name: 'transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'type': { name: 'type'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'universal_chain_id': { name: 'universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_transfer_type': { kind: 'OBJECT'; name: 'v2_transfer_type'; fields: { 'base_amount': { name: 'base_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token': { name: 'base_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token_decimals': { name: 'base_token_decimals'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'base_token_meta': { name: 'base_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'base_token_name': { name: 'base_token_name'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token_path': { name: 'base_token_path'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token_symbol': { name: 'base_token_symbol'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'destination_chain': { name: 'destination_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'fee_amount': { name: 'fee_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'fee_token': { name: 'fee_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'fee_token_meta': { name: 'fee_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'fee_type': { name: 'fee_type'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_hash': { name: 'packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_shape': { name: 'packet_shape'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_amount': { name: 'quote_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_token': { name: 'quote_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_token_meta': { name: 'quote_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'receiver_canonical': { name: 'receiver_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'receiver_display': { name: 'receiver_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'receiver_zkgm': { name: 'receiver_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_canonical': { name: 'sender_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_display': { name: 'sender_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_zkgm': { name: 'sender_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_chain': { name: 'source_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'success': { name: 'success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'traces': { name: 'traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; 'transfer_index': { name: 'transfer_index'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'transfer_recv_timestamp': { name: 'transfer_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'transfer_recv_transaction_hash': { name: 'transfer_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'transfer_send_timestamp': { name: 'transfer_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'transfer_send_transaction_hash': { name: 'transfer_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'transfer_timeout_timestamp': { name: 'transfer_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'transfer_timeout_transaction_hash': { name: 'transfer_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'wrap_direction': { name: 'wrap_direction'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_transfers_args': { kind: 'INPUT_OBJECT'; name: 'v2_transfers_args'; isOneOf: false; inputFields: [{ name: 'p_addresses_canonical'; type: { kind: 'SCALAR'; name: 'jsonb'; ofType: null; }; defaultValue: null }, { name: 'p_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_network'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_transfer_index'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }]; }; + 'v2_unbond_type': { kind: 'OBJECT'; name: 'v2_unbond_type'; fields: { 'base_amount': { name: 'base_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token': { name: 'base_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'base_token_meta': { name: 'base_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'batch': { name: 'batch'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'destination_chain': { name: 'destination_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_hash': { name: 'packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_shape': { name: 'packet_shape'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_canonical': { name: 'sender_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_display': { name: 'sender_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sender_zkgm': { name: 'sender_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_chain': { name: 'source_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_canonical': { name: 'staker_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_display': { name: 'staker_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_zkgm': { name: 'staker_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'success': { name: 'success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'traces': { name: 'traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; 'unbond_recv_timestamp': { name: 'unbond_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'unbond_recv_transaction_hash': { name: 'unbond_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'unbond_send_timestamp': { name: 'unbond_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'unbond_send_transaction_hash': { name: 'unbond_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'unbond_timeout_timestamp': { name: 'unbond_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'unbond_timeout_transaction_hash': { name: 'unbond_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'withdraw_packet_hash': { name: 'withdraw_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_unbonds_args': { kind: 'INPUT_OBJECT'; name: 'v2_unbonds_args'; isOneOf: false; inputFields: [{ name: 'p_addresses_canonical'; type: { kind: 'SCALAR'; name: 'jsonb'; ofType: null; }; defaultValue: null }, { name: 'p_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_network'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; + 'v2_util_get_address_types_for_display_address_args': { kind: 'INPUT_OBJECT'; name: 'v2_util_get_address_types_for_display_address_args'; isOneOf: false; inputFields: [{ name: 'p_display_address'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_chain_type'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; + 'v2_util_get_address_types_for_display_address_type': { kind: 'OBJECT'; name: 'v2_util_get_address_types_for_display_address_type'; fields: { 'canonical': { name: 'canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'display': { name: 'display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'zkgm': { name: 'zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_util_get_transfer_request_details_args': { kind: 'INPUT_OBJECT'; name: 'v2_util_get_transfer_request_details_args'; isOneOf: false; inputFields: [{ name: 'p_source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_base_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; + 'v2_util_get_transfer_request_details_type': { kind: 'OBJECT'; name: 'v2_util_get_transfer_request_details_type'; fields: { 'already_exists': { name: 'already_exists'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'destination_channel_id': { name: 'destination_channel_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'quote_token': { name: 'quote_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_channel_id': { name: 'source_channel_id'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; } }; 'wrap_direction': { name: 'wrap_direction'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; }; }; + 'v2_withdraw_type': { kind: 'OBJECT'; name: 'v2_withdraw_type'; fields: { 'batches': { name: 'batches'; type: { kind: 'SCALAR'; name: 'JSON'; ofType: null; } }; 'delivery_packet_hash': { name: 'delivery_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_recv_timestamp': { name: 'delivery_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_recv_transaction_hash': { name: 'delivery_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_send_timestamp': { name: 'delivery_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_send_transaction_hash': { name: 'delivery_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_success': { name: 'delivery_success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'delivery_timeout_timestamp': { name: 'delivery_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'delivery_timeout_transaction_hash': { name: 'delivery_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'delivery_traces': { name: 'delivery_traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; 'destination_chain': { name: 'destination_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'destination_universal_chain_id': { name: 'destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_hash': { name: 'packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'packet_shape': { name: 'packet_shape'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_amount': { name: 'quote_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_token': { name: 'quote_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'quote_token_meta': { name: 'quote_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'receiver_canonical': { name: 'receiver_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'receiver_display': { name: 'receiver_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'receiver_zkgm': { name: 'receiver_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_amount': { name: 'remote_base_amount'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_token': { name: 'remote_base_token'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'remote_base_token_meta': { name: 'remote_base_token_meta'; type: { kind: 'OBJECT'; name: 'v2_token_meta'; ofType: null; } }; 'remote_universal_chain_id': { name: 'remote_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'sort_order': { name: 'sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'source_chain': { name: 'source_chain'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_chain_type'; ofType: null; }; } }; 'source_universal_chain_id': { name: 'source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_canonical': { name: 'staker_canonical'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_display': { name: 'staker_display'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'staker_zkgm': { name: 'staker_zkgm'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'withdraw_recv_timestamp': { name: 'withdraw_recv_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'withdraw_recv_transaction_hash': { name: 'withdraw_recv_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'withdraw_send_timestamp': { name: 'withdraw_send_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'withdraw_send_transaction_hash': { name: 'withdraw_send_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'withdraw_success': { name: 'withdraw_success'; type: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; } }; 'withdraw_timeout_timestamp': { name: 'withdraw_timeout_timestamp'; type: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; } }; 'withdraw_timeout_transaction_hash': { name: 'withdraw_timeout_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; } }; 'withdraw_traces': { name: 'withdraw_traces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'v2_traces_type'; ofType: null; }; }; }; } }; }; }; + 'v2_withdraws_args': { kind: 'INPUT_OBJECT'; name: 'v2_withdraws_args'; isOneOf: false; inputFields: [{ name: 'p_addresses_canonical'; type: { kind: 'SCALAR'; name: 'jsonb'; ofType: null; }; defaultValue: null }, { name: 'p_block_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_comparison'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ComparisonOp'; ofType: null; }; }; defaultValue: "lt" }, { name: 'p_destination_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_limit'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }, { name: 'p_network'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_packet_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_sort_order'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_source_universal_chain_id'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }, { name: 'p_transaction_hash'; type: { kind: 'SCALAR'; name: 'String'; ofType: null; }; defaultValue: null }]; }; +}; + /** An IntrospectionQuery representation of your schema. * * @remarks @@ -10,6794 +91,11 @@ * instead save to a .ts instead of a .d.ts file. */ export type introspection = { - "__schema": { - "queryType": { - "name": "Query" - }, - "mutationType": null, - "subscriptionType": null, - "types": [ - { - "kind": "SCALAR", - "name": "Boolean" - }, - { - "kind": "ENUM", - "name": "ComparisonOp", - "enumValues": [ - { - "name": "lt", - "isDeprecated": false - }, - { - "name": "gt", - "isDeprecated": false - } - ] - }, - { - "kind": "SCALAR", - "name": "DateTime" - }, - { - "kind": "SCALAR", - "name": "Float" - }, - { - "kind": "SCALAR", - "name": "Int" - }, - { - "kind": "INPUT_OBJECT", - "name": "Int_comparison_exp", - "inputFields": [ - { - "name": "_eq", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "SCALAR", - "name": "Int" - } - } - } - ], - "isOneOf": false - }, - { - "kind": "SCALAR", - "name": "JSON" - }, - { - "kind": "OBJECT", - "name": "LatencyPercentiles", - "fields": [ - { - "name": "median", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "SCALAR", - "name": "Float" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "p5", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "SCALAR", - "name": "Float" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "p95", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "SCALAR", - "name": "Float" - } - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "SCALAR", - "name": "NaiveDate" - }, - { - "kind": "ENUM", - "name": "OrderBy", - "enumValues": [ - { - "name": "asc", - "isDeprecated": false - }, - { - "name": "asc_nulls_first", - "isDeprecated": false - }, - { - "name": "asc_nulls_last", - "isDeprecated": false - }, - { - "name": "desc", - "isDeprecated": false - }, - { - "name": "desc_nulls_first", - "isDeprecated": false - }, - { - "name": "desc_nulls_last", - "isDeprecated": false - } - ] - }, - { - "kind": "OBJECT", - "name": "Query", - "fields": [ - { - "name": "dashboard_balance_current", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "dashboard_balance_current_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "dashboard_balance_current_args" - } - }, - "defaultValue": "{p_contract_address_canonical: null, p_phase: null, p_universal_chain_id: null, p_wallet_addresses_canonical: null}" - } - ], - "isDeprecated": false - }, - { - "name": "dashboard_transfer_count_by_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "dashboard_count_by_chain_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "dashboard_count_by_chain_args" - } - }, - "defaultValue": "{p_addresses_dashboard: null, p_phase: null}" - }, - { - "name": "order_by", - "type": { - "kind": "INPUT_OBJECT", - "name": "dashboard_count_by_chain_type_order_by" - }, - "defaultValue": "null" - } - ], - "isDeprecated": false - }, - { - "name": "dashboard_transfer_days_count_by_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "dashboard_days_by_chain_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "dashboard_days_by_chain_args" - } - }, - "defaultValue": "{p_addresses_dashboard: null}" - }, - { - "name": "order_by", - "type": { - "kind": "INPUT_OBJECT", - "name": "dashboard_days_by_chain_type_order_by" - }, - "defaultValue": "null" - } - ], - "isDeprecated": false - }, - { - "name": "v2_bonds", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_bond_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_bonds_args" - } - }, - "defaultValue": "{p_addresses_canonical: null, p_block_hash: null, p_comparison: lt, p_destination_universal_chain_id: null, p_limit: null, p_network: null, p_packet_hash: null, p_sort_order: null, p_source_universal_chain_id: null, p_transaction_hash: null}" - } - ], - "isDeprecated": false - }, - { - "name": "v2_chains", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_chains_args" - } - }, - "defaultValue": "{p_comparison: lt, p_limit: null, p_sort_order: null, p_universal_chain_id: null}" - } - ], - "isDeprecated": false - }, - { - "name": "v2_channels", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_channel_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_channels_args" - } - }, - "defaultValue": "{p_comparison: lt, p_destination_channel_id: null, p_destination_client_id: null, p_destination_connection_id: null, p_destination_port_id: null, p_destination_universal_chain_id: null, p_limit: null, p_recommended: null, p_sort_order: null, p_source_channel_id: null, p_source_client_id: null, p_source_connection_id: null, p_source_port_id: null, p_source_universal_chain_id: null, p_tags: null, p_version: null}" - } - ], - "isDeprecated": false - }, - { - "name": "v2_clients", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_client_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_clients_args" - } - }, - "defaultValue": "{p_client_id: null, p_comparison: lt, p_counterparty_universal_chain_id: null, p_limit: null, p_sort_order: null, p_universal_chain_id: null}" - } - ], - "isDeprecated": false - }, - { - "name": "v2_connections", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_connection_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_connections_args" - } - }, - "defaultValue": "{p_comparison: lt, p_destination_client_id: null, p_destination_connection_id: null, p_destination_universal_chain_id: null, p_limit: null, p_sort_order: null, p_source_client_id: null, p_source_connection_id: null, p_source_universal_chain_id: null}" - } - ], - "isDeprecated": false - }, - { - "name": "v2_dust_withdraws", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_dust_withdraw_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_dust_withdraws_args" - } - }, - "defaultValue": "{p_addresses_canonical: null, p_block_hash: null, p_comparison: lt, p_destination_universal_chain_id: null, p_limit: null, p_network: null, p_packet_hash: null, p_sort_order: null, p_source_universal_chain_id: null, p_transaction_hash: null}" - } - ], - "isDeprecated": false - }, - { - "name": "v2_errors", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_error_type" - } - } - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "v2_health_check", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_health_check_type" - } - } - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "v2_instructions", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_instruction_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_instructions_args" - } - }, - "defaultValue": "{p_block_hash: null, p_comparison: lt, p_limit: null, p_multiplex_contract_address: null, p_multiplex_sender: null, p_network: null, p_packet_hash: null, p_sort_order: null, p_transaction_hash: null}" - } - ], - "isDeprecated": false - }, - { - "name": "v2_packets", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_packet_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_packets_args" - } - }, - "defaultValue": "{p_block_hash: null, p_comparison: lt, p_destination_universal_chain_id: null, p_exceeding_sla: null, p_limit: null, p_network: null, p_packet_hash: null, p_packet_send_timestamp: null, p_sort_order: null, p_source_universal_chain_id: null, p_transaction_hash: null}" - } - ], - "isDeprecated": false - }, - { - "name": "v2_stats_count", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_stats_type" - } - } - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "v2_stats_latency", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_stats_latency_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_stats_latency_args" - } - }, - "defaultValue": "{p_destination_universal_chain_id: null, p_phase: null, p_source_universal_chain_id: null}" - } - ], - "isDeprecated": false - }, - { - "name": "v2_stats_packets_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_stats_packets_chain_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_stats_packets_chain_args" - } - }, - "defaultValue": "{p_days_back: null, p_destination_universal_chain_id: null, p_source_universal_chain_id: null}" - } - ], - "isDeprecated": false - }, - { - "name": "v2_stats_packets_daily_count", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_stats_daily_count_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_stats_packets_daily_count_args" - } - }, - "defaultValue": "{p_days_back: null}" - } - ], - "isDeprecated": false - }, - { - "name": "v2_stats_transfers_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_stats_transfers_chain_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_stats_transfers_chain_args" - } - }, - "defaultValue": "{p_days_back: null, p_destination_universal_chain_id: null, p_source_universal_chain_id: null}" - } - ], - "isDeprecated": false - }, - { - "name": "v2_stats_transfers_daily_count", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_stats_daily_count_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_stats_transfers_daily_count_args" - } - }, - "defaultValue": "{p_days_back: null}" - } - ], - "isDeprecated": false - }, - { - "name": "v2_tokens", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_token_meta" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_tokens_args" - } - }, - "defaultValue": "{p_denom: null, p_universal_chain_id: null, p_whitelist: null}" - }, - { - "name": "order_by", - "type": { - "kind": "INPUT_OBJECT", - "name": "v2_token_meta_order_by" - }, - "defaultValue": "null" - } - ], - "isDeprecated": false - }, - { - "name": "v2_transfers", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_transfer_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_transfers_args" - } - }, - "defaultValue": "{p_addresses_canonical: null, p_block_hash: null, p_comparison: lt, p_destination_universal_chain_id: null, p_limit: null, p_network: null, p_packet_hash: null, p_sort_order: null, p_source_universal_chain_id: null, p_transaction_hash: null, p_transfer_index: null}" - } - ], - "isDeprecated": false - }, - { - "name": "v2_unbonds", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_unbond_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_unbonds_args" - } - }, - "defaultValue": "{p_addresses_canonical: null, p_block_hash: null, p_comparison: lt, p_destination_universal_chain_id: null, p_limit: null, p_network: null, p_packet_hash: null, p_sort_order: null, p_source_universal_chain_id: null, p_transaction_hash: null}" - } - ], - "isDeprecated": false - }, - { - "name": "v2_util_get_address_types_for_display_address", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_util_get_address_types_for_display_address_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_util_get_address_types_for_display_address_args" - } - }, - "defaultValue": "{p_display_address: null, p_chain_type: null}" - } - ], - "isDeprecated": false - }, - { - "name": "v2_util_get_transfer_request_details", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_util_get_transfer_request_details_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_util_get_transfer_request_details_args" - } - }, - "defaultValue": "{p_source_universal_chain_id: null, p_destination_universal_chain_id: null, p_base_token: null}" - } - ], - "isDeprecated": false - }, - { - "name": "v2_withdraws", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_withdraw_type" - } - } - } - }, - "args": [ - { - "name": "args", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_withdraws_args" - } - }, - "defaultValue": "{p_addresses_canonical: null, p_block_hash: null, p_comparison: lt, p_destination_universal_chain_id: null, p_limit: null, p_network: null, p_packet_hash: null, p_sort_order: null, p_source_universal_chain_id: null, p_transaction_hash: null}" - } - ], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "SCALAR", - "name": "String" - }, - { - "kind": "INPUT_OBJECT", - "name": "String_comparison_exp", - "inputFields": [ - { - "name": "_eq", - "type": { - "kind": "SCALAR", - "name": "String" - } - } - ], - "isOneOf": false - }, - { - "kind": "INPUT_OBJECT", - "name": "dashboard_balance_current_args", - "inputFields": [ - { - "name": "p_contract_address_canonical", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_phase", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_wallet_addresses_canonical", - "type": { - "kind": "SCALAR", - "name": "jsonb" - } - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "dashboard_balance_current_type", - "fields": [ - { - "name": "balance", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "balance_usd", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "contract_address_canonical", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "token", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "wallet_address_canonical", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "weighted_balance", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "weighted_balance_usd", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "dashboard_count_by_chain_args", - "inputFields": [ - { - "name": "p_addresses_dashboard", - "type": { - "kind": "SCALAR", - "name": "jsonb" - } - }, - { - "name": "p_phase", - "type": { - "kind": "SCALAR", - "name": "String" - } - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "dashboard_count_by_chain_type", - "fields": [ - { - "name": "count", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "phase", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "dashboard_count_by_chain_type_order_by", - "inputFields": [ - { - "name": "phase", - "type": { - "kind": "ENUM", - "name": "OrderBy" - }, - "defaultValue": "null" - }, - { - "name": "universal_chain_id", - "type": { - "kind": "ENUM", - "name": "OrderBy" - }, - "defaultValue": "null" - } - ], - "isOneOf": false - }, - { - "kind": "INPUT_OBJECT", - "name": "dashboard_days_by_chain_args", - "inputFields": [ - { - "name": "p_addresses_dashboard", - "type": { - "kind": "SCALAR", - "name": "jsonb" - } - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "dashboard_days_by_chain_type", - "fields": [ - { - "name": "day_count", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "dashboard_days_by_chain_type_order_by", - "inputFields": [ - { - "name": "universal_chain_id", - "type": { - "kind": "ENUM", - "name": "OrderBy" - }, - "defaultValue": "null" - } - ], - "isOneOf": false - }, - { - "kind": "SCALAR", - "name": "jsonb" - }, - { - "kind": "OBJECT", - "name": "v2_bond_type", - "fields": [ - { - "name": "base_amount", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "base_token", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "base_token_meta", - "type": { - "kind": "OBJECT", - "name": "v2_token_meta" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "bond_recv_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "bond_recv_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "bond_send_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "bond_send_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "bond_success", - "type": { - "kind": "SCALAR", - "name": "Boolean" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "bond_timeout_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "bond_timeout_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "bond_traces", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_traces_type" - } - } - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_packet_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_recv_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_recv_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_send_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_send_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_success", - "type": { - "kind": "SCALAR", - "name": "Boolean" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_timeout_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_timeout_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_traces", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_traces_type" - } - } - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_shape", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "quote_amount", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "quote_token", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "quote_token_meta", - "type": { - "kind": "OBJECT", - "name": "v2_token_meta" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "receiver_canonical", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "receiver_display", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "receiver_zkgm", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "remote_base_amount", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "remote_base_token", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "remote_base_token_meta", - "type": { - "kind": "OBJECT", - "name": "v2_token_meta" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "remote_quote_amount", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "remote_quote_token", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "remote_quote_token_meta", - "type": { - "kind": "OBJECT", - "name": "v2_token_meta" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "remote_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sender_canonical", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sender_display", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sender_zkgm", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "staker_canonical", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "staker_display", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "staker_zkgm", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_bonds_args", - "inputFields": [ - { - "name": "p_addresses_canonical", - "type": { - "kind": "SCALAR", - "name": "jsonb" - } - }, - { - "name": "p_block_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_comparison", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "ENUM", - "name": "ComparisonOp" - } - }, - "defaultValue": "lt" - }, - { - "name": "p_destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_limit", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_network", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_packet_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "v2_chain_edition", - "fields": [ - { - "name": "environment", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "name", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "OBJECT", - "name": "v2_chain_features", - "fields": [ - { - "name": "channel_list", - "type": { - "kind": "SCALAR", - "name": "Boolean" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "connection_list", - "type": { - "kind": "SCALAR", - "name": "Boolean" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "environment", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "index_status", - "type": { - "kind": "SCALAR", - "name": "Boolean" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_list", - "type": { - "kind": "SCALAR", - "name": "Boolean" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "transfer_list", - "type": { - "kind": "SCALAR", - "name": "Boolean" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "transfer_submission", - "type": { - "kind": "SCALAR", - "name": "Boolean" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_chain_features_bool_exp", - "inputFields": [ - { - "name": "environment", - "type": { - "kind": "INPUT_OBJECT", - "name": "String_comparison_exp" - }, - "defaultValue": "null" - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "v2_chain_status_type", - "fields": [ - { - "name": "height", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "status", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "tip_age_seconds", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "OBJECT", - "name": "v2_chain_type", - "fields": [ - { - "name": "addr_prefix", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "display_name", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "editions", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_edition" - } - } - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "explorers", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_explorers" - } - } - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "features", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_features" - } - } - } - }, - "args": [ - { - "name": "where", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_chain_features_bool_exp" - } - }, - "defaultValue": "{environment: null}" - } - ], - "isDeprecated": false - }, - { - "name": "logo_uri", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "minter_address_display", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "rpc_type", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "rpcs", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_rpcs" - } - } - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "status", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_status_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "testnet", - "type": { - "kind": "SCALAR", - "name": "Boolean" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_chains_args", - "inputFields": [ - { - "name": "p_comparison", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "ENUM", - "name": "ComparisonOp" - } - }, - "defaultValue": "lt" - }, - { - "name": "p_limit", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "v2_channel_fee", - "fields": [ - { - "name": "action", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "fee", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "OBJECT", - "name": "v2_channel_type", - "fields": [ - { - "name": "destination_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_channel_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_client_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_connection_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_port_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "fees", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_channel_fee" - } - } - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sla", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_channel_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_client_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_connection_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_port_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "tags", - "type": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "SCALAR", - "name": "String" - } - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "version", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_channels_args", - "inputFields": [ - { - "name": "p_comparison", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "ENUM", - "name": "ComparisonOp" - } - }, - "defaultValue": "lt" - }, - { - "name": "p_destination_channel_id", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_destination_client_id", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_destination_connection_id", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_destination_port_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_limit", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_recommended", - "type": { - "kind": "SCALAR", - "name": "Boolean" - } - }, - { - "name": "p_sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_source_channel_id", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_source_client_id", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_source_connection_id", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_source_port_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_tags", - "type": { - "kind": "SCALAR", - "name": "jsonb" - } - }, - { - "name": "p_version", - "type": { - "kind": "SCALAR", - "name": "String" - } - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "v2_client_status_type", - "fields": [ - { - "name": "block_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "counterparty_height", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "height", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "OBJECT", - "name": "v2_client_type", - "fields": [ - { - "name": "chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "client_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "counterparty_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "counterparty_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "status", - "type": { - "kind": "OBJECT", - "name": "v2_client_status_type" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_clients_args", - "inputFields": [ - { - "name": "p_client_id", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_comparison", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "ENUM", - "name": "ComparisonOp" - } - }, - "defaultValue": "lt" - }, - { - "name": "p_counterparty_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_limit", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "v2_connection_type", - "fields": [ - { - "name": "destination_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_client_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_connection_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_client_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_connection_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_connections_args", - "inputFields": [ - { - "name": "p_comparison", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "ENUM", - "name": "ComparisonOp" - } - }, - "defaultValue": "lt" - }, - { - "name": "p_destination_client_id", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_destination_connection_id", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_limit", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_source_client_id", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_source_connection_id", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "v2_dust_withdraw_type", - "fields": [ - { - "name": "delivery_packet_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_recv_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_recv_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_send_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_send_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_success", - "type": { - "kind": "SCALAR", - "name": "Boolean" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_timeout_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_timeout_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_traces", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_traces_type" - } - } - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "dust_withdraw_recv_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "dust_withdraw_recv_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "dust_withdraw_send_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "dust_withdraw_send_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "dust_withdraw_success", - "type": { - "kind": "SCALAR", - "name": "Boolean" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "dust_withdraw_timeout_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "dust_withdraw_timeout_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "dust_withdraw_traces", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_traces_type" - } - } - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_shape", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "quote_amount", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "quote_token", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "quote_token_meta", - "type": { - "kind": "OBJECT", - "name": "v2_token_meta" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "receiver_canonical", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "receiver_display", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "receiver_zkgm", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "remote_base_amount", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "remote_base_token", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "remote_base_token_meta", - "type": { - "kind": "OBJECT", - "name": "v2_token_meta" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "remote_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "staker_canonical", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "staker_display", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "staker_zkgm", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_dust_withdraws_args", - "inputFields": [ - { - "name": "p_addresses_canonical", - "type": { - "kind": "SCALAR", - "name": "jsonb" - } - }, - { - "name": "p_block_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_comparison", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "ENUM", - "name": "ComparisonOp" - } - }, - "defaultValue": "lt" - }, - { - "name": "p_destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_limit", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_network", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_packet_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "v2_error_type", - "fields": [ - { - "name": "detail", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "hint", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "message", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "union_error_code", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "OBJECT", - "name": "v2_explorers", - "fields": [ - { - "name": "address_url", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "block_url", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "description", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "display_name", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "home_url", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "logo_uri", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "name", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "tx_url", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "OBJECT", - "name": "v2_health_check_type", - "fields": [ - { - "name": "environment", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "last_update", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "status", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "OBJECT", - "name": "v2_instruction_type", - "fields": [ - { - "name": "acknowledgement", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "channel_version", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "data", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "decoded", - "type": { - "kind": "SCALAR", - "name": "JSON" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "decoded_flattened", - "type": { - "kind": "SCALAR", - "name": "JSON" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_channel_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_client_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_connection_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_port_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "instruction", - "type": { - "kind": "SCALAR", - "name": "JSON" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "instruction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "instruction_index", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "instruction_path", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "instruction_type", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "internal_destination_chain_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "internal_source_chain_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "opcode", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "operand", - "type": { - "kind": "SCALAR", - "name": "JSON" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_ack_block_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_ack_height", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_ack_maker", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_ack_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_ack_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_recv_block_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_recv_height", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_recv_maker", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_recv_maker_msg", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_recv_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_recv_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_send_block_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_send_height", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_send_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_send_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_timeout_block_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_timeout_height", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_timeout_maker", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_timeout_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_timeout_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "path", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "salt", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_channel_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_client_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_connection_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_port_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "status", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "structure", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "success", - "type": { - "kind": "SCALAR", - "name": "Boolean" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "timeout_height", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "timeout_timestamp", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "version", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "write_ack_block_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "write_ack_height", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "write_ack_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "write_ack_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_instructions_args", - "inputFields": [ - { - "name": "p_block_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_comparison", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "ENUM", - "name": "ComparisonOp" - } - }, - "defaultValue": "lt" - }, - { - "name": "p_limit", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_multiplex_contract_address", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_multiplex_sender", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_network", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_packet_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "v2_packet_type", - "fields": [ - { - "name": "acknowledgement", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "channel_version", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "data", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "decoded", - "type": { - "kind": "SCALAR", - "name": "JSON" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "decoded_flattened", - "type": { - "kind": "SCALAR", - "name": "JSON" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_channel_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_client_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_connection_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_port_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "internal_destination_chain_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "internal_source_chain_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_ack_block_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_ack_height", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_ack_maker", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_ack_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_ack_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_recv_block_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_recv_height", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_recv_maker", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_recv_maker_msg", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_recv_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_recv_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_send_block_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_send_height", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_send_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_send_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_timeout_block_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_timeout_height", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_timeout_maker", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_timeout_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_timeout_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_channel_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_client_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_connection_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_port_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "status", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "structure", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "success", - "type": { - "kind": "SCALAR", - "name": "Boolean" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "timeout_height", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "timeout_timestamp", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "traces", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_traces_type" - } - } - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "write_ack_block_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "write_ack_height", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "write_ack_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "write_ack_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_packets_args", - "inputFields": [ - { - "name": "p_block_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_comparison", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "ENUM", - "name": "ComparisonOp" - } - }, - "defaultValue": "lt" - }, - { - "name": "p_destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_exceeding_sla", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_limit", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_network", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_packet_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_packet_send_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - } - }, - { - "name": "p_sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "v2_rpcs", - "fields": [ - { - "name": "contact", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "description", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "type", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "url", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "OBJECT", - "name": "v2_stats_daily_count_type", - "fields": [ - { - "name": "count", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "day_date", - "type": { - "kind": "SCALAR", - "name": "NaiveDate" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_stats_latency_args", - "inputFields": [ - { - "name": "p_destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_phase", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "v2_stats_latency_type", - "fields": [ - { - "name": "secs_until_packet_ack", - "type": { - "kind": "OBJECT", - "name": "LatencyPercentiles" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "secs_until_packet_recv", - "type": { - "kind": "OBJECT", - "name": "LatencyPercentiles" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "secs_until_write_ack", - "type": { - "kind": "OBJECT", - "name": "LatencyPercentiles" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_stats_packets_chain_args", - "inputFields": [ - { - "name": "p_days_back", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "v2_stats_packets_chain_type", - "fields": [ - { - "name": "day_date", - "type": { - "kind": "SCALAR", - "name": "NaiveDate" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "total_packets", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_stats_packets_daily_count_args", - "inputFields": [ - { - "name": "p_days_back", - "type": { - "kind": "SCALAR", - "name": "Int" - } - } - ], - "isOneOf": false - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_stats_transfers_chain_args", - "inputFields": [ - { - "name": "p_days_back", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "v2_stats_transfers_chain_type", - "fields": [ - { - "name": "day_date", - "type": { - "kind": "SCALAR", - "name": "NaiveDate" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "total_transfers", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_stats_transfers_daily_count_args", - "inputFields": [ - { - "name": "p_days_back", - "type": { - "kind": "SCALAR", - "name": "Int" - } - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "v2_stats_type", - "fields": [ - { - "name": "name", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "value", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "OBJECT", - "name": "v2_token_meta", - "fields": [ - { - "name": "bucket", - "type": { - "kind": "OBJECT", - "name": "v2_token_meta_bucket" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "denom", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "rank", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "representations", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_token_meta_representations" - } - } - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "wrapping", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_token_meta_wrapping" - } - } - } - }, - "args": [ - { - "name": "where", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "INPUT_OBJECT", - "name": "v2_token_meta_wrapping_bool_exp" - } - }, - "defaultValue": "{destination_channel_id: null}" - } - ], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "OBJECT", - "name": "v2_token_meta_bucket", - "fields": [ - { - "name": "capacity", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "denom", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "refill_rate", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_token_meta_order_by", - "inputFields": [ - { - "name": "rank", - "type": { - "kind": "ENUM", - "name": "OrderBy" - }, - "defaultValue": "null" - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "v2_token_meta_representation_sources", - "fields": [ - { - "name": "chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "decimals", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "denom", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "name", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_token_meta_sources" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "symbol", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "update_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "OBJECT", - "name": "v2_token_meta_representations", - "fields": [ - { - "name": "chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "decimals", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "denom", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "logo_uri", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "name", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sources", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_token_meta_representation_sources" - } - } - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "symbol", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "OBJECT", - "name": "v2_token_meta_sources", - "fields": [ - { - "name": "logo_uri", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "name", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_uri", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "OBJECT", - "name": "v2_token_meta_wrapping", - "fields": [ - { - "name": "destination_channel_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "index", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "unwrapped_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "unwrapped_denom", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "wrapped_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "wrapped_denom", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "wrapper", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_token_meta_wrapping_bool_exp", - "inputFields": [ - { - "name": "destination_channel_id", - "type": { - "kind": "INPUT_OBJECT", - "name": "Int_comparison_exp" - }, - "defaultValue": "null" - } - ], - "isOneOf": false - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_tokens_args", - "inputFields": [ - { - "name": "p_denom", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_whitelist", - "type": { - "kind": "SCALAR", - "name": "Boolean" - } - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "v2_traces_type", - "fields": [ - { - "name": "block_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "event_index", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "height", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "type", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "OBJECT", - "name": "v2_transfer_type", - "fields": [ - { - "name": "base_amount", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "base_token", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "base_token_decimals", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "base_token_meta", - "type": { - "kind": "OBJECT", - "name": "v2_token_meta" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "base_token_name", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "base_token_path", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "base_token_symbol", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "fee_amount", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "fee_token", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "fee_token_meta", - "type": { - "kind": "OBJECT", - "name": "v2_token_meta" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "fee_type", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_shape", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "quote_amount", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "quote_token", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "quote_token_meta", - "type": { - "kind": "OBJECT", - "name": "v2_token_meta" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "receiver_canonical", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "receiver_display", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "receiver_zkgm", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sender_canonical", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sender_display", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sender_zkgm", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "success", - "type": { - "kind": "SCALAR", - "name": "Boolean" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "traces", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_traces_type" - } - } - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "transfer_index", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "transfer_recv_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "transfer_recv_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "transfer_send_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "transfer_send_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "transfer_timeout_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "transfer_timeout_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "wrap_direction", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_transfers_args", - "inputFields": [ - { - "name": "p_addresses_canonical", - "type": { - "kind": "SCALAR", - "name": "jsonb" - } - }, - { - "name": "p_block_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_comparison", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "ENUM", - "name": "ComparisonOp" - } - }, - "defaultValue": "lt" - }, - { - "name": "p_destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_limit", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_network", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_packet_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_transfer_index", - "type": { - "kind": "SCALAR", - "name": "Int" - } - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "v2_unbond_type", - "fields": [ - { - "name": "base_amount", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "base_token", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "base_token_meta", - "type": { - "kind": "OBJECT", - "name": "v2_token_meta" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "batch", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_shape", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sender_canonical", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sender_display", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sender_zkgm", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "staker_canonical", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "staker_display", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "staker_zkgm", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "success", - "type": { - "kind": "SCALAR", - "name": "Boolean" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "traces", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_traces_type" - } - } - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "unbond_recv_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "unbond_recv_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "unbond_send_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "unbond_send_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "unbond_timeout_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "unbond_timeout_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "withdraw_packet_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_unbonds_args", - "inputFields": [ - { - "name": "p_addresses_canonical", - "type": { - "kind": "SCALAR", - "name": "jsonb" - } - }, - { - "name": "p_block_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_comparison", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "ENUM", - "name": "ComparisonOp" - } - }, - "defaultValue": "lt" - }, - { - "name": "p_destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_limit", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_network", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_packet_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - } - ], - "isOneOf": false - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_util_get_address_types_for_display_address_args", - "inputFields": [ - { - "name": "p_display_address", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_chain_type", - "type": { - "kind": "SCALAR", - "name": "String" - } - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "v2_util_get_address_types_for_display_address_type", - "fields": [ - { - "name": "canonical", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "display", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "zkgm", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_util_get_transfer_request_details_args", - "inputFields": [ - { - "name": "p_source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_base_token", - "type": { - "kind": "SCALAR", - "name": "String" - } - } - ], - "isOneOf": false - }, - { - "kind": "OBJECT", - "name": "v2_util_get_transfer_request_details_type", - "fields": [ - { - "name": "already_exists", - "type": { - "kind": "SCALAR", - "name": "Boolean" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_channel_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "quote_token", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_channel_id", - "type": { - "kind": "SCALAR", - "name": "Int" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "wrap_direction", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "OBJECT", - "name": "v2_withdraw_type", - "fields": [ - { - "name": "batches", - "type": { - "kind": "SCALAR", - "name": "JSON" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_packet_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_recv_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_recv_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_send_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_send_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_success", - "type": { - "kind": "SCALAR", - "name": "Boolean" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_timeout_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_timeout_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "delivery_traces", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_traces_type" - } - } - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "packet_shape", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "quote_amount", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "quote_token", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "quote_token_meta", - "type": { - "kind": "OBJECT", - "name": "v2_token_meta" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "receiver_canonical", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "receiver_display", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "receiver_zkgm", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "remote_base_amount", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "remote_base_token", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "remote_base_token_meta", - "type": { - "kind": "OBJECT", - "name": "v2_token_meta" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "remote_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_chain", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_chain_type" - } - }, - "args": [], - "isDeprecated": false - }, - { - "name": "source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "staker_canonical", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "staker_display", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "staker_zkgm", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "withdraw_recv_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "withdraw_recv_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "withdraw_send_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "withdraw_send_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "withdraw_success", - "type": { - "kind": "SCALAR", - "name": "Boolean" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "withdraw_timeout_timestamp", - "type": { - "kind": "SCALAR", - "name": "DateTime" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "withdraw_timeout_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - }, - "args": [], - "isDeprecated": false - }, - { - "name": "withdraw_traces", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "LIST", - "ofType": { - "kind": "NON_NULL", - "ofType": { - "kind": "OBJECT", - "name": "v2_traces_type" - } - } - } - }, - "args": [], - "isDeprecated": false - } - ], - "interfaces": [] - }, - { - "kind": "INPUT_OBJECT", - "name": "v2_withdraws_args", - "inputFields": [ - { - "name": "p_addresses_canonical", - "type": { - "kind": "SCALAR", - "name": "jsonb" - } - }, - { - "name": "p_block_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_comparison", - "type": { - "kind": "NON_NULL", - "ofType": { - "kind": "ENUM", - "name": "ComparisonOp" - } - }, - "defaultValue": "lt" - }, - { - "name": "p_destination_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_limit", - "type": { - "kind": "SCALAR", - "name": "Int" - } - }, - { - "name": "p_network", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_packet_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_sort_order", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_source_universal_chain_id", - "type": { - "kind": "SCALAR", - "name": "String" - } - }, - { - "name": "p_transaction_hash", - "type": { - "kind": "SCALAR", - "name": "String" - } - } - ], - "isOneOf": false - } - ], - "directives": [] - } + name: never; + query: 'Query'; + mutation: never; + subscription: never; + types: introspection_types; }; import * as gqlTada from 'gql.tada'; diff --git a/ts-sdk/src/internal/sui.ts b/ts-sdk/src/internal/sui.ts index 9601a6c787..91cc7b8fa5 100644 --- a/ts-sdk/src/internal/sui.ts +++ b/ts-sdk/src/internal/sui.ts @@ -1,5 +1,5 @@ import { SuiClient, SuiClientOptions } from "@mysten/sui/client" -import { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" +import type { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" import { Context, Effect, Layer, pipe } from "effect" import * as Sui from "../Sui.js" import { extractErrorDetails } from "../utils/extract-error-details.js" diff --git a/ts-sdk/src/schema/hex.ts b/ts-sdk/src/schema/hex.ts index fb5f06208b..5c4232527a 100644 --- a/ts-sdk/src/schema/hex.ts +++ b/ts-sdk/src/schema/hex.ts @@ -81,3 +81,58 @@ export const HexFromJson = S.transformOrFail( ), }, ) + +// Sui type tag: 0x:::: +export const SuiTypeTag = S.String.pipe( + S.pattern(/^0x[0-9a-fA-F]+::[A-Za-z_][A-Za-z0-9_]*::[A-Za-z_][A-Za-z0-9_]*$/), + S.annotations({ + title: "sui-type-tag", + description: "Sui coin type tag like 0x2::sui::SUI", + examples: ["0x2::sui::SUI"], + }), +) +export type SuiTypeTag = typeof SuiTypeTag.Type + +/** + * Hex <-> Sui type tag ("0x2::sui::SUI") bridge. + * Decodes a Hex that encodes a Sui type tag (UTF-8) into the type tag string, and vice versa. + */ +export const StringFromSuiHex = S.transformOrFail( + Hex, // encoded side (0x...) + SuiTypeTag, // decoded side ("0x...::mod::Name") + { + // Hex -> "0x...::module::Name" + decode: (hex, _opts, ast) => { + const s = fromHex(hex, "string") + return /^0x[0-9a-fA-F]+::[A-Za-z_][A-Za-z0-9_]*::[A-Za-z_][A-Za-z0-9_]*$/.test(s) + ? Effect.succeed(s as typeof SuiTypeTag.Type) + : Effect.fail( + new ParseResult.Type(ast, hex, `Expected hex-encoded Sui type tag, got "${s}"`), + ) + }, + // "0x...::module::Name" -> Hex + encode: (tag) => Effect.succeed(toHex(tag)), + strict: true, + }, +) +export type StringFromSuiHex = typeof StringFromSuiHex.Type + +/** + * If you ever need the opposite direction explicitly typed: + * Sui type tag string -> Hex, and back. + */ +export const SuiHexFromString = S.transformOrFail( + SuiTypeTag, + Hex, + { + decode: (tag) => Effect.succeed(toHex(tag)), + encode: (hex, _opts, ast) => { + const s = fromHex(hex, "string") + return /^0x[0-9a-fA-F]+::[A-Za-z_][A-Za-z0-9_]*::[A-Za-z_][A-Za-z0-9_]*$/.test(s) + ? Effect.succeed(hex) + : Effect.fail(new ParseResult.Type(ast, hex, `Expected hex of a Sui type tag, got "${s}"`)) + }, + strict: true, + }, +) +export type SuiHexFromString = typeof SuiHexFromString.Type diff --git a/ts-sdk/src/schema/token.ts b/ts-sdk/src/schema/token.ts index 18a54eeeef..864a067f7a 100644 --- a/ts-sdk/src/schema/token.ts +++ b/ts-sdk/src/schema/token.ts @@ -76,6 +76,10 @@ export class Bucket extends Schema.Class("Bucket")({ export class Token extends Schema.Class("Token")({ rank: Schema.OptionFromNullOr(Schema.Int), denom: TokenRawDenom, + native_denom: Schema.optionalWith(Schema.NonEmptyString, { + as: "Option", + nullable: true, + }), representations: Schema.Array(TokenRepresentation), wrapping: Schema.Array(TokenWrapping), bucket: Schema.OptionFromNullOr(Bucket), diff --git a/ts-sdk/src/sui/client.ts b/ts-sdk/src/sui/client.ts index 9acd7036a6..aa365bf771 100644 --- a/ts-sdk/src/sui/client.ts +++ b/ts-sdk/src/sui/client.ts @@ -1,5 +1,5 @@ import { SuiClient, SuiClientOptions } from "@mysten/sui/client" -import { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" +import type { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" import { Context, Data, Effect } from "effect" import { extractErrorDetails } from "../utils/extract-error-details.js" diff --git a/ts-sdk/src/sui/contract.ts b/ts-sdk/src/sui/contract.ts index 6058cbc52a..ed9e00ae78 100644 --- a/ts-sdk/src/sui/contract.ts +++ b/ts-sdk/src/sui/contract.ts @@ -1,5 +1,5 @@ import type { SuiClient } from "@mysten/sui/client" -import { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" +import type { Ed25519Keypair } from "@mysten/sui/keypairs/ed25519" import { Transaction } from "@mysten/sui/transactions" import { Effect } from "effect" import { extractErrorDetails } from "../utils/extract-error-details.js"