@forge/util

2.0.12.0.1-experimental-7890858
packages/ari/chunk-DCCMMLKH.mjs
+packages/ari/chunk-DCCMMLKH.mjsNew file
+78
Index: package/packages/ari/chunk-DCCMMLKH.mjs
===================================================================
--- package/packages/ari/chunk-DCCMMLKH.mjs
+++ package/packages/ari/chunk-DCCMMLKH.mjs
@@ -0,0 +1,78 @@
+import {
+  EcosystemExtensionAriResourceOwner,
+  EcosystemExtensionAriResourceType
+} from "./chunk-Q6OH5L4G.mjs";
+import {
+  RegisteredAri
+} from "./chunk-AB4PPISI.mjs";
+import {
+  AriParser
+} from "./chunk-S7RIZVFI.mjs";
+
+// src/ecosystem/extension/manifest.ts
+var ecosystemExtensionAriStaticOpts = {
+  qualifier: "ari",
+  platformQualifier: "cloud",
+  cloudId: new RegExp("^$"),
+  resourceOwner: EcosystemExtensionAriResourceOwner,
+  resourceType: EcosystemExtensionAriResourceType,
+  resourceIdSlug: "{appId}/{environmentId}/{groupId}/{extensionKey}",
+  resourceIdSegmentFormats: {
+    appId: /[0-9a-f]{8}-[0-9a-f]{4}-[0-5][0-9a-f]{3}-[089ab][0-9a-f]{3}-[0-9a-f]{12}/,
+    environmentId: /[0-9a-f]{8}-[0-9a-f]{4}-[0-5][0-9a-f]{3}-[089ab][0-9a-f]{3}-[0-9a-f]{12}/,
+    groupId: /([0-9a-f]{8}-[0-9a-f]{4}-[0-5][0-9a-f]{3}-[089ab][0-9a-f]{3}-[0-9a-f]{12}|static)/,
+    extensionKey: /[a-zA-Z0-9-._]+/
+  }
+};
+
+// src/ecosystem/extension/index.ts
+var EcosystemExtensionAri = class _EcosystemExtensionAri extends RegisteredAri {
+  constructor(opts) {
+    super(opts), this._appId = opts.resourceIdSegmentValues.appId, this._environmentId = opts.resourceIdSegmentValues.environmentId, this._groupId = opts.resourceIdSegmentValues.groupId, this._extensionKey = opts.resourceIdSegmentValues.extensionKey;
+  }
+  get appId() {
+    return this._appId;
+  }
+  get environmentId() {
+    return this._environmentId;
+  }
+  get groupId() {
+    return this._groupId;
+  }
+  get extensionKey() {
+    return this._extensionKey;
+  }
+  static create(opts) {
+    let derivedOpts = {
+      qualifier: ecosystemExtensionAriStaticOpts.qualifier,
+      platformQualifier: ecosystemExtensionAriStaticOpts.platformQualifier,
+      cloudId: void 0,
+      resourceOwner: ecosystemExtensionAriStaticOpts.resourceOwner,
+      resourceType: ecosystemExtensionAriStaticOpts.resourceType,
+      resourceId: `${opts.appId}/${opts.environmentId}/${opts.groupId}/${opts.extensionKey}`,
+      resourceIdSegmentValues: {
+        appId: opts.appId,
+        environmentId: opts.environmentId,
+        groupId: opts.groupId,
+        extensionKey: opts.extensionKey
+      }
+    }, ariOpts = AriParser.fromOpts(derivedOpts, ecosystemExtensionAriStaticOpts);
+    return new _EcosystemExtensionAri(ariOpts);
+  }
+  static parse(maybeAri) {
+    let opts = AriParser.fromString(maybeAri, ecosystemExtensionAriStaticOpts);
+    return new _EcosystemExtensionAri(opts);
+  }
+  getVariables() {
+    return {
+      appId: this.appId,
+      environmentId: this.environmentId,
+      groupId: this.groupId,
+      extensionKey: this.extensionKey
+    };
+  }
+};
+
+export {
+  EcosystemExtensionAri
+};