@aiquants/virtualscroll 2.1.0 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,108 @@
2
2
 
3
3
  All notable changes to `@aiquants/virtualscroll` are documented here.
4
4
 
5
+ ## 2.3.0 (2026-08-19)
6
+
7
+ DOM 契約が変わるため minor: `.aqvs-scroll-to-edge-overlay` は非表示中に `inert` を、
8
+ `.aqvs-scroll-to-edge-button` は常時 `tabindex` を出力するようになります (2.2.0 でスクロールバーの
9
+ 非表示表現を `data-visible` へ移管したときと同じ基準)。表示中の見た目・操作は一切変わりません。
10
+
11
+ ### Fixed
12
+
13
+ - **非表示の Top/Bottom ピルがタブ順に残り、見えないフォーカス停止点になっていた問題 (全ホスト)** —
14
+ `scrollBarOptions.enableScrollToTopBottomButtons: true` のとき、ピルは非表示状態でも DOM に残ります
15
+ (フェードのためにアンマウントしない設計)。ところが非表示は `opacity: 0` だけで表現しており、
16
+ `opacity` はフォーカス可能性に影響しないため、**キーボード操作者は一覧を通過するたびに「何も見えないのに
17
+ フォーカスが止まる」箇所を必ず 1 つ踏んでいました**。しかもフォーカスリング (`:focus-visible`) は
18
+ `opacity: 0` の要素に描かれるため見えず、その状態で Enter / Space を押すと一覧が先頭または末尾へ飛びます
19
+ (CSS の `pointer-events: none` はポインタ操作しか止めず、キーボードからの活性化は素通しになる)。
20
+ 未スクロールの初期状態は `scrollDirection === null` で Bottom 枝が描かれるため、**ページを開いた直後から
21
+ 常に踏める**状態でした。消費側からは回避できません (ピルはコンポーネント内部で描画され、属性を足す口が無い)。
22
+
23
+ オーバーレイへ `inert` (焦点・ヒットテスト・アクセシビリティツリー露出を一括で外す) を、ピルへ
24
+ `tabIndex={isVisible ? 0 : -1}` (`inert` 未実装ブラウザ向けの下限) を出力するようにしました。どちらも
25
+ `isVisible` から導出するため値が食い違うことはありません。CSS の `pointer-events: none` はポインタ軸の
26
+ 下限として維持します (配布 CSS 未読込のホストでは `inert` が、`inert` 未実装ブラウザでは CSS が
27
+ 互いの穴を埋める)。表示中の見た目・操作・DOM 構造は一切変わりません。
28
+
29
+ ### Changed
30
+
31
+ - **スクロールバーの DOM 契約 (追加のみ)**: `.aqvs-scroll-to-edge-overlay` は非表示中に `inert` を、
32
+ `.aqvs-scroll-to-edge-button` は常時 `tabindex` を出力します。ピルの DOM スナップショットを持つ利用側は
33
+ 更新が必要です。`inert` を真偽値プロップとして扱うため **React 19 以降が前提**です
34
+ (React 18 以前では `inert="false"` となり、非表示でないときに誤って有効化されます)。
35
+
36
+ ## 2.2.0 (2026-08-15)
37
+
38
+ **リセット非依存 (preflight independence)。** 2.1.0 の Top/Bottom ボタン修正と同じ根本原因 —
39
+ どちらの CSS アーティファクトもリセット (preflight) を含まないのに、`.aqvs-*` がホストのリセットを
40
+ 当てにしていた — をパッケージ全体で解消します。UA 既定の打ち消しは、それを必要とするルール自身が
41
+ 宣言します。実測はすべて chromium 148 / firefox 150 (webkit は本環境で起動不可のため未検証)。
42
+
43
+ ### Fixed
44
+
45
+ - **スクロール不能なリストでスクロールバーが消えなかった問題 (Tailwind ホストで発生)** —
46
+ 非表示状態を Tailwind ユーティリティ (`opacity-0` / `pointer-events-none`) で表現していましたが、
47
+ components-only アーティファクト (Artifact A) はユーティリティを同梱しません。ホスト側のビルドが
48
+ たまたま同名クラスを生成していない限り、**バーは不透明のまま残ります**。両ユーティリティとも生成
49
+ していないホストでは、さらに中央のクリックまで奪われます (本パッケージのデモは自前のソースから
50
+ `.pointer-events-none` だけを生成していたため、「バーが常時可視のまま」という形で現れていました)。
51
+ ルートとサムラッパーへ `data-visible` を出力し、パッケージ CSS の `[data-visible="false"]` で
52
+ `opacity: 0; pointer-events: none` を与えるよう移管しました。実測: `opacity 1 → 0`、
53
+ `pointer-events auto → none`、バー中央のヒットテストがサムからペインへ。
54
+ - **フェードアウトした Top/Bottom ピルが行のクリックを奪っていた問題 (全ホスト)** —
55
+ `.aqvs-scroll-to-edge-overlay[data-visible="false"]` は `opacity: 0` だけで、内側の
56
+ `.aqvs-scroll-to-edge-button` が `pointer-events: auto` を持つためヒットテストに残っていました
57
+ (初回描画時から不可視のピルが存在)。実測: ピル中央のクリックが行へ届かず `scrollToIndex()` が発火し、
58
+ リストが末尾へ飛ぶ。非表示状態のピルへ `pointer-events: none` を追加。
59
+ - **矢印ボタンが `scrollBarWidth` からはみ出していた問題 (リセット非適用ホスト)** —
60
+ UA の `padding` (chromium `1px 6px` / firefox `1px 4px`) と `border: 2px outset` が効き、ブラウザは
61
+ `<button>` を border-box として扱うため、それらがボーダーボックスの下限になってインライン指定の
62
+ `scrollBarWidth` が無視されていました。`border: 0 solid` / `padding: 0` を追加 (`none` ではなく
63
+ `0 solid` にしてあるのは、消費側が `border-width` だけを上書きしたときに描画されるようにするため)。
64
+ 実測 (chromium): 16x12 → 12x12、`scrollBarWidth: 8` では 16x8 → 8x8、バーの `scrollWidth` 16 → 12。
65
+ 水平バーではトラック長が `viewportSize - 2 * scrollBarWidth` へ戻り、JS 側の計算とのズレ (最大
66
+ スクロール時にサムが端の矢印へ乗る、トラッククリック位置がずれる) も解消します。
67
+ - **`contentInsets` 指定時にビューポートがインセット分だけ伸びていた問題 (リセット非適用ホスト)** —
68
+ `.aqvs-scroll-pane-content` は同一要素に `height` と `padding` を受けるため `box-sizing: border-box`
69
+ が必須でした。実測: `viewportSize: 300` / インセット 8+8 で 316px → 300px。
70
+ - **タップサークルの 1px リングが描画されない問題 (リセット非適用ホスト / `tapScrollCircleSampleVisual` 使用時)** —
71
+ `.aqvs-tap-scroll-circle-gradient` と `.aqvs-sample-visual-pupil` が `border-width` + `border-color`
72
+ だけを宣言しており、`border-style` の初期値 `none` により使用値が `0px` になっていました。
73
+ `border: 1px solid ...` へ変更し、瞳には `box-sizing: border-box` を併せて追加 (インライン
74
+ `width` / `height` は外径のため、border 分だけ太らないようにする)。どちらのクラスも
75
+ `tapScrollCircleOptions.renderVisual` に `tapScrollCircleSampleVisual` を渡した場合にのみ描画されます
76
+ (既定ビジュアルはリングを `box-shadow` で描くため影響を受けません)。
77
+ - **タッチ操作時にスクロールバー配下へタップハイライトが出る問題 (リセット非適用ホスト)** —
78
+ `.aqvs-scrollbar` に `-webkit-tap-highlight-color: transparent` を追加 (継承でバー・トラック・サム・
79
+ 矢印・タップサークルまで一括)。実測 `rgba(0,0,0,0.18) → rgba(0,0,0,0)`。**ペイン配下には付けません**
80
+ (利用側の行コンテンツからも UA のタップハイライトを奪ってしまうため)。
81
+ - **ボタンのラベル / グリフが UA のボタンフォントになる問題 (リセット非適用ホスト)** —
82
+ Top/Bottom ピルへ `font-family: inherit` (preflight の `button { font: inherit }` 相当)、矢印ボタンへ
83
+ `font-family: system-ui, sans-serif` / `font-weight: 400` / `letter-spacing: normal` を追加。矢印
84
+ (`▲▼◀▶`) はパッケージ所有のアイコンなので、ホストの散文用タイポグラフィを継承しません (実測:
85
+ `letter-spacing: 2px` のホストで 12px のボタン内のグリフが 1px ずれていた)。
86
+
87
+ ### Changed
88
+
89
+ - **スクロールバーの DOM 契約**: ルート (`role="scrollbar"`) とサムラッパー (`role="slider"`) は
90
+ `pointer-events-none opacity-0` を**付けなくなり**、代わりに `data-visible="true" | "false"` を
91
+ 常時出力します。これらのユーティリティクラスを目印にしていた利用側の CSS / テストロケータ /
92
+ スナップショットは `[data-visible]` へ移行してください。
93
+ - **Tailwind ホストでも、バー非表示状態 (スクロール不能なリスト) の描画は変わります。** ホストのビルドが
94
+ `opacity-0` を生成していない場合、2.1.0 までバーは不透明のまま描画されており、2.2.0 で
95
+ `opacity: 1 → 0` / `pointer-events: auto → none` になります (`opacity-0` を生成しているホストでは
96
+ 変化しません)。スクロール可能な状態では幾何・色ともに差分はありません。
97
+ - **非 Tailwind ホスト (standalone アーティファクト) の箱モデルが Tailwind ホストと一致します。**
98
+ 上記のとおり矢印ボタンが縮み、タップサークルのリングが描画され、インセット時のビューポート高さが
99
+ 正しくなります (タイポグラフィはホストの継承のままです)。ピクセル基準のスナップショットを持つ場合は
100
+ 更新が必要です。
101
+ - **standalone アーティファクトがユーティリティクラスを同梱しなくなりました** (9,023 → 5,505 バイト)。
102
+ `@source` 走査は spec ファイルの識別子や docstring の英単語を誤検出して `.hidden` / `.container` /
103
+ `.truncate` などを利用側の名前空間へ注入していました。`.aqvs-*` ルールはバイト単位で不変です
104
+ (両アーティファクトの `@layer components` ブロックは 5,264 バイトで完全一致)。レイヤー順序の宣言は
105
+ 残るため、利用側 `utilities` レイヤーからの上書きは従来どおり可能です。
106
+
5
107
  ## 2.1.0 (2026-08-14)
