@tanstack/vue-virtual 3.0.0-beta.62 → 3.0.0-beta.64

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.
@@ -1,6 +1,6 @@
1
1
  import { PartialKeys, Virtualizer, VirtualizerOptions } from '@tanstack/virtual-core';
2
2
  import { Ref } from 'vue';
3
+ export * from '@tanstack/virtual-core';
3
4
  type MaybeRef<T> = T | Ref<T>;
4
5
  export declare function useVirtualizer<TScrollElement extends Element, TItemElement extends Element>(options: MaybeRef<PartialKeys<VirtualizerOptions<TScrollElement, TItemElement>, 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'>>): Ref<Virtualizer<TScrollElement, TItemElement>>;
5
6
  export declare function useWindowVirtualizer<TItemElement extends Element>(options: MaybeRef<PartialKeys<VirtualizerOptions<Window, TItemElement>, 'observeElementRect' | 'observeElementOffset' | 'scrollToFn' | 'getScrollElement'>>): Ref<Virtualizer<Window, TItemElement>>;
6
- export {};
@@ -10,6 +10,7 @@
10
10
  */
11
11
  import { extends as _extends } from './_virtual/_rollupPluginBabelHelpers.esm.js';
12
12
  import { observeElementRect, observeElementOffset, elementScroll, observeWindowRect, observeWindowOffset, windowScroll, Virtualizer } from '@tanstack/virtual-core';
13
+ export * from '@tanstack/virtual-core';
13
14
  import { computed, unref, shallowRef, watch, triggerRef, onScopeDispose } from 'vue';
14
15
 
15
16
  function useVirtualizerBase(options) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../../src/index.ts"],"sourcesContent":["import {\n elementScroll,\n observeElementOffset,\n observeElementRect,\n observeWindowOffset,\n observeWindowRect,\n PartialKeys,\n Virtualizer,\n VirtualizerOptions,\n windowScroll,\n} from '@tanstack/virtual-core'\nimport {\n computed,\n onScopeDispose,\n Ref,\n shallowRef,\n triggerRef,\n unref,\n watch,\n} from 'vue'\n\ntype MaybeRef<T> = T | Ref<T>\n\nfunction useVirtualizerBase<\n TScrollElement extends Element | Window,\n TItemElement extends Element,\n>(\n options: MaybeRef<VirtualizerOptions<TScrollElement, TItemElement>>,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n const virtualizer = new Virtualizer(unref(options))\n const state = shallowRef(virtualizer)\n\n const cleanup = virtualizer._didMount()\n\n watch(\n () => unref(options).getScrollElement(),\n (el) => {\n if (el) {\n virtualizer._willUpdate()\n }\n },\n {\n immediate: true,\n },\n )\n\n watch(\n () => unref(options),\n (options) => {\n virtualizer.setOptions({\n ...options,\n onChange: (instance) => {\n triggerRef(state)\n options.onChange?.(instance)\n },\n })\n\n virtualizer._willUpdate()\n triggerRef(state)\n },\n {\n immediate: true,\n },\n )\n\n onScopeDispose(cleanup)\n\n return state\n}\n\nexport function useVirtualizer<\n TScrollElement extends Element,\n TItemElement extends Element,\n>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<TScrollElement, TItemElement>,\n 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'\n >\n >,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n return useVirtualizerBase<TScrollElement, TItemElement>(\n computed(() => ({\n observeElementRect: observeElementRect,\n observeElementOffset: observeElementOffset,\n scrollToFn: elementScroll,\n ...unref(options),\n })),\n )\n}\n\nexport function useWindowVirtualizer<TItemElement extends Element>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<Window, TItemElement>,\n | 'observeElementRect'\n | 'observeElementOffset'\n | 'scrollToFn'\n | 'getScrollElement'\n >\n >,\n): Ref<Virtualizer<Window, TItemElement>> {\n return useVirtualizerBase<Window, TItemElement>(\n computed(() => ({\n getScrollElement: () => (typeof document !== 'undefined' ? window : null),\n observeElementRect: observeWindowRect,\n observeElementOffset: observeWindowOffset,\n scrollToFn: windowScroll,\n initialOffset:\n typeof document !== 'undefined' ? window.scrollY : undefined,\n ...unref(options),\n })),\n )\n}\n"],"names":["useVirtualizerBase","options","virtualizer","Virtualizer","unref","state","shallowRef","cleanup","_didMount","watch","getScrollElement","el","_willUpdate","immediate","setOptions","onChange","instance","triggerRef","onScopeDispose","useVirtualizer","computed","observeElementRect","observeElementOffset","scrollToFn","elementScroll","useWindowVirtualizer","document","window","observeWindowRect","observeWindowOffset","windowScroll","initialOffset","scrollY","undefined"],"mappings":";;;;;;;;;;;;;;AAuBA,SAASA,kBAAkB,CAIzBC,OAAmE,EACnB;EAChD,IAAMC,WAAW,GAAG,IAAIC,WAAW,CAACC,KAAK,CAACH,OAAO,CAAC,CAAC,CAAA;AACnD,EAAA,IAAMI,KAAK,GAAGC,UAAU,CAACJ,WAAW,CAAC,CAAA;AAErC,EAAA,IAAMK,OAAO,GAAGL,WAAW,CAACM,SAAS,EAAE,CAAA;AAEvCC,EAAAA,KAAK,CACH,YAAA;AAAA,IAAA,OAAML,KAAK,CAACH,OAAO,CAAC,CAACS,gBAAgB,EAAE,CAAA;GACvC,EAAA,UAACC,EAAE,EAAK;AACN,IAAA,IAAIA,EAAE,EAAE;MACNT,WAAW,CAACU,WAAW,EAAE,CAAA;AAC3B,KAAA;AACF,GAAC,EACD;AACEC,IAAAA,SAAS,EAAE,IAAA;AACb,GAAC,CACF,CAAA;AAEDJ,EAAAA,KAAK,CACH,YAAA;IAAA,OAAML,KAAK,CAACH,OAAO,CAAC,CAAA;GACpB,EAAA,UAACA,OAAO,EAAK;IACXC,WAAW,CAACY,UAAU,CAAA,QAAA,CAAA,EAAA,EACjBb,OAAO,EAAA;MACVc,QAAQ,EAAE,SAACC,QAAAA,CAAAA,QAAQ,EAAK;QACtBC,UAAU,CAACZ,KAAK,CAAC,CAAA;QACjBJ,OAAO,CAACc,QAAQ,IAAhBd,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAACc,QAAQ,CAAGC,QAAQ,CAAC,CAAA;AAC9B,OAAA;KACA,CAAA,CAAA,CAAA;IAEFd,WAAW,CAACU,WAAW,EAAE,CAAA;IACzBK,UAAU,CAACZ,KAAK,CAAC,CAAA;AACnB,GAAC,EACD;AACEQ,IAAAA,SAAS,EAAE,IAAA;AACb,GAAC,CACF,CAAA;EAEDK,cAAc,CAACX,OAAO,CAAC,CAAA;AAEvB,EAAA,OAAOF,KAAK,CAAA;AACd,CAAA;AAEO,SAASc,cAAc,CAI5BlB,OAKC,EAC+C;EAChD,OAAOD,kBAAkB,CACvBoB,QAAQ,CAAC,YAAA;AAAA,IAAA,OAAA,QAAA,CAAA;AACPC,MAAAA,kBAAkB,EAAEA,kBAAkB;AACtCC,MAAAA,oBAAoB,EAAEA,oBAAoB;AAC1CC,MAAAA,UAAU,EAAEC,aAAAA;KACTpB,EAAAA,KAAK,CAACH,OAAO,CAAC,CAAA,CAAA;AAAA,GACjB,CAAC,CACJ,CAAA;AACH,CAAA;AAEO,SAASwB,oBAAoB,CAClCxB,OAQC,EACuC;EACxC,OAAOD,kBAAkB,CACvBoB,QAAQ,CAAC,YAAA;AAAA,IAAA,OAAA,QAAA,CAAA;AACPV,MAAAA,gBAAgB,EAAE,SAAA,gBAAA,GAAA;AAAA,QAAA,OAAO,OAAOgB,QAAQ,KAAK,WAAW,GAAGC,MAAM,GAAG,IAAI,CAAA;OAAC;AACzEN,MAAAA,kBAAkB,EAAEO,iBAAiB;AACrCN,MAAAA,oBAAoB,EAAEO,mBAAmB;AACzCN,MAAAA,UAAU,EAAEO,YAAY;MACxBC,aAAa,EACX,OAAOL,QAAQ,KAAK,WAAW,GAAGC,MAAM,CAACK,OAAO,GAAGC,SAAAA;KAClD7B,EAAAA,KAAK,CAACH,OAAO,CAAC,CAAA,CAAA;AAAA,GACjB,CAAC,CACJ,CAAA;AACH;;;;"}
1
+ {"version":3,"file":"index.esm.js","sources":["../../src/index.ts"],"sourcesContent":["import {\n elementScroll,\n observeElementOffset,\n observeElementRect,\n observeWindowOffset,\n observeWindowRect,\n PartialKeys,\n Virtualizer,\n VirtualizerOptions,\n windowScroll,\n} from '@tanstack/virtual-core'\nimport {\n computed,\n onScopeDispose,\n Ref,\n shallowRef,\n triggerRef,\n unref,\n watch,\n} from 'vue'\nexport * from '@tanstack/virtual-core'\n\ntype MaybeRef<T> = T | Ref<T>\n\nfunction useVirtualizerBase<\n TScrollElement extends Element | Window,\n TItemElement extends Element,\n>(\n options: MaybeRef<VirtualizerOptions<TScrollElement, TItemElement>>,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n const virtualizer = new Virtualizer(unref(options))\n const state = shallowRef(virtualizer)\n\n const cleanup = virtualizer._didMount()\n\n watch(\n () => unref(options).getScrollElement(),\n (el) => {\n if (el) {\n virtualizer._willUpdate()\n }\n },\n {\n immediate: true,\n },\n )\n\n watch(\n () => unref(options),\n (options) => {\n virtualizer.setOptions({\n ...options,\n onChange: (instance) => {\n triggerRef(state)\n options.onChange?.(instance)\n },\n })\n\n virtualizer._willUpdate()\n triggerRef(state)\n },\n {\n immediate: true,\n },\n )\n\n onScopeDispose(cleanup)\n\n return state\n}\n\nexport function useVirtualizer<\n TScrollElement extends Element,\n TItemElement extends Element,\n>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<TScrollElement, TItemElement>,\n 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'\n >\n >,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n return useVirtualizerBase<TScrollElement, TItemElement>(\n computed(() => ({\n observeElementRect: observeElementRect,\n observeElementOffset: observeElementOffset,\n scrollToFn: elementScroll,\n ...unref(options),\n })),\n )\n}\n\nexport function useWindowVirtualizer<TItemElement extends Element>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<Window, TItemElement>,\n | 'observeElementRect'\n | 'observeElementOffset'\n | 'scrollToFn'\n | 'getScrollElement'\n >\n >,\n): Ref<Virtualizer<Window, TItemElement>> {\n return useVirtualizerBase<Window, TItemElement>(\n computed(() => ({\n getScrollElement: () => (typeof document !== 'undefined' ? window : null),\n observeElementRect: observeWindowRect,\n observeElementOffset: observeWindowOffset,\n scrollToFn: windowScroll,\n initialOffset:\n typeof document !== 'undefined' ? window.scrollY : undefined,\n ...unref(options),\n })),\n )\n}\n"],"names":["useVirtualizerBase","options","virtualizer","Virtualizer","unref","state","shallowRef","cleanup","_didMount","watch","getScrollElement","el","_willUpdate","immediate","setOptions","onChange","instance","triggerRef","onScopeDispose","useVirtualizer","computed","observeElementRect","observeElementOffset","scrollToFn","elementScroll","useWindowVirtualizer","document","window","observeWindowRect","observeWindowOffset","windowScroll","initialOffset","scrollY","undefined"],"mappings":";;;;;;;;;;;;;;;AAwBA,SAASA,kBAAkB,CAIzBC,OAAmE,EACnB;EAChD,IAAMC,WAAW,GAAG,IAAIC,WAAW,CAACC,KAAK,CAACH,OAAO,CAAC,CAAC,CAAA;AACnD,EAAA,IAAMI,KAAK,GAAGC,UAAU,CAACJ,WAAW,CAAC,CAAA;AAErC,EAAA,IAAMK,OAAO,GAAGL,WAAW,CAACM,SAAS,EAAE,CAAA;AAEvCC,EAAAA,KAAK,CACH,YAAA;AAAA,IAAA,OAAML,KAAK,CAACH,OAAO,CAAC,CAACS,gBAAgB,EAAE,CAAA;GACvC,EAAA,UAACC,EAAE,EAAK;AACN,IAAA,IAAIA,EAAE,EAAE;MACNT,WAAW,CAACU,WAAW,EAAE,CAAA;AAC3B,KAAA;AACF,GAAC,EACD;AACEC,IAAAA,SAAS,EAAE,IAAA;AACb,GAAC,CACF,CAAA;AAEDJ,EAAAA,KAAK,CACH,YAAA;IAAA,OAAML,KAAK,CAACH,OAAO,CAAC,CAAA;GACpB,EAAA,UAACA,OAAO,EAAK;IACXC,WAAW,CAACY,UAAU,CAAA,QAAA,CAAA,EAAA,EACjBb,OAAO,EAAA;MACVc,QAAQ,EAAE,SAACC,QAAAA,CAAAA,QAAQ,EAAK;QACtBC,UAAU,CAACZ,KAAK,CAAC,CAAA;QACjBJ,OAAO,CAACc,QAAQ,IAAhBd,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAACc,QAAQ,CAAGC,QAAQ,CAAC,CAAA;AAC9B,OAAA;KACA,CAAA,CAAA,CAAA;IAEFd,WAAW,CAACU,WAAW,EAAE,CAAA;IACzBK,UAAU,CAACZ,KAAK,CAAC,CAAA;AACnB,GAAC,EACD;AACEQ,IAAAA,SAAS,EAAE,IAAA;AACb,GAAC,CACF,CAAA;EAEDK,cAAc,CAACX,OAAO,CAAC,CAAA;AAEvB,EAAA,OAAOF,KAAK,CAAA;AACd,CAAA;AAEO,SAASc,cAAc,CAI5BlB,OAKC,EAC+C;EAChD,OAAOD,kBAAkB,CACvBoB,QAAQ,CAAC,YAAA;AAAA,IAAA,OAAA,QAAA,CAAA;AACPC,MAAAA,kBAAkB,EAAEA,kBAAkB;AACtCC,MAAAA,oBAAoB,EAAEA,oBAAoB;AAC1CC,MAAAA,UAAU,EAAEC,aAAAA;KACTpB,EAAAA,KAAK,CAACH,OAAO,CAAC,CAAA,CAAA;AAAA,GACjB,CAAC,CACJ,CAAA;AACH,CAAA;AAEO,SAASwB,oBAAoB,CAClCxB,OAQC,EACuC;EACxC,OAAOD,kBAAkB,CACvBoB,QAAQ,CAAC,YAAA;AAAA,IAAA,OAAA,QAAA,CAAA;AACPV,MAAAA,gBAAgB,EAAE,SAAA,gBAAA,GAAA;AAAA,QAAA,OAAO,OAAOgB,QAAQ,KAAK,WAAW,GAAGC,MAAM,GAAG,IAAI,CAAA;OAAC;AACzEN,MAAAA,kBAAkB,EAAEO,iBAAiB;AACrCN,MAAAA,oBAAoB,EAAEO,mBAAmB;AACzCN,MAAAA,UAAU,EAAEO,YAAY;MACxBC,aAAa,EACX,OAAOL,QAAQ,KAAK,WAAW,GAAGC,MAAM,CAACK,OAAO,GAAGC,SAAAA;KAClD7B,EAAAA,KAAK,CAACH,OAAO,CAAC,CAAA,CAAA;AAAA,GACjB,CAAC,CACJ,CAAA;AACH;;;;"}
@@ -71,4 +71,10 @@ function useWindowVirtualizer(options) {
71
71
 
72
72
  exports.useVirtualizer = useVirtualizer;
73
73
  exports.useWindowVirtualizer = useWindowVirtualizer;
74
+ Object.keys(virtualCore).forEach(function (k) {
75
+ if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
76
+ enumerable: true,
77
+ get: function () { return virtualCore[k]; }
78
+ });
79
+ });
74
80
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/index.ts"],"sourcesContent":["import {\n elementScroll,\n observeElementOffset,\n observeElementRect,\n observeWindowOffset,\n observeWindowRect,\n PartialKeys,\n Virtualizer,\n VirtualizerOptions,\n windowScroll,\n} from '@tanstack/virtual-core'\nimport {\n computed,\n onScopeDispose,\n Ref,\n shallowRef,\n triggerRef,\n unref,\n watch,\n} from 'vue'\n\ntype MaybeRef<T> = T | Ref<T>\n\nfunction useVirtualizerBase<\n TScrollElement extends Element | Window,\n TItemElement extends Element,\n>(\n options: MaybeRef<VirtualizerOptions<TScrollElement, TItemElement>>,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n const virtualizer = new Virtualizer(unref(options))\n const state = shallowRef(virtualizer)\n\n const cleanup = virtualizer._didMount()\n\n watch(\n () => unref(options).getScrollElement(),\n (el) => {\n if (el) {\n virtualizer._willUpdate()\n }\n },\n {\n immediate: true,\n },\n )\n\n watch(\n () => unref(options),\n (options) => {\n virtualizer.setOptions({\n ...options,\n onChange: (instance) => {\n triggerRef(state)\n options.onChange?.(instance)\n },\n })\n\n virtualizer._willUpdate()\n triggerRef(state)\n },\n {\n immediate: true,\n },\n )\n\n onScopeDispose(cleanup)\n\n return state\n}\n\nexport function useVirtualizer<\n TScrollElement extends Element,\n TItemElement extends Element,\n>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<TScrollElement, TItemElement>,\n 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'\n >\n >,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n return useVirtualizerBase<TScrollElement, TItemElement>(\n computed(() => ({\n observeElementRect: observeElementRect,\n observeElementOffset: observeElementOffset,\n scrollToFn: elementScroll,\n ...unref(options),\n })),\n )\n}\n\nexport function useWindowVirtualizer<TItemElement extends Element>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<Window, TItemElement>,\n | 'observeElementRect'\n | 'observeElementOffset'\n | 'scrollToFn'\n | 'getScrollElement'\n >\n >,\n): Ref<Virtualizer<Window, TItemElement>> {\n return useVirtualizerBase<Window, TItemElement>(\n computed(() => ({\n getScrollElement: () => (typeof document !== 'undefined' ? window : null),\n observeElementRect: observeWindowRect,\n observeElementOffset: observeWindowOffset,\n scrollToFn: windowScroll,\n initialOffset:\n typeof document !== 'undefined' ? window.scrollY : undefined,\n ...unref(options),\n })),\n )\n}\n"],"names":["useVirtualizerBase","options","virtualizer","Virtualizer","unref","state","shallowRef","cleanup","_didMount","watch","getScrollElement","el","_willUpdate","immediate","setOptions","_extends","onChange","instance","triggerRef","onScopeDispose","useVirtualizer","computed","observeElementRect","observeElementOffset","scrollToFn","elementScroll","useWindowVirtualizer","document","window","observeWindowRect","observeWindowOffset","windowScroll","initialOffset","scrollY","undefined"],"mappings":";;;;;;;;;;;;;;;;;;AAuBA,SAASA,kBAAkB,CAIzBC,OAAmE,EACnB;EAChD,IAAMC,WAAW,GAAG,IAAIC,uBAAW,CAACC,SAAK,CAACH,OAAO,CAAC,CAAC,CAAA;AACnD,EAAA,IAAMI,KAAK,GAAGC,cAAU,CAACJ,WAAW,CAAC,CAAA;AAErC,EAAA,IAAMK,OAAO,GAAGL,WAAW,CAACM,SAAS,EAAE,CAAA;AAEvCC,EAAAA,SAAK,CACH,YAAA;AAAA,IAAA,OAAML,SAAK,CAACH,OAAO,CAAC,CAACS,gBAAgB,EAAE,CAAA;GACvC,EAAA,UAACC,EAAE,EAAK;AACN,IAAA,IAAIA,EAAE,EAAE;MACNT,WAAW,CAACU,WAAW,EAAE,CAAA;AAC3B,KAAA;AACF,GAAC,EACD;AACEC,IAAAA,SAAS,EAAE,IAAA;AACb,GAAC,CACF,CAAA;AAEDJ,EAAAA,SAAK,CACH,YAAA;IAAA,OAAML,SAAK,CAACH,OAAO,CAAC,CAAA;GACpB,EAAA,UAACA,OAAO,EAAK;IACXC,WAAW,CAACY,UAAU,CAAAC,oCAAA,CAAA,EAAA,EACjBd,OAAO,EAAA;MACVe,QAAQ,EAAE,SAACC,QAAAA,CAAAA,QAAQ,EAAK;QACtBC,cAAU,CAACb,KAAK,CAAC,CAAA;QACjBJ,OAAO,CAACe,QAAQ,IAAhBf,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAACe,QAAQ,CAAGC,QAAQ,CAAC,CAAA;AAC9B,OAAA;KACA,CAAA,CAAA,CAAA;IAEFf,WAAW,CAACU,WAAW,EAAE,CAAA;IACzBM,cAAU,CAACb,KAAK,CAAC,CAAA;AACnB,GAAC,EACD;AACEQ,IAAAA,SAAS,EAAE,IAAA;AACb,GAAC,CACF,CAAA;EAEDM,kBAAc,CAACZ,OAAO,CAAC,CAAA;AAEvB,EAAA,OAAOF,KAAK,CAAA;AACd,CAAA;AAEO,SAASe,cAAc,CAI5BnB,OAKC,EAC+C;EAChD,OAAOD,kBAAkB,CACvBqB,YAAQ,CAAC,YAAA;AAAA,IAAA,OAAAN,oCAAA,CAAA;AACPO,MAAAA,kBAAkB,EAAEA,8BAAkB;AACtCC,MAAAA,oBAAoB,EAAEA,gCAAoB;AAC1CC,MAAAA,UAAU,EAAEC,yBAAAA;KACTrB,EAAAA,SAAK,CAACH,OAAO,CAAC,CAAA,CAAA;AAAA,GACjB,CAAC,CACJ,CAAA;AACH,CAAA;AAEO,SAASyB,oBAAoB,CAClCzB,OAQC,EACuC;EACxC,OAAOD,kBAAkB,CACvBqB,YAAQ,CAAC,YAAA;AAAA,IAAA,OAAAN,oCAAA,CAAA;AACPL,MAAAA,gBAAgB,EAAE,SAAA,gBAAA,GAAA;AAAA,QAAA,OAAO,OAAOiB,QAAQ,KAAK,WAAW,GAAGC,MAAM,GAAG,IAAI,CAAA;OAAC;AACzEN,MAAAA,kBAAkB,EAAEO,6BAAiB;AACrCN,MAAAA,oBAAoB,EAAEO,+BAAmB;AACzCN,MAAAA,UAAU,EAAEO,wBAAY;MACxBC,aAAa,EACX,OAAOL,QAAQ,KAAK,WAAW,GAAGC,MAAM,CAACK,OAAO,GAAGC,SAAAA;KAClD9B,EAAAA,SAAK,CAACH,OAAO,CAAC,CAAA,CAAA;AAAA,GACjB,CAAC,CACJ,CAAA;AACH;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/index.ts"],"sourcesContent":["import {\n elementScroll,\n observeElementOffset,\n observeElementRect,\n observeWindowOffset,\n observeWindowRect,\n PartialKeys,\n Virtualizer,\n VirtualizerOptions,\n windowScroll,\n} from '@tanstack/virtual-core'\nimport {\n computed,\n onScopeDispose,\n Ref,\n shallowRef,\n triggerRef,\n unref,\n watch,\n} from 'vue'\nexport * from '@tanstack/virtual-core'\n\ntype MaybeRef<T> = T | Ref<T>\n\nfunction useVirtualizerBase<\n TScrollElement extends Element | Window,\n TItemElement extends Element,\n>(\n options: MaybeRef<VirtualizerOptions<TScrollElement, TItemElement>>,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n const virtualizer = new Virtualizer(unref(options))\n const state = shallowRef(virtualizer)\n\n const cleanup = virtualizer._didMount()\n\n watch(\n () => unref(options).getScrollElement(),\n (el) => {\n if (el) {\n virtualizer._willUpdate()\n }\n },\n {\n immediate: true,\n },\n )\n\n watch(\n () => unref(options),\n (options) => {\n virtualizer.setOptions({\n ...options,\n onChange: (instance) => {\n triggerRef(state)\n options.onChange?.(instance)\n },\n })\n\n virtualizer._willUpdate()\n triggerRef(state)\n },\n {\n immediate: true,\n },\n )\n\n onScopeDispose(cleanup)\n\n return state\n}\n\nexport function useVirtualizer<\n TScrollElement extends Element,\n TItemElement extends Element,\n>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<TScrollElement, TItemElement>,\n 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'\n >\n >,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n return useVirtualizerBase<TScrollElement, TItemElement>(\n computed(() => ({\n observeElementRect: observeElementRect,\n observeElementOffset: observeElementOffset,\n scrollToFn: elementScroll,\n ...unref(options),\n })),\n )\n}\n\nexport function useWindowVirtualizer<TItemElement extends Element>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<Window, TItemElement>,\n | 'observeElementRect'\n | 'observeElementOffset'\n | 'scrollToFn'\n | 'getScrollElement'\n >\n >,\n): Ref<Virtualizer<Window, TItemElement>> {\n return useVirtualizerBase<Window, TItemElement>(\n computed(() => ({\n getScrollElement: () => (typeof document !== 'undefined' ? window : null),\n observeElementRect: observeWindowRect,\n observeElementOffset: observeWindowOffset,\n scrollToFn: windowScroll,\n initialOffset:\n typeof document !== 'undefined' ? window.scrollY : undefined,\n ...unref(options),\n })),\n )\n}\n"],"names":["useVirtualizerBase","options","virtualizer","Virtualizer","unref","state","shallowRef","cleanup","_didMount","watch","getScrollElement","el","_willUpdate","immediate","setOptions","_extends","onChange","instance","triggerRef","onScopeDispose","useVirtualizer","computed","observeElementRect","observeElementOffset","scrollToFn","elementScroll","useWindowVirtualizer","document","window","observeWindowRect","observeWindowOffset","windowScroll","initialOffset","scrollY","undefined"],"mappings":";;;;;;;;;;;;;;;;;;AAwBA,SAASA,kBAAkB,CAIzBC,OAAmE,EACnB;EAChD,IAAMC,WAAW,GAAG,IAAIC,uBAAW,CAACC,SAAK,CAACH,OAAO,CAAC,CAAC,CAAA;AACnD,EAAA,IAAMI,KAAK,GAAGC,cAAU,CAACJ,WAAW,CAAC,CAAA;AAErC,EAAA,IAAMK,OAAO,GAAGL,WAAW,CAACM,SAAS,EAAE,CAAA;AAEvCC,EAAAA,SAAK,CACH,YAAA;AAAA,IAAA,OAAML,SAAK,CAACH,OAAO,CAAC,CAACS,gBAAgB,EAAE,CAAA;GACvC,EAAA,UAACC,EAAE,EAAK;AACN,IAAA,IAAIA,EAAE,EAAE;MACNT,WAAW,CAACU,WAAW,EAAE,CAAA;AAC3B,KAAA;AACF,GAAC,EACD;AACEC,IAAAA,SAAS,EAAE,IAAA;AACb,GAAC,CACF,CAAA;AAEDJ,EAAAA,SAAK,CACH,YAAA;IAAA,OAAML,SAAK,CAACH,OAAO,CAAC,CAAA;GACpB,EAAA,UAACA,OAAO,EAAK;IACXC,WAAW,CAACY,UAAU,CAAAC,oCAAA,CAAA,EAAA,EACjBd,OAAO,EAAA;MACVe,QAAQ,EAAE,SAACC,QAAAA,CAAAA,QAAQ,EAAK;QACtBC,cAAU,CAACb,KAAK,CAAC,CAAA;QACjBJ,OAAO,CAACe,QAAQ,IAAhBf,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAACe,QAAQ,CAAGC,QAAQ,CAAC,CAAA;AAC9B,OAAA;KACA,CAAA,CAAA,CAAA;IAEFf,WAAW,CAACU,WAAW,EAAE,CAAA;IACzBM,cAAU,CAACb,KAAK,CAAC,CAAA;AACnB,GAAC,EACD;AACEQ,IAAAA,SAAS,EAAE,IAAA;AACb,GAAC,CACF,CAAA;EAEDM,kBAAc,CAACZ,OAAO,CAAC,CAAA;AAEvB,EAAA,OAAOF,KAAK,CAAA;AACd,CAAA;AAEO,SAASe,cAAc,CAI5BnB,OAKC,EAC+C;EAChD,OAAOD,kBAAkB,CACvBqB,YAAQ,CAAC,YAAA;AAAA,IAAA,OAAAN,oCAAA,CAAA;AACPO,MAAAA,kBAAkB,EAAEA,8BAAkB;AACtCC,MAAAA,oBAAoB,EAAEA,gCAAoB;AAC1CC,MAAAA,UAAU,EAAEC,yBAAAA;KACTrB,EAAAA,SAAK,CAACH,OAAO,CAAC,CAAA,CAAA;AAAA,GACjB,CAAC,CACJ,CAAA;AACH,CAAA;AAEO,SAASyB,oBAAoB,CAClCzB,OAQC,EACuC;EACxC,OAAOD,kBAAkB,CACvBqB,YAAQ,CAAC,YAAA;AAAA,IAAA,OAAAN,oCAAA,CAAA;AACPL,MAAAA,gBAAgB,EAAE,SAAA,gBAAA,GAAA;AAAA,QAAA,OAAO,OAAOiB,QAAQ,KAAK,WAAW,GAAGC,MAAM,GAAG,IAAI,CAAA;OAAC;AACzEN,MAAAA,kBAAkB,EAAEO,6BAAiB;AACrCN,MAAAA,oBAAoB,EAAEO,+BAAmB;AACzCN,MAAAA,UAAU,EAAEO,wBAAY;MACxBC,aAAa,EACX,OAAOL,QAAQ,KAAK,WAAW,GAAGC,MAAM,CAACK,OAAO,GAAGC,SAAAA;KAClD9B,EAAAA,SAAK,CAACH,OAAO,CAAC,CAAA,CAAA;AAAA,GACjB,CAAC,CACJ,CAAA;AACH;;;;;;;;;;;"}
@@ -10,6 +10,7 @@
10
10
  */
