@tanstack/solid-virtual 3.0.0-beta.34 → 3.0.0-beta.35

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.
@@ -125,11 +125,21 @@
125
125
  };
126
126
  var observeElementRect = function observeElementRect(instance, cb) {
127
127
  var observer = new ResizeObserver(function (entries) {
128
- var _entries$, _entries$2;
129
- cb({
130
- width: (_entries$ = entries[0]) == null ? void 0 : _entries$.contentRect.width,
131
- height: (_entries$2 = entries[0]) == null ? void 0 : _entries$2.contentRect.height
132
- });
128
+ var entry = entries[0];
129
+ if (entry) {
130
+ var _entry$contentRect = entry.contentRect,
131
+ width = _entry$contentRect.width,
132
+ height = _entry$contentRect.height;
133
+ cb({
134
+ width: Math.round(width),
135
+ height: Math.round(height)
136
+ });
137
+ } else {
138
+ cb({
139
+ width: 0,
140
+ height: 0
141
+ });
142
+ }
133
143
  });
134
144
  if (!instance.scrollElement) {
135
145
  return;
@@ -540,7 +550,7 @@
540
550
  return _this.getOffsetForAlignment(toOffset, align);
541
551
  };
542
552
  var toOffset = getOffsetForIndexAndAlignment(measurement);
543
- if (Math.round(toOffset) === Math.round(offset)) {
553
+ if (toOffset === offset) {
544
554
  return;
545
555
  }
546
556
  var options = {
@@ -1 +1 @@
1
- {"version":3,"file":"index.development.js","sources":["../../../virtual-core/build/lib/_virtual/_rollupPluginBabelHelpers.mjs","../../../virtual-core/build/lib/utils.mjs","../../../virtual-core/build/lib/index.mjs","../../src/index.tsx"],"sourcesContent":["/**\n * virtual-core\n *\n * Copyright (c) TanStack\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nfunction _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}\n\nexport { _extends as extends };\n//# sourceMappingURL=_rollupPluginBabelHelpers.mjs.map\n","/**\n * virtual-core\n *\n * Copyright (c) TanStack\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nfunction memo(getDeps, fn, opts) {\n var deps = [];\n var result;\n return function () {\n var depTime;\n if (opts.key && opts.debug != null && opts.debug()) depTime = Date.now();\n var newDeps = getDeps();\n var depsChanged = newDeps.length !== deps.length || newDeps.some(function (dep, index) {\n return deps[index] !== dep;\n });\n if (!depsChanged) {\n return result;\n }\n deps = newDeps;\n var resultTime;\n if (opts.key && opts.debug != null && opts.debug()) resultTime = Date.now();\n result = fn.apply(void 0, newDeps);\n opts == null ? void 0 : opts.onChange == null ? void 0 : opts.onChange(result);\n if (opts.key && opts.debug != null && opts.debug()) {\n var depEndTime = Math.round((Date.now() - depTime) * 100) / 100;\n var resultEndTime = Math.round((Date.now() - resultTime) * 100) / 100;\n var resultFpsPercentage = resultEndTime / 16;\n var pad = function pad(str, num) {\n str = String(str);\n while (str.length < num) {\n str = ' ' + str;\n }\n return str;\n };\n console.info(\"%c\\u23F1 \" + pad(resultEndTime, 5) + \" /\" + pad(depEndTime, 5) + \" ms\", \"\\n font-size: .6rem;\\n font-weight: bold;\\n color: hsl(\" + Math.max(0, Math.min(120 - 120 * resultFpsPercentage, 120)) + \"deg 100% 31%);\", opts == null ? void 0 : opts.key);\n }\n return result;\n };\n}\n\nexport { memo };\n//# sourceMappingURL=utils.mjs.map\n","/**\n * virtual-core\n *\n * Copyright (c) TanStack\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nimport { extends as _extends } from './_virtual/_rollupPluginBabelHelpers.mjs';\nimport { memo } from './utils.mjs';\nexport { memo } from './utils.mjs';\n\n//\n\n//\n\nvar defaultKeyExtractor = function defaultKeyExtractor(index) {\n return index;\n};\nvar defaultRangeExtractor = function defaultRangeExtractor(range) {\n var start = Math.max(range.startIndex - range.overscan, 0);\n var end = Math.min(range.endIndex + range.overscan, range.count - 1);\n var arr = [];\n for (var _i = start; _i <= end; _i++) {\n arr.push(_i);\n }\n return arr;\n};\nvar memoRectCallback = function memoRectCallback(instance, cb) {\n var prev = {\n height: -1,\n width: -1\n };\n return function (rect) {\n if (instance.options.horizontal ? rect.width !== prev.width : rect.height !== prev.height) {\n cb(rect);\n }\n prev = rect;\n };\n};\nvar observeElementRect = function observeElementRect(instance, cb) {\n var observer = new ResizeObserver(function (entries) {\n var _entries$, _entries$2;\n cb({\n width: (_entries$ = entries[0]) == null ? void 0 : _entries$.contentRect.width,\n height: (_entries$2 = entries[0]) == null ? void 0 : _entries$2.contentRect.height\n });\n });\n if (!instance.scrollElement) {\n return;\n }\n cb(instance.scrollElement.getBoundingClientRect());\n observer.observe(instance.scrollElement);\n return function () {\n observer.unobserve(instance.scrollElement);\n };\n};\nvar observeWindowRect = function observeWindowRect(instance, cb) {\n var memoizedCallback = memoRectCallback(instance, cb);\n var onResize = function onResize() {\n return memoizedCallback({\n width: instance.scrollElement.innerWidth,\n height: instance.scrollElement.innerHeight\n });\n };\n if (!instance.scrollElement) {\n return;\n }\n onResize();\n instance.scrollElement.addEventListener('resize', onResize, {\n capture: false,\n passive: true\n });\n return function () {\n instance.scrollElement.removeEventListener('resize', onResize);\n };\n};\nvar scrollProps = {\n element: ['scrollLeft', 'scrollTop'],\n window: ['scrollX', 'scrollY']\n};\nvar createOffsetObserver = function createOffsetObserver(mode) {\n return function (instance, cb) {\n if (!instance.scrollElement) {\n return;\n }\n var propX = scrollProps[mode][0];\n var propY = scrollProps[mode][1];\n var prevX = instance.scrollElement[propX];\n var prevY = instance.scrollElement[propY];\n var scroll = function scroll() {\n var offset = instance.scrollElement[instance.options.horizontal ? propX : propY];\n cb(offset);\n };\n scroll();\n var onScroll = function onScroll(e) {\n var target = e.currentTarget;\n var scrollX = target[propX];\n var scrollY = target[propY];\n if (instance.options.horizontal ? prevX - scrollX : prevY - scrollY) {\n scroll();\n }\n prevX = scrollX;\n prevY = scrollY;\n };\n instance.scrollElement.addEventListener('scroll', onScroll, {\n capture: false,\n passive: true\n });\n return function () {\n instance.scrollElement.removeEventListener('scroll', onScroll);\n };\n };\n};\nvar observeElementOffset = createOffsetObserver('element');\nvar observeWindowOffset = createOffsetObserver('window');\nvar measureElement = function measureElement(element, instance) {\n return Math.round(element.getBoundingClientRect()[instance.options.horizontal ? 'width' : 'height']);\n};\nvar windowScroll = function windowScroll(offset, _ref, instance) {\n var _instance$scrollEleme, _instance$scrollEleme2;\n var _ref$adjustments = _ref.adjustments,\n adjustments = _ref$adjustments === void 0 ? 0 : _ref$adjustments,\n behavior = _ref.behavior;\n var toOffset = offset + adjustments;\n (_instance$scrollEleme = instance.scrollElement) == null ? void 0 : _instance$scrollEleme.scrollTo == null ? void 0 : _instance$scrollEleme.scrollTo((_instance$scrollEleme2 = {}, _instance$scrollEleme2[instance.options.horizontal ? 'left' : 'top'] = toOffset, _instance$scrollEleme2.behavior = behavior, _instance$scrollEleme2));\n};\nvar elementScroll = function elementScroll(offset, _ref2, instance) {\n var _instance$scrollEleme3, _instance$scrollEleme4;\n var _ref2$adjustments = _ref2.adjustments,\n adjustments = _ref2$adjustments === void 0 ? 0 : _ref2$adjustments,\n behavior = _ref2.behavior;\n var toOffset = offset + adjustments;\n (_instance$scrollEleme3 = instance.scrollElement) == null ? void 0 : _instance$scrollEleme3.scrollTo == null ? void 0 : _instance$scrollEleme3.scrollTo((_instance$scrollEleme4 = {}, _instance$scrollEleme4[instance.options.horizontal ? 'left' : 'top'] = toOffset, _instance$scrollEleme4.behavior = behavior, _instance$scrollEleme4));\n};\nvar Virtualizer = function Virtualizer(_opts) {\n var _this = this;\n this.unsubs = [];\n this.scrollElement = null;\n this.isScrolling = false;\n this.isScrollingTimeoutId = null;\n this.measurementsCache = [];\n this.itemSizeCache = {};\n this.pendingMeasuredCacheIndexes = [];\n this.scrollDirection = null;\n this.scrollAdjustments = 0;\n this.measureElementCache = {};\n this.pendingScrollToIndexCallback = null;\n this.getResizeObserver = function () {\n var _ro = null;\n return function () {\n if (_ro) {\n return _ro;\n } else if (typeof ResizeObserver !== 'undefined') {\n return _ro = new ResizeObserver(function (entries) {\n entries.forEach(function (entry) {\n _this._measureElement(entry.target, false);\n });\n });\n } else {\n return null;\n }\n };\n }();\n this.range = {\n startIndex: 0,\n endIndex: 0\n };\n this.setOptions = function (opts) {\n Object.entries(opts).forEach(function (_ref3) {\n var key = _ref3[0],\n value = _ref3[1];\n if (typeof value === 'undefined') delete opts[key];\n });\n _this.options = _extends({\n debug: false,\n initialOffset: 0,\n overscan: 1,\n paddingStart: 0,\n paddingEnd: 0,\n scrollPaddingStart: 0,\n scrollPaddingEnd: 0,\n horizontal: false,\n getItemKey: defaultKeyExtractor,\n rangeExtractor: defaultRangeExtractor,\n onChange: function onChange() {},\n measureElement: measureElement,\n initialRect: {\n width: 0,\n height: 0\n },\n scrollMargin: 0,\n scrollingDelay: 150,\n indexAttribute: 'data-index',\n initialMeasurementsCache: []\n }, opts);\n };\n this.notify = function () {\n _this.options.onChange == null ? void 0 : _this.options.onChange(_this);\n };\n this.cleanup = function () {\n _this.unsubs.filter(Boolean).forEach(function (d) {\n return d();\n });\n _this.unsubs = [];\n _this.scrollElement = null;\n };\n this._didMount = function () {\n var ro = _this.getResizeObserver();\n Object.values(_this.measureElementCache).forEach(function (node) {\n return ro == null ? void 0 : ro.observe(node);\n });\n return function () {\n ro == null ? void 0 : ro.disconnect();\n _this.cleanup();\n };\n };\n this._willUpdate = function () {\n _this.pendingScrollToIndexCallback == null ? void 0 : _this.pendingScrollToIndexCallback();\n var scrollElement = _this.options.getScrollElement();\n if (_this.scrollElement !== scrollElement) {\n _this.cleanup();\n _this.scrollElement = scrollElement;\n _this._scrollToOffset(_this.scrollOffset, {\n adjustments: undefined,\n behavior: undefined\n });\n _this.unsubs.push(_this.options.observeElementRect(_this, function (rect) {\n _this.scrollRect = rect;\n _this.calculateRange();\n }));\n _this.unsubs.push(_this.options.observeElementOffset(_this, function (offset) {\n _this.scrollAdjustments = 0;\n if (_this.scrollOffset === offset) {\n return;\n }\n if (_this.isScrollingTimeoutId !== null) {\n clearTimeout(_this.isScrollingTimeoutId);\n _this.isScrollingTimeoutId = null;\n }\n var onIsScrollingChange = function onIsScrollingChange(isScrolling) {\n if (_this.isScrolling !== isScrolling) {\n _this.isScrolling = isScrolling;\n _this.notify();\n }\n };\n _this.scrollDirection = _this.scrollOffset < offset ? 'forward' : 'backward';\n _this.scrollOffset = offset;\n _this.calculateRange();\n onIsScrollingChange(true);\n _this.isScrollingTimeoutId = setTimeout(function () {\n _this.isScrollingTimeoutId = null;\n _this.scrollDirection = null;\n onIsScrollingChange(false);\n }, _this.options.scrollingDelay);\n }));\n } else if (!_this.isScrolling) {\n _this.calculateRange();\n }\n };\n this.getSize = function () {\n return _this.scrollRect[_this.options.horizontal ? 'width' : 'height'];\n };\n this.getMeasurements = memo(function () {\n return [_this.options.count, _this.options.paddingStart, _this.options.scrollMargin, _this.options.getItemKey, _this.itemSizeCache];\n }, function (count, paddingStart, scrollMargin, getItemKey, itemSizeCache) {\n var min = _this.pendingMeasuredCacheIndexes.length > 0 ? Math.min.apply(Math, _this.pendingMeasuredCacheIndexes) : 0;\n _this.pendingMeasuredCacheIndexes = [];\n var measurements = _this.measurementsCache.slice(0, min);\n for (var _i2 = min; _i2 < count; _i2++) {\n var key = getItemKey(_i2);\n var measuredSize = itemSizeCache[key];\n var start = measurements[_i2 - 1] ? measurements[_i2 - 1].end : paddingStart + scrollMargin;\n var size = typeof measuredSize === 'number' ? measuredSize : _this.options.estimateSize(_i2);\n var end = start + size;\n measurements[_i2] = {\n index: _i2,\n start: start,\n size: size,\n end: end,\n key: key\n };\n }\n _this.measurementsCache = measurements;\n return measurements;\n }, {\n key: process.env.NODE_ENV !== 'production' && 'getMeasurements',\n debug: function debug() {\n return _this.options.debug;\n }\n });\n this.calculateRange = memo(function () {\n return [_this.getMeasurements(), _this.getSize(), _this.scrollOffset];\n }, function (measurements, outerSize, scrollOffset) {\n var range = calculateRange({\n measurements: measurements,\n outerSize: outerSize,\n scrollOffset: scrollOffset\n });\n if (range.startIndex !== _this.range.startIndex || range.endIndex !== _this.range.endIndex) {\n _this.range = range;\n _this.notify();\n }\n return _this.range;\n }, {\n key: process.env.NODE_ENV !== 'production' && 'calculateRange',\n debug: function debug() {\n return _this.options.debug;\n }\n });\n this.getIndexes = memo(function () {\n return [_this.options.rangeExtractor, _this.range, _this.options.overscan, _this.options.count];\n }, function (rangeExtractor, range, overscan, count) {\n return rangeExtractor(_extends({}, range, {\n overscan: overscan,\n count: count\n }));\n }, {\n key: process.env.NODE_ENV !== 'production' && 'getIndexes',\n debug: function debug() {\n return _this.options.debug;\n }\n });\n this.indexFromElement = function (node) {\n var attributeName = _this.options.indexAttribute;\n var indexStr = node.getAttribute(attributeName);\n if (!indexStr) {\n console.warn(\"Missing attribute name '\" + attributeName + \"={index}' on measured element.\");\n return -1;\n }\n return parseInt(indexStr, 10);\n };\n this._measureElement = function (node, _sync) {\n var _this$itemSizeCache$i;\n var index = _this.indexFromElement(node);\n var item = _this.measurementsCache[index];\n if (!item) {\n return;\n }\n var prevNode = _this.measureElementCache[item.key];\n var ro = _this.getResizeObserver();\n if (!node.isConnected) {\n if (prevNode) {\n ro == null ? void 0 : ro.unobserve(prevNode);\n delete _this.measureElementCache[item.key];\n }\n return;\n }\n if (!prevNode || prevNode !== node) {\n if (prevNode) {\n ro == null ? void 0 : ro.unobserve(prevNode);\n }\n _this.measureElementCache[item.key] = node;\n ro == null ? void 0 : ro.observe(node);\n }\n var measuredItemSize = _this.options.measureElement(node, _this);\n var itemSize = (_this$itemSizeCache$i = _this.itemSizeCache[item.key]) != null ? _this$itemSizeCache$i : item.size;\n var delta = measuredItemSize - itemSize;\n if (delta !== 0) {\n var _extends2;\n if (item.start < _this.scrollOffset && _this.isScrolling && _this.scrollDirection === 'backward') {\n if (process.env.NODE_ENV !== 'production' && _this.options.debug) {\n console.info('correction', delta);\n }\n _this._scrollToOffset(_this.scrollOffset, {\n adjustments: _this.scrollAdjustments += delta,\n behavior: undefined\n });\n }\n _this.pendingMeasuredCacheIndexes.push(index);\n _this.itemSizeCache = _extends({}, _this.itemSizeCache, (_extends2 = {}, _extends2[item.key] = measuredItemSize, _extends2));\n _this.notify();\n }\n };\n this.measureElement = function (node) {\n if (!node) {\n return;\n }\n _this._measureElement(node, true);\n };\n this.getVirtualItems = memo(function () {\n return [_this.getIndexes(), _this.getMeasurements()];\n }, function (indexes, measurements) {\n var virtualItems = [];\n for (var k = 0, len = indexes.length; k < len; k++) {\n var _i3 = indexes[k];\n var measurement = measurements[_i3];\n virtualItems.push(measurement);\n }\n return virtualItems;\n }, {\n key: process.env.NODE_ENV !== 'production' && 'getIndexes',\n debug: function debug() {\n return _this.options.debug;\n }\n });\n this.getOffsetForAlignment = function (toOffset, align) {\n var offset = _this.scrollOffset;\n var size = _this.getSize();\n if (align === 'auto') {\n if (toOffset <= offset) {\n align = 'start';\n } else if (toOffset >= offset + size) {\n align = 'end';\n } else {\n align = 'start';\n }\n }\n if (align === 'start') {\n return toOffset;\n } else if (align === 'end') {\n return toOffset - size;\n } else if (align === 'center') {\n return toOffset - size / 2;\n }\n return toOffset;\n };\n this.scrollToOffset = function (toOffset, _temp) {\n var _ref4 = _temp === void 0 ? {} : _temp,\n _ref4$align = _ref4.align,\n align = _ref4$align === void 0 ? 'start' : _ref4$align,\n behavior = _ref4.behavior;\n var options = {\n adjustments: undefined,\n behavior: behavior,\n sync: false\n };\n _this._scrollToOffset(_this.getOffsetForAlignment(toOffset, align), options);\n };\n this.scrollToIndex = function (index, _temp2) {\n var _ref5 = _temp2 === void 0 ? {} : _temp2,\n _ref5$align = _ref5.align,\n align = _ref5$align === void 0 ? 'auto' : _ref5$align,\n behavior = _ref5.behavior;\n _this.pendingScrollToIndexCallback = null;\n var offset = _this.scrollOffset;\n var size = _this.getSize();\n var count = _this.options.count;\n var measurements = _this.getMeasurements();\n var measurement = measurements[Math.max(0, Math.min(index, count - 1))];\n if (!measurement) {\n throw new Error(\"VirtualItem not found for index = \" + index);\n }\n if (align === 'auto') {\n if (measurement.end >= offset + size - _this.options.scrollPaddingEnd) {\n align = 'end';\n } else if (measurement.start <= offset + _this.options.scrollPaddingStart) {\n align = 'start';\n } else {\n return;\n }\n }\n var getOffsetForIndexAndAlignment = function getOffsetForIndexAndAlignment(measurement) {\n var toOffset = align === 'end' ? measurement.end + _this.options.scrollPaddingEnd : measurement.start - _this.options.scrollPaddingStart;\n return _this.getOffsetForAlignment(toOffset, align);\n };\n var toOffset = getOffsetForIndexAndAlignment(measurement);\n if (Math.round(toOffset) === Math.round(offset)) {\n return;\n }\n var options = {\n adjustments: undefined,\n behavior: behavior\n };\n _this._scrollToOffset(toOffset, options);\n var isDynamic = Object.keys(_this.measureElementCache).length > 0;\n if (isDynamic) {\n _this.pendingScrollToIndexCallback = function () {\n _this.scrollToIndex(index, {\n align: align,\n behavior: behavior\n });\n };\n }\n };\n this.scrollBy = function (adjustments, options) {\n _this._scrollToOffset(_this.scrollOffset, {\n adjustments: adjustments,\n behavior: options == null ? void 0 : options.behavior\n });\n };\n this.getTotalSize = function () {\n var _this$getMeasurements;\n return (((_this$getMeasurements = _this.getMeasurements()[_this.options.count - 1]) == null ? void 0 : _this$getMeasurements.end) || _this.options.paddingStart) - _this.options.scrollMargin + _this.options.paddingEnd;\n };\n this._scrollToOffset = function (offset, _ref6) {\n var adjustments = _ref6.adjustments,\n behavior = _ref6.behavior;\n _this.options.scrollToFn(offset, {\n behavior: behavior,\n adjustments: adjustments\n }, _this);\n };\n this.measure = function () {\n _this.itemSizeCache = {};\n _this.notify();\n };\n this.setOptions(_opts);\n this.scrollRect = this.options.initialRect;\n this.scrollOffset = this.options.initialOffset;\n this.measurementsCache = this.options.initialMeasurementsCache;\n this.measurementsCache.forEach(function (item) {\n _this.itemSizeCache[item.key] = item.size;\n });\n this.calculateRange();\n};\nvar findNearestBinarySearch = function findNearestBinarySearch(low, high, getCurrentValue, value) {\n while (low <= high) {\n var middle = (low + high) / 2 | 0;\n var currentValue = getCurrentValue(middle);\n if (currentValue < value) {\n low = middle + 1;\n } else if (currentValue > value) {\n high = middle - 1;\n } else {\n return middle;\n }\n }\n if (low > 0) {\n return low - 1;\n } else {\n return 0;\n }\n};\nfunction calculateRange(_ref7) {\n var measurements = _ref7.measurements,\n outerSize = _ref7.outerSize,\n scrollOffset = _ref7.scrollOffset;\n var count = measurements.length - 1;\n var getOffset = function getOffset(index) {\n return measurements[index].start;\n };\n var startIndex = findNearestBinarySearch(0, count, getOffset, scrollOffset);\n var endIndex = startIndex;\n while (endIndex < count && measurements[endIndex].end < scrollOffset + outerSize) {\n endIndex++;\n }\n return {\n startIndex: startIndex,\n endIndex: endIndex\n };\n}\n\nexport { Virtualizer, defaultKeyExtractor, defaultRangeExtractor, elementScroll, measureElement, observeElementOffset, observeElementRect, observeWindowOffset, observeWindowRect, windowScroll };\n//# sourceMappingURL=index.mjs.map\n","import {\n elementScroll,\n observeElementOffset,\n observeElementRect,\n observeWindowOffset,\n observeWindowRect,\n PartialKeys,\n Virtualizer,\n VirtualizerOptions,\n windowScroll,\n} from '@tanstack/virtual-core'\nexport * from '@tanstack/virtual-core'\n\nimport {\n createSignal,\n onMount,\n onCleanup,\n createComputed,\n mergeProps,\n} from 'solid-js'\nimport { createStore, reconcile } from 'solid-js/store'\n\nfunction createVirtualizerBase<\n TScrollElement extends Element | Window,\n TItemElement extends Element,\n>(\n options: VirtualizerOptions<TScrollElement, TItemElement>,\n): Virtualizer<TScrollElement, TItemElement> {\n const resolvedOptions: VirtualizerOptions<TScrollElement, TItemElement> =\n mergeProps(options)\n\n const instance = new Virtualizer<TScrollElement, TItemElement>(\n resolvedOptions,\n )\n\n const [virtualItems, setVirtualItems] = createStore(\n instance.getVirtualItems(),\n )\n const [totalSize, setTotalSize] = createSignal(instance.getTotalSize())\n\n const handler = {\n get(\n target: Virtualizer<TScrollElement, TItemElement>,\n prop: keyof Virtualizer<TScrollElement, TItemElement>,\n ) {\n switch (prop) {\n case 'getVirtualItems':\n return () => virtualItems\n case 'getTotalSize':\n return () => totalSize()\n default:\n return Reflect.get(target, prop)\n }\n },\n }\n\n const virtualizer = new Proxy(instance, handler)\n virtualizer.setOptions(resolvedOptions)\n\n onMount(() => {\n const cleanup = virtualizer._didMount()\n virtualizer._willUpdate()\n onCleanup(cleanup)\n })\n\n createComputed(() => {\n virtualizer.setOptions(\n mergeProps(resolvedOptions, options, {\n onChange: (instance: Virtualizer<TScrollElement, TItemElement>) => {\n instance._willUpdate()\n setVirtualItems(\n reconcile(instance.getVirtualItems(), {\n key: 'index',\n }),\n )\n setTotalSize(instance.getTotalSize())\n options.onChange?.(instance)\n },\n }),\n )\n virtualizer.measure()\n })\n\n return virtualizer\n}\n\nexport function createVirtualizer<\n TScrollElement extends Element,\n TItemElement extends Element,\n>(\n options: PartialKeys<\n VirtualizerOptions<TScrollElement, TItemElement>,\n 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'\n >,\n): Virtualizer<TScrollElement, TItemElement> {\n return createVirtualizerBase<TScrollElement, TItemElement>(\n mergeProps(\n {\n observeElementRect: observeElementRect,\n observeElementOffset: observeElementOffset,\n scrollToFn: elementScroll,\n },\n options,\n ),\n )\n}\n\nexport function createWindowVirtualizer<TItemElement extends Element>(\n options: PartialKeys<\n VirtualizerOptions<Window, TItemElement>,\n | 'getScrollElement'\n | 'observeElementRect'\n | 'observeElementOffset'\n | 'scrollToFn'\n >,\n): Virtualizer<Window, TItemElement> {\n return createVirtualizerBase<Window, TItemElement>(\n mergeProps(\n {\n getScrollElement: () =>\n typeof window !== 'undefined' ? window : null!,\n observeElementRect: observeWindowRect,\n observeElementOffset: observeWindowOffset,\n scrollToFn: windowScroll,\n },\n options,\n ),\n )\n}\n"],"names":["createVirtualizerBase","options","resolvedOptions","mergeProps","instance","Virtualizer","createStore","getVirtualItems","virtualItems","setVirtualItems","createSignal","getTotalSize","totalSize","setTotalSize","handler","get","target","prop","Reflect","virtualizer","Proxy","setOptions","onMount","cleanup","_didMount","_willUpdate","onCleanup","createComputed","onChange","reconcile","key","measure","createVirtualizer","observeElementRect","observeElementOffset","scrollToFn","elementScroll","createWindowVirtualizer","getScrollElement","window","observeWindowRect","observeWindowOffset","windowScroll"],"mappings":"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"}
1
+ {"version":3,"file":"index.development.js","sources":["../../../virtual-core/build/lib/_virtual/_rollupPluginBabelHelpers.mjs","../../../virtual-core/build/lib/utils.mjs","../../../virtual-core/build/lib/index.mjs","../../src/index.tsx"],"sourcesContent":["/**\n * virtual-core\n *\n * Copyright (c) TanStack\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nfunction _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}\n\nexport { _extends as extends };\n//# sourceMappingURL=_rollupPluginBabelHelpers.mjs.map\n","/**\n * virtual-core\n *\n * Copyright (c) TanStack\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nfunction memo(getDeps, fn, opts) {\n var deps = [];\n var result;\n return function () {\n var depTime;\n if (opts.key && opts.debug != null && opts.debug()) depTime = Date.now();\n var newDeps = getDeps();\n var depsChanged = newDeps.length !== deps.length || newDeps.some(function (dep, index) {\n return deps[index] !== dep;\n });\n if (!depsChanged) {\n return result;\n }\n deps = newDeps;\n var resultTime;\n if (opts.key && opts.debug != null && opts.debug()) resultTime = Date.now();\n result = fn.apply(void 0, newDeps);\n opts == null ? void 0 : opts.onChange == null ? void 0 : opts.onChange(result);\n if (opts.key && opts.debug != null && opts.debug()) {\n var depEndTime = Math.round((Date.now() - depTime) * 100) / 100;\n var resultEndTime = Math.round((Date.now() - resultTime) * 100) / 100;\n var resultFpsPercentage = resultEndTime / 16;\n var pad = function pad(str, num) {\n str = String(str);\n while (str.length < num) {\n str = ' ' + str;\n }\n return str;\n };\n console.info(\"%c\\u23F1 \" + pad(resultEndTime, 5) + \" /\" + pad(depEndTime, 5) + \" ms\", \"\\n font-size: .6rem;\\n font-weight: bold;\\n color: hsl(\" + Math.max(0, Math.min(120 - 120 * resultFpsPercentage, 120)) + \"deg 100% 31%);\", opts == null ? void 0 : opts.key);\n }\n return result;\n };\n}\n\nexport { memo };\n//# sourceMappingURL=utils.mjs.map\n","/**\n * virtual-core\n *\n * Copyright (c) TanStack\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nimport { extends as _extends } from './_virtual/_rollupPluginBabelHelpers.mjs';\nimport { memo } from './utils.mjs';\nexport { memo } from './utils.mjs';\n\n//\n\n//\n\nvar defaultKeyExtractor = function defaultKeyExtractor(index) {\n return index;\n};\nvar defaultRangeExtractor = function defaultRangeExtractor(range) {\n var start = Math.max(range.startIndex - range.overscan, 0);\n var end = Math.min(range.endIndex + range.overscan, range.count - 1);\n var arr = [];\n for (var _i = start; _i <= end; _i++) {\n arr.push(_i);\n }\n return arr;\n};\nvar memoRectCallback = function memoRectCallback(instance, cb) {\n var prev = {\n height: -1,\n width: -1\n };\n return function (rect) {\n if (instance.options.horizontal ? rect.width !== prev.width : rect.height !== prev.height) {\n cb(rect);\n }\n prev = rect;\n };\n};\nvar observeElementRect = function observeElementRect(instance, cb) {\n var observer = new ResizeObserver(function (entries) {\n var entry = entries[0];\n if (entry) {\n var _entry$contentRect = entry.contentRect,\n width = _entry$contentRect.width,\n height = _entry$contentRect.height;\n cb({\n width: Math.round(width),\n height: Math.round(height)\n });\n } else {\n cb({\n width: 0,\n height: 0\n });\n }\n });\n if (!instance.scrollElement) {\n return;\n }\n cb(instance.scrollElement.getBoundingClientRect());\n observer.observe(instance.scrollElement);\n return function () {\n observer.unobserve(instance.scrollElement);\n };\n};\nvar observeWindowRect = function observeWindowRect(instance, cb) {\n var memoizedCallback = memoRectCallback(instance, cb);\n var onResize = function onResize() {\n return memoizedCallback({\n width: instance.scrollElement.innerWidth,\n height: instance.scrollElement.innerHeight\n });\n };\n if (!instance.scrollElement) {\n return;\n }\n onResize();\n instance.scrollElement.addEventListener('resize', onResize, {\n capture: false,\n passive: true\n });\n return function () {\n instance.scrollElement.removeEventListener('resize', onResize);\n };\n};\nvar scrollProps = {\n element: ['scrollLeft', 'scrollTop'],\n window: ['scrollX', 'scrollY']\n};\nvar createOffsetObserver = function createOffsetObserver(mode) {\n return function (instance, cb) {\n if (!instance.scrollElement) {\n return;\n }\n var propX = scrollProps[mode][0];\n var propY = scrollProps[mode][1];\n var prevX = instance.scrollElement[propX];\n var prevY = instance.scrollElement[propY];\n var scroll = function scroll() {\n var offset = instance.scrollElement[instance.options.horizontal ? propX : propY];\n cb(offset);\n };\n scroll();\n var onScroll = function onScroll(e) {\n var target = e.currentTarget;\n var scrollX = target[propX];\n var scrollY = target[propY];\n if (instance.options.horizontal ? prevX - scrollX : prevY - scrollY) {\n scroll();\n }\n prevX = scrollX;\n prevY = scrollY;\n };\n instance.scrollElement.addEventListener('scroll', onScroll, {\n capture: false,\n passive: true\n });\n return function () {\n instance.scrollElement.removeEventListener('scroll', onScroll);\n };\n };\n};\nvar observeElementOffset = createOffsetObserver('element');\nvar observeWindowOffset = createOffsetObserver('window');\nvar measureElement = function measureElement(element, instance) {\n return Math.round(element.getBoundingClientRect()[instance.options.horizontal ? 'width' : 'height']);\n};\nvar windowScroll = function windowScroll(offset, _ref, instance) {\n var _instance$scrollEleme, _instance$scrollEleme2;\n var _ref$adjustments = _ref.adjustments,\n adjustments = _ref$adjustments === void 0 ? 0 : _ref$adjustments,\n behavior = _ref.behavior;\n var toOffset = offset + adjustments;\n (_instance$scrollEleme = instance.scrollElement) == null ? void 0 : _instance$scrollEleme.scrollTo == null ? void 0 : _instance$scrollEleme.scrollTo((_instance$scrollEleme2 = {}, _instance$scrollEleme2[instance.options.horizontal ? 'left' : 'top'] = toOffset, _instance$scrollEleme2.behavior = behavior, _instance$scrollEleme2));\n};\nvar elementScroll = function elementScroll(offset, _ref2, instance) {\n var _instance$scrollEleme3, _instance$scrollEleme4;\n var _ref2$adjustments = _ref2.adjustments,\n adjustments = _ref2$adjustments === void 0 ? 0 : _ref2$adjustments,\n behavior = _ref2.behavior;\n var toOffset = offset + adjustments;\n (_instance$scrollEleme3 = instance.scrollElement) == null ? void 0 : _instance$scrollEleme3.scrollTo == null ? void 0 : _instance$scrollEleme3.scrollTo((_instance$scrollEleme4 = {}, _instance$scrollEleme4[instance.options.horizontal ? 'left' : 'top'] = toOffset, _instance$scrollEleme4.behavior = behavior, _instance$scrollEleme4));\n};\nvar Virtualizer = function Virtualizer(_opts) {\n var _this = this;\n this.unsubs = [];\n this.scrollElement = null;\n this.isScrolling = false;\n this.isScrollingTimeoutId = null;\n this.measurementsCache = [];\n this.itemSizeCache = {};\n this.pendingMeasuredCacheIndexes = [];\n this.scrollDirection = null;\n this.scrollAdjustments = 0;\n this.measureElementCache = {};\n this.pendingScrollToIndexCallback = null;\n this.getResizeObserver = function () {\n var _ro = null;\n return function () {\n if (_ro) {\n return _ro;\n } else if (typeof ResizeObserver !== 'undefined') {\n return _ro = new ResizeObserver(function (entries) {\n entries.forEach(function (entry) {\n _this._measureElement(entry.target, false);\n });\n });\n } else {\n return null;\n }\n };\n }();\n this.range = {\n startIndex: 0,\n endIndex: 0\n };\n this.setOptions = function (opts) {\n Object.entries(opts).forEach(function (_ref3) {\n var key = _ref3[0],\n value = _ref3[1];\n if (typeof value === 'undefined') delete opts[key];\n });\n _this.options = _extends({\n debug: false,\n initialOffset: 0,\n overscan: 1,\n paddingStart: 0,\n paddingEnd: 0,\n scrollPaddingStart: 0,\n scrollPaddingEnd: 0,\n horizontal: false,\n getItemKey: defaultKeyExtractor,\n rangeExtractor: defaultRangeExtractor,\n onChange: function onChange() {},\n measureElement: measureElement,\n initialRect: {\n width: 0,\n height: 0\n },\n scrollMargin: 0,\n scrollingDelay: 150,\n indexAttribute: 'data-index',\n initialMeasurementsCache: []\n }, opts);\n };\n this.notify = function () {\n _this.options.onChange == null ? void 0 : _this.options.onChange(_this);\n };\n this.cleanup = function () {\n _this.unsubs.filter(Boolean).forEach(function (d) {\n return d();\n });\n _this.unsubs = [];\n _this.scrollElement = null;\n };\n this._didMount = function () {\n var ro = _this.getResizeObserver();\n Object.values(_this.measureElementCache).forEach(function (node) {\n return ro == null ? void 0 : ro.observe(node);\n });\n return function () {\n ro == null ? void 0 : ro.disconnect();\n _this.cleanup();\n };\n };\n this._willUpdate = function () {\n _this.pendingScrollToIndexCallback == null ? void 0 : _this.pendingScrollToIndexCallback();\n var scrollElement = _this.options.getScrollElement();\n if (_this.scrollElement !== scrollElement) {\n _this.cleanup();\n _this.scrollElement = scrollElement;\n _this._scrollToOffset(_this.scrollOffset, {\n adjustments: undefined,\n behavior: undefined\n });\n _this.unsubs.push(_this.options.observeElementRect(_this, function (rect) {\n _this.scrollRect = rect;\n _this.calculateRange();\n }));\n _this.unsubs.push(_this.options.observeElementOffset(_this, function (offset) {\n _this.scrollAdjustments = 0;\n if (_this.scrollOffset === offset) {\n return;\n }\n if (_this.isScrollingTimeoutId !== null) {\n clearTimeout(_this.isScrollingTimeoutId);\n _this.isScrollingTimeoutId = null;\n }\n var onIsScrollingChange = function onIsScrollingChange(isScrolling) {\n if (_this.isScrolling !== isScrolling) {\n _this.isScrolling = isScrolling;\n _this.notify();\n }\n };\n _this.scrollDirection = _this.scrollOffset < offset ? 'forward' : 'backward';\n _this.scrollOffset = offset;\n _this.calculateRange();\n onIsScrollingChange(true);\n _this.isScrollingTimeoutId = setTimeout(function () {\n _this.isScrollingTimeoutId = null;\n _this.scrollDirection = null;\n onIsScrollingChange(false);\n }, _this.options.scrollingDelay);\n }));\n } else if (!_this.isScrolling) {\n _this.calculateRange();\n }\n };\n this.getSize = function () {\n return _this.scrollRect[_this.options.horizontal ? 'width' : 'height'];\n };\n this.getMeasurements = memo(function () {\n return [_this.options.count, _this.options.paddingStart, _this.options.scrollMargin, _this.options.getItemKey, _this.itemSizeCache];\n }, function (count, paddingStart, scrollMargin, getItemKey, itemSizeCache) {\n var min = _this.pendingMeasuredCacheIndexes.length > 0 ? Math.min.apply(Math, _this.pendingMeasuredCacheIndexes) : 0;\n _this.pendingMeasuredCacheIndexes = [];\n var measurements = _this.measurementsCache.slice(0, min);\n for (var _i2 = min; _i2 < count; _i2++) {\n var key = getItemKey(_i2);\n var measuredSize = itemSizeCache[key];\n var start = measurements[_i2 - 1] ? measurements[_i2 - 1].end : paddingStart + scrollMargin;\n var size = typeof measuredSize === 'number' ? measuredSize : _this.options.estimateSize(_i2);\n var end = start + size;\n measurements[_i2] = {\n index: _i2,\n start: start,\n size: size,\n end: end,\n key: key\n };\n }\n _this.measurementsCache = measurements;\n return measurements;\n }, {\n key: process.env.NODE_ENV !== 'production' && 'getMeasurements',\n debug: function debug() {\n return _this.options.debug;\n }\n });\n this.calculateRange = memo(function () {\n return [_this.getMeasurements(), _this.getSize(), _this.scrollOffset];\n }, function (measurements, outerSize, scrollOffset) {\n var range = calculateRange({\n measurements: measurements,\n outerSize: outerSize,\n scrollOffset: scrollOffset\n });\n if (range.startIndex !== _this.range.startIndex || range.endIndex !== _this.range.endIndex) {\n _this.range = range;\n _this.notify();\n }\n return _this.range;\n }, {\n key: process.env.NODE_ENV !== 'production' && 'calculateRange',\n debug: function debug() {\n return _this.options.debug;\n }\n });\n this.getIndexes = memo(function () {\n return [_this.options.rangeExtractor, _this.range, _this.options.overscan, _this.options.count];\n }, function (rangeExtractor, range, overscan, count) {\n return rangeExtractor(_extends({}, range, {\n overscan: overscan,\n count: count\n }));\n }, {\n key: process.env.NODE_ENV !== 'production' && 'getIndexes',\n debug: function debug() {\n return _this.options.debug;\n }\n });\n this.indexFromElement = function (node) {\n var attributeName = _this.options.indexAttribute;\n var indexStr = node.getAttribute(attributeName);\n if (!indexStr) {\n console.warn(\"Missing attribute name '\" + attributeName + \"={index}' on measured element.\");\n return -1;\n }\n return parseInt(indexStr, 10);\n };\n this._measureElement = function (node, _sync) {\n var _this$itemSizeCache$i;\n var index = _this.indexFromElement(node);\n var item = _this.measurementsCache[index];\n if (!item) {\n return;\n }\n var prevNode = _this.measureElementCache[item.key];\n var ro = _this.getResizeObserver();\n if (!node.isConnected) {\n if (prevNode) {\n ro == null ? void 0 : ro.unobserve(prevNode);\n delete _this.measureElementCache[item.key];\n }\n return;\n }\n if (!prevNode || prevNode !== node) {\n if (prevNode) {\n ro == null ? void 0 : ro.unobserve(prevNode);\n }\n _this.measureElementCache[item.key] = node;\n ro == null ? void 0 : ro.observe(node);\n }\n var measuredItemSize = _this.options.measureElement(node, _this);\n var itemSize = (_this$itemSizeCache$i = _this.itemSizeCache[item.key]) != null ? _this$itemSizeCache$i : item.size;\n var delta = measuredItemSize - itemSize;\n if (delta !== 0) {\n var _extends2;\n if (item.start < _this.scrollOffset && _this.isScrolling && _this.scrollDirection === 'backward') {\n if (process.env.NODE_ENV !== 'production' && _this.options.debug) {\n console.info('correction', delta);\n }\n _this._scrollToOffset(_this.scrollOffset, {\n adjustments: _this.scrollAdjustments += delta,\n behavior: undefined\n });\n }\n _this.pendingMeasuredCacheIndexes.push(index);\n _this.itemSizeCache = _extends({}, _this.itemSizeCache, (_extends2 = {}, _extends2[item.key] = measuredItemSize, _extends2));\n _this.notify();\n }\n };\n this.measureElement = function (node) {\n if (!node) {\n return;\n }\n _this._measureElement(node, true);\n };\n this.getVirtualItems = memo(function () {\n return [_this.getIndexes(), _this.getMeasurements()];\n }, function (indexes, measurements) {\n var virtualItems = [];\n for (var k = 0, len = indexes.length; k < len; k++) {\n var _i3 = indexes[k];\n var measurement = measurements[_i3];\n virtualItems.push(measurement);\n }\n return virtualItems;\n }, {\n key: process.env.NODE_ENV !== 'production' && 'getIndexes',\n debug: function debug() {\n return _this.options.debug;\n }\n });\n this.getOffsetForAlignment = function (toOffset, align) {\n var offset = _this.scrollOffset;\n var size = _this.getSize();\n if (align === 'auto') {\n if (toOffset <= offset) {\n align = 'start';\n } else if (toOffset >= offset + size) {\n align = 'end';\n } else {\n align = 'start';\n }\n }\n if (align === 'start') {\n return toOffset;\n } else if (align === 'end') {\n return toOffset - size;\n } else if (align === 'center') {\n return toOffset - size / 2;\n }\n return toOffset;\n };\n this.scrollToOffset = function (toOffset, _temp) {\n var _ref4 = _temp === void 0 ? {} : _temp,\n _ref4$align = _ref4.align,\n align = _ref4$align === void 0 ? 'start' : _ref4$align,\n behavior = _ref4.behavior;\n var options = {\n adjustments: undefined,\n behavior: behavior,\n sync: false\n };\n _this._scrollToOffset(_this.getOffsetForAlignment(toOffset, align), options);\n };\n this.scrollToIndex = function (index, _temp2) {\n var _ref5 = _temp2 === void 0 ? {} : _temp2,\n _ref5$align = _ref5.align,\n align = _ref5$align === void 0 ? 'auto' : _ref5$align,\n behavior = _ref5.behavior;\n _this.pendingScrollToIndexCallback = null;\n var offset = _this.scrollOffset;\n var size = _this.getSize();\n var count = _this.options.count;\n var measurements = _this.getMeasurements();\n var measurement = measurements[Math.max(0, Math.min(index, count - 1))];\n if (!measurement) {\n throw new Error(\"VirtualItem not found for index = \" + index);\n }\n if (align === 'auto') {\n if (measurement.end >= offset + size - _this.options.scrollPaddingEnd) {\n align = 'end';\n } else if (measurement.start <= offset + _this.options.scrollPaddingStart) {\n align = 'start';\n } else {\n return;\n }\n }\n var getOffsetForIndexAndAlignment = function getOffsetForIndexAndAlignment(measurement) {\n var toOffset = align === 'end' ? measurement.end + _this.options.scrollPaddingEnd : measurement.start - _this.options.scrollPaddingStart;\n return _this.getOffsetForAlignment(toOffset, align);\n };\n var toOffset = getOffsetForIndexAndAlignment(measurement);\n if (toOffset === offset) {\n return;\n }\n var options = {\n adjustments: undefined,\n behavior: behavior\n };\n _this._scrollToOffset(toOffset, options);\n var isDynamic = Object.keys(_this.measureElementCache).length > 0;\n if (isDynamic) {\n _this.pendingScrollToIndexCallback = function () {\n _this.scrollToIndex(index, {\n align: align,\n behavior: behavior\n });\n };\n }\n };\n this.scrollBy = function (adjustments, options) {\n _this._scrollToOffset(_this.scrollOffset, {\n adjustments: adjustments,\n behavior: options == null ? void 0 : options.behavior\n });\n };\n this.getTotalSize = function () {\n var _this$getMeasurements;\n return (((_this$getMeasurements = _this.getMeasurements()[_this.options.count - 1]) == null ? void 0 : _this$getMeasurements.end) || _this.options.paddingStart) - _this.options.scrollMargin + _this.options.paddingEnd;\n };\n this._scrollToOffset = function (offset, _ref6) {\n var adjustments = _ref6.adjustments,\n behavior = _ref6.behavior;\n _this.options.scrollToFn(offset, {\n behavior: behavior,\n adjustments: adjustments\n }, _this);\n };\n this.measure = function () {\n _this.itemSizeCache = {};\n _this.notify();\n };\n this.setOptions(_opts);\n this.scrollRect = this.options.initialRect;\n this.scrollOffset = this.options.initialOffset;\n this.measurementsCache = this.options.initialMeasurementsCache;\n this.measurementsCache.forEach(function (item) {\n _this.itemSizeCache[item.key] = item.size;\n });\n this.calculateRange();\n};\nvar findNearestBinarySearch = function findNearestBinarySearch(low, high, getCurrentValue, value) {\n while (low <= high) {\n var middle = (low + high) / 2 | 0;\n var currentValue = getCurrentValue(middle);\n if (currentValue < value) {\n low = middle + 1;\n } else if (currentValue > value) {\n high = middle - 1;\n } else {\n return middle;\n }\n }\n if (low > 0) {\n return low - 1;\n } else {\n return 0;\n }\n};\nfunction calculateRange(_ref7) {\n var measurements = _ref7.measurements,\n outerSize = _ref7.outerSize,\n scrollOffset = _ref7.scrollOffset;\n var count = measurements.length - 1;\n var getOffset = function getOffset(index) {\n return measurements[index].start;\n };\n var startIndex = findNearestBinarySearch(0, count, getOffset, scrollOffset);\n var endIndex = startIndex;\n while (endIndex < count && measurements[endIndex].end < scrollOffset + outerSize) {\n endIndex++;\n }\n return {\n startIndex: startIndex,\n endIndex: endIndex\n };\n}\n\nexport { Virtualizer, defaultKeyExtractor, defaultRangeExtractor, elementScroll, measureElement, observeElementOffset, observeElementRect, observeWindowOffset, observeWindowRect, windowScroll };\n//# sourceMappingURL=index.mjs.map\n","import {\n elementScroll,\n observeElementOffset,\n observeElementRect,\n observeWindowOffset,\n observeWindowRect,\n PartialKeys,\n Virtualizer,\n VirtualizerOptions,\n windowScroll,\n} from '@tanstack/virtual-core'\nexport * from '@tanstack/virtual-core'\n\nimport {\n createSignal,\n onMount,\n onCleanup,\n createComputed,\n mergeProps,\n} from 'solid-js'\nimport { createStore, reconcile } from 'solid-js/store'\n\nfunction createVirtualizerBase<\n TScrollElement extends Element | Window,\n TItemElement extends Element,\n>(\n options: VirtualizerOptions<TScrollElement, TItemElement>,\n): Virtualizer<TScrollElement, TItemElement> {\n const resolvedOptions: VirtualizerOptions<TScrollElement, TItemElement> =\n mergeProps(options)\n\n const instance = new Virtualizer<TScrollElement, TItemElement>(\n resolvedOptions,\n )\n\n const [virtualItems, setVirtualItems] = createStore(\n instance.getVirtualItems(),\n )\n const [totalSize, setTotalSize] = createSignal(instance.getTotalSize())\n\n const handler = {\n get(\n target: Virtualizer<TScrollElement, TItemElement>,\n prop: keyof Virtualizer<TScrollElement, TItemElement>,\n ) {\n switch (prop) {\n case 'getVirtualItems':\n return () => virtualItems\n case 'getTotalSize':\n return () => totalSize()\n default:\n return Reflect.get(target, prop)\n }\n },\n }\n\n const virtualizer = new Proxy(instance, handler)\n virtualizer.setOptions(resolvedOptions)\n\n onMount(() => {\n const cleanup = virtualizer._didMount()\n virtualizer._willUpdate()\n onCleanup(cleanup)\n })\n\n createComputed(() => {\n virtualizer.setOptions(\n mergeProps(resolvedOptions, options, {\n onChange: (instance: Virtualizer<TScrollElement, TItemElement>) => {\n instance._willUpdate()\n setVirtualItems(\n reconcile(instance.getVirtualItems(), {\n key: 'index',\n }),\n )\n setTotalSize(instance.getTotalSize())\n options.onChange?.(instance)\n },\n }),\n )\n virtualizer.measure()\n })\n\n return virtualizer\n}\n\nexport function createVirtualizer<\n TScrollElement extends Element,\n TItemElement extends Element,\n>(\n options: PartialKeys<\n VirtualizerOptions<TScrollElement, TItemElement>,\n 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'\n >,\n): Virtualizer<TScrollElement, TItemElement> {\n return createVirtualizerBase<TScrollElement, TItemElement>(\n mergeProps(\n {\n observeElementRect: observeElementRect,\n observeElementOffset: observeElementOffset,\n scrollToFn: elementScroll,\n },\n options,\n ),\n )\n}\n\nexport function createWindowVirtualizer<TItemElement extends Element>(\n options: PartialKeys<\n VirtualizerOptions<Window, TItemElement>,\n | 'getScrollElement'\n | 'observeElementRect'\n | 'observeElementOffset'\n | 'scrollToFn'\n >,\n): Virtualizer<Window, TItemElement> {\n return createVirtualizerBase<Window, TItemElement>(\n mergeProps(\n {\n getScrollElement: () =>\n typeof window !== 'undefined' ? window : null!,\n observeElementRect: observeWindowRect,\n observeElementOffset: observeWindowOffset,\n scrollToFn: windowScroll,\n },\n options,\n ),\n )\n}\n"],"names":["createVirtualizerBase","options","resolvedOptions","mergeProps","instance","Virtualizer","createStore","getVirtualItems","virtualItems","setVirtualItems","createSignal","getTotalSize","totalSize","setTotalSize","handler","get","target","prop","Reflect","virtualizer","Proxy","setOptions","onMount","cleanup","_didMount","_willUpdate","onCleanup","createComputed","onChange","reconcile","key","measure","createVirtualizer","observeElementRect","observeElementOffset","scrollToFn","elementScroll","createWindowVirtualizer","getScrollElement","window","observeWindowRect","observeWindowOffset","windowScroll"],"mappings":"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"}
@@ -38,5 +38,5 @@
38
38
  * LICENSE.md file in the root directory of this source tree.
39
39
  *
40
40
  * @license MIT
41
- */var i=function(e){return e},l=function(e){for(var n=Math.max(e.startIndex-e.overscan,0),t=Math.min(e.endIndex+e.overscan,e.count-1),o=[],r=n;r<=t;r++)o.push(r);return o},s=function(e,n){var t=new ResizeObserver((function(e){var t,o;n({width:null==(t=e[0])?void 0:t.contentRect.width,height:null==(o=e[0])?void 0:o.contentRect.height})}));if(e.scrollElement)return n(e.scrollElement.getBoundingClientRect()),t.observe(e.scrollElement),function(){t.unobserve(e.scrollElement)}},a=function(e,n){var t=function(e,n){var t={height:-1,width:-1};return function(o){(e.options.horizontal?o.width!==t.width:o.height!==t.height)&&n(o),t=o}}(e,n),o=function(){return t({width:e.scrollElement.innerWidth,height:e.scrollElement.innerHeight})};if(e.scrollElement)return o(),e.scrollElement.addEventListener("resize",o,{capture:!1,passive:!0}),function(){e.scrollElement.removeEventListener("resize",o)}},u={element:["scrollLeft","scrollTop"],window:["scrollX","scrollY"]},c=function(e){return function(n,t){if(n.scrollElement){var o=u[e][0],r=u[e][1],i=n.scrollElement[o],l=n.scrollElement[r],s=function(){var e=n.scrollElement[n.options.horizontal?o:r];t(e)};s();var a=function(e){var t=e.currentTarget,a=t[o],u=t[r];(n.options.horizontal?i-a:l-u)&&s(),i=a,l=u};return n.scrollElement.addEventListener("scroll",a,{capture:!1,passive:!0}),function(){n.scrollElement.removeEventListener("scroll",a)}}}},d=c("element"),f=c("window"),h=function(e,n){return Math.round(e.getBoundingClientRect()[n.options.horizontal?"width":"height"])},m=function(e,n,t){var o,r,i=n.adjustments,l=void 0===i?0:i,s=n.behavior,a=e+l;null==(o=t.scrollElement)||null==o.scrollTo||o.scrollTo(((r={})[t.options.horizontal?"left":"top"]=a,r.behavior=s,r))},g=function(e,n,t){var o,r,i=n.adjustments,l=void 0===i?0:i,s=n.behavior,a=e+l;null==(o=t.scrollElement)||null==o.scrollTo||o.scrollTo(((r={})[t.options.horizontal?"left":"top"]=a,r.behavior=s,r))},v=function(e){var n,t=this;this.unsubs=[],this.scrollElement=null,this.isScrolling=!1,this.isScrollingTimeoutId=null,this.measurementsCache=[],this.itemSizeCache={},this.pendingMeasuredCacheIndexes=[],this.scrollDirection=null,this.scrollAdjustments=0,this.measureElementCache={},this.pendingScrollToIndexCallback=null,this.getResizeObserver=(n=null,function(){return n||("undefined"!=typeof ResizeObserver?n=new ResizeObserver((function(e){e.forEach((function(e){t._measureElement(e.target,!1)}))})):null)}),this.range={startIndex:0,endIndex:0},this.setOptions=function(e){Object.entries(e).forEach((function(n){var t=n[0];void 0===n[1]&&delete e[t]})),t.options=o({debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:i,rangeExtractor:l,onChange:function(){},measureElement:h,initialRect:{width:0,height:0},scrollMargin:0,scrollingDelay:150,indexAttribute:"data-index",initialMeasurementsCache:[]},e)},this.notify=function(){null==t.options.onChange||t.options.onChange(t)},this.cleanup=function(){t.unsubs.filter(Boolean).forEach((function(e){return e()})),t.unsubs=[],t.scrollElement=null},this._didMount=function(){var e=t.getResizeObserver();return Object.values(t.measureElementCache).forEach((function(n){return null==e?void 0:e.observe(n)})),function(){null==e||e.disconnect(),t.cleanup()}},this._willUpdate=function(){null==t.pendingScrollToIndexCallback||t.pendingScrollToIndexCallback();var e=t.options.getScrollElement();t.scrollElement!==e?(t.cleanup(),t.scrollElement=e,t._scrollToOffset(t.scrollOffset,{adjustments:void 0,behavior:void 0}),t.unsubs.push(t.options.observeElementRect(t,(function(e){t.scrollRect=e,t.calculateRange()}))),t.unsubs.push(t.options.observeElementOffset(t,(function(e){if(t.scrollAdjustments=0,t.scrollOffset!==e){null!==t.isScrollingTimeoutId&&(clearTimeout(t.isScrollingTimeoutId),t.isScrollingTimeoutId=null);var n=function(e){t.isScrolling!==e&&(t.isScrolling=e,t.notify())};t.scrollDirection=t.scrollOffset<e?"forward":"backward",t.scrollOffset=e,t.calculateRange(),n(!0),t.isScrollingTimeoutId=setTimeout((function(){t.isScrollingTimeoutId=null,t.scrollDirection=null,n(!1)}),t.options.scrollingDelay)}})))):t.isScrolling||t.calculateRange()},this.getSize=function(){return t.scrollRect[t.options.horizontal?"width":"height"]},this.getMeasurements=r((function(){return[t.options.count,t.options.paddingStart,t.options.scrollMargin,t.options.getItemKey,t.itemSizeCache]}),(function(e,n,o,r,i){var l=t.pendingMeasuredCacheIndexes.length>0?Math.min.apply(Math,t.pendingMeasuredCacheIndexes):0;t.pendingMeasuredCacheIndexes=[];for(var s=t.measurementsCache.slice(0,l),a=l;a<e;a++){var u=r(a),c=i[u],d=s[a-1]?s[a-1].end:n+o,f="number"==typeof c?c:t.options.estimateSize(a),h=d+f;s[a]={index:a,start:d,size:f,end:h,key:u}}return t.measurementsCache=s,s}),{key:!1,debug:function(){return t.options.debug}}),this.calculateRange=r((function(){return[t.getMeasurements(),t.getSize(),t.scrollOffset]}),(function(e,n,o){var r=function(e){var n=e.measurements,t=e.outerSize,o=e.scrollOffset,r=n.length-1,i=function(e,n,t,o){for(;e<=n;){var r=(e+n)/2|0,i=t(r);if(i<o)e=r+1;else{if(!(i>o))return r;n=r-1}}return e>0?e-1:0}(0,r,(function(e){return n[e].start}),o),l=i;for(;l<r&&n[l].end<o+t;)l++;return{startIndex:i,endIndex:l}}({measurements:e,outerSize:n,scrollOffset:o});return r.startIndex===t.range.startIndex&&r.endIndex===t.range.endIndex||(t.range=r,t.notify()),t.range}),{key:!1,debug:function(){return t.options.debug}}),this.getIndexes=r((function(){return[t.options.rangeExtractor,t.range,t.options.overscan,t.options.count]}),(function(e,n,t,r){return e(o({},n,{overscan:t,count:r}))}),{key:!1,debug:function(){return t.options.debug}}),this.indexFromElement=function(e){var n=t.options.indexAttribute,o=e.getAttribute(n);return o?parseInt(o,10):(console.warn("Missing attribute name '"+n+"={index}' on measured element."),-1)},this._measureElement=function(e,n){var r,i=t.indexFromElement(e),l=t.measurementsCache[i];if(l){var s=t.measureElementCache[l.key],a=t.getResizeObserver();if(e.isConnected){s&&s===e||(s&&(null==a||a.unobserve(s)),t.measureElementCache[l.key]=e,null==a||a.observe(e));var u,c=t.options.measureElement(e,t),d=c-(null!=(r=t.itemSizeCache[l.key])?r:l.size);if(0!==d)l.start<t.scrollOffset&&t.isScrolling&&"backward"===t.scrollDirection&&t._scrollToOffset(t.scrollOffset,{adjustments:t.scrollAdjustments+=d,behavior:void 0}),t.pendingMeasuredCacheIndexes.push(i),t.itemSizeCache=o({},t.itemSizeCache,((u={})[l.key]=c,u)),t.notify()}else s&&(null==a||a.unobserve(s),delete t.measureElementCache[l.key])}},this.measureElement=function(e){e&&t._measureElement(e,!0)},this.getVirtualItems=r((function(){return[t.getIndexes(),t.getMeasurements()]}),(function(e,n){for(var t=[],o=0,r=e.length;o<r;o++){var i=n[e[o]];t.push(i)}return t}),{key:!1,debug:function(){return t.options.debug}}),this.getOffsetForAlignment=function(e,n){var o=t.scrollOffset,r=t.getSize();return"auto"===n&&(n=e<=o?"start":e>=o+r?"end":"start"),"start"===n?e:"end"===n?e-r:"center"===n?e-r/2:e},this.scrollToOffset=function(e,n){var o=void 0===n?{}:n,r=o.align,i=void 0===r?"start":r,l={adjustments:void 0,behavior:o.behavior,sync:!1};t._scrollToOffset(t.getOffsetForAlignment(e,i),l)},this.scrollToIndex=function(e,n){var o=void 0===n?{}:n,r=o.align,i=void 0===r?"auto":r,l=o.behavior;t.pendingScrollToIndexCallback=null;var s=t.scrollOffset,a=t.getSize(),u=t.options.count,c=t.getMeasurements()[Math.max(0,Math.min(e,u-1))];if(!c)throw new Error("VirtualItem not found for index = "+e);if("auto"===i)if(c.end>=s+a-t.options.scrollPaddingEnd)i="end";else{if(!(c.start<=s+t.options.scrollPaddingStart))return;i="start"}var d=function(e){var n="end"===i?e.end+t.options.scrollPaddingEnd:e.start-t.options.scrollPaddingStart;return t.getOffsetForAlignment(n,i)}(c);if(Math.round(d)!==Math.round(s)){var f={adjustments:void 0,behavior:l};t._scrollToOffset(d,f),Object.keys(t.measureElementCache).length>0&&(t.pendingScrollToIndexCallback=function(){t.scrollToIndex(e,{align:i,behavior:l})})}},this.scrollBy=function(e,n){t._scrollToOffset(t.scrollOffset,{adjustments:e,behavior:null==n?void 0:n.behavior})},this.getTotalSize=function(){var e;return((null==(e=t.getMeasurements()[t.options.count-1])?void 0:e.end)||t.options.paddingStart)-t.options.scrollMargin+t.options.paddingEnd},this._scrollToOffset=function(e,n){var o=n.adjustments,r=n.behavior;t.options.scrollToFn(e,{behavior:r,adjustments:o},t)},this.measure=function(){t.itemSizeCache={},t.notify()},this.setOptions(e),this.scrollRect=this.options.initialRect,this.scrollOffset=this.options.initialOffset,this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach((function(e){t.itemSizeCache[e.key]=e.size})),this.calculateRange()};function p(e){var o=n.mergeProps(e),r=new v(o),i=t.createStore(r.getVirtualItems()),l=i[0],s=i[1],a=n.createSignal(r.getTotalSize()),u=a[0],c=a[1],d=new Proxy(r,{get:function(e,n){switch(n){case"getVirtualItems":return function(){return l};case"getTotalSize":return function(){return u()};default:return Reflect.get(e,n)}}});return d.setOptions(o),n.onMount((function(){var e=d._didMount();d._willUpdate(),n.onCleanup(e)})),n.createComputed((function(){d.setOptions(n.mergeProps(o,e,{onChange:function(n){n._willUpdate(),s(t.reconcile(n.getVirtualItems(),{key:"index"})),c(n.getTotalSize()),null==e.onChange||e.onChange(n)}})),d.measure()})),d}e.Virtualizer=v,e.createVirtualizer=function(e){return p(n.mergeProps({observeElementRect:s,observeElementOffset:d,scrollToFn:g},e))},e.createWindowVirtualizer=function(e){return p(n.mergeProps({getScrollElement:function(){return"undefined"!=typeof window?window:null},observeElementRect:a,observeElementOffset:f,scrollToFn:m},e))},e.defaultKeyExtractor=i,e.defaultRangeExtractor=l,e.elementScroll=g,e.measureElement=h,e.memo=r,e.observeElementOffset=d,e.observeElementRect=s,e.observeWindowOffset=f,e.observeWindowRect=a,e.windowScroll=m,Object.defineProperty(e,"__esModule",{value:!0})}));
41
+ */var i=function(e){return e},l=function(e){for(var n=Math.max(e.startIndex-e.overscan,0),t=Math.min(e.endIndex+e.overscan,e.count-1),o=[],r=n;r<=t;r++)o.push(r);return o},s=function(e,n){var t=new ResizeObserver((function(e){var t=e[0];if(t){var o=t.contentRect,r=o.width,i=o.height;n({width:Math.round(r),height:Math.round(i)})}else n({width:0,height:0})}));if(e.scrollElement)return n(e.scrollElement.getBoundingClientRect()),t.observe(e.scrollElement),function(){t.unobserve(e.scrollElement)}},a=function(e,n){var t=function(e,n){var t={height:-1,width:-1};return function(o){(e.options.horizontal?o.width!==t.width:o.height!==t.height)&&n(o),t=o}}(e,n),o=function(){return t({width:e.scrollElement.innerWidth,height:e.scrollElement.innerHeight})};if(e.scrollElement)return o(),e.scrollElement.addEventListener("resize",o,{capture:!1,passive:!0}),function(){e.scrollElement.removeEventListener("resize",o)}},u={element:["scrollLeft","scrollTop"],window:["scrollX","scrollY"]},c=function(e){return function(n,t){if(n.scrollElement){var o=u[e][0],r=u[e][1],i=n.scrollElement[o],l=n.scrollElement[r],s=function(){var e=n.scrollElement[n.options.horizontal?o:r];t(e)};s();var a=function(e){var t=e.currentTarget,a=t[o],u=t[r];(n.options.horizontal?i-a:l-u)&&s(),i=a,l=u};return n.scrollElement.addEventListener("scroll",a,{capture:!1,passive:!0}),function(){n.scrollElement.removeEventListener("scroll",a)}}}},d=c("element"),f=c("window"),h=function(e,n){return Math.round(e.getBoundingClientRect()[n.options.horizontal?"width":"height"])},m=function(e,n,t){var o,r,i=n.adjustments,l=void 0===i?0:i,s=n.behavior,a=e+l;null==(o=t.scrollElement)||null==o.scrollTo||o.scrollTo(((r={})[t.options.horizontal?"left":"top"]=a,r.behavior=s,r))},g=function(e,n,t){var o,r,i=n.adjustments,l=void 0===i?0:i,s=n.behavior,a=e+l;null==(o=t.scrollElement)||null==o.scrollTo||o.scrollTo(((r={})[t.options.horizontal?"left":"top"]=a,r.behavior=s,r))},v=function(e){var n,t=this;this.unsubs=[],this.scrollElement=null,this.isScrolling=!1,this.isScrollingTimeoutId=null,this.measurementsCache=[],this.itemSizeCache={},this.pendingMeasuredCacheIndexes=[],this.scrollDirection=null,this.scrollAdjustments=0,this.measureElementCache={},this.pendingScrollToIndexCallback=null,this.getResizeObserver=(n=null,function(){return n||("undefined"!=typeof ResizeObserver?n=new ResizeObserver((function(e){e.forEach((function(e){t._measureElement(e.target,!1)}))})):null)}),this.range={startIndex:0,endIndex:0},this.setOptions=function(e){Object.entries(e).forEach((function(n){var t=n[0];void 0===n[1]&&delete e[t]})),t.options=o({debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:i,rangeExtractor:l,onChange:function(){},measureElement:h,initialRect:{width:0,height:0},scrollMargin:0,scrollingDelay:150,indexAttribute:"data-index",initialMeasurementsCache:[]},e)},this.notify=function(){null==t.options.onChange||t.options.onChange(t)},this.cleanup=function(){t.unsubs.filter(Boolean).forEach((function(e){return e()})),t.unsubs=[],t.scrollElement=null},this._didMount=function(){var e=t.getResizeObserver();return Object.values(t.measureElementCache).forEach((function(n){return null==e?void 0:e.observe(n)})),function(){null==e||e.disconnect(),t.cleanup()}},this._willUpdate=function(){null==t.pendingScrollToIndexCallback||t.pendingScrollToIndexCallback();var e=t.options.getScrollElement();t.scrollElement!==e?(t.cleanup(),t.scrollElement=e,t._scrollToOffset(t.scrollOffset,{adjustments:void 0,behavior:void 0}),t.unsubs.push(t.options.observeElementRect(t,(function(e){t.scrollRect=e,t.calculateRange()}))),t.unsubs.push(t.options.observeElementOffset(t,(function(e){if(t.scrollAdjustments=0,t.scrollOffset!==e){null!==t.isScrollingTimeoutId&&(clearTimeout(t.isScrollingTimeoutId),t.isScrollingTimeoutId=null);var n=function(e){t.isScrolling!==e&&(t.isScrolling=e,t.notify())};t.scrollDirection=t.scrollOffset<e?"forward":"backward",t.scrollOffset=e,t.calculateRange(),n(!0),t.isScrollingTimeoutId=setTimeout((function(){t.isScrollingTimeoutId=null,t.scrollDirection=null,n(!1)}),t.options.scrollingDelay)}})))):t.isScrolling||t.calculateRange()},this.getSize=function(){return t.scrollRect[t.options.horizontal?"width":"height"]},this.getMeasurements=r((function(){return[t.options.count,t.options.paddingStart,t.options.scrollMargin,t.options.getItemKey,t.itemSizeCache]}),(function(e,n,o,r,i){var l=t.pendingMeasuredCacheIndexes.length>0?Math.min.apply(Math,t.pendingMeasuredCacheIndexes):0;t.pendingMeasuredCacheIndexes=[];for(var s=t.measurementsCache.slice(0,l),a=l;a<e;a++){var u=r(a),c=i[u],d=s[a-1]?s[a-1].end:n+o,f="number"==typeof c?c:t.options.estimateSize(a),h=d+f;s[a]={index:a,start:d,size:f,end:h,key:u}}return t.measurementsCache=s,s}),{key:!1,debug:function(){return t.options.debug}}),this.calculateRange=r((function(){return[t.getMeasurements(),t.getSize(),t.scrollOffset]}),(function(e,n,o){var r=function(e){var n=e.measurements,t=e.outerSize,o=e.scrollOffset,r=n.length-1,i=function(e,n,t,o){for(;e<=n;){var r=(e+n)/2|0,i=t(r);if(i<o)e=r+1;else{if(!(i>o))return r;n=r-1}}return e>0?e-1:0}(0,r,(function(e){return n[e].start}),o),l=i;for(;l<r&&n[l].end<o+t;)l++;return{startIndex:i,endIndex:l}}({measurements:e,outerSize:n,scrollOffset:o});return r.startIndex===t.range.startIndex&&r.endIndex===t.range.endIndex||(t.range=r,t.notify()),t.range}),{key:!1,debug:function(){return t.options.debug}}),this.getIndexes=r((function(){return[t.options.rangeExtractor,t.range,t.options.overscan,t.options.count]}),(function(e,n,t,r){return e(o({},n,{overscan:t,count:r}))}),{key:!1,debug:function(){return t.options.debug}}),this.indexFromElement=function(e){var n=t.options.indexAttribute,o=e.getAttribute(n);return o?parseInt(o,10):(console.warn("Missing attribute name '"+n+"={index}' on measured element."),-1)},this._measureElement=function(e,n){var r,i=t.indexFromElement(e),l=t.measurementsCache[i];if(l){var s=t.measureElementCache[l.key],a=t.getResizeObserver();if(e.isConnected){s&&s===e||(s&&(null==a||a.unobserve(s)),t.measureElementCache[l.key]=e,null==a||a.observe(e));var u,c=t.options.measureElement(e,t),d=c-(null!=(r=t.itemSizeCache[l.key])?r:l.size);if(0!==d)l.start<t.scrollOffset&&t.isScrolling&&"backward"===t.scrollDirection&&t._scrollToOffset(t.scrollOffset,{adjustments:t.scrollAdjustments+=d,behavior:void 0}),t.pendingMeasuredCacheIndexes.push(i),t.itemSizeCache=o({},t.itemSizeCache,((u={})[l.key]=c,u)),t.notify()}else s&&(null==a||a.unobserve(s),delete t.measureElementCache[l.key])}},this.measureElement=function(e){e&&t._measureElement(e,!0)},this.getVirtualItems=r((function(){return[t.getIndexes(),t.getMeasurements()]}),(function(e,n){for(var t=[],o=0,r=e.length;o<r;o++){var i=n[e[o]];t.push(i)}return t}),{key:!1,debug:function(){return t.options.debug}}),this.getOffsetForAlignment=function(e,n){var o=t.scrollOffset,r=t.getSize();return"auto"===n&&(n=e<=o?"start":e>=o+r?"end":"start"),"start"===n?e:"end"===n?e-r:"center"===n?e-r/2:e},this.scrollToOffset=function(e,n){var o=void 0===n?{}:n,r=o.align,i=void 0===r?"start":r,l={adjustments:void 0,behavior:o.behavior,sync:!1};t._scrollToOffset(t.getOffsetForAlignment(e,i),l)},this.scrollToIndex=function(e,n){var o=void 0===n?{}:n,r=o.align,i=void 0===r?"auto":r,l=o.behavior;t.pendingScrollToIndexCallback=null;var s=t.scrollOffset,a=t.getSize(),u=t.options.count,c=t.getMeasurements()[Math.max(0,Math.min(e,u-1))];if(!c)throw new Error("VirtualItem not found for index = "+e);if("auto"===i)if(c.end>=s+a-t.options.scrollPaddingEnd)i="end";else{if(!(c.start<=s+t.options.scrollPaddingStart))return;i="start"}var d=function(e){var n="end"===i?e.end+t.options.scrollPaddingEnd:e.start-t.options.scrollPaddingStart;return t.getOffsetForAlignment(n,i)}(c);if(d!==s){var f={adjustments:void 0,behavior:l};t._scrollToOffset(d,f),Object.keys(t.measureElementCache).length>0&&(t.pendingScrollToIndexCallback=function(){t.scrollToIndex(e,{align:i,behavior:l})})}},this.scrollBy=function(e,n){t._scrollToOffset(t.scrollOffset,{adjustments:e,behavior:null==n?void 0:n.behavior})},this.getTotalSize=function(){var e;return((null==(e=t.getMeasurements()[t.options.count-1])?void 0:e.end)||t.options.paddingStart)-t.options.scrollMargin+t.options.paddingEnd},this._scrollToOffset=function(e,n){var o=n.adjustments,r=n.behavior;t.options.scrollToFn(e,{behavior:r,adjustments:o},t)},this.measure=function(){t.itemSizeCache={},t.notify()},this.setOptions(e),this.scrollRect=this.options.initialRect,this.scrollOffset=this.options.initialOffset,this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach((function(e){t.itemSizeCache[e.key]=e.size})),this.calculateRange()};function p(e){var o=n.mergeProps(e),r=new v(o),i=t.createStore(r.getVirtualItems()),l=i[0],s=i[1],a=n.createSignal(r.getTotalSize()),u=a[0],c=a[1],d=new Proxy(r,{get:function(e,n){switch(n){case"getVirtualItems":return function(){return l};case"getTotalSize":return function(){return u()};default:return Reflect.get(e,n)}}});return d.setOptions(o),n.onMount((function(){var e=d._didMount();d._willUpdate(),n.onCleanup(e)})),n.createComputed((function(){d.setOptions(n.mergeProps(o,e,{onChange:function(n){n._willUpdate(),s(t.reconcile(n.getVirtualItems(),{key:"index"})),c(n.getTotalSize()),null==e.onChange||e.onChange(n)}})),d.measure()})),d}e.Virtualizer=v,e.createVirtualizer=function(e){return p(n.mergeProps({observeElementRect:s,observeElementOffset:d,scrollToFn:g},e))},e.createWindowVirtualizer=function(e){return p(n.mergeProps({getScrollElement:function(){return"undefined"!=typeof window?window:null},observeElementRect:a,observeElementOffset:f,scrollToFn:m},e))},e.defaultKeyExtractor=i,e.defaultRangeExtractor=l,e.elementScroll=g,e.measureElement=h,e.memo=r,e.observeElementOffset=d,e.observeElementRect=s,e.observeWindowOffset=f,e.observeWindowRect=a,e.windowScroll=m,Object.defineProperty(e,"__esModule",{value:!0})}));
42
42
  //# sourceMappingURL=index.production.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.production.js","sources":["../../../virtual-core/build/lib/_virtual/_rollupPluginBabelHelpers.mjs","../../../virtual-core/build/lib/utils.mjs","../../../virtual-core/build/lib/index.mjs","../../src/index.tsx"],"sourcesContent":["/**\n * virtual-core\n *\n * Copyright (c) TanStack\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nfunction _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}\n\nexport { _extends as extends };\n//# sourceMappingURL=_rollupPluginBabelHelpers.mjs.map\n","/**\n * virtual-core\n *\n * Copyright (c) TanStack\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nfunction memo(getDeps, fn, opts) {\n var deps = [];\n var result;\n return function () {\n var depTime;\n if (opts.key && opts.debug != null && opts.debug()) depTime = Date.now();\n var newDeps = getDeps();\n var depsChanged = newDeps.length !== deps.length || newDeps.some(function (dep, index) {\n return deps[index] !== dep;\n });\n if (!depsChanged) {\n return result;\n }\n deps = newDeps;\n var resultTime;\n if (opts.key && opts.debug != null && opts.debug()) resultTime = Date.now();\n result = fn.apply(void 0, newDeps);\n opts == null ? void 0 : opts.onChange == null ? void 0 : opts.onChange(result);\n if (opts.key && opts.debug != null && opts.debug()) {\n var depEndTime = Math.round((Date.now() - depTime) * 100) / 100;\n var resultEndTime = Math.round((Date.now() - resultTime) * 100) / 100;\n var resultFpsPercentage = resultEndTime / 16;\n var pad = function pad(str, num) {\n str = String(str);\n while (str.length < num) {\n str = ' ' + str;\n }\n return str;\n };\n console.info(\"%c\\u23F1 \" + pad(resultEndTime, 5) + \" /\" + pad(depEndTime, 5) + \" ms\", \"\\n font-size: .6rem;\\n font-weight: bold;\\n color: hsl(\" + Math.max(0, Math.min(120 - 120 * resultFpsPercentage, 120)) + \"deg 100% 31%);\", opts == null ? void 0 : opts.key);\n }\n return result;\n };\n}\n\nexport { memo };\n//# sourceMappingURL=utils.mjs.map\n","/**\n * virtual-core\n *\n * Copyright (c) TanStack\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nimport { extends as _extends } from './_virtual/_rollupPluginBabelHelpers.mjs';\nimport { memo } from './utils.mjs';\nexport { memo } from './utils.mjs';\n\n//\n\n//\n\nvar defaultKeyExtractor = function defaultKeyExtractor(index) {\n return index;\n};\nvar defaultRangeExtractor = function defaultRangeExtractor(range) {\n var start = Math.max(range.startIndex - range.overscan, 0);\n var end = Math.min(range.endIndex + range.overscan, range.count - 1);\n var arr = [];\n for (var _i = start; _i <= end; _i++) {\n arr.push(_i);\n }\n return arr;\n};\nvar memoRectCallback = function memoRectCallback(instance, cb) {\n var prev = {\n height: -1,\n width: -1\n };\n return function (rect) {\n if (instance.options.horizontal ? rect.width !== prev.width : rect.height !== prev.height) {\n cb(rect);\n }\n prev = rect;\n };\n};\nvar observeElementRect = function observeElementRect(instance, cb) {\n var observer = new ResizeObserver(function (entries) {\n var _entries$, _entries$2;\n cb({\n width: (_entries$ = entries[0]) == null ? void 0 : _entries$.contentRect.width,\n height: (_entries$2 = entries[0]) == null ? void 0 : _entries$2.contentRect.height\n });\n });\n if (!instance.scrollElement) {\n return;\n }\n cb(instance.scrollElement.getBoundingClientRect());\n observer.observe(instance.scrollElement);\n return function () {\n observer.unobserve(instance.scrollElement);\n };\n};\nvar observeWindowRect = function observeWindowRect(instance, cb) {\n var memoizedCallback = memoRectCallback(instance, cb);\n var onResize = function onResize() {\n return memoizedCallback({\n width: instance.scrollElement.innerWidth,\n height: instance.scrollElement.innerHeight\n });\n };\n if (!instance.scrollElement) {\n return;\n }\n onResize();\n instance.scrollElement.addEventListener('resize', onResize, {\n capture: false,\n passive: true\n });\n return function () {\n instance.scrollElement.removeEventListener('resize', onResize);\n };\n};\nvar scrollProps = {\n element: ['scrollLeft', 'scrollTop'],\n window: ['scrollX', 'scrollY']\n};\nvar createOffsetObserver = function createOffsetObserver(mode) {\n return function (instance, cb) {\n if (!instance.scrollElement) {\n return;\n }\n var propX = scrollProps[mode][0];\n var propY = scrollProps[mode][1];\n var prevX = instance.scrollElement[propX];\n var prevY = instance.scrollElement[propY];\n var scroll = function scroll() {\n var offset = instance.scrollElement[instance.options.horizontal ? propX : propY];\n cb(offset);\n };\n scroll();\n var onScroll = function onScroll(e) {\n var target = e.currentTarget;\n var scrollX = target[propX];\n var scrollY = target[propY];\n if (instance.options.horizontal ? prevX - scrollX : prevY - scrollY) {\n scroll();\n }\n prevX = scrollX;\n prevY = scrollY;\n };\n instance.scrollElement.addEventListener('scroll', onScroll, {\n capture: false,\n passive: true\n });\n return function () {\n instance.scrollElement.removeEventListener('scroll', onScroll);\n };\n };\n};\nvar observeElementOffset = createOffsetObserver('element');\nvar observeWindowOffset = createOffsetObserver('window');\nvar measureElement = function measureElement(element, instance) {\n return Math.round(element.getBoundingClientRect()[instance.options.horizontal ? 'width' : 'height']);\n};\nvar windowScroll = function windowScroll(offset, _ref, instance) {\n var _instance$scrollEleme, _instance$scrollEleme2;\n var _ref$adjustments = _ref.adjustments,\n adjustments = _ref$adjustments === void 0 ? 0 : _ref$adjustments,\n behavior = _ref.behavior;\n var toOffset = offset + adjustments;\n (_instance$scrollEleme = instance.scrollElement) == null ? void 0 : _instance$scrollEleme.scrollTo == null ? void 0 : _instance$scrollEleme.scrollTo((_instance$scrollEleme2 = {}, _instance$scrollEleme2[instance.options.horizontal ? 'left' : 'top'] = toOffset, _instance$scrollEleme2.behavior = behavior, _instance$scrollEleme2));\n};\nvar elementScroll = function elementScroll(offset, _ref2, instance) {\n var _instance$scrollEleme3, _instance$scrollEleme4;\n var _ref2$adjustments = _ref2.adjustments,\n adjustments = _ref2$adjustments === void 0 ? 0 : _ref2$adjustments,\n behavior = _ref2.behavior;\n var toOffset = offset + adjustments;\n (_instance$scrollEleme3 = instance.scrollElement) == null ? void 0 : _instance$scrollEleme3.scrollTo == null ? void 0 : _instance$scrollEleme3.scrollTo((_instance$scrollEleme4 = {}, _instance$scrollEleme4[instance.options.horizontal ? 'left' : 'top'] = toOffset, _instance$scrollEleme4.behavior = behavior, _instance$scrollEleme4));\n};\nvar Virtualizer = function Virtualizer(_opts) {\n var _this = this;\n this.unsubs = [];\n this.scrollElement = null;\n this.isScrolling = false;\n this.isScrollingTimeoutId = null;\n this.measurementsCache = [];\n this.itemSizeCache = {};\n this.pendingMeasuredCacheIndexes = [];\n this.scrollDirection = null;\n this.scrollAdjustments = 0;\n this.measureElementCache = {};\n this.pendingScrollToIndexCallback = null;\n this.getResizeObserver = function () {\n var _ro = null;\n return function () {\n if (_ro) {\n return _ro;\n } else if (typeof ResizeObserver !== 'undefined') {\n return _ro = new ResizeObserver(function (entries) {\n entries.forEach(function (entry) {\n _this._measureElement(entry.target, false);\n });\n });\n } else {\n return null;\n }\n };\n }();\n this.range = {\n startIndex: 0,\n endIndex: 0\n };\n this.setOptions = function (opts) {\n Object.entries(opts).forEach(function (_ref3) {\n var key = _ref3[0],\n value = _ref3[1];\n if (typeof value === 'undefined') delete opts[key];\n });\n _this.options = _extends({\n debug: false,\n initialOffset: 0,\n overscan: 1,\n paddingStart: 0,\n paddingEnd: 0,\n scrollPaddingStart: 0,\n scrollPaddingEnd: 0,\n horizontal: false,\n getItemKey: defaultKeyExtractor,\n rangeExtractor: defaultRangeExtractor,\n onChange: function onChange() {},\n measureElement: measureElement,\n initialRect: {\n width: 0,\n height: 0\n },\n scrollMargin: 0,\n scrollingDelay: 150,\n indexAttribute: 'data-index',\n initialMeasurementsCache: []\n }, opts);\n };\n this.notify = function () {\n _this.options.onChange == null ? void 0 : _this.options.onChange(_this);\n };\n this.cleanup = function () {\n _this.unsubs.filter(Boolean).forEach(function (d) {\n return d();\n });\n _this.unsubs = [];\n _this.scrollElement = null;\n };\n this._didMount = function () {\n var ro = _this.getResizeObserver();\n Object.values(_this.measureElementCache).forEach(function (node) {\n return ro == null ? void 0 : ro.observe(node);\n });\n return function () {\n ro == null ? void 0 : ro.disconnect();\n _this.cleanup();\n };\n };\n this._willUpdate = function () {\n _this.pendingScrollToIndexCallback == null ? void 0 : _this.pendingScrollToIndexCallback();\n var scrollElement = _this.options.getScrollElement();\n if (_this.scrollElement !== scrollElement) {\n _this.cleanup();\n _this.scrollElement = scrollElement;\n _this._scrollToOffset(_this.scrollOffset, {\n adjustments: undefined,\n behavior: undefined\n });\n _this.unsubs.push(_this.options.observeElementRect(_this, function (rect) {\n _this.scrollRect = rect;\n _this.calculateRange();\n }));\n _this.unsubs.push(_this.options.observeElementOffset(_this, function (offset) {\n _this.scrollAdjustments = 0;\n if (_this.scrollOffset === offset) {\n return;\n }\n if (_this.isScrollingTimeoutId !== null) {\n clearTimeout(_this.isScrollingTimeoutId);\n _this.isScrollingTimeoutId = null;\n }\n var onIsScrollingChange = function onIsScrollingChange(isScrolling) {\n if (_this.isScrolling !== isScrolling) {\n _this.isScrolling = isScrolling;\n _this.notify();\n }\n };\n _this.scrollDirection = _this.scrollOffset < offset ? 'forward' : 'backward';\n _this.scrollOffset = offset;\n _this.calculateRange();\n onIsScrollingChange(true);\n _this.isScrollingTimeoutId = setTimeout(function () {\n _this.isScrollingTimeoutId = null;\n _this.scrollDirection = null;\n onIsScrollingChange(false);\n }, _this.options.scrollingDelay);\n }));\n } else if (!_this.isScrolling) {\n _this.calculateRange();\n }\n };\n this.getSize = function () {\n return _this.scrollRect[_this.options.horizontal ? 'width' : 'height'];\n };\n this.getMeasurements = memo(function () {\n return [_this.options.count, _this.options.paddingStart, _this.options.scrollMargin, _this.options.getItemKey, _this.itemSizeCache];\n }, function (count, paddingStart, scrollMargin, getItemKey, itemSizeCache) {\n var min = _this.pendingMeasuredCacheIndexes.length > 0 ? Math.min.apply(Math, _this.pendingMeasuredCacheIndexes) : 0;\n _this.pendingMeasuredCacheIndexes = [];\n var measurements = _this.measurementsCache.slice(0, min);\n for (var _i2 = min; _i2 < count; _i2++) {\n var key = getItemKey(_i2);\n var measuredSize = itemSizeCache[key];\n var start = measurements[_i2 - 1] ? measurements[_i2 - 1].end : paddingStart + scrollMargin;\n var size = typeof measuredSize === 'number' ? measuredSize : _this.options.estimateSize(_i2);\n var end = start + size;\n measurements[_i2] = {\n index: _i2,\n start: start,\n size: size,\n end: end,\n key: key\n };\n }\n _this.measurementsCache = measurements;\n return measurements;\n }, {\n key: process.env.NODE_ENV !== 'production' && 'getMeasurements',\n debug: function debug() {\n return _this.options.debug;\n }\n });\n this.calculateRange = memo(function () {\n return [_this.getMeasurements(), _this.getSize(), _this.scrollOffset];\n }, function (measurements, outerSize, scrollOffset) {\n var range = calculateRange({\n measurements: measurements,\n outerSize: outerSize,\n scrollOffset: scrollOffset\n });\n if (range.startIndex !== _this.range.startIndex || range.endIndex !== _this.range.endIndex) {\n _this.range = range;\n _this.notify();\n }\n return _this.range;\n }, {\n key: process.env.NODE_ENV !== 'production' && 'calculateRange',\n debug: function debug() {\n return _this.options.debug;\n }\n });\n this.getIndexes = memo(function () {\n return [_this.options.rangeExtractor, _this.range, _this.options.overscan, _this.options.count];\n }, function (rangeExtractor, range, overscan, count) {\n return rangeExtractor(_extends({}, range, {\n overscan: overscan,\n count: count\n }));\n }, {\n key: process.env.NODE_ENV !== 'production' && 'getIndexes',\n debug: function debug() {\n return _this.options.debug;\n }\n });\n this.indexFromElement = function (node) {\n var attributeName = _this.options.indexAttribute;\n var indexStr = node.getAttribute(attributeName);\n if (!indexStr) {\n console.warn(\"Missing attribute name '\" + attributeName + \"={index}' on measured element.\");\n return -1;\n }\n return parseInt(indexStr, 10);\n };\n this._measureElement = function (node, _sync) {\n var _this$itemSizeCache$i;\n var index = _this.indexFromElement(node);\n var item = _this.measurementsCache[index];\n if (!item) {\n return;\n }\n var prevNode = _this.measureElementCache[item.key];\n var ro = _this.getResizeObserver();\n if (!node.isConnected) {\n if (prevNode) {\n ro == null ? void 0 : ro.unobserve(prevNode);\n delete _this.measureElementCache[item.key];\n }\n return;\n }\n if (!prevNode || prevNode !== node) {\n if (prevNode) {\n ro == null ? void 0 : ro.unobserve(prevNode);\n }\n _this.measureElementCache[item.key] = node;\n ro == null ? void 0 : ro.observe(node);\n }\n var measuredItemSize = _this.options.measureElement(node, _this);\n var itemSize = (_this$itemSizeCache$i = _this.itemSizeCache[item.key]) != null ? _this$itemSizeCache$i : item.size;\n var delta = measuredItemSize - itemSize;\n if (delta !== 0) {\n var _extends2;\n if (item.start < _this.scrollOffset && _this.isScrolling && _this.scrollDirection === 'backward') {\n if (process.env.NODE_ENV !== 'production' && _this.options.debug) {\n console.info('correction', delta);\n }\n _this._scrollToOffset(_this.scrollOffset, {\n adjustments: _this.scrollAdjustments += delta,\n behavior: undefined\n });\n }\n _this.pendingMeasuredCacheIndexes.push(index);\n _this.itemSizeCache = _extends({}, _this.itemSizeCache, (_extends2 = {}, _extends2[item.key] = measuredItemSize, _extends2));\n _this.notify();\n }\n };\n this.measureElement = function (node) {\n if (!node) {\n return;\n }\n _this._measureElement(node, true);\n };\n this.getVirtualItems = memo(function () {\n return [_this.getIndexes(), _this.getMeasurements()];\n }, function (indexes, measurements) {\n var virtualItems = [];\n for (var k = 0, len = indexes.length; k < len; k++) {\n var _i3 = indexes[k];\n var measurement = measurements[_i3];\n virtualItems.push(measurement);\n }\n return virtualItems;\n }, {\n key: process.env.NODE_ENV !== 'production' && 'getIndexes',\n debug: function debug() {\n return _this.options.debug;\n }\n });\n this.getOffsetForAlignment = function (toOffset, align) {\n var offset = _this.scrollOffset;\n var size = _this.getSize();\n if (align === 'auto') {\n if (toOffset <= offset) {\n align = 'start';\n } else if (toOffset >= offset + size) {\n align = 'end';\n } else {\n align = 'start';\n }\n }\n if (align === 'start') {\n return toOffset;\n } else if (align === 'end') {\n return toOffset - size;\n } else if (align === 'center') {\n return toOffset - size / 2;\n }\n return toOffset;\n };\n this.scrollToOffset = function (toOffset, _temp) {\n var _ref4 = _temp === void 0 ? {} : _temp,\n _ref4$align = _ref4.align,\n align = _ref4$align === void 0 ? 'start' : _ref4$align,\n behavior = _ref4.behavior;\n var options = {\n adjustments: undefined,\n behavior: behavior,\n sync: false\n };\n _this._scrollToOffset(_this.getOffsetForAlignment(toOffset, align), options);\n };\n this.scrollToIndex = function (index, _temp2) {\n var _ref5 = _temp2 === void 0 ? {} : _temp2,\n _ref5$align = _ref5.align,\n align = _ref5$align === void 0 ? 'auto' : _ref5$align,\n behavior = _ref5.behavior;\n _this.pendingScrollToIndexCallback = null;\n var offset = _this.scrollOffset;\n var size = _this.getSize();\n var count = _this.options.count;\n var measurements = _this.getMeasurements();\n var measurement = measurements[Math.max(0, Math.min(index, count - 1))];\n if (!measurement) {\n throw new Error(\"VirtualItem not found for index = \" + index);\n }\n if (align === 'auto') {\n if (measurement.end >= offset + size - _this.options.scrollPaddingEnd) {\n align = 'end';\n } else if (measurement.start <= offset + _this.options.scrollPaddingStart) {\n align = 'start';\n } else {\n return;\n }\n }\n var getOffsetForIndexAndAlignment = function getOffsetForIndexAndAlignment(measurement) {\n var toOffset = align === 'end' ? measurement.end + _this.options.scrollPaddingEnd : measurement.start - _this.options.scrollPaddingStart;\n return _this.getOffsetForAlignment(toOffset, align);\n };\n var toOffset = getOffsetForIndexAndAlignment(measurement);\n if (Math.round(toOffset) === Math.round(offset)) {\n return;\n }\n var options = {\n adjustments: undefined,\n behavior: behavior\n };\n _this._scrollToOffset(toOffset, options);\n var isDynamic = Object.keys(_this.measureElementCache).length > 0;\n if (isDynamic) {\n _this.pendingScrollToIndexCallback = function () {\n _this.scrollToIndex(index, {\n align: align,\n behavior: behavior\n });\n };\n }\n };\n this.scrollBy = function (adjustments, options) {\n _this._scrollToOffset(_this.scrollOffset, {\n adjustments: adjustments,\n behavior: options == null ? void 0 : options.behavior\n });\n };\n this.getTotalSize = function () {\n var _this$getMeasurements;\n return (((_this$getMeasurements = _this.getMeasurements()[_this.options.count - 1]) == null ? void 0 : _this$getMeasurements.end) || _this.options.paddingStart) - _this.options.scrollMargin + _this.options.paddingEnd;\n };\n this._scrollToOffset = function (offset, _ref6) {\n var adjustments = _ref6.adjustments,\n behavior = _ref6.behavior;\n _this.options.scrollToFn(offset, {\n behavior: behavior,\n adjustments: adjustments\n }, _this);\n };\n this.measure = function () {\n _this.itemSizeCache = {};\n _this.notify();\n };\n this.setOptions(_opts);\n this.scrollRect = this.options.initialRect;\n this.scrollOffset = this.options.initialOffset;\n this.measurementsCache = this.options.initialMeasurementsCache;\n this.measurementsCache.forEach(function (item) {\n _this.itemSizeCache[item.key] = item.size;\n });\n this.calculateRange();\n};\nvar findNearestBinarySearch = function findNearestBinarySearch(low, high, getCurrentValue, value) {\n while (low <= high) {\n var middle = (low + high) / 2 | 0;\n var currentValue = getCurrentValue(middle);\n if (currentValue < value) {\n low = middle + 1;\n } else if (currentValue > value) {\n high = middle - 1;\n } else {\n return middle;\n }\n }\n if (low > 0) {\n return low - 1;\n } else {\n return 0;\n }\n};\nfunction calculateRange(_ref7) {\n var measurements = _ref7.measurements,\n outerSize = _ref7.outerSize,\n scrollOffset = _ref7.scrollOffset;\n var count = measurements.length - 1;\n var getOffset = function getOffset(index) {\n return measurements[index].start;\n };\n var startIndex = findNearestBinarySearch(0, count, getOffset, scrollOffset);\n var endIndex = startIndex;\n while (endIndex < count && measurements[endIndex].end < scrollOffset + outerSize) {\n endIndex++;\n }\n return {\n startIndex: startIndex,\n endIndex: endIndex\n };\n}\n\nexport { Virtualizer, defaultKeyExtractor, defaultRangeExtractor, elementScroll, measureElement, observeElementOffset, observeElementRect, observeWindowOffset, observeWindowRect, windowScroll };\n//# sourceMappingURL=index.mjs.map\n","import {\n elementScroll,\n observeElementOffset,\n observeElementRect,\n observeWindowOffset,\n observeWindowRect,\n PartialKeys,\n Virtualizer,\n VirtualizerOptions,\n windowScroll,\n} from '@tanstack/virtual-core'\nexport * from '@tanstack/virtual-core'\n\nimport {\n createSignal,\n onMount,\n onCleanup,\n createComputed,\n mergeProps,\n} from 'solid-js'\nimport { createStore, reconcile } from 'solid-js/store'\n\nfunction createVirtualizerBase<\n TScrollElement extends Element | Window,\n TItemElement extends Element,\n>(\n options: VirtualizerOptions<TScrollElement, TItemElement>,\n): Virtualizer<TScrollElement, TItemElement> {\n const resolvedOptions: VirtualizerOptions<TScrollElement, TItemElement> =\n mergeProps(options)\n\n const instance = new Virtualizer<TScrollElement, TItemElement>(\n resolvedOptions,\n )\n\n const [virtualItems, setVirtualItems] = createStore(\n instance.getVirtualItems(),\n )\n const [totalSize, setTotalSize] = createSignal(instance.getTotalSize())\n\n const handler = {\n get(\n target: Virtualizer<TScrollElement, TItemElement>,\n prop: keyof Virtualizer<TScrollElement, TItemElement>,\n ) {\n switch (prop) {\n case 'getVirtualItems':\n return () => virtualItems\n case 'getTotalSize':\n return () => totalSize()\n default:\n return Reflect.get(target, prop)\n }\n },\n }\n\n const virtualizer = new Proxy(instance, handler)\n virtualizer.setOptions(resolvedOptions)\n\n onMount(() => {\n const cleanup = virtualizer._didMount()\n virtualizer._willUpdate()\n onCleanup(cleanup)\n })\n\n createComputed(() => {\n virtualizer.setOptions(\n mergeProps(resolvedOptions, options, {\n onChange: (instance: Virtualizer<TScrollElement, TItemElement>) => {\n instance._willUpdate()\n setVirtualItems(\n reconcile(instance.getVirtualItems(), {\n key: 'index',\n }),\n )\n setTotalSize(instance.getTotalSize())\n options.onChange?.(instance)\n },\n }),\n )\n virtualizer.measure()\n })\n\n return virtualizer\n}\n\nexport function createVirtualizer<\n TScrollElement extends Element,\n TItemElement extends Element,\n>(\n options: PartialKeys<\n VirtualizerOptions<TScrollElement, TItemElement>,\n 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'\n >,\n): Virtualizer<TScrollElement, TItemElement> {\n return createVirtualizerBase<TScrollElement, TItemElement>(\n mergeProps(\n {\n observeElementRect: observeElementRect,\n observeElementOffset: observeElementOffset,\n scrollToFn: elementScroll,\n },\n options,\n ),\n )\n}\n\nexport function createWindowVirtualizer<TItemElement extends Element>(\n options: PartialKeys<\n VirtualizerOptions<Window, TItemElement>,\n | 'getScrollElement'\n | 'observeElementRect'\n | 'observeElementOffset'\n | 'scrollToFn'\n >,\n): Virtualizer<Window, TItemElement> {\n return createVirtualizerBase<Window, TItemElement>(\n mergeProps(\n {\n getScrollElement: () =>\n typeof window !== 'undefined' ? window : null!,\n observeElementRect: observeWindowRect,\n observeElementOffset: observeWindowOffset,\n scrollToFn: windowScroll,\n },\n options,\n ),\n )\n}\n"],"names":["_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","this","memo","getDeps","fn","opts","result","deps","depTime","debug","Date","now","resultTime","newDeps","some","dep","index","onChange","depEndTime","Math","round","resultEndTime","resultFpsPercentage","pad","str","num","String","console","info","max","min","defaultKeyExtractor","defaultRangeExtractor","range","start","startIndex","overscan","end","endIndex","count","arr","_i","push","observeElementRect","instance","cb","observer","ResizeObserver","entries","_entries$","_entries$2","width","contentRect","height","scrollElement","getBoundingClientRect","observe","unobserve","observeWindowRect","memoizedCallback","prev","rect","options","horizontal","memoRectCallback","onResize","innerWidth","innerHeight","addEventListener","capture","passive","removeEventListener","scrollProps","element","window","createOffsetObserver","mode","propX","propY","prevX","prevY","scroll","offset","onScroll","e","currentTarget","scrollX","scrollY","observeElementOffset","observeWindowOffset","measureElement","windowScroll","_ref","_instance$scrollEleme","_instance$scrollEleme2","_ref$adjustments","adjustments","behavior","toOffset","scrollTo","elementScroll","_ref2","_instance$scrollEleme3","_instance$scrollEleme4","_ref2$adjustments","Virtualizer","_opts","_ro","_this","unsubs","isScrolling","isScrollingTimeoutId","measurementsCache","itemSizeCache","pendingMeasuredCacheIndexes","scrollDirection","scrollAdjustments","measureElementCache","pendingScrollToIndexCallback","getResizeObserver","forEach","entry","_measureElement","setOptions","_ref3","initialOffset","paddingStart","paddingEnd","scrollPaddingStart","scrollPaddingEnd","getItemKey","rangeExtractor","initialRect","scrollMargin","scrollingDelay","indexAttribute","initialMeasurementsCache","notify","cleanup","filter","Boolean","d","_didMount","ro","values","node","disconnect","_willUpdate","getScrollElement","_scrollToOffset","scrollOffset","undefined","scrollRect","calculateRange","clearTimeout","onIsScrollingChange","setTimeout","getSize","getMeasurements","measurements","slice","_i2","measuredSize","size","estimateSize","outerSize","_ref7","low","high","getCurrentValue","value","middle","currentValue","findNearestBinarySearch","getIndexes","indexFromElement","attributeName","indexStr","getAttribute","parseInt","warn","_sync","_this$itemSizeCache$i","item","prevNode","isConnected","_extends2","measuredItemSize","delta","getVirtualItems","indexes","virtualItems","k","len","measurement","getOffsetForAlignment","align","scrollToOffset","_temp","_ref4","_ref4$align","sync","scrollToIndex","_temp2","_ref5","_ref5$align","Error","getOffsetForIndexAndAlignment","keys","scrollBy","getTotalSize","_this$getMeasurements","_ref6","scrollToFn","measure","createVirtualizerBase","resolvedOptions","mergeProps","_createStore","createStore","setVirtualItems","_createSignal","createSignal","totalSize","setTotalSize","virtualizer","Proxy","get","prop","Reflect","onMount","onCleanup","createComputed","reconcile"],"mappings":"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"}
