@drax/identity-back 3.13.0 → 3.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (150) hide show
  1. package/dist/config/PasswordPolicyConfig.js +14 -0
  2. package/dist/controllers/UserApiKeyController.js +8 -119
  3. package/dist/controllers/UserController.js +10 -0
  4. package/dist/factory/PasswordPolicyResolverFactory.js +9 -0
  5. package/dist/factory/PasswordPolicyServiceFactory.js +27 -0
  6. package/dist/factory/UserPasswordHistoryServiceFactory.js +25 -0
  7. package/dist/factory/UserServiceFactory.js +3 -1
  8. package/dist/graphql/resolvers/user-api-key.resolvers.js +2 -3
  9. package/dist/index.js +20 -8
  10. package/dist/interfaces/IUserPasswordHistory.js +1 -0
  11. package/dist/interfaces/IUserPasswordHistoryRepository.js +1 -0
  12. package/dist/middleware/apiKeyMiddleware.js +1 -1
  13. package/dist/middleware/rbacMiddleware.js +1 -1
  14. package/dist/models/UserPasswordHistoryModel.js +30 -0
  15. package/dist/permissions/UserApiKeyPermissions.js +1 -2
  16. package/dist/policies/defaultPasswordPolicy.js +12 -0
  17. package/dist/repository/mongo/UserPasswordHistoryMongoRepository.js +20 -0
  18. package/dist/repository/sqlite/UserPasswordHistorySqliteRepository.js +38 -0
  19. package/dist/resolver/PasswordPolicyResolver.js +27 -0
  20. package/dist/routes/UserRoutes.js +10 -0
  21. package/dist/schemas/PasswordPolicySchema.js +18 -0
  22. package/dist/schemas/RegisterSchema.js +1 -3
  23. package/dist/schemas/UserSchema.js +1 -3
  24. package/dist/security/constants/defaultPasswordPolicy.js +12 -0
  25. package/dist/security/interfaces/IPasswordPolicy.js +1 -0
  26. package/dist/security/interfaces/IPasswordPolicyProjectContext.js +1 -0
  27. package/dist/security/schemas/PasswordPolicySchema.js +18 -0
  28. package/dist/security/services/PasswordPolicyResolver.js +21 -0
  29. package/dist/security/services/PasswordPolicyService.js +147 -0
  30. package/dist/security/utils/PasswordPolicySchemaFactory.js +36 -0
  31. package/dist/security/utils/getPasswordEnvPolicy.js +19 -0
  32. package/dist/services/PasswordPolicyService.js +147 -0
  33. package/dist/services/UserPasswordHistoryService.js +18 -0
  34. package/dist/services/UserService.js +34 -9
  35. package/dist/setup/LoadIdentityConfigFromEnv.js +10 -0
  36. package/dist/setup/SetProjectPasswordPolicy.js +7 -0
  37. package/dist/utils/PasswordPolicySchemaFactory.js +36 -0
  38. package/dist/utils/getPasswordEnvPolicy.js +19 -0
  39. package/docs/password-policy.md +33 -0
  40. package/package.json +6 -6
  41. package/src/config/PasswordPolicyConfig.ts +14 -0
  42. package/src/controllers/UserApiKeyController.ts +15 -129
  43. package/src/controllers/UserController.ts +10 -1
  44. package/src/factory/PasswordPolicyResolverFactory.ts +14 -0
  45. package/src/factory/PasswordPolicyServiceFactory.ts +38 -0
  46. package/src/factory/UserPasswordHistoryServiceFactory.ts +31 -0
  47. package/src/factory/UserServiceFactory.ts +7 -1
  48. package/src/graphql/resolvers/user-api-key.resolvers.ts +2 -3
  49. package/src/index.ts +28 -3
  50. package/src/interfaces/IUserPasswordHistory.ts +21 -0
  51. package/src/interfaces/IUserPasswordHistoryRepository.ts +8 -0
  52. package/src/middleware/apiKeyMiddleware.ts +1 -1
  53. package/src/middleware/rbacMiddleware.ts +1 -1
  54. package/src/models/UserPasswordHistoryModel.ts +42 -0
  55. package/src/permissions/UserApiKeyPermissions.ts +1 -2
  56. package/src/policies/defaultPasswordPolicy.ts +17 -0
  57. package/src/repository/mongo/UserPasswordHistoryMongoRepository.ts +25 -0
  58. package/src/repository/sqlite/UserPasswordHistorySqliteRepository.ts +47 -0
  59. package/src/resolver/PasswordPolicyResolver.ts +33 -0
  60. package/src/routes/UserRoutes.ts +11 -0
  61. package/src/schemas/PasswordPolicySchema.ts +29 -0
  62. package/src/schemas/RegisterSchema.ts +1 -3
  63. package/src/schemas/UserSchema.ts +1 -3
  64. package/src/services/PasswordPolicyService.ts +184 -0
  65. package/src/services/UserPasswordHistoryService.ts +23 -0
  66. package/src/services/UserService.ts +38 -9
  67. package/src/setup/LoadIdentityConfigFromEnv.ts +11 -0
  68. package/src/setup/SetProjectPasswordPolicy.ts +12 -0
  69. package/src/utils/PasswordPolicySchemaFactory.ts +47 -0
  70. package/src/utils/getPasswordEnvPolicy.ts +25 -0
  71. package/test/data-obj/users/root-mongo-user.ts +1 -1
  72. package/test/data-obj/users/root-sqlite-user.ts +1 -1
  73. package/test/endpoints/data/users-data.ts +3 -3
  74. package/test/endpoints/password-policy-route.test.ts +33 -0
  75. package/test/endpoints/user-route.test.ts +17 -4
  76. package/test/security/password-policy-resolver.test.ts +55 -0
  77. package/test/security/password-policy-schema-factory.test.ts +40 -0
  78. package/test/services/user-service.test.ts +218 -31
  79. package/test/setup/TestSetup.ts +22 -4
  80. package/test/setup/data/basic-user.ts +1 -1
  81. package/test/setup/data/root-user.ts +1 -1
  82. package/tsconfig.tsbuildinfo +1 -1
  83. package/types/config/PasswordPolicyConfig.d.ts +14 -0
  84. package/types/config/PasswordPolicyConfig.d.ts.map +1 -0
  85. package/types/controllers/UserApiKeyController.d.ts +10 -6
  86. package/types/controllers/UserApiKeyController.d.ts.map +1 -1
  87. package/types/controllers/UserController.d.ts +1 -0
  88. package/types/controllers/UserController.d.ts.map +1 -1
  89. package/types/factory/PasswordPolicyResolverFactory.d.ts +4 -0
  90. package/types/factory/PasswordPolicyResolverFactory.d.ts.map +1 -0
  91. package/types/factory/PasswordPolicyServiceFactory.d.ts +4 -0
  92. package/types/factory/PasswordPolicyServiceFactory.d.ts.map +1 -0
  93. package/types/factory/UserPasswordHistoryServiceFactory.d.ts +4 -0
  94. package/types/factory/UserPasswordHistoryServiceFactory.d.ts.map +1 -0
  95. package/types/factory/UserServiceFactory.d.ts.map +1 -1
  96. package/types/graphql/resolvers/user-api-key.resolvers.d.ts.map +1 -1
  97. package/types/index.d.ts +15 -2
  98. package/types/index.d.ts.map +1 -1
  99. package/types/interfaces/IUserPasswordHistory.d.ts +17 -0
  100. package/types/interfaces/IUserPasswordHistory.d.ts.map +1 -0
  101. package/types/interfaces/IUserPasswordHistoryRepository.d.ts +7 -0
  102. package/types/interfaces/IUserPasswordHistoryRepository.d.ts.map +1 -0
  103. package/types/models/UserPasswordHistoryModel.d.ts +15 -0
  104. package/types/models/UserPasswordHistoryModel.d.ts.map +1 -0
  105. package/types/permissions/UserApiKeyPermissions.d.ts +1 -2
  106. package/types/permissions/UserApiKeyPermissions.d.ts.map +1 -1
  107. package/types/permissions/index.d.ts +0 -2
  108. package/types/permissions/index.d.ts.map +1 -1
  109. package/types/policies/defaultPasswordPolicy.d.ts +4 -0
  110. package/types/policies/defaultPasswordPolicy.d.ts.map +1 -0
  111. package/types/repository/mongo/UserPasswordHistoryMongoRepository.d.ts +10 -0
  112. package/types/repository/mongo/UserPasswordHistoryMongoRepository.d.ts.map +1 -0
  113. package/types/repository/sqlite/UserPasswordHistorySqliteRepository.d.ts +25 -0
  114. package/types/repository/sqlite/UserPasswordHistorySqliteRepository.d.ts.map +1 -0
  115. package/types/resolver/PasswordPolicyResolver.d.ts +10 -0
  116. package/types/resolver/PasswordPolicyResolver.d.ts.map +1 -0
  117. package/types/routes/UserRoutes.d.ts.map +1 -1
  118. package/types/schemas/PasswordPolicySchema.d.ts +25 -0
  119. package/types/schemas/PasswordPolicySchema.d.ts.map +1 -0
  120. package/types/schemas/RegisterSchema.d.ts.map +1 -1
  121. package/types/schemas/UserSchema.d.ts.map +1 -1
  122. package/types/security/constants/defaultPasswordPolicy.d.ts +4 -0
  123. package/types/security/constants/defaultPasswordPolicy.d.ts.map +1 -0
  124. package/types/security/interfaces/IPasswordPolicy.d.ts +13 -0
  125. package/types/security/interfaces/IPasswordPolicy.d.ts.map +1 -0
  126. package/types/security/interfaces/IPasswordPolicyProjectContext.d.ts +6 -0
  127. package/types/security/interfaces/IPasswordPolicyProjectContext.d.ts.map +1 -0
  128. package/types/security/schemas/PasswordPolicySchema.d.ts +25 -0
  129. package/types/security/schemas/PasswordPolicySchema.d.ts.map +1 -0
  130. package/types/security/services/PasswordPolicyResolver.d.ts +9 -0
  131. package/types/security/services/PasswordPolicyResolver.d.ts.map +1 -0
  132. package/types/security/services/PasswordPolicyService.d.ts +35 -0
  133. package/types/security/services/PasswordPolicyService.d.ts.map +1 -0
  134. package/types/security/utils/PasswordPolicySchemaFactory.d.ts +9 -0
  135. package/types/security/utils/PasswordPolicySchemaFactory.d.ts.map +1 -0
  136. package/types/security/utils/getPasswordEnvPolicy.d.ts +5 -0
  137. package/types/security/utils/getPasswordEnvPolicy.d.ts.map +1 -0
  138. package/types/services/PasswordPolicyService.d.ts +34 -0
  139. package/types/services/PasswordPolicyService.d.ts.map +1 -0
  140. package/types/services/UserPasswordHistoryService.d.ts +10 -0
  141. package/types/services/UserPasswordHistoryService.d.ts.map +1 -0
  142. package/types/services/UserService.d.ts +5 -1
  143. package/types/services/UserService.d.ts.map +1 -1
  144. package/types/setup/LoadIdentityConfigFromEnv.d.ts.map +1 -1
  145. package/types/setup/SetProjectPasswordPolicy.d.ts +5 -0
  146. package/types/setup/SetProjectPasswordPolicy.d.ts.map +1 -0
  147. package/types/utils/PasswordPolicySchemaFactory.d.ts +9 -0
  148. package/types/utils/PasswordPolicySchemaFactory.d.ts.map +1 -0
  149. package/types/utils/getPasswordEnvPolicy.d.ts +5 -0
  150. package/types/utils/getPasswordEnvPolicy.d.ts.map +1 -0
