gesso-core 0.6.26 → 0.6.28

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/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { $ as isImeKey, $a as visualStatesEqual, $i as scaleSpacing, $n as spannedRunsFor, $r as transformIsIdentity, $t as registerFontStack, A as withOverrideSource, Aa as UiBasicColors, Ai as noInsets, An as clearLinkHover, Ar as inheritedPropertyFlags, At as adjacentField, B as FlexDirection, Ba as findEnvironmentKey, Bi as withDensity, Bn as editorFor, Br as isUiSemanticState, Bt as createCanvasTextStyle, C as SCROLLBAR_LINGER_MS, Ca as spansDifferOnlyInPaint, Ci as normalizeBorderRadius, Cn as isNodeInert, Cr as resolveNumber, Ct as hasDrawnText, D as formatExplanation, Da as colorsEqualPalette, Di as UiEnvironmentKeys, Dn as isSubtreeInert, Dr as closestPropertyName, Dt as selectionRectsIn, E as formatConstraints, Ea as textStylesEqual, Ei as propertyValuesEqual, En as isPressable, Er as resolveString, Et as paragraphGeometryFrom, F as clampSize, Fa as normalizeColor, Fi as unknownContainerSize, Fn as setLinkHover, Fr as propertyValuesEqualByName, Ft as detectEditingPlatform, G as CrossAxisAlignment, Ga as overrideSources, Gi as themeExtensionsEqual, Gn as maskText, Gr as UI_SUBGRID_AXES, Gt as runFontString, H as placeGridItems, Ha as UiNode, Hi as hasThemeExtension, Hn as isEditableNode, Hr as statesEqual, Ht as fillTextRects, I as constraintsEqual, Ia as parseColor, Ii as darkTheme, In as CARET_BLINK_MS, Ir as UiProperties, It as isPrintable, J as parseCrossAxisAlignment, Ja as writeOverrideProperty, Ji as highContrastColors, Jn as resolveColorValue, Jr as paintValuesEqual, Jt as textRunBackgrounds, K as MainAxisAlignment, Ka as resetOverrideWarnings, Ki as withThemeExtension, Kn as nextCaretToggle, Kr as validateSubgrid, Kt as spanOf, L as tightenConstraints, La as rgb8, Li as lightTheme, Ln as CARET_WIDTH, Lr as UI_ROLES, Lt as EditableLayout, M as contentOffset, Ma as colorToRgba, Mi as UiContainerSizeSource, Mn as linkHoverOf, Mr as propertyEffects, Mt as edgeField, N as LayoutRecord, Na as colorValuesEqual, Ni as bandOf, Nn as linkOf, Nr as propertyIsInherited, Nt as editingGroupOf, O as formatNumber, Oa as darkColors, Oi as UiInsetRegistry, On as pointerEventsOf, Or as findPropertyDefinition, Ot as wordRangeIn, P as Constraints, Pa as colorsEqual, Pi as containerBands, Pn as linkRunAtPointIn, Pr as propertyNarrowers, Pt as commandForKey, Q as capturePointer, Qa as visualState, Qi as defaultSpacing, Qn as ParagraphTextMeasurer, Qr as transform, Qt as fontStackFor, R as MAX_MEASURES_PER_CHILD, Ra as rgba, Ri as themesEqual, Rn as EDITOR_PROP, Rr as UI_SEMANTIC_STATES, Rt as applyCanvasTextStyle, S as SCROLLBAR_FADE_MS, Sa as spannedTextOf, Si as borderRadiusValuesEqual, Sn as isNodeHitTestable, Sr as resolveBoolean, St as UiInputDispatcher, T as describeOverrides, Ta as textSpansEqual, Ti as defineProperty, Tn as isNodeTabStop, Tr as resolvePropertyByName, Tt as paragraphGeometry, U as sizeGridTracks, Ua as DirtyNodeSet, Ui as noThemeExtensions, Un as isMultiline, Ur as validateRole, Ut as layoutTextLines, V as parseFlexDirection, Va as UiEnvironment, Vi as defineThemeExtension, Vn as editorOf, Vr as normalizeStates, Vt as drawText, W as AlignContent, Wa as clearOverrideProperty, Wi as themeExtension, Wn as isReadOnly, Wr as validateStates, Wt as runCanvasStyleInto, X as CanvasPlatformSurface, Xa as defaultVisualState, Xi as relativeLuminance, Xn as videoFrameSize, Xr as UiTransforms, Xt as bumpFontStack, Y as parseMainAxisAlignment, Ya as UiVisualState, Yi as raiseContrast, Yn as isVideoSurface, Yr as pathValuesEqual, Yt as textRunDecorations, Z as UiPlatformAdapter, Za as hasVisualState, Zi as densityFactors, Zn as CharacterCountTextMeasurer, Zr as parseTransform, Zt as clearFontStacks, _ as LABEL_PADDING_X, _a as editableSpansOf, _i as UiBorderRadiuses, _n as selectableTextNodes, _o as UiNodeType, _r as previousGraphemeStart, _t as scrollLeaderOf, a as PaintPictureCache, aa as boxShadow, ai as radialGradient, an as computeObjectFitRect, ao as UiGestureEvent, ar as lineIndexForOffset, at as UiGestureRecognizer, b as snapScroll, ba as resolvedSpansOf, bi as borderRadiusEqual, bn as setSelectionRange, br as UiGraph, bt as scrollbarThumbs, c as EMPTY_RECORDING, ca as boxShadowReach, ci as fr, cn as normalizeTextAlign, co as UiPasteEvent, cr as offsetAtX, ct as isScrollContainer, d as tracePathData, da as isShapeName, di as isMinMaxTrack, dn as TEXT_MATCHES_PROP, do as UiSelectionChangeEvent, dr as EditableTextModel, dt as UiFocusManager, ea as spacingEqual, ei as transformsEqual, en as DEFAULT_FONT_FAMILY, eo as MOUSE_POINTER, er as ELLIPSIS, et as pointerDeviceOf, f as ScaledImageCache, fa as shapesEqual, fi as isPercentLength, fn as clearMatchRanges, fo as UiTextChangeEvent, fr as graphemeBoundaries, ft as UiHitTester, g as paintsAfterChildren, ga as defaultTextStyle, gi as resolveLength, gn as clearSelectionRange, go as wheelDeltaYOf, gr as nextWordEnd, gt as SCROLLBAR_THICKNESS, h as hasDecorationPhase, ha as typographyEqual, hi as repeat, hn as TEXT_SELECTION_PROP, ho as noKeyModifiers, hr as nextGraphemeEnd, ht as SCROLLBAR_MIN_THUMB, i as traceRoundedRect, ia as BOX_SHADOW_BLUR_REACH, ii as linearGradient, in as colorToCss, io as UiFocusEvent, ir as lineIndexAtY, it as UiTouchScroller, j as accumulatedOffsetTo, ja as colorToHex, ji as observeViewportInsets, jn as hasTextLinks, jr as inheritedPropertyNames, jt as comparePositions, k as labelNode, ka as lightColors, ki as insetsEqual, kn as resolveCursor, kr as getPropertyNames, kt as textInputOf, l as PaintRecorder, la as boxShadowsEqual, li as isAutoLength, ln as normalizeVerticalAlign, lo as UiPinchEvent, lr as offsetForVerticalMove, lt as UiKeyboardController, m as decorationRect, ma as isTypographyRole, mi as percent, mn as setMatchRanges, mo as UiWheelEvent, mr as lineStartAt, mt as SCROLLBAR_INSET, n as createCanvasSurface, na as defaultShadows, ni as gradientPaint, nn as DEFAULT_FONT_WEIGHT, no as UiCompositionEvent, nr as proportionalFontMetrics, nt as touchActionFor, o as paintPictures, oa as boxShadowArraysEqual, oi as validateGradient, on as createPaintState, oo as UiInputEvent, or as lineLimit, ot as UiPinchRecognizer, p as decorationColor, pa as defaultTypography, pi as minmax, pn as matchRangesOf, po as UiWheelDeltaMode, pr as lineEndAt, pt as SCROLLBAR_HOVER_ZONE, q as parseAlignContent, qa as writeDeclaredProperty, qi as contrastRatio, qn as syncEditorValue, qr as inputsEqual, qt as textMeasureRequest, r as Canvas2DRenderer, ra as shadowsEqual, ri as gradientsEqual, rn as DEFAULT_TEXT_COLOR, ro as UiEventType, rr as caretRectFor, rt as UiEditingController, s as PaintTarget, sa as boxShadowRadius, si as auto, sn as isPaintVisible, so as UiKeyboardEvent, sr as offsetAtPoint, st as UiWheelController, t as CanvasSurface, ta as spacingSteps, ti as MAX_GRADIENT_STOPS, tn as DEFAULT_FONT_SIZE, to as UiBeforeInputEvent, tr as layoutParagraph, tt as prepareInputSurface, u as replayPaint, ua as defaultShapes, ui as isFrLength, un as resolvePaintState, uo as UiPointerEvent, ur as selectionRects, ut as UiPointerController, v as drawOverlayShapes, va as flattenTextSpans, vi as borderRadius, vn as selectableTextOf, vo as DirtyFlags, vr as previousWordStart, vt as scrollRange, w as describeLength, wa as textContentOf, wi as uniformBorderRadius, wn as isNodeSelectable, wr as resolveProperty, wt as offsetAtPointIn, x as LayoutEngine, xa as spanAtOffset, xi as borderRadiusIsZero, xn as isNodeFocusable, xr as DEFAULT_LINE_HEIGHT_FACTOR, xt as scrollbarZoneAt, y as labelOrigin, ya as hiddenRangesOf, yi as borderRadiusCorners, yn as selectionRangeOf, yo as UiBinding, yr as wordRangeAt, yt as scrollbarThumb, z as isLayoutProtocol, za as createEnvironmentKey, zi as withContrast, zn as caretVisibleAt, zr as isUiRole, zt as buildFontString } from "./CanvasSurface-BZ-F5ASX.js";
1
+ import { $ as isImeKey, $a as hasVisualState, $i as densityFactors, $n as CharacterCountTextMeasurer, $r as parseTransform, $t as clearFontStacks, A as withOverrideSource, Aa as darkColors, Ai as UiInsetRegistry, An as pointerEventsOf, Ar as findPropertyDefinition, At as wordRangeIn, B as FlexDirection, Ba as rgba, Bi as themesEqual, Bn as EDITOR_PROP, Br as UI_SEMANTIC_STATES, Bt as applyCanvasTextStyle, C as SCROLLBAR_LINGER_MS, Ca as spanAtOffset, Ci as borderRadiusIsZero, Cn as isNodeFocusable, Cr as DEFAULT_LINE_HEIGHT_FACTOR, Ct as scrollsFromRight, D as formatExplanation, Da as textSpansEqual, Di as defineProperty, Dn as isNodeTabStop, Dr as resolvePropertyByName, Dt as paragraphGeometry, E as formatConstraints, Ea as textContentOf, Ei as uniformBorderRadius, En as isNodeSelectable, Er as resolveProperty, Et as offsetAtPointIn, F as clampSize, Fa as colorValuesEqual, Fi as bandOf, Fn as linkOf, Fr as propertyIsInherited, Ft as editingGroupOf, G as CrossAxisAlignment, Ga as DirtyNodeSet, Gi as noThemeExtensions, Gn as isMultiline, Gr as validateRole, Gt as layoutTextLines, H as placeGridItems, Ha as findEnvironmentKey, Hi as withDensity, Hn as editorFor, Hr as isUiSemanticState, Ht as createCanvasTextStyle, I as constraintsEqual, Ia as colorsEqual, Ii as containerBands, In as linkRunAtPointIn, Ir as propertyNarrowers, It as commandForKey, J as parseCrossAxisAlignment, Ja as resetOverrideWarnings, Ji as withThemeExtension, Jn as nextCaretToggle, Jr as validateSubgrid, Jt as spanOf, K as MainAxisAlignment, Ka as clearOverrideProperty, Ki as themeExtension, Kn as isReadOnly, Kr as validateStates, Kt as runCanvasStyleInto, L as tightenConstraints, La as normalizeColor, Li as unknownContainerSize, Ln as setLinkHover, Lr as propertyValuesEqualByName, Lt as detectEditingPlatform, M as contentOffset, Ma as UiBasicColors, Mi as noInsets, Mn as clearLinkHover, Mr as inheritedPropertyFlags, Mt as adjacentField, N as LayoutRecord, Na as colorToHex, Ni as observeViewportInsets, Nn as hasTextLinks, Nr as inheritedPropertyNames, Nt as comparePositions, O as formatNumber, Oa as textStylesEqual, Oi as propertyValuesEqual, On as isPressable, Or as resolveString, Ot as paragraphGeometryFrom, P as Constraints, Pa as colorToRgba, Pi as UiContainerSizeSource, Pn as linkHoverOf, Pr as propertyEffects, Pt as edgeField, Q as capturePointer, Qa as defaultVisualState, Qi as relativeLuminance, Qn as videoFrameSize, Qr as UiTransforms, Qt as bumpFontStack, R as MAX_MEASURES_PER_CHILD, Ra as parseColor, Ri as darkTheme, Rn as CARET_BLINK_MS, Rr as UiProperties, Rt as isPrintable, S as SCROLLBAR_FADE_MS, Sa as resolvedSpansOf, Si as borderRadiusEqual, Sn as setSelectionRange, Sr as UiGraph, St as scrollbarZoneAt, T as describeOverrides, Ta as spansDifferOnlyInPaint, Ti as normalizeBorderRadius, Tn as isNodeInert, Tr as resolveNumber, Tt as hasDrawnText, U as sizeGridTracks, Ua as UiEnvironment, Ui as defineThemeExtension, Un as editorOf, Ur as normalizeStates, Ut as drawText, V as parseFlexDirection, Va as createEnvironmentKey, Vi as withContrast, Vn as caretVisibleAt, Vr as isUiRole, Vt as buildFontString, W as AlignContent, Wa as UiNode, Wi as hasThemeExtension, Wn as isEditableNode, Wr as statesEqual, Wt as fillTextRects, X as CanvasPlatformSurface, Xa as writeOverrideProperty, Xi as highContrastColors, Xn as resolveColorValue, Xr as paintValuesEqual, Xt as textRunBackgrounds, Y as parseMainAxisAlignment, Ya as writeDeclaredProperty, Yi as contrastRatio, Yn as syncEditorValue, Yr as inputsEqual, Yt as textMeasureRequest, Z as UiPlatformAdapter, Za as UiVisualState, Zi as raiseContrast, Zn as isVideoSurface, Zr as pathValuesEqual, Zt as textRunDecorations, _ as LABEL_PADDING_X, _a as typographyEqual, _i as repeat, _n as TEXT_SELECTION_PROP, _o as noKeyModifiers, _r as nextGraphemeEnd, _t as scrollBounds, a as PaintPictureCache, aa as shadowsEqual, ai as gradientsEqual, an as DEFAULT_TEXT_COLOR, ao as UiEventType, ar as caretRectFor, at as UiGestureRecognizer, b as snapScroll, ba as flattenTextSpans, bi as borderRadius, bn as selectableTextOf, bo as DirtyFlags, br as previousWordStart, bt as scrollbarThumb, c as EMPTY_RECORDING, ca as boxShadowArraysEqual, ci as validateGradient, cn as createPaintState, co as UiInputEvent, cr as lineLimit, ct as isScrollContainer, d as tracePathData, da as boxShadowsEqual, di as isAutoLength, dn as normalizeVerticalAlign, do as UiPinchEvent, dr as offsetForVerticalMove, dt as UiFocusManager, ea as defaultSpacing, ei as transform, en as fontStackFor, eo as visualState, er as ParagraphTextMeasurer, et as pointerDeviceOf, f as ScaledImageCache, fa as defaultShapes, fi as isFrLength, fn as resolvePaintState, fo as UiPointerEvent, fr as selectionRects, ft as UiHitTester, g as paintsAfterChildren, ga as isTypographyRole, gi as percent, gn as setMatchRanges, go as UiWheelEvent, gr as lineStartAt, gt as SCROLLBAR_THICKNESS, h as hasDecorationPhase, ha as defaultTypography, hi as minmax, hn as matchRangesOf, ho as UiWheelDeltaMode, hr as lineEndAt, ht as SCROLLBAR_MIN_THUMB, i as traceRoundedRect, ia as defaultShadows, ii as gradientPaint, in as DEFAULT_FONT_WEIGHT, io as UiCompositionEvent, ir as proportionalFontMetrics, it as UiTouchScroller, j as accumulatedOffsetTo, ja as lightColors, ji as insetsEqual, jn as resolveCursor, jr as getPropertyNames, jt as textInputOf, k as labelNode, ka as colorsEqualPalette, ki as UiEnvironmentKeys, kn as isSubtreeInert, kr as closestPropertyName, kt as selectionRectsIn, l as PaintRecorder, la as boxShadowRadius, li as auto, ln as isPaintVisible, lo as UiKeyboardEvent, lr as offsetAtPoint, lt as UiKeyboardController, m as decorationRect, ma as shapesEqual, mi as isPercentLength, mn as clearMatchRanges, mo as UiTextChangeEvent, mr as graphemeBoundaries, mt as SCROLLBAR_INSET, n as createCanvasSurface, na as spacingEqual, ni as transformsEqual, nn as DEFAULT_FONT_FAMILY, no as MOUSE_POINTER, nr as ELLIPSIS, nt as touchActionFor, o as paintPictures, oa as BOX_SHADOW_BLUR_REACH, oi as linearGradient, on as colorToCss, oo as UiFocusEvent, or as lineIndexAtY, ot as UiPinchRecognizer, p as decorationColor, pa as isShapeName, pi as isMinMaxTrack, pn as TEXT_MATCHES_PROP, po as UiSelectionChangeEvent, pr as EditableTextModel, pt as SCROLLBAR_HOVER_ZONE, q as parseAlignContent, qa as overrideSources, qi as themeExtensionsEqual, qn as maskText, qr as UI_SUBGRID_AXES, qt as runFontString, r as Canvas2DRenderer, ra as spacingSteps, ri as MAX_GRADIENT_STOPS, rn as DEFAULT_FONT_SIZE, ro as UiBeforeInputEvent, rr as layoutParagraph, rt as UiEditingController, s as PaintTarget, sa as boxShadow, si as radialGradient, sn as computeObjectFitRect, so as UiGestureEvent, sr as lineIndexForOffset, st as UiWheelController, t as CanvasSurface, ta as scaleSpacing, ti as transformIsIdentity, tn as registerFontStack, to as visualStatesEqual, tr as spannedRunsFor, tt as prepareInputSurface, u as replayPaint, ua as boxShadowReach, ui as fr, un as normalizeTextAlign, uo as UiPasteEvent, ur as offsetAtX, ut as UiPointerController, v as drawOverlayShapes, va as defaultTextStyle, vi as resolveLength, vn as clearSelectionRange, vo as wheelDeltaYOf, vr as nextWordEnd, vt as scrollLeaderOf, w as describeLength, wa as spannedTextOf, wi as borderRadiusValuesEqual, wn as isNodeHitTestable, wr as resolveBoolean, wt as UiInputDispatcher, x as LayoutEngine, xa as hiddenRangesOf, xi as borderRadiusCorners, xn as selectionRangeOf, xo as UiBinding, xr as wordRangeAt, xt as scrollbarThumbs, y as labelOrigin, ya as editableSpansOf, yi as UiBorderRadiuses, yn as selectableTextNodes, yo as UiNodeType, yr as previousGraphemeStart, yt as scrollRange, z as isLayoutProtocol, za as rgb8, zi as lightTheme, zn as CARET_WIDTH, zr as UI_ROLES, zt as EditableLayout } from "./CanvasSurface-BTZ3A3MN.js";
2
2
  import { BehaviorSubject, EMPTY, Subject, combineLatest, distinctUntilChanged, isObservable as isObservable$1, map, of } from "rxjs";
