@workingdevshero/olympia-ait-adapter 0.1.5 → 1.0.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.
- package/README.md +104 -28
- package/dist/index.d.ts +6 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -3
- package/dist/index.js.map +1 -1
- package/dist/reader/cell-utils.d.ts +10 -0
- package/dist/reader/cell-utils.d.ts.map +1 -0
- package/dist/reader/cell-utils.js +40 -0
- package/dist/reader/cell-utils.js.map +1 -0
- package/dist/reader/parse-day-sheet.d.ts +0 -1
- package/dist/reader/parse-day-sheet.d.ts.map +1 -1
- package/dist/reader/parse-day-sheet.js +1 -50
- package/dist/reader/parse-day-sheet.js.map +1 -1
- package/dist/reader/parse-warmup-workbook.d.ts +13 -0
- package/dist/reader/parse-warmup-workbook.d.ts.map +1 -0
- package/dist/reader/parse-warmup-workbook.js +154 -0
- package/dist/reader/parse-warmup-workbook.js.map +1 -0
- package/dist/reader/parse-workbook.d.ts +2 -2
- package/dist/reader/parse-workbook.d.ts.map +1 -1
- package/dist/reader/parse-workbook.js +1 -6
- package/dist/reader/parse-workbook.js.map +1 -1
- package/dist/schema/program.d.ts +35 -48
- package/dist/schema/program.d.ts.map +1 -1
- package/dist/schema/program.js +26 -15
- package/dist/schema/program.js.map +1 -1
- package/dist/schema/warmup.d.ts +426 -0
- package/dist/schema/warmup.d.ts.map +1 -0
- package/dist/schema/warmup.js +100 -0
- package/dist/schema/warmup.js.map +1 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +51 -18
- package/dist/server.js.map +1 -1
- package/dist/tools/program-json-to-xlsx.d.ts +3 -0
- package/dist/tools/program-json-to-xlsx.d.ts.map +1 -0
- package/dist/tools/program-json-to-xlsx.js +5 -0
- package/dist/tools/program-json-to-xlsx.js.map +1 -0
- package/dist/tools/program-xlsx-to-json.d.ts +3 -0
- package/dist/tools/program-xlsx-to-json.d.ts.map +1 -0
- package/dist/tools/program-xlsx-to-json.js +5 -0
- package/dist/tools/program-xlsx-to-json.js.map +1 -0
- package/dist/tools/warmup-json-to-xlsx.d.ts +3 -0
- package/dist/tools/warmup-json-to-xlsx.d.ts.map +1 -0
- package/dist/tools/warmup-json-to-xlsx.js +5 -0
- package/dist/tools/warmup-json-to-xlsx.js.map +1 -0
- package/dist/tools/warmup-xlsx-to-json.d.ts +3 -0
- package/dist/tools/warmup-xlsx-to-json.d.ts.map +1 -0
- package/dist/tools/warmup-xlsx-to-json.js +5 -0
- package/dist/tools/warmup-xlsx-to-json.js.map +1 -0
- package/dist/writer/build-warmup-workbook.d.ts +3 -0
- package/dist/writer/build-warmup-workbook.d.ts.map +1 -0
- package/dist/writer/build-warmup-workbook.js +101 -0
- package/dist/writer/build-warmup-workbook.js.map +1 -0
- package/dist/writer/build-workbook.d.ts +2 -2
- package/dist/writer/build-workbook.d.ts.map +1 -1
- package/dist/writer/build-workbook.js +1 -11
- package/dist/writer/build-workbook.js.map +1 -1
- package/package.json +5 -4
- package/skills/olympia-authoring/SKILL.md +124 -0
|
@@ -1,17 +1,13 @@
|
|
|
1
1
|
import ExcelJS from "exceljs";
|
|
2
2
|
import { parseDaySheet } from "./parse-day-sheet.js";
|
|
3
|
-
export async function
|
|
3
|
+
export async function parseProgramWorkbook(xlsxPath) {
|
|
4
4
|
const workbook = new ExcelJS.Workbook();
|
|
5
5
|
await workbook.xlsx.readFile(xlsxPath);
|
|
6
6
|
const warnings = [];
|
|
7
7
|
const days = [];
|
|
8
|
-
let weekDates;
|
|
9
8
|
for (const ws of workbook.worksheets) {
|
|
10
9
|
const parsed = parseDaySheet(ws);
|
|
11
10
|
parsed.warnings.forEach((w) => warnings.push(`[${ws.name}] ${w}`));
|
|
12
|
-
if (weekDates === undefined && parsed.weekDates !== undefined) {
|
|
13
|
-
weekDates = parsed.weekDates;
|
|
14
|
-
}
|
|
15
11
|
days.push({
|
|
16
12
|
name: ws.name,
|
|
17
13
|
sections: parsed.sections,
|
|
@@ -46,7 +42,6 @@ export async function parseWorkbook(xlsxPath) {
|
|
|
46
42
|
program: {
|
|
47
43
|
client: clientName,
|
|
48
44
|
programDate,
|
|
49
|
-
...(weekDates ? { weekDates } : {}),
|
|
50
45
|
days,
|
|
51
46
|
},
|
|
52
47
|
warnings,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-workbook.js","sourceRoot":"","sources":["../../src/reader/parse-workbook.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,MAAM,CAAC,KAAK,UAAU,
|
|
1
|
+
{"version":3,"file":"parse-workbook.js","sourceRoot":"","sources":["../../src/reader/parse-workbook.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,QAAgB;IAEhB,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IACxC,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAEvC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,IAAI,GAA+C,EAAE,CAAC;IAE5D,KAAK,MAAM,EAAE,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC;QACjC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;QACnE,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,EAAE,CAAC,IAAI;YACb,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,GAAG,CAAC,MAAM,CAAC,iBAAiB;gBAC1B,CAAC,CAAC,EAAE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,EAAE;gBACjD,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;IACL,CAAC;IAED,0EAA0E;IAC1E,kEAAkE;IAClE,IAAI,UAA8B,CAAC;IACnC,IAAI,WAA+B,CAAC;IACpC,MAAM,OAAO,GACX,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,MAAM,QAAQ,GACZ,OAAO,QAAQ,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACxE,IAAI,OAAO,IAAI,QAAQ,EAAE,CAAC;QACxB,UAAU,GAAG,OAAO,CAAC;QACrB,WAAW,GAAG,QAAQ,CAAC;IACzB,CAAC;SAAM,CAAC;QACN,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC1E,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;YAC9D,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;aAAM,CAAC;YACN,UAAU,GAAG,SAAS,CAAC;YACvB,WAAW,GAAG,EAAE,CAAC;YACjB,QAAQ,CAAC,IAAI,CACX,sFAAsF,QAAQ,EAAE,CACjG,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO;QACL,OAAO,EAAE;YACP,MAAM,EAAE,UAAU;YAClB,WAAW;YACX,IAAI;SACL;QACD,QAAQ;KACT,CAAC;AACJ,CAAC"}
|
package/dist/schema/program.d.ts
CHANGED
|
@@ -24,7 +24,7 @@ export declare const Exercise: z.ZodObject<{
|
|
|
24
24
|
groupLabel: z.ZodOptional<z.ZodString>;
|
|
25
25
|
notes: z.ZodOptional<z.ZodString>;
|
|
26
26
|
sets: z.ZodArray<z.ZodArray<z.ZodNullable<z.ZodString>, "many">, "many">;
|
|
27
|
-
}, "
|
|
27
|
+
}, "strict", z.ZodTypeAny, {
|
|
28
28
|
name: string;
|
|
29
29
|
sets: (string | null)[][];
|
|
30
30
|
groupLabel?: string | undefined;
|
|
@@ -43,7 +43,7 @@ export declare const Section: z.ZodObject<{
|
|
|
43
43
|
groupLabel: z.ZodOptional<z.ZodString>;
|
|
44
44
|
notes: z.ZodOptional<z.ZodString>;
|
|
45
45
|
sets: z.ZodArray<z.ZodArray<z.ZodNullable<z.ZodString>, "many">, "many">;
|
|
46
|
-
}, "
|
|
46
|
+
}, "strict", z.ZodTypeAny, {
|
|
47
47
|
name: string;
|
|
48
48
|
sets: (string | null)[][];
|
|
49
49
|
groupLabel?: string | undefined;
|
|
@@ -54,7 +54,7 @@ export declare const Section: z.ZodObject<{
|
|
|
54
54
|
groupLabel?: string | undefined;
|
|
55
55
|
notes?: string | undefined;
|
|
56
56
|
}>, "many">;
|
|
57
|
-
}, "
|
|
57
|
+
}, "strict", z.ZodTypeAny, {
|
|
58
58
|
kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
|
|
59
59
|
exercises: {
|
|
60
60
|
name: string;
|
|
@@ -75,7 +75,7 @@ export declare const SupplementalNote: z.ZodObject<{
|
|
|
75
75
|
row: z.ZodNumber;
|
|
76
76
|
col: z.ZodString;
|
|
77
77
|
value: z.ZodString;
|
|
78
|
-
}, "
|
|
78
|
+
}, "strict", z.ZodTypeAny, {
|
|
79
79
|
value: string;
|
|
80
80
|
row: number;
|
|
81
81
|
col: string;
|
|
@@ -93,7 +93,7 @@ export declare const Day: z.ZodObject<{
|
|
|
93
93
|
groupLabel: z.ZodOptional<z.ZodString>;
|
|
94
94
|
notes: z.ZodOptional<z.ZodString>;
|
|
95
95
|
sets: z.ZodArray<z.ZodArray<z.ZodNullable<z.ZodString>, "many">, "many">;
|
|
96
|
-
}, "
|
|
96
|
+
}, "strict", z.ZodTypeAny, {
|
|
97
97
|
name: string;
|
|
98
98
|
sets: (string | null)[][];
|
|
99
99
|
groupLabel?: string | undefined;
|
|
@@ -104,7 +104,7 @@ export declare const Day: z.ZodObject<{
|
|
|
104
104
|
groupLabel?: string | undefined;
|
|
105
105
|
notes?: string | undefined;
|
|
106
106
|
}>, "many">;
|
|
107
|
-
}, "
|
|
107
|
+
}, "strict", z.ZodTypeAny, {
|
|
108
108
|
kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
|
|
109
109
|
exercises: {
|
|
110
110
|
name: string;
|
|
@@ -125,7 +125,7 @@ export declare const Day: z.ZodObject<{
|
|
|
125
125
|
row: z.ZodNumber;
|
|
126
126
|
col: z.ZodString;
|
|
127
127
|
value: z.ZodString;
|
|
128
|
-
}, "
|
|
128
|
+
}, "strict", z.ZodTypeAny, {
|
|
129
129
|
value: string;
|
|
130
130
|
row: number;
|
|
131
131
|
col: string;
|
|
@@ -134,7 +134,7 @@ export declare const Day: z.ZodObject<{
|
|
|
134
134
|
row: number;
|
|
135
135
|
col: string;
|
|
136
136
|
}>, "many">>;
|
|
137
|
-
}, "
|
|
137
|
+
}, "strict", z.ZodTypeAny, {
|
|
138
138
|
name: string;
|
|
139
139
|
sections: {
|
|
140
140
|
kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
|
|
@@ -170,7 +170,6 @@ export declare const Day: z.ZodObject<{
|
|
|
170
170
|
export declare const Program: z.ZodObject<{
|
|
171
171
|
client: z.ZodString;
|
|
172
172
|
programDate: z.ZodString;
|
|
173
|
-
weekDates: z.ZodOptional<z.ZodArray<z.ZodNullable<z.ZodString>, "many">>;
|
|
174
173
|
days: z.ZodArray<z.ZodObject<{
|
|
175
174
|
name: z.ZodString;
|
|
176
175
|
sections: z.ZodArray<z.ZodObject<{
|
|
@@ -180,7 +179,7 @@ export declare const Program: z.ZodObject<{
|
|
|
180
179
|
groupLabel: z.ZodOptional<z.ZodString>;
|
|
181
180
|
notes: z.ZodOptional<z.ZodString>;
|
|
182
181
|
sets: z.ZodArray<z.ZodArray<z.ZodNullable<z.ZodString>, "many">, "many">;
|
|
183
|
-
}, "
|
|
182
|
+
}, "strict", z.ZodTypeAny, {
|
|
184
183
|
name: string;
|
|
185
184
|
sets: (string | null)[][];
|
|
186
185
|
groupLabel?: string | undefined;
|
|
@@ -191,7 +190,7 @@ export declare const Program: z.ZodObject<{
|
|
|
191
190
|
groupLabel?: string | undefined;
|
|
192
191
|
notes?: string | undefined;
|
|
193
192
|
}>, "many">;
|
|
194
|
-
}, "
|
|
193
|
+
}, "strict", z.ZodTypeAny, {
|
|
195
194
|
kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
|
|
196
195
|
exercises: {
|
|
197
196
|
name: string;
|
|
@@ -212,7 +211,7 @@ export declare const Program: z.ZodObject<{
|
|
|
212
211
|
row: z.ZodNumber;
|
|
213
212
|
col: z.ZodString;
|
|
214
213
|
value: z.ZodString;
|
|
215
|
-
}, "
|
|
214
|
+
}, "strict", z.ZodTypeAny, {
|
|
216
215
|
value: string;
|
|
217
216
|
row: number;
|
|
218
217
|
col: string;
|
|
@@ -221,7 +220,7 @@ export declare const Program: z.ZodObject<{
|
|
|
221
220
|
row: number;
|
|
222
221
|
col: string;
|
|
223
222
|
}>, "many">>;
|
|
224
|
-
}, "
|
|
223
|
+
}, "strict", z.ZodTypeAny, {
|
|
225
224
|
name: string;
|
|
226
225
|
sections: {
|
|
227
226
|
kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
|
|
@@ -254,7 +253,7 @@ export declare const Program: z.ZodObject<{
|
|
|
254
253
|
col: string;
|
|
255
254
|
}[] | undefined;
|
|
256
255
|
}>, "many">;
|
|
257
|
-
}, "
|
|
256
|
+
}, "strict", z.ZodTypeAny, {
|
|
258
257
|
client: string;
|
|
259
258
|
programDate: string;
|
|
260
259
|
days: {
|
|
@@ -274,7 +273,6 @@ export declare const Program: z.ZodObject<{
|
|
|
274
273
|
col: string;
|
|
275
274
|
}[] | undefined;
|
|
276
275
|
}[];
|
|
277
|
-
weekDates?: (string | null)[] | undefined;
|
|
278
276
|
}, {
|
|
279
277
|
client: string;
|
|
280
278
|
programDate: string;
|
|
@@ -295,7 +293,6 @@ export declare const Program: z.ZodObject<{
|
|
|
295
293
|
col: string;
|
|
296
294
|
}[] | undefined;
|
|
297
295
|
}[];
|
|
298
|
-
weekDates?: (string | null)[] | undefined;
|
|
299
296
|
}>;
|
|
300
297
|
export type Cell = z.infer<typeof Cell>;
|
|
301
298
|
export type SetRow = z.infer<typeof SetRow>;
|
|
@@ -305,18 +302,17 @@ export type Section = z.infer<typeof Section>;
|
|
|
305
302
|
export type SupplementalNote = z.infer<typeof SupplementalNote>;
|
|
306
303
|
export type Day = z.infer<typeof Day>;
|
|
307
304
|
export type Program = z.infer<typeof Program>;
|
|
308
|
-
export declare const
|
|
305
|
+
export declare const ProgramXlsxToJsonInput: z.ZodObject<{
|
|
309
306
|
xlsxPath: z.ZodString;
|
|
310
|
-
}, "
|
|
307
|
+
}, "strict", z.ZodTypeAny, {
|
|
311
308
|
xlsxPath: string;
|
|
312
309
|
}, {
|
|
313
310
|
xlsxPath: string;
|
|
314
311
|
}>;
|
|
315
|
-
export declare const
|
|
312
|
+
export declare const ProgramXlsxToJsonOutput: z.ZodObject<{
|
|
316
313
|
program: z.ZodObject<{
|
|
317
314
|
client: z.ZodString;
|
|
318
315
|
programDate: z.ZodString;
|
|
319
|
-
weekDates: z.ZodOptional<z.ZodArray<z.ZodNullable<z.ZodString>, "many">>;
|
|
320
316
|
days: z.ZodArray<z.ZodObject<{
|
|
321
317
|
name: z.ZodString;
|
|
322
318
|
sections: z.ZodArray<z.ZodObject<{
|
|
@@ -326,7 +322,7 @@ export declare const XlsxToJsonOutput: z.ZodObject<{
|
|
|
326
322
|
groupLabel: z.ZodOptional<z.ZodString>;
|
|
327
323
|
notes: z.ZodOptional<z.ZodString>;
|
|
328
324
|
sets: z.ZodArray<z.ZodArray<z.ZodNullable<z.ZodString>, "many">, "many">;
|
|
329
|
-
}, "
|
|
325
|
+
}, "strict", z.ZodTypeAny, {
|
|
330
326
|
name: string;
|
|
331
327
|
sets: (string | null)[][];
|
|
332
328
|
groupLabel?: string | undefined;
|
|
@@ -337,7 +333,7 @@ export declare const XlsxToJsonOutput: z.ZodObject<{
|
|
|
337
333
|
groupLabel?: string | undefined;
|
|
338
334
|
notes?: string | undefined;
|
|
339
335
|
}>, "many">;
|
|
340
|
-
}, "
|
|
336
|
+
}, "strict", z.ZodTypeAny, {
|
|
341
337
|
kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
|
|
342
338
|
exercises: {
|
|
343
339
|
name: string;
|
|
@@ -358,7 +354,7 @@ export declare const XlsxToJsonOutput: z.ZodObject<{
|
|
|
358
354
|
row: z.ZodNumber;
|
|
359
355
|
col: z.ZodString;
|
|
360
356
|
value: z.ZodString;
|
|
361
|
-
}, "
|
|
357
|
+
}, "strict", z.ZodTypeAny, {
|
|
362
358
|
value: string;
|
|
363
359
|
row: number;
|
|
364
360
|
col: string;
|
|
@@ -367,7 +363,7 @@ export declare const XlsxToJsonOutput: z.ZodObject<{
|
|
|
367
363
|
row: number;
|
|
368
364
|
col: string;
|
|
369
365
|
}>, "many">>;
|
|
370
|
-
}, "
|
|
366
|
+
}, "strict", z.ZodTypeAny, {
|
|
371
367
|
name: string;
|
|
372
368
|
sections: {
|
|
373
369
|
kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
|
|
@@ -400,7 +396,7 @@ export declare const XlsxToJsonOutput: z.ZodObject<{
|
|
|
400
396
|
col: string;
|
|
401
397
|
}[] | undefined;
|
|
402
398
|
}>, "many">;
|
|
403
|
-
}, "
|
|
399
|
+
}, "strict", z.ZodTypeAny, {
|
|
404
400
|
client: string;
|
|
405
401
|
programDate: string;
|
|
406
402
|
days: {
|
|
@@ -420,7 +416,6 @@ export declare const XlsxToJsonOutput: z.ZodObject<{
|
|
|
420
416
|
col: string;
|
|
421
417
|
}[] | undefined;
|
|
422
418
|
}[];
|
|
423
|
-
weekDates?: (string | null)[] | undefined;
|
|
424
419
|
}, {
|
|
425
420
|
client: string;
|
|
426
421
|
programDate: string;
|
|
@@ -441,10 +436,9 @@ export declare const XlsxToJsonOutput: z.ZodObject<{
|
|
|
441
436
|
col: string;
|
|
442
437
|
}[] | undefined;
|
|
443
438
|
}[];
|
|
444
|
-
weekDates?: (string | null)[] | undefined;
|
|
445
439
|
}>;
|
|
446
440
|
warnings: z.ZodArray<z.ZodString, "many">;
|
|
447
|
-
}, "
|
|
441
|
+
}, "strict", z.ZodTypeAny, {
|
|
448
442
|
program: {
|
|
449
443
|
client: string;
|
|
450
444
|
programDate: string;
|
|
@@ -465,7 +459,6 @@ export declare const XlsxToJsonOutput: z.ZodObject<{
|
|
|
465
459
|
col: string;
|
|
466
460
|
}[] | undefined;
|
|
467
461
|
}[];
|
|
468
|
-
weekDates?: (string | null)[] | undefined;
|
|
469
462
|
};
|
|
470
463
|
warnings: string[];
|
|
471
464
|
}, {
|
|
@@ -489,15 +482,13 @@ export declare const XlsxToJsonOutput: z.ZodObject<{
|
|
|
489
482
|
col: string;
|
|
490
483
|
}[] | undefined;
|
|
491
484
|
}[];
|
|
492
|
-
weekDates?: (string | null)[] | undefined;
|
|
493
485
|
};
|
|
494
486
|
warnings: string[];
|
|
495
487
|
}>;
|
|
496
|
-
export declare const
|
|
488
|
+
export declare const ProgramJsonToXlsxInput: z.ZodObject<{
|
|
497
489
|
program: z.ZodObject<{
|
|
498
490
|
client: z.ZodString;
|
|
499
491
|
programDate: z.ZodString;
|
|
500
|
-
weekDates: z.ZodOptional<z.ZodArray<z.ZodNullable<z.ZodString>, "many">>;
|
|
501
492
|
days: z.ZodArray<z.ZodObject<{
|
|
502
493
|
name: z.ZodString;
|
|
503
494
|
sections: z.ZodArray<z.ZodObject<{
|
|
@@ -507,7 +498,7 @@ export declare const JsonToXlsxInput: z.ZodObject<{
|
|
|
507
498
|
groupLabel: z.ZodOptional<z.ZodString>;
|
|
508
499
|
notes: z.ZodOptional<z.ZodString>;
|
|
509
500
|
sets: z.ZodArray<z.ZodArray<z.ZodNullable<z.ZodString>, "many">, "many">;
|
|
510
|
-
}, "
|
|
501
|
+
}, "strict", z.ZodTypeAny, {
|
|
511
502
|
name: string;
|
|
512
503
|
sets: (string | null)[][];
|
|
513
504
|
groupLabel?: string | undefined;
|
|
@@ -518,7 +509,7 @@ export declare const JsonToXlsxInput: z.ZodObject<{
|
|
|
518
509
|
groupLabel?: string | undefined;
|
|
519
510
|
notes?: string | undefined;
|
|
520
511
|
}>, "many">;
|
|
521
|
-
}, "
|
|
512
|
+
}, "strict", z.ZodTypeAny, {
|
|
522
513
|
kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
|
|
523
514
|
exercises: {
|
|
524
515
|
name: string;
|
|
@@ -539,7 +530,7 @@ export declare const JsonToXlsxInput: z.ZodObject<{
|
|
|
539
530
|
row: z.ZodNumber;
|
|
540
531
|
col: z.ZodString;
|
|
541
532
|
value: z.ZodString;
|
|
542
|
-
}, "
|
|
533
|
+
}, "strict", z.ZodTypeAny, {
|
|
543
534
|
value: string;
|
|
544
535
|
row: number;
|
|
545
536
|
col: string;
|
|
@@ -548,7 +539,7 @@ export declare const JsonToXlsxInput: z.ZodObject<{
|
|
|
548
539
|
row: number;
|
|
549
540
|
col: string;
|
|
550
541
|
}>, "many">>;
|
|
551
|
-
}, "
|
|
542
|
+
}, "strict", z.ZodTypeAny, {
|
|
552
543
|
name: string;
|
|
553
544
|
sections: {
|
|
554
545
|
kind: "warmup" | "main" | "sportSpecific" | "supplemental" | "conditioning";
|
|
@@ -581,7 +572,7 @@ export declare const JsonToXlsxInput: z.ZodObject<{
|
|
|
581
572
|
col: string;
|
|
582
573
|
}[] | undefined;
|
|
583
574
|
}>, "many">;
|
|
584
|
-
}, "
|
|
575
|
+
}, "strict", z.ZodTypeAny, {
|
|
585
576
|
client: string;
|
|
586
577
|
programDate: string;
|
|
587
578
|
days: {
|
|
@@ -601,7 +592,6 @@ export declare const JsonToXlsxInput: z.ZodObject<{
|
|
|
601
592
|
col: string;
|
|
602
593
|
}[] | undefined;
|
|
603
594
|
}[];
|
|
604
|
-
weekDates?: (string | null)[] | undefined;
|
|
605
595
|
}, {
|
|
606
596
|
client: string;
|
|
607
597
|
programDate: string;
|
|
@@ -622,10 +612,9 @@ export declare const JsonToXlsxInput: z.ZodObject<{
|
|
|
622
612
|
col: string;
|
|
623
613
|
}[] | undefined;
|
|
624
614
|
}[];
|
|
625
|
-
weekDates?: (string | null)[] | undefined;
|
|
626
615
|
}>;
|
|
627
616
|
outputPath: z.ZodString;
|
|
628
|
-
}, "
|
|
617
|
+
}, "strict", z.ZodTypeAny, {
|
|
629
618
|
program: {
|
|
630
619
|
client: string;
|
|
631
620
|
programDate: string;
|
|
@@ -646,7 +635,6 @@ export declare const JsonToXlsxInput: z.ZodObject<{
|
|
|
646
635
|
col: string;
|
|
647
636
|
}[] | undefined;
|
|
648
637
|
}[];
|
|
649
|
-
weekDates?: (string | null)[] | undefined;
|
|
650
638
|
};
|
|
651
639
|
outputPath: string;
|
|
652
640
|
}, {
|
|
@@ -670,23 +658,22 @@ export declare const JsonToXlsxInput: z.ZodObject<{
|
|
|
670
658
|
col: string;
|
|
671
659
|
}[] | undefined;
|
|
672
660
|
}[];
|
|
673
|
-
weekDates?: (string | null)[] | undefined;
|
|
674
661
|
};
|
|
675
662
|
outputPath: string;
|
|
676
663
|
}>;
|
|
677
|
-
export declare const
|
|
664
|
+
export declare const ProgramJsonToXlsxOutput: z.ZodObject<{
|
|
678
665
|
outputPath: z.ZodString;
|
|
679
666
|
bytesWritten: z.ZodNumber;
|
|
680
|
-
}, "
|
|
667
|
+
}, "strict", z.ZodTypeAny, {
|
|
681
668
|
outputPath: string;
|
|
682
669
|
bytesWritten: number;
|
|
683
670
|
}, {
|
|
684
671
|
outputPath: string;
|
|
685
672
|
bytesWritten: number;
|
|
686
673
|
}>;
|
|
687
|
-
export type
|
|
688
|
-
export type
|
|
689
|
-
export type
|
|
690
|
-
export type
|
|
674
|
+
export type ProgramXlsxToJsonInput = z.infer<typeof ProgramXlsxToJsonInput>;
|
|
675
|
+
export type ProgramXlsxToJsonOutput = z.infer<typeof ProgramXlsxToJsonOutput>;
|
|
676
|
+
export type ProgramJsonToXlsxInput = z.infer<typeof ProgramJsonToXlsxInput>;
|
|
677
|
+
export type ProgramJsonToXlsxOutput = z.infer<typeof ProgramJsonToXlsxOutput>;
|
|
691
678
|
export declare const WEEK_COUNT_CONST = 6;
|
|
692
679
|
//# sourceMappingURL=program.d.ts.map
|
|
@@ -1 +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;
|
|
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;AAKJ,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;EAyBkE,CAAC;AAExF,eAAO,MAAM,WAAW,gFAIrB,CAAC;AAEJ,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMsC,CAAC;AAE3D,eAAO,MAAM,gBAAgB;;;;;;;;;;;;EAwB1B,CAAC;AAEJ,eAAO,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAemD,CAAC;AAEpE,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAajB,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,sBAAsB;;;;;;EASxB,CAAC;AAEZ,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASzB,CAAC;AAEZ,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUxB,CAAC;AAEZ,eAAO,MAAM,uBAAuB;;;;;;;;;EAKzB,CAAC;AAEZ,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAC5E,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAC9E,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAC5E,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE9E,eAAO,MAAM,gBAAgB,IAAa,CAAC"}
|
package/dist/schema/program.js
CHANGED
|
@@ -26,6 +26,9 @@ export const SetRow = z
|
|
|
26
26
|
.array(Cell)
|
|
27
27
|
.length(WEEK_COUNT)
|
|
28
28
|
.describe("One set's prescription across all 6 weeks of the program, in week order.");
|
|
29
|
+
// All object schemas are .strict(): unknown keys are rejected, not silently
|
|
30
|
+
// stripped, so agents authoring against a stale contract (e.g. the removed
|
|
31
|
+
// weekDates field) fail loudly at the tool boundary.
|
|
29
32
|
export const Exercise = z
|
|
30
33
|
.object({
|
|
31
34
|
name: z
|
|
@@ -46,6 +49,7 @@ export const Exercise = z
|
|
|
46
49
|
.min(1)
|
|
47
50
|
.describe("2-D matrix of prescriptions: sets[setIdx][weekIdx]. Outer length = number of sets for this exercise (typically 3); each inner array is length 6 (weeks 1-6). Set positions are coherent across weeks — sets[0] is set 1's progression across the 6 weeks."),
|
|
48
51
|
})
|
|
52
|
+
.strict()
|
|
49
53
|
.describe("One exercise in a training day, with its 6-week set-by-set prescription.");
|
|
50
54
|
export const SectionKind = z
|
|
51
55
|
.enum(["warmup", "main", "sportSpecific", "supplemental", "conditioning"])
|
|
@@ -55,6 +59,7 @@ export const Section = z
|
|
|
55
59
|
kind: SectionKind,
|
|
56
60
|
exercises: z.array(Exercise),
|
|
57
61
|
})
|
|
62
|
+
.strict()
|
|
58
63
|
.describe("An ordered group of exercises within a day.");
|
|
59
64
|
export const SupplementalNote = z
|
|
60
65
|
.object({
|
|
@@ -71,6 +76,7 @@ export const SupplementalNote = z
|
|
|
71
76
|
.string()
|
|
72
77
|
.describe('A complete freeform phrase as the trainer would write it — e.g. "Rower 600M x 2", "Optional Cardio / Post Stretch", "200 Yard Shuttle". The supplemental area is NOT a structured per-week grid: do not split a single instruction into a label cell plus per-week metric cells. To make a phrase span the row visually, emit the same `value` in each week-column entry (D, F, H, J, L, N) of that row.'),
|
|
73
78
|
})
|
|
79
|
+
.strict()
|
|
74
80
|
.describe("One freeform cell captured from (or written to) the trainer-managed Sport Specific / Supplemental area at the bottom of a day sheet. Each note is an independent (row, col, value) write; the convention is one full phrase per row, repeated across the week-column masters.");
|
|
75
81
|
export const Day = z
|
|
76
82
|
.object({
|
|
@@ -84,6 +90,7 @@ export const Day = z
|
|
|
84
90
|
.optional()
|
|
85
91
|
.describe("Freeform notes the trainer wrote in the Sport Specific / Supplemental area at the bottom of the day. Sparse — only populated cells appear. The schema is intentionally loose because trainers use this area for athlete-specific instructions that don't fit the structured exercise table (e.g. conditioning circuits, sport-specific drills, recovery breath work)."),
|
|
86
92
|
})
|
|
93
|
+
.strict()
|
|
87
94
|
.describe("One training day = one sheet in the output workbook.");
|
|
88
95
|
export const Program = z
|
|
89
96
|
.object({
|
|
@@ -91,37 +98,41 @@ export const Program = z
|
|
|
91
98
|
programDate: z
|
|
92
99
|
.string()
|
|
93
100
|
.describe('Program identifier date as it appears in the filename, e.g. "4.26" for April 2026. Free-form to match Olympia conventions.'),
|
|
94
|
-
weekDates: z
|
|
95
|
-
.array(z.string().nullable())
|
|
96
|
-
.length(WEEK_COUNT)
|
|
97
|
-
.optional()
|
|
98
|
-
.describe('Per-week date labels (the "Date:" header row in each sheet). 6 entries, one per week, or null where empty.'),
|
|
99
101
|
days: z.array(Day).min(1),
|
|
100
102
|
})
|
|
101
|
-
.
|
|
103
|
+
.strict()
|
|
104
|
+
.describe('A complete Olympia training program. Maps 1:1 to one client XLSX workbook. The "Date:" cells in each sheet\'s header row are intentionally left blank — clients hand-write the week dates. A program is usually accompanied by a companion warm-up workbook for the same client and date, paired day-for-day.');
|
|
102
105
|
// --- Tool input/output schemas ---
|
|
103
|
-
export const
|
|
106
|
+
export const ProgramXlsxToJsonInput = z
|
|
107
|
+
.object({
|
|
104
108
|
xlsxPath: z
|
|
105
109
|
.string()
|
|
106
110
|
.min(1)
|
|
107
|
-
.describe("Absolute path to an Olympia .xlsx file on the local filesystem."),
|
|
108
|
-
})
|
|
109
|
-
|
|
111
|
+
.describe("Absolute path to an Olympia program .xlsx file on the local filesystem."),
|
|
112
|
+
})
|
|
113
|
+
.strict();
|
|
114
|
+
export const ProgramXlsxToJsonOutput = z
|
|
115
|
+
.object({
|
|
110
116
|
program: Program,
|
|
111
117
|
warnings: z
|
|
112
118
|
.array(z.string())
|
|
113
119
|
.describe("Structural surprises encountered while parsing (e.g. unexpected section labels, exercises without group labels where one was expected). Empty if the file parsed cleanly."),
|
|
114
|
-
})
|
|
115
|
-
|
|
120
|
+
})
|
|
121
|
+
.strict();
|
|
122
|
+
export const ProgramJsonToXlsxInput = z
|
|
123
|
+
.object({
|
|
116
124
|
program: Program,
|
|
117
125
|
outputPath: z
|
|
118
126
|
.string()
|
|
119
127
|
.min(1)
|
|
120
128
|
.describe("Absolute path where the generated .xlsx file should be written. Parent directory must exist."),
|
|
121
|
-
})
|
|
122
|
-
|
|
129
|
+
})
|
|
130
|
+
.strict();
|
|
131
|
+
export const ProgramJsonToXlsxOutput = z
|
|
132
|
+
.object({
|
|
123
133
|
outputPath: z.string(),
|
|
124
134
|
bytesWritten: z.number().int().nonnegative(),
|
|
125
|
-
})
|
|
135
|
+
})
|
|
136
|
+
.strict();
|
|
126
137
|
export const WEEK_COUNT_CONST = WEEK_COUNT;
|
|
127
138
|
//# sourceMappingURL=program.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"program.js","sourceRoot":"","sources":["../../src/schema/program.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,UAAU,GAAG,CAAC,CAAC;AAErB;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC;KAClB,MAAM,EAAE;KACR,QAAQ,EAAE;KACV,QAAQ,CACP,kVAAkV,CACnV,CAAC;AAEJ,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC;KACpB,KAAK,CAAC,IAAI,CAAC;KACX,MAAM,CAAC,UAAU,CAAC;KAClB,QAAQ,CACP,0EAA0E,CAC3E,CAAC;AAEJ,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC;KACtB,MAAM,CAAC;IACN,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,oDAAoD,CAAC;IACjE,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,KAAK,CAAC,YAAY,EAAE,yDAAyD,CAAC;SAC9E,QAAQ,EAAE;SACV,QAAQ,CACP,wIAAwI,CACzI;IACH,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,uDAAuD,CAAC;IACpE,IAAI,EAAE,CAAC;SACJ,KAAK,CAAC,MAAM,CAAC;SACb,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CACP,2PAA2P,CAC5P;CACJ,CAAC;KACD,QAAQ,CAAC,0EAA0E,CAAC,CAAC;AAExF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC;KACzB,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;KACzE,QAAQ,CACP,iHAAiH,CAClH,CAAC;AAEJ,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC;KACrB,MAAM,CAAC;IACN,IAAI,EAAE,WAAW;IACjB,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC;CAC7B,CAAC;KACD,QAAQ,CAAC,6CAA6C,CAAC,CAAC;AAE3D,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC;KAC9B,MAAM,CAAC;IACN,GAAG,EAAE,CAAC;SACH,MAAM,EAAE;SACR,GAAG,EAAE;SACL,WAAW,EAAE;SACb,QAAQ,CACP,yFAAyF,CAC1F;IACH,GAAG,EAAE,CAAC;SACH,MAAM,EAAE;SACR,KAAK,CAAC,UAAU,CAAC;SACjB,QAAQ,CACP,2QAA2Q,CAC5Q;IACH,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,QAAQ,CACP,0YAA0Y,CAC3Y;CACJ,CAAC;KACD,QAAQ,CACP,+QAA+Q,CAChR,CAAC;AAEJ,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC;KACjB,MAAM,CAAC;IACN,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,kDAAkD,CAAC;IAC/D,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACjC,iBAAiB,EAAE,CAAC;SACjB,KAAK,CAAC,gBAAgB,CAAC;SACvB,QAAQ,EAAE;SACV,QAAQ,CACP,uWAAuW,CACxW;CACJ,CAAC;KACD,QAAQ,CAAC,sDAAsD,CAAC,CAAC;AAEpE,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC;KACrB,MAAM,CAAC;IACN,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IACtE,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,CACP,4HAA4H,CAC7H;IACH,
|
|
1
|
+
{"version":3,"file":"program.js","sourceRoot":"","sources":["../../src/schema/program.ts"],"names":[],"mappings":"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"}
|