@calimero-network/mero-js 2.2.0 → 2.3.0

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.
package/dist/index.d.ts CHANGED
@@ -8,9 +8,10 @@ export type { AuthCallbackResult, AuthLoginOptions } from './auth';
8
8
  export { MemoryTokenStore, LocalStorageTokenStore } from './token-store';
9
9
  export type { TokenStore } from './token-store';
10
10
  export { RpcClient, RpcError } from './rpc';
11
+ export type { MigrateMyEntriesSummary } from './rpc';
11
12
  export type { ExecuteParams } from './rpc';
12
13
  export { SseClient, WsClient } from './events';
13
- export type { SseEventData, WsEventData } from './events';
14
+ export type { SseEventData, WsEventData, AppVersionChangedEvent } from './events';
14
15
  export * from './cloud';
15
16
  export * from './capabilities';
16
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACjD,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAGzD,cAAc,eAAe,CAAC;AAG9B,cAAc,YAAY,CAAC;AAG3B,cAAc,aAAa,CAAC;AAG5B,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAC9D,YAAY,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAGnE,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACzE,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAGhD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,YAAY,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAG3C,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAC/C,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG1D,cAAc,SAAS,CAAC;AAGxB,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACjD,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAGzD,cAAc,eAAe,CAAC;AAG9B,cAAc,YAAY,CAAC;AAG3B,cAAc,aAAa,CAAC;AAG5B,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAC9D,YAAY,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAGnE,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACzE,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAGhD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,YAAY,EAAE,uBAAuB,EAAE,MAAM,OAAO,CAAC;AACrD,YAAY,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAG3C,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAC/C,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAGlF,cAAc,SAAS,CAAC;AAGxB,cAAc,gBAAgB,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,uEAAuE;AAEvE,iBAAiB;AACjB,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAGjD,2CAA2C;AAC3C,cAAc,eAAe,CAAC;AAE9B,kBAAkB;AAClB,cAAc,YAAY,CAAC;AAE3B,mBAAmB;AACnB,cAAc,aAAa,CAAC;AAE5B,iBAAiB;AACjB,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAG9D,cAAc;AACd,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAGzE,aAAa;AACb,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAG5C,2BAA2B;AAC3B,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAG/C,uCAAuC;AACvC,cAAc,SAAS,CAAC;AAExB,gDAAgD;AAChD,cAAc,gBAAgB,CAAC;AAE/B,YAAY"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,uEAAuE;AAEvE,iBAAiB;AACjB,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAGjD,2CAA2C;AAC3C,cAAc,eAAe,CAAC;AAE9B,kBAAkB;AAClB,cAAc,YAAY,CAAC;AAE3B,mBAAmB;AACnB,cAAc,aAAa,CAAC;AAE5B,iBAAiB;AACjB,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAG9D,cAAc;AACd,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAGzE,aAAa;AACb,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAI5C,2BAA2B;AAC3B,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAG/C,uCAAuC;AACvC,cAAc,SAAS,CAAC;AAExB,gDAAgD;AAChD,cAAc,gBAAgB,CAAC;AAE/B,YAAY"}
package/dist/index.mjs CHANGED
@@ -1005,6 +1005,22 @@ var AdminApiClient = class {
1005
1005
  await this.httpClient.get(`/admin-api/groups/${groupId}/upgrade/status`)
1006
1006
  );
1007
1007
  }
1008
+ /**
1009
+ * The operator-facing "have all peers migrated?" rollup for a namespace.
1010
+ * The handler serializes the payload directly, so there is no `{ data }`
1011
+ * envelope to unwrap here (unlike most admin reads).
1012
+ */
1013
+ async getMigrationStatus(namespaceId) {
1014
+ const id = encodeURIComponent(namespaceId);
1015
+ return this.httpClient.get(`/admin-api/groups/${id}/migration-status`);
1016
+ }
1017
+ /** Per-group cascade-migration snapshots for a namespace. */
1018
+ async getCascadeStatus(namespaceId) {
1019
+ const id = encodeURIComponent(namespaceId);
1020
+ return unwrap(
1021
+ await this.httpClient.get(`/admin-api/groups/${id}/cascade-status`)
1022
+ );
1023
+ }
1008
1024
  async retryGroupUpgrade(groupId, request) {
1009
1025
  return unwrap(
1010
1026
  await this.httpClient.post(
@@ -1020,7 +1036,10 @@ var AdminApiClient = class {
1020
1036
  await this.httpClient.post(`/admin-api/groups/${parentGroupId}/unnest`, request);
1021
1037
  }
1022
1038
  async listSubgroups(groupId) {
1023
- return unwrap(await this.httpClient.get(`/admin-api/groups/${groupId}/subgroups`));
1039
+ const response = await this.httpClient.get(
1040
+ `/admin-api/groups/${groupId}/subgroups`
1041
+ );
1042
+ return response.subgroups ?? response.data ?? [];
1024
1043
  }
1025
1044
  async detachContextFromGroup(groupId, contextId, request) {
1026
1045
  await this.httpClient.post(`/admin-api/groups/${groupId}/contexts/${contextId}/remove`, request ?? {});
@@ -1200,6 +1219,19 @@ var RpcClient = class {
1200
1219
  }
1201
1220
  return response.result;
1202
1221
  }
1222
+ /**
1223
+ * One-tap owner-driven convert: re-signs the caller's identity-gated entries
1224
+ * to the current schema. The export converts all of the caller's
1225
+ * below-target entries in a single sweep, so this issues one call and returns
1226
+ * the resulting summary — it does not loop.
1227
+ */
1228
+ async migrateMyEntries(contextId) {
1229
+ return this.execute({ contextId, method: "migrate_my_entries" });
1230
+ }
1231
+ /** Read-only count of the caller's entries still below the target schema. */
1232
+ async countMyPending(contextId) {
1233
+ return this.execute({ contextId, method: "count_my_pending" });
1234
+ }
1203
1235
  };
1204
1236
 
1205
1237
  // src/events/sse.ts
@@ -1230,6 +1262,20 @@ var SseClient = class {
1230
1262
  if (idx !== -1) arr.splice(idx, 1);
1231
1263
  }
1232
1264
  }
1265
+ /**
1266
+ * Typed convenience over the generic `'event'` stream: invokes `handler` only
1267
+ * for `AppVersionChanged` context events, with the payload already parsed.
1268
+ * Returns an unsubscribe closure (so callers need not retain the listener).
1269
+ */
1270
+ onAppVersionChanged(handler) {
1271
+ const listener = (ev) => {
1272
+ const d = ev.data;
1273
+ if (d?.type !== "AppVersionChanged") return;
1274
+ handler({ contextId: ev.contextId, fromVersion: d.data?.fromVersion, toVersion: d.data?.toVersion });
1275
+ };
1276
+ this.on("event", listener);
1277
+ return () => this.off("event", listener);
1278
+ }
1233
1279
  emit(event, arg) {
1234
1280
  const key = event;
1235
1281
  if (key in this.listeners) {