cdk-rds-sql 1.0.1 → 1.1.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 +165 -49
- package/.pre-commit-config.yaml +2 -2
- package/.projenrc.ts +1 -1
- package/README.md +6 -5
- package/cdk.json +1 -2
- package/lib/database.d.ts +16 -6
- package/lib/database.js +17 -2
- package/lib/handler.js +27 -5
- package/lib/provider.js +1 -1
- package/lib/role.custom-resource.d.ts +7 -0
- package/lib/role.custom-resource.js +4 -1
- package/lib/role.d.ts +5 -2
- package/lib/role.js +4 -3
- package/lib/schema.d.ts +2 -1
- package/lib/schema.js +5 -3
- package/lib/sql.d.ts +2 -1
- package/lib/sql.js +5 -3
- package/node_modules/@aws-sdk/abort-controller/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/abort-controller/package.json +2 -2
- package/node_modules/@aws-sdk/client-secrets-manager/CHANGELOG.md +24 -0
- package/node_modules/@aws-sdk/client-secrets-manager/dist-types/runtimeConfig.browser.d.ts +1 -1
- package/node_modules/@aws-sdk/client-secrets-manager/dist-types/runtimeConfig.d.ts +1 -1
- package/node_modules/@aws-sdk/client-secrets-manager/dist-types/runtimeConfig.native.d.ts +1 -1
- package/node_modules/@aws-sdk/client-secrets-manager/dist-types/ts3.4/runtimeConfig.browser.d.ts +3 -1
- package/node_modules/@aws-sdk/client-secrets-manager/dist-types/ts3.4/runtimeConfig.d.ts +3 -1
- package/node_modules/@aws-sdk/client-secrets-manager/dist-types/ts3.4/runtimeConfig.native.d.ts +3 -1
- package/node_modules/@aws-sdk/client-secrets-manager/package.json +26 -26
- package/node_modules/@aws-sdk/client-sso/CHANGELOG.md +16 -0
- package/node_modules/@aws-sdk/client-sso/package.json +23 -23
- package/node_modules/@aws-sdk/client-sts/CHANGELOG.md +24 -0
- package/node_modules/@aws-sdk/client-sts/dist-types/runtimeConfig.browser.d.ts +1 -1
- package/node_modules/@aws-sdk/client-sts/dist-types/runtimeConfig.d.ts +1 -1
- package/node_modules/@aws-sdk/client-sts/dist-types/runtimeConfig.native.d.ts +1 -1
- package/node_modules/@aws-sdk/client-sts/dist-types/ts3.4/runtimeConfig.browser.d.ts +3 -1
- package/node_modules/@aws-sdk/client-sts/dist-types/ts3.4/runtimeConfig.d.ts +3 -1
- package/node_modules/@aws-sdk/client-sts/dist-types/ts3.4/runtimeConfig.native.d.ts +3 -1
- package/node_modules/@aws-sdk/client-sts/package.json +26 -26
- package/node_modules/@aws-sdk/config-resolver/CHANGELOG.md +11 -0
- package/node_modules/@aws-sdk/config-resolver/dist-cjs/endpointsConfig/resolveEndpointsConfig.js +1 -1
- package/node_modules/@aws-sdk/config-resolver/dist-es/endpointsConfig/resolveEndpointsConfig.js +1 -1
- package/node_modules/@aws-sdk/config-resolver/dist-types/endpointsConfig/resolveEndpointsConfig.d.ts +2 -1
- package/node_modules/@aws-sdk/config-resolver/package.json +5 -5
- package/node_modules/@aws-sdk/credential-provider-env/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/credential-provider-env/package.json +3 -3
- package/node_modules/@aws-sdk/credential-provider-imds/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/credential-provider-imds/package.json +5 -5
- package/node_modules/@aws-sdk/credential-provider-ini/CHANGELOG.md +16 -0
- package/node_modules/@aws-sdk/credential-provider-ini/package.json +8 -8
- package/node_modules/@aws-sdk/credential-provider-node/CHANGELOG.md +16 -0
- package/node_modules/@aws-sdk/credential-provider-node/package.json +10 -10
- package/node_modules/@aws-sdk/credential-provider-process/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/credential-provider-process/package.json +4 -4
- package/node_modules/@aws-sdk/credential-provider-sso/CHANGELOG.md +16 -0
- package/node_modules/@aws-sdk/credential-provider-sso/package.json +5 -5
- package/node_modules/@aws-sdk/credential-provider-web-identity/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +3 -3
- package/node_modules/@aws-sdk/fetch-http-handler/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/fetch-http-handler/package.json +5 -5
- package/node_modules/@aws-sdk/hash-node/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/hash-node/package.json +2 -2
- package/node_modules/@aws-sdk/invalid-dependency/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/invalid-dependency/package.json +2 -2
- package/node_modules/@aws-sdk/middleware-content-length/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/middleware-content-length/package.json +3 -3
- package/node_modules/@aws-sdk/middleware-host-header/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/middleware-host-header/package.json +3 -3
- package/node_modules/@aws-sdk/middleware-logger/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/middleware-logger/package.json +2 -2
- package/node_modules/@aws-sdk/middleware-recursion-detection/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/middleware-recursion-detection/package.json +3 -3
- package/node_modules/@aws-sdk/middleware-retry/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/middleware-retry/package.json +6 -6
- package/node_modules/@aws-sdk/middleware-sdk-sts/CHANGELOG.md +16 -0
- package/node_modules/@aws-sdk/middleware-sdk-sts/package.json +6 -6
- package/node_modules/@aws-sdk/middleware-serde/CHANGELOG.md +11 -0
- package/node_modules/@aws-sdk/middleware-serde/dist-cjs/serializerMiddleware.js +8 -1
- package/node_modules/@aws-sdk/middleware-serde/dist-es/serializerMiddleware.js +15 -5
- package/node_modules/@aws-sdk/middleware-serde/dist-types/serdePlugin.d.ts +5 -2
- package/node_modules/@aws-sdk/middleware-serde/dist-types/serializerMiddleware.d.ts +2 -1
- package/node_modules/@aws-sdk/middleware-serde/dist-types/ts3.4/serdePlugin.d.ts +5 -1
- package/node_modules/@aws-sdk/middleware-serde/dist-types/ts3.4/serializerMiddleware.d.ts +2 -1
- package/node_modules/@aws-sdk/middleware-serde/package.json +2 -2
- package/node_modules/@aws-sdk/middleware-signing/CHANGELOG.md +22 -0
- package/node_modules/@aws-sdk/middleware-signing/dist-cjs/configurations.js +30 -15
- package/node_modules/@aws-sdk/middleware-signing/dist-cjs/middleware.js +3 -1
- package/node_modules/@aws-sdk/middleware-signing/dist-es/configurations.js +21 -10
- package/node_modules/@aws-sdk/middleware-signing/dist-es/middleware.js +13 -11
- package/node_modules/@aws-sdk/middleware-signing/dist-types/configurations.d.ts +5 -5
- package/node_modules/@aws-sdk/middleware-signing/dist-types/ts3.4/configurations.d.ts +9 -4
- package/node_modules/@aws-sdk/middleware-signing/package.json +7 -6
- package/node_modules/@aws-sdk/middleware-stack/CHANGELOG.md +11 -0
- package/node_modules/@aws-sdk/middleware-stack/dist-cjs/MiddlewareStack.js +13 -3
- package/node_modules/@aws-sdk/middleware-stack/dist-es/MiddlewareStack.js +14 -3
- package/node_modules/@aws-sdk/middleware-stack/package.json +2 -2
- package/node_modules/@aws-sdk/middleware-user-agent/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/middleware-user-agent/package.json +4 -4
- package/node_modules/@aws-sdk/node-config-provider/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/node-config-provider/package.json +4 -4
- package/node_modules/@aws-sdk/node-http-handler/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/node-http-handler/package.json +5 -5
- package/node_modules/@aws-sdk/property-provider/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/property-provider/package.json +2 -2
- package/node_modules/@aws-sdk/protocol-http/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/protocol-http/package.json +2 -2
- package/node_modules/@aws-sdk/querystring-builder/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/querystring-builder/package.json +2 -2
- package/node_modules/@aws-sdk/querystring-parser/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/querystring-parser/package.json +2 -2
- package/node_modules/@aws-sdk/service-error-classification/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/service-error-classification/package.json +2 -2
- package/node_modules/@aws-sdk/shared-ini-file-loader/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/shared-ini-file-loader/package.json +2 -2
- package/node_modules/@aws-sdk/signature-v4/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/signature-v4/package.json +4 -4
- package/node_modules/@aws-sdk/smithy-client/CHANGELOG.md +19 -0
- package/node_modules/@aws-sdk/smithy-client/dist-types/exceptions.d.ts +2 -2
- package/node_modules/@aws-sdk/smithy-client/dist-types/ts3.4/exceptions.d.ts +4 -1
- package/node_modules/@aws-sdk/smithy-client/package.json +3 -3
- package/node_modules/@aws-sdk/types/CHANGELOG.md +11 -0
- package/node_modules/@aws-sdk/types/dist-types/auth.d.ts +11 -0
- package/node_modules/@aws-sdk/types/dist-types/endpoint.d.ts +4 -1
- package/node_modules/@aws-sdk/types/dist-types/middleware.d.ts +12 -0
- package/node_modules/@aws-sdk/types/dist-types/ts3.4/auth.d.ts +2 -0
- package/node_modules/@aws-sdk/types/dist-types/ts3.4/endpoint.d.ts +4 -1
- package/node_modules/@aws-sdk/types/dist-types/ts3.4/middleware.d.ts +3 -0
- package/node_modules/@aws-sdk/types/package.json +1 -1
- package/node_modules/@aws-sdk/url-parser/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/url-parser/package.json +3 -3
- package/node_modules/@aws-sdk/util-defaults-mode-browser/CHANGELOG.md +16 -0
- package/node_modules/@aws-sdk/util-defaults-mode-browser/package.json +4 -4
- package/node_modules/@aws-sdk/util-defaults-mode-node/CHANGELOG.md +16 -0
- package/node_modules/@aws-sdk/util-defaults-mode-node/package.json +7 -7
- package/node_modules/@aws-sdk/util-middleware/CHANGELOG.md +11 -0
- package/node_modules/@aws-sdk/util-middleware/dist-types/normalizeProvider.d.ts +3 -0
- package/node_modules/@aws-sdk/util-middleware/package.json +2 -2
- package/node_modules/@aws-sdk/util-user-agent-browser/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/util-user-agent-browser/package.json +3 -3
- package/node_modules/@aws-sdk/util-user-agent-node/CHANGELOG.md +8 -0
- package/node_modules/@aws-sdk/util-user-agent-node/package.json +4 -4
- package/node_modules/aws-sdk/CHANGELOG.md +43 -1
- package/node_modules/aws-sdk/README.md +1 -1
- package/node_modules/aws-sdk/apis/backup-gateway-2021-01-01.min.json +59 -8
- package/node_modules/aws-sdk/apis/ce-2017-10-25.min.json +10 -8
- package/node_modules/aws-sdk/apis/cloudtrail-2013-11-01.min.json +247 -3
- package/node_modules/aws-sdk/apis/cloudtrail-2013-11-01.paginators.json +12 -0
- package/node_modules/aws-sdk/apis/codestar-notifications-2019-10-15.min.json +7 -2
- package/node_modules/aws-sdk/apis/comprehend-2017-11-27.min.json +237 -126
- package/node_modules/aws-sdk/apis/devicefarm-2015-06-23.min.json +166 -132
- package/node_modules/aws-sdk/apis/ec2-2016-11-15.min.json +1294 -1251
- package/node_modules/aws-sdk/apis/glue-2017-03-31.min.json +3 -1
- package/node_modules/aws-sdk/apis/iotfleetwise-2021-06-17.examples.json +5 -0
- package/node_modules/aws-sdk/apis/iotfleetwise-2021-06-17.min.json +1961 -0
- package/node_modules/aws-sdk/apis/iotfleetwise-2021-06-17.paginators.json +82 -0
- package/node_modules/aws-sdk/apis/iotfleetwise-2021-06-17.waiters2.json +5 -0
- package/node_modules/aws-sdk/apis/lightsail-2016-11-28.min.json +59 -22
- package/node_modules/aws-sdk/apis/location-2020-11-19.min.json +64 -17
- package/node_modules/aws-sdk/apis/mediaconnect-2018-11-14.min.json +21 -0
- package/node_modules/aws-sdk/apis/metadata.json +3 -0
- package/node_modules/aws-sdk/apis/models.lex.v2-2020-08-07.min.json +228 -142
- package/node_modules/aws-sdk/apis/nimble-2020-08-01.waiters2.json +1 -1
- package/node_modules/aws-sdk/apis/s3control-2018-08-20.min.json +102 -19
- package/node_modules/aws-sdk/apis/sagemaker-2017-07-24.min.json +584 -572
- package/node_modules/aws-sdk/apis/ssm-2014-11-06.min.json +396 -287
- package/node_modules/aws-sdk/clients/all.d.ts +1 -0
- package/node_modules/aws-sdk/clients/all.js +2 -1
- package/node_modules/aws-sdk/clients/apprunner.d.ts +1 -1
- package/node_modules/aws-sdk/clients/backupgateway.d.ts +72 -0
- package/node_modules/aws-sdk/clients/cloudtrail.d.ts +335 -6
- package/node_modules/aws-sdk/clients/codestarnotifications.d.ts +29 -29
- package/node_modules/aws-sdk/clients/comprehend.d.ts +148 -34
- package/node_modules/aws-sdk/clients/costexplorer.d.ts +15 -7
- package/node_modules/aws-sdk/clients/cur.d.ts +1 -1
- package/node_modules/aws-sdk/clients/devicefarm.d.ts +38 -0
- package/node_modules/aws-sdk/clients/ec2.d.ts +154 -105
- package/node_modules/aws-sdk/clients/ecs.d.ts +11 -11
- package/node_modules/aws-sdk/clients/glue.d.ts +8 -0
- package/node_modules/aws-sdk/clients/identitystore.d.ts +8 -8
- package/node_modules/aws-sdk/clients/iotfleetwise.d.ts +2549 -0
- package/node_modules/aws-sdk/clients/iotfleetwise.js +19 -0
- package/node_modules/aws-sdk/clients/kendra.d.ts +36 -36
- package/node_modules/aws-sdk/clients/lexmodelsv2.d.ts +85 -0
- package/node_modules/aws-sdk/clients/lightsail.d.ts +66 -3
- package/node_modules/aws-sdk/clients/location.d.ts +54 -4
- package/node_modules/aws-sdk/clients/mediaconnect.d.ts +25 -1
- package/node_modules/aws-sdk/clients/nimble.d.ts +14 -14
- package/node_modules/aws-sdk/clients/rds.d.ts +18 -18
- package/node_modules/aws-sdk/clients/s3control.d.ts +109 -41
- package/node_modules/aws-sdk/clients/sagemaker.d.ts +31 -10
- package/node_modules/aws-sdk/clients/ssm.d.ts +113 -2
- package/node_modules/aws-sdk/clients/wafv2.d.ts +7 -7
- package/node_modules/aws-sdk/dist/aws-sdk-core-react-native.js +31 -11
- package/node_modules/aws-sdk/dist/aws-sdk-react-native.js +107 -37
- package/node_modules/aws-sdk/dist/aws-sdk.js +2448 -1829
- package/node_modules/aws-sdk/dist/aws-sdk.min.js +86 -85
- package/node_modules/aws-sdk/lib/config_service_placeholders.d.ts +2 -0
- package/node_modules/aws-sdk/lib/core.js +1 -1
- package/node_modules/aws-sdk/lib/event_listeners.js +1 -0
- package/node_modules/aws-sdk/lib/protocol/rest_json.js +15 -2
- package/node_modules/aws-sdk/package.json +1 -1
- package/node_modules/es-abstract/2015/GetSubstitution.js +1 -1
- package/node_modules/es-abstract/2015/ToNumber.js +1 -1
- package/node_modules/es-abstract/2016/GetSubstitution.js +1 -1
- package/node_modules/es-abstract/2016/ToNumber.js +1 -1
- package/node_modules/es-abstract/2017/GetSubstitution.js +1 -1
- package/node_modules/es-abstract/2017/ToNumber.js +1 -1
- package/node_modules/es-abstract/2018/GetSubstitution.js +1 -1
- package/node_modules/es-abstract/2018/ToNumber.js +1 -1
- package/node_modules/es-abstract/2019/GetSubstitution.js +1 -1
- package/node_modules/es-abstract/2019/ToNumber.js +1 -1
- package/node_modules/es-abstract/2020/GetSubstitution.js +1 -1
- package/node_modules/es-abstract/2020/ToNumber.js +1 -1
- package/node_modules/es-abstract/2021/GetSubstitution.js +1 -1
- package/node_modules/es-abstract/2021/ToNumber.js +1 -1
- package/node_modules/es-abstract/2022/GetSubstitution.js +1 -1
- package/node_modules/es-abstract/2022/StringToNumber.js +1 -1
- package/node_modules/es-abstract/CHANGELOG.md +6 -0
- package/node_modules/es-abstract/helpers/regexTester.js +2 -6
- package/node_modules/es-abstract/package.json +6 -5
- package/node_modules/is-callable/CHANGELOG.md +13 -0
- package/node_modules/is-callable/README.md +5 -2
- package/node_modules/is-callable/index.js +13 -7
- package/node_modules/is-callable/package.json +1 -1
- package/node_modules/is-callable/test/index.js +26 -9
- package/node_modules/safe-regex-test/.eslintrc +9 -0
- package/node_modules/safe-regex-test/.github/FUNDING.yml +12 -0
- package/node_modules/safe-regex-test/CHANGELOG.md +15 -0
- package/node_modules/safe-regex-test/LICENSE +21 -0
- package/node_modules/safe-regex-test/README.md +42 -0
- package/node_modules/safe-regex-test/index.js +17 -0
- package/node_modules/safe-regex-test/package.json +75 -0
- package/node_modules/safe-regex-test/test/index.js +37 -0
- package/package.json +12 -12
package/lib/handler.js
CHANGED
|
@@ -32,28 +32,48 @@ const jumpTable = {
|
|
|
32
32
|
throw "No PasswordArn provided";
|
|
33
33
|
const password = await getPassword(props.PasswordArn);
|
|
34
34
|
if (password) {
|
|
35
|
-
|
|
35
|
+
const sql = [
|
|
36
|
+
node_pg_format_1.format("create role %I with login password %L", resourceId, password),
|
|
37
|
+
];
|
|
38
|
+
if (props.DatabaseName) {
|
|
39
|
+
sql.push(node_pg_format_1.format("grant connect on database %I to %I", props.DatabaseName, resourceId));
|
|
40
|
+
}
|
|
41
|
+
return sql;
|
|
36
42
|
}
|
|
37
43
|
else {
|
|
38
44
|
throw `Cannot parse password from ${props.PasswordArn}`;
|
|
39
45
|
}
|
|
40
46
|
},
|
|
41
47
|
Update: async (resourceId, oldResourceId, props) => {
|
|
48
|
+
// TODO: if database name has changed in OldResourceProperties, revoke connect
|
|
42
49
|
if (props && props.PasswordArn) {
|
|
43
50
|
const password = await getPassword(props.PasswordArn);
|
|
44
51
|
if (password) {
|
|
45
|
-
|
|
52
|
+
const sql = [
|
|
53
|
+
node_pg_format_1.format("alter role %I rename to %I; alter role %I with password %L", oldResourceId, resourceId, resourceId, password),
|
|
54
|
+
];
|
|
55
|
+
if (props.DatabaseName) {
|
|
56
|
+
sql.push(node_pg_format_1.format("grant connect on database %I to %I", props.DatabaseName, resourceId));
|
|
57
|
+
}
|
|
58
|
+
return sql;
|
|
46
59
|
}
|
|
47
60
|
else {
|
|
48
61
|
throw `Cannot parse password from ${props.PasswordArn}`;
|
|
49
62
|
}
|
|
50
63
|
}
|
|
51
64
|
else {
|
|
52
|
-
return
|
|
65
|
+
return [
|
|
66
|
+
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),
|
|
68
|
+
];
|
|
53
69
|
}
|
|
54
70
|
},
|
|
55
71
|
Delete: (resourceId) => {
|
|
56
|
-
|
|
72
|
+
// TODO: if user is owner of a database, assign ownership to master user?
|
|
73
|
+
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),
|
|
75
|
+
node_pg_format_1.format("drop role if exists %I", resourceId),
|
|
76
|
+
];
|
|
57
77
|
},
|
|
58
78
|
},
|
|
59
79
|
database: {
|
|
@@ -159,6 +179,8 @@ exports.handler = async (event) => {
|
|
|
159
179
|
}
|
|
160
180
|
}
|
|
161
181
|
let response = {};
|
|
182
|
+
// Except for the SQL resource, return the new resource id. This
|
|
183
|
+
// will cause a delete to be send for the old resource.
|
|
162
184
|
if (resource !== enum_1.RdsSqlResource.SQL) {
|
|
163
185
|
response.PhysicalResourceId = resourceId;
|
|
164
186
|
}
|
|
@@ -178,4 +200,4 @@ const getPassword = async (arn) => {
|
|
|
178
200
|
return json.password;
|
|
179
201
|
}
|
|
180
202
|
};
|
|
181
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDRFQUd3QztBQU14QyxtREFBdUM7QUFDdkMsMkJBQTJCO0FBQzNCLGlDQUF1QztBQXVDdkMsTUFBTSxTQUFTLEdBQWM7SUFDM0IsR0FBRyxFQUFFO1FBQ0gsTUFBTSxFQUFFLENBQUMsQ0FBUyxFQUFFLEtBQVcsRUFBRSxFQUFFO1lBQ2pDLE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQTtRQUN4QixDQUFDO1FBQ0QsTUFBTSxFQUFFLENBQUMsQ0FBUyxFQUFFLEVBQVUsRUFBRSxLQUFXLEVBQUUsRUFBRTtZQUM3QyxPQUFPLEtBQUssQ0FBQyxTQUFTLENBQUE7UUFDeEIsQ0FBQztRQUNELE1BQU0sRUFBRSxDQUFDLENBQVMsRUFBRSxFQUFFLEdBQUUsQ0FBQztLQUMxQjtJQUNELE1BQU0sRUFBRTtRQUNOLE1BQU0sRUFBRSxLQUFLLEVBQUUsVUFBa0IsRUFBRSxFQUFFO1lBQ25DLE9BQU8sdUJBQU0sQ0FBQyxnQ0FBZ0MsRUFBRSxVQUFVLENBQUMsQ0FBQTtRQUM3RCxDQUFDO1FBQ0QsTUFBTSxFQUFFLEtBQUssRUFBRSxVQUFrQixFQUFFLGFBQXFCLEVBQUUsRUFBRTtZQUMxRCxPQUFPLHVCQUFNLENBQUMsOEJBQThCLEVBQUUsYUFBYSxFQUFFLFVBQVUsQ0FBQyxDQUFBO1FBQzFFLENBQUM7UUFDRCxNQUFNLEVBQUUsQ0FBQyxVQUFrQixFQUFFLEVBQUU7WUFDN0IsT0FBTyx1QkFBTSxDQUFDLGtDQUFrQyxFQUFFLFVBQVUsQ0FBQyxDQUFBO1FBQy9ELENBQUM7S0FDRjtJQUNELElBQUksRUFBRTtRQUNKLE1BQU0sRUFBRSxLQUFLLEVBQUUsVUFBa0IsRUFBRSxLQUFnQixFQUFFLEVBQUU7WUFDckQsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXO2dCQUFFLE1BQU0seUJBQXlCLENBQUE7WUFDdkQsTUFB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U0FBUyxFQUFFLEVBQUU7b0JBQzFCLE1BQU0sU0FBUyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQTtnQkFDbEMsQ0FBQyxDQUFDLENBQ0gsQ0FBQTthQUNGO1NBQ0Y7Z0JBQVM7WUFDUixNQUFNLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQTtTQUN0QjtLQUNGO0lBRUQsSUFBSSxRQUFRLEdBQTJCLEVBQUUsQ0FBQTtJQUN6QyxJQUFJLFFBQVEsS0FBSyxxQkFBYyxDQUFDLEdBQUcsRUFBRTtRQUNuQyxRQUFRLENBQUMsa0JBQWtCLEdBQUcsVUFBVSxDQUFBO0tBQ3pDO0lBRUQsT0FBTyxRQUFRLENBQUE7QUFDakIsQ0FBQyxDQUFBO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFdBQVcsR0FBRyxLQUFLLEVBQUUsR0FBVyxFQUEwQixFQUFFO0lBQ2hFLE1BQU0sY0FBYyxHQUFHLElBQUksNkNBQW9CLENBQUMsRUFBRSxDQUFDLENBQUE7SUFDbkQsTUFBTSxPQUFPLEdBQUcsSUFBSSw4Q0FBcUIsQ0FBQztRQUN4QyxRQUFRLEVBQUUsR0FBRztLQUNkLENBQUMsQ0FBQTtJQUNGLE1BQU0sTUFBTSxHQUFHLE1BQU0sY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUNqRCxJQUFJLE1BQU0sQ0FBQyxZQUFZLEVBQUU7UUFDdkIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUE7UUFDNUMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFBO0tBQ3JCO0FBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgU2VjcmV0c01hbmFnZXJDbGllbnQsXG4gIEdldFNlY3JldFZhbHVlQ29tbWFuZCxcbn0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1zZWNyZXRzLW1hbmFnZXJcIlxuaW1wb3J0IHtcbiAgQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZUNyZWF0ZUV2ZW50LFxuICBDbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlVXBkYXRlRXZlbnQsXG4gIENsb3VkRm9ybWF0aW9uQ3VzdG9tUmVzb3VyY2VEZWxldGVFdmVudCxcbn0gZnJvbSBcImF3cy1sYW1iZGFcIlxuaW1wb3J0IHsgZm9ybWF0IH0gZnJvbSBcIm5vZGUtcGctZm9ybWF0XCJcbmltcG9ydCB7IENsaWVudCB9IGZyb20gXCJwZ1wiXG5pbXBvcnQgeyBSZHNTcWxSZXNvdXJjZSB9IGZyb20gXCIuL2VudW1cIlxuXG5pbnRlcmZhY2UgQ3VzdG9tUmVzb3VyY2VSZXNwb25zZSB7XG4gIFBoeXNpY2FsUmVzb3VyY2VJZD86IHN0cmluZ1xuICBEYXRhPzogYW55XG4gIE5vRWNobz86IGJvb2xlYW5cbn1cblxudHlwZSBDcmVhdGVSZXNvdXJjZUhhbmRsZXIgPSAoXG4gIHJlc291cmNlSWQ6IHN0cmluZyxcbiAgcHJvcHM/OiBhbnlcbikgPT4gUHJvbWlzZTxzdHJpbmcgfCBzdHJpbmdbXT5cbnR5cGUgVXBkYXRlUmVzb3VyY2VIYW5kbGVyID0gKFxuICByZXNvdXJjZUlkOiBzdHJpbmcsXG4gIG9sZFJlc291cmNlSWQ6IHN0cmluZyxcbiAgcHJvcHM/OiBhbnlcbikgPT4gUHJvbWlzZTxzdHJpbmcgfCBzdHJpbmdbXSB8IHZvaWQ+XG50eXBlIERlbGV0ZVJlc291cmNlSGFuZGxlciA9IChyZXNvdXJjZUlkOiBzdHJpbmcsIHByb3BzPzogYW55KSA9PiBzdHJpbmcgfCBzdHJpbmdbXSB8IHZvaWRcblxudHlwZSBKdW1wVGFibGUgPSB7XG4gIFtrZXkgaW4gUmRzU3FsUmVzb3VyY2VdOiB7XG4gICAgQ3JlYXRlOiBDcmVhdGVSZXNvdXJjZUhhbmRsZXJcbiAgICBVcGRhdGU6IFVwZGF0ZVJlc291cmNlSGFuZGxlclxuICAgIERlbGV0ZTogRGVsZXRlUmVzb3VyY2VIYW5kbGVyXG4gIH1cbn1cblxuaW50ZXJmYWNlIFJvbGVQcm9wcyB7XG4gIFBhc3N3b3JkQXJuOiBzdHJpbmdcbn1cblxuaW50ZXJmYWNlIERhdGFiYXNlUHJvcHMge1xuICBPd25lcjogc3RyaW5nXG59XG5cbmludGVyZmFjZSBEYXRhYmFzZVVwZGF0ZVByb3BzIGV4dGVuZHMgRGF0YWJhc2VQcm9wcyB7XG4gIE1hc3Rlck93bmVyOiBzdHJpbmdcbn1cblxuY29uc3QganVtcFRhYmxlOiBKdW1wVGFibGUgPSB7XG4gIHNxbDoge1xuICAgIENyZWF0ZTogKF86IHN0cmluZywgcHJvcHM/OiBhbnkpID0+IHtcbiAgICAgIHJldHVybiBwcm9wcy5TdGF0ZW1lbnRcbiAgICB9LFxuICAgIFVwZGF0ZTogKF86IHN0cmluZywgX186IHN0cmluZywgcHJvcHM/OiBhbnkpID0+IHtcbiAgICAgIHJldHVybiBwcm9wcy5TdGF0ZW1lbnRcbiAgICB9LFxuICAgIERlbGV0ZTogKF86IHN0cmluZykgPT4ge30sXG4gIH0sXG4gIHNjaGVtYToge1xuICAgIENyZWF0ZTogYXN5bmMgKHJlc291cmNlSWQ6IHN0cmluZykgPT4ge1xuICAgICAgcmV0dXJuIGZvcm1hdChcImNyZWF0ZSBzY2hlbWEgaWYgbm90IGV4aXN0cyAlSVwiLCByZXNvdXJjZUlkKVxuICAgIH0sXG4gICAgVXBkYXRlOiBhc3luYyAocmVzb3VyY2VJZDogc3RyaW5nLCBvbGRSZXNvdXJjZUlkOiBzdHJpbmcpID0+IHtcbiAgICAgIHJldHVybiBmb3JtYXQoXCJhbHRlciBzY2hlbWEgJUkgcmVuYW1lIHRvICVJXCIsIG9sZFJlc291cmNlSWQsIHJlc291cmNlSWQpXG4gICAgfSxcbiAgICBEZWxldGU6IChyZXNvdXJjZUlkOiBzdHJpbmcpID0+IHtcbiAgICAgIHJldHVybiBmb3JtYXQoXCJkcm9wIHNjaGVtYSBpZiBleGlzdHMgJUkgY2FzY2FkZVwiLCByZXNvdXJjZUlkKVxuICAgIH0sXG4gIH0sXG4gIHJvbGU6IHtcbiAgICBDcmVhdGU6IGFzeW5jIChyZXNvdXJjZUlkOiBzdHJpbmcsIHByb3BzOiBSb2xlUHJvcHMpID0+IHtcbiAgICAgIGlmICghcHJvcHMuUGFzc3dvcmRBcm4pIHRocm93IFwiTm8gUGFzc3dvcmRBcm4gcHJvdmlkZWRcIlxuICAgICAgY29uc3QgcGFzc3dvcmQgPSBhd2FpdCBnZXRQYXNzd29yZChwcm9wcy5QYXNzd29yZEFybilcbiAgICAgIGlmIChwYXNzd29yZCkge1xuICAgICAgICByZXR1cm4gZm9ybWF0KFwiY3JlYXRlIHJvbGUgJUkgd2l0aCBwYXNzd29yZCAlTFwiLCByZXNvdXJjZUlkLCBwYXNzd29yZClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IGBDYW5ub3QgcGFyc2UgcGFzc3dvcmQgZnJvbSAke3Byb3BzLlBhc3N3b3JkQXJufWBcbiAgICAgIH1cbiAgICB9LFxuICAgIFVwZGF0ZTogYXN5bmMgKHJlc291cmNlSWQ6IHN0cmluZywgb2xkUmVzb3VyY2VJZDogc3RyaW5nLCBwcm9wcz86IFJvbGVQcm9wcykgPT4ge1xuICAgICAgaWYgKHByb3BzICYmIHByb3BzLlBhc3N3b3JkQXJuKSB7XG4gICAgICAgIGNvbnN0IHBhc3N3b3JkID0gYXdhaXQgZ2V0UGFzc3dvcmQocHJvcHMuUGFzc3dvcmRBcm4pXG4gICAgICAgIGlmIChwYXNzd29yZCkge1xuICAgICAgICAgIHJldHVybiBmb3JtYXQoXG4gICAgICAgICAgICBcImFsdGVyIHJvbGUgJUkgcmVuYW1lIHRvICVJOyBhbHRlciByb2xlICVJIHdpdGggcGFzc3dvcmQgJUxcIixcbiAgICAgICAgICAgIG9sZFJlc291cmNlSWQsXG4gICAgICAgICAgICByZXNvdXJjZUlkLFxuICAgICAgICAgICAgcmVzb3VyY2VJZCxcbiAgICAgICAgICAgIHBhc3N3b3JkXG4gICAgICAgICAgKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRocm93IGBDYW5ub3QgcGFyc2UgcGFzc3dvcmQgZnJvbSAke3Byb3BzLlBhc3N3b3JkQXJufWBcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGZvcm1hdChcImFsdGVyIHJvbGUgJUkgcmVuYW1lIHRvICVJXCIsIG9sZFJlc291cmNlSWQsIHJlc291cmNlSWQpXG4gICAgICB9XG4gICAgfSxcbiAgICBEZWxldGU6IChyZXNvdXJjZUlkOiBzdHJpbmcpID0+IHtcbiAgICAgIHJldHVybiBmb3JtYXQoXCJkcm9wIHJvbGUgaWYgZXhpc3RzICVJXCIsIHJlc291cmNlSWQpXG4gICAgfSxcbiAgfSxcbiAgZGF0YWJhc2U6IHtcbiAgICBDcmVhdGU6IGFzeW5jIChyZXNvdXJjZUlkOiBzdHJpbmcsIHByb3BzOiBEYXRhYmFzZVByb3BzKSA9PiB7XG4gICAgICBjb25zdCBvd25lciA9IHByb3BzLk93bmVyXG4gICAgICBpZiAob3duZXIpIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICBmb3JtYXQoXCJjcmVhdGUgZGF0YWJhc2UgJUlcIiwgcmVzb3VyY2VJZCksXG4gICAgICAgICAgZm9ybWF0KFwiYWx0ZXIgZGF0YWJhc2UgJUkgb3duZXIgdG8gJUlcIiwgcmVzb3VyY2VJZCwgb3duZXIpLFxuICAgICAgICBdXG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gZm9ybWF0KFwiY3JlYXRlIGRhdGFiYXNlICVJXCIsIHJlc291cmNlSWQpXG4gICAgICB9XG4gICAgfSxcbiAgICBVcGRhdGU6IGFzeW5jIChcbiAgICAgIHJlc291cmNlSWQ6IHN0cmluZyxcbiAgICAgIG9sZFJlc291cmNlSWQ6IHN0cmluZyxcbiAgICAgIHByb3BzOiBEYXRhYmFzZVVwZGF0ZVByb3BzXG4gICAgKTogUHJvbWlzZTxzdHJpbmdbXT4gPT4ge1xuICAgICAgY29uc3Qgc3RhdGVtZW50czogc3RyaW5nW10gPSBbXVxuICAgICAgaWYgKHJlc291cmNlSWQgIT09IG9sZFJlc291cmNlSWQpIHtcbiAgICAgICAgaWYgKHByb3BzLk1hc3Rlck93bmVyKSB7XG4gICAgICAgICAgc3RhdGVtZW50cy5wdXNoKFxuICAgICAgICAgICAgZm9ybWF0KFwiYWx0ZXIgZGF0YWJhc2UgJUkgb3duZXIgdG8gJUlcIiwgb2xkUmVzb3VyY2VJZCwgcHJvcHMuTWFzdGVyT3duZXIpXG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICAgIHN0YXRlbWVudHMucHVzaChcbiAgICAgICAgICBmb3JtYXQoXCJhbHRlciBkYXRhYmFzZSAlSSByZW5hbWUgdG8gJUlcIiwgb2xkUmVzb3VyY2VJZCwgcmVzb3VyY2VJZClcbiAgICAgICAgKVxuICAgICAgfVxuICAgICAgY29uc3Qgb3duZXIgPSBwcm9wcy5Pd25lclxuICAgICAgaWYgKG93bmVyKSB7XG4gICAgICAgIHN0YXRlbWVudHMucHVzaChmb3JtYXQoXCJhbHRlciBkYXRhYmFzZSAlSSBvd25lciB0byAlSVwiLCByZXNvdXJjZUlkLCBwcm9wcy5Pd25lcikpXG4gICAgICB9XG4gICAgICByZXR1cm4gc3RhdGVtZW50c1xuICAgIH0sXG4gICAgRGVsZXRlOiAocmVzb3VyY2VJZDogc3RyaW5nKSA9PiB7XG4gICAgICByZXR1cm4gW1xuICAgICAgICBmb3JtYXQoXG4gICAgICAgICAgXCJzZWxlY3QgcGdfdGVybWluYXRlX2JhY2tlbmQocGdfc3RhdF9hY3Rpdml0eS5waWQpIGZyb20gcGdfc3RhdF9hY3Rpdml0eSB3aGVyZSBkYXRuYW1lID0gJUxcIixcbiAgICAgICAgICByZXNvdXJjZUlkXG4gICAgICAgICksXG4gICAgICAgIGZvcm1hdChcImRyb3AgZGF0YWJhc2UgaWYgZXhpc3RzICVJXCIsIHJlc291cmNlSWQpLFxuICAgICAgXVxuICAgIH0sXG4gIH0sXG59XG5cbmV4cG9ydCBjb25zdCBoYW5kbGVyID0gYXN5bmMgKFxuICBldmVudDpcbiAgICB8IENsb3VkRm9ybWF0aW9uQ3VzdG9tUmVzb3VyY2VDcmVhdGVFdmVudFxuICAgIHwgQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZVVwZGF0ZUV2ZW50XG4gICAgfCBDbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlRGVsZXRlRXZlbnRcbik6IFByb21pc2U8YW55PiA9PiB7XG4gIC8vY29uc29sZS5kZWJ1ZyhcIkVWRU5UXCIsIGV2ZW50KVxuXG4gIGNvbnN0IHJlcXVlc3RUeXBlID0gZXZlbnQuUmVxdWVzdFR5cGVcbiAgY29uc3QgcmVzb3VyY2U6IFJkc1NxbFJlc291cmNlID0gZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzLlJlc291cmNlXG4gIGNvbnN0IHJlc291cmNlSWQgPSBldmVudC5SZXNvdXJjZVByb3BlcnRpZXMuUmVzb3VyY2VJZFxuICBjb25zdCBkYXRhYmFzZSA9IGV2ZW50LlJlc291cmNlUHJvcGVydGllcy5EYXRhYmFzZVxuXG4gIGlmICghT2JqZWN0LmtleXMoanVtcFRhYmxlKS5pbmNsdWRlcyhldmVudC5SZXNvdXJjZVByb3BlcnRpZXMuUmVzb3VyY2UpKSB7XG4gICAgdGhyb3cgYFJlc291cmNlIHR5cGUgJyR7cmVzb3VyY2V9JyBub3QgcmVjb2duaXNlZC5gXG4gIH1cblxuICBjb25zdCBzZWNyZXRzX2NsaWVudCA9IG5ldyBTZWNyZXRzTWFuYWdlckNsaWVudCh7fSlcbiAgY29uc3QgY29tbWFuZCA9IG5ldyBHZXRTZWNyZXRWYWx1ZUNvbW1hbmQoe1xuICAgIFNlY3JldElkOiBldmVudC5SZXNvdXJjZVByb3BlcnRpZXMuU2VjcmV0QXJuLFxuICB9KVxuICBjb25zdCBzZWNyZXQgPSBhd2FpdCBzZWNyZXRzX2NsaWVudC5zZW5kKGNvbW1hbmQpXG4gIGlmICghc2VjcmV0LlNlY3JldFN0cmluZykgdGhyb3cgXCJObyBzZWNyZXQgc3RyaW5nXCJcblxuICBjb25zdCBzZWNyZXRWYWx1ZXMgPSBKU09OLnBhcnNlKHNlY3JldC5TZWNyZXRTdHJpbmcpXG5cbiAgbGV0IHNxbDogc3RyaW5nIHwgc3RyaW5nW10gfCB2b2lkXG4gIHN3aXRjaCAocmVxdWVzdFR5cGUpIHtcbiAgICBjYXNlIFwiQ3JlYXRlXCI6IHtcbiAgICAgIHNxbCA9IGF3YWl0IGp1bXBUYWJsZVtyZXNvdXJjZV1bcmVxdWVzdFR5cGVdKHJlc291cmNlSWQsIGV2ZW50LlJlc291cmNlUHJvcGVydGllcylcbiAgICAgIGJyZWFrXG4gICAgfVxuICAgIGNhc2UgXCJVcGRhdGVcIjoge1xuICAgICAgY29uc3Qgb2xkUmVzb3VyY2VJZCA9IChldmVudCBhcyBDbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlVXBkYXRlRXZlbnQpXG4gICAgICAgIC5QaHlzaWNhbFJlc291cmNlSWRcbiAgICAgIHNxbCA9IGF3YWl0IGp1bXBUYWJsZVtyZXNvdXJjZV1bcmVxdWVzdFR5cGVdKHJlc291cmNlSWQsIG9sZFJlc291cmNlSWQsIHtcbiAgICAgICAgLi4uZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzLFxuICAgICAgICBNYXN0ZXJPd25lcjogc2VjcmV0VmFsdWVzLnVzZXJuYW1lLFxuICAgICAgfSlcbiAgICAgIGJyZWFrXG4gICAgfVxuICAgIGNhc2UgXCJEZWxldGVcIjoge1xuICAgICAgY29uc3Qgb2xkUmVzb3VyY2VJZCA9IChldmVudCBhcyBDbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlRGVsZXRlRXZlbnQpXG4gICAgICAgIC5QaHlzaWNhbFJlc291cmNlSWRcbiAgICAgIHNxbCA9IGp1bXBUYWJsZVtyZXNvdXJjZV1bcmVxdWVzdFR5cGVdKHJlc291cmNlSWQsIG9sZFJlc291cmNlSWQpXG4gICAgICBicmVha1xuICAgIH1cbiAgfVxuXG4gIGlmIChzcWwpIHtcbiAgICAvL2NvbnNvbGUuZGVidWcoXCJEQVRBQkFTRVwiLCBkYXRhYmFzZSlcbiAgICBjb25zb2xlLmRlYnVnKFwiU1FMXCIsIHNxbClcbiAgICBjb25zdCBwYXJhbXMgPSB7XG4gICAgICBob3N0OiBzZWNyZXRWYWx1ZXMuaG9zdCxcbiAgICAgIHBvcnQ6IHNlY3JldFZhbHVlcy5wb3J0LFxuICAgICAgdXNlcjogc2VjcmV0VmFsdWVzLnVzZXJuYW1lLFxuICAgICAgcGFzc3dvcmQ6IHNlY3JldFZhbHVlcy5wYXNzd29yZCxcbiAgICAgIGRhdGFiYXNlOiBkYXRhYmFzZSxcbiAgICAgIGNvbm5lY3Rpb25UaW1lb3V0TWlsbGlzOiAyMDAwLCAvLyByZXR1cm4gYW4gZXJyb3IgaWYgYSBjb25uZWN0aW9uIGNvdWxkIG5vdCBiZSBlc3RhYmxpc2hlZCB3aXRoaW4gMiBzZWNvbmRzXG4gICAgfVxuICAgIC8vY29uc29sZS5kZWJ1ZyAoXCJQQVJBTVNcIiwgcGFyYW1zKVxuICAgIGNvbnN0IHBnX2NsaWVudCA9IG5ldyBDbGllbnQocGFyYW1zKVxuICAgIGF3YWl0IHBnX2NsaWVudC5jb25uZWN0KClcbiAgICB0cnkge1xuICAgICAgaWYgKHR5cGVvZiBzcWwgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgYXdhaXQgcGdfY2xpZW50LnF1ZXJ5KHNxbClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICAgIHNxbC5tYXAoYXN5bmMgKHN0YXRlbWVudCkgPT4ge1xuICAgICAgICAgICAgYXdhaXQgcGdfY2xpZW50LnF1ZXJ5KHN0YXRlbWVudClcbiAgICAgICAgICB9KVxuICAgICAgICApXG4gICAgICB9XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIGF3YWl0IHBnX2NsaWVudC5lbmQoKVxuICAgIH1cbiAgfVxuXG4gIGxldCByZXNwb25zZTogQ3VzdG9tUmVzb3VyY2VSZXNwb25zZSA9IHt9XG4gIGlmIChyZXNvdXJjZSAhPT0gUmRzU3FsUmVzb3VyY2UuU1FMKSB7XG4gICAgcmVzcG9uc2UuUGh5c2ljYWxSZXNvdXJjZUlkID0gcmVzb3VyY2VJZFxuICB9XG5cbiAgcmV0dXJuIHJlc3BvbnNlXG59XG5cbi8qKlxuICogUGFyc2UgcGFzc3dvcmQgZmllbGQgZnJvbSBzZWNyZXQuIFJldHVybnMgdm9pZCBvbiBlcnJvci5cbiAqL1xuY29uc3QgZ2V0UGFzc3dvcmQgPSBhc3luYyAoYXJuOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZyB8IHZvaWQ+ID0+IHtcbiAgY29uc3Qgc2VjcmV0c19jbGllbnQgPSBuZXcgU2VjcmV0c01hbmFnZXJDbGllbnQoe30pXG4gIGNvbnN0IGNvbW1hbmQgPSBuZXcgR2V0U2VjcmV0VmFsdWVDb21tYW5kKHtcbiAgICBTZWNyZXRJZDogYXJuLFxuICB9KVxuICBjb25zdCBzZWNyZXQgPSBhd2FpdCBzZWNyZXRzX2NsaWVudC5zZW5kKGNvbW1hbmQpXG4gIGlmIChzZWNyZXQuU2VjcmV0U3RyaW5nKSB7XG4gICAgY29uc3QganNvbiA9IEpTT04ucGFyc2Uoc2VjcmV0LlNlY3JldFN0cmluZylcbiAgICByZXR1cm4ganNvbi5wYXNzd29yZFxuICB9XG59XG4iXX0=
|
|
203
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDRFQUd3QztBQU14QyxtREFBdUM7QUFDdkMsMkJBQTJCO0FBQzNCLGlDQUF1QztBQStDdkMsTUFBTSxTQUFTLEdBQWM7SUFDM0IsR0FBRyxFQUFFO1FBQ0gsTUFBTSxFQUFFLENBQUMsQ0FBUyxFQUFFLEtBQVcsRUFBRSxFQUFFO1lBQ2pDLE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQTtRQUN4QixDQUFDO1FBQ0QsTUFBTSxFQUFFLENBQUMsQ0FBUyxFQUFFLEVBQVUsRUFBRSxLQUFXLEVBQUUsRUFBRTtZQUM3QyxPQUFPLEtBQUssQ0FBQyxTQUFTLENBQUE7UUFDeEIsQ0FBQztRQUNELE1BQU0sRUFBRSxDQUFDLENBQVMsRUFBRSxFQUFFLEdBQUUsQ0FBQztLQUMxQjtJQUNELE1BQU0sRUFBRTtRQUNOLE1BQU0sRUFBRSxLQUFLLEVBQUUsVUFBa0IsRUFBRSxFQUFFO1lBQ25DLE9BQU8sdUJBQU0sQ0FBQyxnQ0FBZ0MsRUFBRSxVQUFVLENBQUMsQ0FBQTtRQUM3RCxDQUFDO1FBQ0QsTUFBTSxFQUFFLEtBQUssRUFBRSxVQUFrQixFQUFFLGFBQXFCLEVBQUUsRUFBRTtZQUMxRCxPQUFPLHVCQUFNLENBQUMsOEJBQThCLEVBQUUsYUFBYSxFQUFFLFVBQVUsQ0FBQyxDQUFBO1FBQzFFLENBQUM7UUFDRCxNQUFNLEVBQUUsQ0FBQyxVQUFrQixFQUFFLEVBQUU7WUFDN0IsT0FBTyx1QkFBTSxDQUFDLGtDQUFrQyxFQUFFLFVBQVUsQ0FBQyxDQUFBO1FBQy9ELENBQUM7S0FDRjtJQUNELElBQUksRUFBRTtRQUNKLE1BQU0sRUFBRSxLQUFLLEVBQUUsVUFBa0IsRUFBRSxLQUFnQixFQUFFLEVBQUU7WUFDckQsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXO2dCQUFFLE1BQU0seUJBQXlCLENBQUE7WUFDdkQsTUFB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QUFjLEdBQUcsSUFBSSw2Q0FBb0IsQ0FBQyxFQUFFLENBQUMsQ0FBQTtJQUNuRCxNQUFNLE9BQU8sR0FBRyxJQUFJLDhDQUFxQixDQUFDO1FBQ3hDLFFBQVEsRUFBRSxHQUFHO0tBQ2QsQ0FBQyxDQUFBO0lBQ0YsTUFBTSxNQUFNLEdBQUcsTUFBTSxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBQ2pELElBQUksTUFBTSxDQUFDLFlBQVksRUFBRTtRQUN2QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUM1QyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUE7S0FDckI7QUFDSCxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBTZWNyZXRzTWFuYWdlckNsaWVudCxcbiAgR2V0U2VjcmV0VmFsdWVDb21tYW5kLFxufSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LXNlY3JldHMtbWFuYWdlclwiXG5pbXBvcnQge1xuICBDbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlQ3JlYXRlRXZlbnQsXG4gIENsb3VkRm9ybWF0aW9uQ3VzdG9tUmVzb3VyY2VVcGRhdGVFdmVudCxcbiAgQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZURlbGV0ZUV2ZW50LFxufSBmcm9tIFwiYXdzLWxhbWJkYVwiXG5pbXBvcnQgeyBmb3JtYXQgfSBmcm9tIFwibm9kZS1wZy1mb3JtYXRcIlxuaW1wb3J0IHsgQ2xpZW50IH0gZnJvbSBcInBnXCJcbmltcG9ydCB7IFJkc1NxbFJlc291cmNlIH0gZnJvbSBcIi4vZW51bVwiXG5cbmludGVyZmFjZSBDdXN0b21SZXNvdXJjZVJlc3BvbnNlIHtcbiAgUGh5c2ljYWxSZXNvdXJjZUlkPzogc3RyaW5nXG4gIERhdGE/OiBhbnlcbiAgTm9FY2hvPzogYm9vbGVhblxufVxuXG50eXBlIENyZWF0ZVJlc291cmNlSGFuZGxlciA9IChcbiAgcmVzb3VyY2VJZDogc3RyaW5nLFxuICBwcm9wcz86IGFueVxuKSA9PiBQcm9taXNlPHN0cmluZyB8IHN0cmluZ1tdPlxudHlwZSBVcGRhdGVSZXNvdXJjZUhhbmRsZXIgPSAoXG4gIHJlc291cmNlSWQ6IHN0cmluZyxcbiAgb2xkUmVzb3VyY2VJZDogc3RyaW5nLFxuICBwcm9wcz86IGFueVxuKSA9PiBQcm9taXNlPHN0cmluZyB8IHN0cmluZ1tdIHwgdm9pZD5cbnR5cGUgRGVsZXRlUmVzb3VyY2VIYW5kbGVyID0gKHJlc291cmNlSWQ6IHN0cmluZywgcHJvcHM/OiBhbnkpID0+IHN0cmluZyB8IHN0cmluZ1tdIHwgdm9pZFxuXG50eXBlIEp1bXBUYWJsZSA9IHtcbiAgW2tleSBpbiBSZHNTcWxSZXNvdXJjZV06IHtcbiAgICBDcmVhdGU6IENyZWF0ZVJlc291cmNlSGFuZGxlclxuICAgIFVwZGF0ZTogVXBkYXRlUmVzb3VyY2VIYW5kbGVyXG4gICAgRGVsZXRlOiBEZWxldGVSZXNvdXJjZUhhbmRsZXJcbiAgfVxufVxuXG5pbnRlcmZhY2UgUm9sZVByb3BzIHtcbiAgLyoqXG4gICAqIFNlY3JldCBBUk4uXG4gICAqL1xuICBQYXNzd29yZEFybjogc3RyaW5nXG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGRhdGFiYXNlIHRvIHdoaWNoIHJvbGUgaXMgZ3JhbnRlZCBjb25uZWN0IHBlcm1pc3Npb25zLlxuICAgKi9cbiAgRGF0YWJhc2VOYW1lPzogc3RyaW5nXG59XG5cbmludGVyZmFjZSBEYXRhYmFzZVByb3BzIHtcbiAgT3duZXI6IHN0cmluZ1xufVxuXG5pbnRlcmZhY2UgRGF0YWJhc2VVcGRhdGVQcm9wcyBleHRlbmRzIERhdGFiYXNlUHJvcHMge1xuICBNYXN0ZXJPd25lcjogc3RyaW5nXG59XG5cbmNvbnN0IGp1bXBUYWJsZTogSnVtcFRhYmxlID0ge1xuICBzcWw6IHtcbiAgICBDcmVhdGU6IChfOiBzdHJpbmcsIHByb3BzPzogYW55KSA9PiB7XG4gICAgICByZXR1cm4gcHJvcHMuU3RhdGVtZW50XG4gICAgfSxcbiAgICBVcGRhdGU6IChfOiBzdHJpbmcsIF9fOiBzdHJpbmcsIHByb3BzPzogYW55KSA9PiB7XG4gICAgICByZXR1cm4gcHJvcHMuU3RhdGVtZW50XG4gICAgfSxcbiAgICBEZWxldGU6IChfOiBzdHJpbmcpID0+IHt9LFxuICB9LFxuICBzY2hlbWE6IHtcbiAgICBDcmVhdGU6IGFzeW5jIChyZXNvdXJjZUlkOiBzdHJpbmcpID0+IHtcbiAgICAgIHJldHVybiBmb3JtYXQoXCJjcmVhdGUgc2NoZW1hIGlmIG5vdCBleGlzdHMgJUlcIiwgcmVzb3VyY2VJZClcbiAgICB9LFxuICAgIFVwZGF0ZTogYXN5bmMgKHJlc291cmNlSWQ6IHN0cmluZywgb2xkUmVzb3VyY2VJZDogc3RyaW5nKSA9PiB7XG4gICAgICByZXR1cm4gZm9ybWF0KFwiYWx0ZXIgc2NoZW1hICVJIHJlbmFtZSB0byAlSVwiLCBvbGRSZXNvdXJjZUlkLCByZXNvdXJjZUlkKVxuICAgIH0sXG4gICAgRGVsZXRlOiAocmVzb3VyY2VJZDogc3RyaW5nKSA9PiB7XG4gICAgICByZXR1cm4gZm9ybWF0KFwiZHJvcCBzY2hlbWEgaWYgZXhpc3RzICVJIGNhc2NhZGVcIiwgcmVzb3VyY2VJZClcbiAgICB9LFxuICB9LFxuICByb2xlOiB7XG4gICAgQ3JlYXRlOiBhc3luYyAocmVzb3VyY2VJZDogc3RyaW5nLCBwcm9wczogUm9sZVByb3BzKSA9PiB7XG4gICAgICBpZiAoIXByb3BzLlBhc3N3b3JkQXJuKSB0aHJvdyBcIk5vIFBhc3N3b3JkQXJuIHByb3ZpZGVkXCJcbiAgICAgIGNvbnN0IHBhc3N3b3JkID0gYXdhaXQgZ2V0UGFzc3dvcmQocHJvcHMuUGFzc3dvcmRBcm4pXG4gICAgICBpZiAocGFzc3dvcmQpIHtcbiAgICAgICAgY29uc3Qgc3FsID0gW1xuICAgICAgICAgIGZvcm1hdChcImNyZWF0ZSByb2xlICVJIHdpdGggbG9naW4gcGFzc3dvcmQgJUxcIiwgcmVzb3VyY2VJZCwgcGFzc3dvcmQpLFxuICAgICAgICBdXG4gICAgICAgIGlmIChwcm9wcy5EYXRhYmFzZU5hbWUpIHtcbiAgICAgICAgICBzcWwucHVzaChcbiAgICAgICAgICAgIGZvcm1hdChcImdyYW50IGNvbm5lY3Qgb24gZGF0YWJhc2UgJUkgdG8gJUlcIiwgcHJvcHMuRGF0YWJhc2VOYW1lLCByZXNvdXJjZUlkKVxuICAgICAgICAgIClcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc3FsXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aHJvdyBgQ2Fubm90IHBhcnNlIHBhc3N3b3JkIGZyb20gJHtwcm9wcy5QYXNzd29yZEFybn1gXG4gICAgICB9XG4gICAgfSxcbiAgICBVcGRhdGU6IGFzeW5jIChyZXNvdXJjZUlkOiBzdHJpbmcsIG9sZFJlc291cmNlSWQ6IHN0cmluZywgcHJvcHM6IFJvbGVQcm9wcykgPT4ge1xuICAgICAgLy8gVE9ETzogaWYgZGF0YWJhc2UgbmFtZSBoYXMgY2hhbmdlZCBpbiBPbGRSZXNvdXJjZVByb3BlcnRpZXMsIHJldm9rZSBjb25uZWN0XG4gICAgICBpZiAocHJvcHMgJiYgcHJvcHMuUGFzc3dvcmRBcm4pIHtcbiAgICAgICAgY29uc3QgcGFzc3dvcmQgPSBhd2FpdCBnZXRQYXNzd29yZChwcm9wcy5QYXNzd29yZEFybilcbiAgICAgICAgaWYgKHBhc3N3b3JkKSB7XG4gICAgICAgICAgY29uc3Qgc3FsID0gW1xuICAgICAgICAgICAgZm9ybWF0KFxuICAgICAgICAgICAgICBcImFsdGVyIHJvbGUgJUkgcmVuYW1lIHRvICVJOyBhbHRlciByb2xlICVJIHdpdGggcGFzc3dvcmQgJUxcIixcbiAgICAgICAgICAgICAgb2xkUmVzb3VyY2VJZCxcbiAgICAgICAgICAgICAgcmVzb3VyY2VJZCxcbiAgICAgICAgICAgICAgcmVzb3VyY2VJZCxcbiAgICAgICAgICAgICAgcGFzc3dvcmRcbiAgICAgICAgICAgICksXG4gICAgICAgICAgXVxuICAgICAgICAgIGlmIChwcm9wcy5EYXRhYmFzZU5hbWUpIHtcbiAgICAgICAgICAgIHNxbC5wdXNoKFxuICAgICAgICAgICAgICBmb3JtYXQoXCJncmFudCBjb25uZWN0IG9uIGRhdGFiYXNlICVJIHRvICVJXCIsIHByb3BzLkRhdGFiYXNlTmFtZSwgcmVzb3VyY2VJZClcbiAgICAgICAgICAgIClcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHNxbFxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRocm93IGBDYW5ub3QgcGFyc2UgcGFzc3dvcmQgZnJvbSAke3Byb3BzLlBhc3N3b3JkQXJufWBcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICBmb3JtYXQoXCJhbHRlciByb2xlICVJIHJlbmFtZSB0byAlSVwiLCBvbGRSZXNvdXJjZUlkLCByZXNvdXJjZUlkKSxcbiAgICAgICAgICBmb3JtYXQoXCJncmFudCBjb25uZWN0IG9uIGRhdGFiYXNlICVJIHRvICVJXCIsIHByb3BzLkRhdGFiYXNlTmFtZSwgcmVzb3VyY2VJZCksXG4gICAgICAgIF1cbiAgICAgIH1cbiAgICB9LFxuICAgIERlbGV0ZTogKHJlc291cmNlSWQ6IHN0cmluZykgPT4ge1xuICAgICAgLy8gVE9ETzogaWYgdXNlciBpcyBvd25lciBvZiBhIGRhdGFiYXNlLCBhc3NpZ24gb3duZXJzaGlwIHRvIG1hc3RlciB1c2VyP1xuICAgICAgcmV0dXJuIFtcbiAgICAgICAgZm9ybWF0KFxuICAgICAgICAgIFwiRE8gJCRCRUdJTlxcbklGIEVYSVNUUyAoU0VMRUNUIEZST00gcGdfY2F0YWxvZy5wZ19yb2xlcyBXSEVSRSByb2xuYW1lID0gJyVzJykgVEhFTiByZXZva2UgYWxsIHByaXZpbGVnZXMgb24gZGF0YWJhc2UgcG9zdGdyZXMgZnJvbSAlSTsgRU5EIElGO1xcbkVORCQkO1wiLFxuICAgICAgICAgIHJlc291cmNlSWQsXG4gICAgICAgICAgcmVzb3VyY2VJZFxuICAgICAgICApLFxuICAgICAgICBmb3JtYXQoXCJkcm9wIHJvbGUgaWYgZXhpc3RzICVJXCIsIHJlc291cmNlSWQpLFxuICAgICAgXVxuICAgIH0sXG4gIH0sXG4gIGRhdGFiYXNlOiB7XG4gICAgQ3JlYXRlOiBhc3luYyAocmVzb3VyY2VJZDogc3RyaW5nLCBwcm9wczogRGF0YWJhc2VQcm9wcykgPT4ge1xuICAgICAgY29uc3Qgb3duZXIgPSBwcm9wcy5Pd25lclxuICAgICAgaWYgKG93bmVyKSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgZm9ybWF0KFwiY3JlYXRlIGRhdGFiYXNlICVJXCIsIHJlc291cmNlSWQpLFxuICAgICAgICAgIGZvcm1hdChcImFsdGVyIGRhdGFiYXNlICVJIG93bmVyIHRvICVJXCIsIHJlc291cmNlSWQsIG93bmVyKSxcbiAgICAgICAgXVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGZvcm1hdChcImNyZWF0ZSBkYXRhYmFzZSAlSVwiLCByZXNvdXJjZUlkKVxuICAgICAgfVxuICAgIH0sXG4gICAgVXBkYXRlOiBhc3luYyAoXG4gICAgICByZXNvdXJjZUlkOiBzdHJpbmcsXG4gICAgICBvbGRSZXNvdXJjZUlkOiBzdHJpbmcsXG4gICAgICBwcm9wczogRGF0YWJhc2VVcGRhdGVQcm9wc1xuICAgICk6IFByb21pc2U8c3RyaW5nW10+ID0+IHtcbiAgICAgIGNvbnN0IHN0YXRlbWVudHM6IHN0cmluZ1tdID0gW11cbiAgICAgIGlmIChyZXNvdXJjZUlkICE9PSBvbGRSZXNvdXJjZUlkKSB7XG4gICAgICAgIGlmIChwcm9wcy5NYXN0ZXJPd25lcikge1xuICAgICAgICAgIHN0YXRlbWVudHMucHVzaChcbiAgICAgICAgICAgIGZvcm1hdChcImFsdGVyIGRhdGFiYXNlICVJIG93bmVyIHRvICVJXCIsIG9sZFJlc291cmNlSWQsIHByb3BzLk1hc3Rlck93bmVyKVxuICAgICAgICAgIClcbiAgICAgICAgfVxuICAgICAgICBzdGF0ZW1lbnRzLnB1c2goXG4gICAgICAgICAgZm9ybWF0KFwiYWx0ZXIgZGF0YWJhc2UgJUkgcmVuYW1lIHRvICVJXCIsIG9sZFJlc291cmNlSWQsIHJlc291cmNlSWQpXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGNvbnN0IG93bmVyID0gcHJvcHMuT3duZXJcbiAgICAgIGlmIChvd25lcikge1xuICAgICAgICBzdGF0ZW1lbnRzLnB1c2goZm9ybWF0KFwiYWx0ZXIgZGF0YWJhc2UgJUkgb3duZXIgdG8gJUlcIiwgcmVzb3VyY2VJZCwgcHJvcHMuT3duZXIpKVxuICAgICAgfVxuICAgICAgcmV0dXJuIHN0YXRlbWVudHNcbiAgICB9LFxuICAgIERlbGV0ZTogKHJlc291cmNlSWQ6IHN0cmluZykgPT4ge1xuICAgICAgcmV0dXJuIFtcbiAgICAgICAgZm9ybWF0KFxuICAgICAgICAgIFwic2VsZWN0IHBnX3Rlcm1pbmF0ZV9iYWNrZW5kKHBnX3N0YXRfYWN0aXZpdHkucGlkKSBmcm9tIHBnX3N0YXRfYWN0aXZpdHkgd2hlcmUgZGF0bmFtZSA9ICVMXCIsXG4gICAgICAgICAgcmVzb3VyY2VJZFxuICAgICAgICApLFxuICAgICAgICBmb3JtYXQoXCJkcm9wIGRhdGFiYXNlIGlmIGV4aXN0cyAlSVwiLCByZXNvdXJjZUlkKSxcbiAgICAgIF1cbiAgICB9LFxuICB9LFxufVxuXG5leHBvcnQgY29uc3QgaGFuZGxlciA9IGFzeW5jIChcbiAgZXZlbnQ6XG4gICAgfCBDbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlQ3JlYXRlRXZlbnRcbiAgICB8IENsb3VkRm9ybWF0aW9uQ3VzdG9tUmVzb3VyY2VVcGRhdGVFdmVudFxuICAgIHwgQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZURlbGV0ZUV2ZW50XG4pOiBQcm9taXNlPGFueT4gPT4ge1xuICAvL2NvbnNvbGUuZGVidWcoXCJFVkVOVFwiLCBldmVudClcblxuICBjb25zdCByZXF1ZXN0VHlwZSA9IGV2ZW50LlJlcXVlc3RUeXBlXG4gIGNvbnN0IHJlc291cmNlOiBSZHNTcWxSZXNvdXJjZSA9IGV2ZW50LlJlc291cmNlUHJvcGVydGllcy5SZXNvdXJjZVxuICBjb25zdCByZXNvdXJjZUlkID0gZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzLlJlc291cmNlSWRcbiAgY29uc3QgZGF0YWJhc2UgPSBldmVudC5SZXNvdXJjZVByb3BlcnRpZXMuRGF0YWJhc2VcblxuICBpZiAoIU9iamVjdC5rZXlzKGp1bXBUYWJsZSkuaW5jbHVkZXMoZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzLlJlc291cmNlKSkge1xuICAgIHRocm93IGBSZXNvdXJjZSB0eXBlICcke3Jlc291cmNlfScgbm90IHJlY29nbmlzZWQuYFxuICB9XG5cbiAgY29uc3Qgc2VjcmV0c19jbGllbnQgPSBuZXcgU2VjcmV0c01hbmFnZXJDbGllbnQoe30pXG4gIGNvbnN0IGNvbW1hbmQgPSBuZXcgR2V0U2VjcmV0VmFsdWVDb21tYW5kKHtcbiAgICBTZWNyZXRJZDogZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzLlNlY3JldEFybixcbiAgfSlcbiAgY29uc3Qgc2VjcmV0ID0gYXdhaXQgc2VjcmV0c19jbGllbnQuc2VuZChjb21tYW5kKVxuICBpZiAoIXNlY3JldC5TZWNyZXRTdHJpbmcpIHRocm93IFwiTm8gc2VjcmV0IHN0cmluZ1wiXG5cbiAgY29uc3Qgc2VjcmV0VmFsdWVzID0gSlNPTi5wYXJzZShzZWNyZXQuU2VjcmV0U3RyaW5nKVxuXG4gIGxldCBzcWw6IHN0cmluZyB8IHN0cmluZ1tdIHwgdm9pZFxuICBzd2l0Y2ggKHJlcXVlc3RUeXBlKSB7XG4gICAgY2FzZSBcIkNyZWF0ZVwiOiB7XG4gICAgICBzcWwgPSBhd2FpdCBqdW1wVGFibGVbcmVzb3VyY2VdW3JlcXVlc3RUeXBlXShyZXNvdXJjZUlkLCBldmVudC5SZXNvdXJjZVByb3BlcnRpZXMpXG4gICAgICBicmVha1xuICAgIH1cbiAgICBjYXNlIFwiVXBkYXRlXCI6IHtcbiAgICAgIGNvbnN0IG9sZFJlc291cmNlSWQgPSAoZXZlbnQgYXMgQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZVVwZGF0ZUV2ZW50KVxuICAgICAgICAuUGh5c2ljYWxSZXNvdXJjZUlkXG4gICAgICBzcWwgPSBhd2FpdCBqdW1wVGFibGVbcmVzb3VyY2VdW3JlcXVlc3RUeXBlXShyZXNvdXJjZUlkLCBvbGRSZXNvdXJjZUlkLCB7XG4gICAgICAgIC4uLmV2ZW50LlJlc291cmNlUHJvcGVydGllcyxcbiAgICAgICAgTWFzdGVyT3duZXI6IHNlY3JldFZhbHVlcy51c2VybmFtZSxcbiAgICAgIH0pXG4gICAgICBicmVha1xuICAgIH1cbiAgICBjYXNlIFwiRGVsZXRlXCI6IHtcbiAgICAgIGNvbnN0IG9sZFJlc291cmNlSWQgPSAoZXZlbnQgYXMgQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZURlbGV0ZUV2ZW50KVxuICAgICAgICAuUGh5c2ljYWxSZXNvdXJjZUlkXG4gICAgICBzcWwgPSBqdW1wVGFibGVbcmVzb3VyY2VdW3JlcXVlc3RUeXBlXShyZXNvdXJjZUlkLCBvbGRSZXNvdXJjZUlkKVxuICAgICAgYnJlYWtcbiAgICB9XG4gIH1cblxuICBpZiAoc3FsKSB7XG4gICAgLy9jb25zb2xlLmRlYnVnKFwiREFUQUJBU0VcIiwgZGF0YWJhc2UpXG4gICAgY29uc29sZS5kZWJ1ZyhcIlNRTFwiLCBzcWwpXG4gICAgY29uc3QgcGFyYW1zID0ge1xuICAgICAgaG9zdDogc2VjcmV0VmFsdWVzLmhvc3QsXG4gICAgICBwb3J0OiBzZWNyZXRWYWx1ZXMucG9ydCxcbiAgICAgIHVzZXI6IHNlY3JldFZhbHVlcy51c2VybmFtZSxcbiAgICAgIHBhc3N3b3JkOiBzZWNyZXRWYWx1ZXMucGFzc3dvcmQsXG4gICAgICBkYXRhYmFzZTogZGF0YWJhc2UsXG4gICAgICBjb25uZWN0aW9uVGltZW91dE1pbGxpczogMjAwMCwgLy8gcmV0dXJuIGFuIGVycm9yIGlmIGEgY29ubmVjdGlvbiBjb3VsZCBub3QgYmUgZXN0YWJsaXNoZWQgd2l0aGluIDIgc2Vjb25kc1xuICAgIH1cbiAgICAvL2NvbnNvbGUuZGVidWcgKFwiUEFSQU1TXCIsIHBhcmFtcylcbiAgICBjb25zdCBwZ19jbGllbnQgPSBuZXcgQ2xpZW50KHBhcmFtcylcbiAgICBhd2FpdCBwZ19jbGllbnQuY29ubmVjdCgpXG4gICAgdHJ5IHtcbiAgICAgIGlmICh0eXBlb2Ygc3FsID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgIGF3YWl0IHBnX2NsaWVudC5xdWVyeShzcWwpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgICAgICBzcWwubWFwKGFzeW5jIChzdGF0ZW1lbnQpID0+IHtcbiAgICAgICAgICAgIGF3YWl0IHBnX2NsaWVudC5xdWVyeShzdGF0ZW1lbnQpXG4gICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICAgfVxuICAgIH0gZmluYWxseSB7XG4gICAgICBhd2FpdCBwZ19jbGllbnQuZW5kKClcbiAgICB9XG4gIH1cblxuICBsZXQgcmVzcG9uc2U6IEN1c3RvbVJlc291cmNlUmVzcG9uc2UgPSB7fVxuICAvLyBFeGNlcHQgZm9yIHRoZSBTUUwgcmVzb3VyY2UsIHJldHVybiB0aGUgbmV3IHJlc291cmNlIGlkLiBUaGlzXG4gIC8vIHdpbGwgY2F1c2UgYSBkZWxldGUgdG8gYmUgc2VuZCBmb3IgdGhlIG9sZCByZXNvdXJjZS5cbiAgaWYgKHJlc291cmNlICE9PSBSZHNTcWxSZXNvdXJjZS5TUUwpIHtcbiAgICByZXNwb25zZS5QaHlzaWNhbFJlc291cmNlSWQgPSByZXNvdXJjZUlkXG4gIH1cblxuICByZXR1cm4gcmVzcG9uc2Vcbn1cblxuLyoqXG4gKiBQYXJzZSBwYXNzd29yZCBmaWVsZCBmcm9tIHNlY3JldC4gUmV0dXJucyB2b2lkIG9uIGVycm9yLlxuICovXG5jb25zdCBnZXRQYXNzd29yZCA9IGFzeW5jIChhcm46IHN0cmluZyk6IFByb21pc2U8c3RyaW5nIHwgdm9pZD4gPT4ge1xuICBjb25zdCBzZWNyZXRzX2NsaWVudCA9IG5ldyBTZWNyZXRzTWFuYWdlckNsaWVudCh7fSlcbiAgY29uc3QgY29tbWFuZCA9IG5ldyBHZXRTZWNyZXRWYWx1ZUNvbW1hbmQoe1xuICAgIFNlY3JldElkOiBhcm4sXG4gIH0pXG4gIGNvbnN0IHNlY3JldCA9IGF3YWl0IHNlY3JldHNfY2xpZW50LnNlbmQoY29tbWFuZClcbiAgaWYgKHNlY3JldC5TZWNyZXRTdHJpbmcpIHtcbiAgICBjb25zdCBqc29uID0gSlNPTi5wYXJzZShzZWNyZXQuU2VjcmV0U3RyaW5nKVxuICAgIHJldHVybiBqc29uLnBhc3N3b3JkXG4gIH1cbn1cbiJdfQ==
|
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.
|
|
46
|
+
Provider[_a] = { fqn: "cdk-rds-sql.Provider", version: "1.1.1" };
|
|
47
47
|
function slugify(x) {
|
|
48
48
|
return x.replace(/[^a-zA-Z0-9]/g, "");
|
|
49
49
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { CustomResource } from "aws-cdk-lib";
|
|
2
2
|
import { Construct } from "constructs";
|
|
3
|
+
import { IDatabase } from "./database";
|
|
3
4
|
import { Provider } from "./provider";
|
|
4
5
|
export interface RoleProps {
|
|
5
6
|
/**
|
|
@@ -16,6 +17,12 @@ export interface RoleProps {
|
|
|
16
17
|
* Optionally encrypt it with the given key.
|
|
17
18
|
*/
|
|
18
19
|
readonly passwordArn: string;
|
|
20
|
+
/**
|
|
21
|
+
* Database to which this user gets access.
|
|
22
|
+
*
|
|
23
|
+
* @default no database connect is granted
|
|
24
|
+
*/
|
|
25
|
+
readonly database?: IDatabase;
|
|
19
26
|
}
|
|
20
27
|
export declare class Role extends CustomResource {
|
|
21
28
|
constructor(scope: Construct, id: string, props: RoleProps);
|
|
@@ -12,10 +12,13 @@ class Role extends aws_cdk_lib_1.CustomResource {
|
|
|
12
12
|
ResourceId: props.roleName,
|
|
13
13
|
SecretArn: props.provider.secret.secretArn,
|
|
14
14
|
PasswordArn: props.passwordArn,
|
|
15
|
+
DatabaseName: props.database ? props.database.databaseName : undefined,
|
|
15
16
|
},
|
|
16
17
|
});
|
|
17
18
|
this.node.addDependency(props.provider);
|
|
19
|
+
if (props.database)
|
|
20
|
+
this.node.addDependency(props.database);
|
|
18
21
|
}
|
|
19
22
|
}
|
|
20
23
|
exports.Role = Role;
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS5jdXN0b20tcmVzb3VyY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcm9sZS5jdXN0b20tcmVzb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBQTRDO0FBRzVDLGlDQUF1QztBQTZCdkMsTUFBYSxJQUFLLFNBQVEsNEJBQWM7SUFDdEMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFnQjtRQUN4RCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLFlBQVksRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVk7WUFDekMsVUFBVSxFQUFFO2dCQUNWLFFBQVEsRUFBRSxxQkFBYyxDQUFDLElBQUk7Z0JBQzdCLFVBQVUsRUFBRSxLQUFLLENBQUMsUUFBUTtnQkFDMUIsU0FBUyxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFNBQVM7Z0JBQzFDLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztnQkFDOUIsWUFBWSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxTQUFTO2FBQ3ZFO1NBQ0YsQ0FBQyxDQUFBO1FBQ0YsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBQ3ZDLElBQUksS0FBSyxDQUFDLFFBQVE7WUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDN0QsQ0FBQztDQUNGO0FBZkQsb0JBZUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDdXN0b21SZXNvdXJjZSB9IGZyb20gXCJhd3MtY2RrLWxpYlwiXG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiXG5pbXBvcnQgeyBJRGF0YWJhc2UgfSBmcm9tIFwiLi9kYXRhYmFzZVwiXG5pbXBvcnQgeyBSZHNTcWxSZXNvdXJjZSB9IGZyb20gXCIuL2VudW1cIlxuaW1wb3J0IHsgUHJvdmlkZXIgfSBmcm9tIFwiLi9wcm92aWRlclwiXG5cbmV4cG9ydCBpbnRlcmZhY2UgUm9sZVByb3BzIHtcbiAgLyoqXG4gICAqIFByb3ZpZGVyLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvdmlkZXI6IFByb3ZpZGVyXG5cbiAgLyoqXG4gICAqIFNRTC5cbiAgICovXG4gIHJlYWRvbmx5IHJvbGVOYW1lOiBzdHJpbmdcblxuICAvKipcbiAgICogQSBuZXcgc2VjcmV0IGlzIGNyZWF0ZWQgZm9yIHRoaXMgdXNlci5cbiAgICpcbiAgICogT3B0aW9uYWxseSBlbmNyeXB0IGl0IHdpdGggdGhlIGdpdmVuIGtleS5cbiAgICovXG4gIHJlYWRvbmx5IHBhc3N3b3JkQXJuOiBzdHJpbmdcblxuICAvKipcbiAgICogRGF0YWJhc2UgdG8gd2hpY2ggdGhpcyB1c2VyIGdldHMgYWNjZXNzLlxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBkYXRhYmFzZSBjb25uZWN0IGlzIGdyYW50ZWRcbiAgICovXG4gIHJlYWRvbmx5IGRhdGFiYXNlPzogSURhdGFiYXNlXG59XG5cbmV4cG9ydCBjbGFzcyBSb2xlIGV4dGVuZHMgQ3VzdG9tUmVzb3VyY2Uge1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogUm9sZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICBzZXJ2aWNlVG9rZW46IHByb3BzLnByb3ZpZGVyLnNlcnZpY2VUb2tlbixcbiAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgUmVzb3VyY2U6IFJkc1NxbFJlc291cmNlLlJPTEUsXG4gICAgICAgIFJlc291cmNlSWQ6IHByb3BzLnJvbGVOYW1lLFxuICAgICAgICBTZWNyZXRBcm46IHByb3BzLnByb3ZpZGVyLnNlY3JldC5zZWNyZXRBcm4sXG4gICAgICAgIFBhc3N3b3JkQXJuOiBwcm9wcy5wYXNzd29yZEFybixcbiAgICAgICAgRGF0YWJhc2VOYW1lOiBwcm9wcy5kYXRhYmFzZSA/IHByb3BzLmRhdGFiYXNlLmRhdGFiYXNlTmFtZSA6IHVuZGVmaW5lZCxcbiAgICAgIH0sXG4gICAgfSlcbiAgICB0aGlzLm5vZGUuYWRkRGVwZW5kZW5jeShwcm9wcy5wcm92aWRlcilcbiAgICBpZiAocHJvcHMuZGF0YWJhc2UpIHRoaXMubm9kZS5hZGREZXBlbmRlbmN5KHByb3BzLmRhdGFiYXNlKVxuICB9XG59XG4iXX0=
|
package/lib/role.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import * as kms from "aws-cdk-lib/aws-kms";
|
|
|
2
2
|
import { ServerlessCluster } from "aws-cdk-lib/aws-rds";
|
|
3
3
|
import { ISecret } from "aws-cdk-lib/aws-secretsmanager";
|
|
4
4
|
import { Construct } from "constructs";
|
|
5
|
+
import { IDatabase } from "./database";
|
|
5
6
|
import { Provider } from "./provider";
|
|
6
7
|
export interface RoleProps {
|
|
7
8
|
/**
|
|
@@ -13,9 +14,11 @@ export interface RoleProps {
|
|
|
13
14
|
*/
|
|
14
15
|
readonly roleName: string;
|
|
15
16
|
/**
|
|
16
|
-
*
|
|
17
|
+
* Ootional database name this user is expected to use.
|
|
18
|
+
*
|
|
19
|
+
* @default no connection to any database is granted
|
|
17
20
|
*/
|
|
18
|
-
readonly
|
|
21
|
+
readonly database?: IDatabase;
|
|
19
22
|
/**
|
|
20
23
|
* Database cluster to access.
|
|
21
24
|
*/
|
package/lib/role.js
CHANGED
|
@@ -21,7 +21,7 @@ class Role extends constructs_1.Construct {
|
|
|
21
21
|
host: props.cluster.clusterEndpoint.hostname,
|
|
22
22
|
port: props.cluster.clusterEndpoint.port,
|
|
23
23
|
username: props.roleName,
|
|
24
|
-
dbname: props.databaseName,
|
|
24
|
+
dbname: props.database ? props.database.databaseName : undefined,
|
|
25
25
|
}),
|
|
26
26
|
generateStringKey: "password",
|
|
27
27
|
excludeCharacters: " %+~`#$&*()|[]{}:;<>?!'/@\"\\",
|
|
@@ -32,6 +32,7 @@ class Role extends constructs_1.Construct {
|
|
|
32
32
|
provider: props.provider,
|
|
33
33
|
roleName: props.roleName,
|
|
34
34
|
passwordArn: this.secret.secretArn,
|
|
35
|
+
database: props.database,
|
|
35
36
|
});
|
|
36
37
|
role.node.addDependency(this.secret);
|
|
37
38
|
this.roleName = props.roleName;
|
|
@@ -40,5 +41,5 @@ class Role extends constructs_1.Construct {
|
|
|
40
41
|
}
|
|
41
42
|
exports.Role = Role;
|
|
42
43
|
_a = JSII_RTTI_SYMBOL_1;
|
|
43
|
-
Role[_a] = { fqn: "cdk-rds-sql.Role", version: "1.
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
Role[_a] = { fqn: "cdk-rds-sql.Role", version: "1.1.1" };
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9yb2xlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQTJDO0FBRzNDLHVFQUFnRTtBQUNoRSwyQ0FBc0M7QUFHdEMsaUVBQW1FO0FBaUNuRSxNQUFhLElBQUssU0FBUSxzQkFBUztJQVdqQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQWdCO1FBQ3hELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUE7UUFDaEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLDJCQUFNLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRTtZQUN2QyxhQUFhLEVBQUUsS0FBSyxDQUFDLGFBQWE7WUFDbEMsV0FBVyxFQUFFLHNDQUFzQyxLQUFLLENBQUMsUUFBUSxFQUFFO1lBQ25FLG9CQUFvQixFQUFFO2dCQUNwQixjQUFjLEVBQUUsRUFBRTtnQkFDbEIsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQztvQkFDbkMsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUI7b0JBQ3BELE1BQU0sRUFBRSxVQUFVO29CQUNsQixJQUFJLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsUUFBUTtvQkFDNUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLElBQUk7b0JBQ3hDLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtvQkFDeEIsTUFBTSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxTQUFTO2lCQUNqRSxDQUFDO2dCQUNGLGlCQUFpQixFQUFFLFVBQVU7Z0JBQzdCLGlCQUFpQixFQUFFLCtCQUErQjthQUNuRDtZQUNELGFBQWEsRUFBRSwyQkFBYSxDQUFDLE9BQU87U0FDckMsQ0FBQyxDQUFBO1FBQ0YsTUFBTSxJQUFJLEdBQUcsSUFBSSwyQkFBa0IsQ0FBQyxJQUFJLEVBQUUsY0FBYyxFQUFFO1lBQ3hELFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtZQUN4QixRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVE7WUFDeEIsV0FBVyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUztZQUNsQyxRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVE7U0FDekIsQ0FBQyxDQUFBO1FBQ0YsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQ3BDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQTtRQUM5QixJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBQy9DLENBQUM7O0FBeENILG9CQXlDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlbW92YWxQb2xpY3kgfSBmcm9tIFwiYXdzLWNkay1saWJcIlxuaW1wb3J0ICogYXMga21zIGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mta21zXCJcbmltcG9ydCB7IFNlcnZlcmxlc3NDbHVzdGVyIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1yZHNcIlxuaW1wb3J0IHsgSVNlY3JldCwgU2VjcmV0IH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1zZWNyZXRzbWFuYWdlclwiXG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiXG5pbXBvcnQgeyBJRGF0YWJhc2UgfSBmcm9tIFwiLi9kYXRhYmFzZVwiXG5pbXBvcnQgeyBQcm92aWRlciB9IGZyb20gXCIuL3Byb3ZpZGVyXCJcbmltcG9ydCB7IFJvbGUgYXMgQ3VzdG9tUmVzb3VyY2VSb2xlIH0gZnJvbSBcIi4vcm9sZS5jdXN0b20tcmVzb3VyY2VcIlxuXG5leHBvcnQgaW50ZXJmYWNlIFJvbGVQcm9wcyB7XG4gIC8qKlxuICAgKiBQcm92aWRlci5cbiAgICovXG4gIHJlYWRvbmx5IHByb3ZpZGVyOiBQcm92aWRlclxuXG4gIC8qKlxuICAgKiBTUUwuXG4gICAqL1xuICByZWFkb25seSByb2xlTmFtZTogc3RyaW5nXG5cbiAgLyoqXG4gICAqIE9vdGlvbmFsIGRhdGFiYXNlIG5hbWUgdGhpcyB1c2VyIGlzIGV4cGVjdGVkIHRvIHVzZS5cbiAgICpcbiAgICogQGRlZmF1bHQgbm8gY29ubmVjdGlvbiB0byBhbnkgZGF0YWJhc2UgaXMgZ3JhbnRlZFxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YWJhc2U/OiBJRGF0YWJhc2VcblxuICAvKipcbiAgICogRGF0YWJhc2UgY2x1c3RlciB0byBhY2Nlc3MuXG4gICAqL1xuICByZWFkb25seSBjbHVzdGVyOiBTZXJ2ZXJsZXNzQ2x1c3RlclxuXG4gIC8qKlxuICAgKiBBIG5ldyBzZWNyZXQgaXMgY3JlYXRlZCBmb3IgdGhpcyB1c2VyLlxuICAgKlxuICAgKiBPcHRpb25hbGx5IGVuY3J5cHQgaXQgd2l0aCB0aGUgZ2l2ZW4ga2V5LlxuICAgKi9cbiAgcmVhZG9ubHkgZW5jcnlwdGlvbktleT86IGttcy5JS2V5XG59XG5cbmV4cG9ydCBjbGFzcyBSb2xlIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgLyoqXG4gICAqIFRoZSByb2xlIG5hbWUuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcm9sZU5hbWU6IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBUaGUgZ2VuZXJhdGVkIHNlY3JldC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzZWNyZXQ6IElTZWNyZXRcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogUm9sZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKVxuICAgIHRoaXMuc2VjcmV0ID0gbmV3IFNlY3JldCh0aGlzLCBcIlNlY3JldFwiLCB7XG4gICAgICBlbmNyeXB0aW9uS2V5OiBwcm9wcy5lbmNyeXB0aW9uS2V5LFxuICAgICAgZGVzY3JpcHRpb246IGBHZW5lcmF0ZWQgc2VjcmV0IGZvciBwb3N0Z3JlcyByb2xlICR7cHJvcHMucm9sZU5hbWV9YCxcbiAgICAgIGdlbmVyYXRlU2VjcmV0U3RyaW5nOiB7XG4gICAgICAgIHBhc3N3b3JkTGVuZ3RoOiAzMCwgLy8gT3JhY2xlIHBhc3N3b3JkIGNhbm5vdCBoYXZlIG1vcmUgdGhhbiAzMCBjaGFyYWN0ZXJzXG4gICAgICAgIHNlY3JldFN0cmluZ1RlbXBsYXRlOiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgZGJDbHVzdGVySWRlbnRpZmllcjogcHJvcHMuY2x1c3Rlci5jbHVzdGVySWRlbnRpZmllcixcbiAgICAgICAgICBlbmdpbmU6IFwicG9zdGdyZXNcIixcbiAgICAgICAgICBob3N0OiBwcm9wcy5jbHVzdGVyLmNsdXN0ZXJFbmRwb2ludC5ob3N0bmFtZSxcbiAgICAgICAgICBwb3J0OiBwcm9wcy5jbHVzdGVyLmNsdXN0ZXJFbmRwb2ludC5wb3J0LFxuICAgICAgICAgIHVzZXJuYW1lOiBwcm9wcy5yb2xlTmFtZSxcbiAgICAgICAgICBkYm5hbWU6IHByb3BzLmRhdGFiYXNlID8gcHJvcHMuZGF0YWJhc2UuZGF0YWJhc2VOYW1lIDogdW5kZWZpbmVkLFxuICAgICAgICB9KSxcbiAgICAgICAgZ2VuZXJhdGVTdHJpbmdLZXk6IFwicGFzc3dvcmRcIixcbiAgICAgICAgZXhjbHVkZUNoYXJhY3RlcnM6IFwiICUrfmAjJCYqKCl8W117fTo7PD4/IScvQFxcXCJcXFxcXCIsXG4gICAgICB9LFxuICAgICAgcmVtb3ZhbFBvbGljeTogUmVtb3ZhbFBvbGljeS5ERVNUUk9ZLFxuICAgIH0pXG4gICAgY29uc3Qgcm9sZSA9IG5ldyBDdXN0b21SZXNvdXJjZVJvbGUodGhpcywgXCJQb3N0Z3Jlc1JvbGVcIiwge1xuICAgICAgcHJvdmlkZXI6IHByb3BzLnByb3ZpZGVyLFxuICAgICAgcm9sZU5hbWU6IHByb3BzLnJvbGVOYW1lLFxuICAgICAgcGFzc3dvcmRBcm46IHRoaXMuc2VjcmV0LnNlY3JldEFybixcbiAgICAgIGRhdGFiYXNlOiBwcm9wcy5kYXRhYmFzZSxcbiAgICB9KVxuICAgIHJvbGUubm9kZS5hZGREZXBlbmRlbmN5KHRoaXMuc2VjcmV0KVxuICAgIHRoaXMucm9sZU5hbWUgPSBwcm9wcy5yb2xlTmFtZVxuICAgIHRoaXMuc2VjcmV0LmdyYW50UmVhZChwcm9wcy5wcm92aWRlci5oYW5kbGVyKVxuICB9XG59XG4iXX0=
|
package/lib/schema.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { CustomResource } from "aws-cdk-lib";
|
|
2
2
|
import { Construct } from "constructs";
|
|
3
|
+
import { IDatabase } from "./database";
|
|
3
4
|
import { Provider } from "./provider";
|
|
4
5
|
export interface SchemaProps {
|
|
5
6
|
/**
|
|
@@ -11,7 +12,7 @@ export interface SchemaProps {
|
|
|
11
12
|
*
|
|
12
13
|
* @default - use default database
|
|
13
14
|
*/
|
|
14
|
-
readonly
|
|
15
|
+
readonly database?: IDatabase;
|
|
15
16
|
/**
|
|
16
17
|
* SQL.
|
|
17
18
|
*/
|
package/lib/schema.js
CHANGED
|
@@ -13,14 +13,16 @@ class Schema extends aws_cdk_lib_1.CustomResource {
|
|
|
13
13
|
Resource: enum_1.RdsSqlResource.SCHEMA,
|
|
14
14
|
ResourceId: props.schemaName,
|
|
15
15
|
SecretArn: props.provider.secret.secretArn,
|
|
16
|
-
Database: props.databaseName,
|
|
16
|
+
Database: props.database ? props.database.databaseName : undefined,
|
|
17
17
|
},
|
|
18
18
|
});
|
|
19
19
|
this.node.addDependency(props.provider);
|
|
20
20
|
this.schemaName = props.schemaName;
|
|
21
|
+
if (props.database)
|
|
22
|
+
this.node.addDependency(props.database);
|
|
21
23
|
}
|
|
22
24
|
}
|
|
23
25
|
exports.Schema = Schema;
|
|
24
26
|
_a = JSII_RTTI_SYMBOL_1;
|
|
25
|
-
Schema[_a] = { fqn: "cdk-rds-sql.Schema", version: "1.
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
Schema[_a] = { fqn: "cdk-rds-sql.Schema", version: "1.1.1" };
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NjaGVtYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZDQUE0QztBQUc1QyxpQ0FBdUM7QUFzQnZDLE1BQWEsTUFBTyxTQUFRLDRCQUFjO0lBR3hDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBa0I7UUFDMUQsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDZixZQUFZLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZO1lBQ3pDLFVBQVUsRUFBRTtnQkFDVixRQUFRLEVBQUUscUJBQWMsQ0FBQyxNQUFNO2dCQUMvQixVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVU7Z0JBQzVCLFNBQVMsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxTQUFTO2dCQUMxQyxRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLFNBQVM7YUFDbkU7U0FDRixDQUFDLENBQUE7UUFDRixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDdkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFBO1FBQ2xDLElBQUksS0FBSyxDQUFDLFFBQVE7WUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDN0QsQ0FBQzs7QUFoQkgsd0JBaUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3VzdG9tUmVzb3VyY2UgfSBmcm9tIFwiYXdzLWNkay1saWJcIlxuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIlxuaW1wb3J0IHsgSURhdGFiYXNlIH0gZnJvbSBcIi4vZGF0YWJhc2VcIlxuaW1wb3J0IHsgUmRzU3FsUmVzb3VyY2UgfSBmcm9tIFwiLi9lbnVtXCJcbmltcG9ydCB7IFByb3ZpZGVyIH0gZnJvbSBcIi4vcHJvdmlkZXJcIlxuXG5leHBvcnQgaW50ZXJmYWNlIFNjaGVtYVByb3BzIHtcbiAgLyoqXG4gICAqIFByb3ZpZGVyLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvdmlkZXI6IFByb3ZpZGVyXG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGRhdGFiYXNlLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIHVzZSBkZWZhdWx0IGRhdGFiYXNlXG4gICAqL1xuICByZWFkb25seSBkYXRhYmFzZT86IElEYXRhYmFzZVxuXG4gIC8qKlxuICAgKiBTUUwuXG4gICAqL1xuICByZWFkb25seSBzY2hlbWFOYW1lOiBzdHJpbmdcbn1cblxuZXhwb3J0IGNsYXNzIFNjaGVtYSBleHRlbmRzIEN1c3RvbVJlc291cmNlIHtcbiAgcHVibGljIHJlYWRvbmx5IHNjaGVtYU5hbWU6IHN0cmluZ1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBTY2hlbWFQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgc2VydmljZVRva2VuOiBwcm9wcy5wcm92aWRlci5zZXJ2aWNlVG9rZW4sXG4gICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgIFJlc291cmNlOiBSZHNTcWxSZXNvdXJjZS5TQ0hFTUEsXG4gICAgICAgIFJlc291cmNlSWQ6IHByb3BzLnNjaGVtYU5hbWUsXG4gICAgICAgIFNlY3JldEFybjogcHJvcHMucHJvdmlkZXIuc2VjcmV0LnNlY3JldEFybixcbiAgICAgICAgRGF0YWJhc2U6IHByb3BzLmRhdGFiYXNlID8gcHJvcHMuZGF0YWJhc2UuZGF0YWJhc2VOYW1lIDogdW5kZWZpbmVkLFxuICAgICAgfSxcbiAgICB9KVxuICAgIHRoaXMubm9kZS5hZGREZXBlbmRlbmN5KHByb3BzLnByb3ZpZGVyKVxuICAgIHRoaXMuc2NoZW1hTmFtZSA9IHByb3BzLnNjaGVtYU5hbWVcbiAgICBpZiAocHJvcHMuZGF0YWJhc2UpIHRoaXMubm9kZS5hZGREZXBlbmRlbmN5KHByb3BzLmRhdGFiYXNlKVxuICB9XG59XG4iXX0=
|
package/lib/sql.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { CustomResource } from "aws-cdk-lib";
|
|
2
2
|
import { Construct } from "constructs";
|
|
3
|
+
import { IDatabase } from "./database";
|
|
3
4
|
import { Provider } from "./provider";
|
|
4
5
|
export interface SqlProps {
|
|
5
6
|
/**
|
|
@@ -11,7 +12,7 @@ export interface SqlProps {
|
|
|
11
12
|
*
|
|
12
13
|
* @default - use default database
|
|
13
14
|
*/
|
|
14
|
-
readonly
|
|
15
|
+
readonly database?: IDatabase;
|
|
15
16
|
/**
|
|
16
17
|
* SQL.
|
|
17
18
|
*/
|
package/lib/sql.js
CHANGED
|
@@ -12,14 +12,16 @@ class Sql extends aws_cdk_lib_1.CustomResource {
|
|
|
12
12
|
properties: {
|
|
13
13
|
Resource: enum_1.RdsSqlResource.SQL,
|
|
14
14
|
SecretArn: props.provider.secret.secretArn,
|
|
15
|
-
Database: props.databaseName,
|
|
15
|
+
Database: props.database ? props.database.databaseName : undefined,
|
|
16
16
|
Statement: props.statement,
|
|
17
17
|
},
|
|
18
18
|
});
|
|
19
19
|
this.node.addDependency(props.provider);
|
|
20
|
+
if (props.database)
|
|
21
|
+
this.node.addDependency(props.database);
|
|
20
22
|
}
|
|
21
23
|
}
|
|
22
24
|
exports.Sql = Sql;
|
|
23
25
|
_a = JSII_RTTI_SYMBOL_1;
|
|
24
|
-
Sql[_a] = { fqn: "cdk-rds-sql.Sql", version: "1.
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
Sql[_a] = { fqn: "cdk-rds-sql.Sql", version: "1.1.1" };
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3FsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NxbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZDQUE0QztBQUc1QyxpQ0FBdUM7QUFzQnZDLE1BQWEsR0FBSSxTQUFRLDRCQUFjO0lBQ3JDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBZTtRQUN2RCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLFlBQVksRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVk7WUFDekMsVUFBVSxFQUFFO2dCQUNWLFFBQVEsRUFBRSxxQkFBYyxDQUFDLEdBQUc7Z0JBQzVCLFNBQVMsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxTQUFTO2dCQUMxQyxRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLFNBQVM7Z0JBQ2xFLFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUzthQUMzQjtTQUNGLENBQUMsQ0FBQTtRQUNGLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUN2QyxJQUFJLEtBQUssQ0FBQyxRQUFRO1lBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQzdELENBQUM7O0FBYkgsa0JBY0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDdXN0b21SZXNvdXJjZSB9IGZyb20gXCJhd3MtY2RrLWxpYlwiXG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiXG5pbXBvcnQgeyBJRGF0YWJhc2UgfSBmcm9tIFwiLi9kYXRhYmFzZVwiXG5pbXBvcnQgeyBSZHNTcWxSZXNvdXJjZSB9IGZyb20gXCIuL2VudW1cIlxuaW1wb3J0IHsgUHJvdmlkZXIgfSBmcm9tIFwiLi9wcm92aWRlclwiXG5cbmV4cG9ydCBpbnRlcmZhY2UgU3FsUHJvcHMge1xuICAvKipcbiAgICogUHJvdmlkZXIuXG4gICAqL1xuICByZWFkb25seSBwcm92aWRlcjogUHJvdmlkZXJcblxuICAvKipcbiAgICogT3B0aW9uYWwgZGF0YWJhc2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gdXNlIGRlZmF1bHQgZGF0YWJhc2VcbiAgICovXG4gIHJlYWRvbmx5IGRhdGFiYXNlPzogSURhdGFiYXNlXG5cbiAgLyoqXG4gICAqIFNRTC5cbiAgICovXG4gIHJlYWRvbmx5IHN0YXRlbWVudD86IHN0cmluZ1xufVxuXG5leHBvcnQgY2xhc3MgU3FsIGV4dGVuZHMgQ3VzdG9tUmVzb3VyY2Uge1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogU3FsUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHNlcnZpY2VUb2tlbjogcHJvcHMucHJvdmlkZXIuc2VydmljZVRva2VuLFxuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICBSZXNvdXJjZTogUmRzU3FsUmVzb3VyY2UuU1FMLFxuICAgICAgICBTZWNyZXRBcm46IHByb3BzLnByb3ZpZGVyLnNlY3JldC5zZWNyZXRBcm4sXG4gICAgICAgIERhdGFiYXNlOiBwcm9wcy5kYXRhYmFzZSA/IHByb3BzLmRhdGFiYXNlLmRhdGFiYXNlTmFtZSA6IHVuZGVmaW5lZCxcbiAgICAgICAgU3RhdGVtZW50OiBwcm9wcy5zdGF0ZW1lbnQsXG4gICAgICB9LFxuICAgIH0pXG4gICAgdGhpcy5ub2RlLmFkZERlcGVuZGVuY3kocHJvcHMucHJvdmlkZXIpXG4gICAgaWYgKHByb3BzLmRhdGFiYXNlKSB0aGlzLm5vZGUuYWRkRGVwZW5kZW5jeShwcm9wcy5kYXRhYmFzZSlcbiAgfVxufVxuIl19
|
|
@@ -3,6 +3,14 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [3.178.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.177.0...v3.178.0) (2022-09-23)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @aws-sdk/abort-controller
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
6
14
|
# [3.171.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.170.0...v3.171.0) (2022-09-14)
|
|
7
15
|
|
|
8
16
|
**Note:** Version bump only for package @aws-sdk/abort-controller
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws-sdk/abort-controller",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.178.0",
|
|
4
4
|
"description": "A simple abort controller library",
|
|
5
5
|
"main": "./dist-cjs/index.js",
|
|
6
6
|
"module": "./dist-es/index.js",
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
},
|
|
22
22
|
"license": "Apache-2.0",
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@aws-sdk/types": "3.
|
|
24
|
+
"@aws-sdk/types": "3.178.0",
|
|
25
25
|
"tslib": "^2.3.1"
|
|
26
26
|
},
|
|
27
27
|
"engines": {
|
|
@@ -3,6 +3,30 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [3.180.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.179.0...v3.180.0) (2022-09-27)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @aws-sdk/client-secrets-manager
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
# [3.179.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.178.0...v3.179.0) (2022-09-26)
|
|
15
|
+
|
|
16
|
+
**Note:** Version bump only for package @aws-sdk/client-secrets-manager
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
# [3.178.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.177.0...v3.178.0) (2022-09-23)
|
|
23
|
+
|
|
24
|
+
**Note:** Version bump only for package @aws-sdk/client-secrets-manager
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
6
30
|
# [3.171.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.170.0...v3.171.0) (2022-09-14)
|
|
7
31
|
|
|
8
32
|
**Note:** Version bump only for package @aws-sdk/client-secrets-manager
|
|
@@ -31,7 +31,7 @@ export declare const getRuntimeConfig: (config: SecretsManagerClientConfig) => {
|
|
|
31
31
|
tls?: boolean | undefined;
|
|
32
32
|
retryStrategy?: import("@aws-sdk/types").RetryStrategy | undefined;
|
|
33
33
|
credentials?: import("@aws-sdk/types").Credentials | import("@aws-sdk/types").Provider<import("@aws-sdk/types").Credentials> | undefined;
|
|
34
|
-
signer?: import("@aws-sdk/types").RequestSigner | import("@aws-sdk/types").
|
|
34
|
+
signer?: import("@aws-sdk/types").RequestSigner | ((authScheme?: import("@aws-sdk/types").AuthScheme | undefined) => Promise<import("@aws-sdk/types").RequestSigner>) | undefined;
|
|
35
35
|
signingEscapePath?: boolean | undefined;
|
|
36
36
|
systemClockOffset?: number | undefined;
|
|
37
37
|
signingRegion?: string | undefined;
|
|
@@ -31,7 +31,7 @@ export declare const getRuntimeConfig: (config: SecretsManagerClientConfig) => {
|
|
|
31
31
|
tls?: boolean | undefined;
|
|
32
32
|
retryStrategy?: import("@aws-sdk/types").RetryStrategy | undefined;
|
|
33
33
|
credentials?: import("@aws-sdk/types").Credentials | import("@aws-sdk/types").Provider<import("@aws-sdk/types").Credentials> | undefined;
|
|
34
|
-
signer?: import("@aws-sdk/types").RequestSigner | import("@aws-sdk/types").
|
|
34
|
+
signer?: import("@aws-sdk/types").RequestSigner | ((authScheme?: import("@aws-sdk/types").AuthScheme | undefined) => Promise<import("@aws-sdk/types").RequestSigner>) | undefined;
|
|
35
35
|
signingEscapePath?: boolean | undefined;
|
|
36
36
|
systemClockOffset?: number | undefined;
|
|
37
37
|
signingRegion?: string | undefined;
|
|
@@ -30,7 +30,7 @@ export declare const getRuntimeConfig: (config: SecretsManagerClientConfig) => {
|
|
|
30
30
|
tls?: boolean | undefined;
|
|
31
31
|
retryStrategy?: import("@aws-sdk/types").RetryStrategy | undefined;
|
|
32
32
|
credentials?: import("@aws-sdk/types").Credentials | import("@aws-sdk/types").Provider<import("@aws-sdk/types").Credentials> | undefined;
|
|
33
|
-
signer?: import("@aws-sdk/types").RequestSigner | import("@aws-sdk/types").
|
|
33
|
+
signer?: import("@aws-sdk/types").RequestSigner | ((authScheme?: import("@aws-sdk/types").AuthScheme | undefined) => Promise<import("@aws-sdk/types").RequestSigner>) | undefined;
|
|
34
34
|
signingEscapePath?: boolean | undefined;
|
|
35
35
|
systemClockOffset?: number | undefined;
|
|
36
36
|
signingRegion?: string | undefined;
|
package/node_modules/@aws-sdk/client-secrets-manager/dist-types/ts3.4/runtimeConfig.browser.d.ts
CHANGED
|
@@ -50,7 +50,9 @@ export declare const getRuntimeConfig: (config: SecretsManagerClientConfig) => {
|
|
|
50
50
|
| undefined;
|
|
51
51
|
signer?:
|
|
52
52
|
| import("@aws-sdk/types").RequestSigner
|
|
53
|
-
|
|
|
53
|
+
| ((
|
|
54
|
+
authScheme?: import("@aws-sdk/types").AuthScheme | undefined
|
|
55
|
+
) => Promise<import("@aws-sdk/types").RequestSigner>)
|
|
54
56
|
| undefined;
|
|
55
57
|
signingEscapePath?: boolean | undefined;
|
|
56
58
|
systemClockOffset?: number | undefined;
|
|
@@ -50,7 +50,9 @@ export declare const getRuntimeConfig: (config: SecretsManagerClientConfig) => {
|
|
|
50
50
|
| undefined;
|
|
51
51
|
signer?:
|
|
52
52
|
| import("@aws-sdk/types").RequestSigner
|
|
53
|
-
|
|
|
53
|
+
| ((
|
|
54
|
+
authScheme?: import("@aws-sdk/types").AuthScheme | undefined
|
|
55
|
+
) => Promise<import("@aws-sdk/types").RequestSigner>)
|
|
54
56
|
| undefined;
|
|
55
57
|
signingEscapePath?: boolean | undefined;
|
|
56
58
|
systemClockOffset?: number | undefined;
|
package/node_modules/@aws-sdk/client-secrets-manager/dist-types/ts3.4/runtimeConfig.native.d.ts
CHANGED
|
@@ -51,7 +51,9 @@ export declare const getRuntimeConfig: (config: SecretsManagerClientConfig) => {
|
|
|
51
51
|
| undefined;
|
|
52
52
|
signer?:
|
|
53
53
|
| import("@aws-sdk/types").RequestSigner
|
|
54
|
-
|
|
|
54
|
+
| ((
|
|
55
|
+
authScheme?: import("@aws-sdk/types").AuthScheme | undefined
|
|
56
|
+
) => Promise<import("@aws-sdk/types").RequestSigner>)
|
|
55
57
|
| undefined;
|
|
56
58
|
signingEscapePath?: boolean | undefined;
|
|
57
59
|
systemClockOffset?: number | undefined;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws-sdk/client-secrets-manager",
|
|
3
3
|
"description": "AWS SDK for JavaScript Secrets Manager Client for Node.js, Browser and React Native",
|
|
4
|
-
"version": "3.
|
|
4
|
+
"version": "3.180.0",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
|
|
7
7
|
"build:cjs": "tsc -p tsconfig.cjs.json",
|
|
@@ -19,35 +19,35 @@
|
|
|
19
19
|
"dependencies": {
|
|
20
20
|
"@aws-crypto/sha256-browser": "2.0.0",
|
|
21
21
|
"@aws-crypto/sha256-js": "2.0.0",
|
|
22
|
-
"@aws-sdk/client-sts": "3.
|
|
23
|
-
"@aws-sdk/config-resolver": "3.
|
|
24
|
-
"@aws-sdk/credential-provider-node": "3.
|
|
25
|
-
"@aws-sdk/fetch-http-handler": "3.
|
|
26
|
-
"@aws-sdk/hash-node": "3.
|
|
27
|
-
"@aws-sdk/invalid-dependency": "3.
|
|
28
|
-
"@aws-sdk/middleware-content-length": "3.
|
|
29
|
-
"@aws-sdk/middleware-host-header": "3.
|
|
30
|
-
"@aws-sdk/middleware-logger": "3.
|
|
31
|
-
"@aws-sdk/middleware-recursion-detection": "3.
|
|
32
|
-
"@aws-sdk/middleware-retry": "3.
|
|
33
|
-
"@aws-sdk/middleware-serde": "3.
|
|
34
|
-
"@aws-sdk/middleware-signing": "3.
|
|
35
|
-
"@aws-sdk/middleware-stack": "3.
|
|
36
|
-
"@aws-sdk/middleware-user-agent": "3.
|
|
37
|
-
"@aws-sdk/node-config-provider": "3.
|
|
38
|
-
"@aws-sdk/node-http-handler": "3.
|
|
39
|
-
"@aws-sdk/protocol-http": "3.
|
|
40
|
-
"@aws-sdk/smithy-client": "3.
|
|
41
|
-
"@aws-sdk/types": "3.
|
|
42
|
-
"@aws-sdk/url-parser": "3.
|
|
22
|
+
"@aws-sdk/client-sts": "3.180.0",
|
|
23
|
+
"@aws-sdk/config-resolver": "3.178.0",
|
|
24
|
+
"@aws-sdk/credential-provider-node": "3.180.0",
|
|
25
|
+
"@aws-sdk/fetch-http-handler": "3.178.0",
|
|
26
|
+
"@aws-sdk/hash-node": "3.178.0",
|
|
27
|
+
"@aws-sdk/invalid-dependency": "3.178.0",
|
|
28
|
+
"@aws-sdk/middleware-content-length": "3.178.0",
|
|
29
|
+
"@aws-sdk/middleware-host-header": "3.178.0",
|
|
30
|
+
"@aws-sdk/middleware-logger": "3.178.0",
|
|
31
|
+
"@aws-sdk/middleware-recursion-detection": "3.178.0",
|
|
32
|
+
"@aws-sdk/middleware-retry": "3.178.0",
|
|
33
|
+
"@aws-sdk/middleware-serde": "3.178.0",
|
|
34
|
+
"@aws-sdk/middleware-signing": "3.179.0",
|
|
35
|
+
"@aws-sdk/middleware-stack": "3.178.0",
|
|
36
|
+
"@aws-sdk/middleware-user-agent": "3.178.0",
|
|
37
|
+
"@aws-sdk/node-config-provider": "3.178.0",
|
|
38
|
+
"@aws-sdk/node-http-handler": "3.178.0",
|
|
39
|
+
"@aws-sdk/protocol-http": "3.178.0",
|
|
40
|
+
"@aws-sdk/smithy-client": "3.180.0",
|
|
41
|
+
"@aws-sdk/types": "3.178.0",
|
|
42
|
+
"@aws-sdk/url-parser": "3.178.0",
|
|
43
43
|
"@aws-sdk/util-base64-browser": "3.170.0",
|
|
44
44
|
"@aws-sdk/util-base64-node": "3.170.0",
|
|
45
45
|
"@aws-sdk/util-body-length-browser": "3.170.0",
|
|
46
46
|
"@aws-sdk/util-body-length-node": "3.170.0",
|
|
47
|
-
"@aws-sdk/util-defaults-mode-browser": "3.
|
|
48
|
-
"@aws-sdk/util-defaults-mode-node": "3.
|
|
49
|
-
"@aws-sdk/util-user-agent-browser": "3.
|
|
50
|
-
"@aws-sdk/util-user-agent-node": "3.
|
|
47
|
+
"@aws-sdk/util-defaults-mode-browser": "3.180.0",
|
|
48
|
+
"@aws-sdk/util-defaults-mode-node": "3.180.0",
|
|
49
|
+
"@aws-sdk/util-user-agent-browser": "3.178.0",
|
|
50
|
+
"@aws-sdk/util-user-agent-node": "3.178.0",
|
|
51
51
|
"@aws-sdk/util-utf8-browser": "3.170.0",
|
|
52
52
|
"@aws-sdk/util-utf8-node": "3.170.0",
|
|
53
53
|
"tslib": "^2.3.1",
|
|
@@ -3,6 +3,22 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [3.180.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.179.0...v3.180.0) (2022-09-27)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @aws-sdk/client-sso
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
# [3.178.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.177.0...v3.178.0) (2022-09-23)
|
|
15
|
+
|
|
16
|
+
**Note:** Version bump only for package @aws-sdk/client-sso
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
6
22
|
# [3.171.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.170.0...v3.171.0) (2022-09-14)
|
|
7
23
|
|
|
8
24
|
**Note:** Version bump only for package @aws-sdk/client-sso
|