6
108
 
7
109
  ### Fixed
package/README.md CHANGED
@@ -35,8 +35,14 @@ pnpm add @aiquants/virtualscroll
35
35
  > `@aiquants/directory-tree`, `@aiquants/select-box`, and `@aiquants/daily-report`; when you also
36
36
  > use those packages, import virtualscroll's CSS just once and they all share it.
37
37
  >
38
- > The package ships **two CSS artifacts**. virtualscroll has no JSX utility classes, so the two are
39
- > nearly identical, but both are published for naming consistency across `@aiquants/*`:
38
+ > The package ships **two CSS artifacts**. Neither bundles a CSS reset the standalone build declares
39
+ > `@layer base` but leaves it empty so every `.aqvs-*` rule cancels the UA defaults **its own box model**
40
+ > depends on: `box-sizing`, `border-style`, the UA button bevel and padding, and the tap highlight (2.2.0).
41
+ > The components' box model is therefore identical with and without Tailwind preflight; text that inherits
42
+ > host typography (the "No items" label, the Top/Bottom pill label, your own row content) still follows the
43
+ > host's font and default line-height **by design**. The package's JSX writes `.aqvs-*` class names only,
44
+ > never a Tailwind utility, and the standalone build ships no utilities either — the `.aqvs-*` rules are
45
+ > byte-identical in both artifacts, so import exactly one:
40
46
  >
