@hed-hog/operations 0.0.300 → 0.0.301

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 (73) hide show
  1. package/dist/operations.controller.d.ts +713 -31
  2. package/dist/operations.controller.d.ts.map +1 -1
  3. package/dist/operations.controller.js +157 -0
  4. package/dist/operations.controller.js.map +1 -1
  5. package/dist/operations.module.d.ts.map +1 -1
  6. package/dist/operations.module.js +5 -1
  7. package/dist/operations.module.js.map +1 -1
  8. package/dist/operations.proposal.subscriber.d.ts +11 -0
  9. package/dist/operations.proposal.subscriber.d.ts.map +1 -0
  10. package/dist/operations.proposal.subscriber.js +80 -0
  11. package/dist/operations.proposal.subscriber.js.map +1 -0
  12. package/dist/operations.proposal.subscriber.spec.d.ts +2 -0
  13. package/dist/operations.proposal.subscriber.spec.d.ts.map +1 -0
  14. package/dist/operations.proposal.subscriber.spec.js +88 -0
  15. package/dist/operations.proposal.subscriber.spec.js.map +1 -0
  16. package/dist/operations.service.d.ts +490 -46
  17. package/dist/operations.service.d.ts.map +1 -1
  18. package/dist/operations.service.js +2442 -119
  19. package/dist/operations.service.js.map +1 -1
  20. package/dist/operations.service.spec.d.ts +2 -0
  21. package/dist/operations.service.spec.d.ts.map +1 -0
  22. package/dist/operations.service.spec.js +159 -0
  23. package/dist/operations.service.spec.js.map +1 -0
  24. package/hedhog/data/menu.yaml +34 -0
  25. package/hedhog/data/role_route.yaml +39 -0
  26. package/hedhog/data/route.yaml +130 -0
  27. package/hedhog/frontend/app/_components/collaborator-details-screen.tsx.ejs +8 -6
  28. package/hedhog/frontend/app/_components/collaborator-form-screen.tsx.ejs +1163 -327
  29. package/hedhog/frontend/app/_components/collaborator-select-with-create.tsx.ejs +256 -0
  30. package/hedhog/frontend/app/_components/contract-content-editor.tsx.ejs +258 -0
  31. package/hedhog/frontend/app/_components/contract-creation-wizard.tsx.ejs +631 -0
  32. package/hedhog/frontend/app/_components/contract-details-screen.tsx.ejs +353 -27
  33. package/hedhog/frontend/app/_components/contract-form-screen.tsx.ejs +1926 -87
  34. package/hedhog/frontend/app/_components/contract-template-form-screen.tsx.ejs +526 -0
  35. package/hedhog/frontend/app/_components/contract-template-select-with-create.tsx.ejs +247 -0
  36. package/hedhog/frontend/app/_components/contract-wizard-sheet.tsx.ejs +3520 -0
  37. package/hedhog/frontend/app/_components/department-select-with-create.tsx.ejs +370 -0
  38. package/hedhog/frontend/app/_components/person-select-with-create.tsx.ejs +826 -0
  39. package/hedhog/frontend/app/_components/project-form-screen.tsx.ejs +1251 -364
  40. package/hedhog/frontend/app/_components/section-card.tsx.ejs +48 -13
  41. package/hedhog/frontend/app/_lib/api.ts.ejs +2 -5
  42. package/hedhog/frontend/app/_lib/types.ts.ejs +76 -33
  43. package/hedhog/frontend/app/_lib/utils/format.ts.ejs +85 -8
  44. package/hedhog/frontend/app/approvals/page.tsx.ejs +90 -54
  45. package/hedhog/frontend/app/collaborators/[id]/edit/page.tsx.ejs +2 -2
  46. package/hedhog/frontend/app/collaborators/[id]/page.tsx.ejs +2 -2
  47. package/hedhog/frontend/app/collaborators/page.tsx.ejs +597 -140
  48. package/hedhog/frontend/app/contracts/[id]/edit/page.tsx.ejs +2 -2
  49. package/hedhog/frontend/app/contracts/[id]/page.tsx.ejs +2 -2
  50. package/hedhog/frontend/app/contracts/page.tsx.ejs +941 -262
  51. package/hedhog/frontend/app/contracts/templates/page.tsx.ejs +384 -0
  52. package/hedhog/frontend/app/departments/page.tsx.ejs +442 -0
  53. package/hedhog/frontend/app/page.tsx.ejs +36 -12
  54. package/hedhog/frontend/app/projects/[id]/edit/page.tsx.ejs +2 -2
  55. package/hedhog/frontend/app/projects/new/page.tsx.ejs +2 -2
  56. package/hedhog/frontend/app/projects/page.tsx.ejs +264 -102
  57. package/hedhog/frontend/app/schedule-adjustments/page.tsx.ejs +50 -28
  58. package/hedhog/frontend/app/time-off/page.tsx.ejs +57 -31
  59. package/hedhog/frontend/app/timesheets/page.tsx.ejs +85 -42
  60. package/hedhog/frontend/messages/en.json +473 -12
  61. package/hedhog/frontend/messages/pt.json +528 -66
  62. package/hedhog/table/operations_collaborator.yaml +20 -0
  63. package/hedhog/table/operations_contract.yaml +22 -1
  64. package/hedhog/table/operations_contract_document.yaml +33 -16
  65. package/hedhog/table/operations_contract_template.yaml +58 -0
  66. package/hedhog/table/operations_department.yaml +24 -0
  67. package/package.json +6 -4
  68. package/src/operations.controller.ts +122 -0
  69. package/src/operations.module.ts +6 -2
  70. package/src/operations.proposal.subscriber.spec.ts +121 -0
  71. package/src/operations.proposal.subscriber.ts +86 -0
  72. package/src/operations.service.spec.ts +210 -0
  73. package/src/operations.service.ts +3934 -212
