@forklaunch/implementation-iam-base 0.1.12 → 0.1.14

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 +283 -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 +411 -0
  21. package/lib/schemas/organization.schema.d.ts.map +1 -0
  22. package/lib/schemas/organization.schema.js +7 -0
  23. package/lib/schemas/permission.schema.d.ts +104 -0
  24. package/lib/schemas/permission.schema.d.ts.map +1 -0
  25. package/lib/schemas/permission.schema.js +7 -0
  26. package/lib/schemas/role.schema.d.ts +163 -0
  27. package/lib/schemas/role.schema.d.ts.map +1 -0
  28. package/lib/schemas/role.schema.js +7 -0
  29. package/lib/schemas/typebox/organization.schema.d.ts +414 -0
  30. package/lib/schemas/typebox/organization.schema.d.ts.map +1 -0
  31. package/lib/schemas/typebox/organization.schema.js +44 -0
  32. package/lib/schemas/typebox/permission.schema.d.ts +131 -0
  33. package/lib/schemas/typebox/permission.schema.d.ts.map +1 -0
  34. package/lib/schemas/typebox/permission.schema.js +32 -0
  35. package/lib/schemas/typebox/role.schema.d.ts +199 -0
  36. package/lib/schemas/typebox/role.schema.d.ts.map +1 -0
  37. package/lib/schemas/typebox/role.schema.js +33 -0
  38. package/lib/schemas/typebox/user.schema.d.ts +339 -0
  39. package/lib/schemas/typebox/user.schema.d.ts.map +1 -0
  40. package/lib/schemas/typebox/user.schema.js +49 -0
  41. package/lib/schemas/user.schema.d.ts +290 -0
  42. package/lib/schemas/user.schema.d.ts.map +1 -0
  43. package/lib/schemas/user.schema.js +7 -0
  44. package/lib/schemas/zod/organization.schema.d.ts +374 -0
  45. package/lib/schemas/zod/organization.schema.d.ts.map +1 -0
  46. package/lib/schemas/zod/organization.schema.js +44 -0
  47. package/lib/schemas/zod/permission.schema.d.ts +63 -0
  48. package/lib/schemas/zod/permission.schema.d.ts.map +1 -0
  49. package/lib/schemas/zod/permission.schema.js +32 -0
  50. package/lib/schemas/zod/role.schema.d.ts +113 -0
  51. package/lib/schemas/zod/role.schema.d.ts.map +1 -0
  52. package/lib/schemas/zod/role.schema.js +33 -0
  53. package/lib/schemas/zod/user.schema.d.ts +225 -0
  54. package/lib/schemas/zod/user.schema.d.ts.map +1 -0
  55. package/lib/schemas/zod/user.schema.js +49 -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 +118 -0
  60. package/lib/services/organization.service.d.ts.map +1 -0
  61. package/lib/services/organization.service.js +50 -0
  62. package/lib/services/permission.service.d.ts +138 -0
  63. package/lib/services/permission.service.d.ts.map +1 -0
  64. package/lib/services/permission.service.js +203 -0
  65. package/lib/services/role.service.d.ts +118 -0
  66. package/lib/services/role.service.d.ts.map +1 -0
  67. package/lib/services/role.service.js +73 -0
  68. package/lib/services/user.service.d.ts +138 -0
  69. package/lib/services/user.service.d.ts.map +1 -0
  70. package/lib/services/user.service.js +126 -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 +8 -8
