@hedhog/admin 0.12.2 → 0.12.4

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 (137) hide show
  1. package/dist/auth/auth.controller.d.ts +1 -10
  2. package/dist/auth/auth.controller.d.ts.map +1 -1
  3. package/dist/auth/auth.service.d.ts +1 -10
  4. package/dist/auth/auth.service.d.ts.map +1 -1
  5. package/dist/auth/auth.service.js.map +1 -1
  6. package/dist/auth/auth.service.spec.d.ts +0 -1
  7. package/dist/auth/auth.service.spec.js +171 -161
  8. package/dist/auth/auth.service.spec.js.map +1 -1
  9. package/dist/auth/consts/body.js +23 -23
  10. package/dist/menu/menu.controller.d.ts +6 -33
  11. package/dist/menu/menu.controller.d.ts.map +1 -1
  12. package/dist/menu/menu.service.d.ts +6 -33
  13. package/dist/menu/menu.service.d.ts.map +1 -1
  14. package/dist/menu/menu.service.js.map +1 -1
  15. package/dist/role/guards/role.guard.js.map +1 -1
  16. package/dist/role/role.controller.d.ts +5 -5
  17. package/dist/role/role.service.d.ts +5 -5
  18. package/dist/role/role.service.js.map +1 -1
  19. package/dist/route/route.controller.d.ts +6 -27
  20. package/dist/route/route.controller.d.ts.map +1 -1
  21. package/dist/route/route.service.d.ts +6 -27
  22. package/dist/route/route.service.d.ts.map +1 -1
  23. package/dist/route/route.service.js.map +1 -1
  24. package/dist/screen/screen.controller.d.ts +6 -24
  25. package/dist/screen/screen.controller.d.ts.map +1 -1
  26. package/dist/screen/screen.service.d.ts +6 -24
  27. package/dist/screen/screen.service.d.ts.map +1 -1
  28. package/dist/screen/screen.service.js.map +1 -1
  29. package/dist/user/user.controller.d.ts +5 -32
  30. package/dist/user/user.controller.d.ts.map +1 -1
  31. package/dist/user/user.service.d.ts +5 -32
  32. package/dist/user/user.service.d.ts.map +1 -1
  33. package/dist/user/user.service.js.map +1 -1
  34. package/dist/user/user.service.spec.d.ts +0 -1
  35. package/dist/user/user.service.spec.js +259 -250
  36. package/dist/user/user.service.spec.js.map +1 -1
  37. package/frontend/menu/components/create-panel.tsx.ejs +55 -0
  38. package/frontend/menu/components/update-panel.tsx.ejs +67 -0
  39. package/frontend/menu/locales/en/admin.menu.json +11 -0
  40. package/frontend/menu/locales/pt/admin.menu.json +11 -0
  41. package/frontend/menu/react-query/handlers.ts.ejs +28 -0
  42. package/frontend/menu/react-query/requests.ts.ejs +56 -0
  43. package/frontend/menu-locale/locales/en/admin.menu-locale.json +11 -0
  44. package/frontend/menu-locale/locales/pt/admin.menu-locale.json +11 -0
  45. package/frontend/menu-screen/locales/en/admin.menu-screen.json +11 -0
  46. package/frontend/menu-screen/locales/pt/admin.menu-screen.json +11 -0
  47. package/frontend/multifactor/components/create-panel.tsx.ejs +55 -0
  48. package/frontend/multifactor/components/update-panel.tsx.ejs +70 -0
  49. package/frontend/multifactor/locales/en/admin.multifactor.json +11 -0
  50. package/frontend/multifactor/locales/pt/admin.multifactor.json +11 -0
  51. package/frontend/multifactor/react-query/handlers.ts.ejs +28 -0
  52. package/frontend/multifactor/react-query/requests.ts.ejs +59 -0
  53. package/frontend/multifactor-locale/locales/en/admin.multifactor-locale.json +11 -0
  54. package/frontend/multifactor-locale/locales/pt/admin.multifactor-locale.json +11 -0
  55. package/frontend/screen/components/create-panel.tsx.ejs +55 -0
  56. package/frontend/screen/components/update-panel.tsx.ejs +67 -0
  57. package/frontend/screen/locales/en/admin.screen.json +11 -0
  58. package/frontend/screen/locales/pt/admin.screen.json +11 -0
  59. package/frontend/screen/react-query/handlers.ts.ejs +28 -0
  60. package/frontend/screen/react-query/requests.ts.ejs +56 -0
  61. package/frontend/screen-locale/locales/en/admin.screen-locale.json +11 -0
  62. package/frontend/screen-locale/locales/pt/admin.screen-locale.json +11 -0
  63. package/frontend/translation/components/create-panel.tsx.ejs +52 -0
  64. package/frontend/translation/components/update-panel.tsx.ejs +67 -0
  65. package/frontend/translation/fields/en.json +1 -0
  66. package/frontend/translation/fields/pt.json +1 -0
  67. package/frontend/translation/locales/en/admin.translation.json +11 -0
  68. package/frontend/translation/locales/pt/admin.translation.json +11 -0
  69. package/frontend/translation/modules/en.json +1 -0
  70. package/frontend/translation/modules/pt.json +1 -0
  71. package/frontend/translation/react-query/handlers.ts.ejs +28 -0
  72. package/frontend/translation/react-query/requests.ts.ejs +58 -0
  73. package/frontend/translation-namespace/components/create-panel.tsx.ejs +53 -0
  74. package/frontend/translation-namespace/components/update-panel.tsx.ejs +70 -0
  75. package/frontend/translation-namespace/locales/en/admin.translation-namespace.json +11 -0
  76. package/frontend/translation-namespace/locales/pt/admin.translation-namespace.json +11 -0
  77. package/frontend/translation-namespace/react-query/handlers.ts.ejs +28 -0
  78. package/frontend/translation-namespace/react-query/requests.ts.ejs +60 -0
  79. package/frontend/user/components/create-panel.tsx.ejs +52 -0
  80. package/frontend/user/components/update-panel.tsx.ejs +64 -0
  81. package/frontend/user/locales/en/admin.user.json +11 -0
  82. package/frontend/user/locales/pt/admin.user.json +11 -0
  83. package/frontend/user/react-query/handlers.ts.ejs +28 -0
  84. package/frontend/user/react-query/requests.ts.ejs +55 -0
  85. package/{bkp.hedhog.yaml → hedhog.yaml} +1012 -1012
  86. package/package.json +6 -6
  87. package/src/admin.module.ts +37 -37
  88. package/src/auth/auth.controller.ts +72 -72
  89. package/src/auth/auth.module.ts +39 -39
  90. package/src/auth/auth.service.spec.ts +196 -196
  91. package/src/auth/auth.service.ts +234 -234
  92. package/src/auth/consts/body.ts +26 -26
  93. package/src/auth/consts/subject.ts +1 -1
  94. package/src/auth/dto/forget.dto.ts +6 -6
  95. package/src/auth/dto/login.dto.ts +15 -15
  96. package/src/auth/dto/otp.dto.ts +11 -11
  97. package/src/auth/dto/reset.dto.ts +14 -14
  98. package/src/auth/enums/multifactor-type.enum.ts +4 -4
  99. package/src/auth/guards/auth.guard.ts +50 -50
  100. package/src/auth/types/user.type.ts +8 -8
  101. package/src/dto/delete.dto.ts +8 -8
  102. package/src/dto/update-ids.dto.ts +9 -9
  103. package/src/index.ts +20 -20
  104. package/src/menu/dto/create.dto.ts +25 -25
  105. package/src/menu/dto/order.dto.ts +8 -8
  106. package/src/menu/dto/update.dto.ts +19 -19
  107. package/src/menu/menu.controller.ts +105 -105
  108. package/src/menu/menu.module.ts +18 -18
  109. package/src/menu/menu.service.spec.ts +247 -247
  110. package/src/menu/menu.service.ts +263 -263
  111. package/src/role/dto/create.dto.ts +7 -7
  112. package/src/role/dto/update.dto.ts +4 -4
  113. package/src/role/guards/role.guard.ts +123 -123
  114. package/src/role/role.controller.ts +126 -126
  115. package/src/role/role.module.ts +28 -28
  116. package/src/role/role.service.spec.ts +417 -417
  117. package/src/role/role.service.ts +289 -289
  118. package/src/route/dto/create.dto.ts +13 -13
  119. package/src/route/dto/update.dto.ts +15 -15
  120. package/src/route/route.controller.ts +91 -91
  121. package/src/route/route.module.ts +18 -18
  122. package/src/route/route.service.spec.ts +300 -300
  123. package/src/route/route.service.ts +164 -164
  124. package/src/screen/dto/create.dto.ts +11 -11
  125. package/src/screen/dto/update.dto.ts +19 -19
  126. package/src/screen/screen.controller.ts +93 -93
  127. package/src/screen/screen.module.ts +18 -18
  128. package/src/screen/screen.service.spec.ts +298 -298
  129. package/src/screen/screen.service.ts +179 -179
  130. package/src/types/http-method.ts +8 -8
  131. package/src/user/constants/user.constants.ts +1 -1
  132. package/src/user/dto/create.dto.ts +24 -24
  133. package/src/user/dto/update.dto.ts +41 -41
  134. package/src/user/user.controller.ts +75 -75
  135. package/src/user/user.module.ts +18 -18
  136. package/src/user/user.service.spec.ts +294 -294
  137. package/src/user/user.service.ts +129 -129
