@punks/backend-entity-manager 0.0.175 → 0.0.176

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.
Files changed (45) hide show
  1. package/dist/cjs/types/platforms/nest/__test__/server/database/core/entities/appRole.entity.d.ts +2 -1
  2. package/dist/cjs/types/platforms/nest/__test__/server/database/core/entities.d.ts +3 -1
  3. package/dist/cjs/types/platforms/nest/__test__/server/database/core/index.d.ts +11 -3
  4. package/dist/cjs/types/platforms/nest/__test__/server/database/core/repositories/appPermission.repository.d.ts +6 -0
  5. package/dist/cjs/types/platforms/nest/__test__/server/database/core/repositories/appRolePermission.repository.d.ts +6 -0
  6. package/dist/cjs/types/platforms/nest/__test__/server/database/core/repositories.d.ts +3 -1
  7. package/dist/cjs/types/platforms/nest/__test__/server/entities/appPermissions/appPermission.adapter.d.ts +7 -0
  8. package/dist/cjs/types/platforms/nest/__test__/server/entities/appPermissions/appPermission.authentication.d.ts +11 -0
  9. package/dist/cjs/types/platforms/nest/__test__/server/entities/appPermissions/appPermission.manager.d.ts +7 -0
  10. package/dist/cjs/types/platforms/nest/__test__/server/entities/appPermissions/appPermission.models.d.ts +15 -0
  11. package/dist/cjs/types/platforms/nest/__test__/server/entities/appPermissions/appPermission.module.d.ts +2 -0
  12. package/dist/cjs/types/platforms/nest/__test__/server/entities/appPermissions/appPermission.query.d.ts +13 -0
  13. package/dist/cjs/types/platforms/nest/__test__/server/entities/appPermissions/appPermission.types.d.ts +70 -0
  14. package/dist/cjs/types/platforms/nest/__test__/server/entities/appRolePermissions/appRolePermission.adapter.d.ts +7 -0
  15. package/dist/cjs/types/platforms/nest/__test__/server/entities/appRolePermissions/appRolePermission.authentication.d.ts +11 -0
  16. package/dist/cjs/types/platforms/nest/__test__/server/entities/appRolePermissions/appRolePermission.manager.d.ts +7 -0
  17. package/dist/cjs/types/platforms/nest/__test__/server/entities/appRolePermissions/appRolePermission.models.d.ts +15 -0
  18. package/dist/cjs/types/platforms/nest/__test__/server/entities/appRolePermissions/appRolePermission.module.d.ts +2 -0
  19. package/dist/cjs/types/platforms/nest/__test__/server/entities/appRolePermissions/appRolePermission.query.d.ts +13 -0
  20. package/dist/cjs/types/platforms/nest/__test__/server/entities/appRolePermissions/appRolePermission.types.d.ts +70 -0
  21. package/dist/cjs/types/platforms/nest/__test__/server/infrastructure/authentication/providers/index.d.ts +2 -1
  22. package/dist/cjs/types/platforms/nest/__test__/server/infrastructure/authentication/providers/permissions/index.d.ts +15 -0
  23. package/dist/esm/types/platforms/nest/__test__/server/database/core/entities/appRole.entity.d.ts +2 -1
  24. package/dist/esm/types/platforms/nest/__test__/server/database/core/entities.d.ts +3 -1
  25. package/dist/esm/types/platforms/nest/__test__/server/database/core/index.d.ts +11 -3
  26. package/dist/esm/types/platforms/nest/__test__/server/database/core/repositories/appPermission.repository.d.ts +6 -0
  27. package/dist/esm/types/platforms/nest/__test__/server/database/core/repositories/appRolePermission.repository.d.ts +6 -0
  28. package/dist/esm/types/platforms/nest/__test__/server/database/core/repositories.d.ts +3 -1
  29. package/dist/esm/types/platforms/nest/__test__/server/entities/appPermissions/appPermission.adapter.d.ts +7 -0
  30. package/dist/esm/types/platforms/nest/__test__/server/entities/appPermissions/appPermission.authentication.d.ts +11 -0
  31. package/dist/esm/types/platforms/nest/__test__/server/entities/appPermissions/appPermission.manager.d.ts +7 -0
  32. package/dist/esm/types/platforms/nest/__test__/server/entities/appPermissions/appPermission.models.d.ts +15 -0
  33. package/dist/esm/types/platforms/nest/__test__/server/entities/appPermissions/appPermission.module.d.ts +2 -0
  34. package/dist/esm/types/platforms/nest/__test__/server/entities/appPermissions/appPermission.query.d.ts +13 -0
  35. package/dist/esm/types/platforms/nest/__test__/server/entities/appPermissions/appPermission.types.d.ts +70 -0
  36. package/dist/esm/types/platforms/nest/__test__/server/entities/appRolePermissions/appRolePermission.adapter.d.ts +7 -0
  37. package/dist/esm/types/platforms/nest/__test__/server/entities/appRolePermissions/appRolePermission.authentication.d.ts +11 -0
  38. package/dist/esm/types/platforms/nest/__test__/server/entities/appRolePermissions/appRolePermission.manager.d.ts +7 -0
  39. package/dist/esm/types/platforms/nest/__test__/server/entities/appRolePermissions/appRolePermission.models.d.ts +15 -0
  40. package/dist/esm/types/platforms/nest/__test__/server/entities/appRolePermissions/appRolePermission.module.d.ts +2 -0
  41. package/dist/esm/types/platforms/nest/__test__/server/entities/appRolePermissions/appRolePermission.query.d.ts +13 -0
  42. package/dist/esm/types/platforms/nest/__test__/server/entities/appRolePermissions/appRolePermission.types.d.ts +70 -0
  43. package/dist/esm/types/platforms/nest/__test__/server/infrastructure/authentication/providers/index.d.ts +2 -1
  44. package/dist/esm/types/platforms/nest/__test__/server/infrastructure/authentication/providers/permissions/index.d.ts +15 -0
  45. package/package.json +1 -1
@@ -1,6 +1,7 @@
1
1
  import { AppUserRoleEntity } from "./appUserRole.entity";
