@interop/was-client 0.100.1 → 0.101.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.
Files changed (58) hide show
  1. package/README.md +41 -9
  2. package/dist/Collection.d.ts +21 -5
  3. package/dist/Collection.d.ts.map +1 -1
  4. package/dist/Collection.js +38 -31
  5. package/dist/Collection.js.map +1 -1
  6. package/dist/Space.d.ts +94 -22
  7. package/dist/Space.d.ts.map +1 -1
  8. package/dist/Space.js +162 -79
  9. package/dist/Space.js.map +1 -1
  10. package/dist/WasClient.d.ts.map +1 -1
  11. package/dist/WasClient.js +2 -3
  12. package/dist/WasClient.js.map +1 -1
  13. package/dist/edv/EdvCodec.d.ts.map +1 -1
  14. package/dist/edv/EdvCodec.js +7 -4
  15. package/dist/edv/EdvCodec.js.map +1 -1
  16. package/dist/edv/docCipher.js +2 -2
  17. package/dist/edv/docCipher.js.map +1 -1
  18. package/dist/internal/codec.d.ts +11 -1
  19. package/dist/internal/codec.d.ts.map +1 -1
  20. package/dist/internal/codec.js +11 -1
  21. package/dist/internal/codec.js.map +1 -1
  22. package/dist/internal/describe.d.ts +6 -0
  23. package/dist/internal/describe.d.ts.map +1 -1
  24. package/dist/internal/describe.js +18 -1
  25. package/dist/internal/describe.js.map +1 -1
  26. package/dist/internal/grant.js +1 -1
  27. package/dist/internal/grant.js.map +1 -1
  28. package/dist/internal/indexSchema.d.ts +19 -4
  29. package/dist/internal/indexSchema.d.ts.map +1 -1
  30. package/dist/internal/indexSchema.js +33 -6
  31. package/dist/internal/indexSchema.js.map +1 -1
  32. package/dist/internal/paths.d.ts +7 -3
  33. package/dist/internal/paths.d.ts.map +1 -1
  34. package/dist/internal/paths.js +7 -3
  35. package/dist/internal/paths.js.map +1 -1
  36. package/dist/internal/request.d.ts +47 -14
  37. package/dist/internal/request.d.ts.map +1 -1
  38. package/dist/internal/request.js +64 -44
  39. package/dist/internal/request.js.map +1 -1
  40. package/dist/internal/revoke.d.ts +1 -65
  41. package/dist/internal/revoke.d.ts.map +1 -1
  42. package/dist/internal/revoke.js +5 -136
  43. package/dist/internal/revoke.js.map +1 -1
  44. package/dist/internal/rootCapability.d.ts +66 -0
  45. package/dist/internal/rootCapability.d.ts.map +1 -0
  46. package/dist/internal/rootCapability.js +144 -0
  47. package/dist/internal/rootCapability.js.map +1 -0
  48. package/dist/internal/withCodec.d.ts +19 -4
  49. package/dist/internal/withCodec.d.ts.map +1 -1
  50. package/dist/internal/withCodec.js +18 -2
  51. package/dist/internal/withCodec.js.map +1 -1
  52. package/dist/internal/write.js +13 -9
  53. package/dist/internal/write.js.map +1 -1
  54. package/dist/paths.d.ts +5 -3
  55. package/dist/paths.d.ts.map +1 -1
  56. package/dist/paths.js +5 -3
  57. package/dist/paths.js.map +1 -1
  58. package/package.json +1 -1
@@ -5,13 +5,40 @@ import { ValidationError } from '../errors.js';
5
5
  */
6
6
  export const INDEX_SCHEMA_PROPERTY = 'indexSchema';
7
7
  /**
8
- * The schema of a collection that has declared nothing yet.
8
+ * The schema of a collection that has declared nothing yet. Minted fresh on
9
+ * every call rather than shared: a codec installs the schema it is handed by
10
+ * reference, so one shared empty array mutated through any handle would reach
11
+ * every undeclared collection in the process.
12
+ *
13
+ * @returns {IndexSchema}
9
14
  */
