@hanzogui/web 3.0.6 → 4.4.0
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/dist/cjs/Gui.cjs +57 -53
- package/dist/cjs/Gui.native.js +95 -79
- package/dist/cjs/Gui.native.js.map +1 -1
- package/dist/cjs/_withStableStyle.cjs +52 -42
- package/dist/cjs/_withStableStyle.native.js +64 -59
- package/dist/cjs/_withStableStyle.native.js.map +1 -1
- package/dist/cjs/animationDriverTypes.test-d.cjs +34 -17
- package/dist/cjs/animationDriverTypes.test-d.native.js +34 -17
- package/dist/cjs/animationDriverTypes.test-d.native.js.map +1 -1
- package/dist/cjs/config.cjs +128 -77
- package/dist/cjs/config.native.js +150 -108
- package/dist/cjs/config.native.js.map +1 -1
- package/dist/cjs/constants/accessibilityDirectMap.cjs +17 -15
- package/dist/cjs/constants/accessibilityDirectMap.native.js +17 -15
- package/dist/cjs/constants/accessibilityDirectMap.native.js.map +1 -1
- package/dist/cjs/constants/constants.cjs +18 -16
- package/dist/cjs/constants/constants.native.js +18 -16
- package/dist/cjs/constants/constants.native.js.map +1 -1
- package/dist/cjs/constants/isDevTools.cjs +18 -14
- package/dist/cjs/constants/isDevTools.native.js +18 -14
- package/dist/cjs/constants/isDevTools.native.js.map +1 -1
- package/dist/cjs/contexts/ComponentContext.cjs +24 -20
- package/dist/cjs/contexts/ComponentContext.native.js +25 -23
- package/dist/cjs/contexts/ComponentContext.native.js.map +1 -1
- package/dist/cjs/contexts/GroupContext.cjs +12 -10
- package/dist/cjs/contexts/GroupContext.native.js +14 -12
- package/dist/cjs/contexts/GroupContext.native.js.map +1 -1
- package/dist/cjs/createComponent.cjs +1147 -653
- package/dist/cjs/createComponent.native.js +1209 -682
- package/dist/cjs/createComponent.native.js.map +1 -1
- package/dist/cjs/createFont.cjs +33 -27
- package/dist/cjs/createFont.native.js +35 -32
- package/dist/cjs/createFont.native.js.map +1 -1
- package/dist/cjs/createGui.cjs +177 -128
- package/dist/cjs/createGui.native.js +220 -167
- package/dist/cjs/createGui.native.js.map +1 -1
- package/dist/cjs/createShorthands.cjs +12 -10
- package/dist/cjs/createShorthands.native.js +12 -10
- package/dist/cjs/createShorthands.native.js.map +1 -1
- package/dist/cjs/createTokens.cjs +13 -11
- package/dist/cjs/createTokens.native.js +14 -12
- package/dist/cjs/createTokens.native.js.map +1 -1
- package/dist/cjs/createVariable.cjs +58 -32
- package/dist/cjs/createVariable.native.js +68 -43
- package/dist/cjs/createVariable.native.js.map +1 -1
- package/dist/cjs/createVariables.cjs +55 -49
- package/dist/cjs/createVariables.native.js +57 -51
- package/dist/cjs/createVariables.native.js.map +1 -1
- package/dist/cjs/defaultComponentState.cjs +29 -27
- package/dist/cjs/defaultComponentState.native.js +29 -27
- package/dist/cjs/defaultComponentState.native.js.map +1 -1
- package/dist/cjs/eventHandling.cjs +15 -13
- package/dist/cjs/eventHandling.native.js +128 -87
- package/dist/cjs/eventHandling.native.js.map +1 -1
- package/dist/cjs/helpers/consoleLog.native.js +14 -12
- package/dist/cjs/helpers/consoleLog.native.js.map +1 -1
- package/dist/cjs/helpers/createDesignSystem.cjs +93 -76
- package/dist/cjs/helpers/createDesignSystem.native.js +178 -106
- package/dist/cjs/helpers/createDesignSystem.native.js.map +1 -1
- package/dist/cjs/helpers/createMediaStyle.cjs +87 -60
- package/dist/cjs/helpers/createMediaStyle.native.js +93 -67
- package/dist/cjs/helpers/createMediaStyle.native.js.map +1 -1
- package/dist/cjs/helpers/createStyledContext.cjs +80 -61
- package/dist/cjs/helpers/createStyledContext.native.js +89 -73
- package/dist/cjs/helpers/createStyledContext.native.js.map +1 -1
- package/dist/cjs/helpers/defaultAnimationDriver.cjs +29 -26
- package/dist/cjs/helpers/defaultAnimationDriver.native.js +45 -40
- package/dist/cjs/helpers/defaultAnimationDriver.native.js.map +1 -1
- package/dist/cjs/helpers/defaultOffset.cjs +12 -10
- package/dist/cjs/helpers/defaultOffset.native.js +12 -10
- package/dist/cjs/helpers/defaultOffset.native.js.map +1 -1
- package/dist/cjs/helpers/expandStyle.cjs +109 -44
- package/dist/cjs/helpers/expandStyle.native.js +130 -88
- package/dist/cjs/helpers/expandStyle.native.js.map +1 -1
- package/dist/cjs/helpers/expandStyles.cjs +37 -23
- package/dist/cjs/helpers/expandStyles.native.js +36 -24
- package/dist/cjs/helpers/expandStyles.native.js.map +1 -1
- package/dist/cjs/helpers/getCSSStylesAtomic.cjs +108 -70
- package/dist/cjs/helpers/getCSSStylesAtomic.native.js +17 -15
- package/dist/cjs/helpers/getCSSStylesAtomic.native.js.map +1 -1
- package/dist/cjs/helpers/getDefaultProps.cjs +24 -19
- package/dist/cjs/helpers/getDefaultProps.native.js +27 -22
- package/dist/cjs/helpers/getDefaultProps.native.js.map +1 -1
- package/dist/cjs/helpers/getDynamicVal.cjs +32 -27
- package/dist/cjs/helpers/getDynamicVal.native.js +37 -32
- package/dist/cjs/helpers/getDynamicVal.native.js.map +1 -1
- package/dist/cjs/helpers/getExpandedShorthands.cjs +15 -11
- package/dist/cjs/helpers/getExpandedShorthands.native.js +17 -13
- package/dist/cjs/helpers/getExpandedShorthands.native.js.map +1 -1
- package/dist/cjs/helpers/getFontLanguage.cjs +12 -10
- package/dist/cjs/helpers/getFontLanguage.native.js +12 -10
- package/dist/cjs/helpers/getFontLanguage.native.js.map +1 -1
- package/dist/cjs/helpers/getGroupPropParts.cjs +27 -18
- package/dist/cjs/helpers/getGroupPropParts.native.js +28 -19
- package/dist/cjs/helpers/getGroupPropParts.native.js.map +1 -1
- package/dist/cjs/helpers/getShorthandValue.cjs +16 -11
- package/dist/cjs/helpers/getShorthandValue.native.js +19 -17
- package/dist/cjs/helpers/getShorthandValue.native.js.map +1 -1
- package/dist/cjs/helpers/getSplitStyles.cjs +982 -455
- package/dist/cjs/helpers/getSplitStyles.native.js +1139 -572
- package/dist/cjs/helpers/getSplitStyles.native.js.map +1 -1
- package/dist/cjs/helpers/getThemeCSSRules.cjs +103 -89
- package/dist/cjs/helpers/getThemeCSSRules.native.js +12 -10
- package/dist/cjs/helpers/getThemeCSSRules.native.js.map +1 -1
- package/dist/cjs/helpers/getTokenForKey.cjs +114 -45
- package/dist/cjs/helpers/getTokenForKey.native.js +126 -66
- package/dist/cjs/helpers/getTokenForKey.native.js.map +1 -1
- package/dist/cjs/helpers/getVariantExtras.cjs +56 -44
- package/dist/cjs/helpers/getVariantExtras.native.js +56 -44
- package/dist/cjs/helpers/getVariantExtras.native.js.map +1 -1
- package/dist/cjs/helpers/insertStyleRule.cjs +168 -82
- package/dist/cjs/helpers/insertStyleRule.native.js +303 -195
- package/dist/cjs/helpers/insertStyleRule.native.js.map +1 -1
- package/dist/cjs/helpers/isActivePlatform.cjs +33 -14
- package/dist/cjs/helpers/isActivePlatform.native.js +33 -14
- package/dist/cjs/helpers/isActivePlatform.native.js.map +1 -1
- package/dist/cjs/helpers/isActiveTheme.cjs +14 -11
- package/dist/cjs/helpers/isActiveTheme.native.js +14 -11
- package/dist/cjs/helpers/isActiveTheme.native.js.map +1 -1
- package/dist/cjs/helpers/isGuiComponent.cjs +14 -12
- package/dist/cjs/helpers/isGuiComponent.native.js +14 -12
- package/dist/cjs/helpers/isGuiComponent.native.js.map +1 -1
- package/dist/cjs/helpers/isGuiElement.cjs +29 -25
- package/dist/cjs/helpers/isGuiElement.native.js +29 -27
- package/dist/cjs/helpers/isGuiElement.native.js.map +1 -1
- package/dist/cjs/helpers/isObj.cjs +13 -11
- package/dist/cjs/helpers/isObj.native.js +14 -12
- package/dist/cjs/helpers/isObj.native.js.map +1 -1
- package/dist/cjs/helpers/log.cjs +21 -17
- package/dist/cjs/helpers/log.native.js +25 -19
- package/dist/cjs/helpers/log.native.js.map +1 -1
- package/dist/cjs/helpers/mainThreadPressEvents.cjs +13 -11
- package/dist/cjs/helpers/mainThreadPressEvents.native.js +111 -26
- package/dist/cjs/helpers/mainThreadPressEvents.native.js.map +1 -1
- package/dist/cjs/helpers/matchMedia.cjs +15 -13
- package/dist/cjs/helpers/matchMedia.native.js +34 -19
- package/dist/cjs/helpers/matchMedia.native.js.map +1 -1
- package/dist/cjs/helpers/mediaObjectToString.cjs +30 -14
- package/dist/cjs/helpers/mediaObjectToString.native.js +28 -14
- package/dist/cjs/helpers/mediaObjectToString.native.js.map +1 -1
- package/dist/cjs/helpers/mediaState.cjs +21 -17
- package/dist/cjs/helpers/mediaState.native.js +30 -26
- package/dist/cjs/helpers/mediaState.native.js.map +1 -1
- package/dist/cjs/helpers/mergeProps.cjs +54 -30
- package/dist/cjs/helpers/mergeProps.native.js +55 -30
- package/dist/cjs/helpers/mergeProps.native.js.map +1 -1
- package/dist/cjs/helpers/mergeRenderElementProps.cjs +14 -11
- package/dist/cjs/helpers/mergeRenderElementProps.native.js +14 -11
- package/dist/cjs/helpers/mergeRenderElementProps.native.js.map +1 -1
- package/dist/cjs/helpers/mergeSlotStyleProps.cjs +31 -18
- package/dist/cjs/helpers/mergeSlotStyleProps.native.js +32 -19
- package/dist/cjs/helpers/mergeSlotStyleProps.native.js.map +1 -1
- package/dist/cjs/helpers/mergeVariants.cjs +28 -16
- package/dist/cjs/helpers/mergeVariants.native.js +30 -18
- package/dist/cjs/helpers/mergeVariants.native.js.map +1 -1
- package/dist/cjs/helpers/nativeOnlyProps.cjs +12 -10
- package/dist/cjs/helpers/nativeOnlyProps.native.js +12 -10
- package/dist/cjs/helpers/nativeOnlyProps.native.js.map +1 -1
- package/dist/cjs/helpers/normalizeColor.cjs +29 -17
- package/dist/cjs/helpers/normalizeColor.native.js +33 -30
- package/dist/cjs/helpers/normalizeColor.native.js.map +1 -1
- package/dist/cjs/helpers/normalizeShadow.cjs +12 -10
- package/dist/cjs/helpers/normalizeShadow.native.js +25 -23
- package/dist/cjs/helpers/normalizeShadow.native.js.map +1 -1
- package/dist/cjs/helpers/normalizeStyle.cjs +27 -20
- package/dist/cjs/helpers/normalizeStyle.native.js +34 -28
- package/dist/cjs/helpers/normalizeStyle.native.js.map +1 -1
- package/dist/cjs/helpers/normalizeStylePropKeys.cjs +12 -10
- package/dist/cjs/helpers/normalizeStylePropKeys.native.js +22 -20
- package/dist/cjs/helpers/normalizeStylePropKeys.native.js.map +1 -1
- package/dist/cjs/helpers/normalizeValueWithProperty.cjs +33 -17
- package/dist/cjs/helpers/normalizeValueWithProperty.native.js +34 -18
- package/dist/cjs/helpers/normalizeValueWithProperty.native.js.map +1 -1
- package/dist/cjs/helpers/objectIdentityKey.cjs +19 -12
- package/dist/cjs/helpers/objectIdentityKey.native.js +22 -15
- package/dist/cjs/helpers/objectIdentityKey.native.js.map +1 -1
- package/dist/cjs/helpers/parseBorderShorthand.cjs +15 -11
- package/dist/cjs/helpers/parseBorderShorthand.native.js +52 -24
- package/dist/cjs/helpers/parseBorderShorthand.native.js.map +1 -1
- package/dist/cjs/helpers/parseNativeStyle.cjs +81 -47
- package/dist/cjs/helpers/parseNativeStyle.native.js +129 -90
- package/dist/cjs/helpers/parseNativeStyle.native.js.map +1 -1
- package/dist/cjs/helpers/parseOutlineShorthand.cjs +15 -11
- package/dist/cjs/helpers/parseOutlineShorthand.native.js +46 -24
- package/dist/cjs/helpers/parseOutlineShorthand.native.js.map +1 -1
- package/dist/cjs/helpers/platformResolveValue.cjs +16 -11
- package/dist/cjs/helpers/platformResolveValue.native.js +48 -36
- package/dist/cjs/helpers/platformResolveValue.native.js.map +1 -1
- package/dist/cjs/helpers/pointerEvents.cjs +12 -10
- package/dist/cjs/helpers/pointerEvents.native.js +124 -89
- package/dist/cjs/helpers/pointerEvents.native.js.map +1 -1
- package/dist/cjs/helpers/propMapper.cjs +257 -130
- package/dist/cjs/helpers/propMapper.native.js +341 -228
- package/dist/cjs/helpers/propMapper.native.js.map +1 -1
- package/dist/cjs/helpers/proxyThemeToParents.cjs +33 -19
- package/dist/cjs/helpers/proxyThemeToParents.native.js +84 -55
- package/dist/cjs/helpers/proxyThemeToParents.native.js.map +1 -1
- package/dist/cjs/helpers/proxyThemeVariables.cjs +13 -11
- package/dist/cjs/helpers/proxyThemeVariables.native.js +13 -11
- package/dist/cjs/helpers/proxyThemeVariables.native.js.map +1 -1
- package/dist/cjs/helpers/pseudoDescriptors.cjs +60 -58
- package/dist/cjs/helpers/pseudoDescriptors.native.js +60 -58
- package/dist/cjs/helpers/pseudoDescriptors.native.js.map +1 -1
- package/dist/cjs/helpers/pseudoTransitions.cjs +50 -32
- package/dist/cjs/helpers/pseudoTransitions.native.js +52 -36
- package/dist/cjs/helpers/pseudoTransitions.native.js.map +1 -1
- package/dist/cjs/helpers/registerCSSVariable.cjs +55 -38
- package/dist/cjs/helpers/registerCSSVariable.native.js +60 -45
- package/dist/cjs/helpers/registerCSSVariable.native.js.map +1 -1
- package/dist/cjs/helpers/resolveAnimationDriver.cjs +20 -11
- package/dist/cjs/helpers/resolveAnimationDriver.native.js +20 -11
- package/dist/cjs/helpers/resolveAnimationDriver.native.js.map +1 -1
- package/dist/cjs/helpers/resolveCompoundTokens.cjs +21 -17
- package/dist/cjs/helpers/resolveCompoundTokens.native.js +24 -20
- package/dist/cjs/helpers/resolveCompoundTokens.native.js.map +1 -1
- package/dist/cjs/helpers/resolveRem.cjs +13 -11
- package/dist/cjs/helpers/resolveRem.native.js +31 -22
- package/dist/cjs/helpers/resolveRem.native.js.map +1 -1
- package/dist/cjs/helpers/resolveSafeArea.cjs +12 -10
- package/dist/cjs/helpers/resolveSafeArea.native.js +18 -14
- package/dist/cjs/helpers/resolveSafeArea.native.js.map +1 -1
- package/dist/cjs/helpers/setElementProps.cjs +12 -10
- package/dist/cjs/helpers/setElementProps.native.js +19 -13
- package/dist/cjs/helpers/setElementProps.native.js.map +1 -1
- package/dist/cjs/helpers/skipProps.cjs +23 -14
- package/dist/cjs/helpers/skipProps.native.js +39 -30
- package/dist/cjs/helpers/skipProps.native.js.map +1 -1
- package/dist/cjs/helpers/sortString.cjs +12 -10
- package/dist/cjs/helpers/sortString.native.js +12 -10
- package/dist/cjs/helpers/sortString.native.js.map +1 -1
- package/dist/cjs/helpers/subscribeToContextGroup.cjs +83 -55
- package/dist/cjs/helpers/subscribeToContextGroup.native.js +118 -92
- package/dist/cjs/helpers/subscribeToContextGroup.native.js.map +1 -1
- package/dist/cjs/helpers/themeable.cjs +75 -48
- package/dist/cjs/helpers/themeable.native.js +96 -70
- package/dist/cjs/helpers/themeable.native.js.map +1 -1
- package/dist/cjs/helpers/themes.cjs +27 -19
- package/dist/cjs/helpers/themes.native.js +27 -19
- package/dist/cjs/helpers/themes.native.js.map +1 -1
- package/dist/cjs/helpers/timer.cjs +13 -11
- package/dist/cjs/helpers/timer.native.js +13 -11
- package/dist/cjs/helpers/timer.native.js.map +1 -1
- package/dist/cjs/helpers/transformsToString.cjs +18 -13
- package/dist/cjs/helpers/transformsToString.native.js +18 -13
- package/dist/cjs/helpers/transformsToString.native.js.map +1 -1
- package/dist/cjs/helpers/useRenderElement.cjs +41 -25
- package/dist/cjs/helpers/useRenderElement.native.js +42 -26
- package/dist/cjs/helpers/useRenderElement.native.js.map +1 -1
- package/dist/cjs/helpers/webPropsToSkip.cjs +12 -10
- package/dist/cjs/helpers/webPropsToSkip.native.js +60 -58
- package/dist/cjs/helpers/webPropsToSkip.native.js.map +1 -1
- package/dist/cjs/helpers/wrapStyleTags.cjs +29 -24
- package/dist/cjs/helpers/wrapStyleTags.native.js +34 -13
- package/dist/cjs/helpers/wrapStyleTags.native.js.map +1 -1
- package/dist/cjs/hooks/doesRootSchemeMatchSystem.cjs +13 -11
- package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js +14 -12
- package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js.map +1 -1
- package/dist/cjs/hooks/getThemeProxied.cjs +89 -27
- package/dist/cjs/hooks/getThemeProxied.native.js +95 -60
- package/dist/cjs/hooks/getThemeProxied.native.js.map +1 -1
- package/dist/cjs/hooks/useComponentState.cjs +137 -86
- package/dist/cjs/hooks/useComponentState.native.js +141 -97
- package/dist/cjs/hooks/useComponentState.native.js.map +1 -1
- package/dist/cjs/hooks/useDisableSSR.cjs +12 -10
- package/dist/cjs/hooks/useDisableSSR.native.js +13 -11
- package/dist/cjs/hooks/useDisableSSR.native.js.map +1 -1
- package/dist/cjs/hooks/useIsTouchDevice.cjs +17 -13
- package/dist/cjs/hooks/useIsTouchDevice.native.js +17 -15
- package/dist/cjs/hooks/useIsTouchDevice.native.js.map +1 -1
- package/dist/cjs/hooks/useMedia.cjs +151 -93
- package/dist/cjs/hooks/useMedia.native.js +162 -108
- package/dist/cjs/hooks/useMedia.native.js.map +1 -1
- package/dist/cjs/hooks/useProps.cjs +83 -77
- package/dist/cjs/hooks/useProps.native.js +85 -79
- package/dist/cjs/hooks/useProps.native.js.map +1 -1
- package/dist/cjs/hooks/useTheme.cjs +38 -27
- package/dist/cjs/hooks/useTheme.native.js +39 -31
- package/dist/cjs/hooks/useTheme.native.js.map +1 -1
- package/dist/cjs/hooks/useThemeName.cjs +20 -18
- package/dist/cjs/hooks/useThemeName.native.js +24 -22
- package/dist/cjs/hooks/useThemeName.native.js.map +1 -1
- package/dist/cjs/hooks/useThemeState.cjs +297 -177
- package/dist/cjs/hooks/useThemeState.native.js +378 -245
- package/dist/cjs/hooks/useThemeState.native.js.map +1 -1
- package/dist/cjs/index.cjs +20 -18
- package/dist/cjs/index.native.js +20 -18
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/inject-styles.cjs +27 -22
- package/dist/cjs/inject-styles.native.js +28 -23
- package/dist/cjs/inject-styles.native.js.map +1 -1
- package/dist/cjs/insertFont.cjs +49 -31
- package/dist/cjs/insertFont.native.js +54 -33
- package/dist/cjs/insertFont.native.js.map +1 -1
- package/dist/cjs/interfaces/CSSColorNames.cjs +7 -5
- package/dist/cjs/interfaces/CSSColorNames.native.js +7 -5
- package/dist/cjs/interfaces/CSSColorNames.native.js.map +1 -1
- package/dist/cjs/interfaces/GetRef.cjs +7 -5
- package/dist/cjs/interfaces/GetRef.native.js +7 -5
- package/dist/cjs/interfaces/GetRef.native.js.map +1 -1
- package/dist/cjs/interfaces/GuiComponentEvents.cjs +7 -5
- package/dist/cjs/interfaces/GuiComponentEvents.native.js +7 -5
- package/dist/cjs/interfaces/GuiComponentEvents.native.js.map +1 -1
- package/dist/cjs/interfaces/GuiComponentPropsBaseBase.cjs +7 -5
- package/dist/cjs/interfaces/GuiComponentPropsBaseBase.native.js +7 -5
- package/dist/cjs/interfaces/GuiComponentPropsBaseBase.native.js.map +1 -1
- package/dist/cjs/interfaces/RNExclusiveTypes.cjs +7 -5
- package/dist/cjs/interfaces/RNExclusiveTypes.native.js +7 -5
- package/dist/cjs/interfaces/RNExclusiveTypes.native.js.map +1 -1
- package/dist/cjs/setupHooks.cjs +12 -10
- package/dist/cjs/setupHooks.native.js +12 -10
- package/dist/cjs/setupHooks.native.js.map +1 -1
- package/dist/cjs/setupReactNative.cjs +45 -18
- package/dist/cjs/setupReactNative.native.js +44 -19
- package/dist/cjs/setupReactNative.native.js.map +1 -1
- package/dist/cjs/styled.cjs +121 -77
- package/dist/cjs/styled.native.js +125 -87
- package/dist/cjs/styled.native.js.map +1 -1
- package/dist/cjs/styledHtml.test-d.cjs +58 -27
- package/dist/cjs/styledHtml.test-d.native.js +58 -27
- package/dist/cjs/styledHtml.test-d.native.js.map +1 -1
- package/dist/cjs/type-utils.cjs +7 -5
- package/dist/cjs/type-utils.native.js +7 -5
- package/dist/cjs/type-utils.native.js.map +1 -1
- package/dist/cjs/types.cjs +7 -5
- package/dist/cjs/types.native.js +7 -5
- package/dist/cjs/types.native.js.map +1 -1
- package/dist/cjs/views/Configuration.cjs +28 -26
- package/dist/cjs/views/Configuration.native.js +39 -37
- package/dist/cjs/views/Configuration.native.js.map +1 -1
- package/dist/cjs/views/FontLanguage.cjs +22 -18
- package/dist/cjs/views/FontLanguage.native.js +34 -32
- package/dist/cjs/views/FontLanguage.native.js.map +1 -1
- package/dist/cjs/views/GuiProvider.cjs +54 -43
- package/dist/cjs/views/GuiProvider.native.js +68 -58
- package/dist/cjs/views/GuiProvider.native.js.map +1 -1
- package/dist/cjs/views/GuiRoot.cjs +45 -34
- package/dist/cjs/views/GuiRoot.native.js +12 -10
- package/dist/cjs/views/GuiRoot.native.js.map +1 -1
- package/dist/cjs/views/Slot.cjs +55 -37
- package/dist/cjs/views/Slot.native.js +57 -41
- package/dist/cjs/views/Slot.native.js.map +1 -1
- package/dist/cjs/views/Text.cjs +41 -31
- package/dist/cjs/views/Text.native.js +40 -32
- package/dist/cjs/views/Text.native.js.map +1 -1
- package/dist/cjs/views/Theme.cjs +137 -101
- package/dist/cjs/views/Theme.native.js +147 -114
- package/dist/cjs/views/Theme.native.js.map +1 -1
- package/dist/cjs/views/ThemeDebug.cjs +39 -18
- package/dist/cjs/views/ThemeDebug.native.js +13 -11
- package/dist/cjs/views/ThemeDebug.native.js.map +1 -1
- package/dist/cjs/views/ThemeProvider.cjs +29 -24
- package/dist/cjs/views/ThemeProvider.native.js +42 -29
- package/dist/cjs/views/ThemeProvider.native.js.map +1 -1
- package/dist/cjs/views/View.cjs +15 -13
- package/dist/cjs/views/View.native.js +18 -16
- package/dist/cjs/views/View.native.js.map +1 -1
- package/dist/esm/Gui.mjs +29 -27
- package/dist/esm/Gui.mjs.map +1 -1
- package/dist/esm/Gui.native.js +67 -53
- package/dist/esm/Gui.native.js.map +1 -1
- package/dist/esm/_withStableStyle.mjs +22 -14
- package/dist/esm/_withStableStyle.mjs.map +1 -1
- package/dist/esm/_withStableStyle.native.js +26 -23
- package/dist/esm/_withStableStyle.native.js.map +1 -1
- package/dist/esm/animationDriverTypes.test-d.mjs +34 -17
- package/dist/esm/animationDriverTypes.test-d.mjs.map +1 -1
- package/dist/esm/animationDriverTypes.test-d.native.js +34 -17
- package/dist/esm/animationDriverTypes.test-d.native.js.map +1 -1
- package/dist/esm/config.mjs +114 -65
- package/dist/esm/config.mjs.map +1 -1
- package/dist/esm/config.native.js +136 -96
- package/dist/esm/config.native.js.map +1 -1
- package/dist/esm/constants/accessibilityDirectMap.mjs +5 -5
- package/dist/esm/constants/accessibilityDirectMap.mjs.map +1 -1
- package/dist/esm/constants/accessibilityDirectMap.native.js +5 -5
- package/dist/esm/constants/accessibilityDirectMap.native.js.map +1 -1
- package/dist/esm/constants/constants.mjs +6 -6
- package/dist/esm/constants/constants.mjs.map +1 -1
- package/dist/esm/constants/constants.native.js +6 -6
- package/dist/esm/constants/constants.native.js.map +1 -1
- package/dist/esm/constants/isDevTools.mjs +6 -4
- package/dist/esm/constants/isDevTools.mjs.map +1 -1
- package/dist/esm/constants/isDevTools.native.js +6 -4
- package/dist/esm/constants/isDevTools.native.js.map +1 -1
- package/dist/esm/contexts/ComponentContext.mjs +10 -8
- package/dist/esm/contexts/ComponentContext.mjs.map +1 -1
- package/dist/esm/contexts/ComponentContext.native.js +10 -10
- package/dist/esm/contexts/ComponentContext.native.js.map +1 -1
- package/dist/esm/createComponent.mjs +1090 -598
- package/dist/esm/createComponent.mjs.map +1 -1
- package/dist/esm/createComponent.native.js +1156 -630
- package/dist/esm/createComponent.native.js.map +1 -1
- package/dist/esm/createFont.mjs +21 -17
- package/dist/esm/createFont.mjs.map +1 -1
- package/dist/esm/createFont.native.js +23 -22
- package/dist/esm/createFont.native.js.map +1 -1
- package/dist/esm/createGui.mjs +154 -107
- package/dist/esm/createGui.mjs.map +1 -1
- package/dist/esm/createGui.native.js +197 -146
- package/dist/esm/createGui.native.js.map +1 -1
- package/dist/esm/createTokens.mjs +1 -1
- package/dist/esm/createTokens.mjs.map +1 -1
- package/dist/esm/createTokens.native.js +2 -2
- package/dist/esm/createTokens.native.js.map +1 -1
- package/dist/esm/createVariable.mjs +43 -19
- package/dist/esm/createVariable.mjs.map +1 -1
- package/dist/esm/createVariable.native.js +53 -30
- package/dist/esm/createVariable.native.js.map +1 -1
- package/dist/esm/createVariables.mjs +40 -36
- package/dist/esm/createVariables.mjs.map +1 -1
- package/dist/esm/createVariables.native.js +42 -38
- package/dist/esm/createVariables.native.js.map +1 -1
- package/dist/esm/defaultComponentState.mjs +17 -17
- package/dist/esm/defaultComponentState.mjs.map +1 -1
- package/dist/esm/defaultComponentState.native.js +17 -17
- package/dist/esm/defaultComponentState.native.js.map +1 -1
- package/dist/esm/eventHandling.mjs +3 -3
- package/dist/esm/eventHandling.mjs.map +1 -1
- package/dist/esm/eventHandling.native.js +100 -61
- package/dist/esm/eventHandling.native.js.map +1 -1
- package/dist/esm/helpers/consoleLog.native.js +2 -2
- package/dist/esm/helpers/consoleLog.native.js.map +1 -1
- package/dist/esm/helpers/createDesignSystem.mjs +76 -61
- package/dist/esm/helpers/createDesignSystem.mjs.map +1 -1
- package/dist/esm/helpers/createDesignSystem.native.js +163 -92
- package/dist/esm/helpers/createDesignSystem.native.js.map +1 -1
- package/dist/esm/helpers/createMediaStyle.mjs +72 -47
- package/dist/esm/helpers/createMediaStyle.mjs.map +1 -1
- package/dist/esm/helpers/createMediaStyle.native.js +78 -54
- package/dist/esm/helpers/createMediaStyle.native.js.map +1 -1
- package/dist/esm/helpers/createStyledContext.mjs +52 -35
- package/dist/esm/helpers/createStyledContext.mjs.map +1 -1
- package/dist/esm/helpers/createStyledContext.native.js +56 -42
- package/dist/esm/helpers/createStyledContext.native.js.map +1 -1
- package/dist/esm/helpers/defaultAnimationDriver.mjs +17 -16
- package/dist/esm/helpers/defaultAnimationDriver.mjs.map +1 -1
- package/dist/esm/helpers/defaultAnimationDriver.native.js +33 -30
- package/dist/esm/helpers/defaultAnimationDriver.native.js.map +1 -1
- package/dist/esm/helpers/expandStyle.mjs +93 -30
- package/dist/esm/helpers/expandStyle.mjs.map +1 -1
- package/dist/esm/helpers/expandStyle.native.js +110 -69
- package/dist/esm/helpers/expandStyle.native.js.map +1 -1
- package/dist/esm/helpers/expandStyles.mjs +23 -11
- package/dist/esm/helpers/expandStyles.mjs.map +1 -1
- package/dist/esm/helpers/expandStyles.native.js +22 -12
- package/dist/esm/helpers/expandStyles.native.js.map +1 -1
- package/dist/esm/helpers/getCSSStylesAtomic.mjs +88 -52
- package/dist/esm/helpers/getCSSStylesAtomic.mjs.map +1 -1
- package/dist/esm/helpers/getCSSStylesAtomic.native.js +5 -5
- package/dist/esm/helpers/getCSSStylesAtomic.native.js.map +1 -1
- package/dist/esm/helpers/getDefaultProps.mjs +12 -9
- package/dist/esm/helpers/getDefaultProps.mjs.map +1 -1
- package/dist/esm/helpers/getDefaultProps.native.js +14 -11
- package/dist/esm/helpers/getDefaultProps.native.js.map +1 -1
- package/dist/esm/helpers/getDynamicVal.mjs +20 -17
- package/dist/esm/helpers/getDynamicVal.mjs.map +1 -1
- package/dist/esm/helpers/getDynamicVal.native.js +25 -22
- package/dist/esm/helpers/getDynamicVal.native.js.map +1 -1
- package/dist/esm/helpers/getExpandedShorthands.mjs +3 -1
- package/dist/esm/helpers/getExpandedShorthands.mjs.map +1 -1
- package/dist/esm/helpers/getExpandedShorthands.native.js +5 -3
- package/dist/esm/helpers/getExpandedShorthands.native.js.map +1 -1
- package/dist/esm/helpers/getGroupPropParts.mjs +13 -6
- package/dist/esm/helpers/getGroupPropParts.mjs.map +1 -1
- package/dist/esm/helpers/getGroupPropParts.native.js +14 -7
- package/dist/esm/helpers/getGroupPropParts.native.js.map +1 -1
- package/dist/esm/helpers/getShorthandValue.mjs +4 -1
- package/dist/esm/helpers/getShorthandValue.mjs.map +1 -1
- package/dist/esm/helpers/getShorthandValue.native.js +6 -6
- package/dist/esm/helpers/getShorthandValue.native.js.map +1 -1
- package/dist/esm/helpers/getSplitStyles.mjs +938 -413
- package/dist/esm/helpers/getSplitStyles.mjs.map +1 -1
- package/dist/esm/helpers/getSplitStyles.native.js +1097 -531
- package/dist/esm/helpers/getSplitStyles.native.js.map +1 -1
- package/dist/esm/helpers/getThemeCSSRules.mjs +85 -73
- package/dist/esm/helpers/getThemeCSSRules.mjs.map +1 -1
- package/dist/esm/helpers/getTokenForKey.mjs +97 -30
- package/dist/esm/helpers/getTokenForKey.mjs.map +1 -1
- package/dist/esm/helpers/getTokenForKey.native.js +108 -50
- package/dist/esm/helpers/getTokenForKey.native.js.map +1 -1
- package/dist/esm/helpers/getVariantExtras.mjs +42 -32
- package/dist/esm/helpers/getVariantExtras.mjs.map +1 -1
- package/dist/esm/helpers/getVariantExtras.native.js +42 -32
- package/dist/esm/helpers/getVariantExtras.native.js.map +1 -1
- package/dist/esm/helpers/insertStyleRule.mjs +154 -70
- package/dist/esm/helpers/insertStyleRule.mjs.map +1 -1
- package/dist/esm/helpers/insertStyleRule.native.js +289 -183
- package/dist/esm/helpers/insertStyleRule.native.js.map +1 -1
- package/dist/esm/helpers/isActivePlatform.mjs +22 -6
- package/dist/esm/helpers/isActivePlatform.mjs.map +1 -1
- package/dist/esm/helpers/isActivePlatform.native.js +22 -6
- package/dist/esm/helpers/isActivePlatform.native.js.map +1 -1
- package/dist/esm/helpers/isActiveTheme.mjs +2 -1
- package/dist/esm/helpers/isActiveTheme.mjs.map +1 -1
- package/dist/esm/helpers/isActiveTheme.native.js +2 -1
- package/dist/esm/helpers/isActiveTheme.native.js.map +1 -1
- package/dist/esm/helpers/isGuiComponent.mjs +2 -2
- package/dist/esm/helpers/isGuiComponent.mjs.map +1 -1
- package/dist/esm/helpers/isGuiComponent.native.js +2 -2
- package/dist/esm/helpers/isGuiComponent.native.js.map +1 -1
- package/dist/esm/helpers/isGuiElement.mjs +3 -1
- package/dist/esm/helpers/isGuiElement.mjs.map +1 -1
- package/dist/esm/helpers/isGuiElement.native.js.map +1 -1
- package/dist/esm/helpers/isObj.mjs +1 -1
- package/dist/esm/helpers/isObj.mjs.map +1 -1
- package/dist/esm/helpers/isObj.native.js +2 -2
- package/dist/esm/helpers/log.mjs +9 -7
- package/dist/esm/helpers/log.mjs.map +1 -1
- package/dist/esm/helpers/log.native.js +13 -9
- package/dist/esm/helpers/log.native.js.map +1 -1
- package/dist/esm/helpers/mainThreadPressEvents.mjs +1 -1
- package/dist/esm/helpers/mainThreadPressEvents.mjs.map +1 -1
- package/dist/esm/helpers/mainThreadPressEvents.native.js +99 -16
- package/dist/esm/helpers/mainThreadPressEvents.native.js.map +1 -1
- package/dist/esm/helpers/matchMedia.mjs +3 -3
- package/dist/esm/helpers/matchMedia.mjs.map +1 -1
- package/dist/esm/helpers/matchMedia.native.js +22 -9
- package/dist/esm/helpers/matchMedia.native.js.map +1 -1
- package/dist/esm/helpers/mediaObjectToString.mjs +18 -4
- package/dist/esm/helpers/mediaObjectToString.mjs.map +1 -1
- package/dist/esm/helpers/mediaObjectToString.native.js +16 -4
- package/dist/esm/helpers/mediaObjectToString.native.js.map +1 -1
- package/dist/esm/helpers/mediaState.mjs +9 -7
- package/dist/esm/helpers/mediaState.mjs.map +1 -1
- package/dist/esm/helpers/mediaState.native.js +18 -16
- package/dist/esm/helpers/mediaState.native.js.map +1 -1
- package/dist/esm/helpers/mergeProps.mjs +42 -20
- package/dist/esm/helpers/mergeProps.mjs.map +1 -1
- package/dist/esm/helpers/mergeProps.native.js +43 -20
- package/dist/esm/helpers/mergeProps.native.js.map +1 -1
- package/dist/esm/helpers/mergeRenderElementProps.mjs +2 -1
- package/dist/esm/helpers/mergeRenderElementProps.mjs.map +1 -1
- package/dist/esm/helpers/mergeRenderElementProps.native.js +2 -1
- package/dist/esm/helpers/mergeRenderElementProps.native.js.map +1 -1
- package/dist/esm/helpers/mergeSlotStyleProps.mjs +17 -6
- package/dist/esm/helpers/mergeSlotStyleProps.mjs.map +1 -1
- package/dist/esm/helpers/mergeSlotStyleProps.native.js +17 -6
- package/dist/esm/helpers/mergeSlotStyleProps.native.js.map +1 -1
- package/dist/esm/helpers/mergeVariants.mjs +16 -6
- package/dist/esm/helpers/mergeVariants.mjs.map +1 -1
- package/dist/esm/helpers/mergeVariants.native.js +18 -8
- package/dist/esm/helpers/mergeVariants.native.js.map +1 -1
- package/dist/esm/helpers/normalizeColor.mjs +17 -7
- package/dist/esm/helpers/normalizeColor.mjs.map +1 -1
- package/dist/esm/helpers/normalizeColor.native.js +18 -17
- package/dist/esm/helpers/normalizeColor.native.js.map +1 -1
- package/dist/esm/helpers/normalizeShadow.native.js +11 -11
- package/dist/esm/helpers/normalizeShadow.native.js.map +1 -1
- package/dist/esm/helpers/normalizeStyle.mjs +10 -5
- package/dist/esm/helpers/normalizeStyle.mjs.map +1 -1
- package/dist/esm/helpers/normalizeStyle.native.js +17 -13
- package/dist/esm/helpers/normalizeStyle.native.js.map +1 -1
- package/dist/esm/helpers/normalizeStylePropKeys.native.js +10 -10
- package/dist/esm/helpers/normalizeValueWithProperty.mjs +19 -5
- package/dist/esm/helpers/normalizeValueWithProperty.mjs.map +1 -1
- package/dist/esm/helpers/normalizeValueWithProperty.native.js +20 -6
- package/dist/esm/helpers/normalizeValueWithProperty.native.js.map +1 -1
- package/dist/esm/helpers/objectIdentityKey.mjs +7 -2
- package/dist/esm/helpers/objectIdentityKey.mjs.map +1 -1
- package/dist/esm/helpers/objectIdentityKey.native.js +10 -5
- package/dist/esm/helpers/objectIdentityKey.native.js.map +1 -1
- package/dist/esm/helpers/parseBorderShorthand.mjs +3 -1
- package/dist/esm/helpers/parseBorderShorthand.mjs.map +1 -1
- package/dist/esm/helpers/parseBorderShorthand.native.js +40 -14
- package/dist/esm/helpers/parseBorderShorthand.native.js.map +1 -1
- package/dist/esm/helpers/parseNativeStyle.mjs +69 -37
- package/dist/esm/helpers/parseNativeStyle.mjs.map +1 -1
- package/dist/esm/helpers/parseNativeStyle.native.js +117 -80
- package/dist/esm/helpers/parseNativeStyle.native.js.map +1 -1
- package/dist/esm/helpers/parseOutlineShorthand.mjs +3 -1
- package/dist/esm/helpers/parseOutlineShorthand.mjs.map +1 -1
- package/dist/esm/helpers/parseOutlineShorthand.native.js +34 -14
- package/dist/esm/helpers/parseOutlineShorthand.native.js.map +1 -1
- package/dist/esm/helpers/platformResolveValue.mjs +4 -1
- package/dist/esm/helpers/platformResolveValue.mjs.map +1 -1
- package/dist/esm/helpers/platformResolveValue.native.js +34 -24
- package/dist/esm/helpers/platformResolveValue.native.js.map +1 -1
- package/dist/esm/helpers/pointerEvents.native.js +110 -77
- package/dist/esm/helpers/pointerEvents.native.js.map +1 -1
- package/dist/esm/helpers/propMapper.mjs +232 -107
- package/dist/esm/helpers/propMapper.mjs.map +1 -1
- package/dist/esm/helpers/propMapper.native.js +316 -205
- package/dist/esm/helpers/propMapper.native.js.map +1 -1
- package/dist/esm/helpers/proxyThemeToParents.mjs +21 -9
- package/dist/esm/helpers/proxyThemeToParents.mjs.map +1 -1
- package/dist/esm/helpers/proxyThemeToParents.native.js +72 -45
- package/dist/esm/helpers/proxyThemeToParents.native.js.map +1 -1
- package/dist/esm/helpers/proxyThemeVariables.mjs +1 -1
- package/dist/esm/helpers/proxyThemeVariables.mjs.map +1 -1
- package/dist/esm/helpers/proxyThemeVariables.native.js +1 -1
- package/dist/esm/helpers/pseudoDescriptors.mjs +48 -48
- package/dist/esm/helpers/pseudoDescriptors.mjs.map +1 -1
- package/dist/esm/helpers/pseudoDescriptors.native.js +48 -48
- package/dist/esm/helpers/pseudoDescriptors.native.js.map +1 -1
- package/dist/esm/helpers/pseudoTransitions.mjs +38 -22
- package/dist/esm/helpers/pseudoTransitions.mjs.map +1 -1
- package/dist/esm/helpers/pseudoTransitions.native.js +40 -26
- package/dist/esm/helpers/pseudoTransitions.native.js.map +1 -1
- package/dist/esm/helpers/registerCSSVariable.mjs +42 -27
- package/dist/esm/helpers/registerCSSVariable.mjs.map +1 -1
- package/dist/esm/helpers/registerCSSVariable.native.js +46 -33
- package/dist/esm/helpers/registerCSSVariable.native.js.map +1 -1
- package/dist/esm/helpers/resolveAnimationDriver.mjs +8 -1
- package/dist/esm/helpers/resolveAnimationDriver.mjs.map +1 -1
- package/dist/esm/helpers/resolveAnimationDriver.native.js +8 -1
- package/dist/esm/helpers/resolveAnimationDriver.native.js.map +1 -1
- package/dist/esm/helpers/resolveCompoundTokens.mjs +9 -7
- package/dist/esm/helpers/resolveCompoundTokens.mjs.map +1 -1
- package/dist/esm/helpers/resolveCompoundTokens.native.js +9 -7
- package/dist/esm/helpers/resolveCompoundTokens.native.js.map +1 -1
- package/dist/esm/helpers/resolveRem.mjs +1 -1
- package/dist/esm/helpers/resolveRem.mjs.map +1 -1
- package/dist/esm/helpers/resolveRem.native.js +16 -9
- package/dist/esm/helpers/resolveRem.native.js.map +1 -1
- package/dist/esm/helpers/resolveSafeArea.native.js +6 -4
- package/dist/esm/helpers/resolveSafeArea.native.js.map +1 -1
- package/dist/esm/helpers/setElementProps.native.js +7 -3
- package/dist/esm/helpers/setElementProps.native.js.map +1 -1
- package/dist/esm/helpers/skipProps.mjs +9 -2
- package/dist/esm/helpers/skipProps.mjs.map +1 -1
- package/dist/esm/helpers/skipProps.native.js +10 -2
- package/dist/esm/helpers/skipProps.native.js.map +1 -1
- package/dist/esm/helpers/subscribeToContextGroup.mjs +68 -42
- package/dist/esm/helpers/subscribeToContextGroup.mjs.map +1 -1
- package/dist/esm/helpers/subscribeToContextGroup.native.js +103 -79
- package/dist/esm/helpers/subscribeToContextGroup.native.js.map +1 -1
- package/dist/esm/helpers/themeable.mjs +45 -20
- package/dist/esm/helpers/themeable.mjs.map +1 -1
- package/dist/esm/helpers/themeable.native.js +68 -44
- package/dist/esm/helpers/themeable.native.js.map +1 -1
- package/dist/esm/helpers/themes.mjs +15 -9
- package/dist/esm/helpers/themes.mjs.map +1 -1
- package/dist/esm/helpers/themes.native.js +15 -9
- package/dist/esm/helpers/themes.native.js.map +1 -1
- package/dist/esm/helpers/timer.mjs +1 -1
- package/dist/esm/helpers/timer.native.js +1 -1
- package/dist/esm/helpers/transformsToString.mjs +6 -3
- package/dist/esm/helpers/transformsToString.mjs.map +1 -1
- package/dist/esm/helpers/transformsToString.native.js +6 -3
- package/dist/esm/helpers/transformsToString.native.js.map +1 -1
- package/dist/esm/helpers/useRenderElement.mjs +26 -12
- package/dist/esm/helpers/useRenderElement.mjs.map +1 -1
- package/dist/esm/helpers/useRenderElement.native.js +27 -13
- package/dist/esm/helpers/useRenderElement.native.js.map +1 -1
- package/dist/esm/helpers/webPropsToSkip.native.js +46 -46
- package/dist/esm/helpers/webPropsToSkip.native.js.map +1 -1
- package/dist/esm/helpers/wrapStyleTags.mjs +15 -12
- package/dist/esm/helpers/wrapStyleTags.mjs.map +1 -1
- package/dist/esm/helpers/wrapStyleTags.native.js +22 -1
- package/dist/esm/helpers/wrapStyleTags.native.js.map +1 -1
- package/dist/esm/hooks/doesRootSchemeMatchSystem.mjs +1 -1
- package/dist/esm/hooks/getThemeProxied.mjs +72 -12
- package/dist/esm/hooks/getThemeProxied.mjs.map +1 -1
- package/dist/esm/hooks/getThemeProxied.native.js +78 -45
- package/dist/esm/hooks/getThemeProxied.native.js.map +1 -1
- package/dist/esm/hooks/useComponentState.mjs +117 -68
- package/dist/esm/hooks/useComponentState.mjs.map +1 -1
- package/dist/esm/hooks/useComponentState.native.js +121 -79
- package/dist/esm/hooks/useComponentState.native.js.map +1 -1
- package/dist/esm/hooks/useDisableSSR.native.js +1 -1
- package/dist/esm/hooks/useDisableSSR.native.js.map +1 -1
- package/dist/esm/hooks/useIsTouchDevice.mjs +3 -1
- package/dist/esm/hooks/useIsTouchDevice.mjs.map +1 -1
- package/dist/esm/hooks/useIsTouchDevice.native.js +1 -1
- package/dist/esm/hooks/useIsTouchDevice.native.js.map +1 -1
- package/dist/esm/hooks/useMedia.mjs +131 -75
- package/dist/esm/hooks/useMedia.mjs.map +1 -1
- package/dist/esm/hooks/useMedia.native.js +142 -90
- package/dist/esm/hooks/useMedia.native.js.map +1 -1
- package/dist/esm/hooks/useProps.mjs +47 -43
- package/dist/esm/hooks/useProps.mjs.map +1 -1
- package/dist/esm/hooks/useProps.native.js +49 -45
- package/dist/esm/hooks/useProps.native.js.map +1 -1
- package/dist/esm/hooks/useTheme.mjs +23 -14
- package/dist/esm/hooks/useTheme.mjs.map +1 -1
- package/dist/esm/hooks/useTheme.native.js +24 -18
- package/dist/esm/hooks/useTheme.native.js.map +1 -1
- package/dist/esm/hooks/useThemeName.mjs +8 -8
- package/dist/esm/hooks/useThemeName.mjs.map +1 -1
- package/dist/esm/hooks/useThemeName.native.js +10 -10
- package/dist/esm/hooks/useThemeName.native.js.map +1 -1
- package/dist/esm/hooks/useThemeState.mjs +280 -162
- package/dist/esm/hooks/useThemeState.mjs.map +1 -1
- package/dist/esm/hooks/useThemeState.native.js +361 -230
- package/dist/esm/hooks/useThemeState.native.js.map +1 -1
- package/dist/esm/inject-styles.mjs +15 -12
- package/dist/esm/inject-styles.mjs.map +1 -1
- package/dist/esm/inject-styles.native.js +16 -13
- package/dist/esm/inject-styles.native.js.map +1 -1
- package/dist/esm/insertFont.mjs +32 -16
- package/dist/esm/insertFont.mjs.map +1 -1
- package/dist/esm/insertFont.native.js +38 -18
- package/dist/esm/insertFont.native.js.map +1 -1
- package/dist/esm/setupReactNative.mjs +33 -8
- package/dist/esm/setupReactNative.mjs.map +1 -1
- package/dist/esm/setupReactNative.native.js +32 -9
- package/dist/esm/setupReactNative.native.js.map +1 -1
- package/dist/esm/styled.mjs +106 -64
- package/dist/esm/styled.mjs.map +1 -1
- package/dist/esm/styled.native.js +109 -73
- package/dist/esm/styled.native.js.map +1 -1
- package/dist/esm/styledHtml.test-d.mjs +56 -25
- package/dist/esm/styledHtml.test-d.mjs.map +1 -1
- package/dist/esm/styledHtml.test-d.native.js +56 -25
- package/dist/esm/styledHtml.test-d.native.js.map +1 -1
- package/dist/esm/views/Configuration.native.js +2 -2
- package/dist/esm/views/Configuration.native.js.map +1 -1
- package/dist/esm/views/FontLanguage.mjs +10 -8
- package/dist/esm/views/FontLanguage.mjs.map +1 -1
- package/dist/esm/views/FontLanguage.native.js +7 -7
- package/dist/esm/views/FontLanguage.native.js.map +1 -1
- package/dist/esm/views/GuiProvider.mjs +19 -10
- package/dist/esm/views/GuiProvider.mjs.map +1 -1
- package/dist/esm/views/GuiProvider.native.js +33 -24
- package/dist/esm/views/GuiProvider.native.js.map +1 -1
- package/dist/esm/views/GuiRoot.mjs +17 -8
- package/dist/esm/views/GuiRoot.mjs.map +1 -1
- package/dist/esm/views/Slot.mjs +38 -22
- package/dist/esm/views/Slot.mjs.map +1 -1
- package/dist/esm/views/Slot.native.js +40 -26
- package/dist/esm/views/Slot.native.js.map +1 -1
- package/dist/esm/views/Text.mjs +27 -19
- package/dist/esm/views/Text.mjs.map +1 -1
- package/dist/esm/views/Text.native.js +26 -20
- package/dist/esm/views/Text.native.js.map +1 -1
- package/dist/esm/views/Theme.mjs +106 -72
- package/dist/esm/views/Theme.mjs.map +1 -1
- package/dist/esm/views/Theme.native.js +112 -81
- package/dist/esm/views/Theme.native.js.map +1 -1
- package/dist/esm/views/ThemeDebug.mjs +22 -3
- package/dist/esm/views/ThemeDebug.mjs.map +1 -1
- package/dist/esm/views/ThemeDebug.native.js +1 -1
- package/dist/esm/views/ThemeDebug.native.js.map +1 -1
- package/dist/esm/views/ThemeProvider.mjs +11 -8
- package/dist/esm/views/ThemeProvider.mjs.map +1 -1
- package/dist/esm/views/ThemeProvider.native.js +15 -2
- package/dist/esm/views/ThemeProvider.native.js.map +1 -1
- package/dist/esm/views/View.mjs +1 -1
- package/dist/esm/views/View.native.js +1 -1
- package/package.json +13 -13
- package/src/_withStableStyle.tsx +32 -25
- package/src/config.ts +1 -1
- package/src/constants/constants.ts +2 -2
- package/src/createComponent.tsx +69 -30
- package/src/createGui.ts +20 -12
- package/src/createTokens.ts +1 -1
- package/src/createVariable.ts +1 -1
- package/src/eventHandling.native.ts +33 -11
- package/src/eventHandling.ts +4 -2
- package/src/helpers/createDesignSystem.ts +5 -5
- package/src/helpers/defaultAnimationDriver.tsx +1 -0
- package/src/helpers/expandStyle.ts +2 -2
- package/src/helpers/expandStyles.ts +1 -1
- package/src/helpers/getSplitStyles.tsx +131 -30
- package/src/helpers/getThemeCSSRules.ts +6 -6
- package/src/helpers/getTokenForKey.ts +6 -6
- package/src/helpers/insertStyleRule.tsx +12 -12
- package/src/helpers/isActivePlatform.ts +33 -4
- package/src/helpers/log.ts +1 -1
- package/src/helpers/mainThreadPressEvents.native.ts +122 -26
- package/src/helpers/mainThreadPressEvents.ts +2 -1
- package/src/helpers/parseNativeStyle.ts +1 -1
- package/src/helpers/propMapper.ts +4 -4
- package/src/helpers/registerCSSVariable.ts +3 -3
- package/src/helpers/skipProps.ts +3 -3
- package/src/helpers/useRenderElement.tsx +1 -4
- package/src/helpers/wrapStyleTags.tsx +1 -1
- package/src/hooks/getThemeProxied.ts +1 -1
- package/src/hooks/useTheme.tsx +2 -2
- package/src/hooks/useThemeState.ts +3 -2
- package/src/insertFont.ts +2 -2
- package/src/interfaces/GuiComponentPropsBaseBase.tsx +1 -1
- package/src/setupReactNative.ts +1 -1
- package/src/styled.tsx +1 -1
- package/src/types.tsx +33 -25
- package/src/views/GuiProvider.tsx +1 -1
- package/src/views/Text.tsx +4 -3
- package/src/views/ThemeProvider.tsx +1 -1
- package/types/_withStableStyle.d.ts +1 -2
- package/types/eventHandling.d.ts +2 -2
- package/types/eventHandling.native.d.ts +3 -3
- package/types/helpers/isActivePlatform.d.ts +14 -0
- package/types/helpers/mainThreadPressEvents.d.ts +1 -1
- package/types/helpers/mainThreadPressEvents.native.d.ts +5 -6
- package/types/helpers/parseNativeStyle.d.ts +1 -1
- package/types/helpers/skipProps.d.ts +1 -1
- package/types/interfaces/GuiComponentPropsBaseBase.d.ts +1 -1
- package/types/styled.d.ts +1 -1
- package/types/types.d.ts +24 -17
|
@@ -3,7 +3,7 @@ import { StyleObjectIdentifier, StyleObjectProperty, StyleObjectPseudo, StyleObj
|
|
|
3
3
|
import React from "react";
|
|
4
4
|
import { getConfig } from "../config.mjs";
|
|
5
5
|
import { isDevTools } from "../constants/isDevTools.mjs";
|
|
6
|
-
import { getMediaImportanceIfMoreImportant, getMediaKey, mediaKeyMatch } from "../hooks/useMedia.mjs";
|
|
6
|
+
import { getMediaImportanceIfMoreImportant, getMediaKey, getMediaKeyImportance, mediaKeyMatch } from "../hooks/useMedia.mjs";
|
|
7
7
|
import { mediaState as globalMediaState, mediaQueryConfig } from "./mediaState.mjs";
|
|
8
8
|
import { createMediaStyle } from "./createMediaStyle.mjs";
|
|
9
9
|
import { fixStyles } from "./expandStyles.mjs";
|
|
@@ -11,66 +11,74 @@ import { getCSSStylesAtomic, getStyleAtomic, styleToCSS } from "./getCSSStylesAt
|
|
|
11
11
|
import { getDefaultProps } from "./getDefaultProps.mjs";
|
|
12
12
|
import { getGroupPropParts } from "./getGroupPropParts.mjs";
|
|
13
13
|
import { insertStyleRules, shouldInsertStyleRules, updateRules } from "./insertStyleRule.mjs";
|
|
14
|
-
import { isActivePlatform } from "./isActivePlatform.mjs";
|
|
14
|
+
import { isActivePlatform, getPlatformSpecificityBump } from "./isActivePlatform.mjs";
|
|
15
15
|
import { isActiveTheme } from "./isActiveTheme.mjs";
|
|
16
16
|
import { log } from "./log.mjs";
|
|
17
17
|
import { normalizeValueWithProperty } from "./normalizeValueWithProperty.mjs";
|
|
18
18
|
import { propMapper } from "./propMapper.mjs";
|
|
19
|
-
import { pseudoDescriptors, pseudoPriorities } from "./pseudoDescriptors.mjs";
|
|
19
|
+
import { pseudoDescriptors, pseudoPriorities, defaultMediaImportance } from "./pseudoDescriptors.mjs";
|
|
20
20
|
import { skipProps } from "./skipProps.mjs";
|
|
21
21
|
import { sortString } from "./sortString.mjs";
|
|
22
22
|
import { transformsToString } from "./transformsToString.mjs";
|
|
23
23
|
let conf;
|
|
24
|
-
const styleOriginalValues = /* @__PURE__ */new WeakMap()
|
|
25
|
-
|
|
24
|
+
const styleOriginalValues = /* @__PURE__ */new WeakMap();
|
|
25
|
+
const PROP_SPLIT = "-";
|
|
26
26
|
function normalizeGroupKey(key, groupContext) {
|
|
27
|
-
const parts = key.split("-")
|
|
28
|
-
|
|
27
|
+
const parts = key.split("-");
|
|
28
|
+
const plen = parts.length;
|
|
29
29
|
if (
|
|
30
30
|
// check if its actually a simple group selector to avoid breaking selectors
|
|
31
31
|
plen === 2 || plen === 3 && pseudoPriorities[parts[parts.length - 1]]) {
|
|
32
32
|
const name = parts[1];
|
|
33
|
-
if (name !== "true" && groupContext && !groupContext[name])
|
|
33
|
+
if (name !== "true" && groupContext && !groupContext[name]) {
|
|
34
|
+
return key.replace("$group-", "$group-true-");
|
|
35
|
+
}
|
|
34
36
|
}
|
|
35
37
|
return key;
|
|
36
38
|
}
|
|
37
39
|
function isValidStyleKey(key, validStyles, accept) {
|
|
38
|
-
return key in validStyles ?
|
|
40
|
+
return key in validStyles ? true : accept && key in accept;
|
|
39
41
|
}
|
|
40
42
|
const getSplitStyles = (props, staticConfig, theme, themeName, componentState, styleProps, parentSplitStyles, componentContext, groupContext, elementType, startedUnhydrated, debug, animationDriver) => {
|
|
41
43
|
conf = conf || getConfig();
|
|
42
44
|
const driver = animationDriver || componentContext?.animationDriver || conf.animations;
|
|
43
|
-
if (props.passThrough)
|
|
44
|
-
|
|
45
|
+
if (props.passThrough) {
|
|
46
|
+
return null;
|
|
47
|
+
}
|
|
48
|
+
if (isWeb && styleProps.isAnimated && driver?.isReactNative && !styleProps.noNormalize) {
|
|
49
|
+
styleProps.noNormalize = "values";
|
|
50
|
+
}
|
|
45
51
|
const {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
let space = props.space
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
52
|
+
shorthands
|
|
53
|
+
} = conf;
|
|
54
|
+
const {
|
|
55
|
+
isHOC,
|
|
56
|
+
isText,
|
|
57
|
+
isInput,
|
|
58
|
+
variants,
|
|
59
|
+
isReactNative,
|
|
60
|
+
inlineProps,
|
|
61
|
+
inlineWhenUnflattened,
|
|
62
|
+
parentStaticConfig,
|
|
63
|
+
acceptsClassName
|
|
64
|
+
} = staticConfig;
|
|
65
|
+
const viewProps = {};
|
|
66
|
+
const mediaState = styleProps.mediaState || globalMediaState;
|
|
67
|
+
const shouldDoClasses = acceptsClassName && isWeb && !styleProps.noClass;
|
|
68
|
+
const rulesToInsert = false ? void 0 : {};
|
|
69
|
+
const classNames = {};
|
|
70
|
+
let space = props.space;
|
|
71
|
+
let pseudos = null;
|
|
72
|
+
let hasMedia = false;
|
|
73
|
+
let dynamicThemeAccess;
|
|
74
|
+
let pseudoGroups;
|
|
75
|
+
let mediaGroups;
|
|
76
|
+
let className = props.className || "";
|
|
77
|
+
let mediaStylesSeen = 0;
|
|
72
78
|
const validStyles = staticConfig.validStyles || (staticConfig.isText || staticConfig.isInput ? stylePropsText : validStylesView);
|
|
73
|
-
process.env.NODE_ENV === "development" && (debug === "profile" || globalThis.time)
|
|
79
|
+
if (process.env.NODE_ENV === "development" && (debug === "profile" || globalThis.time)) {
|
|
80
|
+
time`split-styles-setup`;
|
|
81
|
+
}
|
|
74
82
|
const styleState = {
|
|
75
83
|
classNames,
|
|
76
84
|
conf,
|
|
@@ -91,189 +99,340 @@ const getSplitStyles = (props, staticConfig, theme, themeName, componentState, s
|
|
|
91
99
|
const {
|
|
92
100
|
fallbackProps
|
|
93
101
|
} = styleProps;
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
102
|
+
if (fallbackProps) {
|
|
103
|
+
styleState.props = new Proxy(props, {
|
|
104
|
+
get(_, key, val) {
|
|
105
|
+
if (!Reflect.has(props, key)) {
|
|
106
|
+
return Reflect.get(fallbackProps, key);
|
|
107
|
+
}
|
|
108
|
+
return Reflect.get(props, key);
|
|
109
|
+
}
|
|
110
|
+
});
|
|
111
|
+
}
|
|
99
112
|
}
|
|
100
|
-
process.env.NODE_ENV === "development" && (debug === "profile" || globalThis.time)
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
113
|
+
if (process.env.NODE_ENV === "development" && (debug === "profile" || globalThis.time)) {
|
|
114
|
+
time`style-state`;
|
|
115
|
+
}
|
|
116
|
+
if (process.env.NODE_ENV === "development" && debug === "verbose" && isClient) {
|
|
117
|
+
if (isDevTools) {
|
|
118
|
+
console.groupCollapsed("\u{1F539} getSplitStyles \u{1F447}");
|
|
119
|
+
log({
|
|
120
|
+
props,
|
|
121
|
+
staticConfig,
|
|
122
|
+
shouldDoClasses,
|
|
123
|
+
styleProps,
|
|
124
|
+
rulesToInsert,
|
|
125
|
+
componentState,
|
|
126
|
+
styleState,
|
|
127
|
+
theme: {
|
|
128
|
+
...theme
|
|
129
|
+
}
|
|
130
|
+
});
|
|
110
131
|
}
|
|
111
|
-
}
|
|
132
|
+
}
|
|
133
|
+
const {
|
|
134
|
+
asChild
|
|
135
|
+
} = props;
|
|
136
|
+
const {
|
|
137
|
+
accept
|
|
138
|
+
} = staticConfig;
|
|
112
139
|
const {
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
styledContext
|
|
123
|
-
} = styleProps,
|
|
124
|
-
{
|
|
125
|
-
webContainerType
|
|
126
|
-
} = conf.settings,
|
|
127
|
-
parentVariants = parentStaticConfig?.variants;
|
|
140
|
+
noSkip,
|
|
141
|
+
disableExpandShorthands,
|
|
142
|
+
noExpand,
|
|
143
|
+
styledContext
|
|
144
|
+
} = styleProps;
|
|
145
|
+
const {
|
|
146
|
+
webContainerType
|
|
147
|
+
} = conf.settings;
|
|
148
|
+
const parentVariants = parentStaticConfig?.variants;
|
|
128
149
|
for (const keyOg in props) {
|
|
129
|
-
let keyInit = keyOg
|
|
130
|
-
|
|
150
|
+
let keyInit = keyOg;
|
|
151
|
+
let valInit = props[keyInit];
|
|
131
152
|
if (keyInit === "children") {
|
|
132
153
|
viewProps[keyInit] = valInit;
|
|
133
154
|
continue;
|
|
134
155
|
}
|
|
135
|
-
if (process.env.NODE_ENV === "development" && (debug === "profile" || globalThis.time)
|
|
156
|
+
if (process.env.NODE_ENV === "development" && (debug === "profile" || globalThis.time)) {
|
|
157
|
+
time`before-prop-${keyInit}`;
|
|
158
|
+
}
|
|
159
|
+
if (process.env.NODE_ENV === "test" && keyInit === "jestAnimatedStyle") {
|
|
160
|
+
continue;
|
|
161
|
+
}
|
|
136
162
|
if (accept) {
|
|
137
163
|
const accepted = accept[keyInit];
|
|
138
|
-
if ((accepted === "style" || accepted === "textStyle") && valInit && typeof valInit
|
|
164
|
+
if ((accepted === "style" || accepted === "textStyle") && valInit && typeof valInit === "object") {
|
|
139
165
|
viewProps[keyInit] = getSubStyle(styleState, keyInit, valInit, styleProps.noClass);
|
|
140
166
|
continue;
|
|
141
167
|
}
|
|
142
168
|
}
|
|
143
|
-
if (disableExpandShorthands
|
|
169
|
+
if (!disableExpandShorthands) {
|
|
170
|
+
if (keyInit in shorthands) {
|
|
171
|
+
keyInit = shorthands[keyInit];
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
if (keyInit === "className") continue;
|
|
144
175
|
if (asChild) {
|
|
145
176
|
const defaults = getDefaultProps(staticConfig);
|
|
146
177
|
if (defaults) {
|
|
147
178
|
const defaultVal = defaults[keyOg] ?? defaults[keyInit];
|
|
148
|
-
if (defaultVal !== void 0 && valInit === defaultVal)
|
|
179
|
+
if (defaultVal !== void 0 && valInit === defaultVal) {
|
|
180
|
+
continue;
|
|
181
|
+
}
|
|
149
182
|
}
|
|
150
183
|
}
|
|
151
184
|
if (keyInit in skipProps && !noSkip && !isHOC) {
|
|
152
185
|
if (keyInit === "group") {
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
186
|
+
if (true) {
|
|
187
|
+
const identifier = `t_group_${valInit}`;
|
|
188
|
+
const containerType = webContainerType || "inline-size";
|
|
189
|
+
const containerCSS = ["container", void 0, identifier, void 0, [`.${identifier} { container-name: ${valInit}; container-type: ${containerType}; }`]];
|
|
190
|
+
addStyleToInsertRules(rulesToInsert, containerCSS);
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
if (keyInit === "transition" && typeof valInit === "string" && !driver?.animations?.[valInit]) {} else {
|
|
194
|
+
continue;
|
|
156
195
|
}
|
|
157
|
-
continue;
|
|
158
196
|
}
|
|
159
197
|
let isValidStyleKeyInit = isValidStyleKey(keyInit, validStyles, accept);
|
|
160
|
-
if (
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
if (keyInit === "disabled" && valInit === !0 && (viewProps["aria-disabled"] = !0, (elementType === "button" || elementType === "form" || elementType === "input" || elementType === "select" || elementType === "textarea") && (viewProps.disabled = !0), !variants?.disabled)) continue;
|
|
166
|
-
if (keyInit === "testID") {
|
|
167
|
-
isReactNative ? viewProps.testID = valInit : (viewProps["data-testid"] = valInit, styleProps.isAnimated && driver?.isReactNative && (viewProps.testID = valInit));
|
|
198
|
+
if (true) {
|
|
199
|
+
if (staticConfig.isReactNative && keyInit.startsWith("data-")) {
|
|
200
|
+
keyInit = keyInit.replace("data-", "");
|
|
201
|
+
viewProps["dataSet"] ||= {};
|
|
202
|
+
viewProps["dataSet"][keyInit] = valInit;
|
|
168
203
|
continue;
|
|
169
204
|
}
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
205
|
+
}
|
|
206
|
+
if (false) {
|
|
207
|
+
if (!isValidStyleKeyInit) {
|
|
208
|
+
if (!isAndroid) {
|
|
209
|
+
if (keyInit === "elevationAndroid") continue;
|
|
210
|
+
}
|
|
211
|
+
if (keyInit === "userSelect") {
|
|
212
|
+
keyInit = "selectable";
|
|
213
|
+
valInit = valInit !== "none";
|
|
214
|
+
} else if (keyInit.startsWith("data-")) {
|
|
215
|
+
continue;
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
if (true) {
|
|
220
|
+
if (!noExpand) {
|
|
221
|
+
if (keyInit === "disabled" && valInit === true) {
|
|
222
|
+
viewProps["aria-disabled"] = true;
|
|
223
|
+
if (elementType === "button" || elementType === "form" || elementType === "input" || elementType === "select" || elementType === "textarea") {
|
|
224
|
+
viewProps.disabled = true;
|
|
225
|
+
}
|
|
226
|
+
if (!variants?.disabled) {
|
|
227
|
+
continue;
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
if (keyInit === "testID") {
|
|
231
|
+
if (isReactNative) {
|
|
232
|
+
viewProps.testID = valInit;
|
|
233
|
+
} else {
|
|
234
|
+
viewProps["data-testid"] = valInit;
|
|
235
|
+
if (styleProps.isAnimated && driver?.isReactNative) {
|
|
236
|
+
viewProps.testID = valInit;
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
continue;
|
|
240
|
+
}
|
|
241
|
+
if (keyInit === "id") {
|
|
242
|
+
viewProps.id = valInit;
|
|
243
|
+
continue;
|
|
244
|
+
}
|
|
173
245
|
}
|
|
174
246
|
}
|
|
175
247
|
let isVariant = !isValidStyleKeyInit && variants && keyInit in variants;
|
|
176
248
|
const isStyleLikeKey = isValidStyleKeyInit || isVariant;
|
|
177
|
-
let isPseudo = keyInit in validPseudoKeys
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
isMediaOrPseudo && isMedia === "group"
|
|
249
|
+
let isPseudo = keyInit in validPseudoKeys;
|
|
250
|
+
let isMedia = !isStyleLikeKey && !isPseudo ? getMediaKey(keyInit) : false;
|
|
251
|
+
let isMediaOrPseudo = Boolean(isMedia || isPseudo);
|
|
252
|
+
if (isMediaOrPseudo && isMedia === "group") {
|
|
253
|
+
keyInit = normalizeGroupKey(keyInit, groupContext);
|
|
254
|
+
}
|
|
181
255
|
const isStyleProp = isValidStyleKeyInit || isMediaOrPseudo || isVariant && !noExpand;
|
|
182
|
-
if (isStyleProp && (asChild === "except-style" || asChild === "except-style-web"))
|
|
183
|
-
const shouldPassProp = !isStyleProp && isHOC ||
|
|
184
|
-
// is in parent variants
|
|
185
|
-
isHOC && parentVariants && keyInit in parentVariants || inlineProps?.has(keyInit),
|
|
186
|
-
parentVariant = parentVariants?.[keyInit],
|
|
187
|
-
isHOCShouldPassThrough = !!(isHOC && (isValidStyleKeyInit || isMediaOrPseudo || parentVariant || keyInit in skipProps)),
|
|
188
|
-
shouldPassThrough = shouldPassProp || isHOCShouldPassThrough;
|
|
189
|
-
if (process.env.NODE_ENV === "development" && debug === "verbose" && (console.groupCollapsed(` \u{1F511} ${keyOg}${keyInit !== keyOg ? ` (shorthand for ${keyInit})` : ""} ${shouldPassThrough ? "(pass)" : ""}`), log({
|
|
190
|
-
isVariant,
|
|
191
|
-
valInit,
|
|
192
|
-
shouldPassProp
|
|
193
|
-
}), isClient && log({
|
|
194
|
-
variants,
|
|
195
|
-
variant: variants?.[keyInit],
|
|
196
|
-
isVariant,
|
|
197
|
-
isHOCShouldPassThrough,
|
|
198
|
-
usedKeys: {
|
|
199
|
-
...styleState.usedKeys
|
|
200
|
-
},
|
|
201
|
-
parentStaticConfig
|
|
202
|
-
})), shouldPassThrough && (passDownProp(viewProps, keyInit, valInit, isMediaOrPseudo), process.env.NODE_ENV === "development" && debug === "verbose" && console.groupEnd(), !isVariant)) continue;
|
|
203
|
-
if (!noSkip && keyInit in skipProps) {
|
|
204
|
-
process.env.NODE_ENV === "development" && debug === "verbose" && console.groupEnd();
|
|
256
|
+
if (isStyleProp && (asChild === "except-style" || asChild === "except-style-web")) {
|
|
205
257
|
continue;
|
|
206
258
|
}
|
|
207
|
-
|
|
259
|
+
const shouldPassProp = !isStyleProp && isHOC ||
|
|
260
|
+
// is in parent variants
|
|
261
|
+
isHOC && parentVariants && keyInit in parentVariants || inlineProps?.has(keyInit);
|
|
262
|
+
const parentVariant = parentVariants?.[keyInit];
|
|
263
|
+
const isHOCShouldPassThrough = Boolean(isHOC && (isValidStyleKeyInit || isMediaOrPseudo || parentVariant || keyInit in skipProps));
|
|
264
|
+
const shouldPassThrough = shouldPassProp || isHOCShouldPassThrough;
|
|
265
|
+
if (process.env.NODE_ENV === "development" && debug === "verbose") {
|
|
266
|
+
console.groupCollapsed(` \u{1F511} ${keyOg}${keyInit !== keyOg ? ` (shorthand for ${keyInit})` : ""} ${shouldPassThrough ? "(pass)" : ""}`);
|
|
267
|
+
log({
|
|
268
|
+
isVariant,
|
|
269
|
+
valInit,
|
|
270
|
+
shouldPassProp
|
|
271
|
+
});
|
|
272
|
+
if (isClient) {
|
|
273
|
+
log({
|
|
274
|
+
variants,
|
|
275
|
+
variant: variants?.[keyInit],
|
|
276
|
+
isVariant,
|
|
277
|
+
isHOCShouldPassThrough,
|
|
278
|
+
usedKeys: {
|
|
279
|
+
...styleState.usedKeys
|
|
280
|
+
},
|
|
281
|
+
parentStaticConfig
|
|
282
|
+
});
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
if (shouldPassThrough) {
|
|
286
|
+
passDownProp(viewProps, keyInit, valInit, isMediaOrPseudo);
|
|
287
|
+
if (process.env.NODE_ENV === "development" && debug === "verbose") {
|
|
288
|
+
console.groupEnd();
|
|
289
|
+
}
|
|
290
|
+
if (!isVariant) {
|
|
291
|
+
continue;
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
if (!noSkip) {
|
|
295
|
+
if (keyInit in skipProps && !(keyInit === "transition" && typeof valInit === "string" && !driver?.animations?.[valInit])) {
|
|
296
|
+
if (process.env.NODE_ENV === "development" && debug === "verbose") {
|
|
297
|
+
console.groupEnd();
|
|
298
|
+
}
|
|
299
|
+
continue;
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
if (isText || isInput) {
|
|
303
|
+
if (valInit && (keyInit === "fontFamily" || keyInit === shorthands["fontFamily"]) && valInit in conf.fontsParsed) {
|
|
304
|
+
styleState.fontFamily = valInit;
|
|
305
|
+
}
|
|
306
|
+
}
|
|
208
307
|
const disablePropMap = isMediaOrPseudo || !isStyleLikeKey;
|
|
209
|
-
|
|
308
|
+
propMapper(keyInit, valInit, styleState, disablePropMap, (key, val, originalVal) => {
|
|
210
309
|
const isStyledContextProp = styledContext && key in styledContext;
|
|
211
310
|
if (!isHOC && disablePropMap && !isStyledContextProp && !isMediaOrPseudo) {
|
|
212
311
|
viewProps[key] = val;
|
|
213
312
|
return;
|
|
214
313
|
}
|
|
215
|
-
if (process.env.NODE_ENV === "development" && debug === "verbose"
|
|
216
|
-
|
|
217
|
-
|
|
314
|
+
if (process.env.NODE_ENV === "development" && debug === "verbose") {
|
|
315
|
+
console.groupCollapsed(" \u{1F4A0} expanded", keyInit, "=>", key);
|
|
316
|
+
log(val);
|
|
317
|
+
console.groupEnd();
|
|
318
|
+
}
|
|
319
|
+
if (val == null) return;
|
|
320
|
+
if (false) {
|
|
321
|
+
if (key === "pointerEvents") {
|
|
322
|
+
viewProps[key] = val;
|
|
323
|
+
return;
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
if (!isHOC && isValidStyleKey(key, validStyles, accept) || false) {
|
|
327
|
+
mergeStyle(styleState, key, val, 1, false, originalVal);
|
|
218
328
|
return;
|
|
219
329
|
}
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
330
|
+
isPseudo = key in validPseudoKeys;
|
|
331
|
+
isMedia = isPseudo ? false : getMediaKey(key);
|
|
332
|
+
isMediaOrPseudo = Boolean(isMedia || isPseudo);
|
|
333
|
+
isVariant = variants && key in variants;
|
|
334
|
+
if (isMedia === "group") {
|
|
335
|
+
key = normalizeGroupKey(key, groupContext);
|
|
336
|
+
}
|
|
337
|
+
if (inlineProps?.has(key) || process.env.IS_STATIC === "is_static" && inlineWhenUnflattened?.has(key)) {
|
|
338
|
+
viewProps[key] = props[key] ?? val;
|
|
339
|
+
}
|
|
340
|
+
const shouldPassThrough2 = styleProps.noExpand && isPseudo || isHOC && (isMediaOrPseudo || parentStaticConfig?.variants?.[keyInit]);
|
|
341
|
+
if (shouldPassThrough2) {
|
|
342
|
+
passDownProp(viewProps, key, val, isMediaOrPseudo);
|
|
343
|
+
if (process.env.NODE_ENV === "development" && debug === "verbose") {
|
|
344
|
+
console.groupCollapsed(` - passing down prop ${key}`);
|
|
345
|
+
log({
|
|
346
|
+
val,
|
|
347
|
+
after: {
|
|
348
|
+
...viewProps[key]
|
|
349
|
+
}
|
|
350
|
+
});
|
|
351
|
+
console.groupEnd();
|
|
352
|
+
}
|
|
227
353
|
return;
|
|
228
354
|
}
|
|
229
355
|
if (isPseudo) {
|
|
230
356
|
if (!val) return;
|
|
231
|
-
const pseudoStyleObject = getSubStyle(styleState, key, val, styleProps.noClass && process.env.IS_STATIC
|
|
232
|
-
if (
|
|
233
|
-
|
|
357
|
+
const pseudoStyleObject = getSubStyle(styleState, key, val, styleProps.noClass && !(process.env.IS_STATIC === "is_static"));
|
|
358
|
+
if (!shouldDoClasses || process.env.IS_STATIC === "is_static") {
|
|
359
|
+
pseudos ||= {};
|
|
360
|
+
pseudos[key] ||= {};
|
|
361
|
+
if (process.env.IS_STATIC === "is_static") {
|
|
362
|
+
Object.assign(pseudos[key], pseudoStyleObject);
|
|
363
|
+
return;
|
|
364
|
+
}
|
|
365
|
+
}
|
|
366
|
+
const descriptor = pseudoDescriptors[key];
|
|
367
|
+
const isEnter = key === "enterStyle";
|
|
368
|
+
const isExit = key === "exitStyle";
|
|
369
|
+
if (!descriptor) {
|
|
234
370
|
return;
|
|
235
371
|
}
|
|
236
|
-
const descriptor = pseudoDescriptors[key],
|
|
237
|
-
isEnter = key === "enterStyle",
|
|
238
|
-
isExit = key === "exitStyle";
|
|
239
|
-
if (!descriptor) return;
|
|
240
372
|
if (shouldDoClasses && !isExit) {
|
|
241
373
|
const pseudoStyles = getStyleAtomic(pseudoStyleObject, descriptor);
|
|
242
|
-
process.env.NODE_ENV === "development" && debug === "verbose"
|
|
374
|
+
if (process.env.NODE_ENV === "development" && debug === "verbose") {
|
|
375
|
+
console.info("pseudo:", key, pseudoStyleObject, pseudoStyles);
|
|
376
|
+
}
|
|
243
377
|
for (const psuedoStyle of pseudoStyles) {
|
|
244
378
|
const fullKey = `${psuedoStyle[StyleObjectProperty]}${PROP_SPLIT}${descriptor.name}`;
|
|
245
|
-
addStyleToInsertRules(rulesToInsert, psuedoStyle)
|
|
379
|
+
addStyleToInsertRules(rulesToInsert, psuedoStyle);
|
|
380
|
+
classNames[fullKey] = psuedoStyle[StyleObjectIdentifier];
|
|
246
381
|
}
|
|
247
382
|
}
|
|
248
383
|
if (!shouldDoClasses || isExit || isEnter) {
|
|
249
384
|
const descriptorKey = descriptor.stateKey || descriptor.name;
|
|
250
|
-
let isDisabled = componentState[descriptorKey] ===
|
|
251
|
-
|
|
252
|
-
isDisabled
|
|
253
|
-
}
|
|
254
|
-
|
|
255
|
-
isDisabled
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
385
|
+
let isDisabled = componentState[descriptorKey] === false;
|
|
386
|
+
if (isExit) {
|
|
387
|
+
isDisabled = !styleProps.isExiting;
|
|
388
|
+
}
|
|
389
|
+
if (isEnter && componentState.unmounted === false) {
|
|
390
|
+
isDisabled = true;
|
|
391
|
+
}
|
|
392
|
+
if (process.env.NODE_ENV === "development" && debug === "verbose") {
|
|
393
|
+
console.groupCollapsed("pseudo", key, {
|
|
394
|
+
isDisabled
|
|
395
|
+
});
|
|
396
|
+
log({
|
|
397
|
+
pseudoStyleObject,
|
|
398
|
+
isDisabled,
|
|
399
|
+
descriptor,
|
|
400
|
+
componentState
|
|
401
|
+
});
|
|
402
|
+
console.groupEnd();
|
|
403
|
+
}
|
|
404
|
+
const importance = descriptor.priority;
|
|
405
|
+
const pseudoOriginalValues = styleOriginalValues.get(pseudoStyleObject);
|
|
261
406
|
for (const pkey in pseudoStyleObject) {
|
|
262
407
|
const val2 = pseudoStyleObject[pkey];
|
|
263
|
-
if (isDisabled)
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
408
|
+
if (isDisabled) {
|
|
409
|
+
applyDefaultStyle(pkey, styleState);
|
|
410
|
+
} else {
|
|
411
|
+
const curImportance = styleState.usedKeys[pkey] || 0;
|
|
412
|
+
const shouldMerge = importance >= curImportance;
|
|
413
|
+
if (shouldMerge) {
|
|
414
|
+
if (process.env.IS_STATIC === "is_static") {
|
|
415
|
+
pseudos ||= {};
|
|
416
|
+
pseudos[key] ||= {};
|
|
417
|
+
pseudos[key][pkey] = val2;
|
|
418
|
+
}
|
|
419
|
+
mergeStyle(styleState, pkey, val2, importance, false, pseudoOriginalValues?.[pkey]);
|
|
420
|
+
}
|
|
421
|
+
if (process.env.NODE_ENV === "development" && debug === "verbose") {
|
|
422
|
+
log(" subKey", pkey, shouldMerge, {
|
|
423
|
+
importance,
|
|
424
|
+
curImportance,
|
|
425
|
+
pkey,
|
|
426
|
+
val: val2
|
|
427
|
+
});
|
|
428
|
+
}
|
|
272
429
|
}
|
|
273
430
|
}
|
|
274
|
-
if (!isDisabled)
|
|
275
|
-
const
|
|
276
|
-
|
|
431
|
+
if (!isDisabled) {
|
|
432
|
+
for (const key2 in val) {
|
|
433
|
+
const k = shorthands[key2] || key2;
|
|
434
|
+
styleState.usedKeys[k] = Math.max(importance, styleState.usedKeys[k] || 0);
|
|
435
|
+
}
|
|
277
436
|
}
|
|
278
437
|
}
|
|
279
438
|
return;
|
|
@@ -281,378 +440,744 @@ const getSplitStyles = (props, staticConfig, theme, themeName, componentState, s
|
|
|
281
440
|
if (isMedia) {
|
|
282
441
|
if (!val) return;
|
|
283
442
|
const mediaKeyShort = key.slice(isMedia == "theme" ? 7 : 1);
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
443
|
+
hasMedia ||= true;
|
|
444
|
+
const hasSpace = val["space"];
|
|
445
|
+
if (hasSpace || !shouldDoClasses || styleProps.willBeAnimated) {
|
|
446
|
+
if (!hasMedia || typeof hasMedia === "boolean") {
|
|
447
|
+
hasMedia = /* @__PURE__ */new Set();
|
|
448
|
+
}
|
|
449
|
+
hasMedia.add(mediaKeyShort);
|
|
450
|
+
}
|
|
451
|
+
if (isMedia === "platform") {
|
|
452
|
+
if (!isActivePlatform(key)) {
|
|
453
|
+
return;
|
|
454
|
+
}
|
|
455
|
+
}
|
|
456
|
+
if (process.env.NODE_ENV === "development" && debug === "verbose") {
|
|
457
|
+
log(` \u{1F4FA} ${key}`, {
|
|
458
|
+
key,
|
|
459
|
+
val,
|
|
460
|
+
props,
|
|
461
|
+
shouldDoClasses,
|
|
462
|
+
acceptsClassName,
|
|
463
|
+
componentState,
|
|
464
|
+
mediaState
|
|
465
|
+
});
|
|
466
|
+
}
|
|
294
467
|
const priority = mediaStylesSeen;
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
468
|
+
mediaStylesSeen += 1;
|
|
469
|
+
if (shouldDoClasses) {
|
|
470
|
+
const mediaStyle = getSubStyle(styleState, key, val, false);
|
|
471
|
+
const mediaStyles = getCSSStylesAtomic(mediaStyle);
|
|
298
472
|
for (const style of mediaStyles) {
|
|
299
|
-
const property = style[StyleObjectProperty]
|
|
300
|
-
|
|
301
|
-
if (isSubStyle && !isActivePlatform(property))
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
const
|
|
305
|
-
|
|
306
|
-
|
|
473
|
+
const property = style[StyleObjectProperty];
|
|
474
|
+
const isSubStyle = property[0] === "$";
|
|
475
|
+
if (isSubStyle && !isActivePlatform(property)) {
|
|
476
|
+
continue;
|
|
477
|
+
}
|
|
478
|
+
const out = createMediaStyle(style, mediaKeyShort, mediaQueryConfig, isMedia, false, priority);
|
|
479
|
+
if (process.env.NODE_ENV === "development" && debug === "verbose") {
|
|
480
|
+
log(`\u{1F4FA} media style:`, out);
|
|
481
|
+
}
|
|
482
|
+
const subKey = isSubStyle ? style[2] : "";
|
|
483
|
+
const fullKey = `${style[StyleObjectProperty]}${subKey}${PROP_SPLIT}${mediaKeyShort}${style[StyleObjectPseudo] || ""}`;
|
|
484
|
+
addStyleToInsertRules(rulesToInsert, out);
|
|
485
|
+
classNames[fullKey] = out[StyleObjectIdentifier];
|
|
307
486
|
}
|
|
308
487
|
} else {
|
|
309
488
|
let mergeMediaStyle = function (key2, val2, originalVal2) {
|
|
310
|
-
|
|
489
|
+
if (process.env.TAMAGUI_TARGET === "native") {
|
|
490
|
+
if (!isValidStyleKey(key2, validStyles, accept)) {
|
|
491
|
+
viewProps[key2] = val2;
|
|
492
|
+
return;
|
|
493
|
+
}
|
|
494
|
+
}
|
|
495
|
+
styleState.style ||= {};
|
|
496
|
+
const didMerge = mergeMediaByImportance(styleState, mediaKeyShort, key2, val2, mediaState[mediaKeyShort], importanceBump, debug, originalVal2);
|
|
497
|
+
if (didMerge && key2 === "fontFamily") {
|
|
498
|
+
styleState.fontFamily = mediaStyle.fontFamily;
|
|
499
|
+
}
|
|
311
500
|
};
|
|
312
|
-
const isThemeMedia = isMedia === "theme"
|
|
313
|
-
|
|
314
|
-
|
|
501
|
+
const isThemeMedia = isMedia === "theme";
|
|
502
|
+
const isGroupMedia = isMedia === "group";
|
|
503
|
+
const isPlatformMedia = isMedia === "platform";
|
|
504
|
+
if (!isThemeMedia && !isPlatformMedia && !isGroupMedia) {
|
|
315
505
|
if (!mediaState[mediaKeyShort]) {
|
|
316
|
-
process.env.NODE_ENV === "development" && debug === "verbose"
|
|
506
|
+
if (process.env.NODE_ENV === "development" && debug === "verbose") {
|
|
507
|
+
log(` \u{1F4FA} \u274C DISABLED ${mediaKeyShort}`);
|
|
508
|
+
}
|
|
317
509
|
return;
|
|
318
510
|
}
|
|
319
|
-
process.env.NODE_ENV === "development" && debug === "verbose"
|
|
511
|
+
if (process.env.NODE_ENV === "development" && debug === "verbose") {
|
|
512
|
+
log(` \u{1F4FA} \u2705 ENABLED ${mediaKeyShort}`);
|
|
513
|
+
}
|
|
320
514
|
}
|
|
321
|
-
const mediaStyle = getSubStyle(styleState, key, val,
|
|
515
|
+
const mediaStyle = getSubStyle(styleState, key, val, true);
|
|
322
516
|
let importanceBump = 0;
|
|
323
517
|
if (isThemeMedia) {
|
|
324
|
-
if (
|
|
518
|
+
if (false) {
|
|
519
|
+
styleState.style ||= {};
|
|
520
|
+
const scheme = mediaKeyShort;
|
|
521
|
+
const oppositeScheme = getOppositeScheme(mediaKeyShort);
|
|
522
|
+
const themeOriginalValues = styleOriginalValues.get(mediaStyle);
|
|
523
|
+
const isCurrentScheme = themeName === scheme || themeName.startsWith(scheme);
|
|
524
|
+
for (const subKey in mediaStyle) {
|
|
525
|
+
const val2 = extractValueFromDynamic(mediaStyle[subKey], scheme);
|
|
526
|
+
const existing = styleState.style[subKey];
|
|
527
|
+
if (!isColorStyleKey(subKey)) {
|
|
528
|
+
dynamicThemeAccess = true;
|
|
529
|
+
if (isCurrentScheme) {
|
|
530
|
+
mediaStyle[subKey] = val2;
|
|
531
|
+
} else {
|
|
532
|
+
delete mediaStyle[subKey];
|
|
533
|
+
}
|
|
534
|
+
continue;
|
|
535
|
+
}
|
|
536
|
+
if (existing?.dynamic) {
|
|
537
|
+
existing.dynamic[scheme] = val2;
|
|
538
|
+
mediaStyle[subKey] = existing;
|
|
539
|
+
} else {
|
|
540
|
+
const oppositeVal = extractValueFromDynamic(existing, oppositeScheme);
|
|
541
|
+
mediaStyle[subKey] = getDynamicVal({
|
|
542
|
+
scheme,
|
|
543
|
+
val: val2,
|
|
544
|
+
oppositeVal
|
|
545
|
+
});
|
|
546
|
+
mergeStyle(styleState, subKey, mediaStyle[subKey], priority, false, themeOriginalValues?.[subKey]);
|
|
547
|
+
}
|
|
548
|
+
}
|
|
549
|
+
} else {
|
|
550
|
+
dynamicThemeAccess = true;
|
|
551
|
+
if (!(themeName === mediaKeyShort || themeName.startsWith(mediaKeyShort))) {
|
|
552
|
+
return;
|
|
553
|
+
}
|
|
554
|
+
}
|
|
325
555
|
} else if (isGroupMedia) {
|
|
326
|
-
const groupInfo = getGroupPropParts(mediaKeyShort)
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
556
|
+
const groupInfo = getGroupPropParts(mediaKeyShort);
|
|
557
|
+
const groupName = groupInfo.name;
|
|
558
|
+
const groupState = groupContext?.[groupName]?.state;
|
|
559
|
+
const groupPseudoKey = groupInfo.pseudo;
|
|
560
|
+
const groupMediaKey = groupInfo.media;
|
|
331
561
|
if (!groupState) {
|
|
332
|
-
process.env.NODE_ENV === "development" && debug
|
|
562
|
+
if (process.env.NODE_ENV === "development" && debug) {
|
|
563
|
+
log(`No parent with group prop, skipping styles: ${groupName}`);
|
|
564
|
+
}
|
|
565
|
+
pseudoGroups ||= /* @__PURE__ */new Set();
|
|
333
566
|
return;
|
|
334
567
|
}
|
|
335
568
|
const componentGroupState = componentState.group?.[groupName];
|
|
336
569
|
if (groupMediaKey) {
|
|
337
|
-
mediaGroups ||= /* @__PURE__ */new Set()
|
|
570
|
+
mediaGroups ||= /* @__PURE__ */new Set();
|
|
571
|
+
mediaGroups.add(groupMediaKey);
|
|
338
572
|
const mediaState2 = componentGroupState?.media;
|
|
339
573
|
let isActive = mediaState2?.[groupMediaKey];
|
|
340
|
-
if (!mediaState2 && groupState.layout
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
574
|
+
if (!mediaState2 && groupState.layout) {
|
|
575
|
+
isActive = mediaKeyMatch(groupMediaKey, groupState.layout);
|
|
576
|
+
}
|
|
577
|
+
if (process.env.NODE_ENV === "development" && debug === "verbose") {
|
|
578
|
+
log(` \u{1F3D8}\uFE0F GROUP media ${groupMediaKey} active? ${isActive}`, {
|
|
579
|
+
...mediaState2,
|
|
580
|
+
usedKeys: {
|
|
581
|
+
...styleState.usedKeys
|
|
582
|
+
}
|
|
583
|
+
});
|
|
584
|
+
}
|
|
585
|
+
if (!isActive) {
|
|
586
|
+
for (const pkey in mediaStyle) {
|
|
587
|
+
applyDefaultStyle(pkey, styleState);
|
|
344
588
|
}
|
|
345
|
-
}), !isActive) {
|
|
346
|
-
for (const pkey in mediaStyle) applyDefaultStyle(pkey, styleState);
|
|
347
589
|
return;
|
|
348
590
|
}
|
|
349
591
|
importanceBump = 2;
|
|
350
592
|
}
|
|
351
593
|
if (groupPseudoKey) {
|
|
352
|
-
pseudoGroups ||= /* @__PURE__ */new Set()
|
|
594
|
+
pseudoGroups ||= /* @__PURE__ */new Set();
|
|
595
|
+
pseudoGroups.add(groupName);
|
|
353
596
|
const componentGroupPseudoState = (componentGroupState ||
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
if (process.env.NODE_ENV === "development" && debug === "verbose"
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
597
|
+
// fallback to context initially
|
|
598
|
+
groupContext?.[groupName].state)?.pseudo;
|
|
599
|
+
const isActive = componentGroupPseudoState?.[groupPseudoKey];
|
|
600
|
+
const priority2 = pseudoPriorities[groupPseudoKey];
|
|
601
|
+
if (process.env.NODE_ENV === "development" && debug === "verbose") {
|
|
602
|
+
log(` \u{1F3D8}\uFE0F GROUP pseudo ${groupMediaKey} active? ${isActive}, priority ${priority2}`, {
|
|
603
|
+
componentGroupPseudoState: {
|
|
604
|
+
...componentGroupPseudoState
|
|
605
|
+
},
|
|
606
|
+
usedKeys: {
|
|
607
|
+
...styleState.usedKeys
|
|
608
|
+
}
|
|
609
|
+
});
|
|
610
|
+
}
|
|
611
|
+
if (!isActive) {
|
|
612
|
+
for (const pkey in mediaStyle) {
|
|
613
|
+
applyDefaultStyle(pkey, styleState);
|
|
364
614
|
}
|
|
365
|
-
}), !isActive) {
|
|
366
|
-
for (const pkey in mediaStyle) applyDefaultStyle(pkey, styleState);
|
|
367
615
|
return;
|
|
368
616
|
}
|
|
369
617
|
importanceBump = priority2;
|
|
370
618
|
}
|
|
619
|
+
} else if (isPlatformMedia) {
|
|
620
|
+
importanceBump = getPlatformSpecificityBump(mediaKeyShort);
|
|
371
621
|
}
|
|
372
622
|
const mediaOriginalValues = styleOriginalValues.get(mediaStyle);
|
|
373
|
-
isGroupMedia && mediaStyle.transition
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
623
|
+
if (isGroupMedia && mediaStyle.transition) {
|
|
624
|
+
styleState.pseudoTransitions ||= {};
|
|
625
|
+
styleState.pseudoTransitions[`$${mediaKeyShort}`] = mediaStyle.transition;
|
|
626
|
+
}
|
|
627
|
+
for (const subKey in mediaStyle) {
|
|
628
|
+
if (subKey === "space") {
|
|
629
|
+
continue;
|
|
630
|
+
}
|
|
631
|
+
if (subKey[0] === "$") {
|
|
632
|
+
const subMediaType = getMediaKey(subKey);
|
|
633
|
+
if (subMediaType === "platform") {
|
|
634
|
+
if (!isActivePlatform(subKey)) continue;
|
|
635
|
+
} else if (subMediaType === "theme") {
|
|
636
|
+
if (!isActiveTheme(subKey, themeName)) continue;
|
|
637
|
+
} else if (subMediaType === true) {
|
|
638
|
+
const subKeyShort = subKey.slice(1);
|
|
639
|
+
if (!mediaState[subKeyShort]) continue;
|
|
640
|
+
}
|
|
641
|
+
const nestedVal = mediaStyle[subKey];
|
|
642
|
+
const subOriginalValues = styleOriginalValues.get(nestedVal);
|
|
643
|
+
const isSizeMediaKey = !!mediaState[mediaKeyShort];
|
|
644
|
+
const outerBase = isSizeMediaKey ? getMediaKeyImportance(mediaKeyShort) : defaultMediaImportance;
|
|
645
|
+
let innerBase;
|
|
646
|
+
if (subMediaType === "platform") {
|
|
647
|
+
innerBase = defaultMediaImportance + getPlatformSpecificityBump(subKey.slice(1));
|
|
648
|
+
} else if (subMediaType === true) {
|
|
649
|
+
innerBase = getMediaKeyImportance(subKey.slice(1));
|
|
650
|
+
} else {
|
|
651
|
+
innerBase = defaultMediaImportance;
|
|
652
|
+
}
|
|
653
|
+
const nestedImportance = outerBase + importanceBump + innerBase + 1;
|
|
654
|
+
for (const subSubKey in nestedVal) {
|
|
655
|
+
const expandedKey = shorthands[subSubKey] || subSubKey;
|
|
656
|
+
const {
|
|
657
|
+
usedKeys
|
|
658
|
+
} = styleState;
|
|
659
|
+
if (usedKeys[expandedKey] && usedKeys[expandedKey] > nestedImportance) {
|
|
660
|
+
continue;
|
|
661
|
+
}
|
|
662
|
+
styleState.style ||= {};
|
|
663
|
+
mergeStyle(styleState, expandedKey, nestedVal[subSubKey], nestedImportance, false, subOriginalValues?.[subSubKey]);
|
|
664
|
+
if (expandedKey === "fontFamily") {
|
|
665
|
+
styleState.fontFamily = nestedVal[subSubKey];
|
|
666
|
+
}
|
|
667
|
+
}
|
|
668
|
+
} else {
|
|
669
|
+
mergeMediaStyle(subKey, mediaStyle[subKey], mediaOriginalValues?.[subKey]);
|
|
670
|
+
}
|
|
671
|
+
}
|
|
379
672
|
}
|
|
380
673
|
return;
|
|
381
674
|
}
|
|
382
675
|
if (!isVariant) {
|
|
383
|
-
if (isStyledContextProp)
|
|
676
|
+
if (isStyledContextProp) {
|
|
677
|
+
return;
|
|
678
|
+
}
|
|
384
679
|
viewProps[key] = val;
|
|
385
680
|
}
|
|
386
|
-
})
|
|
681
|
+
});
|
|
682
|
+
if (process.env.NODE_ENV === "development" && debug === "verbose") {
|
|
387
683
|
try {
|
|
388
|
-
log(
|
|
684
|
+
log(` \u2714\uFE0F expand complete`, keyInit);
|
|
685
|
+
log("style", {
|
|
389
686
|
...styleState.style
|
|
390
|
-
})
|
|
687
|
+
});
|
|
688
|
+
log("viewProps", {
|
|
391
689
|
...viewProps
|
|
392
|
-
})
|
|
690
|
+
});
|
|
691
|
+
log("transforms", {
|
|
393
692
|
...styleState.flatTransforms
|
|
394
693
|
});
|
|
395
694
|
} catch {}
|
|
396
695
|
console.groupEnd();
|
|
397
696
|
}
|
|
398
697
|
}
|
|
399
|
-
if (process.env.NODE_ENV === "development" && (debug === "profile" || globalThis.time)
|
|
400
|
-
|
|
401
|
-
const val = parentSplitStyles.classNames[key];
|
|
402
|
-
styleState.style && key in styleState.style || key in classNames || (classNames[key] = val);
|
|
403
|
-
}
|
|
404
|
-
if (!shouldDoClasses) for (const key in parentSplitStyles.style) key in classNames || styleState.style && key in styleState.style || (styleState.style ||= {}, styleState.style[key] = parentSplitStyles.style[key]);
|
|
698
|
+
if (process.env.NODE_ENV === "development" && (debug === "profile" || globalThis.time)) {
|
|
699
|
+
time`split-styles-propsend`;
|
|
405
700
|
}
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
701
|
+
const avoidNormalize = styleProps.noNormalize === false;
|
|
702
|
+
if (!avoidNormalize) {
|
|
703
|
+
if (styleState.style) {
|
|
704
|
+
fixStyles(styleState.style);
|
|
705
|
+
if (!styleProps.noExpand && !styleProps.noMergeStyle) {
|
|
706
|
+
if (isWeb && (isReactNative ? driver?.inputStyle !== "css" : true)) {
|
|
707
|
+
styleToCSS(styleState.style);
|
|
708
|
+
}
|
|
709
|
+
}
|
|
710
|
+
}
|
|
711
|
+
if (styleState.flatTransforms) {
|
|
712
|
+
styleState.style ||= {};
|
|
713
|
+
mergeFlatTransforms(styleState.style, styleState.flatTransforms);
|
|
714
|
+
}
|
|
715
|
+
if (parentSplitStyles) {
|
|
716
|
+
if (true) {
|
|
717
|
+
if (shouldDoClasses) {
|
|
718
|
+
for (const key in parentSplitStyles.classNames) {
|
|
719
|
+
const val = parentSplitStyles.classNames[key];
|
|
720
|
+
if (styleState.style && key in styleState.style || key in classNames) continue;
|
|
721
|
+
classNames[key] = val;
|
|
722
|
+
}
|
|
723
|
+
}
|
|
416
724
|
}
|
|
417
|
-
|
|
725
|
+
if (!shouldDoClasses) {
|
|
726
|
+
for (const key in parentSplitStyles.style) {
|
|
727
|
+
if (key in classNames || styleState.style && key in styleState.style) continue;
|
|
728
|
+
styleState.style ||= {};
|
|
729
|
+
styleState.style[key] = parentSplitStyles.style[key];
|
|
730
|
+
}
|
|
731
|
+
}
|
|
732
|
+
}
|
|
733
|
+
}
|
|
734
|
+
if (true) {
|
|
735
|
+
const shouldStringifyTransforms = !styleProps.noNormalize && !staticConfig.isReactNative && !staticConfig.isHOC && (!styleProps.isAnimated || driver?.inputStyle === "css");
|
|
736
|
+
if (shouldStringifyTransforms && Array.isArray(styleState.style?.transform)) {
|
|
737
|
+
styleState.style.transform = transformsToString(styleState.style.transform);
|
|
418
738
|
}
|
|
419
739
|
}
|
|
420
|
-
if (
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
740
|
+
if (true) {
|
|
741
|
+
if (!styleProps.noMergeStyle && styleState.style && shouldDoClasses) {
|
|
742
|
+
let retainedStyles;
|
|
743
|
+
let shouldRetain = false;
|
|
744
|
+
if (styleState.style["$$css"]) {} else {
|
|
745
|
+
const atomic = getCSSStylesAtomic(styleState.style);
|
|
746
|
+
for (const atomicStyle of atomic) {
|
|
747
|
+
const [key, value, identifier] = atomicStyle;
|
|
748
|
+
const isAnimatedAndTransitionOnly = styleProps.isAnimated && styleProps.noClass && props.animateOnly?.includes(key);
|
|
749
|
+
const nonAnimatedTransitionOnly = !isAnimatedAndTransitionOnly && !styleProps.isAnimated && isClient && driver?.outputStyle === "css" && props.animateOnly?.includes(key);
|
|
750
|
+
if (isAnimatedAndTransitionOnly) {
|
|
751
|
+
retainedStyles ||= {};
|
|
752
|
+
retainedStyles[key] = styleState.style[key];
|
|
753
|
+
} else if (nonAnimatedTransitionOnly) {
|
|
754
|
+
retainedStyles ||= {};
|
|
755
|
+
retainedStyles[key] = value;
|
|
756
|
+
shouldRetain = true;
|
|
757
|
+
} else {
|
|
758
|
+
addStyleToInsertRules(rulesToInsert, atomicStyle);
|
|
759
|
+
classNames[key] = identifier;
|
|
760
|
+
}
|
|
761
|
+
}
|
|
762
|
+
if (process.env.NODE_ENV === "development" && props.debug === "verbose") {
|
|
763
|
+
console.groupCollapsed(`\u{1F539} getSplitStyles final style object`);
|
|
764
|
+
console.info(styleState.style);
|
|
765
|
+
console.info(`retainedStyles`, retainedStyles);
|
|
766
|
+
console.groupEnd();
|
|
767
|
+
}
|
|
768
|
+
if (shouldRetain || !(process.env.IS_STATIC === "is_static")) {
|
|
769
|
+
styleState.style = retainedStyles || {};
|
|
770
|
+
}
|
|
771
|
+
}
|
|
772
|
+
}
|
|
773
|
+
if (!styleProps.noMergeStyle && styleState.style && !shouldDoClasses && styleProps.isAnimated && !driver?.isReactNative) {
|
|
774
|
+
if (!styleState.style["$$css"]) {
|
|
775
|
+
const toConvert = {};
|
|
776
|
+
let hasProps = false;
|
|
777
|
+
const animateOnly = props.animateOnly;
|
|
778
|
+
for (const key in styleState.style) {
|
|
779
|
+
if (key in nonAnimatableStyleProps) {
|
|
780
|
+
toConvert[key] = styleState.style[key];
|
|
781
|
+
delete styleState.style[key];
|
|
782
|
+
hasProps = true;
|
|
783
|
+
}
|
|
784
|
+
}
|
|
785
|
+
if (hasProps) {
|
|
786
|
+
const atomic = getCSSStylesAtomic(toConvert);
|
|
787
|
+
for (const atomicStyle of atomic) {
|
|
788
|
+
addStyleToInsertRules(rulesToInsert, atomicStyle);
|
|
789
|
+
classNames[atomicStyle[StyleObjectProperty]] = atomicStyle[StyleObjectIdentifier];
|
|
790
|
+
}
|
|
791
|
+
}
|
|
792
|
+
}
|
|
428
793
|
}
|
|
429
794
|
}
|
|
430
795
|
const styleProp = props.style;
|
|
431
|
-
if (!styleProps.noMergeStyle && styleProp)
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
const
|
|
436
|
-
|
|
796
|
+
if (!styleProps.noMergeStyle && styleProp) {
|
|
797
|
+
if (isHOC) {
|
|
798
|
+
viewProps.style = normalizeStyle(styleProp);
|
|
799
|
+
} else {
|
|
800
|
+
const isArray = Array.isArray(styleProp);
|
|
801
|
+
const len = isArray ? styleProp.length : 1;
|
|
802
|
+
for (let i = 0; i < len; i++) {
|
|
803
|
+
const style = isArray ? styleProp[i] : styleProp;
|
|
804
|
+
if (style) {
|
|
805
|
+
if (style["$$css"]) {
|
|
806
|
+
Object.assign(styleState.classNames, style);
|
|
807
|
+
} else {
|
|
808
|
+
styleState.style ||= {};
|
|
809
|
+
Object.assign(styleState.style, normalizeStyle(style));
|
|
810
|
+
}
|
|
811
|
+
}
|
|
812
|
+
}
|
|
437
813
|
}
|
|
438
814
|
}
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
viewProps,
|
|
444
|
-
style: styleState.style,
|
|
445
|
-
pseudos,
|
|
446
|
-
classNames,
|
|
447
|
-
rulesToInsert,
|
|
448
|
-
dynamicThemeAccess,
|
|
449
|
-
pseudoGroups,
|
|
450
|
-
mediaGroups,
|
|
451
|
-
overriddenContextProps: styleState.overriddenContextProps,
|
|
452
|
-
pseudoTransitions: styleState.pseudoTransitions
|
|
453
|
-
},
|
|
454
|
-
asChildExceptStyleLike = asChild === "except-style" || asChild === "except-style-web";
|
|
455
|
-
if (!styleProps.noMergeStyle && !asChildExceptStyleLike) {
|
|
815
|
+
if (false) {
|
|
816
|
+
if (viewProps.tabIndex === 0) {
|
|
817
|
+
viewProps.accessible ??= true;
|
|
818
|
+
}
|
|
456
819
|
const style = styleState.style;
|
|
457
|
-
{
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
if (
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
820
|
+
if (style?.fontFamily) {
|
|
821
|
+
const faceInfo = getFont(style.fontFamily)?.face;
|
|
822
|
+
if (faceInfo) {
|
|
823
|
+
const overrideFace = faceInfo[style.fontWeight]?.[style.fontStyle || "normal"]?.val;
|
|
824
|
+
if (overrideFace) {
|
|
825
|
+
style.fontFamily = overrideFace;
|
|
826
|
+
styleState.fontFamily = overrideFace;
|
|
827
|
+
delete style.fontWeight;
|
|
828
|
+
delete style.fontStyle;
|
|
829
|
+
}
|
|
830
|
+
}
|
|
831
|
+
if (process.env.NODE_ENV === "development" && debug && debug !== "profile") {
|
|
832
|
+
log(`Found fontFamily native: ${style.fontFamily}`, faceInfo);
|
|
833
|
+
}
|
|
834
|
+
}
|
|
835
|
+
}
|
|
836
|
+
if (process.env.NODE_ENV === "development" && (debug === "profile" || globalThis.time)) {
|
|
837
|
+
time`split-styles-pre-result`;
|
|
838
|
+
}
|
|
839
|
+
const result = {
|
|
840
|
+
hasMedia,
|
|
841
|
+
fontFamily: styleState.fontFamily,
|
|
842
|
+
viewProps,
|
|
843
|
+
style: styleState.style,
|
|
844
|
+
pseudos,
|
|
845
|
+
classNames,
|
|
846
|
+
rulesToInsert,
|
|
847
|
+
dynamicThemeAccess,
|
|
848
|
+
pseudoGroups,
|
|
849
|
+
mediaGroups,
|
|
850
|
+
overriddenContextProps: styleState.overriddenContextProps,
|
|
851
|
+
pseudoTransitions: styleState.pseudoTransitions
|
|
852
|
+
};
|
|
853
|
+
const asChildExceptStyleLike = asChild === "except-style" || asChild === "except-style-web";
|
|
854
|
+
if (!styleProps.noMergeStyle) {
|
|
855
|
+
if (!asChildExceptStyleLike) {
|
|
856
|
+
const style = styleState.style;
|
|
857
|
+
if (true) {
|
|
858
|
+
let fontFamily = isText || isInput ? styleState.fontFamily : null;
|
|
859
|
+
if (fontFamily && fontFamily[0] === "$") {
|
|
860
|
+
fontFamily = fontFamily.slice(1);
|
|
861
|
+
}
|
|
862
|
+
const fontFamilyClassName = fontFamily ? `font_${fontFamily}` : "";
|
|
863
|
+
const groupClassName = props.group ? `t_group_${props.group}` : "";
|
|
864
|
+
const componentNameFinal = props.componentName || staticConfig.componentName;
|
|
865
|
+
const componentNameClassName = props.asChild || !componentNameFinal || componentNameFinal === "Text" ? "" : `is_${componentNameFinal}`;
|
|
866
|
+
let classList = [];
|
|
867
|
+
if (componentNameClassName) classList.push(componentNameClassName);
|
|
868
|
+
if (!isText) classList.push("is_View");else classList.push("is_Text");
|
|
869
|
+
if (fontFamilyClassName) classList.push(fontFamilyClassName);
|
|
870
|
+
if (classNames) classList.push(Object.values(classNames).join(" "));
|
|
871
|
+
if (groupClassName) classList.push(groupClassName);
|
|
872
|
+
if (props.className) classList.push(props.className);
|
|
873
|
+
const finalClassName = classList.join(" ");
|
|
874
|
+
const needsCssStyles = isReactNative || styleProps.isAnimated && driver?.isReactNative;
|
|
875
|
+
if (styleProps.isAnimated && driver?.inputStyle === "css") {
|
|
876
|
+
viewProps.className = finalClassName;
|
|
877
|
+
if (style) {
|
|
878
|
+
viewProps.style = style;
|
|
879
|
+
}
|
|
880
|
+
} else if (needsCssStyles) {
|
|
881
|
+
let cnStyles;
|
|
882
|
+
for (const name of finalClassName.split(" ")) {
|
|
883
|
+
cnStyles ||= {
|
|
884
|
+
$$css: true
|
|
885
|
+
};
|
|
886
|
+
cnStyles[name] = name;
|
|
887
|
+
}
|
|
888
|
+
viewProps.style = cnStyles ? [...(Array.isArray(style) ? style : [style]), cnStyles] : [style];
|
|
889
|
+
} else {
|
|
890
|
+
if (finalClassName) {
|
|
891
|
+
viewProps.className = finalClassName;
|
|
892
|
+
}
|
|
893
|
+
if (style) {
|
|
894
|
+
viewProps.style = style;
|
|
895
|
+
}
|
|
896
|
+
}
|
|
897
|
+
} else {
|
|
898
|
+
if (style) {
|
|
899
|
+
viewProps.style = style;
|
|
900
|
+
}
|
|
901
|
+
}
|
|
902
|
+
}
|
|
491
903
|
}
|
|
492
|
-
|
|
904
|
+
if (process.env.NODE_ENV === "development" && debug === "verbose") {
|
|
905
|
+
if (isClient && isDevTools) {
|
|
906
|
+
console.groupEnd();
|
|
907
|
+
console.groupCollapsed("\u{1F539} getSplitStyles ===>");
|
|
908
|
+
try {
|
|
909
|
+
const logs = {
|
|
910
|
+
...result,
|
|
911
|
+
className,
|
|
912
|
+
componentState,
|
|
913
|
+
viewProps,
|
|
914
|
+
rulesToInsert,
|
|
915
|
+
parentSplitStyles
|
|
916
|
+
};
|
|
917
|
+
for (const key in logs) {
|
|
918
|
+
log(key, logs[key]);
|
|
919
|
+
}
|
|
920
|
+
} catch {}
|
|
921
|
+
console.groupEnd();
|
|
922
|
+
}
|
|
923
|
+
}
|
|
924
|
+
if (process.env.NODE_ENV === "development" && (debug === "profile" || globalThis.time)) {
|
|
925
|
+
time`split-styles-done`;
|
|
926
|
+
}
|
|
927
|
+
return result;
|
|
493
928
|
};
|
|
494
929
|
function mergeFlatTransforms(target, flatTransforms) {
|
|
495
930
|
Object.entries(flatTransforms).sort(([a], [b]) => sortString(a, b)).forEach(([key, val]) => {
|
|
496
|
-
mergeTransform(target, key, val,
|
|
931
|
+
mergeTransform(target, key, val, true);
|
|
497
932
|
});
|
|
498
933
|
}
|
|
499
|
-
function mergeStyle(styleState, key, val, importance, disableNormalize =
|
|
934
|
+
function mergeStyle(styleState, key, val, importance, disableNormalize = false, originalVal) {
|
|
500
935
|
const {
|
|
501
936
|
viewProps,
|
|
502
937
|
styleProps,
|
|
503
938
|
staticConfig,
|
|
504
939
|
usedKeys
|
|
505
940
|
} = styleState;
|
|
506
|
-
|
|
941
|
+
const existingImportance = usedKeys[key] || 0;
|
|
942
|
+
if (existingImportance > importance) {
|
|
943
|
+
return;
|
|
944
|
+
}
|
|
507
945
|
const contextProps = staticConfig.context?.props || staticConfig.parentStaticConfig?.context?.props;
|
|
508
946
|
if (contextProps && key in contextProps) {
|
|
509
947
|
styleState.overriddenContextProps ||= {};
|
|
510
948
|
const originalFromState = styleState.originalContextPropValues?.[key];
|
|
511
949
|
styleState.overriddenContextProps[key] = originalVal ?? originalFromState ?? val;
|
|
512
950
|
}
|
|
513
|
-
if (key in stylePropsTransform)
|
|
514
|
-
|
|
951
|
+
if (key in stylePropsTransform) {
|
|
952
|
+
styleState.flatTransforms ||= {};
|
|
953
|
+
usedKeys[key] = importance;
|
|
954
|
+
styleState.flatTransforms[key] = val;
|
|
955
|
+
} else {
|
|
956
|
+
const shouldNormalize = isWeb && !disableNormalize && !styleProps.noNormalize;
|
|
957
|
+
const out = shouldNormalize ? normalizeValueWithProperty(val, key) : val;
|
|
958
|
+
if (
|
|
515
959
|
// accept is for props not styles
|
|
516
|
-
staticConfig.accept && key in staticConfig.accept
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
960
|
+
staticConfig.accept && key in staticConfig.accept) {
|
|
961
|
+
viewProps[key] = out;
|
|
962
|
+
} else {
|
|
963
|
+
styleState.style ||= {};
|
|
964
|
+
usedKeys[key] = importance;
|
|
965
|
+
styleState.style[key] =
|
|
966
|
+
// if you dont do this you'll be passing props.transform arrays directly here and then mutating them
|
|
967
|
+
// if theres any flatTransforms later, causing issues (mutating props is bad, in strict mode styles get borked)
|
|
968
|
+
key === "transform" && Array.isArray(out) ? [...out] : out;
|
|
969
|
+
}
|
|
520
970
|
}
|
|
521
971
|
}
|
|
522
972
|
const getSubStyle = (styleState, subKey, styleIn, avoidMergeTransform) => {
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
973
|
+
const {
|
|
974
|
+
staticConfig,
|
|
975
|
+
conf: conf2,
|
|
976
|
+
styleProps
|
|
977
|
+
} = styleState;
|
|
978
|
+
const styleOut = {};
|
|
979
|
+
let originalValues;
|
|
980
|
+
for (let key in styleIn) {
|
|
981
|
+
const val = styleIn[key];
|
|
982
|
+
key = conf2.shorthands[key] || key;
|
|
983
|
+
if (key === "transition") {
|
|
984
|
+
styleState.pseudoTransitions ||= {};
|
|
985
|
+
styleState.pseudoTransitions[subKey] = val;
|
|
986
|
+
const driver = styleState.animationDriver;
|
|
987
|
+
if (driver?.outputStyle === "css") {
|
|
988
|
+
const animationConfig = driver.animations?.[val];
|
|
989
|
+
if (animationConfig) {
|
|
990
|
+
const important = subKey[0] === "$" ? " !important" : "";
|
|
991
|
+
styleOut["transition"] = `all ${animationConfig}${important}`;
|
|
541
992
|
}
|
|
542
|
-
continue;
|
|
543
993
|
}
|
|
544
|
-
!
|
|
545
|
-
|
|
546
|
-
}
|
|
994
|
+
if (!styleOut["transition"] && typeof val === "string" && !driver?.animations?.[val]) {
|
|
995
|
+
styleOut["transition"] = val;
|
|
996
|
+
}
|
|
997
|
+
continue;
|
|
547
998
|
}
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
999
|
+
const shouldSkip = !staticConfig.isHOC && key in skipProps && !styleProps.noSkip;
|
|
1000
|
+
if (shouldSkip) {
|
|
1001
|
+
continue;
|
|
1002
|
+
}
|
|
1003
|
+
propMapper(key, val, styleState, false, (skey, sval, originalVal) => {
|
|
1004
|
+
if (originalVal !== void 0) {
|
|
1005
|
+
originalValues ||= {};
|
|
1006
|
+
originalValues[skey] = originalVal;
|
|
1007
|
+
}
|
|
1008
|
+
if (skey in validPseudoKeys) {
|
|
1009
|
+
sval = getSubStyle(styleState, skey, sval, avoidMergeTransform);
|
|
1010
|
+
}
|
|
1011
|
+
if (!avoidMergeTransform && skey in stylePropsTransform) {
|
|
1012
|
+
mergeTransform(styleOut, skey, sval);
|
|
1013
|
+
} else {
|
|
1014
|
+
styleOut[skey] = styleProps.noNormalize ? sval : normalizeValueWithProperty(sval, key);
|
|
1015
|
+
}
|
|
1016
|
+
});
|
|
1017
|
+
}
|
|
1018
|
+
if (!avoidMergeTransform) {
|
|
1019
|
+
const parentTransform = styleState.style?.transform;
|
|
1020
|
+
const flatTransforms = styleState.flatTransforms;
|
|
1021
|
+
const styleOutTransform = styleOut.transform;
|
|
1022
|
+
if (Array.isArray(styleOutTransform) && styleOutTransform.length) {
|
|
1023
|
+
const len = styleOutTransform.length;
|
|
1024
|
+
if (Array.isArray(parentTransform)) {
|
|
1025
|
+
const merged = [];
|
|
1026
|
+
outer: for (let i = 0; i < parentTransform.length; i++) {
|
|
1027
|
+
const pt = parentTransform[i];
|
|
1028
|
+
for (const pk in pt) {
|
|
1029
|
+
for (let j = 0; j < len; j++) {
|
|
1030
|
+
for (const sk in styleOutTransform[j]) {
|
|
560
1031
|
if (pk === sk) continue outer;
|
|
561
1032
|
break;
|
|
562
1033
|
}
|
|
563
|
-
merged.push(pt);
|
|
564
|
-
break;
|
|
565
1034
|
}
|
|
1035
|
+
merged.push(pt);
|
|
1036
|
+
break;
|
|
566
1037
|
}
|
|
567
|
-
for (let i = 0; i < len; i++) merged.push(styleOutTransform[i]);
|
|
568
|
-
styleOut.transform = merged;
|
|
569
1038
|
}
|
|
570
|
-
|
|
1039
|
+
for (let i = 0; i < len; i++) merged.push(styleOutTransform[i]);
|
|
1040
|
+
styleOut.transform = merged;
|
|
1041
|
+
}
|
|
1042
|
+
if (flatTransforms) {
|
|
1043
|
+
outer: for (const fk in flatTransforms) {
|
|
571
1044
|
const ck = fk === "x" ? "translateX" : fk === "y" ? "translateY" : fk;
|
|
572
|
-
for (let j = 0; j < len; j++)
|
|
573
|
-
|
|
574
|
-
|
|
1045
|
+
for (let j = 0; j < len; j++) {
|
|
1046
|
+
for (const sk in styleOutTransform[j]) {
|
|
1047
|
+
if (ck === sk) continue outer;
|
|
1048
|
+
break;
|
|
1049
|
+
}
|
|
575
1050
|
}
|
|
576
1051
|
mergeTransform(styleOut, fk, flatTransforms[fk]);
|
|
577
1052
|
}
|
|
578
|
-
}
|
|
1053
|
+
}
|
|
1054
|
+
} else if (flatTransforms) {
|
|
1055
|
+
mergeFlatTransforms(styleOut, flatTransforms);
|
|
579
1056
|
}
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
1057
|
+
}
|
|
1058
|
+
if (!styleProps.noNormalize) {
|
|
1059
|
+
fixStyles(styleOut);
|
|
1060
|
+
}
|
|
1061
|
+
if (originalValues) {
|
|
1062
|
+
styleOriginalValues.set(styleOut, originalValues);
|
|
1063
|
+
}
|
|
1064
|
+
return styleOut;
|
|
1065
|
+
};
|
|
1066
|
+
const useInsertEffectCompat = isWeb ? React.useInsertionEffect || useIsomorphicLayoutEffect : () => {};
|
|
1067
|
+
const useSplitStyles = (a, b, c, d, e, f, g, h, i, j, k, l, m) => {
|
|
1068
|
+
"use no memo";
|
|
585
1069
|
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
1070
|
+
const res = getSplitStyles(a, b, c, d, e, f, g, h, i, j, k, l, m);
|
|
1071
|
+
if (true) {
|
|
1072
|
+
useInsertEffectCompat(() => {
|
|
1073
|
+
if (res) {
|
|
1074
|
+
insertStyleRules(res.rulesToInsert);
|
|
1075
|
+
}
|
|
1076
|
+
}, [res?.rulesToInsert]);
|
|
1077
|
+
}
|
|
1078
|
+
return res;
|
|
1079
|
+
};
|
|
591
1080
|
function addStyleToInsertRules(rulesToInsert, styleObject) {
|
|
592
|
-
{
|
|
1081
|
+
if (true) {
|
|
593
1082
|
const identifier = styleObject[StyleObjectIdentifier];
|
|
594
|
-
|
|
1083
|
+
if (shouldInsertStyleRules(identifier)) {
|
|
1084
|
+
updateRules(identifier, styleObject[StyleObjectRules]);
|
|
1085
|
+
rulesToInsert[identifier] = styleObject;
|
|
1086
|
+
}
|
|
595
1087
|
}
|
|
596
1088
|
}
|
|
597
|
-
const defaultColor = process.env.
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
1089
|
+
const defaultColor = process.env.GUI_DEFAULT_COLOR || "rgba(0,0,0,0)";
|
|
1090
|
+
const animatableDefaults = {
|
|
1091
|
+
...Object.fromEntries(Object.entries(tokenCategories.color).map(([k, v]) => [k, defaultColor])),
|
|
1092
|
+
opacity: 1,
|
|
1093
|
+
scale: 1,
|
|
1094
|
+
scaleX: 1,
|
|
1095
|
+
scaleY: 1,
|
|
1096
|
+
rotate: "0deg",
|
|
1097
|
+
rotateX: "0deg",
|
|
1098
|
+
rotateY: "0deg",
|
|
1099
|
+
rotateZ: "0deg",
|
|
1100
|
+
skewX: "0deg",
|
|
1101
|
+
skewY: "0deg",
|
|
1102
|
+
x: 0,
|
|
1103
|
+
y: 0,
|
|
1104
|
+
borderRadius: 0
|
|
1105
|
+
};
|
|
1106
|
+
const mergeTransform = (obj, key, val, backwards = false) => {
|
|
1107
|
+
if (typeof obj.transform === "string") {
|
|
1108
|
+
return;
|
|
1109
|
+
}
|
|
1110
|
+
obj.transform ||= [];
|
|
1111
|
+
obj.transform[backwards ? "unshift" : "push"]({
|
|
1112
|
+
[mapTransformKeys[key] || key]: val
|
|
1113
|
+
});
|
|
1114
|
+
};
|
|
1115
|
+
const mapTransformKeys = {
|
|
1116
|
+
x: "translateX",
|
|
1117
|
+
y: "translateY"
|
|
1118
|
+
};
|
|
1119
|
+
function passDownProp(viewProps, key, val, shouldMergeObject = false) {
|
|
624
1120
|
if (shouldMergeObject) {
|
|
625
1121
|
const next = {
|
|
626
1122
|
...viewProps[key],
|
|
627
1123
|
...val
|
|
628
1124
|
};
|
|
629
|
-
delete viewProps[key]
|
|
630
|
-
|
|
1125
|
+
delete viewProps[key];
|
|
1126
|
+
viewProps[key] = next;
|
|
1127
|
+
} else {
|
|
1128
|
+
viewProps[key] = val;
|
|
1129
|
+
}
|
|
631
1130
|
}
|
|
632
1131
|
function mergeMediaByImportance(styleState, mediaKey, key, value, isSizeMedia, importanceBump, debugProp, originalVal) {
|
|
633
1132
|
const usedKeys = styleState.usedKeys;
|
|
634
1133
|
let importance = getMediaImportanceIfMoreImportant(mediaKey, key, styleState, isSizeMedia);
|
|
635
|
-
if (importanceBump
|
|
1134
|
+
if (importanceBump) {
|
|
1135
|
+
const bumpedImportance = defaultMediaImportance + importanceBump;
|
|
1136
|
+
importance = !usedKeys[key] || bumpedImportance > usedKeys[key] ? bumpedImportance : null;
|
|
1137
|
+
}
|
|
1138
|
+
if (process.env.NODE_ENV === "development" && debugProp === "verbose") {
|
|
1139
|
+
log(`mergeMediaByImportance ${key} importance usedKey ${usedKeys[key]} next ${importance}`);
|
|
1140
|
+
}
|
|
1141
|
+
if (importance === null) {
|
|
1142
|
+
return false;
|
|
1143
|
+
}
|
|
636
1144
|
if (key in pseudoDescriptors) {
|
|
637
|
-
const descriptor = pseudoDescriptors[key]
|
|
638
|
-
|
|
639
|
-
|
|
1145
|
+
const descriptor = pseudoDescriptors[key];
|
|
1146
|
+
const descriptorKey = descriptor.stateKey || descriptor.name;
|
|
1147
|
+
const isDisabled = styleState.componentState[descriptorKey] === false;
|
|
1148
|
+
if (isDisabled) {
|
|
1149
|
+
return false;
|
|
1150
|
+
}
|
|
640
1151
|
const pseudoOriginalValues = styleOriginalValues.get(value);
|
|
641
|
-
for (const subKey in value)
|
|
642
|
-
|
|
643
|
-
|
|
1152
|
+
for (const subKey in value) {
|
|
1153
|
+
mergeStyle(styleState, subKey, value[subKey], importance, false, pseudoOriginalValues?.[subKey]);
|
|
1154
|
+
}
|
|
1155
|
+
} else {
|
|
1156
|
+
mergeStyle(styleState, key, value, importance, false, originalVal);
|
|
1157
|
+
}
|
|
1158
|
+
return true;
|
|
644
1159
|
}
|
|
645
1160
|
function normalizeStyle(style) {
|
|
646
1161
|
const out = {};
|
|
647
1162
|
for (const key in style) {
|
|
648
1163
|
const val = style[key];
|
|
649
|
-
key in stylePropsTransform
|
|
1164
|
+
if (key in stylePropsTransform) {
|
|
1165
|
+
mergeTransform(out, key, val);
|
|
1166
|
+
} else {
|
|
1167
|
+
out[key] = normalizeValueWithProperty(val, key);
|
|
1168
|
+
}
|
|
1169
|
+
}
|
|
1170
|
+
if (isWeb && Array.isArray(out.transform)) {
|
|
1171
|
+
out.transform = transformsToString(out.transform);
|
|
650
1172
|
}
|
|
651
|
-
|
|
1173
|
+
fixStyles(out);
|
|
1174
|
+
return out;
|
|
652
1175
|
}
|
|
653
1176
|
function applyDefaultStyle(pkey, styleState) {
|
|
654
1177
|
const defaultValues = animatableDefaults[pkey];
|
|
655
|
-
defaultValues != null && !(pkey in styleState.usedKeys) && (!styleState.style || !(pkey in styleState.style))
|
|
1178
|
+
if (defaultValues != null && !(pkey in styleState.usedKeys) && (!styleState.style || !(pkey in styleState.style))) {
|
|
1179
|
+
mergeStyle(styleState, pkey, defaultValues, 1);
|
|
1180
|
+
}
|
|
656
1181
|
}
|
|
657
1182
|
export { PROP_SPLIT, getSplitStyles, getSubStyle, styleOriginalValues, useSplitStyles };
|
|
658
1183
|
//# sourceMappingURL=getSplitStyles.mjs.map
|