41
47
  > ```css
42
48
  > /* Tailwind v4 host — components-only build (Artifact A) in the components layer */
@@ -71,14 +77,13 @@ function App() {
71
77
  const getItemHeight = useCallback((index: number) => items[index].height, [])
72
78
 
73
79
  return (
74
- <div style={{ height: '400px', width: '100%' }}>
80
+ <div style={{ height: '400px', width: '100%', border: '1px solid #d1d5db' }}>
75
81
  <VirtualScroll
76
82
  itemCount={items.length}
77
83
  getItem={getItem}
78
84
  getItemHeight={getItemHeight}
79
85
  viewportSize={400}
80
86
  overscanCount={5}
81
- className="border border-gray-300"
82
87
  >
83
88
  {(item, index) => (
84
89
  <div
@@ -201,7 +206,9 @@ exists in the DOM.
201
206
  | `getItemHeight` | `(index: number) => number` | ✅ | Function to get item height |
202
207
  | `viewportSize` | `number` | ✅ | Height of the visible area |
203
208
  | `overscanCount` | `number` | ❌ | Number of items to render outside viewport (default: 15) |
204
- | `className` | `string` | ❌ | CSS class name |
209
+ | `className` | `string` | ❌ | CSS class name. Lands on the scroll root (`.aqvs-scroll-pane`) — see [Custom Scrollbar Styling](#custom-scrollbar-styling) |
210
+ | `getItemKey` | `(index: number) => React.Key` | ❌ | Stable React key per index (defaults to the index) |
211
+ | `testId` | `string` | ❌ | Emitted as `data-testid` on the scroll root. DOM hooks should use `data-*`, never class selectors |
205
212
  | `onScroll` | `(position: number, totalHeight: number) => void` | ❌ | Scroll event handler |
206
213
  | `onRangeChange` | `(range: VirtualScrollRange) => void` | ❌ | Range change handler |
207
214
  | `onWheelHorizontal` | `(deltaX: number) => void` | ❌ | Opt-in horizontal wheel delegation. When set, horizontal-dominant wheel / trackpad gestures (and shift+wheel) are delegated to this handler so the parent can implement horizontal scrolling. When omitted, horizontal gestures and shift+wheel bypass vertical scrolling so parent native scrolling works. See [Horizontal Scrolling](#horizontal-scrolling). |
@@ -220,11 +227,11 @@ exists in the DOM.
220
227
 
221
228
  | Property | Type | Description |
222
229
  | --- | --- | --- |
223
- | `width` | `number` | Width of the scrollbar |
224
- | `enableThumbDrag` | `boolean` | Enable dragging the scrollbar thumb |
225
- | `enableTrackClick` | `boolean` | Enable clicking the scrollbar track |
226
- | `enableArrowButtons` | `boolean` | Enable arrow buttons on the scrollbar |
227
- | `enableScrollToTopBottomButtons` | `boolean` | Enable "Scroll to Top" and "Scroll to Bottom" buttons |
230
+ | `width` | `number` | Width of the scrollbar (default: 12) |
231
+ | `enableThumbDrag` | `boolean` | Enable dragging the scrollbar thumb (default: true) |
232
+ | `enableTrackClick` | `boolean` | Enable clicking the scrollbar track (default: true) |
233
+ | `enableArrowButtons` | `boolean` | Enable arrow buttons on the scrollbar (default: true) |
234
+ | `enableScrollToTopBottomButtons` | `boolean` | Enable "Scroll to Top" and "Scroll to Bottom" buttons (default: false) |
228
235
  | `renderThumbOverlay` | `(props: ScrollBarThumbOverlayRenderProps) => ReactNode` | Render prop to anchor custom UI near the scrollbar thumb |
229
236
  | `tapScrollCircleOptions` | `ScrollBarTapCircleOptions` | Customization for the auxiliary tap scroll circle |
230
237
 
@@ -235,7 +242,7 @@ exists in the DOM.
235
242
  | `enablePointerDrag` | `boolean` | Enable dragging the content area to scroll (default: true). ⚠️ Setting this to `false` removes the only way to scroll on touch devices — the pane is transform-based and has no native scroller. Use `pointerDragInputs` to exclude a single pointer type instead. |
236
243
  | `pointerDragInputs` | `readonly ("mouse" \| "pen" \| "touch")[]` | Pointer types allowed to drag-scroll the content area (default: all three). `touch-action: none` is applied only when `"touch"` or `"pen"` is included. |
237
244
  | `enableKeyboardNavigation` | `boolean` | Enable keyboard navigation (default: true) |
238
- | `wheelSpeedMultiplier` | `number` | Multiplier for mouse wheel scrolling speed |
245
+ | `wheelSpeedMultiplier` | `number` | Multiplier for mouse wheel scrolling speed (default: 1) |
239
246
  | `inertiaOptions` | `ScrollPaneInertiaOptions` | Physics tuning for drag inertia |
240
247
  | `clipItemHeight` | `boolean` | Whether to clip item height (default: false) |
241
248
  | `resetOnGetItemHeightChange` | `boolean` | Whether to reset internal height cache when `getItemHeight` changes (default: false) |
@@ -319,14 +326,29 @@ function AdvancedExample() {
319
326
 
320
327
  return (
321
328
  <div
322
- className="pointer-events-none absolute flex items-center"
323
- style={
324
- props.orientation === 'vertical'
329
+ style={{
330
+ pointerEvents: 'none',
331
+ position: 'absolute',
332
+ display: 'flex',
333
+ alignItems: 'center',
334
+ ...(props.orientation === 'vertical'
325
335
  ? { top: props.thumbCenter, left: -14, transform: 'translate(-100%, -50%)' }
326
- : { left: props.thumbCenter, top: -14, transform: 'translate(-50%, -100%)' }
327
- }
336
+ : { left: props.thumbCenter, top: -14, transform: 'translate(-50%, -100%)' }),
337
+ }}
328
338
  >
329
- <div className="rounded-full border border-slate-200 bg-white px-2 py-1 text-xs font-medium text-slate-700 shadow-md">
339
+ <div
340
+ style={{
341
+ borderRadius: 9999,
342
+ border: '1px solid #e2e8f0',
343
+ background: '#fff',
344
+ padding: '4px 8px',
345
+ fontSize: 12,
346
+ fontWeight: 500,
347
+ color: '#334155',
348
+ whiteSpace: 'nowrap',
349
+ boxShadow: '0 4px 6px -1px rgba(0, 0, 0, 0.1)',
350
+ }}
351
+ >
330
352
  {label}
331
353
  </div>
332
354
  </div>
@@ -359,6 +381,9 @@ function AdvancedExample() {
359
381
 
360
382
  ### Custom Scrollbar Styling
361
383
 
384
+ `className` lands on the **scroll root** (`.aqvs-scroll-pane`). The bar, its track, thumb, arrow buttons
385
+ and the Top/Bottom pills are all descendants of that element, so one wrapper class reaches every part:
386
+
362
387
  ```tsx
