diff --git a/.changeset/lovely-tigers-wish.md b/.changeset/lovely-tigers-wish.md new file mode 100644 index 0000000000..7579b3a45b --- /dev/null +++ b/.changeset/lovely-tigers-wish.md @@ -0,0 +1,8 @@ +--- +"@fluentui-react-native/focus-trap-zone": patch +"@fluentui-react-native/focus-zone": patch +"@fluentui-react-native/experimental-avatar": patch +"@fluentui-react-native/callout": patch +--- + +Explicitly declare `react-native` exports condition diff --git a/apps/E2E/package.json b/apps/E2E/package.json index b59e445abc..29616d81b1 100644 --- a/apps/E2E/package.json +++ b/apps/E2E/package.json @@ -19,6 +19,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/apps/fluent-tester/package.json b/apps/fluent-tester/package.json index 47f251644d..0b9e1d0952 100644 --- a/apps/fluent-tester/package.json +++ b/apps/fluent-tester/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.tsx" diff --git a/apps/tester-core/package.json b/apps/tester-core/package.json index ba78b02172..d32f9f7d3f 100644 --- a/apps/tester-core/package.json +++ b/apps/tester-core/package.json @@ -17,6 +17,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/apps/win32-81/package.json b/apps/win32-81/package.json index 4201bbadee..1e5369ca2e 100644 --- a/apps/win32-81/package.json +++ b/apps/win32-81/package.json @@ -12,6 +12,7 @@ "module": "./index.js", "exports": { ".": { + "react-native": "./index.ts", "import": "./index.js", "require": "./index.js", "default": "./src/index.tsx" diff --git a/apps/win32/package.json b/apps/win32/package.json index 122badaa68..e14b2dfeb6 100644 --- a/apps/win32/package.json +++ b/apps/win32/package.json @@ -12,6 +12,7 @@ "module": "./index.js", "exports": { ".": { + "react-native": "./index.ts", "import": "./index.js", "require": "./index.js", "default": "./src/index.tsx" diff --git a/packages/codemods/package.json b/packages/codemods/package.json index 77e689698e..3e9c5a5698 100644 --- a/packages/codemods/package.json +++ b/packages/codemods/package.json @@ -19,6 +19,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/Avatar/package.json b/packages/components/Avatar/package.json index dc504d6b74..46c55b1b96 100644 --- a/packages/components/Avatar/package.json +++ b/packages/components/Avatar/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/Badge/package.json b/packages/components/Badge/package.json index 8782b95324..de82543dae 100644 --- a/packages/components/Badge/package.json +++ b/packages/components/Badge/package.json @@ -12,6 +12,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/Button/package.json b/packages/components/Button/package.json index 78db279398..93347985d5 100644 --- a/packages/components/Button/package.json +++ b/packages/components/Button/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/Callout/package.json b/packages/components/Callout/package.json index cbd8579f79..b409a32cfb 100644 --- a/packages/components/Callout/package.json +++ b/packages/components/Callout/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/Checkbox/package.json b/packages/components/Checkbox/package.json index 6e52b30bb0..68f67b8143 100644 --- a/packages/components/Checkbox/package.json +++ b/packages/components/Checkbox/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/Chip/package.json b/packages/components/Chip/package.json index e6e41a7cb5..6494abd243 100644 --- a/packages/components/Chip/package.json +++ b/packages/components/Chip/package.json @@ -11,6 +11,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/ContextualMenu/package.json b/packages/components/ContextualMenu/package.json index 3cc8f94895..abba878f6c 100644 --- a/packages/components/ContextualMenu/package.json +++ b/packages/components/ContextualMenu/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/Divider/package.json b/packages/components/Divider/package.json index be3cfcd385..3b885dc80e 100644 --- a/packages/components/Divider/package.json +++ b/packages/components/Divider/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/FocusTrapZone/package.json b/packages/components/FocusTrapZone/package.json index ae97b1cda3..55cd6e63ce 100644 --- a/packages/components/FocusTrapZone/package.json +++ b/packages/components/FocusTrapZone/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/FocusZone/package.json b/packages/components/FocusZone/package.json index 668754a9e9..39b3142224 100644 --- a/packages/components/FocusZone/package.json +++ b/packages/components/FocusZone/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/Icon/package.json b/packages/components/Icon/package.json index 36136e673a..957d2b7efd 100644 --- a/packages/components/Icon/package.json +++ b/packages/components/Icon/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/Input/package.json b/packages/components/Input/package.json index df98fce471..2e62a4303b 100644 --- a/packages/components/Input/package.json +++ b/packages/components/Input/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/Link/package.json b/packages/components/Link/package.json index 43849525c7..d470983d5d 100644 --- a/packages/components/Link/package.json +++ b/packages/components/Link/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/Menu/package.json b/packages/components/Menu/package.json index 60f71be8df..1f5af91aaa 100644 --- a/packages/components/Menu/package.json +++ b/packages/components/Menu/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/MenuButton/package.json b/packages/components/MenuButton/package.json index 79e7f97d00..a4ecd08868 100644 --- a/packages/components/MenuButton/package.json +++ b/packages/components/MenuButton/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/Notification/package.json b/packages/components/Notification/package.json index 031f6d12fd..272fe7a3df 100644 --- a/packages/components/Notification/package.json +++ b/packages/components/Notification/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/Persona/package.json b/packages/components/Persona/package.json index 45cd8ed683..83e6efc03c 100644 --- a/packages/components/Persona/package.json +++ b/packages/components/Persona/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/PersonaCoin/package.json b/packages/components/PersonaCoin/package.json index 45f973d238..f9aec872f1 100644 --- a/packages/components/PersonaCoin/package.json +++ b/packages/components/PersonaCoin/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/Pressable/package.json b/packages/components/Pressable/package.json index dafb23a256..b7942d5dee 100644 --- a/packages/components/Pressable/package.json +++ b/packages/components/Pressable/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/RadioGroup/package.json b/packages/components/RadioGroup/package.json index f361382780..ed5f88dcb2 100644 --- a/packages/components/RadioGroup/package.json +++ b/packages/components/RadioGroup/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/Separator/package.json b/packages/components/Separator/package.json index ae7a7d1d7a..bedcfa4f70 100644 --- a/packages/components/Separator/package.json +++ b/packages/components/Separator/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/Stack/package.json b/packages/components/Stack/package.json index b7edb295d3..1ea042afbf 100644 --- a/packages/components/Stack/package.json +++ b/packages/components/Stack/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/Switch/package.json b/packages/components/Switch/package.json index a03202745a..f9b1f07570 100644 --- a/packages/components/Switch/package.json +++ b/packages/components/Switch/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/TabList/package.json b/packages/components/TabList/package.json index dee5f83770..75e9b004cc 100644 --- a/packages/components/TabList/package.json +++ b/packages/components/TabList/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/components/Text/package.json b/packages/components/Text/package.json index 81d3c72546..263e049f16 100644 --- a/packages/components/Text/package.json +++ b/packages/components/Text/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/deprecated/foundation-composable/package.json b/packages/deprecated/foundation-composable/package.json index 19eea3e502..0e23a87612 100644 --- a/packages/deprecated/foundation-composable/package.json +++ b/packages/deprecated/foundation-composable/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/deprecated/foundation-compose/package.json b/packages/deprecated/foundation-compose/package.json index 5278414053..895af280f4 100644 --- a/packages/deprecated/foundation-compose/package.json +++ b/packages/deprecated/foundation-compose/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/deprecated/foundation-settings/package.json b/packages/deprecated/foundation-settings/package.json index ad5f0ee4e7..7ee895b3c3 100644 --- a/packages/deprecated/foundation-settings/package.json +++ b/packages/deprecated/foundation-settings/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/deprecated/foundation-tokens/package.json b/packages/deprecated/foundation-tokens/package.json index 45eb9a589b..e3d2df732d 100644 --- a/packages/deprecated/foundation-tokens/package.json +++ b/packages/deprecated/foundation-tokens/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/deprecated/theme-registry/package.json b/packages/deprecated/theme-registry/package.json index df6d79bc5a..e07cf6d76a 100644 --- a/packages/deprecated/theme-registry/package.json +++ b/packages/deprecated/theme-registry/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/deprecated/themed-settings/package.json b/packages/deprecated/themed-settings/package.json index 8352a1666a..441ef63d7b 100644 --- a/packages/deprecated/themed-settings/package.json +++ b/packages/deprecated/themed-settings/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/deprecated/theming-ramp/package.json b/packages/deprecated/theming-ramp/package.json index 010537b958..6049243303 100644 --- a/packages/deprecated/theming-ramp/package.json +++ b/packages/deprecated/theming-ramp/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/deprecated/theming-react-native/package.json b/packages/deprecated/theming-react-native/package.json index 2ec7be21ee..a4601bcfbd 100644 --- a/packages/deprecated/theming-react-native/package.json +++ b/packages/deprecated/theming-react-native/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/experimental/ActivityIndicator/package.json b/packages/experimental/ActivityIndicator/package.json index 98be800b34..575a9ab420 100644 --- a/packages/experimental/ActivityIndicator/package.json +++ b/packages/experimental/ActivityIndicator/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/experimental/AppearanceAdditions/package.json b/packages/experimental/AppearanceAdditions/package.json index a504874f15..9f232e1052 100644 --- a/packages/experimental/AppearanceAdditions/package.json +++ b/packages/experimental/AppearanceAdditions/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/experimental/Avatar/package.json b/packages/experimental/Avatar/package.json index 3f509fbfc4..56375014bd 100644 --- a/packages/experimental/Avatar/package.json +++ b/packages/experimental/Avatar/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/experimental/Checkbox/package.json b/packages/experimental/Checkbox/package.json index 042b0b94b8..00b1542784 100644 --- a/packages/experimental/Checkbox/package.json +++ b/packages/experimental/Checkbox/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/experimental/Drawer/package.json b/packages/experimental/Drawer/package.json index c2f7f40386..7e95eed34c 100644 --- a/packages/experimental/Drawer/package.json +++ b/packages/experimental/Drawer/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/experimental/Dropdown/package.json b/packages/experimental/Dropdown/package.json index 06ee6bef07..0bb74313d7 100644 --- a/packages/experimental/Dropdown/package.json +++ b/packages/experimental/Dropdown/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/experimental/Expander/package.json b/packages/experimental/Expander/package.json index a567ed7f5c..dc6ca68b1e 100644 --- a/packages/experimental/Expander/package.json +++ b/packages/experimental/Expander/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/experimental/MenuButton/package.json b/packages/experimental/MenuButton/package.json index f465b9c83b..8c92ad9032 100644 --- a/packages/experimental/MenuButton/package.json +++ b/packages/experimental/MenuButton/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/experimental/NativeDatePicker/package.json b/packages/experimental/NativeDatePicker/package.json index 2400099af5..6e5db5a98e 100644 --- a/packages/experimental/NativeDatePicker/package.json +++ b/packages/experimental/NativeDatePicker/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/experimental/NativeFontMetrics/package.json b/packages/experimental/NativeFontMetrics/package.json index 256f2d9aa4..a4848f8566 100644 --- a/packages/experimental/NativeFontMetrics/package.json +++ b/packages/experimental/NativeFontMetrics/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/experimental/Overflow/package.json b/packages/experimental/Overflow/package.json index f57910dd1f..8a4722ca80 100644 --- a/packages/experimental/Overflow/package.json +++ b/packages/experimental/Overflow/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/experimental/Popover/package.json b/packages/experimental/Popover/package.json index 343d95a0c6..37ca8cc8ea 100644 --- a/packages/experimental/Popover/package.json +++ b/packages/experimental/Popover/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/experimental/Shadow/package.json b/packages/experimental/Shadow/package.json index 8d2fbd5a59..9a69aa0695 100644 --- a/packages/experimental/Shadow/package.json +++ b/packages/experimental/Shadow/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/experimental/Shimmer/package.json b/packages/experimental/Shimmer/package.json index cbe8ef1aaf..4aa7895cd1 100644 --- a/packages/experimental/Shimmer/package.json +++ b/packages/experimental/Shimmer/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/experimental/Spinner/package.json b/packages/experimental/Spinner/package.json index badc46edd3..8b21b9d90a 100644 --- a/packages/experimental/Spinner/package.json +++ b/packages/experimental/Spinner/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/experimental/Tooltip/package.json b/packages/experimental/Tooltip/package.json index c3ad31894e..451ea720ad 100644 --- a/packages/experimental/Tooltip/package.json +++ b/packages/experimental/Tooltip/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/experimental/VibrancyView/package.json b/packages/experimental/VibrancyView/package.json index 875b48a261..87d631417e 100644 --- a/packages/experimental/VibrancyView/package.json +++ b/packages/experimental/VibrancyView/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/framework-base/package.json b/packages/framework-base/package.json index 7b77488500..ce81af82ef 100644 --- a/packages/framework-base/package.json +++ b/packages/framework-base/package.json @@ -16,12 +16,14 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" }, "./jsx-runtime": { "types": "./lib/jsx-runtime.d.ts", + "react-native": "./src/jsx-runtime.ts", "import": "./lib/jsx-runtime.js", "require": "./lib-commonjs/jsx-runtime.js", "default": "./src/jsx-runtime.ts" diff --git a/packages/framework/composition/package.json b/packages/framework/composition/package.json index c04c4bcac3..d4604f3b97 100644 --- a/packages/framework/composition/package.json +++ b/packages/framework/composition/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/framework/framework/package.json b/packages/framework/framework/package.json index ea34711d6f..9593c9fb2c 100644 --- a/packages/framework/framework/package.json +++ b/packages/framework/framework/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/framework/theme/package.json b/packages/framework/theme/package.json index 34b543d0e2..1744287cf6 100644 --- a/packages/framework/theme/package.json +++ b/packages/framework/theme/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/framework/themed-stylesheet/package.json b/packages/framework/themed-stylesheet/package.json index f740a492ad..dc8fc989e4 100644 --- a/packages/framework/themed-stylesheet/package.json +++ b/packages/framework/themed-stylesheet/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/framework/use-slot/package.json b/packages/framework/use-slot/package.json index 6348c48e94..8ebe7c8f2d 100644 --- a/packages/framework/use-slot/package.json +++ b/packages/framework/use-slot/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/framework/use-slots/package.json b/packages/framework/use-slots/package.json index 1a6dce82a6..4425d12ec6 100644 --- a/packages/framework/use-slots/package.json +++ b/packages/framework/use-slots/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/framework/use-styling/package.json b/packages/framework/use-styling/package.json index 33ede9081f..ecbc905ea7 100644 --- a/packages/framework/use-styling/package.json +++ b/packages/framework/use-styling/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/framework/use-tokens/package.json b/packages/framework/use-tokens/package.json index b8a9e3b4f5..6db5925fbe 100644 --- a/packages/framework/use-tokens/package.json +++ b/packages/framework/use-tokens/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/libraries/core/package.json b/packages/libraries/core/package.json index 080ae98a41..ca4b033b62 100644 --- a/packages/libraries/core/package.json +++ b/packages/libraries/core/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/theming/android-theme/package.json b/packages/theming/android-theme/package.json index b668bd1100..0c8716fd9c 100644 --- a/packages/theming/android-theme/package.json +++ b/packages/theming/android-theme/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/theming/apple-theme/package.json b/packages/theming/apple-theme/package.json index 7560d3e2b9..63f6cff419 100644 --- a/packages/theming/apple-theme/package.json +++ b/packages/theming/apple-theme/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/theming/default-theme/package.json b/packages/theming/default-theme/package.json index 3299f18767..90aa461aba 100644 --- a/packages/theming/default-theme/package.json +++ b/packages/theming/default-theme/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/theming/theme-tokens/package.json b/packages/theming/theme-tokens/package.json index b1fe88b00f..6cd2843172 100644 --- a/packages/theming/theme-tokens/package.json +++ b/packages/theming/theme-tokens/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/theming/theme-types/package.json b/packages/theming/theme-types/package.json index 2072c7243d..3eac827780 100644 --- a/packages/theming/theme-types/package.json +++ b/packages/theming/theme-types/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/theming/theming-utils/package.json b/packages/theming/theming-utils/package.json index 3c3c5d006c..b4d957af86 100644 --- a/packages/theming/theming-utils/package.json +++ b/packages/theming/theming-utils/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/theming/win32-theme/package.json b/packages/theming/win32-theme/package.json index ffec88fb8f..136452a11b 100644 --- a/packages/theming/win32-theme/package.json +++ b/packages/theming/win32-theme/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/utils/adapters/package.json b/packages/utils/adapters/package.json index 02b0794594..7e3311d16e 100644 --- a/packages/utils/adapters/package.json +++ b/packages/utils/adapters/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/utils/interactive-hooks/package.json b/packages/utils/interactive-hooks/package.json index a9fe30c7e5..a1cd6a9aff 100644 --- a/packages/utils/interactive-hooks/package.json +++ b/packages/utils/interactive-hooks/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/utils/styling/package.json b/packages/utils/styling/package.json index 825ee31d46..a845321e17 100644 --- a/packages/utils/styling/package.json +++ b/packages/utils/styling/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/utils/test-tools/package.json b/packages/utils/test-tools/package.json index ee7b549c36..a2aaa12505 100644 --- a/packages/utils/test-tools/package.json +++ b/packages/utils/test-tools/package.json @@ -16,6 +16,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/packages/utils/tokens/package.json b/packages/utils/tokens/package.json index 4bc79ce08e..f517a02bc5 100644 --- a/packages/utils/tokens/package.json +++ b/packages/utils/tokens/package.json @@ -15,6 +15,7 @@ "exports": { ".": { "types": "./lib/index.d.ts", + "react-native": "./src/index.ts", "import": "./lib/index.js", "require": "./lib-commonjs/index.js", "default": "./src/index.ts" diff --git a/scripts/src/tasks/lintPackage.ts b/scripts/src/tasks/lintPackage.ts index 1a6a916449..48ef031726 100644 --- a/scripts/src/tasks/lintPackage.ts +++ b/scripts/src/tasks/lintPackage.ts @@ -1,5 +1,5 @@ import { Command, Option } from 'clipanion'; -import type { PackageManifest, ResolvedBuildConfig } from '../utils/projectRoot.ts'; +import type { ExportSet, PackageManifest, ResolvedBuildConfig } from '../utils/projectRoot.ts'; import { getProjectRoot, type ProjectRoot } from '../utils/projectRoot.ts'; import { getResolvedConfig } from '../utils/buildConfig.ts'; import { isFixMode } from '../utils/env.ts'; @@ -311,6 +311,9 @@ export class LintPackageCommand extends Command { if (group || isDefault) { const updated = { ...group }; const keys = Object.keys(updated); + const isOrdered = (lhs: keyof ExportSet, rhs: keyof ExportSet) => { + return !updated[lhs] || !updated[rhs] || keys.indexOf(rhs) > keys.indexOf(lhs); + }; const errors: string[] = []; if (!group) { errors.push(`Missing required exports group ${groupName}`); @@ -337,14 +340,33 @@ export class LintPackageCommand extends Command { } const esmDir = buildConfig.typescript.esmDir; const cjsDir = buildConfig.typescript.cjsDir; + this.validateEntryPoint(updated, 'react-native', esmDir, cjsDir); this.validateEntryPoint(updated, 'import', esmDir, cjsDir); this.validateEntryPoint(updated, 'require', cjsDir, esmDir); - if (updated.import && updated.require && keys.indexOf('import') > keys.indexOf('require')) { + if (!isOrdered('react-native', 'import')) { + errors.push(`'react-native' entry should come before 'import' in exports for ${groupName}`); + } + if (!isOrdered('react-native', 'require')) { + errors.push(`'react-native' entry should come before 'require' in exports for ${groupName}`); + } + if (!isOrdered('import', 'require')) { errors.push(`'import' entry should come before 'require' in exports for ${groupName}`); } if (updated.default && keys[keys.length - 1] !== 'default') { errors.push(`'default' entry should be last in exports for ${groupName}`); } + if (updated.import) { + const importInSrc = updated.import.startsWith('./src'); + const defaultExport = importInSrc ? updated.import : updated.import.replace(esmDir, 'src').replace(/\.js$/, '.ts'); + if (!updated['react-native'] || updated['react-native'] !== defaultExport) { + errors.push(`'react-native' entry in exports does not match the expected default export`); + updated['react-native'] = defaultExport; + } + if (!updated.default || updated.default !== defaultExport) { + errors.push(`'default' entry in exports does not match the expected default export`); + updated.default = defaultExport; + } + } this.errorIf(errors.length > 0, errors.join('\n'), () => { const { types, import: imp, require: req, default: def, ...rest } = updated; // restructure the group to have types, , import, require, default in order diff --git a/scripts/src/utils/projectRoot.ts b/scripts/src/utils/projectRoot.ts index f94e1c3983..8f733edcbc 100644 --- a/scripts/src/utils/projectRoot.ts +++ b/scripts/src/utils/projectRoot.ts @@ -7,6 +7,7 @@ import type { KitConfig } from '@rnx-kit/types-kit-config'; export type ExportSet = { default?: string; types?: string; + 'react-native'?: string; import?: string; require?: string; };