@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.
Files changed (789) hide show
  1. package/dist/cjs/Gui.cjs +57 -53
  2. package/dist/cjs/Gui.native.js +95 -79
  3. package/dist/cjs/Gui.native.js.map +1 -1
  4. package/dist/cjs/_withStableStyle.cjs +52 -42
  5. package/dist/cjs/_withStableStyle.native.js +64 -59
  6. package/dist/cjs/_withStableStyle.native.js.map +1 -1
  7. package/dist/cjs/animationDriverTypes.test-d.cjs +34 -17
  8. package/dist/cjs/animationDriverTypes.test-d.native.js +34 -17
  9. package/dist/cjs/animationDriverTypes.test-d.native.js.map +1 -1
  10. package/dist/cjs/config.cjs +128 -77
  11. package/dist/cjs/config.native.js +150 -108
  12. package/dist/cjs/config.native.js.map +1 -1
  13. package/dist/cjs/constants/accessibilityDirectMap.cjs +17 -15
  14. package/dist/cjs/constants/accessibilityDirectMap.native.js +17 -15
  15. package/dist/cjs/constants/accessibilityDirectMap.native.js.map +1 -1
  16. package/dist/cjs/constants/constants.cjs +18 -16
  17. package/dist/cjs/constants/constants.native.js +18 -16
  18. package/dist/cjs/constants/constants.native.js.map +1 -1
  19. package/dist/cjs/constants/isDevTools.cjs +18 -14
  20. package/dist/cjs/constants/isDevTools.native.js +18 -14
  21. package/dist/cjs/constants/isDevTools.native.js.map +1 -1
  22. package/dist/cjs/contexts/ComponentContext.cjs +24 -20
  23. package/dist/cjs/contexts/ComponentContext.native.js +25 -23
  24. package/dist/cjs/contexts/ComponentContext.native.js.map +1 -1
  25. package/dist/cjs/contexts/GroupContext.cjs +12 -10
  26. package/dist/cjs/contexts/GroupContext.native.js +14 -12
  27. package/dist/cjs/contexts/GroupContext.native.js.map +1 -1
  28. package/dist/cjs/createComponent.cjs +1147 -653
  29. package/dist/cjs/createComponent.native.js +1209 -682
  30. package/dist/cjs/createComponent.native.js.map +1 -1
  31. package/dist/cjs/createFont.cjs +33 -27
  32. package/dist/cjs/createFont.native.js +35 -32
  33. package/dist/cjs/createFont.native.js.map +1 -1
  34. package/dist/cjs/createGui.cjs +177 -128
  35. package/dist/cjs/createGui.native.js +220 -167
  36. package/dist/cjs/createGui.native.js.map +1 -1
  37. package/dist/cjs/createShorthands.cjs +12 -10
  38. package/dist/cjs/createShorthands.native.js +12 -10
  39. package/dist/cjs/createShorthands.native.js.map +1 -1
  40. package/dist/cjs/createTokens.cjs +13 -11
  41. package/dist/cjs/createTokens.native.js +14 -12
  42. package/dist/cjs/createTokens.native.js.map +1 -1
  43. package/dist/cjs/createVariable.cjs +58 -32
  44. package/dist/cjs/createVariable.native.js +68 -43
  45. package/dist/cjs/createVariable.native.js.map +1 -1
  46. package/dist/cjs/createVariables.cjs +55 -49
  47. package/dist/cjs/createVariables.native.js +57 -51
  48. package/dist/cjs/createVariables.native.js.map +1 -1
  49. package/dist/cjs/defaultComponentState.cjs +29 -27
  50. package/dist/cjs/defaultComponentState.native.js +29 -27
  51. package/dist/cjs/defaultComponentState.native.js.map +1 -1
  52. package/dist/cjs/eventHandling.cjs +15 -13
  53. package/dist/cjs/eventHandling.native.js +128 -87
  54. package/dist/cjs/eventHandling.native.js.map +1 -1
  55. package/dist/cjs/helpers/consoleLog.native.js +14 -12
  56. package/dist/cjs/helpers/consoleLog.native.js.map +1 -1
  57. package/dist/cjs/helpers/createDesignSystem.cjs +93 -76
  58. package/dist/cjs/helpers/createDesignSystem.native.js +178 -106
  59. package/dist/cjs/helpers/createDesignSystem.native.js.map +1 -1
  60. package/dist/cjs/helpers/createMediaStyle.cjs +87 -60
  61. package/dist/cjs/helpers/createMediaStyle.native.js +93 -67
  62. package/dist/cjs/helpers/createMediaStyle.native.js.map +1 -1
  63. package/dist/cjs/helpers/createStyledContext.cjs +80 -61
  64. package/dist/cjs/helpers/createStyledContext.native.js +89 -73
  65. package/dist/cjs/helpers/createStyledContext.native.js.map +1 -1
  66. package/dist/cjs/helpers/defaultAnimationDriver.cjs +29 -26
  67. package/dist/cjs/helpers/defaultAnimationDriver.native.js +45 -40
  68. package/dist/cjs/helpers/defaultAnimationDriver.native.js.map +1 -1
  69. package/dist/cjs/helpers/defaultOffset.cjs +12 -10
  70. package/dist/cjs/helpers/defaultOffset.native.js +12 -10
  71. package/dist/cjs/helpers/defaultOffset.native.js.map +1 -1
  72. package/dist/cjs/helpers/expandStyle.cjs +109 -44
  73. package/dist/cjs/helpers/expandStyle.native.js +130 -88
  74. package/dist/cjs/helpers/expandStyle.native.js.map +1 -1
  75. package/dist/cjs/helpers/expandStyles.cjs +37 -23
  76. package/dist/cjs/helpers/expandStyles.native.js +36 -24
  77. package/dist/cjs/helpers/expandStyles.native.js.map +1 -1
  78. package/dist/cjs/helpers/getCSSStylesAtomic.cjs +108 -70
  79. package/dist/cjs/helpers/getCSSStylesAtomic.native.js +17 -15
  80. package/dist/cjs/helpers/getCSSStylesAtomic.native.js.map +1 -1
  81. package/dist/cjs/helpers/getDefaultProps.cjs +24 -19
  82. package/dist/cjs/helpers/getDefaultProps.native.js +27 -22
  83. package/dist/cjs/helpers/getDefaultProps.native.js.map +1 -1
  84. package/dist/cjs/helpers/getDynamicVal.cjs +32 -27
  85. package/dist/cjs/helpers/getDynamicVal.native.js +37 -32
  86. package/dist/cjs/helpers/getDynamicVal.native.js.map +1 -1
  87. package/dist/cjs/helpers/getExpandedShorthands.cjs +15 -11
  88. package/dist/cjs/helpers/getExpandedShorthands.native.js +17 -13
  89. package/dist/cjs/helpers/getExpandedShorthands.native.js.map +1 -1
  90. package/dist/cjs/helpers/getFontLanguage.cjs +12 -10
  91. package/dist/cjs/helpers/getFontLanguage.native.js +12 -10
  92. package/dist/cjs/helpers/getFontLanguage.native.js.map +1 -1
  93. package/dist/cjs/helpers/getGroupPropParts.cjs +27 -18
  94. package/dist/cjs/helpers/getGroupPropParts.native.js +28 -19
  95. package/dist/cjs/helpers/getGroupPropParts.native.js.map +1 -1
  96. package/dist/cjs/helpers/getShorthandValue.cjs +16 -11
  97. package/dist/cjs/helpers/getShorthandValue.native.js +19 -17
  98. package/dist/cjs/helpers/getShorthandValue.native.js.map +1 -1
  99. package/dist/cjs/helpers/getSplitStyles.cjs +982 -455
  100. package/dist/cjs/helpers/getSplitStyles.native.js +1139 -572
  101. package/dist/cjs/helpers/getSplitStyles.native.js.map +1 -1
  102. package/dist/cjs/helpers/getThemeCSSRules.cjs +103 -89
  103. package/dist/cjs/helpers/getThemeCSSRules.native.js +12 -10
  104. package/dist/cjs/helpers/getThemeCSSRules.native.js.map +1 -1
  105. package/dist/cjs/helpers/getTokenForKey.cjs +114 -45
  106. package/dist/cjs/helpers/getTokenForKey.native.js +126 -66
  107. package/dist/cjs/helpers/getTokenForKey.native.js.map +1 -1
  108. package/dist/cjs/helpers/getVariantExtras.cjs +56 -44
  109. package/dist/cjs/helpers/getVariantExtras.native.js +56 -44
  110. package/dist/cjs/helpers/getVariantExtras.native.js.map +1 -1
  111. package/dist/cjs/helpers/insertStyleRule.cjs +168 -82
  112. package/dist/cjs/helpers/insertStyleRule.native.js +303 -195
  113. package/dist/cjs/helpers/insertStyleRule.native.js.map +1 -1
  114. package/dist/cjs/helpers/isActivePlatform.cjs +33 -14
  115. package/dist/cjs/helpers/isActivePlatform.native.js +33 -14
  116. package/dist/cjs/helpers/isActivePlatform.native.js.map +1 -1
  117. package/dist/cjs/helpers/isActiveTheme.cjs +14 -11
  118. package/dist/cjs/helpers/isActiveTheme.native.js +14 -11
  119. package/dist/cjs/helpers/isActiveTheme.native.js.map +1 -1
  120. package/dist/cjs/helpers/isGuiComponent.cjs +14 -12
  121. package/dist/cjs/helpers/isGuiComponent.native.js +14 -12
  122. package/dist/cjs/helpers/isGuiComponent.native.js.map +1 -1
  123. package/dist/cjs/helpers/isGuiElement.cjs +29 -25
  124. package/dist/cjs/helpers/isGuiElement.native.js +29 -27
  125. package/dist/cjs/helpers/isGuiElement.native.js.map +1 -1
  126. package/dist/cjs/helpers/isObj.cjs +13 -11
  127. package/dist/cjs/helpers/isObj.native.js +14 -12
  128. package/dist/cjs/helpers/isObj.native.js.map +1 -1
  129. package/dist/cjs/helpers/log.cjs +21 -17
  130. package/dist/cjs/helpers/log.native.js +25 -19
  131. package/dist/cjs/helpers/log.native.js.map +1 -1
  132. package/dist/cjs/helpers/mainThreadPressEvents.cjs +13 -11
  133. package/dist/cjs/helpers/mainThreadPressEvents.native.js +111 -26
  134. package/dist/cjs/helpers/mainThreadPressEvents.native.js.map +1 -1
  135. package/dist/cjs/helpers/matchMedia.cjs +15 -13
  136. package/dist/cjs/helpers/matchMedia.native.js +34 -19
  137. package/dist/cjs/helpers/matchMedia.native.js.map +1 -1
  138. package/dist/cjs/helpers/mediaObjectToString.cjs +30 -14
  139. package/dist/cjs/helpers/mediaObjectToString.native.js +28 -14
  140. package/dist/cjs/helpers/mediaObjectToString.native.js.map +1 -1
  141. package/dist/cjs/helpers/mediaState.cjs +21 -17
  142. package/dist/cjs/helpers/mediaState.native.js +30 -26
  143. package/dist/cjs/helpers/mediaState.native.js.map +1 -1
  144. package/dist/cjs/helpers/mergeProps.cjs +54 -30
  145. package/dist/cjs/helpers/mergeProps.native.js +55 -30
  146. package/dist/cjs/helpers/mergeProps.native.js.map +1 -1
  147. package/dist/cjs/helpers/mergeRenderElementProps.cjs +14 -11
  148. package/dist/cjs/helpers/mergeRenderElementProps.native.js +14 -11
  149. package/dist/cjs/helpers/mergeRenderElementProps.native.js.map +1 -1
  150. package/dist/cjs/helpers/mergeSlotStyleProps.cjs +31 -18
  151. package/dist/cjs/helpers/mergeSlotStyleProps.native.js +32 -19
  152. package/dist/cjs/helpers/mergeSlotStyleProps.native.js.map +1 -1
  153. package/dist/cjs/helpers/mergeVariants.cjs +28 -16
  154. package/dist/cjs/helpers/mergeVariants.native.js +30 -18
  155. package/dist/cjs/helpers/mergeVariants.native.js.map +1 -1
  156. package/dist/cjs/helpers/nativeOnlyProps.cjs +12 -10
  157. package/dist/cjs/helpers/nativeOnlyProps.native.js +12 -10
  158. package/dist/cjs/helpers/nativeOnlyProps.native.js.map +1 -1
  159. package/dist/cjs/helpers/normalizeColor.cjs +29 -17
  160. package/dist/cjs/helpers/normalizeColor.native.js +33 -30
  161. package/dist/cjs/helpers/normalizeColor.native.js.map +1 -1
  162. package/dist/cjs/helpers/normalizeShadow.cjs +12 -10
  163. package/dist/cjs/helpers/normalizeShadow.native.js +25 -23
  164. package/dist/cjs/helpers/normalizeShadow.native.js.map +1 -1
  165. package/dist/cjs/helpers/normalizeStyle.cjs +27 -20
  166. package/dist/cjs/helpers/normalizeStyle.native.js +34 -28
  167. package/dist/cjs/helpers/normalizeStyle.native.js.map +1 -1
  168. package/dist/cjs/helpers/normalizeStylePropKeys.cjs +12 -10
  169. package/dist/cjs/helpers/normalizeStylePropKeys.native.js +22 -20
  170. package/dist/cjs/helpers/normalizeStylePropKeys.native.js.map +1 -1
  171. package/dist/cjs/helpers/normalizeValueWithProperty.cjs +33 -17
  172. package/dist/cjs/helpers/normalizeValueWithProperty.native.js +34 -18
  173. package/dist/cjs/helpers/normalizeValueWithProperty.native.js.map +1 -1
  174. package/dist/cjs/helpers/objectIdentityKey.cjs +19 -12
  175. package/dist/cjs/helpers/objectIdentityKey.native.js +22 -15
  176. package/dist/cjs/helpers/objectIdentityKey.native.js.map +1 -1
  177. package/dist/cjs/helpers/parseBorderShorthand.cjs +15 -11
  178. package/dist/cjs/helpers/parseBorderShorthand.native.js +52 -24
  179. package/dist/cjs/helpers/parseBorderShorthand.native.js.map +1 -1
  180. package/dist/cjs/helpers/parseNativeStyle.cjs +81 -47
  181. package/dist/cjs/helpers/parseNativeStyle.native.js +129 -90
  182. package/dist/cjs/helpers/parseNativeStyle.native.js.map +1 -1
  183. package/dist/cjs/helpers/parseOutlineShorthand.cjs +15 -11
  184. package/dist/cjs/helpers/parseOutlineShorthand.native.js +46 -24
  185. package/dist/cjs/helpers/parseOutlineShorthand.native.js.map +1 -1
  186. package/dist/cjs/helpers/platformResolveValue.cjs +16 -11
  187. package/dist/cjs/helpers/platformResolveValue.native.js +48 -36
  188. package/dist/cjs/helpers/platformResolveValue.native.js.map +1 -1
  189. package/dist/cjs/helpers/pointerEvents.cjs +12 -10
  190. package/dist/cjs/helpers/pointerEvents.native.js +124 -89
  191. package/dist/cjs/helpers/pointerEvents.native.js.map +1 -1
  192. package/dist/cjs/helpers/propMapper.cjs +257 -130
  193. package/dist/cjs/helpers/propMapper.native.js +341 -228
  194. package/dist/cjs/helpers/propMapper.native.js.map +1 -1
  195. package/dist/cjs/helpers/proxyThemeToParents.cjs +33 -19
  196. package/dist/cjs/helpers/proxyThemeToParents.native.js +84 -55
  197. package/dist/cjs/helpers/proxyThemeToParents.native.js.map +1 -1
  198. package/dist/cjs/helpers/proxyThemeVariables.cjs +13 -11
  199. package/dist/cjs/helpers/proxyThemeVariables.native.js +13 -11
  200. package/dist/cjs/helpers/proxyThemeVariables.native.js.map +1 -1
  201. package/dist/cjs/helpers/pseudoDescriptors.cjs +60 -58
  202. package/dist/cjs/helpers/pseudoDescriptors.native.js +60 -58
  203. package/dist/cjs/helpers/pseudoDescriptors.native.js.map +1 -1
  204. package/dist/cjs/helpers/pseudoTransitions.cjs +50 -32
  205. package/dist/cjs/helpers/pseudoTransitions.native.js +52 -36
  206. package/dist/cjs/helpers/pseudoTransitions.native.js.map +1 -1
  207. package/dist/cjs/helpers/registerCSSVariable.cjs +55 -38
  208. package/dist/cjs/helpers/registerCSSVariable.native.js +60 -45
  209. package/dist/cjs/helpers/registerCSSVariable.native.js.map +1 -1
  210. package/dist/cjs/helpers/resolveAnimationDriver.cjs +20 -11
  211. package/dist/cjs/helpers/resolveAnimationDriver.native.js +20 -11
  212. package/dist/cjs/helpers/resolveAnimationDriver.native.js.map +1 -1
  213. package/dist/cjs/helpers/resolveCompoundTokens.cjs +21 -17
  214. package/dist/cjs/helpers/resolveCompoundTokens.native.js +24 -20
  215. package/dist/cjs/helpers/resolveCompoundTokens.native.js.map +1 -1
  216. package/dist/cjs/helpers/resolveRem.cjs +13 -11
  217. package/dist/cjs/helpers/resolveRem.native.js +31 -22
  218. package/dist/cjs/helpers/resolveRem.native.js.map +1 -1
  219. package/dist/cjs/helpers/resolveSafeArea.cjs +12 -10
  220. package/dist/cjs/helpers/resolveSafeArea.native.js +18 -14
  221. package/dist/cjs/helpers/resolveSafeArea.native.js.map +1 -1
  222. package/dist/cjs/helpers/setElementProps.cjs +12 -10
  223. package/dist/cjs/helpers/setElementProps.native.js +19 -13
  224. package/dist/cjs/helpers/setElementProps.native.js.map +1 -1
  225. package/dist/cjs/helpers/skipProps.cjs +23 -14
  226. package/dist/cjs/helpers/skipProps.native.js +39 -30
  227. package/dist/cjs/helpers/skipProps.native.js.map +1 -1
  228. package/dist/cjs/helpers/sortString.cjs +12 -10
  229. package/dist/cjs/helpers/sortString.native.js +12 -10
  230. package/dist/cjs/helpers/sortString.native.js.map +1 -1
  231. package/dist/cjs/helpers/subscribeToContextGroup.cjs +83 -55
  232. package/dist/cjs/helpers/subscribeToContextGroup.native.js +118 -92
  233. package/dist/cjs/helpers/subscribeToContextGroup.native.js.map +1 -1
  234. package/dist/cjs/helpers/themeable.cjs +75 -48
  235. package/dist/cjs/helpers/themeable.native.js +96 -70
  236. package/dist/cjs/helpers/themeable.native.js.map +1 -1
  237. package/dist/cjs/helpers/themes.cjs +27 -19
  238. package/dist/cjs/helpers/themes.native.js +27 -19
  239. package/dist/cjs/helpers/themes.native.js.map +1 -1
  240. package/dist/cjs/helpers/timer.cjs +13 -11
  241. package/dist/cjs/helpers/timer.native.js +13 -11
  242. package/dist/cjs/helpers/timer.native.js.map +1 -1
  243. package/dist/cjs/helpers/transformsToString.cjs +18 -13
  244. package/dist/cjs/helpers/transformsToString.native.js +18 -13
  245. package/dist/cjs/helpers/transformsToString.native.js.map +1 -1
  246. package/dist/cjs/helpers/useRenderElement.cjs +41 -25
  247. package/dist/cjs/helpers/useRenderElement.native.js +42 -26
  248. package/dist/cjs/helpers/useRenderElement.native.js.map +1 -1
  249. package/dist/cjs/helpers/webPropsToSkip.cjs +12 -10
  250. package/dist/cjs/helpers/webPropsToSkip.native.js +60 -58
  251. package/dist/cjs/helpers/webPropsToSkip.native.js.map +1 -1
  252. package/dist/cjs/helpers/wrapStyleTags.cjs +29 -24
  253. package/dist/cjs/helpers/wrapStyleTags.native.js +34 -13
  254. package/dist/cjs/helpers/wrapStyleTags.native.js.map +1 -1
  255. package/dist/cjs/hooks/doesRootSchemeMatchSystem.cjs +13 -11
  256. package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js +14 -12
  257. package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js.map +1 -1
  258. package/dist/cjs/hooks/getThemeProxied.cjs +89 -27
  259. package/dist/cjs/hooks/getThemeProxied.native.js +95 -60
  260. package/dist/cjs/hooks/getThemeProxied.native.js.map +1 -1
  261. package/dist/cjs/hooks/useComponentState.cjs +137 -86
  262. package/dist/cjs/hooks/useComponentState.native.js +141 -97
  263. package/dist/cjs/hooks/useComponentState.native.js.map +1 -1
  264. package/dist/cjs/hooks/useDisableSSR.cjs +12 -10
  265. package/dist/cjs/hooks/useDisableSSR.native.js +13 -11
  266. package/dist/cjs/hooks/useDisableSSR.native.js.map +1 -1
  267. package/dist/cjs/hooks/useIsTouchDevice.cjs +17 -13
  268. package/dist/cjs/hooks/useIsTouchDevice.native.js +17 -15
  269. package/dist/cjs/hooks/useIsTouchDevice.native.js.map +1 -1
  270. package/dist/cjs/hooks/useMedia.cjs +151 -93
  271. package/dist/cjs/hooks/useMedia.native.js +162 -108
  272. package/dist/cjs/hooks/useMedia.native.js.map +1 -1
  273. package/dist/cjs/hooks/useProps.cjs +83 -77
  274. package/dist/cjs/hooks/useProps.native.js +85 -79
  275. package/dist/cjs/hooks/useProps.native.js.map +1 -1
  276. package/dist/cjs/hooks/useTheme.cjs +38 -27
  277. package/dist/cjs/hooks/useTheme.native.js +39 -31
  278. package/dist/cjs/hooks/useTheme.native.js.map +1 -1
  279. package/dist/cjs/hooks/useThemeName.cjs +20 -18
  280. package/dist/cjs/hooks/useThemeName.native.js +24 -22
  281. package/dist/cjs/hooks/useThemeName.native.js.map +1 -1
  282. package/dist/cjs/hooks/useThemeState.cjs +297 -177
  283. package/dist/cjs/hooks/useThemeState.native.js +378 -245
  284. package/dist/cjs/hooks/useThemeState.native.js.map +1 -1
  285. package/dist/cjs/index.cjs +20 -18
  286. package/dist/cjs/index.native.js +20 -18
  287. package/dist/cjs/index.native.js.map +1 -1
  288. package/dist/cjs/inject-styles.cjs +27 -22
  289. package/dist/cjs/inject-styles.native.js +28 -23
  290. package/dist/cjs/inject-styles.native.js.map +1 -1
  291. package/dist/cjs/insertFont.cjs +49 -31
  292. package/dist/cjs/insertFont.native.js +54 -33
  293. package/dist/cjs/insertFont.native.js.map +1 -1
  294. package/dist/cjs/interfaces/CSSColorNames.cjs +7 -5
  295. package/dist/cjs/interfaces/CSSColorNames.native.js +7 -5
  296. package/dist/cjs/interfaces/CSSColorNames.native.js.map +1 -1
  297. package/dist/cjs/interfaces/GetRef.cjs +7 -5
  298. package/dist/cjs/interfaces/GetRef.native.js +7 -5
  299. package/dist/cjs/interfaces/GetRef.native.js.map +1 -1
  300. package/dist/cjs/interfaces/GuiComponentEvents.cjs +7 -5
  301. package/dist/cjs/interfaces/GuiComponentEvents.native.js +7 -5
  302. package/dist/cjs/interfaces/GuiComponentEvents.native.js.map +1 -1
  303. package/dist/cjs/interfaces/GuiComponentPropsBaseBase.cjs +7 -5
  304. package/dist/cjs/interfaces/GuiComponentPropsBaseBase.native.js +7 -5
  305. package/dist/cjs/interfaces/GuiComponentPropsBaseBase.native.js.map +1 -1
  306. package/dist/cjs/interfaces/RNExclusiveTypes.cjs +7 -5
  307. package/dist/cjs/interfaces/RNExclusiveTypes.native.js +7 -5
  308. package/dist/cjs/interfaces/RNExclusiveTypes.native.js.map +1 -1
  309. package/dist/cjs/setupHooks.cjs +12 -10
  310. package/dist/cjs/setupHooks.native.js +12 -10
  311. package/dist/cjs/setupHooks.native.js.map +1 -1
  312. package/dist/cjs/setupReactNative.cjs +45 -18
  313. package/dist/cjs/setupReactNative.native.js +44 -19
  314. package/dist/cjs/setupReactNative.native.js.map +1 -1
  315. package/dist/cjs/styled.cjs +121 -77
  316. package/dist/cjs/styled.native.js +125 -87
  317. package/dist/cjs/styled.native.js.map +1 -1
  318. package/dist/cjs/styledHtml.test-d.cjs +58 -27
  319. package/dist/cjs/styledHtml.test-d.native.js +58 -27
  320. package/dist/cjs/styledHtml.test-d.native.js.map +1 -1
  321. package/dist/cjs/type-utils.cjs +7 -5
  322. package/dist/cjs/type-utils.native.js +7 -5
  323. package/dist/cjs/type-utils.native.js.map +1 -1
  324. package/dist/cjs/types.cjs +7 -5
  325. package/dist/cjs/types.native.js +7 -5
  326. package/dist/cjs/types.native.js.map +1 -1
  327. package/dist/cjs/views/Configuration.cjs +28 -26
  328. package/dist/cjs/views/Configuration.native.js +39 -37
  329. package/dist/cjs/views/Configuration.native.js.map +1 -1
  330. package/dist/cjs/views/FontLanguage.cjs +22 -18
  331. package/dist/cjs/views/FontLanguage.native.js +34 -32
  332. package/dist/cjs/views/FontLanguage.native.js.map +1 -1
  333. package/dist/cjs/views/GuiProvider.cjs +54 -43
  334. package/dist/cjs/views/GuiProvider.native.js +68 -58
  335. package/dist/cjs/views/GuiProvider.native.js.map +1 -1
  336. package/dist/cjs/views/GuiRoot.cjs +45 -34
  337. package/dist/cjs/views/GuiRoot.native.js +12 -10
  338. package/dist/cjs/views/GuiRoot.native.js.map +1 -1
  339. package/dist/cjs/views/Slot.cjs +55 -37
  340. package/dist/cjs/views/Slot.native.js +57 -41
  341. package/dist/cjs/views/Slot.native.js.map +1 -1
  342. package/dist/cjs/views/Text.cjs +41 -31
  343. package/dist/cjs/views/Text.native.js +40 -32
  344. package/dist/cjs/views/Text.native.js.map +1 -1
  345. package/dist/cjs/views/Theme.cjs +137 -101
  346. package/dist/cjs/views/Theme.native.js +147 -114
  347. package/dist/cjs/views/Theme.native.js.map +1 -1
  348. package/dist/cjs/views/ThemeDebug.cjs +39 -18
  349. package/dist/cjs/views/ThemeDebug.native.js +13 -11
  350. package/dist/cjs/views/ThemeDebug.native.js.map +1 -1
  351. package/dist/cjs/views/ThemeProvider.cjs +29 -24
  352. package/dist/cjs/views/ThemeProvider.native.js +42 -29
  353. package/dist/cjs/views/ThemeProvider.native.js.map +1 -1
  354. package/dist/cjs/views/View.cjs +15 -13
  355. package/dist/cjs/views/View.native.js +18 -16
  356. package/dist/cjs/views/View.native.js.map +1 -1
  357. package/dist/esm/Gui.mjs +29 -27
  358. package/dist/esm/Gui.mjs.map +1 -1
  359. package/dist/esm/Gui.native.js +67 -53
  360. package/dist/esm/Gui.native.js.map +1 -1
  361. package/dist/esm/_withStableStyle.mjs +22 -14
  362. package/dist/esm/_withStableStyle.mjs.map +1 -1
  363. package/dist/esm/_withStableStyle.native.js +26 -23
  364. package/dist/esm/_withStableStyle.native.js.map +1 -1
  365. package/dist/esm/animationDriverTypes.test-d.mjs +34 -17
  366. package/dist/esm/animationDriverTypes.test-d.mjs.map +1 -1
  367. package/dist/esm/animationDriverTypes.test-d.native.js +34 -17
  368. package/dist/esm/animationDriverTypes.test-d.native.js.map +1 -1
  369. package/dist/esm/config.mjs +114 -65
  370. package/dist/esm/config.mjs.map +1 -1
  371. package/dist/esm/config.native.js +136 -96
  372. package/dist/esm/config.native.js.map +1 -1
  373. package/dist/esm/constants/accessibilityDirectMap.mjs +5 -5
  374. package/dist/esm/constants/accessibilityDirectMap.mjs.map +1 -1
  375. package/dist/esm/constants/accessibilityDirectMap.native.js +5 -5
  376. package/dist/esm/constants/accessibilityDirectMap.native.js.map +1 -1
  377. package/dist/esm/constants/constants.mjs +6 -6
  378. package/dist/esm/constants/constants.mjs.map +1 -1
  379. package/dist/esm/constants/constants.native.js +6 -6
  380. package/dist/esm/constants/constants.native.js.map +1 -1
  381. package/dist/esm/constants/isDevTools.mjs +6 -4
  382. package/dist/esm/constants/isDevTools.mjs.map +1 -1
  383. package/dist/esm/constants/isDevTools.native.js +6 -4
  384. package/dist/esm/constants/isDevTools.native.js.map +1 -1
  385. package/dist/esm/contexts/ComponentContext.mjs +10 -8
  386. package/dist/esm/contexts/ComponentContext.mjs.map +1 -1
  387. package/dist/esm/contexts/ComponentContext.native.js +10 -10
  388. package/dist/esm/contexts/ComponentContext.native.js.map +1 -1
  389. package/dist/esm/createComponent.mjs +1090 -598
  390. package/dist/esm/createComponent.mjs.map +1 -1
  391. package/dist/esm/createComponent.native.js +1156 -630
  392. package/dist/esm/createComponent.native.js.map +1 -1
  393. package/dist/esm/createFont.mjs +21 -17
  394. package/dist/esm/createFont.mjs.map +1 -1
  395. package/dist/esm/createFont.native.js +23 -22
  396. package/dist/esm/createFont.native.js.map +1 -1
  397. package/dist/esm/createGui.mjs +154 -107
  398. package/dist/esm/createGui.mjs.map +1 -1
  399. package/dist/esm/createGui.native.js +197 -146
  400. package/dist/esm/createGui.native.js.map +1 -1
  401. package/dist/esm/createTokens.mjs +1 -1
  402. package/dist/esm/createTokens.mjs.map +1 -1
  403. package/dist/esm/createTokens.native.js +2 -2
  404. package/dist/esm/createTokens.native.js.map +1 -1
  405. package/dist/esm/createVariable.mjs +43 -19
  406. package/dist/esm/createVariable.mjs.map +1 -1
  407. package/dist/esm/createVariable.native.js +53 -30
  408. package/dist/esm/createVariable.native.js.map +1 -1
  409. package/dist/esm/createVariables.mjs +40 -36
  410. package/dist/esm/createVariables.mjs.map +1 -1
  411. package/dist/esm/createVariables.native.js +42 -38
  412. package/dist/esm/createVariables.native.js.map +1 -1
  413. package/dist/esm/defaultComponentState.mjs +17 -17
  414. package/dist/esm/defaultComponentState.mjs.map +1 -1
  415. package/dist/esm/defaultComponentState.native.js +17 -17
  416. package/dist/esm/defaultComponentState.native.js.map +1 -1
  417. package/dist/esm/eventHandling.mjs +3 -3
  418. package/dist/esm/eventHandling.mjs.map +1 -1
  419. package/dist/esm/eventHandling.native.js +100 -61
  420. package/dist/esm/eventHandling.native.js.map +1 -1
  421. package/dist/esm/helpers/consoleLog.native.js +2 -2
  422. package/dist/esm/helpers/consoleLog.native.js.map +1 -1
  423. package/dist/esm/helpers/createDesignSystem.mjs +76 -61
  424. package/dist/esm/helpers/createDesignSystem.mjs.map +1 -1
  425. package/dist/esm/helpers/createDesignSystem.native.js +163 -92
  426. package/dist/esm/helpers/createDesignSystem.native.js.map +1 -1
  427. package/dist/esm/helpers/createMediaStyle.mjs +72 -47
  428. package/dist/esm/helpers/createMediaStyle.mjs.map +1 -1
  429. package/dist/esm/helpers/createMediaStyle.native.js +78 -54
  430. package/dist/esm/helpers/createMediaStyle.native.js.map +1 -1
  431. package/dist/esm/helpers/createStyledContext.mjs +52 -35
  432. package/dist/esm/helpers/createStyledContext.mjs.map +1 -1
  433. package/dist/esm/helpers/createStyledContext.native.js +56 -42
  434. package/dist/esm/helpers/createStyledContext.native.js.map +1 -1
  435. package/dist/esm/helpers/defaultAnimationDriver.mjs +17 -16
  436. package/dist/esm/helpers/defaultAnimationDriver.mjs.map +1 -1
  437. package/dist/esm/helpers/defaultAnimationDriver.native.js +33 -30
  438. package/dist/esm/helpers/defaultAnimationDriver.native.js.map +1 -1
  439. package/dist/esm/helpers/expandStyle.mjs +93 -30
  440. package/dist/esm/helpers/expandStyle.mjs.map +1 -1
  441. package/dist/esm/helpers/expandStyle.native.js +110 -69
  442. package/dist/esm/helpers/expandStyle.native.js.map +1 -1
  443. package/dist/esm/helpers/expandStyles.mjs +23 -11
  444. package/dist/esm/helpers/expandStyles.mjs.map +1 -1
  445. package/dist/esm/helpers/expandStyles.native.js +22 -12
  446. package/dist/esm/helpers/expandStyles.native.js.map +1 -1
  447. package/dist/esm/helpers/getCSSStylesAtomic.mjs +88 -52
  448. package/dist/esm/helpers/getCSSStylesAtomic.mjs.map +1 -1
  449. package/dist/esm/helpers/getCSSStylesAtomic.native.js +5 -5
  450. package/dist/esm/helpers/getCSSStylesAtomic.native.js.map +1 -1
  451. package/dist/esm/helpers/getDefaultProps.mjs +12 -9
  452. package/dist/esm/helpers/getDefaultProps.mjs.map +1 -1
  453. package/dist/esm/helpers/getDefaultProps.native.js +14 -11
  454. package/dist/esm/helpers/getDefaultProps.native.js.map +1 -1
  455. package/dist/esm/helpers/getDynamicVal.mjs +20 -17
  456. package/dist/esm/helpers/getDynamicVal.mjs.map +1 -1
  457. package/dist/esm/helpers/getDynamicVal.native.js +25 -22
  458. package/dist/esm/helpers/getDynamicVal.native.js.map +1 -1
  459. package/dist/esm/helpers/getExpandedShorthands.mjs +3 -1
  460. package/dist/esm/helpers/getExpandedShorthands.mjs.map +1 -1
  461. package/dist/esm/helpers/getExpandedShorthands.native.js +5 -3
  462. package/dist/esm/helpers/getExpandedShorthands.native.js.map +1 -1
  463. package/dist/esm/helpers/getGroupPropParts.mjs +13 -6
  464. package/dist/esm/helpers/getGroupPropParts.mjs.map +1 -1
  465. package/dist/esm/helpers/getGroupPropParts.native.js +14 -7
  466. package/dist/esm/helpers/getGroupPropParts.native.js.map +1 -1
  467. package/dist/esm/helpers/getShorthandValue.mjs +4 -1
  468. package/dist/esm/helpers/getShorthandValue.mjs.map +1 -1
  469. package/dist/esm/helpers/getShorthandValue.native.js +6 -6
  470. package/dist/esm/helpers/getShorthandValue.native.js.map +1 -1
  471. package/dist/esm/helpers/getSplitStyles.mjs +938 -413
  472. package/dist/esm/helpers/getSplitStyles.mjs.map +1 -1
  473. package/dist/esm/helpers/getSplitStyles.native.js +1097 -531
  474. package/dist/esm/helpers/getSplitStyles.native.js.map +1 -1
  475. package/dist/esm/helpers/getThemeCSSRules.mjs +85 -73
  476. package/dist/esm/helpers/getThemeCSSRules.mjs.map +1 -1
  477. package/dist/esm/helpers/getTokenForKey.mjs +97 -30
  478. package/dist/esm/helpers/getTokenForKey.mjs.map +1 -1
  479. package/dist/esm/helpers/getTokenForKey.native.js +108 -50
  480. package/dist/esm/helpers/getTokenForKey.native.js.map +1 -1
  481. package/dist/esm/helpers/getVariantExtras.mjs +42 -32
  482. package/dist/esm/helpers/getVariantExtras.mjs.map +1 -1
  483. package/dist/esm/helpers/getVariantExtras.native.js +42 -32
  484. package/dist/esm/helpers/getVariantExtras.native.js.map +1 -1
  485. package/dist/esm/helpers/insertStyleRule.mjs +154 -70
  486. package/dist/esm/helpers/insertStyleRule.mjs.map +1 -1
  487. package/dist/esm/helpers/insertStyleRule.native.js +289 -183
  488. package/dist/esm/helpers/insertStyleRule.native.js.map +1 -1
  489. package/dist/esm/helpers/isActivePlatform.mjs +22 -6
  490. package/dist/esm/helpers/isActivePlatform.mjs.map +1 -1
  491. package/dist/esm/helpers/isActivePlatform.native.js +22 -6
  492. package/dist/esm/helpers/isActivePlatform.native.js.map +1 -1
  493. package/dist/esm/helpers/isActiveTheme.mjs +2 -1
  494. package/dist/esm/helpers/isActiveTheme.mjs.map +1 -1
  495. package/dist/esm/helpers/isActiveTheme.native.js +2 -1
  496. package/dist/esm/helpers/isActiveTheme.native.js.map +1 -1
  497. package/dist/esm/helpers/isGuiComponent.mjs +2 -2
  498. package/dist/esm/helpers/isGuiComponent.mjs.map +1 -1
  499. package/dist/esm/helpers/isGuiComponent.native.js +2 -2
  500. package/dist/esm/helpers/isGuiComponent.native.js.map +1 -1
  501. package/dist/esm/helpers/isGuiElement.mjs +3 -1
  502. package/dist/esm/helpers/isGuiElement.mjs.map +1 -1
  503. package/dist/esm/helpers/isGuiElement.native.js.map +1 -1
  504. package/dist/esm/helpers/isObj.mjs +1 -1
  505. package/dist/esm/helpers/isObj.mjs.map +1 -1
  506. package/dist/esm/helpers/isObj.native.js +2 -2
  507. package/dist/esm/helpers/log.mjs +9 -7
  508. package/dist/esm/helpers/log.mjs.map +1 -1
  509. package/dist/esm/helpers/log.native.js +13 -9
  510. package/dist/esm/helpers/log.native.js.map +1 -1
  511. package/dist/esm/helpers/mainThreadPressEvents.mjs +1 -1
  512. package/dist/esm/helpers/mainThreadPressEvents.mjs.map +1 -1
  513. package/dist/esm/helpers/mainThreadPressEvents.native.js +99 -16
  514. package/dist/esm/helpers/mainThreadPressEvents.native.js.map +1 -1
  515. package/dist/esm/helpers/matchMedia.mjs +3 -3
  516. package/dist/esm/helpers/matchMedia.mjs.map +1 -1
  517. package/dist/esm/helpers/matchMedia.native.js +22 -9
  518. package/dist/esm/helpers/matchMedia.native.js.map +1 -1
  519. package/dist/esm/helpers/mediaObjectToString.mjs +18 -4
  520. package/dist/esm/helpers/mediaObjectToString.mjs.map +1 -1
  521. package/dist/esm/helpers/mediaObjectToString.native.js +16 -4
  522. package/dist/esm/helpers/mediaObjectToString.native.js.map +1 -1
  523. package/dist/esm/helpers/mediaState.mjs +9 -7
  524. package/dist/esm/helpers/mediaState.mjs.map +1 -1
  525. package/dist/esm/helpers/mediaState.native.js +18 -16
  526. package/dist/esm/helpers/mediaState.native.js.map +1 -1
  527. package/dist/esm/helpers/mergeProps.mjs +42 -20
  528. package/dist/esm/helpers/mergeProps.mjs.map +1 -1
  529. package/dist/esm/helpers/mergeProps.native.js +43 -20
  530. package/dist/esm/helpers/mergeProps.native.js.map +1 -1
  531. package/dist/esm/helpers/mergeRenderElementProps.mjs +2 -1
  532. package/dist/esm/helpers/mergeRenderElementProps.mjs.map +1 -1
  533. package/dist/esm/helpers/mergeRenderElementProps.native.js +2 -1
  534. package/dist/esm/helpers/mergeRenderElementProps.native.js.map +1 -1
  535. package/dist/esm/helpers/mergeSlotStyleProps.mjs +17 -6
  536. package/dist/esm/helpers/mergeSlotStyleProps.mjs.map +1 -1
  537. package/dist/esm/helpers/mergeSlotStyleProps.native.js +17 -6
  538. package/dist/esm/helpers/mergeSlotStyleProps.native.js.map +1 -1
  539. package/dist/esm/helpers/mergeVariants.mjs +16 -6
  540. package/dist/esm/helpers/mergeVariants.mjs.map +1 -1
  541. package/dist/esm/helpers/mergeVariants.native.js +18 -8
  542. package/dist/esm/helpers/mergeVariants.native.js.map +1 -1
  543. package/dist/esm/helpers/normalizeColor.mjs +17 -7
  544. package/dist/esm/helpers/normalizeColor.mjs.map +1 -1
  545. package/dist/esm/helpers/normalizeColor.native.js +18 -17
  546. package/dist/esm/helpers/normalizeColor.native.js.map +1 -1
  547. package/dist/esm/helpers/normalizeShadow.native.js +11 -11
  548. package/dist/esm/helpers/normalizeShadow.native.js.map +1 -1
  549. package/dist/esm/helpers/normalizeStyle.mjs +10 -5
  550. package/dist/esm/helpers/normalizeStyle.mjs.map +1 -1
  551. package/dist/esm/helpers/normalizeStyle.native.js +17 -13
  552. package/dist/esm/helpers/normalizeStyle.native.js.map +1 -1
  553. package/dist/esm/helpers/normalizeStylePropKeys.native.js +10 -10
  554. package/dist/esm/helpers/normalizeValueWithProperty.mjs +19 -5
  555. package/dist/esm/helpers/normalizeValueWithProperty.mjs.map +1 -1
  556. package/dist/esm/helpers/normalizeValueWithProperty.native.js +20 -6
  557. package/dist/esm/helpers/normalizeValueWithProperty.native.js.map +1 -1
  558. package/dist/esm/helpers/objectIdentityKey.mjs +7 -2
  559. package/dist/esm/helpers/objectIdentityKey.mjs.map +1 -1
  560. package/dist/esm/helpers/objectIdentityKey.native.js +10 -5
  561. package/dist/esm/helpers/objectIdentityKey.native.js.map +1 -1
  562. package/dist/esm/helpers/parseBorderShorthand.mjs +3 -1
  563. package/dist/esm/helpers/parseBorderShorthand.mjs.map +1 -1
  564. package/dist/esm/helpers/parseBorderShorthand.native.js +40 -14
  565. package/dist/esm/helpers/parseBorderShorthand.native.js.map +1 -1
  566. package/dist/esm/helpers/parseNativeStyle.mjs +69 -37
  567. package/dist/esm/helpers/parseNativeStyle.mjs.map +1 -1
  568. package/dist/esm/helpers/parseNativeStyle.native.js +117 -80
  569. package/dist/esm/helpers/parseNativeStyle.native.js.map +1 -1
  570. package/dist/esm/helpers/parseOutlineShorthand.mjs +3 -1
  571. package/dist/esm/helpers/parseOutlineShorthand.mjs.map +1 -1
  572. package/dist/esm/helpers/parseOutlineShorthand.native.js +34 -14
  573. package/dist/esm/helpers/parseOutlineShorthand.native.js.map +1 -1
  574. package/dist/esm/helpers/platformResolveValue.mjs +4 -1
  575. package/dist/esm/helpers/platformResolveValue.mjs.map +1 -1
  576. package/dist/esm/helpers/platformResolveValue.native.js +34 -24
  577. package/dist/esm/helpers/platformResolveValue.native.js.map +1 -1
  578. package/dist/esm/helpers/pointerEvents.native.js +110 -77
  579. package/dist/esm/helpers/pointerEvents.native.js.map +1 -1
  580. package/dist/esm/helpers/propMapper.mjs +232 -107
  581. package/dist/esm/helpers/propMapper.mjs.map +1 -1
  582. package/dist/esm/helpers/propMapper.native.js +316 -205
  583. package/dist/esm/helpers/propMapper.native.js.map +1 -1
  584. package/dist/esm/helpers/proxyThemeToParents.mjs +21 -9
  585. package/dist/esm/helpers/proxyThemeToParents.mjs.map +1 -1
  586. package/dist/esm/helpers/proxyThemeToParents.native.js +72 -45
  587. package/dist/esm/helpers/proxyThemeToParents.native.js.map +1 -1
  588. package/dist/esm/helpers/proxyThemeVariables.mjs +1 -1
  589. package/dist/esm/helpers/proxyThemeVariables.mjs.map +1 -1
  590. package/dist/esm/helpers/proxyThemeVariables.native.js +1 -1
  591. package/dist/esm/helpers/pseudoDescriptors.mjs +48 -48
  592. package/dist/esm/helpers/pseudoDescriptors.mjs.map +1 -1
  593. package/dist/esm/helpers/pseudoDescriptors.native.js +48 -48
  594. package/dist/esm/helpers/pseudoDescriptors.native.js.map +1 -1
  595. package/dist/esm/helpers/pseudoTransitions.mjs +38 -22
  596. package/dist/esm/helpers/pseudoTransitions.mjs.map +1 -1
  597. package/dist/esm/helpers/pseudoTransitions.native.js +40 -26
  598. package/dist/esm/helpers/pseudoTransitions.native.js.map +1 -1
  599. package/dist/esm/helpers/registerCSSVariable.mjs +42 -27
  600. package/dist/esm/helpers/registerCSSVariable.mjs.map +1 -1
  601. package/dist/esm/helpers/registerCSSVariable.native.js +46 -33
  602. package/dist/esm/helpers/registerCSSVariable.native.js.map +1 -1
  603. package/dist/esm/helpers/resolveAnimationDriver.mjs +8 -1
  604. package/dist/esm/helpers/resolveAnimationDriver.mjs.map +1 -1
  605. package/dist/esm/helpers/resolveAnimationDriver.native.js +8 -1
  606. package/dist/esm/helpers/resolveAnimationDriver.native.js.map +1 -1
  607. package/dist/esm/helpers/resolveCompoundTokens.mjs +9 -7
  608. package/dist/esm/helpers/resolveCompoundTokens.mjs.map +1 -1
  609. package/dist/esm/helpers/resolveCompoundTokens.native.js +9 -7
  610. package/dist/esm/helpers/resolveCompoundTokens.native.js.map +1 -1
  611. package/dist/esm/helpers/resolveRem.mjs +1 -1
  612. package/dist/esm/helpers/resolveRem.mjs.map +1 -1
  613. package/dist/esm/helpers/resolveRem.native.js +16 -9
  614. package/dist/esm/helpers/resolveRem.native.js.map +1 -1
  615. package/dist/esm/helpers/resolveSafeArea.native.js +6 -4
  616. package/dist/esm/helpers/resolveSafeArea.native.js.map +1 -1
  617. package/dist/esm/helpers/setElementProps.native.js +7 -3
  618. package/dist/esm/helpers/setElementProps.native.js.map +1 -1
  619. package/dist/esm/helpers/skipProps.mjs +9 -2
  620. package/dist/esm/helpers/skipProps.mjs.map +1 -1
  621. package/dist/esm/helpers/skipProps.native.js +10 -2
  622. package/dist/esm/helpers/skipProps.native.js.map +1 -1
  623. package/dist/esm/helpers/subscribeToContextGroup.mjs +68 -42
  624. package/dist/esm/helpers/subscribeToContextGroup.mjs.map +1 -1
  625. package/dist/esm/helpers/subscribeToContextGroup.native.js +103 -79
  626. package/dist/esm/helpers/subscribeToContextGroup.native.js.map +1 -1
  627. package/dist/esm/helpers/themeable.mjs +45 -20
  628. package/dist/esm/helpers/themeable.mjs.map +1 -1
  629. package/dist/esm/helpers/themeable.native.js +68 -44
  630. package/dist/esm/helpers/themeable.native.js.map +1 -1
  631. package/dist/esm/helpers/themes.mjs +15 -9
  632. package/dist/esm/helpers/themes.mjs.map +1 -1
  633. package/dist/esm/helpers/themes.native.js +15 -9
  634. package/dist/esm/helpers/themes.native.js.map +1 -1
  635. package/dist/esm/helpers/timer.mjs +1 -1
  636. package/dist/esm/helpers/timer.native.js +1 -1
  637. package/dist/esm/helpers/transformsToString.mjs +6 -3
  638. package/dist/esm/helpers/transformsToString.mjs.map +1 -1
  639. package/dist/esm/helpers/transformsToString.native.js +6 -3
  640. package/dist/esm/helpers/transformsToString.native.js.map +1 -1
  641. package/dist/esm/helpers/useRenderElement.mjs +26 -12
  642. package/dist/esm/helpers/useRenderElement.mjs.map +1 -1
  643. package/dist/esm/helpers/useRenderElement.native.js +27 -13
  644. package/dist/esm/helpers/useRenderElement.native.js.map +1 -1
  645. package/dist/esm/helpers/webPropsToSkip.native.js +46 -46
  646. package/dist/esm/helpers/webPropsToSkip.native.js.map +1 -1
  647. package/dist/esm/helpers/wrapStyleTags.mjs +15 -12
  648. package/dist/esm/helpers/wrapStyleTags.mjs.map +1 -1
  649. package/dist/esm/helpers/wrapStyleTags.native.js +22 -1
  650. package/dist/esm/helpers/wrapStyleTags.native.js.map +1 -1
  651. package/dist/esm/hooks/doesRootSchemeMatchSystem.mjs +1 -1
  652. package/dist/esm/hooks/getThemeProxied.mjs +72 -12
  653. package/dist/esm/hooks/getThemeProxied.mjs.map +1 -1
  654. package/dist/esm/hooks/getThemeProxied.native.js +78 -45
  655. package/dist/esm/hooks/getThemeProxied.native.js.map +1 -1
  656. package/dist/esm/hooks/useComponentState.mjs +117 -68
  657. package/dist/esm/hooks/useComponentState.mjs.map +1 -1
  658. package/dist/esm/hooks/useComponentState.native.js +121 -79
  659. package/dist/esm/hooks/useComponentState.native.js.map +1 -1
  660. package/dist/esm/hooks/useDisableSSR.native.js +1 -1
  661. package/dist/esm/hooks/useDisableSSR.native.js.map +1 -1
  662. package/dist/esm/hooks/useIsTouchDevice.mjs +3 -1
  663. package/dist/esm/hooks/useIsTouchDevice.mjs.map +1 -1
  664. package/dist/esm/hooks/useIsTouchDevice.native.js +1 -1
  665. package/dist/esm/hooks/useIsTouchDevice.native.js.map +1 -1
  666. package/dist/esm/hooks/useMedia.mjs +131 -75
  667. package/dist/esm/hooks/useMedia.mjs.map +1 -1
  668. package/dist/esm/hooks/useMedia.native.js +142 -90
  669. package/dist/esm/hooks/useMedia.native.js.map +1 -1
  670. package/dist/esm/hooks/useProps.mjs +47 -43
  671. package/dist/esm/hooks/useProps.mjs.map +1 -1
  672. package/dist/esm/hooks/useProps.native.js +49 -45
  673. package/dist/esm/hooks/useProps.native.js.map +1 -1
  674. package/dist/esm/hooks/useTheme.mjs +23 -14
  675. package/dist/esm/hooks/useTheme.mjs.map +1 -1
  676. package/dist/esm/hooks/useTheme.native.js +24 -18
  677. package/dist/esm/hooks/useTheme.native.js.map +1 -1
  678. package/dist/esm/hooks/useThemeName.mjs +8 -8
  679. package/dist/esm/hooks/useThemeName.mjs.map +1 -1
  680. package/dist/esm/hooks/useThemeName.native.js +10 -10
  681. package/dist/esm/hooks/useThemeName.native.js.map +1 -1
  682. package/dist/esm/hooks/useThemeState.mjs +280 -162
  683. package/dist/esm/hooks/useThemeState.mjs.map +1 -1
  684. package/dist/esm/hooks/useThemeState.native.js +361 -230
  685. package/dist/esm/hooks/useThemeState.native.js.map +1 -1
  686. package/dist/esm/inject-styles.mjs +15 -12
  687. package/dist/esm/inject-styles.mjs.map +1 -1
  688. package/dist/esm/inject-styles.native.js +16 -13
  689. package/dist/esm/inject-styles.native.js.map +1 -1
  690. package/dist/esm/insertFont.mjs +32 -16
  691. package/dist/esm/insertFont.mjs.map +1 -1
  692. package/dist/esm/insertFont.native.js +38 -18
  693. package/dist/esm/insertFont.native.js.map +1 -1
  694. package/dist/esm/setupReactNative.mjs +33 -8
  695. package/dist/esm/setupReactNative.mjs.map +1 -1
  696. package/dist/esm/setupReactNative.native.js +32 -9
  697. package/dist/esm/setupReactNative.native.js.map +1 -1
  698. package/dist/esm/styled.mjs +106 -64
  699. package/dist/esm/styled.mjs.map +1 -1
  700. package/dist/esm/styled.native.js +109 -73
  701. package/dist/esm/styled.native.js.map +1 -1
  702. package/dist/esm/styledHtml.test-d.mjs +56 -25
  703. package/dist/esm/styledHtml.test-d.mjs.map +1 -1
  704. package/dist/esm/styledHtml.test-d.native.js +56 -25
  705. package/dist/esm/styledHtml.test-d.native.js.map +1 -1
  706. package/dist/esm/views/Configuration.native.js +2 -2
  707. package/dist/esm/views/Configuration.native.js.map +1 -1
  708. package/dist/esm/views/FontLanguage.mjs +10 -8
  709. package/dist/esm/views/FontLanguage.mjs.map +1 -1
  710. package/dist/esm/views/FontLanguage.native.js +7 -7
  711. package/dist/esm/views/FontLanguage.native.js.map +1 -1
  712. package/dist/esm/views/GuiProvider.mjs +19 -10
  713. package/dist/esm/views/GuiProvider.mjs.map +1 -1
  714. package/dist/esm/views/GuiProvider.native.js +33 -24
  715. package/dist/esm/views/GuiProvider.native.js.map +1 -1
  716. package/dist/esm/views/GuiRoot.mjs +17 -8
  717. package/dist/esm/views/GuiRoot.mjs.map +1 -1
  718. package/dist/esm/views/Slot.mjs +38 -22
  719. package/dist/esm/views/Slot.mjs.map +1 -1
  720. package/dist/esm/views/Slot.native.js +40 -26
  721. package/dist/esm/views/Slot.native.js.map +1 -1
  722. package/dist/esm/views/Text.mjs +27 -19
  723. package/dist/esm/views/Text.mjs.map +1 -1
  724. package/dist/esm/views/Text.native.js +26 -20
  725. package/dist/esm/views/Text.native.js.map +1 -1
  726. package/dist/esm/views/Theme.mjs +106 -72
  727. package/dist/esm/views/Theme.mjs.map +1 -1
  728. package/dist/esm/views/Theme.native.js +112 -81
  729. package/dist/esm/views/Theme.native.js.map +1 -1
  730. package/dist/esm/views/ThemeDebug.mjs +22 -3
  731. package/dist/esm/views/ThemeDebug.mjs.map +1 -1
  732. package/dist/esm/views/ThemeDebug.native.js +1 -1
  733. package/dist/esm/views/ThemeDebug.native.js.map +1 -1
  734. package/dist/esm/views/ThemeProvider.mjs +11 -8
  735. package/dist/esm/views/ThemeProvider.mjs.map +1 -1
  736. package/dist/esm/views/ThemeProvider.native.js +15 -2
  737. package/dist/esm/views/ThemeProvider.native.js.map +1 -1
  738. package/dist/esm/views/View.mjs +1 -1
  739. package/dist/esm/views/View.native.js +1 -1
  740. package/package.json +13 -13
  741. package/src/_withStableStyle.tsx +32 -25
  742. package/src/config.ts +1 -1
  743. package/src/constants/constants.ts +2 -2
  744. package/src/createComponent.tsx +69 -30
  745. package/src/createGui.ts +20 -12
  746. package/src/createTokens.ts +1 -1
  747. package/src/createVariable.ts +1 -1
  748. package/src/eventHandling.native.ts +33 -11
  749. package/src/eventHandling.ts +4 -2
  750. package/src/helpers/createDesignSystem.ts +5 -5
  751. package/src/helpers/defaultAnimationDriver.tsx +1 -0
  752. package/src/helpers/expandStyle.ts +2 -2
  753. package/src/helpers/expandStyles.ts +1 -1
  754. package/src/helpers/getSplitStyles.tsx +131 -30
  755. package/src/helpers/getThemeCSSRules.ts +6 -6
  756. package/src/helpers/getTokenForKey.ts +6 -6
  757. package/src/helpers/insertStyleRule.tsx +12 -12
  758. package/src/helpers/isActivePlatform.ts +33 -4
  759. package/src/helpers/log.ts +1 -1
  760. package/src/helpers/mainThreadPressEvents.native.ts +122 -26
  761. package/src/helpers/mainThreadPressEvents.ts +2 -1
  762. package/src/helpers/parseNativeStyle.ts +1 -1
  763. package/src/helpers/propMapper.ts +4 -4
  764. package/src/helpers/registerCSSVariable.ts +3 -3
  765. package/src/helpers/skipProps.ts +3 -3
  766. package/src/helpers/useRenderElement.tsx +1 -4
  767. package/src/helpers/wrapStyleTags.tsx +1 -1
  768. package/src/hooks/getThemeProxied.ts +1 -1
  769. package/src/hooks/useTheme.tsx +2 -2
  770. package/src/hooks/useThemeState.ts +3 -2
  771. package/src/insertFont.ts +2 -2
  772. package/src/interfaces/GuiComponentPropsBaseBase.tsx +1 -1
  773. package/src/setupReactNative.ts +1 -1
  774. package/src/styled.tsx +1 -1
  775. package/src/types.tsx +33 -25
  776. package/src/views/GuiProvider.tsx +1 -1
  777. package/src/views/Text.tsx +4 -3
  778. package/src/views/ThemeProvider.tsx +1 -1
  779. package/types/_withStableStyle.d.ts +1 -2
  780. package/types/eventHandling.d.ts +2 -2
  781. package/types/eventHandling.native.d.ts +3 -3
  782. package/types/helpers/isActivePlatform.d.ts +14 -0
  783. package/types/helpers/mainThreadPressEvents.d.ts +1 -1
  784. package/types/helpers/mainThreadPressEvents.native.d.ts +5 -6
  785. package/types/helpers/parseNativeStyle.d.ts +1 -1
  786. package/types/helpers/skipProps.d.ts +1 -1
  787. package/types/interfaces/GuiComponentPropsBaseBase.d.ts +1 -1
  788. package/types/styled.d.ts +1 -1
  789. package/types/types.d.ts +24 -17
