@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,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DEFAULT_SHARED_CONFIG_OBJECT_ID = exports.DEFAULT_CONFIG_PACKAGE_IDS = void 0;
4
+ /**
5
+ * Built-in default config package IDs.
6
+ * Override at runtime by passing `configPackageIds` prop to <ObjectID />.
7
+ */
8
+ exports.DEFAULT_CONFIG_PACKAGE_IDS = {
9
+ testnet: "0x7560b5cb2024a3a712ed1e09f4e42ba806b886a44262c9d40ac31fbcfeb30cc0",
10
+ mainnet: "0x6148d3674590634d59f8f972d71dd6148e014dd9c036c048d446853dd80049f4",
11
+ };
12
+ /**
13
+ * Built-in shared DEFAULT Config object ids (oid_config::Config) for each network.
14
+ * These are the shared objects created at publish/init time.
15
+ */
16
+ exports.DEFAULT_SHARED_CONFIG_OBJECT_ID = {
17
+ testnet: "0xf9d3f786ac5ee53f293b87f6800eee852d6e7263d78275377f5d13db04f4be15",
18
+ mainnet: "0x3351d3692783c1b569d6ebe8b0ede46dec51e5688b2892d20b32c0a94414043d",
19
+ };
20
+ //# sourceMappingURL=defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/onchain/defaults.ts"],"names":[],"mappings":";;;AAKA;;;GAGG;AACU,QAAA,0BAA0B,GAAqB;IAC1D,OAAO,EAAE,oEAAoE;IAC7E,OAAO,EAAE,oEAAoE;CAC9E,CAAC;AAEF;;;GAGG;AACU,QAAA,+BAA+B,GAA2B;IACrE,OAAO,EAAE,oEAAoE;IAC7E,OAAO,EAAE,oEAAoE;CAC9E,CAAC"}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getObjectIdsByType = getObjectIdsByType;
4
+ exports.getObject = getObject;
5
+ exports.searchObjectsByTypeAndOwner = searchObjectsByTypeAndOwner;
6
+ const graphql_1 = require("@iota/iota-sdk/graphql");
7
+ const _2025_2_1 = require("@iota/iota-sdk/graphql/schemas/2025.2");
8
+ /**
9
+ * Returns all owned object IDs matching a specific Move type.
10
+ * Paginates through the full owned-objects list for the owner (RPC).
11
+ */
12
+ async function getObjectIdsByType(client, owner, targetType) {
13
+ const found = [];
14
+ let cursor = null;
15
+ for (;;) {
16
+ const page = await client.getOwnedObjects({
17
+ owner,
18
+ cursor,
19
+ options: {
20
+ showType: true,
21
+ showContent: true, // fallback if .type is missing
22
+ },
23
+ });
24
+ const items = page?.data ?? [];
25
+ for (const item of items) {
26
+ const objId = item.data?.objectId;
27
+ if (!objId)
28
+ continue;
29
+ // Fast path
30
+ if (item.data?.type === targetType) {
31
+ found.push(objId);
32
+ continue;
33
+ }
34
+ // Fallback
35
+ const content = item.data?.content;
36
+ if (content?.type === targetType) {
37
+ found.push(objId);
38
+ }
39
+ }
40
+ if (!page?.hasNextPage || !page.nextCursor)
41
+ break;
42
+ cursor = page.nextCursor;
43
+ }
44
+ return found;
45
+ }
46
+ /**
47
+ * Fetches a single object by id (RPC).
48
+ */
49
+ async function getObject(client, id) {
50
+ if (!id)
51
+ return null;
52
+ const { data } = await client.getObject({
53
+ id,
54
+ options: {
55
+ showType: true,
56
+ showOwner: false,
57
+ showPreviousTransaction: false,
58
+ showDisplay: true,
59
+ showContent: true,
60
+ showBcs: true,
61
+ showStorageRebate: false,
62
+ },
63
+ });
64
+ return data ?? null;
65
+ }
66
+ /**
67
+ * Searches Move objects by type AND owner using GraphQL endpoint.
68
+ * Paginates until completion.
69
+ */
70
+ async function searchObjectsByTypeAndOwner(graphqlProvider, objectType, owner) {
71
+ const gqlClient = new graphql_1.IotaGraphQLClient({ url: graphqlProvider });
72
+ const query = (0, _2025_2_1.graphql)(`
73
+ query ObjectsByTypeAndOwner($type: String!, $after: String, $owner: IotaAddress) {
74
+ objects(filter: { type: $type, owner: $owner }, first: 50, after: $after) {
75
+ edges {
76
+ node {
77
+ address
78
+ asMoveObject {
79
+ contents {
80
+ type {
81
+ repr
82
+ }
83
+ data
84
+ }
85
+ }
86
+ }
87
+ }
88
+ pageInfo {
89
+ hasNextPage
90
+ endCursor
91
+ }
92
+ }
93
+ }
94
+ `);
95
+ const edges = [];
96
+ let after = null;
97
+ try {
98
+ for (;;) {
99
+ const res = await gqlClient.query({
100
+ query,
101
+ variables: { type: objectType, after, owner },
102
+ });
103
+ const page = res?.data?.objects;
104
+ if (!page?.edges?.length)
105
+ break;
106
+ edges.push(...page.edges);
107
+ if (!page.pageInfo.hasNextPage || !page.pageInfo.endCursor)
108
+ break;
109
+ after = page.pageInfo.endCursor;
110
+ }
111
+ }
112
+ catch {
113
+ return [];
114
+ }
115
+ return edges;
116
+ }
117
+ //# sourceMappingURL=getObjects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getObjects.js","sourceRoot":"","sources":["../../src/onchain/getObjects.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ let _modP = null;
4
+ async function getIdentityMod() {
5
+ if (_modP)
6
+ return _modP;
7
+ _modP = Promise.resolve().then(() => require("@iota/identity-wasm/web"));
8
+ return _modP;
9
+ }
10
+ //# sourceMappingURL=identity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/onchain/identity.ts"],"names":[],"mappings":";;AAIA,IAAI,KAAK,GAAwB,IAAI,CAAC;AAEtC,KAAK,UAAU,cAAc;IAC3B,IAAI,KAAK;QAAE,OAAO,KAAK,CAAC;IACxB,KAAK,wCAAU,yBAAyB,EAAC,CAAC;IAC1C,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1,3 @@
1
+ {
2
+ "type": "commonjs"
3
+ }
@@ -0,0 +1,437 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ObjectID = ObjectID;
4
+ exports.useOptionalObjectId = useOptionalObjectId;
5
+ exports.useObjectId = useObjectId;
6
+ exports.useObjectIDSession = useObjectIDSession;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const react_1 = require("react");
9
+ const client_1 = require("@iota/iota-sdk/client");
10
+ const ed25519_1 = require("@iota/iota-sdk/keypairs/ed25519");
11
+ const transactions_1 = require("@iota/iota-sdk/transactions");
12
+ const api_1 = require("../api");
13
+ const tx_1 = require("../utils/tx");
14
+ const config_1 = require("../onchain/config");
15
+ const defaults_1 = require("../onchain/defaults");
16
+ const C = (0, react_1.createContext)(undefined);
17
+ function isNonEmptyString(x) {
18
+ return typeof x === "string" && x.trim().length > 0;
19
+ }
20
+ function withTimeout(p, ms = 15_000, label = "operation") {
21
+ return Promise.race([
22
+ p,
23
+ new Promise((_, rej) => setTimeout(() => rej(new Error(`${label} timeout (${ms}ms)`)), ms)),
24
+ ]);
25
+ }
26
+ function cacheKey(network) {
27
+ return `objectid_public_cfg_${network}`;
28
+ }
29
+ function readCachedPublic(network) {
30
+ try {
31
+ const raw = localStorage.getItem(cacheKey(network));
32
+ if (!raw)
33
+ return null;
34
+ const obj = JSON.parse(raw);
35
+ if (!obj || typeof obj !== "object")
36
+ return null;
37
+ if (typeof obj.objectId !== "string" || !obj.objectId)
38
+ return null;
39
+ if (!obj.json || typeof obj.json !== "object")
40
+ return null;
41
+ return { objectId: obj.objectId, json: obj.json };
42
+ }
43
+ catch {
44
+ return null;
45
+ }
46
+ }
47
+ function writeCachedPublic(network, cfg) {
48
+ try {
49
+ localStorage.setItem(cacheKey(network), JSON.stringify({ objectId: cfg.objectId, json: cfg.json }));
50
+ }
51
+ catch {
52
+ // ignore quota / privacy mode
53
+ }
54
+ }
55
+ function mapJsonToProviderConfig(base, j) {
56
+ const objectPackages = j.objectPackages ?? j.object_packages;
57
+ const documentPackages = j.documentPackages ?? j.document_packages;
58
+ if (!Array.isArray(objectPackages) || objectPackages.length === 0) {
59
+ const keys = Object.keys(j ?? {}).join(", ");
60
+ throw new Error(`Missing required field in on-chain config JSON: objectPackages (keys: ${keys})`);
61
+ }
62
+ if (!Array.isArray(documentPackages) || documentPackages.length === 0) {
63
+ const keys = Object.keys(j ?? {}).join(", ");
64
+ throw new Error(`Missing required field in on-chain config JSON: documentPackages (keys: ${keys})`);
65
+ }
66
+ const objectDefaultPackageVersion = j.objectDefaultPackageVersion ?? j.objectDefaultPackageVersione ?? j.object_default_package_version ?? 0;
67
+ const documentDefaultPackageVersion = j.documentDefaultPackageVersion ?? j.documentDefaultPackageVersione ?? j.document_default_package_version ?? 0;
68
+ const graphqlProvider = j.graphqlProvider ?? j.graphql_provider;
69
+ if (!isNonEmptyString(graphqlProvider)) {
70
+ const keys = Object.keys(j ?? {}).join(", ");
71
+ throw new Error(`Missing required field in on-chain config JSON: graphqlProvider (keys: ${keys})`);
72
+ }
73
+ const useGasStation = !!(j.useGasStation ?? j.use_gas_station);
74
+ const gasStation = j.gasStation ?? j.gas_station;
75
+ return {
76
+ network: base.network,
77
+ seed: base.seed,
78
+ gasBudget: base.gasBudget,
79
+ graphqlProvider: String(graphqlProvider),
80
+ objectPackages,
81
+ documentPackages,
82
+ objectDefaultPackageVersion: Number(objectDefaultPackageVersion) || 0,
83
+ documentDefaultPackageVersion: Number(documentDefaultPackageVersion) || 0,
84
+ useGasStation,
85
+ gasStation: gasStation && typeof gasStation === "object" ? gasStation : undefined,
86
+ };
87
+ }
88
+ function hexToU8a(hex) {
89
+ const s = String(hex || "")
90
+ .trim()
91
+ .replace(/^0x/i, "");
92
+ if (!s)
93
+ throw new Error("Missing seed");
94
+ if (s.length % 2 !== 0)
95
+ throw new Error("Seed hex length must be even");
96
+ const bytes = new Uint8Array(s.length / 2);
97
+ for (let i = 0; i < bytes.length; i++) {
98
+ const byte = s.slice(i * 2, i * 2 + 2);
99
+ const v = Number.parseInt(byte, 16);
100
+ if (Number.isNaN(v))
101
+ throw new Error("Invalid seed hex");
102
+ bytes[i] = v;
103
+ }
104
+ return bytes;
105
+ }
106
+ function ObjectID({ configPackageIds, children }) {
107
+ const effectiveConfigPackageIds = configPackageIds ?? defaults_1.DEFAULT_CONFIG_PACKAGE_IDS;
108
+ const [selectedNetwork, setSelectedNetwork] = (0, react_1.useState)("testnet");
109
+ const [session, setSession] = (0, react_1.useState)(null);
110
+ const [publicConfig, setPublicConfig] = (0, react_1.useState)(null);
111
+ const [activeConfig, setActiveConfig] = (0, react_1.useState)(null);
112
+ const [api, setApi] = (0, react_1.useState)(null);
113
+ const [status, setStatus] = (0, react_1.useState)("idle");
114
+ const [error, setError] = (0, react_1.useState)(null);
115
+ const clientsRef = (0, react_1.useRef)({});
116
+ const getClientForNetwork = (0, react_1.useCallback)((net) => {
117
+ const key = String(net);
118
+ if (!clientsRef.current[key]) {
119
+ clientsRef.current[key] = new client_1.IotaClient({ url: (0, client_1.getFullnodeUrl)(net) });
120
+ }
121
+ return clientsRef.current[key];
122
+ }, []);
123
+ // Load public config at startup (selectedNetwork defaults to testnet).
124
+ // Uses localStorage cache to avoid blocking reloads; refreshes in background.
125
+ (0, react_1.useEffect)(() => {
126
+ let cancelled = false;
127
+ const net = selectedNetwork;
128
+ // 1) Fast path: cached public config
129
+ const cached = readCachedPublic(net);
130
+ if (cached) {
131
+ setPublicConfig({ source: "default", objectId: cached.objectId, json: cached.json });
132
+ setActiveConfig({ source: "default", objectId: cached.objectId, json: cached.json });
133
+ setStatus("ready");
134
+ setError(null);
135
+ }
136
+ else {
137
+ setStatus("loading");
138
+ setError(null);
139
+ }
140
+ // 2) Refresh from chain (always), but never leave infinite loading
141
+ (async () => {
142
+ try {
143
+ const cfg = await withTimeout((0, config_1.loadPublicConfig)(net), 15_000, `loadPublicConfig(${net})`);
144
+ if (cancelled)
145
+ return;
146
+ setPublicConfig(cfg);
147
+ setActiveConfig((prev) => {
148
+ // if active is public OR nothing yet, update active too; if active is object, keep it
149
+ if (!prev || prev.source === "default")
150
+ return { ...cfg, source: "default" };
151
+ return prev;
152
+ });
153
+ writeCachedPublic(net, { objectId: cfg.objectId, json: cfg.json });
154
+ // If we were loading with no cache, mark ready now.
155
+ setStatus("ready");
156
+ setError(null);
157
+ }
158
+ catch (e) {
159
+ if (cancelled)
160
+ return;
161
+ // If we already had cache, keep ready and show no blocking error.
162
+ // If we had no cache and were loading, move to error (not infinite loading).
163
+ setStatus(cached ? "ready" : "error");
164
+ setError(e?.message ?? String(e));
165
+ }
166
+ })();
167
+ return () => {
168
+ cancelled = true;
169
+ };
170
+ // eslint-disable-next-line react-hooks/exhaustive-deps
171
+ }, [selectedNetwork]);
172
+ const buildApi = (0, react_1.useCallback)((sess, cfgJson) => {
173
+ const gasBudget = Number(sess.gasBudget ?? 10_000_000);
174
+ const providerCfg = mapJsonToProviderConfig({ network: sess.network, seed: sess.seed, gasBudget }, cfgJson);
175
+ return (0, api_1.createObjectIdApi)(providerCfg);
176
+ }, []);
177
+ const selectNetwork = (0, react_1.useCallback)(async (network) => {
178
+ setStatus("loading");
179
+ setError(null);
180
+ try {
181
+ const cfg = await (0, config_1.loadPublicConfig)(network);
182
+ setSelectedNetwork(network);
183
+ setPublicConfig(cfg);
184
+ setActiveConfig({ ...cfg, source: "default" });
185
+ // If already connected, rebuild API using PUBLIC config for the chosen network
186
+ if (session) {
187
+ const nextSession = { ...session, network };
188
+ setSession(nextSession);
189
+ const nextApi = buildApi(nextSession, cfg.json);
190
+ setApi(nextApi);
191
+ }
192
+ setStatus("ready");
193
+ }
194
+ catch (e) {
195
+ setStatus("error");
196
+ setError(e?.message ?? String(e));
197
+ throw e;
198
+ }
199
+ }, [buildApi, session]);
200
+ const connect = (0, react_1.useCallback)(async (sess) => {
201
+ setStatus("loading");
202
+ setError(null);
203
+ try {
204
+ // Always start from PUBLIC config for chosen network (no auto private cfg)
205
+ const cfg = await (0, config_1.loadPublicConfig)(sess.network);
206
+ setSelectedNetwork(sess.network);
207
+ setSession(sess);
208
+ setPublicConfig(cfg);
209
+ setActiveConfig({ ...cfg, source: "default" });
210
+ const finalApi = buildApi(sess, cfg.json);
211
+ setApi(finalApi);
212
+ setStatus("ready");
213
+ }
214
+ catch (e) {
215
+ setApi(null);
216
+ setSession(null);
217
+ setPublicConfig(null);
218
+ setActiveConfig(null);
219
+ setStatus("error");
220
+ setError(e?.message ?? String(e));
221
+ throw e;
222
+ }
223
+ }, [buildApi]);
224
+ const disconnect = (0, react_1.useCallback)(async () => {
225
+ setStatus("loading");
226
+ setError(null);
227
+ try {
228
+ setApi(null);
229
+ setSession(null);
230
+ // Reset to testnet public config
231
+ const cfg = await (0, config_1.loadPublicConfig)("testnet");
232
+ setSelectedNetwork("testnet");
233
+ setPublicConfig(cfg);
234
+ setActiveConfig({ ...cfg, source: "default" });
235
+ setStatus("ready");
236
+ }
237
+ catch (e) {
238
+ setStatus("error");
239
+ setError(e?.message ?? String(e));
240
+ throw e;
241
+ }
242
+ }, []);
243
+ const refreshPublicConfig = (0, react_1.useCallback)(async () => {
244
+ setStatus("loading");
245
+ setError(null);
246
+ try {
247
+ const cfg = await (0, config_1.loadPublicConfig)(selectedNetwork);
248
+ setPublicConfig(cfg);
249
+ // If active is public, refresh active too.
250
+ setActiveConfig((prev) => {
251
+ if (!prev || prev.source === "default")
252
+ return { ...cfg, source: "default" };
253
+ return prev;
254
+ });
255
+ // If connected and active is public, rebuild api.
256
+ if (session) {
257
+ setApi((prevApi) => {
258
+ if (!prevApi)
259
+ return buildApi(session, cfg.json);
260
+ // if active is public, we rebuild; if active is object, keep current api.
261
+ if (!activeConfig || activeConfig.source === "default")
262
+ return buildApi(session, cfg.json);
263
+ return prevApi;
264
+ });
265
+ }
266
+ setStatus("ready");
267
+ }
268
+ catch (e) {
269
+ setStatus("error");
270
+ setError(e?.message ?? String(e));
271
+ throw e;
272
+ }
273
+ }, [activeConfig, buildApi, selectedNetwork, session]);
274
+ const usePublicConfig = (0, react_1.useCallback)(async () => {
275
+ setStatus("loading");
276
+ setError(null);
277
+ try {
278
+ const cfg = publicConfig ?? (await (0, config_1.loadPublicConfig)(selectedNetwork));
279
+ setPublicConfig(cfg);
280
+ setActiveConfig({ ...cfg, source: "default" });
281
+ if (session) {
282
+ const nextApi = buildApi(session, cfg.json);
283
+ setApi(nextApi);
284
+ }
285
+ else {
286
+ setApi(null);
287
+ }
288
+ setStatus("ready");
289
+ }
290
+ catch (e) {
291
+ setStatus("error");
292
+ setError(e?.message ?? String(e));
293
+ throw e;
294
+ }
295
+ }, [buildApi, publicConfig, selectedNetwork, session]);
296
+ const applyCfg = (0, react_1.useCallback)(async (json) => {
297
+ if (!session)
298
+ throw new Error("Not connected");
299
+ const cfgPkg = session.network === "mainnet" ? effectiveConfigPackageIds.mainnet : effectiveConfigPackageIds.testnet;
300
+ if (!cfgPkg)
301
+ throw new Error(`Missing config packageId for network=${session.network}`);
302
+ setStatus("loading");
303
+ setError(null);
304
+ try {
305
+ const s = JSON.stringify(json);
306
+ const bytes = Array.from(new TextEncoder().encode(s));
307
+ const keyPair = ed25519_1.Ed25519Keypair.deriveKeypairFromSeed(session.seed);
308
+ const client = new client_1.IotaClient({ url: (0, client_1.getFullnodeUrl)(session.network) });
309
+ const sender = keyPair.toIotaAddress();
310
+ const tx = new transactions_1.Transaction();
311
+ tx.moveCall({
312
+ target: `${cfgPkg}::oid_config::create_user_config`,
313
+ arguments: [tx.pure.vector("u8", bytes)],
314
+ });
315
+ const gasBudget = Number(session.gasBudget ?? 10_000_000);
316
+ tx.setGasBudget(gasBudget);
317
+ tx.setSender(sender);
318
+ const useGasStation = !!(json.useGasStation ?? json.use_gas_station);
319
+ const gasStation = (json.gasStation ?? json.gas_station);
320
+ const r = await (0, tx_1.signAndExecute)(client, keyPair, tx, {
321
+ network: String(session.network),
322
+ gasBudget,
323
+ useGasStation,
324
+ gasStation,
325
+ });
326
+ if (!r.success) {
327
+ throw new Error(`create_user_config failed: ${String(r.error ?? "")}`);
328
+ }
329
+ const createdId = r.txEffect?.effects?.created?.[0]?.reference?.objectId ||
330
+ r.txEffect?.effects?.created?.[0]?.objectId ||
331
+ r?.createdObjectId;
332
+ if (!createdId) {
333
+ throw new Error("create_user_config succeeded but cannot extract created objectId from tx effects");
334
+ }
335
+ // Activate this config and rebuild api
336
+ setActiveConfig({ source: "object", objectId: String(createdId), json });
337
+ const nextApi = buildApi(session, json);
338
+ setApi(nextApi);
339
+ setStatus("ready");
340
+ return String(createdId);
341
+ }
342
+ catch (e) {
343
+ setStatus("error");
344
+ setError(e?.message ?? String(e));
345
+ throw e;
346
+ }
347
+ }, [buildApi, effectiveConfigPackageIds, session]);
348
+ const applyCfgObject = (0, react_1.useCallback)(async (objectId) => {
349
+ setStatus("loading");
350
+ setError(null);
351
+ try {
352
+ const net = session?.network ?? selectedNetwork;
353
+ const json = await (0, config_1.loadConfigJsonByObjectId)(net, objectId);
354
+ setActiveConfig({ source: "object", objectId: String(objectId), json });
355
+ if (session) {
356
+ const nextApi = buildApi(session, json);
357
+ setApi(nextApi);
358
+ }
359
+ setStatus("ready");
360
+ return String(objectId);
361
+ }
362
+ catch (e) {
363
+ setStatus("error");
364
+ setError(e?.message ?? String(e));
365
+ throw e;
366
+ }
367
+ }, [buildApi, selectedNetwork, session]);
368
+ const getCfgJsonForNet = (0, react_1.useCallback)(async (net) => {
369
+ // Se connesso e la rete combacia, usa active/public già in memoria
370
+ if (session?.network === net) {
371
+ const j = activeConfig?.json ?? publicConfig?.json;
372
+ if (j)
373
+ return j;
374
+ }
375
+ // Se non connesso (o rete diversa), usa cache localStorage per quella rete
376
+ const cached = readCachedPublic(net);
377
+ if (cached?.json)
378
+ return cached.json;
379
+ // Fallback: carica on-chain e aggiorna cache
380
+ const cfg = await (0, config_1.loadPublicConfig)(net);
381
+ writeCachedPublic(net, { objectId: cfg.objectId, json: cfg.json });
382
+ return cfg.json;
383
+ }, [activeConfig, publicConfig, session]);
384
+ const value = (0, react_1.useMemo)(() => ({
385
+ api,
386
+ session,
387
+ publicConfig,
388
+ activeConfig,
389
+ status,
390
+ error,
391
+ selectedNetwork,
392
+ selectNetwork,
393
+ connect,
394
+ disconnect,
395
+ refreshPublicConfig,
396
+ usePublicConfig,
397
+ applyCfg,
398
+ applyCfgObject,
399
+ }), [
400
+ api,
401
+ session,
402
+ publicConfig,
403
+ activeConfig,
404
+ status,
405
+ error,
406
+ selectedNetwork,
407
+ selectNetwork,
408
+ connect,
409
+ disconnect,
410
+ refreshPublicConfig,
411
+ usePublicConfig,
412
+ applyCfg,
413
+ applyCfgObject,
414
+ ]);
415
+ return (0, jsx_runtime_1.jsx)(C.Provider, { value: value, children: children });
416
+ }
417
+ function useOptionalObjectId() {
418
+ const ctx = (0, react_1.useContext)(C);
419
+ if (!ctx)
420
+ throw new Error("useOptionalObjectId must be used within ObjectID");
421
+ return ctx.api;
422
+ }
423
+ function useObjectId() {
424
+ const ctx = (0, react_1.useContext)(C);
425
+ if (!ctx)
426
+ throw new Error("useObjectId must be used within ObjectID");
427
+ if (!ctx.api)
428
+ throw new Error("ObjectID API not initialized. Call connect({network, seed}) first.");
429
+ return ctx.api;
430
+ }
431
+ function useObjectIDSession() {
432
+ const ctx = (0, react_1.useContext)(C);
433
+ if (!ctx)
434
+ throw new Error("useObjectIDSession must be used within ObjectID");
435
+ return ctx;
436
+ }
437
+ //# sourceMappingURL=ObjectIdProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObjectIdProvider.js","sourceRoot":"","sources":["../../src/react/ObjectIdProvider.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useObjectIDSession = exports.useOptionalObjectId = exports.useObjectId = exports.ObjectID = void 0;
4
+ var ObjectIdProvider_1 = require("./ObjectIdProvider");
5
+ Object.defineProperty(exports, "ObjectID", { enumerable: true, get: function () { return ObjectIdProvider_1.ObjectID; } });
6
+ var ObjectIdProvider_2 = require("./ObjectIdProvider");
7
+ Object.defineProperty(exports, "useObjectId", { enumerable: true, get: function () { return ObjectIdProvider_2.useObjectId; } });
8
+ Object.defineProperty(exports, "useOptionalObjectId", { enumerable: true, get: function () { return ObjectIdProvider_2.useOptionalObjectId; } });
9
+ Object.defineProperty(exports, "useObjectIDSession", { enumerable: true, get: function () { return ObjectIdProvider_2.useObjectIDSession; } });
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/react/index.ts"],"names":[],"mappings":";;;AAAA,uDAA8C;AAArC,4GAAA,QAAQ,OAAA;AAEjB,uDAA0F;AAAjF,+GAAA,WAAW,OAAA;AAAE,uHAAA,mBAAmB,OAAA;AAAE,sHAAA,kBAAkB,OAAA"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=documentData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentData.js","sourceRoot":"","sources":["../../src/types/documentData.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=objectData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"objectData.js","sourceRoot":"","sources":["../../src/types/objectData.ts"],"names":[],"mappings":""}