@forklaunch/implementation-iam-base 0.1.2 → 0.1.5

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 (87) hide show
  1. package/lib/__test__/schemaEquality.test.d.ts +2 -0
  2. package/lib/__test__/schemaEquality.test.d.ts.map +1 -0
  3. package/lib/__test__/schemaEquality.test.js +175 -0
  4. package/lib/eject/schemas/index.ts +4 -0
  5. package/{schemas/typebox → lib/eject/schemas}/organization.schema.ts +13 -11
  6. package/{schemas/zod → lib/eject/schemas}/permission.schema.ts +7 -1
  7. package/lib/eject/schemas/role.schema.ts +37 -0
  8. package/{schemas/typebox → lib/eject/schemas}/user.schema.ts +20 -19
  9. package/lib/eject/services/index.ts +4 -0
  10. package/{services → lib/eject/services}/organization.service.ts +6 -6
  11. package/{services → lib/eject/services}/permission.service.ts +9 -6
  12. package/{services → lib/eject/services}/role.service.ts +6 -6
  13. package/{services → lib/eject/services}/user.service.ts +11 -9
  14. package/lib/jest.config.d.ts +4 -0
  15. package/lib/jest.config.d.ts.map +1 -0
  16. package/lib/jest.config.js +19 -0
  17. package/lib/schemas/index.d.ts +5 -0
  18. package/lib/schemas/index.d.ts.map +1 -0
  19. package/lib/schemas/index.js +4 -0
  20. package/lib/schemas/organization.schema.d.ts +192 -0
  21. package/lib/schemas/organization.schema.d.ts.map +1 -0
  22. package/lib/schemas/organization.schema.js +4 -0
  23. package/lib/schemas/permission.schema.d.ts +42 -0
  24. package/lib/schemas/permission.schema.d.ts.map +1 -0
  25. package/lib/schemas/permission.schema.js +4 -0
  26. package/lib/schemas/role.schema.d.ts +66 -0
  27. package/lib/schemas/role.schema.d.ts.map +1 -0
  28. package/lib/schemas/role.schema.js +4 -0
  29. package/lib/schemas/typebox/organization.schema.d.ts +106 -0
  30. package/lib/schemas/typebox/organization.schema.d.ts.map +1 -0
  31. package/lib/schemas/typebox/organization.schema.js +34 -0
  32. package/lib/schemas/typebox/permission.schema.d.ts +41 -0
  33. package/lib/schemas/typebox/permission.schema.d.ts.map +1 -0
  34. package/lib/schemas/typebox/permission.schema.js +25 -0
  35. package/lib/schemas/typebox/role.schema.d.ts +53 -0
  36. package/lib/schemas/typebox/role.schema.d.ts.map +1 -0
  37. package/lib/schemas/typebox/role.schema.js +26 -0
  38. package/lib/schemas/typebox/user.schema.d.ts +97 -0
  39. package/lib/schemas/typebox/user.schema.d.ts.map +1 -0
  40. package/lib/schemas/typebox/user.schema.js +41 -0
  41. package/lib/schemas/user.schema.d.ts +136 -0
  42. package/lib/schemas/user.schema.d.ts.map +1 -0
  43. package/lib/schemas/user.schema.js +4 -0
  44. package/lib/schemas/zod/organization.schema.d.ts +278 -0
  45. package/lib/schemas/zod/organization.schema.d.ts.map +1 -0
  46. package/lib/schemas/zod/organization.schema.js +34 -0
  47. package/lib/schemas/zod/permission.schema.d.ts +41 -0
  48. package/lib/schemas/zod/permission.schema.d.ts.map +1 -0
  49. package/lib/schemas/zod/permission.schema.js +25 -0
  50. package/lib/schemas/zod/role.schema.d.ts +77 -0
  51. package/lib/schemas/zod/role.schema.d.ts.map +1 -0
  52. package/lib/schemas/zod/role.schema.js +26 -0
  53. package/lib/schemas/zod/user.schema.d.ts +173 -0
  54. package/lib/schemas/zod/user.schema.d.ts.map +1 -0
  55. package/lib/schemas/zod/user.schema.js +41 -0
  56. package/lib/services/index.d.ts +5 -0
  57. package/lib/services/index.d.ts.map +1 -0
  58. package/lib/services/index.js +4 -0
  59. package/lib/services/organization.service.d.ts +45 -0
  60. package/lib/services/organization.service.d.ts.map +1 -0
  61. package/lib/services/organization.service.js +35 -0
  62. package/lib/services/permission.service.d.ts +62 -0
  63. package/lib/services/permission.service.d.ts.map +1 -0
  64. package/lib/services/permission.service.js +159 -0
  65. package/lib/services/role.service.d.ts +49 -0
  66. package/lib/services/role.service.d.ts.map +1 -0
  67. package/lib/services/role.service.js +57 -0
  68. package/lib/services/user.service.d.ts +54 -0
  69. package/lib/services/user.service.d.ts.map +1 -0
  70. package/lib/services/user.service.js +85 -0
  71. package/lib/tsconfig.tsbuildinfo +1 -0
  72. package/lib/vitest.config.d.ts +3 -0
  73. package/lib/vitest.config.d.ts.map +1 -0
  74. package/lib/vitest.config.js +7 -0
  75. package/package.json +22 -10
  76. package/__test__/schemaEquality.test.ts +0 -293
  77. package/index.ts +0 -8
  78. package/schemas/organization.schema.ts +0 -28
  79. package/schemas/permission.schema.ts +0 -28
  80. package/schemas/role.schema.ts +0 -28
  81. package/schemas/typebox/permission.schema.ts +0 -30
  82. package/schemas/typebox/role.schema.ts +0 -36
  83. package/schemas/user.schema.ts +0 -28
  84. package/schemas/zod/organization.schema.ts +0 -49
  85. package/schemas/zod/role.schema.ts +0 -36
  86. package/schemas/zod/user.schema.ts +0 -52
  87. package/tsconfig.json +0 -7
