@fjall/components-infrastructure 0.1.10 → 0.1.11

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 (118) hide show
  1. package/dist/lib/app.d.ts +2 -1
  2. package/dist/lib/app.js +4 -2
  3. package/dist/lib/config/aws/accountId.d.ts +6 -0
  4. package/dist/lib/config/aws/accountId.js +33 -0
  5. package/dist/lib/config/aws/cloudTrail.d.ts +10 -0
  6. package/dist/lib/config/aws/cloudTrail.js +22 -0
  7. package/dist/lib/config/aws/costAllocationTags.d.ts +2 -3
  8. package/dist/lib/config/aws/costAllocationTags.js +6 -5
  9. package/dist/lib/config/aws/ecrDefaultImage.d.ts +11 -0
  10. package/dist/lib/config/aws/ecrDefaultImage.js +127 -0
  11. package/dist/lib/config/aws/eventBus.d.ts +7 -0
  12. package/dist/lib/config/aws/eventBus.js +24 -0
  13. package/dist/lib/config/aws/identityCenter.d.ts +11 -3
  14. package/dist/lib/config/aws/identityCenter.js +24 -29
  15. package/dist/lib/config/aws/identityCenterUser.d.ts +16 -0
  16. package/dist/lib/config/aws/identityCenterUser.js +125 -0
  17. package/dist/lib/config/aws/index.d.ts +8 -4
  18. package/dist/lib/config/aws/index.js +9 -5
  19. package/dist/lib/config/aws/ipam.d.ts +2 -2
  20. package/dist/lib/config/aws/ipam.js +25 -7
  21. package/dist/lib/config/aws/ipamDelegateAdmin.d.ts +4 -5
  22. package/dist/lib/config/aws/ipamDelegateAdmin.js +9 -13
  23. package/dist/lib/config/aws/ipamPoolId.d.ts +9 -0
  24. package/dist/lib/config/aws/ipamPoolId.js +36 -0
  25. package/dist/lib/config/aws/organisation.d.ts +28 -0
  26. package/dist/lib/config/aws/organisation.js +142 -0
  27. package/dist/lib/config/aws/organisationId.d.ts +4 -2
  28. package/dist/lib/config/aws/organisationId.js +13 -7
  29. package/dist/lib/config/aws/ramSharing.d.ts +4 -0
  30. package/dist/lib/config/aws/ramSharing.js +35 -0
  31. package/dist/lib/patterns/aws/basicApp.d.ts +2 -2
  32. package/dist/lib/patterns/aws/basicApp.js +15 -15
  33. package/dist/lib/patterns/aws/buildkite.d.ts +3 -3
  34. package/dist/lib/patterns/aws/buildkite.js +9 -7
  35. package/dist/lib/patterns/aws/freeTierApp.d.ts +46 -0
  36. package/dist/lib/patterns/aws/freeTierApp.js +95 -0
  37. package/dist/lib/patterns/aws/hostedZone.d.ts +11 -0
  38. package/dist/lib/patterns/aws/hostedZone.js +73 -0
  39. package/dist/lib/patterns/aws/index.d.ts +3 -0
  40. package/dist/lib/patterns/aws/index.js +4 -1
  41. package/dist/lib/patterns/aws/managedAccount.d.ts +13 -0
  42. package/dist/lib/patterns/aws/managedAccount.js +39 -0
  43. package/dist/lib/patterns/aws/managedOrganisation.d.ts +9 -21
  44. package/dist/lib/patterns/aws/managedOrganisation.js +33 -147
  45. package/dist/lib/patterns/aws/managedPlatform.d.ts +13 -0
  46. package/dist/lib/patterns/aws/managedPlatform.js +22 -0
  47. package/dist/lib/patterns/aws/spotInstanceApp.d.ts +46 -0
  48. package/dist/lib/patterns/aws/spotInstanceApp.js +95 -0
  49. package/dist/lib/patterns/aws/subdomainHostedZone.d.ts +9 -0
  50. package/dist/lib/patterns/aws/subdomainHostedZone.js +39 -0
  51. package/dist/lib/resources/aws/compute/ecs.d.ts +2 -4
  52. package/dist/lib/resources/aws/compute/ecs.js +10 -6
  53. package/dist/lib/resources/aws/compute/ecsFreeTier.d.ts +76 -0
  54. package/dist/lib/resources/aws/compute/ecsFreeTier.js +352 -0
  55. package/dist/lib/resources/aws/compute/ecsSpot.d.ts +76 -0
  56. package/dist/lib/resources/aws/compute/ecsSpot.js +334 -0
  57. package/dist/lib/resources/aws/compute/index.d.ts +2 -0
  58. package/dist/lib/resources/aws/compute/index.js +19 -0
  59. package/dist/lib/resources/aws/compute/lambda.d.ts +7 -7
  60. package/dist/lib/resources/aws/compute/lambda.js +8 -7
  61. package/dist/lib/resources/aws/database/database.d.ts +16 -0
  62. package/dist/lib/resources/aws/database/database.js +30 -0
  63. package/dist/lib/resources/aws/database/databaseFreeTier.d.ts +17 -0
  64. package/dist/lib/resources/aws/database/databaseFreeTier.js +31 -0
  65. package/dist/lib/resources/aws/database/databaseInstance.d.ts +17 -0
  66. package/dist/lib/resources/aws/database/databaseInstance.js +32 -0
  67. package/dist/lib/resources/aws/database/index.d.ts +2 -0
  68. package/dist/lib/resources/aws/database/index.js +19 -0
  69. package/dist/lib/resources/aws/database/rds.d.ts +23 -0
  70. package/dist/lib/resources/aws/database/rds.js +130 -0
  71. package/dist/lib/resources/aws/database/rdsFreeTier.d.ts +36 -0
  72. package/dist/lib/resources/aws/database/rdsFreeTier.js +80 -0
  73. package/dist/lib/resources/aws/database/rdsInstance.d.ts +42 -0
  74. package/dist/lib/resources/aws/database/rdsInstance.js +173 -0
  75. package/dist/lib/resources/aws/logging/cloudTrail.d.ts +18 -0
  76. package/dist/lib/resources/aws/logging/cloudTrail.js +46 -0
  77. package/dist/lib/resources/aws/logging/logGroup.d.ts +3 -3
  78. package/dist/lib/resources/aws/logging/logGroup.js +3 -3
  79. package/dist/lib/resources/aws/networking/index.d.ts +1 -1
  80. package/dist/lib/resources/aws/networking/index.js +2 -2
  81. package/dist/lib/resources/aws/networking/ipamPool.d.ts +16 -3
  82. package/dist/lib/resources/aws/networking/ipamPool.js +75 -6
  83. package/dist/lib/resources/aws/networking/vpc.d.ts +29 -0
  84. package/dist/lib/resources/aws/networking/vpc.js +64 -0
  85. package/dist/lib/resources/aws/secrets/alias.d.ts +5 -0
  86. package/dist/lib/resources/aws/secrets/alias.js +13 -0
  87. package/dist/lib/resources/aws/secrets/index.d.ts +5 -0
  88. package/dist/lib/resources/aws/secrets/index.js +22 -0
  89. package/dist/lib/resources/aws/secrets/kms.d.ts +14 -0
  90. package/dist/lib/resources/aws/secrets/kms.js +34 -0
  91. package/dist/lib/resources/aws/secrets/parameter.d.ts +26 -0
  92. package/dist/lib/resources/aws/secrets/parameter.js +100 -0
  93. package/dist/lib/resources/aws/secrets/secret.d.ts +24 -0
  94. package/dist/lib/resources/aws/secrets/secret.js +53 -0
  95. package/dist/lib/resources/aws/storage/ecr.d.ts +12 -0
  96. package/dist/lib/resources/aws/storage/ecr.js +31 -0
  97. package/dist/lib/resources/aws/storage/index.d.ts +2 -0
  98. package/dist/lib/resources/aws/storage/index.js +19 -0
  99. package/dist/lib/resources/aws/storage/s3.d.ts +11 -0
  100. package/dist/lib/resources/aws/storage/s3.js +44 -0
  101. package/dist/lib/resources/aws/utilities/codeBuild.d.ts +15 -0
  102. package/dist/lib/resources/aws/utilities/codeBuild.js +28 -0
  103. package/dist/lib/resources/aws/utilities/customResource.js +2 -2
  104. package/dist/lib/types.d.ts +3 -0
  105. package/dist/lib/types.js +3 -0
  106. package/dist/lib/utils/capitalizeString.d.ts +1 -0
  107. package/dist/lib/utils/capitalizeString.js +8 -0
  108. package/dist/lib/utils/getAccountId.d.ts +1 -1
  109. package/dist/lib/utils/getAccountId.js +3 -2
  110. package/dist/lib/utils/getCidr.d.ts +8 -0
  111. package/dist/lib/utils/getCidr.js +42 -0
  112. package/dist/lib/utils/getConfig.d.ts +3 -2
  113. package/dist/lib/utils/getConfig.js +20 -6
  114. package/dist/lib/utils/stripAndCamelCase.d.ts +1 -0
  115. package/dist/lib/utils/stripAndCamelCase.js +17 -0
  116. package/dist/lib/utils/usersConfig.d.ts +7 -0
  117. package/dist/lib/utils/usersConfig.js +18 -0
  118. package/package.json +2 -2