3
3
  //#region src/animation/UiEasing.ts
4
4
  /** Progress equals time. What a spinner and a sweep want. */
@@ -2333,6 +2333,7 @@ var UiGraphBuilder = class {
2333
2333
  }
2334
2334
  reconcile(parent, definitions) {
2335
2335
  const existing = this.collectChildren(parent);
2336
+ const staying = this.inOrder(parent, existing, definitions);
2336
2337
  const matched = /* @__PURE__ */ new Set();
2337
2338
  const unkeyed = {
2338
2339
  existing,
@@ -2384,7 +2385,7 @@ var UiGraphBuilder = class {
2384
2385
  }
2385
2386
  }
2386
2387
  this.reconciledFrom.set(node, definition);
2387
- if (this.moveBefore(parent, node, cursor)) changed = true;
2388
+ if (!staying.has(node) && this.moveBefore(parent, node, cursor)) changed = true;
2388
2389
  cursor = node.nextSibling;
2389
2390
  result.push(node);
2390
2391
  }
@@ -2556,6 +2557,41 @@ var UiGraphBuilder = class {
2556
2557
  return node;
2557
2558
  }
2558
2559
  /**
2560
+ * The keyed children that can stay where they are: the longest run of
2561
+ * them whose old order is already their new order.
2562
+ *
2563
+ * The pass places children by moving each one in front of a cursor,
2564
+ * which is fine for a child moved towards the front and ruinous for
2565
+ * one moved to the back: everything it used to precede is moved in
2566
+ * front of it, one at a time. A lazy sheet keeping its rows in slots
2567
+ * moves the top row to the bottom on every row of a scroll down, so a
2568
+ * scroll down moved every row on screen while a scroll up moved one,
2569
+ * and the wheel lagged one way and not the other. Leaving this run
2570
+ * alone moves exactly the children that are out of order, the way a
2571
+ * keyed list diff does it everywhere else.
2572
+ *
2573
+ * Keyed elements only, matched as `matchNode` would match them. Others
2574
+ * are placed as before.
2575
+ */
2576
+ inOrder(parent, existing, definitions) {
2577
+ if (definitions.length < 3) return NO_NODES;
2578
+ const at = /* @__PURE__ */ new Map();
2579
+ for (const [index, node] of existing.entries()) at.set(node, index);
2580
+ const nodes = [];
2581
+ const positions = [];
2582
+ for (const definition of definitions) {
2583
+ if (isObservable(definition) || isComponentLikeElement(definition)) continue;
2584
+ const key = this.elementKey(definition);
2585
+ if (key === void 0) continue;
2586
+ const candidate = this.graph.getNode(`${parent.id}:${key}`);
2587
+ const position = candidate === void 0 ? void 0 : at.get(candidate);
2588
+ if (candidate === void 0 || position === void 0 || candidate.type !== definition.type) continue;
2589
+ nodes.push(candidate);
2590
+ positions.push(position);
2591
+ }
2592
+ return new Set(longestIncreasing(positions).map((index) => nodes[index]));
2593
+ }
2594
+ /**
2559
2595
  * Positions a node immediately before the reference node.
2560
2596
  */
