@mrgrain/cdk-esbuild 2.0.0-alpha.1 → 2.0.0-rc.0

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.
@@ -23,59 +23,143 @@ class BaseInlineCode extends aws_lambda_1.InlineCode {
23
23
  }
24
24
  }
25
25
  /**
26
+ * (experimental) An implementation of `lambda.InlineCode` using the esbuild Transform API. Inline function code is limited to 4 KiB after transformation.
27
+ *
26
28
  * @experimental
27
29
  */
28
30
  class InlineJavaScriptCode extends BaseInlineCode {
29
31
  /**
32
+ * @param code The inline code to be transformed.
33
+ * @param transformOptions Transform options passed on to esbuild.
30
34
  * @experimental
31
35
  */
32
- constructor(code, transformOptions) {
36
+ constructor(
37
+ /**
38
+ * The inline code to be transformed.
39
+ *
40
+ * @stability experimental
41
+ */
42
+ code,
43
+ /**
44
+ * Transform options passed on to esbuild.
45
+ *
46
+ * Please refer to the esbuild Transform API docs for details. \
47
+ * Default values for `transformOptions`:
48
+ * - `loader='js'`
49
+ *
50
+ * @see https://esbuild.github.io/api/#transform-api
51
+ * @stability experimental
52
+ */
53
+ transformOptions) {
33
54
  super(code, 'js', transformOptions);
34
55
  }
35
56
  }
36
57
  exports.InlineJavaScriptCode = InlineJavaScriptCode;
37
58
  _a = JSII_RTTI_SYMBOL_1;
38
- InlineJavaScriptCode[_a] = { fqn: "@mrgrain/cdk-esbuild.InlineJavaScriptCode", version: "2.0.0-alpha.1" };
59
+ InlineJavaScriptCode[_a] = { fqn: "@mrgrain/cdk-esbuild.InlineJavaScriptCode", version: "2.0.0-rc.0" };
39
60
  /**
61
+ * (experimental) An implementation of `lambda.InlineCode` using the esbuild Transform API. Inline function code is limited to 4 KiB after transformation.
62
+ *
40
63
  * @experimental
41
64
  */
42
65
  class InlineJsxCode extends BaseInlineCode {
43
66
  /**
67
+ * @param code The inline code to be transformed.
68
+ * @param transformOptions Transform options passed on to esbuild.
44
69
  * @experimental
45
70
  */
46
- constructor(code, transformOptions) {
71
+ constructor(
72
+ /**
73
+ * The inline code to be transformed.
74
+ *
75
+ * @stability experimental
76
+ */
77
+ code,
78
+ /**
79
+ * Transform options passed on to esbuild.
80
+ *
81
+ * Please refer to the esbuild Transform API docs for details. \
82
+ * Default values for `transformOptions`:
83
+ * - `loader='jsx'`
84
+ *
85
+ * @see https://esbuild.github.io/api/#transform-api
86
+ * @stability experimental
87
+ */
88
+ transformOptions) {
47
89
  super(code, 'jsx', transformOptions);
48
90
  }
49
91
  }
50
92
  exports.InlineJsxCode = InlineJsxCode;
51
93
  _b = JSII_RTTI_SYMBOL_1;
52
- InlineJsxCode[_b] = { fqn: "@mrgrain/cdk-esbuild.InlineJsxCode", version: "2.0.0-alpha.1" };
94
+ InlineJsxCode[_b] = { fqn: "@mrgrain/cdk-esbuild.InlineJsxCode", version: "2.0.0-rc.0" };
53
95
  /**
96
+ * (experimental) An implementation of `lambda.InlineCode` using the esbuild Transform API. Inline function code is limited to 4 KiB after transformation.
97
+ *
54
98
  * @experimental
55
99
  */
56
100
  class InlineTypeScriptCode extends BaseInlineCode {
57
101
  /**
102
+ * @param code The inline code to be transformed.
103
+ * @param transformOptions Transform options passed on to esbuild.
58
104
  * @experimental
59
105
  */
60
- constructor(code, transformOptions) {
106
+ constructor(
107
+ /**
108
+ * The inline code to be transformed.
109
+ *
110
+ * @stability experimental
111
+ */
112
+ code,
113
+ /**
114
+ * Transform options passed on to esbuild.
115
+ *
116
+ * Please refer to the esbuild Transform API docs for details. \
117
+ * Default values for `transformOptions`:
118
+ * - `loader='ts'`
119
+ *
120
+ * @see https://esbuild.github.io/api/#transform-api
121
+ * @stability experimental
122
+ */
123
+ transformOptions) {
61
124
  super(code, 'ts', transformOptions);
62
125
  }
63
126
  }
64
127
  exports.InlineTypeScriptCode = InlineTypeScriptCode;
65
128
  _c = JSII_RTTI_SYMBOL_1;
66
- InlineTypeScriptCode[_c] = { fqn: "@mrgrain/cdk-esbuild.InlineTypeScriptCode", version: "2.0.0-alpha.1" };
129
+ InlineTypeScriptCode[_c] = { fqn: "@mrgrain/cdk-esbuild.InlineTypeScriptCode", version: "2.0.0-rc.0" };
67
130
  /**
131
+ * (experimental) An implementation of `lambda.InlineCode` using the esbuild Transform API. Inline function code is limited to 4 KiB after transformation.
132
+ *
68
133
  * @experimental
69
134
  */
70
135
  class InlineTsxCode extends BaseInlineCode {
71
136
  /**
137
+ * @param code The inline code to be transformed.
138
+ * @param transformOptions Transform options passed on to esbuild.
72
139
  * @experimental
73
140
  */
74
- constructor(code, transformOptions) {
141
+ constructor(
142
+ /**
143
+ * The inline code to be transformed.
144
+ *
145
+ * @stability experimental
146
+ */
147
+ code,
148
+ /**
149
+ * Transform options passed on to esbuild.
150
+ *
151
+ * Please refer to the esbuild Transform API docs for details. \
152
+ * Default values for `transformOptions`:
153
+ * - `loader='tsx'`
154
+ *
155
+ * @see https://esbuild.github.io/api/#transform-api
156
+ * @stability experimental
157
+ */
158
+ transformOptions) {
75
159
  super(code, 'tsx', transformOptions);
76
160
  }
77
161
  }
78
162
  exports.InlineTsxCode = InlineTsxCode;
79
163
  _d = JSII_RTTI_SYMBOL_1;
80
- InlineTsxCode[_d] = { fqn: "@mrgrain/cdk-esbuild.InlineTsxCode", version: "2.0.0-alpha.1" };
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLWNvZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5saW5lLWNvZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxvREFBaUQ7QUFFakQsdURBQWtEO0FBQ2xELHFEQUFzRDtBQUV0RCxNQUFlLGNBQWUsU0FBUSx1QkFBVTtJQUM5QyxZQUNFLElBQVksRUFDWixNQUFjLEVBQ2QsbUJBQXFDLEVBQUU7UUFFdkMsSUFBSTtZQUNGLE1BQU0sZUFBZSxHQUFHLCtCQUFhLENBQUMsSUFBSSxFQUFFO2dCQUMxQyxNQUFNO2dCQUNOLEdBQUcsZ0JBQWdCO2FBQ3BCLENBQUMsQ0FBQztZQUNILG1DQUFrQixDQUFDLGVBQWUsRUFBRSxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO1lBRTlELEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDN0I7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLG1DQUFrQixDQUFDLEtBQXFCLEVBQUUsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztZQUVwRSxNQUFNLElBQUksS0FBSyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7U0FDbkQ7SUFDSCxDQUFDO0NBQ0Y7Ozs7QUFHRCxNQUFhLG9CQUFxQixTQUFRLGNBQWM7Ozs7SUFDdEQsWUFBbUIsSUFBWSxFQUFFLGdCQUFtQztRQUNsRSxLQUFLLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7O0FBSEgsb0RBSUM7Ozs7OztBQUdELE1BQWEsYUFBYyxTQUFRLGNBQWM7Ozs7SUFDL0MsWUFBbUIsSUFBWSxFQUFFLGdCQUFtQztRQUNsRSxLQUFLLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7O0FBSEgsc0NBSUM7Ozs7OztBQUdELE1BQWEsb0JBQXFCLFNBQVEsY0FBYzs7OztJQUN0RCxZQUFtQixJQUFZLEVBQUUsZ0JBQW1DO1FBQ2xFLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixDQUFDLENBQUM7SUFDdEMsQ0FBQzs7QUFISCxvREFJQzs7Ozs7O0FBR0QsTUFBYSxhQUFjLFNBQVEsY0FBYzs7OztJQUMvQyxZQUFtQixJQUFZLEVBQUUsZ0JBQW1DO1FBQ2xFLEtBQUssQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixDQUFDLENBQUM7SUFDdkMsQ0FBQzs7QUFISCxzQ0FJQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElubGluZUNvZGUgfSBmcm9tICdAYXdzLWNkay9hd3MtbGFtYmRhJztcbmltcG9ydCB7IFRyYW5zZm9ybU9wdGlvbnMsIExvYWRlciwgQnVpbGRGYWlsdXJlIH0gZnJvbSAnLi9lc2J1aWxkLXR5cGVzJztcbmltcG9ydCB7IHRyYW5zZm9ybVN5bmMgfSBmcm9tICcuL2VzYnVpbGQtd3JhcHBlcic7XG5pbXBvcnQgeyBwcmludEJ1aWxkTWVzc2FnZXMgfSBmcm9tICcuL2Zvcm1hdE1lc3NhZ2VzJztcblxuYWJzdHJhY3QgY2xhc3MgQmFzZUlubGluZUNvZGUgZXh0ZW5kcyBJbmxpbmVDb2RlIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIGNvZGU6IHN0cmluZyxcbiAgICBsb2FkZXI6IExvYWRlcixcbiAgICB0cmFuc2Zvcm1PcHRpb25zOiBUcmFuc2Zvcm1PcHRpb25zID0ge30sXG4gICkge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCB0cmFuc2Zvcm1lZENvZGUgPSB0cmFuc2Zvcm1TeW5jKGNvZGUsIHtcbiAgICAgICAgbG9hZGVyLFxuICAgICAgICAuLi50cmFuc2Zvcm1PcHRpb25zLFxuICAgICAgfSk7XG4gICAgICBwcmludEJ1aWxkTWVzc2FnZXModHJhbnNmb3JtZWRDb2RlLCB7IHByZWZpeDogJ1RyYW5zZm9ybSAnIH0pO1xuXG4gICAgICBzdXBlcih0cmFuc2Zvcm1lZENvZGUuY29kZSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHByaW50QnVpbGRNZXNzYWdlcyhlcnJvciBhcyBCdWlsZEZhaWx1cmUsIHsgcHJlZml4OiAnVHJhbnNmb3JtICcgfSk7XG5cbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIHRyYW5zZm9ybSBJbmxpbmVDb2RlJyk7XG4gICAgfVxuICB9XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIElubGluZUphdmFTY3JpcHRDb2RlIGV4dGVuZHMgQmFzZUlubGluZUNvZGUge1xuICBwdWJsaWMgY29uc3RydWN0b3IoY29kZTogc3RyaW5nLCB0cmFuc2Zvcm1PcHRpb25zPzogVHJhbnNmb3JtT3B0aW9ucykge1xuICAgIHN1cGVyKGNvZGUsICdqcycsIHRyYW5zZm9ybU9wdGlvbnMpO1xuICB9XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIElubGluZUpzeENvZGUgZXh0ZW5kcyBCYXNlSW5saW5lQ29kZSB7XG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihjb2RlOiBzdHJpbmcsIHRyYW5zZm9ybU9wdGlvbnM/OiBUcmFuc2Zvcm1PcHRpb25zKSB7XG4gICAgc3VwZXIoY29kZSwgJ2pzeCcsIHRyYW5zZm9ybU9wdGlvbnMpO1xuICB9XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIElubGluZVR5cGVTY3JpcHRDb2RlIGV4dGVuZHMgQmFzZUlubGluZUNvZGUge1xuICBwdWJsaWMgY29uc3RydWN0b3IoY29kZTogc3RyaW5nLCB0cmFuc2Zvcm1PcHRpb25zPzogVHJhbnNmb3JtT3B0aW9ucykge1xuICAgIHN1cGVyKGNvZGUsICd0cycsIHRyYW5zZm9ybU9wdGlvbnMpO1xuICB9XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIElubGluZVRzeENvZGUgZXh0ZW5kcyBCYXNlSW5saW5lQ29kZSB7XG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihjb2RlOiBzdHJpbmcsIHRyYW5zZm9ybU9wdGlvbnM/OiBUcmFuc2Zvcm1PcHRpb25zKSB7XG4gICAgc3VwZXIoY29kZSwgJ3RzeCcsIHRyYW5zZm9ybU9wdGlvbnMpO1xuICB9XG59XG4iXX0=
164
+ InlineTsxCode[_d] = { fqn: "@mrgrain/cdk-esbuild.InlineTsxCode", version: "2.0.0-rc.0" };
165
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLWNvZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5saW5lLWNvZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxvREFBaUQ7QUFFakQsdURBQWtEO0FBQ2xELHFEQUFzRDtBQUV0RCxNQUFlLGNBQWUsU0FBUSx1QkFBVTtJQUM5QyxZQUNFLElBQVksRUFDWixNQUFjLEVBQ2QsbUJBQXFDLEVBQUU7UUFFdkMsSUFBSTtZQUNGLE1BQU0sZUFBZSxHQUFHLCtCQUFhLENBQUMsSUFBSSxFQUFFO2dCQUMxQyxNQUFNO2dCQUNOLEdBQUcsZ0JBQWdCO2FBQ3BCLENBQUMsQ0FBQztZQUNILG1DQUFrQixDQUFDLGVBQWUsRUFBRSxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO1lBRTlELEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDN0I7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLG1DQUFrQixDQUFDLEtBQXFCLEVBQUUsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztZQUVwRSxNQUFNLElBQUksS0FBSyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7U0FDbkQ7SUFDSCxDQUFDO0NBQ0Y7Ozs7OztBQUdELE1BQWEsb0JBQXFCLFNBQVEsY0FBYzs7Ozs7O0lBQ3REO0lBQ0U7Ozs7T0FJRztJQUNILElBQVk7SUFDWjs7Ozs7Ozs7O09BU0c7SUFDSCxnQkFBbUM7UUFFbkMsS0FBSyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztJQUN0QyxDQUFDOztBQXJCSCxvREFzQkM7Ozs7Ozs7O0FBR0QsTUFBYSxhQUFjLFNBQVEsY0FBYzs7Ozs7O0lBQy9DO0lBQ0U7Ozs7T0FJRztJQUNILElBQVk7SUFDWjs7Ozs7Ozs7O09BU0c7SUFDSCxnQkFBbUM7UUFFbkMsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztJQUN2QyxDQUFDOztBQXJCSCxzQ0FzQkM7Ozs7Ozs7O0FBR0QsTUFBYSxvQkFBcUIsU0FBUSxjQUFjOzs7Ozs7SUFDdEQ7SUFDRTs7OztPQUlHO0lBQ0gsSUFBWTtJQUNaOzs7Ozs7Ozs7T0FTRztJQUNILGdCQUFtQztRQUVuQyxLQUFLLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7O0FBckJILG9EQXNCQzs7Ozs7Ozs7QUFHRCxNQUFhLGFBQWMsU0FBUSxjQUFjOzs7Ozs7SUFDL0M7SUFDRTs7OztPQUlHO0lBQ0gsSUFBWTtJQUNaOzs7Ozs7Ozs7T0FTRztJQUNILGdCQUFtQztRQUVuQyxLQUFLLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7O0FBckJILHNDQXNCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElubGluZUNvZGUgfSBmcm9tICdAYXdzLWNkay9hd3MtbGFtYmRhJztcbmltcG9ydCB7IFRyYW5zZm9ybU9wdGlvbnMsIExvYWRlciwgQnVpbGRGYWlsdXJlIH0gZnJvbSAnLi9lc2J1aWxkLXR5cGVzJztcbmltcG9ydCB7IHRyYW5zZm9ybVN5bmMgfSBmcm9tICcuL2VzYnVpbGQtd3JhcHBlcic7XG5pbXBvcnQgeyBwcmludEJ1aWxkTWVzc2FnZXMgfSBmcm9tICcuL2Zvcm1hdE1lc3NhZ2VzJztcblxuYWJzdHJhY3QgY2xhc3MgQmFzZUlubGluZUNvZGUgZXh0ZW5kcyBJbmxpbmVDb2RlIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIGNvZGU6IHN0cmluZyxcbiAgICBsb2FkZXI6IExvYWRlcixcbiAgICB0cmFuc2Zvcm1PcHRpb25zOiBUcmFuc2Zvcm1PcHRpb25zID0ge30sXG4gICkge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCB0cmFuc2Zvcm1lZENvZGUgPSB0cmFuc2Zvcm1TeW5jKGNvZGUsIHtcbiAgICAgICAgbG9hZGVyLFxuICAgICAgICAuLi50cmFuc2Zvcm1PcHRpb25zLFxuICAgICAgfSk7XG4gICAgICBwcmludEJ1aWxkTWVzc2FnZXModHJhbnNmb3JtZWRDb2RlLCB7IHByZWZpeDogJ1RyYW5zZm9ybSAnIH0pO1xuXG4gICAgICBzdXBlcih0cmFuc2Zvcm1lZENvZGUuY29kZSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHByaW50QnVpbGRNZXNzYWdlcyhlcnJvciBhcyBCdWlsZEZhaWx1cmUsIHsgcHJlZml4OiAnVHJhbnNmb3JtICcgfSk7XG5cbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIHRyYW5zZm9ybSBJbmxpbmVDb2RlJyk7XG4gICAgfVxuICB9XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIElubGluZUphdmFTY3JpcHRDb2RlIGV4dGVuZHMgQmFzZUlubGluZUNvZGUge1xuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgLyoqXG4gICAgICogVGhlIGlubGluZSBjb2RlIHRvIGJlIHRyYW5zZm9ybWVkLlxuICAgICAqXG4gICAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICAgKi9cbiAgICBjb2RlOiBzdHJpbmcsXG4gICAgLyoqXG4gICAgICogVHJhbnNmb3JtIG9wdGlvbnMgcGFzc2VkIG9uIHRvIGVzYnVpbGQuXG4gICAgICpcbiAgICAgKiBQbGVhc2UgcmVmZXIgdG8gdGhlIGVzYnVpbGQgVHJhbnNmb3JtIEFQSSBkb2NzIGZvciBkZXRhaWxzLiBcXFxuICAgICAqIERlZmF1bHQgdmFsdWVzIGZvciBgdHJhbnNmb3JtT3B0aW9uc2A6XG4gICAgICogLSBgbG9hZGVyPSdqcydgXG4gICAgICpcbiAgICAgKiBAc2VlIGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyN0cmFuc2Zvcm0tYXBpXG4gICAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICAgKi9cbiAgICB0cmFuc2Zvcm1PcHRpb25zPzogVHJhbnNmb3JtT3B0aW9ucyxcbiAgKSB7XG4gICAgc3VwZXIoY29kZSwgJ2pzJywgdHJhbnNmb3JtT3B0aW9ucyk7XG4gIH1cbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgY2xhc3MgSW5saW5lSnN4Q29kZSBleHRlbmRzIEJhc2VJbmxpbmVDb2RlIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIC8qKlxuICAgICAqIFRoZSBpbmxpbmUgY29kZSB0byBiZSB0cmFuc2Zvcm1lZC5cbiAgICAgKlxuICAgICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAgICovXG4gICAgY29kZTogc3RyaW5nLFxuICAgIC8qKlxuICAgICAqIFRyYW5zZm9ybSBvcHRpb25zIHBhc3NlZCBvbiB0byBlc2J1aWxkLlxuICAgICAqXG4gICAgICogUGxlYXNlIHJlZmVyIHRvIHRoZSBlc2J1aWxkIFRyYW5zZm9ybSBBUEkgZG9jcyBmb3IgZGV0YWlscy4gXFxcbiAgICAgKiBEZWZhdWx0IHZhbHVlcyBmb3IgYHRyYW5zZm9ybU9wdGlvbnNgOlxuICAgICAqIC0gYGxvYWRlcj0nanN4J2BcbiAgICAgKlxuICAgICAqIEBzZWUgaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI3RyYW5zZm9ybS1hcGlcbiAgICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgICAqL1xuICAgIHRyYW5zZm9ybU9wdGlvbnM/OiBUcmFuc2Zvcm1PcHRpb25zLFxuICApIHtcbiAgICBzdXBlcihjb2RlLCAnanN4JywgdHJhbnNmb3JtT3B0aW9ucyk7XG4gIH1cbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgY2xhc3MgSW5saW5lVHlwZVNjcmlwdENvZGUgZXh0ZW5kcyBCYXNlSW5saW5lQ29kZSB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAvKipcbiAgICAgKiBUaGUgaW5saW5lIGNvZGUgdG8gYmUgdHJhbnNmb3JtZWQuXG4gICAgICpcbiAgICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgICAqL1xuICAgIGNvZGU6IHN0cmluZyxcbiAgICAvKipcbiAgICAgKiBUcmFuc2Zvcm0gb3B0aW9ucyBwYXNzZWQgb24gdG8gZXNidWlsZC5cbiAgICAgKlxuICAgICAqIFBsZWFzZSByZWZlciB0byB0aGUgZXNidWlsZCBUcmFuc2Zvcm0gQVBJIGRvY3MgZm9yIGRldGFpbHMuIFxcXG4gICAgICogRGVmYXVsdCB2YWx1ZXMgZm9yIGB0cmFuc2Zvcm1PcHRpb25zYDpcbiAgICAgKiAtIGBsb2FkZXI9J3RzJ2BcbiAgICAgKlxuICAgICAqIEBzZWUgaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI3RyYW5zZm9ybS1hcGlcbiAgICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgICAqL1xuICAgIHRyYW5zZm9ybU9wdGlvbnM/OiBUcmFuc2Zvcm1PcHRpb25zLFxuICApIHtcbiAgICBzdXBlcihjb2RlLCAndHMnLCB0cmFuc2Zvcm1PcHRpb25zKTtcbiAgfVxufVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbmV4cG9ydCBjbGFzcyBJbmxpbmVUc3hDb2RlIGV4dGVuZHMgQmFzZUlubGluZUNvZGUge1xuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgLyoqXG4gICAgICogVGhlIGlubGluZSBjb2RlIHRvIGJlIHRyYW5zZm9ybWVkLlxuICAgICAqXG4gICAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICAgKi9cbiAgICBjb2RlOiBzdHJpbmcsXG4gICAgLyoqXG4gICAgICogVHJhbnNmb3JtIG9wdGlvbnMgcGFzc2VkIG9uIHRvIGVzYnVpbGQuXG4gICAgICpcbiAgICAgKiBQbGVhc2UgcmVmZXIgdG8gdGhlIGVzYnVpbGQgVHJhbnNmb3JtIEFQSSBkb2NzIGZvciBkZXRhaWxzLiBcXFxuICAgICAqIERlZmF1bHQgdmFsdWVzIGZvciBgdHJhbnNmb3JtT3B0aW9uc2A6XG4gICAgICogLSBgbG9hZGVyPSd0c3gnYFxuICAgICAqXG4gICAgICogQHNlZSBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jdHJhbnNmb3JtLWFwaVxuICAgICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAgICovXG4gICAgdHJhbnNmb3JtT3B0aW9ucz86IFRyYW5zZm9ybU9wdGlvbnMsXG4gICkge1xuICAgIHN1cGVyKGNvZGUsICd0c3gnLCB0cmFuc2Zvcm1PcHRpb25zKTtcbiAgfVxufVxuIl19
package/lib/source.js CHANGED
@@ -69,7 +69,7 @@ class JavaScriptSource extends Source {
69
69
  }
70
70
  exports.JavaScriptSource = JavaScriptSource;
71
71
  _a = JSII_RTTI_SYMBOL_1;
72
- JavaScriptSource[_a] = { fqn: "@mrgrain/cdk-esbuild.JavaScriptSource", version: "2.0.0-alpha.1" };
72
+ JavaScriptSource[_a] = { fqn: "@mrgrain/cdk-esbuild.JavaScriptSource", version: "2.0.0-rc.0" };
73
73
  /**
74
74
  * @stability stable
75
75
  */
@@ -87,5 +87,5 @@ class TypeScriptSource extends Source {
87
87
  }
88
88
  exports.TypeScriptSource = TypeScriptSource;
89
89
  _b = JSII_RTTI_SYMBOL_1;
90
- TypeScriptSource[_b] = { fqn: "@mrgrain/cdk-esbuild.TypeScriptSource", version: "2.0.0-alpha.1" };
90
+ TypeScriptSource[_b] = { fqn: "@mrgrain/cdk-esbuild.TypeScriptSource", version: "2.0.0-rc.0" };
91
91
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291cmNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NvdXJjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUtBLHdDQUFpRDtBQUNqRCxtQ0FBdUY7QUFJeEIsQ0FBQztBQUNELENBQUM7QUFFaEUsTUFBZSxNQUFNO0lBY25COzs7O09BSUc7SUFDSCxZQUFZLFdBQXdCLEVBQUUsS0FBWTtRQUNoRCxNQUFNLGNBQWMsR0FBMEI7WUFDNUMsUUFBUSxFQUFFLFNBQVM7U0FDcEIsQ0FBQztRQUVGLElBQUksQ0FBQyxLQUFLLEdBQUc7WUFDWCxXQUFXO1lBQ1gsR0FBRyxLQUFLO1lBQ1IsWUFBWSxFQUFFO2dCQUNaLEdBQUcsY0FBYztnQkFDakIsR0FBRyxLQUFLLENBQUMsWUFBWTthQUN0QjtTQUNGLENBQUM7SUFDSixDQUFDOzs7Ozs7SUFFRCxJQUFJLENBQUMsS0FBZ0IsRUFBRSxPQUFpQztRQUN0RCxxRkFBcUY7UUFDckYsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FDOUIsS0FBSyxFQUNMLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUNyQixJQUFJLENBQUMsS0FBSyxDQUNYLENBQUM7U0FDSDthQUFNLElBQUksWUFBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssWUFBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNuRCxNQUFNLElBQUksS0FBSyxDQUNiLG1EQUNFLFlBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQ3ZCLEtBQUssR0FBRyw4Q0FBOEMsQ0FDdkQsQ0FBQztTQUNIO1FBRUQsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNaLE1BQU0sSUFBSSxLQUFLLENBQ2IsWUFBWSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksNEJBQTRCLENBQzlELENBQUM7U0FDSDtRQUVELHdFQUF3RTtRQUN4RSxzRUFBc0U7UUFDdEUsNkRBQTZEO1FBQzdELElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFakQsT0FBTztZQUNMLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU07WUFDekIsWUFBWSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVztTQUNyQyxDQUFDO0lBQ0osQ0FBQztDQUNGOzs7O0FBRUQsTUFBYSxnQkFBaUIsU0FBUSxNQUdyQzs7OztJQUdDLFlBQ0UsV0FBd0IsRUFDeEIsUUFBK0IsRUFBRTtRQUVqQyxLQUFLLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDOzs7O1FBTjVCLGVBQVUsR0FBRyx1QkFBZSxDQUFDO0lBTzdCLENBQUM7O0FBWEgsNENBWUM7Ozs7OztBQUVELE1BQWEsZ0JBQWlCLFNBQVEsTUFHckM7Ozs7SUFHQyxZQUNFLFdBQXdCLEVBQ3hCLFFBQStCLEVBQUU7UUFFakMsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQzs7OztRQU41QixlQUFVLEdBQUcsdUJBQWUsQ0FBQztJQU83QixDQUFDOztBQVhILDRDQVlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGVwbG95bWVudFNvdXJjZUNvbnRleHQsXG4gIElTb3VyY2UsXG4gIFNvdXJjZUNvbmZpZyxcbn0gZnJvbSAnQGF3cy1jZGsvYXdzLXMzLWRlcGxveW1lbnQnO1xuaW1wb3J0IHsgQ29uc3RydWN0LCBTdGFjayB9IGZyb20gJ0Bhd3MtY2RrL2NvcmUnO1xuaW1wb3J0IHsgQXNzZXRCYXNlUHJvcHMsIEFzc2V0UHJvcHMsIEphdmFTY3JpcHRBc3NldCwgVHlwZVNjcmlwdEFzc2V0IH0gZnJvbSAnLi9hc3NldCc7XG5pbXBvcnQgeyBFbnRyeVBvaW50cyB9IGZyb20gJy4vYnVuZGxlcic7XG5pbXBvcnQgeyBCdWlsZE9wdGlvbnMgfSBmcm9tICcuL2VzYnVpbGQtdHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEphdmFTY3JpcHRTb3VyY2VQcm9wcyBleHRlbmRzIEFzc2V0QmFzZVByb3Bze307XG5leHBvcnQgaW50ZXJmYWNlIFR5cGVTY3JpcHRTb3VyY2VQcm9wcyBleHRlbmRzIEFzc2V0QmFzZVByb3Bze307XG5cbmFic3RyYWN0IGNsYXNzIFNvdXJjZTxcbiAgUHJvcHMgZXh0ZW5kcyBKYXZhU2NyaXB0U291cmNlUHJvcHMgfCBUeXBlU2NyaXB0U291cmNlUHJvcHMsXG4gIEFzc2V0IGV4dGVuZHMgSmF2YVNjcmlwdEFzc2V0IHwgVHlwZVNjcmlwdEFzc2V0LFxuPiBpbXBsZW1lbnRzIElTb3VyY2Uge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYWJzdHJhY3QgYXNzZXRDbGFzczogbmV3IChcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IEFzc2V0UHJvcHMsXG4gICkgPT4gQXNzZXQ7XG5cbiAgcHJvdGVjdGVkIHByb3BzOiBBc3NldFByb3BzO1xuXG4gIHByb3RlY3RlZCBhc3NldCE6IEFzc2V0O1xuXG4gIC8qKlxuICAgKlxuICAgKiBAcGFyYW0gZW50cnlQb2ludHMgLSBSZWxhdGl2ZSBwYXRoIHRvIHRoZSBzb3VyY2UgY29kZS4gVXNlIGBwcm9wcy5idWlsZE9wdGlvbnMuYWJzV29ya2luZ0RpcmAgaWYgYW4gYWJzb2x1dGUgcGF0aCBpcyByZXF1aXJlZC5cbiAgICogQHBhcmFtIHByb3BzIC0gU291cmNlIHByb3BlcnRpZXMuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihlbnRyeVBvaW50czogRW50cnlQb2ludHMsIHByb3BzOiBQcm9wcykge1xuICAgIGNvbnN0IGRlZmF1bHRPcHRpb25zOiBQYXJ0aWFsPEJ1aWxkT3B0aW9ucz4gPSB7XG4gICAgICBwbGF0Zm9ybTogJ2Jyb3dzZXInLFxuICAgIH07XG5cbiAgICB0aGlzLnByb3BzID0ge1xuICAgICAgZW50cnlQb2ludHMsXG4gICAgICAuLi5wcm9wcyxcbiAgICAgIGJ1aWxkT3B0aW9uczoge1xuICAgICAgICAuLi5kZWZhdWx0T3B0aW9ucyxcbiAgICAgICAgLi4ucHJvcHMuYnVpbGRPcHRpb25zLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgYmluZChzY29wZTogQ29uc3RydWN0LCBjb250ZXh0PzogRGVwbG95bWVudFNvdXJjZUNvbnRleHQpOiBTb3VyY2VDb25maWcge1xuICAgIC8vIElmIHRoZSBzYW1lIEFzc2V0Q29kZSBpcyB1c2VkIG11bHRpcGxlIHRpbWVzLCByZXRhaW4gb25seSB0aGUgZmlyc3QgaW5zdGFudGlhdGlvbi5cbiAgICBpZiAoIXRoaXMuYXNzZXQpIHtcbiAgICAgIHRoaXMuYXNzZXQgPSBuZXcgdGhpcy5hc3NldENsYXNzKFxuICAgICAgICBzY29wZSxcbiAgICAgICAgdGhpcy5jb25zdHJ1Y3Rvci5uYW1lLFxuICAgICAgICB0aGlzLnByb3BzLFxuICAgICAgKTtcbiAgICB9IGVsc2UgaWYgKFN0YWNrLm9mKHRoaXMuYXNzZXQpICE9PSBTdGFjay5vZihzY29wZSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYEFzc2V0IGlzIGFscmVhZHkgYXNzb2NpYXRlZCB3aXRoIGFub3RoZXIgc3RhY2sgJyR7XG4gICAgICAgICAgU3RhY2sub2YodGhpcy5hc3NldCkuc3RhY2tOYW1lXG4gICAgICAgIH0nLiBgICsgJ0NyZWF0ZSBhIG5ldyBBc3NldCBpbnN0YW5jZSBmb3IgZXZlcnkgc3RhY2suJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKCFjb250ZXh0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBUbyB1c2UgYSAke3RoaXMuY29uc3RydWN0b3IubmFtZX0sIGNvbnRleHQgbXVzdCBiZSBwcm92aWRlZGAsXG4gICAgICApO1xuICAgIH1cblxuICAgIC8vIHdlIGdpdmUgcGVybWlzc2lvbnMgb24gYWxsIGZpbGVzIGluIHRoZSBidWNrZXQgc2luY2Ugd2UgZG9uJ3Qgd2FudCB0b1xuICAgIC8vIGFjY2lkZW50YWxseSByZXZva2UgcGVybWlzc2lvbiBvbiBvbGQgdmVyc2lvbnMgd2hlbiBkZXBsb3lpbmcgYSBuZXdcbiAgICAvLyB2ZXJzaW9uIChmb3IgZXhhbXBsZSwgd2hlbiB1c2luZyBMYW1iZGEgdHJhZmZpYyBzaGlmdGluZykuXG4gICAgdGhpcy5hc3NldC5idWNrZXQuZ3JhbnRSZWFkKGNvbnRleHQuaGFuZGxlclJvbGUpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGJ1Y2tldDogdGhpcy5hc3NldC5idWNrZXQsXG4gICAgICB6aXBPYmplY3RLZXk6IHRoaXMuYXNzZXQuczNPYmplY3RLZXksXG4gICAgfTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgSmF2YVNjcmlwdFNvdXJjZSBleHRlbmRzIFNvdXJjZTxcbkphdmFTY3JpcHRTb3VyY2VQcm9wcyxcbkphdmFTY3JpcHRBc3NldFxuPiB7XG4gIGFzc2V0Q2xhc3MgPSBKYXZhU2NyaXB0QXNzZXQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgZW50cnlQb2ludHM6IEVudHJ5UG9pbnRzLFxuICAgIHByb3BzOiBKYXZhU2NyaXB0U291cmNlUHJvcHMgPSB7fSxcbiAgKSB7XG4gICAgc3VwZXIoZW50cnlQb2ludHMsIHByb3BzKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgVHlwZVNjcmlwdFNvdXJjZSBleHRlbmRzIFNvdXJjZTxcblR5cGVTY3JpcHRTb3VyY2VQcm9wcyxcblR5cGVTY3JpcHRBc3NldFxuPiB7XG4gIGFzc2V0Q2xhc3MgPSBUeXBlU2NyaXB0QXNzZXQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgZW50cnlQb2ludHM6IEVudHJ5UG9pbnRzLFxuICAgIHByb3BzOiBUeXBlU2NyaXB0U291cmNlUHJvcHMgPSB7fSxcbiAgKSB7XG4gICAgc3VwZXIoZW50cnlQb2ludHMsIHByb3BzKTtcbiAgfVxufVxuIl19
package/package.json CHANGED
@@ -64,6 +64,7 @@
64
64
  "projen": "^0.30.3",
65
65
  "standard-version": "^9",
66
66
  "ts-jest": "^27.0.7",
67
+ "ts-morph": "^12.0.0",
67
68
  "ts-node": "^9",
68
69
  "typescript": "^4.4.4"
69
70
  },
@@ -102,7 +103,7 @@
102
103
  "publishConfig": {
103
104
  "tag": "next"
104
105
  },
105
- "version": "2.0.0-alpha.1",
106
+ "version": "2.0.0-rc.0",
106
107
  "jest": {
107
108
  "testMatch": [
108
109
  "**/__tests__/**/*.ts?(x)",
@@ -0,0 +1,50 @@
1
+ import { FileBase, FileBaseOptions, Project as ProjenProject } from 'projen';
2
+ import { execCapture } from 'projen/lib/util';
3
+ import { Project, SourceFile } from 'ts-morph';
4
+
5
+ interface TypeScriptSourceFileOptions extends Omit<FileBaseOptions, 'readonly'> {
6
+ source: string;
7
+ transformer?: (sourcefile: SourceFile) => void;
8
+ format?: boolean;
9
+ marker?: boolean;
10
+ }
11
+
12
+ export class TypeScriptSourceFile extends FileBase {
13
+ public readonly options: TypeScriptSourceFileOptions;
14
+
15
+ constructor(project: ProjenProject, filePath: string, options: TypeScriptSourceFileOptions) {
16
+ super(project, filePath, { ...options, readonly: false });
17
+
18
+ this.options = {
19
+ format: true,
20
+ marker: true,
21
+ ...options,
22
+ };
23
+ }
24
+
25
+ protected synthesizeContent(): string {
26
+ const tsProject = new Project({
27
+ tsConfigFilePath: 'tsconfig.json',
28
+ skipAddingFilesFromTsConfig: true,
29
+ });
30
+
31
+ const sourceFile = tsProject.addSourceFileAtPath(this.options.source);
32
+
33
+ if (this.options.transformer) {
34
+ this.options.transformer(sourceFile);
35
+ }
36
+
37
+ return [
38
+ ...(this.options.marker ? [`// ${TypeScriptSourceFile.PROJEN_MARKER}`] : []),
39
+ '',
40
+ sourceFile.getFullText(),
41
+ ].join('\n');
42
+ }
43
+
44
+ public postSynthesize() {
45
+ super.postSynthesize();
46
+
47
+ const outdir = this.project.outdir;
48
+ execCapture(`npx eslint --ext .ts --fix ${this.absolutePath}`, { cwd: outdir });
49
+ }
50
+ }
@@ -1,304 +0,0 @@
1
- export declare type Platform = 'browser' | 'node' | 'neutral';
2
- export declare type Format = 'iife' | 'cjs' | 'esm';
3
- export declare type Loader = 'js' | 'jsx' | 'ts' | 'tsx' | 'css' | 'json' | 'text' | 'base64' | 'file' | 'dataurl' | 'binary' | 'default';
4
- export declare type LogLevel = 'verbose' | 'debug' | 'info' | 'warning' | 'error' | 'silent';
5
- export declare type Charset = 'ascii' | 'utf8';
6
- interface CommonOptions {
7
- sourcemap?: boolean | 'inline' | 'external' | 'both';
8
- legalComments?: 'none' | 'inline' | 'eof' | 'linked' | 'external';
9
- sourceRoot?: string;
10
- sourcesContent?: boolean;
11
- format?: Format;
12
- globalName?: string;
13
- target?: string | string[];
14
- minify?: boolean;
15
- minifyWhitespace?: boolean;
16
- minifyIdentifiers?: boolean;
17
- minifySyntax?: boolean;
18
- charset?: Charset;
19
- treeShaking?: boolean;
20
- ignoreAnnotations?: boolean;
21
- jsx?: 'transform' | 'preserve';
22
- jsxFactory?: string;
23
- jsxFragment?: string;
24
- define?: {
25
- [key: string]: string;
26
- };
27
- pure?: string[];
28
- keepNames?: boolean;
29
- color?: boolean;
30
- logLevel?: LogLevel;
31
- logLimit?: number;
32
- }
33
- export interface BuildOptions extends CommonOptions {
34
- bundle?: boolean;
35
- splitting?: boolean;
36
- preserveSymlinks?: boolean;
37
- outfile?: string;
38
- metafile?: boolean;
39
- outdir?: string;
40
- outbase?: string;
41
- platform?: Platform;
42
- external?: string[];
43
- loader?: {
44
- [ext: string]: Loader;
45
- };
46
- resolveExtensions?: string[];
47
- mainFields?: string[];
48
- conditions?: string[];
49
- write?: boolean;
50
- allowOverwrite?: boolean;
51
- tsconfig?: string;
52
- outExtension?: {
53
- [ext: string]: string;
54
- };
55
- publicPath?: string;
56
- entryNames?: string;
57
- chunkNames?: string;
58
- assetNames?: string;
59
- inject?: string[];
60
- banner?: {
61
- [type: string]: string;
62
- };
63
- footer?: {
64
- [type: string]: string;
65
- };
66
- incremental?: boolean;
67
- entryPoints?: string[] | Record<string, string>;
68
- stdin?: StdinOptions;
69
- plugins?: Plugin[];
70
- absWorkingDir?: string;
71
- nodePaths?: string[];
72
- watch?: boolean | WatchMode;
73
- }
74
- export interface WatchMode {
75
- onRebuild?: (error: BuildFailure | null, result: BuildResult | null) => void;
76
- }
77
- export interface StdinOptions {
78
- contents: string;
79
- resolveDir?: string;
80
- sourcefile?: string;
81
- loader?: Loader;
82
- }
83
- export interface Message {
84
- pluginName: string;
85
- text: string;
86
- location: Location | null;
87
- notes: Note[];
88
- detail: any;
89
- }
90
- export interface Note {
91
- text: string;
92
- location: Location | null;
93
- }
94
- export interface Location {
95
- file: string;
96
- namespace: string;
97
- line: number;
98
- column: number;
99
- length: number;
100
- lineText: string;
101
- suggestion: string;
102
- }
103
- export interface OutputFile {
104
- path: string;
105
- contents: Uint8Array;
106
- text: string;
107
- }
108
- export interface BuildInvalidate {
109
- (): Promise<BuildIncremental>;
110
- dispose(): void;
111
- }
112
- export interface BuildIncremental extends BuildResult {
113
- rebuild: BuildInvalidate;
114
- }
115
- export interface BuildResult {
116
- errors: Message[];
117
- warnings: Message[];
118
- outputFiles?: OutputFile[];
119
- rebuild?: BuildInvalidate;
120
- stop?: () => void;
121
- metafile?: Metafile;
122
- }
123
- export interface BuildFailure extends Error {
124
- errors: Message[];
125
- warnings: Message[];
126
- }
127
- export interface ServeOptions {
128
- port?: number;
129
- host?: string;
130
- servedir?: string;
131
- onRequest?: (args: ServeOnRequestArgs) => void;
132
- }
133
- export interface ServeOnRequestArgs {
134
- remoteAddress: string;
135
- method: string;
136
- path: string;
137
- status: number;
138
- timeInMS: number;
139
- }
140
- export interface ServeResult {
141
- port: number;
142
- host: string;
143
- wait: Promise<void>;
144
- stop: () => void;
145
- }
146
- export interface TransformOptions extends CommonOptions {
147
- tsconfigRaw?: string | {
148
- compilerOptions?: {
149
- jsxFactory?: string;
150
- jsxFragmentFactory?: string;
151
- useDefineForClassFields?: boolean;
152
- importsNotUsedAsValues?: 'remove' | 'preserve' | 'error';
153
- };
154
- };
155
- sourcefile?: string;
156
- loader?: Loader;
157
- banner?: string;
158
- footer?: string;
159
- }
160
- export interface TransformResult {
161
- code: string;
162
- map: string;
163
- warnings: Message[];
164
- }
165
- export interface TransformFailure extends Error {
166
- errors: Message[];
167
- warnings: Message[];
168
- }
169
- export interface Plugin {
170
- name: string;
171
- setup: (build: PluginBuild) => (void | Promise<void>);
172
- }
173
- export interface PluginBuild {
174
- initialOptions: BuildOptions;
175
- onStart(callback: () => (OnStartResult | null | void | Promise<OnStartResult | null | void>)): void;
176
- onEnd(callback: (result: BuildResult) => (void | Promise<void>)): void;
177
- onResolve(options: OnResolveOptions, callback: (args: OnResolveArgs) => (OnResolveResult | null | undefined | Promise<OnResolveResult | null | undefined>)): void;
178
- onLoad(options: OnLoadOptions, callback: (args: OnLoadArgs) => (OnLoadResult | null | undefined | Promise<OnLoadResult | null | undefined>)): void;
179
- }
180
- export interface OnStartResult {
181
- errors?: PartialMessage[];
182
- warnings?: PartialMessage[];
183
- }
184
- export interface OnResolveOptions {
185
- filter: RegExp;
186
- namespace?: string;
187
- }
188
- export interface OnResolveArgs {
189
- path: string;
190
- importer: string;
191
- namespace: string;
192
- resolveDir: string;
193
- kind: ImportKind;
194
- pluginData: any;
195
- }
196
- export declare type ImportKind = 'entry-point' | 'import-statement' | 'require-call' | 'dynamic-import' | 'require-resolve' | 'import-rule' | 'url-token';
197
- export interface OnResolveResult {
198
- pluginName?: string;
199
- errors?: PartialMessage[];
200
- warnings?: PartialMessage[];
201
- path?: string;
202
- external?: boolean;
203
- sideEffects?: boolean;
204
- namespace?: string;
205
- pluginData?: any;
206
- watchFiles?: string[];
207
- watchDirs?: string[];
208
- }
209
- export interface OnLoadOptions {
210
- filter: RegExp;
211
- namespace?: string;
212
- }
213
- export interface OnLoadArgs {
214
- path: string;
215
- namespace: string;
216
- pluginData: any;
217
- }
218
- export interface OnLoadResult {
219
- pluginName?: string;
220
- errors?: PartialMessage[];
221
- warnings?: PartialMessage[];
222
- contents?: string | Uint8Array;
223
- resolveDir?: string;
224
- loader?: Loader;
225
- pluginData?: any;
226
- watchFiles?: string[];
227
- watchDirs?: string[];
228
- }
229
- export interface PartialMessage {
230
- pluginName?: string;
231
- text?: string;
232
- location?: Partial<Location> | null;
233
- notes?: PartialNote[];
234
- detail?: any;
235
- }
236
- export interface PartialNote {
237
- text?: string;
238
- location?: Partial<Location> | null;
239
- }
240
- export interface Metafile {
241
- inputs: {
242
- [path: string]: {
243
- bytes: number;
244
- imports: {
245
- path: string;
246
- kind: ImportKind;
247
- }[];
248
- };
249
- };
250
- outputs: {
251
- [path: string]: {
252
- bytes: number;
253
- inputs: {
254
- [path: string]: {
255
- bytesInOutput: number;
256
- };
257
- };
258
- imports: {
259
- path: string;
260
- kind: ImportKind;
261
- }[];
262
- exports: string[];
263
- entryPoint?: string;
264
- };
265
- };
266
- }
267
- export interface FormatMessagesOptions {
268
- kind: 'error' | 'warning';
269
- color?: boolean;
270
- terminalWidth?: number;
271
- }
272
- export interface AnalyzeMetafileOptions {
273
- color?: boolean;
274
- verbose?: boolean;
275
- }
276
- export declare function build(options: BuildOptions & {
277
- write: false;
278
- }): Promise<BuildResult & {
279
- outputFiles: OutputFile[];
280
- }>;
281
- export declare function build(options: BuildOptions & {
282
- incremental: true;
283
- }): Promise<BuildIncremental>;
284
- export declare function build(options: BuildOptions): Promise<BuildResult>;
285
- export declare function serve(serveOptions: ServeOptions, buildOptions: BuildOptions): Promise<ServeResult>;
286
- export declare function transform(input: string, options?: TransformOptions): Promise<TransformResult>;
287
- export declare function formatMessages(messages: PartialMessage[], options: FormatMessagesOptions): Promise<string[]>;
288
- export declare function analyzeMetafile(metafile: Metafile | string, options?: AnalyzeMetafileOptions): Promise<string>;
289
- export declare function buildSync(options: BuildOptions & {
290
- write: false;
291
- }): BuildResult & {
292
- outputFiles: OutputFile[];
293
- };
294
- export declare function buildSync(options: BuildOptions): BuildResult;
295
- export declare function transformSync(input: string, options?: TransformOptions): TransformResult;
296
- export declare function formatMessagesSync(messages: PartialMessage[], options: FormatMessagesOptions): string[];
297
- export declare function analyzeMetafileSync(metafile: Metafile | string, options?: AnalyzeMetafileOptions): string;
298
- export declare function initialize(options: InitializeOptions): Promise<void>;
299
- export interface InitializeOptions {
300
- wasmURL?: string;
301
- worker?: boolean;
302
- }
303
- export declare let version: string;
304
- export {};
@@ -1,4 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.version = void 0;
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNidWlsZC10eXBlcy1yYXcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZXNidWlsZC10eXBlcy1yYXcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFBsYXRmb3JtID0gJ2Jyb3dzZXInIHwgJ25vZGUnIHwgJ25ldXRyYWwnO1xuZXhwb3J0IHR5cGUgRm9ybWF0ID0gJ2lpZmUnIHwgJ2NqcycgfCAnZXNtJztcbmV4cG9ydCB0eXBlIExvYWRlciA9ICdqcycgfCAnanN4JyB8ICd0cycgfCAndHN4JyB8ICdjc3MnIHwgJ2pzb24nIHwgJ3RleHQnIHwgJ2Jhc2U2NCcgfCAnZmlsZScgfCAnZGF0YXVybCcgfCAnYmluYXJ5JyB8ICdkZWZhdWx0JztcbmV4cG9ydCB0eXBlIExvZ0xldmVsID0gJ3ZlcmJvc2UnIHwgJ2RlYnVnJyB8ICdpbmZvJyB8ICd3YXJuaW5nJyB8ICdlcnJvcicgfCAnc2lsZW50JztcbmV4cG9ydCB0eXBlIENoYXJzZXQgPSAnYXNjaWknIHwgJ3V0ZjgnO1xuXG5pbnRlcmZhY2UgQ29tbW9uT3B0aW9ucyB7XG4gIHNvdXJjZW1hcD86IGJvb2xlYW4gfCAnaW5saW5lJyB8ICdleHRlcm5hbCcgfCAnYm90aCc7XG4gIGxlZ2FsQ29tbWVudHM/OiAnbm9uZScgfCAnaW5saW5lJyB8ICdlb2YnIHwgJ2xpbmtlZCcgfCAnZXh0ZXJuYWwnO1xuICBzb3VyY2VSb290Pzogc3RyaW5nO1xuICBzb3VyY2VzQ29udGVudD86IGJvb2xlYW47XG5cbiAgZm9ybWF0PzogRm9ybWF0O1xuICBnbG9iYWxOYW1lPzogc3RyaW5nO1xuICB0YXJnZXQ/OiBzdHJpbmcgfCBzdHJpbmdbXTtcblxuICBtaW5pZnk/OiBib29sZWFuO1xuICBtaW5pZnlXaGl0ZXNwYWNlPzogYm9vbGVhbjtcbiAgbWluaWZ5SWRlbnRpZmllcnM/OiBib29sZWFuO1xuICBtaW5pZnlTeW50YXg/OiBib29sZWFuO1xuICBjaGFyc2V0PzogQ2hhcnNldDtcbiAgdHJlZVNoYWtpbmc/OiBib29sZWFuO1xuICBpZ25vcmVBbm5vdGF0aW9ucz86IGJvb2xlYW47XG5cbiAganN4PzogJ3RyYW5zZm9ybScgfCAncHJlc2VydmUnO1xuICBqc3hGYWN0b3J5Pzogc3RyaW5nO1xuICBqc3hGcmFnbWVudD86IHN0cmluZztcblxuICBkZWZpbmU/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuICBwdXJlPzogc3RyaW5nW107XG4gIGtlZXBOYW1lcz86IGJvb2xlYW47XG5cbiAgY29sb3I/OiBib29sZWFuO1xuICBsb2dMZXZlbD86IExvZ0xldmVsO1xuICBsb2dMaW1pdD86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCdWlsZE9wdGlvbnMgZXh0ZW5kcyBDb21tb25PcHRpb25zIHtcbiAgYnVuZGxlPzogYm9vbGVhbjtcbiAgc3BsaXR0aW5nPzogYm9vbGVhbjtcbiAgcHJlc2VydmVTeW1saW5rcz86IGJvb2xlYW47XG4gIG91dGZpbGU/OiBzdHJpbmc7XG4gIG1ldGFmaWxlPzogYm9vbGVhbjtcbiAgb3V0ZGlyPzogc3RyaW5nO1xuICBvdXRiYXNlPzogc3RyaW5nO1xuICBwbGF0Zm9ybT86IFBsYXRmb3JtO1xuICBleHRlcm5hbD86IHN0cmluZ1tdO1xuICBsb2FkZXI/OiB7IFtleHQ6IHN0cmluZ106IExvYWRlciB9O1xuICByZXNvbHZlRXh0ZW5zaW9ucz86IHN0cmluZ1tdO1xuICBtYWluRmllbGRzPzogc3RyaW5nW107XG4gIGNvbmRpdGlvbnM/OiBzdHJpbmdbXTtcbiAgd3JpdGU/OiBib29sZWFuO1xuICBhbGxvd092ZXJ3cml0ZT86IGJvb2xlYW47XG4gIHRzY29uZmlnPzogc3RyaW5nO1xuICBvdXRFeHRlbnNpb24/OiB7IFtleHQ6IHN0cmluZ106IHN0cmluZyB9O1xuICBwdWJsaWNQYXRoPzogc3RyaW5nO1xuICBlbnRyeU5hbWVzPzogc3RyaW5nO1xuICBjaHVua05hbWVzPzogc3RyaW5nO1xuICBhc3NldE5hbWVzPzogc3RyaW5nO1xuICBpbmplY3Q/OiBzdHJpbmdbXTtcbiAgYmFubmVyPzogeyBbdHlwZTogc3RyaW5nXTogc3RyaW5nIH07XG4gIGZvb3Rlcj86IHsgW3R5cGU6IHN0cmluZ106IHN0cmluZyB9O1xuICBpbmNyZW1lbnRhbD86IGJvb2xlYW47XG4gIGVudHJ5UG9pbnRzPzogc3RyaW5nW10gfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICBzdGRpbj86IFN0ZGluT3B0aW9ucztcbiAgcGx1Z2lucz86IFBsdWdpbltdO1xuICBhYnNXb3JraW5nRGlyPzogc3RyaW5nO1xuICBub2RlUGF0aHM/OiBzdHJpbmdbXTsgLy8gVGhlIFwiTk9ERV9QQVRIXCIgdmFyaWFibGUgZnJvbSBOb2RlLmpzXG4gIHdhdGNoPzogYm9vbGVhbiB8IFdhdGNoTW9kZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXYXRjaE1vZGUge1xuICBvblJlYnVpbGQ/OiAoZXJyb3I6IEJ1aWxkRmFpbHVyZSB8IG51bGwsIHJlc3VsdDogQnVpbGRSZXN1bHQgfCBudWxsKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0ZGluT3B0aW9ucyB7XG4gIGNvbnRlbnRzOiBzdHJpbmc7XG4gIHJlc29sdmVEaXI/OiBzdHJpbmc7XG4gIHNvdXJjZWZpbGU/OiBzdHJpbmc7XG4gIGxvYWRlcj86IExvYWRlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNZXNzYWdlIHtcbiAgcGx1Z2luTmFtZTogc3RyaW5nO1xuICB0ZXh0OiBzdHJpbmc7XG4gIGxvY2F0aW9uOiBMb2NhdGlvbiB8IG51bGw7XG4gIG5vdGVzOiBOb3RlW107XG5cbiAgLy8gT3B0aW9uYWwgdXNlci1zcGVjaWZpZWQgZGF0YSB0aGF0IGlzIHBhc3NlZCB0aHJvdWdoIHVubW9kaWZpZWQuIFlvdSBjYW5cbiAgLy8gdXNlIHRoaXMgdG8gc3Rhc2ggdGhlIG9yaWdpbmFsIGVycm9yLCBmb3IgZXhhbXBsZS5cbiAgZGV0YWlsOiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTm90ZSB7XG4gIHRleHQ6IHN0cmluZztcbiAgbG9jYXRpb246IExvY2F0aW9uIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMb2NhdGlvbiB7XG4gIGZpbGU6IHN0cmluZztcbiAgbmFtZXNwYWNlOiBzdHJpbmc7XG4gIGxpbmU6IG51bWJlcjsgLy8gMS1iYXNlZFxuICBjb2x1bW46IG51bWJlcjsgLy8gMC1iYXNlZCwgaW4gYnl0ZXNcbiAgbGVuZ3RoOiBudW1iZXI7IC8vIGluIGJ5dGVzXG4gIGxpbmVUZXh0OiBzdHJpbmc7XG4gIHN1Z2dlc3Rpb246IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPdXRwdXRGaWxlIHtcbiAgcGF0aDogc3RyaW5nO1xuICBjb250ZW50czogVWludDhBcnJheTsgLy8gXCJ0ZXh0XCIgYXMgYnl0ZXNcbiAgdGV4dDogc3RyaW5nOyAvLyBcImNvbnRlbnRzXCIgYXMgdGV4dFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkSW52YWxpZGF0ZSB7XG4gICgpOiBQcm9taXNlPEJ1aWxkSW5jcmVtZW50YWw+O1xuICBkaXNwb3NlKCk6IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnVpbGRJbmNyZW1lbnRhbCBleHRlbmRzIEJ1aWxkUmVzdWx0IHtcbiAgcmVidWlsZDogQnVpbGRJbnZhbGlkYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkUmVzdWx0IHtcbiAgZXJyb3JzOiBNZXNzYWdlW107XG4gIHdhcm5pbmdzOiBNZXNzYWdlW107XG4gIG91dHB1dEZpbGVzPzogT3V0cHV0RmlsZVtdOyAvLyBPbmx5IHdoZW4gXCJ3cml0ZTogZmFsc2VcIlxuICByZWJ1aWxkPzogQnVpbGRJbnZhbGlkYXRlOyAvLyBPbmx5IHdoZW4gXCJpbmNyZW1lbnRhbDogdHJ1ZVwiXG4gIHN0b3A/OiAoKSA9PiB2b2lkOyAvLyBPbmx5IHdoZW4gXCJ3YXRjaDogdHJ1ZVwiXG4gIG1ldGFmaWxlPzogTWV0YWZpbGU7IC8vIE9ubHkgd2hlbiBcIm1ldGFmaWxlOiB0cnVlXCJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCdWlsZEZhaWx1cmUgZXh0ZW5kcyBFcnJvciB7XG4gIGVycm9yczogTWVzc2FnZVtdO1xuICB3YXJuaW5nczogTWVzc2FnZVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZlT3B0aW9ucyB7XG4gIHBvcnQ/OiBudW1iZXI7XG4gIGhvc3Q/OiBzdHJpbmc7XG4gIHNlcnZlZGlyPzogc3RyaW5nO1xuICBvblJlcXVlc3Q/OiAoYXJnczogU2VydmVPblJlcXVlc3RBcmdzKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZlT25SZXF1ZXN0QXJncyB7XG4gIHJlbW90ZUFkZHJlc3M6IHN0cmluZztcbiAgbWV0aG9kOiBzdHJpbmc7XG4gIHBhdGg6IHN0cmluZztcbiAgc3RhdHVzOiBudW1iZXI7XG4gIHRpbWVJbk1TOiBudW1iZXI7IC8vIFRoZSB0aW1lIHRvIGdlbmVyYXRlIHRoZSByZXNwb25zZSwgbm90IHRvIHNlbmQgaXRcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZXJ2ZVJlc3VsdCB7XG4gIHBvcnQ6IG51bWJlcjtcbiAgaG9zdDogc3RyaW5nO1xuICB3YWl0OiBQcm9taXNlPHZvaWQ+O1xuICBzdG9wOiAoKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zZm9ybU9wdGlvbnMgZXh0ZW5kcyBDb21tb25PcHRpb25zIHtcbiAgdHNjb25maWdSYXc/OiBzdHJpbmcgfCB7XG4gICAgY29tcGlsZXJPcHRpb25zPzoge1xuICAgICAganN4RmFjdG9yeT86IHN0cmluZztcbiAgICAgIGpzeEZyYWdtZW50RmFjdG9yeT86IHN0cmluZztcbiAgICAgIHVzZURlZmluZUZvckNsYXNzRmllbGRzPzogYm9vbGVhbjtcbiAgICAgIGltcG9ydHNOb3RVc2VkQXNWYWx1ZXM/OiAncmVtb3ZlJyB8ICdwcmVzZXJ2ZScgfCAnZXJyb3InO1xuICAgIH07XG4gIH07XG5cbiAgc291cmNlZmlsZT86IHN0cmluZztcbiAgbG9hZGVyPzogTG9hZGVyO1xuICBiYW5uZXI/OiBzdHJpbmc7XG4gIGZvb3Rlcj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2Zvcm1SZXN1bHQge1xuICBjb2RlOiBzdHJpbmc7XG4gIG1hcDogc3RyaW5nO1xuICB3YXJuaW5nczogTWVzc2FnZVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zZm9ybUZhaWx1cmUgZXh0ZW5kcyBFcnJvciB7XG4gIGVycm9yczogTWVzc2FnZVtdO1xuICB3YXJuaW5nczogTWVzc2FnZVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBsdWdpbiB7XG4gIG5hbWU6IHN0cmluZztcbiAgc2V0dXA6IChidWlsZDogUGx1Z2luQnVpbGQpID0+ICh2b2lkIHwgUHJvbWlzZTx2b2lkPik7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGx1Z2luQnVpbGQge1xuICBpbml0aWFsT3B0aW9uczogQnVpbGRPcHRpb25zO1xuICBvblN0YXJ0KGNhbGxiYWNrOiAoKSA9PlxuICAoT25TdGFydFJlc3VsdCB8IG51bGwgfCB2b2lkIHwgUHJvbWlzZTxPblN0YXJ0UmVzdWx0IHwgbnVsbCB8IHZvaWQ+KSk6IHZvaWQ7XG4gIG9uRW5kKGNhbGxiYWNrOiAocmVzdWx0OiBCdWlsZFJlc3VsdCkgPT5cbiAgKHZvaWQgfCBQcm9taXNlPHZvaWQ+KSk6IHZvaWQ7XG4gIG9uUmVzb2x2ZShvcHRpb25zOiBPblJlc29sdmVPcHRpb25zLCBjYWxsYmFjazogKGFyZ3M6IE9uUmVzb2x2ZUFyZ3MpID0+XG4gIChPblJlc29sdmVSZXN1bHQgfCBudWxsIHwgdW5kZWZpbmVkIHwgUHJvbWlzZTxPblJlc29sdmVSZXN1bHQgfCBudWxsIHwgdW5kZWZpbmVkPikpOiB2b2lkO1xuICBvbkxvYWQob3B0aW9uczogT25Mb2FkT3B0aW9ucywgY2FsbGJhY2s6IChhcmdzOiBPbkxvYWRBcmdzKSA9PlxuICAoT25Mb2FkUmVzdWx0IHwgbnVsbCB8IHVuZGVmaW5lZCB8IFByb21pc2U8T25Mb2FkUmVzdWx0IHwgbnVsbCB8IHVuZGVmaW5lZD4pKTogdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPblN0YXJ0UmVzdWx0IHtcbiAgZXJyb3JzPzogUGFydGlhbE1lc3NhZ2VbXTtcbiAgd2FybmluZ3M/OiBQYXJ0aWFsTWVzc2FnZVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9uUmVzb2x2ZU9wdGlvbnMge1xuICBmaWx0ZXI6IFJlZ0V4cDtcbiAgbmFtZXNwYWNlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9uUmVzb2x2ZUFyZ3Mge1xuICBwYXRoOiBzdHJpbmc7XG4gIGltcG9ydGVyOiBzdHJpbmc7XG4gIG5hbWVzcGFjZTogc3RyaW5nO1xuICByZXNvbHZlRGlyOiBzdHJpbmc7XG4gIGtpbmQ6IEltcG9ydEtpbmQ7XG4gIHBsdWdpbkRhdGE6IGFueTtcbn1cblxuZXhwb3J0IHR5cGUgSW1wb3J0S2luZCA9XG4gIHwgJ2VudHJ5LXBvaW50J1xuXG4gIC8vIEpTXG4gIHwgJ2ltcG9ydC1zdGF0ZW1lbnQnXG4gIHwgJ3JlcXVpcmUtY2FsbCdcbiAgfCAnZHluYW1pYy1pbXBvcnQnXG4gIHwgJ3JlcXVpcmUtcmVzb2x2ZSdcblxuICAvLyBDU1NcbiAgfCAnaW1wb3J0LXJ1bGUnXG4gIHwgJ3VybC10b2tlbidcblxuZXhwb3J0IGludGVyZmFjZSBPblJlc29sdmVSZXN1bHQge1xuICBwbHVnaW5OYW1lPzogc3RyaW5nO1xuXG4gIGVycm9ycz86IFBhcnRpYWxNZXNzYWdlW107XG4gIHdhcm5pbmdzPzogUGFydGlhbE1lc3NhZ2VbXTtcblxuICBwYXRoPzogc3RyaW5nO1xuICBleHRlcm5hbD86IGJvb2xlYW47XG4gIHNpZGVFZmZlY3RzPzogYm9vbGVhbjtcbiAgbmFtZXNwYWNlPzogc3RyaW5nO1xuICBwbHVnaW5EYXRhPzogYW55O1xuXG4gIHdhdGNoRmlsZXM/OiBzdHJpbmdbXTtcbiAgd2F0Y2hEaXJzPzogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT25Mb2FkT3B0aW9ucyB7XG4gIGZpbHRlcjogUmVnRXhwO1xuICBuYW1lc3BhY2U/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT25Mb2FkQXJncyB7XG4gIHBhdGg6IHN0cmluZztcbiAgbmFtZXNwYWNlOiBzdHJpbmc7XG4gIHBsdWdpbkRhdGE6IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPbkxvYWRSZXN1bHQge1xuICBwbHVnaW5OYW1lPzogc3RyaW5nO1xuXG4gIGVycm9ycz86IFBhcnRpYWxNZXNzYWdlW107XG4gIHdhcm5pbmdzPzogUGFydGlhbE1lc3NhZ2VbXTtcblxuICBjb250ZW50cz86IHN0cmluZyB8IFVpbnQ4QXJyYXk7XG4gIHJlc29sdmVEaXI/OiBzdHJpbmc7XG4gIGxvYWRlcj86IExvYWRlcjtcbiAgcGx1Z2luRGF0YT86IGFueTtcblxuICB3YXRjaEZpbGVzPzogc3RyaW5nW107XG4gIHdhdGNoRGlycz86IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhcnRpYWxNZXNzYWdlIHtcbiAgcGx1Z2luTmFtZT86IHN0cmluZztcbiAgdGV4dD86IHN0cmluZztcbiAgbG9jYXRpb24/OiBQYXJ0aWFsPExvY2F0aW9uPiB8IG51bGw7XG4gIG5vdGVzPzogUGFydGlhbE5vdGVbXTtcbiAgZGV0YWlsPzogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhcnRpYWxOb3RlIHtcbiAgdGV4dD86IHN0cmluZztcbiAgbG9jYXRpb24/OiBQYXJ0aWFsPExvY2F0aW9uPiB8IG51bGw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWV0YWZpbGUge1xuICBpbnB1dHM6IHtcbiAgICBbcGF0aDogc3RyaW5nXToge1xuICAgICAgYnl0ZXM6IG51bWJlcjtcbiAgICAgIGltcG9ydHM6IHtcbiAgICAgICAgcGF0aDogc3RyaW5nO1xuICAgICAgICBraW5kOiBJbXBvcnRLaW5kO1xuICAgICAgfVtdO1xuICAgIH07XG4gIH07XG4gIG91dHB1dHM6IHtcbiAgICBbcGF0aDogc3RyaW5nXToge1xuICAgICAgYnl0ZXM6IG51bWJlcjtcbiAgICAgIGlucHV0czoge1xuICAgICAgICBbcGF0aDogc3RyaW5nXToge1xuICAgICAgICAgIGJ5dGVzSW5PdXRwdXQ6IG51bWJlcjtcbiAgICAgICAgfTtcbiAgICAgIH07XG4gICAgICBpbXBvcnRzOiB7XG4gICAgICAgIHBhdGg6IHN0cmluZztcbiAgICAgICAga2luZDogSW1wb3J0S2luZDtcbiAgICAgIH1bXTtcbiAgICAgIGV4cG9ydHM6IHN0cmluZ1tdO1xuICAgICAgZW50cnlQb2ludD86IHN0cmluZztcbiAgICB9O1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1hdE1lc3NhZ2VzT3B0aW9ucyB7XG4gIGtpbmQ6ICdlcnJvcicgfCAnd2FybmluZyc7XG4gIGNvbG9yPzogYm9vbGVhbjtcbiAgdGVybWluYWxXaWR0aD86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbmFseXplTWV0YWZpbGVPcHRpb25zIHtcbiAgY29sb3I/OiBib29sZWFuO1xuICB2ZXJib3NlPzogYm9vbGVhbjtcbn1cblxuLy8gVGhpcyBmdW5jdGlvbiBpbnZva2VzIHRoZSBcImVzYnVpbGRcIiBjb21tYW5kLWxpbmUgdG9vbCBmb3IgeW91LiBJdCByZXR1cm5zIGFcbi8vIHByb21pc2UgdGhhdCBlaXRoZXIgcmVzb2x2ZXMgd2l0aCBhIFwiQnVpbGRSZXN1bHRcIiBvYmplY3Qgb3IgcmVqZWN0cyB3aXRoIGFcbi8vIFwiQnVpbGRGYWlsdXJlXCIgb2JqZWN0LlxuLy9cbi8vIFdvcmtzIGluIG5vZGU6IHllc1xuLy8gV29ya3MgaW4gYnJvd3NlcjogeWVzXG5leHBvcnQgZGVjbGFyZSBmdW5jdGlvbiBidWlsZChvcHRpb25zOiBCdWlsZE9wdGlvbnMgJiB7IHdyaXRlOiBmYWxzZSB9KTogUHJvbWlzZTxCdWlsZFJlc3VsdCAmIHsgb3V0cHV0RmlsZXM6IE91dHB1dEZpbGVbXSB9PjtcbmV4cG9ydCBkZWNsYXJlIGZ1bmN0aW9uIGJ1aWxkKG9wdGlvbnM6IEJ1aWxkT3B0aW9ucyAmIHsgaW5jcmVtZW50YWw6IHRydWUgfSk6IFByb21pc2U8QnVpbGRJbmNyZW1lbnRhbD47XG5leHBvcnQgZGVjbGFyZSBmdW5jdGlvbiBidWlsZChvcHRpb25zOiBCdWlsZE9wdGlvbnMpOiBQcm9taXNlPEJ1aWxkUmVzdWx0PjtcblxuLy8gVGhpcyBmdW5jdGlvbiBpcyBzaW1pbGFyIHRvIFwiYnVpbGRcIiBidXQgaXQgc2VydmVzIHRoZSByZXN1bHRpbmcgZmlsZXMgb3ZlclxuLy8gSFRUUCBvbiBhIGxvY2FsaG9zdCBhZGRyZXNzIHdpdGggdGhlIHNwZWNpZmllZCBwb3J0LlxuLy9cbi8vIFdvcmtzIGluIG5vZGU6IHllc1xuLy8gV29ya3MgaW4gYnJvd3Nlcjogbm9cbmV4cG9ydCBkZWNsYXJlIGZ1bmN0aW9uIHNlcnZlKHNlcnZlT3B0aW9uczogU2VydmVPcHRpb25zLCBidWlsZE9wdGlvbnM6IEJ1aWxkT3B0aW9ucyk6IFByb21pc2U8U2VydmVSZXN1bHQ+O1xuXG4vLyBUaGlzIGZ1bmN0aW9uIHRyYW5zZm9ybXMgYSBzaW5nbGUgSmF2YVNjcmlwdCBmaWxlLiBJdCBjYW4gYmUgdXNlZCB0byBtaW5pZnlcbi8vIEphdmFTY3JpcHQsIGNvbnZlcnQgVHlwZVNjcmlwdC9KU1ggdG8gSmF2YVNjcmlwdCwgb3IgY29udmVydCBuZXdlciBKYXZhU2NyaXB0XG4vLyB0byBvbGRlciBKYXZhU2NyaXB0LiBJdCByZXR1cm5zIGEgcHJvbWlzZSB0aGF0IGlzIGVpdGhlciByZXNvbHZlZCB3aXRoIGFcbi8vIFwiVHJhbnNmb3JtUmVzdWx0XCIgb2JqZWN0IG9yIHJlamVjdGVkIHdpdGggYSBcIlRyYW5zZm9ybUZhaWx1cmVcIiBvYmplY3QuXG4vL1xuLy8gV29ya3MgaW4gbm9kZTogeWVzXG4vLyBXb3JrcyBpbiBicm93c2VyOiB5ZXNcbmV4cG9ydCBkZWNsYXJlIGZ1bmN0aW9uIHRyYW5zZm9ybShpbnB1dDogc3RyaW5nLCBvcHRpb25zPzogVHJhbnNmb3JtT3B0aW9ucyk6IFByb21pc2U8VHJhbnNmb3JtUmVzdWx0PjtcblxuLy8gQ29udmVydHMgbG9nIG1lc3NhZ2VzIHRvIGZvcm1hdHRlZCBtZXNzYWdlIHN0cmluZ3Mgc3VpdGFibGUgZm9yIHByaW50aW5nIGluXG4vLyB0aGUgdGVybWluYWwuIFRoaXMgYWxsb3dzIHlvdSB0byByZXVzZSB0aGUgYnVpbHQtaW4gYmVoYXZpb3Igb2YgZXNidWlsZCdzXG4vLyBsb2cgbWVzc2FnZSBmb3JtYXR0ZXIuIFRoaXMgaXMgYSBiYXRjaC1vcmllbnRlZCBBUEkgZm9yIGVmZmljaWVuY3kuXG4vL1xuLy8gV29ya3MgaW4gbm9kZTogeWVzXG4vLyBXb3JrcyBpbiBicm93c2VyOiB5ZXNcbmV4cG9ydCBkZWNsYXJlIGZ1bmN0aW9uIGZvcm1hdE1lc3NhZ2VzKG1lc3NhZ2VzOiBQYXJ0aWFsTWVzc2FnZVtdLCBvcHRpb25zOiBGb3JtYXRNZXNzYWdlc09wdGlvbnMpOiBQcm9taXNlPHN0cmluZ1tdPjtcblxuLy8gUHJldHR5LXByaW50cyBhbiBhbmFseXNpcyBvZiB0aGUgbWV0YWZpbGUgSlNPTiB0byBhIHN0cmluZy4gVGhpcyBpcyBqdXN0IGZvclxuLy8gY29udmVuaWVuY2UgdG8gYmUgYWJsZSB0byBtYXRjaCBlc2J1aWxkJ3MgcHJldHR5LXByaW50aW5nIGV4YWN0bHkuIElmIHlvdSB3YW50XG4vLyB0byBjdXN0b21pemUgaXQsIHlvdSBjYW4ganVzdCBpbnNwZWN0IHRoZSBkYXRhIGluIHRoZSBtZXRhZmlsZSB5b3Vyc2VsZi5cbi8vXG4vLyBXb3JrcyBpbiBub2RlOiB5ZXNcbi8vIFdvcmtzIGluIGJyb3dzZXI6IHllc1xuZXhwb3J0IGRlY2xhcmUgZnVuY3Rpb24gYW5hbHl6ZU1ldGFmaWxlKG1ldGFmaWxlOiBNZXRhZmlsZSB8IHN0cmluZywgb3B0aW9ucz86IEFuYWx5emVNZXRhZmlsZU9wdGlvbnMpOiBQcm9taXNlPHN0cmluZz47XG5cbi8vIEEgc3luY2hyb25vdXMgdmVyc2lvbiBvZiBcImJ1aWxkXCIuXG4vL1xuLy8gV29ya3MgaW4gbm9kZTogeWVzXG4vLyBXb3JrcyBpbiBicm93c2VyOiBub1xuZXhwb3J0IGRlY2xhcmUgZnVuY3Rpb24gYnVpbGRTeW5jKG9wdGlvbnM6IEJ1aWxkT3B0aW9ucyAmIHsgd3JpdGU6IGZhbHNlIH0pOiBCdWlsZFJlc3VsdCAmIHsgb3V0cHV0RmlsZXM6IE91dHB1dEZpbGVbXSB9O1xuZXhwb3J0IGRlY2xhcmUgZnVuY3Rpb24gYnVpbGRTeW5jKG9wdGlvbnM6IEJ1aWxkT3B0aW9ucyk6IEJ1aWxkUmVzdWx0O1xuXG4vLyBBIHN5bmNocm9ub3VzIHZlcnNpb24gb2YgXCJ0cmFuc2Zvcm1cIi5cbi8vXG4vLyBXb3JrcyBpbiBub2RlOiB5ZXNcbi8vIFdvcmtzIGluIGJyb3dzZXI6IG5vXG5leHBvcnQgZGVjbGFyZSBmdW5jdGlvbiB0cmFuc2Zvcm1TeW5jKGlucHV0OiBzdHJpbmcsIG9wdGlvbnM/OiBUcmFuc2Zvcm1PcHRpb25zKTogVHJhbnNmb3JtUmVzdWx0O1xuXG4vLyBBIHN5bmNocm9ub3VzIHZlcnNpb24gb2YgXCJmb3JtYXRNZXNzYWdlc1wiLlxuLy9cbi8vIFdvcmtzIGluIG5vZGU6IHllc1xuLy8gV29ya3MgaW4gYnJvd3Nlcjogbm9cbmV4cG9ydCBkZWNsYXJlIGZ1bmN0aW9uIGZvcm1hdE1lc3NhZ2VzU3luYyhtZXNzYWdlczogUGFydGlhbE1lc3NhZ2VbXSwgb3B0aW9uczogRm9ybWF0TWVzc2FnZXNPcHRpb25zKTogc3RyaW5nW107XG5cbi8vIEEgc3luY2hyb25vdXMgdmVyc2lvbiBvZiBcImFuYWx5emVNZXRhZmlsZVwiLlxuLy9cbi8vIFdvcmtzIGluIG5vZGU6IHllc1xuLy8gV29ya3MgaW4gYnJvd3Nlcjogbm9cbmV4cG9ydCBkZWNsYXJlIGZ1bmN0aW9uIGFuYWx5emVNZXRhZmlsZVN5bmMobWV0YWZpbGU6IE1ldGFmaWxlIHwgc3RyaW5nLCBvcHRpb25zPzogQW5hbHl6ZU1ldGFmaWxlT3B0aW9ucyk6IHN0cmluZztcblxuLy8gVGhpcyBjb25maWd1cmVzIHRoZSBicm93c2VyLWJhc2VkIHZlcnNpb24gb2YgZXNidWlsZC4gSXQgaXMgbmVjZXNzYXJ5IHRvXG4vLyBjYWxsIHRoaXMgZmlyc3QgYW5kIHdhaXQgZm9yIHRoZSByZXR1cm5lZCBwcm9taXNlIHRvIGJlIHJlc29sdmVkIGJlZm9yZVxuLy8gbWFraW5nIG90aGVyIEFQSSBjYWxscyB3aGVuIHVzaW5nIGVzYnVpbGQgaW4gdGhlIGJyb3dzZXIuXG4vL1xuLy8gV29ya3MgaW4gbm9kZTogeWVzXG4vLyBXb3JrcyBpbiBicm93c2VyOiB5ZXMgKFwib3B0aW9uc1wiIGlzIHJlcXVpcmVkKVxuZXhwb3J0IGRlY2xhcmUgZnVuY3Rpb24gaW5pdGlhbGl6ZShvcHRpb25zOiBJbml0aWFsaXplT3B0aW9ucyk6IFByb21pc2U8dm9pZD47XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5pdGlhbGl6ZU9wdGlvbnMge1xuICAvLyBUaGUgVVJMIG9mIHRoZSBcImVzYnVpbGQud2FzbVwiIGZpbGUuIFRoaXMgbXVzdCBiZSBwcm92aWRlZCB3aGVuIHJ1bm5pbmdcbiAgLy8gZXNidWlsZCBpbiB0aGUgYnJvd3Nlci5cbiAgd2FzbVVSTD86IHN0cmluZztcblxuICAvLyBCeSBkZWZhdWx0IGVzYnVpbGQgcnVucyB0aGUgV2ViQXNzZW1ibHktYmFzZWQgYnJvd3NlciBBUEkgaW4gYSB3ZWIgd29ya2VyXG4gIC8vIHRvIGF2b2lkIGJsb2NraW5nIHRoZSBVSSB0aHJlYWQuIFRoaXMgY2FuIGJlIGRpc2FibGVkIGJ5IHNldHRpbmcgXCJ3b3JrZXJcIlxuICAvLyB0byBmYWxzZS5cbiAgd29ya2VyPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGxldCB2ZXJzaW9uOiBzdHJpbmc7XG4iXX0=