@fundamental-engine/elements 0.9.2 → 0.9.4

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.
@@ -13,14 +13,23 @@ const clamp = (v, lo, hi) => Math.max(lo, Math.min(hi, v));
13
13
  * - `IntersectionObserver` gates the rAF loop — paused when off-screen.
14
14
  * - Honours `prefers-reduced-motion`: renders one static frame, no animation.
15
15
  *
16
+ * **Budgets & isolation (shadow-dom.md §31.19).** Each cell owns its *own* pool, so
17
+ * many cells on a docs page never share or starve one budget. Hard caps keep that
18
+ * budget cheap: `max-particles` clamps the pool ceiling (over both the auto-size and an
19
+ * explicit `count`), and `fps` throttles the animation loop to a target framerate. Both
20
+ * caps are enforced per instance — a saturating cell cannot spill particles or frame
21
+ * cost into a neighbour.
22
+ *
16
23
  * @summary A standalone, in-frame demo field that renders one force with its own
17
24
  * particle pool, in-view-gated. Registered as `<field-cell>`.
18
25
  * @attr {string} force - The single force token rendered: `attract` | `repel` | `swirl` | `gravity` | `stream` | `buoyancy` | `tether`.
19
26
  * @attr {string} color - Accent color (hex) for the cell's particles.
20
27
  * @attr {number} count - Number of particles in the cell's pool.
28
+ * @attr {number} max-particles - Hard ceiling on the pool size (§31.19); caps both the auto-size and an explicit `count`.
29
+ * @attr {number} fps - Target frames per second for the animation loop (§31.19); throttles rAF so many cells stay cheap.
21
30
  */
