react-virtuoso 2.2.6-beta.2 → 2.2.9-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (139) hide show
  1. package/dist/Grid.d.ts +27 -30
  2. package/dist/List.d.ts +230 -206
  3. package/dist/__examples.cc6a8f9f.js +10236 -620
  4. package/dist/__examples.cc6a8f9f.js.map +1 -1
  5. package/dist/__examples.js +1 -1
  6. package/dist/__examples.js.map +1 -1
  7. package/dist/align-to-bottom.7fcd2087.js +206 -1
  8. package/dist/align-to-bottom.7fcd2087.js.map +1 -1
  9. package/dist/alignToBottomSystem.d.ts +21 -21
  10. package/dist/at-bottom-detection.a5d019c3.js +441 -0
  11. package/dist/at-bottom-detection.a5d019c3.js.map +1 -0
  12. package/dist/auto-prepend-items.bd7e9b90.js +206 -1
  13. package/dist/auto-prepend-items.bd7e9b90.js.map +1 -1
  14. package/dist/benchmark.66d31485.js +206 -1
  15. package/dist/benchmark.66d31485.js.map +1 -1
  16. package/dist/chat.d4f93b8b.js +206 -1
  17. package/dist/chat.d4f93b8b.js.map +1 -1
  18. package/dist/components.d.ts +8 -6
  19. package/dist/context.a45abc98.js +380 -0
  20. package/dist/context.a45abc98.js.map +1 -0
  21. package/dist/contextSystem.d.ts +4 -0
  22. package/dist/custom-components.5aeaa7ef.js +206 -1
  23. package/dist/custom-components.5aeaa7ef.js.map +1 -1
  24. package/dist/custom-scroller.b0240d14.js +206 -1
  25. package/dist/custom-scroller.b0240d14.js.map +1 -1
  26. package/dist/data.26707046.js +206 -1
  27. package/dist/data.26707046.js.map +1 -1
  28. package/dist/decrease-items.e2211e50.js +206 -1
  29. package/dist/decrease-items.e2211e50.js.map +1 -1
  30. package/dist/default-item-height.b77ada36.js +206 -1
  31. package/dist/default-item-height.b77ada36.js.map +1 -1
  32. package/dist/domIOSystem.d.ts +1 -4
  33. package/dist/empty-placeholder.00607a6e.js +206 -1
  34. package/dist/empty-placeholder.00607a6e.js.map +1 -1
  35. package/dist/end-reached.8531e5b1.js +206 -1
  36. package/dist/end-reached.8531e5b1.js.map +1 -1
  37. package/dist/endless-scrolling.bc4101f0.js +206 -1
  38. package/dist/endless-scrolling.bc4101f0.js.map +1 -1
  39. package/dist/expandable-cards.5439f51b.js +206 -1
  40. package/dist/expandable-cards.5439f51b.js.map +1 -1
  41. package/dist/follow-output.4e36fca8.js +206 -1
  42. package/dist/follow-output.4e36fca8.js.map +1 -1
  43. package/dist/followOutputSystem.d.ts +36 -12
  44. package/dist/grid-optimize-rendering.b49e36f5.js +206 -1
  45. package/dist/grid-optimize-rendering.b49e36f5.js.map +1 -1
  46. package/dist/grid-scroll-seek-placeholder.b2862006.js +415 -0
  47. package/dist/grid-scroll-seek-placeholder.b2862006.js.map +1 -0
  48. package/dist/grid.d5d77b6a.js +206 -1
  49. package/dist/grid.d5d77b6a.js.map +1 -1
  50. package/dist/gridSystem.d.ts +20 -19
  51. package/dist/grouped-endless-scrolling.24985a0f.js +206 -1
  52. package/dist/grouped-endless-scrolling.24985a0f.js.map +1 -1
  53. package/dist/grouped-load-more.bce8f6e4.js +206 -1
  54. package/dist/grouped-load-more.bce8f6e4.js.map +1 -1
  55. package/dist/grouped-topmost-item.34960f5e.js +206 -1
  56. package/dist/grouped-topmost-item.34960f5e.js.map +1 -1
  57. package/dist/grouped.a2908632.js +206 -1
  58. package/dist/grouped.a2908632.js.map +1 -1
  59. package/dist/groupedListSystem.d.ts +2 -2
  60. package/dist/header-footer.49733d45.js +206 -1
  61. package/dist/header-footer.49733d45.js.map +1 -1
  62. package/dist/hello.54765c26.js +206 -1
  63. package/dist/hello.54765c26.js.map +1 -1
  64. package/dist/hooks/useChangedChildSizes.d.ts +1 -1
  65. package/dist/hooks/useScrollTop.d.ts +1 -1
  66. package/dist/index.js +1 -1
  67. package/dist/index.js.map +1 -1
  68. package/dist/index.m.js +1 -1
  69. package/dist/index.m.js.map +1 -1
  70. package/dist/initial-from-zero.22ad1626.js +206 -1
  71. package/dist/initial-from-zero.22ad1626.js.map +1 -1
  72. package/dist/initial-scroll-top.90db1920.js +206 -1
  73. package/dist/initial-scroll-top.90db1920.js.map +1 -1
  74. package/dist/initial-topmost-item-default-height.43a95247.js +206 -1
  75. package/dist/initial-topmost-item-default-height.43a95247.js.map +1 -1
  76. package/dist/initial-topmost-item.61c0e169.js +206 -1
  77. package/dist/initial-topmost-item.61c0e169.js.map +1 -1
  78. package/dist/initialItemCountSystem.d.ts +17 -17
  79. package/dist/initialScrollTopSystem.d.ts +21 -21
  80. package/dist/initialTopMostItemIndexSystem.d.ts +4 -4
  81. package/dist/interfaces.d.ts +11 -5
  82. package/dist/listStateSystem.d.ts +16 -16
  83. package/dist/listSystem.d.ts +217 -193
  84. package/dist/long-last-item.b56ff89c.js +206 -2
  85. package/dist/long-last-item.b56ff89c.js.map +1 -1
  86. package/dist/prepend-items.f2bda34b.js +206 -1
  87. package/dist/prepend-items.f2bda34b.js.map +1 -1
  88. package/dist/prepend-last-tall-item.168a9e65.js +206 -1
  89. package/dist/prepend-last-tall-item.168a9e65.js.map +1 -1
  90. package/dist/react-beautiful-dnd-window-scroller.0a227511.js +206 -1
  91. package/dist/react-beautiful-dnd-window-scroller.0a227511.js.map +1 -1
  92. package/dist/react-beautiful-dnd.817e9251.js +206 -1
  93. package/dist/react-beautiful-dnd.817e9251.js.map +1 -1
  94. package/dist/rerender.ddd61b7c.js +206 -1
  95. package/dist/rerender.ddd61b7c.js.map +1 -1
  96. package/dist/resize-loop.309b1dac.js +206 -1
  97. package/dist/resize-loop.309b1dac.js.map +1 -1
  98. package/dist/resizing-items.c09b5e1b.js +206 -1
  99. package/dist/resizing-items.c09b5e1b.js.map +1 -1
  100. package/dist/scroll-into-view.39b77fe9.js +206 -1
  101. package/dist/scroll-into-view.39b77fe9.js.map +1 -1
  102. package/dist/scroll-seek-placeholder.69fb85c6.js +206 -1
  103. package/dist/scroll-seek-placeholder.69fb85c6.js.map +1 -1
  104. package/dist/scroll-to-index.e72249cf.js +206 -1
  105. package/dist/scroll-to-index.e72249cf.js.map +1 -1
  106. package/dist/scrollIntoViewSystem.d.ts +21 -21
  107. package/dist/scrollSeekSystem.d.ts +7 -7
  108. package/dist/scrollToIndexSystem.d.ts +2 -2
  109. package/dist/sizeRangeSystem.d.ts +3 -3
  110. package/dist/ssr.8f31b042.js +206 -1
  111. package/dist/ssr.8f31b042.js.map +1 -1
  112. package/dist/start-reached.2990ece7.js +206 -1
  113. package/dist/start-reached.2990ece7.js.map +1 -1
  114. package/dist/stateFlagsSystem.d.ts +8 -5
  115. package/dist/tall-item-reverse-scrolling.58bcd140.js +206 -1
  116. package/dist/tall-item-reverse-scrolling.58bcd140.js.map +1 -1
  117. package/dist/test-case-446.dce9595c.js +206 -1
  118. package/dist/test-case-446.dce9595c.js.map +1 -1
  119. package/dist/test-case-460.6d75ad1f.js +206 -1
  120. package/dist/test-case-460.6d75ad1f.js.map +1 -1
  121. package/dist/test-case-463.525f34ba.js +206 -1
  122. package/dist/test-case-463.525f34ba.js.map +1 -1
  123. package/dist/toggle-display-grouped.4f4ae058.js +206 -1
  124. package/dist/toggle-display-grouped.4f4ae058.js.map +1 -1
  125. package/dist/toggle.7047c23e.js +447 -0
  126. package/dist/toggle.7047c23e.js.map +1 -0
  127. package/dist/top-items.f724bf61.js +206 -1
  128. package/dist/top-items.f724bf61.js.map +1 -1
  129. package/dist/topItemCountSystem.d.ts +17 -17
  130. package/dist/totalListHeightSystem.d.ts +19 -19
  131. package/dist/upward-scroll.d49e0815.js +206 -1
  132. package/dist/upward-scroll.d49e0815.js.map +1 -1
  133. package/dist/upwardScrollFixSystem.d.ts +25 -25
  134. package/dist/window-grid.b22094fd.js +206 -1
  135. package/dist/window-grid.b22094fd.js.map +1 -1
  136. package/dist/window-scroller.a979c6d6.js +206 -1
  137. package/dist/window-scroller.a979c6d6.js.map +1 -1
  138. package/dist/windowScrollerSystem.d.ts +2 -2
  139. package/package.json +1 -1
