@drax/identity-back 0.9.0 → 0.10.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 (48) hide show
  1. package/dist/config/IdentityConfig.js +1 -0
  2. package/dist/controllers/UserController.js +152 -5
  3. package/dist/factory/UserRegistryServiceFactory.js +24 -0
  4. package/dist/html/RegistrationCompleteHtml.js +51 -0
  5. package/dist/models/UserModel.js +6 -1
  6. package/dist/repository/mongo/UserApiKeyMongoRepository.js +2 -2
  7. package/dist/repository/mongo/UserMongoRepository.js +28 -0
  8. package/dist/repository/sqlite/UserSqliteRepository.js +44 -1
  9. package/dist/routes/UserRoutes.js +11 -6
  10. package/dist/services/UserEmailService.js +54 -0
  11. package/dist/services/UserService.js +97 -6
  12. package/package.json +7 -6
  13. package/src/config/IdentityConfig.ts +2 -0
  14. package/src/controllers/UserController.ts +190 -21
  15. package/src/html/RegistrationCompleteHtml.ts +52 -0
  16. package/src/interfaces/IUserRepository.ts +5 -0
  17. package/src/models/UserModel.ts +6 -1
  18. package/src/repository/mongo/UserApiKeyMongoRepository.ts +2 -2
  19. package/src/repository/mongo/UserMongoRepository.ts +32 -1
  20. package/src/repository/sqlite/UserSqliteRepository.ts +51 -1
  21. package/src/routes/UserRoutes.ts +16 -6
  22. package/src/services/UserEmailService.ts +78 -0
  23. package/src/services/UserService.ts +107 -12
  24. package/tsconfig.tsbuildinfo +1 -1
  25. package/types/config/IdentityConfig.d.ts +2 -1
  26. package/types/config/IdentityConfig.d.ts.map +1 -1
  27. package/types/controllers/UserController.d.ts +7 -2
  28. package/types/controllers/UserController.d.ts.map +1 -1
  29. package/types/factory/UserApiKeyServiceFactory.d.ts +1 -1
  30. package/types/factory/UserRegistryServiceFactory.d.ts +4 -0
  31. package/types/factory/UserRegistryServiceFactory.d.ts.map +1 -0
  32. package/types/html/RegistrationCompleteHtml.d.ts +3 -0
  33. package/types/html/RegistrationCompleteHtml.d.ts.map +1 -0
  34. package/types/interfaces/IUserRepository.d.ts +4 -0
  35. package/types/interfaces/IUserRepository.d.ts.map +1 -1
  36. package/types/models/UserModel.d.ts.map +1 -1
  37. package/types/repository/mongo/UserApiKeyMongoRepository.d.ts +2 -2
  38. package/types/repository/mongo/UserApiKeyMongoRepository.d.ts.map +1 -1
  39. package/types/repository/mongo/UserMongoRepository.d.ts +5 -0
  40. package/types/repository/mongo/UserMongoRepository.d.ts.map +1 -1
  41. package/types/repository/sqlite/UserApiKeySqliteRepository.d.ts +1 -1
  42. package/types/repository/sqlite/UserSqliteRepository.d.ts +5 -0
  43. package/types/repository/sqlite/UserSqliteRepository.d.ts.map +1 -1
  44. package/types/routes/UserRoutes.d.ts.map +1 -1
  45. package/types/services/UserEmailService.d.ts +7 -0
  46. package/types/services/UserEmailService.d.ts.map +1 -0
  47. package/types/services/UserService.d.ts +6 -0
  48. package/types/services/UserService.d.ts.map +1 -1
@@ -5,7 +5,8 @@ declare enum IdentityConfig {
5
5
  ApiKeySecret = "DRAX_APIKEY_SECRET",
6
6
  ApiKeyCacheTTL = "DRAX_APIKEY_CACHE_TTL",
7
7
  RbacCacheTTL = "DRAX_RBAC_CACHE_TTL",
8
- AvatarDir = "DRAX_AVATAR_DIR"
8
+ AvatarDir = "DRAX_AVATAR_DIR",
9
+ defaultRole = "DRAX_DEFAULT_ROLE"
9
10
  }