@@ -1,300 +1,300 @@
1
- // import {
2
- // PageOrderDirection,
3
- // PaginationDTO,
4
- // PaginationService,
5
- // } from '@hedhog/pagination';
6
- // import { PrismaService } from '@hedhog/prisma';
7
- // import { Test, TestingModule } from '@nestjs/testing';
8
- // import { DeleteDTO } from '../dto/delete.dto';
9
- // import { UpdateIdsDTO } from '../dto/update-ids.dto';
10
- // import { CreateDTO } from './dto/create.dto';
11
- // import { UpdateDTO } from './dto/update.dto';
12
- // import { RouteService } from './route.service';
13
-
14
- // describe('RouteService', () => {
15
- // let service: RouteService;
16
- // let prismaService: PrismaService;
17
- // let paginationService: PaginationService;
18
-
19
- // const mockPrismaService = {
20
- // route: {
21
- // findUnique: jest.fn(),
22
- // create: jest.fn(),
23
- // update: jest.fn(),
24
- // deleteMany: jest.fn(),
25
- // },
26
- // role_route: {
27
- // deleteMany: jest.fn(),
28
- // createMany: jest.fn(),
29
- // },
30
- // route_screens: {
31
- // deleteMany: jest.fn(),
32
- // createMany: jest.fn(),
33
- // },
34
- // createInsensitiveSearch: jest.fn(),
35
- // };
36
-
37
- // const mockPaginationService = {
38
- // paginate: jest.fn(),
39
- // };
40
-
41
- // beforeEach(async () => {
42
- // const module: TestingModule = await Test.createTestingModule({
43
- // providers: [
44
- // RouteService,
45
- // { provide: PrismaService, useValue: mockPrismaService },
46
- // { provide: PaginationService, useValue: mockPaginationService },
47
- // ],
48
- // }).compile();
49
-
50
- // service = module.get<RouteService>(RouteService);
51
- // prismaService = module.get<PrismaService>(PrismaService);
52
- // paginationService = module.get<PaginationService>(PaginationService);
53
- // });
54
-
55
- // it('should be defined', () => {
56
- // expect(service).toBeDefined();
57
- // });
58
- // /*
59
- // describe('getRoutes', () => {
60
- // it('should paginate route', async () => {
61
- // const paginationParams: PaginationDTO = {
62
- // page: 1,
63
- // pageSize: 10,
64
- // search: '',
65
- // sortField: '',
66
- // sortOrder: PageOrderDirection.Asc,
67
- // fields: '',
68
- // };
69
- // const result = { data: [], total: 0 };
70
-
71
- // mockPrismaService.createInsensitiveSearch.mockReturnValue([]);
72
- // mockPaginationService.paginate.mockResolvedValue(result);
73
-
74
- // const res = await service.getRoutes(paginationParams);
75
-
76
- // expect(mockPrismaService.createInsensitiveSearch).toHaveBeenCalledWith(
77
- // ['url', 'method'],
78
- // paginationParams,
79
- // );
80
- // expect(mockPaginationService.paginate).toHaveBeenCalledWith(
81
- // mockPrismaService.route,
82
- // paginationParams,
83
- // { where: { OR: [] } },
84
- // );
85
- // expect(res).toEqual(result);
86
- // });
87
- // });
88
- // */
89
- // /*
90
- // describe('getRouteById', () => {
91
- // it('should return a route by ID', async () => {
92
- // const routeId = 1;
93
- // const route = { id: routeId, url: '/test', method: 'GET' };
94
-
95
- // mockPrismaService.route.findUnique.mockResolvedValue(route);
96
-
97
- // const res = await service.getRouteById(routeId);
98
-
99
- // expect(mockPrismaService.route.findUnique).toHaveBeenCalledWith({
100
- // where: { id: routeId },
101
- // });
102
- // expect(res).toEqual(route);
103
- // });
104
- // });*/
105
-
106
- // describe('create', () => {
107
- // it('should create a new route', async () => {
108
- // const createDto: CreateDTO = { url: '/test', method: 'GET' };
109
- // const route = { id: 1, ...createDto };
110
-
111
- // mockPrismaService.route.create.mockResolvedValue(route);
112
-
113
- // const res = await service.create(createDto);
114
-
115
- // expect(mockPrismaService.route.create).toHaveBeenCalledWith({
116
- // data: createDto,
117
- // });
118
- // expect(res).toEqual(route);
119
- // });
120
- // });
121
-
122
- // describe('update', () => {
123
- // it('should update a route', async () => {
124
- // const updateDto: UpdateDTO = { url: '/updated', method: 'POST' };
125
- // const routeId = 1;
126
- // const updatedRoute = { id: routeId, ...updateDto };
127
-
128
- // mockPrismaService.route.update.mockResolvedValue(updatedRoute);
129
-
130
- // const res = await service.update({ id: routeId, data: updateDto });
131
-
132
- // expect(mockPrismaService.route.update).toHaveBeenCalledWith({
133
- // where: { id: routeId },
134
- // data: updateDto,
135
- // });
136
- // expect(res).toEqual(updatedRoute);
137
- // });
138
- // });
139
-
140
- // describe('delete', () => {
141
- // it('should delete route by ids', async () => {
142
- // const deleteDto: DeleteDTO = { ids: [1, 2] };
143
- // const result = { count: 2 };
144
-
145
- // mockPrismaService.route.deleteMany.mockResolvedValue(result);
146
-
147
- // const res = await service.delete(deleteDto);
148
-
149
- // expect(mockPrismaService.route.deleteMany).toHaveBeenCalledWith({
150
- // where: { id: { in: deleteDto.ids } },
151
- // });
152
- // expect(res).toEqual(result);
153
- // });
154
- // });
155
-
156
- // describe('updateRoles', () => {
157
- // it('should update role for a route', async () => {
158
- // const routeId = 1;
159
- // const updateIdsDto: UpdateIdsDTO = { ids: [1, 2] };
160
- // const result = { count: 2 };
161
-
162
- // mockPrismaService.role_route.deleteMany.mockResolvedValue({});
163
- // mockPrismaService.role_route.createMany.mockResolvedValue(result);
164
-
165
- // const res = await service.updateRoles(routeId, updateIdsDto);
166
-
167
- // expect(mockPrismaService.role_route.deleteMany).toHaveBeenCalledWith({
168
- // where: { route_id: routeId },
169
- // });
170
- // expect(mockPrismaService.role_route.createMany).toHaveBeenCalledWith({
171
- // data: updateIdsDto.ids.map((roleId) => ({
172
- // role_id: roleId,
173
- // route_id: routeId,
174
- // })),
175
- // skipDuplicates: true,
176
- // });
177
- // expect(res).toEqual(result);
178
- // });
179
- // });
180
-
181
- // describe('updateScreens', () => {
182
- // it('should update screens for a route', async () => {
183
- // const routeId = 1;
184
- // const updateIdsDto: UpdateIdsDTO = { ids: [1, 2] };
185
- // const result = { count: 2 };
186
-
187
- // mockPrismaService.route_screens.deleteMany.mockResolvedValue({});
188
- // mockPrismaService.route_screens.createMany.mockResolvedValue(result);
189
-
190
- // const res = await service.updateScreens(routeId, updateIdsDto);
191
-
192
- // expect(mockPrismaService.route_screens.deleteMany).toHaveBeenCalledWith({
193
- // where: { route_id: routeId },
194
- // });
195
- // expect(mockPrismaService.route_screens.createMany).toHaveBeenCalledWith({
196
- // data: updateIdsDto.ids.map((screenId) => ({
197
- // screen_id: screenId,
198
- // route_id: routeId,
199
- // })),
200
- // skipDuplicates: true,
201
- // });
202
- // expect(res).toEqual(result);
203
- // });
204
- // });
205
-
206
- // describe('listRoles', () => {
207
- // it('should call paginate method with correct parameters', async () => {
208
- // const locale = 'en';
209
- // const routeId = 1;
210
- // const paginationParams: PaginationDTO = {
211
- // page: 1,
212
- // pageSize: 10,
213
- // search: '',
214
- // sortField: '',
215
- // sortOrder: PageOrderDirection.Asc,
216
- // fields: '',
217
- // };
218
-
219
- // paginationService.paginate = jest.fn().mockResolvedValue({
220
- // data: [],
221
- // total: 0,
222
- // });
223
-
224
- // await service.listRoles(locale, routeId, paginationParams);
225
-
226
- // expect(paginationService.paginate).toHaveBeenCalledWith(
227
- // prismaService.role,
228
- // paginationParams,
229
- // {
230
- // include: {
231
- // role_locale: {
232
- // where: {
233
- // locale: { code: locale },
234
- // },
235
- // select: {
236
- // name: true,
237
- // description: true,
238
- // },
239
- // },
240
- // role_route: {
241
- // where: { route_id: routeId },
242
- // select: {
243
- // route_id: true,
244
- // role_id: true,
245
- // },
246
- // },
247
- // },
248
- // },
249
- // 'role_locale',
250
- // );
251
- // });
252
- // });
253
-
254
- // describe('listScreens', () => {
255
- // it('should call paginate method with correct parameters', async () => {
256
- // const locale = 'en';
257
- // const routeId = 1;
258
- // const paginationParams: PaginationDTO = {
259
- // page: 1,
260
- // pageSize: 10,
261
- // search: '',
262
- // sortField: '',
263
- // sortOrder: PageOrderDirection.Asc,
264
- // fields: '',
265
- // };
266
-
267
- // paginationService.paginate = jest.fn().mockResolvedValue({
268
- // data: [],
269
- // total: 0,
270
- // });
271
-
272
- // await service.listScreens(locale, routeId, paginationParams);
273
-
274
- // expect(paginationService.paginate).toHaveBeenCalledWith(
275
- // prismaService.screens,
276
- // paginationParams,
277
- // {
278
- // include: {
279
- // screen_locale: {
280
- // where: {
281
- // locale: { code: locale },
282
- // },
283
- // select: {
284
- // name: true,
285
- // },
286
- // },
287
- // route_screens: {
288
- // where: { route_id: routeId },
289
- // select: {
290
- // route_id: true,
291
- // screen_id: true,
292
- // },
293
- // },
294
- // },
295
- // },
296
- // 'screen_locale',
297
- // );
298
- // });
299
- // });
300
- // });
1
+ // import {
2
+ // PageOrderDirection,
3
+ // PaginationDTO,
4
+ // PaginationService,
5
+ // } from '@hedhog/pagination';
6
+ // import { PrismaService } from '@hedhog/prisma';
7
+ // import { Test, TestingModule } from '@nestjs/testing';
8
+ // import { DeleteDTO } from '../dto/delete.dto';
9
+ // import { UpdateIdsDTO } from '../dto/update-ids.dto';
10
+ // import { CreateDTO } from './dto/create.dto';
11
+ // import { UpdateDTO } from './dto/update.dto';
12
+ // import { RouteService } from './route.service';
13
+
14
+ // describe('RouteService', () => {
15
+ // let service: RouteService;
16
+ // let prismaService: PrismaService;
17
+ // let paginationService: PaginationService;
18
+
19
+ // const mockPrismaService = {
20
+ // route: {
21
+ // findUnique: jest.fn(),
22
+ // create: jest.fn(),
23
+ // update: jest.fn(),
24
+ // deleteMany: jest.fn(),
25
+ // },
26
+ // role_route: {
27
+ // deleteMany: jest.fn(),
28
+ // createMany: jest.fn(),
29
+ // },
30
+ // route_screens: {
31
+ // deleteMany: jest.fn(),
32
+ // createMany: jest.fn(),
33
+ // },
34
+ // createInsensitiveSearch: jest.fn(),
35
+ // };
36
+
37
+ // const mockPaginationService = {
38
+ // paginate: jest.fn(),
39
+ // };
40
+
41
+ // beforeEach(async () => {
42
+ // const module: TestingModule = await Test.createTestingModule({
43
+ // providers: [
44
+ // RouteService,
45
+ // { provide: PrismaService, useValue: mockPrismaService },
46
+ // { provide: PaginationService, useValue: mockPaginationService },
47
+ // ],
48
+ // }).compile();
49
+
50
+ // service = module.get<RouteService>(RouteService);
51
+ // prismaService = module.get<PrismaService>(PrismaService);
52
+ // paginationService = module.get<PaginationService>(PaginationService);
53
+ // });
54
+
55
+ // it('should be defined', () => {
56
+ // expect(service).toBeDefined();
57
+ // });
58
+ // /*
59
+ // describe('getRoutes', () => {
60
+ // it('should paginate route', async () => {
61
+ // const paginationParams: PaginationDTO = {
62
+ // page: 1,
63
+ // pageSize: 10,
64
+ // search: '',
65
+ // sortField: '',
66
+ // sortOrder: PageOrderDirection.Asc,
67
+ // fields: '',
68
+ // };
69
+ // const result = { data: [], total: 0 };
70
+
71
+ // mockPrismaService.createInsensitiveSearch.mockReturnValue([]);
72
+ // mockPaginationService.paginate.mockResolvedValue(result);
73
+
74
+ // const res = await service.getRoutes(paginationParams);
75
+
76
+ // expect(mockPrismaService.createInsensitiveSearch).toHaveBeenCalledWith(
77
+ // ['url', 'method'],
78
+ // paginationParams,
79
+ // );
80
+ // expect(mockPaginationService.paginate).toHaveBeenCalledWith(
81
+ // mockPrismaService.route,
82
+ // paginationParams,
83
+ // { where: { OR: [] } },
84
+ // );
85
+ // expect(res).toEqual(result);
86
+ // });
87
+ // });
88
+ // */
89
+ // /*
90
+ // describe('getRouteById', () => {
91
+ // it('should return a route by ID', async () => {
92
+ // const routeId = 1;
93
+ // const route = { id: routeId, url: '/test', method: 'GET' };
94
+
95
+ // mockPrismaService.route.findUnique.mockResolvedValue(route);
96
+
97
+ // const res = await service.getRouteById(routeId);
98
+
99
+ // expect(mockPrismaService.route.findUnique).toHaveBeenCalledWith({
100
+ // where: { id: routeId },
101
+ // });
102
+ // expect(res).toEqual(route);
103
+ // });
104
+ // });*/
105
+
106
+ // describe('create', () => {
107
+ // it('should create a new route', async () => {
108
+ // const createDto: CreateDTO = { url: '/test', method: 'GET' };
109
+ // const route = { id: 1, ...createDto };
110
+
111
+ // mockPrismaService.route.create.mockResolvedValue(route);
112
+
113
+ // const res = await service.create(createDto);
114
+
115
+ // expect(mockPrismaService.route.create).toHaveBeenCalledWith({
116
+ // data: createDto,
117
+ // });
118
+ // expect(res).toEqual(route);
119
+ // });
120
+ // });
121
+
122
+ // describe('update', () => {
123
+ // it('should update a route', async () => {
124
+ // const updateDto: UpdateDTO = { url: '/updated', method: 'POST' };
125
+ // const routeId = 1;
126
+ // const updatedRoute = { id: routeId, ...updateDto };
127
+
128
+ // mockPrismaService.route.update.mockResolvedValue(updatedRoute);
129
+
130
+ // const res = await service.update({ id: routeId, data: updateDto });
131
+
132
+ // expect(mockPrismaService.route.update).toHaveBeenCalledWith({
133
+ // where: { id: routeId },
134
+ // data: updateDto,
135
+ // });
136
+ // expect(res).toEqual(updatedRoute);
137
+ // });
138
+ // });
139
+
140
+ // describe('delete', () => {
141
+ // it('should delete route by ids', async () => {
142
+ // const deleteDto: DeleteDTO = { ids: [1, 2] };
143
+ // const result = { count: 2 };
144
+
145
+ // mockPrismaService.route.deleteMany.mockResolvedValue(result);
146
+
147
+ // const res = await service.delete(deleteDto);
148
+
149
+ // expect(mockPrismaService.route.deleteMany).toHaveBeenCalledWith({
150
+ // where: { id: { in: deleteDto.ids } },
151
+ // });
152
+ // expect(res).toEqual(result);
153
+ // });
154
+ // });
155
+
156
+ // describe('updateRoles', () => {
157
+ // it('should update role for a route', async () => {
158
+ // const routeId = 1;
159
+ // const updateIdsDto: UpdateIdsDTO = { ids: [1, 2] };
160
+ // const result = { count: 2 };
161
+
162
+ // mockPrismaService.role_route.deleteMany.mockResolvedValue({});
163
+ // mockPrismaService.role_route.createMany.mockResolvedValue(result);
164
+
165
+ // const res = await service.updateRoles(routeId, updateIdsDto);
166
+
167
+ // expect(mockPrismaService.role_route.deleteMany).toHaveBeenCalledWith({
168
+ // where: { route_id: routeId },
169
+ // });
170
+ // expect(mockPrismaService.role_route.createMany).toHaveBeenCalledWith({
171
+ // data: updateIdsDto.ids.map((roleId) => ({
172
+ // role_id: roleId,
173
+ // route_id: routeId,
174
+ // })),
175
+ // skipDuplicates: true,
176
+ // });
177
+ // expect(res).toEqual(result);
178
+ // });
179
+ // });
180
+
181
+ // describe('updateScreens', () => {
182
+ // it('should update screens for a route', async () => {
183
+ // const routeId = 1;
184
+ // const updateIdsDto: UpdateIdsDTO = { ids: [1, 2] };
185
+ // const result = { count: 2 };
186
+
187
+ // mockPrismaService.route_screens.deleteMany.mockResolvedValue({});
188
+ // mockPrismaService.route_screens.createMany.mockResolvedValue(result);
189
+
190
+ // const res = await service.updateScreens(routeId, updateIdsDto);
191
+
192
+ // expect(mockPrismaService.route_screens.deleteMany).toHaveBeenCalledWith({
193
+ // where: { route_id: routeId },
194
+ // });
195
+ // expect(mockPrismaService.route_screens.createMany).toHaveBeenCalledWith({
196
+ // data: updateIdsDto.ids.map((screenId) => ({
197
+ // screen_id: screenId,
198
+ // route_id: routeId,
199
+ // })),
200
+ // skipDuplicates: true,
201
+ // });
202
+ // expect(res).toEqual(result);
203
+ // });
204
+ // });
205
+
206
+ // describe('listRoles', () => {
207
+ // it('should call paginate method with correct parameters', async () => {
208
+ // const locale = 'en';
209
+ // const routeId = 1;
210
+ // const paginationParams: PaginationDTO = {
211
+ // page: 1,
212
+ // pageSize: 10,
213
+ // search: '',
214
+ // sortField: '',
215
+ // sortOrder: PageOrderDirection.Asc,
216
+ // fields: '',
217
+ // };
218
+
219
+ // paginationService.paginate = jest.fn().mockResolvedValue({
220
+ // data: [],
221
+ // total: 0,
222
+ // });
223
+
224
+ // await service.listRoles(locale, routeId, paginationParams);
225
+
226
+ // expect(paginationService.paginate).toHaveBeenCalledWith(
227
+ // prismaService.role,
228
+ // paginationParams,
229
+ // {
230
+ // include: {
231
+ // role_locale: {
232
+ // where: {
233
+ // locale: { code: locale },
234
+ // },
235
+ // select: {
236
+ // name: true,
237
+ // description: true,
238
+ // },
239
+ // },
240
+ // role_route: {
241
+ // where: { route_id: routeId },
242
+ // select: {
243
+ // route_id: true,
244
+ // role_id: true,
245
+ // },
246
+ // },
247
+ // },
248
+ // },
249
+ // 'role_locale',
250
+ // );
251
+ // });
252
+ // });
253
+
254
+ // describe('listScreens', () => {
255
+ // it('should call paginate method with correct parameters', async () => {
256
+ // const locale = 'en';
257
+ // const routeId = 1;
258
+ // const paginationParams: PaginationDTO = {
259
+ // page: 1,
260
+ // pageSize: 10,
261
+ // search: '',
262
+ // sortField: '',
263
+ // sortOrder: PageOrderDirection.Asc,
264
+ // fields: '',
265
+ // };
266
+
267
+ // paginationService.paginate = jest.fn().mockResolvedValue({
268
+ // data: [],
269
+ // total: 0,
270
+ // });
271
+
272
+ // await service.listScreens(locale, routeId, paginationParams);
273
+
274
+ // expect(paginationService.paginate).toHaveBeenCalledWith(
275
+ // prismaService.screens,
276
+ // paginationParams,
277
+ // {
278
+ // include: {
279
+ // screen_locale: {
280
+ // where: {
281
+ // locale: { code: locale },
282
+ // },
283
+ // select: {
284
+ // name: true,
285
+ // },
286
+ // },
287
+ // route_screens: {
288
+ // where: { route_id: routeId },
289
+ // select: {
290
+ // route_id: true,
291
+ // screen_id: true,
292
+ // },
293
+ // },
294
+ // },
295
+ // },
296
+ // 'screen_locale',
297
+ // );
298
+ // });
299
+ // });
300
+ // });