tosijs-3d 0.10.10 → 0.10.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -6,6 +6,24 @@ All notable changes to **tosijs-3d**. This project is pre-1.0 (`0.x`), so minor
6
6
  versions may carry breaking peer-dependency changes — each is called out in a
7
7
  **⚠️ Breaking** block in its version section below, with what a consumer must do.
8
8
 
9
+ ## 0.10.12
10
+
11
+ ### Added
12
+
13
+ - **A system panel's content can be rebuilt in place** (#111, from ensemble): system panels are now identified by their `<tosi-b3d-panel>` element, not by the SVG it shows. Setting `el.svg = next` on an open one shows the new content where it was, with the same system-bar button, the same dragged spot (flat and in a headset) and its open state, refitted to the new height. A closed one shows it when next opened. Before, a host that rebuilt its `panel3d` got a second button, lost the spot, and the open panel kept the old content. The setter fires a bubbling `panelcontent` event; disposing the dropped content stays the host's job.
14
+ - **`stretch` on a destroyable: a per-axis scale applied when the library piece arrives** (#105, the rest of it): `stretch="2 1 3"` multiplies `scale` per axis. A stretch written on the node by hand before the instance existed was lost when it loaded (ensemble measured 6.036 wide where 18.108 is right); as an attribute it is applied on adoption, like `scale`. A hand-set scaling still survives renders until `scale` or `stretch` changes.
15
+
16
+ Size: barrel (min, packages external) 1154.3 KB raw / 395.0 KB gz, +0.06% on 0.10.11.
17
+
18
+ ## 0.10.11
19
+
20
+ ### Added
21
+
22
+ - **A table can show its selection as the row** (#109, from ensemble): `selectionMarker: 'row'` fills the selected row and drops the radio/checkbox column, for rows that carry a leading control of their own (two circles side by side read as one toggle that did not work). Selection, `handleSelect` and the D-pad path are unchanged. A rebuilt table can start with `selected` or take `setSelected(ids)` (neither calls `handleSelect`), and `revealRow(id)` scrolls its own body to a row.
23
+ - **A panel's scroll position can be read, set, and aimed at a row** (#110, from ensemble): `Panel3d` gains `scrollTop` (get/set, clamped), so a host that rebuilds a panel keeps its place, and `reveal(widget, band?)`, which scrolls the least that brings a row into view (`panel.reveal(table, table.rowBox(id))` for one table row). Coordinate-based, so it works in a headset, where the host has no DOM to measure.
24
+
25
+ Size: barrel (min, packages external) 1153.7 KB raw / 394.8 KB gz, +0.08% on 0.10.10.
26
+
9
27
  ## 0.10.10
10
28
 
11
29
  ### Fixed
@@ -44,6 +44,12 @@ export declare class B3dDestroyable extends AbstractMesh {
44
44
  * quantities and one of them is already documented.
45
45
  */
46
46
  scale: number;
47
+ /**
48
+ * Per-axis stretch for a library-backed piece, times `scale`: `"2 1 3"`
49
+ * (x y z, in the model's own frame). Applied when the instance arrives, so
50
+ * a stretch set at build time survives the load (#105). Empty = none.
51
+ */
52
+ stretch: string;
47
53
  color: string;
48
54
  capacity: number;
49
55
  armor: number;
@@ -73,6 +79,7 @@ export declare class B3dDestroyable extends AbstractMesh {
73
79
  destroyable: 'on' | 'off';
74
80
  size: number;
75
81
  scale: number;
82
+ stretch: string;
76
83
  color: string;
77
84
  capacity: number;
78
85
  armor: number;
@@ -135,12 +142,12 @@ export declare class B3dDestroyable extends AbstractMesh {
135
142
  */
136
143
  setChain(links: ChainLink[]): void;
137
144
  /**
138
- * Push `scale` onto the instantiated node.
145
+ * Push `scale` (times `stretch`, per axis) onto the instantiated node.
139
146
  *
140
147
  * A library instance's root is a `TransformNode`, so scaling it scales the
141
- * whole model — which is what a placed piece means by scale. Uniform on
142
- * purpose: a non-uniform scale on an arbitrary model is a modelling
143
- * decision, not a placement one, and it breaks normals.
148
+ * whole model — which is what a placed piece means by scale. `scale` is
149
+ * uniform; a stretch is said separately, so a placement and a reshaping
150
+ * stay two different requests (ensemble stretches structural pieces).
144
151
  */
145
152
  private _stopLoad;
146
153
  render(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"b3d-destroyable.d.ts","sourceRoot":"","sources":["../src/b3d-destroyable.ts"],"names":[],"mappings":"AAsKA,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAA;AAE1C,OAAO,EAAE,YAAY,EAAS,MAAM,gBAAgB,CAAA;AACpD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAErE,OAAO,EAAe,KAAK,MAAM,EAAE,MAAM,aAAa,CAAA;AAGtD,qBAAa,cAAe,SAAQ,YAAY;IAC9C,MAAM,CAAC,gBAAgB,SAAyB;IAEhD,MAAM,CAAC,cAAc;;QAGnB;;;;;;;;;;;WAWG;;QAEH;;;;;;;;;WASG;qBACkB,IAAI,GAAG,KAAK;;QAEjC;;;;;;;;;;WAUG;;;;;;;;;;;;;;;;;;;;;;;;;;MAyBJ;IAEO,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,IAAI,GAAG,KAAK,CAAA;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,eAAe,EAAE,MAAM,CAAA;IACvB,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAE1B;;;OAGG;IACH,KAAK,EAAE,SAAS,EAAE,CAAK;IACvB,OAAO,CAAC,SAAS,CAAC,CAAqB;IACvC;;;;;OAKG;IACH,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE;QACrB,EAAE,EAAE,MAAM,CAAA;QACV,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAA;QACzB,wEAAwE;QACxE,KAAK,CAAC,EAAE,KAAK,CAAA;KACd,KAAK,IAAI,CAAA;IAEV;;wDAEoD;IACpD,aAAa,EAAE,MAAM,GAAG,IAAI,CAAO;IAEnC;gDAC4C;IAC5C,OAAO,CAAC,aAAa;IAuCrB,uEAAuE;IACvE,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,kFAAkF;IAClF,IAAI,IAAI,IAAI,OAAO,CAElB;IAED,2EAA2E;IAC3E,OAAO,CAAC,MAAM;IAWd;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;IA4CxB,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,GAAG,IAAI;IA6ElD,oFAAoF;IACpF,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,WAAW,EAAE;IAIpD;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI;IAKlC;;;;;;;OAOG;IACH,OAAO,CAAC,SAAS,CAA4B;IAE7C,MAAM,IAAI,IAAI;IAQd,YAAY,IAAI,IAAI;CAQrB;AAED,eAAO,MAAM,cAAc,iDAAkC,CAAA"}
1
+ {"version":3,"file":"b3d-destroyable.d.ts","sourceRoot":"","sources":["../src/b3d-destroyable.ts"],"names":[],"mappings":"AAsKA,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAA;AAE1C,OAAO,EAAE,YAAY,EAAS,MAAM,gBAAgB,CAAA;AACpD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAErE,OAAO,EAAe,KAAK,MAAM,EAAE,MAAM,aAAa,CAAA;AAGtD,qBAAa,cAAe,SAAQ,YAAY;IAC9C,MAAM,CAAC,gBAAgB,SAAyB;IAEhD,MAAM,CAAC,cAAc;;QAGnB;;;;;;;;;;;WAWG;;QAEH;;;;;;;;;WASG;qBACkB,IAAI,GAAG,KAAK;;QAEjC;;;;;;;;;;WAUG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;MAyBJ;IAEO,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,IAAI,GAAG,KAAK,CAAA;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,eAAe,EAAE,MAAM,CAAA;IACvB,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAE1B;;;OAGG;IACH,KAAK,EAAE,SAAS,EAAE,CAAK;IACvB,OAAO,CAAC,SAAS,CAAC,CAAqB;IACvC;;;;;OAKG;IACH,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE;QACrB,EAAE,EAAE,MAAM,CAAA;QACV,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAA;QACzB,wEAAwE;QACxE,KAAK,CAAC,EAAE,KAAK,CAAA;KACd,KAAK,IAAI,CAAA;IAEV;;wDAEoD;IACpD,aAAa,EAAE,MAAM,GAAG,IAAI,CAAO;IAEnC;gDAC4C;IAC5C,OAAO,CAAC,aAAa;IAuCrB,uEAAuE;IACvE,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,kFAAkF;IAClF,IAAI,IAAI,IAAI,OAAO,CAElB;IAED,2EAA2E;IAC3E,OAAO,CAAC,MAAM;IAWd;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;IA4CxB,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,GAAG,IAAI;IA6ElD,oFAAoF;IACpF,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,WAAW,EAAE;IAIpD;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI;IAKlC;;;;;;;OAOG;IACH,OAAO,CAAC,SAAS,CAA4B;IAE7C,MAAM,IAAI,IAAI;IAQd,YAAY,IAAI,IAAI;CAQrB;AAED,eAAO,MAAM,cAAc,iDAAkC,CAAA"}
@@ -212,6 +212,12 @@ export class B3dDestroyable extends AbstractMesh {
212
212
  * quantities and one of them is already documented.
213
213
  */
214
214
  scale: 1,
215
+ /**
216
+ * Per-axis stretch for a library-backed piece, times `scale`: `"2 1 3"`
217
+ * (x y z, in the model's own frame). Applied when the instance arrives, so
218
+ * a stretch set at build time survives the load (#105). Empty = none.
219
+ */
220
+ stretch: '',
215
221
  color: '#cc3333',
216
222
  capacity: 10, // hit points
217
223
  armor: 0, // flat damage shrugged off per hit
@@ -438,12 +444,12 @@ export class B3dDestroyable extends AbstractMesh {
438
444
  this._behavior?.setChain(links);
439
445
  }
440
446
  /**
441
- * Push `scale` onto the instantiated node.
447
+ * Push `scale` (times `stretch`, per axis) onto the instantiated node.
442
448
  *
443
449
  * A library instance's root is a `TransformNode`, so scaling it scales the
444
- * whole model — which is what a placed piece means by scale. Uniform on
445
- * purpose: a non-uniform scale on an arbitrary model is a modelling
446
- * decision, not a placement one, and it breaks normals.
450
+ * whole model — which is what a placed piece means by scale. `scale` is
451
+ * uniform; a stretch is said separately, so a placement and a reshaping
452
+ * stay two different requests (ensemble stretches structural pieces).
447
453
  */
448
454
  _stopLoad = null;
449
455
  render() {
@@ -1 +1 @@
1
- {"version":3,"file":"b3d-destroyable.js","sourceRoot":"","sources":["../src/b3d-destroyable.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"b3d-destroyable.js","sourceRoot":"","sources":["../src/b3d-destroyable.ts"],"names":[],"mappings":"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"}
@@ -61,8 +61,15 @@ export declare class B3dPanel extends Component {
61
61
  resolution: number;
62
62
  exclusive: string;
63
63
  open: boolean;
64
- /** Live content (JS only): an SVG, with its own `handlePointer` if it takes the pointer. */
65
- svg: SVGSVGElement | null;
64
+ /**
65
+ * Live content (JS only): an SVG, with its own `handlePointer` if it takes
66
+ * the pointer. Setting it again swaps an open system panel's content in
67
+ * place (same button, spot and open state, #111) and fires `panelcontent`;
68
+ * disposing the old content is the setter's caller's job.
69
+ */
70
+ get svg(): SVGSVGElement | null;
71
+ set svg(next: SVGSVGElement | null);
72
+ private _svg;
66
73
  /** Where it goes in the flat view, in place of the anchor (JS only). */
67
74
  flatAnchor: AnchorPreset | AnchorSpec | null;
68
75
  /** Flat placement in screen terms (pixels / % / vmin pins); wins over `flatAnchor`. JS only. */
@@ -1 +1 @@
1
- {"version":3,"file":"b3d-panel.d.ts","sourceRoot":"","sources":["../src/b3d-panel.ts"],"names":[],"mappings":"AAwPA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,OAAO,KAAK,EACV,cAAc,EACd,UAAU,EACV,YAAY,EACZ,YAAY,EACb,MAAM,kBAAkB,CAAA;AAGzB,qBAAa,QAAS,SAAQ,SAAS;IACrC,MAAM,CAAC,gBAAgB,SAAmB;IAE1C,MAAM,CAAC,cAAc;;;;;;;;;;;;;;;;;;;;;QAqBnB,gFAAgF;;QAEhF,gGAAgG;;QAEhG,mFAAmF;;QAEnF,gDAAgD;;MAEjD;IAED,MAAM,CAAC,eAAe;;;;MAErB;IAEO,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,OAAO,CAAA;IAErB,4FAA4F;IAC5F,GAAG,EAAE,aAAa,GAAG,IAAI,CAAO;IAChC,wEAAwE;IACxE,UAAU,EAAE,YAAY,GAAG,UAAU,GAAG,IAAI,CAAO;IACnD,gGAAgG;IAChG,YAAY,EAAE,YAAY,GAAG,IAAI,CAAO;IACxC,qFAAqF;IACrF,WAAW,EAAE,YAAY,GAAG,UAAU,GAAG,IAAI,CAAO;IACpD,UAAU,SAAI;IAQd,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,QAAQ;IAOhB,sDAAsD;IACtD,MAAM,IAAI,cAAc;CAyDzB;AAED,eAAO,MAAM,QAAQ,EAAgC,CACnD,GAAG,IAAI,EAAE,OAAO,EAAE,KACf,QAAQ,CAAA"}
1
+ {"version":3,"file":"b3d-panel.d.ts","sourceRoot":"","sources":["../src/b3d-panel.ts"],"names":[],"mappings":"AA8PA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,OAAO,KAAK,EACV,cAAc,EACd,UAAU,EACV,YAAY,EACZ,YAAY,EACb,MAAM,kBAAkB,CAAA;AAGzB,qBAAa,QAAS,SAAQ,SAAS;IACrC,MAAM,CAAC,gBAAgB,SAAmB;IAE1C,MAAM,CAAC,cAAc;;;;;;;;;;;;;;;;;;;;;QAqBnB,gFAAgF;;QAEhF,gGAAgG;;QAEhG,mFAAmF;;QAEnF,gDAAgD;;MAEjD;IAED,MAAM,CAAC,eAAe;;;;MAErB;IAEO,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,OAAO,CAAA;IAErB;;;;;OAKG;IACH,IAAI,GAAG,IAAI,aAAa,GAAG,IAAI,CAE9B;IACD,IAAI,GAAG,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,EAIjC;IACD,OAAO,CAAC,IAAI,CAA6B;IACzC,wEAAwE;IACxE,UAAU,EAAE,YAAY,GAAG,UAAU,GAAG,IAAI,CAAO;IACnD,gGAAgG;IAChG,YAAY,EAAE,YAAY,GAAG,IAAI,CAAO;IACxC,qFAAqF;IACrF,WAAW,EAAE,YAAY,GAAG,UAAU,GAAG,IAAI,CAAO;IACpD,UAAU,SAAI;IAQd,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,QAAQ;IAOhB,sDAAsD;IACtD,MAAM,IAAI,cAAc;CAyDzB;AAED,eAAO,MAAM,QAAQ,EAAgC,CACnD,GAAG,IAAI,EAAE,OAAO,EAAE,KACf,QAAQ,CAAA"}
package/dist/b3d-panel.js CHANGED
@@ -243,6 +243,12 @@ gets the panel's pointer, such as an `inventoryDock`'s), `screenAnchor` (flat, p
243
243
  it goes in the flat view instead), `focusAnchor` and `focusScale` (where it
244
244
  comes, and how much bigger, when its content asks for focus with a
245
245
  `panelfocus` event). A system-bar panel with no `svg` opens a card with its title.
246
+
247
+ **Rebuilt content goes back on the same element.** A system panel is the
248
+ `<tosi-b3d-panel>`, not its content: set `el.svg = next` and an open panel
249
+ shows `next` where it is, with the same button, spot and open state, refitted
250
+ to the new height (a closed one shows it next time). Dispose the content you
251
+ dropped yourself. The setter fires a bubbling `panelcontent` event.
246
252
  */
247
253
  /*{ "parent": "ui-in-scene", "order": 10 }*/
248
254
  import { Component } from 'tosijs';
@@ -281,8 +287,22 @@ export class B3dPanel extends Component {
281
287
  static shadowStyleSpec = {
282
288
  ':host': { display: 'none' }, // config-only element, no visual presence
283
289
  };
284
- /** Live content (JS only): an SVG, with its own `handlePointer` if it takes the pointer. */
285
- svg = null;
290
+ /**
291
+ * Live content (JS only): an SVG, with its own `handlePointer` if it takes
292
+ * the pointer. Setting it again swaps an open system panel's content in
293
+ * place (same button, spot and open state, #111) and fires `panelcontent`;
294
+ * disposing the old content is the setter's caller's job.
295
+ */
296
+ get svg() {
297
+ return this._svg;
298
+ }
299
+ set svg(next) {
300
+ if (next === this._svg)
301
+ return;
302
+ this._svg = next;
303
+ this.dispatchEvent(new CustomEvent('panelcontent', { bubbles: true }));
304
+ }
305
+ _svg = null;
286
306
  /** Where it goes in the flat view, in place of the anchor (JS only). */
287
307
  flatAnchor = null;
288
308
  /** Flat placement in screen terms (pixels / % / vmin pins); wins over `flatAnchor`. JS only. */
@@ -1 +1 @@
1
- {"version":3,"file":"b3d-panel.js","sourceRoot":"","sources":["../src/b3d-panel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"b3d-panel.js","sourceRoot":"","sources":["../src/b3d-panel.ts"],"names":[],"mappings":"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"}
@@ -434,8 +434,9 @@ export declare class AbstractMesh extends B3dChild {
434
434
  sceneReady(owner: B3d, _scene: BABYLON.Scene): void;
435
435
  /**
436
436
  * Apply a uniform `scale` attribute to the mesh (a non-positive or non-finite
437
- * value means 1). Not part of the per-render sync, because most subclasses
438
- * own `scaling` for their own reasons; elements with a `scale` attribute call
437
+ * value means 1), times a per-axis `stretch` (`"2 1 3"`) if the element has
438
+ * one. Not part of the per-render sync, because most subclasses own
439
+ * `scaling` for their own reasons; elements with a `scale` attribute call
439
440
  * this from their `render()` so a later write takes effect.
440
441
  */
441
442
  protected applyUniformScale(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"b3d-utils.d.ts","sourceRoot":"","sources":["../src/b3d-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"b3d-utils.d.ts","sourceRoot":"","sources":["../src/b3d-utils.ts"],"names":[],"mappings":"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"}
package/dist/b3d-utils.js CHANGED
@@ -1019,8 +1019,9 @@ export class AbstractMesh extends B3dChild {
1019
1019
  }
1020
1020
  /**
1021
1021
  * Apply a uniform `scale` attribute to the mesh (a non-positive or non-finite
1022
- * value means 1). Not part of the per-render sync, because most subclasses
1023
- * own `scaling` for their own reasons; elements with a `scale` attribute call
1022
+ * value means 1), times a per-axis `stretch` (`"2 1 3"`) if the element has
1023
+ * one. Not part of the per-render sync, because most subclasses own
1024
+ * `scaling` for their own reasons; elements with a `scale` attribute call
1024
1025
  * this from their `render()` so a later write takes effect.
1025
1026
  */
1026
1027
  applyUniformScale() {
@@ -1028,7 +1029,19 @@ export class AbstractMesh extends B3dChild {
1028
1029
  if (node?.scaling == null)
1029
1030
  return;
1030
1031
  const s = this.scale;
1031
- const k = typeof s === 'number' && Number.isFinite(s) && s > 0 ? s : 1;
1032
+ const u = typeof s === 'number' && Number.isFinite(s) && s > 0 ? s : 1;
1033
+ /*
1034
+ A STRETCH SET BEFORE THE NODE EXISTS survives its arrival (#105, the
1035
+ second half): written on the node by hand, it was lost when the library
1036
+ instance arrived and the uniform scale went on. As an attribute it is
1037
+ applied on adoption like `scale`. Missing or bad axes are 1.
1038
+ */
1039
+ const st = String(this.stretch ?? '')
1040
+ .trim()
1041
+ .split(/[\s,]+/)
1042
+ .map(Number);
1043
+ const ax = (i) => Number.isFinite(st[i]) && st[i] > 0 ? u * st[i] : u;
1044
+ const k = `${ax(0)} ${ax(1)} ${ax(2)}`;
1032
1045
  /*
1033
1046
  ONLY WHEN `scale` (or the node) CHANGES (tosijs-3d#105). This runs on
1034
1047
  every render, so writing each time wiped any per-axis scale a consumer
@@ -1039,7 +1052,7 @@ export class AbstractMesh extends B3dChild {
1039
1052
  if (this._scaleApplied?.node === node && this._scaleApplied.k === k)
1040
1053
  return;
1041
1054
  this._scaleApplied = { node, k };
1042
- node.scaling.set(k, k, k);
1055
+ node.scaling.set(ax(0), ax(1), ax(2));
1043
1056
  }
1044
1057
  _scaleApplied = null;
1045
1058
  _originShift = null;
@@ -1 +1 @@
1
- {"version":3,"file":"b3d-utils.js","sourceRoot":"","sources":["../src/b3d-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAA;AAE1C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,CAAA;AAEhC,MAAM,UAAU,YAAY,CAAC,EAAe;IAC1C,IAAI,IAAI,GAAuB,EAAE,CAAC,aAAa,CAAA;IAC/C,OAAO,IAAI,IAAI,IAAI,EAAE,CAAC;QACpB,IACE,OAAO,IAAI,IAAI;YACf,UAAU,IAAI,IAAI;YAClB,OAAQ,IAAY,CAAC,QAAQ,KAAK,UAAU,EAC5C,CAAC;YACD,OAAO,IAAsB,CAAA;QAC/B,CAAC;QACD,IAAI,GAAG,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,EAAe;IAC5C,IAAI,IAAI,GAAuB,EAAE,CAAC,aAAa,CAAA;IAC/C,OAAO,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;QACpD,IAAI,GAAG,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,cAAc,CAAC,KAAiB;IAC9C,MAAM,IAAI,GAAG,KAAsC,CAAA;IACnD,IAAI,IAAI,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,gBAAgB,KAAK,UAAU;QAAE,OAAO,IAAI,CAAA;IAC5E,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9C,MAAM,CAAC,GAAG,IAAW,CAAA;QACrB,IACE,CAAC,CAAC,MAAM,KAAK,IAAI;YACjB,CAAC,CAAC,CAAC,IAAI;YACP,CAAC,CAAC,CAAC,OAAO;YACV,CAAC,CAAC,IAAI,EAAE,QAAQ,IAAI,IAAI,EACxB,CAAC;YACD,OAAO,CAAC,CAAC,IAAI,CAAC,QAA2B,CAAA;QAC3C,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,oBAAoB,CAClC,IAAa,EACb,GAAG,QAA8B;IAEjC,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,+BAA+B,CAAC,CAAC,CAAA;IACxE,IAAI,CAAC,eAAe,CAAC,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAA;AAC5C,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,MAA8B;IACzD,OAAO,MAAM,CAAC,MAAM,CAClB,CAAC,IAAI,EAAE,EAAE,CAAE,IAAqB,CAAC,QAAQ,IAAI,IAAI,CAChC,CAAA;AACrB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,CAAU,EAAW,EAAE,CAC3C,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,OAAO,CAAA;AAE7C;;;;;;;;GAQG;AACH;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAoB,EAAU,EAAE;IACzD,MAAM,SAAS,GAAI,KAAK,CAAC,QAAgB,EAAE,aAAa,CAAA;IACxD,4EAA4E;IAC5E,+EAA+E;IAC/E,0EAA0E;IAC1E,0EAA0E;IAC1E,4EAA4E;IAC5E,yDAAyD;IACzD,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,IAAI,CAAC;QAAE,OAAO,SAAS,CAAA;IACrE,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,CAAA;AACvE,CAAC,CAAA;AAED;;;;;;;;;;GAUG;AACH;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAoB,EAAU,EAAE;IAC3D,MAAM,SAAS,GAAI,KAAK,CAAC,QAA4C;QACnE,EAAE,QAAQ,CAAA;IACZ,OAAO,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAA;AAC1E,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAoB,EAAa,EAAE;IAC5D,MAAM,SAAS,GAAI,KAAK,CAAC,QAA4C;QACnE,EAAE,QAAQ,CAAA;IACZ,IAAI,SAAS,IAAI,IAAI;QAAE,OAAO,SAAS,CAAA;IACvC,MAAM,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IAC5B,OAAO;QACL,EAAE;QACF,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC;QACV,WAAW,EAAE,CAAC;QACd,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,EAAE,KAAK,CAAC;QAChB,KAAK,EAAE,CAAC;KACT,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,IAAY,EAAU,EAAE,CACrD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AAE/B;;;GAGG;AACH,MAAM,kBAAkB,GAAG;IACzB,uEAAuE;IACvE,wDAAwD;IACxD,iBAAiB;IACjB,mBAAmB;IACnB,aAAa;IACb,cAAc;IACd,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,kBAAkB;IAClB,YAAY;IACZ,aAAa;IACb,SAAS;IACT,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,QAAQ;CACT,CAAA;AAED;;;;;;;;;;;GAWG;AACH;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAY,EAAW,EAAE;IACjD,MAAM,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAA;IAC5C,OAAO,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;AACvD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAU,EAAE;IACjD;;;;;;;;;;MAUE;IACF,IAAI,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAA;IAC3D;;;;;;MAME;IACF,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IAC7B,IAAI,GAAG,IAAI,IAAI;QAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IAC/C,SAAS,CAAC;QACR,MAAM,KAAK,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;QAC7B,MAAM,GAAG,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;QACnE,IAAI,GAAG,IAAI,IAAI;YAAE,OAAO,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACpD,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAA;IACnC,CAAC;AACH,CAAC,CAAA;AAED;;;GAGG;AACH,SAAS,kBAAkB,CAAC,IAA2B;IACrD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;IAC7B,MAAM,MAAM,GAAG;QACb,GAAG,CAAC,IAAI,YAAY,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;KAC9B,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC,CAAA;IACzC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACpC,IAAI,IAAI,GAAG,QAAQ,CAAA;IACnB,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;QAC1B,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;QAC7B,MAAM,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAA;QAC3D,IAAI,CAAC,GAAG,IAAI;YAAE,IAAI,GAAG,CAAC,CAAA;IACxB,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAUD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,SAAS,CAAC,KAAsC;IAC9D,OAAO,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;AACzD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAAC,KAAsC;IACjE,IAAI,SAAS,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IAClC,IAAI,KAAK,EAAE,eAAe,KAAK,IAAI;QAAE,OAAO,KAAK,CAAA;IACjD,OAAO,KAAK,EAAE,aAAa,IAAI,IAAI,CAAA;AACrC,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,UAAU,CAAC,IAA0B;IACnD,IAAI,CAAC,QAAQ,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAA;AAClE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,IAA0B;IACpD,OAAO,CACJ,IAAI,CAAC,QAA8C,EAAE,YAAY,KAAK,IAAI,CAC5E,CAAA;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAC3B,IAAiC,EACjC,GAAgC;IAEhC,MAAM,OAAO,GAAG,GAAG,EAAE,MAAM,CAAA;IAC3B,IAAI,OAAO,IAAI,IAAI;QAAE,OAAO,KAAK,CAAA;IACjC,IAAI,CAAC,GAAY,IAAI,CAAA;IACrB,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG;YAAE,OAAO,KAAK,CAAA;QAC3B,IAAI,CAAC,KAAK,OAAO;YAAE,OAAO,IAAI,CAAA;QAC9B,CAAC,GAAI,CAA0B,CAAC,MAAM,CAAA;IACxC,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,UAAU,CACxB,MAA6C,EAC7C,OAA6C,EAAE;IAE/C,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAA;IAChC,OAAO,CAAC,CAAuB,EAAW,EAAE,CAC1C,CAAC,CAAC,UAAU;QACZ,CAAC,CAAC,SAAS,EAAE;QACb,CAAC,WAAW,CAAC,CAAC,CAAC;QACf,CAAC,CAAC,MAAM,IAAI,IAAI,IAAI,gBAAgB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAChD,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAA;AAC3B,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,UAAU,kBAAkB,CAChC,IAA0B,EAC1B,GAAG,MAAgB;IAEnB,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAA6B,CAAA;IAC9D,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAA;IAC1C,KAAK,MAAM,CAAC,IAAI,MAAM;QAAE,IAAI,CAAC,KAAK,EAAE;YAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACjD,IAAI,CAAC,QAAQ,GAAG,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,CAAA;AACnD,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,eAAe,CAAC,IAA0B;IACxD,OAAO,CACJ,IAAI,CAAC,QAA4C,EAAE,SAAS;QAC7D,YAAY,CACb,CAAA;AACH,CAAC;AAED,MAAM,YAAY,GAAsB,EAAE,CAAA;AAE1C,uCAAuC;AACvC,MAAM,UAAU,gBAAgB,CAC9B,IAA0B,EAC1B,MAAyB;IAEzB,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;IAClC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACnC,KAAK,MAAM,CAAC,IAAI,MAAM;QAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAA;IACzD,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;GAIG;AACH;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,gBAAgB,CAC9B,IAA2B,EAC3B,UAA4C,EAAE;IAE9C,IAAI,GAAG,GAA2B,IAAI,CAAA;IACtC,IAAI,GAAG,GAA2B,IAAI,CAAA;IACtC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9C,IAAI,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,SAAQ;QAC3C,IAAI,OAAO,CAAC,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,SAAQ;QACnE,IAAI,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC;YAAE,SAAQ;QAC3C,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,WAAW,CAAA;QAC9C,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;YAC/B,GAAG,GAAG,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,CAAA;YAC9B,GAAG,GAAG,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,CAAA;QAChC,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;YACrC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;QACvC,CAAC;IACH,CAAC;IACD,OAAO,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;AACzD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAA2B;IAC9D,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACrC,IAAI,IAAI,IAAI,IAAI;QAAE,OAAO,CAAC,CAAA;IAC1B,OAAO,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC,GAAG,IAAI,CAAA;AAC5C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAC5B,IAA2B,EAC3B,UAAyC,CAAC,EAC1C,UAAU,GAAG,IAAI;IAEjB,MAAM,QAAQ,GACZ,OAAO,OAAO,KAAK,QAAQ;QACzB,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAA;IAC1D,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACrC,IAAI,IAAI,IAAI,IAAI;QAAE,OAAM;IACxB,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,QAAQ,GAAG,UAAU,GAAG,IAAI,CAAA;AACjD,CAAC;AAeD,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,KAAoB,EACpB,UAAoB,EAAE;IAEtB,MAAM,EAAE,UAAU,GAAG,WAAW,EAAE,IAAI,GAAG,cAAc,EAAE,GAAG,OAAO,CAAA;IACnE,IAAI,SAAS,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;IACxC,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,SAAS,CAAC,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,KAAK,CAAC,iDAAiD,IAAI,GAAG,CAAC,CAAA;IAC3E,CAAC;IACD,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,8BAA8B,CAAC;QACpD,SAAS,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;QAChC,+EAA+E;QAC/E,uBAAuB,EAAE,EAAE,mBAAmB,EAAE,OAAO,EAAS;KACjE,CAAC,CAAA;IACF,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,CAAA;IAC7B,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc,CAAA;IACjC,MAAM,CAAC,IAAI,GAAG,UAAU,CAAA;IACxB,MAAM,cAAc,CAAC,YAAY,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;IACtD,OAAO;QACL,MAAM;QACN,EAAE;QACF,KAAK,CAAC,MAAM;YACV,MAAM,cAAc,CAAC,WAAW,EAAE,CAAA;QACpC,CAAC;KACF,CAAA;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuCE;AACF,qCAAqC;AAErC,mDAAmD;AACnD,MAAM,sBAAsB,GAAG,IAAI,CAAA;AAEnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,MAAM,UAAU,eAAe,CAAC,IAA0B;IACxD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAA;IAC7B,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoB,CAAA;IAC7C,MAAM,OAAO,GAAG,CAAC,CAAuB,EAAQ,EAAE;QAChD,IAAI,CAAC,CAAC,QAAQ,IAAI,IAAI;YAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;QACjD,MAAM,GAAG,GAAI,CAAC,CAAC,QAAyC,EAAE,YAAY,CAAA;QACtE,IAAI,GAAG,IAAI,IAAI;YAAE,KAAK,MAAM,CAAC,IAAI,GAAG;gBAAE,IAAI,CAAC,IAAI,IAAI;oBAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACvE,CAAC,CAAA;IACD,OAAO,CAAC,IAAI,CAAC,CAAA;IACb,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,cAAc,EAAE;QAAE,OAAO,CAAC,KAAK,CAAC,CAAA;IAEzD,IAAI,CAAC,OAAO,EAAE,CAAA;IAEd,MAAM,YAAY,GAAG,CAAC,CAAuB,EAAE,GAAqB,EAAE,EAAE,CACtE,CAAC,CAAC,QAAQ,KAAK,GAAG;QAClB,CAAE,CAAC,CAAC,QAAyC,EAAE,YAAY,EAAE,QAAQ,CACnE,GAAuB,CACxB;YACC,KAAK,CAAC,CAAA;IAEV;;;;;;MAME;IACF,IAAI,YAAY,GAAoC,IAAI,CAAA;IACxD,MAAM,UAAU,GAAG,CAAC,GAAwB,EAAW,EAAE;QACvD,IAAI,YAAY,IAAI,IAAI,EAAE,CAAC;YACzB,YAAY,GAAG,IAAI,GAAG,EAAE,CAAA;YACxB,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBAC7B,MAAM,IAAI,GAAuB,EAAE,CAAA;gBACnC,IAAI,CAAC,CAAC,QAAQ,IAAI,IAAI;oBAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;gBAC7C,MAAM,GAAG,GAAI,CAAC,CAAC,QAAyC,EAAE,YAAY,CAAA;gBACtE,IAAI,GAAG,IAAI,IAAI;oBAAE,KAAK,MAAM,CAAC,IAAI,GAAG;wBAAE,IAAI,CAAC,IAAI,IAAI;4BAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;gBACjE,KAAK,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;oBACtB,IAAI,CAAC;wBACH,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,iBAAiB,EAAE;4BACpC,IAAI,CAAC,IAAI,IAAI;gCAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;oBACtC,CAAC;oBAAC,MAAM,CAAC;wBACP,gEAAgE;wBAChE,8DAA8D;oBAChE,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC9B,CAAC,CAAA;IAED;;;;;;;;MAQE;IACF,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IACtC,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAQ;QAC7B,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAAE,SAAQ;QAC5D,uEAAuE;QACvE,IAAI,QAAQ,GAA0B,EAAE,CAAA;QACxC,IAAI,CAAC;YACH,QAAQ,GAAG,GAAG,CAAC,iBAAiB,EAAE,CAAA;QACpC,CAAC;QAAC,MAAM,CAAC;YACP,mEAAmE;YACnE,4DAA4D;QAC9D,CAAC;QACD,GAAG,CAAC,OAAO,EAAE,CAAA;QACb,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,IAAI,GAAG,IAAI,IAAI;gBAAE,SAAQ;YACzB,IAAI,KAAK,CAAC,kBAAkB,KAAK,GAAG;gBAAE,SAAQ;YAC9C,IAAI,KAAK,CAAC,mBAAmB,CAAC,QAAQ,CAAC,GAAY,CAAC;gBAAE,SAAQ;YAC9D,IACE,KAAK,CAAC,MAAM,CAAC,IAAI,CACf,CAAC,CAAC,EAAE,EAAE,CACH,CAAgD;iBAC9C,iBAAiB,KAAK,GAAG,CAC/B,EACD,CAAC;gBACD,SAAQ;YACV,CAAC;YACD,IAAI,UAAU,CAAC,GAAG,CAAC;gBAAE,SAAQ;YAC7B,GAAG,CAAC,OAAO,EAAE,CAAA;QACf,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAA8B;IACrE,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;QAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAA;QACzB,IAAI,GAAG,IAAI,IAAI;YAAE,SAAQ;QAEzB,8EAA8E;QAC9E,IAAI,GAAG,CAAC,KAAK,GAAG,sBAAsB,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YACxD,GAAG,CAAC,KAAK,GAAG,CAAC,CAAA;QACf,CAAC;QAED,8DAA8D;QAC9D,iFAAiF;QACjF,IAAI,GAAG,CAAC,KAAK,IAAI,sBAAsB,EAAE,CAAC;YACxC,GAAG,CAAC,gBAAgB,GAAG,IAAI,CAAA;YAC3B,GAAG,CAAC,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAA;YAC3D,mEAAmE;YACnE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;gBACxC,IAAI,CAAC,IAAI,IAAI,cAAc,CAAA;YAC7B,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuEE;AACF,qCAAqC;AAErC;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,QAAS,SAAQ,SAAS;IACrC,KAAK,GAAe,IAAI,CAAA;IAExB;;;;;;;;;;;;;;;;;;;OAmBG;IACK,cAAc,GAAyB,IAAI,CAAA;IAEnD,iBAAiB;QACf,KAAK,CAAC,iBAAiB,EAAE,CAAA;QACzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UA8BE;QACF,cAAc,CAAC,GAAG,EAAE;YAClB,yEAAyE;YACzE,IAAI,CAAC,IAAI,CAAC,WAAW;gBAAE,OAAM;YAC7B,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;YAChC,IAAI,KAAK,IAAI,IAAI;gBAAE,OAAM;YACzB,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;gBACnB,+DAA+D;gBAC/D,IAAI,CAAC,IAAI,CAAC,WAAW;oBAAE,OAAM;gBAC7B,wDAAwD;gBACxD,IAAI,IAAI,CAAC,cAAc,KAAK,KAAK,CAAC,KAAK;oBAAE,OAAM;gBAC/C,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,KAAK,CAAA;gBACjC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;gBAClB,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;YACrC,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,oBAAoB;QAClB,yEAAyE;QACzE,2EAA2E;QAC3E,2EAA2E;QAC3E,wBAAwB;QACxB,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,EAAE,CAAC;YAChC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAA;YAC1B,IAAI,CAAC,YAAY,EAAE,CAAA;QACrB,CAAC;QACD,KAAK,CAAC,oBAAoB,EAAE,CAAA;IAC9B,CAAC;IAED,6EAA6E;IAC7E,UAAU,CAAC,MAAW,EAAE,MAAqB,IAAS,CAAC;IACvD,YAAY,KAAU,CAAC;CACxB;AAED;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CAAC,KAAoB;IAC5C,MAAM,IAAI,GAAG,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IACrD,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,GAAW,EAAE,EAAE;QACzC,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QACnD,CAAC,CAAC,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;QACnD,CAAC,CAAC,eAAe,GAAG,IAAI,CAAA;QACxB,CAAC,CAAC,YAAY,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAC5C,CAAC,CAAC,aAAa,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAC7C,OAAO,CAAC,CAAA;IACV,CAAC,CAAA;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY,CAC3C,aAAa,EACb,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,EAChC,KAAK,CACN,CAAA;IACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAA;IAClD,IAAI,CAAC,UAAU,GAAG,KAAK,CAAA;IACvB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;IAElB,MAAM,IAAI,GAA6C;QACrD,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9C,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9C,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;KAC/C,CAAA;IACD,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,GAAG,MAAM,EAAE,GAAG,CAAC,CAAA;QACxC,gFAAgF;QAChF,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC,SAAS,CACzC,QAAQ,GAAG,QAAQ,EACnB;YACE,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;YAClC,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;YACnC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;SACnC,EACD,KAAK,CACN,CAAA;QACD,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAC/B,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAA;QACpB,KAAK,CAAC,UAAU,GAAG,KAAK,CAAA;QACxB,KAAK,CAAC,MAAM,GAAG,IAAI,CAAA;QACnB,+EAA+E;QAC/E,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,cAAc,CAC7C,QAAQ,GAAG,OAAO,EAClB,EAAE,WAAW,EAAE,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,EACvE,KAAK,CACN,CAAA;QACD,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC5B,IAAI,GAAG,KAAK,GAAG;YAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;QAC/C,IAAI,GAAG,KAAK,GAAG;YAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;QAC9C,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAA;QACnB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAA;QACvB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;IACpB,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,OAAO,YAAa,SAAQ,QAAQ;IACxC,MAAM,CAAC,cAAc,GAAG;QACtB,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,CAAC;QACJ,uEAAuE;QACvE,sEAAsE;QACtE,2EAA2E;QAC3E,yEAAyE;QACzE,0EAA0E;QAC1E,mCAAmC;QACnC,EAAE,EAAE,CAAC;QACL,EAAE,EAAE,CAAC;QACL,EAAE,EAAE,CAAC;QACL,2EAA2E;QAC3E,qEAAqE;QACrE,IAAI,EAAE,KAAK;KACZ,CAAA;IAYD,IAAI,CAAe;IACnB,2EAA2E;IAC3E,6EAA6E;IAC7E,4EAA4E;IAC5E,4EAA4E;IAC5E,eAAe;IACL,cAAc,GAAG,CAAC,CAAA;IACpB,SAAS,CAAwB;IAEzC,IAAI,IAAI;QACN,OAAQ,IAAY,CAAC,EAAE,CAAA;IACzB,CAAC;IACD,IAAI,IAAI,CAAC,CAAS;QAChB,CAAC;QAAC,IAAY,CAAC,EAAE,GAAG,CAAC,CAAA;IACvB,CAAC;IACD,IAAI,KAAK;QACP,OAAQ,IAAY,CAAC,EAAE,CAAA;IACzB,CAAC;IACD,IAAI,KAAK,CAAC,CAAS;QACjB,CAAC;QAAC,IAAY,CAAC,EAAE,GAAG,CAAC,CAAA;IACvB,CAAC;IACD,IAAI,GAAG;QACL,OAAQ,IAAY,CAAC,EAAE,CAAA;IACzB,CAAC;IACD,IAAI,GAAG,CAAC,CAAS;QACf,CAAC;QAAC,IAAY,CAAC,EAAE,GAAG,CAAC,CAAA;IACvB,CAAC;IAED,UAAU,CAAC,KAAU,EAAE,MAAqB;QAC1C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IAED;;;;;OAKG;IACO,iBAAiB;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAoD,CAAA;QACtE,IAAI,IAAI,EAAE,OAAO,IAAI,IAAI;YAAE,OAAM;QACjC,MAAM,CAAC,GAAI,IAAY,CAAC,KAAK,CAAA;QAC7B,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACtE;;;;;;UAME;QACF,IAAI,IAAI,CAAC,aAAa,EAAE,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC;YAAE,OAAM;QAC3E,IAAI,CAAC,aAAa,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,CAAA;QAChC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAC3B,CAAC;IACO,aAAa,GACnB,IAAI,CAAA;IAEE,YAAY,GAA8C,IAAI,CAAA;IAEtE;;;;;;;;OAQG;IACO,YAAY,CAAC,KAAU;QAC/B,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI;YAAE,OAAM;QACrC,IAAI,CAAC,YAAY,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;YAC7B,IAAI,IAAI,CAAC,IAAI,EAAE,MAAM,IAAI,IAAI;gBAAE,OAAM;YACrC,MAAM,KAAK,GAAG,IAAW,CAAA;YACzB,KAAK,CAAC,CAAC,IAAI,EAAE,CAAA;YACb,KAAK,CAAC,CAAC,IAAI,EAAE,CAAA;YACb,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;gBACtB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAA;gBAC9B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAA;YAChC,CAAC;QACH,CAAC,CAAA;QACD,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAC5C,CAAC;IAED,YAAY;QACV,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;YAC9B,IAAI,CAAC,KAAK,EAAE,oBAAoB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YACnD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;QAC1B,CAAC;QACD,yDAAyD;QACzD,IAAI,CAAC,cAAc,EAAE,CAAA;QACrB,8EAA8E;QAC9E,0CAA0C;QAC1C,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,CAAA;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;YACtB,4DAA4D;YAC5D,uEAAuE;YACvE,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC1B,IAAI,CAAC,IAAI,GAAG,SAAS,CAAA;QACvB,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;IACnB,CAAC;IAED,wEAAwE;IAChE,WAAW;QACjB,MAAM,QAAQ,GAAG,CAAC,CAAE,IAAY,CAAC,IAAI,CAAA;QACrC,IAAI,QAAQ,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAClE,4EAA4E;YAC5E,wEAAwE;YACxE,iEAAiE;YACjE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAA;YAC5B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAC5C,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAA;QACnC,CAAC;aAAM,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,EAAE,CAAC;YAC/C,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAA;YACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;YAC1B,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAA,CAAC,gCAAgC;QAC7D,CAAC;IACH,CAAC;IAEO,kBAAkB,CAAC,CAAS;QAClC,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,OAAM;QACtB,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAA;QACxB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;YAAE,KAAK,CAAC,UAAU,GAAG,CAAC,CAAA;IACtE,CAAC;IAED;;;;;OAKG;IACO,kBAAkB,CAC1B,KAAoB,EACpB,GAAW,EACX,QAAqD;QAErD,MAAM,GAAG,GAAG,EAAE,IAAI,CAAC,cAAc,CAAA;QACjC,OAAO,CAAC,WAAW,CAAC,kBAAkB,CACpC,GAAG,EACH,SAAS,EACT,KAAK,EACL,CAAC,SAAS,EAAE,EAAE;YACZ,IAAI,GAAG,KAAK,IAAI,CAAC,cAAc;gBAAE,OAAM;YACvC,QAAQ,CAAC,SAAS,CAAC,CAAA;QACrB,CAAC,CACF,CAAA;IACH,CAAC;IAED,MAAM;QACJ,KAAK,CAAC,MAAM,EAAE,CAAA;QACd,IAAI,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC;YACxB,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,IAAW,CAAA;YAC/B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAA;YACxB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAA;YACxB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAA;YACxB,IAAI,CAAC,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,UAAU,CAAC,oBAAoB,CACpE,IAAI,CAAC,GAAG,GAAG,UAAU,EACrB,IAAI,CAAC,KAAK,GAAG,UAAU,EACvB,IAAI,CAAC,IAAI,GAAG,UAAU,CACvB,CAAA;QACH,CAAC;QACD,IAAI,CAAC,WAAW,EAAE,CAAA;IACpB,CAAC;;AAGH;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,GAAoE,EAC3D,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAA;AAErD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAA;AACrC;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAC,KAAc,EAAE,KAAa;IACtD,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,EAAE,CAAA;IAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC3C,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACtB,OAAO,CAAC,IAAI,CACV,GAAG,KAAK,gCAAgC,OAAO,KAAK,0CAA0C,CAC/F,CAAA;IACH,CAAC;IACD,OAAO,EAAE,CAAA;AACX,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAkB;IAClD,IAAI,KAAK,GAAkB,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;IACtD,IAAI,IAAoC,CAAA;IACxC,OAAO,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;QACrC,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;QACvD,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;IACtC,CAAC;IACD,IAAI,IAAI,EAAE,GAAG,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI;QAAE,OAAM;IACjD,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;IACzB,IAAI,IAAI,GAAG,KAAK,CAAA;IAChB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE;QACpC,YAAY,EAAE,IAAI;QAClB,GAAG;YACD,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACvB,CAAC;QACD,GAAG,CAAC,IAAyB;YAC3B,IAAI,CAAC,GAAwB,IAAI,CAAA;YACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC1C,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;oBACf,uDAAuD;oBACvD,IAAI,CAAC,IAAI,EAAE,CAAC;wBACV,IAAI,GAAG,IAAI,CAAA;wBACX,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,KAAK,CAC1D,CAAC,EACD,IAAI,CACL,CAAA;wBACD,OAAO,CAAC,IAAI,CACV,iCAAiC,IAAI,CAAC,IAAI,yBAAyB,IAAI,EAAE,IAAI,IAAI,EACjF,KAAK,CACN,CAAA;wBACD,SAAS,CAAC,gBAAgB,EAAE;4BAC1B,IAAI,EAAE,IAAI,CAAC,IAAI;4BACf,EAAE,EAAE,GAAG,IAAI,EAAE,IAAI,KAAK,IAAI,EAAE,YAAY,EAAE,GAAG;4BAC7C,KAAK;yBACN,CAAC,CAAA;oBACJ,CAAC;oBACD,OAAM;gBACR,CAAC;gBACD,CAAC,GAAG,CAAC,CAAC,MAAM,CAAA;YACd,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QACtB,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"b3d-utils.js","sourceRoot":"","sources":["../src/b3d-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAA;AAE1C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,CAAA;AAEhC,MAAM,UAAU,YAAY,CAAC,EAAe;IAC1C,IAAI,IAAI,GAAuB,EAAE,CAAC,aAAa,CAAA;IAC/C,OAAO,IAAI,IAAI,IAAI,EAAE,CAAC;QACpB,IACE,OAAO,IAAI,IAAI;YACf,UAAU,IAAI,IAAI;YAClB,OAAQ,IAAY,CAAC,QAAQ,KAAK,UAAU,EAC5C,CAAC;YACD,OAAO,IAAsB,CAAA;QAC/B,CAAC;QACD,IAAI,GAAG,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,EAAe;IAC5C,IAAI,IAAI,GAAuB,EAAE,CAAC,aAAa,CAAA;IAC/C,OAAO,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;QACpD,IAAI,GAAG,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,cAAc,CAAC,KAAiB;IAC9C,MAAM,IAAI,GAAG,KAAsC,CAAA;IACnD,IAAI,IAAI,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,gBAAgB,KAAK,UAAU;QAAE,OAAO,IAAI,CAAA;IAC5E,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9C,MAAM,CAAC,GAAG,IAAW,CAAA;QACrB,IACE,CAAC,CAAC,MAAM,KAAK,IAAI;YACjB,CAAC,CAAC,CAAC,IAAI;YACP,CAAC,CAAC,CAAC,OAAO;YACV,CAAC,CAAC,IAAI,EAAE,QAAQ,IAAI,IAAI,EACxB,CAAC;YACD,OAAO,CAAC,CAAC,IAAI,CAAC,QAA2B,CAAA;QAC3C,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,oBAAoB,CAClC,IAAa,EACb,GAAG,QAA8B;IAEjC,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,+BAA+B,CAAC,CAAC,CAAA;IACxE,IAAI,CAAC,eAAe,CAAC,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAA;AAC5C,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,MAA8B;IACzD,OAAO,MAAM,CAAC,MAAM,CAClB,CAAC,IAAI,EAAE,EAAE,CAAE,IAAqB,CAAC,QAAQ,IAAI,IAAI,CAChC,CAAA;AACrB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,CAAU,EAAW,EAAE,CAC3C,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,OAAO,CAAA;AAE7C;;;;;;;;GAQG;AACH;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAoB,EAAU,EAAE;IACzD,MAAM,SAAS,GAAI,KAAK,CAAC,QAAgB,EAAE,aAAa,CAAA;IACxD,4EAA4E;IAC5E,+EAA+E;IAC/E,0EAA0E;IAC1E,0EAA0E;IAC1E,4EAA4E;IAC5E,yDAAyD;IACzD,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,IAAI,CAAC;QAAE,OAAO,SAAS,CAAA;IACrE,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,CAAA;AACvE,CAAC,CAAA;AAED;;;;;;;;;;GAUG;AACH;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAoB,EAAU,EAAE;IAC3D,MAAM,SAAS,GAAI,KAAK,CAAC,QAA4C;QACnE,EAAE,QAAQ,CAAA;IACZ,OAAO,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAA;AAC1E,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAoB,EAAa,EAAE;IAC5D,MAAM,SAAS,GAAI,KAAK,CAAC,QAA4C;QACnE,EAAE,QAAQ,CAAA;IACZ,IAAI,SAAS,IAAI,IAAI;QAAE,OAAO,SAAS,CAAA;IACvC,MAAM,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IAC5B,OAAO;QACL,EAAE;QACF,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC;QACV,WAAW,EAAE,CAAC;QACd,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,EAAE,KAAK,CAAC;QAChB,KAAK,EAAE,CAAC;KACT,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,IAAY,EAAU,EAAE,CACrD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AAE/B;;;GAGG;AACH,MAAM,kBAAkB,GAAG;IACzB,uEAAuE;IACvE,wDAAwD;IACxD,iBAAiB;IACjB,mBAAmB;IACnB,aAAa;IACb,cAAc;IACd,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,kBAAkB;IAClB,YAAY;IACZ,aAAa;IACb,SAAS;IACT,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,QAAQ;CACT,CAAA;AAED;;;;;;;;;;;GAWG;AACH;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAY,EAAW,EAAE;IACjD,MAAM,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAA;IAC5C,OAAO,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;AACvD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAU,EAAE;IACjD;;;;;;;;;;MAUE;IACF,IAAI,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAA;IAC3D;;;;;;MAME;IACF,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IAC7B,IAAI,GAAG,IAAI,IAAI;QAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IAC/C,SAAS,CAAC;QACR,MAAM,KAAK,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;QAC7B,MAAM,GAAG,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;QACnE,IAAI,GAAG,IAAI,IAAI;YAAE,OAAO,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACpD,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAA;IACnC,CAAC;AACH,CAAC,CAAA;AAED;;;GAGG;AACH,SAAS,kBAAkB,CAAC,IAA2B;IACrD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;IAC7B,MAAM,MAAM,GAAG;QACb,GAAG,CAAC,IAAI,YAAY,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;KAC9B,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC,CAAA;IACzC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACpC,IAAI,IAAI,GAAG,QAAQ,CAAA;IACnB,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;QAC1B,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;QAC7B,MAAM,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAA;QAC3D,IAAI,CAAC,GAAG,IAAI;YAAE,IAAI,GAAG,CAAC,CAAA;IACxB,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAUD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,SAAS,CAAC,KAAsC;IAC9D,OAAO,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;AACzD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAAC,KAAsC;IACjE,IAAI,SAAS,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IAClC,IAAI,KAAK,EAAE,eAAe,KAAK,IAAI;QAAE,OAAO,KAAK,CAAA;IACjD,OAAO,KAAK,EAAE,aAAa,IAAI,IAAI,CAAA;AACrC,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,UAAU,CAAC,IAA0B;IACnD,IAAI,CAAC,QAAQ,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAA;AAClE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,IAA0B;IACpD,OAAO,CACJ,IAAI,CAAC,QAA8C,EAAE,YAAY,KAAK,IAAI,CAC5E,CAAA;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAC3B,IAAiC,EACjC,GAAgC;IAEhC,MAAM,OAAO,GAAG,GAAG,EAAE,MAAM,CAAA;IAC3B,IAAI,OAAO,IAAI,IAAI;QAAE,OAAO,KAAK,CAAA;IACjC,IAAI,CAAC,GAAY,IAAI,CAAA;IACrB,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG;YAAE,OAAO,KAAK,CAAA;QAC3B,IAAI,CAAC,KAAK,OAAO;YAAE,OAAO,IAAI,CAAA;QAC9B,CAAC,GAAI,CAA0B,CAAC,MAAM,CAAA;IACxC,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,UAAU,CACxB,MAA6C,EAC7C,OAA6C,EAAE;IAE/C,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAA;IAChC,OAAO,CAAC,CAAuB,EAAW,EAAE,CAC1C,CAAC,CAAC,UAAU;QACZ,CAAC,CAAC,SAAS,EAAE;QACb,CAAC,WAAW,CAAC,CAAC,CAAC;QACf,CAAC,CAAC,MAAM,IAAI,IAAI,IAAI,gBAAgB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAChD,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAA;AAC3B,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,UAAU,kBAAkB,CAChC,IAA0B,EAC1B,GAAG,MAAgB;IAEnB,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAA6B,CAAA;IAC9D,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAA;IAC1C,KAAK,MAAM,CAAC,IAAI,MAAM;QAAE,IAAI,CAAC,KAAK,EAAE;YAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACjD,IAAI,CAAC,QAAQ,GAAG,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,CAAA;AACnD,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,eAAe,CAAC,IAA0B;IACxD,OAAO,CACJ,IAAI,CAAC,QAA4C,EAAE,SAAS;QAC7D,YAAY,CACb,CAAA;AACH,CAAC;AAED,MAAM,YAAY,GAAsB,EAAE,CAAA;AAE1C,uCAAuC;AACvC,MAAM,UAAU,gBAAgB,CAC9B,IAA0B,EAC1B,MAAyB;IAEzB,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;IAClC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACnC,KAAK,MAAM,CAAC,IAAI,MAAM;QAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAA;IACzD,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;GAIG;AACH;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,gBAAgB,CAC9B,IAA2B,EAC3B,UAA4C,EAAE;IAE9C,IAAI,GAAG,GAA2B,IAAI,CAAA;IACtC,IAAI,GAAG,GAA2B,IAAI,CAAA;IACtC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9C,IAAI,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,SAAQ;QAC3C,IAAI,OAAO,CAAC,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,SAAQ;QACnE,IAAI,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC;YAAE,SAAQ;QAC3C,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,WAAW,CAAA;QAC9C,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;YAC/B,GAAG,GAAG,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,CAAA;YAC9B,GAAG,GAAG,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,CAAA;QAChC,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;YACrC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;QACvC,CAAC;IACH,CAAC;IACD,OAAO,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;AACzD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAA2B;IAC9D,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACrC,IAAI,IAAI,IAAI,IAAI;QAAE,OAAO,CAAC,CAAA;IAC1B,OAAO,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC,GAAG,IAAI,CAAA;AAC5C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAC5B,IAA2B,EAC3B,UAAyC,CAAC,EAC1C,UAAU,GAAG,IAAI;IAEjB,MAAM,QAAQ,GACZ,OAAO,OAAO,KAAK,QAAQ;QACzB,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAA;IAC1D,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACrC,IAAI,IAAI,IAAI,IAAI;QAAE,OAAM;IACxB,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,QAAQ,GAAG,UAAU,GAAG,IAAI,CAAA;AACjD,CAAC;AAeD,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,KAAoB,EACpB,UAAoB,EAAE;IAEtB,MAAM,EAAE,UAAU,GAAG,WAAW,EAAE,IAAI,GAAG,cAAc,EAAE,GAAG,OAAO,CAAA;IACnE,IAAI,SAAS,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;IACxC,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,SAAS,CAAC,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,KAAK,CAAC,iDAAiD,IAAI,GAAG,CAAC,CAAA;IAC3E,CAAC;IACD,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,8BAA8B,CAAC;QACpD,SAAS,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;QAChC,+EAA+E;QAC/E,uBAAuB,EAAE,EAAE,mBAAmB,EAAE,OAAO,EAAS;KACjE,CAAC,CAAA;IACF,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,CAAA;IAC7B,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc,CAAA;IACjC,MAAM,CAAC,IAAI,GAAG,UAAU,CAAA;IACxB,MAAM,cAAc,CAAC,YAAY,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;IACtD,OAAO;QACL,MAAM;QACN,EAAE;QACF,KAAK,CAAC,MAAM;YACV,MAAM,cAAc,CAAC,WAAW,EAAE,CAAA;QACpC,CAAC;KACF,CAAA;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuCE;AACF,qCAAqC;AAErC,mDAAmD;AACnD,MAAM,sBAAsB,GAAG,IAAI,CAAA;AAEnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,MAAM,UAAU,eAAe,CAAC,IAA0B;IACxD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAA;IAC7B,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoB,CAAA;IAC7C,MAAM,OAAO,GAAG,CAAC,CAAuB,EAAQ,EAAE;QAChD,IAAI,CAAC,CAAC,QAAQ,IAAI,IAAI;YAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;QACjD,MAAM,GAAG,GAAI,CAAC,CAAC,QAAyC,EAAE,YAAY,CAAA;QACtE,IAAI,GAAG,IAAI,IAAI;YAAE,KAAK,MAAM,CAAC,IAAI,GAAG;gBAAE,IAAI,CAAC,IAAI,IAAI;oBAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACvE,CAAC,CAAA;IACD,OAAO,CAAC,IAAI,CAAC,CAAA;IACb,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,cAAc,EAAE;QAAE,OAAO,CAAC,KAAK,CAAC,CAAA;IAEzD,IAAI,CAAC,OAAO,EAAE,CAAA;IAEd,MAAM,YAAY,GAAG,CAAC,CAAuB,EAAE,GAAqB,EAAE,EAAE,CACtE,CAAC,CAAC,QAAQ,KAAK,GAAG;QAClB,CAAE,CAAC,CAAC,QAAyC,EAAE,YAAY,EAAE,QAAQ,CACnE,GAAuB,CACxB;YACC,KAAK,CAAC,CAAA;IAEV;;;;;;MAME;IACF,IAAI,YAAY,GAAoC,IAAI,CAAA;IACxD,MAAM,UAAU,GAAG,CAAC,GAAwB,EAAW,EAAE;QACvD,IAAI,YAAY,IAAI,IAAI,EAAE,CAAC;YACzB,YAAY,GAAG,IAAI,GAAG,EAAE,CAAA;YACxB,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBAC7B,MAAM,IAAI,GAAuB,EAAE,CAAA;gBACnC,IAAI,CAAC,CAAC,QAAQ,IAAI,IAAI;oBAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;gBAC7C,MAAM,GAAG,GAAI,CAAC,CAAC,QAAyC,EAAE,YAAY,CAAA;gBACtE,IAAI,GAAG,IAAI,IAAI;oBAAE,KAAK,MAAM,CAAC,IAAI,GAAG;wBAAE,IAAI,CAAC,IAAI,IAAI;4BAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;gBACjE,KAAK,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;oBACtB,IAAI,CAAC;wBACH,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,iBAAiB,EAAE;4BACpC,IAAI,CAAC,IAAI,IAAI;gCAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;oBACtC,CAAC;oBAAC,MAAM,CAAC;wBACP,gEAAgE;wBAChE,8DAA8D;oBAChE,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC9B,CAAC,CAAA;IAED;;;;;;;;MAQE;IACF,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IACtC,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAQ;QAC7B,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAAE,SAAQ;QAC5D,uEAAuE;QACvE,IAAI,QAAQ,GAA0B,EAAE,CAAA;QACxC,IAAI,CAAC;YACH,QAAQ,GAAG,GAAG,CAAC,iBAAiB,EAAE,CAAA;QACpC,CAAC;QAAC,MAAM,CAAC;YACP,mEAAmE;YACnE,4DAA4D;QAC9D,CAAC;QACD,GAAG,CAAC,OAAO,EAAE,CAAA;QACb,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,IAAI,GAAG,IAAI,IAAI;gBAAE,SAAQ;YACzB,IAAI,KAAK,CAAC,kBAAkB,KAAK,GAAG;gBAAE,SAAQ;YAC9C,IAAI,KAAK,CAAC,mBAAmB,CAAC,QAAQ,CAAC,GAAY,CAAC;gBAAE,SAAQ;YAC9D,IACE,KAAK,CAAC,MAAM,CAAC,IAAI,CACf,CAAC,CAAC,EAAE,EAAE,CACH,CAAgD;iBAC9C,iBAAiB,KAAK,GAAG,CAC/B,EACD,CAAC;gBACD,SAAQ;YACV,CAAC;YACD,IAAI,UAAU,CAAC,GAAG,CAAC;gBAAE,SAAQ;YAC7B,GAAG,CAAC,OAAO,EAAE,CAAA;QACf,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAA8B;IACrE,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;QAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAA;QACzB,IAAI,GAAG,IAAI,IAAI;YAAE,SAAQ;QAEzB,8EAA8E;QAC9E,IAAI,GAAG,CAAC,KAAK,GAAG,sBAAsB,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YACxD,GAAG,CAAC,KAAK,GAAG,CAAC,CAAA;QACf,CAAC;QAED,8DAA8D;QAC9D,iFAAiF;QACjF,IAAI,GAAG,CAAC,KAAK,IAAI,sBAAsB,EAAE,CAAC;YACxC,GAAG,CAAC,gBAAgB,GAAG,IAAI,CAAA;YAC3B,GAAG,CAAC,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAA;YAC3D,mEAAmE;YACnE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;gBACxC,IAAI,CAAC,IAAI,IAAI,cAAc,CAAA;YAC7B,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuEE;AACF,qCAAqC;AAErC;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,QAAS,SAAQ,SAAS;IACrC,KAAK,GAAe,IAAI,CAAA;IAExB;;;;;;;;;;;;;;;;;;;OAmBG;IACK,cAAc,GAAyB,IAAI,CAAA;IAEnD,iBAAiB;QACf,KAAK,CAAC,iBAAiB,EAAE,CAAA;QACzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UA8BE;QACF,cAAc,CAAC,GAAG,EAAE;YAClB,yEAAyE;YACzE,IAAI,CAAC,IAAI,CAAC,WAAW;gBAAE,OAAM;YAC7B,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;YAChC,IAAI,KAAK,IAAI,IAAI;gBAAE,OAAM;YACzB,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;gBACnB,+DAA+D;gBAC/D,IAAI,CAAC,IAAI,CAAC,WAAW;oBAAE,OAAM;gBAC7B,wDAAwD;gBACxD,IAAI,IAAI,CAAC,cAAc,KAAK,KAAK,CAAC,KAAK;oBAAE,OAAM;gBAC/C,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,KAAK,CAAA;gBACjC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;gBAClB,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;YACrC,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,oBAAoB;QAClB,yEAAyE;QACzE,2EAA2E;QAC3E,2EAA2E;QAC3E,wBAAwB;QACxB,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,EAAE,CAAC;YAChC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAA;YAC1B,IAAI,CAAC,YAAY,EAAE,CAAA;QACrB,CAAC;QACD,KAAK,CAAC,oBAAoB,EAAE,CAAA;IAC9B,CAAC;IAED,6EAA6E;IAC7E,UAAU,CAAC,MAAW,EAAE,MAAqB,IAAS,CAAC;IACvD,YAAY,KAAU,CAAC;CACxB;AAED;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CAAC,KAAoB;IAC5C,MAAM,IAAI,GAAG,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IACrD,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,GAAW,EAAE,EAAE;QACzC,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QACnD,CAAC,CAAC,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;QACnD,CAAC,CAAC,eAAe,GAAG,IAAI,CAAA;QACxB,CAAC,CAAC,YAAY,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAC5C,CAAC,CAAC,aAAa,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAC7C,OAAO,CAAC,CAAA;IACV,CAAC,CAAA;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY,CAC3C,aAAa,EACb,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,EAChC,KAAK,CACN,CAAA;IACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAA;IAClD,IAAI,CAAC,UAAU,GAAG,KAAK,CAAA;IACvB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;IAElB,MAAM,IAAI,GAA6C;QACrD,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9C,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9C,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;KAC/C,CAAA;IACD,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,GAAG,MAAM,EAAE,GAAG,CAAC,CAAA;QACxC,gFAAgF;QAChF,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC,SAAS,CACzC,QAAQ,GAAG,QAAQ,EACnB;YACE,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;YAClC,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;YACnC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;SACnC,EACD,KAAK,CACN,CAAA;QACD,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAC/B,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAA;QACpB,KAAK,CAAC,UAAU,GAAG,KAAK,CAAA;QACxB,KAAK,CAAC,MAAM,GAAG,IAAI,CAAA;QACnB,+EAA+E;QAC/E,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,cAAc,CAC7C,QAAQ,GAAG,OAAO,EAClB,EAAE,WAAW,EAAE,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,EACvE,KAAK,CACN,CAAA;QACD,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC5B,IAAI,GAAG,KAAK,GAAG;YAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;QAC/C,IAAI,GAAG,KAAK,GAAG;YAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;QAC9C,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAA;QACnB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAA;QACvB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;IACpB,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,OAAO,YAAa,SAAQ,QAAQ;IACxC,MAAM,CAAC,cAAc,GAAG;QACtB,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,CAAC;QACJ,uEAAuE;QACvE,sEAAsE;QACtE,2EAA2E;QAC3E,yEAAyE;QACzE,0EAA0E;QAC1E,mCAAmC;QACnC,EAAE,EAAE,CAAC;QACL,EAAE,EAAE,CAAC;QACL,EAAE,EAAE,CAAC;QACL,2EAA2E;QAC3E,qEAAqE;QACrE,IAAI,EAAE,KAAK;KACZ,CAAA;IAYD,IAAI,CAAe;IACnB,2EAA2E;IAC3E,6EAA6E;IAC7E,4EAA4E;IAC5E,4EAA4E;IAC5E,eAAe;IACL,cAAc,GAAG,CAAC,CAAA;IACpB,SAAS,CAAwB;IAEzC,IAAI,IAAI;QACN,OAAQ,IAAY,CAAC,EAAE,CAAA;IACzB,CAAC;IACD,IAAI,IAAI,CAAC,CAAS;QAChB,CAAC;QAAC,IAAY,CAAC,EAAE,GAAG,CAAC,CAAA;IACvB,CAAC;IACD,IAAI,KAAK;QACP,OAAQ,IAAY,CAAC,EAAE,CAAA;IACzB,CAAC;IACD,IAAI,KAAK,CAAC,CAAS;QACjB,CAAC;QAAC,IAAY,CAAC,EAAE,GAAG,CAAC,CAAA;IACvB,CAAC;IACD,IAAI,GAAG;QACL,OAAQ,IAAY,CAAC,EAAE,CAAA;IACzB,CAAC;IACD,IAAI,GAAG,CAAC,CAAS;QACf,CAAC;QAAC,IAAY,CAAC,EAAE,GAAG,CAAC,CAAA;IACvB,CAAC;IAED,UAAU,CAAC,KAAU,EAAE,MAAqB;QAC1C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IAED;;;;;;OAMG;IACO,iBAAiB;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAoD,CAAA;QACtE,IAAI,IAAI,EAAE,OAAO,IAAI,IAAI;YAAE,OAAM;QACjC,MAAM,CAAC,GAAI,IAAY,CAAC,KAAK,CAAA;QAC7B,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACtE;;;;;UAKE;QACF,MAAM,EAAE,GAAG,MAAM,CAAE,IAAY,CAAC,OAAO,IAAI,EAAE,CAAC;aAC3C,IAAI,EAAE;aACN,KAAK,CAAC,QAAQ,CAAC;aACf,GAAG,CAAC,MAAM,CAAC,CAAA;QACd,MAAM,EAAE,GAAG,CAAC,CAAS,EAAE,EAAE,CACvB,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACrD,MAAM,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QACtC;;;;;;UAME;QACF,IAAI,IAAI,CAAC,aAAa,EAAE,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC;YAAE,OAAM;QAC3E,IAAI,CAAC,aAAa,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,CAAA;QAChC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IACvC,CAAC;IACO,aAAa,GACnB,IAAI,CAAA;IAEE,YAAY,GAA8C,IAAI,CAAA;IAEtE;;;;;;;;OAQG;IACO,YAAY,CAAC,KAAU;QAC/B,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI;YAAE,OAAM;QACrC,IAAI,CAAC,YAAY,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;YAC7B,IAAI,IAAI,CAAC,IAAI,EAAE,MAAM,IAAI,IAAI;gBAAE,OAAM;YACrC,MAAM,KAAK,GAAG,IAAW,CAAA;YACzB,KAAK,CAAC,CAAC,IAAI,EAAE,CAAA;YACb,KAAK,CAAC,CAAC,IAAI,EAAE,CAAA;YACb,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;gBACtB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAA;gBAC9B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAA;YAChC,CAAC;QACH,CAAC,CAAA;QACD,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAC5C,CAAC;IAED,YAAY;QACV,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;YAC9B,IAAI,CAAC,KAAK,EAAE,oBAAoB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YACnD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;QAC1B,CAAC;QACD,yDAAyD;QACzD,IAAI,CAAC,cAAc,EAAE,CAAA;QACrB,8EAA8E;QAC9E,0CAA0C;QAC1C,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,CAAA;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;YACtB,4DAA4D;YAC5D,uEAAuE;YACvE,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC1B,IAAI,CAAC,IAAI,GAAG,SAAS,CAAA;QACvB,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;IACnB,CAAC;IAED,wEAAwE;IAChE,WAAW;QACjB,MAAM,QAAQ,GAAG,CAAC,CAAE,IAAY,CAAC,IAAI,CAAA;QACrC,IAAI,QAAQ,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAClE,4EAA4E;YAC5E,wEAAwE;YACxE,iEAAiE;YACjE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAA;YAC5B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAC5C,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAA;QACnC,CAAC;aAAM,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,EAAE,CAAC;YAC/C,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAA;YACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;YAC1B,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAA,CAAC,gCAAgC;QAC7D,CAAC;IACH,CAAC;IAEO,kBAAkB,CAAC,CAAS;QAClC,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,OAAM;QACtB,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAA;QACxB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;YAAE,KAAK,CAAC,UAAU,GAAG,CAAC,CAAA;IACtE,CAAC;IAED;;;;;OAKG;IACO,kBAAkB,CAC1B,KAAoB,EACpB,GAAW,EACX,QAAqD;QAErD,MAAM,GAAG,GAAG,EAAE,IAAI,CAAC,cAAc,CAAA;QACjC,OAAO,CAAC,WAAW,CAAC,kBAAkB,CACpC,GAAG,EACH,SAAS,EACT,KAAK,EACL,CAAC,SAAS,EAAE,EAAE;YACZ,IAAI,GAAG,KAAK,IAAI,CAAC,cAAc;gBAAE,OAAM;YACvC,QAAQ,CAAC,SAAS,CAAC,CAAA;QACrB,CAAC,CACF,CAAA;IACH,CAAC;IAED,MAAM;QACJ,KAAK,CAAC,MAAM,EAAE,CAAA;QACd,IAAI,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC;YACxB,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,IAAW,CAAA;YAC/B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAA;YACxB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAA;YACxB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAA;YACxB,IAAI,CAAC,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,UAAU,CAAC,oBAAoB,CACpE,IAAI,CAAC,GAAG,GAAG,UAAU,EACrB,IAAI,CAAC,KAAK,GAAG,UAAU,EACvB,IAAI,CAAC,IAAI,GAAG,UAAU,CACvB,CAAA;QACH,CAAC;QACD,IAAI,CAAC,WAAW,EAAE,CAAA;IACpB,CAAC;;AAGH;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,GAAoE,EAC3D,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAA;AAErD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAA;AACrC;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAC,KAAc,EAAE,KAAa;IACtD,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,EAAE,CAAA;IAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC3C,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACtB,OAAO,CAAC,IAAI,CACV,GAAG,KAAK,gCAAgC,OAAO,KAAK,0CAA0C,CAC/F,CAAA;IACH,CAAC;IACD,OAAO,EAAE,CAAA;AACX,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAkB;IAClD,IAAI,KAAK,GAAkB,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;IACtD,IAAI,IAAoC,CAAA;IACxC,OAAO,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;QACrC,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;QACvD,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;IACtC,CAAC;IACD,IAAI,IAAI,EAAE,GAAG,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI;QAAE,OAAM;IACjD,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;IACzB,IAAI,IAAI,GAAG,KAAK,CAAA;IAChB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE;QACpC,YAAY,EAAE,IAAI;QAClB,GAAG;YACD,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACvB,CAAC;QACD,GAAG,CAAC,IAAyB;YAC3B,IAAI,CAAC,GAAwB,IAAI,CAAA;YACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC1C,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;oBACf,uDAAuD;oBACvD,IAAI,CAAC,IAAI,EAAE,CAAC;wBACV,IAAI,GAAG,IAAI,CAAA;wBACX,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,KAAK,CAC1D,CAAC,EACD,IAAI,CACL,CAAA;wBACD,OAAO,CAAC,IAAI,CACV,iCAAiC,IAAI,CAAC,IAAI,yBAAyB,IAAI,EAAE,IAAI,IAAI,EACjF,KAAK,CACN,CAAA;wBACD,SAAS,CAAC,gBAAgB,EAAE;4BAC1B,IAAI,EAAE,IAAI,CAAC,IAAI;4BACf,EAAE,EAAE,GAAG,IAAI,EAAE,IAAI,KAAK,IAAI,EAAE,YAAY,EAAE,GAAG;4BAC7C,KAAK;yBACN,CAAC,CAAA;oBACJ,CAAC;oBACD,OAAM;gBACR,CAAC;gBACD,CAAC,GAAG,CAAC,CAAC,MAAM,CAAA;YACd,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QACtB,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
package/dist/table.d.ts CHANGED
@@ -10,6 +10,21 @@ export interface Table extends Widget3d {
10
10
  scrollBy: (delta: number) => void;
11
11
  /** Currently selected row ids. */
12
12
  readonly selected: string[];
13
+ /**
14
+ * Set the selection (ids of rows that do not exist are dropped). Does not
15
+ * call `handleSelect`: the host said it, so the host knows.
16
+ */
17
+ setSelected: (ids: string[]) => void;
18
+ /** Scroll the table's own body so this row shows; false if it is not shown. */
19
+ revealRow: (id: string) => boolean;
20
+ /**
21
+ * Where a row is drawn, in the table's own units (header included), as a
22
+ * panel's `reveal(table, box)` takes it; null when it is filtered out.
23
+ */
24
+ rowBox: (id: string) => {
25
+ top: number;
26
+ height: number;
27
+ } | null;
13
28
  /** Replace the rows (keeps scroll, drops selections that no longer exist). */
14
29
  setRows: (rows: TableRow[]) => void;
15
30
  /**
@@ -56,6 +71,15 @@ export interface TableOptions {
56
71
  gap?: number;
57
72
  /** Omit for a non-selectable table. */
58
73
  selection?: SelectionMode;
74
+ /**
75
+ * How a selected row shows: `'icon'` (the default) draws the radio or
76
+ * checkbox in its own column; `'row'` fills the row instead, with no marker
77
+ * column. Use `'row'` when the rows carry their own leading control, or two
78
+ * circles side by side read as one toggle that does not work.
79
+ */
80
+ selectionMarker?: 'icon' | 'row';
81
+ /** Rows selected at the start, for a host that rebuilds the table. */
82
+ selected?: string[];
59
83
  /** Let a single-select tap on the selected row clear it. See `applySelection`. */
60
84
  allowDeselect?: boolean;
61
85
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../src/table.ts"],"names":[],"mappings":"AA2JA,OAAO,EAKL,KAAK,UAAU,EAEhB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,gBAAgB,CAAA;AAIvB,OAAO,KAAK,EAAE,QAAQ,EAA2B,MAAM,gBAAgB,CAAA;AAevE,0DAA0D;AAC1D,MAAM,MAAM,QAAQ,GAAG;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AAE/D,MAAM,WAAW,KAAM,SAAQ,QAAQ;IACrC,4CAA4C;IAC5C,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,kCAAkC;IAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;IAC3B,8EAA8E;IAC9E,OAAO,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,IAAI,CAAA;IACnC;;;;;;OAMG;IACH,SAAS,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC,GAAG,IAAI,KAAK,IAAI,CAAA;IAChE,4EAA4E;IAC5E,QAAQ,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IAMnD,oCAAoC;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B;;;;;;;;;;;;OAYG;IACH,SAAS,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,OAAO,CAAA;IAC9C,qEAAqE;IACrE,aAAa,EAAE,MAAM,OAAO,CAAA;IAC5B,qDAAqD;IACrD,UAAU,EAAE,MAAM,IAAI,CAAA;CACvB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,QAAQ,EAAE,CAAA;IAChB,OAAO,EAAE,UAAU,EAAE,CAAA;IACrB,oDAAoD;IACpD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,uCAAuC;IACvC,SAAS,CAAC,EAAE,aAAa,CAAA;IACzB,kFAAkF;IAClF,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAA;IACnC,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;IACtC,2EAA2E;IAC3E,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,KAAK,IAAI,CAAA;CACzC;AAED,wBAAgB,KAAK,CAAC,MAAM,EAAE,YAAY,GAAG,KAAK,CA2fjD"}
1
+ {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../src/table.ts"],"names":[],"mappings":"AAkKA,OAAO,EAKL,KAAK,UAAU,EAEhB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,gBAAgB,CAAA;AAIvB,OAAO,KAAK,EAAE,QAAQ,EAA2B,MAAM,gBAAgB,CAAA;AAgBvE,0DAA0D;AAC1D,MAAM,MAAM,QAAQ,GAAG;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AAE/D,MAAM,WAAW,KAAM,SAAQ,QAAQ;IACrC,4CAA4C;IAC5C,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,kCAAkC;IAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;IAC3B;;;OAGG;IACH,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;IACpC,+EAA+E;IAC/E,SAAS,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAA;IAClC;;;OAGG;IACH,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;IAC9D,8EAA8E;IAC9E,OAAO,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,IAAI,CAAA;IACnC;;;;;;OAMG;IACH,SAAS,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC,GAAG,IAAI,KAAK,IAAI,CAAA;IAChE,4EAA4E;IAC5E,QAAQ,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IAMnD,oCAAoC;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B;;;;;;;;;;;;OAYG;IACH,SAAS,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,OAAO,CAAA;IAC9C,qEAAqE;IACrE,aAAa,EAAE,MAAM,OAAO,CAAA;IAC5B,qDAAqD;IACrD,UAAU,EAAE,MAAM,IAAI,CAAA;CACvB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,QAAQ,EAAE,CAAA;IAChB,OAAO,EAAE,UAAU,EAAE,CAAA;IACrB,oDAAoD;IACpD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,uCAAuC;IACvC,SAAS,CAAC,EAAE,aAAa,CAAA;IACzB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,KAAK,CAAA;IAChC,sEAAsE;IACtE,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,kFAAkF;IAClF,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAA;IACnC,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;IACtC,2EAA2E;IAC3E,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,KAAK,IAAI,CAAA;CACzC;AAED,wBAAgB,KAAK,CAAC,MAAM,EAAE,YAAY,GAAG,KAAK,CA+hBjD"}
package/dist/table.js CHANGED
@@ -20,6 +20,13 @@ full set and filters a view of it, so a selected row that scrolls out of the
20
20
  filter is still selected when it comes back — and `setRows` checks selections
21
21
  against ALL rows for the same reason.
22
22
 
23
+ **A row can carry the selection instead of a marker.** With
24
+ `selectionMarker: 'row'` the selected row is filled (`--w3d-selected-bg`) and
25
+ there is no radio or checkbox column; use it when the rows have a leading
26
+ control of their own, or the two circles read as one toggle that does not work.
27
+ A host that rebuilds the table passes `selected` (or calls `setSelected`), then
28
+ `revealRow(id)`; in a scrolling panel, `panel.reveal(table, table.rowBox(id))`.
29
+
23
30
  A **`button` column** gives each row an action of its own. With `menu` it opens
24
31
  an action menu anchored to the cell; with `handlePress` it just fires. The
25
32
  button takes the press instead of the row, so a row's ⋯ does not also select
@@ -164,6 +171,7 @@ const TEXT = w3dTheme.text;
164
171
  const MUTED = w3dTheme.muted;
165
172
  const ACCENT = w3dTheme.accent;
166
173
  const ROW_HOVER = w3dTheme.rowHover;
174
+ const SELECTED_BG = w3dTheme.selectedBg;
167
175
  const HEADER_BG = w3dTheme.track;
168
176
  const FONT_FAMILY = w3dTheme.fontFamily;
169
177
  let seq = 0;
@@ -178,7 +186,8 @@ export function table(config) {
178
186
  const BODY_TOP = HEAD_H + 2;
179
187
  const BODY_H = config.height ?? 180;
180
188
  const GAP = config.gap ?? 8;
181
- const SEL_W = config.selection ? 26 : 0;
189
+ const MARK_ROW = config.selectionMarker === 'row';
190
+ const SEL_W = config.selection && !MARK_ROW ? 26 : 0;
182
191
  const FONT = 13;
183
192
  /*
184
193
  ALL rows, and the subset currently shown. Kept apart on purpose: selection,
@@ -196,6 +205,13 @@ export function table(config) {
196
205
  /** D-pad / keyboard focus, as a row index; -1 = not focused. */
197
206
  let focused = -1;
198
207
  let selected = new Set();
208
+ const keep = (ids) => {
209
+ const live = new Set(allRows.map((r) => r.id));
210
+ const ok = ids.filter((id) => live.has(id));
211
+ return new Set(config.selection === 'single' ? ok.slice(0, 1) : ok);
212
+ };
213
+ if (config.selection && config.selected)
214
+ selected = keep(config.selected);
199
215
  /** In-flight press: where it started, and whether it has become a scroll. */
200
216
  let drag = null;
201
217
  /** Set by the panel; a button column needs it to open a menu. */
@@ -286,9 +302,17 @@ export function table(config) {
286
302
  const bg = i >= 0 ? rowBgs[i - built.start] : undefined;
287
303
  if (i >= 0 && !bg && i >= built.start && i < built.end)
288
304
  return paintBody();
289
- bg?.setAttribute('fill', i === hover ? ROW_HOVER : 'transparent');
305
+ bg?.setAttribute('fill', rowFill(i));
290
306
  }
291
307
  };
308
+ /** A row's background: hover wins, then a row-marked selection. */
309
+ function rowFill(i) {
310
+ if (i === hover)
311
+ return ROW_HOVER;
312
+ if (MARK_ROW && config.selection && rows[i] && selected.has(rows[i].id))
313
+ return SELECTED_BG;
314
+ return 'transparent';
315
+ }
292
316
  const paintBody = () => {
293
317
  const win = visibleRows({
294
318
  scroll,
@@ -312,7 +336,8 @@ export function table(config) {
312
336
  rx: 4,
313
337
  // Hover is intensity; selection is the icon. Different channels, so a row
314
338
  // can be both at once without either being finessed against the other.
315
- fill: i === hover ? ROW_HOVER : 'transparent',
339
+ // (With `selectionMarker: 'row'` selection is a fill, and hover covers it.)
340
+ fill: rowFill(i),
316
341
  });
317
342
  rowBgs.push(bg);
318
343
  const kids = [bg];
@@ -332,7 +357,7 @@ export function table(config) {
332
357
  'data-focus-ring': '',
333
358
  }));
334
359
  }
335
- if (config.selection) {
360
+ if (config.selection && !MARK_ROW) {
336
361
  kids.push(iconGlyph(selectionIcon(config.selection, isSel), {
337
362
  size: 16,
338
363
  color: isSel ? ACCENT : MUTED,
@@ -445,6 +470,31 @@ export function table(config) {
445
470
  };
446
471
  const api = {
447
472
  el,
473
+ setSelected(ids) {
474
+ if (!config.selection)
475
+ return;
476
+ selected = keep(ids);
477
+ paintBody();
478
+ },
479
+ revealRow(id) {
480
+ const i = rows.findIndex((r) => r.id === id);
481
+ if (i < 0)
482
+ return false;
483
+ const top = i * ROW_H;
484
+ if (top < scroll)
485
+ scroll = top;
486
+ else if (top + ROW_H > scroll + BODY_H)
487
+ scroll = top + ROW_H - BODY_H;
488
+ scroll = clampScroll(scroll);
489
+ paintScrolled();
490
+ return true;
491
+ },
492
+ rowBox(id) {
493
+ const i = rows.findIndex((r) => r.id === id);
494
+ if (i < 0)
495
+ return null;
496
+ return { top: BODY_TOP + i * ROW_H - scroll, height: ROW_H };
497
+ },
448
498
  get selected() {
449
499
  return [...selected];
450
500
  },