@forge/util

2.0.12.0.1-experimental-7890858
packages/ari/chunk-TH6UDOCJ.mjs
+packages/ari/chunk-TH6UDOCJ.mjsNew file
+67
Index: package/packages/ari/chunk-TH6UDOCJ.mjs
===================================================================
--- package/packages/ari/chunk-TH6UDOCJ.mjs
+++ package/packages/ari/chunk-TH6UDOCJ.mjs
@@ -0,0 +1,67 @@
+import {
+  CmdbObjectAriResourceOwner,
+  CmdbObjectAriResourceType
+} from "./chunk-BZ6D72WR.mjs";
+import {
+  RegisteredAri
+} from "./chunk-AB4PPISI.mjs";
+import {
+  AriParser
+} from "./chunk-S7RIZVFI.mjs";
+
+// src/cmdb/object/manifest.ts
+var cmdbObjectAriStaticOpts = {
+  qualifier: "ari",
+  platformQualifier: "cloud",
+  cloudId: new RegExp("^$"),
+  resourceOwner: CmdbObjectAriResourceOwner,
+  resourceType: CmdbObjectAriResourceType,
+  resourceIdSlug: "{workspaceId}/{objectId}",
+  resourceIdSegmentFormats: {
+    workspaceId: /[a-zA-Z0-9\-]+/,
+    // eslint-disable-line no-useless-escape
+    objectId: /[!a-zA-Z0-9\-_.~@:;{}=]+(\/[!a-zA-Z0-9\-_.~@:;{}=]+)*/
+  }
+};
+
+// src/cmdb/object/index.ts
+var CmdbObjectAri = class _CmdbObjectAri extends RegisteredAri {
+  constructor(opts) {
+    super(opts), this._workspaceId = opts.resourceIdSegmentValues.workspaceId, this._objectId = opts.resourceIdSegmentValues.objectId;
+  }
+  get workspaceId() {
+    return this._workspaceId;
+  }
+  get objectId() {
+    return this._objectId;
+  }
+  static create(opts) {
+    let derivedOpts = {
+      qualifier: cmdbObjectAriStaticOpts.qualifier,
+      platformQualifier: cmdbObjectAriStaticOpts.platformQualifier,
+      cloudId: void 0,
+      resourceOwner: cmdbObjectAriStaticOpts.resourceOwner,
+      resourceType: cmdbObjectAriStaticOpts.resourceType,
+      resourceId: `${opts.workspaceId}/${opts.objectId}`,
+      resourceIdSegmentValues: {
+        workspaceId: opts.workspaceId,
+        objectId: opts.objectId
+      }
+    }, ariOpts = AriParser.fromOpts(derivedOpts, cmdbObjectAriStaticOpts);
+    return new _CmdbObjectAri(ariOpts);
+  }
+  static parse(maybeAri) {
+    let opts = AriParser.fromString(maybeAri, cmdbObjectAriStaticOpts);
+    return new _CmdbObjectAri(opts);
+  }
+  getVariables() {
+    return {
+      workspaceId: this.workspaceId,
+      objectId: this.objectId
+    };
+  }
+};
+
+export {
+  CmdbObjectAri
+};