projalf 0.0.18 → 0.0.19
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 +4 -4
- package/lib/Projalf.js +41 -1
- package/package.json +1 -1
package/.jsii
CHANGED
|
@@ -119,7 +119,7 @@
|
|
|
119
119
|
},
|
|
120
120
|
"locationInModule": {
|
|
121
121
|
"filename": "src/Projalf.ts",
|
|
122
|
-
"line":
|
|
122
|
+
"line": 20
|
|
123
123
|
},
|
|
124
124
|
"parameters": [
|
|
125
125
|
{
|
|
@@ -133,7 +133,7 @@
|
|
|
133
133
|
"kind": "class",
|
|
134
134
|
"locationInModule": {
|
|
135
135
|
"filename": "src/Projalf.ts",
|
|
136
|
-
"line":
|
|
136
|
+
"line": 19
|
|
137
137
|
},
|
|
138
138
|
"name": "Projalf",
|
|
139
139
|
"symbolId": "src/Projalf:Projalf"
|
|
@@ -151,12 +151,12 @@
|
|
|
151
151
|
"kind": "interface",
|
|
152
152
|
"locationInModule": {
|
|
153
153
|
"filename": "src/Projalf.ts",
|
|
154
|
-
"line":
|
|
154
|
+
"line": 17
|
|
155
155
|
},
|
|
156
156
|
"name": "ProjalfOptions",
|
|
157
157
|
"symbolId": "src/Projalf:ProjalfOptions"
|
|
158
158
|
}
|
|
159
159
|
},
|
|
160
160
|
"version": "0.0.0",
|
|
161
|
-
"fingerprint": "
|
|
161
|
+
"fingerprint": "OYvVzk0E2eiCLBUA7FOXxjFTtXraRXLA3drom8k7kgg="
|
|
162
162
|
}
|
package/lib/Projalf.js
CHANGED
|
@@ -8,6 +8,15 @@ const path = require("path");
|
|
|
8
8
|
const projen_1 = require("projen");
|
|
9
9
|
const files_1 = require("./files");
|
|
10
10
|
const workflows_1 = require("./workflows");
|
|
11
|
+
const defaultJestConfig = {
|
|
12
|
+
preset: "ts-jest",
|
|
13
|
+
transform: {
|
|
14
|
+
"^.+\\.tsx?$": new projen_1.javascript.Transform("ts-jest", {
|
|
15
|
+
tsconfig: "tsconfig.dev.json",
|
|
16
|
+
}),
|
|
17
|
+
},
|
|
18
|
+
setupFilesAfterEnv: ["<rootDir>/test/setup.ts"],
|
|
19
|
+
};
|
|
11
20
|
class Projalf extends projen_1.awscdk.AwsCdkTypeScriptApp {
|
|
12
21
|
constructor(options) {
|
|
13
22
|
const inferredName = options.name ?? inferNameFromGit() ?? inferNameFromCwd();
|
|
@@ -50,12 +59,43 @@ class Projalf extends projen_1.awscdk.AwsCdkTypeScriptApp {
|
|
|
50
59
|
"@stylistic/quotes": ["error", "double", { avoidEscape: true }],
|
|
51
60
|
"@stylistic/semi": ["error", "never"],
|
|
52
61
|
"@stylistic/consistent-quotes": ["off"],
|
|
62
|
+
"@stylistic/member-delimiter-style": ["off"],
|
|
63
|
+
"@stylistic/comma-dangle": ["error", "always-multiline"],
|
|
53
64
|
});
|
|
54
65
|
(0, workflows_1.workflow)(this);
|
|
55
66
|
this.addTask("deploy:watch", {
|
|
56
67
|
exec: "cdk deploy --all --method=direct --outputs-file=test.output.json --watch --hotswap-fallback --require-approval=never",
|
|
57
68
|
receiveArgs: true,
|
|
58
69
|
});
|
|
70
|
+
this.addTask("test:e2e", {
|
|
71
|
+
exec: "jest --config jest.e2e.config.json --runInBand --passWithNoTests",
|
|
72
|
+
});
|
|
73
|
+
new projen_1.javascript.Jest(this, {
|
|
74
|
+
configFilePath: "jest.integ.config.json",
|
|
75
|
+
jestConfig: {
|
|
76
|
+
collectCoverage: false,
|
|
77
|
+
testMatch: [
|
|
78
|
+
"<rootDir>/test/integ/**/*(*.)@(spec|test).ts?(x)",
|
|
79
|
+
"<rootDir>/(test|src)/**/*(*.)@(integ).ts?(x)",
|
|
80
|
+
],
|
|
81
|
+
...defaultJestConfig,
|
|
82
|
+
},
|
|
83
|
+
});
|
|
84
|
+
new projen_1.javascript.Jest(this, {
|
|
85
|
+
configFilePath: "jest.e2e.config.json",
|
|
86
|
+
jestConfig: {
|
|
87
|
+
collectCoverage: false,
|
|
88
|
+
testMatch: [
|
|
89
|
+
"<rootDir>/test/e2e/**/*(*.)@(spec|test).ts?(x)",
|
|
90
|
+
"<rootDir>/(test|src)/**/*(*.)@(e2e).ts?(x)",
|
|
91
|
+
],
|
|
92
|
+
...defaultJestConfig,
|
|
93
|
+
},
|
|
94
|
+
});
|
|
95
|
+
new projen_1.SampleFile(this, "test/setup.ts", {
|
|
96
|
+
contents: `jest.setTimeout(10000)
|
|
97
|
+
`,
|
|
98
|
+
});
|
|
59
99
|
}
|
|
60
100
|
}
|
|
61
101
|
exports.Projalf = Projalf;
|
|
@@ -89,4 +129,4 @@ function toPascalCase(input) {
|
|
|
89
129
|
.map((part) => part.charAt(0).toUpperCase() + part.slice(1).toLowerCase())
|
|
90
130
|
.join("");
|
|
91
131
|
}
|
|
92
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvamFsZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Qcm9qYWxmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsb0NBQW1DO0FBQ25DLDZCQUE0QjtBQUM1QixtQ0FBMkM7QUFDM0MsbUNBQStCO0FBQy9CLDJDQUFzQztBQUl0QyxNQUFhLE9BQVEsU0FBUSxlQUFNLENBQUMsbUJBQW1CO0lBQ3JELFlBQVksT0FBdUI7UUFDakMsTUFBTSxZQUFZLEdBQ2hCLE9BQU8sQ0FBQyxJQUFJLElBQUksZ0JBQWdCLEVBQUUsSUFBSSxnQkFBZ0IsRUFBRSxDQUFBO1FBQzFELE1BQU0sU0FBUyxHQUFHLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUM1QyxNQUFNLFFBQVEsR0FBRyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUE7UUFFM0MsTUFBTSxhQUFhLEdBQUcsRUFBRSxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsRUFBeUIsQ0FBQTtRQUMzRSxJQUFJLGFBQWEsQ0FBQyxXQUFXLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDNUMsYUFBYSxDQUFDLFdBQVcsR0FBRyxZQUFZLENBQUE7UUFDMUMsQ0FBQztRQUVELEtBQUssQ0FBQztZQUNKLEdBQUcsT0FBTztZQUNWLElBQUksRUFBRSxZQUFZO1lBQ2xCLG9CQUFvQixFQUFFLE9BQU8sQ0FBQyxvQkFBb0IsSUFBSSxNQUFNO1lBQzVELGNBQWMsRUFDWixPQUFPLENBQUMsY0FBYyxJQUFJLG1CQUFVLENBQUMsa0JBQWtCLENBQUMsR0FBRztZQUM3RCxVQUFVLEVBQUUsT0FBTyxDQUFDLFVBQVUsSUFBSSxJQUFJO1lBQ3RDLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVSxJQUFJLFNBQVM7WUFDM0MsT0FBTyxFQUFFLGFBQWE7WUFDdEIsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJLElBQUksRUFBRTtZQUN4QixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU8sSUFBSSxFQUFFO1lBQzlCLGFBQWEsRUFBRSxLQUFLO1lBQ3BCLE9BQU8sRUFBRSxLQUFLO1lBQ2QsV0FBVyxFQUFFLEtBQUs7WUFDbEIsYUFBYSxFQUFFO2dCQUNiLGVBQWUsRUFBRSxLQUFLO2FBQ3ZCO1lBQ0QsYUFBYSxFQUFFLENBQUMsYUFBYSxFQUFFLGNBQWMsQ0FBQztZQUU5QyxlQUFlLEVBQUU7Z0JBQ2YsR0FBRyxPQUFPLENBQUMsZUFBZTtnQkFDMUIsUUFBUSxFQUFFO29CQUNSLElBQUksRUFBRSxLQUFLO29CQUNYLFVBQVUsRUFBRSxHQUFHO29CQUNmLFdBQVcsRUFBRSxLQUFLO29CQUNsQixHQUFHLE9BQU8sQ0FBQyxlQUFlLEVBQUUsUUFBUTtpQkFDckM7YUFDRjtTQUNGLENBQUMsQ0FBQTtRQUVGLElBQUksYUFBSyxDQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFBO1FBRWxELHdEQUF3RDtRQUN4RCxJQUFJLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQztZQUNwQixtQkFBbUIsRUFBRSxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFDL0QsaUJBQWlCLEVBQUUsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDO1lBQ3JDLDhCQUE4QixFQUFFLENBQUMsS0FBSyxDQUFDO1NBQ3hDLENBQUMsQ0FBQTtRQUVGLElBQUEsb0JBQVEsRUFBQyxJQUFJLENBQUMsQ0FBQTtRQUVkLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFO1lBQzNCLElBQUksRUFBRSxzSEFBc0g7WUFDNUgsV0FBVyxFQUFFLElBQUk7U0FDbEIsQ0FBQyxDQUFBO0lBQ0osQ0FBQzs7QUF6REgsMEJBMERDOzs7QUFFRCxTQUFTLGdCQUFnQjtJQUN2QixJQUFJLENBQUM7UUFDSCxNQUFNLE1BQU0sR0FBRyxFQUFFO2FBQ2QsUUFBUSxDQUFDLG9DQUFvQyxFQUFFO1lBQzlDLEtBQUssRUFBRSxDQUFDLFFBQVEsRUFBRSxNQUFNLEVBQUUsUUFBUSxDQUFDO1NBQ3BDLENBQUM7YUFDRCxRQUFRLEVBQUU7YUFDVixJQUFJLEVBQUUsQ0FBQTtRQUNULElBQUksQ0FBQyxNQUFNO1lBQUUsT0FBTyxTQUFTLENBQUE7UUFDN0IsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFBO1FBQ3BELE9BQU8sS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDbkIsQ0FBQztJQUFDLE1BQU0sQ0FBQztRQUNQLE9BQU8sU0FBUyxDQUFBO0lBQ2xCLENBQUM7QUFDSCxDQUFDO0FBRUQsU0FBUyxnQkFBZ0I7SUFDdkIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFBO0FBQ3JDLENBQUM7QUFFRCxTQUFTLFlBQVksQ0FBQyxLQUFhO0lBQ2pDLE9BQU8sS0FBSztTQUNULE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxHQUFHLENBQUM7U0FDOUIsS0FBSyxDQUFDLEdBQUcsQ0FBQztTQUNWLE1BQU0sQ0FBQyxPQUFPLENBQUM7U0FDZixHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUN6RSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUE7QUFDYixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY3AgZnJvbSBcImNoaWxkX3Byb2Nlc3NcIlxuaW1wb3J0ICogYXMgcGF0aCBmcm9tIFwicGF0aFwiXG5pbXBvcnQgeyBhd3NjZGssIGphdmFzY3JpcHQgfSBmcm9tIFwicHJvamVuXCJcbmltcG9ydCB7IEZpbGVzIH0gZnJvbSBcIi4vZmlsZXNcIlxuaW1wb3J0IHsgd29ya2Zsb3cgfSBmcm9tIFwiLi93b3JrZmxvd3NcIlxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2phbGZPcHRpb25zIGV4dGVuZHMgYXdzY2RrLkF3c0Nka1R5cGVTY3JpcHRBcHBPcHRpb25zIHt9XG5cbmV4cG9ydCBjbGFzcyBQcm9qYWxmIGV4dGVuZHMgYXdzY2RrLkF3c0Nka1R5cGVTY3JpcHRBcHAge1xuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBQcm9qYWxmT3B0aW9ucykge1xuICAgIGNvbnN0IGluZmVycmVkTmFtZSA9XG4gICAgICBvcHRpb25zLm5hbWUgPz8gaW5mZXJOYW1lRnJvbUdpdCgpID8/IGluZmVyTmFtZUZyb21Dd2QoKVxuICAgIGNvbnN0IGNsYXNzTmFtZSA9IHRvUGFzY2FsQ2FzZShpbmZlcnJlZE5hbWUpXG4gICAgY29uc3QgZmlsZUJhc2UgPSBpbmZlcnJlZE5hbWUudG9Mb3dlckNhc2UoKVxuXG4gICAgY29uc3QgbWVyZ2VkQ29udGV4dCA9IHsgLi4uKG9wdGlvbnMuY29udGV4dCA/PyB7fSkgfSBhcyBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4gICAgaWYgKG1lcmdlZENvbnRleHQuc2VydmljZU5hbWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgbWVyZ2VkQ29udGV4dC5zZXJ2aWNlTmFtZSA9IGluZmVycmVkTmFtZVxuICAgIH1cblxuICAgIHN1cGVyKHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBuYW1lOiBpbmZlcnJlZE5hbWUsXG4gICAgICBkZWZhdWx0UmVsZWFzZUJyYW5jaDogb3B0aW9ucy5kZWZhdWx0UmVsZWFzZUJyYW5jaCA/PyBcIm1haW5cIixcbiAgICAgIHBhY2thZ2VNYW5hZ2VyOlxuICAgICAgICBvcHRpb25zLnBhY2thZ2VNYW5hZ2VyID8/IGphdmFzY3JpcHQuTm9kZVBhY2thZ2VNYW5hZ2VyLk5QTSxcbiAgICAgIHByb2plbnJjVHM6IG9wdGlvbnMucHJvamVucmNUcyA/PyB0cnVlLFxuICAgICAgY2RrVmVyc2lvbjogb3B0aW9ucy5jZGtWZXJzaW9uID8/IFwiMi4xNTYuMFwiLFxuICAgICAgY29udGV4dDogbWVyZ2VkQ29udGV4dCxcbiAgICAgIGRlcHM6IG9wdGlvbnMuZGVwcyA/PyBbXSxcbiAgICAgIGRldkRlcHM6IG9wdGlvbnMuZGV2RGVwcyA/PyBbXSxcbiAgICAgIGJ1aWxkV29ya2Zsb3c6IGZhbHNlLFxuICAgICAgcmVsZWFzZTogZmFsc2UsXG4gICAgICBkZXBzVXBncmFkZTogZmFsc2UsXG4gICAgICBnaXRodWJPcHRpb25zOiB7XG4gICAgICAgIHB1bGxSZXF1ZXN0TGludDogZmFsc2UsXG4gICAgICB9LFxuICAgICAgd2F0Y2hJbmNsdWRlczogW1wic3JjLyoqLyoudHNcIiwgXCJzcmMvKiovKi50c3hcIl0sXG5cbiAgICAgIHByZXR0aWVyT3B0aW9uczoge1xuICAgICAgICAuLi5vcHRpb25zLnByZXR0aWVyT3B0aW9ucyxcbiAgICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgICBzZW1pOiBmYWxzZSxcbiAgICAgICAgICBwcmludFdpZHRoOiAxMDAsXG4gICAgICAgICAgc2luZ2xlUXVvdGU6IGZhbHNlLFxuICAgICAgICAgIC4uLm9wdGlvbnMucHJldHRpZXJPcHRpb25zPy5zZXR0aW5ncyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSlcblxuICAgIG5ldyBGaWxlcyh0aGlzLCBjbGFzc05hbWUsIGZpbGVCYXNlLCBpbmZlcnJlZE5hbWUpXG5cbiAgICAvLyBFbmZvcmNlIEVTTGludCBzdHlsZTogZG91YmxlIHF1b3RlcyBhbmQgbm8gc2VtaWNvbG9uc1xuICAgIHRoaXMuZXNsaW50Py5hZGRSdWxlcyh7XG4gICAgICBcIkBzdHlsaXN0aWMvcXVvdGVzXCI6IFtcImVycm9yXCIsIFwiZG91YmxlXCIsIHsgYXZvaWRFc2NhcGU6IHRydWUgfV0sXG4gICAgICBcIkBzdHlsaXN0aWMvc2VtaVwiOiBbXCJlcnJvclwiLCBcIm5ldmVyXCJdLFxuICAgICAgXCJAc3R5bGlzdGljL2NvbnNpc3RlbnQtcXVvdGVzXCI6IFtcIm9mZlwiXSxcbiAgICB9KVxuXG4gICAgd29ya2Zsb3codGhpcylcblxuICAgIHRoaXMuYWRkVGFzayhcImRlcGxveTp3YXRjaFwiLCB7XG4gICAgICBleGVjOiBcImNkayBkZXBsb3kgLS1hbGwgLS1tZXRob2Q9ZGlyZWN0IC0tb3V0cHV0cy1maWxlPXRlc3Qub3V0cHV0Lmpzb24gLS13YXRjaCAtLWhvdHN3YXAtZmFsbGJhY2sgLS1yZXF1aXJlLWFwcHJvdmFsPW5ldmVyXCIsXG4gICAgICByZWNlaXZlQXJnczogdHJ1ZSxcbiAgICB9KVxuICB9XG59XG5cbmZ1bmN0aW9uIGluZmVyTmFtZUZyb21HaXQoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgdHJ5IHtcbiAgICBjb25zdCByZW1vdGUgPSBjcFxuICAgICAgLmV4ZWNTeW5jKFwiZ2l0IGNvbmZpZyAtLWdldCByZW1vdGUub3JpZ2luLnVybFwiLCB7XG4gICAgICAgIHN0ZGlvOiBbXCJpZ25vcmVcIiwgXCJwaXBlXCIsIFwiaWdub3JlXCJdLFxuICAgICAgfSlcbiAgICAgIC50b1N0cmluZygpXG4gICAgICAudHJpbSgpXG4gICAgaWYgKCFyZW1vdGUpIHJldHVybiB1bmRlZmluZWRcbiAgICBjb25zdCBtYXRjaCA9IHJlbW90ZS5tYXRjaCgvXFwvKFteXFwvXSs/KSg/OlxcLmdpdCk/JC8pXG4gICAgcmV0dXJuIG1hdGNoPy5bMV1cbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZFxuICB9XG59XG5cbmZ1bmN0aW9uIGluZmVyTmFtZUZyb21Dd2QoKTogc3RyaW5nIHtcbiAgcmV0dXJuIHBhdGguYmFzZW5hbWUocHJvY2Vzcy5jd2QoKSlcbn1cblxuZnVuY3Rpb24gdG9QYXNjYWxDYXNlKGlucHV0OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gaW5wdXRcbiAgICAucmVwbGFjZSgvW15hLXpBLVowLTldKy9nLCBcIiBcIilcbiAgICAuc3BsaXQoXCIgXCIpXG4gICAgLmZpbHRlcihCb29sZWFuKVxuICAgIC5tYXAoKHBhcnQpID0+IHBhcnQuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyBwYXJ0LnNsaWNlKDEpLnRvTG93ZXJDYXNlKCkpXG4gICAgLmpvaW4oXCJcIilcbn1cbiJdfQ==
|
|
132
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvamFsZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Qcm9qYWxmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsb0NBQW1DO0FBQ25DLDZCQUE0QjtBQUM1QixtQ0FBdUQ7QUFDdkQsbUNBQStCO0FBQy9CLDJDQUFzQztBQUV0QyxNQUFNLGlCQUFpQixHQUFpQztJQUN0RCxNQUFNLEVBQUUsU0FBUztJQUNqQixTQUFTLEVBQUU7UUFDVCxhQUFhLEVBQUUsSUFBSSxtQkFBVSxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUU7WUFDakQsUUFBUSxFQUFFLG1CQUFtQjtTQUM5QixDQUFDO0tBQ0g7SUFDRCxrQkFBa0IsRUFBRSxDQUFDLHlCQUF5QixDQUFDO0NBQ2hELENBQUE7QUFJRCxNQUFhLE9BQVEsU0FBUSxlQUFNLENBQUMsbUJBQW1CO0lBQ3JELFlBQVksT0FBdUI7UUFDakMsTUFBTSxZQUFZLEdBQ2hCLE9BQU8sQ0FBQyxJQUFJLElBQUksZ0JBQWdCLEVBQUUsSUFBSSxnQkFBZ0IsRUFBRSxDQUFBO1FBQzFELE1BQU0sU0FBUyxHQUFHLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUM1QyxNQUFNLFFBQVEsR0FBRyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUE7UUFFM0MsTUFBTSxhQUFhLEdBQUcsRUFBRSxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsRUFBeUIsQ0FBQTtRQUMzRSxJQUFJLGFBQWEsQ0FBQyxXQUFXLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDNUMsYUFBYSxDQUFDLFdBQVcsR0FBRyxZQUFZLENBQUE7UUFDMUMsQ0FBQztRQUVELEtBQUssQ0FBQztZQUNKLEdBQUcsT0FBTztZQUNWLElBQUksRUFBRSxZQUFZO1lBQ2xCLG9CQUFvQixFQUFFLE9BQU8sQ0FBQyxvQkFBb0IsSUFBSSxNQUFNO1lBQzVELGNBQWMsRUFDWixPQUFPLENBQUMsY0FBYyxJQUFJLG1CQUFVLENB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Q0FBQTtRQUM3QixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLHdCQUF3QixDQUFDLENBQUE7UUFDcEQsT0FBTyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNuQixDQUFDO0lBQUMsTUFBTSxDQUFDO1FBQ1AsT0FBTyxTQUFTLENBQUE7SUFDbEIsQ0FBQztBQUNILENBQUM7QUFFRCxTQUFTLGdCQUFnQjtJQUN2QixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUE7QUFDckMsQ0FBQztBQUVELFNBQVMsWUFBWSxDQUFDLEtBQWE7SUFDakMsT0FBTyxLQUFLO1NBQ1QsT0FBTyxDQUFDLGdCQUFnQixFQUFFLEdBQUcsQ0FBQztTQUM5QixLQUFLLENBQUMsR0FBRyxDQUFDO1NBQ1YsTUFBTSxDQUFDLE9BQU8sQ0FBQztTQUNmLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3pFLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQTtBQUNiLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjcCBmcm9tIFwiY2hpbGRfcHJvY2Vzc1wiXG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gXCJwYXRoXCJcbmltcG9ydCB7IGF3c2NkaywgamF2YXNjcmlwdCwgU2FtcGxlRmlsZSB9IGZyb20gXCJwcm9qZW5cIlxuaW1wb3J0IHsgRmlsZXMgfSBmcm9tIFwiLi9maWxlc1wiXG5pbXBvcnQgeyB3b3JrZmxvdyB9IGZyb20gXCIuL3dvcmtmbG93c1wiXG5cbmNvbnN0IGRlZmF1bHRKZXN0Q29uZmlnOiBqYXZhc2NyaXB0Lkplc3RDb25maWdPcHRpb25zID0ge1xuICBwcmVzZXQ6IFwidHMtamVzdFwiLFxuICB0cmFuc2Zvcm06IHtcbiAgICBcIl4uK1xcXFwudHN4PyRcIjogbmV3IGphdmFzY3JpcHQuVHJhbnNmb3JtKFwidHMtamVzdFwiLCB7XG4gICAgICB0c2NvbmZpZzogXCJ0c2NvbmZpZy5kZXYuanNvblwiLFxuICAgIH0pLFxuICB9LFxuICBzZXR1cEZpbGVzQWZ0ZXJFbnY6IFtcIjxyb290RGlyPi90ZXN0L3NldHVwLnRzXCJdLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2phbGZPcHRpb25zIGV4dGVuZHMgYXdzY2RrLkF3c0Nka1R5cGVTY3JpcHRBcHBPcHRpb25zIHt9XG5cbmV4cG9ydCBjbGFzcyBQcm9qYWxmIGV4dGVuZHMgYXdzY2RrLkF3c0Nka1R5cGVTY3JpcHRBcHAge1xuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBQcm9qYWxmT3B0aW9ucykge1xuICAgIGNvbnN0IGluZmVycmVkTmFtZSA9XG4gICAgICBvcHRpb25zLm5hbWUgPz8gaW5mZXJOYW1lRnJvbUdpdCgpID8/IGluZmVyTmFtZUZyb21Dd2QoKVxuICAgIGNvbnN0IGNsYXNzTmFtZSA9IHRvUGFzY2FsQ2FzZShpbmZlcnJlZE5hbWUpXG4gICAgY29uc3QgZmlsZUJhc2UgPSBpbmZlcnJlZE5hbWUudG9Mb3dlckNhc2UoKVxuXG4gICAgY29uc3QgbWVyZ2VkQ29udGV4dCA9IHsgLi4uKG9wdGlvbnMuY29udGV4dCA/PyB7fSkgfSBhcyBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4gICAgaWYgKG1lcmdlZENvbnRleHQuc2VydmljZU5hbWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgbWVyZ2VkQ29udGV4dC5zZXJ2aWNlTmFtZSA9IGluZmVycmVkTmFtZVxuICAgIH1cblxuICAgIHN1cGVyKHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBuYW1lOiBpbmZlcnJlZE5hbWUsXG4gICAgICBkZWZhdWx0UmVsZWFzZUJyYW5jaDogb3B0aW9ucy5kZWZhdWx0UmVsZWFzZUJyYW5jaCA/PyBcIm1haW5cIixcbiAgICAgIHBhY2thZ2VNYW5hZ2VyOlxuICAgICAgICBvcHRpb25zLnBhY2thZ2VNYW5hZ2VyID8/IGphdmFzY3JpcHQuTm9kZVBhY2thZ2VNYW5hZ2VyLk5QTSxcbiAgICAgIHByb2plbnJjVHM6IG9wdGlvbnMucHJvamVucmNUcyA/PyB0cnVlLFxuICAgICAgY2RrVmVyc2lvbjogb3B0aW9ucy5jZGtWZXJzaW9uID8/IFwiMi4xNTYuMFwiLFxuICAgICAgY29udGV4dDogbWVyZ2VkQ29udGV4dCxcbiAgICAgIGRlcHM6IG9wdGlvbnMuZGVwcyA/PyBbXSxcbiAgICAgIGRldkRlcHM6IG9wdGlvbnMuZGV2RGVwcyA/PyBbXSxcbiAgICAgIGJ1aWxkV29ya2Zsb3c6IGZhbHNlLFxuICAgICAgcmVsZWFzZTogZmFsc2UsXG4gICAgICBkZXBzVXBncmFkZTogZmFsc2UsXG4gICAgICBnaXRodWJPcHRpb25zOiB7XG4gICAgICAgIHB1bGxSZXF1ZXN0TGludDogZmFsc2UsXG4gICAgICB9LFxuICAgICAgd2F0Y2hJbmNsdWRlczogW1wic3JjLyoqLyoudHNcIiwgXCJzcmMvKiovKi50c3hcIl0sXG5cbiAgICAgIHByZXR0aWVyT3B0aW9uczoge1xuICAgICAgICAuLi5vcHRpb25zLnByZXR0aWVyT3B0aW9ucyxcbiAgICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgICBzZW1pOiBmYWxzZSxcbiAgICAgICAgICBwcmludFdpZHRoOiAxMDAsXG4gICAgICAgICAgc2luZ2xlUXVvdGU6IGZhbHNlLFxuICAgICAgICAgIC4uLm9wdGlvbnMucHJldHRpZXJPcHRpb25zPy5zZXR0aW5ncyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSlcblxuICAgIG5ldyBGaWxlcyh0aGlzLCBjbGFzc05hbWUsIGZpbGVCYXNlLCBpbmZlcnJlZE5hbWUpXG5cbiAgICAvLyBFbmZvcmNlIEVTTGludCBzdHlsZTogZG91YmxlIHF1b3RlcyBhbmQgbm8gc2VtaWNvbG9uc1xuICAgIHRoaXMuZXNsaW50Py5hZGRSdWxlcyh7XG4gICAgICBcIkBzdHlsaXN0aWMvcXVvdGVzXCI6IFtcImVycm9yXCIsIFwiZG91YmxlXCIsIHsgYXZvaWRFc2NhcGU6IHRydWUgfV0sXG4gICAgICBcIkBzdHlsaXN0aWMvc2VtaVwiOiBbXCJlcnJvclwiLCBcIm5ldmVyXCJdLFxuICAgICAgXCJAc3R5bGlzdGljL2NvbnNpc3RlbnQtcXVvdGVzXCI6IFtcIm9mZlwiXSxcbiAgICAgIFwiQHN0eWxpc3RpYy9tZW1iZXItZGVsaW1pdGVyLXN0eWxlXCI6IFtcIm9mZlwiXSxcbiAgICAgIFwiQHN0eWxpc3RpYy9jb21tYS1kYW5nbGVcIjogW1wiZXJyb3JcIiwgXCJhbHdheXMtbXVsdGlsaW5lXCJdLFxuICAgIH0pXG5cbiAgICB3b3JrZmxvdyh0aGlzKVxuXG4gICAgdGhpcy5hZGRUYXNrKFwiZGVwbG95OndhdGNoXCIsIHtcbiAgICAgIGV4ZWM6IFwiY2RrIGRlcGxveSAtLWFsbCAtLW1ldGhvZD1kaXJlY3QgLS1vdXRwdXRzLWZpbGU9dGVzdC5vdXRwdXQuanNvbiAtLXdhdGNoIC0taG90c3dhcC1mYWxsYmFjayAtLXJlcXVpcmUtYXBwcm92YWw9bmV2ZXJcIixcbiAgICAgIHJlY2VpdmVBcmdzOiB0cnVlLFxuICAgIH0pXG4gICAgdGhpcy5hZGRUYXNrKFwidGVzdDplMmVcIiwge1xuICAgICAgZXhlYzogXCJqZXN0IC0tY29uZmlnIGplc3QuZTJlLmNvbmZpZy5qc29uIC0tcnVuSW5CYW5kIC0tcGFzc1dpdGhOb1Rlc3RzXCIsXG4gICAgfSlcblxuICAgIG5ldyBqYXZhc2NyaXB0Lkplc3QodGhpcywge1xuICAgICAgY29uZmlnRmlsZVBhdGg6IFwiamVzdC5pbnRlZy5jb25maWcuanNvblwiLFxuICAgICAgamVzdENvbmZpZzoge1xuICAgICAgICBjb2xsZWN0Q292ZXJhZ2U6IGZhbHNlLFxuICAgICAgICB0ZXN0TWF0Y2g6IFtcbiAgICAgICAgICBcIjxyb290RGlyPi90ZXN0L2ludGVnLyoqLyooKi4pQChzcGVjfHRlc3QpLnRzPyh4KVwiLFxuICAgICAgICAgIFwiPHJvb3REaXI+Lyh0ZXN0fHNyYykvKiovKigqLilAKGludGVnKS50cz8oeClcIixcbiAgICAgICAgXSxcbiAgICAgICAgLi4uZGVmYXVsdEplc3RDb25maWcsXG4gICAgICB9LFxuICAgIH0pXG5cbiAgICBuZXcgamF2YXNjcmlwdC5KZXN0KHRoaXMsIHtcbiAgICAgIGNvbmZpZ0ZpbGVQYXRoOiBcImplc3QuZTJlLmNvbmZpZy5qc29uXCIsXG4gICAgICBqZXN0Q29uZmlnOiB7XG4gICAgICAgIGNvbGxlY3RDb3ZlcmFnZTogZmFsc2UsXG4gICAgICAgIHRlc3RNYXRjaDogW1xuICAgICAgICAgIFwiPHJvb3REaXI+L3Rlc3QvZTJlLyoqLyooKi4pQChzcGVjfHRlc3QpLnRzPyh4KVwiLFxuICAgICAgICAgIFwiPHJvb3REaXI+Lyh0ZXN0fHNyYykvKiovKigqLilAKGUyZSkudHM/KHgpXCIsXG4gICAgICAgIF0sXG4gICAgICAgIC4uLmRlZmF1bHRKZXN0Q29uZmlnLFxuICAgICAgfSxcbiAgICB9KVxuXG4gICAgbmV3IFNhbXBsZUZpbGUodGhpcywgXCJ0ZXN0L3NldHVwLnRzXCIsIHtcbiAgICAgIGNvbnRlbnRzOiBgamVzdC5zZXRUaW1lb3V0KDEwMDAwKVxuYCxcbiAgICB9KVxuICB9XG59XG5cbmZ1bmN0aW9uIGluZmVyTmFtZUZyb21HaXQoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgdHJ5IHtcbiAgICBjb25zdCByZW1vdGUgPSBjcFxuICAgICAgLmV4ZWNTeW5jKFwiZ2l0IGNvbmZpZyAtLWdldCByZW1vdGUub3JpZ2luLnVybFwiLCB7XG4gICAgICAgIHN0ZGlvOiBbXCJpZ25vcmVcIiwgXCJwaXBlXCIsIFwiaWdub3JlXCJdLFxuICAgICAgfSlcbiAgICAgIC50b1N0cmluZygpXG4gICAgICAudHJpbSgpXG4gICAgaWYgKCFyZW1vdGUpIHJldHVybiB1bmRlZmluZWRcbiAgICBjb25zdCBtYXRjaCA9IHJlbW90ZS5tYXRjaCgvXFwvKFteXFwvXSs/KSg/OlxcLmdpdCk/JC8pXG4gICAgcmV0dXJuIG1hdGNoPy5bMV1cbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZFxuICB9XG59XG5cbmZ1bmN0aW9uIGluZmVyTmFtZUZyb21Dd2QoKTogc3RyaW5nIHtcbiAgcmV0dXJuIHBhdGguYmFzZW5hbWUocHJvY2Vzcy5jd2QoKSlcbn1cblxuZnVuY3Rpb24gdG9QYXNjYWxDYXNlKGlucHV0OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gaW5wdXRcbiAgICAucmVwbGFjZSgvW15hLXpBLVowLTldKy9nLCBcIiBcIilcbiAgICAuc3BsaXQoXCIgXCIpXG4gICAgLmZpbHRlcihCb29sZWFuKVxuICAgIC5tYXAoKHBhcnQpID0+IHBhcnQuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyBwYXJ0LnNsaWNlKDEpLnRvTG93ZXJDYXNlKCkpXG4gICAgLmpvaW4oXCJcIilcbn1cbiJdfQ==
|