@deepintel-ltd/buildlink-api-contracts 0.2.23

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 (278) hide show
  1. package/README.md +27 -0
  2. package/contracts/auth.d.ts +3641 -0
  3. package/contracts/auth.d.ts.map +1 -0
  4. package/contracts/auth.js +266 -0
  5. package/contracts/auth.js.map +1 -0
  6. package/contracts/billing.d.ts +2167 -0
  7. package/contracts/billing.d.ts.map +1 -0
  8. package/contracts/billing.js +55 -0
  9. package/contracts/billing.js.map +1 -0
  10. package/contracts/boq.d.ts +1214 -0
  11. package/contracts/boq.d.ts.map +1 -0
  12. package/contracts/boq.js +31 -0
  13. package/contracts/boq.js.map +1 -0
  14. package/contracts/budget.d.ts +10677 -0
  15. package/contracts/budget.d.ts.map +1 -0
  16. package/contracts/budget.js +599 -0
  17. package/contracts/budget.js.map +1 -0
  18. package/contracts/commercial.d.ts +1475 -0
  19. package/contracts/commercial.d.ts.map +1 -0
  20. package/contracts/commercial.js +40 -0
  21. package/contracts/commercial.js.map +1 -0
  22. package/contracts/communication.d.ts +5389 -0
  23. package/contracts/communication.d.ts.map +1 -0
  24. package/contracts/communication.js +255 -0
  25. package/contracts/communication.js.map +1 -0
  26. package/contracts/contractor-ledger.d.ts +1293 -0
  27. package/contracts/contractor-ledger.d.ts.map +1 -0
  28. package/contracts/contractor-ledger.js +41 -0
  29. package/contracts/contractor-ledger.js.map +1 -0
  30. package/contracts/daily-logs.d.ts +9132 -0
  31. package/contracts/daily-logs.d.ts.map +1 -0
  32. package/contracts/daily-logs.js +188 -0
  33. package/contracts/daily-logs.js.map +1 -0
  34. package/contracts/deficiencies.d.ts +11786 -0
  35. package/contracts/deficiencies.d.ts.map +1 -0
  36. package/contracts/deficiencies.js +312 -0
  37. package/contracts/deficiencies.js.map +1 -0
  38. package/contracts/directory.d.ts +3116 -0
  39. package/contracts/directory.d.ts.map +1 -0
  40. package/contracts/directory.js +117 -0
  41. package/contracts/directory.js.map +1 -0
  42. package/contracts/documents.d.ts +4944 -0
  43. package/contracts/documents.d.ts.map +1 -0
  44. package/contracts/documents.js +251 -0
  45. package/contracts/documents.js.map +1 -0
  46. package/contracts/drawings.d.ts +10552 -0
  47. package/contracts/drawings.d.ts.map +1 -0
  48. package/contracts/drawings.js +321 -0
  49. package/contracts/drawings.js.map +1 -0
  50. package/contracts/hub.d.ts +1174 -0
  51. package/contracts/hub.d.ts.map +1 -0
  52. package/contracts/hub.js +42 -0
  53. package/contracts/hub.js.map +1 -0
  54. package/contracts/index.d.ts +128 -0
  55. package/contracts/index.d.ts.map +1 -0
  56. package/contracts/index.js +119 -0
  57. package/contracts/index.js.map +1 -0
  58. package/contracts/integrations.d.ts +4163 -0
  59. package/contracts/integrations.d.ts.map +1 -0
  60. package/contracts/integrations.js +326 -0
  61. package/contracts/integrations.js.map +1 -0
  62. package/contracts/maps.d.ts +4911 -0
  63. package/contracts/maps.d.ts.map +1 -0
  64. package/contracts/maps.js +276 -0
  65. package/contracts/maps.js.map +1 -0
  66. package/contracts/meetings.d.ts +4194 -0
  67. package/contracts/meetings.d.ts.map +1 -0
  68. package/contracts/meetings.js +115 -0
  69. package/contracts/meetings.js.map +1 -0
  70. package/contracts/monitoring.d.ts +2749 -0
  71. package/contracts/monitoring.d.ts.map +1 -0
  72. package/contracts/monitoring.js +289 -0
  73. package/contracts/monitoring.js.map +1 -0
  74. package/contracts/packages.d.ts +1470 -0
  75. package/contracts/packages.d.ts.map +1 -0
  76. package/contracts/packages.js +74 -0
  77. package/contracts/packages.js.map +1 -0
  78. package/contracts/projects.d.ts +6281 -0
  79. package/contracts/projects.d.ts.map +1 -0
  80. package/contracts/projects.js +448 -0
  81. package/contracts/projects.js.map +1 -0
  82. package/contracts/proof.d.ts +962 -0
  83. package/contracts/proof.d.ts.map +1 -0
  84. package/contracts/proof.js +34 -0
  85. package/contracts/proof.js.map +1 -0
  86. package/contracts/qaqc.d.ts +1184 -0
  87. package/contracts/qaqc.d.ts.map +1 -0
  88. package/contracts/qaqc.js +35 -0
  89. package/contracts/qaqc.js.map +1 -0
  90. package/contracts/rbac.d.ts +5227 -0
  91. package/contracts/rbac.d.ts.map +1 -0
  92. package/contracts/rbac.js +357 -0
  93. package/contracts/rbac.js.map +1 -0
  94. package/contracts/reports.d.ts +8468 -0
  95. package/contracts/reports.d.ts.map +1 -0
  96. package/contracts/reports.js +377 -0
  97. package/contracts/reports.js.map +1 -0
  98. package/contracts/resources.d.ts +15870 -0
  99. package/contracts/resources.d.ts.map +1 -0
  100. package/contracts/resources.js +869 -0
  101. package/contracts/resources.js.map +1 -0
  102. package/contracts/rfi-submittal.d.ts +2545 -0
  103. package/contracts/rfi-submittal.d.ts.map +1 -0
  104. package/contracts/rfi-submittal.js +159 -0
  105. package/contracts/rfi-submittal.js.map +1 -0
  106. package/contracts/safety.d.ts +7162 -0
  107. package/contracts/safety.d.ts.map +1 -0
  108. package/contracts/safety.js +519 -0
  109. package/contracts/safety.js.map +1 -0
  110. package/contracts/schedule.d.ts +9456 -0
  111. package/contracts/schedule.d.ts.map +1 -0
  112. package/contracts/schedule.js +460 -0
  113. package/contracts/schedule.js.map +1 -0
  114. package/contracts/spec-equal.d.ts +841 -0
  115. package/contracts/spec-equal.d.ts.map +1 -0
  116. package/contracts/spec-equal.js +28 -0
  117. package/contracts/spec-equal.js.map +1 -0
  118. package/contracts/specifications.d.ts +15478 -0
  119. package/contracts/specifications.d.ts.map +1 -0
  120. package/contracts/specifications.js +521 -0
  121. package/contracts/specifications.js.map +1 -0
  122. package/contracts/tasks.d.ts +11037 -0
  123. package/contracts/tasks.d.ts.map +1 -0
  124. package/contracts/tasks.js +693 -0
  125. package/contracts/tasks.js.map +1 -0
  126. package/contracts/timecards.d.ts +3130 -0
  127. package/contracts/timecards.d.ts.map +1 -0
  128. package/contracts/timecards.js +133 -0
  129. package/contracts/timecards.js.map +1 -0
  130. package/contracts/transmittals.d.ts +3921 -0
  131. package/contracts/transmittals.d.ts.map +1 -0
  132. package/contracts/transmittals.js +156 -0
  133. package/contracts/transmittals.js.map +1 -0
  134. package/contracts/valuations.d.ts +3266 -0
  135. package/contracts/valuations.d.ts.map +1 -0
  136. package/contracts/valuations.js +116 -0
  137. package/contracts/valuations.js.map +1 -0
  138. package/package.json +216 -0
  139. package/schemas/auth.d.ts +449 -0
  140. package/schemas/auth.d.ts.map +1 -0
  141. package/schemas/auth.js +103 -0
  142. package/schemas/auth.js.map +1 -0
  143. package/schemas/billing.d.ts +710 -0
  144. package/schemas/billing.d.ts.map +1 -0
  145. package/schemas/billing.js +82 -0
  146. package/schemas/billing.js.map +1 -0
  147. package/schemas/boq.d.ts +385 -0
  148. package/schemas/boq.d.ts.map +1 -0
  149. package/schemas/boq.js +49 -0
  150. package/schemas/boq.js.map +1 -0
  151. package/schemas/budget.d.ts +737 -0
  152. package/schemas/budget.d.ts.map +1 -0
  153. package/schemas/budget.js +272 -0
  154. package/schemas/budget.js.map +1 -0
  155. package/schemas/commercial.d.ts +358 -0
  156. package/schemas/commercial.d.ts.map +1 -0
  157. package/schemas/commercial.js +36 -0
  158. package/schemas/commercial.js.map +1 -0
  159. package/schemas/common.d.ts +865 -0
  160. package/schemas/common.d.ts.map +1 -0
  161. package/schemas/common.js +193 -0
  162. package/schemas/common.js.map +1 -0
  163. package/schemas/communication.d.ts +884 -0
  164. package/schemas/communication.d.ts.map +1 -0
  165. package/schemas/communication.js +245 -0
  166. package/schemas/communication.js.map +1 -0
  167. package/schemas/contractor-ledger.d.ts +364 -0
  168. package/schemas/contractor-ledger.d.ts.map +1 -0
  169. package/schemas/contractor-ledger.js +36 -0
  170. package/schemas/contractor-ledger.js.map +1 -0
  171. package/schemas/cursor-pagination.d.ts +258 -0
  172. package/schemas/cursor-pagination.d.ts.map +1 -0
  173. package/schemas/cursor-pagination.js +84 -0
  174. package/schemas/cursor-pagination.js.map +1 -0
  175. package/schemas/daily-logs.d.ts +2339 -0
  176. package/schemas/daily-logs.d.ts.map +1 -0
  177. package/schemas/daily-logs.js +235 -0
  178. package/schemas/daily-logs.js.map +1 -0
  179. package/schemas/deficiencies.d.ts +2496 -0
  180. package/schemas/deficiencies.d.ts.map +1 -0
  181. package/schemas/deficiencies.js +338 -0
  182. package/schemas/deficiencies.js.map +1 -0
  183. package/schemas/directory.d.ts +783 -0
  184. package/schemas/directory.d.ts.map +1 -0
  185. package/schemas/directory.js +122 -0
  186. package/schemas/directory.js.map +1 -0
  187. package/schemas/documents.d.ts +202 -0
  188. package/schemas/documents.d.ts.map +1 -0
  189. package/schemas/documents.js +76 -0
  190. package/schemas/documents.js.map +1 -0
  191. package/schemas/drawings.d.ts +2042 -0
  192. package/schemas/drawings.d.ts.map +1 -0
  193. package/schemas/drawings.js +350 -0
  194. package/schemas/drawings.js.map +1 -0
  195. package/schemas/hub.d.ts +288 -0
  196. package/schemas/hub.d.ts.map +1 -0
  197. package/schemas/hub.js +32 -0
  198. package/schemas/hub.js.map +1 -0
  199. package/schemas/integrations.d.ts +508 -0
  200. package/schemas/integrations.d.ts.map +1 -0
  201. package/schemas/integrations.js +119 -0
  202. package/schemas/integrations.js.map +1 -0
  203. package/schemas/maps.d.ts +793 -0
  204. package/schemas/maps.d.ts.map +1 -0
  205. package/schemas/maps.js +118 -0
  206. package/schemas/maps.js.map +1 -0
  207. package/schemas/meetings.d.ts +888 -0
  208. package/schemas/meetings.d.ts.map +1 -0
  209. package/schemas/meetings.js +138 -0
  210. package/schemas/meetings.js.map +1 -0
  211. package/schemas/packages.d.ts +236 -0
  212. package/schemas/packages.d.ts.map +1 -0
  213. package/schemas/packages.js +53 -0
  214. package/schemas/packages.js.map +1 -0
  215. package/schemas/projects.d.ts +306 -0
  216. package/schemas/projects.d.ts.map +1 -0
  217. package/schemas/projects.js +92 -0
  218. package/schemas/projects.js.map +1 -0
  219. package/schemas/proof.d.ts +210 -0
  220. package/schemas/proof.d.ts.map +1 -0
  221. package/schemas/proof.js +26 -0
  222. package/schemas/proof.js.map +1 -0
  223. package/schemas/qaqc.d.ts +235 -0
  224. package/schemas/qaqc.d.ts.map +1 -0
  225. package/schemas/qaqc.js +47 -0
  226. package/schemas/qaqc.js.map +1 -0
  227. package/schemas/rbac.d.ts +730 -0
  228. package/schemas/rbac.d.ts.map +1 -0
  229. package/schemas/rbac.js +230 -0
  230. package/schemas/rbac.js.map +1 -0
  231. package/schemas/reports.d.ts +5729 -0
  232. package/schemas/reports.d.ts.map +1 -0
  233. package/schemas/reports.js +589 -0
  234. package/schemas/reports.js.map +1 -0
  235. package/schemas/resources.d.ts +5190 -0
  236. package/schemas/resources.d.ts.map +1 -0
  237. package/schemas/resources.js +678 -0
  238. package/schemas/resources.js.map +1 -0
  239. package/schemas/rfi.d.ts +877 -0
  240. package/schemas/rfi.d.ts.map +1 -0
  241. package/schemas/rfi.js +84 -0
  242. package/schemas/rfi.js.map +1 -0
  243. package/schemas/safety.d.ts +1080 -0
  244. package/schemas/safety.d.ts.map +1 -0
  245. package/schemas/safety.js +237 -0
  246. package/schemas/safety.js.map +1 -0
  247. package/schemas/schedule.d.ts +4657 -0
  248. package/schemas/schedule.d.ts.map +1 -0
  249. package/schemas/schedule.js +441 -0
  250. package/schemas/schedule.js.map +1 -0
  251. package/schemas/spec-equal.d.ts +162 -0
  252. package/schemas/spec-equal.d.ts.map +1 -0
  253. package/schemas/spec-equal.js +29 -0
  254. package/schemas/spec-equal.js.map +1 -0
  255. package/schemas/specifications.d.ts +5241 -0
  256. package/schemas/specifications.d.ts.map +1 -0
  257. package/schemas/specifications.js +426 -0
  258. package/schemas/specifications.js.map +1 -0
  259. package/schemas/submittal.d.ts +867 -0
  260. package/schemas/submittal.d.ts.map +1 -0
  261. package/schemas/submittal.js +87 -0
  262. package/schemas/submittal.js.map +1 -0
  263. package/schemas/tasks.d.ts +610 -0
  264. package/schemas/tasks.d.ts.map +1 -0
  265. package/schemas/tasks.js +133 -0
  266. package/schemas/tasks.js.map +1 -0
  267. package/schemas/timecards.d.ts +618 -0
  268. package/schemas/timecards.d.ts.map +1 -0
  269. package/schemas/timecards.js +80 -0
  270. package/schemas/timecards.js.map +1 -0
  271. package/schemas/transmittals.d.ts +662 -0
  272. package/schemas/transmittals.d.ts.map +1 -0
  273. package/schemas/transmittals.js +132 -0
  274. package/schemas/transmittals.js.map +1 -0
  275. package/schemas/valuations.d.ts +713 -0
  276. package/schemas/valuations.d.ts.map +1 -0
  277. package/schemas/valuations.js +116 -0
  278. package/schemas/valuations.js.map +1 -0
