@xpertss/projen-types 0.0.7 → 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 (32) hide show
  1. package/.jsii +28 -138
  2. package/API.md +3 -305
  3. package/README.md +16 -1
  4. package/lib/actions/action-build-workflow.js +1 -1
  5. package/lib/actions/action-dogfood-workflow.js +1 -1
  6. package/lib/actions/action-sonar-workflow.js +1 -1
  7. package/lib/actions/github-action-project.d.ts +4 -4
  8. package/lib/actions/github-action-project.js +5 -7
  9. package/lib/cdk/app-runtime-scaffold.js +1 -1
  10. package/lib/cdk/cdk-app-project.js +1 -1
  11. package/lib/cdk/cdk-infra-project.js +1 -1
  12. package/lib/cdk/cdk-typescript-base.js +2 -4
  13. package/lib/cdk/components/ecr-ecs-constructs.js +1 -1
  14. package/lib/cdk/components/edge-networking-constructs.js +1 -1
  15. package/lib/cdk/database-component.js +1 -1
  16. package/lib/common/projen-drift-check-workflow.js +1 -1
  17. package/lib/common/workflow-change-notice-workflow.js +1 -1
  18. package/lib/index.d.ts +0 -1
  19. package/lib/index.js +1 -2
  20. package/lib/java/components/cdk-deploy-hook.js +1 -1
  21. package/lib/java/components/code-index-workflow.js +1 -1
  22. package/lib/java/components/docker-publish.js +1 -1
  23. package/lib/java/components/flyway-migration.js +1 -1
  24. package/lib/java/components/github-packages-publish.js +1 -1
  25. package/lib/java/components/maven-central-publish.js +1 -1
  26. package/lib/java/java-app-project.js +1 -1
  27. package/lib/java/java-library-project.js +1 -1
  28. package/lib/java/java-maven-base.js +2 -4
  29. package/lib/java/java-service-project.js +1 -1
  30. package/package.json +1 -1
  31. package/lib/common/actions-allowlist-guard.d.ts +0 -37
  32. package/lib/common/actions-allowlist-guard.js +0 -72
@@ -3,7 +3,6 @@ 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");
@@ -23,7 +22,7 @@ const PROJEN_TYPES_VERSION = require('../../package.json').version;
23
22
  * `ManualDeployWorkflow` when `environments` is provided.
24
23
  */
