vlist 3.3.0 → 3.3.2

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.3.0** — `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.3.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).
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)
@@ -264,34 +264,34 @@ The touch-only `.vlist-item--touch-sort` class suppresses selection and callouts
264
264
 
265
265
  | Entry / export | Minified | Gzipped |
266
266
  |---|---:|---:|
267
- | **Base (`vlist`)** | 27.9 KB | 10.5 KB |
268
- | `vlist/synthetic` (deprecated) | 34.8 KB | 13.1 KB |
269
- | `vlist/native` (alias) | 27.9 KB | 10.5 KB |
270
- | `a11y()` | 32.9 KB | 12.4 KB |
271
- | `selection()` | 38.4 KB | 13.8 KB |
272
- | `data()` | 41.5 KB | 15.3 KB |
267
+ | **Base (`vlist`)** | 28.0 KB | 10.5 KB |
268
+ | `vlist/synthetic` (deprecated) | 34.9 KB | 13.1 KB |
269
+ | `vlist/native` (alias) | 28.0 KB | 10.5 KB |
270
+ | `a11y()` | 33.4 KB | 12.5 KB |
271
+ | `selection()` | 38.8 KB | 13.9 KB |
272
+ | `data()` | 41.6 KB | 15.3 KB |
273
273
  | `scrollbar()` | 36.1 KB | 13.4 KB |
274
- | `sortable()` | 39.8 KB | 14.1 KB |
275
- | `groups()` | 44.2 KB | 15.9 KB |
276
- | `page()` | 30.4 KB | 11.4 KB |
277
- | `snapshots()` | 31.2 KB | 11.6 KB |
278
- | `transition()` | 34.6 KB | 12.5 KB |
279
- | `autosize()` | 32.3 KB | 12.1 KB |
280
- | `grid()` | 35.4 KB | 13.1 KB |
281
- | `table()` | 47.0 KB | 16.6 KB |
282
- | `masonry()` | 40.1 KB | 14.9 KB |
283
- | `tree()` | 43.7 KB | 15.8 KB |
284
- | `search()` | 37.5 KB | 13.8 KB |
285
- | `carousel()` | 43.9 KB | 16.0 KB |
286
- | `vlist/synthetic` + `carousel()` | 50.0 KB | 18.3 KB |
287
- | `vlist/synthetic` + `sortable()` | 46.7 KB | 16.7 KB |
288
- | `vlist/vue` `useVList` | 28.3 KB | 10.7 KB |
289
- | `vlist/svelte` `vlist` | 28.1 KB | 10.6 KB |
290
- | `vlist/solid` `createVList` | 28.2 KB | 10.6 KB |
291
- | `vlist/react` `useVList` | 28.3 KB | 10.7 KB |
292
- | `vlist/react` + `grid()` | 35.8 KB | 13.3 KB |
293
-
294
- Sizes are tree-shaken totals from `bun run size`, not additive plugin costs. Plugin rows include the native default factory plus that plugin; framework rows add the entry, with the framework itself external. The base is **10,735 bytes gzipped**, within the 10.59 KB budget (10,844 bytes). `bun run size` fails if a scenario fails to build, an unused plugin leaks into a bundle, or any published size exceeds its gzip budget. Synthetic input is **13,402 bytes** before plugins; with `scroll.mode`, a `vlist` list downloads the driver and its scrollbar as `synthetic-driver.js` (6.2 KB gzipped) only when it goes synthetic. The alias row measures the same source factory; the distributed alias re-exports it without duplicating the implementation.
274
+ | `sortable()` | 39.9 KB | 14.1 KB |
275
+ | `groups()` | 44.4 KB | 16.0 KB |
276
+ | `page()` | 30.5 KB | 11.4 KB |
277
+ | `snapshots()` | 31.3 KB | 11.6 KB |
278
+ | `transition()` | 34.7 KB | 12.5 KB |
279
+ | `autosize()` | 32.4 KB | 12.1 KB |
280
+ | `grid()` | 35.5 KB | 13.1 KB |
281
+ | `table()` | 47.2 KB | 16.6 KB |
282
+ | `masonry()` | 40.2 KB | 15.0 KB |
283
+ | `tree()` | 43.8 KB | 15.8 KB |
284
+ | `search()` | 37.6 KB | 13.8 KB |
285
+ | `carousel()` | 44.0 KB | 16.0 KB |
286
+ | `vlist/synthetic` + `carousel()` | 50.0 KB | 18.4 KB |
287
+ | `vlist/synthetic` + `sortable()` | 46.8 KB | 16.7 KB |
288
+ | `vlist/vue` `useVList` | 28.4 KB | 10.7 KB |
289
+ | `vlist/svelte` `vlist` | 28.2 KB | 10.6 KB |
290
+ | `vlist/solid` `createVList` | 28.3 KB | 10.6 KB |
291
+ | `vlist/react` `useVList` | 28.4 KB | 10.7 KB |
292
+ | `vlist/react` + `grid()` | 35.9 KB | 13.3 KB |
293
+
294
+ Sizes are tree-shaken totals from `bun run size`, not additive plugin costs. Plugin rows include the native default factory plus that plugin; framework rows add the entry, with the framework itself external. The base is **10,762 bytes gzipped**, within the 10.6 KB budget (10,844 bytes). `bun run size` fails if a scenario fails to build, an unused plugin leaks into a bundle, or any published size exceeds its gzip budget. Synthetic input is **13,435 bytes** before plugins; with `scroll.mode`, a `vlist` list downloads the driver and its scrollbar as `synthetic-driver.js` (6.2 KB gzipped) only when it goes synthetic. The alias row measures the same source factory; the distributed alias re-exports it without duplicating the implementation.
295
295
 
296
296
  Bundlephobia's badge measures the package's root entry, which re-exports every plugin, minified and gzipped as one bundle. With a tree-shaking bundler, an app that imports named exports from `vlist` bundles the base (**10.5 KB gzipped**) and the features it uses; the table's rows are each a combined size, not amounts to add up.
297
297
 
@@ -720,7 +720,6 @@ The instance API (`setItems`, `scrollToIndex`, `on`, `destroy`) is unchanged.
720
720
  ## Links
721
721
 
722
722
  - **Docs & Examples:** [vlist.io](https://vlist.io)
723
- - **Staging:** [staging.vlist.io](https://staging.vlist.io)
724
723
  - **GitHub:** [github.com/floor/vlist](https://github.com/floor/vlist)
725
724
  - **NPM:** [vlist](https://www.npmjs.com/package/vlist)
726
725
  - **Issues:** [GitHub Issues](https://github.com/floor/vlist/issues)
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.3.0** — `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.3.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).
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)
@@ -131,34 +131,34 @@ The touch-only `.vlist-item--touch-sort` class suppresses selection and callouts
131
131
 
