Skip to content

Commit be8393c

Browse files
iwoplazafacebook-github-bot
authored andcommitted
Limit @react-native/virtualized-lists subpath imports (#50392)
Summary: Pull Request resolved: #50392 ## This diff Defines an exports field for the "react-native/virtualized-lists" package. Limits internal use of subpath imports to virtualized-lists package, and exports all currently used APIs one the root level. Changelog: [General][Breaking] - Subpath imports to the internal react-native/virtualized-lists package are not allowed. Reviewed By: huntie Differential Revision: D72162344 fbshipit-source-id: 828dab8e569f019fc48084af475e152b898f5bb5
1 parent 9a87bb2 commit be8393c

File tree

3 files changed

+28
-4
lines changed

3 files changed

+28
-4
lines changed

packages/rn-tester/js/examples/FlatList/FlatList-maintainVisibleContentPosition.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
* @format
99
*/
1010

11-
import type {ListRenderItemInfo} from '../../../../virtualized-lists/Lists/VirtualizedListProps';
11+
import type {ListRenderItemInfo} from '../../../../virtualized-lists';
1212
import type {RNTesterModuleExample} from '../../types/RNTesterTypes';
1313

1414
import * as React from 'react';

packages/virtualized-lists/index.js

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,18 @@
1010

1111
'use strict';
1212

13+
import typeof ChildListCollection from './Lists/ChildListCollection';
1314
import typeof FillRateHelper from './Lists/FillRateHelper';
1415
import typeof ViewabilityHelper from './Lists/ViewabilityHelper';
1516
import typeof VirtualizedList from './Lists/VirtualizedList';
1617
import typeof VirtualizedSectionList from './Lists/VirtualizedSectionList';
1718

18-
import {typeof VirtualizedListContextResetter} from './Lists/VirtualizedListContext';
19+
import {
20+
typeof VirtualizedListCellContextProvider,
21+
typeof VirtualizedListContext,
22+
typeof VirtualizedListContextProvider,
23+
typeof VirtualizedListContextResetter,
24+
} from './Lists/VirtualizedListContext';
1925
import {keyExtractor} from './Lists/VirtualizeUtils';
2026

2127
export type {
@@ -49,13 +55,27 @@ export default {
4955
return require('./Lists/VirtualizedSectionList').default;
5056
},
5157
get VirtualizedListContextResetter(): VirtualizedListContextResetter {
52-
const VirtualizedListContext = require('./Lists/VirtualizedListContext');
53-
return VirtualizedListContext.VirtualizedListContextResetter;
58+
return require('./Lists/VirtualizedListContext')
59+
.VirtualizedListContextResetter;
60+
},
61+
get VirtualizedListContext(): VirtualizedListContext {
62+
return require('./Lists/VirtualizedListContext').VirtualizedListContext;
63+
},
64+
get VirtualizedListContextProvider(): VirtualizedListContextProvider {
65+
return require('./Lists/VirtualizedListContext')
66+
.VirtualizedListContextProvider;
67+
},
68+
get VirtualizedListCellContextProvider(): VirtualizedListCellContextProvider {
69+
return require('./Lists/VirtualizedListContext')
70+
.VirtualizedListCellContextProvider;
5471
},
5572
get ViewabilityHelper(): ViewabilityHelper {
5673
return require('./Lists/ViewabilityHelper').default;
5774
},
5875
get FillRateHelper(): FillRateHelper {
5976
return require('./Lists/FillRateHelper').default;
6077
},
78+
get ChildListCollection(): ChildListCollection {
79+
return require('./Lists/ChildListCollection').default;
80+
},
6181
};

packages/virtualized-lists/package.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,10 @@
33
"version": "0.80.0-main",
44
"description": "Virtualized lists for React Native.",
55
"license": "MIT",
6+
"exports": {
7+
".": "./index.js",
8+
"./package.json": "./package.json"
9+
},
610
"repository": {
711
"type": "git",
812
"url": "git+https://github.com/facebook/react-native.git",

0 commit comments

Comments
 (0)