@firestartr/cli 1.31.0 → 1.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/build/index.js CHANGED
@@ -116214,7 +116214,7 @@ exports.KubernetesObjectApi = KubernetesObjectApi;
116214
116214
  Object.defineProperty(exports, "__esModule", ({ value: true }));
116215
116215
  exports.OpenIDConnectAuth = void 0;
116216
116216
  const tslib_1 = __nccwpck_require__(33714);
116217
- const oidc = tslib_1.__importStar(__nccwpck_require__(2));
116217
+ const oidc = tslib_1.__importStar(__nccwpck_require__(91188));
116218
116218
  const rfc4648_1 = __nccwpck_require__(53367);
116219
116219
  const util_1 = __nccwpck_require__(73837);
116220
116220
  class OidcClient {
@@ -119169,7 +119169,7 @@ module.exports = __toCommonJS(dist_src_exports);
119169
119169
  var import_universal_user_agent = __nccwpck_require__(65212);
119170
119170
 
119171
119171
  // pkg/dist-src/version.js
119172
- var VERSION = "9.0.5";
119172
+ var VERSION = "9.0.6";
119173
119173
 
119174
119174
  // pkg/dist-src/defaults.js
119175
119175
  var userAgent = `octokit-endpoint.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}`;
@@ -119274,9 +119274,9 @@ function addQueryParameters(url, parameters) {
119274
119274
  }
119275
119275
 
119276
119276
  // pkg/dist-src/util/extract-url-variable-names.js
119277
- var urlVariableRegex = /\{[^}]+\}/g;
119277
+ var urlVariableRegex = /\{[^{}}]+\}/g;
119278
119278
  function removeNonChars(variableName) {
119279
- return variableName.replace(/^\W+|\W+$/g, "").split(/,/);
119279
+ return variableName.replace(/(?:^\W+)|(?:(?<!\W)\W+$)/g, "").split(/,/);
119280
119280
  }
