projalf 0.0.6 → 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.jsii CHANGED
@@ -119,7 +119,7 @@
119
119
  },
120
120
  "locationInModule": {
121
121
  "filename": "src/Projalf.ts",
122
- "line": 8
122
+ "line": 9
123
123
  },
124
124
  "parameters": [
125
125
  {
@@ -133,7 +133,7 @@
133
133
  "kind": "class",
134
134
  "locationInModule": {
135
135
  "filename": "src/Projalf.ts",
136
- "line": 7
136
+ "line": 8
137
137
  },
138
138
  "name": "Projalf",
139
139
  "symbolId": "src/Projalf:Projalf"
@@ -151,12 +151,12 @@
151
151
  "kind": "interface",
152
152
  "locationInModule": {
153
153
  "filename": "src/Projalf.ts",
154
- "line": 5
154
+ "line": 6
155
155
  },
156
156
  "name": "ProjalfOptions",
157
157
  "symbolId": "src/Projalf:ProjalfOptions"
158
158
  }
159
159
  },
160
160
  "version": "0.0.0",
161
- "fingerprint": "4uffwuxPP2iOBkqQhQeQV1ju+e8swpOB1iA0mCR8QnI="
161
+ "fingerprint": "uysqT9WQFFtB5OEgulZj4lIA+ewTw3z5iKeXG/N1Yac="
162
162
  }
package/lib/Projalf.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { awscdk } from "projen";
1
+ import { awscdk } from 'projen';
2
2
  export interface ProjalfOptions extends awscdk.AwsCdkTypeScriptAppOptions {
3
3
  }
