projen-pipelines 0.1.1 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/steps/step.js CHANGED
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
- var _a, _b;
2
+ var _a, _b, _c, _d;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.SimpleCommandStep = exports.PipelineStep = void 0;
4
+ exports.StepSequence = exports.ProjenScriptStep = exports.SimpleCommandStep = exports.PipelineStep = void 0;
5
5
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
+ const engines_1 = require("../engines");
6
7
  /**
7
8
  * Abstract class defining the structure of a pipeline step.
8
9
  */
@@ -42,7 +43,7 @@ class PipelineStep {
42
43
  }
43
44
  exports.PipelineStep = PipelineStep;
44
45
  _a = JSII_RTTI_SYMBOL_1;
45
- PipelineStep[_a] = { fqn: "projen-pipelines.PipelineStep", version: "0.1.1" };
46
+ PipelineStep[_a] = { fqn: "projen-pipelines.PipelineStep", version: "0.2.1" };
46
47
  /**
47
48
  * Concrete implementation of PipelineStep that executes simple commands.
48
49
  */
@@ -54,7 +55,7 @@ class SimpleCommandStep extends PipelineStep {
54
55
  */
55
56
  constructor(project, commands) {
56
57
  super(project);
57
- this.commands = commands;
58
+ this.commands = [...commands];
58
59
  }
59
60
  /**
60
61
  * Converts the step into a GitLab CI configuration.
@@ -98,5 +99,110 @@ class SimpleCommandStep extends PipelineStep {
98
99
  }
99
100
  exports.SimpleCommandStep = SimpleCommandStep;
100
101
  _b = JSII_RTTI_SYMBOL_1;
101
- SimpleCommandStep[_b] = { fqn: "projen-pipelines.SimpleCommandStep", version: "0.1.1" };
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdGVwcy9zdGVwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBaUVBOztHQUVHO0FBQ0gsTUFBc0IsWUFBWTtJQUVoQzs7O09BR0c7SUFDSCxZQUFzQixPQUFnQjtRQUFoQixZQUFPLEdBQVAsT0FBTyxDQUFTO1FBQ3BDLDJEQUEyRDtJQUM3RCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxRQUFRO1FBQ2IsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7T0FFRztJQUNJLFFBQVE7UUFDYixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOztPQUVHO0lBQ0ksY0FBYztRQUNuQixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTTtRQUNYLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM3QyxDQUFDOztBQXBDSCxvQ0FxQ0M7OztBQUVEOztHQUVHO0FBQ0gsTUFBYSxpQkFBa0IsU0FBUSxZQUFZO0lBRWpEOzs7O09BSUc7SUFDSCxZQUFZLE9BQWdCLEVBQVksUUFBa0I7UUFDeEQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRHVCLGFBQVEsR0FBUixRQUFRLENBQVU7SUFFMUQsQ0FBQztJQUVEOztPQUVHO0lBQ0ksUUFBUTtRQUNiLE9BQU87WUFDTCxVQUFVLEVBQUUsRUFBRSxFQUFFLDZDQUE2QztZQUM3RCxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxzQkFBc0I7WUFDL0MsS0FBSyxFQUFFLEVBQUUsRUFBRSxtQkFBbUI7WUFDOUIsR0FBRyxFQUFFLEVBQUUsRUFBRSw0QkFBNEI7U0FDdEMsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU07UUFDWCxPQUFPO1lBQ0wsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsc0JBQXNCO1NBQ2hELENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSSxRQUFRO1FBQ2IsT0FBTztZQUNMLEtBQUssRUFBRSxFQUFFLEVBQUUsbUJBQW1CO1lBQzlCLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLG1EQUFtRDtZQUNoRyxHQUFHLEVBQUUsRUFBRSxFQUFFLDRCQUE0QjtTQUN0QyxDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0ksY0FBYztRQUNuQixPQUFPO1lBQ0wsS0FBSyxFQUFFLEVBQUUsRUFBRSxtQkFBbUI7WUFDOUIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLHlEQUF5RDtZQUNoRyxHQUFHLEVBQUUsRUFBRSxFQUFFLDRCQUE0QjtTQUN0QyxDQUFDO0lBQ0osQ0FBQzs7QUFwREgsOENBcURDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvamVjdCB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBKb2JQZXJtaXNzaW9ucywgSm9iU3RlcCB9IGZyb20gJ3Byb2plbi9saWIvZ2l0aHViL3dvcmtmbG93cy1tb2RlbCc7XG5pbXBvcnQgeyBOZWVkIH0gZnJvbSAncHJvamVuL2xpYi9naXRsYWInO1xuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gaW50ZXJmYWNlIGZvciBhIEdpdExhYiBDSSBzdGVwLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdpdGxhYlN0ZXBDb25maWcge1xuXG4gIC8qKiBMaXN0IG9mIGpvYiBleHRlbnNpb25zIHJlbGF0ZWQgdG8gdGhlIHN0ZXAuICovXG4gIHJlYWRvbmx5IGV4dGVuc2lvbnM6IHN0cmluZ1tdO1xuXG4gIC8qKiBEZXBlbmRlbmNpZXMgd2hpY2ggbmVlZCB0byBiZSBjb21wbGV0ZWQgYmVmb3JlIHRoaXMgc3RlcC4gKi9cbiAgcmVhZG9ubHkgbmVlZHM6IE5lZWRbXTtcblxuICAvKiogU2hlbGwgY29tbWFuZHMgdG8gZXhlY3V0ZSBpbiB0aGlzIHN0ZXAuICovXG4gIHJlYWRvbmx5IGNvbW1hbmRzOiBzdHJpbmdbXTtcblxuICAvKiogQWRkaXRpb25hbCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gc2V0IGZvciB0aGlzIHN0ZXAuICovXG4gIHJlYWRvbmx5IGVudjogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGludGVyZmFjZSBmb3IgYSBHaXRIdWIgQWN0aW9ucyBzdGVwLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdpdGh1YlN0ZXBDb25maWcge1xuXG4gIC8qKiBEZXBlbmRlbmNpZXMgd2hpY2ggbmVlZCB0byBiZSBjb21wbGV0ZWQgYmVmb3JlIHRoaXMgc3RlcC4gKi9cbiAgcmVhZG9ubHkgbmVlZHM6IHN0cmluZ1tdO1xuXG4gIC8qKiBDb21tYW5kcyB3cmFwcGVkIGFzIEdpdEh1YiBBY3Rpb24gam9iIHN0ZXBzLiAqL1xuICByZWFkb25seSBzdGVwczogSm9iU3RlcFtdO1xuXG4gIC8qKiBBZGRpdGlvbmFsIGVudmlyb25tZW50IHZhcmlhYmxlcyB0byBzZXQgZm9yIHRoaXMgc3RlcC4gKi9cbiAgcmVhZG9ubHkgZW52OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuXG4gIC8qKiBBZGRpdGlvbmFsIGpvYiBwZXJtaXNzaW9ucyBuZWVkZWQgKi9cbiAgcmVhZG9ubHkgcGVybWlzc2lvbnM/OiBKb2JQZXJtaXNzaW9ucztcbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGludGVyZmFjZSBmb3IgYSBDb2RlQ2F0YWx5c3QgQWN0aW9ucyBzdGVwLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvZGVDYXRhbHlzdFN0ZXBDb25maWcge1xuXG4gIC8qKiBEZXBlbmRlbmNpZXMgd2hpY2ggbmVlZCB0byBiZSBjb21wbGV0ZWQgYmVmb3JlIHRoaXMgc3RlcC4gKi9cbiAgcmVhZG9ubHkgbmVlZHM6IHN0cmluZ1tdO1xuXG4gIC8qKiBDb21tYW5kcyB3cmFwcGVkIGFzIEdpdEh1YiBBY3Rpb24gam9iIHN0ZXBzLiAqL1xuICByZWFkb25seSBjb21tYW5kczogc3RyaW5nW107XG5cbiAgLyoqIEFkZGl0aW9uYWwgZW52aXJvbm1lbnQgdmFyaWFibGVzIHRvIHNldCBmb3IgdGhpcyBzdGVwLiAqL1xuICByZWFkb25seSBlbnY6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG5cbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGludGVyZmFjZSBmb3IgYSBiYXNoIHNjcmlwdCBzdGVwLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJhc2hTdGVwQ29uZmlnIHtcblxuICAvKiogU2hlbGwgY29tbWFuZHMgdG8gZXhlY3V0ZS4gKi9cbiAgcmVhZG9ubHkgY29tbWFuZHM6IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIEFic3RyYWN0IGNsYXNzIGRlZmluaW5nIHRoZSBzdHJ1Y3R1cmUgb2YgYSBwaXBlbGluZSBzdGVwLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUGlwZWxpbmVTdGVwIHtcblxuICAvKipcbiAgICogSW5pdGlhbGl6ZXMgYSBuZXcgaW5zdGFuY2Ugb2YgYSBQaXBlbGluZVN0ZXAgd2l0aCBhIHJlZmVyZW5jZSB0byBhIHByb2plbiBwcm9qZWN0LlxuICAgKiBAcGFyYW0gcHJvamVjdCAtIFRoZSBwcm9qZW4gcHJvamVjdCByZWZlcmVuY2UuXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgcHJvamVjdDogUHJvamVjdCkge1xuICAgIC8vIENvbnN0cnVjdG9yIGNhbiBiZSBleHRlbmRlZCB0byBpbmNsdWRlIG1vcmUgc2V0dXAgbG9naWMuXG4gIH1cblxuICAvKipcbiAgICogR2VuZXJhdGVzIGEgY29uZmlndXJhdGlvbiBmb3IgYSBHaXRMYWIgQ0kgc3RlcC4gU2hvdWxkIGJlIGltcGxlbWVudGVkIGJ5IHN1YmNsYXNzZXMuXG4gICAqL1xuICBwdWJsaWMgdG9HaXRsYWIoKTogR2l0bGFiU3RlcENvbmZpZyB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdNZXRob2Qgbm90IGltcGxlbWVudGVkLicpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlcyBhIGNvbmZpZ3VyYXRpb24gZm9yIGEgR2l0SHViIEFjdGlvbnMgc3RlcC4gU2hvdWxkIGJlIGltcGxlbWVudGVkIGJ5IHN1YmNsYXNzZXMuXG4gICAqL1xuICBwdWJsaWMgdG9HaXRodWIoKTogR2l0aHViU3RlcENvbmZpZyB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdNZXRob2Qgbm90IGltcGxlbWVudGVkLicpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlcyBhIGNvbmZpZ3VyYXRpb24gZm9yIGEgQ29kZUNhdGFseXN0IEFjdGlvbnMgc3RlcC4gU2hvdWxkIGJlIGltcGxlbWVudGVkIGJ5IHN1YmNsYXNzZXMuXG4gICAqL1xuICBwdWJsaWMgdG9Db2RlQ2F0YWx5c3QoKTogQ29kZUNhdGFseXN0U3RlcENvbmZpZyB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdNZXRob2Qgbm90IGltcGxlbWVudGVkLicpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlcyBhIGNvbmZpZ3VyYXRpb24gZm9yIGEgYmFzaCBzY3JpcHQgc3RlcC4gU2hvdWxkIGJlIGltcGxlbWVudGVkIGJ5IHN1YmNsYXNzZXMuXG4gICAqL1xuICBwdWJsaWMgdG9CYXNoKCk6IEJhc2hTdGVwQ29uZmlnIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cbn1cblxuLyoqXG4gKiBDb25jcmV0ZSBpbXBsZW1lbnRhdGlvbiBvZiBQaXBlbGluZVN0ZXAgdGhhdCBleGVjdXRlcyBzaW1wbGUgY29tbWFuZHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTaW1wbGVDb21tYW5kU3RlcCBleHRlbmRzIFBpcGVsaW5lU3RlcCB7XG5cbiAgLyoqXG4gICAqIENvbnN0cnVjdHMgYSBzaW1wbGUgY29tbWFuZCBzdGVwIHdpdGggYSBzcGVjaWZpZWQgc2V0IG9mIGNvbW1hbmRzLlxuICAgKiBAcGFyYW0gcHJvamVjdCAtIFRoZSBwcm9qZW4gcHJvamVjdCByZWZlcmVuY2UuXG4gICAqIEBwYXJhbSBjb21tYW5kcyAtIFNoZWxsIGNvbW1hbmRzIHRvIGV4ZWN1dGUuXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBwcm90ZWN0ZWQgY29tbWFuZHM6IHN0cmluZ1tdKSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgdGhlIHN0ZXAgaW50byBhIEdpdExhYiBDSSBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgcHVibGljIHRvR2l0bGFiKCk6IEdpdGxhYlN0ZXBDb25maWcge1xuICAgIHJldHVybiB7XG4gICAgICBleHRlbnNpb25zOiBbXSwgLy8gTm8gam9iIGV4dGVuc2lvbnMgc3BlY2lmaWVkIGZvciB0aGlzIHN0ZXAuXG4gICAgICBjb21tYW5kczogdGhpcy5jb21tYW5kcywgLy8gQ29tbWFuZHMgdG8gYmUgcnVuLlxuICAgICAgbmVlZHM6IFtdLCAvLyBObyBkZXBlbmRlbmNpZXMuXG4gICAgICBlbnY6IHt9LCAvLyBObyBlbnZpcm9ubWVudCB2YXJpYWJsZXMuXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyB0aGUgc3RlcCBpbnRvIGEgQmFzaCBzY3JpcHQgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIHB1YmxpYyB0b0Jhc2goKTogQmFzaFN0ZXBDb25maWcge1xuICAgIHJldHVybiB7XG4gICAgICBjb21tYW5kczogdGhpcy5jb21tYW5kcywgLy8gQ29tbWFuZHMgdG8gYmUgcnVuLlxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgdGhlIHN0ZXAgaW50byBhIEdpdEh1YiBBY3Rpb25zIHN0ZXAgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIHB1YmxpYyB0b0dpdGh1YigpOiBHaXRodWJTdGVwQ29uZmlnIHtcbiAgICByZXR1cm4ge1xuICAgICAgbmVlZHM6IFtdLCAvLyBObyBkZXBlbmRlbmNpZXMuXG4gICAgICBzdGVwczogdGhpcy5jb21tYW5kcy5tYXAoYyA9PiAoeyBydW46IGMgfSkpLCAvLyBNYXBzIGVhY2ggY29tbWFuZCBpbnRvIGEgR2l0SHViIEFjdGlvbiBqb2Igc3RlcC5cbiAgICAgIGVudjoge30sIC8vIE5vIGVudmlyb25tZW50IHZhcmlhYmxlcy5cbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIHRoZSBzdGVwIGludG8gYSBDb2RlQ2F0YWx5c3QgQWN0aW9ucyBzdGVwIGNvbmZpZ3VyYXRpb24uXG4gICAqL1xuICBwdWJsaWMgdG9Db2RlQ2F0YWx5c3QoKTogQ29kZUNhdGFseXN0U3RlcENvbmZpZyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5lZWRzOiBbXSwgLy8gTm8gZGVwZW5kZW5jaWVzLlxuICAgICAgY29tbWFuZHM6IHRoaXMuY29tbWFuZHMubWFwKGMgPT4gKGMpKSwgLy8gTWFwcyBlYWNoIGNvbW1hbmQgaW50byBhIENvZGVDYXRhbHlzdCBBY3Rpb24gam9iIHN0ZXAuXG4gICAgICBlbnY6IHt9LCAvLyBObyBlbnZpcm9ubWVudCB2YXJpYWJsZXMuXG4gICAgfTtcbiAgfVxufVxuIl19
102
+ SimpleCommandStep[_b] = { fqn: "projen-pipelines.SimpleCommandStep", version: "0.2.1" };
103
+ class ProjenScriptStep extends SimpleCommandStep {
104
+ constructor(project, scriptName, args) {
105
+ super(project, [`npx projen ${scriptName}${args ? ` ${args}` : ''}`]);
106
+ }
107
+ }
108
+ exports.ProjenScriptStep = ProjenScriptStep;
109
+ _c = JSII_RTTI_SYMBOL_1;
110
+ ProjenScriptStep[_c] = { fqn: "projen-pipelines.ProjenScriptStep", version: "0.2.1" };
111
+ // Add class that is a sequence of pipleine steps but is a pipeline step in itself
112
+ class StepSequence extends PipelineStep {
113
+ /**
114
+ * Constructs a sequence of pipeline steps.
115
+ * @param project - The projen project reference.
116
+ * @param steps - The sequence of pipeline steps.
117
+ */
118
+ constructor(project, steps) {
119
+ super(project);
120
+ this.steps = [...steps];
121
+ }
122
+ /**
123
+ * Converts the sequence of steps into a GitLab CI configuration.
124
+ */
125
+ toGitlab() {
126
+ const extensions = [];
127
+ const commands = [];
128
+ const needs = [];
129
+ const env = {};
130
+ for (const step of this.steps) {
131
+ const stepConfig = step.toGitlab();
132
+ extensions.push(...stepConfig.extensions);
133
+ commands.push(...stepConfig.commands);
134
+ needs.push(...stepConfig.needs);
135
+ Object.assign(env, stepConfig.env);
136
+ }
137
+ return {
138
+ extensions,
139
+ commands,
140
+ needs: Array.from(new Set(needs)),
141
+ env,
142
+ };
143
+ }
144
+ /**
145
+ * Converts the sequence of steps into a Bash script configuration.
146
+ */
147
+ toBash() {
148
+ const commands = [];
149
+ for (const step of this.steps) {
150
+ const stepConfig = step.toBash();
151
+ commands.push(...stepConfig.commands);
152
+ }
153
+ return { commands };
154
+ }
155
+ /**
156
+ * Converts the sequence of steps into a GitHub Actions step configuration.
157
+ */
158
+ toGithub() {
159
+ const needs = [];
160
+ const steps = [];
161
+ const env = {};
162
+ const permissions = [];
163
+ for (const step of this.steps) {
164
+ const stepConfig = step.toGithub();
165
+ needs.push(...stepConfig.needs);
166
+ steps.push(...stepConfig.steps);
167
+ if (stepConfig.permissions) {
168
+ permissions.push(stepConfig.permissions);
169
+ }
170
+ Object.assign(env, stepConfig.env);
171
+ }
172
+ return {
173
+ needs: Array.from(new Set(needs)),
174
+ steps,
175
+ env,
176
+ permissions: (0, engines_1.mergeJobPermissions)(...permissions),
177
+ };
178
+ }
179
+ /**
180
+ * Converts the sequence of steps into a CodeCatalyst Actions step configuration.
181
+ */
182
+ toCodeCatalyst() {
183
+ const needs = [];
184
+ const commands = [];
185
+ const env = {};
186
+ for (const step of this.steps) {
187
+ const stepConfig = step.toCodeCatalyst();
188
+ needs.push(...stepConfig.needs);
189
+ commands.push(...stepConfig.commands);
190
+ Object.assign(env, stepConfig.env);
191
+ }
192
+ return {
193
+ needs: Array.from(new Set(needs)),
194
+ commands,
195
+ env,
196
+ };
197
+ }
198
+ addSteps(...steps) {
199
+ this.steps.push(...steps);
200
+ }
201
+ prependSteps(...steps) {
202
+ this.steps.unshift(...steps);
203
+ }
204
+ }
205
+ exports.StepSequence = StepSequence;
206
+ _d = JSII_RTTI_SYMBOL_1;
207
+ StepSequence[_d] = { fqn: "projen-pipelines.StepSequence", version: "0.2.1" };
208
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdGVwcy9zdGVwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBR0Esd0NBQWlEO0FBK0RqRDs7R0FFRztBQUNILE1BQXNCLFlBQVk7SUFFaEM7OztPQUdHO0lBQ0gsWUFBc0IsT0FBZ0I7UUFBaEIsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNwQywyREFBMkQ7SUFDN0QsQ0FBQztJQUVEOztPQUVHO0lBQ0ksUUFBUTtRQUNiLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxRQUFRO1FBQ2IsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7T0FFRztJQUNJLGNBQWM7UUFDbkIsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU07UUFDWCxNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDN0MsQ0FBQzs7QUFwQ0gsb0NBcUNDOzs7QUFFRDs7R0FFRztBQUNILE1BQWEsaUJBQWtCLFNBQVEsWUFBWTtJQUlqRDs7OztPQUlHO0lBQ0gsWUFBWSxPQUFnQixFQUFFLFFBQWtCO1FBQzlDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNmLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRDs7T0FFRztJQUNJLFFBQVE7UUFDYixPQUFPO1lBQ0wsVUFBVSxFQUFFLEVBQUUsRUFBRSw2Q0FBNkM7WUFDN0QsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsc0JBQXNCO1lBQy9DLEtBQUssRUFBRSxFQUFFLEVBQUUsbUJBQW1CO1lBQzlCLEdBQUcsRUFBRSxFQUFFLEVBQUUsNEJBQTRCO1NBQ3RDLENBQUM7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Q0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN6QyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2hDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDdEMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3JDLENBQUM7UUFDRCxPQUFPO1lBQ0wsS0FBSyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDakMsUUFBUTtZQUNSLEdBQUc7U0FDSixDQUFDO0lBQ0osQ0FBQztJQUVNLFFBQVEsQ0FBQyxHQUFHLEtBQXFCO1FBQ3RDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVNLFlBQVksQ0FBQyxHQUFHLEtBQXFCO1FBQzFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQzs7QUFwR0gsb0NBcUdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvamVjdCB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBKb2JQZXJtaXNzaW9ucywgSm9iU3RlcCB9IGZyb20gJ3Byb2plbi9saWIvZ2l0aHViL3dvcmtmbG93cy1tb2RlbCc7XG5pbXBvcnQgeyBOZWVkIH0gZnJvbSAncHJvamVuL2xpYi9naXRsYWInO1xuaW1wb3J0IHsgbWVyZ2VKb2JQZXJtaXNzaW9ucyB9IGZyb20gJy4uL2VuZ2luZXMnO1xuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gaW50ZXJmYWNlIGZvciBhIEdpdExhYiBDSSBzdGVwLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdpdGxhYlN0ZXBDb25maWcge1xuXG4gIC8qKiBMaXN0IG9mIGpvYiBleHRlbnNpb25zIHJlbGF0ZWQgdG8gdGhlIHN0ZXAuICovXG4gIHJlYWRvbmx5IGV4dGVuc2lvbnM6IHN0cmluZ1tdO1xuXG4gIC8qKiBEZXBlbmRlbmNpZXMgd2hpY2ggbmVlZCB0byBiZSBjb21wbGV0ZWQgYmVmb3JlIHRoaXMgc3RlcC4gKi9cbiAgcmVhZG9ubHkgbmVlZHM6IE5lZWRbXTtcblxuICAvKiogU2hlbGwgY29tbWFuZHMgdG8gZXhlY3V0ZSBpbiB0aGlzIHN0ZXAuICovXG4gIHJlYWRvbmx5IGNvbW1hbmRzOiBzdHJpbmdbXTtcblxuICAvKiogQWRkaXRpb25hbCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gc2V0IGZvciB0aGlzIHN0ZXAuICovXG4gIHJlYWRvbmx5IGVudjogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGludGVyZmFjZSBmb3IgYSBHaXRIdWIgQWN0aW9ucyBzdGVwLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdpdGh1YlN0ZXBDb25maWcge1xuXG4gIC8qKiBEZXBlbmRlbmNpZXMgd2hpY2ggbmVlZCB0byBiZSBjb21wbGV0ZWQgYmVmb3JlIHRoaXMgc3RlcC4gKi9cbiAgcmVhZG9ubHkgbmVlZHM6IHN0cmluZ1tdO1xuXG4gIC8qKiBDb21tYW5kcyB3cmFwcGVkIGFzIEdpdEh1YiBBY3Rpb24gam9iIHN0ZXBzLiAqL1xuICByZWFkb25seSBzdGVwczogSm9iU3RlcFtdO1xuXG4gIC8qKiBBZGRpdGlvbmFsIGVudmlyb25tZW50IHZhcmlhYmxlcyB0byBzZXQgZm9yIHRoaXMgc3RlcC4gKi9cbiAgcmVhZG9ubHkgZW52OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuXG4gIC8qKiBBZGRpdGlvbmFsIGpvYiBwZXJtaXNzaW9ucyBuZWVkZWQgKi9cbiAgcmVhZG9ubHkgcGVybWlzc2lvbnM/OiBKb2JQZXJtaXNzaW9ucztcbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGludGVyZmFjZSBmb3IgYSBDb2RlQ2F0YWx5c3QgQWN0aW9ucyBzdGVwLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvZGVDYXRhbHlzdFN0ZXBDb25maWcge1xuXG4gIC8qKiBEZXBlbmRlbmNpZXMgd2hpY2ggbmVlZCB0byBiZSBjb21wbGV0ZWQgYmVmb3JlIHRoaXMgc3RlcC4gKi9cbiAgcmVhZG9ubHkgbmVlZHM6IHN0cmluZ1tdO1xuXG4gIC8qKiBDb21tYW5kcyB3cmFwcGVkIGFzIEdpdEh1YiBBY3Rpb24gam9iIHN0ZXBzLiAqL1xuICByZWFkb25seSBjb21tYW5kczogc3RyaW5nW107XG5cbiAgLyoqIEFkZGl0aW9uYWwgZW52aXJvbm1lbnQgdmFyaWFibGVzIHRvIHNldCBmb3IgdGhpcyBzdGVwLiAqL1xuICByZWFkb25seSBlbnY6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG5cbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGludGVyZmFjZSBmb3IgYSBiYXNoIHNjcmlwdCBzdGVwLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJhc2hTdGVwQ29uZmlnIHtcblxuICAvKiogU2hlbGwgY29tbWFuZHMgdG8gZXhlY3V0ZS4gKi9cbiAgcmVhZG9ubHkgY29tbWFuZHM6IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIEFic3RyYWN0IGNsYXNzIGRlZmluaW5nIHRoZSBzdHJ1Y3R1cmUgb2YgYSBwaXBlbGluZSBzdGVwLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUGlwZWxpbmVTdGVwIHtcblxuICAvKipcbiAgICogSW5pdGlhbGl6ZXMgYSBuZXcgaW5zdGFuY2Ugb2YgYSBQaXBlbGluZVN0ZXAgd2l0aCBhIHJlZmVyZW5jZSB0byBhIHByb2plbiBwcm9qZWN0LlxuICAgKiBAcGFyYW0gcHJvamVjdCAtIFRoZSBwcm9qZW4gcHJvamVjdCByZWZlcmVuY2UuXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgcHJvamVjdDogUHJvamVjdCkge1xuICAgIC8vIENvbnN0cnVjdG9yIGNhbiBiZSBleHRlbmRlZCB0byBpbmNsdWRlIG1vcmUgc2V0dXAgbG9naWMuXG4gIH1cblxuICAvKipcbiAgICogR2VuZXJhdGVzIGEgY29uZmlndXJhdGlvbiBmb3IgYSBHaXRMYWIgQ0kgc3RlcC4gU2hvdWxkIGJlIGltcGxlbWVudGVkIGJ5IHN1YmNsYXNzZXMuXG4gICAqL1xuICBwdWJsaWMgdG9HaXRsYWIoKTogR2l0bGFiU3RlcENvbmZpZyB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdNZXRob2Qgbm90IGltcGxlbWVudGVkLicpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlcyBhIGNvbmZpZ3VyYXRpb24gZm9yIGEgR2l0SHViIEFjdGlvbnMgc3RlcC4gU2hvdWxkIGJlIGltcGxlbWVudGVkIGJ5IHN1YmNsYXNzZXMuXG4gICAqL1xuICBwdWJsaWMgdG9HaXRodWIoKTogR2l0aHViU3RlcENvbmZpZyB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdNZXRob2Qgbm90IGltcGxlbWVudGVkLicpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlcyBhIGNvbmZpZ3VyYXRpb24gZm9yIGEgQ29kZUNhdGFseXN0IEFjdGlvbnMgc3RlcC4gU2hvdWxkIGJlIGltcGxlbWVudGVkIGJ5IHN1YmNsYXNzZXMuXG4gICAqL1xuICBwdWJsaWMgdG9Db2RlQ2F0YWx5c3QoKTogQ29kZUNhdGFseXN0U3RlcENvbmZpZyB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdNZXRob2Qgbm90IGltcGxlbWVudGVkLicpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlcyBhIGNvbmZpZ3VyYXRpb24gZm9yIGEgYmFzaCBzY3JpcHQgc3RlcC4gU2hvdWxkIGJlIGltcGxlbWVudGVkIGJ5IHN1YmNsYXNzZXMuXG4gICAqL1xuICBwdWJsaWMgdG9CYXNoKCk6IEJhc2hTdGVwQ29uZmlnIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cbn1cblxuLyoqXG4gKiBDb25jcmV0ZSBpbXBsZW1lbnRhdGlvbiBvZiBQaXBlbGluZVN0ZXAgdGhhdCBleGVjdXRlcyBzaW1wbGUgY29tbWFuZHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTaW1wbGVDb21tYW5kU3RlcCBleHRlbmRzIFBpcGVsaW5lU3RlcCB7XG5cbiAgcHJvdGVjdGVkIGNvbW1hbmRzOiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQ29uc3RydWN0cyBhIHNpbXBsZSBjb21tYW5kIHN0ZXAgd2l0aCBhIHNwZWNpZmllZCBzZXQgb2YgY29tbWFuZHMuXG4gICAqIEBwYXJhbSBwcm9qZWN0IC0gVGhlIHByb2plbiBwcm9qZWN0IHJlZmVyZW5jZS5cbiAgICogQHBhcmFtIGNvbW1hbmRzIC0gU2hlbGwgY29tbWFuZHMgdG8gZXhlY3V0ZS5cbiAgICovXG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIGNvbW1hbmRzOiBzdHJpbmdbXSkge1xuICAgIHN1cGVyKHByb2plY3QpO1xuICAgIHRoaXMuY29tbWFuZHMgPSBbLi4uY29tbWFuZHNdO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIHRoZSBzdGVwIGludG8gYSBHaXRMYWIgQ0kgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIHB1YmxpYyB0b0dpdGxhYigpOiBHaXRsYWJTdGVwQ29uZmlnIHtcbiAgICByZXR1cm4ge1xuICAgICAgZXh0ZW5zaW9uczogW10sIC8vIE5vIGpvYiBleHRlbnNpb25zIHNwZWNpZmllZCBmb3IgdGhpcyBzdGVwLlxuICAgICAgY29tbWFuZHM6IHRoaXMuY29tbWFuZHMsIC8vIENvbW1hbmRzIHRvIGJlIHJ1bi5cbiAgICAgIG5lZWRzOiBbXSwgLy8gTm8gZGVwZW5kZW5jaWVzLlxuICAgICAgZW52OiB7fSwgLy8gTm8gZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgdGhlIHN0ZXAgaW50byBhIEJhc2ggc2NyaXB0IGNvbmZpZ3VyYXRpb24uXG4gICAqL1xuICBwdWJsaWMgdG9CYXNoKCk6IEJhc2hTdGVwQ29uZmlnIHtcbiAgICByZXR1cm4ge1xuICAgICAgY29tbWFuZHM6IHRoaXMuY29tbWFuZHMsIC8vIENvbW1hbmRzIHRvIGJlIHJ1bi5cbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIHRoZSBzdGVwIGludG8gYSBHaXRIdWIgQWN0aW9ucyBzdGVwIGNvbmZpZ3VyYXRpb24uXG4gICAqL1xuICBwdWJsaWMgdG9HaXRodWIoKTogR2l0aHViU3RlcENvbmZpZyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5lZWRzOiBbXSwgLy8gTm8gZGVwZW5kZW5jaWVzLlxuICAgICAgc3RlcHM6IHRoaXMuY29tbWFuZHMubWFwKGMgPT4gKHsgcnVuOiBjIH0pKSwgLy8gTWFwcyBlYWNoIGNvbW1hbmQgaW50byBhIEdpdEh1YiBBY3Rpb24gam9iIHN0ZXAuXG4gICAgICBlbnY6IHt9LCAvLyBObyBlbnZpcm9ubWVudCB2YXJpYWJsZXMuXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyB0aGUgc3RlcCBpbnRvIGEgQ29kZUNhdGFseXN0IEFjdGlvbnMgc3RlcCBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgcHVibGljIHRvQ29kZUNhdGFseXN0KCk6IENvZGVDYXRhbHlzdFN0ZXBDb25maWcge1xuICAgIHJldHVybiB7XG4gICAgICBuZWVkczogW10sIC8vIE5vIGRlcGVuZGVuY2llcy5cbiAgICAgIGNvbW1hbmRzOiB0aGlzLmNvbW1hbmRzLm1hcChjID0+IChjKSksIC8vIE1hcHMgZWFjaCBjb21tYW5kIGludG8gYSBDb2RlQ2F0YWx5c3QgQWN0aW9uIGpvYiBzdGVwLlxuICAgICAgZW52OiB7fSwgLy8gTm8gZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuICAgIH07XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFByb2plblNjcmlwdFN0ZXAgZXh0ZW5kcyBTaW1wbGVDb21tYW5kU3RlcCB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIHNjcmlwdE5hbWU6IHN0cmluZywgYXJncz86IHN0cmluZykge1xuICAgIHN1cGVyKHByb2plY3QsIFtgbnB4IHByb2plbiAke3NjcmlwdE5hbWV9JHthcmdzID8gYCAke2FyZ3N9YCA6ICcnfWBdKTtcbiAgfVxufVxuXG4vLyBBZGQgY2xhc3MgdGhhdCBpcyBhIHNlcXVlbmNlIG9mIHBpcGxlaW5lIHN0ZXBzIGJ1dCBpcyBhIHBpcGVsaW5lIHN0ZXAgaW4gaXRzZWxmXG5leHBvcnQgY2xhc3MgU3RlcFNlcXVlbmNlIGV4dGVuZHMgUGlwZWxpbmVTdGVwIHtcblxuICBwcm90ZWN0ZWQgc3RlcHM6IFBpcGVsaW5lU3RlcFtdO1xuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RzIGEgc2VxdWVuY2Ugb2YgcGlwZWxpbmUgc3RlcHMuXG4gICAqIEBwYXJhbSBwcm9qZWN0IC0gVGhlIHByb2plbiBwcm9qZWN0IHJlZmVyZW5jZS5cbiAgICogQHBhcmFtIHN0ZXBzIC0gVGhlIHNlcXVlbmNlIG9mIHBpcGVsaW5lIHN0ZXBzLlxuICAgKi9cbiAgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCwgc3RlcHM6IFBpcGVsaW5lU3RlcFtdKSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG4gICAgdGhpcy5zdGVwcyA9IFsuLi5zdGVwc107XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgdGhlIHNlcXVlbmNlIG9mIHN0ZXBzIGludG8gYSBHaXRMYWIgQ0kgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIHB1YmxpYyB0b0dpdGxhYigpOiBHaXRsYWJTdGVwQ29uZmlnIHtcbiAgICBjb25zdCBleHRlbnNpb25zOiBzdHJpbmdbXSA9IFtdO1xuICAgIGNvbnN0IGNvbW1hbmRzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGNvbnN0IG5lZWRzOiBOZWVkW10gPSBbXTtcbiAgICBjb25zdCBlbnY6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7fTtcbiAgICBmb3IgKGNvbnN0IHN0ZXAgb2YgdGhpcy5zdGVwcykge1xuICAgICAgY29uc3Qgc3RlcENvbmZpZyA9IHN0ZXAudG9HaXRsYWIoKTtcbiAgICAgIGV4dGVuc2lvbnMucHVzaCguLi5zdGVwQ29uZmlnLmV4dGVuc2lvbnMpO1xuICAgICAgY29tbWFuZHMucHVzaCguLi5zdGVwQ29uZmlnLmNvbW1hbmRzKTtcbiAgICAgIG5lZWRzLnB1c2goLi4uc3RlcENvbmZpZy5uZWVkcyk7XG4gICAgICBPYmplY3QuYXNzaWduKGVudiwgc3RlcENvbmZpZy5lbnYpO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgZXh0ZW5zaW9ucyxcbiAgICAgIGNvbW1hbmRzLFxuICAgICAgbmVlZHM6IEFycmF5LmZyb20obmV3IFNldChuZWVkcykpLFxuICAgICAgZW52LFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgdGhlIHNlcXVlbmNlIG9mIHN0ZXBzIGludG8gYSBCYXNoIHNjcmlwdCBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgcHVibGljIHRvQmFzaCgpOiBCYXNoU3RlcENvbmZpZyB7XG4gICAgY29uc3QgY29tbWFuZHM6IHN0cmluZ1tdID0gW107XG4gICAgZm9yIChjb25zdCBzdGVwIG9mIHRoaXMuc3RlcHMpIHtcbiAgICAgIGNvbnN0IHN0ZXBDb25maWcgPSBzdGVwLnRvQmFzaCgpO1xuICAgICAgY29tbWFuZHMucHVzaCguLi5zdGVwQ29uZmlnLmNvbW1hbmRzKTtcbiAgICB9XG4gICAgcmV0dXJuIHsgY29tbWFuZHMgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyB0aGUgc2VxdWVuY2Ugb2Ygc3RlcHMgaW50byBhIEdpdEh1YiBBY3Rpb25zIHN0ZXAgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIHB1YmxpYyB0b0dpdGh1YigpOiBHaXRodWJTdGVwQ29uZmlnIHtcbiAgICBjb25zdCBuZWVkczogc3RyaW5nW10gPSBbXTtcbiAgICBjb25zdCBzdGVwczogSm9iU3RlcFtdID0gW107XG4gICAgY29uc3QgZW52OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge307XG4gICAgY29uc3QgcGVybWlzc2lvbnM6IEpvYlBlcm1pc3Npb25zW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHN0ZXAgb2YgdGhpcy5zdGVwcykge1xuICAgICAgY29uc3Qgc3RlcENvbmZpZyA9IHN0ZXAudG9HaXRodWIoKTtcbiAgICAgIG5lZWRzLnB1c2goLi4uc3RlcENvbmZpZy5uZWVkcyk7XG4gICAgICBzdGVwcy5wdXNoKC4uLnN0ZXBDb25maWcuc3RlcHMpO1xuICAgICAgaWYgKHN0ZXBDb25maWcucGVybWlzc2lvbnMpIHtcbiAgICAgICAgcGVybWlzc2lvbnMucHVzaChzdGVwQ29uZmlnLnBlcm1pc3Npb25zKTtcbiAgICAgIH1cbiAgICAgIE9iamVjdC5hc3NpZ24oZW52LCBzdGVwQ29uZmlnLmVudik7XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBuZWVkczogQXJyYXkuZnJvbShuZXcgU2V0KG5lZWRzKSksXG4gICAgICBzdGVwcyxcbiAgICAgIGVudixcbiAgICAgIHBlcm1pc3Npb25zOiBtZXJnZUpvYlBlcm1pc3Npb25zKC4uLnBlcm1pc3Npb25zKSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIHRoZSBzZXF1ZW5jZSBvZiBzdGVwcyBpbnRvIGEgQ29kZUNhdGFseXN0IEFjdGlvbnMgc3RlcCBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgcHVibGljIHRvQ29kZUNhdGFseXN0KCk6IENvZGVDYXRhbHlzdFN0ZXBDb25maWcge1xuICAgIGNvbnN0IG5lZWRzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGNvbnN0IGNvbW1hbmRzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGNvbnN0IGVudjogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9O1xuICAgIGZvciAoY29uc3Qgc3RlcCBvZiB0aGlzLnN0ZXBzKSB7XG4gICAgICBjb25zdCBzdGVwQ29uZmlnID0gc3RlcC50b0NvZGVDYXRhbHlzdCgpO1xuICAgICAgbmVlZHMucHVzaCguLi5zdGVwQ29uZmlnLm5lZWRzKTtcbiAgICAgIGNvbW1hbmRzLnB1c2goLi4uc3RlcENvbmZpZy5jb21tYW5kcyk7XG4gICAgICBPYmplY3QuYXNzaWduKGVudiwgc3RlcENvbmZpZy5lbnYpO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgbmVlZHM6IEFycmF5LmZyb20obmV3IFNldChuZWVkcykpLFxuICAgICAgY29tbWFuZHMsXG4gICAgICBlbnYsXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBhZGRTdGVwcyguLi5zdGVwczogUGlwZWxpbmVTdGVwW10pIHtcbiAgICB0aGlzLnN0ZXBzLnB1c2goLi4uc3RlcHMpO1xuICB9XG5cbiAgcHVibGljIHByZXBlbmRTdGVwcyguLi5zdGVwczogUGlwZWxpbmVTdGVwW10pIHtcbiAgICB0aGlzLnN0ZXBzLnVuc2hpZnQoLi4uc3RlcHMpO1xuICB9XG59Il19
package/package.json CHANGED
@@ -90,7 +90,7 @@
90
90
  "publishConfig": {
91
91
  "access": "public"
92
92
  },
93
- "version": "0.1.1",
93
+ "version": "0.2.1",
94
94
  "jest": {
95
95
  "coverageProvider": "v8",
96
96
  "testMatch": [