119281
119281
  function extractUrlVariableNames(url) {
119282
119282
  const matches = url.match(urlVariableRegex);
@@ -119462,7 +119462,7 @@ function parse(options) {
119462
119462
  }
119463
119463
  if (url.endsWith("/graphql")) {
119464
119464
  if (options.mediaType.previews?.length) {
119465
- const previewsFromAcceptHeader = headers.accept.match(/[\w-]+(?=-preview)/g) || [];
119465
+ const previewsFromAcceptHeader = headers.accept.match(/(?<![\w-])[\w-]+(?=-preview)/g) || [];
119466
119466
  headers.accept = previewsFromAcceptHeader.concat(options.mediaType.previews).map((preview) => {
119467
119467
  const format = options.mediaType.format ? `.${options.mediaType.format}` : "+json";
119468
119468
  return `application/vnd.github.${preview}-preview${format}`;
@@ -122302,7 +122302,7 @@ var RequestError = class extends Error {
122302
122302
  if (options.request.headers.authorization) {
122303
122303
  requestCopy.headers = Object.assign({}, options.request.headers, {
122304
122304
  authorization: options.request.headers.authorization.replace(
122305
- / .*$/,
122305
+ /(?<! ) .*$/,
122306
122306
  " [REDACTED]"
122307
122307
  )
122308
122308
  });
@@ -122370,7 +122370,7 @@ var import_endpoint = __nccwpck_require__(68773);
122370
122370
  var import_universal_user_agent = __nccwpck_require__(65212);
122371
122371
 
122372
122372
  // pkg/dist-src/version.js
122373
- var VERSION = "8.4.0";
122373
+ var VERSION = "8.4.1";
122374
122374
 
122375
122375
  // pkg/dist-src/is-plain-object.js
122376
122376
  function isPlainObject(value) {
@@ -122429,7 +122429,7 @@ function fetchWrapper(requestOptions) {
122429
122429
  headers[keyAndValue[0]] = keyAndValue[1];
122430
122430
  }
122431
122431
  if ("deprecation" in headers) {
122432
- const matches = headers.link && headers.link.match(/<([^>]+)>; rel="deprecation"/);
122432
+ const matches = headers.link && headers.link.match(/<([^<>]+)>; rel="deprecation"/);
122433
122433
  const deprecationLink = matches && matches.pop();
122434
122434
  log.warn(
122435
122435
  `[@octokit/request] "${requestOptions.method} ${requestOptions.url}" is deprecated. It is scheduled to be removed on ${headers.sunset}${deprecationLink ? `. See ${deprecationLink}` : ""}`
@@ -148344,7 +148344,7 @@ class ApiObject extends constructs_1.Construct {
148344
148344
  }
148345
148345
  }
148346
148346
  exports.ApiObject = ApiObject;
148347
- ApiObject[_a] = { fqn: "cdk8s.ApiObject", version: "2.69.39" };
148347
+ ApiObject[_a] = { fqn: "cdk8s.ApiObject", version: "2.69.57" };
148348
148348
  function parseApiGroup(apiVersion) {
148349
148349
  const v = apiVersion.split('/');
148350
148350
  // no group means "core"
@@ -148559,7 +148559,7 @@ class App extends constructs_1.Construct {
148559
148559
  }
148560
148560
  exports.App = App;
148561
148561
  _a = JSII_RTTI_SYMBOL_1;
148562
- App[_a] = { fqn: "cdk8s.App", version: "2.69.39" };
148562
+ App[_a] = { fqn: "cdk8s.App", version: "2.69.57" };
148563
148563
  function validate(app, cache) {
148564
148564
  const errors = [];
148565
148565
  for (const child of cache.findAll(app.node)) {
@@ -148773,7 +148773,7 @@ class Chart extends constructs_1.Construct {
148773
148773
  }
148774
148774
  }
148775
148775
  exports.Chart = Chart;
148776
- Chart[_a] = { fqn: "cdk8s.Chart", version: "2.69.39" };
148776
+ Chart[_a] = { fqn: "cdk8s.Chart", version: "2.69.57" };
148777
148777
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY2hhcnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwyQ0FBbUQ7QUFDbkQsNkNBQXlDO0FBQ3pDLCtCQUE0QjtBQUM1QixtQ0FBZ0M7QUFFaEMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQztBQUMvQyxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUM7QUE2QjFCLE1BQWEsS0FBTSxTQUFRLHNCQUFTO0lBQ2xDOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQU07UUFDMUIsT0FBTyxDQUFDLEtBQUssSUFBSSxJQUFJLE9BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxRQUFRLElBQUksWUFBWSxJQUFJLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxNQUFNLENBQUMsMkJBQUMsTUFBTSxDQUFDLFdBQVcsRUFBQyxDQUFDLENBQVU7UUFDcEMsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsRUFBRSxDQUFDLENBQWE7UUFDNUIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDckIsT0FBTyxDQUFDLENBQUM7UUFDWCxDQUFDO1FBRUQsTUFBTSxNQUFNLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFrQixDQUFDO1FBQ3pDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNaLE1BQU0sSUFBSSxLQUFLLENBQUMscURBQXFELENBQUMsQ0FBQztRQUN6RSxDQUFDO1FBRUQsT0FBTyxLQUFLLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFpQkQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxRQUFvQixFQUFHO1FBQy9ELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDakIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUM7UUFDbEMsSUFBSSxDQUFDLDBCQUEwQixHQUFHLEtBQUssQ0FBQyx5QkFBeUIsSUFBSSxLQUFLLENBQUM7UUFFM0UsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsWUFBWSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxJQUFXLE1BQU07UUFDZixPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BbUJHO0lBQ0ksa0JBQWtCLENBQUMsU0FBb0I7UUFDNUMsT0FBTyxhQUFLLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRTtZQUNqQyxXQUFXLEVBQUUsQ0FBQyxJQUFJLENBQUMsMEJBQTBCO1lBQzdDLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTO1NBQ25ELENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLGFBQWEsQ0FBQyxHQUFHLFlBQTBCO1FBQ2hELElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsWUFBWSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVEOzs7T0FHRztJQUNJLE1BQU07UUFDWCxPQUFPLFNBQUcsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQWtCLEVBQUUsQ0FBQyxDQUFDLFlBQVksc0JBQVMsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7O0FBeEhILHNCQXlIQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCwgSUNvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQXBpT2JqZWN0IH0gZnJvbSAnLi9hcGktb2JqZWN0JztcbmltcG9ydCB7IEFwcCB9IGZyb20gJy4vYXBwJztcbmltcG9ydCB7IE5hbWVzIH0gZnJvbSAnLi9uYW1lcyc7XG5cbmNvbnN0IENIQVJUX1NZTUJPTCA9IFN5bWJvbC5mb3IoJ2NkazhzLkNoYXJ0Jyk7XG5jb25zdCBDUk9OSk9CID0gJ0Nyb25Kb2InO1xuXG5leHBvcnQgaW50ZXJmYWNlIENoYXJ0UHJvcHMge1xuICAvKipcbiAgICogVGhlIGRlZmF1bHQgbmFtZXNwYWNlIGZvciBhbGwgb2JqZWN0cyBkZWZpbmVkIGluIHRoaXMgY2hhcnQgKGRpcmVjdGx5IG9yXG4gICAqIGluZGlyZWN0bHkpLiBUaGlzIG5hbWVzcGFjZSB3aWxsIG9ubHkgYXBwbHkgdG8gb2JqZWN0cyB0aGF0IGRvbid0IGhhdmUgYVxuICAgKiBgbmFtZXNwYWNlYCBleHBsaWNpdGx5IGRlZmluZWQgZm9yIHRoZW0uXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gbmFtZXNwYWNlIGlzIHN5bnRoZXNpemVkICh1c3VhbGx5IHRoaXMgaW1wbGllcyBcImRlZmF1bHRcIilcbiAgICovXG4gIHJlYWRvbmx5IG5hbWVzcGFjZT86IHN0cmluZztcblxuICAvKipcbiAgICogTGFiZWxzIHRvIGFwcGx5IHRvIGFsbCByZXNvdXJjZXMgaW4gdGhpcyBjaGFydC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBjb21tb24gbGFiZWxzXG4gICAqL1xuICByZWFkb25seSBsYWJlbHM/OiB7IFtuYW1lOiBzdHJpbmddOiBzdHJpbmcgfTtcblxuICAvKipcbiAgICogVGhlIGF1dG9nZW5lcmF0ZWQgcmVzb3VyY2UgbmFtZSBieSBkZWZhdWx0IGlzIHN1ZmZpeGVkIHdpdGggYSBzdGFibGUgaGFzaFxuICAgKiBvZiB0aGUgY29uc3RydWN0IHBhdGguIFNldHRpbmcgdGhpcyBwcm9wZXJ0eSB0byB0cnVlIGRyb3BzIHRoZSBoYXNoIHN1ZmZpeC5cbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVSZXNvdXJjZU5hbWVIYXNoZXM/OiBib29sZWFuO1xuXG59XG5cbmV4cG9ydCBjbGFzcyBDaGFydCBleHRlbmRzIENvbnN0cnVjdCB7XG4gIC8qKlxuICAgKiBSZXR1cm4gd2hldGhlciB0aGUgZ2l2ZW4gb2JqZWN0IGlzIGEgQ2hhcnQuXG4gICAqXG4gICAqIFdlIGRvIGF0dHJpYnV0ZSBkZXRlY3Rpb24gc2luY2Ugd2UgY2FuJ3QgcmVsaWFibHkgdXNlICdpbnN0YW5jZW9mJy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgaXNDaGFydCh4OiBhbnkpOiB4IGlzIENoYXJ0IHtcbiAgICByZXR1cm4geCAhPT0gbnVsbCAmJiB0eXBlb2YoeCkgPT09ICdvYmplY3QnICYmIENIQVJUX1NZTUJPTCBpbiB4O1xuICB9XG5cbiAgLyoqXG4gICAqIEltcGxlbWVudHMgYGluc3RhbmNlb2YgQ2hhcnRgIHVzaW5nIHRoZSBtb3JlIHJlbGlhYmxlIGBDaGFydC5pc0NoYXJ0YCBzdGF0aWMgbWV0aG9kXG4gICAqXG4gICAqIEBwYXJhbSBvIFRoZSBvYmplY3QgdG8gY2hlY2tcbiAgICogQGludGVybmFsXG4gICAqL1xuICBzdGF0aWMgW1N5bWJvbC5oYXNJbnN0YW5jZV0obzogdW5rbm93bikge1xuICAgIHJldHVybiBDaGFydC5pc0NoYXJ0KG8pO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpbmRzIHRoZSBjaGFydCBpbiB3aGljaCBhIG5vZGUgaXMgZGVmaW5lZC5cbiAgICogQHBhcmFtIGMgYSBjb25zdHJ1Y3Qgbm9kZVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBvZihjOiBJQ29uc3RydWN0KTogQ2hhcnQge1xuICAgIGlmIChDaGFydC5pc0NoYXJ0KGMpKSB7XG4gICAgICByZXR1cm4gYztcbiAgICB9XG5cbiAgICBjb25zdCBwYXJlbnQgPSBjLm5vZGUuc2NvcGUgYXMgQ29uc3RydWN0O1xuICAgIGlmICghcGFyZW50KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2Nhbm5vdCBmaW5kIGEgcGFyZW50IGNoYXJ0IChkaXJlY3RseSBvciBpbmRpcmVjdGx5KScpO1xuICAgIH1cblxuICAgIHJldHVybiBDaGFydC5vZihwYXJlbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBkZWZhdWx0IG5hbWVzcGFjZSBmb3IgYWxsIG9iamVjdHMgaW4gdGhpcyBjaGFydC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBuYW1lc3BhY2U/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENoYXJ0LWxldmVsIGxhYmVscy5cbiAgICovXG4gIHByaXZhdGUgcmVhZG9ubHkgX2xhYmVscz86IHsgW25hbWU6IHN0cmluZ106IHN0cmluZyB9O1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIHJlc291cmNlIG5hbWVzIGluIHRoZSBjaGFydCBoYXZlIHRoZSBzdWZmaXhlZCBoYXNoLlxuICAgKi9cbiAgcHJpdmF0ZSByZWFkb25seSBfZGlzYWJsZVJlc291cmNlTmFtZUhhc2hlcz86IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IENoYXJ0UHJvcHMgPSB7IH0pIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIHRoaXMubmFtZXNwYWNlID0gcHJvcHMubmFtZXNwYWNlO1xuICAgIHRoaXMuX2xhYmVscyA9IHByb3BzLmxhYmVscyA/PyB7fTtcbiAgICB0aGlzLl9kaXNhYmxlUmVzb3VyY2VOYW1lSGFzaGVzID0gcHJvcHMuZGlzYWJsZVJlc291cmNlTmFtZUhhc2hlcyA/PyBmYWxzZTtcblxuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBDSEFSVF9TWU1CT0wsIHsgdmFsdWU6IHRydWUgfSk7XG4gIH1cblxuICAvKipcbiAgICogTGFiZWxzIGFwcGxpZWQgdG8gYWxsIHJlc291cmNlcyBpbiB0aGlzIGNoYXJ0LlxuICAgKlxuICAgKiBUaGlzIGlzIGFuIGltbXV0YWJsZSBjb3B5LlxuICAgKi9cbiAgcHVibGljIGdldCBsYWJlbHMoKTogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIH0ge1xuICAgIHJldHVybiB7IC4uLnRoaXMuX2xhYmVscyB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlcyBhIGFwcC11bmlxdWUgbmFtZSBmb3IgYW4gb2JqZWN0IGdpdmVuIGl0J3MgY29uc3RydWN0IG5vZGUgcGF0aC5cbiAgICpcbiAgICogRGlmZmVyZW50IHJlc291cmNlIHR5cGVzIG1heSBoYXZlIGRpZmZlcmVudCBjb25zdHJhaW50cyBvbiBuYW1lc1xuICAgKiAoYG1ldGFkYXRhLm5hbWVgKS4gVGhlIHByZXZpb3VzIHZlcnNpb24gb2YgdGhlIG5hbWUgZ2VuZXJhdG9yIHdhc1xuICAgKiBjb21wYXRpYmxlIHdpdGggRE5TX1NVQkRPTUFJTiBidXQgbm90IHdpdGggRE5TX0xBQkVMLlxuICAgKlxuICAgKiBGb3IgZXhhbXBsZSwgYERlcGxveW1lbnRgIG5hbWVzIG11c3QgY29tcGx5IHdpdGggRE5TX1NVQkRPTUFJTiB3aGlsZVxuICAgKiBgU2VydmljZWAgbmFtZXMgbXVzdCBjb21wbHkgd2l0aCBETlNfTEFCRUwuXG4gICAqXG4gICAqIFNpbmNlIHRoZXJlIGlzIG5vIGZvcm1hbCBzcGVjaWZpY2F0aW9uIGZvciB0aGlzLCB0aGUgZGVmYXVsdCBuYW1lXG4gICAqIGdlbmVyYXRpb24gc2NoZW1lIGZvciBrdWJlcm5ldGVzIG9iamVjdHMgaW4gY2RrOHMgd2FzIGNoYW5nZWQgdG8gRE5TX0xBQkVMLFxuICAgKiBzaW5jZSBpdOKAmXMgdGhlIGNvbW1vbiBkZW5vbWluYXRvciBmb3IgYWxsIGt1YmVybmV0ZXMgcmVzb3VyY2VzXG4gICAqIChzdXBwb3NlZGx5KS5cbiAgICpcbiAgICogWW91IGNhbiBvdmVycmlkZSB0aGlzIG1ldGhvZCBpZiB5b3Ugd2lzaCB0byBjdXN0b21pemUgb2JqZWN0IG5hbWVzIGF0IHRoZVxuICAgKiBjaGFydCBsZXZlbC5cbiAgICpcbiAgICogQHBhcmFtIGFwaU9iamVjdCBUaGUgQVBJIG9iamVjdCB0byBnZW5lcmF0ZSBhIG5hbWUgZm9yLlxuICAgKi9cbiAgcHVibGljIGdlbmVyYXRlT2JqZWN0TmFtZShhcGlPYmplY3Q6IEFwaU9iamVjdCkge1xuICAgIHJldHVybiBOYW1lcy50b0Ruc0xhYmVsKGFwaU9iamVjdCwge1xuICAgICAgaW5jbHVkZUhhc2g6ICF0aGlzLl9kaXNhYmxlUmVzb3VyY2VOYW1lSGFzaGVzLFxuICAgICAgbWF4TGVuOiBhcGlPYmplY3Qua2luZCA9PSBDUk9OSk9CID8gNTIgOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgZGVwZW5kZW5jeSBiZXR3ZWVuIHRoaXMgQ2hhcnQgYW5kIG90aGVyIGNvbnN0cnVjdHMuXG4gICAqIFRoZXNlIGNhbiBiZSBvdGhlciBBcGlPYmplY3RzLCBDaGFydHMsIG9yIGN1c3RvbS5cbiAgICpcbiAgICogQHBhcmFtIGRlcGVuZGVuY2llcyB0aGUgZGVwZW5kZW5jaWVzIHRvIGFkZC5cbiAgICovXG4gIHB1YmxpYyBhZGREZXBlbmRlbmN5KC4uLmRlcGVuZGVuY2llczogSUNvbnN0cnVjdFtdKSB7XG4gICAgdGhpcy5ub2RlLmFkZERlcGVuZGVuY3koLi4uZGVwZW5kZW5jaWVzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW5kZXJzIHRoaXMgY2hhcnQgdG8gYSBzZXQgb2YgS3ViZXJuZXRlcyBKU09OIHJlc291cmNlcy5cbiAgICogQHJldHVybnMgYXJyYXkgb2YgcmVzb3VyY2UgbWFuaWZlc3RzXG4gICAqL1xuICBwdWJsaWMgdG9Kc29uKCk6IGFueVtdIHtcbiAgICByZXR1cm4gQXBwLl9zeW50aENoYXJ0KHRoaXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYWxsIHRoZSBpbmNsdWRlZCBBUEkgb2JqZWN0cy5cbiAgICovXG4gIGdldCBhcGlPYmplY3RzKCk6IEFwaU9iamVjdFtdIHtcbiAgICByZXR1cm4gdGhpcy5ub2RlLmNoaWxkcmVuLmZpbHRlcigobyk6IG8gaXMgQXBpT2JqZWN0ID0+IG8gaW5zdGFuY2VvZiBBcGlPYmplY3QpO1xuICB9XG59XG4iXX0=
148778
148778
 
148779
148779
  /***/ }),
@@ -148845,7 +148845,7 @@ class Cron {
148845
148845
  }
148846
148846
  exports.Cron = Cron;
148847
148847
  _a = JSII_RTTI_SYMBOL_1;
148848
- Cron[_a] = { fqn: "cdk8s.Cron", version: "2.69.39" };
148848
+ Cron[_a] = { fqn: "cdk8s.Cron", version: "2.69.57" };
148849
148849
  function fallback(x, def) {
148850
148850
  return x ?? def;
148851
148851
  }
@@ -148934,7 +148934,7 @@ class DependencyGraph {
148934
148934
  }
148935
148935
  exports.DependencyGraph = DependencyGraph;
148936
148936
  _a = JSII_RTTI_SYMBOL_1;
148937
- DependencyGraph[_a] = { fqn: "cdk8s.DependencyGraph", version: "2.69.39" };
148937
+ DependencyGraph[_a] = { fqn: "cdk8s.DependencyGraph", version: "2.69.57" };
148938
148938
  /**
148939
148939
  * Represents a vertex in the graph.
148940
148940
  *
@@ -149027,7 +149027,7 @@ class DependencyVertex {
149027
149027
  }
149028
149028
  exports.DependencyVertex = DependencyVertex;
149029
149029
  _b = JSII_RTTI_SYMBOL_1;
149030
- DependencyVertex[_b] = { fqn: "cdk8s.DependencyVertex", version: "2.69.39" };
149030
+ DependencyVertex[_b] = { fqn: "cdk8s.DependencyVertex", version: "2.69.57" };
149031
149031
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwZW5kZW5jeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9kZXBlbmRlbmN5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBR0E7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0gsTUFBYSxlQUFlO0lBSTFCLFlBQVksSUFBVTtRQUVwQixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztRQUU1QyxNQUFNLEtBQUssR0FBcUMsRUFBRSxDQUFDO1FBRW5ELFNBQVMsU0FBUyxDQUFDLFNBQXFCO1lBQ3RDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDL0QsQ0FBQztRQUVELFNBQVMsU0FBUyxDQUFDLFNBQXFCO1lBQ3RDLE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEMsQ0FBQztRQUVELG9DQUFvQztRQUNwQyxLQUFLLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO1lBQy9CLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNmLENBQUM7UUFFRCxNQUFNLElBQUksR0FBRyxFQUFFLENBQUM7UUFDaEIsS0FBSyxNQUFNLEtBQUssSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztZQUNuQyxLQUFLLE1BQU0sR0FBRyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7Z0JBQzFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQzVDLENBQUM7UUFDSCxDQUFDO1FBRUQscUNBQXFDO1FBQ3JDLEtBQUssTUFBTSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7WUFFdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztnQkFDM0IsK0JBQStCO2dCQUMvQiw2REFBNkQ7Z0JBQzdELDJGQUEyRjtnQkFDM0Ysc0NBQXNDO2dCQUN0QyxTQUFTO1lBQ1gsQ0FBQztZQUVELE1BQU0sYUFBYSxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDNUMsTUFBTSxhQUFhLEdBQUcsU0FBUyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUU1QyxhQUFhLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRXhDLENBQUM7UUFFRCxtQkFBbUI7UUFDbkIsS0FBSyxNQUFNLENBQUMsSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDckMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDM0IsaURBQWlEO2dCQUNqRCxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNqQyxDQUFDO1FBQ0gsQ0FBQztJQUVILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILElBQVcsSUFBSTtRQUNiLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBRUQ7O09BRUc7SUFDSSxRQUFRO1FBQ2IsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7O0FBekVILDBDQTBFQzs7O0FBRUQ7Ozs7R0FJRztBQUNILE1BQWEsZ0JBQWdCO0lBTTNCLFlBQVksUUFBZ0MsU0FBUztRQUhwQyxjQUFTLEdBQTBCLElBQUksR0FBRyxFQUFvQixDQUFDO1FBQy9ELGFBQVEsR0FBMEIsSUFBSSxHQUFHLEVBQW9CLENBQUM7UUFHN0UsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxJQUFXLEtBQUs7UUFDZCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksUUFBUTtRQUViLE1BQU0sS0FBSyxHQUFHLElBQUksR0FBRyxFQUFvQixDQUFDO1FBQzFDLE1BQU0sUUFBUSxHQUF1QixFQUFFLENBQUM7UUFFeEMsU0FBUyxLQUFLLENBQUMsQ0FBbUI7WUFDaEMsS0FBSyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQzNCLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNYLENBQUM7WUFDRCxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUNsQixRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNqQixLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2YsQ0FBQztRQUNILENBQUM7UUFFRCxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFWixPQUFPLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQU0sQ0FBQyxDQUFDO0lBRTFELENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ksUUFBUSxDQUFDLEdBQXFCO1FBRW5DLE1BQU0sS0FBSyxHQUF1QixHQUFHLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RELElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN2QixLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQUMsOEJBQThCLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN4SCxDQUFDO1FBRUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDeEIsR0FBRyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0QixDQUFDO0lBRU8sU0FBUyxDQUFDLEdBQXFCO1FBQ3JDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFTyxTQUFTLENBQUMsR0FBcUI7UUFFckMsTUFBTSxLQUFLLEdBQXVCLEVBQUUsQ0FBQztRQUNyQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDWixPQUFPLEtBQUssQ0FBQztRQUViLFNBQVMsS0FBSyxDQUFDLENBQW1CO1lBQ2hDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDZCxJQUFJLEtBQUssR0FBRyxLQUFLLENBQUM7WUFDbEIsS0FBSyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQzNCLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO29CQUNkLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ2QsT0FBTyxJQUFJLENBQUM7Z0JBQ2QsQ0FBQztnQkFDRCxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ25CLENBQUM7WUFDRCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ1gsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ2QsQ0FBQztZQUNELE9BQU8sS0FBSyxDQUFDO1FBRWYsQ0FBQztJQUVILENBQUM7O0FBeEdILDRDQXlHQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5vZGUsIElDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcblxuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIGRlcGVuZGVuY3kgZ3JhcGggZm9yIGEgZ2l2ZW4gTm9kZS5cbiAqXG4gKiBUaGlzIGdyYXBoIGluY2x1ZGVzIHRoZSBkZXBlbmRlbmN5IHJlbGF0aW9uc2hpcHMgYmV0d2VlbiBhbGwgbm9kZXMgaW4gdGhlXG4gKiBub2RlIChjb25zdHJ1Y3QpIHN1Yi10cmVlIHdobydzIHJvb3QgaXMgdGhpcyBOb2RlLlxuICpcbiAqIE5vdGUgdGhhdCB0aGlzIG1lYW5zIHRoYXQgbG9uZWx5IG5vZGVzIChubyBkZXBlbmRlbmNpZXMgYW5kIG5vIGRlcGVuZGFudHMpIGFyZSBhbHNvIGluY2x1ZGVkIGluIHRoaXMgZ3JhcGggYXNcbiAqIGNoaWxkbGVzcyBjaGlsZHJlbiBvZiB0aGUgcm9vdCBub2RlIG9mIHRoZSBncmFwaC5cbiAqXG4gKiBUaGUgZ3JhcGggZG9lcyBub3QgaW5jbHVkZSBjcm9zcy1zY29wZSBkZXBlbmRlbmNpZXMuIFRoYXQgaXMsIGlmIGEgY2hpbGQgb24gdGhlIGN1cnJlbnQgc2NvcGUgZGVwZW5kcyBvbiBhIG5vZGVcbiAqIGZyb20gYSBkaWZmZXJlbnQgc2NvcGUsIHRoYXQgcmVsYXRpb25zaGlwIGlzIG5vdCByZXByZXNlbnRlZCBpbiB0aGlzIGdyYXBoLlxuICpcbiAqL1xuZXhwb3J0IGNsYXNzIERlcGVuZGVuY3lHcmFwaCB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZm9zdGVyUGFyZW50OiBEZXBlbmRlbmN5VmVydGV4O1xuXG4gIGNvbnN0cnVjdG9yKG5vZGU6IE5vZGUpIHtcblxuICAgIHRoaXMuX2Zvc3RlclBhcmVudCA9IG5ldyBEZXBlbmRlbmN5VmVydGV4KCk7XG5cbiAgICBjb25zdCBub2RlczogUmVjb3JkPHN0cmluZywgRGVwZW5kZW5jeVZlcnRleD4gPSB7fTtcblxuICAgIGZ1bmN0aW9uIHB1dFZlcnRleChjb25zdHJ1Y3Q6IElDb25zdHJ1Y3QpIHtcbiAgICAgIG5vZGVzW2NvbnN0cnVjdC5ub2RlLnBhdGhdID0gbmV3IERlcGVuZGVuY3lWZXJ0ZXgoY29uc3RydWN0KTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBnZXRWZXJ0ZXgoY29uc3RydWN0OiBJQ29uc3RydWN0KTogRGVwZW5kZW5jeVZlcnRleCB7XG4gICAgICByZXR1cm4gbm9kZXNbY29uc3RydWN0Lm5vZGUucGF0aF07XG4gICAgfVxuXG4gICAgLy8gY3JlYXRlIGFsbCB2ZXJ0aWNlcyBvZiB0aGUgZ3JhcGguXG4gICAgZm9yIChjb25zdCBuIG9mIG5vZGUuZmluZEFsbCgpKSB7XG4gICAgICBwdXRWZXJ0ZXgobik7XG4gICAgfVxuXG4gICAgY29uc3QgZGVwcyA9IFtdO1xuICAgIGZvciAoY29uc3QgY2hpbGQgb2Ygbm9kZS5maW5kQWxsKCkpIHtcbiAgICAgIGZvciAoY29uc3QgZGVwIG9mIGNoaWxkLm5vZGUuZGVwZW5kZW5jaWVzKSB7XG4gICAgICAgIGRlcHMucHVzaCh7IHNvdXJjZTogY2hpbGQsIHRhcmdldDogZGVwIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGNyZWF0ZSBhbGwgdGhlIGVkZ2VzIG9mIHRoZSBncmFwaC5cbiAgICBmb3IgKGNvbnN0IGRlcCBvZiBkZXBzKSB7XG5cbiAgICAgIGlmICghZ2V0VmVydGV4KGRlcC50YXJnZXQpKSB7XG4gICAgICAgIC8vIGRvbnQgY3Jvc3Mgc2NvcGUgYm91bmRhcmllcy5cbiAgICAgICAgLy8gc2luY2UgY2hhcnRzIG9ubHkgcmVuZGVycyBpdHMgb3duIGNoaWxkcmVuLCB0aGlzIGlzIG9rIGFuZFxuICAgICAgICAvLyBoYXMgdGhlIGJlbmVmaXQgb2Ygc2ltcGxpZnlpbmcgdGhlIGdyYXBoLiB3ZSBzaG91bGQgcmVjb25zaWRlciB0aGlzIGJlaGF2aW9yIHdoZW4gbW92aW5nXG4gICAgICAgIC8vIHRvIGEgbW9yZSBnZW5lcmFsIHB1cnBvc2UgdXNlLWNhc2UuXG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBzb3VyY2VEZXBOb2RlID0gZ2V0VmVydGV4KGRlcC5zb3VyY2UpO1xuICAgICAgY29uc3QgdGFyZ2V0RGVwTm9kZSA9IGdldFZlcnRleChkZXAudGFyZ2V0KTtcblxuICAgICAgc291cmNlRGVwTm9kZS5hZGRDaGlsZCh0YXJnZXREZXBOb2RlKTtcblxuICAgIH1cblxuICAgIC8vIGNyZWF0ZSB0aGUgcm9vdC5cbiAgICBmb3IgKGNvbnN0IG4gb2YgT2JqZWN0LnZhbHVlcyhub2RlcykpIHtcbiAgICAgIGlmIChuLmluYm91bmQubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIC8vIG9ycGhhbnMgYXJlIGRlcGVuZGVuY3kgcm9vdHMuIGxldHMgYWRvcHQgdGhlbSFcbiAgICAgICAgdGhpcy5fZm9zdGVyUGFyZW50LmFkZENoaWxkKG4pO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHJvb3Qgb2YgdGhlIGdyYXBoLlxuICAgKlxuICAgKiBOb3RlIHRoYXQgdGhpcyB2ZXJ0ZXggd2lsbCBhbHdheXMgaGF2ZSBgbnVsbGAgYXMgaXRzIGAudmFsdWVgIHNpbmNlIGl0IGlzIGFuIGFydGlmaWNhbCByb290XG4gICAqIHRoYXQgYmluZHMgYWxsIHRoZSBjb25uZWN0ZWQgc3BhY2VzIG9mIHRoZSBncmFwaC5cbiAgICovXG4gIHB1YmxpYyBnZXQgcm9vdCgpOiBEZXBlbmRlbmN5VmVydGV4IHtcbiAgICByZXR1cm4gdGhpcy5fZm9zdGVyUGFyZW50O1xuICB9XG5cbiAgLyoqXG4gICAqIEBzZWUgVmVydGV4LnRvcG9sb2d5KClcbiAgICovXG4gIHB1YmxpYyB0b3BvbG9neSgpOiBJQ29uc3RydWN0W10ge1xuICAgIHJldHVybiB0aGlzLl9mb3N0ZXJQYXJlbnQudG9wb2xvZ3koKTtcbiAgfVxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSB2ZXJ0ZXggaW4gdGhlIGdyYXBoLlxuICpcbiAqIFRoZSB2YWx1ZSBvZiBlYWNoIHZlcnRleCBpcyBhbiBgSUNvbnN0cnVjdGAgdGhhdCBpcyBhY2Nlc3NpYmxlIHZpYSB0aGUgYC52YWx1ZWAgZ2V0dGVyLlxuICovXG5leHBvcnQgY2xhc3MgRGVwZW5kZW5jeVZlcnRleCB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfdmFsdWU6IElDb25zdHJ1Y3QgfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2NoaWxkcmVuOiBTZXQ8RGVwZW5kZW5jeVZlcnRleD4gPSBuZXcgU2V0PERlcGVuZGVuY3lWZXJ0ZXg+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3BhcmVudHM6IFNldDxEZXBlbmRlbmN5VmVydGV4PiA9IG5ldyBTZXQ8RGVwZW5kZW5jeVZlcnRleD4oKTtcblxuICBjb25zdHJ1Y3Rvcih2YWx1ZTogSUNvbnN0cnVjdCB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgSUNvbnN0cnVjdCB0aGlzIGdyYXBoIHZlcnRleCByZXByZXNlbnRzLlxuICAgKlxuICAgKiBgbnVsbGAgaW4gY2FzZSB0aGlzIGlzIHRoZSByb290IG9mIHRoZSBncmFwaC5cbiAgICovXG4gIHB1YmxpYyBnZXQgdmFsdWUoKTogSUNvbnN0cnVjdCB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGNoaWxkcmVuIG9mIHRoZSB2ZXJ0ZXggKGkuZSBkZXBlbmRlbmNpZXMpXG4gICAqL1xuICBwdWJsaWMgZ2V0IG91dGJvdW5kKCk6IEFycmF5PERlcGVuZGVuY3lWZXJ0ZXg+IHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLl9jaGlsZHJlbik7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgcGFyZW50cyBvZiB0aGUgdmVydGV4IChpLmUgZGVwZW5kYW50cylcbiAgICovXG4gIHB1YmxpYyBnZXQgaW5ib3VuZCgpOiBBcnJheTxEZXBlbmRlbmN5VmVydGV4PiB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5fcGFyZW50cyk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhIHRvcG9sb2dpY2FsbHkgc29ydGVkIGFycmF5IG9mIHRoZSBjb25zdHJ1Y3RzIGluIHRoZSBzdWItZ3JhcGguXG4gICAqL1xuICBwdWJsaWMgdG9wb2xvZ3koKTogSUNvbnN0cnVjdFtdIHtcblxuICAgIGNvbnN0IGZvdW5kID0gbmV3IFNldDxEZXBlbmRlbmN5VmVydGV4PigpO1xuICAgIGNvbnN0IHRvcG9sb2d5OiBEZXBlbmRlbmN5VmVydGV4W10gPSBbXTtcblxuICAgIGZ1bmN0aW9uIHZpc2l0KG46IERlcGVuZGVuY3lWZXJ0ZXgpIHtcbiAgICAgIGZvciAoY29uc3QgYyBvZiBuLm91dGJvdW5kKSB7XG4gICAgICAgIHZpc2l0KGMpO1xuICAgICAgfVxuICAgICAgaWYgKCFmb3VuZC5oYXMobikpIHtcbiAgICAgICAgdG9wb2xvZ3kucHVzaChuKTtcbiAgICAgICAgZm91bmQuYWRkKG4pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHZpc2l0KHRoaXMpO1xuXG4gICAgcmV0dXJuIHRvcG9sb2d5LmZpbHRlcihkID0+IGQudmFsdWUpLm1hcChkID0+IGQudmFsdWUhKTtcblxuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSB2ZXJ0ZXggYXMgYSBkZXBlbmRlbmN5IG9mIHRoZSBjdXJyZW50IG5vZGUuXG4gICAqIEFsc28gdXBkYXRlcyB0aGUgcGFyZW50cyBvZiBgZGVwYCwgc28gdGhhdCBpdCBjb250YWlucyB0aGlzIG5vZGUgYXMgYSBwYXJlbnQuXG4gICAqXG4gICAqIFRoaXMgb3BlcmF0aW9uIHdpbGwgZmFpbCBpbiBjYXNlIGl0IGNyZWF0ZXMgYSBjeWNsZSBpbiB0aGUgZ3JhcGguXG4gICAqXG4gICAqIEBwYXJhbSBkZXAgVGhlIGRlcGVuZGVuY3lcbiAgICovXG4gIHB1YmxpYyBhZGRDaGlsZChkZXA6IERlcGVuZGVuY3lWZXJ0ZXgpIHtcblxuICAgIGNvbnN0IGN5Y2xlOiBEZXBlbmRlbmN5VmVydGV4W10gPSBkZXAuZmluZFJvdXRlKHRoaXMpO1xuICAgIGlmIChjeWNsZS5sZW5ndGggIT09IDApIHtcbiAgICAgIGN5Y2xlLnB1c2goZGVwKTtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgRGVwZW5kZW5jeSBjeWNsZSBkZXRlY3RlZDogJHtjeWNsZS5maWx0ZXIoZCA9PiBkLnZhbHVlKS5tYXAoZCA9PiBkLnZhbHVlIS5ub2RlLnBhdGgpLmpvaW4oJyA9PiAnKX1gKTtcbiAgICB9XG5cbiAgICB0aGlzLl9jaGlsZHJlbi5hZGQoZGVwKTtcbiAgICBkZXAuYWRkUGFyZW50KHRoaXMpO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGRQYXJlbnQoZGVwOiBEZXBlbmRlbmN5VmVydGV4KSB7XG4gICAgdGhpcy5fcGFyZW50cy5hZGQoZGVwKTtcbiAgfVxuXG4gIHByaXZhdGUgZmluZFJvdXRlKGRzdDogRGVwZW5kZW5jeVZlcnRleCk6IERlcGVuZGVuY3lWZXJ0ZXhbXSB7XG5cbiAgICBjb25zdCByb3V0ZTogRGVwZW5kZW5jeVZlcnRleFtdID0gW107XG4gICAgdmlzaXQodGhpcyk7XG4gICAgcmV0dXJuIHJvdXRlO1xuXG4gICAgZnVuY3Rpb24gdmlzaXQobjogRGVwZW5kZW5jeVZlcnRleCk6IGJvb2xlYW4ge1xuICAgICAgcm91dGUucHVzaChuKTtcbiAgICAgIGxldCBmb3VuZCA9IGZhbHNlO1xuICAgICAgZm9yIChjb25zdCBjIG9mIG4ub3V0Ym91bmQpIHtcbiAgICAgICAgaWYgKGMgPT09IGRzdCkge1xuICAgICAgICAgIHJvdXRlLnB1c2goYyk7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgZm91bmQgPSB2aXNpdChjKTtcbiAgICAgIH1cbiAgICAgIGlmICghZm91bmQpIHtcbiAgICAgICAgcm91dGUucG9wKCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gZm91bmQ7XG5cbiAgICB9XG5cbiAgfVxufVxuIl19
149032
149032
 
149033
149033
  /***/ }),
@@ -149236,7 +149236,7 @@ class Duration {
149236
149236
  }
149237
149237
  exports.Duration = Duration;
149238
149238
  _a = JSII_RTTI_SYMBOL_1;
149239
- Duration[_a] = { fqn: "cdk8s.Duration", version: "2.69.39" };
149239
+ Duration[_a] = { fqn: "cdk8s.Duration", version: "2.69.57" };
149240
149240
  class TimeUnit {
149241
149241
  constructor(label, inMillis) {
149242
149242
  this.label = label;
@@ -149332,7 +149332,7 @@ class Helm extends include_1.Include {
149332
149332
  }
149333
149333
  exports.Helm = Helm;
149334
149334
  _a = JSII_RTTI_SYMBOL_1;
149335
- Helm[_a] = { fqn: "cdk8s.Helm", version: "2.69.39" };
149335
+ Helm[_a] = { fqn: "cdk8s.Helm", version: "2.69.57" };
149336
149336
  function renderTemplate(workdir, prog, args) {
149337
149337
  const helm = _child_process_1._child_process.spawnSync(prog, args, {
149338
149338
  maxBuffer: MAX_HELM_BUFFER,
@@ -149396,7 +149396,7 @@ class Include extends constructs_1.Construct {
149396
149396
  }
149397
149397
  exports.Include = Include;
149398
149398
  _a = JSII_RTTI_SYMBOL_1;
149399
- Include[_a] = { fqn: "cdk8s.Include", version: "2.69.39" };
149399
+ Include[_a] = { fqn: "cdk8s.Include", version: "2.69.57" };
149400
149400
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jbHVkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmNsdWRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMkNBQXVDO0FBQ3ZDLDZDQUF5QztBQUN6QyxpQ0FBOEI7QUFXOUI7Ozs7OztHQU1HO0FBQ0gsTUFBYSxPQUFRLFNBQVEsc0JBQVM7SUFDcEMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFtQjtRQUMzRCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sT0FBTyxHQUFHLFdBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRXJDLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNkLEtBQUssTUFBTSxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7WUFDMUIsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDLFFBQVEsRUFBRSxJQUFJLElBQUksU0FBUyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBRXpELHdDQUF3QztZQUN4QyxNQUFNLEtBQUssR0FBRyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRSxFQUFFLEdBQUcsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ25HLElBQUksc0JBQVMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ2xDLENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFXLFVBQVU7UUFDbkIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQWtCLEVBQUUsQ0FBQyxDQUFDLFlBQVksc0JBQVMsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7O0FBckJILDBCQXNCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQXBpT2JqZWN0IH0gZnJvbSAnLi9hcGktb2JqZWN0JztcbmltcG9ydCB7IFlhbWwgfSBmcm9tICcuL3lhbWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEluY2x1ZGVQcm9wcyB7XG4gIC8qKlxuICAgKiBMb2NhbCBmaWxlIHBhdGggb3IgVVJMIHdoaWNoIGluY2x1ZGVzIGEgS3ViZXJuZXRlcyBZQU1MIG1hbmlmZXN0LlxuICAgKlxuICAgKiBAZXhhbXBsZSBteW1hbmlmZXN0LnlhbWxcbiAgICovXG4gIHJlYWRvbmx5IHVybDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlYWRzIGEgWUFNTCBtYW5pZmVzdCBmcm9tIGEgZmlsZSBvciBhIFVSTCBhbmQgZGVmaW5lcyBhbGwgcmVzb3VyY2VzIGFzIEFQSVxuICogb2JqZWN0cyB3aXRoaW4gdGhlIGRlZmluZWQgc2NvcGUuXG4gKlxuICogVGhlIG5hbWVzIChgbWV0YWRhdGEubmFtZWApIG9mIGltcG9ydGVkIHJlc291cmNlcyB3aWxsIGJlIHByZXNlcnZlZCBhcy1pc1xuICogZnJvbSB0aGUgbWFuaWZlc3QuXG4gKi9cbmV4cG9ydCBjbGFzcyBJbmNsdWRlIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEluY2x1ZGVQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBjb25zdCBvYmplY3RzID0gWWFtbC5sb2FkKHByb3BzLnVybCk7XG5cbiAgICBsZXQgb3JkZXIgPSAwO1xuICAgIGZvciAoY29uc3Qgb2JqIG9mIG9iamVjdHMpIHtcbiAgICAgIGNvbnN0IG9iam5hbWUgPSBvYmoubWV0YWRhdGE/Lm5hbWUgPz8gYG9iamVjdCR7b3JkZXIrK31gO1xuXG4gICAgICAvLyByZW5kZXIgYW4gaWQ6IG5hbWVbLWtpbmRdWy1uYW1lc3BhY2VdXG4gICAgICBjb25zdCBvYmppZCA9IFtvYmpuYW1lLCBvYmoua2luZD8udG9Mb3dlckNhc2UoKSwgb2JqLm1ldGFkYXRhPy5uYW1lc3BhY2VdLmZpbHRlcih4ID0+IHgpLmpvaW4oJy0nKTtcbiAgICAgIG5ldyBBcGlPYmplY3QodGhpcywgb2JqaWQsIG9iaik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYWxsIHRoZSBpbmNsdWRlZCBBUEkgb2JqZWN0cy5cbiAgICovXG4gIHB1YmxpYyBnZXQgYXBpT2JqZWN0cygpOiBBcGlPYmplY3RbXSB7XG4gICAgcmV0dXJuIHRoaXMubm9kZS5jaGlsZHJlbi5maWx0ZXIoKG8pOiBvIGlzIEFwaU9iamVjdCA9PiBvIGluc3RhbmNlb2YgQXBpT2JqZWN0KTtcbiAgfVxufVxuIl19
149401
149401
 
149402
149402
  /***/ }),
@@ -149534,7 +149534,7 @@ class JsonPatch {
149534
149534
  }
149535
149535
  exports.JsonPatch = JsonPatch;
149536
149536
  _a = JSII_RTTI_SYMBOL_1;
149537
- JsonPatch[_a] = { fqn: "cdk8s.JsonPatch", version: "2.69.39" };
149537
+ JsonPatch[_a] = { fqn: "cdk8s.JsonPatch", version: "2.69.57" };
149538
149538
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi1wYXRjaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9qc29uLXBhdGNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEscURBQW1FO0FBRW5FOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JHO0FBQ0gsTUFBYSxTQUFTO0lBQ3BCOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFhLEVBQUUsR0FBRyxHQUFnQjtRQUNwRCxNQUFNLE1BQU0sR0FBRyxJQUFBLDRCQUFVLEVBQUMsUUFBUSxFQUFFLElBQUEsMkJBQVMsRUFBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFFLE9BQU8sTUFBTSxDQUFDLFdBQVcsQ0FBQztJQUM1QixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFZLEVBQUUsS0FBVSxJQUFJLE9BQU8sSUFBSSxTQUFTLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUVqRzs7Ozs7T0FLRztJQUNJLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBWSxJQUFJLE9BQU8sSUFBSSxTQUFTLENBQUMsRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRXBGOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsT0FBTyxDQUFDLElBQVksRUFBRSxLQUFVLElBQUksT0FBTyxJQUFJLFNBQVMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRXpHOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFZLEVBQUUsSUFBWSxJQUFJLE9BQU8sSUFBSSxTQUFTLENBQUMsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUVwRzs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFZLEVBQUUsSUFBWSxJQUFJLE9BQU8sSUFBSSxTQUFTLENBQUMsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUVwRzs7Ozs7T0FLRztJQUNJLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBWSxFQUFFLEtBQVUsSUFBSSxPQUFPLElBQUksU0FBUyxDQUFDLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFbkcsWUFBcUMsU0FBb0I7UUFBcEIsY0FBUyxHQUFULFNBQVMsQ0FBVztJQUFHLENBQUM7SUFFN0Q7Ozs7T0FJRztJQUNJLE9BQU87UUFDWixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQzs7QUFwRUgsOEJBcUVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYXBwbHlQYXRjaCwgZGVlcENsb25lLCBPcGVyYXRpb24gfSBmcm9tICdmYXN0LWpzb24tcGF0Y2gnO1xuXG4vKipcbiAqIFV0aWxpdHkgZm9yIGFwcGx5aW5nIFJGQy02OTAyIEpTT04tUGF0Y2ggdG8gYSBkb2N1bWVudC5cbiAqXG4gKiBVc2UgdGhlIHRoZSBgSnNvblBhdGNoLmFwcGx5KGRvYywgLi4ub3BzKWAgZnVuY3Rpb24gdG8gYXBwbHkgYSBzZXQgb2ZcbiAqIG9wZXJhdGlvbnMgdG8gYSBKU09OIGRvY3VtZW50IGFuZCByZXR1cm4gdGhlIHJlc3VsdC5cbiAqXG4gKiBPcGVyYXRpb25zIGNhbiBiZSBjcmVhdGVkIHVzaW5nIHRoZSBmYWN0b3J5IG1ldGhvZHMgYEpzb25QYXRjaC5hZGQoKWAsXG4gKiBgSnNvblBhdGNoLnJlbW92ZSgpYCwgZXRjLlxuICpcbiAqIEBleGFtcGxlXG4gKlxuICpjb25zdCBvdXRwdXQgPSBKc29uUGF0Y2guYXBwbHkoaW5wdXQsXG4gKiAgSnNvblBhdGNoLnJlcGxhY2UoJy93b3JsZC9oaS90aGVyZScsICdnb29kYnllJyksXG4gKiAgSnNvblBhdGNoLmFkZCgnL3dvcmxkL2Zvby8nLCAnYm9vbScpLFxuICogIEpzb25QYXRjaC5yZW1vdmUoJy9oZWxsbycpKTtcbiAqXG4gKi9cbmV4cG9ydCBjbGFzcyBKc29uUGF0Y2gge1xuICAvKipcbiAgICogQXBwbGllcyBhIHNldCBvZiBKU09OLVBhdGNoIChSRkMtNjkwMikgb3BlcmF0aW9ucyB0byBgZG9jdW1lbnRgIGFuZCByZXR1cm5zIHRoZSByZXN1bHQuXG4gICAqIEBwYXJhbSBkb2N1bWVudCBUaGUgZG9jdW1lbnQgdG8gcGF0Y2hcbiAgICogQHBhcmFtIG9wcyBUaGUgb3BlcmF0aW9ucyB0byBhcHBseVxuICAgKiBAcmV0dXJucyBUaGUgcmVzdWx0IGRvY3VtZW50XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGFwcGx5KGRvY3VtZW50OiBhbnksIC4uLm9wczogSnNvblBhdGNoW10pOiBhbnkge1xuICAgIGNvbnN0IHJlc3VsdCA9IGFwcGx5UGF0Y2goZG9jdW1lbnQsIGRlZXBDbG9uZShvcHMubWFwKG8gPT4gby5fdG9Kc29uKCkpKSk7XG4gICAgcmV0dXJuIHJlc3VsdC5uZXdEb2N1bWVudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgdmFsdWUgdG8gYW4gb2JqZWN0IG9yIGluc2VydHMgaXQgaW50byBhbiBhcnJheS4gSW4gdGhlIGNhc2Ugb2YgYW5cbiAgICogYXJyYXksIHRoZSB2YWx1ZSBpcyBpbnNlcnRlZCBiZWZvcmUgdGhlIGdpdmVuIGluZGV4LiBUaGUgLSBjaGFyYWN0ZXIgY2FuIGJlXG4gICAqIHVzZWQgaW5zdGVhZCBvZiBhbiBpbmRleCB0byBpbnNlcnQgYXQgdGhlIGVuZCBvZiBhbiBhcnJheS5cbiAgICpcbiAgICogQGV4YW1wbGUgSnNvblBhdGNoLmFkZCgnL2Jpc2N1aXRzLzEnLCB7IFwibmFtZVwiOiBcIkdpbmdlciBOdXRcIiB9KVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBhZGQocGF0aDogc3RyaW5nLCB2YWx1ZTogYW55KSB7IHJldHVybiBuZXcgSnNvblBhdGNoKHsgb3A6ICdhZGQnLCBwYXRoLCB2YWx1ZSB9KTsgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmVzIGEgdmFsdWUgZnJvbSBhbiBvYmplY3Qgb3IgYXJyYXkuXG4gICAqXG4gICAqIEBleGFtcGxlIEpzb25QYXRjaC5yZW1vdmUoJy9iaXNjdWl0cycpXG4gICAqIEBleGFtcGxlIEpzb25QYXRjaC5yZW1vdmUoJy9iaXNjdWl0cy8wJylcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVtb3ZlKHBhdGg6IHN0cmluZykgeyByZXR1cm4gbmV3IEpzb25QYXRjaCh7IG9wOiAncmVtb3ZlJywgcGF0aCB9KTsgfVxuXG4gIC8qKlxuICAgKiBSZXBsYWNlcyBhIHZhbHVlLiBFcXVpdmFsZW50IHRvIGEg4oCccmVtb3Zl4oCdIGZvbGxvd2VkIGJ5IGFuIOKAnGFkZOKAnS5cbiAgICpcbiAgICogQGV4YW1wbGUgSnNvblBhdGNoLnJlcGxhY2UoJy9iaXNjdWl0cy8wL25hbWUnLCAnQ2hvY29sYXRlIERpZ2VzdGl2ZScpXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlcGxhY2UocGF0aDogc3RyaW5nLCB2YWx1ZTogYW55KSB7IHJldHVybiBuZXcgSnNvblBhdGNoKHsgb3A6ICdyZXBsYWNlJywgcGF0aCwgdmFsdWUgfSk7IH1cblxuICAvKipcbiAgICogQ29waWVzIGEgdmFsdWUgZnJvbSBvbmUgbG9jYXRpb24gdG8gYW5vdGhlciB3aXRoaW4gdGhlIEpTT04gZG9jdW1lbnQuIEJvdGhcbiAgICogZnJvbSBhbmQgcGF0aCBhcmUgSlNPTiBQb2ludGVycy5cbiAgICpcbiAgICogQGV4YW1wbGUgSnNvblBhdGNoLmNvcHkoJy9iaXNjdWl0cy8wJywgJy9iZXN0X2Jpc2N1aXQnKVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb3B5KGZyb206IHN0cmluZywgcGF0aDogc3RyaW5nKSB7IHJldHVybiBuZXcgSnNvblBhdGNoKHsgb3A6ICdjb3B5JywgZnJvbSwgcGF0aCB9KTsgfVxuXG4gIC8qKlxuICAgKiBNb3ZlcyBhIHZhbHVlIGZyb20gb25lIGxvY2F0aW9uIHRvIHRoZSBvdGhlci4gQm90aCBmcm9tIGFuZCBwYXRoIGFyZSBKU09OIFBvaW50ZXJzLlxuICAgKlxuICAgKiBAZXhhbXBsZSBKc29uUGF0Y2gubW92ZSgnL2Jpc2N1aXRzJywgJy9jb29raWVzJylcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgbW92ZShmcm9tOiBzdHJpbmcsIHBhdGg6IHN0cmluZykgeyByZXR1cm4gbmV3IEpzb25QYXRjaCh7IG9wOiAnbW92ZScsIGZyb20sIHBhdGggfSk7IH1cblxuICAvKipcbiAgICogVGVzdHMgdGhhdCB0aGUgc3BlY2lmaWVkIHZhbHVlIGlzIHNldCBpbiB0aGUgZG9jdW1lbnQuIElmIHRoZSB0ZXN0IGZhaWxzLFxuICAgKiB0aGVuIHRoZSBwYXRjaCBhcyBhIHdob2xlIHNob3VsZCBub3QgYXBwbHkuXG4gICAqXG4gICAqIEBleGFtcGxlIEpzb25QYXRjaC50ZXN0KCcvYmVzdF9iaXNjdWl0L25hbWUnLCAnQ2hvY28gTGVpYm5peicpXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHRlc3QocGF0aDogc3RyaW5nLCB2YWx1ZTogYW55KSB7IHJldHVybiBuZXcgSnNvblBhdGNoKHsgb3A6ICd0ZXN0JywgcGF0aCwgdmFsdWUgfSk7IH1cblxuICBwcml2YXRlIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgb3BlcmF0aW9uOiBPcGVyYXRpb24pIHt9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIEpTT04gcmVwcmVzZW50YXRpb24gb2YgdGhpcyBKU09OIHBhdGNoIG9wZXJhdGlvbi5cbiAgICpcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgX3RvSnNvbigpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLm9wZXJhdGlvbjtcbiAgfVxufSJdfQ==
149539
149539
 
149540
149540
  /***/ }),
@@ -149561,7 +149561,7 @@ class Lazy {
149561
149561
  }
149562
149562
  exports.Lazy = Lazy;
149563
149563
  _a = JSII_RTTI_SYMBOL_1;
149564
- Lazy[_a] = { fqn: "cdk8s.Lazy", version: "2.69.39" };
149564
+ Lazy[_a] = { fqn: "cdk8s.Lazy", version: "2.69.57" };
149565
149565
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF6eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9sYXp5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsTUFBYSxJQUFJO0lBQ1IsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFzQjtRQUN0QyxPQUFPLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBbUIsQ0FBQztJQUM5QyxDQUFDO0lBRUQsWUFBcUMsUUFBc0I7UUFBdEIsYUFBUSxHQUFSLFFBQVEsQ0FBYztJQUFHLENBQUM7SUFFeEQsT0FBTztRQUNaLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNqQyxDQUFDOztBQVRILG9CQVVDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIExhenkge1xuICBwdWJsaWMgc3RhdGljIGFueShwcm9kdWNlcjogSUFueVByb2R1Y2VyKTogYW55IHtcbiAgICByZXR1cm4gbmV3IExhenkocHJvZHVjZXIpIGFzIHVua25vd24gYXMgYW55O1xuICB9XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHByb2R1Y2VyOiBJQW55UHJvZHVjZXIpIHt9XG5cbiAgcHVibGljIHByb2R1Y2UoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5wcm9kdWNlci5wcm9kdWNlKCk7XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQW55UHJvZHVjZXIge1xuICBwcm9kdWNlKCk6IGFueTtcbn1cblxuXG4iXX0=
149566
149566
 
149567
149567
  /***/ }),
@@ -149660,7 +149660,7 @@ class ApiObjectMetadataDefinition {
149660
149660
  }
149661
149661
  exports.ApiObjectMetadataDefinition = ApiObjectMetadataDefinition;
149662
149662
  _a = JSII_RTTI_SYMBOL_1;
149663
- ApiObjectMetadataDefinition[_a] = { fqn: "cdk8s.ApiObjectMetadataDefinition", version: "2.69.39" };
149663
+ ApiObjectMetadataDefinition[_a] = { fqn: "cdk8s.ApiObjectMetadataDefinition", version: "2.69.57" };
149664
149664
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvbWV0YWRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxtQ0FBd0M7QUFFeEMsdUNBQW9DO0FBbUhwQzs7R0FFRztBQUNILE1BQWEsMkJBQTJCO0lBOEN0QyxZQUFZLE9BQTJDO1FBQ3JELElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQztRQUN6QixJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUM1QyxJQUFJLENBQUMsV0FBVyxHQUFHLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUN0RCxJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFDbkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDcEUsSUFBSSxDQUFDLGVBQWUsR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDbkYsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDO1FBQ25DLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxPQUFPLENBQUM7UUFFckMsK0VBQStFO1FBQy9FLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDLFNBQVMsQ0FBQztJQUM5QyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxRQUFRLENBQUMsR0FBVyxFQUFFLEtBQWE7UUFDeEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFFBQVEsQ0FBQyxHQUFXO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxhQUFhLENBQUMsR0FBVyxFQUFFLEtBQWE7UUFDN0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7SUFDaEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxhQUFhLENBQUMsR0FBRyxVQUFvQjtRQUMxQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksaUJBQWlCLENBQUMsS0FBcUI7UUFDNUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxHQUFHLENBQUMsR0FBVyxFQUFFLEtBQVU7UUFDaEMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQztJQUMxQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNO1FBQ1gsTUFBTSxRQUFRLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLElBQUEscUJBQWEsRUFBQyxDQUFDLEVBQUUsRUFBRSxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsa0JBQWtCLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNyRyxPQUFPLFFBQVEsQ0FBQyxJQUFBLGlCQUFPLEVBQUMsRUFBRSxFQUFFO1lBQzFCLEdBQUcsSUFBSSxDQUFDLHFCQUFxQjtZQUM3QixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDekIsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQzdCLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUMzQixlQUFlLEVBQUUsSUFBSSxDQUFDLGVBQWU7WUFDckMsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1NBQ3BCLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDdEIsQ0FBQzs7QUFqSUgsa0VBa0lDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc2FuaXRpemVWYWx1ZSB9IGZyb20gJy4vX3V0aWwnO1xuaW1wb3J0IHsgQXBpT2JqZWN0IH0gZnJvbSAnLi9hcGktb2JqZWN0JztcbmltcG9ydCB7IHJlc29sdmUgfSBmcm9tICcuL3Jlc29sdmUnO1xuXG4vKipcbiAqIE1ldGFkYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGlzIG9iamVjdC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBcGlPYmplY3RNZXRhZGF0YSB7XG4gIC8qKlxuICAgKiBUaGUgdW5pcXVlLCBuYW1lc3BhY2UtZ2xvYmFsLCBuYW1lIG9mIHRoaXMgb2JqZWN0IGluc2lkZSB0aGUgS3ViZXJuZXRlc1xuICAgKiBjbHVzdGVyLlxuICAgKlxuICAgKiBOb3JtYWxseSwgeW91IHNob3VsZG4ndCBzcGVjaWZ5IG5hbWVzIGZvciBvYmplY3RzIGFuZCBsZXQgdGhlIENESyBnZW5lcmF0ZVxuICAgKiBhIG5hbWUgZm9yIHlvdSB0aGF0IGlzIGFwcGxpY2F0aW9uLXVuaXF1ZS4gVGhlIG5hbWVzIENESyBnZW5lcmF0ZXMgYXJlXG4gICAqIGNvbXBvc2VkIGZyb20gdGhlIGNvbnN0cnVjdCBwYXRoIGNvbXBvbmVudHMsIHNlcGFyYXRlZCBieSBkb3RzIGFuZCBhIHN1ZmZpeFxuICAgKiB0aGF0IGlzIGJhc2VkIG9uIGEgaGFzaCBvZiB0aGUgZW50aXJlIHBhdGgsIHRvIGVuc3VyZSB1bmlxdWVuZXNzLlxuICAgKlxuICAgKiBZb3UgY2FuIHN1cHBseSBjdXN0b20gbmFtZSBhbGxvY2F0aW9uIGxvZ2ljIGJ5IG92ZXJyaWRpbmcgdGhlXG4gICAqIGBjaGFydC5nZW5lcmF0ZU9iamVjdE5hbWVgIG1ldGhvZC5cbiAgICpcbiAgICogSWYgeW91IHVzZSBhbiBleHBsaWNpdCBuYW1lIGhlcmUsIGJlYXIgaW4gbWluZCB0aGF0IHRoaXMgcmVkdWNlcyB0aGVcbiAgICogY29tcG9zYWJpbGl0eSBvZiB5b3VyIGNvbnN0cnVjdCBiZWNhdXNlIGl0IHdvbid0IGJlIHBvc3NpYmxlIHRvIGluY2x1ZGVcbiAgICogbW9yZSB0aGFuIG9uZSBpbnN0YW5jZSBpbiBhbnkgYXBwLiBUaGVyZWZvcmUgaXQgaXMgaGlnaGx5IHJlY29tbWVuZGVkIHRvXG4gICAqIGxlYXZlIHRoaXMgdW5zcGVjaWZpZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gYW4gYXBwLXVuaXF1ZSBuYW1lIGdlbmVyYXRlZCBieSB0aGUgY2hhcnRcbiAgICovXG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFubm90YXRpb25zIGlzIGFuIHVuc3RydWN0dXJlZCBrZXkgdmFsdWUgbWFwIHN0b3JlZCB3aXRoIGEgcmVzb3VyY2UgdGhhdCBtYXkgYmUgc2V0IGJ5IGV4dGVybmFsIHRvb2xzIHRvIHN0b3JlIGFuZCByZXRyaWV2ZSBhcmJpdHJhcnkgbWV0YWRhdGEuIFRoZXkgYXJlIG5vdCBxdWVyeWFibGUgYW5kIHNob3VsZCBiZVxuICAgKiBwcmVzZXJ2ZWQgd2hlbiBtb2RpZnlpbmcgb2JqZWN0cy5cbiAgICpcbiAgICogQHNlZSBodHRwOi8va3ViZXJuZXRlcy5pby9kb2NzL3VzZXItZ3VpZGUvYW5ub3RhdGlvbnNcbiAgICogQGRlZmF1bHQgLSBObyBhbm5vdGF0aW9ucy5cbiAgICovXG4gIHJlYWRvbmx5IGFubm90YXRpb25zPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcblxuICAvKipcbiAgICogTWFwIG9mIHN0cmluZyBrZXlzIGFuZCB2YWx1ZXMgdGhhdCBjYW4gYmUgdXNlZCB0byBvcmdhbml6ZSBhbmQgY2F0ZWdvcml6ZSAoc2NvcGUgYW5kIHNlbGVjdCkgb2JqZWN0cy5cbiAgICogTWF5IG1hdGNoIHNlbGVjdG9ycyBvZiByZXBsaWNhdGlvbiBjb250cm9sbGVycyBhbmQgc2VydmljZXMuXG4gICAqXG4gICAqIEBzZWUgaHR0cDovL2t1YmVybmV0ZXMuaW8vZG9jcy91c2VyLWd1aWRlL2xhYmVsc1xuICAgKiBAZGVmYXVsdCAtIE5vIGxhYmVscy5cbiAgICovXG4gIHJlYWRvbmx5IGxhYmVscz86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG5cbiAgLyoqXG4gICAqIE5hbWVzcGFjZSBkZWZpbmVzIHRoZSBzcGFjZSB3aXRoaW4gZWFjaCBuYW1lIG11c3QgYmUgdW5pcXVlLiBBbiBlbXB0eSBuYW1lc3BhY2UgaXMgZXF1aXZhbGVudCB0byB0aGUgXCJkZWZhdWx0XCIgbmFtZXNwYWNlLCBidXQgXCJkZWZhdWx0XCIgaXMgdGhlIGNhbm9uaWNhbCByZXByZXNlbnRhdGlvbi5cbiAgICogTm90IGFsbCBvYmplY3RzIGFyZSByZXF1aXJlZCB0byBiZSBzY29wZWQgdG8gYSBuYW1lc3BhY2UgLSB0aGUgdmFsdWUgb2YgdGhpcyBmaWVsZCBmb3IgdGhvc2Ugb2JqZWN0cyB3aWxsIGJlIGVtcHR5LiBNdXN0IGJlIGEgRE5TX0xBQkVMLiBDYW5ub3QgYmUgdXBkYXRlZC4gTW9yZSBpbmZvOiBodHRwOi8va3ViZXJuZXRlcy5pby9kb2NzL3VzZXItZ3VpZGUvbmFtZXNwYWNlc1xuICAgKlxuICAgKiBAZGVmYXVsdCB1bmRlZmluZWQgKHdpbGwgYmUgYXNzaWduZWQgdG8gdGhlICdkZWZhdWx0JyBuYW1lc3BhY2UpXG4gICAqL1xuICByZWFkb25seSBuYW1lc3BhY2U/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWVzcGFjZWQga2V5cyB0aGF0IHRlbGwgS3ViZXJuZXRlcyB0byB3YWl0IHVudGlsIHNwZWNpZmljIGNvbmRpdGlvbnMgYXJlXG4gICAqIG1ldCBiZWZvcmUgaXQgZnVsbHkgZGVsZXRlcyByZXNvdXJjZXMgbWFya2VkIGZvciBkZWxldGlvbi5cbiAgICpcbiAgICogTXVzdCBiZSBlbXB0eSBiZWZvcmUgdGhlIG9iamVjdCBpcyBkZWxldGVkIGZyb20gdGhlIHJlZ2lzdHJ5LiBFYWNoIGVudHJ5IGlzXG4gICAqIGFuIGlkZW50aWZpZXIgZm9yIHRoZSByZXNwb25zaWJsZSBjb21wb25lbnQgdGhhdCB3aWxsIHJlbW92ZSB0aGUgZW50cnkgZnJvbVxuICAgKiB0aGUgbGlzdC4gSWYgdGhlIGRlbGV0aW9uVGltZXN0YW1wIG9mIHRoZSBvYmplY3QgaXMgbm9uLW5pbCwgZW50cmllcyBpblxuICAgKiB0aGlzIGxpc3QgY2FuIG9ubHkgYmUgcmVtb3ZlZC4gRmluYWxpemVycyBtYXkgYmUgcHJvY2Vzc2VkIGFuZCByZW1vdmVkIGluXG4gICAqIGFueSBvcmRlci4gIE9yZGVyIGlzIE5PVCBlbmZvcmNlZCBiZWNhdXNlIGl0IGludHJvZHVjZXMgc2lnbmlmaWNhbnQgcmlzayBvZlxuICAgKiBzdHVjayBmaW5hbGl6ZXJzLiBmaW5hbGl6ZXJzIGlzIGEgc2hhcmVkIGZpZWxkLCBhbnkgYWN0b3Igd2l0aCBwZXJtaXNzaW9uXG4gICAqIGNhbiByZW9yZGVyIGl0LiBJZiB0aGUgZmluYWxpemVyIGxpc3QgaXMgcHJvY2Vzc2VkIGluIG9yZGVyLCB0aGVuIHRoaXMgY2FuXG4gICAqIGxlYWQgdG8gYSBzaXR1YXRpb24gaW4gd2hpY2ggdGhlIGNvbXBvbmVudCByZXNwb25zaWJsZSBmb3IgdGhlIGZpcnN0XG4gICAqIGZpbmFsaXplciBpbiB0aGUgbGlzdCBpcyB3YWl0aW5nIGZvciBhIHNpZ25hbCAoZmllbGQgdmFsdWUsIGV4dGVybmFsXG4gICAqIHN5c3RlbSwgb3Igb3RoZXIpIHByb2R1Y2VkIGJ5IGEgY29tcG9uZW50IHJlc3BvbnNpYmxlIGZvciBhIGZpbmFsaXplciBsYXRlclxuICAgKiBpbiB0aGUgbGlzdCwgcmVzdWx0aW5nIGluIGEgZGVhZGxvY2suIFdpdGhvdXQgZW5mb3JjZWQgb3JkZXJpbmcgZmluYWxpemVyc1xuICAgKiBhcmUgZnJlZSB0byBvcmRlciBhbW9uZ3N0IHRoZW1zZWx2ZXMgYW5kIGFyZSBub3QgdnVsbmVyYWJsZSB0byBvcmRlcmluZ1xuICAgKiBjaGFuZ2VzIGluIHRoZSBsaXN0LlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL292ZXJ2aWV3L3dvcmtpbmctd2l0aC1vYmplY3RzL2ZpbmFsaXplcnMvXG4gICAqIEBkZWZhdWx0IC0gTm8gZmluYWxpemVycy5cbiAgICovXG4gIHJlYWRvbmx5IGZpbmFsaXplcnM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogTGlzdCBvZiBvYmplY3RzIGRlcGVuZGVkIGJ5IHRoaXMgb2JqZWN0LiBJZiBBTEwgb2JqZWN0cyBpbiB0aGUgbGlzdCBoYXZlXG4gICAqIGJlZW4gZGVsZXRlZCwgdGhpcyBvYmplY3Qgd2lsbCBiZSBnYXJiYWdlIGNvbGxlY3RlZC4gSWYgdGhpcyBvYmplY3QgaXNcbiAgICogbWFuYWdlZCBieSBhIGNvbnRyb2xsZXIsIHRoZW4gYW4gZW50cnkgaW4gdGhpcyBsaXN0IHdpbGwgcG9pbnQgdG8gdGhpc1xuICAgKiBjb250cm9sbGVyLCB3aXRoIHRoZSBjb250cm9sbGVyIGZpZWxkIHNldCB0byB0cnVlLiBUaGVyZSBjYW5ub3QgYmUgbW9yZVxuICAgKiB0aGFuIG9uZSBtYW5hZ2luZyBjb250cm9sbGVyLlxuICAgKlxuICAgKiBLdWJlcm5ldGVzIHNldHMgdGhlIHZhbHVlIG9mIHRoaXMgZmllbGQgYXV0b21hdGljYWxseSBmb3Igb2JqZWN0cyB0aGF0IGFyZVxuICAgKiBkZXBlbmRlbnRzIG9mIG90aGVyIG9iamVjdHMgbGlrZSBSZXBsaWNhU2V0cywgRGFlbW9uU2V0cywgRGVwbG95bWVudHMsIEpvYnNcbiAgICogYW5kIENyb25Kb2JzLCBhbmQgUmVwbGljYXRpb25Db250cm9sbGVycy4gWW91IGNhbiBhbHNvIGNvbmZpZ3VyZSB0aGVzZVxuICAgKiByZWxhdGlvbnNoaXBzIG1hbnVhbGx5IGJ5IGNoYW5naW5nIHRoZSB2YWx1ZSBvZiB0aGlzIGZpZWxkLiBIb3dldmVyLCB5b3VcbiAgICogdXN1YWxseSBkb24ndCBuZWVkIHRvIGFuZCBjYW4gYWxsb3cgS3ViZXJuZXRlcyB0byBhdXRvbWF0aWNhbGx5IG1hbmFnZSB0aGVcbiAgICogcmVsYXRpb25zaGlwcy5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9vdmVydmlldy93b3JraW5nLXdpdGgtb2JqZWN0cy9vd25lcnMtZGVwZW5kZW50cy9cbiAgICogQGRlZmF1bHQgLSBhdXRvbWF0aWNhbGx5IHNldCBieSBLdWJlcm5ldGVzXG4gICAqL1xuICByZWFkb25seSBvd25lclJlZmVyZW5jZXM/OiBPd25lclJlZmVyZW5jZVtdO1xuXG4gIC8qKlxuICAgKiBBZGRpdGlvbmFsIG1ldGFkYXRhIGF0dHJpYnV0ZXMuXG4gICAqIEBqc2lpIGlnbm9yZVxuICAgKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9jZGs4cy10ZWFtL2NkazhzLWNvcmUvaXNzdWVzLzEyOTdcbiAgICovXG4gIHJlYWRvbmx5IFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBgQXBpT2JqZWN0TWV0YWRhdGFEZWZpbml0aW9uYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBcGlPYmplY3RNZXRhZGF0YURlZmluaXRpb25PcHRpb25zIGV4dGVuZHMgQXBpT2JqZWN0TWV0YWRhdGEge1xuXG4gIC8qKlxuICAgKiBXaGljaCBBcGlPYmplY3QgaW5zdGFuY2UgaXMgdGhlIG1ldGFkYXRhIGF0dGFjaGVkIHRvLlxuICAgKi9cbiAgcmVhZG9ubHkgYXBpT2JqZWN0OiBBcGlPYmplY3Q7XG5cbn1cblxuLyoqXG4gKiBPYmplY3QgbWV0YWRhdGEuXG4gKi9cbmV4cG9ydCBjbGFzcyBBcGlPYmplY3RNZXRhZGF0YURlZmluaXRpb24ge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIEFQSSBvYmplY3QuXG4gICAqXG4gICAqIElmIGEgbmFtZSBpcyBzcGVjaWZpZWQgaW4gYG1ldGFkYXRhLm5hbWVgIHRoaXMgd2lsbCBiZSB0aGUgbmFtZSByZXR1cm5lZC5cbiAgICogT3RoZXJ3aXNlLCBhIG5hbWUgd2lsbCBiZSBnZW5lcmF0ZWQgYnkgY2FsbGluZ1xuICAgKiBgQ2hhcnQub2YodGhpcykuZ2VuZXJhdGVkT2JqZWN0TmFtZSh0aGlzKWAsIHdoaWNoIGJ5IGRlZmF1bHQgdXNlcyB0aGVcbiAgICogY29uc3RydWN0IHBhdGggdG8gZ2VuZXJhdGUgYSBETlMtY29tcGF0aWJsZSBuYW1lIGZvciB0aGUgcmVzb3VyY2UuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG9iamVjdCdzIG5hbWVzcGFjZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBuYW1lc3BhY2U/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIExhYmVscyBhc3NvY2lhdGVkIHdpdGggdGhpcyBvYmplY3QuXG4gICAqL1xuICBwcml2YXRlIHJlYWRvbmx5IGxhYmVsczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcblxuICAvKipcbiAgICogQW5ub3RhdGlvbnMgYXNzb2NpYXRlZCB3aXRoIHRoaXMgb2JqZWN0LlxuICAgKi9cbiAgcHJpdmF0ZSByZWFkb25seSBhbm5vdGF0aW9uczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcblxuICAvKipcbiAgICogRmluYWxpemVycyBhc3NvY2lhdGVkIHdpdGggdGhpcyBvYmplY3QuXG4gICAqL1xuICBwcml2YXRlIHJlYWRvbmx5IGZpbmFsaXplcnM6IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBPd25lciByZWZlcmVuY2VzIHNldCBmb3IgdGhpcyBvYmplY3QuXG4gICAqL1xuICBwcml2YXRlIHJlYWRvbmx5IG93bmVyUmVmZXJlbmNlczogT3duZXJSZWZlcmVuY2VbXTtcblxuICAvKipcbiAgICogVGhlIEFwaU9iamVjdCB0aGlzIG1ldGFkYXRhIGlzIGF0dGFjaGVkIHRvLlxuICAgKi9cbiAgcHJpdmF0ZSByZWFkb25seSBhcGlPYmplY3Q6IEFwaU9iamVjdDtcblxuICAvKipcbiAgICogQWRkaXRpb25hbCBtZXRhZGF0YSBhdHRyaWJ1dGVzIHBhc3NlZCB0aHJvdWdoIGBvcHRpb25zYC5cbiAgICovXG4gIHByaXZhdGUgcmVhZG9ubHkgX2FkZGl0aW9uYWxBdHRyaWJ1dGVzOiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEFwaU9iamVjdE1ldGFkYXRhRGVmaW5pdGlvbk9wdGlvbnMpIHtcbiAgICB0aGlzLm5hbWUgPSBvcHRpb25zLm5hbWU7XG4gICAgdGhpcy5sYWJlbHMgPSB7IC4uLihvcHRpb25zLmxhYmVscyA/PyB7fSkgfTtcbiAgICB0aGlzLmFubm90YXRpb25zID0geyAuLi4ob3B0aW9ucy5hbm5vdGF0aW9ucyA/PyB7fSkgfTtcbiAgICB0aGlzLm5hbWVzcGFjZSA9IG9wdGlvbnMubmFtZXNwYWNlO1xuICAgIHRoaXMuZmluYWxpemVycyA9IG9wdGlvbnMuZmluYWxpemVycyA/IFsuLi5vcHRpb25zLmZpbmFsaXplcnNdIDogW107XG4gICAgdGhpcy5vd25lclJlZmVyZW5jZXMgPSBvcHRpb25zLm93bmVyUmVmZXJlbmNlcyA/IFsuLi5vcHRpb25zLm93bmVyUmVmZXJlbmNlc10gOiBbXTtcbiAgICB0aGlzLmFwaU9iamVjdCA9IG9wdGlvbnMuYXBpT2JqZWN0O1xuICAgIHRoaXMuX2FkZGl0aW9uYWxBdHRyaWJ1dGVzID0gb3B0aW9ucztcblxuICAgIC8vIG90aGVyd2lzZSBhcGlPYmplY3QgaXMgcGFzc2VkIHRvIHRoZSByZXNvbHZpbmcgbG9naWMsIHdoaWNoIGV4cGVjdGFkbHkgZmFpbHNcbiAgICBkZWxldGUgdGhpcy5fYWRkaXRpb25hbEF0dHJpYnV0ZXMuYXBpT2JqZWN0O1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIGxhYmVsLlxuICAgKlxuICAgKiBAcGFyYW0ga2V5IC0gVGhlIGtleS5cbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIGFkZExhYmVsKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5sYWJlbHNba2V5XSA9IHZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIGEgdmFsdWUgb2YgYSBsYWJlbCBvciB1bmRlZmluZWRcbiAgICogQHBhcmFtIGtleSB0aGUgbGFiZWxcbiAgICovXG4gIHB1YmxpYyBnZXRMYWJlbChrZXk6IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMubGFiZWxzW2tleV07XG4gIH1cblxuICAvKipcbiAgICogQWRkIGFuIGFubm90YXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSBrZXkgLSBUaGUga2V5LlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgYWRkQW5ub3RhdGlvbihrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuYW5ub3RhdGlvbnNba2V5XSA9IHZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBvbmUgb3IgbW9yZSBmaW5hbGl6ZXJzLlxuICAgKlxuICAgKiBAcGFyYW0gZmluYWxpemVycyB0aGUgZmluYWxpemVyc1xuICAgKi9cbiAgcHVibGljIGFkZEZpbmFsaXplcnMoLi4uZmluYWxpemVyczogc3RyaW5nW10pIHtcbiAgICB0aGlzLmZpbmFsaXplcnMucHVzaCguLi5maW5hbGl6ZXJzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYW4gb3duZXIuXG4gICAqXG4gICAqIEBwYXJhbSBvd25lciB0aGUgb3duZXJcbiAgICovXG4gIHB1YmxpYyBhZGRPd25lclJlZmVyZW5jZShvd25lcjogT3duZXJSZWZlcmVuY2UpIHtcbiAgICB0aGlzLm93bmVyUmVmZXJlbmNlcy5wdXNoKG93bmVyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGFuIGFyYml0cmFyeSBrZXkvdmFsdWUgdG8gdGhlIG9iamVjdCBtZXRhZGF0YS5cbiAgICogQHBhcmFtIGtleSBNZXRhZGF0YSBrZXlcbiAgICogQHBhcmFtIHZhbHVlIE1ldGFkYXRhIHZhbHVlXG4gICAqL1xuICBwdWJsaWMgYWRkKGtleTogc3RyaW5nLCB2YWx1ZTogYW55KSB7XG4gICAgdGhpcy5fYWRkaXRpb25hbEF0dHJpYnV0ZXNba2V5XSA9IHZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIFN5bnRoZXNpemVzIGEgazhzIE9iamVjdE1ldGEgZm9yIHRoaXMgbWV0YWRhdGEgc2V0LlxuICAgKi9cbiAgcHVibGljIHRvSnNvbigpIHtcbiAgICBjb25zdCBzYW5pdGl6ZSA9ICh4OiBhbnkpID0+IHNhbml0aXplVmFsdWUoeCwgeyBmaWx0ZXJFbXB0eUFycmF5czogdHJ1ZSwgZmlsdGVyRW1wdHlPYmplY3RzOiB0cnVlIH0pO1xuICAgIHJldHVybiBzYW5pdGl6ZShyZXNvbHZlKFtdLCB7XG4gICAgICAuLi50aGlzLl9hZGRpdGlvbmFsQXR0cmlidXRlcyxcbiAgICAgIG5hbWU6IHRoaXMubmFtZSxcbiAgICAgIG5hbWVzcGFjZTogdGhpcy5uYW1lc3BhY2UsXG4gICAgICBhbm5vdGF0aW9uczogdGhpcy5hbm5vdGF0aW9ucyxcbiAgICAgIGZpbmFsaXplcnM6IHRoaXMuZmluYWxpemVycyxcbiAgICAgIG93bmVyUmVmZXJlbmNlczogdGhpcy5vd25lclJlZmVyZW5jZXMsXG4gICAgICBsYWJlbHM6IHRoaXMubGFiZWxzLFxuICAgIH0sIHRoaXMuYXBpT2JqZWN0KSk7XG4gIH1cbn1cblxuLyoqXG4gKiBPd25lclJlZmVyZW5jZSBjb250YWlucyBlbm91Z2ggaW5mb3JtYXRpb24gdG8gbGV0IHlvdSBpZGVudGlmeSBhbiBvd25pbmdcbiAqIG9iamVjdC4gQW4gb3duaW5nIG9iamVjdCBtdXN0IGJlIGluIHRoZSBzYW1lIG5hbWVzcGFjZSBhcyB0aGUgZGVwZW5kZW50LCBvclxuICogYmUgY2x1c3Rlci1zY29wZWQsIHNvIHRoZXJlIGlzIG5vIG5hbWVzcGFjZSBmaWVsZC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPd25lclJlZmVyZW5jZSB7XG4gIC8qKlxuICAgKiBBUEkgdmVyc2lvbiBvZiB0aGUgcmVmZXJlbnQuXG4gICAqL1xuICByZWFkb25seSBhcGlWZXJzaW9uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIElmIHRydWUsIEFORCBpZiB0aGUgb3duZXIgaGFzIHRoZSBcImZvcmVncm91bmREZWxldGlvblwiIGZpbmFsaXplciwgdGhlbiB0aGVcbiAgICogb3duZXIgY2Fubm90IGJlIGRlbGV0ZWQgZnJvbSB0aGUga2V5LXZhbHVlIHN0b3JlIHVudGlsIHRoaXMgcmVmZXJlbmNlIGlzXG4gICAqIHJlbW92ZWQuIERlZmF1bHRzIHRvIGZhbHNlLiBUbyBzZXQgdGhpcyBmaWVsZCwgYSB1c2VyIG5lZWRzIFwiZGVsZXRlXCJcbiAgICogcGVybWlzc2lvbiBvZiB0aGUgb3duZXIsIG90aGVyd2lzZSA0MjIgKFVucHJvY2Vzc2FibGUgRW50aXR5KSB3aWxsIGJlXG4gICAqIHJldHVybmVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZS4gVG8gc2V0IHRoaXMgZmllbGQsIGEgdXNlciBuZWVkcyBcImRlbGV0ZVwiIHBlcm1pc3Npb24gb2YgdGhlXG4gICAqIG93bmVyLCBvdGhlcndpc2UgNDIyIChVbnByb2Nlc3NhYmxlIEVudGl0eSkgd2lsbCBiZSByZXR1cm5lZC5cbiAgICovXG4gIHJlYWRvbmx5IGJsb2NrT3duZXJEZWxldGlvbj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIElmIHRydWUsIHRoaXMgcmVmZXJlbmNlIHBvaW50cyB0byB0aGUgbWFuYWdpbmcgY29udHJvbGxlci5cbiAgICovXG4gIHJlYWRvbmx5IGNvbnRyb2xsZXI/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBLaW5kIG9mIHRoZSByZWZlcmVudC5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2dpdC5rOHMuaW8vY29tbXVuaXR5L2NvbnRyaWJ1dG9ycy9kZXZlbC9zaWctYXJjaGl0ZWN0dXJlL2FwaS1jb252ZW50aW9ucy5tZCN0eXBlcy1raW5kc1xuICAgKi9cbiAgcmVhZG9ubHkga2luZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSByZWZlcmVudC5cbiAgICpcbiAgICogQHNlZSBodHRwOi8va3ViZXJuZXRlcy5pby9kb2NzL3VzZXItZ3VpZGUvaWRlbnRpZmllcnMjbmFtZXNcbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVUlEIG9mIHRoZSByZWZlcmVudC5cbiAgICpcbiAgICogQHNlZSBodHRwOi8va3ViZXJuZXRlcy5pby9kb2NzL3VzZXItZ3VpZGUvaWRlbnRpZmllcnMjdWlkc1xuICAgKi9cbiAgcmVhZG9ubHkgdWlkOiBzdHJpbmc7XG5cbn1cbiJdfQ==
149665
149665
 
149666
149666
  /***/ }),
@@ -149791,7 +149791,7 @@ class Names {
149791
149791
  }
149792
149792
  exports.Names = Names;
149793
149793
  _a = JSII_RTTI_SYMBOL_1;
149794
- Names[_a] = { fqn: "cdk8s.Names", version: "2.69.39" };
149794
+ Names[_a] = { fqn: "cdk8s.Names", version: "2.69.57" };
149795
149795
  function omitDuplicates(value, index, components) {
149796
149796
  return value !== components[index - 1];
149797
149797
  }
@@ -149883,7 +149883,7 @@ class ResolutionContext {
149883
149883
  }
149884
149884
  exports.ResolutionContext = ResolutionContext;
149885
149885
  _a = JSII_RTTI_SYMBOL_1;
149886
- ResolutionContext[_a] = { fqn: "cdk8s.ResolutionContext", version: "2.69.39" };
149886
+ ResolutionContext[_a] = { fqn: "cdk8s.ResolutionContext", version: "2.69.57" };
149887
149887
  /**
149888
149888
  * Resolvers instanecs of `Lazy`.
149889
149889
  */
@@ -149897,7 +149897,7 @@ class LazyResolver {
149897
149897
  }
149898
149898
  exports.LazyResolver = LazyResolver;
149899
149899
  _b = JSII_RTTI_SYMBOL_1;
149900
- LazyResolver[_b] = { fqn: "cdk8s.LazyResolver", version: "2.69.39" };
149900
+ LazyResolver[_b] = { fqn: "cdk8s.LazyResolver", version: "2.69.57" };
149901
149901
  /**
149902
149902
  * Resolves implicit tokens.
149903
149903
  */
@@ -149911,7 +149911,7 @@ class ImplicitTokenResolver {
149911
149911
  }
149912
149912
  exports.ImplicitTokenResolver = ImplicitTokenResolver;
149913
149913
  _c = JSII_RTTI_SYMBOL_1;
149914
- ImplicitTokenResolver[_c] = { fqn: "cdk8s.ImplicitTokenResolver", version: "2.69.39" };
149914
+ ImplicitTokenResolver[_c] = { fqn: "cdk8s.ImplicitTokenResolver", version: "2.69.57" };
149915
149915
  /**
149916
149916
  * Resolves union types that allow using either number or string (as generated by the CLI).
149917
149917
  *
@@ -149932,7 +149932,7 @@ class NumberStringUnionResolver {
149932
149932
  }
149933
149933
  exports.NumberStringUnionResolver = NumberStringUnionResolver;
149934
149934
  _d = JSII_RTTI_SYMBOL_1;
149935
- NumberStringUnionResolver[_d] = { fqn: "cdk8s.NumberStringUnionResolver", version: "2.69.39" };
149935
+ NumberStringUnionResolver[_d] = { fqn: "cdk8s.NumberStringUnionResolver", version: "2.69.57" };
149936
149936
  NumberStringUnionResolver.TYPES = ['number', 'string'];
149937
149937
  /**
149938
149938
  * Resolves any value attached to a specific ApiObject.
@@ -150068,7 +150068,7 @@ class Size {
150068
150068
  }
150069
150069
  exports.Size = Size;
150070
150070
  _a = JSII_RTTI_SYMBOL_1;
150071
- Size[_a] = { fqn: "cdk8s.Size", version: "2.69.39" };
150071
+ Size[_a] = { fqn: "cdk8s.Size", version: "2.69.57" };
150072
150072
  /**
150073
150073
  * Rounding behaviour when converting between units of `Size`.
150074
150074
  */
@@ -150173,7 +150173,7 @@ class Testing {
150173
150173
  }
150174
150174
  exports.Testing = Testing;
150175
150175
  _a = JSII_RTTI_SYMBOL_1;
150176
- Testing[_a] = { fqn: "cdk8s.Testing", version: "2.69.39" };
150176
+ Testing[_a] = { fqn: "cdk8s.Testing", version: "2.69.57" };
150177
150177
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdGluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy90ZXN0aW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEseUJBQXlCO0FBQ3pCLHlCQUF5QjtBQUN6Qiw2QkFBNkI7QUFDN0IsK0JBQXNDO0FBQ3RDLG1DQUFnQztBQUVoQzs7R0FFRztBQUNILE1BQWEsT0FBTztJQUNsQjs7O09BR0c7SUFDSSxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQWdCO1FBQ2hDLElBQUksTUFBYyxDQUFDO1FBQ25CLElBQUksS0FBSyxFQUFFLENBQUM7WUFDVixNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFLGVBQWUsQ0FBQyxDQUFDLENBQUM7UUFDbkYsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxlQUFlLENBQUMsQ0FBQyxDQUFDO1FBQ25FLENBQUM7UUFDRCxPQUFPLElBQUksU0FBRyxDQUFDLEVBQUUsTUFBTSxFQUFFLEdBQUcsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsS0FBSztRQUNqQixPQUFPLElBQUksYUFBSyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQVk7UUFDOUIsT0FBTyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELDBCQUEwQjtJQUMxQjtRQUNFLE9BQU87SUFDVCxDQUFDOztBQWhDSCwwQkFpQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tICdmcyc7XG5pbXBvcnQgKiBhcyBvcyBmcm9tICdvcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgQXBwLCBBcHBQcm9wcyB9IGZyb20gJy4vYXBwJztcbmltcG9ydCB7IENoYXJ0IH0gZnJvbSAnLi9jaGFydCc7XG5cbi8qKlxuICogVGVzdGluZyB1dGlsaXRpZXMgZm9yIGNkazhzIGFwcGxpY2F0aW9ucy5cbiAqL1xuZXhwb3J0IGNsYXNzIFRlc3Rpbmcge1xuICAvKipcbiAgICogUmV0dXJucyBhbiBhcHAgZm9yIHRlc3Rpbmcgd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6XG4gICAqIC0gT3V0cHV0IGRpcmVjdG9yeSBpcyBhIHRlbXAgZGlyLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBhcHAocHJvcHM/OiBBcHBQcm9wcykge1xuICAgIGxldCBvdXRkaXI6IHN0cmluZztcbiAgICBpZiAocHJvcHMpIHtcbiAgICAgIG91dGRpciA9IHByb3BzLm91dGRpciA/PyBmcy5ta2R0ZW1wU3luYyhwYXRoLmpvaW4ob3MudG1wZGlyKCksICdjZGs4cy5vdXRkaXIuJykpO1xuICAgIH0gZWxzZSB7XG4gICAgICBvdXRkaXIgPSBmcy5ta2R0ZW1wU3luYyhwYXRoLmpvaW4ob3MudG1wZGlyKCksICdjZGs4cy5vdXRkaXIuJykpO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IEFwcCh7IG91dGRpciwgLi4ucHJvcHMgfSk7XG4gIH1cblxuICAvKipcbiAgICogQHJldHVybnMgYSBDaGFydCB0aGF0IGNhbiBiZSB1c2VkIGZvciB0ZXN0c1xuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjaGFydCgpIHtcbiAgICByZXR1cm4gbmV3IENoYXJ0KHRoaXMuYXBwKCksICd0ZXN0Jyk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgS3ViZXJuZXRlcyBtYW5pZmVzdCBzeW50aGVzaXplZCBmcm9tIHRoaXMgY2hhcnQuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHN5bnRoKGNoYXJ0OiBDaGFydCk6IGFueVtdIHtcbiAgICByZXR1cm4gY2hhcnQudG9Kc29uKCk7XG4gIH1cblxuICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICBwcml2YXRlIGNvbnN0cnVjdG9yKCkge1xuICAgIHJldHVybjtcbiAgfVxufVxuIl19
150178
150178
 
150179
150179
  /***/ }),
@@ -150282,19 +150282,19 @@ class Yaml {
150282
150282
  }
150283
150283
  exports.Yaml = Yaml;
150284
150284
  _a = JSII_RTTI_SYMBOL_1;
150285
- Yaml[_a] = { fqn: "cdk8s.Yaml", version: "2.69.39" };
150285
+ Yaml[_a] = { fqn: "cdk8s.Yaml", version: "2.69.57" };
150286
150286
  /**
150287
150287
  * Loads a url (or file) and returns the contents.
150288
150288
  * This method spawns a child process in order to perform an http call synchronously.
150289
150289
  */
150290
150290
  function loadurl(url) {
150291
- const script = __nccwpck_require__.ab + "_loadurl.js";
150292
- return (0, child_process_1.execFileSync)(process.execPath, [__nccwpck_require__.ab + "_loadurl.js", url], {
150291
+ const script = __nccwpck_require__.ab + "_loadurl.mjs";
150292
+ return (0, child_process_1.execFileSync)(process.execPath, [__nccwpck_require__.ab + "_loadurl.mjs", url], {
150293
150293
  encoding: 'utf-8',
150294
150294
  maxBuffer: MAX_DOWNLOAD_BUFFER,
150295
150295
  }).toString();
150296
150296
  }
150297
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWFtbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy95YW1sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsaURBQTZDO0FBQzdDLHlCQUF5QjtBQUN6Qix5QkFBeUI7QUFDekIsNkJBQTZCO0FBQzdCLDZCQUE2QjtBQUU3QixNQUFNLG1CQUFtQixHQUFHLEVBQUUsR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFDO0FBRTdDLG9IQUFvSDtBQUNwSCx1RUFBdUU7QUFDdkUsMEVBQTBFO0FBQzFFLE1BQU0saUJBQWlCLEdBQUcsS0FBSyxDQUFDO0FBRWhDOztHQUVHO0FBQ0gsTUFBYSxJQUFJO0lBQ2Y7O09BRUc7SUFDSSxNQUFNLENBQUMsYUFBYSxDQUFDLElBQVc7UUFDckMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQWdCLEVBQUUsSUFBVztRQUM5QyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFDckMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVEOzs7Ozs7OztPQVFHO0lBQ0ksTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLElBQVc7UUFDcEMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUNiLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUNuSCxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsR0FBRyxDQUFDLElBQVc7UUFDM0IsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQ2hFLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzFCLE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNJLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBaUI7UUFDbEMsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRWhDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUU7WUFDM0MsT0FBTyxFQUFFLGlCQUFpQjtTQUMzQixDQUFDLENBQUM7UUFDSCxNQUFNLE1BQU0sR0FBRyxJQUFJLEtBQUssRUFBTyxDQUFDO1FBRWhDLEtBQUssTUFBTSxHQUFHLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDL0MsdUJBQXVCO1lBQ3ZCLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRSxDQUFDO2dCQUFDLFNBQVM7WUFBQyxDQUFDO1lBQ3BDLElBQUksR0FBRyxLQUFLLElBQUksRUFBRSxDQUFDO2dCQUFDLFNBQVM7WUFBQyxDQUFDO1lBQy9CLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUFDLFNBQVM7WUFBQyxDQUFDO1lBQ3pELElBQUksT0FBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLFFBQVEsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFBQyxTQUFTO1lBQUMsQ0FBQztZQUU1RSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25CLENBQUM7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQ7O09BRUc7SUFDSDtRQUNFLE9BQU87SUFDVCxDQUFDOztBQWpGSCxvQkFrRkM7OztBQUVEOzs7R0FHRztBQUNILFNBQVMsT0FBTyxDQUFDLEdBQVc7SUFDMUIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDbkQsT0FBTyxJQUFBLDRCQUFZLEVBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsRUFBRTtRQUNuRCxRQUFRLEVBQUUsT0FBTztRQUNqQixTQUFTLEVBQUUsbUJBQW1CO0tBQy9CLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztBQUNoQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZXhlY0ZpbGVTeW5jIH0gZnJvbSAnY2hpbGRfcHJvY2Vzcyc7XG5pbXBvcnQgKiBhcyBmcyBmcm9tICdmcyc7XG5pbXBvcnQgKiBhcyBvcyBmcm9tICdvcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0ICogYXMgWUFNTCBmcm9tICd5YW1sJztcblxuY29uc3QgTUFYX0RPV05MT0FEX0JVRkZFUiA9IDEwICogMTAyNCAqIDEwMjQ7XG5cbi8vIFNldCBkZWZhdWx0IFlBTUwgc2NoZW1hIHRvIDEuMS4gVGhpcyBlbnN1cmVzIHNhdmVkIFlBTUwgaXMgYmFja3dhcmQgY29tcGF0aWJsZSB3aXRoIG90aGVyIHBhcnNlcnMsIHN1Y2ggYXMgUHlZQU1MXG4vLyBJdCBhbHNvIGVuc3VyZXMgdGhhdCBvY3RhbCBudW1iZXJzIGluIHRoZSBmb3JtIGAwNzc1YCB3aWxsIGJlIHBhcnNlZFxuLy8gY29ycmVjdGx5IG9uIFlBTUwgbG9hZC4gKHNlZSBodHRwczovL2dpdGh1Yi5jb20vZWVtZWxpL3lhbWwvaXNzdWVzLzIwNSlcbmNvbnN0IHlhbWxTY2hlbWFWZXJzaW9uID0gJzEuMSc7XG5cbi8qKlxuICogWUFNTCB1dGlsaXRpZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBZYW1sIHtcbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIHVzZSBgc3RyaW5naWZ5KGRvY1ssIGRvYywgLi4uXSlgXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZvcm1hdE9iamVjdHMoZG9jczogYW55W10pOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnN0cmluZ2lmeSguLi5kb2NzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTYXZlcyBhIHNldCBvZiBvYmplY3RzIGFzIGEgbXVsdGktZG9jdW1lbnQgWUFNTCBmaWxlLlxuICAgKiBAcGFyYW0gZmlsZVBhdGggVGhlIG91dHB1dCBwYXRoXG4gICAqIEBwYXJhbSBkb2NzIFRoZSBzZXQgb2Ygb2JqZWN0c1xuICAgKi9cbiAgcHVibGljIHN0YXRpYyBzYXZlKGZpbGVQYXRoOiBzdHJpbmcsIGRvY3M6IGFueVtdKSB7XG4gICAgY29uc3QgZGF0YSA9IHRoaXMuc3RyaW5naWZ5KC4uLmRvY3MpO1xuICAgIGZzLndyaXRlRmlsZVN5bmMoZmlsZVBhdGgsIGRhdGEsIHsgZW5jb2Rpbmc6ICd1dGY4JyB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdHJpbmdpZnkgYSBkb2N1bWVudCAob3IgbXVsdGlwbGUgZG9jdW1lbnRzKSBpbnRvIFlBTUxcbiAgICpcbiAgICogV2UgY29udmVydCB1bmRlZmluZWQgdmFsdWVzIHRvIG51bGwsIGJ1dCBpZ25vcmUgYW55IGRvY3VtZW50cyB0aGF0IGFyZVxuICAgKiB1bmRlZmluZWQuXG4gICAqXG4gICAqIEBwYXJhbSBkb2NzIEEgc2V0IG9mIG9iamVjdHMgdG8gY29udmVydCB0byBZQU1MXG4gICAqIEByZXR1cm5zIGEgWUFNTCBzdHJpbmcuIE11bHRpcGxlIGRvY3MgYXJlIHNlcGFyYXRlZCBieSBgLS0tYC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgc3RyaW5naWZ5KC4uLmRvY3M6IGFueVtdKSB7XG4gICAgcmV0dXJuIGRvY3MubWFwKFxuICAgICAgciA9PiByID09PSB1bmRlZmluZWQgPyAnXFxuJyA6IFlBTUwuc3RyaW5naWZ5KHIsIHsga2VlcFVuZGVmaW5lZDogdHJ1ZSwgbGluZVdpZHRoOiAwLCB2ZXJzaW9uOiB5YW1sU2NoZW1hVmVyc2lvbiB9KSxcbiAgICApLmpvaW4oJy0tLVxcbicpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNhdmVzIGEgc2V0IG9mIFlBTUwgZG9jdW1lbnRzIGludG8gYSB0ZW1wIGZpbGUgKGluIC90bXApXG4gICAqXG4gICAqIEByZXR1cm5zIHRoZSBwYXRoIHRvIHRoZSB0ZW1wb3JhcnkgZmlsZVxuICAgKiBAcGFyYW0gZG9jcyB0aGUgc2V0IG9mIGRvY3VtZW50cyB0byBzYXZlXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHRtcChkb2NzOiBhbnlbXSk6IHN0cmluZyB7XG4gICAgY29uc3QgdG1wZGlyID0gZnMubWtkdGVtcFN5bmMocGF0aC5qb2luKG9zLnRtcGRpcigpLCAnY2RrOHMtJykpO1xuICAgIGNvbnN0IGZpbGVQYXRoID0gcGF0aC5qb2luKHRtcGRpciwgJ3RlbXAueWFtbCcpO1xuICAgIFlhbWwuc2F2ZShmaWxlUGF0aCwgZG9jcyk7XG4gICAgcmV0dXJuIGZpbGVQYXRoO1xuICB9XG5cbiAgLyoqXG4gICAqIERvd25sb2FkcyBhIHNldCBvZiBZQU1MIGRvY3VtZW50cyAoazhzIG1hbmlmZXN0IGZvciBleGFtcGxlKSBmcm9tIGEgVVJMIG9yXG4gICAqIGEgZmlsZSBhbmQgcmV0dXJucyB0aGVtIGFzIGphdmFzY3JpcHQgb2JqZWN0cy5cbiAgICpcbiAgICogRW1wdHkgZG9jdW1lbnRzIGFyZSBmaWx0ZXJlZCBvdXQuXG4gICAqXG4gICAqIEBwYXJhbSB1cmxPckZpbGUgYSBVUkwgb2YgYSBmaWxlIHBhdGggdG8gbG9hZCBmcm9tXG4gICAqIEByZXR1cm5zIGFuIGFycmF5IG9mIG9iamVjdHMsIGVhY2ggcmVwcmVzZW50cyBhIGRvY3VtZW50IGluc2lkZSB0aGUgWUFNTFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBsb2FkKHVybE9yRmlsZTogc3RyaW5nKTogYW55W10ge1xuICAgIGNvbnN0IGJvZHkgPSBsb2FkdXJsKHVybE9yRmlsZSk7XG5cbiAgICBjb25zdCBvYmplY3RzID0gWUFNTC5wYXJzZUFsbERvY3VtZW50cyhib2R5LCB7XG4gICAgICB2ZXJzaW9uOiB5YW1sU2NoZW1hVmVyc2lvbixcbiAgICB9KTtcbiAgICBjb25zdCByZXN1bHQgPSBuZXcgQXJyYXk8YW55PigpO1xuXG4gICAgZm9yIChjb25zdCBvYmogb2Ygb2JqZWN0cy5tYXAoeCA9PiB4LnRvSlNPTigpKSkge1xuICAgICAgLy8gc2tpcCBlbXB0eSBkb2N1bWVudHNcbiAgICAgIGlmIChvYmogPT09IHVuZGVmaW5lZCkgeyBjb250aW51ZTsgfVxuICAgICAgaWYgKG9iaiA9PT0gbnVsbCkgeyBjb250aW51ZTsgfVxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkob2JqKSAmJiBvYmoubGVuZ3RoID09PSAwKSB7IGNvbnRpbnVlOyB9XG4gICAgICBpZiAodHlwZW9mKG9iaikgPT09ICdvYmplY3QnICYmIE9iamVjdC5rZXlzKG9iaikubGVuZ3RoID09PSAwKSB7IGNvbnRpbnVlOyB9XG5cbiAgICAgIHJlc3VsdC5wdXNoKG9iaik7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBVdGlsaXR5IGNsYXNzLlxuICAgKi9cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcigpIHtcbiAgICByZXR1cm47XG4gIH1cbn1cblxuLyoqXG4gKiBMb2FkcyBhIHVybCAob3IgZmlsZSkgYW5kIHJldHVybnMgdGhlIGNvbnRlbnRzLlxuICogVGhpcyBtZXRob2Qgc3Bhd25zIGEgY2hpbGQgcHJvY2VzcyBpbiBvcmRlciB0byBwZXJmb3JtIGFuIGh0dHAgY2FsbCBzeW5jaHJvbm91c2x5LlxuICovXG5mdW5jdGlvbiBsb2FkdXJsKHVybDogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3Qgc2NyaXB0ID0gcGF0aC5qb2luKF9fZGlybmFtZSwgJ19sb2FkdXJsLmpzJyk7XG4gIHJldHVybiBleGVjRmlsZVN5bmMocHJvY2Vzcy5leGVjUGF0aCwgW3NjcmlwdCwgdXJsXSwge1xuICAgIGVuY29kaW5nOiAndXRmLTgnLFxuICAgIG1heEJ1ZmZlcjogTUFYX0RPV05MT0FEX0JVRkZFUixcbiAgfSkudG9TdHJpbmcoKTtcbn1cbiJdfQ==
150297
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWFtbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy95YW1sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsaURBQTZDO0FBQzdDLHlCQUF5QjtBQUN6Qix5QkFBeUI7QUFDekIsNkJBQTZCO0FBQzdCLDZCQUE2QjtBQUU3QixNQUFNLG1CQUFtQixHQUFHLEVBQUUsR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFDO0FBRTdDLG9IQUFvSDtBQUNwSCx1RUFBdUU7QUFDdkUsMEVBQTBFO0FBQzFFLE1BQU0saUJBQWlCLEdBQUcsS0FBSyxDQUFDO0FBRWhDOztHQUVHO0FBQ0gsTUFBYSxJQUFJO0lBQ2Y7O09BRUc7SUFDSSxNQUFNLENBQUMsYUFBYSxDQUFDLElBQVc7UUFDckMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQWdCLEVBQUUsSUFBVztRQUM5QyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFDckMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVEOzs7Ozs7OztPQVFHO0lBQ0ksTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLElBQVc7UUFDcEMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUNiLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUNuSCxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsR0FBRyxDQUFDLElBQVc7UUFDM0IsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQ2hFLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzFCLE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNJLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBaUI7UUFDbEMsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRWhDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUU7WUFDM0MsT0FBTyxFQUFFLGlCQUFpQjtTQUMzQixDQUFDLENBQUM7UUFDSCxNQUFNLE1BQU0sR0FBRyxJQUFJLEtBQUssRUFBTyxDQUFDO1FBRWhDLEtBQUssTUFBTSxHQUFHLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDL0MsdUJBQXVCO1lBQ3ZCLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRSxDQUFDO2dCQUFDLFNBQVM7WUFBQyxDQUFDO1lBQ3BDLElBQUksR0FBRyxLQUFLLElBQUksRUFBRSxDQUFDO2dCQUFDLFNBQVM7WUFBQyxDQUFDO1lBQy9CLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUFDLFNBQVM7WUFBQyxDQUFDO1lBQ3pELElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLFFBQVEsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFBQyxTQUFTO1lBQUMsQ0FBQztZQUU3RSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25CLENBQUM7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQ7O09BRUc7SUFDSDtRQUNFLE9BQU87SUFDVCxDQUFDOztBQWpGSCxvQkFrRkM7OztBQUVEOzs7R0FHRztBQUNILFNBQVMsT0FBTyxDQUFDLEdBQVc7SUFDMUIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDcEQsT0FBTyxJQUFBLDRCQUFZLEVBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsRUFBRTtRQUNuRCxRQUFRLEVBQUUsT0FBTztRQUNqQixTQUFTLEVBQUUsbUJBQW1CO0tBQy9CLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztBQUNoQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZXhlY0ZpbGVTeW5jIH0gZnJvbSAnY2hpbGRfcHJvY2Vzcyc7XG5pbXBvcnQgKiBhcyBmcyBmcm9tICdmcyc7XG5pbXBvcnQgKiBhcyBvcyBmcm9tICdvcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0ICogYXMgWUFNTCBmcm9tICd5YW1sJztcblxuY29uc3QgTUFYX0RPV05MT0FEX0JVRkZFUiA9IDEwICogMTAyNCAqIDEwMjQ7XG5cbi8vIFNldCBkZWZhdWx0IFlBTUwgc2NoZW1hIHRvIDEuMS4gVGhpcyBlbnN1cmVzIHNhdmVkIFlBTUwgaXMgYmFja3dhcmQgY29tcGF0aWJsZSB3aXRoIG90aGVyIHBhcnNlcnMsIHN1Y2ggYXMgUHlZQU1MXG4vLyBJdCBhbHNvIGVuc3VyZXMgdGhhdCBvY3RhbCBudW1iZXJzIGluIHRoZSBmb3JtIGAwNzc1YCB3aWxsIGJlIHBhcnNlZFxuLy8gY29ycmVjdGx5IG9uIFlBTUwgbG9hZC4gKHNlZSBodHRwczovL2dpdGh1Yi5jb20vZWVtZWxpL3lhbWwvaXNzdWVzLzIwNSlcbmNvbnN0IHlhbWxTY2hlbWFWZXJzaW9uID0gJzEuMSc7XG5cbi8qKlxuICogWUFNTCB1dGlsaXRpZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBZYW1sIHtcbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIHVzZSBgc3RyaW5naWZ5KGRvY1ssIGRvYywgLi4uXSlgXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZvcm1hdE9iamVjdHMoZG9jczogYW55W10pOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnN0cmluZ2lmeSguLi5kb2NzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTYXZlcyBhIHNldCBvZiBvYmplY3RzIGFzIGEgbXVsdGktZG9jdW1lbnQgWUFNTCBmaWxlLlxuICAgKiBAcGFyYW0gZmlsZVBhdGggVGhlIG91dHB1dCBwYXRoXG4gICAqIEBwYXJhbSBkb2NzIFRoZSBzZXQgb2Ygb2JqZWN0c1xuICAgKi9cbiAgcHVibGljIHN0YXRpYyBzYXZlKGZpbGVQYXRoOiBzdHJpbmcsIGRvY3M6IGFueVtdKSB7XG4gICAgY29uc3QgZGF0YSA9IHRoaXMuc3RyaW5naWZ5KC4uLmRvY3MpO1xuICAgIGZzLndyaXRlRmlsZVN5bmMoZmlsZVBhdGgsIGRhdGEsIHsgZW5jb2Rpbmc6ICd1dGY4JyB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdHJpbmdpZnkgYSBkb2N1bWVudCAob3IgbXVsdGlwbGUgZG9jdW1lbnRzKSBpbnRvIFlBTUxcbiAgICpcbiAgICogV2UgY29udmVydCB1bmRlZmluZWQgdmFsdWVzIHRvIG51bGwsIGJ1dCBpZ25vcmUgYW55IGRvY3VtZW50cyB0aGF0IGFyZVxuICAgKiB1bmRlZmluZWQuXG4gICAqXG4gICAqIEBwYXJhbSBkb2NzIEEgc2V0IG9mIG9iamVjdHMgdG8gY29udmVydCB0byBZQU1MXG4gICAqIEByZXR1cm5zIGEgWUFNTCBzdHJpbmcuIE11bHRpcGxlIGRvY3MgYXJlIHNlcGFyYXRlZCBieSBgLS0tYC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgc3RyaW5naWZ5KC4uLmRvY3M6IGFueVtdKSB7XG4gICAgcmV0dXJuIGRvY3MubWFwKFxuICAgICAgciA9PiByID09PSB1bmRlZmluZWQgPyAnXFxuJyA6IFlBTUwuc3RyaW5naWZ5KHIsIHsga2VlcFVuZGVmaW5lZDogdHJ1ZSwgbGluZVdpZHRoOiAwLCB2ZXJzaW9uOiB5YW1sU2NoZW1hVmVyc2lvbiB9KSxcbiAgICApLmpvaW4oJy0tLVxcbicpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNhdmVzIGEgc2V0IG9mIFlBTUwgZG9jdW1lbnRzIGludG8gYSB0ZW1wIGZpbGUgKGluIC90bXApXG4gICAqXG4gICAqIEByZXR1cm5zIHRoZSBwYXRoIHRvIHRoZSB0ZW1wb3JhcnkgZmlsZVxuICAgKiBAcGFyYW0gZG9jcyB0aGUgc2V0IG9mIGRvY3VtZW50cyB0byBzYXZlXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHRtcChkb2NzOiBhbnlbXSk6IHN0cmluZyB7XG4gICAgY29uc3QgdG1wZGlyID0gZnMubWtkdGVtcFN5bmMocGF0aC5qb2luKG9zLnRtcGRpcigpLCAnY2RrOHMtJykpO1xuICAgIGNvbnN0IGZpbGVQYXRoID0gcGF0aC5qb2luKHRtcGRpciwgJ3RlbXAueWFtbCcpO1xuICAgIFlhbWwuc2F2ZShmaWxlUGF0aCwgZG9jcyk7XG4gICAgcmV0dXJuIGZpbGVQYXRoO1xuICB9XG5cbiAgLyoqXG4gICAqIERvd25sb2FkcyBhIHNldCBvZiBZQU1MIGRvY3VtZW50cyAoazhzIG1hbmlmZXN0IGZvciBleGFtcGxlKSBmcm9tIGEgVVJMIG9yXG4gICAqIGEgZmlsZSBhbmQgcmV0dXJucyB0aGVtIGFzIGphdmFzY3JpcHQgb2JqZWN0cy5cbiAgICpcbiAgICogRW1wdHkgZG9jdW1lbnRzIGFyZSBmaWx0ZXJlZCBvdXQuXG4gICAqXG4gICAqIEBwYXJhbSB1cmxPckZpbGUgYSBVUkwgb2YgYSBmaWxlIHBhdGggdG8gbG9hZCBmcm9tXG4gICAqIEByZXR1cm5zIGFuIGFycmF5IG9mIG9iamVjdHMsIGVhY2ggcmVwcmVzZW50cyBhIGRvY3VtZW50IGluc2lkZSB0aGUgWUFNTFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBsb2FkKHVybE9yRmlsZTogc3RyaW5nKTogYW55W10ge1xuICAgIGNvbnN0IGJvZHkgPSBsb2FkdXJsKHVybE9yRmlsZSk7XG5cbiAgICBjb25zdCBvYmplY3RzID0gWUFNTC5wYXJzZUFsbERvY3VtZW50cyhib2R5LCB7XG4gICAgICB2ZXJzaW9uOiB5YW1sU2NoZW1hVmVyc2lvbixcbiAgICB9KTtcbiAgICBjb25zdCByZXN1bHQgPSBuZXcgQXJyYXk8YW55PigpO1xuXG4gICAgZm9yIChjb25zdCBvYmogb2Ygb2JqZWN0cy5tYXAoeCA9PiB4LnRvSlNPTigpKSkge1xuICAgICAgLy8gc2tpcCBlbXB0eSBkb2N1bWVudHNcbiAgICAgIGlmIChvYmogPT09IHVuZGVmaW5lZCkgeyBjb250aW51ZTsgfVxuICAgICAgaWYgKG9iaiA9PT0gbnVsbCkgeyBjb250aW51ZTsgfVxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkob2JqKSAmJiBvYmoubGVuZ3RoID09PSAwKSB7IGNvbnRpbnVlOyB9XG4gICAgICBpZiAodHlwZW9mIChvYmopID09PSAnb2JqZWN0JyAmJiBPYmplY3Qua2V5cyhvYmopLmxlbmd0aCA9PT0gMCkgeyBjb250aW51ZTsgfVxuXG4gICAgICByZXN1bHQucHVzaChvYmopO1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogVXRpbGl0eSBjbGFzcy5cbiAgICovXG4gIHByaXZhdGUgY29uc3RydWN0b3IoKSB7XG4gICAgcmV0dXJuO1xuICB9XG59XG5cbi8qKlxuICogTG9hZHMgYSB1cmwgKG9yIGZpbGUpIGFuZCByZXR1cm5zIHRoZSBjb250ZW50cy5cbiAqIFRoaXMgbWV0aG9kIHNwYXducyBhIGNoaWxkIHByb2Nlc3MgaW4gb3JkZXIgdG8gcGVyZm9ybSBhbiBodHRwIGNhbGwgc3luY2hyb25vdXNseS5cbiAqL1xuZnVuY3Rpb24gbG9hZHVybCh1cmw6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IHNjcmlwdCA9IHBhdGguam9pbihfX2Rpcm5hbWUsICdfbG9hZHVybC5tanMnKTtcbiAgcmV0dXJuIGV4ZWNGaWxlU3luYyhwcm9jZXNzLmV4ZWNQYXRoLCBbc2NyaXB0LCB1cmxdLCB7XG4gICAgZW5jb2Rpbmc6ICd1dGYtOCcsXG4gICAgbWF4QnVmZmVyOiBNQVhfRE9XTkxPQURfQlVGRkVSLFxuICB9KS50b1N0cmluZygpO1xufVxuIl19
150298
150298
 
150299
150299
  /***/ }),
150300
150300
 
@@ -224043,7 +224043,7 @@ class Sender {
224043
224043
  /**
224044
224044
  * Sends a frame.
224045
224045
  *
224046
- * @param {Buffer[]} list The frame to send
224046
+ * @param {(Buffer | String)[]} list The frame to send
224047
224047
  * @param {Function} [cb] Callback
224048
224048
  * @private
224049
224049
  */
@@ -224100,8 +224100,10 @@ function onError(sender, err, cb) {
224100
224100
  /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
224101
224101
 
224102
224102
  "use strict";
224103
+ /* eslint no-unused-vars: ["error", { "varsIgnorePattern": "^WebSocket$" }] */
224103
224104
 
224104
224105
 
224106
+ const WebSocket = __nccwpck_require__(69427);
224105
224107
  const { Duplex } = __nccwpck_require__(12781);
224106
224108
 
224107
224109
  /**
@@ -237677,6 +237679,11 @@ exports.operatorSubcommands = {
237677
237679
  { name: 'apply', type: Boolean },
237678
237680
  { name: 'claim', alias: 'c', type: String },
237679
237681
  { name: 'namespace', alias: 'n', type: String },
237682
+ { name: 'pull-request-plan', type: Boolean, defaultValue: false },
237683
+ { name: 'repo', type: String },
237684
+ { name: 'owner', type: String },
237685
+ { name: 'ref', type: String },
237686
+ { name: 'prNumber', type: String },
237680
237687
  ],
237681
237688
  run: async (options) => {
237682
237689
  // This will show the command line options passed to the command
@@ -237708,6 +237715,15 @@ exports.operatorSubcommands = {
237708
237715
  ...options,
237709
237716
  });
237710
237717
  }
237718
+ if (options['pull-request-plan']) {
237719
+ await (0, operator_1.tfWorkspacePlan)({
237720
+ prNumber: parseInt(options['prNumber']),
237721
+ repo: options['repo'],
237722
+ owner: options['owner'],
237723
+ namespace: options['namespace'] || 'default',
237724
+ ref: options['ref'],
237725
+ });
237726
+ }
237711
237727
  },
237712
237728
  };
237713
237729
 
@@ -244719,14 +244735,18 @@ async function getFileFromGithub(path, repo, owner = 'prefapp') {
244719
244735
  const octokit = await (0, auth_1.getOctokitForOrg)(owner);
244720
244736
  return await octokit.rest.repos.getContent({ owner, repo, path });
244721
244737
  }
244722
- async function getContent(path, repo, owner = 'prefapp') {
244738
+ async function getContent(path, repo, owner = 'prefapp', ref = '') {
244723
244739
  messageLog(`Getting content for ${owner}/${repo}/${path}`);
244724
244740
  const octokit = await (0, auth_1.getOctokitForOrg)(owner);
244725
- const content = await octokit.rest.repos.getContent({
244741
+ const opts = {
244726
244742
  owner,
244727
244743
  repo,
244728
244744
  path,
244729
- });
244745
+ };
244746
+ if (ref) {
244747
+ opts.ref = ref;
244748
+ }
244749
+ const content = await octokit.rest.repos.getContent(opts);
244730
244750
  return Buffer.from(content.data.content, 'base64').toString('utf8');
244731
244751
  }
244732
244752
  exports.getContent = getContent;
@@ -246858,7 +246878,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
246858
246878
  return (mod && mod.__esModule) ? mod : { "default": mod };
246859
246879
  };
246860
246880
  Object.defineProperty(exports, "__esModule", ({ value: true }));
246861
- exports.runOperator = exports.isObserveModeActive = exports.isImportModeSkipPlan = exports.isImportMode = exports.cmd = exports.execTfCommand = void 0;
246881
+ exports.runOperator = exports.isObserveModeActive = exports.isImportModeSkipPlan = exports.isImportMode = exports.cmd = exports.tfWorkspacePlan = exports.execTfCommand = void 0;
246862
246882
  const informer_1 = __nccwpck_require__(41151);
246863
246883
  const dummy_1 = __nccwpck_require__(73490);
246864
246884
  const processItem_1 = __nccwpck_require__(84766);
@@ -246869,6 +246889,8 @@ const catalog_common_1 = __importDefault(__nccwpck_require__(74100));
246869
246889
  const processOperationPlan_1 = __nccwpck_require__(79980);
246870
246890
  var execTfCmd_1 = __nccwpck_require__(5959);
246871
246891
  Object.defineProperty(exports, "execTfCommand", ({ enumerable: true, get: function () { return execTfCmd_1.execTfCommand; } }));
246892
+ var tfworkspaceplans_1 = __nccwpck_require__(49262);
246893
+ Object.defineProperty(exports, "tfWorkspacePlan", ({ enumerable: true, get: function () { return tfworkspaceplans_1.tfWorkspacePlan; } }));
246872
246894
  const metricsServer_1 = __importDefault(__nccwpck_require__(7883));
246873
246895
  let importModeActive = false;
246874
246896
  let withMetricsMode = false;
@@ -247222,20 +247244,26 @@ async function getItem(kind, namespace, item) {
247222
247244
  }
247223
247245
  exports.getItem = getItem;
247224
247246
  async function getItemByItemPath(itemPath, apiGroup = catalog_common_1.default.types.controller.FirestartrApiGroup, apiVersion = 'v1') {
247225
- fDebug(`Getting ${itemPath}`);
247226
- const { kc, opts } = await getConnection();
247227
- opts.headers['Content-Type'] = 'application/json';
247228
- opts.headers['Accept'] = 'application/json';
247229
- const url = apiGroup === catalog_common_1.default.types.controller.KubernetesApiGroup
247230
- ? `${kc.getCurrentCluster().server}/api/v1/namespaces/${itemPath}`
247231
- : `${kc.getCurrentCluster().server}/apis/${apiGroup}/${apiVersion}/namespaces/${itemPath}`;
247232
- const r = await fetch(url, { method: 'get', headers: opts.headers });
247233
- if (!r.ok) {
247234
- const err = new Error(`Error on getItemByItemPath: ${itemPath}: ${r.statusText}`);
247235
- console.log(err.stack);
247236
- throw err;
247247
+ try {
247248
+ fDebug(`Getting ${itemPath}`);
247249
+ const { kc, opts } = await getConnection();
247250
+ opts.headers['Content-Type'] = 'application/json';
247251
+ opts.headers['Accept'] = 'application/json';
247252
+ const url = apiGroup === catalog_common_1.default.types.controller.KubernetesApiGroup
247253
+ ? `${kc.getCurrentCluster().server}/api/v1/namespaces/${itemPath}`
247254
+ : `${kc.getCurrentCluster().server}/apis/${apiGroup}/${apiVersion}/namespaces/${itemPath}`;
247255
+ const r = await fetch(url, { method: 'get', headers: opts.headers });
247256
+ if (!r.ok) {
247257
+ const err = new Error(`Error on getItemByItemPath: ${itemPath}: ${r.statusText}`);
247258
+ console.log(err.stack);
247259
+ throw err;
247260
+ }
247261
+ return r.json();
247262
+ }
247263
+ catch (e) {
247264
+ console.dir(e, { depth: null });
247265
+ throw e;
247237
247266
  }
247238
- return r.json();
247239
247267
  }
247240
247268
  exports.getItemByItemPath = getItemByItemPath;
247241
247269
  async function writeManifest(kind, namespace, item, apiSlug) {
@@ -249286,6 +249314,101 @@ function fWait(segs = 1) {
249286
249314
  }
249287
249315
 
249288
249316
 
249317
+ /***/ }),
249318
+
249319
+ /***/ 49262:
249320
+ /***/ (function(__unused_webpack_module, exports, __nccwpck_require__) {
249321
+
249322
+ "use strict";
249323
+
249324
+ var __importDefault = (this && this.__importDefault) || function (mod) {
249325
+ return (mod && mod.__esModule) ? mod : { "default": mod };
249326
+ };
249327
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
249328
+ exports.tfWorkspacePlan = void 0;
249329
+ const github_1 = __importDefault(__nccwpck_require__(39759));
249330
+ const catalog_common_1 = __importDefault(__nccwpck_require__(74100));
249331
+ const resolver_1 = __nccwpck_require__(31022);
249332
+ const ctl_1 = __nccwpck_require__(46679);
249333
+ const terraform_provisioner_1 = __nccwpck_require__(6777);
249334
+ const process_operation_1 = __nccwpck_require__(3937);
249335
+ const user_feedback_ops_1 = __nccwpck_require__(704);
249336
+ var FileStatus;
249337
+ (function (FileStatus) {
249338
+ FileStatus["DELETED"] = "removed";
249339
+ FileStatus["ADDED"] = "added";
249340
+ FileStatus["MODIFIED"] = "modified";
249341
+ })(FileStatus || (FileStatus = {}));
249342
+ function fDebug(message, level = 'info') {
249343
+ console.log(JSON.stringify({ message, level }));
249344
+ }
249345
+ async function tfWorkspacePlan(opts) {
249346
+ const { repo, owner, prNumber, namespace, ref } = opts;
249347
+ const pull = `${owner}/${repo}#${prNumber}`;
249348
+ let cr = null;
249349
+ try {
249350
+ fDebug(`Starting plan for ${pull}`, 'info');
249351
+ await (0, ctl_1.addPlanStatusCheck)(pull, 'Terraform plan in progress...');
249352
+ fDebug(`Getting PR ${prNumber} in ${repo}`, 'info');
249353
+ const resp = await github_1.default.pulls.getPrFiles(prNumber, repo, owner);
249354
+ const { data } = resp;
249355
+ if (data.length !== 1) {
249356
+ throw new Error(`One file expected in PR ${opts.prNumber} in ${opts.repo}, but found ${data.length}`);
249357
+ }
249358
+ const [file] = data;
249359
+ if (!file) {
249360
+ throw new Error(`No data found for PR ${opts.prNumber} in ${opts.repo}`);
249361
+ }
249362
+ const { filename, status } = file;
249363
+ let content = '';
249364
+ fDebug(`Getting content for ${filename} in ${repo}`);
249365
+ if (status === FileStatus.DELETED) {
249366
+ content = await github_1.default.repo.getContent(filename, repo, owner);
249367
+ }
249368
+ else if (status === FileStatus.ADDED || status === FileStatus.MODIFIED) {
249369
+ content = await github_1.default.repo.getContent(filename, repo, owner, ref);
249370
+ }
249371
+ else {
249372
+ throw new Error(`Unknown status ${status} for file ${filename} in PR ${opts.prNumber} in ${opts.repo}`);
249373
+ }
249374
+ cr = catalog_common_1.default.io.fromYaml(content);
249375
+ if (cr.kind !== 'FirestartrTerraformWorkspace') {
249376
+ throw new Error(`No FirestartrTerraformWorkspace found in PR ${opts.prNumber} in ${opts.repo}`);
249377
+ }
249378
+ fDebug('Resolving references');
249379
+ const deps = await (0, resolver_1.resolve)(cr, ctl_1.getItemByItemPath, ctl_1.getSecret, namespace);
249380
+ fDebug('Building context');
249381
+ const ctx = await (0, process_operation_1.buildProvisionerContext)(cr, deps);
249382
+ fDebug('Context built');
249383
+ const command = getCommandByStatus(status);
249384
+ fDebug('Running terraform provisioner');
249385
+ const tfOutput = await (0, terraform_provisioner_1.runTerraformProvisioner)(ctx, command);
249386
+ fDebug('Terraform provisioner finished');
249387
+ fDebug('Publishing plan');
249388
+ await (0, user_feedback_ops_1.publishPlan)(cr, tfOutput, prNumber, repo, owner);
249389
+ await (0, ctl_1.addPlanStatusCheck)(pull, tfOutput, 'completed');
249390
+ }
249391
+ catch (e) {
249392
+ fDebug(`Error: ${e}`, 'error');
249393
+ await (0, ctl_1.addPlanStatusCheck)(pull, e, 'completed', true);
249394
+ fDebug('Publishing plan');
249395
+ await (0, user_feedback_ops_1.publishPlan)(cr, e, prNumber, repo, owner);
249396
+ }
249397
+ }
249398
+ exports.tfWorkspacePlan = tfWorkspacePlan;
249399
+ function getCommandByStatus(status) {
249400
+ switch (status) {
249401
+ case FileStatus.MODIFIED:
249402
+ case FileStatus.ADDED:
249403
+ return 'plan';
249404
+ case FileStatus.DELETED:
249405
+ return 'plan-destroy';
249406
+ default:
249407
+ throw new Error(`Unknown status: ${status}`);
249408
+ }
249409
+ }
249410
+
249411
+
249289
249412
  /***/ }),
249290
249413
 
249291
249414
  /***/ 79980:
@@ -250877,7 +251000,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
250877
251000
  return (mod && mod.__esModule) ? mod : { "default": mod };
250878
251001
  };
250879
251002
  Object.defineProperty(exports, "__esModule", ({ value: true }));
250880
- exports.publishError = exports.tryPublishError = exports.tryCreateErrorSummary = exports.publishApply = exports.tryPublishDestroy = exports.tryPublishApply = void 0;
251003
+ exports.publishPlan = exports.publishError = exports.tryPublishError = exports.tryCreateErrorSummary = exports.publishApply = exports.tryPublishDestroy = exports.tryPublishApply = void 0;
250881
251004
  const github_1 = __importDefault(__nccwpck_require__(39759));
250882
251005
  const debug_1 = __importDefault(__nccwpck_require__(67984));
250883
251006
  const log = (0, debug_1.default)('firestartr:operator:terraform');
@@ -251009,6 +251132,32 @@ ${message}
251009
251132
  await github_1.default.pulls.commentInPR(comment, parseInt(prNumber), repo, org);
251010
251133
  }