@@ -0,0 +1,414 @@
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<
7
+ import('@sinclair/typebox').TString
8
+ >;
9
+ extraFields: import('@sinclair/typebox').TOptional<
10
+ import('@sinclair/typebox').TUnknown
11
+ >;
12
+ };
13
+ export declare const UpdateOrganizationSchema: ({
14
+ uuidId
15
+ }: {
16
+ uuidId: boolean;
17
+ }) => {
18
+ id: import('@sinclair/typebox').TString;
19
+ name: import('@sinclair/typebox').TOptional<
20
+ import('@sinclair/typebox').TString
21
+ >;
22
+ domain: import('@sinclair/typebox').TOptional<
23
+ import('@sinclair/typebox').TString
24
+ >;
25
+ subscription: import('@sinclair/typebox').TOptional<
26
+ import('@sinclair/typebox').TString
27
+ >;
28
+ logoUrl: import('@sinclair/typebox').TOptional<
29
+ import('@sinclair/typebox').TString
30
+ >;
31
+ extraFields: import('@sinclair/typebox').TOptional<
32
+ import('@sinclair/typebox').TUnknown
33
+ >;
34
+ };
35
+ export declare const OrganizationSchema: ({
36
+ uuidId
37
+ }: {
38
+ uuidId: boolean;
39
+ }) => <OrganizationStatus extends Record<string, LiteralSchema>>(
40
+ organizationStatus: OrganizationStatus
41
+ ) => {
42
+ id: import('@sinclair/typebox').TString;
43
+ name: import('@sinclair/typebox').TString;
44
+ users: import('@sinclair/typebox').TArray<
45
+ import('@sinclair/typebox').TObject<{
46
+ id: import('@sinclair/typebox').TString;
47
+ email: import('@sinclair/typebox').TString;
48
+ firstName: import('@sinclair/typebox').TString;
49
+ lastName: import('@sinclair/typebox').TString;
50
+ roles: import('@sinclair/typebox').TArray<
51
+ import('@sinclair/typebox').TObject<{
52
+ id: import('@sinclair/typebox').TString;
53
+ name: import('@sinclair/typebox').TString;
54
+ permissions: import('@sinclair/typebox').TArray<
55
+ import('@sinclair/typebox').TObject<{
56
+ id: import('@sinclair/typebox').TString;
57
+ slug: import('@sinclair/typebox').TString;
58
+ extraFields: import('@sinclair/typebox').TOptional<
59
+ import('@sinclair/typebox').TUnknown
60
+ >;
61
+ createdAt: import('@sinclair/typebox').TOptional<
62
+ import('@sinclair/typebox').TTransform<
63
+ import('@sinclair/typebox').TUnion<
64
+ [
65
+ import('@sinclair/typebox').TDate,
66
+ import('@sinclair/typebox').TNumber,
67
+ import('@sinclair/typebox').TString,
68
+ import('@sinclair/typebox').TBoolean,
69
+ import('@sinclair/typebox').TNull
70
+ ]
71
+ >,
72
+ Date
73
+ >
74
+ >;
75
+ updatedAt: import('@sinclair/typebox').TOptional<
76
+ import('@sinclair/typebox').TTransform<
77
+ import('@sinclair/typebox').TUnion<
78
+ [
79
+ import('@sinclair/typebox').TDate,
80
+ import('@sinclair/typebox').TNumber,
81
+ import('@sinclair/typebox').TString,
82
+ import('@sinclair/typebox').TBoolean,
83
+ import('@sinclair/typebox').TNull
84
+ ]
85
+ >,
86
+ Date
87
+ >
88
+ >;
89
+ }>
90
+ >;
91
+ extraFields: import('@sinclair/typebox').TOptional<
92
+ import('@sinclair/typebox').TUnknown
93
+ >;
94
+ createdAt: import('@sinclair/typebox').TOptional<
95
+ import('@sinclair/typebox').TTransform<
96
+ import('@sinclair/typebox').TUnion<
97
+ [
98
+ import('@sinclair/typebox').TDate,
99
+ import('@sinclair/typebox').TNumber,
100
+ import('@sinclair/typebox').TString,
101
+ import('@sinclair/typebox').TBoolean,
102
+ import('@sinclair/typebox').TNull
103
+ ]
104
+ >,
105
+ Date
106
+ >
107
+ >;
108
+ updatedAt: import('@sinclair/typebox').TOptional<
109
+ import('@sinclair/typebox').TTransform<
110
+ import('@sinclair/typebox').TUnion<
111
+ [
112
+ import('@sinclair/typebox').TDate,
113
+ import('@sinclair/typebox').TNumber,
114
+ import('@sinclair/typebox').TString,
115
+ import('@sinclair/typebox').TBoolean,
116
+ import('@sinclair/typebox').TNull
117
+ ]
118
+ >,
119
+ Date
120
+ >
121
+ >;
122
+ }>
123
+ >;
124
+ phoneNumber: import('@sinclair/typebox').TOptional<
125
+ import('@sinclair/typebox').TString
126
+ >;
127
+ subscription: import('@sinclair/typebox').TOptional<
128
+ import('@sinclair/typebox').TString
129
+ >;
130
+ extraFields: import('@sinclair/typebox').TOptional<
131
+ import('@sinclair/typebox').TUnknown
132
+ >;
133
+ createdAt: import('@sinclair/typebox').TOptional<
134
+ import('@sinclair/typebox').TTransform<
135
+ import('@sinclair/typebox').TUnion<
136
+ [
137
+ import('@sinclair/typebox').TDate,
138
+ import('@sinclair/typebox').TNumber,
139
+ import('@sinclair/typebox').TString,
140
+ import('@sinclair/typebox').TBoolean,
141
+ import('@sinclair/typebox').TNull
142
+ ]
143
+ >,
144
+ Date
145
+ >
146
+ >;
147
+ updatedAt: import('@sinclair/typebox').TOptional<
148
+ import('@sinclair/typebox').TTransform<
149
+ import('@sinclair/typebox').TUnion<
150
+ [
151
+ import('@sinclair/typebox').TDate,
152
+ import('@sinclair/typebox').TNumber,
153
+ import('@sinclair/typebox').TString,
154
+ import('@sinclair/typebox').TBoolean,
155
+ import('@sinclair/typebox').TNull
156
+ ]
157
+ >,
158
+ Date
159
+ >
160
+ >;
161
+ }>
162
+ >;
163
+ domain: import('@sinclair/typebox').TString;
164
+ subscription: import('@sinclair/typebox').TString;
165
+ status: import('@sinclair/typebox').TUnion<
166
+ [
167
+ {
168
+ [K in keyof OrganizationStatus]: import('@sinclair/typebox').TLiteral<
169
+ OrganizationStatus[K]
170
+ >;
171
+ }[keyof OrganizationStatus]
172
+ ]
173
+ >;
174
+ logoUrl: import('@sinclair/typebox').TOptional<
175
+ import('@sinclair/typebox').TString
176
+ >;
177
+ extraFields: import('@sinclair/typebox').TOptional<
178
+ import('@sinclair/typebox').TUnknown
179
+ >;
180
+ createdAt: import('@sinclair/typebox').TOptional<
181
+ import('@sinclair/typebox').TTransform<
182
+ import('@sinclair/typebox').TUnion<
183
+ [
184
+ import('@sinclair/typebox').TDate,
185
+ import('@sinclair/typebox').TNumber,
186
+ import('@sinclair/typebox').TString,
187
+ import('@sinclair/typebox').TBoolean,
188
+ import('@sinclair/typebox').TNull
189
+ ]
190
+ >,
191
+ Date
192
+ >
193
+ >;
194
+ updatedAt: import('@sinclair/typebox').TOptional<
195
+ import('@sinclair/typebox').TTransform<
196
+ import('@sinclair/typebox').TUnion<
197
+ [
198
+ import('@sinclair/typebox').TDate,
199
+ import('@sinclair/typebox').TNumber,
200
+ import('@sinclair/typebox').TString,
201
+ import('@sinclair/typebox').TBoolean,
202
+ import('@sinclair/typebox').TNull
203
+ ]
204
+ >,
205
+ Date
206
+ >
207
+ >;
208
+ };
209
+ export declare const BaseOrganizationServiceSchemas: (options: {
210
+ uuidId: boolean;
211
+ }) => {
212
+ CreateOrganizationSchema: {
213
+ name: import('@sinclair/typebox').TString;
214
+ domain: import('@sinclair/typebox').TString;
215
+ subscription: import('@sinclair/typebox').TString;
216
+ logoUrl: import('@sinclair/typebox').TOptional<
217
+ import('@sinclair/typebox').TString
218
+ >;
219
+ extraFields: import('@sinclair/typebox').TOptional<
220
+ import('@sinclair/typebox').TUnknown
221
+ >;
222
+ };
223
+ UpdateOrganizationSchema: {
224
+ id: import('@sinclair/typebox').TString;
225
+ name: import('@sinclair/typebox').TOptional<
226
+ import('@sinclair/typebox').TString
227
+ >;
228
+ domain: import('@sinclair/typebox').TOptional<
229
+ import('@sinclair/typebox').TString
230
+ >;
231
+ subscription: import('@sinclair/typebox').TOptional<
232
+ import('@sinclair/typebox').TString
233
+ >;
234
+ logoUrl: import('@sinclair/typebox').TOptional<
235
+ import('@sinclair/typebox').TString
236
+ >;
237
+ extraFields: import('@sinclair/typebox').TOptional<
238
+ import('@sinclair/typebox').TUnknown
239
+ >;
240
+ };
241
+ OrganizationSchema: <
242
+ OrganizationStatus extends Record<string, LiteralSchema>
243
+ >(
244
+ organizationStatus: OrganizationStatus
245
+ ) => {
246
+ id: import('@sinclair/typebox').TString;
247
+ name: import('@sinclair/typebox').TString;
248
+ users: import('@sinclair/typebox').TArray<
249
+ import('@sinclair/typebox').TObject<{
250
+ id: import('@sinclair/typebox').TString;
251
+ email: import('@sinclair/typebox').TString;
252
+ firstName: import('@sinclair/typebox').TString;
253
+ lastName: import('@sinclair/typebox').TString;
254
+ roles: import('@sinclair/typebox').TArray<
255
+ import('@sinclair/typebox').TObject<{
256
+ id: import('@sinclair/typebox').TString;
257
+ name: import('@sinclair/typebox').TString;
258
+ permissions: import('@sinclair/typebox').TArray<
259
+ import('@sinclair/typebox').TObject<{
260
+ id: import('@sinclair/typebox').TString;
261
+ slug: import('@sinclair/typebox').TString;
262
+ extraFields: import('@sinclair/typebox').TOptional<
263
+ import('@sinclair/typebox').TUnknown
264
+ >;
265
+ createdAt: import('@sinclair/typebox').TOptional<
266
+ import('@sinclair/typebox').TTransform<
267
+ import('@sinclair/typebox').TUnion<
268
+ [
269
+ import('@sinclair/typebox').TDate,
270
+ import('@sinclair/typebox').TNumber,
271
+ import('@sinclair/typebox').TString,
272
+ import('@sinclair/typebox').TBoolean,
273
+ import('@sinclair/typebox').TNull
274
+ ]
275
+ >,
276
+ Date
277
+ >
278
+ >;
279
+ updatedAt: import('@sinclair/typebox').TOptional<
280
+ import('@sinclair/typebox').TTransform<
281
+ import('@sinclair/typebox').TUnion<
282
+ [
283
+ import('@sinclair/typebox').TDate,
284
+ import('@sinclair/typebox').TNumber,
285
+ import('@sinclair/typebox').TString,
286
+ import('@sinclair/typebox').TBoolean,
287
+ import('@sinclair/typebox').TNull
288
+ ]
289
+ >,
290
+ Date
291
+ >
292
+ >;
293
+ }>
294
+ >;
295
+ extraFields: import('@sinclair/typebox').TOptional<
296
+ import('@sinclair/typebox').TUnknown
297
+ >;
298
+ createdAt: import('@sinclair/typebox').TOptional<
299
+ import('@sinclair/typebox').TTransform<
300
+ import('@sinclair/typebox').TUnion<
301
+ [
302
+ import('@sinclair/typebox').TDate,
303
+ import('@sinclair/typebox').TNumber,
304
+ import('@sinclair/typebox').TString,
305
+ import('@sinclair/typebox').TBoolean,
306
+ import('@sinclair/typebox').TNull
307
+ ]
308
+ >,
309
+ Date
310
+ >
311
+ >;
312
+ updatedAt: import('@sinclair/typebox').TOptional<
313
+ import('@sinclair/typebox').TTransform<
314
+ import('@sinclair/typebox').TUnion<
315
+ [
316
+ import('@sinclair/typebox').TDate,
317
+ import('@sinclair/typebox').TNumber,
318
+ import('@sinclair/typebox').TString,
319
+ import('@sinclair/typebox').TBoolean,
320
+ import('@sinclair/typebox').TNull
321
+ ]
322
+ >,
323
+ Date
324
+ >
325
+ >;
326
+ }>
327
+ >;
328
+ phoneNumber: import('@sinclair/typebox').TOptional<
329
+ import('@sinclair/typebox').TString
330
+ >;
331
+ subscription: import('@sinclair/typebox').TOptional<
332
+ import('@sinclair/typebox').TString
333
+ >;
334
+ extraFields: import('@sinclair/typebox').TOptional<
335
+ import('@sinclair/typebox').TUnknown
336
+ >;
337
+ createdAt: import('@sinclair/typebox').TOptional<
338
+ import('@sinclair/typebox').TTransform<
339
+ import('@sinclair/typebox').TUnion<
340
+ [
341
+ import('@sinclair/typebox').TDate,
342
+ import('@sinclair/typebox').TNumber,
343
+ import('@sinclair/typebox').TString,
344
+ import('@sinclair/typebox').TBoolean,
345
+ import('@sinclair/typebox').TNull
346
+ ]
347
+ >,
348
+ Date
349
+ >
350
+ >;
351
+ updatedAt: import('@sinclair/typebox').TOptional<
352
+ import('@sinclair/typebox').TTransform<
353
+ import('@sinclair/typebox').TUnion<
354
+ [
355
+ import('@sinclair/typebox').TDate,
356
+ import('@sinclair/typebox').TNumber,
357
+ import('@sinclair/typebox').TString,
358
+ import('@sinclair/typebox').TBoolean,
359
+ import('@sinclair/typebox').TNull
360
+ ]
361
+ >,
362
+ Date
363
+ >
364
+ >;
365
+ }>
366
+ >;
367
+ domain: import('@sinclair/typebox').TString;
368
+ subscription: import('@sinclair/typebox').TString;
369
+ status: import('@sinclair/typebox').TUnion<
370
+ [
371
+ {
372
+ [K in keyof OrganizationStatus]: import('@sinclair/typebox').TLiteral<
373
+ OrganizationStatus[K]
374
+ >;
375
+ }[keyof OrganizationStatus]
376
+ ]
377
+ >;
378
+ logoUrl: import('@sinclair/typebox').TOptional<
379
+ import('@sinclair/typebox').TString
380
+ >;
381
+ extraFields: import('@sinclair/typebox').TOptional<
382
+ import('@sinclair/typebox').TUnknown
383
+ >;
384
+ createdAt: import('@sinclair/typebox').TOptional<
385
+ import('@sinclair/typebox').TTransform<
386
+ import('@sinclair/typebox').TUnion<
387
+ [
388
+ import('@sinclair/typebox').TDate,
389
+ import('@sinclair/typebox').TNumber,
390
+ import('@sinclair/typebox').TString,
391
+ import('@sinclair/typebox').TBoolean,
392
+ import('@sinclair/typebox').TNull
393
+ ]
394
+ >,
395
+ Date
396
+ >
397
+ >;
398
+ updatedAt: import('@sinclair/typebox').TOptional<
399
+ import('@sinclair/typebox').TTransform<
400
+ import('@sinclair/typebox').TUnion<
401
+ [
402
+ import('@sinclair/typebox').TDate,
403
+ import('@sinclair/typebox').TNumber,
404
+ import('@sinclair/typebox').TString,
405
+ import('@sinclair/typebox').TBoolean,
406
+ import('@sinclair/typebox').TNull
407
+ ]
408
+ >,
409
+ Date
410
+ >
411
+ >;
412
+ };
413
+ };
414
+ //# 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,44 @@
1
+ import {
2
+ array,
3
+ date,
4
+ enum_,
5
+ optional,
6
+ string,
7
+ unknown,
8
+ uuid
9
+ } from '@forklaunch/validator/typebox';
10
+ import { UserSchema } from './user.schema';
11
+ export const CreateOrganizationSchema = {
12
+ name: string,
13
+ domain: string,
14
+ subscription: string,
15
+ logoUrl: optional(string),
16
+ extraFields: optional(unknown)
17
+ };
18
+ export const UpdateOrganizationSchema = ({ uuidId }) => ({
19
+ id: uuidId ? uuid : string,
20
+ name: optional(string),
21
+ domain: optional(string),
22
+ subscription: optional(string),
23
+ logoUrl: optional(string),
24
+ extraFields: optional(unknown)
25
+ });
26
+ export const OrganizationSchema =
27
+ ({ uuidId }) =>
28
+ (organizationStatus) => ({
29
+ id: uuidId ? uuid : string,
30
+ name: string,
31
+ users: array(UserSchema({ uuidId })),
32
+ domain: string,
33
+ subscription: string,
34
+ status: enum_(organizationStatus),
35
+ logoUrl: optional(string),
36
+ extraFields: optional(unknown),
37
+ createdAt: optional(date),
38
+ updatedAt: optional(date)
39
+ });
40
+ export const BaseOrganizationServiceSchemas = (options) => ({
41
+ CreateOrganizationSchema,
42
+ UpdateOrganizationSchema: UpdateOrganizationSchema(options),
43
+ OrganizationSchema: OrganizationSchema(options)
44
+ });
@@ -0,0 +1,131 @@
1
+ export declare const CreatePermissionSchema: {
2
+ slug: import('@sinclair/typebox').TString;
3
+ addToRolesIds: import('@sinclair/typebox').TOptional<
4
+ import('@sinclair/typebox').TArray<import('@sinclair/typebox').TString>
5
+ >;
6
+ extraFields: import('@sinclair/typebox').TOptional<
7
+ import('@sinclair/typebox').TUnknown
8
+ >;
9
+ };
10
+ export declare const UpdatePermissionSchema: ({
11
+ uuidId
12
+ }: {
13
+ uuidId: boolean;
14
+ }) => {
15
+ id: import('@sinclair/typebox').TString;
16
+ slug: import('@sinclair/typebox').TOptional<
17
+ import('@sinclair/typebox').TString
18
+ >;
19
+ extraFields: import('@sinclair/typebox').TOptional<
20
+ import('@sinclair/typebox').TUnknown
21
+ >;
22
+ addToRolesIds: import('@sinclair/typebox').TOptional<
23
+ import('@sinclair/typebox').TArray<import('@sinclair/typebox').TString>
24
+ >;
25
+ removeFromRolesIds: import('@sinclair/typebox').TOptional<
26
+ import('@sinclair/typebox').TArray<import('@sinclair/typebox').TString>
27
+ >;
28
+ };
29
+ export declare const PermissionSchema: ({
30
+ uuidId
31
+ }: {
32
+ uuidId: boolean;
33
+ }) => {
34
+ id: import('@sinclair/typebox').TString;
35
+ slug: import('@sinclair/typebox').TString;
36
+ extraFields: import('@sinclair/typebox').TOptional<
37
+ import('@sinclair/typebox').TUnknown
38
+ >;
39
+ createdAt: import('@sinclair/typebox').TOptional<
40
+ import('@sinclair/typebox').TTransform<
41
+ import('@sinclair/typebox').TUnion<
42
+ [
43
+ import('@sinclair/typebox').TDate,
44
+ import('@sinclair/typebox').TNumber,
45
+ import('@sinclair/typebox').TString,
46
+ import('@sinclair/typebox').TBoolean,
47
+ import('@sinclair/typebox').TNull
48
+ ]
49
+ >,
50
+ Date
51
+ >
52
+ >;
53
+ updatedAt: import('@sinclair/typebox').TOptional<
54
+ import('@sinclair/typebox').TTransform<
55
+ import('@sinclair/typebox').TUnion<
56
+ [
57
+ import('@sinclair/typebox').TDate,
58
+ import('@sinclair/typebox').TNumber,
59
+ import('@sinclair/typebox').TString,
60
+ import('@sinclair/typebox').TBoolean,
61
+ import('@sinclair/typebox').TNull
62
+ ]
63
+ >,
64
+ Date
65
+ >
66
+ >;
67
+ };
68
+ export declare const BasePermissionServiceSchemas: (options: {
69
+ uuidId: boolean;
70
+ }) => {
71
+ CreatePermissionSchema: {
72
+ slug: import('@sinclair/typebox').TString;
73
+ addToRolesIds: import('@sinclair/typebox').TOptional<
74
+ import('@sinclair/typebox').TArray<import('@sinclair/typebox').TString>
75
+ >;
76
+ extraFields: import('@sinclair/typebox').TOptional<
77
+ import('@sinclair/typebox').TUnknown
78
+ >;
79
+ };
80
+ UpdatePermissionSchema: {
81
+ id: import('@sinclair/typebox').TString;
82
+ slug: import('@sinclair/typebox').TOptional<
83
+ import('@sinclair/typebox').TString
84
+ >;
85
+ extraFields: import('@sinclair/typebox').TOptional<
86
+ import('@sinclair/typebox').TUnknown
87
+ >;
88
+ addToRolesIds: import('@sinclair/typebox').TOptional<
89
+ import('@sinclair/typebox').TArray<import('@sinclair/typebox').TString>
90
+ >;
91
+ removeFromRolesIds: import('@sinclair/typebox').TOptional<
92
+ import('@sinclair/typebox').TArray<import('@sinclair/typebox').TString>
93
+ >;
94
+ };
95
+ PermissionSchema: {
96
+ id: import('@sinclair/typebox').TString;
97
+ slug: import('@sinclair/typebox').TString;
98
+ extraFields: import('@sinclair/typebox').TOptional<
99
+ import('@sinclair/typebox').TUnknown
100
+ >;
101
+ createdAt: import('@sinclair/typebox').TOptional<
102
+ import('@sinclair/typebox').TTransform<
103
+ import('@sinclair/typebox').TUnion<
104
+ [
105
+ import('@sinclair/typebox').TDate,
106
+ import('@sinclair/typebox').TNumber,
107
+ import('@sinclair/typebox').TString,
108
+ import('@sinclair/typebox').TBoolean,
109
+ import('@sinclair/typebox').TNull
110
+ ]
111
+ >,
112
+ Date
113
+ >
114
+ >;
115
+ updatedAt: import('@sinclair/typebox').TOptional<
116
+ import('@sinclair/typebox').TTransform<
117
+ import('@sinclair/typebox').TUnion<
118
+ [
119
+ import('@sinclair/typebox').TDate,
120
+ import('@sinclair/typebox').TNumber,
121
+ import('@sinclair/typebox').TString,
122
+ import('@sinclair/typebox').TBoolean,
123
+ import('@sinclair/typebox').TNull
124
+ ]
125
+ >,
126
+ Date
127
+ >
128
+ >;
129
+ };
130
+ };
131
+ //# 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,32 @@
1
+ import {
2
+ array,
3
+ date,
4
+ optional,
5
+ string,
6
+ unknown,
7
+ uuid
8
+ } from '@forklaunch/validator/typebox';
9
+ export const CreatePermissionSchema = {
10
+ slug: string,
11
+ addToRolesIds: optional(array(string)),
12
+ extraFields: optional(unknown)
13
+ };
14
+ export const UpdatePermissionSchema = ({ uuidId }) => ({
15
+ id: uuidId ? uuid : string,
16
+ slug: optional(string),
17
+ extraFields: optional(unknown),
18
+ addToRolesIds: optional(array(string)),
19
+ removeFromRolesIds: optional(array(string))
20
+ });
21
+ export const PermissionSchema = ({ uuidId }) => ({
22
+ id: uuidId ? uuid : string,
23
+ slug: string,
24
+ extraFields: optional(unknown),
25
+ createdAt: optional(date),
26
+ updatedAt: optional(date)
27
+ });
28
+ export const BasePermissionServiceSchemas = (options) => ({
29
+ CreatePermissionSchema,
30
+ UpdatePermissionSchema: UpdatePermissionSchema(options),
31
+ PermissionSchema: PermissionSchema(options)
32
+ });