@forge/util

2.0.12.0.1-experimental-7890858
packages/ari/cmdb/index.js
~packages/ari/cmdb/index.jsModified
+176−30
Index: package/packages/ari/cmdb/index.js
===================================================================
--- package/packages/ari/cmdb/index.js
+++ package/packages/ari/cmdb/index.js
@@ -21,9 +21,12 @@
   CmdbImportConfigurationAri: () => CmdbImportConfigurationAri,
   CmdbObjectAri: () => CmdbObjectAri,
   CmdbRoleAri: () => CmdbRoleAri,
   CmdbSchemaAri: () => CmdbSchemaAri,
+  CmdbSchemaPermissionsAri: () => CmdbSchemaPermissionsAri,
+  CmdbSiteAri: () => CmdbSiteAri,
   CmdbTypeAri: () => CmdbTypeAri,
+  CmdbTypePermissionsAri: () => CmdbTypePermissionsAri,
   CmdbWorkspaceAri: () => CmdbWorkspaceAri
 });
 module.exports = __toCommonJS(cmdb_exports);
 
@@ -288,25 +291,22 @@
 var cmdbAttributeAriStaticOpts = {
   qualifier: "ari",
   platformQualifier: "cloud",
   cloudId: new RegExp("^$"),
-  // eslint-disable-line no-useless-escape
   resourceOwner: CmdbAttributeAriResourceOwner,
   resourceType: CmdbAttributeAriResourceType,
   resourceIdSlug: "{workspaceId}/{attributeId}",
   resourceIdSegmentFormats: {
     workspaceId: /[a-zA-Z0-9\-]+/,
     // eslint-disable-line no-useless-escape
     attributeId: /[!a-zA-Z0-9\-_.~@:;{}=]+(\/[!a-zA-Z0-9\-_.~@:;{}=]+)*/
-    // eslint-disable-line no-useless-escape
   }
 };
 
 // src/cmdb/attribute/index.ts
 var CmdbAttributeAri = class _CmdbAttributeAri extends RegisteredAri {
   constructor(opts) {
-    super(opts);
-    this._workspaceId = opts.resourceIdSegmentValues.workspaceId, this._attributeId = opts.resourceIdSegmentValues.attributeId;
+    super(opts), this._workspaceId = opts.resourceIdSegmentValues.workspaceId, this._attributeId = opts.resourceIdSegmentValues.attributeId;
   }
   get workspaceId() {
     return this._workspaceId;
   }
@@ -347,25 +347,22 @@
 var cmdbImportConfigurationAriStaticOpts = {
   qualifier: "ari",
   platformQualifier: "cloud",
   cloudId: new RegExp("^$"),
-  // eslint-disable-line no-useless-escape
   resourceOwner: CmdbImportConfigurationAriResourceOwner,
   resourceType: CmdbImportConfigurationAriResourceType,
   resourceIdSlug: "{workspaceId}/{importConfigId}",
   resourceIdSegmentFormats: {
     workspaceId: /[a-zA-Z0-9\-]+/,
     // eslint-disable-line no-useless-escape
     importConfigId: /[!a-zA-Z0-9\-_.~@:;{}=]+(\/[!a-zA-Z0-9\-_.~@:;{}=]+)*/
-    // eslint-disable-line no-useless-escape
   }
 };
 
 // src/cmdb/import-configuration/index.ts
 var CmdbImportConfigurationAri = class _CmdbImportConfigurationAri extends RegisteredAri {
   constructor(opts) {
-    super(opts);
-    this._workspaceId = opts.resourceIdSegmentValues.workspaceId, this._importConfigId = opts.resourceIdSegmentValues.importConfigId;
+    super(opts), this._workspaceId = opts.resourceIdSegmentValues.workspaceId, this._importConfigId = opts.resourceIdSegmentValues.importConfigId;
   }
   get workspaceId() {
     return this._workspaceId;
   }
@@ -406,25 +403,22 @@
 var cmdbObjectAriStaticOpts = {
   qualifier: "ari",
   platformQualifier: "cloud",
   cloudId: new RegExp("^$"),
-  // eslint-disable-line no-useless-escape
   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\-_.~@:;{}=]+)*/
-    // eslint-disable-line no-useless-escape
   }
 };
 
 // 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;
+    super(opts), this._workspaceId = opts.resourceIdSegmentValues.workspaceId, this._objectId = opts.resourceIdSegmentValues.objectId;
   }
   get workspaceId() {
     return this._workspaceId;
   }
