@netforbpo/aws-cdk-aws-connect-lib 0.2.3 → 0.2.4

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.
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
- var _a;
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
3
  exports.PhoneNumber = exports.PhoneNumberType = void 0;
5
4
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
5
  const aws_cdk_lib_1 = require("aws-cdk-lib");
6
+ const metadata_resource_1 = require("aws-cdk-lib/core/lib/metadata-resource");
7
7
  var PhoneNumberType;
8
8
  (function (PhoneNumberType) {
9
9
  PhoneNumberType["TOLL_FREE"] = "TOLL_FREE";
@@ -15,8 +15,11 @@ var PhoneNumberType;
15
15
  PhoneNumberType["SHORT_CODE"] = "SHORT_CODE";
16
16
  })(PhoneNumberType || (exports.PhoneNumberType = PhoneNumberType = {}));
17
17
  class PhoneNumber extends aws_cdk_lib_1.Resource {
18
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.PhoneNumber", version: "0.2.4" };
19
+ resource;
18
20
  constructor(scope, id, props) {
19
21
  super(scope, id);
22
+ (0, metadata_resource_1.addConstructMetadata)(this, props);
20
23
  let targetArn;
21
24
  if ('instanceArn' in props.target) {
22
25
  targetArn = props.target.instanceArn;
@@ -27,7 +30,7 @@ class PhoneNumber extends aws_cdk_lib_1.Resource {
27
30
  else {
28
31
  throw new Error('Invalid target');
29
32
  }
30
- this.phoneNumber = new aws_cdk_lib_1.aws_connect.CfnPhoneNumber(this, 'PhoneNumber', {
33
+ this.resource = new aws_cdk_lib_1.aws_connect.CfnPhoneNumber(this, 'PhoneNumber', {
31
34
  targetArn,
32
35
  description: props.description,
33
36
  countryCode: props.countryCode,
@@ -37,10 +40,8 @@ class PhoneNumber extends aws_cdk_lib_1.Resource {
37
40
  });
38
41
  }
39
42
  get phoneNumberArn() {
40
- return this.phoneNumber.attrPhoneNumberArn;
43
+ return this.resource.attrPhoneNumberArn;
41
44
  }
42
45
  }
43
46
  exports.PhoneNumber = PhoneNumber;
44
- _a = JSII_RTTI_SYMBOL_1;
45
- PhoneNumber[_a] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.PhoneNumber", version: "0.2.3" };
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGhvbmVfbnVtYmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3Bob25lX251bWJlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZDQUlxQjtBQVlyQixJQUFZLGVBUVg7QUFSRCxXQUFZLGVBQWU7SUFDekIsMENBQXVCLENBQUE7SUFDdkIsOEJBQVcsQ0FBQTtJQUNYLGdDQUFhLENBQUE7SUFDYixvQ0FBaUIsQ0FBQTtJQUNqQixzREFBbUMsQ0FBQTtJQUNuQyxvREFBaUMsQ0FBQTtJQUNqQyw0Q0FBeUIsQ0FBQTtBQUMzQixDQUFDLEVBUlcsZUFBZSwrQkFBZixlQUFlLFFBUTFCO0FBNkJELE1BQWEsV0FBWSxTQUFRLHNCQUFRO0lBR3ZDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBdUI7UUFDL0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLFNBQVMsQ0FBQztRQUNkLElBQUksYUFBYSxJQUFJLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNsQyxTQUFTLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDdkMsQ0FBQzthQUFNLElBQUksNkJBQTZCLElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3pELFNBQVMsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLDJCQUEyQixDQUFDO1FBQ3ZELENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3BDLENBQUM7UUFFRCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUkseUJBQU8sQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRTtZQUNqRSxTQUFTO1lBQ1QsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzlCLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztZQUM5QixNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07WUFDcEIsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJO1lBQ2hCLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxvQkFBb0I7U0FDakQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsa0JBQWtCLENBQUM7SUFDN0MsQ0FBQzs7QUEzQkgsa0NBNEJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYXdzX2Nvbm5lY3QgYXMgY29ubmVjdCxcbiAgSVJlc291cmNlLFxuICBSZXNvdXJjZSxcbn0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBJSW5zdGFuY2UgfSBmcm9tICcuL2luc3RhbmNlJztcbmltcG9ydCB7IElUcmFmZmljRGlzdHJpYnV0aW9uR3JvdXAgfSBmcm9tICcuL3RyYWZmaWNfZGlzdHJpYnV0aW9uX2dyb3VwJztcblxuZXhwb3J0IGludGVyZmFjZSBJUGhvbmVOdW1iZXIgZXh0ZW5kcyBJUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgcGhvbmUgbnVtYmVyLlxuICAgKi9cbiAgcmVhZG9ubHkgcGhvbmVOdW1iZXJBcm46IHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gUGhvbmVOdW1iZXJUeXBlIHtcbiAgVE9MTF9GUkVFID0gJ1RPTExfRlJFRScsXG4gIERJRCA9ICdESUQnLFxuICBVSUZOID0gJ1VJRk4nLFxuICBTSEFSRUQgPSAnU0hBUkVEJyxcbiAgVEhJUkRfUEFSVFlfRElEID0gJ1RISVJEX1BBUlRZX0RJRCcsXG4gIFRISVJEX1BBUlRZX1RGID0gJ1RISVJEX1BBUlRZX1RGJyxcbiAgU0hPUlRfQ09ERSA9ICdTSE9SVF9DT0RFJyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaG9uZU51bWJlclByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBBV1MgY29ubmVjdCBpbnN0YW5jZSBvciB0cmFmZmljIGRpc3RyaWJ1dGlvbiBub2RlIHRvIGF0dGFjaCB0aGUgcGhvbmUgbnVtYmVyIHRvLlxuICAgKi9cbiAgcmVhZG9ubHkgdGFyZ2V0OiBJSW5zdGFuY2UgfCBJVHJhZmZpY0Rpc3RyaWJ1dGlvbkdyb3VwO1xuICAvKipcbiAgICogVGhlIHBob25lIG51bWJlciB0eXBlLlxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZT86IFBob25lTnVtYmVyVHlwZTtcbiAgLyoqXG4gICAqIFRoZSBJU08gMi1sZXR0ZXIgY291bnRyeSBjb2RlIG9mIHRoZSBwaG9uZSBudW1iZXIuXG4gICAqL1xuICByZWFkb25seSBjb3VudHJ5Q29kZT86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBwaG9uZSBudW1iZXIgcHJlZml4IHdpdGggdGhlICsgY291bnRyeSBjb2RlXG4gICAqL1xuICByZWFkb25seSBwcmVmaXg/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBIGRlc2NyaXB0aW9uIG9mIHRoZSBwaG9uZSBudW1iZXIuXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIHRoZSBBUk4gb2YgYW4gZXh0ZXJuYWxseSBpbXBvcnRlZCBwaG9uZSBudW1iZXIgKGUuZy4gZnJvbSBBV1MgRW5kIFVzZXIgTWVzc2FnaW5nKVxuICAgKi9cbiAgcmVhZG9ubHkgc291cmNlUGhvbmVOdW1iZXJBcm4/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBQaG9uZU51bWJlciBleHRlbmRzIFJlc291cmNlIGltcGxlbWVudHMgSVBob25lTnVtYmVyIHtcbiAgcmVhZG9ubHkgcGhvbmVOdW1iZXI6IGNvbm5lY3QuQ2ZuUGhvbmVOdW1iZXI7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFBob25lTnVtYmVyUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgbGV0IHRhcmdldEFybjtcbiAgICBpZiAoJ2luc3RhbmNlQXJuJyBpbiBwcm9wcy50YXJnZXQpIHtcbiAgICAgIHRhcmdldEFybiA9IHByb3BzLnRhcmdldC5pbnN0YW5jZUFybjtcbiAgICB9IGVsc2UgaWYgKCd0cmFmZmljRGlzdHJpYnV0aW9uR3JvdXBBcm4nIGluIHByb3BzLnRhcmdldCkge1xuICAgICAgdGFyZ2V0QXJuID0gcHJvcHMudGFyZ2V0LnRyYWZmaWNEaXN0cmlidXRpb25Hcm91cEFybjtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHRhcmdldCcpO1xuICAgIH1cblxuICAgIHRoaXMucGhvbmVOdW1iZXIgPSBuZXcgY29ubmVjdC5DZm5QaG9uZU51bWJlcih0aGlzLCAnUGhvbmVOdW1iZXInLCB7XG4gICAgICB0YXJnZXRBcm4sXG4gICAgICBkZXNjcmlwdGlvbjogcHJvcHMuZGVzY3JpcHRpb24sXG4gICAgICBjb3VudHJ5Q29kZTogcHJvcHMuY291bnRyeUNvZGUsXG4gICAgICBwcmVmaXg6IHByb3BzLnByZWZpeCxcbiAgICAgIHR5cGU6IHByb3BzLnR5cGUsXG4gICAgICBzb3VyY2VQaG9uZU51bWJlckFybjogcHJvcHMuc291cmNlUGhvbmVOdW1iZXJBcm4sXG4gICAgfSk7XG4gIH1cblxuICBnZXQgcGhvbmVOdW1iZXJBcm4oKSB7XG4gICAgcmV0dXJuIHRoaXMucGhvbmVOdW1iZXIuYXR0clBob25lTnVtYmVyQXJuO1xuICB9XG59XG4iXX0=
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGhvbmVfbnVtYmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3Bob25lX251bWJlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsNkNBSXFCO0FBQ3JCLDhFQUE4RTtBQVk5RSxJQUFZLGVBUVg7QUFSRCxXQUFZLGVBQWU7SUFDekIsMENBQXVCLENBQUE7SUFDdkIsOEJBQVcsQ0FBQTtJQUNYLGdDQUFhLENBQUE7SUFDYixvQ0FBaUIsQ0FBQTtJQUNqQixzREFBbUMsQ0FBQTtJQUNuQyxvREFBaUMsQ0FBQTtJQUNqQyw0Q0FBeUIsQ0FBQTtBQUMzQixDQUFDLEVBUlcsZUFBZSwrQkFBZixlQUFlLFFBUTFCO0FBNkJELE1BQWEsV0FBWSxTQUFRLHNCQUFROztJQUN0QixRQUFRLENBQXlCO0lBRWxELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBdUI7UUFDL0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFBLHdDQUFvQixFQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUVsQyxJQUFJLFNBQVMsQ0FBQztRQUNkLElBQUksYUFBYSxJQUFJLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNsQyxTQUFTLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDdkMsQ0FBQzthQUFNLElBQUksNkJBQTZCLElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3pELFNBQVMsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLDJCQUEyQixDQUFDO1FBQ3ZELENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3BDLENBQUM7UUFFRCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUkseUJBQU8sQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRTtZQUM5RCxTQUFTO1lBQ1QsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzlCLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztZQUM5QixNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07WUFDcEIsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJO1lBQ2hCLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxvQkFBb0I7U0FDakQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUM7SUFDMUMsQ0FBQzs7QUE3Qkgsa0NBOEJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYXdzX2Nvbm5lY3QgYXMgY29ubmVjdCxcbiAgSVJlc291cmNlLFxuICBSZXNvdXJjZSxcbn0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgYWRkQ29uc3RydWN0TWV0YWRhdGEgfSBmcm9tICdhd3MtY2RrLWxpYi9jb3JlL2xpYi9tZXRhZGF0YS1yZXNvdXJjZSc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IElJbnN0YW5jZSB9IGZyb20gJy4vaW5zdGFuY2UnO1xuaW1wb3J0IHsgSVRyYWZmaWNEaXN0cmlidXRpb25Hcm91cCB9IGZyb20gJy4vdHJhZmZpY19kaXN0cmlidXRpb25fZ3JvdXAnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElQaG9uZU51bWJlciBleHRlbmRzIElSZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBwaG9uZSBudW1iZXIuXG4gICAqL1xuICByZWFkb25seSBwaG9uZU51bWJlckFybjogc3RyaW5nO1xufVxuXG5leHBvcnQgZW51bSBQaG9uZU51bWJlclR5cGUge1xuICBUT0xMX0ZSRUUgPSAnVE9MTF9GUkVFJyxcbiAgRElEID0gJ0RJRCcsXG4gIFVJRk4gPSAnVUlGTicsXG4gIFNIQVJFRCA9ICdTSEFSRUQnLFxuICBUSElSRF9QQVJUWV9ESUQgPSAnVEhJUkRfUEFSVFlfRElEJyxcbiAgVEhJUkRfUEFSVFlfVEYgPSAnVEhJUkRfUEFSVFlfVEYnLFxuICBTSE9SVF9DT0RFID0gJ1NIT1JUX0NPREUnLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBob25lTnVtYmVyUHJvcHMge1xuICAvKipcbiAgICogVGhlIEFXUyBjb25uZWN0IGluc3RhbmNlIG9yIHRyYWZmaWMgZGlzdHJpYnV0aW9uIG5vZGUgdG8gYXR0YWNoIHRoZSBwaG9uZSBudW1iZXIgdG8uXG4gICAqL1xuICByZWFkb25seSB0YXJnZXQ6IElJbnN0YW5jZSB8IElUcmFmZmljRGlzdHJpYnV0aW9uR3JvdXA7XG4gIC8qKlxuICAgKiBUaGUgcGhvbmUgbnVtYmVyIHR5cGUuXG4gICAqL1xuICByZWFkb25seSB0eXBlPzogUGhvbmVOdW1iZXJUeXBlO1xuICAvKipcbiAgICogVGhlIElTTyAyLWxldHRlciBjb3VudHJ5IGNvZGUgb2YgdGhlIHBob25lIG51bWJlci5cbiAgICovXG4gIHJlYWRvbmx5IGNvdW50cnlDb2RlPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIHBob25lIG51bWJlciBwcmVmaXggd2l0aCB0aGUgKyBjb3VudHJ5IGNvZGVcbiAgICovXG4gIHJlYWRvbmx5IHByZWZpeD86IHN0cmluZztcbiAgLyoqXG4gICAqIEEgZGVzY3JpcHRpb24gb2YgdGhlIHBob25lIG51bWJlci5cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogdGhlIEFSTiBvZiBhbiBleHRlcm5hbGx5IGltcG9ydGVkIHBob25lIG51bWJlciAoZS5nLiBmcm9tIEFXUyBFbmQgVXNlciBNZXNzYWdpbmcpXG4gICAqL1xuICByZWFkb25seSBzb3VyY2VQaG9uZU51bWJlckFybj86IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIFBob25lTnVtYmVyIGV4dGVuZHMgUmVzb3VyY2UgaW1wbGVtZW50cyBJUGhvbmVOdW1iZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IHJlc291cmNlOiBjb25uZWN0LkNmblBob25lTnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBQaG9uZU51bWJlclByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGFkZENvbnN0cnVjdE1ldGFkYXRhKHRoaXMsIHByb3BzKTtcblxuICAgIGxldCB0YXJnZXRBcm47XG4gICAgaWYgKCdpbnN0YW5jZUFybicgaW4gcHJvcHMudGFyZ2V0KSB7XG4gICAgICB0YXJnZXRBcm4gPSBwcm9wcy50YXJnZXQuaW5zdGFuY2VBcm47XG4gICAgfSBlbHNlIGlmICgndHJhZmZpY0Rpc3RyaWJ1dGlvbkdyb3VwQXJuJyBpbiBwcm9wcy50YXJnZXQpIHtcbiAgICAgIHRhcmdldEFybiA9IHByb3BzLnRhcmdldC50cmFmZmljRGlzdHJpYnV0aW9uR3JvdXBBcm47XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCB0YXJnZXQnKTtcbiAgICB9XG5cbiAgICB0aGlzLnJlc291cmNlID0gbmV3IGNvbm5lY3QuQ2ZuUGhvbmVOdW1iZXIodGhpcywgJ1Bob25lTnVtYmVyJywge1xuICAgICAgdGFyZ2V0QXJuLFxuICAgICAgZGVzY3JpcHRpb246IHByb3BzLmRlc2NyaXB0aW9uLFxuICAgICAgY291bnRyeUNvZGU6IHByb3BzLmNvdW50cnlDb2RlLFxuICAgICAgcHJlZml4OiBwcm9wcy5wcmVmaXgsXG4gICAgICB0eXBlOiBwcm9wcy50eXBlLFxuICAgICAgc291cmNlUGhvbmVOdW1iZXJBcm46IHByb3BzLnNvdXJjZVBob25lTnVtYmVyQXJuLFxuICAgIH0pO1xuICB9XG5cbiAgZ2V0IHBob25lTnVtYmVyQXJuKCkge1xuICAgIHJldHVybiB0aGlzLnJlc291cmNlLmF0dHJQaG9uZU51bWJlckFybjtcbiAgfVxufVxuIl19
package/lib/queue.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { aws_connect as connect, IResource, Resource } from 'aws-cdk-lib';
1
+ import { IResource, Resource } from 'aws-cdk-lib';
2
2
  import { Construct } from 'constructs';
3
3
  import { IContactFlow } from './contact_flow';
4
4
  import { IEmailAddress } from './email_address';
@@ -45,10 +45,18 @@ export interface QueueProps {
45
45
  readonly maxQueueSize?: number;
46
46
  readonly outboundCallerConfig?: QueueOutboundCallerConfig;
47
47
  readonly outboundEmail?: IEmailAddress;
48
- readonly quickConnects: IQuickConnect[];
48
+ readonly additionalEmailAddresses?: IEmailAddress[];
49
+ readonly quickConnects?: IQuickConnect[];
50
+ }
51
+ export interface QueueLookupOptions {
52
+ readonly instanceArn: string;
53
+ readonly queueArn?: string;
54
+ readonly queueId?: string;
55
+ readonly name?: string;
49
56
  }
50
57
  export declare class Queue extends Resource implements IQueue {
51
- readonly queue: connect.CfnQueue;
58
+ static fromLookup(scope: Construct, id: string, options: QueueLookupOptions): IQueue;
59
+ private readonly resource;
52
60
  readonly instance: IInstance;
53
61
  readonly hoursOfOperation: IHoursOfOperation;
54
62
  constructor(scope: Construct, id: string, props: QueueProps);
package/lib/queue.js CHANGED
@@ -1,20 +1,101 @@
1
1
  "use strict";
2
- var _a;
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
3
35
  Object.defineProperty(exports, "__esModule", { value: true });
4
36
  exports.Queue = exports.QueueStatus = void 0;
5
37
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
38
  const aws_cdk_lib_1 = require("aws-cdk-lib");
39
+ const cxschema = __importStar(require("aws-cdk-lib/cloud-assembly-schema"));
40
+ const helpers_internal_1 = require("aws-cdk-lib/core/lib/helpers-internal");
41
+ const metadata_resource_1 = require("aws-cdk-lib/core/lib/metadata-resource");
7
42
  var QueueStatus;
8
43
  (function (QueueStatus) {
9
44
  QueueStatus["ENABLED"] = "ENABLED";
10
45
  QueueStatus["DISABLED"] = "DISABLED";
11
46
  })(QueueStatus || (exports.QueueStatus = QueueStatus = {}));
12
47
  class Queue extends aws_cdk_lib_1.Resource {
48
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.Queue", version: "0.2.4" };
49
+ static fromLookup(scope, id, options) {
50
+ if (aws_cdk_lib_1.Token.isUnresolved(options.name)
51
+ || aws_cdk_lib_1.Token.isUnresolved(options.instanceArn)
52
+ || aws_cdk_lib_1.Token.isUnresolved(options.queueId)
53
+ || aws_cdk_lib_1.Token.isUnresolved(options.queueArn)) {
54
+ throw new aws_cdk_lib_1.ValidationError((0, helpers_internal_1.lit) `Arguments`, 'All arguments to Queue.fromLookup() must be concrete (no Tokens)', scope);
55
+ }
56
+ const filter = {};
57
+ filter.resourceModel = {
58
+ InstanceArn: options.instanceArn,
59
+ };
60
+ if (options.queueArn) {
61
+ filter.exactIdentifier = options.queueArn;
62
+ }
63
+ else if (options.queueId) {
64
+ filter.exactIdentifier = `${options.instanceArn}/queue/${options.queueId}`;
65
+ }
66
+ if (options.name) {
67
+ filter.propertyMatch ||= {};
68
+ filter.propertyMatch.Name = options.name;
69
+ }
70
+ const response = aws_cdk_lib_1.ContextProvider.getValue(scope, {
71
+ provider: cxschema.ContextProvider.CC_API_PROVIDER,
72
+ props: {
73
+ typeName: 'AWS::Connect::Queue',
74
+ ...filter,
75
+ propertiesToReturn: ['QueueArn', 'Type', 'Name'],
76
+ expectedMatchCount: 'exactly-one',
77
+ },
78
+ dummyValue: undefined,
79
+ }).value;
80
+ let instance = undefined;
81
+ if (response && response[0]) {
82
+ instance = {
83
+ instanceArn: options.instanceArn,
84
+ queueArn: response[0].QueueArn,
85
+ hoursOfOperationName: response[0].Name,
86
+ };
87
+ }
88
+ return new LookedUpQueue(scope, id, instance ?? DUMMY_QUEUE_PROPS, instance === undefined);
89
+ }
90
+ resource;
91
+ instance;
92
+ hoursOfOperation;
13
93
  constructor(scope, id, props) {
14
94
  super(scope, id);
95
+ (0, metadata_resource_1.addConstructMetadata)(this, props);
15
96
  this.instance = props.instance;
16
97
  this.hoursOfOperation = props.hoursOfOperation;
17
- this.queue = new aws_cdk_lib_1.aws_connect.CfnQueue(this, 'Queue', {
98
+ this.resource = new aws_cdk_lib_1.aws_connect.CfnQueue(this, 'Queue', {
18
99
  instanceArn: this.instance.instanceArn,
19
100
  hoursOfOperationArn: this.hoursOfOperation.hoursOfOperationArn,
20
101
  name: props.name,
@@ -28,15 +109,36 @@ class Queue extends aws_cdk_lib_1.Resource {
28
109
  outboundEmailConfig: props.outboundEmail && {
29
110
  outboundEmailAddressId: props.outboundEmail.emailAddressArn,
30
111
  },
31
- quickConnectArns: props.quickConnects.map(qc => qc.quickConnectArn),
112
+ additionalEmailAddresses: props.additionalEmailAddresses?.map(ae => ({
113
+ emailAddressArn: ae.emailAddressArn,
114
+ })),
115
+ quickConnectArns: props.quickConnects?.map(qc => qc.quickConnectArn),
32
116
  status: props.status ?? QueueStatus.ENABLED,
33
117
  });
34
118
  }
35
119
  get queueArn() {
36
- return this.queue.attrQueueArn;
120
+ return this.resource.attrQueueArn;
37
121
  }
38
122
  }
39
123
  exports.Queue = Queue;
40
- _a = JSII_RTTI_SYMBOL_1;
41
- Queue[_a] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.Queue", version: "0.2.3" };
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVldWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcXVldWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2Q0FJcUI7QUFhckIsSUFBWSxXQUdYO0FBSEQsV0FBWSxXQUFXO0lBQ3JCLGtDQUFtQixDQUFBO0lBQ25CLG9DQUFxQixDQUFBO0FBQ3ZCLENBQUMsRUFIVyxXQUFXLDJCQUFYLFdBQVcsUUFHdEI7QUFzQ0QsTUFBYSxLQUFNLFNBQVEsc0JBQVE7SUFLakMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFpQjtRQUN6RCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQztRQUMvQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLGdCQUFnQixDQUFDO1FBRS9DLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSx5QkFBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFO1lBQy9DLFdBQVcsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVc7WUFDdEMsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLG1CQUFtQjtZQUM5RCxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7WUFDaEIsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzlCLFdBQVcsRUFBRSxLQUFLLENBQUMsWUFBWTtZQUMvQixvQkFBb0IsRUFBRSxLQUFLLENBQUMsb0JBQW9CLElBQUk7Z0JBQ2xELG9CQUFvQixFQUFFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZO2dCQUM3RCx5QkFBeUIsRUFBRSxLQUFLLENBQUMsb0JBQW9CLENBQUMsY0FBYyxDQUFDLGNBQWM7Z0JBQ25GLGVBQWUsRUFBRSxLQUFLLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLGNBQWM7YUFDaEU7WUFDRCxtQkFBbUIsRUFBRSxLQUFLLENBQUMsYUFBYSxJQUFJO2dCQUMxQyxzQkFBc0IsRUFBRSxLQUFLLENBQUMsYUFBYSxDQUFDLGVBQWU7YUFDNUQ7WUFDRCxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxlQUFlLENBQUM7WUFDbkUsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNLElBQUksV0FBVyxDQUFDLE9BQU87U0FDNUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUM7SUFDakMsQ0FBQzs7QUFoQ0gsc0JBaUNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYXdzX2Nvbm5lY3QgYXMgY29ubmVjdCxcbiAgSVJlc291cmNlLFxuICBSZXNvdXJjZSxcbn0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBJQ29udGFjdEZsb3cgfSBmcm9tICcuL2NvbnRhY3RfZmxvdyc7XG5pbXBvcnQgeyBJRW1haWxBZGRyZXNzIH0gZnJvbSAnLi9lbWFpbF9hZGRyZXNzJztcbmltcG9ydCB7IElIb3Vyc09mT3BlcmF0aW9uIH0gZnJvbSAnLi9ob3Vyc19vZl9vcGVyYXRpb24nO1xuaW1wb3J0IHsgSUluc3RhbmNlIH0gZnJvbSAnLi9pbnN0YW5jZSc7XG5pbXBvcnQgeyBJUGhvbmVOdW1iZXIgfSBmcm9tICcuL3Bob25lX251bWJlcic7XG5pbXBvcnQgeyBJUXVpY2tDb25uZWN0IH0gZnJvbSAnLi9xdWlja19jb25uZWN0JztcblxuZXhwb3J0IGludGVyZmFjZSBJUXVldWUgZXh0ZW5kcyBJUmVzb3VyY2Uge1xuICByZWFkb25seSBxdWV1ZUFybjogc3RyaW5nO1xufVxuXG5leHBvcnQgZW51bSBRdWV1ZVN0YXR1cyB7XG4gIEVOQUJMRUQgPSAnRU5BQkxFRCcsXG4gIERJU0FCTEVEID0gJ0RJU0FCTEVEJyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBRdWV1ZU91dGJvdW5kQ2FsbGVyQ29uZmlnIHtcbiAgcmVhZG9ubHkgY2FsbGVySWROYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGNhbGxlcklkTnVtYmVyOiBJUGhvbmVOdW1iZXI7XG4gIHJlYWRvbmx5IGZsb3c6IElDb250YWN0Rmxvdztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBRdWV1ZVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBBV1MgY29ubmVjdCBpbnN0YW5jZSB0byBhdHRhY2ggdGhlIHF1ZXVlIHRvLlxuICAgKi9cbiAgcmVhZG9ubHkgaW5zdGFuY2U6IElJbnN0YW5jZTtcbiAgLyoqXG4gICAqIFRoZSBob3VycyBvZiBvcGVyYXRpb24gdG8gYXNzb2NpYXRlIHdpdGggdGhlIHF1ZXVlLlxuICAgKi9cbiAgcmVhZG9ubHkgaG91cnNPZk9wZXJhdGlvbjogSUhvdXJzT2ZPcGVyYXRpb247XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgaG91cnMgb2Ygb3BlcmF0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogQSBkZXNjcmlwdGlvbiBvZiB0aGUgcXVldWUuXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBzdGF0dXMgb2YgdGhlIHF1ZXVlLiBEZWZhdWx0IFF1ZXVlU3RhdHMuRU5BQkxFRFxuICAgKi9cbiAgcmVhZG9ubHkgc3RhdHVzPzogUXVldWVTdGF0dXM7XG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgY29udGFjdHMgdGhhdCBjYW4gYmUgaW4gdGhlIHF1ZXVlIGJlZm9yZSBpdCBpcyBjb25zaWRlcmVkIGZ1bGwgKGRlZmF1bHQgMC91bmxpbWl0ZWQpLlxuICAgKi9cbiAgcmVhZG9ubHkgbWF4UXVldWVTaXplPzogbnVtYmVyO1xuICByZWFkb25seSBvdXRib3VuZENhbGxlckNvbmZpZz86IFF1ZXVlT3V0Ym91bmRDYWxsZXJDb25maWc7XG4gIHJlYWRvbmx5IG91dGJvdW5kRW1haWw/OiBJRW1haWxBZGRyZXNzO1xuICByZWFkb25seSBxdWlja0Nvbm5lY3RzOiBJUXVpY2tDb25uZWN0W107XG59XG5cbmV4cG9ydCBjbGFzcyBRdWV1ZSBleHRlbmRzIFJlc291cmNlIGltcGxlbWVudHMgSVF1ZXVlIHtcbiAgcmVhZG9ubHkgcXVldWU6IGNvbm5lY3QuQ2ZuUXVldWU7XG4gIHJlYWRvbmx5IGluc3RhbmNlOiBJSW5zdGFuY2U7XG4gIHJlYWRvbmx5IGhvdXJzT2ZPcGVyYXRpb246IElIb3Vyc09mT3BlcmF0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBRdWV1ZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIHRoaXMuaW5zdGFuY2UgPSBwcm9wcy5pbnN0YW5jZTtcbiAgICB0aGlzLmhvdXJzT2ZPcGVyYXRpb24gPSBwcm9wcy5ob3Vyc09mT3BlcmF0aW9uO1xuXG4gICAgdGhpcy5xdWV1ZSA9IG5ldyBjb25uZWN0LkNmblF1ZXVlKHRoaXMsICdRdWV1ZScsIHtcbiAgICAgIGluc3RhbmNlQXJuOiB0aGlzLmluc3RhbmNlLmluc3RhbmNlQXJuLFxuICAgICAgaG91cnNPZk9wZXJhdGlvbkFybjogdGhpcy5ob3Vyc09mT3BlcmF0aW9uLmhvdXJzT2ZPcGVyYXRpb25Bcm4sXG4gICAgICBuYW1lOiBwcm9wcy5uYW1lLFxuICAgICAgZGVzY3JpcHRpb246IHByb3BzLmRlc2NyaXB0aW9uLFxuICAgICAgbWF4Q29udGFjdHM6IHByb3BzLm1heFF1ZXVlU2l6ZSxcbiAgICAgIG91dGJvdW5kQ2FsbGVyQ29uZmlnOiBwcm9wcy5vdXRib3VuZENhbGxlckNvbmZpZyAmJiB7XG4gICAgICAgIG91dGJvdW5kQ2FsbGVySWROYW1lOiBwcm9wcy5vdXRib3VuZENhbGxlckNvbmZpZy5jYWxsZXJJZE5hbWUsXG4gICAgICAgIG91dGJvdW5kQ2FsbGVySWROdW1iZXJBcm46IHByb3BzLm91dGJvdW5kQ2FsbGVyQ29uZmlnLmNhbGxlcklkTnVtYmVyLnBob25lTnVtYmVyQXJuLFxuICAgICAgICBvdXRib3VuZEZsb3dBcm46IHByb3BzLm91dGJvdW5kQ2FsbGVyQ29uZmlnLmZsb3cuY29udGFjdEZsb3dBcm4sXG4gICAgICB9LFxuICAgICAgb3V0Ym91bmRFbWFpbENvbmZpZzogcHJvcHMub3V0Ym91bmRFbWFpbCAmJiB7XG4gICAgICAgIG91dGJvdW5kRW1haWxBZGRyZXNzSWQ6IHByb3BzLm91dGJvdW5kRW1haWwuZW1haWxBZGRyZXNzQXJuLFxuICAgICAgfSxcbiAgICAgIHF1aWNrQ29ubmVjdEFybnM6IHByb3BzLnF1aWNrQ29ubmVjdHMubWFwKHFjID0+IHFjLnF1aWNrQ29ubmVjdEFybiksXG4gICAgICBzdGF0dXM6IHByb3BzLnN0YXR1cyA/PyBRdWV1ZVN0YXR1cy5FTkFCTEVELFxuICAgIH0pO1xuICB9XG5cbiAgZ2V0IHF1ZXVlQXJuKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucXVldWUuYXR0clF1ZXVlQXJuO1xuICB9XG59XG4iXX0=
124
+ const DUMMY_QUEUE_PROPS = {
125
+ instanceArn: 'instance-arn',
126
+ queueArn: 'queue-arn',
127
+ queueName: 'queue-name',
128
+ };
129
+ class LookedUpQueue extends aws_cdk_lib_1.Resource {
130
+ instanceArn;
131
+ queueArn;
132
+ incompleteDefinition;
133
+ constructor(scope, id, props, isIncomplete) {
134
+ super(scope, id, {
135
+ region: props.region,
136
+ account: props.ownerAccountId,
137
+ });
138
+ (0, metadata_resource_1.addConstructMetadata)(this, props);
139
+ this.instanceArn = props.instanceArn;
140
+ this.queueArn = props.queueArn;
141
+ this.incompleteDefinition = isIncomplete;
142
+ }
143
+ }
144
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVldWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcXVldWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZDQUlxQjtBQUNyQiw0RUFBOEQ7QUFDOUQsNEVBQTREO0FBQzVELDhFQUE4RTtBQWE5RSxJQUFZLFdBR1g7QUFIRCxXQUFZLFdBQVc7SUFDckIsa0NBQW1CLENBQUE7SUFDbkIsb0NBQXFCLENBQUE7QUFDdkIsQ0FBQyxFQUhXLFdBQVcsMkJBQVgsV0FBVyxRQUd0QjtBQThDRCxNQUFhLEtBQU0sU0FBUSxzQkFBUTs7SUFDMUIsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxPQUEyQjtRQUNoRixJQUFJLG1CQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7ZUFDL0IsbUJBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztlQUN2QyxtQkFBSyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO2VBQ25DLG1CQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQzFDLE1BQU0sSUFBSSw2QkFBZSxDQUFDLElBQUEsc0JBQUcsRUFBQSxXQUFXLEVBQUUsa0VBQWtFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDdkgsQ0FBQztRQUVELE1BQU0sTUFBTSxHQUFRLEVBQUUsQ0FBQztRQUV2QixNQUFNLENBQUMsYUFBYSxHQUFHO1lBQ3JCLFdBQVcsRUFBRSxPQUFPLENBQUMsV0FBVztTQUNqQyxDQUFDO1FBQ0YsSUFBSSxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDckIsTUFBTSxDQUFDLGVBQWUsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDO1FBQzVDLENBQUM7YUFBTSxJQUFJLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUMzQixN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S0FBSyxDQUFDLGFBQWEsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsZUFBZSxDQUFDO1lBQ3BFLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTSxJQUFJLFdBQVcsQ0FBQyxPQUFPO1NBQzVDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDO0lBQ3BDLENBQUM7O0FBbEZILHNCQW1GQztBQUVELE1BQU0saUJBQWlCLEdBQUc7SUFDeEIsV0FBVyxFQUFFLGNBQWM7SUFDM0IsUUFBUSxFQUFFLFdBQVc7SUFDckIsU0FBUyxFQUFFLFlBQVk7Q0FDeEIsQ0FBQztBQUVGLE1BQU0sYUFBYyxTQUFRLHNCQUFRO0lBQ2xCLFdBQVcsQ0FBUztJQUNwQixRQUFRLENBQVM7SUFDakIsb0JBQW9CLENBQVU7SUFFOUMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFVLEVBQUUsWUFBcUI7UUFDekUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDZixNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07WUFDcEIsT0FBTyxFQUFFLEtBQUssQ0FBQyxjQUFjO1NBQzlCLENBQUMsQ0FBQztRQUVILElBQUEsd0NBQW9CLEVBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRWxDLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQztRQUNyQyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUM7UUFDL0IsSUFBSSxDQUFDLG9CQUFvQixHQUFHLFlBQVksQ0FBQztJQUMzQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBhd3NfY29ubmVjdCBhcyBjb25uZWN0LCBDb250ZXh0UHJvdmlkZXIsXG4gIElSZXNvdXJjZSxcbiAgUmVzb3VyY2UsIFRva2VuLCBWYWxpZGF0aW9uRXJyb3IsXG59IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCAqIGFzIGN4c2NoZW1hIGZyb20gJ2F3cy1jZGstbGliL2Nsb3VkLWFzc2VtYmx5LXNjaGVtYSc7XG5pbXBvcnQgeyBsaXQgfSBmcm9tICdhd3MtY2RrLWxpYi9jb3JlL2xpYi9oZWxwZXJzLWludGVybmFsJztcbmltcG9ydCB7IGFkZENvbnN0cnVjdE1ldGFkYXRhIH0gZnJvbSAnYXdzLWNkay1saWIvY29yZS9saWIvbWV0YWRhdGEtcmVzb3VyY2UnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBJQ29udGFjdEZsb3cgfSBmcm9tICcuL2NvbnRhY3RfZmxvdyc7XG5pbXBvcnQgeyBJRW1haWxBZGRyZXNzIH0gZnJvbSAnLi9lbWFpbF9hZGRyZXNzJztcbmltcG9ydCB7IElIb3Vyc09mT3BlcmF0aW9uIH0gZnJvbSAnLi9ob3Vyc19vZl9vcGVyYXRpb24nO1xuaW1wb3J0IHsgSUluc3RhbmNlIH0gZnJvbSAnLi9pbnN0YW5jZSc7XG5pbXBvcnQgeyBJUGhvbmVOdW1iZXIgfSBmcm9tICcuL3Bob25lX251bWJlcic7XG5pbXBvcnQgeyBJUXVpY2tDb25uZWN0IH0gZnJvbSAnLi9xdWlja19jb25uZWN0JztcblxuZXhwb3J0IGludGVyZmFjZSBJUXVldWUgZXh0ZW5kcyBJUmVzb3VyY2Uge1xuICByZWFkb25seSBxdWV1ZUFybjogc3RyaW5nO1xufVxuXG5leHBvcnQgZW51bSBRdWV1ZVN0YXR1cyB7XG4gIEVOQUJMRUQgPSAnRU5BQkxFRCcsXG4gIERJU0FCTEVEID0gJ0RJU0FCTEVEJyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBRdWV1ZU91dGJvdW5kQ2FsbGVyQ29uZmlnIHtcbiAgcmVhZG9ubHkgY2FsbGVySWROYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGNhbGxlcklkTnVtYmVyOiBJUGhvbmVOdW1iZXI7XG4gIHJlYWRvbmx5IGZsb3c6IElDb250YWN0Rmxvdztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBRdWV1ZVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBBV1MgY29ubmVjdCBpbnN0YW5jZSB0byBhdHRhY2ggdGhlIHF1ZXVlIHRvLlxuICAgKi9cbiAgcmVhZG9ubHkgaW5zdGFuY2U6IElJbnN0YW5jZTtcbiAgLyoqXG4gICAqIFRoZSBob3VycyBvZiBvcGVyYXRpb24gdG8gYXNzb2NpYXRlIHdpdGggdGhlIHF1ZXVlLlxuICAgKi9cbiAgcmVhZG9ubHkgaG91cnNPZk9wZXJhdGlvbjogSUhvdXJzT2ZPcGVyYXRpb247XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgaG91cnMgb2Ygb3BlcmF0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogQSBkZXNjcmlwdGlvbiBvZiB0aGUgcXVldWUuXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBzdGF0dXMgb2YgdGhlIHF1ZXVlLiBEZWZhdWx0IFF1ZXVlU3RhdHMuRU5BQkxFRFxuICAgKi9cbiAgcmVhZG9ubHkgc3RhdHVzPzogUXVldWVTdGF0dXM7XG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgY29udGFjdHMgdGhhdCBjYW4gYmUgaW4gdGhlIHF1ZXVlIGJlZm9yZSBpdCBpcyBjb25zaWRlcmVkIGZ1bGwgKGRlZmF1bHQgMC91bmxpbWl0ZWQpLlxuICAgKi9cbiAgcmVhZG9ubHkgbWF4UXVldWVTaXplPzogbnVtYmVyO1xuICByZWFkb25seSBvdXRib3VuZENhbGxlckNvbmZpZz86IFF1ZXVlT3V0Ym91bmRDYWxsZXJDb25maWc7XG4gIHJlYWRvbmx5IG91dGJvdW5kRW1haWw/OiBJRW1haWxBZGRyZXNzO1xuICByZWFkb25seSBhZGRpdGlvbmFsRW1haWxBZGRyZXNzZXM/OiBJRW1haWxBZGRyZXNzW107XG4gIHJlYWRvbmx5IHF1aWNrQ29ubmVjdHM/OiBJUXVpY2tDb25uZWN0W107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUXVldWVMb29rdXBPcHRpb25zIHtcbiAgcmVhZG9ubHkgaW5zdGFuY2VBcm46IHN0cmluZztcbiAgcmVhZG9ubHkgcXVldWVBcm4/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHF1ZXVlSWQ/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBRdWV1ZSBleHRlbmRzIFJlc291cmNlIGltcGxlbWVudHMgSVF1ZXVlIHtcbiAgcHVibGljIHN0YXRpYyBmcm9tTG9va3VwKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIG9wdGlvbnM6IFF1ZXVlTG9va3VwT3B0aW9ucyk6IElRdWV1ZSB7XG4gICAgaWYgKFRva2VuLmlzVW5yZXNvbHZlZChvcHRpb25zLm5hbWUpXG4gICAgICB8fCBUb2tlbi5pc1VucmVzb2x2ZWQob3B0aW9ucy5pbnN0YW5jZUFybilcbiAgICAgIHx8IFRva2VuLmlzVW5yZXNvbHZlZChvcHRpb25zLnF1ZXVlSWQpXG4gICAgICB8fCBUb2tlbi5pc1VucmVzb2x2ZWQob3B0aW9ucy5xdWV1ZUFybikpIHtcbiAgICAgIHRocm93IG5ldyBWYWxpZGF0aW9uRXJyb3IobGl0YEFyZ3VtZW50c2AsICdBbGwgYXJndW1lbnRzIHRvIFF1ZXVlLmZyb21Mb29rdXAoKSBtdXN0IGJlIGNvbmNyZXRlIChubyBUb2tlbnMpJywgc2NvcGUpO1xuICAgIH1cblxuICAgIGNvbnN0IGZpbHRlcjogYW55ID0ge307XG5cbiAgICBmaWx0ZXIucmVzb3VyY2VNb2RlbCA9IHtcbiAgICAgIEluc3RhbmNlQXJuOiBvcHRpb25zLmluc3RhbmNlQXJuLFxuICAgIH07XG4gICAgaWYgKG9wdGlvbnMucXVldWVBcm4pIHtcbiAgICAgIGZpbHRlci5leGFjdElkZW50aWZpZXIgPSBvcHRpb25zLnF1ZXVlQXJuO1xuICAgIH0gZWxzZSBpZiAob3B0aW9ucy5xdWV1ZUlkKSB7XG4gICAgICBmaWx0ZXIuZXhhY3RJZGVudGlmaWVyID0gYCR7b3B0aW9ucy5pbnN0YW5jZUFybn0vcXVldWUvJHtvcHRpb25zLnF1ZXVlSWR9YDtcbiAgICB9XG4gICAgaWYgKG9wdGlvbnMubmFtZSkge1xuICAgICAgZmlsdGVyLnByb3BlcnR5TWF0Y2ggfHw9IHt9O1xuICAgICAgZmlsdGVyLnByb3BlcnR5TWF0Y2guTmFtZSA9IG9wdGlvbnMubmFtZTtcbiAgICB9XG5cbiAgICBjb25zdCByZXNwb25zZTogeyBba2V5OiBzdHJpbmddOiBhbnkgfVtdID0gQ29udGV4dFByb3ZpZGVyLmdldFZhbHVlKHNjb3BlLCB7XG4gICAgICBwcm92aWRlcjogY3hzY2hlbWEuQ29udGV4dFByb3ZpZGVyLkNDX0FQSV9QUk9WSURFUixcbiAgICAgIHByb3BzOiB7XG4gICAgICAgIHR5cGVOYW1lOiAnQVdTOjpDb25uZWN0OjpRdWV1ZScsXG4gICAgICAgIC4uLmZpbHRlcixcbiAgICAgICAgcHJvcGVydGllc1RvUmV0dXJuOiBbJ1F1ZXVlQXJuJywgJ1R5cGUnLCAnTmFtZSddLFxuICAgICAgICBleHBlY3RlZE1hdGNoQ291bnQ6ICdleGFjdGx5LW9uZScsXG4gICAgICB9IGFzIGN4c2NoZW1hLkNjQXBpQ29udGV4dFF1ZXJ5LFxuICAgICAgZHVtbXlWYWx1ZTogdW5kZWZpbmVkLFxuICAgIH0pLnZhbHVlO1xuXG4gICAgbGV0IGluc3RhbmNlID0gdW5kZWZpbmVkO1xuICAgIGlmIChyZXNwb25zZSAmJiByZXNwb25zZVswXSkge1xuICAgICAgaW5zdGFuY2UgPSB7XG4gICAgICAgIGluc3RhbmNlQXJuOiBvcHRpb25zLmluc3RhbmNlQXJuLFxuICAgICAgICBxdWV1ZUFybjogcmVzcG9uc2VbMF0uUXVldWVBcm4sXG4gICAgICAgIGhvdXJzT2ZPcGVyYXRpb25OYW1lOiByZXNwb25zZVswXS5OYW1lLFxuICAgICAgfTtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBMb29rZWRVcFF1ZXVlKHNjb3BlLCBpZCwgaW5zdGFuY2UgPz8gRFVNTVlfUVVFVUVfUFJPUFMsIGluc3RhbmNlID09PSB1bmRlZmluZWQpO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSByZXNvdXJjZTogY29ubmVjdC5DZm5RdWV1ZTtcbiAgcmVhZG9ubHkgaW5zdGFuY2U6IElJbnN0YW5jZTtcbiAgcmVhZG9ubHkgaG91cnNPZk9wZXJhdGlvbjogSUhvdXJzT2ZPcGVyYXRpb247XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFF1ZXVlUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgYWRkQ29uc3RydWN0TWV0YWRhdGEodGhpcywgcHJvcHMpO1xuXG4gICAgdGhpcy5pbnN0YW5jZSA9IHByb3BzLmluc3RhbmNlO1xuICAgIHRoaXMuaG91cnNPZk9wZXJhdGlvbiA9IHByb3BzLmhvdXJzT2ZPcGVyYXRpb247XG5cbiAgICB0aGlzLnJlc291cmNlID0gbmV3IGNvbm5lY3QuQ2ZuUXVldWUodGhpcywgJ1F1ZXVlJywge1xuICAgICAgaW5zdGFuY2VBcm46IHRoaXMuaW5zdGFuY2UuaW5zdGFuY2VBcm4sXG4gICAgICBob3Vyc09mT3BlcmF0aW9uQXJuOiB0aGlzLmhvdXJzT2ZPcGVyYXRpb24uaG91cnNPZk9wZXJhdGlvbkFybixcbiAgICAgIG5hbWU6IHByb3BzLm5hbWUsXG4gICAgICBkZXNjcmlwdGlvbjogcHJvcHMuZGVzY3JpcHRpb24sXG4gICAgICBtYXhDb250YWN0czogcHJvcHMubWF4UXVldWVTaXplLFxuICAgICAgb3V0Ym91bmRDYWxsZXJDb25maWc6IHByb3BzLm91dGJvdW5kQ2FsbGVyQ29uZmlnICYmIHtcbiAgICAgICAgb3V0Ym91bmRDYWxsZXJJZE5hbWU6IHByb3BzLm91dGJvdW5kQ2FsbGVyQ29uZmlnLmNhbGxlcklkTmFtZSxcbiAgICAgICAgb3V0Ym91bmRDYWxsZXJJZE51bWJlckFybjogcHJvcHMub3V0Ym91bmRDYWxsZXJDb25maWcuY2FsbGVySWROdW1iZXIucGhvbmVOdW1iZXJBcm4sXG4gICAgICAgIG91dGJvdW5kRmxvd0FybjogcHJvcHMub3V0Ym91bmRDYWxsZXJDb25maWcuZmxvdy5jb250YWN0Rmxvd0FybixcbiAgICAgIH0sXG4gICAgICBvdXRib3VuZEVtYWlsQ29uZmlnOiBwcm9wcy5vdXRib3VuZEVtYWlsICYmIHtcbiAgICAgICAgb3V0Ym91bmRFbWFpbEFkZHJlc3NJZDogcHJvcHMub3V0Ym91bmRFbWFpbC5lbWFpbEFkZHJlc3NBcm4sXG4gICAgICB9LFxuICAgICAgYWRkaXRpb25hbEVtYWlsQWRkcmVzc2VzOiBwcm9wcy5hZGRpdGlvbmFsRW1haWxBZGRyZXNzZXM/Lm1hcChhZSA9PiAoe1xuICAgICAgICBlbWFpbEFkZHJlc3NBcm46IGFlLmVtYWlsQWRkcmVzc0FybixcbiAgICAgIH0pKSxcbiAgICAgIHF1aWNrQ29ubmVjdEFybnM6IHByb3BzLnF1aWNrQ29ubmVjdHM/Lm1hcChxYyA9PiBxYy5xdWlja0Nvbm5lY3RBcm4pLFxuICAgICAgc3RhdHVzOiBwcm9wcy5zdGF0dXMgPz8gUXVldWVTdGF0dXMuRU5BQkxFRCxcbiAgICB9KTtcbiAgfVxuXG4gIGdldCBxdWV1ZUFybigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnJlc291cmNlLmF0dHJRdWV1ZUFybjtcbiAgfVxufVxuXG5jb25zdCBEVU1NWV9RVUVVRV9QUk9QUyA9IHtcbiAgaW5zdGFuY2VBcm46ICdpbnN0YW5jZS1hcm4nLFxuICBxdWV1ZUFybjogJ3F1ZXVlLWFybicsXG4gIHF1ZXVlTmFtZTogJ3F1ZXVlLW5hbWUnLFxufTtcblxuY2xhc3MgTG9va2VkVXBRdWV1ZSBleHRlbmRzIFJlc291cmNlIGltcGxlbWVudHMgSVF1ZXVlIHtcbiAgcHVibGljIHJlYWRvbmx5IGluc3RhbmNlQXJuOiBzdHJpbmc7XG4gIHB1YmxpYyByZWFkb25seSBxdWV1ZUFybjogc3RyaW5nO1xuICBwdWJsaWMgcmVhZG9ubHkgaW5jb21wbGV0ZURlZmluaXRpb246IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IGFueSwgaXNJbmNvbXBsZXRlOiBib29sZWFuKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICByZWdpb246IHByb3BzLnJlZ2lvbixcbiAgICAgIGFjY291bnQ6IHByb3BzLm93bmVyQWNjb3VudElkLFxuICAgIH0pO1xuXG4gICAgYWRkQ29uc3RydWN0TWV0YWRhdGEodGhpcywgcHJvcHMpO1xuXG4gICAgdGhpcy5pbnN0YW5jZUFybiA9IHByb3BzLmluc3RhbmNlQXJuO1xuICAgIHRoaXMucXVldWVBcm4gPSBwcm9wcy5xdWV1ZUFybjtcbiAgICB0aGlzLmluY29tcGxldGVEZWZpbml0aW9uID0gaXNJbmNvbXBsZXRlO1xuICB9XG59Il19
@@ -1,4 +1,4 @@
1
- import { aws_connect as connect, IResource, Resource } from 'aws-cdk-lib';
1
+ import { IResource, Resource } from 'aws-cdk-lib';
2
2
  import { Construct } from 'constructs';
3
3
  import { IContactFlow } from './contact_flow';
4
4
  import { IInstance } from './instance';
@@ -56,7 +56,7 @@ export interface QuickConnectProps {
56
56
  readonly userConfig?: QuickConnectUserConfig;
57
57
  }
58
58
  export declare class QuickConnect extends Resource implements IQuickConnect {
59
- readonly quickConnect: connect.CfnQuickConnect;
59
+ private readonly resource;
60
60
  constructor(scope: Construct, id: string, props: QuickConnectProps);
61
61
  private buildQuickConnect;
62
62
  get quickConnectArn(): string;
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
- var _a;
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
3
  exports.QuickConnect = exports.QuickConnectType = void 0;
5
4
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
5
  const aws_cdk_lib_1 = require("aws-cdk-lib");
6
+ const metadata_resource_1 = require("aws-cdk-lib/core/lib/metadata-resource");
7
7
  var QuickConnectType;
8
8
  (function (QuickConnectType) {
9
9
  QuickConnectType["PHONE_NUMBER"] = "PHONE_NUMBER";
@@ -11,9 +11,12 @@ var QuickConnectType;
11
11
  QuickConnectType["USER"] = "USER";
12
12
  })(QuickConnectType || (exports.QuickConnectType = QuickConnectType = {}));
13
13
  class QuickConnect extends aws_cdk_lib_1.Resource {
14
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.QuickConnect", version: "0.2.4" };
15
+ resource;
14
16
  constructor(scope, id, props) {
15
17
  super(scope, id);
16
- this.quickConnect = new aws_cdk_lib_1.aws_connect.CfnQuickConnect(this, 'QuickConnect', {
18
+ (0, metadata_resource_1.addConstructMetadata)(this, props);
19
+ this.resource = new aws_cdk_lib_1.aws_connect.CfnQuickConnect(this, 'QuickConnect', {
17
20
  instanceArn: props.instance.instanceArn,
18
21
  name: props.name,
19
22
  description: props.description,
@@ -61,10 +64,8 @@ class QuickConnect extends aws_cdk_lib_1.Resource {
61
64
  }
62
65
  }
63
66
  get quickConnectArn() {
64
- return this.quickConnect.attrQuickConnectArn;
67
+ return this.resource.attrQuickConnectArn;
65
68
  }
66
69
  }
67
70
  exports.QuickConnect = QuickConnect;
68
- _a = JSII_RTTI_SYMBOL_1;
69
- QuickConnect[_a] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.QuickConnect", version: "0.2.3" };
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVpY2tfY29ubmVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9xdWlja19jb25uZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBSXFCO0FBY3JCLElBQVksZ0JBSVg7QUFKRCxXQUFZLGdCQUFnQjtJQUMxQixpREFBNkIsQ0FBQTtJQUM3QixtQ0FBZSxDQUFBO0lBQ2YsaUNBQWEsQ0FBQTtBQUNmLENBQUMsRUFKVyxnQkFBZ0IsZ0NBQWhCLGdCQUFnQixRQUkzQjtBQTZDRCxNQUFhLFlBQWEsU0FBUSxzQkFBUTtJQUd4QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXdCO1FBQ2hFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLHlCQUFPLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxjQUFjLEVBQUU7WUFDcEUsV0FBVyxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVztZQUN2QyxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7WUFDaEIsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzlCLGtCQUFrQixFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUM7U0FDbEQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGlCQUFpQixDQUFDLEtBQXdCO1FBQ2hELElBQUksS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3RCLElBQUksS0FBSyxDQUFDLFdBQVcsSUFBSSxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQzFDLE1BQU0sSUFBSSxLQUFLLENBQUMsMERBQTBELENBQUMsQ0FBQztZQUM5RSxDQUFDO1lBQ0QsT0FBTztnQkFDTCxnQkFBZ0IsRUFBRSxnQkFBZ0IsQ0FBQyxZQUFZO2dCQUMvQyxXQUFXLEVBQUU7b0JBQ1gsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO2lCQUMvQjthQUNGLENBQUM7UUFDSixDQUFDO2FBQU0sSUFBSSxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDN0IsSUFBSSxLQUFLLENBQUMsV0FBVyxJQUFJLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDMUMsTUFBTSxJQUFJLEtBQUssQ0FBQywwREFBMEQsQ0FBQyxDQUFDO1lBQzlFLENBQUM7WUFDRCxPQUFPO2dCQUNMLGdCQUFnQixFQUFFLGdCQUFnQixDQUFDLEtBQUs7Z0JBQ3hDLFdBQVcsRUFBRTtvQkFDWCxjQUFjLEVBQUUsS0FBSyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsY0FBYztvQkFDckQsUUFBUSxFQUFFLEtBQUssQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLFFBQVE7aUJBQzNDO2FBQ0YsQ0FBQztRQUNKLENBQUM7YUFBTSxJQUFJLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUM1QixJQUFJLEtBQUssQ0FBQyxXQUFXLElBQUksS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUMzQyxNQUFNLElBQUksS0FBSyxDQUFDLDBEQUEwRCxDQUFDLENBQUM7WUFDOUUsQ0FBQztZQUNELE9BQU87Z0JBQ0wsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUMsSUFBSTtnQkFDdkMsVUFBVSxFQUFFO29CQUNWLGNBQWMsRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxjQUFjO29CQUNwRCxPQUFPLEVBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTztpQkFDdkM7YUFDRixDQUFDO1FBQ0osQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLElBQUksS0FBSyxDQUFDLGtFQUFrRSxDQUFDLENBQUM7UUFDdEYsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJLGVBQWU7UUFDakIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLG1CQUFtQixDQUFDO0lBQy9DLENBQUM7O0FBdERILG9DQXVEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGF3c19jb25uZWN0IGFzIGNvbm5lY3QsXG4gIElSZXNvdXJjZSxcbiAgUmVzb3VyY2UsXG59IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgSUNvbnRhY3RGbG93IH0gZnJvbSAnLi9jb250YWN0X2Zsb3cnO1xuaW1wb3J0IHsgSUluc3RhbmNlIH0gZnJvbSAnLi9pbnN0YW5jZSc7XG5pbXBvcnQgeyBJUXVldWUgfSBmcm9tICcuL3F1ZXVlJztcbmltcG9ydCB7IElVc2VyIH0gZnJvbSAnLi91c2VyJztcblxuZXhwb3J0IGludGVyZmFjZSBJUXVpY2tDb25uZWN0IGV4dGVuZHMgSVJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIHF1aWNrIGNvbm5lY3QuXG4gICAqL1xuICByZWFkb25seSBxdWlja0Nvbm5lY3RBcm46IHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gUXVpY2tDb25uZWN0VHlwZSB7XG4gIFBIT05FX05VTUJFUiA9ICdQSE9ORV9OVU1CRVInLFxuICBRVUVVRSA9ICdRVUVVRScsXG4gIFVTRVIgPSAnVVNFUicsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUXVpY2tDb25uZWN0UXVldWVDb25maWcge1xuICByZWFkb25seSBmbG93OiBJQ29udGFjdEZsb3c7XG4gIHJlYWRvbmx5IHF1ZXVlOiBJUXVldWU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUXVpY2tDb25uZWN0VXNlckNvbmZpZyB7XG4gIHJlYWRvbmx5IHVzZXI6IElVc2VyO1xuICByZWFkb25seSBmbG93OiBJQ29udGFjdEZsb3c7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUXVpY2tDb25uZWN0UHJvcHMge1xuICAvKipcbiAgICogVGhlIEFXUyBjb25uZWN0IGluc3RhbmNlIHRvIGF0dGFjaCB0aGUgcXVpY2sgY29ubmVjdCB0by5cbiAgICovXG4gIHJlYWRvbmx5IGluc3RhbmNlOiBJSW5zdGFuY2U7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgcXVpY2sgY29ubmVjdC5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgcXVpY2sgY29ubmVjdC5cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogdGhlIHBob25lIG51bWJlciB0byB1c2UgZm9yIHRoaXMgcXVpY2sgY29ubmVjdC5cbiAgICpcbiAgICogQ2Fubm90IGJlIHNldCB3aXRoIHF1ZXVlQ29uZmlnIG9yIHVzZXJDb25maWdcbiAgICovXG4gIHJlYWRvbmx5IHBob25lTnVtYmVyPzogc3RyaW5nO1xuICAvKipcbiAgICogdGhlIHF1ZXVlIGFuZCBmbG93IHRvIHVzZSBmb3IgdGhpcyBxdWljayBjb25uZWN0LlxuICAgKlxuICAgKiBDYW5ub3QgYmUgc2V0IHdpdGggcGhvbmVOdW1iZXIgb3IgdXNlckNvbmZpZ1xuICAgKi9cbiAgcmVhZG9ubHkgcXVldWVDb25maWc/OiBRdWlja0Nvbm5lY3RRdWV1ZUNvbmZpZztcbiAgLyoqXG4gICAqIHRoZSB1c2VyIHRvIHVzZSBmb3IgdGhpcyBxdWljayBjb25uZWN0LlxuICAgKlxuICAgKiBDYW5ub3QgYmUgc2V0IHdpdGggcGhvbmVOdW1iZXIgb3IgcXVldWVDb25maWdcbiAgICovXG4gIHJlYWRvbmx5IHVzZXJDb25maWc/OiBRdWlja0Nvbm5lY3RVc2VyQ29uZmlnO1xufVxuXG5leHBvcnQgY2xhc3MgUXVpY2tDb25uZWN0IGV4dGVuZHMgUmVzb3VyY2UgaW1wbGVtZW50cyBJUXVpY2tDb25uZWN0IHtcbiAgcmVhZG9ubHkgcXVpY2tDb25uZWN0OiBjb25uZWN0LkNmblF1aWNrQ29ubmVjdDtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogUXVpY2tDb25uZWN0UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgdGhpcy5xdWlja0Nvbm5lY3QgPSBuZXcgY29ubmVjdC5DZm5RdWlja0Nvbm5lY3QodGhpcywgJ1F1aWNrQ29ubmVjdCcsIHtcbiAgICAgIGluc3RhbmNlQXJuOiBwcm9wcy5pbnN0YW5jZS5pbnN0YW5jZUFybixcbiAgICAgIG5hbWU6IHByb3BzLm5hbWUsXG4gICAgICBkZXNjcmlwdGlvbjogcHJvcHMuZGVzY3JpcHRpb24sXG4gICAgICBxdWlja0Nvbm5lY3RDb25maWc6IHRoaXMuYnVpbGRRdWlja0Nvbm5lY3QocHJvcHMpLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZFF1aWNrQ29ubmVjdChwcm9wczogUXVpY2tDb25uZWN0UHJvcHMpOiBjb25uZWN0LkNmblF1aWNrQ29ubmVjdC5RdWlja0Nvbm5lY3RDb25maWdQcm9wZXJ0eSB7XG4gICAgaWYgKHByb3BzLnBob25lTnVtYmVyKSB7XG4gICAgICBpZiAocHJvcHMucXVldWVDb25maWcgfHwgcHJvcHMudXNlckNvbmZpZykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3Bob25lTnVtYmVyIGNhbm5vdCBiZSBzZXQgd2l0aCBxdWV1ZUNvbmZpZyBvciB1c2VyQ29uZmlnJyk7XG4gICAgICB9XG4gICAgICByZXR1cm4ge1xuICAgICAgICBxdWlja0Nvbm5lY3RUeXBlOiBRdWlja0Nvbm5lY3RUeXBlLlBIT05FX05VTUJFUixcbiAgICAgICAgcGhvbmVDb25maWc6IHtcbiAgICAgICAgICBwaG9uZU51bWJlcjogcHJvcHMucGhvbmVOdW1iZXIsXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIH0gZWxzZSBpZiAocHJvcHMucXVldWVDb25maWcpIHtcbiAgICAgIGlmIChwcm9wcy5waG9uZU51bWJlciB8fCBwcm9wcy51c2VyQ29uZmlnKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcigncXVldWVDb25maWcgY2Fubm90IGJlIHNldCB3aXRoIHBob25lTnVtYmVyIG9yIHVzZXJDb25maWcnKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB7XG4gICAgICAgIHF1aWNrQ29ubmVjdFR5cGU6IFF1aWNrQ29ubmVjdFR5cGUuUVVFVUUsXG4gICAgICAgIHF1ZXVlQ29uZmlnOiB7XG4gICAgICAgICAgY29udGFjdEZsb3dBcm46IHByb3BzLnF1ZXVlQ29uZmlnLmZsb3cuY29udGFjdEZsb3dBcm4sXG4gICAgICAgICAgcXVldWVBcm46IHByb3BzLnF1ZXVlQ29uZmlnLnF1ZXVlLnF1ZXVlQXJuLFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICB9IGVsc2UgaWYgKHByb3BzLnVzZXJDb25maWcpIHtcbiAgICAgIGlmIChwcm9wcy5waG9uZU51bWJlciB8fCBwcm9wcy5xdWV1ZUNvbmZpZykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3VzZXJDb25maWcgY2Fubm90IGJlIHNldCB3aXRoIHBob25lTnVtYmVyIG9yIHF1ZXVlQ29uZmlnJyk7XG4gICAgICB9XG4gICAgICByZXR1cm4ge1xuICAgICAgICBxdWlja0Nvbm5lY3RUeXBlOiBRdWlja0Nvbm5lY3RUeXBlLlVTRVIsXG4gICAgICAgIHVzZXJDb25maWc6IHtcbiAgICAgICAgICBjb250YWN0Rmxvd0FybjogcHJvcHMudXNlckNvbmZpZy5mbG93LmNvbnRhY3RGbG93QXJuLFxuICAgICAgICAgIHVzZXJBcm46IHByb3BzLnVzZXJDb25maWcudXNlci51c2VyQXJuLFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdPbmUgb2YgcGhvbmVOdW1iZXIsIHVzZXJDb25maWcsIG9yIHF1ZXVlQ29uZmlnIG11c3QgYmUgc3BlY2lmaWVkJyk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IHF1aWNrQ29ubmVjdEFybigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnF1aWNrQ29ubmVjdC5hdHRyUXVpY2tDb25uZWN0QXJuO1xuICB9XG59XG5cbiJdfQ==
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVpY2tfY29ubmVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9xdWlja19jb25uZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSw2Q0FJcUI7QUFDckIsOEVBQThFO0FBYzlFLElBQVksZ0JBSVg7QUFKRCxXQUFZLGdCQUFnQjtJQUMxQixpREFBNkIsQ0FBQTtJQUM3QixtQ0FBZSxDQUFBO0lBQ2YsaUNBQWEsQ0FBQTtBQUNmLENBQUMsRUFKVyxnQkFBZ0IsZ0NBQWhCLGdCQUFnQixRQUkzQjtBQTZDRCxNQUFhLFlBQWEsU0FBUSxzQkFBUTs7SUFDdkIsUUFBUSxDQUEwQjtJQUVuRCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXdCO1FBQ2hFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBQSx3Q0FBb0IsRUFBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFbEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLHlCQUFPLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxjQUFjLEVBQUU7WUFDaEUsV0FBVyxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVztZQUN2QyxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7WUFDaEIsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzlCLGtCQUFrQixFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUM7U0FDbEQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGlCQUFpQixDQUFDLEtBQXdCO1FBQ2hELElBQUksS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3RCLElBQUksS0FBSyxDQUFDLFdBQVcsSUFBSSxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQzFDLE1BQU0sSUFBSSxLQUFLLENBQUMsMERBQTBELENBQUMsQ0FBQztZQUM5RSxDQUFDO1lBQ0QsT0FBTztnQkFDTCxnQkFBZ0IsRUFBRSxnQkFBZ0IsQ0FBQyxZQUFZO2dCQUMvQyxXQUFXLEVBQUU7b0JBQ1gsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO2lCQUMvQjthQUNGLENBQUM7UUFDSixDQUFDO2FBQU0sSUFBSSxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDN0IsSUFBSSxLQUFLLENBQUMsV0FBVyxJQUFJLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDMUMsTUFBTSxJQUFJLEtBQUssQ0FBQywwREFBMEQsQ0FBQyxDQUFDO1lBQzlFLENBQUM7WUFDRCxPQUFPO2dCQUNMLGdCQUFnQixFQUFFLGdCQUFnQixDQUFDLEtBQUs7Z0JBQ3hDLFdBQVcsRUFBRTtvQkFDWCxjQUFjLEVBQUUsS0FBSyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsY0FBYztvQkFDckQsUUFBUSxFQUFFLEtBQUssQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLFFBQVE7aUJBQzNDO2FBQ0YsQ0FBQztRQUNKLENBQUM7YUFBTSxJQUFJLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUM1QixJQUFJLEtBQUssQ0FBQyxXQUFXLElBQUksS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUMzQyxNQUFNLElBQUksS0FBSyxDQUFDLDBEQUEwRCxDQUFDLENBQUM7WUFDOUUsQ0FBQztZQUNELE9BQU87Z0JBQ0wsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUMsSUFBSTtnQkFDdkMsVUFBVSxFQUFFO29CQUNWLGNBQWMsRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxjQUFjO29CQUNwRCxPQUFPLEVBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTztpQkFDdkM7YUFDRixDQUFDO1FBQ0osQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLElBQUksS0FBSyxDQUFDLGtFQUFrRSxDQUFDLENBQUM7UUFDdEYsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJLGVBQWU7UUFDakIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDO0lBQzNDLENBQUM7O0FBeERILG9DQXlEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGF3c19jb25uZWN0IGFzIGNvbm5lY3QsXG4gIElSZXNvdXJjZSxcbiAgUmVzb3VyY2UsXG59IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IGFkZENvbnN0cnVjdE1ldGFkYXRhIH0gZnJvbSAnYXdzLWNkay1saWIvY29yZS9saWIvbWV0YWRhdGEtcmVzb3VyY2UnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBJQ29udGFjdEZsb3cgfSBmcm9tICcuL2NvbnRhY3RfZmxvdyc7XG5pbXBvcnQgeyBJSW5zdGFuY2UgfSBmcm9tICcuL2luc3RhbmNlJztcbmltcG9ydCB7IElRdWV1ZSB9IGZyb20gJy4vcXVldWUnO1xuaW1wb3J0IHsgSVVzZXIgfSBmcm9tICcuL3VzZXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIElRdWlja0Nvbm5lY3QgZXh0ZW5kcyBJUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgcXVpY2sgY29ubmVjdC5cbiAgICovXG4gIHJlYWRvbmx5IHF1aWNrQ29ubmVjdEFybjogc3RyaW5nO1xufVxuXG5leHBvcnQgZW51bSBRdWlja0Nvbm5lY3RUeXBlIHtcbiAgUEhPTkVfTlVNQkVSID0gJ1BIT05FX05VTUJFUicsXG4gIFFVRVVFID0gJ1FVRVVFJyxcbiAgVVNFUiA9ICdVU0VSJyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBRdWlja0Nvbm5lY3RRdWV1ZUNvbmZpZyB7XG4gIHJlYWRvbmx5IGZsb3c6IElDb250YWN0RmxvdztcbiAgcmVhZG9ubHkgcXVldWU6IElRdWV1ZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBRdWlja0Nvbm5lY3RVc2VyQ29uZmlnIHtcbiAgcmVhZG9ubHkgdXNlcjogSVVzZXI7XG4gIHJlYWRvbmx5IGZsb3c6IElDb250YWN0Rmxvdztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBRdWlja0Nvbm5lY3RQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgQVdTIGNvbm5lY3QgaW5zdGFuY2UgdG8gYXR0YWNoIHRoZSBxdWljayBjb25uZWN0IHRvLlxuICAgKi9cbiAgcmVhZG9ubHkgaW5zdGFuY2U6IElJbnN0YW5jZTtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBxdWljayBjb25uZWN0LlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBxdWljayBjb25uZWN0LlxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiB0aGUgcGhvbmUgbnVtYmVyIHRvIHVzZSBmb3IgdGhpcyBxdWljayBjb25uZWN0LlxuICAgKlxuICAgKiBDYW5ub3QgYmUgc2V0IHdpdGggcXVldWVDb25maWcgb3IgdXNlckNvbmZpZ1xuICAgKi9cbiAgcmVhZG9ubHkgcGhvbmVOdW1iZXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiB0aGUgcXVldWUgYW5kIGZsb3cgdG8gdXNlIGZvciB0aGlzIHF1aWNrIGNvbm5lY3QuXG4gICAqXG4gICAqIENhbm5vdCBiZSBzZXQgd2l0aCBwaG9uZU51bWJlciBvciB1c2VyQ29uZmlnXG4gICAqL1xuICByZWFkb25seSBxdWV1ZUNvbmZpZz86IFF1aWNrQ29ubmVjdFF1ZXVlQ29uZmlnO1xuICAvKipcbiAgICogdGhlIHVzZXIgdG8gdXNlIGZvciB0aGlzIHF1aWNrIGNvbm5lY3QuXG4gICAqXG4gICAqIENhbm5vdCBiZSBzZXQgd2l0aCBwaG9uZU51bWJlciBvciBxdWV1ZUNvbmZpZ1xuICAgKi9cbiAgcmVhZG9ubHkgdXNlckNvbmZpZz86IFF1aWNrQ29ubmVjdFVzZXJDb25maWc7XG59XG5cbmV4cG9ydCBjbGFzcyBRdWlja0Nvbm5lY3QgZXh0ZW5kcyBSZXNvdXJjZSBpbXBsZW1lbnRzIElRdWlja0Nvbm5lY3Qge1xuICBwcml2YXRlIHJlYWRvbmx5IHJlc291cmNlOiBjb25uZWN0LkNmblF1aWNrQ29ubmVjdDtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogUXVpY2tDb25uZWN0UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgYWRkQ29uc3RydWN0TWV0YWRhdGEodGhpcywgcHJvcHMpO1xuXG4gICAgdGhpcy5yZXNvdXJjZSA9IG5ldyBjb25uZWN0LkNmblF1aWNrQ29ubmVjdCh0aGlzLCAnUXVpY2tDb25uZWN0Jywge1xuICAgICAgaW5zdGFuY2VBcm46IHByb3BzLmluc3RhbmNlLmluc3RhbmNlQXJuLFxuICAgICAgbmFtZTogcHJvcHMubmFtZSxcbiAgICAgIGRlc2NyaXB0aW9uOiBwcm9wcy5kZXNjcmlwdGlvbixcbiAgICAgIHF1aWNrQ29ubmVjdENvbmZpZzogdGhpcy5idWlsZFF1aWNrQ29ubmVjdChwcm9wcyksXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkUXVpY2tDb25uZWN0KHByb3BzOiBRdWlja0Nvbm5lY3RQcm9wcyk6IGNvbm5lY3QuQ2ZuUXVpY2tDb25uZWN0LlF1aWNrQ29ubmVjdENvbmZpZ1Byb3BlcnR5IHtcbiAgICBpZiAocHJvcHMucGhvbmVOdW1iZXIpIHtcbiAgICAgIGlmIChwcm9wcy5xdWV1ZUNvbmZpZyB8fCBwcm9wcy51c2VyQ29uZmlnKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcigncGhvbmVOdW1iZXIgY2Fubm90IGJlIHNldCB3aXRoIHF1ZXVlQ29uZmlnIG9yIHVzZXJDb25maWcnKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB7XG4gICAgICAgIHF1aWNrQ29ubmVjdFR5cGU6IFF1aWNrQ29ubmVjdFR5cGUuUEhPTkVfTlVNQkVSLFxuICAgICAgICBwaG9uZUNvbmZpZzoge1xuICAgICAgICAgIHBob25lTnVtYmVyOiBwcm9wcy5waG9uZU51bWJlcixcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfSBlbHNlIGlmIChwcm9wcy5xdWV1ZUNvbmZpZykge1xuICAgICAgaWYgKHByb3BzLnBob25lTnVtYmVyIHx8IHByb3BzLnVzZXJDb25maWcpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdxdWV1ZUNvbmZpZyBjYW5ub3QgYmUgc2V0IHdpdGggcGhvbmVOdW1iZXIgb3IgdXNlckNvbmZpZycpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcXVpY2tDb25uZWN0VHlwZTogUXVpY2tDb25uZWN0VHlwZS5RVUVVRSxcbiAgICAgICAgcXVldWVDb25maWc6IHtcbiAgICAgICAgICBjb250YWN0Rmxvd0FybjogcHJvcHMucXVldWVDb25maWcuZmxvdy5jb250YWN0Rmxvd0FybixcbiAgICAgICAgICBxdWV1ZUFybjogcHJvcHMucXVldWVDb25maWcucXVldWUucXVldWVBcm4sXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIH0gZWxzZSBpZiAocHJvcHMudXNlckNvbmZpZykge1xuICAgICAgaWYgKHByb3BzLnBob25lTnVtYmVyIHx8IHByb3BzLnF1ZXVlQ29uZmlnKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcigndXNlckNvbmZpZyBjYW5ub3QgYmUgc2V0IHdpdGggcGhvbmVOdW1iZXIgb3IgcXVldWVDb25maWcnKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB7XG4gICAgICAgIHF1aWNrQ29ubmVjdFR5cGU6IFF1aWNrQ29ubmVjdFR5cGUuVVNFUixcbiAgICAgICAgdXNlckNvbmZpZzoge1xuICAgICAgICAgIGNvbnRhY3RGbG93QXJuOiBwcm9wcy51c2VyQ29uZmlnLmZsb3cuY29udGFjdEZsb3dBcm4sXG4gICAgICAgICAgdXNlckFybjogcHJvcHMudXNlckNvbmZpZy51c2VyLnVzZXJBcm4sXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ09uZSBvZiBwaG9uZU51bWJlciwgdXNlckNvbmZpZywgb3IgcXVldWVDb25maWcgbXVzdCBiZSBzcGVjaWZpZWQnKTtcbiAgICB9XG4gIH1cblxuICBnZXQgcXVpY2tDb25uZWN0QXJuKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucmVzb3VyY2UuYXR0clF1aWNrQ29ubmVjdEFybjtcbiAgfVxufVxuXG4iXX0=
@@ -1,4 +1,112 @@
1
- import { IResource } from 'aws-cdk-lib';
1
+ import { Duration, IResource, Resource } from 'aws-cdk-lib';
2
+ import { Construct } from 'constructs';
3
+ import { IInstance } from './instance';
4
+ import { IQueue } from './queue';
5
+ import { ChannelType } from './types';
2
6
  export interface IRoutingProfile extends IResource {
3
7
  readonly routingProfileArn: string;
4
8
  }
9
+ export declare enum RoutingProfileAgentAvailabilityTimer {
10
+ TIME_SINCE_LAST_ACTIVITY = "TIME_SINCE_LAST_ACTIVITY",
11
+ TIME_SINCE_LAST_INBOUND = "TIME_SINCE_LAST_INBOUND"
12
+ }
13
+ export interface RoutingProfileManualAssignmentQueueConfig {
14
+ /**
15
+ * The queue this config is for.
16
+ */
17
+ readonly queue: IQueue;
18
+ /**
19
+ * The channel this config is for
20
+ */
21
+ readonly channel: ChannelType;
22
+ }
23
+ export interface RoutingProfileQueueConfig {
24
+ /**
25
+ * The queue this config is for.
26
+ */
27
+ readonly queue: IQueue;
28
+ /**
29
+ * The channel this config is for
30
+ */
31
+ readonly channel: ChannelType;
32
+ /**
33
+ * The priority of this queue.
34
+ */
35
+ readonly priority: number;
36
+ /**
37
+ * The delay before offering the contact to the agent
38
+ */
39
+ readonly delay: Duration;
40
+ }
41
+ export declare enum RoutingProfileCrossChannelBehaviorType {
42
+ ROUTE_CURRENT_CHANNEL_ONLY = "ROUTE_CURRENT_CHANNEL_ONLY",
43
+ ROUTE_ANY_CHANNEL = "ROUTE_ANY_CHANNEL"
44
+ }
45
+ export interface RoutingProfileMediaCurrency {
46
+ /**
47
+ * The channel this media currency is for.
48
+ */
49
+ readonly channel: ChannelType;
50
+ /**
51
+ * The number of contacts an agent can have on a channel simultaneously.
52
+ *
53
+ * VOICE range is 1 to 1
54
+ * CHAT range is 1 to 10
55
+ * TASK range is 1 to 10
56
+ * EMAIL range is 1 to 10
57
+ */
58
+ readonly concurrency: number;
59
+ /**
60
+ * Defines the cross-channel routing behavior for each channel that is enabled
61
+ * for this Routing Profile. For example, this allows you to offer an agent a
62
+ * different contact from another channel when they are currently working with
63
+ * a contact from a Voice channel.
64
+ */
65
+ readonly crossChannelBehavior?: RoutingProfileCrossChannelBehaviorType;
66
+ }
67
+ export interface RoutingProfileProps {
68
+ readonly instance: IInstance;
69
+ /**
70
+ * The name of the routing profile.
71
+ */
72
+ readonly name: string;
73
+ /**
74
+ * The description of the routing profile.
75
+ */
76
+ readonly description: string;
77
+ /**
78
+ * Whether agents with this routing profile will have their routing order calculated based
79
+ * on time since their last inbound contact or longest idle time.
80
+ */
81
+ readonly agentAvailabilityTimer?: RoutingProfileAgentAvailabilityTimer;
82
+ /**
83
+ * The Amazon Resource Name (ARN) of the default outbound queue for the routing profile.
84
+ */
85
+ readonly defaultOutboundQueue: IQueue;
86
+ /**
87
+ * Contains information about the queue and channel for manual assignment behavior can be enabled.
88
+ */
89
+ readonly manualAssignmentQueueConfigs?: RoutingProfileManualAssignmentQueueConfig[];
90
+ /**
91
+ * The inbound queues associated with the routing profile. If no queue is added, the agent
92
+ * can make only outbound calls.
93
+ */
94
+ readonly queueConfigs?: RoutingProfileQueueConfig[];
95
+ /**
96
+ * The channels agents can handle in the Contact Control Panel (CCP) for this
97
+ * routing profile.
98
+ */
99
+ readonly mediaConcurrencies: RoutingProfileMediaCurrency[];
100
+ }
101
+ export interface RoutingProfileLookupOptions {
102
+ readonly instanceArn: string;
103
+ readonly routingProfileArn?: string;
104
+ readonly routingProfileId?: string;
105
+ readonly name?: string;
106
+ }
107
+ export declare class RoutingProfile extends Resource implements IRoutingProfile {
108
+ static fromLookup(scope: Construct, id: string, options: RoutingProfileLookupOptions): IRoutingProfile;
109
+ private readonly resource;
110
+ constructor(scope: Construct, id: string, props: RoutingProfileProps);
111
+ get routingProfileArn(): string;
112
+ }