@mrgrain/cdk-esbuild 2.0.0 → 3.0.0-rc.1

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/README.md CHANGED
@@ -2,7 +2,9 @@
2
2
 
3
3
  _CDK constructs for [esbuild](https://github.com/evanw/esbuild), an extremely fast JavaScript bundler_
4
4
 
5
- [Getting started](#getting-started) | [Migrating to v2](#migrating-to-v2) |
5
+ > ⚠️ This is the documentation for the version compatible with AWS CDK v2. For the previous, AWS CDK v1 compatible release, see [cdk-esbuild@v2](https://github.com/mrgrain/cdk-esbuild/tree/v2)
6
+
7
+ [Getting started](#getting-started) | [Migrating to v3](#migrating-to-v3) |
6
8
  [Documentation](#documentation) | [API Reference](#api-reference) | [Versioning](#versioning)
7
9
 
8
10
  ## Why?
@@ -14,24 +16,24 @@ AWS CDK [supports _esbuild_ with Lambda Functions](https://docs.aws.amazon.com/c
14
16
 
15
17
  This package is running _esbuild_ directly in Node.js and bypasses Docker which the AWS CDK implementation uses. The approach is quicker and easier to use for Node.js users, but incompatible with other languages.
16
18
 
17
- **⚠️ A note on stability**
19
+ **Production readiness**
18
20
 
19
- This package is generally stable and ready to be used in production as many do. However _esbuild_ is still on major version zero, which you should consider. Please check their guide on [production readiness](https://esbuild.github.io/faq/#production-readiness).
21
+ This package is generally stable and ready to be used in production, as many do. However _esbuild_ not yet released a version 1.0.0 yet and its API is still in active development. Please check their guide on [production readiness](https://esbuild.github.io/faq/#production-readiness).
20
22
 
21
- Notably upgrades of the _esbuild_ version requirement will be introduced in **minor versions** of this package and will inherit breaking changes from _esbuild_.
23
+ Notably upgrades of the _esbuild_ minimum version requirement will be introduced in **minor versions** of this package and will inherit breaking changes from _esbuild_.
22
24
 
23
25
  ## Getting started
24
26
 
25
27
  Install `cdk-esbuild`:
26
28
 
27
29
  ```
28
- npm install @mrgrain/cdk-esbuild
30
+ npm install @mrgrain/cdk-esbuild@^3.0.0
29
31
  ```
30
32
 
31
33
  If _peer_ and _optional dependencies_ are not installed automatically (e.g. when using npm v4-6), please use this command to install all of them:
32
34
 
33
35
  ```
34
- npm install @mrgrain/cdk-esbuild esbuild @aws-cdk/core @aws-cdk/aws-lambda @aws-cdk/aws-s3-assets @aws-cdk/aws-s3-deployment @aws-cdk/aws-synthetics
36
+ npm install @mrgrain/cdk-esbuild@^3.0.0 esbuild
35
37
  ```
36
38
 
37
39
  ### AWS Lambda: Serverless function
@@ -135,28 +137,82 @@ Underlying classes power the other features. You normally won't have to use them
135
137
 
136
138
  Auto-generated reference for classes and structs. This information is also available within the code completion of your IDE.
137
139
 
138
- ## Migrating to v2
140
+ ## Escape hatches
141
+
142
+ It's possible that you want to use a implementation of esbuild that's different to the default one. Common reasons are:
143
+
144
+ - The current version constraints for esbuild are not suitable
145
+ - To use version of esbuild that is installed by any other means than `npm`, including Docker
146
+ - Plugin support is needed for the building
147
+
148
+ For these situations, this package offers an escape hatch to bypass regular the implementation and provide a custom build and transform function.
149
+
150
+ ### Custom build function
151
+
152
+ > 💡 See [Using esbuild with plugins](examples/esbuild-with-plugins) for a complete working example of a custom build function using this escape hatch.
153
+
154
+ Constructs that result in starting a build, take a `buildFn` as optional prop. While the defined type for this function is `any`, it must implement the same signature as esbuild's `buildSync` function.
155
+
156
+ ```ts
157
+ new TypeScriptCode("fixtures/handlers/ts-handler.ts", {
158
+ buildFn: (options: BuildOptions): BuildResult => {
159
+ try {
160
+ // custom implementation returning BuildResult
161
+ } catch (error) {
162
+ // throw BuildFailure exception here
163
+ }
164
+ },
165
+ });
166
+ ```
167
+
168
+ Instead of esbuild, the provided function will be invoked with the calculated build options. The custom build function can amend, change or discard any of these. However integration with CDK relies heavily on the values `outdir`/`outfile` are set to and it's usually required to use them unchanged.
169
+
170
+ Failures have to cause a `BuildFailure` exception in order to be fully handled.
139
171
 
140
- The main changes in cdk-esbuild v2 are:
172
+ ### Custom transform function
141
173
 
142
- - The package is now `jsii` compliant and published in the [Construct Hub](https://constructs.dev/). This will also enable a possible feature release for other languages.
143
- - Deprecated properties and classes have been removed, most notably the previous support for bundling via a Docker container. The implementation had a few issues that cannot be easily resolved. However more generic support for custom executables might arrive in later versions.
144
- - `esbuild` is now installed as an optional dependency. It's not optional at all, but this is a ramification of using `jsii`. In practice this will have no impact on most people.
145
- - Interfaces have been streamlined and the names and setup of internal types have been changed. In the unlikely case that someone was relying on these, upgrading will be straight forward.
174
+ Constructs that result in starting a transformation, take a `transformFn` as optional prop. While the defined type for this function is `any`, it must implement the same signature as esbuild's `transformSync` function.
175
+
176
+ ```ts
177
+ new InlineTypeScriptCode("let x: number = 1", {
178
+ transformFn: (options: TransformOptions): TransformResult => {
179
+ try {
180
+ // custom implementation returning TransformResult
181
+ } catch (error) {
182
+ // throw TransformFailure exception here
183
+ }
184
+ },,
185
+ });
186
+ ```
187
+
188
+ Instead of esbuild, the provided function will be invoked with the calculated transform options. The custom transform function can amend, change or discard any of these.
189
+
190
+ Failures have to cause a `TransformFailure` exception in order to be fully handled.
191
+
192
+ ## Migrating to v3
193
+
194
+ The release of cdk-esbuild v3 brings compatibility with AWS CDK v2. Furthermore all deprecated properties and classes have been removed. In particular `InlineCode` classes now take `TransformerProps` as second parameter instead of transform options.
146
195
 
147
196
  ### Upgrading
148
197
 
149
- - Update the package dependency to v2: `npm install --save @mrgrain/cdk-esbuild@^2.0.0`
150
- - `esbuild` is now installed as an optional dependency. If your setup does not automatically install optional dependencies, add it as an explicit dependency.
151
- - Remove any use of `bundlerPriority`.
152
- - Unstable construct `EsbuildBundling` has been renamed to `EsbuildBundler` and its interface has slightly changed. Like most other constructs, it now takes `entryPoints` as first parameter, with an optional `props` object as the second.
198
+ - This version requires AWS CDK v2. Follow the [official migration guide](https://docs.aws.amazon.com/cdk/latest/guide/work-with-cdk-v2.html) to upgrade.
199
+ - Update the package dependency to v3: `npm install --save @mrgrain/cdk-esbuild@^3.0.0`
200
+ - `esbuild` is installed as an optional dependency. If your setup does not automatically install optional dependencies, make sure to add it as an explicit dependency.
201
+ - Any use of `InlineCode` variations has to be updated. Previously the second parameter was either of type `TransformerProps` or `TransformOptions`. Now it must be `TransformerProps`.\
202
+ If the passed value is of type `TransformOptions`, turn it into the correct type like this:
203
+
204
+ ```ts
205
+ const oldOptions: TransformOptions = {...}
206
+
207
+ new InlineTypeScriptCode('// inline code', {
208
+ transformOptions: oldOptions
209
+ });
210
+ ```
153
211
 
154
212
  ## Versioning
155
213
 
156
214
  This package _mostly_ follows [Semantic Versioning](https://semver.org/), with the exception of upgrades to `esbuild`. These will be released as **minor versions** and often include breaking changes from `esbuild`.
157
215
 
158
- Although great care is taken to avoid this, all features marked as `@unstable` may change with minor versions. Please note that the unstable flag is applied to all new or experimental features and internal classes.
159
-
160
216
  ### Npm Tags
161
217
 
162
218
  Some users prefer to use tags over version ranges. The following stable tags are available for use:
@@ -173,10 +229,6 @@ These tags also exist, but usage is strongly not recommended:
173
229
 
174
230
  ## Future releases
175
231
 
176
- ### AWS CDK v2
177
-
178
- The monolithic version 2 of CDK (aka Mono-CDK) is on the horizon. A new major release of this package will be marked alongside CDK. Support for AWS CDK v1.x.x will be continued, however no new features will be added.
179
-
180
232
  ### Stable esbuild
181
233
 
182
234
  Once `esbuild` has reached a stable version 1.0, a new major version will be released for _all_ breaking changes, including updates to minimum (peer) dependencies.
package/SECURITY.md CHANGED
@@ -4,10 +4,11 @@
4
4
 
5
5
  Only the latest release of each major version is supported.
6
6
 
7
- | Plugin Version | CDK Version | Supported |
8
- | -------------- | ----------- | --------------------------- |
9
- | v1 | ^1.99.0 | until release of AWS CDK v2 |
10
- | v2 | ^1.99.0 | :white_check_mark: |
7
+ | Plugin Version | CDK Version | Supported |
8
+ | -------------- | ----------- | ---------------------------------------------------------- |
9
+ | v1 | ^1.99.0 | :x: |
10
+ | v2 | ^1.99.0 | Security updates and critical bug fixes until June 1, 2023 |
11
+ | v3 | ^2.00.0 | :white_check_mark: |
11
12
 
12
13
  ## Reporting a Vulnerability
13
14
 
@@ -15,4 +16,4 @@ Please raise an [issue](https://github.com/mrgrain/cdk-esbuild/issues) and add t
15
16
 
16
17
  I strive to respond to security issues within 48h. However this is an open source project with a single maintainer and life can get in the way.
17
18
 
18
- Contributions of secrurity fixes are most welcome!
19
+ Contributions of security fixes are most welcome!
package/lib/asset.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { Asset as S3Asset } from '@aws-cdk/aws-s3-assets';
2
- import { Construct } from '@aws-cdk/core';
1
+ import { Asset as S3Asset } from 'aws-cdk-lib/aws-s3-assets';
2
+ import { Construct } from 'constructs';
3
3
  import { BundlerProps, EntryPoints } from './bundler';
4
4
  /**
5
5
  * @internal
package/lib/asset.js CHANGED
@@ -4,8 +4,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.TypeScriptAsset = exports.JavaScriptAsset = void 0;
5
5
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
6
  const path_1 = require("path");
7
- const aws_s3_assets_1 = require("@aws-cdk/aws-s3-assets");
8
- const core_1 = require("@aws-cdk/core");
7
+ const aws_cdk_lib_1 = require("aws-cdk-lib");
8
+ const aws_s3_assets_1 = require("aws-cdk-lib/aws-s3-assets");
9
+ const constructs_1 = require("constructs");
9
10
  const bundler_1 = require("./bundler");
10
11
  /**
11
12
  * @stability stable
@@ -16,9 +17,9 @@ class Asset extends aws_s3_assets_1.Asset {
16
17
  */
17
18
  constructor(scope, id, props) {
18
19
  var _c;
19
- const { assetHash, copyDir, buildOptions: options = {}, } = props;
20
+ const { assetHash, copyDir, buildOptions: options = {}, buildFn, } = props;
20
21
  const entryPoints = typeof props.entryPoints === 'string' ? [props.entryPoints] : props.entryPoints;
21
- const name = scope.node.path + core_1.ConstructNode.PATH_SEP + id;
22
+ const name = scope.node.path + constructs_1.Node.PATH_SEP + id;
22
23
  Object.values(entryPoints).forEach((entryPoint) => {
23
24
  if (path_1.isAbsolute(entryPoint)) {
24
25
  throw new Error(`${name}: Entry points must be a relative path. If you need to define an absolute path, please use \`buildOptions.absWorkingDir\` accordingly.`);
@@ -33,10 +34,11 @@ class Asset extends aws_s3_assets_1.Asset {
33
34
  super(scope, id, {
34
35
  path: absWorkingDir,
35
36
  assetHash,
36
- assetHashType: assetHash ? core_1.AssetHashType.CUSTOM : core_1.AssetHashType.OUTPUT,
37
+ assetHashType: assetHash ? aws_cdk_lib_1.AssetHashType.CUSTOM : aws_cdk_lib_1.AssetHashType.OUTPUT,
37
38
  bundling: new bundler_1.EsbuildBundler(entryPoints, {
38
39
  buildOptions,
39
40
  copyDir,
41
+ buildFn,
40
42
  }),
41
43
  });
42
44
  }
@@ -52,7 +54,7 @@ class JavaScriptAsset extends Asset {
52
54
  }
53
55
  exports.JavaScriptAsset = JavaScriptAsset;
54
56
  _a = JSII_RTTI_SYMBOL_1;
55
- JavaScriptAsset[_a] = { fqn: "@mrgrain/cdk-esbuild.JavaScriptAsset", version: "2.0.0" };
57
+ JavaScriptAsset[_a] = { fqn: "@mrgrain/cdk-esbuild.JavaScriptAsset", version: "3.0.0-rc.1" };
56
58
  /**
57
59
  * Bundles the entry points and creates a CDK asset which is uploaded to the bootstrapped CDK S3 bucket during deployment.
58
60
  *
@@ -64,5 +66,5 @@ class TypeScriptAsset extends Asset {
64
66
  }
65
67
  exports.TypeScriptAsset = TypeScriptAsset;
66
68
  _b = JSII_RTTI_SYMBOL_1;
67
- TypeScriptAsset[_b] = { fqn: "@mrgrain/cdk-esbuild.TypeScriptAsset", version: "2.0.0" };
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvYXNzZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwrQkFBa0M7QUFDbEMsMERBQTBEO0FBQzFELHdDQUF3RTtBQUN4RSx1Q0FBc0U7QUFrQnRFOztHQUVHO0FBQ0gsTUFBZSxLQUFnQyxTQUFRLHFCQUFPOzs7O0lBRTVELFlBQ0UsS0FBZ0IsRUFDaEIsRUFBVSxFQUNWLEtBQVk7O1FBRVosTUFBTSxFQUNKLFNBQVMsRUFDVCxPQUFPLEVBQ1AsWUFBWSxFQUFFLE9BQU8sR0FBRyxFQUFFLEdBQzNCLEdBQUcsS0FBSyxDQUFDO1FBQ1YsTUFBTSxXQUFXLEdBQ2YsT0FBTyxLQUFLLENBQUMsV0FBVyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUM7UUFFbEYsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsb0JBQWEsQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBRTNELE1BQU0sQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsVUFBa0IsRUFBRSxFQUFFO1lBQ3hELElBQUksaUJBQVUsQ0FBQyxVQUFVLENBQUMsRUFBRTtnQkFDMUIsTUFBTSxJQUFJLEtBQUssQ0FDYixHQUFHLElBQUksd0lBQXdJLENBQ2hKLENBQUM7YUFDSDtRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxhQUFhLFNBQUcsT0FBTyxDQUFDLGFBQWEsbUNBQUksT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBRTdELE1BQU0sWUFBWSxHQUFHO1lBQ25CLE1BQU0sRUFBRSxJQUFJO1lBQ1osR0FBRyxPQUFPO1lBQ1YsYUFBYTtTQUNkLENBQUM7UUFFRixLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxhQUFhO1lBQ25CLFNBQVM7WUFDVCxhQUFhLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxvQkFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsb0JBQWEsQ0FBQyxNQUFNO1lBQ3RFLFFBQVEsRUFBRSxJQUFJLHdCQUFjLENBQzFCLFdBQVcsRUFDWDtnQkFDRSxZQUFZO2dCQUNaLE9BQU87YUFDUixDQUNGO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGOzs7Ozs7OztBQUdELE1BQWEsZUFBZ0IsU0FBUSxLQUEyQjs7QUFBaEUsMENBQW1FOzs7Ozs7Ozs7O0FBR25FLE1BQWEsZUFBZ0IsU0FBUSxLQUEyQjs7QUFBaEUsMENBQW1FIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNBYnNvbHV0ZSB9IGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgQXNzZXQgYXMgUzNBc3NldCB9IGZyb20gJ0Bhd3MtY2RrL2F3cy1zMy1hc3NldHMnO1xuaW1wb3J0IHsgQXNzZXRIYXNoVHlwZSwgQ29uc3RydWN0LCBDb25zdHJ1Y3ROb2RlIH0gZnJvbSAnQGF3cy1jZGsvY29yZSc7XG5pbXBvcnQgeyBFc2J1aWxkQnVuZGxlciwgQnVuZGxlclByb3BzLCBFbnRyeVBvaW50cyB9IGZyb20gJy4vYnVuZGxlcic7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXNzZXRCYXNlUHJvcHMgZXh0ZW5kcyBCdW5kbGVyUHJvcHMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBhc3NldEhhc2g/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXNzZXRQcm9wcyBleHRlbmRzIEFzc2V0QmFzZVByb3BzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBlbnRyeVBvaW50czogRW50cnlQb2ludHM7XG59XG5cbnR5cGUgSmF2YVNjcmlwdEFzc2V0UHJvcHMgPSBBc3NldFByb3BzO1xudHlwZSBUeXBlU2NyaXB0QXNzZXRQcm9wcyA9IEFzc2V0UHJvcHM7XG5cbi8qKlxuICogQHN0YWJpbGl0eSBzdGFibGVcbiAqL1xuYWJzdHJhY3QgY2xhc3MgQXNzZXQ8UHJvcHMgZXh0ZW5kcyBBc3NldFByb3BzPiBleHRlbmRzIFMzQXNzZXQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBQcm9wcyxcbiAgKSB7XG4gICAgY29uc3Qge1xuICAgICAgYXNzZXRIYXNoLFxuICAgICAgY29weURpcixcbiAgICAgIGJ1aWxkT3B0aW9uczogb3B0aW9ucyA9IHt9LFxuICAgIH0gPSBwcm9wcztcbiAgICBjb25zdCBlbnRyeVBvaW50czogc3RyaW5nW10gfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID1cbiAgICAgIHR5cGVvZiBwcm9wcy5lbnRyeVBvaW50cyA9PT0gJ3N0cmluZycgPyBbcHJvcHMuZW50cnlQb2ludHNdIDogcHJvcHMuZW50cnlQb2ludHM7XG5cbiAgICBjb25zdCBuYW1lID0gc2NvcGUubm9kZS5wYXRoICsgQ29uc3RydWN0Tm9kZS5QQVRIX1NFUCArIGlkO1xuXG4gICAgT2JqZWN0LnZhbHVlcyhlbnRyeVBvaW50cykuZm9yRWFjaCgoZW50cnlQb2ludDogc3RyaW5nKSA9PiB7XG4gICAgICBpZiAoaXNBYnNvbHV0ZShlbnRyeVBvaW50KSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgYCR7bmFtZX06IEVudHJ5IHBvaW50cyBtdXN0IGJlIGEgcmVsYXRpdmUgcGF0aC4gSWYgeW91IG5lZWQgdG8gZGVmaW5lIGFuIGFic29sdXRlIHBhdGgsIHBsZWFzZSB1c2UgXFxgYnVpbGRPcHRpb25zLmFic1dvcmtpbmdEaXJcXGAgYWNjb3JkaW5nbHkuYCxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGNvbnN0IGFic1dvcmtpbmdEaXIgPSBvcHRpb25zLmFic1dvcmtpbmdEaXIgPz8gcHJvY2Vzcy5jd2QoKTtcblxuICAgIGNvbnN0IGJ1aWxkT3B0aW9ucyA9IHtcbiAgICAgIGJ1bmRsZTogdHJ1ZSxcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBhYnNXb3JraW5nRGlyLFxuICAgIH07XG5cbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHBhdGg6IGFic1dvcmtpbmdEaXIsXG4gICAgICBhc3NldEhhc2gsXG4gICAgICBhc3NldEhhc2hUeXBlOiBhc3NldEhhc2ggPyBBc3NldEhhc2hUeXBlLkNVU1RPTSA6IEFzc2V0SGFzaFR5cGUuT1VUUFVULFxuICAgICAgYnVuZGxpbmc6IG5ldyBFc2J1aWxkQnVuZGxlcihcbiAgICAgICAgZW50cnlQb2ludHMsXG4gICAgICAgIHtcbiAgICAgICAgICBidWlsZE9wdGlvbnMsXG4gICAgICAgICAgY29weURpcixcbiAgICAgICAgfSxcbiAgICAgICksXG4gICAgfSk7XG4gIH1cbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbmV4cG9ydCBjbGFzcyBKYXZhU2NyaXB0QXNzZXQgZXh0ZW5kcyBBc3NldDxKYXZhU2NyaXB0QXNzZXRQcm9wcz4ge31cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbmV4cG9ydCBjbGFzcyBUeXBlU2NyaXB0QXNzZXQgZXh0ZW5kcyBBc3NldDxUeXBlU2NyaXB0QXNzZXRQcm9wcz4ge31cbiJdfQ==
69
+ TypeScriptAsset[_b] = { fqn: "@mrgrain/cdk-esbuild.TypeScriptAsset", version: "3.0.0-rc.1" };
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvYXNzZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwrQkFBa0M7QUFDbEMsNkNBQTRDO0FBQzVDLDZEQUE2RDtBQUM3RCwyQ0FBNkM7QUFDN0MsdUNBQXNFO0FBa0J0RTs7R0FFRztBQUNILE1BQWUsS0FBZ0MsU0FBUSxxQkFBTzs7OztJQUU1RCxZQUNFLEtBQWdCLEVBQ2hCLEVBQVUsRUFDVixLQUFZOztRQUVaLE1BQU0sRUFDSixTQUFTLEVBQ1QsT0FBTyxFQUNQLFlBQVksRUFBRSxPQUFPLEdBQUcsRUFBRSxFQUMxQixPQUFPLEdBQ1IsR0FBRyxLQUFLLENBQUM7UUFDVixNQUFNLFdBQVcsR0FDZixPQUFPLEtBQUssQ0FBQyxXQUFXLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQztRQUVsRixNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxpQkFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFFbEQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxVQUFrQixFQUFFLEVBQUU7WUFDeEQsSUFBSSxpQkFBVSxDQUFDLFVBQVUsQ0FBQyxFQUFFO2dCQUMxQixNQUFNLElBQUksS0FBSyxDQUNiLEdBQUcsSUFBSSx3SUFBd0ksQ0FDaEosQ0FBQzthQUNIO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLGFBQWEsU0FBRyxPQUFPLENBQUMsYUFBYSxtQ0FBSSxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7UUFFN0QsTUFBTSxZQUFZLEdBQUc7WUFDbkIsTUFBTSxFQUFFLElBQUk7WUFDWixHQUFHLE9BQU87WUFDVixhQUFhO1NBQ2QsQ0FBQztRQUVGLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsSUFBSSxFQUFFLGFBQWE7WUFDbkIsU0FBUztZQUNULGFBQWEsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLDJCQUFhLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQywyQkFBYSxDQUFDLE1BQU07WUFDdEUsUUFBUSxFQUFFLElBQUksd0JBQWMsQ0FDMUIsV0FBVyxFQUNYO2dCQUNFLFlBQVk7Z0JBQ1osT0FBTztnQkFDUCxPQUFPO2FBQ1IsQ0FDRjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjs7Ozs7Ozs7QUFHRCxNQUFhLGVBQWdCLFNBQVEsS0FBMkI7O0FBQWhFLDBDQUFtRTs7Ozs7Ozs7OztBQUduRSxNQUFhLGVBQWdCLFNBQVEsS0FBMkI7O0FBQWhFLDBDQUFtRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzQWJzb2x1dGUgfSBmcm9tICdwYXRoJztcbmltcG9ydCB7IEFzc2V0SGFzaFR5cGUgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBBc3NldCBhcyBTM0Fzc2V0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLXMzLWFzc2V0cyc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QsIE5vZGUgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IEVzYnVpbGRCdW5kbGVyLCBCdW5kbGVyUHJvcHMsIEVudHJ5UG9pbnRzIH0gZnJvbSAnLi9idW5kbGVyJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBc3NldEJhc2VQcm9wcyBleHRlbmRzIEJ1bmRsZXJQcm9wcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGFzc2V0SGFzaD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBc3NldFByb3BzIGV4dGVuZHMgQXNzZXRCYXNlUHJvcHMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGVudHJ5UG9pbnRzOiBFbnRyeVBvaW50cztcbn1cblxudHlwZSBKYXZhU2NyaXB0QXNzZXRQcm9wcyA9IEFzc2V0UHJvcHM7XG50eXBlIFR5cGVTY3JpcHRBc3NldFByb3BzID0gQXNzZXRQcm9wcztcblxuLyoqXG4gKiBAc3RhYmlsaXR5IHN0YWJsZVxuICovXG5hYnN0cmFjdCBjbGFzcyBBc3NldDxQcm9wcyBleHRlbmRzIEFzc2V0UHJvcHM+IGV4dGVuZHMgUzNBc3NldCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IFByb3BzLFxuICApIHtcbiAgICBjb25zdCB7XG4gICAgICBhc3NldEhhc2gsXG4gICAgICBjb3B5RGlyLFxuICAgICAgYnVpbGRPcHRpb25zOiBvcHRpb25zID0ge30sXG4gICAgICBidWlsZEZuLFxuICAgIH0gPSBwcm9wcztcbiAgICBjb25zdCBlbnRyeVBvaW50czogc3RyaW5nW10gfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID1cbiAgICAgIHR5cGVvZiBwcm9wcy5lbnRyeVBvaW50cyA9PT0gJ3N0cmluZycgPyBbcHJvcHMuZW50cnlQb2ludHNdIDogcHJvcHMuZW50cnlQb2ludHM7XG5cbiAgICBjb25zdCBuYW1lID0gc2NvcGUubm9kZS5wYXRoICsgTm9kZS5QQVRIX1NFUCArIGlkO1xuXG4gICAgT2JqZWN0LnZhbHVlcyhlbnRyeVBvaW50cykuZm9yRWFjaCgoZW50cnlQb2ludDogc3RyaW5nKSA9PiB7XG4gICAgICBpZiAoaXNBYnNvbHV0ZShlbnRyeVBvaW50KSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgYCR7bmFtZX06IEVudHJ5IHBvaW50cyBtdXN0IGJlIGEgcmVsYXRpdmUgcGF0aC4gSWYgeW91IG5lZWQgdG8gZGVmaW5lIGFuIGFic29sdXRlIHBhdGgsIHBsZWFzZSB1c2UgXFxgYnVpbGRPcHRpb25zLmFic1dvcmtpbmdEaXJcXGAgYWNjb3JkaW5nbHkuYCxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGNvbnN0IGFic1dvcmtpbmdEaXIgPSBvcHRpb25zLmFic1dvcmtpbmdEaXIgPz8gcHJvY2Vzcy5jd2QoKTtcblxuICAgIGNvbnN0IGJ1aWxkT3B0aW9ucyA9IHtcbiAgICAgIGJ1bmRsZTogdHJ1ZSxcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBhYnNXb3JraW5nRGlyLFxuICAgIH07XG5cbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHBhdGg6IGFic1dvcmtpbmdEaXIsXG4gICAgICBhc3NldEhhc2gsXG4gICAgICBhc3NldEhhc2hUeXBlOiBhc3NldEhhc2ggPyBBc3NldEhhc2hUeXBlLkNVU1RPTSA6IEFzc2V0SGFzaFR5cGUuT1VUUFVULFxuICAgICAgYnVuZGxpbmc6IG5ldyBFc2J1aWxkQnVuZGxlcihcbiAgICAgICAgZW50cnlQb2ludHMsXG4gICAgICAgIHtcbiAgICAgICAgICBidWlsZE9wdGlvbnMsXG4gICAgICAgICAgY29weURpcixcbiAgICAgICAgICBidWlsZEZuLFxuICAgICAgICB9LFxuICAgICAgKSxcbiAgICB9KTtcbiAgfVxufVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIEphdmFTY3JpcHRBc3NldCBleHRlbmRzIEFzc2V0PEphdmFTY3JpcHRBc3NldFByb3BzPiB7fVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIFR5cGVTY3JpcHRBc3NldCBleHRlbmRzIEFzc2V0PFR5cGVTY3JpcHRBc3NldFByb3BzPiB7fVxuIl19
package/lib/bundler.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { DockerImage, ILocalBundling } from '@aws-cdk/core';
1
+ import { DockerImage, ILocalBundling } from 'aws-cdk-lib';
2
2
  import { BuildOptions } from './esbuild-types';
3
3
  /**
4
4
  * A relative path or list or map of relative paths to the entry points of your code from the root of the project. E.g. `src/index.ts`.
@@ -37,6 +37,19 @@ export interface BundlerProps {
37
37
  * @stability stable
38
38
  */
39
39
  readonly copyDir?: string;
40
+ /**
41
+ * (experimental) Escape hatch to provide the bundler with a custom build function.
42
+ *
43
+ * The function will receive the computed options from the bundler. It can use with these options as it wishes, however `outdir`/`outfile` must be respected to integrate with CDK.
44
+ * Must throw a `BuildFailure` on failure to correctly inform the bundler.
45
+ *
46
+ * @returns esbuild.BuildResult
47
+ * @default esbuild.buildSync
48
+ * @experimental
49
+ * @type esbuild.buildSync
50
+ * @throws esbuild.BuildFailure
51
+ */
52
+ readonly buildFn?: any;
40
53
  }
41
54
  /**
42
55
  * (experimental) Low-level construct that can be used where `BundlingOptions` are required.
package/lib/bundler.js CHANGED
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.EsbuildBundler = void 0;
5
5
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
6
  const path_1 = require("path");
7
- const core_1 = require("@aws-cdk/core");
7
+ const aws_cdk_lib_1 = require("aws-cdk-lib");
8
8
  const esbuild_wrapper_1 = require("./esbuild-wrapper");
9
9
  const formatMessages_1 = require("./formatMessages");
10
10
  /**
@@ -40,18 +40,19 @@ class EsbuildBundler {
40
40
  /**
41
41
  * @deprecated This value is ignored since the bundler is always using a locally installed version of esbuild. However the property is required to comply with the `BundlingOptions` interface.
42
42
  */
43
- this.image = core_1.DockerImage.fromRegistry('scratch');
43
+ this.image = aws_cdk_lib_1.DockerImage.fromRegistry('scratch');
44
44
  if (((_b = props === null || props === void 0 ? void 0 : props.buildOptions) === null || _b === void 0 ? void 0 : _b.outfile) && ((_c = props === null || props === void 0 ? void 0 : props.buildOptions) === null || _c === void 0 ? void 0 : _c.outdir)) {
45
45
  throw new Error('Cannot use both "outfile" and "outdir"');
46
46
  }
47
+ const { buildFn = esbuild_wrapper_1.buildSync } = this.props;
47
48
  this.local = {
48
49
  tryBundle: (outputDir, _options) => {
49
50
  var _b, _c, _d, _e;
50
51
  try {
51
52
  if (this.props.copyDir) {
52
- core_1.FileSystem.copyDirectory(path_1.resolve((_d = (_c = (_b = this.props) === null || _b === void 0 ? void 0 : _b.buildOptions) === null || _c === void 0 ? void 0 : _c.absWorkingDir) !== null && _d !== void 0 ? _d : process.cwd(), this.props.copyDir), outputDir);
53
+ aws_cdk_lib_1.FileSystem.copyDirectory(path_1.resolve((_d = (_c = (_b = this.props) === null || _b === void 0 ? void 0 : _b.buildOptions) === null || _c === void 0 ? void 0 : _c.absWorkingDir) !== null && _d !== void 0 ? _d : process.cwd(), this.props.copyDir), outputDir);
53
54
  }
54
- const buildResult = esbuild_wrapper_1.buildSync({
55
+ const buildResult = buildFn({
55
56
  entryPoints,
56
57
  ...(((_e = this.props) === null || _e === void 0 ? void 0 : _e.buildOptions) || {}),
57
58
  ...this.getOutputOptions(outputDir, { normalize: path_1.normalize, join: path_1.join }),
@@ -81,5 +82,5 @@ class EsbuildBundler {
81
82
  }
82
83
  exports.EsbuildBundler = EsbuildBundler;
83
84
  _a = JSII_RTTI_SYMBOL_1;
84
- EsbuildBundler[_a] = { fqn: "@mrgrain/cdk-esbuild.EsbuildBundler", version: "2.0.0" };
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9idW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsK0JBQXFFO0FBQ3JFLHdDQUt1QjtBQUV2Qix1REFBOEM7QUFDOUMscURBQXNEOzs7Ozs7OztBQW1CdEQsTUFBYSxjQUFjOzs7Ozs7SUFRekI7SUFDRTs7Ozs7T0FLRztJQUNhLFdBQXdCO0lBRXhDOzs7O09BSUc7SUFDYSxLQUFtQjs7UUFQbkIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFPeEIsVUFBSyxHQUFMLEtBQUssQ0FBYzs7OztRQWpCckIsVUFBSyxHQUFHLGtCQUFXLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBbUIxRCxJQUFJLE9BQUEsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLFlBQVksMENBQUUsT0FBTyxZQUFJLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxZQUFZLDBDQUFFLE1BQU0sQ0FBQSxFQUFFO1lBQy9ELE1BQU0sSUFBSSxLQUFLLENBQUMsd0NBQXdDLENBQUMsQ0FBQztTQUMzRDtRQUVELElBQUksQ0FBQyxLQUFLLEdBQUc7WUFDWCxTQUFTLEVBQUUsQ0FBQyxTQUFpQixFQUFFLFFBQXlCLEVBQVcsRUFBRTs7Z0JBQ25FLElBQUk7b0JBQ0YsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRTt3QkFDdEIsaUJBQVUsQ0FBQyxhQUFhLENBQ3RCLGNBQU8sbUJBQ0wsSUFBSSxDQUFDLEtBQUssMENBQUUsWUFBWSwwQ0FBRSxhQUFhLG1DQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFDeEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQ25CLEVBQ0QsU0FBUyxDQUNWLENBQUM7cUJBQ0g7b0JBRUQsTUFBTSxXQUFXLEdBQWdCLDJCQUFTLENBQUM7d0JBQ3pDLFdBQVc7d0JBQ1gsR0FBRyxDQUFDLE9BQUEsSUFBSSxDQUFDLEtBQUssMENBQUUsWUFBWSxLQUFJLEVBQUUsQ0FBQzt3QkFDbkMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFULGdCQUFTLEVBQUUsSUFBSSxFQUFKLFdBQUksRUFBRSxDQUFDO3FCQUN6RCxDQUFDLENBQUM7b0JBRUgsbUNBQWtCLENBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7aUJBQ3ZEO2dCQUFDLE9BQU8sS0FBSyxFQUFFO29CQUNkLG1DQUFrQixDQUFDLEtBQXFCLEVBQUUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztpQkFDakU7Z0JBRUQsT0FBTyxJQUFJLENBQUM7WUFDZCxDQUFDO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTyxnQkFBZ0IsQ0FDdEIsWUFBb0IsRUFDcEIsT0FBaUQsWUFBSzs7UUFFdEQsZ0JBQUksSUFBSSxDQUFDLEtBQUssMENBQUUsWUFBWSwwQ0FBRSxPQUFPLEVBQUU7WUFDckMsT0FBTztnQkFDTCxNQUFNLEVBQUUsU0FBUztnQkFDakIsT0FBTyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQ3JCLElBQUksQ0FBQyxJQUFJLENBQ1AsR0FBSSxDQUFDLFlBQVksY0FBRSxJQUFJLENBQUMsS0FBSywwQ0FBRSxZQUFZLDBDQUFFLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FDMUQsT0FBTyxDQUNLLENBQ2YsQ0FDRjthQUNGLENBQUM7U0FDSDtRQUVELE9BQU87WUFDTCxNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FDcEIsSUFBSSxDQUFDLElBQUksQ0FDUCxHQUFJLENBQUMsWUFBWSxjQUFFLElBQUksQ0FBQyxLQUFLLDBDQUFFLFlBQVksMENBQUUsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUN6RCxPQUFPLENBQ0ssQ0FDZixDQUNGO1lBQ0QsT0FBTyxFQUFFLFNBQVM7U0FDbkIsQ0FBQztJQUNKLENBQUM7O0FBcEZILHdDQXFGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpvaW4sIG5vcm1hbGl6ZSwgcmVzb2x2ZSwgcG9zaXgsIFBsYXRmb3JtUGF0aCB9IGZyb20gJ3BhdGgnO1xuaW1wb3J0IHtcbiAgQnVuZGxpbmdPcHRpb25zLFxuICBEb2NrZXJJbWFnZSxcbiAgRmlsZVN5c3RlbSxcbiAgSUxvY2FsQnVuZGxpbmcsXG59IGZyb20gJ0Bhd3MtY2RrL2NvcmUnO1xuaW1wb3J0IHsgQnVpbGRGYWlsdXJlLCBCdWlsZE9wdGlvbnMsIEJ1aWxkUmVzdWx0IH0gZnJvbSAnLi9lc2J1aWxkLXR5cGVzJztcbmltcG9ydCB7IGJ1aWxkU3luYyB9IGZyb20gJy4vZXNidWlsZC13cmFwcGVyJztcbmltcG9ydCB7IHByaW50QnVpbGRNZXNzYWdlcyB9IGZyb20gJy4vZm9ybWF0TWVzc2FnZXMnO1xuXG4vKipcbiAqIEEgcmVsYXRpdmUgcGF0aCBvciBsaXN0IG9yIG1hcCBvZiByZWxhdGl2ZSBwYXRocyB0byB0aGUgZW50cnkgcG9pbnRzIG9mIHlvdXIgY29kZSBmcm9tIHRoZSByb290IG9mIHRoZSBwcm9qZWN0LiBFLmcuIGBzcmMvaW5kZXgudHNgLlxuICpcbiAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gKi9cbmV4cG9ydCB0eXBlIEVudHJ5UG9pbnRzID0gc3RyaW5nIHwgc3RyaW5nW10gfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgaW50ZXJmYWNlIEJ1bmRsZXJQcm9wcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBidWlsZE9wdGlvbnM/OiBCdWlsZE9wdGlvbnM7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNvcHlEaXI/OiBzdHJpbmc7XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbmV4cG9ydCBjbGFzcyBFc2J1aWxkQnVuZGxlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHB1YmxpYyByZWFkb25seSBsb2NhbDogSUxvY2FsQnVuZGxpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBwdWJsaWMgcmVhZG9ubHkgaW1hZ2UgPSBEb2NrZXJJbWFnZS5mcm9tUmVnaXN0cnkoJ3NjcmF0Y2gnKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgLyoqXG4gICAgICogQSByZWxhdGl2ZSBwYXRoIG9yIGxpc3Qgb3IgbWFwIG9mIHJlbGF0aXZlIHBhdGhzIHRvIHRoZSBlbnRyeSBwb2ludHMgb2YgeW91ciBjb2RlIGZyb20gdGhlIHJvb3Qgb2YgdGhlIHByb2plY3QuXG4gICAgICogRS5nLiBgc3JjL2luZGV4LnRzYC5cbiAgICAgKlxuICAgICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGVudHJ5UG9pbnRzOiBFbnRyeVBvaW50cyxcblxuICAgIC8qKlxuICAgICAqIFByb3BzIHRvIGNoYW5nZSB0aGUgYmVoYXZpb3VyIG9mIHRoZSBidW5kbGVyLlxuICAgICAqXG4gICAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IEJ1bmRsZXJQcm9wcyxcbiAgKSB7XG4gICAgaWYgKHByb3BzPy5idWlsZE9wdGlvbnM/Lm91dGZpbGUgJiYgcHJvcHM/LmJ1aWxkT3B0aW9ucz8ub3V0ZGlyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCB1c2UgYm90aCBcIm91dGZpbGVcIiBhbmQgXCJvdXRkaXJcIicpO1xuICAgIH1cblxuICAgIHRoaXMubG9jYWwgPSB7XG4gICAgICB0cnlCdW5kbGU6IChvdXRwdXREaXI6IHN0cmluZywgX29wdGlvbnM6IEJ1bmRsaW5nT3B0aW9ucyk6IGJvb2xlYW4gPT4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGlmICh0aGlzLnByb3BzLmNvcHlEaXIpIHtcbiAgICAgICAgICAgIEZpbGVTeXN0ZW0uY29weURpcmVjdG9yeShcbiAgICAgICAgICAgICAgcmVzb2x2ZShcbiAgICAgICAgICAgICAgICB0aGlzLnByb3BzPy5idWlsZE9wdGlvbnM/LmFic1dvcmtpbmdEaXIgPz8gcHJvY2Vzcy5jd2QoKSxcbiAgICAgICAgICAgICAgICB0aGlzLnByb3BzLmNvcHlEaXIsXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIG91dHB1dERpcixcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgYnVpbGRSZXN1bHQ6IEJ1aWxkUmVzdWx0ID0gYnVpbGRTeW5jKHtcbiAgICAgICAgICAgIGVudHJ5UG9pbnRzLFxuICAgICAgICAgICAgLi4uKHRoaXMucHJvcHM/LmJ1aWxkT3B0aW9ucyB8fCB7fSksXG4gICAgICAgICAgICAuLi50aGlzLmdldE91dHB1dE9wdGlvbnMob3V0cHV0RGlyLCB7IG5vcm1hbGl6ZSwgam9pbiB9KSxcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIHByaW50QnVpbGRNZXNzYWdlcyhidWlsZFJlc3VsdCwgeyBwcmVmaXg6ICdCdWlsZCAnIH0pO1xuICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgIHByaW50QnVpbGRNZXNzYWdlcyhlcnJvciBhcyBCdWlsZEZhaWx1cmUsIHsgcHJlZml4OiAnQnVpbGQgJyB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRPdXRwdXRPcHRpb25zKFxuICAgIGNka091dHB1dERpcjogc3RyaW5nLFxuICAgIHBhdGg6IFBpY2s8UGxhdGZvcm1QYXRoLCAnbm9ybWFsaXplJyB8ICdqb2luJz4gPSBwb3NpeCxcbiAgKTogQnVpbGRPcHRpb25zIHtcbiAgICBpZiAodGhpcy5wcm9wcz8uYnVpbGRPcHRpb25zPy5vdXRmaWxlKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBvdXRkaXI6IHVuZGVmaW5lZCxcbiAgICAgICAgb3V0ZmlsZTogcGF0aC5ub3JtYWxpemUoXG4gICAgICAgICAgcGF0aC5qb2luKFxuICAgICAgICAgICAgLi4uKFtjZGtPdXRwdXREaXIsIHRoaXMucHJvcHM/LmJ1aWxkT3B0aW9ucz8ub3V0ZmlsZV0uZmlsdGVyKFxuICAgICAgICAgICAgICBCb29sZWFuLFxuICAgICAgICAgICAgKSBhcyBzdHJpbmdbXSksXG4gICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIG91dGRpcjogcGF0aC5ub3JtYWxpemUoXG4gICAgICAgIHBhdGguam9pbihcbiAgICAgICAgICAuLi4oW2Nka091dHB1dERpciwgdGhpcy5wcm9wcz8uYnVpbGRPcHRpb25zPy5vdXRkaXJdLmZpbHRlcihcbiAgICAgICAgICAgIEJvb2xlYW4sXG4gICAgICAgICAgKSBhcyBzdHJpbmdbXSksXG4gICAgICAgICksXG4gICAgICApLFxuICAgICAgb3V0ZmlsZTogdW5kZWZpbmVkLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
85
+ EsbuildBundler[_a] = { fqn: "@mrgrain/cdk-esbuild.EsbuildBundler", version: "3.0.0-rc.1" };
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9idW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsK0JBQXFFO0FBQ3JFLDZDQUtxQjtBQUVyQix1REFBOEM7QUFDOUMscURBQXNEOzs7Ozs7OztBQXVCdEQsTUFBYSxjQUFjOzs7Ozs7SUFRekI7SUFDRTs7Ozs7T0FLRztJQUNhLFdBQXdCO0lBRXhDOzs7O09BSUc7SUFDYSxLQUFtQjs7UUFQbkIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFPeEIsVUFBSyxHQUFMLEtBQUssQ0FBYzs7OztRQWpCckIsVUFBSyxHQUFHLHlCQUFXLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBbUIxRCxJQUFJLE9BQUEsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLFlBQVksMENBQUUsT0FBTyxZQUFJLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxZQUFZLDBDQUFFLE1BQU0sQ0FBQSxFQUFFO1lBQy9ELE1BQU0sSUFBSSxLQUFLLENBQUMsd0NBQXdDLENBQUMsQ0FBQztTQUMzRDtRQUVELE1BQU0sRUFBRSxPQUFPLEdBQUcsMkJBQVMsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFFM0MsSUFBSSxDQUFDLEtBQUssR0FBRztZQUNYLFNBQVMsRUFBRSxDQUFDLFNBQWlCLEVBQUUsUUFBeUIsRUFBVyxFQUFFOztnQkFDbkUsSUFBSTtvQkFDRixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFO3dCQUN0Qix3QkFBVSxDQUFDLGFBQWEsQ0FDdEIsY0FBTyxtQkFDTCxJQUFJLENBQUMsS0FBSywwQ0FBRSxZQUFZLDBDQUFFLGFBQWEsbUNBQUksT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUN4RCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FDbkIsRUFDRCxTQUFTLENBQ1YsQ0FBQztxQkFDSDtvQkFFRCxNQUFNLFdBQVcsR0FBZ0IsT0FBTyxDQUFDO3dCQUN2QyxXQUFXO3dCQUNYLEdBQUcsQ0FBQyxPQUFBLElBQUksQ0FBQyxLQUFLLDBDQUFFLFlBQVksS0FBSSxFQUFFLENBQUM7d0JBQ25DLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxFQUFFLFNBQVMsRUFBVCxnQkFBUyxFQUFFLElBQUksRUFBSixXQUFJLEVBQUUsQ0FBQztxQkFDekQsQ0FBQyxDQUFDO29CQUVILG1DQUFrQixDQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO2lCQUN2RDtnQkFBQyxPQUFPLEtBQUssRUFBRTtvQkFDZCxtQ0FBa0IsQ0FBQyxLQUFxQixFQUFFLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7aUJBQ2pFO2dCQUVELE9BQU8sSUFBSSxDQUFDO1lBQ2QsQ0FBQztTQUNGLENBQUM7SUFDSixDQUFDO0lBRU8sZ0JBQWdCLENBQ3RCLFlBQW9CLEVBQ3BCLE9BQWlELFlBQUs7O1FBRXRELGdCQUFJLElBQUksQ0FBQyxLQUFLLDBDQUFFLFlBQVksMENBQUUsT0FBTyxFQUFFO1lBQ3JDLE9BQU87Z0JBQ0wsTUFBTSxFQUFFLFNBQVM7Z0JBQ2pCLE9BQU8sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUNyQixJQUFJLENBQUMsSUFBSSxDQUNQLEdBQUksQ0FBQyxZQUFZLGNBQUUsSUFBSSxDQUFDLEtBQUssMENBQUUsWUFBWSwwQ0FBRSxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQzFELE9BQU8sQ0FDSyxDQUNmLENBQ0Y7YUFDRixDQUFDO1NBQ0g7UUFFRCxPQUFPO1lBQ0wsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQ3BCLElBQUksQ0FBQyxJQUFJLENBQ1AsR0FBSSxDQUFDLFlBQVksY0FBRSxJQUFJLENBQUMsS0FBSywwQ0FBRSxZQUFZLDBDQUFFLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDekQsT0FBTyxDQUNLLENBQ2YsQ0FDRjtZQUNELE9BQU8sRUFBRSxTQUFTO1NBQ25CLENBQUM7SUFDSixDQUFDOztBQXRGSCx3Q0F1RkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqb2luLCBub3JtYWxpemUsIHJlc29sdmUsIHBvc2l4LCBQbGF0Zm9ybVBhdGggfSBmcm9tICdwYXRoJztcbmltcG9ydCB7XG4gIEJ1bmRsaW5nT3B0aW9ucyxcbiAgRG9ja2VySW1hZ2UsXG4gIEZpbGVTeXN0ZW0sXG4gIElMb2NhbEJ1bmRsaW5nLFxufSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBCdWlsZEZhaWx1cmUsIEJ1aWxkT3B0aW9ucywgQnVpbGRSZXN1bHQgfSBmcm9tICcuL2VzYnVpbGQtdHlwZXMnO1xuaW1wb3J0IHsgYnVpbGRTeW5jIH0gZnJvbSAnLi9lc2J1aWxkLXdyYXBwZXInO1xuaW1wb3J0IHsgcHJpbnRCdWlsZE1lc3NhZ2VzIH0gZnJvbSAnLi9mb3JtYXRNZXNzYWdlcyc7XG5cbi8qKlxuICogQSByZWxhdGl2ZSBwYXRoIG9yIGxpc3Qgb3IgbWFwIG9mIHJlbGF0aXZlIHBhdGhzIHRvIHRoZSBlbnRyeSBwb2ludHMgb2YgeW91ciBjb2RlIGZyb20gdGhlIHJvb3Qgb2YgdGhlIHByb2plY3QuIEUuZy4gYHNyYy9pbmRleC50c2AuXG4gKlxuICogQHN0YWJpbGl0eSBzdGFibGVcbiAqL1xuZXhwb3J0IHR5cGUgRW50cnlQb2ludHMgPSBzdHJpbmcgfCBzdHJpbmdbXSB8IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbmV4cG9ydCBpbnRlcmZhY2UgQnVuZGxlclByb3BzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGJ1aWxkT3B0aW9ucz86IEJ1aWxkT3B0aW9ucztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgY29weURpcj86IHN0cmluZztcblxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYnVpbGRGbj86IGFueTtcbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIEVzYnVpbGRCdW5kbGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcHVibGljIHJlYWRvbmx5IGxvY2FsOiBJTG9jYWxCdW5kbGluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHB1YmxpYyByZWFkb25seSBpbWFnZSA9IERvY2tlckltYWdlLmZyb21SZWdpc3RyeSgnc2NyYXRjaCcpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAvKipcbiAgICAgKiBBIHJlbGF0aXZlIHBhdGggb3IgbGlzdCBvciBtYXAgb2YgcmVsYXRpdmUgcGF0aHMgdG8gdGhlIGVudHJ5IHBvaW50cyBvZiB5b3VyIGNvZGUgZnJvbSB0aGUgcm9vdCBvZiB0aGUgcHJvamVjdC5cbiAgICAgKiBFLmcuIGBzcmMvaW5kZXgudHNgLlxuICAgICAqXG4gICAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgZW50cnlQb2ludHM6IEVudHJ5UG9pbnRzLFxuXG4gICAgLyoqXG4gICAgICogUHJvcHMgdG8gY2hhbmdlIHRoZSBiZWhhdmlvdXIgb2YgdGhlIGJ1bmRsZXIuXG4gICAgICpcbiAgICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBwcm9wczogQnVuZGxlclByb3BzLFxuICApIHtcbiAgICBpZiAocHJvcHM/LmJ1aWxkT3B0aW9ucz8ub3V0ZmlsZSAmJiBwcm9wcz8uYnVpbGRPcHRpb25zPy5vdXRkaXIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQ2Fubm90IHVzZSBib3RoIFwib3V0ZmlsZVwiIGFuZCBcIm91dGRpclwiJyk7XG4gICAgfVxuXG4gICAgY29uc3QgeyBidWlsZEZuID0gYnVpbGRTeW5jIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgdGhpcy5sb2NhbCA9IHtcbiAgICAgIHRyeUJ1bmRsZTogKG91dHB1dERpcjogc3RyaW5nLCBfb3B0aW9uczogQnVuZGxpbmdPcHRpb25zKTogYm9vbGVhbiA9PiB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgaWYgKHRoaXMucHJvcHMuY29weURpcikge1xuICAgICAgICAgICAgRmlsZVN5c3RlbS5jb3B5RGlyZWN0b3J5KFxuICAgICAgICAgICAgICByZXNvbHZlKFxuICAgICAgICAgICAgICAgIHRoaXMucHJvcHM/LmJ1aWxkT3B0aW9ucz8uYWJzV29ya2luZ0RpciA/PyBwcm9jZXNzLmN3ZCgpLFxuICAgICAgICAgICAgICAgIHRoaXMucHJvcHMuY29weURpcixcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgb3V0cHV0RGlyLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBidWlsZFJlc3VsdDogQnVpbGRSZXN1bHQgPSBidWlsZEZuKHtcbiAgICAgICAgICAgIGVudHJ5UG9pbnRzLFxuICAgICAgICAgICAgLi4uKHRoaXMucHJvcHM/LmJ1aWxkT3B0aW9ucyB8fCB7fSksXG4gICAgICAgICAgICAuLi50aGlzLmdldE91dHB1dE9wdGlvbnMob3V0cHV0RGlyLCB7IG5vcm1hbGl6ZSwgam9pbiB9KSxcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIHByaW50QnVpbGRNZXNzYWdlcyhidWlsZFJlc3VsdCwgeyBwcmVmaXg6ICdCdWlsZCAnIH0pO1xuICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgIHByaW50QnVpbGRNZXNzYWdlcyhlcnJvciBhcyBCdWlsZEZhaWx1cmUsIHsgcHJlZml4OiAnQnVpbGQgJyB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRPdXRwdXRPcHRpb25zKFxuICAgIGNka091dHB1dERpcjogc3RyaW5nLFxuICAgIHBhdGg6IFBpY2s8UGxhdGZvcm1QYXRoLCAnbm9ybWFsaXplJyB8ICdqb2luJz4gPSBwb3NpeCxcbiAgKTogQnVpbGRPcHRpb25zIHtcbiAgICBpZiAodGhpcy5wcm9wcz8uYnVpbGRPcHRpb25zPy5vdXRmaWxlKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBvdXRkaXI6IHVuZGVmaW5lZCxcbiAgICAgICAgb3V0ZmlsZTogcGF0aC5ub3JtYWxpemUoXG4gICAgICAgICAgcGF0aC5qb2luKFxuICAgICAgICAgICAgLi4uKFtjZGtPdXRwdXREaXIsIHRoaXMucHJvcHM/LmJ1aWxkT3B0aW9ucz8ub3V0ZmlsZV0uZmlsdGVyKFxuICAgICAgICAgICAgICBCb29sZWFuLFxuICAgICAgICAgICAgKSBhcyBzdHJpbmdbXSksXG4gICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIG91dGRpcjogcGF0aC5ub3JtYWxpemUoXG4gICAgICAgIHBhdGguam9pbihcbiAgICAgICAgICAuLi4oW2Nka091dHB1dERpciwgdGhpcy5wcm9wcz8uYnVpbGRPcHRpb25zPy5vdXRkaXJdLmZpbHRlcihcbiAgICAgICAgICAgIEJvb2xlYW4sXG4gICAgICAgICAgKSBhcyBzdHJpbmdbXSksXG4gICAgICAgICksXG4gICAgICApLFxuICAgICAgb3V0ZmlsZTogdW5kZWZpbmVkLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
package/lib/code.d.ts CHANGED
@@ -1,6 +1,7 @@
1
- import { ResourceBindOptions } from '@aws-cdk/aws-lambda';
2
- import { Location } from '@aws-cdk/aws-s3';
3
- import { CfnResource, Construct } from '@aws-cdk/core';
1
+ import { CfnResource } from 'aws-cdk-lib';
2
+ import { ResourceBindOptions } from 'aws-cdk-lib/aws-lambda';
3
+ import { Location } from 'aws-cdk-lib/aws-s3';
4
+ import { Construct } from 'constructs';
4
5
  import { AssetBaseProps, AssetProps, JavaScriptAsset as JSAsset, TypeScriptAsset as TSAsset } from './asset';
5
6
  import { EntryPoints } from './bundler';
6
7
  /**
package/lib/code.js CHANGED
@@ -3,7 +3,7 @@ var _a, _b;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.TypeScriptCode = exports.JavaScriptCode = void 0;
5
5
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
- const core_1 = require("@aws-cdk/core");
6
+ const aws_cdk_lib_1 = require("aws-cdk-lib");
7
7
  const asset_1 = require("./asset");
8
8
  function nodeMajorVersion() {
9
9
  return parseInt(process.versions.node.split('.')[0], 10);
@@ -48,8 +48,8 @@ class Code {
48
48
  if (!this.asset) {
49
49
  this.asset = new this.assetClass(scope, this.constructor.name, this.props);
50
50
  }
51
- else if (core_1.Stack.of(this.asset) !== core_1.Stack.of(scope)) {
52
- 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.');
51
+ else if (aws_cdk_lib_1.Stack.of(this.asset) !== aws_cdk_lib_1.Stack.of(scope)) {
52
+ throw new Error(`Asset is already associated with another stack '${aws_cdk_lib_1.Stack.of(this.asset).stackName}'. ` + 'Create a new Asset instance for every stack.');
53
53
  }
54
54
  return {
55
55
  s3Location: {
@@ -114,7 +114,7 @@ class JavaScriptCode extends Code {
114
114
  }
115
115
  exports.JavaScriptCode = JavaScriptCode;
116
116
  _a = JSII_RTTI_SYMBOL_1;
117
- JavaScriptCode[_a] = { fqn: "@mrgrain/cdk-esbuild.JavaScriptCode", version: "2.0.0" };
117
+ JavaScriptCode[_a] = { fqn: "@mrgrain/cdk-esbuild.JavaScriptCode", version: "3.0.0-rc.1" };
118
118
  /**
119
119
  * Represents the deployed TypeScript Code.
120
120
  *
@@ -154,5 +154,5 @@ class TypeScriptCode extends Code {
154
154
  }
155
155
  exports.TypeScriptCode = TypeScriptCode;
156
156
  _b = JSII_RTTI_SYMBOL_1;
157
- TypeScriptCode[_b] = { fqn: "@mrgrain/cdk-esbuild.TypeScriptCode", version: "2.0.0" };
158
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBRUEsd0NBQThEO0FBQzlELG1DQUtpQjtBQUlqQixTQUFTLGdCQUFnQjtJQUN2QixPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDM0QsQ0FBQztBQU82RCxDQUFDO0FBQ0QsQ0FBQztBQUUvRCxNQUFlLElBQUk7SUFpQmpCOzs7O09BSUc7SUFDSCxZQUE0QixXQUF3QixFQUFFLEtBQVk7O1FBQXRDLGdCQUFXLEdBQVgsV0FBVyxDQUFhOzs7Ozs7UUFQN0MsYUFBUSxHQUFZLEtBQUssQ0FBQztRQVEvQixNQUFNLGNBQWMsR0FBMEI7WUFDNUMsR0FBRyxDQUFDLFFBQUMsS0FBSyxDQUFDLFlBQVksMENBQUUsUUFBUSxDQUFBO2dCQUNqQyxPQUFBLEtBQUssQ0FBQyxZQUFZLDBDQUFFLFFBQVEsTUFBSyxNQUFNO2dCQUNyQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEdBQUcsZ0JBQWdCLEVBQUUsRUFBRTtnQkFDM0QsQ0FBQyxDQUFDLEVBQUUsQ0FBQztTQUNSLENBQUM7UUFFRixJQUFJLENBQUMsS0FBSyxHQUFHO1lBQ1gsR0FBRyxLQUFLO1lBQ1IsV0FBVztZQUNYLFlBQVksRUFBRTtnQkFDWixHQUFHLGNBQWM7Z0JBQ2pCLEdBQUcsS0FBSyxDQUFDLFlBQVk7YUFDdEI7U0FDRixDQUFDO0lBQ0osQ0FBQzs7OztJQUVELElBQUksQ0FBQyxLQUFnQjtRQUNuQixxRkFBcUY7UUFDckYsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FDOUIsS0FBSyxFQUNMLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUNyQixJQUFJLENBQUMsS0FBSyxDQUNYLENBQUM7U0FDSDthQUFNLElBQUksWUFBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssWUFBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNuRCxNQUFNLElBQUksS0FBSyxDQUNiLG1EQUNFLFlBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQ3ZCLEtBQUssR0FBRyw4Q0FBOEMsQ0FDdkQsQ0FBQztTQUNIO1FBRUQsT0FBTztZQUNMLFVBQVUsRUFBRTtnQkFDVixVQUFVLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZO2dCQUNuQyxTQUFTLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXO2FBQ2xDO1NBQ0YsQ0FBQztJQUNKLENBQUM7Ozs7Ozs7OztJQUdELGNBQWMsQ0FBQyxRQUFxQixFQUFFLE9BQTZCO1FBQ2pFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2YsTUFBTSxJQUFJLEtBQUssQ0FBQyw4Q0FBOEMsQ0FBQyxDQUFDO1NBQ2pFO1FBQ0QsTUFBTSxnQkFBZ0IsR0FBRyxDQUFBLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxnQkFBZ0IsS0FBSSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztRQUM1RSw2Q0FBNkM7UUFDN0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztJQUM3RCxDQUFDO0NBQ0Y7Ozs7OztBQUdELE1BQWEsY0FBZSxTQUFRLElBQWtDOzs7Ozs7SUFHcEU7SUFDRTs7Ozs7T0FLRztJQUNILFdBQXdCO0lBQ3hCOzs7Ozs7Ozs7T0FTRztJQUNILFFBQTZCLEVBQUU7UUFFL0IsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQzs7OztRQXRCVCxlQUFVLEdBQUcsdUJBQU8sQ0FBQztJQXVCeEMsQ0FBQzs7QUF4Qkgsd0NBeUJDOzs7Ozs7OztBQUdELE1BQWEsY0FBZSxTQUFRLElBQWtDOzs7Ozs7SUFHcEU7SUFDRTs7Ozs7T0FLRztJQUNILFdBQXdCO0lBQ3hCOzs7Ozs7Ozs7T0FTRztJQUNILFFBQTZCLEVBQUU7UUFFL0IsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQzs7OztRQXRCVCxlQUFVLEdBQUcsdUJBQU8sQ0FBQztJQXVCeEMsQ0FBQzs7QUF4Qkgsd0NBeUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVzb3VyY2VCaW5kT3B0aW9ucyB9IGZyb20gJ0Bhd3MtY2RrL2F3cy1sYW1iZGEnO1xuaW1wb3J0IHsgTG9jYXRpb24gfSBmcm9tICdAYXdzLWNkay9hd3MtczMnO1xuaW1wb3J0IHsgQ2ZuUmVzb3VyY2UsIENvbnN0cnVjdCwgU3RhY2sgfSBmcm9tICdAYXdzLWNkay9jb3JlJztcbmltcG9ydCB7XG4gIEFzc2V0QmFzZVByb3BzLFxuICBBc3NldFByb3BzLFxuICBKYXZhU2NyaXB0QXNzZXQgYXMgSlNBc3NldCxcbiAgVHlwZVNjcmlwdEFzc2V0IGFzIFRTQXNzZXQsXG59IGZyb20gJy4vYXNzZXQnO1xuaW1wb3J0IHsgRW50cnlQb2ludHMgfSBmcm9tICcuL2J1bmRsZXInO1xuaW1wb3J0IHsgQnVpbGRPcHRpb25zIH0gZnJvbSAnLi9lc2J1aWxkLXR5cGVzJztcblxuZnVuY3Rpb24gbm9kZU1ham9yVmVyc2lvbigpOiBudW1iZXIge1xuICByZXR1cm4gcGFyc2VJbnQocHJvY2Vzcy52ZXJzaW9ucy5ub2RlLnNwbGl0KCcuJylbMF0sIDEwKTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb2RlQ29uZmlnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgczNMb2NhdGlvbjogTG9jYXRpb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSmF2YVNjcmlwdENvZGVQcm9wcyBleHRlbmRzIEFzc2V0QmFzZVByb3BzIHt9O1xuZXhwb3J0IGludGVyZmFjZSBUeXBlU2NyaXB0Q29kZVByb3BzIGV4dGVuZHMgQXNzZXRCYXNlUHJvcHMge307XG5cbmFic3RyYWN0IGNsYXNzIENvZGU8XG4gIFByb3BzIGV4dGVuZHMgSmF2YVNjcmlwdENvZGVQcm9wcyB8IFR5cGVTY3JpcHRDb2RlUHJvcHMsXG4gIEFzc2V0IGV4dGVuZHMgSlNBc3NldCB8IFRTQXNzZXRcbj4ge1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgcmVhZG9ubHkgYXNzZXRDbGFzczogbmV3IChcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IEFzc2V0UHJvcHNcbiAgKSA9PiBBc3NldDtcblxuICBwcm90ZWN0ZWQgcHJvcHM6IEFzc2V0UHJvcHM7XG5cbiAgcHJvdGVjdGVkIGFzc2V0ITogQXNzZXQ7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBwdWJsaWMgaXNJbmxpbmU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIGVudHJ5UG9pbnRzIC0gUmVsYXRpdmUgcGF0aCB0byB0aGUgYXNzZXQgY29kZS4gVXNlIGBwcm9wcy5idWlsZE9wdGlvbnMuYWJzV29ya2luZ0RpcmAgaWYgYW4gYWJzb2x1dGUgcGF0aCBpcyByZXF1aXJlZC5cbiAgICogQHBhcmFtIHByb3BzIC0gQXNzZXQgcHJvcGVydGllcy5cbiAgICovXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSBlbnRyeVBvaW50czogRW50cnlQb2ludHMsIHByb3BzOiBQcm9wcykge1xuICAgIGNvbnN0IGRlZmF1bHRPcHRpb25zOiBQYXJ0aWFsPEJ1aWxkT3B0aW9ucz4gPSB7XG4gICAgICAuLi4oIXByb3BzLmJ1aWxkT3B0aW9ucz8ucGxhdGZvcm0gfHxcbiAgICAgIHByb3BzLmJ1aWxkT3B0aW9ucz8ucGxhdGZvcm0gPT09ICdub2RlJ1xuICAgICAgICA/IHsgcGxhdGZvcm06ICdub2RlJywgdGFyZ2V0OiAnbm9kZScgKyBub2RlTWFqb3JWZXJzaW9uKCkgfVxuICAgICAgICA6IHt9KSxcbiAgICB9O1xuXG4gICAgdGhpcy5wcm9wcyA9IHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgZW50cnlQb2ludHMsXG4gICAgICBidWlsZE9wdGlvbnM6IHtcbiAgICAgICAgLi4uZGVmYXVsdE9wdGlvbnMsXG4gICAgICAgIC4uLnByb3BzLmJ1aWxkT3B0aW9ucyxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIGJpbmQoc2NvcGU6IENvbnN0cnVjdCk6IENvZGVDb25maWcge1xuICAgIC8vIElmIHRoZSBzYW1lIEFzc2V0Q29kZSBpcyB1c2VkIG11bHRpcGxlIHRpbWVzLCByZXRhaW4gb25seSB0aGUgZmlyc3QgaW5zdGFudGlhdGlvbi5cbiAgICBpZiAoIXRoaXMuYXNzZXQpIHtcbiAgICAgIHRoaXMuYXNzZXQgPSBuZXcgdGhpcy5hc3NldENsYXNzKFxuICAgICAgICBzY29wZSxcbiAgICAgICAgdGhpcy5jb25zdHJ1Y3Rvci5uYW1lLFxuICAgICAgICB0aGlzLnByb3BzLFxuICAgICAgKTtcbiAgICB9IGVsc2UgaWYgKFN0YWNrLm9mKHRoaXMuYXNzZXQpICE9PSBTdGFjay5vZihzY29wZSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYEFzc2V0IGlzIGFscmVhZHkgYXNzb2NpYXRlZCB3aXRoIGFub3RoZXIgc3RhY2sgJyR7XG4gICAgICAgICAgU3RhY2sub2YodGhpcy5hc3NldCkuc3RhY2tOYW1lXG4gICAgICAgIH0nLiBgICsgJ0NyZWF0ZSBhIG5ldyBBc3NldCBpbnN0YW5jZSBmb3IgZXZlcnkgc3RhY2suJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIHMzTG9jYXRpb246IHtcbiAgICAgICAgYnVja2V0TmFtZTogdGhpcy5hc3NldC5zM0J1Y2tldE5hbWUsXG4gICAgICAgIG9iamVjdEtleTogdGhpcy5hc3NldC5zM09iamVjdEtleSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBiaW5kVG9SZXNvdXJjZShyZXNvdXJjZTogQ2ZuUmVzb3VyY2UsIG9wdGlvbnM/OiBSZXNvdXJjZUJpbmRPcHRpb25zKSB7XG4gICAgaWYgKCF0aGlzLmFzc2V0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2JpbmRUb1Jlc291cmNlKCkgbXVzdCBiZSBjYWxsZWQgYWZ0ZXIgYmluZCgpJyk7XG4gICAgfVxuICAgIGNvbnN0IHJlc291cmNlUHJvcGVydHkgPSBvcHRpb25zPy5yZXNvdXJjZVByb3BlcnR5IHx8IHRoaXMuY29uc3RydWN0b3IubmFtZTtcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvaXNzdWVzLzE0MzJcbiAgICB0aGlzLmFzc2V0LmFkZFJlc291cmNlTWV0YWRhdGEocmVzb3VyY2UsIHJlc291cmNlUHJvcGVydHkpO1xuICB9XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIEphdmFTY3JpcHRDb2RlIGV4dGVuZHMgQ29kZTxKYXZhU2NyaXB0Q29kZVByb3BzLCBKU0Fzc2V0PiB7XG4gIHByb3RlY3RlZCByZWFkb25seSBhc3NldENsYXNzID0gSlNBc3NldDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAvKipcbiAgICAgKiBBIHJlbGF0aXZlIHBhdGggb3IgbGlzdCBvciBtYXAgb2YgcmVsYXRpdmUgcGF0aHMgdG8gdGhlIGVudHJ5IHBvaW50cyBvZiB5b3VyIGNvZGUgZnJvbSB0aGUgcm9vdCBvZiB0aGUgcHJvamVjdC5cbiAgICAgKiBFLmcuIGBzcmMvaW5kZXgudHNgLlxuICAgICAqXG4gICAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICAgKi9cbiAgICBlbnRyeVBvaW50czogRW50cnlQb2ludHMsXG4gICAgLyoqXG4gICAgICogUHJvcHMgdG8gY2hhbmdlIHRoZSBiZWhhdmlvciBvZiB0aGUgYnVuZGxlci5cbiAgICAgKlxuICAgICAqIERlZmF1bHQgdmFsdWVzIGZvciBgcHJvcHMuYnVpbGRPcHRpb25zYDpcbiAgICAgKiAtIGBidW5kbGU9dHJ1ZWBcbiAgICAgKiAtIGBwbGF0Zm9ybT1ub2RlYFxuICAgICAqIC0gYHRhcmdldD1ub2RlWGAgd2l0aCBYIGJlaW5nIHRoZSBtYWpvciBub2RlIHZlcnNpb24gcnVubmluZyBsb2NhbGx5XG4gICAgICpcbiAgICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgICAqL1xuICAgIHByb3BzOiBKYXZhU2NyaXB0Q29kZVByb3BzID0ge30sXG4gICkge1xuICAgIHN1cGVyKGVudHJ5UG9pbnRzLCBwcm9wcyk7XG4gIH1cbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgY2xhc3MgVHlwZVNjcmlwdENvZGUgZXh0ZW5kcyBDb2RlPFR5cGVTY3JpcHRDb2RlUHJvcHMsIFRTQXNzZXQ+IHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGFzc2V0Q2xhc3MgPSBUU0Fzc2V0O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIC8qKlxuICAgICAqIEEgcmVsYXRpdmUgcGF0aCBvciBsaXN0IG9yIG1hcCBvZiByZWxhdGl2ZSBwYXRocyB0byB0aGUgZW50cnkgcG9pbnRzIG9mIHlvdXIgY29kZSBmcm9tIHRoZSByb290IG9mIHRoZSBwcm9qZWN0LlxuICAgICAqIEUuZy4gYHNyYy9pbmRleC50c2AuXG4gICAgICpcbiAgICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgICAqL1xuICAgIGVudHJ5UG9pbnRzOiBFbnRyeVBvaW50cyxcbiAgICAvKipcbiAgICAgKiBQcm9wcyB0byBjaGFuZ2UgdGhlIGJlaGF2aW9yIG9mIHRoZSBidW5kbGVyLlxuICAgICAqXG4gICAgICogRGVmYXVsdCB2YWx1ZXMgZm9yIGBwcm9wcy5idWlsZE9wdGlvbnNgOlxuICAgICAqIC0gYGJ1bmRsZT10cnVlYFxuICAgICAqIC0gYHBsYXRmb3JtPW5vZGVgXG4gICAgICogLSBgdGFyZ2V0PW5vZGVYYCB3aXRoIFggYmVpbmcgdGhlIG1ham9yIG5vZGUgdmVyc2lvbiBydW5uaW5nIGxvY2FsbHlcbiAgICAgKlxuICAgICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAgICovXG4gICAgcHJvcHM6IFR5cGVTY3JpcHRDb2RlUHJvcHMgPSB7fSxcbiAgKSB7XG4gICAgc3VwZXIoZW50cnlQb2ludHMsIHByb3BzKTtcbiAgfVxufVxuIl19
157
+ TypeScriptCode[_b] = { fqn: "@mrgrain/cdk-esbuild.TypeScriptCode", version: "3.0.0-rc.1" };
158
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQWlEO0FBSWpELG1DQUtpQjtBQUlqQixTQUFTLGdCQUFnQjtJQUN2QixPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDM0QsQ0FBQztBQU82RCxDQUFDO0FBQ0QsQ0FBQztBQUUvRCxNQUFlLElBQUk7SUFpQmpCOzs7O09BSUc7SUFDSCxZQUE0QixXQUF3QixFQUFFLEtBQVk7O1FBQXRDLGdCQUFXLEdBQVgsV0FBVyxDQUFhOzs7Ozs7UUFQN0MsYUFBUSxHQUFZLEtBQUssQ0FBQztRQVEvQixNQUFNLGNBQWMsR0FBMEI7WUFDNUMsR0FBRyxDQUFDLFFBQUMsS0FBSyxDQUFDLFlBQVksMENBQUUsUUFBUSxDQUFBO2dCQUNqQyxPQUFBLEtBQUssQ0FBQyxZQUFZLDBDQUFFLFFBQVEsTUFBSyxNQUFNO2dCQUNyQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEdBQUcsZ0JBQWdCLEVBQUUsRUFBRTtnQkFDM0QsQ0FBQyxDQUFDLEVBQUUsQ0FBQztTQUNSLENBQUM7UUFFRixJQUFJLENBQUMsS0FBSyxHQUFHO1lBQ1gsR0FBRyxLQUFLO1lBQ1IsV0FBVztZQUNYLFlBQVksRUFBRTtnQkFDWixHQUFHLGNBQWM7Z0JBQ2pCLEdBQUcsS0FBSyxDQUFDLFlBQVk7YUFDdEI7U0FDRixDQUFDO0lBQ0osQ0FBQzs7OztJQUVELElBQUksQ0FBQyxLQUFnQjtRQUNuQixxRkFBcUY7UUFDckYsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FDOUIsS0FBSyxFQUNMLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUNyQixJQUFJLENBQUMsS0FBSyxDQUNYLENBQUM7U0FDSDthQUFNLElBQUksbUJBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLG1CQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ25ELE1BQU0sSUFBSSxLQUFLLENBQ2IsbURBQ0UsbUJBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQ3ZCLEtBQUssR0FBRyw4Q0FBOEMsQ0FDdkQsQ0FBQztTQUNIO1FBRUQsT0FBTztZQUNMLFVBQVUsRUFBRTtnQkFDVixVQUFVLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZO2dCQUNuQyxTQUFTLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXO2FBQ2xDO1NBQ0YsQ0FBQztJQUNKLENBQUM7Ozs7Ozs7OztJQUdELGNBQWMsQ0FBQyxRQUFxQixFQUFFLE9BQTZCO1FBQ2pFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2YsTUFBTSxJQUFJLEtBQUssQ0FBQyw4Q0FBOEMsQ0FBQyxDQUFDO1NBQ2pFO1FBQ0QsTUFBTSxnQkFBZ0IsR0FBRyxDQUFBLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxnQkFBZ0IsS0FBSSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztRQUM1RSw2Q0FBNkM7UUFDN0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztJQUM3RCxDQUFDO0NBQ0Y7Ozs7OztBQUdELE1BQWEsY0FBZSxTQUFRLElBQWtDOzs7Ozs7SUFHcEU7SUFDRTs7Ozs7T0FLRztJQUNILFdBQXdCO0lBQ3hCOzs7Ozs7Ozs7T0FTRztJQUNILFFBQTZCLEVBQUU7UUFFL0IsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQzs7OztRQXRCVCxlQUFVLEdBQUcsdUJBQU8sQ0FBQztJQXVCeEMsQ0FBQzs7QUF4Qkgsd0NBeUJDOzs7Ozs7OztBQUdELE1BQWEsY0FBZSxTQUFRLElBQWtDOzs7Ozs7SUFHcEU7SUFDRTs7Ozs7T0FLRztJQUNILFdBQXdCO0lBQ3hCOzs7Ozs7Ozs7T0FTRztJQUNILFFBQTZCLEVBQUU7UUFFL0IsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQzs7OztRQXRCVCxlQUFVLEdBQUcsdUJBQU8sQ0FBQztJQXVCeEMsQ0FBQzs7QUF4Qkgsd0NBeUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2ZuUmVzb3VyY2UsIFN0YWNrIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgUmVzb3VyY2VCaW5kT3B0aW9ucyB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1xuaW1wb3J0IHsgTG9jYXRpb24gfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtczMnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQge1xuICBBc3NldEJhc2VQcm9wcyxcbiAgQXNzZXRQcm9wcyxcbiAgSmF2YVNjcmlwdEFzc2V0IGFzIEpTQXNzZXQsXG4gIFR5cGVTY3JpcHRBc3NldCBhcyBUU0Fzc2V0LFxufSBmcm9tICcuL2Fzc2V0JztcbmltcG9ydCB7IEVudHJ5UG9pbnRzIH0gZnJvbSAnLi9idW5kbGVyJztcbmltcG9ydCB7IEJ1aWxkT3B0aW9ucyB9IGZyb20gJy4vZXNidWlsZC10eXBlcyc7XG5cbmZ1bmN0aW9uIG5vZGVNYWpvclZlcnNpb24oKTogbnVtYmVyIHtcbiAgcmV0dXJuIHBhcnNlSW50KHByb2Nlc3MudmVyc2lvbnMubm9kZS5zcGxpdCgnLicpWzBdLCAxMCk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29kZUNvbmZpZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHMzTG9jYXRpb246IExvY2F0aW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEphdmFTY3JpcHRDb2RlUHJvcHMgZXh0ZW5kcyBBc3NldEJhc2VQcm9wcyB7fTtcbmV4cG9ydCBpbnRlcmZhY2UgVHlwZVNjcmlwdENvZGVQcm9wcyBleHRlbmRzIEFzc2V0QmFzZVByb3BzIHt9O1xuXG5hYnN0cmFjdCBjbGFzcyBDb2RlPFxuICBQcm9wcyBleHRlbmRzIEphdmFTY3JpcHRDb2RlUHJvcHMgfCBUeXBlU2NyaXB0Q29kZVByb3BzLFxuICBBc3NldCBleHRlbmRzIEpTQXNzZXQgfCBUU0Fzc2V0XG4+IHtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IHJlYWRvbmx5IGFzc2V0Q2xhc3M6IG5ldyAoXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBBc3NldFByb3BzXG4gICkgPT4gQXNzZXQ7XG5cbiAgcHJvdGVjdGVkIHByb3BzOiBBc3NldFByb3BzO1xuXG4gIHByb3RlY3RlZCBhc3NldCE6IEFzc2V0O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcHVibGljIGlzSW5saW5lOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSBlbnRyeVBvaW50cyAtIFJlbGF0aXZlIHBhdGggdG8gdGhlIGFzc2V0IGNvZGUuIFVzZSBgcHJvcHMuYnVpbGRPcHRpb25zLmFic1dvcmtpbmdEaXJgIGlmIGFuIGFic29sdXRlIHBhdGggaXMgcmVxdWlyZWQuXG4gICAqIEBwYXJhbSBwcm9wcyAtIEFzc2V0IHByb3BlcnRpZXMuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgZW50cnlQb2ludHM6IEVudHJ5UG9pbnRzLCBwcm9wczogUHJvcHMpIHtcbiAgICBjb25zdCBkZWZhdWx0T3B0aW9uczogUGFydGlhbDxCdWlsZE9wdGlvbnM+ID0ge1xuICAgICAgLi4uKCFwcm9wcy5idWlsZE9wdGlvbnM/LnBsYXRmb3JtIHx8XG4gICAgICBwcm9wcy5idWlsZE9wdGlvbnM/LnBsYXRmb3JtID09PSAnbm9kZSdcbiAgICAgICAgPyB7IHBsYXRmb3JtOiAnbm9kZScsIHRhcmdldDogJ25vZGUnICsgbm9kZU1ham9yVmVyc2lvbigpIH1cbiAgICAgICAgOiB7fSksXG4gICAgfTtcblxuICAgIHRoaXMucHJvcHMgPSB7XG4gICAgICAuLi5wcm9wcyxcbiAgICAgIGVudHJ5UG9pbnRzLFxuICAgICAgYnVpbGRPcHRpb25zOiB7XG4gICAgICAgIC4uLmRlZmF1bHRPcHRpb25zLFxuICAgICAgICAuLi5wcm9wcy5idWlsZE9wdGlvbnMsXG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICBiaW5kKHNjb3BlOiBDb25zdHJ1Y3QpOiBDb2RlQ29uZmlnIHtcbiAgICAvLyBJZiB0aGUgc2FtZSBBc3NldENvZGUgaXMgdXNlZCBtdWx0aXBsZSB0aW1lcywgcmV0YWluIG9ubHkgdGhlIGZpcnN0IGluc3RhbnRpYXRpb24uXG4gICAgaWYgKCF0aGlzLmFzc2V0KSB7XG4gICAgICB0aGlzLmFzc2V0ID0gbmV3IHRoaXMuYXNzZXRDbGFzcyhcbiAgICAgICAgc2NvcGUsXG4gICAgICAgIHRoaXMuY29uc3RydWN0b3IubmFtZSxcbiAgICAgICAgdGhpcy5wcm9wcyxcbiAgICAgICk7XG4gICAgfSBlbHNlIGlmIChTdGFjay5vZih0aGlzLmFzc2V0KSAhPT0gU3RhY2sub2Yoc2NvcGUpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBBc3NldCBpcyBhbHJlYWR5IGFzc29jaWF0ZWQgd2l0aCBhbm90aGVyIHN0YWNrICcke1xuICAgICAgICAgIFN0YWNrLm9mKHRoaXMuYXNzZXQpLnN0YWNrTmFtZVxuICAgICAgICB9Jy4gYCArICdDcmVhdGUgYSBuZXcgQXNzZXQgaW5zdGFuY2UgZm9yIGV2ZXJ5IHN0YWNrLicsXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBzM0xvY2F0aW9uOiB7XG4gICAgICAgIGJ1Y2tldE5hbWU6IHRoaXMuYXNzZXQuczNCdWNrZXROYW1lLFxuICAgICAgICBvYmplY3RLZXk6IHRoaXMuYXNzZXQuczNPYmplY3RLZXksXG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgYmluZFRvUmVzb3VyY2UocmVzb3VyY2U6IENmblJlc291cmNlLCBvcHRpb25zPzogUmVzb3VyY2VCaW5kT3B0aW9ucykge1xuICAgIGlmICghdGhpcy5hc3NldCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdiaW5kVG9SZXNvdXJjZSgpIG11c3QgYmUgY2FsbGVkIGFmdGVyIGJpbmQoKScpO1xuICAgIH1cbiAgICBjb25zdCByZXNvdXJjZVByb3BlcnR5ID0gb3B0aW9ucz8ucmVzb3VyY2VQcm9wZXJ0eSB8fCB0aGlzLmNvbnN0cnVjdG9yLm5hbWU7XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2lzc3Vlcy8xNDMyXG4gICAgdGhpcy5hc3NldC5hZGRSZXNvdXJjZU1ldGFkYXRhKHJlc291cmNlLCByZXNvdXJjZVByb3BlcnR5KTtcbiAgfVxufVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbmV4cG9ydCBjbGFzcyBKYXZhU2NyaXB0Q29kZSBleHRlbmRzIENvZGU8SmF2YVNjcmlwdENvZGVQcm9wcywgSlNBc3NldD4ge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXNzZXRDbGFzcyA9IEpTQXNzZXQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgLyoqXG4gICAgICogQSByZWxhdGl2ZSBwYXRoIG9yIGxpc3Qgb3IgbWFwIG9mIHJlbGF0aXZlIHBhdGhzIHRvIHRoZSBlbnRyeSBwb2ludHMgb2YgeW91ciBjb2RlIGZyb20gdGhlIHJvb3Qgb2YgdGhlIHByb2plY3QuXG4gICAgICogRS5nLiBgc3JjL2luZGV4LnRzYC5cbiAgICAgKlxuICAgICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAgICovXG4gICAgZW50cnlQb2ludHM6IEVudHJ5UG9pbnRzLFxuICAgIC8qKlxuICAgICAqIFByb3BzIHRvIGNoYW5nZSB0aGUgYmVoYXZpb3Igb2YgdGhlIGJ1bmRsZXIuXG4gICAgICpcbiAgICAgKiBEZWZhdWx0IHZhbHVlcyBmb3IgYHByb3BzLmJ1aWxkT3B0aW9uc2A6XG4gICAgICogLSBgYnVuZGxlPXRydWVgXG4gICAgICogLSBgcGxhdGZvcm09bm9kZWBcbiAgICAgKiAtIGB0YXJnZXQ9bm9kZVhgIHdpdGggWCBiZWluZyB0aGUgbWFqb3Igbm9kZSB2ZXJzaW9uIHJ1bm5pbmcgbG9jYWxseVxuICAgICAqXG4gICAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICAgKi9cbiAgICBwcm9wczogSmF2YVNjcmlwdENvZGVQcm9wcyA9IHt9LFxuICApIHtcbiAgICBzdXBlcihlbnRyeVBvaW50cywgcHJvcHMpO1xuICB9XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIFR5cGVTY3JpcHRDb2RlIGV4dGVuZHMgQ29kZTxUeXBlU2NyaXB0Q29kZVByb3BzLCBUU0Fzc2V0PiB7XG4gIHByb3RlY3RlZCByZWFkb25seSBhc3NldENsYXNzID0gVFNBc3NldDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAvKipcbiAgICAgKiBBIHJlbGF0aXZlIHBhdGggb3IgbGlzdCBvciBtYXAgb2YgcmVsYXRpdmUgcGF0aHMgdG8gdGhlIGVudHJ5IHBvaW50cyBvZiB5b3VyIGNvZGUgZnJvbSB0aGUgcm9vdCBvZiB0aGUgcHJvamVjdC5cbiAgICAgKiBFLmcuIGBzcmMvaW5kZXgudHNgLlxuICAgICAqXG4gICAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICAgKi9cbiAgICBlbnRyeVBvaW50czogRW50cnlQb2ludHMsXG4gICAgLyoqXG4gICAgICogUHJvcHMgdG8gY2hhbmdlIHRoZSBiZWhhdmlvciBvZiB0aGUgYnVuZGxlci5cbiAgICAgKlxuICAgICAqIERlZmF1bHQgdmFsdWVzIGZvciBgcHJvcHMuYnVpbGRPcHRpb25zYDpcbiAgICAgKiAtIGBidW5kbGU9dHJ1ZWBcbiAgICAgKiAtIGBwbGF0Zm9ybT1ub2RlYFxuICAgICAqIC0gYHRhcmdldD1ub2RlWGAgd2l0aCBYIGJlaW5nIHRoZSBtYWpvciBub2RlIHZlcnNpb24gcnVubmluZyBsb2NhbGx5XG4gICAgICpcbiAgICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgICAqL1xuICAgIHByb3BzOiBUeXBlU2NyaXB0Q29kZVByb3BzID0ge30sXG4gICkge1xuICAgIHN1cGVyKGVudHJ5UG9pbnRzLCBwcm9wcyk7XG4gIH1cbn1cbiJdfQ==
package/lib/index.d.ts CHANGED
@@ -2,5 +2,5 @@ export { BuildOptions, TransformOptions } from './esbuild-types';
2
2
  export { EsbuildBundler, BundlerProps } from './bundler';
3
3
  export { JavaScriptAsset, TypeScriptAsset, AssetBaseProps, AssetProps } from './asset';
4
4
  export { JavaScriptCode, JavaScriptCodeProps, TypeScriptCode, TypeScriptCodeProps, CodeConfig, } from './code';
5
- export { InlineJavaScriptCode, InlineJsxCode, InlineTsxCode, InlineTypeScriptCode, } from './inline-code';
5
+ export { TransformerProps, InlineJavaScriptCode, InlineJsxCode, InlineTsxCode, InlineTypeScriptCode, } from './inline-code';
6
6
  export { JavaScriptSource, JavaScriptSourceProps, TypeScriptSource, TypeScriptSourceProps, } from './source';
package/lib/index.js CHANGED
@@ -16,4 +16,4 @@ Object.defineProperty(exports, "InlineTypeScriptCode", { enumerable: true, get:
16
16
  var source_1 = require("./source");
17
17
  Object.defineProperty(exports, "JavaScriptSource", { enumerable: true, get: function () { return source_1.JavaScriptSource; } });
18
18
  Object.defineProperty(exports, "TypeScriptSource", { enumerable: true, get: function () { return source_1.TypeScriptSource; } });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFHQSxxQ0FBeUQ7QUFBaEQseUdBQUEsY0FBYyxPQUFBO0FBRXZCLGlDQUF1RjtBQUE5RSx3R0FBQSxlQUFlLE9BQUE7QUFBRSx3R0FBQSxlQUFlLE9BQUE7QUFFekMsK0JBTWdCO0FBTGQsc0dBQUEsY0FBYyxPQUFBO0FBRWQsc0dBQUEsY0FBYyxPQUFBO0FBS2hCLDZDQUt1QjtBQUpyQixtSEFBQSxvQkFBb0IsT0FBQTtBQUNwQiw0R0FBQSxhQUFhLE9BQUE7QUFDYiw0R0FBQSxhQUFhLE9BQUE7QUFDYixtSEFBQSxvQkFBb0IsT0FBQTtBQUd0QixtQ0FLa0I7QUFKaEIsMEdBQUEsZ0JBQWdCLE9BQUE7QUFFaEIsMEdBQUEsZ0JBQWdCLE9BQUEiLCJzb3VyY2VzQ29udGVudCI6WyJcbmV4cG9ydCB7IEJ1aWxkT3B0aW9ucywgVHJhbnNmb3JtT3B0aW9ucyB9IGZyb20gJy4vZXNidWlsZC10eXBlcyc7XG5cbmV4cG9ydCB7IEVzYnVpbGRCdW5kbGVyLCBCdW5kbGVyUHJvcHMgfSBmcm9tICcuL2J1bmRsZXInO1xuXG5leHBvcnQgeyBKYXZhU2NyaXB0QXNzZXQsIFR5cGVTY3JpcHRBc3NldCwgQXNzZXRCYXNlUHJvcHMsIEFzc2V0UHJvcHMgfSBmcm9tICcuL2Fzc2V0JztcblxuZXhwb3J0IHtcbiAgSmF2YVNjcmlwdENvZGUsXG4gIEphdmFTY3JpcHRDb2RlUHJvcHMsXG4gIFR5cGVTY3JpcHRDb2RlLFxuICBUeXBlU2NyaXB0Q29kZVByb3BzLFxuICBDb2RlQ29uZmlnLFxufSBmcm9tICcuL2NvZGUnO1xuXG5leHBvcnQge1xuICBJbmxpbmVKYXZhU2NyaXB0Q29kZSxcbiAgSW5saW5lSnN4Q29kZSxcbiAgSW5saW5lVHN4Q29kZSxcbiAgSW5saW5lVHlwZVNjcmlwdENvZGUsXG59IGZyb20gJy4vaW5saW5lLWNvZGUnO1xuXG5leHBvcnQge1xuICBKYXZhU2NyaXB0U291cmNlLFxuICBKYXZhU2NyaXB0U291cmNlUHJvcHMsXG4gIFR5cGVTY3JpcHRTb3VyY2UsXG4gIFR5cGVTY3JpcHRTb3VyY2VQcm9wcyxcbn0gZnJvbSAnLi9zb3VyY2UnOyJdfQ==
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFHQSxxQ0FBeUQ7QUFBaEQseUdBQUEsY0FBYyxPQUFBO0FBRXZCLGlDQUF1RjtBQUE5RSx3R0FBQSxlQUFlLE9BQUE7QUFBRSx3R0FBQSxlQUFlLE9BQUE7QUFFekMsK0JBTWdCO0FBTGQsc0dBQUEsY0FBYyxPQUFBO0FBRWQsc0dBQUEsY0FBYyxPQUFBO0FBS2hCLDZDQU11QjtBQUpyQixtSEFBQSxvQkFBb0IsT0FBQTtBQUNwQiw0R0FBQSxhQUFhLE9BQUE7QUFDYiw0R0FBQSxhQUFhLE9BQUE7QUFDYixtSEFBQSxvQkFBb0IsT0FBQTtBQUd0QixtQ0FLa0I7QUFKaEIsMEdBQUEsZ0JBQWdCLE9BQUE7QUFFaEIsMEdBQUEsZ0JBQWdCLE9BQUEiLCJzb3VyY2VzQ29udGVudCI6WyJcbmV4cG9ydCB7IEJ1aWxkT3B0aW9ucywgVHJhbnNmb3JtT3B0aW9ucyB9IGZyb20gJy4vZXNidWlsZC10eXBlcyc7XG5cbmV4cG9ydCB7IEVzYnVpbGRCdW5kbGVyLCBCdW5kbGVyUHJvcHMgfSBmcm9tICcuL2J1bmRsZXInO1xuXG5leHBvcnQgeyBKYXZhU2NyaXB0QXNzZXQsIFR5cGVTY3JpcHRBc3NldCwgQXNzZXRCYXNlUHJvcHMsIEFzc2V0UHJvcHMgfSBmcm9tICcuL2Fzc2V0JztcblxuZXhwb3J0IHtcbiAgSmF2YVNjcmlwdENvZGUsXG4gIEphdmFTY3JpcHRDb2RlUHJvcHMsXG4gIFR5cGVTY3JpcHRDb2RlLFxuICBUeXBlU2NyaXB0Q29kZVByb3BzLFxuICBDb2RlQ29uZmlnLFxufSBmcm9tICcuL2NvZGUnO1xuXG5leHBvcnQge1xuICBUcmFuc2Zvcm1lclByb3BzLFxuICBJbmxpbmVKYXZhU2NyaXB0Q29kZSxcbiAgSW5saW5lSnN4Q29kZSxcbiAgSW5saW5lVHN4Q29kZSxcbiAgSW5saW5lVHlwZVNjcmlwdENvZGUsXG59IGZyb20gJy4vaW5saW5lLWNvZGUnO1xuXG5leHBvcnQge1xuICBKYXZhU2NyaXB0U291cmNlLFxuICBKYXZhU2NyaXB0U291cmNlUHJvcHMsXG4gIFR5cGVTY3JpcHRTb3VyY2UsXG4gIFR5cGVTY3JpcHRTb3VyY2VQcm9wcyxcbn0gZnJvbSAnLi9zb3VyY2UnOyJdfQ==