132
132
  | Entry / export | Minified | Gzipped |
133
133
  |---|---:|---:|
134
- | **Base (`vlist`)** | 27.9 KB | 10.5 KB |
135
- | `vlist/synthetic` (deprecated) | 34.8 KB | 13.1 KB |
136
- | `vlist/native` (alias) | 27.9 KB | 10.5 KB |
137
- | `a11y()` | 32.9 KB | 12.4 KB |
138
- | `selection()` | 38.4 KB | 13.8 KB |
139
- | `data()` | 41.5 KB | 15.3 KB |
134
+ | **Base (`vlist`)** | 28.0 KB | 10.5 KB |
135
+ | `vlist/synthetic` (deprecated) | 34.9 KB | 13.1 KB |
136
+ | `vlist/native` (alias) | 28.0 KB | 10.5 KB |
137
+ | `a11y()` | 33.4 KB | 12.5 KB |
138
+ | `selection()` | 38.8 KB | 13.9 KB |
139
+ | `data()` | 41.6 KB | 15.3 KB |
140
140
  | `scrollbar()` | 36.1 KB | 13.4 KB |
141
- | `sortable()` | 39.8 KB | 14.1 KB |
142
- | `groups()` | 44.2 KB | 15.9 KB |
143
- | `page()` | 30.4 KB | 11.4 KB |
144
- | `snapshots()` | 31.2 KB | 11.6 KB |
145
- | `transition()` | 34.6 KB | 12.5 KB |
146
- | `autosize()` | 32.3 KB | 12.1 KB |
147
- | `grid()` | 35.4 KB | 13.1 KB |
148
- | `table()` | 47.0 KB | 16.6 KB |
149
- | `masonry()` | 40.1 KB | 14.9 KB |
150
- | `tree()` | 43.7 KB | 15.8 KB |
151
- | `search()` | 37.5 KB | 13.8 KB |
152
- | `carousel()` | 43.9 KB | 16.0 KB |
153
- | `vlist/synthetic` + `carousel()` | 50.0 KB | 18.3 KB |
154
- | `vlist/synthetic` + `sortable()` | 46.7 KB | 16.7 KB |
155
- | `vlist/vue` `useVList` | 28.3 KB | 10.7 KB |
156
- | `vlist/svelte` `vlist` | 28.1 KB | 10.6 KB |
157
- | `vlist/solid` `createVList` | 28.2 KB | 10.6 KB |
158
- | `vlist/react` `useVList` | 28.3 KB | 10.7 KB |
159
- | `vlist/react` + `grid()` | 35.8 KB | 13.3 KB |
160
-
161
- Sizes are tree-shaken totals from `bun run size`, not additive plugin costs. Plugin rows include the native default factory plus that plugin; framework rows add the entry, with the framework itself external. The base is **10,735 bytes gzipped**, within the 10.59 KB budget (10,844 bytes). `bun run size` fails if a scenario fails to build, an unused plugin leaks into a bundle, or any published size exceeds its gzip budget. Synthetic input is **13,402 bytes** before plugins; with `scroll.mode`, a `vlist` list downloads the driver and its scrollbar as `synthetic-driver.js` (6.2 KB gzipped) only when it goes synthetic. The alias row measures the same source factory; the distributed alias re-exports it without duplicating the implementation.
141
+ | `sortable()` | 39.9 KB | 14.1 KB |
142
+ | `groups()` | 44.4 KB | 16.0 KB |
143
+ | `page()` | 30.5 KB | 11.4 KB |
144
+ | `snapshots()` | 31.3 KB | 11.6 KB |
145
+ | `transition()` | 34.7 KB | 12.5 KB |
146
+ | `autosize()` | 32.4 KB | 12.1 KB |
147
+ | `grid()` | 35.5 KB | 13.1 KB |
148
+ | `table()` | 47.2 KB | 16.6 KB |
149
+ | `masonry()` | 40.2 KB | 15.0 KB |
150
+ | `tree()` | 43.8 KB | 15.8 KB |
151
+ | `search()` | 37.6 KB | 13.8 KB |
152
+ | `carousel()` | 44.0 KB | 16.0 KB |
153
+ | `vlist/synthetic` + `carousel()` | 50.0 KB | 18.4 KB |
154
+ | `vlist/synthetic` + `sortable()` | 46.8 KB | 16.7 KB |
155
+ | `vlist/vue` `useVList` | 28.4 KB | 10.7 KB |
156
+ | `vlist/svelte` `vlist` | 28.2 KB | 10.6 KB |
157
+ | `vlist/solid` `createVList` | 28.3 KB | 10.6 KB |
158
+ | `vlist/react` `useVList` | 28.4 KB | 10.7 KB |
159
+ | `vlist/react` + `grid()` | 35.9 KB | 13.3 KB |
160
+
161
+ Sizes are tree-shaken totals from `bun run size`, not additive plugin costs. Plugin rows include the native default factory plus that plugin; framework rows add the entry, with the framework itself external. The base is **10,762 bytes gzipped**, within the 10.6 KB budget (10,844 bytes). `bun run size` fails if a scenario fails to build, an unused plugin leaks into a bundle, or any published size exceeds its gzip budget. Synthetic input is **13,435 bytes** before plugins; with `scroll.mode`, a `vlist` list downloads the driver and its scrollbar as `synthetic-driver.js` (6.2 KB gzipped) only when it goes synthetic. The alias row measures the same source factory; the distributed alias re-exports it without duplicating the implementation.
162
162
 
163
163
  Bundlephobia's badge measures the package's root entry, which re-exports every plugin, minified and gzipped as one bundle. With a tree-shaking bundler, an app that imports named exports from `vlist` bundles the base (**10.5 KB gzipped**) and the features it uses; the table's rows are each a combined size, not amounts to add up.
164
164