@mrgrain/cdk-esbuild 4.0.0-alpha.5 → 4.0.0-alpha.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +533 -330
- package/.projenrc.ts +10 -4
- package/API.md +349 -166
- package/CHANGELOG.md +12 -0
- package/README.md +16 -6
- package/lib/asset.d.ts +8 -4
- package/lib/asset.js +18 -11
- package/lib/bundler.d.ts +8 -0
- package/lib/bundler.js +7 -2
- package/lib/code.d.ts +39 -22
- package/lib/code.js +48 -16
- package/lib/esbuild-polyfill.js +29 -31
- package/lib/esbuild-types.d.ts +5 -1
- package/lib/esbuild-types.js +1 -1
- package/lib/esbuild-wrapper.js +5 -11
- package/lib/index.d.ts +4 -4
- package/lib/index.js +3 -1
- package/lib/inline-code.js +4 -4
- package/lib/source.js +2 -2
- package/package.json +7 -13
- package/node_modules/isexe/.npmignore +0 -2
- package/node_modules/isexe/LICENSE +0 -15
- package/node_modules/isexe/README.md +0 -51
- package/node_modules/isexe/index.js +0 -57
- package/node_modules/isexe/mode.js +0 -41
- package/node_modules/isexe/package.json +0 -35
- package/node_modules/isexe/test/basic.js +0 -221
- package/node_modules/isexe/windows.js +0 -42
- package/node_modules/which/CHANGELOG.md +0 -166
- package/node_modules/which/LICENSE +0 -15
- package/node_modules/which/README.md +0 -54
- package/node_modules/which/bin/node-which +0 -52
- package/node_modules/which/package.json +0 -47
- package/node_modules/which/which.js +0 -125
package/README.md
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
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)
|
|
6
|
-
[Documentation](#documentation) | [API Reference](#api-reference) | [Versioning](#versioning)
|
|
5
|
+
[Getting started](#getting-started)
|
|
6
|
+
[Documentation](#documentation) | [API Reference](#api-reference) | [Versioning](#versioning) | [Upgrading from AWS CDK v1](#upgrading-from-aws-cdk-v1)
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
[](https://constructs.dev/packages/@mrgrain/cdk-esbuild)
|
|
9
9
|
|
|
10
10
|
## Why?
|
|
11
11
|
|
|
@@ -153,6 +153,16 @@ It's possible that you want to use an implementation of esbuild that's different
|
|
|
153
153
|
|
|
154
154
|
For these situations, this package offers an escape hatch to bypass regular the implementation and provide a custom build and transform function.
|
|
155
155
|
|
|
156
|
+
#### Esbuild binary path
|
|
157
|
+
|
|
158
|
+
It is possible to override the binary used by esbuild. The usual way to do this is to set the `ESBUILD_BINARY_PATH` environment variable. For convenience this package allows to set the binary path as a prop:
|
|
159
|
+
|
|
160
|
+
```ts
|
|
161
|
+
new TypeScriptCode("fixtures/handlers/ts-handler.ts", {
|
|
162
|
+
esbuildBinaryPath: "path/to/esbuild/binary"
|
|
163
|
+
});
|
|
164
|
+
```
|
|
165
|
+
|
|
156
166
|
#### Custom build function
|
|
157
167
|
|
|
158
168
|
> 💡 See [Using esbuild with plugins](examples/esbuild-with-plugins) for a complete working example of a custom build function using this escape hatch.
|
|
@@ -195,11 +205,11 @@ Instead of esbuild, the provided function will be invoked with the calculated tr
|
|
|
195
205
|
|
|
196
206
|
Failures have to cause a `TransformFailure` exception in order to be fully handled.
|
|
197
207
|
|
|
198
|
-
###
|
|
208
|
+
### Upgrading from AWS CDK v1
|
|
199
209
|
|
|
200
|
-
|
|
210
|
+
This version is 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).
|
|
201
211
|
|
|
202
|
-
|
|
212
|
+
To upgrade from AWS CDK v1 and cdk-esbuild@v2, please follow these steps:
|
|
203
213
|
|
|
204
214
|
- 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.
|
|
205
215
|
- Update the package dependency to v3: `npm install --save @mrgrain/cdk-esbuild@^3.0.0`
|
package/lib/asset.d.ts
CHANGED
|
@@ -27,9 +27,13 @@ export interface AssetProps extends AssetBaseProps {
|
|
|
27
27
|
declare type JavaScriptAssetProps = AssetProps;
|
|
28
28
|
declare type TypeScriptAssetProps = AssetProps;
|
|
29
29
|
/**
|
|
30
|
-
*
|
|
30
|
+
* Represents a generic esbuild asset.
|
|
31
|
+
*
|
|
32
|
+
* You should always use `TypeScriptAsset` or `JavaScriptAsset`.
|
|
33
|
+
*
|
|
34
|
+
* @stability experimental
|
|
31
35
|
*/
|
|
32
|
-
declare
|
|
36
|
+
export declare class EsbuildAsset<Props extends AssetProps> extends S3Asset {
|
|
33
37
|
/**
|
|
34
38
|
* @stability stable
|
|
35
39
|
*/
|
|
@@ -42,7 +46,7 @@ declare abstract class Asset<Props extends AssetProps> extends S3Asset {
|
|
|
42
46
|
*
|
|
43
47
|
* @stability stable
|
|
44
48
|
*/
|
|
45
|
-
export declare class JavaScriptAsset extends
|
|
49
|
+
export declare class JavaScriptAsset extends EsbuildAsset<JavaScriptAssetProps> {
|
|
46
50
|
}
|
|
47
51
|
/**
|
|
48
52
|
* Bundles the entry points and creates a CDK asset which is uploaded to the bootstrapped CDK S3 bucket during deployment.
|
|
@@ -51,6 +55,6 @@ export declare class JavaScriptAsset extends Asset<JavaScriptAssetProps> {
|
|
|
51
55
|
*
|
|
52
56
|
* @stability stable
|
|
53
57
|
*/
|
|
54
|
-
export declare class TypeScriptAsset extends
|
|
58
|
+
export declare class TypeScriptAsset extends EsbuildAsset<TypeScriptAssetProps> {
|
|
55
59
|
}
|
|
56
60
|
export {};
|
package/lib/asset.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var _a, _b;
|
|
2
|
+
var _a, _b, _c;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.TypeScriptAsset = exports.JavaScriptAsset = void 0;
|
|
4
|
+
exports.TypeScriptAsset = exports.JavaScriptAsset = exports.EsbuildAsset = void 0;
|
|
5
5
|
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
6
|
const path_1 = require("path");
|
|
7
7
|
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
@@ -9,9 +9,13 @@ const aws_s3_assets_1 = require("aws-cdk-lib/aws-s3-assets");
|
|
|
9
9
|
const constructs_1 = require("constructs");
|
|
10
10
|
const bundler_1 = require("./bundler");
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* Represents a generic esbuild asset.
|
|
13
|
+
*
|
|
14
|
+
* You should always use `TypeScriptAsset` or `JavaScriptAsset`.
|
|
15
|
+
*
|
|
16
|
+
* @stability experimental
|
|
13
17
|
*/
|
|
14
|
-
class
|
|
18
|
+
class EsbuildAsset extends aws_s3_assets_1.Asset {
|
|
15
19
|
/**
|
|
16
20
|
* @stability stable
|
|
17
21
|
*/
|
|
@@ -42,6 +46,9 @@ class Asset extends aws_s3_assets_1.Asset {
|
|
|
42
46
|
});
|
|
43
47
|
}
|
|
44
48
|
}
|
|
49
|
+
exports.EsbuildAsset = EsbuildAsset;
|
|
50
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
51
|
+
EsbuildAsset[_a] = { fqn: "@mrgrain/cdk-esbuild.EsbuildAsset", version: "4.0.0-alpha.8" };
|
|
45
52
|
/**
|
|
46
53
|
* Bundles the entry points and creates a CDK asset which is uploaded to the bootstrapped CDK S3 bucket during deployment.
|
|
47
54
|
*
|
|
@@ -49,11 +56,11 @@ class Asset extends aws_s3_assets_1.Asset {
|
|
|
49
56
|
*
|
|
50
57
|
* @stability stable
|
|
51
58
|
*/
|
|
52
|
-
class JavaScriptAsset extends
|
|
59
|
+
class JavaScriptAsset extends EsbuildAsset {
|
|
53
60
|
}
|
|
54
61
|
exports.JavaScriptAsset = JavaScriptAsset;
|
|
55
|
-
|
|
56
|
-
JavaScriptAsset[
|
|
62
|
+
_b = JSII_RTTI_SYMBOL_1;
|
|
63
|
+
JavaScriptAsset[_b] = { fqn: "@mrgrain/cdk-esbuild.JavaScriptAsset", version: "4.0.0-alpha.8" };
|
|
57
64
|
/**
|
|
58
65
|
* Bundles the entry points and creates a CDK asset which is uploaded to the bootstrapped CDK S3 bucket during deployment.
|
|
59
66
|
*
|
|
@@ -61,9 +68,9 @@ JavaScriptAsset[_a] = { fqn: "@mrgrain/cdk-esbuild.JavaScriptAsset", version: "4
|
|
|
61
68
|
*
|
|
62
69
|
* @stability stable
|
|
63
70
|
*/
|
|
64
|
-
class TypeScriptAsset extends
|
|
71
|
+
class TypeScriptAsset extends EsbuildAsset {
|
|
65
72
|
}
|
|
66
73
|
exports.TypeScriptAsset = TypeScriptAsset;
|
|
67
|
-
|
|
68
|
-
TypeScriptAsset[
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
74
|
+
_c = JSII_RTTI_SYMBOL_1;
|
|
75
|
+
TypeScriptAsset[_c] = { fqn: "@mrgrain/cdk-esbuild.TypeScriptAsset", version: "4.0.0-alpha.8" };
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvYXNzZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwrQkFBa0M7QUFDbEMsNkNBQTRDO0FBQzVDLDZEQUE2RDtBQUM3RCwyQ0FBNkM7QUFDN0MsdUNBQXNFO0FBOEJ0RTs7Ozs7O0dBTUc7QUFDSCxNQUFhLFlBQXVDLFNBQVEscUJBQU87SUFDakU7O09BRUc7SUFDSCxZQUNFLEtBQWdCLEVBQ2hCLEVBQVUsRUFDVixLQUFZO1FBRVosTUFBTSxFQUNKLFNBQVMsRUFDVCxPQUFPLEVBQ1AsWUFBWSxFQUFFLE9BQU8sR0FBRyxFQUFFLEVBQzFCLE9BQU8sR0FDUixHQUFHLEtBQUssQ0FBQztRQUNWLE1BQU0sV0FBVyxHQUNmLE9BQU8sS0FBSyxDQUFDLFdBQVcsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDO1FBRWxGLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLGlCQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUVsRCxNQUFNLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQWtCLEVBQUUsRUFBRTtZQUN4RCxJQUFJLGlCQUFVLENBQUMsVUFBVSxDQUFDLEVBQUU7Z0JBQzFCLE1BQU0sSUFBSSxLQUFLLENBQ2IsR0FBRyxJQUFJLHdJQUF3SSxDQUNoSixDQUFDO2FBQ0g7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxhQUFhLElBQUksT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBRTdELE1BQU0sWUFBWSxHQUFHO1lBQ25CLE1BQU0sRUFBRSxJQUFJO1lBQ1osR0FBRyxPQUFPO1lBQ1YsYUFBYTtTQUNkLENBQUM7UUFFRixLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxhQUFhO1lBQ25CLFNBQVM7WUFDVCxhQUFhLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQywyQkFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsMkJBQWEsQ0FBQyxNQUFNO1lBQ3RFLFFBQVEsRUFBRSxJQUFJLHdCQUFjLENBQzFCLFdBQVcsRUFDWDtnQkFDRSxZQUFZO2dCQUNaLE9BQU87Z0JBQ1AsT0FBTzthQUNSLENBQ0Y7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDOztBQWpESCxvQ0FrREM7OztBQUVEOzs7Ozs7R0FNRztBQUNILE1BQWEsZUFBZ0IsU0FBUSxZQUFrQzs7QUFBdkUsMENBQTBFOzs7QUFFMUU7Ozs7OztHQU1HO0FBQ0gsTUFBYSxlQUFnQixTQUFRLFlBQWtDOztBQUF2RSwwQ0FBMEUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0Fic29sdXRlIH0gZnJvbSAncGF0aCc7XG5pbXBvcnQgeyBBc3NldEhhc2hUeXBlIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgQXNzZXQgYXMgUzNBc3NldCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1zMy1hc3NldHMnO1xuaW1wb3J0IHsgQ29uc3RydWN0LCBOb2RlIH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBFc2J1aWxkQnVuZGxlciwgQnVuZGxlclByb3BzLCBFbnRyeVBvaW50cyB9IGZyb20gJy4vYnVuZGxlcic7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXNzZXRCYXNlUHJvcHMgZXh0ZW5kcyBCdW5kbGVyUHJvcHMge1xuICAvKipcbiAgICogQSBoYXNoIG9mIHRoaXMgYXNzZXQsIHdoaWNoIGlzIGF2YWlsYWJsZSBhdCBjb25zdHJ1Y3Rpb24gdGltZS5cbiAgICpcbiAgICogQXMgdGhpcyBpcyBhIHBsYWluIHN0cmluZywgaXQgY2FuIGJlIHVzZWQgaW4gY29uc3RydWN0IElEcyBpbiBvcmRlciB0byBlbmZvcmNlIGNyZWF0aW9uIG9mIGEgbmV3IHJlc291cmNlIHdoZW4gdGhlIGNvbnRlbnQgaGFzaCBoYXMgY2hhbmdlZC5cbiAgICpcbiAgICogRGVmYXVsdHMgdG8gYSBoYXNoIG9mIGFsbCBmaWxlcyBpbiB0aGUgcmVzdWx0aW5nIGJ1bmRsZS5cbiAgICpcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGFzc2V0SGFzaD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBc3NldFByb3BzIGV4dGVuZHMgQXNzZXRCYXNlUHJvcHMge1xuICAvKipcbiAgICogQSByZWxhdGl2ZSBwYXRoIG9yIGxpc3Qgb3IgbWFwIG9mIHJlbGF0aXZlIHBhdGhzIHRvIHRoZSBlbnRyeSBwb2ludHMgb2YgeW91ciBjb2RlIGZyb20gdGhlIHJvb3Qgb2YgdGhlIHByb2plY3QuIEUuZy4gYHNyYy9pbmRleC50c2AuXG4gICAqXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBlbnRyeVBvaW50czogRW50cnlQb2ludHM7XG59XG5cbnR5cGUgSmF2YVNjcmlwdEFzc2V0UHJvcHMgPSBBc3NldFByb3BzO1xudHlwZSBUeXBlU2NyaXB0QXNzZXRQcm9wcyA9IEFzc2V0UHJvcHM7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIGdlbmVyaWMgZXNidWlsZCBhc3NldC5cbiAqXG4gKiBZb3Ugc2hvdWxkIGFsd2F5cyB1c2UgYFR5cGVTY3JpcHRBc3NldGAgb3IgYEphdmFTY3JpcHRBc3NldGAuXG4gKlxuICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAqL1xuZXhwb3J0IGNsYXNzIEVzYnVpbGRBc3NldDxQcm9wcyBleHRlbmRzIEFzc2V0UHJvcHM+IGV4dGVuZHMgUzNBc3NldCB7XG4gIC8qKlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogUHJvcHMsXG4gICkge1xuICAgIGNvbnN0IHtcbiAgICAgIGFzc2V0SGFzaCxcbiAgICAgIGNvcHlEaXIsXG4gICAgICBidWlsZE9wdGlvbnM6IG9wdGlvbnMgPSB7fSxcbiAgICAgIGJ1aWxkRm4sXG4gICAgfSA9IHByb3BzO1xuICAgIGNvbnN0IGVudHJ5UG9pbnRzOiBzdHJpbmdbXSB8IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPVxuICAgICAgdHlwZW9mIHByb3BzLmVudHJ5UG9pbnRzID09PSAnc3RyaW5nJyA/IFtwcm9wcy5lbnRyeVBvaW50c10gOiBwcm9wcy5lbnRyeVBvaW50cztcblxuICAgIGNvbnN0IG5hbWUgPSBzY29wZS5ub2RlLnBhdGggKyBOb2RlLlBBVEhfU0VQICsgaWQ7XG5cbiAgICBPYmplY3QudmFsdWVzKGVudHJ5UG9pbnRzKS5mb3JFYWNoKChlbnRyeVBvaW50OiBzdHJpbmcpID0+IHtcbiAgICAgIGlmIChpc0Fic29sdXRlKGVudHJ5UG9pbnQpKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICBgJHtuYW1lfTogRW50cnkgcG9pbnRzIG11c3QgYmUgYSByZWxhdGl2ZSBwYXRoLiBJZiB5b3UgbmVlZCB0byBkZWZpbmUgYW4gYWJzb2x1dGUgcGF0aCwgcGxlYXNlIHVzZSBcXGBidWlsZE9wdGlvbnMuYWJzV29ya2luZ0RpclxcYCBhY2NvcmRpbmdseS5gLFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgY29uc3QgYWJzV29ya2luZ0RpciA9IG9wdGlvbnMuYWJzV29ya2luZ0RpciA/PyBwcm9jZXNzLmN3ZCgpO1xuXG4gICAgY29uc3QgYnVpbGRPcHRpb25zID0ge1xuICAgICAgYnVuZGxlOiB0cnVlLFxuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIGFic1dvcmtpbmdEaXIsXG4gICAgfTtcblxuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgcGF0aDogYWJzV29ya2luZ0RpcixcbiAgICAgIGFzc2V0SGFzaCxcbiAgICAgIGFzc2V0SGFzaFR5cGU6IGFzc2V0SGFzaCA/IEFzc2V0SGFzaFR5cGUuQ1VTVE9NIDogQXNzZXRIYXNoVHlwZS5PVVRQVVQsXG4gICAgICBidW5kbGluZzogbmV3IEVzYnVpbGRCdW5kbGVyKFxuICAgICAgICBlbnRyeVBvaW50cyxcbiAgICAgICAge1xuICAgICAgICAgIGJ1aWxkT3B0aW9ucyxcbiAgICAgICAgICBjb3B5RGlyLFxuICAgICAgICAgIGJ1aWxkRm4sXG4gICAgICAgIH0sXG4gICAgICApLFxuICAgIH0pO1xuICB9XG59XG5cbi8qKlxuICogQnVuZGxlcyB0aGUgZW50cnkgcG9pbnRzIGFuZCBjcmVhdGVzIGEgQ0RLIGFzc2V0IHdoaWNoIGlzIHVwbG9hZGVkIHRvIHRoZSBib290c3RyYXBwZWQgQ0RLIFMzIGJ1Y2tldCBkdXJpbmcgZGVwbG95bWVudC5cbiAqXG4gKiBUaGUgYXNzZXQgY2FuIGJlIHVzZWQgYnkgb3RoZXIgY29uc3RydWN0cy5cbiAqXG4gKiBAc3RhYmlsaXR5IHN0YWJsZVxuICovXG5leHBvcnQgY2xhc3MgSmF2YVNjcmlwdEFzc2V0IGV4dGVuZHMgRXNidWlsZEFzc2V0PEphdmFTY3JpcHRBc3NldFByb3BzPiB7fVxuXG4vKipcbiAqIEJ1bmRsZXMgdGhlIGVudHJ5IHBvaW50cyBhbmQgY3JlYXRlcyBhIENESyBhc3NldCB3aGljaCBpcyB1cGxvYWRlZCB0byB0aGUgYm9vdHN0cmFwcGVkIENESyBTMyBidWNrZXQgZHVyaW5nIGRlcGxveW1lbnQuXG4gKlxuICogVGhlIGFzc2V0IGNhbiBiZSB1c2VkIGJ5IG90aGVyIGNvbnN0cnVjdHMuXG4gKlxuICogQHN0YWJpbGl0eSBzdGFibGVcbiAqL1xuZXhwb3J0IGNsYXNzIFR5cGVTY3JpcHRBc3NldCBleHRlbmRzIEVzYnVpbGRBc3NldDxUeXBlU2NyaXB0QXNzZXRQcm9wcz4ge31cbiJdfQ==
|
package/lib/bundler.d.ts
CHANGED
|
@@ -63,6 +63,14 @@ export interface BundlerProps {
|
|
|
63
63
|
* @default esbuild.buildSync
|
|
64
64
|
*/
|
|
65
65
|
readonly buildFn?: any;
|
|
66
|
+
/**
|
|
67
|
+
* Path to the binary used by esbuild.
|
|
68
|
+
*
|
|
69
|
+
* This is the same as setting the ESBUILD_BINARY_PATH environment variable.
|
|
70
|
+
*
|
|
71
|
+
* @stability experimental
|
|
72
|
+
*/
|
|
73
|
+
readonly esbuildBinaryPath?: string;
|
|
66
74
|
}
|
|
67
75
|
/**
|
|
68
76
|
* Low-level construct that can be used where `BundlingOptions` are required.
|
package/lib/bundler.js
CHANGED
|
@@ -59,6 +59,10 @@ class EsbuildBundler {
|
|
|
59
59
|
aws_cdk_lib_1.FileSystem.copyDirectory(srcDir, destDir);
|
|
60
60
|
});
|
|
61
61
|
}
|
|
62
|
+
const originalEsbuildBinaryPath = process.env.ESBUILD_BINARY_PATH;
|
|
63
|
+
if (this.props.esbuildBinaryPath) {
|
|
64
|
+
process.env.ESBUILD_BINARY_PATH = this.props.esbuildBinaryPath;
|
|
65
|
+
}
|
|
62
66
|
try {
|
|
63
67
|
const buildResult = buildFn({
|
|
64
68
|
entryPoints,
|
|
@@ -70,6 +74,7 @@ class EsbuildBundler {
|
|
|
70
74
|
catch (error) {
|
|
71
75
|
formatMessages_1.printBuildMessages(error, { prefix: 'Build ' });
|
|
72
76
|
}
|
|
77
|
+
process.env.ESBUILD_BINARY_PATH = originalEsbuildBinaryPath;
|
|
73
78
|
return true;
|
|
74
79
|
},
|
|
75
80
|
};
|
|
@@ -114,5 +119,5 @@ class EsbuildBundler {
|
|
|
114
119
|
}
|
|
115
120
|
exports.EsbuildBundler = EsbuildBundler;
|
|
116
121
|
_a = JSII_RTTI_SYMBOL_1;
|
|
117
|
-
EsbuildBundler[_a] = { fqn: "@mrgrain/cdk-esbuild.EsbuildBundler", version: "4.0.0-alpha.
|
|
118
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9idW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMkJBQStCO0FBQy9CLCtCQUE2RTtBQUM3RSw2Q0FLcUI7QUFFckIsdURBQThDO0FBQzlDLHFEQUFzRDtBQXVFdEQ7Ozs7O0dBS0c7QUFDSCxNQUFhLGNBQWM7SUFlekI7O09BRUc7SUFDSDtJQUNFOzs7OztPQUtHO0lBQ2EsV0FBd0I7SUFFeEM7Ozs7T0FJRztJQUNhLEtBQW1CO1FBUG5CLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBT3hCLFVBQUssR0FBTCxLQUFLLENBQWM7UUF4QnJDOzs7O1dBSUc7UUFDYSxVQUFLLEdBQUcseUJBQVcsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7UUFxQjFELElBQUksS0FBSyxFQUFFLFlBQVksRUFBRSxPQUFPLElBQUksS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUU7WUFDL0QsTUFBTSxJQUFJLEtBQUssQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO1NBQzNEO1FBRUQsTUFBTSxFQUFFLE9BQU8sR0FBRywyQkFBUyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUUzQyxJQUFJLENBQUMsS0FBSyxHQUFHO1lBQ1gsU0FBUyxFQUFFLENBQUMsU0FBaUIsRUFBRSxRQUF5QixFQUFXLEVBQUU7Z0JBRW5FLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUU7b0JBQ3RCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFFeEQsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxFQUFFLEVBQUU7d0JBQzlCLE1BQU0sTUFBTSxHQUFHLGNBQU8sQ0FDcEIsSUFBSSxDQUFDLEtBQUssRUFBRSxZQUFZLEVBQUUsYUFBYSxJ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WSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsWUFBWSxFQUFFLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FDMUQsT0FBTyxDQUNLLENBQ2YsQ0FDRjthQUNGLENBQUM7U0FDSDtRQUVELE9BQU87WUFDTCxNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FDcEIsSUFBSSxDQUFDLElBQUksQ0FDUCxHQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDekQsT0FBTyxDQUNLLENBQ2YsQ0FDRjtZQUNELE9BQU8sRUFBRSxTQUFTO1NBQ25CLENBQUM7SUFDSixDQUFDOztBQTNJSCx3Q0E0SUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBta2RpclN5bmMgfSBmcm9tICdmcyc7XG5pbXBvcnQgeyBqb2luLCBub3JtYWxpemUsIHJlbGF0aXZlLCByZXNvbHZlLCBwb3NpeCwgaXNBYnNvbHV0ZSB9IGZyb20gJ3BhdGgnO1xuaW1wb3J0IHtcbiAgQnVuZGxpbmdPcHRpb25zLFxuICBEb2NrZXJJbWFnZSxcbiAgRmlsZVN5c3RlbSxcbiAgSUxvY2FsQnVuZGxpbmcsXG59IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IEJ1aWxkRmFpbHVyZSwgQnVpbGRPcHRpb25zLCBCdWlsZFJlc3VsdCB9IGZyb20gJy4vZXNidWlsZC10eXBlcyc7XG5pbXBvcnQgeyBidWlsZFN5bmMgfSBmcm9tICcuL2VzYnVpbGQtd3JhcHBlcic7XG5pbXBvcnQgeyBwcmludEJ1aWxkTWVzc2FnZXMgfSBmcm9tICcuL2Zvcm1hdE1lc3NhZ2VzJztcblxuLyoqXG4gKiBBIHJlbGF0aXZlIHBhdGggb3IgbGlzdCBvciBtYXAgb2YgcmVsYXRpdmUgcGF0aHMgdG8gdGhlIGVudHJ5IHBvaW50cyBvZiB5b3VyIGNvZGUgZnJvbSB0aGUgcm9vdCBvZiB0aGUgcHJvamVjdC4gRS5nLiBgc3JjL2luZGV4LnRzYC5cbiAqXG4gKiBAc3RhYmlsaXR5IHN0YWJsZVxuICovXG5leHBvcnQgdHlwZSBFbnRyeVBvaW50cyA9IHN0cmluZyB8IHN0cmluZ1tdIHwgUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblxuLyoqXG4gKiBAc3RhYmlsaXR5IHN0YWJsZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJ1bmRsZXJQcm9wcyB7XG4gIC8qKlxuICAgKiBCdWlsZCBvcHRpb25zIHBhc3NlZCBvbiB0byBlc2J1aWxkLiBQbGVhc2UgcmVmZXIgdG8gdGhlIGVzYnVpbGQgQnVpbGQgQVBJIGRvY3MgZm9yIGRldGFpbHMuXG4gICAqXG4gICAqICogYGJ1aWxkT3B0aW9ucy5vdXRkaXI6IHN0cmluZ2BcbiAgICogVGhlIGFjdHVhbCBwYXRoIGZvciB0aGUgb3V0cHV0IGRpcmVjdG9yeSBpcyBkZWZpbmVkIGJ5IENESy4gSG93ZXZlciBzZXR0aW5nIHRoaXMgb3B0aW9uIGFsbG93cyB0byB3cml0ZSBmaWxlcyBpbnRvIGEgc3ViZGlyZWN0b3J5LiBcXFxuICAgKiBGb3IgZXhhbXBsZSBgeyBvdXRkaXI6ICdqcycgfWAgd2lsbCBjcmVhdGUgYW4gYXNzZXQgd2l0aCBhIHNpbmdsZSBkaXJlY3RvcnkgY2FsbGVkIGBqc2AsIHdoaWNoIGNvbnRhaW5zIGFsbCBidWlsdCBmaWxlcy4gVGhpcyBhcHByb2FjaCBjYW4gYmUgdXNlZnVsIGZvciBzdGF0aWMgd2Vic2l0ZSBkZXBsb3ltZW50cywgd2hlcmUgSmF2YVNjcmlwdCBjb2RlIHNob3VsZCBiZSBwbGFjZWQgaW50byBhIHN1YmRpcmVjdG9yeS4gXFxcbiAgICogKkNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyIHdpdGggYG91dGZpbGVgKi5cbiAgICogKiBgYnVpbGRPcHRpb25zLm91dGZpbGU6IHN0cmluZ2BcbiAgICogUmVsYXRpdmUgcGF0aCB0byBhIGZpbGUgaW5zaWRlIHRoZSBDREsgYXNzZXQgb3V0cHV0IGRpcmVjdG9yeS5cbiAgICogRm9yIGV4YW1wbGUgYHsgb3V0ZmlsZTogJ2pzL2luZGV4LmpzJyB9YCB3aWxsIGNyZWF0ZSBhbiBhc3NldCB3aXRoIGEgc2luZ2xlIGRpcmVjdG9yeSBjYWxsZWQgYGpzYCwgd2hpY2ggY29udGFpbnMgYSBzaW5nbGUgZmlsZSBgaW5kZXguanNgLiBUaGlzIGNhbiBiZSB1c2VmdWwgdG8gcmVuYW1lIHRoZSBlbnRyeSBwb2ludC4gXFxcbiAgICogKkNhbm5vdCBiZSB1c2VkIHdpdGggbXVsdGlwbGUgZW50cnlQb2ludHMgb3IgdG9nZXRoZXIgd2l0aCBgb3V0ZGlyYC4qXG4gICAqICogYGJ1aWxkT3B0aW9ucy5hYnNXb3JraW5nRGlyOiBzdHJpbmdgXG4gICAqIEFic29sdXRlIHBhdGggdG8gdGhlIFtlc2J1aWxkIHdvcmtpbmcgZGlyZWN0b3J5XShodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jd29ya2luZy1kaXJlY3RvcnkpIGFuZCBkZWZhdWx0cyB0byB0aGUgW2N1cnJlbnQgd29ya2luZyBkaXJlY3RvcnldKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1dvcmtpbmdfZGlyZWN0b3J5KS4gXFxcbiAgICogSWYgcGF0aHMgY2Fubm90IGJlIGZvdW5kLCBhIGdvb2Qgc3RhcnRpbmcgcG9pbnQgaXMgdG8gbG9vayBhdCB0aGUgY29uY2F0ZW5hdGlvbiBvZiBgYWJzV29ya2luZ0RpciArIGVudHJ5UG9pbnRgLiBJdCBtdXN0IGFsd2F5cyBiZSBhIHZhbGlkIGFic29sdXRlIHBhdGggcG9pbnRpbmcgdG8gdGhlIGVudHJ5IHBvaW50LiBXaGVuIG5lZWRlZCwgdGhlIHByb2JhYmx5IGVhc2llc3Qgd2F5IHRvIHNldCBhYnNXb3JraW5nRGlyIGlzIHRvIHVzZSBhIGNvbWJpbmF0aW9uIG9mIGByZXNvbHZlYCBhbmQgYF9fZGlybmFtZWAgKHNlZSBcIkxpYnJhcnkgYXV0aG9yc1wiIHNlY3Rpb24gaW4gdGhlIGRvY3VtZW50YXRpb24pLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNidWlsZC1hcGlcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGJ1aWxkT3B0aW9ucz86IEJ1aWxkT3B0aW9ucztcblxuICAvKipcbiAgICogQ29weSBhZGRpdGlvbmFsIGZpbGVzIHRvIHRoZSBjb2RlIFthc3NldCBzdGFnaW5nIGRpcmVjdG9yeV0oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2Nkay9hcGkvdjIvZG9jcy9hd3MtY2RrLWxpYi5Bc3NldFN0YWdpbmcuaHRtbCNhYnNvbHV0ZXN0YWdlZHBhdGgpLCBiZWZvcmUgdGhlIGJ1aWxkIHJ1bnMuXG4gICAqIEZpbGVzIGNvcGllZCBsaWtlIHRoaXMgd2lsbCBiZSBvdmVyd3JpdHRlbiBieSBlc2J1aWxkIGlmIHRoZXkgc2hhcmUgdGhlIHNhbWUgbmFtZSBhcyBhbnkgb2YgdGhlIG91dHB1dHMuXG4gICAqXG4gICAqICogV2hlbiBwcm92aWRlZCB3aXRoIGEgYHN0cmluZ2Agb3IgYGFycmF5YCwgYWxsIGZpbGVzIGFyZSBjb3BpZWQgdG8gdGhlIHJvb3Qgb2YgYXNzZXQgc3RhZ2luZyBkaXJlY3RvcnkuXG4gICAqICogV2hlbiBnaXZlbiBhIGBtYXBgLCB0aGUga2V5IGluZGljYXRlcyB0aGUgZGVzdGluYXRpb24gcmVsYXRpdmUgdG8gdGhlIGFzc2V0IHN0YWdpbmcgZGlyZWN0b3J5IGFuZCB0aGUgdmFsdWUgaXMgYSBsaXN0IG9mIGFsbCBzb3VyY2VzIHRvIGJlIGNvcGllZC5cbiAgICpcbiAgICogVGhlcmVmb3JlIHRoZSBmb2xsb3dpbmcgdmFsdWVzIGZvciBgY29weURpcmAgYXJlIGFsbCBlcXVpdmFsZW50OlxuICAgKiBgYGB0c1xuICAgKiB7IGNvcHlEaXI6IFwicGF0aC90by9zb3VyY2VcIiB9XG4gICAqIHsgY29weURpcjogW1wicGF0aC90by9zb3VyY2VcIl0gfVxuICAgKiB7IGNvcHlEaXI6IHsgXCIuXCI6IFwicGF0aC90by9zb3VyY2VcIiB9IH1cbiAgICogeyBjb3B5RGlyOiB7IFwiLlwiOiBbXCJwYXRoL3RvL3NvdXJjZVwiXSB9IH1cbiAgICogYGBgXG4gICAqIFRoZSBkZXN0aW5hdGlvbiBjYW5ub3QgYmUgb3V0c2lkZSBvZiB0aGUgYXNzZXQgc3RhZ2luZyBkaXJlY3RvcnkuXG4gICAqIElmIHlvdSBhcmUgcmVjZWl2aW5nIHRoZSBlcnJvciBcIkNhbm5vdCBjb3B5IGZpbGVzIHRvIG91dHNpZGUgb2YgdGhlIGFzc2V0IHN0YWdpbmcgZGlyZWN0b3J5LlwiXG4gICAqIHlvdSBhcmUgbGlrZWx5IHVzaW5nIGAuLmAgb3IgYW4gYWJzb2x1dGUgcGF0aCBhcyBrZXkgb24gdGhlIGBjb3B5RGlyYCBtYXAuXG4gICAqIEluc3RlYWQgdXNlIG9ubHkgcmVsYXRpdmUgcGF0aHMgYW5kIGF2b2lkIGAuLmAuXG4gICAqXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBjb3B5RGlyPzogc3RyaW5nIHwgc3RyaW5nW10gfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBzdHJpbmcgW10+O1xuXG5cbiAgLyoqXG4gICAqIEVzY2FwZSBoYXRjaCB0byBwcm92aWRlIHRoZSBidW5kbGVyIHdpdGggYSBjdXN0b20gYnVpbGQgZnVuY3Rpb24uXG4gICAqIFRoZSBmdW5jdGlvbiB3aWxsIHJlY2VpdmUgdGhlIGNvbXB1dGVkIG9wdGlvbnMgZnJvbSB0aGUgYnVuZGxlci4gSXQgY2FuIHVzZSB3aXRoIHRoZXNlIG9wdGlvbnMgYXMgaXQgd2lzaGVzLCBob3dldmVyIGBvdXRkaXJgL2BvdXRmaWxlYCBtdXN0IGJlIHJlc3BlY3RlZCB0byBpbnRlZ3JhdGUgd2l0aCBDREsuXG4gICAqIE11c3QgdGhyb3cgYSBgQnVpbGRGYWlsdXJlYCBvbiBmYWlsdXJlIHRvIGNvcnJlY3RseSBpbmZvcm0gdGhlIGJ1bmRsZXIuXG4gICAqXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqIEB0eXBlIGVzYnVpbGQuYnVpbGRTeW5jXG4gICAqIEByZXR1cm5zIGVzYnVpbGQuQnVpbGRSZXN1bHRcbiAgICogQHRocm93cyBlc2J1aWxkLkJ1aWxkRmFpbHVyZVxuICAgKiBAZGVmYXVsdCBlc2J1aWxkLmJ1aWxkU3luY1xuICAgKi9cbiAgcmVhZG9ubHkgYnVpbGRGbj86IGFueTtcbn1cblxuLyoqXG4gKiBMb3ctbGV2ZWwgY29uc3RydWN0IHRoYXQgY2FuIGJlIHVzZWQgd2hlcmUgYEJ1bmRsaW5nT3B0aW9uc2AgYXJlIHJlcXVpcmVkLlxuICogVGhpcyBjbGFzcyBkaXJlY3RseSBpbnRlcmZhY2VzIHdpdGggZXNidWlsZCBhbmQgcHJvdmlkZXMgYWxtb3N0IG5vIGNvbmZpZ3VyYXRpb24gc2FmZWd1YXJkcy5cbiAqXG4gKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICovXG5leHBvcnQgY2xhc3MgRXNidWlsZEJ1bmRsZXIge1xuICAvKipcbiAgICogSW1wbGVtZW50YXRpb24gb2YgYElMb2NhbEJ1bmRsaW5nYCBpbnRlcmZhY2UsIHJlc3BvbnNpYmxlIGZvciBjYWxsaW5nIGVzYnVpbGQgZnVuY3Rpb25zLlxuICAgKlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGxvY2FsOiBJTG9jYWxCdW5kbGluZztcblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgVGhpcyB2YWx1ZSBpcyBpZ25vcmVkIHNpbmNlIHRoZSBidW5kbGVyIGlzIGFsd2F5cyB1c2luZyBhIGxvY2FsbHkgaW5zdGFsbGVkIHZlcnNpb24gb2YgZXNidWlsZC4gSG93ZXZlciB0aGUgcHJvcGVydHkgaXMgcmVxdWlyZWQgdG8gY29tcGx5IHdpdGggdGhlIGBCdW5kbGluZ09wdGlvbnNgIGludGVyZmFjZS5cbiAgICpcbiAgICogQHN0YWJpbGl0eSBkZXByZWNhdGVkXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgaW1hZ2UgPSBEb2NrZXJJbWFnZS5mcm9tUmVnaXN0cnkoJ3NjcmF0Y2gnKTtcblxuICAvKipcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAvKipcbiAgICAgKiBBIHJlbGF0aXZlIHBhdGggb3IgbGlzdCBvciBtYXAgb2YgcmVsYXRpdmUgcGF0aHMgdG8gdGhlIGVudHJ5IHBvaW50cyBvZiB5b3VyIGNvZGUgZnJvbSB0aGUgcm9vdCBvZiB0aGUgcHJvamVjdC5cbiAgICAgKiBFLmcuIGBzcmMvaW5kZXgudHNgLlxuICAgICAqXG4gICAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgZW50cnlQb2ludHM6IEVudHJ5UG9pbnRzLFxuXG4gICAgLyoqXG4gICAgICogUHJvcHMgdG8gY2hhbmdlIHRoZSBiZWhhdmlvdXIgb2YgdGhlIGJ1bmRsZXIuXG4gICAgICpcbiAgICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBwcm9wczogQnVuZGxlclByb3BzLFxuICApIHtcbiAgICBpZiAocHJvcHM/LmJ1aWxkT3B0aW9ucz8ub3V0ZmlsZSAmJiBwcm9wcz8uYnVpbGRPcHRpb25zPy5vdXRkaXIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQ2Fubm90IHVzZSBib3RoIFwib3V0ZmlsZVwiIGFuZCBcIm91dGRpclwiJyk7XG4gICAgfVxuXG4gICAgY29uc3QgeyBidWlsZEZuID0gYnVpbGRTeW5jIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgdGhpcy5sb2NhbCA9IHtcbiAgICAgIHRyeUJ1bmRsZTogKG91dHB1dERpcjogc3RyaW5nLCBfb3B0aW9uczogQnVuZGxpbmdPcHRpb25zKTogYm9vbGVhbiA9PiB7XG5cbiAgICAgICAgaWYgKHRoaXMucHJvcHMuY29weURpcikge1xuICAgICAgICAgIGNvbnN0IGNvcHlEaXIgPSB0aGlzLmdldENvcHlEaXJMaXN0KHRoaXMucHJvcHMuY29weURpcik7XG5cbiAgICAgICAgICBjb3B5RGlyLmZvckVhY2goKFtkZXN0LCBzcmNdKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzcmNEaXIgPSByZXNvbHZlKFxuICAgICAgICAgICAgICB0aGlzLnByb3BzPy5idWlsZE9wdGlvbnM/LmFic1dvcmtpbmdEaXIgPz8gcHJvY2Vzcy5jd2QoKSxcbiAgICAgICAgICAgICAgc3JjLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGNvbnN0IGRlc3REaXIgPSByZXNvbHZlKG91dHB1dERpciwgZGVzdCkgO1xuXG4gICAgICAgICAgICBjb25zdCBkZXN0VG9PdXRwdXQgPSByZWxhdGl2ZShvdXRwdXREaXIsIGRlc3REaXIpO1xuICAgICAgICAgICAgaWYgKGRlc3RUb091dHB1dC5zdGFydHNXaXRoKCcuLicpIHx8IGlzQWJzb2x1dGUoZGVzdFRvT3V0cHV0KSkge1xuICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBjb3B5IGZpbGVzIHRvIG91dHNpZGUgb2YgdGhlIGFzc2V0IHN0YWdpbmcgZGlyZWN0b3J5LiBTZWUgZG9jcyBmb3IgZGV0YWlscy4nKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbWtkaXJTeW5jKGRlc3REaXIsIHsgcmVjdXJzaXZlOiB0cnVlIH0pO1xuICAgICAgICAgICAgRmlsZVN5c3RlbS5jb3B5RGlyZWN0b3J5KHNyY0RpciwgZGVzdERpcik7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnN0IGJ1aWxkUmVzdWx0OiBCdWlsZFJlc3VsdCA9IGJ1aWxkRm4oe1xuICAgICAgICAgICAgZW50cnlQb2ludHMsXG4gICAgICAgICAgICAuLi4odGhpcy5wcm9wcz8uYnVpbGRPcHRpb25zIHx8IHt9KSxcbiAgICAgICAgICAgIC4uLnRoaXMuZ2V0T3V0cHV0T3B0aW9ucyhvdXRwdXREaXIsIHsgbm9ybWFsaXplLCBqb2luIH0pLFxuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgcHJpbnRCdWlsZE1lc3NhZ2VzKGJ1aWxkUmVzdWx0LCB7IHByZWZpeDogJ0J1aWxkICcgfSk7XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgcHJpbnRCdWlsZE1lc3NhZ2VzKGVycm9yIGFzIEJ1aWxkRmFpbHVyZSwgeyBwcmVmaXg6ICdCdWlsZCAnIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGdldENvcHlEaXJMaXN0KGNvcHlEaXI6IEJ1bmRsZXJQcm9wc1snY29weURpciddKTogQXJyYXk8W3N0cmluZywgc3RyaW5nXT4ge1xuICAgIC8vIE5vdGhpbmcgdG8gY29weVxuICAgIGlmICghY29weURpcikge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cblxuICAgIC8vIExpc3Qgb2Ygc3RyaW5nc1xuICAgIGlmIChBcnJheS5pc0FycmF5KGNvcHlEaXIpKSB7XG4gICAgICByZXR1cm4gY29weURpci5tYXAoKHNyYzogc3RyaW5nKSA9PiBbJy4nLCBzcmNdKTtcbiAgICB9XG5cbiAgICAvLyBBIG1hcFxuICAgIGlmIChcbiAgICAgIHR5cGVvZiBjb3B5RGlyID09PSAnb2JqZWN0JyAmJlxuICAgICAgIUFycmF5LmlzQXJyYXkoY29weURpcikgJiZcbiAgICAgIGNvcHlEaXIgIT09IG51bGxcbiAgICApIHtcbiAgICAgIHJldHVybiBPYmplY3RcbiAgICAgICAgLmVudHJpZXMoY29weURpcilcbiAgICAgICAgLmZsYXRNYXAoKFtkZXN0LCBzb3VyY2VzXSkgPT4ge1xuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNvdXJjZXMpKSB7XG4gICAgICAgICAgICByZXR1cm4gc291cmNlcy5tYXAoKHNyYykgPT4gW2Rlc3QsIHNyY10pIGFzIEFycmF5PFtzdHJpbmcsIHN0cmluZ10+O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBbW2Rlc3QsIHNvdXJjZXNdXTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gQSBzaW5nbGUgc3RyaW5nXG4gICAgcmV0dXJuIFtbJy4nLCBjb3B5RGlyIGFzIHN0cmluZ11dO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRPdXRwdXRPcHRpb25zKFxuICAgIGNka091dHB1dERpcjogc3RyaW5nLFxuICAgIHBhdGg6IFBpY2s8dHlwZW9mIHBvc2l4LCAnbm9ybWFsaXplJyB8ICdqb2luJz4gPSBwb3NpeCxcbiAgKTogQnVpbGRPcHRpb25zIHtcbiAgICBpZiAodGhpcy5wcm9wcz8uYnVpbGRPcHRpb25zPy5vdXRmaWxlKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBvdXRkaXI6IHVuZGVmaW5lZCxcbiAgICAgICAgb3V0ZmlsZTogcGF0aC5ub3JtYWxpemUoXG4gICAgICAgICAgcGF0aC5qb2luKFxuICAgICAgICAgICAgLi4uKFtjZGtPdXRwdXREaXIsIHRoaXMucHJvcHM/LmJ1aWxkT3B0aW9ucz8ub3V0ZmlsZV0uZmlsdGVyKFxuICAgICAgICAgICAgICBCb29sZWFuLFxuICAgICAgICAgICAgKSBhcyBzdHJpbmdbXSksXG4gICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIG91dGRpcjogcGF0aC5ub3JtYWxpemUoXG4gICAgICAgIHBhdGguam9pbihcbiAgICAgICAgICAuLi4oW2Nka091dHB1dERpciwgdGhpcy5wcm9wcz8uYnVpbGRPcHRpb25zPy5vdXRkaXJdLmZpbHRlcihcbiAgICAgICAgICAgIEJvb2xlYW4sXG4gICAgICAgICAgKSBhcyBzdHJpbmdbXSksXG4gICAgICAgICksXG4gICAgICApLFxuICAgICAgb3V0ZmlsZTogdW5kZWZpbmVkLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
|
122
|
+
EsbuildBundler[_a] = { fqn: "@mrgrain/cdk-esbuild.EsbuildBundler", version: "4.0.0-alpha.8" };
|
|
123
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9idW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMkJBQStCO0FBQy9CLCtCQUE2RTtBQUM3RSw2Q0FLcUI7QUFFckIsdURBQThDO0FBQzlDLHFEQUFzRDtBQWdGdEQ7Ozs7O0dBS0c7QUFDSCxNQUFhLGNBQWM7SUFlekI7O09BRUc7SUFDSDtJQUNFOzs7OztPQUtHO0lBQ2EsV0FBd0I7SUFFeEM7Ozs7T0FJRztJQUNhLEtBQW1CO1FBUG5CLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBT3hCLFVBQUssR0FBTCxLQUFLLENBQWM7UUF4QnJDOzs7O1dBSUc7UUFDYSxVQUFLLEdBQUcseUJBQVcsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7UUFxQjFELElBQUksS0FBSyxFQUFFLFlBQVksRUFBRSxPQUFPLElBQUksS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUU7WUFDL0QsTUFBTSxJQUFJLEtBQUssQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO1NBQzNEO1FBRUQsTUFBTSxFQUFFLE9BQU8sR0FBRywyQkFBUyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUUzQyxJQUFJLENBQUMsS0FBSyxHQUFHO1lBQ1gsU0FBUyxFQUFFLENBQUMsU0FBaUIsRUFBRSxRQUF5QixFQUFXLEVBQUU7Z0JBRW5FLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUU7b0JBQ3RCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFFeEQsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxFQUFFLEVBQUU7d0JBQzlCLE1BQU0sTUFBTSxHQUFHLGNBQU8sQ0FDcEIsSUFBSSxDQUFDLEtBQUssRUFBRSxZQUFZLEVBQUUsYUFBYSxJ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LE9BQWlCLENBQUMsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFTyxnQkFBZ0IsQ0FDdEIsWUFBb0IsRUFDcEIsT0FBaUQsWUFBSztRQUV0RCxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFBRTtZQUNyQyxPQUFPO2dCQUNMLE1BQU0sRUFBRSxTQUFTO2dCQUNqQixPQUFPLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FDckIsSUFBSSxDQUFDLElBQUksQ0FDUCxHQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsWUFBWSxFQUFFLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FDMUQsT0FBTyxDQUNLLENBQ2YsQ0FDRjthQUNGLENBQUM7U0FDSDtRQUVELE9BQU87WUFDTCxNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FDcEIsSUFBSSxDQUFDLElBQUksQ0FDUCxHQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDekQsT0FBTyxDQUNLLENBQ2YsQ0FDRjtZQUNELE9BQU8sRUFBRSxTQUFTO1NBQ25CLENBQUM7SUFDSixDQUFDOztBQWxKSCx3Q0FtSkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBta2RpclN5bmMgfSBmcm9tICdmcyc7XG5pbXBvcnQgeyBqb2luLCBub3JtYWxpemUsIHJlbGF0aXZlLCByZXNvbHZlLCBwb3NpeCwgaXNBYnNvbHV0ZSB9IGZyb20gJ3BhdGgnO1xuaW1wb3J0IHtcbiAgQnVuZGxpbmdPcHRpb25zLFxuICBEb2NrZXJJbWFnZSxcbiAgRmlsZVN5c3RlbSxcbiAgSUxvY2FsQnVuZGxpbmcsXG59IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IEJ1aWxkRmFpbHVyZSwgQnVpbGRPcHRpb25zLCBCdWlsZFJlc3VsdCB9IGZyb20gJy4vZXNidWlsZC10eXBlcyc7XG5pbXBvcnQgeyBidWlsZFN5bmMgfSBmcm9tICcuL2VzYnVpbGQtd3JhcHBlcic7XG5pbXBvcnQgeyBwcmludEJ1aWxkTWVzc2FnZXMgfSBmcm9tICcuL2Zvcm1hdE1lc3NhZ2VzJztcblxuLyoqXG4gKiBBIHJlbGF0aXZlIHBhdGggb3IgbGlzdCBvciBtYXAgb2YgcmVsYXRpdmUgcGF0aHMgdG8gdGhlIGVudHJ5IHBvaW50cyBvZiB5b3VyIGNvZGUgZnJvbSB0aGUgcm9vdCBvZiB0aGUgcHJvamVjdC4gRS5nLiBgc3JjL2luZGV4LnRzYC5cbiAqXG4gKiBAc3RhYmlsaXR5IHN0YWJsZVxuICovXG5leHBvcnQgdHlwZSBFbnRyeVBvaW50cyA9IHN0cmluZyB8IHN0cmluZ1tdIHwgUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblxuLyoqXG4gKiBAc3RhYmlsaXR5IHN0YWJsZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJ1bmRsZXJQcm9wcyB7XG4gIC8qKlxuICAgKiBCdWlsZCBvcHRpb25zIHBhc3NlZCBvbiB0byBlc2J1aWxkLiBQbGVhc2UgcmVmZXIgdG8gdGhlIGVzYnVpbGQgQnVpbGQgQVBJIGRvY3MgZm9yIGRldGFpbHMuXG4gICAqXG4gICAqICogYGJ1aWxkT3B0aW9ucy5vdXRkaXI6IHN0cmluZ2BcbiAgICogVGhlIGFjdHVhbCBwYXRoIGZvciB0aGUgb3V0cHV0IGRpcmVjdG9yeSBpcyBkZWZpbmVkIGJ5IENESy4gSG93ZXZlciBzZXR0aW5nIHRoaXMgb3B0aW9uIGFsbG93cyB0byB3cml0ZSBmaWxlcyBpbnRvIGEgc3ViZGlyZWN0b3J5LiBcXFxuICAgKiBGb3IgZXhhbXBsZSBgeyBvdXRkaXI6ICdqcycgfWAgd2lsbCBjcmVhdGUgYW4gYXNzZXQgd2l0aCBhIHNpbmdsZSBkaXJlY3RvcnkgY2FsbGVkIGBqc2AsIHdoaWNoIGNvbnRhaW5zIGFsbCBidWlsdCBmaWxlcy4gVGhpcyBhcHByb2FjaCBjYW4gYmUgdXNlZnVsIGZvciBzdGF0aWMgd2Vic2l0ZSBkZXBsb3ltZW50cywgd2hlcmUgSmF2YVNjcmlwdCBjb2RlIHNob3VsZCBiZSBwbGFjZWQgaW50byBhIHN1YmRpcmVjdG9yeS4gXFxcbiAgICogKkNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyIHdpdGggYG91dGZpbGVgKi5cbiAgICogKiBgYnVpbGRPcHRpb25zLm91dGZpbGU6IHN0cmluZ2BcbiAgICogUmVsYXRpdmUgcGF0aCB0byBhIGZpbGUgaW5zaWRlIHRoZSBDREsgYXNzZXQgb3V0cHV0IGRpcmVjdG9yeS5cbiAgICogRm9yIGV4YW1wbGUgYHsgb3V0ZmlsZTogJ2pzL2luZGV4LmpzJyB9YCB3aWxsIGNyZWF0ZSBhbiBhc3NldCB3aXRoIGEgc2luZ2xlIGRpcmVjdG9yeSBjYWxsZWQgYGpzYCwgd2hpY2ggY29udGFpbnMgYSBzaW5nbGUgZmlsZSBgaW5kZXguanNgLiBUaGlzIGNhbiBiZSB1c2VmdWwgdG8gcmVuYW1lIHRoZSBlbnRyeSBwb2ludC4gXFxcbiAgICogKkNhbm5vdCBiZSB1c2VkIHdpdGggbXVsdGlwbGUgZW50cnlQb2ludHMgb3IgdG9nZXRoZXIgd2l0aCBgb3V0ZGlyYC4qXG4gICAqICogYGJ1aWxkT3B0aW9ucy5hYnNXb3JraW5nRGlyOiBzdHJpbmdgXG4gICAqIEFic29sdXRlIHBhdGggdG8gdGhlIFtlc2J1aWxkIHdvcmtpbmcgZGlyZWN0b3J5XShodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jd29ya2luZy1kaXJlY3RvcnkpIGFuZCBkZWZhdWx0cyB0byB0aGUgW2N1cnJlbnQgd29ya2luZyBkaXJlY3RvcnldKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1dvcmtpbmdfZGlyZWN0b3J5KS4gXFxcbiAgICogSWYgcGF0aHMgY2Fubm90IGJlIGZvdW5kLCBhIGdvb2Qgc3RhcnRpbmcgcG9pbnQgaXMgdG8gbG9vayBhdCB0aGUgY29uY2F0ZW5hdGlvbiBvZiBgYWJzV29ya2luZ0RpciArIGVudHJ5UG9pbnRgLiBJdCBtdXN0IGFsd2F5cyBiZSBhIHZhbGlkIGFic29sdXRlIHBhdGggcG9pbnRpbmcgdG8gdGhlIGVudHJ5IHBvaW50LiBXaGVuIG5lZWRlZCwgdGhlIHByb2JhYmx5IGVhc2llc3Qgd2F5IHRvIHNldCBhYnNXb3JraW5nRGlyIGlzIHRvIHVzZSBhIGNvbWJpbmF0aW9uIG9mIGByZXNvbHZlYCBhbmQgYF9fZGlybmFtZWAgKHNlZSBcIkxpYnJhcnkgYXV0aG9yc1wiIHNlY3Rpb24gaW4gdGhlIGRvY3VtZW50YXRpb24pLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZXNidWlsZC5naXRodWIuaW8vYXBpLyNidWlsZC1hcGlcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGJ1aWxkT3B0aW9ucz86IEJ1aWxkT3B0aW9ucztcblxuICAvKipcbiAgICogQ29weSBhZGRpdGlvbmFsIGZpbGVzIHRvIHRoZSBjb2RlIFthc3NldCBzdGFnaW5nIGRpcmVjdG9yeV0oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2Nkay9hcGkvdjIvZG9jcy9hd3MtY2RrLWxpYi5Bc3NldFN0YWdpbmcuaHRtbCNhYnNvbHV0ZXN0YWdlZHBhdGgpLCBiZWZvcmUgdGhlIGJ1aWxkIHJ1bnMuXG4gICAqIEZpbGVzIGNvcGllZCBsaWtlIHRoaXMgd2lsbCBiZSBvdmVyd3JpdHRlbiBieSBlc2J1aWxkIGlmIHRoZXkgc2hhcmUgdGhlIHNhbWUgbmFtZSBhcyBhbnkgb2YgdGhlIG91dHB1dHMuXG4gICAqXG4gICAqICogV2hlbiBwcm92aWRlZCB3aXRoIGEgYHN0cmluZ2Agb3IgYGFycmF5YCwgYWxsIGZpbGVzIGFyZSBjb3BpZWQgdG8gdGhlIHJvb3Qgb2YgYXNzZXQgc3RhZ2luZyBkaXJlY3RvcnkuXG4gICAqICogV2hlbiBnaXZlbiBhIGBtYXBgLCB0aGUga2V5IGluZGljYXRlcyB0aGUgZGVzdGluYXRpb24gcmVsYXRpdmUgdG8gdGhlIGFzc2V0IHN0YWdpbmcgZGlyZWN0b3J5IGFuZCB0aGUgdmFsdWUgaXMgYSBsaXN0IG9mIGFsbCBzb3VyY2VzIHRvIGJlIGNvcGllZC5cbiAgICpcbiAgICogVGhlcmVmb3JlIHRoZSBmb2xsb3dpbmcgdmFsdWVzIGZvciBgY29weURpcmAgYXJlIGFsbCBlcXVpdmFsZW50OlxuICAgKiBgYGB0c1xuICAgKiB7IGNvcHlEaXI6IFwicGF0aC90by9zb3VyY2VcIiB9XG4gICAqIHsgY29weURpcjogW1wicGF0aC90by9zb3VyY2VcIl0gfVxuICAgKiB7IGNvcHlEaXI6IHsgXCIuXCI6IFwicGF0aC90by9zb3VyY2VcIiB9IH1cbiAgICogeyBjb3B5RGlyOiB7IFwiLlwiOiBbXCJwYXRoL3RvL3NvdXJjZVwiXSB9IH1cbiAgICogYGBgXG4gICAqIFRoZSBkZXN0aW5hdGlvbiBjYW5ub3QgYmUgb3V0c2lkZSBvZiB0aGUgYXNzZXQgc3RhZ2luZyBkaXJlY3RvcnkuXG4gICAqIElmIHlvdSBhcmUgcmVjZWl2aW5nIHRoZSBlcnJvciBcIkNhbm5vdCBjb3B5IGZpbGVzIHRvIG91dHNpZGUgb2YgdGhlIGFzc2V0IHN0YWdpbmcgZGlyZWN0b3J5LlwiXG4gICAqIHlvdSBhcmUgbGlrZWx5IHVzaW5nIGAuLmAgb3IgYW4gYWJzb2x1dGUgcGF0aCBhcyBrZXkgb24gdGhlIGBjb3B5RGlyYCBtYXAuXG4gICAqIEluc3RlYWQgdXNlIG9ubHkgcmVsYXRpdmUgcGF0aHMgYW5kIGF2b2lkIGAuLmAuXG4gICAqXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBjb3B5RGlyPzogc3RyaW5nIHwgc3RyaW5nW10gfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBzdHJpbmcgW10+O1xuXG5cbiAgLyoqXG4gICAqIEVzY2FwZSBoYXRjaCB0byBwcm92aWRlIHRoZSBidW5kbGVyIHdpdGggYSBjdXN0b20gYnVpbGQgZnVuY3Rpb24uXG4gICAqIFRoZSBmdW5jdGlvbiB3aWxsIHJlY2VpdmUgdGhlIGNvbXB1dGVkIG9wdGlvbnMgZnJvbSB0aGUgYnVuZGxlci4gSXQgY2FuIHVzZSB3aXRoIHRoZXNlIG9wdGlvbnMgYXMgaXQgd2lzaGVzLCBob3dldmVyIGBvdXRkaXJgL2BvdXRmaWxlYCBtdXN0IGJlIHJlc3BlY3RlZCB0byBpbnRlZ3JhdGUgd2l0aCBDREsuXG4gICAqIE11c3QgdGhyb3cgYSBgQnVpbGRGYWlsdXJlYCBvbiBmYWlsdXJlIHRvIGNvcnJlY3RseSBpbmZvcm0gdGhlIGJ1bmRsZXIuXG4gICAqXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqIEB0eXBlIGVzYnVpbGQuYnVpbGRTeW5jXG4gICAqIEByZXR1cm5zIGVzYnVpbGQuQnVpbGRSZXN1bHRcbiAgICogQHRocm93cyBlc2J1aWxkLkJ1aWxkRmFpbHVyZVxuICAgKiBAZGVmYXVsdCBlc2J1aWxkLmJ1aWxkU3luY1xuICAgKi9cbiAgcmVhZG9ubHkgYnVpbGRGbj86IGFueTtcblxuICAvKipcbiAgICogUGF0aCB0byB0aGUgYmluYXJ5IHVzZWQgYnkgZXNidWlsZC5cbiAgICpcbiAgICogVGhpcyBpcyB0aGUgc2FtZSBhcyBzZXR0aW5nIHRoZSBFU0JVSUxEX0JJTkFSWV9QQVRIIGVudmlyb25tZW50IHZhcmlhYmxlLlxuICAgKlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZXNidWlsZEJpbmFyeVBhdGg/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogTG93LWxldmVsIGNvbnN0cnVjdCB0aGF0IGNhbiBiZSB1c2VkIHdoZXJlIGBCdW5kbGluZ09wdGlvbnNgIGFyZSByZXF1aXJlZC5cbiAqIFRoaXMgY2xhc3MgZGlyZWN0bHkgaW50ZXJmYWNlcyB3aXRoIGVzYnVpbGQgYW5kIHByb3ZpZGVzIGFsbW9zdCBubyBjb25maWd1cmF0aW9uIHNhZmVndWFyZHMuXG4gKlxuICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAqL1xuZXhwb3J0IGNsYXNzIEVzYnVpbGRCdW5kbGVyIHtcbiAgLyoqXG4gICAqIEltcGxlbWVudGF0aW9uIG9mIGBJTG9jYWxCdW5kbGluZ2AgaW50ZXJmYWNlLCByZXNwb25zaWJsZSBmb3IgY2FsbGluZyBlc2J1aWxkIGZ1bmN0aW9ucy5cbiAgICpcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBsb2NhbDogSUxvY2FsQnVuZGxpbmc7XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIFRoaXMgdmFsdWUgaXMgaWdub3JlZCBzaW5jZSB0aGUgYnVuZGxlciBpcyBhbHdheXMgdXNpbmcgYSBsb2NhbGx5IGluc3RhbGxlZCB2ZXJzaW9uIG9mIGVzYnVpbGQuIEhvd2V2ZXIgdGhlIHByb3BlcnR5IGlzIHJlcXVpcmVkIHRvIGNvbXBseSB3aXRoIHRoZSBgQnVuZGxpbmdPcHRpb25zYCBpbnRlcmZhY2UuXG4gICAqXG4gICAqIEBzdGFiaWxpdHkgZGVwcmVjYXRlZFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGltYWdlID0gRG9ja2VySW1hZ2UuZnJvbVJlZ2lzdHJ5KCdzY3JhdGNoJyk7XG5cbiAgLyoqXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgLyoqXG4gICAgICogQSByZWxhdGl2ZSBwYXRoIG9yIGxpc3Qgb3IgbWFwIG9mIHJlbGF0aXZlIHBhdGhzIHRvIHRoZSBlbnRyeSBwb2ludHMgb2YgeW91ciBjb2RlIGZyb20gdGhlIHJvb3Qgb2YgdGhlIHByb2plY3QuXG4gICAgICogRS5nLiBgc3JjL2luZGV4LnRzYC5cbiAgICAgKlxuICAgICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGVudHJ5UG9pbnRzOiBFbnRyeVBvaW50cyxcblxuICAgIC8qKlxuICAgICAqIFByb3BzIHRvIGNoYW5nZSB0aGUgYmVoYXZpb3VyIG9mIHRoZSBidW5kbGVyLlxuICAgICAqXG4gICAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IEJ1bmRsZXJQcm9wcyxcbiAgKSB7XG4gICAgaWYgKHByb3BzPy5idWlsZE9wdGlvbnM/Lm91dGZpbGUgJiYgcHJvcHM/LmJ1aWxkT3B0aW9ucz8ub3V0ZGlyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCB1c2UgYm90aCBcIm91dGZpbGVcIiBhbmQgXCJvdXRkaXJcIicpO1xuICAgIH1cblxuICAgIGNvbnN0IHsgYnVpbGRGbiA9IGJ1aWxkU3luYyB9ID0gdGhpcy5wcm9wcztcblxuICAgIHRoaXMubG9jYWwgPSB7XG4gICAgICB0cnlCdW5kbGU6IChvdXRwdXREaXI6IHN0cmluZywgX29wdGlvbnM6IEJ1bmRsaW5nT3B0aW9ucyk6IGJvb2xlYW4gPT4ge1xuXG4gICAgICAgIGlmICh0aGlzLnByb3BzLmNvcHlEaXIpIHtcbiAgICAgICAgICBjb25zdCBjb3B5RGlyID0gdGhpcy5nZXRDb3B5RGlyTGlzdCh0aGlzLnByb3BzLmNvcHlEaXIpO1xuXG4gICAgICAgICAgY29weURpci5mb3JFYWNoKChbZGVzdCwgc3JjXSkgPT4ge1xuICAgICAgICAgICAgY29uc3Qgc3JjRGlyID0gcmVzb2x2ZShcbiAgICAgICAgICAgICAgdGhpcy5wcm9wcz8uYnVpbGRPcHRpb25zPy5hYnNXb3JraW5nRGlyID8/IHByb2Nlc3MuY3dkKCksXG4gICAgICAgICAgICAgIHNyYyxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBjb25zdCBkZXN0RGlyID0gcmVzb2x2ZShvdXRwdXREaXIsIGRlc3QpIDtcblxuICAgICAgICAgICAgY29uc3QgZGVzdFRvT3V0cHV0ID0gcmVsYXRpdmUob3V0cHV0RGlyLCBkZXN0RGlyKTtcbiAgICAgICAgICAgIGlmIChkZXN0VG9PdXRwdXQuc3RhcnRzV2l0aCgnLi4nKSB8fCBpc0Fic29sdXRlKGRlc3RUb091dHB1dCkpIHtcbiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgY29weSBmaWxlcyB0byBvdXRzaWRlIG9mIHRoZSBhc3NldCBzdGFnaW5nIGRpcmVjdG9yeS4gU2VlIGRvY3MgZm9yIGRldGFpbHMuJyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIG1rZGlyU3luYyhkZXN0RGlyLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgICAgICAgICAgIEZpbGVTeXN0ZW0uY29weURpcmVjdG9yeShzcmNEaXIsIGRlc3REaXIpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgb3JpZ2luYWxFc2J1aWxkQmluYXJ5UGF0aCA9IHByb2Nlc3MuZW52LkVTQlVJTERfQklOQVJZX1BBVEg7XG4gICAgICAgIGlmICh0aGlzLnByb3BzLmVzYnVpbGRCaW5hcnlQYXRoKSB7XG4gICAgICAgICAgcHJvY2Vzcy5lbnYuRVNCVUlMRF9CSU5BUllfUEFUSCA9IHRoaXMucHJvcHMuZXNidWlsZEJpbmFyeVBhdGg7XG4gICAgICAgIH1cblxuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnN0IGJ1aWxkUmVzdWx0OiBCdWlsZFJlc3VsdCA9IGJ1aWxkRm4oe1xuICAgICAgICAgICAgZW50cnlQb2ludHMsXG4gICAgICAgICAgICAuLi4odGhpcy5wcm9wcz8uYnVpbGRPcHRpb25zIHx8IHt9KSxcbiAgICAgICAgICAgIC4uLnRoaXMuZ2V0T3V0cHV0T3B0aW9ucyhvdXRwdXREaXIsIHsgbm9ybWFsaXplLCBqb2luIH0pLFxuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgcHJpbnRCdWlsZE1lc3NhZ2VzKGJ1aWxkUmVzdWx0LCB7IHByZWZpeDogJ0J1aWxkICcgfSk7XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgcHJpbnRCdWlsZE1lc3NhZ2VzKGVycm9yIGFzIEJ1aWxkRmFpbHVyZSwgeyBwcmVmaXg6ICdCdWlsZCAnIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcHJvY2Vzcy5lbnYuRVNCVUlMRF9CSU5BUllfUEFUSCA9IG9yaWdpbmFsRXNidWlsZEJpbmFyeVBhdGg7XG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGdldENvcHlEaXJMaXN0KGNvcHlEaXI6IEJ1bmRsZXJQcm9wc1snY29weURpciddKTogQXJyYXk8W3N0cmluZywgc3RyaW5nXT4ge1xuICAgIC8vIE5vdGhpbmcgdG8gY29weVxuICAgIGlmICghY29weURpcikge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cblxuICAgIC8vIExpc3Qgb2Ygc3RyaW5nc1xuICAgIGlmIChBcnJheS5pc0FycmF5KGNvcHlEaXIpKSB7XG4gICAgICByZXR1cm4gY29weURpci5tYXAoKHNyYzogc3RyaW5nKSA9PiBbJy4nLCBzcmNdKTtcbiAgICB9XG5cbiAgICAvLyBBIG1hcFxuICAgIGlmIChcbiAgICAgIHR5cGVvZiBjb3B5RGlyID09PSAnb2JqZWN0JyAmJlxuICAgICAgIUFycmF5LmlzQXJyYXkoY29weURpcikgJiZcbiAgICAgIGNvcHlEaXIgIT09IG51bGxcbiAgICApIHtcbiAgICAgIHJldHVybiBPYmplY3RcbiAgICAgICAgLmVudHJpZXMoY29weURpcilcbiAgICAgICAgLmZsYXRNYXAoKFtkZXN0LCBzb3VyY2VzXSkgPT4ge1xuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHNvdXJjZXMpKSB7XG4gICAgICAgICAgICByZXR1cm4gc291cmNlcy5tYXAoKHNyYykgPT4gW2Rlc3QsIHNyY10pIGFzIEFycmF5PFtzdHJpbmcsIHN0cmluZ10+O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBbW2Rlc3QsIHNvdXJjZXNdXTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gQSBzaW5nbGUgc3RyaW5nXG4gICAgcmV0dXJuIFtbJy4nLCBjb3B5RGlyIGFzIHN0cmluZ11dO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRPdXRwdXRPcHRpb25zKFxuICAgIGNka091dHB1dERpcjogc3RyaW5nLFxuICAgIHBhdGg6IFBpY2s8dHlwZW9mIHBvc2l4LCAnbm9ybWFsaXplJyB8ICdqb2luJz4gPSBwb3NpeCxcbiAgKTogQnVpbGRPcHRpb25zIHtcbiAgICBpZiAodGhpcy5wcm9wcz8uYnVpbGRPcHRpb25zPy5vdXRmaWxlKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBvdXRkaXI6IHVuZGVmaW5lZCxcbiAgICAgICAgb3V0ZmlsZTogcGF0aC5ub3JtYWxpemUoXG4gICAgICAgICAgcGF0aC5qb2luKFxuICAgICAgICAgICAgLi4uKFtjZGtPdXRwdXREaXIsIHRoaXMucHJvcHM/LmJ1aWxkT3B0aW9ucz8ub3V0ZmlsZV0uZmlsdGVyKFxuICAgICAgICAgICAgICBCb29sZWFuLFxuICAgICAgICAgICAgKSBhcyBzdHJpbmdbXSksXG4gICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIG91dGRpcjogcGF0aC5ub3JtYWxpemUoXG4gICAgICAgIHBhdGguam9pbihcbiAgICAgICAgICAuLi4oW2Nka091dHB1dERpciwgdGhpcy5wcm9wcz8uYnVpbGRPcHRpb25zPy5vdXRkaXJdLmZpbHRlcihcbiAgICAgICAgICAgIEJvb2xlYW4sXG4gICAgICAgICAgKSBhcyBzdHJpbmdbXSksXG4gICAgICAgICksXG4gICAgICApLFxuICAgICAgb3V0ZmlsZTogdW5kZWZpbmVkLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
package/lib/code.d.ts
CHANGED
|
@@ -1,38 +1,56 @@
|
|
|
1
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';
|
|
2
|
+
import { ResourceBindOptions, Code, CodeConfig } from 'aws-cdk-lib/aws-lambda';
|
|
4
3
|
import { Construct } from 'constructs';
|
|
5
|
-
import { AssetBaseProps, AssetProps
|
|
4
|
+
import { EsbuildAsset, AssetBaseProps, AssetProps } from './asset';
|
|
6
5
|
import { EntryPoints } from './bundler';
|
|
7
|
-
export
|
|
8
|
-
/**
|
|
9
|
-
* The location of the code in S3.
|
|
10
|
-
*
|
|
11
|
-
* @stability stable
|
|
12
|
-
*/
|
|
13
|
-
readonly s3Location: Location;
|
|
14
|
-
}
|
|
6
|
+
export { CodeConfig } from 'aws-cdk-lib/aws-lambda';
|
|
15
7
|
export interface JavaScriptCodeProps extends AssetBaseProps {
|
|
16
8
|
}
|
|
17
9
|
export interface TypeScriptCodeProps extends AssetBaseProps {
|
|
18
10
|
}
|
|
19
|
-
|
|
11
|
+
/**
|
|
12
|
+
* Represents a generic esbuild code bundle.
|
|
13
|
+
*
|
|
14
|
+
* You should always use `TypeScriptCode` or `JavaScriptCode`.
|
|
15
|
+
*
|
|
16
|
+
* @stability experimental
|
|
17
|
+
*/
|
|
18
|
+
export declare class EsbuildCode<Props extends JavaScriptCodeProps | TypeScriptCodeProps> extends Code {
|
|
19
|
+
/**
|
|
20
|
+
* A relative path or list or map of relative paths to the entry points of your code from the root of the project.
|
|
21
|
+
* E.g. `src/index.ts`.
|
|
22
|
+
*
|
|
23
|
+
* @stability stable
|
|
24
|
+
*/
|
|
20
25
|
readonly entryPoints: EntryPoints;
|
|
21
|
-
protected
|
|
26
|
+
protected getAsset(scope: Construct): EsbuildAsset<AssetProps>;
|
|
22
27
|
protected props: AssetProps;
|
|
23
|
-
protected asset:
|
|
28
|
+
protected asset: EsbuildAsset<AssetProps>;
|
|
24
29
|
/**
|
|
25
30
|
* Determines whether this Code is inline code or not.
|
|
26
31
|
*
|
|
27
32
|
* @deprecated this value is ignored since inline is now determined based on the the inlineCode field of CodeConfig returned from bind().
|
|
28
33
|
*/
|
|
29
34
|
isInline: boolean;
|
|
35
|
+
constructor(
|
|
30
36
|
/**
|
|
37
|
+
* A relative path or list or map of relative paths to the entry points of your code from the root of the project.
|
|
38
|
+
* E.g. `src/index.ts`.
|
|
31
39
|
*
|
|
32
|
-
* @
|
|
33
|
-
|
|
40
|
+
* @stability stable
|
|
41
|
+
*/
|
|
42
|
+
entryPoints: EntryPoints,
|
|
43
|
+
/**
|
|
44
|
+
* Props to change the behavior of the bundler.
|
|
45
|
+
*
|
|
46
|
+
* Default values for `props.buildOptions`:
|
|
47
|
+
* - `bundle=true`
|
|
48
|
+
* - `platform=node`
|
|
49
|
+
* - `target=nodeX` with X being the major node version running locally
|
|
50
|
+
*
|
|
51
|
+
* @stability stable
|
|
34
52
|
*/
|
|
35
|
-
|
|
53
|
+
props: Props);
|
|
36
54
|
bind(scope: Construct): CodeConfig;
|
|
37
55
|
/**
|
|
38
56
|
* Called after the CFN function resource has been created to allow the code class to bind to it.
|
|
@@ -49,8 +67,8 @@ declare abstract class Code<Props extends JavaScriptCodeProps | TypeScriptCodePr
|
|
|
49
67
|
*
|
|
50
68
|
* @stability stable
|
|
51
69
|
*/
|
|
52
|
-
export declare class JavaScriptCode extends
|
|
53
|
-
protected
|
|
70
|
+
export declare class JavaScriptCode extends EsbuildCode<JavaScriptCodeProps> {
|
|
71
|
+
protected getAsset(scope: Construct): EsbuildAsset<AssetProps>;
|
|
54
72
|
constructor(
|
|
55
73
|
/**
|
|
56
74
|
* A relative path or list or map of relative paths to the entry points of your code from the root of the project.
|
|
@@ -76,8 +94,8 @@ export declare class JavaScriptCode extends Code<JavaScriptCodeProps, JSAsset> {
|
|
|
76
94
|
*
|
|
77
95
|
* @stability stable
|
|
78
96
|
*/
|
|
79
|
-
export declare class TypeScriptCode extends
|
|
80
|
-
protected
|
|
97
|
+
export declare class TypeScriptCode extends EsbuildCode<TypeScriptCodeProps> {
|
|
98
|
+
protected getAsset(scope: Construct): EsbuildAsset<AssetProps>;
|
|
81
99
|
constructor(
|
|
82
100
|
/**
|
|
83
101
|
* A relative path or list or map of relative paths to the entry points of your code from the root of the project.
|
|
@@ -98,4 +116,3 @@ export declare class TypeScriptCode extends Code<TypeScriptCodeProps, TSAsset> {
|
|
|
98
116
|
*/
|
|
99
117
|
props?: TypeScriptCodeProps);
|
|
100
118
|
}
|
|
101
|
-
export {};
|
package/lib/code.js
CHANGED
|
@@ -1,22 +1,44 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var _a, _b;
|
|
2
|
+
var _a, _b, _c;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.TypeScriptCode = exports.JavaScriptCode = void 0;
|
|
4
|
+
exports.TypeScriptCode = exports.JavaScriptCode = exports.EsbuildCode = void 0;
|
|
5
5
|
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
6
|
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
7
|
+
const aws_lambda_1 = require("aws-cdk-lib/aws-lambda");
|
|
7
8
|
const asset_1 = require("./asset");
|
|
8
9
|
function nodeMajorVersion() {
|
|
9
10
|
return parseInt(process.versions.node.split('.')[0], 10);
|
|
10
11
|
}
|
|
11
12
|
;
|
|
12
13
|
;
|
|
13
|
-
|
|
14
|
+
/**
|
|
15
|
+
* Represents a generic esbuild code bundle.
|
|
16
|
+
*
|
|
17
|
+
* You should always use `TypeScriptCode` or `JavaScriptCode`.
|
|
18
|
+
*
|
|
19
|
+
* @stability experimental
|
|
20
|
+
*/
|
|
21
|
+
class EsbuildCode extends aws_lambda_1.Code {
|
|
22
|
+
constructor(
|
|
14
23
|
/**
|
|
24
|
+
* A relative path or list or map of relative paths to the entry points of your code from the root of the project.
|
|
25
|
+
* E.g. `src/index.ts`.
|
|
26
|
+
*
|
|
27
|
+
* @stability stable
|
|
28
|
+
*/
|
|
29
|
+
entryPoints,
|
|
30
|
+
/**
|
|
31
|
+
* Props to change the behavior of the bundler.
|
|
15
32
|
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
33
|
+
* Default values for `props.buildOptions`:
|
|
34
|
+
* - `bundle=true`
|
|
35
|
+
* - `platform=node`
|
|
36
|
+
* - `target=nodeX` with X being the major node version running locally
|
|
37
|
+
*
|
|
38
|
+
* @stability stable
|
|
18
39
|
*/
|
|
19
|
-
|
|
40
|
+
props) {
|
|
41
|
+
super();
|
|
20
42
|
this.entryPoints = entryPoints;
|
|
21
43
|
/**
|
|
22
44
|
* Determines whether this Code is inline code or not.
|
|
@@ -39,10 +61,13 @@ class Code {
|
|
|
39
61
|
},
|
|
40
62
|
};
|
|
41
63
|
}
|
|
64
|
+
getAsset(scope) {
|
|
65
|
+
return new asset_1.EsbuildAsset(scope, this.constructor.name, this.props);
|
|
66
|
+
}
|
|
42
67
|
bind(scope) {
|
|
43
68
|
// If the same AssetCode is used multiple times, retain only the first instantiation.
|
|
44
69
|
if (!this.asset) {
|
|
45
|
-
this.asset =
|
|
70
|
+
this.asset = this.getAsset(scope);
|
|
46
71
|
}
|
|
47
72
|
else if (aws_cdk_lib_1.Stack.of(this.asset) !== aws_cdk_lib_1.Stack.of(scope)) {
|
|
48
73
|
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.');
|
|
@@ -71,12 +96,15 @@ class Code {
|
|
|
71
96
|
this.asset.addResourceMetadata(resource, resourceProperty);
|
|
72
97
|
}
|
|
73
98
|
}
|
|
99
|
+
exports.EsbuildCode = EsbuildCode;
|
|
100
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
101
|
+
EsbuildCode[_a] = { fqn: "@mrgrain/cdk-esbuild.EsbuildCode", version: "4.0.0-alpha.8" };
|
|
74
102
|
/**
|
|
75
103
|
* Represents the deployed JavaScript Code.
|
|
76
104
|
*
|
|
77
105
|
* @stability stable
|
|
78
106
|
*/
|
|
79
|
-
class JavaScriptCode extends
|
|
107
|
+
class JavaScriptCode extends EsbuildCode {
|
|
80
108
|
constructor(
|
|
81
109
|
/**
|
|
82
110
|
* A relative path or list or map of relative paths to the entry points of your code from the root of the project.
|
|
@@ -97,18 +125,20 @@ class JavaScriptCode extends Code {
|
|
|
97
125
|
*/
|
|
98
126
|
props = {}) {
|
|
99
127
|
super(entryPoints, props);
|
|
100
|
-
|
|
128
|
+
}
|
|
129
|
+
getAsset(scope) {
|
|
130
|
+
return new asset_1.JavaScriptAsset(scope, this.constructor.name, this.props);
|
|
101
131
|
}
|
|
102
132
|
}
|
|
103
133
|
exports.JavaScriptCode = JavaScriptCode;
|
|
104
|
-
|
|
105
|
-
JavaScriptCode[
|
|
134
|
+
_b = JSII_RTTI_SYMBOL_1;
|
|
135
|
+
JavaScriptCode[_b] = { fqn: "@mrgrain/cdk-esbuild.JavaScriptCode", version: "4.0.0-alpha.8" };
|
|
106
136
|
/**
|
|
107
137
|
* Represents the deployed TypeScript Code.
|
|
108
138
|
*
|
|
109
139
|
* @stability stable
|
|
110
140
|
*/
|
|
111
|
-
class TypeScriptCode extends
|
|
141
|
+
class TypeScriptCode extends EsbuildCode {
|
|
112
142
|
constructor(
|
|
113
143
|
/**
|
|
114
144
|
* A relative path or list or map of relative paths to the entry points of your code from the root of the project.
|
|
@@ -129,10 +159,12 @@ class TypeScriptCode extends Code {
|
|
|
129
159
|
*/
|
|
130
160
|
props = {}) {
|
|
131
161
|
super(entryPoints, props);
|
|
132
|
-
|
|
162
|
+
}
|
|
163
|
+
getAsset(scope) {
|
|
164
|
+
return new asset_1.TypeScriptAsset(scope, this.constructor.name, this.props);
|
|
133
165
|
}
|
|
134
166
|
}
|
|
135
167
|
exports.TypeScriptCode = TypeScriptCode;
|
|
136
|
-
|
|
137
|
-
TypeScriptCode[
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQWlEO0FBSWpELG1DQUtpQjtBQUlqQixTQUFTLGdCQUFnQjtJQUN2QixPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDM0QsQ0FBQztBQVc2RCxDQUFDO0FBQ0QsQ0FBQztBQUUvRCxNQUFlLElBQUk7SUFxQmpCOzs7O09BSUc7SUFDSCxZQUE0QixXQUF3QixFQUFFLEtBQVk7UUFBdEMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFacEQ7Ozs7V0FJRztRQUNJLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFRL0IsTUFBTSxjQUFjLEdBQTBCO1lBQzVDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsUUFBUTtnQkFDakMsS0FBSyxDQUFDLFlBQVksRUFBRSxRQUFRLEtBQUssTUFBTTtnQkFDckMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxHQUFHLGdCQUFnQixFQUFFLEVBQUU7Z0JBQzNELENBQUMsQ0FBQyxFQUFFLENBQUM7U0FDUixDQUFDO1FBRUYsSUFBSSxDQUFDLEtBQUssR0FBRztZQUNYLEdBQUcsS0FBSztZQUNSLFdBQVc7WUFDWCxZQUFZLEVBQUU7Z0JBQ1osR0FBRyxjQUFjO2dCQUNqQixHQUFHLEtBQUssQ0FBQyxZQUFZO2FBQ3RCO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFJLENBQUMsS0FBZ0I7UUFDbkIscUZBQXFGO1FBQ3JGLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2YsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLElBQUksQ0FBQyxVQUFVLENBQzlCLEtBQUssRUFDTCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFDckIsSUFBSSxDQUFDLEtBQUssQ0FDWCxDQUFDO1NBQ0g7YUFBTSxJQUFJLG1CQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNuRCxNQUFNLElBQUksS0FBSyxDQUNiLG1EQUNFLG1CQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUN2QixLQUFLLEdBQUcsOENBQThDLENBQ3ZELENBQUM7U0FDSDtRQUVELE9BQU87WUFDTCxVQUFVLEVBQUU7Z0JBQ1YsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWTtnQkFDbkMsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVzthQUNsQztTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILGNBQWMsQ0FBQyxRQUFxQixFQUFFLE9BQTZCO1FBQ2pFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2YsTUFBTSxJQUFJLEtBQUssQ0FBQyw4Q0FBOEMsQ0FBQyxDQUFDO1NBQ2pFO1FBQ0QsTUFBTSxnQkFBZ0IsR0FBRyxPQUFPLEVBQUUsZ0JBQWdCLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7UUFDNUUsNkNBQTZDO1FBQzdDLElBQUksQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFLGdCQUFnQixDQUFDLENBQUM7SUFDN0QsQ0FBQztDQUNGO0FBRUQ7Ozs7R0FJRztBQUNILE1BQWEsY0FBZSxTQUFRLElBQWtDO0lBR3BFO0lBQ0U7Ozs7O09BS0c7SUFDSCxXQUF3QjtJQUN4Qjs7Ozs7Ozs7O09BU0c7SUFDSCxRQUE2QixFQUFFO1FBRS9CLEtBQUssQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQUM7UUF0QlQsZUFBVSxHQUFHLHVCQUFPLENBQUM7SUF1QnhDLENBQUM7O0FBeEJILHdDQXlCQzs7O0FBRUQ7Ozs7R0FJRztBQUNILE1BQWEsY0FBZSxTQUFRLElBQWtDO0lBR3BFO0lBQ0U7Ozs7O09BS0c7SUFDSCxXQUF3QjtJQUN4Qjs7Ozs7Ozs7O09BU0c7SUFDSCxRQUE2QixFQUFFO1FBRS9CLEtBQUssQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQUM7UUF0QlQsZUFBVSxHQUFHLHVCQUFPLENBQUM7SUF1QnhDLENBQUM7O0FBeEJILHdDQXlCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENmblJlc291cmNlLCBTdGFjayB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IFJlc291cmNlQmluZE9wdGlvbnMgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhJztcbmltcG9ydCB7IExvY2F0aW9uIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLXMzJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHtcbiAgQXNzZXRCYXNlUHJvcHMsXG4gIEFzc2V0UHJvcHMsXG4gIEphdmFTY3JpcHRBc3NldCBhcyBKU0Fzc2V0LFxuICBUeXBlU2NyaXB0QXNzZXQgYXMgVFNBc3NldCxcbn0gZnJvbSAnLi9hc3NldCc7XG5pbXBvcnQgeyBFbnRyeVBvaW50cyB9IGZyb20gJy4vYnVuZGxlcic7XG5pbXBvcnQgeyBCdWlsZE9wdGlvbnMgfSBmcm9tICcuL2VzYnVpbGQtdHlwZXMnO1xuXG5mdW5jdGlvbiBub2RlTWFqb3JWZXJzaW9uKCk6IG51bWJlciB7XG4gIHJldHVybiBwYXJzZUludChwcm9jZXNzLnZlcnNpb25zLm5vZGUuc3BsaXQoJy4nKVswXSwgMTApO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvZGVDb25maWcge1xuICAvKipcbiAgICogVGhlIGxvY2F0aW9uIG9mIHRoZSBjb2RlIGluIFMzLlxuICAgKlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgczNMb2NhdGlvbjogTG9jYXRpb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSmF2YVNjcmlwdENvZGVQcm9wcyBleHRlbmRzIEFzc2V0QmFzZVByb3BzIHt9O1xuZXhwb3J0IGludGVyZmFjZSBUeXBlU2NyaXB0Q29kZVByb3BzIGV4dGVuZHMgQXNzZXRCYXNlUHJvcHMge307XG5cbmFic3RyYWN0IGNsYXNzIENvZGU8XG4gIFByb3BzIGV4dGVuZHMgSmF2YVNjcmlwdENvZGVQcm9wcyB8IFR5cGVTY3JpcHRDb2RlUHJvcHMsXG4gIEFzc2V0IGV4dGVuZHMgSlNBc3NldCB8IFRTQXNzZXRcbj4ge1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgcmVhZG9ubHkgYXNzZXRDbGFzczogbmV3IChcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IEFzc2V0UHJvcHNcbiAgKSA9PiBBc3NldDtcblxuICBwcm90ZWN0ZWQgcHJvcHM6IEFzc2V0UHJvcHM7XG5cbiAgcHJvdGVjdGVkIGFzc2V0ITogQXNzZXQ7XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciB0aGlzIENvZGUgaXMgaW5saW5lIGNvZGUgb3Igbm90LlxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCB0aGlzIHZhbHVlIGlzIGlnbm9yZWQgc2luY2UgaW5saW5lIGlzIG5vdyBkZXRlcm1pbmVkIGJhc2VkIG9uIHRoZSB0aGUgaW5saW5lQ29kZSBmaWVsZCBvZiBDb2RlQ29uZmlnIHJldHVybmVkIGZyb20gYmluZCgpLlxuICAgKi9cbiAgcHVibGljIGlzSW5saW5lOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSBlbnRyeVBvaW50cyAtIFJlbGF0aXZlIHBhdGggdG8gdGhlIGFzc2V0IGNvZGUuIFVzZSBgcHJvcHMuYnVpbGRPcHRpb25zLmFic1dvcmtpbmdEaXJgIGlmIGFuIGFic29sdXRlIHBhdGggaXMgcmVxdWlyZWQuXG4gICAqIEBwYXJhbSBwcm9wcyAtIEFzc2V0IHByb3BlcnRpZXMuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgZW50cnlQb2ludHM6IEVudHJ5UG9pbnRzLCBwcm9wczogUHJvcHMpIHtcbiAgICBjb25zdCBkZWZhdWx0T3B0aW9uczogUGFydGlhbDxCdWlsZE9wdGlvbnM+ID0ge1xuICAgICAgLi4uKCFwcm9wcy5idWlsZE9wdGlvbnM/LnBsYXRmb3JtIHx8XG4gICAgICBwcm9wcy5idWlsZE9wdGlvbnM/LnBsYXRmb3JtID09PSAnbm9kZSdcbiAgICAgICAgPyB7IHBsYXRmb3JtOiAnbm9kZScsIHRhcmdldDogJ25vZGUnICsgbm9kZU1ham9yVmVyc2lvbigpIH1cbiAgICAgICAgOiB7fSksXG4gICAgfTtcblxuICAgIHRoaXMucHJvcHMgPSB7XG4gICAgICAuLi5wcm9wcyxcbiAgICAgIGVudHJ5UG9pbnRzLFxuICAgICAgYnVpbGRPcHRpb25zOiB7XG4gICAgICAgIC4uLmRlZmF1bHRPcHRpb25zLFxuICAgICAgICAuLi5wcm9wcy5idWlsZE9wdGlvbnMsXG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICBiaW5kKHNjb3BlOiBDb25zdHJ1Y3QpOiBDb2RlQ29uZmlnIHtcbiAgICAvLyBJZiB0aGUgc2FtZSBBc3NldENvZGUgaXMgdXNlZCBtdWx0aXBsZSB0aW1lcywgcmV0YWluIG9ubHkgdGhlIGZpcnN0IGluc3RhbnRpYXRpb24uXG4gICAgaWYgKCF0aGlzLmFzc2V0KSB7XG4gICAgICB0aGlzLmFzc2V0ID0gbmV3IHRoaXMuYXNzZXRDbGFzcyhcbiAgICAgICAgc2NvcGUsXG4gICAgICAgIHRoaXMuY29uc3RydWN0b3IubmFtZSxcbiAgICAgICAgdGhpcy5wcm9wcyxcbiAgICAgICk7XG4gICAgfSBlbHNlIGlmIChTdGFjay5vZih0aGlzLmFzc2V0KSAhPT0gU3RhY2sub2Yoc2NvcGUpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBBc3NldCBpcyBhbHJlYWR5IGFzc29jaWF0ZWQgd2l0aCBhbm90aGVyIHN0YWNrICcke1xuICAgICAgICAgIFN0YWNrLm9mKHRoaXMuYXNzZXQpLnN0YWNrTmFtZVxuICAgICAgICB9Jy4gYCArICdDcmVhdGUgYSBuZXcgQXNzZXQgaW5zdGFuY2UgZm9yIGV2ZXJ5IHN0YWNrLicsXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBzM0xvY2F0aW9uOiB7XG4gICAgICAgIGJ1Y2tldE5hbWU6IHRoaXMuYXNzZXQuczNCdWNrZXROYW1lLFxuICAgICAgICBvYmplY3RLZXk6IHRoaXMuYXNzZXQuczNPYmplY3RLZXksXG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQ2FsbGVkIGFmdGVyIHRoZSBDRk4gZnVuY3Rpb24gcmVzb3VyY2UgaGFzIGJlZW4gY3JlYXRlZCB0byBhbGxvdyB0aGUgY29kZSBjbGFzcyB0byBiaW5kIHRvIGl0LlxuICAgKlxuICAgKiBTcGVjaWZpY2FsbHkgaXQncyByZXF1aXJlZCB0byBhbGxvdyBhc3NldHMgdG8gYWRkXG4gICAqIG1ldGFkYXRhIGZvciB0b29saW5nIGxpa2UgU0FNIENMSSB0byBiZSBhYmxlIHRvIGZpbmQgdGhlaXIgb3JpZ2lucy5cbiAgICpcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIGJpbmRUb1Jlc291cmNlKHJlc291cmNlOiBDZm5SZXNvdXJjZSwgb3B0aW9ucz86IFJlc291cmNlQmluZE9wdGlvbnMpIHtcbiAgICBpZiAoIXRoaXMuYXNzZXQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignYmluZFRvUmVzb3VyY2UoKSBtdXN0IGJlIGNhbGxlZCBhZnRlciBiaW5kKCknKTtcbiAgICB9XG4gICAgY29uc3QgcmVzb3VyY2VQcm9wZXJ0eSA9IG9wdGlvbnM/LnJlc291cmNlUHJvcGVydHkgfHwgdGhpcy5jb25zdHJ1Y3Rvci5uYW1lO1xuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9pc3N1ZXMvMTQzMlxuICAgIHRoaXMuYXNzZXQuYWRkUmVzb3VyY2VNZXRhZGF0YShyZXNvdXJjZSwgcmVzb3VyY2VQcm9wZXJ0eSk7XG4gIH1cbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBkZXBsb3llZCBKYXZhU2NyaXB0IENvZGUuXG4gKlxuICogQHN0YWJpbGl0eSBzdGFibGVcbiAqL1xuZXhwb3J0IGNsYXNzIEphdmFTY3JpcHRDb2RlIGV4dGVuZHMgQ29kZTxKYXZhU2NyaXB0Q29kZVByb3BzLCBKU0Fzc2V0PiB7XG4gIHByb3RlY3RlZCByZWFkb25seSBhc3NldENsYXNzID0gSlNBc3NldDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAvKipcbiAgICAgKiBBIHJlbGF0aXZlIHBhdGggb3IgbGlzdCBvciBtYXAgb2YgcmVsYXRpdmUgcGF0aHMgdG8gdGhlIGVudHJ5IHBvaW50cyBvZiB5b3VyIGNvZGUgZnJvbSB0aGUgcm9vdCBvZiB0aGUgcHJvamVjdC5cbiAgICAgKiBFLmcuIGBzcmMvaW5kZXgudHNgLlxuICAgICAqXG4gICAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICAgKi9cbiAgICBlbnRyeVBvaW50czogRW50cnlQb2ludHMsXG4gICAgLyoqXG4gICAgICogUHJvcHMgdG8gY2hhbmdlIHRoZSBiZWhhdmlvciBvZiB0aGUgYnVuZGxlci5cbiAgICAgKlxuICAgICAqIERlZmF1bHQgdmFsdWVzIGZvciBgcHJvcHMuYnVpbGRPcHRpb25zYDpcbiAgICAgKiAtIGBidW5kbGU9dHJ1ZWBcbiAgICAgKiAtIGBwbGF0Zm9ybT1ub2RlYFxuICAgICAqIC0gYHRhcmdldD1ub2RlWGAgd2l0aCBYIGJlaW5nIHRoZSBtYWpvciBub2RlIHZlcnNpb24gcnVubmluZyBsb2NhbGx5XG4gICAgICpcbiAgICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgICAqL1xuICAgIHByb3BzOiBKYXZhU2NyaXB0Q29kZVByb3BzID0ge30sXG4gICkge1xuICAgIHN1cGVyKGVudHJ5UG9pbnRzLCBwcm9wcyk7XG4gIH1cbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBkZXBsb3llZCBUeXBlU2NyaXB0IENvZGUuXG4gKlxuICogQHN0YWJpbGl0eSBzdGFibGVcbiAqL1xuZXhwb3J0IGNsYXNzIFR5cGVTY3JpcHRDb2RlIGV4dGVuZHMgQ29kZTxUeXBlU2NyaXB0Q29kZVByb3BzLCBUU0Fzc2V0PiB7XG4gIHByb3RlY3RlZCByZWFkb25seSBhc3NldENsYXNzID0gVFNBc3NldDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAvKipcbiAgICAgKiBBIHJlbGF0aXZlIHBhdGggb3IgbGlzdCBvciBtYXAgb2YgcmVsYXRpdmUgcGF0aHMgdG8gdGhlIGVudHJ5IHBvaW50cyBvZiB5b3VyIGNvZGUgZnJvbSB0aGUgcm9vdCBvZiB0aGUgcHJvamVjdC5cbiAgICAgKiBFLmcuIGBzcmMvaW5kZXgudHNgLlxuICAgICAqXG4gICAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICAgKi9cbiAgICBlbnRyeVBvaW50czogRW50cnlQb2ludHMsXG4gICAgLyoqXG4gICAgICogUHJvcHMgdG8gY2hhbmdlIHRoZSBiZWhhdmlvciBvZiB0aGUgYnVuZGxlci5cbiAgICAgKlxuICAgICAqIERlZmF1bHQgdmFsdWVzIGZvciBgcHJvcHMuYnVpbGRPcHRpb25zYDpcbiAgICAgKiAtIGBidW5kbGU9dHJ1ZWBcbiAgICAgKiAtIGBwbGF0Zm9ybT1ub2RlYFxuICAgICAqIC0gYHRhcmdldD1ub2RlWGAgd2l0aCBYIGJlaW5nIHRoZSBtYWpvciBub2RlIHZlcnNpb24gcnVubmluZyBsb2NhbGx5XG4gICAgICpcbiAgICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgICAqL1xuICAgIHByb3BzOiBUeXBlU2NyaXB0Q29kZVByb3BzID0ge30sXG4gICkge1xuICAgIHN1cGVyKGVudHJ5UG9pbnRzLCBwcm9wcyk7XG4gIH1cbn1cbiJdfQ==
|
|
168
|
+
_c = JSII_RTTI_SYMBOL_1;
|
|
169
|
+
TypeScriptCode[_c] = { fqn: "@mrgrain/cdk-esbuild.TypeScriptCode", version: "4.0.0-alpha.8" };
|
|
170
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQWlEO0FBQ2pELHVEQUErRTtBQUUvRSxtQ0FNaUI7QUFJakIsU0FBUyxnQkFBZ0I7SUFDdkIsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQzNELENBQUM7QUFHNkQsQ0FBQztBQUNELENBQUM7QUFFL0Q7Ozs7OztHQU1HO0FBQ0gsTUFBYSxXQUVYLFNBQVEsaUJBQUk7SUFvQlo7SUFDRTs7Ozs7T0FLRztJQUNNLFdBQXdCO0lBRWpDOzs7Ozs7Ozs7T0FTRztJQUNILEtBQVk7UUFFWixLQUFLLEVBQUUsQ0FBQztRQWRDLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBZG5DOzs7O1dBSUc7UUFDSSxhQUFRLEdBQVksS0FBSyxDQUFDO1FBeUIvQixNQUFNLGNBQWMsR0FBMEI7WUFDNUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxRQUFRO2dCQUNqQyxLQUFLLENBQUMsWUFBWSxFQUFFLFFBQVEsS0FBSyxNQUFNO2dCQUNyQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEdBQUcsZ0JBQWdCLEVBQUUsRUFBRTtnQkFDM0QsQ0FBQyxDQUFDLEVBQUUsQ0FBQztTQUNSLENBQUM7UUFFRixJQUFJLENBQUMsS0FBSyxHQUFHO1lBQ1gsR0FBRyxLQUFLO1lBQ1IsV0FBVztZQUNYLFlBQVksRUFBRTtnQkFDWixHQUFHLGNBQWM7Z0JBQ2pCLEdBQUcsS0FBSyxDQUFDLFlBQVk7YUFDdEI7U0FDRixDQUFDO0lBQ0osQ0FBQztJQXpEUyxRQUFRLENBQUMsS0FBZ0I7UUFDakMsT0FBTyxJQUFJLG9CQUFZLENBQ3JCLEtBQUssRUFDTCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFDckIsSUFBSSxDQUFDLEtBQUssQ0FDWCxDQUFDO0lBQ0osQ0FBQztJQXFERCxJQUFJLENBQUMsS0FBZ0I7UUFDbkIscUZBQXFGO1FBQ3JGLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2YsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ25DO2FBQU0sSUFBSSxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssbUJBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDbkQsTUFBTSxJQUFJLEtBQUssQ0FDYixtREFDRSxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsU0FDdkIsS0FBSyxHQUFHLDhDQUE4QyxDQUN2RCxDQUFDO1NBQ0g7UUFFRCxPQUFPO1lBQ0wsVUFBVSxFQUFFO2dCQUNWLFVBQVUsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVk7Z0JBQ25DLFNBQVMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVc7YUFDbEM7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxjQUFjLENBQUMsUUFBcUIsRUFBRSxPQUE2QjtRQUNqRSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNmLE1BQU0sSUFBSSxLQUFLLENBQUMsOENBQThDLENBQUMsQ0FBQztTQUNqRTtRQUNELE1BQU0sZ0JBQWdCLEdBQUcsT0FBTyxFQUFFLGdCQUFnQixJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO1FBQzVFLDZDQUE2QztRQUM3QyxJQUFJLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLFFBQVEsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBQzdELENBQUM7O0FBakdILGtDQWtHQzs7O0FBRUQ7Ozs7R0FJRztBQUNILE1BQWEsY0FBZSxTQUFRLFdBQWdDO0lBU2xFO0lBQ0U7Ozs7O09BS0c7SUFDSCxXQUF3QjtJQUN4Qjs7Ozs7Ozs7O09BU0c7SUFDSCxRQUE2QixFQUFFO1FBRS9CLEtBQUssQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQTdCUyxRQUFRLENBQUMsS0FBZ0I7UUFDakMsT0FBTyxJQUFJLHVCQUFPLENBQ2hCLEtBQUssRUFDTCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFDckIsSUFBSSxDQUFDLEtBQUssQ0FDWCxDQUFDO0lBQ0osQ0FBQzs7QUFQSCx3Q0ErQkM7OztBQUVEOzs7O0dBSUc7QUFDSCxNQUFhLGNBQWUsU0FBUSxXQUFnQztJQVNsRTtJQUNFOzs7OztPQUtHO0lBQ0gsV0FBd0I7SUFDeEI7Ozs7Ozs7OztPQVNHO0lBQ0gsUUFBNkIsRUFBRTtRQUUvQixLQUFLLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUE3QlMsUUFBUSxDQUFDLEtBQWdCO1FBQ2pDLE9BQU8sSUFBSSx1QkFBTyxDQUNoQixLQUFLLEVBQ0wsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQ3JCLElBQUksQ0FBQyxLQUFLLENBQ1gsQ0FBQztJQUNKLENBQUM7O0FBUEgsd0NBK0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2ZuUmVzb3VyY2UsIFN0YWNrIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgUmVzb3VyY2VCaW5kT3B0aW9ucywgQ29kZSwgQ29kZUNvbmZpZyB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQge1xuICBFc2J1aWxkQXNzZXQsXG4gIEFzc2V0QmFzZVByb3BzLFxuICBBc3NldFByb3BzLFxuICBKYXZhU2NyaXB0QXNzZXQgYXMgSlNBc3NldCxcbiAgVHlwZVNjcmlwdEFzc2V0IGFzIFRTQXNzZXQsXG59IGZyb20gJy4vYXNzZXQnO1xuaW1wb3J0IHsgRW50cnlQb2ludHMgfSBmcm9tICcuL2J1bmRsZXInO1xuaW1wb3J0IHsgQnVpbGRPcHRpb25zIH0gZnJvbSAnLi9lc2J1aWxkLXR5cGVzJztcblxuZnVuY3Rpb24gbm9kZU1ham9yVmVyc2lvbigpOiBudW1iZXIge1xuICByZXR1cm4gcGFyc2VJbnQocHJvY2Vzcy52ZXJzaW9ucy5ub2RlLnNwbGl0KCcuJylbMF0sIDEwKTtcbn1cblxuZXhwb3J0IHsgQ29kZUNvbmZpZyB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1xuZXhwb3J0IGludGVyZmFjZSBKYXZhU2NyaXB0Q29kZVByb3BzIGV4dGVuZHMgQXNzZXRCYXNlUHJvcHMge307XG5leHBvcnQgaW50ZXJmYWNlIFR5cGVTY3JpcHRDb2RlUHJvcHMgZXh0ZW5kcyBBc3NldEJhc2VQcm9wcyB7fTtcblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgZ2VuZXJpYyBlc2J1aWxkIGNvZGUgYnVuZGxlLlxuICpcbiAqIFlvdSBzaG91bGQgYWx3YXlzIHVzZSBgVHlwZVNjcmlwdENvZGVgIG9yIGBKYXZhU2NyaXB0Q29kZWAuXG4gKlxuICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAqL1xuZXhwb3J0IGNsYXNzIEVzYnVpbGRDb2RlPFxuICBQcm9wcyBleHRlbmRzIEphdmFTY3JpcHRDb2RlUHJvcHMgfCBUeXBlU2NyaXB0Q29kZVByb3BzLFxuPiBleHRlbmRzIENvZGUge1xuICBwcm90ZWN0ZWQgZ2V0QXNzZXQoc2NvcGU6IENvbnN0cnVjdCk6IEVzYnVpbGRBc3NldDxBc3NldFByb3BzPiB7XG4gICAgcmV0dXJuIG5ldyBFc2J1aWxkQXNzZXQoXG4gICAgICBzY29wZSxcbiAgICAgIHRoaXMuY29uc3RydWN0b3IubmFtZSxcbiAgICAgIHRoaXMucHJvcHMsXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBwcm9wczogQXNzZXRQcm9wcztcblxuICBwcm90ZWN0ZWQgYXNzZXQhOiBFc2J1aWxkQXNzZXQ8QXNzZXRQcm9wcz47XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciB0aGlzIENvZGUgaXMgaW5saW5lIGNvZGUgb3Igbm90LlxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCB0aGlzIHZhbHVlIGlzIGlnbm9yZWQgc2luY2UgaW5saW5lIGlzIG5vdyBkZXRlcm1pbmVkIGJhc2VkIG9uIHRoZSB0aGUgaW5saW5lQ29kZSBmaWVsZCBvZiBDb2RlQ29uZmlnIHJldHVybmVkIGZyb20gYmluZCgpLlxuICAgKi9cbiAgcHVibGljIGlzSW5saW5lOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgLyoqXG4gICAgICogQSByZWxhdGl2ZSBwYXRoIG9yIGxpc3Qgb3IgbWFwIG9mIHJlbGF0aXZlIHBhdGhzIHRvIHRoZSBlbnRyeSBwb2ludHMgb2YgeW91ciBjb2RlIGZyb20gdGhlIHJvb3Qgb2YgdGhlIHByb2plY3QuXG4gICAgICogRS5nLiBgc3JjL2luZGV4LnRzYC5cbiAgICAgKlxuICAgICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAgICovXG4gICAgcmVhZG9ubHkgZW50cnlQb2ludHM6IEVudHJ5UG9pbnRzLFxuXG4gICAgLyoqXG4gICAgICogUHJvcHMgdG8gY2hhbmdlIHRoZSBiZWhhdmlvciBvZiB0aGUgYnVuZGxlci5cbiAgICAgKlxuICAgICAqIERlZmF1bHQgdmFsdWVzIGZvciBgcHJvcHMuYnVpbGRPcHRpb25zYDpcbiAgICAgKiAtIGBidW5kbGU9dHJ1ZWBcbiAgICAgKiAtIGBwbGF0Zm9ybT1ub2RlYFxuICAgICAqIC0gYHRhcmdldD1ub2RlWGAgd2l0aCBYIGJlaW5nIHRoZSBtYWpvciBub2RlIHZlcnNpb24gcnVubmluZyBsb2NhbGx5XG4gICAgICpcbiAgICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgICAqL1xuICAgIHByb3BzOiBQcm9wcyxcbiAgKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIGNvbnN0IGRlZmF1bHRPcHRpb25zOiBQYXJ0aWFsPEJ1aWxkT3B0aW9ucz4gPSB7XG4gICAgICAuLi4oIXByb3BzLmJ1aWxkT3B0aW9ucz8ucGxhdGZvcm0gfHxcbiAgICAgIHByb3BzLmJ1aWxkT3B0aW9ucz8ucGxhdGZvcm0gPT09ICdub2RlJ1xuICAgICAgICA/IHsgcGxhdGZvcm06ICdub2RlJywgdGFyZ2V0OiAnbm9kZScgKyBub2RlTWFqb3JWZXJzaW9uKCkgfVxuICAgICAgICA6IHt9KSxcbiAgICB9O1xuXG4gICAgdGhpcy5wcm9wcyA9IHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgZW50cnlQb2ludHMsXG4gICAgICBidWlsZE9wdGlvbnM6IHtcbiAgICAgICAgLi4uZGVmYXVsdE9wdGlvbnMsXG4gICAgICAgIC4uLnByb3BzLmJ1aWxkT3B0aW9ucyxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIGJpbmQoc2NvcGU6IENvbnN0cnVjdCk6IENvZGVDb25maWcge1xuICAgIC8vIElmIHRoZSBzYW1lIEFzc2V0Q29kZSBpcyB1c2VkIG11bHRpcGxlIHRpbWVzLCByZXRhaW4gb25seSB0aGUgZmlyc3QgaW5zdGFudGlhdGlvbi5cbiAgICBpZiAoIXRoaXMuYXNzZXQpIHtcbiAgICAgIHRoaXMuYXNzZXQgPSB0aGlzLmdldEFzc2V0KHNjb3BlKTtcbiAgICB9IGVsc2UgaWYgKFN0YWNrLm9mKHRoaXMuYXNzZXQpICE9PSBTdGFjay5vZihzY29wZSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYEFzc2V0IGlzIGFscmVhZHkgYXNzb2NpYXRlZCB3aXRoIGFub3RoZXIgc3RhY2sgJyR7XG4gICAgICAgICAgU3RhY2sub2YodGhpcy5hc3NldCkuc3RhY2tOYW1lXG4gICAgICAgIH0nLiBgICsgJ0NyZWF0ZSBhIG5ldyBBc3NldCBpbnN0YW5jZSBmb3IgZXZlcnkgc3RhY2suJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIHMzTG9jYXRpb246IHtcbiAgICAgICAgYnVja2V0TmFtZTogdGhpcy5hc3NldC5zM0J1Y2tldE5hbWUsXG4gICAgICAgIG9iamVjdEtleTogdGhpcy5hc3NldC5zM09iamVjdEtleSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsZWQgYWZ0ZXIgdGhlIENGTiBmdW5jdGlvbiByZXNvdXJjZSBoYXMgYmVlbiBjcmVhdGVkIHRvIGFsbG93IHRoZSBjb2RlIGNsYXNzIHRvIGJpbmQgdG8gaXQuXG4gICAqXG4gICAqIFNwZWNpZmljYWxseSBpdCdzIHJlcXVpcmVkIHRvIGFsbG93IGFzc2V0cyB0byBhZGRcbiAgICogbWV0YWRhdGEgZm9yIHRvb2xpbmcgbGlrZSBTQU0gQ0xJIHRvIGJlIGFibGUgdG8gZmluZCB0aGVpciBvcmlnaW5zLlxuICAgKlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgYmluZFRvUmVzb3VyY2UocmVzb3VyY2U6IENmblJlc291cmNlLCBvcHRpb25zPzogUmVzb3VyY2VCaW5kT3B0aW9ucykge1xuICAgIGlmICghdGhpcy5hc3NldCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdiaW5kVG9SZXNvdXJjZSgpIG11c3QgYmUgY2FsbGVkIGFmdGVyIGJpbmQoKScpO1xuICAgIH1cbiAgICBjb25zdCByZXNvdXJjZVByb3BlcnR5ID0gb3B0aW9ucz8ucmVzb3VyY2VQcm9wZXJ0eSB8fCB0aGlzLmNvbnN0cnVjdG9yLm5hbWU7XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2lzc3Vlcy8xNDMyXG4gICAgdGhpcy5hc3NldC5hZGRSZXNvdXJjZU1ldGFkYXRhKHJlc291cmNlLCByZXNvdXJjZVByb3BlcnR5KTtcbiAgfVxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIGRlcGxveWVkIEphdmFTY3JpcHQgQ29kZS5cbiAqXG4gKiBAc3RhYmlsaXR5IHN0YWJsZVxuICovXG5leHBvcnQgY2xhc3MgSmF2YVNjcmlwdENvZGUgZXh0ZW5kcyBFc2J1aWxkQ29kZTxKYXZhU2NyaXB0Q29kZVByb3BzPiB7XG4gIHByb3RlY3RlZCBnZXRBc3NldChzY29wZTogQ29uc3RydWN0KTogRXNidWlsZEFzc2V0PEFzc2V0UHJvcHM+IHtcbiAgICByZXR1cm4gbmV3IEpTQXNzZXQoXG4gICAgICBzY29wZSxcbiAgICAgIHRoaXMuY29uc3RydWN0b3IubmFtZSxcbiAgICAgIHRoaXMucHJvcHMsXG4gICAgKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIC8qKlxuICAgICAqIEEgcmVsYXRpdmUgcGF0aCBvciBsaXN0IG9yIG1hcCBvZiByZWxhdGl2ZSBwYXRocyB0byB0aGUgZW50cnkgcG9pbnRzIG9mIHlvdXIgY29kZSBmcm9tIHRoZSByb290IG9mIHRoZSBwcm9qZWN0LlxuICAgICAqIEUuZy4gYHNyYy9pbmRleC50c2AuXG4gICAgICpcbiAgICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgICAqL1xuICAgIGVudHJ5UG9pbnRzOiBFbnRyeVBvaW50cyxcbiAgICAvKipcbiAgICAgKiBQcm9wcyB0byBjaGFuZ2UgdGhlIGJlaGF2aW9yIG9mIHRoZSBidW5kbGVyLlxuICAgICAqXG4gICAgICogRGVmYXVsdCB2YWx1ZXMgZm9yIGBwcm9wcy5idWlsZE9wdGlvbnNgOlxuICAgICAqIC0gYGJ1bmRsZT10cnVlYFxuICAgICAqIC0gYHBsYXRmb3JtPW5vZGVgXG4gICAgICogLSBgdGFyZ2V0PW5vZGVYYCB3aXRoIFggYmVpbmcgdGhlIG1ham9yIG5vZGUgdmVyc2lvbiBydW5uaW5nIGxvY2FsbHlcbiAgICAgKlxuICAgICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAgICovXG4gICAgcHJvcHM6IEphdmFTY3JpcHRDb2RlUHJvcHMgPSB7fSxcbiAgKSB7XG4gICAgc3VwZXIoZW50cnlQb2ludHMsIHByb3BzKTtcbiAgfVxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIGRlcGxveWVkIFR5cGVTY3JpcHQgQ29kZS5cbiAqXG4gKiBAc3RhYmlsaXR5IHN0YWJsZVxuICovXG5leHBvcnQgY2xhc3MgVHlwZVNjcmlwdENvZGUgZXh0ZW5kcyBFc2J1aWxkQ29kZTxUeXBlU2NyaXB0Q29kZVByb3BzPiB7XG4gIHByb3RlY3RlZCBnZXRBc3NldChzY29wZTogQ29uc3RydWN0KTogRXNidWlsZEFzc2V0PEFzc2V0UHJvcHM+IHtcbiAgICByZXR1cm4gbmV3IFRTQXNzZXQoXG4gICAgICBzY29wZSxcbiAgICAgIHRoaXMuY29uc3RydWN0b3IubmFtZSxcbiAgICAgIHRoaXMucHJvcHMsXG4gICAgKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIC8qKlxuICAgICAqIEEgcmVsYXRpdmUgcGF0aCBvciBsaXN0IG9yIG1hcCBvZiByZWxhdGl2ZSBwYXRocyB0byB0aGUgZW50cnkgcG9pbnRzIG9mIHlvdXIgY29kZSBmcm9tIHRoZSByb290IG9mIHRoZSBwcm9qZWN0LlxuICAgICAqIEUuZy4gYHNyYy9pbmRleC50c2AuXG4gICAgICpcbiAgICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgICAqL1xuICAgIGVudHJ5UG9pbnRzOiBFbnRyeVBvaW50cyxcbiAgICAvKipcbiAgICAgKiBQcm9wcyB0byBjaGFuZ2UgdGhlIGJlaGF2aW9yIG9mIHRoZSBidW5kbGVyLlxuICAgICAqXG4gICAgICogRGVmYXVsdCB2YWx1ZXMgZm9yIGBwcm9wcy5idWlsZE9wdGlvbnNgOlxuICAgICAqIC0gYGJ1bmRsZT10cnVlYFxuICAgICAqIC0gYHBsYXRmb3JtPW5vZGVgXG4gICAgICogLSBgdGFyZ2V0PW5vZGVYYCB3aXRoIFggYmVpbmcgdGhlIG1ham9yIG5vZGUgdmVyc2lvbiBydW5uaW5nIGxvY2FsbHlcbiAgICAgKlxuICAgICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAgICovXG4gICAgcHJvcHM6IFR5cGVTY3JpcHRDb2RlUHJvcHMgPSB7fSxcbiAgKSB7XG4gICAgc3VwZXIoZW50cnlQb2ludHMsIHByb3BzKTtcbiAgfVxufVxuIl19
|