@mrgrain/cdk-esbuild 1.127.0 → 2.0.0-alpha.2

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.
@@ -1,22 +1,24 @@
1
1
  "use strict";
2
+ var _a, _b, _c, _d;
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
4
  exports.InlineTsxCode = exports.InlineTypeScriptCode = exports.InlineJsxCode = exports.InlineJavaScriptCode = void 0;
5
+ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
4
6
  const aws_lambda_1 = require("@aws-cdk/aws-lambda");
5
- const esbuild_1 = require("esbuild");
7
+ const esbuild_wrapper_1 = require("./esbuild-wrapper");
6
8
  const formatMessages_1 = require("./formatMessages");
7
9
  class BaseInlineCode extends aws_lambda_1.InlineCode {
8
10
  constructor(code, loader, transformOptions = {}) {
9
11
  try {
10
- const transformedCode = (0, esbuild_1.transformSync)(code, {
12
+ const transformedCode = esbuild_wrapper_1.transformSync(code, {
11
13
  loader,
12
14
  ...transformOptions,
13
15
  });
14
- (0, formatMessages_1.printBuildMessages)(transformedCode, { prefix: "Transform " });
16
+ formatMessages_1.printBuildMessages(transformedCode, { prefix: 'Transform ' });
15
17
  super(transformedCode.code);
16
18
  }
17
19
  catch (error) {
18
- (0, formatMessages_1.printBuildMessages)(error, { prefix: "Transform " });
19
- throw new Error("Failed to transform InlineCode");
20
+ formatMessages_1.printBuildMessages(error, { prefix: 'Transform ' });
21
+ throw new Error('Failed to transform InlineCode');
20
22
  }
21
23
  }
22
24
  }
@@ -24,36 +26,56 @@ class BaseInlineCode extends aws_lambda_1.InlineCode {
24
26
  * @experimental
25
27
  */
26
28
  class InlineJavaScriptCode extends BaseInlineCode {
29
+ /**
30
+ * @experimental
31
+ */
27
32
  constructor(code, transformOptions) {
28
- super(code, "js", transformOptions);
33
+ super(code, 'js', transformOptions);
29
34
  }
30
35
  }
31
36
  exports.InlineJavaScriptCode = InlineJavaScriptCode;
37
+ _a = JSII_RTTI_SYMBOL_1;
38
+ InlineJavaScriptCode[_a] = { fqn: "@mrgrain/cdk-esbuild.InlineJavaScriptCode", version: "2.0.0-alpha.2" };
32
39
  /**
33
40
  * @experimental
34
41
  */
35
42
  class InlineJsxCode extends BaseInlineCode {
43
+ /**
44
+ * @experimental
45
+ */
36
46
  constructor(code, transformOptions) {
37
- super(code, "jsx", transformOptions);
47
+ super(code, 'jsx', transformOptions);
38
48
  }
39
49
  }
40
50
  exports.InlineJsxCode = InlineJsxCode;
51
+ _b = JSII_RTTI_SYMBOL_1;
52
+ InlineJsxCode[_b] = { fqn: "@mrgrain/cdk-esbuild.InlineJsxCode", version: "2.0.0-alpha.2" };
41
53
  /**
42
54
  * @experimental
43
55
  */
44
56
  class InlineTypeScriptCode extends BaseInlineCode {
57
+ /**
58
+ * @experimental
59
+ */
45
60
  constructor(code, transformOptions) {
46
- super(code, "ts", transformOptions);
61
+ super(code, 'ts', transformOptions);
47
62
  }
48
63
  }
49
64
  exports.InlineTypeScriptCode = InlineTypeScriptCode;
65
+ _c = JSII_RTTI_SYMBOL_1;
66
+ InlineTypeScriptCode[_c] = { fqn: "@mrgrain/cdk-esbuild.InlineTypeScriptCode", version: "2.0.0-alpha.2" };
50
67
  /**
51
68
  * @experimental
52
69
  */
53
70
  class InlineTsxCode extends BaseInlineCode {
71
+ /**
72
+ * @experimental
73
+ */
54
74
  constructor(code, transformOptions) {
55
- super(code, "tsx", transformOptions);
75
+ super(code, 'tsx', transformOptions);
56
76
  }
57
77
  }
58
78
  exports.InlineTsxCode = InlineTsxCode;
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLWNvZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmxpbmUtY29kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxvREFBaUQ7QUFDakQscUNBQWdGO0FBQ2hGLHFEQUFzRDtBQUV0RCxNQUFlLGNBQWUsU0FBUSx1QkFBVTtJQUM5QyxZQUNFLElBQVksRUFDWixNQUFjLEVBQ2QsbUJBQXFDLEVBQUU7UUFFdkMsSUFBSTtZQUNGLE1BQU0sZUFBZSxHQUFHLElBQUEsdUJBQWEsRUFBQyxJQUFJLEVBQUU7Z0JBQzFDLE1BQU07Z0JBQ04sR0FBRyxnQkFBZ0I7YUFDcEIsQ0FBQyxDQUFDO1lBQ0gsSUFBQSxtQ0FBa0IsRUFBQyxlQUFlLEVBQUUsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztZQUU5RCxLQUFLLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzdCO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDZCxJQUFBLG1DQUFrQixFQUFDLEtBQXFCLEVBQUUsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztZQUVwRSxNQUFNLElBQUksS0FBSyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7U0FDbkQ7SUFDSCxDQUFDO0NBQ0Y7QUFFRDs7R0FFRztBQUNILE1BQWEsb0JBQXFCLFNBQVEsY0FBYztJQUN0RCxZQUFtQixJQUFZLEVBQUUsZ0JBQW1DO1FBQ2xFLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixDQUFDLENBQUM7SUFDdEMsQ0FBQztDQUNGO0FBSkQsb0RBSUM7QUFFRDs7R0FFRztBQUNILE1BQWEsYUFBYyxTQUFRLGNBQWM7SUFDL0MsWUFBbUIsSUFBWSxFQUFFLGdCQUFtQztRQUNsRSxLQUFLLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7Q0FDRjtBQUpELHNDQUlDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLG9CQUFxQixTQUFRLGNBQWM7SUFDdEQsWUFBbUIsSUFBWSxFQUFFLGdCQUFtQztRQUNsRSxLQUFLLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7Q0FDRjtBQUpELG9EQUlDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLGFBQWMsU0FBUSxjQUFjO0lBQy9DLFlBQW1CLElBQVksRUFBRSxnQkFBbUM7UUFDbEUsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztJQUN2QyxDQUFDO0NBQ0Y7QUFKRCxzQ0FJQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElubGluZUNvZGUgfSBmcm9tIFwiQGF3cy1jZGsvYXdzLWxhbWJkYVwiO1xuaW1wb3J0IHsgdHJhbnNmb3JtU3luYywgVHJhbnNmb3JtT3B0aW9ucywgTG9hZGVyLCBCdWlsZEZhaWx1cmUgfSBmcm9tIFwiZXNidWlsZFwiO1xuaW1wb3J0IHsgcHJpbnRCdWlsZE1lc3NhZ2VzIH0gZnJvbSBcIi4vZm9ybWF0TWVzc2FnZXNcIjtcblxuYWJzdHJhY3QgY2xhc3MgQmFzZUlubGluZUNvZGUgZXh0ZW5kcyBJbmxpbmVDb2RlIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIGNvZGU6IHN0cmluZyxcbiAgICBsb2FkZXI6IExvYWRlcixcbiAgICB0cmFuc2Zvcm1PcHRpb25zOiBUcmFuc2Zvcm1PcHRpb25zID0ge31cbiAgKSB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHRyYW5zZm9ybWVkQ29kZSA9IHRyYW5zZm9ybVN5bmMoY29kZSwge1xuICAgICAgICBsb2FkZXIsXG4gICAgICAgIC4uLnRyYW5zZm9ybU9wdGlvbnMsXG4gICAgICB9KTtcbiAgICAgIHByaW50QnVpbGRNZXNzYWdlcyh0cmFuc2Zvcm1lZENvZGUsIHsgcHJlZml4OiBcIlRyYW5zZm9ybSBcIiB9KTtcblxuICAgICAgc3VwZXIodHJhbnNmb3JtZWRDb2RlLmNvZGUpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBwcmludEJ1aWxkTWVzc2FnZXMoZXJyb3IgYXMgQnVpbGRGYWlsdXJlLCB7IHByZWZpeDogXCJUcmFuc2Zvcm0gXCIgfSk7XG5cbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkZhaWxlZCB0byB0cmFuc2Zvcm0gSW5saW5lQ29kZVwiKTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBAZXhwZXJpbWVudGFsXG4gKi9cbmV4cG9ydCBjbGFzcyBJbmxpbmVKYXZhU2NyaXB0Q29kZSBleHRlbmRzIEJhc2VJbmxpbmVDb2RlIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKGNvZGU6IHN0cmluZywgdHJhbnNmb3JtT3B0aW9ucz86IFRyYW5zZm9ybU9wdGlvbnMpIHtcbiAgICBzdXBlcihjb2RlLCBcImpzXCIsIHRyYW5zZm9ybU9wdGlvbnMpO1xuICB9XG59XG5cbi8qKlxuICogQGV4cGVyaW1lbnRhbFxuICovXG5leHBvcnQgY2xhc3MgSW5saW5lSnN4Q29kZSBleHRlbmRzIEJhc2VJbmxpbmVDb2RlIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKGNvZGU6IHN0cmluZywgdHJhbnNmb3JtT3B0aW9ucz86IFRyYW5zZm9ybU9wdGlvbnMpIHtcbiAgICBzdXBlcihjb2RlLCBcImpzeFwiLCB0cmFuc2Zvcm1PcHRpb25zKTtcbiAgfVxufVxuXG4vKipcbiAqIEBleHBlcmltZW50YWxcbiAqL1xuZXhwb3J0IGNsYXNzIElubGluZVR5cGVTY3JpcHRDb2RlIGV4dGVuZHMgQmFzZUlubGluZUNvZGUge1xuICBwdWJsaWMgY29uc3RydWN0b3IoY29kZTogc3RyaW5nLCB0cmFuc2Zvcm1PcHRpb25zPzogVHJhbnNmb3JtT3B0aW9ucykge1xuICAgIHN1cGVyKGNvZGUsIFwidHNcIiwgdHJhbnNmb3JtT3B0aW9ucyk7XG4gIH1cbn1cblxuLyoqXG4gKiBAZXhwZXJpbWVudGFsXG4gKi9cbmV4cG9ydCBjbGFzcyBJbmxpbmVUc3hDb2RlIGV4dGVuZHMgQmFzZUlubGluZUNvZGUge1xuICBwdWJsaWMgY29uc3RydWN0b3IoY29kZTogc3RyaW5nLCB0cmFuc2Zvcm1PcHRpb25zPzogVHJhbnNmb3JtT3B0aW9ucykge1xuICAgIHN1cGVyKGNvZGUsIFwidHN4XCIsIHRyYW5zZm9ybU9wdGlvbnMpO1xuICB9XG59XG4iXX0=
79
+ _d = JSII_RTTI_SYMBOL_1;
80
+ InlineTsxCode[_d] = { fqn: "@mrgrain/cdk-esbuild.InlineTsxCode", version: "2.0.0-alpha.2" };
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLWNvZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5saW5lLWNvZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxvREFBaUQ7QUFFakQsdURBQWtEO0FBQ2xELHFEQUFzRDtBQUV0RCxNQUFlLGNBQWUsU0FBUSx1QkFBVTtJQUM5QyxZQUNFLElBQVksRUFDWixNQUFjLEVBQ2QsbUJBQXFDLEVBQUU7UUFFdkMsSUFBSTtZQUNGLE1BQU0sZUFBZSxHQUFHLCtCQUFhLENBQUMsSUFBSSxFQUFFO2dCQUMxQyxNQUFNO2dCQUNOLEdBQUcsZ0JBQWdCO2FBQ3BCLENBQUMsQ0FBQztZQUNILG1DQUFrQixDQUFDLGVBQWUsRUFBRSxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO1lBRTlELEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDN0I7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLG1DQUFrQixDQUFDLEtBQXFCLEVBQUUsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztZQUVwRSxNQUFNLElBQUksS0FBSyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7U0FDbkQ7SUFDSCxDQUFDO0NBQ0Y7Ozs7QUFHRCxNQUFhLG9CQUFxQixTQUFRLGNBQWM7Ozs7SUFDdEQsWUFBbUIsSUFBWSxFQUFFLGdCQUFtQztRQUNsRSxLQUFLLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7O0FBSEgsb0RBSUM7Ozs7OztBQUdELE1BQWEsYUFBYyxTQUFRLGNBQWM7Ozs7SUFDL0MsWUFBbUIsSUFBWSxFQUFFLGdCQUFtQztRQUNsRSxLQUFLLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7O0FBSEgsc0NBSUM7Ozs7OztBQUdELE1BQWEsb0JBQXFCLFNBQVEsY0FBYzs7OztJQUN0RCxZQUFtQixJQUFZLEVBQUUsZ0JBQW1DO1FBQ2xFLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixDQUFDLENBQUM7SUFDdEMsQ0FBQzs7QUFISCxvREFJQzs7Ozs7O0FBR0QsTUFBYSxhQUFjLFNBQVEsY0FBYzs7OztJQUMvQyxZQUFtQixJQUFZLEVBQUUsZ0JBQW1DO1FBQ2xFLEtBQUssQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixDQUFDLENBQUM7SUFDdkMsQ0FBQzs7QUFISCxzQ0FJQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElubGluZUNvZGUgfSBmcm9tICdAYXdzLWNkay9hd3MtbGFtYmRhJztcbmltcG9ydCB7IFRyYW5zZm9ybU9wdGlvbnMsIExvYWRlciwgQnVpbGRGYWlsdXJlIH0gZnJvbSAnLi9lc2J1aWxkLXR5cGVzJztcbmltcG9ydCB7IHRyYW5zZm9ybVN5bmMgfSBmcm9tICcuL2VzYnVpbGQtd3JhcHBlcic7XG5pbXBvcnQgeyBwcmludEJ1aWxkTWVzc2FnZXMgfSBmcm9tICcuL2Zvcm1hdE1lc3NhZ2VzJztcblxuYWJzdHJhY3QgY2xhc3MgQmFzZUlubGluZUNvZGUgZXh0ZW5kcyBJbmxpbmVDb2RlIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIGNvZGU6IHN0cmluZyxcbiAgICBsb2FkZXI6IExvYWRlcixcbiAgICB0cmFuc2Zvcm1PcHRpb25zOiBUcmFuc2Zvcm1PcHRpb25zID0ge30sXG4gICkge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCB0cmFuc2Zvcm1lZENvZGUgPSB0cmFuc2Zvcm1TeW5jKGNvZGUsIHtcbiAgICAgICAgbG9hZGVyLFxuICAgICAgICAuLi50cmFuc2Zvcm1PcHRpb25zLFxuICAgICAgfSk7XG4gICAgICBwcmludEJ1aWxkTWVzc2FnZXModHJhbnNmb3JtZWRDb2RlLCB7IHByZWZpeDogJ1RyYW5zZm9ybSAnIH0pO1xuXG4gICAgICBzdXBlcih0cmFuc2Zvcm1lZENvZGUuY29kZSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHByaW50QnVpbGRNZXNzYWdlcyhlcnJvciBhcyBCdWlsZEZhaWx1cmUsIHsgcHJlZml4OiAnVHJhbnNmb3JtICcgfSk7XG5cbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIHRyYW5zZm9ybSBJbmxpbmVDb2RlJyk7XG4gICAgfVxuICB9XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIElubGluZUphdmFTY3JpcHRDb2RlIGV4dGVuZHMgQmFzZUlubGluZUNvZGUge1xuICBwdWJsaWMgY29uc3RydWN0b3IoY29kZTogc3RyaW5nLCB0cmFuc2Zvcm1PcHRpb25zPzogVHJhbnNmb3JtT3B0aW9ucykge1xuICAgIHN1cGVyKGNvZGUsICdqcycsIHRyYW5zZm9ybU9wdGlvbnMpO1xuICB9XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIElubGluZUpzeENvZGUgZXh0ZW5kcyBCYXNlSW5saW5lQ29kZSB7XG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihjb2RlOiBzdHJpbmcsIHRyYW5zZm9ybU9wdGlvbnM/OiBUcmFuc2Zvcm1PcHRpb25zKSB7XG4gICAgc3VwZXIoY29kZSwgJ2pzeCcsIHRyYW5zZm9ybU9wdGlvbnMpO1xuICB9XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIElubGluZVR5cGVTY3JpcHRDb2RlIGV4dGVuZHMgQmFzZUlubGluZUNvZGUge1xuICBwdWJsaWMgY29uc3RydWN0b3IoY29kZTogc3RyaW5nLCB0cmFuc2Zvcm1PcHRpb25zPzogVHJhbnNmb3JtT3B0aW9ucykge1xuICAgIHN1cGVyKGNvZGUsICd0cycsIHRyYW5zZm9ybU9wdGlvbnMpO1xuICB9XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIElubGluZVRzeENvZGUgZXh0ZW5kcyBCYXNlSW5saW5lQ29kZSB7XG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihjb2RlOiBzdHJpbmcsIHRyYW5zZm9ybU9wdGlvbnM/OiBUcmFuc2Zvcm1PcHRpb25zKSB7XG4gICAgc3VwZXIoY29kZSwgJ3RzeCcsIHRyYW5zZm9ybU9wdGlvbnMpO1xuICB9XG59XG4iXX0=
package/lib/source.d.ts CHANGED
@@ -1,27 +1,64 @@
1
- import { DeploymentSourceContext, ISource, SourceConfig } from "@aws-cdk/aws-s3-deployment";
2
- import { Construct } from "@aws-cdk/core";
3
- import { EsbuildAssetProps, JavaScriptAsset, TypeScriptAsset } from "./asset";
4
- declare type SourceProps = Omit<EsbuildAssetProps, "entryPoints">;
5
- declare type JavaScriptSourceProps = SourceProps;
6
- declare type TypeScriptSourceProps = SourceProps;
7
- declare abstract class Source<Props extends SourceProps, Asset extends JavaScriptAsset | TypeScriptAsset> implements ISource {
8
- protected abstract AssetClass: new (scope: Construct, id: string, props: EsbuildAssetProps) => Asset;
9
- protected props: EsbuildAssetProps;
1
+ import { DeploymentSourceContext, ISource, SourceConfig } from '@aws-cdk/aws-s3-deployment';
2
+ import { Construct } from '@aws-cdk/core';
3
+ import { AssetBaseProps, AssetProps, JavaScriptAsset, TypeScriptAsset } from './asset';
4
+ import { EntryPoints } from './bundler';
5
+ /**
6
+ * @stability stable
7
+ */
8
+ export interface JavaScriptSourceProps extends AssetBaseProps {
9
+ }
10
+ /**
11
+ * @stability stable
12
+ */
13
+ export interface TypeScriptSourceProps extends AssetBaseProps {
14
+ }
15
+ declare abstract class Source<Props extends JavaScriptSourceProps | TypeScriptSourceProps, Asset extends JavaScriptAsset | TypeScriptAsset> implements ISource {
16
+ protected readonly abstract assetClass: new (scope: Construct, id: string, props: AssetProps) => Asset;
17
+ /**
18
+ * @stability stable
19
+ */
20
+ protected props: AssetProps;
21
+ /**
22
+ * @stability stable
23
+ */
10
24
  protected asset: Asset;
11
25
  /**
12
26
  *
13
27
  * @param entryPoints - Relative path to the source code. Use `props.buildOptions.absWorkingDir` if an absolute path is required.
14
28
  * @param props - Source properties.
15
29
  */
16
- constructor(entryPoints: EsbuildAssetProps["entryPoints"], props: Props);
30
+ constructor(entryPoints: EntryPoints, props: Props);
31
+ /**
32
+ * Binds the source to a bucket deployment.
33
+ *
34
+ * @stability stable
35
+ */
17
36
  bind(scope: Construct, context?: DeploymentSourceContext): SourceConfig;
18
37
  }
38
+ /**
39
+ * @stability stable
40
+ */
19
41
  export declare class JavaScriptSource extends Source<JavaScriptSourceProps, JavaScriptAsset> {
20
- protected AssetClass: typeof JavaScriptAsset;
21
- constructor(entryPoints: EsbuildAssetProps["entryPoints"], props?: JavaScriptSourceProps);
42
+ /**
43
+ * @stability stable
44
+ */
45
+ assetClass: typeof JavaScriptAsset;
46
+ /**
47
+ * @stability stable
48
+ */
49
+ constructor(entryPoints: EntryPoints, props?: JavaScriptSourceProps);
22
50
  }
51
+ /**
52
+ * @stability stable
53
+ */
23
54
  export declare class TypeScriptSource extends Source<TypeScriptSourceProps, TypeScriptAsset> {
24
- protected AssetClass: typeof TypeScriptAsset;
25
- constructor(entryPoints: EsbuildAssetProps["entryPoints"], props?: TypeScriptSourceProps);
55
+ /**
56
+ * @stability stable
57
+ */
58
+ assetClass: typeof TypeScriptAsset;
59
+ /**
60
+ * @stability stable
61
+ */
62
+ constructor(entryPoints: EntryPoints, props?: TypeScriptSourceProps);
26
63
  }
27
64
  export {};
package/lib/source.js CHANGED
@@ -1,8 +1,12 @@
1
1
  "use strict";
2
+ var _a, _b;
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
4
  exports.TypeScriptSource = exports.JavaScriptSource = void 0;
5
+ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
4
6
  const core_1 = require("@aws-cdk/core");
5
7
  const asset_1 = require("./asset");
8
+ ;
9
+ ;
6
10
  class Source {
7
11
  /**
8
12
  *
@@ -11,7 +15,7 @@ class Source {
11
15
  */
12
16
  constructor(entryPoints, props) {
13
17
  const defaultOptions = {
14
- platform: "browser",
18
+ platform: 'browser',
15
19
  };
16
20
  this.props = {
17
21
  entryPoints,
@@ -22,13 +26,18 @@ class Source {
22
26
  },
23
27
  };
24
28
  }
29
+ /**
30
+ * Binds the source to a bucket deployment.
31
+ *
32
+ * @stability stable
33
+ */
25
34
  bind(scope, context) {
26
35
  // If the same AssetCode is used multiple times, retain only the first instantiation.
27
36
  if (!this.asset) {
28
- this.asset = new this.AssetClass(scope, this.constructor.name, this.props);
37
+ this.asset = new this.assetClass(scope, this.constructor.name, this.props);
29
38
  }
30
39
  else if (core_1.Stack.of(this.asset) !== core_1.Stack.of(scope)) {
31
- throw new Error(`Asset is already associated with another stack '${core_1.Stack.of(this.asset).stackName}'. ` + "Create a new Asset instance for every stack.");
40
+ throw new Error(`Asset is already associated with another stack '${core_1.Stack.of(this.asset).stackName}'. ` + 'Create a new Asset instance for every stack.');
32
41
  }
33
42
  if (!context) {
34
43
  throw new Error(`To use a ${this.constructor.name}, context must be provided`);
@@ -43,18 +52,40 @@ class Source {
43
52
  };
44
53
  }
45
54
  }
55
+ /**
56
+ * @stability stable
57
+ */
46
58
  class JavaScriptSource extends Source {
59
+ /**
60
+ * @stability stable
61
+ */
47
62
  constructor(entryPoints, props = {}) {
48
63
  super(entryPoints, props);
49
- this.AssetClass = asset_1.JavaScriptAsset;
64
+ /**
65
+ * @stability stable
66
+ */
67
+ this.assetClass = asset_1.JavaScriptAsset;
50
68
  }
51
69
  }
52
70
  exports.JavaScriptSource = JavaScriptSource;
71
+ _a = JSII_RTTI_SYMBOL_1;
72
+ JavaScriptSource[_a] = { fqn: "@mrgrain/cdk-esbuild.JavaScriptSource", version: "2.0.0-alpha.2" };
73
+ /**
74
+ * @stability stable
75
+ */
53
76
  class TypeScriptSource extends Source {
77
+ /**
78
+ * @stability stable
79
+ */
54
80
  constructor(entryPoints, props = {}) {
55
81
  super(entryPoints, props);
56
- this.AssetClass = asset_1.TypeScriptAsset;
82
+ /**
83
+ * @stability stable
84
+ */
85
+ this.assetClass = asset_1.TypeScriptAsset;
57
86
  }
58
87
  }
59
88
  exports.TypeScriptSource = TypeScriptSource;
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291cmNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUtBLHdDQUFpRDtBQUNqRCxtQ0FBOEU7QUFROUUsTUFBZSxNQUFNO0lBY25COzs7O09BSUc7SUFDSCxZQUFZLFdBQTZDLEVBQUUsS0FBWTtRQUNyRSxNQUFNLGNBQWMsR0FBMEI7WUFDNUMsUUFBUSxFQUFFLFNBQVM7U0FDcEIsQ0FBQztRQUVGLElBQUksQ0FBQyxLQUFLLEdBQUc7WUFDWCxXQUFXO1lBQ1gsR0FBRyxLQUFLO1lBQ1IsWUFBWSxFQUFFO2dCQUNaLEdBQUcsY0FBYztnQkFDakIsR0FBRyxLQUFLLENBQUMsWUFBWTthQUN0QjtTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxDQUFDLEtBQWdCLEVBQUUsT0FBaUM7UUFDdEQscUZBQXFGO1FBQ3JGLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2YsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLElBQUksQ0FBQyxVQUFVLENBQzlCLEtBQUssRUFDTCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFDckIsSUFBSSxDQUFDLEtBQUssQ0FDWCxDQUFDO1NBQ0g7YUFBTSxJQUFJLFlBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLFlBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDbkQsTUFBTSxJQUFJLEtBQUssQ0FDYixtREFDRSxZQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUN2QixLQUFLLEdBQUcsOENBQThDLENBQ3ZELENBQUM7U0FDSDtRQUVELElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDWixNQUFNLElBQUksS0FBSyxDQUNiLFlBQVksSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLDRCQUE0QixDQUM5RCxDQUFDO1NBQ0g7UUFFRCx3RUFBd0U7UUFDeEUsc0VBQXNFO1FBQ3RFLDZEQUE2RDtRQUM3RCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRWpELE9BQU87WUFDTCxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNO1lBQ3pCLFlBQVksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVc7U0FDckMsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQUVELE1BQWEsZ0JBQWlCLFNBQVEsTUFHckM7SUFHQyxZQUNFLFdBQTZDLEVBQzdDLFFBQStCLEVBQUU7UUFFakMsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQztRQU5sQixlQUFVLEdBQUcsdUJBQWUsQ0FBQztJQU92QyxDQUFDO0NBQ0Y7QUFaRCw0Q0FZQztBQUVELE1BQWEsZ0JBQWlCLFNBQVEsTUFHckM7SUFHQyxZQUNFLFdBQTZDLEVBQzdDLFFBQStCLEVBQUU7UUFFakMsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQztRQU5sQixlQUFVLEdBQUcsdUJBQWUsQ0FBQztJQU92QyxDQUFDO0NBQ0Y7QUFaRCw0Q0FZQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERlcGxveW1lbnRTb3VyY2VDb250ZXh0LFxuICBJU291cmNlLFxuICBTb3VyY2VDb25maWcsXG59IGZyb20gXCJAYXdzLWNkay9hd3MtczMtZGVwbG95bWVudFwiO1xuaW1wb3J0IHsgQ29uc3RydWN0LCBTdGFjayB9IGZyb20gXCJAYXdzLWNkay9jb3JlXCI7XG5pbXBvcnQgeyBFc2J1aWxkQXNzZXRQcm9wcywgSmF2YVNjcmlwdEFzc2V0LCBUeXBlU2NyaXB0QXNzZXQgfSBmcm9tIFwiLi9hc3NldFwiO1xuaW1wb3J0IHsgQnVpbGRPcHRpb25zIH0gZnJvbSBcIi4vYnVuZGxlcnNcIjtcblxudHlwZSBTb3VyY2VQcm9wcyA9IE9taXQ8RXNidWlsZEFzc2V0UHJvcHMsIFwiZW50cnlQb2ludHNcIj47XG5cbnR5cGUgSmF2YVNjcmlwdFNvdXJjZVByb3BzID0gU291cmNlUHJvcHM7XG50eXBlIFR5cGVTY3JpcHRTb3VyY2VQcm9wcyA9IFNvdXJjZVByb3BzO1xuXG5hYnN0cmFjdCBjbGFzcyBTb3VyY2U8XG4gIFByb3BzIGV4dGVuZHMgU291cmNlUHJvcHMsXG4gIEFzc2V0IGV4dGVuZHMgSmF2YVNjcmlwdEFzc2V0IHwgVHlwZVNjcmlwdEFzc2V0XG4+IGltcGxlbWVudHMgSVNvdXJjZSB7XG4gIHByb3RlY3RlZCBhYnN0cmFjdCBBc3NldENsYXNzOiBuZXcgKFxuICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogRXNidWlsZEFzc2V0UHJvcHNcbiAgKSA9PiBBc3NldDtcblxuICBwcm90ZWN0ZWQgcHJvcHM6IEVzYnVpbGRBc3NldFByb3BzO1xuXG4gIHByb3RlY3RlZCBhc3NldDogQXNzZXQ7XG5cbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSBlbnRyeVBvaW50cyAtIFJlbGF0aXZlIHBhdGggdG8gdGhlIHNvdXJjZSBjb2RlLiBVc2UgYHByb3BzLmJ1aWxkT3B0aW9ucy5hYnNXb3JraW5nRGlyYCBpZiBhbiBhYnNvbHV0ZSBwYXRoIGlzIHJlcXVpcmVkLlxuICAgKiBAcGFyYW0gcHJvcHMgLSBTb3VyY2UgcHJvcGVydGllcy5cbiAgICovXG4gIGNvbnN0cnVjdG9yKGVudHJ5UG9pbnRzOiBFc2J1aWxkQXNzZXRQcm9wc1tcImVudHJ5UG9pbnRzXCJdLCBwcm9wczogUHJvcHMpIHtcbiAgICBjb25zdCBkZWZhdWx0T3B0aW9uczogUGFydGlhbDxCdWlsZE9wdGlvbnM+ID0ge1xuICAgICAgcGxhdGZvcm06IFwiYnJvd3NlclwiLFxuICAgIH07XG5cbiAgICB0aGlzLnByb3BzID0ge1xuICAgICAgZW50cnlQb2ludHMsXG4gICAgICAuLi5wcm9wcyxcbiAgICAgIGJ1aWxkT3B0aW9uczoge1xuICAgICAgICAuLi5kZWZhdWx0T3B0aW9ucyxcbiAgICAgICAgLi4ucHJvcHMuYnVpbGRPcHRpb25zLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgYmluZChzY29wZTogQ29uc3RydWN0LCBjb250ZXh0PzogRGVwbG95bWVudFNvdXJjZUNvbnRleHQpOiBTb3VyY2VDb25maWcge1xuICAgIC8vIElmIHRoZSBzYW1lIEFzc2V0Q29kZSBpcyB1c2VkIG11bHRpcGxlIHRpbWVzLCByZXRhaW4gb25seSB0aGUgZmlyc3QgaW5zdGFudGlhdGlvbi5cbiAgICBpZiAoIXRoaXMuYXNzZXQpIHtcbiAgICAgIHRoaXMuYXNzZXQgPSBuZXcgdGhpcy5Bc3NldENsYXNzKFxuICAgICAgICBzY29wZSxcbiAgICAgICAgdGhpcy5jb25zdHJ1Y3Rvci5uYW1lLFxuICAgICAgICB0aGlzLnByb3BzXG4gICAgICApO1xuICAgIH0gZWxzZSBpZiAoU3RhY2sub2YodGhpcy5hc3NldCkgIT09IFN0YWNrLm9mKHNjb3BlKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgQXNzZXQgaXMgYWxyZWFkeSBhc3NvY2lhdGVkIHdpdGggYW5vdGhlciBzdGFjayAnJHtcbiAgICAgICAgICBTdGFjay5vZih0aGlzLmFzc2V0KS5zdGFja05hbWVcbiAgICAgICAgfScuIGAgKyBcIkNyZWF0ZSBhIG5ldyBBc3NldCBpbnN0YW5jZSBmb3IgZXZlcnkgc3RhY2suXCJcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKCFjb250ZXh0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBUbyB1c2UgYSAke3RoaXMuY29uc3RydWN0b3IubmFtZX0sIGNvbnRleHQgbXVzdCBiZSBwcm92aWRlZGBcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gd2UgZ2l2ZSBwZXJtaXNzaW9ucyBvbiBhbGwgZmlsZXMgaW4gdGhlIGJ1Y2tldCBzaW5jZSB3ZSBkb24ndCB3YW50IHRvXG4gICAgLy8gYWNjaWRlbnRhbGx5IHJldm9rZSBwZXJtaXNzaW9uIG9uIG9sZCB2ZXJzaW9ucyB3aGVuIGRlcGxveWluZyBhIG5ld1xuICAgIC8vIHZlcnNpb24gKGZvciBleGFtcGxlLCB3aGVuIHVzaW5nIExhbWJkYSB0cmFmZmljIHNoaWZ0aW5nKS5cbiAgICB0aGlzLmFzc2V0LmJ1Y2tldC5ncmFudFJlYWQoY29udGV4dC5oYW5kbGVyUm9sZSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgYnVja2V0OiB0aGlzLmFzc2V0LmJ1Y2tldCxcbiAgICAgIHppcE9iamVjdEtleTogdGhpcy5hc3NldC5zM09iamVjdEtleSxcbiAgICB9O1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBKYXZhU2NyaXB0U291cmNlIGV4dGVuZHMgU291cmNlPFxuICBKYXZhU2NyaXB0U291cmNlUHJvcHMsXG4gIEphdmFTY3JpcHRBc3NldFxuPiB7XG4gIHByb3RlY3RlZCBBc3NldENsYXNzID0gSmF2YVNjcmlwdEFzc2V0O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGVudHJ5UG9pbnRzOiBFc2J1aWxkQXNzZXRQcm9wc1tcImVudHJ5UG9pbnRzXCJdLFxuICAgIHByb3BzOiBKYXZhU2NyaXB0U291cmNlUHJvcHMgPSB7fVxuICApIHtcbiAgICBzdXBlcihlbnRyeVBvaW50cywgcHJvcHMpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBUeXBlU2NyaXB0U291cmNlIGV4dGVuZHMgU291cmNlPFxuICBUeXBlU2NyaXB0U291cmNlUHJvcHMsXG4gIFR5cGVTY3JpcHRBc3NldFxuPiB7XG4gIHByb3RlY3RlZCBBc3NldENsYXNzID0gVHlwZVNjcmlwdEFzc2V0O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGVudHJ5UG9pbnRzOiBFc2J1aWxkQXNzZXRQcm9wc1tcImVudHJ5UG9pbnRzXCJdLFxuICAgIHByb3BzOiBUeXBlU2NyaXB0U291cmNlUHJvcHMgPSB7fVxuICApIHtcbiAgICBzdXBlcihlbnRyeVBvaW50cywgcHJvcHMpO1xuICB9XG59XG4iXX0=
89
+ _b = JSII_RTTI_SYMBOL_1;
90
+ TypeScriptSource[_b] = { fqn: "@mrgrain/cdk-esbuild.TypeScriptSource", version: "2.0.0-alpha.2" };
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291cmNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NvdXJjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUtBLHdDQUFpRDtBQUNqRCxtQ0FBdUY7QUFJeEIsQ0FBQztBQUNELENBQUM7QUFFaEUsTUFBZSxNQUFNO0lBY25COzs7O09BSUc7SUFDSCxZQUFZLFdBQXdCLEVBQUUsS0FBWTtRQUNoRCxNQUFNLGNBQWMsR0FBMEI7WUFDNUMsUUFBUSxFQUFFLFNBQVM7U0FDcEIsQ0FBQztRQUVGLElBQUksQ0FBQyxLQUFLLEdBQUc7WUFDWCxXQUFXO1lBQ1gsR0FBRyxLQUFLO1lBQ1IsWUFBWSxFQUFFO2dCQUNaLEdBQUcsY0FBYztnQkFDakIsR0FBRyxLQUFLLENBQUMsWUFBWTthQUN0QjtTQUNGLENBQUM7SUFDSixDQUFDOzs7Ozs7SUFFRCxJQUFJLENBQUMsS0FBZ0IsRUFBRSxPQUFpQztRQUN0RCxxRkFBcUY7UUFDckYsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FDOUIsS0FBSyxFQUNMLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUNyQixJQUFJLENBQUMsS0FBSyxDQUNYLENBQUM7U0FDSDthQUFNLElBQUksWUFBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssWUFBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNuRCxNQUFNLElBQUksS0FBSyxDQUNiLG1EQUNFLFlBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQ3ZCLEtBQUssR0FBRyw4Q0FBOEMsQ0FDdkQsQ0FBQztTQUNIO1FBRUQsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNaLE1BQU0sSUFBSSxLQUFLLENBQ2IsWUFBWSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksNEJBQTRCLENBQzlELENBQUM7U0FDSDtRQUVELHdFQUF3RTtRQUN4RSxzRUFBc0U7UUFDdEUsNkRBQTZEO1FBQzdELElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFakQsT0FBTztZQUNMLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU07WUFDekIsWUFBWSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVztTQUNyQyxDQUFDO0lBQ0osQ0FBQztDQUNGOzs7O0FBRUQsTUFBYSxnQkFBaUIsU0FBUSxNQUdyQzs7OztJQUdDLFlBQ0UsV0FBd0IsRUFDeEIsUUFBK0IsRUFBRTtRQUVqQyxLQUFLLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDOzs7O1FBTjVCLGVBQVUsR0FBRyx1QkFBZSxDQUFDO0lBTzdCLENBQUM7O0FBWEgsNENBWUM7Ozs7OztBQUVELE1BQWEsZ0JBQWlCLFNBQVEsTUFHckM7Ozs7SUFHQyxZQUNFLFdBQXdCLEVBQ3hCLFFBQStCLEVBQUU7UUFFakMsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQzs7OztRQU41QixlQUFVLEdBQUcsdUJBQWUsQ0FBQztJQU83QixDQUFDOztBQVhILDRDQVlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGVwbG95bWVudFNvdXJjZUNvbnRleHQsXG4gIElTb3VyY2UsXG4gIFNvdXJjZUNvbmZpZyxcbn0gZnJvbSAnQGF3cy1jZGsvYXdzLXMzLWRlcGxveW1lbnQnO1xuaW1wb3J0IHsgQ29uc3RydWN0LCBTdGFjayB9IGZyb20gJ0Bhd3MtY2RrL2NvcmUnO1xuaW1wb3J0IHsgQXNzZXRCYXNlUHJvcHMsIEFzc2V0UHJvcHMsIEphdmFTY3JpcHRBc3NldCwgVHlwZVNjcmlwdEFzc2V0IH0gZnJvbSAnLi9hc3NldCc7XG5pbXBvcnQgeyBFbnRyeVBvaW50cyB9IGZyb20gJy4vYnVuZGxlcic7XG5pbXBvcnQgeyBCdWlsZE9wdGlvbnMgfSBmcm9tICcuL2VzYnVpbGQtdHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEphdmFTY3JpcHRTb3VyY2VQcm9wcyBleHRlbmRzIEFzc2V0QmFzZVByb3Bze307XG5leHBvcnQgaW50ZXJmYWNlIFR5cGVTY3JpcHRTb3VyY2VQcm9wcyBleHRlbmRzIEFzc2V0QmFzZVByb3Bze307XG5cbmFic3RyYWN0IGNsYXNzIFNvdXJjZTxcbiAgUHJvcHMgZXh0ZW5kcyBKYXZhU2NyaXB0U291cmNlUHJvcHMgfCBUeXBlU2NyaXB0U291cmNlUHJvcHMsXG4gIEFzc2V0IGV4dGVuZHMgSmF2YVNjcmlwdEFzc2V0IHwgVHlwZVNjcmlwdEFzc2V0LFxuPiBpbXBsZW1lbnRzIElTb3VyY2Uge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYWJzdHJhY3QgYXNzZXRDbGFzczogbmV3IChcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IEFzc2V0UHJvcHMsXG4gICkgPT4gQXNzZXQ7XG5cbiAgcHJvdGVjdGVkIHByb3BzOiBBc3NldFByb3BzO1xuXG4gIHByb3RlY3RlZCBhc3NldCE6IEFzc2V0O1xuXG4gIC8qKlxuICAgKlxuICAgKiBAcGFyYW0gZW50cnlQb2ludHMgLSBSZWxhdGl2ZSBwYXRoIHRvIHRoZSBzb3VyY2UgY29kZS4gVXNlIGBwcm9wcy5idWlsZE9wdGlvbnMuYWJzV29ya2luZ0RpcmAgaWYgYW4gYWJzb2x1dGUgcGF0aCBpcyByZXF1aXJlZC5cbiAgICogQHBhcmFtIHByb3BzIC0gU291cmNlIHByb3BlcnRpZXMuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihlbnRyeVBvaW50czogRW50cnlQb2ludHMsIHByb3BzOiBQcm9wcykge1xuICAgIGNvbnN0IGRlZmF1bHRPcHRpb25zOiBQYXJ0aWFsPEJ1aWxkT3B0aW9ucz4gPSB7XG4gICAgICBwbGF0Zm9ybTogJ2Jyb3dzZXInLFxuICAgIH07XG5cbiAgICB0aGlzLnByb3BzID0ge1xuICAgICAgZW50cnlQb2ludHMsXG4gICAgICAuLi5wcm9wcyxcbiAgICAgIGJ1aWxkT3B0aW9uczoge1xuICAgICAgICAuLi5kZWZhdWx0T3B0aW9ucyxcbiAgICAgICAgLi4ucHJvcHMuYnVpbGRPcHRpb25zLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgYmluZChzY29wZTogQ29uc3RydWN0LCBjb250ZXh0PzogRGVwbG95bWVudFNvdXJjZUNvbnRleHQpOiBTb3VyY2VDb25maWcge1xuICAgIC8vIElmIHRoZSBzYW1lIEFzc2V0Q29kZSBpcyB1c2VkIG11bHRpcGxlIHRpbWVzLCByZXRhaW4gb25seSB0aGUgZmlyc3QgaW5zdGFudGlhdGlvbi5cbiAgICBpZiAoIXRoaXMuYXNzZXQpIHtcbiAgICAgIHRoaXMuYXNzZXQgPSBuZXcgdGhpcy5hc3NldENsYXNzKFxuICAgICAgICBzY29wZSxcbiAgICAgICAgdGhpcy5jb25zdHJ1Y3Rvci5uYW1lLFxuICAgICAgICB0aGlzLnByb3BzLFxuICAgICAgKTtcbiAgICB9IGVsc2UgaWYgKFN0YWNrLm9mKHRoaXMuYXNzZXQpICE9PSBTdGFjay5vZihzY29wZSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYEFzc2V0IGlzIGFscmVhZHkgYXNzb2NpYXRlZCB3aXRoIGFub3RoZXIgc3RhY2sgJyR7XG4gICAgICAgICAgU3RhY2sub2YodGhpcy5hc3NldCkuc3RhY2tOYW1lXG4gICAgICAgIH0nLiBgICsgJ0NyZWF0ZSBhIG5ldyBBc3NldCBpbnN0YW5jZSBmb3IgZXZlcnkgc3RhY2suJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKCFjb250ZXh0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBUbyB1c2UgYSAke3RoaXMuY29uc3RydWN0b3IubmFtZX0sIGNvbnRleHQgbXVzdCBiZSBwcm92aWRlZGAsXG4gICAgICApO1xuICAgIH1cblxuICAgIC8vIHdlIGdpdmUgcGVybWlzc2lvbnMgb24gYWxsIGZpbGVzIGluIHRoZSBidWNrZXQgc2luY2Ugd2UgZG9uJ3Qgd2FudCB0b1xuICAgIC8vIGFjY2lkZW50YWxseSByZXZva2UgcGVybWlzc2lvbiBvbiBvbGQgdmVyc2lvbnMgd2hlbiBkZXBsb3lpbmcgYSBuZXdcbiAgICAvLyB2ZXJzaW9uIChmb3IgZXhhbXBsZSwgd2hlbiB1c2luZyBMYW1iZGEgdHJhZmZpYyBzaGlmdGluZykuXG4gICAgdGhpcy5hc3NldC5idWNrZXQuZ3JhbnRSZWFkKGNvbnRleHQuaGFuZGxlclJvbGUpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGJ1Y2tldDogdGhpcy5hc3NldC5idWNrZXQsXG4gICAgICB6aXBPYmplY3RLZXk6IHRoaXMuYXNzZXQuczNPYmplY3RLZXksXG4gICAgfTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgSmF2YVNjcmlwdFNvdXJjZSBleHRlbmRzIFNvdXJjZTxcbkphdmFTY3JpcHRTb3VyY2VQcm9wcyxcbkphdmFTY3JpcHRBc3NldFxuPiB7XG4gIGFzc2V0Q2xhc3MgPSBKYXZhU2NyaXB0QXNzZXQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgZW50cnlQb2ludHM6IEVudHJ5UG9pbnRzLFxuICAgIHByb3BzOiBKYXZhU2NyaXB0U291cmNlUHJvcHMgPSB7fSxcbiAgKSB7XG4gICAgc3VwZXIoZW50cnlQb2ludHMsIHByb3BzKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgVHlwZVNjcmlwdFNvdXJjZSBleHRlbmRzIFNvdXJjZTxcblR5cGVTY3JpcHRTb3VyY2VQcm9wcyxcblR5cGVTY3JpcHRBc3NldFxuPiB7XG4gIGFzc2V0Q2xhc3MgPSBUeXBlU2NyaXB0QXNzZXQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgZW50cnlQb2ludHM6IEVudHJ5UG9pbnRzLFxuICAgIHByb3BzOiBUeXBlU2NyaXB0U291cmNlUHJvcHMgPSB7fSxcbiAgKSB7XG4gICAgc3VwZXIoZW50cnlQb2ludHMsIHByb3BzKTtcbiAgfVxufVxuIl19
package/package.json CHANGED
@@ -1,55 +1,90 @@
1
1
  {
2
2
  "name": "@mrgrain/cdk-esbuild",
3
- "version": "1.127.0",
4
3
  "description": "CDK constructs for esbuild, an extremely fast JavaScript bundler",
5
- "license": "MIT",
4
+ "repository": {
5
+ "type": "git",
6
+ "url": "git@github.com:mrgrain/cdk-esbuild.git"
7
+ },
8
+ "scripts": {
9
+ "clobber": "npx projen clobber",
10
+ "compile": "npx projen compile",
11
+ "test:compile": "npx projen test:compile",
12
+ "test": "npx projen test",
13
+ "build": "npx projen build",
14
+ "test:watch": "npx projen test:watch",
15
+ "test:update": "npx projen test:update",
16
+ "bump": "npx projen bump",
17
+ "unbump": "npx projen unbump",
18
+ "publish:github": "npx projen publish:github",
19
+ "watch": "npx projen watch",
20
+ "package": "npx projen package",
21
+ "eslint": "npx projen eslint",
22
+ "default": "npx projen default",
23
+ "compat": "npx projen compat",
24
+ "publish:npm": "npx projen publish:npm",
25
+ "docgen": "npx projen docgen",
26
+ "release:next": "npx projen release:next",
27
+ "publish:git:next": "npx projen publish:git:next",
28
+ "upgrade": "npx projen upgrade",
29
+ "upgrade-projen": "npx projen upgrade-projen",
30
+ "projen": "npx projen"
31
+ },
6
32
  "author": {
7
33
  "name": "Moritz Kornher",
8
34
  "email": "mail@moritzkornher.de",
9
- "url": "https://moritzkornher.de"
35
+ "url": "https://moritzkornher.de",
36
+ "organization": false
10
37
  },
11
- "repository": {
12
- "url": "https://github.com/mrgrain/cdk-esbuild",
13
- "type": "git"
38
+ "devDependencies": {
39
+ "@aws-cdk/assert": "^1.99.0",
40
+ "@aws-cdk/aws-lambda": "^1.99.0",
41
+ "@aws-cdk/aws-s3": "^1.99.0",
42
+ "@aws-cdk/aws-s3-assets": "^1.99.0",
43
+ "@aws-cdk/aws-s3-deployment": "^1.99.0",
44
+ "@aws-cdk/aws-synthetics": "^1.99.0",
45
+ "@aws-cdk/core": "^1.99.0",
46
+ "@types/eslint": "^7.28.1",
47
+ "@types/jest": "^27.0.2",
48
+ "@types/node": "^14.17.0",
49
+ "@typescript-eslint/eslint-plugin": "^4.33.0",
50
+ "@typescript-eslint/parser": "^4.33.0",
51
+ "esbuild": "^0.13.0",
52
+ "eslint": "^7.32.0",
53
+ "eslint-import-resolver-node": "^0.3.6",
54
+ "eslint-import-resolver-typescript": "^2.5.0",
55
+ "eslint-plugin-import": "^2.25.2",
56
+ "jest": "^27.2.5",
57
+ "jest-junit": "^12",
58
+ "jsii": "^1.39.0",
59
+ "jsii-diff": "^1.39.0",
60
+ "jsii-docgen": "^3.7.8",
61
+ "jsii-pacmak": "^1.39.0",
62
+ "json-schema": "^0.3.0",
63
+ "npm-check-updates": "^11",
64
+ "projen": "^0.30.3",
65
+ "standard-version": "^9",
66
+ "ts-jest": "^27.0.7",
67
+ "ts-node": "^9",
68
+ "typescript": "^4.4.4"
14
69
  },
15
- "homepage": "https://github.com/mrgrain/cdk-esbuild",
16
- "main": "lib/index.js",
17
- "types": "lib/index.d.ts",
18
- "scripts": {
19
- "clean": "git clean -fx -q lib test",
20
- "build": "tsc",
21
- "github-release": "gh release create v$npm_package_version -d -F CHANGELOG.md",
22
- "prepublishOnly": "npm run clean && npm run build && npm t",
23
- "postpublish": "npm run clean",
24
- "release": "standard-version -s",
25
- "tag:cdk": "npm dist-tag add @mrgrain/cdk-esbuild@$npm_package_version cdk-$npm_package_version",
26
- "tag:latest": "npm dist-tag add @mrgrain/cdk-esbuild@$npm_package_version",
27
- "test": "jest",
28
- "test-cycle": "npm i && npm run clean && npm run build && npm t && npm run clean"
70
+ "peerDependencies": {
71
+ "@aws-cdk/aws-lambda": "^1.99.0",
72
+ "@aws-cdk/aws-s3": "^1.99.0",
73
+ "@aws-cdk/aws-s3-assets": "^1.99.0",
74
+ "@aws-cdk/aws-s3-deployment": "^1.99.0",
75
+ "@aws-cdk/aws-synthetics": "^1.99.0",
76
+ "@aws-cdk/core": "^1.99.0",
77
+ "constructs": "^3.2.27"
29
78
  },
30
79
  "dependencies": {
31
- "esbuild": "^0.13.0"
32
- },
33
- "peerDependencies": {
34
80
  "@aws-cdk/aws-lambda": "^1.99.0",
81
+ "@aws-cdk/aws-s3": "^1.99.0",
35
82
  "@aws-cdk/aws-s3-assets": "^1.99.0",
36
83
  "@aws-cdk/aws-s3-deployment": "^1.99.0",
37
84
  "@aws-cdk/aws-synthetics": "^1.99.0",
38
85
  "@aws-cdk/core": "^1.99.0"
39
86
  },
40
- "devDependencies": {
41
- "@aws-cdk/assert": "^1.99.0",
42
- "@types/jest": "ts4.4",
43
- "@types/node": "ts4.4",
44
- "jest": "^27.0.3",
45
- "standard-version": "^9.3.1",
46
- "ts-jest": "^27.0.5",
47
- "typescript": "^4.4.3"
48
- },
49
- "publishConfig": {
50
- "access": "public",
51
- "tag": "unstable"
52
- },
87
+ "bundledDependencies": [],
53
88
  "keywords": [
54
89
  "aws-cdk",
55
90
  "bundler",
@@ -60,5 +95,69 @@
60
95
  "s3",
61
96
  "s3-deployment",
62
97
  "static website"
63
- ]
64
- }
98
+ ],
99
+ "main": "lib/index.js",
100
+ "license": "MIT",
101
+ "homepage": "https://github.com/mrgrain/cdk-esbuild",
102
+ "publishConfig": {
103
+ "tag": "next"
104
+ },
105
+ "version": "2.0.0-alpha.2",
106
+ "jest": {
107
+ "testMatch": [
108
+ "**/__tests__/**/*.ts?(x)",
109
+ "**/?(*.)+(spec|test).ts?(x)"
110
+ ],
111
+ "clearMocks": true,
112
+ "collectCoverage": true,
113
+ "coverageReporters": [
114
+ "json",
115
+ "lcov",
116
+ "clover",
117
+ "text"
118
+ ],
119
+ "coverageDirectory": "coverage",
120
+ "coveragePathIgnorePatterns": [
121
+ "/node_modules/"
122
+ ],
123
+ "testPathIgnorePatterns": [
124
+ "/node_modules/",
125
+ "/examples/"
126
+ ],
127
+ "watchPathIgnorePatterns": [
128
+ "/node_modules/"
129
+ ],
130
+ "reporters": [
131
+ "default",
132
+ [
133
+ "jest-junit",
134
+ {
135
+ "outputDirectory": "test-reports"
136
+ }
137
+ ]
138
+ ],
139
+ "preset": "ts-jest",
140
+ "globals": {
141
+ "ts-jest": {
142
+ "tsconfig": "tsconfig.dev.json"
143
+ }
144
+ }
145
+ },
146
+ "types": "lib/index.d.ts",
147
+ "stability": "stable",
148
+ "jsii": {
149
+ "outdir": "dist",
150
+ "targets": {},
151
+ "tsc": {
152
+ "outDir": "lib",
153
+ "rootDir": "src"
154
+ }
155
+ },
156
+ "awscdkio": {
157
+ "twitter": "@mrgrain"
158
+ },
159
+ "optionalDependencies": {
160
+ "esbuild": "^0.13.0"
161
+ },
162
+ "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"."
163
+ }
@@ -1,13 +0,0 @@
1
- FROM node:lts-alpine
2
-
3
- ARG version=latest
4
-
5
- # Install esbuild as global bin
6
- RUN npm i -g esbuild@${version} --unsafe-perm
7
-
8
- # Add Javascript JSON interface script and set as entrypoint
9
- ENV NODE_PATH /usr/local/lib/node_modules
10
- COPY ./esbuild-js /usr/local/bin/esbuild-js
11
- RUN chmod +x /usr/local/bin/esbuild-js
12
-
13
- ENTRYPOINT [ "esbuild-js" ]
@@ -1,22 +0,0 @@
1
- #!/usr/bin/env node
2
- const { execSync } = require("child_process");
3
- const { resolve } = require("path");
4
- const esbuild = require("esbuild");
5
-
6
- try {
7
- const { copyDir, outputDirectory, options } = JSON.parse(process.argv[2]);
8
-
9
- if (copyDir) {
10
- console.log(`Copy additional files from '${copyDir}'`);
11
- const srcDir = resolve(copyDir) + '/.';
12
- const copyCommand = `cp -r ${srcDir} ${outputDirectory}`;
13
- console.log(copyCommand);
14
- execSync(copyCommand)
15
- }
16
-
17
- console.log("Bundling with the following options...", options);
18
- esbuild.buildSync(options);
19
- } catch (error) {
20
- console.error(error.message);
21
- process.exit(1);
22
- }
package/lib/bundlers.d.ts DELETED
@@ -1,53 +0,0 @@
1
- import { BundlingOptions, DockerImage, ILocalBundling } from "@aws-cdk/core";
2
- import { BuildOptions as EsbuildOptions } from "esbuild";
3
- declare type MarkRequired<T, RK extends keyof T> = Exclude<T, RK> & Required<Pick<T, RK>>;
4
- export declare type BuildOptions = MarkRequired<EsbuildOptions, "entryPoints">;
5
- export declare enum BundlerPriority {
6
- /**
7
- * Only use the Docker bundler
8
- */
9
- DockerOnly = 0,
10
- /**
11
- * Only use the local bundler
12
- */
13
- LocalOnly = 1,
14
- /**
15
- * Attempts to first use the local bundler, only use Docker bundler if local fails.
16
- */
17
- AttemptLocal = 2
18
- }
19
- export interface BundlerProps {
20
- /**
21
- * Relative path to a directory copied to the output before esbuild is run (i.e esbuild will overwrite existing files).
22
- */
23
- copyDir?: string;
24
- /**
25
- * Docker build only. A npm compatible version constraint.
26
- *
27
- * If not provided will attempt to read from a `package-lock.json` or `package.json` file in the `absWorkingDir`.
28
- * Otherwise uses the constraint provided by this package (usually ^0.x.0).
29
- */
30
- esbuildVersion?: string;
31
- /**
32
- * Priority order of available bundlers. Defaults to attempt local first, then docker.
33
- *
34
- * @default BundlerPriority.AttemptLocal
35
- */
36
- priority?: BundlerPriority;
37
- }
38
- export declare class LocalBundler implements ILocalBundling {
39
- readonly buildOptions: BuildOptions;
40
- readonly props: BundlerProps;
41
- constructor(buildOptions: BuildOptions, props?: BundlerProps);
42
- tryBundle(outputDir: string, _options: BundlingOptions): boolean;
43
- }
44
- export declare class DockerBundler implements BundlingOptions {
45
- readonly props: BundlerProps;
46
- get image(): DockerImage;
47
- get command(): string[];
48
- readonly workingDirectory = "/asset-input";
49
- readonly outputDirectory = "/asset-output";
50
- readonly buildOptions: BuildOptions;
51
- constructor(buildOptions: BuildOptions, props?: BundlerProps);
52
- }
53
- export {};