@@ -96,6 +96,23 @@
96
96
  - where:
97
97
  slug: admin-operations-director
98
98
 
99
+ - menu_id:
100
+ where:
101
+ slug: /operations
102
+ icon: file-stack
103
+ url: /operations/contracts/templates
104
+ name:
105
+ en: Contract Templates
106
+ pt: Templates de Contrato
107
+ slug: /operations/contracts/templates
108
+ order: 1141
109
+ relations:
110
+ role:
111
+ - where:
112
+ slug: admin
113
+ - where:
114
+ slug: admin-operations-director
115
+
99
116
  - menu_id:
100
117
  where:
101
118
  slug: /operations
@@ -196,3 +213,20 @@
196
213
  slug: admin-operations-supervisor
197
214
  - where:
198
215
  slug: admin-operations-director
216
+
217
+ - menu_id:
218
+ where:
219
+ slug: /operations
220
+ icon: building-2
221
+ url: /operations/departments
222
+ name:
223
+ en: Departments
224
+ pt: Departamentos
225
+ slug: /operations/departments
226
+ order: 120
227
+ relations:
228
+ role:
229
+ - where:
230
+ slug: admin
231
+ - where:
232
+ slug: admin-operations-director
@@ -0,0 +1,39 @@
1
+ - role_id:
2
+ where:
3
+ slug: admin-operations-director
4
+ route_id:
5
+ where:
6
+ url: /person
7
+ method: GET
8
+
9
+ - role_id:
10
+ where:
11
+ slug: admin-operations-director
12
+ route_id:
13
+ where:
14
+ url: /person
15
+ method: POST
16
+
17
+ - role_id:
18
+ where:
19
+ slug: admin-operations-director
20
+ route_id:
21
+ where:
22
+ url: /person/:id
23
+ method: PATCH
24
+
25
+ - role_id:
26
+ where:
27
+ slug: admin-operations-director
28
+ route_id:
29
+ where:
30
+ url: /person-contact-type
31
+ method: GET
32
+
33
+ - role_id:
34
+ where:
35
+ slug: admin-operations-director
36
+ route_id:
37
+ where:
38
+ url: /person-document-type
39
+ method: GET
@@ -79,6 +79,37 @@
79
79
  - where:
80
80
  slug: admin-operations-director
81
81
 
82
+ - url: /operations/departments
83
+ method: GET
84
+ relations:
85
+ role:
86
+ - where:
87
+ slug: admin
88
+ - where:
89
+ slug: admin-operations-collaborator
90
+ - where:
91
+ slug: admin-operations-supervisor
92
+ - where:
93
+ slug: admin-operations-director
94
+
95
+ - url: /operations/departments
96
+ method: POST
97
+ relations:
98
+ role:
99
+ - where:
100
+ slug: admin
101
+ - where:
102
+ slug: admin-operations-director
103
+
104
+ - url: /operations/departments/:id
105
+ method: PATCH
106
+ relations:
107
+ role:
108
+ - where:
109
+ slug: admin
110
+ - where:
111
+ slug: admin-operations-director
112
+
82
113
  - url: /operations/projects
