vlist 3.6.2 → 3.6.3

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/README.github.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  The virtual list library for every framework. Ultra efficient, batteries-included, and accessible with composable plugins.
4
4
 
5
- **v3.6.2** — `scroll.mode` on the one `vlist` entry: the default, `"auto"`, scrolls natively and hands a list past the browser's size limit to synthetic input, which draws its own scrollbar. Vue, Svelte, Solid and React entries in the package itself (`vlist/vue`, `vlist/svelte`, `vlist/solid`, `vlist/react`), feature-first and tree-shaken like the vanilla builder; the separate adapter packages are deprecated. See the [changelog](https://github.com/floor/vlist/blob/main/CHANGELOG.md).
5
+ **v3.6.3** — `scroll.mode` on the one `vlist` entry: the default, `"auto"`, scrolls natively and hands a list past the browser's size limit to synthetic input, which draws its own scrollbar. Vue, Svelte, Solid and React entries in the package itself (`vlist/vue`, `vlist/svelte`, `vlist/solid`, `vlist/react`), feature-first and tree-shaken like the vanilla builder; the separate adapter packages are deprecated. See the [changelog](https://github.com/floor/vlist/blob/main/CHANGELOG.md).
6
6
 
7
7
  [![npm version](https://img.shields.io/npm/v/vlist.svg)](https://www.npmjs.com/package/vlist)
8
8
  [![bundle size](https://img.shields.io/bundlephobia/minzip/vlist)](https://bundlephobia.com/package/vlist)
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  The virtual list library for every framework. Ultra efficient, batteries-included, and accessible with composable plugins.
4
4
 
5
- **v3.6.2** — `scroll.mode` on the one `vlist` entry: the default, `"auto"`, scrolls natively and hands a list past the browser's size limit to synthetic input, which draws its own scrollbar. Vue, Svelte, Solid and React entries in the package itself (`vlist/vue`, `vlist/svelte`, `vlist/solid`, `vlist/react`), feature-first and tree-shaken like the vanilla builder; the separate adapter packages are deprecated. See the [changelog](https://github.com/floor/vlist/blob/main/CHANGELOG.md).
5
+ **v3.6.3** — `scroll.mode` on the one `vlist` entry: the default, `"auto"`, scrolls natively and hands a list past the browser's size limit to synthetic input, which draws its own scrollbar. Vue, Svelte, Solid and React entries in the package itself (`vlist/vue`, `vlist/svelte`, `vlist/solid`, `vlist/react`), feature-first and tree-shaken like the vanilla builder; the separate adapter packages are deprecated. See the [changelog](https://github.com/floor/vlist/blob/main/CHANGELOG.md).
6
6
 
7
7
  [![npm version](https://img.shields.io/npm/v/vlist.svg)](https://www.npmjs.com/package/vlist)
8
8
  [![bundle size](https://img.shields.io/bundlephobia/minzip/vlist)](https://bundlephobia.com/package/vlist)
package/dist/version.json CHANGED
@@ -1 +1 @@
1
- {"version":"3.6.2","commit":"8aa971b","builtAt":"2026-11-10T06:00:49.910Z","released":true}
1
+ {"version":"3.6.3","commit":"65fdf29","builtAt":"2026-11-10T08:18:16.343Z","released":true}
@@ -1 +1 @@
1
- .vlist--table{display:flex;flex-direction:column;overflow:hidden;min-height:inherit}.vlist--table .vlist-viewport{flex:1;min-height:0;height:auto;overflow:auto}.vlist--table .vlist-table-header{position:static}.vlist--page.vlist--table>[role="rowgroup"]{position:sticky;top:var(--vlist-page-pad,0px);z-index:6;height:var(--vlist-table-header-height,auto)}.vlist--page.vlist--table .vlist-table-header{position:sticky;top:var(--vlist-page-pad,0px);z-index:6}.vlist--page.vlist--table>.vlist-viewport{overflow:visible}.vlist--page.vlist--table-pinned>.vlist-viewport{overflow-x:auto;overflow-y:visible}.vlist--table .vlist-scrollbar__hover{top:var(--vlist-table-header-height,0px);height:calc(100% - var(--vlist-table-header-height,0px))}.vlist--table .vlist-viewport--custom-scrollbar::-webkit-scrollbar{display:block;width:0}.vlist--table .vlist-content{contain:layout style}.vlist-table-header{position:absolute;top:0;left:0;right:0;z-index:5;overflow:hidden;display:flex;align-items:stretch;box-sizing:border-box;will-change:scroll-position;contain:layout style;background-color:var(--vlist-bg,#ffffff);border-bottom:1px solid var(--vlist-border,#e5e7eb);font-weight:600;font-size:0.8125rem;letter-spacing:0.01em;color:var(--vlist-text-muted,#6b7280)}.vlist-table-header-scroll{position:relative;display:flex;align-items:stretch;height:100%;min-width:100%;flex-shrink:0}.vlist-table-header-scroll:dir(rtl){flex-direction:row-reverse}.vlist-table-header-cell{position:relative;display:flex;align-items:center;height:100%;box-sizing:border-box;flex-shrink:0;user-select:none;padding-left:var(--vlist-item-padding-x,0.75rem);padding-right:var(--vlist-item-padding-x,0.75rem);border-right:1px solid transparent;transition:background-color 0.15s ease}.vlist-table-header-cell:hover{background-color:var(--vlist-bg-hover,rgba(0,0,0,0.04))}.vlist-table-header-cell:focus-visible{outline:2px solid var(--vlist-focus-ring,#3b82f6);outline-offset:-2px}.vlist-table-header-cell--sortable{cursor:pointer}.vlist-table-header-cell--sortable:active{background-color:var(--vlist-bg-selected,rgba(59,130,246,0.12))}.vlist-table-header-cell--center{justify-content:center}.vlist-table-header-cell--right{justify-content:flex-end}.vlist-table-header-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.vlist-table-header-sort{position:relative;margin-left:4px;flex-shrink:0;opacity:0;font-size:0.7em;transition:opacity 0.15s ease;pointer-events:none;color:var(--vlist-text-muted,#6b7280)}.vlist-table-header-sort[data-sort-priority]::after{content:attr(data-sort-priority);font-size:9px;margin-left:1px;vertical-align:super}.vlist-table-header-resize{position:absolute;top:0;right:-3px;bottom:0;width:5px;cursor:col-resize;z-index:2;touch-action:none;opacity:0;transition:opacity 0.15s ease}.vlist-table-header-resize::after{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;transform:translateX(-50%);background-color:var(--vlist-border,#e5e7eb);transition:background-color 0.15s ease}.vlist-table-header-resize:hover::after{background-color:var(--vlist-focus-ring,#3b82f6)}.vlist-table-header-cell:hover .vlist-table-header-resize{opacity:1}.vlist-table-header-resize--active{opacity:1}.vlist-table-header-resize--active::after{background-color:var(--vlist-border-selected,#3b82f6)}.vlist--col-resizing,.vlist--col-resizing *{cursor:col-resize !important;user-select:none !important}.vlist-table-row{position:absolute;top:0;left:0;display:flex;box-sizing:border-box;contain:content;border-bottom:none;background-color:var(--vlist-bg,#ffffff);cursor:default;user-select:none;transition:background-color var(--vlist-transition-duration,150ms) var(--vlist-transition-timing,ease-in-out);will-change:transform}.vlist--scrolling .vlist-table-row{transition:none}.vlist-table-row.vlist-item--odd{background:var( --vlist-bg-striped,var(--vlist-bg-hover,rgba(0,0,0,0.02)) )}.vlist--selectable .vlist-table-row{cursor:pointer}.vlist--selectable .vlist-table-row:hover{background-color:var(--vlist-bg-hover,rgba(0,0,0,0.04))}.vlist-table-row.vlist-item--selected{background-color:var(--vlist-bg-selected,rgba(59,130,246,0.12))}.vlist-table-row.vlist-item--odd.vlist-item--selected{background:var(--vlist-bg-selected,rgba(59,130,246,0.12))}.vlist--selectable .vlist-table-row.vlist-item--selected:hover{background-color:var(--vlist-bg-selected-hover,rgba(59,130,246,0.18))}.vlist--selectable .vlist-table-row.vlist-item--odd.vlist-item--selected:hover{background:var(--vlist-bg-selected-hover,rgba(59,130,246,0.18))}.vlist-table-row.vlist-item--focused{outline:2px solid var(--vlist-focus-ring,#3b82f6);outline-offset:-2px;z-index:1}.vlist-table-cell{position:absolute;top:0;bottom:0;display:flex;align-items:center;box-sizing:border-box;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding-left:var(--vlist-item-padding-x,0.75rem);padding-right:var(--vlist-item-padding-x,0.75rem);font-size:0.875rem;color:var(--vlist-text,#111827)}.vlist-table-cell--center{text-align:center;justify-content:center}.vlist-table-cell--right{text-align:right;justify-content:flex-end}.vlist--table-row-borders .vlist-table-row{border-bottom:1px solid var(--vlist-border,#e5e7eb)}.vlist--table-col-borders .vlist-table-cell{border-right:1px solid var(--vlist-border,#e5e7eb)}.vlist--table-col-borders .vlist-table-header-cell{border-right-color:var(--vlist-border,#e5e7eb)}.vlist-table-header-cell--pin-left,.vlist-table-header-cell--pin-right{z-index:3;background-color:var(--vlist-bg,#ffffff)}.vlist-table-header-cell--pin-left{transform:translateX(var(--vlist-table-pin-left,0px))}.vlist-table-header-cell--pin-right{transform:translateX(var(--vlist-table-pin-right,0px))}.vlist-table-header-cell--pin-left:hover,.vlist-table-header-cell--pin-right:hover{background-color:var(--vlist-bg,#ffffff);background-image:linear-gradient( var(--vlist-bg-hover,rgba(0,0,0,0.04)),var(--vlist-bg-hover,rgba(0,0,0,0.04)) )}.vlist-table-cell--pin-left,.vlist-table-cell--pin-right{z-index:2;background-color:var(--vlist-bg,#ffffff)}.vlist-table-cell--pin-left{transform:translateX(var(--vlist-table-pin-left,0px))}.vlist-table-cell--pin-right{transform:translateX(var(--vlist-table-pin-right,0px))}.vlist-table-row.vlist-item--odd .vlist-table-cell--pin-left,.vlist-table-row.vlist-item--odd .vlist-table-cell--pin-right{background-image:linear-gradient( var(--vlist-bg-striped,var(--vlist-bg-hover,rgba(0,0,0,0.02))),var(--vlist-bg-striped,var(--vlist-bg-hover,rgba(0,0,0,0.02))) )}.vlist--selectable .vlist-table-row:hover .vlist-table-cell--pin-left,.vlist--selectable .vlist-table-row:hover .vlist-table-cell--pin-right{background-image:linear-gradient( var(--vlist-bg-hover,rgba(0,0,0,0.04)),var(--vlist-bg-hover,rgba(0,0,0,0.04)) )}.vlist-table-row.vlist-item--selected .vlist-table-cell--pin-left,.vlist-table-row.vlist-item--selected .vlist-table-cell--pin-right{background-image:linear-gradient( var(--vlist-bg-selected,rgba(59,130,246,0.12)),var(--vlist-bg-selected,rgba(59,130,246,0.12)) )}.vlist--selectable .vlist-table-row.vlist-item--selected:hover .vlist-table-cell--pin-left,.vlist--selectable .vlist-table-row.vlist-item--selected:hover .vlist-table-cell--pin-right{background-image:linear-gradient( var(--vlist-bg-selected-hover,rgba(59,130,246,0.18)),var(--vlist-bg-selected-hover,rgba(59,130,246,0.18)) )}.vlist-table-header-cell--pin-left-last,.vlist-table-cell--pin-left-last{border-right:1px solid var(--vlist-border,#e5e7eb)}.vlist-table-header-cell--pin-right-first,.vlist-table-cell--pin-right-first{border-left:1px solid var(--vlist-border,#e5e7eb)}.vlist--col-reordering,.vlist--col-reordering *{cursor:grabbing !important;user-select:none}.vlist-table-header-cell--dragging{opacity:0.55;background-color:var(--vlist-bg-hover,rgba(59,130,246,0.08))}.vlist-table-drop-indicator{position:absolute;top:0;bottom:0;left:0;width:2px;background-color:var(--vlist-focus-ring,#3b82f6);z-index:7;pointer-events:none;will-change:transform}.vlist-table-group-header{display:flex;align-items:center;background-color:var(--vlist-group-header-bg,#f3f4f6);cursor:default}.vlist-table-group-header-content{display:flex;align-items:center;gap:12px;padding:0 16px;height:100%;background:var(--vlist-group-header-bg,#f3f4f6)}.vlist--table-row-borders .vlist-table-group-header{border-bottom:1px solid var(--vlist-border)}.vlist--table.vlist--grouped .vlist-sticky-header{order:1;z-index:4;border-bottom:none}.vlist--table.vlist--grouped .vlist-sticky-header .sticky-group{display:flex;font-size:0.8125rem;padding:0 16px;align-items:center;gap:12px;height:100%;color:var(--vlist-text-muted,#9ca3af)}.vlist--table.vlist--grouped .vlist-viewport{order:2}[data-theme-mode="dark"] .vlist-table-header,.dark .vlist-table-header{background-color:var(--vlist-bg,#111827);color:var(--vlist-text-muted,#9ca3af);border-bottom-color:var(--vlist-border,#374151)}[data-theme-mode="dark"] .vlist-table-header-cell:hover,.dark .vlist-table-header-cell:hover{background-color:var(--vlist-bg-hover,rgba(255,255,255,0.06))}[data-theme-mode="dark"] .vlist-table-header-resize::after,.dark .vlist-table-header-resize::after{background-color:var(--vlist-border,#374151)}[data-theme-mode="dark"] .vlist-table-header-resize:hover::after,.dark .vlist-table-header-resize:hover::after{background-color:var(--vlist-focus-ring,#3b82f6)}[data-theme-mode="dark"] .vlist-table-group-header,.dark .vlist-table-group-header{background-color:var(--vlist-group-header-bg,#1f2937)}[data-theme-mode="dark"] .vlist-table-group-header-content,.dark .vlist-table-group-header-content{color:var(--vlist-text-muted,#9ca3af)}[data-theme-mode="dark"] .vlist-table-header-cell--pin-left,[data-theme-mode="dark"] .vlist-table-header-cell--pin-right,[data-theme-mode="dark"] .vlist-table-cell--pin-left,[data-theme-mode="dark"] .vlist-table-cell--pin-right,.dark .vlist-table-header-cell--pin-left,.dark .vlist-table-header-cell--pin-right,.dark .vlist-table-cell--pin-left,.dark .vlist-table-cell--pin-right{background-color:var(--vlist-bg,#111827)}[data-theme-mode="dark"] .vlist-table-header-cell--pin-left-last,[data-theme-mode="dark"] .vlist-table-cell--pin-left-last,.dark .vlist-table-header-cell--pin-left-last,.dark .vlist-table-cell--pin-left-last{border-right-color:var(--vlist-border,#374151)}[data-theme-mode="dark"] .vlist-table-header-cell--pin-right-first,[data-theme-mode="dark"] .vlist-table-cell--pin-right-first,.dark .vlist-table-header-cell--pin-right-first,.dark .vlist-table-cell--pin-right-first{border-left-color:var(--vlist-border,#374151)}@media (prefers-color-scheme:dark){:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-header{background-color:var(--vlist-bg,#111827);color:var(--vlist-text-muted,#9ca3af);border-bottom-color:var(--vlist-border,#374151)}:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-header-cell:hover{background-color:var(--vlist-bg-hover,rgba(255,255,255,0.06))}:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-header-resize::after{background-color:var(--vlist-border,#374151)}:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-header-resize:hover::after{background-color:var(--vlist-focus-ring,#3b82f6)}:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-group-header{background-color:var(--vlist-group-header-bg,#1f2937)}:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-group-header-content{color:var(--vlist-text-muted,#9ca3af)}:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-header-cell--pin-left,:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-header-cell--pin-right,:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-cell--pin-left,:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-cell--pin-right{background-color:var(--vlist-bg,#111827)}:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-header-cell--pin-left-last,:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-cell--pin-left-last{border-right-color:var(--vlist-border,#374151)}:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-header-cell--pin-right-first,:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-cell--pin-right-first{border-left-color:var(--vlist-border,#374151)}}.vlist-table-row.vlist-item--placeholder .vlist-table-cell{color:transparent}.vlist-table-row.vlist-item--placeholder .vlist-table-cell>*{color:transparent;background-color:var(--vlist-border,#e5e7eb);border-radius:4px;animation:vlist-placeholder-pulse 2s ease-in-out infinite;line-height:1;min-width:1em}.vlist-table-row.vlist-item--placeholder .vlist-table-cell>.vlist-table-cell-skeleton{display:inline-block;width:60%;height:0.8em}.vlist-table-row.vlist-item--placeholder .vlist-table-cell>*>*{visibility:hidden}.vlist-table-row.vlist-item--placeholder .vlist-table-cell>*[style]{background:var(--vlist-border,#e5e7eb) !important;color:transparent !important}[data-theme-mode="dark"] .vlist--table-row-borders .vlist-table-group-header,.dark .vlist--table-row-borders .vlist-table-group-header{border-top-color:var(--vlist-border,#374151)}@media (prefers-color-scheme:dark){:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist--table-row-borders .vlist-table-group-header{border-top-color:var(--vlist-border,#374151)}}
1
+ .vlist--table{display:flex;flex-direction:column;overflow:hidden;min-height:inherit}.vlist--table .vlist-viewport{flex:1;min-height:0;height:auto;overflow:auto}.vlist--table .vlist-table-header{position:static}.vlist--page.vlist--table>[role="rowgroup"]{position:sticky;top:var(--vlist-page-pad,0px);z-index:6;height:var(--vlist-table-header-height,auto)}.vlist--page.vlist--table .vlist-table-header{position:sticky;top:var(--vlist-page-pad,0px);z-index:6}.vlist--page.vlist--table>.vlist-viewport{overflow:visible}.vlist--page.vlist--table-pinned>.vlist-viewport{overflow-x:auto;overflow-y:visible}.vlist--page.vlist--table:not(.vlist--table-pinned)>[role="rowgroup"]{width:max-content;min-width:100%}.vlist--table .vlist-scrollbar__hover{top:var(--vlist-table-header-height,0px);height:calc(100% - var(--vlist-table-header-height,0px))}.vlist--table .vlist-viewport--custom-scrollbar::-webkit-scrollbar{display:block;width:0}.vlist--table .vlist-content{contain:layout style}.vlist-table-header{position:absolute;top:0;left:0;right:0;z-index:5;overflow:hidden;display:flex;align-items:stretch;box-sizing:border-box;will-change:scroll-position;contain:layout style;background-color:var(--vlist-bg,#ffffff);border-bottom:1px solid var(--vlist-border,#e5e7eb);font-weight:600;font-size:0.8125rem;letter-spacing:0.01em;color:var(--vlist-text-muted,#6b7280)}.vlist-table-header-scroll{position:relative;display:flex;align-items:stretch;height:100%;min-width:100%;flex-shrink:0}.vlist-table-header-scroll:dir(rtl){flex-direction:row-reverse}.vlist-table-header-cell{position:relative;display:flex;align-items:center;height:100%;box-sizing:border-box;flex-shrink:0;user-select:none;padding-left:var(--vlist-item-padding-x,0.75rem);padding-right:var(--vlist-item-padding-x,0.75rem);border-right:1px solid transparent;transition:background-color 0.15s ease}.vlist-table-header-cell:hover{background-color:var(--vlist-bg-hover,rgba(0,0,0,0.04))}.vlist-table-header-cell:focus-visible{outline:2px solid var(--vlist-focus-ring,#3b82f6);outline-offset:-2px}.vlist-table-header-cell--sortable{cursor:pointer}.vlist-table-header-cell--sortable:active{background-color:var(--vlist-bg-selected,rgba(59,130,246,0.12))}.vlist-table-header-cell--center{justify-content:center}.vlist-table-header-cell--right{justify-content:flex-end}.vlist-table-header-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.vlist-table-header-sort{position:relative;margin-left:4px;flex-shrink:0;opacity:0;font-size:0.7em;transition:opacity 0.15s ease;pointer-events:none;color:var(--vlist-text-muted,#6b7280)}.vlist-table-header-sort[data-sort-priority]::after{content:attr(data-sort-priority);font-size:9px;margin-left:1px;vertical-align:super}.vlist-table-header-resize{position:absolute;top:0;right:-3px;bottom:0;width:5px;cursor:col-resize;z-index:2;touch-action:none;opacity:0;transition:opacity 0.15s ease}.vlist-table-header-resize::after{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;transform:translateX(-50%);background-color:var(--vlist-border,#e5e7eb);transition:background-color 0.15s ease}.vlist-table-header-resize:hover::after{background-color:var(--vlist-focus-ring,#3b82f6)}.vlist-table-header-cell:hover .vlist-table-header-resize{opacity:1}.vlist-table-header-resize--active{opacity:1}.vlist-table-header-resize--active::after{background-color:var(--vlist-border-selected,#3b82f6)}.vlist--col-resizing,.vlist--col-resizing *{cursor:col-resize !important;user-select:none !important}.vlist-table-row{position:absolute;top:0;left:0;display:flex;box-sizing:border-box;contain:content;border-bottom:none;background-color:var(--vlist-bg,#ffffff);cursor:default;user-select:none;transition:background-color var(--vlist-transition-duration,150ms) var(--vlist-transition-timing,ease-in-out);will-change:transform}.vlist--scrolling .vlist-table-row{transition:none}.vlist-table-row.vlist-item--odd{background:var( --vlist-bg-striped,var(--vlist-bg-hover,rgba(0,0,0,0.02)) )}.vlist--selectable .vlist-table-row{cursor:pointer}.vlist--selectable .vlist-table-row:hover{background-color:var(--vlist-bg-hover,rgba(0,0,0,0.04))}.vlist-table-row.vlist-item--selected{background-color:var(--vlist-bg-selected,rgba(59,130,246,0.12))}.vlist-table-row.vlist-item--odd.vlist-item--selected{background:var(--vlist-bg-selected,rgba(59,130,246,0.12))}.vlist--selectable .vlist-table-row.vlist-item--selected:hover{background-color:var(--vlist-bg-selected-hover,rgba(59,130,246,0.18))}.vlist--selectable .vlist-table-row.vlist-item--odd.vlist-item--selected:hover{background:var(--vlist-bg-selected-hover,rgba(59,130,246,0.18))}.vlist-table-row.vlist-item--focused{outline:2px solid var(--vlist-focus-ring,#3b82f6);outline-offset:-2px;z-index:1}.vlist-table-cell{position:absolute;top:0;bottom:0;display:flex;align-items:center;box-sizing:border-box;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding-left:var(--vlist-item-padding-x,0.75rem);padding-right:var(--vlist-item-padding-x,0.75rem);font-size:0.875rem;color:var(--vlist-text,#111827)}.vlist-table-cell--center{text-align:center;justify-content:center}.vlist-table-cell--right{text-align:right;justify-content:flex-end}.vlist--table-row-borders .vlist-table-row{border-bottom:1px solid var(--vlist-border,#e5e7eb)}.vlist--table-col-borders .vlist-table-cell{border-right:1px solid var(--vlist-border,#e5e7eb)}.vlist--table-col-borders .vlist-table-header-cell{border-right-color:var(--vlist-border,#e5e7eb)}.vlist-table-header-cell--pin-left,.vlist-table-header-cell--pin-right{z-index:3;background-color:var(--vlist-bg,#ffffff)}.vlist-table-header-cell--pin-left{transform:translateX(var(--vlist-table-pin-left,0px))}.vlist-table-header-cell--pin-right{transform:translateX(var(--vlist-table-pin-right,0px))}.vlist-table-header-cell--pin-left:hover,.vlist-table-header-cell--pin-right:hover{background-color:var(--vlist-bg,#ffffff);background-image:linear-gradient( var(--vlist-bg-hover,rgba(0,0,0,0.04)),var(--vlist-bg-hover,rgba(0,0,0,0.04)) )}.vlist-table-cell--pin-left,.vlist-table-cell--pin-right{z-index:2;background-color:var(--vlist-bg,#ffffff)}.vlist-table-cell--pin-left{transform:translateX(var(--vlist-table-pin-left,0px))}.vlist-table-cell--pin-right{transform:translateX(var(--vlist-table-pin-right,0px))}.vlist-table-row.vlist-item--odd .vlist-table-cell--pin-left,.vlist-table-row.vlist-item--odd .vlist-table-cell--pin-right{background-image:linear-gradient( var(--vlist-bg-striped,var(--vlist-bg-hover,rgba(0,0,0,0.02))),var(--vlist-bg-striped,var(--vlist-bg-hover,rgba(0,0,0,0.02))) )}.vlist--selectable .vlist-table-row:hover .vlist-table-cell--pin-left,.vlist--selectable .vlist-table-row:hover .vlist-table-cell--pin-right{background-image:linear-gradient( var(--vlist-bg-hover,rgba(0,0,0,0.04)),var(--vlist-bg-hover,rgba(0,0,0,0.04)) )}.vlist-table-row.vlist-item--selected .vlist-table-cell--pin-left,.vlist-table-row.vlist-item--selected .vlist-table-cell--pin-right{background-image:linear-gradient( var(--vlist-bg-selected,rgba(59,130,246,0.12)),var(--vlist-bg-selected,rgba(59,130,246,0.12)) )}.vlist--selectable .vlist-table-row.vlist-item--selected:hover .vlist-table-cell--pin-left,.vlist--selectable .vlist-table-row.vlist-item--selected:hover .vlist-table-cell--pin-right{background-image:linear-gradient( var(--vlist-bg-selected-hover,rgba(59,130,246,0.18)),var(--vlist-bg-selected-hover,rgba(59,130,246,0.18)) )}.vlist-table-header-cell--pin-left-last,.vlist-table-cell--pin-left-last{border-right:1px solid var(--vlist-border,#e5e7eb)}.vlist-table-header-cell--pin-right-first,.vlist-table-cell--pin-right-first{border-left:1px solid var(--vlist-border,#e5e7eb)}.vlist--col-reordering,.vlist--col-reordering *{cursor:grabbing !important;user-select:none}.vlist-table-header-cell--dragging{opacity:0.55;background-color:var(--vlist-bg-hover,rgba(59,130,246,0.08))}.vlist-table-drop-indicator{position:absolute;top:0;bottom:0;left:0;width:2px;background-color:var(--vlist-focus-ring,#3b82f6);z-index:7;pointer-events:none;will-change:transform}.vlist-table-group-header{display:flex;align-items:center;background-color:var(--vlist-group-header-bg,#f3f4f6);cursor:default}.vlist-table-group-header-content{display:flex;align-items:center;gap:12px;padding:0 16px;height:100%;background:var(--vlist-group-header-bg,#f3f4f6)}.vlist--table-row-borders .vlist-table-group-header{border-bottom:1px solid var(--vlist-border)}.vlist--table.vlist--grouped .vlist-sticky-header{order:1;z-index:4;border-bottom:none}.vlist--table.vlist--grouped .vlist-sticky-header .sticky-group{display:flex;font-size:0.8125rem;padding:0 16px;align-items:center;gap:12px;height:100%;color:var(--vlist-text-muted,#9ca3af)}.vlist--table.vlist--grouped .vlist-viewport{order:2}[data-theme-mode="dark"] .vlist-table-header,.dark .vlist-table-header{background-color:var(--vlist-bg,#111827);color:var(--vlist-text-muted,#9ca3af);border-bottom-color:var(--vlist-border,#374151)}[data-theme-mode="dark"] .vlist-table-header-cell:hover,.dark .vlist-table-header-cell:hover{background-color:var(--vlist-bg-hover,rgba(255,255,255,0.06))}[data-theme-mode="dark"] .vlist-table-header-resize::after,.dark .vlist-table-header-resize::after{background-color:var(--vlist-border,#374151)}[data-theme-mode="dark"] .vlist-table-header-resize:hover::after,.dark .vlist-table-header-resize:hover::after{background-color:var(--vlist-focus-ring,#3b82f6)}[data-theme-mode="dark"] .vlist-table-group-header,.dark .vlist-table-group-header{background-color:var(--vlist-group-header-bg,#1f2937)}[data-theme-mode="dark"] .vlist-table-group-header-content,.dark .vlist-table-group-header-content{color:var(--vlist-text-muted,#9ca3af)}[data-theme-mode="dark"] .vlist-table-header-cell--pin-left,[data-theme-mode="dark"] .vlist-table-header-cell--pin-right,[data-theme-mode="dark"] .vlist-table-cell--pin-left,[data-theme-mode="dark"] .vlist-table-cell--pin-right,.dark .vlist-table-header-cell--pin-left,.dark .vlist-table-header-cell--pin-right,.dark .vlist-table-cell--pin-left,.dark .vlist-table-cell--pin-right{background-color:var(--vlist-bg,#111827)}[data-theme-mode="dark"] .vlist-table-header-cell--pin-left-last,[data-theme-mode="dark"] .vlist-table-cell--pin-left-last,.dark .vlist-table-header-cell--pin-left-last,.dark .vlist-table-cell--pin-left-last{border-right-color:var(--vlist-border,#374151)}[data-theme-mode="dark"] .vlist-table-header-cell--pin-right-first,[data-theme-mode="dark"] .vlist-table-cell--pin-right-first,.dark .vlist-table-header-cell--pin-right-first,.dark .vlist-table-cell--pin-right-first{border-left-color:var(--vlist-border,#374151)}@media (prefers-color-scheme:dark){:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-header{background-color:var(--vlist-bg,#111827);color:var(--vlist-text-muted,#9ca3af);border-bottom-color:var(--vlist-border,#374151)}:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-header-cell:hover{background-color:var(--vlist-bg-hover,rgba(255,255,255,0.06))}:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-header-resize::after{background-color:var(--vlist-border,#374151)}:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-header-resize:hover::after{background-color:var(--vlist-focus-ring,#3b82f6)}:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-group-header{background-color:var(--vlist-group-header-bg,#1f2937)}:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-group-header-content{color:var(--vlist-text-muted,#9ca3af)}:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-header-cell--pin-left,:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-header-cell--pin-right,:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-cell--pin-left,:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-cell--pin-right{background-color:var(--vlist-bg,#111827)}:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-header-cell--pin-left-last,:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-cell--pin-left-last{border-right-color:var(--vlist-border,#374151)}:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-header-cell--pin-right-first,:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist-table-cell--pin-right-first{border-left-color:var(--vlist-border,#374151)}}.vlist-table-row.vlist-item--placeholder .vlist-table-cell{color:transparent}.vlist-table-row.vlist-item--placeholder .vlist-table-cell>*{color:transparent;background-color:var(--vlist-border,#e5e7eb);border-radius:4px;animation:vlist-placeholder-pulse 2s ease-in-out infinite;line-height:1;min-width:1em}.vlist-table-row.vlist-item--placeholder .vlist-table-cell>.vlist-table-cell-skeleton{display:inline-block;width:60%;height:0.8em}.vlist-table-row.vlist-item--placeholder .vlist-table-cell>*>*{visibility:hidden}.vlist-table-row.vlist-item--placeholder .vlist-table-cell>*[style]{background:var(--vlist-border,#e5e7eb) !important;color:transparent !important}[data-theme-mode="dark"] .vlist--table-row-borders .vlist-table-group-header,.dark .vlist--table-row-borders .vlist-table-group-header{border-top-color:var(--vlist-border,#374151)}@media (prefers-color-scheme:dark){:root:not([data-theme-mode="light"]):not([data-theme-mode="dark"]) .vlist--table-row-borders .vlist-table-group-header{border-top-color:var(--vlist-border,#374151)}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vlist",
3
- "version": "3.6.2",
3
+ "version": "3.6.3",
4
4
  "description": "Lightweight, high-performance virtual list with zero dependencies",
5
5
  "author": {
6
6
  "name": "Floor IO",
@@ -100,7 +100,7 @@
100
100
  "dev": "bun run build.ts --watch",
101
101
  "test": "bun test",
102
102
  "test:changed": "bun test --changed",
103
- "test:browser": "bun scripts/rtl-cross-axis-browser.mjs && bun scripts/synthetic-browser.mjs && bun scripts/synthetic-carousel-browser.mjs && bun scripts/synthetic-sortable-browser.mjs && bun scripts/select-next-browser.mjs && bun scripts/item-fill-browser.mjs && bun scripts/scroll-mode-browser.mjs && bun scripts/native-cap-browser.mjs && bun scripts/tree-guides-browser.mjs && bun scripts/table-header-browser.mjs && bun scripts/focus-removal-browser.mjs && bun scripts/table-a11y-tab-stop-browser.mjs && bun scripts/groups-autosize-browser.mjs && bun scripts/autosize-identity-browser.mjs",
103
+ "test:browser": "bun scripts/rtl-cross-axis-browser.mjs && bun scripts/synthetic-browser.mjs && bun scripts/synthetic-carousel-browser.mjs && bun scripts/synthetic-sortable-browser.mjs && bun scripts/select-next-browser.mjs && bun scripts/item-fill-browser.mjs && bun scripts/scroll-mode-browser.mjs && bun scripts/native-cap-browser.mjs && bun scripts/tree-guides-browser.mjs && bun scripts/table-header-browser.mjs && bun scripts/table-page-header-browser.mjs && bun scripts/focus-removal-browser.mjs && bun scripts/table-a11y-tab-stop-browser.mjs && bun scripts/groups-autosize-browser.mjs && bun scripts/autosize-identity-browser.mjs",
104
104
  "typecheck": "tsc --noEmit && tsc --noEmit -p tsconfig.types.json && tsc --noEmit -p tsconfig.test.json",
105
105
  "bench": "bun run scripts/bench.ts",
106
106
  "bench:quick": "bun run scripts/bench.ts --quick",