4
4
  export declare class Projalf extends awscdk.AwsCdkTypeScriptApp {
package/lib/Projalf.js CHANGED
@@ -6,6 +6,7 @@ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
6
  const cp = require("child_process");
7
7
  const path = require("path");
8
8
  const projen_1 = require("projen");
9
+ const files_1 = require("./files");
9
10
  class Projalf extends projen_1.awscdk.AwsCdkTypeScriptApp {
10
11
  constructor(options) {
11
12
  const inferredName = options.name ?? inferNameFromGit() ?? inferNameFromCwd();
@@ -18,51 +19,15 @@ class Projalf extends projen_1.awscdk.AwsCdkTypeScriptApp {
18
19
  super({
19
20
  ...options,
20
21
  name: inferredName,
21
- defaultReleaseBranch: options.defaultReleaseBranch ?? "main",
22
+ defaultReleaseBranch: options.defaultReleaseBranch ?? 'main',
22
23
  packageManager: options.packageManager ?? projen_1.javascript.NodePackageManager.NPM,
23
24
  projenrcTs: options.projenrcTs ?? true,
24
- cdkVersion: options.cdkVersion ?? "2.156.0",
25
- appEntrypoint: options.appEntrypoint ?? "src/main.ts",
25
+ cdkVersion: options.cdkVersion ?? '2.156.0',
26
26
  context: mergedContext,
27
27
  deps: options.deps ?? [],
28
28
  devDeps: options.devDeps ?? [],
29
29
  });
30
- new projen_1.SampleFile(this, `src/${fileBase}.ts`, {
31
- contents: `import * as cdk from 'aws-cdk-lib';
32
- import { Construct } from 'constructs';
33
-
34
- export interface ${className}Props extends cdk.StackProps {
35
- serviceName: string;
36
- }
37
-
38
- export class ${className} extends cdk.Stack {
39
- constructor(scope: Construct, id: string, props: ${className}Props) {
40
- super(scope, id, props);
41
- }
42
- }
43
- `,
44
- });
45
- this.tryRemoveFile("src/main.ts");
46
- // Force-replace default entrypoint with our customized main.ts
47
- new projen_1.TextFile(this, "src/main.ts", {
48
- lines: [
49
- "import * as cdk from 'aws-cdk-lib';",
50
- `import { ${className} } from './${fileBase}';`,
51
- "",
52
- "const env = {",
53
- " account: process.env.CDK_DEPLOY_ACCOUNT ?? process.env.CDK_DEFAULT_ACCOUNT,",
54
- " region: process.env.CDK_DEPLOY_REGION ?? process.env.CDK_DEFAULT_REGION,",
55
- "};",
56
- "",
57
- "const app = new cdk.App();",
58
- "",
59
- `const serviceName = (app.node.tryGetContext('serviceName') as string | undefined) ?? '${inferredName}';`,
60
- "",
61
- `new ${className}(app, serviceName, { env, serviceName });`,
62
- "",
63
- "app.synth();",
64
- ],
65
- });
30
+ new files_1.SampleCode(this, className, fileBase, inferredName);
66
31
  }
67
32
  }
68
33
  exports.Projalf = Projalf;
@@ -71,8 +36,8 @@ Projalf[_a] = { fqn: "projalf.Projalf", version: "0.0.0" };
71
36
  function inferNameFromGit() {
72
37
  try {
73
38
  const remote = cp
74
- .execSync("git config --get remote.origin.url", {
75
- stdio: ["ignore", "pipe", "ignore"],
39
+ .execSync('git config --get remote.origin.url', {
40
+ stdio: ['ignore', 'pipe', 'ignore'],
76
41
  })
77
42
  .toString()
78
43
  .trim();
@@ -90,10 +55,10 @@ function inferNameFromCwd() {
90
55
  }
91
56
  function toPascalCase(input) {
92
57
  return input
93
- .replace(/[^a-zA-Z0-9]+/g, " ")
94
- .split(" ")
58
+ .replace(/[^a-zA-Z0-9]+/g, ' ')
59
+ .split(' ')
95
60
  .filter(Boolean)
96
61
  .map((part) => part.charAt(0).toUpperCase() + part.slice(1).toLowerCase())
97
- .join("");
62
+ .join('');
98
63
  }
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvamFsZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Qcm9qYWxmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsb0NBQW9DO0FBQ3BDLDZCQUE2QjtBQUM3QixtQ0FBa0U7QUFJbEUsTUFBYSxPQUFRLFNBQVEsZUFBTSxDQUFDLG1CQUFtQjtJQUNyRCxZQUFZLE9BQXVCO1FBQ2pDLE1BQU0sWUFBWSxHQUNoQixPQUFPLENBQUMsSUFBSSxJQUFJLGdCQUFnQixFQUFFLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztRQUMzRCxNQUFNLFNBQVMsR0FBRyxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDN0MsTUFBTSxRQUFRLEdBQUcsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRTVDLE1BQU0sYUFBYSxHQUFHLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLEVBQXlCLENBQUM7UUFDNUUsSUFBSSxhQUFhLENBQUMsV0FBVyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQzVDLGFBQWEsQ0FBQyxXQUFXLEdBQUcsWUFBWSxDQUFDO1FBQzNDLENBQUM7UUFFRCxLQUFLLENBQUM7WUFDSixHQUFHLE9BQU87WUFDVixJQUFJLEVBQUUsWUFBWTtZQUNsQixvQkFBb0IsRUFBRSxPQUFPLENBQUMsb0JBQW9CLElBQUksTUFBTTtZQUM1RCxjQUFjLEVBQ1osT0FBTyxDQUFDLGNBQWMsSUFBSSxtQkFBVSxDQUFDLGtCQUFrQixDQUFDLEdBQUc7WUFDN0QsVUFBVSxFQUFFLE9BQU8sQ0FBQyxVQUFVLElBQUksSUFBSTtZQUN0QyxVQUFVLEVBQUUsT0FBTyxDQUFDLFVBQVUsSUFBSSxTQUFTO1lBQzNDLGFBQWEsRUFBRSxPQUFPLENBQUMsYUFBYSxJQUFJLGFBQWE7WUFDckQsT0FBTyxFQUFFLGFBQWE7WUFDdEIsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJLElBQUksRUFBRTtZQUN4QixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU8sSUFBSSxFQUFFO1NBQy9CLENBQUMsQ0FBQztRQUVILElBQUksbUJBQVUsQ0FBQyxJQUFJLEVBQUUsT0FBTyxRQUFRLEtBQUssRUFBRTtZQUN6QyxRQUFRLEVBQUU7OzttQkFHRyxTQUFTOzs7O2VBSWIsU0FBUztxREFDNkIsU0FBUzs7OztDQUk3RDtTQUNJLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFbEMsK0RBQStEO1FBQy9ELElBQUksaUJBQVEsQ0FBQyxJQUFJLEVBQUUsYUFBYSxFQUFFO1lBQ2hDLEtBQUssRUFBRTtnQkFDTCxxQ0FBcUM7Z0JBQ3JDLFlBQVksU0FBUyxjQUFjLFFBQVEsSUFBSTtnQkFDL0MsRUFBRTtnQkFDRixlQUFlO2dCQUNmLCtFQUErRTtnQkFDL0UsNEVBQTRFO2dCQUM1RSxJQUFJO2dCQUNKLEVBQUU7Z0JBQ0YsNEJBQTRCO2dCQUM1QixFQUFFO2dCQUNGLHlGQUF5RixZQUFZLElBQUk7Z0JBQ3pHLEVBQUU7Z0JBQ0YsT0FBTyxTQUFTLDJDQUEyQztnQkFDM0QsRUFBRTtnQkFDRixjQUFjO2FBQ2Y7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDOztBQS9ESCwwQkFnRUM7OztBQUVELFNBQVMsZ0JBQWdCO0lBQ3ZCLElBQUksQ0FBQztRQUNILE1BQU0sTUFBTSxHQUFHLEVBQUU7YUFDZCxRQUFRLENBQUMsb0NBQW9DLEVBQUU7WUFDOUMsS0FBSyxFQUFFLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQUM7U0FDcEMsQ0FBQzthQUNELFFBQVEsRUFBRTthQUNWLElBQUksRUFBRSxDQUFDO1FBQ1YsSUFBSSxDQUFDLE1BQU07WUFBRSxPQUFPLFNBQVMsQ0FBQztRQUM5QixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFDckQsT0FBTyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBQUMsTUFBTSxDQUFDO1FBQ1AsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztBQUNILENBQUM7QUFFRCxTQUFTLGdCQUFnQjtJQUN2QixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7QUFDdEMsQ0FBQztBQUVELFNBQVMsWUFBWSxDQUFDLEtBQWE7SUFDakMsT0FBTyxLQUFLO1NBQ1QsT0FBTyxDQUFDLGdCQUFnQixFQUFFLEdBQUcsQ0FBQztTQUM5QixLQUFLLENBQUMsR0FBRyxDQUFDO1NBQ1YsTUFBTSxDQUFDLE9BQU8sQ0FBQztTQUNmLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3pFLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUNkLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjcCBmcm9tIFwiY2hpbGRfcHJvY2Vzc1wiO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHsgYXdzY2RrLCBqYXZhc2NyaXB0LCBTYW1wbGVGaWxlLCBUZXh0RmlsZSB9IGZyb20gXCJwcm9qZW5cIjtcblxuZXhwb3J0IGludGVyZmFjZSBQcm9qYWxmT3B0aW9ucyBleHRlbmRzIGF3c2Nkay5Bd3NDZGtUeXBlU2NyaXB0QXBwT3B0aW9ucyB7fVxuXG5leHBvcnQgY2xhc3MgUHJvamFsZiBleHRlbmRzIGF3c2Nkay5Bd3NDZGtUeXBlU2NyaXB0QXBwIHtcbiAgY29uc3RydWN0b3Iob3B0aW9uczogUHJvamFsZk9wdGlvbnMpIHtcbiAgICBjb25zdCBpbmZlcnJlZE5hbWUgPVxuICAgICAgb3B0aW9ucy5uYW1lID8/IGluZmVyTmFtZUZyb21HaXQoKSA/PyBpbmZlck5hbWVGcm9tQ3dkKCk7XG4gICAgY29uc3QgY2xhc3NOYW1lID0gdG9QYXNjYWxDYXNlKGluZmVycmVkTmFtZSk7XG4gICAgY29uc3QgZmlsZUJhc2UgPSBpbmZlcnJlZE5hbWUudG9Mb3dlckNhc2UoKTtcblxuICAgIGNvbnN0IG1lcmdlZENvbnRleHQgPSB7IC4uLihvcHRpb25zLmNvbnRleHQgPz8ge30pIH0gYXMgUmVjb3JkPHN0cmluZywgYW55PjtcbiAgICBpZiAobWVyZ2VkQ29udGV4dC5zZXJ2aWNlTmFtZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBtZXJnZWRDb250ZXh0LnNlcnZpY2VOYW1lID0gaW5mZXJyZWROYW1lO1xuICAgIH1cblxuICAgIHN1cGVyKHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBuYW1lOiBpbmZlcnJlZE5hbWUsXG4gICAgICBkZWZhdWx0UmVsZWFzZUJyYW5jaDogb3B0aW9ucy5kZWZhdWx0UmVsZWFzZUJyYW5jaCA/PyBcIm1haW5cIixcbiAgICAgIHBhY2thZ2VNYW5hZ2VyOlxuICAgICAgICBvcHRpb25zLnBhY2thZ2VNYW5hZ2VyID8/IGphdmFzY3JpcHQuTm9kZVBhY2thZ2VNYW5hZ2VyLk5QTSxcbiAgICAgIHByb2plbnJjVHM6IG9wdGlvbnMucHJvamVucmNUcyA/PyB0cnVlLFxuICAgICAgY2RrVmVyc2lvbjogb3B0aW9ucy5jZGtWZXJzaW9uID8/IFwiMi4xNTYuMFwiLFxuICAgICAgYXBwRW50cnlwb2ludDogb3B0aW9ucy5hcHBFbnRyeXBvaW50ID8/IFwic3JjL21haW4udHNcIixcbiAgICAgIGNvbnRleHQ6IG1lcmdlZENvbnRleHQsXG4gICAgICBkZXBzOiBvcHRpb25zLmRlcHMgPz8gW10sXG4gICAgICBkZXZEZXBzOiBvcHRpb25zLmRldkRlcHMgPz8gW10sXG4gICAgfSk7XG5cbiAgICBuZXcgU2FtcGxlRmlsZSh0aGlzLCBgc3JjLyR7ZmlsZUJhc2V9LnRzYCwge1xuICAgICAgY29udGVudHM6IGBpbXBvcnQgKiBhcyBjZGsgZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgJHtjbGFzc05hbWV9UHJvcHMgZXh0ZW5kcyBjZGsuU3RhY2tQcm9wcyB7XG4gIHNlcnZpY2VOYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyAke2NsYXNzTmFtZX0gZXh0ZW5kcyBjZGsuU3RhY2sge1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogJHtjbGFzc05hbWV9UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHByb3BzKTtcbiAgICB9XG4gICAgfVxuYCxcbiAgICB9KTtcbiAgICB0aGlzLnRyeVJlbW92ZUZpbGUoXCJzcmMvbWFpbi50c1wiKTtcblxuICAgIC8vIEZvcmNlLXJlcGxhY2UgZGVmYXVsdCBlbnRyeXBvaW50IHdpdGggb3VyIGN1c3RvbWl6ZWQgbWFpbi50c1xuICAgIG5ldyBUZXh0RmlsZSh0aGlzLCBcInNyYy9tYWluLnRzXCIsIHtcbiAgICAgIGxpbmVzOiBbXG4gICAgICAgIFwiaW1wb3J0ICogYXMgY2RrIGZyb20gJ2F3cy1jZGstbGliJztcIixcbiAgICAgICAgYGltcG9ydCB7ICR7Y2xhc3NOYW1lfSB9IGZyb20gJy4vJHtmaWxlQmFzZX0nO2AsXG4gICAgICAgIFwiXCIsXG4gICAgICAgIFwiY29uc3QgZW52ID0ge1wiLFxuICAgICAgICBcIiAgYWNjb3VudDogcHJvY2Vzcy5lbnYuQ0RLX0RFUExPWV9BQ0NPVU5UID8/IHByb2Nlc3MuZW52LkNES19ERUZBVUxUX0FDQ09VTlQsXCIsXG4gICAgICAgIFwiICByZWdpb246IHByb2Nlc3MuZW52LkNES19ERVBMT1lfUkVHSU9OID8/IHByb2Nlc3MuZW52LkNES19ERUZBVUxUX1JFR0lPTixcIixcbiAgICAgICAgXCJ9O1wiLFxuICAgICAgICBcIlwiLFxuICAgICAgICBcImNvbnN0IGFwcCA9IG5ldyBjZGsuQXBwKCk7XCIsXG4gICAgICAgIFwiXCIsXG4gICAgICAgIGBjb25zdCBzZXJ2aWNlTmFtZSA9IChhcHAubm9kZS50cnlHZXRDb250ZXh0KCdzZXJ2aWNlTmFtZScpIGFzIHN0cmluZyB8IHVuZGVmaW5lZCkgPz8gJyR7aW5mZXJyZWROYW1lfSc7YCxcbiAgICAgICAgXCJcIixcbiAgICAgICAgYG5ldyAke2NsYXNzTmFtZX0oYXBwLCBzZXJ2aWNlTmFtZSwgeyBlbnYsIHNlcnZpY2VOYW1lIH0pO2AsXG4gICAgICAgIFwiXCIsXG4gICAgICAgIFwiYXBwLnN5bnRoKCk7XCIsXG4gICAgICBdLFxuICAgIH0pO1xuICB9XG59XG5cbmZ1bmN0aW9uIGluZmVyTmFtZUZyb21HaXQoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgdHJ5IHtcbiAgICBjb25zdCByZW1vdGUgPSBjcFxuICAgICAgLmV4ZWNTeW5jKFwiZ2l0IGNvbmZpZyAtLWdldCByZW1vdGUub3JpZ2luLnVybFwiLCB7XG4gICAgICAgIHN0ZGlvOiBbXCJpZ25vcmVcIiwgXCJwaXBlXCIsIFwiaWdub3JlXCJdLFxuICAgICAgfSlcbiAgICAgIC50b1N0cmluZygpXG4gICAgICAudHJpbSgpO1xuICAgIGlmICghcmVtb3RlKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIGNvbnN0IG1hdGNoID0gcmVtb3RlLm1hdGNoKC9cXC8oW15cXC9dKz8pKD86XFwuZ2l0KT8kLyk7XG4gICAgcmV0dXJuIG1hdGNoPy5bMV07XG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbn1cblxuZnVuY3Rpb24gaW5mZXJOYW1lRnJvbUN3ZCgpOiBzdHJpbmcge1xuICByZXR1cm4gcGF0aC5iYXNlbmFtZShwcm9jZXNzLmN3ZCgpKTtcbn1cblxuZnVuY3Rpb24gdG9QYXNjYWxDYXNlKGlucHV0OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gaW5wdXRcbiAgICAucmVwbGFjZSgvW15hLXpBLVowLTldKy9nLCBcIiBcIilcbiAgICAuc3BsaXQoXCIgXCIpXG4gICAgLmZpbHRlcihCb29sZWFuKVxuICAgIC5tYXAoKHBhcnQpID0+IHBhcnQuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyBwYXJ0LnNsaWNlKDEpLnRvTG93ZXJDYXNlKCkpXG4gICAgLmpvaW4oXCJcIik7XG59XG4iXX0=
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvamFsZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Qcm9qYWxmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsb0NBQW9DO0FBQ3BDLDZCQUE2QjtBQUM3QixtQ0FBNEM7QUFDNUMsbUNBQXFDO0FBSXJDLE1BQWEsT0FBUSxTQUFRLGVBQU0sQ0FBQyxtQkFBbUI7SUFDckQsWUFBWSxPQUF1QjtRQUNqQyxNQUFNLFlBQVksR0FDaEIsT0FBTyxDQUFDLElBQUksSUFBSSxnQkFBZ0IsRUFBRSxJQUFJLGdCQUFnQixFQUFFLENBQUM7UUFDM0QsTUFBTSxTQUFTLEdBQUcsWUFBWSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzdDLE1BQU0sUUFBUSxHQUFHLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUU1QyxNQUFNLGFBQWEsR0FBRyxFQUFFLEdBQUcsQ0FBQyxPQUFPLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQyxFQUF5QixDQUFDO1FBQzVFLElBQUksYUFBYSxDQUFDLFdBQVcsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUM1QyxhQUFhLENBQUMsV0FBVyxHQUFHLFlBQVksQ0FBQztRQUMzQyxDQUFDO1FBRUQsS0FBSyxDQUFDO1lBQ0osR0FBRyxPQUFPO1lBQ1YsSUFBSSxFQUFFLFlBQVk7WUFDbEIsb0JBQW9CLEVBQUUsT0FBTyxDQUFDLG9CQUFvQixJQUFJLE1BQU07WUFDNUQsY0FBYyxFQUNaLE9BQU8sQ0FBQyxjQUFjLElBQUksbUJBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHO1lBQzdELFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVSxJQUFJLElBQUk7WUFDdEMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxVQUFVLElBQUksU0FBUztZQUMzQyxPQUFPLEVBQUUsYUFBYTtZQUN0QixJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUksSUFBSSxFQUFFO1lBQ3hCLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxJQUFJLEVBQUU7U0FDL0IsQ0FBQyxDQUFDO1FBRUgsSUFBSSxrQkFBVSxDQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQzFELENBQUM7O0FBMUJILDBCQTJCQzs7O0FBRUQsU0FBUyxnQkFBZ0I7SUFDdkIsSUFBSSxDQUFDO1FBQ0gsTUFBTSxNQUFNLEdBQUcsRUFBRTthQUNkLFFBQVEsQ0FBQyxvQ0FBb0MsRUFBRTtZQUM5QyxLQUFLLEVBQUUsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLFFBQVEsQ0FBQztTQUNwQyxDQUFDO2FBQ0QsUUFBUSxFQUFFO2FBQ1YsSUFBSSxFQUFFLENBQUM7UUFDVixJQUFJLENBQUMsTUFBTTtZQUFFLE9BQU8sU0FBUyxDQUFDO1FBQzlCLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUNyRCxPQUFPLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFBQyxNQUFNLENBQUM7UUFDUCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0FBQ0gsQ0FBQztBQUVELFNBQVMsZ0JBQWdCO0lBQ3ZCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztBQUN0QyxDQUFDO0FBRUQsU0FBUyxZQUFZLENBQUMsS0FBYTtJQUNqQyxPQUFPLEtBQUs7U0FDVCxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDO1NBQzlCLEtBQUssQ0FBQyxHQUFHLENBQUM7U0FDVixNQUFNLENBQUMsT0FBTyxDQUFDO1NBQ2YsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDekUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGNwIGZyb20gJ2NoaWxkX3Byb2Nlc3MnO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IGF3c2NkaywgamF2YXNjcmlwdCB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBTYW1wbGVDb2RlIH0gZnJvbSAnLi9maWxlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvamFsZk9wdGlvbnMgZXh0ZW5kcyBhd3NjZGsuQXdzQ2RrVHlwZVNjcmlwdEFwcE9wdGlvbnMge31cblxuZXhwb3J0IGNsYXNzIFByb2phbGYgZXh0ZW5kcyBhd3NjZGsuQXdzQ2RrVHlwZVNjcmlwdEFwcCB7XG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IFByb2phbGZPcHRpb25zKSB7XG4gICAgY29uc3QgaW5mZXJyZWROYW1lID1cbiAgICAgIG9wdGlvbnMubmFtZSA/PyBpbmZlck5hbWVGcm9tR2l0KCkgPz8gaW5mZXJOYW1lRnJvbUN3ZCgpO1xuICAgIGNvbnN0IGNsYXNzTmFtZSA9IHRvUGFzY2FsQ2FzZShpbmZlcnJlZE5hbWUpO1xuICAgIGNvbnN0IGZpbGVCYXNlID0gaW5mZXJyZWROYW1lLnRvTG93ZXJDYXNlKCk7XG5cbiAgICBjb25zdCBtZXJnZWRDb250ZXh0ID0geyAuLi4ob3B0aW9ucy5jb250ZXh0ID8/IHt9KSB9IGFzIFJlY29yZDxzdHJpbmcsIGFueT47XG4gICAgaWYgKG1lcmdlZENvbnRleHQuc2VydmljZU5hbWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgbWVyZ2VkQ29udGV4dC5zZXJ2aWNlTmFtZSA9IGluZmVycmVkTmFtZTtcbiAgICB9XG5cbiAgICBzdXBlcih7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgbmFtZTogaW5mZXJyZWROYW1lLFxuICAgICAgZGVmYXVsdFJlbGVhc2VCcmFuY2g6IG9wdGlvbnMuZGVmYXVsdFJlbGVhc2VCcmFuY2ggPz8gJ21haW4nLFxuICAgICAgcGFja2FnZU1hbmFnZXI6XG4gICAgICAgIG9wdGlvbnMucGFja2FnZU1hbmFnZXIgPz8gamF2YXNjcmlwdC5Ob2RlUGFja2FnZU1hbmFnZXIuTlBNLFxuICAgICAgcHJvamVucmNUczogb3B0aW9ucy5wcm9qZW5yY1RzID8/IHRydWUsXG4gICAgICBjZGtWZXJzaW9uOiBvcHRpb25zLmNka1ZlcnNpb24gPz8gJzIuMTU2LjAnLFxuICAgICAgY29udGV4dDogbWVyZ2VkQ29udGV4dCxcbiAgICAgIGRlcHM6IG9wdGlvbnMuZGVwcyA/PyBbXSxcbiAgICAgIGRldkRlcHM6IG9wdGlvbnMuZGV2RGVwcyA/PyBbXSxcbiAgICB9KTtcblxuICAgIG5ldyBTYW1wbGVDb2RlKHRoaXMsIGNsYXNzTmFtZSwgZmlsZUJhc2UsIGluZmVycmVkTmFtZSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gaW5mZXJOYW1lRnJvbUdpdCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICB0cnkge1xuICAgIGNvbnN0IHJlbW90ZSA9IGNwXG4gICAgICAuZXhlY1N5bmMoJ2dpdCBjb25maWcgLS1nZXQgcmVtb3RlLm9yaWdpbi51cmwnLCB7XG4gICAgICAgIHN0ZGlvOiBbJ2lnbm9yZScsICdwaXBlJywgJ2lnbm9yZSddLFxuICAgICAgfSlcbiAgICAgIC50b1N0cmluZygpXG4gICAgICAudHJpbSgpO1xuICAgIGlmICghcmVtb3RlKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIGNvbnN0IG1hdGNoID0gcmVtb3RlLm1hdGNoKC9cXC8oW15cXC9dKz8pKD86XFwuZ2l0KT8kLyk7XG4gICAgcmV0dXJuIG1hdGNoPy5bMV07XG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbn1cblxuZnVuY3Rpb24gaW5mZXJOYW1lRnJvbUN3ZCgpOiBzdHJpbmcge1xuICByZXR1cm4gcGF0aC5iYXNlbmFtZShwcm9jZXNzLmN3ZCgpKTtcbn1cblxuZnVuY3Rpb24gdG9QYXNjYWxDYXNlKGlucHV0OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gaW5wdXRcbiAgICAucmVwbGFjZSgvW15hLXpBLVowLTldKy9nLCAnICcpXG4gICAgLnNwbGl0KCcgJylcbiAgICAuZmlsdGVyKEJvb2xlYW4pXG4gICAgLm1hcCgocGFydCkgPT4gcGFydC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHBhcnQuc2xpY2UoMSkudG9Mb3dlckNhc2UoKSlcbiAgICAuam9pbignJyk7XG59XG4iXX0=
package/lib/files.d.ts ADDED
@@ -0,0 +1,6 @@
1
+ import { Component } from "projen";
2
+ import { Projalf } from "./Projalf";
3
+ export declare class SampleCode extends Component {
4
+ private appProject;
5
+ constructor(appProject: Projalf, className: string, fileBase: string, inferredName: string);
6
+ }
package/lib/files.js ADDED
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SampleCode = void 0;
4
+ const projen_1 = require("projen");
5
+ class SampleCode extends projen_1.Component {
6
+ constructor(appProject, className, fileBase, inferredName) {
7
+ super(appProject);
8
+ this.appProject = appProject;
9
+ this.appProject = appProject;
10
+ new projen_1.SampleFile(this.appProject, `src/${fileBase}.ts`, {
11
+ contents: `import * as cdk from 'aws-cdk-lib';
12
+ import { Construct } from 'constructs';
13
+
14
+ export interface ${className}Props extends cdk.StackProps {
15
+ serviceName: string;
16
+ }
17
+
18
+ export class ${className} extends cdk.Stack {
19
+ constructor(scope: Construct, id: string, props: ${className}Props) {
20
+ super(scope, id, props);
21
+ // Add your infra here...
22
+ }
23
+ }
24
+ `,
25
+ });
26
+ this.appProject.tryRemoveFile("src/main.ts");
27
+ new projen_1.SampleFile(this.appProject, "src/main.ts", {
28
+ contents: `
29
+ import * as cdk from 'aws-cdk-lib';
30
+ import { ${className} } from './${fileBase}';
31
+ const env = {
32
+ account: process.env.CDK_DEPLOY_ACCOUNT ?? process.env.CDK_DEFAULT_ACCOUNT,
33
+ region: process.env.CDK_DEPLOY_REGION ?? process.env.CDK_DEFAULT_REGION,
34
+ };
35
+ const app = new cdk.App();
36
+ const serviceName = (app.node.tryGetContext('serviceName') as string | undefined) ?? '${inferredName}';
37
+ new ${className}(app, serviceName, { env, serviceName });
38
+ app.synth();
39
+ `,
40
+ });
41
+ }
42
+ }
43
+ exports.SampleCode = SampleCode;
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZmlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQStDO0FBRy9DLE1BQWEsVUFBVyxTQUFRLGtCQUFTO0lBQ3ZDLFlBQ1UsVUFBbUIsRUFDM0IsU0FBaUIsRUFDakIsUUFBZ0IsRUFDaEIsWUFBb0I7UUFFcEIsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBTFYsZUFBVSxHQUFWLFVBQVUsQ0FBUztRQU0zQixJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUU3QixJQUFJLG1CQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxPQUFPLFFBQVEsS0FBSyxFQUFFO1lBQ3BELFFBQVEsRUFBRTs7O21CQUdHLFNBQVM7Ozs7ZUFJYixTQUFTO3FEQUM2QixTQUFTOzs7OztDQUs3RDtTQUNJLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzdDLElBQUksbUJBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLGFBQWEsRUFBRTtZQUM3QyxRQUFRLEVBQUU7O2lCQUVDLFNBQVMsY0FBYyxRQUFROzs7Ozs7OEZBTThDLFlBQVk7WUFDOUYsU0FBUzs7T0FFZDtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQTNDRCxnQ0EyQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFNhbXBsZUZpbGUgfSBmcm9tIFwicHJvamVuXCI7XG5pbXBvcnQgeyBQcm9qYWxmIH0gZnJvbSBcIi4vUHJvamFsZlwiO1xuXG5leHBvcnQgY2xhc3MgU2FtcGxlQ29kZSBleHRlbmRzIENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYXBwUHJvamVjdDogUHJvamFsZixcbiAgICBjbGFzc05hbWU6IHN0cmluZyxcbiAgICBmaWxlQmFzZTogc3RyaW5nLFxuICAgIGluZmVycmVkTmFtZTogc3RyaW5nXG4gICkge1xuICAgIHN1cGVyKGFwcFByb2plY3QpO1xuICAgIHRoaXMuYXBwUHJvamVjdCA9IGFwcFByb2plY3Q7XG5cbiAgICBuZXcgU2FtcGxlRmlsZSh0aGlzLmFwcFByb2plY3QsIGBzcmMvJHtmaWxlQmFzZX0udHNgLCB7XG4gICAgICBjb250ZW50czogYGltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcblxuZXhwb3J0IGludGVyZmFjZSAke2NsYXNzTmFtZX1Qcm9wcyBleHRlbmRzIGNkay5TdGFja1Byb3BzIHtcbiAgc2VydmljZU5hbWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzICR7Y2xhc3NOYW1lfSBleHRlbmRzIGNkay5TdGFjayB7XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiAke2NsYXNzTmFtZX1Qcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuICAgIC8vIEFkZCB5b3VyIGluZnJhIGhlcmUuLi5cbiAgfVxufVxuYCxcbiAgICB9KTtcblxuICAgIHRoaXMuYXBwUHJvamVjdC50cnlSZW1vdmVGaWxlKFwic3JjL21haW4udHNcIik7XG4gICAgbmV3IFNhbXBsZUZpbGUodGhpcy5hcHBQcm9qZWN0LCBcInNyYy9tYWluLnRzXCIsIHtcbiAgICAgIGNvbnRlbnRzOiBgXG4gICAgICBpbXBvcnQgKiBhcyBjZGsgZnJvbSAnYXdzLWNkay1saWInO1xuICAgICAgaW1wb3J0IHsgJHtjbGFzc05hbWV9IH0gZnJvbSAnLi8ke2ZpbGVCYXNlfSc7XG4gICAgICBjb25zdCBlbnYgPSB7XG4gICAgICAgIGFjY291bnQ6IHByb2Nlc3MuZW52LkNES19ERVBMT1lfQUNDT1VOVCA/PyBwcm9jZXNzLmVudi5DREtfREVGQVVMVF9BQ0NPVU5ULFxuICAgICAgICByZWdpb246IHByb2Nlc3MuZW52LkNES19ERVBMT1lfUkVHSU9OID8/IHByb2Nlc3MuZW52LkNES19ERUZBVUxUX1JFR0lPTixcbiAgICAgIH07XG4gICAgICBjb25zdCBhcHAgPSBuZXcgY2RrLkFwcCgpO1xuICAgICAgY29uc3Qgc2VydmljZU5hbWUgPSAoYXBwLm5vZGUudHJ5R2V0Q29udGV4dCgnc2VydmljZU5hbWUnKSBhcyBzdHJpbmcgfCB1bmRlZmluZWQpID8/ICcke2luZmVycmVkTmFtZX0nO1xuICAgICAgbmV3ICR7Y2xhc3NOYW1lfShhcHAsIHNlcnZpY2VOYW1lLCB7IGVudiwgc2VydmljZU5hbWUgfSk7XG4gICAgICBhcHAuc3ludGgoKTtcbiAgICAgIGAsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
package/package.json CHANGED
@@ -64,7 +64,7 @@
64
64
  "publishConfig": {
65
65
  "access": "public"
66
66
  },
67
- "version": "0.0.6",
67
+ "version": "0.0.8",
68
68
  "jest": {
69
69
  "coverageProvider": "v8",
70
70
  "testMatch": [