From 25c6ebd03a5a56274c6fc1ce40075dd04d56473e Mon Sep 17 00:00:00 2001 From: Freddy Harris Date: Sat, 25 Apr 2026 16:13:10 +0200 Subject: [PATCH 1/7] update to rescript 12 --- .gitignore | 3 +- package-lock.json | 2100 +++++------------ package.json | 8 +- rescript.json | 4 +- src/apis/Animated.bs.js | 84 +- src/apis/AppRegistry.res | 2 +- src/apis/BackHandler.res | 2 +- src/apis/Color.bs.js | 8 +- src/apis/Color.res | 8 +- src/apis/Event.bs.js | 18 +- src/apis/Event.res | 30 +- src/apis/LayoutAnimation.bs.js | 2 +- src/apis/Linking.bs.js | 2 +- src/apis/Linking.res | 2 +- src/apis/LogBox.res | 2 +- src/apis/PermissionsAndroid.bs.js | 4 +- src/apis/PlatformColor.bs.js | 4 +- src/apis/Style.bs.js | 2 +- src/apis/Style.res | 6 +- src/components/ActivityIndicator.bs.js | 2 +- src/components/Button.bs.js | 2 +- src/components/DrawerLayoutAndroid.bs.js | 6 +- src/components/FlatList.bs.js | 2 +- src/components/Image.bs.js | 16 +- src/components/Image.res | 2 +- src/components/ImageBackground.bs.js | 2 +- src/components/KeyboardAvoidingView.bs.js | 2 +- src/components/Modal.bs.js | 6 +- src/components/Pressable.bs.js | 2 +- src/components/ProgressBarAndroid.bs.js | 2 +- src/components/RefreshControl.bs.js | 2 +- src/components/SafeAreaView.bs.js | 2 +- src/components/ScrollView.bs.js | 2 +- src/components/SectionList.bs.js | 2 +- src/components/Switch.bs.js | 2 +- src/components/Text.bs.js | 2 +- src/components/TextInput.bs.js | 16 +- src/components/TextInput.res | 4 +- src/components/TouchableHighlight.bs.js | 2 +- src/components/TouchableNativeFeedback.bs.js | 4 +- src/components/TouchableOpacity.bs.js | 2 +- src/components/TouchableWithoutFeedback.bs.js | 2 +- src/components/View.bs.js | 2 +- src/components/VirtualizedList.bs.js | 4 +- src/components/VirtualizedList.res | 2 +- src/components/VirtualizedSectionList.bs.js | 2 +- src/elements/DrawerLayoutAndroidElement.bs.js | 4 +- src/elements/NativeElement.bs.js | 6 +- src/elements/Ref.res | 4 +- src/elements/ScrollViewElement.bs.js | 4 +- src/elements/TextInputElement.bs.js | 4 +- src/elements/TouchableOpacityElement.bs.js | 4 +- src/elements/VirtualizedListElement.bs.js | 6 +- .../VirtualizedSectionListElement.bs.js | 4 +- src/types/AccessibilityActionEvent.bs.js | 2 +- src/types/DOMAPI.bs.js | 50 +- src/types/DOMAPI.res | 44 +- 57 files changed, 848 insertions(+), 1671 deletions(-) diff --git a/.gitignore b/.gitignore index be6b1be73..4763d856b 100644 --- a/.gitignore +++ b/.gitignore @@ -9,6 +9,5 @@ node_modules # ReScript artifacts # *.bs.js # we do want this files to ensure zero-cost .bsb.lock -**/lib/bs -**/lib/ocaml +lib/ **/.merlin diff --git a/package-lock.json b/package-lock.json index cfd9e3474..659db0b8c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,21 +9,21 @@ "version": "0.83.0", "license": "MIT", "devDependencies": { - "@rescript/react": "^0.14.2", + "@rescript/react": "^0.15.0", "husky": "^8.0.0", "lint-staged": "^13.0.0", "npm-run-all": "^4.0.0", "npmpub": "^5.0.0", "prettier": "^2.0.0", - "rescript": "^11.1.0" + "rescript": "^12.2.0" }, "funding": { "url": "https://github.com/rescript-react-native/rescript-react-native?sponsor=1" }, "peerDependencies": { - "@rescript/react": ">=0.14.2", + "@rescript/react": ">=0.15.0", "react-native": ">=0.83.0", - "rescript": ">=11.0.0" + "rescript": ">=12.0.0" } }, "node_modules/@babel/code-frame": { @@ -169,15 +169,6 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.28.6.tgz", - "integrity": "sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-string-parser": { "version": "7.27.1", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", @@ -206,22 +197,22 @@ } }, "node_modules/@babel/helpers": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.6.tgz", - "integrity": "sha512-xOBvwq86HHdB7WUDTfKfT/Vuxh7gElQ+Sfti2Cy6yIWNW05P8iUslOVcZ4/sKbE+/jQaukQAdz/gf3724kYdqw==", + "version": "7.29.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.2.tgz", + "integrity": "sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw==", "license": "MIT", "dependencies": { "@babel/template": "^7.28.6", - "@babel/types": "^7.28.6" + "@babel/types": "^7.29.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.0.tgz", - "integrity": "sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww==", + "version": "7.29.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.2.tgz", + "integrity": "sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==", "license": "MIT", "dependencies": { "@babel/types": "^7.29.0" @@ -233,202 +224,10 @@ "node": ">=6.0.0" } }, - "node_modules/@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-bigint": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", - "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-attributes": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.28.6.tgz", - "integrity": "sha512-jiLC0ma9XkQT3TKJ9uYvlakm66Pamywo+qwL+oL8HJOvc6TWdZXVfhqJr8CCzbSGUAbDOzlGHJC1U+vRfLQDvw==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.28.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/runtime": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.6.tgz", - "integrity": "sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==", + "version": "7.29.2", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.2.tgz", + "integrity": "sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g==", "license": "MIT", "engines": { "node": ">=6.9.0" @@ -466,25 +265,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/traverse--for-generate-function-map": { - "name": "@babel/traverse", - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz", - "integrity": "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==", - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.29.0", - "@babel/generator": "^7.29.0", - "@babel/helper-globals": "^7.28.0", - "@babel/parser": "^7.29.0", - "@babel/template": "^7.28.6", - "@babel/types": "^7.29.0", - "debug": "^4.3.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/types": { "version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz", @@ -507,75 +287,6 @@ "node": ">=12" } }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "license": "ISC", - "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/create-cache-key-function": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/create-cache-key-function/-/create-cache-key-function-29.7.0.tgz", - "integrity": "sha512-4QqS3LY5PBmTRHj9sAg1HLoPzqAI0uOX6wI/TRqHIcOxlFidy6YEmCQJk6FSZjNLGCeubDMfmkWL+qaLKhSGQA==", - "license": "MIT", - "dependencies": { - "@jest/types": "^29.6.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/environment": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", - "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", - "license": "MIT", - "dependencies": { - "@jest/fake-timers": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-mock": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/fake-timers": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", - "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", - "license": "MIT", - "dependencies": { - "@jest/types": "^29.6.3", - "@sinonjs/fake-timers": "^10.0.2", - "@types/node": "*", - "jest-message-util": "^29.7.0", - "jest-mock": "^29.7.0", - "jest-util": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, "node_modules/@jest/schemas": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", @@ -588,93 +299,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@jest/transform": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", - "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", - "license": "MIT", - "dependencies": { - "@babel/core": "^7.11.6", - "@jest/types": "^29.6.3", - "@jridgewell/trace-mapping": "^0.3.18", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^2.0.0", - "fast-json-stable-stringify": "^2.1.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "jest-regex-util": "^29.6.3", - "jest-util": "^29.7.0", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "write-file-atomic": "^4.0.2" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/transform/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/transform/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/transform/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/transform/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "license": "MIT" - }, - "node_modules/@jest/transform/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@jest/types": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", @@ -839,9 +463,9 @@ } }, "node_modules/@octokit/endpoint": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-11.0.2.tgz", - "integrity": "sha512-4zCpzP1fWc7QlqunZ5bSEjxc6yLAlRTnDwKtgXfcI/FxxGoqedDG8V2+xJ60bV2kODqcGB+nATdtap/XYq2NZQ==", + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-11.0.3.tgz", + "integrity": "sha512-FWFlNxghg4HrXkD3ifYbS/IdL/mDHjh9QcsNyhQjN8dplUoZbejsdpmuqdA76nxj2xoWPs7p8uX2SNr9rYu0Ag==", "dev": true, "license": "MIT", "dependencies": { @@ -936,16 +560,17 @@ } }, "node_modules/@octokit/request": { - "version": "10.0.7", - "resolved": "https://registry.npmjs.org/@octokit/request/-/request-10.0.7.tgz", - "integrity": "sha512-v93h0i1yu4idj8qFPZwjehoJx4j3Ntn+JhXsdJrG9pYaX6j/XRz2RmasMUHtNgQD39nrv/VwTWSqK0RNXR8upA==", + "version": "10.0.8", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-10.0.8.tgz", + "integrity": "sha512-SJZNwY9pur9Agf7l87ywFi14W+Hd9Jg6Ifivsd33+/bGUQIjNujdFiXII2/qSlN2ybqUHfp5xpekMEjIBTjlSw==", "dev": true, "license": "MIT", "dependencies": { - "@octokit/endpoint": "^11.0.2", + "@octokit/endpoint": "^11.0.3", "@octokit/request-error": "^7.0.2", "@octokit/types": "^16.0.0", "fast-content-type-parse": "^3.0.0", + "json-with-bigint": "^3.5.3", "universal-user-agent": "^7.0.2" }, "engines": { @@ -1170,55 +795,55 @@ } }, "node_modules/@react-native/assets-registry": { - "version": "0.83.1", - "resolved": "https://registry.npmjs.org/@react-native/assets-registry/-/assets-registry-0.83.1.tgz", - "integrity": "sha512-AT7/T6UwQqO39bt/4UL5EXvidmrddXrt0yJa7ENXndAv+8yBzMsZn6fyiax6+ERMt9GLzAECikv3lj22cn2wJA==", + "version": "0.85.2", + "resolved": "https://registry.npmjs.org/@react-native/assets-registry/-/assets-registry-0.85.2.tgz", + "integrity": "sha512-kauC/oPaxklU4Y+u9gBfCBJm51qX6WBZq4xx0USCdimtp+G8+554kpygfSWIjoqCJa2o06bWxBEjesiuCv+LzA==", "license": "MIT", "engines": { - "node": ">= 20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" } }, "node_modules/@react-native/codegen": { - "version": "0.83.1", - "resolved": "https://registry.npmjs.org/@react-native/codegen/-/codegen-0.83.1.tgz", - "integrity": "sha512-FpRxenonwH+c2a5X5DZMKUD7sCudHxB3eSQPgV9R+uxd28QWslyAWrpnJM/Az96AEksHnymDzEmzq2HLX5nb+g==", + "version": "0.85.2", + "resolved": "https://registry.npmjs.org/@react-native/codegen/-/codegen-0.85.2.tgz", + "integrity": "sha512-XCginmxh0//++EXVOEJHBVZxHla294FzLCFF6jXwAUjvXVhqyIKyxhABfz+r4OOmaiuWk4Rtd4arqdAzeHeprg==", "license": "MIT", "dependencies": { "@babel/core": "^7.25.2", - "@babel/parser": "^7.25.3", - "glob": "^7.1.1", - "hermes-parser": "0.32.0", + "@babel/parser": "^7.29.0", + "hermes-parser": "0.33.3", "invariant": "^2.2.4", "nullthrows": "^1.1.1", + "tinyglobby": "^0.2.15", "yargs": "^17.6.2" }, "engines": { - "node": ">= 20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" }, "peerDependencies": { "@babel/core": "*" } }, "node_modules/@react-native/community-cli-plugin": { - "version": "0.83.1", - "resolved": "https://registry.npmjs.org/@react-native/community-cli-plugin/-/community-cli-plugin-0.83.1.tgz", - "integrity": "sha512-FqR1ftydr08PYlRbrDF06eRiiiGOK/hNmz5husv19sK6iN5nHj1SMaCIVjkH/a5vryxEddyFhU6PzO/uf4kOHg==", + "version": "0.85.2", + "resolved": "https://registry.npmjs.org/@react-native/community-cli-plugin/-/community-cli-plugin-0.85.2.tgz", + "integrity": "sha512-3KLgSg1kHvBpr93zMaQhvfYTgnCw7yZRED+3J4dMcYjfSjtD0Wf8SofU6uBmAw9JaVYvP43lpdwUpI4p0+ABsg==", "license": "MIT", "dependencies": { - "@react-native/dev-middleware": "0.83.1", + "@react-native/dev-middleware": "0.85.2", "debug": "^4.4.0", "invariant": "^2.2.4", - "metro": "^0.83.3", - "metro-config": "^0.83.3", - "metro-core": "^0.83.3", + "metro": "^0.84.0", + "metro-config": "^0.84.0", + "metro-core": "^0.84.0", "semver": "^7.1.3" }, "engines": { - "node": ">= 20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" }, "peerDependencies": { "@react-native-community/cli": "*", - "@react-native/metro-config": "*" + "@react-native/metro-config": "0.85.2" }, "peerDependenciesMeta": { "@react-native-community/cli": { @@ -1253,38 +878,62 @@ "license": "MIT" }, "node_modules/@react-native/debugger-frontend": { - "version": "0.83.1", - "resolved": "https://registry.npmjs.org/@react-native/debugger-frontend/-/debugger-frontend-0.83.1.tgz", - "integrity": "sha512-01Rn3goubFvPjHXONooLmsW0FLxJDKIUJNOlOS0cPtmmTIx9YIjxhe/DxwHXGk7OnULd7yl3aYy7WlBsEd5Xmg==", + "version": "0.85.2", + "resolved": "https://registry.npmjs.org/@react-native/debugger-frontend/-/debugger-frontend-0.85.2.tgz", + "integrity": "sha512-j+0b9H5f5hGTLQxHIhJU/b/W6ijuxJF+ZTLHB0se2kzUBNxFKd7DkIc6753qk3CJdiv55vxG3XDgmlpbHxOpmA==", "license": "BSD-3-Clause", "engines": { - "node": ">= 20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" } }, "node_modules/@react-native/debugger-shell": { - "version": "0.83.1", - "resolved": "https://registry.npmjs.org/@react-native/debugger-shell/-/debugger-shell-0.83.1.tgz", - "integrity": "sha512-d+0w446Hxth5OP/cBHSSxOEpbj13p2zToUy6e5e3tTERNJ8ueGlW7iGwGTrSymNDgXXFjErX+dY4P4/3WokPIQ==", + "version": "0.85.2", + "resolved": "https://registry.npmjs.org/@react-native/debugger-shell/-/debugger-shell-0.85.2.tgz", + "integrity": "sha512-r5BkhqPMfg3LmaZS5zadHmBNVH5h4bhSpv4BEPGfK4gat9HABAMzUzybi+2wpgU3SoHxnyKGdExEJvoqVcjeRg==", "license": "MIT", "dependencies": { "cross-spawn": "^7.0.6", + "debug": "^4.4.0", "fb-dotslash": "0.5.8" }, "engines": { - "node": ">= 20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" + } + }, + "node_modules/@react-native/debugger-shell/node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, + "node_modules/@react-native/debugger-shell/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, "node_modules/@react-native/dev-middleware": { - "version": "0.83.1", - "resolved": "https://registry.npmjs.org/@react-native/dev-middleware/-/dev-middleware-0.83.1.tgz", - "integrity": "sha512-QJaSfNRzj3Lp7MmlCRgSBlt1XZ38xaBNXypXAp/3H3OdFifnTZOeYOpFmcpjcXYnDqkxetuwZg8VL65SQhB8dg==", + "version": "0.85.2", + "resolved": "https://registry.npmjs.org/@react-native/dev-middleware/-/dev-middleware-0.85.2.tgz", + "integrity": "sha512-3J+NaDUg+QEfDeLAUzgaWhpaxEg78g+KwbydlDCewh2G6WnHpsty8XooruxNHzyAsqVWywZMrzmbn78Ctc1O9Q==", "license": "MIT", "dependencies": { "@isaacs/ttlcache": "^1.4.1", - "@react-native/debugger-frontend": "0.83.1", - "@react-native/debugger-shell": "0.83.1", + "@react-native/debugger-frontend": "0.85.2", + "@react-native/debugger-shell": "0.85.2", "chrome-launcher": "^0.15.2", - "chromium-edge-launcher": "^0.2.0", + "chromium-edge-launcher": "^0.3.0", "connect": "^3.6.5", "debug": "^4.4.0", "invariant": "^2.2.4", @@ -1294,7 +943,7 @@ "ws": "^7.5.10" }, "engines": { - "node": ">= 20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" } }, "node_modules/@react-native/dev-middleware/node_modules/debug": { @@ -1321,45 +970,45 @@ "license": "MIT" }, "node_modules/@react-native/gradle-plugin": { - "version": "0.83.1", - "resolved": "https://registry.npmjs.org/@react-native/gradle-plugin/-/gradle-plugin-0.83.1.tgz", - "integrity": "sha512-6ESDnwevp1CdvvxHNgXluil5OkqbjkJAkVy7SlpFsMGmVhrSxNAgD09SSRxMNdKsnLtzIvMsFCzyHLsU/S4PtQ==", + "version": "0.85.2", + "resolved": "https://registry.npmjs.org/@react-native/gradle-plugin/-/gradle-plugin-0.85.2.tgz", + "integrity": "sha512-YXBOLeAqFrv7XwUeBPTKZeOV1FIxn4AW7UAEitScf3ibC8bu8+6NpJu4HWgbNQHg7vDbbTZVbcOl8EwGxsSq2w==", "license": "MIT", "engines": { - "node": ">= 20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" } }, "node_modules/@react-native/js-polyfills": { - "version": "0.83.1", - "resolved": "https://registry.npmjs.org/@react-native/js-polyfills/-/js-polyfills-0.83.1.tgz", - "integrity": "sha512-qgPpdWn/c5laA+3WoJ6Fak8uOm7CG50nBsLlPsF8kbT7rUHIVB9WaP6+GPsoKV/H15koW7jKuLRoNVT7c3Ht3w==", + "version": "0.85.2", + "resolved": "https://registry.npmjs.org/@react-native/js-polyfills/-/js-polyfills-0.85.2.tgz", + "integrity": "sha512-esGEAmKVM40DV/yVmNljCKZTIeUo7qXqc+Hwffkv3TG+b3E24xyFovHrbP98gGxZr2ZsEyx+2sKLdXF5asY5nw==", "license": "MIT", "engines": { - "node": ">= 20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" } }, "node_modules/@react-native/normalize-colors": { - "version": "0.83.1", - "resolved": "https://registry.npmjs.org/@react-native/normalize-colors/-/normalize-colors-0.83.1.tgz", - "integrity": "sha512-84feABbmeWo1kg81726UOlMKAhcQyFXYz2SjRKYkS78QmfhVDhJ2o/ps1VjhFfBz0i/scDwT1XNv9GwmRIghkg==", + "version": "0.85.2", + "resolved": "https://registry.npmjs.org/@react-native/normalize-colors/-/normalize-colors-0.85.2.tgz", + "integrity": "sha512-svuOLtjbFGXDdHsriHXuND5FgHg7XlkOXCbH/8+X4t76YLH6qSTffSIQQrKLDL5mn4EFU+Oh/PNO0/FfpnTOTg==", "license": "MIT" }, "node_modules/@react-native/virtualized-lists": { - "version": "0.83.1", - "resolved": "https://registry.npmjs.org/@react-native/virtualized-lists/-/virtualized-lists-0.83.1.tgz", - "integrity": "sha512-MdmoAbQUTOdicCocm5XAFDJWsswxk7hxa6ALnm6Y88p01HFML0W593hAn6qOt9q6IM1KbAcebtH6oOd4gcQy8w==", + "version": "0.85.2", + "resolved": "https://registry.npmjs.org/@react-native/virtualized-lists/-/virtualized-lists-0.85.2.tgz", + "integrity": "sha512-wmVKpAlcr+UB0L5SpbrV865EdleUP7I5+X+48e1aRsQK8q+wsTRBXeUwWVip/1l+HZwlZFeO8iOILJ16VRu0Cw==", "license": "MIT", "dependencies": { "invariant": "^2.2.4", "nullthrows": "^1.1.1" }, "engines": { - "node": ">= 20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" }, "peerDependencies": { "@types/react": "^19.2.0", "react": "*", - "react-native": "*" + "react-native": "0.85.2" }, "peerDependenciesMeta": { "@types/react": { @@ -1367,15 +1016,109 @@ } } }, + "node_modules/@rescript/darwin-arm64": { + "version": "12.2.0", + "resolved": "https://registry.npmjs.org/@rescript/darwin-arm64/-/darwin-arm64-12.2.0.tgz", + "integrity": "sha512-xc3K/J7Ujl1vPiFY2009mRf3kWRlUe/VZyJWprseKxlcEtUQv89ter7r6pY+YFbtYvA/fcaEncL9CVGEdattAg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "(LGPL-3.0-or-later AND MIT)", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=20.11.0" + } + }, + "node_modules/@rescript/darwin-x64": { + "version": "12.2.0", + "resolved": "https://registry.npmjs.org/@rescript/darwin-x64/-/darwin-x64-12.2.0.tgz", + "integrity": "sha512-qqcTvnlSeoKkywLjG7cXfYvKZ1e4Gz2kUKcD6SiqDgCqm8TF+spwlFAiM6sloRUOFsc0bpC/0R0B3yr01FCB1A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "(LGPL-3.0-or-later AND MIT)", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=20.11.0" + } + }, + "node_modules/@rescript/linux-arm64": { + "version": "12.2.0", + "resolved": "https://registry.npmjs.org/@rescript/linux-arm64/-/linux-arm64-12.2.0.tgz", + "integrity": "sha512-ODmpG3ji+Nj/8d5yvXkeHlfKkmbw1Q4t1iIjVuNwtmFpz7TiEa7n/sQqoYdE+WzbDX3DoJfmJNbp3Ob7qCUoOg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "(LGPL-3.0-or-later AND MIT)", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.11.0" + } + }, + "node_modules/@rescript/linux-x64": { + "version": "12.2.0", + "resolved": "https://registry.npmjs.org/@rescript/linux-x64/-/linux-x64-12.2.0.tgz", + "integrity": "sha512-2W9Y9/g19Y4F/subl8yV3T8QBG2oRaP+HciNRcBjptyEdw9LmCKH8+rhWO6sp3E+nZLwoE2IAkwH0WKV3wqlxQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "(LGPL-3.0-or-later AND MIT)", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.11.0" + } + }, "node_modules/@rescript/react": { - "version": "0.14.2", - "resolved": "https://registry.npmjs.org/@rescript/react/-/react-0.14.2.tgz", - "integrity": "sha512-gRmWuHWQIdH0zgueEq1p5oMHwpsXLBpD3zZo+J9kop8z8CCQQtlxnGZbfBoNIdciHGbE0+oYpc5PaCGYskuLjQ==", + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@rescript/react/-/react-0.15.0.tgz", + "integrity": "sha512-qDrrgxYzxRL/pjug617u5Q4+aqEfV5g+GQnd+eCWb0XqPrKucaDzN5rirDUZPg8UrqU/AvCP8Ev5cFd+MJx88A==", "dev": true, "license": "MIT", "peerDependencies": { - "react": ">=19.1.0", - "react-dom": ">=19.1.0" + "@rescript/runtime": ">=12.0.0", + "react": ">=19.2.0", + "react-dom": ">=19.2.0" + } + }, + "node_modules/@rescript/runtime": { + "version": "12.2.0", + "resolved": "https://registry.npmjs.org/@rescript/runtime/-/runtime-12.2.0.tgz", + "integrity": "sha512-NwfljDRq1rjFPHUaca1nzFz13xsa9ZGkBkLvMhvVgavJT5+A4rMcLu8XAaVTi/oAhO/tlHf9ZDoOTF1AfyAk9Q==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@rescript/win32-x64": { + "version": "12.2.0", + "resolved": "https://registry.npmjs.org/@rescript/win32-x64/-/win32-x64-12.2.0.tgz", + "integrity": "sha512-fhf8CBj3p1lkIXPeNko3mVTKQfXXm4BoxJtR1xAXxUn43wDpd8Lox4w8/EPBbbW6C/YFQW6H7rtpY+2AKuNaDA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "(LGPL-3.0-or-later AND MIT)", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=20.11.0" } }, "node_modules/@sinclair/typebox": { @@ -1437,74 +1180,6 @@ "node": ">=0.10.0" } }, - "node_modules/@sinonjs/commons": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", - "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", - "license": "BSD-3-Clause", - "dependencies": { - "type-detect": "4.0.8" - } - }, - "node_modules/@sinonjs/fake-timers": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", - "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", - "license": "BSD-3-Clause", - "dependencies": { - "@sinonjs/commons": "^3.0.0" - } - }, - "node_modules/@types/babel__core": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", - "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "node_modules/@types/babel__generator": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", - "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", - "license": "MIT", - "dependencies": { - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__template": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", - "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__traverse": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", - "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==", - "license": "MIT", - "dependencies": { - "@babel/types": "^7.28.2" - } - }, - "node_modules/@types/graceful-fs": { - "version": "4.1.9", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", - "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/istanbul-lib-coverage": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", @@ -1530,20 +1205,14 @@ } }, "node_modules/@types/node": { - "version": "25.2.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-25.2.0.tgz", - "integrity": "sha512-DZ8VwRFUNzuqJ5khrvwMXHmvPe+zGayJhr2CDNiKB1WBE1ST8Djl00D0IC4vvNmHMdj6DlbYRIaFE7WHjlDl5w==", + "version": "25.6.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-25.6.0.tgz", + "integrity": "sha512-+qIYRKdNYJwY3vRCZMdJbPLJAtGjQBudzZzdzwQYkEPQd+PJGixUL5QfvCLDaULoLv+RhT3LDkwEfKaAkgSmNQ==", "license": "MIT", "dependencies": { - "undici-types": "~7.16.0" + "undici-types": "~7.19.0" } }, - "node_modules/@types/stack-utils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", - "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", - "license": "MIT" - }, "node_modules/@types/yargs": { "version": "17.0.35", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.35.tgz", @@ -1572,22 +1241,22 @@ } }, "node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-2.0.0.tgz", + "integrity": "sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng==", "license": "MIT", "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" + "mime-types": "^3.0.0", + "negotiator": "^1.0.0" }, "engines": { "node": ">= 0.6" } }, "node_modules/acorn": { - "version": "8.15.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", - "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.16.0.tgz", + "integrity": "sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==", "license": "MIT", "bin": { "acorn": "bin/acorn" @@ -1649,28 +1318,6 @@ "node": ">=4" } }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "license": "ISC", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "license": "MIT", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, "node_modules/array-buffer-byte-length": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", @@ -1754,195 +1401,41 @@ "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/available-typed-arrays": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", - "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "possible-typed-array-names": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/babel-jest": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", - "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", - "license": "MIT", - "dependencies": { - "@jest/transform": "^29.7.0", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^29.6.3", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.8.0" - } - }, - "node_modules/babel-jest/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/babel-jest/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/babel-jest/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/babel-jest/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "license": "MIT" - }, - "node_modules/babel-jest/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "license": "BSD-3-Clause", - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-jest-hoist": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", - "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", - "license": "MIT", - "dependencies": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.1.14", - "@types/babel__traverse": "^7.0.6" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/babel-plugin-syntax-hermes-parser": { - "version": "0.32.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-hermes-parser/-/babel-plugin-syntax-hermes-parser-0.32.0.tgz", - "integrity": "sha512-m5HthL++AbyeEA2FcdwOLfVFvWYECOBObLHNqdR8ceY4TsEdn4LdX2oTvbB2QJSSElE2AWA/b2MXZ/PF/CqLZg==", - "license": "MIT", - "dependencies": { - "hermes-parser": "0.32.0" - } - }, - "node_modules/babel-preset-current-node-syntax": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.2.0.tgz", - "integrity": "sha512-E/VlAEzRrsLEb2+dv8yp3bo4scof3l9nR4lrld+Iy5NyVqgVYUJnDAmunkhPMisRI32Qc4iRiz425d8vM++2fg==", - "license": "MIT", - "dependencies": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-import-attributes": "^7.24.7", - "@babel/plugin-syntax-import-meta": "^7.10.4", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5" - }, - "peerDependencies": { - "@babel/core": "^7.0.0 || ^8.0.0-0" + "license": "MIT", + "engines": { + "node": ">= 0.4" } }, - "node_modules/babel-preset-jest": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", - "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dev": true, "license": "MIT", "dependencies": { - "babel-plugin-jest-hoist": "^29.6.3", - "babel-preset-current-node-syntax": "^1.0.0" + "possible-typed-array-names": "^1.0.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 0.4" }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/babel-plugin-syntax-hermes-parser": { + "version": "0.33.3", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-hermes-parser/-/babel-plugin-syntax-hermes-parser-0.33.3.tgz", + "integrity": "sha512-/Z9xYdaJ1lC0pT9do6TqCqhOSLfZ5Ot8D5za1p+feEfWYupCOfGbhhEXN9r2ZgJtDNUNRw/Z+T2CvAGKBqtqWA==", + "license": "MIT", + "dependencies": { + "hermes-parser": "0.33.3" } }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, "license": "MIT" }, "node_modules/base64-js": { @@ -1966,12 +1459,15 @@ "license": "MIT" }, "node_modules/baseline-browser-mapping": { - "version": "2.9.19", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.9.19.tgz", - "integrity": "sha512-ipDqC8FrAl/76p2SSWKSI+H9tFwm7vYqXQrItCuiVPt26Km0jS+NzSsBWAaBusvSbQcfJG+JitdMm+wZAgTYqg==", + "version": "2.10.21", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.21.tgz", + "integrity": "sha512-Q+rUQ7Uz8AHM7DEaNdwvfFCTq7a43lNTzuS94eiWqwyxfV/wJv+oUivef51T91mmRY4d4A1u9rcSvkeufCVXlA==", "license": "Apache-2.0", "bin": { - "baseline-browser-mapping": "dist/cli.js" + "baseline-browser-mapping": "dist/cli.cjs" + }, + "engines": { + "node": ">=6.0.0" } }, "node_modules/before-after-hook": { @@ -1982,9 +1478,10 @@ "license": "Apache-2.0" }, "node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", + "dev": true, "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", @@ -2004,9 +1501,9 @@ } }, "node_modules/browserslist": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz", - "integrity": "sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==", + "version": "4.28.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.2.tgz", + "integrity": "sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==", "funding": [ { "type": "opencollective", @@ -2024,11 +1521,11 @@ "license": "MIT", "peer": true, "dependencies": { - "baseline-browser-mapping": "^2.9.0", - "caniuse-lite": "^1.0.30001759", - "electron-to-chromium": "^1.5.263", - "node-releases": "^2.0.27", - "update-browserslist-db": "^1.2.0" + "baseline-browser-mapping": "^2.10.12", + "caniuse-lite": "^1.0.30001782", + "electron-to-chromium": "^1.5.328", + "node-releases": "^2.0.36", + "update-browserslist-db": "^1.2.3" }, "bin": { "browserslist": "cli.js" @@ -2053,15 +1550,15 @@ "license": "MIT" }, "node_modules/call-bind": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", - "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.9.tgz", + "integrity": "sha512-a/hy+pNsFUTR+Iz8TCJvXudKVLAnz/DyeSUo10I5yvFDQJBFU2s9uqQpoSrJlroHUKoKqzg+epxyP9lqFdzfBQ==", "dev": true, "license": "MIT", "dependencies": { - "call-bind-apply-helpers": "^1.0.0", - "es-define-property": "^1.0.0", - "get-intrinsic": "^1.2.4", + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "get-intrinsic": "^1.3.0", "set-function-length": "^1.2.2" }, "engines": { @@ -2103,18 +1600,21 @@ } }, "node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "license": "MIT", "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/caniuse-lite": { - "version": "1.0.30001767", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001767.tgz", - "integrity": "sha512-34+zUAMhSH+r+9eKmYG+k2Rpt8XttfE4yXAjoZvkAPs15xcYQhyBYdalJ65BzivAvGRMViEjy6oKr/S91loekQ==", + "version": "1.0.30001790", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001790.tgz", + "integrity": "sha512-bOoxfJPyYo+ds6W0YfptaCWbFnJYjh2Y1Eow5lRv+vI2u8ganPZqNm1JwNh0t2ELQCqIWg4B3dWEusgAmsoyOw==", "funding": [ { "type": "opencollective", @@ -2173,33 +1673,23 @@ } }, "node_modules/chromium-edge-launcher": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/chromium-edge-launcher/-/chromium-edge-launcher-0.2.0.tgz", - "integrity": "sha512-JfJjUnq25y9yg4FABRRVPmBGWPZZi+AQXT4mxupb67766/0UlhG8PAZCz6xzEMXTbW3CsSoE8PcCWA49n35mKg==", + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/chromium-edge-launcher/-/chromium-edge-launcher-0.3.0.tgz", + "integrity": "sha512-p03azHlGjtyRvFEee3cyvtsRYdniSkwjkzmM/KmVnqT5d7QkkwpJBhis/zCLMYdQMVJ5tt140TBNqqrZPaWeFA==", "license": "Apache-2.0", "dependencies": { "@types/node": "*", "escape-string-regexp": "^4.0.0", "is-wsl": "^2.2.0", "lighthouse-logger": "^1.0.0", - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" + "mkdirp": "^1.0.4" } }, "node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "license": "MIT", - "engines": { - "node": ">=8" - } + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "license": "MIT" }, "node_modules/cli-cursor": { "version": "4.0.0", @@ -2377,6 +1867,7 @@ "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, "license": "MIT" }, "node_modules/connect": { @@ -2634,9 +2125,9 @@ "license": "MIT" }, "node_modules/electron-to-chromium": { - "version": "1.5.286", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.286.tgz", - "integrity": "sha512-9tfDXhJ4RKFNerfjdCcZfufu49vg620741MNs26a9+bhLThdB+plgMeou98CAaHu/WATj2iHOOHTp1hWtABj2A==", + "version": "1.5.344", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.344.tgz", + "integrity": "sha512-4MxfbmNDm+KPh066EZy+eUnkcDPcZ35wNmOWzFuh/ijvHsve6kbLTLURy88uCNK5FbpN+yk2nQY6BYh1GEt+wg==", "license": "ISC" }, "node_modules/emoji-regex": { @@ -2685,9 +2176,9 @@ } }, "node_modules/es-abstract": { - "version": "1.24.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.1.tgz", - "integrity": "sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw==", + "version": "1.24.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.2.tgz", + "integrity": "sha512-2FpH9Q5i2RRwyEP1AylXe6nYLR5OhaJTZwmlcP0dL/+JCbgg7yyEo/sEK6HeGZRf3dFpWwThaRHVApXSkW3xeg==", "dev": true, "license": "MIT", "dependencies": { @@ -2857,19 +2348,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "license": "BSD-2-Clause", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/etag": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", @@ -2942,12 +2420,6 @@ ], "license": "MIT" }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "license": "MIT" - }, "node_modules/fb-dotslash": { "version": "0.5.8", "resolved": "https://registry.npmjs.org/fb-dotslash/-/fb-dotslash-0.5.8.tgz", @@ -3014,19 +2486,6 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT" }, - "node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "license": "MIT", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/flow-enums-runtime": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/flow-enums-runtime/-/flow-enums-runtime-0.0.6.tgz", @@ -3072,40 +2531,13 @@ "rimraf": "^2.2.8" } }, - "node_modules/fs-extra/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "deprecated": "Rimraf versions prior to v4 are no longer supported", - "dev": true, - "license": "ISC", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true, "license": "ISC" }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, "node_modules/function-bind": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", @@ -3200,15 +2632,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "license": "MIT", - "engines": { - "node": ">=8.0.0" - } - }, "node_modules/get-proto": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", @@ -3273,6 +2696,7 @@ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me", + "dev": true, "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", @@ -3496,9 +2920,9 @@ } }, "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.3.tgz", + "integrity": "sha512-ej4AhfhfL2Q2zpMmLo7U1Uv9+PyhIZpgQLGT1F9miIGmiCJIoCgSmczFdrc97mWT4kVY72KA+WnnhJ5pghSvSg==", "dev": true, "license": "MIT", "dependencies": { @@ -3509,24 +2933,24 @@ } }, "node_modules/hermes-compiler": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/hermes-compiler/-/hermes-compiler-0.14.0.tgz", - "integrity": "sha512-clxa193o+GYYwykWVFfpHduCATz8fR5jvU7ngXpfKHj+E9hr9vjLNtdLSEe8MUbObvVexV3wcyxQ00xTPIrB1Q==", + "version": "250829098.0.10", + "resolved": "https://registry.npmjs.org/hermes-compiler/-/hermes-compiler-250829098.0.10.tgz", + "integrity": "sha512-TcRlZ0/TlyfJqquRFAWoyElVNnkdYRi/sEp4/Qy8/GYxjg8j2cS9D4MjuaQ+qimkmLN7AmO+44IznRf06mAr0w==", "license": "MIT" }, "node_modules/hermes-estree": { - "version": "0.32.0", - "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.32.0.tgz", - "integrity": "sha512-KWn3BqnlDOl97Xe1Yviur6NbgIZ+IP+UVSpshlZWkq+EtoHg6/cwiDj/osP9PCEgFE15KBm1O55JRwbMEm5ejQ==", + "version": "0.33.3", + "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.33.3.tgz", + "integrity": "sha512-6kzYZHCk8Fy1Uc+t3HGYyJn3OL4aeqKLTyina4UFtWl8I0kSL7OmKThaiX+Uh2f8nGw3mo4Ifxg0M5Zk3/Oeqg==", "license": "MIT" }, "node_modules/hermes-parser": { - "version": "0.32.0", - "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.32.0.tgz", - "integrity": "sha512-g4nBOWFpuiTqjR3LZdRxKUkij9iyveWeuks7INEsMX741f3r9xxrOe8TeQfUxtda0eXmiIFiMQzoeSQEno33Hw==", + "version": "0.33.3", + "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.33.3.tgz", + "integrity": "sha512-Yg3HgaG4CqgyowtYjX/FsnPAuZdHOqSMtnbpylbptsQ9nwwSKsy6uRWcGO5RK0EqiX12q8HvDWKgeAVajRO5DA==", "license": "MIT", "dependencies": { - "hermes-estree": "0.32.0" + "hermes-estree": "0.33.3" } }, "node_modules/hosted-git-info": { @@ -3619,20 +3043,12 @@ "node": ">=16.x" } }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "license": "MIT", - "engines": { - "node": ">=0.8.19" - } - }, "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, "license": "ISC", "dependencies": { "once": "^1.3.0", @@ -4122,198 +3538,18 @@ "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", "dev": true, - "license": "MIT" - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "license": "ISC" - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", - "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", - "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", - "license": "BSD-3-Clause", - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/jest-environment-node": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", - "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", - "license": "MIT", - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/fake-timers": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-mock": "^29.7.0", - "jest-util": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-get-type": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", - "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", - "license": "MIT", - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-haste-map": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", - "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", - "license": "MIT", - "dependencies": { - "@jest/types": "^29.6.3", - "@types/graceful-fs": "^4.1.3", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^29.6.3", - "jest-util": "^29.7.0", - "jest-worker": "^29.7.0", - "micromatch": "^4.0.4", - "walker": "^1.0.8" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" - } - }, - "node_modules/jest-message-util": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", - "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^29.6.3", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-message-util/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-message-util/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-message-util/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-message-util/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "license": "MIT" - }, - "node_modules/jest-message-util/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-mock": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", - "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", - "license": "MIT", - "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-util": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } + "license": "MIT" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "license": "ISC" }, - "node_modules/jest-regex-util": { + "node_modules/jest-get-type": { "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", - "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", "license": "MIT", "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" @@ -4367,6 +3603,21 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/jest-util/node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "node_modules/jest-util/node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -4429,18 +3680,6 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/jest-validate/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/jest-validate/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -4515,19 +3754,6 @@ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", "license": "MIT" }, - "node_modules/js-yaml": { - "version": "3.14.2", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz", - "integrity": "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==", - "license": "MIT", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, "node_modules/jsc-safe-url": { "version": "0.2.4", "resolved": "https://registry.npmjs.org/jsc-safe-url/-/jsc-safe-url-0.2.4.tgz", @@ -4553,6 +3779,13 @@ "dev": true, "license": "MIT" }, + "node_modules/json-with-bigint": { + "version": "3.5.8", + "resolved": "https://registry.npmjs.org/json-with-bigint/-/json-with-bigint-3.5.8.tgz", + "integrity": "sha512-eq/4KP6K34kwa7TcFdtvnftvHCD9KvHOGGICWwMFc4dOOKF5t4iYqnfLK8otCRCRv06FXOzGGyqE8h8ElMvvdw==", + "dev": true, + "license": "MIT" + }, "node_modules/json5": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", @@ -4699,18 +3932,6 @@ "node": ">=4" } }, - "node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "license": "MIT", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/lodash.throttle": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", @@ -4818,19 +4039,19 @@ "license": "MIT" }, "node_modules/metro": { - "version": "0.83.3", - "resolved": "https://registry.npmjs.org/metro/-/metro-0.83.3.tgz", - "integrity": "sha512-+rP+/GieOzkt97hSJ0MrPOuAH/jpaS21ZDvL9DJ35QYRDlQcwzcvUlGUf79AnQxq/2NPiS/AULhhM4TKutIt8Q==", + "version": "0.84.3", + "resolved": "https://registry.npmjs.org/metro/-/metro-0.84.3.tgz", + "integrity": "sha512-1h3lbVrE6hGf1e/764HfhPGg/bGrWMJDDh7G2rc4gFYZboVuI40BlG/y+UhtbhQDNlO/csMvrcnK0YrTlHUVew==", "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.24.7", + "@babel/code-frame": "^7.29.0", "@babel/core": "^7.25.2", - "@babel/generator": "^7.25.0", - "@babel/parser": "^7.25.3", - "@babel/template": "^7.25.0", - "@babel/traverse": "^7.25.3", - "@babel/types": "^7.25.2", - "accepts": "^1.3.7", + "@babel/generator": "^7.29.1", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/traverse": "^7.29.0", + "@babel/types": "^7.29.0", + "accepts": "^2.0.0", "chalk": "^4.0.0", "ci-info": "^2.0.0", "connect": "^3.6.5", @@ -4838,25 +4059,25 @@ "error-stack-parser": "^2.0.6", "flow-enums-runtime": "^0.0.6", "graceful-fs": "^4.2.4", - "hermes-parser": "0.32.0", + "hermes-parser": "0.35.0", "image-size": "^1.0.2", "invariant": "^2.2.4", "jest-worker": "^29.7.0", "jsc-safe-url": "^0.2.2", "lodash.throttle": "^4.1.1", - "metro-babel-transformer": "0.83.3", - "metro-cache": "0.83.3", - "metro-cache-key": "0.83.3", - "metro-config": "0.83.3", - "metro-core": "0.83.3", - "metro-file-map": "0.83.3", - "metro-resolver": "0.83.3", - "metro-runtime": "0.83.3", - "metro-source-map": "0.83.3", - "metro-symbolicate": "0.83.3", - "metro-transform-plugins": "0.83.3", - "metro-transform-worker": "0.83.3", - "mime-types": "^2.1.27", + "metro-babel-transformer": "0.84.3", + "metro-cache": "0.84.3", + "metro-cache-key": "0.84.3", + "metro-config": "0.84.3", + "metro-core": "0.84.3", + "metro-file-map": "0.84.3", + "metro-resolver": "0.84.3", + "metro-runtime": "0.84.3", + "metro-source-map": "0.84.3", + "metro-symbolicate": "0.84.3", + "metro-transform-plugins": "0.84.3", + "metro-transform-worker": "0.84.3", + "mime-types": "^3.0.1", "nullthrows": "^1.1.1", "serialize-error": "^2.1.0", "source-map": "^0.5.6", @@ -4868,68 +4089,84 @@ "metro": "src/cli.js" }, "engines": { - "node": ">=20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" } }, "node_modules/metro-babel-transformer": { - "version": "0.83.3", - "resolved": "https://registry.npmjs.org/metro-babel-transformer/-/metro-babel-transformer-0.83.3.tgz", - "integrity": "sha512-1vxlvj2yY24ES1O5RsSIvg4a4WeL7PFXgKOHvXTXiW0deLvQr28ExXj6LjwCCDZ4YZLhq6HddLpZnX4dEdSq5g==", + "version": "0.84.3", + "resolved": "https://registry.npmjs.org/metro-babel-transformer/-/metro-babel-transformer-0.84.3.tgz", + "integrity": "sha512-svAA+yMLpeMiGcz/jKJs4oHpIGEx4nBqNEJ5AGj4CYIg1efvK+A0TjR6tgIuc6tKO5e8JmN/1lglpN2+f3/z/w==", "license": "MIT", "dependencies": { "@babel/core": "^7.25.2", "flow-enums-runtime": "^0.0.6", - "hermes-parser": "0.32.0", + "hermes-parser": "0.35.0", + "metro-cache-key": "0.84.3", "nullthrows": "^1.1.1" }, "engines": { - "node": ">=20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" + } + }, + "node_modules/metro-babel-transformer/node_modules/hermes-estree": { + "version": "0.35.0", + "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.35.0.tgz", + "integrity": "sha512-xVx5Opwy8Oo1I5yGpVRhCvWL/iV3M+ylksSKVNlxxD90cpDpR/AR1jLYqK8HWihm065a6UI3HeyAmYzwS8NOOg==", + "license": "MIT" + }, + "node_modules/metro-babel-transformer/node_modules/hermes-parser": { + "version": "0.35.0", + "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.35.0.tgz", + "integrity": "sha512-9JLjeHxBx8T4CAsydZR49PNZUaix+WpQJwu9p2010lu+7Kwl6D/7wYFFJxoz+aXkaaClp9Zfg6W6/zVlSJORaA==", + "license": "MIT", + "dependencies": { + "hermes-estree": "0.35.0" } }, "node_modules/metro-cache": { - "version": "0.83.3", - "resolved": "https://registry.npmjs.org/metro-cache/-/metro-cache-0.83.3.tgz", - "integrity": "sha512-3jo65X515mQJvKqK3vWRblxDEcgY55Sk3w4xa6LlfEXgQ9g1WgMh9m4qVZVwgcHoLy0a2HENTPCCX4Pk6s8c8Q==", + "version": "0.84.3", + "resolved": "https://registry.npmjs.org/metro-cache/-/metro-cache-0.84.3.tgz", + "integrity": "sha512-0QElxwLaHqLZf+Xqio8QrjVbuXP/8sJfQBGSPiITlKDVXrVLefuzYVSH9Sj+QL6lrPj2gYZd/iwQh1yZuVKnLA==", "license": "MIT", "dependencies": { "exponential-backoff": "^3.1.1", "flow-enums-runtime": "^0.0.6", "https-proxy-agent": "^7.0.5", - "metro-core": "0.83.3" + "metro-core": "0.84.3" }, "engines": { - "node": ">=20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" } }, "node_modules/metro-cache-key": { - "version": "0.83.3", - "resolved": "https://registry.npmjs.org/metro-cache-key/-/metro-cache-key-0.83.3.tgz", - "integrity": "sha512-59ZO049jKzSmvBmG/B5bZ6/dztP0ilp0o988nc6dpaDsU05Cl1c/lRf+yx8m9WW/JVgbmfO5MziBU559XjI5Zw==", + "version": "0.84.3", + "resolved": "https://registry.npmjs.org/metro-cache-key/-/metro-cache-key-0.84.3.tgz", + "integrity": "sha512-TnSL1Fdvrw+2glTdBSRmA5TL8l/i16ECjsrUdf3E5HncA+sNx8KcwDG8r+3ct1UhfYcusJypzZqTN55FZZcwGg==", "license": "MIT", "dependencies": { "flow-enums-runtime": "^0.0.6" }, "engines": { - "node": ">=20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" } }, "node_modules/metro-config": { - "version": "0.83.3", - "resolved": "https://registry.npmjs.org/metro-config/-/metro-config-0.83.3.tgz", - "integrity": "sha512-mTel7ipT0yNjKILIan04bkJkuCzUUkm2SeEaTads8VfEecCh+ltXchdq6DovXJqzQAXuR2P9cxZB47Lg4klriA==", + "version": "0.84.3", + "resolved": "https://registry.npmjs.org/metro-config/-/metro-config-0.84.3.tgz", + "integrity": "sha512-JmCzZWOETR+O22q8oPBWyQppx3roU9EbkbGzD8Gf1jukQ4b5T1fTzqqHruu6K4sTiNq5zVQySmKF6bp4kVARew==", "license": "MIT", "dependencies": { "connect": "^3.6.5", "flow-enums-runtime": "^0.0.6", "jest-validate": "^29.7.0", - "metro": "0.83.3", - "metro-cache": "0.83.3", - "metro-core": "0.83.3", - "metro-runtime": "0.83.3", + "metro": "0.84.3", + "metro-cache": "0.84.3", + "metro-core": "0.84.3", + "metro-runtime": "0.84.3", "yaml": "^2.6.1" }, "engines": { - "node": ">=20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" } }, "node_modules/metro-config/node_modules/yaml": { @@ -4948,23 +4185,23 @@ } }, "node_modules/metro-core": { - "version": "0.83.3", - "resolved": "https://registry.npmjs.org/metro-core/-/metro-core-0.83.3.tgz", - "integrity": "sha512-M+X59lm7oBmJZamc96usuF1kusd5YimqG/q97g4Ac7slnJ3YiGglW5CsOlicTR5EWf8MQFxxjDoB6ytTqRe8Hw==", + "version": "0.84.3", + "resolved": "https://registry.npmjs.org/metro-core/-/metro-core-0.84.3.tgz", + "integrity": "sha512-cc0pvAa80ai1nDmqqz0P59a+0ZqCZ/YHU/3jEekZL6spFnYDfX8iDLdn9FR6kX+67rmzKxHNrbrSRFLX2AYocw==", "license": "MIT", "dependencies": { "flow-enums-runtime": "^0.0.6", "lodash.throttle": "^4.1.1", - "metro-resolver": "0.83.3" + "metro-resolver": "0.84.3" }, "engines": { - "node": ">=20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" } }, "node_modules/metro-file-map": { - "version": "0.83.3", - "resolved": "https://registry.npmjs.org/metro-file-map/-/metro-file-map-0.83.3.tgz", - "integrity": "sha512-jg5AcyE0Q9Xbbu/4NAwwZkmQn7doJCKGW0SLeSJmzNB9Z24jBe0AL2PHNMy4eu0JiKtNWHz9IiONGZWq7hjVTA==", + "version": "0.84.3", + "resolved": "https://registry.npmjs.org/metro-file-map/-/metro-file-map-0.84.3.tgz", + "integrity": "sha512-1cL4m4Jv1yRUt9RJExZQLfccscdlMNOcRG6LHLtmJhf3BG9j3MujPVc7CIpKYdFl+KUl+sdjge6oO3+meKCHQA==", "license": "MIT", "dependencies": { "debug": "^4.4.0", @@ -4978,7 +4215,7 @@ "walker": "^1.0.7" }, "engines": { - "node": ">=20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" } }, "node_modules/metro-file-map/node_modules/debug": { @@ -5005,73 +4242,72 @@ "license": "MIT" }, "node_modules/metro-minify-terser": { - "version": "0.83.3", - "resolved": "https://registry.npmjs.org/metro-minify-terser/-/metro-minify-terser-0.83.3.tgz", - "integrity": "sha512-O2BmfWj6FSfzBLrNCXt/rr2VYZdX5i6444QJU0fFoc7Ljg+Q+iqebwE3K0eTvkI6TRjELsXk1cjU+fXwAR4OjQ==", + "version": "0.84.3", + "resolved": "https://registry.npmjs.org/metro-minify-terser/-/metro-minify-terser-0.84.3.tgz", + "integrity": "sha512-3ofrG2OQyJbO9RNhCfOcl8QU7EE2WrSsnN5dFkuZaJO5+4Imujr9bUXmspeNlXRsOVk0F/rVRbEFH98lFSCkBQ==", "license": "MIT", "dependencies": { "flow-enums-runtime": "^0.0.6", "terser": "^5.15.0" }, "engines": { - "node": ">=20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" } }, "node_modules/metro-resolver": { - "version": "0.83.3", - "resolved": "https://registry.npmjs.org/metro-resolver/-/metro-resolver-0.83.3.tgz", - "integrity": "sha512-0js+zwI5flFxb1ktmR///bxHYg7OLpRpWZlBBruYG8OKYxeMP7SV0xQ/o/hUelrEMdK4LJzqVtHAhBm25LVfAQ==", + "version": "0.84.3", + "resolved": "https://registry.npmjs.org/metro-resolver/-/metro-resolver-0.84.3.tgz", + "integrity": "sha512-pjEzGDtoM8DTHAIPK/9u9ZxszEiuRohYUVImWvgbnB91V4gqYJpQcoEYUugf2NIm1lrX5HNu0OvNqWmPBnGYjA==", "license": "MIT", "dependencies": { "flow-enums-runtime": "^0.0.6" }, "engines": { - "node": ">=20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" } }, "node_modules/metro-runtime": { - "version": "0.83.3", - "resolved": "https://registry.npmjs.org/metro-runtime/-/metro-runtime-0.83.3.tgz", - "integrity": "sha512-JHCJb9ebr9rfJ+LcssFYA2x1qPYuSD/bbePupIGhpMrsla7RCwC/VL3yJ9cSU+nUhU4c9Ixxy8tBta+JbDeZWw==", + "version": "0.84.3", + "resolved": "https://registry.npmjs.org/metro-runtime/-/metro-runtime-0.84.3.tgz", + "integrity": "sha512-o7HLRfMyVk9N2dUZ9VjQfB6xxUItL9Pi9WcqxURE7MEKOH6wbGt9/E92YdYLluTOtkzYAEVfdC6h6lcxqA+hMQ==", "license": "MIT", "dependencies": { "@babel/runtime": "^7.25.0", "flow-enums-runtime": "^0.0.6" }, "engines": { - "node": ">=20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" } }, "node_modules/metro-source-map": { - "version": "0.83.3", - "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.83.3.tgz", - "integrity": "sha512-xkC3qwUBh2psVZgVavo8+r2C9Igkk3DibiOXSAht1aYRRcztEZNFtAMtfSB7sdO2iFMx2Mlyu++cBxz/fhdzQg==", + "version": "0.84.3", + "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.84.3.tgz", + "integrity": "sha512-jS48CeSzw78M8y6VE0f9uy3lVmfbOS677j2VCxnlmlYmnahcXuC6IhoN9K6LynNvos9517yUadcfgioju38xYQ==", "license": "MIT", "dependencies": { - "@babel/traverse": "^7.25.3", - "@babel/traverse--for-generate-function-map": "npm:@babel/traverse@^7.25.3", - "@babel/types": "^7.25.2", + "@babel/traverse": "^7.29.0", + "@babel/types": "^7.29.0", "flow-enums-runtime": "^0.0.6", "invariant": "^2.2.4", - "metro-symbolicate": "0.83.3", + "metro-symbolicate": "0.84.3", "nullthrows": "^1.1.1", - "ob1": "0.83.3", + "ob1": "0.84.3", "source-map": "^0.5.6", "vlq": "^1.0.0" }, "engines": { - "node": ">=20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" } }, "node_modules/metro-symbolicate": { - "version": "0.83.3", - "resolved": "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.83.3.tgz", - "integrity": "sha512-F/YChgKd6KbFK3eUR5HdUsfBqVsanf5lNTwFd4Ca7uuxnHgBC3kR/Hba/RGkenR3pZaGNp5Bu9ZqqP52Wyhomw==", + "version": "0.84.3", + "resolved": "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.84.3.tgz", + "integrity": "sha512-J9Tpo8NCycYrozRvBIUyOwGAu4xkawOsAppmTscFiaegK0WvuDGwIM53GbzVSnytCHjVAF0io5GQxpkrKTuc7g==", "license": "MIT", "dependencies": { "flow-enums-runtime": "^0.0.6", "invariant": "^2.2.4", - "metro-source-map": "0.83.3", + "metro-source-map": "0.84.3", "nullthrows": "^1.1.1", "source-map": "^0.5.6", "vlq": "^1.0.0" @@ -5080,48 +4316,48 @@ "metro-symbolicate": "src/index.js" }, "engines": { - "node": ">=20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" } }, "node_modules/metro-transform-plugins": { - "version": "0.83.3", - "resolved": "https://registry.npmjs.org/metro-transform-plugins/-/metro-transform-plugins-0.83.3.tgz", - "integrity": "sha512-eRGoKJU6jmqOakBMH5kUB7VitEWiNrDzBHpYbkBXW7C5fUGeOd2CyqrosEzbMK5VMiZYyOcNFEphvxk3OXey2A==", + "version": "0.84.3", + "resolved": "https://registry.npmjs.org/metro-transform-plugins/-/metro-transform-plugins-0.84.3.tgz", + "integrity": "sha512-8S3baq2XhBaafHEH5Q8sJW6tmzsEJk80qKc3RU/nZV1MsnYq94RdjTUR6AyKjQd6Rfsk1BtBxhtiNnk7mgslCg==", "license": "MIT", "dependencies": { "@babel/core": "^7.25.2", - "@babel/generator": "^7.25.0", - "@babel/template": "^7.25.0", - "@babel/traverse": "^7.25.3", + "@babel/generator": "^7.29.1", + "@babel/template": "^7.28.6", + "@babel/traverse": "^7.29.0", "flow-enums-runtime": "^0.0.6", "nullthrows": "^1.1.1" }, "engines": { - "node": ">=20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" } }, "node_modules/metro-transform-worker": { - "version": "0.83.3", - "resolved": "https://registry.npmjs.org/metro-transform-worker/-/metro-transform-worker-0.83.3.tgz", - "integrity": "sha512-Ztekew9t/gOIMZX1tvJOgX7KlSLL5kWykl0Iwu2cL2vKMKVALRl1hysyhUw0vjpAvLFx+Kfq9VLjnHIkW32fPA==", + "version": "0.84.3", + "resolved": "https://registry.npmjs.org/metro-transform-worker/-/metro-transform-worker-0.84.3.tgz", + "integrity": "sha512-Wjba7PyYktNRsHbPmkx2J2UX32rAzcDXjCu49zPHeF/viJlYJhwRaNePQcHaCRqQ+kmgQT4ThprsnJfDj71ZMA==", "license": "MIT", "dependencies": { "@babel/core": "^7.25.2", - "@babel/generator": "^7.25.0", - "@babel/parser": "^7.25.3", - "@babel/types": "^7.25.2", + "@babel/generator": "^7.29.1", + "@babel/parser": "^7.29.0", + "@babel/types": "^7.29.0", "flow-enums-runtime": "^0.0.6", - "metro": "0.83.3", - "metro-babel-transformer": "0.83.3", - "metro-cache": "0.83.3", - "metro-cache-key": "0.83.3", - "metro-minify-terser": "0.83.3", - "metro-source-map": "0.83.3", - "metro-transform-plugins": "0.83.3", + "metro": "0.84.3", + "metro-babel-transformer": "0.84.3", + "metro-cache": "0.84.3", + "metro-cache-key": "0.84.3", + "metro-minify-terser": "0.84.3", + "metro-source-map": "0.84.3", + "metro-transform-plugins": "0.84.3", "nullthrows": "^1.1.1" }, "engines": { - "node": ">=20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" } }, "node_modules/metro/node_modules/ansi-styles": { @@ -5155,12 +4391,6 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/metro/node_modules/ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", - "license": "MIT" - }, "node_modules/metro/node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -5196,6 +4426,21 @@ } } }, + "node_modules/metro/node_modules/hermes-estree": { + "version": "0.35.0", + "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.35.0.tgz", + "integrity": "sha512-xVx5Opwy8Oo1I5yGpVRhCvWL/iV3M+ylksSKVNlxxD90cpDpR/AR1jLYqK8HWihm065a6UI3HeyAmYzwS8NOOg==", + "license": "MIT" + }, + "node_modules/metro/node_modules/hermes-parser": { + "version": "0.35.0", + "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.35.0.tgz", + "integrity": "sha512-9JLjeHxBx8T4CAsydZR49PNZUaix+WpQJwu9p2010lu+7Kwl6D/7wYFFJxoz+aXkaaClp9Zfg6W6/zVlSJORaA==", + "license": "MIT", + "dependencies": { + "hermes-estree": "0.35.0" + } + }, "node_modules/metro/node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -5240,24 +4485,28 @@ } }, "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "version": "1.54.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", + "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", "license": "MIT", "engines": { "node": ">= 0.6" } }, "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz", + "integrity": "sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A==", "license": "MIT", "dependencies": { - "mime-db": "1.52.0" + "mime-db": "^1.54.0" }, "engines": { - "node": ">= 0.6" + "node": ">=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/mimic-fn": { @@ -5277,6 +4526,7 @@ "version": "3.1.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", + "dev": true, "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" @@ -5349,9 +4599,9 @@ "license": "MIT" }, "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz", + "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==", "license": "MIT", "engines": { "node": ">= 0.6" @@ -5392,9 +4642,9 @@ "license": "MIT" }, "node_modules/node-releases": { - "version": "2.0.27", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz", - "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==", + "version": "2.0.38", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.38.tgz", + "integrity": "sha512-3qT/88Y3FbH/Kx4szpQQ4HzUbVrHPKTLVpVocKiLfoYvw9XSGOX2FmD2d6DrXbVYyAQTF2HeF6My8jmzx7/CRw==", "license": "MIT" }, "node_modules/normalize-package-data": { @@ -5420,15 +4670,6 @@ "semver": "bin/semver" } }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/npm-run-all": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", @@ -5715,15 +4956,15 @@ "license": "MIT" }, "node_modules/ob1": { - "version": "0.83.3", - "resolved": "https://registry.npmjs.org/ob1/-/ob1-0.83.3.tgz", - "integrity": "sha512-egUxXCDwoWG06NGCS5s5AdcpnumHKJlfd3HH06P3m9TEMwwScfcY35wpQxbm9oHof+dM/lVH9Rfyu1elTVelSA==", + "version": "0.84.3", + "resolved": "https://registry.npmjs.org/ob1/-/ob1-0.84.3.tgz", + "integrity": "sha512-J7554Ef8bzmKaDY365Afq6PF+qtdnY/d5PKUQFrsKlZHV/N3OGZewVrvDrQDyX5V5NJjTpcAKtlrFZcDr+HvpQ==", "license": "MIT", "dependencies": { "flow-enums-runtime": "^0.0.6" }, "engines": { - "node": ">=20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" } }, "node_modules/object-assign": { @@ -5796,6 +5037,7 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, "license": "ISC", "dependencies": { "wrappy": "1" @@ -5885,42 +5127,6 @@ "node": ">=4" } }, - "node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "license": "MIT", - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "license": "MIT", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", @@ -5945,18 +5151,23 @@ } }, "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==", + "dev": true, "license": "MIT", + "dependencies": { + "pinkie-promise": "^2.0.0" + }, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -6055,15 +5266,6 @@ "node": ">=0.10.0" } }, - "node_modules/pirates": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", - "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", - "license": "MIT", - "engines": { - "node": ">= 6" - } - }, "node_modules/possible-typed-array-names": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", @@ -6133,9 +5335,9 @@ "license": "ISC" }, "node_modules/pump": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.3.tgz", - "integrity": "sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.4.tgz", + "integrity": "sha512-VS7sjc6KR7e1ukRFhQSY5LM2uBWAUPiOPa/A3mkKmiMwSmRFUITt0xuj+/lesgnCv+dPIEYlkzrcyXgquIHMcA==", "dev": true, "license": "MIT", "dependencies": { @@ -6162,9 +5364,9 @@ } }, "node_modules/react": { - "version": "19.2.4", - "resolved": "https://registry.npmjs.org/react/-/react-19.2.4.tgz", - "integrity": "sha512-9nfp2hYpCwOjAN+8TZFGhtWEwgvWHXqESH8qT89AT/lWklpLON22Lc8pEtnpsZz7VmawabSU0gCjnj8aC0euHQ==", + "version": "19.2.5", + "resolved": "https://registry.npmjs.org/react/-/react-19.2.5.tgz", + "integrity": "sha512-llUJLzz1zTUBrskt2pwZgLq59AemifIftw4aB7JxOqf1HY2FDaGDxgwpAPVzHU1kdWabH7FauP4i1oEeer2WCA==", "license": "MIT", "peer": true, "engines": { @@ -6182,9 +5384,9 @@ } }, "node_modules/react-dom": { - "version": "19.2.4", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.4.tgz", - "integrity": "sha512-AXJdLo8kgMbimY95O2aKQqsz2iWi9jMgKJhRBAxECE4IFxfcazB2LmzloIoibJI3C12IlY20+KFaLv+71bUJeQ==", + "version": "19.2.5", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.5.tgz", + "integrity": "sha512-J5bAZz+DXMMwW/wV3xzKke59Af6CHY7G4uYLN1OvBcKEsWOs4pQExj86BBKamxl/Ik5bx9whOrvBlSDfWzgSag==", "dev": true, "license": "MIT", "peer": true, @@ -6192,7 +5394,7 @@ "scheduler": "^0.27.0" }, "peerDependencies": { - "react": "^19.2.4" + "react": "^19.2.5" } }, "node_modules/react-is": { @@ -6202,35 +5404,31 @@ "license": "MIT" }, "node_modules/react-native": { - "version": "0.83.1", - "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.83.1.tgz", - "integrity": "sha512-mL1q5HPq5cWseVhWRLl+Fwvi5z1UO+3vGOpjr+sHFwcUletPRZ5Kv+d0tUfqHmvi73/53NjlQqX1Pyn4GguUfA==", + "version": "0.85.2", + "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.85.2.tgz", + "integrity": "sha512-GFWEPwLYirfj5X8gMtXOWtqX0cqUEURRHETZfFk37VCa4++izrKvGvv24anvuyulXV87NAhVkfNw93rLg3HByw==", "license": "MIT", "peer": true, "dependencies": { - "@jest/create-cache-key-function": "^29.7.0", - "@react-native/assets-registry": "0.83.1", - "@react-native/codegen": "0.83.1", - "@react-native/community-cli-plugin": "0.83.1", - "@react-native/gradle-plugin": "0.83.1", - "@react-native/js-polyfills": "0.83.1", - "@react-native/normalize-colors": "0.83.1", - "@react-native/virtualized-lists": "0.83.1", + "@react-native/assets-registry": "0.85.2", + "@react-native/codegen": "0.85.2", + "@react-native/community-cli-plugin": "0.85.2", + "@react-native/gradle-plugin": "0.85.2", + "@react-native/js-polyfills": "0.85.2", + "@react-native/normalize-colors": "0.85.2", + "@react-native/virtualized-lists": "0.85.2", "abort-controller": "^3.0.0", "anser": "^1.4.9", "ansi-regex": "^5.0.0", - "babel-jest": "^29.7.0", - "babel-plugin-syntax-hermes-parser": "0.32.0", + "babel-plugin-syntax-hermes-parser": "0.33.3", "base64-js": "^1.5.1", "commander": "^12.0.0", "flow-enums-runtime": "^0.0.6", - "glob": "^7.1.1", - "hermes-compiler": "0.14.0", + "hermes-compiler": "250829098.0.10", "invariant": "^2.2.4", - "jest-environment-node": "^29.7.0", "memoize-one": "^5.0.0", - "metro-runtime": "^0.83.3", - "metro-source-map": "^0.83.3", + "metro-runtime": "^0.84.0", + "metro-source-map": "^0.84.0", "nullthrows": "^1.1.1", "pretty-format": "^29.7.0", "promise": "^8.3.0", @@ -6240,6 +5438,7 @@ "scheduler": "0.27.0", "semver": "^7.1.3", "stacktrace-parser": "^0.1.10", + "tinyglobby": "^0.2.15", "whatwg-fetch": "^3.0.0", "ws": "^7.5.10", "yargs": "^17.6.2" @@ -6248,13 +5447,17 @@ "react-native": "cli.js" }, "engines": { - "node": ">= 20.19.4" + "node": "^20.19.4 || ^22.13.0 || ^24.3.0 || >= 25.0.0" }, "peerDependencies": { + "@react-native/jest-preset": "0.85.2", "@types/react": "^19.1.1", - "react": "^19.2.0" + "react": "^19.2.3" }, "peerDependenciesMeta": { + "@react-native/jest-preset": { + "optional": true + }, "@types/react": { "optional": true } @@ -6379,28 +5582,51 @@ } }, "node_modules/rescript": { - "version": "11.1.4", - "resolved": "https://registry.npmjs.org/rescript/-/rescript-11.1.4.tgz", - "integrity": "sha512-0bGU0bocihjSC6MsE3TMjHjY0EUpchyrREquLS8VsZ3ohSMD+VHUEwimEfB3kpBI1vYkw3UFZ3WD8R28guz/Vw==", - "dev": true, - "hasInstallScript": true, - "license": "SEE LICENSE IN LICENSE", + "version": "12.2.0", + "resolved": "https://registry.npmjs.org/rescript/-/rescript-12.2.0.tgz", + "integrity": "sha512-1Jf2cmNhyx5Mj2vwZ4XXPcXvNSjGj9D1jPBUcoqIOqRpLPo1ch2Ta/7eWh23xAHWHK5ow7BCDyYFjvZSjyjLzg==", + "dev": true, + "license": "(LGPL-3.0-or-later AND MIT)", + "workspaces": [ + "packages/playground", + "packages/@rescript/*", + "tests/dependencies/**", + "tests/analysis_tests/**", + "tests/docstring_tests", + "tests/gentype_tests/**", + "tests/tools_tests", + "tests/commonjs_tests", + "scripts/res" + ], + "dependencies": { + "@rescript/runtime": "12.2.0" + }, "bin": { - "bsc": "bsc", - "bstracing": "lib/bstracing", - "rescript": "rescript" + "bsc": "cli/bsc.js", + "bstracing": "cli/bstracing.js", + "rescript": "cli/rescript.js", + "rescript-legacy": "cli/rescript-legacy.js", + "rescript-tools": "cli/rescript-tools.js" }, "engines": { - "node": ">=10" + "node": ">=20.11.0" + }, + "optionalDependencies": { + "@rescript/darwin-arm64": "12.2.0", + "@rescript/darwin-x64": "12.2.0", + "@rescript/linux-arm64": "12.2.0", + "@rescript/linux-x64": "12.2.0", + "@rescript/win32-x64": "12.2.0" } }, "node_modules/resolve": { - "version": "1.22.11", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", - "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", + "version": "1.22.12", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.12.tgz", + "integrity": "sha512-TyeJ1zif53BPfHootBGwPRYT1RUt6oGWsaQr8UyZW/eAm9bKoijtvruSDEmZHm92CwS9nj7/fWttqPCgzep8CA==", "dev": true, "license": "MIT", "dependencies": { + "es-errors": "^1.3.0", "is-core-module": "^2.16.1", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" @@ -6415,15 +5641,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/restore-cursor": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-4.0.0.tgz", @@ -6475,19 +5692,17 @@ "license": "MIT" }, "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, "license": "ISC", "dependencies": { "glob": "^7.1.3" }, "bin": { "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" } }, "node_modules/run-applescript": { @@ -6515,15 +5730,15 @@ } }, "node_modules/safe-array-concat": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", - "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.4.tgz", + "integrity": "sha512-wtZlHyOje6OZTGqAoaDKxFkgRtkF9CnHAVnCHKfuj200wAgL+bSJhdsCD2l0Qx/2ekEXjPWcyKkfGb5CPboslg==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "get-intrinsic": "^1.2.6", + "call-bind": "^1.0.9", + "call-bound": "^1.0.4", + "get-intrinsic": "^1.3.0", "has-symbols": "^1.1.0", "isarray": "^2.0.5" }, @@ -6576,9 +5791,9 @@ "license": "MIT" }, "node_modules/semver": { - "version": "7.7.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", - "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", "license": "ISC", "bin": { "semver": "bin/semver.js" @@ -6822,14 +6037,14 @@ } }, "node_modules/side-channel-list": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", - "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz", + "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==", "dev": true, "license": "MIT", "dependencies": { "es-errors": "^1.3.0", - "object-inspect": "^1.13.3" + "object-inspect": "^1.13.4" }, "engines": { "node": ">= 0.4" @@ -6881,17 +6096,9 @@ "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true, "license": "ISC" }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/slice-ansi": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", @@ -6980,39 +6187,12 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.22.tgz", - "integrity": "sha512-4PRT4nh1EImPbt2jASOKHX7PB7I+e4IWNLvkKFDxNhJlfjbYlleYQh285Z/3mPTHSAK/AvdMmw5BNNuYH8ShgQ==", + "version": "3.0.23", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.23.tgz", + "integrity": "sha512-CWLcCCH7VLu13TgOH+r8p1O/Znwhqv/dbb6lqWy67G+pT1kHmeD/+V36AVb/vq8QMIQwVShJ6Ssl5FPh0fuSdw==", "dev": true, "license": "CC0-1.0" }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "license": "BSD-3-Clause" - }, - "node_modules/stack-utils": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", - "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", - "license": "MIT", - "dependencies": { - "escape-string-regexp": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/stack-utils/node_modules/escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/stackframe": { "version": "1.3.4", "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz", @@ -7170,13 +6350,13 @@ } }, "node_modules/strip-ansi": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz", - "integrity": "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz", + "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==", "dev": true, "license": "MIT", "dependencies": { - "ansi-regex": "^6.0.1" + "ansi-regex": "^6.2.2" }, "engines": { "node": ">=12" @@ -7260,9 +6440,9 @@ } }, "node_modules/terser": { - "version": "5.46.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.46.0.tgz", - "integrity": "sha512-jTwoImyr/QbOWFFso3YoU3ik0jBBDJ6JTOQiy/J2YxVJdZCc+5u7skhNwiOR3FQIygFqVUPHl7qbbxtjW2K3Qg==", + "version": "5.46.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.46.2.tgz", + "integrity": "sha512-uxfo9fPcSgLDYob/w1FuL0c99MWiJDnv+5qXSQc5+Ki5NjVNsYi66INnMFBjf6uFz6OnX12piJQPF4IpjJTNTw==", "license": "BSD-2-Clause", "dependencies": { "@jridgewell/source-map": "^0.3.3", @@ -7283,26 +6463,58 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "license": "MIT" }, - "node_modules/test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "license": "ISC", - "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/throat": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==", "license": "MIT" }, + "node_modules/tinyglobby": { + "version": "0.2.16", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.16.tgz", + "integrity": "sha512-pn99VhoACYR8nFHhxqix+uvsbXineAasWm5ojXoN8xEwK5Kd3/TrhNn1wByuD52UxWRLy8pu+kRMniEi6Eq9Zg==", + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tinyglobby/node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/tinyglobby/node_modules/picomatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", + "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/tmpl": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", @@ -7358,19 +6570,6 @@ "node": ">=0.10.0" } }, - "node_modules/trash/node_modules/path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/trash/node_modules/pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", @@ -7391,15 +6590,6 @@ "node": ">=6" } }, - "node_modules/type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, "node_modules/type-fest": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", @@ -7511,9 +6701,9 @@ } }, "node_modules/undici-types": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", - "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", + "version": "7.19.2", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.19.2.tgz", + "integrity": "sha512-qYVnV5OEm2AW8cJMCpdV20CDyaN3g0AjDlOGf1OW4iaDEx8MwdtChUp4zu4H0VP3nDRF/8RKWH+IPp9uW0YGZg==", "license": "MIT" }, "node_modules/universal-user-agent": { @@ -7925,21 +7115,9 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true, "license": "ISC" }, - "node_modules/write-file-atomic": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", - "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", - "license": "ISC", - "dependencies": { - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.7" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/ws": { "version": "7.5.10", "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", diff --git a/package.json b/package.json index 9ab27d45e..fb880fdec 100644 --- a/package.json +++ b/package.json @@ -3,9 +3,9 @@ "description": "ReScript bindings for React Native.", "version": "0.83.0", "peerDependencies": { - "@rescript/react": ">=0.14.2", + "@rescript/react": ">=0.15.0", "react-native": ">=0.83.0", - "rescript": ">=11.0.0" + "rescript": ">=12.0.0" }, "overrides": { "react": "^19.2.0" @@ -39,13 +39,13 @@ "release": "npmpub" }, "devDependencies": { - "@rescript/react": "^0.14.2", + "@rescript/react": "^0.15.0", "husky": "^8.0.0", "lint-staged": "^13.0.0", "npm-run-all": "^4.0.0", "npmpub": "^5.0.0", "prettier": "^2.0.0", - "rescript": "^11.1.0" + "rescript": "^12.2.0" }, "prettier": { "trailingComma": "all" diff --git a/rescript.json b/rescript.json index 634d67086..9a2cabe38 100644 --- a/rescript.json +++ b/rescript.json @@ -15,13 +15,13 @@ "subdirs": true } ], - "bsc-flags": [ + "compiler-flags": [ "-bs-no-version-header" ], "warnings": { "error": true }, - "bs-dependencies": [ + "dependencies": [ "@rescript/react" ] } \ No newline at end of file diff --git a/src/apis/Animated.bs.js b/src/apis/Animated.bs.js index 81c345862..b9cc4803d 100644 --- a/src/apis/Animated.bs.js +++ b/src/apis/Animated.bs.js @@ -1,74 +1,74 @@ 'use strict'; -var Caml_option = require("rescript/lib/js/caml_option.js"); -var ReactNative = require("react-native"); +let ReactNative = require("react-native"); +let Primitive_option = require("@rescript/runtime/lib/js/Primitive_option.js"); -var $$Animation = {}; +let Animation = {}; function ValueAnimations(Val) { - var Decay = {}; - var Spring = {}; - var Timing = {}; + let Decay = {}; + let Spring = {}; + let Timing = {}; return { - Decay: Decay, - Spring: Spring, - Timing: Timing - }; + Decay: Decay, + Spring: Spring, + Timing: Timing + }; } -var Interpolation = {}; +let Interpolation = {}; function interpolate(prim0, prim1) { return prim0.interpolate(prim1); } -var ValueOperations = { +let ValueOperations = { interpolate: interpolate }; function ValueMethods(Val) { - var Decay = {}; - var Spring = {}; - var Timing = {}; + let Decay = {}; + let Spring = {}; + let Timing = {}; return { - Decay: Decay, - Spring: Spring, - Timing: Timing - }; + Decay: Decay, + Spring: Spring, + Timing: Timing + }; } -var Decay = {}; +let Decay = {}; -var Spring = {}; +let Spring = {}; -var Timing = {}; +let Timing = {}; -var Value = { +let Value = { Decay: Decay, Spring: Spring, Timing: Timing, interpolate: interpolate }; -var Decay$1 = {}; +let Decay$1 = {}; -var Spring$1 = {}; +let Spring$1 = {}; -var Timing$1 = {}; +let Timing$1 = {}; -var ValueXY = { +let ValueXY = { Decay: Decay$1, Spring: Spring$1, Timing: Timing$1 }; -var Decay$2 = {}; +let Decay$2 = {}; -var Spring$2 = {}; +let Spring$2 = {}; -var Timing$2 = {}; +let Timing$2 = {}; -var Color = { +let Color = { Decay: Decay$2, Spring: Spring$2, Timing: Timing$2 @@ -87,7 +87,7 @@ function decay(prim0, prim1) { } function start(prim0, prim1) { - prim0.start(prim1 !== undefined ? Caml_option.valFromOption(prim1) : undefined); + prim0.start(prim1 !== undefined ? Primitive_option.valFromOption(prim1) : undefined); } function stop(prim) { @@ -98,21 +98,21 @@ function reset(prim) { prim.reset(); } -var StyleProp = {}; +let StyleProp = {}; -var FlatList = {}; +let FlatList = {}; -var $$Image = {}; +let Image = {}; -var ScrollView = {}; +let ScrollView = {}; -var SectionList = {}; +let SectionList = {}; -var $$Text = {}; +let Text = {}; -var View = {}; +let View = {}; -exports.$$Animation = $$Animation; +exports.Animation = Animation; exports.ValueAnimations = ValueAnimations; exports.Interpolation = Interpolation; exports.ValueOperations = ValueOperations; @@ -128,9 +128,9 @@ exports.stop = stop; exports.reset = reset; exports.StyleProp = StyleProp; exports.FlatList = FlatList; -exports.$$Image = $$Image; +exports.Image = Image; exports.ScrollView = ScrollView; exports.SectionList = SectionList; -exports.$$Text = $$Text; +exports.Text = Text; exports.View = View; /* react-native Not a pure module */ diff --git a/src/apis/AppRegistry.res b/src/apis/AppRegistry.res index d5d6ebb6a..d74536519 100644 --- a/src/apis/AppRegistry.res +++ b/src/apis/AppRegistry.res @@ -23,7 +23,7 @@ type appConfig<'a> = { } type runnable<'a> = { - "component": Js.Nullable.t>, + "component": nullable>, @meth "run": appParameters => unit, } diff --git a/src/apis/BackHandler.res b/src/apis/BackHandler.res index 9b872cd6c..304639a62 100644 --- a/src/apis/BackHandler.res +++ b/src/apis/BackHandler.res @@ -6,4 +6,4 @@ external exitApp: unit => unit = "exitApp" type eventType = [#hardwareBackPress] @scope("BackHandler") @module("react-native") -external addEventListener: (eventType, unit => Js.Nullable.t) => remove = "addEventListener" +external addEventListener: (eventType, unit => nullable) => remove = "addEventListener" diff --git a/src/apis/Color.bs.js b/src/apis/Color.bs.js index e122838e0..7403ac9c5 100644 --- a/src/apis/Color.bs.js +++ b/src/apis/Color.bs.js @@ -2,19 +2,19 @@ function rgb(r, g, b) { - return "rgb(" + r.toString() + ", " + g.toString() + ", " + b.toString() + ")"; + return `rgb(` + r.toString() + `, ` + g.toString() + `, ` + b.toString() + `)`; } function rgba(r, g, b, a) { - return "rgba(" + r.toString() + ", " + g.toString() + ", " + b.toString() + ", " + a.toString() + ")"; + return `rgba(` + r.toString() + `, ` + g.toString() + `, ` + b.toString() + `, ` + a.toString() + `)`; } function hsl(h, s, l) { - return "hsl(" + h.toString() + ", " + s.toString() + "%, " + l.toString() + "%)"; + return `hsl(` + h.toString() + `, ` + s.toString() + `%, ` + l.toString() + `%)`; } function hsla(h, s, l, a) { - return "hsl(" + h.toString() + ", " + s.toString() + "%, " + l.toString() + "%, " + a.toString() + ")"; + return `hsl(` + h.toString() + `, ` + s.toString() + `%, ` + l.toString() + `%, ` + a.toString() + `)`; } exports.rgb = rgb; diff --git a/src/apis/Color.res b/src/apis/Color.res index f894c889e..007af7329 100644 --- a/src/apis/Color.res +++ b/src/apis/Color.res @@ -4,14 +4,14 @@ type t = string external processColor: string => string = "processColor" let rgb = (~r: int, ~g: int, ~b: int) => - `rgb(${r->Js.Int.toString}, ${g->Js.Int.toString}, ${b->Js.Int.toString})` + `rgb(${r->Int.toString}, ${g->Int.toString}, ${b->Int.toString})` let rgba = (~r: int, ~g: int, ~b: int, ~a: float) => - `rgba(${r->Js.Int.toString}, ${g->Js.Int.toString}, ${b->Js.Int.toString}, ${a->Js.Float.toString})` + `rgba(${r->Int.toString}, ${g->Int.toString}, ${b->Int.toString}, ${a->Float.toString})` let hsl = (~h: float, ~s: float, ~l: float) => - `hsl(${h->Js.Float.toString}, ${s->Js.Float.toString}%, ${l->Js.Float.toString}%)` + `hsl(${h->Float.toString}, ${s->Float.toString}%, ${l->Float.toString}%)` let hsla = (~h: float, ~s: float, ~l: float, ~a: float) => - `hsl(${h->Js.Float.toString}, ${s->Js.Float.toString}%, ${l->Js.Float.toString}%, ${a->Js.Float.toString})` + `hsl(${h->Float.toString}, ${s->Float.toString}%, ${l->Float.toString}%, ${a->Float.toString})` @inline let transparent = "transparent" diff --git a/src/apis/Event.bs.js b/src/apis/Event.bs.js index 0d7680c63..456b04efa 100644 --- a/src/apis/Event.bs.js +++ b/src/apis/Event.bs.js @@ -13,27 +13,27 @@ function ResponderSyntheticEvent(T) { return {}; } -var BlurEvent = {}; +let BlurEvent = {}; -var $$FocusEvent = {}; +let FocusEvent = {}; -var LayoutEvent = {}; +let LayoutEvent = {}; -var TextLayoutEvent = {}; +let TextLayoutEvent = {}; -var PressEvent = {}; +let PressEvent = {}; -var ScrollEvent = {}; +let ScrollEvent = {}; -var SwitchChangeEvent = {}; +let SwitchChangeEvent = {}; -var TargetEvent = {}; +let TargetEvent = {}; exports.EventMethods = EventMethods; exports.SyntheticEvent = SyntheticEvent; exports.ResponderSyntheticEvent = ResponderSyntheticEvent; exports.BlurEvent = BlurEvent; -exports.$$FocusEvent = $$FocusEvent; +exports.FocusEvent = FocusEvent; exports.LayoutEvent = LayoutEvent; exports.TextLayoutEvent = TextLayoutEvent; exports.PressEvent = PressEvent; diff --git a/src/apis/Event.res b/src/apis/Event.res index b61e062bb..a3bb3f9c5 100644 --- a/src/apis/Event.res +++ b/src/apis/Event.res @@ -41,17 +41,17 @@ module SyntheticEvent = ( }, ) => { type t = { - bubbles: Js.Nullable.t, - cancelable: Js.Nullable.t, + bubbles: nullable, + cancelable: nullable, currentTarget: float, - defaultPrevented: Js.Nullable.t, + defaultPrevented: nullable, dispatchConfig: registrationName, - eventPhase: Js.Nullable.t, - isTrusted: Js.Nullable.t, + eventPhase: nullable, + isTrusted: nullable, nativeEvent: T._payload, - target: Js.Nullable.t, + target: nullable, timeStamp: float, - \"type": Js.Nullable.t, + \"type": nullable, } include EventMethods({ @@ -85,17 +85,17 @@ module ResponderSyntheticEvent = ( } type t = { - bubbles: Js.Nullable.t, - cancelable: Js.Nullable.t, + bubbles: nullable, + cancelable: nullable, currentTarget: float, - defaultPrevented: Js.Nullable.t, + defaultPrevented: nullable, dispatchConfig: registrationName, - eventPhase: Js.Nullable.t, - isTrusted: Js.Nullable.t, + eventPhase: nullable, + isTrusted: nullable, nativeEvent: T._payload, - target: Js.Nullable.t, + target: nullable, timeStamp: float, - \"type": Js.Nullable.t, + \"type": nullable, touchHistory: touchHistory, } @@ -161,7 +161,7 @@ module PressEvent = { locationY: float, pageX: float, pageY: float, - target: Js.Nullable.t, + target: nullable, timestamp: float, touches: array, } diff --git a/src/apis/LayoutAnimation.bs.js b/src/apis/LayoutAnimation.bs.js index 4ddf9b4ab..db3aaef09 100644 --- a/src/apis/LayoutAnimation.bs.js +++ b/src/apis/LayoutAnimation.bs.js @@ -1,7 +1,7 @@ 'use strict'; -var Presets = {}; +let Presets = {}; exports.Presets = Presets; /* No side effect */ diff --git a/src/apis/Linking.bs.js b/src/apis/Linking.bs.js index 5e47b680a..bf5713ec6 100644 --- a/src/apis/Linking.bs.js +++ b/src/apis/Linking.bs.js @@ -1,7 +1,7 @@ 'use strict'; -var ExtraValue = {}; +let ExtraValue = {}; exports.ExtraValue = ExtraValue; /* No side effect */ diff --git a/src/apis/Linking.res b/src/apis/Linking.res index eb84e1d86..a3b729909 100644 --- a/src/apis/Linking.res +++ b/src/apis/Linking.res @@ -18,7 +18,7 @@ external openURL: string => promise = "openURL" external canOpenURL: string => promise = "canOpenURL" @scope("Linking") @module("react-native") -external getInitialURL: unit => promise> = "getInitialURL" +external getInitialURL: unit => promise> = "getInitialURL" @scope("Linking") @module("react-native") external openSettings: unit => promise = "openSettings" diff --git a/src/apis/LogBox.res b/src/apis/LogBox.res index f46f7f0c8..57a457149 100644 --- a/src/apis/LogBox.res +++ b/src/apis/LogBox.res @@ -2,7 +2,7 @@ external ignoreLogs: array => unit = "ignoreLogs" @module("react-native") @scope("LogBox") -external ignoreLogsRegex: array => unit = "ignoreLogs" +external ignoreLogsRegex: array => unit = "ignoreLogs" @module("react-native") @scope("LogBox") external ignoreAllLogs: (~ignore: bool=?) => unit = "ignoreAllLogs" diff --git a/src/apis/PermissionsAndroid.bs.js b/src/apis/PermissionsAndroid.bs.js index 1d3b3f076..50a1f541c 100644 --- a/src/apis/PermissionsAndroid.bs.js +++ b/src/apis/PermissionsAndroid.bs.js @@ -1,9 +1,9 @@ 'use strict'; -var Permission = {}; +let Permission = {}; -var Result = {}; +let Result = {}; exports.Permission = Permission; exports.Result = Result; diff --git a/src/apis/PlatformColor.bs.js b/src/apis/PlatformColor.bs.js index 081587ddd..8e1fbcee7 100644 --- a/src/apis/PlatformColor.bs.js +++ b/src/apis/PlatformColor.bs.js @@ -1,9 +1,9 @@ 'use strict'; -var Ios = {}; +let Ios = {}; -var Android = {}; +let Android = {}; exports.Ios = Ios; exports.Android = Android; diff --git a/src/apis/Style.bs.js b/src/apis/Style.bs.js index 646d2ccbb..fea61f51d 100644 --- a/src/apis/Style.bs.js +++ b/src/apis/Style.bs.js @@ -13,7 +13,7 @@ function rad(num) { return num.toString() + "rad"; } -var empty = {}; +let empty = {}; exports.pct = pct; exports.deg = deg; diff --git a/src/apis/Style.res b/src/apis/Style.res index f3c34352c..5e307a798 100644 --- a/src/apis/Style.res +++ b/src/apis/Style.res @@ -15,7 +15,7 @@ type size = string external dp: float => size = "%identity" -let pct = num => num->Js.Float.toString ++ "%" +let pct = num => num->Float.toString ++ "%" type margin = size @@ -28,8 +28,8 @@ type offset = { } type angle -let deg: float => angle = num => (num->Js.Float.toString ++ "deg")->Obj.magic -let rad: float => angle = num => (num->Js.Float.toString ++ "rad")->Obj.magic +let deg: float => angle = num => (num->Float.toString ++ "deg")->Obj.magic +let rad: float => angle = num => (num->Float.toString ++ "rad")->Obj.magic type transform @obj external perspective: (~perspective: float) => transform = "" diff --git a/src/components/ActivityIndicator.bs.js b/src/components/ActivityIndicator.bs.js index 484019b94..aaee48943 100644 --- a/src/components/ActivityIndicator.bs.js +++ b/src/components/ActivityIndicator.bs.js @@ -1,6 +1,6 @@ 'use strict'; -var NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); +let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); NativeElement$ReactNative.Impl({}); diff --git a/src/components/Button.bs.js b/src/components/Button.bs.js index 484019b94..aaee48943 100644 --- a/src/components/Button.bs.js +++ b/src/components/Button.bs.js @@ -1,6 +1,6 @@ 'use strict'; -var NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); +let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); NativeElement$ReactNative.Impl({}); diff --git a/src/components/DrawerLayoutAndroid.bs.js b/src/components/DrawerLayoutAndroid.bs.js index e753ad8b8..7daf7314a 100644 --- a/src/components/DrawerLayoutAndroid.bs.js +++ b/src/components/DrawerLayoutAndroid.bs.js @@ -1,11 +1,11 @@ 'use strict'; -var Event$ReactNative = require("../apis/Event.bs.js"); -var DrawerLayoutAndroidElement$ReactNative = require("../elements/DrawerLayoutAndroidElement.bs.js"); +let Event$ReactNative = require("../apis/Event.bs.js"); +let DrawerLayoutAndroidElement$ReactNative = require("../elements/DrawerLayoutAndroidElement.bs.js"); Event$ReactNative.SyntheticEvent({}); -var DrawerSlideEvent = {}; +let DrawerSlideEvent = {}; exports.DrawerSlideEvent = DrawerSlideEvent; /* Not a pure module */ diff --git a/src/components/FlatList.bs.js b/src/components/FlatList.bs.js index ca4d50a8f..ea419ec6e 100644 --- a/src/components/FlatList.bs.js +++ b/src/components/FlatList.bs.js @@ -1,6 +1,6 @@ 'use strict'; -var VirtualizedListElement$ReactNative = require("../elements/VirtualizedListElement.bs.js"); +let VirtualizedListElement$ReactNative = require("../elements/VirtualizedListElement.bs.js"); /* VirtualizedListElement-ReactNative Not a pure module */ diff --git a/src/components/Image.bs.js b/src/components/Image.bs.js index 26125b48f..4e902baa2 100644 --- a/src/components/Image.bs.js +++ b/src/components/Image.bs.js @@ -1,26 +1,26 @@ 'use strict'; -var Event$ReactNative = require("../apis/Event.bs.js"); -var NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); +let Event$ReactNative = require("../apis/Event.bs.js"); +let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); NativeElement$ReactNative.Impl({}); -var Source = {}; +let Source = {}; Event$ReactNative.SyntheticEvent({}); -var ImageLoadEvent = {}; +let ImageLoadEvent = {}; Event$ReactNative.SyntheticEvent({}); -var $$ErrorEvent = {}; +let ErrorEvent = {}; Event$ReactNative.SyntheticEvent({}); -var $$ProgressEvent = {}; +let ProgressEvent = {}; exports.Source = Source; exports.ImageLoadEvent = ImageLoadEvent; -exports.$$ErrorEvent = $$ErrorEvent; -exports.$$ProgressEvent = $$ProgressEvent; +exports.ErrorEvent = ErrorEvent; +exports.ProgressEvent = ProgressEvent; /* Not a pure module */ diff --git a/src/components/Image.res b/src/components/Image.res index bf259dbab..d0bbd5c63 100644 --- a/src/components/Image.res +++ b/src/components/Image.res @@ -39,7 +39,7 @@ module ImageLoadEvent = { } type payload = { - uri: Js.Nullable.t, + uri: nullable, source: source, } diff --git a/src/components/ImageBackground.bs.js b/src/components/ImageBackground.bs.js index 484019b94..aaee48943 100644 --- a/src/components/ImageBackground.bs.js +++ b/src/components/ImageBackground.bs.js @@ -1,6 +1,6 @@ 'use strict'; -var NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); +let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); NativeElement$ReactNative.Impl({}); diff --git a/src/components/KeyboardAvoidingView.bs.js b/src/components/KeyboardAvoidingView.bs.js index 484019b94..aaee48943 100644 --- a/src/components/KeyboardAvoidingView.bs.js +++ b/src/components/KeyboardAvoidingView.bs.js @@ -1,6 +1,6 @@ 'use strict'; -var NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); +let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); NativeElement$ReactNative.Impl({}); diff --git a/src/components/Modal.bs.js b/src/components/Modal.bs.js index a71650344..e73c49742 100644 --- a/src/components/Modal.bs.js +++ b/src/components/Modal.bs.js @@ -1,13 +1,13 @@ 'use strict'; -var Event$ReactNative = require("../apis/Event.bs.js"); -var NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); +let Event$ReactNative = require("../apis/Event.bs.js"); +let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); NativeElement$ReactNative.Impl({}); Event$ReactNative.SyntheticEvent({}); -var OrientationChangeEvent = {}; +let OrientationChangeEvent = {}; exports.OrientationChangeEvent = OrientationChangeEvent; /* Not a pure module */ diff --git a/src/components/Pressable.bs.js b/src/components/Pressable.bs.js index 484019b94..aaee48943 100644 --- a/src/components/Pressable.bs.js +++ b/src/components/Pressable.bs.js @@ -1,6 +1,6 @@ 'use strict'; -var NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); +let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); NativeElement$ReactNative.Impl({}); diff --git a/src/components/ProgressBarAndroid.bs.js b/src/components/ProgressBarAndroid.bs.js index 484019b94..aaee48943 100644 --- a/src/components/ProgressBarAndroid.bs.js +++ b/src/components/ProgressBarAndroid.bs.js @@ -1,6 +1,6 @@ 'use strict'; -var NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); +let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); NativeElement$ReactNative.Impl({}); diff --git a/src/components/RefreshControl.bs.js b/src/components/RefreshControl.bs.js index 484019b94..aaee48943 100644 --- a/src/components/RefreshControl.bs.js +++ b/src/components/RefreshControl.bs.js @@ -1,6 +1,6 @@ 'use strict'; -var NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); +let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); NativeElement$ReactNative.Impl({}); diff --git a/src/components/SafeAreaView.bs.js b/src/components/SafeAreaView.bs.js index 484019b94..aaee48943 100644 --- a/src/components/SafeAreaView.bs.js +++ b/src/components/SafeAreaView.bs.js @@ -1,6 +1,6 @@ 'use strict'; -var NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); +let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); NativeElement$ReactNative.Impl({}); diff --git a/src/components/ScrollView.bs.js b/src/components/ScrollView.bs.js index ba1e33dd9..4c2c6635d 100644 --- a/src/components/ScrollView.bs.js +++ b/src/components/ScrollView.bs.js @@ -1,6 +1,6 @@ 'use strict'; -var ScrollViewElement$ReactNative = require("../elements/ScrollViewElement.bs.js"); +let ScrollViewElement$ReactNative = require("../elements/ScrollViewElement.bs.js"); /* ScrollViewElement-ReactNative Not a pure module */ diff --git a/src/components/SectionList.bs.js b/src/components/SectionList.bs.js index 7c0cade36..bc1f97d3c 100644 --- a/src/components/SectionList.bs.js +++ b/src/components/SectionList.bs.js @@ -1,6 +1,6 @@ 'use strict'; -var VirtualizedSectionListElement$ReactNative = require("../elements/VirtualizedSectionListElement.bs.js"); +let VirtualizedSectionListElement$ReactNative = require("../elements/VirtualizedSectionListElement.bs.js"); /* VirtualizedSectionListElement-ReactNative Not a pure module */ diff --git a/src/components/Switch.bs.js b/src/components/Switch.bs.js index 484019b94..aaee48943 100644 --- a/src/components/Switch.bs.js +++ b/src/components/Switch.bs.js @@ -1,6 +1,6 @@ 'use strict'; -var NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); +let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); NativeElement$ReactNative.Impl({}); diff --git a/src/components/Text.bs.js b/src/components/Text.bs.js index 484019b94..aaee48943 100644 --- a/src/components/Text.bs.js +++ b/src/components/Text.bs.js @@ -1,6 +1,6 @@ 'use strict'; -var NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); +let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); NativeElement$ReactNative.Impl({}); diff --git a/src/components/TextInput.bs.js b/src/components/TextInput.bs.js index 21a1bebf0..1d2829fc4 100644 --- a/src/components/TextInput.bs.js +++ b/src/components/TextInput.bs.js @@ -1,31 +1,31 @@ 'use strict'; -var Event$ReactNative = require("../apis/Event.bs.js"); -var TextInputElement$ReactNative = require("../elements/TextInputElement.bs.js"); +let Event$ReactNative = require("../apis/Event.bs.js"); +let TextInputElement$ReactNative = require("../elements/TextInputElement.bs.js"); Event$ReactNative.SyntheticEvent({}); -var ChangeEvent = {}; +let ChangeEvent = {}; Event$ReactNative.SyntheticEvent({}); -var EditingEvent = {}; +let EditingEvent = {}; Event$ReactNative.SyntheticEvent({}); -var ContentSizeChangeEvent = {}; +let ContentSizeChangeEvent = {}; Event$ReactNative.SyntheticEvent({}); -var ScrollEvent = {}; +let ScrollEvent = {}; Event$ReactNative.SyntheticEvent({}); -var SelectionChangeEvent = {}; +let SelectionChangeEvent = {}; Event$ReactNative.SyntheticEvent({}); -var KeyPressEvent = {}; +let KeyPressEvent = {}; exports.ChangeEvent = ChangeEvent; exports.EditingEvent = EditingEvent; diff --git a/src/components/TextInput.res b/src/components/TextInput.res index 519efea16..f92c8f250 100644 --- a/src/components/TextInput.res +++ b/src/components/TextInput.res @@ -80,8 +80,8 @@ type selectionChangeEvent = SelectionChangeEvent.t module KeyPressEvent = { type payload = { key: string, - target: Js.Nullable.t, - eventCount: Js.Nullable.t, + target: nullable, + eventCount: nullable, } include Event.SyntheticEvent({ diff --git a/src/components/TouchableHighlight.bs.js b/src/components/TouchableHighlight.bs.js index 484019b94..aaee48943 100644 --- a/src/components/TouchableHighlight.bs.js +++ b/src/components/TouchableHighlight.bs.js @@ -1,6 +1,6 @@ 'use strict'; -var NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); +let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); NativeElement$ReactNative.Impl({}); diff --git a/src/components/TouchableNativeFeedback.bs.js b/src/components/TouchableNativeFeedback.bs.js index f1831e1c7..df8df8dae 100644 --- a/src/components/TouchableNativeFeedback.bs.js +++ b/src/components/TouchableNativeFeedback.bs.js @@ -1,10 +1,10 @@ 'use strict'; -var NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); +let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); NativeElement$ReactNative.Impl({}); -var Background = {}; +let Background = {}; exports.Background = Background; /* Not a pure module */ diff --git a/src/components/TouchableOpacity.bs.js b/src/components/TouchableOpacity.bs.js index 7202c4e42..04ae70443 100644 --- a/src/components/TouchableOpacity.bs.js +++ b/src/components/TouchableOpacity.bs.js @@ -1,6 +1,6 @@ 'use strict'; -var TouchableOpacityElement$ReactNative = require("../elements/TouchableOpacityElement.bs.js"); +let TouchableOpacityElement$ReactNative = require("../elements/TouchableOpacityElement.bs.js"); /* TouchableOpacityElement-ReactNative Not a pure module */ diff --git a/src/components/TouchableWithoutFeedback.bs.js b/src/components/TouchableWithoutFeedback.bs.js index 484019b94..aaee48943 100644 --- a/src/components/TouchableWithoutFeedback.bs.js +++ b/src/components/TouchableWithoutFeedback.bs.js @@ -1,6 +1,6 @@ 'use strict'; -var NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); +let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); NativeElement$ReactNative.Impl({}); diff --git a/src/components/View.bs.js b/src/components/View.bs.js index 484019b94..aaee48943 100644 --- a/src/components/View.bs.js +++ b/src/components/View.bs.js @@ -1,6 +1,6 @@ 'use strict'; -var NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); +let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); NativeElement$ReactNative.Impl({}); diff --git a/src/components/VirtualizedList.bs.js b/src/components/VirtualizedList.bs.js index a53e5f75d..cad3268cb 100644 --- a/src/components/VirtualizedList.bs.js +++ b/src/components/VirtualizedList.bs.js @@ -1,8 +1,8 @@ 'use strict'; -var VirtualizedListElement$ReactNative = require("../elements/VirtualizedListElement.bs.js"); +let VirtualizedListElement$ReactNative = require("../elements/VirtualizedListElement.bs.js"); -var Separators = {}; +let Separators = {}; exports.Separators = Separators; /* VirtualizedListElement-ReactNative Not a pure module */ diff --git a/src/components/VirtualizedList.res b/src/components/VirtualizedList.res index c5860c48c..913ecdbdf 100644 --- a/src/components/VirtualizedList.res +++ b/src/components/VirtualizedList.res @@ -25,7 +25,7 @@ type cellRendererComponent<'item> = React.component = { item: 'item, key: string, - index: Js.undefined, + index: undefined, isViewable: bool, section: {.}, } diff --git a/src/components/VirtualizedSectionList.bs.js b/src/components/VirtualizedSectionList.bs.js index 7c0cade36..bc1f97d3c 100644 --- a/src/components/VirtualizedSectionList.bs.js +++ b/src/components/VirtualizedSectionList.bs.js @@ -1,6 +1,6 @@ 'use strict'; -var VirtualizedSectionListElement$ReactNative = require("../elements/VirtualizedSectionListElement.bs.js"); +let VirtualizedSectionListElement$ReactNative = require("../elements/VirtualizedSectionListElement.bs.js"); /* VirtualizedSectionListElement-ReactNative Not a pure module */ diff --git a/src/elements/DrawerLayoutAndroidElement.bs.js b/src/elements/DrawerLayoutAndroidElement.bs.js index 9417c111c..52ac46716 100644 --- a/src/elements/DrawerLayoutAndroidElement.bs.js +++ b/src/elements/DrawerLayoutAndroidElement.bs.js @@ -1,7 +1,7 @@ 'use strict'; -var NativeElement$ReactNative = require("./NativeElement.bs.js"); -var DrawerLayoutAndroidMethods$ReactNative = require("./DrawerLayoutAndroidMethods.bs.js"); +let NativeElement$ReactNative = require("./NativeElement.bs.js"); +let DrawerLayoutAndroidMethods$ReactNative = require("./DrawerLayoutAndroidMethods.bs.js"); NativeElement$ReactNative.Impl({}); diff --git a/src/elements/NativeElement.bs.js b/src/elements/NativeElement.bs.js index 5706b3617..cd861cbcf 100644 --- a/src/elements/NativeElement.bs.js +++ b/src/elements/NativeElement.bs.js @@ -1,11 +1,11 @@ 'use strict'; -var DOMAPI$ReactNative = require("../types/DOMAPI.bs.js"); -var NativeMethods$ReactNative = require("./NativeMethods.bs.js"); +let DOMAPI$ReactNative = require("../types/DOMAPI.bs.js"); +let NativeMethods$ReactNative = require("./NativeMethods.bs.js"); function Impl(T) { NativeMethods$ReactNative.Make({}); - DOMAPI$ReactNative.$$Element.Impl({}); + DOMAPI$ReactNative.Element.Impl({}); return {}; } diff --git a/src/elements/Ref.res b/src/elements/Ref.res index 088c07b0a..213c80f9c 100644 --- a/src/elements/Ref.res +++ b/src/elements/Ref.res @@ -1,7 +1,7 @@ type t<'element> -type valueRef<'element> = React.ref> -type callbackRef<'element> = Js.nullable<'element> => unit +type valueRef<'element> = React.ref> +type callbackRef<'element> = nullable<'element> => unit external value: valueRef<'element> => t<'element> = "%identity" external callback: callbackRef<'element> => t<'element> = "%identity" diff --git a/src/elements/ScrollViewElement.bs.js b/src/elements/ScrollViewElement.bs.js index e75393846..911f1d6c6 100644 --- a/src/elements/ScrollViewElement.bs.js +++ b/src/elements/ScrollViewElement.bs.js @@ -1,7 +1,7 @@ 'use strict'; -var NativeElement$ReactNative = require("./NativeElement.bs.js"); -var ScrollViewMethods$ReactNative = require("./ScrollViewMethods.bs.js"); +let NativeElement$ReactNative = require("./NativeElement.bs.js"); +let ScrollViewMethods$ReactNative = require("./ScrollViewMethods.bs.js"); NativeElement$ReactNative.Impl({}); diff --git a/src/elements/TextInputElement.bs.js b/src/elements/TextInputElement.bs.js index 2e6eb6a50..ce4bfdb5d 100644 --- a/src/elements/TextInputElement.bs.js +++ b/src/elements/TextInputElement.bs.js @@ -1,7 +1,7 @@ 'use strict'; -var NativeElement$ReactNative = require("./NativeElement.bs.js"); -var TextInputMethods$ReactNative = require("./TextInputMethods.bs.js"); +let NativeElement$ReactNative = require("./NativeElement.bs.js"); +let TextInputMethods$ReactNative = require("./TextInputMethods.bs.js"); NativeElement$ReactNative.Impl({}); diff --git a/src/elements/TouchableOpacityElement.bs.js b/src/elements/TouchableOpacityElement.bs.js index 19bb2c5cf..06600bd0c 100644 --- a/src/elements/TouchableOpacityElement.bs.js +++ b/src/elements/TouchableOpacityElement.bs.js @@ -1,7 +1,7 @@ 'use strict'; -var NativeElement$ReactNative = require("./NativeElement.bs.js"); -var TouchableOpacityMethods$ReactNative = require("./TouchableOpacityMethods.bs.js"); +let NativeElement$ReactNative = require("./NativeElement.bs.js"); +let TouchableOpacityMethods$ReactNative = require("./TouchableOpacityMethods.bs.js"); NativeElement$ReactNative.Impl({}); diff --git a/src/elements/VirtualizedListElement.bs.js b/src/elements/VirtualizedListElement.bs.js index c9c3bf1a8..4d7e2cfdf 100644 --- a/src/elements/VirtualizedListElement.bs.js +++ b/src/elements/VirtualizedListElement.bs.js @@ -1,8 +1,8 @@ 'use strict'; -var NativeElement$ReactNative = require("./NativeElement.bs.js"); -var ScrollViewMethods$ReactNative = require("./ScrollViewMethods.bs.js"); -var VirtualizedListMethods$ReactNative = require("./VirtualizedListMethods.bs.js"); +let NativeElement$ReactNative = require("./NativeElement.bs.js"); +let ScrollViewMethods$ReactNative = require("./ScrollViewMethods.bs.js"); +let VirtualizedListMethods$ReactNative = require("./VirtualizedListMethods.bs.js"); NativeElement$ReactNative.Impl({}); diff --git a/src/elements/VirtualizedSectionListElement.bs.js b/src/elements/VirtualizedSectionListElement.bs.js index 77d094256..a95d2f766 100644 --- a/src/elements/VirtualizedSectionListElement.bs.js +++ b/src/elements/VirtualizedSectionListElement.bs.js @@ -1,7 +1,7 @@ 'use strict'; -var NativeElement$ReactNative = require("./NativeElement.bs.js"); -var VirtualizedSectionListMethods$ReactNative = require("./VirtualizedSectionListMethods.bs.js"); +let NativeElement$ReactNative = require("./NativeElement.bs.js"); +let VirtualizedSectionListMethods$ReactNative = require("./VirtualizedSectionListMethods.bs.js"); NativeElement$ReactNative.Impl({}); diff --git a/src/types/AccessibilityActionEvent.bs.js b/src/types/AccessibilityActionEvent.bs.js index 3c6b7e80a..4ab83f83a 100644 --- a/src/types/AccessibilityActionEvent.bs.js +++ b/src/types/AccessibilityActionEvent.bs.js @@ -1,6 +1,6 @@ 'use strict'; -var Event$ReactNative = require("../apis/Event.bs.js"); +let Event$ReactNative = require("../apis/Event.bs.js"); Event$ReactNative.SyntheticEvent({}); diff --git a/src/types/DOMAPI.bs.js b/src/types/DOMAPI.bs.js index 203971287..2221b3134 100644 --- a/src/types/DOMAPI.bs.js +++ b/src/types/DOMAPI.bs.js @@ -1,15 +1,15 @@ 'use strict'; -var $$NodeList = {}; +let NodeList = {}; -var $$HTMLCollection = {}; +let HTMLCollection = {}; function Impl(T) { return {}; } -var $$Node = { +let Node = { Impl: Impl }; @@ -17,45 +17,45 @@ function Impl$1(T) { return {}; } -var $$Element = { +let Element = { Impl: Impl$1 }; -var $$Document = {}; +let Document = {}; -var $$Text = {}; +let Text = {}; function classify(node) { switch (node.nodeType) { case 1 : - return { - TAG: "Element", - _0: node - }; + return { + TAG: "Element", + _0: node + }; case 3 : - return { - TAG: "Text", - _0: node - }; + return { + TAG: "Text", + _0: node + }; case 9 : - return { - TAG: "Document", - _0: node - }; + return { + TAG: "Document", + _0: node + }; default: return "Unknown"; } } -var NodeType = { +let NodeType = { classify: classify }; -exports.$$NodeList = $$NodeList; -exports.$$HTMLCollection = $$HTMLCollection; -exports.$$Node = $$Node; -exports.$$Element = $$Element; -exports.$$Document = $$Document; -exports.$$Text = $$Text; +exports.NodeList = NodeList; +exports.HTMLCollection = HTMLCollection; +exports.Node = Node; +exports.Element = Element; +exports.Document = Document; +exports.Text = Text; exports.NodeType = NodeType; /* No side effect */ diff --git a/src/types/DOMAPI.res b/src/types/DOMAPI.res index 6651ed98a..c038b769a 100644 --- a/src/types/DOMAPI.res +++ b/src/types/DOMAPI.res @@ -6,18 +6,18 @@ type htmlCollection<'element> = {length: int} type readOnlyNode<'node, 'document, 'element> = { // Node childNodes: nodeList<'node>, - firstChild: Js.Null.t<'node>, + firstChild: null<'node>, isConnected: bool, - lastChild: Js.Null.t<'node>, - nextSibling: Js.Null.t<'node>, + lastChild: null<'node>, + nextSibling: null<'node>, nodeType: int, nodeName: string, - nodeValue: Js.Null.t, - ownerDocument: Js.Null.t<'document>, - parentElement: Js.Null.t<'element>, - parentNode: Js.Null.t<'node>, - previousSibling: Js.Null.t<'node>, - textContent: Js.Null.t, + nodeValue: null, + ownerDocument: null<'document>, + parentElement: null<'element>, + parentNode: null<'node>, + previousSibling: null<'node>, + textContent: null, } type unknownNativeElement @@ -36,11 +36,11 @@ and element<'nativeElement> = { clientLeft: int, clientTop: int, clientWidth: int, - firstElementChild: Js.Null.t, + firstElementChild: null, id: string, - lastElementChild: Js.Null.t, - nextElementSibling: Js.Null.t, - previousElementSibling: Js.Null.t, + lastElementChild: null, + nextElementSibling: null, + previousElementSibling: null, scrollHeight: int, scrollLeft: int, scrollTop: int, @@ -51,7 +51,7 @@ and element<'nativeElement> = { offsetLeft: int, offsetTop: int, offsetWidth: int, - offsetParent: Js.Null.t, + offsetParent: null, } and text = { @@ -60,8 +60,8 @@ and text = { // CharacterData data: string, length: int, - nextElementSibling: Js.Null.t, - previousElementSibling: Js.Null.t, + nextElementSibling: null, + previousElementSibling: null, } and document = { @@ -69,23 +69,23 @@ and document = { childElementCount: int, children: htmlCollection, documentElement: anyElement, - firstElementChild: Js.Null.t, - lastElementChild: Js.Null.t, + firstElementChild: null, + lastElementChild: null, } and anyElement = element module NodeList = { @send - external item: (nodeList<'node>, int) => Js.Null.t<'node> = "item" + external item: (nodeList<'node>, int) => null<'node> = "item" } module HTMLCollection = { @send - external item: (htmlCollection<'element>, int) => Js.Null.t<'element> = "item" + external item: (htmlCollection<'element>, int) => null<'element> = "item" @send - external namedItem: (htmlCollection<'element>, string) => Js.Null.t<'element> = "namedItem" + external namedItem: (htmlCollection<'element>, string) => null<'element> = "namedItem" } module Node = { @@ -143,7 +143,7 @@ module Document = { }) @send - external getElementById: (document, string) => Js.Null.t = "getElementById" + external getElementById: (document, string) => null = "getElementById" } module Text = { From b5536f3571a7223e4614e4001cc4687626efe289 Mon Sep 17 00:00:00 2001 From: Freddy Harris Date: Sat, 25 Apr 2026 16:13:43 +0200 Subject: [PATCH 2/7] esmodule --- rescript.json | 2 +- src/apis/Animated.bs.js | 50 ++++++++++--------- src/apis/Color.bs.js | 12 +++-- src/apis/Event.bs.js | 26 +++++----- src/apis/LayoutAnimation.bs.js | 6 ++- src/apis/Linking.bs.js | 6 ++- src/apis/PermissionsAndroid.bs.js | 8 +-- src/apis/PlatformColor.bs.js | 8 +-- src/apis/Style.bs.js | 12 +++-- src/components/ActivityIndicator.bs.js | 4 +- src/components/Button.bs.js | 4 +- src/components/DrawerLayoutAndroid.bs.js | 10 ++-- src/components/FlatList.bs.js | 4 +- src/components/Image.bs.js | 16 +++--- src/components/ImageBackground.bs.js | 4 +- src/components/KeyboardAvoidingView.bs.js | 4 +- src/components/Modal.bs.js | 10 ++-- src/components/Pressable.bs.js | 4 +- src/components/ProgressBarAndroid.bs.js | 4 +- src/components/RefreshControl.bs.js | 4 +- src/components/SafeAreaView.bs.js | 4 +- src/components/ScrollView.bs.js | 4 +- src/components/SectionList.bs.js | 4 +- src/components/Switch.bs.js | 4 +- src/components/Text.bs.js | 4 +- src/components/TextInput.bs.js | 20 ++++---- src/components/TouchableHighlight.bs.js | 4 +- src/components/TouchableNativeFeedback.bs.js | 8 +-- src/components/TouchableOpacity.bs.js | 4 +- src/components/TouchableWithoutFeedback.bs.js | 4 +- src/components/View.bs.js | 4 +- src/components/VirtualizedList.bs.js | 8 +-- src/components/VirtualizedSectionList.bs.js | 4 +- src/elements/DrawerLayoutAndroidElement.bs.js | 6 +-- src/elements/DrawerLayoutAndroidMethods.bs.js | 6 ++- src/elements/NativeElement.bs.js | 10 ++-- src/elements/NativeMethods.bs.js | 6 ++- src/elements/ScrollViewElement.bs.js | 6 +-- src/elements/ScrollViewMethods.bs.js | 6 ++- src/elements/TextInputElement.bs.js | 6 +-- src/elements/TextInputMethods.bs.js | 6 ++- src/elements/TouchableOpacityElement.bs.js | 6 +-- src/elements/TouchableOpacityMethods.bs.js | 6 ++- src/elements/VirtualizedListElement.bs.js | 8 +-- src/elements/VirtualizedListMethods.bs.js | 6 ++- .../VirtualizedSectionListElement.bs.js | 6 +-- .../VirtualizedSectionListMethods.bs.js | 6 ++- src/types/AccessibilityActionEvent.bs.js | 4 +- src/types/DOMAPI.bs.js | 18 ++++--- 49 files changed, 216 insertions(+), 170 deletions(-) diff --git a/rescript.json b/rescript.json index 9a2cabe38..3a4a97544 100644 --- a/rescript.json +++ b/rescript.json @@ -5,7 +5,7 @@ "version": 4 }, "package-specs": { - "module": "commonjs", + "module": "esmodule", "in-source": true }, "suffix": ".bs.js", diff --git a/src/apis/Animated.bs.js b/src/apis/Animated.bs.js index b9cc4803d..b28e12ea1 100644 --- a/src/apis/Animated.bs.js +++ b/src/apis/Animated.bs.js @@ -1,7 +1,7 @@ -'use strict'; -let ReactNative = require("react-native"); -let Primitive_option = require("@rescript/runtime/lib/js/Primitive_option.js"); + +import * as ReactNative from "react-native"; +import * as Primitive_option from "@rescript/runtime/lib/es6/Primitive_option.js"; let Animation = {}; @@ -112,25 +112,27 @@ let Text = {}; let View = {}; -exports.Animation = Animation; -exports.ValueAnimations = ValueAnimations; -exports.Interpolation = Interpolation; -exports.ValueOperations = ValueOperations; -exports.ValueMethods = ValueMethods; -exports.Value = Value; -exports.ValueXY = ValueXY; -exports.Color = Color; -exports.timing = timing; -exports.spring = spring; -exports.decay = decay; -exports.start = start; -exports.stop = stop; -exports.reset = reset; -exports.StyleProp = StyleProp; -exports.FlatList = FlatList; -exports.Image = Image; -exports.ScrollView = ScrollView; -exports.SectionList = SectionList; -exports.Text = Text; -exports.View = View; +export { + Animation, + ValueAnimations, + Interpolation, + ValueOperations, + ValueMethods, + Value, + ValueXY, + Color, + timing, + spring, + decay, + start, + stop, + reset, + StyleProp, + FlatList, + Image, + ScrollView, + SectionList, + Text, + View, +} /* react-native Not a pure module */ diff --git a/src/apis/Color.bs.js b/src/apis/Color.bs.js index 7403ac9c5..bacddb17a 100644 --- a/src/apis/Color.bs.js +++ b/src/apis/Color.bs.js @@ -1,4 +1,4 @@ -'use strict'; + function rgb(r, g, b) { @@ -17,8 +17,10 @@ function hsla(h, s, l, a) { return `hsl(` + h.toString() + `, ` + s.toString() + `%, ` + l.toString() + `%, ` + a.toString() + `)`; } -exports.rgb = rgb; -exports.rgba = rgba; -exports.hsl = hsl; -exports.hsla = hsla; +export { + rgb, + rgba, + hsl, + hsla, +} /* No side effect */ diff --git a/src/apis/Event.bs.js b/src/apis/Event.bs.js index 456b04efa..4f40859c5 100644 --- a/src/apis/Event.bs.js +++ b/src/apis/Event.bs.js @@ -1,4 +1,4 @@ -'use strict'; + function EventMethods(T) { @@ -29,15 +29,17 @@ let SwitchChangeEvent = {}; let TargetEvent = {}; -exports.EventMethods = EventMethods; -exports.SyntheticEvent = SyntheticEvent; -exports.ResponderSyntheticEvent = ResponderSyntheticEvent; -exports.BlurEvent = BlurEvent; -exports.FocusEvent = FocusEvent; -exports.LayoutEvent = LayoutEvent; -exports.TextLayoutEvent = TextLayoutEvent; -exports.PressEvent = PressEvent; -exports.ScrollEvent = ScrollEvent; -exports.SwitchChangeEvent = SwitchChangeEvent; -exports.TargetEvent = TargetEvent; +export { + EventMethods, + SyntheticEvent, + ResponderSyntheticEvent, + BlurEvent, + FocusEvent, + LayoutEvent, + TextLayoutEvent, + PressEvent, + ScrollEvent, + SwitchChangeEvent, + TargetEvent, +} /* No side effect */ diff --git a/src/apis/LayoutAnimation.bs.js b/src/apis/LayoutAnimation.bs.js index db3aaef09..069d4c749 100644 --- a/src/apis/LayoutAnimation.bs.js +++ b/src/apis/LayoutAnimation.bs.js @@ -1,7 +1,9 @@ -'use strict'; + let Presets = {}; -exports.Presets = Presets; +export { + Presets, +} /* No side effect */ diff --git a/src/apis/Linking.bs.js b/src/apis/Linking.bs.js index bf5713ec6..3dbc7fe62 100644 --- a/src/apis/Linking.bs.js +++ b/src/apis/Linking.bs.js @@ -1,7 +1,9 @@ -'use strict'; + let ExtraValue = {}; -exports.ExtraValue = ExtraValue; +export { + ExtraValue, +} /* No side effect */ diff --git a/src/apis/PermissionsAndroid.bs.js b/src/apis/PermissionsAndroid.bs.js index 50a1f541c..8146251d0 100644 --- a/src/apis/PermissionsAndroid.bs.js +++ b/src/apis/PermissionsAndroid.bs.js @@ -1,10 +1,12 @@ -'use strict'; + let Permission = {}; let Result = {}; -exports.Permission = Permission; -exports.Result = Result; +export { + Permission, + Result, +} /* No side effect */ diff --git a/src/apis/PlatformColor.bs.js b/src/apis/PlatformColor.bs.js index 8e1fbcee7..444b7aa49 100644 --- a/src/apis/PlatformColor.bs.js +++ b/src/apis/PlatformColor.bs.js @@ -1,10 +1,12 @@ -'use strict'; + let Ios = {}; let Android = {}; -exports.Ios = Ios; -exports.Android = Android; +export { + Ios, + Android, +} /* No side effect */ diff --git a/src/apis/Style.bs.js b/src/apis/Style.bs.js index fea61f51d..6bf4c78c9 100644 --- a/src/apis/Style.bs.js +++ b/src/apis/Style.bs.js @@ -1,4 +1,4 @@ -'use strict'; + function pct(num) { @@ -15,8 +15,10 @@ function rad(num) { let empty = {}; -exports.pct = pct; -exports.deg = deg; -exports.rad = rad; -exports.empty = empty; +export { + pct, + deg, + rad, + empty, +} /* No side effect */ diff --git a/src/components/ActivityIndicator.bs.js b/src/components/ActivityIndicator.bs.js index aaee48943..a3d807b91 100644 --- a/src/components/ActivityIndicator.bs.js +++ b/src/components/ActivityIndicator.bs.js @@ -1,6 +1,6 @@ -'use strict'; -let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); + +import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/Button.bs.js b/src/components/Button.bs.js index aaee48943..a3d807b91 100644 --- a/src/components/Button.bs.js +++ b/src/components/Button.bs.js @@ -1,6 +1,6 @@ -'use strict'; -let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); + +import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/DrawerLayoutAndroid.bs.js b/src/components/DrawerLayoutAndroid.bs.js index 7daf7314a..85096c3e0 100644 --- a/src/components/DrawerLayoutAndroid.bs.js +++ b/src/components/DrawerLayoutAndroid.bs.js @@ -1,11 +1,13 @@ -'use strict'; -let Event$ReactNative = require("../apis/Event.bs.js"); -let DrawerLayoutAndroidElement$ReactNative = require("../elements/DrawerLayoutAndroidElement.bs.js"); + +import * as Event$ReactNative from "../apis/Event.bs.js"; +import * as DrawerLayoutAndroidElement$ReactNative from "../elements/DrawerLayoutAndroidElement.bs.js"; Event$ReactNative.SyntheticEvent({}); let DrawerSlideEvent = {}; -exports.DrawerSlideEvent = DrawerSlideEvent; +export { + DrawerSlideEvent, +} /* Not a pure module */ diff --git a/src/components/FlatList.bs.js b/src/components/FlatList.bs.js index ea419ec6e..17ad976f5 100644 --- a/src/components/FlatList.bs.js +++ b/src/components/FlatList.bs.js @@ -1,6 +1,6 @@ -'use strict'; -let VirtualizedListElement$ReactNative = require("../elements/VirtualizedListElement.bs.js"); + +import * as VirtualizedListElement$ReactNative from "../elements/VirtualizedListElement.bs.js"; /* VirtualizedListElement-ReactNative Not a pure module */ diff --git a/src/components/Image.bs.js b/src/components/Image.bs.js index 4e902baa2..79a1abbbf 100644 --- a/src/components/Image.bs.js +++ b/src/components/Image.bs.js @@ -1,7 +1,7 @@ -'use strict'; -let Event$ReactNative = require("../apis/Event.bs.js"); -let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); + +import * as Event$ReactNative from "../apis/Event.bs.js"; +import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; NativeElement$ReactNative.Impl({}); @@ -19,8 +19,10 @@ Event$ReactNative.SyntheticEvent({}); let ProgressEvent = {}; -exports.Source = Source; -exports.ImageLoadEvent = ImageLoadEvent; -exports.ErrorEvent = ErrorEvent; -exports.ProgressEvent = ProgressEvent; +export { + Source, + ImageLoadEvent, + ErrorEvent, + ProgressEvent, +} /* Not a pure module */ diff --git a/src/components/ImageBackground.bs.js b/src/components/ImageBackground.bs.js index aaee48943..a3d807b91 100644 --- a/src/components/ImageBackground.bs.js +++ b/src/components/ImageBackground.bs.js @@ -1,6 +1,6 @@ -'use strict'; -let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); + +import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/KeyboardAvoidingView.bs.js b/src/components/KeyboardAvoidingView.bs.js index aaee48943..a3d807b91 100644 --- a/src/components/KeyboardAvoidingView.bs.js +++ b/src/components/KeyboardAvoidingView.bs.js @@ -1,6 +1,6 @@ -'use strict'; -let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); + +import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/Modal.bs.js b/src/components/Modal.bs.js index e73c49742..9b065b78b 100644 --- a/src/components/Modal.bs.js +++ b/src/components/Modal.bs.js @@ -1,7 +1,7 @@ -'use strict'; -let Event$ReactNative = require("../apis/Event.bs.js"); -let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); + +import * as Event$ReactNative from "../apis/Event.bs.js"; +import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; NativeElement$ReactNative.Impl({}); @@ -9,5 +9,7 @@ Event$ReactNative.SyntheticEvent({}); let OrientationChangeEvent = {}; -exports.OrientationChangeEvent = OrientationChangeEvent; +export { + OrientationChangeEvent, +} /* Not a pure module */ diff --git a/src/components/Pressable.bs.js b/src/components/Pressable.bs.js index aaee48943..a3d807b91 100644 --- a/src/components/Pressable.bs.js +++ b/src/components/Pressable.bs.js @@ -1,6 +1,6 @@ -'use strict'; -let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); + +import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/ProgressBarAndroid.bs.js b/src/components/ProgressBarAndroid.bs.js index aaee48943..a3d807b91 100644 --- a/src/components/ProgressBarAndroid.bs.js +++ b/src/components/ProgressBarAndroid.bs.js @@ -1,6 +1,6 @@ -'use strict'; -let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); + +import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/RefreshControl.bs.js b/src/components/RefreshControl.bs.js index aaee48943..a3d807b91 100644 --- a/src/components/RefreshControl.bs.js +++ b/src/components/RefreshControl.bs.js @@ -1,6 +1,6 @@ -'use strict'; -let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); + +import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/SafeAreaView.bs.js b/src/components/SafeAreaView.bs.js index aaee48943..a3d807b91 100644 --- a/src/components/SafeAreaView.bs.js +++ b/src/components/SafeAreaView.bs.js @@ -1,6 +1,6 @@ -'use strict'; -let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); + +import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/ScrollView.bs.js b/src/components/ScrollView.bs.js index 4c2c6635d..d3c8f80e0 100644 --- a/src/components/ScrollView.bs.js +++ b/src/components/ScrollView.bs.js @@ -1,6 +1,6 @@ -'use strict'; -let ScrollViewElement$ReactNative = require("../elements/ScrollViewElement.bs.js"); + +import * as ScrollViewElement$ReactNative from "../elements/ScrollViewElement.bs.js"; /* ScrollViewElement-ReactNative Not a pure module */ diff --git a/src/components/SectionList.bs.js b/src/components/SectionList.bs.js index bc1f97d3c..07e24fdc2 100644 --- a/src/components/SectionList.bs.js +++ b/src/components/SectionList.bs.js @@ -1,6 +1,6 @@ -'use strict'; -let VirtualizedSectionListElement$ReactNative = require("../elements/VirtualizedSectionListElement.bs.js"); + +import * as VirtualizedSectionListElement$ReactNative from "../elements/VirtualizedSectionListElement.bs.js"; /* VirtualizedSectionListElement-ReactNative Not a pure module */ diff --git a/src/components/Switch.bs.js b/src/components/Switch.bs.js index aaee48943..a3d807b91 100644 --- a/src/components/Switch.bs.js +++ b/src/components/Switch.bs.js @@ -1,6 +1,6 @@ -'use strict'; -let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); + +import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/Text.bs.js b/src/components/Text.bs.js index aaee48943..a3d807b91 100644 --- a/src/components/Text.bs.js +++ b/src/components/Text.bs.js @@ -1,6 +1,6 @@ -'use strict'; -let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); + +import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/TextInput.bs.js b/src/components/TextInput.bs.js index 1d2829fc4..15c9931fa 100644 --- a/src/components/TextInput.bs.js +++ b/src/components/TextInput.bs.js @@ -1,7 +1,7 @@ -'use strict'; -let Event$ReactNative = require("../apis/Event.bs.js"); -let TextInputElement$ReactNative = require("../elements/TextInputElement.bs.js"); + +import * as Event$ReactNative from "../apis/Event.bs.js"; +import * as TextInputElement$ReactNative from "../elements/TextInputElement.bs.js"; Event$ReactNative.SyntheticEvent({}); @@ -27,10 +27,12 @@ Event$ReactNative.SyntheticEvent({}); let KeyPressEvent = {}; -exports.ChangeEvent = ChangeEvent; -exports.EditingEvent = EditingEvent; -exports.ContentSizeChangeEvent = ContentSizeChangeEvent; -exports.ScrollEvent = ScrollEvent; -exports.SelectionChangeEvent = SelectionChangeEvent; -exports.KeyPressEvent = KeyPressEvent; +export { + ChangeEvent, + EditingEvent, + ContentSizeChangeEvent, + ScrollEvent, + SelectionChangeEvent, + KeyPressEvent, +} /* Not a pure module */ diff --git a/src/components/TouchableHighlight.bs.js b/src/components/TouchableHighlight.bs.js index aaee48943..a3d807b91 100644 --- a/src/components/TouchableHighlight.bs.js +++ b/src/components/TouchableHighlight.bs.js @@ -1,6 +1,6 @@ -'use strict'; -let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); + +import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/TouchableNativeFeedback.bs.js b/src/components/TouchableNativeFeedback.bs.js index df8df8dae..527d8d4ca 100644 --- a/src/components/TouchableNativeFeedback.bs.js +++ b/src/components/TouchableNativeFeedback.bs.js @@ -1,10 +1,12 @@ -'use strict'; -let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); + +import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; NativeElement$ReactNative.Impl({}); let Background = {}; -exports.Background = Background; +export { + Background, +} /* Not a pure module */ diff --git a/src/components/TouchableOpacity.bs.js b/src/components/TouchableOpacity.bs.js index 04ae70443..2ccaaf763 100644 --- a/src/components/TouchableOpacity.bs.js +++ b/src/components/TouchableOpacity.bs.js @@ -1,6 +1,6 @@ -'use strict'; -let TouchableOpacityElement$ReactNative = require("../elements/TouchableOpacityElement.bs.js"); + +import * as TouchableOpacityElement$ReactNative from "../elements/TouchableOpacityElement.bs.js"; /* TouchableOpacityElement-ReactNative Not a pure module */ diff --git a/src/components/TouchableWithoutFeedback.bs.js b/src/components/TouchableWithoutFeedback.bs.js index aaee48943..a3d807b91 100644 --- a/src/components/TouchableWithoutFeedback.bs.js +++ b/src/components/TouchableWithoutFeedback.bs.js @@ -1,6 +1,6 @@ -'use strict'; -let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); + +import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/View.bs.js b/src/components/View.bs.js index aaee48943..a3d807b91 100644 --- a/src/components/View.bs.js +++ b/src/components/View.bs.js @@ -1,6 +1,6 @@ -'use strict'; -let NativeElement$ReactNative = require("../elements/NativeElement.bs.js"); + +import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/VirtualizedList.bs.js b/src/components/VirtualizedList.bs.js index cad3268cb..f805f6e56 100644 --- a/src/components/VirtualizedList.bs.js +++ b/src/components/VirtualizedList.bs.js @@ -1,8 +1,10 @@ -'use strict'; -let VirtualizedListElement$ReactNative = require("../elements/VirtualizedListElement.bs.js"); + +import * as VirtualizedListElement$ReactNative from "../elements/VirtualizedListElement.bs.js"; let Separators = {}; -exports.Separators = Separators; +export { + Separators, +} /* VirtualizedListElement-ReactNative Not a pure module */ diff --git a/src/components/VirtualizedSectionList.bs.js b/src/components/VirtualizedSectionList.bs.js index bc1f97d3c..07e24fdc2 100644 --- a/src/components/VirtualizedSectionList.bs.js +++ b/src/components/VirtualizedSectionList.bs.js @@ -1,6 +1,6 @@ -'use strict'; -let VirtualizedSectionListElement$ReactNative = require("../elements/VirtualizedSectionListElement.bs.js"); + +import * as VirtualizedSectionListElement$ReactNative from "../elements/VirtualizedSectionListElement.bs.js"; /* VirtualizedSectionListElement-ReactNative Not a pure module */ diff --git a/src/elements/DrawerLayoutAndroidElement.bs.js b/src/elements/DrawerLayoutAndroidElement.bs.js index 52ac46716..cf24b1e98 100644 --- a/src/elements/DrawerLayoutAndroidElement.bs.js +++ b/src/elements/DrawerLayoutAndroidElement.bs.js @@ -1,7 +1,7 @@ -'use strict'; -let NativeElement$ReactNative = require("./NativeElement.bs.js"); -let DrawerLayoutAndroidMethods$ReactNative = require("./DrawerLayoutAndroidMethods.bs.js"); + +import * as NativeElement$ReactNative from "./NativeElement.bs.js"; +import * as DrawerLayoutAndroidMethods$ReactNative from "./DrawerLayoutAndroidMethods.bs.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/elements/DrawerLayoutAndroidMethods.bs.js b/src/elements/DrawerLayoutAndroidMethods.bs.js index 643aa1ca3..69d99879c 100644 --- a/src/elements/DrawerLayoutAndroidMethods.bs.js +++ b/src/elements/DrawerLayoutAndroidMethods.bs.js @@ -1,9 +1,11 @@ -'use strict'; + function Make(T) { return {}; } -exports.Make = Make; +export { + Make, +} /* No side effect */ diff --git a/src/elements/NativeElement.bs.js b/src/elements/NativeElement.bs.js index cd861cbcf..28aa992e1 100644 --- a/src/elements/NativeElement.bs.js +++ b/src/elements/NativeElement.bs.js @@ -1,7 +1,7 @@ -'use strict'; -let DOMAPI$ReactNative = require("../types/DOMAPI.bs.js"); -let NativeMethods$ReactNative = require("./NativeMethods.bs.js"); + +import * as DOMAPI$ReactNative from "../types/DOMAPI.bs.js"; +import * as NativeMethods$ReactNative from "./NativeMethods.bs.js"; function Impl(T) { NativeMethods$ReactNative.Make({}); @@ -11,5 +11,7 @@ function Impl(T) { NativeMethods$ReactNative.Make({}); -exports.Impl = Impl; +export { + Impl, +} /* Not a pure module */ diff --git a/src/elements/NativeMethods.bs.js b/src/elements/NativeMethods.bs.js index 643aa1ca3..69d99879c 100644 --- a/src/elements/NativeMethods.bs.js +++ b/src/elements/NativeMethods.bs.js @@ -1,9 +1,11 @@ -'use strict'; + function Make(T) { return {}; } -exports.Make = Make; +export { + Make, +} /* No side effect */ diff --git a/src/elements/ScrollViewElement.bs.js b/src/elements/ScrollViewElement.bs.js index 911f1d6c6..cda5d82e4 100644 --- a/src/elements/ScrollViewElement.bs.js +++ b/src/elements/ScrollViewElement.bs.js @@ -1,7 +1,7 @@ -'use strict'; -let NativeElement$ReactNative = require("./NativeElement.bs.js"); -let ScrollViewMethods$ReactNative = require("./ScrollViewMethods.bs.js"); + +import * as NativeElement$ReactNative from "./NativeElement.bs.js"; +import * as ScrollViewMethods$ReactNative from "./ScrollViewMethods.bs.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/elements/ScrollViewMethods.bs.js b/src/elements/ScrollViewMethods.bs.js index 643aa1ca3..69d99879c 100644 --- a/src/elements/ScrollViewMethods.bs.js +++ b/src/elements/ScrollViewMethods.bs.js @@ -1,9 +1,11 @@ -'use strict'; + function Make(T) { return {}; } -exports.Make = Make; +export { + Make, +} /* No side effect */ diff --git a/src/elements/TextInputElement.bs.js b/src/elements/TextInputElement.bs.js index ce4bfdb5d..c1802048a 100644 --- a/src/elements/TextInputElement.bs.js +++ b/src/elements/TextInputElement.bs.js @@ -1,7 +1,7 @@ -'use strict'; -let NativeElement$ReactNative = require("./NativeElement.bs.js"); -let TextInputMethods$ReactNative = require("./TextInputMethods.bs.js"); + +import * as NativeElement$ReactNative from "./NativeElement.bs.js"; +import * as TextInputMethods$ReactNative from "./TextInputMethods.bs.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/elements/TextInputMethods.bs.js b/src/elements/TextInputMethods.bs.js index 643aa1ca3..69d99879c 100644 --- a/src/elements/TextInputMethods.bs.js +++ b/src/elements/TextInputMethods.bs.js @@ -1,9 +1,11 @@ -'use strict'; + function Make(T) { return {}; } -exports.Make = Make; +export { + Make, +} /* No side effect */ diff --git a/src/elements/TouchableOpacityElement.bs.js b/src/elements/TouchableOpacityElement.bs.js index 06600bd0c..e474474ba 100644 --- a/src/elements/TouchableOpacityElement.bs.js +++ b/src/elements/TouchableOpacityElement.bs.js @@ -1,7 +1,7 @@ -'use strict'; -let NativeElement$ReactNative = require("./NativeElement.bs.js"); -let TouchableOpacityMethods$ReactNative = require("./TouchableOpacityMethods.bs.js"); + +import * as NativeElement$ReactNative from "./NativeElement.bs.js"; +import * as TouchableOpacityMethods$ReactNative from "./TouchableOpacityMethods.bs.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/elements/TouchableOpacityMethods.bs.js b/src/elements/TouchableOpacityMethods.bs.js index 643aa1ca3..69d99879c 100644 --- a/src/elements/TouchableOpacityMethods.bs.js +++ b/src/elements/TouchableOpacityMethods.bs.js @@ -1,9 +1,11 @@ -'use strict'; + function Make(T) { return {}; } -exports.Make = Make; +export { + Make, +} /* No side effect */ diff --git a/src/elements/VirtualizedListElement.bs.js b/src/elements/VirtualizedListElement.bs.js index 4d7e2cfdf..138090f50 100644 --- a/src/elements/VirtualizedListElement.bs.js +++ b/src/elements/VirtualizedListElement.bs.js @@ -1,8 +1,8 @@ -'use strict'; -let NativeElement$ReactNative = require("./NativeElement.bs.js"); -let ScrollViewMethods$ReactNative = require("./ScrollViewMethods.bs.js"); -let VirtualizedListMethods$ReactNative = require("./VirtualizedListMethods.bs.js"); + +import * as NativeElement$ReactNative from "./NativeElement.bs.js"; +import * as ScrollViewMethods$ReactNative from "./ScrollViewMethods.bs.js"; +import * as VirtualizedListMethods$ReactNative from "./VirtualizedListMethods.bs.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/elements/VirtualizedListMethods.bs.js b/src/elements/VirtualizedListMethods.bs.js index 643aa1ca3..69d99879c 100644 --- a/src/elements/VirtualizedListMethods.bs.js +++ b/src/elements/VirtualizedListMethods.bs.js @@ -1,9 +1,11 @@ -'use strict'; + function Make(T) { return {}; } -exports.Make = Make; +export { + Make, +} /* No side effect */ diff --git a/src/elements/VirtualizedSectionListElement.bs.js b/src/elements/VirtualizedSectionListElement.bs.js index a95d2f766..305dd2318 100644 --- a/src/elements/VirtualizedSectionListElement.bs.js +++ b/src/elements/VirtualizedSectionListElement.bs.js @@ -1,7 +1,7 @@ -'use strict'; -let NativeElement$ReactNative = require("./NativeElement.bs.js"); -let VirtualizedSectionListMethods$ReactNative = require("./VirtualizedSectionListMethods.bs.js"); + +import * as NativeElement$ReactNative from "./NativeElement.bs.js"; +import * as VirtualizedSectionListMethods$ReactNative from "./VirtualizedSectionListMethods.bs.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/elements/VirtualizedSectionListMethods.bs.js b/src/elements/VirtualizedSectionListMethods.bs.js index 643aa1ca3..69d99879c 100644 --- a/src/elements/VirtualizedSectionListMethods.bs.js +++ b/src/elements/VirtualizedSectionListMethods.bs.js @@ -1,9 +1,11 @@ -'use strict'; + function Make(T) { return {}; } -exports.Make = Make; +export { + Make, +} /* No side effect */ diff --git a/src/types/AccessibilityActionEvent.bs.js b/src/types/AccessibilityActionEvent.bs.js index 4ab83f83a..934f3e1a3 100644 --- a/src/types/AccessibilityActionEvent.bs.js +++ b/src/types/AccessibilityActionEvent.bs.js @@ -1,6 +1,6 @@ -'use strict'; -let Event$ReactNative = require("../apis/Event.bs.js"); + +import * as Event$ReactNative from "../apis/Event.bs.js"; Event$ReactNative.SyntheticEvent({}); diff --git a/src/types/DOMAPI.bs.js b/src/types/DOMAPI.bs.js index 2221b3134..9884fda89 100644 --- a/src/types/DOMAPI.bs.js +++ b/src/types/DOMAPI.bs.js @@ -1,4 +1,4 @@ -'use strict'; + let NodeList = {}; @@ -51,11 +51,13 @@ let NodeType = { classify: classify }; -exports.NodeList = NodeList; -exports.HTMLCollection = HTMLCollection; -exports.Node = Node; -exports.Element = Element; -exports.Document = Document; -exports.Text = Text; -exports.NodeType = NodeType; +export { + NodeList, + HTMLCollection, + Node, + Element, + Document, + Text, + NodeType, +} /* No side effect */ From 245795266fe16c873f5a70c6e2ee7b05b7c15bd7 Mon Sep 17 00:00:00 2001 From: Freddy Harris Date: Sat, 25 Apr 2026 16:18:52 +0200 Subject: [PATCH 3/7] rename suffix .bs.js to .res.js --- package.json | 12 ++++++------ rescript.json | 2 +- ...essibilityInfo.bs.js => AccessibilityInfo.res.js} | 0 .../{ActionSheetIOS.bs.js => ActionSheetIOS.res.js} | 0 src/apis/{Alert.bs.js => Alert.res.js} | 0 src/apis/{Animated.bs.js => Animated.res.js} | 0 .../{AnimationFrame.bs.js => AnimationFrame.res.js} | 0 src/apis/{AppRegistry.bs.js => AppRegistry.res.js} | 0 src/apis/{AppState.bs.js => AppState.res.js} | 0 src/apis/{Appearance.bs.js => Appearance.res.js} | 0 src/apis/{BackHandler.bs.js => BackHandler.res.js} | 0 src/apis/{Clipboard.bs.js => Clipboard.res.js} | 0 src/apis/{Color.bs.js => Color.res.js} | 0 src/apis/{DevSettings.bs.js => DevSettings.res.js} | 0 src/apis/{Dimensions.bs.js => Dimensions.res.js} | 0 ...{DynamicColorIOS.bs.js => DynamicColorIOS.res.js} | 0 src/apis/{Easing.bs.js => Easing.res.js} | 0 src/apis/{Event.bs.js => Event.res.js} | 0 ...ntSubscription.bs.js => EventSubscription.res.js} | 0 src/apis/{Global.bs.js => Global.res.js} | 0 ...actionManager.bs.js => InteractionManager.res.js} | 0 src/apis/{Keyboard.bs.js => Keyboard.res.js} | 0 ...{LayoutAnimation.bs.js => LayoutAnimation.res.js} | 0 src/apis/{Linking.bs.js => Linking.res.js} | 0 src/apis/{LogBox.bs.js => LogBox.res.js} | 0 ...eEventEmitter.bs.js => NativeEventEmitter.res.js} | 0 .../{NativeModules.bs.js => NativeModules.res.js} | 0 src/apis/{Packager.bs.js => Packager.res.js} | 0 src/apis/{PanResponder.bs.js => PanResponder.res.js} | 0 ...ssionsAndroid.bs.js => PermissionsAndroid.res.js} | 0 src/apis/{PixelRatio.bs.js => PixelRatio.res.js} | 0 src/apis/{Platform.bs.js => Platform.res.js} | 0 .../{PlatformColor.bs.js => PlatformColor.res.js} | 0 src/apis/{Settings.bs.js => Settings.res.js} | 0 src/apis/{Share.bs.js => Share.res.js} | 0 src/apis/{Style.bs.js => Style.res.js} | 0 src/apis/{StyleSheet.bs.js => StyleSheet.res.js} | 0 src/apis/{ToastAndroid.bs.js => ToastAndroid.res.js} | 0 src/apis/{UIManager.bs.js => UIManager.res.js} | 0 src/apis/{Vibration.bs.js => Vibration.res.js} | 0 ...ivityIndicator.bs.js => ActivityIndicator.res.js} | 2 +- src/components/{Button.bs.js => Button.res.js} | 2 +- ...ayoutAndroid.bs.js => DrawerLayoutAndroid.res.js} | 4 ++-- src/components/{FlatList.bs.js => FlatList.res.js} | 2 +- src/components/{Image.bs.js => Image.res.js} | 4 ++-- ...oardAvoidingView.bs.js => ImageBackground.res.js} | 2 +- ...AccessoryView.bs.js => InputAccessoryView.res.js} | 0 ...eBackground.bs.js => KeyboardAvoidingView.res.js} | 2 +- src/components/{Modal.bs.js => Modal.res.js} | 4 ++-- src/components/Pressable.bs.js | 7 ------- src/components/Pressable.res.js | 7 +++++++ src/components/ProgressBarAndroid.bs.js | 7 ------- src/components/ProgressBarAndroid.res.js | 7 +++++++ src/components/RefreshControl.bs.js | 7 ------- src/components/RefreshControl.res.js | 7 +++++++ src/components/SafeAreaView.bs.js | 7 ------- src/components/SafeAreaView.res.js | 7 +++++++ .../{ScrollView.bs.js => ScrollView.res.js} | 2 +- .../{SectionList.bs.js => SectionList.res.js} | 2 +- src/components/{StatusBar.bs.js => StatusBar.res.js} | 0 src/components/Switch.bs.js | 7 ------- src/components/Switch.res.js | 7 +++++++ src/components/Text.bs.js | 7 ------- src/components/Text.res.js | 7 +++++++ src/components/{TextInput.bs.js => TextInput.res.js} | 4 ++-- src/components/TouchableHighlight.bs.js | 7 ------- src/components/TouchableHighlight.res.js | 7 +++++++ ...Feedback.bs.js => TouchableNativeFeedback.res.js} | 2 +- ...ouchableOpacity.bs.js => TouchableOpacity.res.js} | 2 +- src/components/TouchableWithoutFeedback.bs.js | 7 ------- src/components/TouchableWithoutFeedback.res.js | 7 +++++++ src/components/View.bs.js | 7 ------- src/components/View.res.js | 7 +++++++ ...{VirtualizedList.bs.js => VirtualizedList.res.js} | 2 +- ...ctionList.bs.js => VirtualizedSectionList.res.js} | 2 +- ...ement.bs.js => DrawerLayoutAndroidElement.res.js} | 4 ++-- ...thods.bs.js => DrawerLayoutAndroidMethods.res.js} | 0 .../{NativeElement.bs.js => NativeElement.res.js} | 4 ++-- .../{NativeMethods.bs.js => NativeMethods.res.js} | 0 src/elements/{Ref.bs.js => Ref.res.js} | 0 ...ollViewElement.bs.js => ScrollViewElement.res.js} | 4 ++-- ...ollViewMethods.bs.js => ScrollViewMethods.res.js} | 0 ...extInputElement.bs.js => TextInputElement.res.js} | 4 ++-- ...extInputMethods.bs.js => TextInputMethods.res.js} | 0 ...yElement.bs.js => TouchableOpacityElement.res.js} | 4 ++-- ...yMethods.bs.js => TouchableOpacityMethods.res.js} | 0 ...stElement.bs.js => VirtualizedListElement.res.js} | 6 +++--- ...stMethods.bs.js => VirtualizedListMethods.res.js} | 0 ...nt.bs.js => VirtualizedSectionListElement.res.js} | 4 ++-- ...ds.bs.js => VirtualizedSectionListMethods.res.js} | 0 src/private/{SourceCode.bs.js => SourceCode.res.js} | 0 .../{Accessibility.bs.js => Accessibility.res.js} | 0 ...onEvent.bs.js => AccessibilityActionEvent.res.js} | 2 +- src/types/{DOMAPI.bs.js => DOMAPI.res.js} | 0 src/types/{NativeTypes.bs.js => NativeTypes.res.js} | 0 src/types/{Rect.bs.js => Rect.res.js} | 0 src/types/{Role.bs.js => Role.res.js} | 0 src/types/{TV.bs.js => TV.res.js} | 0 src/types/{Web.bs.js => Web.res.js} | 0 99 files changed, 105 insertions(+), 105 deletions(-) rename src/apis/{AccessibilityInfo.bs.js => AccessibilityInfo.res.js} (100%) rename src/apis/{ActionSheetIOS.bs.js => ActionSheetIOS.res.js} (100%) rename src/apis/{Alert.bs.js => Alert.res.js} (100%) rename src/apis/{Animated.bs.js => Animated.res.js} (100%) rename src/apis/{AnimationFrame.bs.js => AnimationFrame.res.js} (100%) rename src/apis/{AppRegistry.bs.js => AppRegistry.res.js} (100%) rename src/apis/{AppState.bs.js => AppState.res.js} (100%) rename src/apis/{Appearance.bs.js => Appearance.res.js} (100%) rename src/apis/{BackHandler.bs.js => BackHandler.res.js} (100%) rename src/apis/{Clipboard.bs.js => Clipboard.res.js} (100%) rename src/apis/{Color.bs.js => Color.res.js} (100%) rename src/apis/{DevSettings.bs.js => DevSettings.res.js} (100%) rename src/apis/{Dimensions.bs.js => Dimensions.res.js} (100%) rename src/apis/{DynamicColorIOS.bs.js => DynamicColorIOS.res.js} (100%) rename src/apis/{Easing.bs.js => Easing.res.js} (100%) rename src/apis/{Event.bs.js => Event.res.js} (100%) rename src/apis/{EventSubscription.bs.js => EventSubscription.res.js} (100%) rename src/apis/{Global.bs.js => Global.res.js} (100%) rename src/apis/{InteractionManager.bs.js => InteractionManager.res.js} (100%) rename src/apis/{Keyboard.bs.js => Keyboard.res.js} (100%) rename src/apis/{LayoutAnimation.bs.js => LayoutAnimation.res.js} (100%) rename src/apis/{Linking.bs.js => Linking.res.js} (100%) rename src/apis/{LogBox.bs.js => LogBox.res.js} (100%) rename src/apis/{NativeEventEmitter.bs.js => NativeEventEmitter.res.js} (100%) rename src/apis/{NativeModules.bs.js => NativeModules.res.js} (100%) rename src/apis/{Packager.bs.js => Packager.res.js} (100%) rename src/apis/{PanResponder.bs.js => PanResponder.res.js} (100%) rename src/apis/{PermissionsAndroid.bs.js => PermissionsAndroid.res.js} (100%) rename src/apis/{PixelRatio.bs.js => PixelRatio.res.js} (100%) rename src/apis/{Platform.bs.js => Platform.res.js} (100%) rename src/apis/{PlatformColor.bs.js => PlatformColor.res.js} (100%) rename src/apis/{Settings.bs.js => Settings.res.js} (100%) rename src/apis/{Share.bs.js => Share.res.js} (100%) rename src/apis/{Style.bs.js => Style.res.js} (100%) rename src/apis/{StyleSheet.bs.js => StyleSheet.res.js} (100%) rename src/apis/{ToastAndroid.bs.js => ToastAndroid.res.js} (100%) rename src/apis/{UIManager.bs.js => UIManager.res.js} (100%) rename src/apis/{Vibration.bs.js => Vibration.res.js} (100%) rename src/components/{ActivityIndicator.bs.js => ActivityIndicator.res.js} (89%) rename src/components/{Button.bs.js => Button.res.js} (89%) rename src/components/{DrawerLayoutAndroid.bs.js => DrawerLayoutAndroid.res.js} (65%) rename src/components/{FlatList.bs.js => FlatList.res.js} (79%) rename src/components/{Image.bs.js => Image.res.js} (84%) rename src/components/{KeyboardAvoidingView.bs.js => ImageBackground.res.js} (89%) rename src/components/{InputAccessoryView.bs.js => InputAccessoryView.res.js} (100%) rename src/components/{ImageBackground.bs.js => KeyboardAvoidingView.res.js} (89%) rename src/components/{Modal.bs.js => Modal.res.js} (76%) delete mode 100644 src/components/Pressable.bs.js create mode 100644 src/components/Pressable.res.js delete mode 100644 src/components/ProgressBarAndroid.bs.js create mode 100644 src/components/ProgressBarAndroid.res.js delete mode 100644 src/components/RefreshControl.bs.js create mode 100644 src/components/RefreshControl.res.js delete mode 100644 src/components/SafeAreaView.bs.js create mode 100644 src/components/SafeAreaView.res.js rename src/components/{ScrollView.bs.js => ScrollView.res.js} (84%) rename src/components/{SectionList.bs.js => SectionList.res.js} (74%) rename src/components/{StatusBar.bs.js => StatusBar.res.js} (100%) delete mode 100644 src/components/Switch.bs.js create mode 100644 src/components/Switch.res.js delete mode 100644 src/components/Text.bs.js create mode 100644 src/components/Text.res.js rename src/components/{TextInput.bs.js => TextInput.res.js} (88%) delete mode 100644 src/components/TouchableHighlight.bs.js create mode 100644 src/components/TouchableHighlight.res.js rename src/components/{TouchableNativeFeedback.bs.js => TouchableNativeFeedback.res.js} (92%) rename src/components/{TouchableOpacity.bs.js => TouchableOpacity.res.js} (78%) delete mode 100644 src/components/TouchableWithoutFeedback.bs.js create mode 100644 src/components/TouchableWithoutFeedback.res.js delete mode 100644 src/components/View.bs.js create mode 100644 src/components/View.res.js rename src/components/{VirtualizedList.bs.js => VirtualizedList.res.js} (83%) rename src/components/{VirtualizedSectionList.bs.js => VirtualizedSectionList.res.js} (74%) rename src/elements/{DrawerLayoutAndroidElement.bs.js => DrawerLayoutAndroidElement.res.js} (64%) rename src/elements/{DrawerLayoutAndroidMethods.bs.js => DrawerLayoutAndroidMethods.res.js} (100%) rename src/elements/{NativeElement.bs.js => NativeElement.res.js} (59%) rename src/elements/{NativeMethods.bs.js => NativeMethods.res.js} (100%) rename src/elements/{Ref.bs.js => Ref.res.js} (100%) rename src/elements/{ScrollViewElement.bs.js => ScrollViewElement.res.js} (67%) rename src/elements/{ScrollViewMethods.bs.js => ScrollViewMethods.res.js} (100%) rename src/elements/{TextInputElement.bs.js => TextInputElement.res.js} (67%) rename src/elements/{TextInputMethods.bs.js => TextInputMethods.res.js} (100%) rename src/elements/{TouchableOpacityElement.bs.js => TouchableOpacityElement.res.js} (65%) rename src/elements/{TouchableOpacityMethods.bs.js => TouchableOpacityMethods.res.js} (100%) rename src/elements/{VirtualizedListElement.bs.js => VirtualizedListElement.res.js} (72%) rename src/elements/{VirtualizedListMethods.bs.js => VirtualizedListMethods.res.js} (100%) rename src/elements/{VirtualizedSectionListElement.bs.js => VirtualizedSectionListElement.res.js} (63%) rename src/elements/{VirtualizedSectionListMethods.bs.js => VirtualizedSectionListMethods.res.js} (100%) rename src/private/{SourceCode.bs.js => SourceCode.res.js} (100%) rename src/types/{Accessibility.bs.js => Accessibility.res.js} (100%) rename src/types/{AccessibilityActionEvent.bs.js => AccessibilityActionEvent.res.js} (53%) rename src/types/{DOMAPI.bs.js => DOMAPI.res.js} (100%) rename src/types/{NativeTypes.bs.js => NativeTypes.res.js} (100%) rename src/types/{Rect.bs.js => Rect.res.js} (100%) rename src/types/{Role.bs.js => Role.res.js} (100%) rename src/types/{TV.bs.js => TV.res.js} (100%) rename src/types/{Web.bs.js => Web.res.js} (100%) diff --git a/package.json b/package.json index fb880fdec..9df33ed6b 100644 --- a/package.json +++ b/package.json @@ -28,14 +28,14 @@ "scripts": { "prepare": "husky install", "format:most": "prettier --write \"**/*.{md,json,js,css}\"", - "format:res": "rescript format -all", - "format": "npm run format:most && npm run format:res", - "re:start": "rescript build -w", - "re:build": "rescript", - "re:clean-build": "rescript clean && rescript", + "format": "npm run format:most && npm run re:format", + "re:start": "rescript watch", + "re:build": "rescript build", + "re:clean": "rescript clean", + "re:format": "rescript format", "start": "npm run re:start", "build": "npm run re:build", - "test": "npm run re:clean-build", + "test": "npm run re:clean && npm run re:build", "release": "npmpub" }, "devDependencies": { diff --git a/rescript.json b/rescript.json index 3a4a97544..dc480ea08 100644 --- a/rescript.json +++ b/rescript.json @@ -8,7 +8,7 @@ "module": "esmodule", "in-source": true }, - "suffix": ".bs.js", + "suffix": ".res.js", "sources": [ { "dir": "src", diff --git a/src/apis/AccessibilityInfo.bs.js b/src/apis/AccessibilityInfo.res.js similarity index 100% rename from src/apis/AccessibilityInfo.bs.js rename to src/apis/AccessibilityInfo.res.js diff --git a/src/apis/ActionSheetIOS.bs.js b/src/apis/ActionSheetIOS.res.js similarity index 100% rename from src/apis/ActionSheetIOS.bs.js rename to src/apis/ActionSheetIOS.res.js diff --git a/src/apis/Alert.bs.js b/src/apis/Alert.res.js similarity index 100% rename from src/apis/Alert.bs.js rename to src/apis/Alert.res.js diff --git a/src/apis/Animated.bs.js b/src/apis/Animated.res.js similarity index 100% rename from src/apis/Animated.bs.js rename to src/apis/Animated.res.js diff --git a/src/apis/AnimationFrame.bs.js b/src/apis/AnimationFrame.res.js similarity index 100% rename from src/apis/AnimationFrame.bs.js rename to src/apis/AnimationFrame.res.js diff --git a/src/apis/AppRegistry.bs.js b/src/apis/AppRegistry.res.js similarity index 100% rename from src/apis/AppRegistry.bs.js rename to src/apis/AppRegistry.res.js diff --git a/src/apis/AppState.bs.js b/src/apis/AppState.res.js similarity index 100% rename from src/apis/AppState.bs.js rename to src/apis/AppState.res.js diff --git a/src/apis/Appearance.bs.js b/src/apis/Appearance.res.js similarity index 100% rename from src/apis/Appearance.bs.js rename to src/apis/Appearance.res.js diff --git a/src/apis/BackHandler.bs.js b/src/apis/BackHandler.res.js similarity index 100% rename from src/apis/BackHandler.bs.js rename to src/apis/BackHandler.res.js diff --git a/src/apis/Clipboard.bs.js b/src/apis/Clipboard.res.js similarity index 100% rename from src/apis/Clipboard.bs.js rename to src/apis/Clipboard.res.js diff --git a/src/apis/Color.bs.js b/src/apis/Color.res.js similarity index 100% rename from src/apis/Color.bs.js rename to src/apis/Color.res.js diff --git a/src/apis/DevSettings.bs.js b/src/apis/DevSettings.res.js similarity index 100% rename from src/apis/DevSettings.bs.js rename to src/apis/DevSettings.res.js diff --git a/src/apis/Dimensions.bs.js b/src/apis/Dimensions.res.js similarity index 100% rename from src/apis/Dimensions.bs.js rename to src/apis/Dimensions.res.js diff --git a/src/apis/DynamicColorIOS.bs.js b/src/apis/DynamicColorIOS.res.js similarity index 100% rename from src/apis/DynamicColorIOS.bs.js rename to src/apis/DynamicColorIOS.res.js diff --git a/src/apis/Easing.bs.js b/src/apis/Easing.res.js similarity index 100% rename from src/apis/Easing.bs.js rename to src/apis/Easing.res.js diff --git a/src/apis/Event.bs.js b/src/apis/Event.res.js similarity index 100% rename from src/apis/Event.bs.js rename to src/apis/Event.res.js diff --git a/src/apis/EventSubscription.bs.js b/src/apis/EventSubscription.res.js similarity index 100% rename from src/apis/EventSubscription.bs.js rename to src/apis/EventSubscription.res.js diff --git a/src/apis/Global.bs.js b/src/apis/Global.res.js similarity index 100% rename from src/apis/Global.bs.js rename to src/apis/Global.res.js diff --git a/src/apis/InteractionManager.bs.js b/src/apis/InteractionManager.res.js similarity index 100% rename from src/apis/InteractionManager.bs.js rename to src/apis/InteractionManager.res.js diff --git a/src/apis/Keyboard.bs.js b/src/apis/Keyboard.res.js similarity index 100% rename from src/apis/Keyboard.bs.js rename to src/apis/Keyboard.res.js diff --git a/src/apis/LayoutAnimation.bs.js b/src/apis/LayoutAnimation.res.js similarity index 100% rename from src/apis/LayoutAnimation.bs.js rename to src/apis/LayoutAnimation.res.js diff --git a/src/apis/Linking.bs.js b/src/apis/Linking.res.js similarity index 100% rename from src/apis/Linking.bs.js rename to src/apis/Linking.res.js diff --git a/src/apis/LogBox.bs.js b/src/apis/LogBox.res.js similarity index 100% rename from src/apis/LogBox.bs.js rename to src/apis/LogBox.res.js diff --git a/src/apis/NativeEventEmitter.bs.js b/src/apis/NativeEventEmitter.res.js similarity index 100% rename from src/apis/NativeEventEmitter.bs.js rename to src/apis/NativeEventEmitter.res.js diff --git a/src/apis/NativeModules.bs.js b/src/apis/NativeModules.res.js similarity index 100% rename from src/apis/NativeModules.bs.js rename to src/apis/NativeModules.res.js diff --git a/src/apis/Packager.bs.js b/src/apis/Packager.res.js similarity index 100% rename from src/apis/Packager.bs.js rename to src/apis/Packager.res.js diff --git a/src/apis/PanResponder.bs.js b/src/apis/PanResponder.res.js similarity index 100% rename from src/apis/PanResponder.bs.js rename to src/apis/PanResponder.res.js diff --git a/src/apis/PermissionsAndroid.bs.js b/src/apis/PermissionsAndroid.res.js similarity index 100% rename from src/apis/PermissionsAndroid.bs.js rename to src/apis/PermissionsAndroid.res.js diff --git a/src/apis/PixelRatio.bs.js b/src/apis/PixelRatio.res.js similarity index 100% rename from src/apis/PixelRatio.bs.js rename to src/apis/PixelRatio.res.js diff --git a/src/apis/Platform.bs.js b/src/apis/Platform.res.js similarity index 100% rename from src/apis/Platform.bs.js rename to src/apis/Platform.res.js diff --git a/src/apis/PlatformColor.bs.js b/src/apis/PlatformColor.res.js similarity index 100% rename from src/apis/PlatformColor.bs.js rename to src/apis/PlatformColor.res.js diff --git a/src/apis/Settings.bs.js b/src/apis/Settings.res.js similarity index 100% rename from src/apis/Settings.bs.js rename to src/apis/Settings.res.js diff --git a/src/apis/Share.bs.js b/src/apis/Share.res.js similarity index 100% rename from src/apis/Share.bs.js rename to src/apis/Share.res.js diff --git a/src/apis/Style.bs.js b/src/apis/Style.res.js similarity index 100% rename from src/apis/Style.bs.js rename to src/apis/Style.res.js diff --git a/src/apis/StyleSheet.bs.js b/src/apis/StyleSheet.res.js similarity index 100% rename from src/apis/StyleSheet.bs.js rename to src/apis/StyleSheet.res.js diff --git a/src/apis/ToastAndroid.bs.js b/src/apis/ToastAndroid.res.js similarity index 100% rename from src/apis/ToastAndroid.bs.js rename to src/apis/ToastAndroid.res.js diff --git a/src/apis/UIManager.bs.js b/src/apis/UIManager.res.js similarity index 100% rename from src/apis/UIManager.bs.js rename to src/apis/UIManager.res.js diff --git a/src/apis/Vibration.bs.js b/src/apis/Vibration.res.js similarity index 100% rename from src/apis/Vibration.bs.js rename to src/apis/Vibration.res.js diff --git a/src/components/ActivityIndicator.bs.js b/src/components/ActivityIndicator.res.js similarity index 89% rename from src/components/ActivityIndicator.bs.js rename to src/components/ActivityIndicator.res.js index a3d807b91..314503d41 100644 --- a/src/components/ActivityIndicator.bs.js +++ b/src/components/ActivityIndicator.res.js @@ -1,6 +1,6 @@ -import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; +import * as NativeElement$ReactNative from "../elements/NativeElement.res.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/Button.bs.js b/src/components/Button.res.js similarity index 89% rename from src/components/Button.bs.js rename to src/components/Button.res.js index a3d807b91..314503d41 100644 --- a/src/components/Button.bs.js +++ b/src/components/Button.res.js @@ -1,6 +1,6 @@ -import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; +import * as NativeElement$ReactNative from "../elements/NativeElement.res.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/DrawerLayoutAndroid.bs.js b/src/components/DrawerLayoutAndroid.res.js similarity index 65% rename from src/components/DrawerLayoutAndroid.bs.js rename to src/components/DrawerLayoutAndroid.res.js index 85096c3e0..1c6619acf 100644 --- a/src/components/DrawerLayoutAndroid.bs.js +++ b/src/components/DrawerLayoutAndroid.res.js @@ -1,7 +1,7 @@ -import * as Event$ReactNative from "../apis/Event.bs.js"; -import * as DrawerLayoutAndroidElement$ReactNative from "../elements/DrawerLayoutAndroidElement.bs.js"; +import * as Event$ReactNative from "../apis/Event.res.js"; +import * as DrawerLayoutAndroidElement$ReactNative from "../elements/DrawerLayoutAndroidElement.res.js"; Event$ReactNative.SyntheticEvent({}); diff --git a/src/components/FlatList.bs.js b/src/components/FlatList.res.js similarity index 79% rename from src/components/FlatList.bs.js rename to src/components/FlatList.res.js index 17ad976f5..f273b8aea 100644 --- a/src/components/FlatList.bs.js +++ b/src/components/FlatList.res.js @@ -1,6 +1,6 @@ -import * as VirtualizedListElement$ReactNative from "../elements/VirtualizedListElement.bs.js"; +import * as VirtualizedListElement$ReactNative from "../elements/VirtualizedListElement.res.js"; /* VirtualizedListElement-ReactNative Not a pure module */ diff --git a/src/components/Image.bs.js b/src/components/Image.res.js similarity index 84% rename from src/components/Image.bs.js rename to src/components/Image.res.js index 79a1abbbf..f69d0c9a1 100644 --- a/src/components/Image.bs.js +++ b/src/components/Image.res.js @@ -1,7 +1,7 @@ -import * as Event$ReactNative from "../apis/Event.bs.js"; -import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; +import * as Event$ReactNative from "../apis/Event.res.js"; +import * as NativeElement$ReactNative from "../elements/NativeElement.res.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/KeyboardAvoidingView.bs.js b/src/components/ImageBackground.res.js similarity index 89% rename from src/components/KeyboardAvoidingView.bs.js rename to src/components/ImageBackground.res.js index a3d807b91..314503d41 100644 --- a/src/components/KeyboardAvoidingView.bs.js +++ b/src/components/ImageBackground.res.js @@ -1,6 +1,6 @@ -import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; +import * as NativeElement$ReactNative from "../elements/NativeElement.res.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/InputAccessoryView.bs.js b/src/components/InputAccessoryView.res.js similarity index 100% rename from src/components/InputAccessoryView.bs.js rename to src/components/InputAccessoryView.res.js diff --git a/src/components/ImageBackground.bs.js b/src/components/KeyboardAvoidingView.res.js similarity index 89% rename from src/components/ImageBackground.bs.js rename to src/components/KeyboardAvoidingView.res.js index a3d807b91..314503d41 100644 --- a/src/components/ImageBackground.bs.js +++ b/src/components/KeyboardAvoidingView.res.js @@ -1,6 +1,6 @@ -import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; +import * as NativeElement$ReactNative from "../elements/NativeElement.res.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/Modal.bs.js b/src/components/Modal.res.js similarity index 76% rename from src/components/Modal.bs.js rename to src/components/Modal.res.js index 9b065b78b..cdf19bfc7 100644 --- a/src/components/Modal.bs.js +++ b/src/components/Modal.res.js @@ -1,7 +1,7 @@ -import * as Event$ReactNative from "../apis/Event.bs.js"; -import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; +import * as Event$ReactNative from "../apis/Event.res.js"; +import * as NativeElement$ReactNative from "../elements/NativeElement.res.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/Pressable.bs.js b/src/components/Pressable.bs.js deleted file mode 100644 index a3d807b91..000000000 --- a/src/components/Pressable.bs.js +++ /dev/null @@ -1,7 +0,0 @@ - - -import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; - -NativeElement$ReactNative.Impl({}); - -/* Not a pure module */ diff --git a/src/components/Pressable.res.js b/src/components/Pressable.res.js new file mode 100644 index 000000000..314503d41 --- /dev/null +++ b/src/components/Pressable.res.js @@ -0,0 +1,7 @@ + + +import * as NativeElement$ReactNative from "../elements/NativeElement.res.js"; + +NativeElement$ReactNative.Impl({}); + +/* Not a pure module */ diff --git a/src/components/ProgressBarAndroid.bs.js b/src/components/ProgressBarAndroid.bs.js deleted file mode 100644 index a3d807b91..000000000 --- a/src/components/ProgressBarAndroid.bs.js +++ /dev/null @@ -1,7 +0,0 @@ - - -import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; - -NativeElement$ReactNative.Impl({}); - -/* Not a pure module */ diff --git a/src/components/ProgressBarAndroid.res.js b/src/components/ProgressBarAndroid.res.js new file mode 100644 index 000000000..314503d41 --- /dev/null +++ b/src/components/ProgressBarAndroid.res.js @@ -0,0 +1,7 @@ + + +import * as NativeElement$ReactNative from "../elements/NativeElement.res.js"; + +NativeElement$ReactNative.Impl({}); + +/* Not a pure module */ diff --git a/src/components/RefreshControl.bs.js b/src/components/RefreshControl.bs.js deleted file mode 100644 index a3d807b91..000000000 --- a/src/components/RefreshControl.bs.js +++ /dev/null @@ -1,7 +0,0 @@ - - -import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; - -NativeElement$ReactNative.Impl({}); - -/* Not a pure module */ diff --git a/src/components/RefreshControl.res.js b/src/components/RefreshControl.res.js new file mode 100644 index 000000000..314503d41 --- /dev/null +++ b/src/components/RefreshControl.res.js @@ -0,0 +1,7 @@ + + +import * as NativeElement$ReactNative from "../elements/NativeElement.res.js"; + +NativeElement$ReactNative.Impl({}); + +/* Not a pure module */ diff --git a/src/components/SafeAreaView.bs.js b/src/components/SafeAreaView.bs.js deleted file mode 100644 index a3d807b91..000000000 --- a/src/components/SafeAreaView.bs.js +++ /dev/null @@ -1,7 +0,0 @@ - - -import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; - -NativeElement$ReactNative.Impl({}); - -/* Not a pure module */ diff --git a/src/components/SafeAreaView.res.js b/src/components/SafeAreaView.res.js new file mode 100644 index 000000000..314503d41 --- /dev/null +++ b/src/components/SafeAreaView.res.js @@ -0,0 +1,7 @@ + + +import * as NativeElement$ReactNative from "../elements/NativeElement.res.js"; + +NativeElement$ReactNative.Impl({}); + +/* Not a pure module */ diff --git a/src/components/ScrollView.bs.js b/src/components/ScrollView.res.js similarity index 84% rename from src/components/ScrollView.bs.js rename to src/components/ScrollView.res.js index d3c8f80e0..8aab93da4 100644 --- a/src/components/ScrollView.bs.js +++ b/src/components/ScrollView.res.js @@ -1,6 +1,6 @@ -import * as ScrollViewElement$ReactNative from "../elements/ScrollViewElement.bs.js"; +import * as ScrollViewElement$ReactNative from "../elements/ScrollViewElement.res.js"; /* ScrollViewElement-ReactNative Not a pure module */ diff --git a/src/components/SectionList.bs.js b/src/components/SectionList.res.js similarity index 74% rename from src/components/SectionList.bs.js rename to src/components/SectionList.res.js index 07e24fdc2..4289ba395 100644 --- a/src/components/SectionList.bs.js +++ b/src/components/SectionList.res.js @@ -1,6 +1,6 @@ -import * as VirtualizedSectionListElement$ReactNative from "../elements/VirtualizedSectionListElement.bs.js"; +import * as VirtualizedSectionListElement$ReactNative from "../elements/VirtualizedSectionListElement.res.js"; /* VirtualizedSectionListElement-ReactNative Not a pure module */ diff --git a/src/components/StatusBar.bs.js b/src/components/StatusBar.res.js similarity index 100% rename from src/components/StatusBar.bs.js rename to src/components/StatusBar.res.js diff --git a/src/components/Switch.bs.js b/src/components/Switch.bs.js deleted file mode 100644 index a3d807b91..000000000 --- a/src/components/Switch.bs.js +++ /dev/null @@ -1,7 +0,0 @@ - - -import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; - -NativeElement$ReactNative.Impl({}); - -/* Not a pure module */ diff --git a/src/components/Switch.res.js b/src/components/Switch.res.js new file mode 100644 index 000000000..314503d41 --- /dev/null +++ b/src/components/Switch.res.js @@ -0,0 +1,7 @@ + + +import * as NativeElement$ReactNative from "../elements/NativeElement.res.js"; + +NativeElement$ReactNative.Impl({}); + +/* Not a pure module */ diff --git a/src/components/Text.bs.js b/src/components/Text.bs.js deleted file mode 100644 index a3d807b91..000000000 --- a/src/components/Text.bs.js +++ /dev/null @@ -1,7 +0,0 @@ - - -import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; - -NativeElement$ReactNative.Impl({}); - -/* Not a pure module */ diff --git a/src/components/Text.res.js b/src/components/Text.res.js new file mode 100644 index 000000000..314503d41 --- /dev/null +++ b/src/components/Text.res.js @@ -0,0 +1,7 @@ + + +import * as NativeElement$ReactNative from "../elements/NativeElement.res.js"; + +NativeElement$ReactNative.Impl({}); + +/* Not a pure module */ diff --git a/src/components/TextInput.bs.js b/src/components/TextInput.res.js similarity index 88% rename from src/components/TextInput.bs.js rename to src/components/TextInput.res.js index 15c9931fa..26330f768 100644 --- a/src/components/TextInput.bs.js +++ b/src/components/TextInput.res.js @@ -1,7 +1,7 @@ -import * as Event$ReactNative from "../apis/Event.bs.js"; -import * as TextInputElement$ReactNative from "../elements/TextInputElement.bs.js"; +import * as Event$ReactNative from "../apis/Event.res.js"; +import * as TextInputElement$ReactNative from "../elements/TextInputElement.res.js"; Event$ReactNative.SyntheticEvent({}); diff --git a/src/components/TouchableHighlight.bs.js b/src/components/TouchableHighlight.bs.js deleted file mode 100644 index a3d807b91..000000000 --- a/src/components/TouchableHighlight.bs.js +++ /dev/null @@ -1,7 +0,0 @@ - - -import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; - -NativeElement$ReactNative.Impl({}); - -/* Not a pure module */ diff --git a/src/components/TouchableHighlight.res.js b/src/components/TouchableHighlight.res.js new file mode 100644 index 000000000..314503d41 --- /dev/null +++ b/src/components/TouchableHighlight.res.js @@ -0,0 +1,7 @@ + + +import * as NativeElement$ReactNative from "../elements/NativeElement.res.js"; + +NativeElement$ReactNative.Impl({}); + +/* Not a pure module */ diff --git a/src/components/TouchableNativeFeedback.bs.js b/src/components/TouchableNativeFeedback.res.js similarity index 92% rename from src/components/TouchableNativeFeedback.bs.js rename to src/components/TouchableNativeFeedback.res.js index 527d8d4ca..6a4337af7 100644 --- a/src/components/TouchableNativeFeedback.bs.js +++ b/src/components/TouchableNativeFeedback.res.js @@ -1,6 +1,6 @@ -import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; +import * as NativeElement$ReactNative from "../elements/NativeElement.res.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/components/TouchableOpacity.bs.js b/src/components/TouchableOpacity.res.js similarity index 78% rename from src/components/TouchableOpacity.bs.js rename to src/components/TouchableOpacity.res.js index 2ccaaf763..cc4d7d32b 100644 --- a/src/components/TouchableOpacity.bs.js +++ b/src/components/TouchableOpacity.res.js @@ -1,6 +1,6 @@ -import * as TouchableOpacityElement$ReactNative from "../elements/TouchableOpacityElement.bs.js"; +import * as TouchableOpacityElement$ReactNative from "../elements/TouchableOpacityElement.res.js"; /* TouchableOpacityElement-ReactNative Not a pure module */ diff --git a/src/components/TouchableWithoutFeedback.bs.js b/src/components/TouchableWithoutFeedback.bs.js deleted file mode 100644 index a3d807b91..000000000 --- a/src/components/TouchableWithoutFeedback.bs.js +++ /dev/null @@ -1,7 +0,0 @@ - - -import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; - -NativeElement$ReactNative.Impl({}); - -/* Not a pure module */ diff --git a/src/components/TouchableWithoutFeedback.res.js b/src/components/TouchableWithoutFeedback.res.js new file mode 100644 index 000000000..314503d41 --- /dev/null +++ b/src/components/TouchableWithoutFeedback.res.js @@ -0,0 +1,7 @@ + + +import * as NativeElement$ReactNative from "../elements/NativeElement.res.js"; + +NativeElement$ReactNative.Impl({}); + +/* Not a pure module */ diff --git a/src/components/View.bs.js b/src/components/View.bs.js deleted file mode 100644 index a3d807b91..000000000 --- a/src/components/View.bs.js +++ /dev/null @@ -1,7 +0,0 @@ - - -import * as NativeElement$ReactNative from "../elements/NativeElement.bs.js"; - -NativeElement$ReactNative.Impl({}); - -/* Not a pure module */ diff --git a/src/components/View.res.js b/src/components/View.res.js new file mode 100644 index 000000000..314503d41 --- /dev/null +++ b/src/components/View.res.js @@ -0,0 +1,7 @@ + + +import * as NativeElement$ReactNative from "../elements/NativeElement.res.js"; + +NativeElement$ReactNative.Impl({}); + +/* Not a pure module */ diff --git a/src/components/VirtualizedList.bs.js b/src/components/VirtualizedList.res.js similarity index 83% rename from src/components/VirtualizedList.bs.js rename to src/components/VirtualizedList.res.js index f805f6e56..620ab6fc0 100644 --- a/src/components/VirtualizedList.bs.js +++ b/src/components/VirtualizedList.res.js @@ -1,6 +1,6 @@ -import * as VirtualizedListElement$ReactNative from "../elements/VirtualizedListElement.bs.js"; +import * as VirtualizedListElement$ReactNative from "../elements/VirtualizedListElement.res.js"; let Separators = {}; diff --git a/src/components/VirtualizedSectionList.bs.js b/src/components/VirtualizedSectionList.res.js similarity index 74% rename from src/components/VirtualizedSectionList.bs.js rename to src/components/VirtualizedSectionList.res.js index 07e24fdc2..4289ba395 100644 --- a/src/components/VirtualizedSectionList.bs.js +++ b/src/components/VirtualizedSectionList.res.js @@ -1,6 +1,6 @@ -import * as VirtualizedSectionListElement$ReactNative from "../elements/VirtualizedSectionListElement.bs.js"; +import * as VirtualizedSectionListElement$ReactNative from "../elements/VirtualizedSectionListElement.res.js"; /* VirtualizedSectionListElement-ReactNative Not a pure module */ diff --git a/src/elements/DrawerLayoutAndroidElement.bs.js b/src/elements/DrawerLayoutAndroidElement.res.js similarity index 64% rename from src/elements/DrawerLayoutAndroidElement.bs.js rename to src/elements/DrawerLayoutAndroidElement.res.js index cf24b1e98..7a04301fd 100644 --- a/src/elements/DrawerLayoutAndroidElement.bs.js +++ b/src/elements/DrawerLayoutAndroidElement.res.js @@ -1,7 +1,7 @@ -import * as NativeElement$ReactNative from "./NativeElement.bs.js"; -import * as DrawerLayoutAndroidMethods$ReactNative from "./DrawerLayoutAndroidMethods.bs.js"; +import * as NativeElement$ReactNative from "./NativeElement.res.js"; +import * as DrawerLayoutAndroidMethods$ReactNative from "./DrawerLayoutAndroidMethods.res.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/elements/DrawerLayoutAndroidMethods.bs.js b/src/elements/DrawerLayoutAndroidMethods.res.js similarity index 100% rename from src/elements/DrawerLayoutAndroidMethods.bs.js rename to src/elements/DrawerLayoutAndroidMethods.res.js diff --git a/src/elements/NativeElement.bs.js b/src/elements/NativeElement.res.js similarity index 59% rename from src/elements/NativeElement.bs.js rename to src/elements/NativeElement.res.js index 28aa992e1..e5500ef1c 100644 --- a/src/elements/NativeElement.bs.js +++ b/src/elements/NativeElement.res.js @@ -1,7 +1,7 @@ -import * as DOMAPI$ReactNative from "../types/DOMAPI.bs.js"; -import * as NativeMethods$ReactNative from "./NativeMethods.bs.js"; +import * as DOMAPI$ReactNative from "../types/DOMAPI.res.js"; +import * as NativeMethods$ReactNative from "./NativeMethods.res.js"; function Impl(T) { NativeMethods$ReactNative.Make({}); diff --git a/src/elements/NativeMethods.bs.js b/src/elements/NativeMethods.res.js similarity index 100% rename from src/elements/NativeMethods.bs.js rename to src/elements/NativeMethods.res.js diff --git a/src/elements/Ref.bs.js b/src/elements/Ref.res.js similarity index 100% rename from src/elements/Ref.bs.js rename to src/elements/Ref.res.js diff --git a/src/elements/ScrollViewElement.bs.js b/src/elements/ScrollViewElement.res.js similarity index 67% rename from src/elements/ScrollViewElement.bs.js rename to src/elements/ScrollViewElement.res.js index cda5d82e4..3c3792ae3 100644 --- a/src/elements/ScrollViewElement.bs.js +++ b/src/elements/ScrollViewElement.res.js @@ -1,7 +1,7 @@ -import * as NativeElement$ReactNative from "./NativeElement.bs.js"; -import * as ScrollViewMethods$ReactNative from "./ScrollViewMethods.bs.js"; +import * as NativeElement$ReactNative from "./NativeElement.res.js"; +import * as ScrollViewMethods$ReactNative from "./ScrollViewMethods.res.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/elements/ScrollViewMethods.bs.js b/src/elements/ScrollViewMethods.res.js similarity index 100% rename from src/elements/ScrollViewMethods.bs.js rename to src/elements/ScrollViewMethods.res.js diff --git a/src/elements/TextInputElement.bs.js b/src/elements/TextInputElement.res.js similarity index 67% rename from src/elements/TextInputElement.bs.js rename to src/elements/TextInputElement.res.js index c1802048a..79c77c4e9 100644 --- a/src/elements/TextInputElement.bs.js +++ b/src/elements/TextInputElement.res.js @@ -1,7 +1,7 @@ -import * as NativeElement$ReactNative from "./NativeElement.bs.js"; -import * as TextInputMethods$ReactNative from "./TextInputMethods.bs.js"; +import * as NativeElement$ReactNative from "./NativeElement.res.js"; +import * as TextInputMethods$ReactNative from "./TextInputMethods.res.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/elements/TextInputMethods.bs.js b/src/elements/TextInputMethods.res.js similarity index 100% rename from src/elements/TextInputMethods.bs.js rename to src/elements/TextInputMethods.res.js diff --git a/src/elements/TouchableOpacityElement.bs.js b/src/elements/TouchableOpacityElement.res.js similarity index 65% rename from src/elements/TouchableOpacityElement.bs.js rename to src/elements/TouchableOpacityElement.res.js index e474474ba..f28c3ea58 100644 --- a/src/elements/TouchableOpacityElement.bs.js +++ b/src/elements/TouchableOpacityElement.res.js @@ -1,7 +1,7 @@ -import * as NativeElement$ReactNative from "./NativeElement.bs.js"; -import * as TouchableOpacityMethods$ReactNative from "./TouchableOpacityMethods.bs.js"; +import * as NativeElement$ReactNative from "./NativeElement.res.js"; +import * as TouchableOpacityMethods$ReactNative from "./TouchableOpacityMethods.res.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/elements/TouchableOpacityMethods.bs.js b/src/elements/TouchableOpacityMethods.res.js similarity index 100% rename from src/elements/TouchableOpacityMethods.bs.js rename to src/elements/TouchableOpacityMethods.res.js diff --git a/src/elements/VirtualizedListElement.bs.js b/src/elements/VirtualizedListElement.res.js similarity index 72% rename from src/elements/VirtualizedListElement.bs.js rename to src/elements/VirtualizedListElement.res.js index 138090f50..925f046e3 100644 --- a/src/elements/VirtualizedListElement.bs.js +++ b/src/elements/VirtualizedListElement.res.js @@ -1,8 +1,8 @@ -import * as NativeElement$ReactNative from "./NativeElement.bs.js"; -import * as ScrollViewMethods$ReactNative from "./ScrollViewMethods.bs.js"; -import * as VirtualizedListMethods$ReactNative from "./VirtualizedListMethods.bs.js"; +import * as NativeElement$ReactNative from "./NativeElement.res.js"; +import * as ScrollViewMethods$ReactNative from "./ScrollViewMethods.res.js"; +import * as VirtualizedListMethods$ReactNative from "./VirtualizedListMethods.res.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/elements/VirtualizedListMethods.bs.js b/src/elements/VirtualizedListMethods.res.js similarity index 100% rename from src/elements/VirtualizedListMethods.bs.js rename to src/elements/VirtualizedListMethods.res.js diff --git a/src/elements/VirtualizedSectionListElement.bs.js b/src/elements/VirtualizedSectionListElement.res.js similarity index 63% rename from src/elements/VirtualizedSectionListElement.bs.js rename to src/elements/VirtualizedSectionListElement.res.js index 305dd2318..33ada8463 100644 --- a/src/elements/VirtualizedSectionListElement.bs.js +++ b/src/elements/VirtualizedSectionListElement.res.js @@ -1,7 +1,7 @@ -import * as NativeElement$ReactNative from "./NativeElement.bs.js"; -import * as VirtualizedSectionListMethods$ReactNative from "./VirtualizedSectionListMethods.bs.js"; +import * as NativeElement$ReactNative from "./NativeElement.res.js"; +import * as VirtualizedSectionListMethods$ReactNative from "./VirtualizedSectionListMethods.res.js"; NativeElement$ReactNative.Impl({}); diff --git a/src/elements/VirtualizedSectionListMethods.bs.js b/src/elements/VirtualizedSectionListMethods.res.js similarity index 100% rename from src/elements/VirtualizedSectionListMethods.bs.js rename to src/elements/VirtualizedSectionListMethods.res.js diff --git a/src/private/SourceCode.bs.js b/src/private/SourceCode.res.js similarity index 100% rename from src/private/SourceCode.bs.js rename to src/private/SourceCode.res.js diff --git a/src/types/Accessibility.bs.js b/src/types/Accessibility.res.js similarity index 100% rename from src/types/Accessibility.bs.js rename to src/types/Accessibility.res.js diff --git a/src/types/AccessibilityActionEvent.bs.js b/src/types/AccessibilityActionEvent.res.js similarity index 53% rename from src/types/AccessibilityActionEvent.bs.js rename to src/types/AccessibilityActionEvent.res.js index 934f3e1a3..2ad0fc415 100644 --- a/src/types/AccessibilityActionEvent.bs.js +++ b/src/types/AccessibilityActionEvent.res.js @@ -1,6 +1,6 @@ -import * as Event$ReactNative from "../apis/Event.bs.js"; +import * as Event$ReactNative from "../apis/Event.res.js"; Event$ReactNative.SyntheticEvent({}); diff --git a/src/types/DOMAPI.bs.js b/src/types/DOMAPI.res.js similarity index 100% rename from src/types/DOMAPI.bs.js rename to src/types/DOMAPI.res.js diff --git a/src/types/NativeTypes.bs.js b/src/types/NativeTypes.res.js similarity index 100% rename from src/types/NativeTypes.bs.js rename to src/types/NativeTypes.res.js diff --git a/src/types/Rect.bs.js b/src/types/Rect.res.js similarity index 100% rename from src/types/Rect.bs.js rename to src/types/Rect.res.js diff --git a/src/types/Role.bs.js b/src/types/Role.res.js similarity index 100% rename from src/types/Role.bs.js rename to src/types/Role.res.js diff --git a/src/types/TV.bs.js b/src/types/TV.res.js similarity index 100% rename from src/types/TV.bs.js rename to src/types/TV.res.js diff --git a/src/types/Web.bs.js b/src/types/Web.res.js similarity index 100% rename from src/types/Web.bs.js rename to src/types/Web.res.js From 08df47ffd5ead18d5122c659f6bc14a65b8b9b70 Mon Sep 17 00:00:00 2001 From: Freddy Harris Date: Sat, 25 Apr 2026 16:30:48 +0200 Subject: [PATCH 4/7] update node version --- .node-version | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.node-version b/.node-version index 3c032078a..a45fd52cc 100644 --- a/.node-version +++ b/.node-version @@ -1 +1 @@ -18 +24 From ad3c594b4b44748086dadb297f6d2a9c955c284e Mon Sep 17 00:00:00 2001 From: Freddy Harris Date: Sat, 25 Apr 2026 17:15:15 +0200 Subject: [PATCH 5/7] remove multiple externals --- src/apis/AccessibilityInfo.res | 7 ++----- src/apis/Animated.res | 16 +++------------- src/apis/AppRegistry.res | 7 +------ src/apis/DevSettings.res | 5 +---- src/apis/LayoutAnimation.res | 12 +++++------- src/apis/Linking.res | 7 +------ src/apis/PermissionsAndroid.res | 7 +------ src/apis/PermissionsAndroid.resi | 7 +------ src/apis/Share.res | 7 +------ src/apis/Vibration.res | 5 ++--- src/elements/ScrollViewElement.res | 12 ++++-------- src/elements/ScrollViewMethods.res | 7 +------ 12 files changed, 23 insertions(+), 76 deletions(-) diff --git a/src/apis/AccessibilityInfo.res b/src/apis/AccessibilityInfo.res index 4eea5267c..a58180b60 100644 --- a/src/apis/AccessibilityInfo.res +++ b/src/apis/AccessibilityInfo.res @@ -15,14 +15,11 @@ external addEventListener: @string | #announcementFinished(announcementResult => unit) ] => EventSubscription.t = "addEventListener" -@scope("AccessibilityInfo") @module("react-native") -external announceForAccessibility: string => unit = "announceForAccessibility" - type announceForAccessibilityOptions = {queue?: bool} @scope("AccessibilityInfo") @module("react-native") -external announceForAccessibilityWithOptions: (string, announceForAccessibilityOptions) => unit = - "announceForAccessibilityWithOptions" +external announceForAccessibility: (string, ~options: announceForAccessibilityOptions=?) => unit = + "announceForAccessibility" @scope("AccessibilityInfo") @module("react-native") external getRecommendedTimeoutMillis: float => promise = "getRecommendedTimeoutMillis" diff --git a/src/apis/Animated.res b/src/apis/Animated.res index c3db60bc5..9736cd278 100644 --- a/src/apis/Animated.res +++ b/src/apis/Animated.res @@ -209,27 +209,17 @@ external stagger: (float, array) => Animation.t = "stagger" type loopConfig = {iterations?: int, resetBeforeIteration?: bool} -// multiple externals @module("react-native") @scope("Animated") -external loop: Animation.t => Animation.t = "loop" +external loop: (Animation.t, ~config: loopConfig=?) => Animation.t = "loop" -// multiple externals -@module("react-native") @scope("Animated") -external loopWithConfig: (Animation.t, loopConfig) => Animation.t = "loop" - -type eventOptions<'a, 'platformConfig> = { +type eventConfig<'a, 'platformConfig> = { listener?: 'a, useNativeDriver: bool, platformConfig?: 'platformConfig, } -// multiple externals -@module("react-native") @scope("Animated") -external event1: (array<'mapping>, eventOptions<'a, 'platformConfig>) => 'a = "event" - -// multiple externals @module("react-native") @scope("Animated") -external event2: (('mapping1, 'mapping2), eventOptions<'a, 'platformConfig>) => 'a = "event" +external event: (array<'mapping>, ~config: eventConfig<'a, 'platformConfig>=?) => 'a = "event" @module("react-native") @scope("Animated") external createAnimatedComponent: React.component<'props> => React.component<'props> = diff --git a/src/apis/AppRegistry.res b/src/apis/AppRegistry.res index d74536519..3b1d6d08b 100644 --- a/src/apis/AppRegistry.res +++ b/src/apis/AppRegistry.res @@ -48,13 +48,8 @@ external getSectionKeys: unit => array = "getSectionKeys" @module("react-native") @scope("AppRegistry") external getSections: unit => dict> = "getSections" -// multiple externals @module("react-native") @scope("AppRegistry") -external registerComponent: (appKey, componentProvider<'a>) => unit = "registerComponent" - -// multiple externals -@module("react-native") @scope("AppRegistry") -external registerComponentWithSection: (appKey, componentProvider<'a>, section) => unit = +external registerComponent: (appKey, componentProvider<'a>, ~section: section=?) => unit = "registerComponent" @module("react-native") @scope("AppRegistry") diff --git a/src/apis/DevSettings.res b/src/apis/DevSettings.res index c1193a9eb..937452812 100644 --- a/src/apis/DevSettings.res +++ b/src/apis/DevSettings.res @@ -6,7 +6,4 @@ type title = string external addMenuItem: (title, handler) => unit = "addMenuItem" @scope("DevSettings") @module("react-native") -external reload: unit => unit = "reload" - -@scope("DevSettings") @module("react-native") -external reloadWithReason: reason => unit = "reload" +external reload: (~reason: reason=?) => unit = "reload" diff --git a/src/apis/LayoutAnimation.res b/src/apis/LayoutAnimation.res index a58a5f367..c5457b19b 100644 --- a/src/apis/LayoutAnimation.res +++ b/src/apis/LayoutAnimation.res @@ -25,14 +25,12 @@ type layoutAnimationConfig = { delete?: animationConfig, } -// multiple externals @module("react-native") @scope("LayoutAnimation") -external configureNext: layoutAnimationConfig => unit = "configureNext" - -// multiple externals -@module("react-native") @scope("LayoutAnimation") -external configureNextWithEndCallback: (layoutAnimationConfig, unit => unit) => unit = - "configureNext" +external configureNext: ( + layoutAnimationConfig, + ~onAnimationDidEnd: unit => unit=?, + ~onAnimationDidFail: unit => unit=?, +) => unit = "configureNext" @module("react-native") @scope("LayoutAnimation") external create: ( diff --git a/src/apis/Linking.res b/src/apis/Linking.res index a3b729909..77330a6c8 100644 --- a/src/apis/Linking.res +++ b/src/apis/Linking.res @@ -23,13 +23,8 @@ external getInitialURL: unit => promise> = "getInitialURL" @scope("Linking") @module("react-native") external openSettings: unit => promise = "openSettings" -// multiple externals @scope("Linking") @module("react-native") -external sendIntent: string => promise = "sendIntent" - -// multiple externals -@scope("Linking") @module("react-native") -external sendIntentWithExtras: (string, array) => promise = "sendIntent" +external sendIntent: (string, ~extras: array=?) => promise = "sendIntent" type url = {url: string} diff --git a/src/apis/PermissionsAndroid.res b/src/apis/PermissionsAndroid.res index 472d04dcf..cff580be0 100644 --- a/src/apis/PermissionsAndroid.res +++ b/src/apis/PermissionsAndroid.res @@ -157,13 +157,8 @@ type dict = dict @scope("PermissionsAndroid") @module("react-native") external check: Permission.t => promise = "check" -// multiple externals @scope("PermissionsAndroid") @module("react-native") -external request: Permission.t => promise = "request" - -// multiple externals -@scope("PermissionsAndroid") @module("react-native") -external requestWithRationale: (Permission.t, rationale) => promise = "request" +external request: (Permission.t, ~rationale: rationale=?) => promise = "request" @scope("PermissionsAndroid") @module("react-native") external requestMultiple: array => promise = "requestMultiple" diff --git a/src/apis/PermissionsAndroid.resi b/src/apis/PermissionsAndroid.resi index 7709742d9..26060a419 100644 --- a/src/apis/PermissionsAndroid.resi +++ b/src/apis/PermissionsAndroid.resi @@ -157,13 +157,8 @@ type dict @scope("PermissionsAndroid") @module("react-native") external check: Permission.t => promise = "check" -// multiple externals @scope("PermissionsAndroid") @module("react-native") -external request: Permission.t => promise = "request" - -// multiple externals -@scope("PermissionsAndroid") @module("react-native") -external requestWithRationale: (Permission.t, rationale) => promise = "request" +external request: (Permission.t, ~rationale: rationale=?) => promise = "request" @scope("PermissionsAndroid") @module("react-native") external requestMultiple: array => promise = "requestMultiple" diff --git a/src/apis/Share.res b/src/apis/Share.res index 9957d5718..e77225fe7 100644 --- a/src/apis/Share.res +++ b/src/apis/Share.res @@ -27,10 +27,5 @@ type shareResult = { activityType: option, } -// multiple externals @module("react-native") @scope("Share") -external share: content => promise = "share" - -// multiple externals -@module("react-native") @scope("Share") -external shareWithOptions: (content, options) => promise = "share" +external share: (content, ~options: options=?) => promise = "share" diff --git a/src/apis/Vibration.res b/src/apis/Vibration.res index 19f4ab67e..61b3c2f81 100644 --- a/src/apis/Vibration.res +++ b/src/apis/Vibration.res @@ -1,8 +1,7 @@ -@scope("Vibration") @module("react-native") -external vibrateWithDuration: (int, ~repeat: bool=?) => unit = "vibrate" +@unboxed type pattern = Number(int) | Array(array) @scope("Vibration") @module("react-native") -external vibrateWithPattern: (array, ~repeat: bool=?) => unit = "vibrate" +external vibrate: (~pattern: pattern=?, ~repeat: bool=?) => unit = "vibrate" @scope("Vibration") @module("react-native") external cancel: unit => unit = "cancel" diff --git a/src/elements/ScrollViewElement.res b/src/elements/ScrollViewElement.res index 290e8d54d..4d92a185b 100644 --- a/src/elements/ScrollViewElement.res +++ b/src/elements/ScrollViewElement.res @@ -1,18 +1,14 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) -include ScrollViewMethods.Make({ - type t = element -}) +include ScrollViewMethods.Make({type t = element}) -type scrollToParams = { +type scrollToOptions = { x: float, y: float, animated?: bool, duration?: float, } -@send external scrollTo: (element, scrollToParams) => unit = "scrollTo" +@send external scrollTo: (element, scrollToOptions) => unit = "scrollTo" diff --git a/src/elements/ScrollViewMethods.res b/src/elements/ScrollViewMethods.res index 9e5be5f0b..1589ade14 100644 --- a/src/elements/ScrollViewMethods.res +++ b/src/elements/ScrollViewMethods.res @@ -5,12 +5,7 @@ module Make = ( ) => { type scrollToEndOptions = {animated?: bool, duration?: float} - // multiple externals - @send external scrollToEnd: T.t => unit = "scrollToEnd" - - // multiple externals - @send - external scrollToEndWithOptions: (T.t, scrollToEndOptions) => unit = "scrollToEnd" + @send external scrollToEnd: (T.t, ~options: scrollToEndOptions=?) => unit = "scrollToEnd" @send external flashScrollIndicators: T.t => unit = "flashScrollIndicators" From bebb2e3309438539ab7193d26fbbc67376bb8564 Mon Sep 17 00:00:00 2001 From: Freddy Harris Date: Sat, 25 Apr 2026 17:20:36 +0200 Subject: [PATCH 6/7] format --- src/apis/Event.res | 32 +++++-------------- src/apis/Platform.res | 3 +- src/components/ActivityIndicator.res | 4 +-- src/components/Button.res | 4 +-- src/components/DrawerLayoutAndroid.res | 4 +-- src/components/Image.res | 16 +++------- src/components/ImageBackground.res | 4 +-- src/components/KeyboardAvoidingView.res | 4 +-- src/components/Modal.res | 8 ++--- src/components/Pressable.res | 4 +-- src/components/ProgressBarAndroid.res | 4 +-- src/components/RefreshControl.res | 4 +-- src/components/SafeAreaView.res | 4 +-- src/components/Switch.res | 4 +-- src/components/Text.res | 4 +-- src/components/TextInput.res | 24 ++++---------- src/components/TouchableHighlight.res | 4 +-- src/components/TouchableNativeFeedback.res | 4 +-- src/components/TouchableWithoutFeedback.res | 4 +-- src/components/View.res | 4 +-- src/elements/DrawerLayoutAndroidElement.res | 8 ++--- src/elements/NativeElement.res | 12 ++----- src/elements/TextInputElement.res | 8 ++--- src/elements/TouchableOpacityElement.res | 8 ++--- src/elements/VirtualizedListElement.res | 12 ++----- .../VirtualizedSectionListElement.res | 8 ++--- src/types/AccessibilityActionEvent.res | 4 +-- src/types/DOMAPI.res | 20 +++--------- 28 files changed, 56 insertions(+), 167 deletions(-) diff --git a/src/apis/Event.res b/src/apis/Event.res index a3bb3f9c5..950c82c32 100644 --- a/src/apis/Event.res +++ b/src/apis/Event.res @@ -54,9 +54,7 @@ module SyntheticEvent = ( \"type": nullable, } - include EventMethods({ - type event = t - }) + include EventMethods({type event = t}) } module ResponderSyntheticEvent = ( @@ -99,9 +97,7 @@ module ResponderSyntheticEvent = ( touchHistory: touchHistory, } - include EventMethods({ - type event = t - }) + include EventMethods({type event = t}) @get external touchHistory: t => touchHistory = "touchHistory" } @@ -127,9 +123,7 @@ module LayoutEvent = { type payload = {layout: layout} - include SyntheticEvent({ - type _payload = payload - }) + include SyntheticEvent({type _payload = payload}) } module TextLayoutEvent = { @@ -147,9 +141,7 @@ module TextLayoutEvent = { type payload = {lines: array} - include SyntheticEvent({ - type _payload = payload - }) + include SyntheticEvent({type _payload = payload}) } module PressEvent = { @@ -166,9 +158,7 @@ module PressEvent = { touches: array, } - include ResponderSyntheticEvent({ - type _payload = payload - }) + include ResponderSyntheticEvent({type _payload = payload}) } module ScrollEvent = { @@ -194,25 +184,19 @@ module ScrollEvent = { layoutMeasurement: dimensions, } - include SyntheticEvent({ - type _payload = payload - }) + include SyntheticEvent({type _payload = payload}) } module SwitchChangeEvent = { type payload = {value: bool} - include SyntheticEvent({ - type _payload = payload - }) + include SyntheticEvent({type _payload = payload}) } module TargetEvent = { type payload = {target: int} - include SyntheticEvent({ - type _payload = payload - }) + include SyntheticEvent({type _payload = payload}) } type blurEvent = BlurEvent.t diff --git a/src/apis/Platform.res b/src/apis/Platform.res index ef150b45a..1145a5e37 100644 --- a/src/apis/Platform.res +++ b/src/apis/Platform.res @@ -10,8 +10,7 @@ Platform.os === #ios : doSomethingInOtherPlatform() ``` */ -@module("react-native") -@scope("Platform") +@module("react-native") @scope("Platform") external os: os = "OS" @module("react-native") @scope("Platform") diff --git a/src/components/ActivityIndicator.res b/src/components/ActivityIndicator.res index 5a2df2a6c..279e9cdf2 100644 --- a/src/components/ActivityIndicator.res +++ b/src/components/ActivityIndicator.res @@ -1,8 +1,6 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) @unboxed type size = | @as("small") Small | @as("large") Large | Number(float) diff --git a/src/components/Button.res b/src/components/Button.res index 3c853c083..dc56458cc 100644 --- a/src/components/Button.res +++ b/src/components/Button.res @@ -1,8 +1,6 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) type props = { ref?: ref, diff --git a/src/components/DrawerLayoutAndroid.res b/src/components/DrawerLayoutAndroid.res index 6c86cd501..c54cf35e9 100644 --- a/src/components/DrawerLayoutAndroid.res +++ b/src/components/DrawerLayoutAndroid.res @@ -3,9 +3,7 @@ include DrawerLayoutAndroidElement module DrawerSlideEvent = { type payload = {offset: float} - include Event.SyntheticEvent({ - type _payload = payload - }) + include Event.SyntheticEvent({type _payload = payload}) } type drawerSlideEvent = DrawerSlideEvent.t diff --git a/src/components/Image.res b/src/components/Image.res index d0bbd5c63..af1fdec8d 100644 --- a/src/components/Image.res +++ b/src/components/Image.res @@ -1,8 +1,6 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) type cache = [ | #default @@ -43,9 +41,7 @@ module ImageLoadEvent = { source: source, } - include Event.SyntheticEvent({ - type _payload = payload - }) + include Event.SyntheticEvent({type _payload = payload}) } type imageLoadEvent = ImageLoadEvent.t @@ -53,9 +49,7 @@ type imageLoadEvent = ImageLoadEvent.t module ErrorEvent = { type payload = {error: string} - include Event.SyntheticEvent({ - type _payload = payload - }) + include Event.SyntheticEvent({type _payload = payload}) } type errorEvent = ErrorEvent.t @@ -66,9 +60,7 @@ module ProgressEvent = { total: float, } - include Event.SyntheticEvent({ - type _payload = payload - }) + include Event.SyntheticEvent({type _payload = payload}) } type progressEvent = ProgressEvent.t diff --git a/src/components/ImageBackground.res b/src/components/ImageBackground.res index 59869ff97..13e3f6122 100644 --- a/src/components/ImageBackground.res +++ b/src/components/ImageBackground.res @@ -1,8 +1,6 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) type props = { ref?: ref, diff --git a/src/components/KeyboardAvoidingView.res b/src/components/KeyboardAvoidingView.res index 563ad12e9..52db050d7 100644 --- a/src/components/KeyboardAvoidingView.res +++ b/src/components/KeyboardAvoidingView.res @@ -1,8 +1,6 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) type behavior = [#height | #position | #padding] diff --git a/src/components/Modal.res b/src/components/Modal.res index 0c9e961aa..87f308364 100644 --- a/src/components/Modal.res +++ b/src/components/Modal.res @@ -1,8 +1,6 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) type orientation = [ | #landscape @@ -17,9 +15,7 @@ type orientationChange = [#landscape | #portrait] module OrientationChangeEvent = { type payload = {orientation: orientationChange} - include Event.SyntheticEvent({ - type _payload = payload - }) + include Event.SyntheticEvent({type _payload = payload}) } type orientationChangeEvent = OrientationChangeEvent.t diff --git a/src/components/Pressable.res b/src/components/Pressable.res index 0fe0a907c..c196fcc1d 100644 --- a/src/components/Pressable.res +++ b/src/components/Pressable.res @@ -1,8 +1,6 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) type rippleConfig = { borderless?: bool, diff --git a/src/components/ProgressBarAndroid.res b/src/components/ProgressBarAndroid.res index 4a4a888a9..f6aa3a1fd 100644 --- a/src/components/ProgressBarAndroid.res +++ b/src/components/ProgressBarAndroid.res @@ -1,8 +1,6 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) type styleAttr = [ | #Horizontal diff --git a/src/components/RefreshControl.res b/src/components/RefreshControl.res index 71410e85f..426013b0c 100644 --- a/src/components/RefreshControl.res +++ b/src/components/RefreshControl.res @@ -1,8 +1,6 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) type props = { ref?: ref, diff --git a/src/components/SafeAreaView.res b/src/components/SafeAreaView.res index 6475a9942..813340cc9 100644 --- a/src/components/SafeAreaView.res +++ b/src/components/SafeAreaView.res @@ -1,8 +1,6 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) type props = { ref?: ref, diff --git a/src/components/Switch.res b/src/components/Switch.res index 9c4bf54bb..b2b81071f 100644 --- a/src/components/Switch.res +++ b/src/components/Switch.res @@ -1,8 +1,6 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) type trackColor = { \"true"?: Color.t, diff --git a/src/components/Text.res b/src/components/Text.res index db2ab8c59..24d350301 100644 --- a/src/components/Text.res +++ b/src/components/Text.res @@ -1,8 +1,6 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) type android_hyphenationFrequency = [ | #normal diff --git a/src/components/TextInput.res b/src/components/TextInput.res index f92c8f250..2da680228 100644 --- a/src/components/TextInput.res +++ b/src/components/TextInput.res @@ -6,9 +6,7 @@ module ChangeEvent = { text: string, } - include Event.SyntheticEvent({ - type _payload = payload - }) + include Event.SyntheticEvent({type _payload = payload}) } type changeEvent = ChangeEvent.t @@ -20,9 +18,7 @@ module EditingEvent = { target: int, } - include Event.SyntheticEvent({ - type _payload = payload - }) + include Event.SyntheticEvent({type _payload = payload}) } type editingEvent = EditingEvent.t @@ -37,9 +33,7 @@ module ContentSizeChangeEvent = { contentSize: contentSize, } - include Event.SyntheticEvent({ - type _payload = payload - }) + include Event.SyntheticEvent({type _payload = payload}) } type contentSizeChangeEvent = ContentSizeChangeEvent.t @@ -52,9 +46,7 @@ module ScrollEvent = { type payload = {contentOffset: contentOffset} - include Event.SyntheticEvent({ - type _payload = payload - }) + include Event.SyntheticEvent({type _payload = payload}) } type scrollEvent = ScrollEvent.t @@ -70,9 +62,7 @@ module SelectionChangeEvent = { target: int, } - include Event.SyntheticEvent({ - type _payload = payload - }) + include Event.SyntheticEvent({type _payload = payload}) } type selectionChangeEvent = SelectionChangeEvent.t @@ -84,9 +74,7 @@ module KeyPressEvent = { eventCount: nullable, } - include Event.SyntheticEvent({ - type _payload = payload - }) + include Event.SyntheticEvent({type _payload = payload}) } type keyPressEvent = KeyPressEvent.t diff --git a/src/components/TouchableHighlight.res b/src/components/TouchableHighlight.res index 1696d5d84..c02336dbb 100644 --- a/src/components/TouchableHighlight.res +++ b/src/components/TouchableHighlight.res @@ -1,8 +1,6 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) type props = { ref?: ref, diff --git a/src/components/TouchableNativeFeedback.res b/src/components/TouchableNativeFeedback.res index 60dfbf672..e102f8435 100644 --- a/src/components/TouchableNativeFeedback.res +++ b/src/components/TouchableNativeFeedback.res @@ -1,8 +1,6 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) module Background = { type t diff --git a/src/components/TouchableWithoutFeedback.res b/src/components/TouchableWithoutFeedback.res index b23d7495d..3e37560ee 100644 --- a/src/components/TouchableWithoutFeedback.res +++ b/src/components/TouchableWithoutFeedback.res @@ -1,8 +1,6 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) type coreProps = { accessible?: bool, diff --git a/src/components/View.res b/src/components/View.res index fda0be949..fc24a7138 100644 --- a/src/components/View.res +++ b/src/components/View.res @@ -1,8 +1,6 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) // @todo in 0.71.0 // after adding `aria-*` props, make sure `aria-checked` can be true, false or "mixed" diff --git a/src/elements/DrawerLayoutAndroidElement.res b/src/elements/DrawerLayoutAndroidElement.res index e9e8daf12..5704b2a04 100644 --- a/src/elements/DrawerLayoutAndroidElement.res +++ b/src/elements/DrawerLayoutAndroidElement.res @@ -1,9 +1,5 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) -include DrawerLayoutAndroidMethods.Make({ - type t = element -}) +include DrawerLayoutAndroidMethods.Make({type t = element}) diff --git a/src/elements/NativeElement.res b/src/elements/NativeElement.res index a7fb20461..aee06ba23 100644 --- a/src/elements/NativeElement.res +++ b/src/elements/NativeElement.res @@ -8,13 +8,9 @@ module Impl = ( external unsafeFromAnyElement: DOMAPI.anyElement => element = "%identity" - include NativeMethods.Make({ - type t = element - }) + include NativeMethods.Make({type t = element}) - include DOMAPI.Element.Impl({ - type t = element - }) + include DOMAPI.Element.Impl({type t = element}) } @deprecated("Use NativeElement.Impl instead of accessing element type directly.") @@ -24,6 +20,4 @@ type element type ref = Ref.t @warning("-3") -include NativeMethods.Make({ - type t = element -}) +include NativeMethods.Make({type t = element}) diff --git a/src/elements/TextInputElement.res b/src/elements/TextInputElement.res index 4f26ee666..763793728 100644 --- a/src/elements/TextInputElement.res +++ b/src/elements/TextInputElement.res @@ -1,9 +1,5 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) -include TextInputMethods.Make({ - type t = element -}) +include TextInputMethods.Make({type t = element}) diff --git a/src/elements/TouchableOpacityElement.res b/src/elements/TouchableOpacityElement.res index 61b2ade5d..e18acc6a3 100644 --- a/src/elements/TouchableOpacityElement.res +++ b/src/elements/TouchableOpacityElement.res @@ -1,9 +1,5 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) -include TouchableOpacityMethods.Make({ - type t = element -}) +include TouchableOpacityMethods.Make({type t = element}) diff --git a/src/elements/VirtualizedListElement.res b/src/elements/VirtualizedListElement.res index 0cb65266a..d30a08517 100644 --- a/src/elements/VirtualizedListElement.res +++ b/src/elements/VirtualizedListElement.res @@ -1,13 +1,7 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) -include VirtualizedListMethods.Make({ - type t = element -}) +include VirtualizedListMethods.Make({type t = element}) -include ScrollViewMethods.Make({ - type t = element -}) +include ScrollViewMethods.Make({type t = element}) diff --git a/src/elements/VirtualizedSectionListElement.res b/src/elements/VirtualizedSectionListElement.res index 2897e90a4..fbcfb44d9 100644 --- a/src/elements/VirtualizedSectionListElement.res +++ b/src/elements/VirtualizedSectionListElement.res @@ -1,9 +1,5 @@ type nativeElement -include NativeElement.Impl({ - type t = nativeElement -}) +include NativeElement.Impl({type t = nativeElement}) -include VirtualizedSectionListMethods.Make({ - type t = element -}) +include VirtualizedSectionListMethods.Make({type t = element}) diff --git a/src/types/AccessibilityActionEvent.res b/src/types/AccessibilityActionEvent.res index b88ac778b..7bba69268 100644 --- a/src/types/AccessibilityActionEvent.res +++ b/src/types/AccessibilityActionEvent.res @@ -1,5 +1,3 @@ type payload = {actionName: string} -include Event.SyntheticEvent({ - type _payload = payload -}) +include Event.SyntheticEvent({type _payload = payload}) diff --git a/src/types/DOMAPI.res b/src/types/DOMAPI.res index c038b769a..bea2fae4f 100644 --- a/src/types/DOMAPI.res +++ b/src/types/DOMAPI.res @@ -103,9 +103,7 @@ module Node = { @send external hasChildNodes: T.t => bool = "hasChildNodes" } - include Impl({ - type t = node - }) + include Impl({type t = node}) } module Element = { @@ -114,9 +112,7 @@ module Element = { type t }, ) => { - include Node.Impl({ - type t = T.t - }) + include Node.Impl({type t = T.t}) @send external getBoundingClientRect: T.t => Rect.t = "getBoundingClientRect" @@ -132,24 +128,18 @@ module Element = { @send external setNativeProps: (T.t, {..}) => unit = "setNativeProps" } - include Impl({ - type t = anyElement - }) + include Impl({type t = anyElement}) } module Document = { - include Node.Impl({ - type t = document - }) + include Node.Impl({type t = document}) @send external getElementById: (document, string) => null = "getElementById" } module Text = { - include Node.Impl({ - type t = text - }) + include Node.Impl({type t = text}) @send external substringData: (text, ~offset: int, ~count: int) => string = "substringData" } From c9738bb083e033cfacb07491871e607464f59e93 Mon Sep 17 00:00:00 2001 From: Freddy Harris Date: Sun, 26 Apr 2026 11:24:44 +0200 Subject: [PATCH 7/7] revert multiple external animated event --- src/apis/Animated.res | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/apis/Animated.res b/src/apis/Animated.res index 9736cd278..0cb2ff5a7 100644 --- a/src/apis/Animated.res +++ b/src/apis/Animated.res @@ -218,8 +218,14 @@ type eventConfig<'a, 'platformConfig> = { platformConfig?: 'platformConfig, } +// multiple externals @module("react-native") @scope("Animated") -external event: (array<'mapping>, ~config: eventConfig<'a, 'platformConfig>=?) => 'a = "event" +external event1: (array<'mapping>, ~config: eventConfig<'a, 'platformConfig>=?) => 'a = "event" + +// multiple externals +@module("react-native") @scope("Animated") +external event2: (('mapping1, 'mapping2), ~config: eventConfig<'a, 'platformConfig>=?) => 'a = + "event" @module("react-native") @scope("Animated") external createAnimatedComponent: React.component<'props> => React.component<'props> =