363
388
  <VirtualScroll
364
389
  itemCount={items.length}
@@ -369,19 +394,61 @@ function AdvancedExample() {
369
394
  >
370
395
  {(item, index) => <ItemComponent item={item} index={index} />}
371
396
  </VirtualScroll>
397
+ ```
372
398
 
373
- <style>
374
- .custom-virtual-scroll .scrollbar {
375
- background-color: #f0f0f0;
376
- }
377
-
378
- .custom-virtual-scroll .scrollbar-thumb {
379
- background-color: #007acc;
380
- border-radius: 4px;
381
- }
382
- </style>
399
+ ```css
400
+ /* The bar and its track. The stripe you see behind the thumb is the track. */
401
+ .custom-virtual-scroll .aqvs-scrollbar { background-color: #f0f0f0; }
402
+ .custom-virtual-scroll .aqvs-scrollbar-track { background-color: #e8e8e8; }
403
+
404
+ /* The thumb. Restate the states you want to keep — see "State rules are replaced" below. */
405
+ .custom-virtual-scroll .aqvs-scrollbar-thumb { background-color: #007acc; }
406
+ .custom-virtual-scroll .aqvs-scrollbar-thumb[data-thumb-state="hover"] { background-color: #3399dd; }
407
+ .custom-virtual-scroll .aqvs-scrollbar-thumb[data-thumb-state="dragging"] { background-color: #005c99; }
408
+ .custom-virtual-scroll .aqvs-scrollbar-thumb[data-thumb-state="disabled"] { background-color: #b0c4d4; }
409
+
410
+ /* Arrow buttons and the Top/Bottom pills. */
411
+ .custom-virtual-scroll .aqvs-scrollbar-arrow-button { background-color: #e8e8e8; color: #007acc; }
412
+ .custom-virtual-scroll .aqvs-scrollbar-arrow-button:enabled:hover { background-color: #cfe8f7; }
413
+ .custom-virtual-scroll .aqvs-scroll-to-edge-button { background-color: rgba(0, 122, 204, 0.85); }
414
+ .custom-virtual-scroll .aqvs-scroll-to-edge-button:hover { background-color: rgba(0, 92, 153, 0.9); }
383
415
  ```
384
416
 
417
+ The packaged rules live in `@layer components` in **both** artifacts, so an ordinary (unlayered) rule in
418
+ your app wins regardless of specificity and regardless of import order — no `!important`, no deeper
419
+ selector. Keep your rules unlayered: written inside a `@layer components { … }` block of your own you
420
+ re-enter the package's layer, and ordinary specificity — then source order — decides again. The example
421
+ above still wins there (every selector is prefixed with your wrapper class), but an unprefixed
422
+ `.aqvs-scrollbar-thumb { … }` in that layer loses on hover and while dragging, and an equally specific
423
+ rule loses outright if your stylesheet is ordered before the package's.
424
+
425
+ Three consequences are worth knowing:
426
+
427
+ - **State rules are replaced, not merged.** The thumb publishes `data-thumb-state` (`idle` / `hover` /
428
+ `dragging` / `disabled`; `disabled` whenever `scrollBarOptions.enableThumbDrag` is `false`). A single
429
+ flat `.aqvs-scrollbar-thumb { background-color: … }` freezes the thumb at that one colour, and the same
430
+ applies to `.aqvs-scrollbar-arrow-button:enabled:hover` and `.aqvs-scroll-to-edge-button:hover`. The
431
+ shape feedback survives untouched: `scaleX(1.06)` / `scaleX(1.12)` on a vertical bar, `scaleY(…)` on a
432
+ horizontal one — and the same state rules pull the cross-axis edges from `1.5px` to `-0.5px`, which is
433
+ most of the growth at the default `width: 12`.
434
+ - **Inline styles still outrank your rule.** Every size and position — the bar's width, the arrow buttons,
435
+ the thumb geometry — plus the thumb's `border-radius` / `cursor` and the track's `border-radius` are
436
+ written inline from `scrollBarOptions.width`, `viewportSize` and the scroll position. Change sizing
437
+ through the props; to re-round the corners use `!important`.
438
+ - **Do not hand-roll the hidden state.** When the content fits the viewport, the bar and the thumb wrapper
439
+ carry `data-visible="false"` and the packaged rule hides them (`opacity: 0; pointer-events: none`). If
440
+ you override `opacity` on `.aqvs-scrollbar`, scope it to `[data-visible="true"]`. The same applies to the
441
+ auto-hiding Top/Bottom pills — and there the hidden state is more than styling: `.aqvs-scroll-to-edge-overlay`
442
+ carries `inert` while hidden (and the pill `tabindex="-1"`) so it is not a phantom tab stop for keyboard
443
+ users. Forcing `opacity: 1` on the hidden overlay therefore paints a pill that cannot be clicked or focused.
444
+ Scope such rules to `[data-visible="true"]` as well.
445
+
446
+ The parts you are most likely to target: `.aqvs-scroll-pane` (root), `.aqvs-scroll-pane-content` (row
447
+ viewport), `.aqvs-scrollbar` (+ `-vertical` / `-horizontal`), `.aqvs-scrollbar-track`,
448
+ `.aqvs-scrollbar-thumb-wrapper`, `.aqvs-scrollbar-thumb` (+ `-vertical` / `-horizontal`),
449
+ `.aqvs-scrollbar-arrow-button`, `.aqvs-scroll-to-edge-overlay` / `-button`, `.aqvs-tap-scroll-circle`,
450
+ `.aqvs-item-container`.
451
+
385
452
  ### Tap Scroll Circle Configuration
386
453
 
387
454
  The auxiliary tap scroll circle can replace the native scrollbar for large datasets while remaining easy to control:
@@ -1 +1 @@
1
- {"version":3,"file":"ScrollBar.d.ts","sourceRoot":"","sources":["../src/ScrollBar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ScrollBar.d.ts","sourceRoot":"","sources":["../src/ScrollBar.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"VirtualScroll.d.ts","sourceRoot":"","sources":["../src/VirtualScroll.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VirtualScroll.d.ts","sourceRoot":"","sources":["../src/VirtualScroll.tsx"],"names":[],"mappings":"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"}