react-native-unistyles 3.0.0-beta.3 → 3.0.0-beta.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -3
- package/android/src/main/cxx/NativeUnistylesModule.cpp +1 -1
- package/android/src/main/cxx/NativeUnistylesModule.h +1 -1
- package/components/native/ActivityIndicator/package.json +2 -1
- package/components/native/FlatList/package.json +2 -1
- package/components/native/Image/package.json +2 -1
- package/components/native/ImageBackground/package.json +2 -1
- package/components/native/KeyboardAvoidingView/package.json +2 -1
- package/components/native/Pressable/package.json +1 -1
- package/components/native/RefreshControl/package.json +2 -1
- package/components/native/ScrollView/package.json +2 -1
- package/components/native/SectionList/package.json +2 -1
- package/components/native/Switch/package.json +2 -1
- package/components/native/Text/package.json +2 -1
- package/components/native/TextInput/package.json +2 -1
- package/components/native/TouchableHighlight/package.json +2 -1
- package/components/native/TouchableOpacity/package.json +2 -1
- package/components/native/View/package.json +2 -1
- package/components/native/VirtualizedList/package.json +2 -1
- package/cxx/common/Constants.h +4 -4
- package/cxx/common/Helpers.h +1 -1
- package/cxx/core/HashGenerator.cpp +23 -0
- package/cxx/core/HashGenerator.h +13 -0
- package/cxx/core/HostUnistyle.cpp +83 -0
- package/cxx/core/HostUnistyle.h +27 -0
- package/cxx/core/RNStyle.h +18 -0
- package/cxx/core/Unistyle.h +9 -4
- package/cxx/core/UnistyleWrapper.h +92 -47
- package/cxx/core/UnistylesRegistry.cpp +19 -11
- package/cxx/core/UnistylesRegistry.h +2 -4
- package/cxx/hybridObjects/HybridNavigationBar.cpp +3 -3
- package/cxx/hybridObjects/HybridNavigationBar.h +2 -2
- package/cxx/hybridObjects/HybridShadowRegistry.cpp +32 -45
- package/cxx/hybridObjects/HybridShadowRegistry.h +0 -10
- package/cxx/hybridObjects/HybridStatusBar.cpp +3 -3
- package/cxx/hybridObjects/HybridStatusBar.h +2 -2
- package/cxx/hybridObjects/HybridStyleSheet.cpp +25 -8
- package/cxx/hybridObjects/HybridStyleSheet.h +2 -1
- package/cxx/hybridObjects/HybridUnistylesRuntime.cpp +15 -15
- package/cxx/hybridObjects/HybridUnistylesRuntime.h +2 -2
- package/cxx/parser/Parser.cpp +17 -24
- package/cxx/parser/Parser.h +2 -1
- package/ios/NativePlatform+ios.swift +5 -7
- package/ios/NativePlatform.swift +2 -2
- package/ios/UnistylesModuleOnLoad.mm +2 -1
- package/lib/commonjs/components/ScopedTheme.js.map +1 -1
- package/lib/commonjs/components/index.js +0 -7
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/commonjs/components/native/ImageBackground.js +45 -1
- package/lib/commonjs/components/native/ImageBackground.js.map +1 -1
- package/lib/commonjs/components/native/ImageBackground.native.js +10 -0
- package/lib/commonjs/components/native/ImageBackground.native.js.map +1 -0
- package/lib/commonjs/components/native/Pressable.js +26 -51
- package/lib/commonjs/components/native/Pressable.js.map +1 -1
- package/lib/commonjs/components/native/Pressable.native.js +14 -11
- package/lib/commonjs/components/native/Pressable.native.js.map +1 -1
- package/lib/commonjs/core/createUnistylesElement.js +29 -5
- package/lib/commonjs/core/createUnistylesElement.js.map +1 -1
- package/lib/commonjs/core/createUnistylesElement.native.js +40 -0
- package/lib/commonjs/core/createUnistylesElement.native.js.map +1 -0
- package/lib/commonjs/core/createUnistylesImageBackground.js +36 -14
- package/lib/commonjs/core/createUnistylesImageBackground.js.map +1 -1
- package/lib/commonjs/core/getClassname.js +25 -0
- package/lib/commonjs/core/getClassname.js.map +1 -0
- package/lib/commonjs/core/getClassname.native.js +9 -0
- package/lib/commonjs/core/getClassname.native.js.map +1 -0
- package/lib/commonjs/core/index.js +14 -7
- package/lib/commonjs/core/index.js.map +1 -1
- package/lib/commonjs/core/passForwardRef.js +2 -2
- package/lib/commonjs/core/passForwardRef.js.map +1 -1
- package/lib/commonjs/core/useProxifiedUnistyles/index.js +13 -0
- package/lib/commonjs/core/useProxifiedUnistyles/index.js.map +1 -0
- package/lib/commonjs/core/useProxifiedUnistyles/listener.js +22 -0
- package/lib/commonjs/core/useProxifiedUnistyles/listener.js.map +1 -0
- package/lib/commonjs/core/useProxifiedUnistyles/listener.native.js +26 -0
- package/lib/commonjs/core/useProxifiedUnistyles/listener.native.js.map +1 -0
- package/lib/commonjs/core/useProxifiedUnistyles/types.js +6 -0
- package/lib/commonjs/core/useProxifiedUnistyles/types.js.map +1 -0
- package/lib/commonjs/core/{withUnistyles/useDependencies.js → useProxifiedUnistyles/useProxifiedUnistyles.js} +22 -22
- package/lib/commonjs/core/useProxifiedUnistyles/useProxifiedUnistyles.js.map +1 -0
- package/lib/commonjs/core/useUnistyles.js +19 -0
- package/lib/commonjs/core/useUnistyles.js.map +1 -0
- package/lib/commonjs/core/warn.js +16 -0
- package/lib/commonjs/core/warn.js.map +1 -0
- package/lib/commonjs/core/withUnistyles/withUnistyles.js +19 -55
- package/lib/commonjs/core/withUnistyles/withUnistyles.js.map +1 -1
- package/lib/commonjs/core/withUnistyles/withUnistyles.native.js +32 -65
- package/lib/commonjs/core/withUnistyles/withUnistyles.native.js.map +1 -1
- package/lib/commonjs/index.js +23 -4
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/server/getServerUnistyles.js +38 -0
- package/lib/commonjs/server/getServerUnistyles.js.map +1 -0
- package/lib/commonjs/server/hydrateServerUnistyles.js +17 -0
- package/lib/commonjs/server/hydrateServerUnistyles.js.map +1 -0
- package/lib/commonjs/server/index.js +34 -0
- package/lib/commonjs/server/index.js.map +1 -0
- package/lib/commonjs/server/resetServerUnistyles.js +16 -0
- package/lib/commonjs/server/resetServerUnistyles.js.map +1 -0
- package/lib/commonjs/server/types.js +8 -0
- package/lib/commonjs/server/types.js.map +1 -0
- package/lib/commonjs/server/useServerUnistyles.js +27 -0
- package/lib/commonjs/server/useServerUnistyles.js.map +1 -0
- package/lib/commonjs/specs/ShadowRegistry/index.js +6 -3
- package/lib/commonjs/specs/ShadowRegistry/index.js.map +1 -1
- package/lib/commonjs/specs/StyleSheet/index.js.map +1 -1
- package/lib/commonjs/utils.js +4 -2
- package/lib/commonjs/utils.js.map +1 -1
- package/lib/commonjs/web/convert/object/filter.js +2 -2
- package/lib/commonjs/web/convert/object/filter.js.map +1 -1
- package/lib/commonjs/web/convert/style.js +4 -4
- package/lib/commonjs/web/convert/style.js.map +1 -1
- package/lib/commonjs/web/create.js +20 -15
- package/lib/commonjs/web/create.js.map +1 -1
- package/lib/commonjs/web/css/core.js +55 -0
- package/lib/commonjs/web/css/core.js.map +1 -0
- package/lib/commonjs/web/css/index.js +17 -0
- package/lib/commonjs/web/css/index.js.map +1 -0
- package/lib/commonjs/web/css/state.js +155 -0
- package/lib/commonjs/web/css/state.js.map +1 -0
- package/lib/commonjs/web/css/utils.js +47 -0
- package/lib/commonjs/web/css/utils.js.map +1 -0
- package/lib/commonjs/web/index.js +14 -18
- package/lib/commonjs/web/index.js.map +1 -1
- package/lib/commonjs/web/listener.js +9 -7
- package/lib/commonjs/web/listener.js.map +1 -1
- package/lib/commonjs/web/registry.js +44 -123
- package/lib/commonjs/web/registry.js.map +1 -1
- package/lib/commonjs/web/runtime.js +28 -21
- package/lib/commonjs/web/runtime.js.map +1 -1
- package/lib/commonjs/web/services.js +28 -0
- package/lib/commonjs/web/services.js.map +1 -0
- package/lib/commonjs/web/shadowRegistry.js +46 -93
- package/lib/commonjs/web/shadowRegistry.js.map +1 -1
- package/lib/commonjs/web/state.js +39 -9
- package/lib/commonjs/web/state.js.map +1 -1
- package/lib/commonjs/web/types.js +6 -0
- package/lib/commonjs/web/types.js.map +1 -0
- package/lib/commonjs/web/utils/common.js +29 -9
- package/lib/commonjs/web/utils/common.js.map +1 -1
- package/lib/commonjs/web/utils/unistyle.js +28 -19
- package/lib/commonjs/web/utils/unistyle.js.map +1 -1
- package/lib/commonjs/web/variants.js +25 -27
- package/lib/commonjs/web/variants.js.map +1 -1
- package/lib/module/components/ScopedTheme.js.map +1 -1
- package/lib/module/components/index.js +0 -1
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/components/native/ImageBackground.js +45 -2
- package/lib/module/components/native/ImageBackground.js.map +1 -1
- package/lib/module/components/native/ImageBackground.native.js +6 -0
- package/lib/module/components/native/ImageBackground.native.js.map +1 -0
- package/lib/module/components/native/Pressable.js +27 -52
- package/lib/module/components/native/Pressable.js.map +1 -1
- package/lib/module/components/native/Pressable.native.js +15 -12
- package/lib/module/components/native/Pressable.native.js.map +1 -1
- package/lib/module/core/createUnistylesElement.js +29 -5
- package/lib/module/core/createUnistylesElement.js.map +1 -1
- package/lib/module/core/createUnistylesElement.native.js +33 -0
- package/lib/module/core/createUnistylesElement.native.js.map +1 -0
- package/lib/module/core/createUnistylesImageBackground.js +34 -13
- package/lib/module/core/createUnistylesImageBackground.js.map +1 -1
- package/lib/module/core/getClassname.js +20 -0
- package/lib/module/core/getClassname.js.map +1 -0
- package/lib/module/core/getClassname.native.js +4 -0
- package/lib/module/core/getClassname.native.js.map +1 -0
- package/lib/module/core/index.js +2 -1
- package/lib/module/core/index.js.map +1 -1
- package/lib/module/core/passForwardRef.js +2 -2
- package/lib/module/core/passForwardRef.js.map +1 -1
- package/lib/module/core/useProxifiedUnistyles/index.js +4 -0
- package/lib/module/core/useProxifiedUnistyles/index.js.map +1 -0
- package/lib/module/core/useProxifiedUnistyles/listener.js +17 -0
- package/lib/module/core/useProxifiedUnistyles/listener.js.map +1 -0
- package/lib/module/core/useProxifiedUnistyles/listener.native.js +21 -0
- package/lib/module/core/useProxifiedUnistyles/listener.native.js.map +1 -0
- package/lib/module/core/useProxifiedUnistyles/types.js +4 -0
- package/lib/module/core/useProxifiedUnistyles/types.js.map +1 -0
- package/lib/module/core/{withUnistyles/useDependencies.js → useProxifiedUnistyles/useProxifiedUnistyles.js} +19 -19
- package/lib/module/core/useProxifiedUnistyles/useProxifiedUnistyles.js.map +1 -0
- package/lib/module/core/useUnistyles.js +14 -0
- package/lib/module/core/useUnistyles.js.map +1 -0
- package/lib/module/core/warn.js +11 -0
- package/lib/module/core/warn.js.map +1 -0
- package/lib/module/core/withUnistyles/withUnistyles.js +19 -55
- package/lib/module/core/withUnistyles/withUnistyles.js.map +1 -1
- package/lib/module/core/withUnistyles/withUnistyles.native.js +33 -66
- package/lib/module/core/withUnistyles/withUnistyles.native.js.map +1 -1
- package/lib/module/index.js +3 -2
- package/lib/module/index.js.map +1 -1
- package/lib/module/server/getServerUnistyles.js +32 -0
- package/lib/module/server/getServerUnistyles.js.map +1 -0
- package/lib/module/server/hydrateServerUnistyles.js +12 -0
- package/lib/module/server/hydrateServerUnistyles.js.map +1 -0
- package/lib/module/server/index.js +7 -0
- package/lib/module/server/index.js.map +1 -0
- package/lib/module/server/resetServerUnistyles.js +11 -0
- package/lib/module/server/resetServerUnistyles.js.map +1 -0
- package/lib/module/server/types.js +4 -0
- package/lib/module/server/types.js.map +1 -0
- package/lib/module/server/useServerUnistyles.js +22 -0
- package/lib/module/server/useServerUnistyles.js.map +1 -0
- package/lib/module/specs/ShadowRegistry/index.js +6 -3
- package/lib/module/specs/ShadowRegistry/index.js.map +1 -1
- package/lib/module/specs/StyleSheet/index.js.map +1 -1
- package/lib/module/utils.js +2 -1
- package/lib/module/utils.js.map +1 -1
- package/lib/module/web/convert/object/filter.js +2 -2
- package/lib/module/web/convert/object/filter.js.map +1 -1
- package/lib/module/web/convert/style.js +4 -4
- package/lib/module/web/convert/style.js.map +1 -1
- package/lib/module/web/create.js +20 -15
- package/lib/module/web/create.js.map +1 -1
- package/lib/module/web/css/core.js +50 -0
- package/lib/module/web/css/core.js.map +1 -0
- package/lib/module/web/css/index.js +4 -0
- package/lib/module/web/css/index.js.map +1 -0
- package/lib/module/web/css/state.js +150 -0
- package/lib/module/web/css/state.js.map +1 -0
- package/lib/module/web/css/utils.js +41 -0
- package/lib/module/web/css/utils.js.map +1 -0
- package/lib/module/web/index.js +10 -5
- package/lib/module/web/index.js.map +1 -1
- package/lib/module/web/listener.js +8 -7
- package/lib/module/web/listener.js.map +1 -1
- package/lib/module/web/registry.js +44 -124
- package/lib/module/web/registry.js.map +1 -1
- package/lib/module/web/runtime.js +27 -21
- package/lib/module/web/runtime.js.map +1 -1
- package/lib/module/web/services.js +23 -0
- package/lib/module/web/services.js.map +1 -0
- package/lib/module/web/shadowRegistry.js +46 -94
- package/lib/module/web/shadowRegistry.js.map +1 -1
- package/lib/module/web/state.js +39 -10
- package/lib/module/web/state.js.map +1 -1
- package/lib/module/web/types.js +4 -0
- package/lib/module/web/types.js.map +1 -0
- package/lib/module/web/utils/common.js +26 -7
- package/lib/module/web/utils/common.js.map +1 -1
- package/lib/module/web/utils/unistyle.js +27 -17
- package/lib/module/web/utils/unistyle.js.map +1 -1
- package/lib/module/web/variants.js +25 -27
- package/lib/module/web/variants.js.map +1 -1
- package/lib/typescript/src/components/index.d.ts +0 -1
- package/lib/typescript/src/components/index.d.ts.map +1 -1
- package/lib/typescript/src/components/native/ActivityIndicator.d.ts +3 -1
- package/lib/typescript/src/components/native/ActivityIndicator.d.ts.map +1 -1
- package/lib/typescript/src/components/native/FlatList.d.ts +3 -1
- package/lib/typescript/src/components/native/FlatList.d.ts.map +1 -1
- package/lib/typescript/src/components/native/Image.d.ts +3 -1
- package/lib/typescript/src/components/native/Image.d.ts.map +1 -1
- package/lib/typescript/src/components/native/ImageBackground.d.ts +8 -2
- package/lib/typescript/src/components/native/ImageBackground.d.ts.map +1 -1
- package/lib/typescript/src/components/native/ImageBackground.native.d.ts +3 -0
- package/lib/typescript/src/components/native/ImageBackground.native.d.ts.map +1 -0
- package/lib/typescript/src/components/native/KeyboardAvoidingView.d.ts +3 -1
- package/lib/typescript/src/components/native/KeyboardAvoidingView.d.ts.map +1 -1
- package/lib/typescript/src/components/native/Pressable.d.ts +3 -2
- package/lib/typescript/src/components/native/Pressable.d.ts.map +1 -1
- package/lib/typescript/src/components/native/Pressable.native.d.ts.map +1 -1
- package/lib/typescript/src/components/native/RefreshControl.d.ts +3 -1
- package/lib/typescript/src/components/native/RefreshControl.d.ts.map +1 -1
- package/lib/typescript/src/components/native/ScrollView.d.ts +3 -1
- package/lib/typescript/src/components/native/ScrollView.d.ts.map +1 -1
- package/lib/typescript/src/components/native/SectionList.d.ts +3 -1
- package/lib/typescript/src/components/native/SectionList.d.ts.map +1 -1
- package/lib/typescript/src/components/native/Switch.d.ts +3 -1
- package/lib/typescript/src/components/native/Switch.d.ts.map +1 -1
- package/lib/typescript/src/components/native/Text.d.ts +3 -1
- package/lib/typescript/src/components/native/Text.d.ts.map +1 -1
- package/lib/typescript/src/components/native/TextInput.d.ts +3 -1
- package/lib/typescript/src/components/native/TextInput.d.ts.map +1 -1
- package/lib/typescript/src/components/native/TouchableHighlight.d.ts +3 -1
- package/lib/typescript/src/components/native/TouchableHighlight.d.ts.map +1 -1
- package/lib/typescript/src/components/native/TouchableOpacity.d.ts +3 -1
- package/lib/typescript/src/components/native/TouchableOpacity.d.ts.map +1 -1
- package/lib/typescript/src/components/native/View.d.ts +3 -1
- package/lib/typescript/src/components/native/View.d.ts.map +1 -1
- package/lib/typescript/src/components/native/VirtualizedList.d.ts +3 -1
- package/lib/typescript/src/components/native/VirtualizedList.d.ts.map +1 -1
- package/lib/typescript/src/core/createUnistylesElement.d.ts +6 -1
- package/lib/typescript/src/core/createUnistylesElement.d.ts.map +1 -1
- package/lib/typescript/src/core/createUnistylesElement.native.d.ts +3 -0
- package/lib/typescript/src/core/createUnistylesElement.native.d.ts.map +1 -0
- package/lib/typescript/src/core/createUnistylesImageBackground.d.ts.map +1 -1
- package/lib/typescript/src/core/getClassname.d.ts +7 -0
- package/lib/typescript/src/core/getClassname.d.ts.map +1 -0
- package/lib/typescript/src/core/getClassname.native.d.ts +2 -0
- package/lib/typescript/src/core/getClassname.native.d.ts.map +1 -0
- package/lib/typescript/src/core/index.d.ts +2 -1
- package/lib/typescript/src/core/index.d.ts.map +1 -1
- package/lib/typescript/src/core/passForwardRef.d.ts.map +1 -1
- package/lib/typescript/src/core/useProxifiedUnistyles/index.d.ts +2 -0
- package/lib/typescript/src/core/useProxifiedUnistyles/index.d.ts.map +1 -0
- package/lib/typescript/src/core/useProxifiedUnistyles/listener.d.ts +3 -0
- package/lib/typescript/src/core/useProxifiedUnistyles/listener.d.ts.map +1 -0
- package/lib/typescript/src/core/useProxifiedUnistyles/listener.native.d.ts +3 -0
- package/lib/typescript/src/core/useProxifiedUnistyles/listener.native.d.ts.map +1 -0
- package/lib/typescript/src/core/useProxifiedUnistyles/types.d.ts +7 -0
- package/lib/typescript/src/core/useProxifiedUnistyles/types.d.ts.map +1 -0
- package/lib/typescript/src/core/useProxifiedUnistyles/useProxifiedUnistyles.d.ts +8 -0
- package/lib/typescript/src/core/useProxifiedUnistyles/useProxifiedUnistyles.d.ts.map +1 -0
- package/lib/typescript/src/core/useUnistyles.d.ts +6 -0
- package/lib/typescript/src/core/useUnistyles.d.ts.map +1 -0
- package/lib/typescript/src/core/warn.d.ts +3 -0
- package/lib/typescript/src/core/warn.d.ts.map +1 -0
- package/lib/typescript/src/core/withUnistyles/withUnistyles.d.ts +0 -3
- package/lib/typescript/src/core/withUnistyles/withUnistyles.d.ts.map +1 -1
- package/lib/typescript/src/core/withUnistyles/withUnistyles.native.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +3 -2
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/server/getServerUnistyles.d.ts +4 -0
- package/lib/typescript/src/server/getServerUnistyles.d.ts.map +1 -0
- package/lib/typescript/src/server/hydrateServerUnistyles.d.ts +8 -0
- package/lib/typescript/src/server/hydrateServerUnistyles.d.ts.map +1 -0
- package/lib/typescript/src/server/index.d.ts +5 -0
- package/lib/typescript/src/server/index.d.ts.map +1 -0
- package/lib/typescript/src/server/resetServerUnistyles.d.ts +2 -0
- package/lib/typescript/src/server/resetServerUnistyles.d.ts.map +1 -0
- package/lib/typescript/src/server/types.d.ts +5 -0
- package/lib/typescript/src/server/types.d.ts.map +1 -0
- package/lib/typescript/src/server/useServerUnistyles.d.ts +4 -0
- package/lib/typescript/src/server/useServerUnistyles.d.ts.map +1 -0
- package/lib/typescript/src/specs/ShadowRegistry/index.d.ts +0 -3
- package/lib/typescript/src/specs/ShadowRegistry/index.d.ts.map +1 -1
- package/lib/typescript/src/specs/StyleSheet/index.d.ts +4 -1
- package/lib/typescript/src/specs/StyleSheet/index.d.ts.map +1 -1
- package/lib/typescript/src/utils.d.ts +1 -0
- package/lib/typescript/src/utils.d.ts.map +1 -1
- package/lib/typescript/src/web/convert/style.d.ts.map +1 -1
- package/lib/typescript/src/web/create.d.ts.map +1 -1
- package/lib/typescript/src/web/css/core.d.ts +3 -0
- package/lib/typescript/src/web/css/core.d.ts.map +1 -0
- package/lib/typescript/src/web/css/index.d.ts +2 -0
- package/lib/typescript/src/web/css/index.d.ts.map +1 -0
- package/lib/typescript/src/web/css/state.d.ts +30 -0
- package/lib/typescript/src/web/css/state.d.ts.map +1 -0
- package/lib/typescript/src/web/css/utils.d.ts +4 -0
- package/lib/typescript/src/web/css/utils.d.ts.map +1 -0
- package/lib/typescript/src/web/index.d.ts +7 -1
- package/lib/typescript/src/web/index.d.ts.map +1 -1
- package/lib/typescript/src/web/listener.d.ts +4 -3
- package/lib/typescript/src/web/listener.d.ts.map +1 -1
- package/lib/typescript/src/web/registry.d.ts +11 -8
- package/lib/typescript/src/web/registry.d.ts.map +1 -1
- package/lib/typescript/src/web/runtime.d.ts +6 -4
- package/lib/typescript/src/web/runtime.d.ts.map +1 -1
- package/lib/typescript/src/web/services.d.ts +15 -0
- package/lib/typescript/src/web/services.d.ts.map +1 -0
- package/lib/typescript/src/web/shadowRegistry.d.ts +10 -13
- package/lib/typescript/src/web/shadowRegistry.d.ts.map +1 -1
- package/lib/typescript/src/web/state.d.ts +7 -3
- package/lib/typescript/src/web/state.d.ts.map +1 -1
- package/lib/typescript/src/web/types.d.ts +13 -0
- package/lib/typescript/src/web/types.d.ts.map +1 -0
- package/lib/typescript/src/web/utils/common.d.ts +2 -1
- package/lib/typescript/src/web/utils/common.d.ts.map +1 -1
- package/lib/typescript/src/web/utils/unistyle.d.ts +5 -4
- package/lib/typescript/src/web/utils/unistyle.d.ts.map +1 -1
- package/lib/typescript/src/web/variants.d.ts +2 -2
- package/lib/typescript/src/web/variants.d.ts.map +1 -1
- package/nitrogen/generated/android/c++/JColorScheme.hpp +2 -1
- package/nitrogen/generated/android/c++/JDimensions.hpp +2 -1
- package/nitrogen/generated/android/c++/JFunc_void_UnistylesNativeMiniRuntime.hpp +36 -10
- package/nitrogen/generated/android/c++/JFunc_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime.hpp +53 -19
- package/nitrogen/generated/android/c++/JHybridNativePlatformSpec.cpp +5 -5
- package/nitrogen/generated/android/c++/JHybridNativePlatformSpec.hpp +1 -1
- package/nitrogen/generated/android/c++/JInsets.hpp +2 -1
- package/nitrogen/generated/android/c++/JOrientation.hpp +2 -1
- package/nitrogen/generated/android/c++/JUnistyleDependency.hpp +2 -1
- package/nitrogen/generated/android/c++/JUnistylesNativeMiniRuntime.hpp +2 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/ColorScheme.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/Dimensions.kt +10 -5
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/Func_void_UnistylesNativeMiniRuntime.kt +43 -14
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/Func_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime.kt +43 -14
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/HybridNativePlatformSpec.kt +10 -10
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/Insets.kt +13 -8
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/Orientation.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/UnistyleDependency.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/UnistylesNativeMiniRuntime.kt +19 -14
- package/nitrogen/generated/android/unistyles+autolinking.cmake +4 -1
- package/nitrogen/generated/android/unistyles+autolinking.gradle +1 -1
- package/nitrogen/generated/android/unistylesOnLoad.cpp +7 -3
- package/nitrogen/generated/android/unistylesOnLoad.hpp +1 -1
- package/nitrogen/generated/ios/Unistyles+autolinking.rb +1 -1
- package/nitrogen/generated/ios/Unistyles-Swift-Cxx-Bridge.cpp +21 -6
- package/nitrogen/generated/ios/Unistyles-Swift-Cxx-Bridge.hpp +105 -27
- package/nitrogen/generated/ios/Unistyles-Swift-Cxx-Umbrella.hpp +5 -3
- package/nitrogen/generated/ios/c++/HybridNativePlatformSpecSwift.cpp +1 -1
- package/nitrogen/generated/ios/c++/HybridNativePlatformSpecSwift.hpp +92 -33
- package/nitrogen/generated/ios/swift/ColorScheme.swift +1 -1
- package/nitrogen/generated/ios/swift/Dimensions.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_UnistylesNativeMiniRuntime.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime.swift +46 -0
- package/nitrogen/generated/ios/swift/HybridNativePlatformSpec.swift +36 -23
- package/nitrogen/generated/ios/swift/HybridNativePlatformSpec_cxx.swift +327 -0
- package/nitrogen/generated/ios/swift/Insets.swift +1 -1
- package/nitrogen/generated/ios/swift/Orientation.swift +1 -1
- package/nitrogen/generated/ios/swift/UnistyleDependency.swift +1 -1
- package/nitrogen/generated/ios/swift/UnistylesNativeMiniRuntime.swift +1 -1
- package/nitrogen/generated/shared/c++/ColorScheme.hpp +1 -1
- package/nitrogen/generated/shared/c++/Dimensions.hpp +1 -1
- package/nitrogen/generated/shared/c++/HybridNativePlatformSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridNativePlatformSpec.hpp +1 -1
- package/nitrogen/generated/shared/c++/HybridUnistylesNavigationBarSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridUnistylesNavigationBarSpec.hpp +1 -1
- package/nitrogen/generated/shared/c++/HybridUnistylesRuntimeSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridUnistylesRuntimeSpec.hpp +1 -1
- package/nitrogen/generated/shared/c++/HybridUnistylesShadowRegistrySpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridUnistylesShadowRegistrySpec.hpp +1 -1
- package/nitrogen/generated/shared/c++/HybridUnistylesStatusBarSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridUnistylesStatusBarSpec.hpp +1 -1
- package/nitrogen/generated/shared/c++/HybridUnistylesStyleSheetSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridUnistylesStyleSheetSpec.hpp +1 -1
- package/nitrogen/generated/shared/c++/Insets.hpp +1 -1
- package/nitrogen/generated/shared/c++/Orientation.hpp +1 -1
- package/nitrogen/generated/shared/c++/UnistyleDependency.hpp +2 -2
- package/nitrogen/generated/shared/c++/UnistylesCxxMiniRuntime.hpp +1 -1
- package/nitrogen/generated/shared/c++/UnistylesNativeMiniRuntime.hpp +1 -1
- package/package.json +21 -12
- package/plugin/import.js +1 -21
- package/plugin/index.d.ts +41 -0
- package/plugin/index.js +44 -76
- package/plugin/stylesheet.js +17 -1
- package/plugin/variants.js +49 -75
- package/src/components/ScopedTheme.tsx +1 -1
- package/src/components/index.ts +0 -1
- package/src/components/native/ImageBackground.native.tsx +4 -0
- package/src/components/native/ImageBackground.tsx +54 -2
- package/src/components/native/Pressable.native.tsx +16 -17
- package/src/components/native/Pressable.tsx +35 -69
- package/src/core/createUnistylesElement.native.tsx +36 -0
- package/src/core/createUnistylesElement.tsx +42 -8
- package/src/core/createUnistylesImageBackground.tsx +40 -19
- package/src/core/getClassname.native.ts +1 -0
- package/src/core/getClassname.ts +13 -0
- package/src/core/index.ts +2 -1
- package/src/core/passForwardRef.ts +1 -2
- package/src/core/useProxifiedUnistyles/index.ts +1 -0
- package/src/core/useProxifiedUnistyles/listener.native.ts +18 -0
- package/src/core/useProxifiedUnistyles/listener.ts +13 -0
- package/src/core/useProxifiedUnistyles/types.ts +7 -0
- package/src/core/{withUnistyles/useDependencies.ts → useProxifiedUnistyles/useProxifiedUnistyles.ts} +19 -26
- package/src/core/useUnistyles.ts +11 -0
- package/src/core/warn.ts +13 -0
- package/src/core/withUnistyles/withUnistyles.native.tsx +39 -68
- package/src/core/withUnistyles/withUnistyles.tsx +19 -56
- package/src/index.ts +3 -2
- package/src/server/getServerUnistyles.tsx +20 -0
- package/src/server/hydrateServerUnistyles.ts +17 -0
- package/src/server/index.ts +5 -0
- package/src/server/resetServerUnistyles.ts +9 -0
- package/src/server/types.ts +4 -0
- package/src/server/useServerUnistyles.tsx +22 -0
- package/src/specs/ShadowRegistry/index.ts +12 -9
- package/src/specs/StyleSheet/index.ts +5 -1
- package/src/utils.ts +15 -11
- package/src/web/convert/object/filter.ts +2 -2
- package/src/web/convert/style.ts +8 -7
- package/src/web/create.ts +23 -18
- package/src/web/css/core.ts +58 -0
- package/src/web/css/index.ts +1 -0
- package/src/web/css/state.ts +191 -0
- package/src/web/css/utils.ts +54 -0
- package/src/web/index.ts +18 -5
- package/src/web/listener.ts +8 -8
- package/src/web/registry.ts +47 -152
- package/src/web/runtime.ts +32 -22
- package/src/web/services.ts +28 -0
- package/src/web/shadowRegistry.ts +46 -104
- package/src/web/state.ts +46 -11
- package/src/web/types.ts +13 -0
- package/src/web/utils/common.ts +32 -8
- package/src/web/utils/unistyle.ts +40 -25
- package/src/web/variants.ts +27 -27
- package/cxx/core/HostStyle.cpp +0 -73
- package/cxx/core/HostStyle.h +0 -34
- package/lib/commonjs/components/Variants.js +0 -36
- package/lib/commonjs/components/Variants.js.map +0 -1
- package/lib/commonjs/core/createUnistylesComponent.js +0 -16
- package/lib/commonjs/core/createUnistylesComponent.js.map +0 -1
- package/lib/commonjs/core/withUnistyles/useDependencies.js.map +0 -1
- package/lib/module/components/Variants.js +0 -29
- package/lib/module/components/Variants.js.map +0 -1
- package/lib/module/core/createUnistylesComponent.js +0 -11
- package/lib/module/core/createUnistylesComponent.js.map +0 -1
- package/lib/module/core/withUnistyles/useDependencies.js.map +0 -1
- package/lib/typescript/src/components/Variants.d.ts +0 -7
- package/lib/typescript/src/components/Variants.d.ts.map +0 -1
- package/lib/typescript/src/core/createUnistylesComponent.d.ts +0 -14
- package/lib/typescript/src/core/createUnistylesComponent.d.ts.map +0 -1
- package/lib/typescript/src/core/withUnistyles/useDependencies.d.ts +0 -13
- package/lib/typescript/src/core/withUnistyles/useDependencies.d.ts.map +0 -1
- package/nitrogen/generated/android/unistylesOnLoad.kt +0 -1
- package/nitrogen/generated/ios/swift/HybridNativePlatformSpecCxx.swift +0 -314
- package/plugin/style.js +0 -168
- package/src/components/Variants.tsx +0 -30
- package/src/core/createUnistylesComponent.tsx +0 -14
@@ -75,7 +75,7 @@ void core::UnistylesRegistry::linkShadowNodeWithUnistyle(
|
|
75
75
|
) {
|
76
76
|
shadow::ShadowLeafUpdates updates;
|
77
77
|
auto parser = parser::Parser(nullptr);
|
78
|
-
|
78
|
+
|
79
79
|
std::for_each(unistylesData.begin(), unistylesData.end(), [this, &rt, shadowNodeFamily](std::shared_ptr<UnistyleData> unistyleData){
|
80
80
|
this->_shadowRegistry[&rt][shadowNodeFamily].emplace_back(unistyleData);
|
81
81
|
});
|
@@ -159,7 +159,7 @@ std::vector<std::shared_ptr<core::StyleSheet>> core::UnistylesRegistry::getStyle
|
|
159
159
|
UnistyleDependency::THEME);
|
160
160
|
auto themeDidChange = themeDidChangeIt != unistylesDependencies.end();
|
161
161
|
auto runtimeDidChange = (themeDidChange && unistylesDependencies.size() > 1) || unistylesDependencies.size() > 0;
|
162
|
-
|
162
|
+
|
163
163
|
// if nothing changed, skip further lookup
|
164
164
|
if (!themeDidChange && !runtimeDidChange) {
|
165
165
|
return stylesheetsToRefresh;
|
@@ -173,7 +173,7 @@ std::vector<std::shared_ptr<core::StyleSheet>> core::UnistylesRegistry::getStyle
|
|
173
173
|
if (styleSheet->type == StyleSheetType::ThemableWithMiniRuntime) {
|
174
174
|
for (const auto& unistylePair: styleSheet->unistyles) {
|
175
175
|
auto& [_, unistyle] = unistylePair;
|
176
|
-
|
176
|
+
|
177
177
|
bool hasAnyOfDependencies = std::any_of(
|
178
178
|
unistyle->dependencies.begin(),
|
179
179
|
unistyle->dependencies.end(),
|
@@ -181,10 +181,10 @@ std::vector<std::shared_ptr<core::StyleSheet>> core::UnistylesRegistry::getStyle
|
|
181
181
|
return std::find(unistylesDependencies.begin(), unistylesDependencies.end(), dep) != unistylesDependencies.end();
|
182
182
|
}
|
183
183
|
);
|
184
|
-
|
184
|
+
|
185
185
|
if (hasAnyOfDependencies) {
|
186
186
|
stylesheetsToRefresh.emplace_back(styleSheet);
|
187
|
-
|
187
|
+
|
188
188
|
return;
|
189
189
|
}
|
190
190
|
}
|
@@ -198,18 +198,26 @@ std::vector<std::shared_ptr<core::StyleSheet>> core::UnistylesRegistry::getStyle
|
|
198
198
|
return stylesheetsToRefresh;
|
199
199
|
}
|
200
200
|
|
201
|
-
|
202
|
-
|
201
|
+
core::Unistyle::Shared core::UnistylesRegistry::getUnistyleById(jsi::Runtime& rt, std::string unistyleID) {
|
202
|
+
for (auto& pair: this->_styleSheetRegistry[&rt]) {
|
203
|
+
auto [_, stylesheet] = pair;
|
204
|
+
|
205
|
+
for (auto unistylePair: stylesheet->unistyles) {
|
206
|
+
auto [_, unistyle] = unistylePair;
|
207
|
+
|
208
|
+
if (unistyle->unid == unistyleID) {
|
209
|
+
return unistyle;
|
210
|
+
}
|
211
|
+
}
|
212
|
+
}
|
213
|
+
|
214
|
+
return nullptr;
|
203
215
|
}
|
204
216
|
|
205
217
|
const std::optional<std::string> core::UnistylesRegistry::getScopedTheme() {
|
206
218
|
return this->_scopedTheme;
|
207
219
|
}
|
208
220
|
|
209
|
-
void core::UnistylesRegistry::setScopedVariants(core::Variants&& variants) {
|
210
|
-
this->_scopedVariants = std::move(variants);
|
211
|
-
}
|
212
|
-
|
213
221
|
void core::UnistylesRegistry::setScopedTheme(std::optional<std::string> themeName) {
|
214
222
|
this->_scopedTheme = std::move(themeName);
|
215
223
|
}
|
@@ -43,15 +43,13 @@ struct UnistylesRegistry: public StyleSheetRegistry {
|
|
43
43
|
DependencyMap buildDependencyMap(jsi::Runtime& rt, std::vector<UnistyleDependency>& deps);
|
44
44
|
void shadowLeafUpdateFromUnistyle(jsi::Runtime& rt, Unistyle::Shared unistyle, jsi::Value& maybePressableId);
|
45
45
|
shadow::ShadowTrafficController trafficController{};
|
46
|
-
const core::Variants& getScopedVariants();
|
47
46
|
const std::optional<std::string> getScopedTheme();
|
48
|
-
void setScopedVariants(core::Variants&& variants);
|
49
47
|
void setScopedTheme(std::optional<std::string> themeName);
|
48
|
+
core::Unistyle::Shared getUnistyleById(jsi::Runtime& rt, std::string unistyleID);
|
50
49
|
|
51
50
|
private:
|
52
51
|
UnistylesRegistry() = default;
|
53
|
-
|
54
|
-
core::Variants _scopedVariants{};
|
52
|
+
|
55
53
|
std::optional<std::string> _scopedTheme{};
|
56
54
|
std::unordered_map<jsi::Runtime*, UnistylesState> _states{};
|
57
55
|
std::unordered_map<jsi::Runtime*, std::unordered_map<int, std::shared_ptr<core::StyleSheet>>> _styleSheetRegistry{};
|
@@ -1,13 +1,13 @@
|
|
1
1
|
#include "HybridNavigationBar.h"
|
2
2
|
|
3
3
|
void HybridNavigationBar::setHidden(bool isHidden) {
|
4
|
-
this->_nativePlatform
|
4
|
+
this->_nativePlatform->setNavigationBarHidden(isHidden);
|
5
5
|
};
|
6
6
|
|
7
7
|
double HybridNavigationBar::getWidth() {
|
8
|
-
return this->_nativePlatform
|
8
|
+
return this->_nativePlatform->getNavigationBarDimensions().width;
|
9
9
|
}
|
10
10
|
|
11
11
|
double HybridNavigationBar::getHeight() {
|
12
|
-
return this->_nativePlatform
|
12
|
+
return this->_nativePlatform->getNavigationBarDimensions().height;
|
13
13
|
}
|
@@ -7,12 +7,12 @@
|
|
7
7
|
using namespace margelo::nitro::unistyles;
|
8
8
|
|
9
9
|
struct HybridNavigationBar: public HybridUnistylesNavigationBarSpec {
|
10
|
-
HybridNavigationBar(
|
10
|
+
HybridNavigationBar(std::shared_ptr<HybridNativePlatformSpec> nativePlatform): HybridObject(TAG), _nativePlatform{nativePlatform} {}
|
11
11
|
|
12
12
|
void setHidden(bool isHidden) override;
|
13
13
|
double getWidth() override;
|
14
14
|
double getHeight() override;
|
15
15
|
|
16
16
|
private:
|
17
|
-
|
17
|
+
std::shared_ptr<HybridNativePlatformSpec> _nativePlatform;
|
18
18
|
};
|
@@ -7,30 +7,31 @@ jsi::Value HybridShadowRegistry::link(jsi::Runtime &rt, const jsi::Value &thisVa
|
|
7
7
|
helpers::assertThat(rt, count == 2, "Unistyles: Invalid babel transform 'ShadowRegistry link' expected 2 arguments.");
|
8
8
|
|
9
9
|
ShadowNode::Shared shadowNodeWrapper = shadowNodeFromValue(rt, args[0]);
|
10
|
+
|
10
11
|
std::vector<core::Unistyle::Shared> unistyleWrappers = core::unistyleFromValue(rt, args[1]);
|
11
12
|
std::vector<std::vector<folly::dynamic>> arguments;
|
12
13
|
auto& registry = core::UnistylesRegistry::get();
|
13
14
|
|
14
15
|
for (size_t i = 0; i < unistyleWrappers.size(); i++) {
|
15
16
|
if (unistyleWrappers[i]->type == core::UnistyleType::DynamicFunction) {
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
17
|
+
try {
|
18
|
+
auto rawStyle = args[1].asObject(rt).asArray(rt).getValueAtIndex(rt, i);
|
19
|
+
auto rawStyleObj = rawStyle.getObject(rt);
|
20
|
+
auto unistyleHashKeys = core::getUnistylesHashKeys(rt, rawStyleObj);
|
21
|
+
auto secrets = rawStyleObj.getProperty(rt, unistyleHashKeys.at(0).c_str()).asObject(rt);
|
22
|
+
auto secretArguments = secrets.getProperty(rt, helpers::ARGUMENTS.c_str()).asObject(rt).asArray(rt);
|
23
|
+
|
24
|
+
arguments.push_back(helpers::parseDynamicFunctionArguments(rt, secretArguments));
|
25
|
+
|
26
|
+
continue;
|
27
|
+
} catch (...) {
|
28
|
+
arguments.push_back({});
|
29
|
+
}
|
29
30
|
}
|
30
31
|
|
31
32
|
arguments.push_back({});
|
32
33
|
}
|
33
|
-
|
34
|
+
|
34
35
|
auto scopedTheme = registry.getScopedTheme();
|
35
36
|
|
36
37
|
// check if scope theme exists
|
@@ -47,9 +48,23 @@ jsi::Value HybridShadowRegistry::link(jsi::Runtime &rt, const jsi::Value &thisVa
|
|
47
48
|
// create unistyleData based on wrappers
|
48
49
|
for (size_t i = 0; i < unistyleWrappers.size(); i++) {
|
49
50
|
core::Unistyle::Shared& unistyle = unistyleWrappers[i];
|
51
|
+
auto rawStyle = args[1].asObject(rt).asArray(rt).getValueAtIndex(rt, i);
|
52
|
+
auto rawStyleObj = rawStyle.getObject(rt);
|
53
|
+
auto unistyleHashKeys = core::getUnistylesHashKeys(rt, rawStyleObj);
|
54
|
+
core::Variants variants{};
|
55
|
+
|
56
|
+
if (unistyleHashKeys.size() == 1) {
|
57
|
+
auto secrets = rawStyleObj.getProperty(rt, unistyleHashKeys.at(0).c_str()).asObject(rt);
|
58
|
+
auto hasVariants = secrets.hasProperty(rt, helpers::STYLESHEET_VARIANTS.c_str());
|
59
|
+
|
60
|
+
if (hasVariants) {
|
61
|
+
variants = helpers::variantsToPairs(rt, secrets.getProperty(rt, helpers::STYLESHEET_VARIANTS.c_str()).asObject(rt));
|
62
|
+
}
|
63
|
+
}
|
64
|
+
|
50
65
|
std::shared_ptr<core::UnistyleData> unistyleData = std::make_shared<core::UnistyleData>(
|
51
66
|
unistyle,
|
52
|
-
|
67
|
+
variants,
|
53
68
|
arguments[i],
|
54
69
|
scopedTheme
|
55
70
|
);
|
@@ -62,9 +77,6 @@ jsi::Value HybridShadowRegistry::link(jsi::Runtime &rt, const jsi::Value &thisVa
|
|
62
77
|
|
63
78
|
// if so we need to force update
|
64
79
|
parser.rebuildUnistyleWithScopedTheme(rt, parsedStyleSheet, unistyleData);
|
65
|
-
} else {
|
66
|
-
// for other styles, not scoped to theme we need to compute variants value
|
67
|
-
parser.rebuildUnistyleWithVariants(rt, unistyleData);
|
68
80
|
}
|
69
81
|
|
70
82
|
unistylesData.emplace_back(unistyleData);
|
@@ -91,25 +103,9 @@ jsi::Value HybridShadowRegistry::unlink(jsi::Runtime &rt, const jsi::Value &this
|
|
91
103
|
return jsi::Value::undefined();
|
92
104
|
}
|
93
105
|
|
94
|
-
jsi::Value HybridShadowRegistry::selectVariants(jsi::Runtime &rt, const jsi::Value &thisValue, const jsi::Value *args, size_t count) {
|
95
|
-
helpers::assertThat(rt, count == 1, "Unistyles: Invalid babel transform 'ShadowRegistry selectVariants' expected 1 arguments.");
|
96
|
-
|
97
|
-
auto& registry = core::UnistylesRegistry::get();
|
98
|
-
|
99
|
-
if (args[0].isUndefined()) {
|
100
|
-
registry.setScopedVariants({});
|
101
|
-
}
|
102
|
-
|
103
|
-
if (args[0].isObject()) {
|
104
|
-
registry.setScopedVariants(helpers::variantsToPairs(rt, args[0].asObject(rt)));
|
105
|
-
}
|
106
|
-
|
107
|
-
return jsi::Value::undefined();
|
108
|
-
}
|
109
|
-
|
110
106
|
jsi::Value HybridShadowRegistry::setScopedTheme(jsi::Runtime &rt, const jsi::Value &thisValue, const jsi::Value *args, size_t count) {
|
111
107
|
helpers::assertThat(rt, count == 1, "Unistyles: setScopedTheme expected 1 argument.");
|
112
|
-
|
108
|
+
|
113
109
|
auto& registry = core::UnistylesRegistry::get();
|
114
110
|
|
115
111
|
if (args[0].isUndefined()) {
|
@@ -127,17 +123,8 @@ jsi::Value HybridShadowRegistry::setScopedTheme(jsi::Runtime &rt, const jsi::Val
|
|
127
123
|
jsi::Value HybridShadowRegistry::getScopedTheme(jsi::Runtime &rt, const jsi::Value &thisValue, const jsi::Value *args, size_t count) {
|
128
124
|
auto& registry = core::UnistylesRegistry::get();
|
129
125
|
auto maybeScopedTheme = registry.getScopedTheme();
|
130
|
-
|
126
|
+
|
131
127
|
return maybeScopedTheme.has_value()
|
132
128
|
? jsi::String::createFromUtf8(rt, maybeScopedTheme.value())
|
133
129
|
: jsi::Value::undefined();
|
134
130
|
}
|
135
|
-
|
136
|
-
jsi::Value HybridShadowRegistry::getVariants(jsi::Runtime &rt, const jsi::Value &thisValue, const jsi::Value *args, size_t count) {
|
137
|
-
auto& registry = core::UnistylesRegistry::get();
|
138
|
-
auto maybeScopedVariants = registry.getScopedVariants();
|
139
|
-
|
140
|
-
return maybeScopedVariants.size() > 0
|
141
|
-
? helpers::variantsToValue(rt, maybeScopedVariants)
|
142
|
-
: jsi::Value::undefined();
|
143
|
-
}
|
@@ -20,10 +20,6 @@ struct HybridShadowRegistry: public HybridUnistylesShadowRegistrySpec {
|
|
20
20
|
const jsi::Value& thisValue,
|
21
21
|
const jsi::Value* args,
|
22
22
|
size_t count);
|
23
|
-
jsi::Value selectVariants(jsi::Runtime& rt,
|
24
|
-
const jsi::Value& thisValue,
|
25
|
-
const jsi::Value* args,
|
26
|
-
size_t count);
|
27
23
|
jsi::Value setScopedTheme(jsi::Runtime& rt,
|
28
24
|
const jsi::Value& thisValue,
|
29
25
|
const jsi::Value* args,
|
@@ -32,10 +28,6 @@ struct HybridShadowRegistry: public HybridUnistylesShadowRegistrySpec {
|
|
32
28
|
const jsi::Value& thisValue,
|
33
29
|
const jsi::Value* args,
|
34
30
|
size_t count);
|
35
|
-
jsi::Value getVariants(jsi::Runtime& rt,
|
36
|
-
const jsi::Value& thisValue,
|
37
|
-
const jsi::Value* args,
|
38
|
-
size_t count);
|
39
31
|
|
40
32
|
void loadHybridMethods() override {
|
41
33
|
HybridUnistylesShadowRegistrySpec::loadHybridMethods();
|
@@ -43,10 +35,8 @@ struct HybridShadowRegistry: public HybridUnistylesShadowRegistrySpec {
|
|
43
35
|
registerHybrids(this, [](Prototype& prototype) {
|
44
36
|
prototype.registerRawHybridMethod("link", 2, &HybridShadowRegistry::link);
|
45
37
|
prototype.registerRawHybridMethod("unlink", 1, &HybridShadowRegistry::unlink);
|
46
|
-
prototype.registerRawHybridMethod("selectVariants", 1, &HybridShadowRegistry::selectVariants);
|
47
38
|
prototype.registerRawHybridMethod("setScopedTheme", 1, &HybridShadowRegistry::setScopedTheme);
|
48
39
|
prototype.registerRawHybridMethod("getScopedTheme", 0, &HybridShadowRegistry::getScopedTheme);
|
49
|
-
prototype.registerRawHybridMethod("getVariants", 0, &HybridShadowRegistry::getVariants);
|
50
40
|
});
|
51
41
|
};
|
52
42
|
|
@@ -1,13 +1,13 @@
|
|
1
1
|
#include "HybridStatusBar.h"
|
2
2
|
|
3
3
|
double HybridStatusBar::getWidth() {
|
4
|
-
return this->_nativePlatform
|
4
|
+
return this->_nativePlatform->getStatusBarDimensions().width;
|
5
5
|
}
|
6
6
|
|
7
7
|
double HybridStatusBar::getHeight() {
|
8
|
-
return this->_nativePlatform
|
8
|
+
return this->_nativePlatform->getStatusBarDimensions().height;
|
9
9
|
}
|
10
10
|
|
11
11
|
void HybridStatusBar::setHidden(bool isHidden) {
|
12
|
-
|
12
|
+
this->_nativePlatform->setStatusBarHidden(isHidden);
|
13
13
|
}
|
@@ -7,12 +7,12 @@
|
|
7
7
|
using namespace margelo::nitro::unistyles;
|
8
8
|
|
9
9
|
struct HybridStatusBar: public HybridUnistylesStatusBarSpec {
|
10
|
-
HybridStatusBar(
|
10
|
+
HybridStatusBar(std::shared_ptr<HybridNativePlatformSpec> nativePlatform): HybridObject(TAG), _nativePlatform{nativePlatform} {}
|
11
11
|
|
12
12
|
double getWidth() override;
|
13
13
|
double getHeight() override;
|
14
14
|
void setHidden(bool isHidden) override;
|
15
15
|
|
16
16
|
private:
|
17
|
-
|
17
|
+
std::shared_ptr<HybridNativePlatformSpec> _nativePlatform;
|
18
18
|
};
|
@@ -36,10 +36,7 @@ jsi::Value HybridStyleSheet::create(jsi::Runtime& rt, const jsi::Value &thisVal,
|
|
36
36
|
parser.buildUnistyles(rt, registeredStyleSheet);
|
37
37
|
parser.parseUnistyles(rt, registeredStyleSheet);
|
38
38
|
|
39
|
-
|
40
|
-
auto styleHostObject = jsi::Object::createFromHostObject(rt, style);
|
41
|
-
|
42
|
-
return styleHostObject;
|
39
|
+
return core::toRNStyle(rt, registeredStyleSheet, this->_unistylesRuntime, {});
|
43
40
|
}
|
44
41
|
|
45
42
|
jsi::Value HybridStyleSheet::configure(jsi::Runtime &rt, const jsi::Value &thisVal, const jsi::Value *arguments, size_t count) {
|
@@ -80,6 +77,10 @@ jsi::Value HybridStyleSheet::configure(jsi::Runtime &rt, const jsi::Value &thisV
|
|
80
77
|
}
|
81
78
|
|
82
79
|
jsi::Value HybridStyleSheet::init(jsi::Runtime &rt, const jsi::Value &thisVal, const jsi::Value *arguments, size_t count) {
|
80
|
+
if (this->isInitialized) {
|
81
|
+
return jsi::Value::undefined();
|
82
|
+
}
|
83
|
+
|
83
84
|
// create new state
|
84
85
|
auto& registry = core::UnistylesRegistry::get();
|
85
86
|
|
@@ -87,6 +88,8 @@ jsi::Value HybridStyleSheet::init(jsi::Runtime &rt, const jsi::Value &thisVal, c
|
|
87
88
|
|
88
89
|
loadExternalMethods(thisVal, rt);
|
89
90
|
registerHooks(rt);
|
91
|
+
|
92
|
+
this->isInitialized = true;
|
90
93
|
|
91
94
|
return jsi::Value::undefined();
|
92
95
|
}
|
@@ -121,6 +124,10 @@ void HybridStyleSheet::parseSettings(jsi::Runtime &rt, jsi::Object settings) {
|
|
121
124
|
return;
|
122
125
|
}
|
123
126
|
|
127
|
+
if (propertyName == "CSSVars") {
|
128
|
+
return;
|
129
|
+
}
|
130
|
+
|
124
131
|
helpers::assertThat(rt, false, "StyleSheet.configure's settings received unexpected key: '" + std::string(propertyName) + "'");
|
125
132
|
});
|
126
133
|
}
|
@@ -250,8 +257,6 @@ void HybridStyleSheet::onPlatformDependenciesChange(std::vector<UnistyleDependen
|
|
250
257
|
|
251
258
|
if (dependencyMap.empty()) {
|
252
259
|
this->notifyJSListeners(dependencies);
|
253
|
-
|
254
|
-
return;
|
255
260
|
}
|
256
261
|
|
257
262
|
// in a later step, we will rebuild only Unistyles with mounted StyleSheets
|
@@ -260,6 +265,13 @@ void HybridStyleSheet::onPlatformDependenciesChange(std::vector<UnistyleDependen
|
|
260
265
|
auto dependentStyleSheets = registry.getStyleSheetsToRefresh(rt, dependencies);
|
261
266
|
|
262
267
|
parser.rebuildUnistylesInDependencyMap(rt, dependencyMap, dependentStyleSheets, std::nullopt);
|
268
|
+
|
269
|
+
// we need to stop here if there is nothing to update at the moment,
|
270
|
+
// but we need to compute dependentStyleSheets
|
271
|
+
if (dependencyMap.empty()) {
|
272
|
+
return;
|
273
|
+
}
|
274
|
+
|
263
275
|
parser.rebuildShadowLeafUpdates(rt, dependencyMap);
|
264
276
|
|
265
277
|
this->notifyJSListeners(dependencies);
|
@@ -296,8 +308,6 @@ void HybridStyleSheet::onPlatformNativeDependenciesChange(std::vector<UnistyleDe
|
|
296
308
|
|
297
309
|
if (dependencyMap.empty()) {
|
298
310
|
this->notifyJSListeners(unistyleDependencies);
|
299
|
-
|
300
|
-
return;
|
301
311
|
}
|
302
312
|
|
303
313
|
// in a later step, we will rebuild only Unistyles with mounted StyleSheets
|
@@ -306,6 +316,13 @@ void HybridStyleSheet::onPlatformNativeDependenciesChange(std::vector<UnistyleDe
|
|
306
316
|
auto dependentStyleSheets = registry.getStyleSheetsToRefresh(rt, unistyleDependencies);
|
307
317
|
|
308
318
|
parser.rebuildUnistylesInDependencyMap(rt, dependencyMap, dependentStyleSheets, miniRuntime);
|
319
|
+
|
320
|
+
// we need to stop here if there is nothing to update at the moment,
|
321
|
+
// but we need to compute dependentStyleSheets
|
322
|
+
if (dependencyMap.empty()) {
|
323
|
+
return;
|
324
|
+
}
|
325
|
+
|
309
326
|
parser.rebuildShadowLeafUpdates(rt, dependencyMap);
|
310
327
|
|
311
328
|
this->notifyJSListeners(unistyleDependencies);
|
@@ -4,7 +4,7 @@
|
|
4
4
|
#include <jsi/jsi.h>
|
5
5
|
#include "HybridUnistylesRuntime.h"
|
6
6
|
#include "HybridUnistylesStyleSheetSpec.hpp"
|
7
|
-
#include "
|
7
|
+
#include "RNStyle.h"
|
8
8
|
#include "Helpers.h"
|
9
9
|
#include "Constants.h"
|
10
10
|
#include "Breakpoints.h"
|
@@ -73,6 +73,7 @@ private:
|
|
73
73
|
void onImeChange(UnistylesNativeMiniRuntime miniRuntime);
|
74
74
|
void notifyJSListeners(std::vector<UnistyleDependency>& dependencies);
|
75
75
|
|
76
|
+
bool isInitialized = false;
|
76
77
|
double __unid = -1;
|
77
78
|
std::vector<std::unique_ptr<const std::function<void(std::vector<UnistyleDependency>&)>>> _changeListeners{};
|
78
79
|
std::shared_ptr<HybridUnistylesRuntime> _unistylesRuntime;
|
@@ -4,7 +4,7 @@
|
|
4
4
|
using namespace margelo::nitro::unistyles;
|
5
5
|
|
6
6
|
ColorScheme HybridUnistylesRuntime::getColorScheme() {
|
7
|
-
auto colorScheme = this->_nativePlatform
|
7
|
+
auto colorScheme = this->_nativePlatform->getColorScheme();
|
8
8
|
|
9
9
|
return static_cast<ColorScheme>(colorScheme);
|
10
10
|
}
|
@@ -16,7 +16,7 @@ bool HybridUnistylesRuntime::getHasAdaptiveThemes() {
|
|
16
16
|
};
|
17
17
|
|
18
18
|
Dimensions HybridUnistylesRuntime::getScreen() {
|
19
|
-
return this->_nativePlatform
|
19
|
+
return this->_nativePlatform->getScreenDimensions();
|
20
20
|
};
|
21
21
|
|
22
22
|
std::optional<std::string> HybridUnistylesRuntime::getThemeName() {
|
@@ -26,7 +26,7 @@ std::optional<std::string> HybridUnistylesRuntime::getThemeName() {
|
|
26
26
|
};
|
27
27
|
|
28
28
|
std::string HybridUnistylesRuntime::getContentSizeCategory() {
|
29
|
-
return this->_nativePlatform
|
29
|
+
return this->_nativePlatform->getContentSizeCategory();
|
30
30
|
};
|
31
31
|
|
32
32
|
std::optional<std::string> HybridUnistylesRuntime::getBreakpoint() {
|
@@ -36,25 +36,25 @@ std::optional<std::string> HybridUnistylesRuntime::getBreakpoint() {
|
|
36
36
|
};
|
37
37
|
|
38
38
|
bool HybridUnistylesRuntime::getRtl() {
|
39
|
-
return this->_nativePlatform
|
39
|
+
return this->_nativePlatform->getPrefersRtlDirection();
|
40
40
|
}
|
41
41
|
|
42
42
|
Insets HybridUnistylesRuntime::getInsets() {
|
43
|
-
return this->_nativePlatform
|
43
|
+
return this->_nativePlatform->getInsets();
|
44
44
|
};
|
45
45
|
|
46
46
|
Orientation HybridUnistylesRuntime::getOrientation() {
|
47
|
-
auto orientation = this->_nativePlatform
|
47
|
+
auto orientation = this->_nativePlatform->getOrientation();
|
48
48
|
|
49
49
|
return static_cast<Orientation>(orientation);
|
50
50
|
};
|
51
51
|
|
52
52
|
double HybridUnistylesRuntime::getPixelRatio() {
|
53
|
-
return this->_nativePlatform
|
53
|
+
return this->_nativePlatform->getPixelRatio();
|
54
54
|
};
|
55
55
|
|
56
56
|
double HybridUnistylesRuntime::getFontScale() {
|
57
|
-
return this->_nativePlatform
|
57
|
+
return this->_nativePlatform->getFontScale();
|
58
58
|
};
|
59
59
|
|
60
60
|
std::unordered_map<std::string, double> HybridUnistylesRuntime::getBreakpoints() {
|
@@ -133,7 +133,7 @@ jsi::Value HybridUnistylesRuntime::getTheme(jsi::Runtime &rt, const jsi::Value &
|
|
133
133
|
if (args[0].isUndefined()) {
|
134
134
|
return state.getCurrentJSTheme();
|
135
135
|
}
|
136
|
-
|
136
|
+
|
137
137
|
helpers::assertThat(rt, args[0].isString(), "UnistylesRuntime.getTheme expected to be called with string.");
|
138
138
|
|
139
139
|
auto themeName = args[0].asString(rt).utf8(rt);
|
@@ -164,11 +164,11 @@ jsi::Value HybridUnistylesRuntime::updateTheme(jsi::Runtime &rt, const jsi::Valu
|
|
164
164
|
}
|
165
165
|
|
166
166
|
void HybridUnistylesRuntime::setImmersiveMode(bool isEnabled) {
|
167
|
-
this->_nativePlatform
|
167
|
+
this->_nativePlatform->setImmersiveMode(isEnabled);
|
168
168
|
};
|
169
169
|
|
170
170
|
void HybridUnistylesRuntime::setRootViewBackgroundColor(double color) {
|
171
|
-
this->_nativePlatform
|
171
|
+
this->_nativePlatform->setRootViewBackgroundColor(color);
|
172
172
|
}
|
173
173
|
|
174
174
|
jsi::Value HybridUnistylesRuntime::createHybridStatusBar(jsi::Runtime &rt, const jsi::Value &thisValue, const jsi::Value *args, size_t count) {
|
@@ -188,7 +188,7 @@ jsi::Value HybridUnistylesRuntime::createHybridNavigationBar(jsi::Runtime &rt, c
|
|
188
188
|
}
|
189
189
|
|
190
190
|
UnistylesCxxMiniRuntime HybridUnistylesRuntime::getMiniRuntime() {
|
191
|
-
UnistylesNativeMiniRuntime nativeMiniRuntime = this->_nativePlatform
|
191
|
+
UnistylesNativeMiniRuntime nativeMiniRuntime = this->_nativePlatform->getMiniRuntime();
|
192
192
|
UnistylesCxxMiniRuntime cxxMiniRuntime{
|
193
193
|
this->getThemeName(),
|
194
194
|
this->getBreakpoint(),
|
@@ -260,16 +260,16 @@ void HybridUnistylesRuntime::registerPlatformListener(const std::function<void (
|
|
260
260
|
}
|
261
261
|
|
262
262
|
void HybridUnistylesRuntime::registerNativePlatformListener(const std::function<void(std::vector<UnistyleDependency>, UnistylesNativeMiniRuntime)>& listener) {
|
263
|
-
this->_nativePlatform
|
263
|
+
this->_nativePlatform->registerPlatformListener(listener);
|
264
264
|
this->_onNativeDependenciesChange = listener;
|
265
265
|
}
|
266
266
|
|
267
267
|
void HybridUnistylesRuntime::registerImeListener(const std::function<void(UnistylesNativeMiniRuntime)>& listener) {
|
268
|
-
this->_nativePlatform
|
268
|
+
this->_nativePlatform->registerImeListener(listener);
|
269
269
|
}
|
270
270
|
|
271
271
|
void HybridUnistylesRuntime::unregisterNativePlatformListeners() {
|
272
|
-
this->_nativePlatform
|
272
|
+
this->_nativePlatform->unregisterPlatformListeners();
|
273
273
|
}
|
274
274
|
|
275
275
|
void HybridUnistylesRuntime::includeDependenciesForColorSchemeChange(std::vector<UnistyleDependency>& deps) {
|
@@ -13,7 +13,7 @@
|
|
13
13
|
namespace margelo::nitro::unistyles {
|
14
14
|
|
15
15
|
struct HybridUnistylesRuntime: public HybridUnistylesRuntimeSpec {
|
16
|
-
HybridUnistylesRuntime(
|
16
|
+
HybridUnistylesRuntime(std::shared_ptr<HybridNativePlatformSpec> nativePlatform, jsi::Runtime& rt, std::function<void(std::function<void(jsi::Runtime&)>&&)> runOnJSThread)
|
17
17
|
: HybridObject(TAG), _nativePlatform{nativePlatform}, _rt{&rt}, runOnJSThread(std::move(runOnJSThread)) {}
|
18
18
|
|
19
19
|
jsi::Value getTheme(jsi::Runtime& rt,
|
@@ -78,7 +78,7 @@ private:
|
|
78
78
|
jsi::Runtime* _rt;
|
79
79
|
std::shared_ptr<HybridNavigationBar> _navigationBar;
|
80
80
|
std::shared_ptr<HybridStatusBar> _statusBar;
|
81
|
-
|
81
|
+
std::shared_ptr<HybridNativePlatformSpec> _nativePlatform;
|
82
82
|
std::function<void(std::vector<UnistyleDependency>)> _onDependenciesChange;
|
83
83
|
std::function<void(std::vector<UnistyleDependency>, UnistylesNativeMiniRuntime)> _onNativeDependenciesChange;
|
84
84
|
};
|
package/cxx/parser/Parser.cpp
CHANGED
@@ -18,6 +18,7 @@ void parser::Parser::buildUnistyles(jsi::Runtime& rt, std::shared_ptr<StyleSheet
|
|
18
18
|
|
19
19
|
if (styleValue.isFunction(rt)) {
|
20
20
|
styleSheet->unistyles[styleKey] = std::make_shared<UnistyleDynamicFunction>(
|
21
|
+
helpers::HashGenerator::generateHash(styleKey),
|
21
22
|
UnistyleType::DynamicFunction,
|
22
23
|
styleKey,
|
23
24
|
styleValue,
|
@@ -28,6 +29,7 @@ void parser::Parser::buildUnistyles(jsi::Runtime& rt, std::shared_ptr<StyleSheet
|
|
28
29
|
}
|
29
30
|
|
30
31
|
styleSheet->unistyles[styleKey] = std::make_shared<Unistyle>(
|
32
|
+
helpers::HashGenerator::generateHash(styleKey),
|
31
33
|
UnistyleType::Object,
|
32
34
|
styleKey,
|
33
35
|
styleValue,
|
@@ -301,7 +303,7 @@ void parser::Parser::rebuildUnistylesInDependencyMap(jsi::Runtime& rt, Dependenc
|
|
301
303
|
);
|
302
304
|
} else {
|
303
305
|
unistyle->rawValue = parsedStyleSheetsWithDefaultTheme[unistyleStyleSheet].asObject(rt).getProperty(rt, unistyle->styleKey.c_str()).asObject(rt);
|
304
|
-
this->rebuildUnistyle(rt,
|
306
|
+
this->rebuildUnistyle(rt, unistyle, unistyleData->variants, unistyleData->dynamicFunctionMetadata);
|
305
307
|
unistyleData->parsedStyle = jsi::Value(rt, unistyle->parsedStyle.value()).asObject(rt);
|
306
308
|
}
|
307
309
|
|
@@ -317,13 +319,14 @@ void parser::Parser::rebuildUnistylesInDependencyMap(jsi::Runtime& rt, Dependenc
|
|
317
319
|
for (auto& [_, unistyle] : styleSheet->unistyles) {
|
318
320
|
if (!parsedUnistyles.contains(unistyle)) {
|
319
321
|
unistyle->rawValue = parsedStyleSheetsWithDefaultTheme[styleSheet].asObject(rt).getProperty(rt, unistyle->styleKey.c_str()).asObject(rt);
|
322
|
+
unistyle->isDirty = true;
|
320
323
|
}
|
321
324
|
}
|
322
325
|
}
|
323
326
|
}
|
324
327
|
|
325
328
|
// rebuild single unistyle
|
326
|
-
void parser::Parser::rebuildUnistyle(jsi::Runtime& rt,
|
329
|
+
void parser::Parser::rebuildUnistyle(jsi::Runtime& rt, Unistyle::Shared unistyle, const Variants& variants, std::optional<std::vector<folly::dynamic>> metadata) {
|
327
330
|
if (unistyle->type == core::UnistyleType::Object) {
|
328
331
|
auto result = this->parseFirstLevel(rt, unistyle, variants);
|
329
332
|
|
@@ -358,6 +361,10 @@ void parser::Parser::rebuildUnistyle(jsi::Runtime& rt, std::shared_ptr<StyleShee
|
|
358
361
|
unistyleFn->unprocessedValue = std::move(functionResult);
|
359
362
|
unistyleFn->parsedStyle = this->parseFirstLevel(rt, unistyleFn, variants);
|
360
363
|
}
|
364
|
+
|
365
|
+
if (unistyle->isDirty) {
|
366
|
+
unistyle->isDirty = false;
|
367
|
+
}
|
361
368
|
}
|
362
369
|
|
363
370
|
// convert dependency map to shadow tree updates
|
@@ -508,36 +515,22 @@ jsi::Function parser::Parser::createDynamicFunctionProxy(jsi::Runtime& rt, Unist
|
|
508
515
|
|
509
516
|
// memoize metadata to call it later
|
510
517
|
auto unistyleFn = std::dynamic_pointer_cast<UnistyleDynamicFunction>(unistyle);
|
511
|
-
auto& registry = core::UnistylesRegistry::get();
|
512
518
|
|
513
519
|
unistyleFn->unprocessedValue = jsi::Value(rt, result).asObject(rt);
|
514
520
|
|
515
|
-
jsi::Value rawVariants = thisObject.hasProperty(rt, helpers::
|
516
|
-
? thisObject.getProperty(rt, helpers::
|
517
|
-
: jsi::
|
518
|
-
|
519
|
-
|
520
|
-
: std::optional<Variants>(helpers::variantsToPairs(rt, rawVariants.asObject(rt)));
|
521
|
+
jsi::Value rawVariants = thisObject.hasProperty(rt, helpers::STYLESHEET_VARIANTS.c_str())
|
522
|
+
? thisObject.getProperty(rt, helpers::STYLESHEET_VARIANTS.c_str())
|
523
|
+
: jsi::Object(rt);
|
524
|
+
|
525
|
+
Variants variants = helpers::variantsToPairs(rt, rawVariants.asObject(rt));
|
521
526
|
|
522
527
|
unistyleFn->parsedStyle = this->parseFirstLevel(rt, unistyleFn, variants);
|
523
528
|
unistyleFn->seal();
|
524
529
|
|
525
|
-
|
526
|
-
|
527
|
-
// include dependencies for createUnistylesComponent
|
528
|
-
style.setProperty(rt, "__proto__", generateUnistylesPrototype(rt, unistylesRuntime, unistyle, variants, helpers::functionArgumentsToArray(rt, args, count)));
|
529
|
-
|
530
|
-
jsi::Object secrets = jsi::Object(rt);
|
531
|
-
|
532
|
-
secrets.setProperty(rt, helpers::ARGUMENTS.c_str(), helpers::functionArgumentsToArray(rt, args, count));
|
533
|
-
|
534
|
-
helpers::defineHiddenProperty(rt, style, helpers::SECRETS.c_str(), secrets);
|
535
|
-
|
536
|
-
auto wrappedUnistyle = std::make_shared<UnistyleWrapper>(unistyle);
|
537
|
-
|
538
|
-
style.setNativeState(rt, std::move(wrappedUnistyle));
|
530
|
+
// for compatibility purpose save last arguments to style instance. It will work ok, if user sees warning about multiple unistyles
|
531
|
+
helpers::defineHiddenProperty(rt, thisObject, helpers::ARGUMENTS.c_str() + std::string("_") + unistyleFn->styleKey, helpers::functionArgumentsToArray(rt, args, count));
|
539
532
|
|
540
|
-
return
|
533
|
+
return core::objectFromUnistyle(rt, unistylesRuntime, unistyle, variants, std::make_optional<jsi::Array>(helpers::functionArgumentsToArray(rt, args, count))).asObject(rt);
|
541
534
|
});
|
542
535
|
}
|
543
536
|
|