tosijs-3d 0.6.0-rc.3 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/dist/b3d-svg-plane.d.ts +73 -4
  2. package/dist/b3d-svg-plane.d.ts.map +1 -1
  3. package/dist/b3d-svg-plane.js +123 -41
  4. package/dist/b3d-svg-plane.js.map +1 -1
  5. package/dist/box.d.ts +11 -1
  6. package/dist/box.d.ts.map +1 -1
  7. package/dist/box.js +34 -14
  8. package/dist/box.js.map +1 -1
  9. package/dist/flow-layout.d.ts.map +1 -1
  10. package/dist/flow-layout.js +8 -0
  11. package/dist/flow-layout.js.map +1 -1
  12. package/dist/gamepad-focus.d.ts +3 -2
  13. package/dist/gamepad-focus.d.ts.map +1 -1
  14. package/dist/gamepad-focus.js +7 -8
  15. package/dist/gamepad-focus.js.map +1 -1
  16. package/dist/index.d.ts +5 -3
  17. package/dist/index.d.ts.map +1 -1
  18. package/dist/index.js +1 -0
  19. package/dist/index.js.map +1 -1
  20. package/dist/keyboard.d.ts +6 -4
  21. package/dist/keyboard.d.ts.map +1 -1
  22. package/dist/keyboard.js +46 -50
  23. package/dist/keyboard.js.map +1 -1
  24. package/dist/surface.d.ts +6 -0
  25. package/dist/surface.d.ts.map +1 -1
  26. package/dist/surface.js +8 -2
  27. package/dist/surface.js.map +1 -1
  28. package/dist/svg-texture.d.ts +1 -0
  29. package/dist/svg-texture.d.ts.map +1 -1
  30. package/dist/svg-texture.js +9 -0
  31. package/dist/svg-texture.js.map +1 -1
  32. package/dist/table.d.ts +3 -2
  33. package/dist/table.d.ts.map +1 -1
  34. package/dist/table.js +62 -30
  35. package/dist/table.js.map +1 -1
  36. package/dist/w3d-theme.d.ts +24 -0
  37. package/dist/w3d-theme.d.ts.map +1 -0
  38. package/dist/w3d-theme.js +48 -0
  39. package/dist/w3d-theme.js.map +1 -0
  40. package/dist/widgets3d.d.ts.map +1 -1
  41. package/dist/widgets3d.js +18 -30
  42. package/dist/widgets3d.js.map +1 -1
  43. package/package.json +1 -1
@@ -85,30 +85,99 @@ export declare const b3dSvgPlane: import("tosijs").ElementCreator<B3dSvgPlane>;
85
85
  * The svg's viewBox is re-read per event, so an svg that resizes (hugging its
86
86
  * content) keeps mapping correctly.
87
87
  */
