@xpertss/projen-types 0.0.6 → 0.0.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.
Files changed (39) hide show
  1. package/.jsii +62 -174
  2. package/API.md +20 -329
  3. package/README.md +20 -5
  4. package/lib/actions/action-build-workflow.js +4 -2
  5. package/lib/actions/action-dogfood-workflow.js +4 -2
  6. package/lib/actions/action-sonar-workflow.d.ts +6 -6
  7. package/lib/actions/action-sonar-workflow.js +8 -6
  8. package/lib/actions/github-action-project.d.ts +7 -7
  9. package/lib/actions/github-action-project.js +13 -7
  10. package/lib/cdk/app-runtime-scaffold.js +1 -1
  11. package/lib/cdk/cdk-app-project.js +5 -3
  12. package/lib/cdk/cdk-infra-project.js +1 -1
  13. package/lib/cdk/cdk-typescript-base.js +19 -4
  14. package/lib/cdk/components/ecr-ecs-constructs.js +1 -1
  15. package/lib/cdk/components/edge-networking-constructs.js +1 -1
  16. package/lib/cdk/database-component.js +1 -1
  17. package/lib/common/manual-deploy-workflow.js +3 -1
  18. package/lib/common/projen-drift-check-workflow.js +4 -2
  19. package/lib/common/upgrade-workflow.js +3 -1
  20. package/lib/common/workflow-change-notice-workflow.js +4 -2
  21. package/lib/common/workflow-purpose.d.ts +21 -0
  22. package/lib/common/workflow-purpose.js +51 -0
  23. package/lib/index.d.ts +0 -1
  24. package/lib/index.js +1 -2
  25. package/lib/java/components/cdk-deploy-hook.js +1 -1
  26. package/lib/java/components/code-index-workflow.js +5 -3
  27. package/lib/java/components/docker-publish.js +5 -3
  28. package/lib/java/components/flyway-migration.js +1 -1
  29. package/lib/java/components/github-packages-publish.js +5 -3
  30. package/lib/java/components/maven-central-publish.js +5 -3
  31. package/lib/java/java-app-project.js +1 -1
  32. package/lib/java/java-library-project.js +1 -1
  33. package/lib/java/java-maven-base.js +7 -4
  34. package/lib/java/java-service-project.js +1 -1
  35. package/lib/java/options.d.ts +1 -1
  36. package/lib/java/options.js +1 -1
  37. package/package.json +1 -1
  38. package/lib/common/actions-allowlist-guard.d.ts +0 -37
  39. package/lib/common/actions-allowlist-guard.js +0 -70
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ActionDogfoodWorkflow = void 0;
4
4
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
5
5
  const projen_1 = require("projen");
6
+ const workflow_purpose_1 = require("../common/workflow-purpose");
6
7
  // Nightly environment-regression canary (AD-001/F006): re-runs the same
7
8
  // scenario against settled `main` in today's runner image, independent of
8
9
  // the pull_request gate. Quiet UTC hour; a component constant, not a