@@ -0,0 +1,34 @@
1
+ import { ZodType } from "zod";
2
+ import type { IUser } from "@drax/identity-share";
3
+ import type { IPasswordPolicy } from "@drax/identity-share";
4
+ import type UserPasswordHistoryService from "./UserPasswordHistoryService";
5
+ import type { IUserRepository } from "../interfaces/IUserRepository";
6
+ import PasswordPolicyResolver from "../resolver/PasswordPolicyResolver.js";
7
+ interface IValidatePasswordOptions {
8
+ field?: string;
9
+ userId?: string;
10
+ currentPasswordHash?: string;
11
+ }
12
+ declare class PasswordPolicyService {
13
+ private readonly resolver;
14
+ private readonly userRepository?;
15
+ private readonly userPasswordHistoryService?;
16
+ constructor(resolver: PasswordPolicyResolver, userRepository?: IUserRepository, userPasswordHistoryService?: UserPasswordHistoryService);
17
+ getFinalPolicy(): Promise<IPasswordPolicy>;
18
+ getPasswordSchema(): Promise<ZodType<string>>;
19
+ validatePassword(password: string, options?: IValidatePasswordOptions): Promise<void>;
20
+ generateCompatiblePassword(): Promise<string>;
21
+ getPasswordExpiration(user: IUser): Promise<{
22
+ expired: boolean;
23
+ expiresAt: Date | null;
24
+ }>;
25
+ recordPassword(userId: string, passwordHash: string): Promise<void>;
26
+ private validateReuse;
27
+ private getRecentPasswordHashes;
28
+ private getLastPasswordChangeDate;
29
+ private randomChar;
30
+ private shuffle;
31
+ }
32
+ export default PasswordPolicyService;
33
+ export { PasswordPolicyService };
34
+ //# sourceMappingURL=PasswordPolicyService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PasswordPolicyService.d.ts","sourceRoot":"","sources":["../../src/services/PasswordPolicyService.ts"],"names":[],"mappings":"AACA,OAAO,EAAW,OAAO,EAAC,MAAM,KAAK,CAAC;AAEtC,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,sBAAsB,CAAC;AAEhD,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,0BAA0B,MAAM,8BAA8B,CAAC;AAC3E,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,+BAA+B,CAAC;AAEnE,OAAO,sBAAsB,MAAM,uCAAuC,CAAC;AAG3E,UAAU,wBAAwB;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAC/B;AAED,cAAM,qBAAqB;IAEnB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;IAChC,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAC;gBAF3B,QAAQ,EAAE,sBAAsB,EAChC,cAAc,CAAC,EAAE,eAAe,EAChC,0BAA0B,CAAC,EAAE,0BAA0B;IAItE,cAAc,IAAI,OAAO,CAAC,eAAe,CAAC;IAI1C,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAK7C,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAG,OAAO,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBtF,0BAA0B,IAAI,OAAO,CAAC,MAAM,CAAC;IA0C7C,qBAAqB,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,IAAI,GAAG,IAAI,CAAA;KAAC,CAAC;IAoBvF,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YAI3D,aAAa;YAcb,uBAAuB;YAgBvB,yBAAyB;IAavC,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,OAAO;CAUlB;AAED,eAAe,qBAAqB,CAAA;AACpC,OAAO,EAAC,qBAAqB,EAAC,CAAA"}
@@ -0,0 +1,10 @@
1
+ import type { IUserPasswordHistoryRepository } from "../interfaces/IUserPasswordHistoryRepository.js";
2
+ import type { IUserPasswordHistory } from "../interfaces/IUserPasswordHistory.js";
3
+ declare class UserPasswordHistoryService {
4
+ private readonly repository;
5
+ constructor(repository: IUserPasswordHistoryRepository);
6
+ create(userId: string, passwordHash: string): Promise<IUserPasswordHistory>;
7
+ findLatestByUserId(userId: string, limit: number): Promise<IUserPasswordHistory[]>;
8
+ }
9
+ export default UserPasswordHistoryService;
10
+ //# sourceMappingURL=UserPasswordHistoryService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserPasswordHistoryService.d.ts","sourceRoot":"","sources":["../../src/services/UserPasswordHistoryService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,8BAA8B,EAAC,MAAM,iDAAiD,CAAC;AACpG,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,uCAAuC,CAAC;AAEhF,cAAM,0BAA0B;IAChB,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,8BAA8B;IAGjE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAO3E,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;CAM3F;AAED,eAAe,0BAA0B,CAAA"}
@@ -2,9 +2,13 @@ import type { IUser, IUserCreate, IUserUpdate } from "@drax/identity-share";
2
2
  import type { IUserRepository } from "../interfaces/IUserRepository";