@@ -465,25 +459,21 @@
 var cmdbRoleAriStaticOpts = {
   qualifier: "ari",
   platformQualifier: "cloud",
   cloudId: new RegExp("^$"),
-  // eslint-disable-line no-useless-escape
   resourceOwner: CmdbRoleAriResourceOwner,
   resourceType: CmdbRoleAriResourceType,
   resourceIdSlug: "{roleGroup}/{roleType}",
   resourceIdSegmentFormats: {
-    roleGroup: /(?:schema|airtrack|airtrack-buoy)/,
-    // eslint-disable-line no-useless-escape
-    roleType: /(?:viewer|admin|report-viewer|report-editor)/
-    // eslint-disable-line no-useless-escape
+    roleGroup: /(?:schema|airtrack|airtrack-buoy|product)/,
+    roleType: /(?:viewer|admin|report-viewer|report-editor|member|creator|user-admin)/
   }
 };
 
 // src/cmdb/role/index.ts
 var CmdbRoleAri = class _CmdbRoleAri extends RegisteredAri {
   constructor(opts) {
-    super(opts);
-    this._roleGroup = opts.resourceIdSegmentValues.roleGroup, this._roleType = opts.resourceIdSegmentValues.roleType;
+    super(opts), this._roleGroup = opts.resourceIdSegmentValues.roleGroup, this._roleType = opts.resourceIdSegmentValues.roleType;
   }
   get roleGroup() {
     return this._roleGroup;
   }
@@ -524,25 +514,22 @@
 var cmdbSchemaAriStaticOpts = {
   qualifier: "ari",
   platformQualifier: "cloud",
   cloudId: new RegExp("^$"),
-  // eslint-disable-line no-useless-escape
   resourceOwner: CmdbSchemaAriResourceOwner,
   resourceType: CmdbSchemaAriResourceType,
   resourceIdSlug: "{workspaceId}/{schemaId}",
   resourceIdSegmentFormats: {
     workspaceId: /[a-zA-Z0-9\-]+/,
     // eslint-disable-line no-useless-escape
     schemaId: /[!a-zA-Z0-9\-_.~@:;{}=]+(\/[!a-zA-Z0-9\-_.~@:;{}=]+)*/
-    // eslint-disable-line no-useless-escape
   }
 };
 
 // src/cmdb/schema/index.ts
 var CmdbSchemaAri = class _CmdbSchemaAri extends RegisteredAri {
   constructor(opts) {
-    super(opts);
-    this._workspaceId = opts.resourceIdSegmentValues.workspaceId, this._schemaId = opts.resourceIdSegmentValues.schemaId;
+    super(opts), this._workspaceId = opts.resourceIdSegmentValues.workspaceId, this._schemaId = opts.resourceIdSegmentValues.schemaId;
   }
   get workspaceId() {
     return this._workspaceId;
   }
@@ -575,33 +562,135 @@
     };
   }
 };
 
