@workingdevshero/olympia-ait-adapter 0.1.0

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 (51) hide show
  1. package/README.md +208 -0
  2. package/dist/index.d.ts +5 -0
  3. package/dist/index.d.ts.map +1 -0
  4. package/dist/index.js +8 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/reader/parse-day-sheet.d.ts +10 -0
  7. package/dist/reader/parse-day-sheet.d.ts.map +1 -0
  8. package/dist/reader/parse-day-sheet.js +199 -0
  9. package/dist/reader/parse-day-sheet.js.map +1 -0
  10. package/dist/reader/parse-workbook.d.ts +3 -0
  11. package/dist/reader/parse-workbook.d.ts.map +1 -0
  12. package/dist/reader/parse-workbook.js +55 -0
  13. package/dist/reader/parse-workbook.js.map +1 -0
  14. package/dist/schema/program.d.ts +692 -0
  15. package/dist/schema/program.d.ts.map +1 -0
  16. package/dist/schema/program.js +125 -0
  17. package/dist/schema/program.js.map +1 -0
  18. package/dist/server.d.ts +4 -0
  19. package/dist/server.d.ts.map +1 -0
  20. package/dist/server.js +58 -0
  21. package/dist/server.js.map +1 -0
  22. package/dist/tools/json-to-xlsx.d.ts +3 -0
  23. package/dist/tools/json-to-xlsx.d.ts.map +1 -0
  24. package/dist/tools/json-to-xlsx.js +5 -0
  25. package/dist/tools/json-to-xlsx.js.map +1 -0
  26. package/dist/tools/xlsx-to-json.d.ts +3 -0
  27. package/dist/tools/xlsx-to-json.d.ts.map +1 -0
  28. package/dist/tools/xlsx-to-json.js +5 -0
  29. package/dist/tools/xlsx-to-json.js.map +1 -0
  30. package/dist/writer/build-workbook.d.ts +3 -0
  31. package/dist/writer/build-workbook.d.ts.map +1 -0
  32. package/dist/writer/build-workbook.js +166 -0
  33. package/dist/writer/build-workbook.js.map +1 -0
  34. package/dist/writer/layout.d.ts +21 -0
  35. package/dist/writer/layout.d.ts.map +1 -0
  36. package/dist/writer/layout.js +40 -0
  37. package/dist/writer/layout.js.map +1 -0
  38. package/dist/writer/stamp-exercise.d.ts +31 -0
  39. package/dist/writer/stamp-exercise.d.ts.map +1 -0
  40. package/dist/writer/stamp-exercise.js +80 -0
  41. package/dist/writer/stamp-exercise.js.map +1 -0
  42. package/dist/writer/styles.d.ts +59 -0
  43. package/dist/writer/styles.d.ts.map +1 -0
  44. package/dist/writer/styles.js +266 -0
  45. package/dist/writer/styles.js.map +1 -0
  46. package/dist/writer/supplemental-template.d.ts +23 -0
  47. package/dist/writer/supplemental-template.d.ts.map +1 -0
  48. package/dist/writer/supplemental-template.js +112 -0
  49. package/dist/writer/supplemental-template.js.map +1 -0
  50. package/package.json +42 -0
  51. package/src/assets/olympia-logo.png +0 -0
