@beesolve/lambda-bun-runtime 1.1.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +8603 -0
- package/API.md +1584 -0
- package/LICENSE +0 -2
- package/bun.lock +1329 -0
- package/command/buildLayer.sh +25 -0
- package/command/runtime.ts +927 -0
- package/lib/index.d.ts +25 -0
- package/lib/index.js +47 -0
- package/package.json +77 -28
- package/bun-lambda-layer.zip +0 -0
- package/dist/cdk.d.ts +0 -25
- package/dist/cdk.js +0 -4
package/lib/index.d.ts
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Function, LayerVersion, LayerVersionProps } from "aws-cdk-lib/aws-lambda";
|
|
2
|
+
import { type NodejsFunctionProps } from "aws-cdk-lib/aws-lambda-nodejs";
|
|
3
|
+
import { Construct } from "constructs";
|
|
4
|
+
export interface BunFunctionProps {
|
|
5
|
+
/**
|
|
6
|
+
* Example: `${__dirname}/dist/index.js`
|
|
7
|
+
*/
|
|
8
|
+
readonly entrypoint: `${string}.js`;
|
|
9
|
+
/**
|
|
10
|
+
* Bun layer needs to be set.
|
|
11
|
+
*/
|
|
12
|
+
readonly bunLayer: BunLambdaLayer;
|
|
13
|
+
}
|
|
14
|
+
export interface BunFunctionProps extends Omit<NodejsFunctionProps, "entry" | "runtime" | "architecture" | "handler" | "code" | "bundling"> {
|
|
15
|
+
}
|
|
16
|
+
export declare class BunFunction extends Function {
|
|
17
|
+
constructor(scope: Construct, id: string, props: BunFunctionProps);
|
|
18
|
+
}
|
|
19
|
+
export interface BunLambdaLayerProps {
|
|
20
|
+
}
|
|
21
|
+
export interface BunLambdaLayerProps extends Omit<LayerVersionProps, "description" | "removalPolicy" | "code" | "compatibleArchitectures" | "compatibleRuntimes" | "layerVersionName"> {
|
|
22
|
+
}
|
|
23
|
+
export declare class BunLambdaLayer extends LayerVersion {
|
|
24
|
+
constructor(scope: Construct, id: string, props?: BunLambdaLayerProps);
|
|
25
|
+
}
|
package/lib/index.js
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a, _b;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.BunLambdaLayer = exports.BunFunction = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
7
|
+
const aws_lambda_1 = require("aws-cdk-lib/aws-lambda");
|
|
8
|
+
const bunVersion = "1.3.3";
|
|
9
|
+
class BunFunction extends aws_lambda_1.Function {
|
|
10
|
+
constructor(scope, id, props) {
|
|
11
|
+
const { entrypoint, ...rest } = props;
|
|
12
|
+
super(scope, id, {
|
|
13
|
+
...rest,
|
|
14
|
+
code: aws_lambda_1.Code.fromAsset(`${__dirname}/${entrypoint}`),
|
|
15
|
+
handler: `${toEntry(entrypoint)}.fetch`,
|
|
16
|
+
runtime: aws_lambda_1.Runtime.PROVIDED_AL2,
|
|
17
|
+
architecture: aws_lambda_1.Architecture.ARM_64,
|
|
18
|
+
layers: [rest.bunLayer, ...(rest.layers ?? [])],
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
exports.BunFunction = BunFunction;
|
|
23
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
24
|
+
BunFunction[_a] = { fqn: "@beesolve/lambda-bun-runtime.BunFunction", version: "1.2.0" };
|
|
25
|
+
class BunLambdaLayer extends aws_lambda_1.LayerVersion {
|
|
26
|
+
constructor(scope, id, props) {
|
|
27
|
+
super(scope, id, {
|
|
28
|
+
...(props ?? {}),
|
|
29
|
+
description: "A custom Lambda layer for Bun.",
|
|
30
|
+
removalPolicy: aws_cdk_lib_1.RemovalPolicy.DESTROY,
|
|
31
|
+
code: aws_lambda_1.Code.fromAsset(`${__dirname}/bun-lambda-layer-${bunVersion}.zip`),
|
|
32
|
+
compatibleArchitectures: [aws_lambda_1.Architecture.ARM_64],
|
|
33
|
+
compatibleRuntimes: [aws_lambda_1.Runtime.PROVIDED_AL2],
|
|
34
|
+
layerVersionName: "BunRuntime",
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
exports.BunLambdaLayer = BunLambdaLayer;
|
|
39
|
+
_b = JSII_RTTI_SYMBOL_1;
|
|
40
|
+
BunLambdaLayer[_b] = { fqn: "@beesolve/lambda-bun-runtime.BunLambdaLayer", version: "1.2.0" };
|
|
41
|
+
function toEntry(entrypoint) {
|
|
42
|
+
const entry = entrypoint.split("/").pop()?.split(".").shift();
|
|
43
|
+
if (entry == null)
|
|
44
|
+
throw Error(`Cannot parse entry from entrypoint.`);
|
|
45
|
+
return entry;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2Q0FBNEM7QUFDNUMsdURBT2dDO0FBSWhDLE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQztBQWtCM0IsTUFBYSxXQUFZLFNBQVEscUJBQVE7SUFDdkMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUF1QjtRQUMvRCxNQUFNLEVBQUUsVUFBVSxFQUFFLEdBQUcsSUFBSSxFQUFFLEdBQUcsS0FBSyxDQUFDO1FBRXRDLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsR0FBRyxJQUFJO1lBQ1AsSUFBSSxFQUFFLGlCQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsU0FBUyxJQUFJLFVBQVUsRUFBRSxDQUFDO1lBQ2xELE9BQU8sRUFBRSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsUUFBUTtZQUN2QyxPQUFPLEVBQUUsb0JBQU8sQ0FBQyxZQUFZO1lBQzdCLFlBQVksRUFBRSx5QkFBWSxDQUFDLE1BQU07WUFDakMsTUFBTSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUMsQ0FBQztTQUNoRCxDQUFDLENBQUM7SUFDTCxDQUFDOztBQVpILGtDQWFDOzs7QUFhRCxNQUFhLGNBQWUsU0FBUSx5QkFBWTtJQUM5QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQTJCO1FBQ25FLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsR0FBRyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDaEIsV0FBVyxFQUFFLGdDQUFnQztZQUM3QyxhQUFhLEVBQUUsMkJBQWEsQ0FBQyxPQUFPO1lBQ3BDLElBQUksRUFBRSxpQkFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLFNBQVMscUJBQXFCLFVBQVUsTUFBTSxDQUFDO1lBQ3ZFLHVCQUF1QixFQUFFLENBQUMseUJBQVksQ0FBQyxNQUFNLENBQUM7WUFDOUMsa0JBQWtCLEVBQUUsQ0FBQyxvQkFBTyxDQUFDLFlBQVksQ0FBQztZQUMxQyxnQkFBZ0IsRUFBRSxZQUFZO1NBQy9CLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBWEgsd0NBWUM7OztBQUVELFNBQVMsT0FBTyxDQUFDLFVBQWtCO0lBQ2pDLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzlELElBQUksS0FBSyxJQUFJLElBQUk7UUFBRSxNQUFNLEtBQUssQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO0lBRXRFLE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlbW92YWxQb2xpY3kgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7XG4gIEFyY2hpdGVjdHVyZSxcbiAgQ29kZSxcbiAgRnVuY3Rpb24sXG4gIExheWVyVmVyc2lvbixcbiAgUnVudGltZSxcbiAgTGF5ZXJWZXJzaW9uUHJvcHMsXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtbGFtYmRhXCI7XG5pbXBvcnQgeyB0eXBlIE5vZGVqc0Z1bmN0aW9uUHJvcHMgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWxhbWJkYS1ub2RlanNcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbmNvbnN0IGJ1blZlcnNpb24gPSBcIjEuMy4zXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnVuRnVuY3Rpb25Qcm9wcyB7XG4gIC8qKlxuICAgKiBFeGFtcGxlOiBgJHtfX2Rpcm5hbWV9L2Rpc3QvaW5kZXguanNgXG4gICAqL1xuICByZWFkb25seSBlbnRyeXBvaW50OiBgJHtzdHJpbmd9LmpzYDtcblxuICAvKipcbiAgICogQnVuIGxheWVyIG5lZWRzIHRvIGJlIHNldC5cbiAgICovXG4gIHJlYWRvbmx5IGJ1bkxheWVyOiBCdW5MYW1iZGFMYXllcjtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgQnVuRnVuY3Rpb25Qcm9wcyBleHRlbmRzIE9taXQ8XG4gIE5vZGVqc0Z1bmN0aW9uUHJvcHMsXG4gIFwiZW50cnlcIiB8IFwicnVudGltZVwiIHwgXCJhcmNoaXRlY3R1cmVcIiB8IFwiaGFuZGxlclwiIHwgXCJjb2RlXCIgfCBcImJ1bmRsaW5nXCJcbj4ge31cblxuZXhwb3J0IGNsYXNzIEJ1bkZ1bmN0aW9uIGV4dGVuZHMgRnVuY3Rpb24ge1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQnVuRnVuY3Rpb25Qcm9wcykge1xuICAgIGNvbnN0IHsgZW50cnlwb2ludCwgLi4ucmVzdCB9ID0gcHJvcHM7XG5cbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIC4uLnJlc3QsXG4gICAgICBjb2RlOiBDb2RlLmZyb21Bc3NldChgJHtfX2Rpcm5hbWV9LyR7ZW50cnlwb2ludH1gKSxcbiAgICAgIGhhbmRsZXI6IGAke3RvRW50cnkoZW50cnlwb2ludCl9LmZldGNoYCxcbiAgICAgIHJ1bnRpbWU6IFJ1bnRpbWUuUFJPVklERURfQUwyLFxuICAgICAgYXJjaGl0ZWN0dXJlOiBBcmNoaXRlY3R1cmUuQVJNXzY0LFxuICAgICAgbGF5ZXJzOiBbcmVzdC5idW5MYXllciwgLi4uKHJlc3QubGF5ZXJzID8/IFtdKV0sXG4gICAgfSk7XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBCdW5MYW1iZGFMYXllclByb3BzIHt9XG5leHBvcnQgaW50ZXJmYWNlIEJ1bkxhbWJkYUxheWVyUHJvcHMgZXh0ZW5kcyBPbWl0PFxuICBMYXllclZlcnNpb25Qcm9wcyxcbiAgfCBcImRlc2NyaXB0aW9uXCJcbiAgfCBcInJlbW92YWxQb2xpY3lcIlxuICB8IFwiY29kZVwiXG4gIHwgXCJjb21wYXRpYmxlQXJjaGl0ZWN0dXJlc1wiXG4gIHwgXCJjb21wYXRpYmxlUnVudGltZXNcIlxuICB8IFwibGF5ZXJWZXJzaW9uTmFtZVwiXG4+IHt9XG5cbmV4cG9ydCBjbGFzcyBCdW5MYW1iZGFMYXllciBleHRlbmRzIExheWVyVmVyc2lvbiB7XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzPzogQnVuTGFtYmRhTGF5ZXJQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgLi4uKHByb3BzID8/IHt9KSxcbiAgICAgIGRlc2NyaXB0aW9uOiBcIkEgY3VzdG9tIExhbWJkYSBsYXllciBmb3IgQnVuLlwiLFxuICAgICAgcmVtb3ZhbFBvbGljeTogUmVtb3ZhbFBvbGljeS5ERVNUUk9ZLFxuICAgICAgY29kZTogQ29kZS5mcm9tQXNzZXQoYCR7X19kaXJuYW1lfS9idW4tbGFtYmRhLWxheWVyLSR7YnVuVmVyc2lvbn0uemlwYCksXG4gICAgICBjb21wYXRpYmxlQXJjaGl0ZWN0dXJlczogW0FyY2hpdGVjdHVyZS5BUk1fNjRdLFxuICAgICAgY29tcGF0aWJsZVJ1bnRpbWVzOiBbUnVudGltZS5QUk9WSURFRF9BTDJdLFxuICAgICAgbGF5ZXJWZXJzaW9uTmFtZTogXCJCdW5SdW50aW1lXCIsXG4gICAgfSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gdG9FbnRyeShlbnRyeXBvaW50OiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBlbnRyeSA9IGVudHJ5cG9pbnQuc3BsaXQoXCIvXCIpLnBvcCgpPy5zcGxpdChcIi5cIikuc2hpZnQoKTtcbiAgaWYgKGVudHJ5ID09IG51bGwpIHRocm93IEVycm9yKGBDYW5ub3QgcGFyc2UgZW50cnkgZnJvbSBlbnRyeXBvaW50LmApO1xuXG4gIHJldHVybiBlbnRyeTtcbn1cbiJdfQ==
|
package/package.json
CHANGED
|
@@ -1,39 +1,88 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@beesolve/lambda-bun-runtime",
|
|
3
|
-
"
|
|
4
|
-
"
|
|
5
|
-
|
|
6
|
-
"
|
|
7
|
-
],
|
|
8
|
-
"scripts": {
|
|
9
|
-
"buildLayer": "bun run command/buildBunLayer.ts",
|
|
10
|
-
"prepublishOnly": "bun run build.ts"
|
|
3
|
+
"description": "AWS Lambda bun runtime layer and construct",
|
|
4
|
+
"repository": {
|
|
5
|
+
"type": "git",
|
|
6
|
+
"url": "https://github.com/beesolve/lambda-bun-runtime"
|
|
11
7
|
},
|
|
12
|
-
"
|
|
13
|
-
"
|
|
14
|
-
"
|
|
15
|
-
"
|
|
8
|
+
"scripts": {
|
|
9
|
+
"build": "npx projen build",
|
|
10
|
+
"build-layer": "npx projen build-layer",
|
|
11
|
+
"bump": "npx projen bump",
|
|
12
|
+
"compat": "npx projen compat",
|
|
13
|
+
"compile": "npx projen compile",
|
|
14
|
+
"default": "npx projen default",
|
|
15
|
+
"docgen": "npx projen docgen",
|
|
16
|
+
"eject": "npx projen eject",
|
|
17
|
+
"eslint": "npx projen eslint",
|
|
18
|
+
"package": "npx projen package",
|
|
19
|
+
"package-all": "npx projen package-all",
|
|
20
|
+
"package:js": "npx projen package:js",
|
|
21
|
+
"post-compile": "npx projen post-compile",
|
|
22
|
+
"post-upgrade": "npx projen post-upgrade",
|
|
23
|
+
"pre-compile": "npx projen pre-compile",
|
|
24
|
+
"publish:git": "npx projen publish:git",
|
|
25
|
+
"release": "npx projen release",
|
|
26
|
+
"test": "npx projen test",
|
|
27
|
+
"unbump": "npx projen unbump",
|
|
28
|
+
"upgrade": "npx projen upgrade",
|
|
29
|
+
"watch": "npx projen watch",
|
|
30
|
+
"projen": "npx projen"
|
|
16
31
|
},
|
|
17
|
-
"
|
|
18
|
-
"
|
|
32
|
+
"author": {
|
|
33
|
+
"name": "BeeSolve s.r.o.",
|
|
34
|
+
"email": "support@beesolve.com",
|
|
35
|
+
"organization": true
|
|
19
36
|
},
|
|
20
37
|
"devDependencies": {
|
|
21
|
-
"@types/aws-lambda": "^8.10.159",
|
|
22
|
-
"@types/bun": "^1.3.3",
|
|
23
38
|
"@types/node": "^24.10.1",
|
|
24
|
-
"
|
|
39
|
+
"@typescript-eslint/eslint-plugin": "^8",
|
|
40
|
+
"@typescript-eslint/parser": "^8",
|
|
41
|
+
"aws-cdk-lib": "2.231.0",
|
|
42
|
+
"commit-and-tag-version": "^12",
|
|
43
|
+
"constructs": "10.4.3",
|
|
44
|
+
"eslint": "^9",
|
|
45
|
+
"eslint-config-prettier": "^10.1.8",
|
|
46
|
+
"eslint-import-resolver-typescript": "^4.4.4",
|
|
47
|
+
"eslint-plugin-import": "^2.32.0",
|
|
48
|
+
"eslint-plugin-prettier": "^5.5.4",
|
|
49
|
+
"jsii": "~5.9.0",
|
|
50
|
+
"jsii-diff": "^1.120.0",
|
|
51
|
+
"jsii-docgen": "^10.5.0",
|
|
52
|
+
"jsii-pacmak": "^1.120.0",
|
|
53
|
+
"jsii-rosetta": "~5.9.0",
|
|
54
|
+
"prettier": "^3.7.4",
|
|
55
|
+
"projen": "^0.98.28",
|
|
56
|
+
"ts-node": "^10.9.2",
|
|
57
|
+
"typescript": "^5.9.3",
|
|
58
|
+
"yaml": "^2.8.1"
|
|
25
59
|
},
|
|
26
|
-
"
|
|
27
|
-
"
|
|
28
|
-
|
|
29
|
-
"import": "./dist/cdk.js"
|
|
30
|
-
}
|
|
60
|
+
"peerDependencies": {
|
|
61
|
+
"aws-cdk-lib": "^2.231.0",
|
|
62
|
+
"constructs": "^10.4.3"
|
|
31
63
|
},
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
"bun
|
|
64
|
+
"keywords": [
|
|
65
|
+
"aws",
|
|
66
|
+
"bun",
|
|
67
|
+
"cdk",
|
|
68
|
+
"lambda",
|
|
69
|
+
"runtime"
|
|
35
70
|
],
|
|
36
|
-
"
|
|
37
|
-
|
|
38
|
-
|
|
71
|
+
"main": "lib/index.js",
|
|
72
|
+
"license": "MIT",
|
|
73
|
+
"publishConfig": {
|
|
74
|
+
"access": "public"
|
|
75
|
+
},
|
|
76
|
+
"version": "1.2.0",
|
|
77
|
+
"types": "lib/index.d.ts",
|
|
78
|
+
"stability": "stable",
|
|
79
|
+
"jsii": {
|
|
80
|
+
"outdir": "dist",
|
|
81
|
+
"targets": {},
|
|
82
|
+
"tsc": {
|
|
83
|
+
"outDir": "lib",
|
|
84
|
+
"rootDir": "src"
|
|
85
|
+
}
|
|
86
|
+
},
|
|
87
|
+
"//": "~~ Generated by projen. To modify, edit .projenrc.ts and run \"npx projen\"."
|
|
39
88
|
}
|
package/bun-lambda-layer.zip
DELETED
|
Binary file
|
package/dist/cdk.d.ts
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
// Generated by dts-bundle-generator v9.5.1
|
|
2
|
-
|
|
3
|
-
import { aws_lambda } from 'aws-cdk-lib';
|
|
4
|
-
import { LayerVersion, LayerVersionProps } from 'aws-cdk-lib/aws-lambda';
|
|
5
|
-
import { NodejsFunctionProps } from 'aws-cdk-lib/aws-lambda-nodejs';
|
|
6
|
-
import { Construct } from 'constructs';
|
|
7
|
-
|
|
8
|
-
export type BunFunctionProps = Omit<NodejsFunctionProps, "entry" | "runtime" | "architecture" | "handler" | "code" | "bundling"> & {
|
|
9
|
-
/**
|
|
10
|
-
* Example: `${__dirname}/dist/index.js`
|
|
11
|
-
*/
|
|
12
|
-
entrypoint: `${string}.js`;
|
|
13
|
-
/**
|
|
14
|
-
* Bun layer needs to be set.
|
|
15
|
-
*/
|
|
16
|
-
bunLayer: BunLambdaLayer;
|
|
17
|
-
};
|
|
18
|
-
export declare class BunFunction extends aws_lambda.Function {
|
|
19
|
-
constructor(scope: Construct, id: string, { entrypoint, ...props }: BunFunctionProps);
|
|
20
|
-
}
|
|
21
|
-
export declare class BunLambdaLayer extends LayerVersion {
|
|
22
|
-
constructor(scope: Construct, id: string, props?: Omit<LayerVersionProps, "description" | "removalPolicy" | "code" | "compatibleArchitectures" | "compatibleRuntimes" | "layerVersionName">);
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
export {};
|
package/dist/cdk.js
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import{aws_lambda as H,RemovalPolicy as I}from"aws-cdk-lib";import{Architecture as z,Code as D,LayerVersion as J,Runtime as F}from"aws-cdk-lib/aws-lambda";import{dirname as G}from"node:path";import{fileURLToPath as K}from"node:url";var M=K(import.meta.url),N=G(M);class O extends H.Function{constructor(j,g,{entrypoint:q,...x}){super(j,g,{...x,code:D.fromAsset(G(q)),handler:`${S(q)}.fetch`,runtime:F.PROVIDED_AL2,architecture:z.ARM_64,layers:[x.bunLayer,...x.layers??[]]})}}class Q extends J{constructor(j,g,q){super(j,g,{...q??{},description:"A custom Lambda layer for Bun.",removalPolicy:I.DESTROY,code:D.fromAsset(`${N}/../bun-lambda-layer.zip`),compatibleArchitectures:[z.ARM_64],compatibleRuntimes:[F.PROVIDED_AL2],layerVersionName:"BunRuntime"})}}function S(j){let g=j.split("/").pop()?.split(".").shift();if(g==null)throw Error("Cannot parse entry from entrypoint.");return g}export{Q as BunLambdaLayer,O as BunFunction};
|
|
2
|
-
|
|
3
|
-
//# debugId=6556BE5EF04E89D364756E2164756E21
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vY2RrLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWwogICAgImltcG9ydCB7IGF3c19sYW1iZGEsIFJlbW92YWxQb2xpY3kgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7XG4gIEFyY2hpdGVjdHVyZSxcbiAgQ29kZSxcbiAgTGF5ZXJWZXJzaW9uLFxuICBSdW50aW1lLFxuICB0eXBlIExheWVyVmVyc2lvblByb3BzLFxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWxhbWJkYVwiO1xuaW1wb3J0IHsgdHlwZSBOb2RlanNGdW5jdGlvblByb3BzIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1sYW1iZGEtbm9kZWpzXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgZGlybmFtZSB9IGZyb20gXCJub2RlOnBhdGhcIjtcbmltcG9ydCB7IGZpbGVVUkxUb1BhdGggfSBmcm9tIFwibm9kZTp1cmxcIjtcblxuY29uc3QgX19maWxlbmFtZSA9IGZpbGVVUkxUb1BhdGgoaW1wb3J0Lm1ldGEudXJsKTtcbmNvbnN0IF9fZGlybmFtZSA9IGRpcm5hbWUoX19maWxlbmFtZSk7XG5cbnR5cGUgQnVuRnVuY3Rpb25Qcm9wcyA9IE9taXQ8XG4gIE5vZGVqc0Z1bmN0aW9uUHJvcHMsXG4gIFwiZW50cnlcIiB8IFwicnVudGltZVwiIHwgXCJhcmNoaXRlY3R1cmVcIiB8IFwiaGFuZGxlclwiIHwgXCJjb2RlXCIgfCBcImJ1bmRsaW5nXCJcbj4gJiB7XG4gIC8qKlxuICAgKiBFeGFtcGxlOiBgJHtfX2Rpcm5hbWV9L2Rpc3QvaW5kZXguanNgXG4gICAqL1xuICBlbnRyeXBvaW50OiBgJHtzdHJpbmd9LmpzYDtcblxuICAvKipcbiAgICogQnVuIGxheWVyIG5lZWRzIHRvIGJlIHNldC5cbiAgICovXG4gIGJ1bkxheWVyOiBCdW5MYW1iZGFMYXllcjtcbn07XG5cbmV4cG9ydCBjbGFzcyBCdW5GdW5jdGlvbiBleHRlbmRzIGF3c19sYW1iZGEuRnVuY3Rpb24ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgeyBlbnRyeXBvaW50LCAuLi5wcm9wcyB9OiBCdW5GdW5jdGlvblByb3BzLFxuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgY29kZTogQ29kZS5mcm9tQXNzZXQoZGlybmFtZShlbnRyeXBvaW50KSksXG4gICAgICBoYW5kbGVyOiBgJHt0b0VudHJ5KGVudHJ5cG9pbnQpfS5mZXRjaGAsXG4gICAgICBydW50aW1lOiBSdW50aW1lLlBST1ZJREVEX0FMMixcbiAgICAgIGFyY2hpdGVjdHVyZTogQXJjaGl0ZWN0dXJlLkFSTV82NCxcbiAgICAgIGxheWVyczogW3Byb3BzLmJ1bkxheWVyLCAuLi4ocHJvcHMubGF5ZXJzID8/IFtdKV0sXG4gICAgfSk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEJ1bkxhbWJkYUxheWVyIGV4dGVuZHMgTGF5ZXJWZXJzaW9uIHtcbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzPzogT21pdDxcbiAgICAgIExheWVyVmVyc2lvblByb3BzLFxuICAgICAgfCBcImRlc2NyaXB0aW9uXCJcbiAgICAgIHwgXCJyZW1vdmFsUG9saWN5XCJcbiAgICAgIHwgXCJjb2RlXCJcbiAgICAgIHwgXCJjb21wYXRpYmxlQXJjaGl0ZWN0dXJlc1wiXG4gICAgICB8IFwiY29tcGF0aWJsZVJ1bnRpbWVzXCJcbiAgICAgIHwgXCJsYXllclZlcnNpb25OYW1lXCJcbiAgICA+LFxuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIC4uLihwcm9wcyA/PyB7fSksXG4gICAgICBkZXNjcmlwdGlvbjogXCJBIGN1c3RvbSBMYW1iZGEgbGF5ZXIgZm9yIEJ1bi5cIixcbiAgICAgIHJlbW92YWxQb2xpY3k6IFJlbW92YWxQb2xpY3kuREVTVFJPWSxcbiAgICAgIGNvZGU6IENvZGUuZnJvbUFzc2V0KGAke19fZGlybmFtZX0vLi4vYnVuLWxhbWJkYS1sYXllci56aXBgKSxcbiAgICAgIGNvbXBhdGlibGVBcmNoaXRlY3R1cmVzOiBbQXJjaGl0ZWN0dXJlLkFSTV82NF0sXG4gICAgICBjb21wYXRpYmxlUnVudGltZXM6IFtSdW50aW1lLlBST1ZJREVEX0FMMl0sXG4gICAgICBsYXllclZlcnNpb25OYW1lOiBcIkJ1blJ1bnRpbWVcIixcbiAgICB9KTtcbiAgfVxufVxuXG5mdW5jdGlvbiB0b0VudHJ5KGVudHJ5cG9pbnQ6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IGVudHJ5ID0gZW50cnlwb2ludC5zcGxpdChcIi9cIikucG9wKCk/LnNwbGl0KFwiLlwiKS5zaGlmdCgpO1xuICBpZiAoZW50cnkgPT0gbnVsbCkgdGhyb3cgRXJyb3IoYENhbm5vdCBwYXJzZSBlbnRyeSBmcm9tIGVudHJ5cG9pbnQuYCk7XG5cbiAgcmV0dXJuIGVudHJ5O1xufVxuIgogIF0sCiAgIm1hcHBpbmdzIjogIkFBQUEscUJBQVMsbUJBQVksb0JBQ3JCLHVCQUNFLFVBQ0Esa0JBQ0EsYUFDQSwrQkFLRixrQkFBUyxrQkFDVCx3QkFBUyxpQkFFVCxJQUFNLEVBQWEsRUFBYyxZQUFZLEdBQUcsRUFDMUMsRUFBWSxFQUFRLENBQVUsRUFpQjdCLE1BQU0sVUFBb0IsRUFBVyxRQUFTLENBQ25ELFdBQVcsQ0FDVCxFQUNBLEdBQ0UsZ0JBQWUsR0FDakIsQ0FDQSxNQUFNLEVBQU8sRUFBSSxJQUNaLEVBQ0gsS0FBTSxFQUFLLFVBQVUsRUFBUSxDQUFVLENBQUMsRUFDeEMsUUFBUyxHQUFHLEVBQVEsQ0FBVSxVQUM5QixRQUFTLEVBQVEsYUFDakIsYUFBYyxFQUFhLE9BQzNCLE9BQVEsQ0FBQyxFQUFNLFNBQVUsR0FBSSxFQUFNLFFBQVUsQ0FBQyxDQUFFLENBQ2xELENBQUMsRUFFTCxDQUVPLE1BQU0sVUFBdUIsQ0FBYSxDQUMvQyxXQUFXLENBQ1QsRUFDQSxFQUNBLEVBU0EsQ0FDQSxNQUFNLEVBQU8sRUFBSSxJQUNYLEdBQVMsQ0FBQyxFQUNkLFlBQWEsaUNBQ2IsY0FBZSxFQUFjLFFBQzdCLEtBQU0sRUFBSyxVQUFVLEdBQUcsMkJBQW1DLEVBQzNELHdCQUF5QixDQUFDLEVBQWEsTUFBTSxFQUM3QyxtQkFBb0IsQ0FBQyxFQUFRLFlBQVksRUFDekMsaUJBQWtCLFlBQ3BCLENBQUMsRUFFTCxDQUVBLFNBQVMsQ0FBTyxDQUFDLEVBQTRCLENBQzNDLElBQU0sRUFBUSxFQUFXLE1BQU0sR0FBRyxFQUFFLElBQUksR0FBRyxNQUFNLEdBQUcsRUFBRSxNQUFNLEVBQzVELEdBQUksR0FBUyxLQUFNLE1BQU0sTUFBTSxxQ0FBcUMsRUFFcEUsT0FBTyIsCiAgImRlYnVnSWQiOiAiNjU1NkJFNUVGMDRFODlEMzY0NzU2RTIxNjQ3NTZFMjEiLAogICJuYW1lcyI6IFtdCn0=
|