@punks/backend-entity-manager 0.0.67 → 0.0.69
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/cjs/index.js +266 -52
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/integrations/repository/typeorm/queryBuilder.d.ts +1 -1
- package/dist/cjs/types/platforms/nest/__test__/server/app/auth/auth.test-controller.d.ts +11 -0
- package/dist/cjs/types/platforms/nest/__test__/server/app/auth/services/auth.roles.service.d.ts +12 -0
- package/dist/cjs/types/platforms/nest/__test__/server/app/auth/{user.service.d.ts → services/auth.user.service.d.ts} +7 -7
- package/dist/cjs/types/platforms/nest/__test__/server/app/auth/services/auth.userRoles.service.d.ts +20 -0
- package/dist/cjs/types/platforms/nest/__test__/server/app/auth/services/index.d.ts +4 -0
- package/dist/cjs/types/platforms/nest/__test__/server/entities/roles/role.manager.d.ts +1 -0
- package/dist/cjs/types/platforms/nest/__test__/server/entities/roles/role.models.d.ts +1 -0
- package/dist/cjs/types/platforms/nest/__test__/server/entities/roles/role.query.d.ts +3 -2
- package/dist/cjs/types/platforms/nest/__test__/server/entities/userRoles/userRole.models.d.ts +2 -0
- package/dist/cjs/types/platforms/nest/__test__/server/entities/userRoles/userRole.query.d.ts +2 -1
- package/dist/cjs/types/platforms/nest/__test__/server/index.d.ts +2 -2
- package/dist/cjs/types/platforms/nest/__test__/tests/authentication/test_auth_guards.test.d.ts +1 -0
- package/dist/cjs/types/platforms/nest/__test__/tests/authentication/test_auth_jwt.test.d.ts +1 -0
- package/dist/cjs/types/platforms/nest/extensions/authentication/abstractions/index.d.ts +26 -4
- package/dist/cjs/types/platforms/nest/extensions/authentication/decorators/guards.d.ts +4 -0
- package/dist/cjs/types/platforms/nest/extensions/authentication/decorators/index.d.ts +3 -0
- package/dist/cjs/types/platforms/nest/extensions/authentication/decorators/rolesService.d.ts +1 -0
- package/dist/cjs/types/platforms/nest/extensions/authentication/decorators/symbols.d.ts +8 -0
- package/dist/cjs/types/platforms/nest/extensions/authentication/decorators/userRolesService.d.ts +1 -0
- package/dist/cjs/types/platforms/nest/extensions/authentication/guards/auth.d.ts +13 -0
- package/dist/cjs/types/platforms/nest/extensions/authentication/guards/index.d.ts +1 -0
- package/dist/cjs/types/platforms/nest/extensions/authentication/handlers/user-register/types.d.ts +1 -0
- package/dist/cjs/types/platforms/nest/extensions/authentication/index.d.ts +1 -0
- package/dist/cjs/types/platforms/nest/extensions/authentication/initializer/index.d.ts +5 -0
- package/dist/cjs/types/platforms/nest/extensions/authentication/middlewares/authentication/index.d.ts +10 -0
- package/dist/cjs/types/platforms/nest/extensions/authentication/module.d.ts +3 -2
- package/dist/cjs/types/platforms/nest/extensions/authentication/resolver/index.d.ts +7 -1
- package/dist/cjs/types/platforms/nest/extensions/authentication/services/authentication/index.d.ts +7 -2
- package/dist/cjs/types/platforms/nest/extensions/multi-tenancy/abstractions/models.d.ts +2 -0
- package/dist/cjs/types/platforms/nest/extensions/multi-tenancy/base/initializer/index.d.ts +6 -0
- package/dist/cjs/types/platforms/nest/extensions/multi-tenancy/processors/providers.d.ts +1 -0
- package/dist/cjs/types/platforms/nest/extensions/multi-tenancy/services/index.d.ts +2 -0
- package/dist/cjs/types/platforms/nest/extensions/multi-tenancy/services/organization-initializer/index.d.ts +8 -0
- package/dist/cjs/types/platforms/nest/extensions/multi-tenancy/services/providers.d.ts +3 -0
- package/dist/cjs/types/platforms/nest/extensions/multi-tenancy/services/tenant-initializer/index.d.ts +8 -0
- package/dist/cjs/types/platforms/nest/extensions/multi-tenancy/symbols/index.d.ts +10 -0
- package/dist/cjs/types/platforms/nest/extensions/multi-tenancy/types/index.d.ts +1 -0
- package/dist/cjs/types/platforms/nest/extensions/multi-tenancy/types/templates.d.ts +20 -0
- package/dist/esm/index.js +261 -53
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/integrations/repository/typeorm/queryBuilder.d.ts +1 -1
- package/dist/esm/types/platforms/nest/__test__/server/app/auth/auth.test-controller.d.ts +11 -0
- package/dist/esm/types/platforms/nest/__test__/server/app/auth/services/auth.roles.service.d.ts +12 -0
- package/dist/esm/types/platforms/nest/__test__/server/app/auth/{user.service.d.ts → services/auth.user.service.d.ts} +7 -7
- package/dist/esm/types/platforms/nest/__test__/server/app/auth/services/auth.userRoles.service.d.ts +20 -0
- package/dist/esm/types/platforms/nest/__test__/server/app/auth/services/index.d.ts +4 -0
- package/dist/esm/types/platforms/nest/__test__/server/entities/roles/role.manager.d.ts +1 -0
- package/dist/esm/types/platforms/nest/__test__/server/entities/roles/role.models.d.ts +1 -0
- package/dist/esm/types/platforms/nest/__test__/server/entities/roles/role.query.d.ts +3 -2
- package/dist/esm/types/platforms/nest/__test__/server/entities/userRoles/userRole.models.d.ts +2 -0
- package/dist/esm/types/platforms/nest/__test__/server/entities/userRoles/userRole.query.d.ts +2 -1
- package/dist/esm/types/platforms/nest/__test__/server/index.d.ts +2 -2
- package/dist/esm/types/platforms/nest/__test__/tests/authentication/test_auth_guards.test.d.ts +1 -0
- package/dist/esm/types/platforms/nest/__test__/tests/authentication/test_auth_jwt.test.d.ts +1 -0
- package/dist/esm/types/platforms/nest/extensions/authentication/abstractions/index.d.ts +26 -4
- package/dist/esm/types/platforms/nest/extensions/authentication/decorators/guards.d.ts +4 -0
- package/dist/esm/types/platforms/nest/extensions/authentication/decorators/index.d.ts +3 -0
- package/dist/esm/types/platforms/nest/extensions/authentication/decorators/rolesService.d.ts +1 -0
- package/dist/esm/types/platforms/nest/extensions/authentication/decorators/symbols.d.ts +8 -0
- package/dist/esm/types/platforms/nest/extensions/authentication/decorators/userRolesService.d.ts +1 -0
- package/dist/esm/types/platforms/nest/extensions/authentication/guards/auth.d.ts +13 -0
- package/dist/esm/types/platforms/nest/extensions/authentication/guards/index.d.ts +1 -0
- package/dist/esm/types/platforms/nest/extensions/authentication/handlers/user-register/types.d.ts +1 -0
- package/dist/esm/types/platforms/nest/extensions/authentication/index.d.ts +1 -0
- package/dist/esm/types/platforms/nest/extensions/authentication/initializer/index.d.ts +5 -0
- package/dist/esm/types/platforms/nest/extensions/authentication/middlewares/authentication/index.d.ts +10 -0
- package/dist/esm/types/platforms/nest/extensions/authentication/module.d.ts +3 -2
- package/dist/esm/types/platforms/nest/extensions/authentication/resolver/index.d.ts +7 -1
- package/dist/esm/types/platforms/nest/extensions/authentication/services/authentication/index.d.ts +7 -2
- package/dist/esm/types/platforms/nest/extensions/multi-tenancy/abstractions/models.d.ts +2 -0
- package/dist/esm/types/platforms/nest/extensions/multi-tenancy/base/initializer/index.d.ts +6 -0
- package/dist/esm/types/platforms/nest/extensions/multi-tenancy/processors/providers.d.ts +1 -0
- package/dist/esm/types/platforms/nest/extensions/multi-tenancy/services/index.d.ts +2 -0
- package/dist/esm/types/platforms/nest/extensions/multi-tenancy/services/organization-initializer/index.d.ts +8 -0
- package/dist/esm/types/platforms/nest/extensions/multi-tenancy/services/providers.d.ts +3 -0
- package/dist/esm/types/platforms/nest/extensions/multi-tenancy/services/tenant-initializer/index.d.ts +8 -0
- package/dist/esm/types/platforms/nest/extensions/multi-tenancy/symbols/index.d.ts +10 -0
- package/dist/esm/types/platforms/nest/extensions/multi-tenancy/types/index.d.ts +1 -0
- package/dist/esm/types/platforms/nest/extensions/multi-tenancy/types/templates.d.ts +20 -0
- package/dist/index.d.ts +70 -10
- package/package.json +1 -1
|
@@ -10,7 +10,7 @@ export declare abstract class TypeOrmQueryBuilder<TEntity extends ObjectLiteral,
|
|
|
10
10
|
constructor(services: EntityServiceLocator<TEntity, unknown>);
|
|
11
11
|
search(request: TEntitySearchParameters, context?: IAuthenticationContext<TUserContext>): Promise<IEntitiesSearchResults<TEntitySearchParameters, TEntity, TSorting, number, TFacets>>;
|
|
12
12
|
protected findPagedQueryResults(request: TEntitySearchParameters, context?: IAuthenticationContext<TUserContext>): Promise<TEntity[]>;
|
|
13
|
-
protected getRelationsToLoad(request: TEntitySearchParameters, context
|
|
13
|
+
protected getRelationsToLoad(request: TEntitySearchParameters, context: IAuthenticationContext<TUserContext> | undefined): FindOptionsRelations<TEntity> | undefined;
|
|
14
14
|
protected buildPagingParameters(request: TEntitySearchParameters): {
|
|
15
15
|
skip: number | undefined;
|
|
16
16
|
take: number | undefined;
|
package/dist/esm/types/platforms/nest/__test__/server/app/auth/services/auth.roles.service.d.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { IAuthRoleService } from "../../../../../extensions";
|
|
2
|
+
import { RoleEntityManager } from "../../../entities/roles/role.manager";
|
|
3
|
+
import { RoleEntity } from "../../../database/core/entities/role.entity";
|
|
4
|
+
export declare class AuthRolesService implements IAuthRoleService<RoleEntity> {
|
|
5
|
+
private readonly rolesManager;
|
|
6
|
+
constructor(rolesManager: RoleEntityManager);
|
|
7
|
+
create(data: Partial<RoleEntity>): Promise<RoleEntity>;
|
|
8
|
+
update(id: string, data: Partial<RoleEntity>): Promise<void>;
|
|
9
|
+
delete(id: string): Promise<void>;
|
|
10
|
+
getById(id: string): Promise<RoleEntity | undefined>;
|
|
11
|
+
getByUid(uid: string): Promise<RoleEntity | undefined>;
|
|
12
|
+
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { IAuthUserService } from "
|
|
2
|
-
import { UserEntity } from "
|
|
3
|
-
import { UserEntityManager } from "
|
|
4
|
-
import { AppUserContext } from "
|
|
5
|
-
import { UserRegistrationData } from "
|
|
6
|
-
import { OrganizationEntityManager } from "
|
|
7
|
-
import { UserProfileEntityManager } from "
|
|
1
|
+
import { IAuthUserService } from "../../../../../extensions";
|
|
2
|
+
import { UserEntity } from "../../../database/core/entities/user.entity";
|
|
3
|
+
import { UserEntityManager } from "../../../entities/users/user.manager";
|
|
4
|
+
import { AppUserContext } from "../../../infrastructure/authentication";
|
|
5
|
+
import { UserRegistrationData } from "./../auth.dto";
|
|
6
|
+
import { OrganizationEntityManager } from "../../../entities/organizations/organization.manager";
|
|
7
|
+
import { UserProfileEntityManager } from "../../../entities/userProfiles/userProfile.manager";
|
|
8
8
|
export declare class AuthUserService implements IAuthUserService<UserEntity, AppUserContext, UserRegistrationData> {
|
|
9
9
|
private readonly userManager;
|
|
10
10
|
private readonly userProfileManager;
|
package/dist/esm/types/platforms/nest/__test__/server/app/auth/services/auth.userRoles.service.d.ts
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { IAuthUserRolesService } from "../../../../../extensions";
|
|
2
|
+
import { UserEntityManager } from "../../../entities/users/user.manager";
|
|
3
|
+
import { UserRoleEntityManager } from "../../../entities/userRoles/userRole.manager";
|
|
4
|
+
import { RoleEntityManager } from "../../../entities/roles/role.manager";
|
|
5
|
+
import { RoleEntity } from "../../../database/core/entities/role.entity";
|
|
6
|
+
import { UserEntity } from "../../../database/core/entities/user.entity";
|
|
7
|
+
export declare class AuthUserRolesService implements IAuthUserRolesService<UserEntity, RoleEntity> {
|
|
8
|
+
private readonly rolesManager;
|
|
9
|
+
private readonly userManager;
|
|
10
|
+
private readonly userRoleManager;
|
|
11
|
+
constructor(rolesManager: RoleEntityManager, userManager: UserEntityManager, userRoleManager: UserRoleEntityManager);
|
|
12
|
+
getRoleUsers(roleId: string): Promise<UserEntity[]>;
|
|
13
|
+
getUserRoles(userId: string): Promise<RoleEntity[]>;
|
|
14
|
+
getUserRolesByUid(roleUid: string): Promise<RoleEntity[]>;
|
|
15
|
+
addUserToRole(userId: string, roleId: string): Promise<void>;
|
|
16
|
+
addUserToRoleByUid(userId: string, roleUid: string): Promise<void>;
|
|
17
|
+
removeUserFromRole(userId: string, roleId: string): Promise<void>;
|
|
18
|
+
removeUserFromRoleByUid(userId: string, roleUid: string): Promise<void>;
|
|
19
|
+
clearUserRoles(userId: string): Promise<RoleEntity[]>;
|
|
20
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { AuthRolesService } from "./auth.roles.service";
|
|
2
|
+
import { AuthUserService } from "./auth.user.service";
|
|
3
|
+
import { AuthUserRolesService } from "./auth.userRoles.service";
|
|
4
|
+
export declare const AuthServices: (typeof AuthRolesService | typeof AuthUserService | typeof AuthUserRolesService)[];
|
|
@@ -3,4 +3,5 @@ import { RoleCreateData, RoleCursor, RoleEntityId, RoleFacets, RoleSearchParamet
|
|
|
3
3
|
import { RoleEntity } from "../../database/core/entities/role.entity";
|
|
4
4
|
export declare class RoleEntityManager extends NestEntityManager<RoleEntity, RoleEntityId, RoleCreateData, RoleUpdateData, RoleSearchParameters, RoleSorting, RoleCursor, RoleFacets> {
|
|
5
5
|
constructor(registry: EntityManagerRegistry);
|
|
6
|
+
getByUid(uid: string): Promise<RoleEntity | undefined>;
|
|
6
7
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FindOptionsWhere } from "typeorm";
|
|
1
|
+
import { FindOptionsRelations, FindOptionsWhere } from "typeorm";
|
|
2
2
|
import { IAuthenticationContext, EntityManagerRegistry, NestTypeOrmQueryBuilder } from "../../../../../..";
|
|
3
3
|
import { RoleEntity } from "../../database/core/entities/role.entity";
|
|
4
4
|
import { RoleFacets, RoleSearchParameters, RoleSorting } from "./role.models";
|
|
@@ -6,6 +6,7 @@ import { AppAuthContext } from "../../infrastructure/authentication/types";
|
|
|
6
6
|
export declare class RoleQueryBuilder extends NestTypeOrmQueryBuilder<RoleEntity, RoleSearchParameters, RoleSorting, RoleFacets, AppAuthContext> {
|
|
7
7
|
constructor(registry: EntityManagerRegistry);
|
|
8
8
|
protected buildContextFilter(context?: IAuthenticationContext<AppAuthContext> | undefined): FindOptionsWhere<RoleEntity> | FindOptionsWhere<RoleEntity>[];
|
|
9
|
-
protected buildWhereClause(request: RoleSearchParameters): FindOptionsWhere<RoleEntity> | FindOptionsWhere<RoleEntity>[];
|
|
9
|
+
protected buildWhereClause(request: RoleSearchParameters, context?: IAuthenticationContext<AppAuthContext> | undefined): FindOptionsWhere<RoleEntity> | FindOptionsWhere<RoleEntity>[];
|
|
10
10
|
protected calculateFacets(request: RoleSearchParameters): Promise<RoleFacets | undefined>;
|
|
11
|
+
protected getRelationsToLoad(request: RoleSearchParameters, context?: IAuthenticationContext<AppAuthContext> | undefined): FindOptionsRelations<RoleEntity> | undefined;
|
|
11
12
|
}
|
package/dist/esm/types/platforms/nest/__test__/server/entities/userRoles/userRole.query.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FindOptionsWhere } from "typeorm";
|
|
1
|
+
import { FindOptionsRelations, FindOptionsWhere } from "typeorm";
|
|
2
2
|
import { IAuthenticationContext, EntityManagerRegistry, NestTypeOrmQueryBuilder } from "../../../../../..";
|
|
3
3
|
import { UserRoleEntity } from "../../database/core/entities/userRole.entity";
|
|
4
4
|
import { UserRoleFacets, UserRoleSearchParameters, UserRoleSorting } from "./userRole.models";
|
|
@@ -8,4 +8,5 @@ export declare class UserRoleQueryBuilder extends NestTypeOrmQueryBuilder<UserRo
|
|
|
8
8
|
protected buildContextFilter(context?: IAuthenticationContext<AppAuthContext> | undefined): FindOptionsWhere<UserRoleEntity> | FindOptionsWhere<UserRoleEntity>[];
|
|
9
9
|
protected buildWhereClause(request: UserRoleSearchParameters): FindOptionsWhere<UserRoleEntity> | FindOptionsWhere<UserRoleEntity>[];
|
|
10
10
|
protected calculateFacets(request: UserRoleSearchParameters): Promise<UserRoleFacets | undefined>;
|
|
11
|
+
protected getRelationsToLoad(request: UserRoleSearchParameters, context: IAuthenticationContext<AppAuthContext> | undefined): FindOptionsRelations<UserRoleEntity> | undefined;
|
|
11
12
|
}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { DataSource } from "typeorm";
|
|
2
1
|
export declare const createTestServer: (options?: {
|
|
3
2
|
createWebServer?: boolean;
|
|
4
3
|
serverStartPort?: number;
|
|
5
4
|
useAuthentication?: boolean;
|
|
5
|
+
useAuthorization?: boolean;
|
|
6
6
|
extraControllers?: any[];
|
|
7
7
|
extraProviders?: any[];
|
|
8
8
|
}) => Promise<{
|
|
9
9
|
app: import("@nestjs/common").INestApplication<any>;
|
|
10
10
|
server: import("@nestjs/testing").TestingModule;
|
|
11
|
-
dataSource: DataSource;
|
|
11
|
+
dataSource: import("typeorm").DataSource;
|
|
12
12
|
terminate: () => Promise<void>;
|
|
13
13
|
}>;
|
package/dist/esm/types/platforms/nest/__test__/tests/authentication/test_auth_guards.test.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
export interface IAuthService {
|
|
2
2
|
}
|
|
3
|
+
export interface IAuthRole {
|
|
4
|
+
id: string;
|
|
5
|
+
uid: string;
|
|
6
|
+
name: string;
|
|
7
|
+
}
|
|
3
8
|
export interface IAuthUserProfile {
|
|
4
9
|
firstName: string;
|
|
5
10
|
lastName: string;
|
|
@@ -25,6 +30,11 @@ export interface IAuthUser {
|
|
|
25
30
|
export interface IAuthUserContext {
|
|
26
31
|
organizationUid?: string;
|
|
27
32
|
}
|
|
33
|
+
export interface IAuthUserTokenData<TContext extends IAuthUserContext> {
|
|
34
|
+
userId: string;
|
|
35
|
+
email: string;
|
|
36
|
+
context?: TContext;
|
|
37
|
+
}
|
|
28
38
|
export interface IAuthUserService<TUser extends IAuthUser, TUserContext extends IAuthUserContext, TUserRegistrationInfo> {
|
|
29
39
|
getById(id: string): Promise<TUser>;
|
|
30
40
|
getByEmail(email: string, context?: TUserContext): Promise<TUser>;
|
|
@@ -33,8 +43,20 @@ export interface IAuthUserService<TUser extends IAuthUser, TUserContext extends
|
|
|
33
43
|
delete(id: string): Promise<void>;
|
|
34
44
|
create(email: string, data: TUserRegistrationInfo, context?: TUserContext): Promise<TUser>;
|
|
35
45
|
}
|
|
36
|
-
export interface
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
46
|
+
export interface IAuthRoleService<TRole extends IAuthRole> {
|
|
47
|
+
create(data: Partial<TRole>): Promise<TRole>;
|
|
48
|
+
update(id: string, data: Partial<TRole>): Promise<void>;
|
|
49
|
+
delete(id: string): Promise<void>;
|
|
50
|
+
getById(id: string): Promise<TRole | undefined>;
|
|
51
|
+
getByUid(id: string): Promise<TRole | undefined>;
|
|
52
|
+
}
|
|
53
|
+
export interface IAuthUserRolesService<TUser extends IAuthUser, TRole extends IAuthRole> {
|
|
54
|
+
getRoleUsers(roleId: string): Promise<TUser[]>;
|
|
55
|
+
getUserRoles(userId: string): Promise<TRole[]>;
|
|
56
|
+
getUserRolesByUid(roleUid: string): Promise<TRole[]>;
|
|
57
|
+
addUserToRole(userId: string, roleId: string): Promise<void>;
|
|
58
|
+
addUserToRoleByUid(userId: string, roleUid: string): Promise<void>;
|
|
59
|
+
removeUserFromRole(userId: string, roleId: string): Promise<void>;
|
|
60
|
+
removeUserFromRoleByUid(userId: string, roleUid: string): Promise<void>;
|
|
61
|
+
clearUserRoles(userId: string): Promise<TRole[]>;
|
|
40
62
|
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const Public: () => import("@nestjs/common").CustomDecorator<string>;
|
|
2
|
+
export declare const Authenticated: () => import("@nestjs/common").CustomDecorator<string>;
|
|
3
|
+
export declare const Roles: (...roles: string[]) => import("@nestjs/common").CustomDecorator<string>;
|
|
4
|
+
export declare const MemberOf: (...groups: string[]) => import("@nestjs/common").CustomDecorator<string>;
|
|
@@ -1,2 +1,5 @@
|
|
|
1
|
+
export { Authenticated, MemberOf, Public, Roles } from "./guards";
|
|
1
2
|
export { AuthenticationExtensionSymbols } from "./symbols";
|
|
3
|
+
export { WpRolesService } from "./rolesService";
|
|
2
4
|
export { WpUserService } from "./userService";
|
|
5
|
+
export { WpUserRolesService } from "./userRolesService";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const WpRolesService: () => <TFunction extends Function, Y>(target: object | TFunction, propertyKey?: string | symbol | undefined, descriptor?: TypedPropertyDescriptor<Y> | undefined) => void;
|
|
@@ -1,3 +1,11 @@
|
|
|
1
1
|
export declare const AuthenticationExtensionSymbols: {
|
|
2
2
|
UserService: symbol;
|
|
3
|
+
RolesService: symbol;
|
|
4
|
+
UserRolesService: symbol;
|
|
5
|
+
};
|
|
6
|
+
export declare const AuthenticationGuardsSymbols: {
|
|
7
|
+
Authenticated: string;
|
|
8
|
+
Public: string;
|
|
9
|
+
Roles: string;
|
|
10
|
+
MemberOf: string;
|
|
3
11
|
};
|
package/dist/esm/types/platforms/nest/extensions/authentication/decorators/userRolesService.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const WpUserRolesService: () => <TFunction extends Function, Y>(target: object | TFunction, propertyKey?: string | symbol | undefined, descriptor?: TypedPropertyDescriptor<Y> | undefined) => void;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { CanActivate, ExecutionContext } from "@nestjs/common";
|
|
2
|
+
import { Reflector } from "@nestjs/core";
|
|
3
|
+
export declare class AuthGuard implements CanActivate {
|
|
4
|
+
private reflector;
|
|
5
|
+
constructor(reflector: Reflector);
|
|
6
|
+
canActivate(context: ExecutionContext): boolean;
|
|
7
|
+
private isRoleMatching;
|
|
8
|
+
private getIsForAllAuthenticated;
|
|
9
|
+
private getIsPublic;
|
|
10
|
+
private getAllowedRoles;
|
|
11
|
+
private getCurrentAuth;
|
|
12
|
+
private getMetadata;
|
|
13
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { AuthGuard } from "./auth";
|
|
@@ -8,5 +8,10 @@ export declare class AuthenticationInitializer implements IAppInitializer {
|
|
|
8
8
|
private readonly logger;
|
|
9
9
|
constructor(discover: CustomDiscoveryService, registry: AuthenticationServicesResolver);
|
|
10
10
|
initialize(app: INestApplicationContext): Promise<void>;
|
|
11
|
+
private registerRolesService;
|
|
12
|
+
private registerUsersService;
|
|
13
|
+
private registerUserRolesService;
|
|
11
14
|
private discoverUserService;
|
|
15
|
+
private discoverRolesService;
|
|
16
|
+
private discoverUserRolesService;
|
|
12
17
|
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { NestMiddleware } from "@nestjs/common";
|
|
2
|
+
import { AuthenticationService } from "../../services";
|
|
3
|
+
export declare class AuthenticationMiddleware implements NestMiddleware {
|
|
4
|
+
private readonly authService;
|
|
5
|
+
constructor(authService: AuthenticationService);
|
|
6
|
+
use(req: any, res: any, next: (error?: any) => void): Promise<void>;
|
|
7
|
+
private getUserFromToken;
|
|
8
|
+
private getUserRoles;
|
|
9
|
+
private extractTokenFromHeader;
|
|
10
|
+
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { DynamicModule } from "@nestjs/common";
|
|
1
|
+
import { DynamicModule, MiddlewareConsumer, NestModule } from "@nestjs/common";
|
|
2
2
|
import { AuthenticationModuleSettings } from "./types";
|
|
3
|
-
export declare class AuthenticationModule {
|
|
3
|
+
export declare class AuthenticationModule implements NestModule {
|
|
4
4
|
static forRoot(input: AuthenticationModuleSettings): DynamicModule;
|
|
5
|
+
configure(consumer: MiddlewareConsumer): void;
|
|
5
6
|
}
|
|
@@ -1,6 +1,12 @@
|
|
|
1
|
-
import { IAuthUser, IAuthUserService } from "../abstractions";
|
|
1
|
+
import { IAuthRole, IAuthRoleService, IAuthUser, IAuthUserRolesService, IAuthUserService } from "../abstractions";
|
|
2
2
|
export declare class AuthenticationServicesResolver {
|
|
3
3
|
private usersService;
|
|
4
|
+
private rolesService;
|
|
5
|
+
private usersRolesService;
|
|
4
6
|
registerUsersService(usersService: IAuthUserService<any, any, any>): void;
|
|
7
|
+
registerRoleService(rolesService: IAuthRoleService<any>): void;
|
|
8
|
+
registerUserRolesService(userRolesService: IAuthUserRolesService<any, any>): void;
|
|
5
9
|
getUsersService<TUser extends IAuthUser, TUserRegistrationInfo>(): IAuthUserService<TUser, any, TUserRegistrationInfo>;
|
|
10
|
+
getRoleService<TRole extends IAuthRole>(): IAuthRoleService<TRole>;
|
|
11
|
+
getUserRoleService<TUser extends IAuthUser, TRole extends IAuthRole>(): IAuthUserRolesService<TUser, TRole>;
|
|
6
12
|
}
|
package/dist/esm/types/platforms/nest/extensions/authentication/services/authentication/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IAuthService, IAuthUserContext } from "../../abstractions";
|
|
1
|
+
import { IAuthRole, IAuthRoleService, IAuthService, IAuthUser, IAuthUserContext, IAuthUserRolesService, IAuthUserService } from "../../abstractions";
|
|
2
2
|
import { UserRegistrationHandler } from "../../handlers/user-register";
|
|
3
3
|
import { UserDisableHandler } from "../../handlers/user-disable";
|
|
4
4
|
import { UserEnableHandler } from "../../handlers/user-enable";
|
|
@@ -19,6 +19,7 @@ import { UserRegistrationInput, UserRegistrationResult } from "../../handlers/us
|
|
|
19
19
|
import { UserTokenVerifyInput, UserTokenVerifyResult } from "../../handlers/user-token-verify/types";
|
|
20
20
|
import { UserVerifyCompleteInput } from "../../handlers/user-verify-complete/types";
|
|
21
21
|
import { UserVerifyRequestInput, UserVerifyRequestResult } from "../../handlers/user-verify-request/types";
|
|
22
|
+
import { AuthenticationServicesResolver } from "../../resolver";
|
|
22
23
|
export declare class AuthenticationService implements IAuthService {
|
|
23
24
|
private readonly userDisableHandler;
|
|
24
25
|
private readonly userEnableHandler;
|
|
@@ -30,7 +31,8 @@ export declare class AuthenticationService implements IAuthService {
|
|
|
30
31
|
private readonly userTokenVerifyHandler;
|
|
31
32
|
private readonly userVerifyRequestHandler;
|
|
32
33
|
private readonly userVerifyCompleteHandler;
|
|
33
|
-
|
|
34
|
+
private readonly resolver;
|
|
35
|
+
constructor(userDisableHandler: UserDisableHandler, userEnableHandler: UserEnableHandler, userLoginHandler: UserLoginHandler, userPasswordChangeHandler: UserPasswordChangeHandler, userPasswordResetFinalizeHandler: UserPasswordResetCompleteHandler, userPasswordResetRequestHandler: UserPasswordResetRequestHandler, userRegistrationHandler: UserRegistrationHandler, userTokenVerifyHandler: UserTokenVerifyHandler, userVerifyRequestHandler: UserVerifyRequestHandler, userVerifyCompleteHandler: UserVerifyCompleteHandler, resolver: AuthenticationServicesResolver);
|
|
34
36
|
userDisable(input: UserDisableInput): Promise<void>;
|
|
35
37
|
userEnable(input: UserEnableInput): Promise<void>;
|
|
36
38
|
userLogin<TUserContext extends IAuthUserContext>(input: UserLoginInput<TUserContext>): Promise<UserLoginResult>;
|
|
@@ -41,4 +43,7 @@ export declare class AuthenticationService implements IAuthService {
|
|
|
41
43
|
userVerifyRequest<TUserContext extends IAuthUserContext>(input: UserVerifyRequestInput<TUserContext>): Promise<UserVerifyRequestResult>;
|
|
42
44
|
userVerifyComplete(input: UserVerifyCompleteInput): Promise<void>;
|
|
43
45
|
userTokenVerify<TUserContext extends IAuthUserContext>(input: UserTokenVerifyInput): Promise<UserTokenVerifyResult<TUserContext>>;
|
|
46
|
+
get usersService(): IAuthUserService<IAuthUser, any, unknown>;
|
|
47
|
+
get rolesService(): IAuthRoleService<IAuthRole>;
|
|
48
|
+
get userRolesService(): IAuthUserRolesService<IAuthUser, IAuthRole>;
|
|
44
49
|
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { EntityManagerRegistry } from "../../../../ioc";
|
|
2
|
+
export declare abstract class BaseInitializer {
|
|
3
|
+
private readonly registry;
|
|
4
|
+
constructor(registry: EntityManagerRegistry);
|
|
5
|
+
protected get companiesRepo(): import("../../../../../..").IEntityRepository<unknown, unknown, unknown, unknown, unknown, unknown>;
|
|
6
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const Providers: never[];
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { OrganizationTemplate } from "../../types";
|
|
2
|
+
import { IAppCompany, IAppUser, IAppUserGroup } from "../../abstractions";
|
|
3
|
+
import { EntityManagerRegistry } from "../../../../ioc";
|
|
4
|
+
export declare class OrganizationInitializerService {
|
|
5
|
+
private readonly registry;
|
|
6
|
+
constructor(registry: EntityManagerRegistry);
|
|
7
|
+
execute<TCompany extends IAppCompany, TUser extends IAppUser, TUserGroup extends IAppUserGroup>(template: OrganizationTemplate<TCompany, TUser, TUserGroup>): Promise<void>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { TenantTemplate } from "../../types";
|
|
2
|
+
import { IAppTenant, IAppUser } from "../../abstractions";
|
|
3
|
+
import { EntityManagerRegistry } from "../../../../ioc";
|
|
4
|
+
export declare class TenantInitializerService {
|
|
5
|
+
private readonly registry;
|
|
6
|
+
constructor(registry: EntityManagerRegistry);
|
|
7
|
+
execute<TTenant extends IAppTenant, TUser extends IAppUser>(template: TenantTemplate<TTenant, TUser>): Promise<void>;
|
|
8
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { OrganizationAdmin, OrganizationTemplate, TenantAdmin, TenantTemplate, } from "./templates";
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { IAppCompany, IAppTenant, IAppUser, IAppUserGroup } from "../abstractions";
|
|
2
|
+
export type TenantAdmin<TUser extends IAppUser> = {
|
|
3
|
+
user: Partial<TUser>;
|
|
4
|
+
password: string;
|
|
5
|
+
};
|
|
6
|
+
export type TenantTemplate<TTenant extends IAppTenant, TUser extends IAppUser> = {
|
|
7
|
+
tenant: Partial<TTenant>;
|
|
8
|
+
defaultAdmin?: TenantAdmin<TUser>;
|
|
9
|
+
};
|
|
10
|
+
export type OrganizationAdmin<TUser extends IAppUser> = {
|
|
11
|
+
user: Partial<TUser>;
|
|
12
|
+
password: string;
|
|
13
|
+
};
|
|
14
|
+
export type OrganizationTemplate<TCompany extends IAppCompany, TUser extends IAppUser, TUserGroup extends IAppUserGroup> = {
|
|
15
|
+
tenant: Partial<TCompany["organization"]["tenant"]>;
|
|
16
|
+
organization: Partial<TCompany["organization"]>;
|
|
17
|
+
company: Partial<TCompany>;
|
|
18
|
+
groups: Partial<TUserGroup>[];
|
|
19
|
+
defaultAdmin?: OrganizationAdmin<TUser>;
|
|
20
|
+
};
|