2
+ export type AppRoleEntityId = string;
2
3
  export declare class AppRoleEntity {
3
- id: string;
4
+ id: AppRoleEntityId;
4
5
  uid: string;
5
6
  name: string;
6
7
  userRoles?: AppUserRoleEntity[];
@@ -13,4 +13,6 @@ import { AppEntityVersionEntity } from "./entities/appEntityVersion.entity";
13
13
  import { AppDirectoryEntity } from "./entities/appDirectory.entity";
14
14
  import { AppFileReferenceEntity } from "./entities/appFileReference.entity";
15
15
  import { AppEmailLogEntity } from "./entities/appEmailLog.entity";
16
- export declare const CoreDatabaseEntities: (typeof AppUserProfileEntity | typeof AppRoleEntity | typeof AppUserRoleEntity | typeof AppUserEntity | typeof AppUserGroupEntity | typeof AppOrganizationEntity | typeof AppUserGroupMemberEntity | typeof AppDirectoryEntity | typeof AppTenantEntity | typeof AppCompanyEntity | typeof AppDivisionEntity | typeof AppEmailLogEntity | typeof AppEntityVersionEntity | typeof AppFileReferenceEntity | typeof FooEntity)[];
16
+ import { AppPermissionEntity } from "./entities/appPermission.entity";
17
+ import { AppRolePermissionEntity } from "./entities/appRolePermission.entity";
18
+ export declare const CoreDatabaseEntities: (typeof AppUserProfileEntity | typeof AppRoleEntity | typeof AppUserRoleEntity | typeof AppUserEntity | typeof AppUserGroupEntity | typeof AppOrganizationEntity | typeof AppUserGroupMemberEntity | typeof AppDirectoryEntity | typeof AppTenantEntity | typeof AppCompanyEntity | typeof AppDivisionEntity | typeof AppEmailLogEntity | typeof AppEntityVersionEntity | typeof AppFileReferenceEntity | typeof AppRolePermissionEntity | typeof AppPermissionEntity | typeof FooEntity)[];
@@ -16,6 +16,8 @@ import { AppDirectoryEntity } from "./entities/appDirectory.entity";
16
16
  import { CrmContactEntity } from "./entities/crmContact.entity";
17
17
  import { AppFileReferenceEntity } from "./entities/appFileReference.entity";
18
18
  import { AppEmailLogEntity } from "./entities/appEmailLog.entity";
19
+ import { AppPermissionEntity } from "./entities/appPermission.entity";
20
+ import { AppRolePermissionEntity } from "./entities/appRolePermission.entity";
19
21
  export declare const mockDatabaseProviders: (dataSource: DataSource) => ({
20
22
  provide: string | Function;
21
23
  useValue: import("typeorm").Repository<AppCompanyEntity>;
@@ -34,15 +36,18 @@ export declare const mockDatabaseProviders: (dataSource: DataSource) => ({
34
36
  } | {
35
37
  provide: string | Function;
36
38
  useValue: import("typeorm").Repository<AppFileReferenceEntity>;
37
- } | {
38
- provide: string | Function;
39
- useValue: import("typeorm").Repository<FooEntity>;
40
39
  } | {
41
40
  provide: string | Function;
42
41
  useValue: import("typeorm").Repository<AppOrganizationEntity>;
43
42
  } | {
44
43
  provide: string | Function;
45
44
  useValue: import("typeorm").Repository<AppRoleEntity>;
45
+ } | {
46
+ provide: string | Function;
47
+ useValue: import("typeorm").Repository<AppRolePermissionEntity>;
48
+ } | {
49
+ provide: string | Function;
50
+ useValue: import("typeorm").Repository<AppPermissionEntity>;
46
51
  } | {
47
52
  provide: string | Function;
48
53
  useValue: import("typeorm").Repository<AppTenantEntity>;
@@ -64,6 +69,9 @@ export declare const mockDatabaseProviders: (dataSource: DataSource) => ({
64
69
  } | {
65
70
  provide: string | Function;
66
71
  useValue: import("typeorm").Repository<CrmContactEntity>;
72
+ } | {
73
+ provide: string | Function;
74
+ useValue: import("typeorm").Repository<FooEntity>;
67
75
  })[];
68
76
  export declare class CoreDatabaseModule {
69
77
  static forRoot(dataSource: any): DynamicModule;
@@ -0,0 +1,6 @@
1
+ import { Repository } from "typeorm";
2
+ import { AppPermissionEntity, AppPermissionEntityId } from "../entities/appPermission.entity";
3
+ import { NestTypeOrmRepository } from "../../../../../integrations";
4
+ export declare class AppPermissionRepository extends NestTypeOrmRepository<AppPermissionEntity, AppPermissionEntityId> {
5
+ constructor(repository: Repository<AppPermissionEntity>);
6
+ }
@@ -0,0 +1,6 @@
1
+ import { Repository } from "typeorm";
2
+ import { AppRolePermissionEntity, AppRolePermissionEntityId } from "../entities/appRolePermission.entity";
3
+ import { NestTypeOrmRepository } from "../../../../../integrations";
4
+ export declare class AppRolePermissionRepository extends NestTypeOrmRepository<AppRolePermissionEntity, AppRolePermissionEntityId> {
5
+ constructor(repository: Repository<AppRolePermissionEntity>);
6
+ }
@@ -5,7 +5,9 @@ import { AppEmailLogRepository } from "./repositories/appEmailLog.repository";
5
5
  import { AppEntityVersionRepository } from "./repositories/appEntityVersion.repository";
6
6
  import { AppFileReferenceRepository } from "./repositories/appFileReference.repository";
7
7
  import { AppOrganizationRepository } from "./repositories/appOrganization.repository";
8
+ import { AppPermissionRepository } from "./repositories/appPermission.repository";
8
9
  import { AppRoleRepository } from "./repositories/appRole.repository";
10
+ import { AppRolePermissionRepository } from "./repositories/appRolePermission.repository";
9
11
  import { AppTenantRepository } from "./repositories/appTenant.repository";
10
12
  import { AppUserRepository } from "./repositories/appUser.repository";
11
13
  import { AppUserGroupRepository } from "./repositories/appUserGroup.repository";
@@ -14,4 +16,4 @@ import { AppUserProfileRepository } from "./repositories/appUserProfile.reposito
14
16
  import { AppUserRoleRepository } from "./repositories/appUserRole.repository";
15
17
  import { CrmContactRepository } from "./repositories/crmContact.repository";
16
18
  import { FooRepository } from "./repositories/foo.repository";
17
- export declare const CoreDatabaseRepositories: (typeof AppCompanyRepository | typeof AppDirectoryRepository | typeof AppDivisionRepository | typeof AppEmailLogRepository | typeof AppEntityVersionRepository | typeof AppFileReferenceRepository | typeof AppOrganizationRepository | typeof AppRoleRepository | typeof AppTenantRepository | typeof AppUserRepository | typeof AppUserGroupRepository | typeof AppUserGroupMemberRepository | typeof AppUserProfileRepository | typeof AppUserRoleRepository | typeof CrmContactRepository | typeof FooRepository)[];
19
+ export declare const CoreDatabaseRepositories: (typeof AppCompanyRepository | typeof AppDirectoryRepository | typeof AppDivisionRepository | typeof AppEmailLogRepository | typeof AppEntityVersionRepository | typeof AppFileReferenceRepository | typeof AppOrganizationRepository | typeof AppPermissionRepository | typeof AppRoleRepository | typeof AppRolePermissionRepository | typeof AppTenantRepository | typeof AppUserRepository | typeof AppUserGroupRepository | typeof AppUserGroupMemberRepository | typeof AppUserProfileRepository | typeof AppUserRoleRepository | typeof CrmContactRepository | typeof FooRepository)[];
@@ -0,0 +1,7 @@
1
+ import { DeepPartial, IEntityAdapter } from "../../../../../..";
2
+ import { AppPermissionEntity } from "../../database/core/entities/appPermission.entity";
3
+ import { AppPermissionCreateData, AppPermissionUpdateData } from "./appPermission.models";
4
+ export declare class AppPermissionAdapter implements IEntityAdapter<AppPermissionEntity, AppPermissionCreateData, AppPermissionUpdateData> {
5
+ createDataToEntity(data: AppPermissionCreateData): DeepPartial<AppPermissionEntity>;
6
+ updateDataToEntity(data: AppPermissionUpdateData): DeepPartial<AppPermissionEntity>;
7
+ }
@@ -0,0 +1,11 @@
1
+ import { IAuthorizationResult } from "../../../../../..";
2
+ import { AppAuthContext, AppEntityAuthorizationMiddlewareBase } from "../../infrastructure/authentication/index";
3
+ import { AppPermissionEntity } from "../../database/core/entities/appPermission.entity";
4
+ export declare class AppPermissionAuthMiddleware extends AppEntityAuthorizationMiddlewareBase<AppPermissionEntity> {
5
+ canSearch(context: AppAuthContext): Promise<IAuthorizationResult>;
6
+ canRead(entity: Partial<AppPermissionEntity>, context: AppAuthContext): Promise<IAuthorizationResult>;
7
+ canCreate(entity: Partial<AppPermissionEntity>, context: AppAuthContext): Promise<IAuthorizationResult>;
8
+ canUpdate(entity: Partial<AppPermissionEntity>, context: AppAuthContext): Promise<IAuthorizationResult>;
9
+ canDelete(entity: Partial<AppPermissionEntity>, context: AppAuthContext): Promise<IAuthorizationResult>;
10
+ canDeleteItems(context: AppAuthContext): Promise<IAuthorizationResult>;
11
+ }
@@ -0,0 +1,7 @@
1
+ import { NestEntityManager, EntityManagerRegistry } from "../../../../../..";
2
+ import { AppPermissionCreateData, AppPermissionCursor, AppPermissionFacets, AppPermissionSorting, AppPermissionUpdateData } from "./appPermission.models";
3
+ import { AppPermissionSearchParameters, AppPermissionDeleteParameters } from "./appPermission.types";
4
+ import { AppPermissionEntity, AppPermissionEntityId } from "../../database/core/entities/appPermission.entity";
5
+ export declare class AppPermissionEntityManager extends NestEntityManager<AppPermissionEntity, AppPermissionEntityId, AppPermissionCreateData, AppPermissionUpdateData, AppPermissionDeleteParameters, AppPermissionSearchParameters, AppPermissionSorting, AppPermissionCursor, AppPermissionFacets> {
6
+ constructor(registry: EntityManagerRegistry);
7
+ }
@@ -0,0 +1,15 @@
1
+ import { DeepPartial } from "../../../../../..";
2
+ import { AppPermissionEntity } from "../../database/core/entities/appPermission.entity";
3
+ import { StringFilter } from "../../shared/api/fields";
4
+ export type AppPermissionCreateData = DeepPartial<Omit<AppPermissionEntity, "id">>;
5
+ export type AppPermissionUpdateData = DeepPartial<Omit<AppPermissionEntity, "id">>;
6
+ export declare enum AppPermissionSorting {
7
+ Name = "Name"
8
+ }
9
+ export type AppPermissionCursor = number;
10
+ export declare class AppPermissionSearchFilters {
11
+ uid?: StringFilter;
12
+ }
13
+ export declare class AppPermissionFacets {
14
+ }
15
+ export type AppPermissionSheetItem = AppPermissionEntity;
@@ -0,0 +1,2 @@
1
+ export declare class AppPermissionEntityModule {
2
+ }
@@ -0,0 +1,13 @@
1
+ import { FindOptionsOrder, FindOptionsWhere } from "typeorm";
2
+ import { EntityManagerRegistry, NestTypeOrmQueryBuilder } from "../../../../../..";
3
+ import { AppPermissionEntity, AppPermissionEntityId } from "../../database/core/entities/appPermission.entity";
4
+ import { AppPermissionFacets, AppPermissionSorting } from "./appPermission.models";
5
+ import { AppPermissionSearchParameters } from "./appPermission.types";
6
+ import { AppAuthContext, AppUserContext } from "../../infrastructure/authentication/types";
7
+ export declare class AppPermissionQueryBuilder extends NestTypeOrmQueryBuilder<AppPermissionEntity, AppPermissionEntityId, AppPermissionSearchParameters, AppPermissionSorting, AppPermissionFacets, AppUserContext> {
8
+ constructor(registry: EntityManagerRegistry);
9
+ protected buildContextFilter(context?: AppAuthContext): FindOptionsWhere<AppPermissionEntity> | FindOptionsWhere<AppPermissionEntity>[];
10
+ protected buildSortingClause(request: AppPermissionSearchParameters): FindOptionsOrder<AppPermissionEntity>;
11
+ protected buildWhereClause(request: AppPermissionSearchParameters): FindOptionsWhere<AppPermissionEntity> | FindOptionsWhere<AppPermissionEntity>[];
12
+ protected calculateFacets(request: AppPermissionSearchParameters, context?: AppAuthContext): Promise<AppPermissionFacets>;
13
+ }
@@ -0,0 +1,70 @@
1
+ import { IEntitiesDeleteParameters, IEntitiesSearchResults, IEntitiesSearchResultsPaging, IEntitySearchParameters, IFullTextQuery, ISearchOptions, ISearchQueryRelations, ISearchRequestPaging, ISearchSorting, ISearchSortingField, IEntityVersionsSearchParameters, IEntityVersionsResultsPaging, IEntityVersionsSearchResults, SortDirection } from "../../../../../..";
2
+ import { AppPermissionEntity } from "../../database/core/entities/appPermission.entity";
3
+ import { AppPermissionSorting, AppPermissionCursor, AppPermissionSearchFilters, AppPermissionFacets } from "./appPermission.models";
4
+ import { EntityVersionsCursor, EntityVersionsFilters, EntityVersionsReference, EntityVersionsSorting } from "../../shared/api/versioning";
5
+ export declare class AppPermissionSearchSortingField implements ISearchSortingField<AppPermissionSorting> {
6
+ field: AppPermissionSorting;
7
+ direction: SortDirection;
8
+ }
9
+ export declare class AppPermissionQuerySorting implements ISearchSorting<AppPermissionSorting> {
10
+ fields: AppPermissionSearchSortingField[];
11
+ }
12
+ export declare class AppPermissionQueryPaging implements ISearchRequestPaging<AppPermissionCursor> {
13
+ cursor?: AppPermissionCursor;
14
+ pageSize: number;
15
+ }
16
+ export declare class AppPermissionSearchOptions implements ISearchOptions {
17
+ includeFacets?: boolean;
18
+ }
19
+ export declare class AppPermissionFullTextQuery implements IFullTextQuery {
20
+ term: string;
21
+ fields: string[];
22
+ }
23
+ export declare class AppPermissionSearchParameters implements IEntitySearchParameters<AppPermissionEntity, AppPermissionSorting, AppPermissionCursor> {
24
+ query?: AppPermissionFullTextQuery;
25
+ filters?: AppPermissionSearchFilters;
26
+ sorting?: AppPermissionQuerySorting;
27
+ paging?: AppPermissionQueryPaging;
28
+ options?: AppPermissionSearchOptions;
29
+ relations?: ISearchQueryRelations<AppPermissionEntity>;
30
+ }
31
+ export declare class AppPermissionSearchResultsPaging implements IEntitiesSearchResultsPaging<AppPermissionCursor> {
32
+ pageIndex: number;
33
+ pageSize: number;
34
+ totPageItems: number;
35
+ totPages: number;
36
+ totItems: number;
37
+ nextPageCursor?: AppPermissionCursor;
38
+ currentPageCursor?: AppPermissionCursor;
39
+ prevPageCursor?: AppPermissionCursor;
40
+ }
41
+ export declare class AppPermissionSearchResults<TResult> implements IEntitiesSearchResults<AppPermissionEntity, AppPermissionSearchParameters, TResult, AppPermissionSorting, AppPermissionCursor, AppPermissionFacets> {
42
+ request: AppPermissionSearchParameters;
43
+ facets?: AppPermissionFacets;
44
+ paging?: AppPermissionSearchResultsPaging;
45
+ items: TResult[];
46
+ }
47
+ export declare class AppPermissionDeleteParameters implements IEntitiesDeleteParameters<AppPermissionSorting> {
48
+ filters?: AppPermissionSearchFilters;
49
+ sorting?: AppPermissionQuerySorting;
50
+ }
51
+ export declare class AppPermissionVersionsSearchParameters implements IEntityVersionsSearchParameters<AppPermissionCursor> {
52
+ entity: EntityVersionsReference;
53
+ filters?: EntityVersionsFilters;
54
+ sorting?: EntityVersionsSorting;
55
+ paging?: EntityVersionsCursor<AppPermissionCursor>;
56
+ }
57
+ export declare class AppPermissionVersionsResultsPaging implements IEntityVersionsResultsPaging<AppPermissionCursor> {
58
+ pageIndex: number;
59
+ pageSize: number;
60
+ totPageItems: number;
61
+ totPages: number;
62
+ totItems: number;
63
+ nextPageCursor?: AppPermissionCursor;
64
+ currentPageCursor?: AppPermissionCursor;
65
+ prevPageCursor?: AppPermissionCursor;
66
+ }
67
+ export declare class AppPermissionVersionsSearchResults<TResult> implements IEntityVersionsSearchResults<TResult, AppPermissionCursor> {
68
+ paging?: AppPermissionVersionsResultsPaging;
69
+ items: TResult[];
70
+ }
@@ -0,0 +1,7 @@
1
+ import { DeepPartial, IEntityAdapter } from "../../../../../..";
2
+ import { AppRolePermissionEntity } from "../../database/core/entities/appRolePermission.entity";
3
+ import { AppRolePermissionCreateData, AppRolePermissionUpdateData } from "./appRolePermission.models";
4
+ export declare class AppRolePermissionAdapter implements IEntityAdapter<AppRolePermissionEntity, AppRolePermissionCreateData, AppRolePermissionUpdateData> {
5
+ createDataToEntity(data: AppRolePermissionCreateData): DeepPartial<AppRolePermissionEntity>;
6
+ updateDataToEntity(data: AppRolePermissionUpdateData): DeepPartial<AppRolePermissionEntity>;
7
+ }
@@ -0,0 +1,11 @@
1
+ import { IAuthorizationResult } from "../../../../../..";
2
+ import { AppAuthContext, AppEntityAuthorizationMiddlewareBase } from "../../infrastructure/authentication/index";
3
+ import { AppRolePermissionEntity } from "../../database/core/entities/appRolePermission.entity";
4
+ export declare class AppRolePermissionAuthMiddleware extends AppEntityAuthorizationMiddlewareBase<AppRolePermissionEntity> {
5
+ canSearch(context: AppAuthContext): Promise<IAuthorizationResult>;
6
+ canRead(entity: Partial<AppRolePermissionEntity>, context: AppAuthContext): Promise<IAuthorizationResult>;
7
+ canCreate(entity: Partial<AppRolePermissionEntity>, context: AppAuthContext): Promise<IAuthorizationResult>;
8
+ canUpdate(entity: Partial<AppRolePermissionEntity>, context: AppAuthContext): Promise<IAuthorizationResult>;
9
+ canDelete(entity: Partial<AppRolePermissionEntity>, context: AppAuthContext): Promise<IAuthorizationResult>;
10
+ canDeleteItems(context: AppAuthContext): Promise<IAuthorizationResult>;
11
+ }
@@ -0,0 +1,7 @@
1
+ import { NestEntityManager, EntityManagerRegistry } from "../../../../../..";
2
+ import { AppRolePermissionCreateData, AppRolePermissionCursor, AppRolePermissionFacets, AppRolePermissionSorting, AppRolePermissionUpdateData } from "./appRolePermission.models";
3
+ import { AppRolePermissionSearchParameters, AppRolePermissionDeleteParameters } from "./appRolePermission.types";
4
+ import { AppRolePermissionEntity, AppRolePermissionEntityId } from "../../database/core/entities/appRolePermission.entity";
5
+ export declare class AppRolePermissionEntityManager extends NestEntityManager<AppRolePermissionEntity, AppRolePermissionEntityId, AppRolePermissionCreateData, AppRolePermissionUpdateData, AppRolePermissionDeleteParameters, AppRolePermissionSearchParameters, AppRolePermissionSorting, AppRolePermissionCursor, AppRolePermissionFacets> {
6
+ constructor(registry: EntityManagerRegistry);
7
+ }
@@ -0,0 +1,15 @@
1
+ import { DeepPartial } from "../../../../../..";
2
+ import { AppRolePermissionEntity } from "../../database/core/entities/appRolePermission.entity";
3
+ export type AppRolePermissionCreateData = DeepPartial<Omit<AppRolePermissionEntity, "id">>;
4
+ export type AppRolePermissionUpdateData = DeepPartial<Omit<AppRolePermissionEntity, "id">>;
5
+ export declare enum AppRolePermissionSorting {
6
+ Name = "Name"
7
+ }
8
+ export type AppRolePermissionCursor = number;
9
+ export declare class AppRolePermissionSearchFilters {
10
+ roleIds?: string[];
11
+ permissionIds?: string[];
12
+ }
13
+ export declare class AppRolePermissionFacets {
14
+ }
15
+ export type AppRolePermissionSheetItem = AppRolePermissionEntity;
@@ -0,0 +1,2 @@
1
+ export declare class AppRolePermissionEntityModule {
2
+ }
@@ -0,0 +1,13 @@
1
+ import { FindOptionsOrder, FindOptionsWhere } from "typeorm";
2
+ import { EntityManagerRegistry, NestTypeOrmQueryBuilder } from "../../../../../..";
3
+ import { AppRolePermissionEntity, AppRolePermissionEntityId } from "../../database/core/entities/appRolePermission.entity";
4
+ import { AppRolePermissionFacets, AppRolePermissionSorting } from "./appRolePermission.models";
5
+ import { AppRolePermissionSearchParameters } from "./appRolePermission.types";
6
+ import { AppAuthContext, AppUserContext } from "../../infrastructure/authentication/types";
7
+ export declare class AppRolePermissionQueryBuilder extends NestTypeOrmQueryBuilder<AppRolePermissionEntity, AppRolePermissionEntityId, AppRolePermissionSearchParameters, AppRolePermissionSorting, AppRolePermissionFacets, AppUserContext> {
8
+ constructor(registry: EntityManagerRegistry);
9
+ protected buildContextFilter(context?: AppAuthContext): FindOptionsWhere<AppRolePermissionEntity> | FindOptionsWhere<AppRolePermissionEntity>[];
10
+ protected buildSortingClause(request: AppRolePermissionSearchParameters): FindOptionsOrder<AppRolePermissionEntity>;
11
+ protected buildWhereClause(request: AppRolePermissionSearchParameters): FindOptionsWhere<AppRolePermissionEntity> | FindOptionsWhere<AppRolePermissionEntity>[];
12
+ protected calculateFacets(request: AppRolePermissionSearchParameters, context?: AppAuthContext): Promise<AppRolePermissionFacets>;
13
+ }
@@ -0,0 +1,70 @@
1
+ import { IEntitiesDeleteParameters, IEntitiesSearchResults, IEntitiesSearchResultsPaging, IEntitySearchParameters, IFullTextQuery, ISearchOptions, ISearchQueryRelations, ISearchRequestPaging, ISearchSorting, ISearchSortingField, IEntityVersionsSearchParameters, IEntityVersionsResultsPaging, IEntityVersionsSearchResults, SortDirection } from "../../../../../..";
2
+ import { AppRolePermissionEntity } from "../../database/core/entities/appRolePermission.entity";
3
+ import { AppRolePermissionSorting, AppRolePermissionCursor, AppRolePermissionSearchFilters, AppRolePermissionFacets } from "./appRolePermission.models";
4
+ import { EntityVersionsCursor, EntityVersionsFilters, EntityVersionsReference, EntityVersionsSorting } from "../../shared/api/versioning";
5
+ export declare class AppRolePermissionSearchSortingField implements ISearchSortingField<AppRolePermissionSorting> {
6
+ field: AppRolePermissionSorting;
7
+ direction: SortDirection;
8
+ }
9
+ export declare class AppRolePermissionQuerySorting implements ISearchSorting<AppRolePermissionSorting> {
10
+ fields: AppRolePermissionSearchSortingField[];
11
+ }
12
+ export declare class AppRolePermissionQueryPaging implements ISearchRequestPaging<AppRolePermissionCursor> {
13
+ cursor?: AppRolePermissionCursor;
14
+ pageSize: number;
15
+ }
16
+ export declare class AppRolePermissionSearchOptions implements ISearchOptions {
17
+ includeFacets?: boolean;
18
+ }
19
+ export declare class AppRolePermissionFullTextQuery implements IFullTextQuery {
20
+ term: string;
21
+ fields: string[];
22
+ }
23
+ export declare class AppRolePermissionSearchParameters implements IEntitySearchParameters<AppRolePermissionEntity, AppRolePermissionSorting, AppRolePermissionCursor> {
24
+ query?: AppRolePermissionFullTextQuery;
25
+ filters?: AppRolePermissionSearchFilters;
26
+ sorting?: AppRolePermissionQuerySorting;
27
+ paging?: AppRolePermissionQueryPaging;
28
+ options?: AppRolePermissionSearchOptions;
29
+ relations?: ISearchQueryRelations<AppRolePermissionEntity>;
30
+ }
31
+ export declare class AppRolePermissionSearchResultsPaging implements IEntitiesSearchResultsPaging<AppRolePermissionCursor> {
32
+ pageIndex: number;
33
+ pageSize: number;
34
+ totPageItems: number;
35
+ totPages: number;
36
+ totItems: number;
37
+ nextPageCursor?: AppRolePermissionCursor;
38
+ currentPageCursor?: AppRolePermissionCursor;
39
+ prevPageCursor?: AppRolePermissionCursor;
40
+ }
41
+ export declare class AppRolePermissionSearchResults<TResult> implements IEntitiesSearchResults<AppRolePermissionEntity, AppRolePermissionSearchParameters, TResult, AppRolePermissionSorting, AppRolePermissionCursor, AppRolePermissionFacets> {
42
+ request: AppRolePermissionSearchParameters;
43
+ facets?: AppRolePermissionFacets;
44
+ paging?: AppRolePermissionSearchResultsPaging;
45
+ items: TResult[];
46
+ }
47
+ export declare class AppRolePermissionDeleteParameters implements IEntitiesDeleteParameters<AppRolePermissionSorting> {
48
+ filters?: AppRolePermissionSearchFilters;
49
+ sorting?: AppRolePermissionQuerySorting;
50
+ }
51
+ export declare class AppRolePermissionVersionsSearchParameters implements IEntityVersionsSearchParameters<AppRolePermissionCursor> {
52
+ entity: EntityVersionsReference;
53
+ filters?: EntityVersionsFilters;
54
+ sorting?: EntityVersionsSorting;
55
+ paging?: EntityVersionsCursor<AppRolePermissionCursor>;
56
+ }
57
+ export declare class AppRolePermissionVersionsResultsPaging implements IEntityVersionsResultsPaging<AppRolePermissionCursor> {
58
+ pageIndex: number;
59
+ pageSize: number;
60
+ totPageItems: number;
61
+ totPages: number;
62
+ totItems: number;
63
+ nextPageCursor?: AppRolePermissionCursor;
64
+ currentPageCursor?: AppRolePermissionCursor;
65
+ prevPageCursor?: AppRolePermissionCursor;
66
+ }
67
+ export declare class AppRolePermissionVersionsSearchResults<TResult> implements IEntityVersionsSearchResults<TResult, AppRolePermissionCursor> {
68
+ paging?: AppRolePermissionVersionsResultsPaging;
69
+ items: TResult[];
70
+ }
@@ -1,5 +1,6 @@
1
1
  import { AppAuthContextProvider } from "./context";
2
+ import { AuthPermissionService } from "./permissions";
2
3
  import { AuthRolesService } from "./roles";
3
4
  import { AuthUserRolesService } from "./userRoles";
4
5
  import { AuthUserService } from "./users";
5
- export declare const AuthProviders: (typeof AppAuthContextProvider | typeof AuthRolesService | typeof AuthUserRolesService | typeof AuthUserService)[];
6
+ export declare const AuthProviders: (typeof AppAuthContextProvider | typeof AuthPermissionService | typeof AuthRolesService | typeof AuthUserRolesService | typeof AuthUserService)[];
@@ -0,0 +1,15 @@
1
+ import { IAuthPermissionService } from "../../../../../../extensions";
2
+ import { AppRoleEntityManager } from "../../../../entities/appRoles/appRole.manager";
3
+ import { AppRoleEntity } from "../../../../database/core/entities/appRole.entity";
4
+ import { DeepPartial } from "../../../../../../../../types";
5
+ import { AppPermissionEntity } from "../../../../database/core/entities/appPermission.entity";
6
+ export declare class AuthPermissionService implements IAuthPermissionService<AppPermissionEntity> {
7
+ private readonly rolesManager;
8
+ constructor(rolesManager: AppRoleEntityManager);
9
+ ensure(uid: string, data: DeepPartial<Omit<AppRoleEntity, "uid">>): Promise<AppRoleEntity>;
10
+ create(data: DeepPartial<AppRoleEntity>): Promise<AppRoleEntity>;
11
+ update(id: string, data: DeepPartial<AppRoleEntity>): Promise<void>;
12
+ delete(id: string): Promise<void>;
13
+ getById(id: string): Promise<AppRoleEntity | undefined>;
14
+ getByUid(uid: string): Promise<AppRoleEntity | undefined>;
15
+ }
@@ -1,6 +1,7 @@
1
1
  import { AppUserRoleEntity } from "./appUserRole.entity";
2
+ export type AppRoleEntityId = string;
2
3
  export declare class AppRoleEntity {
3
- id: string;
4
+ id: AppRoleEntityId;
4
5
  uid: string;
5
6
  name: string;
6
7
  userRoles?: AppUserRoleEntity[];
@@ -13,4 +13,6 @@ import { AppEntityVersionEntity } from "./entities/appEntityVersion.entity";
13
13
  import { AppDirectoryEntity } from "./entities/appDirectory.entity";
14
14
  import { AppFileReferenceEntity } from "./entities/appFileReference.entity";
15
15
  import { AppEmailLogEntity } from "./entities/appEmailLog.entity";
16
- export declare const CoreDatabaseEntities: (typeof AppUserProfileEntity | typeof AppRoleEntity | typeof AppUserRoleEntity | typeof AppUserEntity | typeof AppUserGroupEntity | typeof AppOrganizationEntity | typeof AppUserGroupMemberEntity | typeof AppDirectoryEntity | typeof AppTenantEntity | typeof AppCompanyEntity | typeof AppDivisionEntity | typeof AppEmailLogEntity | typeof AppEntityVersionEntity | typeof AppFileReferenceEntity | typeof FooEntity)[];
16
+ import { AppPermissionEntity } from "./entities/appPermission.entity";
17
+ import { AppRolePermissionEntity } from "./entities/appRolePermission.entity";
18
+ export declare const CoreDatabaseEntities: (typeof AppUserProfileEntity | typeof AppRoleEntity | typeof AppUserRoleEntity | typeof AppUserEntity | typeof AppUserGroupEntity | typeof AppOrganizationEntity | typeof AppUserGroupMemberEntity | typeof AppDirectoryEntity | typeof AppTenantEntity | typeof AppCompanyEntity | typeof AppDivisionEntity | typeof AppEmailLogEntity | typeof AppEntityVersionEntity | typeof AppFileReferenceEntity | typeof AppRolePermissionEntity | typeof AppPermissionEntity | typeof FooEntity)[];
@@ -16,6 +16,8 @@ import { AppDirectoryEntity } from "./entities/appDirectory.entity";
16
16
  import { CrmContactEntity } from "./entities/crmContact.entity";
17
17
  import { AppFileReferenceEntity } from "./entities/appFileReference.entity";
18
18
  import { AppEmailLogEntity } from "./entities/appEmailLog.entity";
19
+ import { AppPermissionEntity } from "./entities/appPermission.entity";
20
+ import { AppRolePermissionEntity } from "./entities/appRolePermission.entity";
19
21
  export declare const mockDatabaseProviders: (dataSource: DataSource) => ({
20
22
  provide: string | Function;
21
23
  useValue: import("typeorm").Repository<AppCompanyEntity>;
@@ -34,15 +36,18 @@ export declare const mockDatabaseProviders: (dataSource: DataSource) => ({
34
36
  } | {
35
37
  provide: string | Function;
36
38
  useValue: import("typeorm").Repository<AppFileReferenceEntity>;
37
- } | {
38
- provide: string | Function;
39
- useValue: import("typeorm").Repository<FooEntity>;
40
39
  } | {
41
40
  provide: string | Function;
42
41
  useValue: import("typeorm").Repository<AppOrganizationEntity>;
43
42
  } | {
44
43
  provide: string | Function;
45
44
  useValue: import("typeorm").Repository<AppRoleEntity>;
45
+ } | {
46
+ provide: string | Function;
47
+ useValue: import("typeorm").Repository<AppRolePermissionEntity>;
48
+ } | {
49
+ provide: string | Function;
50
+ useValue: import("typeorm").Repository<AppPermissionEntity>;
46
51
  } | {
47
52
  provide: string | Function;
48
53
  useValue: import("typeorm").Repository<AppTenantEntity>;
@@ -64,6 +69,9 @@ export declare const mockDatabaseProviders: (dataSource: DataSource) => ({
64
69
  } | {
65
70
  provide: string | Function;
66
71
  useValue: import("typeorm").Repository<CrmContactEntity>;
72
+ } | {
73
+ provide: string | Function;
74
+ useValue: import("typeorm").Repository<FooEntity>;
67
75
  })[];
68
76
  export declare class CoreDatabaseModule {
69
77
  static forRoot(dataSource: any): DynamicModule;
@@ -0,0 +1,6 @@
1
+ import { Repository } from "typeorm";
2
+ import { AppPermissionEntity, AppPermissionEntityId } from "../entities/appPermission.entity";
3
+ import { NestTypeOrmRepository } from "../../../../../integrations";
4
+ export declare class AppPermissionRepository extends NestTypeOrmRepository<AppPermissionEntity, AppPermissionEntityId> {
5
+ constructor(repository: Repository<AppPermissionEntity>);
6
+ }
@@ -0,0 +1,6 @@
1
+ import { Repository } from "typeorm";
2
+ import { AppRolePermissionEntity, AppRolePermissionEntityId } from "../entities/appRolePermission.entity";
3
+ import { NestTypeOrmRepository } from "../../../../../integrations";
4
+ export declare class AppRolePermissionRepository extends NestTypeOrmRepository<AppRolePermissionEntity, AppRolePermissionEntityId> {
5
+ constructor(repository: Repository<AppRolePermissionEntity>);
6
+ }
@@ -5,7 +5,9 @@ import { AppEmailLogRepository } from "./repositories/appEmailLog.repository";
5
5
  import { AppEntityVersionRepository } from "./repositories/appEntityVersion.repository";
6
6
  import { AppFileReferenceRepository } from "./repositories/appFileReference.repository";
7
7
  import { AppOrganizationRepository } from "./repositories/appOrganization.repository";
8
+ import { AppPermissionRepository } from "./repositories/appPermission.repository";
8
9
  import { AppRoleRepository } from "./repositories/appRole.repository";
10
+ import { AppRolePermissionRepository } from "./repositories/appRolePermission.repository";
9
11
  import { AppTenantRepository } from "./repositories/appTenant.repository";
10
12
  import { AppUserRepository } from "./repositories/appUser.repository";
11
13
  import { AppUserGroupRepository } from "./repositories/appUserGroup.repository";
@@ -14,4 +16,4 @@ import { AppUserProfileRepository } from "./repositories/appUserProfile.reposito
14
16
  import { AppUserRoleRepository } from "./repositories/appUserRole.repository";
15
17
  import { CrmContactRepository } from "./repositories/crmContact.repository";
16
18
  import { FooRepository } from "./repositories/foo.repository";
17
- export declare const CoreDatabaseRepositories: (typeof AppCompanyRepository | typeof AppDirectoryRepository | typeof AppDivisionRepository | typeof AppEmailLogRepository | typeof AppEntityVersionRepository | typeof AppFileReferenceRepository | typeof AppOrganizationRepository | typeof AppRoleRepository | typeof AppTenantRepository | typeof AppUserRepository | typeof AppUserGroupRepository | typeof AppUserGroupMemberRepository | typeof AppUserProfileRepository | typeof AppUserRoleRepository | typeof CrmContactRepository | typeof FooRepository)[];
19
+ export declare const CoreDatabaseRepositories: (typeof AppCompanyRepository | typeof AppDirectoryRepository | typeof AppDivisionRepository | typeof AppEmailLogRepository | typeof AppEntityVersionRepository | typeof AppFileReferenceRepository | typeof AppOrganizationRepository | typeof AppPermissionRepository | typeof AppRoleRepository | typeof AppRolePermissionRepository | typeof AppTenantRepository | typeof AppUserRepository | typeof AppUserGroupRepository | typeof AppUserGroupMemberRepository | typeof AppUserProfileRepository | typeof AppUserRoleRepository | typeof CrmContactRepository | typeof FooRepository)[];
@@ -0,0 +1,7 @@
1
+ import { DeepPartial, IEntityAdapter } from "../../../../../..";
2
+ import { AppPermissionEntity } from "../../database/core/entities/appPermission.entity";
3
+ import { AppPermissionCreateData, AppPermissionUpdateData } from "./appPermission.models";
4
+ export declare class AppPermissionAdapter implements IEntityAdapter<AppPermissionEntity, AppPermissionCreateData, AppPermissionUpdateData> {
5
+ createDataToEntity(data: AppPermissionCreateData): DeepPartial<AppPermissionEntity>;
6
+ updateDataToEntity(data: AppPermissionUpdateData): DeepPartial<AppPermissionEntity>;
7
+ }
@@ -0,0 +1,11 @@
1
+ import { IAuthorizationResult } from "../../../../../..";
2
+ import { AppAuthContext, AppEntityAuthorizationMiddlewareBase } from "../../infrastructure/authentication/index";
3
+ import { AppPermissionEntity } from "../../database/core/entities/appPermission.entity";
4
+ export declare class AppPermissionAuthMiddleware extends AppEntityAuthorizationMiddlewareBase<AppPermissionEntity> {
5
+ canSearch(context: AppAuthContext): Promise<IAuthorizationResult>;
6
+ canRead(entity: Partial<AppPermissionEntity>, context: AppAuthContext): Promise<IAuthorizationResult>;
7
+ canCreate(entity: Partial<AppPermissionEntity>, context: AppAuthContext): Promise<IAuthorizationResult>;
8
+ canUpdate(entity: Partial<AppPermissionEntity>, context: AppAuthContext): Promise<IAuthorizationResult>;
9
+ canDelete(entity: Partial<AppPermissionEntity>, context: AppAuthContext): Promise<IAuthorizationResult>;
10
+ canDeleteItems(context: AppAuthContext): Promise<IAuthorizationResult>;
11
+ }
@@ -0,0 +1,7 @@
1
+ import { NestEntityManager, EntityManagerRegistry } from "../../../../../..";
2
+ import { AppPermissionCreateData, AppPermissionCursor, AppPermissionFacets, AppPermissionSorting, AppPermissionUpdateData } from "./appPermission.models";
3
+ import { AppPermissionSearchParameters, AppPermissionDeleteParameters } from "./appPermission.types";
4
+ import { AppPermissionEntity, AppPermissionEntityId } from "../../database/core/entities/appPermission.entity";
5
+ export declare class AppPermissionEntityManager extends NestEntityManager<AppPermissionEntity, AppPermissionEntityId, AppPermissionCreateData, AppPermissionUpdateData, AppPermissionDeleteParameters, AppPermissionSearchParameters, AppPermissionSorting, AppPermissionCursor, AppPermissionFacets> {
6
+ constructor(registry: EntityManagerRegistry);
7
+ }
@@ -0,0 +1,15 @@
1
+ import { DeepPartial } from "../../../../../..";
2
+ import { AppPermissionEntity } from "../../database/core/entities/appPermission.entity";
3
+ import { StringFilter } from "../../shared/api/fields";
4
+ export type AppPermissionCreateData = DeepPartial<Omit<AppPermissionEntity, "id">>;
5
+ export type AppPermissionUpdateData = DeepPartial<Omit<AppPermissionEntity, "id">>;
6
+ export declare enum AppPermissionSorting {
7
+ Name = "Name"
8
+ }
9
+ export type AppPermissionCursor = number;
10
+ export declare class AppPermissionSearchFilters {
11
+ uid?: StringFilter;
12
+ }
13
+ export declare class AppPermissionFacets {
14
+ }
15
+ export type AppPermissionSheetItem = AppPermissionEntity;
@@ -0,0 +1,2 @@
1
+ export declare class AppPermissionEntityModule {
2
+ }
@@ -0,0 +1,13 @@
1
+ import { FindOptionsOrder, FindOptionsWhere } from "typeorm";
2
+ import { EntityManagerRegistry, NestTypeOrmQueryBuilder } from "../../../../../..";
3
+ import { AppPermissionEntity, AppPermissionEntityId } from "../../database/core/entities/appPermission.entity";
4
+ import { AppPermissionFacets, AppPermissionSorting } from "./appPermission.models";
5
+ import { AppPermissionSearchParameters } from "./appPermission.types";
6
+ import { AppAuthContext, AppUserContext } from "../../infrastructure/authentication/types";
7
+ export declare class AppPermissionQueryBuilder extends NestTypeOrmQueryBuilder<AppPermissionEntity, AppPermissionEntityId, AppPermissionSearchParameters, AppPermissionSorting, AppPermissionFacets, AppUserContext> {
8
+ constructor(registry: EntityManagerRegistry);
9
+ protected buildContextFilter(context?: AppAuthContext): FindOptionsWhere<AppPermissionEntity> | FindOptionsWhere<AppPermissionEntity>[];
10
+ protected buildSortingClause(request: AppPermissionSearchParameters): FindOptionsOrder<AppPermissionEntity>;
11
+ protected buildWhereClause(request: AppPermissionSearchParameters): FindOptionsWhere<AppPermissionEntity> | FindOptionsWhere<AppPermissionEntity>[];
12
+ protected calculateFacets(request: AppPermissionSearchParameters, context?: AppAuthContext): Promise<AppPermissionFacets>;
13
+ }
@@ -0,0 +1,70 @@
1
+ import { IEntitiesDeleteParameters, IEntitiesSearchResults, IEntitiesSearchResultsPaging, IEntitySearchParameters, IFullTextQuery, ISearchOptions, ISearchQueryRelations, ISearchRequestPaging, ISearchSorting, ISearchSortingField, IEntityVersionsSearchParameters, IEntityVersionsResultsPaging, IEntityVersionsSearchResults, SortDirection } from "../../../../../..";
2
+ import { AppPermissionEntity } from "../../database/core/entities/appPermission.entity";
3
+ import { AppPermissionSorting, AppPermissionCursor, AppPermissionSearchFilters, AppPermissionFacets } from "./appPermission.models";
4
+ import { EntityVersionsCursor, EntityVersionsFilters, EntityVersionsReference, EntityVersionsSorting } from "../../shared/api/versioning";
5
+ export declare class AppPermissionSearchSortingField implements ISearchSortingField<AppPermissionSorting> {
6
+ field: AppPermissionSorting;
7
+ direction: SortDirection;
8
+ }
9
+ export declare class AppPermissionQuerySorting implements ISearchSorting<AppPermissionSorting> {
10
+ fields: AppPermissionSearchSortingField[];
11
+ }
12
+ export declare class AppPermissionQueryPaging implements ISearchRequestPaging<AppPermissionCursor> {
13
+ cursor?: AppPermissionCursor;
14
+ pageSize: number;
15
+ }
16
+ export declare class AppPermissionSearchOptions implements ISearchOptions {
17
+ includeFacets?: boolean;
18
+ }
19
+ export declare class AppPermissionFullTextQuery implements IFullTextQuery {
20
+ term: string;
21
+ fields: string[];
22
+ }
23
+ export declare class AppPermissionSearchParameters implements IEntitySearchParameters<AppPermissionEntity, AppPermissionSorting, AppPermissionCursor> {
24
+ query?: AppPermissionFullTextQuery;
25
+ filters?: AppPermissionSearchFilters;
26
+ sorting?: AppPermissionQuerySorting;
27
+ paging?: AppPermissionQueryPaging;
28
+ options?: AppPermissionSearchOptions;
29
+ relations?: ISearchQueryRelations<AppPermissionEntity>;
30
+ }
31
+ export declare class AppPermissionSearchResultsPaging implements IEntitiesSearchResultsPaging<AppPermissionCursor> {
32
+ pageIndex: number;
33
+ pageSize: number;
34
+ totPageItems: number;
35
+ totPages: number;
36
+ totItems: number;
37
+ nextPageCursor?: AppPermissionCursor;
38
+ currentPageCursor?: AppPermissionCursor;
39
+ prevPageCursor?: AppPermissionCursor;
40
+ }
41
+ export declare class AppPermissionSearchResults<TResult> implements IEntitiesSearchResults<AppPermissionEntity, AppPermissionSearchParameters, TResult, AppPermissionSorting, AppPermissionCursor, AppPermissionFacets> {
42
+ request: AppPermissionSearchParameters;
43
+ facets?: AppPermissionFacets;
44
+ paging?: AppPermissionSearchResultsPaging;
45
+ items: TResult[];
46
+ }
47
+ export declare class AppPermissionDeleteParameters implements IEntitiesDeleteParameters<AppPermissionSorting> {
48
+ filters?: AppPermissionSearchFilters;
49
+ sorting?: AppPermissionQuerySorting;
50
+ }
51
+ export declare class AppPermissionVersionsSearchParameters implements IEntityVersionsSearchParameters<AppPermissionCursor> {
52
+ entity: EntityVersionsReference;
53
+ filters?: EntityVersionsFilters;
54
+ sorting?: EntityVersionsSorting;
55
+ paging?: EntityVersionsCursor<AppPermissionCursor>;
56
+ }
57
+ export declare class AppPermissionVersionsResultsPaging implements IEntityVersionsResultsPaging<AppPermissionCursor> {
58
+ pageIndex: number;
59
+ pageSize: number;
60
+ totPageItems: number;
61
+ totPages: number;
62
+ totItems: number;
63
+ nextPageCursor?: AppPermissionCursor;
64
+ currentPageCursor?: AppPermissionCursor;
65
+ prevPageCursor?: AppPermissionCursor;
66
+ }
67
+ export declare class AppPermissionVersionsSearchResults<TResult> implements IEntityVersionsSearchResults<TResult, AppPermissionCursor> {
68
+ paging?: AppPermissionVersionsResultsPaging;
69
+ items: TResult[];
70
+ }
@@ -0,0 +1,7 @@
1
+ import { DeepPartial, IEntityAdapter } from "../../../../../..";
2
+ import { AppRolePermissionEntity } from "../../database/core/entities/appRolePermission.entity";
3
+ import { AppRolePermissionCreateData, AppRolePermissionUpdateData } from "./appRolePermission.models";
4
+ export declare class AppRolePermissionAdapter implements IEntityAdapter<AppRolePermissionEntity, AppRolePermissionCreateData, AppRolePermissionUpdateData> {
5
+ createDataToEntity(data: AppRolePermissionCreateData): DeepPartial<AppRolePermissionEntity>;
6
+ updateDataToEntity(data: AppRolePermissionUpdateData): DeepPartial<AppRolePermissionEntity>;
7
+ }
@@ -0,0 +1,11 @@
1
+ import { IAuthorizationResult } from "../../../../../..";
2
+ import { AppAuthContext, AppEntityAuthorizationMiddlewareBase } from "../../infrastructure/authentication/index";
3
+ import { AppRolePermissionEntity } from "../../database/core/entities/appRolePermission.entity";
4
+ export declare class AppRolePermissionAuthMiddleware extends AppEntityAuthorizationMiddlewareBase<AppRolePermissionEntity> {
5
+ canSearch(context: AppAuthContext): Promise<IAuthorizationResult>;
6
+ canRead(entity: Partial<AppRolePermissionEntity>, context: AppAuthContext): Promise<IAuthorizationResult>;
7
+ canCreate(entity: Partial<AppRolePermissionEntity>, context: AppAuthContext): Promise<IAuthorizationResult>;
8
+ canUpdate(entity: Partial<AppRolePermissionEntity>, context: AppAuthContext): Promise<IAuthorizationResult>;
9
+ canDelete(entity: Partial<AppRolePermissionEntity>, context: AppAuthContext): Promise<IAuthorizationResult>;
10
+ canDeleteItems(context: AppAuthContext): Promise<IAuthorizationResult>;
11
+ }
@@ -0,0 +1,7 @@
1
+ import { NestEntityManager, EntityManagerRegistry } from "../../../../../..";
2
+ import { AppRolePermissionCreateData, AppRolePermissionCursor, AppRolePermissionFacets, AppRolePermissionSorting, AppRolePermissionUpdateData } from "./appRolePermission.models";
3
+ import { AppRolePermissionSearchParameters, AppRolePermissionDeleteParameters } from "./appRolePermission.types";
4
+ import { AppRolePermissionEntity, AppRolePermissionEntityId } from "../../database/core/entities/appRolePermission.entity";
5
+ export declare class AppRolePermissionEntityManager extends NestEntityManager<AppRolePermissionEntity, AppRolePermissionEntityId, AppRolePermissionCreateData, AppRolePermissionUpdateData, AppRolePermissionDeleteParameters, AppRolePermissionSearchParameters, AppRolePermissionSorting, AppRolePermissionCursor, AppRolePermissionFacets> {
6
+ constructor(registry: EntityManagerRegistry);
7
+ }
@@ -0,0 +1,15 @@
1
+ import { DeepPartial } from "../../../../../..";
2
+ import { AppRolePermissionEntity } from "../../database/core/entities/appRolePermission.entity";
3
+ export type AppRolePermissionCreateData = DeepPartial<Omit<AppRolePermissionEntity, "id">>;
4
+ export type AppRolePermissionUpdateData = DeepPartial<Omit<AppRolePermissionEntity, "id">>;
5
+ export declare enum AppRolePermissionSorting {
6
+ Name = "Name"
7
+ }
8
+ export type AppRolePermissionCursor = number;
9
+ export declare class AppRolePermissionSearchFilters {
10
+ roleIds?: string[];
11
+ permissionIds?: string[];
12
+ }
13
+ export declare class AppRolePermissionFacets {
14
+ }
15
+ export type AppRolePermissionSheetItem = AppRolePermissionEntity;
@@ -0,0 +1,2 @@
1
+ export declare class AppRolePermissionEntityModule {
2
+ }
@@ -0,0 +1,13 @@
1
+ import { FindOptionsOrder, FindOptionsWhere } from "typeorm";
2
+ import { EntityManagerRegistry, NestTypeOrmQueryBuilder } from "../../../../../..";
3
+ import { AppRolePermissionEntity, AppRolePermissionEntityId } from "../../database/core/entities/appRolePermission.entity";
4
+ import { AppRolePermissionFacets, AppRolePermissionSorting } from "./appRolePermission.models";
5
+ import { AppRolePermissionSearchParameters } from "./appRolePermission.types";
6
+ import { AppAuthContext, AppUserContext } from "../../infrastructure/authentication/types";
7
+ export declare class AppRolePermissionQueryBuilder extends NestTypeOrmQueryBuilder<AppRolePermissionEntity, AppRolePermissionEntityId, AppRolePermissionSearchParameters, AppRolePermissionSorting, AppRolePermissionFacets, AppUserContext> {
8
+ constructor(registry: EntityManagerRegistry);
9
+ protected buildContextFilter(context?: AppAuthContext): FindOptionsWhere<AppRolePermissionEntity> | FindOptionsWhere<AppRolePermissionEntity>[];
10
+ protected buildSortingClause(request: AppRolePermissionSearchParameters): FindOptionsOrder<AppRolePermissionEntity>;
11
+ protected buildWhereClause(request: AppRolePermissionSearchParameters): FindOptionsWhere<AppRolePermissionEntity> | FindOptionsWhere<AppRolePermissionEntity>[];
12
+ protected calculateFacets(request: AppRolePermissionSearchParameters, context?: AppAuthContext): Promise<AppRolePermissionFacets>;
13
+ }
@@ -0,0 +1,70 @@
1
+ import { IEntitiesDeleteParameters, IEntitiesSearchResults, IEntitiesSearchResultsPaging, IEntitySearchParameters, IFullTextQuery, ISearchOptions, ISearchQueryRelations, ISearchRequestPaging, ISearchSorting, ISearchSortingField, IEntityVersionsSearchParameters, IEntityVersionsResultsPaging, IEntityVersionsSearchResults, SortDirection } from "../../../../../..";
2
+ import { AppRolePermissionEntity } from "../../database/core/entities/appRolePermission.entity";
3
+ import { AppRolePermissionSorting, AppRolePermissionCursor, AppRolePermissionSearchFilters, AppRolePermissionFacets } from "./appRolePermission.models";
4
+ import { EntityVersionsCursor, EntityVersionsFilters, EntityVersionsReference, EntityVersionsSorting } from "../../shared/api/versioning";
5
+ export declare class AppRolePermissionSearchSortingField implements ISearchSortingField<AppRolePermissionSorting> {
6
+ field: AppRolePermissionSorting;
7
+ direction: SortDirection;
8
+ }
9
+ export declare class AppRolePermissionQuerySorting implements ISearchSorting<AppRolePermissionSorting> {
10
+ fields: AppRolePermissionSearchSortingField[];
11
+ }
12
+ export declare class AppRolePermissionQueryPaging implements ISearchRequestPaging<AppRolePermissionCursor> {
13
+ cursor?: AppRolePermissionCursor;
14
+ pageSize: number;
15
+ }
16
+ export declare class AppRolePermissionSearchOptions implements ISearchOptions {
17
+ includeFacets?: boolean;
18
+ }
19
+ export declare class AppRolePermissionFullTextQuery implements IFullTextQuery {
20
+ term: string;
21
+ fields: string[];
22
+ }
23
+ export declare class AppRolePermissionSearchParameters implements IEntitySearchParameters<AppRolePermissionEntity, AppRolePermissionSorting, AppRolePermissionCursor> {
24
+ query?: AppRolePermissionFullTextQuery;
25
+ filters?: AppRolePermissionSearchFilters;
26
+ sorting?: AppRolePermissionQuerySorting;
27
+ paging?: AppRolePermissionQueryPaging;
28
+ options?: AppRolePermissionSearchOptions;
29
+ relations?: ISearchQueryRelations<AppRolePermissionEntity>;
30
+ }
31
+ export declare class AppRolePermissionSearchResultsPaging implements IEntitiesSearchResultsPaging<AppRolePermissionCursor> {
32
+ pageIndex: number;
33
+ pageSize: number;
34
+ totPageItems: number;
35
+ totPages: number;
36
+ totItems: number;
37
+ nextPageCursor?: AppRolePermissionCursor;
38
+ currentPageCursor?: AppRolePermissionCursor;
39
+ prevPageCursor?: AppRolePermissionCursor;
40
+ }
41
+ export declare class AppRolePermissionSearchResults<TResult> implements IEntitiesSearchResults<AppRolePermissionEntity, AppRolePermissionSearchParameters, TResult, AppRolePermissionSorting, AppRolePermissionCursor, AppRolePermissionFacets> {
42
+ request: AppRolePermissionSearchParameters;
43
+ facets?: AppRolePermissionFacets;
44
+ paging?: AppRolePermissionSearchResultsPaging;
45
+ items: TResult[];
46
+ }
47
+ export declare class AppRolePermissionDeleteParameters implements IEntitiesDeleteParameters<AppRolePermissionSorting> {
48
+ filters?: AppRolePermissionSearchFilters;
49
+ sorting?: AppRolePermissionQuerySorting;
50
+ }
51
+ export declare class AppRolePermissionVersionsSearchParameters implements IEntityVersionsSearchParameters<AppRolePermissionCursor> {
52
+ entity: EntityVersionsReference;
53
+ filters?: EntityVersionsFilters;
54
+ sorting?: EntityVersionsSorting;
55
+ paging?: EntityVersionsCursor<AppRolePermissionCursor>;
56
+ }
57
+ export declare class AppRolePermissionVersionsResultsPaging implements IEntityVersionsResultsPaging<AppRolePermissionCursor> {
58
+ pageIndex: number;
59
+ pageSize: number;
60
+ totPageItems: number;
61
+ totPages: number;
62
+ totItems: number;
63
+ nextPageCursor?: AppRolePermissionCursor;
64
+ currentPageCursor?: AppRolePermissionCursor;
65
+ prevPageCursor?: AppRolePermissionCursor;
66
+ }
67
+ export declare class AppRolePermissionVersionsSearchResults<TResult> implements IEntityVersionsSearchResults<TResult, AppRolePermissionCursor> {
68
+ paging?: AppRolePermissionVersionsResultsPaging;
69
+ items: TResult[];
70
+ }
@@ -1,5 +1,6 @@
1
1
  import { AppAuthContextProvider } from "./context";
2
+ import { AuthPermissionService } from "./permissions";
2
3
  import { AuthRolesService } from "./roles";
3
4
  import { AuthUserRolesService } from "./userRoles";
4
5
  import { AuthUserService } from "./users";
5
- export declare const AuthProviders: (typeof AppAuthContextProvider | typeof AuthRolesService | typeof AuthUserRolesService | typeof AuthUserService)[];
6
+ export declare const AuthProviders: (typeof AppAuthContextProvider | typeof AuthPermissionService | typeof AuthRolesService | typeof AuthUserRolesService | typeof AuthUserService)[];
@@ -0,0 +1,15 @@
1
+ import { IAuthPermissionService } from "../../../../../../extensions";
2
+ import { AppRoleEntityManager } from "../../../../entities/appRoles/appRole.manager";
3
+ import { AppRoleEntity } from "../../../../database/core/entities/appRole.entity";
4
+ import { DeepPartial } from "../../../../../../../../types";
5
+ import { AppPermissionEntity } from "../../../../database/core/entities/appPermission.entity";
6
+ export declare class AuthPermissionService implements IAuthPermissionService<AppPermissionEntity> {
7
+ private readonly rolesManager;
8
+ constructor(rolesManager: AppRoleEntityManager);
9
+ ensure(uid: string, data: DeepPartial<Omit<AppRoleEntity, "uid">>): Promise<AppRoleEntity>;
10
+ create(data: DeepPartial<AppRoleEntity>): Promise<AppRoleEntity>;
11
+ update(id: string, data: DeepPartial<AppRoleEntity>): Promise<void>;
12
+ delete(id: string): Promise<void>;
13
+ getById(id: string): Promise<AppRoleEntity | undefined>;
14
+ getByUid(uid: string): Promise<AppRoleEntity | undefined>;
15
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@punks/backend-entity-manager",
3
- "version": "0.0.175",
3
+ "version": "0.0.176",
4
4
  "description": "",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",