@purveyors/cli 0.33.0 → 0.33.1

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 (67) hide show
  1. package/README.md +19 -18
  2. package/dist/commands/catalog.d.ts.map +1 -1
  3. package/dist/commands/catalog.js +22 -13
  4. package/dist/commands/catalog.js.map +1 -1
  5. package/dist/commands/inventory.d.ts.map +1 -1
  6. package/dist/commands/inventory.js +23 -21
  7. package/dist/commands/inventory.js.map +1 -1
  8. package/dist/commands/market.d.ts.map +1 -1
  9. package/dist/commands/market.js +9 -6
  10. package/dist/commands/market.js.map +1 -1
  11. package/dist/commands/price-index.d.ts.map +1 -1
  12. package/dist/commands/price-index.js +9 -6
  13. package/dist/commands/price-index.js.map +1 -1
  14. package/dist/commands/procurement.d.ts.map +1 -1
  15. package/dist/commands/procurement.js +9 -6
  16. package/dist/commands/procurement.js.map +1 -1
  17. package/dist/commands/roast.d.ts.map +1 -1
  18. package/dist/commands/roast.js +64 -65
  19. package/dist/commands/roast.js.map +1 -1
  20. package/dist/commands/sales.d.ts.map +1 -1
  21. package/dist/commands/sales.js +15 -17
  22. package/dist/commands/sales.js.map +1 -1
  23. package/dist/commands/tasting.d.ts.map +1 -1
  24. package/dist/commands/tasting.js +22 -16
  25. package/dist/commands/tasting.js.map +1 -1
  26. package/dist/lib/ai.d.ts +5 -43
  27. package/dist/lib/ai.d.ts.map +1 -1
  28. package/dist/lib/ai.js +4 -84
  29. package/dist/lib/ai.js.map +1 -1
  30. package/dist/lib/catalog.d.ts +2 -0
  31. package/dist/lib/catalog.d.ts.map +1 -1
  32. package/dist/lib/catalog.js +23 -6
  33. package/dist/lib/catalog.js.map +1 -1
  34. package/dist/lib/cherry.d.ts +46 -0
  35. package/dist/lib/cherry.d.ts.map +1 -0
  36. package/dist/lib/cherry.js +87 -0
  37. package/dist/lib/cherry.js.map +1 -0
  38. package/dist/lib/interactive/forms.d.ts.map +1 -1
  39. package/dist/lib/interactive/forms.js +12 -3
  40. package/dist/lib/interactive/forms.js.map +1 -1
  41. package/dist/lib/interactive/watch.js +1 -1
  42. package/dist/lib/interactive/watch.js.map +1 -1
  43. package/dist/lib/inventory.d.ts.map +1 -1
  44. package/dist/lib/inventory.js +11 -4
  45. package/dist/lib/inventory.js.map +1 -1
  46. package/dist/lib/manifest.d.ts +2 -0
  47. package/dist/lib/manifest.d.ts.map +1 -1
  48. package/dist/lib/manifest.js +37 -5
  49. package/dist/lib/manifest.js.map +1 -1
  50. package/dist/lib/numeric-contracts.d.ts +24 -0
  51. package/dist/lib/numeric-contracts.d.ts.map +1 -0
  52. package/dist/lib/numeric-contracts.js +9 -0
  53. package/dist/lib/numeric-contracts.js.map +1 -0
  54. package/dist/lib/roast.d.ts.map +1 -1
  55. package/dist/lib/roast.js +21 -7
  56. package/dist/lib/roast.js.map +1 -1
  57. package/dist/lib/sales.d.ts.map +1 -1
  58. package/dist/lib/sales.js +7 -4
  59. package/dist/lib/sales.js.map +1 -1
  60. package/dist/lib/strict-number.d.ts +12 -0
  61. package/dist/lib/strict-number.d.ts.map +1 -1
  62. package/dist/lib/strict-number.js +24 -0
  63. package/dist/lib/strict-number.js.map +1 -1
  64. package/dist/lib/tasting.d.ts.map +1 -1
  65. package/dist/lib/tasting.js +6 -4
  66. package/dist/lib/tasting.js.map +1 -1
  67. package/package.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"procurement.js","sourceRoot":"","sources":["../../src/commands/procurement.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"procurement.js","sourceRoot":"","sources":["../../src/commands/procurement.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"roast.d.ts","sourceRoot":"","sources":["../../src/commands/roast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,OAAO,EAAwB,WAAW,EAA4B,MAAM,iBAAiB,CAAC;AAC9F,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EAClB,MAAM,iBAAiB,CAAC;AAIzB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAO/D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAKjD,4DAA4D;AAC5D,KAAK,kBAAkB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;AAGvE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC;AAEhE;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,kBAAkB,EAC3B,gBAAgB,EAAE,MAAM,EACxB,iBAAiB,EAAE,MAAM,GACxB,iBAAiB,CAyDnB;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,kBAAkB,CAwBjG;AAED,6FAA6F;AAC7F,wBAAsB,sBAAsB,CAC1C,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC,GACvC,OAAO,CAAC,YAAY,CAAC,CAQvB;AAcD;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAo8B3C"}
1
+ {"version":3,"file":"roast.d.ts","sourceRoot":"","sources":["../../src/commands/roast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,OAAO,EAAwB,WAAW,EAA4B,MAAM,iBAAiB,CAAC;AAC9F,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EAClB,MAAM,iBAAiB,CAAC;AAIzB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAO/D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAUjD,4DAA4D;AAC5D,KAAK,kBAAkB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;AAGvE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC;AAsDhE;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,kBAAkB,EAC3B,gBAAgB,EAAE,MAAM,EACxB,iBAAiB,EAAE,MAAM,GACxB,iBAAiB,CAyDnB;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,kBAAkB,CAwBjG;AAED,6FAA6F;AAC7F,wBAAsB,sBAAsB,CAC1C,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC,GACvC,OAAO,CAAC,YAAY,CAAC,CAQvB;AAcD;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAm5B3C"}
@@ -13,7 +13,42 @@ import { startWatch, loadWatchSession } from '../lib/interactive/watch.js';
13
13
  import { getConfigValue } from '../lib/config.js';
14
14
  import { createParchmentClient, resolveParchmentSessionTokenIfAvailable, unwrapParchment, } from '../lib/parchment.js';
15
15
  import { getInventory } from '../lib/inventory.js';
16
- import { parseStrictFiniteNumber } from '../lib/strict-number.js';
16
+ import { parseStrictFiniteNumber, parseStrictInt4Id, parseStrictOffset, parseStrictPositiveCount, } from '../lib/strict-number.js';
17
+ function parseRoastInt4Id(value, label) {
18
+ const parsed = parseStrictInt4Id(value);
19
+ if (!Number.isFinite(parsed)) {
20
+ throw new PrvrsError('INVALID_ARGUMENT', `Invalid ${label}: "${value}". Must be an integer between 1 and 2147483647.`);
21
+ }
22
+ return parsed;
23
+ }
24
+ function parseRoastListCount(value, flag) {
25
+ const parsed = flag === '--offset' ? parseStrictOffset(value) : parseStrictPositiveCount(value);
26
+ if (!Number.isFinite(parsed)) {
27
+ const requirement = flag === '--offset' ? 'a non-negative integer' : 'a positive integer';
28
+ throw new PrvrsError('INVALID_ARGUMENT', `Invalid ${flag}: "${value}". Must be ${requirement}.`);
29
+ }
30
+ return parsed;
31
+ }
32
+ function parseWatchCommitMode(value, fallback = 'batch') {
33
+ if (value === undefined || value === null || String(value).trim() === '') {
34
+ return fallback;
35
+ }
36
+ const normalized = String(value).trim().toLowerCase();
37
+ if (normalized === 'batch' || normalized === 'individual') {
38
+ return normalized;
39
+ }
40
+ throw new PrvrsError('INVALID_ARGUMENT', `Invalid --commit-mode: "${value}". Use "batch" or "individual".`);
41
+ }
42
+ function parseWatchOptionalPositiveNumber(value, flagName) {
43
+ if (value === undefined || value === null || String(value).trim() === '') {
44
+ return undefined;
45
+ }
46
+ const parsed = parseStrictFiniteNumber(String(value));
47
+ if (!Number.isFinite(parsed) || parsed <= 0) {
48
+ throw new PrvrsError('INVALID_ARGUMENT', `Invalid ${flagName}: "${value}".`);
49
+ }
50
+ return parsed;
51
+ }
17
52
  /**
18
53
  * Map the canonical Parchment `roasts.import` response onto the CLI's existing
19
54
  * {@link ImportRoastResult} output shape, so `--pretty` and machine output stay
@@ -185,21 +220,16 @@ Notes:
185
220
  // Parse exact-id filters
186
221
  let roastId;
187
222
  if (opts.roastId !== undefined) {
188
- roastId = parseInt(opts.roastId, 10);
189
- if (isNaN(roastId) || roastId <= 0) {
190
- throw new PrvrsError('INVALID_ARGUMENT', `Invalid --roast-id: "${opts.roastId}". Must be a positive integer.`);
191
- }
223
+ roastId = parseRoastInt4Id(opts.roastId, '--roast-id');
192
224
  }
193
225
  let catalogId;
194
226
  if (opts.catalogId !== undefined) {
195
- catalogId = parseInt(opts.catalogId, 10);
196
- if (isNaN(catalogId) || catalogId <= 0) {
197
- throw new PrvrsError('INVALID_ARGUMENT', `Invalid --catalog-id: "${opts.catalogId}". Must be a positive integer.`);
198
- }
227
+ catalogId = parseRoastInt4Id(opts.catalogId, '--catalog-id');
199
228
  }
200
- const offsetVal = parseInt(opts.offset, 10);
201
229
  const data = await listRoasts({
202
- coffee_id: opts.coffeeId !== undefined ? parseInt(opts.coffeeId, 10) : undefined,
230
+ coffee_id: opts.coffeeId !== undefined
231
+ ? parseRoastInt4Id(opts.coffeeId, '--coffee-id')
232
+ : undefined,
203
233
  roast_id: roastId,
204
234
  batch_name: opts.batchName,
205
235
  coffee_name: opts.coffeeName,
@@ -207,8 +237,8 @@ Notes:
207
237
  date_end: dateEnd,
208
238
  stocked_only: opts.stocked === true ? true : undefined,
209
239
  catalog_id: catalogId,
210
- limit: Math.max(1, parseInt(opts.limit, 10)),
211
- offset: isNaN(offsetVal) || offsetVal < 0 ? 0 : offsetVal,
240
+ limit: parseRoastListCount(opts.limit, '--limit'),
241
+ offset: parseRoastListCount(opts.offset, '--offset'),
212
242
  });
213
243
  if (data.length === 0) {
214
244
  info('No roast profiles found.');
@@ -237,7 +267,7 @@ Notes:
237
267
  `)
238
268
  .action(withErrorHandling(async (id, opts, cmd) => {
239
269
  const globalOpts = cmd.optsWithGlobals();
240
- const data = await getRoast(parseInt(id, 10), {
270
+ const data = await getRoast(parseRoastInt4Id(id, 'roast ID'), {
241
271
  includeTemps: Boolean(opts.includeTemps),
242
272
  includeEvents: Boolean(opts.includeEvents),
243
273
  });
@@ -337,10 +367,7 @@ Required flags: --coffee-id (green_coffee_inv.id)
337
367
  if (!opts.coffeeId) {
338
368
  throw new PrvrsError('INVALID_ARGUMENT', 'Missing --coffee-id. Use --form for interactive mode.');
339
369
  }
340
- const coffeeId = parseInt(opts.coffeeId, 10);
341
- if (isNaN(coffeeId)) {
342
- throw new PrvrsError('INVALID_ARGUMENT', `Invalid --coffee-id: "${opts.coffeeId}".`);
343
- }
370
+ const coffeeId = parseRoastInt4Id(opts.coffeeId, '--coffee-id');
344
371
  let ozIn;
345
372
  if (opts.ozIn !== undefined) {
346
373
  ozIn = parseStrictFiniteNumber(opts.ozIn);
@@ -388,10 +415,7 @@ Notes:
388
415
  `)
389
416
  .action(withErrorHandling(async (id, opts, cmd) => {
390
417
  const globalOpts = cmd.optsWithGlobals();
391
- const roastId = parseInt(id, 10);
392
- if (isNaN(roastId)) {
393
- throw new PrvrsError('INVALID_ARGUMENT', `Invalid roast ID: "${id}".`);
394
- }
418
+ const roastId = parseRoastInt4Id(id, 'roast ID');
395
419
  let ozOut;
396
420
  if (opts.ozOut !== undefined) {
397
421
  ozOut = parseStrictFiniteNumber(opts.ozOut);
@@ -429,10 +453,7 @@ Notes:
429
453
  `)
430
454
  .action(withErrorHandling(async (id, opts, cmd) => {
431
455
  void cmd;
432
- const roastId = parseInt(id, 10);
433
- if (isNaN(roastId)) {
434
- throw new PrvrsError('INVALID_ARGUMENT', `Invalid roast ID: "${id}".`);
435
- }
456
+ const roastId = parseRoastInt4Id(id, 'roast ID');
436
457
  if (!opts.yes) {
437
458
  const ok = await confirm(`Delete roast profile #${roastId}?`);
438
459
  if (!ok) {
@@ -589,10 +610,7 @@ Required: <file> path and --coffee-id (unless using --form)
589
610
  if (!opts.coffeeId) {
590
611
  throw new PrvrsError('INVALID_ARGUMENT', 'Missing --coffee-id. Use --form for interactive mode.');
591
612
  }
592
- const coffeeId = parseInt(opts.coffeeId, 10);
593
- if (isNaN(coffeeId) || coffeeId <= 0) {
594
- throw new PrvrsError('INVALID_ARGUMENT', `Invalid --coffee-id: "${opts.coffeeId}".`);
595
- }
613
+ const coffeeId = parseRoastInt4Id(opts.coffeeId, '--coffee-id');
596
614
  // 4. Parse --oz-in if provided
597
615
  let ozIn;
598
616
  if (opts.ozIn !== undefined) {
@@ -668,28 +686,19 @@ Notes:
668
686
  Requires authentication (member role).
669
687
  `)
670
688
  .action(withErrorHandling(async (directory, opts) => {
689
+ // Validate all flag values before authentication so malformed machine input
690
+ // consistently returns INVALID_ARGUMENT without session or network work.
691
+ const parsedCoffeeId = opts.coffeeId !== undefined
692
+ ? parseRoastInt4Id(opts.coffeeId, '--coffee-id')
693
+ : undefined;
694
+ const parsedCommitMode = parseWatchCommitMode(opts.commitMode);
695
+ const parsedOzIn = parseWatchOptionalPositiveNumber(opts.ozIn, '--oz-in');
696
+ const autoMatch = Boolean(opts.autoMatch);
697
+ if (autoMatch && opts.coffeeId) {
698
+ throw new PrvrsError('INVALID_ARGUMENT', '--auto-match and --coffee-id are mutually exclusive. Use one or the other.');
699
+ }
671
700
  const { credentialContext, userId } = await requireAuth('member');
672
701
  const roastImporter = createWatchRoastImporter(credentialContext);
673
- const parseCommitMode = (value, fallback = 'batch') => {
674
- if (value === undefined || value === null || String(value).trim() === '') {
675
- return fallback;
676
- }
677
- const normalized = String(value).trim().toLowerCase();
678
- if (normalized === 'batch' || normalized === 'individual') {
679
- return normalized;
680
- }
681
- throw new PrvrsError('INVALID_ARGUMENT', `Invalid --commit-mode: "${value}". Use "batch" or "individual".`);
682
- };
683
- const parseOptionalPositiveNumber = (value, flagName) => {
684
- if (value === undefined || value === null || String(value).trim() === '') {
685
- return undefined;
686
- }
687
- const parsed = parseStrictFiniteNumber(String(value));
688
- if (!Number.isFinite(parsed) || parsed <= 0) {
689
- throw new PrvrsError('INVALID_ARGUMENT', `Invalid ${flagName}: "${value}".`);
690
- }
691
- return parsed;
692
- };
693
702
  // ── Resume mode ──────────────────────────────────────────────────────
694
703
  if (opts.resume) {
695
704
  const saved = await loadWatchSession();
@@ -791,7 +800,7 @@ Notes:
791
800
  ],
792
801
  });
793
802
  guardCancel(commitModeRaw);
794
- const commitMode = parseCommitMode(commitModeRaw);
803
+ const commitMode = parseWatchCommitMode(commitModeRaw);
795
804
  const ozInRaw = await p.text({
796
805
  message: 'Green weight (oz)',
797
806
  placeholder: 'optional',
@@ -822,7 +831,7 @@ Notes:
822
831
  promptEach: useAutoMatch ? false : Boolean(promptEachRaw),
823
832
  autoMatch: useAutoMatch,
824
833
  interactiveRecovery: true,
825
- ozIn: parseOptionalPositiveNumber(ozInRaw, 'green weight'),
834
+ ozIn: parseWatchOptionalPositiveNumber(ozInRaw, 'green weight'),
826
835
  roastTargets: String(roastTargetsRaw).trim() !== '' ? String(roastTargetsRaw).trim() : undefined,
827
836
  roastNotes: String(roastNotesRaw).trim() !== '' ? String(roastNotesRaw).trim() : undefined,
828
837
  }, { roastImporter });
@@ -832,19 +841,12 @@ Notes:
832
841
  if (!directory) {
833
842
  throw new PrvrsError('INVALID_ARGUMENT', 'Missing directory argument. Use --form for interactive mode or --resume to continue.');
834
843
  }
835
- const autoMatch = Boolean(opts.autoMatch);
836
- const commitMode = parseCommitMode(opts.commitMode);
837
- const ozIn = parseOptionalPositiveNumber(opts.ozIn, '--oz-in');
838
844
  const roastNotes = typeof opts.roastNotes === 'string' && opts.roastNotes.trim() !== ''
839
845
  ? opts.roastNotes.trim()
840
846
  : undefined;
841
847
  const roastTargets = typeof opts.roastTargets === 'string' && opts.roastTargets.trim() !== ''
842
848
  ? opts.roastTargets.trim()
843
849
  : undefined;
844
- // --auto-match and --coffee-id are mutually exclusive (auto-match picks the bean)
845
- if (autoMatch && opts.coffeeId) {
846
- throw new PrvrsError('INVALID_ARGUMENT', '--auto-match and --coffee-id are mutually exclusive. Use one or the other.');
847
- }
848
850
  if (!autoMatch && !opts.coffeeId) {
849
851
  throw new PrvrsError('INVALID_ARGUMENT', 'Missing --coffee-id. Use --form for interactive mode or --auto-match to let AI pick the bean.');
850
852
  }
@@ -856,10 +858,7 @@ Notes:
856
858
  coffeeName = 'auto-match';
857
859
  }
858
860
  else {
859
- coffeeId = parseInt(opts.coffeeId, 10);
860
- if (isNaN(coffeeId) || coffeeId <= 0) {
861
- throw new PrvrsError('INVALID_ARGUMENT', `Invalid --coffee-id: "${opts.coffeeId}".`);
862
- }
861
+ coffeeId = parsedCoffeeId;
863
862
  const invItem = await getInventory(coffeeId, await requireCurrentSessionToken(credentialContext));
864
863
  coffeeName = invItem.coffee_catalog?.name ?? `Coffee #${coffeeId}`;
865
864
  }
@@ -869,10 +868,10 @@ Notes:
869
868
  coffeeId,
870
869
  coffeeName,
871
870
  batchPrefix,
872
- commitMode,
871
+ commitMode: parsedCommitMode,
873
872
  promptEach: Boolean(opts.promptEach),
874
873
  autoMatch,
875
- ozIn,
874
+ ozIn: parsedOzIn,
876
875
  roastNotes,
877
876
  roastTargets,
878
877
  }, { roastImporter });
@@ -1 +1 @@
1
- {"version":3,"file":"roast.js","sourceRoot":"","sources":["../../src/commands/roast.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"roast.js","sourceRoot":"","sources":["../../src/commands/roast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAO9F,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAG3E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EACL,qBAAqB,EACrB,uCAAuC,EACvC,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EACL,uBAAuB,EACvB,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,yBAAyB,CAAC;AAQjC,SAAS,gBAAgB,CAAC,KAAa,EAAE,KAAa;IACpD,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,UAAU,CAClB,kBAAkB,EAClB,WAAW,KAAK,MAAM,KAAK,iDAAiD,CAC7E,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa,EAAE,IAA4B;IACtE,MAAM,MAAM,GAAG,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAChG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,MAAM,WAAW,GAAG,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,oBAAoB,CAAC;QAC1F,MAAM,IAAI,UAAU,CAClB,kBAAkB,EAClB,WAAW,IAAI,MAAM,KAAK,cAAc,WAAW,GAAG,CACvD,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAc,EAAE,WAAmC,OAAO;IACtF,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACzE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACtD,IAAI,UAAU,KAAK,OAAO,IAAI,UAAU,KAAK,YAAY,EAAE,CAAC;QAC1D,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,MAAM,IAAI,UAAU,CAClB,kBAAkB,EAClB,2BAA2B,KAAK,iCAAiC,CAClE,CAAC;AACJ,CAAC;AAED,SAAS,gCAAgC,CAAC,KAAc,EAAE,QAAgB;IACxE,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACzE,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,MAAM,GAAG,uBAAuB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACtD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,UAAU,CAAC,kBAAkB,EAAE,WAAW,QAAQ,MAAM,KAAK,IAAI,CAAC,CAAC;IAC/E,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAA2B,EAC3B,gBAAwB,EACxB,iBAAyB;IAEzB,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;IACjC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;IAEpC,MAAM,UAAU,GAAoC,EAAE,CAAC;IACvD,IAAI,KAAK,CAAC,WAAW,IAAI,IAAI;QAAE,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC;IACrE,IAAI,KAAK,CAAC,aAAa,IAAI,IAAI;QAAE,UAAU,CAAC,QAAQ,GAAG,KAAK,CAAC,aAAa,CAAC;IAC3E,IAAI,KAAK,CAAC,WAAW,IAAI,IAAI;QAAE,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC;IACrE,IAAI,KAAK,CAAC,SAAS,IAAI,IAAI;QAAE,UAAU,CAAC,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC;IAE/D,0EAA0E;IAC1E,2EAA2E;IAC3E,0DAA0D;IAC1D,MAAM,cAAc,GAAyD;QAC3E,QAAQ;QACR,SAAS;QACT,UAAU;QACV,QAAQ;QACR,UAAU;QACV,QAAQ;QACR,MAAM;QACN,MAAM;KACP,CAAC;IACF,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;QACvC,MAAM,GAAG,GAAG,KAAK,CAAC,YAA4D,CAAC;QAC/E,IACE,GAAG,IAAI,IAAI;YACX,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC;YAC5B,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI;YACvB,KAAK,CAAC,YAAY,IAAI,IAAI,EAC1B,CAAC;YACD,UAAU,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC;QACvC,CAAC;IACH,CAAC;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,gBAAgB,IAAI,CAAC,CAAC;IAC9C,MAAM,eAAe,GAAc,KAAK,CAAC,gBAAgB,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAE9E,OAAO;QACL,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,YAAY,OAAO,CAAC,iBAAiB,iBAAiB,OAAO,CAAC,eAAe,gBAAgB,OAAO,CAAC,aAAa,iBAAiB;QAC5I,UAAU;QACV,MAAM,EAAE;YACN,cAAc,EAAE,KAAK,CAAC,WAAW,IAAI,CAAC;YACtC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,IAAI,CAAC;YAC7C,mBAAmB,EAAE,KAAK,CAAC,mBAAmB,IAAI,CAAC;YACnD,kBAAkB,EAAE,SAAS;SAC9B;QACD,UAAU,EAAE,SAAS;QACrB,gBAAgB,EAAE,eAAe;QACjC,gBAAgB,EAAE,OAAO,CAAC,eAAe;QACzC,cAAc,EAAE,OAAO,CAAC,aAAa;QACrC,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,iBAAiB;QACjD,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,EAAE;QACpC,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,gBAAgB;KAC/C,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,wBAAwB,CAAC,iBAAoC;IAC3E,OAAO,KAAK,EAAE,IAAI,EAAE,EAAE;QACpB,MAAM,EACJ,IAAI,EAAE,EAAE,OAAO,EAAE,GAClB,GAAG,MAAM,iBAAiB,CAAC,UAAU,EAAE,CAAC;QACzC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;YACrB,MAAM,IAAI,SAAS,CAAC,+DAA+D,CAAC,CAAC;QACvF,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QACrE,MAAM,OAAO,GAAG,eAAe,CAC7B,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;YACzB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC;SACvD,CAAC,EACF,cAAc,CACf,CAAC;QACF,OAAO,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACpE,CAAC,CAAC;AACJ,CAAC;AAED,6FAA6F;AAC7F,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,iBAAoC,EACpC,KAAwC;IAExC,MAAM,EACJ,IAAI,EAAE,EAAE,OAAO,EAAE,GAClB,GAAG,MAAM,iBAAiB,CAAC,UAAU,EAAE,CAAC;IACzC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QACrB,MAAM,IAAI,SAAS,CAAC,gEAAgE,CAAC,CAAC;IACxF,CAAC;IACD,OAAO,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;AAC5C,CAAC;AAED,KAAK,UAAU,0BAA0B,CAAC,iBAAoC;IAC5E,MAAM,EACJ,IAAI,EAAE,EAAE,OAAO,EAAE,GAClB,GAAG,MAAM,iBAAiB,CAAC,UAAU,EAAE,CAAC;IACzC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QACrB,MAAM,IAAI,SAAS,CAAC,qDAAqD,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,OAAO,CAAC,MAAM,CAAC;AACxB,CAAC;AAED,iFAAiF;AAEjF;;;GAGG;AACH,MAAM,UAAU,iBAAiB;IAC/B,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,uCAAuC,CAAC,CAAC;IAExF,6EAA6E;IAC7E,KAAK;SACF,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,yDAAyD,CAAC;SACtE,MAAM,CAAC,kBAAkB,EAAE,+BAA+B,CAAC;SAC3D,MAAM,CAAC,iBAAiB,EAAE,4BAA4B,CAAC;SACvD,MAAM,CAAC,qBAAqB,EAAE,wDAAwD,CAAC;SACvF,MAAM,CAAC,sBAAsB,EAAE,uDAAuD,CAAC;SACvF,MAAM,CAAC,2BAA2B,EAAE,wCAAwC,CAAC;SAC7E,MAAM,CAAC,yBAAyB,EAAE,yCAAyC,CAAC;SAC5E,MAAM,CAAC,WAAW,EAAE,8CAA8C,CAAC;SACnE,MAAM,CAAC,mBAAmB,EAAE,6BAA6B,CAAC;SAC1D,MAAM,CAAC,aAAa,EAAE,2BAA2B,EAAE,IAAI,CAAC;SACxD,MAAM,CAAC,cAAc,EAAE,iCAAiC,EAAE,GAAG,CAAC;SAC9D,WAAW,CACV,OAAO,EACP;;;;;;;;;;;;;;;;;;;;;;;;;CAyBL,CACI;SACA,MAAM,CACL,iBAAiB,CAAC,KAAK,EAAE,IAA6B,EAAE,GAAY,EAAE,EAAE;QACtE,MAAM,UAAU,GAAG,GAAG,CAAC,eAAe,EAAmB,CAAC;QAC1D,2CAA2C;QAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,SAA+B,CAAC;QACvD,MAAM,OAAO,GAAG,IAAI,CAAC,OAA6B,CAAC;QACnD,IAAI,SAAS,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YACxD,MAAM,IAAI,UAAU,CAClB,kBAAkB,EAClB,0BAA0B,SAAS,+BAA+B,CACnE,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,UAAU,CAClB,kBAAkB,EAClB,wBAAwB,OAAO,+BAA+B,CAC/D,CAAC;QACJ,CAAC;QAED,yBAAyB;QACzB,IAAI,OAA2B,CAAC;QAChC,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAiB,EAAE,YAAY,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,SAA6B,CAAC;QAClC,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACjC,SAAS,GAAG,gBAAgB,CAAC,IAAI,CAAC,SAAmB,EAAE,cAAc,CAAC,CAAC;QACzE,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC;YAC5B,SAAS,EACP,IAAI,CAAC,QAAQ,KAAK,SAAS;gBACzB,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAkB,EAAE,aAAa,CAAC;gBAC1D,CAAC,CAAC,SAAS;YACf,QAAQ,EAAE,OAAO;YACjB,UAAU,EAAE,IAAI,CAAC,SAA+B;YAChD,WAAW,EAAE,IAAI,CAAC,UAAgC;YAClD,UAAU,EAAE,SAAS;YACrB,QAAQ,EAAE,OAAO;YACjB,YAAY,EAAE,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;YACtD,UAAU,EAAE,SAAS;YACrB,KAAK,EAAE,mBAAmB,CAAC,IAAI,CAAC,KAAe,EAAE,SAAS,CAAC;YAC3D,MAAM,EAAE,mBAAmB,CAAC,IAAI,CAAC,MAAgB,EAAE,UAAU,CAAC;SAC/D,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,0BAA0B,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QAED,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC/B,CAAC,CAAC,CACH,CAAC;IAEJ,6EAA6E;IAC7E,KAAK;SACF,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,0CAA0C,CAAC;SACvD,MAAM,CAAC,iBAAiB,EAAE,qDAAqD,CAAC;SAChF,MAAM,CAAC,kBAAkB,EAAE,qCAAqC,CAAC;SACjE,WAAW,CACV,OAAO,EACP;;;;;;;;;;;;CAYL,CACI;SACA,MAAM,CACL,iBAAiB,CAAC,KAAK,EAAE,EAAU,EAAE,IAA6B,EAAE,GAAY,EAAE,EAAE;QAClF,MAAM,UAAU,GAAG,GAAG,CAAC,eAAe,EAAmB,CAAC;QAC1D,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,gBAAgB,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE;YAC5D,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC;YACxC,aAAa,EAAE,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC;SAC3C,CAAC,CAAC;QAEH,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC/B,CAAC,CAAC,CACH,CAAC;IAEJ,6EAA6E;IAC7E,KAAK;SACF,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,4BAA4B,CAAC;SACzC,MAAM,CAAC,kBAAkB,EAAE,+CAA+C,CAAC;SAC3E,MAAM,CAAC,qBAAqB,EAAE,qDAAqD,CAAC;SACpF,MAAM,CAAC,cAAc,EAAE,wBAAwB,CAAC;SAChD,MAAM,CAAC,eAAe,EAAE,0BAA0B,CAAC;SACnD,MAAM,CAAC,2BAA2B,EAAE,gCAAgC,CAAC;SACrE,MAAM,CAAC,gBAAgB,EAAE,aAAa,CAAC;SACvC,MAAM,CAAC,QAAQ,EAAE,gDAAgD,CAAC;SAClE,WAAW,CACV,OAAO,EACP;;;;;;;;;;;;CAYL,CACI;SACA,MAAM,CACL,iBAAiB,CAAC,KAAK,EAAE,IAA6B,EAAE,GAAY,EAAE,EAAE;QACtE,MAAM,UAAU,GAAG,GAAG,CAAC,eAAe,EAAmB,CAAC;QAE1D,sEAAsE;QACtE,oEAAoE;QACpE,+DAA+D;QAC/D,MAAM,QAAQ,GACZ,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,cAAc,CAAC,WAAW,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;QAClF,IAAI,QAAQ,EAAE,CAAC;YACb,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAEhC,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,WAAW,CAAC,QAAQ,CAAC,CAAC;YAE1D,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,MAAM,0BAA0B,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAEjF,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;YACzB,MAAM,YAAY,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC;YAE7C,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;gBAChC,OAAO,EAAE,YAAY;gBACrB,WAAW,EAAE,YAAY;gBACzB,YAAY,EAAE,YAAY;aAC3B,CAAC,CAAC;YACH,WAAW,CAAC,YAAY,CAAC,CAAC;YAE1B,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;gBAC3B,OAAO,EAAE,gBAAgB;gBACzB,WAAW,EAAE,UAAU;gBACvB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBACd,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE;wBAAE,OAAO;oBAClC,MAAM,CAAC,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;oBACrC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;wBAAE,OAAO,4BAA4B,CAAC;gBACzE,CAAC;aACF,CAAC,CAAC;YACH,WAAW,CAAC,OAAO,CAAC,CAAC;YAErB,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;gBAC5B,OAAO,EAAE,aAAa;gBACtB,WAAW,EAAE,UAAU;aACxB,CAAC,CAAC;YACH,WAAW,CAAC,QAAQ,CAAC,CAAC;YAEtB,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;gBAC9B,OAAO,EAAE,eAAe;gBACxB,WAAW,EAAE,UAAU;aACxB,CAAC,CAAC;YACH,WAAW,CAAC,UAAU,CAAC,CAAC;YAExB,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC;YACrE,WAAW,CAAC,SAAS,CAAC,CAAC;YAEvB,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;YACvC,MAAM,IAAI,GAAG,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAE3E,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;YACzC,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC;YAC7C,MAAM,aAAa,GACjB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,YAAY,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;gBACjF,SAAS,CAAC;YAEZ,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;YACzB,IAAI,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;YACxC,MAAM,IAAI,GAAG,MAAM,sBAAsB,CAAC,iBAAiB,EAAE;gBAC3D,QAAQ,EAAE,IAAI,CAAC,EAAE;gBACjB,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,IAAI,YAAY;gBACtD,IAAI;gBACJ,SAAS,EAAE,KAAK;gBAChB,KAAK,EAAE,aAAa;aACrB,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAElB,CAAC,CAAC,KAAK,CAAC,iCAAiC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;YAC3D,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YAC7B,OAAO;QACT,CAAC;QAED,sEAAsE;QACtE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,IAAI,UAAU,CAClB,kBAAkB,EAClB,uDAAuD,CACxD,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAkB,EAAE,aAAa,CAAC,CAAC;QAE1E,IAAI,IAAwB,CAAC;QAC7B,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC5B,IAAI,GAAG,uBAAuB,CAAC,IAAI,CAAC,IAAc,CAAC,CAAC;YACpD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC;gBACrC,MAAM,IAAI,UAAU,CAAC,kBAAkB,EAAE,qBAAqB,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;QACjF,CAAC;QAED,IAAI,KAAyB,CAAC;QAC9B,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC7B,KAAK,GAAG,uBAAuB,CAAC,IAAI,CAAC,KAAe,CAAC,CAAC;YACtD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;gBACvC,MAAM,IAAI,UAAU,CAAC,kBAAkB,EAAE,sBAAsB,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;QACnF,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,QAAQ;YACR,SAAS,EAAE,IAAI,CAAC,SAA+B;YAC/C,IAAI;YACJ,KAAK;YACL,SAAS,EAAG,IAAI,CAAC,SAAgC,IAAI,QAAQ,EAAE;YAC/D,KAAK,EAAE,IAAI,CAAC,KAA2B;SACxC,CAAC,CAAC;QAEH,OAAO,CAAC,iBAAiB,IAAI,CAAC,QAAQ,WAAW,CAAC,CAAC;QACnD,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC/B,CAAC,CAAC,CACH,CAAC;IAEJ,6EAA6E;IAC7E,KAAK;SACF,OAAO,CAAC,aAAa,CAAC;SACtB,WAAW,CAAC,kDAAkD,CAAC;SAC/D,MAAM,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;SAC/C,MAAM,CAAC,eAAe,EAAE,kEAAkE,CAAC;SAC3F,MAAM,CAAC,qBAAqB,EAAE,oBAAoB,CAAC;SACnD,MAAM,CAAC,kBAAkB,EAAE,uBAAuB,CAAC;SACnD,WAAW,CACV,OAAO,EACP;;;;;;;;;;;;;CAaL,CACI;SACA,MAAM,CACL,iBAAiB,CAAC,KAAK,EAAE,EAAU,EAAE,IAA6B,EAAE,GAAY,EAAE,EAAE;QAClF,MAAM,UAAU,GAAG,GAAG,CAAC,eAAe,EAAmB,CAAC;QAC1D,MAAM,OAAO,GAAG,gBAAgB,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAEjD,IAAI,KAAyB,CAAC;QAC9B,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC7B,KAAK,GAAG,uBAAuB,CAAC,IAAI,CAAC,KAAe,CAAC,CAAC;YACtD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;gBACvC,MAAM,IAAI,UAAU,CAAC,kBAAkB,EAAE,sBAAsB,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;QACnF,CAAC;QAED,IACE,IAAI,CAAC,KAAK,KAAK,SAAS;YACxB,KAAK,KAAK,SAAS;YACnB,IAAI,CAAC,SAAS,KAAK,SAAS;YAC5B,IAAI,CAAC,OAAO,KAAK,SAAS,EAC1B,CAAC;YACD,MAAM,IAAI,UAAU,CAClB,kBAAkB,EAClB,8FAA8F,CAC/F,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE;YACtC,KAAK,EAAE,IAAI,CAAC,KAA2B;YACvC,KAAK;YACL,SAAS,EAAE,IAAI,CAAC,SAA+B;YAC/C,OAAO,EAAE,IAAI,CAAC,OAA6B;SAC5C,CAAC,CAAC;QAEH,OAAO,CAAC,iBAAiB,OAAO,WAAW,CAAC,CAAC;QAC7C,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC/B,CAAC,CAAC,CACH,CAAC;IAEJ,6EAA6E;IAC7E,KAAK;SACF,OAAO,CAAC,aAAa,CAAC;SACtB,WAAW,CAAC,wCAAwC,CAAC;SACrD,MAAM,CAAC,WAAW,EAAE,0BAA0B,CAAC;SAC/C,WAAW,CACV,OAAO,EACP;;;;;;;;CAQL,CACI;SACA,MAAM,CACL,iBAAiB,CAAC,KAAK,EAAE,EAAU,EAAE,IAA6B,EAAE,GAAY,EAAE,EAAE;QAClF,KAAK,GAAG,CAAC;QACT,MAAM,OAAO,GAAG,gBAAgB,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAEjD,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,EAAE,GAAG,MAAM,OAAO,CAAC,yBAAyB,OAAO,GAAG,CAAC,CAAC;YAC9D,IAAI,CAAC,EAAE,EAAE,CAAC;gBACR,IAAI,CAAC,UAAU,CAAC,CAAC;gBACjB,OAAO;YACT,CAAC;QACH,CAAC;QAED,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC;QAC3B,OAAO,CAAC,iBAAiB,OAAO,WAAW,CAAC,CAAC;IAC/C,CAAC,CAAC,CACH,CAAC;IAEJ,6EAA6E;IAC7E,KAAK;SACF,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,6DAA6D,CAAC;SAC1E,QAAQ,CAAC,QAAQ,EAAE,yDAAyD,CAAC;SAC7E,MAAM,CAAC,kBAAkB,EAAE,+CAA+C,CAAC;SAC3E,MAAM,CAAC,qBAAqB,EAAE,gEAAgE,CAAC;SAC/F,MAAM,CAAC,cAAc,EAAE,0DAA0D,CAAC;SAClF,MAAM,CAAC,uBAAuB,EAAE,wBAAwB,CAAC;SACzD,MAAM,CAAC,2BAA2B,EAAE,wCAAwC,CAAC;SAC7E,MAAM,CAAC,QAAQ,EAAE,gDAAgD,CAAC;SAClE,WAAW,CACV,OAAO,EACP;;;;;;;;;;;;;;CAcL,CACI;SACA,MAAM,CACL,iBAAiB,CACf,KAAK,EAAE,IAAwB,EAAE,IAA6B,EAAE,GAAY,EAAE,EAAE;QAC9E,MAAM,UAAU,GAAG,GAAG,CAAC,eAAe,EAAmB,CAAC;QAE1D,oEAAoE;QACpE,iFAAiF;QACjF,MAAM,cAAc,GAClB,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,cAAc,CAAC,WAAW,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;QACzE,IAAI,cAAc,EAAE,CAAC;YACnB,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAEhC,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;gBAC/B,OAAO,EAAE,oBAAoB;gBAC7B,WAAW,EAAE,qBAAqB;gBAClC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBACd,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE;wBAAE,OAAO,2BAA2B,CAAC;gBACxE,CAAC;aACF,CAAC,CAAC;YACH,WAAW,CAAC,WAAW,CAAC,CAAC;YAEzB,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;YAEzD,kDAAkD;YAClD,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;YACzB,CAAC;YAAC,MAAM,CAAC;gBACP,CAAC,CAAC,MAAM,CAAC,oBAAoB,QAAQ,GAAG,CAAC,CAAC;gBAC1C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,eAAe;YACf,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,WAAW,CAAC,QAAQ,CAAC,CAAC;YAE1D,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,MAAM,0BAA0B,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAEjF,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;YACzB,MAAM,YAAY,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC;YAE7C,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;gBAChC,OAAO,EAAE,YAAY;gBACrB,WAAW,EAAE,YAAY;gBACzB,YAAY,EAAE,YAAY;aAC3B,CAAC,CAAC;YACH,WAAW,CAAC,YAAY,CAAC,CAAC;YAE1B,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;gBAC3B,OAAO,EAAE,gBAAgB;gBACzB,WAAW,EAAE,4CAA4C;gBACzD,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBACd,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE;wBAAE,OAAO;oBAClC,MAAM,CAAC,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;oBACrC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;wBAAE,OAAO,4BAA4B,CAAC;gBACzE,CAAC;aACF,CAAC,CAAC;YACH,WAAW,CAAC,OAAO,CAAC,CAAC;YAErB,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;gBACjC,OAAO,EAAE,aAAa;gBACtB,WAAW,EAAE,UAAU;aACxB,CAAC,CAAC;YACH,WAAW,CAAC,aAAa,CAAC,CAAC;YAE3B,MAAM,eAAe,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;gBACnC,OAAO,EAAE,eAAe;gBACxB,WAAW,EAAE,UAAU;aACxB,CAAC,CAAC;YACH,WAAW,CAAC,eAAe,CAAC,CAAC;YAE7B,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC;YACrE,WAAW,CAAC,SAAS,CAAC,CAAC;YAEvB,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YAED,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACtD,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAEpC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;YACvC,MAAM,IAAI,GAAG,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC3E,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,IAAI,YAAY,CAAC;YAC9D,MAAM,QAAQ,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE,CAAC;YAC9C,MAAM,UAAU,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,CAAC;YAElD,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;YACzB,IAAI,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;YACtC,iEAAiE;YACjE,+DAA+D;YAC/D,mEAAmE;YACnE,6DAA6D;YAC7D,qEAAqE;YACrE,mEAAmE;YACnE,uBAAuB;YACvB,MAAM,EACJ,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,GAC/B,GAAG,MAAM,iBAAiB,CAAC,UAAU,EAAE,CAAC;YACzC,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;gBACzB,MAAM,IAAI,SAAS,CAAC,gEAAgE,CAAC,CAAC;YACxF,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;YACzE,MAAM,OAAO,GAAG,eAAe,CAC7B,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;gBACzB,WAAW;gBACX,QAAQ;gBACR,QAAQ,EAAE,IAAI,CAAC,EAAE;gBACjB,SAAS;gBACT,IAAI;gBACJ,UAAU,EAAE,QAAQ,KAAK,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;gBAClD,YAAY,EAAE,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;gBACxD,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC;aAClD,CAAC,EACF,cAAc,CACf,CAAC;YACF,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YAC/D,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAElB,CAAC,CAAC,KAAK,CAAC,4BAA4B,MAAM,CAAC,QAAQ,WAAW,CAAC,CAAC;YAChE,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YAC/B,OAAO;QACT,CAAC;QAED,oEAAoE;QACpE,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,UAAU,CAClB,kBAAkB,EAClB,yDAAyD,CAC1D,CAAC;QACJ,CAAC;QAED,0CAA0C;QAC1C,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAE1C,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;QACzB,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,UAAU,CAClB,kBAAkB,EAClB,oCAAoC,QAAQ,GAAG,CAChD,CAAC;QACJ,CAAC;QAED,uBAAuB;QACvB,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACtD,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEpC,uBAAuB;QACvB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,IAAI,UAAU,CAClB,kBAAkB,EAClB,uDAAuD,CACxD,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAkB,EAAE,aAAa,CAAC,CAAC;QAE1E,+BAA+B;QAC/B,IAAI,IAAwB,CAAC;QAC7B,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC5B,IAAI,GAAG,uBAAuB,CAAC,IAAI,CAAC,IAAc,CAAC,CAAC;YACpD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;gBACxC,MAAM,IAAI,UAAU,CAAC,kBAAkB,EAAE,qBAAqB,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;YAC/E,CAAC;QACH,CAAC;QAED,MAAM,YAAY,GAChB,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE;YACtE,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;YAC1B,CAAC,CAAC,SAAS,CAAC;QAEhB,gEAAgE;QAChE,oEAAoE;QACpE,gEAAgE;QAChE,oEAAoE;QACpE,iEAAiE;QACjE,qEAAqE;QACrE,oEAAoE;QACpE,iEAAiE;QACjE,MAAM,YAAY,GAAG,MAAM,uCAAuC,CAAC,QAAQ,CAAC,CAAC;QAC7E,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACnE,MAAM,OAAO,GAAG,eAAe,CAC7B,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;YACzB,WAAW;YACX,QAAQ;YACR,QAAQ;YACR,SAAS,EAAE,IAAI,CAAC,SAA+B;YAC/C,IAAI;YACJ,UAAU,EAAE,IAAI,CAAC,UAAgC;YACjD,YAAY;YACZ,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC;SAClD,CAAC,EACF,cAAc,CACf,CAAC;QACF,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAG,IAAI,CAAC,SAAoB,IAAI,EAAE,CAAC,CAAC;QAEvF,YAAY;QACZ,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;YACtB,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,iBAAiB,MAAM,CAAC,QAAQ,kBAAkB,QAAQ,GAAG,CAAC,CAAC;YACvE,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QACjC,CAAC;IACH,CAAC,CACF,CACF,CAAC;IAEJ,6EAA6E;IAC7E,KAAK;SACF,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,qEAAqE,CAAC;SAClF,QAAQ,CAAC,aAAa,EAAE,oCAAoC,CAAC;SAC7D,MAAM,CACL,kBAAkB,EAClB,oEAAoE,CACrE;SACA,MAAM,CACL,uBAAuB,EACvB,oEAAoE,CACrE;SACA,MAAM,CACL,eAAe,EACf,2EAA2E,CAC5E;SACA,MAAM,CACL,cAAc,EACd,2EAA2E,CAC5E;SACA,MAAM,CAAC,sBAAsB,EAAE,4CAA4C,CAAC;SAC5E,MAAM,CAAC,cAAc,EAAE,4CAA4C,CAAC;SACpE,MAAM,CAAC,uBAAuB,EAAE,yCAAyC,CAAC;SAC1E,MAAM,CAAC,2BAA2B,EAAE,2CAA2C,CAAC;SAChF,MAAM,CAAC,UAAU,EAAE,wDAAwD,CAAC;SAC5E,MAAM,CAAC,QAAQ,EAAE,gEAAgE,CAAC;SAClF,WAAW,CACV,OAAO,EACP;;;;;;;;;;;;;;;;;CAiBL,CACI;SACA,MAAM,CACL,iBAAiB,CAAC,KAAK,EAAE,SAA6B,EAAE,IAA6B,EAAE,EAAE;QACvF,4EAA4E;QAC5E,yEAAyE;QACzE,MAAM,cAAc,GAClB,IAAI,CAAC,QAAQ,KAAK,SAAS;YACzB,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAkB,EAAE,aAAa,CAAC;YAC1D,CAAC,CAAC,SAAS,CAAC;QAChB,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/D,MAAM,UAAU,GAAG,gCAAgC,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC1E,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAE1C,IAAI,SAAS,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC/B,MAAM,IAAI,UAAU,CAClB,kBAAkB,EAClB,4EAA4E,CAC7E,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,GAAG,MAAM,WAAW,CAAC,QAAQ,CAAC,CAAC;QAClE,MAAM,aAAa,GAAG,wBAAwB,CAAC,iBAAiB,CAAC,CAAC;QAElE,wEAAwE;QACxE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,KAAK,GAAG,MAAM,gBAAgB,EAAE,CAAC;YACvC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,UAAU,CAClB,WAAW,EACX,6FAA6F,CAC9F,CAAC;YACJ,CAAC;YACD,MAAM,UAAU,CACd,iBAAiB,EACjB,MAAM,EACN,KAAK,CAAC,SAAS,EACf;gBACE,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC;gBACrC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC;gBACnC,mBAAmB,EAAE,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC;gBACvD,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,OAAO;gBACvC,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,aAAa,EAAE,KAAK,CAAC,OAAO;gBAC5B,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,YAAY,EAAE,KAAK,CAAC,YAAY;aACjC,EACD,EAAE,aAAa,EAAE,CAClB,CAAC;YACF,OAAO;QACT,CAAC;QAED,wEAAwE;QACxE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;YAEpC,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;gBAC1B,OAAO,EAAE,oBAAoB;gBAC7B,WAAW,EAAE,yBAAyB;gBACtC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBACd,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE;wBAAE,OAAO,gCAAgC,CAAC;gBAC7E,CAAC;aACF,CAAC,CAAC;YACH,WAAW,CAAC,MAAM,CAAC,CAAC;YAEpB,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YAEpD,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;YACzB,CAAC;YAAC,MAAM,CAAC;gBACP,CAAC,CAAC,MAAM,CAAC,yBAAyB,QAAQ,GAAG,CAAC,CAAC;gBAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,mCAAmC;YACnC,MAAM,eAAe,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtC,OAAO,EAAE,oDAAoD;gBAC7D,YAAY,EAAE,KAAK;aACpB,CAAC,CAAC;YACH,WAAW,CAAC,eAAe,CAAC,CAAC;YAC7B,MAAM,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;YAE9C,IAAI,WAAmB,CAAC;YACxB,IAAI,aAAqB,CAAC;YAC1B,IAAI,eAAuB,CAAC;YAE5B,IAAI,YAAY,EAAE,CAAC;gBACjB,0EAA0E;gBAC1E,aAAa,GAAG,CAAC,CAAC;gBAClB,eAAe,GAAG,YAAY,CAAC;gBAE/B,MAAM,cAAc,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;oBAClC,OAAO,EAAE,cAAc;oBACvB,WAAW,EAAE,OAAO;oBACpB,YAAY,EAAE,OAAO;iBACtB,CAAC,CAAC;gBACH,WAAW,CAAC,cAAc,CAAC,CAAC;gBAC5B,WAAW,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,EAAE,IAAI,OAAO,CAAC;YACzD,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,MAAM,0BAA0B,CAAC,iBAAiB,CAAC,CAAC,CAAC;gBACjF,aAAa,GAAG,IAAI,CAAC,EAAE,CAAC;gBACxB,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC;gBAE5B,MAAM,cAAc,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;oBAClC,OAAO,EAAE,cAAc;oBACvB,WAAW,EAAE,IAAI,CAAC,IAAI;oBACtB,YAAY,EAAE,IAAI,CAAC,IAAI;iBACxB,CAAC,CAAC;gBACH,WAAW,CAAC,cAAc,CAAC,CAAC;gBAC5B,WAAW,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC;YAC3D,CAAC;YAED,MAAM,aAAa,GAAG,YAAY;gBAChC,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;oBACd,OAAO,EAAE,6CAA6C;oBACtD,YAAY,EAAE,KAAK;iBACpB,CAAC,CAAC;YACP,IAAI,OAAO,aAAa,KAAK,SAAS;gBAAE,WAAW,CAAC,aAAa,CAAC,CAAC;YAEnE,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC;gBACnC,OAAO,EAAE,aAAa;gBACtB,YAAY,EAAE,OAAO;gBACrB,OAAO,EAAE;oBACP;wBACE,KAAK,EAAE,OAAO;wBACd,KAAK,EAAE,wBAAwB;wBAC/B,IAAI,EAAE,wEAAwE;qBAC/E;oBACD;wBACE,KAAK,EAAE,YAAY;wBACnB,KAAK,EAAE,+BAA+B;wBACtC,IAAI,EAAE,6CAA6C;qBACpD;iBACF;aACF,CAAC,CAAC;YACH,WAAW,CAAC,aAAa,CAAC,CAAC;YAC3B,MAAM,UAAU,GAAG,oBAAoB,CAAC,aAAa,CAAC,CAAC;YAEvD,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;gBAC3B,OAAO,EAAE,mBAAmB;gBAC5B,WAAW,EAAE,UAAU;gBACvB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBACd,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE;wBAAE,OAAO;oBAClC,MAAM,CAAC,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;oBACrC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;wBAAE,OAAO,4BAA4B,CAAC;gBACzE,CAAC;aACF,CAAC,CAAC;YACH,WAAW,CAAC,OAAO,CAAC,CAAC;YAErB,MAAM,eAAe,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;gBACnC,OAAO,EAAE,eAAe;gBACxB,WAAW,EAAE,UAAU;aACxB,CAAC,CAAC;YACH,WAAW,CAAC,eAAe,CAAC,CAAC;YAE7B,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC;gBACjC,OAAO,EAAE,aAAa;gBACtB,WAAW,EAAE,UAAU;aACxB,CAAC,CAAC;YACH,WAAW,CAAC,aAAa,CAAC,CAAC;YAE3B,MAAM,UAAU,CACd,iBAAiB,EACjB,MAAM,EACN,QAAQ,EACR;gBACE,QAAQ,EAAE,aAAa;gBACvB,UAAU,EAAE,eAAe;gBAC3B,WAAW;gBACX,UAAU;gBACV,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;gBACzD,SAAS,EAAE,YAAY;gBACvB,mBAAmB,EAAE,IAAI;gBACzB,IAAI,EAAE,gCAAgC,CAAC,OAAO,EAAE,cAAc,CAAC;gBAC/D,YAAY,EACV,MAAM,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS;gBACpF,UAAU,EACR,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS;aACjF,EACD,EAAE,aAAa,EAAE,CAClB,CAAC;YACF,OAAO;QACT,CAAC;QAED,wEAAwE;QACxE,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,UAAU,CAClB,kBAAkB,EAClB,sFAAsF,CACvF,CAAC;QACJ,CAAC;QAED,MAAM,UAAU,GACd,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE;YAClE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE;YACxB,CAAC,CAAC,SAAS,CAAC;QAChB,MAAM,YAAY,GAChB,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE;YACtE,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;YAC1B,CAAC,CAAC,SAAS,CAAC;QAEhB,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACjC,MAAM,IAAI,UAAU,CAClB,kBAAkB,EAClB,+FAA+F,CAChG,CAAC;QACJ,CAAC;QAED,IAAI,QAAgB,CAAC;QACrB,IAAI,UAAkB,CAAC;QAEvB,IAAI,SAAS,EAAE,CAAC;YACd,+DAA+D;YAC/D,QAAQ,GAAG,CAAC,CAAC;YACb,UAAU,GAAG,YAAY,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,QAAQ,GAAG,cAAwB,CAAC;YAEpC,MAAM,OAAO,GAAG,MAAM,YAAY,CAChC,QAAQ,EACR,MAAM,0BAA0B,CAAC,iBAAiB,CAAC,CACpD,CAAC;YACF,UAAU,GAAG,OAAO,CAAC,cAAc,EAAE,IAAI,IAAI,WAAW,QAAQ,EAAE,CAAC;QACrE,CAAC;QAED,MAAM,WAAW,GAAI,IAAI,CAAC,WAAkC,IAAI,UAAU,CAAC;QAE3E,MAAM,QAAQ,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAE/C,MAAM,UAAU,CACd,iBAAiB,EACjB,MAAM,EACN,QAAQ,EACR;YACE,QAAQ;YACR,UAAU;YACV,WAAW;YACX,UAAU,EAAE,gBAAgB;YAC5B,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC;YACpC,SAAS;YACT,IAAI,EAAE,UAAU;YAChB,UAAU;YACV,YAAY;SACb,EACD,EAAE,aAAa,EAAE,CAClB,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;IAEJ,OAAO,KAAK,CAAC;AACf,CAAC;AAED,iFAAiF;AAEjF,SAAS,UAAU,CAAC,OAAe;IACjC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;IACnC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;IACnC,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;AACjD,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAyB,EAAE,QAAgB;IACpE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAEtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,mBAAmB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,mBAAmB,MAAM,CAAC,WAAW,MAAM,QAAQ,GAAG,CAAC,CAAC;IACpE,OAAO,CAAC,GAAG,CAAC,mBAAmB,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;IAEpD,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;IACxE,OAAO,CAAC,GAAG,CACT,mBAAmB,SAAS,kBAAkB,MAAM,CAAC,gBAAgB,gBAAgB,MAAM,CAAC,cAAc,iBAAiB,CAC5H,CAAC;IAEF,aAAa;IACb,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC7B,MAAM,MAAM,GAA2B;YACrC,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,UAAU;YACpB,MAAM,EAAE,QAAQ;YAChB,QAAQ,EAAE,UAAU;YACpB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,MAAM;SACb,CAAC;QACF,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAClD,MAAM,CAAC,GAAG,UAAU,CAAC,GAA8B,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC7B,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;IACH,CAAC;IAED,SAAS;IACT,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,GAAG,MAAM,CAAC;IAC7F,IAAI,kBAAkB,GAAG,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACzB,IAAI,cAAc,GAAG,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QACtF,IAAI,gBAAgB,GAAG,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAC1F,IAAI,mBAAmB,GAAG,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;QAChG,OAAO,CAAC,GAAG,CAAC,mBAAmB,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"sales.d.ts","sourceRoot":"","sources":["../../src/commands/sales.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,OAAO,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAO7D,YAAY,EAAE,IAAI,EAAE,CAAC;AAarB,KAAK,aAAa,GAAG;IACnB,UAAU,IAAI,OAAO,CAAC;QAAE,IAAI,EAAE;YAAE,OAAO,EAAE;gBAAE,MAAM,EAAE,MAAM,CAAA;aAAE,GAAG,IAAI,CAAA;SAAE,CAAA;KAAE,CAAC,CAAC;CACzE,CAAC;AAEF,iGAAiG;AACjG,wBAAsB,qBAAqB,CACzC,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,SAAS,GAAG,UAAU,GAAG,WAAW,CAAC,EAClE,WAAW,GAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAa,EACtF,YAAY,GAAE,MAAM,IAAsB,GACzC,OAAO,CAAC,IAAI,CAAC,CAiBf;AA6GD;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAwR3C"}
1
+ {"version":3,"file":"sales.d.ts","sourceRoot":"","sources":["../../src/commands/sales.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,OAAO,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAY7D,YAAY,EAAE,IAAI,EAAE,CAAC;AAarB,KAAK,aAAa,GAAG;IACnB,UAAU,IAAI,OAAO,CAAC;QAAE,IAAI,EAAE;YAAE,OAAO,EAAE;gBAAE,MAAM,EAAE,MAAM,CAAA;aAAE,GAAG,IAAI,CAAA;SAAE,CAAA;KAAE,CAAC,CAAC;CACzE,CAAC;AAEF,iGAAiG;AACjG,wBAAsB,qBAAqB,CACzC,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,SAAS,GAAG,UAAU,GAAG,WAAW,CAAC,EAClE,WAAW,GAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAa,EACtF,YAAY,GAAE,MAAM,IAAsB,GACzC,OAAO,CAAC,IAAI,CAAC,CAiBf;AAkHD;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAiR3C"}
@@ -7,7 +7,7 @@ import { confirm, todayIso } from '../lib/prompts.js';
7
7
  import { listSales, recordSale, updateSale, deleteSale } from '../lib/sales.js';
8
8
  import { pickRoast, guardCancel } from '../lib/interactive/forms.js';
9
9
  import { getConfigValue } from '../lib/config.js';
10
- import { parseStrictFiniteNumber } from '../lib/strict-number.js';
10
+ import { parseStrictFiniteNumber, parseStrictInt4Id, parseStrictOffset, parseStrictPositiveCount, } from '../lib/strict-number.js';
11
11
  /** Keep selection credential-scoped, then refresh and pin the identity at the write boundary. */
12
12
  export async function recordInteractiveSale(sessionSource, input, selectRoast = pickRoast, onWriteStart = () => undefined) {
13
13
  const { data: { session: selectionSession }, } = await sessionSource.getSession();
@@ -23,12 +23,17 @@ export async function recordInteractiveSale(sessionSource, input, selectRoast =
23
23
  return recordSale({ roastId: roast.id, ...input }, writeSession.apiKey);
24
24
  }
25
25
  function parsePositiveIntegerOption(flag, value) {
26
- if (!/^\d+$/.test(value)) {
27
- throw new PrvrsError('INVALID_ARGUMENT', `Invalid ${flag}: "${value}". Must be a positive integer.`);
26
+ const parsed = parseStrictInt4Id(value);
27
+ if (!Number.isFinite(parsed)) {
28
+ throw new PrvrsError('INVALID_ARGUMENT', `Invalid ${flag}: "${value}". Must be an integer between 1 and 2147483647.`);
28
29
  }
29
- const parsed = Number(value);
30
- if (!Number.isInteger(parsed) || parsed <= 0) {
31
- throw new PrvrsError('INVALID_ARGUMENT', `Invalid ${flag}: "${value}". Must be a positive integer.`);
30
+ return parsed;
31
+ }
32
+ function parseSalesListCount(value, flag) {
33
+ const parsed = flag === '--offset' ? parseStrictOffset(value) : parseStrictPositiveCount(value);
34
+ if (!Number.isFinite(parsed)) {
35
+ const requirement = flag === '--offset' ? 'a non-negative integer' : 'a positive integer';
36
+ throw new PrvrsError('INVALID_ARGUMENT', `Invalid ${flag}: "${value}". Must be ${requirement}.`);
32
37
  }
33
38
  return parsed;
34
39
  }
@@ -131,10 +136,9 @@ Notes:
131
136
  if (opts.coffeeId !== undefined) {
132
137
  greenCoffeeInvId = parsePositiveIntegerOption('--coffee-id', opts.coffeeId);
133
138
  }
134
- const offsetVal = parseInt(opts.offset, 10);
135
139
  const data = await listSales({
136
- limit: Math.max(1, parseInt(opts.limit, 10)),
137
- offset: isNaN(offsetVal) || offsetVal < 0 ? 0 : offsetVal,
140
+ limit: parseSalesListCount(opts.limit, '--limit'),
141
+ offset: parseSalesListCount(opts.offset, '--offset'),
138
142
  greenCoffeeInvId,
139
143
  dateStart: opts.dateStart,
140
144
  dateEnd: opts.dateEnd,
@@ -257,10 +261,7 @@ Notes:
257
261
  `)
258
262
  .action(withErrorHandling(async (id, opts, cmd) => {
259
263
  const globalOpts = cmd.optsWithGlobals();
260
- const saleId = parseInt(id, 10);
261
- if (isNaN(saleId)) {
262
- throw new PrvrsError('INVALID_ARGUMENT', `Invalid sale ID: "${id}".`);
263
- }
264
+ const saleId = parsePositiveIntegerOption('sale ID', id);
264
265
  let oz;
265
266
  if (opts.oz !== undefined) {
266
267
  oz = parseStrictFiniteNumber(opts.oz);
@@ -304,10 +305,7 @@ Notes:
304
305
  `)
305
306
  .action(withErrorHandling(async (id, opts, cmd) => {
306
307
  void cmd;
307
- const saleId = parseInt(id, 10);
308
- if (isNaN(saleId)) {
309
- throw new PrvrsError('INVALID_ARGUMENT', `Invalid sale ID: "${id}".`);
310
- }
308
+ const saleId = parsePositiveIntegerOption('sale ID', id);
311
309
  if (!opts.yes) {
312
310
  const ok = await confirm(`Delete sale #${saleId}?`);
313
311
  if (!ok) {
@@ -1 +1 @@
1
- {"version":3,"file":"sales.js","sourceRoot":"","sources":["../../src/commands/sales.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sales.js","sourceRoot":"","sources":["../../src/commands/sales.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tasting.d.ts","sourceRoot":"","sources":["../../src/commands/tasting.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,OAAO,EAGL,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAMlF,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,CAAC;AAsBlD;;;;GAIG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,CAgO7C"}
1
+ {"version":3,"file":"tasting.d.ts","sourceRoot":"","sources":["../../src/commands/tasting.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,OAAO,EAGL,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAOlF,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,CAAC;AAmClD;;;;GAIG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,CA0N7C"}
@@ -6,22 +6,31 @@ import { requireAuth } from '../lib/auth-guard.js';
6
6
  import { getTastingNotes, rateCoffee, isValidCuppingScore, parseCuppingScore, } from '../lib/tasting.js';
7
7
  import { pickBean, guardCancel } from '../lib/interactive/forms.js';
8
8
  import { getConfigValue } from '../lib/config.js';
9
+ import { parseStrictInt4Id, parseStrictInteger } from '../lib/strict-number.js';
9
10
  export { isValidCuppingScore, parseCuppingScore };
10
11
  // ─── Helpers ──────────────────────────────────────────────────────────────────
12
+ const CUPPING_SCORE_FLAGS = ['aroma', 'body', 'acidity', 'sweetness', 'aftertaste'];
11
13
  /** Prompt for a single cupping dimension score. */
12
14
  async function promptCuppingScore(dimension) {
13
15
  const raw = await p.text({
14
16
  message: `${dimension} (1-5)`,
15
17
  placeholder: '3',
16
18
  validate: (v) => {
17
- const n = parseInt(String(v), 10);
18
- if (isNaN(n) || n < 1 || n > 5 || !Number.isInteger(n)) {
19
+ const n = parseStrictInteger(String(v), 1, 5);
20
+ if (!Number.isFinite(n)) {
19
21
  return `Must be an integer between 1 and 5.`;
20
22
  }
21
23
  },
22
24
  });
23
25
  guardCancel(raw);
24
- return parseInt(String(raw), 10);
26
+ return parseStrictInteger(String(raw), 1, 5);
27
+ }
28
+ function parseTastingId(value, label) {
29
+ const parsed = parseStrictInt4Id(value);
30
+ if (!Number.isFinite(parsed)) {
31
+ throw new PrvrsError('INVALID_ARGUMENT', `Invalid ${label}: "${value}". Must be an integer between 1 and 2147483647.`);
32
+ }
33
+ return parsed;
25
34
  }
26
35
  // ─── Command builder ──────────────────────────────────────────────────────────
27
36
  /**
@@ -57,10 +66,7 @@ Notes:
57
66
  if (!['user', 'supplier', 'both'].includes(filter)) {
58
67
  throw new PrvrsError('INVALID_OPTION', `Invalid --filter value "${filter}". Use: user, supplier, or both.`);
59
68
  }
60
- const catalogId = parseInt(beanId, 10);
61
- if (isNaN(catalogId)) {
62
- throw new PrvrsError('INVALID_ARGUMENT', `Invalid bean ID: "${beanId}".`);
63
- }
69
+ const catalogId = parseTastingId(beanId, 'bean ID');
64
70
  const result = await getTastingNotes(catalogId, filter);
65
71
  if (result.supplier === null && result.user === null) {
66
72
  info(`No tasting notes found for bean ID ${catalogId} (filter: ${filter}).`);
@@ -97,11 +103,14 @@ Required (flag mode): <bean-id> + all five score flags (--aroma, --body, --acidi
97
103
  `)
98
104
  .action(withErrorHandling(async (beanId, opts, cmd) => {
99
105
  const globalOpts = cmd.optsWithGlobals();
100
- const { credentialContext } = await requireAuth('member');
101
106
  // ── Interactive form mode ────────────────────────────────────────
102
- // Auto-enter form mode if config form-mode is true and required args are missing
103
- const formMode = opts.form || (!opts.id && (await getConfigValue('form-mode')) === 'true');
107
+ // Automatic form mode is only safe when the caller supplied no
108
+ // explicit target or scores. Explicit --form always wins.
109
+ const hasExplicitRateInput = beanId !== undefined || CUPPING_SCORE_FLAGS.some((flag) => opts[flag] !== undefined);
110
+ const formMode = opts.form === true ||
111
+ (!hasExplicitRateInput && (await getConfigValue('form-mode')) === 'true');
104
112
  if (formMode) {
113
+ const { credentialContext } = await requireAuth('member');
105
114
  p.intro('Rate Coffee');
106
115
  const { data: { session: pickerSession }, } = await credentialContext.getSession();
107
116
  if (!pickerSession?.apiKey) {
@@ -148,13 +157,9 @@ Required (flag mode): <bean-id> + all five score flags (--aroma, --body, --acidi
148
157
  if (!beanId) {
149
158
  throw new PrvrsError('INVALID_ARGUMENT', 'Missing bean-id argument. Use --form for interactive mode.');
150
159
  }
151
- const inventoryId = parseInt(beanId, 10);
152
- if (isNaN(inventoryId)) {
153
- throw new PrvrsError('INVALID_ARGUMENT', `Invalid bean ID: "${beanId}". Pass a green_coffee_inv ID.`);
154
- }
160
+ const inventoryId = parseTastingId(beanId, 'bean ID');
155
161
  // Require all score flags in flag-based mode
156
- const requiredFlags = ['aroma', 'body', 'acidity', 'sweetness', 'aftertaste'];
157
- for (const flag of requiredFlags) {
162
+ for (const flag of CUPPING_SCORE_FLAGS) {
158
163
  if (opts[flag] === undefined) {
159
164
  throw new PrvrsError('INVALID_ARGUMENT', `Missing --${flag}. Use --form for interactive mode.`);
160
165
  }
@@ -165,6 +170,7 @@ Required (flag mode): <bean-id> + all five score flags (--aroma, --body, --acidi
165
170
  const acidity = parseCuppingScore(opts.acidity, 'acidity');
166
171
  const sweetness = parseCuppingScore(opts.sweetness, 'sweetness');
167
172
  const aftertaste = parseCuppingScore(opts.aftertaste, 'aftertaste');
173
+ const { credentialContext } = await requireAuth('member');
168
174
  const { data: { session: writeSession }, } = await credentialContext.getSession();
169
175
  if (!writeSession?.apiKey) {
170
176
  throw new AuthError('Session expired. Run `purvey auth login` and retry.');