npm package diff
Package: @forge/util
Versions: 1.4.10-next.0 - 1.4.10-next.0-experimental-effab31
File: package/packages/ari/search/index.js
Index: package/packages/ari/search/index.js
===================================================================
--- package/packages/ari/search/index.js
+++ package/packages/ari/search/index.js
@@ -18,18 +18,19 @@
var search_exports = {};
__export(search_exports, {
SearchEventAri: () => SearchEventAri,
SearchForwardDocumentAri: () => SearchForwardDocumentAri,
- SearchForwardDocumentSubscriptionAri: () => SearchForwardDocumentSubscriptionAri
+ SearchForwardDocumentSubscriptionAri: () => SearchForwardDocumentSubscriptionAri,
+ SearchPermissionContainerAri: () => SearchPermissionContainerAri
});
module.exports = __toCommonJS(search_exports);
// src/errors.ts
var ValidationError = class extends Error {
};
// src/core/rules/cloud-id.ts
-function validateCloudId(cloudId, format = new RegExp("^[a-zA-Z0-9\\-]*$")) {
+function validateCloudId(cloudId, format = new RegExp("^[a-zA-Z0-9_\\-.]{0,255}$")) {
if (!cloudId.match(format))
throw new ValidationError(`Invalid cloud ID, expected ID of format ${format}.`);
}
@@ -49,9 +50,9 @@
throw new ValidationError(`ARI must have a qualifier of 'ari'. Received: ${qualifier}`);
}
// src/core/rules/resource-id.ts
-function validateResourceId(id, format = new RegExp("[!a-zA-Z0-9\\-_.~@:{}=]+(/[!a-zA-Z0-9\\-_.~@:{}=]+)*" /* ANY_RESOURCE_ID */), key = "resourceId") {
+function validateResourceId(id, format = new RegExp("[!a-zA-Z0-9\\-_.~@:;{}=]+(/[!a-zA-Z0-9\\-_.~@:;{}=]+)*" /* ANY_RESOURCE_ID */), key = "resourceId") {
let formatWithCarets = new RegExp(`^${format.source}$`);
if (!id.match(formatWithCarets))
throw new ValidationError(`Invalid ${key} - ${id}, expected ID of format ${formatWithCarets}.`);
}
@@ -284,15 +285,16 @@
var searchEventAriStaticOpts = {
qualifier: "ari",
platformQualifier: "cloud",
cloudId: new RegExp("^$"),
+ // eslint-disable-line no-useless-escape
resourceOwner: SearchEventAriResourceOwner,
resourceType: SearchEventAriResourceType,
resourceIdSlug: "{eventType}/{eventId}",
resourceIdSegmentFormats: {
eventType: /[a-zA-Z0-9\-]+/,
// eslint-disable-line no-useless-escape
- eventId: /[!a-zA-Z0-9\-_.~@:{}=]+(\/[!a-zA-Z0-9\-_.~@:{}=]+)*/
+ eventId: /[!a-zA-Z0-9\-_.~@:;{}=]+(\/[!a-zA-Z0-9\-_.~@:;{}=]+)*/
// eslint-disable-line no-useless-escape
}
};
@@ -342,17 +344,18 @@
var searchForwardDocumentAriStaticOpts = {
qualifier: "ari",
platformQualifier: "cloud",
cloudId: new RegExp("^$"),
+ // eslint-disable-line no-useless-escape
resourceOwner: SearchForwardDocumentAriResourceOwner,
resourceType: SearchForwardDocumentAriResourceType,
resourceIdSlug: "activation/{activationId}/{documentType}/{documentId}",
resourceIdSegmentFormats: {
activationId: /[a-zA-Z0-9\-]+/,
// eslint-disable-line no-useless-escape
documentType: /[a-zA-Z0-9\-_]+/,
// eslint-disable-line no-useless-escape
- documentId: /[!a-zA-Z0-9\-_.~@:{}=]+(\/[!a-zA-Z0-9\-_.~@:{}=]+)*/
+ documentId: /[!a-zA-Z0-9\-_.~@:;{}=]+(\/[!a-zA-Z0-9\-_.~@:;{}=]+)*/
// eslint-disable-line no-useless-escape
}
};
@@ -407,17 +410,18 @@
var searchForwardDocumentSubscriptionAriStaticOpts = {
qualifier: "ari",
platformQualifier: "cloud",
cloudId: new RegExp("^$"),
+ // eslint-disable-line no-useless-escape
resourceOwner: SearchForwardDocumentSubscriptionAriResourceOwner,
resourceType: SearchForwardDocumentSubscriptionAriResourceType,
resourceIdSlug: "activation/{activationId}/{subscriptionType}/{subscriptionId}",
resourceIdSegmentFormats: {
activationId: /[a-zA-Z0-9\-]+/,
// eslint-disable-line no-useless-escape
subscriptionType: /[a-zA-Z0-9\-_]+/,
// eslint-disable-line no-useless-escape
- subscriptionId: /[!a-zA-Z0-9\-_.~@:{}=]+(\/[!a-zA-Z0-9\-_.~@:{}=]+)*/
+ subscriptionId: /[!a-zA-Z0-9\-_.~@:;{}=]+(\/[!a-zA-Z0-9\-_.~@:;{}=]+)*/
// eslint-disable-line no-useless-escape
}
};
@@ -463,10 +467,70 @@
subscriptionId: this.subscriptionId
};
}
};
+
+// src/search/permission-container/types.ts
+var SearchPermissionContainerAriResourceOwner = "search", SearchPermissionContainerAriResourceType = "permission-container";
+
+// src/search/permission-container/manifest.ts
+var searchPermissionContainerAriStaticOpts = {
+ qualifier: "ari",
+ platformQualifier: "cloud",
+ cloudId: new RegExp("^$"),
+ // eslint-disable-line no-useless-escape
+ resourceOwner: SearchPermissionContainerAriResourceOwner,
+ resourceType: SearchPermissionContainerAriResourceType,
+ resourceIdSlug: "activation/{activationId}/{containerId}",
+ resourceIdSegmentFormats: {
+ activationId: /[a-zA-Z0-9\-]+/,
+ // eslint-disable-line no-useless-escape
+ containerId: /[!a-zA-Z0-9\-_.~@:;{}=]+(\/[!a-zA-Z0-9\-_.~@:;{}=]+)*/
+ // eslint-disable-line no-useless-escape
+ }
+};
+
+// src/search/permission-container/index.ts
+var SearchPermissionContainerAri = class _SearchPermissionContainerAri extends RegisteredAri {
+ constructor(opts) {
+ super(opts);
+ this._activationId = opts.resourceIdSegmentValues.activationId, this._containerId = opts.resourceIdSegmentValues.containerId;
+ }
+ get activationId() {
+ return this._activationId;
+ }
+ get containerId() {
+ return this._containerId;
+ }
+ static create(opts) {
+ let derivedOpts = {
+ qualifier: searchPermissionContainerAriStaticOpts.qualifier,
+ platformQualifier: searchPermissionContainerAriStaticOpts.platformQualifier,
+ cloudId: void 0,
+ resourceOwner: searchPermissionContainerAriStaticOpts.resourceOwner,
+ resourceType: searchPermissionContainerAriStaticOpts.resourceType,
+ resourceId: `activation/${opts.activationId}/${opts.containerId}`,
+ resourceIdSegmentValues: {
+ activationId: opts.activationId,
+ containerId: opts.containerId
+ }
+ }, ariOpts = AriParser.fromOpts(derivedOpts, searchPermissionContainerAriStaticOpts);
+ return new _SearchPermissionContainerAri(ariOpts);
+ }
+ static parse(maybeAri) {
+ let opts = AriParser.fromString(maybeAri, searchPermissionContainerAriStaticOpts);
+ return new _SearchPermissionContainerAri(opts);
+ }
+ getVariables() {
+ return {
+ activationId: this.activationId,
+ containerId: this.containerId
+ };
+ }
+};
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
SearchEventAri,
SearchForwardDocumentAri,
- SearchForwardDocumentSubscriptionAri
+ SearchForwardDocumentSubscriptionAri,
+ SearchPermissionContainerAri
});