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
@@ -155,4 +155,209 @@ function App() {
155
155
  }
156
156
  });
157
157
  }
158
- },{"react":"../node_modules/react/index.js","../src/":"../src/index.tsx"}]},{},[], null)
158
+ },{"react":"../node_modules/react/index.js","../src/":"../src/index.tsx"}],"../node_modules/parcel-bundler/src/builtins/hmr-runtime.js":[function(require,module,exports) {
159
+ var global = arguments[3];
160
+ var OVERLAY_ID = '__parcel__error__overlay__';
161
+ var OldModule = module.bundle.Module;
162
+
163
+ function Module(moduleName) {
164
+ OldModule.call(this, moduleName);
165
+ this.hot = {
166
+ data: module.bundle.hotData,
167
+ _acceptCallbacks: [],
168
+ _disposeCallbacks: [],
169
+ accept: function (fn) {
170
+ this._acceptCallbacks.push(fn || function () {});
171
+ },
172
+ dispose: function (fn) {
173
+ this._disposeCallbacks.push(fn);
174
+ }
175
+ };
176
+ module.bundle.hotData = null;
177
+ }
178
+
179
+ module.bundle.Module = Module;
180
+ var checkedAssets, assetsToAccept;
181
+ var parent = module.bundle.parent;
182
+
183
+ if ((!parent || !parent.isParcelRequire) && typeof WebSocket !== 'undefined') {
184
+ var hostname = "" || location.hostname;
185
+ var protocol = location.protocol === 'https:' ? 'wss' : 'ws';
186
+ var ws = new WebSocket(protocol + '://' + hostname + ':' + "53802" + '/');
187
+
188
+ ws.onmessage = function (event) {
189
+ checkedAssets = {};
190
+ assetsToAccept = [];
191
+ var data = JSON.parse(event.data);
192
+
193
+ if (data.type === 'update') {
194
+ var handled = false;
195
+ data.assets.forEach(function (asset) {
196
+ if (!asset.isNew) {
197
+ var didAccept = hmrAcceptCheck(global.parcelRequire, asset.id);
198
+
199
+ if (didAccept) {
200
+ handled = true;
201
+ }
202
+ }
203
+ }); // Enable HMR for CSS by default.
204
+
205
+ handled = handled || data.assets.every(function (asset) {
206
+ return asset.type === 'css' && asset.generated.js;
207
+ });
208
+
209
+ if (handled) {
210
+ console.clear();
211
+ data.assets.forEach(function (asset) {
212
+ hmrApply(global.parcelRequire, asset);
213
+ });
214
+ assetsToAccept.forEach(function (v) {
215
+ hmrAcceptRun(v[0], v[1]);
216
+ });
217
+ } else if (location.reload) {
218
+ // `location` global exists in a web worker context but lacks `.reload()` function.
219
+ location.reload();
220
+ }
221
+ }
222
+
223
+ if (data.type === 'reload') {
224
+ ws.close();
225
+
226
+ ws.onclose = function () {
227
+ location.reload();
228
+ };
229
+ }
230
+
231
+ if (data.type === 'error-resolved') {
232
+ console.log('[parcel] ✨ Error resolved');
233
+ removeErrorOverlay();
234
+ }
235
+
236
+ if (data.type === 'error') {
237
+ console.error('[parcel] 🚨 ' + data.error.message + '\n' + data.error.stack);
238
+ removeErrorOverlay();
239
+ var overlay = createErrorOverlay(data);
240
+ document.body.appendChild(overlay);
241
+ }
242
+ };
243
+ }
244
+
245
+ function removeErrorOverlay() {
246
+ var overlay = document.getElementById(OVERLAY_ID);
247
+
248
+ if (overlay) {
249
+ overlay.remove();
250
+ }
251
+ }
252
+
253
+ function createErrorOverlay(data) {
254
+ var overlay = document.createElement('div');
255
+ overlay.id = OVERLAY_ID; // html encode message and stack trace
256
+
257
+ var message = document.createElement('div');
258
+ var stackTrace = document.createElement('pre');
259
+ message.innerText = data.error.message;
260
+ stackTrace.innerText = data.error.stack;
261
+ 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>';
262
+ return overlay;
263
+ }
264
+
265
+ function getParents(bundle, id) {
266
+ var modules = bundle.modules;
267
+
268
+ if (!modules) {
269
+ return [];
270
+ }
271
+
272
+ var parents = [];
273
+ var k, d, dep;
274
+
275
+ for (k in modules) {
276
+ for (d in modules[k][1]) {
277
+ dep = modules[k][1][d];
278
+
279
+ if (dep === id || Array.isArray(dep) && dep[dep.length - 1] === id) {
280
+ parents.push(k);
281
+ }
282
+ }
283
+ }
284
+
285
+ if (bundle.parent) {
286
+ parents = parents.concat(getParents(bundle.parent, id));
287
+ }
288
+
289
+ return parents;
290
+ }
291
+
292
+ function hmrApply(bundle, asset) {
293
+ var modules = bundle.modules;
294
+
295
+ if (!modules) {
296
+ return;
297
+ }
298
+
299
+ if (modules[asset.id] || !bundle.parent) {
300
+ var fn = new Function('require', 'module', 'exports', asset.generated.js);
301
+ asset.isNew = !modules[asset.id];
302
+ modules[asset.id] = [fn, asset.deps];
303
+ } else if (bundle.parent) {
304
+ hmrApply(bundle.parent, asset);
305
+ }
306
+ }
307
+
308
+ function hmrAcceptCheck(bundle, id) {
309
+ var modules = bundle.modules;
310
+
311
+ if (!modules) {
312
+ return;
313
+ }
314
+
315
+ if (!modules[id] && bundle.parent) {
316
+ return hmrAcceptCheck(bundle.parent, id);
317
+ }
318
+
319
+ if (checkedAssets[id]) {
320
+ return;
321
+ }
322
+
323
+ checkedAssets[id] = true;
324
+ var cached = bundle.cache[id];
325
+ assetsToAccept.push([bundle, id]);
326
+
327
+ if (cached && cached.hot && cached.hot._acceptCallbacks.length) {
328
+ return true;
329
+ }
330
+
331
+ return getParents(global.parcelRequire, id).some(function (id) {
332
+ return hmrAcceptCheck(global.parcelRequire, id);
333
+ });
334
+ }
335
+
336
+ function hmrAcceptRun(bundle, id) {
337
+ var cached = bundle.cache[id];
338
+ bundle.hotData = {};
339
+
340
+ if (cached) {
341
+ cached.hot.data = bundle.hotData;
342
+ }
343
+
344
+ if (cached && cached.hot && cached.hot._disposeCallbacks.length) {
345
+ cached.hot._disposeCallbacks.forEach(function (cb) {
346
+ cb(bundle.hotData);
347
+ });
348
+ }
349
+
350
+ delete bundle.cache[id];
351
+ bundle(id);
352
+ cached = bundle.cache[id];
353
+
354
+ if (cached && cached.hot && cached.hot._acceptCallbacks.length) {
355
+ cached.hot._acceptCallbacks.forEach(function (cb) {
356
+ cb();
357
+ });
358
+
359
+ return true;
360
+ }
361
+ }
362
+ },{}]},{},["../node_modules/parcel-bundler/src/builtins/hmr-runtime.js"], null)
363
+ //# sourceMappingURL=/tall-item-reverse-scrolling.58bcd140.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["tall-item-reverse-scrolling.tsx"],"names":[],"mappings":";;;;;;;AAAA;;AACA;;;;;;AAEc,SAAU,GAAV,GAAa;AACzB,SACE,KAAA,CAAA,aAAA,CAAC,aAAD,EAAS;AACP,IAAA,UAAU,EAAE,GADL;AAEP,IAAA,WAAW,EAAE,qBAAC,KAAD;AAAA,aACX,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,QAAA,KAAK,EAAE;AAAE,UAAA,MAAM,EAAE;AAAV;AAAZ,OAAA,SAAA,EACQ,KADR,EAEE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,IAAA,EACG,KAAK,CAAC,IAAN,CAAW;AAAE,QAAA,MAAM,EAAE,KAAK,GAAG,CAAR,GAAY,CAAZ,GAAgB;AAA1B,OAAX,EAA2C,UAAC,CAAD,EAAI,CAAJ;AAAA,eAC1C,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,UAAA,GAAG,EAAE;AAAV,SAAA,SAAA,EAAmB,CAAnB,CAD0C;AAAA,OAA3C,CADH,CAFF,CADW;AAAA,KAFN;AAYP,IAAA,uBAAuB,EAAE,EAZlB;AAaP,IAAA,KAAK,EAAE;AAAE,MAAA,MAAM,EAAE;AAAV;AAbA,GAAT,CADF;AAiBD","file":"tall-item-reverse-scrolling.58bcd140.js","sourceRoot":"../e2e","sourcesContent":["import * as React from 'react'\nimport { Virtuoso } from '../src/'\n\nexport default function App() {\n return (\n <Virtuoso\n totalCount={100}\n itemContent={(index) => (\n <div style={{ border: '1px solid black' }}>\n Item {index}\n <div>\n {Array.from({ length: index % 2 ? 3 : 20 }, (_, i) => (\n <div key={i}>Line {i}</div>\n ))}\n </div>\n </div>\n )}\n initialTopMostItemIndex={99}\n style={{ height: 300 }}\n />\n )\n}\n"]}
1
+ {"version":3,"sources":["tall-item-reverse-scrolling.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":"tall-item-reverse-scrolling.58bcd140.js","sourceRoot":"../e2e","sourcesContent":["import * as React from 'react'\nimport { Virtuoso } from '../src/'\n\nexport default function App() {\n return (\n <Virtuoso\n totalCount={100}\n itemContent={(index) => (\n <div style={{ border: '1px solid black' }}>\n Item {index}\n <div>\n {Array.from({ length: index % 2 ? 3 : 20 }, (_, i) => (\n <div key={i}>Line {i}</div>\n ))}\n </div>\n </div>\n )}\n initialTopMostItemIndex={99}\n style={{ height: 300 }}\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"]}
@@ -220,4 +220,209 @@ function App() {
220
220
  }
221
221
  }));
