cdk-rds-sql 1.2.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.jsii CHANGED
@@ -3544,7 +3544,7 @@
3544
3544
  },
3545
3545
  "locationInModule": {
3546
3546
  "filename": "src/role.ts",
3547
- "line": 63
3547
+ "line": 67
3548
3548
  },
3549
3549
  "parameters": [
3550
3550
  {
@@ -3570,7 +3570,7 @@
3570
3570
  "kind": "class",
3571
3571
  "locationInModule": {
3572
3572
  "filename": "src/role.ts",
3573
- "line": 52
3573
+ "line": 56
3574
3574
  },
3575
3575
  "name": "Role",
3576
3576
  "properties": [
@@ -3582,7 +3582,7 @@
3582
3582
  "immutable": true,
3583
3583
  "locationInModule": {
3584
3584
  "filename": "src/role.ts",
3585
- "line": 56
3585
+ "line": 60
3586
3586
  },
3587
3587
  "name": "roleName",
3588
3588
  "type": {
@@ -3597,7 +3597,7 @@
3597
3597
  "immutable": true,
3598
3598
  "locationInModule": {
3599
3599
  "filename": "src/role.ts",
3600
- "line": 61
3600
+ "line": 65
3601
3601
  },
3602
3602
  "name": "secret",
3603
3603
  "type": {
@@ -3630,7 +3630,7 @@
3630
3630
  "immutable": true,
3631
3631
  "locationInModule": {
3632
3632
  "filename": "src/role.ts",
3633
- "line": 42
3633
+ "line": 46
3634
3634
  },
3635
3635
  "name": "cluster",
3636
3636
  "type": {
@@ -3673,14 +3673,14 @@
3673
3673
  "abstract": true,
3674
3674
  "docs": {
3675
3675
  "default": "no connection to any database is granted",
3676
- "remarks": "Specify none of `database` or `databaseName` or only one of them.",
3676
+ "remarks": "If the database exists, connect privileges are granted.\n\nSpecify none of `database` or `databaseName` or only one of them.",
3677
3677
  "stability": "stable",
3678
3678
  "summary": "Optional database this user is expected to use."
3679
3679
  },
3680
3680
  "immutable": true,
3681
3681
  "locationInModule": {
3682
3682
  "filename": "src/role.ts",
3683
- "line": 28
3683
+ "line": 30
3684
3684
  },
3685
3685
  "name": "database",
3686
3686
  "optional": true,
@@ -3692,14 +3692,14 @@
3692
3692
  "abstract": true,
3693
3693
  "docs": {
3694
3694
  "default": "no connection to any database is granted",
3695
- "remarks": "Specify none of `database` or `databaseName` or only one of them.",
3695
+ "remarks": "If the database exists, connect privileges are granted.\n\nSpecify none of `database` or `databaseName` or only one of them.",
3696
3696
  "stability": "stable",
3697
- "summary": "Ootional database name this user is expected to use."
3697
+ "summary": "Optional database name this user is expected to use."
3698
3698
  },
3699
3699
  "immutable": true,
3700
3700
  "locationInModule": {
3701
3701
  "filename": "src/role.ts",
3702
- "line": 37
3702
+ "line": 41
3703
3703
  },
3704
3704
  "name": "databaseName",
3705
3705
  "optional": true,
@@ -3717,7 +3717,7 @@
3717
3717
  "immutable": true,
3718
3718
  "locationInModule": {
3719
3719
  "filename": "src/role.ts",
3720
- "line": 49
3720
+ "line": 53
3721
3721
  },
3722
3722
  "name": "encryptionKey",
3723
3723
  "optional": true,
@@ -3968,6 +3968,6 @@
3968
3968
  "symbolId": "src/sql:SqlProps"
3969
3969
  }
3970
3970
  },
3971
- "version": "1.2.0",
3972
- "fingerprint": "GzpHL2Ve2rinu9K4fHfpLnd0igwZ3tGh+gZ+QRmZMcM="
3971
+ "version": "1.2.1",
3972
+ "fingerprint": "/+nfNq09Me7iGMxy5hYAunN5ksCTvw3C9qhsgXCjYjE="
3973
3973
  }
package/lib/database.js CHANGED
@@ -40,5 +40,5 @@ class Database extends aws_cdk_lib_1.CustomResource {
40
40
  }
41
41
  exports.Database = Database;
42
42
  _a = JSII_RTTI_SYMBOL_1;
43
- Database[_a] = { fqn: "cdk-rds-sql.Database", version: "1.2.0" };
43
+ Database[_a] = { fqn: "cdk-rds-sql.Database", version: "1.2.1" };
44
44
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZGF0YWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2Q0FBNEM7QUFDNUMsMkNBQXNDO0FBQ3RDLGlDQUF1QztBQTJCdkMsTUFBTSxnQkFBaUIsU0FBUSxzQkFBUztJQUd0QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXlCO1FBQ2pFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUE7UUFDaEIsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFBO0lBQ3hDLENBQUM7Q0FDRjtBQUVELE1BQWEsUUFBUyxTQUFRLDRCQUFjO0lBWTFDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBb0I7UUFDNUQsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDZixZQUFZLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZO1lBQ3pDLFVBQVUsRUFBRTtnQkFDVixRQUFRLEVBQUUscUJBQWMsQ0FBQyxRQUFRO2dCQUNqQyxVQUFVLEVBQUUsS0FBSyxDQUFDLFlBQVk7Z0JBQzlCLFNBQVMsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxTQUFTO2dCQUMxQyxLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxRQUFRO2FBQzdCO1NBQ0YsQ0FBQyxDQUFBO1FBQ0YsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBQ3ZDLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQTtRQUN0QyxJQUFJLEtBQUssQ0FBQyxLQUFLLEVBQUU7WUFDZixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUE7U0FDckM7SUFDSCxDQUFDO0lBMUJEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLGdCQUFnQixDQUFDLEtBQWdCLEVBQUUsRUFBVSxFQUFFLFlBQW9CO1FBQ3hFLE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ3JDLFlBQVksRUFBRSxZQUFZO1NBQzNCLENBQUMsQ0FBQTtJQUNKLENBQUM7O0FBUkgsNEJBNEJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3VzdG9tUmVzb3VyY2UgfSBmcm9tIFwiYXdzLWNkay1saWJcIlxuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIlxuaW1wb3J0IHsgUmRzU3FsUmVzb3VyY2UgfSBmcm9tIFwiLi9lbnVtXCJcbmltcG9ydCB7IFByb3ZpZGVyIH0gZnJvbSBcIi4vcHJvdmlkZXJcIlxuaW1wb3J0IHsgUm9sZSB9IGZyb20gXCIuL3JvbGVcIlxuXG5pbnRlcmZhY2UgRGF0YWJhc2VBdHRyaWJ1dGVzIHtcbiAgLyoqXG4gICAqIE5hbWUgb2YgZGF0YWJhc2UgdG8gY3JlYXRlLlxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YWJhc2VOYW1lOiBzdHJpbmdcblxuICAvKipcbiAgICogT3B0aW9uYWwgZGF0YWJhc2Ugb3duZXIuXG4gICAqL1xuICByZWFkb25seSBvd25lcj86IFJvbGVcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEYXRhYmFzZVByb3BzIGV4dGVuZHMgRGF0YWJhc2VBdHRyaWJ1dGVzIHtcbiAgLyoqXG4gICAqIFByb3ZpZGVyLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvdmlkZXI6IFByb3ZpZGVyXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSURhdGFiYXNlIHtcbiAgcmVhZG9ubHkgZGF0YWJhc2VOYW1lOiBzdHJpbmdcbn1cblxuY2xhc3MgSW1wb3J0ZWREYXRhYmFzZSBleHRlbmRzIENvbnN0cnVjdCBpbXBsZW1lbnRzIElEYXRhYmFzZSB7XG4gIHB1YmxpYyByZWFkb25seSBkYXRhYmFzZU5hbWU6IHN0cmluZ1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBEYXRhYmFzZUF0dHJpYnV0ZXMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpXG4gICAgdGhpcy5kYXRhYmFzZU5hbWUgPSBwcm9wcy5kYXRhYmFzZU5hbWVcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRGF0YWJhc2UgZXh0ZW5kcyBDdXN0b21SZXNvdXJjZSBpbXBsZW1lbnRzIElEYXRhYmFzZSB7XG4gIC8qKlxuICAgKiBSZXR1cm4gYSBEYXRhYmFzZSBiYXNlZCB1cG9uIG5hbWUgb25seS4gVXNlIGZvciBpbXBvcnRpbmcgZXhpc3RpbmcgZGF0YWJhc2VzLlxuICAgKi9cbiAgc3RhdGljIGZyb21EYXRhYmFzZU5hbWUoc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgZGF0YWJhc2VOYW1lOiBzdHJpbmcpOiBJRGF0YWJhc2Uge1xuICAgIHJldHVybiBuZXcgSW1wb3J0ZWREYXRhYmFzZShzY29wZSwgaWQsIHtcbiAgICAgIGRhdGFiYXNlTmFtZTogZGF0YWJhc2VOYW1lLFxuICAgIH0pXG4gIH1cblxuICBwdWJsaWMgcmVhZG9ubHkgZGF0YWJhc2VOYW1lOiBzdHJpbmdcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogRGF0YWJhc2VQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgc2VydmljZVRva2VuOiBwcm9wcy5wcm92aWRlci5zZXJ2aWNlVG9rZW4sXG4gICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgIFJlc291cmNlOiBSZHNTcWxSZXNvdXJjZS5EQVRBQkFTRSxcbiAgICAgICAgUmVzb3VyY2VJZDogcHJvcHMuZGF0YWJhc2VOYW1lLFxuICAgICAgICBTZWNyZXRBcm46IHByb3BzLnByb3ZpZGVyLnNlY3JldC5zZWNyZXRBcm4sXG4gICAgICAgIE93bmVyOiBwcm9wcy5vd25lcj8ucm9sZU5hbWUsXG4gICAgICB9LFxuICAgIH0pXG4gICAgdGhpcy5ub2RlLmFkZERlcGVuZGVuY3kocHJvcHMucHJvdmlkZXIpXG4gICAgdGhpcy5kYXRhYmFzZU5hbWUgPSBwcm9wcy5kYXRhYmFzZU5hbWVcbiAgICBpZiAocHJvcHMub3duZXIpIHtcbiAgICAgIHRoaXMubm9kZS5hZGREZXBlbmRlbmN5KHByb3BzLm93bmVyKVxuICAgIH1cbiAgfVxufVxuIl19
package/lib/handler.js CHANGED
@@ -33,11 +33,14 @@ const jumpTable = {
33
33
  const password = await getPassword(props.PasswordArn);
34
34
  if (password) {
35
35
  const sql = [
36
+ "start transaction",
36
37
  node_pg_format_1.format("create role %I with login password %L", resourceId, password),
37
38
  ];
38
39
  if (props.DatabaseName) {
39
- sql.push(node_pg_format_1.format("grant connect on database %I to %I", props.DatabaseName, resourceId));
40
+ // grant connect to database if database already exists
41
+ sql.push(node_pg_format_1.format("DO $$BEGIN\nIF EXISTS (select from pg_database where datname = '%s' and datistemplate = false) THEN grant connect on database %I to %I; END IF;\nEND$$;", props.DatabaseName, props.DatabaseName, resourceId));
40
42
  }
43
+ sql.push("commit");
41
44
  return sql;
42
45
  }
43
46
  else {
@@ -50,11 +53,13 @@ const jumpTable = {
50
53
  const password = await getPassword(props.PasswordArn);
51
54
  if (password) {
52
55
  const sql = [
56
+ "start transaction",
53
57
  node_pg_format_1.format("alter role %I rename to %I; alter role %I with password %L", oldResourceId, resourceId, resourceId, password),
54
58
  ];
55
59
  if (props.DatabaseName) {
56
60
  sql.push(node_pg_format_1.format("grant connect on database %I to %I", props.DatabaseName, resourceId));
57
61
  }
62
+ sql.push("commit");
58
63
  return sql;
59
64
  }
60
65
  else {
@@ -63,16 +68,20 @@ const jumpTable = {
63
68
  }
64
69
  else {
65
70
  return [
71
+ "start transaction",
66
72
  node_pg_format_1.format("alter role %I rename to %I", oldResourceId, resourceId),
67
- node_pg_format_1.format("grant connect on database %I to %I", props.DatabaseName, resourceId),
73
+ node_pg_format_1.format("DO $$BEGIN\nIF EXISTS (select from pg_database where datname = '%s' and datistemplate = false) THEN grant connect on database %I to %I; END IF;\nEND$$;", props.DatabaseName, props.DatabaseName, resourceId),
74
+ "commit",
68
75
  ];
69
76
  }
70
77
  },
71
78
  Delete: (resourceId) => {
72
79
  // TODO: if user is owner of a database, assign ownership to master user?
73
80
  return [
74
- node_pg_format_1.format("DO $$BEGIN\nIF EXISTS (SELECT FROM pg_catalog.pg_roles WHERE rolname = '%s') THEN revoke all privileges on database postgres from %I; END IF;\nEND$$;", resourceId, resourceId),
81
+ "start transaction",
82
+ node_pg_format_1.format("DO $$BEGIN\nIF EXISTS (select from pg_catalog.pg_roles WHERE rolname = '%s') THEN revoke all privileges on database postgres from %I; END IF;\nEND$$;", resourceId, resourceId),
75
83
  node_pg_format_1.format("drop role if exists %I", resourceId),
84
+ "commit",
76
85
  ];
77
86
  },
78
87
  },
@@ -200,4 +209,4 @@ const getPassword = async (arn) => {
200
209
  return json.password;
201
210
  }
202
211
  };
203
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDRFQUd3QztBQU14QyxtREFBdUM7QUFDdkMsMkJBQTJCO0FBQzNCLGlDQUF1QztBQStDdkMsTUFBTSxTQUFTLEdBQWM7SUFDM0IsR0FBRyxFQUFFO1FBQ0gsTUFBTSxFQUFFLENBQUMsQ0FBUyxFQUFFLEtBQVcsRUFBRSxFQUFFO1lBQ2pDLE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQTtRQUN4QixDQUFDO1FBQ0QsTUFBTSxFQUFFLENBQUMsQ0FBUyxFQUFFLEVBQVUsRUFBRSxLQUFXLEVBQUUsRUFBRTtZQUM3QyxPQUFPLEtBQUssQ0FBQyxTQUFTLENBQUE7UUFDeEIsQ0FBQztRQUNELE1BQU0sRUFBRSxDQUFDLENBQVMsRUFBRSxFQUFFLEdBQUUsQ0FBQztLQUMxQjtJQUNELE1BQU0sRUFBRTtRQUNOLE1BQU0sRUFBRSxLQUFLLEVBQUUsVUFBa0IsRUFBRSxFQUFFO1lBQ25DLE9BQU8sdUJBQU0sQ0FBQyxnQ0FBZ0MsRUFBRSxVQUFVLENBQUMsQ0FBQTtRQUM3RCxDQUFDO1FBQ0QsTUFBTSxFQUFFLEtBQUssRUFBRSxVQUFrQixFQUFFLGFBQXFCLEVBQUUsRUFBRTtZQUMxRCxPQUFPLHVCQUFNLENBQUMsOEJBQThCLEVBQUUsYUFBYSxFQUFFLFVBQVUsQ0FBQyxDQUFBO1FBQzFFLENBQUM7UUFDRCxNQUFNLEVBQUUsQ0FBQyxVQUFrQixFQUFFLEVBQUU7WUFDN0IsT0FBTyx1QkFBTSxDQUFDLGtDQUFrQyxFQUFFLFVBQVUsQ0FBQyxDQUFBO1FBQy9ELENBQUM7S0FDRjtJQUNELElBQUksRUFBRTtRQUNKLE1BQU0sRUFBRSxLQUFLLEVBQUUsVUFBa0IsRUFBRSxLQUFnQixFQUFFLEVBQUU7WUFDckQsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXO2dCQUFFLE1BQU0seUJBQXlCLENBQUE7WUFDdkQsTUFB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QUFjLEdBQUcsSUFBSSw2Q0FBb0IsQ0FBQyxFQUFFLENBQUMsQ0FBQTtJQUNuRCxNQUFNLE9BQU8sR0FBRyxJQUFJLDhDQUFxQixDQUFDO1FBQ3hDLFFBQVEsRUFBRSxHQUFHO0tBQ2QsQ0FBQyxDQUFBO0lBQ0YsTUFBTSxNQUFNLEdBQUcsTUFBTSxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBQ2pELElBQUksTUFBTSxDQUFDLFlBQVksRUFBRTtRQUN2QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUM1QyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUE7S0FDckI7QUFDSCxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBTZWNyZXRzTWFuYWdlckNsaWVudCxcbiAgR2V0U2VjcmV0VmFsdWVDb21tYW5kLFxufSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LXNlY3JldHMtbWFuYWdlclwiXG5pbXBvcnQge1xuICBDbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlQ3JlYXRlRXZlbnQsXG4gIENsb3VkRm9ybWF0aW9uQ3VzdG9tUmVzb3VyY2VVcGRhdGVFdmVudCxcbiAgQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZURlbGV0ZUV2ZW50LFxufSBmcm9tIFwiYXdzLWxhbWJkYVwiXG5pbXBvcnQgeyBmb3JtYXQgfSBmcm9tIFwibm9kZS1wZy1mb3JtYXRcIlxuaW1wb3J0IHsgQ2xpZW50IH0gZnJvbSBcInBnXCJcbmltcG9ydCB7IFJkc1NxbFJlc291cmNlIH0gZnJvbSBcIi4vZW51bVwiXG5cbmludGVyZmFjZSBDdXN0b21SZXNvdXJjZVJlc3BvbnNlIHtcbiAgUGh5c2ljYWxSZXNvdXJjZUlkPzogc3RyaW5nXG4gIERhdGE/OiBhbnlcbiAgTm9FY2hvPzogYm9vbGVhblxufVxuXG50eXBlIENyZWF0ZVJlc291cmNlSGFuZGxlciA9IChcbiAgcmVzb3VyY2VJZDogc3RyaW5nLFxuICBwcm9wcz86IGFueVxuKSA9PiBQcm9taXNlPHN0cmluZyB8IHN0cmluZ1tdPlxudHlwZSBVcGRhdGVSZXNvdXJjZUhhbmRsZXIgPSAoXG4gIHJlc291cmNlSWQ6IHN0cmluZyxcbiAgb2xkUmVzb3VyY2VJZDogc3RyaW5nLFxuICBwcm9wcz86IGFueVxuKSA9PiBQcm9taXNlPHN0cmluZyB8IHN0cmluZ1tdIHwgdm9pZD5cbnR5cGUgRGVsZXRlUmVzb3VyY2VIYW5kbGVyID0gKHJlc291cmNlSWQ6IHN0cmluZywgcHJvcHM/OiBhbnkpID0+IHN0cmluZyB8IHN0cmluZ1tdIHwgdm9pZFxuXG50eXBlIEp1bXBUYWJsZSA9IHtcbiAgW2tleSBpbiBSZHNTcWxSZXNvdXJjZV06IHtcbiAgICBDcmVhdGU6IENyZWF0ZVJlc291cmNlSGFuZGxlclxuICAgIFVwZGF0ZTogVXBkYXRlUmVzb3VyY2VIYW5kbGVyXG4gICAgRGVsZXRlOiBEZWxldGVSZXNvdXJjZUhhbmRsZXJcbiAgfVxufVxuXG5pbnRlcmZhY2UgUm9sZVByb3BzIHtcbiAgLyoqXG4gICAqIFNlY3JldCBBUk4uXG4gICAqL1xuICBQYXNzd29yZEFybjogc3RyaW5nXG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGRhdGFiYXNlIHRvIHdoaWNoIHJvbGUgaXMgZ3JhbnRlZCBjb25uZWN0IHBlcm1pc3Npb25zLlxuICAgKi9cbiAgRGF0YWJhc2VOYW1lPzogc3RyaW5nXG59XG5cbmludGVyZmFjZSBEYXRhYmFzZVByb3BzIHtcbiAgT3duZXI6IHN0cmluZ1xufVxuXG5pbnRlcmZhY2UgRGF0YWJhc2VVcGRhdGVQcm9wcyBleHRlbmRzIERhdGFiYXNlUHJvcHMge1xuICBNYXN0ZXJPd25lcjogc3RyaW5nXG59XG5cbmNvbnN0IGp1bXBUYWJsZTogSnVtcFRhYmxlID0ge1xuICBzcWw6IHtcbiAgICBDcmVhdGU6IChfOiBzdHJpbmcsIHByb3BzPzogYW55KSA9PiB7XG4gICAgICByZXR1cm4gcHJvcHMuU3RhdGVtZW50XG4gICAgfSxcbiAgICBVcGRhdGU6IChfOiBzdHJpbmcsIF9fOiBzdHJpbmcsIHByb3BzPzogYW55KSA9PiB7XG4gICAgICByZXR1cm4gcHJvcHMuU3RhdGVtZW50XG4gICAgfSxcbiAgICBEZWxldGU6IChfOiBzdHJpbmcpID0+IHt9LFxuICB9LFxuICBzY2hlbWE6IHtcbiAgICBDcmVhdGU6IGFzeW5jIChyZXNvdXJjZUlkOiBzdHJpbmcpID0+IHtcbiAgICAgIHJldHVybiBmb3JtYXQoXCJjcmVhdGUgc2NoZW1hIGlmIG5vdCBleGlzdHMgJUlcIiwgcmVzb3VyY2VJZClcbiAgICB9LFxuICAgIFVwZGF0ZTogYXN5bmMgKHJlc291cmNlSWQ6IHN0cmluZywgb2xkUmVzb3VyY2VJZDogc3RyaW5nKSA9PiB7XG4gICAgICByZXR1cm4gZm9ybWF0KFwiYWx0ZXIgc2NoZW1hICVJIHJlbmFtZSB0byAlSVwiLCBvbGRSZXNvdXJjZUlkLCByZXNvdXJjZUlkKVxuICAgIH0sXG4gICAgRGVsZXRlOiAocmVzb3VyY2VJZDogc3RyaW5nKSA9PiB7XG4gICAgICByZXR1cm4gZm9ybWF0KFwiZHJvcCBzY2hlbWEgaWYgZXhpc3RzICVJIGNhc2NhZGVcIiwgcmVzb3VyY2VJZClcbiAgICB9LFxuICB9LFxuICByb2xlOiB7XG4gICAgQ3JlYXRlOiBhc3luYyAocmVzb3VyY2VJZDogc3RyaW5nLCBwcm9wczogUm9sZVByb3BzKSA9PiB7XG4gICAgICBpZiAoIXByb3BzLlBhc3N3b3JkQXJuKSB0aHJvdyBcIk5vIFBhc3N3b3JkQXJuIHByb3ZpZGVkXCJcbiAgICAgIGNvbnN0IHBhc3N3b3JkID0gYXdhaXQgZ2V0UGFzc3dvcmQocHJvcHMuUGFzc3dvcmRBcm4pXG4gICAgICBpZiAocGFzc3dvcmQpIHtcbiAgICAgICAgY29uc3Qgc3FsID0gW1xuICAgICAgICAgIGZvcm1hdChcImNyZWF0ZSByb2xlICVJIHdpdGggbG9naW4gcGFzc3dvcmQgJUxcIiwgcmVzb3VyY2VJZCwgcGFzc3dvcmQpLFxuICAgICAgICBdXG4gICAgICAgIGlmIChwcm9wcy5EYXRhYmFzZU5hbWUpIHtcbiAgICAgICAgICBzcWwucHVzaChcbiAgICAgICAgICAgIGZvcm1hdChcImdyYW50IGNvbm5lY3Qgb24gZGF0YWJhc2UgJUkgdG8gJUlcIiwgcHJvcHMuRGF0YWJhc2VOYW1lLCByZXNvdXJjZUlkKVxuICAgICAgICAgIClcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc3FsXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aHJvdyBgQ2Fubm90IHBhcnNlIHBhc3N3b3JkIGZyb20gJHtwcm9wcy5QYXNzd29yZEFybn1gXG4gICAgICB9XG4gICAgfSxcbiAgICBVcGRhdGU6IGFzeW5jIChyZXNvdXJjZUlkOiBzdHJpbmcsIG9sZFJlc291cmNlSWQ6IHN0cmluZywgcHJvcHM6IFJvbGVQcm9wcykgPT4ge1xuICAgICAgLy8gVE9ETzogaWYgZGF0YWJhc2UgbmFtZSBoYXMgY2hhbmdlZCBpbiBPbGRSZXNvdXJjZVByb3BlcnRpZXMsIHJldm9rZSBjb25uZWN0XG4gICAgICBpZiAocHJvcHMgJiYgcHJvcHMuUGFzc3dvcmRBcm4pIHtcbiAgICAgICAgY29uc3QgcGFzc3dvcmQgPSBhd2FpdCBnZXRQYXNzd29yZChwcm9wcy5QYXNzd29yZEFybilcbiAgICAgICAgaWYgKHBhc3N3b3JkKSB7XG4gICAgICAgICAgY29uc3Qgc3FsID0gW1xuICAgICAgICAgICAgZm9ybWF0KFxuICAgICAgICAgICAgICBcImFsdGVyIHJvbGUgJUkgcmVuYW1lIHRvICVJOyBhbHRlciByb2xlICVJIHdpdGggcGFzc3dvcmQgJUxcIixcbiAgICAgICAgICAgICAgb2xkUmVzb3VyY2VJZCxcbiAgICAgICAgICAgICAgcmVzb3VyY2VJZCxcbiAgICAgICAgICAgICAgcmVzb3VyY2VJZCxcbiAgICAgICAgICAgICAgcGFzc3dvcmRcbiAgICAgICAgICAgICksXG4gICAgICAgICAgXVxuICAgICAgICAgIGlmIChwcm9wcy5EYXRhYmFzZU5hbWUpIHtcbiAgICAgICAgICAgIHNxbC5wdXNoKFxuICAgICAgICAgICAgICBmb3JtYXQoXCJncmFudCBjb25uZWN0IG9uIGRhdGFiYXNlICVJIHRvICVJXCIsIHByb3BzLkRhdGFiYXNlTmFtZSwgcmVzb3VyY2VJZClcbiAgICAgICAgICAgIClcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHNxbFxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRocm93IGBDYW5ub3QgcGFyc2UgcGFzc3dvcmQgZnJvbSAke3Byb3BzLlBhc3N3b3JkQXJufWBcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICBmb3JtYXQoXCJhbHRlciByb2xlICVJIHJlbmFtZSB0byAlSVwiLCBvbGRSZXNvdXJjZUlkLCByZXNvdXJjZUlkKSxcbiAgICAgICAgICBmb3JtYXQoXCJncmFudCBjb25uZWN0IG9uIGRhdGFiYXNlICVJIHRvICVJXCIsIHByb3BzLkRhdGFiYXNlTmFtZSwgcmVzb3VyY2VJZCksXG4gICAgICAgIF1cbiAgICAgIH1cbiAgICB9LFxuICAgIERlbGV0ZTogKHJlc291cmNlSWQ6IHN0cmluZykgPT4ge1xuICAgICAgLy8gVE9ETzogaWYgdXNlciBpcyBvd25lciBvZiBhIGRhdGFiYXNlLCBhc3NpZ24gb3duZXJzaGlwIHRvIG1hc3RlciB1c2VyP1xuICAgICAgcmV0dXJuIFtcbiAgICAgICAgZm9ybWF0KFxuICAgICAgICAgIFwiRE8gJCRCRUdJTlxcbklGIEVYSVNUUyAoU0VMRUNUIEZST00gcGdfY2F0YWxvZy5wZ19yb2xlcyBXSEVSRSByb2xuYW1lID0gJyVzJykgVEhFTiByZXZva2UgYWxsIHByaXZpbGVnZXMgb24gZGF0YWJhc2UgcG9zdGdyZXMgZnJvbSAlSTsgRU5EIElGO1xcbkVORCQkO1wiLFxuICAgICAgICAgIHJlc291cmNlSWQsXG4gICAgICAgICAgcmVzb3VyY2VJZFxuICAgICAgICApLFxuICAgICAgICBmb3JtYXQoXCJkcm9wIHJvbGUgaWYgZXhpc3RzICVJXCIsIHJlc291cmNlSWQpLFxuICAgICAgXVxuICAgIH0sXG4gIH0sXG4gIGRhdGFiYXNlOiB7XG4gICAgQ3JlYXRlOiBhc3luYyAocmVzb3VyY2VJZDogc3RyaW5nLCBwcm9wczogRGF0YWJhc2VQcm9wcykgPT4ge1xuICAgICAgY29uc3Qgb3duZXIgPSBwcm9wcy5Pd25lclxuICAgICAgaWYgKG93bmVyKSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgZm9ybWF0KFwiY3JlYXRlIGRhdGFiYXNlICVJXCIsIHJlc291cmNlSWQpLFxuICAgICAgICAgIGZvcm1hdChcImFsdGVyIGRhdGFiYXNlICVJIG93bmVyIHRvICVJXCIsIHJlc291cmNlSWQsIG93bmVyKSxcbiAgICAgICAgXVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGZvcm1hdChcImNyZWF0ZSBkYXRhYmFzZSAlSVwiLCByZXNvdXJjZUlkKVxuICAgICAgfVxuICAgIH0sXG4gICAgVXBkYXRlOiBhc3luYyAoXG4gICAgICByZXNvdXJjZUlkOiBzdHJpbmcsXG4gICAgICBvbGRSZXNvdXJjZUlkOiBzdHJpbmcsXG4gICAgICBwcm9wczogRGF0YWJhc2VVcGRhdGVQcm9wc1xuICAgICk6IFByb21pc2U8c3RyaW5nW10+ID0+IHtcbiAgICAgIGNvbnN0IHN0YXRlbWVudHM6IHN0cmluZ1tdID0gW11cbiAgICAgIGlmIChyZXNvdXJjZUlkICE9PSBvbGRSZXNvdXJjZUlkKSB7XG4gICAgICAgIGlmIChwcm9wcy5NYXN0ZXJPd25lcikge1xuICAgICAgICAgIHN0YXRlbWVudHMucHVzaChcbiAgICAgICAgICAgIGZvcm1hdChcImFsdGVyIGRhdGFiYXNlICVJIG93bmVyIHRvICVJXCIsIG9sZFJlc291cmNlSWQsIHByb3BzLk1hc3Rlck93bmVyKVxuICAgICAgICAgIClcbiAgICAgICAgfVxuICAgICAgICBzdGF0ZW1lbnRzLnB1c2goXG4gICAgICAgICAgZm9ybWF0KFwiYWx0ZXIgZGF0YWJhc2UgJUkgcmVuYW1lIHRvICVJXCIsIG9sZFJlc291cmNlSWQsIHJlc291cmNlSWQpXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGNvbnN0IG93bmVyID0gcHJvcHMuT3duZXJcbiAgICAgIGlmIChvd25lcikge1xuICAgICAgICBzdGF0ZW1lbnRzLnB1c2goZm9ybWF0KFwiYWx0ZXIgZGF0YWJhc2UgJUkgb3duZXIgdG8gJUlcIiwgcmVzb3VyY2VJZCwgcHJvcHMuT3duZXIpKVxuICAgICAgfVxuICAgICAgcmV0dXJuIHN0YXRlbWVudHNcbiAgICB9LFxuICAgIERlbGV0ZTogKHJlc291cmNlSWQ6IHN0cmluZykgPT4ge1xuICAgICAgcmV0dXJuIFtcbiAgICAgICAgZm9ybWF0KFxuICAgICAgICAgIFwic2VsZWN0IHBnX3Rlcm1pbmF0ZV9iYWNrZW5kKHBnX3N0YXRfYWN0aXZpdHkucGlkKSBmcm9tIHBnX3N0YXRfYWN0aXZpdHkgd2hlcmUgZGF0bmFtZSA9ICVMXCIsXG4gICAgICAgICAgcmVzb3VyY2VJZFxuICAgICAgICApLFxuICAgICAgICBmb3JtYXQoXCJkcm9wIGRhdGFiYXNlIGlmIGV4aXN0cyAlSVwiLCByZXNvdXJjZUlkKSxcbiAgICAgIF1cbiAgICB9LFxuICB9LFxufVxuXG5leHBvcnQgY29uc3QgaGFuZGxlciA9IGFzeW5jIChcbiAgZXZlbnQ6XG4gICAgfCBDbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlQ3JlYXRlRXZlbnRcbiAgICB8IENsb3VkRm9ybWF0aW9uQ3VzdG9tUmVzb3VyY2VVcGRhdGVFdmVudFxuICAgIHwgQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZURlbGV0ZUV2ZW50XG4pOiBQcm9taXNlPGFueT4gPT4ge1xuICAvL2NvbnNvbGUuZGVidWcoXCJFVkVOVFwiLCBldmVudClcblxuICBjb25zdCByZXF1ZXN0VHlwZSA9IGV2ZW50LlJlcXVlc3RUeXBlXG4gIGNvbnN0IHJlc291cmNlOiBSZHNTcWxSZXNvdXJjZSA9IGV2ZW50LlJlc291cmNlUHJvcGVydGllcy5SZXNvdXJjZVxuICBjb25zdCByZXNvdXJjZUlkID0gZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzLlJlc291cmNlSWRcbiAgY29uc3QgZGF0YWJhc2UgPSBldmVudC5SZXNvdXJjZVByb3BlcnRpZXMuRGF0YWJhc2VcblxuICBpZiAoIU9iamVjdC5rZXlzKGp1bXBUYWJsZSkuaW5jbHVkZXMoZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzLlJlc291cmNlKSkge1xuICAgIHRocm93IGBSZXNvdXJjZSB0eXBlICcke3Jlc291cmNlfScgbm90IHJlY29nbmlzZWQuYFxuICB9XG5cbiAgY29uc3Qgc2VjcmV0c19jbGllbnQgPSBuZXcgU2VjcmV0c01hbmFnZXJDbGllbnQoe30pXG4gIGNvbnN0IGNvbW1hbmQgPSBuZXcgR2V0U2VjcmV0VmFsdWVDb21tYW5kKHtcbiAgICBTZWNyZXRJZDogZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzLlNlY3JldEFybixcbiAgfSlcbiAgY29uc3Qgc2VjcmV0ID0gYXdhaXQgc2VjcmV0c19jbGllbnQuc2VuZChjb21tYW5kKVxuICBpZiAoIXNlY3JldC5TZWNyZXRTdHJpbmcpIHRocm93IFwiTm8gc2VjcmV0IHN0cmluZ1wiXG5cbiAgY29uc3Qgc2VjcmV0VmFsdWVzID0gSlNPTi5wYXJzZShzZWNyZXQuU2VjcmV0U3RyaW5nKVxuXG4gIGxldCBzcWw6IHN0cmluZyB8IHN0cmluZ1tdIHwgdm9pZFxuICBzd2l0Y2ggKHJlcXVlc3RUeXBlKSB7XG4gICAgY2FzZSBcIkNyZWF0ZVwiOiB7XG4gICAgICBzcWwgPSBhd2FpdCBqdW1wVGFibGVbcmVzb3VyY2VdW3JlcXVlc3RUeXBlXShyZXNvdXJjZUlkLCBldmVudC5SZXNvdXJjZVByb3BlcnRpZXMpXG4gICAgICBicmVha1xuICAgIH1cbiAgICBjYXNlIFwiVXBkYXRlXCI6IHtcbiAgICAgIGNvbnN0IG9sZFJlc291cmNlSWQgPSAoZXZlbnQgYXMgQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZVVwZGF0ZUV2ZW50KVxuICAgICAgICAuUGh5c2ljYWxSZXNvdXJjZUlkXG4gICAgICBzcWwgPSBhd2FpdCBqdW1wVGFibGVbcmVzb3VyY2VdW3JlcXVlc3RUeXBlXShyZXNvdXJjZUlkLCBvbGRSZXNvdXJjZUlkLCB7XG4gICAgICAgIC4uLmV2ZW50LlJlc291cmNlUHJvcGVydGllcyxcbiAgICAgICAgTWFzdGVyT3duZXI6IHNlY3JldFZhbHVlcy51c2VybmFtZSxcbiAgICAgIH0pXG4gICAgICBicmVha1xuICAgIH1cbiAgICBjYXNlIFwiRGVsZXRlXCI6IHtcbiAgICAgIGNvbnN0IG9sZFJlc291cmNlSWQgPSAoZXZlbnQgYXMgQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZURlbGV0ZUV2ZW50KVxuICAgICAgICAuUGh5c2ljYWxSZXNvdXJjZUlkXG4gICAgICBzcWwgPSBqdW1wVGFibGVbcmVzb3VyY2VdW3JlcXVlc3RUeXBlXShyZXNvdXJjZUlkLCBvbGRSZXNvdXJjZUlkKVxuICAgICAgYnJlYWtcbiAgICB9XG4gIH1cblxuICBpZiAoc3FsKSB7XG4gICAgLy9jb25zb2xlLmRlYnVnKFwiREFUQUJBU0VcIiwgZGF0YWJhc2UpXG4gICAgY29uc29sZS5kZWJ1ZyhcIlNRTFwiLCBzcWwpXG4gICAgY29uc3QgcGFyYW1zID0ge1xuICAgICAgaG9zdDogc2VjcmV0VmFsdWVzLmhvc3QsXG4gICAgICBwb3J0OiBzZWNyZXRWYWx1ZXMucG9ydCxcbiAgICAgIHVzZXI6IHNlY3JldFZhbHVlcy51c2VybmFtZSxcbiAgICAgIHBhc3N3b3JkOiBzZWNyZXRWYWx1ZXMucGFzc3dvcmQsXG4gICAgICBkYXRhYmFzZTogZGF0YWJhc2UsXG4gICAgICBjb25uZWN0aW9uVGltZW91dE1pbGxpczogMjAwMCwgLy8gcmV0dXJuIGFuIGVycm9yIGlmIGEgY29ubmVjdGlvbiBjb3VsZCBub3QgYmUgZXN0YWJsaXNoZWQgd2l0aGluIDIgc2Vjb25kc1xuICAgIH1cbiAgICAvL2NvbnNvbGUuZGVidWcgKFwiUEFSQU1TXCIsIHBhcmFtcylcbiAgICBjb25zdCBwZ19jbGllbnQgPSBuZXcgQ2xpZW50KHBhcmFtcylcbiAgICBhd2FpdCBwZ19jbGllbnQuY29ubmVjdCgpXG4gICAgdHJ5IHtcbiAgICAgIGlmICh0eXBlb2Ygc3FsID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgIGF3YWl0IHBnX2NsaWVudC5xdWVyeShzcWwpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgICAgICBzcWwubWFwKGFzeW5jIChzdGF0ZW1lbnQpID0+IHtcbiAgICAgICAgICAgIGF3YWl0IHBnX2NsaWVudC5xdWVyeShzdGF0ZW1lbnQpXG4gICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICAgfVxuICAgIH0gZmluYWxseSB7XG4gICAgICBhd2FpdCBwZ19jbGllbnQuZW5kKClcbiAgICB9XG4gIH1cblxuICBsZXQgcmVzcG9uc2U6IEN1c3RvbVJlc291cmNlUmVzcG9uc2UgPSB7fVxuICAvLyBFeGNlcHQgZm9yIHRoZSBTUUwgcmVzb3VyY2UsIHJldHVybiB0aGUgbmV3IHJlc291cmNlIGlkLiBUaGlzXG4gIC8vIHdpbGwgY2F1c2UgYSBkZWxldGUgdG8gYmUgc2VuZCBmb3IgdGhlIG9sZCByZXNvdXJjZS5cbiAgaWYgKHJlc291cmNlICE9PSBSZHNTcWxSZXNvdXJjZS5TUUwpIHtcbiAgICByZXNwb25zZS5QaHlzaWNhbFJlc291cmNlSWQgPSByZXNvdXJjZUlkXG4gIH1cblxuICByZXR1cm4gcmVzcG9uc2Vcbn1cblxuLyoqXG4gKiBQYXJzZSBwYXNzd29yZCBmaWVsZCBmcm9tIHNlY3JldC4gUmV0dXJucyB2b2lkIG9uIGVycm9yLlxuICovXG5jb25zdCBnZXRQYXNzd29yZCA9IGFzeW5jIChhcm46IHN0cmluZyk6IFByb21pc2U8c3RyaW5nIHwgdm9pZD4gPT4ge1xuICBjb25zdCBzZWNyZXRzX2NsaWVudCA9IG5ldyBTZWNyZXRzTWFuYWdlckNsaWVudCh7fSlcbiAgY29uc3QgY29tbWFuZCA9IG5ldyBHZXRTZWNyZXRWYWx1ZUNvbW1hbmQoe1xuICAgIFNlY3JldElkOiBhcm4sXG4gIH0pXG4gIGNvbnN0IHNlY3JldCA9IGF3YWl0IHNlY3JldHNfY2xpZW50LnNlbmQoY29tbWFuZClcbiAgaWYgKHNlY3JldC5TZWNyZXRTdHJpbmcpIHtcbiAgICBjb25zdCBqc29uID0gSlNPTi5wYXJzZShzZWNyZXQuU2VjcmV0U3RyaW5nKVxuICAgIHJldHVybiBqc29uLnBhc3N3b3JkXG4gIH1cbn1cbiJdfQ==
212
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDRFQUd3QztBQU14QyxtREFBdUM7QUFDdkMsMkJBQTJCO0FBQzNCLGlDQUF1QztBQStDdkMsTUFBTSxTQUFTLEdBQWM7SUFDM0IsR0FBRyxFQUFFO1FBQ0gsTUFBTSxFQUFFLENBQUMsQ0FBUyxFQUFFLEtBQVcsRUFBRSxFQUFFO1lBQ2pDLE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQTtRQUN4QixDQUFDO1FBQ0QsTUFBTSxFQUFFLENBQUMsQ0FBUyxFQUFFLEVBQVUsRUFBRSxLQUFXLEVBQUUsRUFBRTtZQUM3QyxPQUFPLEtBQUssQ0FBQyxTQUFTLENBQUE7UUFDeEIsQ0FBQztRQUNELE1BQU0sRUFBRSxDQUFDLENBQVMsRUFBRSxFQUFFLEdBQUUsQ0FBQztLQUMxQjtJQUNELE1BQU0sRUFBRTtRQUNOLE1BQU0sRUFBRSxLQUFLLEVBQUUsVUFBa0IsRUFBRSxFQUFFO1lBQ25DLE9BQU8sdUJBQU0sQ0FBQyxnQ0FBZ0MsRUFBRSxVQUFVLENBQUMsQ0FBQTtRQUM3RCxDQUFDO1FBQ0QsTUFBTSxFQUFFLEtBQUssRUFBRSxVQUFrQixFQUFFLGFBQXFCLEVBQUUsRUFBRTtZQUMxRCxPQUFPLHVCQUFNLENBQUMsOEJBQThCLEVBQUUsYUFBYSxFQUFFLFVBQVUsQ0FBQyxDQUFBO1FBQzFFLENBQUM7UUFDRCxNQUFNLEVBQUUsQ0FBQyxVQUFrQixFQUFFLEVBQUU7WUFDN0IsT0FBTyx1QkFBTSxDQUFDLGtDQUFrQyxFQUFFLFVBQVUsQ0FBQyxDQUFBO1FBQy9ELENBQUM7S0FDRjtJQUNELElBQUksRUFBRTtRQUNKLE1BQU0sRUFBRSxLQUFLLEVBQUUsVUFBa0IsRUFBRSxLQUFnQixFQUFFLEVBQUU7WUFDckQsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXO2dCQUFFLE1BQU0seUJBQXlCLENBQUE7WUFDdkQsTUFB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QUE7SUFDekMsZ0VBQWdFO0lBQ2hFLHVEQUF1RDtJQUN2RCxJQUFJLFFBQVEsS0FBSyxxQkFBYyxDQUFDLEdBQUcsRUFBRTtRQUNuQyxRQUFRLENBQUMsa0JBQWtCLEdBQUcsVUFBVSxDQUFBO0tBQ3pDO0lBRUQsT0FBTyxRQUFRLENBQUE7QUFDakIsQ0FBQyxDQUFBO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFdBQVcsR0FBRyxLQUFLLEVBQUUsR0FBVyxFQUEwQixFQUFFO0lBQ2hFLE1BQU0sY0FBYyxHQUFHLElBQUksNkNBQW9CLENBQUMsRUFBRSxDQUFDLENBQUE7SUFDbkQsTUFBTSxPQUFPLEdBQUcsSUFBSSw4Q0FBcUIsQ0FBQztRQUN4QyxRQUFRLEVBQUUsR0FBRztLQUNkLENBQUMsQ0FBQTtJQUNGLE1BQU0sTUFBTSxHQUFHLE1BQU0sY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUNqRCxJQUFJLE1BQU0sQ0FBQyxZQUFZLEVBQUU7UUFDdkIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUE7UUFDNUMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFBO0tBQ3JCO0FBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgU2VjcmV0c01hbmFnZXJDbGllbnQsXG4gIEdldFNlY3JldFZhbHVlQ29tbWFuZCxcbn0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1zZWNyZXRzLW1hbmFnZXJcIlxuaW1wb3J0IHtcbiAgQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZUNyZWF0ZUV2ZW50LFxuICBDbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlVXBkYXRlRXZlbnQsXG4gIENsb3VkRm9ybWF0aW9uQ3VzdG9tUmVzb3VyY2VEZWxldGVFdmVudCxcbn0gZnJvbSBcImF3cy1sYW1iZGFcIlxuaW1wb3J0IHsgZm9ybWF0IH0gZnJvbSBcIm5vZGUtcGctZm9ybWF0XCJcbmltcG9ydCB7IENsaWVudCB9IGZyb20gXCJwZ1wiXG5pbXBvcnQgeyBSZHNTcWxSZXNvdXJjZSB9IGZyb20gXCIuL2VudW1cIlxuXG5pbnRlcmZhY2UgQ3VzdG9tUmVzb3VyY2VSZXNwb25zZSB7XG4gIFBoeXNpY2FsUmVzb3VyY2VJZD86IHN0cmluZ1xuICBEYXRhPzogYW55XG4gIE5vRWNobz86IGJvb2xlYW5cbn1cblxudHlwZSBDcmVhdGVSZXNvdXJjZUhhbmRsZXIgPSAoXG4gIHJlc291cmNlSWQ6IHN0cmluZyxcbiAgcHJvcHM/OiBhbnlcbikgPT4gUHJvbWlzZTxzdHJpbmcgfCBzdHJpbmdbXT5cbnR5cGUgVXBkYXRlUmVzb3VyY2VIYW5kbGVyID0gKFxuICByZXNvdXJjZUlkOiBzdHJpbmcsXG4gIG9sZFJlc291cmNlSWQ6IHN0cmluZyxcbiAgcHJvcHM/OiBhbnlcbikgPT4gUHJvbWlzZTxzdHJpbmcgfCBzdHJpbmdbXSB8IHZvaWQ+XG50eXBlIERlbGV0ZVJlc291cmNlSGFuZGxlciA9IChyZXNvdXJjZUlkOiBzdHJpbmcsIHByb3BzPzogYW55KSA9PiBzdHJpbmcgfCBzdHJpbmdbXSB8IHZvaWRcblxudHlwZSBKdW1wVGFibGUgPSB7XG4gIFtrZXkgaW4gUmRzU3FsUmVzb3VyY2VdOiB7XG4gICAgQ3JlYXRlOiBDcmVhdGVSZXNvdXJjZUhhbmRsZXJcbiAgICBVcGRhdGU6IFVwZGF0ZVJlc291cmNlSGFuZGxlclxuICAgIERlbGV0ZTogRGVsZXRlUmVzb3VyY2VIYW5kbGVyXG4gIH1cbn1cblxuaW50ZXJmYWNlIFJvbGVQcm9wcyB7XG4gIC8qKlxuICAgKiBTZWNyZXQgQVJOLlxuICAgKi9cbiAgUGFzc3dvcmRBcm46IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBkYXRhYmFzZSB0byB3aGljaCByb2xlIGlzIGdyYW50ZWQgY29ubmVjdCBwZXJtaXNzaW9ucy5cbiAgICovXG4gIERhdGFiYXNlTmFtZT86IHN0cmluZ1xufVxuXG5pbnRlcmZhY2UgRGF0YWJhc2VQcm9wcyB7XG4gIE93bmVyOiBzdHJpbmdcbn1cblxuaW50ZXJmYWNlIERhdGFiYXNlVXBkYXRlUHJvcHMgZXh0ZW5kcyBEYXRhYmFzZVByb3BzIHtcbiAgTWFzdGVyT3duZXI6IHN0cmluZ1xufVxuXG5jb25zdCBqdW1wVGFibGU6IEp1bXBUYWJsZSA9IHtcbiAgc3FsOiB7XG4gICAgQ3JlYXRlOiAoXzogc3RyaW5nLCBwcm9wcz86IGFueSkgPT4ge1xuICAgICAgcmV0dXJuIHByb3BzLlN0YXRlbWVudFxuICAgIH0sXG4gICAgVXBkYXRlOiAoXzogc3RyaW5nLCBfXzogc3RyaW5nLCBwcm9wcz86IGFueSkgPT4ge1xuICAgICAgcmV0dXJuIHByb3BzLlN0YXRlbWVudFxuICAgIH0sXG4gICAgRGVsZXRlOiAoXzogc3RyaW5nKSA9PiB7fSxcbiAgfSxcbiAgc2NoZW1hOiB7XG4gICAgQ3JlYXRlOiBhc3luYyAocmVzb3VyY2VJZDogc3RyaW5nKSA9PiB7XG4gICAgICByZXR1cm4gZm9ybWF0KFwiY3JlYXRlIHNjaGVtYSBpZiBub3QgZXhpc3RzICVJXCIsIHJlc291cmNlSWQpXG4gICAgfSxcbiAgICBVcGRhdGU6IGFzeW5jIChyZXNvdXJjZUlkOiBzdHJpbmcsIG9sZFJlc291cmNlSWQ6IHN0cmluZykgPT4ge1xuICAgICAgcmV0dXJuIGZvcm1hdChcImFsdGVyIHNjaGVtYSAlSSByZW5hbWUgdG8gJUlcIiwgb2xkUmVzb3VyY2VJZCwgcmVzb3VyY2VJZClcbiAgICB9LFxuICAgIERlbGV0ZTogKHJlc291cmNlSWQ6IHN0cmluZykgPT4ge1xuICAgICAgcmV0dXJuIGZvcm1hdChcImRyb3Agc2NoZW1hIGlmIGV4aXN0cyAlSSBjYXNjYWRlXCIsIHJlc291cmNlSWQpXG4gICAgfSxcbiAgfSxcbiAgcm9sZToge1xuICAgIENyZWF0ZTogYXN5bmMgKHJlc291cmNlSWQ6IHN0cmluZywgcHJvcHM6IFJvbGVQcm9wcykgPT4ge1xuICAgICAgaWYgKCFwcm9wcy5QYXNzd29yZEFybikgdGhyb3cgXCJObyBQYXNzd29yZEFybiBwcm92aWRlZFwiXG4gICAgICBjb25zdCBwYXNzd29yZCA9IGF3YWl0IGdldFBhc3N3b3JkKHByb3BzLlBhc3N3b3JkQXJuKVxuICAgICAgaWYgKHBhc3N3b3JkKSB7XG4gICAgICAgIGNvbnN0IHNxbCA9IFtcbiAgICAgICAgICBcInN0YXJ0IHRyYW5zYWN0aW9uXCIsXG4gICAgICAgICAgZm9ybWF0KFwiY3JlYXRlIHJvbGUgJUkgd2l0aCBsb2dpbiBwYXNzd29yZCAlTFwiLCByZXNvdXJjZUlkLCBwYXNzd29yZCksXG4gICAgICAgIF1cbiAgICAgICAgaWYgKHByb3BzLkRhdGFiYXNlTmFtZSkge1xuICAgICAgICAgIC8vIGdyYW50IGNvbm5lY3QgdG8gZGF0YWJhc2UgaWYgZGF0YWJhc2UgYWxyZWFkeSBleGlzdHNcbiAgICAgICAgICBzcWwucHVzaChcbiAgICAgICAgICAgIGZvcm1hdChcbiAgICAgICAgICAgICAgXCJETyAkJEJFR0lOXFxuSUYgRVhJU1RTIChzZWxlY3QgZnJvbSBwZ19kYXRhYmFzZSB3aGVyZSBkYXRuYW1lID0gJyVzJyBhbmQgZGF0aXN0ZW1wbGF0ZSA9IGZhbHNlKSBUSEVOIGdyYW50IGNvbm5lY3Qgb24gZGF0YWJhc2UgJUkgdG8gJUk7IEVORCBJRjtcXG5FTkQkJDtcIixcbiAgICAgICAgICAgICAgcHJvcHMuRGF0YWJhc2VOYW1lLFxuICAgICAgICAgICAgICBwcm9wcy5EYXRhYmFzZU5hbWUsXG4gICAgICAgICAgICAgIHJlc291cmNlSWRcbiAgICAgICAgICAgIClcbiAgICAgICAgICApXG4gICAgICAgIH1cbiAgICAgICAgc3FsLnB1c2goXCJjb21taXRcIilcbiAgICAgICAgcmV0dXJuIHNxbFxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgYENhbm5vdCBwYXJzZSBwYXNzd29yZCBmcm9tICR7cHJvcHMuUGFzc3dvcmRBcm59YFxuICAgICAgfVxuICAgIH0sXG4gICAgVXBkYXRlOiBhc3luYyAocmVzb3VyY2VJZDogc3RyaW5nLCBvbGRSZXNvdXJjZUlkOiBzdHJpbmcsIHByb3BzOiBSb2xlUHJvcHMpID0+IHtcbiAgICAgIC8vIFRPRE86IGlmIGRhdGFiYXNlIG5hbWUgaGFzIGNoYW5nZWQgaW4gT2xkUmVzb3VyY2VQcm9wZXJ0aWVzLCByZXZva2UgY29ubmVjdFxuICAgICAgaWYgKHByb3BzICYmIHByb3BzLlBhc3N3b3JkQXJuKSB7XG4gICAgICAgIGNvbnN0IHBhc3N3b3JkID0gYXdhaXQgZ2V0UGFzc3dvcmQocHJvcHMuUGFzc3dvcmRBcm4pXG4gICAgICAgIGlmIChwYXNzd29yZCkge1xuICAgICAgICAgIGNvbnN0IHNxbCA9IFtcbiAgICAgICAgICAgIFwic3RhcnQgdHJhbnNhY3Rpb25cIixcbiAgICAgICAgICAgIGZvcm1hdChcbiAgICAgICAgICAgICAgXCJhbHRlciByb2xlICVJIHJlbmFtZSB0byAlSTsgYWx0ZXIgcm9sZSAlSSB3aXRoIHBhc3N3b3JkICVMXCIsXG4gICAgICAgICAgICAgIG9sZFJlc291cmNlSWQsXG4gICAgICAgICAgICAgIHJlc291cmNlSWQsXG4gICAgICAgICAgICAgIHJlc291cmNlSWQsXG4gICAgICAgICAgICAgIHBhc3N3b3JkXG4gICAgICAgICAgICApLFxuICAgICAgICAgIF1cbiAgICAgICAgICBpZiAocHJvcHMuRGF0YWJhc2VOYW1lKSB7XG4gICAgICAgICAgICBzcWwucHVzaChcbiAgICAgICAgICAgICAgZm9ybWF0KFwiZ3JhbnQgY29ubmVjdCBvbiBkYXRhYmFzZSAlSSB0byAlSVwiLCBwcm9wcy5EYXRhYmFzZU5hbWUsIHJlc291cmNlSWQpXG4gICAgICAgICAgICApXG4gICAgICAgICAgfVxuICAgICAgICAgIHNxbC5wdXNoKFwiY29tbWl0XCIpXG4gICAgICAgICAgcmV0dXJuIHNxbFxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRocm93IGBDYW5ub3QgcGFyc2UgcGFzc3dvcmQgZnJvbSAke3Byb3BzLlBhc3N3b3JkQXJufWBcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICBcInN0YXJ0IHRyYW5zYWN0aW9uXCIsXG4gICAgICAgICAgZm9ybWF0KFwiYWx0ZXIgcm9sZSAlSSByZW5hbWUgdG8gJUlcIiwgb2xkUmVzb3VyY2VJZCwgcmVzb3VyY2VJZCksXG4gICAgICAgICAgZm9ybWF0KFxuICAgICAgICAgICAgXCJETyAkJEJFR0lOXFxuSUYgRVhJU1RTIChzZWxlY3QgZnJvbSBwZ19kYXRhYmFzZSB3aGVyZSBkYXRuYW1lID0gJyVzJyBhbmQgZGF0aXN0ZW1wbGF0ZSA9IGZhbHNlKSBUSEVOIGdyYW50IGNvbm5lY3Qgb24gZGF0YWJhc2UgJUkgdG8gJUk7IEVORCBJRjtcXG5FTkQkJDtcIixcbiAgICAgICAgICAgIHByb3BzLkRhdGFiYXNlTmFtZSxcbiAgICAgICAgICAgIHByb3BzLkRhdGFiYXNlTmFtZSxcbiAgICAgICAgICAgIHJlc291cmNlSWRcbiAgICAgICAgICApLFxuICAgICAgICAgIFwiY29tbWl0XCIsXG4gICAgICAgIF1cbiAgICAgIH1cbiAgICB9LFxuICAgIERlbGV0ZTogKHJlc291cmNlSWQ6IHN0cmluZykgPT4ge1xuICAgICAgLy8gVE9ETzogaWYgdXNlciBpcyBvd25lciBvZiBhIGRhdGFiYXNlLCBhc3NpZ24gb3duZXJzaGlwIHRvIG1hc3RlciB1c2VyP1xuICAgICAgcmV0dXJuIFtcbiAgICAgICAgXCJzdGFydCB0cmFuc2FjdGlvblwiLFxuICAgICAgICBmb3JtYXQoXG4gICAgICAgICAgXCJETyAkJEJFR0lOXFxuSUYgRVhJU1RTIChzZWxlY3QgZnJvbSBwZ19jYXRhbG9nLnBnX3JvbGVzIFdIRVJFIHJvbG5hbWUgPSAnJXMnKSBUSEVOIHJldm9rZSBhbGwgcHJpdmlsZWdlcyBvbiBkYXRhYmFzZSBwb3N0Z3JlcyBmcm9tICVJOyBFTkQgSUY7XFxuRU5EJCQ7XCIsXG4gICAgICAgICAgcmVzb3VyY2VJZCxcbiAgICAgICAgICByZXNvdXJjZUlkXG4gICAgICAgICksXG4gICAgICAgIGZvcm1hdChcImRyb3Agcm9sZSBpZiBleGlzdHMgJUlcIiwgcmVzb3VyY2VJZCksXG4gICAgICAgIFwiY29tbWl0XCIsXG4gICAgICBdXG4gICAgfSxcbiAgfSxcbiAgZGF0YWJhc2U6IHtcbiAgICBDcmVhdGU6IGFzeW5jIChyZXNvdXJjZUlkOiBzdHJpbmcsIHByb3BzOiBEYXRhYmFzZVByb3BzKSA9PiB7XG4gICAgICBjb25zdCBvd25lciA9IHByb3BzLk93bmVyXG4gICAgICBpZiAob3duZXIpIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICBmb3JtYXQoXCJjcmVhdGUgZGF0YWJhc2UgJUlcIiwgcmVzb3VyY2VJZCksXG4gICAgICAgICAgZm9ybWF0KFwiYWx0ZXIgZGF0YWJhc2UgJUkgb3duZXIgdG8gJUlcIiwgcmVzb3VyY2VJZCwgb3duZXIpLFxuICAgICAgICBdXG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gZm9ybWF0KFwiY3JlYXRlIGRhdGFiYXNlICVJXCIsIHJlc291cmNlSWQpXG4gICAgICB9XG4gICAgfSxcbiAgICBVcGRhdGU6IGFzeW5jIChcbiAgICAgIHJlc291cmNlSWQ6IHN0cmluZyxcbiAgICAgIG9sZFJlc291cmNlSWQ6IHN0cmluZyxcbiAgICAgIHByb3BzOiBEYXRhYmFzZVVwZGF0ZVByb3BzXG4gICAgKTogUHJvbWlzZTxzdHJpbmdbXT4gPT4ge1xuICAgICAgY29uc3Qgc3RhdGVtZW50czogc3RyaW5nW10gPSBbXVxuICAgICAgaWYgKHJlc291cmNlSWQgIT09IG9sZFJlc291cmNlSWQpIHtcbiAgICAgICAgaWYgKHByb3BzLk1hc3Rlck93bmVyKSB7XG4gICAgICAgICAgc3RhdGVtZW50cy5wdXNoKFxuICAgICAgICAgICAgZm9ybWF0KFwiYWx0ZXIgZGF0YWJhc2UgJUkgb3duZXIgdG8gJUlcIiwgb2xkUmVzb3VyY2VJZCwgcHJvcHMuTWFzdGVyT3duZXIpXG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICAgIHN0YXRlbWVudHMucHVzaChcbiAgICAgICAgICBmb3JtYXQoXCJhbHRlciBkYXRhYmFzZSAlSSByZW5hbWUgdG8gJUlcIiwgb2xkUmVzb3VyY2VJZCwgcmVzb3VyY2VJZClcbiAgICAgICAgKVxuICAgICAgfVxuICAgICAgY29uc3Qgb3duZXIgPSBwcm9wcy5Pd25lclxuICAgICAgaWYgKG93bmVyKSB7XG4gICAgICAgIHN0YXRlbWVudHMucHVzaChmb3JtYXQoXCJhbHRlciBkYXRhYmFzZSAlSSBvd25lciB0byAlSVwiLCByZXNvdXJjZUlkLCBwcm9wcy5Pd25lcikpXG4gICAgICB9XG4gICAgICByZXR1cm4gc3RhdGVtZW50c1xuICAgIH0sXG4gICAgRGVsZXRlOiAocmVzb3VyY2VJZDogc3RyaW5nKSA9PiB7XG4gICAgICByZXR1cm4gW1xuICAgICAgICBmb3JtYXQoXG4gICAgICAgICAgXCJzZWxlY3QgcGdfdGVybWluYXRlX2JhY2tlbmQocGdfc3RhdF9hY3Rpdml0eS5waWQpIGZyb20gcGdfc3RhdF9hY3Rpdml0eSB3aGVyZSBkYXRuYW1lID0gJUxcIixcbiAgICAgICAgICByZXNvdXJjZUlkXG4gICAgICAgICksXG4gICAgICAgIGZvcm1hdChcImRyb3AgZGF0YWJhc2UgaWYgZXhpc3RzICVJXCIsIHJlc291cmNlSWQpLFxuICAgICAgXVxuICAgIH0sXG4gIH0sXG59XG5cbmV4cG9ydCBjb25zdCBoYW5kbGVyID0gYXN5bmMgKFxuICBldmVudDpcbiAgICB8IENsb3VkRm9ybWF0aW9uQ3VzdG9tUmVzb3VyY2VDcmVhdGVFdmVudFxuICAgIHwgQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZVVwZGF0ZUV2ZW50XG4gICAgfCBDbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlRGVsZXRlRXZlbnRcbik6IFByb21pc2U8YW55PiA9PiB7XG4gIC8vY29uc29sZS5kZWJ1ZyhcIkVWRU5UXCIsIGV2ZW50KVxuXG4gIGNvbnN0IHJlcXVlc3RUeXBlID0gZXZlbnQuUmVxdWVzdFR5cGVcbiAgY29uc3QgcmVzb3VyY2U6IFJkc1NxbFJlc291cmNlID0gZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzLlJlc291cmNlXG4gIGNvbnN0IHJlc291cmNlSWQgPSBldmVudC5SZXNvdXJjZVByb3BlcnRpZXMuUmVzb3VyY2VJZFxuICBjb25zdCBkYXRhYmFzZSA9IGV2ZW50LlJlc291cmNlUHJvcGVydGllcy5EYXRhYmFzZVxuXG4gIGlmICghT2JqZWN0LmtleXMoanVtcFRhYmxlKS5pbmNsdWRlcyhldmVudC5SZXNvdXJjZVByb3BlcnRpZXMuUmVzb3VyY2UpKSB7XG4gICAgdGhyb3cgYFJlc291cmNlIHR5cGUgJyR7cmVzb3VyY2V9JyBub3QgcmVjb2duaXNlZC5gXG4gIH1cblxuICBjb25zdCBzZWNyZXRzX2NsaWVudCA9IG5ldyBTZWNyZXRzTWFuYWdlckNsaWVudCh7fSlcbiAgY29uc3QgY29tbWFuZCA9IG5ldyBHZXRTZWNyZXRWYWx1ZUNvbW1hbmQoe1xuICAgIFNlY3JldElkOiBldmVudC5SZXNvdXJjZVByb3BlcnRpZXMuU2VjcmV0QXJuLFxuICB9KVxuICBjb25zdCBzZWNyZXQgPSBhd2FpdCBzZWNyZXRzX2NsaWVudC5zZW5kKGNvbW1hbmQpXG4gIGlmICghc2VjcmV0LlNlY3JldFN0cmluZykgdGhyb3cgXCJObyBzZWNyZXQgc3RyaW5nXCJcblxuICBjb25zdCBzZWNyZXRWYWx1ZXMgPSBKU09OLnBhcnNlKHNlY3JldC5TZWNyZXRTdHJpbmcpXG5cbiAgbGV0IHNxbDogc3RyaW5nIHwgc3RyaW5nW10gfCB2b2lkXG4gIHN3aXRjaCAocmVxdWVzdFR5cGUpIHtcbiAgICBjYXNlIFwiQ3JlYXRlXCI6IHtcbiAgICAgIHNxbCA9IGF3YWl0IGp1bXBUYWJsZVtyZXNvdXJjZV1bcmVxdWVzdFR5cGVdKHJlc291cmNlSWQsIGV2ZW50LlJlc291cmNlUHJvcGVydGllcylcbiAgICAgIGJyZWFrXG4gICAgfVxuICAgIGNhc2UgXCJVcGRhdGVcIjoge1xuICAgICAgY29uc3Qgb2xkUmVzb3VyY2VJZCA9IChldmVudCBhcyBDbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlVXBkYXRlRXZlbnQpXG4gICAgICAgIC5QaHlzaWNhbFJlc291cmNlSWRcbiAgICAgIHNxbCA9IGF3YWl0IGp1bXBUYWJsZVtyZXNvdXJjZV1bcmVxdWVzdFR5cGVdKHJlc291cmNlSWQsIG9sZFJlc291cmNlSWQsIHtcbiAgICAgICAgLi4uZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzLFxuICAgICAgICBNYXN0ZXJPd25lcjogc2VjcmV0VmFsdWVzLnVzZXJuYW1lLFxuICAgICAgfSlcbiAgICAgIGJyZWFrXG4gICAgfVxuICAgIGNhc2UgXCJEZWxldGVcIjoge1xuICAgICAgY29uc3Qgb2xkUmVzb3VyY2VJZCA9IChldmVudCBhcyBDbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlRGVsZXRlRXZlbnQpXG4gICAgICAgIC5QaHlzaWNhbFJlc291cmNlSWRcbiAgICAgIHNxbCA9IGp1bXBUYWJsZVtyZXNvdXJjZV1bcmVxdWVzdFR5cGVdKHJlc291cmNlSWQsIG9sZFJlc291cmNlSWQpXG4gICAgICBicmVha1xuICAgIH1cbiAgfVxuXG4gIGlmIChzcWwpIHtcbiAgICAvL2NvbnNvbGUuZGVidWcoXCJEQVRBQkFTRVwiLCBkYXRhYmFzZSlcbiAgICBjb25zb2xlLmRlYnVnKFwiU1FMXCIsIHNxbClcbiAgICBjb25zdCBwYXJhbXMgPSB7XG4gICAgICBob3N0OiBzZWNyZXRWYWx1ZXMuaG9zdCxcbiAgICAgIHBvcnQ6IHNlY3JldFZhbHVlcy5wb3J0LFxuICAgICAgdXNlcjogc2VjcmV0VmFsdWVzLnVzZXJuYW1lLFxuICAgICAgcGFzc3dvcmQ6IHNlY3JldFZhbHVlcy5wYXNzd29yZCxcbiAgICAgIGRhdGFiYXNlOiBkYXRhYmFzZSxcbiAgICAgIGNvbm5lY3Rpb25UaW1lb3V0TWlsbGlzOiAyMDAwLCAvLyByZXR1cm4gYW4gZXJyb3IgaWYgYSBjb25uZWN0aW9uIGNvdWxkIG5vdCBiZSBlc3RhYmxpc2hlZCB3aXRoaW4gMiBzZWNvbmRzXG4gICAgfVxuICAgIC8vY29uc29sZS5kZWJ1ZyAoXCJQQVJBTVNcIiwgcGFyYW1zKVxuICAgIGNvbnN0IHBnX2NsaWVudCA9IG5ldyBDbGllbnQocGFyYW1zKVxuICAgIGF3YWl0IHBnX2NsaWVudC5jb25uZWN0KClcbiAgICB0cnkge1xuICAgICAgaWYgKHR5cGVvZiBzcWwgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgYXdhaXQgcGdfY2xpZW50LnF1ZXJ5KHNxbClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICAgIHNxbC5tYXAoYXN5bmMgKHN0YXRlbWVudCkgPT4ge1xuICAgICAgICAgICAgYXdhaXQgcGdfY2xpZW50LnF1ZXJ5KHN0YXRlbWVudClcbiAgICAgICAgICB9KVxuICAgICAgICApXG4gICAgICB9XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIGF3YWl0IHBnX2NsaWVudC5lbmQoKVxuICAgIH1cbiAgfVxuXG4gIGxldCByZXNwb25zZTogQ3VzdG9tUmVzb3VyY2VSZXNwb25zZSA9IHt9XG4gIC8vIEV4Y2VwdCBmb3IgdGhlIFNRTCByZXNvdXJjZSwgcmV0dXJuIHRoZSBuZXcgcmVzb3VyY2UgaWQuIFRoaXNcbiAgLy8gd2lsbCBjYXVzZSBhIGRlbGV0ZSB0byBiZSBzZW5kIGZvciB0aGUgb2xkIHJlc291cmNlLlxuICBpZiAocmVzb3VyY2UgIT09IFJkc1NxbFJlc291cmNlLlNRTCkge1xuICAgIHJlc3BvbnNlLlBoeXNpY2FsUmVzb3VyY2VJZCA9IHJlc291cmNlSWRcbiAgfVxuXG4gIHJldHVybiByZXNwb25zZVxufVxuXG4vKipcbiAqIFBhcnNlIHBhc3N3b3JkIGZpZWxkIGZyb20gc2VjcmV0LiBSZXR1cm5zIHZvaWQgb24gZXJyb3IuXG4gKi9cbmNvbnN0IGdldFBhc3N3b3JkID0gYXN5bmMgKGFybjogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmcgfCB2b2lkPiA9PiB7XG4gIGNvbnN0IHNlY3JldHNfY2xpZW50ID0gbmV3IFNlY3JldHNNYW5hZ2VyQ2xpZW50KHt9KVxuICBjb25zdCBjb21tYW5kID0gbmV3IEdldFNlY3JldFZhbHVlQ29tbWFuZCh7XG4gICAgU2VjcmV0SWQ6IGFybixcbiAgfSlcbiAgY29uc3Qgc2VjcmV0ID0gYXdhaXQgc2VjcmV0c19jbGllbnQuc2VuZChjb21tYW5kKVxuICBpZiAoc2VjcmV0LlNlY3JldFN0cmluZykge1xuICAgIGNvbnN0IGpzb24gPSBKU09OLnBhcnNlKHNlY3JldC5TZWNyZXRTdHJpbmcpXG4gICAgcmV0dXJuIGpzb24ucGFzc3dvcmRcbiAgfVxufVxuIl19
package/lib/provider.js CHANGED
@@ -43,7 +43,7 @@ class Provider extends constructs_1.Construct {
43
43
  }
44
44
  exports.Provider = Provider;
45
45
  _a = JSII_RTTI_SYMBOL_1;
46
- Provider[_a] = { fqn: "cdk-rds-sql.Provider", version: "1.2.0" };
46
+ Provider[_a] = { fqn: "cdk-rds-sql.Provider", version: "1.2.1" };
47
47
  function slugify(x) {
48
48
  return x.replace(/[^a-zA-Z0-9]/g, "");
49
49
  }
@@ -26,7 +26,7 @@ export interface RoleProps {
26
26
  */
27
27
  readonly database?: IDatabase;
28
28
  /**
29
- * Ootional database name this user is expected to use.
29
+ * Optional database name this user is expected to use.
30
30
  *
31
31
  * Specify none of `database` or `databaseName` or only one of them.
32
32
  *
@@ -23,4 +23,4 @@ class Role extends aws_cdk_lib_1.CustomResource {
23
23
  }
24
24
  }
25
25
  exports.Role = Role;
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS5jdXN0b20tcmVzb3VyY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcm9sZS5jdXN0b20tcmVzb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBQTRDO0FBRzVDLGlDQUF1QztBQXdDdkMsTUFBYSxJQUFLLFNBQVEsNEJBQWM7SUFDdEMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFnQjtRQUN4RCxJQUFJLEtBQUssQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDLFlBQVk7WUFDdEMsTUFBTSx5Q0FBeUMsQ0FBQTtRQUNqRCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLFlBQVksRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVk7WUFDekMsVUFBVSxFQUFFO2dCQUNWLFFBQVEsRUFBRSxxQkFBYyxDQUFDLElBQUk7Z0JBQzdCLFVBQVUsRUFBRSxLQUFLLENBQUMsUUFBUTtnQkFDMUIsU0FBUyxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFNBQVM7Z0JBQzFDLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztnQkFDOUIsWUFBWSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsWUFBWTthQUNoRjtTQUNGLENBQUMsQ0FBQTtRQUNGLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUN2QyxJQUFJLEtBQUssQ0FBQyxRQUFRO1lBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQzdELENBQUM7Q0FDRjtBQWpCRCxvQkFpQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDdXN0b21SZXNvdXJjZSB9IGZyb20gXCJhd3MtY2RrLWxpYlwiXG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiXG5pbXBvcnQgeyBJRGF0YWJhc2UgfSBmcm9tIFwiLi9kYXRhYmFzZVwiXG5pbXBvcnQgeyBSZHNTcWxSZXNvdXJjZSB9IGZyb20gXCIuL2VudW1cIlxuaW1wb3J0IHsgUHJvdmlkZXIgfSBmcm9tIFwiLi9wcm92aWRlclwiXG5cbmV4cG9ydCBpbnRlcmZhY2UgUm9sZVByb3BzIHtcbiAgLyoqXG4gICAqIFByb3ZpZGVyLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvdmlkZXI6IFByb3ZpZGVyXG5cbiAgLyoqXG4gICAqIFNRTC5cbiAgICovXG4gIHJlYWRvbmx5IHJvbGVOYW1lOiBzdHJpbmdcblxuICAvKipcbiAgICogQSBuZXcgc2VjcmV0IGlzIGNyZWF0ZWQgZm9yIHRoaXMgdXNlci5cbiAgICpcbiAgICogT3B0aW9uYWxseSBlbmNyeXB0IGl0IHdpdGggdGhlIGdpdmVuIGtleS5cbiAgICovXG4gIHJlYWRvbmx5IHBhc3N3b3JkQXJuOiBzdHJpbmdcblxuICAvKipcbiAgICogT3B0aW9uYWwgZGF0YWJhc2UgdGhpcyB1c2VyIGlzIGV4cGVjdGVkIHRvIHVzZS5cbiAgICpcbiAgICogU3BlY2lmeSBub25lIG9mIGBkYXRhYmFzZWAgb3IgYGRhdGFiYXNlTmFtZWAgb3Igb25seSBvbmUgb2YgdGhlbS5cbiAgICpcbiAgICogQGRlZmF1bHQgbm8gY29ubmVjdGlvbiB0byBhbnkgZGF0YWJhc2UgaXMgZ3JhbnRlZFxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YWJhc2U/OiBJRGF0YWJhc2VcblxuICAvKipcbiAgICogT290aW9uYWwgZGF0YWJhc2UgbmFtZSB0aGlzIHVzZXIgaXMgZXhwZWN0ZWQgdG8gdXNlLlxuICAgKlxuICAgKiBTcGVjaWZ5IG5vbmUgb2YgYGRhdGFiYXNlYCBvciBgZGF0YWJhc2VOYW1lYCBvciBvbmx5IG9uZSBvZiB0aGVtLlxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBjb25uZWN0aW9uIHRvIGFueSBkYXRhYmFzZSBpcyBncmFudGVkXG4gICAqL1xuICByZWFkb25seSBkYXRhYmFzZU5hbWU/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGNsYXNzIFJvbGUgZXh0ZW5kcyBDdXN0b21SZXNvdXJjZSB7XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBSb2xlUHJvcHMpIHtcbiAgICBpZiAocHJvcHMuZGF0YWJhc2UgJiYgcHJvcHMuZGF0YWJhc2VOYW1lKVxuICAgICAgdGhyb3cgXCJTcGVjaWZ5IGVpdGhlciBkYXRhYmFzZSBvciBkYXRhYmFzZU5hbWVcIlxuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgc2VydmljZVRva2VuOiBwcm9wcy5wcm92aWRlci5zZXJ2aWNlVG9rZW4sXG4gICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgIFJlc291cmNlOiBSZHNTcWxSZXNvdXJjZS5ST0xFLFxuICAgICAgICBSZXNvdXJjZUlkOiBwcm9wcy5yb2xlTmFtZSxcbiAgICAgICAgU2VjcmV0QXJuOiBwcm9wcy5wcm92aWRlci5zZWNyZXQuc2VjcmV0QXJuLFxuICAgICAgICBQYXNzd29yZEFybjogcHJvcHMucGFzc3dvcmRBcm4sXG4gICAgICAgIERhdGFiYXNlTmFtZTogcHJvcHMuZGF0YWJhc2UgPyBwcm9wcy5kYXRhYmFzZS5kYXRhYmFzZU5hbWUgOiBwcm9wcy5kYXRhYmFzZU5hbWUsXG4gICAgICB9LFxuICAgIH0pXG4gICAgdGhpcy5ub2RlLmFkZERlcGVuZGVuY3kocHJvcHMucHJvdmlkZXIpXG4gICAgaWYgKHByb3BzLmRhdGFiYXNlKSB0aGlzLm5vZGUuYWRkRGVwZW5kZW5jeShwcm9wcy5kYXRhYmFzZSlcbiAgfVxufVxuIl19
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS5jdXN0b20tcmVzb3VyY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcm9sZS5jdXN0b20tcmVzb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBQTRDO0FBRzVDLGlDQUF1QztBQXdDdkMsTUFBYSxJQUFLLFNBQVEsNEJBQWM7SUFDdEMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFnQjtRQUN4RCxJQUFJLEtBQUssQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDLFlBQVk7WUFDdEMsTUFBTSx5Q0FBeUMsQ0FBQTtRQUNqRCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLFlBQVksRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVk7WUFDekMsVUFBVSxFQUFFO2dCQUNWLFFBQVEsRUFBRSxxQkFBYyxDQUFDLElBQUk7Z0JBQzdCLFVBQVUsRUFBRSxLQUFLLENBQUMsUUFBUTtnQkFDMUIsU0FBUyxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFNBQVM7Z0JBQzFDLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztnQkFDOUIsWUFBWSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsWUFBWTthQUNoRjtTQUNGLENBQUMsQ0FBQTtRQUNGLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUN2QyxJQUFJLEtBQUssQ0FBQyxRQUFRO1lBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQzdELENBQUM7Q0FDRjtBQWpCRCxvQkFpQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDdXN0b21SZXNvdXJjZSB9IGZyb20gXCJhd3MtY2RrLWxpYlwiXG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiXG5pbXBvcnQgeyBJRGF0YWJhc2UgfSBmcm9tIFwiLi9kYXRhYmFzZVwiXG5pbXBvcnQgeyBSZHNTcWxSZXNvdXJjZSB9IGZyb20gXCIuL2VudW1cIlxuaW1wb3J0IHsgUHJvdmlkZXIgfSBmcm9tIFwiLi9wcm92aWRlclwiXG5cbmV4cG9ydCBpbnRlcmZhY2UgUm9sZVByb3BzIHtcbiAgLyoqXG4gICAqIFByb3ZpZGVyLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvdmlkZXI6IFByb3ZpZGVyXG5cbiAgLyoqXG4gICAqIFNRTC5cbiAgICovXG4gIHJlYWRvbmx5IHJvbGVOYW1lOiBzdHJpbmdcblxuICAvKipcbiAgICogQSBuZXcgc2VjcmV0IGlzIGNyZWF0ZWQgZm9yIHRoaXMgdXNlci5cbiAgICpcbiAgICogT3B0aW9uYWxseSBlbmNyeXB0IGl0IHdpdGggdGhlIGdpdmVuIGtleS5cbiAgICovXG4gIHJlYWRvbmx5IHBhc3N3b3JkQXJuOiBzdHJpbmdcblxuICAvKipcbiAgICogT3B0aW9uYWwgZGF0YWJhc2UgdGhpcyB1c2VyIGlzIGV4cGVjdGVkIHRvIHVzZS5cbiAgICpcbiAgICogU3BlY2lmeSBub25lIG9mIGBkYXRhYmFzZWAgb3IgYGRhdGFiYXNlTmFtZWAgb3Igb25seSBvbmUgb2YgdGhlbS5cbiAgICpcbiAgICogQGRlZmF1bHQgbm8gY29ubmVjdGlvbiB0byBhbnkgZGF0YWJhc2UgaXMgZ3JhbnRlZFxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YWJhc2U/OiBJRGF0YWJhc2VcblxuICAvKipcbiAgICogT3B0aW9uYWwgZGF0YWJhc2UgbmFtZSB0aGlzIHVzZXIgaXMgZXhwZWN0ZWQgdG8gdXNlLlxuICAgKlxuICAgKiBTcGVjaWZ5IG5vbmUgb2YgYGRhdGFiYXNlYCBvciBgZGF0YWJhc2VOYW1lYCBvciBvbmx5IG9uZSBvZiB0aGVtLlxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBjb25uZWN0aW9uIHRvIGFueSBkYXRhYmFzZSBpcyBncmFudGVkXG4gICAqL1xuICByZWFkb25seSBkYXRhYmFzZU5hbWU/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGNsYXNzIFJvbGUgZXh0ZW5kcyBDdXN0b21SZXNvdXJjZSB7XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBSb2xlUHJvcHMpIHtcbiAgICBpZiAocHJvcHMuZGF0YWJhc2UgJiYgcHJvcHMuZGF0YWJhc2VOYW1lKVxuICAgICAgdGhyb3cgXCJTcGVjaWZ5IGVpdGhlciBkYXRhYmFzZSBvciBkYXRhYmFzZU5hbWVcIlxuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgc2VydmljZVRva2VuOiBwcm9wcy5wcm92aWRlci5zZXJ2aWNlVG9rZW4sXG4gICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgIFJlc291cmNlOiBSZHNTcWxSZXNvdXJjZS5ST0xFLFxuICAgICAgICBSZXNvdXJjZUlkOiBwcm9wcy5yb2xlTmFtZSxcbiAgICAgICAgU2VjcmV0QXJuOiBwcm9wcy5wcm92aWRlci5zZWNyZXQuc2VjcmV0QXJuLFxuICAgICAgICBQYXNzd29yZEFybjogcHJvcHMucGFzc3dvcmRBcm4sXG4gICAgICAgIERhdGFiYXNlTmFtZTogcHJvcHMuZGF0YWJhc2UgPyBwcm9wcy5kYXRhYmFzZS5kYXRhYmFzZU5hbWUgOiBwcm9wcy5kYXRhYmFzZU5hbWUsXG4gICAgICB9LFxuICAgIH0pXG4gICAgdGhpcy5ub2RlLmFkZERlcGVuZGVuY3kocHJvcHMucHJvdmlkZXIpXG4gICAgaWYgKHByb3BzLmRhdGFiYXNlKSB0aGlzLm5vZGUuYWRkRGVwZW5kZW5jeShwcm9wcy5kYXRhYmFzZSlcbiAgfVxufVxuIl19
package/lib/role.d.ts CHANGED
@@ -16,13 +16,17 @@ export interface RoleProps {
16
16
  /**
17
17
  * Optional database this user is expected to use.
18
18
  *
19
+ * If the database exists, connect privileges are granted.
20
+ *
19
21
  * Specify none of `database` or `databaseName` or only one of them.
20
22
  *
21
23
  * @default no connection to any database is granted
22
24
  */
23
25
  readonly database?: IDatabase;
24
26
  /**
25
- * Ootional database name this user is expected to use.
27
+ * Optional database name this user is expected to use.
28
+ *
29
+ * If the database exists, connect privileges are granted.
26
30
  *
27
31
  * Specify none of `database` or `databaseName` or only one of them.
28
32
  *
package/lib/role.js CHANGED
@@ -44,5 +44,5 @@ class Role extends constructs_1.Construct {
44
44
  }
45
45
  exports.Role = Role;
46
46
  _a = JSII_RTTI_SYMBOL_1;
47
- Role[_a] = { fqn: "cdk-rds-sql.Role", version: "1.2.0" };
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9yb2xlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQTJDO0FBRzNDLHVFQUFnRTtBQUNoRSwyQ0FBc0M7QUFHdEMsaUVBQW1FO0FBNENuRSxNQUFhLElBQUssU0FBUSxzQkFBUztJQVdqQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQWdCO1FBQ3hELElBQUksS0FBSyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUMsWUFBWTtZQUN0QyxNQUFNLHlDQUF5QyxDQUFBO1FBQ2pELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUE7UUFDaEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLDJCQUFNLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRTtZQUN2QyxhQUFhLEVBQUUsS0FBSyxDQUFDLGFBQWE7WUFDbEMsV0FBVyxFQUFFLHNDQUFzQyxLQUFLLENBQUMsUUFBUSxFQUFFO1lBQ25FLG9CQUFvQixFQUFFO2dCQUNwQixjQUFjLEVBQUUsRUFBRTtnQkFDbEIsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQztvQkFDbkMsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUI7b0JBQ3BELE1BQU0sRUFBRSxVQUFVO29CQUNsQixJQUFJLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsUUFBUTtvQkFDNUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLElBQUk7b0JBQ3hDLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtvQkFDeEIsTUFBTSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxTQUFTO2lCQUNqRSxDQUFDO2dCQUNGLGlCQUFpQixFQUFFLFVBQVU7Z0JBQzdCLGlCQUFpQixFQUFFLCtCQUErQjthQUNuRDtZQUNELGFBQWEsRUFBRSwyQkFBYSxDQUFDLE9BQU87U0FDckMsQ0FBQyxDQUFBO1FBQ0YsTUFBTSxJQUFJLEdBQUcsSUFBSSwyQkFBa0IsQ0FBQyxJQUFJLEVBQUUsY0FBYyxFQUFFO1lBQ3hELFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtZQUN4QixRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVE7WUFDeEIsV0FBVyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUztZQUNsQyxRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVE7WUFDeEIsWUFBWSxFQUFFLEtBQUssQ0FBQyxZQUFZO1NBQ2pDLENBQUMsQ0FBQTtRQUNGLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUNwQyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUE7UUFDOUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUMvQyxDQUFDOztBQTNDSCxvQkE0Q0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZW1vdmFsUG9saWN5IH0gZnJvbSBcImF3cy1jZGstbGliXCJcbmltcG9ydCAqIGFzIGttcyBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWttc1wiXG5pbXBvcnQgeyBTZXJ2ZXJsZXNzQ2x1c3RlciB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtcmRzXCJcbmltcG9ydCB7IElTZWNyZXQsIFNlY3JldCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtc2VjcmV0c21hbmFnZXJcIlxuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIlxuaW1wb3J0IHsgSURhdGFiYXNlIH0gZnJvbSBcIi4vZGF0YWJhc2VcIlxuaW1wb3J0IHsgUHJvdmlkZXIgfSBmcm9tIFwiLi9wcm92aWRlclwiXG5pbXBvcnQgeyBSb2xlIGFzIEN1c3RvbVJlc291cmNlUm9sZSB9IGZyb20gXCIuL3JvbGUuY3VzdG9tLXJlc291cmNlXCJcblxuZXhwb3J0IGludGVyZmFjZSBSb2xlUHJvcHMge1xuICAvKipcbiAgICogUHJvdmlkZXIuXG4gICAqL1xuICByZWFkb25seSBwcm92aWRlcjogUHJvdmlkZXJcblxuICAvKipcbiAgICogU1FMLlxuICAgKi9cbiAgcmVhZG9ubHkgcm9sZU5hbWU6IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBkYXRhYmFzZSB0aGlzIHVzZXIgaXMgZXhwZWN0ZWQgdG8gdXNlLlxuICAgKlxuICAgKiBTcGVjaWZ5IG5vbmUgb2YgYGRhdGFiYXNlYCBvciBgZGF0YWJhc2VOYW1lYCBvciBvbmx5IG9uZSBvZiB0aGVtLlxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBjb25uZWN0aW9uIHRvIGFueSBkYXRhYmFzZSBpcyBncmFudGVkXG4gICAqL1xuICByZWFkb25seSBkYXRhYmFzZT86IElEYXRhYmFzZVxuXG4gIC8qKlxuICAgKiBPb3Rpb25hbCBkYXRhYmFzZSBuYW1lIHRoaXMgdXNlciBpcyBleHBlY3RlZCB0byB1c2UuXG4gICAqXG4gICAqIFNwZWNpZnkgbm9uZSBvZiBgZGF0YWJhc2VgIG9yIGBkYXRhYmFzZU5hbWVgIG9yIG9ubHkgb25lIG9mIHRoZW0uXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIGNvbm5lY3Rpb24gdG8gYW55IGRhdGFiYXNlIGlzIGdyYW50ZWRcbiAgICovXG4gIHJlYWRvbmx5IGRhdGFiYXNlTmFtZT86IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBEYXRhYmFzZSBjbHVzdGVyIHRvIGFjY2Vzcy5cbiAgICovXG4gIHJlYWRvbmx5IGNsdXN0ZXI6IFNlcnZlcmxlc3NDbHVzdGVyXG5cbiAgLyoqXG4gICAqIEEgbmV3IHNlY3JldCBpcyBjcmVhdGVkIGZvciB0aGlzIHVzZXIuXG4gICAqXG4gICAqIE9wdGlvbmFsbHkgZW5jcnlwdCBpdCB3aXRoIHRoZSBnaXZlbiBrZXkuXG4gICAqL1xuICByZWFkb25seSBlbmNyeXB0aW9uS2V5Pzoga21zLklLZXlcbn1cblxuZXhwb3J0IGNsYXNzIFJvbGUgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICAvKipcbiAgICogVGhlIHJvbGUgbmFtZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSByb2xlTmFtZTogc3RyaW5nXG5cbiAgLyoqXG4gICAqIFRoZSBnZW5lcmF0ZWQgc2VjcmV0LlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNlY3JldDogSVNlY3JldFxuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBSb2xlUHJvcHMpIHtcbiAgICBpZiAocHJvcHMuZGF0YWJhc2UgJiYgcHJvcHMuZGF0YWJhc2VOYW1lKVxuICAgICAgdGhyb3cgXCJTcGVjaWZ5IGVpdGhlciBkYXRhYmFzZSBvciBkYXRhYmFzZU5hbWVcIlxuICAgIHN1cGVyKHNjb3BlLCBpZClcbiAgICB0aGlzLnNlY3JldCA9IG5ldyBTZWNyZXQodGhpcywgXCJTZWNyZXRcIiwge1xuICAgICAgZW5jcnlwdGlvbktleTogcHJvcHMuZW5jcnlwdGlvbktleSxcbiAgICAgIGRlc2NyaXB0aW9uOiBgR2VuZXJhdGVkIHNlY3JldCBmb3IgcG9zdGdyZXMgcm9sZSAke3Byb3BzLnJvbGVOYW1lfWAsXG4gICAgICBnZW5lcmF0ZVNlY3JldFN0cmluZzoge1xuICAgICAgICBwYXNzd29yZExlbmd0aDogMzAsIC8vIE9yYWNsZSBwYXNzd29yZCBjYW5ub3QgaGF2ZSBtb3JlIHRoYW4gMzAgY2hhcmFjdGVyc1xuICAgICAgICBzZWNyZXRTdHJpbmdUZW1wbGF0ZTogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgIGRiQ2x1c3RlcklkZW50aWZpZXI6IHByb3BzLmNsdXN0ZXIuY2x1c3RlcklkZW50aWZpZXIsXG4gICAgICAgICAgZW5naW5lOiBcInBvc3RncmVzXCIsXG4gICAgICAgICAgaG9zdDogcHJvcHMuY2x1c3Rlci5jbHVzdGVyRW5kcG9pbnQuaG9zdG5hbWUsXG4gICAgICAgICAgcG9ydDogcHJvcHMuY2x1c3Rlci5jbHVzdGVyRW5kcG9pbnQucG9ydCxcbiAgICAgICAgICB1c2VybmFtZTogcHJvcHMucm9sZU5hbWUsXG4gICAgICAgICAgZGJuYW1lOiBwcm9wcy5kYXRhYmFzZSA/IHByb3BzLmRhdGFiYXNlLmRhdGFiYXNlTmFtZSA6IHVuZGVmaW5lZCxcbiAgICAgICAgfSksXG4gICAgICAgIGdlbmVyYXRlU3RyaW5nS2V5OiBcInBhc3N3b3JkXCIsXG4gICAgICAgIGV4Y2x1ZGVDaGFyYWN0ZXJzOiBcIiAlK35gIyQmKigpfFtde306Ozw+PyEnL0BcXFwiXFxcXFwiLFxuICAgICAgfSxcbiAgICAgIHJlbW92YWxQb2xpY3k6IFJlbW92YWxQb2xpY3kuREVTVFJPWSxcbiAgICB9KVxuICAgIGNvbnN0IHJvbGUgPSBuZXcgQ3VzdG9tUmVzb3VyY2VSb2xlKHRoaXMsIFwiUG9zdGdyZXNSb2xlXCIsIHtcbiAgICAgIHByb3ZpZGVyOiBwcm9wcy5wcm92aWRlcixcbiAgICAgIHJvbGVOYW1lOiBwcm9wcy5yb2xlTmFtZSxcbiAgICAgIHBhc3N3b3JkQXJuOiB0aGlzLnNlY3JldC5zZWNyZXRBcm4sXG4gICAgICBkYXRhYmFzZTogcHJvcHMuZGF0YWJhc2UsXG4gICAgICBkYXRhYmFzZU5hbWU6IHByb3BzLmRhdGFiYXNlTmFtZSxcbiAgICB9KVxuICAgIHJvbGUubm9kZS5hZGREZXBlbmRlbmN5KHRoaXMuc2VjcmV0KVxuICAgIHRoaXMucm9sZU5hbWUgPSBwcm9wcy5yb2xlTmFtZVxuICAgIHRoaXMuc2VjcmV0LmdyYW50UmVhZChwcm9wcy5wcm92aWRlci5oYW5kbGVyKVxuICB9XG59XG4iXX0=
47
+ Role[_a] = { fqn: "cdk-rds-sql.Role", version: "1.2.1" };
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9yb2xlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQTJDO0FBRzNDLHVFQUFnRTtBQUNoRSwyQ0FBc0M7QUFHdEMsaUVBQW1FO0FBZ0RuRSxNQUFhLElBQUssU0FBUSxzQkFBUztJQVdqQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQWdCO1FBQ3hELElBQUksS0FBSyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUMsWUFBWTtZQUN0QyxNQUFNLHlDQUF5QyxDQUFBO1FBQ2pELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUE7UUFDaEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLDJCQUFNLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRTtZQUN2QyxhQUFhLEVBQUUsS0FBSyxDQUFDLGFBQWE7WUFDbEMsV0FBVyxFQUFFLHNDQUFzQyxLQUFLLENBQUMsUUFBUSxFQUFFO1lBQ25FLG9CQUFvQixFQUFFO2dCQUNwQixjQUFjLEVBQUUsRUFBRTtnQkFDbEIsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQztvQkFDbkMsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUI7b0JBQ3BELE1BQU0sRUFBRSxVQUFVO29CQUNsQixJQUFJLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsUUFBUTtvQkFDNUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLElBQUk7b0JBQ3hDLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtvQkFDeEIsTUFBTSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxTQUFTO2lCQUNqRSxDQUFDO2dCQUNGLGlCQUFpQixFQUFFLFVBQVU7Z0JBQzdCLGlCQUFpQixFQUFFLCtCQUErQjthQUNuRDtZQUNELGFBQWEsRUFBRSwyQkFBYSxDQUFDLE9BQU87U0FDckMsQ0FBQyxDQUFBO1FBQ0YsTUFBTSxJQUFJLEdBQUcsSUFBSSwyQkFBa0IsQ0FBQyxJQUFJLEVBQUUsY0FBYyxFQUFFO1lBQ3hELFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtZQUN4QixRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVE7WUFDeEIsV0FBVyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUztZQUNsQyxRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVE7WUFDeEIsWUFBWSxFQUFFLEtBQUssQ0FBQyxZQUFZO1NBQ2pDLENBQUMsQ0FBQTtRQUNGLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUNwQyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUE7UUFDOUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUMvQyxDQUFDOztBQTNDSCxvQkE0Q0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZW1vdmFsUG9saWN5IH0gZnJvbSBcImF3cy1jZGstbGliXCJcbmltcG9ydCAqIGFzIGttcyBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWttc1wiXG5pbXBvcnQgeyBTZXJ2ZXJsZXNzQ2x1c3RlciB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtcmRzXCJcbmltcG9ydCB7IElTZWNyZXQsIFNlY3JldCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtc2VjcmV0c21hbmFnZXJcIlxuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIlxuaW1wb3J0IHsgSURhdGFiYXNlIH0gZnJvbSBcIi4vZGF0YWJhc2VcIlxuaW1wb3J0IHsgUHJvdmlkZXIgfSBmcm9tIFwiLi9wcm92aWRlclwiXG5pbXBvcnQgeyBSb2xlIGFzIEN1c3RvbVJlc291cmNlUm9sZSB9IGZyb20gXCIuL3JvbGUuY3VzdG9tLXJlc291cmNlXCJcblxuZXhwb3J0IGludGVyZmFjZSBSb2xlUHJvcHMge1xuICAvKipcbiAgICogUHJvdmlkZXIuXG4gICAqL1xuICByZWFkb25seSBwcm92aWRlcjogUHJvdmlkZXJcblxuICAvKipcbiAgICogU1FMLlxuICAgKi9cbiAgcmVhZG9ubHkgcm9sZU5hbWU6IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBkYXRhYmFzZSB0aGlzIHVzZXIgaXMgZXhwZWN0ZWQgdG8gdXNlLlxuICAgKlxuICAgKiBJZiB0aGUgZGF0YWJhc2UgZXhpc3RzLCBjb25uZWN0IHByaXZpbGVnZXMgYXJlIGdyYW50ZWQuXG4gICAqXG4gICAqIFNwZWNpZnkgbm9uZSBvZiBgZGF0YWJhc2VgIG9yIGBkYXRhYmFzZU5hbWVgIG9yIG9ubHkgb25lIG9mIHRoZW0uXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIGNvbm5lY3Rpb24gdG8gYW55IGRhdGFiYXNlIGlzIGdyYW50ZWRcbiAgICovXG4gIHJlYWRvbmx5IGRhdGFiYXNlPzogSURhdGFiYXNlXG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGRhdGFiYXNlIG5hbWUgdGhpcyB1c2VyIGlzIGV4cGVjdGVkIHRvIHVzZS5cbiAgICpcbiAgICogSWYgdGhlIGRhdGFiYXNlIGV4aXN0cywgY29ubmVjdCBwcml2aWxlZ2VzIGFyZSBncmFudGVkLlxuICAgKlxuICAgKiBTcGVjaWZ5IG5vbmUgb2YgYGRhdGFiYXNlYCBvciBgZGF0YWJhc2VOYW1lYCBvciBvbmx5IG9uZSBvZiB0aGVtLlxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBjb25uZWN0aW9uIHRvIGFueSBkYXRhYmFzZSBpcyBncmFudGVkXG4gICAqL1xuICByZWFkb25seSBkYXRhYmFzZU5hbWU/OiBzdHJpbmdcblxuICAvKipcbiAgICogRGF0YWJhc2UgY2x1c3RlciB0byBhY2Nlc3MuXG4gICAqL1xuICByZWFkb25seSBjbHVzdGVyOiBTZXJ2ZXJsZXNzQ2x1c3RlclxuXG4gIC8qKlxuICAgKiBBIG5ldyBzZWNyZXQgaXMgY3JlYXRlZCBmb3IgdGhpcyB1c2VyLlxuICAgKlxuICAgKiBPcHRpb25hbGx5IGVuY3J5cHQgaXQgd2l0aCB0aGUgZ2l2ZW4ga2V5LlxuICAgKi9cbiAgcmVhZG9ubHkgZW5jcnlwdGlvbktleT86IGttcy5JS2V5XG59XG5cbmV4cG9ydCBjbGFzcyBSb2xlIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgLyoqXG4gICAqIFRoZSByb2xlIG5hbWUuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcm9sZU5hbWU6IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBUaGUgZ2VuZXJhdGVkIHNlY3JldC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzZWNyZXQ6IElTZWNyZXRcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogUm9sZVByb3BzKSB7XG4gICAgaWYgKHByb3BzLmRhdGFiYXNlICYmIHByb3BzLmRhdGFiYXNlTmFtZSlcbiAgICAgIHRocm93IFwiU3BlY2lmeSBlaXRoZXIgZGF0YWJhc2Ugb3IgZGF0YWJhc2VOYW1lXCJcbiAgICBzdXBlcihzY29wZSwgaWQpXG4gICAgdGhpcy5zZWNyZXQgPSBuZXcgU2VjcmV0KHRoaXMsIFwiU2VjcmV0XCIsIHtcbiAgICAgIGVuY3J5cHRpb25LZXk6IHByb3BzLmVuY3J5cHRpb25LZXksXG4gICAgICBkZXNjcmlwdGlvbjogYEdlbmVyYXRlZCBzZWNyZXQgZm9yIHBvc3RncmVzIHJvbGUgJHtwcm9wcy5yb2xlTmFtZX1gLFxuICAgICAgZ2VuZXJhdGVTZWNyZXRTdHJpbmc6IHtcbiAgICAgICAgcGFzc3dvcmRMZW5ndGg6IDMwLCAvLyBPcmFjbGUgcGFzc3dvcmQgY2Fubm90IGhhdmUgbW9yZSB0aGFuIDMwIGNoYXJhY3RlcnNcbiAgICAgICAgc2VjcmV0U3RyaW5nVGVtcGxhdGU6IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgICBkYkNsdXN0ZXJJZGVudGlmaWVyOiBwcm9wcy5jbHVzdGVyLmNsdXN0ZXJJZGVudGlmaWVyLFxuICAgICAgICAgIGVuZ2luZTogXCJwb3N0Z3Jlc1wiLFxuICAgICAgICAgIGhvc3Q6IHByb3BzLmNsdXN0ZXIuY2x1c3RlckVuZHBvaW50Lmhvc3RuYW1lLFxuICAgICAgICAgIHBvcnQ6IHByb3BzLmNsdXN0ZXIuY2x1c3RlckVuZHBvaW50LnBvcnQsXG4gICAgICAgICAgdXNlcm5hbWU6IHByb3BzLnJvbGVOYW1lLFxuICAgICAgICAgIGRibmFtZTogcHJvcHMuZGF0YWJhc2UgPyBwcm9wcy5kYXRhYmFzZS5kYXRhYmFzZU5hbWUgOiB1bmRlZmluZWQsXG4gICAgICAgIH0pLFxuICAgICAgICBnZW5lcmF0ZVN0cmluZ0tleTogXCJwYXNzd29yZFwiLFxuICAgICAgICBleGNsdWRlQ2hhcmFjdGVyczogXCIgJSt+YCMkJiooKXxbXXt9Ojs8Pj8hJy9AXFxcIlxcXFxcIixcbiAgICAgIH0sXG4gICAgICByZW1vdmFsUG9saWN5OiBSZW1vdmFsUG9saWN5LkRFU1RST1ksXG4gICAgfSlcbiAgICBjb25zdCByb2xlID0gbmV3IEN1c3RvbVJlc291cmNlUm9sZSh0aGlzLCBcIlBvc3RncmVzUm9sZVwiLCB7XG4gICAgICBwcm92aWRlcjogcHJvcHMucHJvdmlkZXIsXG4gICAgICByb2xlTmFtZTogcHJvcHMucm9sZU5hbWUsXG4gICAgICBwYXNzd29yZEFybjogdGhpcy5zZWNyZXQuc2VjcmV0QXJuLFxuICAgICAgZGF0YWJhc2U6IHByb3BzLmRhdGFiYXNlLFxuICAgICAgZGF0YWJhc2VOYW1lOiBwcm9wcy5kYXRhYmFzZU5hbWUsXG4gICAgfSlcbiAgICByb2xlLm5vZGUuYWRkRGVwZW5kZW5jeSh0aGlzLnNlY3JldClcbiAgICB0aGlzLnJvbGVOYW1lID0gcHJvcHMucm9sZU5hbWVcbiAgICB0aGlzLnNlY3JldC5ncmFudFJlYWQocHJvcHMucHJvdmlkZXIuaGFuZGxlcilcbiAgfVxufVxuIl19
package/lib/schema.js CHANGED
@@ -24,5 +24,5 @@ class Schema extends aws_cdk_lib_1.CustomResource {
24
24
  }
25
25
  exports.Schema = Schema;
26
26
  _a = JSII_RTTI_SYMBOL_1;
27
- Schema[_a] = { fqn: "cdk-rds-sql.Schema", version: "1.2.0" };
27
+ Schema[_a] = { fqn: "cdk-rds-sql.Schema", version: "1.2.1" };
28
28
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NjaGVtYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZDQUE0QztBQUc1QyxpQ0FBdUM7QUFzQnZDLE1BQWEsTUFBTyxTQUFRLDRCQUFjO0lBR3hDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBa0I7UUFDMUQsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDZixZQUFZLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZO1lBQ3pDLFVBQVUsRUFBRTtnQkFDVixRQUFRLEVBQUUscUJBQWMsQ0FBQyxNQUFNO2dCQUMvQixVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVU7Z0JBQzVCLFNBQVMsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxTQUFTO2dCQUMxQyxRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLFNBQVM7YUFDbkU7U0FDRixDQUFDLENBQUE7UUFDRixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDdkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFBO1FBQ2xDLElBQUksS0FBSyxDQUFDLFFBQVE7WUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDN0QsQ0FBQzs7QUFoQkgsd0JBaUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3VzdG9tUmVzb3VyY2UgfSBmcm9tIFwiYXdzLWNkay1saWJcIlxuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIlxuaW1wb3J0IHsgSURhdGFiYXNlIH0gZnJvbSBcIi4vZGF0YWJhc2VcIlxuaW1wb3J0IHsgUmRzU3FsUmVzb3VyY2UgfSBmcm9tIFwiLi9lbnVtXCJcbmltcG9ydCB7IFByb3ZpZGVyIH0gZnJvbSBcIi4vcHJvdmlkZXJcIlxuXG5leHBvcnQgaW50ZXJmYWNlIFNjaGVtYVByb3BzIHtcbiAgLyoqXG4gICAqIFByb3ZpZGVyLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvdmlkZXI6IFByb3ZpZGVyXG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGRhdGFiYXNlLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIHVzZSBkZWZhdWx0IGRhdGFiYXNlXG4gICAqL1xuICByZWFkb25seSBkYXRhYmFzZT86IElEYXRhYmFzZVxuXG4gIC8qKlxuICAgKiBTUUwuXG4gICAqL1xuICByZWFkb25seSBzY2hlbWFOYW1lOiBzdHJpbmdcbn1cblxuZXhwb3J0IGNsYXNzIFNjaGVtYSBleHRlbmRzIEN1c3RvbVJlc291cmNlIHtcbiAgcHVibGljIHJlYWRvbmx5IHNjaGVtYU5hbWU6IHN0cmluZ1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBTY2hlbWFQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgc2VydmljZVRva2VuOiBwcm9wcy5wcm92aWRlci5zZXJ2aWNlVG9rZW4sXG4gICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgIFJlc291cmNlOiBSZHNTcWxSZXNvdXJjZS5TQ0hFTUEsXG4gICAgICAgIFJlc291cmNlSWQ6IHByb3BzLnNjaGVtYU5hbWUsXG4gICAgICAgIFNlY3JldEFybjogcHJvcHMucHJvdmlkZXIuc2VjcmV0LnNlY3JldEFybixcbiAgICAgICAgRGF0YWJhc2U6IHByb3BzLmRhdGFiYXNlID8gcHJvcHMuZGF0YWJhc2UuZGF0YWJhc2VOYW1lIDogdW5kZWZpbmVkLFxuICAgICAgfSxcbiAgICB9KVxuICAgIHRoaXMubm9kZS5hZGREZXBlbmRlbmN5KHByb3BzLnByb3ZpZGVyKVxuICAgIHRoaXMuc2NoZW1hTmFtZSA9IHByb3BzLnNjaGVtYU5hbWVcbiAgICBpZiAocHJvcHMuZGF0YWJhc2UpIHRoaXMubm9kZS5hZGREZXBlbmRlbmN5KHByb3BzLmRhdGFiYXNlKVxuICB9XG59XG4iXX0=
package/lib/sql.js CHANGED
@@ -23,5 +23,5 @@ class Sql extends aws_cdk_lib_1.CustomResource {
23
23
  }
24
24
  exports.Sql = Sql;
25
25
  _a = JSII_RTTI_SYMBOL_1;
26
- Sql[_a] = { fqn: "cdk-rds-sql.Sql", version: "1.2.0" };
26
+ Sql[_a] = { fqn: "cdk-rds-sql.Sql", version: "1.2.1" };
27
27
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3FsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NxbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZDQUE0QztBQUc1QyxpQ0FBdUM7QUFzQnZDLE1BQWEsR0FBSSxTQUFRLDRCQUFjO0lBQ3JDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBZTtRQUN2RCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLFlBQVksRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVk7WUFDekMsVUFBVSxFQUFFO2dCQUNWLFFBQVEsRUFBRSxxQkFBYyxDQUFDLEdBQUc7Z0JBQzVCLFNBQVMsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxTQUFTO2dCQUMxQyxRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLFNBQVM7Z0JBQ2xFLFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUzthQUMzQjtTQUNGLENBQUMsQ0FBQTtRQUNGLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUN2QyxJQUFJLEtBQUssQ0FBQyxRQUFRO1lBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQzdELENBQUM7O0FBYkgsa0JBY0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDdXN0b21SZXNvdXJjZSB9IGZyb20gXCJhd3MtY2RrLWxpYlwiXG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiXG5pbXBvcnQgeyBJRGF0YWJhc2UgfSBmcm9tIFwiLi9kYXRhYmFzZVwiXG5pbXBvcnQgeyBSZHNTcWxSZXNvdXJjZSB9IGZyb20gXCIuL2VudW1cIlxuaW1wb3J0IHsgUHJvdmlkZXIgfSBmcm9tIFwiLi9wcm92aWRlclwiXG5cbmV4cG9ydCBpbnRlcmZhY2UgU3FsUHJvcHMge1xuICAvKipcbiAgICogUHJvdmlkZXIuXG4gICAqL1xuICByZWFkb25seSBwcm92aWRlcjogUHJvdmlkZXJcblxuICAvKipcbiAgICogT3B0aW9uYWwgZGF0YWJhc2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gdXNlIGRlZmF1bHQgZGF0YWJhc2VcbiAgICovXG4gIHJlYWRvbmx5IGRhdGFiYXNlPzogSURhdGFiYXNlXG5cbiAgLyoqXG4gICAqIFNRTC5cbiAgICovXG4gIHJlYWRvbmx5IHN0YXRlbWVudD86IHN0cmluZ1xufVxuXG5leHBvcnQgY2xhc3MgU3FsIGV4dGVuZHMgQ3VzdG9tUmVzb3VyY2Uge1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogU3FsUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHNlcnZpY2VUb2tlbjogcHJvcHMucHJvdmlkZXIuc2VydmljZVRva2VuLFxuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICBSZXNvdXJjZTogUmRzU3FsUmVzb3VyY2UuU1FMLFxuICAgICAgICBTZWNyZXRBcm46IHByb3BzLnByb3ZpZGVyLnNlY3JldC5zZWNyZXRBcm4sXG4gICAgICAgIERhdGFiYXNlOiBwcm9wcy5kYXRhYmFzZSA/IHByb3BzLmRhdGFiYXNlLmRhdGFiYXNlTmFtZSA6IHVuZGVmaW5lZCxcbiAgICAgICAgU3RhdGVtZW50OiBwcm9wcy5zdGF0ZW1lbnQsXG4gICAgICB9LFxuICAgIH0pXG4gICAgdGhpcy5ub2RlLmFkZERlcGVuZGVuY3kocHJvcHMucHJvdmlkZXIpXG4gICAgaWYgKHByb3BzLmRhdGFiYXNlKSB0aGlzLm5vZGUuYWRkRGVwZW5kZW5jeShwcm9wcy5kYXRhYmFzZSlcbiAgfVxufVxuIl19
package/package.json CHANGED
@@ -95,7 +95,7 @@
95
95
  ],
96
96
  "main": "lib/index.js",
97
97
  "license": "Apache-2.0",
98
- "version": "1.2.0",
98
+ "version": "1.2.1",
99
99
  "jest": {
100
100
  "testMatch": [
101
101
  "<rootDir>/src/**/__tests__/**/*.ts?(x)",