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

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.
@@ -0,0 +1,113 @@
1
+ import { IResolvable, IResource, Resource } from 'aws-cdk-lib';
2
+ import { Construct } from 'constructs';
3
+ import { IInstance } from './instance';
4
+ export interface IDataTable extends IResource {
5
+ /**
6
+ * The ARN of the data table
7
+ */
8
+ readonly dataTableArn: string;
9
+ }
10
+ export declare enum DataTableValueLockLevel {
11
+ DATA_TABLE = "DATA_TABLE",
12
+ PRIMARY_VALUE = "PRIMARY_VALUE",
13
+ ATTRIBUTE = "ATTRIBUTE",
14
+ VALUE = "VALUE",
15
+ NONE = "NONE"
16
+ }
17
+ export declare enum DataTableValueType {
18
+ TEXT = "TEXT",
19
+ NUMBER = "NUMBER",
20
+ BOOLEAN = "BOOLEAN",
21
+ TEXT_LIST = "TEXT_LIST",
22
+ NUMBER_LIST = "NUMBER_LIST"
23
+ }
24
+ export interface DataTableProps {
25
+ /**
26
+ * The AWS connect instance to attach the data table to.
27
+ */
28
+ readonly instance: IInstance;
29
+ /**
30
+ * The name of the data table. Must be unique within the instance.
31
+ */
32
+ readonly name: string;
33
+ /**
34
+ * The description of the data table
35
+ */
36
+ readonly description?: string;
37
+ /**
38
+ * The default timezone for resolving time-based dynamic values. Defaults to UTC
39
+ */
40
+ readonly timeZone?: string;
41
+ /**
42
+ * The lock level to control concurrent edits. Defaults to NONE
43
+ */
44
+ readonly valueLockLevel?: DataTableValueLockLevel;
45
+ }
46
+ export interface DataTableEnumProperty {
47
+ readonly strict?: boolean;
48
+ readonly values?: string[];
49
+ }
50
+ export interface DataTableValidationProps {
51
+ enum?: DataTableEnumProperty;
52
+ exclusiveMaximum?: number;
53
+ exclusiveMinimum?: number;
54
+ maximum?: number;
55
+ maxLength?: number;
56
+ maxValues?: number;
57
+ minimum?: number;
58
+ minLength?: number;
59
+ minValues?: number;
60
+ multipleOf?: number;
61
+ }
62
+ export interface DataTableAttributeProps {
63
+ readonly name: string;
64
+ readonly description?: string;
65
+ readonly primary?: boolean;
66
+ readonly valueType: DataTableValueType;
67
+ readonly validation?: DataTableValidationProps;
68
+ }
69
+ export interface DataTableAttribute {
70
+ readonly attributeId: IResolvable | string;
71
+ readonly name: string;
72
+ }
73
+ export interface DataTableLookupOptions {
74
+ readonly instanceArn: string;
75
+ readonly dataTableArn?: string;
76
+ readonly dataTableId?: string;
77
+ readonly name?: string;
78
+ }
79
+ declare abstract class DataTableBase extends Resource implements IDataTable {
80
+ abstract readonly dataTableArn: string;
81
+ abstract readonly instanceArn: string;
82
+ private definedAttributes;
83
+ /**
84
+ * Define an attribute for the data table
85
+ *
86
+ * @param config
87
+ * @param id
88
+ */
89
+ addAttribute(config: DataTableAttributeProps, id?: string | undefined): DataTableAttribute;
90
+ private buildHash;
91
+ private mapAttributes;
92
+ /**
93
+ * Creates a record into the data table.
94
+ * Requires that all attributes were defined via {DataTable.addAttribute}
95
+ *
96
+ * @param primary_values To set the default records, specify and empty object ({})
97
+ * @param values
98
+ */
99
+ addRecord(primary_values: {
100
+ [key: string]: string;
101
+ }, values: {
102
+ [key: string]: string;
103
+ }): void;
104
+ }
105
+ export declare class DataTable extends DataTableBase {
106
+ static fromLookup(scope: Construct, id: string, options: DataTableLookupOptions): IDataTable;
107
+ private readonly instance;
108
+ private readonly resource;
109
+ constructor(scope: Construct, id: string, props: DataTableProps);
110
+ get instanceArn(): string;
111
+ get dataTableArn(): string;
112
+ }
113
+ export {};
@@ -0,0 +1,214 @@
1
+ "use strict";
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
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.DataTable = exports.DataTableValueType = exports.DataTableValueLockLevel = void 0;
40
+ const crypto_1 = __importDefault(require("crypto"));
41
+ const aws_cdk_lib_1 = require("aws-cdk-lib");
42
+ const cxschema = __importStar(require("aws-cdk-lib/cloud-assembly-schema"));
43
+ const helpers_internal_1 = require("aws-cdk-lib/core/lib/helpers-internal");
44
+ const metadata_resource_1 = require("aws-cdk-lib/core/lib/metadata-resource");
45
+ var DataTableValueLockLevel;
46
+ (function (DataTableValueLockLevel) {
47
+ DataTableValueLockLevel["DATA_TABLE"] = "DATA_TABLE";
48
+ DataTableValueLockLevel["PRIMARY_VALUE"] = "PRIMARY_VALUE";
49
+ DataTableValueLockLevel["ATTRIBUTE"] = "ATTRIBUTE";
50
+ DataTableValueLockLevel["VALUE"] = "VALUE";
51
+ DataTableValueLockLevel["NONE"] = "NONE";
52
+ })(DataTableValueLockLevel || (exports.DataTableValueLockLevel = DataTableValueLockLevel = {}));
53
+ var DataTableValueType;
54
+ (function (DataTableValueType) {
55
+ DataTableValueType["TEXT"] = "TEXT";
56
+ DataTableValueType["NUMBER"] = "NUMBER";
57
+ DataTableValueType["BOOLEAN"] = "BOOLEAN";
58
+ DataTableValueType["TEXT_LIST"] = "TEXT_LIST";
59
+ DataTableValueType["NUMBER_LIST"] = "NUMBER_LIST";
60
+ })(DataTableValueType || (exports.DataTableValueType = DataTableValueType = {}));
61
+ const DUMMY_DATA_TABLE_PROPS = {
62
+ instanceArn: 'instance-arn',
63
+ dataTableArn: 'data-table-arn',
64
+ name: 'name',
65
+ };
66
+ class DataTableBase extends aws_cdk_lib_1.Resource {
67
+ definedAttributes = new Map();
68
+ /**
69
+ * Define an attribute for the data table
70
+ *
71
+ * @param config
72
+ * @param id
73
+ */
74
+ addAttribute(config, id = undefined) {
75
+ console.log('attib instance', this.instanceArn);
76
+ const attrib = new aws_cdk_lib_1.aws_connect.CfnDataTableAttribute(this, id || `Attribute-${config.name}}`, {
77
+ instanceArn: this.instanceArn,
78
+ dataTableArn: this.dataTableArn,
79
+ name: config.name,
80
+ description: config.description,
81
+ primary: config.primary,
82
+ valueType: config.valueType,
83
+ validation: config.validation,
84
+ });
85
+ const info = {
86
+ attributeId: attrib.attrAttributeId,
87
+ name: config.name,
88
+ };
89
+ this.definedAttributes.set(config.name, info);
90
+ return info;
91
+ }
92
+ buildHash(data, { json_encode = true, length = 8 } = {}) {
93
+ if (json_encode) {
94
+ data = JSON.stringify(data);
95
+ }
96
+ const md5 = crypto_1.default.createHash('md5').update(data).digest('hex');
97
+ return md5.slice(0, length).toUpperCase();
98
+ }
99
+ mapAttributes(values) {
100
+ const ret = [];
101
+ for (const [key, value] of Object.entries(values)) {
102
+ const lookup = this.definedAttributes.get(key);
103
+ if (!lookup || !lookup.attributeId) {
104
+ throw new aws_cdk_lib_1.ValidationError((0, helpers_internal_1.lit) `Arguments`, `Key ${key} was not found. Make sure you defined it with DataTable.addAttribute`, this);
105
+ }
106
+ ret.push({
107
+ // This ignore is because we CAN push a IResolvable to attributeId
108
+ // @ts-ignore
109
+ attributeId: lookup.attributeId,
110
+ attributeValue: value,
111
+ });
112
+ }
113
+ return ret;
114
+ }
115
+ /**
116
+ * Creates a record into the data table.
117
+ * Requires that all attributes were defined via {DataTable.addAttribute}
118
+ *
119
+ * @param primary_values To set the default records, specify and empty object ({})
120
+ * @param values
121
+ */
122
+ addRecord(primary_values, values) {
123
+ const keyhash = this.buildHash(primary_values);
124
+ new aws_cdk_lib_1.aws_connect.CfnDataTableRecord(this, `Record-${keyhash}`, {
125
+ instanceArn: this.instanceArn,
126
+ dataTableArn: this.dataTableArn,
127
+ dataTableRecord: {
128
+ primaryValues: this.mapAttributes(primary_values),
129
+ values: this.mapAttributes(values),
130
+ },
131
+ });
132
+ }
133
+ }
134
+ class DataTable extends DataTableBase {
135
+ static fromLookup(scope, id, options) {
136
+ if (aws_cdk_lib_1.Token.isUnresolved(options.name)
137
+ || aws_cdk_lib_1.Token.isUnresolved(options.instanceArn)
138
+ || aws_cdk_lib_1.Token.isUnresolved(options.dataTableId)
139
+ || aws_cdk_lib_1.Token.isUnresolved(options.dataTableArn)) {
140
+ throw new aws_cdk_lib_1.ValidationError((0, helpers_internal_1.lit) `Arguments`, 'All arguments to DataTable.fromLookup() must be concrete (no Tokens)', scope);
141
+ }
142
+ const filter = {};
143
+ filter.resourceModel = {
144
+ InstanceArn: options.instanceArn,
145
+ };
146
+ if (options.dataTableArn) {
147
+ filter.exactIdentifier = options.dataTableArn;
148
+ }
149
+ else if (options.dataTableId) {
150
+ filter.exactIdentifier = `${options.instanceArn}/data-table/${options.dataTableId}`;
151
+ }
152
+ if (options.name) {
153
+ filter.propertyMatch ||= {};
154
+ filter.propertyMatch.Name = options.name;
155
+ }
156
+ const response = aws_cdk_lib_1.ContextProvider.getValue(scope, {
157
+ provider: cxschema.ContextProvider.CC_API_PROVIDER,
158
+ props: {
159
+ typeName: 'AWS::Connect::DataTable',
160
+ ...filter,
161
+ propertiesToReturn: ['Arn', 'Name'],
162
+ expectedMatchCount: 'exactly-one',
163
+ },
164
+ dummyValue: undefined,
165
+ }).value;
166
+ let instance = undefined;
167
+ if (response && response[0]) {
168
+ instance = {
169
+ instanceArn: options.instanceArn,
170
+ dataTableArn: response[0].Arn,
171
+ name: response[0].Name,
172
+ };
173
+ }
174
+ return new LookedUpDataTable(scope, id, instance ?? DUMMY_DATA_TABLE_PROPS, instance === undefined);
175
+ }
176
+ instance;
177
+ resource;
178
+ constructor(scope, id, props) {
179
+ super(scope, id);
180
+ (0, metadata_resource_1.addConstructMetadata)(this, props);
181
+ this.instance = props.instance;
182
+ this.resource = new aws_cdk_lib_1.aws_connect.CfnDataTable(this, 'DataTable', {
183
+ instanceArn: props.instance.instanceArn,
184
+ name: props.name,
185
+ description: props.description,
186
+ status: 'PUBLISHED', // only one value allowed
187
+ timeZone: props.timeZone || 'UTC',
188
+ valueLockLevel: props.valueLockLevel || DataTableValueLockLevel.NONE,
189
+ });
190
+ }
191
+ get instanceArn() {
192
+ return this.instance.instanceArn;
193
+ }
194
+ get dataTableArn() {
195
+ return this.resource.attrArn;
196
+ }
197
+ }
198
+ exports.DataTable = DataTable;
199
+ class LookedUpDataTable extends DataTableBase {
200
+ dataTableArn;
201
+ instanceArn;
202
+ incompleteDefinition;
203
+ constructor(scope, id, props, isIncomplete) {
204
+ super(scope, id, {
205
+ region: props.region,
206
+ account: props.ownerAccountId,
207
+ });
208
+ (0, metadata_resource_1.addConstructMetadata)(this, props);
209
+ this.instanceArn = props.instanceArn;
210
+ this.dataTableArn = props.dataTableArn;
211
+ this.incompleteDefinition = isIncomplete;
212
+ }
213
+ }
214
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YV90YWJsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9kYXRhX3RhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG9EQUE0QjtBQUM1Qiw2Q0FPcUI7QUFDckIsNEVBQThEO0FBQzlELDRFQUE0RDtBQUM1RCw4RUFBOEU7QUFXOUUsSUFBWSx1QkFNWDtBQU5ELFdBQVksdUJBQXVCO0lBQ2pDLG9EQUF5QixDQUFBO0lBQ3pCLDBEQUErQixDQUFBO0lBQy9CLGtEQUF1QixDQUFBO0lBQ3ZCLDBDQUFlLENBQUE7SUFDZix3Q0FBYSxDQUFBO0FBQ2YsQ0FBQyxFQU5XLHVCQUF1Qix1Q0FBdkIsdUJBQXVCLFFBTWxDO0FBRUQsSUFBWSxrQkFNWDtBQU5ELFdBQVksa0JBQWtCO0lBQzVCLG1DQUFhLENBQUE7SUFDYix1Q0FBaUIsQ0FBQTtJQUNqQix5Q0FBbUIsQ0FBQTtJQUNuQiw2Q0FBdUIsQ0FBQTtJQUN2QixpREFBMkIsQ0FBQTtBQUM3QixDQUFDLEVBTlcsa0JBQWtCLGtDQUFsQixrQkFBa0IsUUFNN0I7QUF3REQsTUFBTSxzQkFBc0IsR0FBRztJQUM3QixXQUFXLEVBQUUsY0FBYztJQUMzQixZQUFZLEVBQUUsZ0JBQWdCO0lBQzlCLElBQUksRUFBRSxNQUFNO0NBQ2IsQ0FBQztBQVNGLE1BQWUsYUFBYyxTQUFRLHNCQUFRO0lBSW5DLGlCQUFpQixHQUFvQyxJQUFJLEdBQUcsRUFBRSxDQUFDO0lBRXZFOzs7OztPQUtHO0lBQ0gsWUFBWSxDQUFDLE1BQStCLEVBQUUsS0FBeUIsU0FBUztRQUM5RSxPQUFPLENBQUMsR0FBRyxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNoRCxNQUFNLE1BQU0sR0FBRyxJQUFJLHlCQUFPLENBQUMscUJBQXFCLENBQUMsSUFBSSxFQUFFLEVBQUUsSUFBSSxhQUFhLE1BQU0sQ0FB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RUFBRSxLQUFLLENBQUMsY0FBYyxJQUFJLHVCQUF1QixDQUFDLElBQUk7U0FDckUsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUM7SUFDbkMsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7SUFDL0IsQ0FBQztDQUNGO0FBeEVELDhCQXdFQztBQUVELE1BQU0saUJBQWtCLFNBQVEsYUFBYTtJQUMzQixZQUFZLENBQVM7SUFDckIsV0FBVyxDQUFTO0lBQ3BCLG9CQUFvQixDQUFVO0lBRTlDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBVSxFQUFFLFlBQXFCO1FBQ3pFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNO1lBQ3BCLE9BQU8sRUFBRSxLQUFLLENBQUMsY0FBYztTQUM5QixDQUFDLENBQUM7UUFDSCxJQUFBLHdDQUFvQixFQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUVsQyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUM7UUFDckMsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxZQUFZLENBQUM7SUFDM0MsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNyeXB0byBmcm9tICdjcnlwdG8nO1xuaW1wb3J0IHtcbiAgYXdzX2Nvbm5lY3QgYXMgY29ubmVjdCxcbiAgQ29udGV4dFByb3ZpZGVyLCBJUmVzb2x2YWJsZSxcbiAgSVJlc291cmNlLFxuICBSZXNvdXJjZSxcbiAgVG9rZW4sXG4gIFZhbGlkYXRpb25FcnJvcixcbn0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0ICogYXMgY3hzY2hlbWEgZnJvbSAnYXdzLWNkay1saWIvY2xvdWQtYXNzZW1ibHktc2NoZW1hJztcbmltcG9ydCB7IGxpdCB9IGZyb20gJ2F3cy1jZGstbGliL2NvcmUvbGliL2hlbHBlcnMtaW50ZXJuYWwnO1xuaW1wb3J0IHsgYWRkQ29uc3RydWN0TWV0YWRhdGEgfSBmcm9tICdhd3MtY2RrLWxpYi9jb3JlL2xpYi9tZXRhZGF0YS1yZXNvdXJjZSc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IElJbnN0YW5jZSB9IGZyb20gJy4vaW5zdGFuY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElEYXRhVGFibGUgZXh0ZW5kcyBJUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZGF0YSB0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YVRhYmxlQXJuOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIERhdGFUYWJsZVZhbHVlTG9ja0xldmVsIHtcbiAgREFUQV9UQUJMRSA9ICdEQVRBX1RBQkxFJyxcbiAgUFJJTUFSWV9WQUxVRSA9ICdQUklNQVJZX1ZBTFVFJyxcbiAgQVRUUklCVVRFID0gJ0FUVFJJQlVURScsXG4gIFZBTFVFID0gJ1ZBTFVFJyxcbiAgTk9ORSA9ICdOT05FJyxcbn1cblxuZXhwb3J0IGVudW0gRGF0YVRhYmxlVmFsdWVUeXBlIHtcbiAgVEVYVCA9ICdURVhUJyxcbiAgTlVNQkVSID0gJ05VTUJFUicsXG4gIEJPT0xFQU4gPSAnQk9PTEVBTicsXG4gIFRFWFRfTElTVCA9ICdURVhUX0xJU1QnLFxuICBOVU1CRVJfTElTVCA9ICdOVU1CRVJfTElTVCcsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YVRhYmxlUHJvcHMge1xuICAvKipcbiAgICogVGhlIEFXUyBjb25uZWN0IGluc3RhbmNlIHRvIGF0dGFjaCB0aGUgZGF0YSB0YWJsZSB0by5cbiAgICovXG4gIHJlYWRvbmx5IGluc3RhbmNlOiBJSW5zdGFuY2U7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgZGF0YSB0YWJsZS4gTXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBpbnN0YW5jZS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgZGF0YSB0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgZGVmYXVsdCB0aW1lem9uZSBmb3IgcmVzb2x2aW5nIHRpbWUtYmFzZWQgZHluYW1pYyB2YWx1ZXMuIERlZmF1bHRzIHRvIFVUQ1xuICAgKi9cbiAgcmVhZG9ubHkgdGltZVpvbmU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgbG9jayBsZXZlbCB0byBjb250cm9sIGNvbmN1cnJlbnQgZWRpdHMuIERlZmF1bHRzIHRvIE5PTkVcbiAgICovXG4gIHJlYWRvbmx5IHZhbHVlTG9ja0xldmVsPzogRGF0YVRhYmxlVmFsdWVMb2NrTGV2ZWw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YVRhYmxlRW51bVByb3BlcnR5IHtcbiAgcmVhZG9ubHkgc3RyaWN0PzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgdmFsdWVzPzogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YVRhYmxlVmFsaWRhdGlvblByb3BzIHtcbiAgZW51bT86IERhdGFUYWJsZUVudW1Qcm9wZXJ0eTtcbiAgZXhjbHVzaXZlTWF4aW11bT86IG51bWJlcjtcbiAgZXhjbHVzaXZlTWluaW11bT86IG51bWJlcjtcbiAgbWF4aW11bT86IG51bWJlcjtcbiAgbWF4TGVuZ3RoPzogbnVtYmVyO1xuICBtYXhWYWx1ZXM/OiBudW1iZXI7XG4gIG1pbmltdW0/OiBudW1iZXI7XG4gIG1pbkxlbmd0aD86IG51bWJlcjtcbiAgbWluVmFsdWVzPzogbnVtYmVyO1xuICBtdWx0aXBsZU9mPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERhdGFUYWJsZUF0dHJpYnV0ZVByb3BzIHtcbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgcmVhZG9ubHkgcHJpbWFyeT86IGJvb2xlYW47XG4gIHJlYWRvbmx5IHZhbHVlVHlwZTogRGF0YVRhYmxlVmFsdWVUeXBlO1xuICByZWFkb25seSB2YWxpZGF0aW9uPzogRGF0YVRhYmxlVmFsaWRhdGlvblByb3BzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERhdGFUYWJsZUF0dHJpYnV0ZSB7XG4gIHJlYWRvbmx5IGF0dHJpYnV0ZUlkOiBJUmVzb2x2YWJsZSB8IHN0cmluZztcbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xufVxuXG5jb25zdCBEVU1NWV9EQVRBX1RBQkxFX1BST1BTID0ge1xuICBpbnN0YW5jZUFybjogJ2luc3RhbmNlLWFybicsXG4gIGRhdGFUYWJsZUFybjogJ2RhdGEtdGFibGUtYXJuJyxcbiAgbmFtZTogJ25hbWUnLFxufTtcblxuZXhwb3J0IGludGVyZmFjZSBEYXRhVGFibGVMb29rdXBPcHRpb25zIHtcbiAgcmVhZG9ubHkgaW5zdGFuY2VBcm46IHN0cmluZztcbiAgcmVhZG9ubHkgZGF0YVRhYmxlQXJuPzogc3RyaW5nO1xuICByZWFkb25seSBkYXRhVGFibGVJZD86IHN0cmluZztcbiAgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcbn1cblxuYWJzdHJhY3QgY2xhc3MgRGF0YVRhYmxlQmFzZSBleHRlbmRzIFJlc291cmNlIGltcGxlbWVudHMgSURhdGFUYWJsZSB7XG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBkYXRhVGFibGVBcm46IHN0cmluZztcbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGluc3RhbmNlQXJuOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBkZWZpbmVkQXR0cmlidXRlczogTWFwPHN0cmluZywgRGF0YVRhYmxlQXR0cmlidXRlPiA9IG5ldyBNYXAoKTtcblxuICAvKipcbiAgICogRGVmaW5lIGFuIGF0dHJpYnV0ZSBmb3IgdGhlIGRhdGEgdGFibGVcbiAgICpcbiAgICogQHBhcmFtIGNvbmZpZ1xuICAgKiBAcGFyYW0gaWRcbiAgICovXG4gIGFkZEF0dHJpYnV0ZShjb25maWc6IERhdGFUYWJsZUF0dHJpYnV0ZVByb3BzLCBpZDogc3RyaW5nIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkKSA6IERhdGFUYWJsZUF0dHJpYnV0ZSB7XG4gICAgY29uc29sZS5sb2coJ2F0dGliIGluc3RhbmNlJywgdGhpcy5pbnN0YW5jZUFybik7XG4gICAgY29uc3QgYXR0cmliID0gbmV3IGNvbm5lY3QuQ2ZuRGF0YVRhYmxlQXR0cmlidXRlKHRoaXMsIGlkIHx8IGBBdHRyaWJ1dGUtJHtjb25maWcubmFtZX19YCwge1xuICAgICAgaW5zdGFuY2VBcm46IHRoaXMuaW5zdGFuY2VBcm4sXG4gICAgICBkYXRhVGFibGVBcm46IHRoaXMuZGF0YVRhYmxlQXJuLFxuICAgICAgbmFtZTogY29uZmlnLm5hbWUsXG4gICAgICBkZXNjcmlwdGlvbjogY29uZmlnLmRlc2NyaXB0aW9uLFxuICAgICAgcHJpbWFyeTogY29uZmlnLnByaW1hcnksXG4gICAgICB2YWx1ZVR5cGU6IGNvbmZpZy52YWx1ZVR5cGUsXG4gICAgICB2YWxpZGF0aW9uOiBjb25maWcudmFsaWRhdGlvbixcbiAgICB9KTtcblxuICAgIGNvbnN0IGluZm8gPSB7XG4gICAgICBhdHRyaWJ1dGVJZDogYXR0cmliLmF0dHJBdHRyaWJ1dGVJZCxcbiAgICAgIG5hbWU6IGNvbmZpZy5uYW1lLFxuICAgIH07XG4gICAgdGhpcy5kZWZpbmVkQXR0cmlidXRlcy5zZXQoY29uZmlnLm5hbWUsIGluZm8pO1xuXG4gICAgcmV0dXJuIGluZm87XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkSGFzaChkYXRhOiBhbnksIHsganNvbl9lbmNvZGUgPSB0cnVlLCBsZW5ndGggPSA4IH06IHsganNvbl9lbmNvZGU/OiBib29sZWFuOyBsZW5ndGg/OiBudW1iZXIgfSA9IHt9KTogc3RyaW5nIHtcbiAgICBpZiAoanNvbl9lbmNvZGUpIHtcbiAgICAgIGRhdGEgPSBKU09OLnN0cmluZ2lmeShkYXRhKTtcbiAgICB9XG4gICAgY29uc3QgbWQ1ID0gY3J5cHRvLmNyZWF0ZUhhc2goJ21kNScpLnVwZGF0ZShkYXRhKS5kaWdlc3QoJ2hleCcpO1xuICAgIHJldHVybiBtZDUuc2xpY2UoMCwgbGVuZ3RoKS50b1VwcGVyQ2FzZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBtYXBBdHRyaWJ1dGVzKHZhbHVlczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSk6IGNvbm5lY3QuQ2ZuRGF0YVRhYmxlUmVjb3JkLlZhbHVlUHJvcGVydHlbXSB7XG4gICAgY29uc3QgcmV0IDogY29ubmVjdC5DZm5EYXRhVGFibGVSZWNvcmQuVmFsdWVQcm9wZXJ0eVtdID0gW107XG4gICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXModmFsdWVzKSkge1xuICAgICAgY29uc3QgbG9va3VwID0gdGhpcy5kZWZpbmVkQXR0cmlidXRlcy5nZXQoa2V5KTtcbiAgICAgIGlmICghbG9va3VwIHx8ICFsb29rdXAuYXR0cmlidXRlSWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IFZhbGlkYXRpb25FcnJvcihsaXRgQXJndW1lbnRzYCwgYEtleSAke2tleX0gd2FzIG5vdCBmb3VuZC4gTWFrZSBzdXJlIHlvdSBkZWZpbmVkIGl0IHdpdGggRGF0YVRhYmxlLmFkZEF0dHJpYnV0ZWAsIHRoaXMpO1xuICAgICAgfVxuICAgICAgcmV0LnB1c2goe1xuICAgICAgICAvLyBUaGlzIGlnbm9yZSBpcyBiZWNhdXNlIHdlIENBTiBwdXNoIGEgSVJlc29sdmFibGUgdG8gYXR0cmlidXRlSWRcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBhdHRyaWJ1dGVJZDogbG9va3VwLmF0dHJpYnV0ZUlkLFxuICAgICAgICBhdHRyaWJ1dGVWYWx1ZTogdmFsdWUsXG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHJldDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgcmVjb3JkIGludG8gdGhlIGRhdGEgdGFibGUuXG4gICAqIFJlcXVpcmVzIHRoYXQgYWxsIGF0dHJpYnV0ZXMgd2VyZSBkZWZpbmVkIHZpYSB7RGF0YVRhYmxlLmFkZEF0dHJpYnV0ZX1cbiAgICpcbiAgICogQHBhcmFtIHByaW1hcnlfdmFsdWVzIFRvIHNldCB0aGUgZGVmYXVsdCByZWNvcmRzLCBzcGVjaWZ5IGFuZCBlbXB0eSBvYmplY3QgKHt9KVxuICAgKiBAcGFyYW0gdmFsdWVzXG4gICAqL1xuICBhZGRSZWNvcmQocHJpbWFyeV92YWx1ZXM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0sIHZhbHVlczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSApIHtcbiAgICBjb25zdCBrZXloYXNoID0gdGhpcy5idWlsZEhhc2gocHJpbWFyeV92YWx1ZXMpO1xuICAgIG5ldyBjb25uZWN0LkNmbkRhdGFUYWJsZVJlY29yZChcbiAgICAgIHRoaXMsIGBSZWNvcmQtJHtrZXloYXNofWAsXG4gICAgICB7XG4gICAgICAgIGluc3RhbmNlQXJuOiB0aGlzLmluc3RhbmNlQXJuLFxuICAgICAgICBkYXRhVGFibGVBcm46IHRoaXMuZGF0YVRhYmxlQXJuLFxuICAgICAgICBkYXRhVGFibGVSZWNvcmQ6IHtcbiAgICAgICAgICBwcmltYXJ5VmFsdWVzOiB0aGlzLm1hcEF0dHJpYnV0ZXMocHJpbWFyeV92YWx1ZXMpLFxuICAgICAgICAgIHZhbHVlczogdGhpcy5tYXBBdHRyaWJ1dGVzKHZhbHVlcyksXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIERhdGFUYWJsZSBleHRlbmRzIERhdGFUYWJsZUJhc2Uge1xuICBwdWJsaWMgc3RhdGljIGZyb21Mb29rdXAoc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgb3B0aW9uczogRGF0YVRhYmxlTG9va3VwT3B0aW9ucyk6IElEYXRhVGFibGUge1xuICAgIGlmIChUb2tlbi5pc1VucmVzb2x2ZWQob3B0aW9ucy5uYW1lKVxuICAgICAgfHwgVG9rZW4uaXNVbnJlc29sdmVkKG9wdGlvbnMuaW5zdGFuY2VBcm4pXG4gICAgICB8fCBUb2tlbi5pc1VucmVzb2x2ZWQob3B0aW9ucy5kYXRhVGFibGVJZClcbiAgICAgIHx8IFRva2VuLmlzVW5yZXNvbHZlZChvcHRpb25zLmRhdGFUYWJsZUFybikpIHtcbiAgICAgIHRocm93IG5ldyBWYWxpZGF0aW9uRXJyb3IobGl0YEFyZ3VtZW50c2AsICdBbGwgYXJndW1lbnRzIHRvIERhdGFUYWJsZS5mcm9tTG9va3VwKCkgbXVzdCBiZSBjb25jcmV0ZSAobm8gVG9rZW5zKScsIHNjb3BlKTtcbiAgICB9XG5cbiAgICBjb25zdCBmaWx0ZXI6IGFueSA9IHt9O1xuXG4gICAgZmlsdGVyLnJlc291cmNlTW9kZWwgPSB7XG4gICAgICBJbnN0YW5jZUFybjogb3B0aW9ucy5pbnN0YW5jZUFybixcbiAgICB9O1xuICAgIGlmIChvcHRpb25zLmRhdGFUYWJsZUFybikge1xuICAgICAgZmlsdGVyLmV4YWN0SWRlbnRpZmllciA9IG9wdGlvbnMuZGF0YVRhYmxlQXJuO1xuICAgIH0gZWxzZSBpZiAob3B0aW9ucy5kYXRhVGFibGVJZCkge1xuICAgICAgZmlsdGVyLmV4YWN0SWRlbnRpZmllciA9IGAke29wdGlvbnMuaW5zdGFuY2VBcm59L2RhdGEtdGFibGUvJHtvcHRpb25zLmRhdGFUYWJsZUlkfWA7XG4gICAgfVxuICAgIGlmIChvcHRpb25zLm5hbWUpIHtcbiAgICAgIGZpbHRlci5wcm9wZXJ0eU1hdGNoIHx8PSB7fTtcbiAgICAgIGZpbHRlci5wcm9wZXJ0eU1hdGNoLk5hbWUgPSBvcHRpb25zLm5hbWU7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzcG9uc2U6IHsgW2tleTogc3RyaW5nXTogYW55IH1bXSA9IENvbnRleHRQcm92aWRlci5nZXRWYWx1ZShzY29wZSwge1xuICAgICAgcHJvdmlkZXI6IGN4c2NoZW1hLkNvbnRleHRQcm92aWRlci5DQ19BUElfUFJPVklERVIsXG4gICAgICBwcm9wczoge1xuICAgICAgICB0eXBlTmFtZTogJ0FXUzo6Q29ubmVjdDo6RGF0YVRhYmxlJyxcbiAgICAgICAgLi4uZmlsdGVyLFxuICAgICAgICBwcm9wZXJ0aWVzVG9SZXR1cm46IFsnQXJuJywgJ05hbWUnXSxcbiAgICAgICAgZXhwZWN0ZWRNYXRjaENvdW50OiAnZXhhY3RseS1vbmUnLFxuICAgICAgfSBhcyBjeHNjaGVtYS5DY0FwaUNvbnRleHRRdWVyeSxcbiAgICAgIGR1bW15VmFsdWU6IHVuZGVmaW5lZCxcbiAgICB9KS52YWx1ZTtcblxuICAgIGxldCBpbnN0YW5jZSA9IHVuZGVmaW5lZDtcbiAgICBpZiAocmVzcG9uc2UgJiYgcmVzcG9uc2VbMF0pIHtcbiAgICAgIGluc3RhbmNlID0ge1xuICAgICAgICBpbnN0YW5jZUFybjogb3B0aW9ucy5pbnN0YW5jZUFybixcbiAgICAgICAgZGF0YVRhYmxlQXJuOiByZXNwb25zZVswXS5Bcm4sXG4gICAgICAgIG5hbWU6IHJlc3BvbnNlWzBdLk5hbWUsXG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4gbmV3IExvb2tlZFVwRGF0YVRhYmxlKHNjb3BlLCBpZCwgaW5zdGFuY2UgPz8gRFVNTVlfREFUQV9UQUJMRV9QUk9QUywgaW5zdGFuY2UgPT09IHVuZGVmaW5lZCk7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IGluc3RhbmNlOiBJSW5zdGFuY2U7XG4gIHByaXZhdGUgcmVhZG9ubHkgcmVzb3VyY2U6IGNvbm5lY3QuQ2ZuRGF0YVRhYmxlO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBEYXRhVGFibGVQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBhZGRDb25zdHJ1Y3RNZXRhZGF0YSh0aGlzLCBwcm9wcyk7XG5cbiAgICB0aGlzLmluc3RhbmNlID0gcHJvcHMuaW5zdGFuY2U7XG4gICAgdGhpcy5yZXNvdXJjZSA9IG5ldyBjb25uZWN0LkNmbkRhdGFUYWJsZSh0aGlzLCAnRGF0YVRhYmxlJywge1xuICAgICAgaW5zdGFuY2VBcm46IHByb3BzLmluc3RhbmNlLmluc3RhbmNlQXJuLFxuICAgICAgbmFtZTogcHJvcHMubmFtZSxcbiAgICAgIGRlc2NyaXB0aW9uOiBwcm9wcy5kZXNjcmlwdGlvbixcbiAgICAgIHN0YXR1czogJ1BVQkxJU0hFRCcsIC8vIG9ubHkgb25lIHZhbHVlIGFsbG93ZWRcbiAgICAgIHRpbWVab25lOiBwcm9wcy50aW1lWm9uZSB8fCAnVVRDJyxcbiAgICAgIHZhbHVlTG9ja0xldmVsOiBwcm9wcy52YWx1ZUxvY2tMZXZlbCB8fCBEYXRhVGFibGVWYWx1ZUxvY2tMZXZlbC5OT05FLFxuICAgIH0pO1xuICB9XG5cbiAgZ2V0IGluc3RhbmNlQXJuKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaW5zdGFuY2UuaW5zdGFuY2VBcm47XG4gIH1cblxuICBnZXQgZGF0YVRhYmxlQXJuKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucmVzb3VyY2UuYXR0ckFybjtcbiAgfVxufVxuXG5jbGFzcyBMb29rZWRVcERhdGFUYWJsZSBleHRlbmRzIERhdGFUYWJsZUJhc2Uge1xuICBwdWJsaWMgcmVhZG9ubHkgZGF0YVRhYmxlQXJuOiBzdHJpbmc7XG4gIHB1YmxpYyByZWFkb25seSBpbnN0YW5jZUFybjogc3RyaW5nO1xuICBwdWJsaWMgcmVhZG9ubHkgaW5jb21wbGV0ZURlZmluaXRpb246IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IGFueSwgaXNJbmNvbXBsZXRlOiBib29sZWFuKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICByZWdpb246IHByb3BzLnJlZ2lvbixcbiAgICAgIGFjY291bnQ6IHByb3BzLm93bmVyQWNjb3VudElkLFxuICAgIH0pO1xuICAgIGFkZENvbnN0cnVjdE1ldGFkYXRhKHRoaXMsIHByb3BzKTtcblxuICAgIHRoaXMuaW5zdGFuY2VBcm4gPSBwcm9wcy5pbnN0YW5jZUFybjtcbiAgICB0aGlzLmRhdGFUYWJsZUFybiA9IHByb3BzLmRhdGFUYWJsZUFybjtcbiAgICB0aGlzLmluY29tcGxldGVEZWZpbml0aW9uID0gaXNJbmNvbXBsZXRlO1xuICB9XG59XG5cbiJdfQ==
@@ -4,7 +4,7 @@ exports.EmailAddress = void 0;
4
4
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
5
5
  const aws_cdk_lib_1 = require("aws-cdk-lib");
