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
@@ -241,4 +241,209 @@ function App() {
241
241
  }
242
242
  }, "End 99"));
243
243
  }
244
- },{"react":"../node_modules/react/index.js","../src":"../src/index.tsx","@emotion/styled":"../node_modules/@emotion/styled/dist/styled.browser.esm.js"}]},{},[], null)
244
+ },{"react":"../node_modules/react/index.js","../src":"../src/index.tsx","@emotion/styled":"../node_modules/@emotion/styled/dist/styled.browser.esm.js"}],"../node_modules/parcel-bundler/src/builtins/hmr-runtime.js":[function(require,module,exports) {
245
+ var global = arguments[3];
246
+ var OVERLAY_ID = '__parcel__error__overlay__';
247
+ var OldModule = module.bundle.Module;
248
+
249
+ function Module(moduleName) {
250
+ OldModule.call(this, moduleName);
251
+ this.hot = {
252
+ data: module.bundle.hotData,
253
+ _acceptCallbacks: [],
254
+ _disposeCallbacks: [],
255
+ accept: function (fn) {
256
+ this._acceptCallbacks.push(fn || function () {});
257
+ },
258
+ dispose: function (fn) {
259
+ this._disposeCallbacks.push(fn);
260
+ }
261
+ };
262
+ module.bundle.hotData = null;
263
+ }
264
+
265
+ module.bundle.Module = Module;
266
+ var checkedAssets, assetsToAccept;
267
+ var parent = module.bundle.parent;
268
+
269
+ if ((!parent || !parent.isParcelRequire) && typeof WebSocket !== 'undefined') {
270
+ var hostname = "" || location.hostname;
271
+ var protocol = location.protocol === 'https:' ? 'wss' : 'ws';
272
+ var ws = new WebSocket(protocol + '://' + hostname + ':' + "53802" + '/');
273
+
274
+ ws.onmessage = function (event) {
275
+ checkedAssets = {};
276
+ assetsToAccept = [];
277
+ var data = JSON.parse(event.data);
278
+
279
+ if (data.type === 'update') {
280
+ var handled = false;
281
+ data.assets.forEach(function (asset) {
282
+ if (!asset.isNew) {
283
+ var didAccept = hmrAcceptCheck(global.parcelRequire, asset.id);
284
+
285
+ if (didAccept) {
286
+ handled = true;
287
+ }
288
+ }
289
+ }); // Enable HMR for CSS by default.
290
+
291
+ handled = handled || data.assets.every(function (asset) {
292
+ return asset.type === 'css' && asset.generated.js;
293
+ });
294
+
295
+ if (handled) {
296
+ console.clear();
297
+ data.assets.forEach(function (asset) {
298
+ hmrApply(global.parcelRequire, asset);
299
+ });
300
+ assetsToAccept.forEach(function (v) {
301
+ hmrAcceptRun(v[0], v[1]);
302
+ });
303
+ } else if (location.reload) {
304
+ // `location` global exists in a web worker context but lacks `.reload()` function.
305
+ location.reload();
306
+ }
307
+ }
308
+
309
+ if (data.type === 'reload') {
310
+ ws.close();
311
+
312
+ ws.onclose = function () {
313
+ location.reload();
314
+ };
315
+ }
316
+
317
+ if (data.type === 'error-resolved') {
318
+ console.log('[parcel] ✨ Error resolved');
319
+ removeErrorOverlay();
320
+ }
321
+
322
+ if (data.type === 'error') {
323
+ console.error('[parcel] 🚨 ' + data.error.message + '\n' + data.error.stack);
324
+ removeErrorOverlay();
325
+ var overlay = createErrorOverlay(data);
326
+ document.body.appendChild(overlay);
327
+ }
328
+ };
329
+ }
330
+
331
+ function removeErrorOverlay() {
332
+ var overlay = document.getElementById(OVERLAY_ID);
333
+
334
+ if (overlay) {
335
+ overlay.remove();
336
+ }
337
+ }
338
+
339
+ function createErrorOverlay(data) {
340
+ var overlay = document.createElement('div');
341
+ overlay.id = OVERLAY_ID; // html encode message and stack trace
342
+
343
+ var message = document.createElement('div');
344
+ var stackTrace = document.createElement('pre');
345
+ message.innerText = data.error.message;
346
+ stackTrace.innerText = data.error.stack;
347
+ 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>';
348
+ return overlay;
349
+ }
350
+
351
+ function getParents(bundle, id) {
352
+ var modules = bundle.modules;
353
+
354
+ if (!modules) {
355
+ return [];
356
+ }
357
+
358
+ var parents = [];
359
+ var k, d, dep;
360
+
361
+ for (k in modules) {
362
+ for (d in modules[k][1]) {
363
+ dep = modules[k][1][d];
364
+
365
+ if (dep === id || Array.isArray(dep) && dep[dep.length - 1] === id) {
366
+ parents.push(k);
367
+ }
368
+ }
369
+ }
370
+
371
+ if (bundle.parent) {
372
+ parents = parents.concat(getParents(bundle.parent, id));
373
+ }
374
+
375
+ return parents;
376
+ }
377
+
378
+ function hmrApply(bundle, asset) {
379
+ var modules = bundle.modules;
380
+
381
+ if (!modules) {
382
+ return;
383
+ }
384
+
385
+ if (modules[asset.id] || !bundle.parent) {
386
+ var fn = new Function('require', 'module', 'exports', asset.generated.js);
387
+ asset.isNew = !modules[asset.id];
388
+ modules[asset.id] = [fn, asset.deps];
389
+ } else if (bundle.parent) {
390
+ hmrApply(bundle.parent, asset);
391
+ }
392
+ }
393
+
394
+ function hmrAcceptCheck(bundle, id) {
395
+ var modules = bundle.modules;
396
+
397
+ if (!modules) {
398
+ return;
399
+ }
400
+
401
+ if (!modules[id] && bundle.parent) {
402
+ return hmrAcceptCheck(bundle.parent, id);
403
+ }
404
+
405
+ if (checkedAssets[id]) {
406
+ return;
407
+ }
408
+
409
+ checkedAssets[id] = true;
410
+ var cached = bundle.cache[id];
411
+ assetsToAccept.push([bundle, id]);
412
+
413
+ if (cached && cached.hot && cached.hot._acceptCallbacks.length) {
414
+ return true;
415
+ }
416
+
417
+ return getParents(global.parcelRequire, id).some(function (id) {
418
+ return hmrAcceptCheck(global.parcelRequire, id);
419
+ });
420
+ }
421
+
422
+ function hmrAcceptRun(bundle, id) {
423
+ var cached = bundle.cache[id];
424
+ bundle.hotData = {};
425
+
426
+ if (cached) {
427
+ cached.hot.data = bundle.hotData;
428
+ }
429
+
430
+ if (cached && cached.hot && cached.hot._disposeCallbacks.length) {
431
+ cached.hot._disposeCallbacks.forEach(function (cb) {
432
+ cb(bundle.hotData);
433
+ });
434
+ }
435
+
436
+ delete bundle.cache[id];
437
+ bundle(id);
438
+ cached = bundle.cache[id];
439
+
440
+ if (cached && cached.hot && cached.hot._acceptCallbacks.length) {
441
+ cached.hot._acceptCallbacks.forEach(function (cb) {
442
+ cb();
443
+ });
444
+
445
+ return true;
446
+ }
447
+ }
448
+ },{}]},{},["../node_modules/parcel-bundler/src/builtins/hmr-runtime.js"], null)
449
+ //# sourceMappingURL=/grid.d5d77b6a.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["grid.tsx"],"names":[],"mappings":";;;;;;;AAAA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAM,aAAa,GAAG,gBAAO,GAAV,mBAAnB;;AAuBA,IAAM,WAAW,GAAG,gBAAO,GAAV,oBAAjB;;AAUA,IAAM,aAAa,GAAG,gBAAO,GAAV,oBAAnB;;AAKc,SAAU,GAAV,GAAa;AACzB,MAAM,GAAG,GAAG,KAAK,CAAC,SAAN,EAAZ;AAEA,SACE,KAAA,CAAA,aAAA,CAAA,KAAA,CAAA,QAAA,EAAA,IAAA,EACE,KAAA,CAAA,aAAA,CAAC,iBAAD,EAAa;AACX,IAAA,GAAG,EAAE,GADM;AAEX,IAAA,UAAU,EAAE;AACV,MAAA,IAAI,EAAE,aADI;AAEV,MAAA,IAAI,EAAE,aAFI;AAGV,MAAA,qBAAqB,EAAE;AAAA,eACrB,KAAA,CAAA,aAAA,CAAC,aAAD,EAAc,IAAd,EACE,KAAA,CAAA,aAAA,CAAC,WAAD,EAAY,IAAZ,EAAY,aAAZ,CADF,CADqB;AAAA;AAHb,KAFD;AAWX,IAAA,UAAU,EAAE,GAXD;AAYX,IAAA,YAAY,EAAE;AAAA,aAAM,OAAO,CAAC,GAAR,CAAY,eAAZ,CAAN;AAAA,KAZH;AAaX,IAAA,UAAU,EAAE;AAAA,aAAM,OAAO,CAAC,GAAR,CAAY,aAAZ,CAAN;AAAA,KAbD;AAcX;AACA,IAAA,uBAAuB,EAAE;AACvB,MAAA,KAAK,EAAE,eAAC,QAAD;AAAA,eAAc,IAAI,CAAC,GAAL,CAAS,QAAT,IAAqB,GAAnC;AAAA,OADgB;AAEvB,MAAA,IAAI,EAAE,cAAC,QAAD;AAAA,eAAc,IAAI,CAAC,GAAL,CAAS,QAAT,IAAqB,EAAnC;AAAA,OAFiB;AAGvB,MAAA,MAAM,EAAE,gBAAC,CAAD,EAAI,KAAJ;AAAA,eAAc,OAAO,CAAC,GAAR,CAAY;AAAE,UAAA,KAAK,EAAL;AAAF,SAAZ,CAAd;AAAA;AAHe,KAfd;AAoBX,IAAA,WAAW,EAAE,qBAAC,KAAD;AAAA,aAAW,KAAA,CAAA,aAAA,CAAC,WAAD,EAAY,IAAZ,SAAA,EAAmB,KAAnB,CAAX;AAAA,KApBF;AAqBX,IAAA,KAAK,EAAE;AAAE,MAAA,MAAM,EAAE,GAAV;AAAe,MAAA,KAAK,EAAE;AAAtB;AArBI,GAAb,CADF,EAyBE,KAAA,CAAA,aAAA,CAAA,QAAA,EAAA;AAAQ,IAAA,EAAE,EAAC,UAAX;AAAsB,IAAA,OAAO,EAAE;AAAA,aAAM,GAAG,CAAC,OAAJ,CAAa,aAAb,CAA2B;AAAE,QAAA,KAAK,EAAE,EAAT;AAAa,QAAA,KAAK,EAAE;AAApB,OAA3B,CAAN;AAAA;AAA/B,GAAA,EAA8F,UAA9F,CAzBF,EA4BE,KAAA,CAAA,aAAA,CAAA,QAAA,EAAA;AAAQ,IAAA,EAAE,EAAC,WAAX;AAAuB,IAAA,OAAO,EAAE;AAAA,aAAM,GAAG,CAAC,OAAJ,CAAa,aAAb,CAA2B;AAAE,QAAA,KAAK,EAAE,EAAT;AAAa,QAAA,KAAK,EAAE,QAApB;AAA8B,QAAA,QAAQ,EAAE;AAAxC,OAA3B,CAAN;AAAA;AAAhC,GAAA,EAAoH,WAApH,CA5BF,EA+BE,KAAA,CAAA,aAAA,CAAA,QAAA,EAAA;AAAQ,IAAA,EAAE,EAAC,QAAX;AAAoB,IAAA,OAAO,EAAE;AAAA,aAAM,GAAG,CAAC,OAAJ,CAAa,aAAb,CAA2B;AAAE,QAAA,KAAK,EAAE,EAAT;AAAa,QAAA,KAAK,EAAE;AAApB,OAA3B,CAAN;AAAA;AAA7B,GAAA,EAA0F,QAA1F,CA/BF,CADF;AAqCD","file":"grid.d5d77b6a.js","sourceRoot":"../e2e","sourcesContent":["import * as React from 'react'\nimport { VirtuosoGrid, VirtuosoGridHandle, GridComponents } from '../src'\nimport styled from '@emotion/styled'\n\nconst ItemContainer = styled.div`\n box-sizing: border-box;\n padding: 5px;\n width: 25%;\n background: #f5f5f5;\n display: flex;\n flex: none;\n align-content: stretch;\n /*\n @media (max-width: 1024px) {\n width: 33%;\n }\n\n @media (max-width: 768px) {\n width: 50%;\n }\n\n @media (max-width: 480px) {\n width: 100%;\n }\n */\n`\n\nconst ItemWrapper = styled.div`\n flex: 1;\n text-align: center;\n font-size: 80%;\n padding: 20px;\n box-shadow: 0 5px 6px -6px #777;\n background: white;\n }\n`\n\nconst ListContainer = styled.div`\n display: flex;\n flex-wrap: wrap;\n` as GridComponents['List']\n\nexport default function App() {\n const ref = React.createRef<VirtuosoGridHandle>()\n\n return (\n <>\n <VirtuosoGrid\n ref={ref}\n components={{\n Item: ItemContainer,\n List: ListContainer,\n ScrollSeekPlaceholder: () => (\n <ItemContainer>\n <ItemWrapper>Placeholder</ItemWrapper>\n </ItemContainer>\n ),\n }}\n totalCount={100}\n startReached={() => console.log('start reached')}\n endReached={() => console.log('end reached')}\n // rangeChanged={({ startIndex, endIndex }) => console.log({ startIndex, endIndex })}\n scrollSeekConfiguration={{\n enter: (velocity) => Math.abs(velocity) > 200,\n exit: (velocity) => Math.abs(velocity) < 30,\n change: (_, range) => console.log({ range }),\n }}\n itemContent={(index) => <ItemWrapper>Item {index}</ItemWrapper>}\n style={{ height: 300, width: 1200 }}\n />\n\n <button id=\"start-30\" onClick={() => ref.current!.scrollToIndex({ index: 30, align: 'start' })}>\n Start 30\n </button>\n <button id=\"center-50\" onClick={() => ref.current!.scrollToIndex({ index: 50, align: 'center', behavior: 'smooth' })}>\n Center 50\n </button>\n <button id=\"end-99\" onClick={() => ref.current!.scrollToIndex({ index: 99, align: 'end' })}>\n End 99\n </button>\n </>\n )\n}\n"]}
1
+ {"version":3,"sources":["grid.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":"grid.d5d77b6a.js","sourceRoot":"../e2e","sourcesContent":["import * as React from 'react'\nimport { VirtuosoGrid, VirtuosoGridHandle, GridComponents } from '../src'\nimport styled from '@emotion/styled'\n\nconst ItemContainer = styled.div`\n box-sizing: border-box;\n padding: 5px;\n width: 25%;\n background: #f5f5f5;\n display: flex;\n flex: none;\n align-content: stretch;\n /*\n @media (max-width: 1024px) {\n width: 33%;\n }\n\n @media (max-width: 768px) {\n width: 50%;\n }\n\n @media (max-width: 480px) {\n width: 100%;\n }\n */\n`\n\nconst ItemWrapper = styled.div`\n flex: 1;\n text-align: center;\n font-size: 80%;\n padding: 20px;\n box-shadow: 0 5px 6px -6px #777;\n background: white;\n }\n`\n\nconst ListContainer = styled.div`\n display: flex;\n flex-wrap: wrap;\n` as GridComponents['List']\n\nexport default function App() {\n const ref = React.createRef<VirtuosoGridHandle>()\n\n return (\n <>\n <VirtuosoGrid\n ref={ref}\n components={{\n Item: ItemContainer,\n List: ListContainer,\n ScrollSeekPlaceholder: () => (\n <ItemContainer>\n <ItemWrapper>Placeholder</ItemWrapper>\n </ItemContainer>\n ),\n }}\n totalCount={100}\n startReached={() => console.log('start reached')}\n endReached={() => console.log('end reached')}\n // rangeChanged={({ startIndex, endIndex }) => console.log({ startIndex, endIndex })}\n scrollSeekConfiguration={{\n enter: (velocity) => Math.abs(velocity) > 200,\n exit: (velocity) => Math.abs(velocity) < 30,\n change: (_, range) => console.log({ range }),\n }}\n itemContent={(index) => <ItemWrapper>Item {index}</ItemWrapper>}\n style={{ height: 300, width: 1200 }}\n />\n\n <button id=\"start-30\" onClick={() => ref.current!.scrollToIndex({ index: 30, align: 'start' })}>\n Start 30\n </button>\n <button id=\"center-50\" onClick={() => ref.current!.scrollToIndex({ index: 50, align: 'center', behavior: 'smooth' })}>\n Center 50\n </button>\n <button id=\"end-99\" onClick={() => ref.current!.scrollToIndex({ index: 99, align: 'end' })}>\n End 99\n </button>\n </>\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"]}
@@ -23,10 +23,10 @@ export declare const gridSystem: u.SystemSpec<[u.SystemSpec<[u.SystemSpec<never[
23
23
  viewportHeight: u.Stream<number>;
24
24
  headerHeight: u.StatefulStream<number>;
25
25
  footerHeight: u.StatefulStream<number>;
26
+ scrollHeight: u.Stream<number>;
26
27
  smoothScrollTargetReached: u.Stream<true>;
27
28
  scrollTo: u.Stream<ScrollToOptions>;
28
29
  scrollBy: u.Stream<ScrollToOptions>;
29
- scrollDirection: u.StatefulStream<import("./domIOSystem").ScrollDirection>;
30
30
  statefulScrollTop: u.StatefulStream<number>;
31
31
  deviation: u.StatefulStream<number>;
32
32
  scrollingInProgress: u.StatefulStream<boolean>;
@@ -35,10 +35,10 @@ export declare const gridSystem: u.SystemSpec<[u.SystemSpec<[u.SystemSpec<never[
35
35
  viewportHeight: u.Stream<number>;
36
36
  headerHeight: u.StatefulStream<number>;
37
37
  footerHeight: u.StatefulStream<number>;
38
+ scrollHeight: u.Stream<number>;
38
39
  smoothScrollTargetReached: u.Stream<true>;
39
40
  scrollTo: u.Stream<ScrollToOptions>;
40
41
  scrollBy: u.Stream<ScrollToOptions>;
41
- scrollDirection: u.StatefulStream<import("./domIOSystem").ScrollDirection>;
42
42
  statefulScrollTop: u.StatefulStream<number>;
43
43
  deviation: u.StatefulStream<number>;
44
44
  scrollingInProgress: u.StatefulStream<boolean>;
@@ -53,10 +53,10 @@ export declare const gridSystem: u.SystemSpec<[u.SystemSpec<[u.SystemSpec<never[
53
53
  viewportHeight: u.Stream<number>;
54
54
  headerHeight: u.StatefulStream<number>;
55
55
  footerHeight: u.StatefulStream<number>;
56
+ scrollHeight: u.Stream<number>;
56
57
  smoothScrollTargetReached: u.Stream<true>;
57
58
  scrollTo: u.Stream<ScrollToOptions>;
58
59
  scrollBy: u.Stream<ScrollToOptions>;
59
- scrollDirection: u.StatefulStream<import("./domIOSystem").ScrollDirection>;
60
60
  statefulScrollTop: u.StatefulStream<number>;
61
61
  deviation: u.StatefulStream<number>;
62
62
  scrollingInProgress: u.StatefulStream<boolean>;
@@ -65,22 +65,22 @@ export declare const gridSystem: u.SystemSpec<[u.SystemSpec<[u.SystemSpec<never[
65
65
  viewportHeight: u.Stream<number>;
66
66
  headerHeight: u.StatefulStream<number>;
67
67
  footerHeight: u.StatefulStream<number>;
68
+ scrollHeight: u.Stream<number>;
68
69
  smoothScrollTargetReached: u.Stream<true>;
69
70
  scrollTo: u.Stream<ScrollToOptions>;
70
71
  scrollBy: u.Stream<ScrollToOptions>;
71
- scrollDirection: u.StatefulStream<import("./domIOSystem").ScrollDirection>;
72
72
  statefulScrollTop: u.StatefulStream<number>;
73
73
  deviation: u.StatefulStream<number>;
74
74
  scrollingInProgress: u.StatefulStream<boolean>;
75
- }>], ([{ scrollTop, viewportHeight, headerHeight, footerHeight }]: [{
75
+ }>], ([{ scrollTop, viewportHeight, headerHeight, footerHeight, scrollHeight }]: [{
76
76
  scrollTop: u.Stream<number>;
77
77
  viewportHeight: u.Stream<number>;
78
78
  headerHeight: u.StatefulStream<number>;
79
79
  footerHeight: u.StatefulStream<number>;
80
+ scrollHeight: u.Stream<number>;
80
81
  smoothScrollTargetReached: u.Stream<true>;
81
82
  scrollTo: u.Stream<ScrollToOptions>;
82
83
  scrollBy: u.Stream<ScrollToOptions>;
83
- scrollDirection: u.StatefulStream<import("./domIOSystem").ScrollDirection>;
84
84
  statefulScrollTop: u.StatefulStream<number>;
85
85
  deviation: u.StatefulStream<number>;
86
86
  scrollingInProgress: u.StatefulStream<boolean>;
@@ -91,16 +91,16 @@ export declare const gridSystem: u.SystemSpec<[u.SystemSpec<[u.SystemSpec<never[
91
91
  atBottomState: u.Stream<import("./stateFlagsSystem").AtBottomState>;
92
92
  atTopStateChange: u.Stream<boolean>;
93
93
  atBottomStateChange: u.Stream<boolean>;
94
- listStateListener: u.Stream<import("./stateFlagsSystem").ListBottomInfo>;
94
+ scrollDirection: u.StatefulStream<import("./stateFlagsSystem").ScrollDirection>;
95
95
  }>, u.SystemSpec<[u.SystemSpec<never[], () => {
96
96
  scrollTop: u.Stream<number>;
97
97
  viewportHeight: u.Stream<number>;
98
98
  headerHeight: u.StatefulStream<number>;
99
99
  footerHeight: u.StatefulStream<number>;
100
+ scrollHeight: u.Stream<number>;
100
101
  smoothScrollTargetReached: u.Stream<true>;
101
102
  scrollTo: u.Stream<ScrollToOptions>;
102
103
  scrollBy: u.Stream<ScrollToOptions>;
103
- scrollDirection: u.StatefulStream<import("./domIOSystem").ScrollDirection>;
104
104
  statefulScrollTop: u.StatefulStream<number>;
105
105
  deviation: u.StatefulStream<number>;
106
106
  scrollingInProgress: u.StatefulStream<boolean>;
@@ -109,22 +109,22 @@ export declare const gridSystem: u.SystemSpec<[u.SystemSpec<[u.SystemSpec<never[
109
109
  viewportHeight: u.Stream<number>;
110
110
  headerHeight: u.StatefulStream<number>;
111
111
  footerHeight: u.StatefulStream<number>;
112
+ scrollHeight: u.Stream<number>;
112
113
  smoothScrollTargetReached: u.Stream<true>;
113
114
  scrollTo: u.Stream<ScrollToOptions>;
114
115
  scrollBy: u.Stream<ScrollToOptions>;
115
- scrollDirection: u.StatefulStream<import("./domIOSystem").ScrollDirection>;
116
116
  statefulScrollTop: u.StatefulStream<number>;
117
117
  deviation: u.StatefulStream<number>;
118
118
  scrollingInProgress: u.StatefulStream<boolean>;
119
- }>], ([{ scrollTop, viewportHeight, headerHeight, footerHeight }]: [{
119
+ }>], ([{ scrollTop, viewportHeight, headerHeight, footerHeight, scrollHeight }]: [{
120
120
  scrollTop: u.Stream<number>;
121
121
  viewportHeight: u.Stream<number>;
122
122
  headerHeight: u.StatefulStream<number>;
123
123
  footerHeight: u.StatefulStream<number>;
124
+ scrollHeight: u.Stream<number>;
124
125
  smoothScrollTargetReached: u.Stream<true>;
125
126
  scrollTo: u.Stream<ScrollToOptions>;
126
127
  scrollBy: u.Stream<ScrollToOptions>;
127
- scrollDirection: u.StatefulStream<import("./domIOSystem").ScrollDirection>;
128
128
  statefulScrollTop: u.StatefulStream<number>;
129
129
  deviation: u.StatefulStream<number>;
130
130
  scrollingInProgress: u.StatefulStream<boolean>;
@@ -135,16 +135,16 @@ export declare const gridSystem: u.SystemSpec<[u.SystemSpec<[u.SystemSpec<never[
135
135
  atBottomState: u.Stream<import("./stateFlagsSystem").AtBottomState>;
136
136
  atTopStateChange: u.Stream<boolean>;
137
137
  atBottomStateChange: u.Stream<boolean>;
138
- listStateListener: u.Stream<import("./stateFlagsSystem").ListBottomInfo>;
138
+ scrollDirection: u.StatefulStream<import("./stateFlagsSystem").ScrollDirection>;
139
139
  }>], ([{ scrollTop }, { isScrolling }]: [{
140
140
  scrollTop: u.Stream<number>;
141
141
  viewportHeight: u.Stream<number>;
142
142
  headerHeight: u.StatefulStream<number>;
143
143
  footerHeight: u.StatefulStream<number>;
144
+ scrollHeight: u.Stream<number>;
144
145
  smoothScrollTargetReached: u.Stream<true>;
145
146
  scrollTo: u.Stream<ScrollToOptions>;
146
147
  scrollBy: u.Stream<ScrollToOptions>;
147
- scrollDirection: u.StatefulStream<import("./domIOSystem").ScrollDirection>;
148
148
  statefulScrollTop: u.StatefulStream<number>;
149
149
  deviation: u.StatefulStream<number>;
150
150
  scrollingInProgress: u.StatefulStream<boolean>;
@@ -155,7 +155,7 @@ export declare const gridSystem: u.SystemSpec<[u.SystemSpec<[u.SystemSpec<never[
155
155
  atBottomState: u.Stream<import("./stateFlagsSystem").AtBottomState>;
156
156
  atTopStateChange: u.Stream<boolean>;
157
157
  atBottomStateChange: u.Stream<boolean>;
158
- listStateListener: u.Stream<import("./stateFlagsSystem").ListBottomInfo>;
158
+ scrollDirection: u.StatefulStream<import("./stateFlagsSystem").ScrollDirection>;
159
159
  }]) => {
160
160
  isSeeking: u.StatefulStream<boolean>;
161
161
  scrollSeekConfiguration: u.StatefulStream<false | import("./interfaces").ScrollSeekConfiguration | undefined>;
@@ -175,10 +175,10 @@ export declare const gridSystem: u.SystemSpec<[u.SystemSpec<[u.SystemSpec<never[
175
175
  viewportHeight: u.Stream<number>;
176
176
  headerHeight: u.StatefulStream<number>;
177
177
  footerHeight: u.StatefulStream<number>;
178
+ scrollHeight: u.Stream<number>;
178
179
  smoothScrollTargetReached: u.Stream<true>;
179
180
  scrollTo: u.Stream<ScrollToOptions>;
180
181
  scrollBy: u.Stream<ScrollToOptions>;
181
- scrollDirection: u.StatefulStream<import("./domIOSystem").ScrollDirection>;
182
182
  statefulScrollTop: u.StatefulStream<number>;
183
183
  deviation: u.StatefulStream<number>;
184
184
  scrollingInProgress: u.StatefulStream<boolean>;
@@ -187,10 +187,10 @@ export declare const gridSystem: u.SystemSpec<[u.SystemSpec<[u.SystemSpec<never[
187
187
  viewportHeight: u.Stream<number>;
188
188
  headerHeight: u.StatefulStream<number>;
189
189
  footerHeight: u.StatefulStream<number>;
190
+ scrollHeight: u.Stream<number>;
190
191
  smoothScrollTargetReached: u.Stream<true>;
191
192
  scrollTo: u.Stream<ScrollToOptions>;
192
193
  scrollBy: u.Stream<ScrollToOptions>;
193
- scrollDirection: u.StatefulStream<import("./domIOSystem").ScrollDirection>;
194
194
  statefulScrollTop: u.StatefulStream<number>;
195
195
  deviation: u.StatefulStream<number>;
196
196
  scrollingInProgress: u.StatefulStream<boolean>;
@@ -210,10 +210,10 @@ export declare const gridSystem: u.SystemSpec<[u.SystemSpec<[u.SystemSpec<never[
210
210
  viewportHeight: u.Stream<number>;
211
211
  headerHeight: u.StatefulStream<number>;
212
212
  footerHeight: u.StatefulStream<number>;
213
+ scrollHeight: u.Stream<number>;
213
214
  smoothScrollTargetReached: u.Stream<true>;
214
215
  scrollTo: u.Stream<ScrollToOptions>;
215
216
  scrollBy: u.Stream<ScrollToOptions>;
216
- scrollDirection: u.StatefulStream<import("./domIOSystem").ScrollDirection>;
217
217
  statefulScrollTop: u.StatefulStream<number>;
218
218
  deviation: u.StatefulStream<number>;
219
219
  scrollingInProgress: u.StatefulStream<boolean>;
@@ -224,7 +224,7 @@ export declare const gridSystem: u.SystemSpec<[u.SystemSpec<[u.SystemSpec<never[
224
224
  atBottomState: u.Stream<import("./stateFlagsSystem").AtBottomState>;
225
225
  atTopStateChange: u.Stream<boolean>;
226
226
  atBottomStateChange: u.Stream<boolean>;
227
- listStateListener: u.Stream<import("./stateFlagsSystem").ListBottomInfo>;
227
+ scrollDirection: u.StatefulStream<import("./stateFlagsSystem").ScrollDirection>;
228
228
  }, {
229
229
  isSeeking: u.StatefulStream<boolean>;
230
230
  scrollSeekConfiguration: u.StatefulStream<false | import("./interfaces").ScrollSeekConfiguration | undefined>;
@@ -249,7 +249,7 @@ export declare const gridSystem: u.SystemSpec<[u.SystemSpec<[u.SystemSpec<never[
249
249
  atBottomState: u.Stream<import("./stateFlagsSystem").AtBottomState>;
250
250
  atTopStateChange: u.Stream<boolean>;
251
251
  atBottomStateChange: u.Stream<boolean>;
252
- listStateListener: u.Stream<import("./stateFlagsSystem").ListBottomInfo>;
252
+ scrollDirection: u.StatefulStream<import("./stateFlagsSystem").ScrollDirection>;
253
253
  gridState: u.StatefulStream<GridState>;
254
254
  totalListHeight: u.StatefulStream<number>;
255
255
  isSeeking: u.StatefulStream<boolean>;
@@ -260,6 +260,7 @@ export declare const gridSystem: u.SystemSpec<[u.SystemSpec<[u.SystemSpec<never[
260
260
  viewportDimensions: u.StatefulStream<ElementDimensions>;
261
261
  itemDimensions: u.StatefulStream<ElementDimensions>;
262
262
  scrollTop: u.Stream<number>;
263
+ scrollHeight: u.Stream<number>;
263
264
  overscan: u.StatefulStream<import("./sizeRangeSystem").Overscan>;
264
265
  scrollBy: u.Stream<ScrollToOptions>;
265
266
  scrollTo: u.Stream<ScrollToOptions>;
@@ -298,4 +298,209 @@ function App() {
298
298
  }
299
299
  });
300
300
  }
301
- },{"react":"../node_modules/react/index.js","../src":"../src/index.tsx","faker":"../node_modules/faker/index.js","lodash":"../node_modules/lodash/lodash.js"}]},{},[], null)
301
+ },{"react":"../node_modules/react/index.js","../src":"../src/index.tsx","faker":"../node_modules/faker/index.js","lodash":"../node_modules/lodash/lodash.js"}],"../node_modules/parcel-bundler/src/builtins/hmr-runtime.js":[function(require,module,exports) {
302
+ var global = arguments[3];
303
+ var OVERLAY_ID = '__parcel__error__overlay__';
304
+ var OldModule = module.bundle.Module;
305
+
306
+ function Module(moduleName) {
307
+ OldModule.call(this, moduleName);
308
+ this.hot = {
309
+ data: module.bundle.hotData,
310
+ _acceptCallbacks: [],
311
+ _disposeCallbacks: [],
312
+ accept: function (fn) {
313
+ this._acceptCallbacks.push(fn || function () {});
314
+ },
315
+ dispose: function (fn) {
316
+ this._disposeCallbacks.push(fn);
317
+ }
318
+ };
319
+ module.bundle.hotData = null;
320
+ }
321
+
322
+ module.bundle.Module = Module;
323
+ var checkedAssets, assetsToAccept;
324
+ var parent = module.bundle.parent;
325
+
326
+ if ((!parent || !parent.isParcelRequire) && typeof WebSocket !== 'undefined') {
327
+ var hostname = "" || location.hostname;
328
+ var protocol = location.protocol === 'https:' ? 'wss' : 'ws';
329
+ var ws = new WebSocket(protocol + '://' + hostname + ':' + "53802" + '/');
330
+
331
+ ws.onmessage = function (event) {
332
+ checkedAssets = {};
333
+ assetsToAccept = [];
334
+ var data = JSON.parse(event.data);
335
+
336
+ if (data.type === 'update') {
337
+ var handled = false;
338
+ data.assets.forEach(function (asset) {
339
+ if (!asset.isNew) {
340
+ var didAccept = hmrAcceptCheck(global.parcelRequire, asset.id);
341
+
342
+ if (didAccept) {
343
+ handled = true;
344
+ }
345
+ }
346
+ }); // Enable HMR for CSS by default.
347
+
348
+ handled = handled || data.assets.every(function (asset) {
349
+ return asset.type === 'css' && asset.generated.js;
350
+ });
351
+
352
+ if (handled) {
353
+ console.clear();
354
+ data.assets.forEach(function (asset) {
355
+ hmrApply(global.parcelRequire, asset);
356
+ });
357
+ assetsToAccept.forEach(function (v) {
358
+ hmrAcceptRun(v[0], v[1]);
359
+ });
360
+ } else if (location.reload) {
361
+ // `location` global exists in a web worker context but lacks `.reload()` function.
362
+ location.reload();
363
+ }
364
+ }
365
+
366
+ if (data.type === 'reload') {
367
+ ws.close();
368
+
369
+ ws.onclose = function () {
370
+ location.reload();
371
+ };
372
+ }
373
+
374
+ if (data.type === 'error-resolved') {
375
+ console.log('[parcel] ✨ Error resolved');
376
+ removeErrorOverlay();
377
+ }
378
+
379
+ if (data.type === 'error') {
380
+ console.error('[parcel] 🚨 ' + data.error.message + '\n' + data.error.stack);
381
+ removeErrorOverlay();
382
+ var overlay = createErrorOverlay(data);
383
+ document.body.appendChild(overlay);
384
+ }
385
+ };
386
+ }
387
+
388
+ function removeErrorOverlay() {
389
+ var overlay = document.getElementById(OVERLAY_ID);
390
+
391
+ if (overlay) {
392
+ overlay.remove();
393
+ }
394
+ }
395
+
396
+ function createErrorOverlay(data) {
397
+ var overlay = document.createElement('div');
398
+ overlay.id = OVERLAY_ID; // html encode message and stack trace
399
+
400
+ var message = document.createElement('div');
401
+ var stackTrace = document.createElement('pre');
402
+ message.innerText = data.error.message;
403
+ stackTrace.innerText = data.error.stack;
404
+ 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>';
405
+ return overlay;
406
+ }
407
+
408
+ function getParents(bundle, id) {
409
+ var modules = bundle.modules;
410
+
411
+ if (!modules) {
412
+ return [];
413
+ }
414
+
415
+ var parents = [];
416
+ var k, d, dep;
417
+
418
+ for (k in modules) {
419
+ for (d in modules[k][1]) {
420
+ dep = modules[k][1][d];
421
+
422
+ if (dep === id || Array.isArray(dep) && dep[dep.length - 1] === id) {
423
+ parents.push(k);
424
+ }
425
+ }
426
+ }
427
+
428
+ if (bundle.parent) {
429
+ parents = parents.concat(getParents(bundle.parent, id));
430
+ }
431
+
432
+ return parents;
433
+ }
434
+
435
+ function hmrApply(bundle, asset) {
436
+ var modules = bundle.modules;
437
+
438
+ if (!modules) {
439
+ return;
440
+ }
441
+
442
+ if (modules[asset.id] || !bundle.parent) {
443
+ var fn = new Function('require', 'module', 'exports', asset.generated.js);
444
+ asset.isNew = !modules[asset.id];
445
+ modules[asset.id] = [fn, asset.deps];
446
+ } else if (bundle.parent) {
447
+ hmrApply(bundle.parent, asset);
448
+ }
449
+ }
450
+
451
+ function hmrAcceptCheck(bundle, id) {
452
+ var modules = bundle.modules;
453
+
454
+ if (!modules) {
455
+ return;
456
+ }
457
+
458
+ if (!modules[id] && bundle.parent) {
459
+ return hmrAcceptCheck(bundle.parent, id);
460
+ }
461
+
462
+ if (checkedAssets[id]) {
463
+ return;
464
+ }
465
+
466
+ checkedAssets[id] = true;
467
+ var cached = bundle.cache[id];
468
+ assetsToAccept.push([bundle, id]);
469
+
470
+ if (cached && cached.hot && cached.hot._acceptCallbacks.length) {
471
+ return true;
472
+ }
473
+
474
+ return getParents(global.parcelRequire, id).some(function (id) {
475
+ return hmrAcceptCheck(global.parcelRequire, id);
476
+ });
477
+ }
478
+
479
+ function hmrAcceptRun(bundle, id) {
480
+ var cached = bundle.cache[id];
481
+ bundle.hotData = {};
482
+
483
+ if (cached) {
484
+ cached.hot.data = bundle.hotData;
485
+ }
486
+
487
+ if (cached && cached.hot && cached.hot._disposeCallbacks.length) {
488
+ cached.hot._disposeCallbacks.forEach(function (cb) {
489
+ cb(bundle.hotData);
490
+ });
491
+ }
492
+
493
+ delete bundle.cache[id];
494
+ bundle(id);
495
+ cached = bundle.cache[id];
496
+
497
+ if (cached && cached.hot && cached.hot._acceptCallbacks.length) {
498
+ cached.hot._acceptCallbacks.forEach(function (cb) {
499
+ cb();
500
+ });
501
+
502
+ return true;
503
+ }
504
+ }
505
+ },{}]},{},["../node_modules/parcel-bundler/src/builtins/hmr-runtime.js"], null)
506
+ //# sourceMappingURL=/grouped-endless-scrolling.24985a0f.js.map