11
11
  import { extends as _extends } from './_virtual/_rollupPluginBabelHelpers.mjs';
12
12
  import { observeElementRect, observeElementOffset, elementScroll, observeWindowRect, observeWindowOffset, windowScroll, Virtualizer } from '@tanstack/virtual-core';
13
+ export * from '@tanstack/virtual-core';
13
14
  import { computed, unref, shallowRef, watch, triggerRef, onScopeDispose } from 'vue';
14
15
 
15
16
  function useVirtualizerBase(options) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/index.ts"],"sourcesContent":["import {\n elementScroll,\n observeElementOffset,\n observeElementRect,\n observeWindowOffset,\n observeWindowRect,\n PartialKeys,\n Virtualizer,\n VirtualizerOptions,\n windowScroll,\n} from '@tanstack/virtual-core'\nimport {\n computed,\n onScopeDispose,\n Ref,\n shallowRef,\n triggerRef,\n unref,\n watch,\n} from 'vue'\n\ntype MaybeRef<T> = T | Ref<T>\n\nfunction useVirtualizerBase<\n TScrollElement extends Element | Window,\n TItemElement extends Element,\n>(\n options: MaybeRef<VirtualizerOptions<TScrollElement, TItemElement>>,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n const virtualizer = new Virtualizer(unref(options))\n const state = shallowRef(virtualizer)\n\n const cleanup = virtualizer._didMount()\n\n watch(\n () => unref(options).getScrollElement(),\n (el) => {\n if (el) {\n virtualizer._willUpdate()\n }\n },\n {\n immediate: true,\n },\n )\n\n watch(\n () => unref(options),\n (options) => {\n virtualizer.setOptions({\n ...options,\n onChange: (instance) => {\n triggerRef(state)\n options.onChange?.(instance)\n },\n })\n\n virtualizer._willUpdate()\n triggerRef(state)\n },\n {\n immediate: true,\n },\n )\n\n onScopeDispose(cleanup)\n\n return state\n}\n\nexport function useVirtualizer<\n TScrollElement extends Element,\n TItemElement extends Element,\n>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<TScrollElement, TItemElement>,\n 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'\n >\n >,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n return useVirtualizerBase<TScrollElement, TItemElement>(\n computed(() => ({\n observeElementRect: observeElementRect,\n observeElementOffset: observeElementOffset,\n scrollToFn: elementScroll,\n ...unref(options),\n })),\n )\n}\n\nexport function useWindowVirtualizer<TItemElement extends Element>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<Window, TItemElement>,\n | 'observeElementRect'\n | 'observeElementOffset'\n | 'scrollToFn'\n | 'getScrollElement'\n >\n >,\n): Ref<Virtualizer<Window, TItemElement>> {\n return useVirtualizerBase<Window, TItemElement>(\n computed(() => ({\n getScrollElement: () => (typeof document !== 'undefined' ? window : null),\n observeElementRect: observeWindowRect,\n observeElementOffset: observeWindowOffset,\n scrollToFn: windowScroll,\n initialOffset:\n typeof document !== 'undefined' ? window.scrollY : undefined,\n ...unref(options),\n })),\n )\n}\n"],"names":["useVirtualizerBase","options","virtualizer","Virtualizer","unref","state","shallowRef","cleanup","_didMount","watch","getScrollElement","el","_willUpdate","immediate","setOptions","onChange","instance","triggerRef","onScopeDispose","useVirtualizer","computed","observeElementRect","observeElementOffset","scrollToFn","elementScroll","useWindowVirtualizer","document","window","observeWindowRect","observeWindowOffset","windowScroll","initialOffset","scrollY","undefined"],"mappings":";;;;;;;;;;;;;;AAuBA,SAASA,kBAAkB,CAIzBC,OAAmE,EACnB;EAChD,IAAMC,WAAW,GAAG,IAAIC,WAAW,CAACC,KAAK,CAACH,OAAO,CAAC,CAAC,CAAA;AACnD,EAAA,IAAMI,KAAK,GAAGC,UAAU,CAACJ,WAAW,CAAC,CAAA;AAErC,EAAA,IAAMK,OAAO,GAAGL,WAAW,CAACM,SAAS,EAAE,CAAA;AAEvCC,EAAAA,KAAK,CACH,YAAA;AAAA,IAAA,OAAML,KAAK,CAACH,OAAO,CAAC,CAACS,gBAAgB,EAAE,CAAA;GACvC,EAAA,UAACC,EAAE,EAAK;AACN,IAAA,IAAIA,EAAE,EAAE;MACNT,WAAW,CAACU,WAAW,EAAE,CAAA;AAC3B,KAAA;AACF,GAAC,EACD;AACEC,IAAAA,SAAS,EAAE,IAAA;AACb,GAAC,CACF,CAAA;AAEDJ,EAAAA,KAAK,CACH,YAAA;IAAA,OAAML,KAAK,CAACH,OAAO,CAAC,CAAA;GACpB,EAAA,UAACA,OAAO,EAAK;IACXC,WAAW,CAACY,UAAU,CAAA,QAAA,CAAA,EAAA,EACjBb,OAAO,EAAA;MACVc,QAAQ,EAAE,SAACC,QAAAA,CAAAA,QAAQ,EAAK;QACtBC,UAAU,CAACZ,KAAK,CAAC,CAAA;QACjBJ,OAAO,CAACc,QAAQ,IAAhBd,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAACc,QAAQ,CAAGC,QAAQ,CAAC,CAAA;AAC9B,OAAA;KACA,CAAA,CAAA,CAAA;IAEFd,WAAW,CAACU,WAAW,EAAE,CAAA;IACzBK,UAAU,CAACZ,KAAK,CAAC,CAAA;AACnB,GAAC,EACD;AACEQ,IAAAA,SAAS,EAAE,IAAA;AACb,GAAC,CACF,CAAA;EAEDK,cAAc,CAACX,OAAO,CAAC,CAAA;AAEvB,EAAA,OAAOF,KAAK,CAAA;AACd,CAAA;AAEO,SAASc,cAAc,CAI5BlB,OAKC,EAC+C;EAChD,OAAOD,kBAAkB,CACvBoB,QAAQ,CAAC,YAAA;AAAA,IAAA,OAAA,QAAA,CAAA;AACPC,MAAAA,kBAAkB,EAAEA,kBAAkB;AACtCC,MAAAA,oBAAoB,EAAEA,oBAAoB;AAC1CC,MAAAA,UAAU,EAAEC,aAAAA;KACTpB,EAAAA,KAAK,CAACH,OAAO,CAAC,CAAA,CAAA;AAAA,GACjB,CAAC,CACJ,CAAA;AACH,CAAA;AAEO,SAASwB,oBAAoB,CAClCxB,OAQC,EACuC;EACxC,OAAOD,kBAAkB,CACvBoB,QAAQ,CAAC,YAAA;AAAA,IAAA,OAAA,QAAA,CAAA;AACPV,MAAAA,gBAAgB,EAAE,SAAA,gBAAA,GAAA;AAAA,QAAA,OAAO,OAAOgB,QAAQ,KAAK,WAAW,GAAGC,MAAM,GAAG,IAAI,CAAA;OAAC;AACzEN,MAAAA,kBAAkB,EAAEO,iBAAiB;AACrCN,MAAAA,oBAAoB,EAAEO,mBAAmB;AACzCN,MAAAA,UAAU,EAAEO,YAAY;MACxBC,aAAa,EACX,OAAOL,QAAQ,KAAK,WAAW,GAAGC,MAAM,CAACK,OAAO,GAAGC,SAAAA;KAClD7B,EAAAA,KAAK,CAACH,OAAO,CAAC,CAAA,CAAA;AAAA,GACjB,CAAC,CACJ,CAAA;AACH;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/index.ts"],"sourcesContent":["import {\n elementScroll,\n observeElementOffset,\n observeElementRect,\n observeWindowOffset,\n observeWindowRect,\n PartialKeys,\n Virtualizer,\n VirtualizerOptions,\n windowScroll,\n} from '@tanstack/virtual-core'\nimport {\n computed,\n onScopeDispose,\n Ref,\n shallowRef,\n triggerRef,\n unref,\n watch,\n} from 'vue'\nexport * from '@tanstack/virtual-core'\n\ntype MaybeRef<T> = T | Ref<T>\n\nfunction useVirtualizerBase<\n TScrollElement extends Element | Window,\n TItemElement extends Element,\n>(\n options: MaybeRef<VirtualizerOptions<TScrollElement, TItemElement>>,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n const virtualizer = new Virtualizer(unref(options))\n const state = shallowRef(virtualizer)\n\n const cleanup = virtualizer._didMount()\n\n watch(\n () => unref(options).getScrollElement(),\n (el) => {\n if (el) {\n virtualizer._willUpdate()\n }\n },\n {\n immediate: true,\n },\n )\n\n watch(\n () => unref(options),\n (options) => {\n virtualizer.setOptions({\n ...options,\n onChange: (instance) => {\n triggerRef(state)\n options.onChange?.(instance)\n },\n })\n\n virtualizer._willUpdate()\n triggerRef(state)\n },\n {\n immediate: true,\n },\n )\n\n onScopeDispose(cleanup)\n\n return state\n}\n\nexport function useVirtualizer<\n TScrollElement extends Element,\n TItemElement extends Element,\n>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<TScrollElement, TItemElement>,\n 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'\n >\n >,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n return useVirtualizerBase<TScrollElement, TItemElement>(\n computed(() => ({\n observeElementRect: observeElementRect,\n observeElementOffset: observeElementOffset,\n scrollToFn: elementScroll,\n ...unref(options),\n })),\n )\n}\n\nexport function useWindowVirtualizer<TItemElement extends Element>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<Window, TItemElement>,\n | 'observeElementRect'\n | 'observeElementOffset'\n | 'scrollToFn'\n | 'getScrollElement'\n >\n >,\n): Ref<Virtualizer<Window, TItemElement>> {\n return useVirtualizerBase<Window, TItemElement>(\n computed(() => ({\n getScrollElement: () => (typeof document !== 'undefined' ? window : null),\n observeElementRect: observeWindowRect,\n observeElementOffset: observeWindowOffset,\n scrollToFn: windowScroll,\n initialOffset:\n typeof document !== 'undefined' ? window.scrollY : undefined,\n ...unref(options),\n })),\n )\n}\n"],"names":["useVirtualizerBase","options","virtualizer","Virtualizer","unref","state","shallowRef","cleanup","_didMount","watch","getScrollElement","el","_willUpdate","immediate","setOptions","onChange","instance","triggerRef","onScopeDispose","useVirtualizer","computed","observeElementRect","observeElementOffset","scrollToFn","elementScroll","useWindowVirtualizer","document","window","observeWindowRect","observeWindowOffset","windowScroll","initialOffset","scrollY","undefined"],"mappings":";;;;;;;;;;;;;;;AAwBA,SAASA,kBAAkB,CAIzBC,OAAmE,EACnB;EAChD,IAAMC,WAAW,GAAG,IAAIC,WAAW,CAACC,KAAK,CAACH,OAAO,CAAC,CAAC,CAAA;AACnD,EAAA,IAAMI,KAAK,GAAGC,UAAU,CAACJ,WAAW,CAAC,CAAA;AAErC,EAAA,IAAMK,OAAO,GAAGL,WAAW,CAACM,SAAS,EAAE,CAAA;AAEvCC,EAAAA,KAAK,CACH,YAAA;AAAA,IAAA,OAAML,KAAK,CAACH,OAAO,CAAC,CAACS,gBAAgB,EAAE,CAAA;GACvC,EAAA,UAACC,EAAE,EAAK;AACN,IAAA,IAAIA,EAAE,EAAE;MACNT,WAAW,CAACU,WAAW,EAAE,CAAA;AAC3B,KAAA;AACF,GAAC,EACD;AACEC,IAAAA,SAAS,EAAE,IAAA;AACb,GAAC,CACF,CAAA;AAEDJ,EAAAA,KAAK,CACH,YAAA;IAAA,OAAML,KAAK,CAACH,OAAO,CAAC,CAAA;GACpB,EAAA,UAACA,OAAO,EAAK;IACXC,WAAW,CAACY,UAAU,CAAA,QAAA,CAAA,EAAA,EACjBb,OAAO,EAAA;MACVc,QAAQ,EAAE,SAACC,QAAAA,CAAAA,QAAQ,EAAK;QACtBC,UAAU,CAACZ,KAAK,CAAC,CAAA;QACjBJ,OAAO,CAACc,QAAQ,IAAhBd,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAACc,QAAQ,CAAGC,QAAQ,CAAC,CAAA;AAC9B,OAAA;KACA,CAAA,CAAA,CAAA;IAEFd,WAAW,CAACU,WAAW,EAAE,CAAA;IACzBK,UAAU,CAACZ,KAAK,CAAC,CAAA;AACnB,GAAC,EACD;AACEQ,IAAAA,SAAS,EAAE,IAAA;AACb,GAAC,CACF,CAAA;EAEDK,cAAc,CAACX,OAAO,CAAC,CAAA;AAEvB,EAAA,OAAOF,KAAK,CAAA;AACd,CAAA;AAEO,SAASc,cAAc,CAI5BlB,OAKC,EAC+C;EAChD,OAAOD,kBAAkB,CACvBoB,QAAQ,CAAC,YAAA;AAAA,IAAA,OAAA,QAAA,CAAA;AACPC,MAAAA,kBAAkB,EAAEA,kBAAkB;AACtCC,MAAAA,oBAAoB,EAAEA,oBAAoB;AAC1CC,MAAAA,UAAU,EAAEC,aAAAA;KACTpB,EAAAA,KAAK,CAACH,OAAO,CAAC,CAAA,CAAA;AAAA,GACjB,CAAC,CACJ,CAAA;AACH,CAAA;AAEO,SAASwB,oBAAoB,CAClCxB,OAQC,EACuC;EACxC,OAAOD,kBAAkB,CACvBoB,QAAQ,CAAC,YAAA;AAAA,IAAA,OAAA,QAAA,CAAA;AACPV,MAAAA,gBAAgB,EAAE,SAAA,gBAAA,GAAA;AAAA,QAAA,OAAO,OAAOgB,QAAQ,KAAK,WAAW,GAAGC,MAAM,GAAG,IAAI,CAAA;OAAC;AACzEN,MAAAA,kBAAkB,EAAEO,iBAAiB;AACrCN,MAAAA,oBAAoB,EAAEO,mBAAmB;AACzCN,MAAAA,UAAU,EAAEO,YAAY;MACxBC,aAAa,EACX,OAAOL,QAAQ,KAAK,WAAW,GAAGC,MAAM,CAACK,OAAO,GAAGC,SAAAA;KAClD7B,EAAAA,KAAK,CAACH,OAAO,CAAC,CAAA,CAAA;AAAA,GACjB,CAAC,CACJ,CAAA;AACH;;;;"}