10
- export const EMPTY_INDEX_SCHEMA = { revision: 0, indexes: [] };
15
+ export function emptyIndexSchema() {
16
+ return { revision: 0, indexes: [] };
17
+ }
18
+ /**
19
+ * A deep copy of a schema: new entry objects, and a compound entry's
20
+ * `attribute` array copied too. A codec installs the copy rather than the
21
+ * object it was handed, and the handle layer hands out copies, so no caller
22
+ * holds a reference into the schema a codec blinds and queries by.
23
+ *
24
+ * @param schema {IndexSchema}
25
+ * @returns {IndexSchema}
26
+ */
27
+ export function cloneIndexSchema(schema) {
28
+ return {
29
+ revision: schema.revision,
30
+ indexes: schema.indexes.map(entry => ({
31
+ ...entry,
32
+ attribute: Array.isArray(entry.attribute)
33
+ ? [...entry.attribute]
34
+ : entry.attribute
35
+ }))
36
+ };
37
+ }
11
38
  /**
12
39
  * Normalizes an attribute declaration: a one-element array declares the same
13
40
  * simple index as the bare string (the same collapse the underlying index
14
- * helper applies), so the two spellings cannot produce two schema entries.
41
+ * helper applies), so the two forms cannot produce two schema entries.
15
42
  *
16
43
  * @param attribute {string | string[]}
17
44
  * @returns {string | string[]}
@@ -109,7 +136,7 @@ export function mergeIndexDeclarations({ schema, requested }) {
109
136
  }
110
137
  /**
111
138
  * Reads the persisted schema out of a decoded metadata `custom` object,
112
- * returning {@link EMPTY_INDEX_SCHEMA} when none is stored (or when what is
139
+ * returning {@link emptyIndexSchema} when none is stored (or when what is
113
140
  * stored is malformed -- a foreign writer's value must not crash a read path,
114
141
  * and treating it as "nothing declared" makes the next `declareIndex` rewrite
115
142
  * it).
@@ -120,11 +147,11 @@ export function mergeIndexDeclarations({ schema, requested }) {
120
147
  export function readIndexSchema(custom) {
121
148
  const stored = custom?.[INDEX_SCHEMA_PROPERTY];
122
149
  if (stored === null || typeof stored !== 'object') {
123
- return EMPTY_INDEX_SCHEMA;
150
+ return emptyIndexSchema();
124
151
  }
125
152
  const { revision, indexes } = stored;
126
153
  if (typeof revision !== 'number' || !Array.isArray(indexes)) {
127
- return EMPTY_INDEX_SCHEMA;
154
+ return emptyIndexSchema();
128
155
  }
129
156
  const valid = indexes.filter(entry => entry !== null &&
130
157
  typeof entry === 'object' &&
@@ -1 +1 @@
1
- {"version":3,"file":"indexSchema.js","sourceRoot":"","sources":["../../src/internal/indexSchema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"indexSchema.js","sourceRoot":"","sources":["../../src/internal/indexSchema.ts"],"names":[],"mappings":"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"}
@@ -230,7 +230,11 @@ export declare function spaceLinksetUrl({ spaceUrl }: {
230
230
  }): string;
231
231
  /**
232
232
  * `{spaceUrl}replicas` -- the Space's replica registrations: `GET` lists them
233
- * and `POST` registers one. Controller-only, both forms.
233
+ * and `POST` registers one. Both take the controller's capability or a
234
+ * delegated one whose chain roots in the Space's root capability. A grant on
235
+ * the route names this bare URL as its `invocationTarget`, with no trailing
236
+ * slash: the server matches it exactly, and the registration and status
237
+ * URLs beneath it are reached through that one target.
234
238
  *
235
239
  * @param options {object}
236
240
  * @param options.spaceUrl {string}
@@ -240,8 +244,8 @@ export declare function spaceReplicasUrl({ spaceUrl }: {
240
244
  spaceUrl: string;
241
245
  }): string;
242
246
  /**
243
- * `{spaceUrl}replicas/{replicaId}` -- one replica registration (read and
244
- * delete by id).
247
+ * `{spaceUrl}replicas/{replicaId}` -- one replica registration (read,
248
+ * replace and delete by id).
245
249
  *
246
250
  * @param options {object}
247
251
  * @param options.spaceUrl {string}
@@ -1 +1 @@
1
- {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../src/internal/paths.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../src/internal/paths.ts"],"names":[],"mappings":"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"}
@@ -443,7 +443,11 @@ export function spaceLinksetUrl({ spaceUrl }) {
443
443
  }
444
444
  /**
445
445
  * `{spaceUrl}replicas` -- the Space's replica registrations: `GET` lists them
446
- * and `POST` registers one. Controller-only, both forms.
446
+ * and `POST` registers one. Both take the controller's capability or a
447
+ * delegated one whose chain roots in the Space's root capability. A grant on
448
+ * the route names this bare URL as its `invocationTarget`, with no trailing
449
+ * slash: the server matches it exactly, and the registration and status
450
+ * URLs beneath it are reached through that one target.
447
451
  *
448
452
  * @param options {object}
449
453
  * @param options.spaceUrl {string}
@@ -453,8 +457,8 @@ export function spaceReplicasUrl({ spaceUrl }) {
453
457
  return `${canonicalSpaceUrl(spaceUrl)}replicas`;
454
458
  }
455
459
  /**
456
- * `{spaceUrl}replicas/{replicaId}` -- one replica registration (read and
457
- * delete by id).
460
+ * `{spaceUrl}replicas/{replicaId}` -- one replica registration (read,
461
+ * replace and delete by id).
458
462
  *
459
463
  * @param options {object}
460
464
  * @param options.spaceUrl {string}
@@ -1 +1 @@
1
- {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/internal/paths.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,oBAAoB,EACrB,MAAM,eAAe,CAAA;AAEtB;;;;;;;;;;GAUG;AACH,SAAS,aAAa,CAAC,OAAe;IACpC,IAAI,OAAO,KAAK,EAAE,IAAI,OAAO,KAAK,GAAG,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QAC1D,MAAM,IAAI,eAAe,CACvB,cAAc,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,+BAA+B;YAClE,qDAAqD,CACxD,CAAA;IACH,CAAC;AACH,CAAC;AAED,SAAS,MAAM,CAAC,OAAe;IAC7B,aAAa,CAAC,OAAO,CAAC,CAAA;IACtB,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAA;AACpC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,kBAAkB,CAAC,EAC1B,YAAY,EACZ,UAAU,EAIX;IACC,iBAAiB,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,CAAA;IACvE,OAAO,MAAM,CAAC,YAAY,CAAC,CAAA;AAC7B,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,gBAAgB,CAAC,UAAkB;IAC1C,iBAAiB,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAA;IACvD,OAAO,MAAM,CAAC,UAAU,CAAC,CAAA;AAC3B,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC9C,IAAI,MAAW,CAAA;IACf,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAChE,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,GAAW;IACpC,MAAM,MAAM,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAA;IACxC,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,MAAM,KAAK,EAAE,IAAI,MAAM,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;QAClE,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,kBAAkB,CAAC,EAC1B,GAAG,EACH,IAAI,EAIL;IACC,MAAM,MAAM,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAA;IACrC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,MAAM,IAAI,eAAe,CACvB,IAAI,GAAG,cAAc,IAAI,6CAA6C;YACpE,uBAAuB,CAC1B,CAAA;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IACpD,IAAI,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,eAAe,CACvB,IAAI,GAAG,cAAc,IAAI,kCAAkC,CAC5D,CAAA;IACH,CAAC;IACD,OAAO,GAAG,MAAM,CAAC,MAAM,GAAG,QAAQ,GAAG,CAAA;AACvC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,SAAiB;IAC5C,2EAA2E;IAC3E,uDAAuD;IACvD,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IACrE,OAAO,SAAS,KAAK,SAAS,CAAC,MAAM,GAAG,CAAC,CAAA;AAC3C,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,sBAAsB,CAAC,aAAqB;IAC1D,OAAO,kBAAkB,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAA;AAC5E,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CAAC,EACpC,aAAa,EAGd;IACC,OAAO,GAAG,sBAAsB,CAAC,aAAa,CAAC,SAAS,CAAA;AAC1D,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAClC,aAAa,EAGd;IACC,OAAO,GAAG,sBAAsB,CAAC,aAAa,CAAC,SAAS,CAAA;AAC1D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAAC,EAC3B,aAAa,EACb,OAAO,EAIR;IACC,OAAO,GAAG,sBAAsB,CAAC,aAAa,CAAC,SAAS,MAAM,CAAC,OAAO,CAAC,GAAG,CAAA;AAC5E,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,MAAM,MAAM,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAA;IACrC,MAAM,QAAQ,GAAG,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;IAClE,MAAM,IAAI,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5B,yEAAyE;IACzE,uEAAuE;IACvE,yCAAyC;IACzC,MAAM,OAAO,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAA;IAC3C,MAAM,aAAa,GACjB,OAAO;QACP,IAAI,KAAK,QAAQ;QACjB,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;IACzD,IAAI,MAAM,KAAK,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACtC,MAAM,IAAI,eAAe,CACvB,IAAI,GAAG,wDAAwD;YAC7D,uDAAuD;YACvD,2DAA2D,CAC9D,CAAA;IACH,CAAC;IACD,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACjD,OAAO,GAAG,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAA;AAC1E,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAAC,aAAqB;IAItD,MAAM,SAAS,GAAG,kBAAkB,CAAC;QACnC,GAAG,EAAE,aAAa;QAClB,IAAI,EAAE,gBAAgB;KACvB,CAAC,CAAA;IACF,IAAI,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,eAAe,CACvB,IAAI,aAAa,uDAAuD;YACtE,sCAAsC,CACzC,CAAA;IACH,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAA;IACjC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAC3D,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,EAAY,CAAA;IAC1C,IAAI,YAAoB,CAAA;IACxB,IAAI,CAAC;QACH,YAAY,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAA;IAC9C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,eAAe,CACvB,IAAI,aAAa,qDAAqD;YACpE,iCAAiC,EACnC,EAAE,KAAK,EAAE,GAAG,EAAE,CACf,CAAA;IACH,CAAC;IACD,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;IACpE,OAAO,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,EAAE,EAAE,YAAY,EAAE,CAAA;AACjE,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAgB;IAChD,MAAM,SAAS,GAAG,kBAAkB,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAA;IAC1E,wEAAwE;IACxE,0EAA0E;IAC1E,wEAAwE;IACxE,qBAAqB,CAAC,SAAS,CAAC,CAAA;IAChC,OAAO,SAAS,CAAA;AAClB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,YAAY,CAAC,QAAgB;IAC3C,MAAM,EAAE,GAAG,qBAAqB,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAA;IAC7D,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;QACrB,MAAM,IAAI,eAAe,CACvB,IAAI,QAAQ,0DAA0D;YACpE,wDAAwD,CAC3D,CAAA;IACH,CAAC;IACD,OAAO,EAAE,CAAA;AACX,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,qBAAqB,CAAC,SAAiB;IACrD,IAAI,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC;QAC5B,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,EAAY,CAAA;IACpE,IAAI,CAAC;QACH,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAA;IACpC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,eAAe,CACvB,IAAI,SAAS,kDAAkD;YAC7D,iCAAiC,EACnC,EAAE,KAAK,EAAE,GAAG,EAAE,CACf,CAAA;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,YAAY,CAAC,EAAE,QAAQ,EAAwB;IAC7D,OAAO,GAAG,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAA;AAC7C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,EAAE,QAAQ,EAAwB;IAC/D,OAAO,GAAG,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAA;AAC/C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,EAAE,QAAQ,EAAwB;IAC/D,OAAO,GAAG,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAA;AAC/C,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAAE,QAAQ,EAAwB;IACjE,OAAO,GAAG,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAA;AACjD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAAC,EACnC,QAAQ,EACR,SAAS,EAIV;IACC,OAAO,GAAG,gBAAgB,CAAC,EAAE,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE,CAAA;AACjE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,EAAE,QAAQ,EAAwB;IAC/D,OAAO,GAAG,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAA;AAC/C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,EAAE,QAAQ,EAAwB;IAC/D,OAAO,GAAG,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAA;AAC/C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,EAAE,QAAQ,EAAwB;IAChE,OAAO,GAAG,iBAAiB,CAAC,QAAQ,CAAC,SAAS,CAAA;AAChD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAAE,QAAQ,EAAwB;IACjE,OAAO,GAAG,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAA;AACjD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,sBAAsB,CAAC,EACrC,QAAQ,EACR,SAAS,EAIV;IACC,OAAO,GAAG,gBAAgB,CAAC,EAAE,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE,CAAA;AACjE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAC/B,QAAQ,EACR,SAAS,EAIV;IACC,OAAO,GAAG,sBAAsB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,SAAS,CAAA;AACpE,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAAC,EACjC,QAAQ,EACR,YAAY,EAIb;IACC,OAAO,GAAG,iBAAiB,CAAC,QAAQ,CAAC,qBAAqB,MAAM,CAAC,YAAY,CAAC,EAAE,CAAA;AAClF,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,gBAAgB,CAAC,EACxB,QAAQ,EACR,YAAY,EAIb;IACC,MAAM,SAAS,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IAC7C,yEAAyE;IACzE,yEAAyE;IACzE,8DAA8D;IAC9D,MAAM,SAAS,GAAG,kBAAkB,CAAC;QACnC,YAAY;QACZ,UAAU,EAAE,YAAY,CAAC,SAAS,CAAC;KACpC,CAAC,CAAA;IACF,OAAO,GAAG,SAAS,GAAG,SAAS,EAAE,CAAA;AACnC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,aAAa,CAAC,EAC5B,QAAQ,EACR,YAAY,EAIb;IACC,OAAO,GAAG,gBAAgB,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,GAAG,CAAA;AAC3D,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAClC,QAAQ,EACR,YAAY,EAIb;IACC,OAAO,GAAG,gBAAgB,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,SAAS,CAAA;AACjE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAAC,EACnC,QAAQ,EACR,YAAY,EAIb;IACC,OAAO,GAAG,gBAAgB,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,UAAU,CAAA;AAClE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAAC,EACnC,QAAQ,EACR,YAAY,EAIb;IACC,OAAO,GAAG,gBAAgB,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,UAAU,CAAA;AAClE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB,CAAC,EACjC,QAAQ,EACR,YAAY,EAIb;IACC,OAAO,GAAG,gBAAgB,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,QAAQ,CAAA;AAChE,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAChC,QAAQ,EACR,YAAY,EAIb;IACC,OAAO,GAAG,gBAAgB,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,OAAO,CAAA;AAC/D,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAC/B,QAAQ,EACR,YAAY,EAIb;IACC,OAAO,GAAG,iBAAiB,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,MAAM,CAAA;AAC/D,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB,CAAC,EACjC,QAAQ,EACR,YAAY,EAIb;IACC,OAAO,GAAG,gBAAgB,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,QAAQ,CAAA;AAChE,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,EAC1B,QAAQ,EACR,YAAY,EACZ,UAAU,EAKX;IACC,OAAO,GAAG,gBAAgB,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,IAAI,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAA;AAC1F,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,EAC9B,QAAQ,EACR,YAAY,EACZ,UAAU,EAKX;IACC,OAAO,GAAG,WAAW,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,OAAO,CAAA;AACtE,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAChC,QAAQ,EACR,YAAY,EACZ,UAAU,EAKX;IACC,OAAO,GAAG,WAAW,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,SAAS,CAAA;AACxE,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAC/B,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,UAAU,EAMX;IACC,OAAO,GAAG,WAAW,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,WAAW,UAAU,EAAE,CAAA;AACtF,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAChC,QAAQ,EACR,YAAY,EACZ,UAAU,EAKX;IACC,OAAO,GAAG,WAAW,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,UAAU,CAAA;AACzE,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,qBAAqB,CAAC,GAAW;IAC/C,sEAAsE;IACtE,kDAAkD;IAClD,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAClC,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;IACzD,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,GAAG,CAAA;IACZ,CAAC;IACD,OAAO,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAA;AACrE,CAAC;AAcD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAC/B,QAAQ,EACR,MAAM,EAIP;IACC,IAAI,IAAS,CAAA;IACb,IAAI,CAAC;QACH,IAAI,GAAG,IAAI,GAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAA;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,GAAG,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAA;IACrC,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/C,OAAO,IAAI,CAAA;IACb,CAAC;IACD,wEAAwE;IACxE,yEAAyE;IACzE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC3C,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,QAAQ,GAAG,CAAC,EAAE,CAAC;QAC1E,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,QAAkB,CAAA;IACtB,IAAI,CAAC;QACH,QAAQ,GAAG,GAAG,CAAC,QAAQ;aACpB,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;aACtB,KAAK,CAAC,GAAG,CAAC;aACV,MAAM,CAAC,OAAO,CAAC;aACf,GAAG,CAAC,kBAAkB,CAAC,CAAA;IAC5B,CAAC;IAAC,MAAM,CAAC;QACP,2EAA2E;QAC3E,wEAAwE;QACxE,mEAAmE;QACnE,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;IAC1B,CAAC;IACD,qEAAqE;IACrE,wEAAwE;IACxE,+CAA+C;IAC/C,IACE,sBAAsB,CAAC,QAAQ,CAAC,CAAC,CAAW,EAAE;QAC5C,UAAU,EAAE,IAAI,CAAC,QAAQ,KAAK,GAAG;KAClC,CAAC,EACF,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAA;IAC3C,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAW,EAAE,CAAA;IACpE,CAAC;IACD,yEAAyE;IACzE,kDAAkD;IAClD,IAAI,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAW,CAAC,EAAE,CAAC;QAChD,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAA;IAC3C,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAW;YACnC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAW;SAClC,CAAA;IACH,CAAC;IACD,yEAAyE;IACzE,yCAAyC;IACzC,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAA;AAC3C,CAAC"}
1
+ {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/internal/paths.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,8 @@
11
11
  * server whose protocol version this client does not speak.
12
12
  */
