@nest-boot/auth 7.10.0 → 7.11.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/dist/adapters/mikro-orm-adapter.js.map +1 -1
- package/dist/adapters/mikro-orm-adapter.spec.js +263 -11
- package/dist/adapters/mikro-orm-adapter.spec.js.map +1 -1
- package/dist/auth.guard.spec.js +46 -4
- package/dist/auth.guard.spec.js.map +1 -1
- package/dist/auth.middleware.spec.d.ts +1 -0
- package/dist/auth.middleware.spec.js +139 -0
- package/dist/auth.middleware.spec.js.map +1 -0
- package/dist/auth.module.d.ts +1 -1
- package/dist/auth.module.js +33 -20
- package/dist/auth.module.js.map +1 -1
- package/dist/auth.module.spec.d.ts +1 -0
- package/dist/auth.module.spec.js +611 -0
- package/dist/auth.module.spec.js.map +1 -0
- package/dist/auth.service.d.ts +1 -1
- package/dist/auth.service.spec.d.ts +1 -0
- package/dist/auth.service.spec.js +26 -0
- package/dist/auth.service.spec.js.map +1 -0
- package/dist/auth.transaction-context.spec.d.ts +1 -0
- package/dist/auth.transaction-context.spec.js +20 -0
- package/dist/auth.transaction-context.spec.js.map +1 -0
- package/dist/decorators/auth.decorators.spec.d.ts +1 -0
- package/dist/decorators/auth.decorators.spec.js +87 -0
- package/dist/decorators/auth.decorators.spec.js.map +1 -0
- package/dist/entities/entities.spec.d.ts +1 -0
- package/dist/entities/entities.spec.js +80 -0
- package/dist/entities/entities.spec.js.map +1 -0
- package/dist/index.spec.d.ts +1 -0
- package/dist/index.spec.js +73 -0
- package/dist/index.spec.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utils/assert-no-duplicate-generic-oauth-plugin.d.ts +2 -0
- package/dist/utils/assert-no-duplicate-generic-oauth-plugin.js +11 -0
- package/dist/utils/assert-no-duplicate-generic-oauth-plugin.js.map +1 -0
- package/dist/utils/assert-no-duplicate-generic-oauth-plugin.spec.d.ts +1 -0
- package/dist/utils/assert-no-duplicate-generic-oauth-plugin.spec.js +29 -0
- package/dist/utils/assert-no-duplicate-generic-oauth-plugin.spec.js.map +1 -0
- package/dist/utils/create-email-and-password-config.d.ts +4 -0
- package/dist/utils/create-email-and-password-config.js +21 -0
- package/dist/utils/create-email-and-password-config.js.map +1 -0
- package/dist/utils/create-email-and-password-config.spec.d.ts +1 -0
- package/dist/utils/create-email-and-password-config.spec.js +66 -0
- package/dist/utils/create-email-and-password-config.spec.js.map +1 -0
- package/dist/utils/create-oidc-config.d.ts +2 -0
- package/dist/utils/create-oidc-config.js +22 -0
- package/dist/utils/create-oidc-config.js.map +1 -0
- package/dist/utils/create-oidc-config.spec.d.ts +1 -0
- package/dist/utils/create-oidc-config.spec.js +73 -0
- package/dist/utils/create-oidc-config.spec.js.map +1 -0
- package/dist/utils/create-social-provider-config.d.ts +6 -0
- package/dist/utils/create-social-provider-config.js +40 -0
- package/dist/utils/create-social-provider-config.js.map +1 -0
- package/dist/utils/create-social-provider-config.spec.d.ts +1 -0
- package/dist/utils/create-social-provider-config.spec.js +139 -0
- package/dist/utils/create-social-provider-config.spec.js.map +1 -0
- package/dist/utils/create-social-providers-config.d.ts +4 -0
- package/dist/utils/create-social-providers-config.js +17 -0
- package/dist/utils/create-social-providers-config.js.map +1 -0
- package/dist/utils/create-social-providers-config.spec.d.ts +1 -0
- package/dist/utils/create-social-providers-config.spec.js +63 -0
- package/dist/utils/create-social-providers-config.spec.js.map +1 -0
- package/dist/utils/estimate-entropy.spec.d.ts +1 -0
- package/dist/utils/estimate-entropy.spec.js +13 -0
- package/dist/utils/estimate-entropy.spec.js.map +1 -0
- package/dist/utils/generic-oauth-provider-config.type.d.ts +3 -0
- package/dist/utils/generic-oauth-provider-config.type.js +3 -0
- package/dist/utils/generic-oauth-provider-config.type.js.map +1 -0
- package/dist/utils/has-oidc-env-config.d.ts +1 -0
- package/dist/utils/has-oidc-env-config.js +8 -0
- package/dist/utils/has-oidc-env-config.js.map +1 -0
- package/dist/utils/has-oidc-env-config.spec.d.ts +1 -0
- package/dist/utils/has-oidc-env-config.spec.js +23 -0
- package/dist/utils/has-oidc-env-config.spec.js.map +1 -0
- package/dist/utils/has-social-provider-credential-env-config.d.ts +2 -0
- package/dist/utils/has-social-provider-credential-env-config.js +10 -0
- package/dist/utils/has-social-provider-credential-env-config.js.map +1 -0
- package/dist/utils/has-social-provider-credential-env-config.spec.d.ts +1 -0
- package/dist/utils/has-social-provider-credential-env-config.spec.js +33 -0
- package/dist/utils/has-social-provider-credential-env-config.spec.js.map +1 -0
- package/dist/utils/has-social-provider-env-config.d.ts +2 -0
- package/dist/utils/has-social-provider-env-config.js +8 -0
- package/dist/utils/has-social-provider-env-config.js.map +1 -0
- package/dist/utils/has-social-provider-env-config.spec.d.ts +1 -0
- package/dist/utils/has-social-provider-env-config.spec.js +34 -0
- package/dist/utils/has-social-provider-env-config.spec.js.map +1 -0
- package/dist/utils/is-env-true.d.ts +1 -0
- package/dist/utils/is-env-true.js +7 -0
- package/dist/utils/is-env-true.js.map +1 -0
- package/dist/utils/is-env-true.spec.d.ts +1 -0
- package/dist/utils/is-env-true.spec.js +20 -0
- package/dist/utils/is-env-true.spec.js.map +1 -0
- package/dist/utils/oidc.constants.d.ts +5 -0
- package/dist/utils/oidc.constants.js +27 -0
- package/dist/utils/oidc.constants.js.map +1 -0
- package/dist/utils/resolve-oidc-prompt.d.ts +2 -0
- package/dist/utils/resolve-oidc-prompt.js +16 -0
- package/dist/utils/resolve-oidc-prompt.js.map +1 -0
- package/dist/utils/resolve-oidc-prompt.spec.d.ts +1 -0
- package/dist/utils/resolve-oidc-prompt.spec.js +28 -0
- package/dist/utils/resolve-oidc-prompt.spec.js.map +1 -0
- package/dist/utils/resolve-oidc-scopes.d.ts +1 -0
- package/dist/utils/resolve-oidc-scopes.js +10 -0
- package/dist/utils/resolve-oidc-scopes.js.map +1 -0
- package/dist/utils/resolve-oidc-scopes.spec.d.ts +1 -0
- package/dist/utils/resolve-oidc-scopes.spec.js +16 -0
- package/dist/utils/resolve-oidc-scopes.spec.js.map +1 -0
- package/dist/utils/resolve-required-oidc-env.d.ts +2 -0
- package/dist/utils/resolve-required-oidc-env.js +12 -0
- package/dist/utils/resolve-required-oidc-env.js.map +1 -0
- package/dist/utils/resolve-required-oidc-env.spec.d.ts +1 -0
- package/dist/utils/resolve-required-oidc-env.spec.js +22 -0
- package/dist/utils/resolve-required-oidc-env.spec.js.map +1 -0
- package/dist/utils/resolve-required-social-provider-env.d.ts +2 -0
- package/dist/utils/resolve-required-social-provider-env.js +15 -0
- package/dist/utils/resolve-required-social-provider-env.js.map +1 -0
- package/dist/utils/resolve-required-social-provider-env.spec.d.ts +1 -0
- package/dist/utils/resolve-required-social-provider-env.spec.js +29 -0
- package/dist/utils/resolve-required-social-provider-env.spec.js.map +1 -0
- package/dist/utils/resolve-secret.d.ts +2 -0
- package/dist/utils/resolve-secret.js +27 -0
- package/dist/utils/resolve-secret.js.map +1 -0
- package/dist/utils/resolve-secret.spec.d.ts +1 -0
- package/dist/utils/resolve-secret.spec.js +34 -0
- package/dist/utils/resolve-secret.spec.js.map +1 -0
- package/dist/utils/resolve-social-provider-enabled.d.ts +2 -0
- package/dist/utils/resolve-social-provider-enabled.js +9 -0
- package/dist/utils/resolve-social-provider-enabled.js.map +1 -0
- package/dist/utils/resolve-social-provider-enabled.spec.d.ts +1 -0
- package/dist/utils/resolve-social-provider-enabled.spec.js +20 -0
- package/dist/utils/resolve-social-provider-enabled.spec.js.map +1 -0
- package/dist/utils/social-provider.constants.d.ts +22 -0
- package/dist/utils/social-provider.constants.js +34 -0
- package/dist/utils/social-provider.constants.js.map +1 -0
- package/package.json +9 -8
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const auth_transaction_context_1 = require("./auth.transaction-context");
|
|
4
|
+
describe("AuthTransactionContext", () => {
|
|
5
|
+
it("should store entries and escape SQL values", () => {
|
|
6
|
+
const context = new auth_transaction_context_1.AuthTransactionContext()
|
|
7
|
+
.set("user_id", "user-1")
|
|
8
|
+
.set("tenant_id", "tenant's");
|
|
9
|
+
expect(context.entries()).toEqual([
|
|
10
|
+
["user_id", "user-1"],
|
|
11
|
+
["tenant_id", "tenant's"],
|
|
12
|
+
]);
|
|
13
|
+
expect(context.toSQL()).toBe("SELECT set_config('auth.user_id', 'user-1', true),set_config('auth.tenant_id', 'tenant''s', true);");
|
|
14
|
+
});
|
|
15
|
+
it.each(["", "_user", "user_", "user__id", "userId", "user-Id"])("should reject invalid snake_case key %s", (key) => {
|
|
16
|
+
const context = new auth_transaction_context_1.AuthTransactionContext();
|
|
17
|
+
expect(() => context.set(key, "value")).toThrow("Key must only contain lowercase letters and underscores");
|
|
18
|
+
});
|
|
19
|
+
});
|
|
20
|
+
//# sourceMappingURL=auth.transaction-context.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.transaction-context.spec.js","sourceRoot":"","sources":["../src/auth.transaction-context.spec.ts"],"names":[],"mappings":";;AAAA,yEAAoE;AAEpE,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACtC,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,OAAO,GAAG,IAAI,iDAAsB,EAAE;aACzC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC;aACxB,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QAEhC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC;YAChC,CAAC,SAAS,EAAE,QAAQ,CAAC;YACrB,CAAC,WAAW,EAAE,UAAU,CAAC;SAC1B,CAAC,CAAC;QACH,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAC1B,oGAAoG,CACrG,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAC9D,yCAAyC,EACzC,CAAC,GAAG,EAAE,EAAE;QACN,MAAM,OAAO,GAAG,IAAI,iDAAsB,EAAE,CAAC;QAE7C,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAY,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CACtD,yDAAyD,CAC1D,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
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
|
+
const auth_constants_1 = require("../auth.constants");
|
|
37
|
+
const entities_1 = require("../entities");
|
|
38
|
+
const decorators = __importStar(require("./index"));
|
|
39
|
+
const public_decorator_1 = require("./public.decorator");
|
|
40
|
+
describe("auth decorators", () => {
|
|
41
|
+
it("should export public decorator helpers", () => {
|
|
42
|
+
expect(decorators.Public).toBe(public_decorator_1.Public);
|
|
43
|
+
expect(decorators.CurrentSession).toBeDefined();
|
|
44
|
+
expect(decorators.CurrentUser).toBeDefined();
|
|
45
|
+
});
|
|
46
|
+
it("should create metadata decorators for public routes", () => {
|
|
47
|
+
const descriptor = {
|
|
48
|
+
value: () => undefined,
|
|
49
|
+
};
|
|
50
|
+
class TestController {
|
|
51
|
+
}
|
|
52
|
+
(0, public_decorator_1.Public)(false)(TestController.prototype, "handler", descriptor);
|
|
53
|
+
expect(Reflect.getMetadata(auth_constants_1.IS_PUBLIC_KEY, descriptor.value)).toBe(false);
|
|
54
|
+
});
|
|
55
|
+
it("should resolve current user and session from request context", () => {
|
|
56
|
+
const user = new entities_1.BaseUser();
|
|
57
|
+
const session = new entities_1.BaseSession();
|
|
58
|
+
const get = jest.fn((token) => {
|
|
59
|
+
if (token.name === "BaseUser")
|
|
60
|
+
return user;
|
|
61
|
+
if (token.name === "BaseSession")
|
|
62
|
+
return session;
|
|
63
|
+
return undefined;
|
|
64
|
+
});
|
|
65
|
+
jest.isolateModules(() => {
|
|
66
|
+
jest.doMock("@nest-boot/request-context", () => ({
|
|
67
|
+
RequestContext: {
|
|
68
|
+
get,
|
|
69
|
+
},
|
|
70
|
+
}));
|
|
71
|
+
jest.doMock("@nestjs/common", () => {
|
|
72
|
+
const actual = jest.requireActual("@nestjs/common");
|
|
73
|
+
return {
|
|
74
|
+
...actual,
|
|
75
|
+
createParamDecorator: (factory) => factory,
|
|
76
|
+
};
|
|
77
|
+
});
|
|
78
|
+
const { CurrentUser } = jest.requireActual("./current-user.decorator");
|
|
79
|
+
const { CurrentSession } = jest.requireActual("./current-session.decorator");
|
|
80
|
+
expect(CurrentUser()).toBe(user);
|
|
81
|
+
expect(CurrentSession()).toBe(session);
|
|
82
|
+
jest.dontMock("@nest-boot/request-context");
|
|
83
|
+
jest.dontMock("@nestjs/common");
|
|
84
|
+
});
|
|
85
|
+
});
|
|
86
|
+
});
|
|
87
|
+
//# sourceMappingURL=auth.decorators.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.decorators.spec.js","sourceRoot":"","sources":["../../src/decorators/auth.decorators.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sDAAkD;AAClD,0CAAoD;AACpD,oDAAsC;AACtC,yDAA4C;AAE5C,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,yBAAM,CAAC,CAAC;QACvC,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,WAAW,EAAE,CAAC;QAChD,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,UAAU,GAAG;YACjB,KAAK,EAAE,GAAG,EAAE,CAAC,SAAS;SACvB,CAAC;QACF,MAAM,cAAc;SAAG;QAEvB,IAAA,yBAAM,EAAC,KAAK,CAAC,CACX,cAAc,CAAC,SAAS,EACxB,SAAS,EACT,UAAgC,CACjC,CAAC;QAEF,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,8BAAa,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;QACtE,MAAM,IAAI,GAAG,IAAI,mBAAQ,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,IAAI,sBAAW,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,KAAwB,EAAE,EAAE;YAC/C,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU;gBAAE,OAAO,IAAI,CAAC;YAC3C,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa;gBAAE,OAAO,OAAO,CAAC;YACjD,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE;YACvB,IAAI,CAAC,MAAM,CAAC,4BAA4B,EAAE,GAAG,EAAE,CAAC,CAAC;gBAC/C,cAAc,EAAE;oBACd,GAAG;iBACJ;aACF,CAAC,CAAC,CAAC;YACJ,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,GAAG,EAAE;gBACjC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;gBAEpD,OAAO;oBACL,GAAG,MAAM;oBACT,oBAAoB,EAAE,CAAC,OAAsB,EAAE,EAAE,CAAC,OAAO;iBAC1D,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,aAAa,CAExC,0BAA0B,CAAC,CAAC;YAC9B,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,aAAa,CAE3C,6BAA6B,CAAC,CAAC;YAEjC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvC,IAAI,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC;YAC5C,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const account_entity_1 = require("./account.entity");
|
|
4
|
+
const session_entity_1 = require("./session.entity");
|
|
5
|
+
const user_entity_1 = require("./user.entity");
|
|
6
|
+
const verification_entity_1 = require("./verification.entity");
|
|
7
|
+
class TestAccount extends account_entity_1.BaseAccount {
|
|
8
|
+
}
|
|
9
|
+
class TestVerification extends verification_entity_1.BaseVerification {
|
|
10
|
+
}
|
|
11
|
+
describe("auth entities", () => {
|
|
12
|
+
it("should initialize generated ids and timestamps", () => {
|
|
13
|
+
const account = new TestAccount();
|
|
14
|
+
const session = new session_entity_1.BaseSession();
|
|
15
|
+
const user = new user_entity_1.BaseUser();
|
|
16
|
+
const verification = new TestVerification();
|
|
17
|
+
for (const entity of [account, session, user, verification]) {
|
|
18
|
+
expect(entity.id).toEqual(expect.any(String));
|
|
19
|
+
expect(entity.createdAt).toBeInstanceOf(Date);
|
|
20
|
+
expect(entity.updatedAt).toBeInstanceOf(Date);
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
it("should emit decorator metadata when Opt exists at runtime", () => {
|
|
24
|
+
jest.isolateModules(() => {
|
|
25
|
+
jest.doMock("@mikro-orm/core", () => {
|
|
26
|
+
const actual = jest.requireActual("@mikro-orm/core");
|
|
27
|
+
return {
|
|
28
|
+
...actual,
|
|
29
|
+
Opt: function Opt() {
|
|
30
|
+
return undefined;
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
});
|
|
34
|
+
expect(jest.requireActual("./account.entity").BaseAccount).toBeDefined();
|
|
35
|
+
expect(jest.requireActual("./session.entity").BaseSession).toBeDefined();
|
|
36
|
+
expect(jest.requireActual("./user.entity")
|
|
37
|
+
.BaseUser).toBeDefined();
|
|
38
|
+
expect(jest.requireActual("./verification.entity").BaseVerification).toBeDefined();
|
|
39
|
+
jest.dontMock("@mikro-orm/core");
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
it("should pass relation and update callbacks to MikroORM decorators", () => {
|
|
43
|
+
const relationTargets = [];
|
|
44
|
+
const updateValues = [];
|
|
45
|
+
const decorator = () => () => undefined;
|
|
46
|
+
jest.isolateModules(() => {
|
|
47
|
+
jest.doMock("@mikro-orm/core", () => {
|
|
48
|
+
const actual = jest.requireActual("@mikro-orm/core");
|
|
49
|
+
return {
|
|
50
|
+
...actual,
|
|
51
|
+
Entity: decorator,
|
|
52
|
+
ManyToOne: (target) => {
|
|
53
|
+
relationTargets.push(target());
|
|
54
|
+
return () => undefined;
|
|
55
|
+
},
|
|
56
|
+
Opt: function Opt() {
|
|
57
|
+
return undefined;
|
|
58
|
+
},
|
|
59
|
+
PrimaryKey: decorator,
|
|
60
|
+
Property: (options = {}) => {
|
|
61
|
+
if (options.onUpdate) {
|
|
62
|
+
updateValues.push(options.onUpdate());
|
|
63
|
+
}
|
|
64
|
+
return () => undefined;
|
|
65
|
+
},
|
|
66
|
+
Unique: decorator,
|
|
67
|
+
};
|
|
68
|
+
});
|
|
69
|
+
jest.requireActual("./account.entity");
|
|
70
|
+
jest.requireActual("./session.entity");
|
|
71
|
+
jest.requireActual("./user.entity");
|
|
72
|
+
jest.requireActual("./verification.entity");
|
|
73
|
+
jest.dontMock("@mikro-orm/core");
|
|
74
|
+
});
|
|
75
|
+
expect(relationTargets).toEqual(["User", "User"]);
|
|
76
|
+
expect(updateValues).toHaveLength(4);
|
|
77
|
+
expect(updateValues.every((value) => value instanceof Date)).toBe(true);
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
//# sourceMappingURL=entities.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entities.spec.js","sourceRoot":"","sources":["../../src/entities/entities.spec.ts"],"names":[],"mappings":";;AAAA,qDAA+C;AAC/C,qDAA+C;AAC/C,+CAAyC;AACzC,+DAAyD;AAEzD,MAAM,WAAY,SAAQ,4BAAW;CAAG;AACxC,MAAM,gBAAiB,SAAQ,sCAAgB;CAAG;AAElD,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;QACxD,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,IAAI,4BAAW,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,IAAI,sBAAQ,EAAE,CAAC;QAC5B,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;QAE5C,KAAK,MAAM,MAAM,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,EAAE,CAAC;YAC5D,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;YAC9C,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAC9C,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACnE,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE;YACvB,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,GAAG,EAAE;gBAClC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;gBAErD,OAAO;oBACL,GAAG,MAAM;oBACT,GAAG,EAAE,SAAS,GAAG;wBACf,OAAO,SAAS,CAAC;oBACnB,CAAC;iBACF,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,MAAM,CACJ,IAAI,CAAC,aAAa,CAChB,kBAAkB,CACnB,CAAC,WAAW,CACd,CAAC,WAAW,EAAE,CAAC;YAChB,MAAM,CACJ,IAAI,CAAC,aAAa,CAChB,kBAAkB,CACnB,CAAC,WAAW,CACd,CAAC,WAAW,EAAE,CAAC;YAChB,MAAM,CACJ,IAAI,CAAC,aAAa,CAAiC,eAAe,CAAC;iBAChE,QAAQ,CACZ,CAAC,WAAW,EAAE,CAAC;YAChB,MAAM,CACJ,IAAI,CAAC,aAAa,CAChB,uBAAuB,CACxB,CAAC,gBAAgB,CACnB,CAAC,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC1E,MAAM,eAAe,GAAc,EAAE,CAAC;QACtC,MAAM,YAAY,GAAc,EAAE,CAAC;QACnC,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;QAExC,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE;YACvB,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,GAAG,EAAE;gBAClC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;gBAErD,OAAO;oBACL,GAAG,MAAM;oBACT,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,CAAC,MAAqB,EAAE,EAAE;wBACnC,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;wBAC/B,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC;oBACzB,CAAC;oBACD,GAAG,EAAE,SAAS,GAAG;wBACf,OAAO,SAAS,CAAC;oBACnB,CAAC;oBACD,UAAU,EAAE,SAAS;oBACrB,QAAQ,EAAE,CAAC,UAAwC,EAAE,EAAE,EAAE;wBACvD,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;4BACrB,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;wBACxC,CAAC;wBACD,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC;oBACzB,CAAC;oBACD,MAAM,EAAE,SAAS;iBAClB,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,aAAa,CAAoC,kBAAkB,CAAC,CAAC;YAC1E,IAAI,CAAC,aAAa,CAAoC,kBAAkB,CAAC,CAAC;YAC1E,IAAI,CAAC,aAAa,CAAiC,eAAe,CAAC,CAAC;YACpE,IAAI,CAAC,aAAa,CAChB,uBAAuB,CACxB,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAClD,MAAM,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,YAAY,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
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
|
+
jest.mock("better-auth", () => ({
|
|
37
|
+
betterAuth: jest.fn(),
|
|
38
|
+
}));
|
|
39
|
+
jest.mock("better-auth/node", () => ({
|
|
40
|
+
toNodeHandler: jest.fn(),
|
|
41
|
+
}));
|
|
42
|
+
jest.mock("better-auth/plugins", () => ({
|
|
43
|
+
genericOAuth: jest.fn(),
|
|
44
|
+
}));
|
|
45
|
+
jest.mock("./adapters/mikro-orm-adapter", () => ({
|
|
46
|
+
mikroOrmAdapter: jest.fn(),
|
|
47
|
+
}));
|
|
48
|
+
const publicApi = __importStar(require("."));
|
|
49
|
+
const auth_constants_1 = require("./auth.constants");
|
|
50
|
+
const auth_guard_1 = require("./auth.guard");
|
|
51
|
+
const auth_middleware_1 = require("./auth.middleware");
|
|
52
|
+
const auth_module_1 = require("./auth.module");
|
|
53
|
+
const auth_service_1 = require("./auth.service");
|
|
54
|
+
const auth_transaction_context_1 = require("./auth.transaction-context");
|
|
55
|
+
const decorators_1 = require("./decorators");
|
|
56
|
+
const entities_1 = require("./entities");
|
|
57
|
+
describe("public API", () => {
|
|
58
|
+
it("should export auth modules, services, decorators, and entities", () => {
|
|
59
|
+
expect(publicApi.AUTH_TOKEN).toBe(auth_constants_1.AUTH_TOKEN);
|
|
60
|
+
expect(publicApi.IS_PUBLIC_KEY).toBe(auth_constants_1.IS_PUBLIC_KEY);
|
|
61
|
+
expect(publicApi.AuthGuard).toBe(auth_guard_1.AuthGuard);
|
|
62
|
+
expect(publicApi.AuthMiddleware).toBe(auth_middleware_1.AuthMiddleware);
|
|
63
|
+
expect(publicApi.AuthModule).toBe(auth_module_1.AuthModule);
|
|
64
|
+
expect(publicApi.AuthService).toBe(auth_service_1.AuthService);
|
|
65
|
+
expect(publicApi.AuthTransactionContext).toBe(auth_transaction_context_1.AuthTransactionContext);
|
|
66
|
+
expect(publicApi.Public).toBe(decorators_1.Public);
|
|
67
|
+
expect(publicApi.BaseAccount).toBe(entities_1.BaseAccount);
|
|
68
|
+
expect(publicApi.BaseSession).toBe(entities_1.BaseSession);
|
|
69
|
+
expect(publicApi.BaseUser).toBe(entities_1.BaseUser);
|
|
70
|
+
expect(publicApi.BaseVerification).toBe(entities_1.BaseVerification);
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
//# sourceMappingURL=index.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.spec.js","sourceRoot":"","sources":["../src/index.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;IAC9B,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE;CACtB,CAAC,CAAC,CAAC;AACJ,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC,CAAC;IACnC,aAAa,EAAE,IAAI,CAAC,EAAE,EAAE;CACzB,CAAC,CAAC,CAAC;AACJ,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,GAAG,EAAE,CAAC,CAAC;IACtC,YAAY,EAAE,IAAI,CAAC,EAAE,EAAE;CACxB,CAAC,CAAC,CAAC;AACJ,IAAI,CAAC,IAAI,CAAC,8BAA8B,EAAE,GAAG,EAAE,CAAC,CAAC;IAC/C,eAAe,EAAE,IAAI,CAAC,EAAE,EAAE;CAC3B,CAAC,CAAC,CAAC;AAEJ,6CAA+B;AAC/B,qDAA6D;AAC7D,6CAAyC;AACzC,uDAAmD;AACnD,+CAA2C;AAC3C,iDAA6C;AAC7C,yEAAoE;AACpE,6CAAsC;AACtC,yCAKoB;AAEpB,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACxE,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,2BAAU,CAAC,CAAC;QAC9C,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,8BAAa,CAAC,CAAC;QACpD,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,sBAAS,CAAC,CAAC;QAC5C,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,gCAAc,CAAC,CAAC;QACtD,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,wBAAU,CAAC,CAAC;QAC9C,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,0BAAW,CAAC,CAAC;QAChD,MAAM,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC,IAAI,CAAC,iDAAsB,CAAC,CAAC;QACtE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,mBAAM,CAAC,CAAC;QACtC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,sBAAW,CAAC,CAAC;QAChD,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,sBAAW,CAAC,CAAC;QAChD,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,mBAAQ,CAAC,CAAC;QAC1C,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,2BAAgB,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|