@sudobility/music_drawing 0.0.36 → 0.0.37

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 (47) hide show
  1. package/dist/index.d.ts +5 -2
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +5 -2
  4. package/dist/index.js.map +1 -1
  5. package/dist/keyboard-geometry.d.ts +6 -18
  6. package/dist/keyboard-geometry.d.ts.map +1 -1
  7. package/dist/keyboard-geometry.js.map +1 -1
  8. package/dist/keyboard-keys.d.ts +2 -2
  9. package/dist/keyboard-keys.d.ts.map +1 -1
  10. package/dist/keyboard-keys.js.map +1 -1
  11. package/dist/pagination.d.ts +1 -7
  12. package/dist/pagination.d.ts.map +1 -1
  13. package/dist/pagination.js +0 -4
  14. package/dist/pagination.js.map +1 -1
  15. package/dist/playback-binding.d.ts +2 -0
  16. package/dist/playback-binding.d.ts.map +1 -1
  17. package/dist/playback-binding.js +13 -0
  18. package/dist/playback-binding.js.map +1 -1
  19. package/dist/playback-scroll.d.ts +23 -1
  20. package/dist/playback-scroll.d.ts.map +1 -1
  21. package/dist/playback-scroll.js +0 -21
  22. package/dist/playback-scroll.js.map +1 -1
  23. package/dist/playing-pitches.d.ts +44 -0
  24. package/dist/playing-pitches.d.ts.map +1 -0
  25. package/dist/playing-pitches.js +50 -0
  26. package/dist/playing-pitches.js.map +1 -0
  27. package/dist/print-plan.d.ts +2 -19
  28. package/dist/print-plan.d.ts.map +1 -1
  29. package/dist/print-plan.js +1 -33
  30. package/dist/print-plan.js.map +1 -1
  31. package/dist/score-canvas.d.ts +20 -23
  32. package/dist/score-canvas.d.ts.map +1 -1
  33. package/dist/score-canvas.js +32 -2
  34. package/dist/score-canvas.js.map +1 -1
  35. package/dist/types.d.ts +5 -13
  36. package/dist/types.d.ts.map +1 -1
  37. package/dist/types.js +0 -17
  38. package/dist/types.js.map +1 -1
  39. package/package.json +3 -3
  40. package/dist/out-of-range.d.ts +0 -67
  41. package/dist/out-of-range.d.ts.map +0 -1
  42. package/dist/out-of-range.js +0 -101
  43. package/dist/out-of-range.js.map +0 -1
  44. package/dist/press.d.ts +0 -66
  45. package/dist/press.d.ts.map +0 -1
  46. package/dist/press.js +0 -64
  47. package/dist/press.js.map +0 -1
@@ -9,11 +9,11 @@
9
9
  * apps therefore answer "where is tick N" and "what is under this point" with
10
10
  * the same code.
11
11
  */
12
- import type { Pitch, PitchDisplay, Score, SoundingNote } from '@sudobility/music_types';
12
+ import type { LayoutMode, PitchDisplay, Score, ScoreCanvasHit, SoundingNote } from '@sudobility/music_types';
13
13
  import type { CanvasRenderOptions, CanvasRenderResult } from './canvas-renderer.js';
14
14
  import type { LayoutPlan } from './layout.js';
15
15
  import type { PlaybackScrollTarget } from './playback-scroll.js';
16
- import type { LayoutMode, RenderTheme } from './types.js';
16
+ import type { RenderTheme } from './types.js';
17
17
  import type { CursorGeometry, CursorMotion, CursorPath } from './cursor.js';
18
18
  import type { PaintFrame } from './layered-paint.js';
19
19
  /** What the canvas is showing and at what size. `width`/`height` are view px. */
@@ -32,27 +32,6 @@ export type ViewPoint = {
32
32
  x: number;
33
33
  y: number;
34
34
  };
35
- export type ScoreCanvasHit = {
36
- kind: 'trackGutter';
37
- trackId: string;
38
- } | {
39
- kind: 'measureNumber';
40
- measureIndex: number;
41
- } | {
42
- kind: 'note';
43
- /** Every event sharing the notehead's box: a chord is one target. */
44
- eventIds: string[];
45
- trackId: string;
46
- measureIndex: number;
47
- tick: number;
48
- } | {
49
- kind: 'stave';
50
- trackId: string;
51
- measureIndex: number;
52
- tick: number;
53
- /** The pitch *as drawn* at that point, when the point is on a stave. */
54
- pitch: Pitch | null;
55
- };
56
35
  /** What a platform provides. */
