npm package diff

Package: @forge/util

Versions: 1.4.10-next.0 - 1.4.10-next.0-experimental-effab31

File: package/packages/ari/chunk-DTL5CHR3.mjs

Index: package/packages/ari/chunk-DTL5CHR3.mjs
===================================================================
--- package/packages/ari/chunk-DTL5CHR3.mjs
+++ package/packages/ari/chunk-DTL5CHR3.mjs
@@ -0,0 +1,70 @@
+import {
+  PurePermissionAriResourceOwner,
+  PurePermissionAriResourceType
+} from "./chunk-BR3GY5NN.mjs";
+import {
+  RegisteredAri
+} from "./chunk-AB4PPISI.mjs";
+import {
+  AriParser
+} from "./chunk-S7RIZVFI.mjs";
+
+// src/pure/permission/manifest.ts
+var purePermissionAriStaticOpts = {
+  qualifier: "ari",
+  platformQualifier: "cloud",
+  cloudId: new RegExp("^$"),
+  // eslint-disable-line no-useless-escape
+  resourceOwner: PurePermissionAriResourceOwner,
+  resourceType: PurePermissionAriResourceType,
+  resourceIdSlug: "{resourceIdParam}/{permissionId}",
+  resourceIdSegmentFormats: {
+    resourceIdParam: /[!a-zA-Z0-9\-_.~@:;{}=]+(\/[!a-zA-Z0-9\-_.~@:;{}=]+)*/,
+    // eslint-disable-line no-useless-escape
+    permissionId: /(?:read|write)/
+    // eslint-disable-line no-useless-escape
+  }
+};
+
+// src/pure/permission/index.ts
+var PurePermissionAri = class _PurePermissionAri extends RegisteredAri {
+  constructor(opts) {
+    super(opts);
+    this._resourceIdParam = opts.resourceIdSegmentValues.resourceIdParam, this._permissionId = opts.resourceIdSegmentValues.permissionId;
+  }
+  get resourceIdParam() {
+    return this._resourceIdParam;
+  }
+  get permissionId() {
+    return this._permissionId;
+  }
+  static create(opts) {
+    let derivedOpts = {
+      qualifier: purePermissionAriStaticOpts.qualifier,
+      platformQualifier: purePermissionAriStaticOpts.platformQualifier,
+      cloudId: void 0,
+      resourceOwner: purePermissionAriStaticOpts.resourceOwner,
+      resourceType: purePermissionAriStaticOpts.resourceType,
+      resourceId: `${opts.resourceIdParam}/${opts.permissionId}`,
+      resourceIdSegmentValues: {
+        resourceIdParam: opts.resourceIdParam,
+        permissionId: opts.permissionId
+      }
+    }, ariOpts = AriParser.fromOpts(derivedOpts, purePermissionAriStaticOpts);
+    return new _PurePermissionAri(ariOpts);
+  }
+  static parse(maybeAri) {
+    let opts = AriParser.fromString(maybeAri, purePermissionAriStaticOpts);
+    return new _PurePermissionAri(opts);
+  }
+  getVariables() {
+    return {
+      resourceIdParam: this.resourceIdParam,
+      permissionId: this.permissionId
+    };
+  }
+};
+
+export {
+  PurePermissionAri
+};