wowok_agent 1.2.35 → 1.2.38

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