+// src/cmdb/schema-permissions/types.ts
+var CmdbSchemaPermissionsAriResourceOwner = "cmdb", CmdbSchemaPermissionsAriResourceType = "schema-permissions";
+
+// src/cmdb/schema-permissions/manifest.ts
+var cmdbSchemaPermissionsAriStaticOpts = {
+  qualifier: "ari",
+  platformQualifier: "cloud",
+  cloudId: new RegExp("^$"),
+  resourceOwner: CmdbSchemaPermissionsAriResourceOwner,
+  resourceType: CmdbSchemaPermissionsAriResourceType,
+  resourceIdSlug: "{workspaceId}/{schemaId}",
+  resourceIdSegmentFormats: {
+    workspaceId: /[a-zA-Z0-9\-]+/,
+    // eslint-disable-line no-useless-escape
+    schemaId: /[!a-zA-Z0-9\-_.~@:;{}=]+(\/[!a-zA-Z0-9\-_.~@:;{}=]+)*/
+  }
+};
+
+// src/cmdb/schema-permissions/index.ts
+var CmdbSchemaPermissionsAri = class _CmdbSchemaPermissionsAri extends RegisteredAri {
+  constructor(opts) {
+    super(opts), this._workspaceId = opts.resourceIdSegmentValues.workspaceId, this._schemaId = opts.resourceIdSegmentValues.schemaId;
+  }
+  get workspaceId() {
+    return this._workspaceId;
+  }
+  get schemaId() {
+    return this._schemaId;
+  }
+  static create(opts) {
+    let derivedOpts = {
+      qualifier: cmdbSchemaPermissionsAriStaticOpts.qualifier,
+      platformQualifier: cmdbSchemaPermissionsAriStaticOpts.platformQualifier,
+      cloudId: void 0,
+      resourceOwner: cmdbSchemaPermissionsAriStaticOpts.resourceOwner,
+      resourceType: cmdbSchemaPermissionsAriStaticOpts.resourceType,
+      resourceId: `${opts.workspaceId}/${opts.schemaId}`,
+      resourceIdSegmentValues: {
+        workspaceId: opts.workspaceId,
+        schemaId: opts.schemaId
+      }
+    }, ariOpts = AriParser.fromOpts(derivedOpts, cmdbSchemaPermissionsAriStaticOpts);
+    return new _CmdbSchemaPermissionsAri(ariOpts);
+  }
+  static parse(maybeAri) {
+    let opts = AriParser.fromString(maybeAri, cmdbSchemaPermissionsAriStaticOpts);
+    return new _CmdbSchemaPermissionsAri(opts);
+  }
+  getVariables() {
+    return {
+      workspaceId: this.workspaceId,
+      schemaId: this.schemaId
+    };
+  }
+};
+
+// src/cmdb/site/types.ts
+var CmdbSiteAriResourceOwner = "cmdb", CmdbSiteAriResourceType = "site";
+
+// src/cmdb/site/manifest.ts
+var cmdbSiteAriStaticOpts = {
+  qualifier: "ari",
+  platformQualifier: "cloud",
+  cloudId: new RegExp("^$"),
+  resourceOwner: CmdbSiteAriResourceOwner,
+  resourceType: CmdbSiteAriResourceType,
+  resourceIdSlug: "{siteId}",
+  resourceIdSegmentFormats: {
+    siteId: /[a-zA-Z0-9_\-.]{1,255}/
+  }
+};
+
+// src/cmdb/site/index.ts
+var CmdbSiteAri = class _CmdbSiteAri extends RegisteredAri {
+  constructor(opts) {
+    super(opts), this._siteId = opts.resourceIdSegmentValues.siteId;
+  }
+  get siteId() {
+    return this._siteId;
+  }
+  static create(opts) {
+    let derivedOpts = {
+      qualifier: cmdbSiteAriStaticOpts.qualifier,
+      platformQualifier: cmdbSiteAriStaticOpts.platformQualifier,
+      cloudId: void 0,
+      resourceOwner: cmdbSiteAriStaticOpts.resourceOwner,
+      resourceType: cmdbSiteAriStaticOpts.resourceType,
+      resourceId: `${opts.siteId}`,
+      resourceIdSegmentValues: {
+        siteId: opts.siteId
+      }
+    }, ariOpts = AriParser.fromOpts(derivedOpts, cmdbSiteAriStaticOpts);
+    return new _CmdbSiteAri(ariOpts);
+  }
+  static parse(maybeAri) {
+    let opts = AriParser.fromString(maybeAri, cmdbSiteAriStaticOpts);
+    return new _CmdbSiteAri(opts);
+  }
+  getVariables() {
+    return {
+      siteId: this.siteId
+    };
+  }
+};
+
 // src/cmdb/type/types.ts
 var CmdbTypeAriResourceOwner = "cmdb", CmdbTypeAriResourceType = "type";
 
 // src/cmdb/type/manifest.ts
 var cmdbTypeAriStaticOpts = {
   qualifier: "ari",
   platformQualifier: "cloud",
   cloudId: new RegExp("^$"),
-  // eslint-disable-line no-useless-escape
   resourceOwner: CmdbTypeAriResourceOwner,
   resourceType: CmdbTypeAriResourceType,
   resourceIdSlug: "{workspaceId}/{typeId}",
   resourceIdSegmentFormats: {
     workspaceId: /[a-zA-Z0-9\-]+/,
     // eslint-disable-line no-useless-escape
     typeId: /[!a-zA-Z0-9\-_.~@:;{}=]+(\/[!a-zA-Z0-9\-_.~@:;{}=]+)*/
-    // eslint-disable-line no-useless-escape
   }
 };
 
 // src/cmdb/type/index.ts
 var CmdbTypeAri = class _CmdbTypeAri extends RegisteredAri {
   constructor(opts) {
-    super(opts);
-    this._workspaceId = opts.resourceIdSegmentValues.workspaceId, this._typeId = opts.resourceIdSegmentValues.typeId;
+    super(opts), this._workspaceId = opts.resourceIdSegmentValues.workspaceId, this._typeId = opts.resourceIdSegmentValues.typeId;
   }
   get workspaceId() {
     return this._workspaceId;
   }
@@ -634,17 +723,72 @@
     };
   }
 };
 
