Shawn Dempsey
f17c26437b
Revert D69849314: Use implicit namespace to better align Animated module with OSS types
...
Differential Revision:
D69849314
Original commit changeset: cdaa605ba536
Original Phabricator Diff: D69849314
fbshipit-source-id: b97b049cf5f3728568a55abfb93dc67cadfa26ba
2025-02-24 15:40:33 -08:00
Iwo Plaza
b56548969a
Use implicit namespace to better align Animated module with OSS types ( #49559 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49559
## Motivation
Modernising the RN codebase to allow for modern Flow tooling to process it.
## This diff
Renames `Animated.js` to `AnimatedExports.js`, and introduces an intermediate file that reexports `* as Animated` as a default. This should have equivalent runtime behavior, but allows for a common interface file: `Animated.js.flow` to reinterpret the module as having single exports. TypeScript treats this as a namespace.
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D69849314
fbshipit-source-id: cdaa605ba5361d3349c6dd0e84fd0fbfee263941
2025-02-24 09:20:04 -08:00
Jakub Piasecki
c66728dc35
Add ButtonProps export ( #49593 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49593
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D69984581
fbshipit-source-id: 1a9607866dee564718081a15f9f6740dfb8dd0e4
2025-02-24 08:50:19 -08:00
Dawid Małecki
92e21688db
Add RefreshControl to buildTypes and align Flow with TS types ( #49564 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49564
Changelog:
[Internal] - Added RefreshControl to buildTypes and aligned Flow with TS types
Reviewed By: huntie
Differential Revision: D69924368
fbshipit-source-id: 1a01ede28f9d0729c483036f8d3f9c9eced58286
2025-02-24 07:08:03 -08:00
Jakub Piasecki
f8627e5627
Align ActivityIndicator with OSS types ( #49519 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49519
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D69661567
fbshipit-source-id: 35e3849eeea188f8bdfa0664c90d3d9e5328ef80
2025-02-24 06:36:56 -08:00
Jakub Piasecki
db4086de97
Align LayoutConformance types with OSS ( #49625 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49625
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D70084487
fbshipit-source-id: f4f0a06f3d7cf87659696ac41a27be5f5972d99f
2025-02-24 06:19:45 -08:00
Jakub Piasecki
0a87f0cf5c
Align ScrollView with the OSS types ( #49617 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49617
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D69981167
fbshipit-source-id: d4b2661b9ec746f30b512bad2c84d4dd0c1755c7
2025-02-24 05:03:18 -08:00
Dawid Małecki
b060fbe99c
Add StatusBar to buildTypes and align Flow with TS types ( #49598 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49598
Changelog:
[Internal] - Added StatusBar to buildTypes and aligned Flow with TS types
Reviewed By: huntie
Differential Revision: D69990300
fbshipit-source-id: 684c3692fd3cc4862fd3cd3fe4731129887b9bcc
2025-02-24 03:11:31 -08:00
Dawid Małecki
0d454285c7
Add Switch to buildTypes and align Flow with TS types. ( #49597 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49597
Changelog:
[Internal] - Added Switch to buildTypes and aligned Flow with TS types.
Reviewed By: huntie
Differential Revision: D69984618
fbshipit-source-id: 1fb978bb712be20f0e685af80bef0ac6d78b73ba
2025-02-21 09:09:01 -08:00
Jakub Piasecki
289dba8cf2
Align InteractionManager and PanResponder types with OSS ( #49517 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49517
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D69742877
fbshipit-source-id: ccd99b29aed4ec4ef8c0b7b2a57763f716be411e
2025-02-21 05:18:56 -08:00
Dawid Małecki
f5837bf9f4
Add TouchableHighlight to buildTypes and move comments from TS definitions ( #49560 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49560
Changelog:
[Internal] - Added TouchableHighlight to buildTypes and moved comments from TS definitions
Reviewed By: huntie
Differential Revision: D69919248
fbshipit-source-id: 66b615df60862a53132bd7b2ae9f54065c444e22
2025-02-21 04:00:06 -08:00
Dawid Małecki
e96e0de756
Add TouchableNativeFeedback to buildTypes and align Flow types ( #49561 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49561
Changelog:
[Internal] - Added TouchableNativeFeedback to buildTypes and aligned Flow types
Reviewed By: huntie
Differential Revision: D69858177
fbshipit-source-id: 4bd55cba9a9eb1a1d304911cf929b363205a20d5
2025-02-21 04:00:06 -08:00
Dawid Małecki
b418aacd85
Add TouchableWithoutFeedback to buildTypes and align Flow with TS types ( #49529 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49529
Changelog:
[Internal] - Added TouchableWithoutFeedback to buildTypes and aligned Flow with TS types
Reviewed By: huntie
Differential Revision: D69855221
fbshipit-source-id: a1de660e02a90f8e1c181b8e0c5dfdbaa4d2c75c
2025-02-21 04:00:06 -08:00
Jakub Piasecki
c079d5218f
Partially align Utilities with OSS types ( #49471 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49471
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D69747254
fbshipit-source-id: 70bfe94d0950d31e7f4f3c3bc4df47121e8be9c1
2025-02-20 09:12:43 -08:00
Dawid Małecki
3f9e474d23
Align Flow to TS types in Modal ( #49521 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49521
Changelog:
[Internal] - Aligned types of the Modal between Flow and iOS
Reviewed By: huntie
Differential Revision: D69786560
fbshipit-source-id: 3bf0999db5ad57a1b9b9dd95f2b77c994fe3af6e
2025-02-19 09:12:45 -08:00
Iwo Plaza
ee90f2d97f
Prefer common interface files when building the type graph ( #49494 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49494
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D69786939
fbshipit-source-id: 3b0481e83a528afbdf1d29734d2aea9cad740f58
2025-02-19 06:00:03 -08:00
Dawid Małecki
8beae3ba52
Align types of the Libraries/PushNotificationIOS between Flow and TS ( #49266 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49266
Changelog:
[Internal] - Aligned types of the PushNotificationIOS between Flow and TS
Reviewed By: huntie
Differential Revision: D69309391
fbshipit-source-id: 1e99f6aa6805c25db7ede6c65305b309590ebd6a
2025-02-18 09:03:55 -08:00
Iwo Plaza
e4e03bd909
Trace the import path that leads to an untranslatable file ( #49480 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49480
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D69752685
fbshipit-source-id: 94f70eeaec35c864c15b463f3afce929765f2c40
2025-02-18 07:37:57 -08:00
Dawid Małecki
71bd096136
Add PermissionsAndroid to buildTypes and align Flow with TS types ( #49352 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49352
Changelog:
[Internal] - Added PermissionsAndroid to buildTypes and align Flow with TS types.
Reviewed By: huntie
Differential Revision: D69464744
fbshipit-source-id: 31591b2069d25a20bff569b296dcbda88d9f2148
2025-02-18 01:20:26 -08:00
Jakub Piasecki
91edb9c184
Align LayoutAnimation types with OSS ( #49467 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49467
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D69745571
fbshipit-source-id: 4c27b6c22126a2c8b0965e1a88f9dc310e5ff77c
2025-02-18 01:10:02 -08:00
Jakub Piasecki
721c7fafa4
Add ReactNative to the list of translated modules ( #49472 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49472
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D69748223
fbshipit-source-id: 97aed0dfc25de9117db3c359970dd94899dd1417
2025-02-18 00:41:51 -08:00
Alex Hunt
f940be1caa
Remove index.js.flow shim from Node packages ( #49461 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49461
Flow now supports Package Exports 🎉 . This means we can delete the compatiblity pattern in each of our build-enabled Node.js packages.
This simplifies the internal package structure needed to support Flow while developing from source in the monorepo — no prod impact.
Changelog: [Internal]
Reviewed By: cipolleschi
Differential Revision: D69741143
fbshipit-source-id: 070715cb6beb00eb393186dbf95856ceb87fabef
2025-02-17 05:44:22 -08:00
Jakub Piasecki
f15f618503
Sort entry points, add clipboard and AccessibilityInfo ( #49458 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49458
Changelog: [Internal]
Sorts the entry points in the TS generator script and adds `Clipboard` and `AccessibilityInfo` which, as far as I can see, require no changes for their types to align with OSS.
Reviewed By: huntie
Differential Revision: D69663092
fbshipit-source-id: cfdb9ab5c07105497a1cdf4ebdc8de1e34b510bd
2025-02-17 02:59:58 -08:00
Dawid Małecki
893d1c5fed
Add I18nManager and Vibration to buildTypes and align Flow with TS types ( #49420 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49420
Changelog:
[Internal]
Reviewed By: huntie
Differential Revision: D69460878
fbshipit-source-id: 09cc702892ed93b6d413e1700e02151aa600bd18
2025-02-14 05:45:28 -08:00
Iwo Plaza
ae1a33875e
Re-include ActionSheetIOS and Share in automatic type def generation ( #49411 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49411
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D69606078
fbshipit-source-id: e5fa3b6a50a6f53436cc7429f224c9f8353d6c8c
2025-02-14 04:56:00 -08:00
Jakub Piasecki
7295a0b9df
Align Blob types with OSS ( #49390 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49390
Na
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D69586908
fbshipit-source-id: 017c427f381e075e4f6a440ab30ae0df79573793
2025-02-14 03:18:48 -08:00
Jakub Piasecki
88fc9a3415
Align AppState types with TypeScript definitions ( #49248 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49248
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D69176965
fbshipit-source-id: ffc82068dcf1451b858c3465c40f22427d4dd158
2025-02-13 04:14:15 -08:00
Jakub Piasecki
43cf02336d
Update ignore files and translate script ( #49389 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49389
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D69586220
fbshipit-source-id: a6c2f5e91055a6449087db3107c137dc49ea6d91
2025-02-13 03:59:37 -08:00
Eli White
60e3921f9c
Initial Open Sourcing of React Native Compatibility Check ( #49340 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49340
This tool enables checking the boundary between JavaScript and Native for
backwards incompatible changes to protect against crashes.
This is useful for:
- Local Development
- Over the Air updates on platforms that support it
- Theoretically: Server Components with React Native
Check out the Readme for more information
Changelog: [General][Added] Open Sourcing React Native's Compatibility Check
Reviewed By: panagosg7
Differential Revision: D69476742
fbshipit-source-id: 8af6039839c5475c1258fa82d9750a9320cf0751
2025-02-12 08:24:13 -08:00
Jakub Piasecki
2a99b22a44
Update module resolution for type generation ( #49351 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49351
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D69521547
fbshipit-source-id: 5d37875da91341ad1882733f5ee842a819558f85
2025-02-12 07:34:36 -08:00
Jakub Piasecki
1d7de4261f
Add transform that replaces empty type with never ( #49331 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49331
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D69465686
fbshipit-source-id: ef5e5eeedb6cd1bc89529d11bbf1ff7490daf704
2025-02-12 03:20:15 -08:00
Dawid Małecki
bf282146b6
Add UIManager to build-types and align Flow with TS defs ( #49322 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49322
Changelog:
[Internal]
Reviewed By: huntie
Differential Revision: D69241595
fbshipit-source-id: 00dafa499fe70f47395ab363f6565619e1877bae
2025-02-12 02:00:10 -08:00
Qian Wu
df3a60293c
Revert D69277991: Initial Open Sourcing of React Native Compatibility Check
...
Differential Revision:
D69277991
Original commit changeset: 886a983d4b17
Original Phabricator Diff: D69277991
fbshipit-source-id: f69d528d87c22d03b0c3e654733c8efa89104df0
2025-02-11 10:35:55 -08:00
Eli White
6590bb3e14
Initial Open Sourcing of React Native Compatibility Check ( #49311 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49311
This tool enables checking the boundary between JavaScript and Native for
backwards incompatible changes to protect against crashes.
This is useful for:
- Local Development
- Over the Air updates on platforms that support it
- Theoretically: Server Components with React Native
Check out the Readme for more information
Changelog: [General][Added] Open Sourcing React Native's Compatibility Check
Reviewed By: yungsters
Differential Revision: D69277991
fbshipit-source-id: 886a983d4b17609ce771cdd93b75f34bbd8417dc
2025-02-11 08:23:16 -08:00
Jakub Piasecki
f1a3ff0dd1
Update RCTDeviceEventEmitter singleton instantiation ( #49085 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49085
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D68953499
fbshipit-source-id: ea469813593cc4bcb746345a78c68dc7b0b4d56d
2025-02-11 05:42:24 -08:00
Jakub Piasecki
7dbfc1099c
Align EventEmitter definitions with TypeScript ( #49206 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49206
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D68953500
fbshipit-source-id: 0e936e8423f8792db34d6b44b1620dde5bd13a47
2025-02-11 05:42:24 -08:00
Jakub Piasecki
d4506c30d7
Use local version of flow-api-translator when building TS types ( #49294 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49294
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D69237317
fbshipit-source-id: 8cfffb85cbb05cd1edb18358dbdea68aac84f988
2025-02-10 08:33:12 -08:00
Dawid Małecki
13f4b7619d
Generate TS types for LogBox and Systrace ( #49160 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49160
Changelog:
[Internal]
Reviewed By: robhogan
Differential Revision: D69053361
fbshipit-source-id: f877efe11aa9cd29257d3ac34b040e70ec8746d5
2025-02-10 04:09:03 -08:00
Jakub Piasecki
c0415adb11
Add transform that replaces requires with imports ( #49228 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49228
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D69247874
fbshipit-source-id: 8b4ea4b358c1c8714237e0109cf5a9492528016b
2025-02-10 01:32:35 -08:00
Alex Hunt
f96f1a6e11
Add signedsource and generated header to build-types ( #49259 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49259
Also exclude `types_generated/` under ESLint + Prettier — paired with the removed `format` annotation.
Changelog: [Internal]
Reviewed By: j-piasecki
Differential Revision: D69306215
fbshipit-source-id: f2bfbeb3ce691ebf86b63fc498ae3847873c83ee
2025-02-07 08:40:09 -08:00
Alex Hunt
0d7379b9fe
Tree-shake non-type imports ( #49258 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49258
Updates dependency resolution in `yarn build-types` to happen after the `translateFlowToFlowDef` step. This means that we prune all non-type imports, massively reducing the input files of the program when building types only.
Changelog: [Internal]
Reviewed By: j-piasecki
Differential Revision: D69302812
fbshipit-source-id: aa80bea17cb584b747cb31c003e87fe00afd1e16
2025-02-07 08:40:09 -08:00
Alex Hunt
a7a513fc96
Add module resolution to build-types ( #49257 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49257
Adds minimal dependency resolution to `yarn build-types`.
- This enables us to opt in React Native APIs by entry point, with the build script resolving all necessary dependencies. Improves correctness and removes concern of globbing paths manually.
Other notes:
- The `ActionSheetIOS.js` entry point is temporarily disabled as input; needs further work.
Changelog: [Internal]
Reviewed By: j-piasecki
Differential Revision: D69255015
fbshipit-source-id: 2d99c014b50e41e4695549f46ca874a2b546f545
2025-02-07 08:40:09 -08:00
Dawid Małecki
09740c9001
Add Share path to build-types script and align Flow with TS types ( #49167 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49167
Changelog:
[Internal]
Reviewed By: huntie
Differential Revision: D69119294
fbshipit-source-id: 5d7a10fee47da8d8ffa07f8481060d0176618ce9
2025-02-07 04:56:26 -08:00
Alex Hunt
b54efb8d0d
Update multi-platform handling in build-types, add debug logs ( #49224 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49224
Refactor / quality pass.
- Remove `micromatch`, replace with glob ignores.
- Move and simplify platfom-specific file logic: mutate `files` as a single `Set`, reduce iterations.
- This is reconfigured so that the input file path globs need only match `*.js` sources.
- Introduce `debug` logs and expose convenience `--debug` script flag.
- Move output error detection into inner function implementation.
Changelog: [Internal]
Metro changelog: Internal
Reviewed By: j-piasecki
Differential Revision: D69240543
fbshipit-source-id: c2faef8212a2995936362b3d33d189c405bd879d
2025-02-06 08:49:29 -08:00
Jakub Piasecki
eae7d3c6a1
Update types exposed by Alert and the module structure ( #49157 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49157
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D69044715
fbshipit-source-id: 05486d9c9be161a3604ef535d260f525d7c9e9d1
2025-02-06 03:59:28 -08:00
Dawid Małecki
5f110c416b
Add Settings path to build-types script and align Flow with TS types ( #49175 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49175
Changelog:
[Internal]
Reviewed By: huntie
Differential Revision: D69121991
fbshipit-source-id: 022d56e823aae884ce10fd24cc9701b02db19e9f
2025-02-06 03:02:42 -08:00
Jakub Piasecki
289bdb6b1b
Enable TypeScript generation for ToastAndroid ( #49095 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49095
Changelog: [Internal]
Reviewed By: huntie
Differential Revision: D68958757
fbshipit-source-id: 3e06201936e2beda4d6a0e591dcd4a619b169795
2025-02-05 08:15:17 -08:00
Jakub Piasecki
43f07ae9a5
Update common interface shadowing for type generation ( #49205 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49205
Changelog: [Internal]
Updates how name shadowing works for the TS type generation prototype to align more with how Flow does it - `.js.flow` files shadow every other file with the same name, then `.js` file (if exists) is treated as the common interface.
The script still uses `.flow.js` for common interface, which will be changed in another diff.
Reviewed By: huntie
Differential Revision: D68958772
fbshipit-source-id: caa390711f2bcd7666d875703fc316d874500a0d
2025-02-05 08:15:17 -08:00
Rubén Norte
2f27327f33
Rename src/private/specs as src/private/specs_DEPRECATED ( #49068 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49068
Changelog: [internal]
Renamed directory to better signal it's deprecated and added README.md to clarify intent.
Reviewed By: huntie
Differential Revision: D68895998
fbshipit-source-id: 5bc70d0782194db27c27cc89cc402d99f11aafa4
2025-02-03 09:15:31 -08:00
Alex Hunt
4348a57503
Fix build-types script, align internal babel-register ( #49133 )
...
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49133
Follow up to D68960540.
Changelog: [Internal]
Reviewed By: robhogan
Differential Revision: D69053411
fbshipit-source-id: ffc8aba923aab8f4cd0d74fb61c49893ff09b6c1
2025-02-03 08:32:39 -08:00