@@ -0,0 +1,692 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * A single prescription cell for one set in one week.
4
+ *
5
+ * Olympia does not prescribe weights — the unit is reps, time, or breaths,
6
+ * encoded by notation in the cell text:
7
+ *
8
+ * "12" → 12 reps
9
+ * "10E" → 10 reps each side
10
+ * ":20" → 20-second hold
11
+ * ":20E" → 20-second hold each side
12
+ * ":60" → 60 seconds
13
+ * "5 breaths" → 5 breaths
14
+ * null → empty cell
15
+ *
16
+ * Free-form strings like "x3 Rest :60" are also valid (Giulianna's file
17
+ * has these for circuit instructions), so the grammar is intentionally
18
+ * not validated at the schema level.
19
+ */
20
+ export declare const Cell: z.ZodNullable<z.ZodString>;
21
+ export declare const SetRow: z.ZodArray<z.ZodNullable<z.ZodString>, "many">;
22
+ export declare const Exercise: z.ZodObject<{
23
+ name: z.ZodString;
24
+ groupLabel: z.ZodOptional<z.ZodString>;
25
+ notes: z.ZodOptional<z.ZodString>;
26
+ sets: z.ZodArray<z.ZodArray<z.ZodNullable<z.ZodString>, "many">, "many">;
27
+ }, "strip", z.ZodTypeAny, {
28
+ name: string;
29
+ sets: (string | null)[][];
30
+ groupLabel?: string | undefined;
31
+ notes?: string | undefined;
32
+ }, {
33
+ name: string;
34
+ sets: (string | null)[][];
35
+ groupLabel?: string | undefined;
36
+ notes?: string | undefined;
37
+ }>;
38
+ export declare const SectionKind: z.ZodEnum<["warmup", "main", "sportSpecific", "supplemental", "conditioning"]>;
39
+ export declare const Section: z.ZodObject<{
40
+ kind: z.ZodEnum<["warmup", "main", "sportSpecific", "supplemental", "conditioning"]>;
41
+ exercises: z.ZodArray<z.ZodObject<{
42
+ name: z.ZodString;
43
+ groupLabel: z.ZodOptional<z.ZodString>;
44
+ notes: z.ZodOptional<z.ZodString>;
45
+ sets: z.ZodArray<z.ZodArray<z.ZodNullable<z.ZodString>, "many">, "many">;
46
+ }, "strip", z.ZodTypeAny, {
47
+ name: string;
48
+ sets: (string | null)[][];
49
+ groupLabel?: string | undefined;
50
+ notes?: string | undefined;
51
+ }, {
52
+ name: string;
53
+ sets: (string | null)[][];
54
+ groupLabel?: string | undefined;
55
+ notes?: string | undefined;
56
+ }>, "many">;
57
+ }, "strip", z.ZodTypeAny, {
58
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
59
+ exercises: {
60
+ name: string;
61
+ sets: (string | null)[][];
62
+ groupLabel?: string | undefined;
63
+ notes?: string | undefined;
64
+ }[];
65
+ }, {
66
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
67
+ exercises: {
68
+ name: string;
69
+ sets: (string | null)[][];
70
+ groupLabel?: string | undefined;
71
+ notes?: string | undefined;
72
+ }[];
73
+ }>;
74
+ export declare const SupplementalNote: z.ZodObject<{
75
+ row: z.ZodNumber;
76
+ col: z.ZodString;
77
+ value: z.ZodString;
78
+ }, "strip", z.ZodTypeAny, {
79
+ value: string;
80
+ row: number;
81
+ col: string;
82
+ }, {
83
+ value: string;
84
+ row: number;
85
+ col: string;
86
+ }>;
87
+ export declare const Day: z.ZodObject<{
88
+ name: z.ZodString;
89
+ sections: z.ZodArray<z.ZodObject<{
90
+ kind: z.ZodEnum<["warmup", "main", "sportSpecific", "supplemental", "conditioning"]>;
91
+ exercises: z.ZodArray<z.ZodObject<{
92
+ name: z.ZodString;
93
+ groupLabel: z.ZodOptional<z.ZodString>;
94
+ notes: z.ZodOptional<z.ZodString>;
95
+ sets: z.ZodArray<z.ZodArray<z.ZodNullable<z.ZodString>, "many">, "many">;
96
+ }, "strip", z.ZodTypeAny, {
97
+ name: string;
98
+ sets: (string | null)[][];
99
+ groupLabel?: string | undefined;
100
+ notes?: string | undefined;
101
+ }, {
102
+ name: string;
103
+ sets: (string | null)[][];
104
+ groupLabel?: string | undefined;
105
+ notes?: string | undefined;
106
+ }>, "many">;
107
+ }, "strip", z.ZodTypeAny, {
108
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
109
+ exercises: {
110
+ name: string;
111
+ sets: (string | null)[][];
112
+ groupLabel?: string | undefined;
113
+ notes?: string | undefined;
114
+ }[];
115
+ }, {
116
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
117
+ exercises: {
118
+ name: string;
119
+ sets: (string | null)[][];
120
+ groupLabel?: string | undefined;
121
+ notes?: string | undefined;
122
+ }[];
123
+ }>, "many">;
124
+ supplementalNotes: z.ZodOptional<z.ZodArray<z.ZodObject<{
125
+ row: z.ZodNumber;
126
+ col: z.ZodString;
127
+ value: z.ZodString;
128
+ }, "strip", z.ZodTypeAny, {
129
+ value: string;
130
+ row: number;
131
+ col: string;
132
+ }, {
133
+ value: string;
134
+ row: number;
135
+ col: string;
136
+ }>, "many">>;
137
+ }, "strip", z.ZodTypeAny, {
138
+ name: string;
139
+ sections: {
140
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
141
+ exercises: {
142
+ name: string;
143
+ sets: (string | null)[][];
144
+ groupLabel?: string | undefined;
145
+ notes?: string | undefined;
146
+ }[];
147
+ }[];
148
+ supplementalNotes?: {
149
+ value: string;
150
+ row: number;
151
+ col: string;
152
+ }[] | undefined;
153
+ }, {
154
+ name: string;
155
+ sections: {
156
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
157
+ exercises: {
158
+ name: string;
159
+ sets: (string | null)[][];
160
+ groupLabel?: string | undefined;
161
+ notes?: string | undefined;
162
+ }[];
163
+ }[];
164
+ supplementalNotes?: {
165
+ value: string;
166
+ row: number;
167
+ col: string;
168
+ }[] | undefined;
169
+ }>;
170
+ export declare const Program: z.ZodObject<{
171
+ client: z.ZodString;
172
+ programDate: z.ZodString;
173
+ weekDates: z.ZodOptional<z.ZodArray<z.ZodNullable<z.ZodString>, "many">>;
174
+ days: z.ZodArray<z.ZodObject<{
175
+ name: z.ZodString;
176
+ sections: z.ZodArray<z.ZodObject<{
177
+ kind: z.ZodEnum<["warmup", "main", "sportSpecific", "supplemental", "conditioning"]>;
178
+ exercises: z.ZodArray<z.ZodObject<{
179
+ name: z.ZodString;
180
+ groupLabel: z.ZodOptional<z.ZodString>;
181
+ notes: z.ZodOptional<z.ZodString>;
182
+ sets: z.ZodArray<z.ZodArray<z.ZodNullable<z.ZodString>, "many">, "many">;
183
+ }, "strip", z.ZodTypeAny, {
184
+ name: string;
185
+ sets: (string | null)[][];
186
+ groupLabel?: string | undefined;
187
+ notes?: string | undefined;
188
+ }, {
189
+ name: string;
190
+ sets: (string | null)[][];
191
+ groupLabel?: string | undefined;
192
+ notes?: string | undefined;
193
+ }>, "many">;
194
+ }, "strip", z.ZodTypeAny, {
195
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
196
+ exercises: {
197
+ name: string;
198
+ sets: (string | null)[][];
199
+ groupLabel?: string | undefined;
200
+ notes?: string | undefined;
201
+ }[];
202
+ }, {
203
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
204
+ exercises: {
205
+ name: string;
206
+ sets: (string | null)[][];
207
+ groupLabel?: string | undefined;
208
+ notes?: string | undefined;
209
+ }[];
210
+ }>, "many">;
211
+ supplementalNotes: z.ZodOptional<z.ZodArray<z.ZodObject<{
212
+ row: z.ZodNumber;
213
+ col: z.ZodString;
214
+ value: z.ZodString;
215
+ }, "strip", z.ZodTypeAny, {
216
+ value: string;
217
+ row: number;
218
+ col: string;
219
+ }, {
220
+ value: string;
221
+ row: number;
222
+ col: string;
223
+ }>, "many">>;
224
+ }, "strip", z.ZodTypeAny, {
225
+ name: string;
226
+ sections: {
227
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
228
+ exercises: {
229
+ name: string;
230
+ sets: (string | null)[][];
231
+ groupLabel?: string | undefined;
232
+ notes?: string | undefined;
233
+ }[];
234
+ }[];
235
+ supplementalNotes?: {
236
+ value: string;
237
+ row: number;
238
+ col: string;
239
+ }[] | undefined;
240
+ }, {
241
+ name: string;
242
+ sections: {
243
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
244
+ exercises: {
245
+ name: string;
246
+ sets: (string | null)[][];
247
+ groupLabel?: string | undefined;
248
+ notes?: string | undefined;
249
+ }[];
250
+ }[];
251
+ supplementalNotes?: {
252
+ value: string;
253
+ row: number;
254
+ col: string;
255
+ }[] | undefined;
256
+ }>, "many">;
257
+ }, "strip", z.ZodTypeAny, {
258
+ client: string;
259
+ programDate: string;
260
+ days: {
261
+ name: string;
262
+ sections: {
263
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
264
+ exercises: {
265
+ name: string;
266
+ sets: (string | null)[][];
267
+ groupLabel?: string | undefined;
268
+ notes?: string | undefined;
269
+ }[];
270
+ }[];
271
+ supplementalNotes?: {
272
+ value: string;
273
+ row: number;
274
+ col: string;
275
+ }[] | undefined;
276
+ }[];
277
+ weekDates?: (string | null)[] | undefined;
278
+ }, {
279
+ client: string;
280
+ programDate: string;
281
+ days: {
282
+ name: string;
283
+ sections: {
284
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
285
+ exercises: {
286
+ name: string;
287
+ sets: (string | null)[][];
288
+ groupLabel?: string | undefined;
289
+ notes?: string | undefined;
290
+ }[];
291
+ }[];
292
+ supplementalNotes?: {
293
+ value: string;
294
+ row: number;
295
+ col: string;
296
+ }[] | undefined;
297
+ }[];
298
+ weekDates?: (string | null)[] | undefined;
299
+ }>;
300
+ export type Cell = z.infer<typeof Cell>;
301
+ export type SetRow = z.infer<typeof SetRow>;
302
+ export type Exercise = z.infer<typeof Exercise>;
303
+ export type SectionKind = z.infer<typeof SectionKind>;
304
+ export type Section = z.infer<typeof Section>;
305
+ export type SupplementalNote = z.infer<typeof SupplementalNote>;
306
+ export type Day = z.infer<typeof Day>;
307
+ export type Program = z.infer<typeof Program>;
308
+ export declare const XlsxToJsonInput: z.ZodObject<{
309
+ xlsxPath: z.ZodString;
310
+ }, "strip", z.ZodTypeAny, {
311
+ xlsxPath: string;
312
+ }, {
313
+ xlsxPath: string;
314
+ }>;
315
+ export declare const XlsxToJsonOutput: z.ZodObject<{
316
+ program: z.ZodObject<{
317
+ client: z.ZodString;
318
+ programDate: z.ZodString;
319
+ weekDates: z.ZodOptional<z.ZodArray<z.ZodNullable<z.ZodString>, "many">>;
320
+ days: z.ZodArray<z.ZodObject<{
321
+ name: z.ZodString;
322
+ sections: z.ZodArray<z.ZodObject<{
323
+ kind: z.ZodEnum<["warmup", "main", "sportSpecific", "supplemental", "conditioning"]>;
324
+ exercises: z.ZodArray<z.ZodObject<{
325
+ name: z.ZodString;
326
+ groupLabel: z.ZodOptional<z.ZodString>;
327
+ notes: z.ZodOptional<z.ZodString>;
328
+ sets: z.ZodArray<z.ZodArray<z.ZodNullable<z.ZodString>, "many">, "many">;
329
+ }, "strip", z.ZodTypeAny, {
330
+ name: string;
331
+ sets: (string | null)[][];
332
+ groupLabel?: string | undefined;
333
+ notes?: string | undefined;
334
+ }, {
335
+ name: string;
336
+ sets: (string | null)[][];
337
+ groupLabel?: string | undefined;
338
+ notes?: string | undefined;
339
+ }>, "many">;
340
+ }, "strip", z.ZodTypeAny, {
341
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
342
+ exercises: {
343
+ name: string;
344
+ sets: (string | null)[][];
345
+ groupLabel?: string | undefined;
346
+ notes?: string | undefined;
347
+ }[];
348
+ }, {
349
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
350
+ exercises: {
351
+ name: string;
352
+ sets: (string | null)[][];
353
+ groupLabel?: string | undefined;
354
+ notes?: string | undefined;
355
+ }[];
356
+ }>, "many">;
357
+ supplementalNotes: z.ZodOptional<z.ZodArray<z.ZodObject<{
358
+ row: z.ZodNumber;
359
+ col: z.ZodString;
360
+ value: z.ZodString;
361
+ }, "strip", z.ZodTypeAny, {
362
+ value: string;
363
+ row: number;
364
+ col: string;
365
+ }, {
366
+ value: string;
367
+ row: number;
368
+ col: string;
369
+ }>, "many">>;
370
+ }, "strip", z.ZodTypeAny, {
371
+ name: string;
372
+ sections: {
373
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
374
+ exercises: {
375
+ name: string;
376
+ sets: (string | null)[][];
377
+ groupLabel?: string | undefined;
378
+ notes?: string | undefined;
379
+ }[];
380
+ }[];
381
+ supplementalNotes?: {
382
+ value: string;
383
+ row: number;
384
+ col: string;
385
+ }[] | undefined;
386
+ }, {
387
+ name: string;
388
+ sections: {
389
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
390
+ exercises: {
391
+ name: string;
392
+ sets: (string | null)[][];
393
+ groupLabel?: string | undefined;
394
+ notes?: string | undefined;
395
+ }[];
396
+ }[];
397
+ supplementalNotes?: {
398
+ value: string;
399
+ row: number;
400
+ col: string;
401
+ }[] | undefined;
402
+ }>, "many">;
403
+ }, "strip", z.ZodTypeAny, {
404
+ client: string;
405
+ programDate: string;
406
+ days: {
407
+ name: string;
408
+ sections: {
409
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
410
+ exercises: {
411
+ name: string;
412
+ sets: (string | null)[][];
413
+ groupLabel?: string | undefined;
414
+ notes?: string | undefined;
415
+ }[];
416
+ }[];
417
+ supplementalNotes?: {
418
+ value: string;
419
+ row: number;
420
+ col: string;
421
+ }[] | undefined;
422
+ }[];
423
+ weekDates?: (string | null)[] | undefined;
424
+ }, {
425
+ client: string;
426
+ programDate: string;
427
+ days: {
428
+ name: string;
429
+ sections: {
430
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
431
+ exercises: {
432
+ name: string;
433
+ sets: (string | null)[][];
434
+ groupLabel?: string | undefined;
435
+ notes?: string | undefined;
436
+ }[];
437
+ }[];
438
+ supplementalNotes?: {
439
+ value: string;
440
+ row: number;
441
+ col: string;
442
+ }[] | undefined;
443
+ }[];
444
+ weekDates?: (string | null)[] | undefined;
445
+ }>;
446
+ warnings: z.ZodArray<z.ZodString, "many">;
447
+ }, "strip", z.ZodTypeAny, {
448
+ program: {
449
+ client: string;
450
+ programDate: string;
451
+ days: {
452
+ name: string;
453
+ sections: {
454
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
455
+ exercises: {
456
+ name: string;
457
+ sets: (string | null)[][];
458
+ groupLabel?: string | undefined;
459
+ notes?: string | undefined;
460
+ }[];
461
+ }[];
462
+ supplementalNotes?: {
463
+ value: string;
464
+ row: number;
465
+ col: string;
466
+ }[] | undefined;
467
+ }[];
468
+ weekDates?: (string | null)[] | undefined;
469
+ };
470
+ warnings: string[];
471
+ }, {
472
+ program: {
473
+ client: string;
474
+ programDate: string;
475
+ days: {
476
+ name: string;
477
+ sections: {
478
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
479
+ exercises: {
480
+ name: string;
481
+ sets: (string | null)[][];
482
+ groupLabel?: string | undefined;
483
+ notes?: string | undefined;
484
+ }[];
485
+ }[];
486
+ supplementalNotes?: {
487
+ value: string;
488
+ row: number;
489
+ col: string;
490
+ }[] | undefined;
491
+ }[];
492
+ weekDates?: (string | null)[] | undefined;
493
+ };
494
+ warnings: string[];
495
+ }>;
496
+ export declare const JsonToXlsxInput: z.ZodObject<{
497
+ program: z.ZodObject<{
498
+ client: z.ZodString;
499
+ programDate: z.ZodString;
500
+ weekDates: z.ZodOptional<z.ZodArray<z.ZodNullable<z.ZodString>, "many">>;
501
+ days: z.ZodArray<z.ZodObject<{
502
+ name: z.ZodString;
503
+ sections: z.ZodArray<z.ZodObject<{
504
+ kind: z.ZodEnum<["warmup", "main", "sportSpecific", "supplemental", "conditioning"]>;
505
+ exercises: z.ZodArray<z.ZodObject<{
506
+ name: z.ZodString;
507
+ groupLabel: z.ZodOptional<z.ZodString>;
508
+ notes: z.ZodOptional<z.ZodString>;
509
+ sets: z.ZodArray<z.ZodArray<z.ZodNullable<z.ZodString>, "many">, "many">;
510
+ }, "strip", z.ZodTypeAny, {
511
+ name: string;
512
+ sets: (string | null)[][];
513
+ groupLabel?: string | undefined;
514
+ notes?: string | undefined;
515
+ }, {
516
+ name: string;
517
+ sets: (string | null)[][];
518
+ groupLabel?: string | undefined;
519
+ notes?: string | undefined;
520
+ }>, "many">;
521
+ }, "strip", z.ZodTypeAny, {
522
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
523
+ exercises: {
524
+ name: string;
525
+ sets: (string | null)[][];
526
+ groupLabel?: string | undefined;
527
+ notes?: string | undefined;
528
+ }[];
529
+ }, {
530
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
531
+ exercises: {
532
+ name: string;
533
+ sets: (string | null)[][];
534
+ groupLabel?: string | undefined;
535
+ notes?: string | undefined;
536
+ }[];
537
+ }>, "many">;
538
+ supplementalNotes: z.ZodOptional<z.ZodArray<z.ZodObject<{
539
+ row: z.ZodNumber;
540
+ col: z.ZodString;
541
+ value: z.ZodString;
542
+ }, "strip", z.ZodTypeAny, {
543
+ value: string;
544
+ row: number;
545
+ col: string;
546
+ }, {
547
+ value: string;
548
+ row: number;
549
+ col: string;
550
+ }>, "many">>;
551
+ }, "strip", z.ZodTypeAny, {
552
+ name: string;
553
+ sections: {
554
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
555
+ exercises: {
556
+ name: string;
557
+ sets: (string | null)[][];
558
+ groupLabel?: string | undefined;
559
+ notes?: string | undefined;
560
+ }[];
561
+ }[];
562
+ supplementalNotes?: {
563
+ value: string;
564
+ row: number;
565
+ col: string;
566
+ }[] | undefined;
567
+ }, {
568
+ name: string;
569
+ sections: {
570
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
571
+ exercises: {
572
+ name: string;
573
+ sets: (string | null)[][];
574
+ groupLabel?: string | undefined;
575
+ notes?: string | undefined;
576
+ }[];
577
+ }[];
578
+ supplementalNotes?: {
579
+ value: string;
580
+ row: number;
581
+ col: string;
582
+ }[] | undefined;
583
+ }>, "many">;
584
+ }, "strip", z.ZodTypeAny, {
585
+ client: string;
586
+ programDate: string;
587
+ days: {
588
+ name: string;
589
+ sections: {
590
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
591
+ exercises: {
592
+ name: string;
593
+ sets: (string | null)[][];
594
+ groupLabel?: string | undefined;
595
+ notes?: string | undefined;
596
+ }[];
597
+ }[];
598
+ supplementalNotes?: {
599
+ value: string;
600
+ row: number;
601
+ col: string;
602
+ }[] | undefined;
603
+ }[];
604
+ weekDates?: (string | null)[] | undefined;
605
+ }, {
606
+ client: string;
607
+ programDate: string;
608
+ days: {
609
+ name: string;
610
+ sections: {
611
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
612
+ exercises: {
613
+ name: string;
614
+ sets: (string | null)[][];
615
+ groupLabel?: string | undefined;
616
+ notes?: string | undefined;
617
+ }[];
618
+ }[];
619
+ supplementalNotes?: {
620
+ value: string;
621
+ row: number;
622
+ col: string;
623
+ }[] | undefined;
624
+ }[];
625
+ weekDates?: (string | null)[] | undefined;
626
+ }>;
627
+ outputPath: z.ZodString;
628
+ }, "strip", z.ZodTypeAny, {
629
+ program: {
630
+ client: string;
631
+ programDate: string;
632
+ days: {
633
+ name: string;
634
+ sections: {
635
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
636
+ exercises: {
637
+ name: string;
638
+ sets: (string | null)[][];
639
+ groupLabel?: string | undefined;
640
+ notes?: string | undefined;
641
+ }[];
642
+ }[];
643
+ supplementalNotes?: {
644
+ value: string;
645
+ row: number;
646
+ col: string;
647
+ }[] | undefined;
648
+ }[];
649
+ weekDates?: (string | null)[] | undefined;
650
+ };
651
+ outputPath: string;
652
+ }, {
653
+ program: {
654
+ client: string;
655
+ programDate: string;
656
+ days: {
657
+ name: string;
658
+ sections: {
659
+ kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
660
+ exercises: {
661
+ name: string;
662
+ sets: (string | null)[][];
663
+ groupLabel?: string | undefined;
664
+ notes?: string | undefined;
665
+ }[];
666
+ }[];
667
+ supplementalNotes?: {
668
+ value: string;
669
+ row: number;
670
+ col: string;
671
+ }[] | undefined;
672
+ }[];
673
+ weekDates?: (string | null)[] | undefined;
674
+ };
675
+ outputPath: string;
676
+ }>;
677
+ export declare const JsonToXlsxOutput: z.ZodObject<{
678
+ outputPath: z.ZodString;
679
+ bytesWritten: z.ZodNumber;
680
+ }, "strip", z.ZodTypeAny, {
681
+ outputPath: string;
682
+ bytesWritten: number;
683
+ }, {
684
+ outputPath: string;
685
+ bytesWritten: number;
686
+ }>;
687
+ export type XlsxToJsonInput = z.infer<typeof XlsxToJsonInput>;
688
+ export type XlsxToJsonOutput = z.infer<typeof XlsxToJsonOutput>;
689
+ export type JsonToXlsxInput = z.infer<typeof JsonToXlsxInput>;
690
+ export type JsonToXlsxOutput = z.infer<typeof JsonToXlsxOutput>;
691
+ export declare const WEEK_COUNT_CONST = 6;
692
+ //# sourceMappingURL=program.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../../src/schema/program.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,IAAI,4BAKd,CAAC;AAEJ,eAAO,MAAM,MAAM,gDAKhB,CAAC;AAEJ,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;EAwBkE,CAAC;AAExF,eAAO,MAAM,WAAW,gFAIrB,CAAC;AAEJ,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKsC,CAAC;AAE3D,eAAO,MAAM,gBAAgB;;;;;;;;;;;;EAmB1B,CAAC;AAEJ,eAAO,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAcmD,CAAC;AAEpE,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmBjB,CAAC;AAEJ,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;AACxC,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,CAAC;AAC5C,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAChD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AACtD,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;AAC9C,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAChE,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC;AACtC,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;AAI9C,eAAO,MAAM,eAAe;;;;;;EAK1B,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAO3B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQ1B,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;EAG3B,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAC9D,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAChE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAC9D,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEhE,eAAO,MAAM,gBAAgB,IAAa,CAAC"}