6
6
  class EmailAddress extends aws_cdk_lib_1.Resource {
7
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.EmailAddress", version: "0.2.4" };
7
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.EmailAddress", version: "0.2.5" };
8
8
  resource;
9
9
  constructor(scope, id, props) {
10
10
  super(scope, id);
@@ -50,7 +50,7 @@ var HoursOfOperationDayOfWeek;
50
50
  HoursOfOperationDayOfWeek["SATURDAY"] = "SATURDAY";
51
51
  })(HoursOfOperationDayOfWeek || (exports.HoursOfOperationDayOfWeek = HoursOfOperationDayOfWeek = {}));
52
52
  class HoursOfOperationDefinition {
53
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.HoursOfOperationDefinition", version: "0.2.4" };
53
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.HoursOfOperationDefinition", version: "0.2.5" };
54
54
  static dayOfWeek(day, startTime, endTime) {
55
55
  return new HoursOfOperationDefinition({ config: { dayOfWeek: day, startTime: startTime, endTime: endTime } });
56
56
  }
@@ -83,7 +83,7 @@ class HoursOfOperationDefinition {
83
83
  }
84
84
  exports.HoursOfOperationDefinition = HoursOfOperationDefinition;
85
85
  class HoursOfOperation extends aws_cdk_lib_1.Resource {
86
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.HoursOfOperation", version: "0.2.4" };
86
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.HoursOfOperation", version: "0.2.5" };
87
87
  static fromLookup(scope, id, options) {
88
88
  if (aws_cdk_lib_1.Token.isUnresolved(options.name)
89
89
  || aws_cdk_lib_1.Token.isUnresolved(options.instanceArn)
package/lib/instance.js CHANGED
@@ -104,7 +104,7 @@ const DUMMY_INSTANCE_PROPS = {
104
104
  instanceId: 'instance-12345',
105
105
  };
106
106
  class Instance extends InstanceBase {
107
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.Instance", version: "0.2.4" };
107
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.Instance", version: "0.2.5" };
108
108
  static fromLookup(scope, id, options) {
109
109
  if (aws_cdk_lib_1.Token.isUnresolved(options.instanceId)
110
110
  || aws_cdk_lib_1.Token.isUnresolved(options.instanceName)
@@ -15,7 +15,7 @@ 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" };
18
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.PhoneNumber", version: "0.2.5" };
19
19
  resource;
20
20
  constructor(scope, id, props) {
21
21
  super(scope, id);
package/lib/queue.js CHANGED
@@ -45,7 +45,7 @@ var QueueStatus;
45
45
  QueueStatus["DISABLED"] = "DISABLED";
46
46
  })(QueueStatus || (exports.QueueStatus = QueueStatus = {}));
47
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" };
48
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.Queue", version: "0.2.5" };
49
49
  static fromLookup(scope, id, options) {
50
50
  if (aws_cdk_lib_1.Token.isUnresolved(options.name)
51
51
  || aws_cdk_lib_1.Token.isUnresolved(options.instanceArn)
@@ -55,7 +55,14 @@ export interface QuickConnectProps {
55
55
  */
56
56
  readonly userConfig?: QuickConnectUserConfig;
57
57
  }
58
+ export interface QuickConnectLookupOptions {
59
+ readonly instanceArn: string;
60
+ readonly quickConnectArn?: string;
61
+ readonly quickConnectId?: string;
62
+ readonly name?: string;
63
+ }
58
64
  export declare class QuickConnect extends Resource implements IQuickConnect {
65
+ static fromLookup(scope: Construct, id: string, options: QuickConnectLookupOptions): IQuickConnect;
59
66
  private readonly resource;
60
67
  constructor(scope: Construct, id: string, props: QuickConnectProps);
61
68
  private buildQuickConnect;
@@ -1,8 +1,43 @@
1
1
  "use strict";
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
+ })();
2
35
  Object.defineProperty(exports, "__esModule", { value: true });
3
36
  exports.QuickConnect = exports.QuickConnectType = void 0;
4
37
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
5
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");
6
41
  const metadata_resource_1 = require("aws-cdk-lib/core/lib/metadata-resource");
7
42
  var QuickConnectType;
8
43
  (function (QuickConnectType) {
@@ -10,8 +45,55 @@ var QuickConnectType;
10
45
  QuickConnectType["QUEUE"] = "QUEUE";
11
46
  QuickConnectType["USER"] = "USER";
12
47
  })(QuickConnectType || (exports.QuickConnectType = QuickConnectType = {}));
48
+ const DUMMY_QUICK_CONNECT_PROPS = {
49
+ instanceArn: 'instance-arn',
50
+ quickConnectArn: 'quick-connect-arn',
51
+ name: 'quick-connect-name',
52
+ };
13
53
  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" };
54
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.QuickConnect", version: "0.2.5" };
55
+ static fromLookup(scope, id, options) {
56
+ if (aws_cdk_lib_1.Token.isUnresolved(options.name)
57
+ || aws_cdk_lib_1.Token.isUnresolved(options.instanceArn)
58
+ || aws_cdk_lib_1.Token.isUnresolved(options.quickConnectId)
59
+ || aws_cdk_lib_1.Token.isUnresolved(options.quickConnectArn)) {
60
+ throw new aws_cdk_lib_1.ValidationError((0, helpers_internal_1.lit) `Arguments`, 'All arguments to QuickConnect.fromLookup() must be concrete (no Tokens)', scope);
61
+ }
62
+ const filter = {};
63
+ filter.resourceModel = {
64
+ InstanceArn: options.instanceArn,
65
+ };
66
+ if (options.quickConnectArn) {
67
+ filter.exactIdentifier = options.quickConnectArn;
68
+ }
69
+ else if (options.quickConnectId) {
70
+ filter.exactIdentifier = `${options.instanceArn}/transfer-destination/${options.quickConnectId}`;
71
+ }
72
+ if (options.name) {
73
+ filter.propertyMatch ||= {};
74
+ filter.propertyMatch.Name = options.name;
75
+ }
76
+ const response = aws_cdk_lib_1.ContextProvider.getValue(scope, {
77
+ provider: cxschema.ContextProvider.CC_API_PROVIDER,
78
+ props: {
79
+ typeName: 'AWS::Connect::QuickConnect',
80
+ ...filter,
81
+ propertiesToReturn: ['QuickConnectArn', 'QuickConnectType', 'Name'],
82
+ expectedMatchCount: 'exactly-one',
83
+ },
84
+ dummyValue: undefined,
85
+ }).value;
86
+ let instance = undefined;
87
+ if (response && response[0]) {
88
+ instance = {
89
+ instanceArn: options.instanceArn,
90
+ quickConnectArn: response[0].QuickConnectArn,
91
+ type: response[0].Type,
92
+ name: response[0].Name,
93
+ };
94
+ }
95
+ return new LookedUpQuickConnect(scope, id, instance ?? DUMMY_QUICK_CONNECT_PROPS, instance === undefined);
96
+ }
15
97
  resource;
16
98
  constructor(scope, id, props) {
17
99
  super(scope, id);
@@ -68,4 +150,19 @@ class QuickConnect extends aws_cdk_lib_1.Resource {
68
150
  }
69
151
  }
70
152
  exports.QuickConnect = QuickConnect;
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVpY2tfY29ubmVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9xdWlja19jb25uZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSw2Q0FJcUI7QUFDckIsOEVBQThFO0FBYzlFLElBQVksZ0JBSVg7QUFKRCxXQUFZLGdCQUFnQjtJQUMxQixpREFBNkIsQ0FBQTtJQUM3QixtQ0FBZSxDQUFBO0lBQ2YsaUNBQWEsQ0FBQTtBQUNmLENBQUMsRUFKVyxnQkFBZ0IsZ0NBQWhCLGdCQUFnQixRQUkzQjtBQTZDRCxNQUFhLFlBQWEsU0FBUSxzQkFBUTs7SUFDdkIsUUFBUSxDQUEwQjtJQUVuRCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXdCO1FBQ2hFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBQSx3Q0FBb0IsRUFBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFbEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLHlCQUFPLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxjQUFjLEVBQUU7WUFDaEUsV0FBVyxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVztZQUN2QyxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7WUFDaEIsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzlCLGtCQUFrQixFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUM7U0FDbEQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGlCQUFpQixDQUFDLEtBQXdCO1FBQ2hELElBQUksS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3RCLElBQUksS0FBSyxDQUFDLFdBQVcsSUFBSSxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQzFDLE1BQU0sSUFBSSxLQUFLLENBQUMsMERBQTBELENBQUMsQ0FBQztZQUM5RSxDQUFDO1lBQ0QsT0FBTztnQkFDTCxnQkFBZ0IsRUFBRSxnQkFBZ0IsQ0FBQyxZQUFZO2dCQUMvQyxXQUFXLEVBQUU7b0JBQ1gsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO2lCQUMvQjthQUNGLENBQUM7UUFDSixDQUFDO2FBQU0sSUFBSSxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDN0IsSUFBSSxLQUFLLENBQUMsV0FBVyxJQUFJLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDMUMsTUFBTSxJQUFJLEtBQUssQ0FBQywwREFBMEQsQ0FBQyxDQUFDO1lBQzlFLENBQUM7WUFDRCxPQUFPO2dCQUNMLGdCQUFnQixFQUFFLGdCQUFnQixDQUFDLEtBQUs7Z0JBQ3hDLFdBQVcsRUFBRTtvQkFDWCxjQUFjLEVBQUUsS0FBSyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsY0FBYztvQkFDckQsUUFBUSxFQUFFLEtBQUssQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLFFBQVE7aUJBQzNDO2FBQ0YsQ0FBQztRQUNKLENBQUM7YUFBTSxJQUFJLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUM1QixJQUFJLEtBQUssQ0FBQyxXQUFXLElBQUksS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUMzQyxNQUFNLElBQUksS0FBSyxDQUFDLDBEQUEwRCxDQUFDLENBQUM7WUFDOUUsQ0FBQztZQUNELE9BQU87Z0JBQ0wsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUMsSUFBSTtnQkFDdkMsVUFBVSxFQUFFO29CQUNWLGNBQWMsRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxjQUFjO29CQUNwRCxPQUFPLEVBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTztpQkFDdkM7YUFDRixDQUFDO1FBQ0osQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLElBQUksS0FBSyxDQUFDLGtFQUFrRSxDQUFDLENBQUM7UUFDdEYsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJLGVBQWU7UUFDakIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDO0lBQzNDLENBQUM7O0FBeERILG9DQXlEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGF3c19jb25uZWN0IGFzIGNvbm5lY3QsXG4gIElSZXNvdXJjZSxcbiAgUmVzb3VyY2UsXG59IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IGFkZENvbnN0cnVjdE1ldGFkYXRhIH0gZnJvbSAnYXdzLWNkay1saWIvY29yZS9saWIvbWV0YWRhdGEtcmVzb3VyY2UnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBJQ29udGFjdEZsb3cgfSBmcm9tICcuL2NvbnRhY3RfZmxvdyc7XG5pbXBvcnQgeyBJSW5zdGFuY2UgfSBmcm9tICcuL2luc3RhbmNlJztcbmltcG9ydCB7IElRdWV1ZSB9IGZyb20gJy4vcXVldWUnO1xuaW1wb3J0IHsgSVVzZXIgfSBmcm9tICcuL3VzZXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIElRdWlja0Nvbm5lY3QgZXh0ZW5kcyBJUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgcXVpY2sgY29ubmVjdC5cbiAgICovXG4gIHJlYWRvbmx5IHF1aWNrQ29ubmVjdEFybjogc3RyaW5nO1xufVxuXG5leHBvcnQgZW51bSBRdWlja0Nvbm5lY3RUeXBlIHtcbiAgUEhPTkVfTlVNQkVSID0gJ1BIT05FX05VTUJFUicsXG4gIFFVRVVFID0gJ1FVRVVFJyxcbiAgVVNFUiA9ICdVU0VSJyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBRdWlja0Nvbm5lY3RRdWV1ZUNvbmZpZyB7XG4gIHJlYWRvbmx5IGZsb3c6IElDb250YWN0RmxvdztcbiAgcmVhZG9ubHkgcXVldWU6IElRdWV1ZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBRdWlja0Nvbm5lY3RVc2VyQ29uZmlnIHtcbiAgcmVhZG9ubHkgdXNlcjogSVVzZXI7XG4gIHJlYWRvbmx5IGZsb3c6IElDb250YWN0Rmxvdztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBRdWlja0Nvbm5lY3RQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgQVdTIGNvbm5lY3QgaW5zdGFuY2UgdG8gYXR0YWNoIHRoZSBxdWljayBjb25uZWN0IHRvLlxuICAgKi9cbiAgcmVhZG9ubHkgaW5zdGFuY2U6IElJbnN0YW5jZTtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBxdWljayBjb25uZWN0LlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBxdWljayBjb25uZWN0LlxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiB0aGUgcGhvbmUgbnVtYmVyIHRvIHVzZSBmb3IgdGhpcyBxdWljayBjb25uZWN0LlxuICAgKlxuICAgKiBDYW5ub3QgYmUgc2V0IHdpdGggcXVldWVDb25maWcgb3IgdXNlckNvbmZpZ1xuICAgKi9cbiAgcmVhZG9ubHkgcGhvbmVOdW1iZXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiB0aGUgcXVldWUgYW5kIGZsb3cgdG8gdXNlIGZvciB0aGlzIHF1aWNrIGNvbm5lY3QuXG4gICAqXG4gICAqIENhbm5vdCBiZSBzZXQgd2l0aCBwaG9uZU51bWJlciBvciB1c2VyQ29uZmlnXG4gICAqL1xuICByZWFkb25seSBxdWV1ZUNvbmZpZz86IFF1aWNrQ29ubmVjdFF1ZXVlQ29uZmlnO1xuICAvKipcbiAgICogdGhlIHVzZXIgdG8gdXNlIGZvciB0aGlzIHF1aWNrIGNvbm5lY3QuXG4gICAqXG4gICAqIENhbm5vdCBiZSBzZXQgd2l0aCBwaG9uZU51bWJlciBvciBxdWV1ZUNvbmZpZ1xuICAgKi9cbiAgcmVhZG9ubHkgdXNlckNvbmZpZz86IFF1aWNrQ29ubmVjdFVzZXJDb25maWc7XG59XG5cbmV4cG9ydCBjbGFzcyBRdWlja0Nvbm5lY3QgZXh0ZW5kcyBSZXNvdXJjZSBpbXBsZW1lbnRzIElRdWlja0Nvbm5lY3Qge1xuICBwcml2YXRlIHJlYWRvbmx5IHJlc291cmNlOiBjb25uZWN0LkNmblF1aWNrQ29ubmVjdDtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogUXVpY2tDb25uZWN0UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgYWRkQ29uc3RydWN0TWV0YWRhdGEodGhpcywgcHJvcHMpO1xuXG4gICAgdGhpcy5yZXNvdXJjZSA9IG5ldyBjb25uZWN0LkNmblF1aWNrQ29ubmVjdCh0aGlzLCAnUXVpY2tDb25uZWN0Jywge1xuICAgICAgaW5zdGFuY2VBcm46IHByb3BzLmluc3RhbmNlLmluc3RhbmNlQXJuLFxuICAgICAgbmFtZTogcHJvcHMubmFtZSxcbiAgICAgIGRlc2NyaXB0aW9uOiBwcm9wcy5kZXNjcmlwdGlvbixcbiAgICAgIHF1aWNrQ29ubmVjdENvbmZpZzogdGhpcy5idWlsZFF1aWNrQ29ubmVjdChwcm9wcyksXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkUXVpY2tDb25uZWN0KHByb3BzOiBRdWlja0Nvbm5lY3RQcm9wcyk6IGNvbm5lY3QuQ2ZuUXVpY2tDb25uZWN0LlF1aWNrQ29ubmVjdENvbmZpZ1Byb3BlcnR5IHtcbiAgICBpZiAocHJvcHMucGhvbmVOdW1iZXIpIHtcbiAgICAgIGlmIChwcm9wcy5xdWV1ZUNvbmZpZyB8fCBwcm9wcy51c2VyQ29uZmlnKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcigncGhvbmVOdW1iZXIgY2Fubm90IGJlIHNldCB3aXRoIHF1ZXVlQ29uZmlnIG9yIHVzZXJDb25maWcnKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB7XG4gICAgICAgIHF1aWNrQ29ubmVjdFR5cGU6IFF1aWNrQ29ubmVjdFR5cGUuUEhPTkVfTlVNQkVSLFxuICAgICAgICBwaG9uZUNvbmZpZzoge1xuICAgICAgICAgIHBob25lTnVtYmVyOiBwcm9wcy5waG9uZU51bWJlcixcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfSBlbHNlIGlmIChwcm9wcy5xdWV1ZUNvbmZpZykge1xuICAgICAgaWYgKHByb3BzLnBob25lTnVtYmVyIHx8IHByb3BzLnVzZXJDb25maWcpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdxdWV1ZUNvbmZpZyBjYW5ub3QgYmUgc2V0IHdpdGggcGhvbmVOdW1iZXIgb3IgdXNlckNvbmZpZycpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcXVpY2tDb25uZWN0VHlwZTogUXVpY2tDb25uZWN0VHlwZS5RVUVVRSxcbiAgICAgICAgcXVldWVDb25maWc6IHtcbiAgICAgICAgICBjb250YWN0Rmxvd0FybjogcHJvcHMucXVldWVDb25maWcuZmxvdy5jb250YWN0Rmxvd0FybixcbiAgICAgICAgICBxdWV1ZUFybjogcHJvcHMucXVldWVDb25maWcucXVldWUucXVldWVBcm4sXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIH0gZWxzZSBpZiAocHJvcHMudXNlckNvbmZpZykge1xuICAgICAgaWYgKHByb3BzLnBob25lTnVtYmVyIHx8IHByb3BzLnF1ZXVlQ29uZmlnKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcigndXNlckNvbmZpZyBjYW5ub3QgYmUgc2V0IHdpdGggcGhvbmVOdW1iZXIgb3IgcXVldWVDb25maWcnKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB7XG4gICAgICAgIHF1aWNrQ29ubmVjdFR5cGU6IFF1aWNrQ29ubmVjdFR5cGUuVVNFUixcbiAgICAgICAgdXNlckNvbmZpZzoge1xuICAgICAgICAgIGNvbnRhY3RGbG93QXJuOiBwcm9wcy51c2VyQ29uZmlnLmZsb3cuY29udGFjdEZsb3dBcm4sXG4gICAgICAgICAgdXNlckFybjogcHJvcHMudXNlckNvbmZpZy51c2VyLnVzZXJBcm4sXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ09uZSBvZiBwaG9uZU51bWJlciwgdXNlckNvbmZpZywgb3IgcXVldWVDb25maWcgbXVzdCBiZSBzcGVjaWZpZWQnKTtcbiAgICB9XG4gIH1cblxuICBnZXQgcXVpY2tDb25uZWN0QXJuKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucmVzb3VyY2UuYXR0clF1aWNrQ29ubmVjdEFybjtcbiAgfVxufVxuXG4iXX0=
153
+ class LookedUpQuickConnect extends aws_cdk_lib_1.Resource {
154
+ instanceArn;
155
+ quickConnectArn;
156
+ incompleteDefinition;
157
+ constructor(scope, id, props, isIncomplete) {
158
+ super(scope, id, {
159
+ region: props.region,
160
+ account: props.ownerAccountId,
161
+ });
162
+ (0, metadata_resource_1.addConstructMetadata)(this, props);
163
+ this.instanceArn = props.instanceArn;
164
+ this.quickConnectArn = props.quickConnectArn;
165
+ this.incompleteDefinition = isIncomplete;
166
+ }
167
+ }
168
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVpY2tfY29ubmVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9xdWlja19jb25uZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2Q0FPcUI7QUFDckIsNEVBQThEO0FBQzlELDRFQUE0RDtBQUM1RCw4RUFBOEU7QUFjOUUsSUFBWSxnQkFJWDtBQUpELFdBQVksZ0JBQWdCO0lBQzFCLGlEQUE2QixDQUFBO0lBQzdCLG1DQUFlLENBQUE7SUFDZixpQ0FBYSxDQUFBO0FBQ2YsQ0FBQyxFQUpXLGdCQUFnQixnQ0FBaEIsZ0JBQWdCLFFBSTNCO0FBNkNELE1BQU0seUJBQXlCLEdBQUc7SUFDaEMsV0FBVyxFQUFFLGNBQWM7SUFDM0IsZUFBZSxFQUFFLG1CQUFtQjtJQUNwQyxJQUFJLEVBQUUsb0JBQW9CO0NBQzNCLENBQUM7QUFTRixNQUFhLFlBQWEsU0FBUSxzQkFBUTs7SUFDakMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxPQUFrQztRQUN2RixJQUFJLG1CQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7ZUFDL0IsbUJBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztlQUN2QyxtQkFBSyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDO2VBQzFDLG1CQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO1lBQ2pELE1BQU0sSUFBSSw2QkFBZSxDQUFDLElBQUEsc0JBQUcsRUFBQSxXQUFXLEVBQUUseUVBQXlFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDOUgsQ0FBQztRQUVELE1BQU0sTUFBTSxHQUFRLEVBQUUsQ0FBQztRQUV2QixNQUFNLENBQUMsYUFBYSxHQUFHO1lBQ3JCLFdBQVcsRUFBRSxPQUFPLENBQUMsV0FBVztTQUNqQyxD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QUFFLEVBQUUsRUFBRTtZQUNmLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTtZQUNwQixPQUFPLEVBQUUsS0FBSyxDQUFDLGNBQWM7U0FDOUIsQ0FBQyxDQUFDO1FBQ0gsSUFBQSx3Q0FBb0IsRUFBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFbEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDLGVBQWUsQ0FBQztRQUM3QyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsWUFBWSxDQUFDO0lBQzNDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGF3c19jb25uZWN0IGFzIGNvbm5lY3QsXG4gIENvbnRleHRQcm92aWRlcixcbiAgSVJlc291cmNlLFxuICBSZXNvdXJjZSxcbiAgVG9rZW4sXG4gIFZhbGlkYXRpb25FcnJvcixcbn0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0ICogYXMgY3hzY2hlbWEgZnJvbSAnYXdzLWNkay1saWIvY2xvdWQtYXNzZW1ibHktc2NoZW1hJztcbmltcG9ydCB7IGxpdCB9IGZyb20gJ2F3cy1jZGstbGliL2NvcmUvbGliL2hlbHBlcnMtaW50ZXJuYWwnO1xuaW1wb3J0IHsgYWRkQ29uc3RydWN0TWV0YWRhdGEgfSBmcm9tICdhd3MtY2RrLWxpYi9jb3JlL2xpYi9tZXRhZGF0YS1yZXNvdXJjZSc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IElDb250YWN0RmxvdyB9IGZyb20gJy4vY29udGFjdF9mbG93JztcbmltcG9ydCB7IElJbnN0YW5jZSB9IGZyb20gJy4vaW5zdGFuY2UnO1xuaW1wb3J0IHsgSVF1ZXVlIH0gZnJvbSAnLi9xdWV1ZSc7XG5pbXBvcnQgeyBJVXNlciB9IGZyb20gJy4vdXNlcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVF1aWNrQ29ubmVjdCBleHRlbmRzIElSZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBxdWljayBjb25uZWN0LlxuICAgKi9cbiAgcmVhZG9ubHkgcXVpY2tDb25uZWN0QXJuOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIFF1aWNrQ29ubmVjdFR5cGUge1xuICBQSE9ORV9OVU1CRVIgPSAnUEhPTkVfTlVNQkVSJyxcbiAgUVVFVUUgPSAnUVVFVUUnLFxuICBVU0VSID0gJ1VTRVInLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFF1aWNrQ29ubmVjdFF1ZXVlQ29uZmlnIHtcbiAgcmVhZG9ubHkgZmxvdzogSUNvbnRhY3RGbG93O1xuICByZWFkb25seSBxdWV1ZTogSVF1ZXVlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFF1aWNrQ29ubmVjdFVzZXJDb25maWcge1xuICByZWFkb25seSB1c2VyOiBJVXNlcjtcbiAgcmVhZG9ubHkgZmxvdzogSUNvbnRhY3RGbG93O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFF1aWNrQ29ubmVjdFByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBBV1MgY29ubmVjdCBpbnN0YW5jZSB0byBhdHRhY2ggdGhlIHF1aWNrIGNvbm5lY3QgdG8uXG4gICAqL1xuICByZWFkb25seSBpbnN0YW5jZTogSUluc3RhbmNlO1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHF1aWNrIGNvbm5lY3QuXG4gICAqL1xuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgZGVzY3JpcHRpb24gb2YgdGhlIHF1aWNrIGNvbm5lY3QuXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIHRoZSBwaG9uZSBudW1iZXIgdG8gdXNlIGZvciB0aGlzIHF1aWNrIGNvbm5lY3QuXG4gICAqXG4gICAqIENhbm5vdCBiZSBzZXQgd2l0aCBxdWV1ZUNvbmZpZyBvciB1c2VyQ29uZmlnXG4gICAqL1xuICByZWFkb25seSBwaG9uZU51bWJlcj86IHN0cmluZztcbiAgLyoqXG4gICAqIHRoZSBxdWV1ZSBhbmQgZmxvdyB0byB1c2UgZm9yIHRoaXMgcXVpY2sgY29ubmVjdC5cbiAgICpcbiAgICogQ2Fubm90IGJlIHNldCB3aXRoIHBob25lTnVtYmVyIG9yIHVzZXJDb25maWdcbiAgICovXG4gIHJlYWRvbmx5IHF1ZXVlQ29uZmlnPzogUXVpY2tDb25uZWN0UXVldWVDb25maWc7XG4gIC8qKlxuICAgKiB0aGUgdXNlciB0byB1c2UgZm9yIHRoaXMgcXVpY2sgY29ubmVjdC5cbiAgICpcbiAgICogQ2Fubm90IGJlIHNldCB3aXRoIHBob25lTnVtYmVyIG9yIHF1ZXVlQ29uZmlnXG4gICAqL1xuICByZWFkb25seSB1c2VyQ29uZmlnPzogUXVpY2tDb25uZWN0VXNlckNvbmZpZztcbn1cblxuY29uc3QgRFVNTVlfUVVJQ0tfQ09OTkVDVF9QUk9QUyA9IHtcbiAgaW5zdGFuY2VBcm46ICdpbnN0YW5jZS1hcm4nLFxuICBxdWlja0Nvbm5lY3RBcm46ICdxdWljay1jb25uZWN0LWFybicsXG4gIG5hbWU6ICdxdWljay1jb25uZWN0LW5hbWUnLFxufTtcblxuZXhwb3J0IGludGVyZmFjZSBRdWlja0Nvbm5lY3RMb29rdXBPcHRpb25zIHtcbiAgcmVhZG9ubHkgaW5zdGFuY2VBcm46IHN0cmluZztcbiAgcmVhZG9ubHkgcXVpY2tDb25uZWN0QXJuPzogc3RyaW5nO1xuICByZWFkb25seSBxdWlja0Nvbm5lY3RJZD86IHN0cmluZztcbiAgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIFF1aWNrQ29ubmVjdCBleHRlbmRzIFJlc291cmNlIGltcGxlbWVudHMgSVF1aWNrQ29ubmVjdCB7XG4gIHB1YmxpYyBzdGF0aWMgZnJvbUxvb2t1cChzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBvcHRpb25zOiBRdWlja0Nvbm5lY3RMb29rdXBPcHRpb25zKTogSVF1aWNrQ29ubmVjdCB7XG4gICAgaWYgKFRva2VuLmlzVW5yZXNvbHZlZChvcHRpb25zLm5hbWUpXG4gICAgICB8fCBUb2tlbi5pc1VucmVzb2x2ZWQob3B0aW9ucy5pbnN0YW5jZUFybilcbiAgICAgIHx8IFRva2VuLmlzVW5yZXNvbHZlZChvcHRpb25zLnF1aWNrQ29ubmVjdElkKVxuICAgICAgfHwgVG9rZW4uaXNVbnJlc29sdmVkKG9wdGlvbnMucXVpY2tDb25uZWN0QXJuKSkge1xuICAgICAgdGhyb3cgbmV3IFZhbGlkYXRpb25FcnJvcihsaXRgQXJndW1lbnRzYCwgJ0FsbCBhcmd1bWVudHMgdG8gUXVpY2tDb25uZWN0LmZyb21Mb29rdXAoKSBtdXN0IGJlIGNvbmNyZXRlIChubyBUb2tlbnMpJywgc2NvcGUpO1xuICAgIH1cblxuICAgIGNvbnN0IGZpbHRlcjogYW55ID0ge307XG5cbiAgICBmaWx0ZXIucmVzb3VyY2VNb2RlbCA9IHtcbiAgICAgIEluc3RhbmNlQXJuOiBvcHRpb25zLmluc3RhbmNlQXJuLFxuICAgIH07XG4gICAgaWYgKG9wdGlvbnMucXVpY2tDb25uZWN0QXJuKSB7XG4gICAgICBmaWx0ZXIuZXhhY3RJZGVudGlmaWVyID0gb3B0aW9ucy5xdWlja0Nvbm5lY3RBcm47XG4gICAgfSBlbHNlIGlmIChvcHRpb25zLnF1aWNrQ29ubmVjdElkKSB7XG4gICAgICBmaWx0ZXIuZXhhY3RJZGVudGlmaWVyID0gYCR7b3B0aW9ucy5pbnN0YW5jZUFybn0vdHJhbnNmZXItZGVzdGluYXRpb24vJHtvcHRpb25zLnF1aWNrQ29ubmVjdElkfWA7XG4gICAgfVxuICAgIGlmIChvcHRpb25zLm5hbWUpIHtcbiAgICAgIGZpbHRlci5wcm9wZXJ0eU1hdGNoIHx8PSB7fTtcbiAgICAgIGZpbHRlci5wcm9wZXJ0eU1hdGNoLk5hbWUgPSBvcHRpb25zLm5hbWU7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzcG9uc2U6IHsgW2tleTogc3RyaW5nXTogYW55IH1bXSA9IENvbnRleHRQcm92aWRlci5nZXRWYWx1ZShzY29wZSwge1xuICAgICAgcHJvdmlkZXI6IGN4c2NoZW1hLkNvbnRleHRQcm92aWRlci5DQ19BUElfUFJPVklERVIsXG4gICAgICBwcm9wczoge1xuICAgICAgICB0eXBlTmFtZTogJ0FXUzo6Q29ubmVjdDo6UXVpY2tDb25uZWN0JyxcbiAgICAgICAgLi4uZmlsdGVyLFxuICAgICAgICBwcm9wZXJ0aWVzVG9SZXR1cm46IFsnUXVpY2tDb25uZWN0QXJuJywgJ1F1aWNrQ29ubmVjdFR5cGUnLCAnTmFtZSddLFxuICAgICAgICBleHBlY3RlZE1hdGNoQ291bnQ6ICdleGFjdGx5LW9uZScsXG4gICAgICB9IGFzIGN4c2NoZW1hLkNjQXBpQ29udGV4dFF1ZXJ5LFxuICAgICAgZHVtbXlWYWx1ZTogdW5kZWZpbmVkLFxuICAgIH0pLnZhbHVlO1xuXG4gICAgbGV0IGluc3RhbmNlID0gdW5kZWZpbmVkO1xuICAgIGlmIChyZXNwb25zZSAmJiByZXNwb25zZVswXSkge1xuICAgICAgaW5zdGFuY2UgPSB7XG4gICAgICAgIGluc3RhbmNlQXJuOiBvcHRpb25zLmluc3RhbmNlQXJuLFxuICAgICAgICBxdWlja0Nvbm5lY3RBcm46IHJlc3BvbnNlWzBdLlF1aWNrQ29ubmVjdEFybixcbiAgICAgICAgdHlwZTogcmVzcG9uc2VbMF0uVHlwZSxcbiAgICAgICAgbmFtZTogcmVzcG9uc2VbMF0uTmFtZSxcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiBuZXcgTG9va2VkVXBRdWlja0Nvbm5lY3Qoc2NvcGUsIGlkLCBpbnN0YW5jZSA/PyBEVU1NWV9RVUlDS19DT05ORUNUX1BST1BTLCBpbnN0YW5jZSA9PT0gdW5kZWZpbmVkKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgcmVzb3VyY2U6IGNvbm5lY3QuQ2ZuUXVpY2tDb25uZWN0O1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBRdWlja0Nvbm5lY3RQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBhZGRDb25zdHJ1Y3RNZXRhZGF0YSh0aGlzLCBwcm9wcyk7XG5cbiAgICB0aGlzLnJlc291cmNlID0gbmV3IGNvbm5lY3QuQ2ZuUXVpY2tDb25uZWN0KHRoaXMsICdRdWlja0Nvbm5lY3QnLCB7XG4gICAgICBpbnN0YW5jZUFybjogcHJvcHMuaW5zdGFuY2UuaW5zdGFuY2VBcm4sXG4gICAgICBuYW1lOiBwcm9wcy5uYW1lLFxuICAgICAgZGVzY3JpcHRpb246IHByb3BzLmRlc2NyaXB0aW9uLFxuICAgICAgcXVpY2tDb25uZWN0Q29uZmlnOiB0aGlzLmJ1aWxkUXVpY2tDb25uZWN0KHByb3BzKSxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgYnVpbGRRdWlja0Nvbm5lY3QocHJvcHM6IFF1aWNrQ29ubmVjdFByb3BzKTogY29ubmVjdC5DZm5RdWlja0Nvbm5lY3QuUXVpY2tDb25uZWN0Q29uZmlnUHJvcGVydHkge1xuICAgIGlmIChwcm9wcy5waG9uZU51bWJlcikge1xuICAgICAgaWYgKHByb3BzLnF1ZXVlQ29uZmlnIHx8IHByb3BzLnVzZXJDb25maWcpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdwaG9uZU51bWJlciBjYW5ub3QgYmUgc2V0IHdpdGggcXVldWVDb25maWcgb3IgdXNlckNvbmZpZycpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcXVpY2tDb25uZWN0VHlwZTogUXVpY2tDb25uZWN0VHlwZS5QSE9ORV9OVU1CRVIsXG4gICAgICAgIHBob25lQ29uZmlnOiB7XG4gICAgICAgICAgcGhvbmVOdW1iZXI6IHByb3BzLnBob25lTnVtYmVyLFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICB9IGVsc2UgaWYgKHByb3BzLnF1ZXVlQ29uZmlnKSB7XG4gICAgICBpZiAocHJvcHMucGhvbmVOdW1iZXIgfHwgcHJvcHMudXNlckNvbmZpZykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3F1ZXVlQ29uZmlnIGNhbm5vdCBiZSBzZXQgd2l0aCBwaG9uZU51bWJlciBvciB1c2VyQ29uZmlnJyk7XG4gICAgICB9XG4gICAgICByZXR1cm4ge1xuICAgICAgICBxdWlja0Nvbm5lY3RUeXBlOiBRdWlja0Nvbm5lY3RUeXBlLlFVRVVFLFxuICAgICAgICBxdWV1ZUNvbmZpZzoge1xuICAgICAgICAgIGNvbnRhY3RGbG93QXJuOiBwcm9wcy5xdWV1ZUNvbmZpZy5mbG93LmNvbnRhY3RGbG93QXJuLFxuICAgICAgICAgIHF1ZXVlQXJuOiBwcm9wcy5xdWV1ZUNvbmZpZy5xdWV1ZS5xdWV1ZUFybixcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfSBlbHNlIGlmIChwcm9wcy51c2VyQ29uZmlnKSB7XG4gICAgICBpZiAocHJvcHMucGhvbmVOdW1iZXIgfHwgcHJvcHMucXVldWVDb25maWcpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd1c2VyQ29uZmlnIGNhbm5vdCBiZSBzZXQgd2l0aCBwaG9uZU51bWJlciBvciBxdWV1ZUNvbmZpZycpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcXVpY2tDb25uZWN0VHlwZTogUXVpY2tDb25uZWN0VHlwZS5VU0VSLFxuICAgICAgICB1c2VyQ29uZmlnOiB7XG4gICAgICAgICAgY29udGFjdEZsb3dBcm46IHByb3BzLnVzZXJDb25maWcuZmxvdy5jb250YWN0Rmxvd0FybixcbiAgICAgICAgICB1c2VyQXJuOiBwcm9wcy51c2VyQ29uZmlnLnVzZXIudXNlckFybixcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignT25lIG9mIHBob25lTnVtYmVyLCB1c2VyQ29uZmlnLCBvciBxdWV1ZUNvbmZpZyBtdXN0IGJlIHNwZWNpZmllZCcpO1xuICAgIH1cbiAgfVxuXG4gIGdldCBxdWlja0Nvbm5lY3RBcm4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5yZXNvdXJjZS5hdHRyUXVpY2tDb25uZWN0QXJuO1xuICB9XG59XG5cbmNsYXNzIExvb2tlZFVwUXVpY2tDb25uZWN0IGV4dGVuZHMgUmVzb3VyY2UgaW1wbGVtZW50cyBJUXVpY2tDb25uZWN0IHtcbiAgcHVibGljIHJlYWRvbmx5IGluc3RhbmNlQXJuOiBzdHJpbmc7XG4gIHB1YmxpYyByZWFkb25seSBxdWlja0Nvbm5lY3RBcm46IHN0cmluZztcbiAgcHVibGljIHJlYWRvbmx5IGluY29tcGxldGVEZWZpbml0aW9uOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBhbnksIGlzSW5jb21wbGV0ZTogYm9vbGVhbikge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgcmVnaW9uOiBwcm9wcy5yZWdpb24sXG4gICAgICBhY2NvdW50OiBwcm9wcy5vd25lckFjY291bnRJZCxcbiAgICB9KTtcbiAgICBhZGRDb25zdHJ1Y3RNZXRhZGF0YSh0aGlzLCBwcm9wcyk7XG5cbiAgICB0aGlzLmluc3RhbmNlQXJuID0gcHJvcHMuaW5zdGFuY2VBcm47XG4gICAgdGhpcy5xdWlja0Nvbm5lY3RBcm4gPSBwcm9wcy5xdWlja0Nvbm5lY3RBcm47XG4gICAgdGhpcy5pbmNvbXBsZXRlRGVmaW5pdGlvbiA9IGlzSW5jb21wbGV0ZTtcbiAgfVxufVxuXG4iXX0=
@@ -54,7 +54,7 @@ const DUMMY_ROUTING_PROFILE_PROPS = {
54
54
  routingProfileArn: 'routing-profile-arn',
55
55
  };
56
56
  class RoutingProfile extends aws_cdk_lib_1.Resource {
57
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.RoutingProfile", version: "0.2.4" };
57
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.RoutingProfile", version: "0.2.5" };
58
58
  static fromLookup(scope, id, options) {
59
59
  if (aws_cdk_lib_1.Token.isUnresolved(options.name)
60
60
  || aws_cdk_lib_1.Token.isUnresolved(options.instanceArn)
@@ -40,7 +40,7 @@ const cxschema = __importStar(require("aws-cdk-lib/cloud-assembly-schema"));
40
40
  const helpers_internal_1 = require("aws-cdk-lib/core/lib/helpers-internal");
41
41
  const metadata_resource_1 = require("aws-cdk-lib/core/lib/metadata-resource");
42
42
  class SecurityProfile extends aws_cdk_lib_1.Resource {
43
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.SecurityProfile", version: "0.2.4" };
43
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.SecurityProfile", version: "0.2.5" };
44
44
  static fromLookup(scope, id, options) {
45
45
  if (aws_cdk_lib_1.Token.isUnresolved(options.securityProfileName)
46
46
  || aws_cdk_lib_1.Token.isUnresolved(options.instanceArn)
@@ -41,7 +41,7 @@ var StorageConfigType;
41
41
  StorageConfigType["KINESIS_FIREHOSE"] = "KINESIS_FIREHOSE";
42
42
  })(StorageConfigType || (exports.StorageConfigType = StorageConfigType = {}));
43
43
  class StorageConfig {
44
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.StorageConfig", version: "0.2.4" };
44
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.StorageConfig", version: "0.2.5" };
45
45
  static buildS3(resourceType, props) {
46
46
  return new StorageConfig({
47
47
  resourceType,
@@ -5,7 +5,7 @@ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
5
5
  const aws_cdk_lib_1 = require("aws-cdk-lib");
6
6
  const metadata_resource_1 = require("aws-cdk-lib/core/lib/metadata-resource");
7
7
  class TrafficDistributionGroup extends aws_cdk_lib_1.Resource {
8
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.TrafficDistributionGroup", version: "0.2.4" };
8
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@netforbpo/aws-cdk-aws-connect-lib.TrafficDistributionGroup", version: "0.2.5" };
9
9
  resource;
10
10
  constructor(scope, id, props) {
11
11
  super(scope, id);