25
24
  class CdkTypescriptProject extends projen_1.awscdk.AwsCdkTypeScriptApp {
26
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.CdkTypescriptProject", version: "0.0.7" };
25
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.CdkTypescriptProject", version: "0.0.8" };
27
26
  constructor(options) {
28
27
  super({
29
28
  // Spread first, overrides after: forwarding the caller's options is
@@ -77,7 +76,6 @@ class CdkTypescriptProject extends projen_1.awscdk.AwsCdkTypeScriptApp {
77
76
  gheTokenSecret: options.gheTokenSecret ?? constants_1.DEFAULT_GHE_TOKEN_SECRET,
78
77
  });
79
78
  new workflow_change_notice_workflow_1.WorkflowChangeNoticeWorkflow(this);
80
- new actions_allowlist_guard_1.ActionsAllowlistGuard(this);
81
79
  // `build` is projen's built-in NodeProject workflow (enabled via
82
80
  // `buildWorkflowOptions` above), not one this package constructs -
83
81
  // annotate it the same way as the others.
@@ -116,4 +114,4 @@ class CdkTypescriptProject extends projen_1.awscdk.AwsCdkTypeScriptApp {
116
114
  }
117
115
  }
118
116
  exports.CdkTypescriptProject = CdkTypescriptProject;
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLXR5cGVzY3JpcHQtYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jZGsvY2RrLXR5cGVzY3JpcHQtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsbUNBQW9EO0FBRXBELCtFQUEwRTtBQUMxRSxtREFBK0Q7QUFFL0QsaUVBQTBFO0FBQzFFLDZFQUF3RTtBQUN4RSx1RkFBaUY7QUFDakYsK0ZBQXlGO0FBQ3pGLGlFQUFpRTtBQUVqRSx3RUFBd0U7QUFDeEUsNkVBQTZFO0FBQzdFLG1DQUFtQztBQUNuQyxpRUFBaUU7QUFDakUsTUFBTSxvQkFBb0IsR0FBVyxPQUFPLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxPQUFPLENBQUM7QUFNM0U7Ozs7OztHQU1HO0FBQ0gsTUFBYSxvQkFBcUIsU0FBUSxlQUFNLENBQUMsbUJBQW1COztJQUNsRSxZQUFZLE9BQW9DO1FBQzlDLEtBQUssQ0FBQztZQUNKLG9FQUFvRTtZQUNwRSxxRUFBcUU7WUFDckUsaUVBQWlFO1lBQ2pFLHdEQUF3RDtZQUN4RCxxRUFBcUU7WUFDckUsNkRBQTZEO1lBQzdELEdBQUcsT0FBTztZQUNWLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSTtZQUNsQixVQUFVLEVBQUUsT0FBTyxDQUFDLFVBQVUsSUFBSSxTQUFTO1lBQzNDLG9CQUFvQixFQUFFLE1BQU07WUFDNUIsVUFBVSxFQUFFLElBQUk7WUFDaEIsc0VBQXNFO1lBQ3RFLG9FQUFvRTtZQUNwRSx1Q0FBdUM7WUFDdkMsVUFBVSxFQUFFLElBQUk7WUFDaEIsbUVBQW1FO1lBQ25FLHNFQUFzRTtZQUN0RSxvRUFBb0U7WUFDcEUsZUFBZTtZQUNmLGlCQUFpQixFQUFFLFFBQVE7WUFDM0Isa0VBQWtFO1lBQ2xFLHFFQUFxRTtZQUNyRSw4REFBOEQ7WUFDOUQsc0VBQXNFO1lBQ3RFLGNBQWMsRUFBRSxRQUFRO1lBQ3hCLHdFQUF3RTtZQUN4RSxrRUFBa0U7WUFDbEUsOERBQThEO1lBQzlE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O0FBMUdILG9EQTJHQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGF3c2NkaywgZ2l0aHViLCBqYXZhc2NyaXB0IH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IENvbW1vbkNka09wdGlvbnMgfSBmcm9tICcuL29wdGlvbnMnO1xuaW1wb3J0IHsgQWN0aW9uc0FsbG93bGlzdEd1YXJkIH0gZnJvbSAnLi4vY29tbW9uL2FjdGlvbnMtYWxsb3dsaXN0LWd1YXJkJztcbmltcG9ydCB7IERFRkFVTFRfR0hFX1RPS0VOX1NFQ1JFVCB9IGZyb20gJy4uL2NvbW1vbi9jb25zdGFudHMnO1xuaW1wb3J0IHsgRW52aXJvbm1lbnRPcHRpb25zIH0gZnJvbSAnLi4vY29tbW9uL2Vudmlyb25tZW50LW9wdGlvbnMnO1xuaW1wb3J0IHsgYXBwbHlJbnRlcm5hbEFjdGlvbk92ZXJyaWRlcyB9IGZyb20gJy4uL2NvbW1vbi9pbnRlcm5hbC1hY3Rpb25zJztcbmltcG9ydCB7IE1hbnVhbERlcGxveVdvcmtmbG93IH0gZnJvbSAnLi4vY29tbW9uL21hbnVhbC1kZXBsb3ktd29ya2Zsb3cnO1xuaW1wb3J0IHsgUHJvamVuRHJpZnRDaGVja1dvcmtmbG93IH0gZnJvbSAnLi4vY29tbW9uL3Byb2plbi1kcmlmdC1jaGVjay13b3JrZmxvdyc7XG5pbXBvcnQgeyBXb3JrZmxvd0NoYW5nZU5vdGljZVdvcmtmbG93IH0gZnJvbSAnLi4vY29tbW9uL3dvcmtmbG93LWNoYW5nZS1ub3RpY2Utd29ya2Zsb3cnO1xuaW1wb3J0IHsgbm90ZVdvcmtmbG93UHVycG9zZSB9IGZyb20gJy4uL2NvbW1vbi93b3JrZmxvdy1wdXJwb3NlJztcblxuLy8gUmVzb2x2ZWQgdGhyb3VnaCBOb2RlJ3Mgbm9ybWFsIG1vZHVsZSByZXNvbHV0aW9uLCBzbyBpbiBhICpwdWJsaXNoZWQqXG4vLyBwYWNrYWdlIHRoaXMgaXMgdGhlIHZlcnNpb24gb2YgdGhpcyBwYWNrYWdlIHRoYXQgc2NhZmZvbGRlZCB0aGUgcmVwbyAoc2FtZVxuLy8gdHJpY2sgYXMgYEdpdEh1YkFjdGlvblByb2plY3RgKS5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tcmVxdWlyZS1pbXBvcnRzXG5jb25zdCBQUk9KRU5fVFlQRVNfVkVSU0lPTjogc3RyaW5nID0gcmVxdWlyZSgnLi4vLi4vcGFja2FnZS5qc29uJykudmVyc2lvbjtcblxuZXhwb3J0IGludGVyZmFjZSBDZGtUeXBlc2NyaXB0UHJvamVjdE9wdGlvbnMgZXh0ZW5kcyBDb21tb25DZGtPcHRpb25zIHtcbiAgcmVhZG9ubHkgZW52aXJvbm1lbnRzPzogKHN0cmluZyB8IEVudmlyb25tZW50T3B0aW9ucylbXTtcbn1cblxuLyoqXG4gKiBTaGFyZWQgQ0RLICsgVHlwZVNjcmlwdCBmb3VuZGF0aW9uIGZvciBgQ2RrSW5mcmFQcm9qZWN0YCBhbmRcbiAqIGBDZGtBcHBQcm9qZWN0YDogc3RhbmRhcmQgYXBwIHN0cnVjdHVyZSAodmlhIGBBd3NDZGtUeXBlU2NyaXB0QXBwYCxcbiAqIGBjZGsuanNvbmAsIGBjZGsgc3ludGhgL2BjZGsgZGlmZmAgdGFza3MpLCBhIFBSLWNoZWNrIGJ1aWxkIHRoYXQgaGFyZC1mYWlsc1xuICogb24gcHJvamVuIGRyaWZ0IChyYXRoZXIgdGhhbiBzZWxmLW11dGF0aW5nKSwgYW5kIGFuIG9wdGlvbmFsXG4gKiBgTWFudWFsRGVwbG95V29ya2Zsb3dgIHdoZW4gYGVudmlyb25tZW50c2AgaXMgcHJvdmlkZWQuXG4gKi9cbmV4cG9ydCBjbGFzcyBDZGtUeXBlc2NyaXB0UHJvamVjdCBleHRlbmRzIGF3c2Nkay5Bd3NDZGtUeXBlU2NyaXB0QXBwIHtcbiAgY29uc3RydWN0b3Iob3B0aW9uczogQ2RrVHlwZXNjcmlwdFByb2plY3RPcHRpb25zKSB7XG4gICAgc3VwZXIoe1xuICAgICAgLy8gU3ByZWFkIGZpcnN0LCBvdmVycmlkZXMgYWZ0ZXI6IGZvcndhcmRpbmcgdGhlIGNhbGxlcidzIG9wdGlvbnMgaXNcbiAgICAgIC8vIHdoYXQgbGV0cyBgcHJvamVuIG5ldyAtLWZyb20gQHhwZXJ0c3MvcHJvamVuLXR5cGVzIGNka19pbmZyYWAgd29ya1xuICAgICAgLy8gLSBwcm9qZW4gc211Z2dsZXMgaXRzIGJvb3RzdHJhcCBtYXJrZXIgKGBfX25ld19fYCkgdGhyb3VnaCB0aGVcbiAgICAgIC8vIG9wdGlvbnMgb2JqZWN0LCBhbmQgaXQgaXMgdGhhdCBtYXJrZXIgd2hpY2ggbWFrZXMgdGhlXG4gICAgICAvLyBgUHJvamVucmNGaWxlYCBjb21wb25lbnQgd3JpdGUgdGhlIGluaXRpYWwgYC5wcm9qZW5yYy50c2AuIERyb3AgaXRcbiAgICAgIC8vIGFuZCBgcHJvamVuIG5ld2Agc2NhZmZvbGRzIGEgcmVwbyB3aXRoIG5vIHByb2plbnJjIGF0IGFsbC5cbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBuYW1lOiBvcHRpb25zLm5hbWUsXG4gICAgICBjZGtWZXJzaW9uOiBvcHRpb25zLmNka1ZlcnNpb24gPz8gJzIuMTg5LjEnLFxuICAgICAgZGVmYXVsdFJlbGVhc2VCcmFuY2g6ICdtYWluJyxcbiAgICAgIHNhbXBsZUNvZGU6IHRydWUsXG4gICAgICAvLyBHZW5lcmF0ZWQgcmVwb3MgYXJlIGNvbmZpZ3VyZWQgdGhyb3VnaCBgLnByb2plbnJjLnRzYDsgd2l0aG91dCB0aGlzXG4gICAgICAvLyBgVHlwZVNjcmlwdFByb2plY3RgIGRlZmF1bHRzIHRvIGBwcm9qZW5yY1RzOiBmYWxzZWAgYW5kIHdpcmVzIHRoZVxuICAgICAgLy8gZGVmYXVsdCB0YXNrIHRvIGBub2RlIC5wcm9qZW5yYy5qc2AuXG4gICAgICBwcm9qZW5yY1RzOiB0cnVlLFxuICAgICAgLy8gUGlubmVkLCBub3QgYFR5cGVTY3JpcHRQcm9qZWN0YCdzIGRlZmF1bHQgYCpgOiBgdHlwZXNjcmlwdEA3YCBub1xuICAgICAgLy8gbG9uZ2VyIGV4cG9zZXMgYHRzLnN5c2AgZnJvbSBpdHMgSlMgQVBJLCB3aGljaCBicmVha3MgdGhlIGB0cy1ub2RlYFxuICAgICAgLy8gdGhhdCBgcHJvamVucmNUc2Agd2lyZXMgdGhlIGRlZmF1bHQgdGFzayB0byAoQUQtMDAxIHdhbnRzIHRoZSBwaW5cbiAgICAgIC8vIHJlZ2FyZGxlc3MpLlxuICAgICAgdHlwZXNjcmlwdFZlcnNpb246ICd+Ni4wLjMnLFxuICAgICAgLy8gRGVjbGFyZWQgZmxvb3IgZm9yIHRoZSBnZW5lcmF0ZWQgcmVwby4gQWxzbyByZXF1aXJlZCBieSB0aGUgcGluXG4gICAgICAvLyBhYm92ZTogd2l0aCBubyBgbWluTm9kZVZlcnNpb25gLCBwcm9qZW4gZGVyaXZlcyBgQHR5cGVzL25vZGVgIGZyb21cbiAgICAgIC8vIHRoZSBUeXBlU2NyaXB0IHZlcnNpb24gaW5zdGVhZCwgYW5kIHRoZSBgQHR5cGVzL25vZGVAdHM2LjBgXG4gICAgICAvLyBkaXN0LXRhZyBpdCBhc2tzIGZvciBkb2VzIG5vdCBleGlzdCAtIGBucG0gaW5zdGFsbGAgZmFpbHMgb3V0cmlnaHQuXG4gICAgICBtaW5Ob2RlVmVyc2lvbjogJzIyLjAuMCcsXG4gICAgICAvLyBXaXRob3V0IHRoaXMgcHJvamVuIGRlZmF1bHRzIHRvIHlhcm4gY2xhc3NpYyBhbmQgdGhlIGdlbmVyYXRlZCByZXBvJ3NcbiAgICAgIC8vIG93biBpbnN0YWxsIHN0ZXAgcnVucyBgeWFybiBpbnN0YWxsIC0tY2hlY2stZmlsZXNgLCB3aGlsZSBldmVyeVxuICAgICAgLy8gd29ya2Zsb3cgdGhpcyBwYWNrYWdlIGdlbmVyYXRlcyAtIGFuZCB0aGUgUkVBRE1FIC0gdXNlIG5wbS5cbiAgICAgIHBhY2thZ2VNYW5hZ2VyOiBqYXZhc2NyaXB0Lk5vZGVQYWNrYWdlTWFuYWdlci5OUE0sXG4gICAgICAvLyBGYWlsIFBSIGNoZWNrcyBvbiBkcmlmdCBpbnN0ZWFkIG9mIGF1dG8tY29tbWl0dGluZyBwcm9qZW4ncyBvdXRwdXQuXG4gICAgICBidWlsZFdvcmtmbG93T3B0aW9uczogeyBtdXRhYmxlQnVpbGQ6IGZhbHNlIH0sXG4gICAgICBwcm9qZW5DcmVkZW50aWFsczogZ2l0aHViLkdpdGh1YkNyZWRlbnRpYWxzLmZyb21QZXJzb25hbEFjY2Vzc1Rva2VuKHtcbiAgICAgICAgc2VjcmV0OiBvcHRpb25zLmdoZVRva2VuU2VjcmV0ID8/IERFRkFVTFRfR0hFX1RPS0VOX1NFQ1JFVCxcbiAgICAgIH0pLFxuICAgIH0pO1xuXG4gICAgLy8gYC5wcm9qZW5yYy50c2AgaW1wb3J0cyB0aGlzIHBhY2thZ2UsIHNvIHRoZSBnZW5lcmF0ZWQgcmVwbyBoYXMgdG9cbiAgICAvLyBkZWNsYXJlIGl0OiBwcm9qZW4gcHJ1bmVzIGFueSBkZXBlbmRlbmN5IG9mIGEgYE5vZGVQcm9qZWN0YCB0aGF0IHRoZVxuICAgIC8vIHByb2plbnJjIGRvZXMgbm90IGFzayBmb3IgKFwiUmVtb3ZpbmcgdW5tYW5hZ2VkIGRlcGVuZGVuY2llcy4uLlwiKSwgd2hpY2hcbiAgICAvLyB3b3VsZCBsZWF2ZSBhIHJlcG8gd2hvc2UgYG5weCBwcm9qZW5gIGNhbm5vdCByZXNvbHZlIGl0cyBvd24gcHJvamVjdFxuICAgIC8vIHR5cGUgYWZ0ZXIgYSBjbGVhbiBgbnBtIGNpYC5cbiAgICB0aGlzLmFkZERldkRlcHMoYEB4cGVydHNzL3Byb2plbi10eXBlc0Ake1BST0pFTl9UWVBFU19WRVJTSU9OfWApO1xuICAgIHRoaXMuYWRkRGV2RGVwcygnZXNidWlsZCcpO1xuXG4gICAgY29uc3QgZ2ggPSB0aGlzLmdpdGh1YjtcbiAgICBpZiAoIWdoKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdDZGtUeXBlc2NyaXB0UHJvamVjdCByZXF1aXJlcyBHaXRIdWIgaW50ZWdyYXRpb24gdG8gYmUgZW5hYmxlZCcsXG4gICAgICApO1xuICAgIH1cbiAgICBhcHBseUludGVybmFsQWN0aW9uT3ZlcnJpZGVzKGdoKTtcblxuICAgIG5ldyBQcm9qZW5EcmlmdENoZWNrV29ya2Zsb3codGhpcywge1xuICAgICAgZ2hlVG9rZW5TZWNyZXQ6IG9wdGlvbnMuZ2hlVG9rZW5TZWNyZXQgPz8gREVGQVVMVF9HSEVfVE9LRU5fU0VDUkVULFxuICAgIH0pO1xuICAgIG5ldyBXb3JrZmxvd0NoYW5nZU5vdGljZVdvcmtmbG93KHRoaXMpO1xuICAgIG5ldyBBY3Rpb25zQWxsb3dsaXN0R3VhcmQodGhpcyk7XG5cbiAgICAvLyBgYnVpbGRgIGlzIHByb2plbidzIGJ1aWx0LWluIE5vZGVQcm9qZWN0IHdvcmtmbG93IChlbmFibGVkIHZpYVxuICAgIC8vIGBidWlsZFdvcmtmbG93T3B0aW9uc2AgYWJvdmUpLCBub3Qgb25lIHRoaXMgcGFja2FnZSBjb25zdHJ1Y3RzIC1cbiAgICAvLyBhbm5vdGF0ZSBpdCB0aGUgc2FtZSB3YXkgYXMgdGhlIG90aGVycy5cbiAgICBpZiAodGhpcy5idWlsZFdvcmtmbG93KSB7XG4gICAgICBub3RlV29ya2Zsb3dQdXJwb3NlKFxuICAgICAgICB0aGlzLmJ1aWxkV29ya2Zsb3cud29ya2Zsb3cuZmlsZSxcbiAgICAgICAgJ1B1bGwtcmVxdWVzdCBidWlsZCBnYXRlOiBpbnN0YWxsIGRlcGVuZGVuY2llcywgc3ludGhlc2l6ZSB0aGUgQ0RLIGFwcCwgYW5kIHJ1biB1bml0IHRlc3RzLicsXG4gICAgICApO1xuICAgIH1cbiAgICAvLyBgZGVwc1VwZ3JhZGVgIGlzIHByb2plbidzIGJ1aWx0LWluIG5pZ2h0bHkgdXBncmFkZSB3b3JrZmxvdyAtIGFubm90YXRlXG4gICAgLy8gaXQgdGhlIHNhbWUgd2F5IChvbmUgd29ya2Zsb3cgcGVyIHJlbGVhc2UgYnJhbmNoKS5cbiAgICBpZiAodGhpcy51cGdyYWRlV29ya2Zsb3cpIHtcbiAgICAgIGZvciAoY29uc3Qgd29ya2Zsb3cgb2YgdGhpcy51cGdyYWRlV29ya2Zsb3cud29ya2Zsb3dzKSB7XG4gICAgICAgIG5vdGVXb3JrZmxvd1B1cnBvc2UoXG4gICAgICAgICAgd29ya2Zsb3cuZmlsZSxcbiAgICAgICAgICAnT3BlbiBhIG5pZ2h0bHkgZGVwZW5kZW5jeS11cGdyYWRlIHB1bGwgcmVxdWVzdC4nLFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgICAvLyBgcHVsbC1yZXF1ZXN0LWxpbnRgIGlzIHByb2plbidzIGJ1aWx0LWluIFBSLXRpdGxlIHZhbGlkYXRpb24gd29ya2Zsb3cgLVxuICAgIC8vIHJlYWNoIGl0cyBmaWxlIGJ5IHBhdGggbGlrZSB0aGUgcmVsZWFzZSB3b3JrZmxvdy5cbiAgICBub3RlV29ya2Zsb3dQdXJwb3NlKFxuICAgICAgdGhpcy50cnlGaW5kRmlsZSgnLmdpdGh1Yi93b3JrZmxvd3MvcHVsbC1yZXF1ZXN0LWxpbnQueW1sJyksXG4gICAgICAnUmVqZWN0IHB1bGwgcmVxdWVzdHMgd2hvc2UgdGl0bGVzIGRvIG5vdCBmb2xsb3cgdGhlIGNvbnZlbnRpb25hbC1jb21taXQgKHNlbWFudGljLXJlbGVhc2UpIGZvcm1hdC4nLFxuICAgICk7XG5cbiAgICBpZiAob3B0aW9ucy5lbnZpcm9ubWVudHMgJiYgb3B0aW9ucy5lbnZpcm9ubWVudHMubGVuZ3RoID4gMCkge1xuICAgICAgbmV3IE1hbnVhbERlcGxveVdvcmtmbG93KHRoaXMsIHtcbiAgICAgICAgZW52aXJvbm1lbnRzOiBvcHRpb25zLmVudmlyb25tZW50cyxcbiAgICAgICAgZGVwbG95U3RlcHM6IChlbnYpID0+IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnSW5zdGFsbCcsXG4gICAgICAgICAgICBydW46ICducG0gY2knLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogYGNkayBkZXBsb3kgKCR7ZW52Lm5hbWV9KWAsXG4gICAgICAgICAgICBydW46IGBucHggY2RrIGRlcGxveSAtLWFsbCAtLXJlcXVpcmUtYXBwcm92YWwgbmV2ZXIgLS1jb250ZXh0IGVudmlyb25tZW50PSR7ZW52Lm5hbWV9YCxcbiAgICAgICAgICAgIGVudjoge1xuICAgICAgICAgICAgICAuLi4oZW52LmFjY291bnRJZCA/IHsgQ0RLX0RFRkFVTFRfQUNDT1VOVDogZW52LmFjY291bnRJZCB9IDoge30pLFxuICAgICAgICAgICAgICAuLi4oZW52LnJlZ2lvbiA/IHsgQ0RLX0RFRkFVTFRfUkVHSU9OOiBlbnYucmVnaW9uIH0gOiB7fSksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLXR5cGVzY3JpcHQtYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jZGsvY2RrLXR5cGVzY3JpcHQtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsbUNBQW9EO0FBRXBELG1EQUErRDtBQUUvRCxpRUFBMEU7QUFDMUUsNkVBQXdFO0FBQ3hFLHVGQUFpRjtBQUNqRiwrRkFBeUY7QUFDekYsaUVBQWlFO0FBRWpFLHdFQUF3RTtBQUN4RSw2RUFBNkU7QUFDN0UsbUNBQW1DO0FBQ25DLGlFQUFpRTtBQUNqRSxNQUFNLG9CQUFvQixHQUFXLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLE9BQU8sQ0FBQztBQU0zRTs7Ozs7O0dBTUc7QUFDSCxNQUFhLG9CQUFxQixTQUFRLGVBQU0sQ0FBQyxtQkFBbUI7O0lBQ2xFLFlBQVksT0FBb0M7UUFDOUMsS0FBSyxDQUFDO1lBQ0osb0VBQW9FO1lBQ3BFLHFFQUFxRTtZQUNyRSxpRUFBaUU7WUFDakUsd0RBQXdEO1lBQ3hELHFFQUFxRTtZQUNyRSw2REFBNkQ7WUFDN0QsR0FBRyxPQUFPO1lBQ1YsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ2xCLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVSxJQUFJLFNBQVM7WUFDM0Msb0JBQW9CLEVBQUUsTUFBTTtZQUM1QixVQUFVLEVBQUUsSUFBSTtZQUNoQixzRUFBc0U7WUFDdEUsb0VBQW9FO1lBQ3BFLHVDQUF1QztZQUN2QyxVQUFVLEVBQUUsSUFBSTtZQUNoQixtRUFBbUU7WUFDbkUsc0VBQXNFO1lBQ3RFLG9FQUFvRTtZQUNwRSxlQUFlO1lBQ2YsaUJBQWlCLEVBQUUsUUFBUTtZQUMzQixrRUFBa0U7WUFDbEUscUVBQXFFO1lBQ3JFLDhEQUE4RDtZQUM5RCxzRUFBc0U7WUFDdEUsY0FBYyxFQUFFLFFBQVE7WUFDeEIsd0VBQXdFO1lBQ3hFLGtFQUFrRTtZQUNsRSw4REFBOEQ7WUFDOUQsY0FBYyxFQUFFLG1CQUFVLENBQUMsa0JBQWtCLENBQUMsR0FBRztZQUNqRCxzRUFBc0U7WUFDdEUsb0JBQW9CLEVBQUUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFO1lBQzdDLGlCQUFpQixFQUFFLGVBQU0sQ0FBQyxpQkFBaUIsQ0FBQyx1QkFBdUIsQ0FBQztnQkFDbEUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxjQUFjLElBQUksb0NBQXdCO2FBQzNELENBQUM7U0FDSCxDQUFDLENBQUM7UUFFSCxvRUFBb0U7UUFDcEUsdUVBQXVFO1FBQ3ZFLDBFQUEwRTtRQUMxRSx1RUFBdUU7UUFDdkUsK0JBQStCO1FBQy9CLElBQUksQ0FBQyxVQUFVLENBQUMseUJBQXlCLG9CQUFvQixFQUFFLENBQUMsQ0FBQztRQUNqRSxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRTNCLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDdkIsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ1IsTUFBTSxJQUFJLEtBQUssQ0FDYixnRUFBZ0UsQ0FDakUsQ0FBQztRQUNKLENBQUM7UUFDRCxJQUFBLCtDQUE0QixFQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRWpDLElBQUksc0RBQXdCLENBQUMsSUFBSSxFQUFFO1lBQ2pDLGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYyxJQUFJLG9DQUF3QjtTQUNuRSxDQUFDLENBQUM7UUFDSCxJQUFJLDhEQUE0QixDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXZDLGlFQUFpRTtRQUNqRSxtRUFBbUU7UUFDbkUsMENBQTBDO1FBQzFDLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3ZCLElBQUEsc0NBQW1CLEVBQ2pCLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLElBQUksRUFDaEMsNEZBQTRGLENBQzdGLENBQUM7UUFDSixDQUFDO1FBQ0QseUVBQXlFO1FBQ3pFLHFEQUFxRDtRQUNyRCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN6QixLQUFLLE1BQU0sUUFBUSxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ3RELElBQUEsc0NBQW1CLEVBQ2pCLFFBQVEsQ0FBQyxJQUFJLEVBQ2IsaURBQWlELENBQ2xELENBQUM7WUFDSixDQUFDO1FBQ0gsQ0FBQztRQUNELDBFQUEwRTtRQUMxRSxvREFBb0Q7UUFDcEQsSUFBQSxzQ0FBbUIsRUFDakIsSUFBSSxDQUFDLFdBQVcsQ0FBQyx5Q0FBeUMsQ0FBQyxFQUMzRCxvR0FBb0csQ0FDckcsQ0FBQztRQUVGLElBQUksT0FBTyxDQUFDLFlBQVksSUFBSSxPQUFPLENBQUMsWUFBWSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUM1RCxJQUFJLDZDQUFvQixDQUFDLElBQUksRUFBRTtnQkFDN0IsWUFBWSxFQUFFLE9BQU8sQ0FBQyxZQUFZO2dCQUNsQyxXQUFXLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDO29CQUNwQjt3QkFDRSxJQUFJLEVBQUUsU0FBUzt3QkFDZixHQUFHLEVBQUUsUUFBUTtxQkFDZDtvQkFDRDt3QkFDRSxJQUFJLEVBQUUsZUFBZSxHQUFHLENBQUMsSUFBSSxHQUFHO3dCQUNoQyxHQUFHLEVBQUUsdUVBQXVFLEdBQUcsQ0FBQyxJQUFJLEVBQUU7d0JBQ3RGLEdBQUcsRUFBRTs0QkFDSCxHQUFHLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxtQkFBbUIsRUFBRSxHQUFHLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQzs0QkFDaEUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsa0JBQWtCLEVBQUUsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7eUJBQzFEO3FCQUNGO2lCQUNGO2FBQ0YsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7O0FBekdILG9EQTBHQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGF3c2NkaywgZ2l0aHViLCBqYXZhc2NyaXB0IH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IENvbW1vbkNka09wdGlvbnMgfSBmcm9tICcuL29wdGlvbnMnO1xuaW1wb3J0IHsgREVGQVVMVF9HSEVfVE9LRU5fU0VDUkVUIH0gZnJvbSAnLi4vY29tbW9uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBFbnZpcm9ubWVudE9wdGlvbnMgfSBmcm9tICcuLi9jb21tb24vZW52aXJvbm1lbnQtb3B0aW9ucyc7XG5pbXBvcnQgeyBhcHBseUludGVybmFsQWN0aW9uT3ZlcnJpZGVzIH0gZnJvbSAnLi4vY29tbW9uL2ludGVybmFsLWFjdGlvbnMnO1xuaW1wb3J0IHsgTWFudWFsRGVwbG95V29ya2Zsb3cgfSBmcm9tICcuLi9jb21tb24vbWFudWFsLWRlcGxveS13b3JrZmxvdyc7XG5pbXBvcnQgeyBQcm9qZW5EcmlmdENoZWNrV29ya2Zsb3cgfSBmcm9tICcuLi9jb21tb24vcHJvamVuLWRyaWZ0LWNoZWNrLXdvcmtmbG93JztcbmltcG9ydCB7IFdvcmtmbG93Q2hhbmdlTm90aWNlV29ya2Zsb3cgfSBmcm9tICcuLi9jb21tb24vd29ya2Zsb3ctY2hhbmdlLW5vdGljZS13b3JrZmxvdyc7XG5pbXBvcnQgeyBub3RlV29ya2Zsb3dQdXJwb3NlIH0gZnJvbSAnLi4vY29tbW9uL3dvcmtmbG93LXB1cnBvc2UnO1xuXG4vLyBSZXNvbHZlZCB0aHJvdWdoIE5vZGUncyBub3JtYWwgbW9kdWxlIHJlc29sdXRpb24sIHNvIGluIGEgKnB1Ymxpc2hlZCpcbi8vIHBhY2thZ2UgdGhpcyBpcyB0aGUgdmVyc2lvbiBvZiB0aGlzIHBhY2thZ2UgdGhhdCBzY2FmZm9sZGVkIHRoZSByZXBvIChzYW1lXG4vLyB0cmljayBhcyBgR2l0SHViQWN0aW9uUHJvamVjdGApLlxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1yZXF1aXJlLWltcG9ydHNcbmNvbnN0IFBST0pFTl9UWVBFU19WRVJTSU9OOiBzdHJpbmcgPSByZXF1aXJlKCcuLi8uLi9wYWNrYWdlLmpzb24nKS52ZXJzaW9uO1xuXG5leHBvcnQgaW50ZXJmYWNlIENka1R5cGVzY3JpcHRQcm9qZWN0T3B0aW9ucyBleHRlbmRzIENvbW1vbkNka09wdGlvbnMge1xuICByZWFkb25seSBlbnZpcm9ubWVudHM/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.7" };
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.7" };
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.7" };
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';
@@ -5,7 +5,7 @@ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
5
5
  const projen_1 = require("projen");
6
6
  const workflow_purpose_1 = require("./workflow-purpose");
7
7
  class ProjenDriftCheckWorkflow extends projen_1.Component {
8
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.ProjenDriftCheckWorkflow", version: "0.0.7" };
8
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.ProjenDriftCheckWorkflow", version: "0.0.8" };
9
9
  workflow;
10
10
  constructor(scope, options = {}) {
11
11
  super(scope, 'ProjenDriftCheckWorkflow');
@@ -5,7 +5,7 @@ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
5
5
  const projen_1 = require("projen");
6
6
  const workflow_purpose_1 = require("./workflow-purpose");
7
7
  class WorkflowChangeNoticeWorkflow extends projen_1.Component {
8
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.WorkflowChangeNoticeWorkflow", version: "0.0.7" };
8
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.WorkflowChangeNoticeWorkflow", version: "0.0.8" };
9
9
  workflow;
10
10
  constructor(scope, options = {}) {
11
11
  super(scope, 'WorkflowChangeNoticeWorkflow');
package/lib/index.d.ts CHANGED
@@ -2,7 +2,6 @@ export * from './common/environment-options';
2
2
  export * from './common/projen-drift-check-workflow';
3
3
  export * from './common/workflow-change-notice-workflow';
4
4
  export * from './common/internal-actions';
5
- export * from './common/actions-allowlist-guard';
6
5
  export * from './cdk/options';
7
6
  export * from './cdk/cdk-typescript-base';
8
7
  export * from './cdk/cdk-infra-project';
package/lib/index.js CHANGED
@@ -18,7 +18,6 @@ __exportStar(require("./common/environment-options"), exports);
18
18
  __exportStar(require("./common/projen-drift-check-workflow"), exports);
19
19
  __exportStar(require("./common/workflow-change-notice-workflow"), exports);
20
20
  __exportStar(require("./common/internal-actions"), exports);
21
- __exportStar(require("./common/actions-allowlist-guard"), exports);
22
21
  __exportStar(require("./cdk/options"), exports);
23
22
  __exportStar(require("./cdk/cdk-typescript-base"), exports);
24
23
  __exportStar(require("./cdk/cdk-infra-project"), exports);
@@ -42,4 +41,4 @@ __exportStar(require("./actions/github-action-project"), exports);
42
41
  __exportStar(require("./actions/action-build-workflow"), exports);
43
42
  __exportStar(require("./actions/action-dogfood-workflow"), exports);
44
43
  __exportStar(require("./actions/action-sonar-workflow"), exports);
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtEQUE2QztBQUM3Qyx1RUFBcUQ7QUFDckQsMkVBQXlEO0FBQ3pELDREQUEwQztBQUMxQyxtRUFBaUQ7QUFFakQsZ0RBQThCO0FBQzlCLDREQUEwQztBQUMxQywwREFBd0M7QUFDeEMsd0RBQXNDO0FBQ3RDLHNFQUFvRDtBQUNwRCw4RUFBNEQ7QUFDNUQsNkRBQTJDO0FBQzNDLDJEQUF5QztBQUV6QyxpREFBK0I7QUFDL0IseURBQXVDO0FBQ3ZDLDhEQUE0QztBQUM1Qyw4REFBNEM7QUFDNUMsMERBQXdDO0FBQ3hDLDBFQUF3RDtBQUN4RCxtRUFBaUQ7QUFDakQsNEVBQTBEO0FBQzFELHFFQUFtRDtBQUNuRCxvRUFBa0Q7QUFDbEQsd0VBQXNEO0FBRXRELGtFQUFnRDtBQUNoRCxrRUFBZ0Q7QUFDaEQsb0VBQWtEO0FBQ2xELGtFQUFnRCIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29tbW9uL2Vudmlyb25tZW50LW9wdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21tb24vcHJvamVuLWRyaWZ0LWNoZWNrLXdvcmtmbG93JztcbmV4cG9ydCAqIGZyb20gJy4vY29tbW9uL3dvcmtmbG93LWNoYW5nZS1ub3RpY2Utd29ya2Zsb3cnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21tb24vaW50ZXJuYWwtYWN0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbW1vbi9hY3Rpb25zLWFsbG93bGlzdC1ndWFyZCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vY2RrL29wdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9jZGsvY2RrLXR5cGVzY3JpcHQtYmFzZSc7XG5leHBvcnQgKiBmcm9tICcuL2Nkay9jZGstaW5mcmEtcHJvamVjdCc7XG5leHBvcnQgKiBmcm9tICcuL2Nkay9jZGstYXBwLXByb2plY3QnO1xuZXhwb3J0ICogZnJvbSAnLi9jZGsvY29tcG9uZW50cy9lY3ItZWNzLWNvbnN0cnVjdHMnO1xuZXhwb3J0ICogZnJvbSAnLi9jZGsvY29tcG9uZW50cy9lZGdlLW5ldHdvcmtpbmctY29uc3RydWN0cyc7XG5leHBvcnQgKiBmcm9tICcuL2Nkay9hcHAtcnVudGltZS1zY2FmZm9sZCc7XG5leHBvcnQgKiBmcm9tICcuL2Nkay9kYXRhYmFzZS1jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2phdmEvb3B0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL2phdmEvamF2YS1tYXZlbi1iYXNlJztcbmV4cG9ydCAqIGZyb20gJy4vamF2YS9qYXZhLWxpYnJhcnktcHJvamVjdCc7XG5leHBvcnQgKiBmcm9tICcuL2phdmEvamF2YS1zZXJ2aWNlLXByb2plY3QnO1xuZXhwb3J0ICogZnJvbSAnLi9qYXZhL2phdmEtYXBwLXByb2plY3QnO1xuZXhwb3J0ICogZnJvbSAnLi9qYXZhL2NvbXBvbmVudHMvbWF2ZW4tY2VudHJhbC1wdWJsaXNoJztcbmV4cG9ydCAqIGZyb20gJy4vamF2YS9jb21wb25lbnRzL2RvY2tlci1wdWJsaXNoJztcbmV4cG9ydCAqIGZyb20gJy4vamF2YS9jb21wb25lbnRzL2dpdGh1Yi1wYWNrYWdlcy1wdWJsaXNoJztcbmV4cG9ydCAqIGZyb20gJy4vamF2YS9jb21wb25lbnRzL2ZseXdheS1taWdyYXRpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9qYXZhL2NvbXBvbmVudHMvY2RrLWRlcGxveS1ob29rJztcbmV4cG9ydCAqIGZyb20gJy4vamF2YS9jb21wb25lbnRzL2NvZGUtaW5kZXgtd29ya2Zsb3cnO1xuXG5leHBvcnQgKiBmcm9tICcuL2FjdGlvbnMvZ2l0aHViLWFjdGlvbi1wcm9qZWN0JztcbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9ucy9hY3Rpb24tYnVpbGQtd29ya2Zsb3cnO1xuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb25zL2FjdGlvbi1kb2dmb29kLXdvcmtmbG93JztcbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9ucy9hY3Rpb24tc29uYXItd29ya2Zsb3cnO1xuXG4iXX0=
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtEQUE2QztBQUM3Qyx1RUFBcUQ7QUFDckQsMkVBQXlEO0FBQ3pELDREQUEwQztBQUUxQyxnREFBOEI7QUFDOUIsNERBQTBDO0FBQzFDLDBEQUF3QztBQUN4Qyx3REFBc0M7QUFDdEMsc0VBQW9EO0FBQ3BELDhFQUE0RDtBQUM1RCw2REFBMkM7QUFDM0MsMkRBQXlDO0FBRXpDLGlEQUErQjtBQUMvQix5REFBdUM7QUFDdkMsOERBQTRDO0FBQzVDLDhEQUE0QztBQUM1QywwREFBd0M7QUFDeEMsMEVBQXdEO0FBQ3hELG1FQUFpRDtBQUNqRCw0RUFBMEQ7QUFDMUQscUVBQW1EO0FBQ25ELG9FQUFrRDtBQUNsRCx3RUFBc0Q7QUFFdEQsa0VBQWdEO0FBQ2hELGtFQUFnRDtBQUNoRCxvRUFBa0Q7QUFDbEQsa0VBQWdEIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb21tb24vZW52aXJvbm1lbnQtb3B0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbW1vbi9wcm9qZW4tZHJpZnQtY2hlY2std29ya2Zsb3cnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21tb24vd29ya2Zsb3ctY2hhbmdlLW5vdGljZS13b3JrZmxvdyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbW1vbi9pbnRlcm5hbC1hY3Rpb25zJztcblxuZXhwb3J0ICogZnJvbSAnLi9jZGsvb3B0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL2Nkay9jZGstdHlwZXNjcmlwdC1iYXNlJztcbmV4cG9ydCAqIGZyb20gJy4vY2RrL2Nkay1pbmZyYS1wcm9qZWN0JztcbmV4cG9ydCAqIGZyb20gJy4vY2RrL2Nkay1hcHAtcHJvamVjdCc7XG5leHBvcnQgKiBmcm9tICcuL2Nkay9jb21wb25lbnRzL2Vjci1lY3MtY29uc3RydWN0cyc7XG5leHBvcnQgKiBmcm9tICcuL2Nkay9jb21wb25lbnRzL2VkZ2UtbmV0d29ya2luZy1jb25zdHJ1Y3RzJztcbmV4cG9ydCAqIGZyb20gJy4vY2RrL2FwcC1ydW50aW1lLXNjYWZmb2xkJztcbmV4cG9ydCAqIGZyb20gJy4vY2RrL2RhdGFiYXNlLWNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vamF2YS9vcHRpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vamF2YS9qYXZhLW1hdmVuLWJhc2UnO1xuZXhwb3J0ICogZnJvbSAnLi9qYXZhL2phdmEtbGlicmFyeS1wcm9qZWN0JztcbmV4cG9ydCAqIGZyb20gJy4vamF2YS9qYXZhLXNlcnZpY2UtcHJvamVjdCc7XG5leHBvcnQgKiBmcm9tICcuL2phdmEvamF2YS1hcHAtcHJvamVjdCc7XG5leHBvcnQgKiBmcm9tICcuL2phdmEvY29tcG9uZW50cy9tYXZlbi1jZW50cmFsLXB1Ymxpc2gnO1xuZXhwb3J0ICogZnJvbSAnLi9qYXZhL2NvbXBvbmVudHMvZG9ja2VyLXB1Ymxpc2gnO1xuZXhwb3J0ICogZnJvbSAnLi9qYXZhL2NvbXBvbmVudHMvZ2l0aHViLXBhY2thZ2VzLXB1Ymxpc2gnO1xuZXhwb3J0ICogZnJvbSAnLi9qYXZhL2NvbXBvbmVudHMvZmx5d2F5LW1pZ3JhdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2phdmEvY29tcG9uZW50cy9jZGstZGVwbG95LWhvb2snO1xuZXhwb3J0ICogZnJvbSAnLi9qYXZhL2NvbXBvbmVudHMvY29kZS1pbmRleC13b3JrZmxvdyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9ucy9naXRodWItYWN0aW9uLXByb2plY3QnO1xuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb25zL2FjdGlvbi1idWlsZC13b3JrZmxvdyc7XG5leHBvcnQgKiBmcm9tICcuL2FjdGlvbnMvYWN0aW9uLWRvZ2Zvb2Qtd29ya2Zsb3cnO1xuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb25zL2FjdGlvbi1zb25hci13b3JrZmxvdyc7XG5cbiJdfQ==
@@ -18,7 +18,7 @@ const manual_deploy_workflow_1 = require("../../common/manual-deploy-workflow");
18
18
  * which is exactly when "this repo has no deploy target" needs saying.
19
19
  */
20
20
  class CdkDeployHook extends projen_1.Component {
21
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.CdkDeployHook", version: "0.0.7" };
21
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.CdkDeployHook", version: "0.0.8" };
22
22
  constructor(project, environments, options = {}) {
23
23
  super(project, 'CdkDeployHook');
24
24
  const targetRepo = options.targetRepo;
@@ -6,7 +6,7 @@ const projen_1 = require("projen");
6
6
  const workflow_purpose_1 = require("../../common/workflow-purpose");
7
7
  /** Generates a code index and publishes it to `.cai/` on checkin. */
8
8
  class CodeIndexWorkflow extends projen_1.Component {
9
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.CodeIndexWorkflow", version: "0.0.7" };
9
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.CodeIndexWorkflow", version: "0.0.8" };
10
10
  constructor(project) {
11
11
  super(project, 'CodeIndexWorkflow');
12
12
  const gh = project.github;
@@ -6,7 +6,7 @@ const projen_1 = require("projen");
6
6
  const workflow_purpose_1 = require("../../common/workflow-purpose");
7
7
  /** On-demand build+push of a Docker image, defaulting to Docker Hub. */
8
8
  class DockerPublish extends projen_1.Component {
9
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.DockerPublish", version: "0.0.7" };
9
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.DockerPublish", version: "0.0.8" };
10
10
  constructor(project, options = {}) {
11
11
  super(project, 'DockerPublish');
12
12
  const gh = project.github;
@@ -5,7 +5,7 @@ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
5
5
  const projen_1 = require("projen");
6
6
  /** Adds Flyway config/dependencies + a migrations directory for DB migrations. */
7
7
  class FlywayMigration extends projen_1.Component {
8
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.FlywayMigration", version: "0.0.7" };
8
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.FlywayMigration", version: "0.0.8" };
9
9
  constructor(project) {
10
10
  super(project, 'FlywayMigration');
11
11
  project.pom.addPlugin('org.flywaydb/flyway-maven-plugin@^10');
@@ -6,7 +6,7 @@ const projen_1 = require("projen");
6
6
  const workflow_purpose_1 = require("../../common/workflow-purpose");
7
7
  /** On-demand publish to GitHub Packages. */
8
8
  class GitHubPackagesPublish extends projen_1.Component {
9
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.GitHubPackagesPublish", version: "0.0.7" };
9
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.GitHubPackagesPublish", version: "0.0.8" };
10
10
  constructor(project, options = {}) {
11
11
  super(project, 'GitHubPackagesPublish');
12
12
  const gh = project.github;
@@ -9,7 +9,7 @@ const workflow_purpose_1 = require("../../common/workflow-purpose");
9
9
  * or OIDC trusted publishing.
10
10
  */
11
11
  class MavenCentralPublish extends projen_1.Component {
12
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.MavenCentralPublish", version: "0.0.7" };
12
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.MavenCentralPublish", version: "0.0.8" };
13
13
  constructor(project, options = {}) {
14
14
  super(project, 'MavenCentralPublish');
15
15
  const gh = project.github;
@@ -9,7 +9,7 @@ const java_maven_base_1 = require("./java-maven-base");
9
9
  * explicitly excludes Maven Central, Docker, and CDK deploy hooks.
10
10
  */
11
11
  class JavaAppProject extends java_maven_base_1.JavaMavenProject {
12
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.JavaAppProject", version: "0.0.7" };
12
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.JavaAppProject", version: "0.0.8" };
13
13
  constructor(options) {
14
14
  super(options);
15
15
  new github_packages_publish_1.GitHubPackagesPublish(this, {
@@ -7,7 +7,7 @@ const maven_central_publish_1 = require("./components/maven-central-publish");
7
7
  const java_maven_base_1 = require("./java-maven-base");
8
8
  /** Reusable Java library, published to Maven Central. */
9
9
  class JavaLibraryProject extends java_maven_base_1.JavaMavenProject {
10
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.JavaLibraryProject", version: "0.0.7" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.JavaLibraryProject", version: "0.0.8" };
11
11
  constructor(options) {
12
12
  super(options);
13
13
  new maven_central_publish_1.MavenCentralPublish(this, { mavenCentralOidc: options.mavenCentralOidc });
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.JavaMavenProject = 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 projen_drift_check_workflow_1 = require("../common/projen-drift-check-workflow");
@@ -18,7 +17,7 @@ const workflow_purpose_1 = require("../common/workflow-purpose");
18
17
  * nightly dependency-upgrade workflow.
19
18
  */
20
19
  class JavaMavenProject extends projen_1.java.JavaProject {
21
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.JavaMavenProject", version: "0.0.7" };
20
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.JavaMavenProject", version: "0.0.8" };
22
21
  upgradeTask;
23
22
  buildVerifyWorkflow;
24
23
  constructor(options) {
@@ -58,7 +57,6 @@ class JavaMavenProject extends projen_1.java.JavaProject {
58
57
  gheTokenSecret: options.gheTokenSecret ?? constants_1.DEFAULT_GHE_TOKEN_SECRET,
59
58
  });
60
59
  new workflow_change_notice_workflow_1.WorkflowChangeNoticeWorkflow(this);
61
- new actions_allowlist_guard_1.ActionsAllowlistGuard(this);
62
60
  const postBuildSteps = [];
63
61
  if (options.sonarProjectKey) {
64
62
  postBuildSteps.push({
@@ -86,4 +84,4 @@ class JavaMavenProject extends projen_1.java.JavaProject {
86
84
  }
87
85
  }
88
86
  exports.JavaMavenProject = JavaMavenProject;
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiamF2YS1tYXZlbi1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2phdmEvamF2YS1tYXZlbi1iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxtQ0FBNEM7QUFFNUMsK0VBQTBFO0FBQzFFLG1EQUErRDtBQUMvRCxpRUFBMEU7QUFDMUUsdUZBQWlGO0FBQ2pGLHVEQUFpRTtBQUNqRSxpRUFBNkQ7QUFDN0QsK0ZBQXlGO0FBQ3pGLGlFQUFpRTtBQUlqRTs7Ozs7R0FLRztBQUNILE1BQWEsZ0JBQWlCLFNBQVEsYUFBSSxDQUFDLFdBQVc7O0lBQ3BDLFdBQVcsQ0FBTztJQUNsQixtQkFBbUIsQ0FBc0I7SUFFekQsWUFBWSxPQUFnQztRQUMxQyxLQUFLLENBQUM7WUFDSixvRUFBb0U7WUFDcEUsbUVBQW1FO1lBQ25FLHNFQUFzRTtZQUN0RSx3REFBd0Q7WUFDeEQscUVBQXFFO1lBQ3JFLDZEQUE2RDtZQUM3RCxHQUFHLE9BQU87WUFDVixJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUk7WUFDbEIsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO1lBQ3hCLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVTtZQUM5QixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU8sSUFBSSxPQUFPO1lBQ25DLG9FQUFvRTtZQUNwRSxvRUFBb0U7WUFDcEUscUVBQXFFO1lBQ3JFLGlFQUFpRTtZQUNqRSxtRUFBbUU7WUFDbkUsb0RBQW9EO1lBQ3BELFlBQVksRUFBRSxLQUFLO1lBQ25CLGlCQUFpQixFQUFFLGVBQU0sQ0FBQyxpQkFBaUIsQ0FBQyx1QkFBdUIsQ0FBQztnQkFDbEUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxjQUFjLElBQUksb0NBQXdCO2FBQzNELENBQUM7U0FDSCxDQUFDLENBQUM7UUFFSCxvRUFBb0U7UUFDcEUsc0VBQXNFO1FBQ3RFLHlDQUF5QztRQUN6QyxJQUFBLHNDQUF3QixFQUFDLElBQUksQ0FBQyxDQUFDO1FBRS9CLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDdkIsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ1IsTUFBTSxJQUFJLEtBQUssQ0FBQyw4Q0FBOEMsQ0FBQyxDQUFDO1FBQ2xFLENBQUM7UUFFRCxJQUFBLCtDQUE0QixFQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRWpDLElBQUksc0RBQXdCLENBQUMsSUFBSSxFQUFFO1lBQ2pDLGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYyxJQUFJLG9DQUF3QjtTQUNuRSxDQUFDLENBQUM7UUFDSCxJQUFJLDhEQUE0QixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLElBQUksK0NBQXFCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFaEMsTUFBTSxjQUFjLEdBQStCLEVBQUUsQ0FBQztRQUN0RCxJQUFJLE9BQU8sQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUM1QixjQUFjLENBQUMsSUFBSSxDQUFDO2dCQUNsQixJQUFJLEVBQUUsZ0JBQWdCO2dCQUN0QixHQUFHLEVBQUUseUNBQXlDLE9BQU8sQ0FBQyxlQUFlLEVBQUU7Z0JBQ3ZFLEdBQUcsRUFBRSxFQUFFLFdBQVcsRUFBRSw0QkFBNEIsRUFBRTthQUNuRCxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksZUFBTSxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUU7WUFDckQsSUFBSSxFQUFFLE9BQU87WUFDYixLQUFLLEVBQUUsT0FBTztZQUNkLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUztZQUNwQixRQUFRLEVBQUUsRUFBRSxXQUFXLEVBQUUsRUFBRSxFQUFFLGdCQUFnQixFQUFFLEVBQUUsRUFBRTtZQUNuRCxXQUFXLEVBQUUsRUFBRSxRQUFRLEVBQUUsZUFBTSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFO1lBQzlELGNBQWM7U0FDZixDQUFDLENBQUM7UUFDSCxJQUFBLHNDQUFtQixFQUNqQixJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxFQUM3QixxRkFBcUYsQ0FDdEYsQ0FBQztRQUNGLDBFQUEwRTtRQUMxRSxrRUFBa0U7UUFDbEUsSUFBQSxzQ0FBbUIsRUFDakIsSUFBSSxDQUFDLFdBQVcsQ0FBQyx5Q0FBeUMsQ0FBQyxFQUMzRCxvR0FBb0csQ0FDckcsQ0FBQztRQUVGLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUU7WUFDekMsSUFBSSxFQUFFLGdFQUFnRTtTQUN2RSxDQUFDLENBQUM7UUFDSCxJQUFJLGtDQUFlLENBQUMsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELENBQUM7O0FBL0VILDRDQWdGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRhc2ssIGdpdGh1YiwgamF2YSB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBDb21tb25KYXZhT3B0aW9ucyB9IGZyb20gJy4vb3B0aW9ucyc7XG5pbXBvcnQgeyBBY3Rpb25zQWxsb3dsaXN0R3VhcmQgfSBmcm9tICcuLi9jb21tb24vYWN0aW9ucy1hbGxvd2xpc3QtZ3VhcmQnO1xuaW1wb3J0IHsgREVGQVVMVF9HSEVfVE9LRU5fU0VDUkVUIH0gZnJvbSAnLi4vY29tbW9uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBhcHBseUludGVybmFsQWN0aW9uT3ZlcnJpZGVzIH0gZnJvbSAnLi4vY29tbW9uL2ludGVybmFsLWFjdGlvbnMnO1xuaW1wb3J0IHsgUHJvamVuRHJpZnRDaGVja1dvcmtmbG93IH0gZnJvbSAnLi4vY29tbW9uL3Byb2plbi1kcmlmdC1jaGVjay13b3JrZmxvdyc7XG5pbXBvcnQgeyBhdHRhY2hUeXBlU2NyaXB0UHJvamVucmMgfSBmcm9tICcuLi9jb21tb24vcHJvamVucmMtdHMnO1xuaW1wb3J0IHsgVXBncmFkZVdvcmtmbG93IH0gZnJvbSAnLi4vY29tbW9uL3VwZ3JhZGUtd29ya2Zsb3cnO1xuaW1wb3J0IHsgV29ya2Zsb3dDaGFuZ2VOb3RpY2VXb3JrZmxvdyB9IGZyb20gJy4uL2NvbW1vbi93b3JrZmxvdy1jaGFuZ2Utbm90aWNlLXdvcmtmbG93JztcbmltcG9ydCB7IG5vdGVXb3JrZmxvd1B1cnBvc2UgfSBmcm9tICcuLi9jb21tb24vd29ya2Zsb3ctcHVycG9zZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSmF2YU1hdmVuUHJvamVjdE9wdGlvbnMgZXh0ZW5kcyBDb21tb25KYXZhT3B0aW9ucyB7fVxuXG4vKipcbiAqIFNoYXJlZCBNYXZlbiBidWlsZCBza2VsZXRvbiBmb3IgYWxsIHRocmVlIEphdmEgcHJvamVjdCB0eXBlczogc3RhbmRhcmRcbiAqIGBwb20ueG1sYC9kaXJlY3RvcnkgbGF5b3V0ICh2aWEgYGphdmEuSmF2YVByb2plY3RgKSwgYSBQUi10cmlnZ2VyZWRcbiAqIGJ1aWxkK3Rlc3QoK1NvbmFyUXViZSkgd29ya2Zsb3cgdGhhdCBoYXJkLWZhaWxzIG9uIHByb2plbiBkcmlmdCwgYW5kIGFcbiAqIG5pZ2h0bHkgZGVwZW5kZW5jeS11cGdyYWRlIHdvcmtmbG93LlxuICovXG5leHBvcnQgY2xhc3MgSmF2YU1hdmVuUHJvamVjdCBleHRlbmRzIGphdmEuSmF2YVByb2plY3Qge1xuICBwdWJsaWMgcmVhZG9ubHkgdXBncmFkZVRhc2s6IFRhc2s7XG4gIHB1YmxpYyByZWFkb25seSBidWlsZFZlcmlmeVdvcmtmbG93OiBnaXRodWIuVGFza1dvcmtmbG93O1xuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEphdmFNYXZlblByb2plY3RPcHRpb25zKSB7XG4gICAgc3VwZXIoe1xuICAgICAgLy8gU3ByZWFkIGZpcnN0LCBvdmVycmlkZXMgYWZ0ZXI6IGZvcndhcmRpbmcgdGhlIGNhbGxlcidzIG9wdGlvbnMgaXNcbiAgICAgIC8vIHdoYXQgbGV0cyBgcHJvamVuIG5ldyAtLWZyb20gQHhwZXJ0c3MvcHJvamVuLXR5cGVzIGphdmFfbGlicmFyeWBcbiAgICAgIC8vIHdvcmsgLSBwcm9qZW4gc211Z2dsZXMgaXRzIGJvb3RzdHJhcCBtYXJrZXIgKGBfX25ld19fYCkgdGhyb3VnaCB0aGVcbiAgICAgIC8vIG9wdGlvbnMgb2JqZWN0LCBhbmQgaXQgaXMgdGhhdCBtYXJrZXIgd2hpY2ggbWFrZXMgdGhlXG4gICAgICAvLyBgUHJvamVucmNGaWxlYCBjb21wb25lbnQgd3JpdGUgdGhlIGluaXRpYWwgYC5wcm9qZW5yYy50c2AuIERyb3AgaXRcbiAgICAgIC8vIGFuZCBgcHJvamVuIG5ld2Agc2NhZmZvbGRzIGEgcmVwbyB3aXRoIG5vIHByb2plbnJjIGF0IGFsbC5cbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBuYW1lOiBvcHRpb25zLm5hbWUsXG4gICAgICBncm91cElkOiBvcHRpb25zLmdyb3VwSWQsXG4gICAgICBhcnRpZmFjdElkOiBvcHRpb25zLmFydGlmYWN0SWQsXG4gICAgICB2ZXJzaW9uOiBvcHRpb25zLnZlcnNpb24gPz8gJzAuMS4wJyxcbiAgICAgIC8vIENvbnN1bWVycyBhdXRob3IgdGhlaXIgY29uZmlnIGFzIGEgTm9kZS1zaWRlIGAucHJvamVucmMudHNgICh0aGlzXG4gICAgICAvLyBwYWNrYWdlIG9ubHkgcHVibGlzaGVzIGFuIG5wbSBqc2lpIHRhcmdldCwgbm8gamF2YSB0YXJnZXQpLCBub3QgYVxuICAgICAgLy8gaGFuZC13cml0dGVuIGBzcmMvdGVzdC9qYXZhL3Byb2plbnJjLmphdmFgIC0gc28gamF2YS5KYXZhUHJvamVjdCdzXG4gICAgICAvLyBvd24gSmF2YS1uYXRpdmUgcHJvamVucmMgKHdoaWNoIHdpcmVzIHRoZSBkZWZhdWx0IHRhc2sgdG8gYG12blxuICAgICAgLy8gY29tcGlsZXI6dGVzdENvbXBpbGUgJiYgbXZuIGV4ZWM6amF2YSAuLi5gKSB3b3VsZCBiZSB3cm9uZyBoZXJlLlxuICAgICAgLy8gRGlzYWJsZSBpdCBhbmQgYXR0YWNoIHRoZSBUeXBlU2NyaXB0IG9uZSBpbnN0ZWFkLlxuICAgICAgcHJvamVucmNKYXZhOiBmYWxzZSxcbiAgICAgIHByb2plbkNyZWRlbnRpYWxzOiBnaXRodWIuR2l0aHViQ3JlZGVudGlhbHMuZnJvbVBlcnNvbmFsQWNjZXNzVG9rZW4oe1xuICAgICAgICBzZWNyZXQ6IG9wdGlvbnMuZ2hlVG9rZW5TZWNyZXQgPz8gREVGQVVMVF9HSEVfVE9LRU5fU0VDUkVULFxuICAgICAgfSksXG4gICAgfSk7XG5cbiAgICAvLyBgLnByb2plbnJjLnRzYCArIGBucHggcHJvamVuYCwgc2FtZSBhcyBldmVyeSBvdGhlciB0eXBlIGhlcmUuIFRoZVxuICAgIC8vIE1hdmVuIHJlcG8gbmVlZHMgbm8gVHlwZVNjcmlwdCB0b29sY2hhaW4gb2YgaXRzIG93biAtIHRoZSBydW5uZXIgaXNcbiAgICAvLyBmZXRjaGVkIChwaW5uZWQpIGJ5IG5weCBhdCBzeW50aCB0aW1lLlxuICAgIGF0dGFjaFR5cGVTY3JpcHRQcm9qZW5yYyh0aGlzKTtcblxuICAgIGNvbnN0IGdoID0gdGhpcy5naXRodWI7XG4gICAgaWYgKCFnaCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdKYXZhTWF2ZW5Qcm9qZWN0IHJlcXVpcmVzIEdpdEh1YiBpbnRlZ3JhdGlvbicpO1xuICAgIH1cblxuICAgIGFwcGx5SW50ZXJuYWxBY3Rpb25PdmVycmlkZXMoZ2gpO1xuXG4gICAgbmV3IFByb2plbkRyaWZ0Q2hlY2tXb3JrZmxvdyh0aGlzLCB7XG4gICAgICBnaGVUb2tlblNlY3JldDogb3B0aW9ucy5naGVUb2tlblNlY3JldCA/PyBERUZBVUxUX0dIRV9UT0tFTl9TRUNSRVQsXG4gICAgfSk7XG4gICAgbmV3IFdvcmtmbG93Q2hhbmdlTm90aWNlV29ya2Zsb3codGhpcyk7XG4gICAgbmV3IEFjdGlvbnNBbGxvd2xpc3RHdWFyZCh0aGlzKTtcblxuICAgIGNvbnN0IHBvc3RCdWlsZFN0ZXBzOiBnaXRodWIud29ya2Zsb3dzLkpvYlN0ZXBbXSA9IFtdO1xuICAgIGlmIChvcHRpb25zLnNvbmFyUHJvamVjdEtleSkge1xuICAgICAgcG9zdEJ1aWxkU3RlcHMucHVzaCh7XG4gICAgICAgIG5hbWU6ICdTb25hclF1YmUgc2NhbicsXG4gICAgICAgIHJ1bjogYG12biAtQiBzb25hcjpzb25hciAtRHNvbmFyLnByb2plY3RLZXk9JHtvcHRpb25zLnNvbmFyUHJvamVjdEtleX1gLFxuICAgICAgICBlbnY6IHsgU09OQVJfVE9LRU46ICcke3sgc2VjcmV0cy5TT05BUl9UT0tFTiB9fScgfSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHRoaXMuYnVpbGRWZXJpZnlXb3JrZmxvdyA9IG5ldyBnaXRodWIuVGFza1dvcmtmbG93KGdoLCB7XG4gICAgICBuYW1lOiAnYnVpbGQnLFxuICAgICAgam9iSWQ6ICdidWlsZCcsXG4gICAgICB0YXNrOiB0aGlzLmJ1aWxkVGFzayxcbiAgICAgIHRyaWdnZXJzOiB7IHB1bGxSZXF1ZXN0OiB7fSwgd29ya2Zsb3dEaXNwYXRjaDoge30gfSxcbiAgICAgIHBlcm1pc3Npb25zOiB7IGNvbnRlbnRzOiBnaXRodWIud29ya2Zsb3dzLkpvYlBlcm1pc3Npb24uUkVBRCB9LFxuICAgICAgcG9zdEJ1aWxkU3RlcHMsXG4gICAgfSk7XG4gICAgbm90ZVdvcmtmbG93UHVycG9zZShcbiAgICAgIHRoaXMuYnVpbGRWZXJpZnlXb3JrZmxvdy5maWxlLFxuICAgICAgJ0J1aWxkIGFuZCB0ZXN0IHRoZSBNYXZlbiBwcm9qZWN0IG9uIHB1bGwgcmVxdWVzdHMsIHdpdGggYW4gb3B0aW9uYWwgU29uYXJRdWJlIHNjYW4uJyxcbiAgICApO1xuICAgIC8vIGBwdWxsLXJlcXVlc3QtbGludGAgaXMgcHJvamVuJ3MgYnVpbHQtaW4gUFItdGl0bGUgdmFsaWRhdGlvbiB3b3JrZmxvdyAtXG4gICAgLy8gcmVhY2ggaXRzIGZpbGUgYnkgcGF0aCBsaWtlIHRoZSBvdGhlciBwcm9qZW4tY3JlYXRlZCB3b3JrZmxvd3MuXG4gICAgbm90ZVdvcmtmbG93UHVycG9zZShcbiAgICAgIHRoaXMudHJ5RmluZEZpbGUoJy5naXRodWIvd29ya2Zsb3dzL3B1bGwtcmVxdWVzdC1saW50LnltbCcpLFxuICAgICAgJ1JlamVjdCBwdWxsIHJlcXVlc3RzIHdob3NlIHRpdGxlcyBkbyBub3QgZm9sbG93IHRoZSBjb252ZW50aW9uYWwtY29tbWl0IChzZW1hbnRpYy1yZWxlYXNlKSBmb3JtYXQuJyxcbiAgICApO1xuXG4gICAgdGhpcy51cGdyYWRlVGFzayA9IHRoaXMuYWRkVGFzaygndXBncmFkZScsIHtcbiAgICAgIGV4ZWM6ICdtdm4gLUIgdmVyc2lvbnM6dXNlLWxhdGVzdC1yZWxlYXNlcyB2ZXJzaW9uczp1cGRhdGUtcHJvcGVydGllcycsXG4gICAgfSk7XG4gICAgbmV3IFVwZ3JhZGVXb3JrZmxvdyh0aGlzLCB7IHRhc2s6IHRoaXMudXBncmFkZVRhc2sgfSk7XG4gIH1cbn1cbiJdfQ==
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiamF2YS1tYXZlbi1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2phdmEvamF2YS1tYXZlbi1iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxtQ0FBNEM7QUFFNUMsbURBQStEO0FBQy9ELGlFQUEwRTtBQUMxRSx1RkFBaUY7QUFDakYsdURBQWlFO0FBQ2pFLGlFQUE2RDtBQUM3RCwrRkFBeUY7QUFDekYsaUVBQWlFO0FBSWpFOzs7OztHQUtHO0FBQ0gsTUFBYSxnQkFBaUIsU0FBUSxhQUFJLENBQUMsV0FBVzs7SUFDcEMsV0FBVyxDQUFPO0lBQ2xCLG1CQUFtQixDQUFzQjtJQUV6RCxZQUFZLE9BQWdDO1FBQzFDLEtBQUssQ0FBQztZQUNKLG9FQUFvRTtZQUNwRSxtRUFBbUU7WUFDbkUsc0VBQXNFO1lBQ3RFLHdEQUF3RDtZQUN4RCxxRUFBcUU7WUFDckUsNkRBQTZEO1lBQzdELEdBQUcsT0FBTztZQUNWLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSTtZQUNsQixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87WUFDeEIsVUFBVSxFQUFFLE9BQU8sQ0FBQyxVQUFVO1lBQzlCLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxJQUFJLE9BQU87WUFDbkMsb0VBQW9FO1lBQ3BFLG9FQUFvRTtZQUNwRSxxRUFBcUU7WUFDckUsaUVBQWlFO1lBQ2pFLG1FQUFtRTtZQUNuRSxvREFBb0Q7WUFDcEQsWUFBWSxFQUFFLEtBQUs7WUFDbkIsaUJBQWlCLEVBQUUsZUFBTSxDQUFDLGlCQUFpQixDQUFDLHVCQUF1QixDQUFDO2dCQUNsRSxNQUFNLEVBQUUsT0FBTyxDQUFDLGNBQWMsSUFBSSxvQ0FBd0I7YUFDM0QsQ0FBQztTQUNILENBQUMsQ0FBQztRQUVILG9FQUFvRTtRQUNwRSxzRUFBc0U7UUFDdEUseUNBQXlDO1FBQ3pDLElBQUEsc0NBQXdCLEVBQUMsSUFBSSxDQUFDLENBQUM7UUFFL0IsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUN2QixJQUFJLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDUixNQUFNLElBQUksS0FBSyxDQUFDLDhDQUE4QyxDQUFDLENBQUM7UUFDbEUsQ0FBQztRQUVELElBQUEsK0NBQTRCLEVBQUMsRUFBRSxDQUFDLENBQUM7UUFFakMsSUFBSSxzREFBd0IsQ0FBQyxJQUFJLEVBQUU7WUFDakMsY0FBYyxFQUFFLE9BQU8sQ0FBQyxjQUFjLElBQUksb0NBQXdCO1NBQ25FLENBQUMsQ0FBQztRQUNILElBQUksOERBQTRCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFdkMsTUFBTSxjQUFjLEdBQStCLEVBQUUsQ0FBQztRQUN0RCxJQUFJLE9BQU8sQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUM1QixjQUFjLENBQUMsSUFBSSxDQUFDO2dCQUNsQixJQUFJLEVBQUUsZ0JBQWdCO2dCQUN0QixHQUFHLEVBQUUseUNBQXlDLE9BQU8sQ0FBQyxlQUFlLEVBQUU7Z0JBQ3ZFLEdBQUcsRUFBRSxFQUFFLFdBQVcsRUFBRSw0QkFBNEIsRUFBRTthQUNuRCxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksZUFBTSxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUU7WUFDckQsSUFBSSxFQUFFLE9BQU87WUFDYixLQUFLLEVBQUUsT0FBTztZQUNkLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUztZQUNwQixRQUFRLEVBQUUsRUFBRSxXQUFXLEVBQUUsRUFBRSxFQUFFLGdCQUFnQixFQUFFLEVBQUUsRUFBRTtZQUNuRCxXQUFXLEVBQUUsRUFBRSxRQUFRLEVBQUUsZUFBTSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFO1lBQzlELGNBQWM7U0FDZixDQUFDLENBQUM7UUFDSCxJQUFBLHNDQUFtQixFQUNqQixJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxFQUM3QixxRkFBcUYsQ0FDdEYsQ0FBQztRQUNGLDBFQUEwRTtRQUMxRSxrRUFBa0U7UUFDbEUsSUFBQSxzQ0FBbUIsRUFDakIsSUFBSSxDQUFDLFdBQVcsQ0FBQyx5Q0FBeUMsQ0FBQyxFQUMzRCxvR0FBb0csQ0FDckcsQ0FBQztRQUVGLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUU7WUFDekMsSUFBSSxFQUFFLGdFQUFnRTtTQUN2RSxDQUFDLENBQUM7UUFDSCxJQUFJLGtDQUFlLENBQUMsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELENBQUM7O0FBOUVILDRDQStFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRhc2ssIGdpdGh1YiwgamF2YSB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBDb21tb25KYXZhT3B0aW9ucyB9IGZyb20gJy4vb3B0aW9ucyc7XG5pbXBvcnQgeyBERUZBVUxUX0dIRV9UT0tFTl9TRUNSRVQgfSBmcm9tICcuLi9jb21tb24vY29uc3RhbnRzJztcbmltcG9ydCB7IGFwcGx5SW50ZXJuYWxBY3Rpb25PdmVycmlkZXMgfSBmcm9tICcuLi9jb21tb24vaW50ZXJuYWwtYWN0aW9ucyc7XG5pbXBvcnQgeyBQcm9qZW5EcmlmdENoZWNrV29ya2Zsb3cgfSBmcm9tICcuLi9jb21tb24vcHJvamVuLWRyaWZ0LWNoZWNrLXdvcmtmbG93JztcbmltcG9ydCB7IGF0dGFjaFR5cGVTY3JpcHRQcm9qZW5yYyB9IGZyb20gJy4uL2NvbW1vbi9wcm9qZW5yYy10cyc7XG5pbXBvcnQgeyBVcGdyYWRlV29ya2Zsb3cgfSBmcm9tICcuLi9jb21tb24vdXBncmFkZS13b3JrZmxvdyc7XG5pbXBvcnQgeyBXb3JrZmxvd0NoYW5nZU5vdGljZVdvcmtmbG93IH0gZnJvbSAnLi4vY29tbW9uL3dvcmtmbG93LWNoYW5nZS1ub3RpY2Utd29ya2Zsb3cnO1xuaW1wb3J0IHsgbm90ZVdvcmtmbG93UHVycG9zZSB9IGZyb20gJy4uL2NvbW1vbi93b3JrZmxvdy1wdXJwb3NlJztcblxuZXhwb3J0IGludGVyZmFjZSBKYXZhTWF2ZW5Qcm9qZWN0T3B0aW9ucyBleHRlbmRzIENvbW1vbkphdmFPcHRpb25zIHt9XG5cbi8qKlxuICogU2hhcmVkIE1hdmVuIGJ1aWxkIHNrZWxldG9uIGZvciBhbGwgdGhyZWUgSmF2YSBwcm9qZWN0IHR5cGVzOiBzdGFuZGFyZFxuICogYHBvbS54bWxgL2RpcmVjdG9yeSBsYXlvdXQgKHZpYSBgamF2YS5KYXZhUHJvamVjdGApLCBhIFBSLXRyaWdnZXJlZFxuICogYnVpbGQrdGVzdCgrU29uYXJRdWJlKSB3b3JrZmxvdyB0aGF0IGhhcmQtZmFpbHMgb24gcHJvamVuIGRyaWZ0LCBhbmQgYVxuICogbmlnaHRseSBkZXBlbmRlbmN5LXVwZ3JhZGUgd29ya2Zsb3cuXG4gKi9cbmV4cG9ydCBjbGFzcyBKYXZhTWF2ZW5Qcm9qZWN0IGV4dGVuZHMgamF2YS5KYXZhUHJvamVjdCB7XG4gIHB1YmxpYyByZWFkb25seSB1cGdyYWRlVGFzazogVGFzaztcbiAgcHVibGljIHJlYWRvbmx5IGJ1aWxkVmVyaWZ5V29ya2Zsb3c6IGdpdGh1Yi5UYXNrV29ya2Zsb3c7XG5cbiAgY29uc3RydWN0b3Iob3B0aW9uczogSmF2YU1hdmVuUHJvamVjdE9wdGlvbnMpIHtcbiAgICBzdXBlcih7XG4gICAgICAvLyBTcHJlYWQgZmlyc3QsIG92ZXJyaWRlcyBhZnRlcjogZm9yd2FyZGluZyB0aGUgY2FsbGVyJ3Mgb3B0aW9ucyBpc1xuICAgICAgLy8gd2hhdCBsZXRzIGBwcm9qZW4gbmV3IC0tZnJvbSBAeHBlcnRzcy9wcm9qZW4tdHlwZXMgamF2YV9saWJyYXJ5YFxuICAgICAgLy8gd29yayAtIHByb2plbiBzbXVnZ2xlcyBpdHMgYm9vdHN0cmFwIG1hcmtlciAoYF9fbmV3X19gKSB0aHJvdWdoIHRoZVxuICAgICAgLy8gb3B0aW9ucyBvYmplY3QsIGFuZCBpdCBpcyB0aGF0IG1hcmtlciB3aGljaCBtYWtlcyB0aGVcbiAgICAgIC8vIGBQcm9qZW5yY0ZpbGVgIGNvbXBvbmVudCB3cml0ZSB0aGUgaW5pdGlhbCBgLnByb2plbnJjLnRzYC4gRHJvcCBpdFxuICAgICAgLy8gYW5kIGBwcm9qZW4gbmV3YCBzY2FmZm9sZHMgYSByZXBvIHdpdGggbm8gcHJvamVucmMgYXQgYWxsLlxuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIG5hbWU6IG9wdGlvbnMubmFtZSxcbiAgICAgIGdyb3VwSWQ6IG9wdGlvbnMuZ3JvdXBJZCxcbiAgICAgIGFydGlmYWN0SWQ6IG9wdGlvbnMuYXJ0aWZhY3RJZCxcbiAgICAgIHZlcnNpb246IG9wdGlvbnMudmVyc2lvbiA/PyAnMC4xLjAnLFxuICAgICAgLy8gQ29uc3VtZXJzIGF1dGhvciB0aGVpciBjb25maWcgYXMgYSBOb2RlLXNpZGUgYC5wcm9qZW5yYy50c2AgKHRoaXNcbiAgICAgIC8vIHBhY2thZ2Ugb25seSBwdWJsaXNoZXMgYW4gbnBtIGpzaWkgdGFyZ2V0LCBubyBqYXZhIHRhcmdldCksIG5vdCBhXG4gICAgICAvLyBoYW5kLXdyaXR0ZW4gYHNyYy90ZXN0L2phdmEvcHJvamVucmMuamF2YWAgLSBzbyBqYXZhLkphdmFQcm9qZWN0J3NcbiAgICAgIC8vIG93biBKYXZhLW5hdGl2ZSBwcm9qZW5yYyAod2hpY2ggd2lyZXMgdGhlIGRlZmF1bHQgdGFzayB0byBgbXZuXG4gICAgICAvLyBjb21waWxlcjp0ZXN0Q29tcGlsZSAmJiBtdm4gZXhlYzpqYXZhIC4uLmApIHdvdWxkIGJlIHdyb25nIGhlcmUuXG4gICAgICAvLyBEaXNhYmxlIGl0IGFuZCBhdHRhY2ggdGhlIFR5cGVTY3JpcHQgb25lIGluc3RlYWQuXG4gICAgICBwcm9qZW5yY0phdmE6IGZhbHNlLFxuICAgICAgcHJvamVuQ3JlZGVudGlhbHM6IGdpdGh1Yi5HaXRodWJDcmVkZW50aWFscy5mcm9tUGVyc29uYWxBY2Nlc3NUb2tlbih7XG4gICAgICAgIHNlY3JldDogb3B0aW9ucy5naGVUb2tlblNlY3JldCA/PyBERUZBVUxUX0dIRV9UT0tFTl9TRUNSRVQsXG4gICAgICB9KSxcbiAgICB9KTtcblxuICAgIC8vIGAucHJvamVucmMudHNgICsgYG5weCBwcm9qZW5gLCBzYW1lIGFzIGV2ZXJ5IG90aGVyIHR5cGUgaGVyZS4gVGhlXG4gICAgLy8gTWF2ZW4gcmVwbyBuZWVkcyBubyBUeXBlU2NyaXB0IHRvb2xjaGFpbiBvZiBpdHMgb3duIC0gdGhlIHJ1bm5lciBpc1xuICAgIC8vIGZldGNoZWQgKHBpbm5lZCkgYnkgbnB4IGF0IHN5bnRoIHRpbWUuXG4gICAgYXR0YWNoVHlwZVNjcmlwdFByb2plbnJjKHRoaXMpO1xuXG4gICAgY29uc3QgZ2ggPSB0aGlzLmdpdGh1YjtcbiAgICBpZiAoIWdoKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0phdmFNYXZlblByb2plY3QgcmVxdWlyZXMgR2l0SHViIGludGVncmF0aW9uJyk7XG4gICAgfVxuXG4gICAgYXBwbHlJbnRlcm5hbEFjdGlvbk92ZXJyaWRlcyhnaCk7XG5cbiAgICBuZXcgUHJvamVuRHJpZnRDaGVja1dvcmtmbG93KHRoaXMsIHtcbiAgICAgIGdoZVRva2VuU2VjcmV0OiBvcHRpb25zLmdoZVRva2VuU2VjcmV0ID8/IERFRkFVTFRfR0hFX1RPS0VOX1NFQ1JFVCxcbiAgICB9KTtcbiAgICBuZXcgV29ya2Zsb3dDaGFuZ2VOb3RpY2VXb3JrZmxvdyh0aGlzKTtcblxuICAgIGNvbnN0IHBvc3RCdWlsZFN0ZXBzOiBnaXRodWIud29ya2Zsb3dzLkpvYlN0ZXBbXSA9IFtdO1xuICAgIGlmIChvcHRpb25zLnNvbmFyUHJvamVjdEtleSkge1xuICAgICAgcG9zdEJ1aWxkU3RlcHMucHVzaCh7XG4gICAgICAgIG5hbWU6ICdTb25hclF1YmUgc2NhbicsXG4gICAgICAgIHJ1bjogYG12biAtQiBzb25hcjpzb25hciAtRHNvbmFyLnByb2plY3RLZXk9JHtvcHRpb25zLnNvbmFyUHJvamVjdEtleX1gLFxuICAgICAgICBlbnY6IHsgU09OQVJfVE9LRU46ICcke3sgc2VjcmV0cy5TT05BUl9UT0tFTiB9fScgfSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHRoaXMuYnVpbGRWZXJpZnlXb3JrZmxvdyA9IG5ldyBnaXRodWIuVGFza1dvcmtmbG93KGdoLCB7XG4gICAgICBuYW1lOiAnYnVpbGQnLFxuICAgICAgam9iSWQ6ICdidWlsZCcsXG4gICAgICB0YXNrOiB0aGlzLmJ1aWxkVGFzayxcbiAgICAgIHRyaWdnZXJzOiB7IHB1bGxSZXF1ZXN0OiB7fSwgd29ya2Zsb3dEaXNwYXRjaDoge30gfSxcbiAgICAgIHBlcm1pc3Npb25zOiB7IGNvbnRlbnRzOiBnaXRodWIud29ya2Zsb3dzLkpvYlBlcm1pc3Npb24uUkVBRCB9LFxuICAgICAgcG9zdEJ1aWxkU3RlcHMsXG4gICAgfSk7XG4gICAgbm90ZVdvcmtmbG93UHVycG9zZShcbiAgICAgIHRoaXMuYnVpbGRWZXJpZnlXb3JrZmxvdy5maWxlLFxuICAgICAgJ0J1aWxkIGFuZCB0ZXN0IHRoZSBNYXZlbiBwcm9qZWN0IG9uIHB1bGwgcmVxdWVzdHMsIHdpdGggYW4gb3B0aW9uYWwgU29uYXJRdWJlIHNjYW4uJyxcbiAgICApO1xuICAgIC8vIGBwdWxsLXJlcXVlc3QtbGludGAgaXMgcHJvamVuJ3MgYnVpbHQtaW4gUFItdGl0bGUgdmFsaWRhdGlvbiB3b3JrZmxvdyAtXG4gICAgLy8gcmVhY2ggaXRzIGZpbGUgYnkgcGF0aCBsaWtlIHRoZSBvdGhlciBwcm9qZW4tY3JlYXRlZCB3b3JrZmxvd3MuXG4gICAgbm90ZVdvcmtmbG93UHVycG9zZShcbiAgICAgIHRoaXMudHJ5RmluZEZpbGUoJy5naXRodWIvd29ya2Zsb3dzL3B1bGwtcmVxdWVzdC1saW50LnltbCcpLFxuICAgICAgJ1JlamVjdCBwdWxsIHJlcXVlc3RzIHdob3NlIHRpdGxlcyBkbyBub3QgZm9sbG93IHRoZSBjb252ZW50aW9uYWwtY29tbWl0IChzZW1hbnRpYy1yZWxlYXNlKSBmb3JtYXQuJyxcbiAgICApO1xuXG4gICAgdGhpcy51cGdyYWRlVGFzayA9IHRoaXMuYWRkVGFzaygndXBncmFkZScsIHtcbiAgICAgIGV4ZWM6ICdtdm4gLUIgdmVyc2lvbnM6dXNlLWxhdGVzdC1yZWxlYXNlcyB2ZXJzaW9uczp1cGRhdGUtcHJvcGVydGllcycsXG4gICAgfSk7XG4gICAgbmV3IFVwZ3JhZGVXb3JrZmxvdyh0aGlzLCB7IHRhc2s6IHRoaXMudXBncmFkZVRhc2sgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -11,7 +11,7 @@ const java_maven_base_1 = require("./java-maven-base");
11
11
  * Central); publish and deploy are both manual-dispatch, not on every merge.
12
12
  */
13
13
  class JavaServiceProject extends java_maven_base_1.JavaMavenProject {
14
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.JavaServiceProject", version: "0.0.7" };
14
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.JavaServiceProject", version: "0.0.8" };
15
15
  constructor(options) {
16
16
  super(options);
17
17
  this.pom.addDependency('org.springframework.boot/spring-boot-starter-web@^3');
package/package.json CHANGED
@@ -82,7 +82,7 @@
82
82
  "publishConfig": {
83
83
  "access": "public"
84
84
  },
85
- "version": "0.0.7",
85
+ "version": "0.0.8",
86
86
  "jest": {
87
87
  "coverageProvider": "v8",
88
88
  "testMatch": [
@@ -1,37 +0,0 @@
1
- import { Component, github } from 'projen';
2
- /**
3
- * Blocking, tamper-proof PR check that stops a disallowed GitHub Action
4
- * reference from ever (re)appearing in a repo's workflow or composite-action
5
- * files.
6
- *
7
- * Runs on `pull_request_target` so it always executes the copy of this
8
- * workflow committed on the base branch - a PR cannot edit this file to
9
- * disable or weaken the check. It checks out and executes nothing from the
10
- * PR; it only reads the PR head's file content via the GitHub API. Because
11
- * `pull_request_target` runs with the base repo's token even for
12
- * fork-originated PRs, the failure comment posts reliably.
13
- *
14
- * It performs a flat, unconditional scan of the PR's head ref (no
15
- * base-vs-head comparison): fetch the content of every GitHub workflow and
16
- * composite-action file, extract every `uses:` value, and fail if any does
17
- * not start with one of the three trusted namespaces from AD-001
18
- * (`actions/`, `docker/`, `xpertss/`). The single
19
- * exemption is a local same-repo reference (`uses: .` or
20
- * `uses: ./.github/actions/<name>`) - the repo's own hand-committed action,
21
- * to which the org policy's "allow select actions" setting does not apply.
22
- */
23
- export interface ActionsAllowlistGuardOptions {
24
- /**
25
- * GitHub secret holding a token with permission to comment on PRs, used
26
- * for the failure comment. The check still fails without it, so fork PRs -
27
- * which get no secrets - are only missing the extra comment.
28
- * @default "PROJEN_GITHUB_TOKEN"
29
- */
30
- readonly gheTokenSecret?: string;
31
- /** @default "actions-allowlist-guard" */
32
- readonly workflowName?: string;
33
- }
34
- export declare class ActionsAllowlistGuard extends Component {
35
- readonly workflow: github.GithubWorkflow;
36
- constructor(scope: github.GitHubProject, options?: ActionsAllowlistGuardOptions);
37
- }
@@ -1,72 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ActionsAllowlistGuard = void 0;
4
- const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
5
- const projen_1 = require("projen");
6
- const constants_1 = require("./constants");
7
- const workflow_purpose_1 = require("./workflow-purpose");
8
- class ActionsAllowlistGuard extends projen_1.Component {
9
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.ActionsAllowlistGuard", version: "0.0.7" };
10
- workflow;
11
- constructor(scope, options = {}) {
12
- super(scope, 'ActionsAllowlistGuard');
13
- const gh = scope.github;
14
- if (!gh) {
15
- throw new Error('ActionsAllowlistGuard requires GitHub integration to be enabled');
16
- }
17
- const gheTokenSecret = options.gheTokenSecret ?? constants_1.DEFAULT_GHE_TOKEN_SECRET;
18
- this.workflow = new projen_1.github.GithubWorkflow(gh, options.workflowName ?? 'actions-allowlist-guard');
19
- (0, workflow_purpose_1.noteWorkflowPurpose)(this.workflow.file, 'Block PRs that reference a GitHub Action outside the org allow-list.');
20
- this.workflow.on({ pullRequestTarget: {} });
21
- this.workflow.addJob('check', {
22
- runsOn: ['ubuntu-latest'],
23
- permissions: {
24
- contents: projen_1.github.workflows.JobPermission.READ,
25
- pullRequests: projen_1.github.workflows.JobPermission.WRITE,
26
- },
27
- env: { GH_TOKEN: `\${{ secrets.${gheTokenSecret} }}` },
28
- steps: [
29
- {
30
- name: 'Enforce action allow-list',
31
- run: `set -uo pipefail
32
- head_sha="\${{ github.event.pull_request.head.sha }}"
33
- pr_number="\${{ github.event.number }}"
34
- repo="\${GITHUB_REPOSITORY}"
35
- # All files at the PR head (recursive tree), narrowed to workflow and
36
- # composite-action files.
37
- files="$(gh api "repos/$repo/git/trees/$head_sha?recursive=1" --jq '.tree[] | select(.type=="blob") | .path' | grep -E '^\\.github/(workflows/[^/]+\\.(yml|yaml)|actions/[^/]+/action\\.(yml|yaml))$' || true)"
38
- violations=()
39
- while IFS= read -r path; do
40
- [ -z "$path" ] && continue
41
- content="$(gh api "repos/$repo/contents/$path?ref=$head_sha" --jq -r '.content' 2>/dev/null | base64 -d 2>/dev/null || true)"
42
- lineno=0
43
- while IFS= read -r line; do
44
- lineno=$((lineno + 1))
45
- value="$(printf '%s\\n' "$line" | sed -n 's/^[[:space:]]*uses:[[:space:]]*//p' | tr -d '\\\"')"
46
- [ -z "$value" ] && continue
47
- case "$value" in
48
- actions/*|docker/*|xpertss/*|.|./*) ;;
49
- *) violations+=(" - $path:$lineno — uses: $value") ;;
50
- esac
51
- done <<< "$content"
52
- done <<< "$files"
53
- if [ "\${#violations[@]}" -gt 0 ]; then
54
- {
55
- echo "❌ Disallowed GitHub Action reference"
56
- echo ""
57
- echo "This PR references an action outside the allow-list:"
58
- echo ""
59
- printf '%s\\n' "\${violations[@]}"
60
- echo ""
61
- echo "Org policy trusts only actions/*, docker/*, and xpertss/*. Use an equivalent internal action, or ask its maintainers to add one."
62
- } | gh pr comment "$pr_number" --body-file - || echo "::warning::could not post PR comment (fork PR or missing token)"
63
- exit 1
64
- fi
65
- `,
66
- },
67
- ],
68
- });
69
- }
70
- }
71
- exports.ActionsAllowlistGuard = ActionsAllowlistGuard;
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy1hbGxvd2xpc3QtZ3VhcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tbW9uL2FjdGlvbnMtYWxsb3dsaXN0LWd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxtQ0FBMkM7QUFDM0MsMkNBQXVEO0FBQ3ZELHlEQUF5RDtBQW9DekQsTUFBYSxxQkFBc0IsU0FBUSxrQkFBUzs7SUFDbEMsUUFBUSxDQUF3QjtJQUVoRCxZQUNFLEtBQTJCLEVBQzNCLFVBQXdDLEVBQUU7UUFFMUMsS0FBSyxDQUFDLEtBQUssRUFBRSx1QkFBdUIsQ0FBQyxDQUFDO1FBRXRDLE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDeEIsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ1IsTUFBTSxJQUFJLEtBQUssQ0FDYixpRUFBaUUsQ0FDbEUsQ0FBQztRQUNKLENBQUM7UUFFRCxNQUFNLGNBQWMsR0FDbEIsT0FBTyxDQUFDLGNBQWMsSUFBSSxvQ0FBd0IsQ0FBQztRQUVyRCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksZUFBTSxDQUFDLGNBQWMsQ0FDdkMsRUFBRSxFQUNGLE9BQU8sQ0FBQyxZQUFZLElBQUkseUJBQXlCLENBQ2xELENBQUM7UUFDRixJQUFBLHNDQUFtQixFQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFDbEIsc0VBQXNFLENBQ3ZFLENBQUM7UUFDRixJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQixFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFO1lBQzVCLE1BQU0sRUFBRSxDQUFDLGVBQWUsQ0FBQztZQUN6QixXQUFXLEVBQUU7Z0JBQ1gsUUFBUSxFQUFFLGVBQU0sQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLElBQUk7Z0JBQzdDLFlBQVksRUFBRSxlQUFNLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxLQUFLO2FBQ25EO1lBQ0QsR0FBRyxFQUFFLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixjQUFjLEtBQUssRUFBRTtZQUN0RCxLQUFLLEVBQUU7Z0JBQ0w7b0JBQ0UsSUFBSSxFQUFFLDJCQUEyQjtvQkFDakMsR0FBRyxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBa0NkO2lCQUNRO2FBQ0Y7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDOztBQTVFSCxzREE2RUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGdpdGh1YiB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBERUZBVUxUX0dIRV9UT0tFTl9TRUNSRVQgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBub3RlV29ya2Zsb3dQdXJwb3NlIH0gZnJvbSAnLi93b3JrZmxvdy1wdXJwb3NlJztcblxuLyoqXG4gKiBCbG9ja2luZywgdGFtcGVyLXByb29mIFBSIGNoZWNrIHRoYXQgc3RvcHMgYSBkaXNhbGxvd2VkIEdpdEh1YiBBY3Rpb25cbiAqIHJlZmVyZW5jZSBmcm9tIGV2ZXIgKHJlKWFwcGVhcmluZyBpbiBhIHJlcG8ncyB3b3JrZmxvdyBvciBjb21wb3NpdGUtYWN0aW9uXG4gKiBmaWxlcy5cbiAqXG4gKiBSdW5zIG9uIGBwdWxsX3JlcXVlc3RfdGFyZ2V0YCBzbyBpdCBhbHdheXMgZXhlY3V0ZXMgdGhlIGNvcHkgb2YgdGhpc1xuICogd29ya2Zsb3cgY29tbWl0dGVkIG9uIHRoZSBiYXNlIGJyYW5jaCAtIGEgUFIgY2Fubm90IGVkaXQgdGhpcyBmaWxlIHRvXG4gKiBkaXNhYmxlIG9yIHdlYWtlbiB0aGUgY2hlY2suIEl0IGNoZWNrcyBvdXQgYW5kIGV4ZWN1dGVzIG5vdGhpbmcgZnJvbSB0aGVcbiAqIFBSOyBpdCBvbmx5IHJlYWRzIHRoZSBQUiBoZWFkJ3MgZmlsZSBjb250ZW50IHZpYSB0aGUgR2l0SHViIEFQSS4gQmVjYXVzZVxuICogYHB1bGxfcmVxdWVzdF90YXJnZXRgIHJ1bnMgd2l0aCB0aGUgYmFzZSByZXBvJ3MgdG9rZW4gZXZlbiBmb3JcbiAqIGZvcmstb3JpZ2luYXRlZCBQUnMsIHRoZSBmYWlsdXJlIGNvbW1lbnQgcG9zdHMgcmVsaWFibHkuXG4gKlxuICAqIEl0IHBlcmZvcm1zIGEgZmxhdCwgdW5jb25kaXRpb25hbCBzY2FuIG9mIHRoZSBQUidzIGhlYWQgcmVmIChub1xuICAqIGJhc2UtdnMtaGVhZCBjb21wYXJpc29uKTogZmV0Y2ggdGhlIGNvbnRlbnQgb2YgZXZlcnkgR2l0SHViIHdvcmtmbG93IGFuZFxuICAqIGNvbXBvc2l0ZS1hY3Rpb24gZmlsZSwgZXh0cmFjdCBldmVyeSBgdXNlczpgIHZhbHVlLCBhbmQgZmFpbCBpZiBhbnkgZG9lc1xuICAqIG5vdCBzdGFydCB3aXRoIG9uZSBvZiB0aGUgdGhyZWUgdHJ1c3RlZCBuYW1lc3BhY2VzIGZyb20gQUQtMDAxXG4gICogKGBhY3Rpb25zL2AsIGBkb2NrZXIvYCwgYHhwZXJ0c3MvYCkuIFRoZSBzaW5nbGVcbiAqIGV4ZW1wdGlvbiBpcyBhIGxvY2FsIHNhbWUtcmVwbyByZWZlcmVuY2UgKGB1c2VzOiAuYCBvclxuICogYHVzZXM6IC4vLmdpdGh1Yi9hY3Rpb25zLzxuYW1lPmApIC0gdGhlIHJlcG8ncyBvd24gaGFuZC1jb21taXR0ZWQgYWN0aW9uLFxuICogdG8gd2hpY2ggdGhlIG9yZyBwb2xpY3kncyBcImFsbG93IHNlbGVjdCBhY3Rpb25zXCIgc2V0dGluZyBkb2VzIG5vdCBhcHBseS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBY3Rpb25zQWxsb3dsaXN0R3VhcmRPcHRpb25zIHtcbiAgLyoqXG4gICAqIEdpdEh1YiBzZWNyZXQgaG9sZGluZyBhIHRva2VuIHdpdGggcGVybWlzc2lvbiB0byBjb21tZW50IG9uIFBScywgdXNlZFxuICAgKiBmb3IgdGhlIGZhaWx1cmUgY29tbWVudC4gVGhlIGNoZWNrIHN0aWxsIGZhaWxzIHdpdGhvdXQgaXQsIHNvIGZvcmsgUFJzIC1cbiAgICogd2hpY2ggZ2V0IG5vIHNlY3JldHMgLSBhcmUgb25seSBtaXNzaW5nIHRoZSBleHRyYSBjb21tZW50LlxuICAgKiBAZGVmYXVsdCBcIlBST0pFTl9HSVRIVUJfVE9LRU5cIlxuICAgKi9cbiAgcmVhZG9ubHkgZ2hlVG9rZW5TZWNyZXQ/OiBzdHJpbmc7XG5cbiAgLyoqIEBkZWZhdWx0IFwiYWN0aW9ucy1hbGxvd2xpc3QtZ3VhcmRcIiAqL1xuICByZWFkb25seSB3b3JrZmxvd05hbWU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBBY3Rpb25zQWxsb3dsaXN0R3VhcmQgZXh0ZW5kcyBDb21wb25lbnQge1xuICBwdWJsaWMgcmVhZG9ubHkgd29ya2Zsb3c6IGdpdGh1Yi5HaXRodWJXb3JrZmxvdztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogZ2l0aHViLkdpdEh1YlByb2plY3QsXG4gICAgb3B0aW9uczogQWN0aW9uc0FsbG93bGlzdEd1YXJkT3B0aW9ucyA9IHt9LFxuICApIHtcbiAgICBzdXBlcihzY29wZSwgJ0FjdGlvbnNBbGxvd2xpc3RHdWFyZCcpO1xuXG4gICAgY29uc3QgZ2ggPSBzY29wZS5naXRodWI7XG4gICAgaWYgKCFnaCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnQWN0aW9uc0FsbG93bGlzdEd1YXJkIHJlcXVpcmVzIEdpdEh1YiBpbnRlZ3JhdGlvbiB0byBiZSBlbmFibGVkJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc3QgZ2hlVG9rZW5TZWNyZXQgPVxuICAgICAgb3B0aW9ucy5naGVUb2tlblNlY3JldCA/PyBERUZBVUxUX0dIRV9UT0tFTl9TRUNSRVQ7XG5cbiAgICB0aGlzLndvcmtmbG93ID0gbmV3IGdpdGh1Yi5HaXRodWJXb3JrZmxvdyhcbiAgICAgIGdoLFxuICAgICAgb3B0aW9ucy53b3JrZmxvd05hbWUgPz8gJ2FjdGlvbnMtYWxsb3dsaXN0LWd1YXJkJyxcbiAgICApO1xuICAgIG5vdGVXb3JrZmxvd1B1cnBvc2UoXG4gICAgICB0aGlzLndvcmtmbG93LmZpbGUsXG4gICAgICAnQmxvY2sgUFJzIHRoYXQgcmVmZXJlbmNlIGEgR2l0SHViIEFjdGlvbiBvdXRzaWRlIHRoZSBvcmcgYWxsb3ctbGlzdC4nLFxuICAgICk7XG4gICAgdGhpcy53b3JrZmxvdy5vbih7IHB1bGxSZXF1ZXN0VGFyZ2V0OiB7fSB9KTtcbiAgICB0aGlzLndvcmtmbG93LmFkZEpvYignY2hlY2snLCB7XG4gICAgICBydW5zT246IFsndWJ1bnR1LWxhdGVzdCddLFxuICAgICAgcGVybWlzc2lvbnM6IHtcbiAgICAgICAgY29udGVudHM6IGdpdGh1Yi53b3JrZmxvd3MuSm9iUGVybWlzc2lvbi5SRUFELFxuICAgICAgICBwdWxsUmVxdWVzdHM6IGdpdGh1Yi53b3JrZmxvd3MuSm9iUGVybWlzc2lvbi5XUklURSxcbiAgICAgIH0sXG4gICAgICBlbnY6IHsgR0hfVE9LRU46IGBcXCR7eyBzZWNyZXRzLiR7Z2hlVG9rZW5TZWNyZXR9IH19YCB9LFxuICAgICAgc3RlcHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICdFbmZvcmNlIGFjdGlvbiBhbGxvdy1saXN0JyxcbiAgICAgICAgICBydW46IGBzZXQgLXVvIHBpcGVmYWlsXG5oZWFkX3NoYT1cIlxcJHt7IGdpdGh1Yi5ldmVudC5wdWxsX3JlcXVlc3QuaGVhZC5zaGEgfX1cIlxucHJfbnVtYmVyPVwiXFwke3sgZ2l0aHViLmV2ZW50Lm51bWJlciB9fVwiXG5yZXBvPVwiXFwke0dJVEhVQl9SRVBPU0lUT1JZfVwiXG4jIEFsbCBmaWxlcyBhdCB0aGUgUFIgaGVhZCAocmVjdXJzaXZlIHRyZWUpLCBuYXJyb3dlZCB0byB3b3JrZmxvdyBhbmRcbiMgY29tcG9zaXRlLWFjdGlvbiBmaWxlcy5cbmZpbGVzPVwiJChnaCBhcGkgXCJyZXBvcy8kcmVwby9naXQvdHJlZXMvJGhlYWRfc2hhP3JlY3Vyc2l2ZT0xXCIgLS1qcSAnLnRyZWVbXSB8IHNlbGVjdCgudHlwZT09XCJibG9iXCIpIHwgLnBhdGgnIHwgZ3JlcCAtRSAnXlxcXFwuZ2l0aHViLyh3b3JrZmxvd3MvW14vXStcXFxcLih5bWx8eWFtbCl8YWN0aW9ucy9bXi9dKy9hY3Rpb25cXFxcLih5bWx8eWFtbCkpJCcgfHwgdHJ1ZSlcIlxudmlvbGF0aW9ucz0oKVxud2hpbGUgSUZTPSByZWFkIC1yIHBhdGg7IGRvXG4gIFsgLXogXCIkcGF0aFwiIF0gJiYgY29udGludWVcbiAgY29udGVudD1cIiQoZ2ggYXBpIFwicmVwb3MvJHJlcG8vY29udGVudHMvJHBhdGg/cmVmPSRoZWFkX3NoYVwiIC0tanEgLXIgJy5jb250ZW50JyAyPi9kZXYvbnVsbCB8IGJhc2U2NCAtZCAyPi9kZXYvbnVsbCB8fCB0cnVlKVwiXG4gIGxpbmVubz0wXG4gIHdoaWxlIElGUz0gcmVhZCAtciBsaW5lOyBkb1xuICAgIGxpbmVubz0kKChsaW5lbm8gKyAxKSlcbiAgICB2YWx1ZT1cIiQocHJpbnRmICclc1xcXFxuJyBcIiRsaW5lXCIgfCBzZWQgLW4gJ3MvXltbOnNwYWNlOl1dKnVzZXM6W1s6c3BhY2U6XV0qLy9wJyB8IHRyIC1kICdcXFxcXFxcIicpXCJcbiAgICBbIC16IFwiJHZhbHVlXCIgXSAmJiBjb250aW51ZVxuICAgIGNhc2UgXCIkdmFsdWVcIiBpblxuICAgICAgYWN0aW9ucy8qfGRvY2tlci8qfHhwZXJ0c3MvKnwufC4vKikgOztcbiAgICAgICopIHZpb2xhdGlvbnMrPShcIiAgLSAkcGF0aDokbGluZW5vIOKAlCB1c2VzOiAkdmFsdWVcIikgOztcbiAgICBlc2FjXG4gIGRvbmUgPDw8IFwiJGNvbnRlbnRcIlxuZG9uZSA8PDwgXCIkZmlsZXNcIlxuaWYgWyBcIlxcJHsjdmlvbGF0aW9uc1tAXX1cIiAtZ3QgMCBdOyB0aGVuXG4gIHtcbiAgICBlY2hvIFwi4p2MIERpc2FsbG93ZWQgR2l0SHViIEFjdGlvbiByZWZlcmVuY2VcIlxuICAgIGVjaG8gXCJcIlxuICAgIGVjaG8gXCJUaGlzIFBSIHJlZmVyZW5jZXMgYW4gYWN0aW9uIG91dHNpZGUgdGhlIGFsbG93LWxpc3Q6XCJcbiAgICBlY2hvIFwiXCJcbiAgICBwcmludGYgJyVzXFxcXG4nIFwiXFwke3Zpb2xhdGlvbnNbQF19XCJcbiAgICBlY2hvIFwiXCJcbiAgICBlY2hvIFwiT3JnIHBvbGljeSB0cnVzdHMgb25seSBhY3Rpb25zLyosIGRvY2tlci8qLCBhbmQgeHBlcnRzcy8qLiBVc2UgYW4gZXF1aXZhbGVudCBpbnRlcm5hbCBhY3Rpb24sIG9yIGFzayBpdHMgbWFpbnRhaW5lcnMgdG8gYWRkIG9uZS5cIlxuICB9IHwgZ2ggcHIgY29tbWVudCBcIiRwcl9udW1iZXJcIiAtLWJvZHktZmlsZSAtIHx8IGVjaG8gXCI6Ondhcm5pbmc6OmNvdWxkIG5vdCBwb3N0IFBSIGNvbW1lbnQgKGZvcmsgUFIgb3IgbWlzc2luZyB0b2tlbilcIlxuICBleGl0IDFcbmZpXG5gLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9KTtcbiAgfVxufVxuIl19