222
222
  }
223
- },{"react":"../node_modules/react/index.js","../src":"../src/index.tsx"}]},{},[], null)
223
+ },{"react":"../node_modules/react/index.js","../src":"../src/index.tsx"}],"../node_modules/parcel-bundler/src/builtins/hmr-runtime.js":[function(require,module,exports) {
224
+ var global = arguments[3];
225
+ var OVERLAY_ID = '__parcel__error__overlay__';
226
+ var OldModule = module.bundle.Module;
227
+
228
+ function Module(moduleName) {
229
+ OldModule.call(this, moduleName);
230
+ this.hot = {
231
+ data: module.bundle.hotData,
232
+ _acceptCallbacks: [],
233
+ _disposeCallbacks: [],
234
+ accept: function (fn) {
235
+ this._acceptCallbacks.push(fn || function () {});
236
+ },
237
+ dispose: function (fn) {
238
+ this._disposeCallbacks.push(fn);
239
+ }
240
+ };
241
+ module.bundle.hotData = null;
242
+ }
243
+
244
+ module.bundle.Module = Module;
245
+ var checkedAssets, assetsToAccept;
246
+ var parent = module.bundle.parent;
247
+
248
+ if ((!parent || !parent.isParcelRequire) && typeof WebSocket !== 'undefined') {
249
+ var hostname = "" || location.hostname;
250
+ var protocol = location.protocol === 'https:' ? 'wss' : 'ws';
251
+ var ws = new WebSocket(protocol + '://' + hostname + ':' + "53802" + '/');
252
+
253
+ ws.onmessage = function (event) {
254
+ checkedAssets = {};
255
+ assetsToAccept = [];
256
+ var data = JSON.parse(event.data);
257
+
258
+ if (data.type === 'update') {
259
+ var handled = false;
260
+ data.assets.forEach(function (asset) {
261
+ if (!asset.isNew) {
262
+ var didAccept = hmrAcceptCheck(global.parcelRequire, asset.id);
263
+
264
+ if (didAccept) {
265
+ handled = true;
266
+ }
267
+ }
268
+ }); // Enable HMR for CSS by default.
269
+
270
+ handled = handled || data.assets.every(function (asset) {
271
+ return asset.type === 'css' && asset.generated.js;
272
+ });
273
+
274
+ if (handled) {
275
+ console.clear();
276
+ data.assets.forEach(function (asset) {
277
+ hmrApply(global.parcelRequire, asset);
278
+ });
279
+ assetsToAccept.forEach(function (v) {
280
+ hmrAcceptRun(v[0], v[1]);
281
+ });
282
+ } else if (location.reload) {
283
+ // `location` global exists in a web worker context but lacks `.reload()` function.
284
+ location.reload();
285
+ }
286
+ }
287
+
288
+ if (data.type === 'reload') {
289
+ ws.close();
290
+
291
+ ws.onclose = function () {
292
+ location.reload();
293
+ };
294
+ }
295
+
296
+ if (data.type === 'error-resolved') {
297
+ console.log('[parcel] ✨ Error resolved');
298
+ removeErrorOverlay();
299
+ }
300
+
301
+ if (data.type === 'error') {
302
+ console.error('[parcel] 🚨 ' + data.error.message + '\n' + data.error.stack);
303
+ removeErrorOverlay();
304
+ var overlay = createErrorOverlay(data);
305
+ document.body.appendChild(overlay);
306
+ }
307
+ };
308
+ }
309
+
310
+ function removeErrorOverlay() {
311
+ var overlay = document.getElementById(OVERLAY_ID);
312
+
313
+ if (overlay) {
314
+ overlay.remove();
315
+ }
316
+ }
317
+
318
+ function createErrorOverlay(data) {
319
+ var overlay = document.createElement('div');
320
+ overlay.id = OVERLAY_ID; // html encode message and stack trace
321
+
322
+ var message = document.createElement('div');
323
+ var stackTrace = document.createElement('pre');
324
+ message.innerText = data.error.message;
325
+ stackTrace.innerText = data.error.stack;
326
+ 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>';
327
+ return overlay;
328
+ }
329
+
330
+ function getParents(bundle, id) {
331
+ var modules = bundle.modules;
332
+
333
+ if (!modules) {
334
+ return [];
335
+ }
336
+
337
+ var parents = [];
338
+ var k, d, dep;
339
+
340
+ for (k in modules) {
341
+ for (d in modules[k][1]) {
342
+ dep = modules[k][1][d];
343
+
344
+ if (dep === id || Array.isArray(dep) && dep[dep.length - 1] === id) {
345
+ parents.push(k);
346
+ }
347
+ }
348
+ }
349
+
350
+ if (bundle.parent) {
351
+ parents = parents.concat(getParents(bundle.parent, id));
352
+ }
353
+
354
+ return parents;
355
+ }
356
+
357
+ function hmrApply(bundle, asset) {
358
+ var modules = bundle.modules;
359
+
360
+ if (!modules) {
361
+ return;
362
+ }
363
+
364
+ if (modules[asset.id] || !bundle.parent) {
365
+ var fn = new Function('require', 'module', 'exports', asset.generated.js);
366
+ asset.isNew = !modules[asset.id];
367
+ modules[asset.id] = [fn, asset.deps];
368
+ } else if (bundle.parent) {
369
+ hmrApply(bundle.parent, asset);
370
+ }
371
+ }
372
+
373
+ function hmrAcceptCheck(bundle, id) {
374
+ var modules = bundle.modules;
375
+
376
+ if (!modules) {
377
+ return;
378
+ }
379
+
380
+ if (!modules[id] && bundle.parent) {
381
+ return hmrAcceptCheck(bundle.parent, id);
382
+ }
383
+
384
+ if (checkedAssets[id]) {
385
+ return;
386
+ }
387
+
388
+ checkedAssets[id] = true;
389
+ var cached = bundle.cache[id];
390
+ assetsToAccept.push([bundle, id]);
391
+
392
+ if (cached && cached.hot && cached.hot._acceptCallbacks.length) {
393
+ return true;
394
+ }
395
+
396
+ return getParents(global.parcelRequire, id).some(function (id) {
397
+ return hmrAcceptCheck(global.parcelRequire, id);
398
+ });
399
+ }
400
+
401
+ function hmrAcceptRun(bundle, id) {
402
+ var cached = bundle.cache[id];
403
+ bundle.hotData = {};
404
+
405
+ if (cached) {
406
+ cached.hot.data = bundle.hotData;
407
+ }
408
+
409
+ if (cached && cached.hot && cached.hot._disposeCallbacks.length) {
410
+ cached.hot._disposeCallbacks.forEach(function (cb) {
411
+ cb(bundle.hotData);
412
+ });
413
+ }
414
+
415
+ delete bundle.cache[id];
416
+ bundle(id);
417
+ cached = bundle.cache[id];
418
+
419
+ if (cached && cached.hot && cached.hot._acceptCallbacks.length) {
420
+ cached.hot._acceptCallbacks.forEach(function (cb) {
421
+ cb();
422
+ });
423
+
424
+ return true;
425
+ }
426
+ }
427
+ },{}]},{},["../node_modules/parcel-bundler/src/builtins/hmr-runtime.js"], null)
428
+ //# sourceMappingURL=/test-case-446.dce9595c.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["test-case-446.tsx"],"names":[],"mappings":";;;;;;;;AAAA;;AAEA;;;;;;;;;;;;;;;;;;AAEA,IAAM,WAAW,GAAG,SAAd,WAAc,CAAC,KAAD,EAAgB,IAAhB;AAAA,SAClB,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,KAAK,EAAE;AAAE,MAAA,MAAM,EAAE,KAAK,GAAG,CAAR,GAAY,IAAZ,GAAmB,IAA7B;AAAmC,MAAA,UAAU,EAAE;AAA/C;AAAZ,GAAA,EAAuE,IAAI,CAAC,OAA5E,CADkB;AAAA,CAApB,EAGA;;;AAEA,IAAM,KAAK,GAAmC,EAA9C;;AACA,SAAS,IAAT,CAAc,KAAd,EAA2B;AACzB,SAAO;AACL,IAAA,KAAK,EAAE,KAAK,GAAG,CADV;AAEL,IAAA,OAAO,iBAAU,KAAV;AAFF,GAAP;AAID;;AAEM,IAAM,OAAO,GAAG,SAAV,OAAU,CAAC,KAAD,EAAkB;AACvC,MAAI,CAAC,KAAK,CAAC,KAAD,CAAV,EAAmB;AACjB,IAAA,KAAK,CAAC,KAAD,CAAL,GAAe,IAAI,CAAC,KAAD,CAAnB;AACD;;AAED,SAAO,KAAK,CAAC,KAAD,CAAZ;AACD,CANM;;;;AAQP,IAAM,aAAa,GAAG,SAAhB,aAAgB,CAAC,MAAD,EAAmC;AAAA,MAAlB,UAAkB,uEAAL,CAAK;AACvD,SAAO,KAAK,CAAC,IAAN,CAAW;AAAE,IAAA,MAAM,EAAN;AAAF,GAAX,EAAuB,GAAvB,CAA2B,UAAC,CAAD,EAAI,CAAJ;AAAA,WAAU,OAAO,CAAC,CAAC,GAAG,UAAL,CAAjB;AAAA,GAA3B,CAAP;AACD,CAFD;;AAIA,IAAM,WAAW,GAAG,KAApB;AACA,IAAM,kBAAkB,GAAG,EAA3B;;AAEc,SAAU,GAAV,GAAa;AAAA,kBACuB,oBAAS,EAAT,CADvB;AAAA;AAAA,MAClB,gBADkB;AAAA,MACA,mBADA;;AAAA,mBAET,oBAAS;AAAA,WAAM,aAAa,CAAC,kBAAD,EAAqB,WAArB,CAAnB;AAAA,GAAT,CAFS;AAAA;AAAA,MAElB,KAFkB;;AAIzB,SACE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,IAAA,EACE,KAAA,CAAA,aAAA,CAAA,QAAA,EAAA;AAAQ,IAAA,OAAO,EAAE;AAAA,aAAM,mBAAmB,CAAC;AAAA,eAAM,CAAN;AAAA,OAAD,CAAzB;AAAA;AAAjB,GAAA,EAAmD,mBAAnD,CADF,EAEE,KAAA,CAAA,aAAA,CAAA,QAAA,EAAA;AAAQ,IAAA,OAAO,EAAE;AAAA,aAAM,mBAAmB,CAAC;AAAA,eAAM,CAAN;AAAA,OAAD,CAAzB;AAAA;AAAjB,GAAA,EAAmD,mBAAnD,CAFF,EAGE,KAAA,CAAA,aAAA,CAAC,aAAD,EAAS;AAAC,IAAA,IAAI,EAAE,KAAP;AAAc,IAAA,WAAW,EAAE,WAA3B;AAAwC,IAAA,uBAAuB,EAAE,gBAAjE;AAAmF,IAAA,KAAK,EAAE;AAAE,MAAA,MAAM,EAAE;AAAV;AAA1F,GAAT,CAHF,CADF;AAOD","file":"test-case-446.dce9595c.js","sourceRoot":"../e2e","sourcesContent":["import * as React from 'react'\nimport { useState } from 'react'\nimport { Virtuoso } from '../src'\n\nconst itemContent = (index: number, note: { content: string }) => (\n <div style={{ height: index % 2 ? 70.3 : 30.6, background: 'white' }}>{note.content}</div>\n)\n// globalThis['VIRTUOSO_LOG_LEVEL'] = 0\n\nconst notes: Array<ReturnType<typeof note>> = []\nfunction note(index: number) {\n return {\n index: index + 1,\n content: `Note ${index}`,\n }\n}\n\nexport const getNote = (index: number) => {\n if (!notes[index]) {\n notes[index] = note(index)\n }\n\n return notes[index]\n}\n\nconst generateNotes = (length: number, startIndex = 0) => {\n return Array.from({ length }).map((_, i) => getNote(i + startIndex))\n}\n\nconst START_INDEX = 10000\nconst INITIAL_ITEM_COUNT = 20\n\nexport default function App() {\n const [topMostItemIndex, setTopMostItemIndex] = useState(10)\n const [notes] = useState(() => generateNotes(INITIAL_ITEM_COUNT, START_INDEX))\n\n return (\n <div>\n <button onClick={() => setTopMostItemIndex(() => 3)}>Topmost index = 3</button>\n <button onClick={() => setTopMostItemIndex(() => 7)}>Topmost index = 7</button>\n <Virtuoso data={notes} itemContent={itemContent} initialTopMostItemIndex={topMostItemIndex} style={{ height: 300 }} />\n </div>\n )\n}\n"]}
1
+ {"version":3,"sources":["test-case-446.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":"test-case-446.dce9595c.js","sourceRoot":"../e2e","sourcesContent":["import * as React from 'react'\nimport { useState } from 'react'\nimport { Virtuoso } from '../src'\n\nconst itemContent = (index: number, note: { content: string }) => (\n <div style={{ height: index % 2 ? 70.3 : 30.6, background: 'white' }}>{note.content}</div>\n)\n// globalThis['VIRTUOSO_LOG_LEVEL'] = 0\n\nconst notes: Array<ReturnType<typeof note>> = []\nfunction note(index: number) {\n return {\n index: index + 1,\n content: `Note ${index}`,\n }\n}\n\nexport const getNote = (index: number) => {\n if (!notes[index]) {\n notes[index] = note(index)\n }\n\n return notes[index]\n}\n\nconst generateNotes = (length: number, startIndex = 0) => {\n return Array.from({ length }).map((_, i) => getNote(i + startIndex))\n}\n\nconst START_INDEX = 10000\nconst INITIAL_ITEM_COUNT = 20\n\nexport default function App() {\n const [topMostItemIndex, setTopMostItemIndex] = useState(10)\n const [notes] = useState(() => generateNotes(INITIAL_ITEM_COUNT, START_INDEX))\n\n return (\n <div>\n <button onClick={() => setTopMostItemIndex(() => 3)}>Topmost index = 3</button>\n <button onClick={() => setTopMostItemIndex(() => 7)}>Topmost index = 7</button>\n <Virtuoso data={notes} itemContent={itemContent} initialTopMostItemIndex={topMostItemIndex} 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"]}