88
- export declare function panelScene(opts: {
88
+ /** uv (Babylon, origin bottom-left) → viewBox coords (origin top-left). */
89
+ export declare function uvToViewBox(uv: {
90
+ x: number;
91
+ y: number;
92
+ }, vbW: number, vbH: number): {
93
+ x: number;
94
+ y: number;
95
+ };
96
+ /**
97
+ * A point in the GESTURE-START plane frame (world point already transformed by
98
+ * the frozen inverse world matrix) → viewBox coords. The plane is `planeW` ×
99
+ * `planeH` world units centred on its origin; viewBox y grows downward.
100
+ */
101
+ export declare function planeLocalToViewBox(local: {
102
+ x: number;
103
+ y: number;
104
+ }, planeW: number, planeH: number, vbW: number, vbH: number): {
105
+ x: number;
106
+ y: number;
107
+ };
108
+ /** One pointer event, reduced to what the gesture policy needs. */
109
+ export interface PanelGestureEvent {
110
+ kind: 'down' | 'move' | 'up';
111
+ /** The pick landed on the panel plane (with `x`/`y` in viewBox coords). */
112
+ onPlane: boolean;
113
+ x?: number;
114
+ y?: number;
115
+ /** While a gesture is ACTIVE: the ray∩catcher point in gesture-start viewBox
116
+ * coords, or null if the ray missed the catcher entirely. */
117
+ catcher?: {
118
+ x: number;
119
+ y: number;
120
+ } | null;
121
+ /** For a down on the plane: does the claim policy take it? */
122
+ claims?: boolean;
123
+ }
124
+ export type PanelGestureAction = {
125
+ do: 'route';
126
+ kind: 'down' | 'move' | 'up' | 'leave';
127
+ x: number;
128
+ y: number;
129
+ } | {
130
+ do: 'begin';
131
+ } | {
132
+ do: 'end';
133
+ };
134
+ /**
135
+ * The gesture policy, pure: `active` is the only state; the shell executes the
136
+ * returned actions in order. Pinned behaviours (each burned us on device):
137
+ * routed moves/ups ride the catcher (never the live mesh, never screen
138
+ * coordinates); an up that missed the catcher still ends the gesture with
139
+ * `leave`; an unclaimed press routes but never yields the camera; a move
140
+ * off-plane with no gesture is a hover `leave`.
141
+ */
142
+ export declare function panelGesture(active: boolean, ev: PanelGestureEvent): {
143
+ active: boolean;
144
+ actions: PanelGestureAction[];
145
+ };
146
+ export interface PanelSceneOptions {
89
147
  /** The live svg shown flat — the SAME element becomes the plane's texture. */
90
148
  svg: SVGSVGElement;
91
149
  /** Where events land: a `surface`, `box`, or anything with `handlePointer`. */
92
150
  target: {
93
151
  handlePointer: (kind: 'down' | 'move' | 'up' | 'leave', x: number, y: number) => void;
152
+ /** If present (box/surface have it), the DEFAULT claim policy asks it. */
153
+ interactiveAt?: (x: number, y: number) => boolean;
94
154
  };
95
155
  /**
96
156
  * Given viewBox coords of a down on the plane: does the UI claim the gesture
97
- * (camera yields, moves ride the catcher)? Default: every panel press is UI.
98
- * A resize grip passes its hit-test here so panel-body drags still orbit.
157
+ * (camera yields, moves ride the catcher)? Default: ask the target's
158
+ * `interactiveAt` — a press on a button/panel claims, a press on static
159
+ * prose orbits — falling back to claim-everything for targets without it.
160
+ * A resize grip passes its own hit-test here instead.
99
161
  */
100
162
  claim?: (x: number, y: number) => boolean;
101
163
  /** World width of the plane; height follows the svg's aspect. Default 2.4. */
102
164
  width?: number;
103
165
  /** Texture resolution. Default 640. */
104
166
  resolution?: number;
167
+ /**
168
+ * Ms between texture re-render checks (each is a clone + serialize, with the
169
+ * rasterize skipped when nothing changed). Default 30 — interaction-crisp;
170
+ * pass slower for panels that mostly sit still.
171
+ */
172
+ updateInterval?: number;
105
173
  /** Orbit camera placement overrides. */
106
174
  camera?: {
107
175
  alpha?: number;
108
176
  beta?: number;
109
177
  radius?: number;
110
178
  };
111
- }): {
179
+ }
180
+ export declare function panelScene(opts: PanelSceneOptions): {
112
181
  plane: B3dSvgPlane;
113
182
  sceneCreated: (el: B3d) => void;
114
183
  };
@@ -1 +1 @@
1
- {"version":3,"file":"b3d-svg-plane.d.ts","sourceRoot":"","sources":["../src/b3d-svg-plane.ts"],"names":[],"mappings":"AA6XA,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAS,MAAM,aAAa,CAAA;AAIjD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,YAAY,CAAA;AAErC,qBAAa,WAAY,SAAQ,YAAY;IAC3C,MAAM,CAAC,SAAS;;;;MAAmC;IAEnD,MAAM,CAAC,cAAc;;;;;;;;uBASI,IAAI,GAAG,KAAK;qBACd,IAAI,GAAG,KAAK;;;;;;;;MAClC;IAEO,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,GAAG,EAAE,MAAM,CAAA;IACX,cAAc,EAAE,MAAM,CAAA;IACtB,eAAe,EAAE,MAAM,CAAA;IACvB,cAAc,EAAE,OAAO,CAAA;IACvB,aAAa,EAAE,IAAI,GAAG,KAAK,CAAA;IAC3B,WAAW,EAAE,IAAI,GAAG,KAAK,CAAA;IAEjC,kDAAkD;IAClD,UAAU,EAAE,aAAa,GAAG,IAAI,CAAO;IAEvC,OAAO,CAAC,WAAW,CAA0B;IAC7C,OAAO,CAAC,SAAS,CAAwC;IACzD,OAAO,CAAC,gBAAgB,CAEhB;IAER,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,SAAS,CAAI;IACrB,OAAO,CAAC,SAAS,CAAI;IAErB,OAAO,eAAW;IAElB,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK;IAyC3C,YAAY;IAYZ,MAAM;IAaN,2DAA2D;IAC3D,IAAI,UAAU,IAAI,UAAU,GAAG,IAAI,CAElC;IAED,OAAO,CAAC,aAAa;IAkBrB,OAAO,CAAC,sBAAsB;IA0D9B,OAAO,CAAC,uBAAuB;CAsDhC;AAED,eAAO,MAAM,WAAW,8CAEtB,CAAA;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE;IAC/B,8EAA8E;IAC9E,GAAG,EAAE,aAAa,CAAA;IAClB,+EAA+E;IAC/E,MAAM,EAAE;QACN,aAAa,EAAE,CACb,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,OAAO,EACtC,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,KACN,IAAI,CAAA;KACV,CAAA;IACD;;;;OAIG;IACH,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,OAAO,CAAA;IACzC,8EAA8E;IAC9E,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,uCAAuC;IACvC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,wCAAwC;IACxC,MAAM,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAC5D,GAAG;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,YAAY,EAAE,CAAC,EAAE,EAAE,GAAG,KAAK,IAAI,CAAA;CAAE,CA0H1D"}
1
+ {"version":3,"file":"b3d-svg-plane.d.ts","sourceRoot":"","sources":["../src/b3d-svg-plane.ts"],"names":[],"mappings":"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"}
@@ -619,6 +619,69 @@ export const b3dSvgPlane = B3dSvgPlane.elementCreator({
619
619
  * The svg's viewBox is re-read per event, so an svg that resizes (hugging its
620
620
  * content) keeps mapping correctly.
621
621
  */
622
+ // ---------------------------------------------------------------------------
623
+ // The panelScene gesture contract, as PURE data-in/actions-out functions — the
624
+ // review found the release's headline interaction feature shipped with zero
625
+ // coverage, and the fix is this repo's standard move: isolate the computation
626
+ // (mapping math + the claim/route/begin/end policy) from Babylon so it can be
627
+ // pinned by unit tests, and keep the scene shell thin.
628
+ // ---------------------------------------------------------------------------
629
+ /** uv (Babylon, origin bottom-left) → viewBox coords (origin top-left). */
630
+ export function uvToViewBox(uv, vbW, vbH) {
631
+ return { x: uv.x * vbW, y: (1 - uv.y) * vbH };
632
+ }
633
+ /**
634
+ * A point in the GESTURE-START plane frame (world point already transformed by
635
+ * the frozen inverse world matrix) → viewBox coords. The plane is `planeW` ×
636
+ * `planeH` world units centred on its origin; viewBox y grows downward.
637
+ */
638
+ export function planeLocalToViewBox(local, planeW, planeH, vbW, vbH) {
639
+ return {
640
+ x: (local.x / planeW + 0.5) * vbW,
641
+ y: (0.5 - local.y / planeH) * vbH,
642
+ };
643
+ }
644
+ /**
645
+ * The gesture policy, pure: `active` is the only state; the shell executes the
646
+ * returned actions in order. Pinned behaviours (each burned us on device):
647
+ * routed moves/ups ride the catcher (never the live mesh, never screen
648
+ * coordinates); an up that missed the catcher still ends the gesture with
649
+ * `leave`; an unclaimed press routes but never yields the camera; a move
650
+ * off-plane with no gesture is a hover `leave`.
651
+ */
652
+ export function panelGesture(active, ev) {
653
+ const actions = [];
654
+ if (active && (ev.kind === 'move' || ev.kind === 'up')) {
655
+ if (ev.catcher) {
656
+ actions.push({
657
+ do: 'route',
658
+ kind: ev.kind,
659
+ x: ev.catcher.x,
660
+ y: ev.catcher.y,
661
+ });
662
+ }
663
+ else if (ev.kind === 'up') {
664
+ actions.push({ do: 'route', kind: 'leave', x: 0, y: 0 });
665
+ }
666
+ if (ev.kind === 'up') {
667
+ actions.push({ do: 'end' });
668
+ return { active: false, actions };
669
+ }
670
+ return { active: true, actions };
671
+ }
672
+ if (ev.onPlane) {
673
+ if (ev.kind === 'down' && ev.claims) {
674
+ actions.push({ do: 'begin' });
675
+ actions.push({ do: 'route', kind: 'down', x: ev.x, y: ev.y });
676
+ return { active: true, actions };
677
+ }
678
+ actions.push({ do: 'route', kind: ev.kind, x: ev.x, y: ev.y });
679
+ return { active, actions };
680
+ }
681
+ if (ev.kind === 'move')
682
+ actions.push({ do: 'route', kind: 'leave', x: 0, y: 0 });
683
+ return { active, actions };
684
+ }
622
685
  export function panelScene(opts) {
623
686
  const width = opts.width ?? 2.4;
624
687
  const vb0 = opts.svg.viewBox?.baseVal;
@@ -628,6 +691,7 @@ export function panelScene(opts) {
628
691
  width,
629
692
  height: planeH,
630
693
  resolution: opts.resolution ?? 640,
694
+ updateInterval: opts.updateInterval ?? 30,
631
695
  materialChannel: 'emissive',
632
696
  pointerEvents: 'off',
633
697
  });
@@ -654,6 +718,8 @@ export function panelScene(opts) {
654
718
  catcher.isPickable = false;
655
719
  let gesture = null;
656
720
  const T = BABYLON.PointerEventTypes;
721
+ const claims = opts.claim ?? opts.target.interactiveAt?.bind(opts.target) ?? (() => true);
722
+ let active = false;
657
723
  el.scene.onPointerObservable.add((pi) => {
658
724
  const kind = pi.type === T.POINTERDOWN
659
725
  ? 'down'
@@ -665,59 +731,75 @@ export function panelScene(opts) {
665
731
  if (!kind)
666
732
  return;
667
733
  const pk = pi.pickInfo;
668
- if (gesture && (kind === 'move' || kind === 'up')) {
734
+ // Assemble the pure event: pick data → viewBox coords (the policy itself
735
+ // is panelGesture — pure and unit-tested; this shell only touches Babylon).
736
+ const ev = { kind, onPlane: false };
737
+ if (active && (kind === 'move' || kind === 'up')) {
669
738
  // Ray → catcher → the gesture-start frame. pickInfo.ray is the mouse
670
739
  // ray flat and the controller ray in XR — one code path for both.
671
740
  const ray = pk?.ray;
672
741
  const hit = ray ? ray.intersectsMesh(catcher) : null;
673
- if (hit && hit.hit && hit.pickedPoint) {
742
+ if (hit && hit.hit && hit.pickedPoint && gesture) {
674
743
  const local = BABYLON.Vector3.TransformCoordinates(hit.pickedPoint, gesture.inv);
675
- opts.target.handlePointer(kind, (local.x / width + 0.5) * gesture.vbW, (0.5 - local.y / planeH) * gesture.vbH);
676
- }
677
- else if (kind === 'up') {
678
- opts.target.handlePointer('leave', 0, 0);
744
+ ev.catcher = planeLocalToViewBox(local, width, planeH, gesture.vbW, gesture.vbH);
679
745
  }
680
- if (kind === 'up') {
681
- gesture = null;
682
- catcher.isPickable = false;
683
- cam.attachControl(canvas, true);
746
+ else {
747
+ ev.catcher = null;
684
748
  }
685
- return;
686
749
  }
687
- const onPlane = !!(pk && pk.hit && pk.pickedMesh === plane.mesh);
688
- let sx = 0;
689
- let sy = 0;
690
- if (onPlane) {
691
- const uv = pk.getTextureCoordinates();
692
- const vb = viewBox();
693
- if (uv) {
694
- sx = uv.x * vb.w;
695
- sy = (1 - uv.y) * vb.h;
750
+ else {
751
+ const onPlane = !!(pk && pk.hit && pk.pickedMesh === plane.mesh);
752
+ ev.onPlane = onPlane;
753
+ if (onPlane) {
754
+ const uv = pk.getTextureCoordinates();
755
+ const vb = viewBox();
756
+ if (uv) {
757
+ const p = uvToViewBox(uv, vb.w, vb.h);
758
+ ev.x = p.x;
759
+ ev.y = p.y;
760
+ }
761
+ else {
762
+ ev.x = 0;
763
+ ev.y = 0;
764
+ }
696
765
  }
766
+ if (kind === 'down' && onPlane)
767
+ ev.claims = claims(ev.x, ev.y);
697
768
  }
698
- if (kind === 'down' && onPlane && (opts.claim?.(sx, sy) ?? true)) {
699
- const vb = viewBox();
700
- const mesh = plane.mesh;
701
- mesh.computeWorldMatrix(true);
702
- gesture = {
703
- vbW: vb.w,
704
- vbH: vb.h,
705
- inv: mesh.getWorldMatrix().clone().invert(),
706
- };
707
- // Park the catcher on the plane's CURRENT pose — the gesture samples
708
- // this frozen frame even if the target then moves/rescales the mesh.
709
- catcher.position.copyFrom(mesh.absolutePosition);
710
- if (mesh.rotationQuaternion)
711
- catcher.rotationQuaternion = mesh.rotationQuaternion.clone();
712
- catcher.computeWorldMatrix(true);
713
- catcher.isPickable = true;
714
- cam.detachControl();
769
+ const step = panelGesture(active, ev);
770
+ active = step.active;
771
+ for (const a of step.actions) {
772
+ if (a.do === 'route')
773
+ opts.target.handlePointer(a.kind, a.x, a.y);
774
+ else if (a.do === 'begin')
775
+ beginGesture();
776
+ else
777
+ endGesture();
715
778
  }
716
- if (onPlane)
717
- opts.target.handlePointer(kind, sx, sy);
718
- else if (kind === 'move')
719
- opts.target.handlePointer('leave', 0, 0);
720
779
  });
780
+ const endGesture = () => {
781
+ gesture = null;
782
+ catcher.isPickable = false;
783
+ cam.attachControl(canvas, true);
784
+ };
785
+ const beginGesture = () => {
786
+ const vb = viewBox();
787
+ const mesh = plane.mesh;
788
+ mesh.computeWorldMatrix(true);
789
+ gesture = {
790
+ vbW: vb.w,
791
+ vbH: vb.h,
792
+ inv: mesh.getWorldMatrix().clone().invert(),
793
+ };
794
+ // Park the catcher on the plane's CURRENT pose — the gesture samples
795
+ // this frozen frame even if the target then moves/rescales the mesh.
796
+ catcher.position.copyFrom(mesh.absolutePosition);
797
+ if (mesh.rotationQuaternion)
798
+ catcher.rotationQuaternion = mesh.rotationQuaternion.clone();
799
+ catcher.computeWorldMatrix(true);
800
+ catcher.isPickable = true;
801
+ cam.detachControl();
802
+ };
721
803
  };
722
804
  return { plane, sceneCreated };
723
805
  }
@@ -1 +1 @@
1
- {"version":3,"file":"b3d-svg-plane.js","sourceRoot":"","sources":["../src/b3d-svg-plane.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0XE;AACF,sBAAsB;AAEtB,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAEjD,qFAAqF;AACrF,MAAM,oBAAoB,GAAG,MAAM,CAAA;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAG1C,MAAM,OAAO,WAAY,SAAQ,YAAY;IAC3C,MAAM,CAAC,SAAS,GAAG,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAA;IAEnD,MAAM,CAAC,cAAc,GAAG;QACtB,GAAG,YAAY,CAAC,cAAc;QAC9B,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,UAAU,EAAE,GAAG;QACf,GAAG,EAAE,EAAE;QACP,cAAc,EAAE,EAAE;QAClB,eAAe,EAAE,UAAU;QAC3B,cAAc,EAAE,KAAK;QACrB,aAAa,EAAE,IAAoB;QACnC,WAAW,EAAE,IAAoB;KAClC,CAAA;IAYD,kDAAkD;IAClD,UAAU,GAAyB,IAAI,CAAA;IAE/B,WAAW,GAAsB,IAAI,CAAA;IACrC,SAAS,GAAoC,IAAI,CAAA;IACjD,gBAAgB,GAEpB,IAAI,CAAA;IACR,+DAA+D;IACvD,SAAS,GAAG,KAAK,CAAA;IACjB,SAAS,GAAG,CAAC,CAAA;IACb,SAAS,GAAG,CAAC,CAAA;IAErB,OAAO,GAAG,GAAG,EAAE,CAAC,EAAE,CAAA;IAElB,UAAU,CAAC,KAAU,EAAE,KAAoB;QACzC,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;QAC9B,MAAM,KAAK,GAAG,IAAW,CAAA;QAEzB,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CACzC,WAAW,EACX;YACE,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC;gBACvC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS;gBACxB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU;SAC5B,EACD,KAAK,CACN,CAAA;QAED,IAAI,CAAC,WAAW,GAAG,IAAI,UAAU,CAAC;YAChC,KAAK;YACL,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,SAAS;YAC3B,OAAO,EAAE,IAAI,CAAC,UAAU,IAAI,SAAS;YACrC,cAAc,EAAE,KAAK,CAAC,cAAc;SACrC,CAAC,CAAA;QAEF,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,gBAAgB,CAAC,eAAe,EAAE,KAAK,CAAC,CAAA;QAChE,GAAG,CAAC,eAAe,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;QAC9C,IAAI,CAAC,SAAS,GAAG,GAAG,CAAA;QACpB,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC,eAAe,CAAC,CAAA;QAC9C,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAA;QAExB,IAAI,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YAC/C,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,YAAY,CAAA;QACvC,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACnD,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAA;QACpC,CAAC;QAED,KAAK,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACzC,CAAC;IAED,YAAY;QACV,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACxC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;YAClE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAA;QAC9B,CAAC;QACD,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,CAAA;QAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAA;QACvB,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,CAAA;QACzB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;QACrB,KAAK,CAAC,YAAY,EAAE,CAAA;IACtB,CAAC;IAED,MAAM;QACJ,KAAK,CAAC,MAAM,EAAE,CAAA;QACd,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAM;QACzC,MAAM,KAAK,GAAG,IAAW,CAAA;QAEzB,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,YAAY,CAAA;YAC3C,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,GAAG;gBAAE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAA;QAC7D,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;QACzB,CAAC;IACH,CAAC;IAED,2DAA2D;IAC3D,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAA;IACzB,CAAC;IAEO,aAAa,CAAC,GAA6B,EAAE,OAAe;QAClE,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAM;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAA;QACpC,0EAA0E;QAC1E,4EAA4E;QAC5E,iEAAiE;QACjE,GAAG,CAAC,cAAc,GAAG,GAAG,CAAA;QACxB,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;YAC3B,GAAG,CAAC,eAAe,GAAG,GAAG,CAAA;YACzB,GAAG,CAAC,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;YACzC,GAAG,CAAC,eAAe,GAAG,IAAI,CAAA;QAC5B,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,cAAc,GAAG,GAAG,CAAA;YACxB,GAAG,CAAC,eAAe,GAAG,IAAI,CAAA;YAC1B,GAAG,CAAC,eAAe,GAAG,KAAK,CAAA;QAC7B,CAAC;IACH,CAAC;IAEO,sBAAsB,CAAC,KAAoB;QACjD,+DAA+D;QAC/D,KAAK,CAAC,gCAAgC,GAAG,IAAI,CAAA;QAC7C,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAA;QACzE,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;YACpE,MAAM,IAAI,GACR,WAAW,CAAC,IAAI,KAAK,WAAW;gBAC9B,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,WAAW,CAAC,IAAI,KAAK,SAAS;oBAChC,CAAC,CAAC,IAAI;oBACN,CAAC,CAAC,WAAW,CAAC,IAAI,KAAK,WAAW;wBAClC,CAAC,CAAC,MAAM;wBACR,CAAC,CAAC,EAAE,CAAA;YACR,IAAI,CAAC,IAAI;gBAAE,OAAM;YAEjB,MAAM,KAAK,GAAG,IAAI,CAAC,UAGX,CAAA;YACR,MAAM,MAAM,GACV,KAAK,IAAI,OAAO,KAAK,CAAC,aAAa,KAAK,UAAU;gBAChD,CAAC,CAAC,KAAK,CAAC,aAAa;gBACrB,CAAC,CAAC,IAAI,CAAA;YAEV,MAAM,IAAI,GAAG,WAAW,CAAC,QAAQ,CAAA;YACjC,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,IAAI,CAAA;YAC5D,MAAM,GAAG,GAAG,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;YAEjE,4EAA4E;YAC5E,4EAA4E;YAC5E,0EAA0E;YAC1E,2EAA2E;YAC3E,wDAAwD;YACxD,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,GAAG,IAAI,KAAK,EAAE,CAAC;oBACjB,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,OAAO,CAAA;oBACjC,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,CAAA;oBACvD,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,CAAA;gBAChE,CAAC;gBACD,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;oBACpB,IAAI,CAAC,GAAG;wBAAE,OAAM;oBAChB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;oBACrB,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;gBAChD,CAAC;qBAAM,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC3B,IAAI,IAAI,CAAC,SAAS;wBAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;gBACpE,CAAC;qBAAM,CAAC;oBACN,IAAI,IAAI,CAAC,SAAS;wBAAE,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;oBAChE,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;gBACxB,CAAC;gBACD,OAAM;YACR,CAAC;YAED,wEAAwE;YACxE,IAAI,CAAC,GAAG;gBAAE,OAAM;YAChB,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAA;QAChD,CAAC,CAAC,CAAA;IACJ,CAAC;IAEO,uBAAuB,CAC7B,WAAgC,EAChC,GAAoB;QAEpB,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAA;QAC7B,IAAI,CAAC,KAAK;YAAE,OAAM;QAElB,+DAA+D;QAC/D,qCAAqC;QACrC,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,OAAO,CAAA;QACjC,MAAM,IAAI,GAAG,EAAE,EAAE,KAAK,IAAI,KAAK,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,CAAA;QAC9D,MAAM,IAAI,GAAG,EAAE,EAAE,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,IAAI,CAAC,UAAU,CAAA;QAEhE,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,GAAG,IAAI,CAAA;QACzB,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;QAE/B,6DAA6D;QAC7D,MAAM,IAAI,GAAG,KAAK,CAAC,qBAAqB,EAAE,CAAA;QAC1C,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAM;QACjD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAA;QACtD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;QAEtD,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAA;QAC5D,MAAM,IAAI,GACR,WAAW,CAAC,IAAI,KAAK,WAAW;YAC9B,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,WAAW,CAAC,IAAI,KAAK,SAAS;gBAChC,CAAC,CAAC,WAAW;gBACb,CAAC,CAAC,aAAa,CAAA;QAEnB,MAAM,SAAS,GAAG,WAAW,CAAC,KAAqB,CAAA;QACnD,MAAM,MAAM,GAAG,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,KAAK,CAAA;QAEnE,MAAM,CAAC,aAAa,CAClB,IAAI,YAAY,CAAC,IAAI,EAAE;YACrB,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,IAAI;YAChB,OAAO;YACP,OAAO;YACP;;;;;;;;cAQE;YACF,SAAS,EAAE,oBAAoB;YAC/B,WAAW,EAAG,SAAiB,CAAC,WAAW,IAAI,OAAO;YACtD,OAAO,EAAE,SAAS,CAAC,OAAO;SAC3B,CAAC,CACH,CAAA;IACH,CAAC;;AAGH,MAAM,CAAC,MAAM,WAAW,GAAG,WAAW,CAAC,cAAc,CAAC;IACpD,GAAG,EAAE,oBAAoB;CAC1B,CAAC,CAAA;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,UAAU,UAAU,CAAC,IAuB1B;IACC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,GAAG,CAAA;IAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAA;IACrC,MAAM,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAChE,MAAM,MAAM,GAAG,KAAK,GAAG,MAAM,CAAA;IAC7B,MAAM,KAAK,GAAG,WAAW,CAAC;QACxB,KAAK;QACL,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,GAAG;QAClC,eAAe,EAAE,UAAU;QAC3B,aAAa,EAAE,KAAK;KACrB,CAAgB,CAAA;IACjB,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAA;IAE3B,MAAM,OAAO,GAAG,GAA6B,EAAE;QAC7C,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAA;QACpC,OAAO;YACL,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACpC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;SACvC,CAAA;IACH,CAAC,CAAA;IAED,MAAM,YAAY,GAAG,CAAC,EAAO,EAAQ,EAAE;QACrC,MAAM,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,kBAAkB,EAAE,CAAA;QACxD,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,eAAe,CACrC,WAAW,EACX,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,EAClC,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,IAAI,CAAC,EAAE,GAAG,GAAG,EAClC,IAAI,CAAC,MAAM,EAAE,MAAM,IAAI,GAAG,EAC1B,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,EACtB,EAAE,CAAC,KAAK,CACT,CAAA;QACD,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;QACvB,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QAC/B,4DAA4D;QAC5D,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,kCAAkC,CAAC,CAAA;QAC3D,EAAE,CAAC,KAAK,CAAC,gCAAgC,GAAG,IAAI,CAAA;QAEhD,0EAA0E;QAC1E,4DAA4D;QAC5D,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAC7C,eAAe,EACf,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,EAAE,EACxC,EAAE,CAAC,KAAK,CACT,CAAA;QACD,OAAO,CAAC,UAAU,GAAG,CAAC,CAAA;QACtB,OAAO,CAAC,UAAU,GAAG,KAAK,CAAA;QAC1B,IAAI,OAAO,GAA6D,IAAI,CAAA;QAE5E,MAAM,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAA;QACnC,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YACtC,MAAM,IAAI,GACR,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,WAAW;gBACvB,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,SAAS;oBACzB,CAAC,CAAC,IAAI;oBACN,CAAC,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,WAAW;wBAC3B,CAAC,CAAC,MAAM;wBACR,CAAC,CAAC,EAAE,CAAA;YACR,IAAI,CAAC,IAAI;gBAAE,OAAM;YACjB,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAA;YAEtB,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBAClD,qEAAqE;gBACrE,kEAAkE;gBAClE,MAAM,GAAG,GAAG,EAAE,EAAE,GAAG,CAAA;gBACnB,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;gBACpD,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;oBACtC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAChD,GAAG,CAAC,WAAW,EACf,OAAO,CAAC,GAAG,CACZ,CAAA;oBACD,IAAI,CAAC,MAAM,CAAC,aAAa,CACvB,IAAI,EACJ,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,GAAG,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,EACrC,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CACvC,CAAA;gBACH,CAAC;qBAAM,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;oBACzB,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;gBAC1C,CAAC;gBACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;oBAClB,OAAO,GAAG,IAAI,CAAA;oBACd,OAAO,CAAC,UAAU,GAAG,KAAK,CAAA;oBAC1B,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;gBACjC,CAAC;gBACD,OAAM;YACR,CAAC;YAED,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,UAAU,KAAK,KAAK,CAAC,IAAI,CAAC,CAAA;YAChE,IAAI,EAAE,GAAG,CAAC,CAAA;YACV,IAAI,EAAE,GAAG,CAAC,CAAA;YACV,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,EAAE,GAAG,EAAG,CAAC,qBAAqB,EAAE,CAAA;gBACtC,MAAM,EAAE,GAAG,OAAO,EAAE,CAAA;gBACpB,IAAI,EAAE,EAAE,CAAC;oBACP,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;oBAChB,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;gBACxB,CAAC;YACH,CAAC;YACD,IAAI,IAAI,KAAK,MAAM,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;gBACjE,MAAM,EAAE,GAAG,OAAO,EAAE,CAAA;gBACpB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAK,CAAA;gBACxB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;gBAC7B,OAAO,GAAG;oBACR,GAAG,EAAE,EAAE,CAAC,CAAC;oBACT,GAAG,EAAE,EAAE,CAAC,CAAC;oBACT,GAAG,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE;iBAC5C,CAAA;gBACD,qEAAqE;gBACrE,qEAAqE;gBACrE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;gBAChD,IAAI,IAAI,CAAC,kBAAkB;oBACzB,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAA;gBAC9D,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;gBAChC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAA;gBACzB,GAAG,CAAC,aAAa,EAAE,CAAA;YACrB,CAAC;YACD,IAAI,OAAO;gBAAE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;iBAC/C,IAAI,IAAI,KAAK,MAAM;gBAAE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QACpE,CAAC,CAAC,CAAA;IACJ,CAAC,CAAA;IACD,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,CAAA;AAChC,CAAC"}
1
+ {"version":3,"file":"b3d-svg-plane.js","sourceRoot":"","sources":["../src/b3d-svg-plane.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0XE;AACF,sBAAsB;AAEtB,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAEjD,qFAAqF;AACrF,MAAM,oBAAoB,GAAG,MAAM,CAAA;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAG1C,MAAM,OAAO,WAAY,SAAQ,YAAY;IAC3C,MAAM,CAAC,SAAS,GAAG,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAA;IAEnD,MAAM,CAAC,cAAc,GAAG;QACtB,GAAG,YAAY,CAAC,cAAc;QAC9B,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,UAAU,EAAE,GAAG;QACf,GAAG,EAAE,EAAE;QACP,cAAc,EAAE,EAAE;QAClB,eAAe,EAAE,UAAU;QAC3B,cAAc,EAAE,KAAK;QACrB,aAAa,EAAE,IAAoB;QACnC,WAAW,EAAE,IAAoB;KAClC,CAAA;IAYD,kDAAkD;IAClD,UAAU,GAAyB,IAAI,CAAA;IAE/B,WAAW,GAAsB,IAAI,CAAA;IACrC,SAAS,GAAoC,IAAI,CAAA;IACjD,gBAAgB,GAEpB,IAAI,CAAA;IACR,+DAA+D;IACvD,SAAS,GAAG,KAAK,CAAA;IACjB,SAAS,GAAG,CAAC,CAAA;IACb,SAAS,GAAG,CAAC,CAAA;IAErB,OAAO,GAAG,GAAG,EAAE,CAAC,EAAE,CAAA;IAElB,UAAU,CAAC,KAAU,EAAE,KAAoB;QACzC,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;QAC9B,MAAM,KAAK,GAAG,IAAW,CAAA;QAEzB,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CACzC,WAAW,EACX;YACE,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC;gBACvC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS;gBACxB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU;SAC5B,EACD,KAAK,CACN,CAAA;QAED,IAAI,CAAC,WAAW,GAAG,IAAI,UAAU,CAAC;YAChC,KAAK;YACL,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,SAAS;YAC3B,OAAO,EAAE,IAAI,CAAC,UAAU,IAAI,SAAS;YACrC,cAAc,EAAE,KAAK,CAAC,cAAc;SACrC,CAAC,CAAA;QAEF,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,gBAAgB,CAAC,eAAe,EAAE,KAAK,CAAC,CAAA;QAChE,GAAG,CAAC,eAAe,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;QAC9C,IAAI,CAAC,SAAS,GAAG,GAAG,CAAA;QACpB,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC,eAAe,CAAC,CAAA;QAC9C,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAA;QAExB,IAAI,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YAC/C,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,YAAY,CAAA;QACvC,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACnD,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAA;QACpC,CAAC;QAED,KAAK,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACzC,CAAC;IAED,YAAY;QACV,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACxC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;YAClE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAA;QAC9B,CAAC;QACD,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,CAAA;QAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAA;QACvB,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,CAAA;QACzB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;QACrB,KAAK,CAAC,YAAY,EAAE,CAAA;IACtB,CAAC;IAED,MAAM;QACJ,KAAK,CAAC,MAAM,EAAE,CAAA;QACd,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAM;QACzC,MAAM,KAAK,GAAG,IAAW,CAAA;QAEzB,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,YAAY,CAAA;YAC3C,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,GAAG;gBAAE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAA;QAC7D,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;QACzB,CAAC;IACH,CAAC;IAED,2DAA2D;IAC3D,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAA;IACzB,CAAC;IAEO,aAAa,CAAC,GAA6B,EAAE,OAAe;QAClE,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAM;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAA;QACpC,0EAA0E;QAC1E,4EAA4E;QAC5E,iEAAiE;QACjE,GAAG,CAAC,cAAc,GAAG,GAAG,CAAA;QACxB,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;YAC3B,GAAG,CAAC,eAAe,GAAG,GAAG,CAAA;YACzB,GAAG,CAAC,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;YACzC,GAAG,CAAC,eAAe,GAAG,IAAI,CAAA;QAC5B,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,cAAc,GAAG,GAAG,CAAA;YACxB,GAAG,CAAC,eAAe,GAAG,IAAI,CAAA;YAC1B,GAAG,CAAC,eAAe,GAAG,KAAK,CAAA;QAC7B,CAAC;IACH,CAAC;IAEO,sBAAsB,CAAC,KAAoB;QACjD,+DAA+D;QAC/D,KAAK,CAAC,gCAAgC,GAAG,IAAI,CAAA;QAC7C,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAA;QACzE,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;YACpE,MAAM,IAAI,GACR,WAAW,CAAC,IAAI,KAAK,WAAW;gBAC9B,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,WAAW,CAAC,IAAI,KAAK,SAAS;oBAChC,CAAC,CAAC,IAAI;oBACN,CAAC,CAAC,WAAW,CAAC,IAAI,KAAK,WAAW;wBAClC,CAAC,CAAC,MAAM;wBACR,CAAC,CAAC,EAAE,CAAA;YACR,IAAI,CAAC,IAAI;gBAAE,OAAM;YAEjB,MAAM,KAAK,GAAG,IAAI,CAAC,UAGX,CAAA;YACR,MAAM,MAAM,GACV,KAAK,IAAI,OAAO,KAAK,CAAC,aAAa,KAAK,UAAU;gBAChD,CAAC,CAAC,KAAK,CAAC,aAAa;gBACrB,CAAC,CAAC,IAAI,CAAA;YAEV,MAAM,IAAI,GAAG,WAAW,CAAC,QAAQ,CAAA;YACjC,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,IAAI,CAAA;YAC5D,MAAM,GAAG,GAAG,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;YAEjE,4EAA4E;YAC5E,4EAA4E;YAC5E,0EAA0E;YAC1E,2EAA2E;YAC3E,wDAAwD;YACxD,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,GAAG,IAAI,KAAK,EAAE,CAAC;oBACjB,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,OAAO,CAAA;oBACjC,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,CAAA;oBACvD,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,CAAA;gBAChE,CAAC;gBACD,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;oBACpB,IAAI,CAAC,GAAG;wBAAE,OAAM;oBAChB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;oBACrB,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;gBAChD,CAAC;qBAAM,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC3B,IAAI,IAAI,CAAC,SAAS;wBAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;gBACpE,CAAC;qBAAM,CAAC;oBACN,IAAI,IAAI,CAAC,SAAS;wBAAE,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;oBAChE,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;gBACxB,CAAC;gBACD,OAAM;YACR,CAAC;YAED,wEAAwE;YACxE,IAAI,CAAC,GAAG;gBAAE,OAAM;YAChB,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAA;QAChD,CAAC,CAAC,CAAA;IACJ,CAAC;IAEO,uBAAuB,CAC7B,WAAgC,EAChC,GAAoB;QAEpB,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAA;QAC7B,IAAI,CAAC,KAAK;YAAE,OAAM;QAElB,+DAA+D;QAC/D,qCAAqC;QACrC,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,OAAO,CAAA;QACjC,MAAM,IAAI,GAAG,EAAE,EAAE,KAAK,IAAI,KAAK,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,CAAA;QAC9D,MAAM,IAAI,GAAG,EAAE,EAAE,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,IAAI,CAAC,UAAU,CAAA;QAEhE,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,GAAG,IAAI,CAAA;QACzB,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;QAE/B,6DAA6D;QAC7D,MAAM,IAAI,GAAG,KAAK,CAAC,qBAAqB,EAAE,CAAA;QAC1C,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAM;QACjD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAA;QACtD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;QAEtD,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAA;QAC5D,MAAM,IAAI,GACR,WAAW,CAAC,IAAI,KAAK,WAAW;YAC9B,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,WAAW,CAAC,IAAI,KAAK,SAAS;gBAChC,CAAC,CAAC,WAAW;gBACb,CAAC,CAAC,aAAa,CAAA;QAEnB,MAAM,SAAS,GAAG,WAAW,CAAC,KAAqB,CAAA;QACnD,MAAM,MAAM,GAAG,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,KAAK,CAAA;QAEnE,MAAM,CAAC,aAAa,CAClB,IAAI,YAAY,CAAC,IAAI,EAAE;YACrB,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,IAAI;YAChB,OAAO;YACP,OAAO;YACP;;;;;;;;cAQE;YACF,SAAS,EAAE,oBAAoB;YAC/B,WAAW,EAAG,SAAiB,CAAC,WAAW,IAAI,OAAO;YACtD,OAAO,EAAE,SAAS,CAAC,OAAO;SAC3B,CAAC,CACH,CAAA;IACH,CAAC;;AAGH,MAAM,CAAC,MAAM,WAAW,GAAG,WAAW,CAAC,cAAc,CAAC;IACpD,GAAG,EAAE,oBAAoB;CAC1B,CAAC,CAAA;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,8EAA8E;AAC9E,+EAA+E;AAC/E,4EAA4E;AAC5E,8EAA8E;AAC9E,8EAA8E;AAC9E,uDAAuD;AACvD,8EAA8E;AAE9E,2EAA2E;AAC3E,MAAM,UAAU,WAAW,CACzB,EAA4B,EAC5B,GAAW,EACX,GAAW;IAEX,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAA;AAC/C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CACjC,KAA+B,EAC/B,MAAc,EACd,MAAc,EACd,GAAW,EACX,GAAW;IAEX,OAAO;QACL,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,MAAM,GAAG,GAAG,CAAC,GAAG,GAAG;QACjC,CAAC,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,GAAG;KAClC,CAAA;AACH,CAAC;AA0BD;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAC1B,MAAe,EACf,EAAqB;IAErB,MAAM,OAAO,GAAyB,EAAE,CAAA;IACxC,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,MAAM,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QACvD,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC;gBACX,EAAE,EAAE,OAAO;gBACX,IAAI,EAAE,EAAE,CAAC,IAAI;gBACb,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;gBACf,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;aAChB,CAAC,CAAA;QACJ,CAAC;aAAM,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YAC5B,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;QAC1D,CAAC;QACD,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YACrB,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;YAC3B,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAA;QACnC,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;IAClC,CAAC;IACD,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,EAAE,CAAC,IAAI,KAAK,MAAM,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC;YACpC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;YAC7B,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAE,EAAE,CAAC,CAAA;YAC/D,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;QAClC,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAE,EAAE,CAAC,CAAA;QAChE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;IAC5B,CAAC;IACD,IAAI,EAAE,CAAC,IAAI,KAAK,MAAM;QACpB,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;IAC1D,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;AAC5B,CAAC;AAqCD,MAAM,UAAU,UAAU,CAAC,IAAuB;IAIhD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,GAAG,CAAA;IAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAA;IACrC,MAAM,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAChE,MAAM,MAAM,GAAG,KAAK,GAAG,MAAM,CAAA;IAC7B,MAAM,KAAK,GAAG,WAAW,CAAC;QACxB,KAAK;QACL,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,GAAG;QAClC,cAAc,EAAE,IAAI,CAAC,cAAc,IAAI,EAAE;QACzC,eAAe,EAAE,UAAU;QAC3B,aAAa,EAAE,KAAK;KACrB,CAAgB,CAAA;IACjB,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAA;IAE3B,MAAM,OAAO,GAAG,GAA6B,EAAE;QAC7C,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAA;QACpC,OAAO;YACL,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACpC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;SACvC,CAAA;IACH,CAAC,CAAA;IAED,MAAM,YAAY,GAAG,CAAC,EAAO,EAAQ,EAAE;QACrC,MAAM,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,kBAAkB,EAAE,CAAA;QACxD,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,eAAe,CACrC,WAAW,EACX,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,EAClC,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,IAAI,CAAC,EAAE,GAAG,GAAG,EAClC,IAAI,CAAC,MAAM,EAAE,MAAM,IAAI,GAAG,EAC1B,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,EACtB,EAAE,CAAC,KAAK,CACT,CAAA;QACD,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;QACvB,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QAC/B,4DAA4D;QAC5D,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,kCAAkC,CAAC,CAAA;QAC3D,EAAE,CAAC,KAAK,CAAC,gCAAgC,GAAG,IAAI,CAAA;QAEhD,0EAA0E;QAC1E,4DAA4D;QAC5D,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAC7C,eAAe,EACf,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,EAAE,EACxC,EAAE,CAAC,KAAK,CACT,CAAA;QACD,OAAO,CAAC,UAAU,GAAG,CAAC,CAAA;QACtB,OAAO,CAAC,UAAU,GAAG,KAAK,CAAA;QAC1B,IAAI,OAAO,GAA6D,IAAI,CAAA;QAE5E,MAAM,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAA;QACnC,MAAM,MAAM,GACV,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;QAC5E,IAAI,MAAM,GAAG,KAAK,CAAA;QAClB,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YACtC,MAAM,IAAI,GACR,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,WAAW;gBACvB,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,SAAS;oBACzB,CAAC,CAAC,IAAI;oBACN,CAAC,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,WAAW;wBAC3B,CAAC,CAAC,MAAM;wBACR,CAAC,CAAC,EAAE,CAAA;YACR,IAAI,CAAC,IAAI;gBAAE,OAAM;YACjB,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAA;YAEtB,yEAAyE;YACzE,4EAA4E;YAC5E,MAAM,EAAE,GAAsB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;YACtD,IAAI,MAAM,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBACjD,qEAAqE;gBACrE,kEAAkE;gBAClE,MAAM,GAAG,GAAG,EAAE,EAAE,GAAG,CAAA;gBACnB,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;gBACpD,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,WAAW,IAAI,OAAO,EAAE,CAAC;oBACjD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAChD,GAAG,CAAC,WAAW,EACf,OAAO,CAAC,GAAG,CACZ,CAAA;oBACD,EAAE,CAAC,OAAO,GAAG,mBAAmB,CAC9B,KAAK,EACL,KAAK,EACL,MAAM,EACN,OAAO,CAAC,GAAG,EACX,OAAO,CAAC,GAAG,CACZ,CAAA;gBACH,CAAC;qBAAM,CAAC;oBACN,EAAE,CAAC,OAAO,GAAG,IAAI,CAAA;gBACnB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,UAAU,KAAK,KAAK,CAAC,IAAI,CAAC,CAAA;gBAChE,EAAE,CAAC,OAAO,GAAG,OAAO,CAAA;gBACpB,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,EAAE,GAAG,EAAG,CAAC,qBAAqB,EAAE,CAAA;oBACtC,MAAM,EAAE,GAAG,OAAO,EAAE,CAAA;oBACpB,IAAI,EAAE,EAAE,CAAC;wBACP,MAAM,CAAC,GAAG,WAAW,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;wBACrC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;wBACV,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;oBACZ,CAAC;yBAAM,CAAC;wBACN,EAAE,CAAC,CAAC,GAAG,CAAC,CAAA;wBACR,EAAE,CAAC,CAAC,GAAG,CAAC,CAAA;oBACV,CAAC;gBACH,CAAC;gBACD,IAAI,IAAI,KAAK,MAAM,IAAI,OAAO;oBAAE,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,CAAE,EAAE,EAAE,CAAC,CAAE,CAAC,CAAA;YAClE,CAAC;YAED,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;YACrC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;YACpB,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBAC7B,IAAI,CAAC,CAAC,EAAE,KAAK,OAAO;oBAAE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;qBAC5D,IAAI,CAAC,CAAC,EAAE,KAAK,OAAO;oBAAE,YAAY,EAAE,CAAA;;oBACpC,UAAU,EAAE,CAAA;YACnB,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,MAAM,UAAU,GAAG,GAAS,EAAE;YAC5B,OAAO,GAAG,IAAI,CAAA;YACd,OAAO,CAAC,UAAU,GAAG,KAAK,CAAA;YAC1B,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QACjC,CAAC,CAAA;QACD,MAAM,YAAY,GAAG,GAAS,EAAE;YAC9B,MAAM,EAAE,GAAG,OAAO,EAAE,CAAA;YACpB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAK,CAAA;YACxB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;YAC7B,OAAO,GAAG;gBACR,GAAG,EAAE,EAAE,CAAC,CAAC;gBACT,GAAG,EAAE,EAAE,CAAC,CAAC;gBACT,GAAG,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE;aAC5C,CAAA;YACD,qEAAqE;YACrE,qEAAqE;YACrE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;YAChD,IAAI,IAAI,CAAC,kBAAkB;gBACzB,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAA;YAC9D,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;YAChC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAA;YACzB,GAAG,CAAC,aAAa,EAAE,CAAA;QACrB,CAAC,CAAA;IACH,CAAC,CAAA;IACD,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,CAAA;AAChC,CAAC"}
package/dist/box.d.ts CHANGED
@@ -68,6 +68,8 @@ export interface BoxChild {
68
68
  }
69
69
  /** Pointer phase fed to {@link Box.handlePointer}. */
70
70
  export type PointerKind = 'down' | 'move' | 'up' | 'leave';
71
+ /** Inline style every drag-driven SVG surface wears (box, surface, panel3d). */
72
+ export declare const NO_SELECT_STYLE = "user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent";
71
73
  export interface BoxOptions {
72
74
  /** Outer width in layout units. */
73
75
  width: number;
@@ -109,6 +111,14 @@ export interface Box {
109
111
  * child activates it; a pressed child captures until `up`.
110
112
  */
111
113
  handlePointer: (kind: PointerKind, x: number, y: number) => void;
114
+ /**
115
+ * Is (x, y) over an INTERACTIVE child (vs static text / dead space)? Hosts
116
+ * use it to decide gesture policy — `panelScene`'s default claim asks this,
117
+ * so pressing a button claims the gesture while pressing prose orbits the
118
+ * camera (Tonio's cross-demo report: which parts orbit must not depend on
119
+ * which demo you're in).
120
+ */
121
+ interactiveAt: (x: number, y: number) => boolean;
112
122
  /** Move focus to the nearest focusable child in a cardinal direction (D-pad). */
113
123
  focusMove: (dx: number, dy: number) => void;
114
124
  /** Activate the focused child (menu button / Enter). */
@@ -129,7 +139,6 @@ export declare function textBlock(text: string, opts?: {
129
139
  color?: string;
130
140
  lineHeight?: number;
131
141
  }): BoxChild;
132
- /** An **inline icon** — an `iconGlyph` sized `size×size`, tinted `color`. */
133
142
  /**
134
143
  * Convert a client (mouse/touch) point into an SVG element's own user space.
135
144
  *
@@ -156,6 +165,7 @@ export declare function svgPoint(el: SVGGraphicsElement, clientX: number, client
156
165
  x: number;
157
166
  y: number;
158
167
  };
168
+ /** An **inline icon** — an `iconGlyph` sized `size×size`, tinted `color`. */
159
169
  export declare function inlineIcon(name: string, opts?: {
160
170
  size?: number;
161
171
  color?: string;
package/dist/box.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"box.d.ts","sourceRoot":"","sources":["../src/box.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"box.d.ts","sourceRoot":"","sources":["../src/box.ts"],"names":[],"mappings":"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"}
package/dist/box.js CHANGED
@@ -256,6 +256,8 @@ import { svgElements } from 'tosijs';
256
256
  import { flowLayout, nearestInDirection, } from './flow-layout';
257
257
  import { measureTextWrap, measureTextWidth, clampScroll, } from './widgets3d-layout';
258
258
  import { iconGlyph } from './svg-icons';
259
+ /** Inline style every drag-driven SVG surface wears (box, surface, panel3d). */
260
+ export const NO_SELECT_STYLE = 'user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent';
259
261
  let boxSeq = 0;
260
262
  export function box(opts, ...children) {
261
263
  const { padding = 0, gap = 0, background, border, borderWidth = 1, radius = 0, align = 'top', } = opts;
@@ -263,7 +265,7 @@ export function box(opts, ...children) {
263
265
  const el = svgElements.g({ 'data-box': '' });
264
266
  // Dragging (scroll, slider, spacebar-caret) must not select the text nodes —
265
267
  // SVG text is selectable by default and a drag paints every label blue.
266
- el.setAttribute('style', 'user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent');
268
+ el.setAttribute('style', NO_SELECT_STYLE);
267
269
  const bgRect = svgElements.rect({ 'data-box-bg': '', rx: radius, ry: radius });
268
270
  const clip = svgElements.clipPath({ id: clipId });
269
271
  const clipRect = svgElements.rect({ x: 0, y: 0 });
@@ -506,6 +508,19 @@ export function box(opts, ...children) {
506
508
  children[downTarget]?.handlePointer
507
509
  ? downTarget
508
510
  : -1;
511
+ // Hover bookkeeping runs for EVERY un-captured move — the raw-child path
512
+ // below returns early, and skipping this left the previous child wearing
513
+ // its hover tint forever (in VR that highlight IS the pointer feedback).
514
+ // During a captured drag hover is frozen deliberately: the gesture owns
515
+ // the pointer, and flicking highlights under a drag reads as noise.
516
+ if (kind === 'move' && captured < 0 && hit !== hoverIdx) {
517
+ const old = hoverIdx;
518
+ hoverIdx = hit;
519
+ if (old >= 0)
520
+ applyState(old);
521
+ if (hit >= 0)
522
+ applyState(hit);
523
+ }
509
524
  const raw = captured >= 0
510
525
  ? captured
511
526
  : hit >= 0 && children[hit].handlePointer
@@ -543,16 +558,6 @@ export function box(opts, ...children) {
543
558
  applyState(hit);
544
559
  }
545
560
  }
546
- else if (kind === 'move') {
547
- if (hit !== hoverIdx) {
548
- const old = hoverIdx;
549
- hoverIdx = hit;
550
- if (old >= 0)
551
- applyState(old);
552
- if (hit >= 0)
553
- applyState(hit);
554
- }
555
- }
556
561
  else if (kind === 'up') {
557
562
  const p = pressedIdx;
558
563
  pressedIdx = -1;
@@ -571,6 +576,9 @@ export function box(opts, ...children) {
571
576
  downTarget = -1;
572
577
  }
573
578
  },
579
+ interactiveAt(x, y) {
580
+ return hitTest(x, y) >= 0;
581
+ },
574
582
  focusMove(dx, dy) {
575
583
  const old = focused;
576
584
  // A focused child with inner traversal gets the move first; only when it
@@ -647,8 +655,20 @@ export function textBlock(text, opts = {}) {
647
655
  'font-weight': font.weight != null ? String(font.weight) : undefined,
648
656
  'font-style': font.style,
649
657
  });
658
+ // One-entry wrap cache keyed by width: the box measures then paints at the
659
+ // SAME width every relayout, so the naive version ran the glyph measurer
660
+ // twice per frame — at pointer frequency during a resize drag.
661
+ let wrapW = -1;
662
+ let wrapLines = [];
663
+ const wrap = (width) => {
664
+ if (width !== wrapW) {
665
+ wrapW = width;
666
+ wrapLines = measureTextWrap(text, width, font);
667
+ }
668
+ return wrapLines;
669
+ };
650
670
  const render = (width) => {
651
- const lines = measureTextWrap(text, width, font);
671
+ const lines = wrap(width);
652
672
  el.textContent = '';
653
673
  lines.forEach((line, i) => {
654
674
  el.append(svgElements.tspan({ x: 0, y: i * lineHeight + Math.round(font.size * 0.82) }, line));
@@ -659,12 +679,11 @@ export function textBlock(text, opts = {}) {
659
679
  el,
660
680
  kind: 'block',
661
681
  measure: (w) => ({
662
- height: measureTextWrap(text, w, font).length * lineHeight,
682
+ height: wrap(w).length * lineHeight,
663
683
  }),
664
684
  paint: render,
665
685
  };
666
686
  }
667
- /** An **inline icon** — an `iconGlyph` sized `size×size`, tinted `color`. */
668
687
  /**
669
688
  * Convert a client (mouse/touch) point into an SVG element's own user space.
670
689
  *
@@ -699,6 +718,7 @@ export function svgPoint(el, clientX, clientY) {
699
718
  const p = pt.matrixTransform(ctm.inverse());
700
719
  return { x: p.x, y: p.y };
701
720
  }
721
+ /** An **inline icon** — an `iconGlyph` sized `size×size`, tinted `color`. */
702
722
  export function inlineIcon(name, opts = {}) {
703
723
  const size = opts.size ?? 24;
704
724
  const el = iconGlyph(name, {
package/dist/box.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"box.js","sourceRoot":"","sources":["../src/box.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"box.js","sourceRoot":"","sources":["../src/box.ts"],"names":[],"mappings":"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"}