npm package diff
Package: @forge/util
Versions: 1.4.10-next.0 - 1.4.10-next.0-experimental-effab31
File: package/packages/ari/chunk-MPKKD4FA.mjs
Index: package/packages/ari/chunk-MPKKD4FA.mjs
===================================================================
--- package/packages/ari/chunk-MPKKD4FA.mjs
+++ package/packages/ari/chunk-MPKKD4FA.mjs
@@ -0,0 +1,88 @@
+import {
+ JiraNavigationItemAriResourceOwner,
+ JiraNavigationItemAriResourceType
+} from "./chunk-GXFJTOBO.mjs";
+import {
+ RegisteredAri
+} from "./chunk-AB4PPISI.mjs";
+import {
+ AriParser
+} from "./chunk-S7RIZVFI.mjs";
+
+// src/jira/navigation-item/manifest.ts
+var jiraNavigationItemAriStaticOpts = {
+ qualifier: "ari",
+ platformQualifier: "cloud",
+ cloudId: new RegExp("^[a-zA-Z0-9_\\-.]{1,255}$"),
+ // eslint-disable-line no-useless-escape
+ resourceOwner: JiraNavigationItemAriResourceOwner,
+ resourceType: JiraNavigationItemAriResourceType,
+ resourceIdSlug: "activation/{activationId}/{scopeType}/{scopeId}/{itemId}",
+ resourceIdSegmentFormats: {
+ activationId: /[a-zA-Z0-9\-]+/,
+ // eslint-disable-line no-useless-escape
+ scopeType: /(?:project|board|global|plan|queue)/,
+ // eslint-disable-line no-useless-escape
+ scopeId: /[a-zA-Z0-9_\-.]+/,
+ // eslint-disable-line no-useless-escape
+ itemId: /[!a-zA-Z0-9\-_.~@:;{}=]+(\/[!a-zA-Z0-9\-_.~@:;{}=]+)*/
+ // eslint-disable-line no-useless-escape
+ }
+};
+
+// src/jira/navigation-item/index.ts
+var JiraNavigationItemAri = class _JiraNavigationItemAri extends RegisteredAri {
+ constructor(opts) {
+ super(opts);
+ this._siteId = opts.cloudId || "", this._activationId = opts.resourceIdSegmentValues.activationId, this._scopeType = opts.resourceIdSegmentValues.scopeType, this._scopeId = opts.resourceIdSegmentValues.scopeId, this._itemId = opts.resourceIdSegmentValues.itemId;
+ }
+ get siteId() {
+ return this._siteId;
+ }
+ get activationId() {
+ return this._activationId;
+ }
+ get scopeType() {
+ return this._scopeType;
+ }
+ get scopeId() {
+ return this._scopeId;
+ }
+ get itemId() {
+ return this._itemId;
+ }
+ static create(opts) {
+ let derivedOpts = {
+ qualifier: jiraNavigationItemAriStaticOpts.qualifier,
+ platformQualifier: jiraNavigationItemAriStaticOpts.platformQualifier,
+ cloudId: opts.siteId,
+ resourceOwner: jiraNavigationItemAriStaticOpts.resourceOwner,
+ resourceType: jiraNavigationItemAriStaticOpts.resourceType,
+ resourceId: `activation/${opts.activationId}/${opts.scopeType}/${opts.scopeId}/${opts.itemId}`,
+ resourceIdSegmentValues: {
+ activationId: opts.activationId,
+ scopeType: opts.scopeType,
+ scopeId: opts.scopeId,
+ itemId: opts.itemId
+ }
+ }, ariOpts = AriParser.fromOpts(derivedOpts, jiraNavigationItemAriStaticOpts);
+ return new _JiraNavigationItemAri(ariOpts);
+ }
+ static parse(maybeAri) {
+ let opts = AriParser.fromString(maybeAri, jiraNavigationItemAriStaticOpts);
+ return new _JiraNavigationItemAri(opts);
+ }
+ getVariables() {
+ return {
+ siteId: this.siteId,
+ activationId: this.activationId,
+ scopeType: this.scopeType,
+ scopeId: this.scopeId,
+ itemId: this.itemId
+ };
+ }
+};
+
+export {
+ JiraNavigationItemAri
+};