@react-stately/virtualizer 3.2.3-nightly.3390 → 3.2.3-nightly.3402

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.
package/dist/types.d.ts CHANGED
@@ -273,6 +273,11 @@ declare class Virtualizer<T extends object, V, W> {
273
273
  * Returns the item with the given key.
274
274
  */
275
275
  getItem(key: Key): T;
276
+ /**
277
+ * Set the keys of keys for layoutInfos persisted by the virtualizer.
278
+ * This is to prevent these views from being reused by the virtualizer.
279
+ */
280
+ set persistedKeys(persistedKeys: Set<Key>);
276
281
  /**
277
282
  * Get the collection view's layout.
278
283
  */
@@ -330,6 +335,7 @@ declare class Virtualizer<T extends object, V, W> {
330
335
  relayoutNow(context?: InvalidationContext<T, V>): void;
331
336
  getVisibleRect(): Rect;
332
337
  getVisibleLayoutInfos(): Map<Key, LayoutInfo>;
338
+ isPersistedKey(node: any): boolean;
333
339
  updateSubviews(forceUpdate?: boolean): boolean;
334
340
  afterRender(): void;
335
341
  reuseView(view: ReusableView<T, V>): void;
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/Point.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/Size.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/Rect.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/LayoutInfo.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/tween.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/utils.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/OverscanManager.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/ReusableView.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/Transaction.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/Virtualizer.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/Layout.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/types.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/useVirtualizerState.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/index.ts","packages/@react-stately/virtualizer/src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,"/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nexport type {InvalidationContext} from './types';\nexport type {VirtualizerState} from './useVirtualizerState';\nexport type {RectCorner} from './Rect';\n\nexport {Layout} from './Layout';\nexport {LayoutInfo} from './LayoutInfo';\nexport {Point} from './Point';\nexport {Rect} from './Rect';\nexport {Size} from './Size';\nexport {ReusableView} from './ReusableView';\nexport {useVirtualizerState} from './useVirtualizerState';\n"],"names":[],"version":3,"file":"types.d.ts.map"}
1
+ {"mappings":"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","sources":["packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/Point.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/Size.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/Rect.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/LayoutInfo.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/tween.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/utils.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/OverscanManager.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/ReusableView.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/Transaction.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/Virtualizer.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/Layout.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/types.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/useVirtualizerState.ts","packages/@react-stately/virtualizer/src/packages/@react-stately/virtualizer/src/index.ts","packages/@react-stately/virtualizer/src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,"/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nexport type {InvalidationContext} from './types';\nexport type {VirtualizerState} from './useVirtualizerState';\nexport type {RectCorner} from './Rect';\n\nexport {Layout} from './Layout';\nexport {LayoutInfo} from './LayoutInfo';\nexport {Point} from './Point';\nexport {Rect} from './Rect';\nexport {Size} from './Size';\nexport {ReusableView} from './ReusableView';\nexport {useVirtualizerState} from './useVirtualizerState';\n"],"names":[],"version":3,"file":"types.d.ts.map"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-stately/virtualizer",
3
- "version": "3.2.3-nightly.3390+b3a290970",
3
+ "version": "3.2.3-nightly.3402+c9c838b03",
4
4
  "description": "Spectrum UI components in React",
5
5
  "license": "Apache-2.0",
6
6
  "main": "dist/main.js",
@@ -18,8 +18,8 @@
18
18
  },
19
19
  "dependencies": {
20
20
  "@babel/runtime": "^7.6.2",
21
- "@react-aria/utils": "3.0.0-nightly.1690+b3a290970",
22
- "@react-types/shared": "3.0.0-nightly.1690+b3a290970"
21
+ "@react-aria/utils": "3.0.0-nightly.1702+c9c838b03",
22
+ "@react-types/shared": "3.0.0-nightly.1702+c9c838b03"
23
23
  },
24
24
  "peerDependencies": {
25
25
  "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0"
@@ -27,5 +27,5 @@
27
27
  "publishConfig": {
28
28
  "access": "public"
29
29
  },
30
- "gitHead": "b3a290970bf090b14dcc1703abc0cfa76efdf112"
30
+ "gitHead": "c9c838b03cf2c9a3efa957f86bb1981fa199b3de"
31
31
  }
@@ -92,6 +92,7 @@ export class Virtualizer<T extends object, V, W> {
92
92
  private _children: Set<ReusableView<T, V>>;
93
93
  private _invalidationContext: InvalidationContext<T, V> | null;
94
94
  private _overscanManager: OverscanManager;
95
+ private _persistedKeys: Set<Key>;
95
96
  private _relayoutRaf: number | null;
96
97
  private _scrollAnimation: CancelablePromise<void> | null;
97
98
  private _isScrolling: boolean;
@@ -112,6 +113,7 @@ export class Virtualizer<T extends object, V, W> {
112
113
  this._children = new Set();
113
114
  this._invalidationContext = null;
114
115
  this._overscanManager = new OverscanManager();
116
+ this._persistedKeys = new Set();
115
117
 
116
118
  this._scrollAnimation = null;
117
119
  this._isScrolling = false;
@@ -233,6 +235,30 @@ export class Virtualizer<T extends object, V, W> {
233
235
  return this._collection ? this._collection.getItem(key) : null;
234
236
  }
235
237
 
238
+ /**
239
+ * Set the keys of keys for layoutInfos persisted by the virtualizer.
240
+ * This is to prevent these views from being reused by the virtualizer.
241
+ */
242
+ set persistedKeys(persistedKeys: Set<Key>) {
243
+ let setsNotEqual = false;
244
+
245
+ if (this._persistedKeys.size !== persistedKeys.size) {
246
+ setsNotEqual = true;
247
+ } else {
248
+ for (var existingKey of this._persistedKeys) {
249
+ if (!persistedKeys.has(existingKey)) {
250
+ setsNotEqual = true;
251
+ break;
252
+ }
253
+ }
254
+ }
255
+
256
+ if (setsNotEqual) {
257
+ this._persistedKeys = persistedKeys;
258
+ this.updateSubviews();
259
+ }
260
+ }
261
+
236
262
  /**
237
263
  * Get the collection view's layout.
238
264
  */
@@ -636,6 +662,24 @@ export class Virtualizer<T extends object, V, W> {
636
662
  return map;
637
663
  }
638
664
 
665
+ isPersistedKey(node) {
666
+ let keyFound = this._persistedKeys.has(node.layoutInfo.key);
667
+
668
+ // for components like Table, where we have rows with cells as children,
669
+ // if the key isn't found at the top level (row in this example), check
670
+ // the children of this node to see if a child is persisted. If a child
671
+ // of this node is a persisted key we consider this node as "persistable."
672
+ if (!keyFound && node.children && node.node.type !== 'section') {
673
+ for (let child of node.children) {
674
+ if (this._persistedKeys.has(child.layoutInfo.key)) {
675
+ keyFound = true;
676
+ break;
677
+ }
678
+ }
679
+ }
680
+ return keyFound;
681
+ }
682
+
639
683
  updateSubviews(forceUpdate = false) {
640
684
  if (!this._collection) {
641
685
  return;