@@ -0,0 +1,53 @@
1
+ export declare const CreateRoleSchema: {
2
+ name: import("@sinclair/typebox").TString;
3
+ permissionIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
4
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
5
+ };
6
+ export declare const UpdateRoleSchema: (uuidId: boolean) => {
7
+ id: import("@sinclair/typebox").TString;
8
+ name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
9
+ permissionIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
10
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
11
+ };
12
+ export declare const RoleSchema: (uuidId: boolean) => {
13
+ id: import("@sinclair/typebox").TString;
14
+ name: import("@sinclair/typebox").TString;
15
+ permissions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
16
+ id: import("@sinclair/typebox").TString;
17
+ slug: import("@sinclair/typebox").TString;
18
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
19
+ createdAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
20
+ updatedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
21
+ }>>;
22
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
23
+ createdAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
24
+ updatedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
25
+ };
26
+ export declare const BaseRoleServiceSchemas: (uuidId: boolean) => {
27
+ CreateRoleSchema: {
28
+ name: import("@sinclair/typebox").TString;
29
+ permissionIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
30
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
31
+ };
32
+ UpdateRoleSchema: {
33
+ id: import("@sinclair/typebox").TString;
34
+ name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
35
+ permissionIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
36
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
37
+ };
38
+ RoleSchema: {
39
+ id: import("@sinclair/typebox").TString;
40
+ name: import("@sinclair/typebox").TString;
41
+ permissions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
42
+ id: import("@sinclair/typebox").TString;
43
+ slug: import("@sinclair/typebox").TString;
44
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
45
+ createdAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
46
+ updatedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
47
+ }>>;
48
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
49
+ createdAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
50
+ updatedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
51
+ };
52
+ };
53
+ //# sourceMappingURL=role.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"role.schema.d.ts","sourceRoot":"","sources":["../../../schemas/typebox/role.schema.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,gBAAgB;;;;CAI5B,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,QAAQ,OAAO;;;;;CAK9C,CAAC;AAEH,eAAO,MAAM,UAAU,GAAI,QAAQ,OAAO;;;;;;;;;;;;;CAOxC,CAAC;AAEH,eAAO,MAAM,sBAAsB,GAAI,QAAQ,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;CAIpD,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { array, date, optional, string, unknown, uuid } from '@forklaunch/validator/typebox';
2
+ import { PermissionSchema } from './permission.schema';
3
+ export const CreateRoleSchema = {
4
+ name: string,
5
+ permissionIds: optional(array(string)),
6
+ extraFields: optional(unknown)
7
+ };
8
+ export const UpdateRoleSchema = (uuidId) => ({
9
+ id: uuidId ? uuid : string,
10
+ name: optional(string),
11
+ permissionIds: optional(array(string)),
12
+ extraFields: optional(unknown)
13
+ });
14
+ export const RoleSchema = (uuidId) => ({
15
+ id: uuidId ? uuid : string,
16
+ name: string,
17
+ permissions: array(PermissionSchema(uuidId)),
18
+ extraFields: optional(unknown),
19
+ createdAt: optional(date),
20
+ updatedAt: optional(date)
21
+ });
22
+ export const BaseRoleServiceSchemas = (uuidId) => ({
23
+ CreateRoleSchema,
24
+ UpdateRoleSchema: UpdateRoleSchema(uuidId),
25
+ RoleSchema: RoleSchema(uuidId)
26
+ });
@@ -0,0 +1,97 @@
1
+ export declare const CreateUserSchema: {
2
+ email: import("@sinclair/typebox").TString;
3
+ password: import("@sinclair/typebox").TString;
4
+ firstName: import("@sinclair/typebox").TString;
5
+ lastName: import("@sinclair/typebox").TString;
6
+ organizationId: import("@sinclair/typebox").TString;
7
+ roleIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
8
+ phoneNumber: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
9
+ subscription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
10
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
11
+ };
12
+ export declare const UpdateUserSchema: (uuidId: boolean) => {
13
+ id: import("@sinclair/typebox").TString;
14
+ email: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
15
+ password: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
16
+ firstName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
17
+ lastName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
18
+ roleIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
19
+ phoneNumber: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
20
+ subscription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
21
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
22
+ };
23
+ export declare const UserSchema: (uuidId: boolean) => {
24
+ id: import("@sinclair/typebox").TString;
25
+ email: import("@sinclair/typebox").TString;
26
+ firstName: import("@sinclair/typebox").TString;
27
+ lastName: import("@sinclair/typebox").TString;
28
+ roles: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
29
+ id: import("@sinclair/typebox").TString;
30
+ name: import("@sinclair/typebox").TString;
31
+ permissions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
32
+ id: import("@sinclair/typebox").TString;
33
+ slug: import("@sinclair/typebox").TString;
34
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
35
+ createdAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
36
+ updatedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
37
+ }>>;
38
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
39
+ createdAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
40
+ updatedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
41
+ }>>;
42
+ phoneNumber: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
43
+ subscription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
44
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
45
+ createdAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
46
+ updatedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
47
+ };
48
+ export declare const BaseUserServiceSchemas: (uuidId: boolean) => {
49
+ CreateUserSchema: {
50
+ email: import("@sinclair/typebox").TString;
51
+ password: import("@sinclair/typebox").TString;
52
+ firstName: import("@sinclair/typebox").TString;
53
+ lastName: import("@sinclair/typebox").TString;
54
+ organizationId: import("@sinclair/typebox").TString;
55
+ roleIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
56
+ phoneNumber: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
57
+ subscription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
58
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
59
+ };
60
+ UpdateUserSchema: {
61
+ id: import("@sinclair/typebox").TString;
62
+ email: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
63
+ password: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
64
+ firstName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
65
+ lastName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
66
+ roleIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
67
+ phoneNumber: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
68
+ subscription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
69
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
70
+ };
71
+ UserSchema: {
72
+ id: import("@sinclair/typebox").TString;
73
+ email: import("@sinclair/typebox").TString;
74
+ firstName: import("@sinclair/typebox").TString;
75
+ lastName: import("@sinclair/typebox").TString;
76
+ roles: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
77
+ id: import("@sinclair/typebox").TString;
78
+ name: import("@sinclair/typebox").TString;
79
+ permissions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
80
+ id: import("@sinclair/typebox").TString;
81
+ slug: import("@sinclair/typebox").TString;
82
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
83
+ createdAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
84
+ updatedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
85
+ }>>;
86
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
87
+ createdAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
88
+ updatedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
89
+ }>>;
90
+ phoneNumber: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
91
+ subscription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
92
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
93
+ createdAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
94
+ updatedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
95
+ };
96
+ };
97
+ //# sourceMappingURL=user.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.schema.d.ts","sourceRoot":"","sources":["../../../schemas/typebox/user.schema.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,gBAAgB;;;;;;;;;;CAU5B,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,QAAQ,OAAO;;;;;;;;;;CAU9C,CAAC;AAEH,eAAO,MAAM,UAAU,GAAI,QAAQ,OAAO;;;;;;;;;;;;;;;;;;;;;;;;CAWxC,CAAC;AAEH,eAAO,MAAM,sBAAsB,GAAI,QAAQ,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIpD,CAAC"}
@@ -0,0 +1,41 @@
1
+ import { array, date, email, optional, string, unknown, uuid } from '@forklaunch/validator/typebox';
2
+ import { RoleSchema } from './role.schema';
3
+ export const CreateUserSchema = {
4
+ email: email,
5
+ password: string,
6
+ firstName: string,
7
+ lastName: string,
8
+ organizationId: string,
9
+ roleIds: array(string),
10
+ phoneNumber: optional(string),
11
+ subscription: optional(string),
12
+ extraFields: optional(unknown)
13
+ };
14
+ export const UpdateUserSchema = (uuidId) => ({
15
+ id: uuidId ? uuid : string,
16
+ email: optional(email),
17
+ password: optional(string),
18
+ firstName: optional(string),
19
+ lastName: optional(string),
20
+ roleIds: optional(array(string)),
21
+ phoneNumber: optional(string),
22
+ subscription: optional(string),
23
+ extraFields: optional(unknown)
24
+ });
25
+ export const UserSchema = (uuidId) => ({
26
+ id: uuidId ? uuid : string,
27
+ email: email,
28
+ firstName: string,
29
+ lastName: string,
30
+ roles: array(RoleSchema(uuidId)),
31
+ phoneNumber: optional(string),
32
+ subscription: optional(string),
33
+ extraFields: optional(unknown),
34
+ createdAt: optional(date),
35
+ updatedAt: optional(date)
36
+ });
37
+ export const BaseUserServiceSchemas = (uuidId) => ({
38
+ CreateUserSchema,
39
+ UpdateUserSchema: UpdateUserSchema(uuidId),
40
+ UserSchema: UserSchema(uuidId)
41
+ });
@@ -0,0 +1,136 @@
1
+ export declare const BaseUserServiceSchemas: <SchemaValidator extends import("@forklaunch/validator").AnySchemaValidator>(schemaValidator: SchemaValidator, uuidId: boolean) => import("@forklaunch/core/dtoMapper").SchemasByValidator<SchemaValidator, (uuidId: boolean) => {
2
+ CreateUserSchema: {
3
+ email: import("@sinclair/typebox").TString;
4
+ password: import("@sinclair/typebox").TString;
5
+ firstName: import("@sinclair/typebox").TString;
6
+ lastName: import("@sinclair/typebox").TString;
7
+ organizationId: import("@sinclair/typebox").TString;
8
+ roleIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
9
+ phoneNumber: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
10
+ subscription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
11
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
12
+ };
13
+ UpdateUserSchema: {
14
+ id: import("@sinclair/typebox").TString;
15
+ email: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
16
+ password: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
17
+ firstName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
18
+ lastName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
19
+ roleIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
20
+ phoneNumber: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
21
+ subscription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
22
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
23
+ };
24
+ UserSchema: {
25
+ id: import("@sinclair/typebox").TString;
26
+ email: import("@sinclair/typebox").TString;
27
+ firstName: import("@sinclair/typebox").TString;
28
+ lastName: import("@sinclair/typebox").TString;
29
+ roles: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
30
+ id: import("@sinclair/typebox").TString;
31
+ name: import("@sinclair/typebox").TString;
32
+ permissions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
33
+ id: import("@sinclair/typebox").TString;
34
+ slug: import("@sinclair/typebox").TString;
35
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
36
+ createdAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
37
+ updatedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
38
+ }>>;
39
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
40
+ createdAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
41
+ updatedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
42
+ }>>;
43
+ phoneNumber: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
44
+ subscription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
45
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
46
+ createdAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
47
+ updatedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TDate, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TString, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>, Date>>;
48
+ };
49
+ }, (uuidId: boolean) => {
50
+ CreateUserSchema: {
51
+ email: import("zod").ZodString;
52
+ password: import("zod").ZodString;
53
+ firstName: import("zod").ZodString;
54
+ lastName: import("zod").ZodString;
55
+ organizationId: import("zod").ZodString;
56
+ roleIds: import("zod").ZodArray<import("zod").ZodString, "many">;
57
+ phoneNumber: import("zod").ZodOptional<import("zod").ZodString>;
58
+ subscription: import("zod").ZodOptional<import("zod").ZodString>;
59
+ extraFields: import("zod").ZodOptional<import("zod").ZodUnknown>;
60
+ };
61
+ UpdateUserSchema: {
62
+ id: import("zod").ZodString;
63
+ email: import("zod").ZodOptional<import("zod").ZodString>;
64
+ password: import("zod").ZodOptional<import("zod").ZodString>;
65
+ firstName: import("zod").ZodOptional<import("zod").ZodString>;
66
+ lastName: import("zod").ZodOptional<import("zod").ZodString>;
67
+ roleIds: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
68
+ phoneNumber: import("zod").ZodOptional<import("zod").ZodString>;
69
+ subscription: import("zod").ZodOptional<import("zod").ZodString>;
70
+ extraFields: import("zod").ZodOptional<import("zod").ZodUnknown>;
71
+ };
72
+ UserSchema: {
73
+ id: import("zod").ZodString;
74
+ email: import("zod").ZodString;
75
+ firstName: import("zod").ZodString;
76
+ lastName: import("zod").ZodString;
77
+ roles: import("zod").ZodArray<import("zod").ZodObject<{
78
+ id: import("zod").ZodString;
79
+ name: import("zod").ZodString;
80
+ permissions: import("zod").ZodArray<import("zod").ZodObject<{
81
+ id: import("zod").ZodString;
82
+ slug: import("zod").ZodString;
83
+ extraFields: import("zod").ZodOptional<import("zod").ZodUnknown>;
84
+ createdAt: import("zod").ZodOptional<import("zod").ZodPipeline<import("zod").ZodEffects<import("zod").ZodAny, any, any>, import("zod").ZodDate>>;
85
+ updatedAt: import("zod").ZodOptional<import("zod").ZodPipeline<import("zod").ZodEffects<import("zod").ZodAny, any, any>, import("zod").ZodDate>>;
86
+ }, import("zod").UnknownKeysParam, import("zod").ZodTypeAny, {
87
+ id: string;
88
+ slug: string;
89
+ extraFields?: unknown;
90
+ createdAt?: Date | undefined;
91
+ updatedAt?: Date | undefined;
92
+ }, {
93
+ id: string;
94
+ slug: string;
95
+ extraFields?: unknown;
96
+ createdAt?: any;
97
+ updatedAt?: any;
98
+ }>, "many">;
99
+ extraFields: import("zod").ZodOptional<import("zod").ZodUnknown>;
100
+ createdAt: import("zod").ZodOptional<import("zod").ZodPipeline<import("zod").ZodEffects<import("zod").ZodAny, any, any>, import("zod").ZodDate>>;
101
+ updatedAt: import("zod").ZodOptional<import("zod").ZodPipeline<import("zod").ZodEffects<import("zod").ZodAny, any, any>, import("zod").ZodDate>>;
102
+ }, import("zod").UnknownKeysParam, import("zod").ZodTypeAny, {
103
+ id: string;
104
+ name: string;
105
+ permissions: {
106
+ id: string;
107
+ slug: string;
108
+ extraFields?: unknown;
109
+ createdAt?: Date | undefined;
110
+ updatedAt?: Date | undefined;
111
+ }[];
112
+ extraFields?: unknown;
113
+ createdAt?: Date | undefined;
114
+ updatedAt?: Date | undefined;
115
+ }, {
116
+ id: string;
117
+ name: string;
118
+ permissions: {
119
+ id: string;
120
+ slug: string;
121
+ extraFields?: unknown;
122
+ createdAt?: any;
123
+ updatedAt?: any;
124
+ }[];
125
+ extraFields?: unknown;
126
+ createdAt?: any;
127
+ updatedAt?: any;
128
+ }>, "many">;
129
+ phoneNumber: import("zod").ZodOptional<import("zod").ZodString>;
130
+ subscription: import("zod").ZodOptional<import("zod").ZodString>;
131
+ extraFields: import("zod").ZodOptional<import("zod").ZodUnknown>;
132
+ createdAt: import("zod").ZodOptional<import("zod").ZodPipeline<import("zod").ZodEffects<import("zod").ZodAny, any, any>, import("zod").ZodDate>>;
133
+ updatedAt: import("zod").ZodOptional<import("zod").ZodPipeline<import("zod").ZodEffects<import("zod").ZodAny, any, any>, import("zod").ZodDate>>;
134
+ };
135
+ }>;
136
+ //# sourceMappingURL=user.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.schema.d.ts","sourceRoot":"","sources":["../../schemas/user.schema.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGlC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { serviceSchemaResolver } from '@forklaunch/core/dtoMapper';
2
+ import { BaseUserServiceSchemas as TypeBoxSchemas } from './typebox/user.schema';
3
+ import { BaseUserServiceSchemas as ZodSchemas } from './zod/user.schema';
4
+ export const BaseUserServiceSchemas = serviceSchemaResolver(TypeBoxSchemas, ZodSchemas);