@@ -84,6 +84,12 @@
84
84
 
85
85
  exports.useVirtualizer = useVirtualizer;
86
86
  exports.useWindowVirtualizer = useWindowVirtualizer;
87
+ Object.keys(virtualCore).forEach(function (k) {
88
+ if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
89
+ enumerable: true,
90
+ get: function () { return virtualCore[k]; }
91
+ });
92
+ });
87
93
 
88
94
  Object.defineProperty(exports, '__esModule', { value: true });
89
95
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.development.js","sources":["../../src/index.ts"],"sourcesContent":["import {\n elementScroll,\n observeElementOffset,\n observeElementRect,\n observeWindowOffset,\n observeWindowRect,\n PartialKeys,\n Virtualizer,\n VirtualizerOptions,\n windowScroll,\n} from '@tanstack/virtual-core'\nimport {\n computed,\n onScopeDispose,\n Ref,\n shallowRef,\n triggerRef,\n unref,\n watch,\n} from 'vue'\n\ntype MaybeRef<T> = T | Ref<T>\n\nfunction useVirtualizerBase<\n TScrollElement extends Element | Window,\n TItemElement extends Element,\n>(\n options: MaybeRef<VirtualizerOptions<TScrollElement, TItemElement>>,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n const virtualizer = new Virtualizer(unref(options))\n const state = shallowRef(virtualizer)\n\n const cleanup = virtualizer._didMount()\n\n watch(\n () => unref(options).getScrollElement(),\n (el) => {\n if (el) {\n virtualizer._willUpdate()\n }\n },\n {\n immediate: true,\n },\n )\n\n watch(\n () => unref(options),\n (options) => {\n virtualizer.setOptions({\n ...options,\n onChange: (instance) => {\n triggerRef(state)\n options.onChange?.(instance)\n },\n })\n\n virtualizer._willUpdate()\n triggerRef(state)\n },\n {\n immediate: true,\n },\n )\n\n onScopeDispose(cleanup)\n\n return state\n}\n\nexport function useVirtualizer<\n TScrollElement extends Element,\n TItemElement extends Element,\n>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<TScrollElement, TItemElement>,\n 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'\n >\n >,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n return useVirtualizerBase<TScrollElement, TItemElement>(\n computed(() => ({\n observeElementRect: observeElementRect,\n observeElementOffset: observeElementOffset,\n scrollToFn: elementScroll,\n ...unref(options),\n })),\n )\n}\n\nexport function useWindowVirtualizer<TItemElement extends Element>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<Window, TItemElement>,\n | 'observeElementRect'\n | 'observeElementOffset'\n | 'scrollToFn'\n | 'getScrollElement'\n >\n >,\n): Ref<Virtualizer<Window, TItemElement>> {\n return useVirtualizerBase<Window, TItemElement>(\n computed(() => ({\n getScrollElement: () => (typeof document !== 'undefined' ? window : null),\n observeElementRect: observeWindowRect,\n observeElementOffset: observeWindowOffset,\n scrollToFn: windowScroll,\n initialOffset:\n typeof document !== 'undefined' ? window.scrollY : undefined,\n ...unref(options),\n })),\n )\n}\n"],"names":["useVirtualizerBase","options","virtualizer","Virtualizer","unref","state","shallowRef","cleanup","_didMount","watch","getScrollElement","el","_willUpdate","immediate","setOptions","onChange","instance","triggerRef","onScopeDispose","useVirtualizer","computed","observeElementRect","observeElementOffset","scrollToFn","elementScroll","useWindowVirtualizer","document","window","observeWindowRect","observeWindowOffset","windowScroll","initialOffset","scrollY","undefined"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuBA,SAASA,kBAAkB,CAIzBC,OAAmE,EACnB;IAChD,IAAMC,WAAW,GAAG,IAAIC,uBAAW,CAACC,SAAK,CAACH,OAAO,CAAC,CAAC,CAAA;EACnD,EAAA,IAAMI,KAAK,GAAGC,cAAU,CAACJ,WAAW,CAAC,CAAA;EAErC,EAAA,IAAMK,OAAO,GAAGL,WAAW,CAACM,SAAS,EAAE,CAAA;EAEvCC,EAAAA,SAAK,CACH,YAAA;EAAA,IAAA,OAAML,SAAK,CAACH,OAAO,CAAC,CAACS,gBAAgB,EAAE,CAAA;KACvC,EAAA,UAACC,EAAE,EAAK;EACN,IAAA,IAAIA,EAAE,EAAE;QACNT,WAAW,CAACU,WAAW,EAAE,CAAA;EAC3B,KAAA;EACF,GAAC,EACD;EACEC,IAAAA,SAAS,EAAE,IAAA;EACb,GAAC,CACF,CAAA;EAEDJ,EAAAA,SAAK,CACH,YAAA;MAAA,OAAML,SAAK,CAACH,OAAO,CAAC,CAAA;KACpB,EAAA,UAACA,OAAO,EAAK;MACXC,WAAW,CAACY,UAAU,CAAA,QAAA,CAAA,EAAA,EACjBb,OAAO,EAAA;QACVc,QAAQ,EAAE,SAACC,QAAAA,CAAAA,QAAQ,EAAK;UACtBC,cAAU,CAACZ,KAAK,CAAC,CAAA;UACjBJ,OAAO,CAACc,QAAQ,IAAhBd,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAACc,QAAQ,CAAGC,QAAQ,CAAC,CAAA;EAC9B,OAAA;OACA,CAAA,CAAA,CAAA;MAEFd,WAAW,CAACU,WAAW,EAAE,CAAA;MACzBK,cAAU,CAACZ,KAAK,CAAC,CAAA;EACnB,GAAC,EACD;EACEQ,IAAAA,SAAS,EAAE,IAAA;EACb,GAAC,CACF,CAAA;IAEDK,kBAAc,CAACX,OAAO,CAAC,CAAA;EAEvB,EAAA,OAAOF,KAAK,CAAA;EACd,CAAA;EAEO,SAASc,cAAc,CAI5BlB,OAKC,EAC+C;IAChD,OAAOD,kBAAkB,CACvBoB,YAAQ,CAAC,YAAA;EAAA,IAAA,OAAA,QAAA,CAAA;EACPC,MAAAA,kBAAkB,EAAEA,8BAAkB;EACtCC,MAAAA,oBAAoB,EAAEA,gCAAoB;EAC1CC,MAAAA,UAAU,EAAEC,yBAAAA;OACTpB,EAAAA,SAAK,CAACH,OAAO,CAAC,CAAA,CAAA;EAAA,GACjB,CAAC,CACJ,CAAA;EACH,CAAA;EAEO,SAASwB,oBAAoB,CAClCxB,OAQC,EACuC;IACxC,OAAOD,kBAAkB,CACvBoB,YAAQ,CAAC,YAAA;EAAA,IAAA,OAAA,QAAA,CAAA;EACPV,MAAAA,gBAAgB,EAAE,SAAA,gBAAA,GAAA;EAAA,QAAA,OAAO,OAAOgB,QAAQ,KAAK,WAAW,GAAGC,MAAM,GAAG,IAAI,CAAA;SAAC;EACzEN,MAAAA,kBAAkB,EAAEO,6BAAiB;EACrCN,MAAAA,oBAAoB,EAAEO,+BAAmB;EACzCN,MAAAA,UAAU,EAAEO,wBAAY;QACxBC,aAAa,EACX,OAAOL,QAAQ,KAAK,WAAW,GAAGC,MAAM,CAACK,OAAO,GAAGC,SAAAA;OAClD7B,EAAAA,SAAK,CAACH,OAAO,CAAC,CAAA,CAAA;EAAA,GACjB,CAAC,CACJ,CAAA;EACH;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.development.js","sources":["../../src/index.ts"],"sourcesContent":["import {\n elementScroll,\n observeElementOffset,\n observeElementRect,\n observeWindowOffset,\n observeWindowRect,\n PartialKeys,\n Virtualizer,\n VirtualizerOptions,\n windowScroll,\n} from '@tanstack/virtual-core'\nimport {\n computed,\n onScopeDispose,\n Ref,\n shallowRef,\n triggerRef,\n unref,\n watch,\n} from 'vue'\nexport * from '@tanstack/virtual-core'\n\ntype MaybeRef<T> = T | Ref<T>\n\nfunction useVirtualizerBase<\n TScrollElement extends Element | Window,\n TItemElement extends Element,\n>(\n options: MaybeRef<VirtualizerOptions<TScrollElement, TItemElement>>,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n const virtualizer = new Virtualizer(unref(options))\n const state = shallowRef(virtualizer)\n\n const cleanup = virtualizer._didMount()\n\n watch(\n () => unref(options).getScrollElement(),\n (el) => {\n if (el) {\n virtualizer._willUpdate()\n }\n },\n {\n immediate: true,\n },\n )\n\n watch(\n () => unref(options),\n (options) => {\n virtualizer.setOptions({\n ...options,\n onChange: (instance) => {\n triggerRef(state)\n options.onChange?.(instance)\n },\n })\n\n virtualizer._willUpdate()\n triggerRef(state)\n },\n {\n immediate: true,\n },\n )\n\n onScopeDispose(cleanup)\n\n return state\n}\n\nexport function useVirtualizer<\n TScrollElement extends Element,\n TItemElement extends Element,\n>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<TScrollElement, TItemElement>,\n 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'\n >\n >,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n return useVirtualizerBase<TScrollElement, TItemElement>(\n computed(() => ({\n observeElementRect: observeElementRect,\n observeElementOffset: observeElementOffset,\n scrollToFn: elementScroll,\n ...unref(options),\n })),\n )\n}\n\nexport function useWindowVirtualizer<TItemElement extends Element>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<Window, TItemElement>,\n | 'observeElementRect'\n | 'observeElementOffset'\n | 'scrollToFn'\n | 'getScrollElement'\n >\n >,\n): Ref<Virtualizer<Window, TItemElement>> {\n return useVirtualizerBase<Window, TItemElement>(\n computed(() => ({\n getScrollElement: () => (typeof document !== 'undefined' ? window : null),\n observeElementRect: observeWindowRect,\n observeElementOffset: observeWindowOffset,\n scrollToFn: windowScroll,\n initialOffset:\n typeof document !== 'undefined' ? window.scrollY : undefined,\n ...unref(options),\n })),\n )\n}\n"],"names":["useVirtualizerBase","options","virtualizer","Virtualizer","unref","state","shallowRef","cleanup","_didMount","watch","getScrollElement","el","_willUpdate","immediate","setOptions","onChange","instance","triggerRef","onScopeDispose","useVirtualizer","computed","observeElementRect","observeElementOffset","scrollToFn","elementScroll","useWindowVirtualizer","document","window","observeWindowRect","observeWindowOffset","windowScroll","initialOffset","scrollY","undefined"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwBA,SAASA,kBAAkB,CAIzBC,OAAmE,EACnB;IAChD,IAAMC,WAAW,GAAG,IAAIC,uBAAW,CAACC,SAAK,CAACH,OAAO,CAAC,CAAC,CAAA;EACnD,EAAA,IAAMI,KAAK,GAAGC,cAAU,CAACJ,WAAW,CAAC,CAAA;EAErC,EAAA,IAAMK,OAAO,GAAGL,WAAW,CAACM,SAAS,EAAE,CAAA;EAEvCC,EAAAA,SAAK,CACH,YAAA;EAAA,IAAA,OAAML,SAAK,CAACH,OAAO,CAAC,CAACS,gBAAgB,EAAE,CAAA;KACvC,EAAA,UAACC,EAAE,EAAK;EACN,IAAA,IAAIA,EAAE,EAAE;QACNT,WAAW,CAACU,WAAW,EAAE,CAAA;EAC3B,KAAA;EACF,GAAC,EACD;EACEC,IAAAA,SAAS,EAAE,IAAA;EACb,GAAC,CACF,CAAA;EAEDJ,EAAAA,SAAK,CACH,YAAA;MAAA,OAAML,SAAK,CAACH,OAAO,CAAC,CAAA;KACpB,EAAA,UAACA,OAAO,EAAK;MACXC,WAAW,CAACY,UAAU,CAAA,QAAA,CAAA,EAAA,EACjBb,OAAO,EAAA;QACVc,QAAQ,EAAE,SAACC,QAAAA,CAAAA,QAAQ,EAAK;UACtBC,cAAU,CAACZ,KAAK,CAAC,CAAA;UACjBJ,OAAO,CAACc,QAAQ,IAAhBd,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAACc,QAAQ,CAAGC,QAAQ,CAAC,CAAA;EAC9B,OAAA;OACA,CAAA,CAAA,CAAA;MAEFd,WAAW,CAACU,WAAW,EAAE,CAAA;MACzBK,cAAU,CAACZ,KAAK,CAAC,CAAA;EACnB,GAAC,EACD;EACEQ,IAAAA,SAAS,EAAE,IAAA;EACb,GAAC,CACF,CAAA;IAEDK,kBAAc,CAACX,OAAO,CAAC,CAAA;EAEvB,EAAA,OAAOF,KAAK,CAAA;EACd,CAAA;EAEO,SAASc,cAAc,CAI5BlB,OAKC,EAC+C;IAChD,OAAOD,kBAAkB,CACvBoB,YAAQ,CAAC,YAAA;EAAA,IAAA,OAAA,QAAA,CAAA;EACPC,MAAAA,kBAAkB,EAAEA,8BAAkB;EACtCC,MAAAA,oBAAoB,EAAEA,gCAAoB;EAC1CC,MAAAA,UAAU,EAAEC,yBAAAA;OACTpB,EAAAA,SAAK,CAACH,OAAO,CAAC,CAAA,CAAA;EAAA,GACjB,CAAC,CACJ,CAAA;EACH,CAAA;EAEO,SAASwB,oBAAoB,CAClCxB,OAQC,EACuC;IACxC,OAAOD,kBAAkB,CACvBoB,YAAQ,CAAC,YAAA;EAAA,IAAA,OAAA,QAAA,CAAA;EACPV,MAAAA,gBAAgB,EAAE,SAAA,gBAAA,GAAA;EAAA,QAAA,OAAO,OAAOgB,QAAQ,KAAK,WAAW,GAAGC,MAAM,GAAG,IAAI,CAAA;SAAC;EACzEN,MAAAA,kBAAkB,EAAEO,6BAAiB;EACrCN,MAAAA,oBAAoB,EAAEO,+BAAmB;EACzCN,MAAAA,UAAU,EAAEO,wBAAY;QACxBC,aAAa,EACX,OAAOL,QAAQ,KAAK,WAAW,GAAGC,MAAM,CAACK,OAAO,GAAGC,SAAAA;OAClD7B,EAAAA,SAAK,CAACH,OAAO,CAAC,CAAA,CAAA;EAAA,GACjB,CAAC,CACJ,CAAA;EACH;;;;;;;;;;;;;;;;;"}
@@ -8,5 +8,5 @@
8
8
  *
