@liflig/cdk-lambda-config 1.4.19 → 1.5.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/dist/handler/index.js +1 -1
- package/lib/handler.d.ts +9 -1
- package/lib/index.js +22 -54
- package/package.json +5 -4
package/lib/handler.d.ts
CHANGED
|
@@ -1,2 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
type OnEventHandler = (event: {
|
|
2
|
+
RequestType: "Create" | "Update" | "Delete";
|
|
3
|
+
PhysicalResourceId?: string;
|
|
4
|
+
ResourceProperties: Record<string, unknown>;
|
|
5
|
+
}) => Promise<{
|
|
6
|
+
PhysicalResourceId?: string;
|
|
7
|
+
Data?: Record<string, unknown>;
|
|
8
|
+
}>;
|
|
2
9
|
export declare const handler: OnEventHandler;
|
|
10
|
+
export {};
|
package/lib/index.js
CHANGED
|
@@ -1,83 +1,51 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.LambdaConfig = void 0;
|
|
37
|
-
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
38
|
-
const constructs_1 = require("constructs");
|
|
39
|
-
const path = __importStar(require("path"));
|
|
1
|
+
import { aws_iam as iam, aws_lambda as lambda, CustomResource, custom_resources as cr, Duration, Stack, } from "aws-cdk-lib";
|
|
2
|
+
import { Construct } from "constructs";
|
|
3
|
+
import * as path from "path";
|
|
4
|
+
import { fileURLToPath } from "url";
|
|
5
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
6
|
+
const __dirname = path.dirname(__filename);
|
|
40
7
|
/**
|
|
41
8
|
* Modify a Lambda Function by adding a config.json file using
|
|
42
9
|
* the provided object, and provide a new version for the
|
|
43
10
|
* Lambda Function.
|
|
44
11
|
*/
|
|
45
|
-
class LambdaConfig extends
|
|
12
|
+
export class LambdaConfig extends Construct {
|
|
13
|
+
version;
|
|
46
14
|
constructor(scope, id, props) {
|
|
47
|
-
var _a;
|
|
48
15
|
super(scope, id);
|
|
49
|
-
const updateCodeResource = new
|
|
16
|
+
const updateCodeResource = new CustomResource(this, "Resource", {
|
|
50
17
|
serviceToken: LambdaConfigProvider.getOrCreate(this).serviceToken,
|
|
51
18
|
properties: {
|
|
52
19
|
FunctionArn: props.function.functionArn,
|
|
53
20
|
Config: props.config,
|
|
54
|
-
Nonce:
|
|
21
|
+
Nonce: props.nonce ?? "",
|
|
55
22
|
},
|
|
56
23
|
});
|
|
57
|
-
this.version =
|
|
24
|
+
this.version = lambda.Version.fromVersionArn(this, "Version", updateCodeResource.getAttString("FunctionArn"));
|
|
58
25
|
}
|
|
59
26
|
}
|
|
60
|
-
|
|
61
|
-
class LambdaConfigProvider extends constructs_1.Construct {
|
|
27
|
+
class LambdaConfigProvider extends Construct {
|
|
62
28
|
/**
|
|
63
29
|
* Returns the singleton provider.
|
|
64
30
|
*/
|
|
65
31
|
static getOrCreate(scope) {
|
|
66
|
-
const stack =
|
|
32
|
+
const stack = Stack.of(scope);
|
|
67
33
|
const id = "liflig-infra.lambda-config.provider";
|
|
68
34
|
return (stack.node.tryFindChild(id) ||
|
|
69
35
|
new LambdaConfigProvider(stack, id));
|
|
70
36
|
}
|
|
37
|
+
provider;
|
|
38
|
+
serviceToken;
|
|
71
39
|
constructor(scope, id) {
|
|
72
40
|
super(scope, id);
|
|
73
|
-
this.provider = new
|
|
74
|
-
onEventHandler: new
|
|
75
|
-
code:
|
|
41
|
+
this.provider = new cr.Provider(this, "Provider", {
|
|
42
|
+
onEventHandler: new lambda.Function(this, "UpdateCodeFn", {
|
|
43
|
+
code: lambda.Code.fromAsset(path.join(__dirname, "../dist/handler")),
|
|
76
44
|
handler: "index.handler",
|
|
77
|
-
runtime:
|
|
78
|
-
timeout:
|
|
45
|
+
runtime: lambda.Runtime.NODEJS_18_X,
|
|
46
|
+
timeout: Duration.seconds(10),
|
|
79
47
|
initialPolicy: [
|
|
80
|
-
new
|
|
48
|
+
new iam.PolicyStatement({
|
|
81
49
|
actions: ["lambda:GetFunction", "lambda:UpdateFunctionCode"],
|
|
82
50
|
resources: ["*"],
|
|
83
51
|
}),
|
|
@@ -87,4 +55,4 @@ class LambdaConfigProvider extends constructs_1.Construct {
|
|
|
87
55
|
this.serviceToken = this.provider.serviceToken;
|
|
88
56
|
}
|
|
89
57
|
}
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLE9BQU8sSUFBSSxHQUFHLEVBQ2QsVUFBVSxJQUFJLE1BQU0sRUFDcEIsY0FBYyxFQUNkLGdCQUFnQixJQUFJLEVBQUUsRUFDdEIsUUFBUSxFQUNSLEtBQUssR0FDTixNQUFNLGFBQWEsQ0FBQTtBQUNwQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQ3RDLE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFBO0FBQzVCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxLQUFLLENBQUE7QUFFbkMsTUFBTSxVQUFVLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUE7QUFDakQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQTtBQStCMUM7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxZQUFhLFNBQVEsU0FBUztJQUN6QixPQUFPLENBQWlCO0lBRXhDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBd0I7UUFDaEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQTtRQUVoQixNQUFNLGtCQUFrQixHQUFHLElBQUksY0FBYyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDOUQsWUFBWSxFQUFFLG9CQUFvQixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxZQUFZO1lBQ2pFLFVBQVUsRUFBRTtnQkFDVixXQUFXLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXO2dCQUN2QyxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07Z0JBQ3BCLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxJQUFJLEVBQUU7YUFDekI7U0FDRixDQUFDLENBQUE7UUFFRixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUMxQyxJQUFJLEVBQ0osU0FBUyxFQUNULGtCQUFrQixDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsQ0FDL0MsQ0FBQTtJQUNILENBQUM7Q0FDRjtBQUVELE1BQU0sb0JBQXFCLFNBQVEsU0FBUztJQUMxQzs7T0FFRztJQUNJLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBZ0I7UUFDeEMsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUM3QixNQUFNLEVBQUUsR0FBRyxxQ0FBcUMsQ0FBQTtRQUNoRCxPQUFPLENBQ0osS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUEwQjtZQUNyRCxJQUFJLG9CQUFvQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FDcEMsQ0FBQTtJQUNILENBQUM7SUFFZ0IsUUFBUSxDQUFhO0lBQ3RCLFlBQVksQ0FBUTtJQUVwQyxZQUFZLEtBQWdCLEVBQUUsRUFBVTtRQUN0QyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFBO1FBRWhCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDaEQsY0FBYyxFQUFFLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsY0FBYyxFQUFFO2dCQUN4RCxJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztnQkFDcEUsT0FBTyxFQUFFLGVBQWU7Z0JBQ3hCLE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVc7Z0JBQ25DLE9BQU8sRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztnQkFDN0IsYUFBYSxFQUFFO29CQUNiLElBQUksR0FBRyxDQUFDLGVBQWUsQ0FBQzt3QkFDdEIsT0FBTyxFQUFFLENBQUMsb0JBQW9CLEVBQUUsMkJBQTJCLENBQUM7d0JBQzVELFNBQVMsRUFBRSxDQUFDLEdBQUcsQ0FBQztxQkFDakIsQ0FBQztpQkFDSDthQUNGLENBQUM7U0FDSCxDQUFDLENBQUE7UUFFRixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFBO0lBQ2hELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGF3c19pYW0gYXMgaWFtLFxuICBhd3NfbGFtYmRhIGFzIGxhbWJkYSxcbiAgQ3VzdG9tUmVzb3VyY2UsXG4gIGN1c3RvbV9yZXNvdXJjZXMgYXMgY3IsXG4gIER1cmF0aW9uLFxuICBTdGFjayxcbn0gZnJvbSBcImF3cy1jZGstbGliXCJcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCJcbmltcG9ydCAqIGFzIHBhdGggZnJvbSBcInBhdGhcIlxuaW1wb3J0IHsgZmlsZVVSTFRvUGF0aCB9IGZyb20gXCJ1cmxcIlxuXG5jb25zdCBfX2ZpbGVuYW1lID0gZmlsZVVSTFRvUGF0aChpbXBvcnQubWV0YS51cmwpXG5jb25zdCBfX2Rpcm5hbWUgPSBwYXRoLmRpcm5hbWUoX19maWxlbmFtZSlcblxuZXhwb3J0IGludGVyZmFjZSBMYW1iZGFDb25maWdQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgTGFtYmRhIEZ1bmN0aW9uIHRvIGJlIHVwZGF0ZWQuXG4gICAqXG4gICAqIElmIHRoaXMgcG9pbnRzIHRvIGEgc3BlY2lmaWMgdmVyc2lvbiwgdGhlIHZlcnNpb24gcXVhbGlmaWVyXG4gICAqIHdpbGwgYmUgaWdub3JlZCwgYnV0IHdpbGwgYmUgdXNlZCBmb3IgaW52YWxpZGF0aW9uIGluc3RlYWRcbiAgICogb2YgcHJvdmlkaW5nIGEgc2VwYXJhdGUgbm9uY2UgdmFsdWUuXG4gICAqXG4gICAqIEEgTGFtYmRhIEZ1bmN0aW9uIGNhbiBvbmx5IHJlY2VpdmUgYSBuZXcgdmVyc2lvbiBiYXNlZCBvblxuICAgKiB0aGUgbGF0ZXN0IHZlcnNpb24uXG4gICAqL1xuICBmdW5jdGlvbjogbGFtYmRhLklGdW5jdGlvblxuICAvKipcbiAgICogVGhlIGNvbmZpZ3VyYXRpb24gdG8gYmUgYWRkZWQgdG8gdGhlIExhbWJkYSBGdW5jdGlvbi4gTXVzdCBiZVxuICAgKiBhIHZhbGlkIEpTT04gc3RydWN0dXJlIGFuZCBjYW5ub3QgY29udGFpbiBudWxsIHZhbHVlcyBzaW5jZSBpdFxuICAgKiBpcyBub3Qgc3VwcG9ydGVkIGJ5IENsb3VkRm9ybWF0aW9uIGN1c3RvbSByZXNvdXJjZSBwcm9wZXJ0aWVzLlxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgY29uZmlnOiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4gIC8qKlxuICAgKiBOb25jZSB0byBmb3JjZSBuZXcgdmVyc2lvbi5cbiAgICpcbiAgICogSWYgdGhlIGZ1bmN0aW9uIHByb3ZpZGVkIGRvZXMgbm90IHBvaW50IHRvIGEgc3BlY2lmaWNcbiAgICogdmVyc2lvbiwgc3BlY2lmeSBub25jZSB0byBlbnN1cmUgdGhlIGZ1bmN0aW9uIGlzIHVwZGF0ZWRcbiAgICogYWZ0ZXIgZXZlcnkgY2hhbmdlLlxuICAgKi9cbiAgbm9uY2U/OiBzdHJpbmdcbn1cblxuLyoqXG4gKiBNb2RpZnkgYSBMYW1iZGEgRnVuY3Rpb24gYnkgYWRkaW5nIGEgY29uZmlnLmpzb24gZmlsZSB1c2luZ1xuICogdGhlIHByb3ZpZGVkIG9iamVjdCwgYW5kIHByb3ZpZGUgYSBuZXcgdmVyc2lvbiBmb3IgdGhlXG4gKiBMYW1iZGEgRnVuY3Rpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBMYW1iZGFDb25maWcgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwdWJsaWMgcmVhZG9ubHkgdmVyc2lvbjogbGFtYmRhLklWZXJzaW9uXG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IExhbWJkYUNvbmZpZ1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKVxuXG4gICAgY29uc3QgdXBkYXRlQ29kZVJlc291cmNlID0gbmV3IEN1c3RvbVJlc291cmNlKHRoaXMsIFwiUmVzb3VyY2VcIiwge1xuICAgICAgc2VydmljZVRva2VuOiBMYW1iZGFDb25maWdQcm92aWRlci5nZXRPckNyZWF0ZSh0aGlzKS5zZXJ2aWNlVG9rZW4sXG4gICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgIEZ1bmN0aW9uQXJuOiBwcm9wcy5mdW5jdGlvbi5mdW5jdGlvbkFybixcbiAgICAgICAgQ29uZmlnOiBwcm9wcy5jb25maWcsXG4gICAgICAgIE5vbmNlOiBwcm9wcy5ub25jZSA/PyBcIlwiLFxuICAgICAgfSxcbiAgICB9KVxuXG4gICAgdGhpcy52ZXJzaW9uID0gbGFtYmRhLlZlcnNpb24uZnJvbVZlcnNpb25Bcm4oXG4gICAgICB0aGlzLFxuICAgICAgXCJWZXJzaW9uXCIsXG4gICAgICB1cGRhdGVDb2RlUmVzb3VyY2UuZ2V0QXR0U3RyaW5nKFwiRnVuY3Rpb25Bcm5cIiksXG4gICAgKVxuICB9XG59XG5cbmNsYXNzIExhbWJkYUNvbmZpZ1Byb3ZpZGVyIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHNpbmdsZXRvbiBwcm92aWRlci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZ2V0T3JDcmVhdGUoc2NvcGU6IENvbnN0cnVjdCkge1xuICAgIGNvbnN0IHN0YWNrID0gU3RhY2sub2Yoc2NvcGUpXG4gICAgY29uc3QgaWQgPSBcImxpZmxpZy1pbmZyYS5sYW1iZGEtY29uZmlnLnByb3ZpZGVyXCJcbiAgICByZXR1cm4gKFxuICAgICAgKHN0YWNrLm5vZGUudHJ5RmluZENoaWxkKGlkKSBhcyBMYW1iZGFDb25maWdQcm92aWRlcikgfHxcbiAgICAgIG5ldyBMYW1iZGFDb25maWdQcm92aWRlcihzdGFjaywgaWQpXG4gICAgKVxuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBwcm92aWRlcjogY3IuUHJvdmlkZXJcbiAgcHVibGljIHJlYWRvbmx5IHNlcnZpY2VUb2tlbjogc3RyaW5nXG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZykge1xuICAgIHN1cGVyKHNjb3BlLCBpZClcblxuICAgIHRoaXMucHJvdmlkZXIgPSBuZXcgY3IuUHJvdmlkZXIodGhpcywgXCJQcm92aWRlclwiLCB7XG4gICAgICBvbkV2ZW50SGFuZGxlcjogbmV3IGxhbWJkYS5GdW5jdGlvbih0aGlzLCBcIlVwZGF0ZUNvZGVGblwiLCB7XG4gICAgICAgIGNvZGU6IGxhbWJkYS5Db2RlLmZyb21Bc3NldChwYXRoLmpvaW4oX19kaXJuYW1lLCBcIi4uL2Rpc3QvaGFuZGxlclwiKSksXG4gICAgICAgIGhhbmRsZXI6IFwiaW5kZXguaGFuZGxlclwiLFxuICAgICAgICBydW50aW1lOiBsYW1iZGEuUnVudGltZS5OT0RFSlNfMThfWCxcbiAgICAgICAgdGltZW91dDogRHVyYXRpb24uc2Vjb25kcygxMCksXG4gICAgICAgIGluaXRpYWxQb2xpY3k6IFtcbiAgICAgICAgICBuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgICAgICBhY3Rpb25zOiBbXCJsYW1iZGE6R2V0RnVuY3Rpb25cIiwgXCJsYW1iZGE6VXBkYXRlRnVuY3Rpb25Db2RlXCJdLFxuICAgICAgICAgICAgcmVzb3VyY2VzOiBbXCIqXCJdLFxuICAgICAgICAgIH0pLFxuICAgICAgICBdLFxuICAgICAgfSksXG4gICAgfSlcblxuICAgIHRoaXMuc2VydmljZVRva2VuID0gdGhpcy5wcm92aWRlci5zZXJ2aWNlVG9rZW5cbiAgfVxufVxuIl19
|
package/package.json
CHANGED
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@liflig/cdk-lambda-config",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.5.1",
|
|
4
4
|
"description": "CDK Construct for adding config.json file to a Lambda Function",
|
|
5
|
+
"type": "module",
|
|
5
6
|
"repository": {
|
|
6
7
|
"type": "git",
|
|
7
8
|
"url": "https://github.com/capralifecycle/cdk-lambda-config"
|
|
8
9
|
},
|
|
9
10
|
"scripts": {
|
|
10
|
-
"build": "rimraf dist && webpack && tsc",
|
|
11
|
+
"build": "rimraf dist && NODE_OPTIONS=--import=tsx webpack && tsc",
|
|
11
12
|
"watch": "tsc -w",
|
|
12
|
-
"test": "jest",
|
|
13
|
+
"test": "node --experimental-vm-modules node_modules/jest/bin/jest.js",
|
|
13
14
|
"lint": "eslint .",
|
|
14
15
|
"lint:fix": "eslint --fix .",
|
|
15
16
|
"prepare": "npm run build && husky",
|
|
@@ -56,7 +57,7 @@
|
|
|
56
57
|
"semantic-release": "24.2.0",
|
|
57
58
|
"ts-jest": "29.2.5",
|
|
58
59
|
"ts-loader": "9.5.1",
|
|
59
|
-
"
|
|
60
|
+
"tsx": "4.19.2",
|
|
60
61
|
"typescript": "5.7.2",
|
|
61
62
|
"webpack": "5.96.1",
|
|
62
63
|
"webpack-cli": "5.1.4"
|