@@ -40,7 +41,7 @@ const UNCONFIGURED_STEPS = [
40
41
  * error: if you wrote a scenario by hand, you can write its cleanup too.
41
42
  */
42
43
  class ActionDogfoodWorkflow extends projen_1.Component {
43
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.ActionDogfoodWorkflow", version: "0.0.6" };
44
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.ActionDogfoodWorkflow", version: "0.0.8" };
44
45
  workflow;
45
46
  constructor(scope, options) {
46
47
  super(scope, 'ActionDogfoodWorkflow');
@@ -91,6 +92,7 @@ class ActionDogfoodWorkflow extends projen_1.Component {
91
92
  });
92
93
  }
93
94
  this.workflow = new projen_1.github.GithubWorkflow(gh, 'test-dogfood');
95
+ (0, workflow_purpose_1.noteWorkflowPurpose)(this.workflow.file, 'End-to-end dogfood test running the action against this repo.');
94
96
  this.workflow.on({
95
97
  workflowDispatch: {},
96
98
  pullRequest: { branches: ['main'] },
@@ -111,4 +113,4 @@ class ActionDogfoodWorkflow extends projen_1.Component {
111
113
  }
112
114
  }
113
115
  exports.ActionDogfoodWorkflow = ActionDogfoodWorkflow;
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWRvZ2Zvb2Qtd29ya2Zsb3cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWN0aW9ucy9hY3Rpb24tZG9nZm9vZC13b3JrZmxvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsbUNBQTJDO0FBRTNDLHdFQUF3RTtBQUN4RSwwRUFBMEU7QUFDMUUscUVBQXFFO0FBQ3JFLG9EQUFvRDtBQUNwRCxNQUFNLHdCQUF3QixHQUFHLFlBQVksQ0FBQztBQXFDOUMseUVBQXlFO0FBQ3pFLHVFQUF1RTtBQUN2RSw4Q0FBOEM7QUFDOUMsU0FBUyxJQUFJLENBQUMsSUFBWSxFQUFFLEtBQWE7SUFDdkMsTUFBTSxJQUFJLEdBQUcsSUFBSTtTQUNkLFdBQVcsRUFBRTtTQUNiLE9BQU8sQ0FBQyxhQUFhLEVBQUUsR0FBRyxDQUFDO1NBQzNCLE9BQU8sQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDM0IsT0FBTyxHQUFHLElBQUksSUFBSSxNQUFNLElBQUksS0FBSyxFQUFFLENBQUM7QUFDdEMsQ0FBQztBQVVELHlFQUF5RTtBQUN6RSxvRUFBb0U7QUFDcEUsNEVBQTRFO0FBQzVFLDBFQUEwRTtBQUMxRSw0RUFBNEU7QUFDNUUsc0RBQXNEO0FBQ3RELE1BQU0sa0JBQWtCLEdBQWE7SUFDbkMsMEZBQTBGO0lBQzFGLG9JQUFvSTtJQUNwSSxRQUFRO0NBQ1QsQ0FBQztBQUVGOzs7Ozs7Ozs7R0FTRztBQUNILE1BQWEscUJBQXNCLFNBQVEsa0JBQVM7O0lBQ2xDLFFBQVEsQ0FBd0I7SUFFaEQsWUFBWSxLQUEyQixFQUFFLE9BQThCO1FBQ3JFLEtBQUssQ0FBQyxLQUFLLEVBQUUsdUJBQXVCLENBQUMsQ0FBQztRQUV0QyxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ3ZELE1B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Q0FBQyxFQUFFLElBQUksRUFBRSx3QkFBd0IsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1NBQ3ZFLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRTtZQUM5QixNQUFNLEVBQUUsQ0FBQyxlQUFlLENBQUM7WUFDekIsV0FBVyxFQUFFLE9BQU87Z0JBQ2xCLENBQUMsQ0FBQztvQkFDQSxRQUFRLEVBQUUsZUFBTSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsS0FBSztvQkFDOUMsWUFBWSxFQUFFLGVBQU0sQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLEtBQUs7aUJBQ25EO2dCQUNELENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxlQUFNLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUU7WUFDckQsS0FBSztTQUNOLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBakZILHNEQWtGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZ2l0aHViIH0gZnJvbSAncHJvamVuJztcblxuLy8gTmlnaHRseSBlbnZpcm9ubWVudC1yZWdyZXNzaW9uIGNhbmFyeSAoQUQtMDAxL0YwMDYpOiByZS1ydW5zIHRoZSBzYW1lXG4vLyBzY2VuYXJpbyBhZ2FpbnN0IHNldHRsZWQgYG1haW5gIGluIHRvZGF5J3MgcnVubmVyIGltYWdlLCBpbmRlcGVuZGVudCBvZlxuLy8gdGhlIHB1bGxfcmVxdWVzdCBnYXRlLiBRdWlldCBVVEMgaG91cjsgYSBjb21wb25lbnQgY29uc3RhbnQsIG5vdCBhXG4vLyBwcm9qZWN0IG9wdGlvbiAtIHVwZ3JhZGluZyBpdCBpcyBhIHJldmlld2VkIGRpZmYuXG5jb25zdCBOSUdIVExZX0RPR0ZPT0RfU0NIRURVTEUgPSAnMTcgMyAqICogKic7XG5cbi8qKlxuICogT25lIGludm9jYXRpb24gb2YgdGhlIGFjdGlvbiB3aXRoaW4gdGhlIGRvZ2Zvb2Qgc2NlbmFyaW86IG9wdGlvbmFsIGZpeHR1cmVcbiAqIHNldHVwLCB0aGUgYHVzZXM6IC5gIGNhbGwgd2l0aCB0aGlzIHN0ZXAncyBpbnB1dHMsIHRoZW4gdGhpcyBzdGVwJ3NcbiAqIGFzc2VydGlvbnMuIE1vc3QgYWN0aW9ucyBuZWVkIGV4YWN0bHkgb25lOyBhY3Rpb25zIHdpdGggYSByZS1ydW4vbm8tb3BcbiAqIGJlaGF2aW9yIHRvIHZlcmlmeSAoZS5nLiBGMDA2J3MgcmV1c2UtdGhlLVBSIHBhdGgsIEYwMDcncyBuby1vcC1jb21taXRcbiAqIHBhdGgpIGRlY2xhcmUgdHdvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFjdGlvbkRvZ2Zvb2RTdGVwIHtcbiAgLyoqIExhYmVsIHVzZWQgdG8gbmFtZSB0aGlzIHN0ZXAtZ3JvdXAncyBnZW5lcmF0ZWQgd29ya2Zsb3cgc3RlcHMuICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogU3RlcCBpZCBmb3IgdGhlIGB1c2VzOiAuYCBpbnZvY2F0aW9uLCBzbyBhIGxhdGVyIGFzc2VydGlvbiBjYW5cbiAgICogcmVmZXJlbmNlIHRoaXMgc3RlcCdzIG91dHB1dHMgdmlhIGAke3sgc3RlcHMuPGlkPi5vdXRwdXRzLjxuYW1lPiB9fWAuXG4gICAqIEBkZWZhdWx0IC0gYSBzbHVnIGRlcml2ZWQgZnJvbSBgbmFtZWAsIGRpc2FtYmlndWF0ZWQgYnkgcG9zaXRpb25cbiAgICovXG4gIHJlYWRvbmx5IGlkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTaGVsbCBzdGVwcyBleGVjdXRlZCBiZWZvcmUgdGhpcyBpbnZvY2F0aW9uLCB0byBwcm9kdWNlIG9yIGFsdGVyXG4gICAqIGZpeHR1cmUgc3RhdGUuXG4gICAqIEBkZWZhdWx0IFtdXG4gICAqL1xuICByZWFkb25seSBmaXh0dXJlU3RlcHM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogYHdpdGg6YCBpbnB1dHMgZm9yIHRoaXMgaW52b2NhdGlvbidzIGxvY2FsIGB1c2VzOiAuYCBjYWxsLlxuICAgKiBAZGVmYXVsdCB7fVxuICAgKi9cbiAgcmVhZG9ubHkgaW5wdXRzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblxuICAvKiogU2hlbGwgYXNzZXJ0aW9ucyBhZnRlciB0aGlzIGludm9jYXRpb24gLSB0aGUgam9iIGZhaWxzIHVubGVzcyBldmVyeSBvbmUgZXhpdHMgMC4gKi9cbiAgcmVhZG9ubHkgYXNzZXJ0aW9uczogc3RyaW5nW107XG59XG5cbi8vIExvd2VyY2FzZSwgbm9uLWFscGhhbnVtZXJpY3MgY29sbGFwc2VkIHRvIGEgc2luZ2xlIGAtYCwgdHJpbW1lZCAtIHRoZW5cbi8vIGRpc2FtYmlndWF0ZWQgYnkgcG9zaXRpb24gc28gdHdvIHN0ZXBzIHNoYXJpbmcgYSBuYW1lIChvciBhbiB1bm5hbWVkXG4vLyBzbHVnLCBlLmcuIHB1bmN0dWF0aW9uLW9ubHkpIG5ldmVyIGNvbGxpZGUuXG5mdW5jdGlvbiBzbHVnKG5hbWU6IHN0cmluZywgaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XG4gIGNvbnN0IGJhc2UgPSBuYW1lXG4gICAgLnRvTG93ZXJDYXNlKClcbiAgICAucmVwbGFjZSgvW15hLXowLTldKy9nLCAnLScpXG4gICAgLnJlcGxhY2UoL14tK3wtKyQvZywgJycpO1xuICByZXR1cm4gYCR7YmFzZSB8fCAnc3RlcCd9LSR7aW5kZXh9YDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBY3Rpb25Eb2dmb29kT3B0aW9ucyB7XG4gIC8qKiBPbmUgb3IgbW9yZSBzY2VuYXJpbyBzdGVwcywgcnVuIGluIG9yZGVyLCBpbiB0aGUgZG9nZm9vZCBqb2IuICovXG4gIHJlYWRvbmx5IHNjZW5hcmlvOiBBY3Rpb25Eb2dmb29kU3RlcFtdO1xuXG4gIC8qKiBTaGVsbCBjbGVhbnVwLCBydW4gb25jZSBhdCB0aGUgZW5kIHdpdGggYGlmOiBhbHdheXMoKWAsIHNvIHJlcGVhdGVkIHJ1bnMgc3RhcnQgY2xlYW4uICovXG4gIHJlYWRvbmx5IGNsZWFudXA6IHN0cmluZ1tdO1xufVxuXG4vLyBUaGUgc3RhbmQtaW4gc2NlbmFyaW8gdXNlZCB3aGVuIGEgcHJvamVjdCBkZWNsYXJlcyBubyBgZG9nZm9vZGAgYXQgYWxsXG4vLyAoZS5nLiBhIHJlcG8gYHByb2plbiBuZXdgIGp1c3Qgc2NhZmZvbGRlZCkuIFRoZSB3b3JrZmxvdyBpcyBzdGlsbFxuLy8gZ2VuZXJhdGVkIGFuZCBzdGlsbCBydW5zIG9uIGV2ZXJ5IFBSIC0gaXQganVzdCBmYWlscywgdGVsbGluZyB5b3Ugd2hhdCB0b1xuLy8gd3JpdGUuIEFELTAwMSdzIHJ1bGUgaXMgdGhhdCBhIGRvZ2Zvb2QgbXVzdCBuZXZlciBiZSAqc2lsZW50bHkqIGFic2VudDtcbi8vIHRocm93aW5nIGR1cmluZyBzeW50aCBpbnN0ZWFkIHdvdWxkIG1ha2UgdGhlIHByb2plY3QgdHlwZSB1bnNjYWZmb2xkYWJsZSxcbi8vIHNpbmNlIGBwcm9qZW4gbmV3YCBoYXMgbm8gd2F5IHRvIHN1cHBseSBhIHNjZW5hcmlvLlxuY29uc3QgVU5DT05GSUdVUkVEX1NURVBTOiBzdHJpbmdbXSA9IFtcbiAgJ2VjaG8gXCI6OmVycm9yOjp0aGlzIGFjdGlvbiBoYXMgbm8gZG9nZm9vZCBzY2VuYXJpbywgc28gbm90aGluZyBleGVyY2lzZXMgaXQgZW5kLXRvLWVuZC5cIicsXG4gICdlY2hvIFwiQWRkIGRvZ2Zvb2Q6IHsgc2NlbmFyaW86IFsuLi5dLCBjbGVhbnVwOiBbLi4uXSB9IHRvIC5wcm9qZW5yYy50cyBhbmQgcnVuIG5weCBwcm9qZW4gLSBzZWUgdGhlIEB4cGVydHNzL3Byb2plbi10eXBlcyBSRUFETUUuXCInLFxuICAnZXhpdCAxJyxcbl07XG5cbi8qKlxuICogUGVyIEFELTAwMSdzIGRvZ2Zvb2QgdGVzdDogdGhlIGNvbXBvc2l0ZSBhY3Rpb24gaXMgcnVuICoqYWdhaW5zdCB0aGlzXG4gKiByZXBvKiosIGVuZC10by1lbmQsIHZpYSBhIGxvY2FsIGB1c2VzOiAuYCByZWZlcmVuY2UgLSBubyBleHRlcm5hbCBoYXJuZXNzLlxuICogQnVpbGRzIGB0ZXN0LWRvZ2Zvb2QueW1sYCBmcm9tIGFuIG9yZGVyZWQgYHNjZW5hcmlvYCBvZiBpbnZvY2F0aW9uIHN0ZXBzXG4gKiAoc2VlIGBBY3Rpb25Eb2dmb29kU3RlcGApIGZvbGxvd2VkIGJ5IGEgc2hhcmVkIGNsZWFudXAgc3RlcC5cbiAqXG4gKiBPbWl0dGluZyBgb3B0aW9uc2AgZ2VuZXJhdGVzIHRoZSB3b3JrZmxvdyB3aXRoIGEgc2luZ2xlIGZhaWxpbmcgc3RlcCAoc2VlXG4gKiBgVU5DT05GSUdVUkVEX1NURVBTYCkuIEEgKnBhcnRpYWxseSogZGVjbGFyZWQgZG9nZm9vZCBpcyBzdGlsbCBhIHN5bnRoXG4gKiBlcnJvcjogaWYgeW91IHdyb3RlIGEgc2NlbmFyaW8gYnkgaGFuZCwgeW91IGNhbiB3cml0ZSBpdHMgY2xlYW51cCB0b28uXG4gKi9cbmV4cG9ydCBjbGFzcyBBY3Rpb25Eb2dmb29kV29ya2Zsb3cgZXh0ZW5kcyBDb21wb25lbnQge1xuICBwdWJsaWMgcmVhZG9ubHkgd29ya2Zsb3c6IGdpdGh1Yi5HaXRodWJXb3JrZmxvdztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogZ2l0aHViLkdpdEh1YlByb2plY3QsIG9wdGlvbnM/OiBBY3Rpb25Eb2dmb29kT3B0aW9ucykge1xuICAgIHN1cGVyKHNjb3BlLCAnQWN0aW9uRG9nZm9vZFdvcmtmbG93Jyk7XG5cbiAgICBpZiAob3B0aW9ucykge1xuICAgICAgaWYgKCFvcHRpb25zLnNjZW5hcmlvIHx8IG9wdGlvbnMuc2NlbmFyaW8ubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAnQWN0aW9uRG9nZm9vZFdvcmtmbG93IHJlcXVpcmVzIGF0IGxlYXN0IG9uZSBkb2dmb29kLnNjZW5hcmlvIHN0ZXAnLFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgaWYgKCFvcHRpb25zLmNsZWFudXAgfHwgb3B0aW9ucy5jbGVhbnVwLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FjdGlvbkRvZ2Zvb2RXb3JrZmxvdyByZXF1aXJlcyBkb2dmb29kLmNsZWFudXAnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBnaCA9IHNjb3BlLmdpdGh1YjtcbiAgICBpZiAoIWdoKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdBY3Rpb25Eb2dmb29kV29ya2Zsb3cgcmVxdWlyZXMgR2l0SHViIGludGVncmF0aW9uIHRvIGJlIGVuYWJsZWQnLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBzdGVwczogZ2l0aHViLndvcmtmbG93cy5Kb2JTdGVwW10gPSBvcHRpb25zXG4gICAgICA/IFtnaXRodWIuV29ya2Zsb3dTdGVwcy5jaGVja291dCgpXVxuICAgICAgOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAnRG9nZm9vZCBzY2VuYXJpbyBub3QgY29uZmlndXJlZCcsXG4gICAgICAgICAgcnVuOiBVTkNPTkZJR1VSRURfU1RFUFMuam9pbignXFxuJyksXG4gICAgICAgIH0sXG4gICAgICBdO1xuXG4gICAgKG9wdGlvbnM/LnNjZW5hcmlvID8/IFtdKS5mb3JFYWNoKChzdGVwLCBpbmRleCkgPT4ge1xuICAgICAgaWYgKHN0ZXAuZml4dHVyZVN0ZXBzICYmIHN0ZXAuZml4dHVyZVN0ZXBzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgc3RlcHMucHVzaCh7XG4gICAgICAgICAgbmFtZTogYCR7c3RlcC5uYW1lfTogZml4dHVyZWAsXG4gICAgICAgICAgcnVuOiBzdGVwLmZpeHR1cmVTdGVwcy5qb2luKCdcXG4nKSxcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGhhc0lucHV0cyA9IHN0ZXAuaW5wdXRzICYmIE9iamVjdC5rZXlzKHN0ZXAuaW5wdXRzKS5sZW5ndGggPiAwO1xuICAgICAgc3RlcHMucHVzaCh7XG4gICAgICAgIGlkOiBzdGVwLmlkID8/IHNsdWcoc3RlcC5uYW1lLCBpbmRleCksXG4gICAgICAgIG5hbWU6IGAke3N0ZXAubmFtZX06IHJ1biB0aGUgYWN0aW9uYCxcbiAgICAgICAgdXNlczogJy4nLFxuICAgICAgICAuLi4oaGFzSW5wdXRzID8geyB3aXRoOiBzdGVwLmlucHV0cyB9IDoge30pLFxuICAgICAgfSk7XG5cbiAgICAgIHN0ZXBzLnB1c2goe1xuICAgICAgICBuYW1lOiBgJHtzdGVwLm5hbWV9OiBhc3NlcnRgLFxuICAgICAgICBydW46IHN0ZXAuYXNzZXJ0aW9ucy5qb2luKCdcXG4nKSxcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgaWYgKG9wdGlvbnMpIHtcbiAgICAgIHN0ZXBzLnB1c2goe1xuICAgICAgICBuYW1lOiAnQ2xlYW51cCcsXG4gICAgICAgIGlmOiAnYWx3YXlzKCknLFxuICAgICAgICBydW46IG9wdGlvbnMuY2xlYW51cC5qb2luKCdcXG4nKSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHRoaXMud29ya2Zsb3cgPSBuZXcgZ2l0aHViLkdpdGh1YldvcmtmbG93KGdoLCAndGVzdC1kb2dmb29kJyk7XG4gICAgdGhpcy53b3JrZmxvdy5vbih7XG4gICAgICB3b3JrZmxvd0Rpc3BhdGNoOiB7fSxcbiAgICAgIHB1bGxSZXF1ZXN0OiB7IGJyYW5jaGVzOiBbJ21haW4nXSB9LFxuICAgICAgLy8gTm8gbmlnaHRseSBjYW5hcnkgd2hpbGUgdW5jb25maWd1cmVkOiB0aGUgUFIgcnVuIGlzIHRoZSBzaWduYWwsIGFuZFxuICAgICAgLy8gYSBjcm9uIHRoYXQgYWx3YXlzIGZhaWxzIGlzIGp1c3QgYSBkYWlseSBub3RpZmljYXRpb24gbm9ib2R5IHJlYWRzLlxuICAgICAgLi4uKG9wdGlvbnMgPyB7IHNjaGVkdWxlOiBbeyBjcm9uOiBOSUdIVExZX0RPR0ZPT0RfU0NIRURVTEUgfV0gfSA6IHt9KSxcbiAgICB9KTtcbiAgICB0aGlzLndvcmtmbG93LmFkZEpvYignZG9nZm9vZCcsIHtcbiAgICAgIHJ1bnNPbjogWyd1YnVudHUtbGF0ZXN0J10sXG4gICAgICBwZXJtaXNzaW9uczogb3B0aW9uc1xuICAgICAgICA/IHtcbiAgICAgICAgICBjb250ZW50czogZ2l0aHViLndvcmtmbG93cy5Kb2JQZXJtaXNzaW9uLldSSVRFLFxuICAgICAgICAgIHB1bGxSZXF1ZXN0czogZ2l0aHViLndvcmtmbG93cy5Kb2JQZXJtaXNzaW9uLldSSVRFLFxuICAgICAgICB9XG4gICAgICAgIDogeyBjb250ZW50czogZ2l0aHViLndvcmtmbG93cy5Kb2JQZXJtaXNzaW9uLlJFQUQgfSxcbiAgICAgIHN0ZXBzLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWRvZ2Zvb2Qtd29ya2Zsb3cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWN0aW9ucy9hY3Rpb24tZG9nZm9vZC13b3JrZmxvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsbUNBQTJDO0FBQzNDLGlFQUFpRTtBQUVqRSx3RUFBd0U7QUFDeEUsMEVBQTBFO0FBQzFFLHFFQUFxRTtBQUNyRSxvREFBb0Q7QUFDcEQsTUFBTSx3QkFBd0IsR0FBRyxZQUFZLENBQUM7QUFxQzlDLHlFQUF5RTtBQUN6RSx1RUFBdUU7QUFDdkUsOENBQThDO0FBQzlDLFNBQVMsSUFBSSxDQUFDLElBQVksRUFBRSxLQUFhO0lBQ3ZDLE1BQU0sSUFBSSxHQUFHLElBQUk7U0FDZCxXQUFXLEVBQUU7U0FDYixPQUFPLENBQUMsYUFBYSxFQUFFLEdBQUcsQ0FBQztTQUMzQixPQUFPLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzNCLE9BQU8sR0FBRyxJQUFJLElBQUksTUFBTSxJQUFJLEtBQUssRUFBRSxDQUFDO0FBQ3RDLENBQUM7QUFVRCx5RUFBeUU7QUFDekUsb0VBQW9FO0FBQ3BFLDRFQUE0RTtBQUM1RSwwRUFBMEU7QUFDMUUsNEVBQTRFO0FBQzVFLHNEQUFzRDtBQUN0RCxNQUFNLGtCQUFrQixHQUFhO0lBQ25DLDBGQUEwRjtJQUMxRixvSUFBb0k7SUFDcEksUUFBUTtDQUNULENBQUM7QUFFRjs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFhLHFCQUFzQixTQUFRLGtCQUFTOztJQUNsQyxRQUFRLENBQXdCO0lBRWhELFlBQVksS0FBMkIsRUFBRSxPQUE4QjtRQUNyRSxLQUFLLENBQUMsS0FBSyxFQUFFLHVCQUF1QixDQUFDLENBQUM7UUFFdEMsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNaLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxD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QUMsRUFBRTtZQUNuQyxzRUFBc0U7WUFDdEUsc0VBQXNFO1lBQ3RFLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsd0JBQXdCLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztTQUN2RSxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUU7WUFDOUIsTUFBTSxFQUFFLENBQUMsZUFBZSxDQUFDO1lBQ3pCLFdBQVcsRUFBRSxPQUFPO2dCQUNsQixDQUFDLENBQUM7b0JBQ0EsUUFBUSxFQUFFLGVBQU0sQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLEtBQUs7b0JBQzlDLFlBQVksRUFBRSxlQUFNLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxLQUFLO2lCQUNuRDtnQkFDRCxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsZUFBTSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFO1lBQ3JELEtBQUs7U0FDTixDQUFDLENBQUM7SUFDTCxDQUFDOztBQXJGSCxzREFzRkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGdpdGh1YiB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBub3RlV29ya2Zsb3dQdXJwb3NlIH0gZnJvbSAnLi4vY29tbW9uL3dvcmtmbG93LXB1cnBvc2UnO1xuXG4vLyBOaWdodGx5IGVudmlyb25tZW50LXJlZ3Jlc3Npb24gY2FuYXJ5IChBRC0wMDEvRjAwNik6IHJlLXJ1bnMgdGhlIHNhbWVcbi8vIHNjZW5hcmlvIGFnYWluc3Qgc2V0dGxlZCBgbWFpbmAgaW4gdG9kYXkncyBydW5uZXIgaW1hZ2UsIGluZGVwZW5kZW50IG9mXG4vLyB0aGUgcHVsbF9yZXF1ZXN0IGdhdGUuIFF1aWV0IFVUQyBob3VyOyBhIGNvbXBvbmVudCBjb25zdGFudCwgbm90IGFcbi8vIHByb2plY3Qgb3B0aW9uIC0gdXBncmFkaW5nIGl0IGlzIGEgcmV2aWV3ZWQgZGlmZi5cbmNvbnN0IE5JR0hUTFlfRE9HRk9PRF9TQ0hFRFVMRSA9ICcxNyAzICogKiAqJztcblxuLyoqXG4gKiBPbmUgaW52b2NhdGlvbiBvZiB0aGUgYWN0aW9uIHdpdGhpbiB0aGUgZG9nZm9vZCBzY2VuYXJpbzogb3B0aW9uYWwgZml4dHVyZVxuICogc2V0dXAsIHRoZSBgdXNlczogLmAgY2FsbCB3aXRoIHRoaXMgc3RlcCdzIGlucHV0cywgdGhlbiB0aGlzIHN0ZXAnc1xuICogYXNzZXJ0aW9ucy4gTW9zdCBhY3Rpb25zIG5lZWQgZXhhY3RseSBvbmU7IGFjdGlvbnMgd2l0aCBhIHJlLXJ1bi9uby1vcFxuICogYmVoYXZpb3IgdG8gdmVyaWZ5IChlLmcuIEYwMDYncyByZXVzZS10aGUtUFIgcGF0aCwgRjAwNydzIG5vLW9wLWNvbW1pdFxuICogcGF0aCkgZGVjbGFyZSB0d28uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uRG9nZm9vZFN0ZXAge1xuICAvKiogTGFiZWwgdXNlZCB0byBuYW1lIHRoaXMgc3RlcC1ncm91cCdzIGdlbmVyYXRlZCB3b3JrZmxvdyBzdGVwcy4gKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTdGVwIGlkIGZvciB0aGUgYHVzZXM6IC5gIGludm9jYXRpb24sIHNvIGEgbGF0ZXIgYXNzZXJ0aW9uIGNhblxuICAgKiByZWZlcmVuY2UgdGhpcyBzdGVwJ3Mgb3V0cHV0cyB2aWEgYCR7eyBzdGVwcy48aWQ+Lm91dHB1dHMuPG5hbWU+IH19YC5cbiAgICogQGRlZmF1bHQgLSBhIHNsdWcgZGVyaXZlZCBmcm9tIGBuYW1lYCwgZGlzYW1iaWd1YXRlZCBieSBwb3NpdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgaWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNoZWxsIHN0ZXBzIGV4ZWN1dGVkIGJlZm9yZSB0aGlzIGludm9jYXRpb24sIHRvIHByb2R1Y2Ugb3IgYWx0ZXJcbiAgICogZml4dHVyZSBzdGF0ZS5cbiAgICogQGRlZmF1bHQgW11cbiAgICovXG4gIHJlYWRvbmx5IGZpeHR1cmVTdGVwcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBgd2l0aDpgIGlucHV0cyBmb3IgdGhpcyBpbnZvY2F0aW9uJ3MgbG9jYWwgYHVzZXM6IC5gIGNhbGwuXG4gICAqIEBkZWZhdWx0IHt9XG4gICAqL1xuICByZWFkb25seSBpbnB1dHM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuXG4gIC8qKiBTaGVsbCBhc3NlcnRpb25zIGFmdGVyIHRoaXMgaW52b2NhdGlvbiAtIHRoZSBqb2IgZmFpbHMgdW5sZXNzIGV2ZXJ5IG9uZSBleGl0cyAwLiAqL1xuICByZWFkb25seSBhc3NlcnRpb25zOiBzdHJpbmdbXTtcbn1cblxuLy8gTG93ZXJjYXNlLCBub24tYWxwaGFudW1lcmljcyBjb2xsYXBzZWQgdG8gYSBzaW5nbGUgYC1gLCB0cmltbWVkIC0gdGhlblxuLy8gZGlzYW1iaWd1YXRlZCBieSBwb3NpdGlvbiBzbyB0d28gc3RlcHMgc2hhcmluZyBhIG5hbWUgKG9yIGFuIHVubmFtZWRcbi8vIHNsdWcsIGUuZy4gcHVuY3R1YXRpb24tb25seSkgbmV2ZXIgY29sbGlkZS5cbmZ1bmN0aW9uIHNsdWcobmFtZTogc3RyaW5nLCBpbmRleDogbnVtYmVyKTogc3RyaW5nIHtcbiAgY29uc3QgYmFzZSA9IG5hbWVcbiAgICAudG9Mb3dlckNhc2UoKVxuICAgIC5yZXBsYWNlKC9bXmEtejAtOV0rL2csICctJylcbiAgICAucmVwbGFjZSgvXi0rfC0rJC9nLCAnJyk7XG4gIHJldHVybiBgJHtiYXNlIHx8ICdzdGVwJ30tJHtpbmRleH1gO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGlvbkRvZ2Zvb2RPcHRpb25zIHtcbiAgLyoqIE9uZSBvciBtb3JlIHNjZW5hcmlvIHN0ZXBzLCBydW4gaW4gb3JkZXIsIGluIHRoZSBkb2dmb29kIGpvYi4gKi9cbiAgcmVhZG9ubHkgc2NlbmFyaW86IEFjdGlvbkRvZ2Zvb2RTdGVwW107XG5cbiAgLyoqIFNoZWxsIGNsZWFudXAsIHJ1biBvbmNlIGF0IHRoZSBlbmQgd2l0aCBgaWY6IGFsd2F5cygpYCwgc28gcmVwZWF0ZWQgcnVucyBzdGFydCBjbGVhbi4gKi9cbiAgcmVhZG9ubHkgY2xlYW51cDogc3RyaW5nW107XG59XG5cbi8vIFRoZSBzdGFuZC1pbiBzY2VuYXJpbyB1c2VkIHdoZW4gYSBwcm9qZWN0IGRlY2xhcmVzIG5vIGBkb2dmb29kYCBhdCBhbGxcbi8vIChlLmcuIGEgcmVwbyBgcHJvamVuIG5ld2AganVzdCBzY2FmZm9sZGVkKS4gVGhlIHdvcmtmbG93IGlzIHN0aWxsXG4vLyBnZW5lcmF0ZWQgYW5kIHN0aWxsIHJ1bnMgb24gZXZlcnkgUFIgLSBpdCBqdXN0IGZhaWxzLCB0ZWxsaW5nIHlvdSB3aGF0IHRvXG4vLyB3cml0ZS4gQUQtMDAxJ3MgcnVsZSBpcyB0aGF0IGEgZG9nZm9vZCBtdXN0IG5ldmVyIGJlICpzaWxlbnRseSogYWJzZW50O1xuLy8gdGhyb3dpbmcgZHVyaW5nIHN5bnRoIGluc3RlYWQgd291bGQgbWFrZSB0aGUgcHJvamVjdCB0eXBlIHVuc2NhZmZvbGRhYmxlLFxuLy8gc2luY2UgYHByb2plbiBuZXdgIGhhcyBubyB3YXkgdG8gc3VwcGx5IGEgc2NlbmFyaW8uXG5jb25zdCBVTkNPTkZJR1VSRURfU1RFUFM6IHN0cmluZ1tdID0gW1xuICAnZWNobyBcIjo6ZXJyb3I6OnRoaXMgYWN0aW9uIGhhcyBubyBkb2dmb29kIHNjZW5hcmlvLCBzbyBub3RoaW5nIGV4ZXJjaXNlcyBpdCBlbmQtdG8tZW5kLlwiJyxcbiAgJ2VjaG8gXCJBZGQgZG9nZm9vZDogeyBzY2VuYXJpbzogWy4uLl0sIGNsZWFudXA6IFsuLi5dIH0gdG8gLnByb2plbnJjLnRzIGFuZCBydW4gbnB4IHByb2plbiAtIHNlZSB0aGUgQHhwZXJ0c3MvcHJvamVuLXR5cGVzIFJFQURNRS5cIicsXG4gICdleGl0IDEnLFxuXTtcblxuLyoqXG4gKiBQZXIgQUQtMDAxJ3MgZG9nZm9vZCB0ZXN0OiB0aGUgY29tcG9zaXRlIGFjdGlvbiBpcyBydW4gKiphZ2FpbnN0IHRoaXNcbiAqIHJlcG8qKiwgZW5kLXRvLWVuZCwgdmlhIGEgbG9jYWwgYHVzZXM6IC5gIHJlZmVyZW5jZSAtIG5vIGV4dGVybmFsIGhhcm5lc3MuXG4gKiBCdWlsZHMgYHRlc3QtZG9nZm9vZC55bWxgIGZyb20gYW4gb3JkZXJlZCBgc2NlbmFyaW9gIG9mIGludm9jYXRpb24gc3RlcHNcbiAqIChzZWUgYEFjdGlvbkRvZ2Zvb2RTdGVwYCkgZm9sbG93ZWQgYnkgYSBzaGFyZWQgY2xlYW51cCBzdGVwLlxuICpcbiAqIE9taXR0aW5nIGBvcHRpb25zYCBnZW5lcmF0ZXMgdGhlIHdvcmtmbG93IHdpdGggYSBzaW5nbGUgZmFpbGluZyBzdGVwIChzZWVcbiAqIGBVTkNPTkZJR1VSRURfU1RFUFNgKS4gQSAqcGFydGlhbGx5KiBkZWNsYXJlZCBkb2dmb29kIGlzIHN0aWxsIGEgc3ludGhcbiAqIGVycm9yOiBpZiB5b3Ugd3JvdGUgYSBzY2VuYXJpbyBieSBoYW5kLCB5b3UgY2FuIHdyaXRlIGl0cyBjbGVhbnVwIHRvby5cbiAqL1xuZXhwb3J0IGNsYXNzIEFjdGlvbkRvZ2Zvb2RXb3JrZmxvdyBleHRlbmRzIENvbXBvbmVudCB7XG4gIHB1YmxpYyByZWFkb25seSB3b3JrZmxvdzogZ2l0aHViLkdpdGh1YldvcmtmbG93O1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBnaXRodWIuR2l0SHViUHJvamVjdCwgb3B0aW9ucz86IEFjdGlvbkRvZ2Zvb2RPcHRpb25zKSB7XG4gICAgc3VwZXIoc2NvcGUsICdBY3Rpb25Eb2dmb29kV29ya2Zsb3cnKTtcblxuICAgIGlmIChvcHRpb25zKSB7XG4gICAgICBpZiAoIW9wdGlvbnMuc2NlbmFyaW8gfHwgb3B0aW9ucy5zY2VuYXJpby5sZW5ndGggPT09IDApIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICdBY3Rpb25Eb2dmb29kV29ya2Zsb3cgcmVxdWlyZXMgYXQgbGVhc3Qgb25lIGRvZ2Zvb2Quc2NlbmFyaW8gc3RlcCcsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBpZiAoIW9wdGlvbnMuY2xlYW51cCB8fCBvcHRpb25zLmNsZWFudXAubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignQWN0aW9uRG9nZm9vZFdvcmtmbG93IHJlcXVpcmVzIGRvZ2Zvb2QuY2xlYW51cCcpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IGdoID0gc2NvcGUuZ2l0aHViO1xuICAgIGlmICghZ2gpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ0FjdGlvbkRvZ2Zvb2RXb3JrZmxvdyByZXF1aXJlcyBHaXRIdWIgaW50ZWdyYXRpb24gdG8gYmUgZW5hYmxlZCcsXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IHN0ZXBzOiBnaXRodWIud29ya2Zsb3dzLkpvYlN0ZXBbXSA9IG9wdGlvbnNcbiAgICAgID8gW2dpdGh1Yi5Xb3JrZmxvd1N0ZXBzLmNoZWNrb3V0KCldXG4gICAgICA6IFtcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICdEb2dmb29kIHNjZW5hcmlvIG5vdCBjb25maWd1cmVkJyxcbiAgICAgICAgICBydW46IFVOQ09ORklHVVJFRF9TVEVQUy5qb2luKCdcXG4nKSxcbiAgICAgICAgfSxcbiAgICAgIF07XG5cbiAgICAob3B0aW9ucz8uc2NlbmFyaW8gPz8gW10pLmZvckVhY2goKHN0ZXAsIGluZGV4KSA9PiB7XG4gICAgICBpZiAoc3RlcC5maXh0dXJlU3RlcHMgJiYgc3RlcC5maXh0dXJlU3RlcHMubGVuZ3RoID4gMCkge1xuICAgICAgICBzdGVwcy5wdXNoKHtcbiAgICAgICAgICBuYW1lOiBgJHtzdGVwLm5hbWV9OiBmaXh0dXJlYCxcbiAgICAgICAgICBydW46IHN0ZXAuZml4dHVyZVN0ZXBzLmpvaW4oJ1xcbicpLFxuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgaGFzSW5wdXRzID0gc3RlcC5pbnB1dHMgJiYgT2JqZWN0LmtleXMoc3RlcC5pbnB1dHMpLmxlbmd0aCA+IDA7XG4gICAgICBzdGVwcy5wdXNoKHtcbiAgICAgICAgaWQ6IHN0ZXAuaWQgPz8gc2x1ZyhzdGVwLm5hbWUsIGluZGV4KSxcbiAgICAgICAgbmFtZTogYCR7c3RlcC5uYW1lfTogcnVuIHRoZSBhY3Rpb25gLFxuICAgICAgICB1c2VzOiAnLicsXG4gICAgICAgIC4uLihoYXNJbnB1dHMgPyB7IHdpdGg6IHN0ZXAuaW5wdXRzIH0gOiB7fSksXG4gICAgICB9KTtcblxuICAgICAgc3RlcHMucHVzaCh7XG4gICAgICAgIG5hbWU6IGAke3N0ZXAubmFtZX06IGFzc2VydGAsXG4gICAgICAgIHJ1bjogc3RlcC5hc3NlcnRpb25zLmpvaW4oJ1xcbicpLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpZiAob3B0aW9ucykge1xuICAgICAgc3RlcHMucHVzaCh7XG4gICAgICAgIG5hbWU6ICdDbGVhbnVwJyxcbiAgICAgICAgaWY6ICdhbHdheXMoKScsXG4gICAgICAgIHJ1bjogb3B0aW9ucy5jbGVhbnVwLmpvaW4oJ1xcbicpLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy53b3JrZmxvdyA9IG5ldyBnaXRodWIuR2l0aHViV29ya2Zsb3coZ2gsICd0ZXN0LWRvZ2Zvb2QnKTtcbiAgICBub3RlV29ya2Zsb3dQdXJwb3NlKFxuICAgICAgdGhpcy53b3JrZmxvdy5maWxlLFxuICAgICAgJ0VuZC10by1lbmQgZG9nZm9vZCB0ZXN0IHJ1bm5pbmcgdGhlIGFjdGlvbiBhZ2FpbnN0IHRoaXMgcmVwby4nLFxuICAgICk7XG4gICAgdGhpcy53b3JrZmxvdy5vbih7XG4gICAgICB3b3JrZmxvd0Rpc3BhdGNoOiB7fSxcbiAgICAgIHB1bGxSZXF1ZXN0OiB7IGJyYW5jaGVzOiBbJ21haW4nXSB9LFxuICAgICAgLy8gTm8gbmlnaHRseSBjYW5hcnkgd2hpbGUgdW5jb25maWd1cmVkOiB0aGUgUFIgcnVuIGlzIHRoZSBzaWduYWwsIGFuZFxuICAgICAgLy8gYSBjcm9uIHRoYXQgYWx3YXlzIGZhaWxzIGlzIGp1c3QgYSBkYWlseSBub3RpZmljYXRpb24gbm9ib2R5IHJlYWRzLlxuICAgICAgLi4uKG9wdGlvbnMgPyB7IHNjaGVkdWxlOiBbeyBjcm9uOiBOSUdIVExZX0RPR0ZPT0RfU0NIRURVTEUgfV0gfSA6IHt9KSxcbiAgICB9KTtcbiAgICB0aGlzLndvcmtmbG93LmFkZEpvYignZG9nZm9vZCcsIHtcbiAgICAgIHJ1bnNPbjogWyd1YnVudHUtbGF0ZXN0J10sXG4gICAgICBwZXJtaXNzaW9uczogb3B0aW9uc1xuICAgICAgICA/IHtcbiAgICAgICAgICBjb250ZW50czogZ2l0aHViLndvcmtmbG93cy5Kb2JQZXJtaXNzaW9uLldSSVRFLFxuICAgICAgICAgIHB1bGxSZXF1ZXN0czogZ2l0aHViLndvcmtmbG93cy5Kb2JQZXJtaXNzaW9uLldSSVRFLFxuICAgICAgICB9XG4gICAgICAgIDogeyBjb250ZW50czogZ2l0aHViLndvcmtmbG93cy5Kb2JQZXJtaXNzaW9uLlJFQUQgfSxcbiAgICAgIHN0ZXBzLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -1,8 +1,8 @@
1
1
  import { Component, github } from 'projen';
2
2
  export interface ActionSonarWorkflowOptions {
3
3
  /**
4
- * URL of the org's self-hosted SonarQube instance. Required, no default -
5
- * a guessed server is worse than a loud failure.
4
+ * URL of the org's SonarCloud instance (e.g. `https://sonarcloud.io`).
5
+ * Required, no default - a guessed server is worse than a loud failure.
6
6
  */
7
7
  readonly sonarHostUrl: string;
8
8
  /** @default "SONAR_TOKEN" */
@@ -14,10 +14,10 @@ export interface ActionSonarWorkflowOptions {
14
14
  readonly sonarPullRequestGate?: boolean;
15
15
  }
16
16
  /**
17
- * AD-001 Layer 2: self-hosted SonarQube Community Edition via the Scanner
18
- * CLI only (never `SonarSource/sonarqube-scan-action` - third-party, and it
19
- * carried a security advisory). `sonar.inclusions` is set explicitly since
20
- * default inclusions may skip `action.yml` outside `.github/`.
17
+ * AD-001 Layer 2: SonarCloud via the Scanner CLI only (never
18
+ * `SonarSource/sonarqube-scan-action` - third-party, and it carried a
19
+ * security advisory). `sonar.inclusions` is set explicitly since default
20
+ * inclusions may skip `action.yml` outside `.github/`.
21
21
  */
22
22
  export declare class ActionSonarWorkflow extends Component {
23
23
  readonly workflow: github.GithubWorkflow;
@@ -3,18 +3,19 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ActionSonarWorkflow = void 0;
4
4
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
5
5
  const projen_1 = require("projen");
6
+ const workflow_purpose_1 = require("../common/workflow-purpose");
6
7
  // Pinned release + verified SHA-256 (linux-x64) - upgrade is a reviewed diff
7
8
  // of this constant, never a floating version (AD-001).
8
9
  const SONAR_SCANNER_VERSION = '8.1.0.6389';
9
10
  const SONAR_SCANNER_SHA256 = 'bb8f709f9cb73352f8d1260a3b3c506c0f41146754bc630762c126d795499d0b';
10
11
  /**
11
- * AD-001 Layer 2: self-hosted SonarQube Community Edition via the Scanner
12
- * CLI only (never `SonarSource/sonarqube-scan-action` - third-party, and it
13
- * carried a security advisory). `sonar.inclusions` is set explicitly since
14
- * default inclusions may skip `action.yml` outside `.github/`.
12
+ * AD-001 Layer 2: SonarCloud via the Scanner CLI only (never
13
+ * `SonarSource/sonarqube-scan-action` - third-party, and it carried a
14
+ * security advisory). `sonar.inclusions` is set explicitly since default
15
+ * inclusions may skip `action.yml` outside `.github/`.
15
16
  */
16
17
  class ActionSonarWorkflow extends projen_1.Component {
17
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.ActionSonarWorkflow", version: "0.0.6" };
18
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.ActionSonarWorkflow", version: "0.0.8" };
18
19
  workflow;
19
20
  constructor(scope, options) {
20
21
  super(scope, 'ActionSonarWorkflow');
@@ -28,6 +29,7 @@ class ActionSonarWorkflow extends projen_1.Component {
28
29
  const sonarTokenSecret = options.sonarTokenSecret ?? 'SONAR_TOKEN';
29
30
  const pullRequestGate = options.sonarPullRequestGate ?? true;
30
31
  this.workflow = new projen_1.github.GithubWorkflow(gh, 'sonar');
32
+ (0, workflow_purpose_1.noteWorkflowPurpose)(this.workflow.file, 'Static-analysis scan of the action on the org SonarCloud.');
31
33
  this.workflow.on({
32
34
  push: { branches: ['main'] },
33
35
  ...(pullRequestGate ? { pullRequest: {} } : {}),
@@ -61,4 +63,4 @@ echo "/tmp/sonar-scanner-${SONAR_SCANNER_VERSION}-linux-x64/bin" >> "$GITHUB_PAT
61
63
  }
62
64
  }
63
65
  exports.ActionSonarWorkflow = ActionSonarWorkflow;
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLXNvbmFyLXdvcmtmbG93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FjdGlvbnMvYWN0aW9uLXNvbmFyLXdvcmtmbG93LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxtQ0FBMkM7QUFFM0MsNkVBQTZFO0FBQzdFLHVEQUF1RDtBQUN2RCxNQUFNLHFCQUFxQixHQUFHLFlBQVksQ0FBQztBQUMzQyxNQUFNLG9CQUFvQixHQUN4QixrRUFBa0UsQ0FBQztBQW1CckU7Ozs7O0dBS0c7QUFDSCxNQUFhLG1CQUFvQixTQUFRLGtCQUFTOztJQUNoQyxRQUFRLENBQXdCO0lBRWhELFlBQ0UsS0FBMkIsRUFDM0IsT0FBbUM7UUFFbkMsS0FBSyxDQUFDLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxDQUFDO1FBRXBDLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDMUIsTUFBTSxJQUFJLEtBQUssQ0FBQywyQ0FBMkMsQ0FBQyxDQUFDO1FBQy9ELENBQUM7UUFFRCxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNSLE1BQU0sSUFBSSxLQUFLLENBQ2IsK0RBQStELENBQ2hFLENBQUM7UUFDSixDQUFDO1FBRUQsTUFBTSxnQkFBZ0IsR0FBRyxPQUFPLENBQUMsZ0JBQWdCLElBQUksYUFBYSxDQUFDO1FBQ25FLE1BQU0sZUFBZSxHQUFHLE9BQU8sQ0FBQyxvQkFBb0IsSUFBSSxJQUFJLENBQUM7UUFFN0QsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLGVBQU0sQ0FBQyxjQUFjLENBQUMsRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQ2YsSUFBSSxFQUFFLEVBQUUsUUFBUSxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDNUIsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztTQUNoRCxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUU7WUFDNUIsTUFBTSxFQUFFLENBQUMsZUFBZSxDQUFDO1lBQ3pCLFdBQVcsRUFBRSxFQUFFLFFBQVEsRUFBRSxlQUFNLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUU7WUFDOUQsR0FBRyxFQUFFLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixnQkFBZ0IsS0FBSyxFQUFFO1lBQzNELEtBQUssRUFBRTtnQkFDTCxlQUFNLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRTtnQkFDL0I7b0JBQ0UsSUFBSSxFQUFFLHVCQUF1QjtvQkFDN0IsR0FBRyxFQUFFOzBIQUMyRyxxQkFBcUI7UUFDdkksb0JBQW9COzsyQkFFRCxxQkFBcUI7Q0FDL0M7aUJBQ1E7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLE1BQU07b0JBQ1osR0FBRyxFQUFFO3FCQUNNLE9BQU8sQ0FBQyxZQUFZO3VCQUNsQixLQUFLLENBQUMsSUFBSTs7O2dDQUdEO2lCQUN2QjthQUNGO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUF0REgsa0RBdURDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBnaXRodWIgfSBmcm9tICdwcm9qZW4nO1xuXG4vLyBQaW5uZWQgcmVsZWFzZSArIHZlcmlmaWVkIFNIQS0yNTYgKGxpbnV4LXg2NCkgLSB1cGdyYWRlIGlzIGEgcmV2aWV3ZWQgZGlmZlxuLy8gb2YgdGhpcyBjb25zdGFudCwgbmV2ZXIgYSBmbG9hdGluZyB2ZXJzaW9uIChBRC0wMDEpLlxuY29uc3QgU09OQVJfU0NBTk5FUl9WRVJTSU9OID0gJzguMS4wLjYzODknO1xuY29uc3QgU09OQVJfU0NBTk5FUl9TSEEyNTYgPVxuICAnYmI4ZjcwOWY5Y2I3MzM1MmY4ZDEyNjBhM2IzYzUwNmMwZjQxMTQ2NzU0YmM2MzA3NjJjMTI2ZDc5NTQ5OWQwYic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uU29uYXJXb3JrZmxvd09wdGlvbnMge1xuICAvKipcbiAgICogVVJMIG9mIHRoZSBvcmcncyBzZWxmLWhvc3RlZCBTb25hclF1YmUgaW5zdGFuY2UuIFJlcXVpcmVkLCBubyBkZWZhdWx0IC1cbiAgICogYSBndWVzc2VkIHNlcnZlciBpcyB3b3JzZSB0aGFuIGEgbG91ZCBmYWlsdXJlLlxuICAgKi9cbiAgcmVhZG9ubHkgc29uYXJIb3N0VXJsOiBzdHJpbmc7XG5cbiAgLyoqIEBkZWZhdWx0IFwiU09OQVJfVE9LRU5cIiAqL1xuICByZWFkb25seSBzb25hclRva2VuU2VjcmV0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIGBzb25hci55bWxgIGFsc28gcnVucyBvbiBgcHVsbF9yZXF1ZXN0YCBhcyBhIHBhc3MvZmFpbCBnYXRlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBzb25hclB1bGxSZXF1ZXN0R2F0ZT86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQUQtMDAxIExheWVyIDI6IHNlbGYtaG9zdGVkIFNvbmFyUXViZSBDb21tdW5pdHkgRWRpdGlvbiB2aWEgdGhlIFNjYW5uZXJcbiAqIENMSSBvbmx5IChuZXZlciBgU29uYXJTb3VyY2Uvc29uYXJxdWJlLXNjYW4tYWN0aW9uYCAtIHRoaXJkLXBhcnR5LCBhbmQgaXRcbiAqIGNhcnJpZWQgYSBzZWN1cml0eSBhZHZpc29yeSkuIGBzb25hci5pbmNsdXNpb25zYCBpcyBzZXQgZXhwbGljaXRseSBzaW5jZVxuICogZGVmYXVsdCBpbmNsdXNpb25zIG1heSBza2lwIGBhY3Rpb24ueW1sYCBvdXRzaWRlIGAuZ2l0aHViL2AuXG4gKi9cbmV4cG9ydCBjbGFzcyBBY3Rpb25Tb25hcldvcmtmbG93IGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgcHVibGljIHJlYWRvbmx5IHdvcmtmbG93OiBnaXRodWIuR2l0aHViV29ya2Zsb3c7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IGdpdGh1Yi5HaXRIdWJQcm9qZWN0LFxuICAgIG9wdGlvbnM6IEFjdGlvblNvbmFyV29ya2Zsb3dPcHRpb25zLFxuICApIHtcbiAgICBzdXBlcihzY29wZSwgJ0FjdGlvblNvbmFyV29ya2Zsb3cnKTtcblxuICAgIGlmICghb3B0aW9ucy5zb25hckhvc3RVcmwpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQWN0aW9uU29uYXJXb3JrZmxvdyByZXF1aXJlcyBzb25hckhvc3RVcmwnKTtcbiAgICB9XG5cbiAgICBjb25zdCBnaCA9IHNjb3BlLmdpdGh1YjtcbiAgICBpZiAoIWdoKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdBY3Rpb25Tb25hcldvcmtmbG93IHJlcXVpcmVzIEdpdEh1YiBpbnRlZ3JhdGlvbiB0byBiZSBlbmFibGVkJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc3Qgc29uYXJUb2tlblNlY3JldCA9IG9wdGlvbnMuc29uYXJUb2tlblNlY3JldCA/PyAnU09OQVJfVE9LRU4nO1xuICAgIGNvbnN0IHB1bGxSZXF1ZXN0R2F0ZSA9IG9wdGlvbnMuc29uYXJQdWxsUmVxdWVzdEdhdGUgPz8gdHJ1ZTtcblxuICAgIHRoaXMud29ya2Zsb3cgPSBuZXcgZ2l0aHViLkdpdGh1YldvcmtmbG93KGdoLCAnc29uYXInKTtcbiAgICB0aGlzLndvcmtmbG93Lm9uKHtcbiAgICAgIHB1c2g6IHsgYnJhbmNoZXM6IFsnbWFpbiddIH0sXG4gICAgICAuLi4ocHVsbFJlcXVlc3RHYXRlID8geyBwdWxsUmVxdWVzdDoge30gfSA6IHt9KSxcbiAgICB9KTtcbiAgICB0aGlzLndvcmtmbG93LmFkZEpvYignc29uYXInLCB7XG4gICAgICBydW5zT246IFsndWJ1bnR1LWxhdGVzdCddLFxuICAgICAgcGVybWlzc2lvbnM6IHsgY29udGVudHM6IGdpdGh1Yi53b3JrZmxvd3MuSm9iUGVybWlzc2lvbi5SRUFEIH0sXG4gICAgICBlbnY6IHsgU09OQVJfVE9LRU46IGBcXCR7eyBzZWNyZXRzLiR7c29uYXJUb2tlblNlY3JldH0gfX1gIH0sXG4gICAgICBzdGVwczogW1xuICAgICAgICBnaXRodWIuV29ya2Zsb3dTdGVwcy5jaGVja291dCgpLFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ0luc3RhbGwgc29uYXItc2Nhbm5lcicsXG4gICAgICAgICAgcnVuOiBgc2V0IC1ldW8gcGlwZWZhaWxcbmN1cmwgLWZzU0wgLW8gL3RtcC9zb25hci1zY2FubmVyLnppcCBcImh0dHBzOi8vYmluYXJpZXMuc29uYXJzb3VyY2UuY29tL0Rpc3RyaWJ1dGlvbi9zb25hci1zY2FubmVyLWNsaS9zb25hci1zY2FubmVyLWNsaS0ke1NPTkFSX1NDQU5ORVJfVkVSU0lPTn0tbGludXgteDY0LnppcFwiXG5lY2hvIFwiJHtTT05BUl9TQ0FOTkVSX1NIQTI1Nn0gIC90bXAvc29uYXItc2Nhbm5lci56aXBcIiB8IHNoYTI1NnN1bSAtYyAtXG51bnppcCAtcSAvdG1wL3NvbmFyLXNjYW5uZXIuemlwIC1kIC90bXBcbmVjaG8gXCIvdG1wL3NvbmFyLXNjYW5uZXItJHtTT05BUl9TQ0FOTkVSX1ZFUlNJT059LWxpbnV4LXg2NC9iaW5cIiA+PiBcIiRHSVRIVUJfUEFUSFwiXG5gLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ1NjYW4nLFxuICAgICAgICAgIHJ1bjogYHNvbmFyLXNjYW5uZXIgXFxcXFxuICAtRHNvbmFyLmhvc3QudXJsPSR7b3B0aW9ucy5zb25hckhvc3RVcmx9IFxcXFxcbiAgLURzb25hci5wcm9qZWN0S2V5PSR7c2NvcGUubmFtZX0gXFxcXFxuICAtRHNvbmFyLnByb2plY3RWZXJzaW9uPVwiJChnaXQgZGVzY3JpYmUgLS10YWdzIC0tYWx3YXlzKVwiIFxcXFxcbiAgLURzb25hci5pbmNsdXNpb25zPS5naXRodWIvd29ya2Zsb3dzLyoqLGFjdGlvbi55bWwsKiovKi5zaCBcXFxcXG4gIC1Ec29uYXIucXVhbGl0eWdhdGUud2FpdD10cnVlYCxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLXNvbmFyLXdvcmtmbG93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FjdGlvbnMvYWN0aW9uLXNvbmFyLXdvcmtmbG93LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxtQ0FBMkM7QUFDM0MsaUVBQWlFO0FBRWpFLDZFQUE2RTtBQUM3RSx1REFBdUQ7QUFDdkQsTUFBTSxxQkFBcUIsR0FBRyxZQUFZLENBQUM7QUFDM0MsTUFBTSxvQkFBb0IsR0FDeEIsa0VBQWtFLENBQUM7QUFtQnJFOzs7OztHQUtHO0FBQ0gsTUFBYSxtQkFBb0IsU0FBUSxrQkFBUzs7SUFDaEMsUUFBUSxDQUF3QjtJQUVoRCxZQUNFLEtBQTJCLEVBQzNCLE9BQW1DO1FBRW5DLEtBQUssQ0FBQyxLQUFLLEVBQUUscUJBQXFCLENBQUMsQ0FBQztRQUVwQyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQzFCLE1BQU0sSUFBSSxLQUFLLENBQUMsMkNBQTJDLENBQUMsQ0FBQztRQUMvRCxDQUFDO1FBRUQsTUFBTSxFQUFFLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUN4QixJQUFJLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDUixNQUFNLElBQUksS0FBSyxDQUNiLCtEQUErRCxDQUNoRSxDQUFDO1FBQ0osQ0FBQztRQUVELE1BQU0sZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixJQUFJLGFBQWEsQ0FBQztRQUNuRSxNQUFNLGVBQWUsR0FBRyxPQUFPLENBQUMsb0JBQW9CLElBQUksSUFBSSxDQUFDO1FBRTdELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxlQUFNLENBQUMsY0FBYyxDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUN2RCxJQUFBLHNDQUFtQixFQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFDbEIsMkRBQTJELENBQzVELENBQUM7UUFDRixJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUNmLElBQUksRUFBRSxFQUFFLFFBQVEsRUFBRSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQzVCLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7U0FDaEQsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFO1lBQzVCLE1BQU0sRUFBRSxDQUFDLGVBQWUsQ0FBQztZQUN6QixXQUFXLEVBQUUsRUFBRSxRQUFRLEVBQUUsZUFBTSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFO1lBQzlELEdBQUcsRUFBRSxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsZ0JBQWdCLEtBQUssRUFBRTtZQUMzRCxLQUFLLEVBQUU7Z0JBQ0wsZUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUU7Z0JBQy9CO29CQUNFLElBQUksRUFBRSx1QkFBdUI7b0JBQzdCLEdBQUcsRUFBRTswSEFDMkcscUJBQXFCO1FBQ3ZJLG9CQUFvQjs7MkJBRUQscUJBQXFCO0NBQy9DO2lCQUNRO2dCQUNEO29CQUNFLElBQUksRUFBRSxNQUFNO29CQUNaLEdBQUcsRUFBRTtxQkFDTSxPQUFPLENBQUMsWUFBWTt1QkFDbEIsS0FBSyxDQUFDLElBQUk7OztnQ0FHRDtpQkFDdkI7YUFDRjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBMURILGtEQTJEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZ2l0aHViIH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IG5vdGVXb3JrZmxvd1B1cnBvc2UgfSBmcm9tICcuLi9jb21tb24vd29ya2Zsb3ctcHVycG9zZSc7XG5cbi8vIFBpbm5lZCByZWxlYXNlICsgdmVyaWZpZWQgU0hBLTI1NiAobGludXgteDY0KSAtIHVwZ3JhZGUgaXMgYSByZXZpZXdlZCBkaWZmXG4vLyBvZiB0aGlzIGNvbnN0YW50LCBuZXZlciBhIGZsb2F0aW5nIHZlcnNpb24gKEFELTAwMSkuXG5jb25zdCBTT05BUl9TQ0FOTkVSX1ZFUlNJT04gPSAnOC4xLjAuNjM4OSc7XG5jb25zdCBTT05BUl9TQ0FOTkVSX1NIQTI1NiA9XG4gICdiYjhmNzA5ZjljYjczMzUyZjhkMTI2MGEzYjNjNTA2YzBmNDExNDY3NTRiYzYzMDc2MmMxMjZkNzk1NDk5ZDBiJztcblxuZXhwb3J0IGludGVyZmFjZSBBY3Rpb25Tb25hcldvcmtmbG93T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBVUkwgb2YgdGhlIG9yZydzIFNvbmFyQ2xvdWQgaW5zdGFuY2UgKGUuZy4gYGh0dHBzOi8vc29uYXJjbG91ZC5pb2ApLlxuICAgKiBSZXF1aXJlZCwgbm8gZGVmYXVsdCAtIGEgZ3Vlc3NlZCBzZXJ2ZXIgaXMgd29yc2UgdGhhbiBhIGxvdWQgZmFpbHVyZS5cbiAgICovXG4gIHJlYWRvbmx5IHNvbmFySG9zdFVybDogc3RyaW5nO1xuXG4gIC8qKiBAZGVmYXVsdCBcIlNPTkFSX1RPS0VOXCIgKi9cbiAgcmVhZG9ubHkgc29uYXJUb2tlblNlY3JldD86IHN0cmluZztcblxuICAvKipcbiAgICogV2hldGhlciBgc29uYXIueW1sYCBhbHNvIHJ1bnMgb24gYHB1bGxfcmVxdWVzdGAgYXMgYSBwYXNzL2ZhaWwgZ2F0ZS5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgc29uYXJQdWxsUmVxdWVzdEdhdGU/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIEFELTAwMSBMYXllciAyOiBTb25hckNsb3VkIHZpYSB0aGUgU2Nhbm5lciBDTEkgb25seSAobmV2ZXJcbiAqIGBTb25hclNvdXJjZS9zb25hcnF1YmUtc2Nhbi1hY3Rpb25gIC0gdGhpcmQtcGFydHksIGFuZCBpdCBjYXJyaWVkIGFcbiAqIHNlY3VyaXR5IGFkdmlzb3J5KS4gYHNvbmFyLmluY2x1c2lvbnNgIGlzIHNldCBleHBsaWNpdGx5IHNpbmNlIGRlZmF1bHRcbiAqIGluY2x1c2lvbnMgbWF5IHNraXAgYGFjdGlvbi55bWxgIG91dHNpZGUgYC5naXRodWIvYC5cbiAqL1xuZXhwb3J0IGNsYXNzIEFjdGlvblNvbmFyV29ya2Zsb3cgZXh0ZW5kcyBDb21wb25lbnQge1xuICBwdWJsaWMgcmVhZG9ubHkgd29ya2Zsb3c6IGdpdGh1Yi5HaXRodWJXb3JrZmxvdztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogZ2l0aHViLkdpdEh1YlByb2plY3QsXG4gICAgb3B0aW9uczogQWN0aW9uU29uYXJXb3JrZmxvd09wdGlvbnMsXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCAnQWN0aW9uU29uYXJXb3JrZmxvdycpO1xuXG4gICAgaWYgKCFvcHRpb25zLnNvbmFySG9zdFVybCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdBY3Rpb25Tb25hcldvcmtmbG93IHJlcXVpcmVzIHNvbmFySG9zdFVybCcpO1xuICAgIH1cblxuICAgIGNvbnN0IGdoID0gc2NvcGUuZ2l0aHViO1xuICAgIGlmICghZ2gpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ0FjdGlvblNvbmFyV29ya2Zsb3cgcmVxdWlyZXMgR2l0SHViIGludGVncmF0aW9uIHRvIGJlIGVuYWJsZWQnLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBzb25hclRva2VuU2VjcmV0ID0gb3B0aW9ucy5zb25hclRva2VuU2VjcmV0ID8/ICdTT05BUl9UT0tFTic7XG4gICAgY29uc3QgcHVsbFJlcXVlc3RHYXRlID0gb3B0aW9ucy5zb25hclB1bGxSZXF1ZXN0R2F0ZSA/PyB0cnVlO1xuXG4gICAgdGhpcy53b3JrZmxvdyA9IG5ldyBnaXRodWIuR2l0aHViV29ya2Zsb3coZ2gsICdzb25hcicpO1xuICAgIG5vdGVXb3JrZmxvd1B1cnBvc2UoXG4gICAgICB0aGlzLndvcmtmbG93LmZpbGUsXG4gICAgICAnU3RhdGljLWFuYWx5c2lzIHNjYW4gb2YgdGhlIGFjdGlvbiBvbiB0aGUgb3JnIFNvbmFyQ2xvdWQuJyxcbiAgICApO1xuICAgIHRoaXMud29ya2Zsb3cub24oe1xuICAgICAgcHVzaDogeyBicmFuY2hlczogWydtYWluJ10gfSxcbiAgICAgIC4uLihwdWxsUmVxdWVzdEdhdGUgPyB7IHB1bGxSZXF1ZXN0OiB7fSB9IDoge30pLFxuICAgIH0pO1xuICAgIHRoaXMud29ya2Zsb3cuYWRkSm9iKCdzb25hcicsIHtcbiAgICAgIHJ1bnNPbjogWyd1YnVudHUtbGF0ZXN0J10sXG4gICAgICBwZXJtaXNzaW9uczogeyBjb250ZW50czogZ2l0aHViLndvcmtmbG93cy5Kb2JQZXJtaXNzaW9uLlJFQUQgfSxcbiAgICAgIGVudjogeyBTT05BUl9UT0tFTjogYFxcJHt7IHNlY3JldHMuJHtzb25hclRva2VuU2VjcmV0fSB9fWAgfSxcbiAgICAgIHN0ZXBzOiBbXG4gICAgICAgIGdpdGh1Yi5Xb3JrZmxvd1N0ZXBzLmNoZWNrb3V0KCksXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAnSW5zdGFsbCBzb25hci1zY2FubmVyJyxcbiAgICAgICAgICBydW46IGBzZXQgLWV1byBwaXBlZmFpbFxuY3VybCAtZnNTTCAtbyAvdG1wL3NvbmFyLXNjYW5uZXIuemlwIFwiaHR0cHM6Ly9iaW5hcmllcy5zb25hcnNvdXJjZS5jb20vRGlzdHJpYnV0aW9uL3NvbmFyLXNjYW5uZXItY2xpL3NvbmFyLXNjYW5uZXItY2xpLSR7U09OQVJfU0NBTk5FUl9WRVJTSU9OfS1saW51eC14NjQuemlwXCJcbmVjaG8gXCIke1NPTkFSX1NDQU5ORVJfU0hBMjU2fSAgL3RtcC9zb25hci1zY2FubmVyLnppcFwiIHwgc2hhMjU2c3VtIC1jIC1cbnVuemlwIC1xIC90bXAvc29uYXItc2Nhbm5lci56aXAgLWQgL3RtcFxuZWNobyBcIi90bXAvc29uYXItc2Nhbm5lci0ke1NPTkFSX1NDQU5ORVJfVkVSU0lPTn0tbGludXgteDY0L2JpblwiID4+IFwiJEdJVEhVQl9QQVRIXCJcbmAsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAnU2NhbicsXG4gICAgICAgICAgcnVuOiBgc29uYXItc2Nhbm5lciBcXFxcXG4gIC1Ec29uYXIuaG9zdC51cmw9JHtvcHRpb25zLnNvbmFySG9zdFVybH0gXFxcXFxuICAtRHNvbmFyLnByb2plY3RLZXk9JHtzY29wZS5uYW1lfSBcXFxcXG4gIC1Ec29uYXIucHJvamVjdFZlcnNpb249XCIkKGdpdCBkZXNjcmliZSAtLXRhZ3MgLS1hbHdheXMpXCIgXFxcXFxuICAtRHNvbmFyLmluY2x1c2lvbnM9LmdpdGh1Yi93b3JrZmxvd3MvKiosYWN0aW9uLnltbCwqKi8qLnNoIFxcXFxcbiAgLURzb25hci5xdWFsaXR5Z2F0ZS53YWl0PXRydWVgLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -10,15 +10,15 @@ export interface GitHubActionProjectOptions extends github.GitHubProjectOptions
10
10
  readonly description?: string;
11
11
  /**
12
12
  * Name of the GitHub Actions secret holding the PAT used for
13
- * projen-automation PR comments (F003/F009) and, when the action has a
13
+ * projen-automation PR comments (F003) and, when the action has a
14
14
  * `token` input, the dogfood's invocation of it.
15
15
  * @default "PROJEN_GITHUB_TOKEN"
16
16
  */
17
17
  readonly gheTokenSecret?: string;
18
18
  /**
19
- * URL of the org's self-hosted SonarQube instance. MUST be reachable from
20
- * github.com-hosted (public) runners (AD-001). Required, no default: a
21
- * guessed server is worse than a loud failure.
19
+ * URL of the org's SonarCloud instance (e.g. `https://sonarcloud.io`).
20
+ * MUST be reachable from github.com-hosted (public) runners (AD-001).
21
+ * Required, no default: a guessed server is worse than a loud failure.
22
22
  */
23
23
  readonly sonarHostUrl: string;
24
24
  /** @default "SONAR_TOKEN" */
@@ -53,9 +53,9 @@ export interface GitHubActionProjectOptions extends github.GitHubProjectOptions
53
53
  /**
54
54
  * Scaffolds the repo lifecycle (AD-001) around a hand-committed, composite
55
55
  * (shell) GitHub Action: the `build`/`test-dogfood`/`sonar`/`release`
56
- * workflows, versioning and release discipline, the F003 verify components,
57
- * the F009 allowlist guard, and repo boilerplate (a private version-source
58
- * `package.json`, `.yamllint`, `LICENSE`, and a `README.md` template). The
56
+ * workflows, versioning and release discipline, the F003 verify components,
57
+ * and repo boilerplate (a private version-source `package.json`, `.yamllint`,
58
+ * `LICENSE`, and a `README.md` template). The
59
59
  * action's own content
60
60
  * (`action.yml`, its shell scripts, `test/` fixtures) is authored by hand
61
61
  * per the action's own F### spec - this type only lints it.
@@ -6,12 +6,12 @@ const projen_1 = require("projen");
6
6
  const action_build_workflow_1 = require("./action-build-workflow");
7
7
  const action_dogfood_workflow_1 = require("./action-dogfood-workflow");
8
8
  const action_sonar_workflow_1 = require("./action-sonar-workflow");
9
- const actions_allowlist_guard_1 = require("../common/actions-allowlist-guard");
10
9
  const constants_1 = require("../common/constants");
11
10
  const internal_actions_1 = require("../common/internal-actions");
12
11
  const projen_drift_check_workflow_1 = require("../common/projen-drift-check-workflow");
13
12
  const projenrc_ts_1 = require("../common/projenrc-ts");
14
13
  const workflow_change_notice_workflow_1 = require("../common/workflow-change-notice-workflow");
14
+ const workflow_purpose_1 = require("../common/workflow-purpose");
15
15
  // `require('projen/package.json')`/`require('../../package.json')` resolve
16
16
  // via Node's normal module resolution, so in a *published* package these
17
17
  // read the versions actually installed in the consuming repo's
@@ -54,15 +54,15 @@ hand-committed.
54
54
  /**
55
55
  * Scaffolds the repo lifecycle (AD-001) around a hand-committed, composite
56
56
  * (shell) GitHub Action: the `build`/`test-dogfood`/`sonar`/`release`
57
- * workflows, versioning and release discipline, the F003 verify components,
58
- * the F009 allowlist guard, and repo boilerplate (a private version-source
59
- * `package.json`, `.yamllint`, `LICENSE`, and a `README.md` template). The
57
+ * workflows, versioning and release discipline, the F003 verify components,
58
+ * and repo boilerplate (a private version-source `package.json`, `.yamllint`,
59
+ * `LICENSE`, and a `README.md` template). The
60
60
  * action's own content
61
61
  * (`action.yml`, its shell scripts, `test/` fixtures) is authored by hand
62
62
  * per the action's own F### spec - this type only lints it.
63
63
  */
64
64
  class GitHubActionProject extends projen_1.github.GitHubProject {
65
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.GitHubActionProject", version: "0.0.6" };
65
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.GitHubActionProject", version: "0.0.8" };
66
66
  buildWorkflow;
67
67
  dogfoodWorkflow;
68
68
  sonarWorkflow;
@@ -87,7 +87,6 @@ class GitHubActionProject extends projen_1.github.GitHubProject {
87
87
  gheTokenSecret: options.gheTokenSecret ?? constants_1.DEFAULT_GHE_TOKEN_SECRET,
88
88
  });
89
89
  new workflow_change_notice_workflow_1.WorkflowChangeNoticeWorkflow(this);
90
- new actions_allowlist_guard_1.ActionsAllowlistGuard(this);
91
90
  new projen_1.License(this, {
92
91
  spdx: options.license ?? 'MIT',
93
92
  copyrightOwner: 'xpertss',
@@ -141,7 +140,14 @@ class GitHubActionProject extends projen_1.github.GitHubProject {
141
140
  { name: 'Install dependencies', run: 'npm ci' },
142
141
  ],
143
142
  });
143
+ // The release workflow is created inside `release.Release` (projen
144
+ // internal), not by this type - reach its file by path to annotate it
145
+ // like every other generated workflow. This type is always a root
146
+ // project, so projen names it `release.yml`.
147
+ (0, workflow_purpose_1.noteWorkflowPurpose)(this.tryFindFile('.github/workflows/release.yml'), 'Continuous release on push to main: bump version, tag, and create a GitHub Release.');
148
+ // `pull-request-lint` is projen's built-in PR-title validation workflow.
149
+ (0, workflow_purpose_1.noteWorkflowPurpose)(this.tryFindFile('.github/workflows/pull-request-lint.yml'), 'Reject pull requests whose titles do not follow the conventional-commit (semantic-release) format.');
144
150
  }
145
151
  }
146
152
  exports.GitHubActionProject = GitHubActionProject;
147
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2l0aHViLWFjdGlvbi1wcm9qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FjdGlvbnMvZ2l0aHViLWFjdGlvbi1wcm9qZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxtQ0FPZ0I7QUFDaEIsbUVBQThEO0FBQzlELHVFQUF3RjtBQUN4RixtRUFBOEQ7QUFDOUQsK0VBQTBFO0FBQzFFLG1EQUErRDtBQUMvRCxpRUFBMEU7QUFDMUUsdUZBQWlGO0FBQ2pGLHVEQUFpRTtBQUNqRSwrRkFBeUY7QUFFekYsMkVBQTJFO0FBQzNFLHlFQUF5RTtBQUN6RSwrREFBK0Q7QUFDL0QseUVBQXlFO0FBQ3pFLG9FQUFvRTtBQUNwRSxrRUFBa0U7QUFDbEUsaUVBQWlFO0FBQ2pFLE1BQU0sY0FBYyxHQUFXLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLE9BQU8sQ0FBQztBQUN0RSxpRUFBaUU7QUFDakUsTUFBTSxvQkFBb0IsR0FBVyxPQUFPLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxPQUFPLENBQUM7QUFFM0Usd0VBQXdFO0FBQ3hFLDRFQUE0RTtBQUM1RSxtQ0FBbUM7QUFDbkMsTUFBTSxzQkFBc0IsR0FBRyxRQUFRLENBQUM7QUEwRHhDLFNBQVMscUJBQXFCLENBQUMsT0FBbUM7SUFDaEUsT0FBTyxLQUFLLE9BQU8sQ0FBQyxJQUFJOztFQUV4QixPQUFPLENBQUMsV0FBVyxJQUFJLEVBQUU7Ozs7O2tCQUtULE9BQU8sQ0FBQyxJQUFJOzs7Ozs7Ozs7Ozs7Ozs7Q0FlN0IsQ0FBQztBQUNGLENBQUM7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFhLG1CQUFvQixTQUFRLGVBQU0sQ0FBQyxhQUFhOztJQUMzQyxhQUFhLENBQXNCO0lBQ25DLGVBQWUsQ0FBd0I7SUFDdkMsYUFBYSxDQUFzQjtJQUNuQyxPQUFPLENBQWtCO0lBRXpDLFlBQVksT0FBbUM7UUFDN0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUs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YyxFQUFFLGdCQUFPLENBQUMsY0FBYyxDQUFDLFVBQVUsRUFBRTtZQUNuRCxXQUFXLEVBQUUsMEJBQTBCLHNCQUFzQixFQUFFO1lBQy9ELHlCQUF5QixFQUFFO2dCQUN6QixFQUFFLElBQUksRUFBRSxzQkFBc0IsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFO2FBQ2hEO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUE3Rkgsa0RBOEZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSnNvbkZpbGUsXG4gIExpY2Vuc2UsXG4gIFJlbGVhc2FibGVDb21taXRzLFxuICBZYW1sRmlsZSxcbiAgZ2l0aHViLFxuICByZWxlYXNlLFxufSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHsgQWN0aW9uQnVpbGRXb3JrZmxvdyB9IGZyb20gJy4vYWN0aW9uLWJ1aWxkLXdvcmtmbG93JztcbmltcG9ydCB7IEFjdGlvbkRvZ2Zvb2RPcHRpb25zLCBBY3Rpb25Eb2dmb29kV29ya2Zsb3cgfSBmcm9tICcuL2FjdGlvbi1kb2dmb29kLXdvcmtmbG93JztcbmltcG9ydCB7IEFjdGlvblNvbmFyV29ya2Zsb3cgfSBmcm9tICcuL2FjdGlvbi1zb25hci13b3JrZmxvdyc7XG5pbXBvcnQgeyBBY3Rpb25zQWxsb3dsaXN0R3VhcmQgfSBmcm9tICcuLi9jb21tb24vYWN0aW9ucy1hbGxvd2xpc3QtZ3VhcmQnO1xuaW1wb3J0IHsgREVGQVVMVF9HSEVfVE9LRU5fU0VDUkVUIH0gZnJvbSAnLi4vY29tbW9uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBhcHBseUludGVybmFsQWN0aW9uT3ZlcnJpZGVzIH0gZnJvbSAnLi4vY29tbW9uL2ludGVybmFsLWFjdGlvbnMnO1xuaW1wb3J0IHsgUHJvamVuRHJpZnRDaGVja1dvcmtmbG93IH0gZnJvbSAnLi4vY29tbW9uL3Byb2plbi1kcmlmdC1jaGVjay13b3JrZmxvdyc7XG5pbXBvcnQgeyBhdHRhY2hUeXBlU2NyaXB0UHJvamVucmMgfSBmcm9tICcuLi9jb21tb24vcHJvamVucmMtdHMnO1xuaW1wb3J0IHsgV29ya2Zsb3dDaGFuZ2VOb3RpY2VXb3JrZmxvdyB9IGZyb20gJy4uL2NvbW1vbi93b3JrZmxvdy1jaGFuZ2Utbm90aWNlLXdvcmtmbG93JztcblxuLy8gYHJlcXVpcmUoJ3Byb2plbi9wYWNrYWdlLmpzb24nKWAvYHJlcXVpcmUoJy4uLy4uL3BhY2thZ2UuanNvbicpYCByZXNvbHZlXG4vLyB2aWEgTm9kZSdzIG5vcm1hbCBtb2R1bGUgcmVzb2x1dGlvbiwgc28gaW4gYSAqcHVibGlzaGVkKiBwYWNrYWdlIHRoZXNlXG4vLyByZWFkIHRoZSB2ZXJzaW9ucyBhY3R1YWxseSBpbnN0YWxsZWQgaW4gdGhlIGNvbnN1bWluZyByZXBvJ3Ncbi8vIG5vZGVfbW9kdWxlcyAtIGV4YWN0bHkgdGhlIFwiUFJPSkVOX1ZFUlNJT04gb2YgdGhlIHN5bnRoXCIgLyBcInZlcnNpb24gb2Zcbi8vIHRoaXMgcGFja2FnZSB0aGF0IHNjYWZmb2xkZWQgdGhlIHJlcG9cIiB0aGUgcHJpdmF0ZSBwYWNrYWdlLmpzb24nc1xuLy8gZGV2RGVwZW5kZW5jaWVzIG5lZWQgdG8gcGluIChzZWUgRjAxMCBDSS1kZXBlbmRlbmNpZXMgc2VjdGlvbikuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXJlcXVpcmUtaW1wb3J0c1xuY29uc3QgUFJPSkVOX1ZFUlNJT046IHN0cmluZyA9IHJlcXVpcmUoJ3Byb2plbi9wYWNrYWdlLmpzb24nKS52ZXJzaW9uO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1yZXF1aXJlLWltcG9ydHNcbmNvbnN0IFBST0pFTl9UWVBFU19WRVJTSU9OOiBzdHJpbmcgPSByZXF1aXJlKCcuLi8uLi9wYWNrYWdlLmpzb24nKS52ZXJzaW9uO1xuXG4vLyBFeGFjdCBwaW4sIHJlY29yZGVkIGFzIGEgY29tcG9uZW50IGNvbnN0YW50IChBRC0wMDE6IG5vIGxhdGVzdC9tb3Zpbmdcbi8vIHRhZy9zZW12ZXIgcmFuZ2UgaW4gYW55dGhpbmcgYSBnZW5lcmF0ZWQgcmVwbyBkZXBlbmRzIG9uKS4gVXBncmFkaW5nIHRoaXNcbi8vIGlzIGEgcmV2aWV3ZWQgZGlmZiBvZiB0aGlzIGZpbGUuXG5jb25zdCBDT01NSVRfQU5EX1RBR19WRVJTSU9OID0gJzEzLjIuMSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2l0SHViQWN0aW9uUHJvamVjdE9wdGlvbnNcbiAgZXh0ZW5kcyBnaXRodWIuR2l0SHViUHJvamVjdE9wdGlvbnMge1xuICAvKipcbiAgICogT25lLWxpbmUgZGVzY3JpcHRpb24gb2YgdGhlIGFjdGlvbi4gVXNlZCBpbiB0aGUgZGVmYXVsdCBSRUFETUVcbiAgICogdGVtcGxhdGUgYW5kIHJlY29yZGVkIGluIHRoZSBwcml2YXRlIGBwYWNrYWdlLmpzb25gLlxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIEdpdEh1YiBBY3Rpb25zIHNlY3JldCBob2xkaW5nIHRoZSBQQVQgdXNlZCBmb3JcbiAgICogcHJvamVuLWF1dG9tYXRpb24gUFIgY29tbWVudHMgKEYwMDMvRjAwOSkgYW5kLCB3aGVuIHRoZSBhY3Rpb24gaGFzIGFcbiAgICogYHRva2VuYCBpbnB1dCwgdGhlIGRvZ2Zvb2QncyBpbnZvY2F0aW9uIG9mIGl0LlxuICAgKiBAZGVmYXVsdCBcIlBST0pFTl9HSVRIVUJfVE9LRU5cIlxuICAgKi9cbiAgcmVhZG9ubHkgZ2hlVG9rZW5TZWNyZXQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVSTCBvZiB0aGUgb3JnJ3Mgc2VsZi1ob3N0ZWQgU29uYXJRdWJlIGluc3RhbmNlLiBNVVNUIGJlIHJlYWNoYWJsZSBmcm9tXG4gICAqIGdpdGh1Yi5jb20taG9zdGVkIChwdWJsaWMpIHJ1bm5lcnMgKEFELTAwMSkuIFJlcXVpcmVkLCBubyBkZWZhdWx0OiBhXG4gICAqIGd1ZXNzZWQgc2VydmVyIGlzIHdvcnNlIHRoYW4gYSBsb3VkIGZhaWx1cmUuXG4gICAqL1xuICByZWFkb25seSBzb25hckhvc3RVcmw6IHN0cmluZztcblxuICAvKiogQGRlZmF1bHQgXCJTT05BUl9UT0tFTlwiICovXG4gIHJlYWRvbmx5IHNvbmFyVG9rZW5TZWNyZXQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgYHNvbmFyLnltbGAgYWxzbyBydW5zIG9uIGBwdWxsX3JlcXVlc3RgIGFzIGEgcGFzcy9mYWlsIGdhdGUuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHNvbmFyUHVsbFJlcXVlc3RHYXRlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogVGhlIGRvZ2Zvb2Qgc2NlbmFyaW8gKEFELTAwMSkuIFdoYXQgZml4dHVyZSBzdGF0ZSwgd2hhdCB0byBhc3NlcnQsIGFuZFxuICAgKiBob3cgdG8gY2xlYW4gdXAgYXJlIHNwZWNpZmllZCBieSB0aGUgYWN0aW9uJ3Mgb3duIEYjIyMgc3BlYyAtIHRoZVxuICAgKiBoaWdoZXN0LXJpc2sgYmVoYXZpb3Igb2YgdGhhdCBhY3Rpb24uXG4gICAqXG4gICAqIEl0cyB0eXBlIGlzIGEgc3RydWN0LCB3aGljaCBwcm9qZW4ncyBDTEkgY2Fubm90IHJlbmRlciBpbnRvIGEgcHJvamVucmMsXG4gICAqIHNvIGl0IGNhbiBvbmx5IGJlIHdyaXR0ZW4gYnkgaGFuZCAtIGl0IGlzIHRoZXJlZm9yZSBvcHRpb25hbCwgYmVjYXVzZSBhXG4gICAqICpyZXF1aXJlZCogb3B0aW9uIGBwcm9qZW4gbmV3YCBjYW5ub3Qgc3VwcGx5IHdvdWxkIG1ha2UgdGhpcyBwcm9qZWN0XG4gICAqIHR5cGUgaW1wb3NzaWJsZSB0byBzY2FmZm9sZC4gQUQtMDAxJ3MgXCJuZXZlciBhIHNpbGVudCBuby1vcCBkb2dmb29kXCJcbiAgICogcnVsZSBpcyBlbmZvcmNlZCBpbnN0ZWFkIGJ5IHRoZSB3b3JrZmxvdyBpdCBnZW5lcmF0ZXMgaW4gdGhhdCBjYXNlOiBhXG4gICAqIHNpbmdsZSBzdGVwIHRoYXQgZmFpbHMgb24gZXZlcnkgUFIgdW50aWwgYSBzY2VuYXJpbyBpcyBkZWNsYXJlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBgdGVzdC1kb2dmb29kLnltbGAgcnVucyBvbmUgZmFpbGluZyBzdGVwIHRoYXQgdGVsbHMgeW91IHRvXG4gICAqIGRlY2xhcmUgYSBzY2VuYXJpb1xuICAgKi9cbiAgcmVhZG9ubHkgZG9nZm9vZD86IEFjdGlvbkRvZ2Zvb2RPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBTUERYIGlkZW50aWZpZXIgZm9yIHRoZSBnZW5lcmF0ZWQgYExJQ0VOU0VgLlxuICAgKiBAZGVmYXVsdCBcIk1JVFwiXG4gICAqL1xuICByZWFkb25seSBsaWNlbnNlPzogc3RyaW5nO1xufVxuXG5mdW5jdGlvbiBkZWZhdWx0UmVhZG1lQ29udGVudHMob3B0aW9uczogR2l0SHViQWN0aW9uUHJvamVjdE9wdGlvbnMpOiBzdHJpbmcge1xuICByZXR1cm4gYCMgJHtvcHRpb25zLm5hbWV9XG5cbiR7b3B0aW9ucy5kZXNjcmlwdGlvbiA/PyAnJ31cblxuIyMgVXNhZ2VcblxuXFxgXFxgXFxgeWFtbFxuLSB1c2VzOiB4cGVydHNzLyR7b3B0aW9ucy5uYW1lfUA8cmVmPlxuXFxgXFxgXFxgXG5cbiMjIEJ1bXBpbmdcblxuQSBcXGBmZWF0OlxcYC9cXGBmaXg6XFxgIGNvbW1pdCBwdXNoZWQgdG8gXFxgbWFpblxcYCBpcyByZWxlYXNlZCBhdXRvbWF0aWNhbGx5OiBidW1wLFxudGFnIFxcYHZYLlkuWlxcYCwgR2l0SHViIFJlbGVhc2UuIFNlZSBcXGAuZ2l0aHViL3dvcmtmbG93cy9yZWxlYXNlLnltbFxcYC5cblxuIyMgVHJ1c3QgY29udHJhY3RcblxuVGhpcyBpcyBhIGNvbXBvc2l0ZSAoc2hlbGwpIGFjdGlvbiAtIG5vIE5vZGUvbnBtIGF0IHJ1bnRpbWUsIG5vIERvY2tlci4gSXRzXG5DSSBsaW50IGdhdGUgKFxcYGJ1aWxkLnltbFxcYCksIGRvZ2Zvb2QgdGVzdCAoXFxgdGVzdC1kb2dmb29kLnltbFxcYCksIGFuZCBTb25hclxuc2NhbiAoXFxgc29uYXIueW1sXFxgKSBhcmUgc2NhZmZvbGRlZCBieSBcXGBAeHBlcnRzcy9wcm9qZW4tdHlwZXNcXGAnXG5cXGBHaXRIdWJBY3Rpb25Qcm9qZWN0XFxgOyBvbmx5IFxcYGFjdGlvbi55bWxcXGAgYW5kIGl0cyBzaGVsbCBzY3JpcHRzIGFyZVxuaGFuZC1jb21taXR0ZWQuXG5gO1xufVxuXG4vKipcbiAqIFNjYWZmb2xkcyB0aGUgcmVwbyBsaWZlY3ljbGUgKEFELTAwMSkgYXJvdW5kIGEgaGFuZC1jb21taXR0ZWQsIGNvbXBvc2l0ZVxuICogKHNoZWxsKSBHaXRIdWIgQWN0aW9uOiB0aGUgYGJ1aWxkYC9gdGVzdC1kb2dmb29kYC9gc29uYXJgL2ByZWxlYXNlYFxuICogd29ya2Zsb3dzLCB2ZXJzaW9uaW5nIGFuZCByZWxlYXNlIGRpc2NpcGxpbmUsIHRoZSBGMDAzIHZlcmlmeSBjb21wb25lbnRzLFxuICogdGhlIEYwMDkgYWxsb3dsaXN0IGd1YXJkLCBhbmQgcmVwbyBib2lsZXJwbGF0ZSAoYSBwcml2YXRlIHZlcnNpb24tc291cmNlXG4gKiBgcGFja2FnZS5qc29uYCwgYC55YW1sbGludGAsIGBMSUNFTlNFYCwgYW5kIGEgYFJFQURNRS5tZGAgdGVtcGxhdGUpLiBUaGVcbiAqIGFjdGlvbidzIG93biBjb250ZW50XG4gKiAoYGFjdGlvbi55bWxgLCBpdHMgc2hlbGwgc2NyaXB0cywgYHRlc3QvYCBmaXh0dXJlcykgaXMgYXV0aG9yZWQgYnkgaGFuZFxuICogcGVyIHRoZSBhY3Rpb24ncyBvd24gRiMjIyBzcGVjIC0gdGhpcyB0eXBlIG9ubHkgbGludHMgaXQuXG4gKi9cbmV4cG9ydCBjbGFzcyBHaXRIdWJBY3Rpb25Qcm9qZWN0IGV4dGVuZHMgZ2l0aHViLkdpdEh1YlByb2plY3Qge1xuICBwdWJsaWMgcmVhZG9ubHkgYnVpbGRXb3JrZmxvdzogQWN0aW9uQnVpbGRXb3JrZmxvdztcbiAgcHVibGljIHJlYWRvbmx5IGRvZ2Zvb2RXb3JrZmxvdzogQWN0aW9uRG9nZm9vZFdvcmtmbG93O1xuICBwdWJsaWMgcmVhZG9ubHkgc29uYXJXb3JrZmxvdzogQWN0aW9uU29uYXJXb3JrZmxvdztcbiAgcHVibGljIHJlYWRvbmx5IHJlbGVhc2U6IHJlbGVhc2UuUmVsZWFzZTtcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBHaXRIdWJBY3Rpb25Qcm9qZWN0T3B0aW9ucykge1xuICAgIGlmICghb3B0aW9ucy5zb25hckhvc3RVcmwpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignR2l0SHViQWN0aW9uUHJvamVjdCByZXF1aXJlcyBzb25hckhvc3RVcmwnKTtcbiAgICB9XG4gICAgLy8gQSBkZWNsYXJlZC1idXQtaW5jb21wbGV0ZSBkb2dmb29kIGlzIHN0aWxsIGFuIGVycm9yIC0gc2VlXG4gICAgLy8gYEFjdGlvbkRvZ2Zvb2RXb3JrZmxvd2AsIHdoaWNoIG93bnMgdGhhdCBjaGVjayAoYW5kIHRoZVxuICAgIC8vIG5vLWRvZ2Zvb2QtZGVjbGFyZWQgY2FzZSkuXG5cbiAgICBzdXBlcih7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgcmVhZG1lOiBvcHRpb25zLnJlYWRtZSA/PyB7IGNvbnRlbnRzOiBkZWZhdWx0UmVhZG1lQ29udGVudHMob3B0aW9ucykgfSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGdoID0gdGhpcy5naXRodWI7XG4gICAgaWYgKCFnaCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnR2l0SHViQWN0aW9uUHJvamVjdCByZXF1aXJlcyBHaXRIdWIgaW50ZWdyYXRpb24gdG8gYmUgZW5hYmxlZCcsXG4gICAgICApO1xuICAgIH1cbiAgICBhcHBseUludGVybmFsQWN0aW9uT3ZlcnJpZGVzKGdoKTtcblxuICAgIG5ldyBQcm9qZW5EcmlmdENoZWNrV29ya2Zsb3codGhpcywge1xuICAgICAgZ2hlVG9rZW5TZWNyZXQ6IG9wdGlvbnMuZ2hlVG9rZW5TZWNyZXQgPz8gREVGQVVMVF9HSEVfVE9LRU5fU0VDUkVULFxuICAgIH0pO1xuICAgIG5ldyBXb3JrZmxvd0NoYW5nZU5vdGljZVdvcmtmbG93KHRoaXMpO1xuICAgIG5ldyBBY3Rpb25zQWxsb3dsaXN0R3VhcmQodGhpcyk7XG5cbiAgICBuZXcgTGljZW5zZSh0aGlzLCB7XG4gICAgICBzcGR4OiBvcHRpb25zLmxpY2Vuc2UgPz8gJ01JVCcsXG4gICAgICBjb3B5cmlnaHRPd25lcjogJ3hwZXJ0c3MnLFxuICAgIH0pO1xuXG4gICAgLy8gYC5wcm9qZW5yYy50c2AgKyBgbnB4IHByb2plbmAsIHNhbWUgYXMgZXZlcnkgb3RoZXIgdHlwZSBoZXJlLiBBIGJhcmVcbiAgICAvLyBHaXRIdWJQcm9qZWN0IGhhcyBubyBkZWZhdWx0IHRhc2sgdGhhdCBydW5zIGEgcHJvamVucmMgb24gaXRzIG93biwgc29cbiAgICAvLyB0aGlzIGlzIHdoYXQgbWFrZXMgYG5weCBwcm9qZW5gIHdvcmsgaW4gdGhlIGdlbmVyYXRlZCByZXBvIGF0IGFsbC5cbiAgICBhdHRhY2hUeXBlU2NyaXB0UHJvamVucmModGhpcyk7XG5cbiAgICBuZXcgSnNvbkZpbGUodGhpcywgJ3BhY2thZ2UuanNvbicsIHtcbiAgICAgIG9iajoge1xuICAgICAgICBuYW1lOiBvcHRpb25zLm5hbWUsXG4gICAgICAgIHZlcnNpb246ICcwLjAuMCcsXG4gICAgICAgIHByaXZhdGU6IHRydWUsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBvcHRpb25zLmRlc2NyaXB0aW9uLFxuICAgICAgICBkZXZEZXBlbmRlbmNpZXM6IHtcbiAgICAgICAgICAncHJvamVuJzogUFJPSkVOX1ZFUlNJT04sXG4gICAgICAgICAgJ0B4cGVydHNzL3Byb2plbi10eXBlcyc6IFBST0pFTl9UWVBFU19WRVJTSU9OLFxuICAgICAgICAgICdjb21taXQtYW5kLXRhZy12ZXJzaW9uJzogQ09NTUlUX0FORF9UQUdfVkVSU0lPTixcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBuZXcgWWFtbEZpbGUodGhpcywgJy55YW1sbGludCcsIHtcbiAgICAgIG9iajoge1xuICAgICAgICBleHRlbmRzOiAnZGVmYXVsdCcsXG4gICAgICAgIHJ1bGVzOiB7ICdsaW5lLWxlbmd0aCc6IHsgbWF4OiAxMjAgfSB9LFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIHRoaXMuYnVpbGRXb3JrZmxvdyA9IG5ldyBBY3Rpb25CdWlsZFdvcmtmbG93KHRoaXMpO1xuXG4gICAgdGhpcy5kb2dmb29kV29ya2Zsb3cgPSBuZXcgQWN0aW9uRG9nZm9vZFdvcmtmbG93KHRoaXMsIG9wdGlvbnMuZG9nZm9vZCk7XG5cbiAgICB0aGlzLnNvbmFyV29ya2Zsb3cgPSBuZXcgQWN0aW9uU29uYXJXb3JrZmxvdyh0aGlzLCB7XG4gICAgICBzb25hckhvc3RVcmw6IG9wdGlvbnMuc29uYXJIb3N0VXJsLFxuICAgICAgc29uYXJUb2tlblNlY3JldDogb3B0aW9ucy5zb25hclRva2VuU2VjcmV0LFxuICAgICAgc29uYXJQdWxsUmVxdWVzdEdhdGU6IG9wdGlvbnMuc29uYXJQdWxsUmVxdWVzdEdhdGUsXG4gICAgfSk7XG5cbiAgICAvLyBgZ2l0aHViUmVsZWFzZWAgZGVmYXVsdHMgdG8gdHJ1ZSwgd2hpY2ggYXV0by13aXJlc1xuICAgIC8vIGBwdWJsaXNoVG9HaXRIdWJSZWxlYXNlc2AgLSBpdHMgYGdoIHJlbGVhc2UgY3JlYXRlIC4uLiAtLXRhcmdldFxuICAgIC8vICRHSVRIVUJfU0hBYCBjcmVhdGVzIHRoZSB0YWcgKmFuZCogdGhlIHJlbGVhc2UgdG9nZXRoZXIgZm9yIG91clxuICAgIC8vIGNvbnRpbnVvdXMgKHB1c2gtdG8tbWFpbikgdHJpZ2dlci4gTm8gc2VwYXJhdGUgYHB1Ymxpc2hUb0dpdGAgY2FsbFxuICAgIC8vIG5lZWRlZCAodGhhdCBwYXRoIG9ubHkgZmlyZXMgZm9yIGEgbWFudWFsIHJlbGVhc2UgdHJpZ2dlcikuXG4gICAgdGhpcy5yZWxlYXNlID0gbmV3IHJlbGVhc2UuUmVsZWFzZSh0aGlzLCB7XG4gICAgICBicmFuY2g6ICdtYWluJyxcbiAgICAgIC8vIE5vIGJ1aWxkIGFydGlmYWN0IGZvciBhIGNvbXBvc2l0ZSBhY3Rpb24gKEFELTAwMSkgLSB0aGlzIGlzIG9ubHlcbiAgICAgIC8vIHdoZXJlIFJlbGVhc2Ugc3RhZ2VzIGl0cyBvd24gdmVyc2lvbi9jaGFuZ2Vsb2cgZmlsZXMuXG4gICAgICBhcnRpZmFjdHNEaXJlY3Rvcnk6ICdkaXN0JyxcbiAgICAgIHRhc2tzOiBbdGhpcy5idWlsZFdvcmtmbG93LnRhc2tdLFxuICAgICAgdmVyc2lvbkZpbGU6ICdwYWNrYWdlLmpzb24nLFxuICAgICAgcmVsZWFzYWJsZUNvbW1pdHM6IFJlbGVhc2FibGVDb21taXRzLmZlYXR1cmVzQW5kRml4ZXMoKSxcbiAgICAgIHJlbGVhc2VUcmlnZ2VyOiByZWxlYXNlLlJlbGVhc2VUcmlnZ2VyLmNvbnRpbnVvdXMoKSxcbiAgICAgIGJ1bXBQYWNrYWdlOiBgY29tbWl0LWFuZC10YWctdmVyc2lvbkAke0NPTU1JVF9BTkRfVEFHX1ZFUlNJT059YCxcbiAgICAgIHJlbGVhc2VXb3JrZmxvd1NldHVwU3RlcHM6IFtcbiAgICAgICAgeyBuYW1lOiAnSW5zdGFsbCBkZXBlbmRlbmNpZXMnLCBydW46ICducG0gY2knIH0sXG4gICAgICBdLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
153
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2l0aHViLWFjdGlvbi1wcm9qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FjdGlvbnMvZ2l0aHViLWFjdGlvbi1wcm9qZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxtQ0FPZ0I7QUFDaEIsbUVBQThEO0FBQzlELHVFQUF3RjtBQUN4RixtRUFBOEQ7QUFDOUQsbURBQStEO0FBQy9ELGlFQUEwRTtBQUMxRSx1RkFBaUY7QUFDakYsdURBQWlFO0FBQ2pFLCtGQUF5RjtBQUN6RixpRUFBaUU7QUFFakUsMkVBQTJFO0FBQzNFLHlFQUF5RTtBQUN6RSwrREFBK0Q7QUFDL0QseUVBQXlFO0FBQ3pFLG9FQUFvRTtBQUNwRSxrRUFBa0U7QUFDbEUsaUVBQWlFO0FBQ2pFLE1BQU0sY0FBYyxHQUFXLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLE9BQU8sQ0FBQztBQUN0RSxpRUFBaUU7QUFDakUsTUFBTSxvQkFBb0IsR0FBVyxPQUFPLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxPQUFPLENBQUM7QUFFM0Usd0VBQXdFO0FBQ3hFLDRFQUE0RTtBQUM1RSxtQ0FBbUM7QUFDbkMsTUFBTSxzQkFBc0IsR0FBRyxRQUFRLENBQUM7QUEwRHhDLFNBQVMscUJBQXFCLENBQUMsT0FBbUM7SUFDaEUsT0FBTyxLQUFLLE9BQU8sQ0FBQyxJQUFJOztFQUV4QixPQUFPLENBQUMsV0FBVyxJQUFJLEVBQUU7Ozs7O2tCQUtULE9BQU8sQ0FBQyxJQUFJOzs7Ozs7Ozs7Ozs7Ozs7Q0FlN0IsQ0FBQztBQUNGLENBQUM7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFhLG1CQUFvQixTQUFRLGVBQU0sQ0FBQyxhQUFhOztJQUMzQyxhQUFhLENBQXNCO0lBQ25DLGVBQWUsQ0FBd0I7SUFDdkMsYUFBYSxDQUFzQjtJQUNuQyxPQUFPLENBQWtCO0lBRXpDLFlBQVksT0FBbUM7UUFDN0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUs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WUFDbkQsV0FBVyxFQUFFLDBCQUEwQixzQkFBc0IsRUFBRTtZQUMvRCx5QkFBeUIsRUFBRTtnQkFDekIsRUFBRSxJQUFJLEVBQUUsc0JBQXNCLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRTthQUNoRDtTQUNGLENBQUMsQ0FBQztRQUVILG1FQUFtRTtRQUNuRSxzRUFBc0U7UUFDdEUsa0VBQWtFO1FBQ2xFLDZDQUE2QztRQUM3QyxJQUFBLHNDQUFtQixFQUNqQixJQUFJLENBQUMsV0FBVyxDQUFDLCtCQUErQixDQUFDLEVBQ2pELHFGQUFxRixDQUN0RixDQUFDO1FBQ0YseUVBQXlFO1FBQ3pFLElBQUEsc0NBQW1CLEVBQ2pCLElBQUksQ0FBQyxXQUFXLENBQUMseUNBQXlDLENBQUMsRUFDM0Qsb0dBQW9HLENBQ3JHLENBQUM7SUFDSixDQUFDOztBQTFHSCxrREEyR0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBKc29uRmlsZSxcbiAgTGljZW5zZSxcbiAgUmVsZWFzYWJsZUNvbW1pdHMsXG4gIFlhbWxGaWxlLFxuICBnaXRodWIsXG4gIHJlbGVhc2UsXG59IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBBY3Rpb25CdWlsZFdvcmtmbG93IH0gZnJvbSAnLi9hY3Rpb24tYnVpbGQtd29ya2Zsb3cnO1xuaW1wb3J0IHsgQWN0aW9uRG9nZm9vZE9wdGlvbnMsIEFjdGlvbkRvZ2Zvb2RXb3JrZmxvdyB9IGZyb20gJy4vYWN0aW9uLWRvZ2Zvb2Qtd29ya2Zsb3cnO1xuaW1wb3J0IHsgQWN0aW9uU29uYXJXb3JrZmxvdyB9IGZyb20gJy4vYWN0aW9uLXNvbmFyLXdvcmtmbG93JztcbmltcG9ydCB7IERFRkFVTFRfR0hFX1RPS0VOX1NFQ1JFVCB9IGZyb20gJy4uL2NvbW1vbi9jb25zdGFudHMnO1xuaW1wb3J0IHsgYXBwbHlJbnRlcm5hbEFjdGlvbk92ZXJyaWRlcyB9IGZyb20gJy4uL2NvbW1vbi9pbnRlcm5hbC1hY3Rpb25zJztcbmltcG9ydCB7IFByb2plbkRyaWZ0Q2hlY2tXb3JrZmxvdyB9IGZyb20gJy4uL2NvbW1vbi9wcm9qZW4tZHJpZnQtY2hlY2std29ya2Zsb3cnO1xuaW1wb3J0IHsgYXR0YWNoVHlwZVNjcmlwdFByb2plbnJjIH0gZnJvbSAnLi4vY29tbW9uL3Byb2plbnJjLXRzJztcbmltcG9ydCB7IFdvcmtmbG93Q2hhbmdlTm90aWNlV29ya2Zsb3cgfSBmcm9tICcuLi9jb21tb24vd29ya2Zsb3ctY2hhbmdlLW5vdGljZS13b3JrZmxvdyc7XG5pbXBvcnQgeyBub3RlV29ya2Zsb3dQdXJwb3NlIH0gZnJvbSAnLi4vY29tbW9uL3dvcmtmbG93LXB1cnBvc2UnO1xuXG4vLyBgcmVxdWlyZSgncHJvamVuL3BhY2thZ2UuanNvbicpYC9gcmVxdWlyZSgnLi4vLi4vcGFja2FnZS5qc29uJylgIHJlc29sdmVcbi8vIHZpYSBOb2RlJ3Mgbm9ybWFsIG1vZHVsZSByZXNvbHV0aW9uLCBzbyBpbiBhICpwdWJsaXNoZWQqIHBhY2thZ2UgdGhlc2Vcbi8vIHJlYWQgdGhlIHZlcnNpb25zIGFjdHVhbGx5IGluc3RhbGxlZCBpbiB0aGUgY29uc3VtaW5nIHJlcG8nc1xuLy8gbm9kZV9tb2R1bGVzIC0gZXhhY3RseSB0aGUgXCJQUk9KRU5fVkVSU0lPTiBvZiB0aGUgc3ludGhcIiAvIFwidmVyc2lvbiBvZlxuLy8gdGhpcyBwYWNrYWdlIHRoYXQgc2NhZmZvbGRlZCB0aGUgcmVwb1wiIHRoZSBwcml2YXRlIHBhY2thZ2UuanNvbidzXG4vLyBkZXZEZXBlbmRlbmNpZXMgbmVlZCB0byBwaW4gKHNlZSBGMDEwIENJLWRlcGVuZGVuY2llcyBzZWN0aW9uKS5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tcmVxdWlyZS1pbXBvcnRzXG5jb25zdCBQUk9KRU5fVkVSU0lPTjogc3RyaW5nID0gcmVxdWlyZSgncHJvamVuL3BhY2thZ2UuanNvbicpLnZlcnNpb247XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXJlcXVpcmUtaW1wb3J0c1xuY29uc3QgUFJPSkVOX1RZUEVTX1ZFUlNJT046IHN0cmluZyA9IHJlcXVpcmUoJy4uLy4uL3BhY2thZ2UuanNvbicpLnZlcnNpb247XG5cbi8vIEV4YWN0IHBpbiwgcmVjb3JkZWQgYXMgYSBjb21wb25lbnQgY29uc3RhbnQgKEFELTAwMTogbm8gbGF0ZXN0L21vdmluZ1xuLy8gdGFnL3NlbXZlciByYW5nZSBpbiBhbnl0aGluZyBhIGdlbmVyYXRlZCByZXBvIGRlcGVuZHMgb24pLiBVcGdyYWRpbmcgdGhpc1xuLy8gaXMgYSByZXZpZXdlZCBkaWZmIG9mIHRoaXMgZmlsZS5cbmNvbnN0IENPTU1JVF9BTkRfVEFHX1ZFUlNJT04gPSAnMTMuMi4xJztcblxuZXhwb3J0IGludGVyZmFjZSBHaXRIdWJBY3Rpb25Qcm9qZWN0T3B0aW9uc1xuICBleHRlbmRzIGdpdGh1Yi5HaXRIdWJQcm9qZWN0T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBPbmUtbGluZSBkZXNjcmlwdGlvbiBvZiB0aGUgYWN0aW9uLiBVc2VkIGluIHRoZSBkZWZhdWx0IFJFQURNRVxuICAgKiB0ZW1wbGF0ZSBhbmQgcmVjb3JkZWQgaW4gdGhlIHByaXZhdGUgYHBhY2thZ2UuanNvbmAuXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgR2l0SHViIEFjdGlvbnMgc2VjcmV0IGhvbGRpbmcgdGhlIFBBVCB1c2VkIGZvclxuICAgKiBwcm9qZW4tYXV0b21hdGlvbiBQUiBjb21tZW50cyAoRjAwMykgYW5kLCB3aGVuIHRoZSBhY3Rpb24gaGFzIGFcbiAgICogYHRva2VuYCBpbnB1dCwgdGhlIGRvZ2Zvb2QncyBpbnZvY2F0aW9uIG9mIGl0LlxuICAgKiBAZGVmYXVsdCBcIlBST0pFTl9HSVRIVUJfVE9LRU5cIlxuICAgKi9cbiAgcmVhZG9ubHkgZ2hlVG9rZW5TZWNyZXQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVSTCBvZiB0aGUgb3JnJ3MgU29uYXJDbG91ZCBpbnN0YW5jZSAoZS5nLiBgaHR0cHM6Ly9zb25hcmNsb3VkLmlvYCkuXG4gICAqIE1VU1QgYmUgcmVhY2hhYmxlIGZyb20gZ2l0aHViLmNvbS1ob3N0ZWQgKHB1YmxpYykgcnVubmVycyAoQUQtMDAxKS5cbiAgICogUmVxdWlyZWQsIG5vIGRlZmF1bHQ6IGEgZ3Vlc3NlZCBzZXJ2ZXIgaXMgd29yc2UgdGhhbiBhIGxvdWQgZmFpbHVyZS5cbiAgICovXG4gIHJlYWRvbmx5IHNvbmFySG9zdFVybDogc3RyaW5nO1xuXG4gIC8qKiBAZGVmYXVsdCBcIlNPTkFSX1RPS0VOXCIgKi9cbiAgcmVhZG9ubHkgc29uYXJUb2tlblNlY3JldD86IHN0cmluZztcblxuICAvKipcbiAgICogV2hldGhlciBgc29uYXIueW1sYCBhbHNvIHJ1bnMgb24gYHB1bGxfcmVxdWVzdGAgYXMgYSBwYXNzL2ZhaWwgZ2F0ZS5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgc29uYXJQdWxsUmVxdWVzdEdhdGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgZG9nZm9vZCBzY2VuYXJpbyAoQUQtMDAxKS4gV2hhdCBmaXh0dXJlIHN0YXRlLCB3aGF0IHRvIGFzc2VydCwgYW5kXG4gICAqIGhvdyB0byBjbGVhbiB1cCBhcmUgc3BlY2lmaWVkIGJ5IHRoZSBhY3Rpb24ncyBvd24gRiMjIyBzcGVjIC0gdGhlXG4gICAqIGhpZ2hlc3QtcmlzayBiZWhhdmlvciBvZiB0aGF0IGFjdGlvbi5cbiAgICpcbiAgICogSXRzIHR5cGUgaXMgYSBzdHJ1Y3QsIHdoaWNoIHByb2plbidzIENMSSBjYW5ub3QgcmVuZGVyIGludG8gYSBwcm9qZW5yYyxcbiAgICogc28gaXQgY2FuIG9ubHkgYmUgd3JpdHRlbiBieSBoYW5kIC0gaXQgaXMgdGhlcmVmb3JlIG9wdGlvbmFsLCBiZWNhdXNlIGFcbiAgICogKnJlcXVpcmVkKiBvcHRpb24gYHByb2plbiBuZXdgIGNhbm5vdCBzdXBwbHkgd291bGQgbWFrZSB0aGlzIHByb2plY3RcbiAgICogdHlwZSBpbXBvc3NpYmxlIHRvIHNjYWZmb2xkLiBBRC0wMDEncyBcIm5ldmVyIGEgc2lsZW50IG5vLW9wIGRvZ2Zvb2RcIlxuICAgKiBydWxlIGlzIGVuZm9yY2VkIGluc3RlYWQgYnkgdGhlIHdvcmtmbG93IGl0IGdlbmVyYXRlcyBpbiB0aGF0IGNhc2U6IGFcbiAgICogc2luZ2xlIHN0ZXAgdGhhdCBmYWlscyBvbiBldmVyeSBQUiB1bnRpbCBhIHNjZW5hcmlvIGlzIGRlY2xhcmVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGB0ZXN0LWRvZ2Zvb2QueW1sYCBydW5zIG9uZSBmYWlsaW5nIHN0ZXAgdGhhdCB0ZWxscyB5b3UgdG9cbiAgICogZGVjbGFyZSBhIHNjZW5hcmlvXG4gICAqL1xuICByZWFkb25seSBkb2dmb29kPzogQWN0aW9uRG9nZm9vZE9wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFNQRFggaWRlbnRpZmllciBmb3IgdGhlIGdlbmVyYXRlZCBgTElDRU5TRWAuXG4gICAqIEBkZWZhdWx0IFwiTUlUXCJcbiAgICovXG4gIHJlYWRvbmx5IGxpY2Vuc2U/OiBzdHJpbmc7XG59XG5cbmZ1bmN0aW9uIGRlZmF1bHRSZWFkbWVDb250ZW50cyhvcHRpb25zOiBHaXRIdWJBY3Rpb25Qcm9qZWN0T3B0aW9ucyk6IHN0cmluZyB7XG4gIHJldHVybiBgIyAke29wdGlvbnMubmFtZX1cblxuJHtvcHRpb25zLmRlc2NyaXB0aW9uID8/ICcnfVxuXG4jIyBVc2FnZVxuXG5cXGBcXGBcXGB5YW1sXG4tIHVzZXM6IHhwZXJ0c3MvJHtvcHRpb25zLm5hbWV9QDxyZWY+XG5cXGBcXGBcXGBcblxuIyMgQnVtcGluZ1xuXG5BIFxcYGZlYXQ6XFxgL1xcYGZpeDpcXGAgY29tbWl0IHB1c2hlZCB0byBcXGBtYWluXFxgIGlzIHJlbGVhc2VkIGF1dG9tYXRpY2FsbHk6IGJ1bXAsXG50YWcgXFxgdlguWS5aXFxgLCBHaXRIdWIgUmVsZWFzZS4gU2VlIFxcYC5naXRodWIvd29ya2Zsb3dzL3JlbGVhc2UueW1sXFxgLlxuXG4jIyBUcnVzdCBjb250cmFjdFxuXG5UaGlzIGlzIGEgY29tcG9zaXRlIChzaGVsbCkgYWN0aW9uIC0gbm8gTm9kZS9ucG0gYXQgcnVudGltZSwgbm8gRG9ja2VyLiBJdHNcbkNJIGxpbnQgZ2F0ZSAoXFxgYnVpbGQueW1sXFxgKSwgZG9nZm9vZCB0ZXN0IChcXGB0ZXN0LWRvZ2Zvb2QueW1sXFxgKSwgYW5kIFNvbmFyXG5zY2FuIChcXGBzb25hci55bWxcXGApIGFyZSBzY2FmZm9sZGVkIGJ5IFxcYEB4cGVydHNzL3Byb2plbi10eXBlc1xcYCdcblxcYEdpdEh1YkFjdGlvblByb2plY3RcXGA7IG9ubHkgXFxgYWN0aW9uLnltbFxcYCBhbmQgaXRzIHNoZWxsIHNjcmlwdHMgYXJlXG5oYW5kLWNvbW1pdHRlZC5cbmA7XG59XG5cbi8qKlxuICogU2NhZmZvbGRzIHRoZSByZXBvIGxpZmVjeWNsZSAoQUQtMDAxKSBhcm91bmQgYSBoYW5kLWNvbW1pdHRlZCwgY29tcG9zaXRlXG4gKiAoc2hlbGwpIEdpdEh1YiBBY3Rpb246IHRoZSBgYnVpbGRgL2B0ZXN0LWRvZ2Zvb2RgL2Bzb25hcmAvYHJlbGVhc2VgXG4gICogd29ya2Zsb3dzLCB2ZXJzaW9uaW5nIGFuZCByZWxlYXNlIGRpc2NpcGxpbmUsIHRoZSBGMDAzIHZlcmlmeSBjb21wb25lbnRzLFxuICAqIGFuZCByZXBvIGJvaWxlcnBsYXRlIChhIHByaXZhdGUgdmVyc2lvbi1zb3VyY2UgYHBhY2thZ2UuanNvbmAsIGAueWFtbGxpbnRgLFxuICAqIGBMSUNFTlNFYCwgYW5kIGEgYFJFQURNRS5tZGAgdGVtcGxhdGUpLiBUaGVcbiAqIGFjdGlvbidzIG93biBjb250ZW50XG4gKiAoYGFjdGlvbi55bWxgLCBpdHMgc2hlbGwgc2NyaXB0cywgYHRlc3QvYCBmaXh0dXJlcykgaXMgYXV0aG9yZWQgYnkgaGFuZFxuICogcGVyIHRoZSBhY3Rpb24ncyBvd24gRiMjIyBzcGVjIC0gdGhpcyB0eXBlIG9ubHkgbGludHMgaXQuXG4gKi9cbmV4cG9ydCBjbGFzcyBHaXRIdWJBY3Rpb25Qcm9qZWN0IGV4dGVuZHMgZ2l0aHViLkdpdEh1YlByb2plY3Qge1xuICBwdWJsaWMgcmVhZG9ubHkgYnVpbGRXb3JrZmxvdzogQWN0aW9uQnVpbGRXb3JrZmxvdztcbiAgcHVibGljIHJlYWRvbmx5IGRvZ2Zvb2RXb3JrZmxvdzogQWN0aW9uRG9nZm9vZFdvcmtmbG93O1xuICBwdWJsaWMgcmVhZG9ubHkgc29uYXJXb3JrZmxvdzogQWN0aW9uU29uYXJXb3JrZmxvdztcbiAgcHVibGljIHJlYWRvbmx5IHJlbGVhc2U6IHJlbGVhc2UuUmVsZWFzZTtcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBHaXRIdWJBY3Rpb25Qcm9qZWN0T3B0aW9ucykge1xuICAgIGlmICghb3B0aW9ucy5zb25hckhvc3RVcmwpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignR2l0SHViQWN0aW9uUHJvamVjdCByZXF1aXJlcyBzb25hckhvc3RVcmwnKTtcbiAgICB9XG4gICAgLy8gQSBkZWNsYXJlZC1idXQtaW5jb21wbGV0ZSBkb2dmb29kIGlzIHN0aWxsIGFuIGVycm9yIC0gc2VlXG4gICAgLy8gYEFjdGlvbkRvZ2Zvb2RXb3JrZmxvd2AsIHdoaWNoIG93bnMgdGhhdCBjaGVjayAoYW5kIHRoZVxuICAgIC8vIG5vLWRvZ2Zvb2QtZGVjbGFyZWQgY2FzZSkuXG5cbiAgICBzdXBlcih7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgcmVhZG1lOiBvcHRpb25zLnJlYWRtZSA/PyB7IGNvbnRlbnRzOiBkZWZhdWx0UmVhZG1lQ29udGVudHMob3B0aW9ucykgfSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGdoID0gdGhpcy5naXRodWI7XG4gICAgaWYgKCFnaCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnR2l0SHViQWN0aW9uUHJvamVjdCByZXF1aXJlcyBHaXRIdWIgaW50ZWdyYXRpb24gdG8gYmUgZW5hYmxlZCcsXG4gICAgICApO1xuICAgIH1cbiAgICBhcHBseUludGVybmFsQWN0aW9uT3ZlcnJpZGVzKGdoKTtcblxuICAgIG5ldyBQcm9qZW5EcmlmdENoZWNrV29ya2Zsb3codGhpcywge1xuICAgICAgZ2hlVG9rZW5TZWNyZXQ6IG9wdGlvbnMuZ2hlVG9rZW5TZWNyZXQgPz8gREVGQVVMVF9HSEVfVE9LRU5fU0VDUkVULFxuICAgIH0pO1xuICAgIG5ldyBXb3JrZmxvd0NoYW5nZU5vdGljZVdvcmtmbG93KHRoaXMpO1xuXG4gICAgbmV3IExpY2Vuc2UodGhpcywge1xuICAgICAgc3BkeDogb3B0aW9ucy5saWNlbnNlID8/ICdNSVQnLFxuICAgICAgY29weXJpZ2h0T3duZXI6ICd4cGVydHNzJyxcbiAgICB9KTtcblxuICAgIC8vIGAucHJvamVucmMudHNgICsgYG5weCBwcm9qZW5gLCBzYW1lIGFzIGV2ZXJ5IG90aGVyIHR5cGUgaGVyZS4gQSBiYXJlXG4gICAgLy8gR2l0SHViUHJvamVjdCBoYXMgbm8gZGVmYXVsdCB0YXNrIHRoYXQgcnVucyBhIHByb2plbnJjIG9uIGl0cyBvd24sIHNvXG4gICAgLy8gdGhpcyBpcyB3aGF0IG1ha2VzIGBucHggcHJvamVuYCB3b3JrIGluIHRoZSBnZW5lcmF0ZWQgcmVwbyBhdCBhbGwuXG4gICAgYXR0YWNoVHlwZVNjcmlwdFByb2plbnJjKHRoaXMpO1xuXG4gICAgbmV3IEpzb25GaWxlKHRoaXMsICdwYWNrYWdlLmpzb24nLCB7XG4gICAgICBvYmo6IHtcbiAgICAgICAgbmFtZTogb3B0aW9ucy5uYW1lLFxuICAgICAgICB2ZXJzaW9uOiAnMC4wLjAnLFxuICAgICAgICBwcml2YXRlOiB0cnVlLFxuICAgICAgICBkZXNjcmlwdGlvbjogb3B0aW9ucy5kZXNjcmlwdGlvbixcbiAgICAgICAgZGV2RGVwZW5kZW5jaWVzOiB7XG4gICAgICAgICAgJ3Byb2plbic6IFBST0pFTl9WRVJTSU9OLFxuICAgICAgICAgICdAeHBlcnRzcy9wcm9qZW4tdHlwZXMnOiBQUk9KRU5fVFlQRVNfVkVSU0lPTixcbiAgICAgICAgICAnY29tbWl0LWFuZC10YWctdmVyc2lvbic6IENPTU1JVF9BTkRfVEFHX1ZFUlNJT04sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgbmV3IFlhbWxGaWxlKHRoaXMsICcueWFtbGxpbnQnLCB7XG4gICAgICBvYmo6IHtcbiAgICAgICAgZXh0ZW5kczogJ2RlZmF1bHQnLFxuICAgICAgICBydWxlczogeyAnbGluZS1sZW5ndGgnOiB7IG1heDogMTIwIH0gfSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICB0aGlzLmJ1aWxkV29ya2Zsb3cgPSBuZXcgQWN0aW9uQnVpbGRXb3JrZmxvdyh0aGlzKTtcblxuICAgIHRoaXMuZG9nZm9vZFdvcmtmbG93ID0gbmV3IEFjdGlvbkRvZ2Zvb2RXb3JrZmxvdyh0aGlzLCBvcHRpb25zLmRvZ2Zvb2QpO1xuXG4gICAgdGhpcy5zb25hcldvcmtmbG93ID0gbmV3IEFjdGlvblNvbmFyV29ya2Zsb3codGhpcywge1xuICAgICAgc29uYXJIb3N0VXJsOiBvcHRpb25zLnNvbmFySG9zdFVybCxcbiAgICAgIHNvbmFyVG9rZW5TZWNyZXQ6IG9wdGlvbnMuc29uYXJUb2tlblNlY3JldCxcbiAgICAgIHNvbmFyUHVsbFJlcXVlc3RHYXRlOiBvcHRpb25zLnNvbmFyUHVsbFJlcXVlc3RHYXRlLFxuICAgIH0pO1xuXG4gICAgLy8gYGdpdGh1YlJlbGVhc2VgIGRlZmF1bHRzIHRvIHRydWUsIHdoaWNoIGF1dG8td2lyZXNcbiAgICAvLyBgcHVibGlzaFRvR2l0SHViUmVsZWFzZXNgIC0gaXRzIGBnaCByZWxlYXNlIGNyZWF0ZSAuLi4gLS10YXJnZXRcbiAgICAvLyAkR0lUSFVCX1NIQWAgY3JlYXRlcyB0aGUgdGFnICphbmQqIHRoZSByZWxlYXNlIHRvZ2V0aGVyIGZvciBvdXJcbiAgICAvLyBjb250aW51b3VzIChwdXNoLXRvLW1haW4pIHRyaWdnZXIuIE5vIHNlcGFyYXRlIGBwdWJsaXNoVG9HaXRgIGNhbGxcbiAgICAvLyBuZWVkZWQgKHRoYXQgcGF0aCBvbmx5IGZpcmVzIGZvciBhIG1hbnVhbCByZWxlYXNlIHRyaWdnZXIpLlxuICAgIHRoaXMucmVsZWFzZSA9IG5ldyByZWxlYXNlLlJlbGVhc2UodGhpcywge1xuICAgICAgYnJhbmNoOiAnbWFpbicsXG4gICAgICAvLyBObyBidWlsZCBhcnRpZmFjdCBmb3IgYSBjb21wb3NpdGUgYWN0aW9uIChBRC0wMDEpIC0gdGhpcyBpcyBvbmx5XG4gICAgICAvLyB3aGVyZSBSZWxlYXNlIHN0YWdlcyBpdHMgb3duIHZlcnNpb24vY2hhbmdlbG9nIGZpbGVzLlxuICAgICAgYXJ0aWZhY3RzRGlyZWN0b3J5OiAnZGlzdCcsXG4gICAgICB0YXNrczogW3RoaXMuYnVpbGRXb3JrZmxvdy50YXNrXSxcbiAgICAgIHZlcnNpb25GaWxlOiAncGFja2FnZS5qc29uJyxcbiAgICAgIHJlbGVhc2FibGVDb21taXRzOiBSZWxlYXNhYmxlQ29tbWl0cy5mZWF0dXJlc0FuZEZpeGVzKCksXG4gICAgICByZWxlYXNlVHJpZ2dlcjogcmVsZWFzZS5SZWxlYXNlVHJpZ2dlci5jb250aW51b3VzKCksXG4gICAgICBidW1wUGFja2FnZTogYGNvbW1pdC1hbmQtdGFnLXZlcnNpb25AJHtDT01NSVRfQU5EX1RBR19WRVJTSU9OfWAsXG4gICAgICByZWxlYXNlV29ya2Zsb3dTZXR1cFN0ZXBzOiBbXG4gICAgICAgIHsgbmFtZTogJ0luc3RhbGwgZGVwZW5kZW5jaWVzJywgcnVuOiAnbnBtIGNpJyB9LFxuICAgICAgXSxcbiAgICB9KTtcblxuICAgIC8vIFRoZSByZWxlYXNlIHdvcmtmbG93IGlzIGNyZWF0ZWQgaW5zaWRlIGByZWxlYXNlLlJlbGVhc2VgIChwcm9qZW5cbiAgICAvLyBpbnRlcm5hbCksIG5vdCBieSB0aGlzIHR5cGUgLSByZWFjaCBpdHMgZmlsZSBieSBwYXRoIHRvIGFubm90YXRlIGl0XG4gICAgLy8gbGlrZSBldmVyeSBvdGhlciBnZW5lcmF0ZWQgd29ya2Zsb3cuIFRoaXMgdHlwZSBpcyBhbHdheXMgYSByb290XG4gICAgLy8gcHJvamVjdCwgc28gcHJvamVuIG5hbWVzIGl0IGByZWxlYXNlLnltbGAuXG4gICAgbm90ZVdvcmtmbG93UHVycG9zZShcbiAgICAgIHRoaXMudHJ5RmluZEZpbGUoJy5naXRodWIvd29ya2Zsb3dzL3JlbGVhc2UueW1sJyksXG4gICAgICAnQ29udGludW91cyByZWxlYXNlIG9uIHB1c2ggdG8gbWFpbjogYnVtcCB2ZXJzaW9uLCB0YWcsIGFuZCBjcmVhdGUgYSBHaXRIdWIgUmVsZWFzZS4nLFxuICAgICk7XG4gICAgLy8gYHB1bGwtcmVxdWVzdC1saW50YCBpcyBwcm9qZW4ncyBidWlsdC1pbiBQUi10aXRsZSB2YWxpZGF0aW9uIHdvcmtmbG93LlxuICAgIG5vdGVXb3JrZmxvd1B1cnBvc2UoXG4gICAgICB0aGlzLnRyeUZpbmRGaWxlKCcuZ2l0aHViL3dvcmtmbG93cy9wdWxsLXJlcXVlc3QtbGludC55bWwnKSxcbiAgICAgICdSZWplY3QgcHVsbCByZXF1ZXN0cyB3aG9zZSB0aXRsZXMgZG8gbm90IGZvbGxvdyB0aGUgY29udmVudGlvbmFsLWNvbW1pdCAoc2VtYW50aWMtcmVsZWFzZSkgZm9ybWF0LicsXG4gICAgKTtcbiAgfVxufVxuIl19
@@ -8,7 +8,7 @@ const projen_1 = require("projen");
8
8
  * layered on top of `CdkTypescriptProject`'s pure-infra scaffold.
9
9
  */
10
10
  class AppRuntimeScaffold extends projen_1.Component {
11
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.AppRuntimeScaffold", version: "0.0.6" };
11
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.AppRuntimeScaffold", version: "0.0.8" };
12
12
  constructor(project, appEntryPoint = 'src/app.ts') {
13
13
  super(project, 'AppRuntimeScaffold');
14
14
  const app = new projen_1.SourceCode(project, appEntryPoint);
@@ -6,28 +6,30 @@ const projen_1 = require("projen");
6
6
  const app_runtime_scaffold_1 = require("./app-runtime-scaffold");
7
7
  const cdk_infra_project_1 = require("./cdk-infra-project");
8
8
  const database_component_1 = require("./database-component");
9
+ const workflow_purpose_1 = require("../common/workflow-purpose");
9
10
  /**
10
11
  * Full TypeScript service application running behind API Gateway (or
11
12
  * similar), with the infra to support it - `CdkInfraProject` plus
12
13
  * application source, a database, and an app-level build/test workflow.
13
14
  */
14
15
  class CdkAppProject extends cdk_infra_project_1.CdkInfraProject {
15
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.CdkAppProject", version: "0.0.6" };
16
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.CdkAppProject", version: "0.0.8" };
16
17
  constructor(options) {
17
18
  super(options);
18
19
  new app_runtime_scaffold_1.AppRuntimeScaffold(this, options.appEntryPoint ?? 'src/app.ts');
19
20
  new database_component_1.DatabaseComponent(this, options.database);
20
21
  const gh = this.github;
21
22
  if (gh) {
22
- new projen_1.github.TaskWorkflow(gh, {
23
+ const appBuildWorkflow = new projen_1.github.TaskWorkflow(gh, {
23
24
  name: 'app-build',
24
25
  jobId: 'app-build',
25
26
  task: this.testTask,
26
27
  triggers: { pullRequest: {}, workflowDispatch: {} },
27
28
  permissions: { contents: projen_1.github.workflows.JobPermission.READ },
28
29
  });
30
+ (0, workflow_purpose_1.noteWorkflowPurpose)(appBuildWorkflow.file, 'Run the application unit tests on pull requests.');
29
31
  }
30
32
  }
31
33
  }
32
34
  exports.CdkAppProject = CdkAppProject;
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLWFwcC1wcm9qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Nkay9jZGstYXBwLXByb2plY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLG1DQUFnQztBQUNoQyxpRUFBNEQ7QUFDNUQsMkRBQXNEO0FBQ3RELDZEQUF5RDtBQUd6RDs7OztHQUlHO0FBQ0gsTUFBYSxhQUFjLFNBQVEsbUNBQWU7O0lBQ2hELFlBQVksT0FBNkI7UUFDdkMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRWYsSUFBSSx5Q0FBa0IsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLGFBQWEsSUFBSSxZQUFZLENBQUMsQ0FBQztRQUNwRSxJQUFJLHNDQUFpQixDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFOUMsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUN2QixJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ1AsSUFBSSxlQUFNLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFBRTtnQkFDMUIsSUFBSSxFQUFFLFdBQVc7Z0JBQ2pCLEtBQUssRUFBRSxXQUFXO2dCQUNsQixJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVE7Z0JBQ25CLFFBQVEsRUFBRSxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsRUFBRSxFQUFFO2dCQUNuRCxXQUFXLEVBQUUsRUFBRSxRQUFRLEVBQUUsZUFBTSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFO2FBQy9ELENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDOztBQWpCSCxzQ0FrQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnaXRodWIgfSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHsgQXBwUnVudGltZVNjYWZmb2xkIH0gZnJvbSAnLi9hcHAtcnVudGltZS1zY2FmZm9sZCc7XG5pbXBvcnQgeyBDZGtJbmZyYVByb2plY3QgfSBmcm9tICcuL2Nkay1pbmZyYS1wcm9qZWN0JztcbmltcG9ydCB7IERhdGFiYXNlQ29tcG9uZW50IH0gZnJvbSAnLi9kYXRhYmFzZS1jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2RrQXBwUHJvamVjdE9wdGlvbnMgfSBmcm9tICcuL29wdGlvbnMnO1xuXG4vKipcbiAqIEZ1bGwgVHlwZVNjcmlwdCBzZXJ2aWNlIGFwcGxpY2F0aW9uIHJ1bm5pbmcgYmVoaW5kIEFQSSBHYXRld2F5IChvclxuICogc2ltaWxhciksIHdpdGggdGhlIGluZnJhIHRvIHN1cHBvcnQgaXQgLSBgQ2RrSW5mcmFQcm9qZWN0YCBwbHVzXG4gKiBhcHBsaWNhdGlvbiBzb3VyY2UsIGEgZGF0YWJhc2UsIGFuZCBhbiBhcHAtbGV2ZWwgYnVpbGQvdGVzdCB3b3JrZmxvdy5cbiAqL1xuZXhwb3J0IGNsYXNzIENka0FwcFByb2plY3QgZXh0ZW5kcyBDZGtJbmZyYVByb2plY3Qge1xuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBDZGtBcHBQcm9qZWN0T3B0aW9ucykge1xuICAgIHN1cGVyKG9wdGlvbnMpO1xuXG4gICAgbmV3IEFwcFJ1bnRpbWVTY2FmZm9sZCh0aGlzLCBvcHRpb25zLmFwcEVudHJ5UG9pbnQgPz8gJ3NyYy9hcHAudHMnKTtcbiAgICBuZXcgRGF0YWJhc2VDb21wb25lbnQodGhpcywgb3B0aW9ucy5kYXRhYmFzZSk7XG5cbiAgICBjb25zdCBnaCA9IHRoaXMuZ2l0aHViO1xuICAgIGlmIChnaCkge1xuICAgICAgbmV3IGdpdGh1Yi5UYXNrV29ya2Zsb3coZ2gsIHtcbiAgICAgICAgbmFtZTogJ2FwcC1idWlsZCcsXG4gICAgICAgIGpvYklkOiAnYXBwLWJ1aWxkJyxcbiAgICAgICAgdGFzazogdGhpcy50ZXN0VGFzayxcbiAgICAgICAgdHJpZ2dlcnM6IHsgcHVsbFJlcXVlc3Q6IHt9LCB3b3JrZmxvd0Rpc3BhdGNoOiB7fSB9LFxuICAgICAgICBwZXJtaXNzaW9uczogeyBjb250ZW50czogZ2l0aHViLndvcmtmbG93cy5Kb2JQZXJtaXNzaW9uLlJFQUQgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIl19
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLWFwcC1wcm9qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Nkay9jZGstYXBwLXByb2plY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLG1DQUFnQztBQUNoQyxpRUFBNEQ7QUFDNUQsMkRBQXNEO0FBQ3RELDZEQUF5RDtBQUV6RCxpRUFBaUU7QUFFakU7Ozs7R0FJRztBQUNILE1BQWEsYUFBYyxTQUFRLG1DQUFlOztJQUNoRCxZQUFZLE9BQTZCO1FBQ3ZDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVmLElBQUkseUNBQWtCLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxhQUFhLElBQUksWUFBWSxDQUFDLENBQUM7UUFDcEUsSUFBSSxzQ0FBaUIsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTlDLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDdkIsSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUNQLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxlQUFNLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFBRTtnQkFDbkQsSUFBSSxFQUFFLFdBQVc7Z0JBQ2pCLEtBQUssRUFBRSxXQUFXO2dCQUNsQixJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVE7Z0JBQ25CLFFBQVEsRUFBRSxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsRUFBRSxFQUFFO2dCQUNuRCxXQUFXLEVBQUUsRUFBRSxRQUFRLEVBQUUsZUFBTSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFO2FBQy9ELENBQUMsQ0FBQztZQUNILElBQUEsc0NBQW1CLEVBQ2pCLGdCQUFnQixDQUFDLElBQUksRUFDckIsa0RBQWtELENBQ25ELENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQzs7QUFyQkgsc0NBc0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2l0aHViIH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IEFwcFJ1bnRpbWVTY2FmZm9sZCB9IGZyb20gJy4vYXBwLXJ1bnRpbWUtc2NhZmZvbGQnO1xuaW1wb3J0IHsgQ2RrSW5mcmFQcm9qZWN0IH0gZnJvbSAnLi9jZGstaW5mcmEtcHJvamVjdCc7XG5pbXBvcnQgeyBEYXRhYmFzZUNvbXBvbmVudCB9IGZyb20gJy4vZGF0YWJhc2UtY29tcG9uZW50JztcbmltcG9ydCB7IENka0FwcFByb2plY3RPcHRpb25zIH0gZnJvbSAnLi9vcHRpb25zJztcbmltcG9ydCB7IG5vdGVXb3JrZmxvd1B1cnBvc2UgfSBmcm9tICcuLi9jb21tb24vd29ya2Zsb3ctcHVycG9zZSc7XG5cbi8qKlxuICogRnVsbCBUeXBlU2NyaXB0IHNlcnZpY2UgYXBwbGljYXRpb24gcnVubmluZyBiZWhpbmQgQVBJIEdhdGV3YXkgKG9yXG4gKiBzaW1pbGFyKSwgd2l0aCB0aGUgaW5mcmEgdG8gc3VwcG9ydCBpdCAtIGBDZGtJbmZyYVByb2plY3RgIHBsdXNcbiAqIGFwcGxpY2F0aW9uIHNvdXJjZSwgYSBkYXRhYmFzZSwgYW5kIGFuIGFwcC1sZXZlbCBidWlsZC90ZXN0IHdvcmtmbG93LlxuICovXG5leHBvcnQgY2xhc3MgQ2RrQXBwUHJvamVjdCBleHRlbmRzIENka0luZnJhUHJvamVjdCB7XG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IENka0FwcFByb2plY3RPcHRpb25zKSB7XG4gICAgc3VwZXIob3B0aW9ucyk7XG5cbiAgICBuZXcgQXBwUnVudGltZVNjYWZmb2xkKHRoaXMsIG9wdGlvbnMuYXBwRW50cnlQb2ludCA/PyAnc3JjL2FwcC50cycpO1xuICAgIG5ldyBEYXRhYmFzZUNvbXBvbmVudCh0aGlzLCBvcHRpb25zLmRhdGFiYXNlKTtcblxuICAgIGNvbnN0IGdoID0gdGhpcy5naXRodWI7XG4gICAgaWYgKGdoKSB7XG4gICAgICBjb25zdCBhcHBCdWlsZFdvcmtmbG93ID0gbmV3IGdpdGh1Yi5UYXNrV29ya2Zsb3coZ2gsIHtcbiAgICAgICAgbmFtZTogJ2FwcC1idWlsZCcsXG4gICAgICAgIGpvYklkOiAnYXBwLWJ1aWxkJyxcbiAgICAgICAgdGFzazogdGhpcy50ZXN0VGFzayxcbiAgICAgICAgdHJpZ2dlcnM6IHsgcHVsbFJlcXVlc3Q6IHt9LCB3b3JrZmxvd0Rpc3BhdGNoOiB7fSB9LFxuICAgICAgICBwZXJtaXNzaW9uczogeyBjb250ZW50czogZ2l0aHViLndvcmtmbG93cy5Kb2JQZXJtaXNzaW9uLlJFQUQgfSxcbiAgICAgIH0pO1xuICAgICAgbm90ZVdvcmtmbG93UHVycG9zZShcbiAgICAgICAgYXBwQnVpbGRXb3JrZmxvdy5maWxlLFxuICAgICAgICAnUnVuIHRoZSBhcHBsaWNhdGlvbiB1bml0IHRlc3RzIG9uIHB1bGwgcmVxdWVzdHMuJyxcbiAgICAgICk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -11,7 +11,7 @@ const edge_networking_constructs_1 = require("./components/edge-networking-const
11
11
  * externally-built images). Reference example: SimulcastAVDelivery.
12
12
  */
13
13
  class CdkInfraProject extends cdk_typescript_base_1.CdkTypescriptProject {
14
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.CdkInfraProject", version: "0.0.6" };
14
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.CdkInfraProject", version: "0.0.8" };
15
15
  constructor(options) {
16
16
  super(options);
17
17
  if (options.ecrEcs?.enabled) {
@@ -3,12 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CdkTypescriptProject = void 0;
4
4
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
5
5
  const projen_1 = require("projen");
6
- const actions_allowlist_guard_1 = require("../common/actions-allowlist-guard");
7
6
  const constants_1 = require("../common/constants");
8
7
  const internal_actions_1 = require("../common/internal-actions");
9
8
  const manual_deploy_workflow_1 = require("../common/manual-deploy-workflow");
10
9
  const projen_drift_check_workflow_1 = require("../common/projen-drift-check-workflow");
11
10
  const workflow_change_notice_workflow_1 = require("../common/workflow-change-notice-workflow");
11
+ const workflow_purpose_1 = require("../common/workflow-purpose");
12
12
  // Resolved through Node's normal module resolution, so in a *published*
13
13
  // package this is the version of this package that scaffolded the repo (same
14
14
  // trick as `GitHubActionProject`).
@@ -22,7 +22,7 @@ const PROJEN_TYPES_VERSION = require('../../package.json').version;
22
22
  * `ManualDeployWorkflow` when `environments` is provided.
23
23
  */
24
24
  class CdkTypescriptProject extends projen_1.awscdk.AwsCdkTypeScriptApp {
25
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.CdkTypescriptProject", version: "0.0.6" };
25
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.CdkTypescriptProject", version: "0.0.8" };
26
26
  constructor(options) {
27
27
  super({
28
28
  // Spread first, overrides after: forwarding the caller's options is
@@ -76,7 +76,22 @@ class CdkTypescriptProject extends projen_1.awscdk.AwsCdkTypeScriptApp {
76
76
  gheTokenSecret: options.gheTokenSecret ?? constants_1.DEFAULT_GHE_TOKEN_SECRET,
77
77
  });
78
78
  new workflow_change_notice_workflow_1.WorkflowChangeNoticeWorkflow(this);
79
- new actions_allowlist_guard_1.ActionsAllowlistGuard(this);
79
+ // `build` is projen's built-in NodeProject workflow (enabled via
80
+ // `buildWorkflowOptions` above), not one this package constructs -
81
+ // annotate it the same way as the others.
82
+ if (this.buildWorkflow) {
83
+ (0, workflow_purpose_1.noteWorkflowPurpose)(this.buildWorkflow.workflow.file, 'Pull-request build gate: install dependencies, synthesize the CDK app, and run unit tests.');
84
+ }
85
+ // `depsUpgrade` is projen's built-in nightly upgrade workflow - annotate
86
+ // it the same way (one workflow per release branch).
87
+ if (this.upgradeWorkflow) {
88
+ for (const workflow of this.upgradeWorkflow.workflows) {
89
+ (0, workflow_purpose_1.noteWorkflowPurpose)(workflow.file, 'Open a nightly dependency-upgrade pull request.');
90
+ }
91
+ }
92
+ // `pull-request-lint` is projen's built-in PR-title validation workflow -
93
+ // reach its file by path like the release workflow.
94
+ (0, workflow_purpose_1.noteWorkflowPurpose)(this.tryFindFile('.github/workflows/pull-request-lint.yml'), 'Reject pull requests whose titles do not follow the conventional-commit (semantic-release) format.');
80
95
  if (options.environments && options.environments.length > 0) {
81
96
  new manual_deploy_workflow_1.ManualDeployWorkflow(this, {
82
97
  environments: options.environments,
@@ -99,4 +114,4 @@ class CdkTypescriptProject extends projen_1.awscdk.AwsCdkTypeScriptApp {
99
114
  }
100
115
  }
101
116
  exports.CdkTypescriptProject = CdkTypescriptProject;
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLXR5cGVzY3JpcHQtYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jZGsvY2RrLXR5cGVzY3JpcHQtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsbUNBQW9EO0FBRXBELCtFQUEwRTtBQUMxRSxtREFBK0Q7QUFFL0QsaUVBQTBFO0FBQzFFLDZFQUF3RTtBQUN4RSx1RkFBaUY7QUFDakYsK0ZBQXlGO0FBRXpGLHdFQUF3RTtBQUN4RSw2RUFBNkU7QUFDN0UsbUNBQW1DO0FBQ25DLGlFQUFpRTtBQUNqRSxNQUFNLG9CQUFvQixHQUFXLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLE9BQU8sQ0FBQztBQU0zRTs7Ozs7O0dBTUc7QUFDSCxNQUFhLG9CQUFxQixTQUFRLGVBQU0sQ0FBQyxtQkFBbUI7O0lBQ2xFLFlBQVksT0FBb0M7UUFDOUMsS0FBSyxDQUFDO1lBQ0osb0VBQW9FO1lBQ3BFLHFFQUFxRTtZQUNyRSxpRUFBaUU7WUFDakUsd0RBQXdEO1lBQ3hELHFFQUFxRTtZQUNyRSw2REFBNkQ7WUFDN0QsR0FBRyxPQUFPO1lBQ1YsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ2xCLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVSxJQUFJLFNBQVM7WUFDM0Msb0JBQW9CLEVBQUUsTUFBTTtZQUM1QixVQUFVLEVBQUUsSUFBSTtZQUNoQixzRUFBc0U7WUFDdEUsb0VBQW9FO1lBQ3BFLHVDQUF1QztZQUN2QyxVQUFVLEVBQUUsSUFBSTtZQUNoQixtRUFBbUU7WUFDbkUsc0VBQXNFO1lBQ3RFLG9FQUFvRTtZQUNwRSxlQUFlO1lBQ2YsaUJBQWlCLEVBQUUsUUFBUTtZQUMzQixrRUFBa0U7WUFDbEUscUVBQXFFO1lBQ3JFLDhEQUE4RDtZQUM5RCxzRUFBc0U7WUFDdEUsY0FBYyxFQUFFLFFBQVE7WUFDeEIsd0VBQXdFO1lBQ3hFLGtFQUFrRTtZQUNsRSw4REFBOEQ7WUFDOUQsY0FBYyxFQUFFLG1CQUFVLENBQUMsa0JBQWtCLENBQUMsR0FBRztZQUNqRCxzRUFBc0U7WUFDdEUsb0JBQW9CLEVBQUUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFO1lBQzdDLGlCQUFpQixFQUFFLGVBQU0sQ0FBQyxpQkFBaUIsQ0FBQyx1QkFBdUIsQ0FBQztnQkFDbEUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxjQUFjLElBQUksb0NBQXdCO2FBQzNELENBQUM7U0FDSCxDQUFDLENBQUM7UUFFSCxvRUFBb0U7UUFDcEUsdUVBQXVFO1FBQ3ZFLDBFQUEwRTtRQUMxRSx1RUFBdUU7UUFDdkUsK0JBQStCO1FBQy9CLElBQUksQ0FBQyxVQUFVLENBQUMseUJBQXlCLG9CQUFvQixFQUFFLENBQUMsQ0FBQztRQUNqRSxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRTNCLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDdkIsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ1IsTUFBTSxJQUFJLEtBQUssQ0FDYixnRUFBZ0UsQ0FDakUsQ0FBQztRQUNKLENBQUM7UUFDRCxJQUFBLCtDQUE0QixFQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRWpDLElBQUksc0RBQXdCLENBQUMsSUFBSSxFQUFFO1lBQ2pDLGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYyxJQUFJLG9DQUF3QjtTQUNuRSxDQUFDLENBQUM7UUFDSCxJQUFJLDhEQUE0QixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLElBQUksK0NBQXFCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFaEMsSUFBSSxPQUFPLENBQUMsWUFBWSxJQUFJLE9BQU8sQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzVELElBQUksNkNBQW9CLENBQUMsSUFBSSxFQUFFO2dCQUM3QixZQUFZLEVBQUUsT0FBTyxDQUFDLFlBQVk7Z0JBQ2xDLFdBQVcsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUM7b0JBQ3BCO3dCQUNFLElBQUksRUFBRSxTQUFTO3dCQUNmLEdBQUcsRUFBRSxRQUFRO3FCQUNkO29CQUNEO3dCQUNFLElBQUksRUFBRSxlQUFlLEdBQUcsQ0FBQyxJQUFJLEdBQUc7d0JBQ2hDLEdBQUcsRUFBRSx1RUFBdUUsR0FBRyxDQUFDLElBQUksRUFBRTt3QkFDdEYsR0FBRyxFQUFFOzRCQUNILEdBQUcsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLG1CQUFtQixFQUFFLEdBQUcsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDOzRCQUNoRSxHQUFHLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxrQkFBa0IsRUFBRSxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQzt5QkFDMUQ7cUJBQ0Y7aUJBQ0Y7YUFDRixDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQzs7QUFoRkgsb0RBaUZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYXdzY2RrLCBnaXRodWIsIGphdmFzY3JpcHQgfSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHsgQ29tbW9uQ2RrT3B0aW9ucyB9IGZyb20gJy4vb3B0aW9ucyc7XG5pbXBvcnQgeyBBY3Rpb25zQWxsb3dsaXN0R3VhcmQgfSBmcm9tICcuLi9jb21tb24vYWN0aW9ucy1hbGxvd2xpc3QtZ3VhcmQnO1xuaW1wb3J0IHsgREVGQVVMVF9HSEVfVE9LRU5fU0VDUkVUIH0gZnJvbSAnLi4vY29tbW9uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBFbnZpcm9ubWVudE9wdGlvbnMgfSBmcm9tICcuLi9jb21tb24vZW52aXJvbm1lbnQtb3B0aW9ucyc7XG5pbXBvcnQgeyBhcHBseUludGVybmFsQWN0aW9uT3ZlcnJpZGVzIH0gZnJvbSAnLi4vY29tbW9uL2ludGVybmFsLWFjdGlvbnMnO1xuaW1wb3J0IHsgTWFudWFsRGVwbG95V29ya2Zsb3cgfSBmcm9tICcuLi9jb21tb24vbWFudWFsLWRlcGxveS13b3JrZmxvdyc7XG5pbXBvcnQgeyBQcm9qZW5EcmlmdENoZWNrV29ya2Zsb3cgfSBmcm9tICcuLi9jb21tb24vcHJvamVuLWRyaWZ0LWNoZWNrLXdvcmtmbG93JztcbmltcG9ydCB7IFdvcmtmbG93Q2hhbmdlTm90aWNlV29ya2Zsb3cgfSBmcm9tICcuLi9jb21tb24vd29ya2Zsb3ctY2hhbmdlLW5vdGljZS13b3JrZmxvdyc7XG5cbi8vIFJlc29sdmVkIHRocm91Z2ggTm9kZSdzIG5vcm1hbCBtb2R1bGUgcmVzb2x1dGlvbiwgc28gaW4gYSAqcHVibGlzaGVkKlxuLy8gcGFja2FnZSB0aGlzIGlzIHRoZSB2ZXJzaW9uIG9mIHRoaXMgcGFja2FnZSB0aGF0IHNjYWZmb2xkZWQgdGhlIHJlcG8gKHNhbWVcbi8vIHRyaWNrIGFzIGBHaXRIdWJBY3Rpb25Qcm9qZWN0YCkuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXJlcXVpcmUtaW1wb3J0c1xuY29uc3QgUFJPSkVOX1RZUEVTX1ZFUlNJT046IHN0cmluZyA9IHJlcXVpcmUoJy4uLy4uL3BhY2thZ2UuanNvbicpLnZlcnNpb247XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2RrVHlwZXNjcmlwdFByb2plY3RPcHRpb25zIGV4dGVuZHMgQ29tbW9uQ2RrT3B0aW9ucyB7XG4gIHJlYWRvbmx5IGVudmlyb25tZW50cz86IChzdHJpbmcgfCBFbnZpcm9ubWVudE9wdGlvbnMpW107XG59XG5cbi8qKlxuICogU2hhcmVkIENESyArIFR5cGVTY3JpcHQgZm91bmRhdGlvbiBmb3IgYENka0luZnJhUHJvamVjdGAgYW5kXG4gKiBgQ2RrQXBwUHJvamVjdGA6IHN0YW5kYXJkIGFwcCBzdHJ1Y3R1cmUgKHZpYSBgQXdzQ2RrVHlwZVNjcmlwdEFwcGAsXG4gKiBgY2RrLmpzb25gLCBgY2RrIHN5bnRoYC9gY2RrIGRpZmZgIHRhc2tzKSwgYSBQUi1jaGVjayBidWlsZCB0aGF0IGhhcmQtZmFpbHNcbiAqIG9uIHByb2plbiBkcmlmdCAocmF0aGVyIHRoYW4gc2VsZi1tdXRhdGluZyksIGFuZCBhbiBvcHRpb25hbFxuICogYE1hbnVhbERlcGxveVdvcmtmbG93YCB3aGVuIGBlbnZpcm9ubWVudHNgIGlzIHByb3ZpZGVkLlxuICovXG5leHBvcnQgY2xhc3MgQ2RrVHlwZXNjcmlwdFByb2plY3QgZXh0ZW5kcyBhd3NjZGsuQXdzQ2RrVHlwZVNjcmlwdEFwcCB7XG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IENka1R5cGVzY3JpcHRQcm9qZWN0T3B0aW9ucykge1xuICAgIHN1cGVyKHtcbiAgICAgIC8vIFNwcmVhZCBmaXJzdCwgb3ZlcnJpZGVzIGFmdGVyOiBmb3J3YXJkaW5nIHRoZSBjYWxsZXIncyBvcHRpb25zIGlzXG4gICAgICAvLyB3aGF0IGxldHMgYHByb2plbiBuZXcgLS1mcm9tIEB4cGVydHNzL3Byb2plbi10eXBlcyBjZGtfaW5mcmFgIHdvcmtcbiAgICAgIC8vIC0gcHJvamVuIHNtdWdnbGVzIGl0cyBib290c3RyYXAgbWFya2VyIChgX19uZXdfX2ApIHRocm91Z2ggdGhlXG4gICAgICAvLyBvcHRpb25zIG9iamVjdCwgYW5kIGl0IGlzIHRoYXQgbWFya2VyIHdoaWNoIG1ha2VzIHRoZVxuICAgICAgLy8gYFByb2plbnJjRmlsZWAgY29tcG9uZW50IHdyaXRlIHRoZSBpbml0aWFsIGAucHJvamVucmMudHNgLiBEcm9wIGl0XG4gICAgICAvLyBhbmQgYHByb2plbiBuZXdgIHNjYWZmb2xkcyBhIHJlcG8gd2l0aCBubyBwcm9qZW5yYyBhdCBhbGwuXG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgbmFtZTogb3B0aW9ucy5uYW1lLFxuICAgICAgY2RrVmVyc2lvbjogb3B0aW9ucy5jZGtWZXJzaW9uID8/ICcyLjE4OS4xJyxcbiAgICAgIGRlZmF1bHRSZWxlYXNlQnJhbmNoOiAnbWFpbicsXG4gICAgICBzYW1wbGVDb2RlOiB0cnVlLFxuICAgICAgLy8gR2VuZXJhdGVkIHJlcG9zIGFyZSBjb25maWd1cmVkIHRocm91Z2ggYC5wcm9qZW5yYy50c2A7IHdpdGhvdXQgdGhpc1xuICAgICAgLy8gYFR5cGVTY3JpcHRQcm9qZWN0YCBkZWZhdWx0cyB0byBgcHJvamVucmNUczogZmFsc2VgIGFuZCB3aXJlcyB0aGVcbiAgICAgIC8vIGRlZmF1bHQgdGFzayB0byBgbm9kZSAucHJvamVucmMuanNgLlxuICAgICAgcHJvamVucmNUczogdHJ1ZSxcbiAgICAgIC8vIFBpbm5lZCwgbm90IGBUeXBlU2NyaXB0UHJvamVjdGAncyBkZWZhdWx0IGAqYDogYHR5cGVzY3JpcHRAN2Agbm9cbiAgICAgIC8vIGxvbmdlciBleHBvc2VzIGB0cy5zeXNgIGZyb20gaXRzIEpTIEFQSSwgd2hpY2ggYnJlYWtzIHRoZSBgdHMtbm9kZWBcbiAgICAgIC8vIHRoYXQgYHByb2plbnJjVHNgIHdpcmVzIHRoZSBkZWZhdWx0IHRhc2sgdG8gKEFELTAwMSB3YW50cyB0aGUgcGluXG4gICAgICAvLyByZWdhcmRsZXNzKS5cbiAgICAgIHR5cGVzY3JpcHRWZXJzaW9uOiAnfjYuMC4zJyxcbiAgICAgIC8vIERlY2xhcmVkIGZsb29yIGZvciB0aGUgZ2VuZXJhdGVkIHJlcG8uIEFsc28gcmVxdWlyZWQgYnkgdGhlIHBpblxuICAgICAgLy8gYWJvdmU6IHdpdGggbm8gYG1pbk5vZGVWZXJzaW9uYCwgcHJvamVuIGRlcml2ZXMgYEB0eXBlcy9ub2RlYCBmcm9tXG4gICAgICAvLyB0aGUgVHlwZVNjcmlwdCB2ZXJzaW9uIGluc3RlYWQsIGFuZCB0aGUgYEB0eXBlcy9ub2RlQHRzNi4wYFxuICAgICAgLy8gZGlzdC10YWcgaXQgYXNrcyBmb3IgZG9lcyBub3QgZXhpc3QgLSBgbnBtIGluc3RhbGxgIGZhaWxzIG91dHJpZ2h0LlxuICAgICAgbWluTm9kZVZlcnNpb246ICcyMi4wLjAnLFxuICAgICAgLy8gV2l0aG91dCB0aGlzIHByb2plbiBkZWZhdWx0cyB0byB5YXJuIGNsYXNzaWMgYW5kIHRoZSBnZW5lcmF0ZWQgcmVwbydzXG4gICAgICAvLyBvd24gaW5zdGFsbCBzdGVwIHJ1bnMgYHlhcm4gaW5zdGFsbCAtLWNoZWNrLWZpbGVzYCwgd2hpbGUgZXZlcnlcbiAgICAgIC8vIHdvcmtmbG93IHRoaXMgcGFja2FnZSBnZW5lcmF0ZXMgLSBhbmQgdGhlIFJFQURNRSAtIHVzZSBucG0uXG4gICAgICBwYWNrYWdlTWFuYWdlcjogamF2YXNjcmlwdC5Ob2RlUGFja2FnZU1hbmFnZXIuTlBNLFxuICAgICAgLy8gRmFpbCBQUiBjaGVja3Mgb24gZHJpZnQgaW5zdGVhZCBvZiBhdXRvLWNvbW1pdHRpbmcgcHJvamVuJ3Mgb3V0cHV0LlxuICAgICAgYnVpbGRXb3JrZmxvd09wdGlvbnM6IHsgbXV0YWJsZUJ1aWxkOiBmYWxzZSB9LFxuICAgICAgcHJvamVuQ3JlZGVudGlhbHM6IGdpdGh1Yi5HaXRodWJDcmVkZW50aWFscy5mcm9tUGVyc29uYWxBY2Nlc3NUb2tlbih7XG4gICAgICAgIHNlY3JldDogb3B0aW9ucy5naGVUb2tlblNlY3JldCA/PyBERUZBVUxUX0dIRV9UT0tFTl9TRUNSRVQsXG4gICAgICB9KSxcbiAgICB9KTtcblxuICAgIC8vIGAucHJvamVucmMudHNgIGltcG9ydHMgdGhpcyBwYWNrYWdlLCBzbyB0aGUgZ2VuZXJhdGVkIHJlcG8gaGFzIHRvXG4gICAgLy8gZGVjbGFyZSBpdDogcHJvamVuIHBydW5lcyBhbnkgZGVwZW5kZW5jeSBvZiBhIGBOb2RlUHJvamVjdGAgdGhhdCB0aGVcbiAgICAvLyBwcm9qZW5yYyBkb2VzIG5vdCBhc2sgZm9yIChcIlJlbW92aW5nIHVubWFuYWdlZCBkZXBlbmRlbmNpZXMuLi5cIiksIHdoaWNoXG4gICAgLy8gd291bGQgbGVhdmUgYSByZXBvIHdob3NlIGBucHggcHJvamVuYCBjYW5ub3QgcmVzb2x2ZSBpdHMgb3duIHByb2plY3RcbiAgICAvLyB0eXBlIGFmdGVyIGEgY2xlYW4gYG5wbSBjaWAuXG4gICAgdGhpcy5hZGREZXZEZXBzKGBAeHBlcnRzcy9wcm9qZW4tdHlwZXNAJHtQUk9KRU5fVFlQRVNfVkVSU0lPTn1gKTtcbiAgICB0aGlzLmFkZERldkRlcHMoJ2VzYnVpbGQnKTtcblxuICAgIGNvbnN0IGdoID0gdGhpcy5naXRodWI7XG4gICAgaWYgKCFnaCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnQ2RrVHlwZXNjcmlwdFByb2plY3QgcmVxdWlyZXMgR2l0SHViIGludGVncmF0aW9uIHRvIGJlIGVuYWJsZWQnLFxuICAgICAgKTtcbiAgICB9XG4gICAgYXBwbHlJbnRlcm5hbEFjdGlvbk92ZXJyaWRlcyhnaCk7XG5cbiAgICBuZXcgUHJvamVuRHJpZnRDaGVja1dvcmtmbG93KHRoaXMsIHtcbiAgICAgIGdoZVRva2VuU2VjcmV0OiBvcHRpb25zLmdoZVRva2VuU2VjcmV0ID8/IERFRkFVTFRfR0hFX1RPS0VOX1NFQ1JFVCxcbiAgICB9KTtcbiAgICBuZXcgV29ya2Zsb3dDaGFuZ2VOb3RpY2VXb3JrZmxvdyh0aGlzKTtcbiAgICBuZXcgQWN0aW9uc0FsbG93bGlzdEd1YXJkKHRoaXMpO1xuXG4gICAgaWYgKG9wdGlvbnMuZW52aXJvbm1lbnRzICYmIG9wdGlvbnMuZW52aXJvbm1lbnRzLmxlbmd0aCA+IDApIHtcbiAgICAgIG5ldyBNYW51YWxEZXBsb3lXb3JrZmxvdyh0aGlzLCB7XG4gICAgICAgIGVudmlyb25tZW50czogb3B0aW9ucy5lbnZpcm9ubWVudHMsXG4gICAgICAgIGRlcGxveVN0ZXBzOiAoZW52KSA9PiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ0luc3RhbGwnLFxuICAgICAgICAgICAgcnVuOiAnbnBtIGNpJyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6IGBjZGsgZGVwbG95ICgke2Vudi5uYW1lfSlgLFxuICAgICAgICAgICAgcnVuOiBgbnB4IGNkayBkZXBsb3kgLS1hbGwgLS1yZXF1aXJlLWFwcHJvdmFsIG5ldmVyIC0tY29udGV4dCBlbnZpcm9ubWVudD0ke2Vudi5uYW1lfWAsXG4gICAgICAgICAgICBlbnY6IHtcbiAgICAgICAgICAgICAgLi4uKGVudi5hY2NvdW50SWQgPyB7IENES19ERUZBVUxUX0FDQ09VTlQ6IGVudi5hY2NvdW50SWQgfSA6IHt9KSxcbiAgICAgICAgICAgICAgLi4uKGVudi5yZWdpb24gPyB7IENES19ERUZBVUxUX1JFR0lPTjogZW52LnJlZ2lvbiB9IDoge30pLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG4iXX0=
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLXR5cGVzY3JpcHQtYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jZGsvY2RrLXR5cGVzY3JpcHQtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsbUNBQW9EO0FBRXBELG1EQUErRDtBQUUvRCxpRUFBMEU7QUFDMUUsNkVBQXdFO0FBQ3hFLHVGQUFpRjtBQUNqRiwrRkFBeUY7QUFDekYsaUVBQWlFO0FBRWpFLHdFQUF3RTtBQUN4RSw2RUFBNkU7QUFDN0UsbUNBQW1DO0FBQ25DLGlFQUFpRTtBQUNqRSxNQUFNLG9CQUFvQixHQUFXLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLE9BQU8sQ0FBQztBQU0zRTs7Ozs7O0dBTUc7QUFDSCxNQUFhLG9CQUFxQixTQUFRLGVBQU0sQ0FBQyxtQkFBbUI7O0lBQ2xFLFlBQVksT0FBb0M7UUFDOUMsS0FBSyxDQUFDO1lBQ0osb0VBQW9FO1lBQ3BFLHFFQUFxRTtZQUNyRSxpRUFBaUU7WUFDakUsd0RBQXdEO1lBQ3hELHFFQUFxRTtZQUNyRSw2REFBNkQ7WUFDN0QsR0FBRyxPQUFPO1lBQ1YsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ2xCLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVSxJQUFJLFNBQVM7WUFDM0Msb0JBQW9CLEVBQUUsTUFBTTtZQUM1QixVQUFVLEVBQUUsSUFBSTtZQUNoQixzRUFBc0U7WUFDdEUsb0VBQW9FO1lBQ3BFLHVDQUF1QztZQUN2QyxVQUFVLEVBQUUsSUFBSTtZQUNoQixtRUFBbUU7WUFDbkUsc0VBQXNFO1lBQ3RFLG9FQUFvRTtZQUNwRSxlQUFlO1lBQ2YsaUJBQWlCLEVBQUUsUUFBUTtZQUMzQixrRUFBa0U7WUFDbEUscUVBQXFFO1lBQ3JFLDhEQUE4RDtZQUM5RCxzRUFBc0U7WUFDdEUsY0FBYyxFQUFFLFFBQVE7WUFDeEIsd0VBQXdFO1lBQ3hFLGtFQUFrRTtZQUNsRSw4REFBOEQ7WUFDOUQsY0FBYyxFQUFFLG1C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Z2l0aHViLCBqYXZhc2NyaXB0IH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IENvbW1vbkNka09wdGlvbnMgfSBmcm9tICcuL29wdGlvbnMnO1xuaW1wb3J0IHsgREVGQVVMVF9HSEVfVE9LRU5fU0VDUkVUIH0gZnJvbSAnLi4vY29tbW9uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBFbnZpcm9ubWVudE9wdGlvbnMgfSBmcm9tICcuLi9jb21tb24vZW52aXJvbm1lbnQtb3B0aW9ucyc7XG5pbXBvcnQgeyBhcHBseUludGVybmFsQWN0aW9uT3ZlcnJpZGVzIH0gZnJvbSAnLi4vY29tbW9uL2ludGVybmFsLWFjdGlvbnMnO1xuaW1wb3J0IHsgTWFudWFsRGVwbG95V29ya2Zsb3cgfSBmcm9tICcuLi9jb21tb24vbWFudWFsLWRlcGxveS13b3JrZmxvdyc7XG5pbXBvcnQgeyBQcm9qZW5EcmlmdENoZWNrV29ya2Zsb3cgfSBmcm9tICcuLi9jb21tb24vcHJvamVuLWRyaWZ0LWNoZWNrLXdvcmtmbG93JztcbmltcG9ydCB7IFdvcmtmbG93Q2hhbmdlTm90aWNlV29ya2Zsb3cgfSBmcm9tICcuLi9jb21tb24vd29ya2Zsb3ctY2hhbmdlLW5vdGljZS13b3JrZmxvdyc7XG5pbXBvcnQgeyBub3RlV29ya2Zsb3dQdXJwb3NlIH0gZnJvbSAnLi4vY29tbW9uL3dvcmtmbG93LXB1cnBvc2UnO1xuXG4vLyBSZXNvbHZlZCB0aHJvdWdoIE5vZGUncyBub3JtYWwgbW9kdWxlIHJlc29sdXRpb24sIHNvIGluIGEgKnB1Ymxpc2hlZCpcbi8vIHBhY2thZ2UgdGhpcyBpcyB0aGUgdmVyc2lvbiBvZiB0aGlzIHBhY2thZ2UgdGhhdCBzY2FmZm9sZGVkIHRoZSByZXBvIChzYW1lXG4vLyB0cmljayBhcyBgR2l0SHViQWN0aW9uUHJvamVjdGApLlxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1yZXF1aXJlLWltcG9ydHNcbmNvbnN0IFBST0pFTl9UWVBFU19WRVJTSU9OOiBzdHJpbmcgPSByZXF1aXJlKCcuLi8uLi9wYWNrYWdlLmpzb24nKS52ZXJzaW9uO1xuXG5leHBvcnQgaW50ZXJmYWNlIENka1R5cGVzY3JpcHRQcm9qZWN0T3B0aW9ucyBleHRlbmRzIENvbW1vbkNka09wdGlvbnMge1xuICByZWFkb25seSBlbnZpcm9ubWVudHM/OiAoc3RyaW5nIHwgRW52aXJvbm1lbnRPcHRpb25zKVtdO1xufVxuXG4vKipcbiAqIFNoYXJlZCBDREsgKyBUeXBlU2NyaXB0IGZvdW5kYXRpb24gZm9yIGBDZGtJbmZyYVByb2plY3RgIGFuZFxuICogYENka0FwcFByb2plY3RgOiBzdGFuZGFyZCBhcHAgc3RydWN0dXJlICh2aWEgYEF3c0Nka1R5cGVTY3JpcHRBcHBgLFxuICogYGNkay5qc29uYCwgYGNkayBzeW50aGAvYGNkayBkaWZmYCB0YXNrcyksIGEgUFItY2hlY2sgYnVpbGQgdGhhdCBoYXJkLWZhaWxzXG4gKiBvbiBwcm9qZW4gZHJpZnQgKHJhdGhlciB0aGFuIHNlbGYtbXV0YXRpbmcpLCBhbmQgYW4gb3B0aW9uYWxcbiAqIGBNYW51YWxEZXBsb3lXb3JrZmxvd2Agd2hlbiBgZW52aXJvbm1lbnRzYCBpcyBwcm92aWRlZC5cbiAqL1xuZXhwb3J0IGNsYXNzIENka1R5cGVzY3JpcHRQcm9qZWN0IGV4dGVuZHMgYXdzY2RrLkF3c0Nka1R5cGVTY3JpcHRBcHAge1xuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBDZGtUeXBlc2NyaXB0UHJvamVjdE9wdGlvbnMpIHtcbiAgICBzdXBlcih7XG4gICAgICAvLyBTcHJlYWQgZmlyc3QsIG92ZXJyaWRlcyBhZnRlcjogZm9yd2FyZGluZyB0aGUgY2FsbGVyJ3Mgb3B0aW9ucyBpc1xuICAgICAgLy8gd2hhdCBsZXRzIGBwcm9qZW4gbmV3IC0tZnJvbSBAeHBlcnRzcy9wcm9qZW4tdHlwZXMgY2RrX2luZnJhYCB3b3JrXG4gICAgICAvLyAtIHByb2plbiBzbXVnZ2xlcyBpdHMgYm9vdHN0cmFwIG1hcmtlciAoYF9fbmV3X19gKSB0aHJvdWdoIHRoZVxuICAgICAgLy8gb3B0aW9ucyBvYmplY3QsIGFuZCBpdCBpcyB0aGF0IG1hcmtlciB3aGljaCBtYWtlcyB0aGVcbiAgICAgIC8vIGBQcm9qZW5yY0ZpbGVgIGNvbXBvbmVudCB3cml0ZSB0aGUgaW5pdGlhbCBgLnByb2plbnJjLnRzYC4gRHJvcCBpdFxuICAgICAgLy8gYW5kIGBwcm9qZW4gbmV3YCBzY2FmZm9sZHMgYSByZXBvIHdpdGggbm8gcHJvamVucmMgYXQgYWxsLlxuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIG5hbWU6IG9wdGlvbnMubmFtZSxcbiAgICAgIGNka1ZlcnNpb246IG9wdGlvbnMuY2RrVmVyc2lvbiA/PyAnMi4xODkuMScsXG4gICAgICBkZWZhdWx0UmVsZWFzZUJyYW5jaDogJ21haW4nLFxuICAgICAgc2FtcGxlQ29kZTogdHJ1ZSxcbiAgICAgIC8vIEdlbmVyYXRlZCByZXBvcyBhcmUgY29uZmlndXJlZCB0aHJvdWdoIGAucHJvamVucmMudHNgOyB3aXRob3V0IHRoaXNcbiAgICAgIC8vIGBUeXBlU2NyaXB0UHJvamVjdGAgZGVmYXVsdHMgdG8gYHByb2plbnJjVHM6IGZhbHNlYCBhbmQgd2lyZXMgdGhlXG4gICAgICAvLyBkZWZhdWx0IHRhc2sgdG8gYG5vZGUgLnByb2plbnJjLmpzYC5cbiAgICAgIHByb2plbnJjVHM6IHRydWUsXG4gICAgICAvLyBQaW5uZWQsIG5vdCBgVHlwZVNjcmlwdFByb2plY3RgJ3MgZGVmYXVsdCBgKmA6IGB0eXBlc2NyaXB0QDdgIG5vXG4gICAgICAvLyBsb25nZXIgZXhwb3NlcyBgdHMuc3lzYCBmcm9tIGl0cyBKUyBBUEksIHdoaWNoIGJyZWFrcyB0aGUgYHRzLW5vZGVgXG4gICAgICAvLyB0aGF0IGBwcm9qZW5yY1RzYCB3aXJlcyB0aGUgZGVmYXVsdCB0YXNrIHRvIChBRC0wMDEgd2FudHMgdGhlIHBpblxuICAgICAgLy8gcmVnYXJkbGVzcykuXG4gICAgICB0eXBlc2NyaXB0VmVyc2lvbjogJ342LjAuMycsXG4gICAgICAvLyBEZWNsYXJlZCBmbG9vciBmb3IgdGhlIGdlbmVyYXRlZCByZXBvLiBBbHNvIHJlcXVpcmVkIGJ5IHRoZSBwaW5cbiAgICAgIC8vIGFib3ZlOiB3aXRoIG5vIGBtaW5Ob2RlVmVyc2lvbmAsIHByb2plbiBkZXJpdmVzIGBAdHlwZXMvbm9kZWAgZnJvbVxuICAgICAgLy8gdGhlIFR5cGVTY3JpcHQgdmVyc2lvbiBpbnN0ZWFkLCBhbmQgdGhlIGBAdHlwZXMvbm9kZUB0czYuMGBcbiAgICAgIC8vIGRpc3QtdGFnIGl0IGFza3MgZm9yIGRvZXMgbm90IGV4aXN0IC0gYG5wbSBpbnN0YWxsYCBmYWlscyBvdXRyaWdodC5cbiAgICAgIG1pbk5vZGVWZXJzaW9uOiAnMjIuMC4wJyxcbiAgICAgIC8vIFdpdGhvdXQgdGhpcyBwcm9qZW4gZGVmYXVsdHMgdG8geWFybiBjbGFzc2ljIGFuZCB0aGUgZ2VuZXJhdGVkIHJlcG8nc1xuICAgICAgLy8gb3duIGluc3RhbGwgc3RlcCBydW5zIGB5YXJuIGluc3RhbGwgLS1jaGVjay1maWxlc2AsIHdoaWxlIGV2ZXJ5XG4gICAgICAvLyB3b3JrZmxvdyB0aGlzIHBhY2thZ2UgZ2VuZXJhdGVzIC0gYW5kIHRoZSBSRUFETUUgLSB1c2UgbnBtLlxuICAgICAgcGFja2FnZU1hbmFnZXI6IGphdmFzY3JpcHQuTm9kZVBhY2thZ2VNYW5hZ2VyLk5QTSxcbiAgICAgIC8vIEZhaWwgUFIgY2hlY2tzIG9uIGRyaWZ0IGluc3RlYWQgb2YgYXV0by1jb21taXR0aW5nIHByb2plbidzIG91dHB1dC5cbiAgICAgIGJ1aWxkV29ya2Zsb3dPcHRpb25zOiB7IG11dGFibGVCdWlsZDogZmFsc2UgfSxcbiAgICAgIHByb2plbkNyZWRlbnRpYWxzOiBnaXRodWIuR2l0aHViQ3JlZGVudGlhbHMuZnJvbVBlcnNvbmFsQWNjZXNzVG9rZW4oe1xuICAgICAgICBzZWNyZXQ6IG9wdGlvbnMuZ2hlVG9rZW5TZWNyZXQgPz8gREVGQVVMVF9HSEVfVE9LRU5fU0VDUkVULFxuICAgICAgfSksXG4gICAgfSk7XG5cbiAgICAvLyBgLnByb2plbnJjLnRzYCBpbXBvcnRzIHRoaXMgcGFja2FnZSwgc28gdGhlIGdlbmVyYXRlZCByZXBvIGhhcyB0b1xuICAgIC8vIGRlY2xhcmUgaXQ6IHByb2plbiBwcnVuZXMgYW55IGRlcGVuZGVuY3kgb2YgYSBgTm9kZVByb2plY3RgIHRoYXQgdGhlXG4gICAgLy8gcHJvamVucmMgZG9lcyBub3QgYXNrIGZvciAoXCJSZW1vdmluZyB1bm1hbmFnZWQgZGVwZW5kZW5jaWVzLi4uXCIpLCB3aGljaFxuICAgIC8vIHdvdWxkIGxlYXZlIGEgcmVwbyB3aG9zZSBgbnB4IHByb2plbmAgY2Fubm90IHJlc29sdmUgaXRzIG93biBwcm9qZWN0XG4gICAgLy8gdHlwZSBhZnRlciBhIGNsZWFuIGBucG0gY2lgLlxuICAgIHRoaXMuYWRkRGV2RGVwcyhgQHhwZXJ0c3MvcHJvamVuLXR5cGVzQCR7UFJPSkVOX1RZUEVTX1ZFUlNJT059YCk7XG4gICAgdGhpcy5hZGREZXZEZXBzKCdlc2J1aWxkJyk7XG5cbiAgICBjb25zdCBnaCA9IHRoaXMuZ2l0aHViO1xuICAgIGlmICghZ2gpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ0Nka1R5cGVzY3JpcHRQcm9qZWN0IHJlcXVpcmVzIEdpdEh1YiBpbnRlZ3JhdGlvbiB0byBiZSBlbmFibGVkJyxcbiAgICAgICk7XG4gICAgfVxuICAgIGFwcGx5SW50ZXJuYWxBY3Rpb25PdmVycmlkZXMoZ2gpO1xuXG4gICAgbmV3IFByb2plbkRyaWZ0Q2hlY2tXb3JrZmxvdyh0aGlzLCB7XG4gICAgICBnaGVUb2tlblNlY3JldDogb3B0aW9ucy5naGVUb2tlblNlY3JldCA/PyBERUZBVUxUX0dIRV9UT0tFTl9TRUNSRVQsXG4gICAgfSk7XG4gICAgbmV3IFdvcmtmbG93Q2hhbmdlTm90aWNlV29ya2Zsb3codGhpcyk7XG5cbiAgICAvLyBgYnVpbGRgIGlzIHByb2plbidzIGJ1aWx0LWluIE5vZGVQcm9qZWN0IHdvcmtmbG93IChlbmFibGVkIHZpYVxuICAgIC8vIGBidWlsZFdvcmtmbG93T3B0aW9uc2AgYWJvdmUpLCBub3Qgb25lIHRoaXMgcGFja2FnZSBjb25zdHJ1Y3RzIC1cbiAgICAvLyBhbm5vdGF0ZSBpdCB0aGUgc2FtZSB3YXkgYXMgdGhlIG90aGVycy5cbiAgICBpZiAodGhpcy5idWlsZFdvcmtmbG93KSB7XG4gICAgICBub3RlV29ya2Zsb3dQdXJwb3NlKFxuICAgICAgICB0aGlzLmJ1aWxkV29ya2Zsb3cud29ya2Zsb3cuZmlsZSxcbiAgICAgICAgJ1B1bGwtcmVxdWVzdCBidWlsZCBnYXRlOiBpbnN0YWxsIGRlcGVuZGVuY2llcywgc3ludGhlc2l6ZSB0aGUgQ0RLIGFwcCwgYW5kIHJ1biB1bml0IHRlc3RzLicsXG4gICAgICApO1xuICAgIH1cbiAgICAvLyBgZGVwc1VwZ3JhZGVgIGlzIHByb2plbidzIGJ1aWx0LWluIG5pZ2h0bHkgdXBncmFkZSB3b3JrZmxvdyAtIGFubm90YXRlXG4gICAgLy8gaXQgdGhlIHNhbWUgd2F5IChvbmUgd29ya2Zsb3cgcGVyIHJlbGVhc2UgYnJhbmNoKS5cbiAgICBpZiAodGhpcy51cGdyYWRlV29ya2Zsb3cpIHtcbiAgICAgIGZvciAoY29uc3Qgd29ya2Zsb3cgb2YgdGhpcy51cGdyYWRlV29ya2Zsb3cud29ya2Zsb3dzKSB7XG4gICAgICAgIG5vdGVXb3JrZmxvd1B1cnBvc2UoXG4gICAgICAgICAgd29ya2Zsb3cuZmlsZSxcbiAgICAgICAgICAnT3BlbiBhIG5pZ2h0bHkgZGVwZW5kZW5jeS11cGdyYWRlIHB1bGwgcmVxdWVzdC4nLFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgICAvLyBgcHVsbC1yZXF1ZXN0LWxpbnRgIGlzIHByb2plbidzIGJ1aWx0LWluIFBSLXRpdGxlIHZhbGlkYXRpb24gd29ya2Zsb3cgLVxuICAgIC8vIHJlYWNoIGl0cyBmaWxlIGJ5IHBhdGggbGlrZSB0aGUgcmVsZWFzZSB3b3JrZmxvdy5cbiAgICBub3RlV29ya2Zsb3dQdXJwb3NlKFxuICAgICAgdGhpcy50cnlGaW5kRmlsZSgnLmdpdGh1Yi93b3JrZmxvd3MvcHVsbC1yZXF1ZXN0LWxpbnQueW1sJyksXG4gICAgICAnUmVqZWN0IHB1bGwgcmVxdWVzdHMgd2hvc2UgdGl0bGVzIGRvIG5vdCBmb2xsb3cgdGhlIGNvbnZlbnRpb25hbC1jb21taXQgKHNlbWFudGljLXJlbGVhc2UpIGZvcm1hdC4nLFxuICAgICk7XG5cbiAgICBpZiAob3B0aW9ucy5lbnZpcm9ubWVudHMgJiYgb3B0aW9ucy5lbnZpcm9ubWVudHMubGVuZ3RoID4gMCkge1xuICAgICAgbmV3IE1hbnVhbERlcGxveVdvcmtmbG93KHRoaXMsIHtcbiAgICAgICAgZW52aXJvbm1lbnRzOiBvcHRpb25zLmVudmlyb25tZW50cyxcbiAgICAgICAgZGVwbG95U3RlcHM6IChlbnYpID0+IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnSW5zdGFsbCcsXG4gICAgICAgICAgICBydW46ICducG0gY2knLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogYGNkayBkZXBsb3kgKCR7ZW52Lm5hbWV9KWAsXG4gICAgICAgICAgICBydW46IGBucHggY2RrIGRlcGxveSAtLWFsbCAtLXJlcXVpcmUtYXBwcm92YWwgbmV2ZXIgLS1jb250ZXh0IGVudmlyb25tZW50PSR7ZW52Lm5hbWV9YCxcbiAgICAgICAgICAgIGVudjoge1xuICAgICAgICAgICAgICAuLi4oZW52LmFjY291bnRJZCA/IHsgQ0RLX0RFRkFVTFRfQUNDT1VOVDogZW52LmFjY291bnRJZCB9IDoge30pLFxuICAgICAgICAgICAgICAuLi4oZW52LnJlZ2lvbiA/IHsgQ0RLX0RFRkFVTFRfUkVHSU9OOiBlbnYucmVnaW9uIH0gOiB7fSksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -10,7 +10,7 @@ const projen_1 = require("projen");
10
10
  * built from this project's own source (app projects).
11
11
  */
12
12
  class EcrEcsConstructs extends projen_1.Component {
13
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.EcrEcsConstructs", version: "0.0.6" };
13
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.EcrEcsConstructs", version: "0.0.8" };
14
14
  constructor(project, options = {}) {
15
15
  super(project, 'EcrEcsConstructs');
16
16
  const externalImageSource = options.externalImageSource ?? true;
@@ -42,7 +42,7 @@ const HELPERS = {
42
42
  * to whichever `edgeResources` the consuming project type opts into.
43
43
  */
44
44
  class EdgeNetworkingConstructs extends projen_1.Component {
45
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.EdgeNetworkingConstructs", version: "0.0.6" };
45
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.EdgeNetworkingConstructs", version: "0.0.8" };
46
46
  constructor(project, resources) {
47
47
  super(project, 'EdgeNetworkingConstructs');
48
48
  if (resources.length === 0) {
@@ -10,7 +10,7 @@ const projen_1 = require("projen");
10
10
  * the consuming team to wire up; no opinionated default is imposed.
11
11
  */
12
12
  class DatabaseComponent extends projen_1.Component {
13
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.DatabaseComponent", version: "0.0.6" };
13
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.DatabaseComponent", version: "0.0.8" };
14
14
  constructor(project, options = {}) {
15
15
  super(project, 'DatabaseComponent');
16
16
  const engine = options.engine ?? 'postgres';
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ManualDeployWorkflow = void 0;
4
4
  const projen_1 = require("projen");
5
5
  const environment_options_1 = require("./environment-options");
6
+ const workflow_purpose_1 = require("./workflow-purpose");
6
7
  /** @internal */
7
8
  class ManualDeployWorkflow extends projen_1.Component {
8
9
  workflow;
@@ -22,6 +23,7 @@ class ManualDeployWorkflow extends projen_1.Component {
22
23
  },
23
24
  ]);
24
25
  this.workflow = new projen_1.github.GithubWorkflow(gh, workflowName);
26
+ (0, workflow_purpose_1.noteWorkflowPurpose)(this.workflow.file, 'Manually deploy to a chosen environment via workflow_dispatch.');
25
27
  this.workflow.on({
26
28
  workflowDispatch: {
27
29
  inputs: {
@@ -64,4 +66,4 @@ class ManualDeployWorkflow extends projen_1.Component {
64
66
  }
65
67
  }
66
68
  exports.ManualDeployWorkflow = ManualDeployWorkflow;
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFudWFsLWRlcGxveS13b3JrZmxvdy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21tb24vbWFudWFsLWRlcGxveS13b3JrZmxvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBMkM7QUFDM0MsK0RBRytCO0FBZ0MvQixnQkFBZ0I7QUFDaEIsTUFBYSxvQkFBcUIsU0FBUSxrQkFBUztJQUNqQyxRQUFRLENBQXdCO0lBRWhELFlBQ0UsS0FBMkIsRUFDM0IsT0FBb0M7UUFFcEMsS0FBSyxDQUFDLEtBQUssRUFBRSxzQkFBc0IsQ0FBQyxDQUFDO1FBRXJDLE1BQU0sWUFBWSxHQUFHLElBQUEsMkNBQXFCLEVBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ2pFLE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDeEIsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ1IsTUFBTSxJQUFJLEtBQUssQ0FDYixnRUFBZ0UsQ0FDakUsQ0FBQztRQUNKLENBQUM7UUFFRCxNQUFNLFlBQVksR0FBRyxPQUFPLENBQUMsWUFBWSxJQUFJLFFBQVEsQ0FBQztRQUN0RCxNQUFNLFdBQVcsR0FDZixPQUFPLENBQUMsV0FBVztZQUNuQixDQUFDLENBQUMsR0FBdUIsRUFBOEIsRUFBRSxDQUFDO2dCQUN4RDtvQkFDRSxJQUFJLEVBQUUsVUFBVSxHQUFHLENBQUMsSUFBSSxFQUFFO29CQUMxQixHQUFHLEVBQUUsdURBQXVELEdBQUcsQ0FBQyxJQUFJLElBQUk7aUJBQ3pFO2FBQ0YsQ0FBQyxDQUFDO1FBRUwsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLGVBQU0sQ0FBQyxjQUFjLENBQUMsRUFBRSxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQ2YsZ0JBQWdCLEVBQUU7Z0JBQ2hCLE1BQU0sRUFBRTtvQkFDTixXQUFXLEVBQUU7d0JBQ1gsV0FBVyxFQUFFLHVCQUF1Qjt3QkFDcEMsUUFBUSxFQUFFLElBQUk7d0JBQ2QsSUFBSSxFQUFFLFFBQVE7d0JBQ2QsT0FBTyxFQUFFLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7cUJBQ3pDO29CQUNELE9BQU8sRUFBRTt3QkFDUCxXQUFXLEVBQ1QsZ0VBQWdFO3dCQUNsRSxRQUFRLEVBQUUsS0FBSztxQkFDaEI7aUJBQ0Y7YUFDRjtTQUNGLENBQUMsQ0FBQztRQUVILEtBQUssTUFBTSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7WUFDL0IsTUFBTSxLQUFLLEdBQStCO2dCQUN4QztvQkFDRSxJQUFJLEVBQUUsVUFBVTtvQkFDaEIsSUFBSSxFQUFFLHFCQUFxQjtvQkFDM0IsSUFBSSxFQUFFO3dCQUNKLEdBQUcsRUFBRSxrREFBa0Q7cUJBQ3hEO2lCQUNGO2dCQUNELEdBQUcsV0FBVyxDQUFDLEdBQUcsQ0FBQzthQUNwQixDQUFDO1lBRUYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsVUFBVSxHQUFHLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ3pDLElBQUksRUFBRSxXQUFXLEdBQUcsQ0FBQyxJQUFJLEdBQUc7Z0JBQzVCLEVBQUUsRUFBRSx1Q0FBdUMsR0FBRyxDQUFDLElBQUksR0FBRztnQkFDdEQsTUFBTSxFQUFFLENBQUMsZUFBZSxDQUFDO2dCQUN6QixXQUFXLEVBQUUsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTO2dCQUN4RCxXQUFXLEVBQUU7b0JBQ1gsT0FBTyxFQUFFLGVBQU0sQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLEtBQUs7b0JBQzdDLFFBQVEsRUFBRSxlQUFNLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxJQUFJO2lCQUM5QztnQkFDRCxLQUFLO2FBQ04sQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7Q0FDRjtBQXZFRCxvREF1RUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGdpdGh1YiB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQge1xuICBFbnZpcm9ubWVudE9wdGlvbnMsXG4gIG5vcm1hbGl6ZUVudmlyb25tZW50cyxcbn0gZnJvbSAnLi9lbnZpcm9ubWVudC1vcHRpb25zJztcblxuLyoqXG4gKiBTaGFyZWQsIGVudmlyb25tZW50LXBhcmFtZXRlcml6ZWQgbWFudWFsLWRpc3BhdGNoIGRlcGxveSB3b3JrZmxvdy5cbiAqXG4gKiBUaGlzIGlzIHRoZSBvbmUgXCJ0cmlnZ2VyIGEgZGVwbG95XCIgY29udHJhY3QgdXNlZCBieSBib3RoIHRoZSBDREsgcHJvamVjdFxuICogdHlwZXMgKGRlcGxveWluZyB0aGVpciBvd24gc3RhY2tzKSBhbmQgdGhlIEphdmEgYENka0RlcGxveUhvb2tgIGNvbXBvbmVudFxuICogKGRpc3BhdGNoaW5nIGEgZGVwbG95IGluIGEgY29tcGFuaW9uIENESyByZXBvKSAtIHNlZSB0aGUgXCJPcGVuIFF1ZXN0aW9uc1wiXG4gKiBzZWN0aW9ucyBvZiB0aGUgdHdvIHNwZWNzLlxuICpcbiAqIEBpbnRlcm5hbCAtIG5vdCBwYXJ0IG9mIHRoZSBqc2lpLWV4cG9ydGVkIEFQSSAoaXRzIGBkZXBsb3lTdGVwc2AgY2FsbGJhY2tcbiAqIGlzbid0IHJlcHJlc2VudGFibGUgYWNyb3NzIGpzaWkgbGFuZ3VhZ2VzKTsgY29uc3VtZWQgZGlyZWN0bHkgYnkgb3RoZXJcbiAqIFR5cGVTY3JpcHQgc291cmNlIGluIHRoaXMgcGFja2FnZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNYW51YWxEZXBsb3lXb3JrZmxvd09wdGlvbnMge1xuICAvKiogRGVwbG95IHRhcmdldHMgZXhwb3NlZCBhcyB0aGUgYGVudmlyb25tZW50YCB3b3JrZmxvd19kaXNwYXRjaCBjaG9pY2UuICovXG4gIHJlYWRvbmx5IGVudmlyb25tZW50czogKHN0cmluZyB8IEVudmlyb25tZW50T3B0aW9ucylbXTtcblxuICAvKiogQGRlZmF1bHQgXCJkZXBsb3lcIiAqL1xuICByZWFkb25seSB3b3JrZmxvd05hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzdGVwcyB0aGF0IGFjdHVhbGx5IHBlcmZvcm0gdGhlIGRlcGxveSBmb3IgYSBnaXZlbiBlbnZpcm9ubWVudC5cbiAgICogRGVmYXVsdHMgdG8gYSBwbGFjZWhvbGRlciBgZWNob2Agc3RlcCAtIHByb2plY3QgdHlwZXMgYXJlIGV4cGVjdGVkIHRvXG4gICAqIG92ZXJyaWRlIHRoaXMgd2l0aCBzb21ldGhpbmcgcmVhbCAoZS5nLiBgY2RrIGRlcGxveWAsIG9yIGFcbiAgICogYHJlcG9zaXRvcnlfZGlzcGF0Y2hgIHRvIGEgY29tcGFuaW9uIGluZnJhIHJlcG8pLlxuICAgKi9cbiAgcmVhZG9ubHkgZGVwbG95U3RlcHM/OiAoXG4gICAgZW52OiBFbnZpcm9ubWVudE9wdGlvbnMsXG4gICkgPT4gZ2l0aHViLndvcmtmbG93cy5Kb2JTdGVwW107XG59XG5cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBjbGFzcyBNYW51YWxEZXBsb3lXb3JrZmxvdyBleHRlbmRzIENvbXBvbmVudCB7XG4gIHB1YmxpYyByZWFkb25seSB3b3JrZmxvdzogZ2l0aHViLkdpdGh1YldvcmtmbG93O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBnaXRodWIuR2l0SHViUHJvamVjdCxcbiAgICBvcHRpb25zOiBNYW51YWxEZXBsb3lXb3JrZmxvd09wdGlvbnMsXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCAnTWFudWFsRGVwbG95V29ya2Zsb3cnKTtcblxuICAgIGNvbnN0IGVudmlyb25tZW50cyA9IG5vcm1hbGl6ZUVudmlyb25tZW50cyhvcHRpb25zLmVudmlyb25tZW50cyk7XG4gICAgY29uc3QgZ2ggPSBzY29wZS5naXRodWI7XG4gICAgaWYgKCFnaCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnTWFudWFsRGVwbG95V29ya2Zsb3cgcmVxdWlyZXMgR2l0SHViIGludGVncmF0aW9uIHRvIGJlIGVuYWJsZWQnLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCB3b3JrZmxvd05hbWUgPSBvcHRpb25zLndvcmtmbG93TmFtZSA/PyAnZGVwbG95JztcbiAgICBjb25zdCBkZXBsb3lTdGVwcyA9XG4gICAgICBvcHRpb25zLmRlcGxveVN0ZXBzID8/XG4gICAgICAoKGVudjogRW52aXJvbm1lbnRPcHRpb25zKTogZ2l0aHViLndvcmtmbG93cy5Kb2JTdGVwW10gPT4gW1xuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogYERlcGxveSAke2Vudi5uYW1lfWAsXG4gICAgICAgICAgcnVuOiBgZWNobyBcIlRPRE86IGltcGxlbWVudCBkZXBsb3kgc3RlcHMgZm9yIGVudmlyb25tZW50ICcke2Vudi5uYW1lfSdcImAsXG4gICAgICAgIH0sXG4gICAgICBdKTtcblxuICAgIHRoaXMud29ya2Zsb3cgPSBuZXcgZ2l0aHViLkdpdGh1YldvcmtmbG93KGdoLCB3b3JrZmxvd05hbWUpO1xuICAgIHRoaXMud29ya2Zsb3cub24oe1xuICAgICAgd29ya2Zsb3dEaXNwYXRjaDoge1xuICAgICAgICBpbnB1dHM6IHtcbiAgICAgICAgICBlbnZpcm9ubWVudDoge1xuICAgICAgICAgICAgZGVzY3JpcHRpb246ICdFbnZpcm9ubWVudCB0byBkZXBsb3knLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgICAgICB0eXBlOiAnY2hvaWNlJyxcbiAgICAgICAgICAgIG9wdGlvbnM6IGVudmlyb25tZW50cy5tYXAoKGUpID0+IGUubmFtZSksXG4gICAgICAgICAgfSxcbiAgICAgICAgICBnaXRfc2hhOiB7XG4gICAgICAgICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgICAgICAgJ09wdGlvbmFsIGNvbW1pdCBTSEEgdG8gZGVwbG95IChkZWZhdWx0cyB0byB0aGUgZGVmYXVsdCBicmFuY2gpJyxcbiAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGZvciAoY29uc3QgZW52IG9mIGVudmlyb25tZW50cykge1xuICAgICAgY29uc3Qgc3RlcHM6IGdpdGh1Yi53b3JrZmxvd3MuSm9iU3RlcFtdID0gW1xuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ0NoZWNrb3V0JyxcbiAgICAgICAgICB1c2VzOiAnYWN0aW9ucy9jaGVja291dEB2NCcsXG4gICAgICAgICAgd2l0aDoge1xuICAgICAgICAgICAgcmVmOiAnJHt7IGdpdGh1Yi5ldmVudC5pbnB1dHMuZ2l0X3NoYSB8fCBnaXRodWIuc2hhIH19JyxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICAuLi5kZXBsb3lTdGVwcyhlbnYpLFxuICAgICAgXTtcblxuICAgICAgdGhpcy53b3JrZmxvdy5hZGRKb2IoYGRlcGxveS0ke2Vudi5uYW1lfWAsIHtcbiAgICAgICAgbmFtZTogYERlcGxveSAoJHtlbnYubmFtZX0pYCxcbiAgICAgICAgaWY6IGBnaXRodWIuZXZlbnQuaW5wdXRzLmVudmlyb25tZW50ID09ICcke2Vudi5uYW1lfSdgLFxuICAgICAgICBydW5zT246IFsndWJ1bnR1LWxhdGVzdCddLFxuICAgICAgICBlbnZpcm9ubWVudDogZW52LnJlcXVpcmVzQXBwcm92YWwgPyBlbnYubmFtZSA6IHVuZGVmaW5lZCxcbiAgICAgICAgcGVybWlzc2lvbnM6IHtcbiAgICAgICAgICBpZFRva2VuOiBnaXRodWIud29ya2Zsb3dzLkpvYlBlcm1pc3Npb24uV1JJVEUsXG4gICAgICAgICAgY29udGVudHM6IGdpdGh1Yi53b3JrZmxvd3MuSm9iUGVybWlzc2lvbi5SRUFELFxuICAgICAgICB9LFxuICAgICAgICBzdGVwcyxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIl19
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFudWFsLWRlcGxveS13b3JrZmxvdy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21tb24vbWFudWFsLWRlcGxveS13b3JrZmxvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBMkM7QUFDM0MsK0RBRytCO0FBQy9CLHlEQUF5RDtBQWdDekQsZ0JBQWdCO0FBQ2hCLE1BQWEsb0JBQXFCLFNBQVEsa0JBQVM7SUFDakMsUUFBUSxDQUF3QjtJQUVoRCxZQUNFLEtBQTJCLEVBQzNCLE9BQW9DO1FBRXBDLEtBQUssQ0FBQyxLQUFLLEVBQUUsc0JBQXNCLENBQUMsQ0FBQztRQUVyQyxNQUFNLFlBQVksR0FBRyxJQUFBLDJDQUFxQixFQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNqRSxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNSLE1BQU0sSUFBSSxLQUFLLENBQ2IsZ0VBQWdFLENBQ2pFLENBQUM7UUFDSixDQUFDO1FBRUQsTUFBTSxZQUFZLEdBQUcsT0FBTyxDQUFDLFlBQVksSUFBSSxRQUFRLENBQUM7UUFDdEQsTUFBTSxXQUFXLEdBQ2YsT0FBTyxDQUFDLFdBQVc7WUFDbkIsQ0FBQyxDQUFDLEdBQXVCLEVBQThCLEVBQUUsQ0FBQztnQkFDeEQ7b0JBQ0UsSUFBSSxFQUFFLFVBQVUsR0FBRyxDQUFDLElBQUksRUFBRTtvQkFDMUIsR0FBRyxFQUFFLHVEQUF1RCxHQUFHLENBQUMsSUFBSSxJQUFJO2lCQUN6RTthQUNGLENBQUMsQ0FBQztRQUVMLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxlQUFNLENBQUMsY0FBYyxDQUFDLEVBQUUsRUFBRSxZQUFZLENBQUMsQ0FBQztRQUM1RCxJQUFBLHNDQUFtQixFQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFDbEIsZ0VBQWdFLENBQ2pFLENBQUM7UUFDRixJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUNmLGdCQUFnQixFQUFFO2dCQUNoQixNQUFNLEVBQUU7b0JBQ04sV0FBVyxFQUFFO3dCQUNYLFdBQVcsRUFBRSx1QkFBdUI7d0JBQ3BDLFFBQVEsRUFBRSxJQUFJO3dCQUNkLElBQUksRUFBRSxRQUFRO3dCQUNkLE9BQU8sRUFBRSxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO3FCQUN6QztvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsV0FBVyxFQUNULGdFQUFnRTt3QkFDbEUsUUFBUSxFQUFFLEtBQUs7cUJBQ2hCO2lCQUNGO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFFSCxLQUFLLE1BQU0sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1lBQy9CLE1BQU0sS0FBSyxHQUErQjtnQkFDeEM7b0JBQ0UsSUFBSSxFQUFFLFVBQVU7b0JBQ2hCLElBQUksRUFBRSxxQkFBcUI7b0JBQzNCLElBQUksRUFBRTt3QkFDSixHQUFHLEVBQUUsa0RBQWtEO3FCQUN4RDtpQkFDRjtnQkFDRCxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUM7YUFDcEIsQ0FBQztZQUVGLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFVBQVUsR0FBRyxDQUFDLElBQUksRUFBRSxFQUFFO2dCQUN6QyxJQUFJLEVBQUUsV0FBVyxHQUFHLENBQUMsSUFBSSxHQUFHO2dCQUM1QixFQUFFLEVBQUUsdUNBQXVDLEdBQUcsQ0FBQyxJQUFJLEdBQUc7Z0JBQ3RELE1BQU0sRUFBRSxDQUFDLGVBQWUsQ0FBQztnQkFDekIsV0FBVyxFQUFFLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUztnQkFDeEQsV0FBVyxFQUFFO29CQUNYLE9BQU8sRUFBRSxlQUFNLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxLQUFLO29CQUM3QyxRQUFRLEVBQUUsZUFBTSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsSUFBSTtpQkFDOUM7Z0JBQ0QsS0FBSzthQUNOLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUEzRUQsb0RBMkVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBnaXRodWIgfSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHtcbiAgRW52aXJvbm1lbnRPcHRpb25zLFxuICBub3JtYWxpemVFbnZpcm9ubWVudHMsXG59IGZyb20gJy4vZW52aXJvbm1lbnQtb3B0aW9ucyc7XG5pbXBvcnQgeyBub3RlV29ya2Zsb3dQdXJwb3NlIH0gZnJvbSAnLi93b3JrZmxvdy1wdXJwb3NlJztcblxuLyoqXG4gKiBTaGFyZWQsIGVudmlyb25tZW50LXBhcmFtZXRlcml6ZWQgbWFudWFsLWRpc3BhdGNoIGRlcGxveSB3b3JrZmxvdy5cbiAqXG4gKiBUaGlzIGlzIHRoZSBvbmUgXCJ0cmlnZ2VyIGEgZGVwbG95XCIgY29udHJhY3QgdXNlZCBieSBib3RoIHRoZSBDREsgcHJvamVjdFxuICogdHlwZXMgKGRlcGxveWluZyB0aGVpciBvd24gc3RhY2tzKSBhbmQgdGhlIEphdmEgYENka0RlcGxveUhvb2tgIGNvbXBvbmVudFxuICogKGRpc3BhdGNoaW5nIGEgZGVwbG95IGluIGEgY29tcGFuaW9uIENESyByZXBvKSAtIHNlZSB0aGUgXCJPcGVuIFF1ZXN0aW9uc1wiXG4gKiBzZWN0aW9ucyBvZiB0aGUgdHdvIHNwZWNzLlxuICpcbiAqIEBpbnRlcm5hbCAtIG5vdCBwYXJ0IG9mIHRoZSBqc2lpLWV4cG9ydGVkIEFQSSAoaXRzIGBkZXBsb3lTdGVwc2AgY2FsbGJhY2tcbiAqIGlzbid0IHJlcHJlc2VudGFibGUgYWNyb3NzIGpzaWkgbGFuZ3VhZ2VzKTsgY29uc3VtZWQgZGlyZWN0bHkgYnkgb3RoZXJcbiAqIFR5cGVTY3JpcHQgc291cmNlIGluIHRoaXMgcGFja2FnZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNYW51YWxEZXBsb3lXb3JrZmxvd09wdGlvbnMge1xuICAvKiogRGVwbG95IHRhcmdldHMgZXhwb3NlZCBhcyB0aGUgYGVudmlyb25tZW50YCB3b3JrZmxvd19kaXNwYXRjaCBjaG9pY2UuICovXG4gIHJlYWRvbmx5IGVudmlyb25tZW50czogKHN0cmluZyB8IEVudmlyb25tZW50T3B0aW9ucylbXTtcblxuICAvKiogQGRlZmF1bHQgXCJkZXBsb3lcIiAqL1xuICByZWFkb25seSB3b3JrZmxvd05hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzdGVwcyB0aGF0IGFjdHVhbGx5IHBlcmZvcm0gdGhlIGRlcGxveSBmb3IgYSBnaXZlbiBlbnZpcm9ubWVudC5cbiAgICogRGVmYXVsdHMgdG8gYSBwbGFjZWhvbGRlciBgZWNob2Agc3RlcCAtIHByb2plY3QgdHlwZXMgYXJlIGV4cGVjdGVkIHRvXG4gICAqIG92ZXJyaWRlIHRoaXMgd2l0aCBzb21ldGhpbmcgcmVhbCAoZS5nLiBgY2RrIGRlcGxveWAsIG9yIGFcbiAgICogYHJlcG9zaXRvcnlfZGlzcGF0Y2hgIHRvIGEgY29tcGFuaW9uIGluZnJhIHJlcG8pLlxuICAgKi9cbiAgcmVhZG9ubHkgZGVwbG95U3RlcHM/OiAoXG4gICAgZW52OiBFbnZpcm9ubWVudE9wdGlvbnMsXG4gICkgPT4gZ2l0aHViLndvcmtmbG93cy5Kb2JTdGVwW107XG59XG5cbi8qKiBAaW50ZXJuYWwgKi9cbmV4cG9ydCBjbGFzcyBNYW51YWxEZXBsb3lXb3JrZmxvdyBleHRlbmRzIENvbXBvbmVudCB7XG4gIHB1YmxpYyByZWFkb25seSB3b3JrZmxvdzogZ2l0aHViLkdpdGh1YldvcmtmbG93O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBnaXRodWIuR2l0SHViUHJvamVjdCxcbiAgICBvcHRpb25zOiBNYW51YWxEZXBsb3lXb3JrZmxvd09wdGlvbnMsXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCAnTWFudWFsRGVwbG95V29ya2Zsb3cnKTtcblxuICAgIGNvbnN0IGVudmlyb25tZW50cyA9IG5vcm1hbGl6ZUVudmlyb25tZW50cyhvcHRpb25zLmVudmlyb25tZW50cyk7XG4gICAgY29uc3QgZ2ggPSBzY29wZS5naXRodWI7XG4gICAgaWYgKCFnaCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnTWFudWFsRGVwbG95V29ya2Zsb3cgcmVxdWlyZXMgR2l0SHViIGludGVncmF0aW9uIHRvIGJlIGVuYWJsZWQnLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCB3b3JrZmxvd05hbWUgPSBvcHRpb25zLndvcmtmbG93TmFtZSA/PyAnZGVwbG95JztcbiAgICBjb25zdCBkZXBsb3lTdGVwcyA9XG4gICAgICBvcHRpb25zLmRlcGxveVN0ZXBzID8/XG4gICAgICAoKGVudjogRW52aXJvbm1lbnRPcHRpb25zKTogZ2l0aHViLndvcmtmbG93cy5Kb2JTdGVwW10gPT4gW1xuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogYERlcGxveSAke2Vudi5uYW1lfWAsXG4gICAgICAgICAgcnVuOiBgZWNobyBcIlRPRE86IGltcGxlbWVudCBkZXBsb3kgc3RlcHMgZm9yIGVudmlyb25tZW50ICcke2Vudi5uYW1lfSdcImAsXG4gICAgICAgIH0sXG4gICAgICBdKTtcblxuICAgIHRoaXMud29ya2Zsb3cgPSBuZXcgZ2l0aHViLkdpdGh1YldvcmtmbG93KGdoLCB3b3JrZmxvd05hbWUpO1xuICAgIG5vdGVXb3JrZmxvd1B1cnBvc2UoXG4gICAgICB0aGlzLndvcmtmbG93LmZpbGUsXG4gICAgICAnTWFudWFsbHkgZGVwbG95IHRvIGEgY2hvc2VuIGVudmlyb25tZW50IHZpYSB3b3JrZmxvd19kaXNwYXRjaC4nLFxuICAgICk7XG4gICAgdGhpcy53b3JrZmxvdy5vbih7XG4gICAgICB3b3JrZmxvd0Rpc3BhdGNoOiB7XG4gICAgICAgIGlucHV0czoge1xuICAgICAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgICAgICBkZXNjcmlwdGlvbjogJ0Vudmlyb25tZW50IHRvIGRlcGxveScsXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICAgIHR5cGU6ICdjaG9pY2UnLFxuICAgICAgICAgICAgb3B0aW9uczogZW52aXJvbm1lbnRzLm1hcCgoZSkgPT4gZS5uYW1lKSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGdpdF9zaGE6IHtcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAgICAgICAnT3B0aW9uYWwgY29tbWl0IFNIQSB0byBkZXBsb3kgKGRlZmF1bHRzIHRvIHRoZSBkZWZhdWx0IGJyYW5jaCknLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgZm9yIChjb25zdCBlbnYgb2YgZW52aXJvbm1lbnRzKSB7XG4gICAgICBjb25zdCBzdGVwczogZ2l0aHViLndvcmtmbG93cy5Kb2JTdGVwW10gPSBbXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAnQ2hlY2tvdXQnLFxuICAgICAgICAgIHVzZXM6ICdhY3Rpb25zL2NoZWNrb3V0QHY0JyxcbiAgICAgICAgICB3aXRoOiB7XG4gICAgICAgICAgICByZWY6ICcke3sgZ2l0aHViLmV2ZW50LmlucHV0cy5naXRfc2hhIHx8IGdpdGh1Yi5zaGEgfX0nLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIC4uLmRlcGxveVN0ZXBzKGVudiksXG4gICAgICBdO1xuXG4gICAgICB0aGlzLndvcmtmbG93LmFkZEpvYihgZGVwbG95LSR7ZW52Lm5hbWV9YCwge1xuICAgICAgICBuYW1lOiBgRGVwbG95ICgke2Vudi5uYW1lfSlgLFxuICAgICAgICBpZjogYGdpdGh1Yi5ldmVudC5pbnB1dHMuZW52aXJvbm1lbnQgPT0gJyR7ZW52Lm5hbWV9J2AsXG4gICAgICAgIHJ1bnNPbjogWyd1YnVudHUtbGF0ZXN0J10sXG4gICAgICAgIGVudmlyb25tZW50OiBlbnYucmVxdWlyZXNBcHByb3ZhbCA/IGVudi5uYW1lIDogdW5kZWZpbmVkLFxuICAgICAgICBwZXJtaXNzaW9uczoge1xuICAgICAgICAgIGlkVG9rZW46IGdpdGh1Yi53b3JrZmxvd3MuSm9iUGVybWlzc2lvbi5XUklURSxcbiAgICAgICAgICBjb250ZW50czogZ2l0aHViLndvcmtmbG93cy5Kb2JQZXJtaXNzaW9uLlJFQUQsXG4gICAgICAgIH0sXG4gICAgICAgIHN0ZXBzLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG4iXX0=