9
9
  * @license MIT
10
10
  */
11
- !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@tanstack/virtual-core"),require("vue")):"function"==typeof define&&define.amd?define(["exports","@tanstack/virtual-core","vue"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).VueVirtual={},e.VirtualCore,e.Vue)}(this,(function(e,n,t){"use strict";function o(){return o=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e},o.apply(this,arguments)}function r(e){var r=new n.Virtualizer(t.unref(e)),i=t.shallowRef(r),u=r._didMount();return t.watch((function(){return t.unref(e).getScrollElement()}),(function(e){e&&r._willUpdate()}),{immediate:!0}),t.watch((function(){return t.unref(e)}),(function(e){r.setOptions(o({},e,{onChange:function(n){t.triggerRef(i),null==e.onChange||e.onChange(n)}})),r._willUpdate(),t.triggerRef(i)}),{immediate:!0}),t.onScopeDispose(u),i}e.useVirtualizer=function(e){return r(t.computed((function(){return o({observeElementRect:n.observeElementRect,observeElementOffset:n.observeElementOffset,scrollToFn:n.elementScroll},t.unref(e))})))},e.useWindowVirtualizer=function(e){return r(t.computed((function(){return o({getScrollElement:function(){return"undefined"!=typeof document?window:null},observeElementRect:n.observeWindowRect,observeElementOffset:n.observeWindowOffset,scrollToFn:n.windowScroll,initialOffset:"undefined"!=typeof document?window.scrollY:void 0},t.unref(e))})))},Object.defineProperty(e,"__esModule",{value:!0})}));
11
+ !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@tanstack/virtual-core"),require("vue")):"function"==typeof define&&define.amd?define(["exports","@tanstack/virtual-core","vue"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).VueVirtual={},e.VirtualCore,e.Vue)}(this,(function(e,n,t){"use strict";function r(){return r=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},r.apply(this,arguments)}function o(e){var o=new n.Virtualizer(t.unref(e)),i=t.shallowRef(o),u=o._didMount();return t.watch((function(){return t.unref(e).getScrollElement()}),(function(e){e&&o._willUpdate()}),{immediate:!0}),t.watch((function(){return t.unref(e)}),(function(e){o.setOptions(r({},e,{onChange:function(n){t.triggerRef(i),null==e.onChange||e.onChange(n)}})),o._willUpdate(),t.triggerRef(i)}),{immediate:!0}),t.onScopeDispose(u),i}e.useVirtualizer=function(e){return o(t.computed((function(){return r({observeElementRect:n.observeElementRect,observeElementOffset:n.observeElementOffset,scrollToFn:n.elementScroll},t.unref(e))})))},e.useWindowVirtualizer=function(e){return o(t.computed((function(){return r({getScrollElement:function(){return"undefined"!=typeof document?window:null},observeElementRect:n.observeWindowRect,observeElementOffset:n.observeWindowOffset,scrollToFn:n.windowScroll,initialOffset:"undefined"!=typeof document?window.scrollY:void 0},t.unref(e))})))},Object.keys(n).forEach((function(t){"default"===t||e.hasOwnProperty(t)||Object.defineProperty(e,t,{enumerable:!0,get:function(){return n[t]}})})),Object.defineProperty(e,"__esModule",{value:!0})}));
12
12
  //# sourceMappingURL=index.production.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.production.js","sources":["../../src/index.ts"],"sourcesContent":["import {\n elementScroll,\n observeElementOffset,\n observeElementRect,\n observeWindowOffset,\n observeWindowRect,\n PartialKeys,\n Virtualizer,\n VirtualizerOptions,\n windowScroll,\n} from '@tanstack/virtual-core'\nimport {\n computed,\n onScopeDispose,\n Ref,\n shallowRef,\n triggerRef,\n unref,\n watch,\n} from 'vue'\n\ntype MaybeRef<T> = T | Ref<T>\n\nfunction useVirtualizerBase<\n TScrollElement extends Element | Window,\n TItemElement extends Element,\n>(\n options: MaybeRef<VirtualizerOptions<TScrollElement, TItemElement>>,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n const virtualizer = new Virtualizer(unref(options))\n const state = shallowRef(virtualizer)\n\n const cleanup = virtualizer._didMount()\n\n watch(\n () => unref(options).getScrollElement(),\n (el) => {\n if (el) {\n virtualizer._willUpdate()\n }\n },\n {\n immediate: true,\n },\n )\n\n watch(\n () => unref(options),\n (options) => {\n virtualizer.setOptions({\n ...options,\n onChange: (instance) => {\n triggerRef(state)\n options.onChange?.(instance)\n },\n })\n\n virtualizer._willUpdate()\n triggerRef(state)\n },\n {\n immediate: true,\n },\n )\n\n onScopeDispose(cleanup)\n\n return state\n}\n\nexport function useVirtualizer<\n TScrollElement extends Element,\n TItemElement extends Element,\n>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<TScrollElement, TItemElement>,\n 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'\n >\n >,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n return useVirtualizerBase<TScrollElement, TItemElement>(\n computed(() => ({\n observeElementRect: observeElementRect,\n observeElementOffset: observeElementOffset,\n scrollToFn: elementScroll,\n ...unref(options),\n })),\n )\n}\n\nexport function useWindowVirtualizer<TItemElement extends Element>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<Window, TItemElement>,\n | 'observeElementRect'\n | 'observeElementOffset'\n | 'scrollToFn'\n | 'getScrollElement'\n >\n >,\n): Ref<Virtualizer<Window, TItemElement>> {\n return useVirtualizerBase<Window, TItemElement>(\n computed(() => ({\n getScrollElement: () => (typeof document !== 'undefined' ? window : null),\n observeElementRect: observeWindowRect,\n observeElementOffset: observeWindowOffset,\n scrollToFn: windowScroll,\n initialOffset:\n typeof document !== 'undefined' ? window.scrollY : undefined,\n ...unref(options),\n })),\n )\n}\n"],"names":["useVirtualizerBase","options","virtualizer","Virtualizer","unref","state","shallowRef","cleanup","_didMount","watch","getScrollElement","el","_willUpdate","immediate","setOptions","_extends","onChange","instance","triggerRef","onScopeDispose","computed","observeElementRect","observeElementOffset","scrollToFn","elementScroll","document","window","observeWindowRect","observeWindowOffset","windowScroll","initialOffset","scrollY","undefined"],"mappings":";;;;;;;;;;8jBAuBA,SAASA,EAIPC,GAEA,IAAMC,EAAc,IAAIC,EAAAA,YAAYC,EAAAA,MAAMH,IACpCI,EAAQC,aAAWJ,GAEnBK,EAAUL,EAAYM,YAmC5B,OAjCAC,EAAAA,OACE,WAAA,OAAML,QAAMH,GAASS,kBACrB,IAAA,SAACC,GACKA,GACFT,EAAYU,aAEhB,GACA,CACEC,WAAW,IAIfJ,EAAAA,OACE,WAAA,OAAML,EAAAA,MAAMH,EACZ,IAAA,SAACA,GACCC,EAAYY,WAAUC,EAAA,CAAA,EACjBd,EAAO,CACVe,SAAU,SAACC,GACTC,EAAUA,WAACb,GACXJ,MAAAA,EAAQe,UAARf,EAAQe,SAAWC,EACrB,KAGFf,EAAYU,cACZM,EAAUA,WAACb,EACb,GACA,CACEQ,WAAW,IAIfM,EAAcA,eAACZ,GAERF,CACT,kBAEO,SAILJ,GAOA,OAAOD,EACLoB,EAAAA,UAAS,WAAA,OAAAL,EAAA,CACPM,mBAAoBA,EAAkBA,mBACtCC,qBAAsBA,EAAoBA,qBAC1CC,WAAYC,EAAAA,eACTpB,EAAKA,MAACH,GACT,IAEN,yBAEO,SACLA,GAUA,OAAOD,EACLoB,EAAAA,UAAS,WAAA,OAAAL,EAAA,CACPL,iBAAkB,WAAA,MAA2B,oBAAbe,SAA2BC,OAAS,IAAK,EACzEL,mBAAoBM,EAAiBA,kBACrCL,qBAAsBM,EAAmBA,oBACzCL,WAAYM,EAAYA,aACxBC,cACsB,oBAAbL,SAA2BC,OAAOK,aAAUC,GAClD5B,EAAKA,MAACH,GACT,IAEN"}
