@dfinity/cmc 3.2.2 → 4.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/LICENSE +1 -1
- package/README.md +23 -5
- package/dist/candid/cmc.did +1 -1
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/index.cjs.js.map +4 -4
- package/dist/esm/chunk-5XIQBCLB.js +2 -0
- package/dist/esm/chunk-5XIQBCLB.js.map +7 -0
- package/dist/esm/cmc.canister.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/types/cmc.canister.d.ts +15 -4
- package/dist/types/cmc.options.d.ts +1 -1
- package/package.json +2 -2
- package/dist/esm/chunk-MKLB3JOX.js +0 -2
- package/dist/esm/chunk-MKLB3JOX.js.map +0 -7
package/LICENSE
CHANGED
|
@@ -186,7 +186,7 @@
|
|
|
186
186
|
same "printed page" as the copyright notice for easier
|
|
187
187
|
identification within third-party archives.
|
|
188
188
|
|
|
189
|
-
Copyright 2021 DFINITY
|
|
189
|
+
Copyright 2021 DFINITY Stiftung.
|
|
190
190
|
|
|
191
191
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
192
192
|
you may not use this file except in compliance with the License.
|
package/README.md
CHANGED
|
@@ -55,7 +55,7 @@ const rate = await getIcpToCyclesConversionRate();
|
|
|
55
55
|
|
|
56
56
|
### :factory: CMCCanister
|
|
57
57
|
|
|
58
|
-
[:link: Source](https://github.com/dfinity/ic-js/tree/main/packages/cmc/src/cmc.canister.ts#
|
|
58
|
+
[:link: Source](https://github.com/dfinity/ic-js/tree/main/packages/cmc/src/cmc.canister.ts#L14)
|
|
59
59
|
|
|
60
60
|
#### Methods
|
|
61
61
|
|
|
@@ -63,6 +63,7 @@ const rate = await getIcpToCyclesConversionRate();
|
|
|
63
63
|
- [getIcpToCyclesConversionRate](#gear-geticptocyclesconversionrate)
|
|
64
64
|
- [notifyCreateCanister](#gear-notifycreatecanister)
|
|
65
65
|
- [notifyTopUp](#gear-notifytopup)
|
|
66
|
+
- [getDefaultSubnets](#gear-getdefaultsubnets)
|
|
66
67
|
|
|
67
68
|
##### :gear: create
|
|
68
69
|
|
|
@@ -70,7 +71,7 @@ const rate = await getIcpToCyclesConversionRate();
|
|
|
70
71
|
| -------- | ---------------------------------------------- |
|
|
71
72
|
| `create` | `(options: CMCCanisterOptions) => CMCCanister` |
|
|
72
73
|
|
|
73
|
-
[:link: Source](https://github.com/dfinity/ic-js/tree/main/packages/cmc/src/cmc.canister.ts#
|
|
74
|
+
[:link: Source](https://github.com/dfinity/ic-js/tree/main/packages/cmc/src/cmc.canister.ts#L15)
|
|
74
75
|
|
|
75
76
|
##### :gear: getIcpToCyclesConversionRate
|
|
76
77
|
|
|
@@ -80,7 +81,7 @@ Returns conversion rate of ICP to Cycles
|
|
|
80
81
|
| ------------------------------ | ----------------------- |
|
|
81
82
|
| `getIcpToCyclesConversionRate` | `() => Promise<bigint>` |
|
|
82
83
|
|
|
83
|
-
[:link: Source](https://github.com/dfinity/ic-js/tree/main/packages/cmc/src/cmc.canister.ts#
|
|
84
|
+
[:link: Source](https://github.com/dfinity/ic-js/tree/main/packages/cmc/src/cmc.canister.ts#L31)
|
|
84
85
|
|
|
85
86
|
##### :gear: notifyCreateCanister
|
|
86
87
|
|
|
@@ -91,7 +92,7 @@ It returns the new canister principal.
|
|
|
91
92
|
| ---------------------- | ---------------------------------------------------------- |
|
|
92
93
|
| `notifyCreateCanister` | `(request: NotifyCreateCanisterArg) => Promise<Principal>` |
|
|
93
94
|
|
|
94
|
-
[:link: Source](https://github.com/dfinity/ic-js/tree/main/packages/cmc/src/cmc.canister.ts#
|
|
95
|
+
[:link: Source](https://github.com/dfinity/ic-js/tree/main/packages/cmc/src/cmc.canister.ts#L48)
|
|
95
96
|
|
|
96
97
|
##### :gear: notifyTopUp
|
|
97
98
|
|
|
@@ -102,6 +103,23 @@ It returns the new Cycles of the canister.
|
|
|
102
103
|
| ------------- | ---------------------------------------------- |
|
|
103
104
|
| `notifyTopUp` | `(request: NotifyTopUpArg) => Promise<bigint>` |
|
|
104
105
|
|
|
105
|
-
[:link: Source](https://github.com/dfinity/ic-js/tree/main/packages/cmc/src/cmc.canister.ts#
|
|
106
|
+
[:link: Source](https://github.com/dfinity/ic-js/tree/main/packages/cmc/src/cmc.canister.ts#L76)
|
|
107
|
+
|
|
108
|
+
##### :gear: getDefaultSubnets
|
|
109
|
+
|
|
110
|
+
This function calls the `get_default_subnets` method of the CMC canister, which returns a list of
|
|
111
|
+
default subnets as `Principal` objects. It can be called as query or update.
|
|
112
|
+
|
|
113
|
+
| Method | Type |
|
|
114
|
+
| ------------------- | ------------------------------------------------------- |
|
|
115
|
+
| `getDefaultSubnets` | `({ certified }?: QueryParams) => Promise<Principal[]>` |
|
|
116
|
+
|
|
117
|
+
Parameters:
|
|
118
|
+
|
|
119
|
+
- `params`: - The query parameters for the call.
|
|
120
|
+
- `params.certified`: - Determines whether the response should be certified
|
|
121
|
+
(default: non-certified if not specified).
|
|
122
|
+
|
|
123
|
+
[:link: Source](https://github.com/dfinity/ic-js/tree/main/packages/cmc/src/cmc.canister.ts#L101)
|
|
106
124
|
|
|
107
125
|
<!-- TSDOC_END -->
|
package/dist/candid/cmc.did
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Generated from IC repo commit
|
|
1
|
+
// Generated from IC repo commit a6ef593 (2024-10-24 tags: release-2024-10-23_03-07-ubuntu20.04) 'rs/nns/cmc/cmc.did' by import-candid
|
|
2
2
|
type Cycles = nat;
|
|
3
3
|
type BlockIndex = nat64;
|
|
4
4
|
type log_visibility = variant {
|
package/dist/cjs/index.cjs.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var U=Object.defineProperty;var q=Object.getOwnPropertyDescriptor;var $=Object.getOwnPropertyNames;var X=Object.prototype.hasOwnProperty;var J=(t,n)=>{for(var r in n)U(t,r,{get:n[r],enumerable:!0})},B=(t,n,r,e)=>{if(n&&typeof n=="object"||typeof n=="function")for(let i of $(n))!X.call(t,i)&&i!==r&&U(t,i,{get:()=>n[i],enumerable:!(e=q(n,i))||e.enumerable});return t};var Q=t=>B(U({},"__esModule",{value:!0}),t);var j={};J(j,{CMCCanister:()=>f,CMCError:()=>_,InvalidaTransactionError:()=>l,ProcessingError:()=>d,RefundedError:()=>p,TransactionTooOldError:()=>u,throwNotifyError:()=>y});module.exports=Q(j);var O=require("@dfinity/utils");var M=({IDL:t})=>{let n=t.Variant({Set:t.Principal,Unset:t.Null}),r=t.Text,e=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(r),ledger_canister_id:t.Opt(t.Principal)}),i=t.Record({subnet_type:t.Opt(t.Text)}),o=t.Variant({Filter:i,Subnet:t.Record({subnet:t.Principal})}),C=t.Variant({controllers:t.Null,public:t.Null}),s=t.Record({freezing_threshold:t.Opt(t.Nat),wasm_memory_threshold:t.Opt(t.Nat),controllers:t.Opt(t.Vec(t.Principal)),reserved_cycles_limit:t.Opt(t.Nat),log_visibility:t.Opt(C),wasm_memory_limit:t.Opt(t.Nat),memory_allocation:t.Opt(t.Nat),compute_allocation:t.Opt(t.Nat)}),N=t.Record({subnet_selection:t.Opt(o),settings:t.Opt(s),subnet_type:t.Opt(t.Text)}),m=t.Variant({Refunded:t.Record({create_error:t.Text,refund_amount:t.Nat})}),g=t.Variant({Ok:t.Principal,Err:m}),x=t.Record({xdr_permyriad_per_icp:t.Nat64,timestamp_seconds:t.Nat64}),b=t.Record({certificate:t.Vec(t.Nat8),data:x,hash_tree:t.Vec(t.Nat8)}),R=t.Record({data:t.Vec(t.Tuple(t.Principal,t.Vec(t.Principal)))}),P=t.Record({data:t.Vec(t.Tuple(t.Text,t.Vec(t.Principal)))}),c=t.Nat64,T=t.Record({controller:t.Principal,block_index:c,subnet_selection:t.Opt(o),settings:t.Opt(s),subnet_type:t.Opt(t.Text)}),a=t.Variant({Refunded:t.Record({block_index:t.Opt(c),reason:t.Text}),InvalidTransaction:t.Text,Other:t.Record({error_message:t.Text,error_code:t.Nat64}),Processing:t.Null,TransactionTooOld:c}),h=t.Variant({Ok:t.Principal,Err:a}),V=t.Opt(t.Vec(t.Nat8)),S=t.Opt(t.Vec(t.Nat8)),v=t.Record({block_index:c,deposit_memo:V,to_subaccount:S}),E=t.Record({balance:t.Nat,block_index:t.Nat,minted:t.Nat}),w=t.Variant({Ok:E,Err:a}),F=t.Record({block_index:c,canister_id:t.Principal}),k=t.Nat,A=t.Variant({Ok:k,Err:a});return t.Service({create_canister:t.Func([N],[g],[]),get_build_metadata:t.Func([],[t.Text],[]),get_default_subnets:t.Func([],[t.Vec(t.Principal)],[]),get_icp_xdr_conversion_rate:t.Func([],[b],[]),get_principals_authorized_to_create_canisters_to_subnets:t.Func([],[R],[]),get_subnet_types_to_subnets:t.Func([],[P],[]),notify_create_canister:t.Func([T],[h],[]),notify_mint_cycles:t.Func([v],[w],[]),notify_top_up:t.Func([F],[A],[])})};var z=({IDL:t})=>{let n=t.Variant({Set:t.Principal,Unset:t.Null}),r=t.Text,e=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(r),ledger_canister_id:t.Opt(t.Principal)}),i=t.Record({subnet_type:t.Opt(t.Text)}),o=t.Variant({Filter:i,Subnet:t.Record({subnet:t.Principal})}),C=t.Variant({controllers:t.Null,public:t.Null}),s=t.Record({freezing_threshold:t.Opt(t.Nat),wasm_memory_threshold:t.Opt(t.Nat),controllers:t.Opt(t.Vec(t.Principal)),reserved_cycles_limit:t.Opt(t.Nat),log_visibility:t.Opt(C),wasm_memory_limit:t.Opt(t.Nat),memory_allocation:t.Opt(t.Nat),compute_allocation:t.Opt(t.Nat)}),N=t.Record({subnet_selection:t.Opt(o),settings:t.Opt(s),subnet_type:t.Opt(t.Text)}),m=t.Variant({Refunded:t.Record({create_error:t.Text,refund_amount:t.Nat})}),g=t.Variant({Ok:t.Principal,Err:m}),x=t.Record({xdr_permyriad_per_icp:t.Nat64,timestamp_seconds:t.Nat64}),b=t.Record({certificate:t.Vec(t.Nat8),data:x,hash_tree:t.Vec(t.Nat8)}),R=t.Record({data:t.Vec(t.Tuple(t.Principal,t.Vec(t.Principal)))}),P=t.Record({data:t.Vec(t.Tuple(t.Text,t.Vec(t.Principal)))}),c=t.Nat64,T=t.Record({controller:t.Principal,block_index:c,subnet_selection:t.Opt(o),settings:t.Opt(s),subnet_type:t.Opt(t.Text)}),a=t.Variant({Refunded:t.Record({block_index:t.Opt(c),reason:t.Text}),InvalidTransaction:t.Text,Other:t.Record({error_message:t.Text,error_code:t.Nat64}),Processing:t.Null,TransactionTooOld:c}),h=t.Variant({Ok:t.Principal,Err:a}),V=t.Opt(t.Vec(t.Nat8)),S=t.Opt(t.Vec(t.Nat8)),v=t.Record({block_index:c,deposit_memo:V,to_subaccount:S}),E=t.Record({balance:t.Nat,block_index:t.Nat,minted:t.Nat}),w=t.Variant({Ok:E,Err:a}),F=t.Record({block_index:c,canister_id:t.Principal}),k=t.Nat,A=t.Variant({Ok:k,Err:a});return t.Service({create_canister:t.Func([N],[g],[]),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([],[b],["query"]),get_principals_authorized_to_create_canisters_to_subnets:t.Func([],[R],["query"]),get_subnet_types_to_subnets:t.Func([],[P],["query"]),notify_create_canister:t.Func([T],[h],[]),notify_mint_cycles:t.Func([v],[w],[]),notify_top_up:t.Func([F],[A],[])})};var p=class extends Error{},l=class extends Error{},_=class extends Error{},d=class extends Error{},u=class extends Error{},y=({Err:t})=>{throw"Refunded"in t?new p(t.Refunded.reason):"InvalidTransaction"in t?new l(t.InvalidTransaction):"Processing"in t?new d:"TransactionTooOld"in t?new u:"Other"in t?new _(`Error in CMC with code ${t.Other.error_code}: ${t.Other.error_message}`):new Error(`Unsupported error type ${JSON.stringify(t)}`)};var f=class t extends O.Canister{constructor(){super(...arguments);this.getIcpToCyclesConversionRate=async()=>{let{data:r}=await this.service.get_icp_xdr_conversion_rate();return r.xdr_permyriad_per_icp};this.notifyCreateCanister=async r=>{let e=await this.service.notify_create_canister(r);if("Err"in e&&y(e),"Ok"in e)return e.Ok;throw new Error(`Unsupported response type in notifyCreateCanister ${JSON.stringify(e)}`)};this.notifyTopUp=async r=>{let e=await this.service.notify_top_up(r);if("Err"in e&&y(e),"Ok"in e)return e.Ok;throw new Error(`Unsupported response type in notifyTopUp ${JSON.stringify(e)}`)};this.getDefaultSubnets=async({certified:r}={})=>{let{get_default_subnets:e}=this.caller({certified:r});return e()}}static create(r){let{service:e,certifiedService:i,canisterId:o}=(0,O.createServices)({options:r,idlFactory:z,certifiedIdlFactory:M});return new t(o,e,i)}};0&&(module.exports={CMCCanister,CMCError,InvalidaTransactionError,ProcessingError,RefundedError,TransactionTooOldError,throwNotifyError});
|
|
2
2
|
//# sourceMappingURL=index.cjs.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../src/index.ts", "../../src/cmc.canister.ts", "../../candid/cmc.idl.js", "../../src/cmc.errors.ts"],
|
|
4
|
-
"sourcesContent": ["export type {\n Cycles,\n NotifyCreateCanisterArg,\n NotifyTopUpArg,\n} from \"../candid/cmc\";\nexport { CMCCanister } from \"./cmc.canister\";\nexport * from \"./cmc.errors\";\n", "import { Actor } from \"@dfinity/agent\";\nimport type { Principal } from \"@dfinity/principal\";\nimport type {\n Cycles,\n NotifyCreateCanisterArg,\n NotifyTopUpArg,\n _SERVICE,\n} from \"../candid/cmc\";\nimport { idlFactory } from \"../candid/cmc.idl\";\nimport { throwNotifyError } from \"./cmc.errors\";\nimport type { CMCCanisterOptions } from \"./cmc.options\";\n\nexport class CMCCanister {\n private constructor(private readonly service: _SERVICE) {\n this.service = service;\n }\n\n public static create(options: CMCCanisterOptions) {\n const agent = options.agent;\n const canisterId = options.canisterId;\n\n const service =\n options.serviceOverride ??\n Actor.createActor<_SERVICE>(idlFactory, {\n agent,\n canisterId,\n });\n\n return new CMCCanister(service);\n }\n\n /**\n * Returns conversion rate of ICP to Cycles\n *\n * @returns Promise<BigInt>\n */\n public getIcpToCyclesConversionRate = async (): Promise<bigint> => {\n const { data } = await this.service.get_icp_xdr_conversion_rate();\n\n // TODO: validate the certificate in the response - https://dfinity.atlassian.net/browse/FOLLOW-223\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", "/* Do not edit. Compiled with ./scripts/compile-idl-js from packages/cmc/candid/cmc.did */\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 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 log_visibility = IDL.Variant({\n 'controllers' : IDL.Null,\n 'public' : IDL.Null,\n });\n const CanisterSettings = IDL.Record({\n 'freezing_threshold' : IDL.Opt(IDL.Nat),\n 'wasm_memory_threshold' : IDL.Opt(IDL.Nat),\n 'controllers' : IDL.Opt(IDL.Vec(IDL.Principal)),\n 'reserved_cycles_limit' : IDL.Opt(IDL.Nat),\n 'log_visibility' : IDL.Opt(log_visibility),\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 return IDL.Service({\n 'create_canister' : IDL.Func(\n [CreateCanisterArg],\n [CreateCanisterResult],\n [],\n ),\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 });\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 return [IDL.Opt(CyclesCanisterInitPayload)];\n};\n", "import 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 // Edge case\n throw new Error(`Unsupported error type ${JSON.stringify(error)}`);\n};\n"],
|
|
5
|
-
"mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,iBAAAE,EAAA,aAAAC,EAAA,6BAAAC,EAAA,oBAAAC,EAAA,kBAAAC,EAAA,2BAAAC,EAAA,qBAAAC,IAAA,eAAAC,EAAAT,
|
|
6
|
-
"names": ["src_exports", "__export", "CMCCanister", "CMCError", "InvalidaTransactionError", "ProcessingError", "RefundedError", "TransactionTooOldError", "throwNotifyError", "__toCommonJS", "
|
|
3
|
+
"sources": ["../../src/index.ts", "../../src/cmc.canister.ts", "../../candid/cmc.certified.idl.js", "../../candid/cmc.idl.js", "../../src/cmc.errors.ts"],
|
|
4
|
+
"sourcesContent": ["export type {\n Cycles,\n NotifyCreateCanisterArg,\n NotifyTopUpArg,\n} from \"../candid/cmc\";\nexport { CMCCanister } from \"./cmc.canister\";\nexport * from \"./cmc.errors\";\n", "import type { Principal } from \"@dfinity/principal\";\nimport { Canister, createServices, type QueryParams } from \"@dfinity/utils\";\nimport type {\n _SERVICE as CMCCanisterService,\n Cycles,\n NotifyCreateCanisterArg,\n NotifyTopUpArg,\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\n *\n * @returns Promise<BigInt>\n */\n public getIcpToCyclesConversionRate = async (): Promise<bigint> => {\n const { data } = await this.service.get_icp_xdr_conversion_rate();\n\n // TODO: validate the certificate in the response - https://dfinity.atlassian.net/browse/FOLLOW-223\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 = async ({ certified }: QueryParams = {}): Promise<\n Principal[]\n > => {\n const { get_default_subnets } = this.caller({ certified });\n return get_default_subnets();\n };\n}\n", "/* Do not edit. Compiled with ./scripts/compile-idl-js from packages/cmc/candid/cmc.did */\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 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 log_visibility = IDL.Variant({\n 'controllers' : IDL.Null,\n 'public' : IDL.Null,\n });\n const CanisterSettings = IDL.Record({\n 'freezing_threshold' : IDL.Opt(IDL.Nat),\n 'wasm_memory_threshold' : IDL.Opt(IDL.Nat),\n 'controllers' : IDL.Opt(IDL.Vec(IDL.Principal)),\n 'reserved_cycles_limit' : IDL.Opt(IDL.Nat),\n 'log_visibility' : IDL.Opt(log_visibility),\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 return IDL.Service({\n 'create_canister' : IDL.Func(\n [CreateCanisterArg],\n [CreateCanisterResult],\n [],\n ),\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 });\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 return [IDL.Opt(CyclesCanisterInitPayload)];\n};\n", "/* Do not edit. Compiled with ./scripts/compile-idl-js from packages/cmc/candid/cmc.did */\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 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 log_visibility = IDL.Variant({\n 'controllers' : IDL.Null,\n 'public' : IDL.Null,\n });\n const CanisterSettings = IDL.Record({\n 'freezing_threshold' : IDL.Opt(IDL.Nat),\n 'wasm_memory_threshold' : IDL.Opt(IDL.Nat),\n 'controllers' : IDL.Opt(IDL.Vec(IDL.Principal)),\n 'reserved_cycles_limit' : IDL.Opt(IDL.Nat),\n 'log_visibility' : IDL.Opt(log_visibility),\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 return IDL.Service({\n 'create_canister' : IDL.Func(\n [CreateCanisterArg],\n [CreateCanisterResult],\n [],\n ),\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 });\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 return [IDL.Opt(CyclesCanisterInitPayload)];\n};\n", "import 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 // Edge case\n throw new Error(`Unsupported error type ${JSON.stringify(error)}`);\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["src_exports", "__export", "CMCCanister", "CMCError", "InvalidaTransactionError", "ProcessingError", "RefundedError", "TransactionTooOldError", "throwNotifyError", "__toCommonJS", "import_utils", "idlFactory", "IDL", "ExchangeRateCanister", "AccountIdentifier", "CyclesCanisterInitPayload", "SubnetFilter", "SubnetSelection", "log_visibility", "CanisterSettings", "CreateCanisterArg", "CreateCanisterError", "CreateCanisterResult", "IcpXdrConversionRate", "IcpXdrConversionRateResponse", "PrincipalsAuthorizedToCreateCanistersToSubnetsResponse", "SubnetTypesToSubnetsResponse", "BlockIndex", "NotifyCreateCanisterArg", "NotifyError", "NotifyCreateCanisterResult", "Memo", "Subaccount", "NotifyMintCyclesArg", "NotifyMintCyclesSuccess", "NotifyMintCyclesResult", "NotifyTopUpArg", "Cycles", "NotifyTopUpResult", "idlFactory", "IDL", "ExchangeRateCanister", "AccountIdentifier", "CyclesCanisterInitPayload", "SubnetFilter", "SubnetSelection", "log_visibility", "CanisterSettings", "CreateCanisterArg", "CreateCanisterError", "CreateCanisterResult", "IcpXdrConversionRate", "IcpXdrConversionRateResponse", "PrincipalsAuthorizedToCreateCanistersToSubnetsResponse", "SubnetTypesToSubnetsResponse", "BlockIndex", "NotifyCreateCanisterArg", "NotifyError", "NotifyCreateCanisterResult", "Memo", "Subaccount", "NotifyMintCyclesArg", "NotifyMintCyclesSuccess", "NotifyMintCyclesResult", "NotifyTopUpArg", "Cycles", "NotifyTopUpResult", "RefundedError", "InvalidaTransactionError", "CMCError", "ProcessingError", "TransactionTooOldError", "throwNotifyError", "error", "CMCCanister", "_CMCCanister", "data", "request", "response", "throwNotifyError", "certified", "get_default_subnets", "options", "service", "certifiedService", "canisterId", "idlFactory"]
|
|
7
7
|
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{f as S}from"./chunk-XRC5EOJ2.js";import{Canister as k,createServices as E}from"@dfinity/utils";var h=({IDL:t})=>{let s=t.Variant({Set:t.Principal,Unset:t.Null}),n=t.Text,e=t.Record({exchange_rate_canister:t.Opt(s),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(n),ledger_canister_id:t.Opt(t.Principal)}),a=t.Record({subnet_type:t.Opt(t.Text)}),i=t.Variant({Filter:a,Subnet:t.Record({subnet:t.Principal})}),p=t.Variant({controllers:t.Null,public:t.Null}),o=t.Record({freezing_threshold:t.Opt(t.Nat),wasm_memory_threshold:t.Opt(t.Nat),controllers:t.Opt(t.Vec(t.Principal)),reserved_cycles_limit:t.Opt(t.Nat),log_visibility:t.Opt(p),wasm_memory_limit:t.Opt(t.Nat),memory_allocation:t.Opt(t.Nat),compute_allocation:t.Opt(t.Nat)}),l=t.Record({subnet_selection:t.Opt(i),settings:t.Opt(o),subnet_type:t.Opt(t.Text)}),_=t.Variant({Refunded:t.Record({create_error:t.Text,refund_amount:t.Nat})}),d=t.Variant({Ok:t.Principal,Err:_}),u=t.Record({xdr_permyriad_per_icp:t.Nat64,timestamp_seconds:t.Nat64}),y=t.Record({certificate:t.Vec(t.Nat8),data:u,hash_tree:t.Vec(t.Nat8)}),O=t.Record({data:t.Vec(t.Tuple(t.Principal,t.Vec(t.Principal)))}),C=t.Record({data:t.Vec(t.Tuple(t.Text,t.Vec(t.Principal)))}),r=t.Nat64,N=t.Record({controller:t.Principal,block_index:r,subnet_selection:t.Opt(i),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}),g=t.Variant({Ok:t.Principal,Err:c}),f=t.Opt(t.Vec(t.Nat8)),m=t.Opt(t.Vec(t.Nat8)),b=t.Record({block_index:r,deposit_memo:f,to_subaccount:m}),R=t.Record({balance:t.Nat,block_index:t.Nat,minted:t.Nat}),x=t.Variant({Ok:R,Err:c}),P=t.Record({block_index:r,canister_id:t.Principal}),T=t.Nat,V=t.Variant({Ok:T,Err:c});return t.Service({create_canister:t.Func([l],[d],[]),get_build_metadata:t.Func([],[t.Text],[]),get_default_subnets:t.Func([],[t.Vec(t.Principal)],[]),get_icp_xdr_conversion_rate:t.Func([],[y],[]),get_principals_authorized_to_create_canisters_to_subnets:t.Func([],[O],[]),get_subnet_types_to_subnets:t.Func([],[C],[]),notify_create_canister:t.Func([N],[g],[]),notify_mint_cycles:t.Func([b],[x],[]),notify_top_up:t.Func([P],[V],[])})};var v=({IDL:t})=>{let s=t.Variant({Set:t.Principal,Unset:t.Null}),n=t.Text,e=t.Record({exchange_rate_canister:t.Opt(s),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(n),ledger_canister_id:t.Opt(t.Principal)}),a=t.Record({subnet_type:t.Opt(t.Text)}),i=t.Variant({Filter:a,Subnet:t.Record({subnet:t.Principal})}),p=t.Variant({controllers:t.Null,public:t.Null}),o=t.Record({freezing_threshold:t.Opt(t.Nat),wasm_memory_threshold:t.Opt(t.Nat),controllers:t.Opt(t.Vec(t.Principal)),reserved_cycles_limit:t.Opt(t.Nat),log_visibility:t.Opt(p),wasm_memory_limit:t.Opt(t.Nat),memory_allocation:t.Opt(t.Nat),compute_allocation:t.Opt(t.Nat)}),l=t.Record({subnet_selection:t.Opt(i),settings:t.Opt(o),subnet_type:t.Opt(t.Text)}),_=t.Variant({Refunded:t.Record({create_error:t.Text,refund_amount:t.Nat})}),d=t.Variant({Ok:t.Principal,Err:_}),u=t.Record({xdr_permyriad_per_icp:t.Nat64,timestamp_seconds:t.Nat64}),y=t.Record({certificate:t.Vec(t.Nat8),data:u,hash_tree:t.Vec(t.Nat8)}),O=t.Record({data:t.Vec(t.Tuple(t.Principal,t.Vec(t.Principal)))}),C=t.Record({data:t.Vec(t.Tuple(t.Text,t.Vec(t.Principal)))}),r=t.Nat64,N=t.Record({controller:t.Principal,block_index:r,subnet_selection:t.Opt(i),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}),g=t.Variant({Ok:t.Principal,Err:c}),f=t.Opt(t.Vec(t.Nat8)),m=t.Opt(t.Vec(t.Nat8)),b=t.Record({block_index:r,deposit_memo:f,to_subaccount:m}),R=t.Record({balance:t.Nat,block_index:t.Nat,minted:t.Nat}),x=t.Variant({Ok:R,Err:c}),P=t.Record({block_index:r,canister_id:t.Principal}),T=t.Nat,V=t.Variant({Ok:T,Err:c});return t.Service({create_canister:t.Func([l],[d],[]),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([],[y],["query"]),get_principals_authorized_to_create_canisters_to_subnets:t.Func([],[O],["query"]),get_subnet_types_to_subnets:t.Func([],[C],["query"]),notify_create_canister:t.Func([N],[g],[]),notify_mint_cycles:t.Func([b],[x],[]),notify_top_up:t.Func([P],[V],[])})};var F=class t extends k{constructor(){super(...arguments);this.getIcpToCyclesConversionRate=async()=>{let{data:n}=await this.service.get_icp_xdr_conversion_rate();return n.xdr_permyriad_per_icp};this.notifyCreateCanister=async n=>{let e=await this.service.notify_create_canister(n);if("Err"in e&&S(e),"Ok"in e)return e.Ok;throw new Error(`Unsupported response type in notifyCreateCanister ${JSON.stringify(e)}`)};this.notifyTopUp=async n=>{let e=await this.service.notify_top_up(n);if("Err"in e&&S(e),"Ok"in e)return e.Ok;throw new Error(`Unsupported response type in notifyTopUp ${JSON.stringify(e)}`)};this.getDefaultSubnets=async({certified:n}={})=>{let{get_default_subnets:e}=this.caller({certified:n});return e()}}static create(n){let{service:e,certifiedService:a,canisterId:i}=E({options:n,idlFactory:v,certifiedIdlFactory:h});return new t(i,e,a)}};export{F as a};
|
|
2
|
+
//# sourceMappingURL=chunk-5XIQBCLB.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/cmc.canister.ts", "../../candid/cmc.certified.idl.js", "../../candid/cmc.idl.js"],
|
|
4
|
+
"sourcesContent": ["import type { Principal } from \"@dfinity/principal\";\nimport { Canister, createServices, type QueryParams } from \"@dfinity/utils\";\nimport type {\n _SERVICE as CMCCanisterService,\n Cycles,\n NotifyCreateCanisterArg,\n NotifyTopUpArg,\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\n *\n * @returns Promise<BigInt>\n */\n public getIcpToCyclesConversionRate = async (): Promise<bigint> => {\n const { data } = await this.service.get_icp_xdr_conversion_rate();\n\n // TODO: validate the certificate in the response - https://dfinity.atlassian.net/browse/FOLLOW-223\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 = async ({ certified }: QueryParams = {}): Promise<\n Principal[]\n > => {\n const { get_default_subnets } = this.caller({ certified });\n return get_default_subnets();\n };\n}\n", "/* Do not edit. Compiled with ./scripts/compile-idl-js from packages/cmc/candid/cmc.did */\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 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 log_visibility = IDL.Variant({\n 'controllers' : IDL.Null,\n 'public' : IDL.Null,\n });\n const CanisterSettings = IDL.Record({\n 'freezing_threshold' : IDL.Opt(IDL.Nat),\n 'wasm_memory_threshold' : IDL.Opt(IDL.Nat),\n 'controllers' : IDL.Opt(IDL.Vec(IDL.Principal)),\n 'reserved_cycles_limit' : IDL.Opt(IDL.Nat),\n 'log_visibility' : IDL.Opt(log_visibility),\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 return IDL.Service({\n 'create_canister' : IDL.Func(\n [CreateCanisterArg],\n [CreateCanisterResult],\n [],\n ),\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 });\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 return [IDL.Opt(CyclesCanisterInitPayload)];\n};\n", "/* Do not edit. Compiled with ./scripts/compile-idl-js from packages/cmc/candid/cmc.did */\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 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 log_visibility = IDL.Variant({\n 'controllers' : IDL.Null,\n 'public' : IDL.Null,\n });\n const CanisterSettings = IDL.Record({\n 'freezing_threshold' : IDL.Opt(IDL.Nat),\n 'wasm_memory_threshold' : IDL.Opt(IDL.Nat),\n 'controllers' : IDL.Opt(IDL.Vec(IDL.Principal)),\n 'reserved_cycles_limit' : IDL.Opt(IDL.Nat),\n 'log_visibility' : IDL.Opt(log_visibility),\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 return IDL.Service({\n 'create_canister' : IDL.Func(\n [CreateCanisterArg],\n [CreateCanisterResult],\n [],\n ),\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 });\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 return [IDL.Opt(CyclesCanisterInitPayload)];\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["Canister", "createServices", "idlFactory", "IDL", "ExchangeRateCanister", "AccountIdentifier", "CyclesCanisterInitPayload", "SubnetFilter", "SubnetSelection", "log_visibility", "CanisterSettings", "CreateCanisterArg", "CreateCanisterError", "CreateCanisterResult", "IcpXdrConversionRate", "IcpXdrConversionRateResponse", "PrincipalsAuthorizedToCreateCanistersToSubnetsResponse", "SubnetTypesToSubnetsResponse", "BlockIndex", "NotifyCreateCanisterArg", "NotifyError", "NotifyCreateCanisterResult", "Memo", "Subaccount", "NotifyMintCyclesArg", "NotifyMintCyclesSuccess", "NotifyMintCyclesResult", "NotifyTopUpArg", "Cycles", "NotifyTopUpResult", "idlFactory", "IDL", "ExchangeRateCanister", "AccountIdentifier", "CyclesCanisterInitPayload", "SubnetFilter", "SubnetSelection", "log_visibility", "CanisterSettings", "CreateCanisterArg", "CreateCanisterError", "CreateCanisterResult", "IcpXdrConversionRate", "IcpXdrConversionRateResponse", "PrincipalsAuthorizedToCreateCanistersToSubnetsResponse", "SubnetTypesToSubnetsResponse", "BlockIndex", "NotifyCreateCanisterArg", "NotifyError", "NotifyCreateCanisterResult", "Memo", "Subaccount", "NotifyMintCyclesArg", "NotifyMintCyclesSuccess", "NotifyMintCyclesResult", "NotifyTopUpArg", "Cycles", "NotifyTopUpResult", "CMCCanister", "_CMCCanister", "Canister", "data", "request", "response", "throwNotifyError", "certified", "get_default_subnets", "options", "service", "certifiedService", "canisterId", "createServices", "idlFactory"]
|
|
7
|
+
}
|
package/dist/esm/cmc.canister.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"./chunk-
|
|
1
|
+
import{a}from"./chunk-5XIQBCLB.js";import"./chunk-XRC5EOJ2.js";export{a as CMCCanister};
|
|
2
2
|
//# sourceMappingURL=cmc.canister.js.map
|
package/dist/esm/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as r}from"./chunk-
|
|
1
|
+
import{a as r}from"./chunk-5XIQBCLB.js";import{a as e,b as o,c as t,d as p,e as C,f}from"./chunk-XRC5EOJ2.js";export{r as CMCCanister,t as CMCError,o as InvalidaTransactionError,p as ProcessingError,e as RefundedError,C as TransactionTooOldError,f as throwNotifyError};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import type { Principal } from "@dfinity/principal";
|
|
2
|
-
import
|
|
2
|
+
import { Canister, type QueryParams } from "@dfinity/utils";
|
|
3
|
+
import type { _SERVICE as CMCCanisterService, Cycles, NotifyCreateCanisterArg, NotifyTopUpArg } from "../candid/cmc";
|
|
3
4
|
import type { CMCCanisterOptions } from "./cmc.options";
|
|
4
|
-
export declare class CMCCanister {
|
|
5
|
-
private readonly service;
|
|
6
|
-
private constructor();
|
|
5
|
+
export declare class CMCCanister extends Canister<CMCCanisterService> {
|
|
7
6
|
static create(options: CMCCanisterOptions): CMCCanister;
|
|
8
7
|
/**
|
|
9
8
|
* Returns conversion rate of ICP to Cycles
|
|
@@ -33,4 +32,16 @@ export declare class CMCCanister {
|
|
|
33
32
|
* @throws RefundedError, InvalidaTransactionError, ProcessingError, TransactionTooOldError, CMCError
|
|
34
33
|
*/
|
|
35
34
|
notifyTopUp: (request: NotifyTopUpArg) => Promise<Cycles>;
|
|
35
|
+
/**
|
|
36
|
+
* This function calls the `get_default_subnets` method of the CMC canister, which returns a list of
|
|
37
|
+
* default subnets as `Principal` objects. It can be called as query or update.
|
|
38
|
+
*
|
|
39
|
+
* @param {Object} [params] - The query parameters for the call.
|
|
40
|
+
* @param {boolean} [params.certified] - Determines whether the response should be certified
|
|
41
|
+
* (default: non-certified if not specified).
|
|
42
|
+
*
|
|
43
|
+
* @returns {Promise<Principal[]>} - A promise that resolves to an array of `Principal` objects
|
|
44
|
+
* representing the default subnets.
|
|
45
|
+
*/
|
|
46
|
+
getDefaultSubnets: ({ certified }?: QueryParams) => Promise<Principal[]>;
|
|
36
47
|
}
|
|
@@ -2,5 +2,5 @@ import type { Principal } from "@dfinity/principal";
|
|
|
2
2
|
import type { CanisterOptions } from "@dfinity/utils";
|
|
3
3
|
import type { _SERVICE as CanisterService } from "../candid/cmc";
|
|
4
4
|
export interface CMCCanisterOptions extends Omit<CanisterOptions<CanisterService>, "canisterId"> {
|
|
5
|
-
canisterId:
|
|
5
|
+
canisterId: Principal;
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dfinity/cmc",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "4.0.0",
|
|
4
4
|
"description": "A library for interfacing with the cycle minting canister.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"main": "dist/cjs/index.cjs.js",
|
|
@@ -39,6 +39,6 @@
|
|
|
39
39
|
"@dfinity/agent": "^2.0.0",
|
|
40
40
|
"@dfinity/candid": "^2.0.0",
|
|
41
41
|
"@dfinity/principal": "^2.0.0",
|
|
42
|
-
"@dfinity/utils": "^2.
|
|
42
|
+
"@dfinity/utils": "^2.6.0"
|
|
43
43
|
}
|
|
44
44
|
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{f as o}from"./chunk-XRC5EOJ2.js";import{Actor as S}from"@dfinity/agent";var l=({IDL:t})=>{let r=t.Variant({Set:t.Principal,Unset:t.Null}),e=t.Text,a=t.Record({exchange_rate_canister:t.Opt(r),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({subnet_type:t.Opt(t.Text)}),s=t.Variant({Filter:i,Subnet:t.Record({subnet:t.Principal})}),d=t.Variant({controllers:t.Null,public:t.Null}),p=t.Record({freezing_threshold:t.Opt(t.Nat),wasm_memory_threshold:t.Opt(t.Nat),controllers:t.Opt(t.Vec(t.Principal)),reserved_cycles_limit:t.Opt(t.Nat),log_visibility:t.Opt(d),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(p),subnet_type:t.Opt(t.Text)}),y=t.Variant({Refunded:t.Record({create_error:t.Text,refund_amount:t.Nat})}),O=t.Variant({Ok:t.Principal,Err:y}),f=t.Record({xdr_permyriad_per_icp:t.Nat64,timestamp_seconds:t.Nat64}),C=t.Record({certificate:t.Vec(t.Nat8),data:f,hash_tree:t.Vec(t.Nat8)}),g=t.Record({data:t.Vec(t.Tuple(t.Principal,t.Vec(t.Principal)))}),m=t.Record({data:t.Vec(t.Tuple(t.Text,t.Vec(t.Principal)))}),n=t.Nat64,N=t.Record({controller:t.Principal,block_index:n,subnet_selection:t.Opt(s),settings:t.Opt(p),subnet_type:t.Opt(t.Text)}),c=t.Variant({Refunded:t.Record({block_index:t.Opt(n),reason:t.Text}),InvalidTransaction:t.Text,Other:t.Record({error_message:t.Text,error_code:t.Nat64}),Processing:t.Null,TransactionTooOld:n}),R=t.Variant({Ok:t.Principal,Err:c}),b=t.Opt(t.Vec(t.Nat8)),x=t.Opt(t.Vec(t.Nat8)),P=t.Record({block_index:n,deposit_memo:b,to_subaccount:x}),T=t.Record({balance:t.Nat,block_index:t.Nat,minted:t.Nat}),V=t.Variant({Ok:T,Err:c}),v=t.Record({block_index:n,canister_id:t.Principal}),h=t.Nat,E=t.Variant({Ok:h,Err:c});return t.Service({create_canister:t.Func([u],[O],[]),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([],[C],["query"]),get_principals_authorized_to_create_canisters_to_subnets:t.Func([],[g],["query"]),get_subnet_types_to_subnets:t.Func([],[m],["query"]),notify_create_canister:t.Func([N],[R],[]),notify_mint_cycles:t.Func([P],[V],[]),notify_top_up:t.Func([v],[E],[])})};var _=class t{constructor(r){this.service=r;this.getIcpToCyclesConversionRate=async()=>{let{data:r}=await this.service.get_icp_xdr_conversion_rate();return r.xdr_permyriad_per_icp};this.notifyCreateCanister=async r=>{let e=await this.service.notify_create_canister(r);if("Err"in e&&o(e),"Ok"in e)return e.Ok;throw new Error(`Unsupported response type in notifyCreateCanister ${JSON.stringify(e)}`)};this.notifyTopUp=async r=>{let e=await this.service.notify_top_up(r);if("Err"in e&&o(e),"Ok"in e)return e.Ok;throw new Error(`Unsupported response type in notifyTopUp ${JSON.stringify(e)}`)};this.service=r}static create(r){let e=r.agent,a=r.canisterId,i=r.serviceOverride??S.createActor(l,{agent:e,canisterId:a});return new t(i)}};export{_ as a};
|
|
2
|
-
//# sourceMappingURL=chunk-MKLB3JOX.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/cmc.canister.ts", "../../candid/cmc.idl.js"],
|
|
4
|
-
"sourcesContent": ["import { Actor } from \"@dfinity/agent\";\nimport type { Principal } from \"@dfinity/principal\";\nimport type {\n Cycles,\n NotifyCreateCanisterArg,\n NotifyTopUpArg,\n _SERVICE,\n} from \"../candid/cmc\";\nimport { idlFactory } from \"../candid/cmc.idl\";\nimport { throwNotifyError } from \"./cmc.errors\";\nimport type { CMCCanisterOptions } from \"./cmc.options\";\n\nexport class CMCCanister {\n private constructor(private readonly service: _SERVICE) {\n this.service = service;\n }\n\n public static create(options: CMCCanisterOptions) {\n const agent = options.agent;\n const canisterId = options.canisterId;\n\n const service =\n options.serviceOverride ??\n Actor.createActor<_SERVICE>(idlFactory, {\n agent,\n canisterId,\n });\n\n return new CMCCanister(service);\n }\n\n /**\n * Returns conversion rate of ICP to Cycles\n *\n * @returns Promise<BigInt>\n */\n public getIcpToCyclesConversionRate = async (): Promise<bigint> => {\n const { data } = await this.service.get_icp_xdr_conversion_rate();\n\n // TODO: validate the certificate in the response - https://dfinity.atlassian.net/browse/FOLLOW-223\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", "/* Do not edit. Compiled with ./scripts/compile-idl-js from packages/cmc/candid/cmc.did */\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 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 log_visibility = IDL.Variant({\n 'controllers' : IDL.Null,\n 'public' : IDL.Null,\n });\n const CanisterSettings = IDL.Record({\n 'freezing_threshold' : IDL.Opt(IDL.Nat),\n 'wasm_memory_threshold' : IDL.Opt(IDL.Nat),\n 'controllers' : IDL.Opt(IDL.Vec(IDL.Principal)),\n 'reserved_cycles_limit' : IDL.Opt(IDL.Nat),\n 'log_visibility' : IDL.Opt(log_visibility),\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 return IDL.Service({\n 'create_canister' : IDL.Func(\n [CreateCanisterArg],\n [CreateCanisterResult],\n [],\n ),\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 });\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 return [IDL.Opt(CyclesCanisterInitPayload)];\n};\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["Actor", "idlFactory", "IDL", "ExchangeRateCanister", "AccountIdentifier", "CyclesCanisterInitPayload", "SubnetFilter", "SubnetSelection", "log_visibility", "CanisterSettings", "CreateCanisterArg", "CreateCanisterError", "CreateCanisterResult", "IcpXdrConversionRate", "IcpXdrConversionRateResponse", "PrincipalsAuthorizedToCreateCanistersToSubnetsResponse", "SubnetTypesToSubnetsResponse", "BlockIndex", "NotifyCreateCanisterArg", "NotifyError", "NotifyCreateCanisterResult", "Memo", "Subaccount", "NotifyMintCyclesArg", "NotifyMintCyclesSuccess", "NotifyMintCyclesResult", "NotifyTopUpArg", "Cycles", "NotifyTopUpResult", "CMCCanister", "_CMCCanister", "service", "data", "request", "response", "throwNotifyError", "options", "agent", "canisterId", "Actor", "idlFactory"]
|
|
7
|
-
}
|