@nestjs-kitchen/authz 2.0.2 → 2.0.3
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/authz.provider.js +15 -18
- package/dist/constants.js +2 -2
- package/dist/errors.js +6 -16
- package/dist/jwt/extract-jwt.js +52 -56
- package/dist/jwt/jwt-authz-als.middleware.js +30 -47
- package/dist/jwt/jwt-authz.guard.js +50 -73
- package/dist/jwt/jwt-authz.interface.js +31 -6
- package/dist/jwt/jwt-authz.module.js +139 -186
- package/dist/jwt/jwt-authz.service.js +47 -62
- package/dist/jwt/jwt-authz.strategy.js +44 -81
- package/dist/session/session-authz-als.middleware.js +23 -41
- package/dist/session/session-authz.guard.js +40 -57
- package/dist/session/session-authz.interface.js +2 -3
- package/dist/session/session-authz.module.js +129 -172
- package/dist/session/session-authz.service.js +29 -48
- package/dist/session/session-authz.strategy.js +23 -47
- package/dist/user.decorator.js +2 -3
- package/dist/utils/cookie-parsers.js +13 -20
- package/dist/utils/create-authz-decorator-factory.js +4 -5
- package/dist/utils/create-set-cookie-fn.js +2 -3
- package/dist/utils/generics.js +9 -12
- package/dist/utils/get-allow-anonymous.js +2 -3
- package/dist/utils/get-als-store.js +2 -3
- package/dist/utils/get-context-authz-meta-params-list.js +2 -3
- package/dist/utils/get-passport-property.js +2 -3
- package/dist/utils/merge-dynamic-module-configs.js +13 -23
- package/dist/utils/msgpackrs.js +4 -5
- package/package.json +4 -4
|
@@ -4,7 +4,6 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
5
|
var __getProtoOf = Object.getPrototypeOf;
|
|
6
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
8
7
|
var __export = (target, all) => {
|
|
9
8
|
for (var name in all)
|
|
10
9
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -34,26 +33,21 @@ __export(cookie_parsers_exports, {
|
|
|
34
33
|
module.exports = __toCommonJS(cookie_parsers_exports);
|
|
35
34
|
var cookie = __toESM(require("cookie"));
|
|
36
35
|
var import_cookie_parser = __toESM(require("cookie-parser"));
|
|
37
|
-
const normalCookieParser =
|
|
36
|
+
const normalCookieParser = (req, _secrets = [], decode) => {
|
|
38
37
|
let cookies = req.cookies || {};
|
|
39
38
|
let signedCookies = req.signedCookies || {};
|
|
40
39
|
if (!req.cookies && req.headers.cookie) {
|
|
41
|
-
const parsedCookies = cookie.parse(req.headers.cookie, {
|
|
42
|
-
decode
|
|
43
|
-
});
|
|
40
|
+
const parsedCookies = cookie.parse(req.headers.cookie, { decode });
|
|
44
41
|
if (req.secret) {
|
|
45
|
-
signedCookies = import_cookie_parser.default.JSONCookies(
|
|
46
|
-
req.secret
|
|
47
|
-
|
|
42
|
+
signedCookies = import_cookie_parser.default.JSONCookies(
|
|
43
|
+
import_cookie_parser.default.signedCookies(parsedCookies, [req.secret])
|
|
44
|
+
);
|
|
48
45
|
}
|
|
49
46
|
cookies = import_cookie_parser.default.JSONCookies(parsedCookies);
|
|
50
47
|
}
|
|
51
|
-
return {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
};
|
|
55
|
-
}, "normalCookieParser");
|
|
56
|
-
const customCookieParser = /* @__PURE__ */ __name((req, secrets = [], decode) => {
|
|
48
|
+
return { cookies, signedCookies };
|
|
49
|
+
};
|
|
50
|
+
const customCookieParser = (req, secrets = [], decode) => {
|
|
57
51
|
let cookies = {};
|
|
58
52
|
let signedCookies = {};
|
|
59
53
|
if (req.headers.cookie) {
|
|
@@ -61,15 +55,14 @@ const customCookieParser = /* @__PURE__ */ __name((req, secrets = [], decode) =>
|
|
|
61
55
|
decode
|
|
62
56
|
});
|
|
63
57
|
if (secrets.length) {
|
|
64
|
-
signedCookies = import_cookie_parser.default.JSONCookies(
|
|
58
|
+
signedCookies = import_cookie_parser.default.JSONCookies(
|
|
59
|
+
import_cookie_parser.default.signedCookies(parsedCookies, secrets)
|
|
60
|
+
);
|
|
65
61
|
}
|
|
66
62
|
cookies = import_cookie_parser.default.JSONCookies(parsedCookies);
|
|
67
63
|
}
|
|
68
|
-
return {
|
|
69
|
-
|
|
70
|
-
signedCookies
|
|
71
|
-
};
|
|
72
|
-
}, "customCookieParser");
|
|
64
|
+
return { cookies, signedCookies };
|
|
65
|
+
};
|
|
73
66
|
// Annotate the CommonJS export names for ESM import in node:
|
|
74
67
|
0 && (module.exports = {
|
|
75
68
|
customCookieParser,
|
|
@@ -2,7 +2,6 @@ var __defProp = Object.defineProperty;
|
|
|
2
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
6
5
|
var __export = (target, all) => {
|
|
7
6
|
for (var name in all)
|
|
8
7
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -22,7 +21,7 @@ __export(create_authz_decorator_factory_exports, {
|
|
|
22
21
|
});
|
|
23
22
|
module.exports = __toCommonJS(create_authz_decorator_factory_exports);
|
|
24
23
|
var import_common = require("@nestjs/common");
|
|
25
|
-
const isOptions =
|
|
24
|
+
const isOptions = (val) => {
|
|
26
25
|
if (!val) {
|
|
27
26
|
return false;
|
|
28
27
|
}
|
|
@@ -34,8 +33,8 @@ const isOptions = /* @__PURE__ */ __name((val) => {
|
|
|
34
33
|
return keySet.has("override") && keySet.has("allowAnonymous");
|
|
35
34
|
}
|
|
36
35
|
return false;
|
|
37
|
-
}
|
|
38
|
-
const createAuthzDecoratorFactory =
|
|
36
|
+
};
|
|
37
|
+
const createAuthzDecoratorFactory = (metaKey) => (...args) => {
|
|
39
38
|
const [metaDataOrOptions, optionsOrUndefined] = args;
|
|
40
39
|
let metaData;
|
|
41
40
|
let options;
|
|
@@ -49,7 +48,7 @@ const createAuthzDecoratorFactory = /* @__PURE__ */ __name((metaKey) => (...args
|
|
|
49
48
|
metaData,
|
|
50
49
|
options
|
|
51
50
|
});
|
|
52
|
-
}
|
|
51
|
+
};
|
|
53
52
|
// Annotate the CommonJS export names for ESM import in node:
|
|
54
53
|
0 && (module.exports = {
|
|
55
54
|
createAuthzDecoratorFactory
|
|
@@ -2,7 +2,6 @@ var __defProp = Object.defineProperty;
|
|
|
2
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
6
5
|
var __export = (target, all) => {
|
|
7
6
|
for (var name in all)
|
|
8
7
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -22,7 +21,7 @@ __export(create_set_cookie_fn_exports, {
|
|
|
22
21
|
});
|
|
23
22
|
module.exports = __toCommonJS(create_set_cookie_fn_exports);
|
|
24
23
|
var import_generics = require("./generics");
|
|
25
|
-
const createSetCookieFn =
|
|
24
|
+
const createSetCookieFn = (req, res) => (name, value, options = {}) => {
|
|
26
25
|
const { secret, signed: optSigned, ...restOpts } = options;
|
|
27
26
|
const secrets = (0, import_generics.normalizedArray)(secret) ?? [];
|
|
28
27
|
const signed = optSigned ?? Boolean(secrets.length);
|
|
@@ -39,7 +38,7 @@ const createSetCookieFn = /* @__PURE__ */ __name((req, res) => (name, value, opt
|
|
|
39
38
|
...restOpts
|
|
40
39
|
});
|
|
41
40
|
req.secret = reqSecret;
|
|
42
|
-
}
|
|
41
|
+
};
|
|
43
42
|
// Annotate the CommonJS export names for ESM import in node:
|
|
44
43
|
0 && (module.exports = {
|
|
45
44
|
createSetCookieFn
|
package/dist/utils/generics.js
CHANGED
|
@@ -2,7 +2,6 @@ var __defProp = Object.defineProperty;
|
|
|
2
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
6
5
|
var __export = (target, all) => {
|
|
7
6
|
for (var name in all)
|
|
8
7
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -24,18 +23,16 @@ __export(generics_exports, {
|
|
|
24
23
|
normalizedObject: () => normalizedObject
|
|
25
24
|
});
|
|
26
25
|
module.exports = __toCommonJS(generics_exports);
|
|
27
|
-
const isNotFalsy =
|
|
26
|
+
const isNotFalsy = (val) => {
|
|
28
27
|
return val !== void 0 && val !== null && !Number.isNaN(val);
|
|
29
|
-
}
|
|
30
|
-
const normalizedArray =
|
|
28
|
+
};
|
|
29
|
+
const normalizedArray = (val) => {
|
|
31
30
|
if (!val) {
|
|
32
31
|
return void 0;
|
|
33
32
|
}
|
|
34
|
-
return (Array.isArray(val) ? val : [
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
}, "normalizedArray");
|
|
38
|
-
const normalizedObject = /* @__PURE__ */ __name((obj) => {
|
|
33
|
+
return (Array.isArray(val) ? val : [val]).filter(isNotFalsy);
|
|
34
|
+
};
|
|
35
|
+
const normalizedObject = (obj) => {
|
|
39
36
|
if (!obj) {
|
|
40
37
|
return void 0;
|
|
41
38
|
}
|
|
@@ -48,15 +45,15 @@ const normalizedObject = /* @__PURE__ */ __name((obj) => {
|
|
|
48
45
|
return void 0;
|
|
49
46
|
}
|
|
50
47
|
return Object.fromEntries(filtered);
|
|
51
|
-
}
|
|
52
|
-
const merge =
|
|
48
|
+
};
|
|
49
|
+
const merge = (obj1, obj2) => {
|
|
53
50
|
if (obj1 && obj2) {
|
|
54
51
|
for (var key in obj2) {
|
|
55
52
|
obj1[key] = obj2[key];
|
|
56
53
|
}
|
|
57
54
|
}
|
|
58
55
|
return obj1;
|
|
59
|
-
}
|
|
56
|
+
};
|
|
60
57
|
// Annotate the CommonJS export names for ESM import in node:
|
|
61
58
|
0 && (module.exports = {
|
|
62
59
|
isNotFalsy,
|
|
@@ -2,7 +2,6 @@ var __defProp = Object.defineProperty;
|
|
|
2
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
6
5
|
var __export = (target, all) => {
|
|
7
6
|
for (var name in all)
|
|
8
7
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -21,9 +20,9 @@ __export(get_allow_anonymous_exports, {
|
|
|
21
20
|
getAllowAnonymous: () => getAllowAnonymous
|
|
22
21
|
});
|
|
23
22
|
module.exports = __toCommonJS(get_allow_anonymous_exports);
|
|
24
|
-
const getAllowAnonymous =
|
|
23
|
+
const getAllowAnonymous = (authzMetaCollection, options) => {
|
|
25
24
|
return options?.defaultAllowAnonymous || Boolean(authzMetaCollection[authzMetaCollection.length - 1]?.options?.allowAnonymous);
|
|
26
|
-
}
|
|
25
|
+
};
|
|
27
26
|
// Annotate the CommonJS export names for ESM import in node:
|
|
28
27
|
0 && (module.exports = {
|
|
29
28
|
getAllowAnonymous
|
|
@@ -2,7 +2,6 @@ var __defProp = Object.defineProperty;
|
|
|
2
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
6
5
|
var __export = (target, all) => {
|
|
7
6
|
for (var name in all)
|
|
8
7
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -22,13 +21,13 @@ __export(get_als_store_exports, {
|
|
|
22
21
|
});
|
|
23
22
|
module.exports = __toCommonJS(get_als_store_exports);
|
|
24
23
|
var import_errors = require("../errors");
|
|
25
|
-
const getAlsStore =
|
|
24
|
+
const getAlsStore = (als) => {
|
|
26
25
|
const store = als.getStore();
|
|
27
26
|
if (!store) {
|
|
28
27
|
throw new import_errors.AuthzError(`InternalError: Unable to retrieve user data`);
|
|
29
28
|
}
|
|
30
29
|
return store;
|
|
31
|
-
}
|
|
30
|
+
};
|
|
32
31
|
// Annotate the CommonJS export names for ESM import in node:
|
|
33
32
|
0 && (module.exports = {
|
|
34
33
|
getAlsStore
|
|
@@ -2,7 +2,6 @@ var __defProp = Object.defineProperty;
|
|
|
2
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
6
5
|
var __export = (target, all) => {
|
|
7
6
|
for (var name in all)
|
|
8
7
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -22,14 +21,14 @@ __export(get_context_authz_meta_params_list_exports, {
|
|
|
22
21
|
});
|
|
23
22
|
module.exports = __toCommonJS(get_context_authz_meta_params_list_exports);
|
|
24
23
|
var import_generics = require("./generics");
|
|
25
|
-
const getContextAuthzMetaParamsList =
|
|
24
|
+
const getContextAuthzMetaParamsList = (authzMetaCollection, options) => {
|
|
26
25
|
const lastOverrideIdx = options?.defaultOverride ? authzMetaCollection.length - 1 : authzMetaCollection.findLastIndex((ele) => ele?.options?.override);
|
|
27
26
|
const contextAuthzMetaCollection = authzMetaCollection.slice(lastOverrideIdx === -1 ? 0 : lastOverrideIdx).filter((ele) => !ele.options?.public);
|
|
28
27
|
if (options?.skipFalsyMetadata) {
|
|
29
28
|
return contextAuthzMetaCollection.filter((ele) => (0, import_generics.isNotFalsy)(ele.metaData));
|
|
30
29
|
}
|
|
31
30
|
return contextAuthzMetaCollection;
|
|
32
|
-
}
|
|
31
|
+
};
|
|
33
32
|
// Annotate the CommonJS export names for ESM import in node:
|
|
34
33
|
0 && (module.exports = {
|
|
35
34
|
getContextAuthzMetaParamsList
|
|
@@ -2,7 +2,6 @@ var __defProp = Object.defineProperty;
|
|
|
2
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
6
5
|
var __export = (target, all) => {
|
|
7
6
|
for (var name in all)
|
|
8
7
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -22,9 +21,9 @@ __export(get_passport_property_exports, {
|
|
|
22
21
|
});
|
|
23
22
|
module.exports = __toCommonJS(get_passport_property_exports);
|
|
24
23
|
var import_constants = require("../constants");
|
|
25
|
-
const getPassportProperty =
|
|
24
|
+
const getPassportProperty = (request) => {
|
|
26
25
|
return request[request[import_constants.PASSPORT_PROPERTY]];
|
|
27
|
-
}
|
|
26
|
+
};
|
|
28
27
|
// Annotate the CommonJS export names for ESM import in node:
|
|
29
28
|
0 && (module.exports = {
|
|
30
29
|
getPassportProperty
|
|
@@ -2,7 +2,6 @@ var __defProp = Object.defineProperty;
|
|
|
2
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
6
5
|
var __export = (target, all) => {
|
|
7
6
|
for (var name in all)
|
|
8
7
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -21,29 +20,20 @@ __export(merge_dynamic_module_configs_exports, {
|
|
|
21
20
|
mergeDynamicModuleConfigs: () => mergeDynamicModuleConfigs
|
|
22
21
|
});
|
|
23
22
|
module.exports = __toCommonJS(merge_dynamic_module_configs_exports);
|
|
24
|
-
const mergeDynamicModuleConfigs =
|
|
25
|
-
const merged = configs.reduce(
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
...acc?.imports || [],
|
|
30
|
-
...curr?.
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
providers: [
|
|
37
|
-
...acc?.providers || [],
|
|
38
|
-
...curr?.providers || []
|
|
39
|
-
],
|
|
40
|
-
exports: [
|
|
41
|
-
...acc?.exports || [],
|
|
42
|
-
...curr?.exports || []
|
|
43
|
-
]
|
|
44
|
-
}), {});
|
|
23
|
+
const mergeDynamicModuleConfigs = (...configs) => {
|
|
24
|
+
const merged = configs.reduce(
|
|
25
|
+
(acc, curr) => ({
|
|
26
|
+
global: acc?.global || curr?.global,
|
|
27
|
+
module: acc?.module || curr?.module,
|
|
28
|
+
imports: [...acc?.imports || [], ...curr?.imports || []],
|
|
29
|
+
controllers: [...acc?.controllers || [], ...curr?.controllers || []],
|
|
30
|
+
providers: [...acc?.providers || [], ...curr?.providers || []],
|
|
31
|
+
exports: [...acc?.exports || [], ...curr?.exports || []]
|
|
32
|
+
}),
|
|
33
|
+
{}
|
|
34
|
+
);
|
|
45
35
|
return merged;
|
|
46
|
-
}
|
|
36
|
+
};
|
|
47
37
|
// Annotate the CommonJS export names for ESM import in node:
|
|
48
38
|
0 && (module.exports = {
|
|
49
39
|
mergeDynamicModuleConfigs
|
package/dist/utils/msgpackrs.js
CHANGED
|
@@ -2,7 +2,6 @@ var __defProp = Object.defineProperty;
|
|
|
2
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
6
5
|
var __export = (target, all) => {
|
|
7
6
|
for (var name in all)
|
|
8
7
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -24,12 +23,12 @@ __export(msgpackrs_exports, {
|
|
|
24
23
|
module.exports = __toCommonJS(msgpackrs_exports);
|
|
25
24
|
var import_msgpackr = require("msgpackr");
|
|
26
25
|
const packr = new import_msgpackr.Packr();
|
|
27
|
-
const encodeMsgpackrString =
|
|
26
|
+
const encodeMsgpackrString = (payload) => {
|
|
28
27
|
return Buffer.from(packr.pack(payload)).toString("base64");
|
|
29
|
-
}
|
|
30
|
-
const decodeMsgpackrString =
|
|
28
|
+
};
|
|
29
|
+
const decodeMsgpackrString = (msgpackrString) => {
|
|
31
30
|
return packr.unpack(Buffer.from(msgpackrString, "base64"));
|
|
32
|
-
}
|
|
31
|
+
};
|
|
33
32
|
// Annotate the CommonJS export names for ESM import in node:
|
|
34
33
|
0 && (module.exports = {
|
|
35
34
|
decodeMsgpackrString,
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@nestjs-kitchen/authz",
|
|
3
3
|
"private": false,
|
|
4
4
|
"description": "Simplest authentication & authorization module in NextJS",
|
|
5
|
-
"version": "2.0.
|
|
5
|
+
"version": "2.0.3",
|
|
6
6
|
"homepage": "https://github.com/yikenman/nestjs-kitchen",
|
|
7
7
|
"repository": "https://github.com/yikenman/nestjs-kitchen",
|
|
8
8
|
"author": "yikenman",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"devDependencies": {
|
|
30
30
|
"@nestjs/testing": "^11.0.0",
|
|
31
31
|
"@types/cookie-parser": "^1.4.8",
|
|
32
|
-
"@types/express": "^
|
|
32
|
+
"@types/express": "^5.0.1",
|
|
33
33
|
"@types/express-session": "^1.18.1",
|
|
34
34
|
"@types/jest": "^29.5.14",
|
|
35
35
|
"@types/jsonwebtoken": "^9.0.9",
|
|
@@ -37,8 +37,8 @@
|
|
|
37
37
|
"@types/passport": "^1.0.17",
|
|
38
38
|
"@types/supertest": "^6.0.2",
|
|
39
39
|
"jest": "^29.7.0",
|
|
40
|
-
"supertest": "^7.
|
|
41
|
-
"ts-jest": "^29.
|
|
40
|
+
"supertest": "^7.1.0",
|
|
41
|
+
"ts-jest": "^29.3.0",
|
|
42
42
|
"ts-node": "^10.9.2",
|
|
43
43
|
"tsconfig-paths": "^4.2.0",
|
|
44
44
|
"tsup": "^8.4.0",
|