13
13
  import type { ZcapClient } from '@interop/ezcap';
14
- import type { HttpResponse } from '@interop/http-client';
14
+ import { type HttpResponse } from '@interop/http-client';
15
+ import { WasServerError } from '../errors.js';
15
16
  import type { EncryptionProvider } from '../codec.js';
16
17
  import type { IZcap, RequestInput, ServiceInfo } from '../types.js';
17
18
  /**
@@ -63,7 +64,9 @@ export declare function rawRequest(context: ClientContext, input: SendInput): Pr
63
64
  /**
64
65
  * A plain unsigned `fetch` that maps a network failure to a `WasError`, the
65
66
  * way the rest of the transport does. The response is returned as is,
66
- * whatever its status.
67
+ * whatever its status: this is the probe primitive for service discovery,
68
+ * which reads the status itself. Everything else sends through
69
+ * `unsignedRequest` or `send()`.
67
70
  *
68
71
  * @param url {string}
69
72
  * @param init {RequestInit}
@@ -71,10 +74,15 @@ export declare function rawRequest(context: ClientContext, input: SendInput): Pr
71
74
  */
72
75
  export declare function fetchMapped(url: string, init: RequestInit): Promise<Response>;
73
76
  /**
74
- * Sends an **unsigned** request (a plain `fetch`, no capability invocation), for
75
- * reading public (`PublicCanRead`) resources that need no authorization. Applies
76
- * the same typed-error mapping and null-on-404 read translation as `send()`.
77
- * Takes an absolute `url` -- public reads address a resource by its link.
77
+ * Sends an **unsigned** request (no capability invocation), for reading public
78
+ * (`PublicCanRead`) resources that need no authorization. Applies the same
79
+ * typed-error mapping and null-on-404 read translation as `send()`. Takes an
80
+ * absolute `url` -- public reads address a resource by its link.
81
+ *
82
+ * Sends through `@interop/http-client`, the same client as `send()`, so the
83
+ * response has the same shape (JSON pre-parsed into `data`) and the same
84
+ * retry and timeout behavior, and `dataOrNull` and `readJsonData` read it
85
+ * exactly as they read a signed one.
78
86
  *
79
87
  * @param input {object}
80
88
  * @param input.url {string} absolute URL to read
@@ -108,37 +116,62 @@ export declare function unsignedRequest(input: {
108
116
  * @returns {Promise<HttpResponse | null>}
109
117
  */
