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
@@ -0,0 +1,155 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.CSSState = void 0;
|
7
|
+
var _convert = require("../convert");
|
8
|
+
var _utils = require("../utils");
|
9
|
+
var _core = require("./core");
|
10
|
+
const safeGetMap = (map, key) => {
|
11
|
+
const nextLevelMap = map.get(key);
|
12
|
+
if (!nextLevelMap) {
|
13
|
+
const newMap = new Map();
|
14
|
+
map.set(key, newMap);
|
15
|
+
return newMap;
|
16
|
+
}
|
17
|
+
return nextLevelMap;
|
18
|
+
};
|
19
|
+
class CSSState {
|
20
|
+
mainMap = new Map();
|
21
|
+
mqMap = new Map();
|
22
|
+
styleTag = null;
|
23
|
+
CSS = '';
|
24
|
+
constructor() {
|
25
|
+
if ((0, _utils.isServer)()) {
|
26
|
+
return;
|
27
|
+
}
|
28
|
+
const ssrTag = document.getElementById('unistyles-web');
|
29
|
+
if (ssrTag) {
|
30
|
+
this.styleTag = ssrTag;
|
31
|
+
return;
|
32
|
+
}
|
33
|
+
this.styleTag = document.createElement('style');
|
34
|
+
this.styleTag.id = 'unistyles-web';
|
35
|
+
document.head.appendChild(this.styleTag);
|
36
|
+
}
|
37
|
+
set = ({
|
38
|
+
className,
|
39
|
+
propertyKey,
|
40
|
+
value,
|
41
|
+
mediaQuery = '',
|
42
|
+
isMq
|
43
|
+
}) => {
|
44
|
+
const firstLevelMap = isMq ? this.mqMap : this.mainMap;
|
45
|
+
const secondLevelMap = safeGetMap(firstLevelMap, mediaQuery);
|
46
|
+
const thirdLevelMap = safeGetMap(secondLevelMap, className);
|
47
|
+
thirdLevelMap.set(propertyKey, value);
|
48
|
+
};
|
49
|
+
add = (hash, values) => {
|
50
|
+
(0, _core.convertToCSS)(hash, (0, _convert.convertUnistyles)(values), this);
|
51
|
+
if (this.styleTag) {
|
52
|
+
this.styleTag.innerText = this.getStyles();
|
53
|
+
}
|
54
|
+
};
|
55
|
+
addTheme = (theme, values) => {
|
56
|
+
let themeVars = '';
|
57
|
+
const convertToCSS = (key, value, prev = '-') => {
|
58
|
+
if (typeof value === 'object' && value !== null) {
|
59
|
+
Object.entries(value).forEach(([nestedKey, nestedValue]) => convertToCSS(nestedKey, nestedValue, `${prev}-${key}`));
|
60
|
+
}
|
61
|
+
if (typeof value === 'string') {
|
62
|
+
themeVars += `${prev}-${(0, _utils.hyphenate)(key)}:${value};`;
|
63
|
+
}
|
64
|
+
};
|
65
|
+
Object.entries(values).forEach(([key, value]) => convertToCSS(key, value));
|
66
|
+
if (theme === 'light' || theme === 'dark') {
|
67
|
+
this.CSS += `@media (prefers-color-scheme: ${theme}){:root{${themeVars}}}`;
|
68
|
+
}
|
69
|
+
this.CSS += `:root.${theme}{${themeVars}}`;
|
70
|
+
};
|
71
|
+
remove = hash => {
|
72
|
+
this.mainMap.forEach(styles => {
|
73
|
+
styles.delete(hash);
|
74
|
+
});
|
75
|
+
this.mqMap.forEach(styles => {
|
76
|
+
styles.delete(hash);
|
77
|
+
});
|
78
|
+
if (this.styleTag) {
|
79
|
+
this.styleTag.innerText = this.getStyles();
|
80
|
+
}
|
81
|
+
};
|
82
|
+
getStyles = () => {
|
83
|
+
let styles = this.CSS;
|
84
|
+
const generate = (mediaQuery, secondLevelMap) => {
|
85
|
+
if (mediaQuery) {
|
86
|
+
styles += `${mediaQuery}{`;
|
87
|
+
}
|
88
|
+
for (const [className, thirdLevelMap] of secondLevelMap) {
|
89
|
+
styles += `.${className}{`;
|
90
|
+
for (const [propertyKey, value] of thirdLevelMap) {
|
91
|
+
if (value === undefined) {
|
92
|
+
continue;
|
93
|
+
}
|
94
|
+
styles += `${(0, _utils.hyphenate)(propertyKey)}:${value};`;
|
95
|
+
}
|
96
|
+
styles += '}';
|
97
|
+
}
|
98
|
+
if (mediaQuery) {
|
99
|
+
styles += '}';
|
100
|
+
}
|
101
|
+
};
|
102
|
+
for (const [mediaQuery, secondLevelMap] of this.mainMap) {
|
103
|
+
generate(mediaQuery, secondLevelMap);
|
104
|
+
}
|
105
|
+
for (const [mediaQuery, secondLevelMap] of this.mqMap) {
|
106
|
+
generate(mediaQuery, secondLevelMap);
|
107
|
+
}
|
108
|
+
return styles;
|
109
|
+
};
|
110
|
+
getState = () => {
|
111
|
+
const getState = map => {
|
112
|
+
return Array.from(map).map(([mediaQuery, classNames]) => {
|
113
|
+
return [mediaQuery, Array.from(classNames.entries()).map(([className, style]) => {
|
114
|
+
return [className, Array.from(style.entries()).map(([property, value]) => {
|
115
|
+
return [property, value];
|
116
|
+
})];
|
117
|
+
})];
|
118
|
+
});
|
119
|
+
};
|
120
|
+
const mainState = getState(this.mainMap);
|
121
|
+
const mqState = getState(this.mqMap);
|
122
|
+
return {
|
123
|
+
mainState,
|
124
|
+
mqState
|
125
|
+
};
|
126
|
+
};
|
127
|
+
hydrate = ({
|
128
|
+
mainState,
|
129
|
+
mqState
|
130
|
+
}) => {
|
131
|
+
const hydrateState = (map, isMq = false) => {
|
132
|
+
map.forEach(([mediaQuery, classNames]) => {
|
133
|
+
classNames.forEach(([className, style]) => {
|
134
|
+
style.forEach(([propertyKey, value]) => {
|
135
|
+
this.set({
|
136
|
+
className,
|
137
|
+
propertyKey,
|
138
|
+
value,
|
139
|
+
mediaQuery,
|
140
|
+
isMq
|
141
|
+
});
|
142
|
+
});
|
143
|
+
});
|
144
|
+
});
|
145
|
+
};
|
146
|
+
hydrateState(mainState);
|
147
|
+
hydrateState(mqState, true);
|
148
|
+
};
|
149
|
+
reset = () => {
|
150
|
+
this.mqMap.clear();
|
151
|
+
this.mainMap.clear();
|
152
|
+
};
|
153
|
+
}
|
154
|
+
exports.CSSState = CSSState;
|
155
|
+
//# sourceMappingURL=state.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["_convert","require","_utils","_core","safeGetMap","map","key","nextLevelMap","get","newMap","Map","set","CSSState","mainMap","mqMap","styleTag","CSS","constructor","isServer","ssrTag","document","getElementById","createElement","id","head","appendChild","className","propertyKey","value","mediaQuery","isMq","firstLevelMap","secondLevelMap","thirdLevelMap","add","hash","values","convertToCSS","convertUnistyles","innerText","getStyles","addTheme","theme","themeVars","prev","Object","entries","forEach","nestedKey","nestedValue","hyphenate","remove","styles","delete","generate","undefined","getState","Array","from","classNames","style","property","mainState","mqState","hydrate","hydrateState","reset","clear","exports"],"sourceRoot":"../../../../src","sources":["web/css/state.ts"],"mappings":"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","ignoreList":[]}
|
@@ -0,0 +1,47 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.safeGetMap = exports.getStylesFromState = void 0;
|
7
|
+
var _utils = require("../utils");
|
8
|
+
const safeGetMap = (map, key) => {
|
9
|
+
const nextLevelMap = map.get(key);
|
10
|
+
if (!nextLevelMap) {
|
11
|
+
const newMap = new Map();
|
12
|
+
map.set(key, newMap);
|
13
|
+
return newMap;
|
14
|
+
}
|
15
|
+
return nextLevelMap;
|
16
|
+
};
|
17
|
+
exports.safeGetMap = safeGetMap;
|
18
|
+
const getStylesFromState = state => {
|
19
|
+
let styles = '';
|
20
|
+
const generate = (mediaQuery, secondLevelMap) => {
|
21
|
+
if (mediaQuery) {
|
22
|
+
styles += `${mediaQuery}{`;
|
23
|
+
}
|
24
|
+
for (const [className, thirdLevelMap] of secondLevelMap) {
|
25
|
+
styles += `.${className}{`;
|
26
|
+
for (const [propertyKey, value] of thirdLevelMap) {
|
27
|
+
if (value === undefined) {
|
28
|
+
continue;
|
29
|
+
}
|
30
|
+
styles += `${(0, _utils.hyphenate)(propertyKey)}:${value};`;
|
31
|
+
}
|
32
|
+
styles += '}';
|
33
|
+
}
|
34
|
+
if (mediaQuery) {
|
35
|
+
styles += '}';
|
36
|
+
}
|
37
|
+
};
|
38
|
+
for (const [mediaQuery, secondLevelMap] of state.mainMap) {
|
39
|
+
generate(mediaQuery, secondLevelMap);
|
40
|
+
}
|
41
|
+
for (const [mediaQuery, secondLevelMap] of state.mqMap) {
|
42
|
+
generate(mediaQuery, secondLevelMap);
|
43
|
+
}
|
44
|
+
return styles;
|
45
|
+
};
|
46
|
+
exports.getStylesFromState = getStylesFromState;
|
47
|
+
//# sourceMappingURL=utils.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["_utils","require","safeGetMap","map","key","nextLevelMap","get","newMap","Map","set","exports","getStylesFromState","state","styles","generate","mediaQuery","secondLevelMap","className","thirdLevelMap","propertyKey","value","undefined","hyphenate","mainMap","mqMap"],"sourceRoot":"../../../../src","sources":["web/css/utils.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAGO,MAAMC,UAAU,GAAGA,CAACC,GAAkC,EAAEC,GAAW,KAAK;EAC3E,MAAMC,YAAY,GAAGF,GAAG,CAACG,GAAG,CAACF,GAAG,CAAC;EAEjC,IAAI,CAACC,YAAY,EAAE;IACf,MAAME,MAAM,GAAG,IAAIC,GAAG,CAAc,CAAC;IAErCL,GAAG,CAACM,GAAG,CAACL,GAAG,EAAEG,MAAM,CAAC;IAEpB,OAAOA,MAAM;EACjB;EAEA,OAAOF,YAAY;AACvB,CAAC;AAAAK,OAAA,CAAAR,UAAA,GAAAA,UAAA;AAEM,MAAMS,kBAAkB,GAAIC,KAAe,IAAK;EACnD,IAAIC,MAAM,GAAG,EAAE;EAEf,MAAMC,QAAQ,GAAGA,CAACC,UAAkB,EAAEC,cAAgD,KAAK;IACvF,IAAID,UAAU,EAAE;MACZF,MAAM,IAAI,GAAGE,UAAU,GAAG;IAC9B;IAEA,KAAK,MAAM,CAACE,SAAS,EAAEC,aAAa,CAAC,IAAIF,cAAc,EAAE;MACrDH,MAAM,IAAI,IAAII,SAAS,GAAG;MAE1B,KAAK,MAAM,CAACE,WAAW,EAAEC,KAAK,CAAC,IAAIF,aAAa,EAAE;QAC9C,IAAIE,KAAK,KAAKC,SAAS,EAAE;UACrB;QACJ;QAEAR,MAAM,IAAI,GAAG,IAAAS,gBAAS,EAACH,WAAW,CAAC,IAAIC,KAAK,GAAG;MACnD;MAEAP,MAAM,IAAI,GAAG;IACjB;IAEA,IAAIE,UAAU,EAAE;MACZF,MAAM,IAAI,GAAG;IACjB;EACJ,CAAC;EAED,KAAK,MAAM,CAACE,UAAU,EAAEC,cAAc,CAAC,IAAIJ,KAAK,CAACW,OAAO,EAAE;IACtDT,QAAQ,CAACC,UAAU,EAAEC,cAAc,CAAC;EACxC;EAEA,KAAK,MAAM,CAACD,UAAU,EAAEC,cAAc,CAAC,IAAIJ,KAAK,CAACY,KAAK,EAAE;IACpDV,QAAQ,CAACC,UAAU,EAAEC,cAAc,CAAC;EACxC;EAEA,OAAOH,MAAM;AACjB,CAAC;AAAAH,OAAA,CAAAC,kBAAA,GAAAA,kBAAA","ignoreList":[]}
|
@@ -4,14 +4,16 @@ Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
5
5
|
});
|
6
6
|
var _exportNames = {
|
7
|
+
UnistylesWeb: true,
|
7
8
|
StyleSheet: true,
|
8
|
-
UnistylesRuntime: true
|
9
|
+
UnistylesRuntime: true,
|
10
|
+
UnistylesShadowRegistry: true
|
9
11
|
};
|
10
|
-
exports.UnistylesRuntime = exports.StyleSheet = void 0;
|
12
|
+
exports.UnistylesWeb = exports.UnistylesShadowRegistry = exports.UnistylesRuntime = exports.StyleSheet = void 0;
|
11
13
|
var _create = require("./create");
|
12
|
-
var _state = require("./state");
|
13
14
|
var _utils = require("../utils");
|
14
|
-
var
|
15
|
+
var _services = require("./services");
|
16
|
+
var _utils2 = require("./utils");
|
15
17
|
var _mock = require("./mock");
|
16
18
|
Object.keys(_mock).forEach(function (key) {
|
17
19
|
if (key === "default" || key === "__esModule") return;
|
@@ -24,20 +26,13 @@ Object.keys(_mock).forEach(function (key) {
|
|
24
26
|
}
|
25
27
|
});
|
26
28
|
});
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
Object.defineProperty(exports, key, {
|
33
|
-
enumerable: true,
|
34
|
-
get: function () {
|
35
|
-
return _shadowRegistry[key];
|
36
|
-
}
|
37
|
-
});
|
38
|
-
});
|
29
|
+
if ((0, _utils2.isServer)() && !globalThis.__unistyles__) {
|
30
|
+
// @ts-ignore
|
31
|
+
globalThis.__unistyles__ = new _services.UnistylesServices();
|
32
|
+
}
|
33
|
+
const UnistylesWeb = exports.UnistylesWeb = (0, _utils2.isServer)() ? globalThis.__unistyles__ : new _services.UnistylesServices();
|
39
34
|
const StyleSheet = exports.StyleSheet = {
|
40
|
-
configure:
|
35
|
+
configure: UnistylesWeb.state.init,
|
41
36
|
create: _create.create,
|
42
37
|
absoluteFill: {
|
43
38
|
position: 'absolute',
|
@@ -57,5 +52,6 @@ const StyleSheet = exports.StyleSheet = {
|
|
57
52
|
flatten: (...styles) => (0, _utils.deepMergeObjects)(...styles),
|
58
53
|
hairlineWidth: 1
|
59
54
|
};
|
60
|
-
const UnistylesRuntime = exports.UnistylesRuntime =
|
55
|
+
const UnistylesRuntime = exports.UnistylesRuntime = UnistylesWeb.runtime;
|
56
|
+
const UnistylesShadowRegistry = exports.UnistylesShadowRegistry = UnistylesWeb.shadowRegistry;
|
61
57
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_create","require","
|
1
|
+
{"version":3,"names":["_create","require","_utils","_services","_utils2","_mock","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","isServer","globalThis","__unistyles__","UnistylesServices","UnistylesWeb","StyleSheet","configure","state","init","create","absoluteFill","position","left","top","right","bottom","absoluteFillObject","compose","a","b","deepMergeObjects","flatten","styles","hairlineWidth","UnistylesRuntime","runtime","UnistylesShadowRegistry","shadowRegistry"],"sourceRoot":"../../../src","sources":["web/index.ts"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAIA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAsCA,IAAAI,KAAA,GAAAJ,OAAA;AAAAK,MAAA,CAAAC,IAAA,CAAAF,KAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,KAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,KAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AA/BA,IAAI,IAAAS,gBAAQ,EAAC,CAAC,IAAI,CAACC,UAAU,CAACC,aAAa,EAAE;EACzC;EACAD,UAAU,CAACC,aAAa,GAAG,IAAIC,2BAAiB,CAAC,CAAC;AACtD;AAEO,MAAMC,YAAY,GAAAR,OAAA,CAAAQ,YAAA,GAAG,IAAAJ,gBAAQ,EAAC,CAAC,GAAGC,UAAU,CAACC,aAAa,GAAG,IAAIC,2BAAiB,CAAC,CAAC;AACpF,MAAME,UAAU,GAAAT,OAAA,CAAAS,UAAA,GAAG;EACtBC,SAAS,EAAEF,YAAY,CAACG,KAAK,CAACC,IAAI;EAClCC,MAAM,EAAEA,cAAM;EACdC,YAAY,EAAE;IACVC,QAAQ,EAAE,UAAU;IACpBC,IAAI,EAAE,CAAC;IACPC,GAAG,EAAE,CAAC;IACNC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE;EACZ,CAAC;EACDC,kBAAkB,EAAE;IAChBL,QAAQ,EAAE,UAAU;IACpBC,IAAI,EAAE,CAAC;IACPC,GAAG,EAAE,CAAC;IACNC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE;EACZ,CAAC;EACDE,OAAO,EAAEA,CAACC,CAAS,EAAEC,CAAS,KAAK,IAAAC,uBAAgB,EAACF,CAAC,EAAEC,CAAC,CAAC;EACzDE,OAAO,EAAEA,CAAC,GAAGC,MAAqB,KAAK,IAAAF,uBAAgB,EAAC,GAAGE,MAAM,CAAC;EAClEC,aAAa,EAAE;AACnB,CAAuC;AAEhC,MAAMC,gBAAgB,GAAA5B,OAAA,CAAA4B,gBAAA,GAAGpB,YAAY,CAACqB,OAAmD;AACzF,MAAMC,uBAAuB,GAAA9B,OAAA,CAAA8B,uBAAA,GAAGtB,YAAY,CAACuB,cAAiE","ignoreList":[]}
|
@@ -5,8 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
});
|
6
6
|
exports.UnistylesListener = void 0;
|
7
7
|
var _NativePlatform = require("../specs/NativePlatform");
|
8
|
-
|
9
|
-
class UnistylesListenerBuilder {
|
8
|
+
class UnistylesListener {
|
10
9
|
isInitialized = false;
|
11
10
|
listeners = Array.from({
|
12
11
|
length: Object.keys(_NativePlatform.UnistyleDependency).length / 2
|
@@ -14,6 +13,9 @@ class UnistylesListenerBuilder {
|
|
14
13
|
stylesheetListeners = Array.from({
|
15
14
|
length: Object.keys(_NativePlatform.UnistyleDependency).length / 2
|
16
15
|
}, () => new Set());
|
16
|
+
constructor(services) {
|
17
|
+
this.services = services;
|
18
|
+
}
|
17
19
|
emitChange = dependency => {
|
18
20
|
this.stylesheetListeners[dependency]?.forEach(listener => listener());
|
19
21
|
this.listeners[dependency]?.forEach(listener => listener());
|
@@ -23,21 +25,21 @@ class UnistylesListenerBuilder {
|
|
23
25
|
return;
|
24
26
|
}
|
25
27
|
this.isInitialized = true;
|
26
|
-
|
28
|
+
this.services.runtime.darkMedia?.addEventListener('change', event => {
|
27
29
|
if (!event.matches) {
|
28
30
|
return;
|
29
31
|
}
|
30
32
|
this.emitChange(_NativePlatform.UnistyleDependency.ColorScheme);
|
31
|
-
if (
|
33
|
+
if (this.services.runtime.hasAdaptiveThemes) {
|
32
34
|
this.emitChange(_NativePlatform.UnistyleDependency.Theme);
|
33
35
|
}
|
34
36
|
});
|
35
|
-
|
37
|
+
this.services.runtime.lightMedia?.addEventListener('change', event => {
|
36
38
|
if (!event.matches) {
|
37
39
|
return;
|
38
40
|
}
|
39
41
|
this.emitChange(_NativePlatform.UnistyleDependency.ColorScheme);
|
40
|
-
if (
|
42
|
+
if (this.services.runtime.hasAdaptiveThemes) {
|
41
43
|
this.emitChange(_NativePlatform.UnistyleDependency.Theme);
|
42
44
|
}
|
43
45
|
});
|
@@ -57,5 +59,5 @@ class UnistylesListenerBuilder {
|
|
57
59
|
};
|
58
60
|
};
|
59
61
|
}
|
60
|
-
|
62
|
+
exports.UnistylesListener = UnistylesListener;
|
61
63
|
//# sourceMappingURL=listener.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_NativePlatform","require","
|
1
|
+
{"version":3,"names":["_NativePlatform","require","UnistylesListener","isInitialized","listeners","Array","from","length","Object","keys","UnistyleDependency","Set","stylesheetListeners","constructor","services","emitChange","dependency","forEach","listener","initListeners","runtime","darkMedia","addEventListener","event","matches","ColorScheme","hasAdaptiveThemes","Theme","lightMedia","window","Orientation","Dimensions","addListeners","dependencies","add","delete","addStylesheetListeners","exports"],"sourceRoot":"../../../src","sources":["web/listener.ts"],"mappings":"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","ignoreList":[]}
|
@@ -4,43 +4,35 @@ Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
5
5
|
});
|
6
6
|
exports.UnistylesRegistry = void 0;
|
7
|
-
var _runtime = require("./runtime");
|
8
7
|
var _utils = require("./utils");
|
9
|
-
var
|
10
|
-
|
11
|
-
class UnistylesRegistryBuilder {
|
8
|
+
var _css = require("./css");
|
9
|
+
class UnistylesRegistry {
|
12
10
|
stylesheets = new Map();
|
11
|
+
stylesCache = new Set();
|
13
12
|
stylesCounter = new Map();
|
14
|
-
#styleTag = null;
|
15
13
|
disposeListenersMap = new Map();
|
16
14
|
dependenciesMap = new Map();
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
const newTag = document.createElement('style');
|
21
|
-
newTag.id = 'unistyles-web';
|
22
|
-
this.#styleTag = newTag;
|
23
|
-
document.head.appendChild(newTag);
|
24
|
-
return newTag;
|
25
|
-
}
|
26
|
-
return tag;
|
15
|
+
css = new _css.CSSState();
|
16
|
+
constructor(services) {
|
17
|
+
this.services = services;
|
27
18
|
}
|
28
19
|
getComputedStylesheet = (stylesheet, scopedThemeName) => {
|
29
20
|
if (typeof stylesheet !== 'function') {
|
30
21
|
return stylesheet;
|
31
22
|
}
|
32
23
|
if (scopedThemeName) {
|
33
|
-
const scopedTheme =
|
24
|
+
const scopedTheme = this.services.runtime.getTheme(scopedThemeName, this.services.state.CSSVars);
|
34
25
|
if (!scopedTheme) {
|
35
26
|
throw (0, _utils.error)(`Unistyles: You're trying to use scoped theme '${scopedThemeName}' but it wasn't registered.`);
|
36
27
|
}
|
37
|
-
return stylesheet(scopedTheme,
|
28
|
+
return stylesheet(scopedTheme, this.services.runtime.miniRuntime);
|
38
29
|
}
|
39
30
|
const computedStylesheet = this.stylesheets.get(stylesheet);
|
40
31
|
if (computedStylesheet) {
|
41
32
|
return computedStylesheet;
|
42
33
|
}
|
43
|
-
const
|
34
|
+
const currentTheme = this.services.runtime.getTheme(this.services.runtime.themeName, this.services.state.CSSVars);
|
35
|
+
const createdStylesheet = stylesheet(currentTheme, this.services.runtime.miniRuntime);
|
44
36
|
const dependencies = Object.values(createdStylesheet).flatMap(value => (0, _utils.extractUnistyleDependencies)(value));
|
45
37
|
this.addDependenciesToStylesheet(stylesheet, dependencies);
|
46
38
|
this.stylesheets.set(stylesheet, createdStylesheet);
|
@@ -50,130 +42,59 @@ class UnistylesRegistryBuilder {
|
|
50
42
|
this.disposeListenersMap.get(stylesheet)?.();
|
51
43
|
const dependenciesMap = this.dependenciesMap.get(stylesheet) ?? new Set(dependencies);
|
52
44
|
dependencies.forEach(dependency => dependenciesMap.add(dependency));
|
53
|
-
const dispose =
|
54
|
-
const newComputedStylesheet = stylesheet(
|
45
|
+
const dispose = this.services.listener.addStylesheetListeners(Array.from(dependenciesMap), () => {
|
46
|
+
const newComputedStylesheet = stylesheet(this.services.runtime.theme, this.services.runtime.miniRuntime);
|
55
47
|
this.stylesheets.set(stylesheet, newComputedStylesheet);
|
56
48
|
});
|
57
49
|
this.dependenciesMap.set(stylesheet, dependenciesMap);
|
58
50
|
this.disposeListenersMap.set(stylesheet, dispose);
|
59
51
|
};
|
52
|
+
connect = (ref, hash) => {
|
53
|
+
const stylesCounter = this.stylesCounter.get(hash) ?? new Set();
|
54
|
+
stylesCounter.add(ref);
|
55
|
+
this.stylesCounter.set(hash, stylesCounter);
|
56
|
+
};
|
57
|
+
remove = (ref, hash) => {
|
58
|
+
const stylesCounter = this.stylesCounter.get(hash) ?? new Set();
|
59
|
+
stylesCounter.delete(ref);
|
60
|
+
if (stylesCounter.size === 0) {
|
61
|
+
// Move this to the end of the event loop so the element is removed from the DOM
|
62
|
+
Promise.resolve().then(() => {
|
63
|
+
if (document.querySelector(`.${hash}`)) {
|
64
|
+
return;
|
65
|
+
}
|
66
|
+
this.css.remove(hash);
|
67
|
+
this.stylesCache.delete(hash);
|
68
|
+
});
|
69
|
+
return true;
|
70
|
+
}
|
71
|
+
return false;
|
72
|
+
};
|
60
73
|
add = value => {
|
61
74
|
const hash = (0, _utils.generateHash)(value);
|
62
|
-
|
63
|
-
if (!existingCounter || existingCounter.size === 0) {
|
64
|
-
const counter = new Set();
|
65
|
-
counter.add(value);
|
66
|
-
this.stylesCounter.set(hash, counter);
|
75
|
+
if (!this.stylesCache.has(hash)) {
|
67
76
|
this.applyStyles(hash, value);
|
77
|
+
this.stylesCache.add(hash);
|
68
78
|
return {
|
69
79
|
hash,
|
70
80
|
existingHash: false
|
71
81
|
};
|
72
82
|
}
|
73
|
-
existingCounter.add(value);
|
74
83
|
return {
|
75
84
|
hash,
|
76
85
|
existingHash: true
|
77
86
|
};
|
78
87
|
};
|
79
|
-
applyStyles = (hash,
|
80
|
-
|
81
|
-
if (!this.styleTag.sheet) {
|
82
|
-
return;
|
83
|
-
}
|
84
|
-
if (typeof value === 'object' && !key.startsWith('_')) {
|
85
|
-
const mediaQuery = (0, _utils.getMediaQuery)(key);
|
86
|
-
const cssRules = Array.from(this.styleTag.sheet.cssRules);
|
87
|
-
let queryRule = cssRules.find(rule => {
|
88
|
-
if (!(rule instanceof CSSMediaRule)) {
|
89
|
-
return false;
|
90
|
-
}
|
91
|
-
return rule.media.item(0)?.includes(mediaQuery);
|
92
|
-
}) ?? null;
|
93
|
-
if (!queryRule) {
|
94
|
-
const mediaQueryValue = (0, _utils.extractMediaQueryValue)(mediaQuery);
|
95
|
-
const ruleIndex = mediaQueryValue ? cssRules.reduce((acc, rule, ruleIndex) => {
|
96
|
-
if (!(rule instanceof CSSMediaRule)) {
|
97
|
-
return acc;
|
98
|
-
}
|
99
|
-
const ruleMediaQueryValue = (0, _utils.extractMediaQueryValue)(rule.conditionText);
|
100
|
-
if (ruleMediaQueryValue === undefined) {
|
101
|
-
return;
|
102
|
-
}
|
103
|
-
return ruleMediaQueryValue > mediaQueryValue ? ruleIndex : acc;
|
104
|
-
}, cssRules.length) : undefined;
|
105
|
-
queryRule = this.styleTag.sheet.cssRules.item(this.styleTag.sheet.insertRule(`@media ${mediaQuery} {.${hash} {}}`, ruleIndex));
|
106
|
-
}
|
107
|
-
if (queryRule instanceof CSSMediaRule) {
|
108
|
-
Object.entries(value).forEach(([mqKey, mqValue]) => {
|
109
|
-
this.applyRule({
|
110
|
-
hash,
|
111
|
-
key: mqKey,
|
112
|
-
value: mqValue,
|
113
|
-
sheet: queryRule
|
114
|
-
});
|
115
|
-
});
|
116
|
-
}
|
117
|
-
return;
|
118
|
-
}
|
119
|
-
|
120
|
-
// Pseudo
|
121
|
-
if (typeof value === 'object') {
|
122
|
-
Object.entries(value).forEach(([pseudoKey, pseudoValue]) => {
|
123
|
-
this.applyRule({
|
124
|
-
hash: `${hash}${key.replace('_', ':')}`,
|
125
|
-
key: pseudoKey,
|
126
|
-
value: pseudoValue,
|
127
|
-
sheet: this.styleTag.sheet
|
128
|
-
});
|
129
|
-
});
|
130
|
-
return;
|
131
|
-
}
|
132
|
-
this.applyRule({
|
133
|
-
hash,
|
134
|
-
key,
|
135
|
-
value,
|
136
|
-
sheet: this.styleTag.sheet
|
137
|
-
});
|
138
|
-
});
|
139
|
-
};
|
140
|
-
applyRule = ({
|
141
|
-
hash,
|
142
|
-
key,
|
143
|
-
value,
|
144
|
-
sheet
|
145
|
-
}) => {
|
146
|
-
let rule = Array.from(sheet.cssRules).find(rule => {
|
147
|
-
if (!(rule instanceof CSSStyleRule)) {
|
148
|
-
return false;
|
149
|
-
}
|
150
|
-
|
151
|
-
// In unistyles pseudos are prefixed with ':' but in css some of them are prefixed with '::'
|
152
|
-
return rule.selectorText.replace('::', ':').includes(hash);
|
153
|
-
}) ?? null;
|
154
|
-
if (!rule) {
|
155
|
-
rule = sheet.cssRules.item(sheet.insertRule(`.${hash} {}`));
|
156
|
-
}
|
157
|
-
if (!(rule instanceof CSSStyleRule) || !(0, _utils.keyInObject)(rule.style, key)) {
|
158
|
-
return;
|
159
|
-
}
|
160
|
-
rule.style[key] = value;
|
88
|
+
applyStyles = (hash, value) => {
|
89
|
+
this.css.add(hash, value);
|
161
90
|
};
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
existingStyles.delete(value);
|
169
|
-
if (existingStyles.size === 0) {
|
170
|
-
const ruleIndex = Array.from(this.styleTag.sheet?.cssRules ?? []).findIndex(rule => rule.cssText.includes(`.${hash}`));
|
171
|
-
if (ruleIndex === -1) {
|
172
|
-
return;
|
173
|
-
}
|
174
|
-
this.styleTag.sheet?.deleteRule(ruleIndex);
|
175
|
-
}
|
91
|
+
reset = () => {
|
92
|
+
this.css.reset();
|
93
|
+
this.stylesCache.clear();
|
94
|
+
this.dependenciesMap.clear();
|
95
|
+
this.disposeListenersMap.clear();
|
96
|
+
this.stylesCounter.clear();
|
176
97
|
};
|
177
98
|
}
|
178
|
-
|
99
|
+
exports.UnistylesRegistry = UnistylesRegistry;
|
179
100
|
//# sourceMappingURL=registry.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["
|
1
|
+
{"version":3,"names":["_utils","require","_css","UnistylesRegistry","stylesheets","Map","stylesCache","Set","stylesCounter","disposeListenersMap","dependenciesMap","css","CSSState","constructor","services","getComputedStylesheet","stylesheet","scopedThemeName","scopedTheme","runtime","getTheme","state","CSSVars","error","miniRuntime","computedStylesheet","get","currentTheme","themeName","createdStylesheet","dependencies","Object","values","flatMap","value","extractUnistyleDependencies","addDependenciesToStylesheet","set","forEach","dependency","add","dispose","listener","addStylesheetListeners","Array","from","newComputedStylesheet","theme","connect","ref","hash","remove","delete","size","Promise","resolve","then","document","querySelector","generateHash","has","applyStyles","existingHash","reset","clear","exports"],"sourceRoot":"../../../src","sources":["web/registry.ts"],"mappings":"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","ignoreList":[]}
|