3
3
  import { IDraxPaginateOptions, IDraxPaginateResult } from "@drax/crud-share";
4
4
  import { AbstractService } from "@drax/crud-back";
5
+ import type PasswordPolicyService from "./PasswordPolicyService";
6
+ import type UserPasswordHistoryService from "./UserPasswordHistoryService.js";
5
7
  declare class UserService extends AbstractService<IUser, IUserCreate, IUserUpdate> {
8
+ private readonly passwordPolicyService;
9
+ private readonly userPasswordHistoryService;
6
10
  _repository: IUserRepository;
7
- constructor(userRepository: IUserRepository);
11
+ constructor(userRepository: IUserRepository, passwordPolicyService?: PasswordPolicyService, userPasswordHistoryService?: UserPasswordHistoryService);
8
12
  auth(username: string, password: string, { userAgent, ip }: {
9
13
  userAgent: any;
10
14
  ip: any;
@@ -1 +1 @@
1
- {"version":3,"file":"UserService.d.ts","sourceRoot":"","sources":["../../src/services/UserService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAY,KAAK,EAAE,WAAW,EAAE,WAAW,EAAC,MAAM,sBAAsB,CAAC;AACrF,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,+BAA+B,CAAC;AAOnE,OAAO,EAAC,oBAAoB,EAAE,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAC,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAKhD,cAAM,WAAY,SAAQ,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,CAAC;IAEtE,WAAW,EAAE,eAAe,CAAA;gBAEhB,cAAc,EAAE,eAAe;IAKrC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAC,SAAS,EAAE,EAAE,EAAC;;;KAAA;;;;;YA+BhD,eAAe;IAYvB,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;;;IAKtE,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAe,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAC,SAAS,EAAE,EAAE,EAAC;;;KAAA;;;IAiCpG,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAE,OAAO,CAAC,KAAK,CAAC;IAatE,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAsB/F,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,OAAO,CAAC,KAAK,CAAC;IAU3D,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgB5C,wBAAwB,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAiBnF,QAAQ,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;IAuB/C,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAahD,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAahD,MAAM,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;IAsB7C,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW;IAqBxC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAcpC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAWpC,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAWvD,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAWnE,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAUjD,QAAQ,CAAC,EACI,IAAQ,EACR,KAAU,EACV,OAAY,EACZ,KAAa,EACb,MAAW,EACX,OAAY,EACf,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAWtE,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,GAAE,MAAa,EAAE,OAAO,QAAK,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;CAIjF;AAED,eAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"UserService.d.ts","sourceRoot":"","sources":["../../src/services/UserService.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"LoadIdentityConfigFromEnv.d.ts","sourceRoot":"","sources":["../../src/setup/LoadIdentityConfigFromEnv.ts"],"names":[],"mappings":"AAGA,iBAAS,yBAAyB,SASjC;AAED,eAAe,yBAAyB,CAAA;AACxC,OAAO,EACH,yBAAyB,EAC5B,CAAA"}
1
+ {"version":3,"file":"LoadIdentityConfigFromEnv.d.ts","sourceRoot":"","sources":["../../src/setup/LoadIdentityConfigFromEnv.ts"],"names":[],"mappings":"AAIA,iBAAS,yBAAyB,SAmBjC;AAED,eAAe,yBAAyB,CAAA;AACxC,OAAO,EACH,yBAAyB,EAC5B,CAAA"}
@@ -0,0 +1,5 @@
1
+ import type { IPasswordPolicyProject } from "@drax/identity-share";
2
+ declare function SetProjectPasswordPolicy(projectPasswordPolicy: IPasswordPolicyProject): void;
3
+ export default SetProjectPasswordPolicy;
4
+ export { SetProjectPasswordPolicy };
5
+ //# sourceMappingURL=SetProjectPasswordPolicy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SetProjectPasswordPolicy.d.ts","sourceRoot":"","sources":["../../src/setup/SetProjectPasswordPolicy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,sBAAsB,EAAC,MAAM,sBAAsB,CAAC;AAIjE,iBAAS,wBAAwB,CAAC,qBAAqB,EAAE,sBAAsB,QAI9E;AAED,eAAe,wBAAwB,CAAA;AACvC,OAAO,EAAC,wBAAwB,EAAC,CAAA"}
@@ -0,0 +1,9 @@
1
+ import z from "zod";
2
+ import type { IPasswordPolicy } from "@drax/identity-share";
3
+ declare class PasswordPolicySchemaFactory {
4
+ private static cache;
5
+ static create(policy: IPasswordPolicy): z.ZodType<string>;
6
+ }
7
+ export default PasswordPolicySchemaFactory;
8
+ export { PasswordPolicySchemaFactory };
9
+ //# sourceMappingURL=PasswordPolicySchemaFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PasswordPolicySchemaFactory.d.ts","sourceRoot":"","sources":["../../src/utils/PasswordPolicySchemaFactory.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,sBAAsB,CAAC;AAE1D,cAAM,2BAA2B;IAC7B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAuC;IAE3D,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;CAqC5D;AAED,eAAe,2BAA2B,CAAA;AAC1C,OAAO,EAAC,2BAA2B,EAAC,CAAA"}
@@ -0,0 +1,5 @@
1
+ import type { IPasswordPolicy } from "@drax/identity-share";
2
+ declare function getPasswordEnvPolicy(): Partial<IPasswordPolicy>;
3
+ export default getPasswordEnvPolicy;
4
+ export { getPasswordEnvPolicy };
5
+ //# sourceMappingURL=getPasswordEnvPolicy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getPasswordEnvPolicy.d.ts","sourceRoot":"","sources":["../../src/utils/getPasswordEnvPolicy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,sBAAsB,CAAC;AAK1D,iBAAS,oBAAoB,IAAI,OAAO,CAAC,eAAe,CAAC,CAgBxD;AAED,eAAe,oBAAoB,CAAA;AACnC,OAAO,EAAC,oBAAoB,EAAC,CAAA"}