2561
2597
  moveBefore(parent, node, reference) {
@@ -2820,6 +2856,32 @@ var UiGraphBuilder = class {
2820
2856
  return `${parent.id}:component:${String(key)}`;
2821
2857
  }
2822
2858
  };
2859
+ const NO_NODES = /* @__PURE__ */ new Set();
2860
+ /**
2861
+ * The indices of a longest strictly increasing run in `values`, in order.
2862
+ *
2863
+ * Patience sorting: each value goes on the leftmost pile whose top is not
2864
+ * smaller, and a back-link to the pile before recovers the run.
2865
+ */
2866
+ function longestIncreasing(values) {
2867
+ const tops = [];
2868
+ const previous = new Array(values.length);
2869
+ for (let index = 0; index < values.length; index++) {
2870
+ const value = values[index];
2871
+ let low = 0;
2872
+ let high = tops.length;
2873
+ while (low < high) {
2874
+ const middle = low + high >> 1;
2875
+ if (values[tops[middle]] < value) low = middle + 1;
2876
+ else high = middle;
2877
+ }
2878
+ previous[index] = low > 0 ? tops[low - 1] : -1;
2879
+ tops[low] = index;
2880
+ }
2881
+ const run = [];
2882
+ for (let index = tops.length > 0 ? tops[tops.length - 1] : -1; index !== -1; index = previous[index]) run.push(index);
2883
+ return run.reverse();
2884
+ }
2823
2885
  //#endregion
