@forklaunch/implementation-iam-base 0.1.12 → 0.1.13

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 (75) 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 +183 -0
  4. package/lib/eject/domain/schemas/index.ts +4 -0
  5. package/lib/eject/domain/schemas/organization.schema.ts +53 -0
  6. package/lib/eject/domain/schemas/permission.schema.ts +36 -0
  7. package/lib/eject/domain/schemas/role.schema.ts +37 -0
  8. package/lib/eject/domain/schemas/user.schema.ts +53 -0
  9. package/lib/eject/services/index.ts +4 -0
  10. package/lib/eject/services/organization.service.ts +143 -0
  11. package/lib/eject/services/permission.service.ts +345 -0
  12. package/lib/eject/services/role.service.ts +179 -0
  13. package/lib/eject/services/user.service.ts +224 -0
  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 +200 -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 +50 -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 +74 -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 +112 -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 +47 -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 +59 -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 +103 -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 +144 -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 +284 -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 +47 -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 +83 -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 +179 -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 +2 -2
@@ -0,0 +1,112 @@
1
+ import { LiteralSchema } from '@forklaunch/validator';
2
+ export declare const CreateOrganizationSchema: {
3
+ name: import("@sinclair/typebox").TString;
4
+ domain: import("@sinclair/typebox").TString;
5
+ subscription: import("@sinclair/typebox").TString;
6
+ logoUrl: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
7
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
8
+ };
9
+ export declare const UpdateOrganizationSchema: ({ uuidId }: {
10
+ uuidId: boolean;
11
+ }) => {
12
+ id: import("@sinclair/typebox").TString;
13
+ name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
14
+ domain: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
15
+ subscription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
16
+ logoUrl: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
17
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
18
+ };
19
+ export declare const OrganizationSchema: ({ uuidId }: {
20
+ uuidId: boolean;
21
+ }) => <OrganizationStatus extends Record<string, LiteralSchema>>(organizationStatus: OrganizationStatus) => {
22
+ id: import("@sinclair/typebox").TString;
23
+ name: import("@sinclair/typebox").TString;
24
+ users: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
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
+ domain: import("@sinclair/typebox").TString;
50
+ subscription: import("@sinclair/typebox").TString;
51
+ status: import("@sinclair/typebox").TUnion<[{ [K in keyof OrganizationStatus]: import("@sinclair/typebox").TLiteral<OrganizationStatus[K]>; }[keyof OrganizationStatus]]>;
52
+ logoUrl: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
53
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
54
+ 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>>;
55
+ 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>>;
56
+ };
57
+ export declare const BaseOrganizationServiceSchemas: (options: {
58
+ uuidId: boolean;
59
+ }) => {
60
+ CreateOrganizationSchema: {
61
+ name: import("@sinclair/typebox").TString;
62
+ domain: import("@sinclair/typebox").TString;
63
+ subscription: import("@sinclair/typebox").TString;
64
+ logoUrl: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
65
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
66
+ };
67
+ UpdateOrganizationSchema: {
68
+ id: import("@sinclair/typebox").TString;
69
+ name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
70
+ domain: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
71
+ subscription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
72
+ logoUrl: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
73
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
74
+ };
75
+ OrganizationSchema: <OrganizationStatus extends Record<string, LiteralSchema>>(organizationStatus: OrganizationStatus) => {
76
+ id: import("@sinclair/typebox").TString;
77
+ name: import("@sinclair/typebox").TString;
78
+ users: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
79
+ id: import("@sinclair/typebox").TString;
80
+ email: import("@sinclair/typebox").TString;
81
+ firstName: import("@sinclair/typebox").TString;
82
+ lastName: import("@sinclair/typebox").TString;
83
+ roles: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
84
+ id: import("@sinclair/typebox").TString;
85
+ name: import("@sinclair/typebox").TString;
86
+ permissions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
87
+ id: import("@sinclair/typebox").TString;
88
+ slug: import("@sinclair/typebox").TString;
89
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
90
+ 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>>;
91
+ 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>>;
92
+ }>>;
93
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
94
+ 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>>;
95
+ 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>>;
96
+ }>>;
97
+ phoneNumber: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
98
+ subscription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
99
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
100
+ 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>>;
101
+ 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>>;
102
+ }>>;
103
+ domain: import("@sinclair/typebox").TString;
104
+ subscription: import("@sinclair/typebox").TString;
105
+ status: import("@sinclair/typebox").TUnion<[{ [K in keyof OrganizationStatus]: import("@sinclair/typebox").TLiteral<OrganizationStatus[K]>; }[keyof OrganizationStatus]]>;
106
+ logoUrl: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
107
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
108
+ 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>>;
109
+ 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>>;
110
+ };
111
+ };
112
+ //# sourceMappingURL=organization.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"organization.schema.d.ts","sourceRoot":"","sources":["../../../schemas/typebox/organization.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAYtD,eAAO,MAAM,wBAAwB;;;;;;CAMpC,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAI,YAAY;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE;;;;;;;CAOtE,CAAC;AAEH,eAAO,MAAM,kBAAkB,GAC5B,YAAY;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,MAC/B,kBAAkB,SAAS,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,EACvD,oBAAoB,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAYtC,CAAC;AAEL,eAAO,MAAM,8BAA8B,GAAI,SAAS;IACtD,MAAM,EAAE,OAAO,CAAC;CACjB;;;;;;;;;;;;;;;;yBAjBE,kBAAkB,SAAS,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,sBACnC,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoBxC,CAAC"}
@@ -0,0 +1,34 @@
1
+ import { array, date, enum_, optional, string, unknown, uuid } from '@forklaunch/validator/typebox';
2
+ import { UserSchema } from './user.schema';
3
+ export const CreateOrganizationSchema = {
4
+ name: string,
5
+ domain: string,
6
+ subscription: string,
7
+ logoUrl: optional(string),
8
+ extraFields: optional(unknown)
9
+ };
10
+ export const UpdateOrganizationSchema = ({ uuidId }) => ({
11
+ id: uuidId ? uuid : string,
12
+ name: optional(string),
13
+ domain: optional(string),
14
+ subscription: optional(string),
15
+ logoUrl: optional(string),
16
+ extraFields: optional(unknown)
17
+ });
18
+ export const OrganizationSchema = ({ uuidId }) => (organizationStatus) => ({
19
+ id: uuidId ? uuid : string,
20
+ name: string,
21
+ users: array(UserSchema({ uuidId })),
22
+ domain: string,
23
+ subscription: string,
24
+ status: enum_(organizationStatus),
25
+ logoUrl: optional(string),
26
+ extraFields: optional(unknown),
27
+ createdAt: optional(date),
28
+ updatedAt: optional(date)
29
+ });
30
+ export const BaseOrganizationServiceSchemas = (options) => ({
31
+ CreateOrganizationSchema,
32
+ UpdateOrganizationSchema: UpdateOrganizationSchema(options),
33
+ OrganizationSchema: OrganizationSchema(options)
34
+ });
@@ -0,0 +1,47 @@
1
+ export declare const CreatePermissionSchema: {
2
+ slug: import("@sinclair/typebox").TString;
3
+ addToRolesIds: 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 UpdatePermissionSchema: ({ uuidId }: {
7
+ uuidId: boolean;
8
+ }) => {
9
+ id: import("@sinclair/typebox").TString;
10
+ slug: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
11
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
12
+ addToRolesIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
13
+ removeFromRolesIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
14
+ };
15
+ export declare const PermissionSchema: ({ uuidId }: {
16
+ uuidId: boolean;
17
+ }) => {
18
+ id: import("@sinclair/typebox").TString;
19
+ slug: import("@sinclair/typebox").TString;
20
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
21
+ 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>>;
22
+ 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>>;
23
+ };
24
+ export declare const BasePermissionServiceSchemas: (options: {
25
+ uuidId: boolean;
26
+ }) => {
27
+ CreatePermissionSchema: {
28
+ slug: import("@sinclair/typebox").TString;
29
+ addToRolesIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
30
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
31
+ };
32
+ UpdatePermissionSchema: {
33
+ id: import("@sinclair/typebox").TString;
34
+ slug: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
35
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
36
+ addToRolesIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
37
+ removeFromRolesIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
38
+ };
39
+ PermissionSchema: {
40
+ id: import("@sinclair/typebox").TString;
41
+ slug: import("@sinclair/typebox").TString;
42
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
43
+ 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>>;
44
+ 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>>;
45
+ };
46
+ };
47
+ //# sourceMappingURL=permission.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.schema.d.ts","sourceRoot":"","sources":["../../../schemas/typebox/permission.schema.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,sBAAsB;;;;CAIlC,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,YAAY;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE;;;;;;CAMpE,CAAC;AAEH,eAAO,MAAM,gBAAgB,GAAI,YAAY;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE;;;;;;CAM9D,CAAC;AAEH,eAAO,MAAM,4BAA4B,GAAI,SAAS;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE;;;;;;;;;;;;;;;;;;;;CAIvE,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { array, date, optional, string, unknown, uuid } from '@forklaunch/validator/typebox';
2
+ export const CreatePermissionSchema = {
3
+ slug: string,
4
+ addToRolesIds: optional(array(string)),
5
+ extraFields: optional(unknown)
6
+ };
7
+ export const UpdatePermissionSchema = ({ uuidId }) => ({
8
+ id: uuidId ? uuid : string,
9
+ slug: optional(string),
10
+ extraFields: optional(unknown),
11
+ addToRolesIds: optional(array(string)),
12
+ removeFromRolesIds: optional(array(string))
13
+ });
14
+ export const PermissionSchema = ({ uuidId }) => ({
15
+ id: uuidId ? uuid : string,
16
+ slug: string,
17
+ extraFields: optional(unknown),
18
+ createdAt: optional(date),
19
+ updatedAt: optional(date)
20
+ });
21
+ export const BasePermissionServiceSchemas = (options) => ({
22
+ CreatePermissionSchema,
23
+ UpdatePermissionSchema: UpdatePermissionSchema(options),
24
+ PermissionSchema: PermissionSchema(options)
25
+ });
@@ -0,0 +1,59 @@
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 }: {
7
+ uuidId: boolean;
8
+ }) => {
9
+ id: import("@sinclair/typebox").TString;
10
+ name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
11
+ permissionIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
12
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
13
+ };
14
+ export declare const RoleSchema: ({ uuidId }: {
15
+ uuidId: boolean;
16
+ }) => {
17
+ id: import("@sinclair/typebox").TString;
18
+ name: import("@sinclair/typebox").TString;
19
+ permissions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
20
+ id: import("@sinclair/typebox").TString;
21
+ slug: import("@sinclair/typebox").TString;
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
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
27
+ 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>>;
28
+ 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>>;
29
+ };
30
+ export declare const BaseRoleServiceSchemas: (options: {
31
+ uuidId: boolean;
32
+ }) => {
33
+ CreateRoleSchema: {
34
+ name: 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
+ UpdateRoleSchema: {
39
+ id: import("@sinclair/typebox").TString;
40
+ name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
41
+ permissionIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
42
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
43
+ };
44
+ RoleSchema: {
45
+ id: import("@sinclair/typebox").TString;
46
+ name: import("@sinclair/typebox").TString;
47
+ permissions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
48
+ id: import("@sinclair/typebox").TString;
49
+ slug: import("@sinclair/typebox").TString;
50
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
51
+ 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>>;
52
+ 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>>;
53
+ }>>;
54
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
55
+ 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>>;
56
+ 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>>;
57
+ };
58
+ };
59
+ //# 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,YAAY;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE;;;;;CAK9D,CAAC;AAEH,eAAO,MAAM,UAAU,GAAI,YAAY;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE;;;;;;;;;;;;;CAOxD,CAAC;AAEH,eAAO,MAAM,sBAAsB,GAAI,SAAS;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE;;;;;;;;;;;;;;;;;;;;;;;;;;CAIjE,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 = (options) => ({
23
+ CreateRoleSchema,
24
+ UpdateRoleSchema: UpdateRoleSchema(options),
25
+ RoleSchema: RoleSchema(options)
26
+ });
@@ -0,0 +1,103 @@
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 }: {
13
+ uuidId: boolean;
14
+ }) => {
15
+ id: import("@sinclair/typebox").TString;
16
+ email: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
17
+ password: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
18
+ firstName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
19
+ lastName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
20
+ roleIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
21
+ phoneNumber: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
22
+ subscription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
23
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
24
+ };
25
+ export declare const UserSchema: ({ uuidId }: {
26
+ uuidId: boolean;
27
+ }) => {
28
+ id: import("@sinclair/typebox").TString;
29
+ email: import("@sinclair/typebox").TString;
30
+ firstName: import("@sinclair/typebox").TString;
31
+ lastName: import("@sinclair/typebox").TString;
32
+ roles: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
33
+ id: import("@sinclair/typebox").TString;
34
+ name: import("@sinclair/typebox").TString;
35
+ permissions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
36
+ id: import("@sinclair/typebox").TString;
37
+ slug: import("@sinclair/typebox").TString;
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
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
43
+ 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>>;
44
+ 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>>;
45
+ }>>;
46
+ phoneNumber: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
47
+ subscription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
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
+ export declare const BaseUserServiceSchemas: (options: {
53
+ uuidId: boolean;
54
+ }) => {
55
+ CreateUserSchema: {
56
+ email: import("@sinclair/typebox").TString;
57
+ password: import("@sinclair/typebox").TString;
58
+ firstName: import("@sinclair/typebox").TString;
59
+ lastName: import("@sinclair/typebox").TString;
60
+ organizationId: import("@sinclair/typebox").TString;
61
+ roleIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
62
+ phoneNumber: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
63
+ subscription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
64
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
65
+ };
66
+ UpdateUserSchema: {
67
+ id: import("@sinclair/typebox").TString;
68
+ email: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
69
+ password: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
70
+ firstName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
71
+ lastName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
72
+ roleIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
73
+ phoneNumber: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
74
+ subscription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
75
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
76
+ };
77
+ UserSchema: {
78
+ id: import("@sinclair/typebox").TString;
79
+ email: import("@sinclair/typebox").TString;
80
+ firstName: import("@sinclair/typebox").TString;
81
+ lastName: import("@sinclair/typebox").TString;
82
+ roles: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
83
+ id: import("@sinclair/typebox").TString;
84
+ name: import("@sinclair/typebox").TString;
85
+ permissions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
86
+ id: import("@sinclair/typebox").TString;
87
+ slug: import("@sinclair/typebox").TString;
88
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
89
+ 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>>;
90
+ 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>>;
91
+ }>>;
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
+ phoneNumber: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
97
+ subscription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
98
+ extraFields: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
99
+ 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>>;
100
+ 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>>;
101
+ };
102
+ };
103
+ //# 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,YAAY;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE;;;;;;;;;;CAU9D,CAAC;AAEH,eAAO,MAAM,UAAU,GAAI,YAAY;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE;;;;;;;;;;;;;;;;;;;;;;;;CAWxD,CAAC;AAEH,eAAO,MAAM,sBAAsB,GAAI,SAAS;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIjE,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 = (options) => ({
38
+ CreateUserSchema,
39
+ UpdateUserSchema: UpdateUserSchema(options),
40
+ UserSchema: UserSchema(options)
41
+ });