10
11
  export default IdentityConfig;
11
12
  export { IdentityConfig };
@@ -1 +1 @@
1
- {"version":3,"file":"IdentityConfig.d.ts","sourceRoot":"","sources":["../../src/config/IdentityConfig.ts"],"names":[],"mappings":"AAAA,aAAK,cAAc;IAIf,SAAS,oBAAoB;IAC7B,aAAa,wBAAwB;IACrC,SAAS,oBAAoB;IAE7B,YAAY,uBAAuB;IACnC,cAAc,0BAA0B;IAExC,YAAY,wBAAwB;IAEpC,SAAS,oBAAoB;CAGhC;AAED,eAAe,cAAc,CAAC;AAC9B,OAAO,EAAC,cAAc,EAAC,CAAC"}
1
+ {"version":3,"file":"IdentityConfig.d.ts","sourceRoot":"","sources":["../../src/config/IdentityConfig.ts"],"names":[],"mappings":"AAAA,aAAK,cAAc;IAIf,SAAS,oBAAoB;IAC7B,aAAa,wBAAwB;IACrC,SAAS,oBAAoB;IAE7B,YAAY,uBAAuB;IACnC,cAAc,0BAA0B;IAExC,YAAY,wBAAwB;IAEpC,SAAS,oBAAoB;IAE7B,WAAW,sBAAsB;CAGpC;AAED,eAAe,cAAc,CAAC;AAC9B,OAAO,EAAC,cAAc,EAAC,CAAC"}
@@ -10,11 +10,16 @@ declare class UserController extends AbstractFastifyController<IUser, IUserCreat
10
10
  me(request: any, reply: any): Promise<IUser>;
11
11
  paginate(request: any, reply: any): Promise<import("packages/crud/crud-share/types/index.js").IDraxPaginateResult<IUser>>;
12
12
  search(request: any, reply: any): Promise<IUser[]>;
13
+ register(request: any, reply: any): Promise<IUser>;
14
+ verifyEmail(request: any, reply: any): Promise<void>;
15
+ verifyPhone(request: any, reply: any): Promise<boolean>;
13
16
  create(request: any, reply: any): Promise<IUser>;
14
17
  update(request: any, reply: any): Promise<IUser>;
15
18
  delete(request: any, reply: any): Promise<void>;