1
+ {"version":3,"file":"index.production.js","sources":["../../../virtual-core/build/lib/_virtual/_rollupPluginBabelHelpers.mjs","../../../virtual-core/build/lib/utils.mjs","../../../virtual-core/build/lib/index.mjs","../../src/index.tsx"],"sourcesContent":["/**\n * virtual-core\n *\n * Copyright (c) TanStack\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nfunction _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}\n\nexport { _extends as extends };\n//# sourceMappingURL=_rollupPluginBabelHelpers.mjs.map\n","/**\n * virtual-core\n *\n * Copyright (c) TanStack\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nfunction memo(getDeps, fn, opts) {\n var deps = [];\n var result;\n return function () {\n var depTime;\n if (opts.key && opts.debug != null && opts.debug()) depTime = Date.now();\n var newDeps = getDeps();\n var depsChanged = newDeps.length !== deps.length || newDeps.some(function (dep, index) {\n return deps[index] !== dep;\n });\n if (!depsChanged) {\n return result;\n }\n deps = newDeps;\n var resultTime;\n if (opts.key && opts.debug != null && opts.debug()) resultTime = Date.now();\n result = fn.apply(void 0, newDeps);\n opts == null ? void 0 : opts.onChange == null ? void 0 : opts.onChange(result);\n if (opts.key && opts.debug != null && opts.debug()) {\n var depEndTime = Math.round((Date.now() - depTime) * 100) / 100;\n var resultEndTime = Math.round((Date.now() - resultTime) * 100) / 100;\n var resultFpsPercentage = resultEndTime / 16;\n var pad = function pad(str, num) {\n str = String(str);\n while (str.length < num) {\n str = ' ' + str;\n }\n return str;\n };\n console.info(\"%c\\u23F1 \" + pad(resultEndTime, 5) + \" /\" + pad(depEndTime, 5) + \" ms\", \"\\n font-size: .6rem;\\n font-weight: bold;\\n color: hsl(\" + Math.max(0, Math.min(120 - 120 * resultFpsPercentage, 120)) + \"deg 100% 31%);\", opts == null ? void 0 : opts.key);\n }\n return result;\n };\n}\n\nexport { memo };\n//# sourceMappingURL=utils.mjs.map\n","/**\n * virtual-core\n *\n * Copyright (c) TanStack\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nimport { extends as _extends } from './_virtual/_rollupPluginBabelHelpers.mjs';\nimport { memo } from './utils.mjs';\nexport { memo } from './utils.mjs';\n\n//\n\n//\n\nvar defaultKeyExtractor = function defaultKeyExtractor(index) {\n return index;\n};\nvar defaultRangeExtractor = function defaultRangeExtractor(range) {\n var start = Math.max(range.startIndex - range.overscan, 0);\n var end = Math.min(range.endIndex + range.overscan, range.count - 1);\n var arr = [];\n for (var _i = start; _i <= end; _i++) {\n arr.push(_i);\n }\n return arr;\n};\nvar memoRectCallback = function memoRectCallback(instance, cb) {\n var prev = {\n height: -1,\n width: -1\n };\n return function (rect) {\n if (instance.options.horizontal ? rect.width !== prev.width : rect.height !== prev.height) {\n cb(rect);\n }\n prev = rect;\n };\n};\nvar observeElementRect = function observeElementRect(instance, cb) {\n var observer = new ResizeObserver(function (entries) {\n var entry = entries[0];\n if (entry) {\n var _entry$contentRect = entry.contentRect,\n width = _entry$contentRect.width,\n height = _entry$contentRect.height;\n cb({\n width: Math.round(width),\n height: Math.round(height)\n });\n } else {\n cb({\n width: 0,\n height: 0\n });\n }\n });\n if (!instance.scrollElement) {\n return;\n }\n cb(instance.scrollElement.getBoundingClientRect());\n observer.observe(instance.scrollElement);\n return function () {\n observer.unobserve(instance.scrollElement);\n };\n};\nvar observeWindowRect = function observeWindowRect(instance, cb) {\n var memoizedCallback = memoRectCallback(instance, cb);\n var onResize = function onResize() {\n return memoizedCallback({\n width: instance.scrollElement.innerWidth,\n height: instance.scrollElement.innerHeight\n });\n };\n if (!instance.scrollElement) {\n return;\n }\n onResize();\n instance.scrollElement.addEventListener('resize', onResize, {\n capture: false,\n passive: true\n });\n return function () {\n instance.scrollElement.removeEventListener('resize', onResize);\n };\n};\nvar scrollProps = {\n element: ['scrollLeft', 'scrollTop'],\n window: ['scrollX', 'scrollY']\n};\nvar createOffsetObserver = function createOffsetObserver(mode) {\n return function (instance, cb) {\n if (!instance.scrollElement) {\n return;\n }\n var propX = scrollProps[mode][0];\n var propY = scrollProps[mode][1];\n var prevX = instance.scrollElement[propX];\n var prevY = instance.scrollElement[propY];\n var scroll = function scroll() {\n var offset = instance.scrollElement[instance.options.horizontal ? propX : propY];\n cb(offset);\n };\n scroll();\n var onScroll = function onScroll(e) {\n var target = e.currentTarget;\n var scrollX = target[propX];\n var scrollY = target[propY];\n if (instance.options.horizontal ? prevX - scrollX : prevY - scrollY) {\n scroll();\n }\n prevX = scrollX;\n prevY = scrollY;\n };\n instance.scrollElement.addEventListener('scroll', onScroll, {\n capture: false,\n passive: true\n });\n return function () {\n instance.scrollElement.removeEventListener('scroll', onScroll);\n };\n };\n};\nvar observeElementOffset = createOffsetObserver('element');\nvar observeWindowOffset = createOffsetObserver('window');\nvar measureElement = function measureElement(element, instance) {\n return Math.round(element.getBoundingClientRect()[instance.options.horizontal ? 'width' : 'height']);\n};\nvar windowScroll = function windowScroll(offset, _ref, instance) {\n var _instance$scrollEleme, _instance$scrollEleme2;\n var _ref$adjustments = _ref.adjustments,\n adjustments = _ref$adjustments === void 0 ? 0 : _ref$adjustments,\n behavior = _ref.behavior;\n var toOffset = offset + adjustments;\n (_instance$scrollEleme = instance.scrollElement) == null ? void 0 : _instance$scrollEleme.scrollTo == null ? void 0 : _instance$scrollEleme.scrollTo((_instance$scrollEleme2 = {}, _instance$scrollEleme2[instance.options.horizontal ? 'left' : 'top'] = toOffset, _instance$scrollEleme2.behavior = behavior, _instance$scrollEleme2));\n};\nvar elementScroll = function elementScroll(offset, _ref2, instance) {\n var _instance$scrollEleme3, _instance$scrollEleme4;\n var _ref2$adjustments = _ref2.adjustments,\n adjustments = _ref2$adjustments === void 0 ? 0 : _ref2$adjustments,\n behavior = _ref2.behavior;\n var toOffset = offset + adjustments;\n (_instance$scrollEleme3 = instance.scrollElement) == null ? void 0 : _instance$scrollEleme3.scrollTo == null ? void 0 : _instance$scrollEleme3.scrollTo((_instance$scrollEleme4 = {}, _instance$scrollEleme4[instance.options.horizontal ? 'left' : 'top'] = toOffset, _instance$scrollEleme4.behavior = behavior, _instance$scrollEleme4));\n};\nvar Virtualizer = function Virtualizer(_opts) {\n var _this = this;\n this.unsubs = [];\n this.scrollElement = null;\n this.isScrolling = false;\n this.isScrollingTimeoutId = null;\n this.measurementsCache = [];\n this.itemSizeCache = {};\n this.pendingMeasuredCacheIndexes = [];\n this.scrollDirection = null;\n this.scrollAdjustments = 0;\n this.measureElementCache = {};\n this.pendingScrollToIndexCallback = null;\n this.getResizeObserver = function () {\n var _ro = null;\n return function () {\n if (_ro) {\n return _ro;\n } else if (typeof ResizeObserver !== 'undefined') {\n return _ro = new ResizeObserver(function (entries) {\n entries.forEach(function (entry) {\n _this._measureElement(entry.target, false);\n });\n });\n } else {\n return null;\n }\n };\n }();\n this.range = {\n startIndex: 0,\n endIndex: 0\n };\n this.setOptions = function (opts) {\n Object.entries(opts).forEach(function (_ref3) {\n var key = _ref3[0],\n value = _ref3[1];\n if (typeof value === 'undefined') delete opts[key];\n });\n _this.options = _extends({\n debug: false,\n initialOffset: 0,\n overscan: 1,\n paddingStart: 0,\n paddingEnd: 0,\n scrollPaddingStart: 0,\n scrollPaddingEnd: 0,\n horizontal: false,\n getItemKey: defaultKeyExtractor,\n rangeExtractor: defaultRangeExtractor,\n onChange: function onChange() {},\n measureElement: measureElement,\n initialRect: {\n width: 0,\n height: 0\n },\n scrollMargin: 0,\n scrollingDelay: 150,\n indexAttribute: 'data-index',\n initialMeasurementsCache: []\n }, opts);\n };\n this.notify = function () {\n _this.options.onChange == null ? void 0 : _this.options.onChange(_this);\n };\n this.cleanup = function () {\n _this.unsubs.filter(Boolean).forEach(function (d) {\n return d();\n });\n _this.unsubs = [];\n _this.scrollElement = null;\n };\n this._didMount = function () {\n var ro = _this.getResizeObserver();\n Object.values(_this.measureElementCache).forEach(function (node) {\n return ro == null ? void 0 : ro.observe(node);\n });\n return function () {\n ro == null ? void 0 : ro.disconnect();\n _this.cleanup();\n };\n };\n this._willUpdate = function () {\n _this.pendingScrollToIndexCallback == null ? void 0 : _this.pendingScrollToIndexCallback();\n var scrollElement = _this.options.getScrollElement();\n if (_this.scrollElement !== scrollElement) {\n _this.cleanup();\n _this.scrollElement = scrollElement;\n _this._scrollToOffset(_this.scrollOffset, {\n adjustments: undefined,\n behavior: undefined\n });\n _this.unsubs.push(_this.options.observeElementRect(_this, function (rect) {\n _this.scrollRect = rect;\n _this.calculateRange();\n }));\n _this.unsubs.push(_this.options.observeElementOffset(_this, function (offset) {\n _this.scrollAdjustments = 0;\n if (_this.scrollOffset === offset) {\n return;\n }\n if (_this.isScrollingTimeoutId !== null) {\n clearTimeout(_this.isScrollingTimeoutId);\n _this.isScrollingTimeoutId = null;\n }\n var onIsScrollingChange = function onIsScrollingChange(isScrolling) {\n if (_this.isScrolling !== isScrolling) {\n _this.isScrolling = isScrolling;\n _this.notify();\n }\n };\n _this.scrollDirection = _this.scrollOffset < offset ? 'forward' : 'backward';\n _this.scrollOffset = offset;\n _this.calculateRange();\n onIsScrollingChange(true);\n _this.isScrollingTimeoutId = setTimeout(function () {\n _this.isScrollingTimeoutId = null;\n _this.scrollDirection = null;\n onIsScrollingChange(false);\n }, _this.options.scrollingDelay);\n }));\n } else if (!_this.isScrolling) {\n _this.calculateRange();\n }\n };\n this.getSize = function () {\n return _this.scrollRect[_this.options.horizontal ? 'width' : 'height'];\n };\n this.getMeasurements = memo(function () {\n return [_this.options.count, _this.options.paddingStart, _this.options.scrollMargin, _this.options.getItemKey, _this.itemSizeCache];\n }, function (count, paddingStart, scrollMargin, getItemKey, itemSizeCache) {\n var min = _this.pendingMeasuredCacheIndexes.length > 0 ? Math.min.apply(Math, _this.pendingMeasuredCacheIndexes) : 0;\n _this.pendingMeasuredCacheIndexes = [];\n var measurements = _this.measurementsCache.slice(0, min);\n for (var _i2 = min; _i2 < count; _i2++) {\n var key = getItemKey(_i2);\n var measuredSize = itemSizeCache[key];\n var start = measurements[_i2 - 1] ? measurements[_i2 - 1].end : paddingStart + scrollMargin;\n var size = typeof measuredSize === 'number' ? measuredSize : _this.options.estimateSize(_i2);\n var end = start + size;\n measurements[_i2] = {\n index: _i2,\n start: start,\n size: size,\n end: end,\n key: key\n };\n }\n _this.measurementsCache = measurements;\n return measurements;\n }, {\n key: process.env.NODE_ENV !== 'production' && 'getMeasurements',\n debug: function debug() {\n return _this.options.debug;\n }\n });\n this.calculateRange = memo(function () {\n return [_this.getMeasurements(), _this.getSize(), _this.scrollOffset];\n }, function (measurements, outerSize, scrollOffset) {\n var range = calculateRange({\n measurements: measurements,\n outerSize: outerSize,\n scrollOffset: scrollOffset\n });\n if (range.startIndex !== _this.range.startIndex || range.endIndex !== _this.range.endIndex) {\n _this.range = range;\n _this.notify();\n }\n return _this.range;\n }, {\n key: process.env.NODE_ENV !== 'production' && 'calculateRange',\n debug: function debug() {\n return _this.options.debug;\n }\n });\n this.getIndexes = memo(function () {\n return [_this.options.rangeExtractor, _this.range, _this.options.overscan, _this.options.count];\n }, function (rangeExtractor, range, overscan, count) {\n return rangeExtractor(_extends({}, range, {\n overscan: overscan,\n count: count\n }));\n }, {\n key: process.env.NODE_ENV !== 'production' && 'getIndexes',\n debug: function debug() {\n return _this.options.debug;\n }\n });\n this.indexFromElement = function (node) {\n var attributeName = _this.options.indexAttribute;\n var indexStr = node.getAttribute(attributeName);\n if (!indexStr) {\n console.warn(\"Missing attribute name '\" + attributeName + \"={index}' on measured element.\");\n return -1;\n }\n return parseInt(indexStr, 10);\n };\n this._measureElement = function (node, _sync) {\n var _this$itemSizeCache$i;\n var index = _this.indexFromElement(node);\n var item = _this.measurementsCache[index];\n if (!item) {\n return;\n }\n var prevNode = _this.measureElementCache[item.key];\n var ro = _this.getResizeObserver();\n if (!node.isConnected) {\n if (prevNode) {\n ro == null ? void 0 : ro.unobserve(prevNode);\n delete _this.measureElementCache[item.key];\n }\n return;\n }\n if (!prevNode || prevNode !== node) {\n if (prevNode) {\n ro == null ? void 0 : ro.unobserve(prevNode);\n }\n _this.measureElementCache[item.key] = node;\n ro == null ? void 0 : ro.observe(node);\n }\n var measuredItemSize = _this.options.measureElement(node, _this);\n var itemSize = (_this$itemSizeCache$i = _this.itemSizeCache[item.key]) != null ? _this$itemSizeCache$i : item.size;\n var delta = measuredItemSize - itemSize;\n if (delta !== 0) {\n var _extends2;\n if (item.start < _this.scrollOffset && _this.isScrolling && _this.scrollDirection === 'backward') {\n if (process.env.NODE_ENV !== 'production' && _this.options.debug) {\n console.info('correction', delta);\n }\n _this._scrollToOffset(_this.scrollOffset, {\n adjustments: _this.scrollAdjustments += delta,\n behavior: undefined\n });\n }\n _this.pendingMeasuredCacheIndexes.push(index);\n _this.itemSizeCache = _extends({}, _this.itemSizeCache, (_extends2 = {}, _extends2[item.key] = measuredItemSize, _extends2));\n _this.notify();\n }\n };\n this.measureElement = function (node) {\n if (!node) {\n return;\n }\n _this._measureElement(node, true);\n };\n this.getVirtualItems = memo(function () {\n return [_this.getIndexes(), _this.getMeasurements()];\n }, function (indexes, measurements) {\n var virtualItems = [];\n for (var k = 0, len = indexes.length; k < len; k++) {\n var _i3 = indexes[k];\n var measurement = measurements[_i3];\n virtualItems.push(measurement);\n }\n return virtualItems;\n }, {\n key: process.env.NODE_ENV !== 'production' && 'getIndexes',\n debug: function debug() {\n return _this.options.debug;\n }\n });\n this.getOffsetForAlignment = function (toOffset, align) {\n var offset = _this.scrollOffset;\n var size = _this.getSize();\n if (align === 'auto') {\n if (toOffset <= offset) {\n align = 'start';\n } else if (toOffset >= offset + size) {\n align = 'end';\n } else {\n align = 'start';\n }\n }\n if (align === 'start') {\n return toOffset;\n } else if (align === 'end') {\n return toOffset - size;\n } else if (align === 'center') {\n return toOffset - size / 2;\n }\n return toOffset;\n };\n this.scrollToOffset = function (toOffset, _temp) {\n var _ref4 = _temp === void 0 ? {} : _temp,\n _ref4$align = _ref4.align,\n align = _ref4$align === void 0 ? 'start' : _ref4$align,\n behavior = _ref4.behavior;\n var options = {\n adjustments: undefined,\n behavior: behavior,\n sync: false\n };\n _this._scrollToOffset(_this.getOffsetForAlignment(toOffset, align), options);\n };\n this.scrollToIndex = function (index, _temp2) {\n var _ref5 = _temp2 === void 0 ? {} : _temp2,\n _ref5$align = _ref5.align,\n align = _ref5$align === void 0 ? 'auto' : _ref5$align,\n behavior = _ref5.behavior;\n _this.pendingScrollToIndexCallback = null;\n var offset = _this.scrollOffset;\n var size = _this.getSize();\n var count = _this.options.count;\n var measurements = _this.getMeasurements();\n var measurement = measurements[Math.max(0, Math.min(index, count - 1))];\n if (!measurement) {\n throw new Error(\"VirtualItem not found for index = \" + index);\n }\n if (align === 'auto') {\n if (measurement.end >= offset + size - _this.options.scrollPaddingEnd) {\n align = 'end';\n } else if (measurement.start <= offset + _this.options.scrollPaddingStart) {\n align = 'start';\n } else {\n return;\n }\n }\n var getOffsetForIndexAndAlignment = function getOffsetForIndexAndAlignment(measurement) {\n var toOffset = align === 'end' ? measurement.end + _this.options.scrollPaddingEnd : measurement.start - _this.options.scrollPaddingStart;\n return _this.getOffsetForAlignment(toOffset, align);\n };\n var toOffset = getOffsetForIndexAndAlignment(measurement);\n if (toOffset === offset) {\n return;\n }\n var options = {\n adjustments: undefined,\n behavior: behavior\n };\n _this._scrollToOffset(toOffset, options);\n var isDynamic = Object.keys(_this.measureElementCache).length > 0;\n if (isDynamic) {\n _this.pendingScrollToIndexCallback = function () {\n _this.scrollToIndex(index, {\n align: align,\n behavior: behavior\n });\n };\n }\n };\n this.scrollBy = function (adjustments, options) {\n _this._scrollToOffset(_this.scrollOffset, {\n adjustments: adjustments,\n behavior: options == null ? void 0 : options.behavior\n });\n };\n this.getTotalSize = function () {\n var _this$getMeasurements;\n return (((_this$getMeasurements = _this.getMeasurements()[_this.options.count - 1]) == null ? void 0 : _this$getMeasurements.end) || _this.options.paddingStart) - _this.options.scrollMargin + _this.options.paddingEnd;\n };\n this._scrollToOffset = function (offset, _ref6) {\n var adjustments = _ref6.adjustments,\n behavior = _ref6.behavior;\n _this.options.scrollToFn(offset, {\n behavior: behavior,\n adjustments: adjustments\n }, _this);\n };\n this.measure = function () {\n _this.itemSizeCache = {};\n _this.notify();\n };\n this.setOptions(_opts);\n this.scrollRect = this.options.initialRect;\n this.scrollOffset = this.options.initialOffset;\n this.measurementsCache = this.options.initialMeasurementsCache;\n this.measurementsCache.forEach(function (item) {\n _this.itemSizeCache[item.key] = item.size;\n });\n this.calculateRange();\n};\nvar findNearestBinarySearch = function findNearestBinarySearch(low, high, getCurrentValue, value) {\n while (low <= high) {\n var middle = (low + high) / 2 | 0;\n var currentValue = getCurrentValue(middle);\n if (currentValue < value) {\n low = middle + 1;\n } else if (currentValue > value) {\n high = middle - 1;\n } else {\n return middle;\n }\n }\n if (low > 0) {\n return low - 1;\n } else {\n return 0;\n }\n};\nfunction calculateRange(_ref7) {\n var measurements = _ref7.measurements,\n outerSize = _ref7.outerSize,\n scrollOffset = _ref7.scrollOffset;\n var count = measurements.length - 1;\n var getOffset = function getOffset(index) {\n return measurements[index].start;\n };\n var startIndex = findNearestBinarySearch(0, count, getOffset, scrollOffset);\n var endIndex = startIndex;\n while (endIndex < count && measurements[endIndex].end < scrollOffset + outerSize) {\n endIndex++;\n }\n return {\n startIndex: startIndex,\n endIndex: endIndex\n };\n}\n\nexport { Virtualizer, defaultKeyExtractor, defaultRangeExtractor, elementScroll, measureElement, observeElementOffset, observeElementRect, observeWindowOffset, observeWindowRect, windowScroll };\n//# sourceMappingURL=index.mjs.map\n","import {\n elementScroll,\n observeElementOffset,\n observeElementRect,\n observeWindowOffset,\n observeWindowRect,\n PartialKeys,\n Virtualizer,\n VirtualizerOptions,\n windowScroll,\n} from '@tanstack/virtual-core'\nexport * from '@tanstack/virtual-core'\n\nimport {\n createSignal,\n onMount,\n onCleanup,\n createComputed,\n mergeProps,\n} from 'solid-js'\nimport { createStore, reconcile } from 'solid-js/store'\n\nfunction createVirtualizerBase<\n TScrollElement extends Element | Window,\n TItemElement extends Element,\n>(\n options: VirtualizerOptions<TScrollElement, TItemElement>,\n): Virtualizer<TScrollElement, TItemElement> {\n const resolvedOptions: VirtualizerOptions<TScrollElement, TItemElement> =\n mergeProps(options)\n\n const instance = new Virtualizer<TScrollElement, TItemElement>(\n resolvedOptions,\n )\n\n const [virtualItems, setVirtualItems] = createStore(\n instance.getVirtualItems(),\n )\n const [totalSize, setTotalSize] = createSignal(instance.getTotalSize())\n\n const handler = {\n get(\n target: Virtualizer<TScrollElement, TItemElement>,\n prop: keyof Virtualizer<TScrollElement, TItemElement>,\n ) {\n switch (prop) {\n case 'getVirtualItems':\n return () => virtualItems\n case 'getTotalSize':\n return () => totalSize()\n default:\n return Reflect.get(target, prop)\n }\n },\n }\n\n const virtualizer = new Proxy(instance, handler)\n virtualizer.setOptions(resolvedOptions)\n\n onMount(() => {\n const cleanup = virtualizer._didMount()\n virtualizer._willUpdate()\n onCleanup(cleanup)\n })\n\n createComputed(() => {\n virtualizer.setOptions(\n mergeProps(resolvedOptions, options, {\n onChange: (instance: Virtualizer<TScrollElement, TItemElement>) => {\n instance._willUpdate()\n setVirtualItems(\n reconcile(instance.getVirtualItems(), {\n key: 'index',\n }),\n )\n setTotalSize(instance.getTotalSize())\n options.onChange?.(instance)\n },\n }),\n )\n virtualizer.measure()\n })\n\n return virtualizer\n}\n\nexport function createVirtualizer<\n TScrollElement extends Element,\n TItemElement extends Element,\n>(\n options: PartialKeys<\n VirtualizerOptions<TScrollElement, TItemElement>,\n 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'\n >,\n): Virtualizer<TScrollElement, TItemElement> {\n return createVirtualizerBase<TScrollElement, TItemElement>(\n mergeProps(\n {\n observeElementRect: observeElementRect,\n observeElementOffset: observeElementOffset,\n scrollToFn: elementScroll,\n },\n options,\n ),\n )\n}\n\nexport function createWindowVirtualizer<TItemElement extends Element>(\n options: PartialKeys<\n VirtualizerOptions<Window, TItemElement>,\n | 'getScrollElement'\n | 'observeElementRect'\n | 'observeElementOffset'\n | 'scrollToFn'\n >,\n): Virtualizer<Window, TItemElement> {\n return createVirtualizerBase<Window, TItemElement>(\n mergeProps(\n {\n getScrollElement: () =>\n typeof window !== 'undefined' ? window : null!,\n observeElementRect: observeWindowRect,\n observeElementOffset: observeWindowOffset,\n scrollToFn: windowScroll,\n },\n options,\n ),\n )\n}\n"],"names":["_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","this","memo","getDeps","fn","opts","result","deps","depTime","debug","Date","now","resultTime","newDeps","some","dep","index","onChange","depEndTime","Math","round","resultEndTime","resultFpsPercentage","pad","str","num","String","console","info","max","min","defaultKeyExtractor","defaultRangeExtractor","range","start","startIndex","overscan","end","endIndex","count","arr","_i","push","observeElementRect","instance","cb","observer","ResizeObserver","entries","entry","_entry$contentRect","contentRect","width","height","scrollElement","getBoundingClientRect","observe","unobserve","observeWindowRect","memoizedCallback","prev","rect","options","horizontal","memoRectCallback","onResize","innerWidth","innerHeight","addEventListener","capture","passive","removeEventListener","scrollProps","element","window","createOffsetObserver","mode","propX","propY","prevX","prevY","scroll","offset","onScroll","e","currentTarget","scrollX","scrollY","observeElementOffset","observeWindowOffset","measureElement","windowScroll","_ref","_instance$scrollEleme","_instance$scrollEleme2","_ref$adjustments","adjustments","behavior","toOffset","scrollTo","elementScroll","_ref2","_instance$scrollEleme3","_instance$scrollEleme4","_ref2$adjustments","Virtualizer","_opts","_ro","_this","unsubs","isScrolling","isScrollingTimeoutId","measurementsCache","itemSizeCache","pendingMeasuredCacheIndexes","scrollDirection","scrollAdjustments","measureElementCache","pendingScrollToIndexCallback","getResizeObserver","forEach","_measureElement","setOptions","_ref3","initialOffset","paddingStart","paddingEnd","scrollPaddingStart","scrollPaddingEnd","getItemKey","rangeExtractor","initialRect","scrollMargin","scrollingDelay","indexAttribute","initialMeasurementsCache","notify","cleanup","filter","Boolean","d","_didMount","ro","values","node","disconnect","_willUpdate","getScrollElement","_scrollToOffset","scrollOffset","undefined","scrollRect","calculateRange","clearTimeout","onIsScrollingChange","setTimeout","getSize","getMeasurements","measurements","slice","_i2","measuredSize","size","estimateSize","outerSize","_ref7","low","high","getCurrentValue","value","middle","currentValue","findNearestBinarySearch","getIndexes","indexFromElement","attributeName","indexStr","getAttribute","parseInt","warn","_sync","_this$itemSizeCache$i","item","prevNode","isConnected","_extends2","measuredItemSize","delta","getVirtualItems","indexes","virtualItems","k","len","measurement","getOffsetForAlignment","align","scrollToOffset","_temp","_ref4","_ref4$align","sync","scrollToIndex","_temp2","_ref5","_ref5$align","Error","getOffsetForIndexAndAlignment","keys","scrollBy","getTotalSize","_this$getMeasurements","_ref6","scrollToFn","measure","createVirtualizerBase","resolvedOptions","mergeProps","_createStore","createStore","setVirtualItems","_createSignal","createSignal","totalSize","setTotalSize","virtualizer","Proxy","get","prop","Reflect","onMount","onCleanup","createComputed","reconcile"],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tanstack/solid-virtual",
3
3
  "author": "Tanner Linsley",
4
- "version": "3.0.0-beta.34",
4
+ "version": "3.0.0-beta.35",
5
5
  "description": "Headless UI for virtualizing scrollable elements in Solid",
6
6
  "license": "MIT",
7
7
  "homepage": "https://github.com/tanstack/virtual#readme",
@@ -45,7 +45,7 @@
45
45
  "solid-js": "^1.3.15"
46
46
  },
47
47
  "dependencies": {
48
- "@tanstack/virtual-core": "3.0.0-beta.34"
48
+ "@tanstack/virtual-core": "3.0.0-beta.35"
49
49
  },
50
50
  "peerDependencies": {
51
51
  "solid-js": "^1.3.0"