@@ -182,4 +182,209 @@ function App() {
182
182
  }
183
183
  }));
184
184
  }
185
- },{"react":"../node_modules/react/index.js","../src":"../src/index.tsx"}]},{},[], null)
185
+ },{"react":"../node_modules/react/index.js","../src":"../src/index.tsx"}],"../node_modules/parcel-bundler/src/builtins/hmr-runtime.js":[function(require,module,exports) {
186
+ var global = arguments[3];
187
+ var OVERLAY_ID = '__parcel__error__overlay__';
188
+ var OldModule = module.bundle.Module;
189
+
190
+ function Module(moduleName) {
191
+ OldModule.call(this, moduleName);
192
+ this.hot = {
193
+ data: module.bundle.hotData,
194
+ _acceptCallbacks: [],
195
+ _disposeCallbacks: [],
196
+ accept: function (fn) {
197
+ this._acceptCallbacks.push(fn || function () {});
198
+ },
199
+ dispose: function (fn) {
200
+ this._disposeCallbacks.push(fn);
201
+ }
202
+ };
203
+ module.bundle.hotData = null;
204
+ }
205
+
206
+ module.bundle.Module = Module;
207
+ var checkedAssets, assetsToAccept;
208
+ var parent = module.bundle.parent;
209
+
210
+ if ((!parent || !parent.isParcelRequire) && typeof WebSocket !== 'undefined') {
211
+ var hostname = "" || location.hostname;
212
+ var protocol = location.protocol === 'https:' ? 'wss' : 'ws';
213
+ var ws = new WebSocket(protocol + '://' + hostname + ':' + "53802" + '/');
214
+
215
+ ws.onmessage = function (event) {
216
+ checkedAssets = {};
217
+ assetsToAccept = [];
218
+ var data = JSON.parse(event.data);
219
+
220
+ if (data.type === 'update') {
221
+ var handled = false;
222
+ data.assets.forEach(function (asset) {
223
+ if (!asset.isNew) {
224
+ var didAccept = hmrAcceptCheck(global.parcelRequire, asset.id);
225
+
226
+ if (didAccept) {
227
+ handled = true;
228
+ }
229
+ }
230
+ }); // Enable HMR for CSS by default.
231
+
232
+ handled = handled || data.assets.every(function (asset) {
233
+ return asset.type === 'css' && asset.generated.js;
234
+ });
235
+
236
+ if (handled) {
237
+ console.clear();
238
+ data.assets.forEach(function (asset) {
239
+ hmrApply(global.parcelRequire, asset);
240
+ });
241
+ assetsToAccept.forEach(function (v) {
242
+ hmrAcceptRun(v[0], v[1]);
243
+ });
244
+ } else if (location.reload) {
245
+ // `location` global exists in a web worker context but lacks `.reload()` function.
246
+ location.reload();
247
+ }
248
+ }
249
+
250
+ if (data.type === 'reload') {
251
+ ws.close();
252
+
253
+ ws.onclose = function () {
254
+ location.reload();
255
+ };
256
+ }
257
+
258
+ if (data.type === 'error-resolved') {
259
+ console.log('[parcel] ✨ Error resolved');
260
+ removeErrorOverlay();
261
+ }
262
+
263
+ if (data.type === 'error') {
264
+ console.error('[parcel] 🚨 ' + data.error.message + '\n' + data.error.stack);
265
+ removeErrorOverlay();
266
+ var overlay = createErrorOverlay(data);
267
+ document.body.appendChild(overlay);
268
+ }
269
+ };
270
+ }
271
+
272
+ function removeErrorOverlay() {
273
+ var overlay = document.getElementById(OVERLAY_ID);
274
+
275
+ if (overlay) {
276
+ overlay.remove();
277
+ }
278
+ }
279
+
280
+ function createErrorOverlay(data) {
281
+ var overlay = document.createElement('div');
282
+ overlay.id = OVERLAY_ID; // html encode message and stack trace
283
+
284
+ var message = document.createElement('div');
285
+ var stackTrace = document.createElement('pre');
286
+ message.innerText = data.error.message;
287
+ stackTrace.innerText = data.error.stack;
288
+ overlay.innerHTML = '<div style="background: black; font-size: 16px; color: white; position: fixed; height: 100%; width: 100%; top: 0px; left: 0px; padding: 30px; opacity: 0.85; font-family: Menlo, Consolas, monospace; z-index: 9999;">' + '<span style="background: red; padding: 2px 4px; border-radius: 2px;">ERROR</span>' + '<span style="top: 2px; margin-left: 5px; position: relative;">🚨</span>' + '<div style="font-size: 18px; font-weight: bold; margin-top: 20px;">' + message.innerHTML + '</div>' + '<pre>' + stackTrace.innerHTML + '</pre>' + '</div>';
289
+ return overlay;
290
+ }
291
+
292
+ function getParents(bundle, id) {
293
+ var modules = bundle.modules;
294
+
295
+ if (!modules) {
296
+ return [];
297
+ }
298
+
299
+ var parents = [];
300
+ var k, d, dep;
301
+
302
+ for (k in modules) {
303
+ for (d in modules[k][1]) {
304
+ dep = modules[k][1][d];
305
+
306
+ if (dep === id || Array.isArray(dep) && dep[dep.length - 1] === id) {
307
+ parents.push(k);
308
+ }
309
+ }
310
+ }
311
+
312
+ if (bundle.parent) {
313
+ parents = parents.concat(getParents(bundle.parent, id));
314
+ }
315
+
316
+ return parents;
317
+ }
318
+
319
+ function hmrApply(bundle, asset) {
320
+ var modules = bundle.modules;
321
+
322
+ if (!modules) {
323
+ return;
324
+ }
325
+
326
+ if (modules[asset.id] || !bundle.parent) {
327
+ var fn = new Function('require', 'module', 'exports', asset.generated.js);
328
+ asset.isNew = !modules[asset.id];
329
+ modules[asset.id] = [fn, asset.deps];
330
+ } else if (bundle.parent) {
331
+ hmrApply(bundle.parent, asset);
332
+ }
333
+ }
334
+
335
+ function hmrAcceptCheck(bundle, id) {
336
+ var modules = bundle.modules;
337
+
338
+ if (!modules) {
339
+ return;
340
+ }
341
+
342
+ if (!modules[id] && bundle.parent) {
343
+ return hmrAcceptCheck(bundle.parent, id);
344
+ }
345
+
346
+ if (checkedAssets[id]) {
347
+ return;
348
+ }
349
+
350
+ checkedAssets[id] = true;
351
+ var cached = bundle.cache[id];
352
+ assetsToAccept.push([bundle, id]);
353
+
354
+ if (cached && cached.hot && cached.hot._acceptCallbacks.length) {
355
+ return true;
356
+ }
357
+
358
+ return getParents(global.parcelRequire, id).some(function (id) {
359
+ return hmrAcceptCheck(global.parcelRequire, id);
360
+ });
361
+ }
362
+
363
+ function hmrAcceptRun(bundle, id) {
364
+ var cached = bundle.cache[id];
365
+ bundle.hotData = {};
366
+
367
+ if (cached) {
368
+ cached.hot.data = bundle.hotData;
369
+ }
370
+
371
+ if (cached && cached.hot && cached.hot._disposeCallbacks.length) {
372
+ cached.hot._disposeCallbacks.forEach(function (cb) {
373
+ cb(bundle.hotData);
374
+ });
375
+ }
376
+
377
+ delete bundle.cache[id];
378
+ bundle(id);
379
+ cached = bundle.cache[id];
380
+
381
+ if (cached && cached.hot && cached.hot._acceptCallbacks.length) {
382
+ cached.hot._acceptCallbacks.forEach(function (cb) {
383
+ cb();
384
+ });
385
+
386
+ return true;
387
+ }
388
+ }
389
+ },{}]},{},["../node_modules/parcel-bundler/src/builtins/hmr-runtime.js"], null)
390
+ //# sourceMappingURL=/empty-placeholder.00607a6e.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["empty-placeholder.tsx"],"names":[],"mappings":";;;;;;;AAAA;;AACA;;;;;;;;;;;;;;;;;;AAGc,SAAU,GAAV,GAAa;AAAA,kBACW,oBAAS,IAAT,CADX;AAAA;AAAA,MAClB,UADkB;AAAA,MACN,aADM;;AAEzB,SACE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,IAAA,EACE,KAAA,CAAA,aAAA,CAAA,QAAA,EAAA;AAAQ,IAAA,OAAO,EAAE;AAAA,aAAM,aAAa,CAAC,UAAU,KAAK,IAAf,GAAsB,CAAtB,GAA0B,IAA3B,CAAnB;AAAA;AAAjB,GAAA,EAAoE,QAApE,CADF,EAEE,KAAA,CAAA,aAAA,CAAC,aAAD,EAAS;AACP,IAAA,cAAc,EAAE,wBAAC,GAAD;AAAA,4BAAiB,GAAjB;AAAA,KADT;AAEP,IAAA,UAAU,EAAE;AACV,MAAA,gBAAgB,EAAE;AAAA,eAAM,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,IAAA,EAAA,sBAAA,CAAN;AAAA;AADR,KAFL;AAKP,IAAA,UAAU,EAAE,UALL;AAMP,IAAA,WAAW,EAAE,qBAAC,YAAD;AAAA,aAAiB,OAAO,CAAC,GAAR,CAAY;AAAE,QAAA,WAAW,EAAX;AAAF,OAAZ,CAAjB;AAAA,KANN;AAOP,IAAA,WAAW,EAAE,qBAAC,KAAD;AAAA,aAAW,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,QAAA,KAAK,EAAE;AAAE,UAAA,MAAM,EAAE;AAAV;AAAZ,OAAA,SAAA,EAAkC,KAAlC,CAAX;AAAA,KAPN;AAQP,IAAA,KAAK,EAAE;AAAE,MAAA,MAAM,EAAE;AAAV;AARA,GAAT,CAFF,CADF;AAeD","file":"empty-placeholder.00607a6e.js","sourceRoot":"../e2e","sourcesContent":["import * as React from 'react'\nimport { Virtuoso } from '../src'\nimport { useState } from 'react'\n\nexport default function App() {\n const [totalCount, setTotalCount] = useState(1000)\n return (\n <div>\n <button onClick={() => setTotalCount(totalCount === 1000 ? 0 : 1000)}>Toggle</button>\n <Virtuoso\n computeItemKey={(key) => `item-${key}`}\n components={{\n EmptyPlaceholder: () => <div>Nothing to See here!</div>,\n }}\n totalCount={totalCount}\n isScrolling={(isScrolling) => console.log({ isScrolling })}\n itemContent={(index) => <div style={{ height: 30 }}>Item {index}</div>}\n style={{ height: 300 }}\n />\n </div>\n )\n}\n"]}
1
+ {"version":3,"sources":["empty-placeholder.tsx","../node_modules/parcel-bundler/src/builtins/hmr-runtime.js"],"names":["OVERLAY_ID","OldModule","module","bundle","Module","moduleName","call","hot","data","hotData","_acceptCallbacks","_disposeCallbacks","accept","fn","push","dispose","checkedAssets","assetsToAccept","parent","isParcelRequire","WebSocket","hostname","location","protocol","ws","onmessage","event","JSON","parse","type","handled","assets","forEach","asset","isNew","didAccept","hmrAcceptCheck","global","parcelRequire","id","every","generated","js","console","clear","hmrApply","v","hmrAcceptRun","reload","close","onclose","log","removeErrorOverlay","error","message","stack","overlay","createErrorOverlay","document","body","appendChild","getElementById","remove","createElement","stackTrace","innerText","innerHTML","getParents","modules","parents","k","d","dep","Array","isArray","length","concat","Function","deps","cached","cache","some","cb"],"mappings":"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","file":"empty-placeholder.00607a6e.js","sourceRoot":"../e2e","sourcesContent":["import * as React from 'react'\nimport { Virtuoso } from '../src'\nimport { useState } from 'react'\n\nexport default function App() {\n const [totalCount, setTotalCount] = useState(1000)\n return (\n <div>\n <button onClick={() => setTotalCount(totalCount === 1000 ? 0 : 1000)}>Toggle</button>\n <Virtuoso\n computeItemKey={(key) => `item-${key}`}\n components={{\n EmptyPlaceholder: () => <div>Nothing to See here!</div>,\n }}\n totalCount={totalCount}\n isScrolling={(isScrolling) => console.log({ isScrolling })}\n itemContent={(index) => <div style={{ height: 30 }}>Item {index}</div>}\n style={{ height: 300 }}\n />\n </div>\n )\n}\n","var OVERLAY_ID = '__parcel__error__overlay__';\n\nvar OldModule = module.bundle.Module;\n\nfunction Module(moduleName) {\n OldModule.call(this, moduleName);\n this.hot = {\n data: module.bundle.hotData,\n _acceptCallbacks: [],\n _disposeCallbacks: [],\n accept: function (fn) {\n this._acceptCallbacks.push(fn || function () {});\n },\n dispose: function (fn) {\n this._disposeCallbacks.push(fn);\n }\n };\n\n module.bundle.hotData = null;\n}\n\nmodule.bundle.Module = Module;\nvar checkedAssets, assetsToAccept;\n\nvar parent = module.bundle.parent;\nif ((!parent || !parent.isParcelRequire) && typeof WebSocket !== 'undefined') {\n var hostname = process.env.HMR_HOSTNAME || location.hostname;\n var protocol = location.protocol === 'https:' ? 'wss' : 'ws';\n var ws = new WebSocket(protocol + '://' + hostname + ':' + process.env.HMR_PORT + '/');\n ws.onmessage = function(event) {\n checkedAssets = {};\n assetsToAccept = [];\n\n var data = JSON.parse(event.data);\n\n if (data.type === 'update') {\n var handled = false;\n data.assets.forEach(function(asset) {\n if (!asset.isNew) {\n var didAccept = hmrAcceptCheck(global.parcelRequire, asset.id);\n if (didAccept) {\n handled = true;\n }\n }\n });\n\n // Enable HMR for CSS by default.\n handled = handled || data.assets.every(function(asset) {\n return asset.type === 'css' && asset.generated.js;\n });\n\n if (handled) {\n console.clear();\n\n data.assets.forEach(function (asset) {\n hmrApply(global.parcelRequire, asset);\n });\n\n assetsToAccept.forEach(function (v) {\n hmrAcceptRun(v[0], v[1]);\n });\n } else if (location.reload) { // `location` global exists in a web worker context but lacks `.reload()` function.\n location.reload();\n }\n }\n\n if (data.type === 'reload') {\n ws.close();\n ws.onclose = function () {\n location.reload();\n }\n }\n\n if (data.type === 'error-resolved') {\n console.log('[parcel] ✨ Error resolved');\n\n removeErrorOverlay();\n }\n\n if (data.type === 'error') {\n console.error('[parcel] 🚨 ' + data.error.message + '\\n' + data.error.stack);\n\n removeErrorOverlay();\n\n var overlay = createErrorOverlay(data);\n document.body.appendChild(overlay);\n }\n };\n}\n\nfunction removeErrorOverlay() {\n var overlay = document.getElementById(OVERLAY_ID);\n if (overlay) {\n overlay.remove();\n }\n}\n\nfunction createErrorOverlay(data) {\n var overlay = document.createElement('div');\n overlay.id = OVERLAY_ID;\n\n // html encode message and stack trace\n var message = document.createElement('div');\n var stackTrace = document.createElement('pre');\n message.innerText = data.error.message;\n stackTrace.innerText = data.error.stack;\n\n overlay.innerHTML = (\n '<div style=\"background: black; font-size: 16px; color: white; position: fixed; height: 100%; width: 100%; top: 0px; left: 0px; padding: 30px; opacity: 0.85; font-family: Menlo, Consolas, monospace; z-index: 9999;\">' +\n '<span style=\"background: red; padding: 2px 4px; border-radius: 2px;\">ERROR</span>' +\n '<span style=\"top: 2px; margin-left: 5px; position: relative;\">🚨</span>' +\n '<div style=\"font-size: 18px; font-weight: bold; margin-top: 20px;\">' + message.innerHTML + '</div>' +\n '<pre>' + stackTrace.innerHTML + '</pre>' +\n '</div>'\n );\n\n return overlay;\n\n}\n\nfunction getParents(bundle, id) {\n var modules = bundle.modules;\n if (!modules) {\n return [];\n }\n\n var parents = [];\n var k, d, dep;\n\n for (k in modules) {\n for (d in modules[k][1]) {\n dep = modules[k][1][d];\n if (dep === id || (Array.isArray(dep) && dep[dep.length - 1] === id)) {\n parents.push(k);\n }\n }\n }\n\n if (bundle.parent) {\n parents = parents.concat(getParents(bundle.parent, id));\n }\n\n return parents;\n}\n\nfunction hmrApply(bundle, asset) {\n var modules = bundle.modules;\n if (!modules) {\n return;\n }\n\n if (modules[asset.id] || !bundle.parent) {\n var fn = new Function('require', 'module', 'exports', asset.generated.js);\n asset.isNew = !modules[asset.id];\n modules[asset.id] = [fn, asset.deps];\n } else if (bundle.parent) {\n hmrApply(bundle.parent, asset);\n }\n}\n\nfunction hmrAcceptCheck(bundle, id) {\n var modules = bundle.modules;\n if (!modules) {\n return;\n }\n\n if (!modules[id] && bundle.parent) {\n return hmrAcceptCheck(bundle.parent, id);\n }\n\n if (checkedAssets[id]) {\n return;\n }\n checkedAssets[id] = true;\n\n var cached = bundle.cache[id];\n\n assetsToAccept.push([bundle, id]);\n\n if (cached && cached.hot && cached.hot._acceptCallbacks.length) {\n return true;\n }\n\n return getParents(global.parcelRequire, id).some(function (id) {\n return hmrAcceptCheck(global.parcelRequire, id)\n });\n}\n\nfunction hmrAcceptRun(bundle, id) {\n var cached = bundle.cache[id];\n bundle.hotData = {};\n if (cached) {\n cached.hot.data = bundle.hotData;\n }\n\n if (cached && cached.hot && cached.hot._disposeCallbacks.length) {\n cached.hot._disposeCallbacks.forEach(function (cb) {\n cb(bundle.hotData);\n });\n }\n\n delete bundle.cache[id];\n bundle(id);\n\n cached = bundle.cache[id];\n if (cached && cached.hot && cached.hot._acceptCallbacks.length) {\n cached.hot._acceptCallbacks.forEach(function (cb) {\n cb();\n });\n return true;\n }\n}\n"]}
@@ -196,4 +196,209 @@ function App() {
196
196
  }
