@interop/was-client 0.99.1 → 0.100.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.
- package/README.md +127 -69
- package/dist/Collection.d.ts +17 -9
- package/dist/Collection.d.ts.map +1 -1
- package/dist/Collection.js +85 -70
- package/dist/Collection.js.map +1 -1
- package/dist/Resource.d.ts +11 -4
- package/dist/Resource.d.ts.map +1 -1
- package/dist/Resource.js +34 -28
- package/dist/Resource.js.map +1 -1
- package/dist/Space.d.ts +20 -5
- package/dist/Space.d.ts.map +1 -1
- package/dist/Space.js +69 -65
- package/dist/Space.js.map +1 -1
- package/dist/WasClient.d.ts +185 -57
- package/dist/WasClient.d.ts.map +1 -1
- package/dist/WasClient.js +340 -140
- package/dist/WasClient.js.map +1 -1
- package/dist/codec.d.ts +3 -2
- package/dist/codec.d.ts.map +1 -1
- package/dist/edv/EdvCodec.js +1 -1
- package/dist/edv/EdvCodec.js.map +1 -1
- package/dist/edv/WasTransport.d.ts +7 -4
- package/dist/edv/WasTransport.d.ts.map +1 -1
- package/dist/edv/WasTransport.js +39 -20
- package/dist/edv/WasTransport.js.map +1 -1
- package/dist/edv/acquire.d.ts +3 -3
- package/dist/edv/acquire.d.ts.map +1 -1
- package/dist/edv/acquire.js +3 -3
- package/dist/edv/acquire.js.map +1 -1
- package/dist/edv/cipher.d.ts +1 -1
- package/dist/edv/cipher.js +1 -1
- package/dist/edv/docCipher.d.ts +6 -5
- package/dist/edv/docCipher.d.ts.map +1 -1
- package/dist/edv/docCipher.js +6 -5
- package/dist/edv/docCipher.js.map +1 -1
- package/dist/edv/encryption.d.ts +2 -2
- package/dist/edv/encryption.d.ts.map +1 -1
- package/dist/edv/encryption.js +8 -6
- package/dist/edv/encryption.js.map +1 -1
- package/dist/edv/refreshingDocCipher.d.ts +3 -3
- package/dist/edv/refreshingDocCipher.d.ts.map +1 -1
- package/dist/edv/refreshingDocCipher.js +3 -3
- package/dist/edv/refreshingDocCipher.js.map +1 -1
- package/dist/edv/transportFactory.d.ts +3 -3
- package/dist/edv/transportFactory.d.ts.map +1 -1
- package/dist/edv/transportFactory.js +3 -3
- package/dist/edv/transportFactory.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/internal/codec.d.ts +7 -7
- package/dist/internal/codec.d.ts.map +1 -1
- package/dist/internal/codec.js +19 -18
- package/dist/internal/codec.js.map +1 -1
- package/dist/internal/conditional.d.ts +3 -3
- package/dist/internal/conditional.d.ts.map +1 -1
- package/dist/internal/conditional.js +5 -5
- package/dist/internal/conditional.js.map +1 -1
- package/dist/internal/grant.d.ts +15 -26
- package/dist/internal/grant.d.ts.map +1 -1
- package/dist/internal/grant.js +95 -29
- package/dist/internal/grant.js.map +1 -1
- package/dist/internal/meta.d.ts +8 -8
- package/dist/internal/meta.d.ts.map +1 -1
- package/dist/internal/meta.js +13 -10
- package/dist/internal/meta.js.map +1 -1
- package/dist/internal/paths.d.ts +423 -195
- package/dist/internal/paths.d.ts.map +1 -1
- package/dist/internal/paths.js +582 -369
- package/dist/internal/paths.js.map +1 -1
- package/dist/internal/policy.d.ts +23 -23
- package/dist/internal/policy.d.ts.map +1 -1
- package/dist/internal/policy.js +20 -20
- package/dist/internal/policy.js.map +1 -1
- package/dist/internal/request.d.ts +17 -21
- package/dist/internal/request.d.ts.map +1 -1
- package/dist/internal/request.js +10 -21
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/reserved.d.ts +15 -3
- package/dist/internal/reserved.d.ts.map +1 -1
- package/dist/internal/reserved.js +37 -8
- package/dist/internal/reserved.js.map +1 -1
- package/dist/internal/revoke.d.ts +34 -13
- package/dist/internal/revoke.d.ts.map +1 -1
- package/dist/internal/revoke.js +97 -28
- package/dist/internal/revoke.js.map +1 -1
- package/dist/internal/service.d.ts +27 -7
- package/dist/internal/service.d.ts.map +1 -1
- package/dist/internal/service.js +51 -45
- package/dist/internal/service.js.map +1 -1
- package/dist/internal/write.d.ts +18 -18
- package/dist/internal/write.d.ts.map +1 -1
- package/dist/internal/write.js +27 -27
- package/dist/internal/write.js.map +1 -1
- package/dist/paths.d.ts +32 -25
- package/dist/paths.d.ts.map +1 -1
- package/dist/paths.js +32 -25
- package/dist/paths.js.map +1 -1
- package/dist/sync/port.d.ts +3 -3
- package/dist/sync/port.d.ts.map +1 -1
- package/dist/sync/port.js +12 -12
- package/dist/sync/port.js.map +1 -1
- package/dist/sync/provisioning.d.ts +10 -9
- package/dist/sync/provisioning.d.ts.map +1 -1
- package/dist/sync/provisioning.js +19 -18
- package/dist/sync/provisioning.js.map +1 -1
- package/dist/sync/types.d.ts +2 -2
- package/dist/types.d.ts +13 -5
- package/dist/types.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codec.js","sourceRoot":"","sources":["../../src/internal/codec.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"codec.js","sourceRoot":"","sources":["../../src/internal/codec.ts"],"names":[],"mappings":"AA8BA,OAAO,EACL,aAAa,EACb,SAAS,EACT,WAAW,EACX,aAAa,EACd,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,0BAA0B,EAC3B,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAA;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAkDnE;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,WAAW;IACb,KAAK,CAAuB;IAErC;;;OAGG;IACH,YAAY,OAAuC;QACjD,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,GAAG;QACP,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAA;QACzC,UAAU,CAAC,IAAI,GAAG,SAAS,CAAA;QAC3B,UAAU,CAAC,QAAQ,GAAG,SAAS,CAAA;QAC/B,OAAO,UAAU,CAAC,KAAK,CAAA;IACzB,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,OAAO;QACX,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAA;QACrC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAA;QACzC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAA;QAC5C,yEAAyE;QACzE,gCAAgC;QAChC,UAAU,CAAC,IAAI,GAAG,SAAS,CAAA;QAC3B,UAAU,CAAC,QAAQ,GAAG,SAAS,CAAA;QAC/B,IAAI,CAAC,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACrC,OAAO,EAAE,KAAK,EAAE,CAAA;QAClB,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAA;IACrE,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;IACpB,CAAC;CACF;AAeD;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAAsB,EACtB,OAAoB;IAEpB,OAAO,IAAI,WAAW,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;AAC9D,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,aAAa,GAAkB;IAC1C,KAAK,CAAC,MAAM,CAAC,EACX,EAAE,EACF,IAAI,EACJ,WAAW,EAKZ;QACC,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAA;QACjE,OAAO,EAAE,EAAE,EAAE,GAAG,QAAQ,EAAE,CAAA;IAC5B,CAAC;IAED,qEAAqE;IACrE,4EAA4E;IAC5E,+DAA+D;IAC/D,KAAK,CAAC,MAAM,CAAC,QAAsB;QACjC,OAAO,CAAC,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAgB,CAAA;IACvD,CAAC;IAED,2EAA2E;IAC3E,wEAAwE;IACxE,0EAA0E;IAC1E,wEAAwE;IACxE,2EAA2E;IAC3E,0EAA0E;IAC1E,0EAA0E;IAC1E,mCAAmC;IACnC,KAAK,CAAC,YAAY,CAAC,QAAsB;QACvC,MAAM,WAAW,GACf,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,IAAI,SAAS,CAAA;QACpE,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAChC,OAAO,aAAa,CAAC;gBACnB,KAAK,EAAE,QAAQ,CAAC,IAAY;gBAC5B,GAAG,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,CAAC;aAClD,CAAC,CAAA;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI;YAC1B,CAAC,CAAE,QAAQ,CAAC,IAAmC;YAC/C,CAAC,CAAC,aAAa,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;QACpC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,CAAC,EAAE,CAAA;IACtE,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,EACf,MAAM,EAGP;QACC,OAAO,EAAE,MAAM,EAAE,CAAA;IACnB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAEhB;QACC,OAAO,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAA2B,CAAA;IACxD,CAAC;CACF,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,OAAsB,EACtB,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAe;IAE7D,+DAA+D;IAC/D,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;YAC7B,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAA;QACjC,CAAC;QACD,2EAA2E;QAC3E,2EAA2E;QAC3E,gEAAgE;QAChE,0EAA0E;QAC1E,SAAS;QACT,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,oBAAoB,CAAC,OAAO,EAAE;YACpD,QAAQ;YACR,YAAY;YACZ,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,UAAU,EAAE,QAAQ;SACrB,CAAC,CAAA;QACF,qEAAqE;QACrE,uDAAuD;QACvD,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,OAAO,EAAE;YAC9C,QAAQ;YACR,YAAY;YACZ,UAAU;YACV,KAAK;SACN,CAAC,CAAA;QACF,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO,EAAE,KAAK,EAAE,CAAA;QAClB,CAAC;QACD,OAAO,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAE,CAAA;IAC3E,CAAC;IACD,0EAA0E;IAC1E,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QACxB,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAA;IACjC,CAAC;IACD,gFAAgF;IAChF,oEAAoE;IACpE,yEAAyE;IACzE,4EAA4E;IAC5E,oEAAoE;IACpE,6EAA6E;IAC7E,kDAAkD;IAClD,MAAM,IAAI,GAAG,MAAM,sBAAsB,CAAC,OAAO,EAAE;QACjD,QAAQ;QACR,YAAY;QACZ,UAAU;KACX,CAAC,CAAA;IACF,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAClB,MAAM,0BAA0B,CAAC;YAC/B,SAAS,EACP,gCAAgC,aAAa,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,MAAM;gBAC/E,WAAW;YACb,WAAW,EACT,gEAAgE;YAClE,MAAM,EACJ,qDAAqD;gBACrD,qEAAqE;gBACrE,sBAAsB;YACxB,UAAU,EAAE,eAAe;SAC5B,CAAC,CAAA;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAChD,MAAM,EAAE,KAAK,EAAE,GAAG,QAAQ;QACxB,CAAC,CAAC,MAAM,oBAAoB,CAAC,OAAO,EAAE;YAClC,QAAQ;YACR,YAAY;YACZ,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,UAAU,EAAE,QAAQ;SACrB,CAAC;QACJ,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,CAAA;IAC5B,2EAA2E;IAC3E,8EAA8E;IAC9E,0EAA0E;IAC1E,6EAA6E;IAC7E,0EAA0E;IAC1E,6EAA6E;IAC7E,iCAAiC;IACjC,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IACpD,OAAO,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAA;AACpE,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,OAAsB,EACtB,EACE,QAAQ,EACR,YAAY,EACZ,UAAU,EAKX;IAED,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,aAAa,CAAA;IACtB,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QACxB,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC;QAC9C,QAAQ;QACR,YAAY;QACZ,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,UAAU,EAAE,UAAU;KACvB,CAAC,CAAA;IACF,OAAO,KAAK,IAAI,IAAI,CAAA;AACtB,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,KAAK,UAAU,YAAY,CAAC,EAC1B,IAAI,EACJ,KAAK,EAIN;IACC,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;IACvE,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAA;IACpD,OAAO;QACL,IAAI,EAAE;YACJ,GAAG,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC;YACtC,MAAM,EAAE,MAAM;YACd,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;SACpD;QACD,QAAQ,EAAE,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE;KAC9B,CAAA;AACH,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,EACrC,KAAK,EACL,MAAM,EAIP;IACC,IAAI,CAAC;QACH,OAAO,MAAM,KAAK,CAAC,UAAU,CAC3B,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,EACzB,EAAE,IAAI,EAAE,YAAY,EAAE,CACvB,CAAA;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,KAAK,UAAU,oBAAoB,CACjC,OAAsB,EACtB,EACE,QAAQ,EACR,YAAY,EACZ,MAAM,EACN,UAAU,EACV,IAAI,EAOL;IAED,MAAM,KAAK,GAAG,aAAa,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,CAAA;IACvD,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QACxB,MAAM,IAAI,eAAe,CACvB,cAAc,KAAK,0BAA0B,MAAM,qBAAqB;YACtE,8DAA8D;YAC9D,sDAAsD,CACzD,CAAA;IACH,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC;QAC9C,QAAQ;QACR,YAAY;QACZ,MAAM;QACN,UAAU;QACV,IAAI;KACL,CAAC,CAAA;IACF,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,eAAe,CACvB,cAAc,KAAK,0BAA0B,MAAM,qBAAqB;YACtE,wEAAwE;YACxE,kEAAkE,CACrE,CAAA;IACH,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,CAAA;AAClB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,KAAK,UAAU,eAAe,CAC5B,OAAsB,EACtB,EACE,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,KAAK,EAMN;IAED,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QACpB,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,IAAI,CAAA;IACR,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,sBAAsB,CAAC,OAAO,EAAE;YAC3C,QAAQ;YACR,YAAY;YACZ,UAAU;SACX,CAAC,CAAA;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,mBAAmB,EAAE,CAAC;YACvC,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,MAAM,GAAG,CAAA;IACX,CAAC;IACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAClB,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;AACtC,CAAC"}
|
|
@@ -154,13 +154,13 @@ export declare function readEtag(response: ResponseLike | null): string | undefi
|
|
|
154
154
|
* the server.
|
|
155
155
|
*
|
|
156
156
|
* @param options {object}
|
|
157
|
-
* @param options.
|
|
157
|
+
* @param options.url {string} the resource URL written
|
|
158
158
|
* @param options.current {ResponseLike | null} the pre-read document
|
|
159
159
|
* @param [options.precondition] {WritePrecondition} the caller's precondition
|
|
160
160
|
* @returns {void}
|
|
161
161
|
*/
|
|
162
|
-
export declare function assertPreconditionAgainstPreRead({
|
|
163
|
-
|
|
162
|
+
export declare function assertPreconditionAgainstPreRead({ url, current, precondition }: {
|
|
163
|
+
url: string;
|
|
164
164
|
current: ResponseLike | null;
|
|
165
165
|
precondition?: WritePrecondition;
|
|
166
166
|
}): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conditional.d.ts","sourceRoot":"","sources":["../../src/internal/conditional.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,EACL,iBAAiB,EAGlB,MAAM,cAAc,CAAA;AAErB;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,cAAc,CAAA;AAE3C;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,cAAc,CAAA;AAE3C;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,iBAAiB,CAE5E;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAC/B,YAAY,CAAC,EAAE,iBAAiB,GAC/B,iBAAiB,GAAG,SAAS,CAK/B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CACtC,YAAY,CAAC,EAAE,iBAAiB,GAC/B,IAAI,CAQN;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAOtD;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,YAAY,CAAC,EAC3B,WAAW,EACX,YAAiB,EACjB,KAAK,EACL,QAAQ,EACT,EAAE;IACD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,iBAAiB,CAAA;IAChC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAqBrC;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,2BAA2B,CAAC,EAC1C,SAAS,EACV,EAAE;IACD,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,iBAAiB,CASpB;AAED;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAE1E;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,gCAAgC,CAAC,EAC/C,
|
|
1
|
+
{"version":3,"file":"conditional.d.ts","sourceRoot":"","sources":["../../src/internal/conditional.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,EACL,iBAAiB,EAGlB,MAAM,cAAc,CAAA;AAErB;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,cAAc,CAAA;AAE3C;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,cAAc,CAAA;AAE3C;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,iBAAiB,CAE5E;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAC/B,YAAY,CAAC,EAAE,iBAAiB,GAC/B,iBAAiB,GAAG,SAAS,CAK/B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CACtC,YAAY,CAAC,EAAE,iBAAiB,GAC/B,IAAI,CAQN;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAOtD;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,YAAY,CAAC,EAC3B,WAAW,EACX,YAAiB,EACjB,KAAK,EACL,QAAQ,EACT,EAAE;IACD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,iBAAiB,CAAA;IAChC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAqBrC;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,2BAA2B,CAAC,EAC1C,SAAS,EACV,EAAE;IACD,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,iBAAiB,CASpB;AAED;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAE1E;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,gCAAgC,CAAC,EAC/C,GAAG,EACH,OAAO,EACP,YAAY,EACb,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,YAAY,GAAG,IAAI,CAAA;IAC5B,YAAY,CAAC,EAAE,iBAAiB,CAAA;CACjC,GAAG,IAAI,CAkCP"}
|
|
@@ -173,17 +173,17 @@ export function readEtag(response) {
|
|
|
173
173
|
* the server.
|
|
174
174
|
*
|
|
175
175
|
* @param options {object}
|
|
176
|
-
* @param options.
|
|
176
|
+
* @param options.url {string} the resource URL written
|
|
177
177
|
* @param options.current {ResponseLike | null} the pre-read document
|
|
178
178
|
* @param [options.precondition] {WritePrecondition} the caller's precondition
|
|
179
179
|
* @returns {void}
|
|
180
180
|
*/
|
|
181
|
-
export function assertPreconditionAgainstPreRead({
|
|
181
|
+
export function assertPreconditionAgainstPreRead({ url, current, precondition }) {
|
|
182
182
|
if (precondition === undefined) {
|
|
183
183
|
return;
|
|
184
184
|
}
|
|
185
185
|
if (precondition.ifNoneMatch && current !== null) {
|
|
186
|
-
throw new PreconditionFailedError(`Cannot create the document at "${
|
|
186
|
+
throw new PreconditionFailedError(`Cannot create the document at "${url}": create-if-absent was ` +
|
|
187
187
|
'requested (ifNoneMatch), but a document is already stored there. ' +
|
|
188
188
|
'Re-read it and write an update instead.', { status: 412 });
|
|
189
189
|
}
|
|
@@ -191,14 +191,14 @@ export function assertPreconditionAgainstPreRead({ path, current, precondition }
|
|
|
191
191
|
return;
|
|
192
192
|
}
|
|
193
193
|
if (current === null) {
|
|
194
|
-
throw new PreconditionFailedError(`Cannot update the document at "${
|
|
194
|
+
throw new PreconditionFailedError(`Cannot update the document at "${url}": an ifMatch validator was ` +
|
|
195
195
|
'supplied, but no current document is readable there -- it was ' +
|
|
196
196
|
'deleted, or it is not readable with this capability (WAS masks ' +
|
|
197
197
|
'unauthorized reads as 404). Re-read the resource before retrying.', { status: 412 });
|
|
198
198
|
}
|
|
199
199
|
const etag = readEtag(current);
|
|
200
200
|
if (etag !== undefined && etag !== precondition.ifMatch) {
|
|
201
|
-
throw new PreconditionFailedError(`Cannot update the document at "${
|
|
201
|
+
throw new PreconditionFailedError(`Cannot update the document at "${url}": its current version ` +
|
|
202
202
|
`(${etag}) is not the one the write was pinned to ` +
|
|
203
203
|
`(${precondition.ifMatch}) -- another writer changed it. Re-read the ` +
|
|
204
204
|
'resource, rebase the change, and retry.', { status: 412 });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conditional.js","sourceRoot":"","sources":["../../src/internal/conditional.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"conditional.js","sourceRoot":"","sources":["../../src/internal/conditional.ts"],"names":[],"mappings":"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"}
|
package/dist/internal/grant.d.ts
CHANGED
|
@@ -1,35 +1,21 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (c) 2026 Interop Alliance. All rights reserved.
|
|
3
|
-
*/
|
|
4
|
-
/**
|
|
5
|
-
* The delegation primitive shared by `was.grant()` and the `space`/`collection`
|
|
6
|
-
* grant sugar. Maps `GrantOptions` onto `zcapClient.delegate(...)`, normalizing
|
|
7
|
-
* action verbs to uppercase so a lowercase grant (`'get'`) still validates on
|
|
8
|
-
* the server (which matches actions case-sensitively against `'GET'`).
|
|
9
|
-
*
|
|
10
|
-
* An unparented grant whose target lies in the server's Space tree is delegated
|
|
11
|
-
* from that **Space's** root capability, with the target carried as an
|
|
12
|
-
* attenuated `invocationTarget`, rather than from the target's own root
|
|
13
|
-
* capability. Both forms grant the same access (the server verifies WAS routes
|
|
14
|
-
* with target attenuation allowed), but only a Space-rooted chain can be revoked
|
|
15
|
-
* -- revocation is Space-scoped, and the endpoint requires the chain to root
|
|
16
|
-
* exactly in the Space (see `revoke.ts`).
|
|
17
|
-
*/
|
|
18
1
|
import type { ClientContext } from './request.js';
|
|
19
2
|
import type { GrantOptions, IDelegatedZcap, IZcap } from '../types.js';
|
|
20
3
|
/**
|
|
21
4
|
* Delegates a capability per `GrantOptions`, returning the signed zcap to hand
|
|
22
5
|
* off out-of-band. An explicit `capability` (re-delegation of a parent zcap)
|
|
23
|
-
* always wins; otherwise a
|
|
24
|
-
* resulting capability is revocable via `space.revoke()` /
|
|
6
|
+
* always wins; otherwise a grant naming its `spaceUrl` is rooted at that
|
|
7
|
+
* Space, so the resulting capability is revocable via `space.revoke()` /
|
|
8
|
+
* `was.revoke()`; otherwise ezcap roots it at the target's own root
|
|
9
|
+
* capability.
|
|
25
10
|
*
|
|
26
11
|
* @param context {ClientContext}
|
|
27
12
|
* @param options {GrantOptions}
|
|
28
13
|
* @returns {Promise<IDelegatedZcap>}
|
|
29
14
|
* @throws {ValidationError} when neither `target` nor `capability` is given,
|
|
30
|
-
* so the delegation names nothing to grant
|
|
15
|
+
* so the delegation names nothing to grant; or when `spaceUrl` is given
|
|
16
|
+
* and `target` does not lie at or beneath it
|
|
31
17
|
*/
|
|
32
|
-
export declare function delegateGrant(context: ClientContext, { to, actions, expires, target, capability }: GrantOptions): Promise<IDelegatedZcap>;
|
|
18
|
+
export declare function delegateGrant(context: ClientContext, { to, actions, expires, target, capability, spaceUrl }: GrantOptions): Promise<IDelegatedZcap>;
|
|
33
19
|
/**
|
|
34
20
|
* Whether a capability permits `action`, matched case-insensitively against
|
|
35
21
|
* its `allowedAction` (a single verb or a list). A capability that states no
|
|
@@ -49,18 +35,21 @@ export declare function allowsAction({ zcap, action }: {
|
|
|
49
35
|
/**
|
|
50
36
|
* The scoped-grant sugar shared by `Space.grant` and `Collection.grant`:
|
|
51
37
|
* delegates per `GrantOptions` with the grant `target` prefilled from the
|
|
52
|
-
* handle's `
|
|
53
|
-
*
|
|
38
|
+
* handle's `url`, the rooting `spaceUrl` from the handle's Space, and the
|
|
39
|
+
* handle's bound `capability`, if any, as the parent for re-delegation.
|
|
40
|
+
* Explicit options win over every prefill.
|
|
54
41
|
*
|
|
55
42
|
* @param context {ClientContext}
|
|
56
43
|
* @param options {object}
|
|
57
|
-
* @param options.
|
|
44
|
+
* @param options.url {string} the handle's URL (target fallback)
|
|
45
|
+
* @param options.spaceUrl {string} the handle's Space (rooting fallback)
|
|
58
46
|
* @param options.options {GrantOptions} the caller's grant options
|
|
59
47
|
* @param [options.capability] {IZcap} the handle's bound capability
|
|
60
48
|
* @returns {Promise<IDelegatedZcap>}
|
|
61
49
|
*/
|
|
62
|
-
export declare function delegateGrantAt(context: ClientContext, {
|
|
63
|
-
|
|
50
|
+
export declare function delegateGrantAt(context: ClientContext, { url, spaceUrl, options, capability }: {
|
|
51
|
+
url: string;
|
|
52
|
+
spaceUrl: string;
|
|
64
53
|
options: GrantOptions;
|
|
65
54
|
capability?: IZcap;
|
|
66
55
|
}): Promise<IDelegatedZcap>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grant.d.ts","sourceRoot":"","sources":["../../src/internal/grant.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"grant.d.ts","sourceRoot":"","sources":["../../src/internal/grant.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAIjD,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAyEtE;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,aAAa,CACjC,OAAO,EAAE,aAAa,EACtB,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,YAAY,GACnE,OAAO,CAAC,cAAc,CAAC,CAsBzB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,EAC3B,IAAI,EACJ,MAAM,EACP,EAAE;IACD,IAAI,CAAC,EAAE,KAAK,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;CACf,GAAG,OAAO,CAWV;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,aAAa,EACtB,EACE,GAAG,EACH,QAAQ,EACR,OAAO,EACP,UAAU,EACX,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,YAAY,CAAA;IACrB,UAAU,CAAC,EAAE,KAAK,CAAA;CACnB,GACA,OAAO,CAAC,cAAc,CAAC,CAOzB"}
|
package/dist/internal/grant.js
CHANGED
|
@@ -1,42 +1,106 @@
|
|
|
1
|
-
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) 2026 Interop Alliance. All rights reserved.
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* The delegation primitive shared by `was.grant()` and the `space`/`collection`
|
|
6
|
+
* grant sugar. Maps `GrantOptions` onto `zcapClient.delegate(...)`, normalizing
|
|
7
|
+
* action verbs to uppercase so a lowercase grant (`'get'`) still validates on
|
|
8
|
+
* the server (which matches actions case-sensitively against `'GET'`).
|
|
9
|
+
*
|
|
10
|
+
* An unparented grant that names its Space (`spaceUrl`, which the scoped sugar
|
|
11
|
+
* fills from the handle) is delegated from that **Space's** root capability,
|
|
12
|
+
* with the target carried as an attenuated `invocationTarget`, rather than
|
|
13
|
+
* from the target's own root capability. Both forms grant the same access (the
|
|
14
|
+
* server verifies WAS routes with target attenuation allowed), but only a
|
|
15
|
+
* Space-rooted chain can be revoked -- revocation is Space-scoped, and the
|
|
16
|
+
* endpoint requires the chain to root exactly in the Space (see `revoke.ts`).
|
|
17
|
+
*
|
|
18
|
+
* A bare `was.grant({ target })` without `spaceUrl` is the other mode, kept
|
|
19
|
+
* on purpose: it delegates from the target's own root capability (ezcap's
|
|
20
|
+
* default). It is the shape for a server at the basic conformance level,
|
|
21
|
+
* which may serve fixed collections, or resources alone, with no Space
|
|
22
|
+
* container to root a chain in. Such a grant cannot be revoked through a
|
|
23
|
+
* Space's revocation endpoint; that is a limitation of that conformance
|
|
24
|
+
* level, not of the client.
|
|
25
|
+
*/
|
|
26
|
+
import { isValidTarget } from '@interop/zcap';
|
|
27
|
+
import { canonicalSpaceUrl } from './paths.js';
|
|
2
28
|
import { rootCapabilityId } from './revoke.js';
|
|
3
29
|
import { ValidationError } from '../errors.js';
|
|
4
30
|
/**
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
31
|
+
* Roots a grant in its Space: the root capability id
|
|
32
|
+
* (`urn:zcap:root:<encoded Space URL>`) to parent it on, after checking that
|
|
33
|
+
* `target` lies at or beneath the Space, and the target to delegate. A chain
|
|
34
|
+
* rooted in one Space cannot delegate a target outside it, and the server
|
|
35
|
+
* would refuse the capability at invocation, so the mismatch is refused here
|
|
36
|
+
* by name.
|
|
37
|
+
*
|
|
38
|
+
* The Space itself may be named in either form. The bare (slash-less) form
|
|
39
|
+
* is accepted as the target, as `parseSpaceTarget` accepts it, and is
|
|
40
|
+
* delegated in canonical form: the server verifies a Space-rooted chain
|
|
41
|
+
* against the canonical Space URL, under which the bare form is not an
|
|
42
|
+
* attenuation of the Space but a sibling of it.
|
|
9
43
|
*
|
|
10
44
|
* The id is returned as a string, which `zcapClient.delegate(...)` accepts for a
|
|
11
45
|
* root parent capability. (Its sibling `request(...)` does not, for a non-`https:`
|
|
12
46
|
* target -- hence the object form in `revoke.ts`.)
|
|
13
47
|
*
|
|
14
48
|
* @param options {object}
|
|
15
|
-
* @param options.
|
|
16
|
-
* @param options.target {string}
|
|
17
|
-
* @returns {string
|
|
49
|
+
* @param options.spaceUrl {string} the Space to root the grant in
|
|
50
|
+
* @param options.target {string} the absolute grant target URL
|
|
51
|
+
* @returns {{ parent: string, target: string }}
|
|
52
|
+
* @throws {ValidationError} when `target` is not at or beneath `spaceUrl`,
|
|
53
|
+
* or its path is rewritten by URL normalization (a dot segment)
|
|
18
54
|
*/
|
|
19
|
-
function
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
55
|
+
function spaceRooted({ spaceUrl, target }) {
|
|
56
|
+
const canonical = canonicalSpaceUrl(spaceUrl);
|
|
57
|
+
// The check runs against the canonical Space URL, the base the server
|
|
58
|
+
// verifies the chain against, so what passes here is what the server
|
|
59
|
+
// accepts. The bare form is the one exception, matched exactly: as a base
|
|
60
|
+
// it would also admit `{space}?x`, which the server refuses.
|
|
61
|
+
const bare = canonical.slice(0, -1);
|
|
62
|
+
if (target !== bare &&
|
|
63
|
+
!isValidTarget({
|
|
64
|
+
invocationTarget: target,
|
|
65
|
+
baseInvocationTarget: canonical,
|
|
66
|
+
allowTargetAttenuation: true
|
|
67
|
+
})) {
|
|
68
|
+
throw new ValidationError(`Grant target "${target}" is not at or beneath the Space ` +
|
|
69
|
+
`"${canonical}" the grant would be rooted in.`);
|
|
70
|
+
}
|
|
71
|
+
// The prefix check reads the raw string, so a dot segment (`{space}../x`)
|
|
72
|
+
// passes it while naming a path outside the Space once a URL parser
|
|
73
|
+
// normalizes it. The server resolves the request URL that way, so such a
|
|
74
|
+
// target can never be invoked. Refuse a target whose path does not survive
|
|
75
|
+
// normalization unchanged. The query, if any, is left as given.
|
|
76
|
+
const origin = new URL(canonical).origin;
|
|
77
|
+
const rawPath = target.slice(origin.length).replace(/[?#].*$/, '');
|
|
78
|
+
if (target !== bare && new URL(target).pathname !== rawPath) {
|
|
79
|
+
throw new ValidationError(`Grant target "${target}" has a path that URL normalization rewrites ` +
|
|
80
|
+
'(a dot segment or an unencoded character); give the target in its ' +
|
|
81
|
+
'normalized form.');
|
|
23
82
|
}
|
|
24
|
-
|
|
25
|
-
|
|
83
|
+
return {
|
|
84
|
+
parent: rootCapabilityId(canonical),
|
|
85
|
+
target: target === bare ? canonical : target
|
|
86
|
+
};
|
|
26
87
|
}
|
|
27
88
|
/**
|
|
28
89
|
* Delegates a capability per `GrantOptions`, returning the signed zcap to hand
|
|
29
90
|
* off out-of-band. An explicit `capability` (re-delegation of a parent zcap)
|
|
30
|
-
* always wins; otherwise a
|
|
31
|
-
* resulting capability is revocable via `space.revoke()` /
|
|
91
|
+
* always wins; otherwise a grant naming its `spaceUrl` is rooted at that
|
|
92
|
+
* Space, so the resulting capability is revocable via `space.revoke()` /
|
|
93
|
+
* `was.revoke()`; otherwise ezcap roots it at the target's own root
|
|
94
|
+
* capability.
|
|
32
95
|
*
|
|
33
96
|
* @param context {ClientContext}
|
|
34
97
|
* @param options {GrantOptions}
|
|
35
98
|
* @returns {Promise<IDelegatedZcap>}
|
|
36
99
|
* @throws {ValidationError} when neither `target` nor `capability` is given,
|
|
37
|
-
* so the delegation names nothing to grant
|
|
100
|
+
* so the delegation names nothing to grant; or when `spaceUrl` is given
|
|
101
|
+
* and `target` does not lie at or beneath it
|
|
38
102
|
*/
|
|
39
|
-
export async function delegateGrant(context, { to, actions, expires, target, capability }) {
|
|
103
|
+
export async function delegateGrant(context, { to, actions, expires, target, capability, spaceUrl }) {
|
|
40
104
|
// The scoped sugar always prefills `target`, so this only catches a direct
|
|
41
105
|
// `was.grant()`. Without either member ezcap has no invocation target and no
|
|
42
106
|
// parent to take one from, and rejects the call with a bare `TypeError` a
|
|
@@ -45,16 +109,15 @@ export async function delegateGrant(context, { to, actions, expires, target, cap
|
|
|
45
109
|
throw new ValidationError('A grant needs a `target` (the invocationTarget URL to grant) or a ' +
|
|
46
110
|
'`capability` (the parent capability to attenuate); neither was given.');
|
|
47
111
|
}
|
|
48
|
-
const
|
|
49
|
-
(target
|
|
50
|
-
|
|
51
|
-
: spaceRootCapabilityId({ baseUrl: context.baseUrl, target }));
|
|
112
|
+
const rooted = capability === undefined && target !== undefined && spaceUrl !== undefined
|
|
113
|
+
? spaceRooted({ spaceUrl, target })
|
|
114
|
+
: { parent: capability, target };
|
|
52
115
|
return context.zcapClient.delegate({
|
|
53
116
|
controller: to,
|
|
54
|
-
invocationTarget: target,
|
|
117
|
+
invocationTarget: rooted.target,
|
|
55
118
|
allowedActions: actions.map(action => action.toUpperCase()),
|
|
56
119
|
expires,
|
|
57
|
-
capability: parent
|
|
120
|
+
capability: rooted.parent
|
|
58
121
|
});
|
|
59
122
|
}
|
|
60
123
|
/**
|
|
@@ -84,20 +147,23 @@ export function allowsAction({ zcap, action }) {
|
|
|
84
147
|
/**
|
|
85
148
|
* The scoped-grant sugar shared by `Space.grant` and `Collection.grant`:
|
|
86
149
|
* delegates per `GrantOptions` with the grant `target` prefilled from the
|
|
87
|
-
* handle's `
|
|
88
|
-
*
|
|
150
|
+
* handle's `url`, the rooting `spaceUrl` from the handle's Space, and the
|
|
151
|
+
* handle's bound `capability`, if any, as the parent for re-delegation.
|
|
152
|
+
* Explicit options win over every prefill.
|
|
89
153
|
*
|
|
90
154
|
* @param context {ClientContext}
|
|
91
155
|
* @param options {object}
|
|
92
|
-
* @param options.
|
|
156
|
+
* @param options.url {string} the handle's URL (target fallback)
|
|
157
|
+
* @param options.spaceUrl {string} the handle's Space (rooting fallback)
|
|
93
158
|
* @param options.options {GrantOptions} the caller's grant options
|
|
94
159
|
* @param [options.capability] {IZcap} the handle's bound capability
|
|
95
160
|
* @returns {Promise<IDelegatedZcap>}
|
|
96
161
|
*/
|
|
97
|
-
export async function delegateGrantAt(context, {
|
|
162
|
+
export async function delegateGrantAt(context, { url, spaceUrl, options, capability }) {
|
|
98
163
|
return delegateGrant(context, {
|
|
99
164
|
...options,
|
|
100
|
-
target: options.target ??
|
|
165
|
+
target: options.target ?? url,
|
|
166
|
+
spaceUrl: options.spaceUrl ?? spaceUrl,
|
|
101
167
|
capability: options.capability ?? capability
|
|
102
168
|
});
|
|
103
169
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grant.js","sourceRoot":"","sources":["../../src/internal/grant.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"grant.js","sourceRoot":"","sources":["../../src/internal/grant.ts"],"names":[],"mappings":"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"}
|
package/dist/internal/meta.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ import type { IZcap, ResourceMetadataCustom, ResourceMetadataCustomInput } from
|
|
|
9
9
|
*
|
|
10
10
|
* @param context {ClientContext}
|
|
11
11
|
* @param options {object}
|
|
12
|
-
* @param options.
|
|
12
|
+
* @param options.metaUrl {string} the `/meta` sub-resource URL
|
|
13
13
|
* @param options.codec {Promise<ResourceCodec>} the resolving codec, awaited
|
|
14
14
|
* concurrently with the read
|
|
15
15
|
* @param options.subject {string} the metadata's owner as it reads in the
|
|
@@ -27,8 +27,8 @@ import type { IZcap, ResourceMetadataCustom, ResourceMetadataCustomInput } from
|
|
|
27
27
|
*/
|
|
28
28
|
export declare function readMeta<Metadata extends {
|
|
29
29
|
custom?: ResourceMetadataCustom;
|
|
30
|
-
}>(context: ClientContext, {
|
|
31
|
-
|
|
30
|
+
}>(context: ClientContext, { metaUrl, codec: codecPromise, subject, slot, capability, onStored }: {
|
|
31
|
+
metaUrl: string;
|
|
32
32
|
codec: Promise<ResourceCodec>;
|
|
33
33
|
subject: string;
|
|
34
34
|
slot: MetaReadSlot;
|
|
@@ -50,7 +50,7 @@ export declare function readMeta<Metadata extends {
|
|
|
50
50
|
*
|
|
51
51
|
* @param context {ClientContext}
|
|
52
52
|
* @param options {object}
|
|
53
|
-
* @param options.
|
|
53
|
+
* @param options.metaUrl {string} the `meta` sub-resource URL
|
|
54
54
|
* @param options.codec {Promise<ResourceCodec>} the resolving codec
|
|
55
55
|
* @param options.custom {ResourceMetadataCustomInput} the user-writable
|
|
56
56
|
* properties, as a full replacement
|
|
@@ -61,8 +61,8 @@ export declare function readMeta<Metadata extends {
|
|
|
61
61
|
* @param [options.capability] {IZcap}
|
|
62
62
|
* @returns {Promise<{ etag?: string }>} the metadata's new ETag
|
|
63
63
|
*/
|
|
64
|
-
export declare function writeMeta(context: ClientContext, {
|
|
65
|
-
|
|
64
|
+
export declare function writeMeta(context: ClientContext, { metaUrl, codec: codecPromise, custom, slot, ifMatch, ifNoneMatch, capability }: {
|
|
65
|
+
metaUrl: string;
|
|
66
66
|
codec: Promise<ResourceCodec>;
|
|
67
67
|
custom: ResourceMetadataCustomInput;
|
|
68
68
|
slot: MetaWriteSlot;
|
|
@@ -136,13 +136,13 @@ export declare function patchCustom(handle: {
|
|
|
136
136
|
*
|
|
137
137
|
* @param context {ClientContext}
|
|
138
138
|
* @param options {object}
|
|
139
|
-
* @param options.
|
|
139
|
+
* @param options.spaceUrl {string}
|
|
140
140
|
* @param options.collectionId {string}
|
|
141
141
|
* @param [options.capability] {IZcap} capability attached to the request
|
|
142
142
|
* @returns {Promise<{ metadata: StoredCollectionMetadata; etag?: string } | null>}
|
|
143
143
|
*/
|
|
144
144
|
export declare function readCollectionMetadata(context: ClientContext, options: {
|
|
145
|
-
|
|
145
|
+
spaceUrl: string;
|
|
146
146
|
collectionId: string;
|
|
147
147
|
capability?: IZcap;
|
|
148
148
|
}): Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../src/internal/meta.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAA;AAE7D,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAIjD,OAAO,KAAK,EACV,KAAK,EACL,sBAAsB,EACtB,2BAA2B,EAC5B,MAAM,aAAa,CAAA;AAEpB;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,QAAQ,CAC5B,QAAQ,SAAS;IAAE,MAAM,CAAC,EAAE,sBAAsB,CAAA;CAAE,EAEpD,OAAO,EAAE,aAAa,EACtB,EACE,
|
|
1
|
+
{"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../src/internal/meta.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAA;AAE7D,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAIjD,OAAO,KAAK,EACV,KAAK,EACL,sBAAsB,EACtB,2BAA2B,EAC5B,MAAM,aAAa,CAAA;AAEpB;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,QAAQ,CAC5B,QAAQ,SAAS;IAAE,MAAM,CAAC,EAAE,sBAAsB,CAAA;CAAE,EAEpD,OAAO,EAAE,aAAa,EACtB,EACE,OAAO,EACP,KAAK,EAAE,YAAY,EACnB,OAAO,EACP,IAAI,EACJ,UAAU,EACV,QAAQ,EACT,EAAE;IACD,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,CAAA;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,YAAY,CAAA;IAClB,UAAU,CAAC,EAAE,KAAK,CAAA;IAClB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE;QAChB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QACjC,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,MAAM,EAAE,sBAAsB,CAAA;KAC/B,KAAK,IAAI,CAAA;CACX,GACA,OAAO,CAAC,CAAC,QAAQ,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,IAAI,CAAC,CA6ChD;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,SAAS,CAC7B,OAAO,EAAE,aAAa,EACtB,EACE,OAAO,EACP,KAAK,EAAE,YAAY,EACnB,MAAM,EACN,IAAI,EACJ,OAAO,EACP,WAAW,EACX,UAAU,EACX,EAAE;IACD,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,CAAA;IAC7B,MAAM,EAAE,2BAA2B,CAAA;IACnC,IAAI,EAAE,aAAa,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,UAAU,CAAC,EAAE,KAAK,CAAA;CACnB,GACA,OAAO,CAAC;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAW5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE;IACN,IAAI,IAAI,OAAO,CAAC;QACd,MAAM,CAAC,EAAE,sBAAsB,CAAA;QAC/B,IAAI,CAAC,EAAE,OAAO,CAAA;QACd,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,GAAG,IAAI,CAAC,CAAA;IACT,OAAO,CACL,IAAI,EAAE;QAAE,MAAM,CAAC,EAAE,sBAAsB,CAAA;KAAE,EACzC,OAAO,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,OAAO,CAAA;KAAE,GACnD,OAAO,CAAC;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAC9B,EACD,KAAK,EAAE,sBAAsB,EAC7B,EACE,SAA6B,EAC7B,MAAc,EACf,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GAC/C,OAAO,CAAC,IAAI,CAAC,CAuCf;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,KAAK,CAAA;CAAE,GACtE,OAAO,CAAC;IAAE,QAAQ,EAAE,wBAAwB,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CAevE"}
|
package/dist/internal/meta.js
CHANGED
|
@@ -17,13 +17,13 @@
|
|
|
17
17
|
* left as stored, because the codec that would decode it is itself resolved
|
|
18
18
|
* from the same object's `encryption` member. It lives here rather than beside
|
|
19
19
|
* the Collection Metadata helpers in `describe.ts` so those stay free of the
|
|
20
|
-
* transport layer; the request shape (
|
|
20
|
+
* transport layer; the request shape (URL, capability, null-unwrap,
|
|
21
21
|
* validator) is still stated in one place, shared by `Collection`'s read and
|
|
22
22
|
* write paths and by the codec resolver's descriptor discovery.
|
|
23
23
|
*/
|
|
24
24
|
import { NotFoundError, WasServerError } from '../errors.js';
|
|
25
25
|
import { compareAndSwap } from './cas.js';
|
|
26
|
-
import {
|
|
26
|
+
import { collectionMetaUrl } from './paths.js';
|
|
27
27
|
import { readDataWithEtag, send } from './request.js';
|
|
28
28
|
import { readEtag, writeHeaders } from './conditional.js';
|
|
29
29
|
import { withCodec } from './withCodec.js';
|
|
@@ -34,7 +34,7 @@ import { withCodec } from './withCodec.js';
|
|
|
34
34
|
*
|
|
35
35
|
* @param context {ClientContext}
|
|
36
36
|
* @param options {object}
|
|
37
|
-
* @param options.
|
|
37
|
+
* @param options.metaUrl {string} the `/meta` sub-resource URL
|
|
38
38
|
* @param options.codec {Promise<ResourceCodec>} the resolving codec, awaited
|
|
39
39
|
* concurrently with the read
|
|
40
40
|
* @param options.subject {string} the metadata's owner as it reads in the
|
|
@@ -50,11 +50,11 @@ import { withCodec } from './withCodec.js';
|
|
|
50
50
|
* decode fails: a read that throws is no baseline
|
|
51
51
|
* @returns {Promise<(Metadata & { etag?: string }) | null>}
|
|
52
52
|
*/
|
|
53
|
-
export async function readMeta(context, {
|
|
53
|
+
export async function readMeta(context, { metaUrl, codec: codecPromise, subject, slot, capability, onStored }) {
|
|
54
54
|
// The metadata GET does not depend on the codec (only its `custom` decode
|
|
55
55
|
// below does), so the two overlap.
|
|
56
56
|
const [codec, response] = await withCodec(codecPromise, send(context, {
|
|
57
|
-
|
|
57
|
+
url: metaUrl,
|
|
58
58
|
method: 'GET',
|
|
59
59
|
capability,
|
|
60
60
|
read: true
|
|
@@ -100,7 +100,7 @@ export async function readMeta(context, { metaPath, codec: codecPromise, subject
|
|
|
100
100
|
*
|
|
101
101
|
* @param context {ClientContext}
|
|
102
102
|
* @param options {object}
|
|
103
|
-
* @param options.
|
|
103
|
+
* @param options.metaUrl {string} the `meta` sub-resource URL
|
|
104
104
|
* @param options.codec {Promise<ResourceCodec>} the resolving codec
|
|
105
105
|
* @param options.custom {ResourceMetadataCustomInput} the user-writable
|
|
106
106
|
* properties, as a full replacement
|
|
@@ -111,11 +111,11 @@ export async function readMeta(context, { metaPath, codec: codecPromise, subject
|
|
|
111
111
|
* @param [options.capability] {IZcap}
|
|
112
112
|
* @returns {Promise<{ etag?: string }>} the metadata's new ETag
|
|
113
113
|
*/
|
|
114
|
-
export async function writeMeta(context, {
|
|
114
|
+
export async function writeMeta(context, { metaUrl, codec: codecPromise, custom, slot, ifMatch, ifNoneMatch, capability }) {
|
|
115
115
|
const codec = await codecPromise;
|
|
116
116
|
const { custom: encoded } = await codec.encodeMeta({ custom, slot });
|
|
117
117
|
const response = await send(context, {
|
|
118
|
-
|
|
118
|
+
url: metaUrl,
|
|
119
119
|
method: 'PUT',
|
|
120
120
|
capability,
|
|
121
121
|
json: { custom: encoded },
|
|
@@ -205,14 +205,17 @@ export async function patchCustom(handle, patch, { operation = 'Metadata update'
|
|
|
205
205
|
*
|
|
206
206
|
* @param context {ClientContext}
|
|
207
207
|
* @param options {object}
|
|
208
|
-
* @param options.
|
|
208
|
+
* @param options.spaceUrl {string}
|
|
209
209
|
* @param options.collectionId {string}
|
|
210
210
|
* @param [options.capability] {IZcap} capability attached to the request
|
|
211
211
|
* @returns {Promise<{ metadata: StoredCollectionMetadata; etag?: string } | null>}
|
|
212
212
|
*/
|
|
213
213
|
export async function readCollectionMetadata(context, options) {
|
|
214
214
|
const read = await readDataWithEtag(context, {
|
|
215
|
-
|
|
215
|
+
url: collectionMetaUrl({
|
|
216
|
+
spaceUrl: options.spaceUrl,
|
|
217
|
+
collectionId: options.collectionId
|
|
218
|
+
}),
|
|
216
219
|
capability: options.capability
|
|
217
220
|
});
|
|
218
221
|
if (read === null) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta.js","sourceRoot":"","sources":["../../src/internal/meta.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAEzC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"meta.js","sourceRoot":"","sources":["../../src/internal/meta.ts"],"names":[],"mappings":"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"}
|