@objectid/oid-provider 1.0.6

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.
Files changed (189) hide show
  1. package/README.md +67 -0
  2. package/dist/api.d.ts +30 -0
  3. package/dist/api.d.ts.map +1 -0
  4. package/dist/api.js +41 -0
  5. package/dist/api.js.map +1 -0
  6. package/dist/env.d.ts +28 -0
  7. package/dist/env.d.ts.map +1 -0
  8. package/dist/env.js +114 -0
  9. package/dist/env.js.map +1 -0
  10. package/dist/index.d.ts +11 -0
  11. package/dist/index.d.ts.map +1 -0
  12. package/dist/index.js +12 -0
  13. package/dist/index.js.map +1 -0
  14. package/dist/methods/component.d.ts +18 -0
  15. package/dist/methods/component.d.ts.map +1 -0
  16. package/dist/methods/component.js +58 -0
  17. package/dist/methods/component.js.map +1 -0
  18. package/dist/methods/counter.d.ts +43 -0
  19. package/dist/methods/counter.d.ts.map +1 -0
  20. package/dist/methods/counter.js +144 -0
  21. package/dist/methods/counter.js.map +1 -0
  22. package/dist/methods/document.d.ts +90 -0
  23. package/dist/methods/document.d.ts.map +1 -0
  24. package/dist/methods/document.js +332 -0
  25. package/dist/methods/document.js.map +1 -0
  26. package/dist/methods/event.d.ts +26 -0
  27. package/dist/methods/event.d.ts.map +1 -0
  28. package/dist/methods/event.js +107 -0
  29. package/dist/methods/event.js.map +1 -0
  30. package/dist/methods/index.d.ts +7 -0
  31. package/dist/methods/index.d.ts.map +1 -0
  32. package/dist/methods/index.js +7 -0
  33. package/dist/methods/index.js.map +1 -0
  34. package/dist/methods/object.d.ts +74 -0
  35. package/dist/methods/object.d.ts.map +1 -0
  36. package/dist/methods/object.js +293 -0
  37. package/dist/methods/object.js.map +1 -0
  38. package/dist/methods/objectMessages.d.ts +30 -0
  39. package/dist/methods/objectMessages.d.ts.map +1 -0
  40. package/dist/methods/objectMessages.js +144 -0
  41. package/dist/methods/objectMessages.js.map +1 -0
  42. package/dist/methods.d.ts +2 -0
  43. package/dist/methods.d.ts.map +1 -0
  44. package/dist/methods.js +2 -0
  45. package/dist/methods.js.map +1 -0
  46. package/dist/oid/caps.d.ts +8 -0
  47. package/dist/oid/caps.d.ts.map +1 -0
  48. package/dist/oid/caps.js +61 -0
  49. package/dist/oid/caps.js.map +1 -0
  50. package/dist/oid/credit.d.ts +7 -0
  51. package/dist/oid/credit.d.ts.map +1 -0
  52. package/dist/oid/credit.js +48 -0
  53. package/dist/oid/credit.js.map +1 -0
  54. package/dist/oid/graphql.d.ts +4 -0
  55. package/dist/oid/graphql.d.ts.map +1 -0
  56. package/dist/oid/graphql.js +69 -0
  57. package/dist/oid/graphql.js.map +1 -0
  58. package/dist/oid/index.d.ts +92 -0
  59. package/dist/oid/index.d.ts.map +1 -0
  60. package/dist/oid/index.js +378 -0
  61. package/dist/oid/index.js.map +1 -0
  62. package/dist/oid/ownedObjects.d.ts +9 -0
  63. package/dist/oid/ownedObjects.d.ts.map +1 -0
  64. package/dist/oid/ownedObjects.js +38 -0
  65. package/dist/oid/ownedObjects.js.map +1 -0
  66. package/dist/onchain/config.d.ts +37 -0
  67. package/dist/onchain/config.d.ts.map +1 -0
  68. package/dist/onchain/config.js +109 -0
  69. package/dist/onchain/config.js.map +1 -0
  70. package/dist/onchain/defaults.d.ts +13 -0
  71. package/dist/onchain/defaults.d.ts.map +1 -0
  72. package/dist/onchain/defaults.js +17 -0
  73. package/dist/onchain/defaults.js.map +1 -0
  74. package/dist/onchain/getObjects.d.ts +17 -0
  75. package/dist/onchain/getObjects.d.ts.map +1 -0
  76. package/dist/onchain/getObjects.js +112 -0
  77. package/dist/onchain/getObjects.js.map +1 -0
  78. package/dist/onchain/identity.d.ts +2 -0
  79. package/dist/onchain/identity.d.ts.map +1 -0
  80. package/dist/onchain/identity.js +9 -0
  81. package/dist/onchain/identity.js.map +1 -0
  82. package/dist/react/ObjectIdProvider.d.ts +53 -0
  83. package/dist/react/ObjectIdProvider.d.ts.map +1 -0
  84. package/dist/react/ObjectIdProvider.js +431 -0
  85. package/dist/react/ObjectIdProvider.js.map +1 -0
  86. package/dist/react/index.d.ts +4 -0
  87. package/dist/react/index.d.ts.map +1 -0
  88. package/dist/react/index.js +3 -0
  89. package/dist/react/index.js.map +1 -0
  90. package/dist/types/documentData.d.ts +25 -0
  91. package/dist/types/documentData.d.ts.map +1 -0
  92. package/dist/types/documentData.js +2 -0
  93. package/dist/types/documentData.js.map +1 -0
  94. package/dist/types/objectData.d.ts +24 -0
  95. package/dist/types/objectData.d.ts.map +1 -0
  96. package/dist/types/objectData.js +2 -0
  97. package/dist/types/objectData.js.map +1 -0
  98. package/dist/types/types.d.ts +65 -0
  99. package/dist/types/types.d.ts.map +1 -0
  100. package/dist/types/types.js +2 -0
  101. package/dist/types/types.js.map +1 -0
  102. package/dist/utils/geolocation.d.ts +1 -0
  103. package/dist/utils/geolocation.d.ts.map +1 -0
  104. package/dist/utils/geolocation.js +2 -0
  105. package/dist/utils/geolocation.js.map +1 -0
  106. package/dist/utils/getObject.d.ts +3 -0
  107. package/dist/utils/getObject.d.ts.map +1 -0
  108. package/dist/utils/getObject.js +18 -0
  109. package/dist/utils/getObject.js.map +1 -0
  110. package/dist/utils/getObjectData.d.ts +4 -0
  111. package/dist/utils/getObjectData.d.ts.map +1 -0
  112. package/dist/utils/getObjectData.js +26 -0
  113. package/dist/utils/getObjectData.js.map +1 -0
  114. package/dist/utils/graphql.d.ts +3 -0
  115. package/dist/utils/graphql.d.ts.map +1 -0
  116. package/dist/utils/graphql.js +35 -0
  117. package/dist/utils/graphql.js.map +1 -0
  118. package/dist/utils/tx.d.ts +21 -0
  119. package/dist/utils/tx.d.ts.map +1 -0
  120. package/dist/utils/tx.js +125 -0
  121. package/dist/utils/tx.js.map +1 -0
  122. package/dist/utils/url.d.ts +10 -0
  123. package/dist/utils/url.d.ts.map +1 -0
  124. package/dist/utils/url.js +24 -0
  125. package/dist/utils/url.js.map +1 -0
  126. package/dist-cjs/api.js +44 -0
  127. package/dist-cjs/api.js.map +1 -0
  128. package/dist-cjs/env.js +118 -0
  129. package/dist-cjs/env.js.map +1 -0
  130. package/dist-cjs/index.js +44 -0
  131. package/dist-cjs/index.js.map +1 -0
  132. package/dist-cjs/methods/component.js +62 -0
  133. package/dist-cjs/methods/component.js.map +1 -0
  134. package/dist-cjs/methods/counter.js +151 -0
  135. package/dist-cjs/methods/counter.js.map +1 -0
  136. package/dist-cjs/methods/document.js +348 -0
  137. package/dist-cjs/methods/document.js.map +1 -0
  138. package/dist-cjs/methods/event.js +112 -0
  139. package/dist-cjs/methods/event.js.map +1 -0
  140. package/dist-cjs/methods/index.js +23 -0
  141. package/dist-cjs/methods/index.js.map +1 -0
  142. package/dist-cjs/methods/object.js +305 -0
  143. package/dist-cjs/methods/object.js.map +1 -0
  144. package/dist-cjs/methods/objectMessages.js +151 -0
  145. package/dist-cjs/methods/objectMessages.js.map +1 -0
  146. package/dist-cjs/methods.js +18 -0
  147. package/dist-cjs/methods.js.map +1 -0
  148. package/dist-cjs/oid/caps.js +65 -0
  149. package/dist-cjs/oid/caps.js.map +1 -0
  150. package/dist-cjs/oid/credit.js +51 -0
  151. package/dist-cjs/oid/credit.js.map +1 -0
  152. package/dist-cjs/oid/graphql.js +73 -0
  153. package/dist-cjs/oid/graphql.js.map +1 -0
  154. package/dist-cjs/oid/index.js +381 -0
  155. package/dist-cjs/oid/index.js.map +1 -0
  156. package/dist-cjs/oid/ownedObjects.js +41 -0
  157. package/dist-cjs/oid/ownedObjects.js.map +1 -0
  158. package/dist-cjs/onchain/config.js +118 -0
  159. package/dist-cjs/onchain/config.js.map +1 -0
  160. package/dist-cjs/onchain/defaults.js +20 -0
  161. package/dist-cjs/onchain/defaults.js.map +1 -0
  162. package/dist-cjs/onchain/getObjects.js +117 -0
  163. package/dist-cjs/onchain/getObjects.js.map +1 -0
  164. package/dist-cjs/onchain/identity.js +10 -0
  165. package/dist-cjs/onchain/identity.js.map +1 -0
  166. package/dist-cjs/package.json +3 -0
  167. package/dist-cjs/react/ObjectIdProvider.js +437 -0
  168. package/dist-cjs/react/ObjectIdProvider.js.map +1 -0
  169. package/dist-cjs/react/index.js +10 -0
  170. package/dist-cjs/react/index.js.map +1 -0
  171. package/dist-cjs/types/documentData.js +3 -0
  172. package/dist-cjs/types/documentData.js.map +1 -0
  173. package/dist-cjs/types/objectData.js +3 -0
  174. package/dist-cjs/types/objectData.js.map +1 -0
  175. package/dist-cjs/types/types.js +3 -0
  176. package/dist-cjs/types/types.js.map +1 -0
  177. package/dist-cjs/utils/geolocation.js +2 -0
  178. package/dist-cjs/utils/geolocation.js.map +1 -0
  179. package/dist-cjs/utils/getObject.js +21 -0
  180. package/dist-cjs/utils/getObject.js.map +1 -0
  181. package/dist-cjs/utils/getObjectData.js +29 -0
  182. package/dist-cjs/utils/getObjectData.js.map +1 -0
  183. package/dist-cjs/utils/graphql.js +38 -0
  184. package/dist-cjs/utils/graphql.js.map +1 -0
  185. package/dist-cjs/utils/tx.js +128 -0
  186. package/dist-cjs/utils/tx.js.map +1 -0
  187. package/dist-cjs/utils/url.js +27 -0
  188. package/dist-cjs/utils/url.js.map +1 -0
  189. package/package.json +61 -0
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveEnv = resolveEnv;
4
+ exports.asJsonString = asJsonString;
5
+ const client_1 = require("@iota/iota-sdk/client");
6
+ const ed25519_1 = require("@iota/iota-sdk/keypairs/ed25519");
7
+ const graphql_1 = require("./utils/graphql");
8
+ function mustNonEmpty(name, value, ctx) {
9
+ const s = typeof value === "string" ? value.trim() : String(value ?? "").trim();
10
+ if (s)
11
+ return s;
12
+ const keys = ctx && typeof ctx === "object" ? Object.keys(ctx).join(",") : "";
13
+ throw new Error(`Missing required config field: ${name}${keys ? ` (available keys: ${keys})` : ""}`);
14
+ }
15
+ function mustArray(name, v) {
16
+ if (!Array.isArray(v) || v.length === 0)
17
+ throw new Error(`Missing required config array: ${name}`);
18
+ return v.map((x) => String(x));
19
+ }
20
+ function hexToBytes(hex) {
21
+ const h = hex.trim().toLowerCase().replace(/^0x/, "");
22
+ if (!h)
23
+ return new Uint8Array();
24
+ if (h.length % 2 !== 0)
25
+ throw new Error("Invalid hex seed length");
26
+ const out = new Uint8Array(h.length / 2);
27
+ for (let i = 0; i < out.length; i++)
28
+ out[i] = parseInt(h.slice(i * 2, i * 2 + 2), 16);
29
+ return out;
30
+ }
31
+ function bytesToHex(bytes) {
32
+ return Array.from(bytes)
33
+ .map((b) => b.toString(16).padStart(2, "0"))
34
+ .join("");
35
+ }
36
+ async function sha256(data) {
37
+ // Browser + Node 20+: WebCrypto
38
+ const subtle = globalThis?.crypto?.subtle;
39
+ if (subtle?.digest) {
40
+ const buf = await subtle.digest("SHA-256", data);
41
+ return new Uint8Array(buf);
42
+ }
43
+ // Node fallback (should not run in the browser)
44
+ const { createHash } = await Promise.resolve().then(() => require("crypto"));
45
+ return new Uint8Array(createHash("sha256").update(Buffer.from(data)).digest());
46
+ }
47
+ async function deriveSeedHex(seedHex, seedPath) {
48
+ const path = String(seedPath ?? "").trim();
49
+ if (!path)
50
+ return seedHex;
51
+ const seedBytes = hexToBytes(seedHex);
52
+ const pathBytes = new TextEncoder().encode(path);
53
+ const data = new Uint8Array(seedBytes.length + pathBytes.length);
54
+ data.set(seedBytes, 0);
55
+ data.set(pathBytes, seedBytes.length);
56
+ const h = await sha256(data);
57
+ // 32 bytes -> 64 hex chars
58
+ return bytesToHex(h.slice(0, 32));
59
+ }
60
+ /**
61
+ * Resolves runtime environment using ONLY the provider configuration (loaded from on-chain oid_config).
62
+ * No hardcoded defaults are used here.
63
+ */
64
+ async function resolveEnv(cfg) {
65
+ const net = mustNonEmpty("network", cfg.network, cfg);
66
+ const seed = mustNonEmpty("seed", cfg.seed, cfg);
67
+ const graphqlProvider = mustNonEmpty("graphqlProvider", cfg.graphqlProvider, cfg);
68
+ const objectPackages = mustArray("objectPackages", cfg.objectPackages);
69
+ const documentPackages = mustArray("documentPackages", cfg.documentPackages);
70
+ const objVer = Number(cfg.objectDefaultPackageVersion ?? 0);
71
+ const docVer = Number(cfg.documentDefaultPackageVersion ?? 0);
72
+ if (objVer < 0 || objVer >= objectPackages.length) {
73
+ throw new Error(`Invalid objectDefaultPackageVersion=${objVer} (len=${objectPackages.length})`);
74
+ }
75
+ if (docVer < 0 || docVer >= documentPackages.length) {
76
+ throw new Error(`Invalid documentDefaultPackageVersion=${docVer} (len=${documentPackages.length})`);
77
+ }
78
+ const packageID = objectPackages[objVer];
79
+ const documentPackageID = documentPackages[docVer];
80
+ const client = new client_1.IotaClient({ url: (0, client_1.getFullnodeUrl)(net) });
81
+ const effectiveSeed = await deriveSeedHex(seed, cfg.seedPath);
82
+ const keyPair = ed25519_1.Ed25519Keypair.deriveKeypairFromSeed(effectiveSeed);
83
+ const sender = keyPair.toIotaAddress();
84
+ const tokenCreditType = `0x2::token::Token<${packageID}::oid_credit::OID_CREDIT>`;
85
+ const policyTokenType = `0x2::token::TokenPolicy<${packageID}::oid_credit::OID_CREDIT>`;
86
+ const OIDobjectType = `${packageID}::oid_object::OIDObject`;
87
+ // Discover the policy object id via GraphQL (required for Move calls)
88
+ const edges = await (0, graphql_1.searchObjectsByType)(policyTokenType, null, graphqlProvider);
89
+ if (!edges?.length)
90
+ throw new Error("Cannot resolve policy object (no TokenPolicy found)");
91
+ const policy = edges[0].node.address;
92
+ return {
93
+ client,
94
+ keyPair,
95
+ sender,
96
+ network: net,
97
+ graphqlProvider,
98
+ packageID,
99
+ documentPackageID,
100
+ policy,
101
+ tokenCreditType,
102
+ policyTokenType,
103
+ OIDobjectType,
104
+ };
105
+ }
106
+ /**
107
+ * Converts an input value to a JSON string.
108
+ * - If value is already a string, returns it as-is.
109
+ * - Otherwise JSON.stringify(value). Undefined/null becomes "{}".
110
+ */
111
+ function asJsonString(value) {
112
+ if (typeof value === "string")
113
+ return value;
114
+ if (value === null || value === undefined)
115
+ return "{}";
116
+ return JSON.stringify(value);
117
+ }
118
+ //# sourceMappingURL=env.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.asJsonString = exports.DEFAULT_SHARED_CONFIG_OBJECT_ID = exports.DEFAULT_CONFIG_PACKAGE_IDS = exports.dlvcProxyUrl = exports.configType = exports.findUserConfigObjectId = exports.loadEffectiveConfig = exports.loadConfigJsonByObjectId = exports.loadPublicConfig = exports.useObjectIDSession = exports.useOptionalObjectId = exports.useObjectId = exports.ObjectID = exports.createOid = exports.createObjectIdApi = void 0;
18
+ var api_1 = require("./api");
19
+ Object.defineProperty(exports, "createObjectIdApi", { enumerable: true, get: function () { return api_1.createObjectIdApi; } });
20
+ // OID high-level wrapper
21
+ var oid_1 = require("./oid");
22
+ Object.defineProperty(exports, "createOid", { enumerable: true, get: function () { return oid_1.createOid; } });
23
+ // React provider + hooks
24
+ var react_1 = require("./react");
25
+ Object.defineProperty(exports, "ObjectID", { enumerable: true, get: function () { return react_1.ObjectID; } });
26
+ Object.defineProperty(exports, "useObjectId", { enumerable: true, get: function () { return react_1.useObjectId; } });
27
+ Object.defineProperty(exports, "useOptionalObjectId", { enumerable: true, get: function () { return react_1.useOptionalObjectId; } });
28
+ Object.defineProperty(exports, "useObjectIDSession", { enumerable: true, get: function () { return react_1.useObjectIDSession; } });
29
+ var config_1 = require("./onchain/config");
30
+ Object.defineProperty(exports, "loadPublicConfig", { enumerable: true, get: function () { return config_1.loadPublicConfig; } });
31
+ Object.defineProperty(exports, "loadConfigJsonByObjectId", { enumerable: true, get: function () { return config_1.loadConfigJsonByObjectId; } });
32
+ Object.defineProperty(exports, "loadEffectiveConfig", { enumerable: true, get: function () { return config_1.loadEffectiveConfig; } });
33
+ Object.defineProperty(exports, "findUserConfigObjectId", { enumerable: true, get: function () { return config_1.findUserConfigObjectId; } });
34
+ Object.defineProperty(exports, "configType", { enumerable: true, get: function () { return config_1.configType; } });
35
+ Object.defineProperty(exports, "dlvcProxyUrl", { enumerable: true, get: function () { return config_1.dlvcProxyUrl; } });
36
+ var defaults_1 = require("./onchain/defaults");
37
+ Object.defineProperty(exports, "DEFAULT_CONFIG_PACKAGE_IDS", { enumerable: true, get: function () { return defaults_1.DEFAULT_CONFIG_PACKAGE_IDS; } });
38
+ Object.defineProperty(exports, "DEFAULT_SHARED_CONFIG_OBJECT_ID", { enumerable: true, get: function () { return defaults_1.DEFAULT_SHARED_CONFIG_OBJECT_ID; } });
39
+ // Tx methods + their exported Params types (for IntelliSense)
40
+ __exportStar(require("./methods"), exports);
41
+ // Utilities
42
+ var env_1 = require("./env");
43
+ Object.defineProperty(exports, "asJsonString", { enumerable: true, get: function () { return env_1.asJsonString; } });
44
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAIA,6BAA0C;AAAjC,wGAAA,iBAAiB,OAAA;AAE1B,yBAAyB;AACzB,6BAA+F;AAAtF,gGAAA,SAAS,OAAA;AAElB,yBAAyB;AACzB,iCAA6G;AAApG,iGAAA,QAAQ,OAAA;AAAsB,oGAAA,WAAW,OAAA;AAAE,4GAAA,mBAAmB,OAAA;AAAE,2GAAA,kBAAkB,OAAA;AAI3F,2CAO0B;AANxB,0GAAA,gBAAgB,OAAA;AAChB,kHAAA,wBAAwB,OAAA;AACxB,6GAAA,mBAAmB,OAAA;AACnB,gHAAA,sBAAsB,OAAA;AACtB,oGAAA,UAAU,OAAA;AACV,sGAAA,YAAY,OAAA;AAEd,+CAAwH;AAA/G,sHAAA,0BAA0B,OAAA;AAAE,2HAAA,+BAA+B,OAAA;AAEpE,8DAA8D;AAC9D,4CAA0B;AAE1B,YAAY;AACZ,6BAAqC;AAA5B,mGAAA,YAAY,OAAA"}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.create_component = create_component;
4
+ exports.delete_component = delete_component;
5
+ const transactions_1 = require("@iota/iota-sdk/transactions");
6
+ const tx_1 = require("../utils/tx");
7
+ async function create_component(api, params) {
8
+ const { creditToken, controllerCap, object, component_id, description } = params;
9
+ const env = await api.env();
10
+ const gasBudget = api.gasBudget;
11
+ const tx = new transactions_1.Transaction();
12
+ const moveFunction = env.packageID + "::oid_object::create_component";
13
+ tx.moveCall({
14
+ arguments: [
15
+ tx.object(creditToken),
16
+ tx.object(env.policy),
17
+ tx.object(controllerCap),
18
+ tx.object(object),
19
+ tx.pure.address(component_id),
20
+ tx.pure.string(String(description ?? "")),
21
+ ],
22
+ target: moveFunction,
23
+ });
24
+ tx.setGasBudget(10_000_000);
25
+ tx.setSender(env.sender);
26
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
27
+ network: env.network,
28
+ gasBudget,
29
+ useGasStation: api.useGasStation,
30
+ gasStation: api.gasStation,
31
+ onExecuted: api.onTxExecuted,
32
+ });
33
+ return r;
34
+ }
35
+ async function delete_component(api, params) {
36
+ const { creditToken, controllerCap, object, component } = params;
37
+ const env = await api.env();
38
+ const gasBudget = api.gasBudget;
39
+ const tx = new transactions_1.Transaction();
40
+ const moveFunction = env.packageID + "::oid_object::delete_component";
41
+ tx.moveCall({
42
+ arguments: [
43
+ tx.object(creditToken),
44
+ tx.object(env.policy),
45
+ tx.object(controllerCap),
46
+ tx.object(object),
47
+ tx.object(component),
48
+ ],
49
+ target: moveFunction,
50
+ });
51
+ tx.setGasBudget(10_000_000);
52
+ tx.setSender(env.sender);
53
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
54
+ network: env.network,
55
+ gasBudget,
56
+ useGasStation: api.useGasStation,
57
+ gasStation: api.gasStation,
58
+ onExecuted: api.onTxExecuted,
59
+ });
60
+ return r;
61
+ }
62
+ //# sourceMappingURL=component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../src/methods/component.ts"],"names":[],"mappings":";;AAcA,4CA+BC;AASD,4CA8BC;AApFD,8DAA0D;AAG1D,oCAA6C;AAWtC,KAAK,UAAU,gBAAgB,CAAC,GAAgB,EAAE,MAA6B;IACpF,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;IACjF,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC;IAC5B,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;IAEhC,MAAM,EAAE,GAAG,IAAI,0BAAW,EAAE,CAAC;IAC7B,MAAM,YAAY,GAAG,GAAG,CAAC,SAAS,GAAG,gCAAgC,CAAC;IAEtE,EAAE,CAAC,QAAQ,CAAC;QACV,SAAS,EAAE;YACT,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC;YACtB,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;YACrB,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC;YACxB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;YACjB,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;YAC7B,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;SAC1C;QACD,MAAM,EAAE,YAAY;KACrB,CAAC,CAAC;IAEH,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAC5B,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAEzB,MAAM,CAAC,GAAG,MAAM,IAAA,mBAAc,EAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,EAAE;QAC1D,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS;QACT,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,UAAU,EAAG,GAAW,CAAC,YAAY;KACtC,CAAC,CAAC;IACH,OAAO,CAAC,CAAC;AACX,CAAC;AASM,KAAK,UAAU,gBAAgB,CAAC,GAAgB,EAAE,MAA6B;IACpF,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;IACjE,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC;IAC5B,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;IAEhC,MAAM,EAAE,GAAG,IAAI,0BAAW,EAAE,CAAC;IAC7B,MAAM,YAAY,GAAG,GAAG,CAAC,SAAS,GAAG,gCAAgC,CAAC;IAEtE,EAAE,CAAC,QAAQ,CAAC;QACV,SAAS,EAAE;YACT,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC;YACtB,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;YACrB,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC;YACxB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;YACjB,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC;SACrB;QACD,MAAM,EAAE,YAAY;KACrB,CAAC,CAAC;IAEH,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAC5B,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAEzB,MAAM,CAAC,GAAG,MAAM,IAAA,mBAAc,EAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,EAAE;QAC1D,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS;QACT,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,UAAU,EAAG,GAAW,CAAC,YAAY;KACtC,CAAC,CAAC;IACH,OAAO,CAAC,CAAC;AACX,CAAC"}
@@ -0,0 +1,151 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.create_counter = create_counter;
4
+ exports.delete_counter = delete_counter;
5
+ exports.counter_set_value = counter_set_value;
6
+ exports.counter_stepdown = counter_stepdown;
7
+ exports.counter_stepup = counter_stepup;
8
+ const transactions_1 = require("@iota/iota-sdk/transactions");
9
+ const env_1 = require("../env");
10
+ const tx_1 = require("../utils/tx");
11
+ async function create_counter(api, params) {
12
+ const { creditToken, controllerCap, object, value, unit, step, immutable_metadata, mutable_metadata } = params;
13
+ const env = await api.env();
14
+ const gasBudget = api.gasBudget;
15
+ const tx = new transactions_1.Transaction();
16
+ const moveFunction = env.packageID + "::oid_object::create_counter";
17
+ tx.moveCall({
18
+ arguments: [
19
+ tx.object(creditToken),
20
+ tx.object(env.policy),
21
+ tx.object(controllerCap),
22
+ tx.pure.address(object),
23
+ tx.pure.u64(value),
24
+ tx.pure.string(String(unit ?? "")),
25
+ tx.pure.u64(step),
26
+ tx.pure.string((0, env_1.asJsonString)(immutable_metadata)),
27
+ tx.pure.string((0, env_1.asJsonString)(mutable_metadata)),
28
+ ],
29
+ target: moveFunction,
30
+ });
31
+ tx.setGasBudget(10_000_000);
32
+ tx.setSender(env.sender);
33
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
34
+ network: env.network,
35
+ gasBudget,
36
+ useGasStation: api.useGasStation,
37
+ gasStation: api.gasStation,
38
+ onExecuted: api.onTxExecuted,
39
+ });
40
+ return r;
41
+ }
42
+ async function delete_counter(api, params) {
43
+ const { creditToken, controllerCap, object, counter } = params;
44
+ const env = await api.env();
45
+ const gasBudget = api.gasBudget;
46
+ const tx = new transactions_1.Transaction();
47
+ const moveFunction = env.packageID + "::oid_object::delete_counter";
48
+ tx.moveCall({
49
+ arguments: [
50
+ tx.object(creditToken),
51
+ tx.object(env.policy),
52
+ tx.object(controllerCap),
53
+ tx.object(object),
54
+ tx.object(counter),
55
+ ],
56
+ target: moveFunction,
57
+ });
58
+ tx.setGasBudget(10_000_000);
59
+ tx.setSender(env.sender);
60
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
61
+ network: env.network,
62
+ gasBudget,
63
+ useGasStation: api.useGasStation,
64
+ gasStation: api.gasStation,
65
+ onExecuted: api.onTxExecuted,
66
+ });
67
+ return r;
68
+ }
69
+ async function counter_set_value(api, params) {
70
+ const { creditToken, controllerCap, objectId, counter, new_value } = params;
71
+ const env = await api.env();
72
+ const gasBudget = api.gasBudget;
73
+ const tx = new transactions_1.Transaction();
74
+ const moveFunction = env.packageID + "::oid_object::counter_set_value";
75
+ tx.moveCall({
76
+ arguments: [
77
+ tx.object(creditToken),
78
+ tx.object(env.policy),
79
+ tx.object(controllerCap),
80
+ tx.object(objectId),
81
+ tx.object(counter),
82
+ tx.pure.u64(new_value),
83
+ ],
84
+ target: moveFunction,
85
+ });
86
+ tx.setGasBudget(10_000_000);
87
+ tx.setSender(env.sender);
88
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
89
+ network: env.network,
90
+ gasBudget,
91
+ useGasStation: api.useGasStation,
92
+ gasStation: api.gasStation,
93
+ onExecuted: api.onTxExecuted,
94
+ });
95
+ return r;
96
+ }
97
+ async function counter_stepdown(api, params) {
98
+ const { creditToken, controllerCap, objectId, counter } = params;
99
+ const env = await api.env();
100
+ const gasBudget = api.gasBudget;
101
+ const tx = new transactions_1.Transaction();
102
+ const moveFunction = env.packageID + "::oid_object::counter_stepdown";
103
+ tx.moveCall({
104
+ arguments: [
105
+ tx.object(creditToken),
106
+ tx.object(env.policy),
107
+ tx.object(controllerCap),
108
+ tx.object(objectId),
109
+ tx.object(counter),
110
+ ],
111
+ target: moveFunction,
112
+ });
113
+ tx.setGasBudget(10_000_000);
114
+ tx.setSender(env.sender);
115
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
116
+ network: env.network,
117
+ gasBudget,
118
+ useGasStation: api.useGasStation,
119
+ gasStation: api.gasStation,
120
+ onExecuted: api.onTxExecuted,
121
+ });
122
+ return r;
123
+ }
124
+ async function counter_stepup(api, params) {
125
+ const { creditToken, controllerCap, object, counter } = params;
126
+ const env = await api.env();
127
+ const gasBudget = api.gasBudget;
128
+ const tx = new transactions_1.Transaction();
129
+ const moveFunction = env.packageID + "::oid_object::counter_stepup";
130
+ tx.moveCall({
131
+ arguments: [
132
+ tx.object(creditToken),
133
+ tx.object(env.policy),
134
+ tx.object(controllerCap),
135
+ tx.object(object),
136
+ tx.object(counter),
137
+ ],
138
+ target: moveFunction,
139
+ });
140
+ tx.setGasBudget(10_000_000);
141
+ tx.setSender(env.sender);
142
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
143
+ network: env.network,
144
+ gasBudget,
145
+ useGasStation: api.useGasStation,
146
+ gasStation: api.gasStation,
147
+ onExecuted: api.onTxExecuted,
148
+ });
149
+ return r;
150
+ }
151
+ //# sourceMappingURL=counter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"counter.js","sourceRoot":"","sources":["../../src/methods/counter.ts"],"names":[],"mappings":";;AAkBA,wCAkCC;AASD,wCA8BC;AAUD,8CA+BC;AASD,4CA8BC;AASD,wCA8BC;AAlND,8DAA0D;AAG1D,gCAAsC;AACtC,oCAA6C;AActC,KAAK,UAAU,cAAc,CAAC,GAAgB,EAAE,MAA2B;IAChF,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,GAAG,MAAM,CAAC;IAC/G,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC;IAC5B,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;IAEhC,MAAM,EAAE,GAAG,IAAI,0BAAW,EAAE,CAAC;IAC7B,MAAM,YAAY,GAAG,GAAG,CAAC,SAAS,GAAG,8BAA8B,CAAC;IAEpE,EAAE,CAAC,QAAQ,CAAC;QACV,SAAS,EAAE;YACT,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC;YACtB,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;YACrB,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC;YACxB,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YACvB,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAY,CAAC;YACzB,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YAClC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAW,CAAC;YACxB,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAA,kBAAY,EAAC,kBAAkB,CAAC,CAAC;YAChD,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAA,kBAAY,EAAC,gBAAgB,CAAC,CAAC;SAC/C;QACD,MAAM,EAAE,YAAY;KACrB,CAAC,CAAC;IAEH,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAC5B,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAEzB,MAAM,CAAC,GAAG,MAAM,IAAA,mBAAc,EAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,EAAE;QAC1D,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS;QACT,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,UAAU,EAAG,GAAW,CAAC,YAAY;KACtC,CAAC,CAAC;IACH,OAAO,CAAC,CAAC;AACX,CAAC;AASM,KAAK,UAAU,cAAc,CAAC,GAAgB,EAAE,MAA2B;IAChF,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAC/D,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC;IAC5B,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;IAEhC,MAAM,EAAE,GAAG,IAAI,0BAAW,EAAE,CAAC;IAC7B,MAAM,YAAY,GAAG,GAAG,CAAC,SAAS,GAAG,8BAA8B,CAAC;IAEpE,EAAE,CAAC,QAAQ,CAAC;QACV,SAAS,EAAE;YACT,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC;YACtB,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;YACrB,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC;YACxB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;YACjB,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;SACnB;QACD,MAAM,EAAE,YAAY;KACrB,CAAC,CAAC;IAEH,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAC5B,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAEzB,MAAM,CAAC,GAAG,MAAM,IAAA,mBAAc,EAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,EAAE;QAC1D,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS;QACT,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,UAAU,EAAG,GAAW,CAAC,YAAY;KACtC,CAAC,CAAC;IACH,OAAO,CAAC,CAAC;AACX,CAAC;AAUM,KAAK,UAAU,iBAAiB,CAAC,GAAgB,EAAE,MAA6B;IACrF,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;IAC5E,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC;IAC5B,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;IAEhC,MAAM,EAAE,GAAG,IAAI,0BAAW,EAAE,CAAC;IAC7B,MAAM,YAAY,GAAG,GAAG,CAAC,SAAS,GAAG,iCAAiC,CAAC;IAEvE,EAAE,CAAC,QAAQ,CAAC;QACV,SAAS,EAAE;YACT,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC;YACtB,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;YACrB,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC;YACxB,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC;YACnB,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;YAClB,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,SAAgB,CAAC;SAC9B;QACD,MAAM,EAAE,YAAY;KACrB,CAAC,CAAC;IAEH,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAC5B,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAEzB,MAAM,CAAC,GAAG,MAAM,IAAA,mBAAc,EAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,EAAE;QAC1D,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS;QACT,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,UAAU,EAAG,GAAW,CAAC,YAAY;KACtC,CAAC,CAAC;IACH,OAAO,CAAC,CAAC;AACX,CAAC;AASM,KAAK,UAAU,gBAAgB,CAAC,GAAgB,EAAE,MAAyB;IAChF,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IACjE,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC;IAC5B,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;IAEhC,MAAM,EAAE,GAAG,IAAI,0BAAW,EAAE,CAAC;IAC7B,MAAM,YAAY,GAAG,GAAG,CAAC,SAAS,GAAG,gCAAgC,CAAC;IAEtE,EAAE,CAAC,QAAQ,CAAC;QACV,SAAS,EAAE;YACT,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC;YACtB,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;YACrB,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC;YACxB,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC;YACnB,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;SACnB;QACD,MAAM,EAAE,YAAY;KACrB,CAAC,CAAC;IAEH,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAC5B,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAEzB,MAAM,CAAC,GAAG,MAAM,IAAA,mBAAc,EAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,EAAE;QAC1D,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS;QACT,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,UAAU,EAAG,GAAW,CAAC,YAAY;KACtC,CAAC,CAAC;IACH,OAAO,CAAC,CAAC;AACX,CAAC;AASM,KAAK,UAAU,cAAc,CAAC,GAAgB,EAAE,MAA2B;IAChF,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAC/D,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC;IAC5B,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;IAEhC,MAAM,EAAE,GAAG,IAAI,0BAAW,EAAE,CAAC;IAC7B,MAAM,YAAY,GAAG,GAAG,CAAC,SAAS,GAAG,8BAA8B,CAAC;IAEpE,EAAE,CAAC,QAAQ,CAAC;QACV,SAAS,EAAE;YACT,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC;YACtB,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;YACrB,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC;YACxB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;YACjB,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;SACnB;QACD,MAAM,EAAE,YAAY;KACrB,CAAC,CAAC;IAEH,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAC5B,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAEzB,MAAM,CAAC,GAAG,MAAM,IAAA,mBAAc,EAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,EAAE;QAC1D,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS;QACT,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,UAAU,EAAG,GAAW,CAAC,YAAY;KACtC,CAAC,CAAC;IACH,OAAO,CAAC,CAAC;AACX,CAAC"}