@ownables/platform-browser 0.9.0 → 0.9.1

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 (110) hide show
  1. package/README.md +3 -3
  2. package/dist/core/src/index.d.ts +1 -3
  3. package/dist/core/src/index.d.ts.map +1 -1
  4. package/dist/core/src/index.js +1 -3
  5. package/dist/core/src/index.js.map +1 -1
  6. package/dist/core/src/interfaces/core.d.ts +1 -1
  7. package/dist/core/src/interfaces/core.d.ts.map +1 -1
  8. package/dist/core/src/logger.d.ts +1 -1
  9. package/dist/core/src/services/AnchorValidation.service.d.ts +9 -21
  10. package/dist/core/src/services/AnchorValidation.service.d.ts.map +1 -1
  11. package/dist/core/src/services/AnchorValidation.service.js +36 -15
  12. package/dist/core/src/services/AnchorValidation.service.js.map +1 -1
  13. package/dist/core/src/services/EventChain.service.d.ts +8 -6
  14. package/dist/core/src/services/EventChain.service.d.ts.map +1 -1
  15. package/dist/core/src/services/EventChain.service.js +13 -12
  16. package/dist/core/src/services/EventChain.service.js.map +1 -1
  17. package/dist/core/src/services/Ownable.service.d.ts +27 -15
  18. package/dist/core/src/services/Ownable.service.d.ts.map +1 -1
  19. package/dist/core/src/services/Ownable.service.js +90 -94
  20. package/dist/core/src/services/Ownable.service.js.map +1 -1
  21. package/dist/core/src/services/Polling.service.d.ts +3 -3
  22. package/dist/core/src/services/Polling.service.d.ts.map +1 -1
  23. package/dist/core/src/services/Polling.service.js +10 -10
  24. package/dist/core/src/services/Polling.service.js.map +1 -1
  25. package/dist/core/src/services/Progress.service.d.ts +7 -0
  26. package/dist/core/src/services/Progress.service.d.ts.map +1 -0
  27. package/dist/core/src/services/Progress.service.js +12 -0
  28. package/dist/core/src/services/Progress.service.js.map +1 -0
  29. package/dist/core/src/services/ReplayAuthority.service.d.ts +13 -10
  30. package/dist/core/src/services/ReplayAuthority.service.d.ts.map +1 -1
  31. package/dist/core/src/services/ReplayAuthority.service.js +36 -16
  32. package/dist/core/src/services/ReplayAuthority.service.js.map +1 -1
  33. package/dist/core/src/services/SIWE.service.d.ts +2 -2
  34. package/dist/core/src/services/SIWE.service.d.ts.map +1 -1
  35. package/dist/core/src/services/SIWE.service.js +26 -27
  36. package/dist/core/src/services/SIWE.service.js.map +1 -1
  37. package/dist/core/src/services/WorkerRPC.service.d.ts.map +1 -1
  38. package/dist/core/src/services/WorkerRPC.service.js +3 -1
  39. package/dist/core/src/services/WorkerRPC.service.js.map +1 -1
  40. package/dist/core/src/types/AnchorValidation.d.ts +12 -2
  41. package/dist/core/src/types/AnchorValidation.d.ts.map +1 -1
  42. package/dist/core/src/types/MessageInfo.d.ts +1 -1
  43. package/dist/core/src/types/OwnableRuntime.d.ts +1 -1
  44. package/dist/core/src/types/Replay.d.ts +9 -9
  45. package/dist/core/src/types/Replay.d.ts.map +1 -1
  46. package/dist/core/src/utils/calculateOwnablePackageCid.d.ts +6 -0
  47. package/dist/core/src/utils/calculateOwnablePackageCid.d.ts.map +1 -0
  48. package/dist/core/src/{services/OwnablePackageCid.service.js → utils/calculateOwnablePackageCid.js} +8 -8
  49. package/dist/core/src/utils/calculateOwnablePackageCid.js.map +1 -0
  50. package/dist/core/src/utils.d.ts +2 -0
  51. package/dist/core/src/utils.d.ts.map +1 -0
  52. package/dist/core/src/utils.js +2 -0
  53. package/dist/core/src/utils.js.map +1 -0
  54. package/dist/platform-browser/src/assets/workerSource.d.ts.map +1 -0
  55. package/dist/platform-browser/src/assets/workerSource.js.map +1 -0
  56. package/dist/platform-browser/src/constants/hub.d.ts +2 -0
  57. package/dist/platform-browser/src/constants/hub.d.ts.map +1 -0
  58. package/dist/platform-browser/src/constants/hub.js +2 -0
  59. package/dist/platform-browser/src/constants/hub.js.map +1 -0
  60. package/dist/platform-browser/src/index.d.ts +5 -3
  61. package/dist/platform-browser/src/index.d.ts.map +1 -1
  62. package/dist/platform-browser/src/index.js +5 -3
  63. package/dist/platform-browser/src/index.js.map +1 -1
  64. package/dist/platform-browser/src/services/BrowserRuntimeRpcProvider.service.d.ts +5 -0
  65. package/dist/platform-browser/src/services/BrowserRuntimeRpcProvider.service.d.ts.map +1 -0
  66. package/dist/platform-browser/src/services/BrowserRuntimeRpcProvider.service.js +7 -0
  67. package/dist/platform-browser/src/services/BrowserRuntimeRpcProvider.service.js.map +1 -0
  68. package/dist/platform-browser/src/services/BrowserRuntimeSourceProvider.service.d.ts +7 -0
  69. package/dist/platform-browser/src/services/BrowserRuntimeSourceProvider.service.d.ts.map +1 -0
  70. package/dist/platform-browser/src/services/BrowserRuntimeSourceProvider.service.js +11 -0
  71. package/dist/platform-browser/src/services/BrowserRuntimeSourceProvider.service.js.map +1 -0
  72. package/dist/platform-browser/src/services/Hub.service.d.ts +2 -3
  73. package/dist/platform-browser/src/services/Hub.service.d.ts.map +1 -1
  74. package/dist/platform-browser/src/services/Hub.service.js +39 -40
  75. package/dist/platform-browser/src/services/Hub.service.js.map +1 -1
  76. package/dist/platform-browser/src/services/IDB.service.d.ts +1 -1
  77. package/dist/platform-browser/src/services/IDB.service.d.ts.map +1 -1
  78. package/dist/platform-browser/src/services/IDB.service.js +18 -19
  79. package/dist/platform-browser/src/services/IDB.service.js.map +1 -1
  80. package/dist/platform-browser/src/services/LocalStorage.service.d.ts.map +1 -1
  81. package/dist/platform-browser/src/services/LocalStorage.service.js +1 -1
  82. package/dist/platform-browser/src/services/LocalStorage.service.js.map +1 -1
  83. package/dist/platform-browser/src/services/Package.service.d.ts +8 -10
  84. package/dist/platform-browser/src/services/Package.service.d.ts.map +1 -1
  85. package/dist/platform-browser/src/services/Package.service.js +72 -77
  86. package/dist/platform-browser/src/services/Package.service.js.map +1 -1
  87. package/dist/platform-browser/src/services/Relay.service.d.ts +7 -7
  88. package/dist/platform-browser/src/services/Relay.service.d.ts.map +1 -1
  89. package/dist/platform-browser/src/services/Relay.service.js +25 -25
  90. package/dist/platform-browser/src/services/Relay.service.js.map +1 -1
  91. package/package.json +2 -2
  92. package/dist/core/src/ownableErrorMessage.d.ts +0 -2
  93. package/dist/core/src/ownableErrorMessage.d.ts.map +0 -1
  94. package/dist/core/src/ownableErrorMessage.js +0 -23
  95. package/dist/core/src/ownableErrorMessage.js.map +0 -1
  96. package/dist/core/src/progress.d.ts +0 -3
  97. package/dist/core/src/progress.d.ts.map +0 -1
  98. package/dist/core/src/progress.js +0 -8
  99. package/dist/core/src/progress.js.map +0 -1
  100. package/dist/core/src/services/OwnablePackageCid.service.d.ts +0 -6
  101. package/dist/core/src/services/OwnablePackageCid.service.d.ts.map +0 -1
  102. package/dist/core/src/services/OwnablePackageCid.service.js.map +0 -1
  103. package/dist/core/src/services/workerSource.d.ts.map +0 -1
  104. package/dist/core/src/services/workerSource.js.map +0 -1
  105. package/dist/platform-browser/src/utils/calculateCid.d.ts +0 -2
  106. package/dist/platform-browser/src/utils/calculateCid.d.ts.map +0 -1
  107. package/dist/platform-browser/src/utils/calculateCid.js +0 -8
  108. package/dist/platform-browser/src/utils/calculateCid.js.map +0 -1
  109. /package/dist/{core/src/services → platform-browser/src/assets}/workerSource.d.ts +0 -0
  110. /package/dist/{core/src/services → platform-browser/src/assets}/workerSource.js +0 -0
