wowok_agent 1.2.37 → 1.2.40

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 (104) hide show
  1. package/dist/call/arbitration.d.ts +69 -0
  2. package/dist/call/arbitration.d.ts.map +1 -0
  3. package/dist/call/arbitration.js +210 -0
  4. package/dist/call/arbitration.js.map +1 -0
  5. package/dist/call/base.d.ts +37 -0
  6. package/dist/call/base.d.ts.map +1 -0
  7. package/dist/call/base.js +157 -0
  8. package/dist/call/base.js.map +1 -0
  9. package/dist/call/call.d.ts +84 -0
  10. package/dist/call/call.d.ts.map +1 -0
  11. package/dist/call/call.js +156 -0
  12. package/dist/call/call.js.map +1 -0
  13. package/dist/call/demand.d.ts +57 -0
  14. package/dist/call/demand.d.ts.map +1 -0
  15. package/dist/call/demand.js +160 -0
  16. package/dist/call/demand.js.map +1 -0
  17. package/dist/call/guard.d.ts +42 -0
  18. package/dist/call/guard.d.ts.map +1 -0
  19. package/dist/call/guard.js +264 -0
  20. package/dist/call/guard.js.map +1 -0
  21. package/dist/call/machine.d.ts +109 -0
  22. package/dist/call/machine.d.ts.map +1 -0
  23. package/dist/call/machine.js +250 -0
  24. package/dist/call/machine.js.map +1 -0
  25. package/dist/call/object_permission.d.ts +14 -0
  26. package/dist/call/object_permission.d.ts.map +1 -0
  27. package/dist/call/object_permission.js +52 -0
  28. package/dist/call/object_permission.js.map +1 -0
  29. package/dist/call/permission.d.ts +50 -0
  30. package/dist/call/permission.d.ts.map +1 -0
  31. package/dist/call/permission.js +127 -0
  32. package/dist/call/permission.js.map +1 -0
  33. package/dist/call/personal.d.ts +42 -0
  34. package/dist/call/personal.d.ts.map +1 -0
  35. package/dist/call/personal.js +88 -0
  36. package/dist/call/personal.js.map +1 -0
  37. package/dist/call/repository.d.ts +52 -0
  38. package/dist/call/repository.d.ts.map +1 -0
  39. package/dist/call/repository.js +135 -0
  40. package/dist/call/repository.js.map +1 -0
  41. package/dist/call/service.d.ts +134 -0
  42. package/dist/call/service.d.ts.map +1 -0
  43. package/dist/call/service.js +416 -0
  44. package/dist/call/service.js.map +1 -0
  45. package/dist/call/treasury.d.ts +53 -0
  46. package/dist/call/treasury.d.ts.map +1 -0
  47. package/dist/call/treasury.js +175 -0
  48. package/dist/call/treasury.js.map +1 -0
  49. package/dist/common.d.ts +3 -0
  50. package/dist/common.d.ts.map +1 -0
  51. package/dist/common.js +13 -0
  52. package/dist/common.js.map +1 -0
  53. package/dist/index.d.ts +22 -0
  54. package/dist/index.d.ts.map +1 -0
  55. package/dist/index.js +22 -0
  56. package/dist/index.js.map +1 -0
  57. package/dist/local/account.d.ts +24 -0
  58. package/dist/local/account.d.ts.map +1 -0
  59. package/dist/local/account.js +188 -0
  60. package/dist/local/account.js.map +1 -0
  61. package/dist/local/cache.d.ts +32 -0
  62. package/dist/local/cache.d.ts.map +1 -0
  63. package/dist/local/cache.js +71 -0
  64. package/dist/local/cache.js.map +1 -0
  65. package/dist/local/index.d.ts +83 -0
  66. package/dist/local/index.d.ts.map +1 -0
  67. package/dist/local/index.js +98 -0
  68. package/dist/local/index.js.map +1 -0
  69. package/dist/local/local.d.ts +56 -0
  70. package/dist/local/local.d.ts.map +1 -0
  71. package/dist/local/local.js +245 -0
  72. package/dist/local/local.js.map +1 -0
  73. package/dist/query/events.d.ts +63 -0
  74. package/dist/query/events.d.ts.map +1 -0
  75. package/dist/query/events.js +78 -0
  76. package/dist/query/events.js.map +1 -0
  77. package/dist/query/objects.d.ts +323 -0
  78. package/dist/query/objects.d.ts.map +1 -0
  79. package/dist/query/objects.js +453 -0
  80. package/dist/query/objects.js.map +1 -0
  81. package/dist/query/permission.d.ts +12 -0
  82. package/dist/query/permission.d.ts.map +1 -0
  83. package/dist/query/permission.js +41 -0
  84. package/dist/query/permission.js.map +1 -0
  85. package/package.json +2 -2
  86. package/src/call/arbitration.ts +85 -54
  87. package/src/call/base.ts +22 -12
  88. package/src/call/call.ts +24 -21
  89. package/src/call/demand.ts +60 -30
  90. package/src/call/guard.ts +25 -16
  91. package/src/call/machine.ts +79 -40
  92. package/src/call/object_permission.ts +12 -8
  93. package/src/call/permission.ts +44 -18
  94. package/src/call/personal.ts +39 -13
  95. package/src/call/repository.ts +27 -13
  96. package/src/call/service.ts +150 -73
  97. package/src/call/treasury.ts +68 -50
  98. package/src/common.ts +9 -0
  99. package/src/index.ts +1 -0
  100. package/src/local/account.ts +3 -3
  101. package/src/local/index.ts +54 -50
  102. package/src/local/local.ts +48 -8
  103. package/src/query/objects.ts +14 -6
  104. package/tsconfig.tsbuildinfo +1 -1