2824
2886
  //#region src/composition/UiVirtualWindow.ts
2825
2887
  /** Marks an item wrapper with its index so the host can measure it. */
@@ -2871,6 +2933,14 @@ var UiVirtualWindow = class {
2871
2933
  leadExtent = -1;
2872
2934
  trailExtent = -1;
2873
2935
  measured = /* @__PURE__ */ new Map();
2936
+ /** An item a caller scrolled to before it was measured; see `holdInView`. */
2937
+ held = null;
2938
+ /**
2939
+ * What covers the top of the viewport for the held item: a sticky
2940
+ * header the caller measured itself, which the host's own `lead` may
2941
+ * not count.
2942
+ */
2943
+ heldLead = 0;
2874
2944
  /** Measured extent minus the estimate, per index; zero for one not measured. */
2875
2945
  corrections;
2876
2946
  /** Wrappers of the items currently mounted, so a row that stays is not re-rendered. */
@@ -2968,12 +3038,63 @@ var UiVirtualWindow = class {
2968
3038
  extentOf(index) {
2969
3039
  return this.measured.get(index) ?? this.estimate;
2970
3040
  }
3041
+ /** Whether an item's extent is its own, measured, rather than the estimate. */
3042
+ isMeasured(index) {
3043
+ return this.measured.has(index);
3044
+ }
3045
+ /**
3046
+ * Keeps an item in view until it has been measured.
3047
+ *
3048
+ * A caller that scrolls to an item that is not mounted places it by
3049
+ * `offsetOf`, which goes by the estimate for every unmeasured item on
3050
+ * the way. When the real items are taller or shorter the jump lands
3051
+ * off by the difference, and the item it was for can end up outside
3052
+ * the viewport. Held, the item is brought back into view by the
3053
+ * correction the next update returns, once its own extent and those
3054
+ * around it are known, and then let go. `lead` is the extent of a
3055
+ * sticky header over the top of the viewport, which the item has to
3056
+ * clear.
3057
+ */
3058
+ holdInView(index, lead = 0) {
3059
+ this.held = index >= 0 && index < this.count && !this.measured.has(index) ? index : null;
3060
+ this.heldLead = lead;
3061
+ }
3062
+ /**
3063
+ * Whether an item is held in view and not yet measured, so the host
3064
+ * has to run another frame to hand this the measurements. A jump that
3065
+ * mounts new items is otherwise the last frame until something else
3066
+ * happens, and the item it was for stays where the estimate put it.
3067
+ */
3068
+ get holding() {
3069
+ return this.held !== null;
3070
+ }
2971
3071
  /** The item whose span contains `offset`; clamped to the list. */
2972
3072
  indexAt(offset) {
2973
3073
  if (this.count === 0) return 0;
2974
3074
  return Math.min(this.count - 1, this.corrections.lastAtOrBefore(offset, this.estimate));
2975
3075
  }
2976
3076
  /**
3077
+ * The correction that brings the held item inside the viewport, below
3078
+ * the header, from where anchoring alone would leave the scroll; the
3079
+ * held item is let go once it has been measured, when its place is
3080
+ * exact.
3081
+ */
3082
+ keepHeldInView(viewport, header, anchored) {
3083
+ const held = this.held;
3084
+ if (held >= this.count) {
3085
+ this.held = null;
3086
+ return anchored;
3087
+ }
3088
+ const top = header + this.offsetOf(held);
3089
+ const bottom = top + this.extentOf(held);
3090
+ const at = viewport.scroll + anchored;
3091
+ let adjust = anchored;
3092
+ if (top < at + header) adjust = top - header - viewport.scroll;
3093
+ else if (bottom > at + viewport.extent) adjust = bottom - viewport.extent - viewport.scroll;
3094
+ if (this.measured.has(held)) this.held = null;
3095
+ return adjust;
3096
+ }
3097
+ /**
2977
3098
  * One step, run by the host each frame before layout: take the
2978
3099
  * measurements of mounted items, keep the first mounted item anchored,
2979
3100
  * recompute the window for the viewport, and emit children when the
@@ -2983,9 +3104,10 @@ var UiVirtualWindow = class {
2983
3104
  this.viewport = viewport;
2984
3105
  const anchorBefore = this.last >= this.first ? this.offsetOf(this.first) : 0;
2985
3106
  for (const measure of measures) this.record(measure.index, measure.extent);
2986
- const scrollAdjust = (this.last >= this.first ? this.offsetOf(this.first) : 0) - anchorBefore;
3107
+ let scrollAdjust = (this.last >= this.first ? this.offsetOf(this.first) : 0) - anchorBefore;
2987
3108
  const total = this.totalExtent();
2988
3109
  const header = viewport.lead ?? 0;
3110
+ if (this.held !== null) scrollAdjust = this.keepHeldInView(viewport, Math.max(header, this.heldLead), scrollAdjust);
2989
3111
  this.checkViewport(viewport.extent, total + header);
2990
3112
  const scrolled = clamp$2(viewport.scroll + scrollAdjust, 0, Math.max(0, total + header - viewport.extent));
2991
3113
  const scroll = Math.max(0, scrolled - header);
@@ -3094,7 +3216,8 @@ var UiVirtualWindow = class {
3094
3216
  columnGap: this.grid.columnGap,
3095
3217
  rowGap: 0,
3096
3218
  autoFlow: "row",
3097
- width: percent(100)
3219
+ width: percent(100),
3220
+ minWidth: tracksMinimum(this.grid.columns, this.grid.columnGap ?? 0)
3098
3221
  }, ...children)];
3099
3222
  }
3100
3223
  spacer(key, extent) {
@@ -3138,6 +3261,24 @@ var UiVirtualWindow = class {
3138
3261
  }
3139
3262
  };
3140
3263
  /**
3264
+ * The width a lazy grid's tracks need before any of them is given
3265
+ * free space: every fixed track, the floor of every `minmax`, and the
3266
+ * gaps between them.
3267
+ *
3268
+ * A track sized by its content (`auto`, or the minimum an `fr` track
3269
+ * takes from its cells) adds nothing here, because nothing is laid out
3270
+ * yet to ask; a percentage adds nothing either, being a share of the
3271
+ * very width this answers. So a table of fixed widths scrolls sideways
3272
+ * exactly as far as it is wide, and one of `fr` tracks still fits its
3273
+ * box, as it did.
3274
+ */
3275
+ function tracksMinimum(columns, gap) {
3276
+ let total = gap * Math.max(0, columns.length - 1);
3277
+ for (const track of columns) if (typeof track === "number") total += track;
3278
+ else if (track.unit === "minmax" && typeof track.min === "number") total += track.min;
3279
+ return total;
3280
+ }
3281
+ /**
3141
3282
  * Copies the window's own props onto a row of a lazy grid.
3142
3283
  *
3143
3284
  * The row must be a `Grid` with `subgrid: 'columns'`, because that is
@@ -3751,11 +3892,28 @@ var UiVirtualSheet = class {
3751
3892
  * fill handle, a selection being stretched — is usually heading for
3752
3893
  * one that has not been mounted, so there is no node to hit-test and
3753
3894
  * arithmetic is the only answer available.
3895
+ *
3896
+ * The point is measured from the container's top left, as a pointer
3897
+ * event's local position is, in either direction. A sheet that starts
3898
+ * at its right edge has its columns measured from there, so the point
3899
+ * is turned around first.
3900
+ *
3901
+ * A frozen pane does not scroll: it is held at the start edge by
3902
+ * sticky, so a point over it is over a frozen row or column however
3903
+ * far the sheet has scrolled, and is measured without the scroll.
3904
+ * The header and the gutter are left out of that on purpose. They
3905
+ * hold no cells, and a drag that strays onto them is heading for the
3906
+ * cells scrolled out of view behind them, which measuring through
3907
+ * the scroll finds.
3754
3908
  */
3755
3909
  cellAt(x, y) {
3910
+ const { scrollX, scrollY, width, fromRight } = this.viewport;
3911
+ const along = fromRight === true ? width - x : x;
3912
+ const overColumns = along >= this.gutterWidth && along < this.gutterWidth + this.frozenWidth;
3913
+ const overRows = y >= this.headerHeight && y < this.headerHeight + this.rowOffsetOf(this.frozenRows);
3756
3914
  return {
3757
- row: this.rowAt(this.viewport.scrollY + y),
3758
- column: this.columnAt(this.viewport.scrollX + x)
3915
+ row: this.rowAt(overRows ? y : scrollY + y),
3916
+ column: this.columnAt(overColumns ? along : scrollX + along)
3759
3917
  };
3760
3918
  }
3761
3919
  /**
@@ -15690,6 +15848,10 @@ function describe(node, parent, disabled, nextIndex) {
15690
15848
  posInSet: node.properties.get("posInSet"),
15691
15849
  setSize: node.properties.get("setSize"),
15692
15850
  level: node.properties.get("level"),
15851
+ rowIndex: node.properties.get("rowIndex"),
15852
+ columnIndex: node.properties.get("columnIndex"),
15853
+ rowCount: node.properties.get("rowCount"),
15854
+ columnCount: node.properties.get("columnCount"),
15693
15855
  activeDescendant: node.properties.get("activeDescendant")?.id,
15694
15856
  controls: node.properties.get("controls")?.id,
15695
15857
  autocomplete: node.properties.get("autocomplete"),
@@ -15952,6 +16114,6 @@ function recordsEqual(a, b) {
15952
16114
  return true;
15953
16115
  }
15954
16116
  //#endregion
15955
- export { AlignContent, AnimationDriver, BOX_SHADOW_BLUR_REACH, BUTTON_INTERACTION, Box, Button, CARET_BLINK_MS, CARET_WIDTH, CLIP_STRIDE_BYTES, CLIP_STRIDE_FLOATS, Canvas2DRenderer, CanvasPlatformSurface, CanvasSurface, CanvasTextMeasurer, CharacterCountTextMeasurer, Column, CommandKind, Constraints, CrossAxisAlignment, DEFAULT_BLOCK_SIZE, DEFAULT_FONT_FAMILY, DEFAULT_FONT_SIZE, DEFAULT_FONT_WEIGHT, DEFAULT_LINE_HEIGHT_FACTOR, DEFAULT_TEXT_COLOR, DefaultImageResolver, DefaultVideoResolver, DirtyFlags, DirtyNodeSet, EDITOR_PROP, ELLIPSIS, EMPTY_RECORDING, EXTERNAL_FILES, EditableLayout, EditableText, EditableTextModel, EnvironmentNotifier, FlexDirection, FocusNotifier, GLYPH_SUBPIXEL_PHASES, GlyphShaper, Grid, INSPECTOR_HEAT_MS, INSTANCE_STRIDE_BYTES, INSTANCE_STRIDE_FLOATS, IconRasterizer, LABEL_PADDING_X, LayoutEngine, LayoutInspector, LayoutNotifier, LayoutRecord, LazyColumn, LazyGrid, LazyRow, LazySheet, MARK_PREFIX, MAX_GRADIENT_STOPS, MAX_MEASURES_PER_CHILD, MOTION_CHANNELS, MOTION_REST, MOUSE_POINTER, MainAxisAlignment, Mp3Frames, NO_CLIP_INDEX, NodeTransitions, Paint, PaintPictureCache, PaintRecorder, PaintTarget, ParagraphTextMeasurer, PrimitiveKind, Responsive, Row, SCROLLBAR_FADE_MS, SCROLLBAR_HOVER_ZONE, SCROLLBAR_INSET, SCROLLBAR_LINGER_MS, SCROLLBAR_MIN_THUMB, SCROLLBAR_THICKNESS, ScrollView, Stack, TEXTURED_STRIDE_BYTES, TEXTURED_STRIDE_FLOATS, TEXT_MATCHES_PROP, TEXT_RUN_ID_SEPARATOR, TEXT_SELECTION_PROP, Text, UI_ROLES, UI_SEMANTIC_STATES, UI_SUBGRID_AXES, UiAnimation, UiAnimationFrameClock, UiBasicColors, UiBeforeInputEvent, UiBinding, UiBorderRadiuses, UiChildrenBinding, UiCompositionEvent, UiContainerSizeSource, UiDragSession, UiEditingController, UiEnvironment, UiEnvironmentKeys, UiEventBinding, UiEventType, UiFindController, UiFocusEvent, UiFocusManager, UiFrame, UiGestureEvent, UiGestureRecognizer, UiGraph, UiGraphBuilder, UiHitTester, UiHostFrameClock, UiInputDispatcher, UiInputEvent, UiInsetRegistry, UiKeyboardController, UiKeyboardEvent, UiManualFrameClock, UiModifierSet, UiNode, UiNodeType, UiPasteEvent, UiPinchEvent, UiPinchRecognizer, UiPlatformAdapter, UiPointerController, UiPointerEvent, UiProperties, UiScheduler, UiSelectionChangeEvent, UiSelectionController, UiSharedElements, UiShortcutRegistry, UiSpring, UiTextChangeEvent, UiTimerFrameClock, UiTouchScroller, UiTransforms, UiTween, UiUnknownModifierPropertyError, UiVirtualSheet, UiVirtualWindow, UiVisualState, UiWheelController, UiWheelDeltaMode, UiWheelEvent, VIRTUAL_INDEX_PROP, VIRTUAL_LEAD_PROP, VIRTUAL_SHEET_PROP, VIRTUAL_WINDOW_PROP, WebGPUError, WebGPUGlyphAtlas, WebGPUGlyphPages, WebGPURenderer, WebGPUSurface, WebGPUTextureCache, accumulatedOffsetTo, adjacentField, animateLayout, applyCanvasTextStyle, assertModifierList, assertTransitionMap, auto, autoFocus, bandOf, borderRadius, borderRadiusCorners, borderRadiusEqual, borderRadiusIsZero, borderRadiusValuesEqual, borderShapes, borders, boxShadow, boxShadowArraysEqual, boxShadowRadius, boxShadowReach, boxShadowsEqual, breakpoint, bufferSource, buildFontString, buildRenderList, buildSemanticsSubtree, buildSemanticsTree, bumpFontStack, bundle, canDecodeVideo, capturePointer, caretRectFor, caretVisibleAt, clampSize, clearFontStacks, clearLinkHover, clearMatchRanges, clearOverrideProperty, clearSelectionRange, clickOutside, closestPropertyName, colorToCss, colorToHex, colorToRgba, colorValuesEqual, colorsEqual, colorsEqualPalette, commandForKey, comparePositions, computeObjectFitRect, constraintsEqual, containerBands, contentOffset, contextMenu, contrastRatio, createCanvasSurface, createCanvasTextStyle, createElement, createEnvironmentKey, createPaintState, createTextCache, createTween, createWebGPUSurface, cubicBezier, cueAt, darkColors, darkTheme, decorated, decorationColor, decorationRect, defaultMotion, defaultShadows, defaultShapes, defaultSpacing, defaultTextStyle, defaultTypography, defaultVisualState, defineModifier, defineProperty, defineThemeExtension, demuxMp4Audio, demuxMp4Video, densityFactors, describeLength, describeOverrides, describeShortcut, detectEditingPlatform, diffSemantics, dragSessionFor, dragSource, draggable, drawOverlayShapes, drawText, dropIndexShifts, dropTarget, easings, edgeField, editableSpansOf, editingGroupOf, editorFor, editorOf, fade, fillTextRects, findEnvironmentKey, findMatchesIn, findPropertyDefinition, flattenTextSpans, focusRing, fontStackFor, formatConstraints, formatExplanation, formatShortcut, fr, getPropertyNames, glyphCount, gradientPaint, gradientsEqual, graphemeBoundaries, hasDecorationPhase, hasDrawnText, hasTextLinks, hasThemeExtension, hasVisualState, hiddenRangesOf, highContrastColors, hoverable, iconKey, iconSource, imageSource, inheritedPropertyFlags, inheritedPropertyNames, initializeWebGPU, inputsEqual, insetPadding, insetsEqual, interactive, interpolateColor, interpolateNumber, interpolateTransform, interpolatorFor, isAutoLength, isComponentLikeElement, isEditableNode, isFrLength, isImeKey, isLayoutProtocol, isMinMaxTrack, isMotionRest, isMultiline, isNodeFocusable, isNodeHitTestable, isNodeInert, isNodeSelectable, isNodeTabStop, isObservable, isPaintVisible, isPercentLength, isPrintable, isReadOnly, isScrollContainer, isShapeName, isSubtreeInert, isTypographyRole, isUiChild, isUiElement, isUiModifier, isUiRole, isUiSemanticState, isVideoSurface, isWebGPUAvailable, labelNode, labelOrigin, layoutParagraph, layoutTextLines, lazySource, lightColors, lightTheme, lineEndAt, lineIndexAtY, lineIndexForOffset, lineLimit, lineStartAt, linear, linearGradient, linkHoverOf, linkOf, linkRunAtPointIn, markInstant, markNow, matchRangesOf, measure, measureFlow, measureSpan, minmax, motion, nextCaretToggle, nextGraphemeEnd, nextWordEnd, noInsets, noKeyModifiers, noModifiers, noThemeExtensions, normalizeBorderRadius, normalizeColor, normalizeStates, normalizeTextAlign, normalizeTransition, normalizeVerticalAlign, observeViewportInsets, offsetAtPoint, offsetAtPointIn, offsetAtX, offsetForVerticalMove, overrideSources, paintPictures, paintValuesEqual, paintsAfterChildren, paragraphGeometry, paragraphGeometryFrom, parseAlignContent, parseColor, parseCrossAxisAlignment, parseFlexDirection, parseMainAxisAlignment, parseShortcut, parseTransform, parseWebVtt, pathValuesEqual, percent, performanceMarksEnabled, pinchable, placeGridItems, pointerDeviceOf, pointerEventsOf, pop, prepareInputSurface, pressable, previousGraphemeStart, previousWordStart, propertyEffects, propertyIsInherited, propertyNarrowers, propertyValuesEqual, propertyValuesEqualByName, proportionalFontMetrics, provideEnvironment, publishInset, radialGradient, raiseContrast, rangeSource, readMp3Header, recordsEqual, registerFontStack, relativeLuminance, reorderable, repeat, replayPaint, resetOverrideWarnings, resetTransitionWarnings, resolveBoolean, resolveCursor, resolveLength, resolveMotionState, resolveNumber, resolvePaintState, resolveProperty, resolvePropertyByName, resolveString, resolvedSpansOf, rewalkSemantics, rgb8, rgba, rotateFrom, runCanvasStyleInto, runFontString, sameArgs, scaleFrom, scaleSpacing, scrollLeaderOf, scrollPosition, scrollRange, scrollbarThumb, scrollbarThumbs, scrollbarZoneAt, selectableTextNodes, selectableTextOf, selectionRangeOf, selectionRects, selectionRectsIn, semanticsInertAbove, semanticsMemory, setLinkHover, setMatchRanges, setPerformanceMarks, setSelectionRange, shadowsEqual, shapesEqual, sharedElement, sheetSource, shortcut, shortcutKeyCaps, shortcuts, sizeContainer, sizeGridTracks, slideDown, slideFrom, slideUp, spacingEqual, spacingSteps, spanAtOffset, spannedRunsFor, spannedTextOf, spansDifferOnlyInPaint, splitMp3Frames, spring, statesEqual, steps, syncEditorValue, textContentOf, textInputOf, textRunBackgrounds, textRunDecorations, textRunOfRecordId, textRuns, textSpansEqual, textStylesEqual, themeExtension, themeExtensionsEqual, themeTokens, themesEqual, tightenConstraints, touchActionFor, tracePathData, traceRoundedRect, transform, transformIsIdentity, transformsEqual, tween, typographyEqual, uniformBorderRadius, unknownContainerSize, validateGradient, validateRole, validateStates, validateSubgrid, videoFrameSize, videoSource, visualState, visualStatesEqual, wheelDeltaYOf, withContrast, withDensity, withOverrideSource, withThemeExtension, wordRangeAt, wordRangeIn, writeDeclaredProperty, writeOverrideProperty };
16117
+ export { AlignContent, AnimationDriver, BOX_SHADOW_BLUR_REACH, BUTTON_INTERACTION, Box, Button, CARET_BLINK_MS, CARET_WIDTH, CLIP_STRIDE_BYTES, CLIP_STRIDE_FLOATS, Canvas2DRenderer, CanvasPlatformSurface, CanvasSurface, CanvasTextMeasurer, CharacterCountTextMeasurer, Column, CommandKind, Constraints, CrossAxisAlignment, DEFAULT_BLOCK_SIZE, DEFAULT_FONT_FAMILY, DEFAULT_FONT_SIZE, DEFAULT_FONT_WEIGHT, DEFAULT_LINE_HEIGHT_FACTOR, DEFAULT_TEXT_COLOR, DefaultImageResolver, DefaultVideoResolver, DirtyFlags, DirtyNodeSet, EDITOR_PROP, ELLIPSIS, EMPTY_RECORDING, EXTERNAL_FILES, EditableLayout, EditableText, EditableTextModel, EnvironmentNotifier, FlexDirection, FocusNotifier, GLYPH_SUBPIXEL_PHASES, GlyphShaper, Grid, INSPECTOR_HEAT_MS, INSTANCE_STRIDE_BYTES, INSTANCE_STRIDE_FLOATS, IconRasterizer, LABEL_PADDING_X, LayoutEngine, LayoutInspector, LayoutNotifier, LayoutRecord, LazyColumn, LazyGrid, LazyRow, LazySheet, MARK_PREFIX, MAX_GRADIENT_STOPS, MAX_MEASURES_PER_CHILD, MOTION_CHANNELS, MOTION_REST, MOUSE_POINTER, MainAxisAlignment, Mp3Frames, NO_CLIP_INDEX, NodeTransitions, Paint, PaintPictureCache, PaintRecorder, PaintTarget, ParagraphTextMeasurer, PrimitiveKind, Responsive, Row, SCROLLBAR_FADE_MS, SCROLLBAR_HOVER_ZONE, SCROLLBAR_INSET, SCROLLBAR_LINGER_MS, SCROLLBAR_MIN_THUMB, SCROLLBAR_THICKNESS, ScrollView, Stack, TEXTURED_STRIDE_BYTES, TEXTURED_STRIDE_FLOATS, TEXT_MATCHES_PROP, TEXT_RUN_ID_SEPARATOR, TEXT_SELECTION_PROP, Text, UI_ROLES, UI_SEMANTIC_STATES, UI_SUBGRID_AXES, UiAnimation, UiAnimationFrameClock, UiBasicColors, UiBeforeInputEvent, UiBinding, UiBorderRadiuses, UiChildrenBinding, UiCompositionEvent, UiContainerSizeSource, UiDragSession, UiEditingController, UiEnvironment, UiEnvironmentKeys, UiEventBinding, UiEventType, UiFindController, UiFocusEvent, UiFocusManager, UiFrame, UiGestureEvent, UiGestureRecognizer, UiGraph, UiGraphBuilder, UiHitTester, UiHostFrameClock, UiInputDispatcher, UiInputEvent, UiInsetRegistry, UiKeyboardController, UiKeyboardEvent, UiManualFrameClock, UiModifierSet, UiNode, UiNodeType, UiPasteEvent, UiPinchEvent, UiPinchRecognizer, UiPlatformAdapter, UiPointerController, UiPointerEvent, UiProperties, UiScheduler, UiSelectionChangeEvent, UiSelectionController, UiSharedElements, UiShortcutRegistry, UiSpring, UiTextChangeEvent, UiTimerFrameClock, UiTouchScroller, UiTransforms, UiTween, UiUnknownModifierPropertyError, UiVirtualSheet, UiVirtualWindow, UiVisualState, UiWheelController, UiWheelDeltaMode, UiWheelEvent, VIRTUAL_INDEX_PROP, VIRTUAL_LEAD_PROP, VIRTUAL_SHEET_PROP, VIRTUAL_WINDOW_PROP, WebGPUError, WebGPUGlyphAtlas, WebGPUGlyphPages, WebGPURenderer, WebGPUSurface, WebGPUTextureCache, accumulatedOffsetTo, adjacentField, animateLayout, applyCanvasTextStyle, assertModifierList, assertTransitionMap, auto, autoFocus, bandOf, borderRadius, borderRadiusCorners, borderRadiusEqual, borderRadiusIsZero, borderRadiusValuesEqual, borderShapes, borders, boxShadow, boxShadowArraysEqual, boxShadowRadius, boxShadowReach, boxShadowsEqual, breakpoint, bufferSource, buildFontString, buildRenderList, buildSemanticsSubtree, buildSemanticsTree, bumpFontStack, bundle, canDecodeVideo, capturePointer, caretRectFor, caretVisibleAt, clampSize, clearFontStacks, clearLinkHover, clearMatchRanges, clearOverrideProperty, clearSelectionRange, clickOutside, closestPropertyName, colorToCss, colorToHex, colorToRgba, colorValuesEqual, colorsEqual, colorsEqualPalette, commandForKey, comparePositions, computeObjectFitRect, constraintsEqual, containerBands, contentOffset, contextMenu, contrastRatio, createCanvasSurface, createCanvasTextStyle, createElement, createEnvironmentKey, createPaintState, createTextCache, createTween, createWebGPUSurface, cubicBezier, cueAt, darkColors, darkTheme, decorated, decorationColor, decorationRect, defaultMotion, defaultShadows, defaultShapes, defaultSpacing, defaultTextStyle, defaultTypography, defaultVisualState, defineModifier, defineProperty, defineThemeExtension, demuxMp4Audio, demuxMp4Video, densityFactors, describeLength, describeOverrides, describeShortcut, detectEditingPlatform, diffSemantics, dragSessionFor, dragSource, draggable, drawOverlayShapes, drawText, dropIndexShifts, dropTarget, easings, edgeField, editableSpansOf, editingGroupOf, editorFor, editorOf, fade, fillTextRects, findEnvironmentKey, findMatchesIn, findPropertyDefinition, flattenTextSpans, focusRing, fontStackFor, formatConstraints, formatExplanation, formatShortcut, fr, getPropertyNames, glyphCount, gradientPaint, gradientsEqual, graphemeBoundaries, hasDecorationPhase, hasDrawnText, hasTextLinks, hasThemeExtension, hasVisualState, hiddenRangesOf, highContrastColors, hoverable, iconKey, iconSource, imageSource, inheritedPropertyFlags, inheritedPropertyNames, initializeWebGPU, inputsEqual, insetPadding, insetsEqual, interactive, interpolateColor, interpolateNumber, interpolateTransform, interpolatorFor, isAutoLength, isComponentLikeElement, isEditableNode, isFrLength, isImeKey, isLayoutProtocol, isMinMaxTrack, isMotionRest, isMultiline, isNodeFocusable, isNodeHitTestable, isNodeInert, isNodeSelectable, isNodeTabStop, isObservable, isPaintVisible, isPercentLength, isPrintable, isReadOnly, isScrollContainer, isShapeName, isSubtreeInert, isTypographyRole, isUiChild, isUiElement, isUiModifier, isUiRole, isUiSemanticState, isVideoSurface, isWebGPUAvailable, labelNode, labelOrigin, layoutParagraph, layoutTextLines, lazySource, lightColors, lightTheme, lineEndAt, lineIndexAtY, lineIndexForOffset, lineLimit, lineStartAt, linear, linearGradient, linkHoverOf, linkOf, linkRunAtPointIn, markInstant, markNow, matchRangesOf, measure, measureFlow, measureSpan, minmax, motion, nextCaretToggle, nextGraphemeEnd, nextWordEnd, noInsets, noKeyModifiers, noModifiers, noThemeExtensions, normalizeBorderRadius, normalizeColor, normalizeStates, normalizeTextAlign, normalizeTransition, normalizeVerticalAlign, observeViewportInsets, offsetAtPoint, offsetAtPointIn, offsetAtX, offsetForVerticalMove, overrideSources, paintPictures, paintValuesEqual, paintsAfterChildren, paragraphGeometry, paragraphGeometryFrom, parseAlignContent, parseColor, parseCrossAxisAlignment, parseFlexDirection, parseMainAxisAlignment, parseShortcut, parseTransform, parseWebVtt, pathValuesEqual, percent, performanceMarksEnabled, pinchable, placeGridItems, pointerDeviceOf, pointerEventsOf, pop, prepareInputSurface, pressable, previousGraphemeStart, previousWordStart, propertyEffects, propertyIsInherited, propertyNarrowers, propertyValuesEqual, propertyValuesEqualByName, proportionalFontMetrics, provideEnvironment, publishInset, radialGradient, raiseContrast, rangeSource, readMp3Header, recordsEqual, registerFontStack, relativeLuminance, reorderable, repeat, replayPaint, resetOverrideWarnings, resetTransitionWarnings, resolveBoolean, resolveCursor, resolveLength, resolveMotionState, resolveNumber, resolvePaintState, resolveProperty, resolvePropertyByName, resolveString, resolvedSpansOf, rewalkSemantics, rgb8, rgba, rotateFrom, runCanvasStyleInto, runFontString, sameArgs, scaleFrom, scaleSpacing, scrollBounds, scrollLeaderOf, scrollPosition, scrollRange, scrollbarThumb, scrollbarThumbs, scrollbarZoneAt, scrollsFromRight, selectableTextNodes, selectableTextOf, selectionRangeOf, selectionRects, selectionRectsIn, semanticsInertAbove, semanticsMemory, setLinkHover, setMatchRanges, setPerformanceMarks, setSelectionRange, shadowsEqual, shapesEqual, sharedElement, sheetSource, shortcut, shortcutKeyCaps, shortcuts, sizeContainer, sizeGridTracks, slideDown, slideFrom, slideUp, spacingEqual, spacingSteps, spanAtOffset, spannedRunsFor, spannedTextOf, spansDifferOnlyInPaint, splitMp3Frames, spring, statesEqual, steps, syncEditorValue, textContentOf, textInputOf, textRunBackgrounds, textRunDecorations, textRunOfRecordId, textRuns, textSpansEqual, textStylesEqual, themeExtension, themeExtensionsEqual, themeTokens, themesEqual, tightenConstraints, touchActionFor, tracePathData, traceRoundedRect, transform, transformIsIdentity, transformsEqual, tween, typographyEqual, uniformBorderRadius, unknownContainerSize, validateGradient, validateRole, validateStates, validateSubgrid, videoFrameSize, videoSource, visualState, visualStatesEqual, wheelDeltaYOf, withContrast, withDensity, withOverrideSource, withThemeExtension, wordRangeAt, wordRangeIn, writeDeclaredProperty, writeOverrideProperty };
15956
16118
 
15957
16119
  //# sourceMappingURL=index.js.map