@@ -6,13 +6,20 @@ const util_1 = require("@fjall/util");
6
6
  function getEnviornmentConfig(environment) {
7
7
  const config = util_1.Config.loadConfig();
8
8
  const providerAccount = config.getProviderAccount(environment);
9
+ const region = process.env.AWS_REGION;
9
10
  if (!providerAccount) {
10
- console.warn(`No provider account found for environment: ${environment}`);
11
+ console.error(`No provider account found for environment: ${environment}`);
11
12
  throw new Error(`No provider account found for environment: ${environment}`);
12
13
  }
14
+ if (!region) {
15
+ console.error("Variable AWS_REGION is not set in your environment, please specify");
16
+ throw new Error("Variable AWS_REGION is not set in your environment, please specify");
17
+ }
13
18
  return {
14
19
  environment: environment,
15
- account: providerAccount.id
20
+ account: providerAccount.id,
21
+ accountName: providerAccount.name,
22
+ region: region
16
23
  };
17
24
  }
18
25
  exports.getEnviornmentConfig = getEnviornmentConfig;
@@ -22,15 +29,22 @@ function getConfig() {
22
29
  const env = app.node.tryGetContext("environment");
23
30
  const config = util_1.Config.loadConfig();
24
31
  const providerAccount = config.getProviderAccount(env);
32
+ const region = process.env.AWS_REGION;
25
33
  if (!providerAccount) {
26
- console.warn(`No provider account found for environment: ${env}. Defaulting to no account`);
27
- // throw new Error(`No provider account found for environment: ${env}`);
34
+ console.warn(`No provider account found for environment: ${env}`);
35
+ throw new Error(`No provider account found for environment: ${env}`);
36
+ }
37
+ if (!region) {
38
+ console.error("Variable AWS_REGION is not set in your environment");
39
+ throw new Error("Variable AWS_REGION is not set in your environment");
28
40
  }
29
41
  return {
30
42
  environment: env,
31
- account: providerAccount?.id
43
+ account: providerAccount.id,
44
+ accountName: providerAccount.name,
45
+ region: region
32
46
  };
33
47
  }
