@liflig/cdk 3.20.7 → 3.20.8
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/lib/snapshots.d.ts +2 -0
- package/lib/snapshots.js +14 -7
- package/package.json +2 -2
package/lib/snapshots.d.ts
CHANGED
package/lib/snapshots.js
CHANGED
|
@@ -31,6 +31,11 @@ function removeRuntimeLibraries(data) {
|
|
|
31
31
|
return cp;
|
|
32
32
|
}
|
|
33
33
|
const currentVersionRegex = /^(.+CurrentVersion[0-9A-F]{8})[0-9a-f]{32}$/;
|
|
34
|
+
// Matches 64-char hex strings used as CDK asset content hashes.
|
|
35
|
+
const assetContentHashRegex = /[0-9a-f]{64}/g;
|
|
36
|
+
// Matches the short 8-char hash suffix in CDK Pipelines asset identifiers,
|
|
37
|
+
// e.g. "snapshot-value:123456789012-eu-west-1-0e94f9de".
|
|
38
|
+
const pipelinesAssetIdSuffixRegex = /(snapshot-value:\d+-[a-z0-9-]+-)[0-9a-f]{8}/g;
|
|
34
39
|
/**
|
|
35
40
|
* Match a resource created by `lambda.Function.currentVersion`, which
|
|
36
41
|
* will include the asset hash as part of the reousrce name and return
|
|
@@ -73,8 +78,9 @@ function removeAssetDetailsFromTemplate(data) {
|
|
|
73
78
|
if (newCurrentVersion) {
|
|
74
79
|
return newCurrentVersion;
|
|
75
80
|
}
|
|
76
|
-
|
|
77
|
-
|
|
81
|
+
return data
|
|
82
|
+
.replace(assetContentHashRegex, "snapshot-value")
|
|
83
|
+
.replace(pipelinesAssetIdSuffixRegex, "$1snapshot-value");
|
|
78
84
|
}
|
|
79
85
|
return data;
|
|
80
86
|
}
|
|
@@ -104,8 +110,9 @@ function removeAssetDetailsFromManifest(data) {
|
|
|
104
110
|
if (newCurrentVersion) {
|
|
105
111
|
return newCurrentVersion;
|
|
106
112
|
}
|
|
107
|
-
|
|
108
|
-
|
|
113
|
+
return data
|
|
114
|
+
.replace(assetContentHashRegex, "snapshot-value")
|
|
115
|
+
.replace(pipelinesAssetIdSuffixRegex, "$1snapshot-value");
|
|
109
116
|
}
|
|
110
117
|
return data;
|
|
111
118
|
}
|
|
@@ -123,7 +130,7 @@ function removeCdkMetadataResourceFromTemplate(data) {
|
|
|
123
130
|
delete cp.Resources.CDKMetadata;
|
|
124
131
|
return cp;
|
|
125
132
|
}
|
|
126
|
-
function prepareManifestForSnapshot(content) {
|
|
133
|
+
export function prepareManifestForSnapshot(content) {
|
|
127
134
|
const input = JSON.parse(content);
|
|
128
135
|
const output = [
|
|
129
136
|
removeVersion,
|
|
@@ -145,7 +152,7 @@ async function prepareManifestFileForSnapshot(file) {
|
|
|
145
152
|
const result = prepareManifestForSnapshot(await fs.promises.readFile(file, "utf8"));
|
|
146
153
|
await fs.promises.writeFile(file, result);
|
|
147
154
|
}
|
|
148
|
-
function prepareTemplateForSnapshot(content) {
|
|
155
|
+
export function prepareTemplateForSnapshot(content) {
|
|
149
156
|
const input = JSON.parse(content);
|
|
150
157
|
const output = [
|
|
151
158
|
removeCdkMetadataResourceFromTemplate,
|
|
@@ -204,4 +211,4 @@ export async function createCloudAssemblySnapshot(src, dst) {
|
|
|
204
211
|
await prepareTemplateFileForSnapshot(file);
|
|
205
212
|
}
|
|
206
213
|
}
|
|
207
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hcHNob3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NuYXBzaG90cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQUM3QixPQUFPLEtBQUssSUFBSSxNQUFNLFdBQVcsQ0FBQTtBQUVqQyxTQUFTLGFBQWEsQ0FBQyxJQUFTO0lBQzlCLE1BQU0sRUFBRSxHQUFHO1FBQ1QsR0FBRyxJQUFJO0tBQ1IsQ0FBQTtJQUVELE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQTtJQUNqQixPQUFPLEVBQUUsQ0FBQTtBQUNYLENBQUM7QUFFRCxTQUFTLFdBQVcsQ0FBQyxJQUFTO0lBQzVCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQTtJQUM5QixDQUFDO0lBRUQsSUFBSSxJQUFJLEtBQUssTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDMUIsT0FBTyxNQUFNLENBQUMsV0FBVyxDQUN2QixNQUFNLENBQUMsT0FBTyxDQUFDLElBQStCLENBQUM7YUFDNUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLE9BQU8sQ0FBQzthQUNsQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FDcEQsQ0FBQTtJQUNILENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUM7QUFFRCxTQUFTLHNCQUFzQixDQUFDLElBQVM7SUFDdkMsTUFBTSxFQUFFLEdBQUc7UUFDVCxHQUFHLElBQUk7S0FDUixDQUFBO0lBRUQsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDakIs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eEMsWUFBWTtRQUVaLG9FQUFvRTtRQUNwRSxjQUFjO1FBRWQsaUNBQWlDO1FBQ2pDLFlBQVk7UUFFWiwrRUFBK0U7UUFDL0Usa0JBQWtCO1FBRWxCLDJEQUEyRDtRQUMzRCxVQUFVO0tBQ1gsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQTtJQUV4QyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQ2YsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ3RCLEVBQUUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRTtRQUNoQixTQUFTLEVBQUUsSUFBSTtRQUNmLEtBQUssRUFBRSxJQUFJO0tBQ1osQ0FBQyxDQUNILENBQ0YsQ0FBQTtJQUVELE1BQU0sYUFBYSxHQUFHO1FBQ3BCLHVEQUF1RDtRQUN2RCxrQkFBa0I7S0FDbkIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQTtJQUV4QyxLQUFLLE1BQU0sSUFBSSxJQUFJLGFBQWEsRUFBRSxDQUFDO1FBQ2pDLE1BQU0sOEJBQThCLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDNUMsQ0FBQztJQUVELE1BQU0sYUFBYSxHQUFHO1FBQ3BCLDJCQUEyQjtRQUMzQixvQkFBb0I7S0FDckIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQTtJQUV4QyxLQUFLLE1BQU0sSUFBSSxJQUFJLGFBQWEsRUFBRSxDQUFDO1FBQ2pDLE1BQU0sOEJBQThCLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDNUMsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tIFwibm9kZTpmc1wiXG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gXCJub2RlOnBhdGhcIlxuXG5mdW5jdGlvbiByZW1vdmVWZXJzaW9uKGRhdGE6IGFueSk6IGFueSB7XG4gIGNvbnN0IGNwID0ge1xuICAgIC4uLmRhdGEsXG4gIH1cblxuICBkZWxldGUgY3AudmVyc2lvblxuICByZXR1cm4gY3Bcbn1cblxuZnVuY3Rpb24gcmVtb3ZlVHJhY2UoZGF0YTogYW55KTogYW55IHtcbiAgaWYgKEFycmF5LmlzQXJyYXkoZGF0YSkpIHtcbiAgICByZXR1cm4gZGF0YS5tYXAocmVtb3ZlVHJhY2UpXG4gIH1cblxuICBpZiAoZGF0YSA9PT0gT2JqZWN0KGRhdGEpKSB7XG4gICAgcmV0dXJuIE9iamVjdC5mcm9tRW50cmllcyhcbiAgICAgIE9iamVjdC5lbnRyaWVzKGRhdGEgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4pXG4gICAgICAgIC5maWx0ZXIoKFtrZXldKSA9PiBrZXkgIT09IFwidHJhY2VcIilcbiAgICAgICAgLm1hcCgoW2tleSwgdmFsdWVdKSA9PiBba2V5LCByZW1vdmVUcmFjZSh2YWx1ZSldKSxcbiAgICApXG4gIH1cblxuICByZXR1cm4gZGF0YVxufVxuXG5mdW5jdGlvbiByZW1vdmVSdW50aW1lTGlicmFyaWVzKGRhdGE6IGFueSk6IGFueSB7XG4gIGNvbnN0IGNwID0ge1xuICAgIC4uLmRhdGEsXG4gIH1cblxuICBpZiAoZGF0YS5ydW50aW1lKSB7XG4gICAgY3AucnVudGltZSA9IHtcbiAgICAgIC4uLmRhdGEucnVudGltZSxcbiAgICB9XG5cbiAgICBkZWxldGUgY3AucnVudGltZS5saWJyYXJpZXNcbiAgfVxuXG4gIHJldHVybiBjcFxufVxuXG5jb25zdCBjdXJyZW50VmVyc2lvblJlZ2V4ID0gL14oLitDdXJyZW50VmVyc2lvblswLTlBLUZdezh9KVswLTlhLWZdezMyfSQvXG5cbi8qKlxuICogTWF0Y2ggYSByZXNvdXJjZSBjcmVhdGVkIGJ5IGBsYW1iZGEuRnVuY3Rpb24uY3VycmVudFZlcnNpb25gLCB3aGljaFxuICogd2lsbCBpbmNsdWRlIHRoZSBhc3NldCBoYXNoIGFzIHBhcnQgb2YgdGhlIHJlb3VzcmNlIG5hbWUgYW5kIHJldHVyblxuICogYSBzbmFwc2hvdC1mcmllbmRseSB2ZXJzaW9uIG9mIGl0IGlmIGZvdW5kLlxuICovXG5mdW5jdGlvbiByZXdyaXRlQ3VycmVudFZlcnNpb25JZkZvdW5kKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgY29uc3QgbWF0Y2ggPSBjdXJyZW50VmVyc2lvblJlZ2V4LmV4ZWModmFsdWUpXG4gIHJldHVybiBtYXRjaCA/IGAke21hdGNoWzFdfXh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4YCA6IG51bGxcbn1cblxuZnVuY3Rpb24gcmVtb3ZlQXNzZXREZXRhaWxzRnJvbVRlbXBsYXRlKGRhdGE6IGFueSk6IGFueSB7XG4gIGlmIChBcnJheS5pc0FycmF5KGRhdGEpKSB7XG4gICAgcmV0dXJuIGRhdGEubWFwKHJlbW92ZUFzc2V0RGV0YWlsc0Zyb21UZW1wbGF0ZSlcbiAgfVxuXG4gIGlmIChkYXRhID09PSBPYmplY3QoZGF0YSkpIHtcbiAgICByZXR1cm4gT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgICAgT2JqZWN0LmVudHJpZXMoZGF0YSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPilcbiAgICAgICAgLm1hcCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgICAgY29uc3QgbmV3Q3VycmVudFZlcnNpb24gPSByZXdyaXRlQ3VycmVudFZlcnNpb25JZkZvdW5kKGtleSlcbiAgICAgICAgICBpZiAobmV3Q3VycmVudFZlcnNpb24pIHtcbiAgICAgICAgICAgIHJldHVybiBbbmV3Q3VycmVudFZlcnNpb24sIHJlbW92ZUFzc2V0RGV0YWlsc0Zyb21UZW1wbGF0ZSh2YWx1ZSldXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChrZXkuaW5jbHVkZXMoXCJBc3NldFBhcmFtZXRlclwiKSkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAga2V5ID09PSBcIlJlZlwiICYmXG4gICAgICAgICAgICB0eXBlb2YgdmFsdWUgPT09IFwic3RyaW5nXCIgJiZcbiAgICAgICAgICAgIHZhbHVlLmluY2x1ZGVzKFwiQXNzZXRQYXJhbWV0ZXJzXCIpXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gW2tleSwgXCJzbmFwc2hvdC12YWx1ZVwiXVxuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBrZXkgPT09IFwiYXdzOmFzc2V0OnBhdGhcIiAmJlxuICAgICAgICAgICAgdHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiICYmXG4gICAgICAgICAgICAvYXNzZXRcXC5bMC05YS1mXXs2NH0vLnRlc3QodmFsdWUpXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gW2tleSwgXCJhc3NldC5zbmFwc2hvdC12YWx1ZVwiXVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gW2tleSwgcmVtb3ZlQXNzZXREZXRhaWxzRnJvbVRlbXBsYXRlKHZhbHVlKV1cbiAgICAgICAgfSlcbiAgICAgICAgLmZpbHRlcigoaXQpOiBpdCBpcyBbXSA9PiBpdCAhPSBudWxsKSxcbiAgICApXG4gIH1cblxuICBpZiAodHlwZW9mIGRhdGEgPT09IFwic3RyaW5nXCIpIHtcbiAgICBjb25zdCBuZXdDdXJyZW50VmVyc2lvbiA9IHJld3JpdGVDdXJyZW50VmVyc2lvbklmRm91bmQoZGF0YSlcbiAgICBpZiAobmV3Q3VycmVudFZlcnNpb24pIHtcbiAgICAgIHJldHVybiBuZXdDdXJyZW50VmVyc2lvblxuICAgIH1cblxuICAgIC8vIEhhbmRsZSB0eXBpY2FsIGNvbnRlbnQgaGFzaGVzLlxuICAgIHJldHVybiBkYXRhLnJlcGxhY2UoL1swLTlhLWZdezY0fS9nLCBcInNuYXBzaG90LXZhbHVlXCIpXG4gIH1cblxuICByZXR1cm4gZGF0YVxufVxuXG5mdW5jdGlvbiByZW1vdmVBc3NldERldGFpbHNGcm9tTWFuaWZlc3QoZGF0YTogYW55KTogYW55IHtcbiAgaWYgKEFycmF5LmlzQXJyYXkoZGF0YSkpIHtcbiAgICByZXR1cm4gZGF0YS5tYXAocmVtb3ZlQXNzZXREZXRhaWxzRnJvbU1hbmlmZXN0KVxuICB9XG5cbiAgaWYgKGRhdGEgPT09IE9iamVjdChkYXRhKSkge1xuICAgIC8vIGF3czpjZGs6YXNzZXQgaW4gbWV0YWRhdGFcbiAgICBpZiAoZGF0YS50eXBlID09PSBcImF3czpjZGs6YXNzZXRcIiAmJiBcImRhdGFcIiBpbiBkYXRhKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5kYXRhLFxuICAgICAgICBkYXRhOiBcInNuYXBzaG90LXZhbHVlXCIsXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIE9iamVjdC5mcm9tRW50cmllcyhcbiAgICAgIE9iamVjdC5lbnRyaWVzKGRhdGEgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4pXG4gICAgICAgIC5tYXAoKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICAgIGlmIChrZXkuaW5jbHVkZXMoXCJBc3NldFBhcmFtZXRlcnNcIikpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBba2V5LCByZW1vdmVBc3NldERldGFpbHNGcm9tTWFuaWZlc3QodmFsdWUpXVxuICAgICAgICB9KVxuICAgICAgICAuZmlsdGVyKChpdCk6IGl0IGlzIFtdID0+IGl0ICE9IG51bGwpLFxuICAgIClcbiAgfVxuXG4gIGlmICh0eXBlb2YgZGF0YSA9PT0gXCJzdHJpbmdcIikge1xuICAgIGNvbnN0IG5ld0N1cnJlbnRWZXJzaW9uID0gcmV3cml0ZUN1cnJlbnRWZXJzaW9uSWZGb3VuZChkYXRhKVxuICAgIGlmIChuZXdDdXJyZW50VmVyc2lvbikge1xuICAgICAgcmV0dXJuIG5ld0N1cnJlbnRWZXJzaW9uXG4gICAgfVxuXG4gICAgLy8gSGFuZGxlIHR5cGljYWwgY29udGVudCBoYXNoZXMuXG4gICAgcmV0dXJuIGRhdGEucmVwbGFjZSgvWzAtOWEtZl17NjR9L2csIFwic25hcHNob3QtdmFsdWVcIilcbiAgfVxuXG4gIHJldHVybiBkYXRhXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBDREtNZXRhZGF0YSByZXNvdXJjZXMgdGhhdCBpcyBwYXJ0IG9mIHRoZSBzeW50aGVzaXplZFxuICogdGVtcGxhdGUgc2luY2UgQ0RLIDEuNjMuMC5cbiAqL1xuZnVuY3Rpb24gcmVtb3ZlQ2RrTWV0YWRhdGFSZXNvdXJjZUZyb21UZW1wbGF0ZShkYXRhOiBhbnkpOiBhbnkge1xuICBjb25zdCBjcCA9IHtcbiAgICAuLi5kYXRhLFxuICAgIFJlc291cmNlczoge1xuICAgICAgLi4uZGF0YS5SZXNvdXJjZXMsXG4gICAgfSxcbiAgfVxuXG4gIGRlbGV0ZSBjcC5SZXNvdXJjZXMuQ0RLTWV0YWRhdGFcbiAgcmV0dXJuIGNwXG59XG5cbmZ1bmN0aW9uIHByZXBhcmVNYW5pZmVzdEZvclNuYXBzaG90KGNvbnRlbnQ6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IGlucHV0ID0gSlNPTi5wYXJzZShjb250ZW50KVxuICBjb25zdCBvdXRwdXQgPSBbXG4gICAgcmVtb3ZlVmVyc2lvbixcbiAgICAvLyBSZW1vdmUgdGhlIHJ1bnRpbWUgdmVyc2lvbiBpbmZvcm1hdGlvbiBzbyBpdCBkb24ndCBjb25mbGljdCB3aXRoIENJXG4gICAgLy8gb3Igb3RoZXIgdXNlcnMgZ2VuZXJhdGluZyB0aGUgc25hcHNob3RzLlxuICAgIHJlbW92ZVJ1bnRpbWVMaWJyYXJpZXMsXG4gICAgLy8gUmVtb3ZlIHRoZSB0cmFjZSBmcm9tIG1hbmlmZXN0IGZvciBub3cuXG4gICAgcmVtb3ZlVHJhY2UsXG4gICAgLy8gQXZvaWQgZGV0YWlscyAoaGFzaGVzKSBmcm9tIGFzc2V0cy5cbiAgICByZW1vdmVBc3NldERldGFpbHNGcm9tTWFuaWZlc3QsXG4gIF0ucmVkdWNlKChhY2MsIGZuKSA9PiBmbihhY2MpLCBpbnB1dClcblxuICByZXR1cm4gSlNPTi5zdHJpbmdpZnkob3V0cHV0LCB1bmRlZmluZWQsIFwiICBcIilcbn1cblxuLyoqXG4gKiBUcmFuc2Zvcm0gdGhlIENsb3VkIEFzc2VtYmx5IG1hbmlmZXN0IGZpbGUgc28gdGhhdCBpdCBjYW4gYmUgcGVyc2lzdGVkXG4gKiBhcyBhIHNuYXBzaG90IHdpdGhvdXQgY2F1c2luZyBpbnZhbGlkYXRpb25zIGZvciBldmVyeSBzeW50aGVzaXplLlxuICovXG5hc3luYyBmdW5jdGlvbiBwcmVwYXJlTWFuaWZlc3RGaWxlRm9yU25hcHNob3QoZmlsZTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlc3VsdCA9IHByZXBhcmVNYW5pZmVzdEZvclNuYXBzaG90KFxuICAgIGF3YWl0IGZzLnByb21pc2VzLnJlYWRGaWxlKGZpbGUsIFwidXRmOFwiKSxcbiAgKVxuXG4gIGF3YWl0IGZzLnByb21pc2VzLndyaXRlRmlsZShmaWxlLCByZXN1bHQpXG59XG5cbmZ1bmN0aW9uIHByZXBhcmVUZW1wbGF0ZUZvclNuYXBzaG90KGNvbnRlbnQ6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IGlucHV0ID0gSlNPTi5wYXJzZShjb250ZW50KVxuICBjb25zdCBvdXRwdXQgPSBbXG4gICAgcmVtb3ZlQ2RrTWV0YWRhdGFSZXNvdXJjZUZyb21UZW1wbGF0ZSxcbiAgICAvLyBBdm9pZCBkZXRhaWxzIChoYXNoZXMpIGZyb20gYXNzZXRzLlxuICAgIHJlbW92ZUFzc2V0RGV0YWlsc0Zyb21UZW1wbGF0ZSxcbiAgXS5yZWR1Y2UoKGFjYywgZm4pID0+IGZuKGFjYyksIGlucHV0KVxuXG4gIHJldHVybiBKU09OLnN0cmluZ2lmeShvdXRwdXQsIHVuZGVmaW5lZCwgXCIgIFwiKVxufVxuXG4vKipcbiAqIFRyYW5zZm9ybSBhIENsb3VkIEFzc2VtYmx5IHRlbXBsYXRlIGZpbGUgc28gdGhhdCBpdCBjYW4gYmUgcGVyc2lzdGVkXG4gKiBhcyBhIHNuYXBzaG90IHdpdGhvdXQgY2F1c2luZyBpbnZhbGlkYXRpb25zIGZvciBtaW5vciBjaGFuZ2VzLlxuICovXG5hc3luYyBmdW5jdGlvbiBwcmVwYXJlVGVtcGxhdGVGaWxlRm9yU25hcHNob3QoZmlsZTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlc3VsdCA9IHByZXBhcmVUZW1wbGF0ZUZvclNuYXBzaG90KFxuICAgIGF3YWl0IGZzLnByb21pc2VzLnJlYWRGaWxlKGZpbGUsIFwidXRmOFwiKSxcbiAgKVxuXG4gIGF3YWl0IGZzLnByb21pc2VzLndyaXRlRmlsZShmaWxlLCByZXN1bHQpXG59XG5cbi8qKlxuICogQ29udmVydCBhIENsb3VkIEFzc2VtYmx5IHRvIGEgc25hcHNob3QuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjcmVhdGVDbG91ZEFzc2VtYmx5U25hcHNob3QoXG4gIHNyYzogc3RyaW5nLFxuICBkc3Q6IHN0cmluZyxcbik6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCBkZXN0QWJzID0gcGF0aC5qb2luKHByb2Nlc3MuY3dkKCksIGRzdClcbiAgY29uc3Qgc3JjQWJzID0gcGF0aC5qb2luKHByb2Nlc3MuY3dkKCksIHNyYylcblxuICAvLyBDb3B5IGFsbCBmaWxlcyBmcm9tIHNyYyAoY2RrLm91dCkgdG8gZGVzdCAoX19zbmFwc2hvdHNfXylcbiAgZnMuY3BTeW5jKHNyY0FicywgZGVzdEFicywgeyByZWN1cnNpdmU6IHRydWUgfSlcblxuICBjb25zdCBleHBhbmRHbG9iID0gKHBhdHRlcm46IHN0cmluZywgY3dkOiBzdHJpbmcpOiBzdHJpbmdbXSA9PiB7XG4gICAgcmV0dXJuIGZzLmdsb2JTeW5jKHBhdHRlcm4sIHsgY3dkIH0pLm1hcCgocCkgPT4gcGF0aC5qb2luKGN3ZCwgcCkpXG4gIH1cblxuICBjb25zdCBmaWxlc1RvRGVsZXRlID0gW1xuICAgIC8vIERvbid0IGtlZXAgdHJhY2sgb2YgbWFuaWZlc3QgdmVyc2lvbi5cbiAgICBcIioqL2Nkay5vdXRcIixcblxuICAgIC8vIFRoZSB0cmVlIGZpbGUgZG9lc24ndCBnaXZlIHVzIG11Y2ggdmFsdWUgYXMgcGFydCBvZiB0aGUgc25hcHNob3QuXG4gICAgXCIqKi90cmVlLmpzb25cIixcblxuICAgIC8vIFJlbW92ZSBhc3NldCBjb250ZW50cyBmb3Igbm93LlxuICAgIFwiKiovYXNzZXQuKlwiLFxuXG4gICAgLy8gUmVtb3ZlIGFzc2V0IGNvbmZpZ3Mgc28gd2UgZG9uJ3QgaGF2ZSB0byB1cGRhdGUgc25hcHNob3RzIGZvciBhc3NldCBjaGFuZ2VzLlxuICAgIFwiKiovKi5hc3NldHMuanNvblwiLFxuXG4gICAgLy8gUmVtb3ZlIGdyYXBodml6IGZpbGVzIGdlbmVyYXRlZCB3aGVuIHVzaW5nIENESyBQaXBlbGluZXNcbiAgICBcIioqLyouZG90XCIsXG4gIF0uZmxhdE1hcCgoZykgPT4gZXhwYW5kR2xvYihnLCBkZXN0QWJzKSlcblxuICBhd2FpdCBQcm9taXNlLmFsbChcbiAgICBmaWxlc1RvRGVsZXRlLm1hcCgocCkgPT5cbiAgICAgIGZzLnByb21pc2VzLnJtKHAsIHtcbiAgICAgICAgcmVjdXJzaXZlOiB0cnVlLFxuICAgICAgICBmb3JjZTogdHJ1ZSxcbiAgICAgIH0pLFxuICAgICksXG4gIClcblxuICBjb25zdCBtYW5pZmVzdEZpbGVzID0gW1xuICAgIC8vIFRyYW5zZm9ybSB0aGUgbWFuaWZlc3QgdG8gYmUgbW9yZSBzbmFwc2hvdCBmcmllbmRseS5cbiAgICBcIioqL21hbmlmZXN0Lmpzb25cIixcbiAgXS5mbGF0TWFwKChnKSA9PiBleHBhbmRHbG9iKGcsIGRlc3RBYnMpKVxuXG4gIGZvciAoY29uc3QgZmlsZSBvZiBtYW5pZmVzdEZpbGVzKSB7XG4gICAgYXdhaXQgcHJlcGFyZU1hbmlmZXN0RmlsZUZvclNuYXBzaG90KGZpbGUpXG4gIH1cblxuICBjb25zdCB0ZW1wbGF0ZUZpbGVzID0gW1xuICAgIC8vIFRyYW5zZm9ybSBhbGwgdGVtcGxhdGVzLlxuICAgIFwiKiovKi50ZW1wbGF0ZS5qc29uXCIsXG4gIF0uZmxhdE1hcCgoZykgPT4gZXhwYW5kR2xvYihnLCBkZXN0QWJzKSlcblxuICBmb3IgKGNvbnN0IGZpbGUgb2YgdGVtcGxhdGVGaWxlcykge1xuICAgIGF3YWl0IHByZXBhcmVUZW1wbGF0ZUZpbGVGb3JTbmFwc2hvdChmaWxlKVxuICB9XG59XG4iXX0=
|
|
214
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hcHNob3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NuYXBzaG90cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQUM3QixPQUFPLEtBQUssSUFBSSxNQUFNLFdBQVcsQ0FBQTtBQUVqQyxTQUFTLGFBQWEsQ0FBQyxJQUFTO0lBQzlCLE1BQU0sRUFBRSxHQUFHO1FBQ1QsR0FBRyxJQUFJO0tBQ1IsQ0FBQTtJQUVELE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQTtJQUNqQixPQUFPLEVBQUUsQ0FBQTtBQUNYLENBQUM7QUFFRCxTQUFTLFdBQVcsQ0FBQyxJQUFTO0lBQzVCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQTtJQUM5QixDQUFDO0lBRUQsSUFBSSxJQUFJLEtBQUssTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDMUIsT0FBTyxNQUFNLENBQUMsV0FBVyxDQUN2QixNQUFNLENBQUMsT0FBTyxDQUFDLElBQStCLENBQUM7YUFDNUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLE9BQU8sQ0FBQzthQUNsQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FDcEQsQ0FBQTtJQUNILENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUM7QUFFRCxTQUFTLHNCQUFzQixDQUFDLElBQVM7SUFDdkMsTUFBTSxFQUFFLEdBQUc7UUFDVCxHQUFHLElBQUk7S0FDUixDQUFBO0lBRUQsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDakIs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O0lBRXhDLEtBQUssTUFBTSxJQUFJLElBQUksYUFBYSxFQUFFLENBQUM7UUFDakMsTUFBTSw4QkFBOEIsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUM1QyxDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZzIGZyb20gXCJub2RlOmZzXCJcbmltcG9ydCAqIGFzIHBhdGggZnJvbSBcIm5vZGU6cGF0aFwiXG5cbmZ1bmN0aW9uIHJlbW92ZVZlcnNpb24oZGF0YTogYW55KTogYW55IHtcbiAgY29uc3QgY3AgPSB7XG4gICAgLi4uZGF0YSxcbiAgfVxuXG4gIGRlbGV0ZSBjcC52ZXJzaW9uXG4gIHJldHVybiBjcFxufVxuXG5mdW5jdGlvbiByZW1vdmVUcmFjZShkYXRhOiBhbnkpOiBhbnkge1xuICBpZiAoQXJyYXkuaXNBcnJheShkYXRhKSkge1xuICAgIHJldHVybiBkYXRhLm1hcChyZW1vdmVUcmFjZSlcbiAgfVxuXG4gIGlmIChkYXRhID09PSBPYmplY3QoZGF0YSkpIHtcbiAgICByZXR1cm4gT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgICAgT2JqZWN0LmVudHJpZXMoZGF0YSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPilcbiAgICAgICAgLmZpbHRlcigoW2tleV0pID0+IGtleSAhPT0gXCJ0cmFjZVwiKVxuICAgICAgICAubWFwKChba2V5LCB2YWx1ZV0pID0+IFtrZXksIHJlbW92ZVRyYWNlKHZhbHVlKV0pLFxuICAgIClcbiAgfVxuXG4gIHJldHVybiBkYXRhXG59XG5cbmZ1bmN0aW9uIHJlbW92ZVJ1bnRpbWVMaWJyYXJpZXMoZGF0YTogYW55KTogYW55IHtcbiAgY29uc3QgY3AgPSB7XG4gICAgLi4uZGF0YSxcbiAgfVxuXG4gIGlmIChkYXRhLnJ1bnRpbWUpIHtcbiAgICBjcC5ydW50aW1lID0ge1xuICAgICAgLi4uZGF0YS5ydW50aW1lLFxuICAgIH1cblxuICAgIGRlbGV0ZSBjcC5ydW50aW1lLmxpYnJhcmllc1xuICB9XG5cbiAgcmV0dXJuIGNwXG59XG5cbmNvbnN0IGN1cnJlbnRWZXJzaW9uUmVnZXggPSAvXiguK0N1cnJlbnRWZXJzaW9uWzAtOUEtRl17OH0pWzAtOWEtZl17MzJ9JC9cblxuLy8gTWF0Y2hlcyA2NC1jaGFyIGhleCBzdHJpbmdzIHVzZWQgYXMgQ0RLIGFzc2V0IGNvbnRlbnQgaGFzaGVzLlxuY29uc3QgYXNzZXRDb250ZW50SGFzaFJlZ2V4ID0gL1swLTlhLWZdezY0fS9nXG5cbi8vIE1hdGNoZXMgdGhlIHNob3J0IDgtY2hhciBoYXNoIHN1ZmZpeCBpbiBDREsgUGlwZWxpbmVzIGFzc2V0IGlkZW50aWZpZXJzLFxuLy8gZS5nLiBcInNuYXBzaG90LXZhbHVlOjEyMzQ1Njc4OTAxMi1ldS13ZXN0LTEtMGU5NGY5ZGVcIi5cbmNvbnN0IHBpcGVsaW5lc0Fzc2V0SWRTdWZmaXhSZWdleCA9XG4gIC8oc25hcHNob3QtdmFsdWU6XFxkKy1bYS16MC05LV0rLSlbMC05YS1mXXs4fS9nXG5cbi8qKlxuICogTWF0Y2ggYSByZXNvdXJjZSBjcmVhdGVkIGJ5IGBsYW1iZGEuRnVuY3Rpb24uY3VycmVudFZlcnNpb25gLCB3aGljaFxuICogd2lsbCBpbmNsdWRlIHRoZSBhc3NldCBoYXNoIGFzIHBhcnQgb2YgdGhlIHJlb3VzcmNlIG5hbWUgYW5kIHJldHVyblxuICogYSBzbmFwc2hvdC1mcmllbmRseSB2ZXJzaW9uIG9mIGl0IGlmIGZvdW5kLlxuICovXG5mdW5jdGlvbiByZXdyaXRlQ3VycmVudFZlcnNpb25JZkZvdW5kKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgY29uc3QgbWF0Y2ggPSBjdXJyZW50VmVyc2lvblJlZ2V4LmV4ZWModmFsdWUpXG4gIHJldHVybiBtYXRjaCA/IGAke21hdGNoWzFdfXh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4YCA6IG51bGxcbn1cblxuZnVuY3Rpb24gcmVtb3ZlQXNzZXREZXRhaWxzRnJvbVRlbXBsYXRlKGRhdGE6IGFueSk6IGFueSB7XG4gIGlmIChBcnJheS5pc0FycmF5KGRhdGEpKSB7XG4gICAgcmV0dXJuIGRhdGEubWFwKHJlbW92ZUFzc2V0RGV0YWlsc0Zyb21UZW1wbGF0ZSlcbiAgfVxuXG4gIGlmIChkYXRhID09PSBPYmplY3QoZGF0YSkpIHtcbiAgICByZXR1cm4gT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgICAgT2JqZWN0LmVudHJpZXMoZGF0YSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPilcbiAgICAgICAgLm1hcCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgICAgY29uc3QgbmV3Q3VycmVudFZlcnNpb24gPSByZXdyaXRlQ3VycmVudFZlcnNpb25JZkZvdW5kKGtleSlcbiAgICAgICAgICBpZiAobmV3Q3VycmVudFZlcnNpb24pIHtcbiAgICAgICAgICAgIHJldHVybiBbbmV3Q3VycmVudFZlcnNpb24sIHJlbW92ZUFzc2V0RGV0YWlsc0Zyb21UZW1wbGF0ZSh2YWx1ZSldXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChrZXkuaW5jbHVkZXMoXCJBc3NldFBhcmFtZXRlclwiKSkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAga2V5ID09PSBcIlJlZlwiICYmXG4gICAgICAgICAgICB0eXBlb2YgdmFsdWUgPT09IFwic3RyaW5nXCIgJiZcbiAgICAgICAgICAgIHZhbHVlLmluY2x1ZGVzKFwiQXNzZXRQYXJhbWV0ZXJzXCIpXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gW2tleSwgXCJzbmFwc2hvdC12YWx1ZVwiXVxuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBrZXkgPT09IFwiYXdzOmFzc2V0OnBhdGhcIiAmJlxuICAgICAgICAgICAgdHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiICYmXG4gICAgICAgICAgICAvYXNzZXRcXC5bMC05YS1mXXs2NH0vLnRlc3QodmFsdWUpXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gW2tleSwgXCJhc3NldC5zbmFwc2hvdC12YWx1ZVwiXVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gW2tleSwgcmVtb3ZlQXNzZXREZXRhaWxzRnJvbVRlbXBsYXRlKHZhbHVlKV1cbiAgICAgICAgfSlcbiAgICAgICAgLmZpbHRlcigoaXQpOiBpdCBpcyBbXSA9PiBpdCAhPSBudWxsKSxcbiAgICApXG4gIH1cblxuICBpZiAodHlwZW9mIGRhdGEgPT09IFwic3RyaW5nXCIpIHtcbiAgICBjb25zdCBuZXdDdXJyZW50VmVyc2lvbiA9IHJld3JpdGVDdXJyZW50VmVyc2lvbklmRm91bmQoZGF0YSlcbiAgICBpZiAobmV3Q3VycmVudFZlcnNpb24pIHtcbiAgICAgIHJldHVybiBuZXdDdXJyZW50VmVyc2lvblxuICAgIH1cblxuICAgIHJldHVybiBkYXRhXG4gICAgICAucmVwbGFjZShhc3NldENvbnRlbnRIYXNoUmVnZXgsIFwic25hcHNob3QtdmFsdWVcIilcbiAgICAgIC5yZXBsYWNlKHBpcGVsaW5lc0Fzc2V0SWRTdWZmaXhSZWdleCwgXCIkMXNuYXBzaG90LXZhbHVlXCIpXG4gIH1cblxuICByZXR1cm4gZGF0YVxufVxuXG5mdW5jdGlvbiByZW1vdmVBc3NldERldGFpbHNGcm9tTWFuaWZlc3QoZGF0YTogYW55KTogYW55IHtcbiAgaWYgKEFycmF5LmlzQXJyYXkoZGF0YSkpIHtcbiAgICByZXR1cm4gZGF0YS5tYXAocmVtb3ZlQXNzZXREZXRhaWxzRnJvbU1hbmlmZXN0KVxuICB9XG5cbiAgaWYgKGRhdGEgPT09IE9iamVjdChkYXRhKSkge1xuICAgIC8vIGF3czpjZGs6YXNzZXQgaW4gbWV0YWRhdGFcbiAgICBpZiAoZGF0YS50eXBlID09PSBcImF3czpjZGs6YXNzZXRcIiAmJiBcImRhdGFcIiBpbiBkYXRhKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5kYXRhLFxuICAgICAgICBkYXRhOiBcInNuYXBzaG90LXZhbHVlXCIsXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIE9iamVjdC5mcm9tRW50cmllcyhcbiAgICAgIE9iamVjdC5lbnRyaWVzKGRhdGEgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4pXG4gICAgICAgIC5tYXAoKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICAgIGlmIChrZXkuaW5jbHVkZXMoXCJBc3NldFBhcmFtZXRlcnNcIikpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBba2V5LCByZW1vdmVBc3NldERldGFpbHNGcm9tTWFuaWZlc3QodmFsdWUpXVxuICAgICAgICB9KVxuICAgICAgICAuZmlsdGVyKChpdCk6IGl0IGlzIFtdID0+IGl0ICE9IG51bGwpLFxuICAgIClcbiAgfVxuXG4gIGlmICh0eXBlb2YgZGF0YSA9PT0gXCJzdHJpbmdcIikge1xuICAgIGNvbnN0IG5ld0N1cnJlbnRWZXJzaW9uID0gcmV3cml0ZUN1cnJlbnRWZXJzaW9uSWZGb3VuZChkYXRhKVxuICAgIGlmIChuZXdDdXJyZW50VmVyc2lvbikge1xuICAgICAgcmV0dXJuIG5ld0N1cnJlbnRWZXJzaW9uXG4gICAgfVxuXG4gICAgcmV0dXJuIGRhdGFcbiAgICAgIC5yZXBsYWNlKGFzc2V0Q29udGVudEhhc2hSZWdleCwgXCJzbmFwc2hvdC12YWx1ZVwiKVxuICAgICAgLnJlcGxhY2UocGlwZWxpbmVzQXNzZXRJZFN1ZmZpeFJlZ2V4LCBcIiQxc25hcHNob3QtdmFsdWVcIilcbiAgfVxuXG4gIHJldHVybiBkYXRhXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBDREtNZXRhZGF0YSByZXNvdXJjZXMgdGhhdCBpcyBwYXJ0IG9mIHRoZSBzeW50aGVzaXplZFxuICogdGVtcGxhdGUgc2luY2UgQ0RLIDEuNjMuMC5cbiAqL1xuZnVuY3Rpb24gcmVtb3ZlQ2RrTWV0YWRhdGFSZXNvdXJjZUZyb21UZW1wbGF0ZShkYXRhOiBhbnkpOiBhbnkge1xuICBjb25zdCBjcCA9IHtcbiAgICAuLi5kYXRhLFxuICAgIFJlc291cmNlczoge1xuICAgICAgLi4uZGF0YS5SZXNvdXJjZXMsXG4gICAgfSxcbiAgfVxuXG4gIGRlbGV0ZSBjcC5SZXNvdXJjZXMuQ0RLTWV0YWRhdGFcbiAgcmV0dXJuIGNwXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwcmVwYXJlTWFuaWZlc3RGb3JTbmFwc2hvdChjb250ZW50OiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBpbnB1dCA9IEpTT04ucGFyc2UoY29udGVudClcbiAgY29uc3Qgb3V0cHV0ID0gW1xuICAgIHJlbW92ZVZlcnNpb24sXG4gICAgLy8gUmVtb3ZlIHRoZSBydW50aW1lIHZlcnNpb24gaW5mb3JtYXRpb24gc28gaXQgZG9uJ3QgY29uZmxpY3Qgd2l0aCBDSVxuICAgIC8vIG9yIG90aGVyIHVzZXJzIGdlbmVyYXRpbmcgdGhlIHNuYXBzaG90cy5cbiAgICByZW1vdmVSdW50aW1lTGlicmFyaWVzLFxuICAgIC8vIFJlbW92ZSB0aGUgdHJhY2UgZnJvbSBtYW5pZmVzdCBmb3Igbm93LlxuICAgIHJlbW92ZVRyYWNlLFxuICAgIC8vIEF2b2lkIGRldGFpbHMgKGhhc2hlcykgZnJvbSBhc3NldHMuXG4gICAgcmVtb3ZlQXNzZXREZXRhaWxzRnJvbU1hbmlmZXN0LFxuICBdLnJlZHVjZSgoYWNjLCBmbikgPT4gZm4oYWNjKSwgaW5wdXQpXG5cbiAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KG91dHB1dCwgdW5kZWZpbmVkLCBcIiAgXCIpXG59XG5cbi8qKlxuICogVHJhbnNmb3JtIHRoZSBDbG91ZCBBc3NlbWJseSBtYW5pZmVzdCBmaWxlIHNvIHRoYXQgaXQgY2FuIGJlIHBlcnNpc3RlZFxuICogYXMgYSBzbmFwc2hvdCB3aXRob3V0IGNhdXNpbmcgaW52YWxpZGF0aW9ucyBmb3IgZXZlcnkgc3ludGhlc2l6ZS5cbiAqL1xuYXN5bmMgZnVuY3Rpb24gcHJlcGFyZU1hbmlmZXN0RmlsZUZvclNuYXBzaG90KGZpbGU6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCByZXN1bHQgPSBwcmVwYXJlTWFuaWZlc3RGb3JTbmFwc2hvdChcbiAgICBhd2FpdCBmcy5wcm9taXNlcy5yZWFkRmlsZShmaWxlLCBcInV0ZjhcIiksXG4gIClcblxuICBhd2FpdCBmcy5wcm9taXNlcy53cml0ZUZpbGUoZmlsZSwgcmVzdWx0KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJlcGFyZVRlbXBsYXRlRm9yU25hcHNob3QoY29udGVudDogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgaW5wdXQgPSBKU09OLnBhcnNlKGNvbnRlbnQpXG4gIGNvbnN0IG91dHB1dCA9IFtcbiAgICByZW1vdmVDZGtNZXRhZGF0YVJlc291cmNlRnJvbVRlbXBsYXRlLFxuICAgIC8vIEF2b2lkIGRldGFpbHMgKGhhc2hlcykgZnJvbSBhc3NldHMuXG4gICAgcmVtb3ZlQXNzZXREZXRhaWxzRnJvbVRlbXBsYXRlLFxuICBdLnJlZHVjZSgoYWNjLCBmbikgPT4gZm4oYWNjKSwgaW5wdXQpXG5cbiAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KG91dHB1dCwgdW5kZWZpbmVkLCBcIiAgXCIpXG59XG5cbi8qKlxuICogVHJhbnNmb3JtIGEgQ2xvdWQgQXNzZW1ibHkgdGVtcGxhdGUgZmlsZSBzbyB0aGF0IGl0IGNhbiBiZSBwZXJzaXN0ZWRcbiAqIGFzIGEgc25hcHNob3Qgd2l0aG91dCBjYXVzaW5nIGludmFsaWRhdGlvbnMgZm9yIG1pbm9yIGNoYW5nZXMuXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIHByZXBhcmVUZW1wbGF0ZUZpbGVGb3JTbmFwc2hvdChmaWxlOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgcmVzdWx0ID0gcHJlcGFyZVRlbXBsYXRlRm9yU25hcHNob3QoXG4gICAgYXdhaXQgZnMucHJvbWlzZXMucmVhZEZpbGUoZmlsZSwgXCJ1dGY4XCIpLFxuICApXG5cbiAgYXdhaXQgZnMucHJvbWlzZXMud3JpdGVGaWxlKGZpbGUsIHJlc3VsdClcbn1cblxuLyoqXG4gKiBDb252ZXJ0IGEgQ2xvdWQgQXNzZW1ibHkgdG8gYSBzbmFwc2hvdC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNyZWF0ZUNsb3VkQXNzZW1ibHlTbmFwc2hvdChcbiAgc3JjOiBzdHJpbmcsXG4gIGRzdDogc3RyaW5nLFxuKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IGRlc3RBYnMgPSBwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgZHN0KVxuICBjb25zdCBzcmNBYnMgPSBwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgc3JjKVxuXG4gIC8vIENvcHkgYWxsIGZpbGVzIGZyb20gc3JjIChjZGsub3V0KSB0byBkZXN0IChfX3NuYXBzaG90c19fKVxuICBmcy5jcFN5bmMoc3JjQWJzLCBkZXN0QWJzLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KVxuXG4gIGNvbnN0IGV4cGFuZEdsb2IgPSAocGF0dGVybjogc3RyaW5nLCBjd2Q6IHN0cmluZyk6IHN0cmluZ1tdID0+IHtcbiAgICByZXR1cm4gZnMuZ2xvYlN5bmMocGF0dGVybiwgeyBjd2QgfSkubWFwKChwKSA9PiBwYXRoLmpvaW4oY3dkLCBwKSlcbiAgfVxuXG4gIGNvbnN0IGZpbGVzVG9EZWxldGUgPSBbXG4gICAgLy8gRG9uJ3Qga2VlcCB0cmFjayBvZiBtYW5pZmVzdCB2ZXJzaW9uLlxuICAgIFwiKiovY2RrLm91dFwiLFxuXG4gICAgLy8gVGhlIHRyZWUgZmlsZSBkb2Vzbid0IGdpdmUgdXMgbXVjaCB2YWx1ZSBhcyBwYXJ0IG9mIHRoZSBzbmFwc2hvdC5cbiAgICBcIioqL3RyZWUuanNvblwiLFxuXG4gICAgLy8gUmVtb3ZlIGFzc2V0IGNvbnRlbnRzIGZvciBub3cuXG4gICAgXCIqKi9hc3NldC4qXCIsXG5cbiAgICAvLyBSZW1vdmUgYXNzZXQgY29uZmlncyBzbyB3ZSBkb24ndCBoYXZlIHRvIHVwZGF0ZSBzbmFwc2hvdHMgZm9yIGFzc2V0IGNoYW5nZXMuXG4gICAgXCIqKi8qLmFzc2V0cy5qc29uXCIsXG5cbiAgICAvLyBSZW1vdmUgZ3JhcGh2aXogZmlsZXMgZ2VuZXJhdGVkIHdoZW4gdXNpbmcgQ0RLIFBpcGVsaW5lc1xuICAgIFwiKiovKi5kb3RcIixcbiAgXS5mbGF0TWFwKChnKSA9PiBleHBhbmRHbG9iKGcsIGRlc3RBYnMpKVxuXG4gIGF3YWl0IFByb21pc2UuYWxsKFxuICAgIGZpbGVzVG9EZWxldGUubWFwKChwKSA9PlxuICAgICAgZnMucHJvbWlzZXMucm0ocCwge1xuICAgICAgICByZWN1cnNpdmU6IHRydWUsXG4gICAgICAgIGZvcmNlOiB0cnVlLFxuICAgICAgfSksXG4gICAgKSxcbiAgKVxuXG4gIGNvbnN0IG1hbmlmZXN0RmlsZXMgPSBbXG4gICAgLy8gVHJhbnNmb3JtIHRoZSBtYW5pZmVzdCB0byBiZSBtb3JlIHNuYXBzaG90IGZyaWVuZGx5LlxuICAgIFwiKiovbWFuaWZlc3QuanNvblwiLFxuICBdLmZsYXRNYXAoKGcpID0+IGV4cGFuZEdsb2IoZywgZGVzdEFicykpXG5cbiAgZm9yIChjb25zdCBmaWxlIG9mIG1hbmlmZXN0RmlsZXMpIHtcbiAgICBhd2FpdCBwcmVwYXJlTWFuaWZlc3RGaWxlRm9yU25hcHNob3QoZmlsZSlcbiAgfVxuXG4gIGNvbnN0IHRlbXBsYXRlRmlsZXMgPSBbXG4gICAgLy8gVHJhbnNmb3JtIGFsbCB0ZW1wbGF0ZXMuXG4gICAgXCIqKi8qLnRlbXBsYXRlLmpzb25cIixcbiAgXS5mbGF0TWFwKChnKSA9PiBleHBhbmRHbG9iKGcsIGRlc3RBYnMpKVxuXG4gIGZvciAoY29uc3QgZmlsZSBvZiB0ZW1wbGF0ZUZpbGVzKSB7XG4gICAgYXdhaXQgcHJlcGFyZVRlbXBsYXRlRmlsZUZvclNuYXBzaG90KGZpbGUpXG4gIH1cbn1cbiJdfQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@liflig/cdk",
|
|
3
|
-
"version": "3.20.
|
|
3
|
+
"version": "3.20.8",
|
|
4
4
|
"description": "CDK library for Liflig",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"repository": {
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
"@aws-sdk/client-sfn": "3.981.0",
|
|
52
52
|
"@aws-sdk/client-ssm": "3.981.0",
|
|
53
53
|
"@aws-sdk/lib-storage": "3.981.0",
|
|
54
|
-
"@biomejs/biome": "2.3.
|
|
54
|
+
"@biomejs/biome": "2.3.14",
|
|
55
55
|
"@commitlint/cli": "20.4.1",
|
|
56
56
|
"@commitlint/config-conventional": "20.4.1",
|
|
57
57
|
"@types/aws-lambda": "8.10.160",
|