197
197
  }));
198
198
  }
199
- },{"react":"../node_modules/react/index.js","../src":"../src/index.tsx"}]},{},[], null)
199
+ },{"react":"../node_modules/react/index.js","../src":"../src/index.tsx"}],"../node_modules/parcel-bundler/src/builtins/hmr-runtime.js":[function(require,module,exports) {
200
+ var global = arguments[3];
201
+ var OVERLAY_ID = '__parcel__error__overlay__';
202
+ var OldModule = module.bundle.Module;
203
+
204
+ function Module(moduleName) {
205
+ OldModule.call(this, moduleName);
206
+ this.hot = {
207
+ data: module.bundle.hotData,
208
+ _acceptCallbacks: [],
209
+ _disposeCallbacks: [],
210
+ accept: function (fn) {
211
+ this._acceptCallbacks.push(fn || function () {});
212
+ },
213
+ dispose: function (fn) {
214
+ this._disposeCallbacks.push(fn);
215
+ }
216
+ };
217
+ module.bundle.hotData = null;
218
+ }
219
+
220
+ module.bundle.Module = Module;
221
+ var checkedAssets, assetsToAccept;
222
+ var parent = module.bundle.parent;
223
+
224
+ if ((!parent || !parent.isParcelRequire) && typeof WebSocket !== 'undefined') {
225
+ var hostname = "" || location.hostname;
226
+ var protocol = location.protocol === 'https:' ? 'wss' : 'ws';
227
+ var ws = new WebSocket(protocol + '://' + hostname + ':' + "53802" + '/');
228
+
229
+ ws.onmessage = function (event) {
230
+ checkedAssets = {};
231
+ assetsToAccept = [];
232
+ var data = JSON.parse(event.data);
233
+
234
+ if (data.type === 'update') {
235
+ var handled = false;
236
+ data.assets.forEach(function (asset) {
237
+ if (!asset.isNew) {
238
+ var didAccept = hmrAcceptCheck(global.parcelRequire, asset.id);
239
+
240
+ if (didAccept) {
241
+ handled = true;
242
+ }
243
+ }
244
+ }); // Enable HMR for CSS by default.
245
+
246
+ handled = handled || data.assets.every(function (asset) {
247
+ return asset.type === 'css' && asset.generated.js;
248
+ });
249
+
250
+ if (handled) {
251
+ console.clear();
252
+ data.assets.forEach(function (asset) {
253
+ hmrApply(global.parcelRequire, asset);
254
+ });
255
+ assetsToAccept.forEach(function (v) {
256
+ hmrAcceptRun(v[0], v[1]);
257
+ });
258
+ } else if (location.reload) {
259
+ // `location` global exists in a web worker context but lacks `.reload()` function.
260
+ location.reload();
261
+ }
262
+ }
263
+
264
+ if (data.type === 'reload') {
265
+ ws.close();
266
+
267
+ ws.onclose = function () {
268
+ location.reload();
269
+ };
270
+ }
271
+
272
+ if (data.type === 'error-resolved') {
273
+ console.log('[parcel] ✨ Error resolved');
274
+ removeErrorOverlay();
275
+ }
276
+
277
+ if (data.type === 'error') {
278
+ console.error('[parcel] 🚨 ' + data.error.message + '\n' + data.error.stack);
279
+ removeErrorOverlay();
280
+ var overlay = createErrorOverlay(data);
281
+ document.body.appendChild(overlay);
282
+ }
283
+ };
284
+ }
285
+
286
+ function removeErrorOverlay() {
287
+ var overlay = document.getElementById(OVERLAY_ID);
288
+
289
+ if (overlay) {
290
+ overlay.remove();
291
+ }
292
+ }
293
+
294
+ function createErrorOverlay(data) {
295
+ var overlay = document.createElement('div');
296
+ overlay.id = OVERLAY_ID; // html encode message and stack trace
297
+
298
+ var message = document.createElement('div');
299
+ var stackTrace = document.createElement('pre');
300
+ message.innerText = data.error.message;
301
+ stackTrace.innerText = data.error.stack;
302
+ overlay.innerHTML = '<div style="background: black; font-size: 16px; color: white; position: fixed; height: 100%; width: 100%; top: 0px; left: 0px; padding: 30px; opacity: 0.85; font-family: Menlo, Consolas, monospace; z-index: 9999;">' + '<span style="background: red; padding: 2px 4px; border-radius: 2px;">ERROR</span>' + '<span style="top: 2px; margin-left: 5px; position: relative;">🚨</span>' + '<div style="font-size: 18px; font-weight: bold; margin-top: 20px;">' + message.innerHTML + '</div>' + '<pre>' + stackTrace.innerHTML + '</pre>' + '</div>';
303
+ return overlay;
304
+ }
305
+
306
+ function getParents(bundle, id) {
307
+ var modules = bundle.modules;
308
+
309
+ if (!modules) {
310
+ return [];
311
+ }
312
+
313
+ var parents = [];
314
+ var k, d, dep;
315
+
316
+ for (k in modules) {
317
+ for (d in modules[k][1]) {
318
+ dep = modules[k][1][d];
319
+
320
+ if (dep === id || Array.isArray(dep) && dep[dep.length - 1] === id) {
321
+ parents.push(k);
322
+ }
323
+ }
324
+ }
325
+
326
+ if (bundle.parent) {
327
+ parents = parents.concat(getParents(bundle.parent, id));
328
+ }
329
+
330
+ return parents;
331
+ }
332
+
333
+ function hmrApply(bundle, asset) {
334
+ var modules = bundle.modules;
335
+
336
+ if (!modules) {
337
+ return;
338
+ }
339
+
340
+ if (modules[asset.id] || !bundle.parent) {
341
+ var fn = new Function('require', 'module', 'exports', asset.generated.js);
342
+ asset.isNew = !modules[asset.id];
343
+ modules[asset.id] = [fn, asset.deps];
344
+ } else if (bundle.parent) {
345
+ hmrApply(bundle.parent, asset);
346
+ }
347
+ }
348
+
349
+ function hmrAcceptCheck(bundle, id) {
350
+ var modules = bundle.modules;
351
+
352
+ if (!modules) {
353
+ return;
354
+ }
355
+
356
+ if (!modules[id] && bundle.parent) {
357
+ return hmrAcceptCheck(bundle.parent, id);
358
+ }
359
+
360
+ if (checkedAssets[id]) {
361
+ return;
362
+ }
363
+
364
+ checkedAssets[id] = true;
365
+ var cached = bundle.cache[id];
366
+ assetsToAccept.push([bundle, id]);
367
+
368
+ if (cached && cached.hot && cached.hot._acceptCallbacks.length) {
369
+ return true;
370
+ }
371
+
372
+ return getParents(global.parcelRequire, id).some(function (id) {
373
+ return hmrAcceptCheck(global.parcelRequire, id);
374
+ });
375
+ }
376
+
377
+ function hmrAcceptRun(bundle, id) {
378
+ var cached = bundle.cache[id];
379
+ bundle.hotData = {};
380
+
381
+ if (cached) {
382
+ cached.hot.data = bundle.hotData;
383
+ }
384
+
385
+ if (cached && cached.hot && cached.hot._disposeCallbacks.length) {
386
+ cached.hot._disposeCallbacks.forEach(function (cb) {
387
+ cb(bundle.hotData);
388
+ });
389
+ }
390
+
391
+ delete bundle.cache[id];
392
+ bundle(id);
393
+ cached = bundle.cache[id];
394
+
395
+ if (cached && cached.hot && cached.hot._acceptCallbacks.length) {
396
+ cached.hot._acceptCallbacks.forEach(function (cb) {
397
+ cb();
398
+ });
399
+
400
+ return true;
401
+ }
402
+ }
403
+ },{}]},{},["../node_modules/parcel-bundler/src/builtins/hmr-runtime.js"], null)
404
+ //# sourceMappingURL=/end-reached.8531e5b1.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["end-reached.tsx"],"names":[],"mappings":";;;;;;;AAAA;;AAEA;;;;;;;;;;;;;;;;;;AAEA,SAAS,aAAT,CAAuB,MAAvB,EAAuC,IAAvC,EAAmD;AACjD,SAAO,KAAK,CAAC,IAAN,CAAW;AAAE,IAAA,MAAM,EAAN;AAAF,GAAX,EAAuB,UAAC,CAAD,EAAI,KAAJ;AAAA,6BAAyB,KAAzB,oBAAwC,IAAxC;AAAA,GAAvB,CAAP;AACD;;AAED,IAAM,WAAW,GAAG,SAAd,WAAc,CAAC,CAAD,EAAY,IAAZ,EAA4B;AAC9C,SAAO,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,KAAK,EAAE;AAAE,MAAA,MAAM,EAAE;AAAV;AAAZ,GAAA,EAA6B,IAA7B,CAAP;AACD,CAFD;;AAIc,SAAU,GAAV,GAAa;AAAA,kBACD,oBAAS;AAAA,WAAM,aAAa,CAAC,GAAD,EAAM,CAAN,CAAnB;AAAA,GAAT,CADC;AAAA;AAAA,MAClB,IADkB;AAAA,MACZ,OADY;;AAAA,mBAED,oBAAS,CAAT,CAFC;AAAA;AAAA,MAElB,IAFkB;AAAA,MAEZ,OAFY;;AAIzB,SACE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,IAAA,EACE,KAAA,CAAA,aAAA,CAAA,QAAA,EAAA;AACE,IAAA,OAAO,EAAE,mBAAK;AACZ,MAAA,OAAO,CAAC,UAAC,GAAD;AAAA,eAAS,GAAG,GAAG,CAAf;AAAA,OAAD,CAAP;AACA,MAAA,OAAO,CAAC,UAAC,QAAD,EAAa;AACnB,eAAO,aAAa,CAAC,QAAQ,CAAC,MAAV,EAAkB,IAAI,GAAG,CAAzB,CAApB;AACD,OAFM,CAAP;AAGD;AANH,GAAA,EAMG,eANH,CADF,EAWE,KAAA,CAAA,aAAA,CAAC,aAAD,EAAS;AAAC,IAAA,IAAI,EAAE,IAAP;AAAa,IAAA,UAAU,EAAE,oBAAC,GAAD;AAAA,aAAS,OAAO,CAAC,GAAR,CAAY;AAAE,QAAA,GAAG,EAAH;AAAF,OAAZ,CAAT;AAAA,KAAzB;AAAwD,IAAA,WAAW,EAAE,WAArE;AAAkF,IAAA,KAAK,EAAE;AAAE,MAAA,MAAM,EAAE;AAAV;AAAzF,GAAT,CAXF,CADF;AAeD","file":"end-reached.8531e5b1.js","sourceRoot":"../e2e","sourcesContent":["import * as React from 'react'\nimport { useState } from 'react'\nimport { Virtuoso } from '../src'\n\nfunction generateItems(length: number, iter: number) {\n return Array.from({ length }, (_, index) => `My Item ${index}, gen: ${iter}`)\n}\n\nconst itemContent = (_: number, data: string) => {\n return <div style={{ height: 30 }}>{data}</div>\n}\n\nexport default function App() {\n const [data, setData] = useState(() => generateItems(100, 1))\n const [iter, setIter] = useState(1)\n\n return (\n <div>\n <button\n onClick={() => {\n setIter((val) => val + 1)\n setData((prevData) => {\n return generateItems(prevData.length, iter + 1)\n })\n }}\n >\n Refresh items\n </button>\n <Virtuoso data={data} endReached={(end) => console.log({ end })} itemContent={itemContent} style={{ height: 300 }} />\n </div>\n )\n}\n"]}
1
+ {"version":3,"sources":["end-reached.tsx","../node_modules/parcel-bundler/src/builtins/hmr-runtime.js"],"names":["OVERLAY_ID","OldModule","module","bundle","Module","moduleName","call","hot","data","hotData","_acceptCallbacks","_disposeCallbacks","accept","fn","push","dispose","checkedAssets","assetsToAccept","parent","isParcelRequire","WebSocket","hostname","location","protocol","ws","onmessage","event","JSON","parse","type","handled","assets","forEach","asset","isNew","didAccept","hmrAcceptCheck","global","parcelRequire","id","every","generated","js","console","clear","hmrApply","v","hmrAcceptRun","reload","close","onclose","log","removeErrorOverlay","error","message","stack","overlay","createErrorOverlay","document","body","appendChild","getElementById","remove","createElement","stackTrace","innerText","innerHTML","getParents","modules","parents","k","d","dep","Array","isArray","length","concat","Function","deps","cached","cache","some","cb"],"mappings":"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","file":"end-reached.8531e5b1.js","sourceRoot":"../e2e","sourcesContent":["import * as React from 'react'\nimport { useState } from 'react'\nimport { Virtuoso } from '../src'\n\nfunction generateItems(length: number, iter: number) {\n return Array.from({ length }, (_, index) => `My Item ${index}, gen: ${iter}`)\n}\n\nconst itemContent = (_: number, data: string) => {\n return <div style={{ height: 30 }}>{data}</div>\n}\n\nexport default function App() {\n const [data, setData] = useState(() => generateItems(100, 1))\n const [iter, setIter] = useState(1)\n\n return (\n <div>\n <button\n onClick={() => {\n setIter((val) => val + 1)\n setData((prevData) => {\n return generateItems(prevData.length, iter + 1)\n })\n }}\n >\n Refresh items\n </button>\n <Virtuoso data={data} endReached={(end) => console.log({ end })} itemContent={itemContent} style={{ height: 300 }} />\n </div>\n )\n}\n","var OVERLAY_ID = '__parcel__error__overlay__';\n\nvar OldModule = module.bundle.Module;\n\nfunction Module(moduleName) {\n OldModule.call(this, moduleName);\n this.hot = {\n data: module.bundle.hotData,\n _acceptCallbacks: [],\n _disposeCallbacks: [],\n accept: function (fn) {\n this._acceptCallbacks.push(fn || function () {});\n },\n dispose: function (fn) {\n this._disposeCallbacks.push(fn);\n }\n };\n\n module.bundle.hotData = null;\n}\n\nmodule.bundle.Module = Module;\nvar checkedAssets, assetsToAccept;\n\nvar parent = module.bundle.parent;\nif ((!parent || !parent.isParcelRequire) && typeof WebSocket !== 'undefined') {\n var hostname = process.env.HMR_HOSTNAME || location.hostname;\n var protocol = location.protocol === 'https:' ? 'wss' : 'ws';\n var ws = new WebSocket(protocol + '://' + hostname + ':' + process.env.HMR_PORT + '/');\n ws.onmessage = function(event) {\n checkedAssets = {};\n assetsToAccept = [];\n\n var data = JSON.parse(event.data);\n\n if (data.type === 'update') {\n var handled = false;\n data.assets.forEach(function(asset) {\n if (!asset.isNew) {\n var didAccept = hmrAcceptCheck(global.parcelRequire, asset.id);\n if (didAccept) {\n handled = true;\n }\n }\n });\n\n // Enable HMR for CSS by default.\n handled = handled || data.assets.every(function(asset) {\n return asset.type === 'css' && asset.generated.js;\n });\n\n if (handled) {\n console.clear();\n\n data.assets.forEach(function (asset) {\n hmrApply(global.parcelRequire, asset);\n });\n\n assetsToAccept.forEach(function (v) {\n hmrAcceptRun(v[0], v[1]);\n });\n } else if (location.reload) { // `location` global exists in a web worker context but lacks `.reload()` function.\n location.reload();\n }\n }\n\n if (data.type === 'reload') {\n ws.close();\n ws.onclose = function () {\n location.reload();\n }\n }\n\n if (data.type === 'error-resolved') {\n console.log('[parcel] ✨ Error resolved');\n\n removeErrorOverlay();\n }\n\n if (data.type === 'error') {\n console.error('[parcel] 🚨 ' + data.error.message + '\\n' + data.error.stack);\n\n removeErrorOverlay();\n\n var overlay = createErrorOverlay(data);\n document.body.appendChild(overlay);\n }\n };\n}\n\nfunction removeErrorOverlay() {\n var overlay = document.getElementById(OVERLAY_ID);\n if (overlay) {\n overlay.remove();\n }\n}\n\nfunction createErrorOverlay(data) {\n var overlay = document.createElement('div');\n overlay.id = OVERLAY_ID;\n\n // html encode message and stack trace\n var message = document.createElement('div');\n var stackTrace = document.createElement('pre');\n message.innerText = data.error.message;\n stackTrace.innerText = data.error.stack;\n\n overlay.innerHTML = (\n '<div style=\"background: black; font-size: 16px; color: white; position: fixed; height: 100%; width: 100%; top: 0px; left: 0px; padding: 30px; opacity: 0.85; font-family: Menlo, Consolas, monospace; z-index: 9999;\">' +\n '<span style=\"background: red; padding: 2px 4px; border-radius: 2px;\">ERROR</span>' +\n '<span style=\"top: 2px; margin-left: 5px; position: relative;\">🚨</span>' +\n '<div style=\"font-size: 18px; font-weight: bold; margin-top: 20px;\">' + message.innerHTML + '</div>' +\n '<pre>' + stackTrace.innerHTML + '</pre>' +\n '</div>'\n );\n\n return overlay;\n\n}\n\nfunction getParents(bundle, id) {\n var modules = bundle.modules;\n if (!modules) {\n return [];\n }\n\n var parents = [];\n var k, d, dep;\n\n for (k in modules) {\n for (d in modules[k][1]) {\n dep = modules[k][1][d];\n if (dep === id || (Array.isArray(dep) && dep[dep.length - 1] === id)) {\n parents.push(k);\n }\n }\n }\n\n if (bundle.parent) {\n parents = parents.concat(getParents(bundle.parent, id));\n }\n\n return parents;\n}\n\nfunction hmrApply(bundle, asset) {\n var modules = bundle.modules;\n if (!modules) {\n return;\n }\n\n if (modules[asset.id] || !bundle.parent) {\n var fn = new Function('require', 'module', 'exports', asset.generated.js);\n asset.isNew = !modules[asset.id];\n modules[asset.id] = [fn, asset.deps];\n } else if (bundle.parent) {\n hmrApply(bundle.parent, asset);\n }\n}\n\nfunction hmrAcceptCheck(bundle, id) {\n var modules = bundle.modules;\n if (!modules) {\n return;\n }\n\n if (!modules[id] && bundle.parent) {\n return hmrAcceptCheck(bundle.parent, id);\n }\n\n if (checkedAssets[id]) {\n return;\n }\n checkedAssets[id] = true;\n\n var cached = bundle.cache[id];\n\n assetsToAccept.push([bundle, id]);\n\n if (cached && cached.hot && cached.hot._acceptCallbacks.length) {\n return true;\n }\n\n return getParents(global.parcelRequire, id).some(function (id) {\n return hmrAcceptCheck(global.parcelRequire, id)\n });\n}\n\nfunction hmrAcceptRun(bundle, id) {\n var cached = bundle.cache[id];\n bundle.hotData = {};\n if (cached) {\n cached.hot.data = bundle.hotData;\n }\n\n if (cached && cached.hot && cached.hot._disposeCallbacks.length) {\n cached.hot._disposeCallbacks.forEach(function (cb) {\n cb(bundle.hotData);\n });\n }\n\n delete bundle.cache[id];\n bundle(id);\n\n cached = bundle.cache[id];\n if (cached && cached.hot && cached.hot._acceptCallbacks.length) {\n cached.hot._acceptCallbacks.forEach(function (cb) {\n cb();\n });\n return true;\n }\n}\n"]}