@kidemy/lib 1.0.4 → 1.0.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.
@@ -1,5 +1,7 @@
1
- import { CreateAccountUserDtoSchema, CreateAccountUserResponseSchema, LoginDtoSchema, LoginResponseSchema, } from '../model/auth.dto';
2
- import { ActivationStatus, UserRole } from '../model/model';
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const auth_dto_1 = require("../model/auth.dto");
4
+ const model_1 = require("../model/model");
3
5
  describe('AuthDto Schemas', () => {
4
6
  describe('CreateAccountUserDtoSchema', () => {
5
7
  const validCreateAccountUserDto = {
@@ -16,7 +18,7 @@ describe('AuthDto Schemas', () => {
16
18
  },
17
19
  };
18
20
  it('should validate a valid create account user DTO', () => {
19
- const result = CreateAccountUserDtoSchema.safeParse(validCreateAccountUserDto);
21
+ const result = auth_dto_1.CreateAccountUserDtoSchema.safeParse(validCreateAccountUserDto);
20
22
  expect(result.success).toBe(true);
21
23
  if (result.success) {
22
24
  expect(result.data).toEqual({
@@ -41,7 +43,7 @@ describe('AuthDto Schemas', () => {
41
43
  password: 'password123',
42
44
  },
43
45
  };
44
- const result = CreateAccountUserDtoSchema.safeParse(dtoWithoutBirthdate);
46
+ const result = auth_dto_1.CreateAccountUserDtoSchema.safeParse(dtoWithoutBirthdate);
45
47
  expect(result.success).toBe(true);
46
48
  if (result.success) {
47
49
  expect(result.data.user.birthdate).toBeUndefined();
@@ -54,7 +56,7 @@ describe('AuthDto Schemas', () => {
54
56
  name: '',
55
57
  },
56
58
  };
57
- const result = CreateAccountUserDtoSchema.safeParse(invalidDto);
59
+ const result = auth_dto_1.CreateAccountUserDtoSchema.safeParse(invalidDto);
58
60
  expect(result.success).toBe(false);
59
61
  if (!result.success) {
60
62
  expect(result.error.issues[0].path).toEqual(['account', 'name']);
@@ -68,7 +70,7 @@ describe('AuthDto Schemas', () => {
68
70
  name: 'A'.repeat(256),
69
71
  },
70
72
  };
71
- const result = CreateAccountUserDtoSchema.safeParse(invalidDto);
73
+ const result = auth_dto_1.CreateAccountUserDtoSchema.safeParse(invalidDto);
72
74
  expect(result.success).toBe(false);
73
75
  if (!result.success) {
74
76
  expect(result.error.issues[0].path).toEqual(['account', 'name']);
@@ -82,7 +84,7 @@ describe('AuthDto Schemas', () => {
82
84
  name: 'A'.repeat(255),
83
85
  },
84
86
  };
85
- const result = CreateAccountUserDtoSchema.safeParse(validDto);
87
+ const result = auth_dto_1.CreateAccountUserDtoSchema.safeParse(validDto);
86
88
  expect(result.success).toBe(true);
87
89
  if (result.success) {
88
90
  expect(result.data.account.name).toBe('A'.repeat(255));
@@ -96,7 +98,7 @@ describe('AuthDto Schemas', () => {
96
98
  firstName: '',
97
99
  },
98
100
  };
99
- const result = CreateAccountUserDtoSchema.safeParse(invalidDto);
101
+ const result = auth_dto_1.CreateAccountUserDtoSchema.safeParse(invalidDto);
100
102
  expect(result.success).toBe(false);
101
103
  if (!result.success) {
102
104
  expect(result.error.issues[0].path).toEqual(['user', 'firstName']);
@@ -111,7 +113,7 @@ describe('AuthDto Schemas', () => {
111
113
  firstName: 'A'.repeat(256),
112
114
  },
113
115
  };
114
- const result = CreateAccountUserDtoSchema.safeParse(invalidDto);
116
+ const result = auth_dto_1.CreateAccountUserDtoSchema.safeParse(invalidDto);
115
117
  expect(result.success).toBe(false);
116
118
  if (!result.success) {
117
119
  expect(result.error.issues[0].path).toEqual(['user', 'firstName']);
@@ -126,7 +128,7 @@ describe('AuthDto Schemas', () => {
126
128
  lastName: '',
127
129
  },
128
130
  };
129
- const result = CreateAccountUserDtoSchema.safeParse(invalidDto);
131
+ const result = auth_dto_1.CreateAccountUserDtoSchema.safeParse(invalidDto);
130
132
  expect(result.success).toBe(false);
131
133
  if (!result.success) {
132
134
  expect(result.error.issues[0].path).toEqual(['user', 'lastName']);
@@ -141,7 +143,7 @@ describe('AuthDto Schemas', () => {
141
143
  lastName: 'A'.repeat(256),
142
144
  },
143
145
  };
144
- const result = CreateAccountUserDtoSchema.safeParse(invalidDto);
146
+ const result = auth_dto_1.CreateAccountUserDtoSchema.safeParse(invalidDto);
145
147
  expect(result.success).toBe(false);
146
148
  if (!result.success) {
147
149
  expect(result.error.issues[0].path).toEqual(['user', 'lastName']);
@@ -156,7 +158,7 @@ describe('AuthDto Schemas', () => {
156
158
  email: 'invalid-email',
157
159
  },
158
160
  };
159
- const result = CreateAccountUserDtoSchema.safeParse(invalidDto);
161
+ const result = auth_dto_1.CreateAccountUserDtoSchema.safeParse(invalidDto);
160
162
  expect(result.success).toBe(false);
161
163
  if (!result.success) {
162
164
  expect(result.error.issues[0].path).toEqual(['user', 'email']);
@@ -171,7 +173,7 @@ describe('AuthDto Schemas', () => {
171
173
  email: 'a'.repeat(250) + '@example.com',
172
174
  },
173
175
  };
174
- const result = CreateAccountUserDtoSchema.safeParse(invalidDto);
176
+ const result = auth_dto_1.CreateAccountUserDtoSchema.safeParse(invalidDto);
175
177
  expect(result.success).toBe(false);
176
178
  if (!result.success) {
177
179
  expect(result.error.issues[0].path).toEqual(['user', 'email']);
@@ -186,7 +188,7 @@ describe('AuthDto Schemas', () => {
186
188
  password: '12345',
187
189
  },
188
190
  };
189
- const result = CreateAccountUserDtoSchema.safeParse(invalidDto);
191
+ const result = auth_dto_1.CreateAccountUserDtoSchema.safeParse(invalidDto);
190
192
  expect(result.success).toBe(false);
191
193
  if (!result.success) {
192
194
  expect(result.error.issues[0].path).toEqual(['user', 'password']);
@@ -201,7 +203,7 @@ describe('AuthDto Schemas', () => {
201
203
  password: 'A'.repeat(256),
202
204
  },
203
205
  };
204
- const result = CreateAccountUserDtoSchema.safeParse(invalidDto);
206
+ const result = auth_dto_1.CreateAccountUserDtoSchema.safeParse(invalidDto);
205
207
  expect(result.success).toBe(false);
206
208
  if (!result.success) {
207
209
  expect(result.error.issues[0].path).toEqual(['user', 'password']);
@@ -216,7 +218,7 @@ describe('AuthDto Schemas', () => {
216
218
  password: '12345678',
217
219
  },
218
220
  };
219
- const result = CreateAccountUserDtoSchema.safeParse(validDto);
221
+ const result = auth_dto_1.CreateAccountUserDtoSchema.safeParse(validDto);
220
222
  expect(result.success).toBe(true);
221
223
  if (result.success) {
222
224
  expect(result.data.user.password).toBe('12345678');
@@ -230,7 +232,7 @@ describe('AuthDto Schemas', () => {
230
232
  password: 'A'.repeat(255),
231
233
  },
232
234
  };
233
- const result = CreateAccountUserDtoSchema.safeParse(validDto);
235
+ const result = auth_dto_1.CreateAccountUserDtoSchema.safeParse(validDto);
234
236
  expect(result.success).toBe(true);
235
237
  if (result.success) {
236
238
  expect(result.data.user.password).toBe('A'.repeat(255));
@@ -245,7 +247,7 @@ describe('AuthDto Schemas', () => {
245
247
  birthdate: '2020-12-25',
246
248
  },
247
249
  };
248
- const result = CreateAccountUserDtoSchema.safeParse(dtoWithBirthdate);
250
+ const result = auth_dto_1.CreateAccountUserDtoSchema.safeParse(dtoWithBirthdate);
249
251
  expect(result.success).toBe(true);
250
252
  if (result.success) {
251
253
  expect(result.data.user.birthdate).toBeInstanceOf(Date);
@@ -268,7 +270,7 @@ describe('AuthDto Schemas', () => {
268
270
  birthdate: '1990-01-01',
269
271
  },
270
272
  };
271
- const result = CreateAccountUserDtoSchema.safeParse(specialCharDto);
273
+ const result = auth_dto_1.CreateAccountUserDtoSchema.safeParse(specialCharDto);
272
274
  expect(result.success).toBe(true);
273
275
  if (result.success) {
274
276
  expect(result.data.account.name).toBe('José Account');
@@ -282,7 +284,7 @@ describe('AuthDto Schemas', () => {
282
284
  account: {
283
285
  id: '123e4567-e89b-12d3-a456-426614174000',
284
286
  name: 'Test Account',
285
- status: ActivationStatus.ACTIVE,
287
+ status: model_1.ActivationStatus.ACTIVE,
286
288
  createdAt: new Date('2024-01-01T00:00:00Z'),
287
289
  updatedAt: new Date('2024-01-01T00:00:00Z'),
288
290
  },
@@ -293,14 +295,14 @@ describe('AuthDto Schemas', () => {
293
295
  lastName: 'Doe',
294
296
  email: 'john.doe@example.com',
295
297
  username: 'johndoe',
296
- role: UserRole.OWNER,
297
- status: ActivationStatus.ACTIVE,
298
+ role: model_1.UserRole.OWNER,
299
+ status: model_1.ActivationStatus.ACTIVE,
298
300
  createdAt: new Date('2024-01-01T00:00:00Z'),
299
301
  updatedAt: new Date('2024-01-01T00:00:00Z'),
300
302
  },
301
303
  };
302
304
  it('should validate a valid create account user response', () => {
303
- const result = CreateAccountUserResponseSchema.safeParse(validResponse);
305
+ const result = auth_dto_1.CreateAccountUserResponseSchema.safeParse(validResponse);
304
306
  expect(result.success).toBe(true);
305
307
  if (result.success) {
306
308
  expect(result.data).toEqual(validResponse);
@@ -314,7 +316,7 @@ describe('AuthDto Schemas', () => {
314
316
  id: 'invalid-uuid',
315
317
  },
316
318
  };
317
- const result = CreateAccountUserResponseSchema.safeParse(invalidResponse);
319
+ const result = auth_dto_1.CreateAccountUserResponseSchema.safeParse(invalidResponse);
318
320
  expect(result.success).toBe(false);
319
321
  if (!result.success) {
320
322
  expect(result.error.issues[0].path).toEqual(['account', 'id']);
@@ -329,7 +331,7 @@ describe('AuthDto Schemas', () => {
329
331
  id: 'invalid-uuid',
330
332
  },
331
333
  };
332
- const result = CreateAccountUserResponseSchema.safeParse(invalidResponse);
334
+ const result = auth_dto_1.CreateAccountUserResponseSchema.safeParse(invalidResponse);
333
335
  expect(result.success).toBe(false);
334
336
  if (!result.success) {
335
337
  expect(result.error.issues[0].path).toEqual(['user', 'id']);
@@ -344,7 +346,7 @@ describe('AuthDto Schemas', () => {
344
346
  accountId: 'invalid-uuid',
345
347
  },
346
348
  };
347
- const result = CreateAccountUserResponseSchema.safeParse(invalidResponse);
349
+ const result = auth_dto_1.CreateAccountUserResponseSchema.safeParse(invalidResponse);
348
350
  expect(result.success).toBe(false);
349
351
  if (!result.success) {
350
352
  expect(result.error.issues[0].path).toEqual(['user', 'accountId']);
@@ -352,7 +354,7 @@ describe('AuthDto Schemas', () => {
352
354
  }
353
355
  });
354
356
  it('should validate all valid account statuses', () => {
355
- const statuses = [ActivationStatus.ACTIVE, ActivationStatus.DISABLED];
357
+ const statuses = [model_1.ActivationStatus.ACTIVE, model_1.ActivationStatus.DISABLED];
356
358
  statuses.forEach((status) => {
357
359
  const responseWithStatus = {
358
360
  ...validResponse,
@@ -361,7 +363,7 @@ describe('AuthDto Schemas', () => {
361
363
  status,
362
364
  },
363
365
  };
364
- const result = CreateAccountUserResponseSchema.safeParse(responseWithStatus);
366
+ const result = auth_dto_1.CreateAccountUserResponseSchema.safeParse(responseWithStatus);
365
367
  expect(result.success).toBe(true);
366
368
  if (result.success) {
367
369
  expect(result.data.account.status).toBe(status);
@@ -369,7 +371,7 @@ describe('AuthDto Schemas', () => {
369
371
  });
370
372
  });
371
373
  it('should validate all valid user roles', () => {
372
- const roles = [UserRole.OWNER, UserRole.PARENT, UserRole.CHILD];
374
+ const roles = [model_1.UserRole.OWNER, model_1.UserRole.PARENT, model_1.UserRole.CHILD];
373
375
  roles.forEach((role) => {
374
376
  const responseWithRole = {
375
377
  ...validResponse,
@@ -378,7 +380,7 @@ describe('AuthDto Schemas', () => {
378
380
  role,
379
381
  },
380
382
  };
381
- const result = CreateAccountUserResponseSchema.safeParse(responseWithRole);
383
+ const result = auth_dto_1.CreateAccountUserResponseSchema.safeParse(responseWithRole);
382
384
  expect(result.success).toBe(true);
383
385
  if (result.success) {
384
386
  expect(result.data.user.role).toBe(role);
@@ -392,7 +394,7 @@ describe('AuthDto Schemas', () => {
392
394
  password: 'password123',
393
395
  };
394
396
  it('should validate a valid login DTO', () => {
395
- const result = LoginDtoSchema.safeParse(validLoginDto);
397
+ const result = auth_dto_1.LoginDtoSchema.safeParse(validLoginDto);
396
398
  expect(result.success).toBe(true);
397
399
  if (result.success) {
398
400
  expect(result.data).toEqual(validLoginDto);
@@ -403,7 +405,7 @@ describe('AuthDto Schemas', () => {
403
405
  ...validLoginDto,
404
406
  emailOrUsername: 'invalid-email',
405
407
  };
406
- const result = LoginDtoSchema.safeParse(dtoWithUsername);
408
+ const result = auth_dto_1.LoginDtoSchema.safeParse(dtoWithUsername);
407
409
  expect(result.success).toBe(true);
408
410
  if (result.success) {
409
411
  expect(result.data.emailOrUsername).toBe('invalid-email');
@@ -413,7 +415,7 @@ describe('AuthDto Schemas', () => {
413
415
  const invalidDto = {
414
416
  password: 'password123',
415
417
  };
416
- const result = LoginDtoSchema.safeParse(invalidDto);
418
+ const result = auth_dto_1.LoginDtoSchema.safeParse(invalidDto);
417
419
  expect(result.success).toBe(false);
418
420
  if (!result.success) {
419
421
  expect(result.error.issues[0].path).toEqual(['emailOrUsername']);
@@ -424,7 +426,7 @@ describe('AuthDto Schemas', () => {
424
426
  const invalidDto = {
425
427
  emailOrUsername: 'john.doe@example.com',
426
428
  };
427
- const result = LoginDtoSchema.safeParse(invalidDto);
429
+ const result = auth_dto_1.LoginDtoSchema.safeParse(invalidDto);
428
430
  expect(result.success).toBe(false);
429
431
  if (!result.success) {
430
432
  expect(result.error.issues[0].path).toEqual(['password']);
@@ -436,7 +438,7 @@ describe('AuthDto Schemas', () => {
436
438
  emailOrUsername: 'john.doe@example.com',
437
439
  password: '',
438
440
  };
439
- const result = LoginDtoSchema.safeParse(dtoWithEmptyPassword);
441
+ const result = auth_dto_1.LoginDtoSchema.safeParse(dtoWithEmptyPassword);
440
442
  expect(result.success).toBe(true);
441
443
  if (result.success) {
442
444
  expect(result.data.password).toBe('');
@@ -447,7 +449,7 @@ describe('AuthDto Schemas', () => {
447
449
  emailOrUsername: 'josé.óconnor+test@example.com',
448
450
  password: 'password123',
449
451
  };
450
- const result = LoginDtoSchema.safeParse(specialEmailDto);
452
+ const result = auth_dto_1.LoginDtoSchema.safeParse(specialEmailDto);
451
453
  expect(result.success).toBe(true);
452
454
  if (result.success) {
453
455
  expect(result.data.emailOrUsername).toBe('josé.óconnor+test@example.com');
@@ -459,7 +461,7 @@ describe('AuthDto Schemas', () => {
459
461
  token: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxMjMiLCJpYXQiOjE2MzQ1Njc4OTB9.example',
460
462
  };
461
463
  it('should validate a valid login response', () => {
462
- const result = LoginResponseSchema.safeParse(validLoginResponse);
464
+ const result = auth_dto_1.LoginResponseSchema.safeParse(validLoginResponse);
463
465
  expect(result.success).toBe(true);
464
466
  if (result.success) {
465
467
  expect(result.data).toEqual(validLoginResponse);
@@ -467,7 +469,7 @@ describe('AuthDto Schemas', () => {
467
469
  });
468
470
  it('should reject missing token', () => {
469
471
  const invalidResponse = {};
470
- const result = LoginResponseSchema.safeParse(invalidResponse);
472
+ const result = auth_dto_1.LoginResponseSchema.safeParse(invalidResponse);
471
473
  expect(result.success).toBe(false);
472
474
  if (!result.success) {
473
475
  expect(result.error.issues[0].path).toEqual(['token']);
@@ -478,7 +480,7 @@ describe('AuthDto Schemas', () => {
478
480
  const responseWithEmptyToken = {
479
481
  token: '',
480
482
  };
481
- const result = LoginResponseSchema.safeParse(responseWithEmptyToken);
483
+ const result = auth_dto_1.LoginResponseSchema.safeParse(responseWithEmptyToken);
482
484
  expect(result.success).toBe(true);
483
485
  if (result.success) {
484
486
  expect(result.data.token).toBe('');
@@ -488,7 +490,7 @@ describe('AuthDto Schemas', () => {
488
490
  const responseWithLongToken = {
489
491
  token: 'A'.repeat(10000),
490
492
  };
491
- const result = LoginResponseSchema.safeParse(responseWithLongToken);
493
+ const result = auth_dto_1.LoginResponseSchema.safeParse(responseWithLongToken);
492
494
  expect(result.success).toBe(true);
493
495
  if (result.success) {
494
496
  expect(result.data.token).toBe('A'.repeat(10000));
@@ -1 +1 @@
1
- {"version":3,"file":"auth.dto.spec.js","sourceRoot":"","sources":["../../src/tests/auth.dto.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.dto.spec.js","sourceRoot":"","sources":["../../src/tests/auth.dto.spec.ts"],"names":[],"mappings":";;AAAA,gDAK2B;AAC3B,0CAA4D;AAE5D,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;QAC1C,MAAM,yBAAyB,GAAG;YAChC,OAAO,EAAE;gBACP,IAAI,EAAE,cAAc;aACrB;YACD,IAAI,EAAE;gBACJ,SAAS,EAAE,MAAM;gBACjB,QAAQ,EAAE,KAAK;gBACf,KAAK,EAAE,sBAAsB;gBAC7B,QAAQ,EAAE,SAAS;gBACnB,QAAQ,EAAE,aAAa;gBACvB,SAAS,EAAE,YAAY;aACxB;SACF,CAAC;QAEF,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;YAEzD,MAAM,MAAM,GAAG,qCAA0B,CAAC,SAAS,CACjD,yBAAyB,CAC1B,CAAC;YAGF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC;oBAC1B,GAAG,yBAAyB;oBAC5B,IAAI,EAAE;wBACJ,GAAG,yBAAyB,CAAC,IAAI;wBACjC,SAAS,EAAE,IAAI,IAAI,CAAC,YAAY,CAAC;qBAClC;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;YAEnE,MAAM,mBAAmB,GAAG;gBAC1B,OAAO,EAAE;oBACP,IAAI,EAAE,cAAc;iBACrB;gBACD,IAAI,EAAE;oBACJ,SAAS,EAAE,MAAM;oBACjB,QAAQ,EAAE,KAAK;oBACf,KAAK,EAAE,sBAAsB;oBAC7B,QAAQ,EAAE,SAAS;oBACnB,QAAQ,EAAE,aAAa;iBACxB;aACF,CAAC;YAGF,MAAM,MAAM,GAAG,qCAA0B,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;YAGzE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,aAAa,EAAE,CAAC;YACrD,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;YAE1C,MAAM,UAAU,GAAG;gBACjB,GAAG,yBAAyB;gBAC5B,OAAO,EAAE;oBACP,IAAI,EAAE,EAAE;iBACT;aACF,CAAC;YAGF,MAAM,MAAM,GAAG,qCAA0B,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YAGhE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;gBACjE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;YAE/D,MAAM,UAAU,GAAG;gBACjB,GAAG,yBAAyB;gBAC5B,OAAO,EAAE;oBACP,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC;iBACtB;aACF,CAAC;YAGF,MAAM,MAAM,GAAG,qCAA0B,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YAGhE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;gBACjE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CACzC,+CAA+C,CAChD,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;YAEhE,MAAM,QAAQ,GAAG;gBACf,GAAG,yBAAyB;gBAC5B,OAAO,EAAE;oBACP,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC;iBACtB;aACF,CAAC;YAGF,MAAM,MAAM,GAAG,qCAA0B,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAG9D,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YACzD,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;YAEvC,MAAM,UAAU,GAAG;gBACjB,GAAG,yBAAyB;gBAC5B,IAAI,EAAE;oBACJ,GAAG,yBAAyB,CAAC,IAAI;oBACjC,SAAS,EAAE,EAAE;iBACd;aACF,CAAC;YAGF,MAAM,MAAM,GAAG,qCAA0B,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YAGhE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;gBACnE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YACxE,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;YAE5D,MAAM,UAAU,GAAG;gBACjB,GAAG,yBAAyB;gBAC5B,IAAI,EAAE;oBACJ,GAAG,yBAAyB,CAAC,IAAI;oBACjC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC;iBAC3B;aACF,CAAC;YAGF,MAAM,MAAM,GAAG,qCAA0B,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YAGhE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;gBACnE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CACzC,6CAA6C,CAC9C,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;YAEtC,MAAM,UAAU,GAAG;gBACjB,GAAG,yBAAyB;gBAC5B,IAAI,EAAE;oBACJ,GAAG,yBAAyB,CAAC,IAAI;oBACjC,QAAQ,EAAE,EAAE;iBACb;aACF,CAAC;YAGF,MAAM,MAAM,GAAG,qCAA0B,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YAGhE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;gBAClE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YACvE,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;YAE3D,MAAM,UAAU,GAAG;gBACjB,GAAG,yBAAyB;gBAC5B,IAAI,EAAE;oBACJ,GAAG,yBAAyB,CAAC,IAAI;oBACjC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC;iBAC1B;aACF,CAAC;YAGF,MAAM,MAAM,GAAG,qCAA0B,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YAGhE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;gBAClE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CACzC,4CAA4C,CAC7C,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;YAE5C,MAAM,UAAU,GAAG;gBACjB,GAAG,yBAAyB;gBAC5B,IAAI,EAAE;oBACJ,GAAG,yBAAyB,CAAC,IAAI;oBACjC,KAAK,EAAE,eAAe;iBACvB;aACF,CAAC;YAGF,MAAM,MAAM,GAAG,qCAA0B,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YAGhE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC/D,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;YACtE,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;YAExD,MAAM,UAAU,GAAG;gBACjB,GAAG,yBAAyB;gBAC5B,IAAI,EAAE;oBACJ,GAAG,yBAAyB,CAAC,IAAI;oBACjC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,cAAc;iBACxC;aACF,CAAC;YAGF,MAAM,MAAM,GAAG,qCAA0B,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YAGhE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC/D,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CACzC,wCAAwC,CACzC,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;YAE1D,MAAM,UAAU,GAAG;gBACjB,GAAG,yBAAyB;gBAC5B,IAAI,EAAE;oBACJ,GAAG,yBAAyB,CAAC,IAAI;oBACjC,QAAQ,EAAE,OAAO;iBAClB;aACF,CAAC;YAGF,MAAM,MAAM,GAAG,qCAA0B,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YAGhE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;gBAClE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CACzC,wCAAwC,CACzC,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;YAE3D,MAAM,UAAU,GAAG;gBACjB,GAAG,yBAAyB;gBAC5B,IAAI,EAAE;oBACJ,GAAG,yBAAyB,CAAC,IAAI;oBACjC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC;iBAC1B;aACF,CAAC;YAGF,MAAM,MAAM,GAAG,qCAA0B,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YAGhE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;gBAClE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CACzC,2CAA2C,CAC5C,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;YAE1D,MAAM,QAAQ,GAAG;gBACf,GAAG,yBAAyB;gBAC5B,IAAI,EAAE;oBACJ,GAAG,yBAAyB,CAAC,IAAI;oBACjC,QAAQ,EAAE,UAAU;iBACrB;aACF,CAAC;YAGF,MAAM,MAAM,GAAG,qCAA0B,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAG9D,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACrD,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;YAE5D,MAAM,QAAQ,GAAG;gBACf,GAAG,yBAAyB;gBAC5B,IAAI,EAAE;oBACJ,GAAG,yBAAyB,CAAC,IAAI;oBACjC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC;iBAC1B;aACF,CAAC;YAGF,MAAM,MAAM,GAAG,qCAA0B,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAG9D,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;;YAEnD,MAAM,gBAAgB,GAAG;gBACvB,GAAG,yBAAyB;gBAC5B,IAAI,EAAE;oBACJ,GAAG,yBAAyB,CAAC,IAAI;oBACjC,SAAS,EAAE,YAAY;iBACxB;aACF,CAAC;YAGF,MAAM,MAAM,GAAG,qCAA0B,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;YAGtE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gBACxD,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC7D,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,0CAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACxD,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,0CAAE,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzD,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;YAEnD,MAAM,cAAc,GAAG;gBACrB,OAAO,EAAE;oBACP,IAAI,EAAE,cAAc;iBACrB;gBACD,IAAI,EAAE;oBACJ,SAAS,EAAE,MAAM;oBACjB,QAAQ,EAAE,gBAAgB;oBAC1B,KAAK,EAAE,kBAAkB;oBACzB,QAAQ,EAAE,MAAM;oBAChB,QAAQ,EAAE,aAAa;oBACvB,SAAS,EAAE,YAAY;iBACxB;aACF,CAAC;YAGF,MAAM,MAAM,GAAG,qCAA0B,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;YAGpE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBACtD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAChD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;QAC/C,MAAM,aAAa,GAAG;YACpB,OAAO,EAAE;gBACP,EAAE,EAAE,sCAAsC;gBAC1C,IAAI,EAAE,cAAc;gBACpB,MAAM,EAAE,wBAAgB,CAAC,MAAM;gBAC/B,SAAS,EAAE,IAAI,IAAI,CAAC,sBAAsB,CAAC;gBAC3C,SAAS,EAAE,IAAI,IAAI,CAAC,sBAAsB,CAAC;aAC5C;YACD,IAAI,EAAE;gBACJ,EAAE,EAAE,sCAAsC;gBAC1C,SAAS,EAAE,sCAAsC;gBACjD,SAAS,EAAE,MAAM;gBACjB,QAAQ,EAAE,KAAK;gBACf,KAAK,EAAE,sBAAsB;gBAC7B,QAAQ,EAAE,SAAS;gBACnB,IAAI,EAAE,gBAAQ,CAAC,KAAK;gBACpB,MAAM,EAAE,wBAAgB,CAAC,MAAM;gBAC/B,SAAS,EAAE,IAAI,IAAI,CAAC,sBAAsB,CAAC;gBAC3C,SAAS,EAAE,IAAI,IAAI,CAAC,sBAAsB,CAAC;aAC5C;SACF,CAAC;QAEF,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;YAE9D,MAAM,MAAM,GAAG,0CAA+B,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;YAGxE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;YAEnD,MAAM,eAAe,GAAG;gBACtB,GAAG,aAAa;gBAChB,OAAO,EAAE;oBACP,GAAG,aAAa,CAAC,OAAO;oBACxB,EAAE,EAAE,cAAc;iBACnB;aACF,CAAC;YAGF,MAAM,MAAM,GAAG,0CAA+B,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;YAG1E,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;gBAC/D,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;YAEhD,MAAM,eAAe,GAAG;gBACtB,GAAG,aAAa;gBAChB,IAAI,EAAE;oBACJ,GAAG,aAAa,CAAC,IAAI;oBACrB,EAAE,EAAE,cAAc;iBACnB;aACF,CAAC;YAGF,MAAM,MAAM,GAAG,0CAA+B,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;YAG1E,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;gBAC5D,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;YAElD,MAAM,eAAe,GAAG;gBACtB,GAAG,aAAa;gBAChB,IAAI,EAAE;oBACJ,GAAG,aAAa,CAAC,IAAI;oBACrB,SAAS,EAAE,cAAc;iBAC1B;aACF,CAAC;YAGF,MAAM,MAAM,GAAG,0CAA+B,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;YAG1E,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;gBACnE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;YAEpD,MAAM,QAAQ,GAAG,CAAC,wBAAgB,CAAC,MAAM,EAAE,wBAAgB,CAAC,QAAQ,CAAC,CAAC;YAEtE,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBAE1B,MAAM,kBAAkB,GAAG;oBACzB,GAAG,aAAa;oBAChB,OAAO,EAAE;wBACP,GAAG,aAAa,CAAC,OAAO;wBACxB,MAAM;qBACP;iBACF,CAAC;gBAGF,MAAM,MAAM,GACV,0CAA+B,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;gBAGhE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAClD,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAE9C,MAAM,KAAK,GAAG,CAAC,gBAAQ,CAAC,KAAK,EAAE,gBAAQ,CAAC,MAAM,EAAE,gBAAQ,CAAC,KAAK,CAAC,CAAC;YAEhE,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBAErB,MAAM,gBAAgB,GAAG;oBACvB,GAAG,aAAa;oBAChB,IAAI,EAAE;wBACJ,GAAG,aAAa,CAAC,IAAI;wBACrB,IAAI;qBACL;iBACF,CAAC;gBAGF,MAAM,MAAM,GACV,0CAA+B,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;gBAG9D,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC3C,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,MAAM,aAAa,GAAG;YACpB,eAAe,EAAE,sBAAsB;YACvC,QAAQ,EAAE,aAAa;SACxB,CAAC;QAEF,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YAE3C,MAAM,MAAM,GAAG,yBAAc,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;YAGvD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;YAErD,MAAM,eAAe,GAAG;gBACtB,GAAG,aAAa;gBAChB,eAAe,EAAE,eAAe;aACjC,CAAC;YAGF,MAAM,MAAM,GAAG,yBAAc,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;YAGzD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;YAE/C,MAAM,UAAU,GAAG;gBACjB,QAAQ,EAAE,aAAa;aACxB,CAAC;YAGF,MAAM,MAAM,GAAG,yBAAc,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YAGpD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;gBACjE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;YAExC,MAAM,UAAU,GAAG;gBACjB,eAAe,EAAE,sBAAsB;aACxC,CAAC;YAGF,MAAM,MAAM,GAAG,yBAAc,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YAGpD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;gBAC1D,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CACzC,2BAA2B,CAC5B,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;YAE7C,MAAM,oBAAoB,GAAG;gBAC3B,eAAe,EAAE,sBAAsB;gBACvC,QAAQ,EAAE,EAAE;aACb,CAAC;YAGF,MAAM,MAAM,GAAG,yBAAc,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;YAG9D,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACxC,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;YAE/D,MAAM,eAAe,GAAG;gBACtB,eAAe,EAAE,+BAA+B;gBAChD,QAAQ,EAAE,aAAa;aACxB,CAAC;YAGF,MAAM,MAAM,GAAG,yBAAc,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;YAGzD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,CACtC,+BAA+B,CAChC,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACnC,MAAM,kBAAkB,GAAG;YACzB,KAAK,EACH,2FAA2F;SAC9F,CAAC;QAEF,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;YAEhD,MAAM,MAAM,GAAG,8BAAmB,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;YAGjE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;YAClD,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;YAErC,MAAM,eAAe,GAAG,EAAE,CAAC;YAG3B,MAAM,MAAM,GAAG,8BAAmB,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;YAG9D,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;gBACvD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;YAE1C,MAAM,sBAAsB,GAAG;gBAC7B,KAAK,EAAE,EAAE;aACV,CAAC;YAGF,MAAM,MAAM,GAAG,8BAAmB,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;YAGrE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACrC,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;YAEvC,MAAM,qBAAqB,GAAG;gBAC5B,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC;aACzB,CAAC;YAGF,MAAM,MAAM,GAAG,8BAAmB,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;YAGpE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACpD,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,62 +1,64 @@
1
- import { z } from 'zod';
2
- import { ActivationStatus, UserRole } from '../model/model';
3
- import { createZodEnum } from '../model/utility';
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const zod_1 = require("zod");
4
+ const model_1 = require("../model/model");
5
+ const utility_1 = require("../model/utility");
4
6
  describe('Model Constants and Utility Functions', () => {
5
7
  describe('UserRole', () => {
6
8
  it('should have correct role values', () => {
7
- expect(UserRole.OWNER).toBe('owner');
8
- expect(UserRole.PARENT).toBe('parent');
9
- expect(UserRole.CHILD).toBe('child');
9
+ expect(model_1.UserRole.OWNER).toBe('owner');
10
+ expect(model_1.UserRole.PARENT).toBe('parent');
11
+ expect(model_1.UserRole.CHILD).toBe('child');
10
12
  });
11
13
  it('should have all expected roles', () => {
12
14
  const expectedRoles = ['owner', 'parent', 'child'];
13
- const actualRoles = Object.values(UserRole);
15
+ const actualRoles = Object.values(model_1.UserRole);
14
16
  expect(actualRoles).toEqual(expectedRoles);
15
17
  expect(actualRoles).toHaveLength(3);
16
18
  });
17
19
  it('should have readonly properties (TypeScript compile-time check)', () => {
18
- expect(UserRole.OWNER).toBe('owner');
19
- expect(UserRole.PARENT).toBe('parent');
20
- expect(UserRole.CHILD).toBe('child');
20
+ expect(model_1.UserRole.OWNER).toBe('owner');
21
+ expect(model_1.UserRole.PARENT).toBe('parent');
22
+ expect(model_1.UserRole.CHILD).toBe('child');
21
23
  });
22
24
  });
23
25
  describe('ActivationStatus', () => {
24
26
  it('should have correct status values', () => {
25
- expect(ActivationStatus.ACTIVE).toBe('active');
26
- expect(ActivationStatus.DISABLED).toBe('disabled');
27
+ expect(model_1.ActivationStatus.ACTIVE).toBe('active');
28
+ expect(model_1.ActivationStatus.DISABLED).toBe('disabled');
27
29
  });
28
30
  it('should have all expected statuses', () => {
29
31
  const expectedStatuses = ['active', 'disabled'];
30
- const actualStatuses = Object.values(ActivationStatus);
32
+ const actualStatuses = Object.values(model_1.ActivationStatus);
31
33
  expect(actualStatuses).toEqual(expectedStatuses);
32
34
  expect(actualStatuses).toHaveLength(2);
33
35
  });
34
36
  it('should have readonly properties (TypeScript compile-time check)', () => {
35
- expect(ActivationStatus.ACTIVE).toBe('active');
36
- expect(ActivationStatus.DISABLED).toBe('disabled');
37
+ expect(model_1.ActivationStatus.ACTIVE).toBe('active');
38
+ expect(model_1.ActivationStatus.DISABLED).toBe('disabled');
37
39
  });
38
40
  });
39
41
  describe('createZodEnum', () => {
40
42
  it('should create a valid Zod enum from UserRole', () => {
41
- const userRoleEnum = createZodEnum(UserRole);
42
- expect(userRoleEnum.parse(UserRole.OWNER)).toBe(UserRole.OWNER);
43
- expect(userRoleEnum.parse(UserRole.PARENT)).toBe(UserRole.PARENT);
44
- expect(userRoleEnum.parse(UserRole.CHILD)).toBe(UserRole.CHILD);
43
+ const userRoleEnum = (0, utility_1.createZodEnum)(model_1.UserRole);
44
+ expect(userRoleEnum.parse(model_1.UserRole.OWNER)).toBe(model_1.UserRole.OWNER);
45
+ expect(userRoleEnum.parse(model_1.UserRole.PARENT)).toBe(model_1.UserRole.PARENT);
46
+ expect(userRoleEnum.parse(model_1.UserRole.CHILD)).toBe(model_1.UserRole.CHILD);
45
47
  });
46
48
  it('should create a valid Zod enum from ActivationStatus', () => {
47
- const activationStatusEnum = createZodEnum(ActivationStatus);
48
- expect(activationStatusEnum.parse(ActivationStatus.ACTIVE)).toBe(ActivationStatus.ACTIVE);
49
- expect(activationStatusEnum.parse(ActivationStatus.DISABLED)).toBe(ActivationStatus.DISABLED);
49
+ const activationStatusEnum = (0, utility_1.createZodEnum)(model_1.ActivationStatus);
50
+ expect(activationStatusEnum.parse(model_1.ActivationStatus.ACTIVE)).toBe(model_1.ActivationStatus.ACTIVE);
51
+ expect(activationStatusEnum.parse(model_1.ActivationStatus.DISABLED)).toBe(model_1.ActivationStatus.DISABLED);
50
52
  });
51
53
  it('should reject invalid values for UserRole enum', () => {
52
- const userRoleEnum = createZodEnum(UserRole);
54
+ const userRoleEnum = (0, utility_1.createZodEnum)(model_1.UserRole);
53
55
  expect(() => userRoleEnum.parse('invalid-role')).toThrow();
54
56
  expect(() => userRoleEnum.parse('')).toThrow();
55
57
  expect(() => userRoleEnum.parse(null)).toThrow();
56
58
  expect(() => userRoleEnum.parse(undefined)).toThrow();
57
59
  });
58
60
  it('should reject invalid values for ActivationStatus enum', () => {
59
- const activationStatusEnum = createZodEnum(ActivationStatus);
61
+ const activationStatusEnum = (0, utility_1.createZodEnum)(model_1.ActivationStatus);
60
62
  expect(() => activationStatusEnum.parse('invalid-status')).toThrow();
61
63
  expect(() => activationStatusEnum.parse('')).toThrow();
62
64
  expect(() => activationStatusEnum.parse(null)).toThrow();
@@ -68,7 +70,7 @@ describe('Model Constants and Utility Functions', () => {
68
70
  SECOND: 'second',
69
71
  THIRD: 'third',
70
72
  };
71
- const customZodEnum = createZodEnum(customEnum);
73
+ const customZodEnum = (0, utility_1.createZodEnum)(customEnum);
72
74
  expect(customZodEnum.parse('first')).toBe('first');
73
75
  expect(customZodEnum.parse('second')).toBe('second');
74
76
  expect(customZodEnum.parse('third')).toBe('third');
@@ -78,42 +80,42 @@ describe('Model Constants and Utility Functions', () => {
78
80
  const singleEnum = {
79
81
  ONLY: 'only',
80
82
  };
81
- const singleZodEnum = createZodEnum(singleEnum);
83
+ const singleZodEnum = (0, utility_1.createZodEnum)(singleEnum);
82
84
  expect(singleZodEnum.parse('only')).toBe('only');
83
85
  expect(() => singleZodEnum.parse('other')).toThrow();
84
86
  });
85
87
  it('should handle empty enum object gracefully', () => {
86
88
  const emptyEnum = {};
87
- expect(() => createZodEnum(emptyEnum)).not.toThrow();
89
+ expect(() => (0, utility_1.createZodEnum)(emptyEnum)).not.toThrow();
88
90
  });
89
91
  it('should preserve type safety', () => {
90
- const userRoleEnum = createZodEnum(UserRole);
91
- const result = userRoleEnum.safeParse(UserRole.OWNER);
92
+ const userRoleEnum = (0, utility_1.createZodEnum)(model_1.UserRole);
93
+ const result = userRoleEnum.safeParse(model_1.UserRole.OWNER);
92
94
  expect(result.success).toBe(true);
93
95
  if (result.success) {
94
96
  const role = result.data;
95
- expect(role).toBe(UserRole.OWNER);
97
+ expect(role).toBe(model_1.UserRole.OWNER);
96
98
  }
97
99
  });
98
100
  it('should work with Zod schema composition', () => {
99
- const userRoleEnum = createZodEnum(UserRole);
100
- const schema = z.object({
101
+ const userRoleEnum = (0, utility_1.createZodEnum)(model_1.UserRole);
102
+ const schema = zod_1.z.object({
101
103
  role: userRoleEnum,
102
- name: z.string(),
104
+ name: zod_1.z.string(),
103
105
  });
104
106
  const validData = {
105
- role: UserRole.PARENT,
107
+ role: model_1.UserRole.PARENT,
106
108
  name: 'John Doe',
107
109
  };
108
110
  const result = schema.safeParse(validData);
109
111
  expect(result.success).toBe(true);
110
112
  if (result.success) {
111
- expect(result.data.role).toBe(UserRole.PARENT);
113
+ expect(result.data.role).toBe(model_1.UserRole.PARENT);
112
114
  expect(result.data.name).toBe('John Doe');
113
115
  }
114
116
  });
115
117
  it('should provide meaningful error messages', () => {
116
- const userRoleEnum = createZodEnum(UserRole);
118
+ const userRoleEnum = (0, utility_1.createZodEnum)(model_1.UserRole);
117
119
  const result = userRoleEnum.safeParse('invalid-role');
118
120
  expect(result.success).toBe(false);
119
121
  if (!result.success) {
@@ -122,7 +124,7 @@ describe('Model Constants and Utility Functions', () => {
122
124
  }
123
125
  });
124
126
  it('should handle case sensitivity correctly', () => {
125
- const userRoleEnum = createZodEnum(UserRole);
127
+ const userRoleEnum = (0, utility_1.createZodEnum)(model_1.UserRole);
126
128
  expect(() => userRoleEnum.parse('OWNER')).toThrow();
127
129
  expect(() => userRoleEnum.parse('Owner')).toThrow();
128
130
  expect(userRoleEnum.parse('owner')).toBe('owner');
@@ -149,21 +151,21 @@ describe('Model Constants and Utility Functions', () => {
149
151
  });
150
152
  describe('Enum Object Structure', () => {
151
153
  it('should have correct object structure for UserRole', () => {
152
- expect(typeof UserRole).toBe('object');
153
- expect(UserRole).toHaveProperty('OWNER');
154
- expect(UserRole).toHaveProperty('PARENT');
155
- expect(UserRole).toHaveProperty('CHILD');
156
- expect(Object.keys(UserRole)).toHaveLength(3);
154
+ expect(typeof model_1.UserRole).toBe('object');
155
+ expect(model_1.UserRole).toHaveProperty('OWNER');
156
+ expect(model_1.UserRole).toHaveProperty('PARENT');
157
+ expect(model_1.UserRole).toHaveProperty('CHILD');
158
+ expect(Object.keys(model_1.UserRole)).toHaveLength(3);
157
159
  });
158
160
  it('should have correct object structure for ActivationStatus', () => {
159
- expect(typeof ActivationStatus).toBe('object');
160
- expect(ActivationStatus).toHaveProperty('ACTIVE');
161
- expect(ActivationStatus).toHaveProperty('DISABLED');
162
- expect(Object.keys(ActivationStatus)).toHaveLength(2);
161
+ expect(typeof model_1.ActivationStatus).toBe('object');
162
+ expect(model_1.ActivationStatus).toHaveProperty('ACTIVE');
163
+ expect(model_1.ActivationStatus).toHaveProperty('DISABLED');
164
+ expect(Object.keys(model_1.ActivationStatus)).toHaveLength(2);
163
165
  });
164
166
  it('should maintain consistent naming convention', () => {
165
- const userRoleKeys = Object.keys(UserRole);
166
- const activationStatusKeys = Object.keys(ActivationStatus);
167
+ const userRoleKeys = Object.keys(model_1.UserRole);
168
+ const activationStatusKeys = Object.keys(model_1.ActivationStatus);
167
169
  userRoleKeys.forEach((key) => {
168
170
  expect(key).toMatch(/^[A-Z_]+$/);
169
171
  });
@@ -172,8 +174,8 @@ describe('Model Constants and Utility Functions', () => {
172
174
  });
173
175
  });
174
176
  it('should maintain consistent value convention', () => {
175
- const userRoleValues = Object.values(UserRole);
176
- const activationStatusValues = Object.values(ActivationStatus);
177
+ const userRoleValues = Object.values(model_1.UserRole);
178
+ const activationStatusValues = Object.values(model_1.ActivationStatus);
177
179
  userRoleValues.forEach((value) => {
178
180
  expect(value).toMatch(/^[a-z]+$/);
179
181
  });