83
114
  method: GET
84
115
  relations:
@@ -123,6 +154,42 @@
123
154
  - where:
124
155
  slug: admin-operations-director
125
156
 
157
+ - url: /operations/contract-templates
158
+ method: GET
159
+ relations:
160
+ role:
161
+ - where:
162
+ slug: admin
163
+ - where:
164
+ slug: admin-operations-director
165
+
166
+ - url: /operations/contract-templates
167
+ method: POST
168
+ relations:
169
+ role:
170
+ - where:
171
+ slug: admin
172
+ - where:
173
+ slug: admin-operations-director
174
+
175
+ - url: /operations/contract-templates/:id
176
+ method: GET
177
+ relations:
178
+ role:
179
+ - where:
180
+ slug: admin
181
+ - where:
182
+ slug: admin-operations-director
183
+
184
+ - url: /operations/contract-templates/:id
185
+ method: PATCH
186
+ relations:
187
+ role:
188
+ - where:
189
+ slug: admin
190
+ - where:
191
+ slug: admin-operations-director
192
+
126
193
  - url: /operations/contracts
127
194
  method: GET
128
195
  relations:
@@ -145,6 +212,51 @@
145
212
  - where:
146
213
  slug: admin-operations-director
147
214
 
215
+ - url: /operations/contracts/drafts
216
+ method: POST
217
+ relations:
218
+ role:
219
+ - where:
220
+ slug: admin
221
+ - where:
222
+ slug: admin-operations-director
223
+
224
+ - url: /operations/contracts/extract-draft
225
+ method: POST
226
+ relations:
227
+ role:
228
+ - where:
229
+ slug: admin
230
+ - where:
231
+ slug: admin-operations-director
232
+
233
+ - url: /operations/contracts/:id/extract-source
234
+ method: POST
235
+ relations:
236
+ role:
237
+ - where:
238
+ slug: admin
239
+ - where:
240
+ slug: admin-operations-director
241
+
242
+ - url: /operations/contracts/:id/generate-content
243
+ method: POST
244
+ relations:
245
+ role:
246
+ - where:
247
+ slug: admin
248
+ - where:
249
+ slug: admin-operations-director
250
+
251
+ - url: /operations/contracts/:id/legal-review
252
+ method: POST
253
+ relations:
254
+ role:
255
+ - where:
256
+ slug: admin
257
+ - where:
258
+ slug: admin-operations-director
259
+
148
260
  - url: /operations/contracts/:id
149
261
  method: GET
150
262
  relations:
@@ -167,6 +279,24 @@
167
279
  - where:
168
280
  slug: admin-operations-director
169
281
 
282
+ - url: /operations/contracts/:id
283
+ method: DELETE
284
+ relations:
285
+ role:
286
+ - where:
287
+ slug: admin
288
+ - where:
289
+ slug: admin-operations-director
290
+
291
+ - url: /operations/contracts/:id/generate-pdf
292
+ method: POST
293
+ relations:
294
+ role:
295
+ - where:
296
+ slug: admin
297
+ - where:
298
+ slug: admin-operations-director
299
+
170
300
  - url: /operations/timesheets
171
301
  method: GET
172
302
  relations:
@@ -177,12 +177,14 @@ export function CollaboratorDetailsScreen({
177
177
  <div
178
178
  key={contract.id}
179
179
  className="flex items-center justify-between rounded-lg border px-4 py-3"
180
- >
181
- <div>
182
- <div className="font-medium">{contract.name}</div>
183
- <div className="text-sm text-muted-foreground">
184
- {contract.code} • {formatEnumLabel(contract.contractCategory)}
185
- </div>
180
+ >
181
+ <div>
182
+ <div className="font-medium">
183
+ {contract.name || contract.code}
184
+ </div>
185
+ <div className="text-sm text-muted-foreground">
186
+ {contract.code} • {formatEnumLabel(contract.contractCategory)}
187
+ </div>
186
188
  </div>
187
189
  <div className="flex items-center gap-2">
188
190
  <StatusBadge