@dfinity/cmc 8.0.1 → 9.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -29,12 +29,12 @@ npm i @icp-sdk/core @dfinity/utils
29
29
 
30
30
  ## Usage
31
31
 
32
- The features are available through the class `CMCCanister`. It has to be instantiated with the canister ID of the cycles minting canister. On `mainnet`, its ID is `rkp4c-7iaaa-aaaaa-aaaca-cai`.
32
+ The features are available through the class `CmcCanister`. It has to be instantiated with the canister ID of the cycles minting canister. On `mainnet`, its ID is `rkp4c-7iaaa-aaaaa-aaaca-cai`.
33
33
 
34
34
  e.g. querying the current Icp to cycles conversion rate.
35
35
 
36
36
  ```ts
37
- import { CMCCanister } from "@dfinity/cmc";
37
+ import { CmcCanister } from "@dfinity/cmc";
38
38
  import { createAgent } from "@dfinity/utils";
39
39
 
40
40
  const agent = await createAgent({
@@ -42,7 +42,7 @@ const agent = await createAgent({
42
42
  host: HOST,
43
43
  });
44
44
 
45
- const { getIcpToCyclesConversionRate } = CMCCanister.create({
45
+ const { getIcpToCyclesConversionRate } = CmcCanister.create({
46
46
  agent,
47
47
  canisterId: CYCLES_MINTING_CANISTER_ID,
48
48
  });
package/dist/index.d.ts CHANGED
@@ -1,6 +1,14 @@
1
+ import type { CmcDid } from "@icp-sdk/canisters/cmc";
2
+ export type Cycles = CmcDid.Cycles;
3
+ export type NotifyCreateCanisterArg = CmcDid.NotifyCreateCanisterArg;
4
+ export type NotifyTopUpArg = CmcDid.NotifyTopUpArg;
5
+ export type SubnetTypesToSubnetsResponse = CmcDid.SubnetTypesToSubnetsResponse;
1
6
  /**
2
- * @module api/cmc
7
+ * @deprecated Use "@icp-sdk/canisters/cmc" directly instead
3
8
  */
4
- export type { Cycles, NotifyCreateCanisterArg, NotifyTopUpArg, SubnetTypesToSubnetsResponse, } from "./candid/cmc";
5
- export { CMCCanister } from "./cmc.canister";
6
- export * from "./cmc.errors";
9
+ export * from "@icp-sdk/canisters/cmc";
10
+ /**
11
+ * Legacy re-export for backward compatibility.
12
+ * @deprecated Use "@icp-sdk/canisters/cmc" directly instead
13
+ */
14
+ export { CmcCanister as CMCCanister, CmcError as CMCError, type CmcCanisterOptions as CMCCanisterOptions, } from "@icp-sdk/canisters/cmc";
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- import{Canister as B,createServices as W}from"@dfinity/utils";var $=({IDL:t})=>{let n=t.Variant({Set:t.Principal,Unset:t.Null}),e=t.Text,a=t.Record({exchange_rate_canister:t.Opt(n),cycles_ledger_canister_id:t.Opt(t.Principal),last_purged_notification:t.Opt(t.Nat64),governance_canister_id:t.Opt(t.Principal),minting_account_id:t.Opt(e),ledger_canister_id:t.Opt(t.Principal)}),i=t.Record({subnets:t.Vec(t.Principal),subnet_type:t.Text}),p=t.Variant({Add:i,Remove:i}),l=t.Record({subnet_type:t.Opt(t.Text)}),s=t.Variant({Filter:l,Subnet:t.Record({subnet:t.Principal})}),_=t.Record({value:t.Text,name:t.Text}),d=t.Variant({controllers:t.Null,public:t.Null,allowed_viewers:t.Vec(t.Principal)}),o=t.Record({freezing_threshold:t.Opt(t.Nat),wasm_memory_threshold:t.Opt(t.Nat),environment_variables:t.Opt(t.Vec(_)),controllers:t.Opt(t.Vec(t.Principal)),reserved_cycles_limit:t.Opt(t.Nat),log_visibility:t.Opt(d),log_memory_limit:t.Opt(t.Nat),wasm_memory_limit:t.Opt(t.Nat),memory_allocation:t.Opt(t.Nat),compute_allocation:t.Opt(t.Nat)}),u=t.Record({subnet_selection:t.Opt(s),settings:t.Opt(o),subnet_type:t.Opt(t.Text)}),y=t.Variant({Refunded:t.Record({create_error:t.Text,refund_amount:t.Nat})}),m=t.Variant({Ok:t.Principal,Err:y}),b=t.Record({xdr_permyriad_per_icp:t.Nat64,timestamp_seconds:t.Nat64}),g=t.Record({certificate:t.Vec(t.Nat8),data:b,hash_tree:t.Vec(t.Nat8)}),O=t.Record({data:t.Vec(t.Tuple(t.Principal,t.Vec(t.Principal)))}),f=t.Record({data:t.Vec(t.Tuple(t.Text,t.Vec(t.Principal)))}),r=t.Nat64,C=t.Record({controller:t.Principal,block_index:r,subnet_selection:t.Opt(s),settings:t.Opt(o),subnet_type:t.Opt(t.Text)}),c=t.Variant({Refunded:t.Record({block_index:t.Opt(r),reason:t.Text}),InvalidTransaction:t.Text,Other:t.Record({error_message:t.Text,error_code:t.Nat64}),Processing:t.Null,TransactionTooOld:r}),N=t.Variant({Ok:t.Principal,Err:c}),x=t.Opt(t.Vec(t.Nat8)),R=t.Opt(t.Vec(t.Nat8)),T=t.Record({block_index:r,deposit_memo:x,to_subaccount:R}),P=t.Record({balance:t.Nat,block_index:t.Nat,minted:t.Nat}),h=t.Variant({Ok:P,Err:c}),S=t.Record({block_index:r,canister_id:t.Principal}),V=t.Nat,v=t.Variant({Ok:V,Err:c}),w=t.Record({who:t.Opt(t.Principal),subnets:t.Vec(t.Principal)}),A=t.Variant({Add:t.Text,Remove:t.Text});return t.Service({change_subnet_type_assignment:t.Func([p],[],[]),create_canister:t.Func([u],[m],[]),get_build_metadata:t.Func([],[t.Text],[]),get_default_subnets:t.Func([],[t.Vec(t.Principal)],[]),get_icp_xdr_conversion_rate:t.Func([],[g],[]),get_principals_authorized_to_create_canisters_to_subnets:t.Func([],[O],[]),get_subnet_types_to_subnets:t.Func([],[f],[]),notify_create_canister:t.Func([C],[N],[]),notify_mint_cycles:t.Func([T],[h],[]),notify_top_up:t.Func([S],[v],[]),set_authorized_subnetwork_list:t.Func([w],[],[]),update_subnet_type:t.Func([A],[],[])})};var Q=({IDL:t})=>{let n=t.Variant({Set:t.Principal,Unset:t.Null}),e=t.Text,a=t.Record({exchange_rate_canister:t.Opt(n),cycles_ledger_canister_id:t.Opt(t.Principal),last_purged_notification:t.Opt(t.Nat64),governance_canister_id:t.Opt(t.Principal),minting_account_id:t.Opt(e),ledger_canister_id:t.Opt(t.Principal)}),i=t.Record({subnets:t.Vec(t.Principal),subnet_type:t.Text}),p=t.Variant({Add:i,Remove:i}),l=t.Record({subnet_type:t.Opt(t.Text)}),s=t.Variant({Filter:l,Subnet:t.Record({subnet:t.Principal})}),_=t.Record({value:t.Text,name:t.Text}),d=t.Variant({controllers:t.Null,public:t.Null,allowed_viewers:t.Vec(t.Principal)}),o=t.Record({freezing_threshold:t.Opt(t.Nat),wasm_memory_threshold:t.Opt(t.Nat),environment_variables:t.Opt(t.Vec(_)),controllers:t.Opt(t.Vec(t.Principal)),reserved_cycles_limit:t.Opt(t.Nat),log_visibility:t.Opt(d),log_memory_limit:t.Opt(t.Nat),wasm_memory_limit:t.Opt(t.Nat),memory_allocation:t.Opt(t.Nat),compute_allocation:t.Opt(t.Nat)}),u=t.Record({subnet_selection:t.Opt(s),settings:t.Opt(o),subnet_type:t.Opt(t.Text)}),y=t.Variant({Refunded:t.Record({create_error:t.Text,refund_amount:t.Nat})}),m=t.Variant({Ok:t.Principal,Err:y}),b=t.Record({xdr_permyriad_per_icp:t.Nat64,timestamp_seconds:t.Nat64}),g=t.Record({certificate:t.Vec(t.Nat8),data:b,hash_tree:t.Vec(t.Nat8)}),O=t.Record({data:t.Vec(t.Tuple(t.Principal,t.Vec(t.Principal)))}),f=t.Record({data:t.Vec(t.Tuple(t.Text,t.Vec(t.Principal)))}),r=t.Nat64,C=t.Record({controller:t.Principal,block_index:r,subnet_selection:t.Opt(s),settings:t.Opt(o),subnet_type:t.Opt(t.Text)}),c=t.Variant({Refunded:t.Record({block_index:t.Opt(r),reason:t.Text}),InvalidTransaction:t.Text,Other:t.Record({error_message:t.Text,error_code:t.Nat64}),Processing:t.Null,TransactionTooOld:r}),N=t.Variant({Ok:t.Principal,Err:c}),x=t.Opt(t.Vec(t.Nat8)),R=t.Opt(t.Vec(t.Nat8)),T=t.Record({block_index:r,deposit_memo:x,to_subaccount:R}),P=t.Record({balance:t.Nat,block_index:t.Nat,minted:t.Nat}),h=t.Variant({Ok:P,Err:c}),S=t.Record({block_index:r,canister_id:t.Principal}),V=t.Nat,v=t.Variant({Ok:V,Err:c}),w=t.Record({who:t.Opt(t.Principal),subnets:t.Vec(t.Principal)}),A=t.Variant({Add:t.Text,Remove:t.Text});return t.Service({change_subnet_type_assignment:t.Func([p],[],[]),create_canister:t.Func([u],[m],[]),get_build_metadata:t.Func([],[t.Text],["query"]),get_default_subnets:t.Func([],[t.Vec(t.Principal)],["query"]),get_icp_xdr_conversion_rate:t.Func([],[g],["query"]),get_principals_authorized_to_create_canisters_to_subnets:t.Func([],[O],["query"]),get_subnet_types_to_subnets:t.Func([],[f],["query"]),notify_create_canister:t.Func([C],[N],[]),notify_mint_cycles:t.Func([T],[h],[]),notify_top_up:t.Func([S],[v],[]),set_authorized_subnetwork_list:t.Func([w],[],[]),update_subnet_type:t.Func([A],[],[])})};import{assertNever as X,jsonReplacer as J}from"@dfinity/utils";var F=class extends Error{},k=class extends Error{},E=class extends Error{},U=class extends Error{},M=class extends Error{},z=({Err:t})=>{if("Refunded"in t)throw new F(t.Refunded.reason);if("InvalidTransaction"in t)throw new k(t.InvalidTransaction);if("Processing"in t)throw new U;if("TransactionTooOld"in t)throw new M;if("Other"in t)throw new E(`Error in CMC with code ${t.Other.error_code}: ${t.Other.error_message}`);X(t,`Unsupported error type ${JSON.stringify(t,J)}`)};var q=class t extends B{static create(n){let{service:e,certifiedService:a,canisterId:i}=W({options:n,idlFactory:Q,certifiedIdlFactory:$});return new t(i,e,a)}getIcpToCyclesConversionRate=async({certified:n}={})=>{let{data:e}=await this.caller({certified:n}).get_icp_xdr_conversion_rate();return e.xdr_permyriad_per_icp};notifyCreateCanister=async n=>{let e=await this.service.notify_create_canister(n);if("Err"in e&&z(e),"Ok"in e)return e.Ok;throw new Error(`Unsupported response type in notifyCreateCanister ${JSON.stringify(e)}`)};notifyTopUp=async n=>{let e=await this.service.notify_top_up(n);if("Err"in e&&z(e),"Ok"in e)return e.Ok;throw new Error(`Unsupported response type in notifyTopUp ${JSON.stringify(e)}`)};getDefaultSubnets=({certified:n}={})=>{let{get_default_subnets:e}=this.caller({certified:n});return e()};getSubnetTypesToSubnets=({certified:n}={})=>{let{get_subnet_types_to_subnets:e}=this.caller({certified:n});return e()}};export{q as CMCCanister,E as CMCError,k as InvalidaTransactionError,U as ProcessingError,F as RefundedError,M as TransactionTooOldError,z as throwNotifyError};
1
+ export*from"@icp-sdk/canisters/cmc";import{CmcCanister as o,CmcError as p}from"@icp-sdk/canisters/cmc";export{o as CMCCanister,p as CMCError};
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../src/cmc.canister.ts", "../src/candid/cmc.certified.idl.js", "../src/candid/cmc.idl.js", "../src/cmc.errors.ts"],
4
- "sourcesContent": ["import { Canister, createServices, type QueryParams } from \"@dfinity/utils\";\nimport type { Principal } from \"@icp-sdk/core/principal\";\nimport type {\n _SERVICE as CMCCanisterService,\n Cycles,\n NotifyCreateCanisterArg,\n NotifyTopUpArg,\n SubnetTypesToSubnetsResponse,\n} from \"./candid/cmc\";\nimport { idlFactory as certifiedIdlFactory } from \"./candid/cmc.certified.idl\";\nimport { idlFactory } from \"./candid/cmc.idl\";\nimport { throwNotifyError } from \"./cmc.errors\";\nimport type { CMCCanisterOptions } from \"./cmc.options\";\n\nexport class CMCCanister extends Canister<CMCCanisterService> {\n static create(options: CMCCanisterOptions): CMCCanister {\n const { service, certifiedService, canisterId } =\n createServices<CMCCanisterService>({\n options,\n idlFactory,\n certifiedIdlFactory,\n });\n\n return new CMCCanister(canisterId, service, certifiedService);\n }\n\n /**\n * Returns conversion rate of ICP to Cycles. It can be called as query or update.\n *\n * @param {Object} [params] - The parameters for the call.\n * @param {boolean} [params.certified] - Determines whether the response should be certified (default: non-certified)\n *\n * @returns Promise<BigInt>\n */\n public getIcpToCyclesConversionRate = async ({\n certified,\n }: QueryParams = {}): Promise<bigint> => {\n const { data } = await this.caller({\n certified,\n }).get_icp_xdr_conversion_rate();\n\n // TODO: validate the certificate in the response - https://dfinity.atlassian.net/browse/GIX-150\n // Example: https://github.com/dfinity/response-verification/tree/main/examples/certification/certified-counter\n return data.xdr_permyriad_per_icp;\n };\n\n /**\n * Notifies Cycles Minting Canister of the creation of a new canister.\n * It returns the new canister principal.\n *\n * @param {Object} request\n * @param {Principal} request.controller\n * @param {BlockIndex} request.block_index\n * @returns Promise<Principal>\n * @throws RefundedError, InvalidaTransactionError, ProcessingError, TransactionTooOldError, CMCError\n */\n public notifyCreateCanister = async (\n request: NotifyCreateCanisterArg,\n ): Promise<Principal> => {\n const response = await this.service.notify_create_canister(request);\n if (\"Err\" in response) {\n throwNotifyError(response);\n }\n if (\"Ok\" in response) {\n return response.Ok;\n }\n // Edge case\n throw new Error(\n `Unsupported response type in notifyCreateCanister ${JSON.stringify(\n response,\n )}`,\n );\n };\n\n /**\n * Notifies Cycles Minting Canister of new cycles being added to canister.\n * It returns the new Cycles of the canister.\n *\n * @param {Object} request\n * @param {Principal} request.canister_id\n * @param {BlockIndex} request.block_index\n * @returns Promise<Cycles>\n * @throws RefundedError, InvalidaTransactionError, ProcessingError, TransactionTooOldError, CMCError\n */\n public notifyTopUp = async (request: NotifyTopUpArg): Promise<Cycles> => {\n const response = await this.service.notify_top_up(request);\n if (\"Err\" in response) {\n throwNotifyError(response);\n }\n if (\"Ok\" in response) {\n return response.Ok;\n }\n // Edge case\n throw new Error(\n `Unsupported response type in notifyTopUp ${JSON.stringify(response)}`,\n );\n };\n\n /**\n * This function calls the `get_default_subnets` method of the CMC canister, which returns a list of\n * default subnets as `Principal` objects. It can be called as query or update.\n *\n * @param {Object} [params] - The query parameters for the call.\n * @param {boolean} [params.certified] - Determines whether the response should be certified\n * (default: non-certified if not specified).\n *\n * @returns {Promise<Principal[]>} - A promise that resolves to an array of `Principal` objects\n * representing the default subnets.\n */\n public getDefaultSubnets = ({ certified }: QueryParams = {}): Promise<\n Principal[]\n > => {\n const { get_default_subnets } = this.caller({ certified });\n return get_default_subnets();\n };\n\n /**\n * This function calls the `get_subnet_types_to_subnets` method of the CMC canister, which returns a list of subnets where canisters can be created.\n * These subnets are excluded from the random subnet selection process used by the CMC when no explicit subnet ID is provided\n * during canister creation and therefore, not provided in the results of the similar function `get_default_subnets`.\n *\n * @param {Object} [params] - The optional query parameters for the call.\n * @param {boolean} [params.certified=false] - Specifies whether the response should be certified.\n * If not provided, the response defaults to non-certified.\n *\n * @returns {Promise<SubnetTypesToSubnetsResponse>} - A promise that resolves to an object representing\n * the mapping of subnet types to subnets.\n */\n public getSubnetTypesToSubnets = ({\n certified,\n }: QueryParams = {}): Promise<SubnetTypesToSubnetsResponse> => {\n const { get_subnet_types_to_subnets } = this.caller({ certified });\n return get_subnet_types_to_subnets();\n };\n}\n", "/* eslint-disable */\n\n// @ts-nocheck\n\n// This file was automatically generated by @icp-sdk/bindgen@0.2.0.\n// You should NOT make any changes in this file as it will be overwritten.\n// Additionally, you should also exclude this file from your linter and/or formatter to prevent it from being checked or modified.\n\nexport const idlFactory = ({ IDL }) => {\n const ExchangeRateCanister = IDL.Variant({\n Set: IDL.Principal,\n Unset: IDL.Null,\n });\n const AccountIdentifier = IDL.Text;\n const CyclesCanisterInitPayload = IDL.Record({\n exchange_rate_canister: IDL.Opt(ExchangeRateCanister),\n cycles_ledger_canister_id: IDL.Opt(IDL.Principal),\n last_purged_notification: IDL.Opt(IDL.Nat64),\n governance_canister_id: IDL.Opt(IDL.Principal),\n minting_account_id: IDL.Opt(AccountIdentifier),\n ledger_canister_id: IDL.Opt(IDL.Principal),\n });\n const SubnetListWithType = IDL.Record({\n subnets: IDL.Vec(IDL.Principal),\n subnet_type: IDL.Text,\n });\n const ChangeSubnetTypeAssignmentArgs = IDL.Variant({\n Add: SubnetListWithType,\n Remove: SubnetListWithType,\n });\n const SubnetFilter = IDL.Record({ subnet_type: IDL.Opt(IDL.Text) });\n const SubnetSelection = IDL.Variant({\n Filter: SubnetFilter,\n Subnet: IDL.Record({ subnet: IDL.Principal }),\n });\n const environment_variable = IDL.Record({\n value: IDL.Text,\n name: IDL.Text,\n });\n const log_visibility = IDL.Variant({\n controllers: IDL.Null,\n public: IDL.Null,\n allowed_viewers: IDL.Vec(IDL.Principal),\n });\n const CanisterSettings = IDL.Record({\n freezing_threshold: IDL.Opt(IDL.Nat),\n wasm_memory_threshold: IDL.Opt(IDL.Nat),\n environment_variables: IDL.Opt(IDL.Vec(environment_variable)),\n controllers: IDL.Opt(IDL.Vec(IDL.Principal)),\n reserved_cycles_limit: IDL.Opt(IDL.Nat),\n log_visibility: IDL.Opt(log_visibility),\n log_memory_limit: IDL.Opt(IDL.Nat),\n wasm_memory_limit: IDL.Opt(IDL.Nat),\n memory_allocation: IDL.Opt(IDL.Nat),\n compute_allocation: IDL.Opt(IDL.Nat),\n });\n const CreateCanisterArg = IDL.Record({\n subnet_selection: IDL.Opt(SubnetSelection),\n settings: IDL.Opt(CanisterSettings),\n subnet_type: IDL.Opt(IDL.Text),\n });\n const CreateCanisterError = IDL.Variant({\n Refunded: IDL.Record({\n create_error: IDL.Text,\n refund_amount: IDL.Nat,\n }),\n });\n const CreateCanisterResult = IDL.Variant({\n Ok: IDL.Principal,\n Err: CreateCanisterError,\n });\n const IcpXdrConversionRate = IDL.Record({\n xdr_permyriad_per_icp: IDL.Nat64,\n timestamp_seconds: IDL.Nat64,\n });\n const IcpXdrConversionRateResponse = IDL.Record({\n certificate: IDL.Vec(IDL.Nat8),\n data: IcpXdrConversionRate,\n hash_tree: IDL.Vec(IDL.Nat8),\n });\n const PrincipalsAuthorizedToCreateCanistersToSubnetsResponse = IDL.Record({\n data: IDL.Vec(IDL.Tuple(IDL.Principal, IDL.Vec(IDL.Principal))),\n });\n const SubnetTypesToSubnetsResponse = IDL.Record({\n data: IDL.Vec(IDL.Tuple(IDL.Text, IDL.Vec(IDL.Principal))),\n });\n const BlockIndex = IDL.Nat64;\n const NotifyCreateCanisterArg = IDL.Record({\n controller: IDL.Principal,\n block_index: BlockIndex,\n subnet_selection: IDL.Opt(SubnetSelection),\n settings: IDL.Opt(CanisterSettings),\n subnet_type: IDL.Opt(IDL.Text),\n });\n const NotifyError = IDL.Variant({\n Refunded: IDL.Record({\n block_index: IDL.Opt(BlockIndex),\n reason: IDL.Text,\n }),\n InvalidTransaction: IDL.Text,\n Other: IDL.Record({\n error_message: IDL.Text,\n error_code: IDL.Nat64,\n }),\n Processing: IDL.Null,\n TransactionTooOld: BlockIndex,\n });\n const NotifyCreateCanisterResult = IDL.Variant({\n Ok: IDL.Principal,\n Err: NotifyError,\n });\n const Memo = IDL.Opt(IDL.Vec(IDL.Nat8));\n const Subaccount = IDL.Opt(IDL.Vec(IDL.Nat8));\n const NotifyMintCyclesArg = IDL.Record({\n block_index: BlockIndex,\n deposit_memo: Memo,\n to_subaccount: Subaccount,\n });\n const NotifyMintCyclesSuccess = IDL.Record({\n balance: IDL.Nat,\n block_index: IDL.Nat,\n minted: IDL.Nat,\n });\n const NotifyMintCyclesResult = IDL.Variant({\n Ok: NotifyMintCyclesSuccess,\n Err: NotifyError,\n });\n const NotifyTopUpArg = IDL.Record({\n block_index: BlockIndex,\n canister_id: IDL.Principal,\n });\n const Cycles = IDL.Nat;\n const NotifyTopUpResult = IDL.Variant({ Ok: Cycles, Err: NotifyError });\n const SetAuthorizedSubnetworkListArgs = IDL.Record({\n who: IDL.Opt(IDL.Principal),\n subnets: IDL.Vec(IDL.Principal),\n });\n const UpdateSubnetTypeArgs = IDL.Variant({\n Add: IDL.Text,\n Remove: IDL.Text,\n });\n\n return IDL.Service({\n change_subnet_type_assignment: IDL.Func(\n [ChangeSubnetTypeAssignmentArgs],\n [],\n [],\n ),\n create_canister: IDL.Func([CreateCanisterArg], [CreateCanisterResult], []),\n get_build_metadata: IDL.Func([], [IDL.Text], []),\n get_default_subnets: IDL.Func([], [IDL.Vec(IDL.Principal)], []),\n get_icp_xdr_conversion_rate: IDL.Func(\n [],\n [IcpXdrConversionRateResponse],\n [],\n ),\n get_principals_authorized_to_create_canisters_to_subnets: IDL.Func(\n [],\n [PrincipalsAuthorizedToCreateCanistersToSubnetsResponse],\n [],\n ),\n get_subnet_types_to_subnets: IDL.Func(\n [],\n [SubnetTypesToSubnetsResponse],\n [],\n ),\n notify_create_canister: IDL.Func(\n [NotifyCreateCanisterArg],\n [NotifyCreateCanisterResult],\n [],\n ),\n notify_mint_cycles: IDL.Func(\n [NotifyMintCyclesArg],\n [NotifyMintCyclesResult],\n [],\n ),\n notify_top_up: IDL.Func([NotifyTopUpArg], [NotifyTopUpResult], []),\n set_authorized_subnetwork_list: IDL.Func(\n [SetAuthorizedSubnetworkListArgs],\n [],\n [],\n ),\n update_subnet_type: IDL.Func([UpdateSubnetTypeArgs], [], []),\n });\n};\n\nexport const init = ({ IDL }) => {\n const ExchangeRateCanister = IDL.Variant({\n Set: IDL.Principal,\n Unset: IDL.Null,\n });\n const AccountIdentifier = IDL.Text;\n const CyclesCanisterInitPayload = IDL.Record({\n exchange_rate_canister: IDL.Opt(ExchangeRateCanister),\n cycles_ledger_canister_id: IDL.Opt(IDL.Principal),\n last_purged_notification: IDL.Opt(IDL.Nat64),\n governance_canister_id: IDL.Opt(IDL.Principal),\n minting_account_id: IDL.Opt(AccountIdentifier),\n ledger_canister_id: IDL.Opt(IDL.Principal),\n });\n\n return [IDL.Opt(CyclesCanisterInitPayload)];\n};\n", "/* eslint-disable */\n\n// @ts-nocheck\n\n// This file was automatically generated by @icp-sdk/bindgen@0.2.0.\n// You should NOT make any changes in this file as it will be overwritten.\n// Additionally, you should also exclude this file from your linter and/or formatter to prevent it from being checked or modified.\n\nexport const idlFactory = ({ IDL }) => {\n const ExchangeRateCanister = IDL.Variant({\n Set: IDL.Principal,\n Unset: IDL.Null,\n });\n const AccountIdentifier = IDL.Text;\n const CyclesCanisterInitPayload = IDL.Record({\n exchange_rate_canister: IDL.Opt(ExchangeRateCanister),\n cycles_ledger_canister_id: IDL.Opt(IDL.Principal),\n last_purged_notification: IDL.Opt(IDL.Nat64),\n governance_canister_id: IDL.Opt(IDL.Principal),\n minting_account_id: IDL.Opt(AccountIdentifier),\n ledger_canister_id: IDL.Opt(IDL.Principal),\n });\n const SubnetListWithType = IDL.Record({\n subnets: IDL.Vec(IDL.Principal),\n subnet_type: IDL.Text,\n });\n const ChangeSubnetTypeAssignmentArgs = IDL.Variant({\n Add: SubnetListWithType,\n Remove: SubnetListWithType,\n });\n const SubnetFilter = IDL.Record({ subnet_type: IDL.Opt(IDL.Text) });\n const SubnetSelection = IDL.Variant({\n Filter: SubnetFilter,\n Subnet: IDL.Record({ subnet: IDL.Principal }),\n });\n const environment_variable = IDL.Record({\n value: IDL.Text,\n name: IDL.Text,\n });\n const log_visibility = IDL.Variant({\n controllers: IDL.Null,\n public: IDL.Null,\n allowed_viewers: IDL.Vec(IDL.Principal),\n });\n const CanisterSettings = IDL.Record({\n freezing_threshold: IDL.Opt(IDL.Nat),\n wasm_memory_threshold: IDL.Opt(IDL.Nat),\n environment_variables: IDL.Opt(IDL.Vec(environment_variable)),\n controllers: IDL.Opt(IDL.Vec(IDL.Principal)),\n reserved_cycles_limit: IDL.Opt(IDL.Nat),\n log_visibility: IDL.Opt(log_visibility),\n log_memory_limit: IDL.Opt(IDL.Nat),\n wasm_memory_limit: IDL.Opt(IDL.Nat),\n memory_allocation: IDL.Opt(IDL.Nat),\n compute_allocation: IDL.Opt(IDL.Nat),\n });\n const CreateCanisterArg = IDL.Record({\n subnet_selection: IDL.Opt(SubnetSelection),\n settings: IDL.Opt(CanisterSettings),\n subnet_type: IDL.Opt(IDL.Text),\n });\n const CreateCanisterError = IDL.Variant({\n Refunded: IDL.Record({\n create_error: IDL.Text,\n refund_amount: IDL.Nat,\n }),\n });\n const CreateCanisterResult = IDL.Variant({\n Ok: IDL.Principal,\n Err: CreateCanisterError,\n });\n const IcpXdrConversionRate = IDL.Record({\n xdr_permyriad_per_icp: IDL.Nat64,\n timestamp_seconds: IDL.Nat64,\n });\n const IcpXdrConversionRateResponse = IDL.Record({\n certificate: IDL.Vec(IDL.Nat8),\n data: IcpXdrConversionRate,\n hash_tree: IDL.Vec(IDL.Nat8),\n });\n const PrincipalsAuthorizedToCreateCanistersToSubnetsResponse = IDL.Record({\n data: IDL.Vec(IDL.Tuple(IDL.Principal, IDL.Vec(IDL.Principal))),\n });\n const SubnetTypesToSubnetsResponse = IDL.Record({\n data: IDL.Vec(IDL.Tuple(IDL.Text, IDL.Vec(IDL.Principal))),\n });\n const BlockIndex = IDL.Nat64;\n const NotifyCreateCanisterArg = IDL.Record({\n controller: IDL.Principal,\n block_index: BlockIndex,\n subnet_selection: IDL.Opt(SubnetSelection),\n settings: IDL.Opt(CanisterSettings),\n subnet_type: IDL.Opt(IDL.Text),\n });\n const NotifyError = IDL.Variant({\n Refunded: IDL.Record({\n block_index: IDL.Opt(BlockIndex),\n reason: IDL.Text,\n }),\n InvalidTransaction: IDL.Text,\n Other: IDL.Record({\n error_message: IDL.Text,\n error_code: IDL.Nat64,\n }),\n Processing: IDL.Null,\n TransactionTooOld: BlockIndex,\n });\n const NotifyCreateCanisterResult = IDL.Variant({\n Ok: IDL.Principal,\n Err: NotifyError,\n });\n const Memo = IDL.Opt(IDL.Vec(IDL.Nat8));\n const Subaccount = IDL.Opt(IDL.Vec(IDL.Nat8));\n const NotifyMintCyclesArg = IDL.Record({\n block_index: BlockIndex,\n deposit_memo: Memo,\n to_subaccount: Subaccount,\n });\n const NotifyMintCyclesSuccess = IDL.Record({\n balance: IDL.Nat,\n block_index: IDL.Nat,\n minted: IDL.Nat,\n });\n const NotifyMintCyclesResult = IDL.Variant({\n Ok: NotifyMintCyclesSuccess,\n Err: NotifyError,\n });\n const NotifyTopUpArg = IDL.Record({\n block_index: BlockIndex,\n canister_id: IDL.Principal,\n });\n const Cycles = IDL.Nat;\n const NotifyTopUpResult = IDL.Variant({ Ok: Cycles, Err: NotifyError });\n const SetAuthorizedSubnetworkListArgs = IDL.Record({\n who: IDL.Opt(IDL.Principal),\n subnets: IDL.Vec(IDL.Principal),\n });\n const UpdateSubnetTypeArgs = IDL.Variant({\n Add: IDL.Text,\n Remove: IDL.Text,\n });\n\n return IDL.Service({\n change_subnet_type_assignment: IDL.Func(\n [ChangeSubnetTypeAssignmentArgs],\n [],\n [],\n ),\n create_canister: IDL.Func([CreateCanisterArg], [CreateCanisterResult], []),\n get_build_metadata: IDL.Func([], [IDL.Text], [\"query\"]),\n get_default_subnets: IDL.Func([], [IDL.Vec(IDL.Principal)], [\"query\"]),\n get_icp_xdr_conversion_rate: IDL.Func(\n [],\n [IcpXdrConversionRateResponse],\n [\"query\"],\n ),\n get_principals_authorized_to_create_canisters_to_subnets: IDL.Func(\n [],\n [PrincipalsAuthorizedToCreateCanistersToSubnetsResponse],\n [\"query\"],\n ),\n get_subnet_types_to_subnets: IDL.Func(\n [],\n [SubnetTypesToSubnetsResponse],\n [\"query\"],\n ),\n notify_create_canister: IDL.Func(\n [NotifyCreateCanisterArg],\n [NotifyCreateCanisterResult],\n [],\n ),\n notify_mint_cycles: IDL.Func(\n [NotifyMintCyclesArg],\n [NotifyMintCyclesResult],\n [],\n ),\n notify_top_up: IDL.Func([NotifyTopUpArg], [NotifyTopUpResult], []),\n set_authorized_subnetwork_list: IDL.Func(\n [SetAuthorizedSubnetworkListArgs],\n [],\n [],\n ),\n update_subnet_type: IDL.Func([UpdateSubnetTypeArgs], [], []),\n });\n};\n\nexport const init = ({ IDL }) => {\n const ExchangeRateCanister = IDL.Variant({\n Set: IDL.Principal,\n Unset: IDL.Null,\n });\n const AccountIdentifier = IDL.Text;\n const CyclesCanisterInitPayload = IDL.Record({\n exchange_rate_canister: IDL.Opt(ExchangeRateCanister),\n cycles_ledger_canister_id: IDL.Opt(IDL.Principal),\n last_purged_notification: IDL.Opt(IDL.Nat64),\n governance_canister_id: IDL.Opt(IDL.Principal),\n minting_account_id: IDL.Opt(AccountIdentifier),\n ledger_canister_id: IDL.Opt(IDL.Principal),\n });\n\n return [IDL.Opt(CyclesCanisterInitPayload)];\n};\n", "import { assertNever, jsonReplacer } from \"@dfinity/utils\";\nimport type { NotifyError } from \"./candid/cmc\";\n\nexport class RefundedError extends Error {}\nexport class InvalidaTransactionError extends Error {}\nexport class CMCError extends Error {}\nexport class ProcessingError extends Error {}\nexport class TransactionTooOldError extends Error {}\n\n// Throws one of the errors above\nexport const throwNotifyError = ({\n Err: error,\n}: {\n Err: NotifyError;\n}): void => {\n if (\"Refunded\" in error) {\n throw new RefundedError(error.Refunded.reason);\n }\n if (\"InvalidTransaction\" in error) {\n throw new InvalidaTransactionError(error.InvalidTransaction);\n }\n if (\"Processing\" in error) {\n throw new ProcessingError();\n }\n if (\"TransactionTooOld\" in error) {\n throw new TransactionTooOldError();\n }\n if (\"Other\" in error) {\n throw new CMCError(\n `Error in CMC with code ${error.Other.error_code}: ${error.Other.error_message}`,\n );\n }\n\n assertNever(\n error,\n `Unsupported error type ${JSON.stringify(error, jsonReplacer)}`,\n );\n};\n"],
5
- "mappings": "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",
6
- "names": ["Canister", "createServices", "idlFactory", "IDL", "ExchangeRateCanister", "AccountIdentifier", "CyclesCanisterInitPayload", "SubnetListWithType", "ChangeSubnetTypeAssignmentArgs", "SubnetFilter", "SubnetSelection", "environment_variable", "log_visibility", "CanisterSettings", "CreateCanisterArg", "CreateCanisterError", "CreateCanisterResult", "IcpXdrConversionRate", "IcpXdrConversionRateResponse", "PrincipalsAuthorizedToCreateCanistersToSubnetsResponse", "SubnetTypesToSubnetsResponse", "BlockIndex", "NotifyCreateCanisterArg", "NotifyError", "NotifyCreateCanisterResult", "Memo", "Subaccount", "NotifyMintCyclesArg", "NotifyMintCyclesSuccess", "NotifyMintCyclesResult", "NotifyTopUpArg", "Cycles", "NotifyTopUpResult", "SetAuthorizedSubnetworkListArgs", "UpdateSubnetTypeArgs", "idlFactory", "IDL", "ExchangeRateCanister", "AccountIdentifier", "CyclesCanisterInitPayload", "SubnetListWithType", "ChangeSubnetTypeAssignmentArgs", "SubnetFilter", "SubnetSelection", "environment_variable", "log_visibility", "CanisterSettings", "CreateCanisterArg", "CreateCanisterError", "CreateCanisterResult", "IcpXdrConversionRate", "IcpXdrConversionRateResponse", "PrincipalsAuthorizedToCreateCanistersToSubnetsResponse", "SubnetTypesToSubnetsResponse", "BlockIndex", "NotifyCreateCanisterArg", "NotifyError", "NotifyCreateCanisterResult", "Memo", "Subaccount", "NotifyMintCyclesArg", "NotifyMintCyclesSuccess", "NotifyMintCyclesResult", "NotifyTopUpArg", "Cycles", "NotifyTopUpResult", "SetAuthorizedSubnetworkListArgs", "UpdateSubnetTypeArgs", "assertNever", "jsonReplacer", "RefundedError", "InvalidaTransactionError", "CMCError", "ProcessingError", "TransactionTooOldError", "throwNotifyError", "error", "CMCCanister", "_CMCCanister", "Canister", "options", "service", "certifiedService", "canisterId", "createServices", "idlFactory", "certified", "data", "request", "response", "throwNotifyError", "get_default_subnets", "get_subnet_types_to_subnets"]
3
+ "sources": ["../src/index.ts"],
4
+ "sourcesContent": ["import type { CmcDid } from \"@icp-sdk/canisters/cmc\";\n\nexport type Cycles = CmcDid.Cycles;\nexport type NotifyCreateCanisterArg = CmcDid.NotifyCreateCanisterArg;\nexport type NotifyTopUpArg = CmcDid.NotifyTopUpArg;\nexport type SubnetTypesToSubnetsResponse = CmcDid.SubnetTypesToSubnetsResponse;\n\n/**\n * @deprecated Use \"@icp-sdk/canisters/cmc\" directly instead\n */\nexport * from \"@icp-sdk/canisters/cmc\";\n\n/**\n * Legacy re-export for backward compatibility.\n * @deprecated Use \"@icp-sdk/canisters/cmc\" directly instead\n */\nexport {\n CmcCanister as CMCCanister,\n CmcError as CMCError,\n type CmcCanisterOptions as CMCCanisterOptions,\n} from \"@icp-sdk/canisters/cmc\";\n"],
5
+ "mappings": "AAUA,WAAc,yBAMd,OACiB,eAAfA,EACY,YAAZC,MAEK",
6
+ "names": ["CmcCanister", "CmcError"]
7
7
  }
package/dist/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
1
  import { createRequire as topLevelCreateRequire } from 'module';
2
2
  const require = topLevelCreateRequire(import.meta.url);
3
- import{Canister as B,createServices as W}from"@dfinity/utils";var $=({IDL:t})=>{let n=t.Variant({Set:t.Principal,Unset:t.Null}),e=t.Text,a=t.Record({exchange_rate_canister:t.Opt(n),cycles_ledger_canister_id:t.Opt(t.Principal),last_purged_notification:t.Opt(t.Nat64),governance_canister_id:t.Opt(t.Principal),minting_account_id:t.Opt(e),ledger_canister_id:t.Opt(t.Principal)}),i=t.Record({subnets:t.Vec(t.Principal),subnet_type:t.Text}),p=t.Variant({Add:i,Remove:i}),l=t.Record({subnet_type:t.Opt(t.Text)}),s=t.Variant({Filter:l,Subnet:t.Record({subnet:t.Principal})}),_=t.Record({value:t.Text,name:t.Text}),d=t.Variant({controllers:t.Null,public:t.Null,allowed_viewers:t.Vec(t.Principal)}),o=t.Record({freezing_threshold:t.Opt(t.Nat),wasm_memory_threshold:t.Opt(t.Nat),environment_variables:t.Opt(t.Vec(_)),controllers:t.Opt(t.Vec(t.Principal)),reserved_cycles_limit:t.Opt(t.Nat),log_visibility:t.Opt(d),log_memory_limit:t.Opt(t.Nat),wasm_memory_limit:t.Opt(t.Nat),memory_allocation:t.Opt(t.Nat),compute_allocation:t.Opt(t.Nat)}),u=t.Record({subnet_selection:t.Opt(s),settings:t.Opt(o),subnet_type:t.Opt(t.Text)}),y=t.Variant({Refunded:t.Record({create_error:t.Text,refund_amount:t.Nat})}),m=t.Variant({Ok:t.Principal,Err:y}),b=t.Record({xdr_permyriad_per_icp:t.Nat64,timestamp_seconds:t.Nat64}),g=t.Record({certificate:t.Vec(t.Nat8),data:b,hash_tree:t.Vec(t.Nat8)}),O=t.Record({data:t.Vec(t.Tuple(t.Principal,t.Vec(t.Principal)))}),f=t.Record({data:t.Vec(t.Tuple(t.Text,t.Vec(t.Principal)))}),r=t.Nat64,C=t.Record({controller:t.Principal,block_index:r,subnet_selection:t.Opt(s),settings:t.Opt(o),subnet_type:t.Opt(t.Text)}),c=t.Variant({Refunded:t.Record({block_index:t.Opt(r),reason:t.Text}),InvalidTransaction:t.Text,Other:t.Record({error_message:t.Text,error_code:t.Nat64}),Processing:t.Null,TransactionTooOld:r}),N=t.Variant({Ok:t.Principal,Err:c}),x=t.Opt(t.Vec(t.Nat8)),R=t.Opt(t.Vec(t.Nat8)),T=t.Record({block_index:r,deposit_memo:x,to_subaccount:R}),P=t.Record({balance:t.Nat,block_index:t.Nat,minted:t.Nat}),h=t.Variant({Ok:P,Err:c}),S=t.Record({block_index:r,canister_id:t.Principal}),V=t.Nat,v=t.Variant({Ok:V,Err:c}),w=t.Record({who:t.Opt(t.Principal),subnets:t.Vec(t.Principal)}),A=t.Variant({Add:t.Text,Remove:t.Text});return t.Service({change_subnet_type_assignment:t.Func([p],[],[]),create_canister:t.Func([u],[m],[]),get_build_metadata:t.Func([],[t.Text],[]),get_default_subnets:t.Func([],[t.Vec(t.Principal)],[]),get_icp_xdr_conversion_rate:t.Func([],[g],[]),get_principals_authorized_to_create_canisters_to_subnets:t.Func([],[O],[]),get_subnet_types_to_subnets:t.Func([],[f],[]),notify_create_canister:t.Func([C],[N],[]),notify_mint_cycles:t.Func([T],[h],[]),notify_top_up:t.Func([S],[v],[]),set_authorized_subnetwork_list:t.Func([w],[],[]),update_subnet_type:t.Func([A],[],[])})};var Q=({IDL:t})=>{let n=t.Variant({Set:t.Principal,Unset:t.Null}),e=t.Text,a=t.Record({exchange_rate_canister:t.Opt(n),cycles_ledger_canister_id:t.Opt(t.Principal),last_purged_notification:t.Opt(t.Nat64),governance_canister_id:t.Opt(t.Principal),minting_account_id:t.Opt(e),ledger_canister_id:t.Opt(t.Principal)}),i=t.Record({subnets:t.Vec(t.Principal),subnet_type:t.Text}),p=t.Variant({Add:i,Remove:i}),l=t.Record({subnet_type:t.Opt(t.Text)}),s=t.Variant({Filter:l,Subnet:t.Record({subnet:t.Principal})}),_=t.Record({value:t.Text,name:t.Text}),d=t.Variant({controllers:t.Null,public:t.Null,allowed_viewers:t.Vec(t.Principal)}),o=t.Record({freezing_threshold:t.Opt(t.Nat),wasm_memory_threshold:t.Opt(t.Nat),environment_variables:t.Opt(t.Vec(_)),controllers:t.Opt(t.Vec(t.Principal)),reserved_cycles_limit:t.Opt(t.Nat),log_visibility:t.Opt(d),log_memory_limit:t.Opt(t.Nat),wasm_memory_limit:t.Opt(t.Nat),memory_allocation:t.Opt(t.Nat),compute_allocation:t.Opt(t.Nat)}),u=t.Record({subnet_selection:t.Opt(s),settings:t.Opt(o),subnet_type:t.Opt(t.Text)}),y=t.Variant({Refunded:t.Record({create_error:t.Text,refund_amount:t.Nat})}),m=t.Variant({Ok:t.Principal,Err:y}),b=t.Record({xdr_permyriad_per_icp:t.Nat64,timestamp_seconds:t.Nat64}),g=t.Record({certificate:t.Vec(t.Nat8),data:b,hash_tree:t.Vec(t.Nat8)}),O=t.Record({data:t.Vec(t.Tuple(t.Principal,t.Vec(t.Principal)))}),f=t.Record({data:t.Vec(t.Tuple(t.Text,t.Vec(t.Principal)))}),r=t.Nat64,C=t.Record({controller:t.Principal,block_index:r,subnet_selection:t.Opt(s),settings:t.Opt(o),subnet_type:t.Opt(t.Text)}),c=t.Variant({Refunded:t.Record({block_index:t.Opt(r),reason:t.Text}),InvalidTransaction:t.Text,Other:t.Record({error_message:t.Text,error_code:t.Nat64}),Processing:t.Null,TransactionTooOld:r}),N=t.Variant({Ok:t.Principal,Err:c}),x=t.Opt(t.Vec(t.Nat8)),R=t.Opt(t.Vec(t.Nat8)),T=t.Record({block_index:r,deposit_memo:x,to_subaccount:R}),P=t.Record({balance:t.Nat,block_index:t.Nat,minted:t.Nat}),h=t.Variant({Ok:P,Err:c}),S=t.Record({block_index:r,canister_id:t.Principal}),V=t.Nat,v=t.Variant({Ok:V,Err:c}),w=t.Record({who:t.Opt(t.Principal),subnets:t.Vec(t.Principal)}),A=t.Variant({Add:t.Text,Remove:t.Text});return t.Service({change_subnet_type_assignment:t.Func([p],[],[]),create_canister:t.Func([u],[m],[]),get_build_metadata:t.Func([],[t.Text],["query"]),get_default_subnets:t.Func([],[t.Vec(t.Principal)],["query"]),get_icp_xdr_conversion_rate:t.Func([],[g],["query"]),get_principals_authorized_to_create_canisters_to_subnets:t.Func([],[O],["query"]),get_subnet_types_to_subnets:t.Func([],[f],["query"]),notify_create_canister:t.Func([C],[N],[]),notify_mint_cycles:t.Func([T],[h],[]),notify_top_up:t.Func([S],[v],[]),set_authorized_subnetwork_list:t.Func([w],[],[]),update_subnet_type:t.Func([A],[],[])})};import{assertNever as X,jsonReplacer as J}from"@dfinity/utils";var F=class extends Error{},k=class extends Error{},E=class extends Error{},U=class extends Error{},M=class extends Error{},z=({Err:t})=>{if("Refunded"in t)throw new F(t.Refunded.reason);if("InvalidTransaction"in t)throw new k(t.InvalidTransaction);if("Processing"in t)throw new U;if("TransactionTooOld"in t)throw new M;if("Other"in t)throw new E(`Error in CMC with code ${t.Other.error_code}: ${t.Other.error_message}`);X(t,`Unsupported error type ${JSON.stringify(t,J)}`)};var q=class t extends B{static create(n){let{service:e,certifiedService:a,canisterId:i}=W({options:n,idlFactory:Q,certifiedIdlFactory:$});return new t(i,e,a)}getIcpToCyclesConversionRate=async({certified:n}={})=>{let{data:e}=await this.caller({certified:n}).get_icp_xdr_conversion_rate();return e.xdr_permyriad_per_icp};notifyCreateCanister=async n=>{let e=await this.service.notify_create_canister(n);if("Err"in e&&z(e),"Ok"in e)return e.Ok;throw new Error(`Unsupported response type in notifyCreateCanister ${JSON.stringify(e)}`)};notifyTopUp=async n=>{let e=await this.service.notify_top_up(n);if("Err"in e&&z(e),"Ok"in e)return e.Ok;throw new Error(`Unsupported response type in notifyTopUp ${JSON.stringify(e)}`)};getDefaultSubnets=({certified:n}={})=>{let{get_default_subnets:e}=this.caller({certified:n});return e()};getSubnetTypesToSubnets=({certified:n}={})=>{let{get_subnet_types_to_subnets:e}=this.caller({certified:n});return e()}};export{q as CMCCanister,E as CMCError,k as InvalidaTransactionError,U as ProcessingError,F as RefundedError,M as TransactionTooOldError,z as throwNotifyError};
3
+ export*from"@icp-sdk/canisters/cmc";import{CmcCanister as o,CmcError as p}from"@icp-sdk/canisters/cmc";export{o as CMCCanister,p as CMCError};
4
4
  //# sourceMappingURL=index.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../src/cmc.canister.ts", "../src/candid/cmc.certified.idl.js", "../src/candid/cmc.idl.js", "../src/cmc.errors.ts"],
4
- "sourcesContent": ["import { Canister, createServices, type QueryParams } from \"@dfinity/utils\";\nimport type { Principal } from \"@icp-sdk/core/principal\";\nimport type {\n _SERVICE as CMCCanisterService,\n Cycles,\n NotifyCreateCanisterArg,\n NotifyTopUpArg,\n SubnetTypesToSubnetsResponse,\n} from \"./candid/cmc\";\nimport { idlFactory as certifiedIdlFactory } from \"./candid/cmc.certified.idl\";\nimport { idlFactory } from \"./candid/cmc.idl\";\nimport { throwNotifyError } from \"./cmc.errors\";\nimport type { CMCCanisterOptions } from \"./cmc.options\";\n\nexport class CMCCanister extends Canister<CMCCanisterService> {\n static create(options: CMCCanisterOptions): CMCCanister {\n const { service, certifiedService, canisterId } =\n createServices<CMCCanisterService>({\n options,\n idlFactory,\n certifiedIdlFactory,\n });\n\n return new CMCCanister(canisterId, service, certifiedService);\n }\n\n /**\n * Returns conversion rate of ICP to Cycles. It can be called as query or update.\n *\n * @param {Object} [params] - The parameters for the call.\n * @param {boolean} [params.certified] - Determines whether the response should be certified (default: non-certified)\n *\n * @returns Promise<BigInt>\n */\n public getIcpToCyclesConversionRate = async ({\n certified,\n }: QueryParams = {}): Promise<bigint> => {\n const { data } = await this.caller({\n certified,\n }).get_icp_xdr_conversion_rate();\n\n // TODO: validate the certificate in the response - https://dfinity.atlassian.net/browse/GIX-150\n // Example: https://github.com/dfinity/response-verification/tree/main/examples/certification/certified-counter\n return data.xdr_permyriad_per_icp;\n };\n\n /**\n * Notifies Cycles Minting Canister of the creation of a new canister.\n * It returns the new canister principal.\n *\n * @param {Object} request\n * @param {Principal} request.controller\n * @param {BlockIndex} request.block_index\n * @returns Promise<Principal>\n * @throws RefundedError, InvalidaTransactionError, ProcessingError, TransactionTooOldError, CMCError\n */\n public notifyCreateCanister = async (\n request: NotifyCreateCanisterArg,\n ): Promise<Principal> => {\n const response = await this.service.notify_create_canister(request);\n if (\"Err\" in response) {\n throwNotifyError(response);\n }\n if (\"Ok\" in response) {\n return response.Ok;\n }\n // Edge case\n throw new Error(\n `Unsupported response type in notifyCreateCanister ${JSON.stringify(\n response,\n )}`,\n );\n };\n\n /**\n * Notifies Cycles Minting Canister of new cycles being added to canister.\n * It returns the new Cycles of the canister.\n *\n * @param {Object} request\n * @param {Principal} request.canister_id\n * @param {BlockIndex} request.block_index\n * @returns Promise<Cycles>\n * @throws RefundedError, InvalidaTransactionError, ProcessingError, TransactionTooOldError, CMCError\n */\n public notifyTopUp = async (request: NotifyTopUpArg): Promise<Cycles> => {\n const response = await this.service.notify_top_up(request);\n if (\"Err\" in response) {\n throwNotifyError(response);\n }\n if (\"Ok\" in response) {\n return response.Ok;\n }\n // Edge case\n throw new Error(\n `Unsupported response type in notifyTopUp ${JSON.stringify(response)}`,\n );\n };\n\n /**\n * This function calls the `get_default_subnets` method of the CMC canister, which returns a list of\n * default subnets as `Principal` objects. It can be called as query or update.\n *\n * @param {Object} [params] - The query parameters for the call.\n * @param {boolean} [params.certified] - Determines whether the response should be certified\n * (default: non-certified if not specified).\n *\n * @returns {Promise<Principal[]>} - A promise that resolves to an array of `Principal` objects\n * representing the default subnets.\n */\n public getDefaultSubnets = ({ certified }: QueryParams = {}): Promise<\n Principal[]\n > => {\n const { get_default_subnets } = this.caller({ certified });\n return get_default_subnets();\n };\n\n /**\n * This function calls the `get_subnet_types_to_subnets` method of the CMC canister, which returns a list of subnets where canisters can be created.\n * These subnets are excluded from the random subnet selection process used by the CMC when no explicit subnet ID is provided\n * during canister creation and therefore, not provided in the results of the similar function `get_default_subnets`.\n *\n * @param {Object} [params] - The optional query parameters for the call.\n * @param {boolean} [params.certified=false] - Specifies whether the response should be certified.\n * If not provided, the response defaults to non-certified.\n *\n * @returns {Promise<SubnetTypesToSubnetsResponse>} - A promise that resolves to an object representing\n * the mapping of subnet types to subnets.\n */\n public getSubnetTypesToSubnets = ({\n certified,\n }: QueryParams = {}): Promise<SubnetTypesToSubnetsResponse> => {\n const { get_subnet_types_to_subnets } = this.caller({ certified });\n return get_subnet_types_to_subnets();\n };\n}\n", "/* eslint-disable */\n\n// @ts-nocheck\n\n// This file was automatically generated by @icp-sdk/bindgen@0.2.0.\n// You should NOT make any changes in this file as it will be overwritten.\n// Additionally, you should also exclude this file from your linter and/or formatter to prevent it from being checked or modified.\n\nexport const idlFactory = ({ IDL }) => {\n const ExchangeRateCanister = IDL.Variant({\n Set: IDL.Principal,\n Unset: IDL.Null,\n });\n const AccountIdentifier = IDL.Text;\n const CyclesCanisterInitPayload = IDL.Record({\n exchange_rate_canister: IDL.Opt(ExchangeRateCanister),\n cycles_ledger_canister_id: IDL.Opt(IDL.Principal),\n last_purged_notification: IDL.Opt(IDL.Nat64),\n governance_canister_id: IDL.Opt(IDL.Principal),\n minting_account_id: IDL.Opt(AccountIdentifier),\n ledger_canister_id: IDL.Opt(IDL.Principal),\n });\n const SubnetListWithType = IDL.Record({\n subnets: IDL.Vec(IDL.Principal),\n subnet_type: IDL.Text,\n });\n const ChangeSubnetTypeAssignmentArgs = IDL.Variant({\n Add: SubnetListWithType,\n Remove: SubnetListWithType,\n });\n const SubnetFilter = IDL.Record({ subnet_type: IDL.Opt(IDL.Text) });\n const SubnetSelection = IDL.Variant({\n Filter: SubnetFilter,\n Subnet: IDL.Record({ subnet: IDL.Principal }),\n });\n const environment_variable = IDL.Record({\n value: IDL.Text,\n name: IDL.Text,\n });\n const log_visibility = IDL.Variant({\n controllers: IDL.Null,\n public: IDL.Null,\n allowed_viewers: IDL.Vec(IDL.Principal),\n });\n const CanisterSettings = IDL.Record({\n freezing_threshold: IDL.Opt(IDL.Nat),\n wasm_memory_threshold: IDL.Opt(IDL.Nat),\n environment_variables: IDL.Opt(IDL.Vec(environment_variable)),\n controllers: IDL.Opt(IDL.Vec(IDL.Principal)),\n reserved_cycles_limit: IDL.Opt(IDL.Nat),\n log_visibility: IDL.Opt(log_visibility),\n log_memory_limit: IDL.Opt(IDL.Nat),\n wasm_memory_limit: IDL.Opt(IDL.Nat),\n memory_allocation: IDL.Opt(IDL.Nat),\n compute_allocation: IDL.Opt(IDL.Nat),\n });\n const CreateCanisterArg = IDL.Record({\n subnet_selection: IDL.Opt(SubnetSelection),\n settings: IDL.Opt(CanisterSettings),\n subnet_type: IDL.Opt(IDL.Text),\n });\n const CreateCanisterError = IDL.Variant({\n Refunded: IDL.Record({\n create_error: IDL.Text,\n refund_amount: IDL.Nat,\n }),\n });\n const CreateCanisterResult = IDL.Variant({\n Ok: IDL.Principal,\n Err: CreateCanisterError,\n });\n const IcpXdrConversionRate = IDL.Record({\n xdr_permyriad_per_icp: IDL.Nat64,\n timestamp_seconds: IDL.Nat64,\n });\n const IcpXdrConversionRateResponse = IDL.Record({\n certificate: IDL.Vec(IDL.Nat8),\n data: IcpXdrConversionRate,\n hash_tree: IDL.Vec(IDL.Nat8),\n });\n const PrincipalsAuthorizedToCreateCanistersToSubnetsResponse = IDL.Record({\n data: IDL.Vec(IDL.Tuple(IDL.Principal, IDL.Vec(IDL.Principal))),\n });\n const SubnetTypesToSubnetsResponse = IDL.Record({\n data: IDL.Vec(IDL.Tuple(IDL.Text, IDL.Vec(IDL.Principal))),\n });\n const BlockIndex = IDL.Nat64;\n const NotifyCreateCanisterArg = IDL.Record({\n controller: IDL.Principal,\n block_index: BlockIndex,\n subnet_selection: IDL.Opt(SubnetSelection),\n settings: IDL.Opt(CanisterSettings),\n subnet_type: IDL.Opt(IDL.Text),\n });\n const NotifyError = IDL.Variant({\n Refunded: IDL.Record({\n block_index: IDL.Opt(BlockIndex),\n reason: IDL.Text,\n }),\n InvalidTransaction: IDL.Text,\n Other: IDL.Record({\n error_message: IDL.Text,\n error_code: IDL.Nat64,\n }),\n Processing: IDL.Null,\n TransactionTooOld: BlockIndex,\n });\n const NotifyCreateCanisterResult = IDL.Variant({\n Ok: IDL.Principal,\n Err: NotifyError,\n });\n const Memo = IDL.Opt(IDL.Vec(IDL.Nat8));\n const Subaccount = IDL.Opt(IDL.Vec(IDL.Nat8));\n const NotifyMintCyclesArg = IDL.Record({\n block_index: BlockIndex,\n deposit_memo: Memo,\n to_subaccount: Subaccount,\n });\n const NotifyMintCyclesSuccess = IDL.Record({\n balance: IDL.Nat,\n block_index: IDL.Nat,\n minted: IDL.Nat,\n });\n const NotifyMintCyclesResult = IDL.Variant({\n Ok: NotifyMintCyclesSuccess,\n Err: NotifyError,\n });\n const NotifyTopUpArg = IDL.Record({\n block_index: BlockIndex,\n canister_id: IDL.Principal,\n });\n const Cycles = IDL.Nat;\n const NotifyTopUpResult = IDL.Variant({ Ok: Cycles, Err: NotifyError });\n const SetAuthorizedSubnetworkListArgs = IDL.Record({\n who: IDL.Opt(IDL.Principal),\n subnets: IDL.Vec(IDL.Principal),\n });\n const UpdateSubnetTypeArgs = IDL.Variant({\n Add: IDL.Text,\n Remove: IDL.Text,\n });\n\n return IDL.Service({\n change_subnet_type_assignment: IDL.Func(\n [ChangeSubnetTypeAssignmentArgs],\n [],\n [],\n ),\n create_canister: IDL.Func([CreateCanisterArg], [CreateCanisterResult], []),\n get_build_metadata: IDL.Func([], [IDL.Text], []),\n get_default_subnets: IDL.Func([], [IDL.Vec(IDL.Principal)], []),\n get_icp_xdr_conversion_rate: IDL.Func(\n [],\n [IcpXdrConversionRateResponse],\n [],\n ),\n get_principals_authorized_to_create_canisters_to_subnets: IDL.Func(\n [],\n [PrincipalsAuthorizedToCreateCanistersToSubnetsResponse],\n [],\n ),\n get_subnet_types_to_subnets: IDL.Func(\n [],\n [SubnetTypesToSubnetsResponse],\n [],\n ),\n notify_create_canister: IDL.Func(\n [NotifyCreateCanisterArg],\n [NotifyCreateCanisterResult],\n [],\n ),\n notify_mint_cycles: IDL.Func(\n [NotifyMintCyclesArg],\n [NotifyMintCyclesResult],\n [],\n ),\n notify_top_up: IDL.Func([NotifyTopUpArg], [NotifyTopUpResult], []),\n set_authorized_subnetwork_list: IDL.Func(\n [SetAuthorizedSubnetworkListArgs],\n [],\n [],\n ),\n update_subnet_type: IDL.Func([UpdateSubnetTypeArgs], [], []),\n });\n};\n\nexport const init = ({ IDL }) => {\n const ExchangeRateCanister = IDL.Variant({\n Set: IDL.Principal,\n Unset: IDL.Null,\n });\n const AccountIdentifier = IDL.Text;\n const CyclesCanisterInitPayload = IDL.Record({\n exchange_rate_canister: IDL.Opt(ExchangeRateCanister),\n cycles_ledger_canister_id: IDL.Opt(IDL.Principal),\n last_purged_notification: IDL.Opt(IDL.Nat64),\n governance_canister_id: IDL.Opt(IDL.Principal),\n minting_account_id: IDL.Opt(AccountIdentifier),\n ledger_canister_id: IDL.Opt(IDL.Principal),\n });\n\n return [IDL.Opt(CyclesCanisterInitPayload)];\n};\n", "/* eslint-disable */\n\n// @ts-nocheck\n\n// This file was automatically generated by @icp-sdk/bindgen@0.2.0.\n// You should NOT make any changes in this file as it will be overwritten.\n// Additionally, you should also exclude this file from your linter and/or formatter to prevent it from being checked or modified.\n\nexport const idlFactory = ({ IDL }) => {\n const ExchangeRateCanister = IDL.Variant({\n Set: IDL.Principal,\n Unset: IDL.Null,\n });\n const AccountIdentifier = IDL.Text;\n const CyclesCanisterInitPayload = IDL.Record({\n exchange_rate_canister: IDL.Opt(ExchangeRateCanister),\n cycles_ledger_canister_id: IDL.Opt(IDL.Principal),\n last_purged_notification: IDL.Opt(IDL.Nat64),\n governance_canister_id: IDL.Opt(IDL.Principal),\n minting_account_id: IDL.Opt(AccountIdentifier),\n ledger_canister_id: IDL.Opt(IDL.Principal),\n });\n const SubnetListWithType = IDL.Record({\n subnets: IDL.Vec(IDL.Principal),\n subnet_type: IDL.Text,\n });\n const ChangeSubnetTypeAssignmentArgs = IDL.Variant({\n Add: SubnetListWithType,\n Remove: SubnetListWithType,\n });\n const SubnetFilter = IDL.Record({ subnet_type: IDL.Opt(IDL.Text) });\n const SubnetSelection = IDL.Variant({\n Filter: SubnetFilter,\n Subnet: IDL.Record({ subnet: IDL.Principal }),\n });\n const environment_variable = IDL.Record({\n value: IDL.Text,\n name: IDL.Text,\n });\n const log_visibility = IDL.Variant({\n controllers: IDL.Null,\n public: IDL.Null,\n allowed_viewers: IDL.Vec(IDL.Principal),\n });\n const CanisterSettings = IDL.Record({\n freezing_threshold: IDL.Opt(IDL.Nat),\n wasm_memory_threshold: IDL.Opt(IDL.Nat),\n environment_variables: IDL.Opt(IDL.Vec(environment_variable)),\n controllers: IDL.Opt(IDL.Vec(IDL.Principal)),\n reserved_cycles_limit: IDL.Opt(IDL.Nat),\n log_visibility: IDL.Opt(log_visibility),\n log_memory_limit: IDL.Opt(IDL.Nat),\n wasm_memory_limit: IDL.Opt(IDL.Nat),\n memory_allocation: IDL.Opt(IDL.Nat),\n compute_allocation: IDL.Opt(IDL.Nat),\n });\n const CreateCanisterArg = IDL.Record({\n subnet_selection: IDL.Opt(SubnetSelection),\n settings: IDL.Opt(CanisterSettings),\n subnet_type: IDL.Opt(IDL.Text),\n });\n const CreateCanisterError = IDL.Variant({\n Refunded: IDL.Record({\n create_error: IDL.Text,\n refund_amount: IDL.Nat,\n }),\n });\n const CreateCanisterResult = IDL.Variant({\n Ok: IDL.Principal,\n Err: CreateCanisterError,\n });\n const IcpXdrConversionRate = IDL.Record({\n xdr_permyriad_per_icp: IDL.Nat64,\n timestamp_seconds: IDL.Nat64,\n });\n const IcpXdrConversionRateResponse = IDL.Record({\n certificate: IDL.Vec(IDL.Nat8),\n data: IcpXdrConversionRate,\n hash_tree: IDL.Vec(IDL.Nat8),\n });\n const PrincipalsAuthorizedToCreateCanistersToSubnetsResponse = IDL.Record({\n data: IDL.Vec(IDL.Tuple(IDL.Principal, IDL.Vec(IDL.Principal))),\n });\n const SubnetTypesToSubnetsResponse = IDL.Record({\n data: IDL.Vec(IDL.Tuple(IDL.Text, IDL.Vec(IDL.Principal))),\n });\n const BlockIndex = IDL.Nat64;\n const NotifyCreateCanisterArg = IDL.Record({\n controller: IDL.Principal,\n block_index: BlockIndex,\n subnet_selection: IDL.Opt(SubnetSelection),\n settings: IDL.Opt(CanisterSettings),\n subnet_type: IDL.Opt(IDL.Text),\n });\n const NotifyError = IDL.Variant({\n Refunded: IDL.Record({\n block_index: IDL.Opt(BlockIndex),\n reason: IDL.Text,\n }),\n InvalidTransaction: IDL.Text,\n Other: IDL.Record({\n error_message: IDL.Text,\n error_code: IDL.Nat64,\n }),\n Processing: IDL.Null,\n TransactionTooOld: BlockIndex,\n });\n const NotifyCreateCanisterResult = IDL.Variant({\n Ok: IDL.Principal,\n Err: NotifyError,\n });\n const Memo = IDL.Opt(IDL.Vec(IDL.Nat8));\n const Subaccount = IDL.Opt(IDL.Vec(IDL.Nat8));\n const NotifyMintCyclesArg = IDL.Record({\n block_index: BlockIndex,\n deposit_memo: Memo,\n to_subaccount: Subaccount,\n });\n const NotifyMintCyclesSuccess = IDL.Record({\n balance: IDL.Nat,\n block_index: IDL.Nat,\n minted: IDL.Nat,\n });\n const NotifyMintCyclesResult = IDL.Variant({\n Ok: NotifyMintCyclesSuccess,\n Err: NotifyError,\n });\n const NotifyTopUpArg = IDL.Record({\n block_index: BlockIndex,\n canister_id: IDL.Principal,\n });\n const Cycles = IDL.Nat;\n const NotifyTopUpResult = IDL.Variant({ Ok: Cycles, Err: NotifyError });\n const SetAuthorizedSubnetworkListArgs = IDL.Record({\n who: IDL.Opt(IDL.Principal),\n subnets: IDL.Vec(IDL.Principal),\n });\n const UpdateSubnetTypeArgs = IDL.Variant({\n Add: IDL.Text,\n Remove: IDL.Text,\n });\n\n return IDL.Service({\n change_subnet_type_assignment: IDL.Func(\n [ChangeSubnetTypeAssignmentArgs],\n [],\n [],\n ),\n create_canister: IDL.Func([CreateCanisterArg], [CreateCanisterResult], []),\n get_build_metadata: IDL.Func([], [IDL.Text], [\"query\"]),\n get_default_subnets: IDL.Func([], [IDL.Vec(IDL.Principal)], [\"query\"]),\n get_icp_xdr_conversion_rate: IDL.Func(\n [],\n [IcpXdrConversionRateResponse],\n [\"query\"],\n ),\n get_principals_authorized_to_create_canisters_to_subnets: IDL.Func(\n [],\n [PrincipalsAuthorizedToCreateCanistersToSubnetsResponse],\n [\"query\"],\n ),\n get_subnet_types_to_subnets: IDL.Func(\n [],\n [SubnetTypesToSubnetsResponse],\n [\"query\"],\n ),\n notify_create_canister: IDL.Func(\n [NotifyCreateCanisterArg],\n [NotifyCreateCanisterResult],\n [],\n ),\n notify_mint_cycles: IDL.Func(\n [NotifyMintCyclesArg],\n [NotifyMintCyclesResult],\n [],\n ),\n notify_top_up: IDL.Func([NotifyTopUpArg], [NotifyTopUpResult], []),\n set_authorized_subnetwork_list: IDL.Func(\n [SetAuthorizedSubnetworkListArgs],\n [],\n [],\n ),\n update_subnet_type: IDL.Func([UpdateSubnetTypeArgs], [], []),\n });\n};\n\nexport const init = ({ IDL }) => {\n const ExchangeRateCanister = IDL.Variant({\n Set: IDL.Principal,\n Unset: IDL.Null,\n });\n const AccountIdentifier = IDL.Text;\n const CyclesCanisterInitPayload = IDL.Record({\n exchange_rate_canister: IDL.Opt(ExchangeRateCanister),\n cycles_ledger_canister_id: IDL.Opt(IDL.Principal),\n last_purged_notification: IDL.Opt(IDL.Nat64),\n governance_canister_id: IDL.Opt(IDL.Principal),\n minting_account_id: IDL.Opt(AccountIdentifier),\n ledger_canister_id: IDL.Opt(IDL.Principal),\n });\n\n return [IDL.Opt(CyclesCanisterInitPayload)];\n};\n", "import { assertNever, jsonReplacer } from \"@dfinity/utils\";\nimport type { NotifyError } from \"./candid/cmc\";\n\nexport class RefundedError extends Error {}\nexport class InvalidaTransactionError extends Error {}\nexport class CMCError extends Error {}\nexport class ProcessingError extends Error {}\nexport class TransactionTooOldError extends Error {}\n\n// Throws one of the errors above\nexport const throwNotifyError = ({\n Err: error,\n}: {\n Err: NotifyError;\n}): void => {\n if (\"Refunded\" in error) {\n throw new RefundedError(error.Refunded.reason);\n }\n if (\"InvalidTransaction\" in error) {\n throw new InvalidaTransactionError(error.InvalidTransaction);\n }\n if (\"Processing\" in error) {\n throw new ProcessingError();\n }\n if (\"TransactionTooOld\" in error) {\n throw new TransactionTooOldError();\n }\n if (\"Other\" in error) {\n throw new CMCError(\n `Error in CMC with code ${error.Other.error_code}: ${error.Other.error_message}`,\n );\n }\n\n assertNever(\n error,\n `Unsupported error type ${JSON.stringify(error, jsonReplacer)}`,\n );\n};\n"],
5
- "mappings": ";;AAAA,OAAS,YAAAA,EAAU,kBAAAC,MAAwC,iBCQpD,IAAMC,EAAa,CAAC,CAAE,IAAAC,CAAI,IAAM,CACrC,IAAMC,EAAuBD,EAAI,QAAQ,CACvC,IAAKA,EAAI,UACT,MAAOA,EAAI,IACb,CAAC,EACKE,EAAoBF,EAAI,KACxBG,EAA4BH,EAAI,OAAO,CAC3C,uBAAwBA,EAAI,IAAIC,CAAoB,EACpD,0BAA2BD,EAAI,IAAIA,EAAI,SAAS,EAChD,yBAA0BA,EAAI,IAAIA,EAAI,KAAK,EAC3C,uBAAwBA,EAAI,IAAIA,EAAI,SAAS,EAC7C,mBAAoBA,EAAI,IAAIE,CAAiB,EAC7C,mBAAoBF,EAAI,IAAIA,EAAI,SAAS,CAC3C,CAAC,EACKI,EAAqBJ,EAAI,OAAO,CACpC,QAASA,EAAI,IAAIA,EAAI,SAAS,EAC9B,YAAaA,EAAI,IACnB,CAAC,EACKK,EAAiCL,EAAI,QAAQ,CACjD,IAAKI,EACL,OAAQA,CACV,CAAC,EACKE,EAAeN,EAAI,OAAO,CAAE,YAAaA,EAAI,IAAIA,EAAI,IAAI,CAAE,CAAC,EAC5DO,EAAkBP,EAAI,QAAQ,CAClC,OAAQM,EACR,OAAQN,EAAI,OAAO,CAAE,OAAQA,EAAI,SAAU,CAAC,CAC9C,CAAC,EACKQ,EAAuBR,EAAI,OAAO,CACtC,MAAOA,EAAI,KACX,KAAMA,EAAI,IACZ,CAAC,EACKS,EAAiBT,EAAI,QAAQ,CACjC,YAAaA,EAAI,KACjB,OAAQA,EAAI,KACZ,gBAAiBA,EAAI,IAAIA,EAAI,SAAS,CACxC,CAAC,EACKU,EAAmBV,EAAI,OAAO,CAClC,mBAAoBA,EAAI,IAAIA,EAAI,GAAG,EACnC,sBAAuBA,EAAI,IAAIA,EAAI,GAAG,EACtC,sBAAuBA,EAAI,IAAIA,EAAI,IAAIQ,CAAoB,CAAC,EAC5D,YAAaR,EAAI,IAAIA,EAAI,IAAIA,EAAI,SAAS,CAAC,EAC3C,sBAAuBA,EAAI,IAAIA,EAAI,GAAG,EACtC,eAAgBA,EAAI,IAAIS,CAAc,EACtC,iBAAkBT,EAAI,IAAIA,EAAI,GAAG,EACjC,kBAAmBA,EAAI,IAAIA,EAAI,GAAG,EAClC,kBAAmBA,EAAI,IAAIA,EAAI,GAAG,EAClC,mBAAoBA,EAAI,IAAIA,EAAI,GAAG,CACrC,CAAC,EACKW,EAAoBX,EAAI,OAAO,CACnC,iBAAkBA,EAAI,IAAIO,CAAe,EACzC,SAAUP,EAAI,IAAIU,CAAgB,EAClC,YAAaV,EAAI,IAAIA,EAAI,IAAI,CAC/B,CAAC,EACKY,EAAsBZ,EAAI,QAAQ,CACtC,SAAUA,EAAI,OAAO,CACnB,aAAcA,EAAI,KAClB,cAAeA,EAAI,GACrB,CAAC,CACH,CAAC,EACKa,EAAuBb,EAAI,QAAQ,CACvC,GAAIA,EAAI,UACR,IAAKY,CACP,CAAC,EACKE,EAAuBd,EAAI,OAAO,CACtC,sBAAuBA,EAAI,MAC3B,kBAAmBA,EAAI,KACzB,CAAC,EACKe,EAA+Bf,EAAI,OAAO,CAC9C,YAAaA,EAAI,IAAIA,EAAI,IAAI,EAC7B,KAAMc,EACN,UAAWd,EAAI,IAAIA,EAAI,IAAI,CAC7B,CAAC,EACKgB,EAAyDhB,EAAI,OAAO,CACxE,KAAMA,EAAI,IAAIA,EAAI,MAAMA,EAAI,UAAWA,EAAI,IAAIA,EAAI,SAAS,CAAC,CAAC,CAChE,CAAC,EACKiB,EAA+BjB,EAAI,OAAO,CAC9C,KAAMA,EAAI,IAAIA,EAAI,MAAMA,EAAI,KAAMA,EAAI,IAAIA,EAAI,SAAS,CAAC,CAAC,CAC3D,CAAC,EACKkB,EAAalB,EAAI,MACjBmB,EAA0BnB,EAAI,OAAO,CACzC,WAAYA,EAAI,UAChB,YAAakB,EACb,iBAAkBlB,EAAI,IAAIO,CAAe,EACzC,SAAUP,EAAI,IAAIU,CAAgB,EAClC,YAAaV,EAAI,IAAIA,EAAI,IAAI,CAC/B,CAAC,EACKoB,EAAcpB,EAAI,QAAQ,CAC9B,SAAUA,EAAI,OAAO,CACnB,YAAaA,EAAI,IAAIkB,CAAU,EAC/B,OAAQlB,EAAI,IACd,CAAC,EACD,mBAAoBA,EAAI,KACxB,MAAOA,EAAI,OAAO,CAChB,cAAeA,EAAI,KACnB,WAAYA,EAAI,KAClB,CAAC,EACD,WAAYA,EAAI,KAChB,kBAAmBkB,CACrB,CAAC,EACKG,EAA6BrB,EAAI,QAAQ,CAC7C,GAAIA,EAAI,UACR,IAAKoB,CACP,CAAC,EACKE,EAAOtB,EAAI,IAAIA,EAAI,IAAIA,EAAI,IAAI,CAAC,EAChCuB,EAAavB,EAAI,IAAIA,EAAI,IAAIA,EAAI,IAAI,CAAC,EACtCwB,EAAsBxB,EAAI,OAAO,CACrC,YAAakB,EACb,aAAcI,EACd,cAAeC,CACjB,CAAC,EACKE,EAA0BzB,EAAI,OAAO,CACzC,QAASA,EAAI,IACb,YAAaA,EAAI,IACjB,OAAQA,EAAI,GACd,CAAC,EACK0B,EAAyB1B,EAAI,QAAQ,CACzC,GAAIyB,EACJ,IAAKL,CACP,CAAC,EACKO,EAAiB3B,EAAI,OAAO,CAChC,YAAakB,EACb,YAAalB,EAAI,SACnB,CAAC,EACK4B,EAAS5B,EAAI,IACb6B,EAAoB7B,EAAI,QAAQ,CAAE,GAAI4B,EAAQ,IAAKR,CAAY,CAAC,EAChEU,EAAkC9B,EAAI,OAAO,CACjD,IAAKA,EAAI,IAAIA,EAAI,SAAS,EAC1B,QAASA,EAAI,IAAIA,EAAI,SAAS,CAChC,CAAC,EACK+B,EAAuB/B,EAAI,QAAQ,CACvC,IAAKA,EAAI,KACT,OAAQA,EAAI,IACd,CAAC,EAED,OAAOA,EAAI,QAAQ,CACjB,8BAA+BA,EAAI,KACjC,CAACK,CAA8B,EAC/B,CAAC,EACD,CAAC,CACH,EACA,gBAAiBL,EAAI,KAAK,CAACW,CAAiB,EAAG,CAACE,CAAoB,EAAG,CAAC,CAAC,EACzE,mBAAoBb,EAAI,KAAK,CAAC,EAAG,CAACA,EAAI,IAAI,EAAG,CAAC,CAAC,EAC/C,oBAAqBA,EAAI,KAAK,CAAC,EAAG,CAACA,EAAI,IAAIA,EAAI,SAAS,CAAC,EAAG,CAAC,CAAC,EAC9D,4BAA6BA,EAAI,KAC/B,CAAC,EACD,CAACe,CAA4B,EAC7B,CAAC,CACH,EACA,yDAA0Df,EAAI,KAC5D,CAAC,EACD,CAACgB,CAAsD,EACvD,CAAC,CACH,EACA,4BAA6BhB,EAAI,KAC/B,CAAC,EACD,CAACiB,CAA4B,EAC7B,CAAC,CACH,EACA,uBAAwBjB,EAAI,KAC1B,CAACmB,CAAuB,EACxB,CAACE,CAA0B,EAC3B,CAAC,CACH,EACA,mBAAoBrB,EAAI,KACtB,CAACwB,CAAmB,EACpB,CAACE,CAAsB,EACvB,CAAC,CACH,EACA,cAAe1B,EAAI,KAAK,CAAC2B,CAAc,EAAG,CAACE,CAAiB,EAAG,CAAC,CAAC,EACjE,+BAAgC7B,EAAI,KAClC,CAAC8B,CAA+B,EAChC,CAAC,EACD,CAAC,CACH,EACA,mBAAoB9B,EAAI,KAAK,CAAC+B,CAAoB,EAAG,CAAC,EAAG,CAAC,CAAC,CAC7D,CAAC,CACH,EChLO,IAAMC,EAAa,CAAC,CAAE,IAAAC,CAAI,IAAM,CACrC,IAAMC,EAAuBD,EAAI,QAAQ,CACvC,IAAKA,EAAI,UACT,MAAOA,EAAI,IACb,CAAC,EACKE,EAAoBF,EAAI,KACxBG,EAA4BH,EAAI,OAAO,CAC3C,uBAAwBA,EAAI,IAAIC,CAAoB,EACpD,0BAA2BD,EAAI,IAAIA,EAAI,SAAS,EAChD,yBAA0BA,EAAI,IAAIA,EAAI,KAAK,EAC3C,uBAAwBA,EAAI,IAAIA,EAAI,SAAS,EAC7C,mBAAoBA,EAAI,IAAIE,CAAiB,EAC7C,mBAAoBF,EAAI,IAAIA,EAAI,SAAS,CAC3C,CAAC,EACKI,EAAqBJ,EAAI,OAAO,CACpC,QAASA,EAAI,IAAIA,EAAI,SAAS,EAC9B,YAAaA,EAAI,IACnB,CAAC,EACKK,EAAiCL,EAAI,QAAQ,CACjD,IAAKI,EACL,OAAQA,CACV,CAAC,EACKE,EAAeN,EAAI,OAAO,CAAE,YAAaA,EAAI,IAAIA,EAAI,IAAI,CAAE,CAAC,EAC5DO,EAAkBP,EAAI,QAAQ,CAClC,OAAQM,EACR,OAAQN,EAAI,OAAO,CAAE,OAAQA,EAAI,SAAU,CAAC,CAC9C,CAAC,EACKQ,EAAuBR,EAAI,OAAO,CACtC,MAAOA,EAAI,KACX,KAAMA,EAAI,IACZ,CAAC,EACKS,EAAiBT,EAAI,QAAQ,CACjC,YAAaA,EAAI,KACjB,OAAQA,EAAI,KACZ,gBAAiBA,EAAI,IAAIA,EAAI,SAAS,CACxC,CAAC,EACKU,EAAmBV,EAAI,OAAO,CAClC,mBAAoBA,EAAI,IAAIA,EAAI,GAAG,EACnC,sBAAuBA,EAAI,IAAIA,EAAI,GAAG,EACtC,sBAAuBA,EAAI,IAAIA,EAAI,IAAIQ,CAAoB,CAAC,EAC5D,YAAaR,EAAI,IAAIA,EAAI,IAAIA,EAAI,SAAS,CAAC,EAC3C,sBAAuBA,EAAI,IAAIA,EAAI,GAAG,EACtC,eAAgBA,EAAI,IAAIS,CAAc,EACtC,iBAAkBT,EAAI,IAAIA,EAAI,GAAG,EACjC,kBAAmBA,EAAI,IAAIA,EAAI,GAAG,EAClC,kBAAmBA,EAAI,IAAIA,EAAI,GAAG,EAClC,mBAAoBA,EAAI,IAAIA,EAAI,GAAG,CACrC,CAAC,EACKW,EAAoBX,EAAI,OAAO,CACnC,iBAAkBA,EAAI,IAAIO,CAAe,EACzC,SAAUP,EAAI,IAAIU,CAAgB,EAClC,YAAaV,EAAI,IAAIA,EAAI,IAAI,CAC/B,CAAC,EACKY,EAAsBZ,EAAI,QAAQ,CACtC,SAAUA,EAAI,OAAO,CACnB,aAAcA,EAAI,KAClB,cAAeA,EAAI,GACrB,CAAC,CACH,CAAC,EACKa,EAAuBb,EAAI,QAAQ,CACvC,GAAIA,EAAI,UACR,IAAKY,CACP,CAAC,EACKE,EAAuBd,EAAI,OAAO,CACtC,sBAAuBA,EAAI,MAC3B,kBAAmBA,EAAI,KACzB,CAAC,EACKe,EAA+Bf,EAAI,OAAO,CAC9C,YAAaA,EAAI,IAAIA,EAAI,IAAI,EAC7B,KAAMc,EACN,UAAWd,EAAI,IAAIA,EAAI,IAAI,CAC7B,CAAC,EACKgB,EAAyDhB,EAAI,OAAO,CACxE,KAAMA,EAAI,IAAIA,EAAI,MAAMA,EAAI,UAAWA,EAAI,IAAIA,EAAI,SAAS,CAAC,CAAC,CAChE,CAAC,EACKiB,EAA+BjB,EAAI,OAAO,CAC9C,KAAMA,EAAI,IAAIA,EAAI,MAAMA,EAAI,KAAMA,EAAI,IAAIA,EAAI,SAAS,CAAC,CAAC,CAC3D,CAAC,EACKkB,EAAalB,EAAI,MACjBmB,EAA0BnB,EAAI,OAAO,CACzC,WAAYA,EAAI,UAChB,YAAakB,EACb,iBAAkBlB,EAAI,IAAIO,CAAe,EACzC,SAAUP,EAAI,IAAIU,CAAgB,EAClC,YAAaV,EAAI,IAAIA,EAAI,IAAI,CAC/B,CAAC,EACKoB,EAAcpB,EAAI,QAAQ,CAC9B,SAAUA,EAAI,OAAO,CACnB,YAAaA,EAAI,IAAIkB,CAAU,EAC/B,OAAQlB,EAAI,IACd,CAAC,EACD,mBAAoBA,EAAI,KACxB,MAAOA,EAAI,OAAO,CAChB,cAAeA,EAAI,KACnB,WAAYA,EAAI,KAClB,CAAC,EACD,WAAYA,EAAI,KAChB,kBAAmBkB,CACrB,CAAC,EACKG,EAA6BrB,EAAI,QAAQ,CAC7C,GAAIA,EAAI,UACR,IAAKoB,CACP,CAAC,EACKE,EAAOtB,EAAI,IAAIA,EAAI,IAAIA,EAAI,IAAI,CAAC,EAChCuB,EAAavB,EAAI,IAAIA,EAAI,IAAIA,EAAI,IAAI,CAAC,EACtCwB,EAAsBxB,EAAI,OAAO,CACrC,YAAakB,EACb,aAAcI,EACd,cAAeC,CACjB,CAAC,EACKE,EAA0BzB,EAAI,OAAO,CACzC,QAASA,EAAI,IACb,YAAaA,EAAI,IACjB,OAAQA,EAAI,GACd,CAAC,EACK0B,EAAyB1B,EAAI,QAAQ,CACzC,GAAIyB,EACJ,IAAKL,CACP,CAAC,EACKO,EAAiB3B,EAAI,OAAO,CAChC,YAAakB,EACb,YAAalB,EAAI,SACnB,CAAC,EACK4B,EAAS5B,EAAI,IACb6B,EAAoB7B,EAAI,QAAQ,CAAE,GAAI4B,EAAQ,IAAKR,CAAY,CAAC,EAChEU,EAAkC9B,EAAI,OAAO,CACjD,IAAKA,EAAI,IAAIA,EAAI,SAAS,EAC1B,QAASA,EAAI,IAAIA,EAAI,SAAS,CAChC,CAAC,EACK+B,EAAuB/B,EAAI,QAAQ,CACvC,IAAKA,EAAI,KACT,OAAQA,EAAI,IACd,CAAC,EAED,OAAOA,EAAI,QAAQ,CACjB,8BAA+BA,EAAI,KACjC,CAACK,CAA8B,EAC/B,CAAC,EACD,CAAC,CACH,EACA,gBAAiBL,EAAI,KAAK,CAACW,CAAiB,EAAG,CAACE,CAAoB,EAAG,CAAC,CAAC,EACzE,mBAAoBb,EAAI,KAAK,CAAC,EAAG,CAACA,EAAI,IAAI,EAAG,CAAC,OAAO,CAAC,EACtD,oBAAqBA,EAAI,KAAK,CAAC,EAAG,CAACA,EAAI,IAAIA,EAAI,SAAS,CAAC,EAAG,CAAC,OAAO,CAAC,EACrE,4BAA6BA,EAAI,KAC/B,CAAC,EACD,CAACe,CAA4B,EAC7B,CAAC,OAAO,CACV,EACA,yDAA0Df,EAAI,KAC5D,CAAC,EACD,CAACgB,CAAsD,EACvD,CAAC,OAAO,CACV,EACA,4BAA6BhB,EAAI,KAC/B,CAAC,EACD,CAACiB,CAA4B,EAC7B,CAAC,OAAO,CACV,EACA,uBAAwBjB,EAAI,KAC1B,CAACmB,CAAuB,EACxB,CAACE,CAA0B,EAC3B,CAAC,CACH,EACA,mBAAoBrB,EAAI,KACtB,CAACwB,CAAmB,EACpB,CAACE,CAAsB,EACvB,CAAC,CACH,EACA,cAAe1B,EAAI,KAAK,CAAC2B,CAAc,EAAG,CAACE,CAAiB,EAAG,CAAC,CAAC,EACjE,+BAAgC7B,EAAI,KAClC,CAAC8B,CAA+B,EAChC,CAAC,EACD,CAAC,CACH,EACA,mBAAoB9B,EAAI,KAAK,CAAC+B,CAAoB,EAAG,CAAC,EAAG,CAAC,CAAC,CAC7D,CAAC,CACH,ECxLA,OAAS,eAAAC,EAAa,gBAAAC,MAAoB,iBAGnC,IAAMC,EAAN,cAA4B,KAAM,CAAC,EAC7BC,EAAN,cAAuC,KAAM,CAAC,EACxCC,EAAN,cAAuB,KAAM,CAAC,EACxBC,EAAN,cAA8B,KAAM,CAAC,EAC/BC,EAAN,cAAqC,KAAM,CAAC,EAGtCC,EAAmB,CAAC,CAC/B,IAAKC,CACP,IAEY,CACV,GAAI,aAAcA,EAChB,MAAM,IAAIN,EAAcM,EAAM,SAAS,MAAM,EAE/C,GAAI,uBAAwBA,EAC1B,MAAM,IAAIL,EAAyBK,EAAM,kBAAkB,EAE7D,GAAI,eAAgBA,EAClB,MAAM,IAAIH,EAEZ,GAAI,sBAAuBG,EACzB,MAAM,IAAIF,EAEZ,GAAI,UAAWE,EACb,MAAM,IAAIJ,EACR,0BAA0BI,EAAM,MAAM,UAAU,KAAKA,EAAM,MAAM,aAAa,EAChF,EAGFR,EACEQ,EACA,0BAA0B,KAAK,UAAUA,EAAOP,CAAY,CAAC,EAC/D,CACF,EHvBO,IAAMQ,EAAN,MAAMC,UAAoBC,CAA6B,CAC5D,OAAO,OAAOC,EAA0C,CACtD,GAAM,CAAE,QAAAC,EAAS,iBAAAC,EAAkB,WAAAC,CAAW,EAC5CC,EAAmC,CACjC,QAAAJ,EACA,WAAAK,EACA,oBAAAA,CACF,CAAC,EAEH,OAAO,IAAIP,EAAYK,EAAYF,EAASC,CAAgB,CAC9D,CAUO,6BAA+B,MAAO,CAC3C,UAAAI,CACF,EAAiB,CAAC,IAAuB,CACvC,GAAM,CAAE,KAAAC,CAAK,EAAI,MAAM,KAAK,OAAO,CACjC,UAAAD,CACF,CAAC,EAAE,4BAA4B,EAI/B,OAAOC,EAAK,qBACd,EAYO,qBAAuB,MAC5BC,GACuB,CACvB,IAAMC,EAAW,MAAM,KAAK,QAAQ,uBAAuBD,CAAO,EAIlE,GAHI,QAASC,GACXC,EAAiBD,CAAQ,EAEvB,OAAQA,EACV,OAAOA,EAAS,GAGlB,MAAM,IAAI,MACR,qDAAqD,KAAK,UACxDA,CACF,CAAC,EACH,CACF,EAYO,YAAc,MAAOD,GAA6C,CACvE,IAAMC,EAAW,MAAM,KAAK,QAAQ,cAAcD,CAAO,EAIzD,GAHI,QAASC,GACXC,EAAiBD,CAAQ,EAEvB,OAAQA,EACV,OAAOA,EAAS,GAGlB,MAAM,IAAI,MACR,4CAA4C,KAAK,UAAUA,CAAQ,CAAC,EACtE,CACF,EAaO,kBAAoB,CAAC,CAAE,UAAAH,CAAU,EAAiB,CAAC,IAErD,CACH,GAAM,CAAE,oBAAAK,CAAoB,EAAI,KAAK,OAAO,CAAE,UAAAL,CAAU,CAAC,EACzD,OAAOK,EAAoB,CAC7B,EAcO,wBAA0B,CAAC,CAChC,UAAAL,CACF,EAAiB,CAAC,IAA6C,CAC7D,GAAM,CAAE,4BAAAM,CAA4B,EAAI,KAAK,OAAO,CAAE,UAAAN,CAAU,CAAC,EACjE,OAAOM,EAA4B,CACrC,CACF",
6
- "names": ["Canister", "createServices", "idlFactory", "IDL", "ExchangeRateCanister", "AccountIdentifier", "CyclesCanisterInitPayload", "SubnetListWithType", "ChangeSubnetTypeAssignmentArgs", "SubnetFilter", "SubnetSelection", "environment_variable", "log_visibility", "CanisterSettings", "CreateCanisterArg", "CreateCanisterError", "CreateCanisterResult", "IcpXdrConversionRate", "IcpXdrConversionRateResponse", "PrincipalsAuthorizedToCreateCanistersToSubnetsResponse", "SubnetTypesToSubnetsResponse", "BlockIndex", "NotifyCreateCanisterArg", "NotifyError", "NotifyCreateCanisterResult", "Memo", "Subaccount", "NotifyMintCyclesArg", "NotifyMintCyclesSuccess", "NotifyMintCyclesResult", "NotifyTopUpArg", "Cycles", "NotifyTopUpResult", "SetAuthorizedSubnetworkListArgs", "UpdateSubnetTypeArgs", "idlFactory", "IDL", "ExchangeRateCanister", "AccountIdentifier", "CyclesCanisterInitPayload", "SubnetListWithType", "ChangeSubnetTypeAssignmentArgs", "SubnetFilter", "SubnetSelection", "environment_variable", "log_visibility", "CanisterSettings", "CreateCanisterArg", "CreateCanisterError", "CreateCanisterResult", "IcpXdrConversionRate", "IcpXdrConversionRateResponse", "PrincipalsAuthorizedToCreateCanistersToSubnetsResponse", "SubnetTypesToSubnetsResponse", "BlockIndex", "NotifyCreateCanisterArg", "NotifyError", "NotifyCreateCanisterResult", "Memo", "Subaccount", "NotifyMintCyclesArg", "NotifyMintCyclesSuccess", "NotifyMintCyclesResult", "NotifyTopUpArg", "Cycles", "NotifyTopUpResult", "SetAuthorizedSubnetworkListArgs", "UpdateSubnetTypeArgs", "assertNever", "jsonReplacer", "RefundedError", "InvalidaTransactionError", "CMCError", "ProcessingError", "TransactionTooOldError", "throwNotifyError", "error", "CMCCanister", "_CMCCanister", "Canister", "options", "service", "certifiedService", "canisterId", "createServices", "idlFactory", "certified", "data", "request", "response", "throwNotifyError", "get_default_subnets", "get_subnet_types_to_subnets"]
3
+ "sources": ["../src/index.ts"],
4
+ "sourcesContent": ["import type { CmcDid } from \"@icp-sdk/canisters/cmc\";\n\nexport type Cycles = CmcDid.Cycles;\nexport type NotifyCreateCanisterArg = CmcDid.NotifyCreateCanisterArg;\nexport type NotifyTopUpArg = CmcDid.NotifyTopUpArg;\nexport type SubnetTypesToSubnetsResponse = CmcDid.SubnetTypesToSubnetsResponse;\n\n/**\n * @deprecated Use \"@icp-sdk/canisters/cmc\" directly instead\n */\nexport * from \"@icp-sdk/canisters/cmc\";\n\n/**\n * Legacy re-export for backward compatibility.\n * @deprecated Use \"@icp-sdk/canisters/cmc\" directly instead\n */\nexport {\n CmcCanister as CMCCanister,\n CmcError as CMCError,\n type CmcCanisterOptions as CMCCanisterOptions,\n} from \"@icp-sdk/canisters/cmc\";\n"],
5
+ "mappings": ";;AAUA,WAAc,yBAMd,OACiB,eAAfA,EACY,YAAZC,MAEK",
6
+ "names": ["CmcCanister", "CmcError"]
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dfinity/cmc",
3
- "version": "8.0.1",
3
+ "version": "9.0.0",
4
4
  "description": "A library for interfacing with the cycle minting canister.",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -27,7 +27,7 @@
27
27
  "scripts": {
28
28
  "rmdir": "node ../../scripts/rmdir.mjs",
29
29
  "ts-declaration": "tsc --emitDeclarationOnly --outDir dist",
30
- "build": "npm run rmdir && mkdir -p dist && cp -R src/candid dist && node esbuild.mjs && npm run ts-declaration",
30
+ "build": "npm run rmdir && mkdir -p dist && node esbuild.mjs && npm run ts-declaration",
31
31
  "prepack": "npm run build",
32
32
  "test": "vitest"
33
33
  },
@@ -49,7 +49,6 @@
49
49
  ],
50
50
  "homepage": "https://github.com/dfinity/icp-js-canisters#readme",
51
51
  "peerDependencies": {
52
- "@dfinity/utils": "^4",
53
- "@icp-sdk/core": "^4"
52
+ "@icp-sdk/canisters": "^3"
54
53
  }
55
54
  }
@@ -1,2 +0,0 @@
1
- import type { IDL } from "@icp-sdk/core/candid";
2
- export const idlFactory: IDL.InterfaceFactory;
@@ -1,203 +0,0 @@
1
- /* eslint-disable */
2
-
3
- // @ts-nocheck
4
-
5
- // This file was automatically generated by @icp-sdk/bindgen@0.2.0.
6
- // You should NOT make any changes in this file as it will be overwritten.
7
- // Additionally, you should also exclude this file from your linter and/or formatter to prevent it from being checked or modified.
8
-
9
- export const idlFactory = ({ IDL }) => {
10
- const ExchangeRateCanister = IDL.Variant({
11
- Set: IDL.Principal,
12
- Unset: IDL.Null,
13
- });
14
- const AccountIdentifier = IDL.Text;
15
- const CyclesCanisterInitPayload = IDL.Record({
16
- exchange_rate_canister: IDL.Opt(ExchangeRateCanister),
17
- cycles_ledger_canister_id: IDL.Opt(IDL.Principal),
18
- last_purged_notification: IDL.Opt(IDL.Nat64),
19
- governance_canister_id: IDL.Opt(IDL.Principal),
20
- minting_account_id: IDL.Opt(AccountIdentifier),
21
- ledger_canister_id: IDL.Opt(IDL.Principal),
22
- });
23
- const SubnetListWithType = IDL.Record({
24
- subnets: IDL.Vec(IDL.Principal),
25
- subnet_type: IDL.Text,
26
- });
27
- const ChangeSubnetTypeAssignmentArgs = IDL.Variant({
28
- Add: SubnetListWithType,
29
- Remove: SubnetListWithType,
30
- });
31
- const SubnetFilter = IDL.Record({ subnet_type: IDL.Opt(IDL.Text) });
32
- const SubnetSelection = IDL.Variant({
33
- Filter: SubnetFilter,
34
- Subnet: IDL.Record({ subnet: IDL.Principal }),
35
- });
36
- const environment_variable = IDL.Record({
37
- value: IDL.Text,
38
- name: IDL.Text,
39
- });
40
- const log_visibility = IDL.Variant({
41
- controllers: IDL.Null,
42
- public: IDL.Null,
43
- allowed_viewers: IDL.Vec(IDL.Principal),
44
- });
45
- const CanisterSettings = IDL.Record({
46
- freezing_threshold: IDL.Opt(IDL.Nat),
47
- wasm_memory_threshold: IDL.Opt(IDL.Nat),
48
- environment_variables: IDL.Opt(IDL.Vec(environment_variable)),
49
- controllers: IDL.Opt(IDL.Vec(IDL.Principal)),
50
- reserved_cycles_limit: IDL.Opt(IDL.Nat),
51
- log_visibility: IDL.Opt(log_visibility),
52
- log_memory_limit: IDL.Opt(IDL.Nat),
53
- wasm_memory_limit: IDL.Opt(IDL.Nat),
54
- memory_allocation: IDL.Opt(IDL.Nat),
55
- compute_allocation: IDL.Opt(IDL.Nat),
56
- });
57
- const CreateCanisterArg = IDL.Record({
58
- subnet_selection: IDL.Opt(SubnetSelection),
59
- settings: IDL.Opt(CanisterSettings),
60
- subnet_type: IDL.Opt(IDL.Text),
61
- });
62
- const CreateCanisterError = IDL.Variant({
63
- Refunded: IDL.Record({
64
- create_error: IDL.Text,
65
- refund_amount: IDL.Nat,
66
- }),
67
- });
68
- const CreateCanisterResult = IDL.Variant({
69
- Ok: IDL.Principal,
70
- Err: CreateCanisterError,
71
- });
72
- const IcpXdrConversionRate = IDL.Record({
73
- xdr_permyriad_per_icp: IDL.Nat64,
74
- timestamp_seconds: IDL.Nat64,
75
- });
76
- const IcpXdrConversionRateResponse = IDL.Record({
77
- certificate: IDL.Vec(IDL.Nat8),
78
- data: IcpXdrConversionRate,
79
- hash_tree: IDL.Vec(IDL.Nat8),
80
- });
81
- const PrincipalsAuthorizedToCreateCanistersToSubnetsResponse = IDL.Record({
82
- data: IDL.Vec(IDL.Tuple(IDL.Principal, IDL.Vec(IDL.Principal))),
83
- });
84
- const SubnetTypesToSubnetsResponse = IDL.Record({
85
- data: IDL.Vec(IDL.Tuple(IDL.Text, IDL.Vec(IDL.Principal))),
86
- });
87
- const BlockIndex = IDL.Nat64;
88
- const NotifyCreateCanisterArg = IDL.Record({
89
- controller: IDL.Principal,
90
- block_index: BlockIndex,
91
- subnet_selection: IDL.Opt(SubnetSelection),
92
- settings: IDL.Opt(CanisterSettings),
93
- subnet_type: IDL.Opt(IDL.Text),
94
- });
95
- const NotifyError = IDL.Variant({
96
- Refunded: IDL.Record({
97
- block_index: IDL.Opt(BlockIndex),
98
- reason: IDL.Text,
99
- }),
100
- InvalidTransaction: IDL.Text,
101
- Other: IDL.Record({
102
- error_message: IDL.Text,
103
- error_code: IDL.Nat64,
104
- }),
105
- Processing: IDL.Null,
106
- TransactionTooOld: BlockIndex,
107
- });
108
- const NotifyCreateCanisterResult = IDL.Variant({
109
- Ok: IDL.Principal,
110
- Err: NotifyError,
111
- });
112
- const Memo = IDL.Opt(IDL.Vec(IDL.Nat8));
113
- const Subaccount = IDL.Opt(IDL.Vec(IDL.Nat8));
114
- const NotifyMintCyclesArg = IDL.Record({
115
- block_index: BlockIndex,
116
- deposit_memo: Memo,
117
- to_subaccount: Subaccount,
118
- });
119
- const NotifyMintCyclesSuccess = IDL.Record({
120
- balance: IDL.Nat,
121
- block_index: IDL.Nat,
122
- minted: IDL.Nat,
123
- });
124
- const NotifyMintCyclesResult = IDL.Variant({
125
- Ok: NotifyMintCyclesSuccess,
126
- Err: NotifyError,
127
- });
128
- const NotifyTopUpArg = IDL.Record({
129
- block_index: BlockIndex,
130
- canister_id: IDL.Principal,
131
- });
132
- const Cycles = IDL.Nat;
133
- const NotifyTopUpResult = IDL.Variant({ Ok: Cycles, Err: NotifyError });
134
- const SetAuthorizedSubnetworkListArgs = IDL.Record({
135
- who: IDL.Opt(IDL.Principal),
136
- subnets: IDL.Vec(IDL.Principal),
137
- });
138
- const UpdateSubnetTypeArgs = IDL.Variant({
139
- Add: IDL.Text,
140
- Remove: IDL.Text,
141
- });
142
-
143
- return IDL.Service({
144
- change_subnet_type_assignment: IDL.Func(
145
- [ChangeSubnetTypeAssignmentArgs],
146
- [],
147
- [],
148
- ),
149
- create_canister: IDL.Func([CreateCanisterArg], [CreateCanisterResult], []),
150
- get_build_metadata: IDL.Func([], [IDL.Text], []),
151
- get_default_subnets: IDL.Func([], [IDL.Vec(IDL.Principal)], []),
152
- get_icp_xdr_conversion_rate: IDL.Func(
153
- [],
154
- [IcpXdrConversionRateResponse],
155
- [],
156
- ),
157
- get_principals_authorized_to_create_canisters_to_subnets: IDL.Func(
158
- [],
159
- [PrincipalsAuthorizedToCreateCanistersToSubnetsResponse],
160
- [],
161
- ),
162
- get_subnet_types_to_subnets: IDL.Func(
163
- [],
164
- [SubnetTypesToSubnetsResponse],
165
- [],
166
- ),
167
- notify_create_canister: IDL.Func(
168
- [NotifyCreateCanisterArg],
169
- [NotifyCreateCanisterResult],
170
- [],
171
- ),
172
- notify_mint_cycles: IDL.Func(
173
- [NotifyMintCyclesArg],
174
- [NotifyMintCyclesResult],
175
- [],
176
- ),
177
- notify_top_up: IDL.Func([NotifyTopUpArg], [NotifyTopUpResult], []),
178
- set_authorized_subnetwork_list: IDL.Func(
179
- [SetAuthorizedSubnetworkListArgs],
180
- [],
181
- [],
182
- ),
183
- update_subnet_type: IDL.Func([UpdateSubnetTypeArgs], [], []),
184
- });
185
- };
186
-
187
- export const init = ({ IDL }) => {
188
- const ExchangeRateCanister = IDL.Variant({
189
- Set: IDL.Principal,
190
- Unset: IDL.Null,
191
- });
192
- const AccountIdentifier = IDL.Text;
193
- const CyclesCanisterInitPayload = IDL.Record({
194
- exchange_rate_canister: IDL.Opt(ExchangeRateCanister),
195
- cycles_ledger_canister_id: IDL.Opt(IDL.Principal),
196
- last_purged_notification: IDL.Opt(IDL.Nat64),
197
- governance_canister_id: IDL.Opt(IDL.Principal),
198
- minting_account_id: IDL.Opt(AccountIdentifier),
199
- ledger_canister_id: IDL.Opt(IDL.Principal),
200
- });
201
-
202
- return [IDL.Opt(CyclesCanisterInitPayload)];
203
- };