251011
251134
  exports.publishError = publishError;
251135
+ async function publishPlan(item, planOutput, prNumber, repo, org) {
251136
+ try {
251137
+ const dividedOutput = github_1.default.pulls.divideCommentIntoChunks(planOutput, 250);
251138
+ let currentCommentNo = 1;
251139
+ dividedOutput.forEach(async (commentContent) => {
251140
+ const comment = `<h1>
251141
+ <img width="25" src="https://static-00.iconduck.com/assets.00/file-type-terraform-icon-1821x2048-mbxeegff.png"> Terraform plan
251142
+ </h1>
251143
+ <p><b>TFWorkspace: </b>${item.metadata.name}</p>
251144
+
251145
+ <details id=github>
251146
+ <summary>PLAN LOGS ${dividedOutput.length > 1 ? '(Part ' + currentCommentNo + ')' : ''}</summary>
251147
+
251148
+ \`\`\`shell
251149
+ ${commentContent}
251150
+ \`\`\`
251151
+ </details>`;
251152
+ await github_1.default.pulls.commentInPR(comment, prNumber, repo, org);
251153
+ currentCommentNo += 1;
251154
+ });
251155
+ }
251156
+ catch (e) {
251157
+ console.error(e);
251158
+ }
251159
+ }
251160
+ exports.publishPlan = publishPlan;
251012
251161
 
