cdk8s-cli 2.199.0 → 2.200.0
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/cli/cmds/import.js +18 -15
- package/lib/config.d.ts +1 -0
- package/lib/config.js +1 -1
- package/package.json +1 -1
package/lib/cli/cmds/import.js
CHANGED
|
@@ -12,20 +12,23 @@ class Command {
|
|
|
12
12
|
this.command = 'import [SPEC]';
|
|
13
13
|
this.describe = 'Imports API objects to your app by generating constructs.';
|
|
14
14
|
this.aliases = ['gen', 'import', 'generate'];
|
|
15
|
-
this.builder = (args) =>
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
15
|
+
this.builder = (args) => {
|
|
16
|
+
var _a;
|
|
17
|
+
return args
|
|
18
|
+
.positional('SPEC', { default: config === null || config === void 0 ? void 0 : config.imports, desc: 'import spec with the syntax [NAME:=]SPEC where NAME is an optional module name and supported SPEC are: k8s, crd.yaml, https://domain/crd.yaml, github:account/repo[@VERSION]).', array: true })
|
|
19
|
+
.example('cdk8s import k8s', `Imports Kubernetes API objects to imports/k8s.ts. Defaults to ${k8s_1.DEFAULT_API_VERSION}`)
|
|
20
|
+
.example('cdk8s import k8s --no-class-prefix', 'Imports Kubernetes API objects without the "Kube" prefix')
|
|
21
|
+
.example('cdk8s import k8s@1.13.0', 'Imports a specific version of the Kubernetes API')
|
|
22
|
+
.example('cdk8s import jenkins.io_jenkins_crd.yaml', 'Imports constructs for the Jenkins custom resource definition from a file')
|
|
23
|
+
.example('cdk8s import mattermost:=mattermost_crd.yaml', 'Imports constructs for the mattermost cluster custom resource definition using a custom module name')
|
|
24
|
+
.example('cdk8s import github:crossplane/crossplane@0.14.0', 'Imports constructs for a GitHub repo using doc.crds.dev')
|
|
25
|
+
.example('cdk8s import helm:https://charts.bitnami.com/bitnami/mysql@9.10.10', 'Imports the specified version of helm chart')
|
|
26
|
+
.option('save', { type: 'boolean', required: false, default: true, desc: "Dont save the import URL in the 'imports' section of the cdk8s.yaml configuration file.", alias: 's' })
|
|
27
|
+
.option('output', { default: (_a = config === null || config === void 0 ? void 0 : config.importDirectory) !== null && _a !== void 0 ? _a : DEFAULT_OUTDIR, type: 'string', desc: 'Output directory', alias: 'o' })
|
|
28
|
+
.option('exclude', { type: 'array', desc: 'Do not import types that match these regular expressions. They will be represented as the "any" type (only for "k8s")' })
|
|
29
|
+
.option('class-prefix', { type: 'string', desc: 'A prefix to add to all generated class names. By default, this is "Kube" for "k8s" imports and disabled for CRD imports. Use --no-class-prefix to disable. Must be PascalCase' })
|
|
30
|
+
.option('language', { default: config === null || config === void 0 ? void 0 : config.language, demand: true, type: 'string', desc: 'Output programming language', alias: 'l', choices: LANGUAGES });
|
|
31
|
+
};
|
|
29
32
|
}
|
|
30
33
|
async handler(argv) {
|
|
31
34
|
const classNamePrefix = argv.classPrefix === false ? '' : argv.classPrefix;
|
|
@@ -40,4 +43,4 @@ class Command {
|
|
|
40
43
|
}
|
|
41
44
|
}
|
|
42
45
|
module.exports = new Command();
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NsaS9jbWRzL2ltcG9ydC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUNBLHlDQUEwRDtBQUMxRCxvREFBdUQ7QUFDdkQsMENBQXVEO0FBQ3ZELHFDQUEwQztBQUUxQyxNQUFNLE1BQU0sR0FBRyxJQUFBLHVCQUFjLEdBQUUsQ0FBQztBQUVoQyxNQUFNLGNBQWMsR0FBRyxTQUFTLENBQUM7QUFDakMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFFbkUsTUFBTSxPQUFPO0lBQWI7UUFDa0IsWUFBTyxHQUFHLGVBQWUsQ0FBQztRQUMxQixhQUFRLEdBQUcsMkRBQTJELENBQUM7UUFDdkUsWUFBTyxHQUFHLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUV4QyxZQUFPLEdBQUcsQ0FBQyxJQUFnQixFQUFFLEVBQUU7O1lBQUMsT0FBQSxJQUFJO2lCQUNqRCxVQUFVLENBQUMsTUFBTSxFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLGdMQUFnTCxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQztpQkFDclAsT0FBTyxDQUFDLGtCQUFrQixFQUFFLGlFQUFpRSx5QkFBbUIsRUFBRSxDQUFDO2lCQUNuSCxPQUFPLENBQUMsb0NBQW9DLEVBQUUsMERBQTBELENBQUM7aUJBQ3pHLE9BQU8sQ0FBQyx5QkFBeUIsRUFBRSxrREFBa0QsQ0FBQztpQkFDdEYsT0FBTyxDQUFDLDBDQUEwQyxFQUFFLDJFQUEyRSxDQUFDO2lCQUNoSSxPQUFPLENBQUMsOENBQThDLEVBQUUscUdBQXFHLENBQUM7aUJBQzlKLE9BQU8sQ0FBQyxrREFBa0QsRUFBRSx5REFBeUQsQ0FBQztpQkFDdEgsT0FBTyxDQUFDLG9FQUFvRSxFQUFFLDZDQUE2QyxDQUFDO2lCQUU1SCxNQUFNLENBQUMsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLHlGQUF5RixFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQztpQkFDaEwsTUFBTSxDQUFDLFFBQVEsRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxlQUFlLG1DQUFJLGNBQWMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxrQkFBa0IsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUM7aUJBQzlILE1BQU0sQ0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSx1SEFBdUgsRUFBRSxDQUFDO2lCQUNuSyxNQUFNLENBQUMsY0FBYyxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsK0tBQStLLEVBQUUsQ0FBQztpQkFDak8sTUFBTSxDQUFDLFVBQVUsRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsNkJBQTZCLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQTtTQUFBLENBQUM7SUFjMUosQ0FBQztJQVpRLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBUztRQUM1QixNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsV0FBVyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBQzNFLE1BQU0sT0FBTyxHQUFhLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3RSxNQUFNLEtBQUssR0FBaUIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsbUJBQVksQ0FBQyxDQUFDO1FBRW5GLE1BQU0sSUFBQSx5QkFBYyxFQUFDLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDaEMsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1lBQ25CLGNBQWMsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUM3QixlQUFlO1lBQ2YsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1NBQ2hCLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQUVELE1BQU0sQ0FBQyxPQUFPLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHlhcmdzIGZyb20gJ3lhcmdzJztcbmltcG9ydCB7IHJlYWRDb25maWdTeW5jLCBJbXBvcnRTcGVjIH0gZnJvbSAnLi4vLi4vY29uZmlnJztcbmltcG9ydCB7IGltcG9ydERpc3BhdGNoIH0gZnJvbSAnLi4vLi4vaW1wb3J0L2Rpc3BhdGNoJztcbmltcG9ydCB7IERFRkFVTFRfQVBJX1ZFUlNJT04gfSBmcm9tICcuLi8uLi9pbXBvcnQvazhzJztcbmltcG9ydCB7IHBhcnNlSW1wb3J0cyB9IGZyb20gJy4uLy4uL3V0aWwnO1xuXG5jb25zdCBjb25maWcgPSByZWFkQ29uZmlnU3luYygpO1xuXG5jb25zdCBERUZBVUxUX09VVERJUiA9ICdpbXBvcnRzJztcbmNvbnN0IExBTkdVQUdFUyA9IFsnY3NoYXJwJywgJ3R5cGVzY3JpcHQnLCAncHl0aG9uJywgJ2phdmEnLCAnZ28nXTtcblxuY2xhc3MgQ29tbWFuZCBpbXBsZW1lbnRzIHlhcmdzLkNvbW1hbmRNb2R1bGUge1xuICBwdWJsaWMgcmVhZG9ubHkgY29tbWFuZCA9ICdpbXBvcnQgW1NQRUNdJztcbiAgcHVibGljIHJlYWRvbmx5IGRlc2NyaWJlID0gJ0ltcG9ydHMgQVBJIG9iamVjdHMgdG8geW91ciBhcHAgYnkgZ2VuZXJhdGluZyBjb25zdHJ1Y3RzLic7XG4gIHB1YmxpYyByZWFkb25seSBhbGlhc2VzID0gWydnZW4nLCAnaW1wb3J0JywgJ2dlbmVyYXRlJ107XG5cbiAgcHVibGljIHJlYWRvbmx5IGJ1aWxkZXIgPSAoYXJnczogeWFyZ3MuQXJndikgPT4gYXJnc1xuICAgIC5wb3NpdGlvbmFsKCdTUEVDJywgeyBkZWZhdWx0OiBjb25maWc/LmltcG9ydHMsIGRlc2M6ICdpbXBvcnQgc3BlYyB3aXRoIHRoZSBzeW50YXggW05BTUU6PV1TUEVDIHdoZXJlIE5BTUUgaXMgYW4gb3B0aW9uYWwgbW9kdWxlIG5hbWUgYW5kIHN1cHBvcnRlZCBTUEVDIGFyZTogazhzLCBjcmQueWFtbCwgaHR0cHM6Ly9kb21haW4vY3JkLnlhbWwsIGdpdGh1YjphY2NvdW50L3JlcG9bQFZFUlNJT05dKS4nLCBhcnJheTogdHJ1ZSB9KVxuICAgIC5leGFtcGxlKCdjZGs4cyBpbXBvcnQgazhzJywgYEltcG9ydHMgS3ViZXJuZXRlcyBBUEkgb2JqZWN0cyB0byBpbXBvcnRzL2s4cy50cy4gRGVmYXVsdHMgdG8gJHtERUZBVUxUX0FQSV9WRVJTSU9OfWApXG4gICAgLmV4YW1wbGUoJ2NkazhzIGltcG9ydCBrOHMgLS1uby1jbGFzcy1wcmVmaXgnLCAnSW1wb3J0cyBLdWJlcm5ldGVzIEFQSSBvYmplY3RzIHdpdGhvdXQgdGhlIFwiS3ViZVwiIHByZWZpeCcpXG4gICAgLmV4YW1wbGUoJ2NkazhzIGltcG9ydCBrOHNAMS4xMy4wJywgJ0ltcG9ydHMgYSBzcGVjaWZpYyB2ZXJzaW9uIG9mIHRoZSBLdWJlcm5ldGVzIEFQSScpXG4gICAgLmV4YW1wbGUoJ2NkazhzIGltcG9ydCBqZW5raW5zLmlvX2plbmtpbnNfY3JkLnlhbWwnLCAnSW1wb3J0cyBjb25zdHJ1Y3RzIGZvciB0aGUgSmVua2lucyBjdXN0b20gcmVzb3VyY2UgZGVmaW5pdGlvbiBmcm9tIGEgZmlsZScpXG4gICAgLmV4YW1wbGUoJ2NkazhzIGltcG9ydCBtYXR0ZXJtb3N0Oj1tYXR0ZXJtb3N0X2NyZC55YW1sJywgJ0ltcG9ydHMgY29uc3RydWN0cyBmb3IgdGhlIG1hdHRlcm1vc3QgY2x1c3RlciBjdXN0b20gcmVzb3VyY2UgZGVmaW5pdGlvbiB1c2luZyBhIGN1c3RvbSBtb2R1bGUgbmFtZScpXG4gICAgLmV4YW1wbGUoJ2NkazhzIGltcG9ydCBnaXRodWI6Y3Jvc3NwbGFuZS9jcm9zc3BsYW5lQDAuMTQuMCcsICdJbXBvcnRzIGNvbnN0cnVjdHMgZm9yIGEgR2l0SHViIHJlcG8gdXNpbmcgZG9jLmNyZHMuZGV2JylcbiAgICAuZXhhbXBsZSgnY2RrOHMgaW1wb3J0IGhlbG06aHR0cHM6Ly9jaGFydHMuYml0bmFtaS5jb20vYml0bmFtaS9teXNxbEA5LjEwLjEwJywgJ0ltcG9ydHMgdGhlIHNwZWNpZmllZCB2ZXJzaW9uIG9mIGhlbG0gY2hhcnQnKVxuXG4gICAgLm9wdGlvbignc2F2ZScsIHsgdHlwZTogJ2Jvb2xlYW4nLCByZXF1aXJlZDogZmFsc2UsIGRlZmF1bHQ6IHRydWUsIGRlc2M6IFwiRG9udCBzYXZlIHRoZSBpbXBvcnQgVVJMIGluIHRoZSAnaW1wb3J0cycgc2VjdGlvbiBvZiB0aGUgY2RrOHMueWFtbCBjb25maWd1cmF0aW9uIGZpbGUuXCIsIGFsaWFzOiAncycgfSlcbiAgICAub3B0aW9uKCdvdXRwdXQnLCB7IGRlZmF1bHQ6IGNvbmZpZz8uaW1wb3J0RGlyZWN0b3J5ID8/IERFRkFVTFRfT1VURElSLCB0eXBlOiAnc3RyaW5nJywgZGVzYzogJ091dHB1dCBkaXJlY3RvcnknLCBhbGlhczogJ28nIH0pXG4gICAgLm9wdGlvbignZXhjbHVkZScsIHsgdHlwZTogJ2FycmF5JywgZGVzYzogJ0RvIG5vdCBpbXBvcnQgdHlwZXMgdGhhdCBtYXRjaCB0aGVzZSByZWd1bGFyIGV4cHJlc3Npb25zLiBUaGV5IHdpbGwgYmUgcmVwcmVzZW50ZWQgYXMgdGhlIFwiYW55XCIgdHlwZSAob25seSBmb3IgXCJrOHNcIiknIH0pXG4gICAgLm9wdGlvbignY2xhc3MtcHJlZml4JywgeyB0eXBlOiAnc3RyaW5nJywgZGVzYzogJ0EgcHJlZml4IHRvIGFkZCB0byBhbGwgZ2VuZXJhdGVkIGNsYXNzIG5hbWVzLiBCeSBkZWZhdWx0LCB0aGlzIGlzIFwiS3ViZVwiIGZvciBcIms4c1wiIGltcG9ydHMgYW5kIGRpc2FibGVkIGZvciBDUkQgaW1wb3J0cy4gVXNlIC0tbm8tY2xhc3MtcHJlZml4IHRvIGRpc2FibGUuIE11c3QgYmUgUGFzY2FsQ2FzZScgfSlcbiAgICAub3B0aW9uKCdsYW5ndWFnZScsIHsgZGVmYXVsdDogY29uZmlnPy5sYW5ndWFnZSwgZGVtYW5kOiB0cnVlLCB0eXBlOiAnc3RyaW5nJywgZGVzYzogJ091dHB1dCBwcm9ncmFtbWluZyBsYW5ndWFnZScsIGFsaWFzOiAnbCcsIGNob2ljZXM6IExBTkdVQUdFUyB9KTtcblxuICBwdWJsaWMgYXN5bmMgaGFuZGxlcihhcmd2OiBhbnkpIHtcbiAgICBjb25zdCBjbGFzc05hbWVQcmVmaXggPSBhcmd2LmNsYXNzUHJlZml4ID09PSBmYWxzZSA/ICcnIDogYXJndi5jbGFzc1ByZWZpeDtcbiAgICBjb25zdCBpbXBvcnRzOiBzdHJpbmdbXSA9IEFycmF5LmlzQXJyYXkoYXJndi5zcGVjKSA/IGFyZ3Yuc3BlYyA6IFthcmd2LnNwZWNdO1xuICAgIGNvbnN0IHNwZWNzOiBJbXBvcnRTcGVjW10gPSBpbXBvcnRzLmZpbHRlcihzcGVjID0+IHNwZWMgIT0gbnVsbCkubWFwKHBhcnNlSW1wb3J0cyk7XG5cbiAgICBhd2FpdCBpbXBvcnREaXNwYXRjaChzcGVjcywgYXJndiwge1xuICAgICAgb3V0ZGlyOiBhcmd2Lm91dHB1dCxcbiAgICAgIHRhcmdldExhbmd1YWdlOiBhcmd2Lmxhbmd1YWdlLFxuICAgICAgY2xhc3NOYW1lUHJlZml4LFxuICAgICAgc2F2ZTogYXJndi5zYXZlLFxuICAgIH0pO1xuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0gbmV3IENvbW1hbmQoKTtcbiJdfQ==
|
package/lib/config.d.ts
CHANGED
|
@@ -31,6 +31,7 @@ export interface Config {
|
|
|
31
31
|
readonly app?: string;
|
|
32
32
|
readonly language?: Language;
|
|
33
33
|
readonly output?: string;
|
|
34
|
+
readonly importDirectory?: string;
|
|
34
35
|
readonly imports?: string[];
|
|
35
36
|
readonly pluginsDirectory?: string;
|
|
36
37
|
readonly validations?: string | ValidationConfig[];
|
package/lib/config.js
CHANGED
|
@@ -66,4 +66,4 @@ async function addImportToConfig(source) {
|
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
68
|
exports.addImportToConfig = addImportToConfig;
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZDQUErQjtBQUMvQiwyQ0FBNkI7QUFHN0IsTUFBTSxXQUFXLEdBQUcsWUFBWSxDQUFDO0FBZWpDLElBQVksZUFHWDtBQUhELFdBQVksZUFBZTtJQUN6QixrQ0FBZSxDQUFBO0lBQ2YsZ0NBQWEsQ0FBQTtBQUNmLENBQUMsRUFIVyxlQUFlLEdBQWYsdUJBQWUsS0FBZix1QkFBZSxRQUcxQjtBQUVELElBQVksbUJBR1g7QUFIRCxXQUFZLG1CQUFtQjtJQUM3QixnQ0FBUyxDQUFBO0lBQ1QsZ0NBQVMsQ0FBQTtBQUNYLENBQUMsRUFIVyxtQkFBbUIsR0FBbkIsMkJBQW1CLEtBQW5CLDJCQUFtQixRQUc5QjtBQW1CRCxTQUFnQixjQUFjO0lBQzVCLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsRUFBRTtRQUM5QixNQUFNLE1BQU0sR0FBRztZQUNiLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsQ0FBQztTQUNyRCxDQUFDO1FBRUYsT0FBTyxNQUFNLENBQUM7S0FDZjtJQUVELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUM7QUFWRCx3Q0FVQztBQUVNLEtBQUssVUFBVSxpQkFBaUIsQ0FBQyxNQUFjOztJQUVwRCxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsRUFBRTtRQUMvQix1RkFBdUY7UUFDdkYsT0FBTztLQUNSO0lBRUQsSUFBSSxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBRWxFLE1BQU0sVUFBVSxHQUFHLE1BQUEsU0FBUyxDQUFDLE9BQU8sbUNBQUksRUFBRSxDQUFDO0lBQzNDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQ2hDLE1BQU0sV0FBVyxHQUFHLE1BQUEsU0FBUyxDQUFDLE9BQU8sbUNBQUksRUFBRSxDQUFDO1FBQzVDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDekIsSUFBSSxNQUFNLEdBQUc7WUFDWCxHQUFHLFNBQVM7WUFDWixPQUFPLEVBQUUsV0FBVztTQUNyQixDQUFDO1FBQ0YsTUFBTSxFQUFFLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7S0FDMUQ7QUFDSCxDQUFDO0FBbkJELDhDQW1CQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzLWV4dHJhJztcbmltcG9ydCAqIGFzIHlhbWwgZnJvbSAneWFtbCc7XG5pbXBvcnQgeyBMYW5ndWFnZSB9IGZyb20gJy4vaW1wb3J0L2Jhc2UnO1xuXG5jb25zdCBDT05GSUdfRklMRSA9ICdjZGs4cy55YW1sJztcblxuZXhwb3J0IGludGVyZmFjZSBJbXBvcnRTcGVjIHtcbiAgcmVhZG9ubHkgbW9kdWxlTmFtZVByZWZpeD86IHN0cmluZztcbiAgcmVhZG9ubHkgc291cmNlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmFsaWRhdGlvbkNvbmZpZyB7XG4gIHJlYWRvbmx5IHBhY2thZ2U6IHN0cmluZztcbiAgcmVhZG9ubHkgdmVyc2lvbjogc3RyaW5nO1xuICByZWFkb25seSBjbGFzczogc3RyaW5nO1xuICByZWFkb25seSBpbnN0YWxsRW52PzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcbiAgcmVhZG9ubHkgcHJvcGVydGllcz86IHsgW2tleTogc3RyaW5nXTogYW55IH07XG59XG5cbmV4cG9ydCBlbnVtIFN5bnRoZXNpc0Zvcm1hdCB7XG4gIFBMQUlOID0gJ3BsYWluJyxcbiAgSEVMTSA9ICdoZWxtJyxcbn1cblxuZXhwb3J0IGVudW0gSGVsbUNoYXJ0QXBpVmVyc2lvbiB7XG4gIFYxID0gJ3YxJyxcbiAgVjIgPSAndjInLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN5bnRoQ29uZmlnIHtcbiAgcmVhZG9ubHkgZm9ybWF0PzogU3ludGhlc2lzRm9ybWF0O1xuICByZWFkb25seSBjaGFydEFwaVZlcnNpb24/OiBIZWxtQ2hhcnRBcGlWZXJzaW9uO1xuICByZWFkb25seSBjaGFydFZlcnNpb24/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnIHtcbiAgcmVhZG9ubHkgYXBwPzogc3RyaW5nO1xuICByZWFkb25seSBsYW5ndWFnZT86IExhbmd1YWdlO1xuICByZWFkb25seSBvdXRwdXQ/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGltcG9ydERpcmVjdG9yeT86IHN0cmluZztcbiAgcmVhZG9ubHkgaW1wb3J0cz86IHN0cmluZ1tdO1xuICByZWFkb25seSBwbHVnaW5zRGlyZWN0b3J5Pzogc3RyaW5nO1xuICByZWFkb25seSB2YWxpZGF0aW9ucz86IHN0cmluZyB8IFZhbGlkYXRpb25Db25maWdbXTtcbiAgcmVhZG9ubHkgc3ludGhDb25maWc/OiBTeW50aENvbmZpZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRDb25maWdTeW5jKCk6IENvbmZpZyB8IHVuZGVmaW5lZCB7XG4gIGlmIChmcy5leGlzdHNTeW5jKENPTkZJR19GSUxFKSkge1xuICAgIGNvbnN0IGNvbmZpZyA9IHtcbiAgICAgIC4uLnlhbWwucGFyc2UoZnMucmVhZEZpbGVTeW5jKENPTkZJR19GSUxFLCAndXRmLTgnKSksXG4gICAgfTtcblxuICAgIHJldHVybiBjb25maWc7XG4gIH1cblxuICByZXR1cm4gdW5kZWZpbmVkO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gYWRkSW1wb3J0VG9Db25maWcoc291cmNlOiBzdHJpbmcpIHtcblxuICBpZiAoIWZzLmV4aXN0c1N5bmMoQ09ORklHX0ZJTEUpKSB7XG4gICAgLy8gY2RrOHMgaW1wb3J0IG1pZ2h0IGJlIGV4ZWN1dGVkIG91dHNpZGUgb2YgYW4gYXBwbGljYXRpb24gKGkuZSB3aXRob3V0IGEgY29uZmlnIGZpbGUpXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgbGV0IGN1ckNvbmZpZyA9IHlhbWwucGFyc2UoZnMucmVhZEZpbGVTeW5jKENPTkZJR19GSUxFLCAndXRmLTgnKSk7XG5cbiAgY29uc3QgY3VySW1wb3J0cyA9IGN1ckNvbmZpZy5pbXBvcnRzID8/IFtdO1xuICBpZiAoIWN1ckltcG9ydHMuaW5jbHVkZXMoc291cmNlKSkge1xuICAgIGNvbnN0IGltcG9ydHNMaXN0ID0gY3VyQ29uZmlnLmltcG9ydHMgPz8gW107XG4gICAgaW1wb3J0c0xpc3QucHVzaChzb3VyY2UpO1xuICAgIGxldCBjb25maWcgPSB7XG4gICAgICAuLi5jdXJDb25maWcsXG4gICAgICBpbXBvcnRzOiBpbXBvcnRzTGlzdCxcbiAgICB9O1xuICAgIGF3YWl0IGZzLm91dHB1dEZpbGUoQ09ORklHX0ZJTEUsIHlhbWwuc3RyaW5naWZ5KGNvbmZpZykpO1xuICB9XG59XG4iXX0=
|