110
118
  export declare function send(context: ClientContext, input: SendInput): Promise<HttpResponse | null>;
119
+ /**
120
+ * The `WasServerError` for a 2xx whose body was not the JSON object the
121
+ * operation required. The request layer parses a body into `data` only for a
122
+ * JSON content type, so naming the content type the server sent points at the
123
+ * cause (a mislabeled or body-less 2xx).
124
+ *
125
+ * @param options {object}
126
+ * @param options.response {HttpResponse | null}
127
+ * @param options.operation {string} the request, as the message's subject
128
+ * @param options.expected {string} what the body should have carried
129
+ * @returns {WasServerError}
130
+ */
131
+ export declare function missingJsonBodyError({ response, operation, expected }: {
132
+ response: HttpResponse | null;
133
+ operation: string;
134
+ expected: string;
135
+ }): WasServerError;
111
136
  /**
112
137
  * The GET-a-JSON-description read shared across the handles: a signed
113
- * null-on-404 `GET` of `url` whose pre-parsed body is unwrapped as `T`. Both
114
- * a missing/unauthorized target (404) and a bodyless/non-JSON response resolve
115
- * to `null` (see `dataOrNull`).
138
+ * null-on-404 `GET` of `url` whose pre-parsed body is unwrapped as `T`. A
139
+ * missing/unauthorized target (404) resolves to `null`. So does a
140
+ * bodyless/non-JSON 2xx (see `dataOrNull`), unless `expected` names what the
141
+ * body should have carried: then that 2xx is a server fault
142
+ * (`WasServerError`), for a read whose caller must not mistake a misbehaving
143
+ * server for "nothing stored".
116
144
  *
117
145
  * @param context {ClientContext}
118
146
  * @param options {object}
119
147
  * @param options.url {string} the absolute URL to read
120
148
  * @param [options.capability] {IZcap} capability attached to the request
149
+ * @param [options.expected] {string} what a 2xx body must carry, for the
150
+ * error message; absent, a bodyless 2xx reads as `null`
121
151
  * @returns {Promise<T | null>}
122
152
  */
