@tinycloud/operations 0.4.0-beta.12 → 0.4.0-beta.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -357,8 +357,13 @@ function canonicalizeRecapCaveats(caveats) {
357
357
  }
358
358
  return `[${branches.join(",")}]`;
359
359
  }
360
+ function isExplicitOnlyAction(action) {
361
+ return Object.prototype.hasOwnProperty.call(EXPLICIT_ONLY_ACTIONS, action);
362
+ }
360
363
  function actionContains(grantedAction, requestedAction) {
361
- if (grantedAction === "*" || grantedAction === requestedAction) return true;
364
+ if (grantedAction === requestedAction) return true;
365
+ if (isExplicitOnlyAction(requestedAction)) return false;
366
+ if (grantedAction === "*") return true;
362
367
  if (!grantedAction.endsWith("/*")) return false;
363
368
  const service = grantedAction.slice(0, -2);
364
369
  return requestedAction === service || requestedAction.startsWith(`${service}/`);
@@ -383,10 +388,15 @@ function cloneEntry(entry) {
383
388
  ...entry.expiry !== void 0 ? { expiry: entry.expiry } : {}
384
389
  };
385
390
  }
391
+ var EXPLICIT_ONLY_ACTIONS;
386
392
  var init_capabilities = __esm({
387
393
  "../sdk-core/src/capabilities.ts"() {
388
394
  "use strict";
389
395
  init_manifest();
396
+ EXPLICIT_ONLY_ACTIONS = {
397
+ "tinycloud.kv/sync": true,
398
+ "tinycloud.kv/retain": true
399
+ };
390
400
  }
391
401
  });
392
402