57
36
  export interface ScoreCanvasSurface {
58
37
  /**
@@ -152,6 +131,7 @@ export declare class ScoreCanvas {
152
131
  private path;
153
132
  private shownMotion;
154
133
  private cancelWrap;
134
+ private readonly systemListeners;
155
135
  /** The look-ahead preparation in progress, and the window it is for. */
156
136
  private cancelLookahead;
157
137
  private lookaheadKey;
@@ -235,6 +215,23 @@ export declare class ScoreCanvas {
235
215
  */
236
216
  get highlightLatencySeconds(): number;
237
217
  subscribeHighlightLatency(listener: (seconds: number) => void): () => void;
218
+ /**
219
+ * The moving cursor has crossed into a new system — told at the tick, before
220
+ * the new path is shown.
221
+ *
222
+ * Whoever follows the music has to hear about this *here* rather than from
223
+ * the next position report, because the caret is placed in content
224
+ * coordinates: a path in a system the view has not scrolled to is a caret
225
+ * drawn off screen. The canvas hands the path over on its own timeout, exact
226
+ * to the tick, while the reports arrive about 30 times a second — so the
227
+ * scroll used to land 8–44ms late (measured on the Mac, a dense eleven-track
228
+ * score) and the caret was simply missing for that long at every wrap, once
229
+ * every two seconds.
230
+ *
231
+ * Only the *when* is published: whether to follow at all, and where to, stay
232
+ * with the caller and `followTarget`.
233
+ */
234
+ subscribeCursorSystem(listener: (tick: number) => void): () => void;
238
235
  /** Paint now rather than on the next frame — for a host that must, like a resize. */
239
236
  paintNow(): void;
240
237
  dispose(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"score-canvas.d.ts","sourceRoot":"","sources":["../src/score-canvas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"score-canvas.d.ts","sourceRoot":"","sources":["../src/score-canvas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EACV,UAAU,EACV,YAAY,EACZ,KAAK,EACL,cAAc,EACd,YAAY,EACb,MAAM,yBAAyB,CAAC;AAOjC,OAAO,KAAK,EACV,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,sBAAsB,CAAC;AAO9B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAY9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAIjE,OAAO,KAAK,EAAiB,WAAW,EAAE,MAAM,YAAY,CAAC;AAU7D,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD,iFAAiF;AACjF,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,UAAU,CAAC;IACvB,KAAK,EAAE,WAAW,CAAC;IACnB,wDAAwD;IACxD,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,8EAA8E;AAC9E,MAAM,MAAM,SAAS,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjD,gCAAgC;AAChC,MAAM,WAAW,kBAAkB;IACjC;;;;;;;;;OASG;IACH,KAAK,CACH,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,mBAAmB,EAC5B,KAAK,EAAE,UAAU,GAChB,kBAAkB,GAAG,IAAI,CAAC;IAC7B;;;OAGG;IACH,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;IAChE,8CAA8C;IAC9C,QAAQ,CAAC,CAAC,MAAM,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAAC;IACtE;;;;;OAKG;IACH,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,mBAAmB,GAAG,MAAM,CAAC;IAC7D;;;;;OAKG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC;AAED;;;;;;GAMG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,iEAAiE;IACjE,KAAK,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC;IACxC,sDAAsD;IACtD,OAAO,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,IAAI,CAAC;IACtD,2BAA2B;IAC3B,GAAG,IAAI,MAAM,CAAC;CACf,CAAC;AAgBF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,kBAAkB,CAAC;IAC5B,SAAS,EAAE,eAAe,CAAC;CAC5B,CAAC;AAEF,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;IAE5C,OAAO,CAAC,KAAK,CAAsB;IACnC,2EAA2E;IAC3E,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,IAAI,CAAgC;IAC5C,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,SAAS,CAAK;IAEtB,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,OAAO,CAA+B;IAC9C,OAAO,CAAC,WAAW,CAAyB;IAC5C,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,aAAa,CAAyB;IAC9C,OAAO,CAAC,kBAAkB,CAAkC;IAE5D,OAAO,CAAC,SAAS,CAAmC;IACpD,oFAAoF;IACpF,OAAO,CAAC,WAAW,CAA2B;IAC9C,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,WAAW,CAA6B;IAChD,wFAAwF;IACxF,OAAO,CAAC,gBAAgB,CAAM;IAE9B;;;;OAIG;IACH,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,SAAS,CAAQ;IACzB;;;OAGG;IACH,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,kBAAkB,CAIV;IAEhB,iEAAiE;IACjE,OAAO,CAAC,oBAAoB,CAAuB;IACnD,OAAO,CAAC,gBAAgB,CAAgB;IACxC,OAAO,CAAC,gBAAgB,CAAqC;IAC7D,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAwC;IAE3E,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,IAAI,CAA2B;IACvC,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,UAAU,CAA6B;IAC/C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAqC;IAErE,wEAAwE;IACxE,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,aAAa,CAA2B;gBAEpC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,kBAAkB;IAOtD;;;;;;;;;;;;;;;OAeG;IACH,cAAc,CACZ,KAAK,EAAE,KAAK,GAAG,IAAI,EACnB,YAAY,GAAE,YAAwB,GACrC,IAAI;IAaP;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,GAAG,IAAI;IAOnC,OAAO,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI;IAwBpC,kBAAkB;IAClB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAU1C,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIjC,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAOzC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAS5C,eAAe,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,GAAG,IAAI;IAWrD,gBAAgB,CACd,GAAG,EAAE,SAAS,MAAM,EAAE,EACtB,OAAO,GAAE;QAAE,WAAW,CAAC,EAAE,OAAO,CAAA;KAAO,GACtC,IAAI;IAaP,mBAAmB,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI;IAYjD,kBAAkB,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI;IAShD,0EAA0E;IAC1E,IAAI,IAAI,IAAI,UAAU,GAAG,IAAI,CAK5B;IAED,6EAA6E;IAC7E,IAAI,KAAK,IAAI,kBAAkB,GAAG,IAAI,CAErC;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,0DAA0D;IAC1D,WAAW,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAShD,kBAAkB;IAClB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI;IAYnD,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,cAAc,GAAG,IAAI;IAqDhD,8DAA8D;IAC9D,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI;IAavC,qEAAqE;IACrE,aAAa,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,MAAM,EAAE;IAanD,mFAAmF;IACnF,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAQ3C;;;OAGG;IACH,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAW3C,0EAA0E;IAC1E,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,GAAG,IAAI;IA0BvD,+EAA+E;IAC/E,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAUlC;;;;;;;;;;OAUG;IACH,IAAI,uBAAuB,IAAI,MAAM,CAEpC;IAED,yBAAyB,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;IAK1E;;;;;;;;;;;;;;;OAeG;IACH,qBAAqB,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;IAKnE,qFAAqF;IACrF,QAAQ,IAAI,IAAI;IAShB,OAAO,IAAI,IAAI;IAWf,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,SAAS;IAOjB,OAAO,CAAC,gBAAgB;IASxB,0EAA0E;IAC1E,OAAO,CAAC,mBAAmB;IAU3B,OAAO,CAAC,aAAa;IAKrB;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,aAAa;IAoBrB,4EAA4E;IAC5E,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,aAAa;IAkBrB,OAAO,CAAC,KAAK;IAwCb;;;;;;;OAOG;IACH,OAAO,CAAC,iBAAiB;IAyDzB,OAAO,CAAC,gBAAgB;IAsBxB,OAAO,CAAC,aAAa;IAuDrB,OAAO,CAAC,IAAI;CAQb"}
@@ -1,9 +1,8 @@
1
- import { displayScore, measureAtTick, measureIndexOf, } from '@sudobility/music_types';
1
+ import { displayScore, measureAtTick, measureIndexOf, outOfRangeNoteIds, } from '@sudobility/music_types';
2
2
  import { TRACK_INFO_WIDTH, boxForMeasureIndex, computeLayout, resolveZoom, } from './layout.js';
3
3
  import { eventIdAtPoint, eventIdsAtPoint, eventIdsInBox, measureAtPoint, measureIndexAtGutterPoint, pitchAtStavePoint, } from './hit-test.js';
4
4
  import { trackIdAtGutterPoint } from './track-gutter.js';
5
5
  import { noteColorsFor } from './note-colors.js';
6
- import { outOfRangeNoteIds } from './out-of-range.js';
7
6
  import { playbackScrollTarget } from './playback-scroll.js';
8
7
  import { tickForPoint } from './playhead.js';
9
8
  import { shouldShowTrackInfo } from './types.js';
@@ -63,6 +62,7 @@ export class ScoreCanvas {
63
62
  this.path = null;
64
63
  this.shownMotion = null;
65
64
  this.cancelWrap = null;
65
+ this.systemListeners = new Set();
66
66
  /** The look-ahead preparation in progress, and the window it is for. */
67
67
  this.cancelLookahead = null;
68
68
  this.lookaheadKey = null;
@@ -387,6 +387,26 @@ export class ScoreCanvas {
387
387
  this.highlightListeners.add(listener);
388
388
  return () => this.highlightListeners.delete(listener);
389
389
  }
390
+ /**
391
+ * The moving cursor has crossed into a new system — told at the tick, before
392
+ * the new path is shown.
393
+ *
394
+ * Whoever follows the music has to hear about this *here* rather than from
395
+ * the next position report, because the caret is placed in content
396
+ * coordinates: a path in a system the view has not scrolled to is a caret
397
+ * drawn off screen. The canvas hands the path over on its own timeout, exact
398
+ * to the tick, while the reports arrive about 30 times a second — so the
399
+ * scroll used to land 8–44ms late (measured on the Mac, a dense eleven-track
400
+ * score) and the caret was simply missing for that long at every wrap, once
401
+ * every two seconds.
402
+ *
403
+ * Only the *when* is published: whether to follow at all, and where to, stay
404
+ * with the caller and `followTarget`.
405
+ */
406
+ subscribeCursorSystem(listener) {
407
+ this.systemListeners.add(listener);
408
+ return () => this.systemListeners.delete(listener);
409
+ }
390
410
  /** Paint now rather than on the next frame — for a host that must, like a resize. */
391
411
  paintNow() {
392
412
  // A host paints now when its drawing surface itself changed — a resize
@@ -666,6 +686,16 @@ export class ScoreCanvas {
666
686
  const path = systemIndex < 0
667
687
  ? null
668
688
  : cursorPathFor(plan, score, this.zoom, this.starts, systemIndex, this.positions());
689
+ // 6. The page turn is part of the handover, not a consequence of it: told
690
+ // before the path is shown, a follower scrolls in this same turn and the
691
+ // caret never lands in a system the view is not showing.
692
+ if (path &&
693
+ this.motion.ticksPerSecond > 0 &&
694
+ this.path !== null &&
695
+ this.path.systemIndex !== path.systemIndex) {
696
+ for (const listener of this.systemListeners)
697
+ listener(tick);
698
+ }
669
699
  this.show(path);
670
700
  // 6. Hand over to the next system when the moving cursor gets there.
671
701
  const rate = this.motion.ticksPerSecond;
@@ -1 +1 @@
1
- {"version":3,"file":"score-canvas.js","sourceRoot":"","sources":["../src/score-canvas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"score-canvas.js","sourceRoot":"","sources":["../src/score-canvas.ts"],"names":[],"mappings":"AAkBA,OAAO,EACL,YAAY,EACZ,aAAa,EACb,cAAc,EACd,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AAKjC,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,WAAW,GACZ,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,cAAc,EACd,eAAe,EACf,aAAa,EACb,cAAc,EACd,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5D,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,kBAAkB,GACnB,MAAM,aAAa,CAAC;AA2ErB,mDAAmD;AACnD,MAAM,QAAQ,GAAG,EAAE,CAAC;AACpB,sEAAsE;AACtE,MAAM,iCAAiC,GAAG,KAAK,CAAC;AAChD,wCAAwC;AACxC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAC7B,wEAAwE;AACxE,MAAM,6BAA6B,GAAG,KAAK,CAAC;AAE5C,kFAAkF;AAClF,MAAM,aAAa,GAAG,EAAE,CAAC;AAEzB,MAAM,IAAI,GAAiB,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC;AAOnE,MAAM,OAAO,WAAW;IA8DtB,YAAY,EAAE,OAAO,EAAE,SAAS,EAAsB;QA1D9C,UAAK,GAAiB,IAAI,CAAC;QACnC,2EAA2E;QACnE,WAAM,GAAiB,IAAI,CAAC;QAC5B,iBAAY,GAAiB,SAAS,CAAC;QACvC,SAAI,GAA2B,IAAI,CAAC;QACpC,eAAU,GAAG,CAAC,CAAC;QACf,cAAS,GAAG,CAAC,CAAC;QAEd,kBAAa,GAAkB,IAAI,CAAC;QACpC,YAAO,GAA4B,EAAE,CAAC;QACtC,gBAAW,GAAsB,EAAE,CAAC;QACpC,gBAAW,GAAG,KAAK,CAAC;QACpB,kBAAa,GAAsB,EAAE,CAAC;QACtC,uBAAkB,GAAwB,IAAI,GAAG,EAAE,CAAC;QAEpD,cAAS,GAA8B,IAAI,CAAC;QACpD,oFAAoF;QAC5E,gBAAW,GAAsB,IAAI,CAAC;QACtC,WAAM,GAAa,EAAE,CAAC;QACtB,gBAAW,GAAwB,IAAI,CAAC;QAChD,wFAAwF;QAChF,qBAAgB,GAAG,EAAE,CAAC;QAE9B;;;;WAIG;QACK,gBAAW,GAAG,CAAC,CAAC;QAChB,cAAS,GAAG,IAAI,CAAC;QACzB;;;WAGG;QACK,cAAS,GAAG,CAAC,CAAC;QACd,uBAAkB,GAIf,IAAI,CAAC;QAEhB,iEAAiE;QACzD,yBAAoB,GAAkB,IAAI,CAAC;QAC3C,qBAAgB,GAAa,EAAE,CAAC;QAChC,qBAAgB,GAAG,iCAAiC,CAAC;QAC5C,uBAAkB,GAAG,IAAI,GAAG,EAA6B,CAAC;QAEnE,WAAM,GAAiB,IAAI,CAAC;QAC5B,SAAI,GAAsB,IAAI,CAAC;QAC/B,gBAAW,GAAwB,IAAI,CAAC;QACxC,eAAU,GAAwB,IAAI,CAAC;QAC9B,oBAAe,GAAG,IAAI,GAAG,EAA0B,CAAC;QAErE,wEAAwE;QAChE,oBAAe,GAAwB,IAAI,CAAC;QAC5C,iBAAY,GAAkB,IAAI,CAAC;QACnC,kBAAa,GAAsB,IAAI,CAAC;QAG9C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED,6EAA6E;IAE7E;;;;;;;;;;;;;;;OAeG;IACH,cAAc,CACZ,KAAmB,EACnB,eAA6B,SAAS;QAEtC,IAAI,KAAK,KAAK,IAAI,CAAC,MAAM,IAAI,YAAY,KAAK,IAAI,CAAC,YAAY;YAAE,OAAO;QACxE,MAAM,YAAY,GAAG,KAAK,KAAK,IAAI,CAAC,MAAM,CAAC;QAC3C,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAChE,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CAAC,aAAa,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC;YAClD,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC7B,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,QAAQ,CAAC,KAAmB;QAC1B,IAAI,KAAK,KAAK,IAAI,CAAC,KAAK;YAAE,OAAO;QACjC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED,OAAO,CAAC,IAAqB;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IACE,QAAQ;YACR,QAAQ,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK;YAC7B,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI;YAC3B,QAAQ,CAAC,UAAU,KAAK,IAAI,CAAC,UAAU;YACvC,QAAQ,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK;YAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,EACzC,CAAC;YACD,qEAAqE;YACrE,IACE,QAAQ,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM;gBAC/B,QAAQ,CAAC,gBAAgB,KAAK,IAAI,CAAC,gBAAgB,EACnD,CAAC;gBACD,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrB,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,CAAC;YACD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED,kBAAkB;IAClB,SAAS,CAAC,IAAY,EAAE,GAAW;QACjC,IAAI,IAAI,KAAK,IAAI,CAAC,UAAU,IAAI,GAAG,KAAK,IAAI,CAAC,SAAS;YAAE,OAAO;QAC/D,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;QACrB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED,6EAA6E;IAE7E,aAAa,CAAC,IAAY;QACxB,IAAI,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED,aAAa,CAAC,MAAoB;QAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED,6EAA6E;IAE7E,cAAc,CAAC,OAAsB;QACnC,IAAI,OAAO,KAAK,IAAI,CAAC,aAAa;YAAE,OAAO;QAC3C,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;QAC7B,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,6DAA6D;QAC7D,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;QAC3B,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED,eAAe,CAAC,KAA8B;QAC5C,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,uEAAuE;QACvE,uEAAuE;QACvE,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,KAAK,IAAI,CAAC;QACnD,IAAI,OAAO;YAAE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;QAC9D,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,OAAO,EAAE,CAAC;YAC3C,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACnC,CAAC;IACH,CAAC;IAED,gBAAgB,CACd,GAAsB,EACtB,UAAqC,EAAE;QAEvC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,KAAK,CAAC;QACjD,uEAAuE;QACvE,+DAA+D;QAC/D,IAAI,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,WAAW,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;YACvE,OAAO;QACT,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IAED,mBAAmB,CAAC,GAAsB;QACxC,IACE,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,kBAAkB,CAAC,IAAI;YAC3C,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAChD,CAAC;YACD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,kBAAkB,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QACvC,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IAED,kBAAkB,CAAC,GAAsB;QACvC,IAAI,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC;YAAE,OAAO;QAC7C,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC;QACzB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IAED,6EAA6E;IAE7E,0EAA0E;IAC1E,IAAI,IAAI;QACN,IAAI,IAAI,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC,WAAW,CAAC;QAC9C,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QAC3C,IAAI,CAAC,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5E,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,6EAA6E;IAC7E,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAI,IAAI;QACN,OAAO,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED,0DAA0D;IAC1D,WAAW;QACT,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,IAAI,CAAC,IAAI;YAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QAC1C,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI;YAClC,MAAM,EAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI;SACrC,CAAC;IACJ,CAAC;IAED,kBAAkB;IAClB,cAAc,CAAC,IAAY;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QACtC,OAAO,gBAAgB,CACrB,IAAI,EACJ,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,IAAI,EACT,IAAI,EACJ,IAAI,CAAC,SAAS,EAAE,CACjB,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,KAAgB;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QAEvB,oEAAoE;QACpE,IAAI,mBAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YAClD,MAAM,OAAO,GAAG,oBAAoB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YACxE,IAAI,OAAO;gBAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC;YACrD,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,gBAAgB,GAAG,IAAI;gBAAE,OAAO,IAAI,CAAC;QACtE,CAAC;QAED,MAAM,OAAO,GAAG;YACd,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU;YAC5B,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS;SAC5B,CAAC;QACF,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;QAE7D,MAAM;QACN,MAAM,YAAY,GAAG,yBAAyB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC9D,IAAI,YAAY,KAAK,IAAI;YAAE,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,YAAY,EAAE,CAAC;QAE1E,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAC1B,MAAM,IAAI,GACR,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,CAAC;QAEzE,qCAAqC;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC;QACvC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC7D,IAAI,KAAK,IAAI,MAAM,EAAE,CAAC;YACpB,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAC9C,OAAO;gBACL,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBAC7C,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,IAAI;aACL,CAAC;QACJ,CAAC;QAED,MAAM;QACN,OAAO;YACL,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,IAAI;YACJ,KAAK,EAAE,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,KAAK,IAAI,IAAI;SAC9D,CAAC;IACJ,CAAC;IAED,8DAA8D;IAC9D,MAAM,CAAC,KAAgB;QACrB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QACtC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,OAAO,YAAY,CACjB,IAAI,EACJ,IAAI,CAAC,KAAK,EACV,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,EAClC,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,EACjC,IAAI,CAAC,SAAS,EAAE,CACjB,CAAC;IACJ,CAAC;IAED,qEAAqE;IACrE,aAAa,CAAC,CAAY,EAAE,CAAY;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC;QACvC,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,CAAC;QACtB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QAC/C,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;QAC9C,OAAO,aAAa,CAAC,KAAK,EAAE;YAC1B,CAAC;YACD,CAAC;YACD,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SAC5B,CAAC,CAAC;IACL,CAAC;IAED,mFAAmF;IACnF,cAAc,CAAC,IAAY;QACzB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,KAAK,GAAG,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QAClC,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACrD,OAAO,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5D,CAAC;IAED;;;OAGG;IACH,qBAAqB,CAAC,IAAY;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,KAAK;YAAE,OAAO,CAAC,CAAC;QACrB,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnC,IAAI,KAAK,CAAC,IAAI,GAAG,IAAI;gBAAE,MAAM;YAC7B,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;IAChC,CAAC;IAED,0EAA0E;IAC1E,YAAY,CAAC,IAAY;QACvB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,MAAM,KAAK,GAAG,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QACpD,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACrD,MAAM,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACxE,IAAI,YAAY,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QACvC,MAAM,GAAG,GAAG,kBAAkB,CAAC,IAAI,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC;QACtD,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC;QACtB,OAAO,oBAAoB,CAAC;YAC1B,IAAI;YACJ,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,YAAY;YACZ,QAAQ,EAAE,GAAG,CAAC,CAAC;YACf,YAAY,EAAE,GAAG,CAAC,KAAK;YACvB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,aAAa,EAAE,IAAI,CAAC,KAAK;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,cAAc,EAAE,IAAI,CAAC,MAAM;YAC3B,MAAM,EAAE,aAAa;SACtB,CAAC,CAAC;IACL,CAAC;IAED,+EAA+E;IAC/E,cAAc,CAAC,IAAY;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI;YAAE,OAAO;QAC7B,MAAM,UAAU,GACd,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,MAAM;YACnD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QACvD,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAClE,CAAC;IAED;;;;;;;;;;OAUG;IACH,IAAI,uBAAuB;QACzB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED,yBAAyB,CAAC,QAAmC;QAC3D,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACtC,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACxD,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,qBAAqB,CAAC,QAAgC;QACpD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACnC,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACrD,CAAC;IAED,qFAAqF;IACrF,QAAQ;QACN,uEAAuE;QACvE,uDAAuD;QACvD,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED,OAAO;QACL,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;QACzB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;QACpB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;IACzB,CAAC;IAED,6EAA6E;IAErE,aAAa,CAAC,IAAqB;QACzC,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACtD,CAAC;IACJ,CAAC;IAEO,SAAS;QACf,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC;QAC7B,OAAO,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI;YACtC,CAAC,CAAC,KAAK,CAAC,oBAAoB;YAC5B,CAAC,CAAC,SAAS,CAAC;IAChB,CAAC;IAEO,gBAAgB;QACtB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;QAC3B,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED,0EAA0E;IAClE,mBAAmB;QACzB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC;QAC7B,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YAC9C,IAAI,SAAS,KAAK,IAAI,CAAC,gBAAgB;gBAAE,OAAO,KAAK,CAAC;QACxD,CAAC;QACD,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,aAAa;QACnB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC;IACtB,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,eAAe,CAAC,KAAyB;QAC/C,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;IACxE,CAAC;IAEO,aAAa,CAAC,KAAyB;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC;QACvC,IAAI,MAAM,IAAI,MAAM,CAAC,KAAK,KAAK,KAAK,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;YACxE,OAAO,MAAM,CAAC,SAAS,CAAC;QAC1B,CAAC;QACD,IAAI,SAAS,GAAG,IAAI,IAAI,CAAC,aAAa,IAAI,EAAE,GAAG,CAAC;QAChD,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAClD,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACpC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAE,SAAS,IAAI,GAAG,EAAE,KAAK,CAAC;QACtD,CAAC;QACD,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAE,SAAS,IAAI,GAAG,EAAE,IAAI,YAAY,GAAG,CAAC;QACpE,CAAC;QACD,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACzC,IAAI,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAE,SAAS,IAAI,IAAI,EAAE,GAAG,CAAC;QAC5D,CAAC;QACD,IAAI,CAAC,kBAAkB,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC;QACtE,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,4EAA4E;IACpE,gBAAgB,CAAC,KAAyB;QAChD,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC;QAClC,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAa,EAAE,CAAC;QACzB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChC,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC/D,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IAEO,UAAU;QAChB,OAAO,aAAa,CAAC;YACnB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,OAAO;YACtB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC,CAAC;IACL,CAAC;IAEO,aAAa;QACnB,IAAI,IAAI,CAAC,WAAW;YAAE,OAAO;QAC7B;;;;;;UAME;QACF,IAAI,GAAG,GAAG,KAAK,CAAC;QAChB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE;YACvC,GAAG,GAAG,IAAI,CAAC;YACX,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG;YAAE,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;IACtC,CAAC;IAEO,KAAK;QACX,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI;YAAE,OAAO;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QACrC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;YACtB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACzB,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAC9B,KAAK,EACL;YACE,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;YAC3B,UAAU;YACV,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,QAAQ,EAAE;gBACR,GAAG,EAAE,IAAI,CAAC,SAAS,GAAG,IAAI;gBAC1B,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI;gBAC7C,IAAI,EAAE,IAAI,CAAC,UAAU,GAAG,IAAI;gBAC5B,KAAK,EAAE,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI;aAC7C;YACD,GAAG,CAAC,IAAI,CAAC,gBAAgB;gBACvB,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE;gBAC7C,CAAC,CAAC,EAAE,CAAC;SACR,EACD,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAClC,CAAC;QACF,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,2DAA2D;QAC3D,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC;QAC9B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QACpD,6DAA6D;QAC7D,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAED;;;;;;;OAOG;IACK,iBAAiB;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC;QAC9B,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI;YAAE,OAAO;QAC3D,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,CAAC;YAAE,OAAO;QAE5C,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC;QACd,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,mBAAmB;YAAE,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC5E,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;QACxC,IAAI,SAAS,KAAK,SAAS;YAAE,OAAO;QACpC,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,MAAM,OAAO,GAAwB;YACnC,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;YAC3B,QAAQ,EAAE;gBACR,GAAG,EAAE,MAAM,CAAC,GAAG,GAAG,IAAI;gBACtB,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI;gBACzC,IAAI,EAAE,MAAM,CAAC,IAAI,GAAG,IAAI;gBACxB,KAAK,EAAE,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI;aACzC;SACF,CAAC;QACF,MAAM,GAAG,GAAG,GAAG,IAAI,IAAI,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QACnD,IAAI,GAAG,KAAK,IAAI,CAAC,YAAY,IAAI,IAAI,KAAK,IAAI,CAAC,aAAa;YAAE,OAAO;QACrE,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;QACzB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC;QACxB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAE1B,MAAM,IAAI,GAAG,GAAG,EAAE;YAChB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC5B,mEAAmE;YACnE,oCAAoC;YACpC,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,CAAC,EAAE,CAAC;gBACjE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gBACzB,OAAO;YACT,CAAC;YACD,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC;gBAAE,OAAO;YAC7D,sEAAsE;YACtE,IAAI,GAAG,GAAG,KAAK,CAAC;YAChB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE;gBACzC,GAAG,GAAG,IAAI,CAAC;gBACX,IAAI,EAAE,CAAC;YACT,CAAC,EAAE,CAAC,CAAC,CAAC;YACN,IAAI,CAAC,GAAG;gBAAE,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC;QAC1C,CAAC,CAAC;QACF,IAAI,GAAG,GAAG,KAAK,CAAC;QAChB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE;YACzC,GAAG,GAAG,IAAI,CAAC;YACX,IAAI,EAAE,CAAC;QACT,CAAC,EAAE,CAAC,CAAC,CAAC;QACN,IAAI,CAAC,GAAG;YAAE,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC;IAC1C,CAAC;IAEO,gBAAgB;QACtB,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC;QAC9C,IAAI,WAAW,KAAK,IAAI;YAAE,OAAO;QACjC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,IAAI,QAAQ,CAAC;QAC1D,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,WAAW,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC;QACrE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,iBAAiB,EAAE,CAAC;YACrD,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAChC,CAAC;QACD,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC;QACpD,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC,CAAC;QACtD,IACE,UAAU;YACV,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,6BAA6B,EACzE,CAAC;YACD,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC;YAC/B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,kBAAkB;gBAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAEO,aAAa;QACnB,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;QACpB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACpB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChB,OAAO;QACT,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC5C,MAAM,WAAW,GAAG,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAChE,MAAM,IAAI,GACR,WAAW,GAAG,CAAC;YACb,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,aAAa,CACX,IAAI,EACJ,KAAK,EACL,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,MAAM,EACX,WAAW,EACX,IAAI,CAAC,SAAS,EAAE,CACjB,CAAC;QACR,0EAA0E;QAC1E,yEAAyE;QACzE,yDAAyD;QACzD,IACE,IAAI;YACJ,IAAI,CAAC,MAAM,CAAC,cAAc,GAAG,CAAC;YAC9B,IAAI,CAAC,IAAI,KAAK,IAAI;YAClB,IAAI,CAAC,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,WAAW,EAC1C,CAAC;YACD,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,eAAe;gBAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEhB,qEAAqE;QACrE,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;QACxC,IAAI,IAAI,IAAI,IAAI,GAAG,CAAC,IAAI,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9D,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAC1D,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;YACxC,sEAAsE;YACtE,IAAI,GAAG,GAAG,KAAK,CAAC;YAChB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CACnC,GAAG,EAAE;gBACH,GAAG,GAAG,IAAI,CAAC;gBACX,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;gBACvB,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CACpB,CAAC;YACF,IAAI,CAAC,GAAG;gBAAE,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;QACrC,CAAC;IACH,CAAC;IAEO,IAAI,CAAC,IAAuB;QAClC,IAAI,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;YACxE,OAAO;QACT,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC;QAC/B,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;CACF;AAED,SAAS,OAAO,CACd,CAAgC,EAChC,CAAgC;IAEhC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACzB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACpD,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AACjD,CAAC"}
package/dist/types.d.ts CHANGED
@@ -1,10 +1,13 @@
1
1
  /**
2
2
  * VexFlow renderer adapter contract (spec §7, §26): the shared shapes the
3
- * layout pass (`layout.ts`), the canvas renderer (`canvas-renderer.ts`),
4
- * and the highlight overlay (`overlay.ts`) all agree on. Downstream apps
3
+ * layout pass (`layout.ts`), the canvas renderer (`canvas-renderer.ts`), the
4
+ * note colouring (`note-color.ts`, `note-colors.ts`) and the score canvas
5
+ * (`score-canvas.ts`) all agree on. There is no highlight overlay: a note's
6
+ * state is its colour. Downstream apps
5
7
  * import these verbatim — keep them stable; add new capabilities alongside
6
8
  * them rather than by editing their fields.
7
9
  */
10
+ import type { LayoutMode } from '@sudobility/music_types';
8
11
  /** How a note is colored, by state. See `note-color.ts`'s `resolveNoteColorRole` for precedence. */
9
12
  export type NoteColorRole = 'normal' | 'selected' | 'regenerated' | 'playing' | 'outOfRange';
10
13
  export type RenderMode = 'screen' | 'print';
@@ -103,17 +106,6 @@ export declare const PRINT_INK = "#000000";
103
106
  export declare const DEFAULT_SCREEN_RENDER_THEME: RenderTheme;
104
107
  /** A monochrome theme for callers that render paper-first surfaces. */
105
108
  export declare const DEFAULT_PRINT_RENDER_THEME: RenderTheme;
106
- /**
107
- * How a score is packed onto the surface it is drawn on.
108
- *
109
- * Declared as an array with the type read off it, not as a bare union: a
110
- * TypeScript union has no runtime form, so a picker offering these — and there
111
- * is one in each app's toolbar — would otherwise have to write the list out
112
- * again, which is how one of them comes to offer a mode the renderer no longer
113
- * has.
114
- */
115
- export declare const LAYOUT_MODES: readonly ["page", "continuous"];
116
- export type LayoutMode = (typeof LAYOUT_MODES)[number];
117
109
  export type RenderOptions = {
118
110
  /** Linear scale factor applied to the whole render (measure width, stave height, font size). */
119
111
  zoom: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,oGAAoG;AACpG,MAAM,MAAM,aAAa,GACvB,QAAQ,GAAG,UAAU,GAAG,aAAa,GAAG,SAAS,GAAG,YAAY,CAAC;AAEnE,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE5C,KAAK,oBAAoB,GAAG;IAC1B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,UAAU,CAIvE;AAED,yEAAyE;AACzE,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAE1E;AAED;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,4EAA4E;IAC5E,UAAU,EAAE,MAAM,CAAC;IACnB,4CAA4C;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;;;;;;OAUG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;;;;;;OAUG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kDAAkD;IAClD,WAAW,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,aAAa,EAAE,MAAM,CAAC;IACtB,oHAAoH;IACpH,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;OASG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,uCAAuC;AACvC,eAAO,MAAM,SAAS,YAAY,CAAC;AAEnC;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,EAAE,WAazC,CAAC;AAEF,uEAAuE;AACvE,eAAO,MAAM,0BAA0B,EAAE,WAkBxC,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,iCAAkC,CAAC;AAE5D,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvD,MAAM,MAAM,aAAa,GAAG;IAC1B,gGAAgG;IAChG,IAAI,EAAE,MAAM,CAAC;IACb,mGAAmG;IACnG,UAAU,EAAE,UAAU,CAAC;IACvB;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,kGAAkG;IAClG,KAAK,EAAE,MAAM,CAAC;IACd,sHAAsH;IACtH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,4DAA4D;IAC5D,UAAU,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAChD,sGAAsG;IACtG,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,4IAA4I;IAC5I,kBAAkB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACzC;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,KAAK,EAAE,WAAW,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,IAAI,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAE1D,oGAAoG;AACpG,MAAM,MAAM,aAAa,GACvB,QAAQ,GAAG,UAAU,GAAG,aAAa,GAAG,SAAS,GAAG,YAAY,CAAC;AAEnE,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE5C,KAAK,oBAAoB,GAAG;IAC1B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,UAAU,CAIvE;AAED,yEAAyE;AACzE,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAE1E;AAED;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,4EAA4E;IAC5E,UAAU,EAAE,MAAM,CAAC;IACnB,4CAA4C;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;;;;;;OAUG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;;;;;;OAUG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kDAAkD;IAClD,WAAW,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,aAAa,EAAE,MAAM,CAAC;IACtB,oHAAoH;IACpH,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;OASG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,uCAAuC;AACvC,eAAO,MAAM,SAAS,YAAY,CAAC;AAEnC;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,EAAE,WAazC,CAAC;AAEF,uEAAuE;AACvE,eAAO,MAAM,0BAA0B,EAAE,WAkBxC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,gGAAgG;IAChG,IAAI,EAAE,MAAM,CAAC;IACb,mGAAmG;IACnG,UAAU,EAAE,UAAU,CAAC;IACvB;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,kGAAkG;IAClG,KAAK,EAAE,MAAM,CAAC;IACd,sHAAsH;IACtH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,4DAA4D;IAC5D,UAAU,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAChD,sGAAsG;IACtG,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,4IAA4I;IAC5I,kBAAkB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACzC;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,KAAK,EAAE,WAAW,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,IAAI,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC"}
package/dist/types.js CHANGED
@@ -1,10 +1,3 @@
1
- /**
2
- * VexFlow renderer adapter contract (spec §7, §26): the shared shapes the
3
- * layout pass (`layout.ts`), the canvas renderer (`canvas-renderer.ts`),
4
- * and the highlight overlay (`overlay.ts`) all agree on. Downstream apps
5
- * import these verbatim — keep them stable; add new capabilities alongside
6
- * them rather than by editing their fields.
7
- */
8
1
  /**
9
2
  * The drawing intent for a render.
10
3
  *
@@ -60,14 +53,4 @@ export const DEFAULT_PRINT_RENDER_THEME = {
60
53
  caret: PRINT_INK,
61
54
  printForeground: PRINT_INK,
62
55
  };
63
- /**
64
- * How a score is packed onto the surface it is drawn on.
65
- *
66
- * Declared as an array with the type read off it, not as a bare union: a
67
- * TypeScript union has no runtime form, so a picker offering these — and there
68
- * is one in each app's toolbar — would otherwise have to write the list out
69
- * again, which is how one of them comes to offer a mode the renderer no longer
70
- * has.
71
- */
72
- export const LAYOUT_MODES = ['page', 'continuous'];
73
56
  //# sourceMappingURL=types.js.map
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAaH;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,OAA6B;IACzD,OAAO,CACL,OAAO,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,aAAa,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAC7E,CAAC;AACJ,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,mBAAmB,CAAC,OAA6B;IAC/D,OAAO,OAAO,CAAC,aAAa,IAAI,aAAa,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;AACtE,CAAC;AA0ED,uCAAuC;AACvC,MAAM,CAAC,MAAM,SAAS,GAAG,SAAS,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAgB;IACtD,UAAU,EAAE,SAAS;IACrB,UAAU,EAAE,SAAS;IACrB,YAAY,EAAE,SAAS;IACvB,YAAY,EAAE,SAAS;IACvB,eAAe,EAAE,SAAS;IAC1B,WAAW,EAAE,SAAS;IACtB,cAAc,EAAE,SAAS;IACzB,gBAAgB,EAAE,SAAS;IAC3B,WAAW,EAAE,SAAS;IACtB,aAAa,EAAE,SAAS;IACxB,KAAK,EAAE,SAAS;IAChB,eAAe,EAAE,SAAS;CAC3B,CAAC;AAEF,uEAAuE;AACvE,MAAM,CAAC,MAAM,0BAA0B,GAAgB;IACrD,UAAU,EAAE,SAAS;IACrB,UAAU,EAAE,SAAS;IACrB,YAAY,EAAE,SAAS;IACvB,YAAY,EAAE,SAAS;IACvB,eAAe,EAAE,SAAS;IAC1B,WAAW,EAAE,SAAS;IACtB;;;;MAIE;IACF,cAAc,EAAE,SAAS;IACzB,gBAAgB,EAAE,SAAS;IAC3B,WAAW,EAAE,SAAS;IACtB,aAAa,EAAE,SAAS;IACxB,KAAK,EAAE,SAAS;IAChB,eAAe,EAAE,SAAS;CAC3B,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,YAAY,CAAU,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAsBA;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,OAA6B;IACzD,OAAO,CACL,OAAO,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,aAAa,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAC7E,CAAC;AACJ,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,mBAAmB,CAAC,OAA6B;IAC/D,OAAO,OAAO,CAAC,aAAa,IAAI,aAAa,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;AACtE,CAAC;AA0ED,uCAAuC;AACvC,MAAM,CAAC,MAAM,SAAS,GAAG,SAAS,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAgB;IACtD,UAAU,EAAE,SAAS;IACrB,UAAU,EAAE,SAAS;IACrB,YAAY,EAAE,SAAS;IACvB,YAAY,EAAE,SAAS;IACvB,eAAe,EAAE,SAAS;IAC1B,WAAW,EAAE,SAAS;IACtB,cAAc,EAAE,SAAS;IACzB,gBAAgB,EAAE,SAAS;IAC3B,WAAW,EAAE,SAAS;IACtB,aAAa,EAAE,SAAS;IACxB,KAAK,EAAE,SAAS;IAChB,eAAe,EAAE,SAAS;CAC3B,CAAC;AAEF,uEAAuE;AACvE,MAAM,CAAC,MAAM,0BAA0B,GAAgB;IACrD,UAAU,EAAE,SAAS;IACrB,UAAU,EAAE,SAAS;IACrB,YAAY,EAAE,SAAS;IACvB,YAAY,EAAE,SAAS;IACvB,eAAe,EAAE,SAAS;IAC1B,WAAW,EAAE,SAAS;IACtB;;;;MAIE;IACF,cAAc,EAAE,SAAS;IACzB,gBAAgB,EAAE,SAAS;IAC3B,WAAW,EAAE,SAAS;IACtB,aAAa,EAAE,SAAS;IACxB,KAAK,EAAE,SAAS;IAChB,eAAe,EAAE,SAAS;CAC3B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sudobility/music_drawing",
3
- "version": "0.0.36",
3
+ "version": "0.0.37",
4
4
  "description": "Canvas score rendering for Moosiac: layout, VexFlow drawing and the paint loop.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -44,11 +44,11 @@
44
44
  "vexflow": "^4.2.5"
45
45
  },
46
46
  "peerDependencies": {
47
- "@sudobility/music_types": "^0.13.26"
47
+ "@sudobility/music_types": "^0.13.27"
48
48
  },
49
49
  "devDependencies": {
50
50
  "@eslint/js": "^9.38.0",
51
- "@sudobility/music_types": "^0.13.26",
51
+ "@sudobility/music_types": "^0.13.27",
52
52
  "@sudobility/types": "^1.9.67",
53
53
  "@tonejs/midi": "^2.0.28",
54
54
  "@types/jsdom": "^30.0.0",
@@ -1,67 +0,0 @@
1
- /**
2
- * Notes an instrument cannot play, found in a score that already holds them.
3
- *
4
- * Here rather than in an app for the reason `note-colors.ts` beside it gives:
5
- * two apps draw this score, and "which notes are lit, and why" having two
6
- * answers is how the native app came to light nothing at all during playback.
7
- *
8
- * The compass lives in one place — `gm-catalogue.ts`, reached through
9
- * `trackKeyboardRange` — and three of the four surfaces that care already read
10
- * it: the keyboard shows exactly that span, generation now states it in the
11
- * prompt, and `inspect.ts` judges a generated part against it. The notation is
12
- * the exception, by design: it draws what the score holds, because a score is
13
- * not only ever a generated one.
14
- *
15
- * That is the disagreement a reader actually meets. A timpani part written a
16
- * fifth below its lowest drum draws perfectly well on the stave and cannot
17
- * light a single key on the keyboard — measured on one project, 482 of 1,067
18
- * notes. Nothing here rewrites those notes: they are marked, and moving them
19
- * by an octave is a musical decision that belongs to the person reading, not
20
- * to a scan.
21
- *
22
- * Gated on `trackRangeIsBinding`, the same condition the server applies, so the
23
- * page and the server cannot disagree about what counts as out of range. A
24
- * compass nobody verified marks nothing.
25
- *
26
- * ## Sounding pitch, and so the STORED score
27
- *
28
- * Every number in `gm-catalogue.ts` is sounding pitch, and `midiIsInRange` is
29
- * documented as taking one. The score this package *draws* is not: the app
30
- * hands `render` a `displayScore(score, pitchDisplay)`, which in written mode
31
- * has moved a B-flat clarinet up a tone and, in every mode, has moved an
32
- * `8va`'s noteheads down an octave. Scanning that would place a clarinet's
33
- * whole part a tone above where it sounds and mark the top of it wrongly.
34
- *
35
- * So this takes the **stored** score — the one the app holds, before the
36
- * lenses — and the result stays correct in either display mode because it is
37
- * expressed as event **ids**, which both lenses preserve: `transposeEvents`
38
- * and `ottavaScore` spread `...event` and replace only `pitch`. The renderer
39
- * colours by id, so "which notes" survives a transposition that changes what
40
- * those notes look like. `out-of-range.test.ts` pins that with a clarinet.
41
- */
42
- import { type MidiRange, type Score } from '@sudobility/music_types';
43
- export type OutOfRangeTrack = {
44
- trackId: string;
45
- name: string;
46
- /** What the instrument can play. */
47
- compass: MidiRange;
48
- /** How many notes fall outside it. */
49
- count: number;
50
- /** The distinct pitches that do, lowest first. */
51
- midis: number[];
52
- };
53
- export type OutOfRangeScan = {
54
- /** Every offending note id, for the notation's colours. */
55
- ids: string[];
56
- /** One entry per track that has any, for the inspector's sentence. */
57
- byTrack: OutOfRangeTrack[];
58
- };
59
- /**
60
- * Every note `score` holds that its own instrument cannot play.
61
- *
62
- * `score` is the **stored** score — sounding pitch, before `displayScore`. Do
63
- * not pass the score handed to `render`; see this module's doc for why, and
64
- * why the ids come back usable in either display mode anyway.
65
- */
66
- export declare function outOfRangeNoteIds(score: Score | null): OutOfRangeScan;
67
- //# sourceMappingURL=out-of-range.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"out-of-range.d.ts","sourceRoot":"","sources":["../src/out-of-range.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,OAAO,EAOL,KAAK,SAAS,EACd,KAAK,KAAK,EACX,MAAM,yBAAyB,CAAC;AAEjC,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,OAAO,EAAE,SAAS,CAAC;IACnB,sCAAsC;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,kDAAkD;IAClD,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,2DAA2D;IAC3D,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,sEAAsE;IACtE,OAAO,EAAE,eAAe,EAAE,CAAC;CAC5B,CAAC;AAIF;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,GAAG,cAAc,CAiDrE"}
@@ -1,101 +0,0 @@
1
- /**
2
- * Notes an instrument cannot play, found in a score that already holds them.
3
- *
4
- * Here rather than in an app for the reason `note-colors.ts` beside it gives:
5
- * two apps draw this score, and "which notes are lit, and why" having two
6
- * answers is how the native app came to light nothing at all during playback.
7
- *
8
- * The compass lives in one place — `gm-catalogue.ts`, reached through
9
- * `trackKeyboardRange` — and three of the four surfaces that care already read
10
- * it: the keyboard shows exactly that span, generation now states it in the
11
- * prompt, and `inspect.ts` judges a generated part against it. The notation is
12
- * the exception, by design: it draws what the score holds, because a score is
13
- * not only ever a generated one.
14
- *
15
- * That is the disagreement a reader actually meets. A timpani part written a
16
- * fifth below its lowest drum draws perfectly well on the stave and cannot
17
- * light a single key on the keyboard — measured on one project, 482 of 1,067
18
- * notes. Nothing here rewrites those notes: they are marked, and moving them
19
- * by an octave is a musical decision that belongs to the person reading, not
20
- * to a scan.
21
- *
22
- * Gated on `trackRangeIsBinding`, the same condition the server applies, so the
23
- * page and the server cannot disagree about what counts as out of range. A
24
- * compass nobody verified marks nothing.
25
- *
26
- * ## Sounding pitch, and so the STORED score
27
- *
28
- * Every number in `gm-catalogue.ts` is sounding pitch, and `midiIsInRange` is
29
- * documented as taking one. The score this package *draws* is not: the app
30
- * hands `render` a `displayScore(score, pitchDisplay)`, which in written mode
31
- * has moved a B-flat clarinet up a tone and, in every mode, has moved an
32
- * `8va`'s noteheads down an octave. Scanning that would place a clarinet's
33
- * whole part a tone above where it sounds and mark the top of it wrongly.
34
- *
35
- * So this takes the **stored** score — the one the app holds, before the
36
- * lenses — and the result stays correct in either display mode because it is
37
- * expressed as event **ids**, which both lenses preserve: `transposeEvents`
38
- * and `ottavaScore` spread `...event` and replace only `pitch`. The renderer
39
- * colours by id, so "which notes" survives a transposition that changes what
40
- * those notes look like. `out-of-range.test.ts` pins that with a clarinet.
41
- */
42
- import { isNoteEvent, isPercussionTrack, midiIsInRange, pitchToMidi, trackKeyboardRange, trackRangeIsBinding, } from '@sudobility/music_types';
43
- const EMPTY = { ids: [], byTrack: [] };
44
- /**
45
- * Every note `score` holds that its own instrument cannot play.
46
- *
47
- * `score` is the **stored** score — sounding pitch, before `displayScore`. Do
48
- * not pass the score handed to `render`; see this module's doc for why, and
49
- * why the ids come back usable in either display mode anyway.
50
- */
51
- export function outOfRangeNoteIds(score) {
52
- if (!score)
53
- return EMPTY;
54
- const ids = [];
55
- const byTrack = [];
56
- for (const track of score.tracks) {
57
- /*
58
- * A drum pitch names a drum rather than a place in a compass, so this test
59
- * comes FIRST and is not folded into the gate below it.
60
- *
61
- * `trackRangeIsBinding` answers **true** for percussion on purpose — a kit
62
- * has the pieces it has, which is the right answer for note entry and for
63
- * generation, where refusing an address no drum sits at is a service. It is
64
- * the wrong answer here: `percussion.ts` already handles a drum outside
65
- * `GM_PERCUSSION_RANGE` by parking it on the middle line as `UNMAPPED`, and
66
- * colouring it as well would be two marks for one fact.
67
- */
68
- if (isPercussionTrack(track))
69
- continue;
70
- if (!trackRangeIsBinding(track))
71
- continue;
72
- const compass = trackKeyboardRange(track);
73
- const midis = new Set();
74
- let count = 0;
75
- for (const measure of track.measures) {
76
- for (const voice of measure.voices) {
77
- for (const event of voice.events) {
78
- if (!isNoteEvent(event))
79
- continue;
80
- const midi = pitchToMidi(event.pitch);
81
- if (midiIsInRange(midi, compass))
82
- continue;
83
- ids.push(event.id);
84
- midis.add(midi);
85
- count += 1;
86
- }
87
- }
88
- }
89
- if (count > 0) {
90
- byTrack.push({
91
- trackId: track.id,
92
- name: track.name,
93
- compass,
94
- count,
95
- midis: [...midis].sort((a, b) => a - b),
96
- });
97
- }
98
- }
99
- return ids.length > 0 ? { ids, byTrack } : EMPTY;
100
- }
101
- //# sourceMappingURL=out-of-range.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"out-of-range.js","sourceRoot":"","sources":["../src/out-of-range.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,kBAAkB,EAClB,mBAAmB,GAGpB,MAAM,yBAAyB,CAAC;AAoBjC,MAAM,KAAK,GAAmB,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;AAEvD;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAmB;IACnD,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,OAAO,GAAsB,EAAE,CAAC;IAEtC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjC;;;;;;;;;;WAUG;QACH,IAAI,iBAAiB,CAAC,KAAK,CAAC;YAAE,SAAS;QACvC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC;YAAE,SAAS;QAE1C,MAAM,OAAO,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC1C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;QAChC,IAAI,KAAK,GAAG,CAAC,CAAC;QAEd,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACrC,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBACjC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;wBAAE,SAAS;oBAClC,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACtC,IAAI,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC;wBAAE,SAAS;oBAC3C,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACnB,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBAChB,KAAK,IAAI,CAAC,CAAC;gBACb,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,OAAO,CAAC,IAAI,CAAC;gBACX,OAAO,EAAE,KAAK,CAAC,EAAE;gBACjB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,OAAO;gBACP,KAAK;gBACL,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;aACxC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;AACnD,CAAC"}
package/dist/press.d.ts DELETED
@@ -1,66 +0,0 @@
1
- /**
2
- * What a press on the score was: a tap, a long press, or a drag.
3
- *
4
- * Both apps answer this at the end of every press, and they answered it with
5
- * different numbers in different files — the web's `DRAG_THRESHOLD` inside the
6
- * notation view, the native app's `LONG_PRESS_MS`/`LONG_PRESS_SLOP` inside its
7
- * scrolling score. The question is about the canvas (did the press stay on the
8
- * thing under it?), so it lives beside the hit-testing that answers the next
9
- * question.
10
- *
11
- * ## Mouse and touch differ, on purpose
12
- *
13
- * A mouse is still: a click that moved more than 3px was meant to move, which
14
- * is exactly where the web's box select has always started. A finger is not —
15
- * a deliberate tap on a phone routinely lands several points from where it
16
- * touched down, and holding a finger to 3px would turn a good share of taps
17
- * into drags. So a touch gets `TOUCH_TAP_SLOP`, the same allowance a long press
18
- * already had: a press that stays put long enough to be a long press would
19
- * otherwise have been a *drag* had it been released a moment sooner, which is
20
- * not a distinction a thumb can make.
21
- *
22
- * A mouse never long-presses. It has a secondary button for the context menu,
23
- * and a click held while the reader looks at something is not a request for
24
- * one — reading it as one would change what an ordinary slow click does on the
25
- * web. React Native on macOS passes `'touch'`, because its gesture model is the
26
- * touch one: the long press is how it opens the menu.
27
- *
28
- * ## Distance
29
- *
30
- * Measured per axis (the larger of |dx| and |dy|), which is the web's existing
31
- * rule to the pixel. The native app used the straight-line distance; per axis
32
- * lets a diagonal wander up to √2 further, which is under five points at a
33
- * 12pt slop and not something a hand can aim at.
34
- *
35
- * The caller latches: once a press has classified as a drag it stays one even
36
- * if the pointer comes back, which is how the web's `drag.moved` behaves. This
37
- * function answers for one moment and keeps no state.
38
- */
39
- /** What produced the press. */
40
- export type PointerKind = 'mouse' | 'touch';
41
- export type PressKind = 'tap' | 'longPress' | 'drag';
42
- /** How far a mouse press may move and still be a click, in px (web). */
43
- export declare const TAP_SLOP = 3;
44
- /** How far a finger may move and still be a tap, in pt. */
45
- export declare const TOUCH_TAP_SLOP = 12;
46
- /** How long a press is held to be a long press — iOS's and Android's own threshold. */
47
- export declare const LONG_PRESS_MS = 500;
48
- /** How far a long press may wander — about a thumb's width. */
49
- export declare const LONG_PRESS_SLOP = 12;
50
- /** The tap slop for a pointer kind. */
51
- export declare function tapSlopFor(pointer: PointerKind): number;
52
- export type PressMeasure = {
53
- /** Movement since the press began, either sign. */
54
- dx: number;
55
- dy: number;
56
- /** How long the press has been (or was) held. */
57
- heldMs: number;
58
- /** Defaults to `'mouse'`, the web's rule. */
59
- pointer?: PointerKind;
60
- };
61
- /**
62
- * `'longPress'` if a touch was held `LONG_PRESS_MS` within `LONG_PRESS_SLOP`;
63
- * otherwise `'tap'` if it moved no more than the tap slop; otherwise `'drag'`.
64
- */
65
- export declare function classifyPress({ dx, dy, heldMs, pointer, }: PressMeasure): PressKind;
66
- //# sourceMappingURL=press.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"press.d.ts","sourceRoot":"","sources":["../src/press.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,+BAA+B;AAC/B,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,OAAO,CAAC;AAE5C,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,WAAW,GAAG,MAAM,CAAC;AAErD,wEAAwE;AACxE,eAAO,MAAM,QAAQ,IAAI,CAAC;AAE1B,2DAA2D;AAC3D,eAAO,MAAM,cAAc,KAAK,CAAC;AAEjC,uFAAuF;AACvF,eAAO,MAAM,aAAa,MAAM,CAAC;AAEjC,+DAA+D;AAC/D,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC,uCAAuC;AACvC,wBAAgB,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,CAEvD;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,mDAAmD;IACnD,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,OAAO,CAAC,EAAE,WAAW,CAAC;CACvB,CAAC;AAEF;;;GAGG;AACH,wBAAgB,aAAa,CAAC,EAC5B,EAAE,EACF,EAAE,EACF,MAAM,EACN,OAAiB,GAClB,EAAE,YAAY,GAAG,SAAS,CAU1B"}