123
- export declare function readData<T>(context: ClientContext, { url, capability }: {
153
+ export declare function readData<T>(context: ClientContext, options: {
124
154
  url: string;
125
155
  capability?: IZcap;
156
+ expected?: string;
126
157
  }): Promise<T | null>;
127
158
  /**
128
159
  * {@link readData} keeping the response's `ETag` validator beside the body:
129
- * the read-with-validator shape a description compare-and-swap starts from.
130
- * `null` on the same conditions as `readData`; `etag` is absent against a
131
- * server that does not version the target.
160
+ * the read-with-validator shape a compare-and-swap starts from. `null` on the
161
+ * same conditions as `readData`, and `expected` has the same meaning; `etag`
162
+ * is absent against a server that does not version the target.
132
163
  *
133
164
  * @param context {ClientContext}
134
165
  * @param options {object}
135
166
  * @param options.url {string} the absolute URL to read
136
167
  * @param [options.capability] {IZcap} capability attached to the request
168
+ * @param [options.expected] {string} see {@link readData}
137
169
  * @returns {Promise<{ data: T; etag?: string } | null>}
138
170
  */
139
- export declare function readDataWithEtag<T>(context: ClientContext, { url, capability }: {
171
+ export declare function readDataWithEtag<T>(context: ClientContext, { url, capability, expected }: {
140
172
  url: string;
141
173
  capability?: IZcap;
174
+ expected?: string;
142
175
  }): Promise<{
143
176
  data: T;
144
177
  etag?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/internal/request.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAEhD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAIxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAEnE;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,UAAU,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,CAAC,EAAE,kBAAkB,CAAA;IAC/B,OAAO,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,CAAA;CACpC;AAED;;;GAGG;AACH,MAAM,WAAW,SAAU,SAAQ,YAAY;IAC7C;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAA;IACd;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,UAAU,CAC9B,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,YAAY,CAAC,CAiBvB;AAED;;;;;;;;GAQG;AACH,wBAAsB,WAAW,CAC/B,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,WAAW,GAChB,OAAO,CAAC,QAAQ,CAAC,CAMnB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,eAAe,CAAC,KAAK,EAAE;IAC3C,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC,IAAI,CAAC,EAAE,OAAO,CAAA;CACf,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CA4B/B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,IAAI,CACxB,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAmC9B;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,QAAQ,CAAC,CAAC,EAC9B,OAAO,EAAE,aAAa,EACtB,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,KAAK,CAAA;CAAE,GACvD,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAQnB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,gBAAgB,CAAC,CAAC,EACtC,OAAO,EAAE,aAAa,EACtB,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,KAAK,CAAA;CAAE,GACvD,OAAO,CAAC;IAAE,IAAI,EAAE,CAAC,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CAY5C"}
1
+ {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/internal/request.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAEhD,OAAO,EAAc,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACpE,OAAO,EAGL,cAAc,EAGf,MAAM,cAAc,CAAA;AAGrB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAEnE;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,UAAU,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,CAAC,EAAE,kBAAkB,CAAA;IAC/B,OAAO,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,CAAA;CACpC;AAED;;;GAGG;AACH,MAAM,WAAW,SAAU,SAAQ,YAAY;IAC7C;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAA;IACd;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,UAAU,CAC9B,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,YAAY,CAAC,CAiBvB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,WAAW,CAC/B,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,WAAW,GAChB,OAAO,CAAC,QAAQ,CAAC,CAMnB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,eAAe,CAAC,KAAK,EAAE;IAC3C,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC,IAAI,CAAC,EAAE,OAAO,CAAA;CACf,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAiB/B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,IAAI,CACxB,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAmC9B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,QAAQ,EACR,SAAS,EACT,QAAQ,EACT,EAAE;IACD,QAAQ,EAAE,YAAY,GAAG,IAAI,CAAA;IAC7B,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;CACjB,GAAG,cAAc,CAMjB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,QAAQ,CAAC,CAAC,EAC9B,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9D,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAGnB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,gBAAgB,CAAC,CAAC,EACtC,OAAO,EAAE,aAAa,EACtB,EACE,GAAG,EACH,UAAU,EACV,QAAQ,EACT,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GACxD,OAAO,CAAC;IAAE,IAAI,EAAE,CAAC,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CAe5C"}
@@ -1,5 +1,6 @@
1
1
  import { isValidTarget } from '@interop/zcap';
2
- import { NotFoundError, WasError, mapError, httpStatus } from '../errors.js';
2
+ import { httpClient } from '@interop/http-client';
3
+ import { NotFoundError, WasError, WasServerError, mapError, httpStatus } from '../errors.js';
3
4
  import { dataOrNull } from './content.js';
4
5
  import { readEtag } from './conditional.js';
5
6
  /**
@@ -34,7 +35,9 @@ export async function rawRequest(context, input) {
34
35
  /**
35
36
  * A plain unsigned `fetch` that maps a network failure to a `WasError`, the
36
37
  * way the rest of the transport does. The response is returned as is,
37
- * whatever its status.
38
+ * whatever its status: this is the probe primitive for service discovery,
39
+ * which reads the status itself. Everything else sends through
40
+ * `unsignedRequest` or `send()`.
38
41
  *
39
42
  * @param url {string}
40
43
  * @param init {RequestInit}
@@ -49,10 +52,15 @@ export async function fetchMapped(url, init) {
49
52
  }
50
53
  }
51
54
  /**
52
- * Sends an **unsigned** request (a plain `fetch`, no capability invocation), for
53
- * reading public (`PublicCanRead`) resources that need no authorization. Applies
54
- * the same typed-error mapping and null-on-404 read translation as `send()`.
55
- * Takes an absolute `url` -- public reads address a resource by its link.
55
+ * Sends an **unsigned** request (no capability invocation), for reading public
56
+ * (`PublicCanRead`) resources that need no authorization. Applies the same
57
+ * typed-error mapping and null-on-404 read translation as `send()`. Takes an
58
+ * absolute `url` -- public reads address a resource by its link.
59
+ *
60
+ * Sends through `@interop/http-client`, the same client as `send()`, so the
61
+ * response has the same shape (JSON pre-parsed into `data`) and the same
62
+ * retry and timeout behavior, and `dataOrNull` and `readJsonData` read it
63
+ * exactly as they read a signed one.
56
64
  *
57
65
  * @param input {object}
58
66
  * @param input.url {string} absolute URL to read
@@ -62,32 +70,23 @@ export async function fetchMapped(url, init) {
62
70
  * @returns {Promise<HttpResponse | null>}
63
71
  */
64
72
  export async function unsignedRequest(input) {
65
- const response = await fetchMapped(input.url, {
66
- method: input.method ?? 'GET',
67
- headers: input.headers
68
- });
69
- if (response.ok) {
70
- return response;
71
- }
72
- // A public read resolves to `null` for any "not readable by you" status, not
73
- // just 404: a conformant WAS masks unauthorized as 404, but a server that
74
- // answers a missing capability with 401/403 should honor the same
75
- // null-if-not-publicly-readable contract rather than throw.
76
- if (input.read &&
77
- (response.status === 404 ||
78
- response.status === 401 ||
79
- response.status === 403)) {
80
- return null;
81
- }
82
- // Reconstruct a problem+json-shaped error so mapError can dispatch on it.
83
- let data;
84
73
  try {
85
- data = await response.json();
74
+ return await httpClient(input.url, {
75
+ method: input.method ?? 'GET',
76
+ headers: input.headers
77
+ });
86
78
  }
87
- catch {
88
- data = undefined;
79
+ catch (err) {
80
+ // A public read resolves to `null` for any "not readable by you" status,
81
+ // not just 404: a conformant WAS masks unauthorized as 404, but a server
82
+ // that answers a missing capability with 401/403 should honor the same
83
+ // null-if-not-publicly-readable contract rather than throw.
84
+ const status = httpStatus(err);
85
+ if (input.read && (status === 404 || status === 401 || status === 403)) {
86
+ return null;
87
+ }
88
+ throw mapError(err);
89
89
  }
90
- throw mapError({ status: response.status, requestUrl: input.url, data });
91
90
  }
92
91
  /**
93
92
  * Signs and sends a request, applying the typed-error mapping. When `read` is
@@ -137,40 +136,58 @@ export async function send(context, input) {
137
136
  throw mapError(err);
138
137
  }
139
138
  }
139
+ /**
140
+ * The `WasServerError` for a 2xx whose body was not the JSON object the
141
+ * operation required. The request layer parses a body into `data` only for a
142
+ * JSON content type, so naming the content type the server sent points at the
143
+ * cause (a mislabeled or body-less 2xx).
144
+ *
145
+ * @param options {object}
146
+ * @param options.response {HttpResponse | null}
147
+ * @param options.operation {string} the request, as the message's subject
148
+ * @param options.expected {string} what the body should have carried
149
+ * @returns {WasServerError}
150
+ */
151
+ export function missingJsonBodyError({ response, operation, expected }) {
152
+ const contentType = response?.headers.get('content-type') ?? 'no content-type';
153
+ return new WasServerError(`${operation} response carried no JSON body (the server sent ` +
154
+ `${contentType}); expected ${expected}.`);
155
+ }
140
156
  /**
141
157
  * The GET-a-JSON-description read shared across the handles: a signed
142
- * null-on-404 `GET` of `url` whose pre-parsed body is unwrapped as `T`. Both
143
- * a missing/unauthorized target (404) and a bodyless/non-JSON response resolve
144
- * to `null` (see `dataOrNull`).
158
+ * null-on-404 `GET` of `url` whose pre-parsed body is unwrapped as `T`. A
159
+ * missing/unauthorized target (404) resolves to `null`. So does a
160
+ * bodyless/non-JSON 2xx (see `dataOrNull`), unless `expected` names what the
161
+ * body should have carried: then that 2xx is a server fault
162
+ * (`WasServerError`), for a read whose caller must not mistake a misbehaving
163
+ * server for "nothing stored".
145
164
  *
146
165
  * @param context {ClientContext}
147
166
  * @param options {object}
148
167
  * @param options.url {string} the absolute URL to read
149
168
  * @param [options.capability] {IZcap} capability attached to the request
169
+ * @param [options.expected] {string} what a 2xx body must carry, for the
170
+ * error message; absent, a bodyless 2xx reads as `null`
150
171
  * @returns {Promise<T | null>}
151
172
  */
152
- export async function readData(context, { url, capability }) {
153
- const response = await send(context, {
154
- url,
155
- method: 'GET',
156
- capability,
157
- read: true
158
- });
159
- return dataOrNull(response);
173
+ export async function readData(context, options) {
174
+ const read = await readDataWithEtag(context, options);
175
+ return read === null ? null : read.data;
160
176
  }
161
177
  /**
162
178
  * {@link readData} keeping the response's `ETag` validator beside the body:
163
- * the read-with-validator shape a description compare-and-swap starts from.
164
- * `null` on the same conditions as `readData`; `etag` is absent against a
165
- * server that does not version the target.
179
+ * the read-with-validator shape a compare-and-swap starts from. `null` on the
180
+ * same conditions as `readData`, and `expected` has the same meaning; `etag`
181
+ * is absent against a server that does not version the target.
166
182
  *
167
183
  * @param context {ClientContext}
168
184
  * @param options {object}
169
185
  * @param options.url {string} the absolute URL to read
170
186
  * @param [options.capability] {IZcap} capability attached to the request
187
+ * @param [options.expected] {string} see {@link readData}
171
188
  * @returns {Promise<{ data: T; etag?: string } | null>}
172
189
  */
173
- export async function readDataWithEtag(context, { url, capability }) {
190
+ export async function readDataWithEtag(context, { url, capability, expected }) {
174
191
  const response = await send(context, {
175
192
  url,
176
193
  method: 'GET',
@@ -179,6 +196,9 @@ export async function readDataWithEtag(context, { url, capability }) {
179
196
  });
180
197
  const data = dataOrNull(response);
181
198
  if (data === null) {
199
+ if (response !== null && expected !== undefined) {
200
+ throw missingJsonBodyError({ response, operation: 'Read', expected });
201
+ }
182
202
  return null;
183
203
  }
184
204
  return { data, etag: readEtag(response) };
@@ -1 +1 @@
1
- {"version":3,"file":"request.js","sourceRoot":"","sources":["../../src/internal/request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["../../src/internal/request.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAqB,MAAM,sBAAsB,CAAA;AACpE,OAAO,EACL,aAAa,EACb,QAAQ,EACR,cAAc,EACd,QAAQ,EACR,UAAU,EACX,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAwC3C;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,OAAsB,EACtB,KAAgB;IAEhB,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,CAAA;IACrB,MAAM,OAAO,CAAC,OAAO,EAAE,CAAA;IACvB,qEAAqE;IACrE,yEAAyE;IACzE,sEAAsE;IACtE,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;IACpD,OAAO,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC;QAChC,GAAG;QACH,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,MAAM;QACN,2EAA2E;QAC3E,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE;QAC9C,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,IAAI,EAAE,KAAK,CAAC,IAAI;KACjB,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,GAAW,EACX,IAAiB;IAEjB,IAAI,CAAC;QACH,OAAO,MAAM,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAC/B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAA;IACrB,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,KAKrC;IACC,IAAI,CAAC;QACH,OAAO,MAAM,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE;YACjC,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,KAAK;YAC7B,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,CAAC,CAAA;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,yEAAyE;QACzE,yEAAyE;QACzE,uEAAuE;QACvE,4DAA4D;QAC5D,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;QAC9B,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,CAAC,EAAE,CAAC;YACvE,OAAO,IAAI,CAAA;QACb,CAAC;QACD,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAA;IACrB,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI,CACxB,OAAsB,EACtB,KAAgB;IAEhB,MAAM,gBAAgB,GAAG,KAAK,CAAC,UAAU,EAAE,gBAAgB,CAAA;IAC3D,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,CAAA;QACrB,IACE,CAAC,aAAa,CAAC;YACb,gBAAgB,EAAE,GAAG;YACrB,oBAAoB,EAAE,gBAAgB;YACtC,sBAAsB,EAAE,IAAI;SAC7B,CAAC,EACF,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;gBACnC,OAAO,IAAI,CAAA;YACb,CAAC;YACD,MAAM,IAAI,aAAa,CACrB,IAAI,GAAG,oDAAoD;gBACzD,IAAI,gBAAgB,wCAAwC,EAC9D,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,CACjC,CAAA;QACH,CAAC;IACH,CAAC;IACD,IAAI,CAAC;QACH,OAAO,MAAM,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IACzC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,2EAA2E;QAC3E,wEAAwE;QACxE,IACE,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC;YAChC,CAAC,CAAC,GAAG,YAAY,QAAQ,CAAC;YAC1B,UAAU,CAAC,GAAG,CAAC,KAAK,GAAG,EACvB,CAAC;YACD,OAAO,IAAI,CAAA;QACb,CAAC;QACD,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAA;IACrB,CAAC;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB,CAAC,EACnC,QAAQ,EACR,SAAS,EACT,QAAQ,EAKT;IACC,MAAM,WAAW,GAAG,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,iBAAiB,CAAA;IAC9E,OAAO,IAAI,cAAc,CACvB,GAAG,SAAS,kDAAkD;QAC5D,GAAG,WAAW,eAAe,QAAQ,GAAG,CAC3C,CAAA;AACH,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,OAAsB,EACtB,OAA+D;IAE/D,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAI,OAAO,EAAE,OAAO,CAAC,CAAA;IACxD,OAAO,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;AACzC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAAsB,EACtB,EACE,GAAG,EACH,UAAU,EACV,QAAQ,EAC+C;IAEzD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE;QACnC,GAAG;QACH,MAAM,EAAE,KAAK;QACb,UAAU;QACV,IAAI,EAAE,IAAI;KACX,CAAC,CAAA;IACF,MAAM,IAAI,GAAG,UAAU,CAAI,QAAQ,CAAC,CAAA;IACpC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAClB,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAChD,MAAM,oBAAoB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;QACvE,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAA;AAC3C,CAAC"}
@@ -1,69 +1,5 @@
1
1
  import type { ClientContext } from './request.js';
2
- import type { IDelegatedZcap, IRootZcap, IZcap } from '../types.js';
3
- /**
4
- * The root capability id for an invocation target URL
5
- * (`urn:zcap:root:<encoded target>`) -- the id grammar shared by revocation
6
- * (which invokes the revocation URL's own root capability in object form) and
7
- * grant rooting (which parents an unparented grant on its Space's root
8
- * capability id).
9
- *
10
- * @param target {string} the absolute invocation target URL
11
- * @returns {string}
12
- */
13
- export declare function rootCapabilityId(target: string): string;
14
- /**
15
- * The invocation target a root capability id names: the inverse of
16
- * {@link rootCapabilityId}. Returns `null` for an id that is not a root
17
- * capability id, or whose encoded target is malformed.
18
- *
19
- * @param id {string} a capability id
20
- * @returns {string | null}
21
- */
22
- export declare function rootCapabilityTarget(id: string): string | null;
23
- /**
24
- * Builds the root capability for `target` in **object** form.
25
- *
26
- * The object form is load-bearing: `@interop/ezcap` accepts a *string* root
27
- * capability id only when its invocation target is `https:`, which would break
28
- * against an `http://localhost` server. Both forms reduce to the same
29
- * `zcap id="..."` invocation header.
30
- *
31
- * `controller` is client-side only -- the server re-derives the real controller
32
- * when it synthesizes the root capability -- so the caller's own DID is fine.
33
- *
34
- * @param options {object}
35
- * @param options.target {string} the absolute invocation target URL
36
- * @param options.controller {string} the invoking client's DID
37
- * @returns {IRootZcap}
38
- */
39
- export declare function rootCapability({ target, controller }: {
40
- target: string;
41
- controller: string;
42
- }): IRootZcap;
43
- /**
44
- * The URL of the Space a capability is rooted in, read off its delegation
45
- * chain: a Space-rooted capability's chain starts at the Space's root
46
- * capability, whose id encodes the Space URL. The result is in canonical
47
- * form.
48
- *
49
- * The root's target is taken to be the Space URL. A Space URL has no shape
50
- * of its own (a Collection URL is an http(s) URL ending in a slash too), so
51
- * this function cannot tell a chain rooted at a Space from one rooted at a
52
- * Collection, a Resource, or a Spaces Repository: only the server, which
53
- * knows its hierarchy, can, and it refuses a revocation whose chain does not
54
- * root exactly in the Space. What is refused here is a root whose target
55
- * cannot be a Space URL at all (an origin, a URL with a query, a URN) and a
56
- * chain that starts at no root capability. A capability this client minted
57
- * from a handle is always Space-rooted. A bare `was.grant({ target })` with
58
- * no `spaceUrl`, the mode for a server with no Space hierarchy, roots at
59
- * its target and is not revocable this way by design.
60
- *
61
- * @param zcap {IZcap} the capability to locate
62
- * @returns {string}
63
- * @throws {ValidationError} when the chain does not start at a root
64
- * capability id, or that id names something that cannot be a Space URL
65
- */
66
- export declare function spaceUrlOf(zcap: IZcap): string;
2
+ import type { IDelegatedZcap } from '../types.js';
67
3
  /**
68
4
  * Revokes a Space-rooted delegated capability: `POST`s it to
69
5
  * `{spaceUrl}zcaps/revocations/:capabilityId`, invoking that URL's own root
@@ -1 +1 @@
1
- {"version":3,"file":"revoke.d.ts","sourceRoot":"","sources":["../../src/internal/revoke.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAGjD,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAYnE;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAS9D;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAAC,EAC7B,MAAM,EACN,UAAU,EACX,EAAE;IACD,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;CACnB,GAAG,SAAS,CAOZ;AA+BD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,KAAK,GAAG,MAAM,CAmB9C;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,aAAa,EACtB,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,cAAc,CAAA;CAAE,GAC7D,OAAO,CAAC,IAAI,CAAC,CAgBf"}
1
+ {"version":3,"file":"revoke.d.ts","sourceRoot":"","sources":["../../src/internal/revoke.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAIjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAEjD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,aAAa,EACtB,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,cAAc,CAAA;CAAE,GAC7D,OAAO,CAAC,IAAI,CAAC,CAgBf"}