npm package diff

Package: @forge/util

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

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

Index: package/packages/ari/chunk-WVQYQ6SP.mjs
===================================================================
--- package/packages/ari/chunk-WVQYQ6SP.mjs
+++ package/packages/ari/chunk-WVQYQ6SP.mjs
@@ -0,0 +1,74 @@
+import {
+  JiraAlignProjectAriResourceOwner,
+  JiraAlignProjectAriResourceType
+} from "./chunk-FTRG34JG.mjs";
+import {
+  RegisteredAri
+} from "./chunk-AB4PPISI.mjs";
+import {
+  AriParser
+} from "./chunk-S7RIZVFI.mjs";
+
+// src/jira-align/project/manifest.ts
+var jiraAlignProjectAriStaticOpts = {
+  qualifier: "ari",
+  platformQualifier: "cloud",
+  cloudId: new RegExp("^[0-9a-f]{8}-[0-9a-f]{4}-[0-5][0-9a-f]{3}-[089ab][0-9a-f]{3}-[0-9a-f]{12}$"),
+  // eslint-disable-line no-useless-escape
+  resourceOwner: JiraAlignProjectAriResourceOwner,
+  resourceType: JiraAlignProjectAriResourceType,
+  resourceIdSlug: "{projectType}/{projectId}",
+  resourceIdSegmentFormats: {
+    projectType: /(?:capability|epic|theme)/,
+    // eslint-disable-line no-useless-escape
+    projectId: /[0-9]+/
+    // eslint-disable-line no-useless-escape
+  }
+};
+
+// src/jira-align/project/index.ts
+var JiraAlignProjectAri = class _JiraAlignProjectAri extends RegisteredAri {
+  constructor(opts) {
+    super(opts);
+    this._instanceId = opts.cloudId || "", this._projectType = opts.resourceIdSegmentValues.projectType, this._projectId = opts.resourceIdSegmentValues.projectId;
+  }
+  get instanceId() {
+    return this._instanceId;
+  }
+  get projectType() {
+    return this._projectType;
+  }
+  get projectId() {
+    return this._projectId;
+  }
+  static create(opts) {
+    let derivedOpts = {
+      qualifier: jiraAlignProjectAriStaticOpts.qualifier,
+      platformQualifier: jiraAlignProjectAriStaticOpts.platformQualifier,
+      cloudId: opts.instanceId,
+      resourceOwner: jiraAlignProjectAriStaticOpts.resourceOwner,
+      resourceType: jiraAlignProjectAriStaticOpts.resourceType,
+      resourceId: `${opts.projectType}/${opts.projectId}`,
+      resourceIdSegmentValues: {
+        projectType: opts.projectType,
+        projectId: opts.projectId
+      }
+    }, ariOpts = AriParser.fromOpts(derivedOpts, jiraAlignProjectAriStaticOpts);
+    return new _JiraAlignProjectAri(ariOpts);
+  }
+  static parse(maybeAri) {
+    let opts = AriParser.fromString(maybeAri, jiraAlignProjectAriStaticOpts);
+    return new _JiraAlignProjectAri(opts);
+  }
+  getVariables() {
+    return {
+      instanceId: this.instanceId,
+      projectType: this.projectType,
+      projectId: this.projectId
+    };
+  }
+};
+
+export {
+  JiraAlignProjectAri
+};