16
- myPassword(request: any, reply: any): Promise<boolean>;
17
- password(request: any, reply: any): Promise<boolean>;
19
+ passwordRecoveryRequest(request: any, reply: any): Promise<void>;
20
+ recoveryPasswordComplete(request: any, reply: any): Promise<void>;
21
+ changeMyPassword(request: any, reply: any): Promise<boolean>;
22
+ changePassword(request: any, reply: any): Promise<boolean>;
18
23
  updateAvatar(request: any, reply: any): Promise<{
19
24
  filename: string;
20
25
  size: number;
@@ -1 +1 @@
1
- {"version":3,"file":"UserController.d.ts","sourceRoot":"","sources":["../../src/controllers/UserController.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAC,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EAAC,yBAAyB,EAAC,MAAM,iBAAiB,CAAC;AAK1D,OAAO,WAAW,MAAM,4BAA4B,CAAC;AAWrD,cAAM,cAAe,SAAQ,yBAAyB,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,CAAC;IAEnF,SAAS,CAAC,OAAO,EAAE,WAAW,CAAA;;IAMxB,IAAI,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;;;IAiBnB,EAAE,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IA0BjB,QAAQ,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IAkCvB,MAAM,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IAyBrB,MAAM,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IAkCrB,MAAM,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IAsCrB,MAAM,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IAyBrB,UAAU,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IAyBzB,QAAQ,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IA0BvB,YAAY,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;;;;;;IA2C3B,SAAS,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;CAqBjC;AAED,eAAe,cAAc,CAAC;AAC9B,OAAO,EACH,cAAc,EACjB,CAAA"}
1
+ {"version":3,"file":"UserController.d.ts","sourceRoot":"","sources":["../../src/controllers/UserController.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAC,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EAAC,yBAAyB,EAAC,MAAM,iBAAiB,CAAC;AAc1D,OAAO,WAAW,MAAM,4BAA4B,CAAC;AAYrD,cAAM,cAAe,SAAQ,yBAAyB,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,CAAC;IAEnF,SAAS,CAAC,OAAO,EAAE,WAAW,CAAA;;IAMxB,IAAI,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;;;IAiBnB,EAAE,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IA0BjB,QAAQ,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IAkCvB,MAAM,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IAyBrB,QAAQ,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IAgDvB,WAAW,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IAoB1B,WAAW,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IAgB1B,MAAM,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IAmCrB,MAAM,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IAuCrB,MAAM,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IA0BrB,uBAAuB,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IAoCtC,wBAAwB,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IAoCvC,gBAAgB,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IAyB/B,cAAc,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IA0B7B,YAAY,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;;;;;;IA2C3B,SAAS,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;CAqBjC;AAED,eAAe,cAAc,CAAC;AAC9B,OAAO,EACH,cAAc,EACjB,CAAA"}
@@ -1,4 +1,4 @@
1
1
  import UserApiKeyService from "../services/UserApiKeyService.js";
2
2
  declare const UserApiKeyServiceFactory: (verbose?: boolean) => UserApiKeyService;
3
3
  export default UserApiKeyServiceFactory;
4
- //# sourceMappingURL=UserApiKeyServiceFactory.d.ts.map
4
+ //# sourceMappingURL=UserRegistryServiceFactory.d.ts.map
@@ -0,0 +1,4 @@
1
+ import UserRegistryService from "../services/UserRegistryService.js";
2
+ declare const UserRegistryServiceFactory: (verbose?: boolean) => UserRegistryService;
3
+ export default UserRegistryServiceFactory;
4
+ //# sourceMappingURL=UserRegistryServiceFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserRegistryServiceFactory.d.ts","sourceRoot":"","sources":["../../src/factory/UserRegistryServiceFactory.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,MAAM,oCAAoC,CAAC;AAQrE,QAAA,MAAM,0BAA0B,aAAa,OAAO,KAAW,mBAmB9D,CAAA;AAED,eAAe,0BAA0B,CAAA"}
@@ -0,0 +1,3 @@
1
+ declare const html = "\n <!DOCTYPE html>\n <html lang=\"en\">\n <head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>Registro Completo</title>\n <style>\n body {\n margin: 0;\n height: 100vh;\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: #f5f5f5;\n font-family: Arial, sans-serif;\n }\n .container {\n width: 300px;\n border: 1px solid grey;\n padding: 20px;\n text-align: center;\n background: white;\n box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);\n border-radius: 8px;\n }\n .title {\n color: darkgreen;\n font-size: 20px;\n font-weight: bold;\n margin-bottom: 20px;\n }\n .link {\n margin-top: 20px;\n text-decoration: none;\n color: #007bff;\n }\n .link:hover {\n text-decoration: underline;\n }\n </style>\n </head>\n <body>\n <div class=\"container\">\n <div class=\"title\">Registro Completo</div>\n <a href=\"/login\" class=\"link\">Login</a>\n </div>\n </body>\n </html>\n ";
2
+ export default html;
3
+ //# sourceMappingURL=RegistrationCompleteHtml.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegistrationCompleteHtml.d.ts","sourceRoot":"","sources":["../../src/html/RegistrationCompleteHtml.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,IAAI,uzCAiDO,CAAA;AAEjB,eAAe,IAAI,CAAA"}
@@ -3,9 +3,13 @@ import { IDraxCrud } from "@drax/crud-share";
3
3
  interface IUserRepository extends IDraxCrud<IUser, IUserCreate, IUserUpdate> {
4
4
  findById(id: string): Promise<IUser | null>;
5
5
  findByUsername(username: string): Promise<IUser | null>;
6
+ findByUsernameWithPassword(username: string): Promise<IUser | null>;
6
7
  findByEmail(email: string): Promise<IUser | null>;
7
8
  changePassword(id: string, password: string): Promise<Boolean>;
8
9
  changeAvatar(id: string, avatarUrl: string): Promise<Boolean>;
10
+ findByEmailCode(code: string): Promise<IUser | null>;
11
+ findByPhoneCode(code: string): Promise<IUser | null>;
12
+ findByRecoveryCode(code: string): Promise<IUser | null>;
9
13
  }
10
14
  export { IUserRepository };
11
15
  //# sourceMappingURL=IUserRepository.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IUserRepository.d.ts","sourceRoot":"","sources":["../../src/interfaces/IUserRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAC,MAAM,sBAAsB,CAAA;AACpE,OAAO,EAAC,SAAS,EAAmB,MAAM,kBAAkB,CAAC;AAE7D,UAAU,eAAgB,SAAQ,SAAS,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,CAAC;IACxE,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAC5C,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACxD,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAClD,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAC,MAAM,GAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7D,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACjE;AAED,OAAO,EAAC,eAAe,EAAC,CAAA"}
1
+ {"version":3,"file":"IUserRepository.d.ts","sourceRoot":"","sources":["../../src/interfaces/IUserRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAC,MAAM,sBAAsB,CAAA;AACpE,OAAO,EAAC,SAAS,EAAmB,MAAM,kBAAkB,CAAC;AAE7D,UAAU,eAAgB,SAAQ,SAAS,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,CAAC;IACxE,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAC5C,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACxD,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACpE,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAClD,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAC,MAAM,GAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7D,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE9D,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACrD,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACrD,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;CAC3D;AAED,OAAO,EAAC,eAAe,EAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"UserModel.d.ts","sourceRoot":"","sources":["../../src/models/UserModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAqB,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAC,KAAK,EAAC,MAAM,sBAAsB,CAAC;AAO3C,QAAA,MAAM,UAAU;;;;;;;;EA+DM,CAAC;AAYvB,QAAA,MAAM,SAAS,uCAA+F,CAAC;AAE/G,OAAO,EACH,UAAU,EACV,SAAS,EACZ,CAAA;AAED,eAAe,SAAS,CAAA"}
1
+ {"version":3,"file":"UserModel.d.ts","sourceRoot":"","sources":["../../src/models/UserModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAqB,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAC,KAAK,EAAC,MAAM,sBAAsB,CAAC;AAO3C,QAAA,MAAM,UAAU;;;;;;;;EAoEM,CAAC;AAYvB,QAAA,MAAM,SAAS,uCAA+F,CAAC;AAE/G,OAAO,EACH,UAAU,EACV,SAAS,EACZ,CAAA;AAED,eAAe,SAAS,CAAA"}
@@ -1,7 +1,7 @@
1
1
  import type { IUserApiKey, IUserApiKeyBase } from "@drax/identity-share";
2
2
  import { IDraxPaginateOptions, IDraxPaginateResult } from "@drax/crud-share";
3
3
  import { IUserApiKeyRepository } from "../../interfaces/IUserApiKeyRepository";
4
- declare class UserMongoRepository implements IUserApiKeyRepository {
4
+ declare class UserApiKeyMongoRepository implements IUserApiKeyRepository {
5
5
  constructor();
6
6
  create(data: IUserApiKeyBase): Promise<IUserApiKey>;
7
7
  update(id: string, data: IUserApiKeyBase): Promise<IUserApiKey>;
@@ -10,5 +10,5 @@ declare class UserMongoRepository implements IUserApiKeyRepository {
10
10
  findBySecret(secret: string): Promise<IUserApiKey>;
11
11
  paginate({ page, limit, orderBy, order, search, filters }: IDraxPaginateOptions): Promise<IDraxPaginateResult<IUserApiKey>>;
12
12
  }
13
- export default UserMongoRepository;
13
+ export default UserApiKeyMongoRepository;
14
14
  //# sourceMappingURL=UserApiKeyMongoRepository.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UserApiKeyMongoRepository.d.ts","sourceRoot":"","sources":["../../../src/repository/mongo/UserApiKeyMongoRepository.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAC,WAAW,EAAE,eAAe,EAAwB,MAAM,sBAAsB,CAAC;AAG9F,OAAO,EAAC,oBAAoB,EAAE,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAC,qBAAqB,EAAC,MAAM,wCAAwC,CAAC;AAE7E,cAAM,mBAAoB,YAAW,qBAAqB;;IAMhD,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;IAgBnD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;IAgB/D,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMpC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAK1C,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAKlD,QAAQ,CAAC,EACI,IAAQ,EACR,KAAS,EACT,OAAY,EACZ,KAAa,EACb,MAAW,EACX,OAAY,EACf,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;CA2BrF;AAED,eAAe,mBAAmB,CAAA"}
1
+ {"version":3,"file":"UserApiKeyMongoRepository.d.ts","sourceRoot":"","sources":["../../../src/repository/mongo/UserApiKeyMongoRepository.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAC,WAAW,EAAE,eAAe,EAAwB,MAAM,sBAAsB,CAAC;AAG9F,OAAO,EAAC,oBAAoB,EAAE,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAC,qBAAqB,EAAC,MAAM,wCAAwC,CAAC;AAE7E,cAAM,yBAA0B,YAAW,qBAAqB;;IAMtD,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;IAgBnD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;IAgB/D,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMpC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAK1C,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAKlD,QAAQ,CAAC,EACI,IAAQ,EACR,KAAS,EACT,OAAY,EACZ,KAAa,EACb,MAAW,EACX,OAAY,EACf,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;CA2BrF;AAED,eAAe,yBAAyB,CAAA"}
@@ -9,10 +9,15 @@ declare class UserMongoRepository implements IUserRepository {
9
9
  constructor();
10
10
  create(userData: IUserCreate): Promise<IUser>;
11
11
  update(id: string, userData: IUserUpdate): Promise<IUser>;
12
+ updatePartial(id: string, data: any): Promise<IUser>;
12
13
  delete(id: string): Promise<boolean>;
13
14
  findById(id: string): Promise<IUser>;
14
15
  findByUsername(username: string): Promise<IUser>;
16
+ findByUsernameWithPassword(username: string): Promise<IUser>;
15
17
  findByEmail(email: string): Promise<IUser>;
18
+ findByEmailCode(code: string): Promise<IUser>;
19
+ findByPhoneCode(code: string): Promise<IUser>;
20
+ findByRecoveryCode(code: string): Promise<IUser>;
16
21
  paginate({ page, limit, orderBy, order, search, filters }: IDraxPaginateOptions): Promise<IDraxPaginateResult<IUser>>;
17
22
  search(value: string, limit?: number, filters?: IDraxFieldFilter[]): Promise<IUser[]>;
18
23
  changePassword(id: string, password: string): Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"UserMongoRepository.d.ts","sourceRoot":"","sources":["../../../src/repository/mongo/UserMongoRepository.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAC,MAAM,sBAAsB,CAAC;AAE1E,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAC,MAAM,EAAiB,MAAM,UAAU,CAAC;AAEhD,OAAO,EAAC,gBAAgB,EAAE,oBAAoB,EAAE,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AAE7F,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AAE5D,cAAM,mBAAoB,YAAW,eAAe;IAChD,OAAO,CAAC,cAAc,CAAsB;IAC5C,aAAa,WAAsC;;IAM7C,MAAM,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;IAoB7C,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;IAezD,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMpC,QAAQ,CAAC,EAAE,EAAC,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAKnC,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAKhD,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAK1C,QAAQ,CAAC,EACI,IAAO,EACP,KAAQ,EACR,OAAW,EACX,KAAY,EACZ,MAAU,EACV,OAAW,EAAC,EAAG,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAwBtF,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,GAAE,MAAa,EAAE,OAAO,GAAE,gBAAgB,EAAO,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAU/F,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAE,OAAO,CAAC,OAAO,CAAC;IAU7D,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,OAAO,CAAC,OAAO,CAAC;IAUzD,IAAI,CAAC,EACI,KAAS,EACT,OAAY,EACZ,KAAa,EACb,MAAW,EACX,OAAY,EACf,EAAE,gBAAgB,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAiB3C,UAAU,CAAC,EACI,KAAS,EACT,OAAY,EACZ,KAAa,EACb,MAAW,EACX,OAAY,EACf,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC;CAgBzD;AAED,eAAe,mBAAmB,CAAA"}
1
+ {"version":3,"file":"UserMongoRepository.d.ts","sourceRoot":"","sources":["../../../src/repository/mongo/UserMongoRepository.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAC,MAAM,sBAAsB,CAAC;AAE1E,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAC,MAAM,EAAiB,MAAM,UAAU,CAAC;AAEhD,OAAO,EAAC,gBAAgB,EAAE,oBAAoB,EAAE,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AAC7F,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AAE5D,cAAM,mBAAoB,YAAW,eAAe;IAChD,OAAO,CAAC,cAAc,CAAsB;IAC5C,aAAa,WAAsC;;IAM7C,MAAM,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;IAoB7C,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;IAezD,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC;IAYpD,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMpC,QAAQ,CAAC,EAAE,EAAC,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAKnC,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAKhD,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAK5D,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAK1C,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAK7C,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAK7C,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAKhD,QAAQ,CAAC,EACI,IAAO,EACP,KAAQ,EACR,OAAW,EACX,KAAY,EACZ,MAAU,EACV,OAAW,EAAC,EAAG,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAwBtF,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,GAAE,MAAa,EAAE,OAAO,GAAE,gBAAgB,EAAO,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAU/F,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAE,OAAO,CAAC,OAAO,CAAC;IAU7D,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,OAAO,CAAC,OAAO,CAAC;IAUzD,IAAI,CAAC,EACI,KAAS,EACT,OAAY,EACZ,KAAa,EACb,MAAW,EACX,OAAY,EACf,EAAE,gBAAgB,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAiB3C,UAAU,CAAC,EACI,KAAS,EACT,OAAY,EACZ,KAAa,EACb,MAAW,EACX,OAAY,EACf,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC;CAgBzD;AAED,eAAe,mBAAmB,CAAA"}
@@ -16,4 +16,4 @@ declare class UserApiKeySqliteRepository implements IUserApiKeyRepository {
16
16
  paginate({ page, limit, orderBy, order, search, filters }: IDraxPaginateOptions): Promise<IDraxPaginateResult<IUserApiKey>>;
17
17
  }
18
18
  export default UserApiKeySqliteRepository;
19
- //# sourceMappingURL=UserApiKeySqliteRepository.d.ts.map
19
+ //# sourceMappingURL=UserRegistrySqliteRepository.d.ts.map
@@ -10,12 +10,17 @@ declare class UserSqliteRepository implements IUserRepository {
10
10
  table(): void;
11
11
  normalizeData(userData: IUserCreate | IUserUpdate): void;
12
12
  create(userData: IUserCreate): Promise<IUser>;
13
+ updatePartial(id: string, userData: IUserUpdate): Promise<IUser>;
13
14
  update(id: string, userData: IUserUpdate): Promise<IUser>;
14
15
  delete(id: string): Promise<boolean>;
15
16
  deleteAll(): Promise<boolean>;
16
17
  findById(id: string): Promise<IUser>;
17
18
  findByUsername(username: string): Promise<IUser>;
19
+ findByUsernameWithPassword(username: string): Promise<IUser>;
18
20
  findByEmail(email: string): Promise<IUser>;
21
+ findByEmailCode(code: string): Promise<IUser>;
22
+ findByRecoveryCode(code: string): Promise<IUser>;
23
+ findByPhoneCode(code: string): Promise<IUser>;
19
24
  paginate({ page, limit, orderBy, order, search, filters }: IDraxPaginateOptions): Promise<IDraxPaginateResult<IUser>>;
20
25
  findRoleById(id: string): Promise<import("@drax/identity-share").IRole>;
21
26
  findTenantById(id: string): Promise<import("@drax/identity-share").ITenant>;
@@ -1 +1 @@
1
- {"version":3,"file":"UserSqliteRepository.d.ts","sourceRoot":"","sources":["../../../src/repository/sqlite/UserSqliteRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAC,MAAM,sBAAsB,CAAC;AAIrE,OAAO,EAAC,eAAe,EAAC,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAC,mBAAmB,EAAE,oBAAoB,EAAC,MAAM,kBAAkB,CAAC;AA6B3E,cAAM,oBAAqB,YAAW,eAAe;IACjD,OAAO,CAAC,EAAE,CAAM;IAChB,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,gBAAgB,CAAyB;IACjD,OAAO,CAAC,YAAY,CAAS;gBAEjB,YAAY,EAAE,MAAM,EAAE,OAAO,GAAE,OAAe;IAQ1D,KAAK;IASL,aAAa,CAAC,QAAQ,EAAE,WAAW,GAAG,WAAW,GAAG,IAAI;IAOlD,MAAM,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;IAiC7C,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;IAwBzD,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMpC,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAM7B,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAUpC,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAUhD,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAU1C,QAAQ,CAAC,EACI,IAAO,EACP,KAAQ,EACR,OAAW,EACX,KAAY,EACZ,MAAU,EACV,OAAW,EAAC,EAAG,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAsCtF,YAAY,CAAC,EAAE,EAAE,MAAM;IAIvB,cAAc,CAAC,EAAE,EAAE,MAAM;IAIzB,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQ9D,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAOnE;AAED,eAAe,oBAAoB,CAAA"}
1
+ {"version":3,"file":"UserSqliteRepository.d.ts","sourceRoot":"","sources":["../../../src/repository/sqlite/UserSqliteRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAC,MAAM,sBAAsB,CAAC;AAIrE,OAAO,EAAC,eAAe,EAAC,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAC,mBAAmB,EAAE,oBAAoB,EAAC,MAAM,kBAAkB,CAAC;AAiC3E,cAAM,oBAAqB,YAAW,eAAe;IACjD,OAAO,CAAC,EAAE,CAAM;IAChB,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,gBAAgB,CAAyB;IACjD,OAAO,CAAC,YAAY,CAAS;gBAEjB,YAAY,EAAE,MAAM,EAAE,OAAO,GAAE,OAAe;IAQ1D,KAAK;IASL,aAAa,CAAC,QAAQ,EAAE,WAAW,GAAG,WAAW,GAAG,IAAI;IAOlD,MAAM,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;IAiC7C,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;IAIhE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;IA0BzD,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMpC,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAM7B,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAUpC,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAUhD,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAU5D,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAU1C,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAU7C,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAUhD,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAU7C,QAAQ,CAAC,EACI,IAAO,EACP,KAAQ,EACR,OAAW,EACX,KAAY,EACZ,MAAU,EACV,OAAW,EAAC,EAAG,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAsCtF,YAAY,CAAC,EAAE,EAAE,MAAM;IAIvB,cAAc,CAAC,EAAE,EAAE,MAAM;IAIzB,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQ9D,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAOnE;AAED,eAAe,oBAAoB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"UserRoutes.d.ts","sourceRoot":"","sources":["../../src/routes/UserRoutes.ts"],"names":[],"mappings":"AAEA,iBAAe,UAAU,CAAC,OAAO,KAAA,EAAE,OAAO,KAAA,iBA4BzC;AAED,eAAe,UAAU,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAC,CAAA"}
1
+ {"version":3,"file":"UserRoutes.d.ts","sourceRoot":"","sources":["../../src/routes/UserRoutes.ts"],"names":[],"mappings":"AAEA,iBAAe,UAAU,CAAC,OAAO,KAAA,EAAE,OAAO,KAAA,iBAsCzC;AAED,eAAe,UAAU,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAC,CAAA"}
@@ -0,0 +1,7 @@
1
+ declare class UserEmailService {
2
+ static emailVerifyCode(emailCode: string, emailTo: string): Promise<void>;
3
+ static recoveryCode(recoveryCode: string, emailTo: string): Promise<void>;
4
+ }
5
+ export default UserEmailService;
6
+ export { UserEmailService };
7
+ //# sourceMappingURL=UserEmailService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserEmailService.d.ts","sourceRoot":"","sources":["../../src/services/UserEmailService.ts"],"names":[],"mappings":"AAIA,cAAM,gBAAgB;WAEL,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAC,MAAM;WA+BjD,YAAY,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAC,MAAM;CAoCjE;AAED,eAAe,gBAAgB,CAAA;AAE/B,OAAO,EAAC,gBAAgB,EAAC,CAAA"}
@@ -14,11 +14,17 @@ declare class UserService extends AbstractService<IUser, IUserCreate, IUserUpdat
14
14
  changeUserPassword(userId: string, newPassword: string): Promise<boolean>;
15
15
  changeOwnPassword(userId: string, currentPassword: string, newPassword: string): Promise<boolean>;
16
16
  changeAvatar(userId: string, avatar: string): Promise<boolean>;
17
+ recoveryCode(email: string): Promise<string>;
18
+ changeUserPasswordByCode(recoveryCode: string, newPassword: string): Promise<boolean>;
19
+ register(userData: IUserCreate): Promise<IUser>;
20
+ verifyEmail(emailCode: string): Promise<boolean>;
21
+ verifyPhone(phoneCode: string): Promise<boolean>;
17
22
  create(userData: IUserCreate): Promise<IUser>;
18
23
  update(id: string, userData: IUserUpdate): Promise<IUser>;
19
24
  delete(id: string): Promise<boolean>;
20
25
  findById(id: string): Promise<IUser>;
21
26
  findByUsername(username: string): Promise<IUser | null>;
27
+ findByUsernameWithPassword(username: string): Promise<IUser | null>;
22
28
  findByEmail(email: string): Promise<IUser | null>;
23
29
  paginate({ page, limit, orderBy, order, search, filters }: IDraxPaginateOptions): Promise<IDraxPaginateResult<IUser>>;
24
30
  search(value: any, limit?: number, filters?: any[]): Promise<IUser[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"UserService.d.ts","sourceRoot":"","sources":["../../src/services/UserService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAC,MAAM,sBAAsB,CAAC;AAC1E,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,+BAA+B,CAAC;AAMnE,OAAO,EAAC,oBAAoB,EAAE,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAC,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAGhD,cAAM,WAAY,SAAQ,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,CAAC;IAEtE,WAAW,EAAE,eAAe,CAAA;gBAEhB,cAAc,EAAE,eAAe;IAMrC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;;;IAcvC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAe,EAAE,QAAQ,EAAE,WAAW;;;IAoBnF,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAYtD,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAuB9E,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAW3C,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,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAUjD,QAAQ,CAAC,EACI,IAAQ,EACR,KAAS,EACT,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":"AAAA,OAAO,KAAK,EAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAC,MAAM,sBAAsB,CAAC;AAC1E,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;AAGhD,cAAM,WAAY,SAAQ,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,CAAC;IAEtE,WAAW,EAAE,eAAe,CAAA;gBAEhB,cAAc,EAAE,eAAe;IAMrC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;;;IAcvC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAe,EAAE,QAAQ,EAAE,WAAW;;;IAqBnF,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAYtD,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAsB9E,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAU3C,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgB5C,wBAAwB,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAmBrF,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,KAAS,EACT,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"}