@punks/backend-entity-manager 0.0.117 → 0.0.120

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 (74) hide show
  1. package/dist/cjs/index.js +24 -5
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/cjs/types/__test__/entity/foo.d.ts +2 -1
  4. package/dist/cjs/types/__test__/providers/typeorm/queries/foo.d.ts +1 -1
  5. package/dist/cjs/types/abstractions/configuration.d.ts +1 -1
  6. package/dist/cjs/types/abstractions/queries.d.ts +2 -1
  7. package/dist/cjs/types/integrations/repository/typeorm/queryBuilder.d.ts +3 -2
  8. package/dist/cjs/types/integrations/repository/typeorm/repository.d.ts +4 -2
  9. package/dist/cjs/types/platforms/nest/__test__/server/app/{auth/auth.actions.d.ts → appAuth/appAuth.actions.d.ts} +2 -2
  10. package/dist/cjs/types/platforms/nest/__test__/server/app/{auth/auth.controller.d.ts → appAuth/appAuth.controller.d.ts} +4 -4
  11. package/dist/cjs/types/platforms/nest/__test__/server/app/appAuth/appAuth.module.d.ts +2 -0
  12. package/dist/cjs/types/platforms/nest/__test__/server/app/{auth/auth.test-controller.d.ts → appAuth/appAuth.test-controller.d.ts} +1 -1
  13. package/dist/cjs/types/platforms/nest/__test__/server/app/appOrganizations/appOrganization.converter.d.ts +2 -1
  14. package/dist/cjs/types/platforms/nest/__test__/server/app/appOrganizations/appOrganization.dto.d.ts +5 -0
  15. package/dist/cjs/types/platforms/nest/__test__/server/app/appOrganizations/appOrganization.utils.d.ts +3 -0
  16. package/dist/cjs/types/platforms/nest/__test__/server/entities/appCompanies/appCompany.query.d.ts +2 -2
  17. package/dist/cjs/types/platforms/nest/__test__/server/entities/appDirectories/appDirectory.query.d.ts +2 -2
  18. package/dist/cjs/types/platforms/nest/__test__/server/entities/appDivisions/appDivision.query.d.ts +2 -2
  19. package/dist/cjs/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.query.d.ts +2 -2
  20. package/dist/cjs/types/platforms/nest/__test__/server/entities/appOrganizations/appOrganization.query.d.ts +2 -2
  21. package/dist/cjs/types/platforms/nest/__test__/server/entities/appRoles/appRole.query.d.ts +2 -2
  22. package/dist/cjs/types/platforms/nest/__test__/server/entities/appTenants/appTenant.query.d.ts +2 -2
  23. package/dist/cjs/types/platforms/nest/__test__/server/entities/appUserGroupMembers/appUserGroupMember.query.d.ts +2 -2
  24. package/dist/cjs/types/platforms/nest/__test__/server/entities/appUserGroups/appUserGroup.query.d.ts +2 -2
  25. package/dist/cjs/types/platforms/nest/__test__/server/entities/appUserProfiles/appUserProfile.query.d.ts +2 -2
  26. package/dist/cjs/types/platforms/nest/__test__/server/entities/appUserRoles/appUserRole.query.d.ts +2 -2
  27. package/dist/cjs/types/platforms/nest/__test__/server/entities/appUsers/appUser.query.d.ts +2 -2
  28. package/dist/cjs/types/platforms/nest/__test__/server/entities/crmContacts/crmContact.query.d.ts +2 -2
  29. package/dist/cjs/types/platforms/nest/__test__/server/entities/foos/foo.query.d.ts +2 -2
  30. package/dist/cjs/types/platforms/nest/extensions/authentication/decorators/guards.d.ts +2 -2
  31. package/dist/cjs/types/platforms/nest/integrations/typeorm/queryBuilder.d.ts +1 -1
  32. package/dist/cjs/types/providers/services.d.ts +3 -3
  33. package/dist/cjs/types/queries/get.d.ts +1 -0
  34. package/dist/cjs/types/templates/queryBuilder/index.d.ts +2 -1
  35. package/dist/esm/index.js +24 -5
  36. package/dist/esm/index.js.map +1 -1
  37. package/dist/esm/types/__test__/entity/foo.d.ts +2 -1
  38. package/dist/esm/types/__test__/providers/typeorm/queries/foo.d.ts +1 -1
  39. package/dist/esm/types/abstractions/configuration.d.ts +1 -1
  40. package/dist/esm/types/abstractions/queries.d.ts +2 -1
  41. package/dist/esm/types/integrations/repository/typeorm/queryBuilder.d.ts +3 -2
  42. package/dist/esm/types/integrations/repository/typeorm/repository.d.ts +4 -2
  43. package/dist/esm/types/platforms/nest/__test__/server/app/{auth/auth.actions.d.ts → appAuth/appAuth.actions.d.ts} +2 -2
  44. package/dist/esm/types/platforms/nest/__test__/server/app/{auth/auth.controller.d.ts → appAuth/appAuth.controller.d.ts} +4 -4
  45. package/dist/esm/types/platforms/nest/__test__/server/app/appAuth/appAuth.module.d.ts +2 -0
  46. package/dist/esm/types/platforms/nest/__test__/server/app/{auth/auth.test-controller.d.ts → appAuth/appAuth.test-controller.d.ts} +1 -1
  47. package/dist/esm/types/platforms/nest/__test__/server/app/appOrganizations/appOrganization.converter.d.ts +2 -1
  48. package/dist/esm/types/platforms/nest/__test__/server/app/appOrganizations/appOrganization.dto.d.ts +5 -0
  49. package/dist/esm/types/platforms/nest/__test__/server/app/appOrganizations/appOrganization.utils.d.ts +3 -0
  50. package/dist/esm/types/platforms/nest/__test__/server/entities/appCompanies/appCompany.query.d.ts +2 -2
  51. package/dist/esm/types/platforms/nest/__test__/server/entities/appDirectories/appDirectory.query.d.ts +2 -2
  52. package/dist/esm/types/platforms/nest/__test__/server/entities/appDivisions/appDivision.query.d.ts +2 -2
  53. package/dist/esm/types/platforms/nest/__test__/server/entities/appEntityVersions/appEntityVersion.query.d.ts +2 -2
  54. package/dist/esm/types/platforms/nest/__test__/server/entities/appOrganizations/appOrganization.query.d.ts +2 -2
  55. package/dist/esm/types/platforms/nest/__test__/server/entities/appRoles/appRole.query.d.ts +2 -2
  56. package/dist/esm/types/platforms/nest/__test__/server/entities/appTenants/appTenant.query.d.ts +2 -2
  57. package/dist/esm/types/platforms/nest/__test__/server/entities/appUserGroupMembers/appUserGroupMember.query.d.ts +2 -2
  58. package/dist/esm/types/platforms/nest/__test__/server/entities/appUserGroups/appUserGroup.query.d.ts +2 -2
  59. package/dist/esm/types/platforms/nest/__test__/server/entities/appUserProfiles/appUserProfile.query.d.ts +2 -2
  60. package/dist/esm/types/platforms/nest/__test__/server/entities/appUserRoles/appUserRole.query.d.ts +2 -2
  61. package/dist/esm/types/platforms/nest/__test__/server/entities/appUsers/appUser.query.d.ts +2 -2
  62. package/dist/esm/types/platforms/nest/__test__/server/entities/crmContacts/crmContact.query.d.ts +2 -2
  63. package/dist/esm/types/platforms/nest/__test__/server/entities/foos/foo.query.d.ts +2 -2
  64. package/dist/esm/types/platforms/nest/extensions/authentication/decorators/guards.d.ts +2 -2
  65. package/dist/esm/types/platforms/nest/integrations/typeorm/queryBuilder.d.ts +1 -1
  66. package/dist/esm/types/providers/services.d.ts +3 -3
  67. package/dist/esm/types/queries/get.d.ts +1 -0
  68. package/dist/esm/types/templates/queryBuilder/index.d.ts +2 -1
  69. package/dist/index.d.ts +18 -13
  70. package/package.json +3 -3
  71. package/dist/cjs/types/platforms/nest/__test__/server/app/auth/auth.module.d.ts +0 -2
  72. package/dist/esm/types/platforms/nest/__test__/server/app/auth/auth.module.d.ts +0 -2
  73. /package/dist/cjs/types/platforms/nest/__test__/server/app/{auth/auth.dto.d.ts → appAuth/appAuth.dto.d.ts} +0 -0
  74. /package/dist/esm/types/platforms/nest/__test__/server/app/{auth/auth.dto.d.ts → appAuth/appAuth.dto.d.ts} +0 -0