@@ -3,198 +3,285 @@ import { useIsomorphicLayoutEffect } from "@hanzogui/constants";
3
3
  import { createContext, useCallback, useContext, useId, useSyncExternalStore } from "react";
4
4
  import { getConfig, getSetting } from "../config.native.js";
5
5
  import { MISSING_THEME_MESSAGE } from "../constants/constants.native.js";
6
- var ThemeStateContext = createContext(""),
7
- allListeners = /* @__PURE__ */new Map(),
8
- listenersByParent = {},
9
- HasRenderedOnce = /* @__PURE__ */new WeakMap(),
10
- HadTheme = /* @__PURE__ */new WeakMap(),
11
- PendingUpdate = /* @__PURE__ */new Map(),
12
- states = /* @__PURE__ */new Map(),
13
- localStates = /* @__PURE__ */new Map(),
14
- shouldForce = !1,
15
- forceUpdateThemes = function () {
16
- cacheVersion++, shouldForce = !0, allListeners.forEach(function (cb) {
17
- return cb();
18
- });
19
- },
20
- getThemeState = function (id) {
21
- return states.get(id);
22
- },
23
- cacheVersion = 0,
24
- themeNameCache = /* @__PURE__ */new Map(),
25
- themeNameCacheVer = -1,
26
- themes = null,
27
- rootThemeState = null,
28
- getRootThemeState = function () {
29
- return rootThemeState;
30
- },
31
- getThemeBaseName = function (name) {
32
- return name.replace(/^(light|dark)_/, "");
33
- },
34
- useThemeState = function (props) {
35
- "use no memo";
6
+ var ThemeStateContext = createContext("");
7
+ var allListeners = /* @__PURE__ */new Map();
8
+ var listenersByParent = {};
9
+ var HasRenderedOnce = /* @__PURE__ */new WeakMap();
10
+ var HadTheme = /* @__PURE__ */new WeakMap();
11
+ var PendingUpdate = /* @__PURE__ */new Map();
12
+ var states = /* @__PURE__ */new Map();
13
+ var localStates = /* @__PURE__ */new Map();
14
+ var shouldForce = false;
15
+ var forceUpdateThemes = function () {
16
+ cacheVersion++;
17
+ shouldForce = true;
18
+ allListeners.forEach(function (cb) {
19
+ return cb();
20
+ });
21
+ shouldForce = false;
22
+ };
23
+ var getThemeState = function (id) {
24
+ return states.get(id);
25
+ };
26
+ var cacheVersion = 0;
27
+ var themeNameCache = /* @__PURE__ */new Map();
28
+ var themeNameCacheVer = -1;
29
+ var themes = null;
30
+ var rootThemeState = null;
31
+ var getRootThemeState = function () {
32
+ return rootThemeState;
33
+ };
34
+ var getThemeBaseName = function (name) {
35
+ return name.replace(/^(light|dark)_/, "");
36
+ };
37
+ var useThemeState = function (props) {
38
+ "use no memo";
36
39
 
37
- var isRoot = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !1,
38
- keys = arguments.length > 2 ? arguments[2] : void 0,
39
- schemeKeys = arguments.length > 3 ? arguments[3] : void 0,
40
- {
41
- disable
42
- } = props,
43
- parentId = useContext(ThemeStateContext);
44
- if (!parentId && !isRoot) throw new Error(process.env.NODE_ENV === "development" ? `${MISSING_THEME_MESSAGE}
40
+ var isRoot = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false,
41
+ keys = arguments.length > 2 ? arguments[2] : void 0,
42
+ schemeKeys = arguments.length > 3 ? arguments[3] : void 0;
43
+ var {
44
+ disable
45
+ } = props;
46
+ var parentId = useContext(ThemeStateContext);
47
+ if (!parentId && !isRoot) {
48
+ throw new Error(process.env.NODE_ENV === "development" ? `${MISSING_THEME_MESSAGE}
45
49
 
46
50
  Looked for theme${props.name ? ` "${props.name}"` : ""}${props.componentName ? ` (component: ${props.componentName})` : ""}, but no parent theme context was found (parentId: ${parentId}).` : MISSING_THEME_MESSAGE);
47
- if (disable) return states.get(parentId) || {
51
+ }
52
+ if (disable) {
53
+ return states.get(parentId) || {
48
54
  id: "",
49
55
  name: "light",
50
56
  theme: getConfig().themes.light
51
57
  };
52
- var id = useId(),
53
- subscribe = useCallback(function (cb) {
54
- return listenersByParent[parentId] = listenersByParent[parentId] || /* @__PURE__ */new Set(), listenersByParent[parentId].add(id), allListeners.set(id, function () {
55
- PendingUpdate.set(id, shouldForce ? "force" : !0), cb();
56
- }), function () {
57
- allListeners.delete(id), listenersByParent[parentId].delete(id), localStates.delete(id), states.delete(id), PendingUpdate.delete(id);
58
- };
59
- }, [id, parentId]),
60
- propsKey = getPropsKey(props),
61
- getSnapshot = function () {
62
- var _keys_current,
63
- _schemeKeys_current,
64
- _keys_current1,
65
- _props_needsUpdate,
66
- local = localStates.get(id),
67
- parentState = states.get(parentId);
68
- if (local && !PendingUpdate.has(id) && parentState && local._parentName === parentState.name && local._propsKey === propsKey) return local;
69
- var isSchemeOnlyChange = isIos && getSetting("fastSchemeChange") && local && parentState && local.scheme !== parentState.scheme && getThemeBaseName(local.name) === getThemeBaseName(parentState.name),
70
- _keys_current_size,
71
- keysSize = (_keys_current_size = keys == null || (_keys_current = keys.current) === null || _keys_current === void 0 ? void 0 : _keys_current.size) !== null && _keys_current_size !== void 0 ? _keys_current_size : 0,
72
- _schemeKeys_current_size,
73
- schemeKeysSize = (_schemeKeys_current_size = schemeKeys == null || (_schemeKeys_current = schemeKeys.current) === null || _schemeKeys_current === void 0 ? void 0 : _schemeKeys_current.size) !== null && _schemeKeys_current_size !== void 0 ? _schemeKeys_current_size : 0,
74
- allKeysSchemeOptimized = schemeKeysSize === keysSize && keysSize > 0,
75
- canSkipForSchemeChange = isSchemeOnlyChange && allKeysSchemeOptimized,
76
- needsUpdate = props.passThrough ? !1 : isRoot || props.name === "light" || props.name === "dark" || props.name === null ? !0 : HasRenderedOnce.get(keys) ? canSkipForSchemeChange ? !1 : !(keys == null || (_keys_current1 = keys.current) === null || _keys_current1 === void 0) && _keys_current1.size ? !0 : (_props_needsUpdate = props.needsUpdate) === null || _props_needsUpdate === void 0 ? void 0 : _props_needsUpdate.call(props) : !0,
77
- [rerender, next] = getNextState(local, props, propsKey, isRoot, id, parentId, needsUpdate, PendingUpdate.get(id));
78
- return PendingUpdate.delete(id), (!local || rerender) && (local = {
79
- ...next
80
- }, localStates.set(id, local)), process.env.NODE_ENV === "development" && props.debug === "verbose" && (console.groupCollapsed(` ${id} getSnapshot ${rerender}`, local.name, ">", next.name), console.info({
81
- props,
82
- propsKey,
83
- isRoot,
84
- parentId,
85
- local,
86
- next,
87
- needsUpdate,
88
- isSchemeOnlyChange,
89
- allKeysSchemeOptimized,
90
- canSkipForSchemeChange
91
- }), console.groupEnd()), next !== local && (Object.assign(local, next), local.id = id), local._parentName = parentState?.name, local._propsKey = propsKey, states.set(id, next), local;
92
- };
93
- process.env.NODE_ENV === "development" && globalThis.time && globalThis.time`theme-prep-uses`;
94
- var state = useSyncExternalStore(subscribe, getSnapshot, getSnapshot);
95
- return useIsomorphicLayoutEffect(function () {
96
- if (!HasRenderedOnce.get(keys)) {
97
- HasRenderedOnce.set(keys, !0);
98
- return;
99
- }
100
- if (!propsKey) {
101
- HadTheme.get(keys) && scheduleUpdate(id), HadTheme.set(keys, !1);
102
- return;
58
+ }
59
+ var id = useId();
60
+ var subscribe = useCallback(function (cb) {
61
+ listenersByParent[parentId] = listenersByParent[parentId] || /* @__PURE__ */new Set();
62
+ listenersByParent[parentId].add(id);
63
+ allListeners.set(id, function () {
64
+ PendingUpdate.set(id, shouldForce ? "force" : true);
65
+ cb();
66
+ });
67
+ return function () {
68
+ allListeners.delete(id);
69
+ listenersByParent[parentId].delete(id);
70
+ localStates.delete(id);
71
+ states.delete(id);
72
+ PendingUpdate.delete(id);
73
+ };
74
+ }, [id, parentId]);
75
+ var propsKey = getPropsKey(props);
76
+ var getSnapshot = function () {
77
+ var _keys_current, _schemeKeys_current, _keys_current1, _props_needsUpdate;
78
+ var local = localStates.get(id);
79
+ var parentState = states.get(parentId);
80
+ if (local && !PendingUpdate.has(id)) {
81
+ if (parentState && local._parentName === parentState.name && local._propsKey === propsKey) {
82
+ return local;
103
83
  }
104
- if (process.env.NODE_ENV === "development" && props.debug === "verbose") {
105
- var _states_get;
106
- console.warn(` \xB7 useTheme(${id}) scheduleUpdate`, propsKey, (_states_get = states.get(id)) === null || _states_get === void 0 ? void 0 : _states_get.name);
84
+ }
85
+ var isSchemeOnlyChange = isIos && getSetting("fastSchemeChange") && local && parentState && local.scheme !== parentState.scheme && getThemeBaseName(local.name) === getThemeBaseName(parentState.name);
86
+ var _keys_current_size;
87
+ var keysSize = (_keys_current_size = keys === null || keys === void 0 ? void 0 : (_keys_current = keys.current) === null || _keys_current === void 0 ? void 0 : _keys_current.size) !== null && _keys_current_size !== void 0 ? _keys_current_size : 0;
88
+ var _schemeKeys_current_size;
89
+ var schemeKeysSize = (_schemeKeys_current_size = schemeKeys === null || schemeKeys === void 0 ? void 0 : (_schemeKeys_current = schemeKeys.current) === null || _schemeKeys_current === void 0 ? void 0 : _schemeKeys_current.size) !== null && _schemeKeys_current_size !== void 0 ? _schemeKeys_current_size : 0;
90
+ var allKeysSchemeOptimized = schemeKeysSize === keysSize && keysSize > 0;
91
+ var canSkipForSchemeChange = isSchemeOnlyChange && allKeysSchemeOptimized;
92
+ var needsUpdate = props.passThrough ? false : isRoot || props.name === "light" || props.name === "dark" || props.name === null ? true : !HasRenderedOnce.get(keys) ? true : canSkipForSchemeChange ? false : (keys === null || keys === void 0 ? void 0 : (_keys_current1 = keys.current) === null || _keys_current1 === void 0 ? void 0 : _keys_current1.size) ? true : (_props_needsUpdate = props.needsUpdate) === null || _props_needsUpdate === void 0 ? void 0 : _props_needsUpdate.call(props);
93
+ var [rerender, next] = getNextState(local, props, propsKey, isRoot, id, parentId, needsUpdate, PendingUpdate.get(id));
94
+ PendingUpdate.delete(id);
95
+ if (!local || rerender) {
96
+ local = {
97
+ ...next
98
+ };
99
+ localStates.set(id, local);
100
+ }
101
+ if (process.env.NODE_ENV === "development" && props.debug === "verbose") {
102
+ console.groupCollapsed(` ${id} getSnapshot ${rerender}`, local.name, ">", next.name);
103
+ console.info({
104
+ props,
105
+ propsKey,
106
+ isRoot,
107
+ parentId,
108
+ local,
109
+ next,
110
+ needsUpdate,
111
+ isSchemeOnlyChange,
112
+ allKeysSchemeOptimized,
113
+ canSkipForSchemeChange
114
+ });
115
+ console.groupEnd();
116
+ }
117
+ if (next !== local) {
118
+ Object.assign(local, next);
119
+ local.id = id;
120
+ }
121
+ ;
122
+ local._parentName = parentState === null || parentState === void 0 ? void 0 : parentState.name;
123
+ local._propsKey = propsKey;
124
+ states.set(id, next);
125
+ return local;
126
+ };
127
+ if (process.env.NODE_ENV === "development" && globalThis.time) globalThis.time`theme-prep-uses`;
128
+ var state = useSyncExternalStore(subscribe, getSnapshot, getSnapshot);
129
+ useIsomorphicLayoutEffect(function () {
130
+ if (!HasRenderedOnce.get(keys)) {
131
+ HasRenderedOnce.set(keys, true);
132
+ return;
133
+ }
134
+ if (!propsKey) {
135
+ if (HadTheme.get(keys)) {
136
+ scheduleUpdate(id);
107
137
  }
108
- scheduleUpdate(id), HadTheme.set(keys, !0);
109
- }, [keys, propsKey]), state;
110
- },
111
- getNextState = function (lastState, props, propsKey) {
112
- var isRoot = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : !1,
113
- id = arguments.length > 4 ? arguments[4] : void 0,
114
- parentId = arguments.length > 5 ? arguments[5] : void 0,
115
- needsUpdate = arguments.length > 6 ? arguments[6] : void 0,
116
- pendingUpdate = arguments.length > 7 ? arguments[7] : void 0,
117
- {
118
- debug
119
- } = props,
120
- parentState = states.get(parentId);
121
- if (props.passThrough) return [!1, lastState || parentState || {
138
+ HadTheme.set(keys, false);
139
+ return;
140
+ }
141
+ if (process.env.NODE_ENV === "development" && props.debug === "verbose") {
142
+ var _states_get;
143
+ console.warn(` \xB7 useTheme(${id}) scheduleUpdate`, propsKey, (_states_get = states.get(id)) === null || _states_get === void 0 ? void 0 : _states_get.name);
144
+ }
145
+ scheduleUpdate(id);
146
+ HadTheme.set(keys, true);
147
+ }, [keys, propsKey]);
148
+ return state;
149
+ };
150
+ var getNextState = function (lastState, props, propsKey) {
151
+ var isRoot = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : false,
152
+ id = arguments.length > 4 ? arguments[4] : void 0,
153
+ parentId = arguments.length > 5 ? arguments[5] : void 0,
154
+ needsUpdate = arguments.length > 6 ? arguments[6] : void 0,
155
+ pendingUpdate = arguments.length > 7 ? arguments[7] : void 0;
156
+ var {
157
+ debug
158
+ } = props;
159
+ var parentState = states.get(parentId);
160
+ if (props.passThrough) {
161
+ return [false, lastState || parentState || {
122
162
  name: ""
123
163
  }];
124
- themes || (themes = getConfig().themes);
125
- var name = !propsKey && (!lastState || !lastState?.isNew) ? null : getNewThemeName(parentState?.name, props, pendingUpdate === "force" ? !0 : !!needsUpdate),
126
- isSameAsParent = parentState && (!name || name === parentState.name),
127
- shouldRerender = !!(pendingUpdate === "force" || needsUpdate && (pendingUpdate || lastState?.name !== parentState?.name));
128
- if (process.env.NODE_ENV === "development" && debug === "verbose") {
129
- var message = ` \xB7 useTheme(${id}) getNextState => ${name} needsUpdate ${needsUpdate} shouldRerender ${shouldRerender}`;
164
+ }
165
+ if (!themes) {
166
+ themes = getConfig().themes;
167
+ }
168
+ var name = !propsKey && (!lastState || !(lastState === null || lastState === void 0 ? void 0 : lastState.isNew)) ? null : getNewThemeName(parentState === null || parentState === void 0 ? void 0 : parentState.name, props, pendingUpdate === "force" ? true : !!needsUpdate);
169
+ var isSameAsParent = parentState && (!name || name === parentState.name);
170
+ var shouldRerender = Boolean(pendingUpdate === "force" || needsUpdate && (pendingUpdate || (lastState === null || lastState === void 0 ? void 0 : lastState.name) !== (parentState === null || parentState === void 0 ? void 0 : parentState.name)));
171
+ if (process.env.NODE_ENV === "development" && debug === "verbose") {
172
+ var message = ` \xB7 useTheme(${id}) getNextState => ${name} needsUpdate ${needsUpdate} shouldRerender ${shouldRerender}`;
173
+ if (true) {
130
174
  console.info(message);
175
+ } else {
176
+ console.groupCollapsed(message);
177
+ console.trace({
178
+ name,
179
+ lastState,
180
+ parentState,
181
+ props,
182
+ propsKey,
183
+ id,
184
+ isSameAsParent
185
+ });
186
+ console.groupEnd();
131
187
  }
132
- if (isSameAsParent) return !shouldRerender && lastState && lastState.name === parentState.name ? [!1, lastState] : [shouldRerender, {
188
+ }
189
+ if (isSameAsParent) {
190
+ if (!shouldRerender && lastState && lastState.name === parentState.name) {
191
+ return [false, lastState];
192
+ }
193
+ return [shouldRerender, {
133
194
  ...parentState,
134
- isNew: !1
195
+ isNew: false
135
196
  }];
136
- if (!name) {
137
- var next = lastState ?? parentState;
138
- if (!next) throw new Error(process.env.NODE_ENV === "development" ? `${MISSING_THEME_MESSAGE}
197
+ }
198
+ if (!name) {
199
+ var next = lastState !== null && lastState !== void 0 ? lastState : parentState;
200
+ if (!next) {
201
+ throw new Error(process.env.NODE_ENV === "development" ? `${MISSING_THEME_MESSAGE}
139
202
 
140
203
  Looked for theme${props.name ? ` "${props.name}"` : ""}${props.componentName ? ` (component: ${props.componentName})` : ""}, but no theme state was resolved (parentId: ${parentId}, id: ${id}).` : MISSING_THEME_MESSAGE);
141
- if (shouldRerender) {
142
- var updated = {
143
- ...(parentState || lastState)
144
- };
145
- return [!0, updated];
146
- }
147
- return [!1, next];
148
204
  }
149
- var scheme = getScheme(name),
150
- isInverse = parentState && scheme !== parentState.scheme,
151
- nextState = {
152
- id,
153
- name,
154
- theme: themes[name],
155
- scheme,
156
- parentId,
157
- parentName: parentState?.name,
158
- // inverses,
159
- isInverse,
160
- isNew: !0
205
+ if (shouldRerender) {
206
+ var updated = {
207
+ ...(parentState || lastState)
161
208
  };
162
- if (isRoot && (rootThemeState = nextState), pendingUpdate !== "force" && lastState && lastState.name === name) return [!1, nextState];
163
- var shouldAvoidRerender = pendingUpdate !== "force" && lastState && !needsUpdate && nextState.name === lastState.name;
164
- return process.env.NODE_ENV === "development" && debug === "verbose" && (console.groupCollapsed(` \xB7 useTheme(${id}) \u23ED\uFE0F ${name} shouldAvoidRerender: ${shouldAvoidRerender}`), console.info({
209
+ return [true, updated];
210
+ }
211
+ return [false, next];
212
+ }
213
+ var scheme = getScheme(name);
214
+ var isInverse = parentState && scheme !== parentState.scheme;
215
+ var nextState = {
216
+ id,
217
+ name,
218
+ theme: themes[name],
219
+ scheme,
220
+ parentId,
221
+ parentName: parentState === null || parentState === void 0 ? void 0 : parentState.name,
222
+ // inverses,
223
+ isInverse,
224
+ isNew: true
225
+ };
226
+ if (isRoot) {
227
+ rootThemeState = nextState;
228
+ }
229
+ if (pendingUpdate !== "force" && lastState && lastState.name === name) {
230
+ return [false, nextState];
231
+ }
232
+ var shouldAvoidRerender = pendingUpdate !== "force" && lastState && !needsUpdate && nextState.name === lastState.name;
233
+ if (process.env.NODE_ENV === "development" && debug === "verbose") {
234
+ console.groupCollapsed(` \xB7 useTheme(${id}) \u23ED\uFE0F ${name} shouldAvoidRerender: ${shouldAvoidRerender}`);
235
+ console.info({
165
236
  lastState,
166
237
  needsUpdate,
167
238
  nextState,
168
239
  pendingUpdate
169
- }), console.groupEnd()), shouldAvoidRerender ? [!1, nextState] : [!0, nextState];
170
- };
240
+ });
241
+ console.groupEnd();
242
+ }
243
+ if (shouldAvoidRerender) {
244
+ return [false, nextState];
245
+ }
246
+ return [true, nextState];
247
+ };
171
248
  function scheduleUpdate(id) {
172
- for (var queue = [id], visited = /* @__PURE__ */new Set(); queue.length;) {
173
- var parent = queue.shift(),
174
- children = listenersByParent[parent];
249
+ var queue = [id];
250
+ var visited = /* @__PURE__ */new Set();
251
+ while (queue.length) {
252
+ var parent = queue.shift();
253
+ var children = listenersByParent[parent];
175
254
  if (children) {
176
- var _iteratorNormalCompletion = !0,
177
- _didIteratorError = !1,
255
+ var _iteratorNormalCompletion = true,
256
+ _didIteratorError = false,
178
257
  _iteratorError = void 0;
179
258
  try {
180
- for (var _iterator = children[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
259
+ for (var _iterator = children[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
181
260
  var childId = _step.value;
182
- visited.has(childId) || (visited.add(childId), queue.push(childId));
261
+ if (!visited.has(childId)) {
262
+ visited.add(childId);
263
+ queue.push(childId);
264
+ }
183
265
  }
184
266
  } catch (err) {
185
- _didIteratorError = !0, _iteratorError = err;
267
+ _didIteratorError = true;
268
+ _iteratorError = err;
186
269
  } finally {
187
270
  try {
188
- !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
271
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
272
+ _iterator.return();
273
+ }
189
274
  } finally {
190
- if (_didIteratorError) throw _iteratorError;
275
+ if (_didIteratorError) {
276
+ throw _iteratorError;
277
+ }
191
278
  }
192
279
  }
193
280
  }
194
281
  }
195
282
  visited.forEach(function (childId2) {
196
283
  var cb = allListeners.get(childId2);
197
- cb?.();
284
+ cb === null || cb === void 0 ? void 0 : cb();
198
285
  });
199
286
  }
200
287
  var validSchemes = {
@@ -207,15 +294,20 @@ function getScheme(name) {
207
294
  function getNewThemeName() {
208
295
  var parentName = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "",
209
296
  props = arguments.length > 1 ? arguments[1] : void 0,
210
- forceUpdate = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : !1,
211
- {
212
- name,
213
- reset
214
- } = props,
215
- componentName = props.unstyled ? void 0 : props.componentName;
216
- if (name && reset) throw new Error(process.env.NODE_ENV === "production" ? "\u274C004" : "Cannot reset and set a new name at the same time.");
297
+ forceUpdate = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false;
298
+ var {
299
+ name,
300
+ reset
301
+ } = props;
302
+ var componentName = props.unstyled ? void 0 : props.componentName;
303
+ if (name && reset) {
304
+ throw new Error(process.env.NODE_ENV === "production" ? `\u274C004` : "Cannot reset and set a new name at the same time.");
305
+ }
217
306
  var cacheKey = `${parentName}|${name || ""}|${componentName || ""}|${reset ? 1 : 0}|${forceUpdate ? 1 : 0}`;
218
- if (themeNameCacheVer !== cacheVersion) themeNameCache.clear(), themeNameCacheVer = cacheVersion;else {
307
+ if (themeNameCacheVer !== cacheVersion) {
308
+ themeNameCache.clear();
309
+ themeNameCacheVer = cacheVersion;
310
+ } else {
219
311
  var cached = themeNameCache.get(cacheKey);
220
312
  if (cached !== void 0) return cached;
221
313
  }
@@ -226,27 +318,31 @@ function getNewThemeName() {
226
318
  var isSchemeOnly = parentName === "light" || parentName === "dark";
227
319
  if (isSchemeOnly) {
228
320
  var result = parentName === "light" ? "dark" : "light";
229
- return themeNameCache.set(cacheKey, result), result;
321
+ themeNameCache.set(cacheKey, result);
322
+ return result;
230
323
  }
231
- var lastPartIndex = parentName.lastIndexOf("_"),
232
- name1 = lastPartIndex <= 0 ? parentName : parentName.slice(lastPartIndex),
233
- scheme = parentName.slice(0, lastPartIndex),
234
- result1 = themes2[name1] ? name1 : scheme;
235
- return themeNameCache.set(cacheKey, result1), result1;
324
+ var lastPartIndex = parentName.lastIndexOf("_");
325
+ var name1 = lastPartIndex <= 0 ? parentName : parentName.slice(lastPartIndex);
326
+ var scheme = parentName.slice(0, lastPartIndex);
327
+ var result1 = themes2[name1] ? name1 : scheme;
328
+ themeNameCache.set(cacheKey, result1);
329
+ return result1;
330
+ }
331
+ var parentParts = parentName.split("_");
332
+ var lastName = parentParts[parentParts.length - 1];
333
+ if (lastName && lastName[0].toLowerCase() !== lastName[0]) {
334
+ parentParts.pop();
236
335
  }
237
- var parentParts = parentName.split("_"),
238
- lastName = parentParts[parentParts.length - 1];
239
- lastName && lastName[0].toLowerCase() !== lastName[0] && parentParts.pop();
240
- var subNames = [name && componentName ? `${name}_${componentName}` : void 0, name, componentName].filter(Boolean),
241
- found = null;
336
+ var subNames = [name && componentName ? `${name}_${componentName}` : void 0, name, componentName].filter(Boolean);
337
+ var found = null;
242
338
  if (name) {
243
339
  var nameHasScheme = getScheme(name);
244
340
  if (nameHasScheme) {
245
- var _iteratorNormalCompletion = !0,
246
- _didIteratorError = !1,
341
+ var _iteratorNormalCompletion = true,
342
+ _didIteratorError = false,
247
343
  _iteratorError = void 0;
248
344
  try {
249
- for (var _iterator = subNames[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
345
+ for (var _iterator = subNames[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
250
346
  var subName = _step.value;
251
347
  if (subName in themes2) {
252
348
  found = subName;
@@ -254,31 +350,39 @@ function getNewThemeName() {
254
350
  }
255
351
  }
256
352
  } catch (err) {
257
- _didIteratorError = !0, _iteratorError = err;
353
+ _didIteratorError = true;
354
+ _iteratorError = err;
258
355
  } finally {
259
356
  try {
260
- !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
357
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
358
+ _iterator.return();
359
+ }
261
360
  } finally {
262
- if (_didIteratorError) throw _iteratorError;
361
+ if (_didIteratorError) {
362
+ throw _iteratorError;
363
+ }
263
364
  }
264
365
  }
265
366
  }
266
367
  if (!found && !nameHasScheme) {
267
368
  var parentScheme = getScheme(parentName);
268
369
  if (parentScheme) {
269
- for (var potentialBases = [], i = parentParts.length; i >= 1; i--) potentialBases.push(parentParts.slice(0, i).join("_"));
270
- var _iteratorNormalCompletion1 = !0,
271
- _didIteratorError1 = !1,
370
+ var potentialBases = [];
371
+ for (var i = parentParts.length; i >= 1; i--) {
372
+ potentialBases.push(parentParts.slice(0, i).join("_"));
373
+ }
374
+ var _iteratorNormalCompletion1 = true,
375
+ _didIteratorError1 = false,
272
376
  _iteratorError1 = void 0;
273
377
  try {
274
- outer: for (var _iterator1 = potentialBases[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = !0) {
275
- var base = _step1.value,
276
- candidates = [componentName ? `${base}_${name}_${componentName}` : void 0, `${base}_${name}`].filter(Boolean),
277
- _iteratorNormalCompletion2 = !0,
278
- _didIteratorError2 = !1,
378
+ outer: for (var _iterator1 = potentialBases[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
379
+ var base = _step1.value;
380
+ var candidates = [componentName ? `${base}_${name}_${componentName}` : void 0, `${base}_${name}`].filter(Boolean);
381
+ var _iteratorNormalCompletion2 = true,
382
+ _didIteratorError2 = false,
279
383
  _iteratorError2 = void 0;
280
384
  try {
281
- for (var _iterator2 = candidates[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = !0) {
385
+ for (var _iterator2 = candidates[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
282
386
  var potential = _step2.value;
283
387
  if (potential in themes2) {
284
388
  found = potential;
@@ -286,71 +390,98 @@ function getNewThemeName() {
286
390
  }
287
391
  }
288
392
  } catch (err) {
289
- _didIteratorError2 = !0, _iteratorError2 = err;
393
+ _didIteratorError2 = true;
394
+ _iteratorError2 = err;
290
395
  } finally {
291
396
  try {
292
- !_iteratorNormalCompletion2 && _iterator2.return != null && _iterator2.return();
397
+ if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
398
+ _iterator2.return();
399
+ }
293
400
  } finally {
294
- if (_didIteratorError2) throw _iteratorError2;
401
+ if (_didIteratorError2) {
402
+ throw _iteratorError2;
403
+ }
295
404
  }
296
405
  }
297
406
  }
298
407
  } catch (err) {
299
- _didIteratorError1 = !0, _iteratorError1 = err;
408
+ _didIteratorError1 = true;
409
+ _iteratorError1 = err;
300
410
  } finally {
301
411
  try {
302
- !_iteratorNormalCompletion1 && _iterator1.return != null && _iterator1.return();
412
+ if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
413
+ _iterator1.return();
414
+ }
303
415
  } finally {
304
- if (_didIteratorError1) throw _iteratorError1;
416
+ if (_didIteratorError1) {
417
+ throw _iteratorError1;
418
+ }
305
419
  }
306
420
  }
307
421
  }
308
422
  }
309
423
  }
310
- if (!found) if (!name && componentName) {
311
- var potential1 = `${parentParts.join("_")}_${componentName}`;
312
- potential1 in themes2 && (found = potential1);
313
- } else for (var max = parentParts.length, i1 = 0; i1 <= max; i1++) {
314
- var base1 = (i1 === 0 ? parentParts : parentParts.slice(0, -i1)).join("_"),
315
- _iteratorNormalCompletion3 = !0,
316
- _didIteratorError3 = !1,
317
- _iteratorError3 = void 0;
318
- try {
319
- for (var _iterator3 = subNames[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = !0) {
320
- var subName1 = _step3.value,
321
- potential2 = base1 ? `${base1}_${subName1}` : subName1;
322
- if (potential2 in themes2) {
323
- found = potential2;
324
- break;
325
- }
424
+ if (!found) {
425
+ if (!name && componentName) {
426
+ var potential1 = `${parentParts.join("_")}_${componentName}`;
427
+ if (potential1 in themes2) {
428
+ found = potential1;
326
429
  }
327
- } catch (err) {
328
- _didIteratorError3 = !0, _iteratorError3 = err;
329
- } finally {
330
- try {
331
- !_iteratorNormalCompletion3 && _iterator3.return != null && _iterator3.return();
332
- } finally {
333
- if (_didIteratorError3) throw _iteratorError3;
430
+ } else {
431
+ var max = parentParts.length;
432
+ for (var i1 = 0; i1 <= max; i1++) {
433
+ var base1 = (i1 === 0 ? parentParts : parentParts.slice(0, -i1)).join("_");
434
+ var _iteratorNormalCompletion3 = true,
435
+ _didIteratorError3 = false,
436
+ _iteratorError3 = void 0;
437
+ try {
438
+ for (var _iterator3 = subNames[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
439
+ var subName1 = _step3.value;
440
+ var potential2 = base1 ? `${base1}_${subName1}` : subName1;
441
+ if (potential2 in themes2) {
442
+ found = potential2;
443
+ break;
444
+ }
445
+ }
446
+ } catch (err) {
447
+ _didIteratorError3 = true;
448
+ _iteratorError3 = err;
449
+ } finally {
450
+ try {
451
+ if (!_iteratorNormalCompletion3 && _iterator3.return != null) {
452
+ _iterator3.return();
453
+ }
454
+ } finally {
455
+ if (_didIteratorError3) {
456
+ throw _iteratorError3;
457
+ }
458
+ }
459
+ }
460
+ if (found) break;
334
461
  }
335
462
  }
336
- if (found) break;
337
463
  }
338
- return !forceUpdate && found === parentName &&
464
+ if (!forceUpdate && found === parentName &&
339
465
  // if its a scheme only sub-theme, we always consider it "new" because it likely inverses
340
466
  // and we want to avoid reparenting
341
- !validSchemes[found] ? (themeNameCache.set(cacheKey, null), null) : (themeNameCache.set(cacheKey, found), found);
467
+ !validSchemes[found]) {
468
+ themeNameCache.set(cacheKey, null);
469
+ return null;
470
+ }
471
+ themeNameCache.set(cacheKey, found);
472
+ return found;
342
473
  }
343
474
  var getPropsKey = function (param) {
344
- var {
345
- name,
346
- reset,
347
- forceClassName,
348
- componentName
349
- } = param;
350
- return `${name || ""}${reset || ""}${forceClassName || ""}${componentName || ""}`;
351
- },
352
- hasThemeUpdatingProps = function (props) {
353
- return "name" in props || "reset" in props || "forceClassName" in props;
354
- };
475
+ var {
476
+ name,
477
+ reset,
478
+ forceClassName,
479
+ componentName
480
+ } = param;
481
+ return `${name || ""}${reset || ""}${forceClassName || ""}${componentName || ""}`;
482
+ };
483
+ var hasThemeUpdatingProps = function (props) {
484
+ return "name" in props || "reset" in props || "forceClassName" in props;
485
+ };
355
486
  export { ThemeStateContext, forceUpdateThemes, getRootThemeState, getThemeState, hasThemeUpdatingProps, useThemeState };
356
487
  //# sourceMappingURL=useThemeState.native.js.map