34
48
  exports.getConfig = getConfig;
35
49
  exports.default = getConfig;
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0Q29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL3V0aWxzL2dldENvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxnQ0FBeUI7QUFDekIsc0NBQW9EO0FBUXBELFNBQWdCLG9CQUFvQixDQUFDLFdBQW1CO0lBQ3RELE1BQU0sTUFBTSxHQUFHLGFBQVcsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN4QyxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFL0QsSUFBSSxDQUFDLGVBQWUsRUFBRTtRQUNwQixPQUFPLENBQUMsSUFBSSxDQUFDLDhDQUE4QyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQzFFLE1BQU0sSUFBSSxLQUFLLENBQ2IsOENBQThDLFdBQVcsRUFBRSxDQUM1RCxDQUFDO0tBQ0g7SUFFRCxPQUFPO1FBQ0wsV0FBVyxFQUFFLFdBQVc7UUFDeEIsT0FBTyxFQUFFLGVBQWUsQ0FBQyxFQUFFO0tBQzVCLENBQUM7QUFDSixDQUFDO0FBZkQsb0RBZUM7QUFFRCxTQUFnQixTQUFTO0lBQ3ZCLE1BQU0sR0FBRyxHQUFHLGFBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUU5QixrQ0FBa0M7SUFDbEMsTUFBTSxHQUFHLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLENBQUM7SUFFbEQsTUFBTSxNQUFNLEdBQUcsYUFBVyxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3hDLE1BQU0sZUFBZSxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUV2RCxJQUFJLENBQUMsZUFBZSxFQUFFO1FBQ3BCLE9BQU8sQ0FBQyxJQUFJLENBQUMsOENBQThDLEdBQUcsNEJBQTRCLENBQUMsQ0FBQztRQUM5RiwwRUFBMEU7S0FDekU7SUFFRCxPQUFPO1FBQ0wsV0FBVyxFQUFFLEdBQUc7UUFDaEIsT0FBTyxFQUFFLGVBQWUsRUFBRSxFQUFFO0tBQzdCLENBQUM7QUFDSixDQUFDO0FBbEJELDhCQWtCQztBQUNELGtCQUFlLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBBcHAgZnJvbSBcIi4uL2FwcFwiO1xuaW1wb3J0IHsgQ29uZmlnIGFzIEZqYWxsQ29uZmlnIH0gZnJvbSBcIkBmamFsbC91dGlsXCI7XG5cbmludGVyZmFjZSBDb25maWcge1xuICBlbnZpcm9ubWVudDogc3RyaW5nO1xuICBhY2NvdW50Pzogc3RyaW5nO1xuICByZWdpb24/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRFbnZpb3JubWVudENvbmZpZyhlbnZpcm9ubWVudDogc3RyaW5nKTogQ29uZmlnIHtcbiAgY29uc3QgY29uZmlnID0gRmphbGxDb25maWcubG9hZENvbmZpZygpO1xuICBjb25zdCBwcm92aWRlckFjY291bnQgPSBjb25maWcuZ2V0UHJvdmlkZXJBY2NvdW50KGVudmlyb25tZW50KTtcblxuICBpZiAoIXByb3ZpZGVyQWNjb3VudCkge1xuICAgIGNvbnNvbGUud2FybihgTm8gcHJvdmlkZXIgYWNjb3VudCBmb3VuZCBmb3IgZW52aXJvbm1lbnQ6ICR7ZW52aXJvbm1lbnR9YCk7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgYE5vIHByb3ZpZGVyIGFjY291bnQgZm91bmQgZm9yIGVudmlyb25tZW50OiAke2Vudmlyb25tZW50fWBcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBlbnZpcm9ubWVudDogZW52aXJvbm1lbnQsXG4gICAgYWNjb3VudDogcHJvdmlkZXJBY2NvdW50LmlkXG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRDb25maWcoKTogQ29uZmlnIHtcbiAgY29uc3QgYXBwID0gQXBwLmdldEluc3RhbmNlKCk7XG5cbiAgLy8gR2V0IGNkayBkZXBsb3kgLS1jb250ZXh0IGNvbmZpZ1xuICBjb25zdCBlbnYgPSBhcHAubm9kZS50cnlHZXRDb250ZXh0KFwiZW52aXJvbm1lbnRcIik7XG5cbiAgY29uc3QgY29uZmlnID0gRmphbGxDb25maWcubG9hZENvbmZpZygpO1xuICBjb25zdCBwcm92aWRlckFjY291bnQgPSBjb25maWcuZ2V0UHJvdmlkZXJBY2NvdW50KGVudik7XG5cbiAgaWYgKCFwcm92aWRlckFjY291bnQpIHtcbiAgICBjb25zb2xlLndhcm4oYE5vIHByb3ZpZGVyIGFjY291bnQgZm91bmQgZm9yIGVudmlyb25tZW50OiAke2Vudn0uIERlZmF1bHRpbmcgdG8gbm8gYWNjb3VudGApO1xuICAvLyAgIHRocm93IG5ldyBFcnJvcihgTm8gcHJvdmlkZXIgYWNjb3VudCBmb3VuZCBmb3IgZW52aXJvbm1lbnQ6ICR7ZW52fWApO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBlbnZpcm9ubWVudDogZW52LFxuICAgIGFjY291bnQ6IHByb3ZpZGVyQWNjb3VudD8uaWRcbiAgfTtcbn1cbmV4cG9ydCBkZWZhdWx0IGdldENvbmZpZztcbiJdfQ==
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0Q29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL3V0aWxzL2dldENvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxnQ0FBeUI7QUFDekIsc0NBQW9EO0FBU3BELFNBQWdCLG9CQUFvQixDQUFDLFdBQW1CO0lBQ3RELE1BQU0sTUFBTSxHQUFHLGFBQVcsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN4QyxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDL0QsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUM7SUFFdEMsSUFBSSxDQUFDLGVBQWUsRUFBRTtRQUNwQixPQUFPLENBQUMsS0FBSyxDQUFDLDhDQUE4QyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQzNFLE1BQU0sSUFBSSxLQUFLLENBQ2IsOENBQThDLFdBQVcsRUFBRSxDQUM1RCxDQUFDO0tBQ0g7SUFFRCxJQUFJLENBQUMsTUFBTSxFQUFFO1FBQ1gsT0FBTyxDQUFDLEtBQUssQ0FDWCxvRUFBb0UsQ0FDckUsQ0FBQztRQUNGLE1BQU0sSUFBSSxLQUFLLENBQ2Isb0VBQW9FLENBQ3JFLENBQUM7S0FDSDtJQUVELE9BQU87UUFDTCxXQUFXLEVBQUUsV0FBVztRQUN4QixPQUFPLEVBQUUsZUFBZSxDQUFDLEVBQUU7UUFDM0IsV0FBVyxFQUFFLGVBQWUsQ0FBQyxJQUFJO1FBQ2pDLE1BQU0sRUFBRSxNQUFNO0tBQ2YsQ0FBQztBQUNKLENBQUM7QUEzQkQsb0RBMkJDO0FBRUQsU0FBZ0IsU0FBUztJQUN2QixNQUFNLEdBQUcsR0FBRyxhQUFHLENBQUMsV0FBVyxFQUFFLENBQUM7SUFFOUIsa0NBQWtDO0lBQ2xDLE1BQU0sR0FBRyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBRWxELE1BQU0sTUFBTSxHQUFHLGFBQVcsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN4QyxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdkQsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUM7SUFFdEMsSUFBSSxDQUFDLGVBQWUsRUFBRTtRQUNwQixPQUFPLENBQUMsSUFBSSxDQUFDLDhDQUE4QyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQ2xFLE1BQU0sSUFBSSxLQUFLLENBQUMsOENBQThDLEdBQUcsRUFBRSxDQUFDLENBQUM7S0FDdEU7SUFFRCxJQUFJLENBQUMsTUFBTSxFQUFFO1FBQ1gsT0FBTyxDQUFDLEtBQUssQ0FBQyxvREFBb0QsQ0FBQyxDQUFDO1FBQ3BFLE1BQU0sSUFBSSxLQUFLLENBQUMsb0RBQW9ELENBQUMsQ0FBQztLQUN2RTtJQUVELE9BQU87UUFDTCxXQUFXLEVBQUUsR0FBRztRQUNoQixPQUFPLEVBQUUsZUFBZSxDQUFDLEVBQUU7UUFDM0IsV0FBVyxFQUFFLGVBQWUsQ0FBQyxJQUFJO1FBQ2pDLE1BQU0sRUFBRSxNQUFNO0tBQ2YsQ0FBQztBQUNKLENBQUM7QUExQkQsOEJBMEJDO0FBQ0Qsa0JBQWUsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEFwcCBmcm9tIFwiLi4vYXBwXCI7XG5pbXBvcnQgeyBDb25maWcgYXMgRmphbGxDb25maWcgfSBmcm9tIFwiQGZqYWxsL3V0aWxcIjtcblxuaW50ZXJmYWNlIENvbmZpZyB7XG4gIGVudmlyb25tZW50OiBzdHJpbmc7XG4gIGFjY291bnQ6IHN0cmluZztcbiAgYWNjb3VudE5hbWU6IHN0cmluZztcbiAgcmVnaW9uOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRFbnZpb3JubWVudENvbmZpZyhlbnZpcm9ubWVudDogc3RyaW5nKTogQ29uZmlnIHtcbiAgY29uc3QgY29uZmlnID0gRmphbGxDb25maWcubG9hZENvbmZpZygpO1xuICBjb25zdCBwcm92aWRlckFjY291bnQgPSBjb25maWcuZ2V0UHJvdmlkZXJBY2NvdW50KGVudmlyb25tZW50KTtcbiAgY29uc3QgcmVnaW9uID0gcHJvY2Vzcy5lbnYuQVdTX1JFR0lPTjtcblxuICBpZiAoIXByb3ZpZGVyQWNjb3VudCkge1xuICAgIGNvbnNvbGUuZXJyb3IoYE5vIHByb3ZpZGVyIGFjY291bnQgZm91bmQgZm9yIGVudmlyb25tZW50OiAke2Vudmlyb25tZW50fWApO1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIGBObyBwcm92aWRlciBhY2NvdW50IGZvdW5kIGZvciBlbnZpcm9ubWVudDogJHtlbnZpcm9ubWVudH1gXG4gICAgKTtcbiAgfVxuXG4gIGlmICghcmVnaW9uKSB7XG4gICAgY29uc29sZS5lcnJvcihcbiAgICAgIFwiVmFyaWFibGUgQVdTX1JFR0lPTiBpcyBub3Qgc2V0IGluIHlvdXIgZW52aXJvbm1lbnQsIHBsZWFzZSBzcGVjaWZ5XCJcbiAgICApO1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIFwiVmFyaWFibGUgQVdTX1JFR0lPTiBpcyBub3Qgc2V0IGluIHlvdXIgZW52aXJvbm1lbnQsIHBsZWFzZSBzcGVjaWZ5XCJcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBlbnZpcm9ubWVudDogZW52aXJvbm1lbnQsXG4gICAgYWNjb3VudDogcHJvdmlkZXJBY2NvdW50LmlkLFxuICAgIGFjY291bnROYW1lOiBwcm92aWRlckFjY291bnQubmFtZSxcbiAgICByZWdpb246IHJlZ2lvblxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29uZmlnKCk6IENvbmZpZyB7XG4gIGNvbnN0IGFwcCA9IEFwcC5nZXRJbnN0YW5jZSgpO1xuXG4gIC8vIEdldCBjZGsgZGVwbG95IC0tY29udGV4dCBjb25maWdcbiAgY29uc3QgZW52ID0gYXBwLm5vZGUudHJ5R2V0Q29udGV4dChcImVudmlyb25tZW50XCIpO1xuXG4gIGNvbnN0IGNvbmZpZyA9IEZqYWxsQ29uZmlnLmxvYWRDb25maWcoKTtcbiAgY29uc3QgcHJvdmlkZXJBY2NvdW50ID0gY29uZmlnLmdldFByb3ZpZGVyQWNjb3VudChlbnYpO1xuICBjb25zdCByZWdpb24gPSBwcm9jZXNzLmVudi5BV1NfUkVHSU9OO1xuXG4gIGlmICghcHJvdmlkZXJBY2NvdW50KSB7XG4gICAgY29uc29sZS53YXJuKGBObyBwcm92aWRlciBhY2NvdW50IGZvdW5kIGZvciBlbnZpcm9ubWVudDogJHtlbnZ9YCk7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBObyBwcm92aWRlciBhY2NvdW50IGZvdW5kIGZvciBlbnZpcm9ubWVudDogJHtlbnZ9YCk7XG4gIH1cblxuICBpZiAoIXJlZ2lvbikge1xuICAgIGNvbnNvbGUuZXJyb3IoXCJWYXJpYWJsZSBBV1NfUkVHSU9OIGlzIG5vdCBzZXQgaW4geW91ciBlbnZpcm9ubWVudFwiKTtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJWYXJpYWJsZSBBV1NfUkVHSU9OIGlzIG5vdCBzZXQgaW4geW91ciBlbnZpcm9ubWVudFwiKTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgZW52aXJvbm1lbnQ6IGVudixcbiAgICBhY2NvdW50OiBwcm92aWRlckFjY291bnQuaWQsXG4gICAgYWNjb3VudE5hbWU6IHByb3ZpZGVyQWNjb3VudC5uYW1lLFxuICAgIHJlZ2lvbjogcmVnaW9uXG4gIH07XG59XG5leHBvcnQgZGVmYXVsdCBnZXRDb25maWc7XG4iXX0=
@@ -0,0 +1 @@
1
+ export declare function stripAndCamelCase(input: string): string;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.stripAndCamelCase = void 0;
4
+ function stripAndCamelCase(input) {
5
+ const lettersOnly = input.replace(/[^a-zA-Z]/g, " ");
6
+ return lettersOnly
7
+ .split(" ")
8
+ .map((word, index) => {
9
+ if (index === 0) {
10
+ return word.toLowerCase();
11
+ }
12
+ return word.charAt(0).toUpperCase() + word.slice(1).toLowerCase();
13
+ })
14
+ .join("");
15
+ }
16
+ exports.stripAndCamelCase = stripAndCamelCase;
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaXBBbmRDYW1lbENhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvdXRpbHMvc3RyaXBBbmRDYW1lbENhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsU0FBZ0IsaUJBQWlCLENBQUMsS0FBYTtJQUM3QyxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNyRCxPQUFPLFdBQVc7U0FDZixLQUFLLENBQUMsR0FBRyxDQUFDO1NBQ1YsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFO1FBQ25CLElBQUksS0FBSyxLQUFLLENBQUMsRUFBRTtZQUNmLE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQzNCO1FBQ0QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDcEUsQ0FBQyxDQUFDO1NBQ0QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQ2QsQ0FBQztBQVhELDhDQVdDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIHN0cmlwQW5kQ2FtZWxDYXNlKGlucHV0OiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBsZXR0ZXJzT25seSA9IGlucHV0LnJlcGxhY2UoL1teYS16QS1aXS9nLCBcIiBcIik7XG4gIHJldHVybiBsZXR0ZXJzT25seVxuICAgIC5zcGxpdChcIiBcIilcbiAgICAubWFwKCh3b3JkLCBpbmRleCkgPT4ge1xuICAgICAgaWYgKGluZGV4ID09PSAwKSB7XG4gICAgICAgIHJldHVybiB3b3JkLnRvTG93ZXJDYXNlKCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gd29yZC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHdvcmQuc2xpY2UoMSkudG9Mb3dlckNhc2UoKTtcbiAgICB9KVxuICAgIC5qb2luKFwiXCIpO1xufVxuIl19
@@ -0,0 +1,7 @@
1
+ import { User } from "../config/aws/identityCenterUser";
2
+ export default class UsersConfig {
3
+ private configFile;
4
+ users: User[];
5
+ constructor();
6
+ getUsers(): User[];
7
+ }
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const fs = require("fs");
4
+ class UsersConfig {
5
+ constructor() {
6
+ this.configFile = ".fjall/.users-config.json";
7
+ if (!fs.existsSync(this.configFile)) {
8
+ throw new Error(`Config file ${this.configFile} does not exist`);
9
+ }
10
+ const fileContent = fs.readFileSync(this.configFile, "utf-8");
11
+ this.users = JSON.parse(fileContent);
12
+ }
13
+ getUsers() {
14
+ return this.users;
15
+ }
16
+ }
17
+ exports.default = UsersConfig;
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlcnNDb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvdXRpbHMvdXNlcnNDb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSx5QkFBeUI7QUFHekIsTUFBcUIsV0FBVztJQUk5QjtRQUhRLGVBQVUsR0FBRywyQkFBMkIsQ0FBQztRQUkvQyxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxlQUFlLElBQUksQ0FBQyxVQUFVLGlCQUFpQixDQUFDLENBQUM7U0FDbEU7UUFFRCxNQUFNLFdBQVcsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDOUQsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7Q0FDRjtBQWhCRCw4QkFnQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tIFwiZnNcIjtcbmltcG9ydCB7IFVzZXIgfSBmcm9tIFwiLi4vY29uZmlnL2F3cy9pZGVudGl0eUNlbnRlclVzZXJcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVXNlcnNDb25maWcge1xuICBwcml2YXRlIGNvbmZpZ0ZpbGUgPSBcIi5mamFsbC8udXNlcnMtY29uZmlnLmpzb25cIjtcbiAgcHVibGljIHVzZXJzOiBVc2VyW107XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgaWYgKCFmcy5leGlzdHNTeW5jKHRoaXMuY29uZmlnRmlsZSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQ29uZmlnIGZpbGUgJHt0aGlzLmNvbmZpZ0ZpbGV9IGRvZXMgbm90IGV4aXN0YCk7XG4gICAgfVxuXG4gICAgY29uc3QgZmlsZUNvbnRlbnQgPSBmcy5yZWFkRmlsZVN5bmModGhpcy5jb25maWdGaWxlLCBcInV0Zi04XCIpO1xuICAgIHRoaXMudXNlcnMgPSBKU09OLnBhcnNlKGZpbGVDb250ZW50KTtcbiAgfVxuXG4gIGdldFVzZXJzKCkge1xuICAgIHJldHVybiB0aGlzLnVzZXJzO1xuICB9XG59XG4iXX0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fjall/components-infrastructure",
3
- "version": "0.1.10",
3
+ "version": "0.1.11",
4
4
  "bin": {
5
5
  "infrastructure": "bin/infrastructure.js"
6
6
  },
@@ -54,7 +54,7 @@
54
54
  },
55
55
  "dependencies": {
56
56
  "@aws-sdk/client-cost-explorer": "^3.245.0",
57
- "@fjall/util": "^0.1.10",
57
+ "@fjall/util": "file:../../util",
58
58
  "@pepperize/cdk-organizations": "^0.7.135",
59
59
  "aws-cdk": "^2.146.0",
60
60
  "aws-cdk-lib": "^2.146.0",