package/dist/cjs/index.js CHANGED
@@ -1646,7 +1646,10 @@ class EntityGetQuery {
1646
1646
  this.services = services;
1647
1647
  }
1648
1648
  async execute(id) {
1649
- const entity = await this.services.resolveRepository().get(id);
1649
+ const context = await this.getContext();
1650
+ const entity = await this.services
1651
+ .resolveQueryBuilder()
1652
+ .get(id, context);
1650
1653
  if (entity) {
1651
1654
  await this.authorize(entity);
1652
1655
  }
@@ -1666,6 +1669,14 @@ class EntityGetQuery {
1666
1669
  if (!authorizationResult.isAuthorized)
1667
1670
  throw new EntityOperationUnauthorizedException(exports.EntityOperationType.Read, this.services.getEntityName(), entity);
1668
1671
  }
1672
+ async getContext() {
1673
+ const authorization = this.services.resolveAuthorizationMiddleware();
1674
+ if (!authorization) {
1675
+ return undefined;
1676
+ }
1677
+ const contextService = this.services.resolveAuthenticationContextProvider();
1678
+ return await contextService?.getContext();
1679
+ }
1669
1680
  }
1670
1681
 
1671
1682
  class EntitiesSearchQuery {
@@ -2371,8 +2382,8 @@ const Public = () => common.SetMetadata(AuthenticationGuardsSymbols.Public, true
2371
2382
  const Authenticated = () => common.SetMetadata(AuthenticationGuardsSymbols.Authenticated, true);
2372
2383
  const Roles = (...roles) => common.SetMetadata(AuthenticationGuardsSymbols.Roles, roles);
2373
2384
  const MemberOf = (...groups) => common.SetMetadata(AuthenticationGuardsSymbols.MemberOf, groups);
2374
- const buildRolesGuard = ({ mainRole, inheritedRoles, }, options) => Roles(mainRole.uid, ...(!options?.exact && inheritedRoles
2375
- ? inheritedRoles.map((role) => role.uid)
2385
+ const buildRolesGuard = ({ mainRole, secondaryRoles, }, options) => Roles(mainRole.uid, ...(!options?.exact && secondaryRoles
2386
+ ? secondaryRoles.map((role) => role.uid)
2376
2387
  : []));
2377
2388
 
2378
2389
  const WpRolesService = () => common.applyDecorators(common.Injectable(), common.SetMetadata(AuthenticationExtensionSymbols.RolesService, true));
@@ -21174,7 +21185,9 @@ exports.EntityManagerInitializer = EntityManagerInitializer_1 = class EntityMana
21174
21185
  const adapterDict = backendCore.toDict(adapters, (a) => a.meta.entityName);
21175
21186
  const authDict = backendCore.toDict(auth, (a) => a.meta.entityName);
21176
21187
  const sortedEntities = lodash.exports.orderBy(entities, (x) => x.meta.name);
21177
- this.logger.log(`Discovered entities: \n${sortedEntities.join(" \n")}`);
21188
+ this.logger.log(`Discovered entities: \n${sortedEntities
21189
+ .map((x) => x.discoveredClass.name)
21190
+ .join(" \n")}`);
21178
21191
  for (const entity of sortedEntities) {
21179
21192
  const entityName = entity.meta.name;
21180
21193
  const repository = repositoriesDict[entityName];
@@ -21835,6 +21848,11 @@ class TypeOrmQueryBuilder extends QueryBuilderBase {
21835
21848
  this.services = services;
21836
21849
  this.clause = new QueryClauseBuilder();
21837
21850
  }
21851
+ async get(id, context) {
21852
+ return await this.getRepository().get(id, {
21853
+ relations: this.getRelationsToLoad(undefined, context),
21854
+ });
21855
+ }
21838
21856
  async exists(filters, context) {
21839
21857
  return (await this.count(filters, context)) > 0;
21840
21858
  }
@@ -21958,7 +21976,7 @@ class TypeOrmRepository {
21958
21976
  this.logger.debug("Checking entity exists by condition", { condition });
21959
21977
  return await this.innerRepository.exist(condition);
21960
21978
  }
21961
- async get(id) {
21979
+ async get(id, options) {
21962
21980
  if (backendCore.isNullOrUndefined(id)) {
21963
21981
  throw new Error("Invalid 'id' parameter.");
21964
21982
  }
@@ -21967,6 +21985,7 @@ class TypeOrmRepository {
21967
21985
  where: {
21968
21986
  id: id,
21969
21987
  },
21988
+ relations: options?.relations,
21970
21989
  });
21971
21990
  return result ?? undefined;
21972
21991
  }