@@ -1,31 +1,26 @@
1
- import { EventChain, Event, Binary } from "eqty-core";
2
- import { encode } from "cbor-x";
3
- import { withProgress } from "../progress.js";
4
- import WorkerRPC from "./WorkerRPC.service.js";
5
- import { DEFAULT_WORKER_SOURCE } from "./workerSource.js";
6
- import { dedupeIndexedPublicEvents, publicEventReplayKey, selectReplayableIndexedPublicEvents } from "./ReplayAuthority.service.js";
1
+ import { EventChain, Event, Binary } from 'eqty-core';
2
+ import { encode } from 'cbor-x';
3
+ import { ProgressService } from './Progress.service.js';
7
4
  export default class OwnableService {
5
+ SNAPSHOT_INTERVAL = 50;
6
+ PUBLIC_EVENT_REPLAY_STORE_SUFFIX = '.public-event-replays';
8
7
  stateStore;
9
8
  eventChains;
10
9
  eqty;
11
10
  packages;
12
11
  runtimeSource;
13
- logger;
14
12
  runtimeRpc;
15
- SNAPSHOT_INTERVAL = 50;
16
- PUBLIC_EVENT_REPLAY_STORE_SUFFIX = ".public-event-replays";
17
- constructor(stateStore, eventChains, eqty, packages, runtimeSource = {
18
- getWorkerSource: () => DEFAULT_WORKER_SOURCE,
19
- }, logger = console, runtimeRpc = {
20
- create: (id) => new WorkerRPC(id),
21
- }) {
22
- this.stateStore = stateStore;
23
- this.eventChains = eventChains;
24
- this.eqty = eqty;
25
- this.packages = packages;
26
- this.runtimeSource = runtimeSource;
27
- this.logger = logger;
28
- this.runtimeRpc = runtimeRpc;
13
+ replay;
14
+ logger;
15
+ constructor(deps) {
16
+ this.stateStore = deps.stateStore;
17
+ this.eventChains = deps.eventChains;
18
+ this.eqty = deps.anchorProvider;
19
+ this.packages = deps.packages;
20
+ this.runtimeSource = deps.runtimeSource;
21
+ this.runtimeRpc = deps.runtimeRpc;
22
+ this.replay = deps.replay;
23
+ this.logger = deps.logger ?? console;
29
24
  }
30
25
  _rpc = new Map();
31
26
  get anchoring() {
@@ -59,19 +54,20 @@ export default class OwnableService {
59
54
  if (this._rpc.has(id))
60
55
  return;
61
56
  const js = this.runtimeSource.getWorkerSource();
62
- const wasm = (await this.packages.getAsset(cid, "ownable_bg.wasm", (fr, file) => fr.readAsArrayBuffer(file)));
57
+ const wasm = (await this.packages.getAsset(cid, 'ownable_bg.wasm', (fr, file) => fr.readAsArrayBuffer(file)));
63
58
  const rpc = this.runtimeRpc.create(id);
64
59
  await rpc.initialize(js, new Uint8Array(wasm));
65
60
  this._rpc.set(id, rpc);
66
61
  }
67
62
  async create(pkg, onProgress) {
63
+ const progress = new ProgressService(onProgress);
68
64
  const address = this.eqty.address;
69
65
  const networkId = this.eqty.chainId;
70
66
  const chain = EventChain.create(address, networkId);
71
67
  const anchors = [];
72
68
  if (pkg.isDynamic || this.anchoring) {
73
69
  const msg = {
74
- "@context": "instantiate_msg.json",
70
+ '@context': 'instantiate_msg.json',
75
71
  ownable_id: chain.id,
76
72
  package: pkg.cid,
77
73
  network_id: networkId,
@@ -79,7 +75,7 @@ export default class OwnableService {
79
75
  ...(pkg.title ? { name: pkg.title } : {}),
80
76
  ...(pkg.description ? { description: pkg.description } : {}),
81
77
  };
82
- await withProgress(onProgress)("signEvent", () => this.eqty.sign(new Event(msg).addTo(chain)));
78
+ await progress.step('signEvent', () => this.eqty.sign(new Event(msg).addTo(chain)));
83
79
  }
84
80
  if (this.anchoring) {
85
81
  const hash = chain.latestHash.hex;
@@ -88,7 +84,7 @@ export default class OwnableService {
88
84
  if (anchors.length > 0) {
89
85
  // Queue anchors and submit as single tx
90
86
  await this.eqty.anchor(...anchors);
91
- const txHash = await withProgress(onProgress)("anchorEvent", () => this.eqty.submitAnchors());
87
+ const txHash = await progress.step('anchorEvent', () => this.eqty.submitAnchors());
92
88
  return txHash ? { chain, txHash } : { chain };
93
89
  }
94
90
  return { chain };
@@ -119,19 +115,17 @@ export default class OwnableService {
119
115
  const keys = await this.stateStore.keys(snapshotStoreId);
120
116
  if (keys.length > 3) {
121
117
  const sortedKeys = keys
122
- .map((key) => parseInt(key.replace("snapshot_", "")))
118
+ .map((key) => parseInt(key.replace('snapshot_', '')))
123
119
  .sort((a, b) => b - a);
124
120
  // Delete oldest snapshots, keep the 3 most recent
125
- const keysToDelete = sortedKeys
126
- .slice(3)
127
- .map((index) => `snapshot_${index}`);
121
+ const keysToDelete = sortedKeys.slice(3).map((index) => `snapshot_${index}`);
128
122
  for (const key of keysToDelete) {
129
123
  await this.stateStore.delete(snapshotStoreId, key);
130
124
  }
131
125
  }
132
126
  }
133
127
  catch (error) {
134
- this.logger.error("Error creating snapshot:", error);
128
+ this.logger.error('Error creating snapshot:', error);
135
129
  }
136
130
  }
137
131
  async getLatestSnapshot(chainId) {
@@ -145,7 +139,7 @@ export default class OwnableService {
145
139
  if (snapshots.length === 0)
146
140
  return null;
147
141
  const latestKey = snapshots
148
- .map((key) => parseInt(key.replace("snapshot_", "")))
142
+ .map((key) => parseInt(key.replace('snapshot_', '')))
149
143
  .sort((a, b) => b - a)[0];
150
144
  return await this.stateStore.get(snapshotStoreId, `snapshot_${latestKey}`);
151
145
  }
@@ -157,7 +151,7 @@ export default class OwnableService {
157
151
  }
158
152
  const snapshots = await this.stateStore.keys(snapshotStoreId);
159
153
  const sortedKeys = snapshots
160
- .map((key) => parseInt(key.replace("snapshot_", "")))
154
+ .map((key) => parseInt(key.replace('snapshot_', '')))
161
155
  .sort((a, b) => a - b);
162
156
  return Promise.all(sortedKeys.map((index) => this.stateStore.get(snapshotStoreId, `snapshot_${index}`)));
163
157
  }
@@ -173,7 +167,7 @@ export default class OwnableService {
173
167
  }
174
168
  replayRecord(event, status, sources) {
175
169
  return {
176
- replayKey: publicEventReplayKey(event),
170
+ replayKey: this.replay.key(event),
177
171
  event,
178
172
  status,
179
173
  sources: [...new Set(sources)],
@@ -242,17 +236,15 @@ export default class OwnableService {
242
236
  transactionIndex: 0,
243
237
  logIndex: 0,
244
238
  },
245
- status: "pending",
246
- sources: ["local"],
239
+ status: 'pending',
240
+ sources: ['local'],
247
241
  };
248
242
  }
249
243
  toRegisterRuntimeEvent(event) {
250
244
  const { subjectId: _subjectId, timestamp: _timestamp, ...publicEvent } = event;
251
245
  return {
252
246
  ...publicEvent,
253
- data: typeof publicEvent.data === "string"
254
- ? publicEvent.data
255
- : new Binary(event.data).hex,
247
+ data: typeof publicEvent.data === 'string' ? publicEvent.data : new Binary(event.data).hex,
256
248
  };
257
249
  }
258
250
  publicEventSubjectMatches(chain, event) {
@@ -270,19 +262,19 @@ export default class OwnableService {
270
262
  sender: event.signerAddress || this.eqty.address,
271
263
  funds: [],
272
264
  };
273
- const { "@context": context, ...msg } = event.parsedData;
265
+ const { '@context': context, ...msg } = event.parsedData;
274
266
  let result;
275
267
  switch (context) {
276
- case "instantiate_msg.json":
268
+ case 'instantiate_msg.json':
277
269
  result = await rpc.instantiate(msg, info);
278
270
  break;
279
- case "execute_msg.json":
271
+ case 'execute_msg.json':
280
272
  result = await rpc.execute(msg, info, stateDump);
281
273
  break;
282
- case "register_msg.json":
274
+ case 'register_msg.json':
283
275
  result = await rpc.register(this.toRegisterRpcPayload(msg), info, stateDump);
284
276
  break;
285
- case "ingest_msg.json":
277
+ case 'ingest_msg.json':
286
278
  result = await rpc.ingest(msg, info, stateDump);
287
279
  break;
288
280
  default:
@@ -340,9 +332,9 @@ export default class OwnableService {
340
332
  sender: this.eqty.address,
341
333
  funds: [],
342
334
  };
343
- const deduped = dedupeIndexedPublicEvents(indexedPublicEvents);
335
+ const deduped = this.replay.dedupe(indexedPublicEvents);
344
336
  const selected = options
345
- ? selectReplayableIndexedPublicEvents(indexedPublicEvents, options)
337
+ ? this.replay.selectReplayable(indexedPublicEvents, options)
346
338
  : { events: deduped.events, ignoredPublicEvents: [] };
347
339
  const events = selected.events;
348
340
  const duplicateReplayKeys = deduped.duplicateReplayKeys;
@@ -350,14 +342,14 @@ export default class OwnableService {
350
342
  const appliedReplayKeys = [];
351
343
  const appliedPublicEvents = [];
352
344
  const duplicatePublicEvents = deduped.duplicateEvents.map((event) => ({
353
- replayKey: publicEventReplayKey(event),
345
+ replayKey: this.replay.key(event),
354
346
  event,
355
347
  }));
356
348
  const ignoredPublicEvents = [...selected.ignoredPublicEvents];
357
349
  let nextState = stateDump;
358
350
  for (const indexedEvent of events) {
359
351
  const runtimeEvent = this.toRegisterRuntimeEvent(indexedEvent);
360
- const replayKey = publicEventReplayKey(indexedEvent);
352
+ const replayKey = this.replay.key(indexedEvent);
361
353
  try {
362
354
  const { state } = await this.rpc(chainId).register(this.toRegisterRpcPayload(runtimeEvent), info, nextState);
363
355
  nextState = state;
@@ -372,7 +364,7 @@ export default class OwnableService {
372
364
  ignoredPublicEvents.push({
373
365
  replayKey,
374
366
  event: indexedEvent,
375
- reason: "register_failed",
367
+ reason: 'register_failed',
376
368
  cause,
377
369
  });
378
370
  }
@@ -391,30 +383,33 @@ export default class OwnableService {
391
383
  };
392
384
  }
393
385
  async applyIndexedPublicEventSnapshot(chain, indexedPublicEvents, onProgress) {
394
- return this.reconcileIndexedPublicEvents(chain, indexedPublicEvents, "snapshot", onProgress);
386
+ return this.reconcileIndexedPublicEvents(chain, indexedPublicEvents, 'snapshot', onProgress);
395
387
  }
396
388
  async applyIndexedPublicEventStream(chain, indexedPublicEvents, onProgress) {
397
- return this.reconcileIndexedPublicEvents(chain, indexedPublicEvents, "stream", onProgress);
389
+ return this.reconcileIndexedPublicEvents(chain, indexedPublicEvents, 'stream', onProgress);
398
390
  }
399
391
  async reconcileIndexedPublicEvents(chain, indexedPublicEvents, source, onProgress) {
392
+ const progress = new ProgressService(onProgress);
400
393
  const stateDump = await this.eventChains.getStateDump(chain.id, chain.state.hex);
401
394
  if (!stateDump)
402
- throw Error("State mismatch for register public event");
395
+ throw Error('State mismatch for register public event');
403
396
  const replayStoreId = await this.ensureReplayStore(chain.id);
404
397
  const base = this.emptyReplayAttemptResult(stateDump);
405
- const deduped = dedupeIndexedPublicEvents(indexedPublicEvents);
398
+ const deduped = this.replay.dedupe(indexedPublicEvents);
406
399
  const info = {
407
400
  sender: this.eqty.address,
408
401
  funds: [],
409
402
  };
410
403
  base.duplicateReplayKeys.push(...deduped.duplicateReplayKeys);
411
- base.duplicatePublicEvents.push(...deduped.duplicateEvents.map((event) => this.replayRecord(event, "confirmed", [source])));
404
+ base.duplicatePublicEvents.push(...deduped.duplicateEvents.map((event) => this.replayRecord(event, 'confirmed', [source])));
412
405
  let nextState = stateDump;
413
406
  for (const indexedEvent of deduped.events) {
414
- const replayKey = publicEventReplayKey(indexedEvent);
415
- const existing = (await this.stateStore.get(replayStoreId, replayKey).catch(() => undefined));
416
- if (existing?.status === "confirmed") {
417
- const updated = this.replayRecord(existing.event, "confirmed", this.mergeReplayRecordSources(existing.sources, source));
407
+ const replayKey = this.replay.key(indexedEvent);
408
+ const existing = (await this.stateStore
409
+ .get(replayStoreId, replayKey)
410
+ .catch(() => undefined));
411
+ if (existing?.status === 'confirmed') {
412
+ const updated = this.replayRecord(existing.event, 'confirmed', this.mergeReplayRecordSources(existing.sources, source));
418
413
  await this.stateStore.set(replayStoreId, replayKey, updated);
419
414
  base.duplicateReplayKeys.push(replayKey);
420
415
  base.duplicatePublicEvents.push(updated);
@@ -424,19 +419,19 @@ export default class OwnableService {
424
419
  try {
425
420
  const { state } = await this.rpc(chain.id).register(this.toRegisterRpcPayload(runtimeEvent), info, nextState);
426
421
  nextState = state;
427
- await withProgress(onProgress)("signPublicEvent", () => this.eqty.sign(new Event({
428
- "@context": "register_msg.json",
422
+ await progress.step('signPublicEvent', () => this.eqty.sign(new Event({
423
+ '@context': 'register_msg.json',
429
424
  ...runtimeEvent,
430
425
  }).addTo(chain)));
431
426
  await this.store(chain, nextState);
432
- const confirmedRecord = this.replayRecord(indexedEvent, "confirmed", existing?.status === "pending"
427
+ const confirmedRecord = this.replayRecord(indexedEvent, 'confirmed', existing?.status === 'pending'
433
428
  ? this.mergeReplayRecordSources(existing.sources, source)
434
429
  : [source]);
435
430
  await this.stateStore.set(replayStoreId, replayKey, confirmedRecord);
436
431
  base.appliedEvents.push(indexedEvent);
437
432
  base.appliedReplayKeys.push(replayKey);
438
433
  base.appliedPublicEvents.push({ replayKey, event: indexedEvent });
439
- if (existing?.status === "pending") {
434
+ if (existing?.status === 'pending') {
440
435
  base.confirmedPendingPublicEvents.push(confirmedRecord);
441
436
  }
442
437
  }
@@ -444,7 +439,7 @@ export default class OwnableService {
444
439
  base.ignoredPublicEvents.push({
445
440
  replayKey,
446
441
  event: indexedEvent,
447
- reason: "register_failed",
442
+ reason: 'register_failed',
448
443
  cause,
449
444
  });
450
445
  }
@@ -456,14 +451,15 @@ export default class OwnableService {
456
451
  };
457
452
  }
458
453
  async execute(chain, msg, stateDump, onProgress, attachments = []) {
454
+ const progress = new ProgressService(onProgress);
459
455
  const info = { sender: this.eqty.address, funds: [] };
460
456
  const { state: newStateDump } = await this.rpc(chain.id).execute(msg, info, stateDump);
461
- delete msg["@context"]; // Shouldn't be set
462
- const event = new Event({ "@context": "execute_msg.json", ...msg }).addTo(chain);
457
+ delete msg['@context']; // Shouldn't be set
458
+ const event = new Event({ '@context': 'execute_msg.json', ...msg }).addTo(chain);
463
459
  for (const attachment of attachments) {
464
- event.addAttachment(attachment.name, new Uint8Array(await attachment.file.arrayBuffer()), attachment.file.type || "application/octet-stream");
460
+ event.addAttachment(attachment.name, new Uint8Array(await attachment.file.arrayBuffer()), attachment.file.type || 'application/octet-stream');
465
461
  }
466
- await withProgress(onProgress)("signEvent", () => this.eqty.sign(event));
462
+ await progress.step('signEvent', () => this.eqty.sign(event));
467
463
  // Store without submitting anchors yet; submission is controlled by caller
468
464
  await this.store(chain, newStateDump);
469
465
  return newStateDump;
@@ -473,17 +469,18 @@ export default class OwnableService {
473
469
  return this.applyIndexedPublicEventStream(chain, [publicEvent], onProgress);
474
470
  }
475
471
  async emitPublicEvent(chain, eventType, payload, onProgress) {
472
+ const progress = new ProgressService(onProgress);
476
473
  const stateDump = await this.eventChains.getStateDump(chain.id, chain.state.hex);
477
474
  if (!stateDump)
478
- throw Error("State mismatch for emit public event");
479
- const encodedPayload = await withProgress(onProgress)("encodePublicEvent", () => this.rpc(chain.id).encodePublicEvent(eventType, encode(payload)));
475
+ throw Error('State mismatch for emit public event');
476
+ const encodedPayload = await progress.step('encodePublicEvent', () => this.rpc(chain.id).encodePublicEvent(eventType, encode(payload)));
480
477
  const subjectId = this.publicEventSubjectId(chain);
481
478
  const replayStoreId = await this.ensureReplayStore(chain.id);
482
479
  const provisionalPendingRecord = this.provisionalPublicEventRecord(chain, eventType, encodedPayload);
483
480
  await this.stateStore.set(replayStoreId, provisionalPendingRecord.replayKey, provisionalPendingRecord);
484
481
  let publicEvent;
485
482
  try {
486
- publicEvent = await withProgress(onProgress)("emitPublicEvent", () => this.eqty.emitPublicEvent(subjectId, eventType, encodedPayload));
483
+ publicEvent = await progress.step('emitPublicEvent', () => this.eqty.emitPublicEvent(subjectId, eventType, encodedPayload));
487
484
  }
488
485
  catch (cause) {
489
486
  await this.stateStore.delete(replayStoreId, provisionalPendingRecord.replayKey);
@@ -494,9 +491,9 @@ export default class OwnableService {
494
491
  const result = this.emptyReplayAttemptResult(stateDump);
495
492
  result.complete = false;
496
493
  result.ignoredPublicEvents.push({
497
- replayKey: publicEventReplayKey(this.toRegisterRuntimeEvent(publicEvent)),
494
+ replayKey: this.replay.key(this.toRegisterRuntimeEvent(publicEvent)),
498
495
  event: this.toRegisterRuntimeEvent(publicEvent),
499
- reason: "invalid_subject_id",
496
+ reason: 'invalid_subject_id',
500
497
  cause: {
501
498
  expectedSubjectId: subjectId,
502
499
  receivedSubjectId: publicEvent.subjectId,
@@ -505,7 +502,7 @@ export default class OwnableService {
505
502
  return result;
506
503
  }
507
504
  const runtimeEvent = this.toRegisterRuntimeEvent(publicEvent);
508
- const pendingRecord = this.replayRecord(runtimeEvent, "pending", ["local"]);
505
+ const pendingRecord = this.replayRecord(runtimeEvent, 'pending', ['local']);
509
506
  await this.stateStore.delete(replayStoreId, provisionalPendingRecord.replayKey);
510
507
  await this.stateStore.set(replayStoreId, pendingRecord.replayKey, pendingRecord);
511
508
  const result = this.emptyReplayAttemptResult(stateDump);
@@ -515,7 +512,7 @@ export default class OwnableService {
515
512
  async submitAnchors(onProgress) {
516
513
  if (!this.anchoring)
517
514
  return undefined;
518
- return await withProgress(onProgress)("anchor", () => this.eqty.submitAnchors());
515
+ return await new ProgressService(onProgress).step('anchor', () => this.eqty.submitAnchors());
519
516
  }
520
517
  async canConsume(consumer, info) {
521
518
  if (!this.packages.info(consumer.package).isConsumer)
@@ -533,11 +530,12 @@ export default class OwnableService {
533
530
  return result === true;
534
531
  }
535
532
  catch (error) {
536
- this.logger.warn("Error checking canConsume:", error);
533
+ this.logger.warn('Error checking canConsume:', error);
537
534
  return false;
538
535
  }
539
536
  }
540
537
  async consume(consumer, consumable, onProgress) {
538
+ const progress = new ProgressService(onProgress);
541
539
  const info = {
542
540
  sender: this.eqty.address,
543
541
  funds: [],
@@ -546,11 +544,11 @@ export default class OwnableService {
546
544
  const consumerState = await this.eventChains.getStateDump(consumer.id, consumer.state.hex);
547
545
  const consumableState = await this.eventChains.getStateDump(consumable.id, consumable.state.hex);
548
546
  if (!consumerState || !consumableState)
549
- throw Error("State mismatch for consume");
547
+ throw Error('State mismatch for consume');
550
548
  const { events, state: consumableStateDump } = await this.rpc(consumable.id).execute(consumeMessage, info, consumableState);
551
- const consumeEvent = events.find((event) => event.type === "consume");
549
+ const consumeEvent = events.find((event) => event.type === 'consume');
552
550
  if (!consumeEvent)
553
- throw Error("No consume event emitted");
551
+ throw Error('No consume event emitted');
554
552
  const consumableInfo = (await this.rpc(consumable.id).query({ get_info: {} }, consumableStateDump));
555
553
  const ingestEvent = {
556
554
  source: {
@@ -562,15 +560,15 @@ export default class OwnableService {
562
560
  eventType: consumeEvent.type,
563
561
  };
564
562
  const { state: consumerStateDump } = await this.rpc(consumer.id).ingest(ingestEvent, info, consumerState);
565
- await withProgress(onProgress)("signConsumableEvent", () => this.eqty.sign(new Event({ "@context": "execute_msg.json", ...consumeMessage }).addTo(consumable)));
566
- await withProgress(onProgress)("signConsumerEvent", () => this.eqty.sign(new Event({
567
- "@context": "ingest_msg.json",
563
+ await progress.step('signConsumableEvent', () => this.eqty.sign(new Event({ '@context': 'execute_msg.json', ...consumeMessage }).addTo(consumable)));
564
+ await progress.step('signConsumerEvent', () => this.eqty.sign(new Event({
565
+ '@context': 'ingest_msg.json',
568
566
  ...ingestEvent,
569
567
  }).addTo(consumer)));
570
568
  // Store both chains; emit anchor progress only once to represent anchoring both
571
569
  // Queue anchors for both chains without submitting yet
572
570
  await this.store(consumable, consumableStateDump);
573
- await this.stateStore.set(`ownable:${consumable.id}`, "isConsumed", true);
571
+ await this.stateStore.set(`ownable:${consumable.id}`, 'isConsumed', true);
574
572
  await this.store(consumer, consumerStateDump);
575
573
  // Submit a single anchor tx for both
576
574
  await this.submitAnchors(onProgress);
@@ -600,8 +598,7 @@ export default class OwnableService {
600
598
  created: new Date(),
601
599
  latestHash: chain.latestHash.hex,
602
600
  keywords: this.packages.info(pkg).keywords,
603
- uniqueMessageHash: this.packages.info(pkg, uniqueMessageHash)
604
- .uniqueMessageHash,
601
+ uniqueMessageHash: this.packages.info(pkg, uniqueMessageHash).uniqueMessageHash,
605
602
  };
606
603
  const stores = [storeId];
607
604
  if (stateDump)
@@ -623,17 +620,16 @@ export default class OwnableService {
623
620
  }
624
621
  catch (error) {
625
622
  // If setAll fails, attempt to clean up
626
- this.logger.error("Failed to set data, cleaning up stores...");
623
+ this.logger.error('Failed to set data, cleaning up stores...');
627
624
  await Promise.all(stores.map((store) => this.stateStore.deleteStore(store).catch(() => { })));
628
625
  throw error;
629
626
  }
630
627
  const verifyData = await Promise.all([
631
- this.stateStore.get(storeId, "state"),
628
+ this.stateStore.get(storeId, 'state'),
632
629
  stateDump ? this.stateStore.getAll(stateStoreId) : Promise.resolve(null),
633
630
  ]);
634
- if (verifyData[0] !== chainData.state ||
635
- (stateDump && !verifyData[1]?.length)) {
636
- throw new Error("Data verification failed after write");
631
+ if (verifyData[0] !== chainData.state || (stateDump && !verifyData[1]?.length)) {
632
+ throw new Error('Data verification failed after write');
637
633
  }
638
634
  });
639
635
  }
@@ -642,7 +638,7 @@ export default class OwnableService {
642
638
  const storeId = `ownable:${chain.id}`;
643
639
  const stateStoreId = `${storeId}.state`;
644
640
  await this.retryOperation(async () => {
645
- const storedState = await this.stateStore.get(storeId, "state");
641
+ const storedState = await this.stateStore.get(storeId, 'state');
646
642
  if (storedState === chain.state)
647
643
  return;
648
644
  const data = {
@@ -654,7 +650,7 @@ export default class OwnableService {
654
650
  [stateStoreId]: new Map(stateDump),
655
651
  };
656
652
  if (this.anchoring) {
657
- const previousHash = await this.stateStore.get(`ownable:${chain.id}`, "latestHash");
653
+ const previousHash = await this.stateStore.get(`ownable:${chain.id}`, 'latestHash');
658
654
  anchors.push(...chain.startingAfter(Binary.fromHex(previousHash)).anchorMap);
659
655
  }
660
656
  if (anchors.length > 0) {
@@ -667,9 +663,9 @@ export default class OwnableService {
667
663
  await this.createSnapshot(chain, stateDump, eventCount - 1);
668
664
  }
669
665
  // Verify write
670
- const verifyState = await this.stateStore.get(storeId, "state");
666
+ const verifyState = await this.stateStore.get(storeId, 'state');
671
667
  if (verifyState !== chain.state.hex) {
672
- throw new Error("State verification failed after write");
668
+ throw new Error('State verification failed after write');
673
669
  }
674
670
  });
675
671
  }
@@ -682,10 +678,10 @@ export default class OwnableService {
682
678
  async zip(chain) {
683
679
  const firstEvent = chain.events[0];
684
680
  if (!firstEvent)
685
- throw new Error("Cannot zip an empty ownable chain");
681
+ throw new Error('Cannot zip an empty ownable chain');
686
682
  const packageCid = firstEvent.parsedData.package;
687
683
  const zip = await this.packages.zip(packageCid);
688
- zip.file("chain.json", JSON.stringify(chain.toJSON()));
684
+ zip.file('chain.json', JSON.stringify(chain.toJSON()));
689
685
  return zip;
690
686
  }
691
687
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Ownable.service.js","sourceRoot":"","sources":["../../../../../core/src/services/Ownable.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Ownable.service.js","sourceRoot":"","sources":["../../../../../core/src/services/Ownable.service.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import type { KVStore } from "../interfaces/core.js";
2
- import type { RelayPollingClient } from "../types/Polling.js";
3
- import type { LoggerLike } from "../logger.js";
1
+ import type { KVStore } from '../interfaces/core.js';
2
+ import type { RelayPollingClient } from '../types/Polling.js';
3
+ import type { LoggerLike } from '../logger.js';
4
4
  /**
5
5
  * @deprecated Relay polling is legacy and will be removed in a future major version.
6
6
  * Prefer hub-backed notification flows.