@@ -0,0 +1,618 @@
1
+ import { z } from 'zod';
2
+ export declare const TimecardStatusSchema: z.ZodEnum<["DRAFT", "SUBMITTED", "APPROVED", "REJECTED", "PAID"]>;
3
+ export declare const TimecardEntrySchema: z.ZodObject<{
4
+ id: z.ZodString;
5
+ timecardId: z.ZodString;
6
+ date: z.ZodString;
7
+ startTime: z.ZodString;
8
+ endTime: z.ZodString;
9
+ breakDuration: z.ZodDefault<z.ZodNumber>;
10
+ projectId: z.ZodOptional<z.ZodString>;
11
+ taskId: z.ZodOptional<z.ZodString>;
12
+ activity: z.ZodString;
13
+ location: z.ZodOptional<z.ZodString>;
14
+ notes: z.ZodOptional<z.ZodString>;
15
+ hoursWorked: z.ZodNumber;
16
+ overtimeHours: z.ZodDefault<z.ZodNumber>;
17
+ createdAt: z.ZodString;
18
+ updatedAt: z.ZodString;
19
+ }, "strip", z.ZodTypeAny, {
20
+ id: string;
21
+ createdAt: string;
22
+ updatedAt: string;
23
+ date: string;
24
+ hoursWorked: number;
25
+ startTime: string;
26
+ endTime: string;
27
+ overtimeHours: number;
28
+ timecardId: string;
29
+ breakDuration: number;
30
+ activity: string;
31
+ projectId?: string | undefined;
32
+ notes?: string | undefined;
33
+ location?: string | undefined;
34
+ taskId?: string | undefined;
35
+ }, {
36
+ id: string;
37
+ createdAt: string;
38
+ updatedAt: string;
39
+ date: string;
40
+ hoursWorked: number;
41
+ startTime: string;
42
+ endTime: string;
43
+ timecardId: string;
44
+ activity: string;
45
+ projectId?: string | undefined;
46
+ notes?: string | undefined;
47
+ location?: string | undefined;
48
+ taskId?: string | undefined;
49
+ overtimeHours?: number | undefined;
50
+ breakDuration?: number | undefined;
51
+ }>;
52
+ export declare const TimecardSchema: z.ZodObject<{
53
+ id: z.ZodString;
54
+ userId: z.ZodString;
55
+ weekStartDate: z.ZodString;
56
+ weekEndDate: z.ZodString;
57
+ status: z.ZodDefault<z.ZodEnum<["DRAFT", "SUBMITTED", "APPROVED", "REJECTED", "PAID"]>>;
58
+ totalHours: z.ZodNumber;
59
+ regularHours: z.ZodNumber;
60
+ overtimeHours: z.ZodNumber;
61
+ entries: z.ZodArray<z.ZodObject<{
62
+ id: z.ZodString;
63
+ timecardId: z.ZodString;
64
+ date: z.ZodString;
65
+ startTime: z.ZodString;
66
+ endTime: z.ZodString;
67
+ breakDuration: z.ZodDefault<z.ZodNumber>;
68
+ projectId: z.ZodOptional<z.ZodString>;
69
+ taskId: z.ZodOptional<z.ZodString>;
70
+ activity: z.ZodString;
71
+ location: z.ZodOptional<z.ZodString>;
72
+ notes: z.ZodOptional<z.ZodString>;
73
+ hoursWorked: z.ZodNumber;
74
+ overtimeHours: z.ZodDefault<z.ZodNumber>;
75
+ createdAt: z.ZodString;
76
+ updatedAt: z.ZodString;
77
+ }, "strip", z.ZodTypeAny, {
78
+ id: string;
79
+ createdAt: string;
80
+ updatedAt: string;
81
+ date: string;
82
+ hoursWorked: number;
83
+ startTime: string;
84
+ endTime: string;
85
+ overtimeHours: number;
86
+ timecardId: string;
87
+ breakDuration: number;
88
+ activity: string;
89
+ projectId?: string | undefined;
90
+ notes?: string | undefined;
91
+ location?: string | undefined;
92
+ taskId?: string | undefined;
93
+ }, {
94
+ id: string;
95
+ createdAt: string;
96
+ updatedAt: string;
97
+ date: string;
98
+ hoursWorked: number;
99
+ startTime: string;
100
+ endTime: string;
101
+ timecardId: string;
102
+ activity: string;
103
+ projectId?: string | undefined;
104
+ notes?: string | undefined;
105
+ location?: string | undefined;
106
+ taskId?: string | undefined;
107
+ overtimeHours?: number | undefined;
108
+ breakDuration?: number | undefined;
109
+ }>, "many">;
110
+ submittedAt: z.ZodOptional<z.ZodString>;
111
+ approvedAt: z.ZodOptional<z.ZodString>;
112
+ approvedBy: z.ZodOptional<z.ZodString>;
113
+ rejectionReason: z.ZodOptional<z.ZodString>;
114
+ companyId: z.ZodString;
115
+ createdAt: z.ZodString;
116
+ updatedAt: z.ZodString;
117
+ }, "strip", z.ZodTypeAny, {
118
+ id: string;
119
+ createdAt: string;
120
+ updatedAt: string;
121
+ companyId: string;
122
+ entries: {
123
+ id: string;
124
+ createdAt: string;
125
+ updatedAt: string;
126
+ date: string;
127
+ hoursWorked: number;
128
+ startTime: string;
129
+ endTime: string;
130
+ overtimeHours: number;
131
+ timecardId: string;
132
+ breakDuration: number;
133
+ activity: string;
134
+ projectId?: string | undefined;
135
+ notes?: string | undefined;
136
+ location?: string | undefined;
137
+ taskId?: string | undefined;
138
+ }[];
139
+ status: "SUBMITTED" | "APPROVED" | "REJECTED" | "PAID" | "DRAFT";
140
+ userId: string;
141
+ totalHours: number;
142
+ overtimeHours: number;
143
+ weekStartDate: string;
144
+ weekEndDate: string;
145
+ regularHours: number;
146
+ approvedBy?: string | undefined;
147
+ approvedAt?: string | undefined;
148
+ submittedAt?: string | undefined;
149
+ rejectionReason?: string | undefined;
150
+ }, {
151
+ id: string;
152
+ createdAt: string;
153
+ updatedAt: string;
154
+ companyId: string;
155
+ entries: {
156
+ id: string;
157
+ createdAt: string;
158
+ updatedAt: string;
159
+ date: string;
160
+ hoursWorked: number;
161
+ startTime: string;
162
+ endTime: string;
163
+ timecardId: string;
164
+ activity: string;
165
+ projectId?: string | undefined;
166
+ notes?: string | undefined;
167
+ location?: string | undefined;
168
+ taskId?: string | undefined;
169
+ overtimeHours?: number | undefined;
170
+ breakDuration?: number | undefined;
171
+ }[];
172
+ userId: string;
173
+ totalHours: number;
174
+ overtimeHours: number;
175
+ weekStartDate: string;
176
+ weekEndDate: string;
177
+ regularHours: number;
178
+ status?: "SUBMITTED" | "APPROVED" | "REJECTED" | "PAID" | "DRAFT" | undefined;
179
+ approvedBy?: string | undefined;
180
+ approvedAt?: string | undefined;
181
+ submittedAt?: string | undefined;
182
+ rejectionReason?: string | undefined;
183
+ }>;
184
+ export declare const CreateTimecardEntryRequestSchema: z.ZodObject<{
185
+ date: z.ZodString;
186
+ startTime: z.ZodString;
187
+ endTime: z.ZodString;
188
+ breakDuration: z.ZodDefault<z.ZodNumber>;
189
+ projectId: z.ZodOptional<z.ZodString>;
190
+ taskId: z.ZodOptional<z.ZodString>;
191
+ activity: z.ZodString;
192
+ location: z.ZodOptional<z.ZodString>;
193
+ notes: z.ZodOptional<z.ZodString>;
194
+ }, "strip", z.ZodTypeAny, {
195
+ date: string;
196
+ startTime: string;
197
+ endTime: string;
198
+ breakDuration: number;
199
+ activity: string;
200
+ projectId?: string | undefined;
201
+ notes?: string | undefined;
202
+ location?: string | undefined;
203
+ taskId?: string | undefined;
204
+ }, {
205
+ date: string;
206
+ startTime: string;
207
+ endTime: string;
208
+ activity: string;
209
+ projectId?: string | undefined;
210
+ notes?: string | undefined;
211
+ location?: string | undefined;
212
+ taskId?: string | undefined;
213
+ breakDuration?: number | undefined;
214
+ }>;
215
+ export declare const CreateTimecardRequestSchema: z.ZodObject<{
216
+ userId: z.ZodString;
217
+ weekStartDate: z.ZodString;
218
+ entries: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
219
+ date: z.ZodString;
220
+ startTime: z.ZodString;
221
+ endTime: z.ZodString;
222
+ breakDuration: z.ZodDefault<z.ZodNumber>;
223
+ projectId: z.ZodOptional<z.ZodString>;
224
+ taskId: z.ZodOptional<z.ZodString>;
225
+ activity: z.ZodString;
226
+ location: z.ZodOptional<z.ZodString>;
227
+ notes: z.ZodOptional<z.ZodString>;
228
+ }, "strip", z.ZodTypeAny, {
229
+ date: string;
230
+ startTime: string;
231
+ endTime: string;
232
+ breakDuration: number;
233
+ activity: string;
234
+ projectId?: string | undefined;
235
+ notes?: string | undefined;
236
+ location?: string | undefined;
237
+ taskId?: string | undefined;
238
+ }, {
239
+ date: string;
240
+ startTime: string;
241
+ endTime: string;
242
+ activity: string;
243
+ projectId?: string | undefined;
244
+ notes?: string | undefined;
245
+ location?: string | undefined;
246
+ taskId?: string | undefined;
247
+ breakDuration?: number | undefined;
248
+ }>, "many">>>;
249
+ }, "strip", z.ZodTypeAny, {
250
+ entries: {
251
+ date: string;
252
+ startTime: string;
253
+ endTime: string;
254
+ breakDuration: number;
255
+ activity: string;
256
+ projectId?: string | undefined;
257
+ notes?: string | undefined;
258
+ location?: string | undefined;
259
+ taskId?: string | undefined;
260
+ }[];
261
+ userId: string;
262
+ weekStartDate: string;
263
+ }, {
264
+ userId: string;
265
+ weekStartDate: string;
266
+ entries?: {
267
+ date: string;
268
+ startTime: string;
269
+ endTime: string;
270
+ activity: string;
271
+ projectId?: string | undefined;
272
+ notes?: string | undefined;
273
+ location?: string | undefined;
274
+ taskId?: string | undefined;
275
+ breakDuration?: number | undefined;
276
+ }[] | undefined;
277
+ }>;
278
+ export declare const TimecardFiltersSchema: z.ZodObject<{
279
+ page: z.ZodDefault<z.ZodNumber>;
280
+ limit: z.ZodDefault<z.ZodNumber>;
281
+ userId: z.ZodOptional<z.ZodString>;
282
+ status: z.ZodOptional<z.ZodEnum<["DRAFT", "SUBMITTED", "APPROVED", "REJECTED", "PAID"]>>;
283
+ weekStartDate: z.ZodOptional<z.ZodString>;
284
+ companyId: z.ZodOptional<z.ZodString>;
285
+ }, "strip", z.ZodTypeAny, {
286
+ page: number;
287
+ limit: number;
288
+ companyId?: string | undefined;
289
+ status?: "SUBMITTED" | "APPROVED" | "REJECTED" | "PAID" | "DRAFT" | undefined;
290
+ userId?: string | undefined;
291
+ weekStartDate?: string | undefined;
292
+ }, {
293
+ companyId?: string | undefined;
294
+ status?: "SUBMITTED" | "APPROVED" | "REJECTED" | "PAID" | "DRAFT" | undefined;
295
+ page?: number | undefined;
296
+ limit?: number | undefined;
297
+ userId?: string | undefined;
298
+ weekStartDate?: string | undefined;
299
+ }>;
300
+ export declare const TimecardQueryParamsSchema: z.ZodObject<{
301
+ companyId: z.ZodOptional<z.ZodString>;
302
+ }, "strip", z.ZodTypeAny, {
303
+ companyId?: string | undefined;
304
+ }, {
305
+ companyId?: string | undefined;
306
+ }>;
307
+ export declare const TimecardResourceSchema: z.ZodObject<{
308
+ type: z.ZodLiteral<"timecards">;
309
+ id: z.ZodString;
310
+ attributes: z.ZodObject<{
311
+ id: z.ZodString;
312
+ userId: z.ZodString;
313
+ weekStartDate: z.ZodString;
314
+ weekEndDate: z.ZodString;
315
+ status: z.ZodDefault<z.ZodEnum<["DRAFT", "SUBMITTED", "APPROVED", "REJECTED", "PAID"]>>;
316
+ totalHours: z.ZodNumber;
317
+ regularHours: z.ZodNumber;
318
+ overtimeHours: z.ZodNumber;
319
+ entries: z.ZodArray<z.ZodObject<{
320
+ id: z.ZodString;
321
+ timecardId: z.ZodString;
322
+ date: z.ZodString;
323
+ startTime: z.ZodString;
324
+ endTime: z.ZodString;
325
+ breakDuration: z.ZodDefault<z.ZodNumber>;
326
+ projectId: z.ZodOptional<z.ZodString>;
327
+ taskId: z.ZodOptional<z.ZodString>;
328
+ activity: z.ZodString;
329
+ location: z.ZodOptional<z.ZodString>;
330
+ notes: z.ZodOptional<z.ZodString>;
331
+ hoursWorked: z.ZodNumber;
332
+ overtimeHours: z.ZodDefault<z.ZodNumber>;
333
+ createdAt: z.ZodString;
334
+ updatedAt: z.ZodString;
335
+ }, "strip", z.ZodTypeAny, {
336
+ id: string;
337
+ createdAt: string;
338
+ updatedAt: string;
339
+ date: string;
340
+ hoursWorked: number;
341
+ startTime: string;
342
+ endTime: string;
343
+ overtimeHours: number;
344
+ timecardId: string;
345
+ breakDuration: number;
346
+ activity: string;
347
+ projectId?: string | undefined;
348
+ notes?: string | undefined;
349
+ location?: string | undefined;
350
+ taskId?: string | undefined;
351
+ }, {
352
+ id: string;
353
+ createdAt: string;
354
+ updatedAt: string;
355
+ date: string;
356
+ hoursWorked: number;
357
+ startTime: string;
358
+ endTime: string;
359
+ timecardId: string;
360
+ activity: string;
361
+ projectId?: string | undefined;
362
+ notes?: string | undefined;
363
+ location?: string | undefined;
364
+ taskId?: string | undefined;
365
+ overtimeHours?: number | undefined;
366
+ breakDuration?: number | undefined;
367
+ }>, "many">;
368
+ submittedAt: z.ZodOptional<z.ZodString>;
369
+ approvedAt: z.ZodOptional<z.ZodString>;
370
+ approvedBy: z.ZodOptional<z.ZodString>;
371
+ rejectionReason: z.ZodOptional<z.ZodString>;
372
+ companyId: z.ZodString;
373
+ createdAt: z.ZodString;
374
+ updatedAt: z.ZodString;
375
+ }, "strip", z.ZodTypeAny, {
376
+ id: string;
377
+ createdAt: string;
378
+ updatedAt: string;
379
+ companyId: string;
380
+ entries: {
381
+ id: string;
382
+ createdAt: string;
383
+ updatedAt: string;
384
+ date: string;
385
+ hoursWorked: number;
386
+ startTime: string;
387
+ endTime: string;
388
+ overtimeHours: number;
389
+ timecardId: string;
390
+ breakDuration: number;
391
+ activity: string;
392
+ projectId?: string | undefined;
393
+ notes?: string | undefined;
394
+ location?: string | undefined;
395
+ taskId?: string | undefined;
396
+ }[];
397
+ status: "SUBMITTED" | "APPROVED" | "REJECTED" | "PAID" | "DRAFT";
398
+ userId: string;
399
+ totalHours: number;
400
+ overtimeHours: number;
401
+ weekStartDate: string;
402
+ weekEndDate: string;
403
+ regularHours: number;
404
+ approvedBy?: string | undefined;
405
+ approvedAt?: string | undefined;
406
+ submittedAt?: string | undefined;
407
+ rejectionReason?: string | undefined;
408
+ }, {
409
+ id: string;
410
+ createdAt: string;
411
+ updatedAt: string;
412
+ companyId: string;
413
+ entries: {
414
+ id: string;
415
+ createdAt: string;
416
+ updatedAt: string;
417
+ date: string;
418
+ hoursWorked: number;
419
+ startTime: string;
420
+ endTime: string;
421
+ timecardId: string;
422
+ activity: string;
423
+ projectId?: string | undefined;
424
+ notes?: string | undefined;
425
+ location?: string | undefined;
426
+ taskId?: string | undefined;
427
+ overtimeHours?: number | undefined;
428
+ breakDuration?: number | undefined;
429
+ }[];
430
+ userId: string;
431
+ totalHours: number;
432
+ overtimeHours: number;
433
+ weekStartDate: string;
434
+ weekEndDate: string;
435
+ regularHours: number;
436
+ status?: "SUBMITTED" | "APPROVED" | "REJECTED" | "PAID" | "DRAFT" | undefined;
437
+ approvedBy?: string | undefined;
438
+ approvedAt?: string | undefined;
439
+ submittedAt?: string | undefined;
440
+ rejectionReason?: string | undefined;
441
+ }>;
442
+ }, "strip", z.ZodTypeAny, {
443
+ id: string;
444
+ type: "timecards";
445
+ attributes: {
446
+ id: string;
447
+ createdAt: string;
448
+ updatedAt: string;
449
+ companyId: string;
450
+ entries: {
451
+ id: string;
452
+ createdAt: string;
453
+ updatedAt: string;
454
+ date: string;
455
+ hoursWorked: number;
456
+ startTime: string;
457
+ endTime: string;
458
+ overtimeHours: number;
459
+ timecardId: string;
460
+ breakDuration: number;
461
+ activity: string;
462
+ projectId?: string | undefined;
463
+ notes?: string | undefined;
464
+ location?: string | undefined;
465
+ taskId?: string | undefined;
466
+ }[];
467
+ status: "SUBMITTED" | "APPROVED" | "REJECTED" | "PAID" | "DRAFT";
468
+ userId: string;
469
+ totalHours: number;
470
+ overtimeHours: number;
471
+ weekStartDate: string;
472
+ weekEndDate: string;
473
+ regularHours: number;
474
+ approvedBy?: string | undefined;
475
+ approvedAt?: string | undefined;
476
+ submittedAt?: string | undefined;
477
+ rejectionReason?: string | undefined;
478
+ };
479
+ }, {
480
+ id: string;
481
+ type: "timecards";
482
+ attributes: {
483
+ id: string;
484
+ createdAt: string;
485
+ updatedAt: string;
486
+ companyId: string;
487
+ entries: {
488
+ id: string;
489
+ createdAt: string;
490
+ updatedAt: string;
491
+ date: string;
492
+ hoursWorked: number;
493
+ startTime: string;
494
+ endTime: string;
495
+ timecardId: string;
496
+ activity: string;
497
+ projectId?: string | undefined;
498
+ notes?: string | undefined;
499
+ location?: string | undefined;
500
+ taskId?: string | undefined;
501
+ overtimeHours?: number | undefined;
502
+ breakDuration?: number | undefined;
503
+ }[];
504
+ userId: string;
505
+ totalHours: number;
506
+ overtimeHours: number;
507
+ weekStartDate: string;
508
+ weekEndDate: string;
509
+ regularHours: number;
510
+ status?: "SUBMITTED" | "APPROVED" | "REJECTED" | "PAID" | "DRAFT" | undefined;
511
+ approvedBy?: string | undefined;
512
+ approvedAt?: string | undefined;
513
+ submittedAt?: string | undefined;
514
+ rejectionReason?: string | undefined;
515
+ };
516
+ }>;
517
+ export declare const TimecardEntryResourceSchema: z.ZodObject<{
518
+ type: z.ZodLiteral<"timecard-entries">;
519
+ id: z.ZodString;
520
+ attributes: z.ZodObject<{
521
+ id: z.ZodString;
522
+ timecardId: z.ZodString;
523
+ date: z.ZodString;
524
+ startTime: z.ZodString;
525
+ endTime: z.ZodString;
526
+ breakDuration: z.ZodDefault<z.ZodNumber>;
527
+ projectId: z.ZodOptional<z.ZodString>;
528
+ taskId: z.ZodOptional<z.ZodString>;
529
+ activity: z.ZodString;
530
+ location: z.ZodOptional<z.ZodString>;
531
+ notes: z.ZodOptional<z.ZodString>;
532
+ hoursWorked: z.ZodNumber;
533
+ overtimeHours: z.ZodDefault<z.ZodNumber>;
534
+ createdAt: z.ZodString;
535
+ updatedAt: z.ZodString;
536
+ }, "strip", z.ZodTypeAny, {
537
+ id: string;
538
+ createdAt: string;
539
+ updatedAt: string;
540
+ date: string;
541
+ hoursWorked: number;
542
+ startTime: string;
543
+ endTime: string;
544
+ overtimeHours: number;
545
+ timecardId: string;
546
+ breakDuration: number;
547
+ activity: string;
548
+ projectId?: string | undefined;
549
+ notes?: string | undefined;
550
+ location?: string | undefined;
551
+ taskId?: string | undefined;
552
+ }, {
553
+ id: string;
554
+ createdAt: string;
555
+ updatedAt: string;
556
+ date: string;
557
+ hoursWorked: number;
558
+ startTime: string;
559
+ endTime: string;
560
+ timecardId: string;
561
+ activity: string;
562
+ projectId?: string | undefined;
563
+ notes?: string | undefined;
564
+ location?: string | undefined;
565
+ taskId?: string | undefined;
566
+ overtimeHours?: number | undefined;
567
+ breakDuration?: number | undefined;
568
+ }>;
569
+ }, "strip", z.ZodTypeAny, {
570
+ id: string;
571
+ type: "timecard-entries";
572
+ attributes: {
573
+ id: string;
574
+ createdAt: string;
575
+ updatedAt: string;
576
+ date: string;
577
+ hoursWorked: number;
578
+ startTime: string;
579
+ endTime: string;
580
+ overtimeHours: number;
581
+ timecardId: string;
582
+ breakDuration: number;
583
+ activity: string;
584
+ projectId?: string | undefined;
585
+ notes?: string | undefined;
586
+ location?: string | undefined;
587
+ taskId?: string | undefined;
588
+ };
589
+ }, {
590
+ id: string;
591
+ type: "timecard-entries";
592
+ attributes: {
593
+ id: string;
594
+ createdAt: string;
595
+ updatedAt: string;
596
+ date: string;
597
+ hoursWorked: number;
598
+ startTime: string;
599
+ endTime: string;
600
+ timecardId: string;
601
+ activity: string;
602
+ projectId?: string | undefined;
603
+ notes?: string | undefined;
604
+ location?: string | undefined;
605
+ taskId?: string | undefined;
606
+ overtimeHours?: number | undefined;
607
+ breakDuration?: number | undefined;
608
+ };
609
+ }>;
610
+ export type Timecard = z.infer<typeof TimecardSchema>;
611
+ export type TimecardEntry = z.infer<typeof TimecardEntrySchema>;
612
+ export type CreateTimecardRequest = z.infer<typeof CreateTimecardRequestSchema>;
613
+ export type CreateTimecardEntryRequest = z.infer<typeof CreateTimecardEntryRequestSchema>;
614
+ export type TimecardFilters = z.infer<typeof TimecardFiltersSchema>;
615
+ export type TimecardQueryParams = z.infer<typeof TimecardQueryParamsSchema>;
616
+ export type TimecardResource = z.infer<typeof TimecardResourceSchema>;
617
+ export type TimecardEntryResource = z.infer<typeof TimecardEntryResourceSchema>;
618
+ //# sourceMappingURL=timecards.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timecards.d.ts","sourceRoot":"","sources":["../../../src/schemas/timecards.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,oBAAoB,mEAAiE,CAAC;AAInG,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgB9B,CAAC;AAEH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiBzB,CAAC;AAIH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAU3C,CAAC;AAEH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAItC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;EAOhC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;EAEpC,CAAC;AAIH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIjC,CAAC;AAEH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAItC,CAAC;AAIH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAC1F,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
@@ -0,0 +1,80 @@
1
+ import { z } from 'zod';
2
+ import { CuidSchema } from './common';
3
+ // ===== ENUMS =====
4
+ export const TimecardStatusSchema = z.enum(['DRAFT', 'SUBMITTED', 'APPROVED', 'REJECTED', 'PAID']);
5
+ // ===== CORE SCHEMAS =====
6
+ export const TimecardEntrySchema = z.object({
7
+ id: CuidSchema,
8
+ timecardId: CuidSchema,
9
+ date: z.string().datetime(),
10
+ startTime: z.string().regex(/^([0-1]?[0-9]|2[0-3]):[0-5][0-9]$/, 'Invalid time format (HH:MM)'),
11
+ endTime: z.string().regex(/^([0-1]?[0-9]|2[0-3]):[0-5][0-9]$/, 'Invalid time format (HH:MM)'),
12
+ breakDuration: z.number().min(0).max(480).default(0),
13
+ projectId: CuidSchema.optional(),
14
+ taskId: CuidSchema.optional(),
15
+ activity: z.string().max(200),
16
+ location: z.string().max(100).optional(),
17
+ notes: z.string().max(500).optional(),
18
+ hoursWorked: z.number().min(0).max(24),
19
+ overtimeHours: z.number().min(0).max(24).default(0),
20
+ createdAt: z.string().datetime(),
21
+ updatedAt: z.string().datetime(),
22
+ });
23
+ export const TimecardSchema = z.object({
24
+ id: CuidSchema,
25
+ userId: CuidSchema,
26
+ weekStartDate: z.string().datetime(),
27
+ weekEndDate: z.string().datetime(),
28
+ status: TimecardStatusSchema.default('DRAFT'),
29
+ totalHours: z.number().min(0).max(168),
30
+ regularHours: z.number().min(0).max(168),
31
+ overtimeHours: z.number().min(0).max(168),
32
+ entries: z.array(TimecardEntrySchema),
33
+ submittedAt: z.string().datetime().optional(),
34
+ approvedAt: z.string().datetime().optional(),
35
+ approvedBy: CuidSchema.optional(),
36
+ rejectionReason: z.string().max(1000).optional(),
37
+ companyId: CuidSchema,
38
+ createdAt: z.string().datetime(),
39
+ updatedAt: z.string().datetime(),
40
+ });
41
+ // ===== REQUEST SCHEMAS =====
42
+ export const CreateTimecardEntryRequestSchema = z.object({
43
+ date: z.string().datetime(),
44
+ startTime: z.string().regex(/^([0-1]?[0-9]|2[0-3]):[0-5][0-9]$/),
45
+ endTime: z.string().regex(/^([0-1]?[0-9]|2[0-3]):[0-5][0-9]$/),
46
+ breakDuration: z.number().min(0).max(480).default(0),
47
+ projectId: CuidSchema.optional(),
48
+ taskId: CuidSchema.optional(),
49
+ activity: z.string().min(1).max(200),
50
+ location: z.string().max(100).optional(),
51
+ notes: z.string().max(500).optional(),
52
+ });
53
+ export const CreateTimecardRequestSchema = z.object({
54
+ userId: CuidSchema,
55
+ weekStartDate: z.string().datetime(),
56
+ entries: z.array(CreateTimecardEntryRequestSchema).optional().default([]),
57
+ });
58
+ export const TimecardFiltersSchema = z.object({
59
+ page: z.coerce.number().min(1).default(1),
60
+ limit: z.coerce.number().min(1).max(100).default(20),
61
+ userId: CuidSchema.optional(),
62
+ status: TimecardStatusSchema.optional(),
63
+ weekStartDate: z.string().datetime().optional(),
64
+ companyId: CuidSchema.optional(),
65
+ });
66
+ export const TimecardQueryParamsSchema = z.object({
67
+ companyId: CuidSchema.optional(),
68
+ });
69
+ // ===== JSON:API RESOURCE SCHEMAS =====
70
+ export const TimecardResourceSchema = z.object({
71
+ type: z.literal('timecards'),
72
+ id: z.string(),
73
+ attributes: TimecardSchema,
74
+ });
75
+ export const TimecardEntryResourceSchema = z.object({
76
+ type: z.literal('timecard-entries'),
77
+ id: z.string(),
78
+ attributes: TimecardEntrySchema,
79
+ });
80
+ //# sourceMappingURL=timecards.js.map