@tinycloud/sdk-core 2.11.0-beta.0 → 2.11.0-beta.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/dist/delegations/index.cjs +10 -2
- package/dist/delegations/index.cjs.map +1 -1
- package/dist/delegations/index.d.cts +2 -2
- package/dist/delegations/index.d.ts +2 -2
- package/dist/delegations/index.js +10 -2
- package/dist/delegations/index.js.map +1 -1
- package/dist/index.cjs +10 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +10 -2
- package/dist/index.js.map +1 -1
- package/dist/{recipient-types.schema-B2wH53_t.d.cts → recipient-types.schema-CWIt63Qp.d.cts} +34 -4
- package/dist/{recipient-types.schema-B2wH53_t.d.ts → recipient-types.schema-CWIt63Qp.d.ts} +34 -4
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -10126,6 +10126,10 @@ async function createPolicyEnforcementDelegation(input) {
|
|
|
10126
10126
|
spaceId: input.spaceId,
|
|
10127
10127
|
path: input.path,
|
|
10128
10128
|
actions: [...input.actions],
|
|
10129
|
+
...input.decryption === void 0 ? {} : {
|
|
10130
|
+
decryptionNetworkId: input.decryption.networkId,
|
|
10131
|
+
decryptionAction: input.decryption.action
|
|
10132
|
+
},
|
|
10129
10133
|
contentSourceDigest: input.contentSourceDigest,
|
|
10130
10134
|
expiresAt: input.expiresAt
|
|
10131
10135
|
};
|
|
@@ -10145,7 +10149,9 @@ function computeOwnerShareRegistrationCid(registration) {
|
|
|
10145
10149
|
function validateOwnerSharePolicyRegistration(value, expected) {
|
|
10146
10150
|
if (cid(expected.policy.bytes) !== expected.policy.cid) throw new Error("submitted owner-share policy bytes do not match its CID");
|
|
10147
10151
|
const root = assertObject(value, ["registration", "proof"], "owner-share registration response");
|
|
10148
|
-
const
|
|
10152
|
+
const rawRegistration = root.registration;
|
|
10153
|
+
const hasDecryption = typeof rawRegistration === "object" && rawRegistration !== null && Object.prototype.hasOwnProperty.call(rawRegistration, "decryption");
|
|
10154
|
+
const registration = assertObject(root.registration, ["registrationCid", "policyCid", "ownerDelegationCid", "enforcementDelegationCid", "ownerDid", "shareKeyDid", "enforcerDid", "shareId", "recipientMatcher", "target", "resource", "actions", ...hasDecryption ? ["decryption"] : [], "contentSource", "contentSourceDigest", "registeredAt", "expiresAt"], "owner-share registration");
|
|
10149
10155
|
const proof = assertObject(root.proof, ["alg", "kid", "signature"], "owner-share registration proof");
|
|
10150
10156
|
if (registration.policyCid !== expected.policy.cid || registration.ownerDelegationCid !== expected.ownerDelegation.delegationCid || registration.enforcementDelegationCid !== expected.enforcementDelegation.cid || registration.contentSourceDigest !== expected.contentSourceDigest) throw new Error("owner-share registration is not bound to the submitted chain");
|
|
10151
10157
|
let policyValue;
|
|
@@ -10161,7 +10167,9 @@ function validateOwnerSharePolicyRegistration(value, expected) {
|
|
|
10161
10167
|
const registrationTarget = registration.target;
|
|
10162
10168
|
const registrationResource = registration.resource;
|
|
10163
10169
|
const enforcementFacts = expected.enforcementDelegation.facts;
|
|
10164
|
-
|
|
10170
|
+
const decryption = policy.decryption;
|
|
10171
|
+
const decryptionMatches = decryption === void 0 ? registration.decryption === void 0 : registration.decryption !== void 0 && canonicalizeSignedObjectUnsigned(decryption) === canonicalizeSignedObjectUnsigned(registration.decryption);
|
|
10172
|
+
if (typeof target?.origin !== "string" || typeof target.nodeAudience !== "string" || typeof target.enforcerDid !== "string" || typeof target.spaceId !== "string" || typeof resource?.kind !== "string" || !["exact", "prefix"].includes(resource.kind) || typeof resource?.path !== "string" || !Array.isArray(policy.actions) || policy.ownerDid !== registration.ownerDid || policy.shareKeyDid !== registration.shareKeyDid || policy.shareId !== registration.shareId || canonicalizeSignedObjectUnsigned(policy.recipientMatcher) !== canonicalizeSignedObjectUnsigned(registration.recipientMatcher) || target.origin !== registrationTarget.origin || target.nodeAudience !== registrationTarget.nodeAudience || target.enforcerDid !== registration.enforcerDid || target.spaceId !== registrationTarget.spaceId || resource.kind !== registrationResource.kind || resource.path !== registrationResource.path || canonicalizeSignedObjectUnsigned(policy.actions) !== canonicalizeSignedObjectUnsigned(registration.actions) || !decryptionMatches || canonicalizeSignedObjectUnsigned(policy.contentSource) !== canonicalizeSignedObjectUnsigned(registration.contentSource) || policy.expiresAt !== registration.expiresAt || policy.contentSourceDigest !== registration.contentSourceDigest || enforcementFacts.ownerDelegationCid !== registration.ownerDelegationCid || enforcementFacts.policyCid !== registration.policyCid || enforcementFacts.shareKeyDid !== registration.shareKeyDid || enforcementFacts.enforcerDid !== registration.enforcerDid || enforcementFacts.nodeAudience !== registrationTarget.nodeAudience || enforcementFacts.spaceId !== registrationTarget.spaceId || enforcementFacts.path !== registrationResource.path || canonicalizeSignedObjectUnsigned(enforcementFacts.actions) !== canonicalizeSignedObjectUnsigned(registration.actions) || enforcementFacts.decryptionNetworkId !== decryption?.networkId || enforcementFacts.decryptionAction !== decryption?.action || enforcementFacts.expiresAt !== registration.expiresAt) throw new Error("owner-share registration is not bound to the canonical policy");
|
|
10165
10173
|
if (typeof registration.registrationCid !== "string" || typeof registration.expiresAt !== "string" || typeof registration.registeredAt !== "string") throw new Error("owner-share registration timestamps are invalid");
|
|
10166
10174
|
if (new Date(registration.expiresAt).toISOString() !== registration.expiresAt || Date.parse(registration.expiresAt) <= Date.now()) throw new Error("owner-share registration is expired or non-canonical");
|
|
10167
10175
|
const { registrationCid: _registrationCid, ...registrationCore } = registration;
|