251013
251162
 
251014
251163
  /***/ }),
@@ -284107,8 +284256,13 @@ const SafeEval = {
284107
284256
  return ast.value;
284108
284257
  },
284109
284258
  evalMemberExpression(ast, subs) {
284110
- const prop = ast.computed ? SafeEval.evalAst(ast.property) // `object[property]`
284111
- : ast.property.name; // `object.property` property is Identifier
284259
+ const prop = String(
284260
+ // NOTE: `String(value)` throws error when
284261
+ // value has overwritten the toString method to return non-string
284262
+ // i.e. `value = {toString: () => []}`
284263
+ ast.computed ? SafeEval.evalAst(ast.property) // `object[property]`
284264
+ : ast.property.name // `object.property` property is Identifier
284265
+ );
284112
284266
  const obj = SafeEval.evalAst(ast.object, subs);
284113
284267
  if (obj === undefined || obj === null) {
284114
284268
  throw TypeError(`Cannot read properties of ${obj} (reading '${prop}')`);
@@ -284885,7 +285039,7 @@ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{val
284885
285039
 
284886
285040
  /***/ }),
284887
285041
 
284888
- /***/ 2:
285042
+ /***/ 91188:
284889
285043
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __nccwpck_require__) => {
284890
285044
 
284891
285045
  "use strict";
@@ -284925,8 +285079,10 @@ __nccwpck_require__.d(__webpack_exports__, {
284925
285079
  "genericGrantRequest": () => (/* binding */ genericGrantRequest),
284926
285080
  "getDPoPHandle": () => (/* binding */ getDPoPHandle),
284927
285081
  "getJwksCache": () => (/* binding */ getJwksCache),
285082
+ "initiateBackchannelAuthentication": () => (/* binding */ initiateBackchannelAuthentication),
284928
285083
  "initiateDeviceAuthorization": () => (/* binding */ initiateDeviceAuthorization),
284929
285084
  "modifyAssertion": () => (/* binding */ build_modifyAssertion),
285085
+ "pollBackchannelAuthenticationGrant": () => (/* binding */ pollBackchannelAuthenticationGrant),
284930
285086
  "pollDeviceAuthorizationGrant": () => (/* binding */ pollDeviceAuthorizationGrant),
284931
285087
  "randomDPoPKeyPair": () => (/* binding */ randomDPoPKeyPair),
284932
285088
  "randomNonce": () => (/* binding */ randomNonce),
@@ -284946,7 +285102,7 @@ __nccwpck_require__.d(__webpack_exports__, {
284946
285102
  let USER_AGENT;
284947
285103
  if (typeof navigator === 'undefined' || !navigator.userAgent?.startsWith?.('Mozilla/5.0 ')) {
284948
285104
  const NAME = 'oauth4webapi';
284949
- const VERSION = 'v3.1.4';
285105
+ const VERSION = 'v3.3.1';
284950
285106
  USER_AGENT = `${NAME}/${VERSION}`;
284951
285107
  }
284952
285108
  function looseInstanceOf(input, expected) {
@@ -284975,11 +285131,11 @@ const customFetch = Symbol();
284975
285131
  const modifyAssertion = Symbol();
284976
285132
  const jweDecrypt = Symbol();
284977
285133
  const build_jwksCache = Symbol();
284978
- const encoder = new TextEncoder();
285134
+ const build_encoder = new TextEncoder();
284979
285135
  const decoder = new TextDecoder();
284980
285136
  function buf(input) {
284981
285137
  if (typeof input === 'string') {
284982
- return encoder.encode(input);
285138
+ return build_encoder.encode(input);
284983
285139
  }
284984
285140
  return decoder.decode(input);
284985
285141
  }
@@ -285007,7 +285163,7 @@ function decodeBase64Url(input) {
285007
285163
  throw CodedTypeError('The input to be decoded is not correctly encoded.', ERR_INVALID_ARG_VALUE, cause);
285008
285164
  }
285009
285165
  }
285010
- function b64u(input) {
285166
+ function build_b64u(input) {
285011
285167
  if (typeof input === 'string') {
285012
285168
  return decodeBase64Url(input);
285013
285169
  }
@@ -285166,12 +285322,12 @@ async function processDiscoveryResponse(expectedIssuerIdentifier, response) {
285166
285322
  throw OPE('"response" is not a conform Authorization Server Metadata response (unexpected HTTP status code)', RESPONSE_IS_NOT_CONFORM, response);
285167
285323
  }
285168
285324
  assertReadableResponse(response);
285169
- assertApplicationJson(response);
285170
285325
  let json;
285171
285326
  try {
285172
285327
  json = await response.json();
285173
285328
  }
285174
285329
  catch (cause) {
285330
+ assertApplicationJson(response);
285175
285331
  throw OPE('failed to parse "response" body as JSON', PARSE_ERROR, cause);
285176
285332
  }
285177
285333
  if (!isJsonObject(json)) {
@@ -285212,7 +285368,7 @@ function assertContentType(response, contentType) {
285212
285368
  }
285213
285369
  }
285214
285370
  function randomBytes() {
285215
- return b64u(crypto.getRandomValues(new Uint8Array(32)));
285371
+ return build_b64u(crypto.getRandomValues(new Uint8Array(32)));
285216
285372
  }
285217
285373
  function generateRandomCodeVerifier() {
285218
285374
  return randomBytes();
@@ -285225,7 +285381,7 @@ function generateRandomNonce() {
285225
285381
  }
285226
285382
  async function calculatePKCECodeChallenge(codeVerifier) {
285227
285383
  assertString(codeVerifier, 'codeVerifier');
285228
- return b64u(await crypto.subtle.digest('SHA-256', buf(codeVerifier)));
285384
+ return build_b64u(await crypto.subtle.digest('SHA-256', buf(codeVerifier)));
285229
285385
  }
285230
285386
  function getKeyAndKid(input) {
285231
285387
  if (input instanceof CryptoKey) {
@@ -285391,11 +285547,11 @@ function ClientSecretJwt(clientSecret, options) {
285391
285547
  const header = { alg: 'HS256' };
285392
285548
  const payload = clientAssertionPayload(as, client);
285393
285549
  modify?.(header, payload);
285394
- const data = `${b64u(buf(JSON.stringify(header)))}.${b64u(buf(JSON.stringify(payload)))}`;
285550
+ const data = `${build_b64u(buf(JSON.stringify(header)))}.${build_b64u(buf(JSON.stringify(payload)))}`;
285395
285551
  const hmac = await crypto.subtle.sign(key.algorithm, key, buf(data));
285396
285552
  body.set('client_id', client.client_id);
285397
285553
  body.set('client_assertion_type', 'urn:ietf:params:oauth:client-assertion-type:jwt-bearer');
285398
- body.set('client_assertion', `${data}.${b64u(new Uint8Array(hmac))}`);
285554
+ body.set('client_assertion', `${data}.${build_b64u(new Uint8Array(hmac))}`);
285399
285555
  };
285400
285556
  }
285401
285557
  function None() {
@@ -285410,8 +285566,8 @@ async function signJwt(header, payload, key) {
285410
285566
  if (!key.usages.includes('sign')) {
285411
285567
  throw CodedTypeError('CryptoKey instances used for signing assertions must include "sign" in their "usages"', ERR_INVALID_ARG_VALUE);
285412
285568
  }
285413
- const input = `${b64u(buf(JSON.stringify(header)))}.${b64u(buf(JSON.stringify(payload)))}`;
285414
- const signature = b64u(await crypto.subtle.sign(keyToSubtle(key), key, buf(input)));
285569
+ const input = `${build_b64u(buf(JSON.stringify(header)))}.${build_b64u(buf(JSON.stringify(payload)))}`;
285570
+ const signature = build_b64u(await crypto.subtle.sign(keyToSubtle(key), key, buf(input)));
285415
285571
  return `${input}.${signature}`;
285416
285572
  }
285417
285573
  async function issueRequestObject(as, client, parameters, privateKey, options) {
@@ -285547,6 +285703,7 @@ class DPoPHandler {
285547
285703
  #clockSkew;
285548
285704
  #modifyAssertion;
285549
285705
  #map;
285706
+ #jkt;
285550
285707
  constructor(client, keyPair, options) {
285551
285708
  assertPrivateKey(keyPair?.privateKey, '"DPoP.privateKey"');
285552
285709
  assertPublicKey(keyPair?.publicKey, '"DPoP.publicKey"');
@@ -285576,6 +285733,27 @@ class DPoPHandler {
285576
285733
  }
285577
285734
  this.#map.set(key, val);
285578
285735
  }
285736
+ async calculateThumbprint() {
285737
+ if (!this.#jkt) {
285738
+ const jwk = await crypto.subtle.exportKey('jwk', this.#publicKey);
285739
+ let components;
285740
+ switch (jwk.kty) {
285741
+ case 'EC':
285742
+ components = { crv: jwk.crv, kty: jwk.kty, x: jwk.x, y: jwk.y };
285743
+ break;
285744
+ case 'OKP':
285745
+ components = { crv: jwk.crv, kty: jwk.kty, x: jwk.x };
285746
+ break;
285747
+ case 'RSA':
285748
+ components = { e: jwk.e, kty: jwk.kty, n: jwk.n };
285749
+ break;
285750
+ default:
285751
+ throw new UnsupportedOperationError('unsupported JWK', { cause: { jwk } });
285752
+ }
285753
+ this.#jkt ||= build_b64u(await crypto.subtle.digest({ name: 'SHA-256' }, buf(JSON.stringify(components))));
285754
+ }
285755
+ return this.#jkt;
285756
+ }
285579
285757
  async addProof(url, headers, htm, accessToken) {
285580
285758
  this.#header ||= {
285581
285759
  alg: keyToJws(this.#privateKey),
@@ -285590,7 +285768,7 @@ class DPoPHandler {
285590
285768
  htm,
285591
285769
  nonce,
285592
285770
  htu: `${url.origin}${url.pathname}`,
285593
- ath: accessToken ? b64u(await crypto.subtle.digest('SHA-256', buf(accessToken))) : undefined,
285771
+ ath: accessToken ? build_b64u(await crypto.subtle.digest('SHA-256', buf(accessToken))) : undefined,
285594
285772
  };
285595
285773
  this.#modifyAssertion?.(this.#header, payload);
285596
285774
  headers.set('dpop', await signJwt(this.#header, payload, this.#privateKey));
@@ -285732,28 +285910,15 @@ async function processPushedAuthorizationResponse(as, client, response) {
285732
285910
  if (!looseInstanceOf(response, Response)) {
285733
285911
  throw CodedTypeError('"response" must be an instance of Response', ERR_INVALID_ARG_TYPE);
285734
285912
  }
285735
- let challenges;
285736
- if ((challenges = parseWwwAuthenticateChallenges(response))) {
285737
- throw new WWWAuthenticateChallengeError('server responded with a challenge in the WWW-Authenticate HTTP Header', { cause: challenges, response });
285738
- }
285739
- if (response.status !== 201) {
285740
- let err;
285741
- if ((err = await handleOAuthBodyError(response))) {
285742
- await response.body?.cancel();
285743
- throw new ResponseBodyError('server responded with an error in the response body', {
285744
- cause: err,
285745
- response,
285746
- });
285747
- }
285748
- throw OPE('"response" is not a conform Pushed Authorization Request Endpoint response (unexpected HTTP status code)', RESPONSE_IS_NOT_CONFORM, response);
285749
- }
285913
+ checkAuthenticationChallenges(response);
285914
+ await checkOAuthBodyError(response, 201, 'Pushed Authorization Request Endpoint');
285750
285915
  assertReadableResponse(response);
285751
- assertApplicationJson(response);
285752
285916
  let json;
285753
285917
  try {
285754
285918
  json = await response.json();
285755
285919
  }
285756
285920
  catch (cause) {
285921
+ assertApplicationJson(response);
285757
285922
  throw OPE('failed to parse "response" body as JSON', PARSE_ERROR, cause);
285758
285923
  }
285759
285924
  if (!isJsonObject(json)) {
@@ -285769,6 +285934,33 @@ async function processPushedAuthorizationResponse(as, client, response) {
285769
285934
  json.expires_in = expiresIn;
285770
285935
  return json;
285771
285936
  }
285937
+ async function parseOAuthResponseErrorBody(response) {
285938
+ if (response.status > 399 && response.status < 500) {
285939
+ assertReadableResponse(response);
285940
+ assertApplicationJson(response);
285941
+ try {
285942
+ const json = await response.clone().json();
285943
+ if (isJsonObject(json) && typeof json.error === 'string' && json.error.length) {
285944
+ return json;
285945
+ }
285946
+ }
285947
+ catch { }
285948
+ }
285949
+ return undefined;
285950
+ }
285951
+ async function checkOAuthBodyError(response, expected, label) {
285952
+ if (response.status !== expected) {
285953
+ let err;
285954
+ if ((err = await parseOAuthResponseErrorBody(response))) {
285955
+ await response.body?.cancel();
285956
+ throw new ResponseBodyError('server responded with an error in the response body', {
285957
+ cause: err,
285958
+ response,
285959
+ });
285960
+ }
285961
+ throw OPE(`"response" is not a conform ${label} response (unexpected HTTP status code)`, RESPONSE_IS_NOT_CONFORM, response);
285962
+ }
285963
+ }
285772
285964
  function assertDPoP(option) {
285773
285965
  if (!branded.has(option)) {
285774
285966
  throw CodedTypeError('"options.DPoP" is not a valid DPoPHandle', ERR_INVALID_ARG_VALUE);
@@ -285800,13 +285992,9 @@ async function resourceRequest(accessToken, method, url, headers, body, options)
285800
285992
  return response;
285801
285993
  }
285802
285994
  async function protectedResourceRequest(accessToken, method, url, headers, body, options) {
285803
- return resourceRequest(accessToken, method, url, headers, body, options).then((response) => {
285804
- let challenges;
285805
- if ((challenges = parseWwwAuthenticateChallenges(response))) {
285806
- throw new WWWAuthenticateChallengeError('server responded with a challenge in the WWW-Authenticate HTTP Header', { cause: challenges, response });
285807
- }
285808
- return response;
285809
- });
285995
+ const response = await resourceRequest(accessToken, method, url, headers, body, options);
285996
+ checkAuthenticationChallenges(response);
285997
+ return response;
285810
285998
  }
285811
285999
  async function userInfoRequest(as, client, accessToken, options) {
285812
286000
  assertAs(as);
@@ -285944,10 +286132,7 @@ async function processUserInfoResponse(as, client, expectedSubject, response, op
285944
286132
  if (!looseInstanceOf(response, Response)) {
285945
286133
  throw CodedTypeError('"response" must be an instance of Response', ERR_INVALID_ARG_TYPE);
285946
286134
  }
285947
- let challenges;
285948
- if ((challenges = parseWwwAuthenticateChallenges(response))) {
285949
- throw new WWWAuthenticateChallengeError('server responded with a challenge in the WWW-Authenticate HTTP Header', { cause: challenges, response });
285950
- }
286135
+ checkAuthenticationChallenges(response);
285951
286136
  if (response.status !== 200) {
285952
286137
  throw OPE('"response" is not a conform UserInfo Endpoint response (unexpected HTTP status code)', RESPONSE_IS_NOT_CONFORM, response);
285953
286138
  }
@@ -285964,11 +286149,11 @@ async function processUserInfoResponse(as, client, expectedSubject, response, op
285964
286149
  if (client.userinfo_signed_response_alg) {
285965
286150
  throw OPE('JWT UserInfo Response expected', JWT_USERINFO_EXPECTED, response);
285966
286151
  }
285967
- assertApplicationJson(response);
285968
286152
  try {
285969
286153
  json = await response.json();
285970
286154
  }
285971
286155
  catch (cause) {
286156
+ assertApplicationJson(response);
285972
286157
  throw OPE('failed to parse "response" body as JSON', PARSE_ERROR, cause);
285973
286158
  }
285974
286159
  }
@@ -286041,13 +286226,13 @@ async function validateApplicationLevelSignature(as, ref, options) {
286041
286226
  throw CodedTypeError('"ref" does not contain a processed JWT Response to verify the signature of', ERR_INVALID_ARG_VALUE);
286042
286227
  }
286043
286228
  const { 0: protectedHeader, 1: payload, 2: encodedSignature } = jwtRefs.get(ref).split('.');
286044
- const header = JSON.parse(buf(b64u(protectedHeader)));
286229
+ const header = JSON.parse(buf(build_b64u(protectedHeader)));
286045
286230
  if (header.alg.startsWith('HS')) {
286046
286231
  throw new UnsupportedOperationError('unsupported JWS algorithm', { cause: { alg: header.alg } });
286047
286232
  }
286048
286233
  let key;
286049
286234
  key = await getPublicSigKeyFromIssuerJwksUri(as, options, header);
286050
- await validateJwsSignature(protectedHeader, payload, key, b64u(encodedSignature));
286235
+ await validateJwsSignature(protectedHeader, payload, key, build_b64u(encodedSignature));
286051
286236
  }
286052
286237
  async function processGenericAccessTokenResponse(as, client, response, additionalRequiredIdTokenClaims, options) {
286053
286238
  assertAs(as);
@@ -286055,28 +286240,15 @@ async function processGenericAccessTokenResponse(as, client, response, additiona
286055
286240
  if (!looseInstanceOf(response, Response)) {
286056
286241
  throw CodedTypeError('"response" must be an instance of Response', ERR_INVALID_ARG_TYPE);
286057
286242
  }
286058
- let challenges;
286059
- if ((challenges = parseWwwAuthenticateChallenges(response))) {
286060
- throw new WWWAuthenticateChallengeError('server responded with a challenge in the WWW-Authenticate HTTP Header', { cause: challenges, response });
286061
- }
286062
- if (response.status !== 200) {
286063
- let err;
286064
- if ((err = await handleOAuthBodyError(response))) {
286065
- await response.body?.cancel();
286066
- throw new ResponseBodyError('server responded with an error in the response body', {
286067
- cause: err,
286068
- response,
286069
- });
286070
- }
286071
- throw OPE('"response" is not a conform Token Endpoint response (unexpected HTTP status code)', RESPONSE_IS_NOT_CONFORM, response);
286072
- }
286243
+ checkAuthenticationChallenges(response);
286244
+ await checkOAuthBodyError(response, 200, 'Token Endpoint');
286073
286245
  assertReadableResponse(response);
286074
- assertApplicationJson(response);
286075
286246
  let json;
286076
286247
  try {
286077
286248
  json = await response.json();
286078
286249
  }
286079
286250
  catch (cause) {
286251
+ assertApplicationJson(response);
286080
286252
  throw OPE('failed to parse "response" body as JSON', PARSE_ERROR, cause);
286081
286253
  }
286082
286254
  if (!isJsonObject(json)) {
@@ -286142,6 +286314,12 @@ async function processGenericAccessTokenResponse(as, client, response, additiona
286142
286314
  }
286143
286315
  return json;
286144
286316
  }
286317
+ function checkAuthenticationChallenges(response) {
286318
+ let challenges;
286319
+ if ((challenges = parseWwwAuthenticateChallenges(response))) {
286320
+ throw new WWWAuthenticateChallengeError('server responded with a challenge in the WWW-Authenticate HTTP Header', { cause: challenges, response });
286321
+ }
286322
+ }
286145
286323
  async function processRefreshTokenResponse(as, client, response, options) {
286146
286324
  return processGenericAccessTokenResponse(as, client, response, undefined, options);
286147
286325
  }
@@ -286384,21 +286562,8 @@ async function processRevocationResponse(response) {
286384
286562
  if (!looseInstanceOf(response, Response)) {
286385
286563
  throw CodedTypeError('"response" must be an instance of Response', ERR_INVALID_ARG_TYPE);
286386
286564
  }
286387
- let challenges;
286388
- if ((challenges = parseWwwAuthenticateChallenges(response))) {
286389
- throw new WWWAuthenticateChallengeError('server responded with a challenge in the WWW-Authenticate HTTP Header', { cause: challenges, response });
286390
- }
286391
- if (response.status !== 200) {
286392
- let err;
286393
- if ((err = await handleOAuthBodyError(response))) {
286394
- await response.body?.cancel();
286395
- throw new ResponseBodyError('server responded with an error in the response body', {
286396
- cause: err,
286397
- response,
286398
- });
286399
- }
286400
- throw OPE('"response" is not a conform Revocation Endpoint response (unexpected HTTP status code)', RESPONSE_IS_NOT_CONFORM, response);
286401
- }
286565
+ checkAuthenticationChallenges(response);
286566
+ await checkOAuthBodyError(response, 200, 'Revocation Endpoint');
286402
286567
  return undefined;
286403
286568
  }
286404
286569
  function assertReadableResponse(response) {
@@ -286428,21 +286593,8 @@ async function processIntrospectionResponse(as, client, response, options) {
286428
286593
  if (!looseInstanceOf(response, Response)) {
286429
286594
  throw CodedTypeError('"response" must be an instance of Response', ERR_INVALID_ARG_TYPE);
286430
286595
  }
286431
- let challenges;
286432
- if ((challenges = parseWwwAuthenticateChallenges(response))) {
286433
- throw new WWWAuthenticateChallengeError('server responded with a challenge in the WWW-Authenticate HTTP Header', { cause: challenges, response });
286434
- }
286435
- if (response.status !== 200) {
286436
- let err;
286437
- if ((err = await handleOAuthBodyError(response))) {
286438
- await response.body?.cancel();
286439
- throw new ResponseBodyError('server responded with an error in the response body', {
286440
- cause: err,
286441
- response,
286442
- });
286443
- }
286444
- throw OPE('"response" is not a conform Introspection Endpoint response (unexpected HTTP status code)', RESPONSE_IS_NOT_CONFORM, response);
286445
- }
286596
+ checkAuthenticationChallenges(response);
286597
+ await checkOAuthBodyError(response, 200, 'Introspection Endpoint');
286446
286598
  let json;
286447
286599
  if (getContentType(response) === 'application/token-introspection+jwt') {
286448
286600
  assertReadableResponse(response);
@@ -286461,11 +286613,11 @@ async function processIntrospectionResponse(as, client, response, options) {
286461
286613
  }
286462
286614
  else {
286463
286615
  assertReadableResponse(response);
286464
- assertApplicationJson(response);
286465
286616
  try {
286466
286617
  json = await response.json();
286467
286618
  }
286468
286619
  catch (cause) {
286620
+ assertApplicationJson(response);
286469
286621
  throw OPE('failed to parse "response" body as JSON', PARSE_ERROR, cause);
286470
286622
  }
286471
286623
  if (!isJsonObject(json)) {
@@ -286501,12 +286653,12 @@ async function processJwksResponse(response) {
286501
286653
  throw OPE('"response" is not a conform JSON Web Key Set response (unexpected HTTP status code)', RESPONSE_IS_NOT_CONFORM, response);
286502
286654
  }
286503
286655
  assertReadableResponse(response);
286504
- assertContentTypes(response, 'application/json', 'application/jwk-set+json');
286505
286656
  let json;
286506
286657
  try {
286507
286658
  json = await response.json();
286508
286659
  }
286509
286660
  catch (cause) {
286661
+ assertContentTypes(response, 'application/json', 'application/jwk-set+json');
286510
286662
  throw OPE('failed to parse "response" body as JSON', PARSE_ERROR, cause);
286511
286663
  }
286512
286664
  if (!isJsonObject(json)) {
@@ -286520,21 +286672,7 @@ async function processJwksResponse(response) {
286520
286672
  }
286521
286673
  return json;
286522
286674
  }
286523
- async function handleOAuthBodyError(response) {
286524
- if (response.status > 399 && response.status < 500) {
286525
- assertReadableResponse(response);
286526
- assertApplicationJson(response);
286527
- try {
286528
- const json = await response.clone().json();
286529
- if (isJsonObject(json) && typeof json.error === 'string' && json.error.length) {
286530
- return json;
286531
- }
286532
- }
286533
- catch { }
286534
- }
286535
- return undefined;
286536
- }
286537
- function build_supported(alg) {
286675
+ function supported(alg) {
286538
286676
  switch (alg) {
286539
286677
  case 'PS256':
286540
286678
  case 'ES256':
@@ -286553,7 +286691,7 @@ function build_supported(alg) {
286553
286691
  }
286554
286692
  }
286555
286693
  function checkSupportedJwsAlg(header) {
286556
- if (!build_supported(header.alg)) {
286694
+ if (!supported(header.alg)) {
286557
286695
  throw new UnsupportedOperationError('unsupported JWS "alg" identifier', {
286558
286696
  cause: { alg: header.alg },
286559
286697
  });
@@ -286639,7 +286777,7 @@ async function validateJwt(jws, checkAlg, clockSkew, clockTolerance, decryptJwt)
286639
286777
  }
286640
286778
  let header;
286641
286779
  try {
286642
- header = JSON.parse(buf(b64u(protectedHeader)));
286780
+ header = JSON.parse(buf(build_b64u(protectedHeader)));
286643
286781
  }
286644
286782
  catch (cause) {
286645
286783
  throw OPE('failed to parse JWT Header body as base64url encoded JSON', PARSE_ERROR, cause);
@@ -286655,7 +286793,7 @@ async function validateJwt(jws, checkAlg, clockSkew, clockTolerance, decryptJwt)
286655
286793
  }
286656
286794
  let claims;
286657
286795
  try {
286658
- claims = JSON.parse(buf(b64u(payload)));
286796
+ claims = JSON.parse(buf(build_b64u(payload)));
286659
286797
  }
286660
286798
  catch (cause) {
286661
286799
  throw OPE('failed to parse JWT Payload body as base64url encoded JSON', PARSE_ERROR, cause);
@@ -286720,7 +286858,7 @@ async function validateJwtAuthResponse(as, client, parameters, expectedState, op
286720
286858
  .then(validateIssuer.bind(undefined, as))
286721
286859
  .then(validateAudience.bind(undefined, client.client_id));
286722
286860
  const { 0: protectedHeader, 1: payload, 2: encodedSignature } = jwt.split('.');
286723
- const signature = b64u(encodedSignature);
286861
+ const signature = build_b64u(encodedSignature);
286724
286862
  const key = await getPublicSigKeyFromIssuerJwksUri(as, options, header);
286725
286863
  await validateJwsSignature(protectedHeader, payload, key, signature);
286726
286864
  const result = new URLSearchParams();
@@ -286755,7 +286893,7 @@ async function idTokenHash(data, header, claimName) {
286755
286893
  throw new UnsupportedOperationError(`unsupported JWS algorithm for ${claimName} calculation`, { cause: { alg: header.alg } });
286756
286894
  }
286757
286895
  const digest = await crypto.subtle.digest(algorithm, buf(data));
286758
- return b64u(digest.slice(0, digest.byteLength / 2));
286896
+ return build_b64u(digest.slice(0, digest.byteLength / 2));
286759
286897
  }
286760
286898
  async function idTokenHashMatches(data, actual, header, claimName) {
286761
286899
  const expected = await idTokenHash(data, header, claimName);
@@ -286886,7 +287024,7 @@ async function validateHybridResponse(as, client, parameters, expectedNonce, exp
286886
287024
  }
286887
287025
  }
286888
287026
  const { 0: protectedHeader, 1: payload, 2: encodedSignature } = jwt.split('.');
286889
- const signature = b64u(encodedSignature);
287027
+ const signature = build_b64u(encodedSignature);
286890
287028
  const key = await getPublicSigKeyFromIssuerJwksUri(as, options, header);
286891
287029
  await validateJwsSignature(protectedHeader, payload, key, signature);
286892
287030
  if ((await idTokenHashMatches(code, claims.c_hash, header, 'c_hash')) !== true) {
@@ -287057,28 +287195,15 @@ async function processDeviceAuthorizationResponse(as, client, response) {
287057
287195
  if (!looseInstanceOf(response, Response)) {
287058
287196
  throw CodedTypeError('"response" must be an instance of Response', ERR_INVALID_ARG_TYPE);
287059
287197
  }
287060
- let challenges;
287061
- if ((challenges = parseWwwAuthenticateChallenges(response))) {
287062
- throw new WWWAuthenticateChallengeError('server responded with a challenge in the WWW-Authenticate HTTP Header', { cause: challenges, response });
287063
- }
287064
- if (response.status !== 200) {
287065
- let err;
287066
- if ((err = await handleOAuthBodyError(response))) {
287067
- await response.body?.cancel();
287068
- throw new ResponseBodyError('server responded with an error in the response body', {
287069
- cause: err,
287070
- response,
287071
- });
287072
- }
287073
- throw OPE('"response" is not a conform Device Authorization Endpoint response (unexpected HTTP status code)', RESPONSE_IS_NOT_CONFORM, response);
287074
- }
287198
+ checkAuthenticationChallenges(response);
287199
+ await checkOAuthBodyError(response, 200, 'Device Authorization Endpoint');
287075
287200
  assertReadableResponse(response);
287076
- assertApplicationJson(response);
287077
287201
  let json;
287078
287202
  try {
287079
287203
  json = await response.json();
287080
287204
  }
287081
287205
  catch (cause) {
287206
+ assertApplicationJson(response);
287082
287207
  throw OPE('failed to parse "response" body as JSON', PARSE_ERROR, cause);
287083
287208
  }
287084
287209
  if (!isJsonObject(json)) {
@@ -287149,7 +287274,7 @@ async function validateDPoP(request, accessToken, accessTokenClaims, options) {
287149
287274
  throw OPE('operation indicated DPoP use but the JWT Access Token has no jkt confirmation claim', INVALID_REQUEST, { claims: accessTokenClaims });
287150
287275
  }
287151
287276
  const clockSkew = getClockSkew(options);
287152
- const proof = await validateJwt(headerValue, checkSigningAlgorithm.bind(undefined, options?.signingAlgorithms, undefined, build_supported), clockSkew, getClockTolerance(options), undefined)
287277
+ const proof = await validateJwt(headerValue, checkSigningAlgorithm.bind(undefined, options?.signingAlgorithms, undefined, supported), clockSkew, getClockTolerance(options), undefined)
287153
287278
  .then(checkJwtType.bind(undefined, 'dpop+jwt'))
287154
287279
  .then(validatePresence.bind(undefined, ['iat', 'jti', 'ath', 'htm', 'htu']));
287155
287280
  const now = epochTime() + clockSkew;
@@ -287177,7 +287302,7 @@ async function validateDPoP(request, accessToken, accessTokenClaims, options) {
287177
287302
  });
287178
287303
  }
287179
287304
  {
287180
- const expected = b64u(await crypto.subtle.digest('SHA-256', buf(accessToken)));
287305
+ const expected = build_b64u(await crypto.subtle.digest('SHA-256', buf(accessToken)));
287181
287306
  if (proof.claims.ath !== expected) {
287182
287307
  throw OPE('DPoP Proof ath mismatch', JWT_CLAIM_COMPARISON, {
287183
287308
  expected,
@@ -287214,7 +287339,7 @@ async function validateDPoP(request, accessToken, accessTokenClaims, options) {
287214
287339
  default:
287215
287340
  throw new UnsupportedOperationError('unsupported JWK key type', { cause: proof.header.jwk });
287216
287341
  }
287217
- const expected = b64u(await crypto.subtle.digest('SHA-256', buf(JSON.stringify(components))));
287342
+ const expected = build_b64u(await crypto.subtle.digest('SHA-256', buf(JSON.stringify(components))));
287218
287343
  if (accessTokenClaims.cnf.jkt !== expected) {
287219
287344
  throw OPE('JWT Access Token confirmation mismatch', JWT_CLAIM_COMPARISON, {
287220
287345
  expected,
@@ -287224,7 +287349,7 @@ async function validateDPoP(request, accessToken, accessTokenClaims, options) {
287224
287349
  }
287225
287350
  }
287226
287351
  const { 0: protectedHeader, 1: payload, 2: encodedSignature } = headerValue.split('.');
287227
- const signature = b64u(encodedSignature);
287352
+ const signature = build_b64u(encodedSignature);
287228
287353
  const { jwk, alg } = proof.header;
287229
287354
  if (!jwk) {
287230
287355
  throw OPE('DPoP Proof is missing the jwk header parameter', INVALID_REQUEST, {
@@ -287279,7 +287404,7 @@ async function validateJwtAccessToken(as, request, expectedAudience, options) {
287279
287404
  if (options?.requireDPoP || scheme === 'dpop' || request.headers.has('dpop')) {
287280
287405
  requiredClaims.push('cnf');
287281
287406
  }
287282
- const { claims, header } = await validateJwt(accessToken, checkSigningAlgorithm.bind(undefined, options?.signingAlgorithms, undefined, build_supported), getClockSkew(options), getClockTolerance(options), undefined)
287407
+ const { claims, header } = await validateJwt(accessToken, checkSigningAlgorithm.bind(undefined, options?.signingAlgorithms, undefined, supported), getClockSkew(options), getClockTolerance(options), undefined)
287283
287408
  .then(checkJwtType.bind(undefined, 'at+jwt'))
287284
287409
  .then(validatePresence.bind(undefined, requiredClaims))
287285
287410
  .then(validateIssuer.bind(undefined, as))
@@ -287309,7 +287434,7 @@ async function validateJwtAccessToken(as, request, expectedAudience, options) {
287309
287434
  }
287310
287435
  }
287311
287436
  const { 0: protectedHeader, 1: payload, 2: encodedSignature } = accessToken.split('.');
287312
- const signature = b64u(encodedSignature);
287437
+ const signature = build_b64u(encodedSignature);
287313
287438
  const key = await getPublicSigKeyFromIssuerJwksUri(as, options, header);
287314
287439
  await validateJwsSignature(protectedHeader, payload, key, signature);
287315
287440
  if (options?.requireDPoP ||
@@ -287326,25 +287451,71 @@ function reassignRSCode(err) {
287326
287451
  }
287327
287452
  throw err;
287328
287453
  }
287454
+ async function backchannelAuthenticationRequest(as, client, clientAuthentication, parameters, options) {
287455
+ assertAs(as);
287456
+ assertClient(client);
287457
+ const url = resolveEndpoint(as, 'backchannel_authentication_endpoint', client.use_mtls_endpoint_aliases, options?.[allowInsecureRequests] !== true);
287458
+ const body = new URLSearchParams(parameters);
287459
+ body.set('client_id', client.client_id);
287460
+ const headers = prepareHeaders(options?.headers);
287461
+ headers.set('accept', 'application/json');
287462
+ return authenticatedRequest(as, client, clientAuthentication, url, body, headers, options);
287463
+ }
287464
+ async function processBackchannelAuthenticationResponse(as, client, response) {
287465
+ assertAs(as);
287466
+ assertClient(client);
287467
+ if (!looseInstanceOf(response, Response)) {
287468
+ throw CodedTypeError('"response" must be an instance of Response', ERR_INVALID_ARG_TYPE);
287469
+ }
287470
+ checkAuthenticationChallenges(response);
287471
+ await checkOAuthBodyError(response, 200, 'Backchannel Authentication Endpoint');
287472
+ assertReadableResponse(response);
287473
+ let json;
287474
+ try {
287475
+ json = await response.json();
287476
+ }
287477
+ catch (cause) {
287478
+ assertApplicationJson(response);
287479
+ throw OPE('failed to parse "response" body as JSON', PARSE_ERROR, cause);
287480
+ }
287481
+ if (!isJsonObject(json)) {
287482
+ throw OPE('"response" body must be a top level object', INVALID_RESPONSE, { body: json });
287483
+ }
287484
+ assertString(json.auth_req_id, '"response" body "auth_req_id" property', INVALID_RESPONSE, {
287485
+ body: json,
287486
+ });
287487
+ let expiresIn = typeof json.expires_in !== 'number' ? parseFloat(json.expires_in) : json.expires_in;
287488
+ assertNumber(expiresIn, false, '"response" body "expires_in" property', INVALID_RESPONSE, {
287489
+ body: json,
287490
+ });
287491
+ json.expires_in = expiresIn;
287492
+ if (json.interval !== undefined) {
287493
+ assertNumber(json.interval, false, '"response" body "interval" property', INVALID_RESPONSE, {
287494
+ body: json,
287495
+ });
287496
+ }
287497
+ return json;
287498
+ }
287499
+ async function backchannelAuthenticationGrantRequest(as, client, clientAuthentication, authReqId, options) {
287500
+ assertAs(as);
287501
+ assertClient(client);
287502
+ assertString(authReqId, '"authReqId"');
287503
+ const parameters = new URLSearchParams(options?.additionalParameters);
287504
+ parameters.set('auth_req_id', authReqId);
287505
+ return tokenEndpointRequest(as, client, clientAuthentication, 'urn:openid:params:grant-type:ciba', parameters, options);
287506
+ }
287507
+ async function processBackchannelAuthenticationGrantResponse(as, client, response, options) {
287508
+ return processGenericAccessTokenResponse(as, client, response, undefined, options);
287509
+ }
287329
287510
  const _nopkce = Symbol();
287330
287511
  const _nodiscoverycheck = Symbol();
287331
287512
  const _expectedIssuer = Symbol();
287332
287513
  //# sourceMappingURL=index.js.map
287333
- // EXTERNAL MODULE: external "node:buffer"
287334
- var external_node_buffer_ = __nccwpck_require__(72254);
287335
- // EXTERNAL MODULE: external "node:crypto"
287336
- var external_node_crypto_ = __nccwpck_require__(6005);
287337
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/runtime/digest.js
287338
-
287339
- const digest = (algorithm, data) => (0,external_node_crypto_.createHash)(algorithm).update(data).digest();
287340
- /* harmony default export */ const runtime_digest = (digest);
287341
-
287342
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/lib/buffer_utils.js
287343
-
287514
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/buffer_utils.js
287344
287515
  const buffer_utils_encoder = new TextEncoder();
287345
287516
  const buffer_utils_decoder = new TextDecoder();
287346
287517
  const MAX_INT32 = 2 ** 32;
287347
- function buffer_utils_concat(...buffers) {
287518
+ function concat(...buffers) {
287348
287519
  const size = buffers.reduce((acc, { length }) => acc + length, 0);
287349
287520
  const buf = new Uint8Array(size);
287350
287521
  let i = 0;
@@ -287354,9 +287525,6 @@ function buffer_utils_concat(...buffers) {
287354
287525
  }
287355
287526
  return buf;
287356
287527
  }
287357
- function buffer_utils_p2s(alg, p2sInput) {
287358
- return buffer_utils_concat(buffer_utils_encoder.encode(alg), new Uint8Array([0]), p2sInput);
287359
- }
287360
287528
  function writeUInt32BE(buf, value, offset) {
287361
287529
  if (value < 0 || value >= MAX_INT32) {
287362
287530
  throw new RangeError(`value must be >= 0 and <= ${MAX_INT32 - 1}. Received ${value}`);
@@ -287376,39 +287544,64 @@ function uint32be(value) {
287376
287544
  writeUInt32BE(buf, value);
287377
287545
  return buf;
287378
287546
  }
287379
- function lengthAndInput(input) {
287380
- return buffer_utils_concat(uint32be(input.length), input);
287547
+
287548
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/base64.js
287549
+ function base64_encodeBase64(input) {
287550
+ if (Uint8Array.prototype.toBase64) {
287551
+ return input.toBase64();
287552
+ }
287553
+ const CHUNK_SIZE = 0x8000;
287554
+ const arr = [];
287555
+ for (let i = 0; i < input.length; i += CHUNK_SIZE) {
287556
+ arr.push(String.fromCharCode.apply(null, input.subarray(i, i + CHUNK_SIZE)));
287557
+ }
287558
+ return btoa(arr.join(''));
287381
287559
  }
287382
- async function concatKdf(secret, bits, value) {
287383
- const iterations = Math.ceil((bits >> 3) / 32);
287384
- const res = new Uint8Array(iterations * 32);
287385
- for (let iter = 0; iter < iterations; iter++) {
287386
- const buf = new Uint8Array(4 + secret.length + value.length);
287387
- buf.set(uint32be(iter + 1));
287388
- buf.set(secret, 4);
287389
- buf.set(value, 4 + secret.length);
287390
- res.set(await runtime_digest('sha256', buf), iter * 32);
287560
+ function decodeBase64(encoded) {
287561
+ if (Uint8Array.fromBase64) {
287562
+ return Uint8Array.fromBase64(encoded);
287391
287563
  }
287392
- return res.slice(0, bits >> 3);
287564
+ const binary = atob(encoded);
287565
+ const bytes = new Uint8Array(binary.length);
287566
+ for (let i = 0; i < binary.length; i++) {
287567
+ bytes[i] = binary.charCodeAt(i);
287568
+ }
287569
+ return bytes;
287393
287570
  }
287394
287571
 
287395
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/runtime/base64url.js
287572
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/util/base64url.js
287396
287573
 
287397
287574
 
287398
- function normalize(input) {
287575
+ function decode(input) {
287576
+ if (Uint8Array.fromBase64) {
287577
+ return Uint8Array.fromBase64(typeof input === 'string' ? input : buffer_utils_decoder.decode(input), {
287578
+ alphabet: 'base64url',
287579
+ });
287580
+ }
287399
287581
  let encoded = input;
287400
287582
  if (encoded instanceof Uint8Array) {
287401
287583
  encoded = buffer_utils_decoder.decode(encoded);
287402
287584
  }
287403
- return encoded;
287585
+ encoded = encoded.replace(/-/g, '+').replace(/_/g, '/').replace(/\s/g, '');
287586
+ try {
287587
+ return decodeBase64(encoded);
287588
+ }
287589
+ catch {
287590
+ throw new TypeError('The input to be decoded is not correctly encoded.');
287591
+ }
287592
+ }
287593
+ function encode(input) {
287594
+ let unencoded = input;
287595
+ if (typeof unencoded === 'string') {
287596
+ unencoded = encoder.encode(unencoded);
287597
+ }
287598
+ if (Uint8Array.prototype.toBase64) {
287599
+ return unencoded.toBase64({ alphabet: 'base64url', omitPadding: true });
287600
+ }
287601
+ return encodeBase64(unencoded).replace(/=/g, '').replace(/\+/g, '-').replace(/\//g, '_');
287404
287602
  }
287405
- const encode = (input) => Buffer.from(input).toString('base64url');
287406
- const decodeBase64 = (input) => new Uint8Array(Buffer.from(input, 'base64'));
287407
- const encodeBase64 = (input) => Buffer.from(input).toString('base64');
287408
-
287409
- const decode = (input) => new Uint8Array(external_node_buffer_.Buffer.from(normalize(input), 'base64url'));
287410
287603
 
287411
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/util/errors.js
287604
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/util/errors.js
287412
287605
  class JOSEError extends Error {
287413
287606
  static code = 'ERR_JOSE_GENERIC';
287414
287607
  code = 'ERR_JOSE_GENERIC';
@@ -287448,7 +287641,7 @@ class JOSEAlgNotAllowed extends JOSEError {
287448
287641
  static code = 'ERR_JOSE_ALG_NOT_ALLOWED';
287449
287642
  code = 'ERR_JOSE_ALG_NOT_ALLOWED';
287450
287643
  }
287451
- class errors_JOSENotSupported extends JOSEError {
287644
+ class JOSENotSupported extends JOSEError {
287452
287645
  static code = 'ERR_JOSE_NOT_SUPPORTED';
287453
287646
  code = 'ERR_JOSE_NOT_SUPPORTED';
287454
287647
  }
@@ -287509,8 +287702,7 @@ class JWSSignatureVerificationFailed extends (/* unused pure expression or super
287509
287702
  }
287510
287703
  }
287511
287704
 
287512
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/lib/iv.js
287513
-
287705
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/iv.js
287514
287706
 
287515
287707
  function bitLength(alg) {
287516
287708
  switch (alg) {
@@ -287526,87 +287718,30 @@ function bitLength(alg) {
287526
287718
  case 'A256CBC-HS512':
287527
287719
  return 128;
287528
287720
  default:
287529
- throw new errors_JOSENotSupported(`Unsupported JWE Algorithm: ${alg}`);
287721
+ throw new JOSENotSupported(`Unsupported JWE Algorithm: ${alg}`);
287530
287722
  }
287531
287723
  }
287532
- /* harmony default export */ const iv = ((alg) => random(new Uint8Array(bitLength(alg) >> 3)));
287724
+ /* harmony default export */ const iv = ((alg) => crypto.getRandomValues(new Uint8Array(bitLength(alg) >> 3)));
287533
287725
 
287534
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/lib/check_iv_length.js
287726
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/check_iv_length.js
287535
287727
 
287536
287728
 
287537
- const checkIvLength = (enc, iv) => {
287729
+ /* harmony default export */ const check_iv_length = ((enc, iv) => {
287538
287730
  if (iv.length << 3 !== bitLength(enc)) {
287539
287731
  throw new JWEInvalid('Invalid Initialization Vector length');
287540
287732
  }
287541
- };
287542
- /* harmony default export */ const check_iv_length = (checkIvLength);
287543
-
287544
- ;// CONCATENATED MODULE: external "node:util"
287545
- const external_node_util_namespaceObject = require("node:util");
287546
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/runtime/is_key_object.js
287547
-
287548
- /* harmony default export */ const is_key_object = ((obj) => external_node_util_namespaceObject.types.isKeyObject(obj));
287549
-
287550
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/runtime/check_cek_length.js
287733
+ });
287551
287734
 
287735
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/check_cek_length.js
287552
287736
 
287553
- const checkCekLength = (enc, cek) => {
287554
- let expected;
287555
- switch (enc) {
287556
- case 'A128CBC-HS256':
287557
- case 'A192CBC-HS384':
287558
- case 'A256CBC-HS512':
287559
- expected = parseInt(enc.slice(-3), 10);
287560
- break;
287561
- case 'A128GCM':
287562
- case 'A192GCM':
287563
- case 'A256GCM':
287564
- expected = parseInt(enc.slice(1, 4), 10);
287565
- break;
287566
- default:
287567
- throw new errors_JOSENotSupported(`Content Encryption Algorithm ${enc} is not supported either by JOSE or your javascript runtime`);
287568
- }
287569
- if (cek instanceof Uint8Array) {
287570
- const actual = cek.byteLength << 3;
287571
- if (actual !== expected) {
287572
- throw new JWEInvalid(`Invalid Content Encryption Key length. Expected ${expected} bits, got ${actual} bits`);
287573
- }
287574
- return;
287737
+ /* harmony default export */ const check_cek_length = ((cek, expected) => {
287738
+ const actual = cek.byteLength << 3;
287739
+ if (actual !== expected) {
287740
+ throw new JWEInvalid(`Invalid Content Encryption Key length. Expected ${expected} bits, got ${actual} bits`);
287575
287741
  }
287576
- if (is_key_object(cek) && cek.type === 'secret') {
287577
- const actual = cek.symmetricKeySize << 3;
287578
- if (actual !== expected) {
287579
- throw new JWEInvalid(`Invalid Content Encryption Key length. Expected ${expected} bits, got ${actual} bits`);
287580
- }
287581
- return;
287582
- }
287583
- throw new TypeError('Invalid Content Encryption Key type');
287584
- };
287585
- /* harmony default export */ const check_cek_length = (checkCekLength);
287586
-
287587
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/runtime/timing_safe_equal.js
287588
-
287589
- const timingSafeEqual = external_node_crypto_.timingSafeEqual;
287590
- /* harmony default export */ const timing_safe_equal = (timingSafeEqual);
287591
-
287592
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/runtime/cbc_tag.js
287593
-
287594
-
287595
- function cbcTag(aad, iv, ciphertext, macSize, macKey, keySize) {
287596
- const macData = buffer_utils_concat(aad, iv, ciphertext, uint64be(aad.length << 3));
287597
- const hmac = (0,external_node_crypto_.createHmac)(`sha${macSize}`, macKey);
287598
- hmac.update(macData);
287599
- return hmac.digest().slice(0, keySize >> 3);
287600
- }
287601
-
287602
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/runtime/webcrypto.js
287603
-
287604
-
287605
- const webcrypto = external_node_crypto_.webcrypto;
287606
- /* harmony default export */ const runtime_webcrypto = (webcrypto);
287607
- const webcrypto_isCryptoKey = (key) => external_node_util_namespaceObject.types.isCryptoKey(key);
287742
+ });
287608
287743
 
287609
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/lib/crypto_key.js
287744
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/crypto_key.js
287610
287745
  function unusable(name, prop = 'algorithm.name') {
287611
287746
  return new TypeError(`CryptoKey does not support this operation, its ${prop} must be ${name}`);
287612
287747
  }
@@ -287616,7 +287751,7 @@ function isAlgorithm(algorithm, name) {
287616
287751
  function getHashLength(hash) {
287617
287752
  return parseInt(hash.name.slice(4), 10);
287618
287753
  }
287619
- function crypto_key_getNamedCurve(alg) {
287754
+ function getNamedCurve(alg) {
287620
287755
  switch (alg) {
287621
287756
  case 'ES256':
287622
287757
  return 'P-256';
@@ -287628,23 +287763,12 @@ function crypto_key_getNamedCurve(alg) {
287628
287763
  throw new Error('unreachable');
287629
287764
  }
287630
287765
  }
287631
- function checkUsage(key, usages) {
287632
- if (usages.length && !usages.some((expected) => key.usages.includes(expected))) {
287633
- let msg = 'CryptoKey does not support this operation, its usages must include ';
287634
- if (usages.length > 2) {
287635
- const last = usages.pop();
287636
- msg += `one of ${usages.join(', ')}, or ${last}.`;
287637
- }
287638
- else if (usages.length === 2) {
287639
- msg += `one of ${usages[0]} or ${usages[1]}.`;
287640
- }
287641
- else {
287642
- msg += `${usages[0]}.`;
287643
- }
287644
- throw new TypeError(msg);
287766
+ function checkUsage(key, usage) {
287767
+ if (usage && !key.usages.includes(usage)) {
287768
+ throw new TypeError(`CryptoKey does not support this operation, its usages must include ${usage}.`);
287645
287769
  }
287646
287770
  }
287647
- function checkSigCryptoKey(key, alg, ...usages) {
287771
+ function checkSigCryptoKey(key, alg, usage) {
287648
287772
  switch (alg) {
287649
287773
  case 'HS256':
287650
287774
  case 'HS384':
@@ -287679,10 +287803,10 @@ function checkSigCryptoKey(key, alg, ...usages) {
287679
287803
  throw unusable(`SHA-${expected}`, 'algorithm.hash');
287680
287804
  break;
287681
287805
  }
287806
+ case 'Ed25519':
287682
287807
  case 'EdDSA': {
287683
- if (key.algorithm.name !== 'Ed25519' && key.algorithm.name !== 'Ed448') {
287684
- throw unusable('Ed25519 or Ed448');
287685
- }
287808
+ if (!isAlgorithm(key.algorithm, 'Ed25519'))
287809
+ throw unusable('Ed25519');
287686
287810
  break;
287687
287811
  }
287688
287812
  case 'ES256':
@@ -287690,7 +287814,7 @@ function checkSigCryptoKey(key, alg, ...usages) {
287690
287814
  case 'ES512': {
287691
287815
  if (!isAlgorithm(key.algorithm, 'ECDSA'))
287692
287816
  throw unusable('ECDSA');
287693
- const expected = crypto_key_getNamedCurve(alg);
287817
+ const expected = getNamedCurve(alg);
287694
287818
  const actual = key.algorithm.namedCurve;
287695
287819
  if (actual !== expected)
287696
287820
  throw unusable(expected, 'algorithm.namedCurve');
@@ -287699,9 +287823,9 @@ function checkSigCryptoKey(key, alg, ...usages) {
287699
287823
  default:
287700
287824
  throw new TypeError('CryptoKey does not support this operation');
287701
287825
  }
287702
- checkUsage(key, usages);
287826
+ checkUsage(key, usage);
287703
287827
  }
287704
- function checkEncCryptoKey(key, alg, ...usages) {
287828
+ function crypto_key_checkEncCryptoKey(key, alg, usage) {
287705
287829
  switch (alg) {
287706
287830
  case 'A128GCM':
287707
287831
  case 'A192GCM':
@@ -287729,10 +287853,9 @@ function checkEncCryptoKey(key, alg, ...usages) {
287729
287853
  switch (key.algorithm.name) {
287730
287854
  case 'ECDH':
287731
287855
  case 'X25519':
287732
- case 'X448':
287733
287856
  break;
287734
287857
  default:
287735
- throw unusable('ECDH, X25519, or X448');
287858
+ throw unusable('ECDH or X25519');
287736
287859
  }
287737
287860
  break;
287738
287861
  }
@@ -287757,10 +287880,10 @@ function checkEncCryptoKey(key, alg, ...usages) {
287757
287880
  default:
287758
287881
  throw new TypeError('CryptoKey does not support this operation');
287759
287882
  }
287760
- checkUsage(key, usages);
287883
+ checkUsage(key, usage);
287761
287884
  }
287762
287885
 
287763
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/lib/invalid_key_input.js
287886
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/invalid_key_input.js
287764
287887
  function message(msg, actual, ...types) {
287765
287888
  types = types.filter(Boolean);
287766
287889
  if (types.length > 2) {
@@ -287793,31 +287916,23 @@ function withAlg(alg, actual, ...types) {
287793
287916
  return message(`Key for the ${alg} algorithm must be `, actual, ...types);
287794
287917
  }
287795
287918
 
287796
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/runtime/ciphers.js
287797
-
287798
- let ciphers;
287799
- /* harmony default export */ const runtime_ciphers = ((algorithm) => {
287800
- ciphers ||= new Set((0,external_node_crypto_.getCiphers)());
287801
- return ciphers.has(algorithm);
287802
- });
287803
-
287804
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/runtime/is_key_like.js
287805
-
287806
-
287807
- /* harmony default export */ const is_key_like = ((key) => is_key_object(key) || webcrypto_isCryptoKey(key));
287808
- const is_key_like_types = ['KeyObject'];
287809
- if (globalThis.CryptoKey || runtime_webcrypto?.CryptoKey) {
287810
- is_key_like_types.push('CryptoKey');
287919
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/is_key_like.js
287920
+ function is_key_like_assertCryptoKey(key) {
287921
+ if (!isCryptoKey(key)) {
287922
+ throw new Error('CryptoKey instance expected');
287923
+ }
287811
287924
  }
287925
+ function isCryptoKey(key) {
287926
+ return key?.[Symbol.toStringTag] === 'CryptoKey';
287927
+ }
287928
+ function isKeyObject(key) {
287929
+ return key?.[Symbol.toStringTag] === 'KeyObject';
287930
+ }
287931
+ /* harmony default export */ const is_key_like = ((key) => {
287932
+ return isCryptoKey(key) || isKeyObject(key);
287933
+ });
287812
287934
 
287813
-
287814
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/runtime/decrypt.js
287815
-
287816
-
287817
-
287818
-
287819
-
287820
-
287935
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/decrypt.js
287821
287936
 
287822
287937
 
287823
287938
 
@@ -287825,22 +287940,39 @@ if (globalThis.CryptoKey || runtime_webcrypto?.CryptoKey) {
287825
287940
 
287826
287941
 
287827
287942
 
287828
- function cbcDecrypt(enc, cek, ciphertext, iv, tag, aad) {
287829
- const keySize = parseInt(enc.slice(1, 4), 10);
287830
- if (is_key_object(cek)) {
287831
- cek = cek.export();
287943
+ async function timingSafeEqual(a, b) {
287944
+ if (!(a instanceof Uint8Array)) {
287945
+ throw new TypeError('First argument must be a buffer');
287832
287946
  }
287833
- const encKey = cek.subarray(keySize >> 3);
287834
- const macKey = cek.subarray(0, keySize >> 3);
287835
- const macSize = parseInt(enc.slice(-3), 10);
287836
- const algorithm = `aes-${keySize}-cbc`;
287837
- if (!runtime_ciphers(algorithm)) {
287838
- throw new errors_JOSENotSupported(`alg ${enc} is not supported by your javascript runtime`);
287947
+ if (!(b instanceof Uint8Array)) {
287948
+ throw new TypeError('Second argument must be a buffer');
287949
+ }
287950
+ const algorithm = { name: 'HMAC', hash: 'SHA-256' };
287951
+ const key = (await crypto.subtle.generateKey(algorithm, false, ['sign']));
287952
+ const aHmac = new Uint8Array(await crypto.subtle.sign(algorithm, key, a));
287953
+ const bHmac = new Uint8Array(await crypto.subtle.sign(algorithm, key, b));
287954
+ let out = 0;
287955
+ let i = -1;
287956
+ while (++i < 32) {
287957
+ out |= aHmac[i] ^ bHmac[i];
287958
+ }
287959
+ return out === 0;
287960
+ }
287961
+ async function cbcDecrypt(enc, cek, ciphertext, iv, tag, aad) {
287962
+ if (!(cek instanceof Uint8Array)) {
287963
+ throw new TypeError(invalid_key_input(cek, 'Uint8Array'));
287839
287964
  }
287840
- const expectedTag = cbcTag(aad, iv, ciphertext, macSize, macKey, keySize);
287965
+ const keySize = parseInt(enc.slice(1, 4), 10);
287966
+ const encKey = await crypto.subtle.importKey('raw', cek.subarray(keySize >> 3), 'AES-CBC', false, ['decrypt']);
287967
+ const macKey = await crypto.subtle.importKey('raw', cek.subarray(0, keySize >> 3), {
287968
+ hash: `SHA-${keySize << 1}`,
287969
+ name: 'HMAC',
287970
+ }, false, ['sign']);
287971
+ const macData = concat(aad, iv, ciphertext, uint64be(aad.length << 3));
287972
+ const expectedTag = new Uint8Array((await crypto.subtle.sign('HMAC', macKey, macData)).slice(0, keySize >> 3));
287841
287973
  let macCheckPassed;
287842
287974
  try {
287843
- macCheckPassed = timing_safe_equal(tag, expectedTag);
287975
+ macCheckPassed = await timingSafeEqual(tag, expectedTag);
287844
287976
  }
287845
287977
  catch {
287846
287978
  }
@@ -287849,8 +287981,7 @@ function cbcDecrypt(enc, cek, ciphertext, iv, tag, aad) {
287849
287981
  }
287850
287982
  let plaintext;
287851
287983
  try {
287852
- const decipher = (0,external_node_crypto_.createDecipheriv)(algorithm, encKey, iv);
287853
- plaintext = buffer_utils_concat(decipher.update(ciphertext), decipher.final());
287984
+ plaintext = new Uint8Array(await crypto.subtle.decrypt({ iv, name: 'AES-CBC' }, encKey, ciphertext));
287854
287985
  }
287855
287986
  catch {
287856
287987
  }
@@ -287859,37 +287990,30 @@ function cbcDecrypt(enc, cek, ciphertext, iv, tag, aad) {
287859
287990
  }
287860
287991
  return plaintext;
287861
287992
  }
287862
- function gcmDecrypt(enc, cek, ciphertext, iv, tag, aad) {
287863
- const keySize = parseInt(enc.slice(1, 4), 10);
287864
- const algorithm = `aes-${keySize}-gcm`;
287865
- if (!runtime_ciphers(algorithm)) {
287866
- throw new errors_JOSENotSupported(`alg ${enc} is not supported by your javascript runtime`);
287993
+ async function gcmDecrypt(enc, cek, ciphertext, iv, tag, aad) {
287994
+ let encKey;
287995
+ if (cek instanceof Uint8Array) {
287996
+ encKey = await crypto.subtle.importKey('raw', cek, 'AES-GCM', false, ['decrypt']);
287997
+ }
287998
+ else {
287999
+ crypto_key_checkEncCryptoKey(cek, enc, 'decrypt');
288000
+ encKey = cek;
287867
288001
  }
287868
288002
  try {
287869
- const decipher = (0,external_node_crypto_.createDecipheriv)(algorithm, cek, iv, { authTagLength: 16 });
287870
- decipher.setAuthTag(tag);
287871
- if (aad.byteLength) {
287872
- decipher.setAAD(aad, { plaintextLength: ciphertext.length });
287873
- }
287874
- const plaintext = decipher.update(ciphertext);
287875
- decipher.final();
287876
- return plaintext;
288003
+ return new Uint8Array(await crypto.subtle.decrypt({
288004
+ additionalData: aad,
288005
+ iv,
288006
+ name: 'AES-GCM',
288007
+ tagLength: 128,
288008
+ }, encKey, concat(ciphertext, tag)));
287877
288009
  }
287878
288010
  catch {
287879
288011
  throw new JWEDecryptionFailed();
287880
288012
  }
287881
288013
  }
287882
- const decrypt = (enc, cek, ciphertext, iv, tag, aad) => {
287883
- let key;
287884
- if (webcrypto_isCryptoKey(cek)) {
287885
- checkEncCryptoKey(cek, enc, 'decrypt');
287886
- key = external_node_crypto_.KeyObject.from(cek);
287887
- }
287888
- else if (cek instanceof Uint8Array || is_key_object(cek)) {
287889
- key = cek;
287890
- }
287891
- else {
287892
- throw new TypeError(invalid_key_input(cek, ...is_key_like_types, 'Uint8Array'));
288014
+ /* harmony default export */ const decrypt = (async (enc, cek, ciphertext, iv, tag, aad) => {
288015
+ if (!isCryptoKey(cek) && !(cek instanceof Uint8Array)) {
288016
+ throw new TypeError(invalid_key_input(cek, 'CryptoKey', 'KeyObject', 'Uint8Array', 'JSON Web Key'));
287893
288017
  }
287894
288018
  if (!iv) {
287895
288019
  throw new JWEInvalid('JWE Initialization Vector missing');
@@ -287897,25 +288021,27 @@ const decrypt = (enc, cek, ciphertext, iv, tag, aad) => {
287897
288021
  if (!tag) {
287898
288022
  throw new JWEInvalid('JWE Authentication Tag missing');
287899
288023
  }
287900
- check_cek_length(enc, key);
287901
288024
  check_iv_length(enc, iv);
287902
288025
  switch (enc) {
287903
288026
  case 'A128CBC-HS256':
287904
288027
  case 'A192CBC-HS384':
287905
288028
  case 'A256CBC-HS512':
287906
- return cbcDecrypt(enc, key, ciphertext, iv, tag, aad);
288029
+ if (cek instanceof Uint8Array)
288030
+ check_cek_length(cek, parseInt(enc.slice(-3), 10));
288031
+ return cbcDecrypt(enc, cek, ciphertext, iv, tag, aad);
287907
288032
  case 'A128GCM':
287908
288033
  case 'A192GCM':
287909
288034
  case 'A256GCM':
287910
- return gcmDecrypt(enc, key, ciphertext, iv, tag, aad);
288035
+ if (cek instanceof Uint8Array)
288036
+ check_cek_length(cek, parseInt(enc.slice(1, 4), 10));
288037
+ return gcmDecrypt(enc, cek, ciphertext, iv, tag, aad);
287911
288038
  default:
287912
- throw new errors_JOSENotSupported('Unsupported JWE Content Encryption Algorithm');
288039
+ throw new JOSENotSupported('Unsupported JWE Content Encryption Algorithm');
287913
288040
  }
287914
- };
287915
- /* harmony default export */ const runtime_decrypt = (decrypt);
288041
+ });
287916
288042
 
287917
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/lib/is_disjoint.js
287918
- const isDisjoint = (...headers) => {
288043
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/is_disjoint.js
288044
+ /* harmony default export */ const is_disjoint = ((...headers) => {
287919
288045
  const sources = headers.filter(Boolean);
287920
288046
  if (sources.length === 0 || sources.length === 1) {
287921
288047
  return true;
@@ -287935,14 +288061,13 @@ const isDisjoint = (...headers) => {
287935
288061
  }
287936
288062
  }
287937
288063
  return true;
287938
- };
287939
- /* harmony default export */ const is_disjoint = (isDisjoint);
288064
+ });
287940
288065
 
287941
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/lib/is_object.js
288066
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/is_object.js
287942
288067
  function isObjectLike(value) {
287943
288068
  return typeof value === 'object' && value !== null;
287944
288069
  }
287945
- function isObject(input) {
288070
+ /* harmony default export */ const is_object = ((input) => {
287946
288071
  if (!isObjectLike(input) || Object.prototype.toString.call(input) !== '[object Object]') {
287947
288072
  return false;
287948
288073
  }
@@ -287954,345 +288079,165 @@ function isObject(input) {
287954
288079
  proto = Object.getPrototypeOf(proto);
287955
288080
  }
287956
288081
  return Object.getPrototypeOf(input) === proto;
287957
- }
287958
-
287959
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/runtime/aeskw.js
287960
-
287961
-
287962
-
287963
-
287964
-
287965
-
287966
-
287967
-
288082
+ });
287968
288083
 
288084
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/aeskw.js
287969
288085
 
287970
288086
  function checkKeySize(key, alg) {
287971
- if (key.symmetricKeySize << 3 !== parseInt(alg.slice(1, 4), 10)) {
288087
+ if (key.algorithm.length !== parseInt(alg.slice(1, 4), 10)) {
287972
288088
  throw new TypeError(`Invalid key size for alg: ${alg}`);
287973
288089
  }
287974
288090
  }
287975
- function ensureKeyObject(key, alg, usage) {
287976
- if (is_key_object(key)) {
287977
- return key;
287978
- }
288091
+ function getCryptoKey(key, alg, usage) {
287979
288092
  if (key instanceof Uint8Array) {
287980
- return (0,external_node_crypto_.createSecretKey)(key);
288093
+ return crypto.subtle.importKey('raw', key, 'AES-KW', true, [usage]);
287981
288094
  }
287982
- if (webcrypto_isCryptoKey(key)) {
287983
- checkEncCryptoKey(key, alg, usage);
287984
- return external_node_crypto_.KeyObject.from(key);
287985
- }
287986
- throw new TypeError(invalid_key_input(key, ...is_key_like_types, 'Uint8Array'));
287987
- }
287988
- const aeskw_wrap = (alg, key, cek) => {
287989
- const size = parseInt(alg.slice(1, 4), 10);
287990
- const algorithm = `aes${size}-wrap`;
287991
- if (!supported(algorithm)) {
287992
- throw new JOSENotSupported(`alg ${alg} is not supported either by JOSE or your javascript runtime`);
287993
- }
287994
- const keyObject = ensureKeyObject(key, alg, 'wrapKey');
287995
- checkKeySize(keyObject, alg);
287996
- const cipher = createCipheriv(algorithm, keyObject, Buffer.alloc(8, 0xa6));
287997
- return concat(cipher.update(cek), cipher.final());
287998
- };
287999
- const unwrap = (alg, key, encryptedKey) => {
288000
- const size = parseInt(alg.slice(1, 4), 10);
288001
- const algorithm = `aes${size}-wrap`;
288002
- if (!runtime_ciphers(algorithm)) {
288003
- throw new errors_JOSENotSupported(`alg ${alg} is not supported either by JOSE or your javascript runtime`);
288004
- }
288005
- const keyObject = ensureKeyObject(key, alg, 'unwrapKey');
288006
- checkKeySize(keyObject, alg);
288007
- const cipher = (0,external_node_crypto_.createDecipheriv)(algorithm, keyObject, external_node_buffer_.Buffer.alloc(8, 0xa6));
288008
- return buffer_utils_concat(cipher.update(encryptedKey), cipher.final());
288009
- };
288010
-
288011
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/lib/is_jwk.js
288012
-
288013
- function isJWK(key) {
288014
- return isObject(key) && typeof key.kty === 'string';
288095
+ crypto_key_checkEncCryptoKey(key, alg, usage);
288096
+ return key;
288015
288097
  }
288016
- function isPrivateJWK(key) {
288017
- return key.kty !== 'oct' && typeof key.d === 'string';
288098
+ async function wrap(alg, key, cek) {
288099
+ const cryptoKey = await getCryptoKey(key, alg, 'wrapKey');
288100
+ checkKeySize(cryptoKey, alg);
288101
+ const cryptoKeyCek = await crypto.subtle.importKey('raw', cek, { hash: 'SHA-256', name: 'HMAC' }, true, ['sign']);
288102
+ return new Uint8Array(await crypto.subtle.wrapKey('raw', cryptoKeyCek, cryptoKey, 'AES-KW'));
288018
288103
  }
288019
- function isPublicJWK(key) {
288020
- return key.kty !== 'oct' && typeof key.d === 'undefined';
288104
+ async function unwrap(alg, key, encryptedKey) {
288105
+ const cryptoKey = await getCryptoKey(key, alg, 'unwrapKey');
288106
+ checkKeySize(cryptoKey, alg);
288107
+ const cryptoKeyCek = await crypto.subtle.unwrapKey('raw', encryptedKey, cryptoKey, 'AES-KW', { hash: 'SHA-256', name: 'HMAC' }, true, ['sign']);
288108
+ return new Uint8Array(await crypto.subtle.exportKey('raw', cryptoKeyCek));
288021
288109
  }
288022
- function isSecretJWK(key) {
288023
- return isJWK(key) && key.kty === 'oct' && typeof key.k === 'string';
288024
- }
288025
-
288026
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/runtime/get_named_curve.js
288027
-
288028
-
288029
-
288030
-
288031
-
288032
-
288033
-
288034
- const weakMap = new WeakMap();
288035
- const namedCurveToJOSE = (namedCurve) => {
288036
- switch (namedCurve) {
288037
- case 'prime256v1':
288038
- return 'P-256';
288039
- case 'secp384r1':
288040
- return 'P-384';
288041
- case 'secp521r1':
288042
- return 'P-521';
288043
- case 'secp256k1':
288044
- return 'secp256k1';
288045
- default:
288046
- throw new errors_JOSENotSupported('Unsupported key curve for this operation');
288047
- }
288048
- };
288049
- const get_named_curve_getNamedCurve = (kee, raw) => {
288050
- let key;
288051
- if (webcrypto_isCryptoKey(kee)) {
288052
- key = external_node_crypto_.KeyObject.from(kee);
288053
- }
288054
- else if (is_key_object(kee)) {
288055
- key = kee;
288056
- }
288057
- else if (isJWK(kee)) {
288058
- return kee.crv;
288059
- }
288060
- else {
288061
- throw new TypeError(invalid_key_input(kee, ...is_key_like_types));
288062
- }
288063
- if (key.type === 'secret') {
288064
- throw new TypeError('only "private" or "public" type keys can be used for this operation');
288065
- }
288066
- switch (key.asymmetricKeyType) {
288067
- case 'ed25519':
288068
- case 'ed448':
288069
- return `Ed${key.asymmetricKeyType.slice(2)}`;
288070
- case 'x25519':
288071
- case 'x448':
288072
- return `X${key.asymmetricKeyType.slice(1)}`;
288073
- case 'ec': {
288074
- const namedCurve = key.asymmetricKeyDetails.namedCurve;
288075
- if (raw) {
288076
- return namedCurve;
288077
- }
288078
- return namedCurveToJOSE(namedCurve);
288079
- }
288080
- default:
288081
- throw new TypeError('Invalid asymmetric key type for this operation');
288082
- }
288083
- };
288084
- /* harmony default export */ const get_named_curve = (get_named_curve_getNamedCurve);
288085
-
288086
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/runtime/ecdhes.js
288087
-
288088
-
288089
-
288090
-
288091
-
288092
288110
 
288111
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/digest.js
288112
+ /* harmony default export */ const digest = (async (algorithm, data) => {
288113
+ const subtleDigest = `SHA-${algorithm.slice(-3)}`;
288114
+ return new Uint8Array(await crypto.subtle.digest(subtleDigest, data));
288115
+ });
288093
288116
 
288117
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/ecdhes.js
288094
288118
 
288095
288119
 
288096
288120
 
288097
- const ecdhes_generateKeyPair = (0,external_node_util_namespaceObject.promisify)(external_node_crypto_.generateKeyPair);
288098
- async function deriveKey(publicKee, privateKee, algorithm, keyLength, apu = new Uint8Array(0), apv = new Uint8Array(0)) {
288099
- let publicKey;
288100
- if (webcrypto_isCryptoKey(publicKee)) {
288101
- checkEncCryptoKey(publicKee, 'ECDH');
288102
- publicKey = external_node_crypto_.KeyObject.from(publicKee);
288103
- }
288104
- else if (is_key_object(publicKee)) {
288105
- publicKey = publicKee;
288106
- }
288107
- else {
288108
- throw new TypeError(invalid_key_input(publicKee, ...is_key_like_types));
288109
- }
288110
- let privateKey;
288111
- if (webcrypto_isCryptoKey(privateKee)) {
288112
- checkEncCryptoKey(privateKee, 'ECDH', 'deriveBits');
288113
- privateKey = external_node_crypto_.KeyObject.from(privateKee);
288121
+ function lengthAndInput(input) {
288122
+ return concat(uint32be(input.length), input);
288123
+ }
288124
+ async function concatKdf(secret, bits, value) {
288125
+ const iterations = Math.ceil((bits >> 3) / 32);
288126
+ const res = new Uint8Array(iterations * 32);
288127
+ for (let iter = 0; iter < iterations; iter++) {
288128
+ const buf = new Uint8Array(4 + secret.length + value.length);
288129
+ buf.set(uint32be(iter + 1));
288130
+ buf.set(secret, 4);
288131
+ buf.set(value, 4 + secret.length);
288132
+ res.set(await digest('sha256', buf), iter * 32);
288114
288133
  }
288115
- else if (is_key_object(privateKee)) {
288116
- privateKey = privateKee;
288134
+ return res.slice(0, bits >> 3);
288135
+ }
288136
+ async function deriveKey(publicKey, privateKey, algorithm, keyLength, apu = new Uint8Array(0), apv = new Uint8Array(0)) {
288137
+ crypto_key_checkEncCryptoKey(publicKey, 'ECDH');
288138
+ crypto_key_checkEncCryptoKey(privateKey, 'ECDH', 'deriveBits');
288139
+ const value = concat(lengthAndInput(buffer_utils_encoder.encode(algorithm)), lengthAndInput(apu), lengthAndInput(apv), uint32be(keyLength));
288140
+ let length;
288141
+ if (publicKey.algorithm.name === 'X25519') {
288142
+ length = 256;
288117
288143
  }
288118
288144
  else {
288119
- throw new TypeError(invalid_key_input(privateKee, ...is_key_like_types));
288145
+ length =
288146
+ Math.ceil(parseInt(publicKey.algorithm.namedCurve.slice(-3), 10) / 8) << 3;
288120
288147
  }
288121
- const value = buffer_utils_concat(lengthAndInput(buffer_utils_encoder.encode(algorithm)), lengthAndInput(apu), lengthAndInput(apv), uint32be(keyLength));
288122
- const sharedSecret = (0,external_node_crypto_.diffieHellman)({ privateKey, publicKey });
288148
+ const sharedSecret = new Uint8Array(await crypto.subtle.deriveBits({
288149
+ name: publicKey.algorithm.name,
288150
+ public: publicKey,
288151
+ }, privateKey, length));
288123
288152
  return concatKdf(sharedSecret, keyLength, value);
288124
288153
  }
288125
- async function generateEpk(kee) {
288126
- let key;
288127
- if (isCryptoKey(kee)) {
288128
- key = KeyObject.from(kee);
288129
- }
288130
- else if (isKeyObject(kee)) {
288131
- key = kee;
288132
- }
288133
- else {
288134
- throw new TypeError(invalidKeyInput(kee, ...types));
288135
- }
288136
- switch (key.asymmetricKeyType) {
288137
- case 'x25519':
288138
- return ecdhes_generateKeyPair('x25519');
288139
- case 'x448': {
288140
- return ecdhes_generateKeyPair('x448');
288141
- }
288142
- case 'ec': {
288143
- const namedCurve = getNamedCurve(key);
288144
- return ecdhes_generateKeyPair('ec', { namedCurve });
288145
- }
288154
+ function allowed(key) {
288155
+ switch (key.algorithm.namedCurve) {
288156
+ case 'P-256':
288157
+ case 'P-384':
288158
+ case 'P-521':
288159
+ return true;
288146
288160
  default:
288147
- throw new JOSENotSupported('Invalid or unsupported EPK');
288161
+ return key.algorithm.name === 'X25519';
288148
288162
  }
288149
288163
  }
288150
- const ecdhAllowed = (key) => ['P-256', 'P-384', 'P-521', 'X25519', 'X448'].includes(get_named_curve(key));
288151
288164
 
288152
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/lib/check_p2s.js
288165
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/pbes2kw.js
288153
288166
 
288154
- function check_p2s_checkP2s(p2s) {
288155
- if (!(p2s instanceof Uint8Array) || p2s.length < 8) {
288156
- throw new JWEInvalid('PBES2 Salt Input must be 8 or more octets');
288157
- }
288158
- }
288159
288167
 
288160
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/runtime/pbes2kw.js
288161
288168
 
288162
288169
 
288163
288170
 
288164
-
288165
-
288166
-
288167
-
288168
-
288169
-
288170
-
288171
-
288172
-
288173
- const pbkdf2 = (0,external_node_util_namespaceObject.promisify)(external_node_crypto_.pbkdf2);
288174
- function getPassword(key, alg) {
288175
- if (is_key_object(key)) {
288176
- return key.export();
288177
- }
288171
+ function pbes2kw_getCryptoKey(key, alg) {
288178
288172
  if (key instanceof Uint8Array) {
288179
- return key;
288180
- }
288181
- if (webcrypto_isCryptoKey(key)) {
288182
- checkEncCryptoKey(key, alg, 'deriveBits', 'deriveKey');
288183
- return external_node_crypto_.KeyObject.from(key).export();
288173
+ return crypto.subtle.importKey('raw', key, 'PBKDF2', false, ['deriveBits']);
288184
288174
  }
288185
- throw new TypeError(invalid_key_input(key, ...is_key_like_types, 'Uint8Array'));
288175
+ crypto_key_checkEncCryptoKey(key, alg, 'deriveBits');
288176
+ return key;
288186
288177
  }
288187
- const pbes2kw_encrypt = async (alg, key, cek, p2c = 2048, p2s = random(new Uint8Array(16))) => {
288188
- checkP2s(p2s);
288178
+ const concatSalt = (alg, p2sInput) => concat(buffer_utils_encoder.encode(alg), new Uint8Array([0]), p2sInput);
288179
+ async function pbes2kw_deriveKey(p2s, alg, p2c, key) {
288180
+ if (!(p2s instanceof Uint8Array) || p2s.length < 8) {
288181
+ throw new JWEInvalid('PBES2 Salt Input must be 8 or more octets');
288182
+ }
288189
288183
  const salt = concatSalt(alg, p2s);
288190
- const keylen = parseInt(alg.slice(13, 16), 10) >> 3;
288191
- const password = getPassword(key, alg);
288192
- const derivedKey = await pbkdf2(password, salt, p2c, keylen, `sha${alg.slice(8, 11)}`);
288193
- const encryptedKey = await wrap(alg.slice(-6), derivedKey, cek);
288194
- return { encryptedKey, p2c, p2s: base64url(p2s) };
288195
- };
288196
- const pbes2kw_decrypt = async (alg, key, encryptedKey, p2c, p2s) => {
288197
- check_p2s_checkP2s(p2s);
288198
- const salt = buffer_utils_p2s(alg, p2s);
288199
- const keylen = parseInt(alg.slice(13, 16), 10) >> 3;
288200
- const password = getPassword(key, alg);
288201
- const derivedKey = await pbkdf2(password, salt, p2c, keylen, `sha${alg.slice(8, 11)}`);
288202
- return unwrap(alg.slice(-6), derivedKey, encryptedKey);
288203
- };
288204
-
288205
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/runtime/check_key_length.js
288184
+ const keylen = parseInt(alg.slice(13, 16), 10);
288185
+ const subtleAlg = {
288186
+ hash: `SHA-${alg.slice(8, 11)}`,
288187
+ iterations: p2c,
288188
+ name: 'PBKDF2',
288189
+ salt,
288190
+ };
288191
+ const cryptoKey = await pbes2kw_getCryptoKey(key, alg);
288192
+ return new Uint8Array(await crypto.subtle.deriveBits(subtleAlg, cryptoKey, keylen));
288193
+ }
288194
+ async function pbes2kw_wrap(alg, key, cek, p2c = 2048, p2s = crypto.getRandomValues(new Uint8Array(16))) {
288195
+ const derived = await pbes2kw_deriveKey(p2s, alg, p2c, key);
288196
+ const encryptedKey = await aeskw.wrap(alg.slice(-6), derived, cek);
288197
+ return { encryptedKey, p2c, p2s: b64u(p2s) };
288198
+ }
288199
+ async function pbes2kw_unwrap(alg, key, encryptedKey, p2c, p2s) {
288200
+ const derived = await pbes2kw_deriveKey(p2s, alg, p2c, key);
288201
+ return unwrap(alg.slice(-6), derived, encryptedKey);
288202
+ }
288206
288203
 
288207
- /* harmony default export */ const check_key_length = ((key, alg) => {
288208
- let modulusLength;
288209
- try {
288210
- if (key instanceof external_node_crypto_.KeyObject) {
288211
- modulusLength = key.asymmetricKeyDetails?.modulusLength;
288204
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/check_key_length.js
288205
+ /* harmony default export */ const check_key_length = ((alg, key) => {
288206
+ if (alg.startsWith('RS') || alg.startsWith('PS')) {
288207
+ const { modulusLength } = key.algorithm;
288208
+ if (typeof modulusLength !== 'number' || modulusLength < 2048) {
288209
+ throw new TypeError(`${alg} requires key modulusLength to be 2048 bits or larger`);
288212
288210
  }
288213
- else {
288214
- modulusLength = Buffer.from(key.n, 'base64url').byteLength << 3;
288215
- }
288216
- }
288217
- catch { }
288218
- if (typeof modulusLength !== 'number' || modulusLength < 2048) {
288219
- throw new TypeError(`${alg} requires key modulusLength to be 2048 bits or larger`);
288220
288211
  }
288221
288212
  });
288222
288213
 
288223
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/runtime/rsaes.js
288224
-
288225
-
288214
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/rsaes.js
288226
288215
 
288227
288216
 
288228
288217
 
288229
-
288230
-
288231
-
288232
- const checkKey = (key, alg) => {
288233
- if (key.asymmetricKeyType !== 'rsa') {
288234
- throw new TypeError('Invalid key for this operation, its asymmetricKeyType must be rsa');
288235
- }
288236
- check_key_length(key, alg);
288237
- };
288238
- const RSA1_5 = (0,external_node_util_namespaceObject.deprecate)(() => external_node_crypto_.constants.RSA_PKCS1_PADDING, 'The RSA1_5 "alg" (JWE Algorithm) is deprecated and will be removed in the next major revision.');
288239
- const resolvePadding = (alg) => {
288240
- switch (alg) {
288241
- case 'RSA-OAEP':
288242
- case 'RSA-OAEP-256':
288243
- case 'RSA-OAEP-384':
288244
- case 'RSA-OAEP-512':
288245
- return external_node_crypto_.constants.RSA_PKCS1_OAEP_PADDING;
288246
- case 'RSA1_5':
288247
- return RSA1_5();
288248
- default:
288249
- return undefined;
288250
- }
288251
- };
288252
- const resolveOaepHash = (alg) => {
288218
+ const subtleAlgorithm = (alg) => {
288253
288219
  switch (alg) {
288254
288220
  case 'RSA-OAEP':
288255
- return 'sha1';
288256
288221
  case 'RSA-OAEP-256':
288257
- return 'sha256';
288258
288222
  case 'RSA-OAEP-384':
288259
- return 'sha384';
288260
288223
  case 'RSA-OAEP-512':
288261
- return 'sha512';
288224
+ return 'RSA-OAEP';
288262
288225
  default:
288263
- return undefined;
288226
+ throw new JOSENotSupported(`alg ${alg} is not supported either by JOSE or your javascript runtime`);
288264
288227
  }
288265
288228
  };
288266
- function rsaes_ensureKeyObject(key, alg, ...usages) {
288267
- if (is_key_object(key)) {
288268
- return key;
288269
- }
288270
- if (webcrypto_isCryptoKey(key)) {
288271
- checkEncCryptoKey(key, alg, ...usages);
288272
- return external_node_crypto_.KeyObject.from(key);
288273
- }
288274
- throw new TypeError(invalid_key_input(key, ...is_key_like_types));
288229
+ async function rsaes_encrypt(alg, key, cek) {
288230
+ checkEncCryptoKey(key, alg, 'encrypt');
288231
+ checkKeyLength(alg, key);
288232
+ return new Uint8Array(await crypto.subtle.encrypt(subtleAlgorithm(alg), key, cek));
288233
+ }
288234
+ async function rsaes_decrypt(alg, key, encryptedKey) {
288235
+ crypto_key_checkEncCryptoKey(key, alg, 'decrypt');
288236
+ check_key_length(alg, key);
288237
+ return new Uint8Array(await crypto.subtle.decrypt(subtleAlgorithm(alg), key, encryptedKey));
288275
288238
  }
288276
- const rsaes_encrypt = (alg, key, cek) => {
288277
- const padding = resolvePadding(alg);
288278
- const oaepHash = resolveOaepHash(alg);
288279
- const keyObject = rsaes_ensureKeyObject(key, alg, 'wrapKey', 'encrypt');
288280
- checkKey(keyObject, alg);
288281
- return publicEncrypt({ key: keyObject, oaepHash, padding }, cek);
288282
- };
288283
- const rsaes_decrypt = (alg, key, encryptedKey) => {
288284
- const padding = resolvePadding(alg);
288285
- const oaepHash = resolveOaepHash(alg);
288286
- const keyObject = rsaes_ensureKeyObject(key, alg, 'unwrapKey', 'decrypt');
288287
- checkKey(keyObject, alg);
288288
- return (0,external_node_crypto_.privateDecrypt)({ key: keyObject, oaepHash, padding }, encryptedKey);
288289
- };
288290
-
288291
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/runtime/normalize_key.js
288292
- /* harmony default export */ const normalize_key = ({});
288293
-
288294
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/lib/cek.js
288295
288239
 
288240
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/cek.js
288296
288241
 
288297
288242
  function cek_bitLength(alg) {
288298
288243
  switch (alg) {
@@ -288308,22 +288253,108 @@ function cek_bitLength(alg) {
288308
288253
  case 'A256CBC-HS512':
288309
288254
  return 512;
288310
288255
  default:
288311
- throw new errors_JOSENotSupported(`Unsupported JWE Algorithm: ${alg}`);
288256
+ throw new JOSENotSupported(`Unsupported JWE Algorithm: ${alg}`);
288312
288257
  }
288313
288258
  }
288314
- /* harmony default export */ const lib_cek = ((alg) => (0,external_node_crypto_.randomFillSync)(new Uint8Array(cek_bitLength(alg) >> 3)));
288259
+ /* harmony default export */ const lib_cek = ((alg) => crypto.getRandomValues(new Uint8Array(cek_bitLength(alg) >> 3)));
288315
288260
 
288316
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/runtime/jwk_to_key.js
288261
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/jwk_to_key.js
288317
288262
 
288318
- const parse = (key) => {
288319
- if (key.d) {
288320
- return (0,external_node_crypto_.createPrivateKey)({ format: 'jwk', key });
288263
+ function subtleMapping(jwk) {
288264
+ let algorithm;
288265
+ let keyUsages;
288266
+ switch (jwk.kty) {
288267
+ case 'RSA': {
288268
+ switch (jwk.alg) {
288269
+ case 'PS256':
288270
+ case 'PS384':
288271
+ case 'PS512':
288272
+ algorithm = { name: 'RSA-PSS', hash: `SHA-${jwk.alg.slice(-3)}` };
288273
+ keyUsages = jwk.d ? ['sign'] : ['verify'];
288274
+ break;
288275
+ case 'RS256':
288276
+ case 'RS384':
288277
+ case 'RS512':
288278
+ algorithm = { name: 'RSASSA-PKCS1-v1_5', hash: `SHA-${jwk.alg.slice(-3)}` };
288279
+ keyUsages = jwk.d ? ['sign'] : ['verify'];
288280
+ break;
288281
+ case 'RSA-OAEP':
288282
+ case 'RSA-OAEP-256':
288283
+ case 'RSA-OAEP-384':
288284
+ case 'RSA-OAEP-512':
288285
+ algorithm = {
288286
+ name: 'RSA-OAEP',
288287
+ hash: `SHA-${parseInt(jwk.alg.slice(-3), 10) || 1}`,
288288
+ };
288289
+ keyUsages = jwk.d ? ['decrypt', 'unwrapKey'] : ['encrypt', 'wrapKey'];
288290
+ break;
288291
+ default:
288292
+ throw new JOSENotSupported('Invalid or unsupported JWK "alg" (Algorithm) Parameter value');
288293
+ }
288294
+ break;
288295
+ }
288296
+ case 'EC': {
288297
+ switch (jwk.alg) {
288298
+ case 'ES256':
288299
+ algorithm = { name: 'ECDSA', namedCurve: 'P-256' };
288300
+ keyUsages = jwk.d ? ['sign'] : ['verify'];
288301
+ break;
288302
+ case 'ES384':
288303
+ algorithm = { name: 'ECDSA', namedCurve: 'P-384' };
288304
+ keyUsages = jwk.d ? ['sign'] : ['verify'];
288305
+ break;
288306
+ case 'ES512':
288307
+ algorithm = { name: 'ECDSA', namedCurve: 'P-521' };
288308
+ keyUsages = jwk.d ? ['sign'] : ['verify'];
288309
+ break;
288310
+ case 'ECDH-ES':
288311
+ case 'ECDH-ES+A128KW':
288312
+ case 'ECDH-ES+A192KW':
288313
+ case 'ECDH-ES+A256KW':
288314
+ algorithm = { name: 'ECDH', namedCurve: jwk.crv };
288315
+ keyUsages = jwk.d ? ['deriveBits'] : [];
288316
+ break;
288317
+ default:
288318
+ throw new JOSENotSupported('Invalid or unsupported JWK "alg" (Algorithm) Parameter value');
288319
+ }
288320
+ break;
288321
+ }
288322
+ case 'OKP': {
288323
+ switch (jwk.alg) {
288324
+ case 'Ed25519':
288325
+ case 'EdDSA':
288326
+ algorithm = { name: 'Ed25519' };
288327
+ keyUsages = jwk.d ? ['sign'] : ['verify'];
288328
+ break;
288329
+ case 'ECDH-ES':
288330
+ case 'ECDH-ES+A128KW':
288331
+ case 'ECDH-ES+A192KW':
288332
+ case 'ECDH-ES+A256KW':
288333
+ algorithm = { name: jwk.crv };
288334
+ keyUsages = jwk.d ? ['deriveBits'] : [];
288335
+ break;
288336
+ default:
288337
+ throw new JOSENotSupported('Invalid or unsupported JWK "alg" (Algorithm) Parameter value');
288338
+ }
288339
+ break;
288340
+ }
288341
+ default:
288342
+ throw new JOSENotSupported('Invalid or unsupported JWK "kty" (Key Type) Parameter value');
288321
288343
  }
288322
- return (0,external_node_crypto_.createPublicKey)({ format: 'jwk', key });
288323
- };
288324
- /* harmony default export */ const jwk_to_key = (parse);
288344
+ return { algorithm, keyUsages };
288345
+ }
288346
+ /* harmony default export */ const jwk_to_key = (async (jwk) => {
288347
+ if (!jwk.alg) {
288348
+ throw new TypeError('"alg" argument is required when "jwk.alg" is not present');
288349
+ }
288350
+ const { algorithm, keyUsages } = subtleMapping(jwk);
288351
+ const keyData = { ...jwk };
288352
+ delete keyData.alg;
288353
+ delete keyData.use;
288354
+ return crypto.subtle.importKey('jwk', keyData, algorithm, jwk.ext ?? (jwk.d ? false : true), jwk.key_ops ?? keyUsages);
288355
+ });
288325
288356
 
288326
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/key/import.js
288357
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/key/import.js
288327
288358
 
288328
288359
 
288329
288360
 
@@ -288347,11 +288378,13 @@ async function importPKCS8(pkcs8, alg, options) {
288347
288378
  }
288348
288379
  return fromPKCS8(pkcs8, alg, options);
288349
288380
  }
288350
- async function importJWK(jwk, alg) {
288351
- if (!isObject(jwk)) {
288381
+ async function importJWK(jwk, alg, options) {
288382
+ if (!is_object(jwk)) {
288352
288383
  throw new TypeError('JWK must be an object');
288353
288384
  }
288354
- alg ||= jwk.alg;
288385
+ let ext;
288386
+ alg ??= jwk.alg;
288387
+ ext ??= options?.extractable ?? jwk.ext;
288355
288388
  switch (jwk.kty) {
288356
288389
  case 'oct':
288357
288390
  if (typeof jwk.k !== 'string' || !jwk.k) {
@@ -288359,97 +288392,18 @@ async function importJWK(jwk, alg) {
288359
288392
  }
288360
288393
  return decode(jwk.k);
288361
288394
  case 'RSA':
288362
- if (jwk.oth !== undefined) {
288363
- throw new errors_JOSENotSupported('RSA JWK "oth" (Other Primes Info) Parameter value is not supported');
288395
+ if ('oth' in jwk && jwk.oth !== undefined) {
288396
+ throw new JOSENotSupported('RSA JWK "oth" (Other Primes Info) Parameter value is not supported');
288364
288397
  }
288365
288398
  case 'EC':
288366
288399
  case 'OKP':
288367
- return jwk_to_key({ ...jwk, alg });
288400
+ return jwk_to_key({ ...jwk, alg, ext });
288368
288401
  default:
288369
- throw new errors_JOSENotSupported('Unsupported "kty" (Key Type) Parameter value');
288402
+ throw new JOSENotSupported('Unsupported "kty" (Key Type) Parameter value');
288370
288403
  }
288371
288404
  }
288372
288405
 
288373
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/lib/check_key_type.js
288374
-
288375
-
288376
-
288377
- const tag = (key) => key?.[Symbol.toStringTag];
288378
- const jwkMatchesOp = (alg, key, usage) => {
288379
- if (key.use !== undefined && key.use !== 'sig') {
288380
- throw new TypeError('Invalid key for this operation, when present its use must be sig');
288381
- }
288382
- if (key.key_ops !== undefined && key.key_ops.includes?.(usage) !== true) {
288383
- throw new TypeError(`Invalid key for this operation, when present its key_ops must include ${usage}`);
288384
- }
288385
- if (key.alg !== undefined && key.alg !== alg) {
288386
- throw new TypeError(`Invalid key for this operation, when present its alg must be ${alg}`);
288387
- }
288388
- return true;
288389
- };
288390
- const symmetricTypeCheck = (alg, key, usage, allowJwk) => {
288391
- if (key instanceof Uint8Array)
288392
- return;
288393
- if (allowJwk && isJWK(key)) {
288394
- if (isSecretJWK(key) && jwkMatchesOp(alg, key, usage))
288395
- return;
288396
- throw new TypeError(`JSON Web Key for symmetric algorithms must have JWK "kty" (Key Type) equal to "oct" and the JWK "k" (Key Value) present`);
288397
- }
288398
- if (!is_key_like(key)) {
288399
- throw new TypeError(withAlg(alg, key, ...is_key_like_types, 'Uint8Array', allowJwk ? 'JSON Web Key' : null));
288400
- }
288401
- if (key.type !== 'secret') {
288402
- throw new TypeError(`${tag(key)} instances for symmetric algorithms must be of type "secret"`);
288403
- }
288404
- };
288405
- const asymmetricTypeCheck = (alg, key, usage, allowJwk) => {
288406
- if (allowJwk && isJWK(key)) {
288407
- switch (usage) {
288408
- case 'sign':
288409
- if (isPrivateJWK(key) && jwkMatchesOp(alg, key, usage))
288410
- return;
288411
- throw new TypeError(`JSON Web Key for this operation be a private JWK`);
288412
- case 'verify':
288413
- if (isPublicJWK(key) && jwkMatchesOp(alg, key, usage))
288414
- return;
288415
- throw new TypeError(`JSON Web Key for this operation be a public JWK`);
288416
- }
288417
- }
288418
- if (!is_key_like(key)) {
288419
- throw new TypeError(withAlg(alg, key, ...is_key_like_types, allowJwk ? 'JSON Web Key' : null));
288420
- }
288421
- if (key.type === 'secret') {
288422
- throw new TypeError(`${tag(key)} instances for asymmetric algorithms must not be of type "secret"`);
288423
- }
288424
- if (usage === 'sign' && key.type === 'public') {
288425
- throw new TypeError(`${tag(key)} instances for asymmetric algorithm signing must be of type "private"`);
288426
- }
288427
- if (usage === 'decrypt' && key.type === 'public') {
288428
- throw new TypeError(`${tag(key)} instances for asymmetric algorithm decryption must be of type "private"`);
288429
- }
288430
- if (key.algorithm && usage === 'verify' && key.type === 'private') {
288431
- throw new TypeError(`${tag(key)} instances for asymmetric algorithm verifying must be of type "public"`);
288432
- }
288433
- if (key.algorithm && usage === 'encrypt' && key.type === 'private') {
288434
- throw new TypeError(`${tag(key)} instances for asymmetric algorithm encryption must be of type "public"`);
288435
- }
288436
- };
288437
- function checkKeyType(allowJwk, alg, key, usage) {
288438
- const symmetric = alg.startsWith('HS') ||
288439
- alg === 'dir' ||
288440
- alg.startsWith('PBES2') ||
288441
- /^A\d{3}(?:GCM)?KW$/.test(alg);
288442
- if (symmetric) {
288443
- symmetricTypeCheck(alg, key, usage, allowJwk);
288444
- }
288445
- else {
288446
- asymmetricTypeCheck(alg, key, usage, allowJwk);
288447
- }
288448
- }
288449
- /* harmony default export */ const check_key_type = (checkKeyType.bind(undefined, false));
288450
- const checkKeyTypeWithJwk = checkKeyType.bind(undefined, true);
288451
-
288452
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/lib/aesgcmkw.js
288406
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/aesgcmkw.js
288453
288407
 
288454
288408
 
288455
288409
 
@@ -288458,17 +288412,16 @@ async function aesgcmkw_wrap(alg, key, cek, iv) {
288458
288412
  const wrapped = await encrypt(jweAlgorithm, cek, key, iv, new Uint8Array(0));
288459
288413
  return {
288460
288414
  encryptedKey: wrapped.ciphertext,
288461
- iv: base64url(wrapped.iv),
288462
- tag: base64url(wrapped.tag),
288415
+ iv: b64u(wrapped.iv),
288416
+ tag: b64u(wrapped.tag),
288463
288417
  };
288464
288418
  }
288465
288419
  async function aesgcmkw_unwrap(alg, key, encryptedKey, iv, tag) {
288466
288420
  const jweAlgorithm = alg.slice(0, 7);
288467
- return runtime_decrypt(jweAlgorithm, key, encryptedKey, iv, tag, new Uint8Array(0));
288421
+ return decrypt(jweAlgorithm, key, encryptedKey, iv, tag, new Uint8Array(0));
288468
288422
  }
288469
288423
 
288470
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/lib/decrypt_key_management.js
288471
-
288424
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/decrypt_key_management.js
288472
288425
 
288473
288426
 
288474
288427
 
@@ -288480,9 +288433,7 @@ async function aesgcmkw_unwrap(alg, key, encryptedKey, iv, tag) {
288480
288433
 
288481
288434
 
288482
288435
 
288483
- async function decryptKeyManagement(alg, key, encryptedKey, joseHeader, options) {
288484
- check_key_type(alg, key, 'decrypt');
288485
- key = (await normalize_key.normalizePrivateKey?.(key, alg)) || key;
288436
+ /* harmony default export */ const decrypt_key_management = (async (alg, key, encryptedKey, joseHeader, options) => {
288486
288437
  switch (alg) {
288487
288438
  case 'dir': {
288488
288439
  if (encryptedKey !== undefined)
@@ -288495,11 +288446,13 @@ async function decryptKeyManagement(alg, key, encryptedKey, joseHeader, options)
288495
288446
  case 'ECDH-ES+A128KW':
288496
288447
  case 'ECDH-ES+A192KW':
288497
288448
  case 'ECDH-ES+A256KW': {
288498
- if (!isObject(joseHeader.epk))
288449
+ if (!is_object(joseHeader.epk))
288499
288450
  throw new JWEInvalid(`JOSE Header "epk" (Ephemeral Public Key) missing or invalid`);
288500
- if (!ecdhAllowed(key))
288501
- throw new errors_JOSENotSupported('ECDH with the provided key is not allowed or not supported by your javascript runtime');
288451
+ is_key_like_assertCryptoKey(key);
288452
+ if (!allowed(key))
288453
+ throw new JOSENotSupported('ECDH with the provided key is not allowed or not supported by your javascript runtime');
288502
288454
  const epk = await importJWK(joseHeader.epk, alg);
288455
+ is_key_like_assertCryptoKey(epk);
288503
288456
  let partyUInfo;
288504
288457
  let partyVInfo;
288505
288458
  if (joseHeader.apu !== undefined) {
@@ -288529,13 +288482,13 @@ async function decryptKeyManagement(alg, key, encryptedKey, joseHeader, options)
288529
288482
  throw new JWEInvalid('JWE Encrypted Key missing');
288530
288483
  return unwrap(alg.slice(-6), sharedSecret, encryptedKey);
288531
288484
  }
288532
- case 'RSA1_5':
288533
288485
  case 'RSA-OAEP':
288534
288486
  case 'RSA-OAEP-256':
288535
288487
  case 'RSA-OAEP-384':
288536
288488
  case 'RSA-OAEP-512': {
288537
288489
  if (encryptedKey === undefined)
288538
288490
  throw new JWEInvalid('JWE Encrypted Key missing');
288491
+ is_key_like_assertCryptoKey(key);
288539
288492
  return rsaes_decrypt(alg, key, encryptedKey);
288540
288493
  }
288541
288494
  case 'PBES2-HS256+A128KW':
@@ -288557,7 +288510,7 @@ async function decryptKeyManagement(alg, key, encryptedKey, joseHeader, options)
288557
288510
  catch {
288558
288511
  throw new JWEInvalid('Failed to base64url decode the p2s');
288559
288512
  }
288560
- return pbes2kw_decrypt(alg, key, encryptedKey, joseHeader.p2c, p2s);
288513
+ return pbes2kw_unwrap(alg, key, encryptedKey, joseHeader.p2c, p2s);
288561
288514
  }
288562
288515
  case 'A128KW':
288563
288516
  case 'A192KW':
@@ -288592,15 +288545,14 @@ async function decryptKeyManagement(alg, key, encryptedKey, joseHeader, options)
288592
288545
  return aesgcmkw_unwrap(alg, key, encryptedKey, iv, tag);
288593
288546
  }
288594
288547
  default: {
288595
- throw new errors_JOSENotSupported('Invalid or unsupported "alg" (JWE Algorithm) header value');
288548
+ throw new JOSENotSupported('Invalid or unsupported "alg" (JWE Algorithm) header value');
288596
288549
  }
288597
288550
  }
288598
- }
288599
- /* harmony default export */ const decrypt_key_management = (decryptKeyManagement);
288551
+ });
288600
288552
 
288601
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/lib/validate_crit.js
288553
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/validate_crit.js
288602
288554
 
288603
- function validateCrit(Err, recognizedDefault, recognizedOption, protectedHeader, joseHeader) {
288555
+ /* harmony default export */ const validate_crit = ((Err, recognizedDefault, recognizedOption, protectedHeader, joseHeader) => {
288604
288556
  if (joseHeader.crit !== undefined && protectedHeader?.crit === undefined) {
288605
288557
  throw new Err('"crit" (Critical) Header Parameter MUST be integrity protected');
288606
288558
  }
@@ -288621,7 +288573,7 @@ function validateCrit(Err, recognizedDefault, recognizedOption, protectedHeader,
288621
288573
  }
288622
288574
  for (const parameter of protectedHeader.crit) {
288623
288575
  if (!recognized.has(parameter)) {
288624
- throw new errors_JOSENotSupported(`Extension Header Parameter "${parameter}" is not recognized`);
288576
+ throw new JOSENotSupported(`Extension Header Parameter "${parameter}" is not recognized`);
288625
288577
  }
288626
288578
  if (joseHeader[parameter] === undefined) {
288627
288579
  throw new Err(`Extension Header Parameter "${parameter}" is missing`);
@@ -288631,11 +288583,10 @@ function validateCrit(Err, recognizedDefault, recognizedOption, protectedHeader,
288631
288583
  }
288632
288584
  }
288633
288585
  return new Set(protectedHeader.crit);
288634
- }
288635
- /* harmony default export */ const validate_crit = (validateCrit);
288586
+ });
288636
288587
 
288637
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/lib/validate_algorithms.js
288638
- const validateAlgorithms = (option, algorithms) => {
288588
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/validate_algorithms.js
288589
+ /* harmony default export */ const validate_algorithms = ((option, algorithms) => {
288639
288590
  if (algorithms !== undefined &&
288640
288591
  (!Array.isArray(algorithms) || algorithms.some((s) => typeof s !== 'string'))) {
288641
288592
  throw new TypeError(`"${option}" option must be an array of strings`);
@@ -288644,10 +288595,320 @@ const validateAlgorithms = (option, algorithms) => {
288644
288595
  return undefined;
288645
288596
  }
288646
288597
  return new Set(algorithms);
288598
+ });
288599
+
288600
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/is_jwk.js
288601
+
288602
+ function isJWK(key) {
288603
+ return is_object(key) && typeof key.kty === 'string';
288604
+ }
288605
+ function isPrivateJWK(key) {
288606
+ return key.kty !== 'oct' && typeof key.d === 'string';
288607
+ }
288608
+ function isPublicJWK(key) {
288609
+ return key.kty !== 'oct' && typeof key.d === 'undefined';
288610
+ }
288611
+ function isSecretJWK(key) {
288612
+ return key.kty === 'oct' && typeof key.k === 'string';
288613
+ }
288614
+
288615
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/normalize_key.js
288616
+
288617
+
288618
+
288619
+
288620
+ let cache;
288621
+ const handleJWK = async (key, jwk, alg, freeze = false) => {
288622
+ cache ||= new WeakMap();
288623
+ let cached = cache.get(key);
288624
+ if (cached?.[alg]) {
288625
+ return cached[alg];
288626
+ }
288627
+ const cryptoKey = await jwk_to_key({ ...jwk, alg });
288628
+ if (freeze)
288629
+ Object.freeze(key);
288630
+ if (!cached) {
288631
+ cache.set(key, { [alg]: cryptoKey });
288632
+ }
288633
+ else {
288634
+ cached[alg] = cryptoKey;
288635
+ }
288636
+ return cryptoKey;
288637
+ };
288638
+ const handleKeyObject = (keyObject, alg) => {
288639
+ cache ||= new WeakMap();
288640
+ let cached = cache.get(keyObject);
288641
+ if (cached?.[alg]) {
288642
+ return cached[alg];
288643
+ }
288644
+ const isPublic = keyObject.type === 'public';
288645
+ const extractable = isPublic ? true : false;
288646
+ let cryptoKey;
288647
+ if (keyObject.asymmetricKeyType === 'x25519') {
288648
+ switch (alg) {
288649
+ case 'ECDH-ES':
288650
+ case 'ECDH-ES+A128KW':
288651
+ case 'ECDH-ES+A192KW':
288652
+ case 'ECDH-ES+A256KW':
288653
+ break;
288654
+ default:
288655
+ throw new TypeError('given KeyObject instance cannot be used for this algorithm');
288656
+ }
288657
+ cryptoKey = keyObject.toCryptoKey(keyObject.asymmetricKeyType, extractable, isPublic ? [] : ['deriveBits']);
288658
+ }
288659
+ if (keyObject.asymmetricKeyType === 'ed25519') {
288660
+ if (alg !== 'EdDSA' && alg !== 'Ed25519') {
288661
+ throw new TypeError('given KeyObject instance cannot be used for this algorithm');
288662
+ }
288663
+ cryptoKey = keyObject.toCryptoKey(keyObject.asymmetricKeyType, extractable, [
288664
+ isPublic ? 'verify' : 'sign',
288665
+ ]);
288666
+ }
288667
+ if (keyObject.asymmetricKeyType === 'rsa') {
288668
+ let hash;
288669
+ switch (alg) {
288670
+ case 'RSA-OAEP':
288671
+ hash = 'SHA-1';
288672
+ break;
288673
+ case 'RS256':
288674
+ case 'PS256':
288675
+ case 'RSA-OAEP-256':
288676
+ hash = 'SHA-256';
288677
+ break;
288678
+ case 'RS384':
288679
+ case 'PS384':
288680
+ case 'RSA-OAEP-384':
288681
+ hash = 'SHA-384';
288682
+ break;
288683
+ case 'RS512':
288684
+ case 'PS512':
288685
+ case 'RSA-OAEP-512':
288686
+ hash = 'SHA-512';
288687
+ break;
288688
+ default:
288689
+ throw new TypeError('given KeyObject instance cannot be used for this algorithm');
288690
+ }
288691
+ if (alg.startsWith('RSA-OAEP')) {
288692
+ return keyObject.toCryptoKey({
288693
+ name: 'RSA-OAEP',
288694
+ hash,
288695
+ }, extractable, isPublic ? ['encrypt'] : ['decrypt']);
288696
+ }
288697
+ cryptoKey = keyObject.toCryptoKey({
288698
+ name: alg.startsWith('PS') ? 'RSA-PSS' : 'RSASSA-PKCS1-v1_5',
288699
+ hash,
288700
+ }, extractable, [isPublic ? 'verify' : 'sign']);
288701
+ }
288702
+ if (keyObject.asymmetricKeyType === 'ec') {
288703
+ const nist = new Map([
288704
+ ['prime256v1', 'P-256'],
288705
+ ['secp384r1', 'P-384'],
288706
+ ['secp521r1', 'P-521'],
288707
+ ]);
288708
+ const namedCurve = nist.get(keyObject.asymmetricKeyDetails?.namedCurve);
288709
+ if (!namedCurve) {
288710
+ throw new TypeError('given KeyObject instance cannot be used for this algorithm');
288711
+ }
288712
+ if (alg === 'ES256' && namedCurve === 'P-256') {
288713
+ cryptoKey = keyObject.toCryptoKey({
288714
+ name: 'ECDSA',
288715
+ namedCurve,
288716
+ }, extractable, [isPublic ? 'verify' : 'sign']);
288717
+ }
288718
+ if (alg === 'ES384' && namedCurve === 'P-384') {
288719
+ cryptoKey = keyObject.toCryptoKey({
288720
+ name: 'ECDSA',
288721
+ namedCurve,
288722
+ }, extractable, [isPublic ? 'verify' : 'sign']);
288723
+ }
288724
+ if (alg === 'ES512' && namedCurve === 'P-521') {
288725
+ cryptoKey = keyObject.toCryptoKey({
288726
+ name: 'ECDSA',
288727
+ namedCurve,
288728
+ }, extractable, [isPublic ? 'verify' : 'sign']);
288729
+ }
288730
+ if (alg.startsWith('ECDH-ES')) {
288731
+ cryptoKey = keyObject.toCryptoKey({
288732
+ name: 'ECDH',
288733
+ namedCurve,
288734
+ }, extractable, isPublic ? [] : ['deriveBits']);
288735
+ }
288736
+ }
288737
+ if (!cryptoKey) {
288738
+ throw new TypeError('given KeyObject instance cannot be used for this algorithm');
288739
+ }
288740
+ if (!cached) {
288741
+ cache.set(keyObject, { [alg]: cryptoKey });
288742
+ }
288743
+ else {
288744
+ cached[alg] = cryptoKey;
288745
+ }
288746
+ return cryptoKey;
288647
288747
  };
288648
- /* harmony default export */ const validate_algorithms = (validateAlgorithms);
288748
+ /* harmony default export */ const normalize_key = (async (key, alg) => {
288749
+ if (key instanceof Uint8Array) {
288750
+ return key;
288751
+ }
288752
+ if (isCryptoKey(key)) {
288753
+ return key;
288754
+ }
288755
+ if (isKeyObject(key)) {
288756
+ if (key.type === 'secret') {
288757
+ return key.export();
288758
+ }
288759
+ if ('toCryptoKey' in key && typeof key.toCryptoKey === 'function') {
288760
+ try {
288761
+ return handleKeyObject(key, alg);
288762
+ }
288763
+ catch (err) {
288764
+ if (err instanceof TypeError) {
288765
+ throw err;
288766
+ }
288767
+ }
288768
+ }
288769
+ let jwk = key.export({ format: 'jwk' });
288770
+ return handleJWK(key, jwk, alg);
288771
+ }
288772
+ if (isJWK(key)) {
288773
+ if (key.k) {
288774
+ return decode(key.k);
288775
+ }
288776
+ return handleJWK(key, key, alg, true);
288777
+ }
288778
+ throw new Error('unreachable');
288779
+ });
288780
+
288781
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/lib/check_key_type.js
288782
+
288783
+
288784
+
288785
+ const tag = (key) => key?.[Symbol.toStringTag];
288786
+ const jwkMatchesOp = (alg, key, usage) => {
288787
+ if (key.use !== undefined) {
288788
+ let expected;
288789
+ switch (usage) {
288790
+ case 'sign':
288791
+ case 'verify':
288792
+ expected = 'sig';
288793
+ break;
288794
+ case 'encrypt':
288795
+ case 'decrypt':
288796
+ expected = 'enc';
288797
+ break;
288798
+ }
288799
+ if (key.use !== expected) {
288800
+ throw new TypeError(`Invalid key for this operation, its "use" must be "${expected}" when present`);
288801
+ }
288802
+ }
288803
+ if (key.alg !== undefined && key.alg !== alg) {
288804
+ throw new TypeError(`Invalid key for this operation, its "alg" must be "${alg}" when present`);
288805
+ }
288806
+ if (Array.isArray(key.key_ops)) {
288807
+ let expectedKeyOp;
288808
+ switch (true) {
288809
+ case usage === 'sign' || usage === 'verify':
288810
+ case alg === 'dir':
288811
+ case alg.includes('CBC-HS'):
288812
+ expectedKeyOp = usage;
288813
+ break;
288814
+ case alg.startsWith('PBES2'):
288815
+ expectedKeyOp = 'deriveBits';
288816
+ break;
288817
+ case /^A\d{3}(?:GCM)?(?:KW)?$/.test(alg):
288818
+ if (!alg.includes('GCM') && alg.endsWith('KW')) {
288819
+ expectedKeyOp = usage === 'encrypt' ? 'wrapKey' : 'unwrapKey';
288820
+ }
288821
+ else {
288822
+ expectedKeyOp = usage;
288823
+ }
288824
+ break;
288825
+ case usage === 'encrypt' && alg.startsWith('RSA'):
288826
+ expectedKeyOp = 'wrapKey';
288827
+ break;
288828
+ case usage === 'decrypt':
288829
+ expectedKeyOp = alg.startsWith('RSA') ? 'unwrapKey' : 'deriveBits';
288830
+ break;
288831
+ }
288832
+ if (expectedKeyOp && key.key_ops?.includes?.(expectedKeyOp) === false) {
288833
+ throw new TypeError(`Invalid key for this operation, its "key_ops" must include "${expectedKeyOp}" when present`);
288834
+ }
288835
+ }
288836
+ return true;
288837
+ };
288838
+ const symmetricTypeCheck = (alg, key, usage) => {
288839
+ if (key instanceof Uint8Array)
288840
+ return;
288841
+ if (isJWK(key)) {
288842
+ if (isSecretJWK(key) && jwkMatchesOp(alg, key, usage))
288843
+ return;
288844
+ throw new TypeError(`JSON Web Key for symmetric algorithms must have JWK "kty" (Key Type) equal to "oct" and the JWK "k" (Key Value) present`);
288845
+ }
288846
+ if (!is_key_like(key)) {
288847
+ throw new TypeError(withAlg(alg, key, 'CryptoKey', 'KeyObject', 'JSON Web Key', 'Uint8Array'));
288848
+ }
288849
+ if (key.type !== 'secret') {
288850
+ throw new TypeError(`${tag(key)} instances for symmetric algorithms must be of type "secret"`);
288851
+ }
288852
+ };
288853
+ const asymmetricTypeCheck = (alg, key, usage) => {
288854
+ if (isJWK(key)) {
288855
+ switch (usage) {
288856
+ case 'decrypt':
288857
+ case 'sign':
288858
+ if (isPrivateJWK(key) && jwkMatchesOp(alg, key, usage))
288859
+ return;
288860
+ throw new TypeError(`JSON Web Key for this operation be a private JWK`);
288861
+ case 'encrypt':
288862
+ case 'verify':
288863
+ if (isPublicJWK(key) && jwkMatchesOp(alg, key, usage))
288864
+ return;
288865
+ throw new TypeError(`JSON Web Key for this operation be a public JWK`);
288866
+ }
288867
+ }
288868
+ if (!is_key_like(key)) {
288869
+ throw new TypeError(withAlg(alg, key, 'CryptoKey', 'KeyObject', 'JSON Web Key'));
288870
+ }
288871
+ if (key.type === 'secret') {
288872
+ throw new TypeError(`${tag(key)} instances for asymmetric algorithms must not be of type "secret"`);
288873
+ }
288874
+ if (key.type === 'public') {
288875
+ switch (usage) {
288876
+ case 'sign':
288877
+ throw new TypeError(`${tag(key)} instances for asymmetric algorithm signing must be of type "private"`);
288878
+ case 'decrypt':
288879
+ throw new TypeError(`${tag(key)} instances for asymmetric algorithm decryption must be of type "private"`);
288880
+ default:
288881
+ break;
288882
+ }
288883
+ }
288884
+ if (key.type === 'private') {
288885
+ switch (usage) {
288886
+ case 'verify':
288887
+ throw new TypeError(`${tag(key)} instances for asymmetric algorithm verifying must be of type "public"`);
288888
+ case 'encrypt':
288889
+ throw new TypeError(`${tag(key)} instances for asymmetric algorithm encryption must be of type "public"`);
288890
+ default:
288891
+ break;
288892
+ }
288893
+ }
288894
+ };
288895
+ /* harmony default export */ const check_key_type = ((alg, key, usage) => {
288896
+ const symmetric = alg.startsWith('HS') ||
288897
+ alg === 'dir' ||
288898
+ alg.startsWith('PBES2') ||
288899
+ /^A(?:128|192|256)(?:GCM)?(?:KW)?$/.test(alg) ||
288900
+ /^A(?:128|192|256)CBC-HS(?:256|384|512)$/.test(alg);
288901
+ if (symmetric) {
288902
+ symmetricTypeCheck(alg, key, usage);
288903
+ }
288904
+ else {
288905
+ asymmetricTypeCheck(alg, key, usage);
288906
+ }
288907
+ });
288908
+
288909
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/jwe/flattened/decrypt.js
288910
+
288649
288911
 
288650
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/jwe/flattened/decrypt.js
288651
288912
 
288652
288913
 
288653
288914
 
@@ -288659,7 +288920,7 @@ const validateAlgorithms = (option, algorithms) => {
288659
288920
 
288660
288921
 
288661
288922
  async function flattenedDecrypt(jwe, key, options) {
288662
- if (!isObject(jwe)) {
288923
+ if (!is_object(jwe)) {
288663
288924
  throw new JWEInvalid('Flattened JWE must be an object');
288664
288925
  }
288665
288926
  if (jwe.protected === undefined && jwe.header === undefined && jwe.unprotected === undefined) {
@@ -288683,10 +288944,10 @@ async function flattenedDecrypt(jwe, key, options) {
288683
288944
  if (jwe.aad !== undefined && typeof jwe.aad !== 'string') {
288684
288945
  throw new JWEInvalid('JWE AAD incorrect type');
288685
288946
  }
288686
- if (jwe.header !== undefined && !isObject(jwe.header)) {
288947
+ if (jwe.header !== undefined && !is_object(jwe.header)) {
288687
288948
  throw new JWEInvalid('JWE Shared Unprotected Header incorrect type');
288688
288949
  }
288689
- if (jwe.unprotected !== undefined && !isObject(jwe.unprotected)) {
288950
+ if (jwe.unprotected !== undefined && !is_object(jwe.unprotected)) {
288690
288951
  throw new JWEInvalid('JWE Per-Recipient Unprotected Header incorrect type');
288691
288952
  }
288692
288953
  let parsedProt;
@@ -288709,7 +288970,7 @@ async function flattenedDecrypt(jwe, key, options) {
288709
288970
  };
288710
288971
  validate_crit(JWEInvalid, new Map(), options?.crit, parsedProt, joseHeader);
288711
288972
  if (joseHeader.zip !== undefined) {
288712
- throw new errors_JOSENotSupported('JWE "zip" (Compression Algorithm) Header Parameter is not supported.');
288973
+ throw new JOSENotSupported('JWE "zip" (Compression Algorithm) Header Parameter is not supported.');
288713
288974
  }
288714
288975
  const { alg, enc } = joseHeader;
288715
288976
  if (typeof alg !== 'string' || !alg) {
@@ -288742,12 +289003,14 @@ async function flattenedDecrypt(jwe, key, options) {
288742
289003
  key = await key(parsedProt, jwe);
288743
289004
  resolvedKey = true;
288744
289005
  }
289006
+ check_key_type(alg === 'dir' ? enc : alg, key, 'decrypt');
289007
+ const k = await normalize_key(key, alg);
288745
289008
  let cek;
288746
289009
  try {
288747
- cek = await decrypt_key_management(alg, key, encryptedKey, joseHeader, options);
289010
+ cek = await decrypt_key_management(alg, k, encryptedKey, joseHeader, options);
288748
289011
  }
288749
289012
  catch (err) {
288750
- if (err instanceof TypeError || err instanceof JWEInvalid || err instanceof errors_JOSENotSupported) {
289013
+ if (err instanceof TypeError || err instanceof JWEInvalid || err instanceof JOSENotSupported) {
288751
289014
  throw err;
288752
289015
  }
288753
289016
  cek = lib_cek(enc);
@@ -288773,7 +289036,7 @@ async function flattenedDecrypt(jwe, key, options) {
288773
289036
  const protectedHeader = buffer_utils_encoder.encode(jwe.protected ?? '');
288774
289037
  let additionalData;
288775
289038
  if (jwe.aad !== undefined) {
288776
- additionalData = buffer_utils_concat(protectedHeader, buffer_utils_encoder.encode('.'), buffer_utils_encoder.encode(jwe.aad));
289039
+ additionalData = concat(protectedHeader, buffer_utils_encoder.encode('.'), buffer_utils_encoder.encode(jwe.aad));
288777
289040
  }
288778
289041
  else {
288779
289042
  additionalData = protectedHeader;
@@ -288785,7 +289048,7 @@ async function flattenedDecrypt(jwe, key, options) {
288785
289048
  catch {
288786
289049
  throw new JWEInvalid('Failed to base64url decode the ciphertext');
288787
289050
  }
288788
- const plaintext = await runtime_decrypt(enc, cek, ciphertext, iv, tag, additionalData);
289051
+ const plaintext = await decrypt(enc, cek, ciphertext, iv, tag, additionalData);
288789
289052
  const result = { plaintext };
288790
289053
  if (jwe.protected !== undefined) {
288791
289054
  result.protectedHeader = parsedProt;
@@ -288805,12 +289068,12 @@ async function flattenedDecrypt(jwe, key, options) {
288805
289068
  result.unprotectedHeader = jwe.header;
288806
289069
  }
288807
289070
  if (resolvedKey) {
288808
- return { ...result, key };
289071
+ return { ...result, key: k };
288809
289072
  }
288810
289073
  return result;
288811
289074
  }
288812
289075
 
288813
- ;// CONCATENATED MODULE: ../../node_modules/jose/dist/node/esm/jwe/compact/decrypt.js
289076
+ ;// CONCATENATED MODULE: ../../node_modules/jose/dist/webapi/jwe/compact/decrypt.js
288814
289077
 
288815
289078
 
288816
289079
 
@@ -288847,7 +289110,7 @@ let headers;
288847
289110
  let build_USER_AGENT;
288848
289111
  if (typeof navigator === 'undefined' || !navigator.userAgent?.startsWith?.('Mozilla/5.0 ')) {
288849
289112
  const NAME = 'openid-client';
288850
- const VERSION = 'v6.1.7';
289113
+ const VERSION = 'v6.3.4';
288851
289114
  build_USER_AGENT = `${NAME}/${VERSION}`;
288852
289115
  headers = { 'user-agent': build_USER_AGENT };
288853
289116
  }
@@ -289172,11 +289435,10 @@ function selectCryptoKeyForDecryption(keys, alg, kid, epk) {
289172
289435
  return key.key;
289173
289436
  }
289174
289437
  async function build_decrypt(keys, jwe, contentEncryptionAlgorithms, keyManagementAlgorithms) {
289175
- return build_decoder.decode((await compactDecrypt(jwe, async (header) => {
289438
+ return build_decoder.decode((await compactDecrypt(jwe, (header) => {
289176
289439
  const { kid, alg, epk } = header;
289177
289440
  return selectCryptoKeyForDecryption(keys, alg, kid, epk);
289178
- }, { keyManagementAlgorithms, contentEncryptionAlgorithms })
289179
- .catch((err) => {
289441
+ }, { keyManagementAlgorithms, contentEncryptionAlgorithms }).catch((err) => {
289180
289442
  if (err instanceof JOSEError) {
289181
289443
  throw e('decryption failed', err, 'OAUTH_DECRYPTION_FAILED');
289182
289444
  }
@@ -289382,6 +289644,80 @@ async function initiateDeviceAuthorization(config, parameters) {
289382
289644
  .then((response) => processDeviceAuthorizationResponse(as, c, response))
289383
289645
  .catch(errorHandler);
289384
289646
  }
289647
+ async function initiateBackchannelAuthentication(config, parameters) {
289648
+ checkConfig(config);
289649
+ const { as, c, auth, fetch, tlsOnly, timeout } = build_int(config);
289650
+ return backchannelAuthenticationRequest(as, c, auth, parameters, {
289651
+ [customFetch]: fetch,
289652
+ [allowInsecureRequests]: !tlsOnly,
289653
+ headers: new Headers(headers),
289654
+ signal: build_signal(timeout),
289655
+ })
289656
+ .then((response) => processBackchannelAuthenticationResponse(as, c, response))
289657
+ .catch(errorHandler);
289658
+ }
289659
+ async function pollBackchannelAuthenticationGrant(config, backchannelAuthenticationResponse, parameters, options) {
289660
+ checkConfig(config);
289661
+ parameters = new URLSearchParams(parameters);
289662
+ let interval = backchannelAuthenticationResponse.interval ?? 5;
289663
+ const pollingSignal = options?.signal ??
289664
+ AbortSignal.timeout(backchannelAuthenticationResponse.expires_in * 1000);
289665
+ try {
289666
+ pollingSignal.throwIfAborted();
289667
+ }
289668
+ catch (err) {
289669
+ errorHandler(err);
289670
+ }
289671
+ await wait(interval);
289672
+ const { as, c, auth, fetch, tlsOnly, nonRepudiation, timeout, decrypt } = build_int(config);
289673
+ const response = await backchannelAuthenticationGrantRequest(as, c, auth, backchannelAuthenticationResponse.auth_req_id, {
289674
+ [customFetch]: fetch,
289675
+ [allowInsecureRequests]: !tlsOnly,
289676
+ additionalParameters: parameters,
289677
+ DPoP: options?.DPoP,
289678
+ headers: new Headers(headers),
289679
+ signal: pollingSignal.aborted ? pollingSignal : build_signal(timeout),
289680
+ })
289681
+ .catch(errorHandler);
289682
+ const p = processBackchannelAuthenticationGrantResponse(as, c, response, {
289683
+ [jweDecrypt]: decrypt,
289684
+ });
289685
+ let result;
289686
+ try {
289687
+ result = await p;
289688
+ }
289689
+ catch (err) {
289690
+ if (retryable(err, options)) {
289691
+ return pollBackchannelAuthenticationGrant(config, {
289692
+ ...backchannelAuthenticationResponse,
289693
+ interval,
289694
+ }, parameters, {
289695
+ ...options,
289696
+ signal: pollingSignal,
289697
+ flag: retry,
289698
+ });
289699
+ }
289700
+ if (err instanceof ResponseBodyError) {
289701
+ switch (err.error) {
289702
+ case 'slow_down':
289703
+ interval += 5;
289704
+ case 'authorization_pending':
289705
+ return pollBackchannelAuthenticationGrant(config, {
289706
+ ...backchannelAuthenticationResponse,
289707
+ interval,
289708
+ }, parameters, {
289709
+ ...options,
289710
+ signal: pollingSignal,
289711
+ flag: undefined,
289712
+ });
289713
+ }
289714
+ }
289715
+ errorHandler(err);
289716
+ }
289717
+ result.id_token && (await nonRepudiation?.(response));
289718
+ addHelpers(result);
289719
+ return result;
289720
+ }
289385
289721
  function build_allowInsecureRequests(config) {
289386
289722
  build_int(config).tlsOnly = false;
289387
289723
  }