npm package diff

Package: @forge/util

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

File: package/packages/ari/chunk-5SHUUCFN.mjs

Index: package/packages/ari/chunk-5SHUUCFN.mjs
===================================================================
--- package/packages/ari/chunk-5SHUUCFN.mjs
+++ package/packages/ari/chunk-5SHUUCFN.mjs
@@ -0,0 +1,74 @@
+import {
+  PassionfruitAskAriResourceOwner,
+  PassionfruitAskAriResourceType
+} from "./chunk-ZODWYKCM.mjs";
+import {
+  RegisteredAri
+} from "./chunk-AB4PPISI.mjs";
+import {
+  AriParser
+} from "./chunk-S7RIZVFI.mjs";
+
+// src/passionfruit/ask/manifest.ts
+var passionfruitAskAriStaticOpts = {
+  qualifier: "ari",
+  platformQualifier: "cloud",
+  cloudId: new RegExp("^[a-zA-Z0-9_\\-.]{1,255}$"),
+  // eslint-disable-line no-useless-escape
+  resourceOwner: PassionfruitAskAriResourceOwner,
+  resourceType: PassionfruitAskAriResourceType,
+  resourceIdSlug: "workspace/{activationId}/{askId}",
+  resourceIdSegmentFormats: {
+    activationId: /[a-zA-Z0-9\-]+/,
+    // eslint-disable-line no-useless-escape
+    askId: /[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/
+    // eslint-disable-line no-useless-escape
+  }
+};
+
+// src/passionfruit/ask/index.ts
+var PassionfruitAskAri = class _PassionfruitAskAri extends RegisteredAri {
+  constructor(opts) {
+    super(opts);
+    this._siteId = opts.cloudId || "", this._activationId = opts.resourceIdSegmentValues.activationId, this._askId = opts.resourceIdSegmentValues.askId;
+  }
+  get siteId() {
+    return this._siteId;
+  }
+  get activationId() {
+    return this._activationId;
+  }
+  get askId() {
+    return this._askId;
+  }
+  static create(opts) {
+    let derivedOpts = {
+      qualifier: passionfruitAskAriStaticOpts.qualifier,
+      platformQualifier: passionfruitAskAriStaticOpts.platformQualifier,
+      cloudId: opts.siteId,
+      resourceOwner: passionfruitAskAriStaticOpts.resourceOwner,
+      resourceType: passionfruitAskAriStaticOpts.resourceType,
+      resourceId: `workspace/${opts.activationId}/${opts.askId}`,
+      resourceIdSegmentValues: {
+        activationId: opts.activationId,
+        askId: opts.askId
+      }
+    }, ariOpts = AriParser.fromOpts(derivedOpts, passionfruitAskAriStaticOpts);
+    return new _PassionfruitAskAri(ariOpts);
+  }
+  static parse(maybeAri) {
+    let opts = AriParser.fromString(maybeAri, passionfruitAskAriStaticOpts);
+    return new _PassionfruitAskAri(opts);
+  }
+  getVariables() {
+    return {
+      siteId: this.siteId,
+      activationId: this.activationId,
+      askId: this.askId
+    };
+  }
+};
+
+export {
+  PassionfruitAskAri
+};