22
31
  export class FieldCell extends HTMLElementBase {
23
- static observedAttributes = ['force', 'color', 'count'];
32
+ static observedAttributes = ['force', 'color', 'count', 'max-particles', 'fps'];
24
33
  canvas;
25
34
  ctx = null;
26
35
  particles = [];
@@ -33,6 +42,8 @@ export class FieldCell extends HTMLElementBase {
33
42
  /** cursor in frame-local CSS px, or null when absent. */
34
43
  cursorX = null;
35
44
  cursorY = null;
45
+ /** rAF timestamp of the last rendered frame — drives the `fps` throttle (§31.19). */
46
+ lastStepTs = 0;
36
47
  onPointerMove;
37
48
  onPointerLeave;
38
49
  tick;
@@ -54,8 +65,12 @@ export class FieldCell extends HTMLElementBase {
54
65
  this.cursorX = null;
55
66
  this.cursorY = null;
56
67
  };
57
- this.tick = () => {
58
- this.step();
68
+ this.tick = (ts) => {
69
+ const now = typeof ts === 'number' ? ts : this.rafNow();
70
+ // fps budget (§31.19): render only when this frame is within budget; 0 (default)
71
+ // renders every frame at the display's native rAF cadence.
72
+ if (this.shouldRenderFrame(now))
73
+ this.step();
59
74
  this.raf = requestAnimationFrame(this.tick);
60
75
  };
61
76
  }
@@ -72,8 +87,32 @@ export class FieldCell extends HTMLElementBase {
72
87
  const v = Number(this.getAttribute('count'));
73
88
  return Number.isFinite(v) && v > 0 ? Math.round(v) : 0;
74
89
  }
75
- attributeChangedCallback() {
76
- // force/color read live each frame; count change rebuilds on next resize.
90
+ /**
91
+ * Hard ceiling on the pool size (§31.19 scoped local-cell budget); `0` (default) means
92
+ * no cap. Clamps *both* the auto-size and an explicit `count`, so a cell can never
93
+ * exceed its declared budget no matter how large its frame grows.
94
+ */
95
+ get maxParticles() {
96
+ const v = Number(this.getAttribute('max-particles'));
97
+ return Number.isFinite(v) && v > 0 ? Math.round(v) : 0;
98
+ }
99
+ /**
100
+ * Target frames per second for the animation loop (§31.19); `0` (default) means run at
101
+ * the display's native rAF cadence. A positive value throttles the loop so a page full
102
+ * of demo cells stays cheap — each cell keeps its own frame budget.
103
+ */
104
+ get fps() {
105
+ const v = Number(this.getAttribute('fps'));
106
+ return Number.isFinite(v) && v > 0 ? v : 0;
107
+ }
108
+ attributeChangedCallback(name) {
109
+ // force/color are read live each frame; count / max-particles change the pool size, so
110
+ // rebuild it now (not just on the next resize) — the declared budget takes effect at once.
111
+ if (this.ctx && (name === 'count' || name === 'max-particles')) {
112
+ this.buildPool();
113
+ if (!this.raf)
114
+ this.step();
115
+ }
77
116
  if (this.isPrefersReducedMotion() && this.ctx)
78
117
  this.step();
79
118
  }
@@ -111,6 +150,30 @@ export class FieldCell extends HTMLElementBase {
111
150
  return (typeof matchMedia !== 'undefined' &&
112
151
  matchMedia('(prefers-reduced-motion: reduce)').matches);
113
152
  }
153
+ /** A monotonic timestamp for the fps throttle, in ms (rAF-timestamp compatible). */
154
+ rafNow() {
155
+ return typeof performance !== 'undefined' && typeof performance.now === 'function'
156
+ ? performance.now()
157
+ : Date.now();
158
+ }
159
+ /**
160
+ * The per-cell frame-budget gate (§31.19). With no `fps` (0), every frame renders. With a
161
+ * positive `fps`, a frame renders only once its `1000/fps` ms interval has elapsed since the
162
+ * last render; renders advance `lastStepTs`. Each cell keeps its own budget — one cell's rate
163
+ * never affects another's.
164
+ */
165
+ shouldRenderFrame(now) {
166
+ const fps = this.fps;
167
+ if (fps <= 0)
168
+ return true;
169
+ // First frame of a run (lastStepTs === 0) always renders and starts the clock, so a
170
+ // resumed cell isn't stalled up to one interval; thereafter, throttle to 1000/fps ms.
171
+ if (this.lastStepTs === 0 || now - this.lastStepTs >= 1000 / fps) {
172
+ this.lastStepTs = now;
173
+ return true;
174
+ }
175
+ return false;
176
+ }
114
177
  /** Fit the canvas to the element box (DPR-aware) and rebuild the pool. */
115
178
  fit() {
116
179
  if (!this.ctx)
@@ -129,10 +192,13 @@ export class FieldCell extends HTMLElementBase {
129
192
  if (!this.raf)
130
193
  this.step();
131
194
  }
132
- /** Build the particle pool sized to the frame area. */
195
+ /** Build the particle pool sized to the frame area, capped by the cell's budget (§31.19). */
133
196
  buildPool() {
134
197
  const area = this.boxW * this.boxH;
135
- const n = this.count > 0 ? this.count : clamp(Math.round(area / 9000), 16, 90);
198
+ const requested = this.count > 0 ? this.count : clamp(Math.round(area / 9000), 16, 90);
199
+ // Hard cap: max-particles clamps both the auto-size and an explicit count (per-cell budget).
200
+ const cap = this.maxParticles;
201
+ const n = cap > 0 ? Math.min(requested, cap) : requested;
136
202
  const pool = [];
137
203
  for (let i = 0; i < n; i++) {
138
204
  pool.push({
@@ -151,6 +217,8 @@ export class FieldCell extends HTMLElementBase {
151
217
  this.step(); // one static frame, no loop
152
218
  return;
153
219
  }
220
+ // Fresh frame budget on resume, so re-entering view isn't stalled by the fps throttle.
221
+ this.lastStepTs = 0;
154
222
  this.raf = requestAnimationFrame(this.tick);
155
223
  }
156
224
  stop() {
@@ -1 +1 @@
1
- {"version":3,"file":"field-cell.js","sourceRoot":"","sources":["../src/field-cell.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"field-cell.js","sourceRoot":"","sources":["../src/field-cell.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -28,6 +28,9 @@ export declare class FieldField extends HTMLElementBase {
28
28
  /** element-level visibility: pages can hide the field (display:none) — skip draw work then. */
29
29
  private visibilityObserver?;
30
30
  private fieldVisible;
31
+ /** SSR pre-registration queue bookkeeping: true while this element counts as a live field, so a
32
+ * rebuild (start() after a destroy) does not double-count the active-field tally (#683). */
33
+ private fieldActiveMarked;
31
34
  /** experimental platform runtime (Phase D); present only when the flag is on. */
32
35
  platformRuntime?: PlatformRuntime;
33
36
  /**
@@ -42,11 +45,13 @@ export declare class FieldField extends HTMLElementBase {
42
45
  get accent(): string;
43
46
  /** particle-count multiplier (§2.5). */
44
47
  get density(): number;
45
- /** draw the background Currents (§24). */
48
+ /** draw the background Currents (§24). OPT-IN (#979, mirrors the core default): the attribute
49
+ * must be PRESENT (and not `"false"`) to build the waves — same semantics as `attention` /
50
+ * `causality` / `mass`. Absent = the bare field, no carrier waves. */
46
51
  get waves(): boolean;
47
52
  /** render mode (§20.6); the DEFAULT is `none` (#538) — the signals-only engine: simulate + feed back,
48
53
  * never draw (#297). Set `render="dots"` (or another drawing mode) to get a visible surface. */
49
- get renderMode(): 'dots' | 'trails' | 'links' | 'metaballs' | 'voronoi' | 'streamlines' | 'flow' | 'none';
54
+ get renderMode(): 'dots' | 'trails' | 'links' | 'metaballs' | 'voronoi' | 'streamlines' | 'flow' | 'knockout' | 'redshift' | 'blackbody' | 'depth' | 'none';
50
55
  /** substrate background: `transparent` (present and not `"false"`) clears to transparent so the
51
56
  * underlay composites over light content; default `opaque` paints the near-black substrate. */
52
57
  get background(): 'opaque' | 'transparent';
@@ -74,8 +79,15 @@ export declare class FieldField extends HTMLElementBase {
74
79
  get gridIntensity(): number | undefined;
75
80
  /** `separation` — particle-to-particle separation force strength ∈ [0,1]; undefined if absent/invalid. */
76
81
  get separation(): number | undefined;
82
+ /** `ambient-orbit` — DECLARED resting-formation swirl on attract (#978); undefined (engine default
83
+ * 0.1, the historical hardcoded value) if absent/invalid. `0` is valid (a purely radial attract). */
84
+ get ambientOrbit(): number | undefined;
85
+ /** `ambient-wander` — DECLARED resting-formation drift (#978); undefined (engine default 1.0, the
86
+ * historical hardcoded value) if absent/invalid. `0` is valid (a still resting field). */
87
+ get ambientWander(): number | undefined;
77
88
  /** `integrator` — the integration scheme (substrate doc 04 §Step 3); `'fixed'` opts into the
78
- * frame-rate-independent integrator, anything else (incl. absent) is the default `'legacy'`. */
89
+ * frame-rate-independent integrator, `'velocity-verlet'` into the second-order Verlet scheme
90
+ * (#659); anything else (incl. absent) is the default `'legacy'`. */
79
91
  get integrator(): IntegratorMode | undefined;
80
92
  /** `theme` — ambient palette preset (`warm` (default) | `cool` | `mono`); undefined if absent (#529). */
81
93
  get theme(): string | undefined;
@@ -140,7 +152,7 @@ export declare class FieldField extends HTMLElementBase {
140
152
  /** apply an adaptive quality tier 0–3 (#413) — the platform runtime forwards the governor's tier. */
141
153
  setQualityTier(tier: number): void;
142
154
  /** switch the underlay render mode (§20.6) live; `none` = signals-only — stop drawing, keep the signals (#297). */
143
- setRender(mode: 'dots' | 'trails' | 'links' | 'metaballs' | 'voronoi' | 'streamlines' | 'flow' | 'none'): void;
155
+ setRender(mode: 'dots' | 'trails' | 'links' | 'metaballs' | 'voronoi' | 'streamlines' | 'flow' | 'knockout' | 'redshift' | 'blackbody' | 'depth' | 'none'): void;
144
156
  /** render field readings on the overlay surface (Field Surfaces — in front of content); one mode or an additive stack. */
145
157
  setOverlay(mode: OverlayInput): void;
146
158
  /** wire glowing connector lines between a set, or clear with null (§10). */
@@ -225,6 +237,14 @@ export declare class FieldField extends HTMLElementBase {
225
237
  * `this.field` guard skips — the first mount reads every attribute itself.
226
238
  */
227
239
  attributeChangedCallback(name: string, oldVal: string | null, newVal: string | null): void;
240
+ /**
241
+ * Field Surfaces: lazily create + attach the front overlay surface (light DOM — the shadow host is
242
+ * z-index:0, behind content). A fixed, full-viewport, click-through, mix-blend canvas above content;
243
+ * core sizes its backing store and draws the overlay mode onto it. Created ONCE, on the first overlay
244
+ * that actually goes active (#676) — core invokes this as `overlayCanvasProvider` — and reused across
245
+ * rebuilds. Idempotent: returns the existing canvas on every later call, never a second element.
246
+ */
247
+ private ensureOverlayCanvas;
228
248
  /** (re)create the engine on the canvas, reading the current attributes. */
229
249
  private start;
230
250
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -2,6 +2,7 @@ import { PALETTE, FIELD_VERSION, diffFieldSnapshots, replayFieldSnapshots } from
2
2
  import { createBrowserField } from '@fundamental-engine/dom';
3
3
  import { HTMLElementBase } from "./base.js";
4
4
  import { shouldUsePlatformRuntime, startPlatformRuntime, makeFeedbackSink } from "./platform-runtime.js";
5
+ import { installPreRegistrationQueue, flushPreRegistrationQueue, markFieldActive, markFieldInactive, } from "./preregistration-queue.js";
5
6
  // Experimental platform runtime (Phase D). Re-exported so apps can opt in globally.
6
7
  export { usePlatformRuntime, isPlatformRuntimeDefault, shouldUsePlatformRuntime, startPlatformRuntime } from "./platform-runtime.js";
7
8
  /**
@@ -23,8 +24,8 @@ export { usePlatformRuntime, isPlatformRuntimeDefault, shouldUsePlatformRuntime,
23
24
  * (canonical) and `<field-field>`.
24
25
  * @attr {string} accent - Accent color (hex) the field draws particles and overlay in.
25
26
  * @attr {number} density - Particle-density multiplier (default `1`; `0.5` halves the count).
26
- * @attr {number} waves - Intensity of the resting wave currents (the ambient drift).
27
- * @attr {string} render - Underlay render mode (Field Surfaces, behind content): `dots` | `trails` | `links` | `metaballs` | `voronoi` | `streamlines` | `none`. The DEFAULT is `none` (#538) — the signals-only engine (#297): the simulation and feedback signals run, but no canvas context is acquired and nothing is ever drawn. Set `render="dots"` for the particle surface.
27
+ * @attr {boolean} waves - Draw the background Currents (the resting wave layers + bound shimmer). OPT-IN (#979): absent = off (the bare field); present (and not `"false"`) = on.
28
+ * @attr {string} render - Underlay render mode (Field Surfaces, behind content): `dots` | `trails` | `links` | `metaballs` | `voronoi` | `streamlines` | `flow` | `knockout` | `redshift` | `blackbody` | `depth` | `none`. The DEFAULT is `none` (#538) — the signals-only engine (#297): the simulation and feedback signals run, but no canvas context is acquired and nothing is ever drawn. Set `render="dots"` for the particle surface.
28
29
  * @attr {string} overlay - Overlay readings (Field Surfaces, in front of content): `off` | `streamlines` | `force-vectors` | `field-lines` | `grid` | `temperature` | `energy` | `path` | `data` — or a space-separated stack (readings are additive, drawn in order).
29
30
  * @attr {string} palette - Named color palette for the field.
30
31
  * @attr {string} theme - Ambient theme preset (#529): `warm` (default) | `cool` | `mono` — the heat ramp + wave baseline.
@@ -36,7 +37,7 @@ export { usePlatformRuntime, isPlatformRuntimeDefault, shouldUsePlatformRuntime,
36
37
  * @attr {boolean} causality - Enables the causality demo behaviour.
37
38
  * @attr {string} background - Substrate background: `transparent` clears to transparent so the underlay composites over light content (an image, a 3D scene, a light page); default `opaque` paints the near-black substrate.
38
39
  * @attr {number} depth - Optional z-volume (default `0`, the flat field). `> 0` opens a shallow depth the matter drifts through, projected as a size/alpha recession. Construction-time — changing it rebuilds.
39
- * @attr {string} integrator - Integration scheme (substrate doc 04 §Step 3): `fixed` opts into the frame-rate-independent integrator; anything else (incl. absent) is the default `legacy`. Construction-time — changing it rebuilds.
40
+ * @attr {string} integrator - Integration scheme (substrate doc 04 §Step 3): `fixed` opts into the frame-rate-independent integrator, `velocity-verlet` into the second-order Verlet scheme (#659); anything else (incl. absent) is the default `legacy`. Construction-time — changing it rebuilds.
40
41
  * @attr {number} grid-warp - Distortion multiplier for the `grid` overlay's lattice (default `1`, the calibrated amount). `2`–`3` exaggerates the deformation; `0` flattens it. Only affects the `grid` overlay mode.
41
42
  * @attr {number} grid-intensity - Stroke opacity ∈ [0,1] for the `grid` overlay lines (default `0.16`, the faint diagnostic). Raise it (≈`0.5`) to make the warped lattice a visual centerpiece. Only affects the `grid` overlay mode.
42
43
  */
@@ -92,6 +93,8 @@ export class FieldField extends HTMLElementBase {
92
93
  { key: 'waveStyle', attr: 'wave-style', read: (el) => el.waveStyle },
93
94
  { key: 'waveCenter', attr: 'wave-center', read: (el) => el.waveCenter },
94
95
  { key: 'separation', attr: 'separation', read: (el) => el.separation },
96
+ { key: 'ambientOrbit', attr: 'ambient-orbit', read: (el) => el.ambientOrbit },
97
+ { key: 'ambientWander', attr: 'ambient-wander', read: (el) => el.ambientWander },
95
98
  { key: 'integrator', attr: 'integrator', read: (el) => el.integrator },
96
99
  ];
97
100
  // Literal (not computed) so the CEM analyzer can enumerate it; the test keeps it in sync with OPTIONS.
@@ -117,6 +120,8 @@ export class FieldField extends HTMLElementBase {
117
120
  'wave-style',
118
121
  'wave-center',
119
122
  'separation',
123
+ 'ambient-orbit',
124
+ 'ambient-wander',
120
125
  'integrator',
121
126
  'background',
122
127
  'formation',
@@ -131,6 +136,9 @@ export class FieldField extends HTMLElementBase {
131
136
  /** element-level visibility: pages can hide the field (display:none) — skip draw work then. */
132
137
  visibilityObserver;
133
138
  fieldVisible = true;
139
+ /** SSR pre-registration queue bookkeeping: true while this element counts as a live field, so a
140
+ * rebuild (start() after a destroy) does not double-count the active-field tally (#683). */
141
+ fieldActiveMarked = false;
134
142
  /** experimental platform runtime (Phase D); present only when the flag is on. */
135
143
  platformRuntime;
136
144
  /**
@@ -144,6 +152,11 @@ export class FieldField extends HTMLElementBase {
144
152
  }
145
153
  constructor() {
146
154
  super();
155
+ // SSR pre-registration queue (shadow-dom.md §31.10): install the capturing document listeners now,
156
+ // in the FIRST field element's constructor, so early `field:register-body` events from bodies that
157
+ // upgrade before this field boots are buffered instead of lost. Idempotent + SSR-guarded (no-op
158
+ // without `document`). The field drains the queue in start() once its own listeners are wired.
159
+ installPreRegistrationQueue();
147
160
  const root = this.attachShadow({ mode: 'open' });
148
161
  const style = document.createElement('style');
149
162
  style.textContent =
@@ -161,15 +174,27 @@ export class FieldField extends HTMLElementBase {
161
174
  const v = Number(this.getAttribute('density'));
162
175
  return Number.isFinite(v) && v > 0 ? v : 1;
163
176
  }
164
- /** draw the background Currents (§24). */
177
+ /** draw the background Currents (§24). OPT-IN (#979, mirrors the core default): the attribute
178
+ * must be PRESENT (and not `"false"`) to build the waves — same semantics as `attention` /
179
+ * `causality` / `mass`. Absent = the bare field, no carrier waves. */
165
180
  get waves() {
166
- return this.getAttribute('waves') !== 'false';
181
+ return this.hasAttribute('waves') && this.getAttribute('waves') !== 'false';
167
182
  }
168
183
  /** render mode (§20.6); the DEFAULT is `none` (#538) — the signals-only engine: simulate + feed back,
169
184
  * never draw (#297). Set `render="dots"` (or another drawing mode) to get a visible surface. */
170
185
  get renderMode() {
171
186
  const v = this.getAttribute('render');
172
- return v === 'dots' || v === 'trails' || v === 'links' || v === 'metaballs' || v === 'voronoi' || v === 'streamlines' || v === 'flow'
187
+ return v === 'dots' ||
188
+ v === 'trails' ||
189
+ v === 'links' ||
190
+ v === 'metaballs' ||
191
+ v === 'voronoi' ||
192
+ v === 'streamlines' ||
193
+ v === 'flow' ||
194
+ v === 'knockout' ||
195
+ v === 'redshift' ||
196
+ v === 'blackbody' ||
197
+ v === 'depth'
173
198
  ? v
174
199
  : 'none';
175
200
  }
@@ -245,10 +270,24 @@ export class FieldField extends HTMLElementBase {
245
270
  const v = Number(this.getAttribute('separation'));
246
271
  return Number.isFinite(v) && v >= 0 ? v : undefined;
247
272
  }
273
+ /** `ambient-orbit` — DECLARED resting-formation swirl on attract (#978); undefined (engine default
274
+ * 0.1, the historical hardcoded value) if absent/invalid. `0` is valid (a purely radial attract). */
275
+ get ambientOrbit() {
276
+ const v = Number(this.getAttribute('ambient-orbit'));
277
+ return Number.isFinite(v) && v >= 0 ? v : undefined;
278
+ }
279
+ /** `ambient-wander` — DECLARED resting-formation drift (#978); undefined (engine default 1.0, the
280
+ * historical hardcoded value) if absent/invalid. `0` is valid (a still resting field). */
281
+ get ambientWander() {
282
+ const v = Number(this.getAttribute('ambient-wander'));
283
+ return Number.isFinite(v) && v >= 0 ? v : undefined;
284
+ }
248
285
  /** `integrator` — the integration scheme (substrate doc 04 §Step 3); `'fixed'` opts into the
249
- * frame-rate-independent integrator, anything else (incl. absent) is the default `'legacy'`. */
286
+ * frame-rate-independent integrator, `'velocity-verlet'` into the second-order Verlet scheme
287
+ * (#659); anything else (incl. absent) is the default `'legacy'`. */
250
288
  get integrator() {
251
- return this.getAttribute('integrator') === 'fixed' ? 'fixed' : undefined;
289
+ const v = this.getAttribute('integrator');
290
+ return v === 'fixed' || v === 'velocity-verlet' ? v : undefined;
252
291
  }
253
292
  /** `theme` — ambient palette preset (`warm` (default) | `cool` | `mono`); undefined if absent (#529). */
254
293
  get theme() {
@@ -499,6 +538,10 @@ export class FieldField extends HTMLElementBase {
499
538
  grid(name) {
500
539
  return this.field?.grid(name) ?? NULL_GRID;
501
540
  }
541
+ // EXPERIMENTAL focus/attention substrate: the field-focus WRITE + read (`focus()` / `focusState()`) are
542
+ // NOT proxied onto this custom element on purpose — `HTMLElement.focus()` is the element's DOM/keyboard
543
+ // focus and must stay that way (accessibility). Reach the field-focus surface through the handle:
544
+ // `el.handle?.focus('file:src/auth.ts', { source: 'operator' })` and `el.handle?.focusState()`.
502
545
  /** subscribe to a discrete field event (absorb/release/settle); a no-op unsubscribe until the field starts. */
503
546
  on(type, cb) {
504
547
  return this.field?.on(type, cb) ?? (() => { });
@@ -538,6 +581,13 @@ export class FieldField extends HTMLElementBase {
538
581
  this.visibilityObserver = undefined;
539
582
  this.field?.destroy();
540
583
  this.field = undefined;
584
+ // SSR pre-registration queue (§31.10): this field is no longer live — release its active-field
585
+ // mark so the queue resumes buffering if no field remains (a body that (re)connects during a
586
+ // field-less window is then captured for the next field that boots).
587
+ if (this.fieldActiveMarked) {
588
+ markFieldInactive();
589
+ this.fieldActiveMarked = false;
590
+ }
541
591
  // Field Surfaces: remove the light-DOM overlay surface this element owns.
542
592
  this.overlayCanvas?.remove();
543
593
  this.overlayCanvas = undefined;
@@ -596,6 +646,29 @@ export class FieldField extends HTMLElementBase {
596
646
  this.start();
597
647
  }
598
648
  }
649
+ /**
650
+ * Field Surfaces: lazily create + attach the front overlay surface (light DOM — the shadow host is
651
+ * z-index:0, behind content). A fixed, full-viewport, click-through, mix-blend canvas above content;
652
+ * core sizes its backing store and draws the overlay mode onto it. Created ONCE, on the first overlay
653
+ * that actually goes active (#676) — core invokes this as `overlayCanvasProvider` — and reused across
654
+ * rebuilds. Idempotent: returns the existing canvas on every later call, never a second element.
655
+ */
656
+ ensureOverlayCanvas() {
657
+ if (this.overlayCanvas)
658
+ return this.overlayCanvas;
659
+ if (typeof document === 'undefined')
660
+ return null;
661
+ const oc = document.createElement('canvas');
662
+ oc.setAttribute('aria-hidden', 'true');
663
+ // marked so a consumer can target the overlay surface (e.g. a scroll-driven opacity fade) without
664
+ // reaching into the shadow internals — it's the only canvas Fundamental adds to the light DOM.
665
+ oc.setAttribute('data-field-overlay', '');
666
+ oc.style.cssText =
667
+ 'position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:5;mix-blend-mode:screen';
668
+ document.body.appendChild(oc);
669
+ this.overlayCanvas = oc;
670
+ return oc;
671
+ }
599
672
  /** (re)create the engine on the canvas, reading the current attributes. */
600
673
  start() {
601
674
  // tear down any prior platform runtime before a rebuild (idempotent)
@@ -610,24 +683,17 @@ export class FieldField extends HTMLElementBase {
610
683
  this.platformRuntime = startPlatformRuntime(scanRoot);
611
684
  feedbackSink = makeFeedbackSink(this.platformRuntime.platform);
612
685
  }
613
- // Field Surfaces: ensure the front overlay surface exists (light DOM — the shadow host is
614
- // z-index:0, behind content). A fixed, full-viewport, click-through canvas above content; core
615
- // sizes its backing store and draws the overlay mode onto it. Created once, reused across rebuilds.
616
- if (!this.overlayCanvas && typeof document !== 'undefined') {
617
- const oc = document.createElement('canvas');
618
- oc.setAttribute('aria-hidden', 'true');
619
- // marked so a consumer can target the overlay surface (e.g. a scroll-driven opacity fade) without
620
- // reaching into the shadow internals — it's the only canvas Fundamental adds to the light DOM.
621
- oc.setAttribute('data-field-overlay', '');
622
- oc.style.cssText =
623
- 'position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:5;mix-blend-mode:screen';
624
- document.body.appendChild(oc);
625
- this.overlayCanvas = oc;
626
- }
686
+ // Field Surfaces: the front overlay surface is created LAZILY (#676) — a full-viewport,
687
+ // mix-blend light-DOM canvas costs a whole-screen re-blend every frame while it's in the
688
+ // compositing tree, even empty. So we hand core a PROVIDER instead of a canvas: core calls it the
689
+ // first time an overlay reading actually goes active (a non-off setOverlay / attribute), and not
690
+ // before. The common `overlay: off` boot never adds a canvas. If an overlay attribute IS already
691
+ // set at mount, core resolves it during construction via the same provider (create once, reuse).
627
692
  const opts = {
628
693
  // pass the raw attribute so a `palette` with no `accent` adopts the palette's first stop
629
694
  accent: this.getAttribute('accent') ?? undefined,
630
- overlayCanvas: this.overlayCanvas,
695
+ overlayCanvas: this.overlayCanvas, // may already exist from a prior start()/rebuild — reuse it
696
+ overlayCanvasProvider: () => this.ensureOverlayCanvas(),
631
697
  feedbackSink,
632
698
  };
633
699
  // the rest of the engine options come from the one declarative table (above), so a new
@@ -648,6 +714,16 @@ export class FieldField extends HTMLElementBase {
648
714
  this.field.setVisible(false);
649
715
  // take the overlay canvas out of the compositing tree unless a reading is actually active.
650
716
  syncOverlaySurface(this.overlayCanvas, this.overlay);
717
+ // SSR pre-registration queue (§31.10): the field's body-event listeners are now wired (via the
718
+ // host inside createBrowserField). Mark it live so later registrations skip the queue, then drain
719
+ // any events buffered before boot — they replay onto their source elements and register through
720
+ // the normal idempotent path. Mark ONCE per element (a rebuild re-runs start() but must not
721
+ // re-increment the active-field tally); the drain is safe to run every time (no-op when empty).
722
+ if (!this.fieldActiveMarked) {
723
+ markFieldActive();
724
+ this.fieldActiveMarked = true;
725
+ }
726
+ flushPreRegistrationQueue();
651
727
  }
652
728
  }
653
729
  /**
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,oBAAoB,EAAqe,MAAM,0BAA0B,CAAC;AAC/kB,OAAO,EAAE,kBAAkB,EAAsB,MAAM,yBAAyB,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,gBAAgB,EAAwB,MAAM,uBAAuB,CAAC;AAE/H,oFAAoF;AACpF,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGrI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAEH,uFAAuF;AACvF,MAAM,SAAS,GAAe;IAC5B,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IACf,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;IACjB,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IAChC,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;IACf,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;CAChB,CAAC;AAEF,oGAAoG;AACpG,MAAM,gBAAgB,GAAuB;IAC3C,QAAQ,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAE,CAAC;IACxB,UAAU,EAAE,GAAG,EAAE,GAAE,CAAC;IACpB,GAAG,EAAE,GAAG,EAAE,CAAC,SAAS;IACpB,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE;IACd,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;IACf,IAAI,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAE,CAAC;IACpB,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE;CACf,CAAC;AAEF,MAAM,OAAO,UAAW,SAAQ,eAAe;IAC7C;;;;;;;;;;OAUG;IACK,MAAM,CAAU,OAAO,GAI1B;QACH,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE;QAC7D,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE;QACvD,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE;QACvD,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,EAAE;QACtE,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,EAAE;QAC9D,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE;QAC7D,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE;QAC7D,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE;QACpD,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE;QACnE,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE;QACnE,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE;QAC7D,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE;QAC3D,EAAE,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE;QACjE,EAAE,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE;QAChF,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE;QACvD,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,YAAY,EAAE;QAC7E,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,YAAY,EAAE;QAC7E,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,YAAY,EAAE;QAC7E,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE;QACpE,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,EAAE;QACvE,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,EAAE;QACtE,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,EAAE;KACvE,CAAC;IAEF,uGAAuG;IACvG,MAAM,CAAU,kBAAkB,GAAG;QACnC,QAAQ;QACR,SAAS;QACT,OAAO;QACP,OAAO;QACP,QAAQ;QACR,SAAS;QACT,SAAS;QACT,MAAM;QACN,WAAW;QACX,WAAW;QACX,SAAS;QACT,SAAS;QACT,WAAW;QACX,gBAAgB;QAChB,OAAO;QACP,eAAe;QACf,eAAe;QACf,eAAe;QACf,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,YAAY;QACZ,YAAY;QACZ,WAAW;KACZ,CAAC;IAEe,MAAM,CAAoB;IACnC,KAAK,CAAe;IAC5B;4GACwG;IAChG,UAAU,GAAG,KAAK,CAAC;IAC3B,qFAAqF;IAC7E,aAAa,CAAqB;IAC1C,+FAA+F;IACvF,kBAAkB,CAAwB;IAC1C,YAAY,GAAG,IAAI,CAAC;IAC5B,iFAAiF;IACjF,eAAe,CAAmB;IAElC;;;;;OAKG;IACH,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC;IACxC,CAAC;IAED;QACE,KAAK,EAAE,CAAC;QACR,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QACjD,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC9C,KAAK,CAAC,WAAW;YACf,2EAA2E;gBAC3E,8CAA8C,CAAC;QACjD,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IAED,uEAAuE;IACvE,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;IAChE,CAAC;IAED,wCAAwC;IACxC,IAAI,OAAO;QACT,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;QAC/C,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED,0CAA0C;IAC1C,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC;IAChD,CAAC;IAED;qGACiG;IACjG,IAAI,UAAU;QACZ,MAAM,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QACtC,OAAO,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,KAAK,WAAW,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,aAAa,IAAI,CAAC,KAAK,MAAM;YACnI,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,MAAM,CAAC;IACb,CAAC;IAED;oGACgG;IAChG,IAAI,UAAU;QACZ,MAAM,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;QAC1C,OAAO,CAAC,KAAK,aAAa,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC;IACzG,CAAC;IAED,4GAA4G;IAC5G,IAAI,OAAO;QACT,MAAM,KAAK,GAA2B;YACpC,aAAa;YACb,eAAe;YACf,aAAa;YACb,MAAM;YACN,aAAa;YACb,QAAQ;YACR,MAAM;YACN,MAAM;SACP,CAAC;QACF,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;aAC9C,KAAK,CAAC,KAAK,CAAC;aACZ,MAAM,CAAC,CAAC,CAAC,EAAoB,EAAE,CAAE,KAA2B,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7E,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAC/B,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7C,CAAC;IAED,mFAAmF;IACnF,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC;IACnD,CAAC;IAED,0FAA0F;IAC1F,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,OAAO,CAAC;IACtF,CAAC;IAED,wFAAwF;IACxF,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,OAAO,CAAC;IACtF,CAAC;IAED,kFAAkF;IAClF,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,OAAO,CAAC;IAC5E,CAAC;IAED,iGAAiG;IACjG,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC;IAClF,CAAC;IACD,oGAAoG;IACpG,IAAI,MAAM;QACR,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;QAC/C,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACrD,CAAC;IACD,mGAAmG;IACnG,IAAI,KAAK;QACP,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7C,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACrD,CAAC;IACD;sDACkD;IAClD,IAAI,QAAQ;QACV,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC;QACjD,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACtD,CAAC;IACD;0GACsG;IACtG,IAAI,aAAa;QACf,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC,CAAC;QACtD,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACtD,CAAC;IACD,0GAA0G;IAC1G,IAAI,UAAU;QACZ,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC;QAClD,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACtD,CAAC;IACD;qGACiG;IACjG,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3E,CAAC;IACD,yGAAyG;IACzG,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC;IACjD,CAAC;IACD,2FAA2F;IAC3F,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,SAAS,CAAC;IACzD,CAAC;IACD,2FAA2F;IAC3F,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,SAAS,CAAC;IACzD,CAAC;IACD,qGAAqG;IACrG,IAAI,YAAY;QACd,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrF,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IACxC,CAAC;IACD,kEAAkE;IAClE,IAAI,SAAS;QACX,MAAM,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;QAC1C,OAAO,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC;IAClD,CAAC;IACD,wEAAwE;IACxE,IAAI,UAAU;QACZ,MAAM,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;QAC3C,IAAI,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QACpB,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjF,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAE,EAAE,CAAC;QACxC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD;;0EAEsE;IACtE,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,SAAS,CAAC;IACrD,CAAC;IAED,8EAA8E;IAC9E;;;iGAG6F;IAC7F,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IACD;;wGAEoG;IAC5F,OAAO,CAAC,IAAY,EAAE,KAAoB;QAChD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,KAAK,KAAK,IAAI;YAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;;YAC1C,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IAC1B,CAAC;IACD,wEAAwE;IACxE,IAAI;QACF,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;IACrB,CAAC;IACD,uBAAuB;IACvB,MAAM;QACJ,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;IACrB,CAAC;IACD,0CAA0C;IAC1C,SAAS,CAAC,GAAW;QACnB,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAC9B,CAAC;IACD,gDAAgD;IAChD,UAAU,CAAC,OAAmC;QAC5C,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;QAChC,8FAA8F;QAC9F,IAAI,OAAO,OAAO,KAAK,QAAQ;YAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IACD,wCAAwC;IACxC,YAAY,CAAC,IAAY;QACvB,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IAClC,CAAC;IACD,4CAA4C;IAC5C,YAAY,CAAC,KAA4B;QACvC,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC;IACD,2DAA2D;IAC3D,aAAa,CAAC,MAA0E;QACtF,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QACpC,CAAC;aAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YACtC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IACD,oEAAoE;IACpE,aAAa,CAAC,QAAgB;QAC5B,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/C,CAAC;IACD,8CAA8C;IAC9C,YAAY,CAAC,EAAW;QACtB,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;QAC7B,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACnD,CAAC;IACD,wDAAwD;IACxD,YAAY,CAAC,EAAW;QACtB,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;QAC7B,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACnD,CAAC;IACD,sGAAsG;IACtG,aAAa,CAAC,IAA8B;QAC1C,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC;IACD,gEAAgE;IAChE,UAAU,CAAC,EAAW;QACpB,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC;QAC3B,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;IACD,2FAA2F;IAC3F,SAAS,CAAC,GAAW;QACnB,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IACD,qGAAqG;IACrG,cAAc,CAAC,IAAY;QACzB,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IACD,mHAAmH;IACnH,SAAS,CAAC,IAA6F;QACrG,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC/B,CAAC;IACD,0HAA0H;IAC1H,UAAU,CAAC,IAAkB;QAC3B,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;QAC7B,kBAAkB,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAC7C,kGAAkG;QAClG,gFAAgF;QAChF,MAAM,MAAM,GAAG,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;QAChG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAClC,CAAC;IACD,4EAA4E;IAC5E,OAAO,CAAC,IAAyB;QAC/B,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IACD,yFAAyF;IACzF,KAAK,CAAC,CAAS,EAAE,CAAS,EAAE,GAAY;QACtC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;IAC/B,CAAC;IACD,qGAAqG;IACrG,MAAM,CAAC,CAAS,EAAE,CAAS,EAAE,IAAkB;QAC7C,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IACjC,CAAC;IACD,6BAA6B;IAC7B,SAAS;QACP,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC;IAC1B,CAAC;IACD,2GAA2G;IAC3G,IAAI,CAAC,KAA6B;QAChC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IACD,8FAA8F;IAC9F,QAAQ,CAAC,IAAe;QACtB,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAW,EAAE,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAC;IACnF,CAAC;IACD,2FAA2F;IAC3F,OAAO,CAAC,IAAc;QACpB,OAAO,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAC;IACzG,CAAC;IACD,8GAA8G;IAC9G,QAAQ,CAAC,IAAY,EAAE,OAAyC;QAC9D,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAC;IAC1F,CAAC;IACD,wGAAwG;IACxG,WAAW,CAAC,IAAY,EAAE,CAAS,EAAE,CAAS;QAC5C,OAAO,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;IACD,2FAA2F;IAC3F,MAAM,CAAC,CAAS,EAAE,CAAS;QACzB,OAAO,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC;IAC1C,CAAC;IACD,wGAAwG;IACxG,OAAO,CAAC,CAAS,EAAE,CAAS;QAC1B,OAAO,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC;IAC3C,CAAC;IACD,oCAAoC;IACpC,UAAU;QACR,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC;IAC3B,CAAC;IACD,kFAAkF;IAClF,aAAa;QACX,OAAO,IAAI,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC;IACD;yGACqG;IACrG,aAAa,CAAC,GAAiB;QAC7B,OAAO,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IACD,yFAAyF;IACzF,eAAe,CAAC,GAAgB;QAC9B,OAAO,IAAI,CAAC,KAAK,EAAE,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IACD,mEAAmE;IACnE,MAAM;QACJ,OAAO,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAChF,CAAC;IACD;yGACqG;IACrG,KAAK,CAAC,CAAc;QAClB,OAAO,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;IACpJ,CAAC;IACD,2GAA2G;IAC3G,QAAQ,CAAC,IAA2B;QAClC,OAAO,CACL,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC;YAC1B,EAAE,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAChJ,CAAC;IACJ,CAAC;IACD,gHAAgH;IAChH,IAAI,CAAC,CAAgB,EAAE,CAAgB;QACrC,OAAO,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5D,CAAC;IACD,qIAAqI;IACrI,MAAM,CAAC,CAAgB,EAAE,CAAgB,EAAE,IAAoB;QAC7D,OAAO,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,IAAI,oBAAoB,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IAC5E,CAAC;IACD,qIAAqI;IACrI,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,KAAK,EAAE,WAAW,IAAI,gBAAgB,CAAC;IACrD,CAAC;IACD;yGACqG;IACrG,MAAM,CAAC,CAAS,EAAE,CAAS;QACzB,OAAO,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IACpD,CAAC;IACD,sGAAsG;IACtG,YAAY,CAAC,CAAS,EAAE,CAAS;QAC/B,OAAO,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IACD,wHAAwH;IACxH,cAAc,CAAC,CAAS,EAAE,CAAS;QACjC,OAAO,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IAC5D,CAAC;IACD,qHAAqH;IACrH,IAAI,CAAC,IAAY;QACf,OAAO,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC;IAC7C,CAAC;IACD,+GAA+G;IAC/G,EAAE,CAA2B,IAAO,EAAE,EAAiC;QACrE,OAAO,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAChD,CAAC;IACD,iFAAiF;IACjF,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,KAAK,EAAE,OAAO,IAAI,aAAa,CAAC;IAC9C,CAAC;IACD,gGAAgG;IAChG,OAAO;QACL,OAAO,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACpC,CAAC;IACD;mFAC+E;IAC/E,UAAU,CAAC,EAAW;QACpB,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,iBAAiB;QACf,6EAA6E;QAC7E,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC;YAAE,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAChF,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,2FAA2F;QAC3F,4FAA4F;QAC5F,0FAA0F;QAC1F,4EAA4E;QAC5E,IAAI,OAAO,oBAAoB,KAAK,WAAW,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5E,IAAI,CAAC,kBAAkB,GAAG,IAAI,oBAAoB,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC7D,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;gBAC1D,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC5C,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,oBAAoB;QAClB,IAAI,CAAC,kBAAkB,EAAE,UAAU,EAAE,CAAC;QACtC,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;QACpC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACvB,0EAA0E;QAC1E,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QAC/B,IAAI,CAAC,eAAe,EAAE,OAAO,EAAE,CAAC;QAChC,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;IACnC,CAAC;IAED;;;;;OAKG;IACH,wBAAwB,CAAC,IAAY,EAAE,MAAqB,EAAE,MAAqB;QACjF,8FAA8F;QAC9F,iFAAiF;QACjF,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,MAAM,KAAK,MAAM,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO;QAChE,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,QAAQ;gBACX,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAClC,MAAM;YACR,KAAK,SAAS;gBACZ,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC;gBAC9C,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACtC,MAAM;YACR,KAAK,SAAS;gBACZ,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACpC,kBAAkB,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;gBACrD,MAAM;YACR,KAAK,WAAW;gBACd,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACxC,MAAM;YACR,KAAK,WAAW;gBACd,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACxC,MAAM;YACR,KAAK,SAAS;gBACZ,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACpC,MAAM;YACR,KAAK,SAAS;gBACZ,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;gBACvC,MAAM;YACR,KAAK,YAAY;gBACf,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;gBAC/C,MAAM;YACR,KAAK,YAAY;gBACf,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC1C,MAAM;YACR,KAAK,WAAW;gBACd,IAAI,IAAI,CAAC,SAAS;oBAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC5D,MAAM;YACR,SAAS,yDAAyD;gBAChE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBACrB,IAAI,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;IACH,CAAC;IAED,2EAA2E;IACnE,KAAK;QACX,qEAAqE;QACrE,IAAI,CAAC,eAAe,EAAE,OAAO,EAAE,CAAC;QAChC,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;QACjC,iGAAiG;QACjG,8FAA8F;QAC9F,2FAA2F;QAC3F,IAAI,YAAsC,CAAC;QAC3C,IAAI,wBAAwB,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,eAAe,IAAI,IAAI,CAAC;YAC7D,IAAI,CAAC,eAAe,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;YACtD,YAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QACjE,CAAC;QACD,0FAA0F;QAC1F,+FAA+F;QAC/F,oGAAoG;QACpG,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;YAC3D,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC5C,EAAE,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YACvC,kGAAkG;YAClG,+FAA+F;YAC/F,EAAE,CAAC,YAAY,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;YAC1C,EAAE,CAAC,KAAK,CAAC,OAAO;gBACd,mGAAmG,CAAC;YACtG,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAC9B,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QAC1B,CAAC;QACD,MAAM,IAAI,GAAiB;YACzB,yFAAyF;YACzF,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,SAAS;YAChD,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,YAAY;SACb,CAAC;QACF,uFAAuF;QACvF,2EAA2E;QAC3E,KAAK,MAAM,CAAC,IAAI,UAAU,CAAC,OAAO;YAAG,IAAgC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5F,IAAI,CAAC,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACnD,6FAA6F;QAC7F,qFAAqF;QACrF,IAAI,IAAI,CAAC,SAAS;YAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5D,oFAAoF;QACpF,sDAAsD;QACtD,IAAI,CAAC,eAAe,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/C,yFAAyF;QACzF,sFAAsF;QACtF,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACrD,2FAA2F;QAC3F,kBAAkB,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;;AAGH;;;;;;GAMG;AACH,SAAS,kBAAkB,CAAC,MAAqC,EAAE,KAAmB;IACpF,IAAI,CAAC,MAAM;QAAE,OAAO;IACpB,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC;IACvF,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;AAC9C,CAAC;AAED,IAAI,OAAO,cAAc,KAAK,WAAW,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;IAChF,cAAc,CAAC,MAAM,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;AACnD,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,SAAU,SAAQ,UAAU;CAAG;AAE5C,IAAI,OAAO,cAAc,KAAK,WAAW,EAAE,CAAC;IAC1C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC;QAAE,cAAc,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;AACxF,CAAC;AASD,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,uFAAuF;AACvF,wFAAwF;AACxF,OAAO,EACL,eAAe,EACf,aAAa,EACb,eAAe,EACf,WAAW,GACZ,MAAM,0BAA0B,CAAC;AAElC,oGAAoG;AACpG,qGAAqG;AACrG,oCAAoC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}