@@ -0,0 +1,453 @@
1
+ /**
2
+ * Provide a query interface for AI
3
+ *
4
+ */
5
+ import { Protocol, Machine, Progress, ERROR, Errors, Bcs, uint2address } from 'wowok';
6
+ import { CacheName, Cache } from '../local/cache.js';
7
+ import { LocalMark } from '../local/local.js';
8
+ /* json: ObjectsQuery string; return ObjectsAnswer */
9
+ export const query_objects_json = async (json) => {
10
+ try {
11
+ const q = JSON.parse(json);
12
+ return JSON.stringify({ data: await query_objects(q) });
13
+ }
14
+ catch (e) {
15
+ return JSON.stringify({ error: e?.toString() });
16
+ }
17
+ };
18
+ /* json: TableQuery string; return TableAnswer */
19
+ export const query_table_json = async (json) => {
20
+ try {
21
+ const q = JSON.parse(json);
22
+ return JSON.stringify({ data: await query_table(q) });
23
+ }
24
+ catch (e) {
25
+ return JSON.stringify({ error: e?.toString() });
26
+ }
27
+ };
28
+ // query personal information; json: ObjectsAnswer; return ObjectPersonal | undefined .
29
+ export const query_personal_json = async (json) => {
30
+ try {
31
+ const q = JSON.parse(json);
32
+ return JSON.stringify({ data: (await query_personal(q) ?? '') });
33
+ }
34
+ catch (e) {
35
+ return JSON.stringify({ error: e?.toString() });
36
+ }
37
+ };
38
+ export const query_objects = async (query) => {
39
+ var ret = [];
40
+ var pending = [];
41
+ query.objects = await LocalMark.Instance().get_many_address2(query.objects);
42
+ if (!query.no_cache) { // showType only, use cache
43
+ for (let i = 0; i < query.objects.length; ++i) {
44
+ try {
45
+ const cache = await Cache.Instance().cache_get(query.objects[i], CacheName.object);
46
+ if (cache) {
47
+ const d = data2object(JSON.parse(cache.data));
48
+ d.cache_expire = cache.expire;
49
+ ret.push(d);
50
+ }
51
+ else {
52
+ pending.push(query.objects[i]);
53
+ }
54
+ continue;
55
+ }
56
+ catch (e) { /*console.log(e)*/ }
57
+ pending.push(query.objects[i]);
58
+ }
59
+ }
60
+ else {
61
+ pending = [...query.objects];
62
+ }
63
+ if (pending.length > 0) {
64
+ const res = await Protocol.Client().multiGetObjects({ ids: [...pending],
65
+ options: { showContent: true, showOwner: true } });
66
+ for (let i = 0; i < res.length; ++i) {
67
+ const d = res[i]?.data;
68
+ if (d) {
69
+ const type_raw = d?.type ?? (d?.content?.type ?? undefined);
70
+ const type = type_raw ? Protocol.Instance().object_name_from_type_repr(type_raw) : undefined;
71
+ const expire = Cache.ExpireTime(type === 'Guard' || type === 'Payment'); // guard & payment immutable
72
+ await Cache.Instance().put(d.objectId, { expire: expire, data: JSON.stringify(d) }, CacheName.object); // save cache
73
+ }
74
+ }
75
+ ret = ret.concat(res.map(v => data2object(v?.data)));
76
+ }
77
+ return { objects: ret };
78
+ };
79
+ export const query_personal = async (query) => {
80
+ const addr = await LocalMark.Instance().get_address(query.address);
81
+ if (!addr) {
82
+ ERROR(Errors.InvalidParam, 'query_personal.query.address');
83
+ }
84
+ query.address = addr;
85
+ if (!query.no_cache) {
86
+ try {
87
+ const cache = await Cache.Instance().cache_get(query.address, CacheName.personal);
88
+ if (cache) {
89
+ const d = JSON.parse(cache.data);
90
+ d.cache_expire = cache.expire;
91
+ return d;
92
+ }
93
+ }
94
+ catch (e) { /*console.log(e)*/ }
95
+ }
96
+ const res = await tableItemQuery_byAddress({ parent: Protocol.Instance().objectEntity(), address: query.address });
97
+ if (res.type === 'Personal') {
98
+ await Cache.Instance().put(query.address, { expire: Cache.ExpireTime(), data: JSON.stringify(res) }, CacheName.personal);
99
+ return res;
100
+ }
101
+ };
102
+ export const query_table = async (query) => {
103
+ const addr = await LocalMark.Instance().get_address(query.parent);
104
+ if (!addr) {
105
+ ERROR(Errors.InvalidParam, 'query_table.query.parent');
106
+ }
107
+ query.parent = addr;
108
+ if (!query.no_cache) {
109
+ try {
110
+ const cache = await Cache.Instance().cache_get(query.parent, CacheName.table);
111
+ if (cache) {
112
+ const d = JSON.parse(cache.data);
113
+ d.cache_expire = cache.expire;
114
+ return d;
115
+ }
116
+ }
117
+ catch (e) { /*console.log(e)*/ }
118
+ }
119
+ const res = await Protocol.Client().getDynamicFields({ parentId: query.parent, cursor: query.cursor, limit: query.limit });
120
+ const r = { items: res?.data?.map(v => {
121
+ return { object: v.objectId, type: v.type, version: v.version, key: {
122
+ type: v.name.type, value: v.name.value
123
+ } };
124
+ }), nextCursor: res.nextCursor, hasNextPage: res.hasNextPage };
125
+ await Cache.Instance().put(query.parent, { expire: Cache.ExpireTime(), data: JSON.stringify(r) }, CacheName.table);
126
+ return r;
127
+ };
128
+ const tableItem = async (query) => {
129
+ const addr = await LocalMark.Instance().get_address(query.parent);
130
+ if (!addr) {
131
+ ERROR(Errors.InvalidParam, 'tableItem.query.parent');
132
+ }
133
+ query.parent = addr;
134
+ if (!query.no_cache) {
135
+ try {
136
+ const cache = await Cache.Instance().cache_get(query.parent, CacheName.table);
137
+ if (cache) {
138
+ const d = JSON.parse(cache.data);
139
+ d.cache_expire = cache.expire;
140
+ return d;
141
+ }
142
+ }
143
+ catch (e) { /*console.log(e)*/ }
144
+ }
145
+ const res = await Protocol.Client().getDynamicFieldObject({ parentId: query.parent, name: { type: query.key.type, value: query.key.value } });
146
+ return data2object(res?.data);
147
+ };
148
+ export const queryTableItem_RepositoryData = async (query) => {
149
+ const parent = typeof (query.parent) === 'string' ? query.parent : query.parent.object;
150
+ if (typeof (query.address) !== 'string') {
151
+ query.address = uint2address(query.address); // convert int to address
152
+ }
153
+ return await tableItem({ parent: parent, key: { type: Protocol.Instance().package('wowok') + '::repository::DataKey', value: { id: query.address, key: query.name } } });
154
+ };
155
+ export const queryTableItem_DemandService = async (query) => {
156
+ return await tableItemQuery_byAddress(query);
157
+ };
158
+ export const queryTableItem_PermissionEntity = async (query) => {
159
+ return await tableItemQuery_byAddress(query);
160
+ };
161
+ export const queryTableItem_ArbVoting = async (query) => {
162
+ return await tableItemQuery_byAddress(query);
163
+ };
164
+ export const queryTableItem_MachineNode = async (query) => {
165
+ return await tableItemQuery_byName(query);
166
+ };
167
+ export const queryTableItem_ServiceSale = async (query) => {
168
+ return await tableItemQuery_byName(query);
169
+ };
170
+ export const queryTableItem_ProgressHistory = async (query) => {
171
+ return await tableItemQuery_byIndex(query);
172
+ };
173
+ export const queryTableItem_TreasuryHistory = async (query) => {
174
+ return await tableItemQuery_byIndex(query);
175
+ };
176
+ export const queryTableItem_MarkTag = async (query) => {
177
+ return await tableItemQuery_byAddress(query);
178
+ };
179
+ const tableItemQuery_byAddress = async (query) => {
180
+ const parent = typeof (query.parent) === 'string' ? query.parent : query.parent.object;
181
+ return await tableItem({ parent: parent, key: { type: 'address', value: query.address }, no_cache: query.no_cache });
182
+ };
183
+ const tableItemQuery_byName = async (query) => {
184
+ const parent = typeof (query.parent) === 'string' ? query.parent : query.parent.object;
185
+ return await tableItem({ parent: parent, key: { type: '0x1::string::String', value: query.name }, no_cache: query.no_cache });
186
+ };
187
+ const tableItemQuery_byIndex = async (query) => {
188
+ const parent = typeof (query.parent) === 'string' ? query.parent : query.parent.object;
189
+ return await tableItem({ parent: parent, key: { type: 'u64', value: query.index }, no_cache: query.no_cache });
190
+ };
191
+ export function raw2type(type_raw) {
192
+ if (!type_raw)
193
+ return undefined;
194
+ const t = Protocol.Instance().object_name_from_type_repr(type_raw);
195
+ if (t === 'Permission' || t === 'Demand' || t === 'Machine' || t === 'Progress' || t === 'Order' || t === 'Service' ||
196
+ t === 'Treasury' || t === 'Arb' || t === 'Repository' || t === 'Payment' || t === 'Discount' || t === 'Guard' || t === 'Arbitration') {
197
+ return t;
198
+ }
199
+ else if (t === 'Resource') {
200
+ return 'PersonalMark';
201
+ }
202
+ const start = type_raw?.indexOf('0x2::dynamic_field::Field<');
203
+ if (start === 0) {
204
+ const end = type_raw?.substring('0x2::dynamic_field::Field<'.length);
205
+ if (end && Protocol.Instance().hasPackage(end)) {
206
+ if (end.includes('::demand::Tips>')) {
207
+ return 'TableItem_DemandPresenter';
208
+ }
209
+ else if (end.includes('::machine::NodePair>>>')) {
210
+ return 'TableItem_MachineNode';
211
+ }
212
+ else if (end.includes('::progress::History>')) {
213
+ return 'TableItem_ProgressHistory';
214
+ }
215
+ else if (end.includes('::service::Sale>')) {
216
+ return 'TableItem_ServiceSale';
217
+ }
218
+ else if (end.includes('::treasury::Record>')) {
219
+ return 'TableItem_TreasuryHistory';
220
+ }
221
+ else if (end.includes('::arb::Voted>')) {
222
+ return 'TableItem_ArbVote';
223
+ }
224
+ else if (end.includes('::permission::Perm>>')) {
225
+ return 'TableItem_PermissionEntity';
226
+ }
227
+ else if (end.includes('::repository::DataKey')) {
228
+ return 'TableItem_RepositoryData';
229
+ }
230
+ else if (end.includes('::entity::Ent>')) {
231
+ return 'Personal';
232
+ }
233
+ else if (end.includes('::resource::Tags>')) {
234
+ return 'TableItem_PersonalMark';
235
+ }
236
+ }
237
+ }
238
+ return undefined;
239
+ }
240
+ export function data2object(data) {
241
+ const content = data?.content?.fields;
242
+ const id = data?.objectId ?? (content?.id?.id ?? undefined);
243
+ const type_raw = data?.type ?? (data?.content?.type ?? undefined);
244
+ const version = data?.version ?? undefined;
245
+ const owner = data?.owner ?? undefined;
246
+ const type = raw2type(type_raw);
247
+ if (type) {
248
+ switch (type) {
249
+ case 'Permission':
250
+ return { object: id, type: type, type_raw: type_raw, owner: owner, version: version,
251
+ builder: content?.builder ?? '', admin: content?.admin, description: content?.description ?? '',
252
+ entity_count: parseInt(content?.table?.fields?.size),
253
+ biz_permission: content?.user_define?.fields?.contents?.map((v) => {
254
+ return { id: parseInt(v?.fields?.key), name: v?.fields?.value };
255
+ })
256
+ };
257
+ case 'Demand':
258
+ return {
259
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
260
+ permission: content?.permission, description: content?.description,
261
+ guard: content?.guard ? { object: content?.guard, service_id_in_guard: content?.service_identifier } : undefined,
262
+ time_expire: content?.time_expire, yes: content?.yes,
263
+ presenter_count: parseInt(content?.presenters?.fields?.size),
264
+ bounty: content?.bounty?.map((v) => {
265
+ return { type: v?.fields?.type, object: v?.fields?.id?.id, balance: v?.fields?.balance };
266
+ })
267
+ };
268
+ case 'Machine':
269
+ return {
270
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
271
+ permission: content?.permission ?? '', description: content?.description ?? '',
272
+ bPaused: content?.bPaused, bPublished: content?.bPublished, endpoint: content?.endpoint,
273
+ consensus_repository: content?.consensus_repositories, node_count: parseInt(content?.nodes?.fields?.size),
274
+ };
275
+ case 'Progress':
276
+ return {
277
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
278
+ machine: content?.machine, current: content?.current, task: content?.task,
279
+ parent: content?.parent, history_count: parseInt(content?.history?.fields?.contents?.fields?.size),
280
+ namedOperator: content?.namedOperator?.fields?.contents?.map((v) => {
281
+ return { name: v?.fields?.key, operator: v?.fields?.value };
282
+ }),
283
+ session: content?.session?.fields?.contents?.map((v) => {
284
+ return { weights: v?.fields?.value?.fields?.weight, threshold: v?.fields?.value?.fields?.threshold,
285
+ next_node: v?.fields?.key, forward: v?.fields?.value?.fields?.forwards?.fields?.contents?.map((i) => {
286
+ return { forward_name: i?.fields?.key, accomplished: i?.fields?.value?.fields?.accomplished,
287
+ msg: i?.fields?.value?.fields?.msg, orders: i?.fields?.value?.fields?.orders,
288
+ time: i?.fields?.value?.fields?.time, holder: i?.fields?.value?.fields?.who
289
+ };
290
+ })
291
+ };
292
+ })
293
+ };
294
+ case 'Order':
295
+ return {
296
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
297
+ service: content?.service, amount: content?.amount, agent: content?.agent, arb: content?.dispute,
298
+ payer: content?.payer, progress: content?.progress, discount: content?.discount, balance: content?.payed,
299
+ required_info: content?.required_info ?
300
+ { pubkey: content?.required_info?.fields?.customer_pub, msg_encrypted: content?.required_info?.fields?.info }
301
+ : undefined,
302
+ item: content?.items?.map((v) => {
303
+ return { name: v?.fields?.name, price: v?.fields?.price, stock: v?.fields?.stock, endpoint: v?.fields?.endpoint };
304
+ }),
305
+ };
306
+ case 'Service':
307
+ return {
308
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
309
+ machine: content?.machine, permission: content?.permission, description: content?.description,
310
+ arbitration: content?.arbitrations, bPaused: content?.bPaused, bPublished: content?.bPublished,
311
+ buy_guard: content?.buy_guard, endpoint: content?.endpoint, payee: content?.payee, repository: content?.repositories,
312
+ withdraw_guard: content?.withdraw_guard?.fields?.contents?.map((v) => {
313
+ return { object: v?.fields?.key, percent: v?.fields?.value };
314
+ }),
315
+ refund_guard: content?.refund_guard?.fields?.contents?.map((v) => {
316
+ return { object: v?.fields?.key, percent: v?.fields?.value };
317
+ }),
318
+ sales_count: parseInt(content?.sales?.fields?.size), extern_withdraw_treasury: content?.extern_withdraw_treasuries,
319
+ customer_required_info: content?.customer_required ?
320
+ { pubkey: content?.customer_required?.fields?.service_pubkey, required_info: content?.customer_required?.fields?.customer_required_info }
321
+ : undefined,
322
+ };
323
+ case 'Treasury':
324
+ return {
325
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
326
+ permission: content?.permission, description: content?.description, withdraw_mode: content?.withdraw_mode,
327
+ history_count: parseInt(content?.history?.fields?.contents?.fields?.size), balance: content?.balance,
328
+ deposit_guard: content?.deposit_guard, withdraw_guard: content?.withdraw_guard?.fields?.contents?.map((v) => {
329
+ return { object: v?.fields?.key, percent: v?.fields?.value };
330
+ })
331
+ };
332
+ case 'Arbitration':
333
+ return {
334
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
335
+ permission: content?.permission, description: content?.description, fee: content?.fee,
336
+ fee_treasury: content?.fee_treasury, usage_guard: content?.usage_guard,
337
+ endpoint: content?.endpoint, bPaused: content?.bPaused, voting_guard: content?.voting_guard?.fields?.contents?.map((v) => {
338
+ return { object: v?.fields?.key, weights: v?.fields?.value };
339
+ })
340
+ };
341
+ case 'Arb':
342
+ return {
343
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
344
+ arbitration: content?.arbitration, description: content?.description, fee: content?.fee,
345
+ feedback: content?.feedback, indemnity: content?.indemnity, order: content?.order,
346
+ voted_count: parseInt(content?.voted?.fields?.size),
347
+ proposition: content?.proposition?.fields?.contents?.map((v) => {
348
+ return { proposition: v?.fields?.key, votes: v?.fields?.value };
349
+ })
350
+ };
351
+ case 'Repository':
352
+ return {
353
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
354
+ permission: content?.permission, description: content?.description, policy_mode: content?.policy_mode,
355
+ data_count: parseInt(content?.data?.fields?.size), reference: content?.reference, rep_type: content?.type,
356
+ policy: content?.policies?.fields?.contents?.map((v) => {
357
+ return { key: v?.fields?.key, description: v?.fields?.value?.fields?.description,
358
+ permissionIndex: v?.fields?.value?.fields?.permission_index, dataType: v?.fields?.value?.fields?.value_type };
359
+ })
360
+ };
361
+ case 'Payment':
362
+ return {
363
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
364
+ signer: content?.signer, time: content?.time, remark: content?.remark, from: content?.from,
365
+ biz_id: content?.index, for_guard: content?.for_guard, for_object: content?.for_object,
366
+ amount: content?.amount, record: content?.record?.map((v) => {
367
+ return { recipient: v?.fields?.recipient, amount: v?.fields?.amount };
368
+ })
369
+ };
370
+ case 'Discount':
371
+ return {
372
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
373
+ service: content?.service, time_start: content?.time_start, time_end: content?.time_end,
374
+ price_greater: content?.price_greater, off_type: content?.type, off: content?.off,
375
+ name: content?.name
376
+ };
377
+ case 'Guard':
378
+ return {
379
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
380
+ description: content?.description, input: Uint8Array.from(content?.input?.fields?.bytes),
381
+ identifier: content?.constants?.map((v) => {
382
+ return { id: v?.fields?.identifier, bWitness: v?.fields?.bWitness, value: Uint8Array.from(v?.fields?.value) };
383
+ })
384
+ };
385
+ case 'PersonalMark':
386
+ return {
387
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
388
+ tag_count: parseInt(content?.tags?.fields?.size)
389
+ };
390
+ case 'TableItem_DemandPresenter':
391
+ return {
392
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
393
+ service: content?.name, presenter: content?.value?.fields?.who, recommendation: content?.value?.fields?.tips
394
+ };
395
+ case 'TableItem_ProgressHistory':
396
+ return {
397
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
398
+ history: Progress.DeHistory(content)
399
+ };
400
+ case 'TableItem_ServiceSale':
401
+ return {
402
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
403
+ item: { item: content?.name, stock: content?.value?.fields?.stock, price: content?.value?.fields?.price,
404
+ endpoint: content?.value?.fields?.endpoint
405
+ }
406
+ };
407
+ case 'TableItem_TreasuryHistory':
408
+ return {
409
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
410
+ id: content?.name, payment: content?.value?.fields?.payment, signer: content?.value?.fields?.signer,
411
+ operation: content?.value?.fields?.op, amount: content?.value?.fields?.amount, time: content?.value?.fields?.time
412
+ };
413
+ case 'TableItem_ArbVote':
414
+ return {
415
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
416
+ singer: content?.name, vote: content?.value?.fields?.agrees, time: content?.value?.fields?.time,
417
+ weight: content?.value?.fields?.weight
418
+ };
419
+ case 'TableItem_PermissionEntity':
420
+ return {
421
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
422
+ entity: content?.name, permission: content?.value?.map((v) => {
423
+ return { id: v?.fields.index, guard: v?.fields.guard };
424
+ })
425
+ };
426
+ case 'TableItem_RepositoryData':
427
+ return {
428
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
429
+ address: content?.name?.fields?.id, key: content?.name?.fields?.key, data: Uint8Array.from(content?.value)
430
+ };
431
+ case 'TableItem_MachineNode':
432
+ return {
433
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
434
+ node: { name: content?.name, pairs: Machine.rpc_de_pair(content?.value) }
435
+ };
436
+ case 'Personal':
437
+ const info = Bcs.getInstance().de_entInfo(Uint8Array.from(content?.value?.fields?.avatar));
438
+ return {
439
+ object: id, type: type, type_raw: type_raw, owner: owner, version: version,
440
+ address: content?.name, like: content?.value?.fields?.like, dislike: content?.value?.fields?.dislike,
441
+ mark_object: content?.value?.fields?.resource, lastActive_digest: data?.previousTransaction,
442
+ info: { homepage: info?.homepage, name: info?.name, avatar: info?.avatar, twitter: info?.twitter, discord: info?.discord,
443
+ description: info?.description }
444
+ };
445
+ case 'TableItem_PersonalMark':
446
+ return { object: id, type: type, type_raw: type_raw, owner: owner, version: version,
447
+ address: content?.name, name: content?.value?.fields?.nick, tags: content?.value?.fields?.tags
448
+ };
449
+ }
450
+ }
451
+ return { object: id, type: undefined, type_raw: type_raw, owner: owner, version: version };
452
+ }
453
+ //# sourceMappingURL=objects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"objects.js","sourceRoot":"","sources":["../../src/query/objects.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Provides permission lookup for an address:
3
+ * not only the permission table, but also the administrator or Builder identity.
4
+ */
5
+ import { PermissionAnswer } from 'wowok';
6
+ export interface PermissionQuery {
7
+ permission_object: string;
8
+ address: string;
9
+ }
10
+ export declare const query_permission_json: (json: string) => Promise<string>;
11
+ export declare const query_permission: (query: PermissionQuery) => Promise<PermissionAnswer>;
12
+ //# sourceMappingURL=permission.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.d.ts","sourceRoot":"","sources":["../../src/query/permission.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAA8E,gBAAgB,EAAM,MAAM,OAAO,CAAC;AAEzH,MAAM,WAAW,eAAe;IAC5B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;CACnB;AAGD,eAAO,MAAM,qBAAqB,GAAU,MAAK,MAAM,KAAI,OAAO,CAAC,MAAM,CAOxE,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAU,OAAM,eAAe,KAAI,OAAO,CAAC,gBAAgB,CAyBvF,CAAA"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Provides permission lookup for an address:
3
+ * not only the permission table, but also the administrator or Builder identity.
4
+ */
5
+ import { TransactionBlock, Protocol, Bcs, IsValidAddress, Errors, ERROR, Permission, BCS } from 'wowok';
6
+ /*json: PermissionQuery; return PermissionAnswer */
7
+ export const query_permission_json = async (json) => {
8
+ try {
9
+ const q = JSON.parse(json);
10
+ return JSON.stringify({ data: await query_permission(q) });
11
+ }
12
+ catch (e) {
13
+ return JSON.stringify({ error: e });
14
+ }
15
+ };
16
+ export const query_permission = async (query) => {
17
+ if (!IsValidAddress(query.permission_object)) {
18
+ ERROR(Errors.IsValidAddress, 'permission.permission_object');
19
+ } /*
20
+ if (!IsValidAddress(query.address)) {
21
+ ERROR(Errors.IsValidAddress, 'permission.address')
22
+ }*/
23
+ const txb = new TransactionBlock();
24
+ const object = Permission.From(txb, query.permission_object);
25
+ object.query_permissions_all(query.address);
26
+ const res = await Protocol.Client().devInspectTransactionBlock({ sender: query.address, transactionBlock: txb });
27
+ if (res.results && res.results[0].returnValues && res.results[0].returnValues.length !== 2) {
28
+ ERROR(Errors.Fail, 'permission.retValues');
29
+ }
30
+ const perm = Bcs.getInstance().de(BCS.U8, Uint8Array.from(res.results[0].returnValues[0][0]));
31
+ if (perm === Permission.PERMISSION_ADMIN || perm === Permission.PERMISSION_OWNER_AND_ADMIN) {
32
+ return { who: query.address, admin: true, owner: perm % 2 === 1, items: [], object: query.permission_object };
33
+ }
34
+ else {
35
+ const perms = Bcs.getInstance().de_perms(Uint8Array.from(res.results[0].returnValues[1][0]));
36
+ return { who: query.address, admin: false, owner: perm % 2 === 1, items: perms.map((v) => {
37
+ return { query: v?.index, permission: true, guard: v?.guard };
38
+ }), object: query.permission_object };
39
+ }
40
+ };
41
+ //# sourceMappingURL=permission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.js","sourceRoot":"","sources":["../../src/query/permission.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wowok_agent",
3
- "version": "1.2.37",
3
+ "version": "1.2.40",
4
4
  "description": "Create, collaborate, and transact on your own terms with the AI-driven web3 collaboration protocol.",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -54,6 +54,6 @@
54
54
  },
55
55
  "dependencies": {
56
56
  "level": "^9.0.0",
57
- "wowok": "^1.6.90"
57
+ "wowok": "^1.6.92"
58
58
  }
59
59
  }