@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,305 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.create_object = create_object;
4
+ exports.delete_object = delete_object;
5
+ exports.update_agent_did = update_agent_did;
6
+ exports.update_geo_location = update_geo_location;
7
+ exports.update_geolocation = update_geolocation;
8
+ exports.update_object = update_object;
9
+ exports.update_object_did = update_object_did;
10
+ exports.update_object_mutable_metadata = update_object_mutable_metadata;
11
+ exports.update_op_code = update_op_code;
12
+ exports.update_owner_did = update_owner_did;
13
+ const transactions_1 = require("@iota/iota-sdk/transactions");
14
+ const utils_1 = require("@iota/iota-sdk/utils");
15
+ const env_1 = require("../env");
16
+ const tx_1 = require("../utils/tx");
17
+ const url_1 = require("../utils/url");
18
+ async function create_object(api, params) {
19
+ const { creditToken, OIDcontrollerCap, object_type, product_url, product_img_url, description, op_code, immutable_metadata, mutable_metadata, geo_location, } = params;
20
+ const env = await api.env();
21
+ const gasBudget = api.gasBudget;
22
+ // IMPORTANT: Move checks prefixes using std::string::substring with the on-chain linked_domain length.
23
+ // If the client passes a bare URL origin like "https://example.com" while linked_domain is stored as
24
+ // "https://example.com/", substring will abort with out-of-bounds.
25
+ const safeProductUrl = (0, url_1.ensureTrailingSlashForOriginOnly)(product_url);
26
+ const tx = new transactions_1.Transaction();
27
+ const moveFunction = env.packageID + "::oid_object::create_object";
28
+ tx.moveCall({
29
+ arguments: [
30
+ tx.object(creditToken),
31
+ tx.object(env.policy),
32
+ tx.object(OIDcontrollerCap),
33
+ tx.pure.string(String(object_type ?? "")),
34
+ tx.pure.string(String(safeProductUrl ?? "")),
35
+ tx.pure.string(String(product_img_url ?? "")),
36
+ tx.pure.string(String(description ?? "")),
37
+ tx.pure.string(String(op_code ?? "")),
38
+ tx.pure.string((0, env_1.asJsonString)(immutable_metadata)),
39
+ tx.pure.string((0, env_1.asJsonString)(mutable_metadata)),
40
+ tx.pure.string(String(geo_location ?? "")),
41
+ tx.object("0x6"),
42
+ ],
43
+ target: moveFunction,
44
+ });
45
+ tx.setGasBudget(10_000_000);
46
+ tx.setSender(env.sender);
47
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
48
+ network: env.network,
49
+ gasBudget,
50
+ useGasStation: api.useGasStation,
51
+ gasStation: api.gasStation,
52
+ onExecuted: api.onTxExecuted,
53
+ });
54
+ if (r?.success)
55
+ r.createdObjectId = r.txEffect?.effects?.created?.[0]?.reference?.objectId;
56
+ return r;
57
+ }
58
+ async function delete_object(api, params) {
59
+ const { creditToken, controllerCap, object } = params;
60
+ const env = await api.env();
61
+ const gasBudget = api.gasBudget;
62
+ const tx = new transactions_1.Transaction();
63
+ const moveFunction = env.packageID + "::oid_object::delete_object";
64
+ tx.moveCall({
65
+ arguments: [tx.object(creditToken), tx.object(env.policy), tx.object(controllerCap), tx.object(object)],
66
+ target: moveFunction,
67
+ });
68
+ tx.setGasBudget(10_000_000);
69
+ tx.setSender(env.sender);
70
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
71
+ network: env.network,
72
+ gasBudget,
73
+ useGasStation: api.useGasStation,
74
+ gasStation: api.gasStation,
75
+ onExecuted: api.onTxExecuted,
76
+ });
77
+ return r;
78
+ }
79
+ async function update_agent_did(api, params) {
80
+ const { creditToken, controllerCap, object, new_agent_did } = params;
81
+ const env = await api.env();
82
+ const gasBudget = api.gasBudget;
83
+ const tx = new transactions_1.Transaction();
84
+ const moveFunction = env.packageID + "::oid_object::update_agent_did";
85
+ tx.moveCall({
86
+ arguments: [
87
+ tx.object(creditToken),
88
+ tx.object(env.policy),
89
+ tx.object(controllerCap),
90
+ tx.object(object),
91
+ tx.pure.string(String(new_agent_did ?? "")),
92
+ tx.object("0x6"),
93
+ ],
94
+ target: moveFunction,
95
+ });
96
+ tx.setGasBudget(10_000_000);
97
+ tx.setSender(env.sender);
98
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
99
+ network: env.network,
100
+ gasBudget,
101
+ useGasStation: api.useGasStation,
102
+ gasStation: api.gasStation,
103
+ onExecuted: api.onTxExecuted,
104
+ });
105
+ return r;
106
+ }
107
+ async function update_geo_location(api, params) {
108
+ const { creditToken, controllerCap, object, new_location } = params;
109
+ const env = await api.env();
110
+ const gasBudget = api.gasBudget;
111
+ const tx = new transactions_1.Transaction();
112
+ const moveFunction = env.packageID + "::oid_object::update_geolocation";
113
+ tx.moveCall({
114
+ arguments: [
115
+ tx.object(creditToken),
116
+ tx.object(env.policy),
117
+ tx.object(controllerCap),
118
+ tx.object(object),
119
+ tx.pure.string(String(new_location ?? "")),
120
+ tx.object(utils_1.IOTA_CLOCK_OBJECT_ID),
121
+ ],
122
+ target: moveFunction,
123
+ });
124
+ tx.setGasBudget(10_000_000);
125
+ tx.setSender(env.sender);
126
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
127
+ network: env.network,
128
+ gasBudget,
129
+ useGasStation: api.useGasStation,
130
+ gasStation: api.gasStation,
131
+ onExecuted: api.onTxExecuted,
132
+ });
133
+ return r;
134
+ }
135
+ // Back-compat alias (same Move target)
136
+ async function update_geolocation(api, params) {
137
+ const { creditToken, controllerCap, object, new_location } = params;
138
+ const env = await api.env();
139
+ const gasBudget = api.gasBudget;
140
+ const tx = new transactions_1.Transaction();
141
+ const moveFunction = env.packageID + "::oid_object::update_geolocation";
142
+ tx.moveCall({
143
+ arguments: [
144
+ tx.object(creditToken),
145
+ tx.object(env.policy),
146
+ tx.object(controllerCap),
147
+ tx.object(object),
148
+ tx.pure.string(String(new_location ?? "")),
149
+ tx.object("0x6"),
150
+ ],
151
+ target: moveFunction,
152
+ });
153
+ tx.setGasBudget(10_000_000);
154
+ tx.setSender(env.sender);
155
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
156
+ network: env.network,
157
+ gasBudget,
158
+ useGasStation: api.useGasStation,
159
+ gasStation: api.gasStation,
160
+ onExecuted: api.onTxExecuted,
161
+ });
162
+ return r;
163
+ }
164
+ async function update_object(api, params) {
165
+ const { creditToken, controllerCap, object, new_product_img_url, new_description } = params;
166
+ const env = await api.env();
167
+ const gasBudget = api.gasBudget;
168
+ const tx = new transactions_1.Transaction();
169
+ const moveFunction = env.packageID + "::oid_object::update_object";
170
+ tx.moveCall({
171
+ arguments: [
172
+ tx.object(creditToken),
173
+ tx.object(env.policy),
174
+ tx.object(controllerCap),
175
+ tx.object(object),
176
+ tx.pure.string(String(new_product_img_url ?? "")),
177
+ tx.pure.string(String(new_description ?? "")),
178
+ tx.object("0x6"),
179
+ ],
180
+ target: moveFunction,
181
+ });
182
+ tx.setGasBudget(10_000_000);
183
+ tx.setSender(env.sender);
184
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
185
+ network: env.network,
186
+ gasBudget,
187
+ useGasStation: api.useGasStation,
188
+ gasStation: api.gasStation,
189
+ onExecuted: api.onTxExecuted,
190
+ });
191
+ return r;
192
+ }
193
+ async function update_object_did(api, params) {
194
+ const { creditToken, controllerCap, object, new_object_did } = params;
195
+ const env = await api.env();
196
+ const gasBudget = api.gasBudget;
197
+ const tx = new transactions_1.Transaction();
198
+ const moveFunction = env.packageID + "::oid_object::update_object_did";
199
+ tx.moveCall({
200
+ arguments: [
201
+ tx.object(creditToken),
202
+ tx.object(env.policy),
203
+ tx.object(controllerCap),
204
+ tx.object(object),
205
+ tx.pure.string(String(new_object_did ?? "")),
206
+ tx.object("0x6"),
207
+ ],
208
+ target: moveFunction,
209
+ });
210
+ tx.setGasBudget(10_000_000);
211
+ tx.setSender(env.sender);
212
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
213
+ network: env.network,
214
+ gasBudget,
215
+ useGasStation: api.useGasStation,
216
+ gasStation: api.gasStation,
217
+ onExecuted: api.onTxExecuted,
218
+ });
219
+ return r;
220
+ }
221
+ async function update_object_mutable_metadata(api, params) {
222
+ const { creditToken, controllerCap, object, new_mutable_metadata } = params;
223
+ const env = await api.env();
224
+ const gasBudget = api.gasBudget;
225
+ const tx = new transactions_1.Transaction();
226
+ const moveFunction = env.packageID + "::oid_object::update_object_mutable_metadata";
227
+ tx.moveCall({
228
+ arguments: [
229
+ tx.object(creditToken),
230
+ tx.object(env.policy),
231
+ tx.object(controllerCap),
232
+ tx.object(object),
233
+ tx.pure.string((0, env_1.asJsonString)(new_mutable_metadata)),
234
+ tx.object(utils_1.IOTA_CLOCK_OBJECT_ID),
235
+ ],
236
+ target: moveFunction,
237
+ });
238
+ tx.setGasBudget(10_000_000);
239
+ tx.setSender(env.sender);
240
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
241
+ network: env.network,
242
+ gasBudget,
243
+ useGasStation: api.useGasStation,
244
+ gasStation: api.gasStation,
245
+ onExecuted: api.onTxExecuted,
246
+ });
247
+ return r;
248
+ }
249
+ async function update_op_code(api, params) {
250
+ const { creditToken, controllerCap, object, new_op_code } = params;
251
+ const env = await api.env();
252
+ const gasBudget = api.gasBudget;
253
+ const tx = new transactions_1.Transaction();
254
+ const moveFunction = env.packageID + "::oid_object::update_op_code";
255
+ tx.moveCall({
256
+ arguments: [
257
+ tx.object(creditToken),
258
+ tx.object(env.policy),
259
+ tx.object(controllerCap),
260
+ tx.object(object),
261
+ tx.pure.string(String(new_op_code ?? "")),
262
+ tx.object("0x6"),
263
+ ],
264
+ target: moveFunction,
265
+ });
266
+ tx.setGasBudget(10_000_000);
267
+ tx.setSender(env.sender);
268
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
269
+ network: env.network,
270
+ gasBudget,
271
+ useGasStation: api.useGasStation,
272
+ gasStation: api.gasStation,
273
+ onExecuted: api.onTxExecuted,
274
+ });
275
+ return r;
276
+ }
277
+ async function update_owner_did(api, params) {
278
+ const { creditToken, controllerCap, object, new_owner_did } = params;
279
+ const env = await api.env();
280
+ const gasBudget = api.gasBudget;
281
+ const tx = new transactions_1.Transaction();
282
+ const moveFunction = env.packageID + "::oid_object::update_owner_did";
283
+ tx.moveCall({
284
+ arguments: [
285
+ tx.object(creditToken),
286
+ tx.object(env.policy),
287
+ tx.object(controllerCap),
288
+ tx.object(object),
289
+ tx.pure.string(String(new_owner_did ?? "")),
290
+ tx.object("0x6"),
291
+ ],
292
+ target: moveFunction,
293
+ });
294
+ tx.setGasBudget(10_000_000);
295
+ tx.setSender(env.sender);
296
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
297
+ network: env.network,
298
+ gasBudget,
299
+ useGasStation: api.useGasStation,
300
+ gasStation: api.gasStation,
301
+ onExecuted: api.onTxExecuted,
302
+ });
303
+ return r;
304
+ }
305
+ //# sourceMappingURL=object.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object.js","sourceRoot":"","sources":["../../src/methods/object.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,151 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.alert_message = alert_message;
4
+ exports.anonymous_message = anonymous_message;
5
+ exports.control_message = control_message;
6
+ exports.creator_message = creator_message;
7
+ exports.message = message;
8
+ const transactions_1 = require("@iota/iota-sdk/transactions");
9
+ const tx_1 = require("../utils/tx");
10
+ async function alert_message(api, params) {
11
+ const { creditToken, controllerCap, object, message, message_code, geolocation, link } = params;
12
+ const env = await api.env();
13
+ const gasBudget = api.gasBudget;
14
+ const tx = new transactions_1.Transaction();
15
+ const moveFunction = env.packageID + "::oid_object::alert_message";
16
+ tx.moveCall({
17
+ arguments: [
18
+ tx.object(creditToken),
19
+ tx.object(env.policy),
20
+ tx.object(controllerCap),
21
+ tx.object(object),
22
+ tx.pure.string(String(message ?? "")),
23
+ tx.pure.u16(Number(message_code)),
24
+ tx.pure.string(String(geolocation ?? "")),
25
+ tx.pure.string(String(link ?? "")),
26
+ ],
27
+ target: moveFunction,
28
+ });
29
+ tx.setGasBudget(10_000_000);
30
+ tx.setSender(env.sender);
31
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
32
+ network: env.network,
33
+ gasBudget,
34
+ useGasStation: api.useGasStation,
35
+ gasStation: api.gasStation,
36
+ onExecuted: api.onTxExecuted,
37
+ });
38
+ return r;
39
+ }
40
+ async function anonymous_message(api, params) {
41
+ const { object, geolocation } = params;
42
+ const env = await api.env();
43
+ const gasBudget = api.gasBudget;
44
+ const tx = new transactions_1.Transaction();
45
+ const moveFunction = env.packageID + "::oid_object::anonymous_message";
46
+ tx.moveCall({
47
+ arguments: [tx.object(object), tx.pure.string(String(geolocation ?? ""))],
48
+ target: moveFunction,
49
+ });
50
+ tx.setGasBudget(10_000_000);
51
+ tx.setSender(env.sender);
52
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
53
+ network: env.network,
54
+ gasBudget,
55
+ useGasStation: api.useGasStation,
56
+ gasStation: api.gasStation,
57
+ onExecuted: api.onTxExecuted,
58
+ });
59
+ return r;
60
+ }
61
+ async function control_message(api, params) {
62
+ const { creditToken, controllerCap, object, message, message_code, geolocation, link } = params;
63
+ const env = await api.env();
64
+ const gasBudget = api.gasBudget;
65
+ const tx = new transactions_1.Transaction();
66
+ const moveFunction = env.packageID + "::oid_object::control_message";
67
+ tx.moveCall({
68
+ arguments: [
69
+ tx.object(creditToken),
70
+ tx.object(env.policy),
71
+ tx.object(controllerCap),
72
+ tx.object(object),
73
+ tx.pure.string(String(message ?? "")),
74
+ tx.pure.u16(Number(message_code)),
75
+ tx.pure.string(String(geolocation ?? "")),
76
+ tx.pure.string(String(link ?? "")),
77
+ ],
78
+ target: moveFunction,
79
+ });
80
+ tx.setGasBudget(10_000_000);
81
+ tx.setSender(env.sender);
82
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
83
+ network: env.network,
84
+ gasBudget,
85
+ useGasStation: api.useGasStation,
86
+ gasStation: api.gasStation,
87
+ onExecuted: api.onTxExecuted,
88
+ });
89
+ return r;
90
+ }
91
+ async function creator_message(api, params) {
92
+ const { creditToken, controllerCap, object, message, message_code, geolocation, link } = params;
93
+ const env = await api.env();
94
+ const gasBudget = api.gasBudget;
95
+ const tx = new transactions_1.Transaction();
96
+ const moveFunction = env.packageID + "::oid_object::creator_message";
97
+ tx.moveCall({
98
+ arguments: [
99
+ tx.object(creditToken),
100
+ tx.object(env.policy),
101
+ tx.object(controllerCap),
102
+ tx.object(object),
103
+ tx.pure.string(String(message ?? "")),
104
+ tx.pure.u16(Number(message_code)),
105
+ tx.pure.string(String(geolocation ?? "")),
106
+ tx.pure.string(String(link ?? "")),
107
+ ],
108
+ target: moveFunction,
109
+ });
110
+ tx.setGasBudget(10_000_000);
111
+ tx.setSender(env.sender);
112
+ const r = await (0, tx_1.signAndExecute)(env.client, env.keyPair, tx, {
113
+ network: env.network,
114
+ gasBudget,
115
+ useGasStation: api.useGasStation,
116
+ gasStation: api.gasStation,
117
+ onExecuted: api.onTxExecuted,
118
+ });
119
+ return r;
120
+ }
121
+ async function message(api, params) {
122
+ const { creditToken, controllerCap, object, message_code, message, geolocation, link } = params;
123
+ const env = await api.env();
124
+ const gasBudget = api.gasBudget;
125
+ const tx = new transactions_1.Transaction();
126
+ const moveFunction = env.packageID + "::oid_object::message";
127
+ tx.moveCall({
128
+ arguments: [
129
+ tx.object(creditToken),
130
+ tx.object(env.policy),
131
+ tx.object(controllerCap),
132
+ tx.object(object),
133
+ tx.pure.u16(Number(message_code)),
134
+ tx.pure.string(String(message ?? "")),
135
+ tx.pure.string(String(geolocation ?? "")),
136
+ tx.pure.string(String(link ?? "")),
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=objectMessages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"objectMessages.js","sourceRoot":"","sources":["../../src/methods/objectMessages.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
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
+ __exportStar(require("./methods/index"), exports);
18
+ //# sourceMappingURL=methods.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"methods.js","sourceRoot":"","sources":["../src/methods.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC"}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.normalizeHex = normalizeHex;
4
+ exports.pickCapMatchingDid = pickCapMatchingDid;
5
+ const getObject_1 = require("../utils/getObject");
6
+ function normalizeHex(s) {
7
+ const t = (s ?? "").trim();
8
+ if (!t)
9
+ return t;
10
+ return t.startsWith("0x") ? t.toLowerCase() : ("0x" + t).toLowerCase();
11
+ }
12
+ function parseDidAliasId(did) {
13
+ const s = (did ?? "").trim();
14
+ if (!s)
15
+ return null;
16
+ // did:iota:testnet:0xabc... OR did:iota:0xabc...
17
+ const parts = s.split(":");
18
+ const last = parts[parts.length - 1];
19
+ if (!last)
20
+ return null;
21
+ if (last.startsWith("0x") || /^[0-9a-fA-F]+$/.test(last))
22
+ return normalizeHex(last);
23
+ return null;
24
+ }
25
+ /**
26
+ * Deterministically pick the ControllerCap owned by `address` that matches the provided DID.
27
+ * If multiple caps match, chooses the highest on-chain version (tie-break by objectId).
28
+ */
29
+ async function pickCapMatchingDid(client, capIds, did) {
30
+ if (!capIds.length)
31
+ return undefined;
32
+ const identityId = parseDidAliasId(did);
33
+ if (!identityId)
34
+ throw new Error("Invalid DID: missing identity id");
35
+ const matches = [];
36
+ for (const id of capIds) {
37
+ const obj = await (0, getObject_1.getObject)(client, id);
38
+ // Deterministic link: ControllerCap.fields.controller_of == DID identity id (aliasId)
39
+ const direct = obj?.content?.fields?.controller_of;
40
+ const nested = obj?.content?.fields?.access_token?.fields?.value?.fields?.controller_of; // IOTA Identity (optional path)
41
+ const controllerOf = normalizeHex(String(direct ?? nested ?? ""));
42
+ if (controllerOf && controllerOf === identityId) {
43
+ const vRaw = obj?.version;
44
+ let v = 0n;
45
+ try {
46
+ if (typeof vRaw === "string" && vRaw)
47
+ v = BigInt(vRaw);
48
+ else if (typeof vRaw === "number")
49
+ v = BigInt(vRaw);
50
+ }
51
+ catch {
52
+ v = 0n;
53
+ }
54
+ matches.push({ id, version: v });
55
+ }
56
+ }
57
+ if (matches.length === 0) {
58
+ // If user owns caps but none match the provided DID, do not guess.
59
+ throw new Error(`ControllerCap for DID not found in owned objects (did=${did})`);
60
+ }
61
+ // If multiple caps match, choose deterministically (highest on-chain version, tie-break by objectId).
62
+ matches.sort((a, b) => (a.version === b.version ? a.id.localeCompare(b.id) : a.version > b.version ? -1 : 1));
63
+ return matches[0].id;
64
+ }
65
+ //# sourceMappingURL=caps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"caps.js","sourceRoot":"","sources":["../../src/oid/caps.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractBalance = extractBalance;
4
+ /**
5
+ * Best-effort extraction of a token balance from a Move object.
6
+ * Handles common shapes and falls back to a deep scan for the first numeric string.
7
+ */
8
+ function extractBalance(obj) {
9
+ if (!obj)
10
+ return null;
11
+ const fields = obj?.content?.fields;
12
+ if (!fields)
13
+ return null;
14
+ // common shapes:
15
+ // balance: "123"
16
+ // balance: { fields: { value: "123" } }
17
+ const b = fields.balance;
18
+ if (typeof b === "string")
19
+ return b;
20
+ if (typeof b === "number")
21
+ return String(b);
22
+ if (b && typeof b === "object") {
23
+ const v = b.fields?.value ?? b.value;
24
+ if (typeof v === "string")
25
+ return v;
26
+ if (typeof v === "number")
27
+ return String(v);
28
+ }
29
+ // fallback: deep search for first numeric-like string
30
+ const stack = [fields];
31
+ const seen = new Set();
32
+ while (stack.length) {
33
+ const v = stack.pop();
34
+ if (v == null)
35
+ continue;
36
+ if (typeof v === "string" && /^[0-9]+$/.test(v))
37
+ return v;
38
+ if (typeof v !== "object")
39
+ continue;
40
+ if (seen.has(v))
41
+ continue;
42
+ seen.add(v);
43
+ if (Array.isArray(v))
44
+ stack.push(...v);
45
+ else
46
+ for (const k of Object.keys(v))
47
+ stack.push(v[k]);
48
+ }
49
+ return null;
50
+ }
51
+ //# sourceMappingURL=credit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credit.js","sourceRoot":"","sources":["../../src/oid/credit.ts"],"names":[],"mappings":";;AAMA,wCAgCC;AApCD;;;GAGG;AACH,SAAgB,cAAc,CAAC,GAA0B;IACvD,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,MAAM,MAAM,GAAI,GAAW,EAAE,OAAO,EAAE,MAAM,CAAC;IAC7C,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEzB,iBAAiB;IACjB,iBAAiB;IACjB,wCAAwC;IACxC,MAAM,CAAC,GAAI,MAAc,CAAC,OAAO,CAAC;IAClC,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC;IACpC,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;IAC5C,IAAI,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,CAAC,GAAI,CAAS,CAAC,MAAM,EAAE,KAAK,IAAK,CAAS,CAAC,KAAK,CAAC;QACvD,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO,CAAC,CAAC;QACpC,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED,sDAAsD;IACtD,MAAM,KAAK,GAAU,CAAC,MAAM,CAAC,CAAC;IAC9B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAO,CAAC;IAC5B,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,IAAI,IAAI;YAAE,SAAS;QACxB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;YAAE,OAAO,CAAC,CAAC;QAC1D,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,SAAS;QACpC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,SAAS;QAC1B,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACZ,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;;YAClC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAE,CAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}