1
+ {"version":3,"file":"index.production.js","sources":["../../src/index.ts"],"sourcesContent":["import {\n elementScroll,\n observeElementOffset,\n observeElementRect,\n observeWindowOffset,\n observeWindowRect,\n PartialKeys,\n Virtualizer,\n VirtualizerOptions,\n windowScroll,\n} from '@tanstack/virtual-core'\nimport {\n computed,\n onScopeDispose,\n Ref,\n shallowRef,\n triggerRef,\n unref,\n watch,\n} from 'vue'\nexport * from '@tanstack/virtual-core'\n\ntype MaybeRef<T> = T | Ref<T>\n\nfunction useVirtualizerBase<\n TScrollElement extends Element | Window,\n TItemElement extends Element,\n>(\n options: MaybeRef<VirtualizerOptions<TScrollElement, TItemElement>>,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n const virtualizer = new Virtualizer(unref(options))\n const state = shallowRef(virtualizer)\n\n const cleanup = virtualizer._didMount()\n\n watch(\n () => unref(options).getScrollElement(),\n (el) => {\n if (el) {\n virtualizer._willUpdate()\n }\n },\n {\n immediate: true,\n },\n )\n\n watch(\n () => unref(options),\n (options) => {\n virtualizer.setOptions({\n ...options,\n onChange: (instance) => {\n triggerRef(state)\n options.onChange?.(instance)\n },\n })\n\n virtualizer._willUpdate()\n triggerRef(state)\n },\n {\n immediate: true,\n },\n )\n\n onScopeDispose(cleanup)\n\n return state\n}\n\nexport function useVirtualizer<\n TScrollElement extends Element,\n TItemElement extends Element,\n>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<TScrollElement, TItemElement>,\n 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'\n >\n >,\n): Ref<Virtualizer<TScrollElement, TItemElement>> {\n return useVirtualizerBase<TScrollElement, TItemElement>(\n computed(() => ({\n observeElementRect: observeElementRect,\n observeElementOffset: observeElementOffset,\n scrollToFn: elementScroll,\n ...unref(options),\n })),\n )\n}\n\nexport function useWindowVirtualizer<TItemElement extends Element>(\n options: MaybeRef<\n PartialKeys<\n VirtualizerOptions<Window, TItemElement>,\n | 'observeElementRect'\n | 'observeElementOffset'\n | 'scrollToFn'\n | 'getScrollElement'\n >\n >,\n): Ref<Virtualizer<Window, TItemElement>> {\n return useVirtualizerBase<Window, TItemElement>(\n computed(() => ({\n getScrollElement: () => (typeof document !== 'undefined' ? window : null),\n observeElementRect: observeWindowRect,\n observeElementOffset: observeWindowOffset,\n scrollToFn: windowScroll,\n initialOffset:\n typeof document !== 'undefined' ? window.scrollY : undefined,\n ...unref(options),\n })),\n )\n}\n"],"names":["useVirtualizerBase","options","virtualizer","Virtualizer","unref","state","shallowRef","cleanup","_didMount","watch","getScrollElement","el","_willUpdate","immediate","setOptions","_extends","onChange","instance","triggerRef","onScopeDispose","computed","observeElementRect","observeElementOffset","scrollToFn","elementScroll","document","window","observeWindowRect","observeWindowOffset","windowScroll","initialOffset","scrollY","undefined"],"mappings":";;;;;;;;;;8jBAwBA,SAASA,EAIPC,GAEA,IAAMC,EAAc,IAAIC,EAAAA,YAAYC,EAAAA,MAAMH,IACpCI,EAAQC,aAAWJ,GAEnBK,EAAUL,EAAYM,YAmC5B,OAjCAC,EAAAA,OACE,WAAA,OAAML,QAAMH,GAASS,kBACrB,IAAA,SAACC,GACKA,GACFT,EAAYU,aAEhB,GACA,CACEC,WAAW,IAIfJ,EAAAA,OACE,WAAA,OAAML,EAAAA,MAAMH,EACZ,IAAA,SAACA,GACCC,EAAYY,WAAUC,EAAA,CAAA,EACjBd,EAAO,CACVe,SAAU,SAACC,GACTC,EAAUA,WAACb,GACXJ,MAAAA,EAAQe,UAARf,EAAQe,SAAWC,EACrB,KAGFf,EAAYU,cACZM,EAAUA,WAACb,EACb,GACA,CACEQ,WAAW,IAIfM,EAAcA,eAACZ,GAERF,CACT,kBAEO,SAILJ,GAOA,OAAOD,EACLoB,EAAAA,UAAS,WAAA,OAAAL,EAAA,CACPM,mBAAoBA,EAAkBA,mBACtCC,qBAAsBA,EAAoBA,qBAC1CC,WAAYC,EAAAA,eACTpB,EAAKA,MAACH,GACT,IAEN,yBAEO,SACLA,GAUA,OAAOD,EACLoB,EAAAA,UAAS,WAAA,OAAAL,EAAA,CACPL,iBAAkB,WAAA,MAA2B,oBAAbe,SAA2BC,OAAS,IAAK,EACzEL,mBAAoBM,EAAiBA,kBACrCL,qBAAsBM,EAAmBA,oBACzCL,WAAYM,EAAYA,aACxBC,cACsB,oBAAbL,SAA2BC,OAAOK,aAAUC,GAClD5B,EAAKA,MAACH,GACT,IAEN"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tanstack/vue-virtual",
3
3
  "author": "Tanner Linsley",
4
- "version": "3.0.0-beta.62",
4
+ "version": "3.0.0-beta.64",
5
5
  "description": "Headless UI for virtualizing scrollable elements in Vue",
6
6
  "license": "MIT",
7
7
  "homepage": "https://github.com/tanstack/virtual#readme",
@@ -46,7 +46,7 @@
46
46
  "vue": "^3.2.45"
47
47
  },
48
48
  "dependencies": {
49
- "@tanstack/virtual-core": "3.0.0-beta.62"
49
+ "@tanstack/virtual-core": "3.0.0-beta.63"
50
50
  },
51
51
  "peerDependencies": {
52
52
  "vue": "^2.7.0 || ^3.0.0"
package/src/index.ts CHANGED
@@ -18,6 +18,7 @@ import {
18
18
  unref,
19
19
  watch,
20
20
  } from 'vue'
21
+ export * from '@tanstack/virtual-core'
21
22
 
22
23
  type MaybeRef<T> = T | Ref<T>
23
24