diff --git a/apps/common-app/package.json b/apps/common-app/package.json index 93f75b3ea922..1837a0f0a83b 100644 --- a/apps/common-app/package.json +++ b/apps/common-app/package.json @@ -19,6 +19,7 @@ "@react-navigation/native": "*", "@react-navigation/native-stack": "*", "@react-navigation/stack": "*", + "@stylexjs/babel-plugin": "*", "d3-shape": "*", "react": "*", "react-dom": "*", @@ -29,7 +30,8 @@ "react-native-safe-area-context": "*", "react-native-screens": "*", "react-native-svg": "*", - "react-native-web": "*" + "react-native-web": "*", + "react-strict-dom": "*" }, "devDependencies": { "@fortawesome/fontawesome-svg-core": "^6.4.0", @@ -43,6 +45,7 @@ "@react-navigation/native": "^6.1.9", "@react-navigation/native-stack": "^6.9.17", "@react-navigation/stack": "^6.3.18", + "@stylexjs/babel-plugin": "^0.7.0", "@tsconfig/react-native": "^3.0.0", "@types/d3-shape": "^3.1.1", "d3-shape": "^3.2.0", @@ -58,6 +61,7 @@ "react-native-safe-area-context": "4.10.0-rc.1", "react-native-screens": "3.31.0-rc.1", "react-native-svg": "^15.2.0-rc.0", + "react-strict-dom": "^0.0.17", "typescript": "~5.3.0" } } diff --git a/apps/common-app/src/examples/StrictDOMExample.tsx b/apps/common-app/src/examples/StrictDOMExample.tsx new file mode 100644 index 000000000000..08c4f75b3cc0 --- /dev/null +++ b/apps/common-app/src/examples/StrictDOMExample.tsx @@ -0,0 +1,70 @@ +import React, { useEffect } from 'react'; +import { css, html } from 'react-strict-dom'; +import Animated, { + useAnimatedStyle, + useSharedValue, + withRepeat, + withSpring, + withTiming, +} from 'react-native-reanimated'; +import { Gesture, GestureDetector } from 'react-native-gesture-handler'; + +const animated = { + html: { + div: Animated.createAnimatedComponent(html.div), + }, +}; + +const styles = css.create({ + container: { + display: 'flex', + flexDirection: 'column', + flexGrow: 1, + alignItems: 'center', + justifyContent: 'center', + }, + box: { + width: '100px', + height: '100px', + backgroundColor: 'blue', + }, +}); + +export default function StrictDOMExample() { + const opacity = useSharedValue(1); + const width = useSharedValue(100); + const x = useSharedValue(0); + const y = useSharedValue(0); + + const animatedStyle = useAnimatedStyle(() => { + return { + opacity: opacity.value, + width: width.value, + transform: [{ translateX: x.value }, { translateY: y.value }], + }; + }); + + const panGesture = Gesture.Pan() + .onUpdate((e) => { + x.value = e.translationX; + y.value = e.translationY; + }) + .onEnd(() => { + x.value = withSpring(0); + y.value = withSpring(0); + }); + + useEffect(() => { + opacity.value = withRepeat(withTiming(0.3, { duration: 800 }), -1, true); + width.value = withRepeat(withTiming(300, { duration: 800 }), -1, true); + }, []); + + return ( + + React Strict DOM demo + + + + + ); +} diff --git a/apps/common-app/src/examples/index.ts b/apps/common-app/src/examples/index.ts index 10f7e41c72b7..8315ac704cfb 100644 --- a/apps/common-app/src/examples/index.ts +++ b/apps/common-app/src/examples/index.ts @@ -131,6 +131,7 @@ import ComposedHandlerInternalMergingExample from './ComposedHandlerInternalMerg import BorderRadiiExample from './SharedElementTransitions/BorderRadii'; import FreezingShareablesExample from './ShareableFreezingExample'; import TabNavigatorExample from './SharedElementTransitions/TabNavigatorExample'; +import StrictDOMExample from './StrictDOMExample'; interface Example { icon?: string; @@ -530,6 +531,11 @@ export const EXAMPLES: Record = { title: 'BB', screen: BBExample, }, + StrictDOMExample: { + icon: '👮‍♂️', + title: 'React Strict DOM', + screen: StrictDOMExample, + }, // Old examples diff --git a/apps/web-example/babel.config.js b/apps/web-example/babel.config.js index 5aa2df7db747..4954e5c79d22 100644 --- a/apps/web-example/babel.config.js +++ b/apps/web-example/babel.config.js @@ -1,12 +1,32 @@ +const stylexPlugin = require('@stylexjs/babel-plugin'); +const rsdPlugin = require('react-strict-dom/babel'); + module.exports = function (api) { + const plugins = [ + rsdPlugin, + [ + stylexPlugin, + { + importSources: [ + '@stylexjs/stylex', + { from: 'react-strict-dom', as: 'css' }, + ], + runtimeInjection: true, + }, + ], + ]; + const disableBabelPlugin = process.env.DISABLE_BABEL_PLUGIN === '1'; // https://babeljs.io/docs/en/config-files#apicache api.cache.invalidate(() => disableBabelPlugin); if (disableBabelPlugin) { console.log('Starting Web example without Babel plugin.'); + } else { + plugins.push('react-native-reanimated/plugin'); } + return { presets: ['babel-preset-expo'], - plugins: disableBabelPlugin ? [] : ['react-native-reanimated/plugin'], + plugins, }; }; diff --git a/yarn.lock b/yarn.lock index fd25939cb727..6a82a08cf117 100644 --- a/yarn.lock +++ b/yarn.lock @@ -83,6 +83,16 @@ __metadata: languageName: node linkType: hard +"@babel/code-frame@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/code-frame@npm:7.24.7" + dependencies: + "@babel/highlight": "npm:^7.24.7" + picocolors: "npm:^1.0.0" + checksum: 10/4812e94885ba7e3213d49583a155fdffb05292330f0a9b2c41b49288da70cf3c746a3fda0bf1074041a6d741c33f8d7be24be5e96f41ef77395eeddc5c9ff624 + languageName: node + linkType: hard + "@babel/compat-data@npm:^7.20.5, @babel/compat-data@npm:^7.22.6, @babel/compat-data@npm:^7.23.5, @babel/compat-data@npm:^7.24.4": version: 7.24.4 resolution: "@babel/compat-data@npm:7.24.4" @@ -97,6 +107,13 @@ __metadata: languageName: node linkType: hard +"@babel/compat-data@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/compat-data@npm:7.24.7" + checksum: 10/6edc09152ca51a22c33741c441f33f9475598fa59edc53369edb74b49f4ea4bef1281f5b0ed2b9b67fb66faef2da2069e21c4eef83405d8326e524b301f4e7e2 + languageName: node + linkType: hard + "@babel/core@npm:^7.1.0, @babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.13.16, @babel/core@npm:^7.18.5, @babel/core@npm:^7.20.0, @babel/core@npm:^7.23.9": version: 7.24.5 resolution: "@babel/core@npm:7.24.5" @@ -143,6 +160,29 @@ __metadata: languageName: node linkType: hard +"@babel/core@npm:^7.23.6": + version: 7.24.7 + resolution: "@babel/core@npm:7.24.7" + dependencies: + "@ampproject/remapping": "npm:^2.2.0" + "@babel/code-frame": "npm:^7.24.7" + "@babel/generator": "npm:^7.24.7" + "@babel/helper-compilation-targets": "npm:^7.24.7" + "@babel/helper-module-transforms": "npm:^7.24.7" + "@babel/helpers": "npm:^7.24.7" + "@babel/parser": "npm:^7.24.7" + "@babel/template": "npm:^7.24.7" + "@babel/traverse": "npm:^7.24.7" + "@babel/types": "npm:^7.24.7" + convert-source-map: "npm:^2.0.0" + debug: "npm:^4.1.0" + gensync: "npm:^1.0.0-beta.2" + json5: "npm:^2.2.3" + semver: "npm:^6.3.1" + checksum: 10/ef8cc1afa3ccecee6d1f5660c487ccc2a3f25106830ea9040e80ef4b2092e053607ee4ddd03493e4f7ef2f9967a956ca53b830d54c5bee738eeb58cce679dd4a + languageName: node + linkType: hard + "@babel/eslint-parser@npm:^7.20.0": version: 7.24.5 resolution: "@babel/eslint-parser@npm:7.24.5" @@ -181,6 +221,18 @@ __metadata: languageName: node linkType: hard +"@babel/generator@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/generator@npm:7.24.7" + dependencies: + "@babel/types": "npm:^7.24.7" + "@jridgewell/gen-mapping": "npm:^0.3.5" + "@jridgewell/trace-mapping": "npm:^0.3.25" + jsesc: "npm:^2.5.1" + checksum: 10/c71d24a4b41b19c10d2f2eb819f27d4cf94220e2322f7c8fed8bfbbb115b2bebbdd6dc1f27dac78a175e90604def58d763af87e0fa81ce4ab1582858162cf768 + languageName: node + linkType: hard + "@babel/helper-annotate-as-pure@npm:^7.22.5": version: 7.22.5 resolution: "@babel/helper-annotate-as-pure@npm:7.22.5" @@ -234,6 +286,19 @@ __metadata: languageName: node linkType: hard +"@babel/helper-compilation-targets@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-compilation-targets@npm:7.24.7" + dependencies: + "@babel/compat-data": "npm:^7.24.7" + "@babel/helper-validator-option": "npm:^7.24.7" + browserslist: "npm:^4.22.2" + lru-cache: "npm:^5.1.1" + semver: "npm:^6.3.1" + checksum: 10/8f8bc89af70a606ccb208513aa25d83e19b88f91b64a33174f7701a9479e67ddbb0a9c89033265070375cd24e690b93380b3a3ea11e4b3a711d742f0f4699ee7 + languageName: node + linkType: hard + "@babel/helper-create-class-features-plugin@npm:^7.18.6, @babel/helper-create-class-features-plugin@npm:^7.24.1, @babel/helper-create-class-features-plugin@npm:^7.24.4, @babel/helper-create-class-features-plugin@npm:^7.24.5": version: 7.24.5 resolution: "@babel/helper-create-class-features-plugin@npm:7.24.5" @@ -314,6 +379,15 @@ __metadata: languageName: node linkType: hard +"@babel/helper-environment-visitor@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-environment-visitor@npm:7.24.7" + dependencies: + "@babel/types": "npm:^7.24.7" + checksum: 10/079d86e65701b29ebc10baf6ed548d17c19b808a07aa6885cc141b690a78581b180ee92b580d755361dc3b16adf975b2d2058b8ce6c86675fcaf43cf22f2f7c6 + languageName: node + linkType: hard + "@babel/helper-function-name@npm:^7.23.0": version: 7.23.0 resolution: "@babel/helper-function-name@npm:7.23.0" @@ -334,6 +408,16 @@ __metadata: languageName: node linkType: hard +"@babel/helper-function-name@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-function-name@npm:7.24.7" + dependencies: + "@babel/template": "npm:^7.24.7" + "@babel/types": "npm:^7.24.7" + checksum: 10/2ceb3d9b2b35a0fc4100fc06ed7be3bc38f03ff0bf128ff0edbc0cc7dd842967b1496fc70b5c616c747d7711c2b87e7d025c8888f48740631d6148a9d3614f85 + languageName: node + linkType: hard + "@babel/helper-hoist-variables@npm:^7.22.5": version: 7.22.5 resolution: "@babel/helper-hoist-variables@npm:7.22.5" @@ -352,6 +436,15 @@ __metadata: languageName: node linkType: hard +"@babel/helper-hoist-variables@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-hoist-variables@npm:7.24.7" + dependencies: + "@babel/types": "npm:^7.24.7" + checksum: 10/6cfdcf2289cd12185dcdbdf2435fa8d3447b797ac75851166de9fc8503e2fd0021db6baf8dfbecad3753e582c08e6a3f805c8d00cbed756060a877d705bd8d8d + languageName: node + linkType: hard + "@babel/helper-member-expression-to-functions@npm:^7.23.0, @babel/helper-member-expression-to-functions@npm:^7.24.5": version: 7.24.5 resolution: "@babel/helper-member-expression-to-functions@npm:7.24.5" @@ -388,6 +481,16 @@ __metadata: languageName: node linkType: hard +"@babel/helper-module-imports@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-module-imports@npm:7.24.7" + dependencies: + "@babel/traverse": "npm:^7.24.7" + "@babel/types": "npm:^7.24.7" + checksum: 10/df8bfb2bb18413aa151ecd63b7d5deb0eec102f924f9de6bc08022ced7ed8ca7fed914562d2f6fa5b59b74a5d6e255dc35612b2bc3b8abf361e13f61b3704770 + languageName: node + linkType: hard + "@babel/helper-module-transforms@npm:^7.23.3, @babel/helper-module-transforms@npm:^7.24.5": version: 7.24.5 resolution: "@babel/helper-module-transforms@npm:7.24.5" @@ -418,6 +521,21 @@ __metadata: languageName: node linkType: hard +"@babel/helper-module-transforms@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-module-transforms@npm:7.24.7" + dependencies: + "@babel/helper-environment-visitor": "npm:^7.24.7" + "@babel/helper-module-imports": "npm:^7.24.7" + "@babel/helper-simple-access": "npm:^7.24.7" + "@babel/helper-split-export-declaration": "npm:^7.24.7" + "@babel/helper-validator-identifier": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 10/4f2b232bf6d1be8d3a72b084a2a7ac1b0b93ea85717411a11ae1fb6375d4392019e781d8cc155789e649a2caa7eec378dd1404210603d6d4230f042c5feacffb + languageName: node + linkType: hard + "@babel/helper-optimise-call-expression@npm:^7.22.5": version: 7.22.5 resolution: "@babel/helper-optimise-call-expression@npm:7.22.5" @@ -507,6 +625,16 @@ __metadata: languageName: node linkType: hard +"@babel/helper-simple-access@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-simple-access@npm:7.24.7" + dependencies: + "@babel/traverse": "npm:^7.24.7" + "@babel/types": "npm:^7.24.7" + checksum: 10/5083e190186028e48fc358a192e4b93ab320bd016103caffcfda81302a13300ccce46c9cd255ae520c25d2a6a9b47671f93e5fe5678954a2329dc0a685465c49 + languageName: node + linkType: hard + "@babel/helper-skip-transparent-expression-wrappers@npm:^7.20.0, @babel/helper-skip-transparent-expression-wrappers@npm:^7.22.5": version: 7.22.5 resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.22.5" @@ -543,6 +671,15 @@ __metadata: languageName: node linkType: hard +"@babel/helper-split-export-declaration@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-split-export-declaration@npm:7.24.7" + dependencies: + "@babel/types": "npm:^7.24.7" + checksum: 10/ff04a3071603c87de0d6ee2540b7291ab36305b329bd047cdbb6cbd7db335a12f9a77af1cf708779f75f13c4d9af46093c00b34432e50b2411872c658d1a2e5e + languageName: node + linkType: hard + "@babel/helper-string-parser@npm:^7.24.1": version: 7.24.1 resolution: "@babel/helper-string-parser@npm:7.24.1" @@ -557,6 +694,13 @@ __metadata: languageName: node linkType: hard +"@babel/helper-string-parser@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-string-parser@npm:7.24.7" + checksum: 10/603d8d962bbe89907aa99a8f19a006759ab7b2464615f20a6a22e3e2e8375af37ddd0e5175c9e622e1c4b2d83607ffb41055a59d0ce34404502af30fde573a5c + languageName: node + linkType: hard + "@babel/helper-validator-identifier@npm:^7.22.20, @babel/helper-validator-identifier@npm:^7.24.5": version: 7.24.5 resolution: "@babel/helper-validator-identifier@npm:7.24.5" @@ -571,6 +715,13 @@ __metadata: languageName: node linkType: hard +"@babel/helper-validator-identifier@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-validator-identifier@npm:7.24.7" + checksum: 10/86875063f57361471b531dbc2ea10bbf5406e12b06d249b03827d361db4cad2388c6f00936bcd9dc86479f7e2c69ea21412c2228d4b3672588b754b70a449d4b + languageName: node + linkType: hard + "@babel/helper-validator-option@npm:^7.23.5": version: 7.23.5 resolution: "@babel/helper-validator-option@npm:7.23.5" @@ -585,6 +736,13 @@ __metadata: languageName: node linkType: hard +"@babel/helper-validator-option@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-validator-option@npm:7.24.7" + checksum: 10/9689166bf3f777dd424c026841c8cd651e41b21242dbfd4569a53086179a3e744c8eddd56e9d10b54142270141c91581b53af0d7c00c82d552d2540e2a919f7e + languageName: node + linkType: hard + "@babel/helper-wrap-function@npm:^7.22.20": version: 7.24.5 resolution: "@babel/helper-wrap-function@npm:7.24.5" @@ -617,6 +775,16 @@ __metadata: languageName: node linkType: hard +"@babel/helpers@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helpers@npm:7.24.7" + dependencies: + "@babel/template": "npm:^7.24.7" + "@babel/types": "npm:^7.24.7" + checksum: 10/f7496f0d7a0b13ea86136ac2053371027125734170328215f8a90eac96fafaaae4e5398c0729bdadf23261c00582a31e14bc70113427653b718220641a917f9d + languageName: node + linkType: hard + "@babel/highlight@npm:^7.10.4, @babel/highlight@npm:^7.24.6": version: 7.24.6 resolution: "@babel/highlight@npm:7.24.6" @@ -641,6 +809,18 @@ __metadata: languageName: node linkType: hard +"@babel/highlight@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/highlight@npm:7.24.7" + dependencies: + "@babel/helper-validator-identifier": "npm:^7.24.7" + chalk: "npm:^2.4.2" + js-tokens: "npm:^4.0.0" + picocolors: "npm:^1.0.0" + checksum: 10/69b73f38cdd4f881b09b939a711e76646da34f4834f4ce141d7a49a6bb1926eab1c594148970a8aa9360398dff800f63aade4e81fafdd7c8d8a8489ea93bfec1 + languageName: node + linkType: hard + "@babel/parser@npm:^7.0.0, @babel/parser@npm:^7.1.0, @babel/parser@npm:^7.13.16, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.0, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.23.9, @babel/parser@npm:^7.24.0, @babel/parser@npm:^7.24.5, @babel/parser@npm:^7.7.0": version: 7.24.5 resolution: "@babel/parser@npm:7.24.5" @@ -659,6 +839,15 @@ __metadata: languageName: node linkType: hard +"@babel/parser@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/parser@npm:7.24.7" + bin: + parser: ./bin/babel-parser.js + checksum: 10/ef9ebce60e13db560ccc7af9235d460f6726bb7e23ae2d675098c1fc43d5249067be60d4118889dad33b1d4f85162cf66baf554719e1669f29bb20e71322568e + languageName: node + linkType: hard + "@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:^7.24.5": version: 7.24.5 resolution: "@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:7.24.5" @@ -2235,6 +2424,17 @@ __metadata: languageName: node linkType: hard +"@babel/template@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/template@npm:7.24.7" + dependencies: + "@babel/code-frame": "npm:^7.24.7" + "@babel/parser": "npm:^7.24.7" + "@babel/types": "npm:^7.24.7" + checksum: 10/5975d404ef51cf379515eb0f80b115981d0b9dff5539e53a47516644abb8c83d7559f5b083eb1d4977b20d8359ebb2f911ccd4f729143f8958fdc465f976d843 + languageName: node + linkType: hard + "@babel/traverse@npm:^7.20.0, @babel/traverse@npm:^7.24.5, @babel/traverse@npm:^7.7.0": version: 7.24.5 resolution: "@babel/traverse@npm:7.24.5" @@ -2253,6 +2453,24 @@ __metadata: languageName: node linkType: hard +"@babel/traverse@npm:^7.23.6, @babel/traverse@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/traverse@npm:7.24.7" + dependencies: + "@babel/code-frame": "npm:^7.24.7" + "@babel/generator": "npm:^7.24.7" + "@babel/helper-environment-visitor": "npm:^7.24.7" + "@babel/helper-function-name": "npm:^7.24.7" + "@babel/helper-hoist-variables": "npm:^7.24.7" + "@babel/helper-split-export-declaration": "npm:^7.24.7" + "@babel/parser": "npm:^7.24.7" + "@babel/types": "npm:^7.24.7" + debug: "npm:^4.3.1" + globals: "npm:^11.1.0" + checksum: 10/785cf26383a992740e492efba7016de964cd06c05c9d7146fa1b5ead409e054c444f50b36dc37856884a56e32cf9d3105ddf1543486b6df68300bffb117a245a + languageName: node + linkType: hard + "@babel/traverse@npm:^7.24.6": version: 7.24.6 resolution: "@babel/traverse@npm:7.24.6" @@ -2282,6 +2500,17 @@ __metadata: languageName: node linkType: hard +"@babel/types@npm:^7.23.6, @babel/types@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/types@npm:7.24.7" + dependencies: + "@babel/helper-string-parser": "npm:^7.24.7" + "@babel/helper-validator-identifier": "npm:^7.24.7" + to-fast-properties: "npm:^2.0.0" + checksum: 10/ad3c8c0d6fb4acb0bb74bb5b4bb849b181bf6185677ef9c59c18856c81e43628d0858253cf232f0eca806f02e08eff85a1d3e636a3e94daea737597796b0b430 + languageName: node + linkType: hard + "@babel/types@npm:^7.24.6": version: 7.24.6 resolution: "@babel/types@npm:7.24.6" @@ -6051,6 +6280,40 @@ __metadata: languageName: node linkType: hard +"@stylexjs/babel-plugin@npm:^0.7.0": + version: 0.7.0 + resolution: "@stylexjs/babel-plugin@npm:0.7.0" + dependencies: + "@babel/core": "npm:^7.23.6" + "@babel/helper-module-imports": "npm:^7.22.15" + "@babel/traverse": "npm:^7.23.6" + "@babel/types": "npm:^7.23.6" + "@stylexjs/shared": "npm:0.7.0" + "@stylexjs/stylex": "npm:0.7.0" + checksum: 10/7407e0c32e73e723385798709304e81e4a2d614859b2de12084e9df6e4a5e4e79541efe88be2056978964d8da95671139609b5bb476791c5f957b22962883eed + languageName: node + linkType: hard + +"@stylexjs/shared@npm:0.7.0": + version: 0.7.0 + resolution: "@stylexjs/shared@npm:0.7.0" + dependencies: + postcss-value-parser: "npm:^4.1.0" + checksum: 10/89fb3faec9342e33010181c22f8bb1324b23cc7ac8d875ce7ada5fef8d8cb743c98efd48507b766f13580659f930aa223bcf5d6e18d3782af5f3960fa51e0342 + languageName: node + linkType: hard + +"@stylexjs/stylex@npm:0.7.0, @stylexjs/stylex@npm:^0.7.0": + version: 0.7.0 + resolution: "@stylexjs/stylex@npm:0.7.0" + dependencies: + css-mediaquery: "npm:^0.1.2" + invariant: "npm:^2.2.4" + styleq: "npm:0.1.3" + checksum: 10/e69fc65be50c49877b31101e000b07342197c2377bc374d350f4cb5f5b6b68fd906175a6cef5c44fa289c63e934104a3a1cc0d18a7b77f6cb781f395871fff99 + languageName: node + linkType: hard + "@swc/counter@npm:^0.1.3": version: 0.1.3 resolution: "@swc/counter@npm:0.1.3" @@ -8618,6 +8881,7 @@ __metadata: "@react-navigation/native": "npm:^6.1.9" "@react-navigation/native-stack": "npm:^6.9.17" "@react-navigation/stack": "npm:^6.3.18" + "@stylexjs/babel-plugin": "npm:^0.7.0" "@tsconfig/react-native": "npm:^3.0.0" "@types/d3-shape": "npm:^3.1.1" d3-shape: "npm:^3.2.0" @@ -8633,6 +8897,7 @@ __metadata: react-native-safe-area-context: "npm:4.10.0-rc.1" react-native-screens: "npm:3.31.0-rc.1" react-native-svg: "npm:^15.2.0-rc.0" + react-strict-dom: "npm:^0.0.17" typescript: "npm:~5.3.0" peerDependencies: "@fortawesome/fontawesome-svg-core": "*" @@ -8646,6 +8911,7 @@ __metadata: "@react-navigation/native": "*" "@react-navigation/native-stack": "*" "@react-navigation/stack": "*" + "@stylexjs/babel-plugin": "*" d3-shape: "*" react: "*" react-dom: "*" @@ -8657,6 +8923,7 @@ __metadata: react-native-screens: "*" react-native-svg: "*" react-native-web: "*" + react-strict-dom: "*" languageName: unknown linkType: soft @@ -9054,6 +9321,13 @@ __metadata: languageName: node linkType: hard +"css-mediaquery@npm:0.1.2, css-mediaquery@npm:^0.1.2": + version: 0.1.2 + resolution: "css-mediaquery@npm:0.1.2" + checksum: 10/f2f7512daa015f98b82bd65bbdd7c2100b16dddf22784bde2a8085f10f11e8775da57108016fe767f5e400afe64581c15d4e649c47725af7eac5f4094fa7ae43 + languageName: node + linkType: hard + "css-select@npm:^5.1.0": version: 5.1.0 resolution: "css-select@npm:5.1.0" @@ -16359,7 +16633,7 @@ __metadata: languageName: node linkType: hard -"postcss-value-parser@npm:^4.2.0": +"postcss-value-parser@npm:^4.1.0, postcss-value-parser@npm:^4.2.0": version: 4.2.0 resolution: "postcss-value-parser@npm:4.2.0" checksum: 10/e4e4486f33b3163a606a6ed94f9c196ab49a37a7a7163abfcd469e5f113210120d70b8dd5e33d64636f41ad52316a3725655421eb9a1094f1bcab1db2f555c62 @@ -17341,6 +17615,21 @@ __metadata: languageName: node linkType: hard +"react-strict-dom@npm:^0.0.17": + version: 0.0.17 + resolution: "react-strict-dom@npm:0.0.17" + dependencies: + "@stylexjs/stylex": "npm:^0.7.0" + css-mediaquery: "npm:0.1.2" + postcss-value-parser: "npm:^4.1.0" + peerDependencies: + react: ^18.2.0 + react-dom: ^18.2.0 + react-native: ^0.73.2 + checksum: 10/80750fcef76c351eb1aa476d0e85bc5bc3fc20994911d9d869736c04cda8a7f86175a0c41daabfe5346c5ca545c3de16ffd301288c9d2f7fd7e0374ff90f0555 + languageName: node + linkType: hard + "react-test-renderer@npm:18.2.0": version: 18.2.0 resolution: "react-test-renderer@npm:18.2.0" @@ -18872,7 +19161,7 @@ __metadata: languageName: node linkType: hard -"styleq@npm:^0.1.2, styleq@npm:^0.1.3": +"styleq@npm:0.1.3, styleq@npm:^0.1.2, styleq@npm:^0.1.3": version: 0.1.3 resolution: "styleq@npm:0.1.3" checksum: 10/9a75a1b635f8ebf5c0fdc3ffb56f466254f29aa1b2962ab2af776015d3b3bb1732a53edcda0c9ac9b97be96c22459db768feac0d61c1a319cc3954011ca9dcd8