+// src/cmdb/type-permissions/types.ts
+var CmdbTypePermissionsAriResourceOwner = "cmdb", CmdbTypePermissionsAriResourceType = "type-permissions";
+
+// src/cmdb/type-permissions/manifest.ts
+var cmdbTypePermissionsAriStaticOpts = {
+  qualifier: "ari",
+  platformQualifier: "cloud",
+  cloudId: new RegExp("^$"),
+  resourceOwner: CmdbTypePermissionsAriResourceOwner,
+  resourceType: CmdbTypePermissionsAriResourceType,
+  resourceIdSlug: "{workspaceId}/{typeId}",
+  resourceIdSegmentFormats: {
+    workspaceId: /[a-zA-Z0-9\-]+/,
+    // eslint-disable-line no-useless-escape
+    typeId: /[!a-zA-Z0-9\-_.~@:;{}=]+(\/[!a-zA-Z0-9\-_.~@:;{}=]+)*/
+  }
+};
+
+// src/cmdb/type-permissions/index.ts
+var CmdbTypePermissionsAri = class _CmdbTypePermissionsAri extends RegisteredAri {
+  constructor(opts) {
+    super(opts), this._workspaceId = opts.resourceIdSegmentValues.workspaceId, this._typeId = opts.resourceIdSegmentValues.typeId;
+  }
+  get workspaceId() {
+    return this._workspaceId;
+  }
+  get typeId() {
+    return this._typeId;
+  }
+  static create(opts) {
+    let derivedOpts = {
+      qualifier: cmdbTypePermissionsAriStaticOpts.qualifier,
+      platformQualifier: cmdbTypePermissionsAriStaticOpts.platformQualifier,
+      cloudId: void 0,
+      resourceOwner: cmdbTypePermissionsAriStaticOpts.resourceOwner,
+      resourceType: cmdbTypePermissionsAriStaticOpts.resourceType,
+      resourceId: `${opts.workspaceId}/${opts.typeId}`,
+      resourceIdSegmentValues: {
+        workspaceId: opts.workspaceId,
+        typeId: opts.typeId
+      }
+    }, ariOpts = AriParser.fromOpts(derivedOpts, cmdbTypePermissionsAriStaticOpts);
+    return new _CmdbTypePermissionsAri(ariOpts);
+  }
+  static parse(maybeAri) {
+    let opts = AriParser.fromString(maybeAri, cmdbTypePermissionsAriStaticOpts);
+    return new _CmdbTypePermissionsAri(opts);
+  }
+  getVariables() {
+    return {
+      workspaceId: this.workspaceId,
+      typeId: this.typeId
+    };
+  }
+};
+
 // src/cmdb/workspace/types.ts
 var CmdbWorkspaceAriResourceOwner = "cmdb", CmdbWorkspaceAriResourceType = "workspace";
 
 // src/cmdb/workspace/manifest.ts
 var cmdbWorkspaceAriStaticOpts = {
   qualifier: "ari",
   platformQualifier: "cloud",
   cloudId: new RegExp("^$"),
-  // eslint-disable-line no-useless-escape
   resourceOwner: CmdbWorkspaceAriResourceOwner,
   resourceType: CmdbWorkspaceAriResourceType,
   resourceIdSlug: "{workspaceId}",
   resourceIdSegmentFormats: {
@@ -655,10 +799,9 @@
 
 // src/cmdb/workspace/index.ts
 var CmdbWorkspaceAri = class _CmdbWorkspaceAri extends RegisteredAri {
   constructor(opts) {
-    super(opts);
-    this._workspaceId = opts.resourceIdSegmentValues.workspaceId;
+    super(opts), this._workspaceId = opts.resourceIdSegmentValues.workspaceId;
   }
   get workspaceId() {
     return this._workspaceId;
   }
@@ -692,7 +835,10 @@
   CmdbImportConfigurationAri,
   CmdbObjectAri,
   CmdbRoleAri,
   CmdbSchemaAri,
+  CmdbSchemaPermissionsAri,
+  CmdbSiteAri,
   CmdbTypeAri,
+  CmdbTypePermissionsAri,
   CmdbWorkspaceAri
 });