@hanzogui/web 2.0.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 (1122) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1 -0
  3. package/dist/cjs/Gui.cjs +72 -0
  4. package/dist/cjs/Gui.native.js +112 -0
  5. package/dist/cjs/Gui.native.js.map +1 -0
  6. package/dist/cjs/_withStableStyle.cjs +65 -0
  7. package/dist/cjs/_withStableStyle.native.js +77 -0
  8. package/dist/cjs/_withStableStyle.native.js.map +1 -0
  9. package/dist/cjs/animationDriverTypes.test-d.cjs +60 -0
  10. package/dist/cjs/animationDriverTypes.test-d.native.js +63 -0
  11. package/dist/cjs/animationDriverTypes.test-d.native.js.map +1 -0
  12. package/dist/cjs/config.cjs +126 -0
  13. package/dist/cjs/config.native.js +157 -0
  14. package/dist/cjs/config.native.js.map +1 -0
  15. package/dist/cjs/constants/accessibilityDirectMap.cjs +34 -0
  16. package/dist/cjs/constants/accessibilityDirectMap.native.js +37 -0
  17. package/dist/cjs/constants/accessibilityDirectMap.native.js.map +1 -0
  18. package/dist/cjs/constants/constants.cjs +38 -0
  19. package/dist/cjs/constants/constants.native.js +41 -0
  20. package/dist/cjs/constants/constants.native.js.map +1 -0
  21. package/dist/cjs/constants/isDevTools.cjs +31 -0
  22. package/dist/cjs/constants/isDevTools.native.js +34 -0
  23. package/dist/cjs/constants/isDevTools.native.js.map +1 -0
  24. package/dist/cjs/contexts/ComponentContext.cjs +37 -0
  25. package/dist/cjs/contexts/ComponentContext.native.js +42 -0
  26. package/dist/cjs/contexts/ComponentContext.native.js.map +1 -0
  27. package/dist/cjs/contexts/GroupContext.cjs +27 -0
  28. package/dist/cjs/contexts/GroupContext.native.js +30 -0
  29. package/dist/cjs/contexts/GroupContext.native.js.map +1 -0
  30. package/dist/cjs/createComponent.cjs +782 -0
  31. package/dist/cjs/createComponent.native.js +829 -0
  32. package/dist/cjs/createComponent.native.js.map +1 -0
  33. package/dist/cjs/createFont.cjs +42 -0
  34. package/dist/cjs/createFont.native.js +50 -0
  35. package/dist/cjs/createFont.native.js.map +1 -0
  36. package/dist/cjs/createGui.cjs +235 -0
  37. package/dist/cjs/createGui.native.js +297 -0
  38. package/dist/cjs/createGui.native.js.map +1 -0
  39. package/dist/cjs/createShorthands.cjs +28 -0
  40. package/dist/cjs/createShorthands.native.js +31 -0
  41. package/dist/cjs/createShorthands.native.js.map +1 -0
  42. package/dist/cjs/createTokens.cjs +29 -0
  43. package/dist/cjs/createTokens.native.js +33 -0
  44. package/dist/cjs/createTokens.native.js.map +1 -0
  45. package/dist/cjs/createVariable.cjs +96 -0
  46. package/dist/cjs/createVariable.native.js +116 -0
  47. package/dist/cjs/createVariable.native.js.map +1 -0
  48. package/dist/cjs/createVariables.cjs +68 -0
  49. package/dist/cjs/createVariables.native.js +77 -0
  50. package/dist/cjs/createVariables.native.js.map +1 -0
  51. package/dist/cjs/defaultComponentState.cjs +45 -0
  52. package/dist/cjs/defaultComponentState.native.js +48 -0
  53. package/dist/cjs/defaultComponentState.native.js.map +1 -0
  54. package/dist/cjs/eventHandling.cjs +46 -0
  55. package/dist/cjs/eventHandling.native.js +153 -0
  56. package/dist/cjs/eventHandling.native.js.map +1 -0
  57. package/dist/cjs/helpers/consoleLog.native.js +31 -0
  58. package/dist/cjs/helpers/consoleLog.native.js.map +1 -0
  59. package/dist/cjs/helpers/createDesignSystem.cjs +184 -0
  60. package/dist/cjs/helpers/createDesignSystem.native.js +235 -0
  61. package/dist/cjs/helpers/createDesignSystem.native.js.map +1 -0
  62. package/dist/cjs/helpers/createMediaStyle.cjs +100 -0
  63. package/dist/cjs/helpers/createMediaStyle.native.js +114 -0
  64. package/dist/cjs/helpers/createMediaStyle.native.js.map +1 -0
  65. package/dist/cjs/helpers/createStyledContext.cjs +82 -0
  66. package/dist/cjs/helpers/createStyledContext.native.js +93 -0
  67. package/dist/cjs/helpers/createStyledContext.native.js.map +1 -0
  68. package/dist/cjs/helpers/defaultAnimationDriver.cjs +42 -0
  69. package/dist/cjs/helpers/defaultAnimationDriver.native.js +59 -0
  70. package/dist/cjs/helpers/defaultAnimationDriver.native.js.map +1 -0
  71. package/dist/cjs/helpers/defaultOffset.cjs +29 -0
  72. package/dist/cjs/helpers/defaultOffset.native.js +32 -0
  73. package/dist/cjs/helpers/defaultOffset.native.js.map +1 -0
  74. package/dist/cjs/helpers/expandStyle.cjs +67 -0
  75. package/dist/cjs/helpers/expandStyle.native.js +162 -0
  76. package/dist/cjs/helpers/expandStyle.native.js.map +1 -0
  77. package/dist/cjs/helpers/expandStyles.cjs +40 -0
  78. package/dist/cjs/helpers/expandStyles.native.js +45 -0
  79. package/dist/cjs/helpers/expandStyles.native.js.map +1 -0
  80. package/dist/cjs/helpers/getCSSStylesAtomic.cjs +179 -0
  81. package/dist/cjs/helpers/getCSSStylesAtomic.native.js +36 -0
  82. package/dist/cjs/helpers/getCSSStylesAtomic.native.js.map +1 -0
  83. package/dist/cjs/helpers/getDefaultProps.cjs +38 -0
  84. package/dist/cjs/helpers/getDefaultProps.native.js +42 -0
  85. package/dist/cjs/helpers/getDefaultProps.native.js.map +1 -0
  86. package/dist/cjs/helpers/getDynamicVal.cjs +67 -0
  87. package/dist/cjs/helpers/getDynamicVal.native.js +71 -0
  88. package/dist/cjs/helpers/getDynamicVal.native.js.map +1 -0
  89. package/dist/cjs/helpers/getExpandedShorthands.cjs +38 -0
  90. package/dist/cjs/helpers/getExpandedShorthands.native.js +42 -0
  91. package/dist/cjs/helpers/getExpandedShorthands.native.js.map +1 -0
  92. package/dist/cjs/helpers/getFontLanguage.cjs +26 -0
  93. package/dist/cjs/helpers/getFontLanguage.native.js +31 -0
  94. package/dist/cjs/helpers/getFontLanguage.native.js.map +1 -0
  95. package/dist/cjs/helpers/getGroupPropParts.cjs +45 -0
  96. package/dist/cjs/helpers/getGroupPropParts.native.js +50 -0
  97. package/dist/cjs/helpers/getGroupPropParts.native.js.map +1 -0
  98. package/dist/cjs/helpers/getShorthandValue.cjs +28 -0
  99. package/dist/cjs/helpers/getShorthandValue.native.js +35 -0
  100. package/dist/cjs/helpers/getShorthandValue.native.js.map +1 -0
  101. package/dist/cjs/helpers/getSplitStyles.cjs +697 -0
  102. package/dist/cjs/helpers/getSplitStyles.native.js +810 -0
  103. package/dist/cjs/helpers/getSplitStyles.native.js.map +1 -0
  104. package/dist/cjs/helpers/getThemeCSSRules.cjs +128 -0
  105. package/dist/cjs/helpers/getThemeCSSRules.native.js +31 -0
  106. package/dist/cjs/helpers/getThemeCSSRules.native.js.map +1 -0
  107. package/dist/cjs/helpers/getTokenForKey.cjs +127 -0
  108. package/dist/cjs/helpers/getTokenForKey.native.js +145 -0
  109. package/dist/cjs/helpers/getTokenForKey.native.js.map +1 -0
  110. package/dist/cjs/helpers/getVariantExtras.cjs +69 -0
  111. package/dist/cjs/helpers/getVariantExtras.native.js +73 -0
  112. package/dist/cjs/helpers/getVariantExtras.native.js.map +1 -0
  113. package/dist/cjs/helpers/insertStyleRule.cjs +199 -0
  114. package/dist/cjs/helpers/insertStyleRule.native.js +315 -0
  115. package/dist/cjs/helpers/insertStyleRule.native.js.map +1 -0
  116. package/dist/cjs/helpers/isActivePlatform.cjs +36 -0
  117. package/dist/cjs/helpers/isActivePlatform.native.js +39 -0
  118. package/dist/cjs/helpers/isActivePlatform.native.js.map +1 -0
  119. package/dist/cjs/helpers/isActiveTheme.cjs +28 -0
  120. package/dist/cjs/helpers/isActiveTheme.native.js +31 -0
  121. package/dist/cjs/helpers/isActiveTheme.native.js.map +1 -0
  122. package/dist/cjs/helpers/isGuiComponent.cjs +29 -0
  123. package/dist/cjs/helpers/isGuiComponent.native.js +32 -0
  124. package/dist/cjs/helpers/isGuiComponent.native.js.map +1 -0
  125. package/dist/cjs/helpers/isGuiElement.cjs +39 -0
  126. package/dist/cjs/helpers/isGuiElement.native.js +44 -0
  127. package/dist/cjs/helpers/isGuiElement.native.js.map +1 -0
  128. package/dist/cjs/helpers/isObj.cjs +26 -0
  129. package/dist/cjs/helpers/isObj.native.js +36 -0
  130. package/dist/cjs/helpers/isObj.native.js.map +1 -0
  131. package/dist/cjs/helpers/log.cjs +38 -0
  132. package/dist/cjs/helpers/log.native.js +42 -0
  133. package/dist/cjs/helpers/log.native.js.map +1 -0
  134. package/dist/cjs/helpers/mainThreadPressEvents.cjs +26 -0
  135. package/dist/cjs/helpers/mainThreadPressEvents.native.js +48 -0
  136. package/dist/cjs/helpers/mainThreadPressEvents.native.js.map +1 -0
  137. package/dist/cjs/helpers/matchMedia.cjs +36 -0
  138. package/dist/cjs/helpers/matchMedia.native.js +47 -0
  139. package/dist/cjs/helpers/matchMedia.native.js.map +1 -0
  140. package/dist/cjs/helpers/mediaObjectToString.cjs +35 -0
  141. package/dist/cjs/helpers/mediaObjectToString.native.js +43 -0
  142. package/dist/cjs/helpers/mediaObjectToString.native.js.map +1 -0
  143. package/dist/cjs/helpers/mediaState.cjs +45 -0
  144. package/dist/cjs/helpers/mediaState.native.js +50 -0
  145. package/dist/cjs/helpers/mediaState.native.js.map +1 -0
  146. package/dist/cjs/helpers/mergeProps.cjs +55 -0
  147. package/dist/cjs/helpers/mergeProps.native.js +62 -0
  148. package/dist/cjs/helpers/mergeProps.native.js.map +1 -0
  149. package/dist/cjs/helpers/mergeRenderElementProps.cjs +32 -0
  150. package/dist/cjs/helpers/mergeRenderElementProps.native.js +35 -0
  151. package/dist/cjs/helpers/mergeRenderElementProps.native.js.map +1 -0
  152. package/dist/cjs/helpers/mergeSlotStyleProps.cjs +39 -0
  153. package/dist/cjs/helpers/mergeSlotStyleProps.native.js +42 -0
  154. package/dist/cjs/helpers/mergeSlotStyleProps.native.js.map +1 -0
  155. package/dist/cjs/helpers/mergeVariants.cjs +40 -0
  156. package/dist/cjs/helpers/mergeVariants.native.js +44 -0
  157. package/dist/cjs/helpers/mergeVariants.native.js.map +1 -0
  158. package/dist/cjs/helpers/nativeOnlyProps.cjs +60 -0
  159. package/dist/cjs/helpers/nativeOnlyProps.native.js +63 -0
  160. package/dist/cjs/helpers/nativeOnlyProps.native.js.map +1 -0
  161. package/dist/cjs/helpers/normalizeColor.cjs +35 -0
  162. package/dist/cjs/helpers/normalizeColor.native.js +50 -0
  163. package/dist/cjs/helpers/normalizeColor.native.js.map +1 -0
  164. package/dist/cjs/helpers/normalizeShadow.cjs +48 -0
  165. package/dist/cjs/helpers/normalizeShadow.native.js +52 -0
  166. package/dist/cjs/helpers/normalizeShadow.native.js.map +1 -0
  167. package/dist/cjs/helpers/normalizeStyle.cjs +47 -0
  168. package/dist/cjs/helpers/normalizeStyle.native.js +52 -0
  169. package/dist/cjs/helpers/normalizeStyle.native.js.map +1 -0
  170. package/dist/cjs/helpers/normalizeStylePropKeys.cjs +26 -0
  171. package/dist/cjs/helpers/normalizeStylePropKeys.native.js +40 -0
  172. package/dist/cjs/helpers/normalizeStylePropKeys.native.js.map +1 -0
  173. package/dist/cjs/helpers/normalizeValueWithProperty.cjs +38 -0
  174. package/dist/cjs/helpers/normalizeValueWithProperty.native.js +47 -0
  175. package/dist/cjs/helpers/normalizeValueWithProperty.native.js.map +1 -0
  176. package/dist/cjs/helpers/objectIdentityKey.cjs +39 -0
  177. package/dist/cjs/helpers/objectIdentityKey.native.js +47 -0
  178. package/dist/cjs/helpers/objectIdentityKey.native.js.map +1 -0
  179. package/dist/cjs/helpers/parseBorderShorthand.cjs +26 -0
  180. package/dist/cjs/helpers/parseBorderShorthand.native.js +58 -0
  181. package/dist/cjs/helpers/parseBorderShorthand.native.js.map +1 -0
  182. package/dist/cjs/helpers/parseNativeStyle.cjs +133 -0
  183. package/dist/cjs/helpers/parseNativeStyle.native.js +151 -0
  184. package/dist/cjs/helpers/parseNativeStyle.native.js.map +1 -0
  185. package/dist/cjs/helpers/parseOutlineShorthand.cjs +26 -0
  186. package/dist/cjs/helpers/parseOutlineShorthand.native.js +58 -0
  187. package/dist/cjs/helpers/parseOutlineShorthand.native.js.map +1 -0
  188. package/dist/cjs/helpers/platformResolveValue.cjs +33 -0
  189. package/dist/cjs/helpers/platformResolveValue.native.js +62 -0
  190. package/dist/cjs/helpers/platformResolveValue.native.js.map +1 -0
  191. package/dist/cjs/helpers/pointerEvents.cjs +26 -0
  192. package/dist/cjs/helpers/pointerEvents.native.js +120 -0
  193. package/dist/cjs/helpers/pointerEvents.native.js.map +1 -0
  194. package/dist/cjs/helpers/propMapper.cjs +203 -0
  195. package/dist/cjs/helpers/propMapper.native.js +295 -0
  196. package/dist/cjs/helpers/propMapper.native.js.map +1 -0
  197. package/dist/cjs/helpers/proxyThemeToParents.cjs +49 -0
  198. package/dist/cjs/helpers/proxyThemeToParents.native.js +132 -0
  199. package/dist/cjs/helpers/proxyThemeToParents.native.js.map +1 -0
  200. package/dist/cjs/helpers/proxyThemeVariables.cjs +36 -0
  201. package/dist/cjs/helpers/proxyThemeVariables.native.js +41 -0
  202. package/dist/cjs/helpers/proxyThemeVariables.native.js.map +1 -0
  203. package/dist/cjs/helpers/pseudoDescriptors.cjs +80 -0
  204. package/dist/cjs/helpers/pseudoDescriptors.native.js +83 -0
  205. package/dist/cjs/helpers/pseudoDescriptors.native.js.map +1 -0
  206. package/dist/cjs/helpers/pseudoTransitions.cjs +65 -0
  207. package/dist/cjs/helpers/pseudoTransitions.native.js +72 -0
  208. package/dist/cjs/helpers/pseudoTransitions.native.js.map +1 -0
  209. package/dist/cjs/helpers/registerCSSVariable.cjs +64 -0
  210. package/dist/cjs/helpers/registerCSSVariable.native.js +70 -0
  211. package/dist/cjs/helpers/registerCSSVariable.native.js.map +1 -0
  212. package/dist/cjs/helpers/resolveAnimationDriver.cjs +28 -0
  213. package/dist/cjs/helpers/resolveAnimationDriver.native.js +32 -0
  214. package/dist/cjs/helpers/resolveAnimationDriver.native.js.map +1 -0
  215. package/dist/cjs/helpers/resolveCompoundTokens.cjs +37 -0
  216. package/dist/cjs/helpers/resolveCompoundTokens.native.js +40 -0
  217. package/dist/cjs/helpers/resolveCompoundTokens.native.js.map +1 -0
  218. package/dist/cjs/helpers/resolveRem.cjs +32 -0
  219. package/dist/cjs/helpers/resolveRem.native.js +50 -0
  220. package/dist/cjs/helpers/resolveRem.native.js.map +1 -0
  221. package/dist/cjs/helpers/resolveSafeArea.cjs +34 -0
  222. package/dist/cjs/helpers/resolveSafeArea.native.js +42 -0
  223. package/dist/cjs/helpers/resolveSafeArea.native.js.map +1 -0
  224. package/dist/cjs/helpers/setElementProps.cjs +29 -0
  225. package/dist/cjs/helpers/setElementProps.native.js +33 -0
  226. package/dist/cjs/helpers/setElementProps.native.js.map +1 -0
  227. package/dist/cjs/helpers/skipProps.cjs +45 -0
  228. package/dist/cjs/helpers/skipProps.native.js +48 -0
  229. package/dist/cjs/helpers/skipProps.native.js.map +1 -0
  230. package/dist/cjs/helpers/sortString.cjs +26 -0
  231. package/dist/cjs/helpers/sortString.native.js +31 -0
  232. package/dist/cjs/helpers/sortString.native.js.map +1 -0
  233. package/dist/cjs/helpers/subscribeToContextGroup.cjs +81 -0
  234. package/dist/cjs/helpers/subscribeToContextGroup.native.js +131 -0
  235. package/dist/cjs/helpers/subscribeToContextGroup.native.js.map +1 -0
  236. package/dist/cjs/helpers/themeable.cjs +87 -0
  237. package/dist/cjs/helpers/themeable.native.js +93 -0
  238. package/dist/cjs/helpers/themeable.native.js.map +1 -0
  239. package/dist/cjs/helpers/themes.cjs +38 -0
  240. package/dist/cjs/helpers/themes.native.js +41 -0
  241. package/dist/cjs/helpers/themes.native.js.map +1 -0
  242. package/dist/cjs/helpers/timer.cjs +32 -0
  243. package/dist/cjs/helpers/timer.native.js +35 -0
  244. package/dist/cjs/helpers/timer.native.js.map +1 -0
  245. package/dist/cjs/helpers/transformsToString.cjs +38 -0
  246. package/dist/cjs/helpers/transformsToString.native.js +41 -0
  247. package/dist/cjs/helpers/transformsToString.native.js.map +1 -0
  248. package/dist/cjs/helpers/useRenderElement.cjs +48 -0
  249. package/dist/cjs/helpers/useRenderElement.native.js +52 -0
  250. package/dist/cjs/helpers/useRenderElement.native.js.map +1 -0
  251. package/dist/cjs/helpers/webPropsToSkip.cjs +26 -0
  252. package/dist/cjs/helpers/webPropsToSkip.native.js +76 -0
  253. package/dist/cjs/helpers/webPropsToSkip.native.js.map +1 -0
  254. package/dist/cjs/helpers/wrapStyleTags.cjs +41 -0
  255. package/dist/cjs/helpers/wrapStyleTags.native.js +31 -0
  256. package/dist/cjs/helpers/wrapStyleTags.native.js.map +1 -0
  257. package/dist/cjs/hooks/doesRootSchemeMatchSystem.cjs +28 -0
  258. package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js +34 -0
  259. package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js.map +1 -0
  260. package/dist/cjs/hooks/getThemeProxied.cjs +60 -0
  261. package/dist/cjs/hooks/getThemeProxied.native.js +93 -0
  262. package/dist/cjs/hooks/getThemeProxied.native.js.map +1 -0
  263. package/dist/cjs/hooks/useComponentState.cjs +144 -0
  264. package/dist/cjs/hooks/useComponentState.native.js +165 -0
  265. package/dist/cjs/hooks/useComponentState.native.js.map +1 -0
  266. package/dist/cjs/hooks/useDisableSSR.cjs +29 -0
  267. package/dist/cjs/hooks/useDisableSSR.native.js +33 -0
  268. package/dist/cjs/hooks/useDisableSSR.native.js.map +1 -0
  269. package/dist/cjs/hooks/useIsTouchDevice.cjs +28 -0
  270. package/dist/cjs/hooks/useIsTouchDevice.native.js +33 -0
  271. package/dist/cjs/hooks/useIsTouchDevice.native.js.map +1 -0
  272. package/dist/cjs/hooks/useMedia.cjs +180 -0
  273. package/dist/cjs/hooks/useMedia.native.js +215 -0
  274. package/dist/cjs/hooks/useMedia.native.js.map +1 -0
  275. package/dist/cjs/hooks/useProps.cjs +114 -0
  276. package/dist/cjs/hooks/useProps.native.js +119 -0
  277. package/dist/cjs/hooks/useProps.native.js.map +1 -0
  278. package/dist/cjs/hooks/useTheme.cjs +46 -0
  279. package/dist/cjs/hooks/useTheme.native.js +53 -0
  280. package/dist/cjs/hooks/useTheme.native.js.map +1 -0
  281. package/dist/cjs/hooks/useThemeName.cjs +37 -0
  282. package/dist/cjs/hooks/useThemeName.native.js +43 -0
  283. package/dist/cjs/hooks/useThemeName.native.js.map +1 -0
  284. package/dist/cjs/hooks/useThemeState.cjs +274 -0
  285. package/dist/cjs/hooks/useThemeState.native.js +387 -0
  286. package/dist/cjs/hooks/useThemeState.native.js.map +1 -0
  287. package/dist/cjs/index.cjs +120 -0
  288. package/dist/cjs/index.native.js +123 -0
  289. package/dist/cjs/index.native.js.map +1 -0
  290. package/dist/cjs/inject-styles.cjs +37 -0
  291. package/dist/cjs/inject-styles.native.js +41 -0
  292. package/dist/cjs/inject-styles.native.js.map +1 -0
  293. package/dist/cjs/insertFont.cjs +75 -0
  294. package/dist/cjs/insertFont.native.js +76 -0
  295. package/dist/cjs/insertFont.native.js.map +1 -0
  296. package/dist/cjs/interfaces/CSSColorNames.cjs +16 -0
  297. package/dist/cjs/interfaces/CSSColorNames.native.js +19 -0
  298. package/dist/cjs/interfaces/CSSColorNames.native.js.map +1 -0
  299. package/dist/cjs/interfaces/GetRef.cjs +16 -0
  300. package/dist/cjs/interfaces/GetRef.native.js +19 -0
  301. package/dist/cjs/interfaces/GetRef.native.js.map +1 -0
  302. package/dist/cjs/interfaces/GuiComponentEvents.cjs +16 -0
  303. package/dist/cjs/interfaces/GuiComponentEvents.native.js +19 -0
  304. package/dist/cjs/interfaces/GuiComponentEvents.native.js.map +1 -0
  305. package/dist/cjs/interfaces/GuiComponentPropsBaseBase.cjs +16 -0
  306. package/dist/cjs/interfaces/GuiComponentPropsBaseBase.native.js +19 -0
  307. package/dist/cjs/interfaces/GuiComponentPropsBaseBase.native.js.map +1 -0
  308. package/dist/cjs/interfaces/RNExclusiveTypes.cjs +16 -0
  309. package/dist/cjs/interfaces/RNExclusiveTypes.native.js +19 -0
  310. package/dist/cjs/interfaces/RNExclusiveTypes.native.js.map +1 -0
  311. package/dist/cjs/setupHooks.cjs +30 -0
  312. package/dist/cjs/setupHooks.native.js +33 -0
  313. package/dist/cjs/setupHooks.native.js.map +1 -0
  314. package/dist/cjs/setupReactNative.cjs +47 -0
  315. package/dist/cjs/setupReactNative.native.js +54 -0
  316. package/dist/cjs/setupReactNative.native.js.map +1 -0
  317. package/dist/cjs/styled.cjs +115 -0
  318. package/dist/cjs/styled.native.js +127 -0
  319. package/dist/cjs/styled.native.js.map +1 -0
  320. package/dist/cjs/styledHtml.test-d.cjs +156 -0
  321. package/dist/cjs/styledHtml.test-d.native.js +159 -0
  322. package/dist/cjs/styledHtml.test-d.native.js.map +1 -0
  323. package/dist/cjs/type-utils.cjs +16 -0
  324. package/dist/cjs/type-utils.native.js +19 -0
  325. package/dist/cjs/type-utils.native.js.map +1 -0
  326. package/dist/cjs/types.cjs +16 -0
  327. package/dist/cjs/types.native.js +19 -0
  328. package/dist/cjs/types.native.js.map +1 -0
  329. package/dist/cjs/views/Configuration.cjs +50 -0
  330. package/dist/cjs/views/Configuration.native.js +54 -0
  331. package/dist/cjs/views/Configuration.native.js.map +1 -0
  332. package/dist/cjs/views/FontLanguage.cjs +37 -0
  333. package/dist/cjs/views/FontLanguage.native.js +57 -0
  334. package/dist/cjs/views/FontLanguage.native.js.map +1 -0
  335. package/dist/cjs/views/GuiProvider.cjs +94 -0
  336. package/dist/cjs/views/GuiProvider.native.js +100 -0
  337. package/dist/cjs/views/GuiProvider.native.js.map +1 -0
  338. package/dist/cjs/views/GuiRoot.cjs +68 -0
  339. package/dist/cjs/views/GuiRoot.native.js +31 -0
  340. package/dist/cjs/views/GuiRoot.native.js.map +1 -0
  341. package/dist/cjs/views/Slot.cjs +64 -0
  342. package/dist/cjs/views/Slot.native.js +70 -0
  343. package/dist/cjs/views/Slot.native.js.map +1 -0
  344. package/dist/cjs/views/Text.cjs +58 -0
  345. package/dist/cjs/views/Text.native.js +52 -0
  346. package/dist/cjs/views/Text.native.js.map +1 -0
  347. package/dist/cjs/views/Theme.cjs +162 -0
  348. package/dist/cjs/views/Theme.native.js +174 -0
  349. package/dist/cjs/views/Theme.native.js.map +1 -0
  350. package/dist/cjs/views/ThemeDebug.cjs +77 -0
  351. package/dist/cjs/views/ThemeDebug.native.js +37 -0
  352. package/dist/cjs/views/ThemeDebug.native.js.map +1 -0
  353. package/dist/cjs/views/ThemeProvider.cjs +52 -0
  354. package/dist/cjs/views/ThemeProvider.native.js +48 -0
  355. package/dist/cjs/views/ThemeProvider.native.js.map +1 -0
  356. package/dist/cjs/views/View.cjs +31 -0
  357. package/dist/cjs/views/View.native.js +34 -0
  358. package/dist/cjs/views/View.native.js.map +1 -0
  359. package/dist/esm/Gui.mjs +36 -0
  360. package/dist/esm/Gui.mjs.map +1 -0
  361. package/dist/esm/Gui.native.js +73 -0
  362. package/dist/esm/Gui.native.js.map +1 -0
  363. package/dist/esm/_withStableStyle.mjs +31 -0
  364. package/dist/esm/_withStableStyle.mjs.map +1 -0
  365. package/dist/esm/_withStableStyle.native.js +40 -0
  366. package/dist/esm/_withStableStyle.native.js.map +1 -0
  367. package/dist/esm/animationDriverTypes.test-d.mjs +61 -0
  368. package/dist/esm/animationDriverTypes.test-d.mjs.map +1 -0
  369. package/dist/esm/animationDriverTypes.test-d.native.js +61 -0
  370. package/dist/esm/animationDriverTypes.test-d.native.js.map +1 -0
  371. package/dist/esm/config.mjs +87 -0
  372. package/dist/esm/config.mjs.map +1 -0
  373. package/dist/esm/config.native.js +115 -0
  374. package/dist/esm/config.native.js.map +1 -0
  375. package/dist/esm/constants/accessibilityDirectMap.mjs +7 -0
  376. package/dist/esm/constants/accessibilityDirectMap.mjs.map +1 -0
  377. package/dist/esm/constants/accessibilityDirectMap.native.js +7 -0
  378. package/dist/esm/constants/accessibilityDirectMap.native.js.map +1 -0
  379. package/dist/esm/constants/constants.mjs +12 -0
  380. package/dist/esm/constants/constants.mjs.map +1 -0
  381. package/dist/esm/constants/constants.native.js +12 -0
  382. package/dist/esm/constants/constants.native.js.map +1 -0
  383. package/dist/esm/constants/isDevTools.mjs +8 -0
  384. package/dist/esm/constants/isDevTools.mjs.map +1 -0
  385. package/dist/esm/constants/isDevTools.native.js +8 -0
  386. package/dist/esm/constants/isDevTools.native.js.map +1 -0
  387. package/dist/esm/contexts/ComponentContext.mjs +13 -0
  388. package/dist/esm/contexts/ComponentContext.mjs.map +1 -0
  389. package/dist/esm/contexts/ComponentContext.native.js +15 -0
  390. package/dist/esm/contexts/ComponentContext.native.js.map +1 -0
  391. package/dist/esm/contexts/GroupContext.mjs +4 -0
  392. package/dist/esm/contexts/GroupContext.mjs.map +1 -0
  393. package/dist/esm/contexts/GroupContext.native.js +4 -0
  394. package/dist/esm/contexts/GroupContext.native.js.map +1 -0
  395. package/dist/esm/createComponent.mjs +746 -0
  396. package/dist/esm/createComponent.mjs.map +1 -0
  397. package/dist/esm/createComponent.native.js +790 -0
  398. package/dist/esm/createComponent.native.js.map +1 -0
  399. package/dist/esm/createFont.mjs +19 -0
  400. package/dist/esm/createFont.mjs.map +1 -0
  401. package/dist/esm/createFont.native.js +24 -0
  402. package/dist/esm/createFont.native.js.map +1 -0
  403. package/dist/esm/createGui.mjs +212 -0
  404. package/dist/esm/createGui.mjs.map +1 -0
  405. package/dist/esm/createGui.native.js +271 -0
  406. package/dist/esm/createGui.native.js.map +1 -0
  407. package/dist/esm/createShorthands.mjs +5 -0
  408. package/dist/esm/createShorthands.mjs.map +1 -0
  409. package/dist/esm/createShorthands.native.js +5 -0
  410. package/dist/esm/createShorthands.native.js.map +1 -0
  411. package/dist/esm/createTokens.mjs +6 -0
  412. package/dist/esm/createTokens.mjs.map +1 -0
  413. package/dist/esm/createTokens.native.js +7 -0
  414. package/dist/esm/createTokens.native.js.map +1 -0
  415. package/dist/esm/createVariable.mjs +63 -0
  416. package/dist/esm/createVariable.mjs.map +1 -0
  417. package/dist/esm/createVariable.native.js +80 -0
  418. package/dist/esm/createVariable.native.js.map +1 -0
  419. package/dist/esm/createVariables.mjs +45 -0
  420. package/dist/esm/createVariables.mjs.map +1 -0
  421. package/dist/esm/createVariables.native.js +51 -0
  422. package/dist/esm/createVariables.native.js.map +1 -0
  423. package/dist/esm/defaultComponentState.mjs +20 -0
  424. package/dist/esm/defaultComponentState.mjs.map +1 -0
  425. package/dist/esm/defaultComponentState.native.js +20 -0
  426. package/dist/esm/defaultComponentState.native.js.map +1 -0
  427. package/dist/esm/eventHandling.mjs +21 -0
  428. package/dist/esm/eventHandling.mjs.map +1 -0
  429. package/dist/esm/eventHandling.native.js +114 -0
  430. package/dist/esm/eventHandling.native.js.map +1 -0
  431. package/dist/esm/helpers/consoleLog.native.js +4 -0
  432. package/dist/esm/helpers/consoleLog.native.js.map +1 -0
  433. package/dist/esm/helpers/createDesignSystem.mjs +156 -0
  434. package/dist/esm/helpers/createDesignSystem.mjs.map +1 -0
  435. package/dist/esm/helpers/createDesignSystem.native.js +203 -0
  436. package/dist/esm/helpers/createDesignSystem.native.js.map +1 -0
  437. package/dist/esm/helpers/createMediaStyle.mjs +75 -0
  438. package/dist/esm/helpers/createMediaStyle.mjs.map +1 -0
  439. package/dist/esm/helpers/createMediaStyle.native.js +86 -0
  440. package/dist/esm/helpers/createMediaStyle.native.js.map +1 -0
  441. package/dist/esm/helpers/createStyledContext.mjs +48 -0
  442. package/dist/esm/helpers/createStyledContext.mjs.map +1 -0
  443. package/dist/esm/helpers/createStyledContext.native.js +56 -0
  444. package/dist/esm/helpers/createStyledContext.native.js.map +1 -0
  445. package/dist/esm/helpers/defaultAnimationDriver.mjs +19 -0
  446. package/dist/esm/helpers/defaultAnimationDriver.mjs.map +1 -0
  447. package/dist/esm/helpers/defaultAnimationDriver.native.js +33 -0
  448. package/dist/esm/helpers/defaultAnimationDriver.native.js.map +1 -0
  449. package/dist/esm/helpers/defaultOffset.mjs +6 -0
  450. package/dist/esm/helpers/defaultOffset.mjs.map +1 -0
  451. package/dist/esm/helpers/defaultOffset.native.js +6 -0
  452. package/dist/esm/helpers/defaultOffset.native.js.map +1 -0
  453. package/dist/esm/helpers/expandStyle.mjs +42 -0
  454. package/dist/esm/helpers/expandStyle.mjs.map +1 -0
  455. package/dist/esm/helpers/expandStyle.native.js +135 -0
  456. package/dist/esm/helpers/expandStyle.native.js.map +1 -0
  457. package/dist/esm/helpers/expandStyles.mjs +17 -0
  458. package/dist/esm/helpers/expandStyles.mjs.map +1 -0
  459. package/dist/esm/helpers/expandStyles.native.js +19 -0
  460. package/dist/esm/helpers/expandStyles.native.js.map +1 -0
  461. package/dist/esm/helpers/getCSSStylesAtomic.mjs +154 -0
  462. package/dist/esm/helpers/getCSSStylesAtomic.mjs.map +1 -0
  463. package/dist/esm/helpers/getCSSStylesAtomic.native.js +8 -0
  464. package/dist/esm/helpers/getCSSStylesAtomic.native.js.map +1 -0
  465. package/dist/esm/helpers/getDefaultProps.mjs +15 -0
  466. package/dist/esm/helpers/getDefaultProps.mjs.map +1 -0
  467. package/dist/esm/helpers/getDefaultProps.native.js +16 -0
  468. package/dist/esm/helpers/getDefaultProps.native.js.map +1 -0
  469. package/dist/esm/helpers/getDynamicVal.mjs +41 -0
  470. package/dist/esm/helpers/getDynamicVal.mjs.map +1 -0
  471. package/dist/esm/helpers/getDynamicVal.native.js +42 -0
  472. package/dist/esm/helpers/getDynamicVal.native.js.map +1 -0
  473. package/dist/esm/helpers/getExpandedShorthands.mjs +14 -0
  474. package/dist/esm/helpers/getExpandedShorthands.mjs.map +1 -0
  475. package/dist/esm/helpers/getExpandedShorthands.native.js +15 -0
  476. package/dist/esm/helpers/getExpandedShorthands.native.js.map +1 -0
  477. package/dist/esm/helpers/getFontLanguage.mjs +3 -0
  478. package/dist/esm/helpers/getFontLanguage.mjs.map +1 -0
  479. package/dist/esm/helpers/getFontLanguage.native.js +5 -0
  480. package/dist/esm/helpers/getFontLanguage.native.js.map +1 -0
  481. package/dist/esm/helpers/getGroupPropParts.mjs +22 -0
  482. package/dist/esm/helpers/getGroupPropParts.mjs.map +1 -0
  483. package/dist/esm/helpers/getGroupPropParts.native.js +24 -0
  484. package/dist/esm/helpers/getGroupPropParts.native.js.map +1 -0
  485. package/dist/esm/helpers/getShorthandValue.mjs +5 -0
  486. package/dist/esm/helpers/getShorthandValue.mjs.map +1 -0
  487. package/dist/esm/helpers/getShorthandValue.native.js +9 -0
  488. package/dist/esm/helpers/getShorthandValue.native.js.map +1 -0
  489. package/dist/esm/helpers/getSplitStyles.mjs +658 -0
  490. package/dist/esm/helpers/getSplitStyles.mjs.map +1 -0
  491. package/dist/esm/helpers/getSplitStyles.native.js +768 -0
  492. package/dist/esm/helpers/getSplitStyles.native.js.map +1 -0
  493. package/dist/esm/helpers/getThemeCSSRules.mjs +105 -0
  494. package/dist/esm/helpers/getThemeCSSRules.mjs.map +1 -0
  495. package/dist/esm/helpers/getThemeCSSRules.native.js +5 -0
  496. package/dist/esm/helpers/getThemeCSSRules.native.js.map +1 -0
  497. package/dist/esm/helpers/getTokenForKey.mjs +101 -0
  498. package/dist/esm/helpers/getTokenForKey.mjs.map +1 -0
  499. package/dist/esm/helpers/getTokenForKey.native.js +116 -0
  500. package/dist/esm/helpers/getTokenForKey.native.js.map +1 -0
  501. package/dist/esm/helpers/getVariantExtras.mjs +45 -0
  502. package/dist/esm/helpers/getVariantExtras.mjs.map +1 -0
  503. package/dist/esm/helpers/getVariantExtras.native.js +46 -0
  504. package/dist/esm/helpers/getVariantExtras.native.js.map +1 -0
  505. package/dist/esm/helpers/insertStyleRule.mjs +169 -0
  506. package/dist/esm/helpers/insertStyleRule.mjs.map +1 -0
  507. package/dist/esm/helpers/insertStyleRule.native.js +282 -0
  508. package/dist/esm/helpers/insertStyleRule.native.js.map +1 -0
  509. package/dist/esm/helpers/isActivePlatform.mjs +13 -0
  510. package/dist/esm/helpers/isActivePlatform.mjs.map +1 -0
  511. package/dist/esm/helpers/isActivePlatform.native.js +13 -0
  512. package/dist/esm/helpers/isActivePlatform.native.js.map +1 -0
  513. package/dist/esm/helpers/isActiveTheme.mjs +5 -0
  514. package/dist/esm/helpers/isActiveTheme.mjs.map +1 -0
  515. package/dist/esm/helpers/isActiveTheme.native.js +5 -0
  516. package/dist/esm/helpers/isActiveTheme.native.js.map +1 -0
  517. package/dist/esm/helpers/isGuiComponent.mjs +6 -0
  518. package/dist/esm/helpers/isGuiComponent.mjs.map +1 -0
  519. package/dist/esm/helpers/isGuiComponent.native.js +6 -0
  520. package/dist/esm/helpers/isGuiComponent.native.js.map +1 -0
  521. package/dist/esm/helpers/isGuiElement.mjs +5 -0
  522. package/dist/esm/helpers/isGuiElement.mjs.map +1 -0
  523. package/dist/esm/helpers/isGuiElement.native.js +7 -0
  524. package/dist/esm/helpers/isGuiElement.native.js.map +1 -0
  525. package/dist/esm/helpers/isObj.mjs +3 -0
  526. package/dist/esm/helpers/isObj.mjs.map +1 -0
  527. package/dist/esm/helpers/isObj.native.js +10 -0
  528. package/dist/esm/helpers/isObj.native.js.map +1 -0
  529. package/dist/esm/helpers/log.mjs +15 -0
  530. package/dist/esm/helpers/log.mjs.map +1 -0
  531. package/dist/esm/helpers/log.native.js +16 -0
  532. package/dist/esm/helpers/log.native.js.map +1 -0
  533. package/dist/esm/helpers/mainThreadPressEvents.mjs +3 -0
  534. package/dist/esm/helpers/mainThreadPressEvents.mjs.map +1 -0
  535. package/dist/esm/helpers/mainThreadPressEvents.native.js +22 -0
  536. package/dist/esm/helpers/mainThreadPressEvents.native.js.map +1 -0
  537. package/dist/esm/helpers/matchMedia.mjs +12 -0
  538. package/dist/esm/helpers/matchMedia.mjs.map +1 -0
  539. package/dist/esm/helpers/matchMedia.native.js +20 -0
  540. package/dist/esm/helpers/matchMedia.native.js.map +1 -0
  541. package/dist/esm/helpers/mediaObjectToString.mjs +12 -0
  542. package/dist/esm/helpers/mediaObjectToString.mjs.map +1 -0
  543. package/dist/esm/helpers/mediaObjectToString.native.js +17 -0
  544. package/dist/esm/helpers/mediaObjectToString.native.js.map +1 -0
  545. package/dist/esm/helpers/mediaState.mjs +18 -0
  546. package/dist/esm/helpers/mediaState.mjs.map +1 -0
  547. package/dist/esm/helpers/mediaState.native.js +20 -0
  548. package/dist/esm/helpers/mediaState.native.js.map +1 -0
  549. package/dist/esm/helpers/mergeProps.mjs +31 -0
  550. package/dist/esm/helpers/mergeProps.mjs.map +1 -0
  551. package/dist/esm/helpers/mergeProps.native.js +35 -0
  552. package/dist/esm/helpers/mergeProps.native.js.map +1 -0
  553. package/dist/esm/helpers/mergeRenderElementProps.mjs +9 -0
  554. package/dist/esm/helpers/mergeRenderElementProps.mjs.map +1 -0
  555. package/dist/esm/helpers/mergeRenderElementProps.native.js +9 -0
  556. package/dist/esm/helpers/mergeRenderElementProps.native.js.map +1 -0
  557. package/dist/esm/helpers/mergeSlotStyleProps.mjs +16 -0
  558. package/dist/esm/helpers/mergeSlotStyleProps.mjs.map +1 -0
  559. package/dist/esm/helpers/mergeSlotStyleProps.native.js +16 -0
  560. package/dist/esm/helpers/mergeSlotStyleProps.native.js.map +1 -0
  561. package/dist/esm/helpers/mergeVariants.mjs +17 -0
  562. package/dist/esm/helpers/mergeVariants.mjs.map +1 -0
  563. package/dist/esm/helpers/mergeVariants.native.js +18 -0
  564. package/dist/esm/helpers/mergeVariants.native.js.map +1 -0
  565. package/dist/esm/helpers/nativeOnlyProps.mjs +37 -0
  566. package/dist/esm/helpers/nativeOnlyProps.mjs.map +1 -0
  567. package/dist/esm/helpers/nativeOnlyProps.native.js +37 -0
  568. package/dist/esm/helpers/nativeOnlyProps.native.js.map +1 -0
  569. package/dist/esm/helpers/normalizeColor.mjs +11 -0
  570. package/dist/esm/helpers/normalizeColor.mjs.map +1 -0
  571. package/dist/esm/helpers/normalizeColor.native.js +22 -0
  572. package/dist/esm/helpers/normalizeColor.native.js.map +1 -0
  573. package/dist/esm/helpers/normalizeShadow.mjs +25 -0
  574. package/dist/esm/helpers/normalizeShadow.mjs.map +1 -0
  575. package/dist/esm/helpers/normalizeShadow.native.js +26 -0
  576. package/dist/esm/helpers/normalizeShadow.native.js.map +1 -0
  577. package/dist/esm/helpers/normalizeStyle.mjs +24 -0
  578. package/dist/esm/helpers/normalizeStyle.mjs.map +1 -0
  579. package/dist/esm/helpers/normalizeStyle.native.js +26 -0
  580. package/dist/esm/helpers/normalizeStyle.native.js.map +1 -0
  581. package/dist/esm/helpers/normalizeStylePropKeys.mjs +3 -0
  582. package/dist/esm/helpers/normalizeStylePropKeys.mjs.map +1 -0
  583. package/dist/esm/helpers/normalizeStylePropKeys.native.js +14 -0
  584. package/dist/esm/helpers/normalizeStylePropKeys.native.js.map +1 -0
  585. package/dist/esm/helpers/normalizeValueWithProperty.mjs +15 -0
  586. package/dist/esm/helpers/normalizeValueWithProperty.mjs.map +1 -0
  587. package/dist/esm/helpers/normalizeValueWithProperty.native.js +21 -0
  588. package/dist/esm/helpers/normalizeValueWithProperty.native.js.map +1 -0
  589. package/dist/esm/helpers/objectIdentityKey.mjs +16 -0
  590. package/dist/esm/helpers/objectIdentityKey.mjs.map +1 -0
  591. package/dist/esm/helpers/objectIdentityKey.native.js +21 -0
  592. package/dist/esm/helpers/objectIdentityKey.native.js.map +1 -0
  593. package/dist/esm/helpers/parseBorderShorthand.mjs +3 -0
  594. package/dist/esm/helpers/parseBorderShorthand.mjs.map +1 -0
  595. package/dist/esm/helpers/parseBorderShorthand.native.js +32 -0
  596. package/dist/esm/helpers/parseBorderShorthand.native.js.map +1 -0
  597. package/dist/esm/helpers/parseNativeStyle.mjs +110 -0
  598. package/dist/esm/helpers/parseNativeStyle.mjs.map +1 -0
  599. package/dist/esm/helpers/parseNativeStyle.native.js +125 -0
  600. package/dist/esm/helpers/parseNativeStyle.native.js.map +1 -0
  601. package/dist/esm/helpers/parseOutlineShorthand.mjs +3 -0
  602. package/dist/esm/helpers/parseOutlineShorthand.mjs.map +1 -0
  603. package/dist/esm/helpers/parseOutlineShorthand.native.js +32 -0
  604. package/dist/esm/helpers/parseOutlineShorthand.native.js.map +1 -0
  605. package/dist/esm/helpers/platformResolveValue.mjs +10 -0
  606. package/dist/esm/helpers/platformResolveValue.mjs.map +1 -0
  607. package/dist/esm/helpers/platformResolveValue.native.js +36 -0
  608. package/dist/esm/helpers/platformResolveValue.native.js.map +1 -0
  609. package/dist/esm/helpers/pointerEvents.mjs +3 -0
  610. package/dist/esm/helpers/pointerEvents.mjs.map +1 -0
  611. package/dist/esm/helpers/pointerEvents.native.js +94 -0
  612. package/dist/esm/helpers/pointerEvents.native.js.map +1 -0
  613. package/dist/esm/helpers/propMapper.mjs +176 -0
  614. package/dist/esm/helpers/propMapper.mjs.map +1 -0
  615. package/dist/esm/helpers/propMapper.native.js +267 -0
  616. package/dist/esm/helpers/propMapper.native.js.map +1 -0
  617. package/dist/esm/helpers/proxyThemeToParents.mjs +25 -0
  618. package/dist/esm/helpers/proxyThemeToParents.mjs.map +1 -0
  619. package/dist/esm/helpers/proxyThemeToParents.native.js +105 -0
  620. package/dist/esm/helpers/proxyThemeToParents.native.js.map +1 -0
  621. package/dist/esm/helpers/proxyThemeVariables.mjs +13 -0
  622. package/dist/esm/helpers/proxyThemeVariables.mjs.map +1 -0
  623. package/dist/esm/helpers/proxyThemeVariables.native.js +15 -0
  624. package/dist/esm/helpers/proxyThemeVariables.native.js.map +1 -0
  625. package/dist/esm/helpers/pseudoDescriptors.mjs +54 -0
  626. package/dist/esm/helpers/pseudoDescriptors.mjs.map +1 -0
  627. package/dist/esm/helpers/pseudoDescriptors.native.js +54 -0
  628. package/dist/esm/helpers/pseudoDescriptors.native.js.map +1 -0
  629. package/dist/esm/helpers/pseudoTransitions.mjs +41 -0
  630. package/dist/esm/helpers/pseudoTransitions.mjs.map +1 -0
  631. package/dist/esm/helpers/pseudoTransitions.native.js +45 -0
  632. package/dist/esm/helpers/pseudoTransitions.native.js.map +1 -0
  633. package/dist/esm/helpers/registerCSSVariable.mjs +35 -0
  634. package/dist/esm/helpers/registerCSSVariable.mjs.map +1 -0
  635. package/dist/esm/helpers/registerCSSVariable.native.js +38 -0
  636. package/dist/esm/helpers/registerCSSVariable.native.js.map +1 -0
  637. package/dist/esm/helpers/resolveAnimationDriver.mjs +5 -0
  638. package/dist/esm/helpers/resolveAnimationDriver.mjs.map +1 -0
  639. package/dist/esm/helpers/resolveAnimationDriver.native.js +6 -0
  640. package/dist/esm/helpers/resolveAnimationDriver.native.js.map +1 -0
  641. package/dist/esm/helpers/resolveCompoundTokens.mjs +14 -0
  642. package/dist/esm/helpers/resolveCompoundTokens.mjs.map +1 -0
  643. package/dist/esm/helpers/resolveCompoundTokens.native.js +14 -0
  644. package/dist/esm/helpers/resolveCompoundTokens.native.js.map +1 -0
  645. package/dist/esm/helpers/resolveRem.mjs +8 -0
  646. package/dist/esm/helpers/resolveRem.mjs.map +1 -0
  647. package/dist/esm/helpers/resolveRem.native.js +23 -0
  648. package/dist/esm/helpers/resolveRem.native.js.map +1 -0
  649. package/dist/esm/helpers/resolveSafeArea.mjs +11 -0
  650. package/dist/esm/helpers/resolveSafeArea.mjs.map +1 -0
  651. package/dist/esm/helpers/resolveSafeArea.native.js +16 -0
  652. package/dist/esm/helpers/resolveSafeArea.native.js.map +1 -0
  653. package/dist/esm/helpers/setElementProps.mjs +6 -0
  654. package/dist/esm/helpers/setElementProps.mjs.map +1 -0
  655. package/dist/esm/helpers/setElementProps.native.js +7 -0
  656. package/dist/esm/helpers/setElementProps.native.js.map +1 -0
  657. package/dist/esm/helpers/skipProps.mjs +21 -0
  658. package/dist/esm/helpers/skipProps.mjs.map +1 -0
  659. package/dist/esm/helpers/skipProps.native.js +21 -0
  660. package/dist/esm/helpers/skipProps.native.js.map +1 -0
  661. package/dist/esm/helpers/sortString.mjs +3 -0
  662. package/dist/esm/helpers/sortString.mjs.map +1 -0
  663. package/dist/esm/helpers/sortString.native.js +5 -0
  664. package/dist/esm/helpers/sortString.native.js.map +1 -0
  665. package/dist/esm/helpers/subscribeToContextGroup.mjs +58 -0
  666. package/dist/esm/helpers/subscribeToContextGroup.mjs.map +1 -0
  667. package/dist/esm/helpers/subscribeToContextGroup.native.js +105 -0
  668. package/dist/esm/helpers/subscribeToContextGroup.native.js.map +1 -0
  669. package/dist/esm/helpers/themeable.mjs +54 -0
  670. package/dist/esm/helpers/themeable.mjs.map +1 -0
  671. package/dist/esm/helpers/themeable.native.js +56 -0
  672. package/dist/esm/helpers/themeable.native.js.map +1 -0
  673. package/dist/esm/helpers/themes.mjs +15 -0
  674. package/dist/esm/helpers/themes.mjs.map +1 -0
  675. package/dist/esm/helpers/themes.native.js +15 -0
  676. package/dist/esm/helpers/themes.native.js.map +1 -0
  677. package/dist/esm/helpers/timer.mjs +9 -0
  678. package/dist/esm/helpers/timer.mjs.map +1 -0
  679. package/dist/esm/helpers/timer.native.js +9 -0
  680. package/dist/esm/helpers/timer.native.js.map +1 -0
  681. package/dist/esm/helpers/transformsToString.mjs +15 -0
  682. package/dist/esm/helpers/transformsToString.mjs.map +1 -0
  683. package/dist/esm/helpers/transformsToString.native.js +15 -0
  684. package/dist/esm/helpers/transformsToString.native.js.map +1 -0
  685. package/dist/esm/helpers/useRenderElement.mjs +25 -0
  686. package/dist/esm/helpers/useRenderElement.mjs.map +1 -0
  687. package/dist/esm/helpers/useRenderElement.native.js +26 -0
  688. package/dist/esm/helpers/useRenderElement.native.js.map +1 -0
  689. package/dist/esm/helpers/webPropsToSkip.mjs +3 -0
  690. package/dist/esm/helpers/webPropsToSkip.mjs.map +1 -0
  691. package/dist/esm/helpers/webPropsToSkip.native.js +50 -0
  692. package/dist/esm/helpers/webPropsToSkip.native.js.map +1 -0
  693. package/dist/esm/helpers/wrapStyleTags.mjs +18 -0
  694. package/dist/esm/helpers/wrapStyleTags.mjs.map +1 -0
  695. package/dist/esm/helpers/wrapStyleTags.native.js +3 -0
  696. package/dist/esm/helpers/wrapStyleTags.native.js.map +1 -0
  697. package/dist/esm/hooks/doesRootSchemeMatchSystem.mjs +5 -0
  698. package/dist/esm/hooks/doesRootSchemeMatchSystem.mjs.map +1 -0
  699. package/dist/esm/hooks/doesRootSchemeMatchSystem.native.js +8 -0
  700. package/dist/esm/hooks/doesRootSchemeMatchSystem.native.js.map +1 -0
  701. package/dist/esm/hooks/getThemeProxied.mjs +34 -0
  702. package/dist/esm/hooks/getThemeProxied.mjs.map +1 -0
  703. package/dist/esm/hooks/getThemeProxied.native.js +67 -0
  704. package/dist/esm/hooks/getThemeProxied.native.js.map +1 -0
  705. package/dist/esm/hooks/useComponentState.mjs +121 -0
  706. package/dist/esm/hooks/useComponentState.mjs.map +1 -0
  707. package/dist/esm/hooks/useComponentState.native.js +139 -0
  708. package/dist/esm/hooks/useComponentState.native.js.map +1 -0
  709. package/dist/esm/hooks/useDisableSSR.mjs +6 -0
  710. package/dist/esm/hooks/useDisableSSR.mjs.map +1 -0
  711. package/dist/esm/hooks/useDisableSSR.native.js +7 -0
  712. package/dist/esm/hooks/useDisableSSR.native.js.map +1 -0
  713. package/dist/esm/hooks/useIsTouchDevice.mjs +5 -0
  714. package/dist/esm/hooks/useIsTouchDevice.mjs.map +1 -0
  715. package/dist/esm/hooks/useIsTouchDevice.native.js +7 -0
  716. package/dist/esm/hooks/useIsTouchDevice.native.js.map +1 -0
  717. package/dist/esm/hooks/useMedia.mjs +145 -0
  718. package/dist/esm/hooks/useMedia.mjs.map +1 -0
  719. package/dist/esm/hooks/useMedia.native.js +177 -0
  720. package/dist/esm/hooks/useMedia.native.js.map +1 -0
  721. package/dist/esm/hooks/useProps.mjs +78 -0
  722. package/dist/esm/hooks/useProps.mjs.map +1 -0
  723. package/dist/esm/hooks/useProps.native.js +80 -0
  724. package/dist/esm/hooks/useProps.native.js.map +1 -0
  725. package/dist/esm/hooks/useTheme.mjs +22 -0
  726. package/dist/esm/hooks/useTheme.mjs.map +1 -0
  727. package/dist/esm/hooks/useTheme.native.js +26 -0
  728. package/dist/esm/hooks/useTheme.native.js.map +1 -0
  729. package/dist/esm/hooks/useThemeName.mjs +14 -0
  730. package/dist/esm/hooks/useThemeName.mjs.map +1 -0
  731. package/dist/esm/hooks/useThemeName.native.js +17 -0
  732. package/dist/esm/hooks/useThemeName.native.js.map +1 -0
  733. package/dist/esm/hooks/useThemeState.mjs +245 -0
  734. package/dist/esm/hooks/useThemeState.mjs.map +1 -0
  735. package/dist/esm/hooks/useThemeState.native.js +356 -0
  736. package/dist/esm/hooks/useThemeState.native.js.map +1 -0
  737. package/dist/esm/index.js +74 -0
  738. package/dist/esm/index.js.map +1 -0
  739. package/dist/esm/index.mjs +74 -0
  740. package/dist/esm/index.mjs.map +1 -0
  741. package/dist/esm/index.native.js +74 -0
  742. package/dist/esm/index.native.js.map +1 -0
  743. package/dist/esm/inject-styles.mjs +14 -0
  744. package/dist/esm/inject-styles.mjs.map +1 -0
  745. package/dist/esm/inject-styles.native.js +15 -0
  746. package/dist/esm/inject-styles.native.js.map +1 -0
  747. package/dist/esm/insertFont.mjs +49 -0
  748. package/dist/esm/insertFont.mjs.map +1 -0
  749. package/dist/esm/insertFont.native.js +46 -0
  750. package/dist/esm/insertFont.native.js.map +1 -0
  751. package/dist/esm/interfaces/CSSColorNames.mjs +2 -0
  752. package/dist/esm/interfaces/CSSColorNames.mjs.map +1 -0
  753. package/dist/esm/interfaces/CSSColorNames.native.js +2 -0
  754. package/dist/esm/interfaces/CSSColorNames.native.js.map +1 -0
  755. package/dist/esm/interfaces/GetRef.mjs +2 -0
  756. package/dist/esm/interfaces/GetRef.mjs.map +1 -0
  757. package/dist/esm/interfaces/GetRef.native.js +2 -0
  758. package/dist/esm/interfaces/GetRef.native.js.map +1 -0
  759. package/dist/esm/interfaces/GuiComponentEvents.mjs +2 -0
  760. package/dist/esm/interfaces/GuiComponentEvents.mjs.map +1 -0
  761. package/dist/esm/interfaces/GuiComponentEvents.native.js +2 -0
  762. package/dist/esm/interfaces/GuiComponentEvents.native.js.map +1 -0
  763. package/dist/esm/interfaces/GuiComponentPropsBaseBase.mjs +2 -0
  764. package/dist/esm/interfaces/GuiComponentPropsBaseBase.mjs.map +1 -0
  765. package/dist/esm/interfaces/GuiComponentPropsBaseBase.native.js +2 -0
  766. package/dist/esm/interfaces/GuiComponentPropsBaseBase.native.js.map +1 -0
  767. package/dist/esm/interfaces/RNExclusiveTypes.mjs +2 -0
  768. package/dist/esm/interfaces/RNExclusiveTypes.mjs.map +1 -0
  769. package/dist/esm/interfaces/RNExclusiveTypes.native.js +2 -0
  770. package/dist/esm/interfaces/RNExclusiveTypes.native.js.map +1 -0
  771. package/dist/esm/setupHooks.mjs +6 -0
  772. package/dist/esm/setupHooks.mjs.map +1 -0
  773. package/dist/esm/setupHooks.native.js +6 -0
  774. package/dist/esm/setupHooks.native.js.map +1 -0
  775. package/dist/esm/setupReactNative.mjs +24 -0
  776. package/dist/esm/setupReactNative.mjs.map +1 -0
  777. package/dist/esm/setupReactNative.native.js +28 -0
  778. package/dist/esm/setupReactNative.native.js.map +1 -0
  779. package/dist/esm/styled.mjs +91 -0
  780. package/dist/esm/styled.mjs.map +1 -0
  781. package/dist/esm/styled.native.js +100 -0
  782. package/dist/esm/styled.native.js.map +1 -0
  783. package/dist/esm/styledHtml.test-d.mjs +157 -0
  784. package/dist/esm/styledHtml.test-d.mjs.map +1 -0
  785. package/dist/esm/styledHtml.test-d.native.js +157 -0
  786. package/dist/esm/styledHtml.test-d.native.js.map +1 -0
  787. package/dist/esm/type-utils.mjs +2 -0
  788. package/dist/esm/type-utils.mjs.map +1 -0
  789. package/dist/esm/type-utils.native.js +2 -0
  790. package/dist/esm/type-utils.native.js.map +1 -0
  791. package/dist/esm/types.mjs +2 -0
  792. package/dist/esm/types.mjs.map +1 -0
  793. package/dist/esm/types.native.js +2 -0
  794. package/dist/esm/types.native.js.map +1 -0
  795. package/dist/esm/views/Configuration.mjs +16 -0
  796. package/dist/esm/views/Configuration.mjs.map +1 -0
  797. package/dist/esm/views/Configuration.native.js +17 -0
  798. package/dist/esm/views/Configuration.native.js.map +1 -0
  799. package/dist/esm/views/FontLanguage.mjs +14 -0
  800. package/dist/esm/views/FontLanguage.mjs.map +1 -0
  801. package/dist/esm/views/FontLanguage.native.js +20 -0
  802. package/dist/esm/views/FontLanguage.native.js.map +1 -0
  803. package/dist/esm/views/GuiProvider.mjs +60 -0
  804. package/dist/esm/views/GuiProvider.mjs.map +1 -0
  805. package/dist/esm/views/GuiProvider.native.js +62 -0
  806. package/dist/esm/views/GuiProvider.native.js.map +1 -0
  807. package/dist/esm/views/GuiRoot.mjs +34 -0
  808. package/dist/esm/views/GuiRoot.mjs.map +1 -0
  809. package/dist/esm/views/GuiRoot.native.js +5 -0
  810. package/dist/esm/views/GuiRoot.native.js.map +1 -0
  811. package/dist/esm/views/Slot.mjs +40 -0
  812. package/dist/esm/views/Slot.mjs.map +1 -0
  813. package/dist/esm/views/Slot.native.js +43 -0
  814. package/dist/esm/views/Slot.native.js.map +1 -0
  815. package/dist/esm/views/Text.mjs +35 -0
  816. package/dist/esm/views/Text.mjs.map +1 -0
  817. package/dist/esm/views/Text.native.js +26 -0
  818. package/dist/esm/views/Text.native.js.map +1 -0
  819. package/dist/esm/views/Theme.mjs +127 -0
  820. package/dist/esm/views/Theme.mjs.map +1 -0
  821. package/dist/esm/views/Theme.native.js +136 -0
  822. package/dist/esm/views/Theme.native.js.map +1 -0
  823. package/dist/esm/views/ThemeDebug.mjs +54 -0
  824. package/dist/esm/views/ThemeDebug.mjs.map +1 -0
  825. package/dist/esm/views/ThemeDebug.native.js +11 -0
  826. package/dist/esm/views/ThemeDebug.native.js.map +1 -0
  827. package/dist/esm/views/ThemeProvider.mjs +29 -0
  828. package/dist/esm/views/ThemeProvider.mjs.map +1 -0
  829. package/dist/esm/views/ThemeProvider.native.js +20 -0
  830. package/dist/esm/views/ThemeProvider.native.js.map +1 -0
  831. package/dist/esm/views/View.mjs +8 -0
  832. package/dist/esm/views/View.mjs.map +1 -0
  833. package/dist/esm/views/View.native.js +8 -0
  834. package/dist/esm/views/View.native.js.map +1 -0
  835. package/inject-styles/index.cjs +2 -0
  836. package/inject-styles/index.js +2 -0
  837. package/inject-styles.cjs +1 -0
  838. package/package.json +81 -0
  839. package/reset.css +59 -0
  840. package/src/Gui.ts +47 -0
  841. package/src/_withStableStyle.tsx +55 -0
  842. package/src/animationDriverTypes.test-d.ts +332 -0
  843. package/src/config.ts +232 -0
  844. package/src/constants/accessibilityDirectMap.native.tsx +10 -0
  845. package/src/constants/accessibilityDirectMap.tsx +11 -0
  846. package/src/constants/constants.ts +16 -0
  847. package/src/constants/isDevTools.ts +12 -0
  848. package/src/contexts/ComponentContext.tsx +16 -0
  849. package/src/contexts/GroupContext.tsx +4 -0
  850. package/src/createComponent.tsx +1806 -0
  851. package/src/createFont.ts +50 -0
  852. package/src/createGui.ts +363 -0
  853. package/src/createShorthands.ts +7 -0
  854. package/src/createTokens.ts +31 -0
  855. package/src/createVariable.ts +121 -0
  856. package/src/createVariables.ts +78 -0
  857. package/src/defaultComponentState.tsx +22 -0
  858. package/src/eventHandling.native.ts +184 -0
  859. package/src/eventHandling.ts +44 -0
  860. package/src/helpers/consoleLog.native.ts +2 -0
  861. package/src/helpers/createDesignSystem.ts +264 -0
  862. package/src/helpers/createMediaStyle.ts +167 -0
  863. package/src/helpers/createStyledContext.tsx +98 -0
  864. package/src/helpers/defaultAnimationDriver.tsx +23 -0
  865. package/src/helpers/defaultOffset.ts +1 -0
  866. package/src/helpers/expandStyle.ts +204 -0
  867. package/src/helpers/expandStyles.ts +42 -0
  868. package/src/helpers/getCSSStylesAtomic.native.ts +7 -0
  869. package/src/helpers/getCSSStylesAtomic.ts +263 -0
  870. package/src/helpers/getDefaultProps.ts +28 -0
  871. package/src/helpers/getDynamicVal.ts +63 -0
  872. package/src/helpers/getExpandedShorthands.ts +23 -0
  873. package/src/helpers/getFontLanguage.ts +2 -0
  874. package/src/helpers/getGroupPropParts.ts +46 -0
  875. package/src/helpers/getShorthandValue.ts +9 -0
  876. package/src/helpers/getSplitStyles.tsx +1768 -0
  877. package/src/helpers/getThemeCSSRules.native.ts +3 -0
  878. package/src/helpers/getThemeCSSRules.ts +192 -0
  879. package/src/helpers/getTokenForKey.ts +223 -0
  880. package/src/helpers/getVariantExtras.tsx +67 -0
  881. package/src/helpers/insertStyleRule.tsx +365 -0
  882. package/src/helpers/isActivePlatform.ts +14 -0
  883. package/src/helpers/isActiveTheme.ts +4 -0
  884. package/src/helpers/isGuiComponent.tsx +11 -0
  885. package/src/helpers/isGuiElement.tsx +11 -0
  886. package/src/helpers/isObj.ts +1 -0
  887. package/src/helpers/log.ts +17 -0
  888. package/src/helpers/mainThreadPressEvents.native.ts +41 -0
  889. package/src/helpers/mainThreadPressEvents.ts +6 -0
  890. package/src/helpers/matchMedia.native.ts +34 -0
  891. package/src/helpers/matchMedia.ts +17 -0
  892. package/src/helpers/mediaObjectToString.ts +30 -0
  893. package/src/helpers/mediaState.ts +32 -0
  894. package/src/helpers/mergeProps.ts +121 -0
  895. package/src/helpers/mergeRenderElementProps.ts +17 -0
  896. package/src/helpers/mergeSlotStyleProps.ts +46 -0
  897. package/src/helpers/mergeVariants.ts +40 -0
  898. package/src/helpers/nativeOnlyProps.ts +38 -0
  899. package/src/helpers/normalizeColor.native.ts +29 -0
  900. package/src/helpers/normalizeColor.ts +29 -0
  901. package/src/helpers/normalizeShadow.native.ts +20 -0
  902. package/src/helpers/normalizeShadow.ts +21 -0
  903. package/src/helpers/normalizeStyle.ts +42 -0
  904. package/src/helpers/normalizeStylePropKeys.native.ts +12 -0
  905. package/src/helpers/normalizeStylePropKeys.ts +3 -0
  906. package/src/helpers/normalizeValueWithProperty.ts +41 -0
  907. package/src/helpers/objectIdentityKey.tsx +20 -0
  908. package/src/helpers/parseBorderShorthand.native.ts +74 -0
  909. package/src/helpers/parseBorderShorthand.ts +6 -0
  910. package/src/helpers/parseNativeStyle.ts +193 -0
  911. package/src/helpers/parseOutlineShorthand.native.ts +62 -0
  912. package/src/helpers/parseOutlineShorthand.ts +6 -0
  913. package/src/helpers/platformResolveValue.native.ts +72 -0
  914. package/src/helpers/platformResolveValue.ts +22 -0
  915. package/src/helpers/pointerEvents.native.ts +143 -0
  916. package/src/helpers/pointerEvents.ts +9 -0
  917. package/src/helpers/propMapper.ts +404 -0
  918. package/src/helpers/proxyThemeToParents.ts +52 -0
  919. package/src/helpers/proxyThemeVariables.tsx +13 -0
  920. package/src/helpers/pseudoDescriptors.ts +74 -0
  921. package/src/helpers/pseudoTransitions.ts +97 -0
  922. package/src/helpers/registerCSSVariable.ts +54 -0
  923. package/src/helpers/resolveAnimationDriver.ts +23 -0
  924. package/src/helpers/resolveCompoundTokens.ts +28 -0
  925. package/src/helpers/resolveRem.native.ts +44 -0
  926. package/src/helpers/resolveRem.ts +17 -0
  927. package/src/helpers/resolveSafeArea.native.ts +18 -0
  928. package/src/helpers/resolveSafeArea.ts +10 -0
  929. package/src/helpers/setElementProps.native.tsx +9 -0
  930. package/src/helpers/setElementProps.tsx +5 -0
  931. package/src/helpers/skipProps.ts +35 -0
  932. package/src/helpers/sortString.ts +1 -0
  933. package/src/helpers/subscribeToContextGroup.tsx +99 -0
  934. package/src/helpers/themeable.tsx +104 -0
  935. package/src/helpers/themes.ts +23 -0
  936. package/src/helpers/timer.ts +9 -0
  937. package/src/helpers/transformsToString.ts +20 -0
  938. package/src/helpers/useRenderElement.tsx +73 -0
  939. package/src/helpers/webPropsToSkip.native.ts +56 -0
  940. package/src/helpers/webPropsToSkip.ts +1 -0
  941. package/src/helpers/wrapStyleTags.tsx +31 -0
  942. package/src/hooks/doesRootSchemeMatchSystem.native.ts +7 -0
  943. package/src/hooks/doesRootSchemeMatchSystem.ts +4 -0
  944. package/src/hooks/getThemeProxied.ts +202 -0
  945. package/src/hooks/useComponentState.ts +269 -0
  946. package/src/hooks/useDisableSSR.tsx +6 -0
  947. package/src/hooks/useIsTouchDevice.tsx +6 -0
  948. package/src/hooks/useMedia.tsx +298 -0
  949. package/src/hooks/useProps.tsx +158 -0
  950. package/src/hooks/useTheme.tsx +48 -0
  951. package/src/hooks/useThemeName.tsx +10 -0
  952. package/src/hooks/useThemeState.ts +558 -0
  953. package/src/index.ts +103 -0
  954. package/src/inject-styles.ts +20 -0
  955. package/src/insertFont.ts +81 -0
  956. package/src/interfaces/CSSColorNames.tsx +149 -0
  957. package/src/interfaces/GetRef.tsx +24 -0
  958. package/src/interfaces/GuiComponentEvents.tsx +18 -0
  959. package/src/interfaces/GuiComponentPropsBaseBase.tsx +124 -0
  960. package/src/interfaces/RNExclusiveTypes.ts +59 -0
  961. package/src/setupHooks.ts +27 -0
  962. package/src/setupReactNative.ts +60 -0
  963. package/src/styled.tsx +602 -0
  964. package/src/styledHtml.test-d.ts +286 -0
  965. package/src/type-utils.ts +30 -0
  966. package/src/types.tsx +3364 -0
  967. package/src/views/Configuration.tsx +20 -0
  968. package/src/views/FontLanguage.native.tsx +13 -0
  969. package/src/views/FontLanguage.tsx +18 -0
  970. package/src/views/GuiProvider.tsx +95 -0
  971. package/src/views/GuiRoot.native.tsx +9 -0
  972. package/src/views/GuiRoot.tsx +64 -0
  973. package/src/views/Slot.tsx +86 -0
  974. package/src/views/Text.tsx +71 -0
  975. package/src/views/Theme.tsx +246 -0
  976. package/src/views/ThemeDebug.native.tsx +17 -0
  977. package/src/views/ThemeDebug.tsx +95 -0
  978. package/src/views/ThemeProvider.tsx +45 -0
  979. package/src/views/View.tsx +25 -0
  980. package/tsconfig.json +44 -0
  981. package/tsconfig.test.json +9 -0
  982. package/types/Gui.d.ts +15 -0
  983. package/types/_withStableStyle.d.ts +4 -0
  984. package/types/config.d.ts +72 -0
  985. package/types/constants/accessibilityDirectMap.d.ts +6 -0
  986. package/types/constants/accessibilityDirectMap.native.d.ts +6 -0
  987. package/types/constants/constants.d.ts +5 -0
  988. package/types/constants/isDevTools.d.ts +2 -0
  989. package/types/contexts/ComponentContext.d.ts +4 -0
  990. package/types/contexts/GroupContext.d.ts +3 -0
  991. package/types/createComponent.d.ts +7 -0
  992. package/types/createFont.d.ts +3 -0
  993. package/types/createGui.d.ts +3 -0
  994. package/types/createShorthands.d.ts +3 -0
  995. package/types/createTokens.d.ts +22 -0
  996. package/types/createVariable.d.ts +22 -0
  997. package/types/createVariables.d.ts +10 -0
  998. package/types/defaultComponentState.d.ts +5 -0
  999. package/types/eventHandling.d.ts +27 -0
  1000. package/types/eventHandling.native.d.ts +12 -0
  1001. package/types/helpers/consoleLog.native.d.ts +7 -0
  1002. package/types/helpers/createDesignSystem.d.ts +47 -0
  1003. package/types/helpers/createMediaStyle.d.ts +5 -0
  1004. package/types/helpers/createStyledContext.d.ts +3 -0
  1005. package/types/helpers/defaultAnimationDriver.d.ts +3 -0
  1006. package/types/helpers/defaultOffset.d.ts +5 -0
  1007. package/types/helpers/expandStyle.d.ts +7 -0
  1008. package/types/helpers/expandStyles.d.ts +2 -0
  1009. package/types/helpers/getCSSStylesAtomic.d.ts +11 -0
  1010. package/types/helpers/getCSSStylesAtomic.native.d.ts +4 -0
  1011. package/types/helpers/getDefaultProps.d.ts +3 -0
  1012. package/types/helpers/getDynamicVal.d.ts +16 -0
  1013. package/types/helpers/getExpandedShorthands.d.ts +7 -0
  1014. package/types/helpers/getFontLanguage.d.ts +2 -0
  1015. package/types/helpers/getGroupPropParts.d.ts +7 -0
  1016. package/types/helpers/getShorthandValue.d.ts +2 -0
  1017. package/types/helpers/getSplitStyles.d.ts +13 -0
  1018. package/types/helpers/getThemeCSSRules.d.ts +10 -0
  1019. package/types/helpers/getThemeCSSRules.native.d.ts +2 -0
  1020. package/types/helpers/getTokenForKey.d.ts +6 -0
  1021. package/types/helpers/getVariantExtras.d.ts +4 -0
  1022. package/types/helpers/insertStyleRule.d.ts +10 -0
  1023. package/types/helpers/isActivePlatform.d.ts +2 -0
  1024. package/types/helpers/isActiveTheme.d.ts +2 -0
  1025. package/types/helpers/isGuiComponent.d.ts +5 -0
  1026. package/types/helpers/isGuiElement.d.ts +8 -0
  1027. package/types/helpers/isObj.d.ts +2 -0
  1028. package/types/helpers/log.d.ts +2 -0
  1029. package/types/helpers/mainThreadPressEvents.d.ts +2 -0
  1030. package/types/helpers/mainThreadPressEvents.native.d.ts +10 -0
  1031. package/types/helpers/matchMedia.d.ts +6 -0
  1032. package/types/helpers/matchMedia.native.d.ts +4 -0
  1033. package/types/helpers/mediaObjectToString.d.ts +3 -0
  1034. package/types/helpers/mediaState.d.ts +7 -0
  1035. package/types/helpers/mergeProps.d.ts +20 -0
  1036. package/types/helpers/mergeRenderElementProps.d.ts +7 -0
  1037. package/types/helpers/mergeSlotStyleProps.d.ts +10 -0
  1038. package/types/helpers/mergeVariants.d.ts +3 -0
  1039. package/types/helpers/nativeOnlyProps.d.ts +39 -0
  1040. package/types/helpers/normalizeColor.d.ts +8 -0
  1041. package/types/helpers/normalizeColor.native.d.ts +9 -0
  1042. package/types/helpers/normalizeShadow.d.ts +10 -0
  1043. package/types/helpers/normalizeShadow.native.d.ts +10 -0
  1044. package/types/helpers/normalizeStyle.d.ts +9 -0
  1045. package/types/helpers/normalizeStylePropKeys.d.ts +2 -0
  1046. package/types/helpers/normalizeStylePropKeys.native.d.ts +13 -0
  1047. package/types/helpers/normalizeValueWithProperty.d.ts +6 -0
  1048. package/types/helpers/objectIdentityKey.d.ts +2 -0
  1049. package/types/helpers/parseBorderShorthand.d.ts +3 -0
  1050. package/types/helpers/parseBorderShorthand.native.d.ts +3 -0
  1051. package/types/helpers/parseNativeStyle.d.ts +14 -0
  1052. package/types/helpers/parseOutlineShorthand.d.ts +3 -0
  1053. package/types/helpers/parseOutlineShorthand.native.d.ts +3 -0
  1054. package/types/helpers/platformResolveValue.d.ts +6 -0
  1055. package/types/helpers/platformResolveValue.native.d.ts +7 -0
  1056. package/types/helpers/pointerEvents.d.ts +8 -0
  1057. package/types/helpers/pointerEvents.native.d.ts +2 -0
  1058. package/types/helpers/propMapper.d.ts +5 -0
  1059. package/types/helpers/proxyThemeToParents.d.ts +4 -0
  1060. package/types/helpers/proxyThemeVariables.d.ts +2 -0
  1061. package/types/helpers/pseudoDescriptors.d.ts +51 -0
  1062. package/types/helpers/pseudoTransitions.d.ts +29 -0
  1063. package/types/helpers/registerCSSVariable.d.ts +9 -0
  1064. package/types/helpers/resolveAnimationDriver.d.ts +7 -0
  1065. package/types/helpers/resolveCompoundTokens.d.ts +9 -0
  1066. package/types/helpers/resolveRem.d.ts +13 -0
  1067. package/types/helpers/resolveRem.native.d.ts +13 -0
  1068. package/types/helpers/resolveSafeArea.d.ts +2 -0
  1069. package/types/helpers/resolveSafeArea.native.d.ts +2 -0
  1070. package/types/helpers/setElementProps.d.ts +2 -0
  1071. package/types/helpers/setElementProps.native.d.ts +2 -0
  1072. package/types/helpers/skipProps.d.ts +19 -0
  1073. package/types/helpers/sortString.d.ts +2 -0
  1074. package/types/helpers/subscribeToContextGroup.d.ts +10 -0
  1075. package/types/helpers/themeable.d.ts +3 -0
  1076. package/types/helpers/themes.d.ts +2 -0
  1077. package/types/helpers/timer.d.ts +2 -0
  1078. package/types/helpers/transformsToString.d.ts +2 -0
  1079. package/types/helpers/useRenderElement.d.ts +13 -0
  1080. package/types/helpers/webPropsToSkip.d.ts +2 -0
  1081. package/types/helpers/webPropsToSkip.native.d.ts +104 -0
  1082. package/types/helpers/wrapStyleTags.d.ts +3 -0
  1083. package/types/hooks/doesRootSchemeMatchSystem.d.ts +2 -0
  1084. package/types/hooks/doesRootSchemeMatchSystem.native.d.ts +2 -0
  1085. package/types/hooks/getThemeProxied.d.ts +23 -0
  1086. package/types/hooks/useComponentState.d.ts +25 -0
  1087. package/types/hooks/useDisableSSR.d.ts +3 -0
  1088. package/types/hooks/useIsTouchDevice.d.ts +2 -0
  1089. package/types/hooks/useMedia.d.ts +23 -0
  1090. package/types/hooks/useProps.d.ts +41 -0
  1091. package/types/hooks/useTheme.d.ts +9 -0
  1092. package/types/hooks/useThemeName.d.ts +3 -0
  1093. package/types/hooks/useThemeState.d.ts +11 -0
  1094. package/types/index.d.ts +77 -0
  1095. package/types/inject-styles.d.ts +7 -0
  1096. package/types/insertFont.d.ts +10 -0
  1097. package/types/interfaces/CSSColorNames.d.ts +2 -0
  1098. package/types/interfaces/GetRef.d.ts +6 -0
  1099. package/types/interfaces/GuiComponentEvents.d.ts +19 -0
  1100. package/types/interfaces/GuiComponentPropsBaseBase.d.ts +95 -0
  1101. package/types/interfaces/RNExclusiveTypes.d.ts +22 -0
  1102. package/types/setupHooks.d.ts +17 -0
  1103. package/types/setupReactNative.d.ts +5 -0
  1104. package/types/styled.d.ts +53 -0
  1105. package/types/type-utils.d.ts +13 -0
  1106. package/types/types.d.ts +1929 -0
  1107. package/types/views/Configuration.d.ts +10 -0
  1108. package/types/views/FontLanguage.d.ts +6 -0
  1109. package/types/views/FontLanguage.native.d.ts +3 -0
  1110. package/types/views/GuiProvider.d.ts +3 -0
  1111. package/types/views/GuiRoot.d.ts +15 -0
  1112. package/types/views/GuiRoot.native.d.ts +7 -0
  1113. package/types/views/Slot.d.ts +13 -0
  1114. package/types/views/Text.d.ts +4 -0
  1115. package/types/views/Theme.d.ts +16 -0
  1116. package/types/views/ThemeDebug.d.ts +10 -0
  1117. package/types/views/ThemeDebug.native.d.ts +10 -0
  1118. package/types/views/ThemeProvider.d.ts +3 -0
  1119. package/types/views/View.d.ts +8 -0
  1120. package/vitest.config.d.ts +3 -0
  1121. package/vitest.config.d.ts.map +1 -0
  1122. package/vitest.config.ts +14 -0
@@ -0,0 +1,98 @@
1
+ import type { Context, ReactNode } from 'react'
2
+ import React from 'react'
3
+ import type { StyledContext } from '../types'
4
+ import { mergeProps } from './mergeProps'
5
+ import { objectIdentityKey } from './objectIdentityKey'
6
+
7
+ // use const (not function declaration) to prevent esbuild from hoisting
8
+ // above __esm lazy init - function declarations get hoisted before
9
+ // import_react is initialized, causing undefined.default errors in SSR
10
+ export const createStyledContext = <VariantProps extends Record<string, any>>(
11
+ defaultValues?: VariantProps,
12
+ namespace = ''
13
+ ): StyledContext<VariantProps> => {
14
+ // avoid react compiler - we aren't breaking its rules but it mis-interprets
15
+ // how we change the context value
16
+ 'use no memo'
17
+
18
+ // lazy initialization fixes vite ssr hmr - module-level assignments can fail
19
+ // when React is undefined during __esm re-initialization order issues.
20
+ // also React.createContext is optimized oddly by React compiler and our
21
+ // uncommon usage confuses it, so we use dynamic access
22
+ const createReactContext = React[
23
+ Math.random() ? 'createContext' : 'createContext'
24
+ ] as typeof React.createContext
25
+ const useReactMemo = React[
26
+ Math.random() ? 'useMemo' : 'useMemo'
27
+ ] as typeof React.useMemo
28
+ const useReactContext = React[
29
+ Math.random() ? 'useContext' : 'useContext'
30
+ ] as typeof React.useContext
31
+
32
+ const OGContext = createReactContext<VariantProps | undefined>(defaultValues)
33
+ const OGProvider = OGContext.Provider
34
+ const Context = OGContext as any as StyledContext<VariantProps>
35
+ const scopedContexts = new Map<string, Context<VariantProps | undefined>>()
36
+ const LastScopeInNamespace = createReactContext<string>(namespace)
37
+
38
+ function getOrCreateScopedContext(scope: string) {
39
+ let ScopedContext = scopedContexts.get(scope)
40
+ if (!ScopedContext) {
41
+ ScopedContext = createReactContext<VariantProps | undefined>(defaultValues)
42
+ scopedContexts.set(scope, ScopedContext)
43
+ }
44
+ return ScopedContext!
45
+ }
46
+
47
+ const getNamespacedScope = (scope: string) =>
48
+ namespace ? `${namespace}--${scope}` : scope
49
+
50
+ const Provider = ({
51
+ children,
52
+ scope: scopeIn,
53
+ // performance: avoid creating objects
54
+ __disableMergeDefaultValues,
55
+ ...values
56
+ }: VariantProps & { children?: ReactNode; scope: string }) => {
57
+ const scope = getNamespacedScope(scopeIn)
58
+
59
+ const next = useReactMemo(() => {
60
+ if (__disableMergeDefaultValues) {
61
+ // we already merged and want to keep ordering
62
+ return values
63
+ }
64
+ return mergeProps(defaultValues!, values)
65
+ }, [objectIdentityKey(values)])
66
+
67
+ let ScopedProvider = OGProvider
68
+ if (scope) {
69
+ ScopedProvider = getOrCreateScopedContext(scope).Provider
70
+ }
71
+ return (
72
+ <LastScopeInNamespace.Provider value={scope}>
73
+ <ScopedProvider value={next as VariantProps}>{children}</ScopedProvider>
74
+ </LastScopeInNamespace.Provider>
75
+ )
76
+ }
77
+
78
+ // use consumerComponent just to give a better error message
79
+ const useStyledContext = (scopeIn = '') => {
80
+ const lastScopeInNamespace = useReactContext(LastScopeInNamespace)
81
+ const scope = namespace
82
+ ? scopeIn
83
+ ? getNamespacedScope(scopeIn)
84
+ : lastScopeInNamespace
85
+ : scopeIn
86
+ const context = scope ? getOrCreateScopedContext(scope) : OGContext
87
+ const value = useReactContext(context!) as VariantProps
88
+ return value
89
+ }
90
+
91
+ // @ts-expect-error we are overriding default provider
92
+ Context.Provider = Provider
93
+ Context.props = defaultValues
94
+ Context.context = OGContext as Context<VariantProps>
95
+ Context.useStyledContext = useStyledContext
96
+
97
+ return Context
98
+ }
@@ -0,0 +1,23 @@
1
+ import type { AnimationDriver } from '../types'
2
+
3
+ const noAnimationDriver = (method: string): any => {
4
+ console.warn(
5
+ `No animation driver configured. To use ${method}, you must pass \`animations\` to createGui. See: https://gui.hanzo.ai/docs/core/animations`
6
+ )
7
+ }
8
+
9
+ const createEmptyAnimationDriver = (): AnimationDriver => ({
10
+ isReactNative: false,
11
+ inputStyle: 'css',
12
+ outputStyle: 'css',
13
+ isStub: true,
14
+ animations: {},
15
+ useAnimations: () => noAnimationDriver('animations'),
16
+ usePresence: () => noAnimationDriver('usePresence'),
17
+ ResetPresence: () => noAnimationDriver('ResetPresence'),
18
+ useAnimatedNumber: () => noAnimationDriver('useAnimatedNumber'),
19
+ useAnimatedNumberStyle: () => noAnimationDriver('useAnimatedNumberStyle'),
20
+ useAnimatedNumberReaction: () => noAnimationDriver('useAnimatedNumberReaction'),
21
+ })
22
+
23
+ export const defaultAnimationDriver = createEmptyAnimationDriver()
@@ -0,0 +1 @@
1
+ export const defaultOffset = { height: 0, width: 0 }
@@ -0,0 +1,204 @@
1
+ /**
2
+ * Some parts adapted from react-native-web
3
+ * Copyright (c) Nicolas Gallagher licensed under the MIT license.
4
+ */
5
+
6
+ import { isAndroid, isWeb } from '@hanzogui/constants'
7
+
8
+ import { getSetting } from '../config'
9
+ import type { PropMappedValue } from '../types'
10
+ import { parseBorderShorthand } from './parseBorderShorthand'
11
+ import { parseOutlineShorthand } from './parseOutlineShorthand'
12
+
13
+ const neg1Flex = [
14
+ ['flexGrow', 0],
15
+ ['flexShrink', 1],
16
+ ['flexBasis', 'auto'],
17
+ ] satisfies PropMappedValue
18
+
19
+ export function expandStyle(key: string, value: any): PropMappedValue {
20
+ if (process.env.HANZO_GUI_TARGET === 'web') {
21
+ if (key === 'flex') {
22
+ if (value === -1) {
23
+ return neg1Flex
24
+ }
25
+ return [
26
+ ['flexGrow', value],
27
+ ['flexShrink', 1],
28
+ ['flexBasis', getSetting('styleCompat') === 'legacy' ? 'auto' : 0],
29
+ ]
30
+ }
31
+
32
+ switch (key) {
33
+ case 'writingDirection': {
34
+ return [['direction', value]]
35
+ }
36
+ // some safari-based browsers seem not to support without -webkit prefix
37
+ case 'backdropFilter': {
38
+ return [
39
+ ['backdropFilter', value],
40
+ ['WebkitBackdropFilter', value],
41
+ ]
42
+ }
43
+ }
44
+ }
45
+
46
+ if (process.env.HANZO_GUI_TARGET === 'native') {
47
+ if (isAndroid && key === 'elevationAndroid') {
48
+ return [['elevation', value]]
49
+ }
50
+
51
+ // native-only value transforms
52
+ switch (key) {
53
+ case 'objectFit': {
54
+ const resizeMode = resizeModeMap[value] || 'cover'
55
+ return [['resizeMode', resizeMode]]
56
+ }
57
+ case 'verticalAlign': {
58
+ return [['textAlignVertical', verticalAlignMap[value] || 'auto']]
59
+ }
60
+ case 'position': {
61
+ // position: fixed|sticky -> absolute on native
62
+ if (value === 'fixed' || value === 'sticky') {
63
+ return [['position', 'absolute']]
64
+ }
65
+ return
66
+ }
67
+ case 'backgroundImage': {
68
+ // RN 0.76+ uses experimental_backgroundImage
69
+ // value may be a parsed array (from parseNativeStyle) or a plain string
70
+ return [['experimental_backgroundImage', value]]
71
+ }
72
+ case 'border': {
73
+ // parse border shorthand string to individual properties
74
+ // on native, only supports a single border (all sides)
75
+ if (typeof value === 'string') {
76
+ const parsed = parseBorderShorthand(value)
77
+ if (parsed) {
78
+ return parsed
79
+ }
80
+ }
81
+ return
82
+ }
83
+ case 'outline': {
84
+ if (typeof value === 'string') {
85
+ const parsed = parseOutlineShorthand(value)
86
+ if (parsed) {
87
+ return parsed
88
+ }
89
+ }
90
+ return
91
+ }
92
+ }
93
+
94
+ // native-only key expansions (logical properties)
95
+ if (key in nativeExpansions) {
96
+ return nativeExpansions[key].map((k) => [k, value])
97
+ }
98
+ }
99
+
100
+ if (key in EXPANSIONS) {
101
+ return EXPANSIONS[key].map((k) => [k, value])
102
+ }
103
+ }
104
+
105
+ // native value transforms
106
+ const resizeModeMap: Record<string, string> = {
107
+ fill: 'stretch',
108
+ none: 'center',
109
+ 'scale-down': 'contain',
110
+ contain: 'contain',
111
+ cover: 'cover',
112
+ }
113
+
114
+ const verticalAlignMap: Record<string, string> = {
115
+ top: 'top',
116
+ middle: 'center',
117
+ bottom: 'bottom',
118
+ auto: 'auto',
119
+ }
120
+
121
+ // shared expansions
122
+ const all = ['Top', 'Right', 'Bottom', 'Left']
123
+ const horiz = ['Right', 'Left']
124
+ const vert = ['Top', 'Bottom']
125
+ const xy = ['X', 'Y']
126
+
127
+ const EXPANSIONS: Record<string, string[]> = {
128
+ borderColor: ['TopColor', 'RightColor', 'BottomColor', 'LeftColor'],
129
+ borderRadius: [
130
+ 'TopLeftRadius',
131
+ 'TopRightRadius',
132
+ 'BottomRightRadius',
133
+ 'BottomLeftRadius',
134
+ ],
135
+ borderWidth: ['TopWidth', 'RightWidth', 'BottomWidth', 'LeftWidth'],
136
+ margin: all,
137
+ marginHorizontal: horiz,
138
+ marginVertical: vert,
139
+ padding: all,
140
+ paddingHorizontal: horiz,
141
+ paddingVertical: vert,
142
+ ...(isWeb && {
143
+ // react-native only supports borderStyle
144
+ borderStyle: ['TopStyle', 'RightStyle', 'BottomStyle', 'LeftStyle'],
145
+ // react-native doesn't support X / Y
146
+ overflow: xy,
147
+ overscrollBehavior: xy,
148
+ }),
149
+ }
150
+
151
+ for (const parent in EXPANSIONS) {
152
+ const prefix = parent.slice(0, /[A-Z]/.exec(parent)?.index ?? parent.length)
153
+ EXPANSIONS[parent] = EXPANSIONS[parent].map((k) => `${prefix}${k}`)
154
+ }
155
+
156
+ // native-only expansions (logical properties not supported in RN)
157
+ const nativeExpansions: Record<string, string[]> = {
158
+ // logical border properties
159
+ borderBlockColor: ['borderTopColor', 'borderBottomColor'],
160
+ borderInlineColor: ['borderEndColor', 'borderStartColor'],
161
+ borderBlockWidth: ['borderTopWidth', 'borderBottomWidth'],
162
+ borderInlineWidth: ['borderEndWidth', 'borderStartWidth'],
163
+ borderBlockStyle: ['borderTopStyle', 'borderBottomStyle'],
164
+ borderInlineStyle: ['borderEndStyle', 'borderStartStyle'],
165
+ borderBlockStartColor: ['borderTopColor'],
166
+ borderBlockEndColor: ['borderBottomColor'],
167
+ borderInlineStartColor: ['borderStartColor'],
168
+ borderInlineEndColor: ['borderEndColor'],
169
+ borderBlockStartWidth: ['borderTopWidth'],
170
+ borderBlockEndWidth: ['borderBottomWidth'],
171
+ borderInlineStartWidth: ['borderStartWidth'],
172
+ borderInlineEndWidth: ['borderEndWidth'],
173
+ borderBlockStartStyle: ['borderTopStyle'],
174
+ borderBlockEndStyle: ['borderBottomStyle'],
175
+ borderInlineStartStyle: ['borderStartStyle'],
176
+ borderInlineEndStyle: ['borderEndStyle'],
177
+ // logical margin/padding
178
+ marginBlock: ['marginTop', 'marginBottom'],
179
+ marginInline: ['marginEnd', 'marginStart'],
180
+ paddingBlock: ['paddingTop', 'paddingBottom'],
181
+ paddingInline: ['paddingEnd', 'paddingStart'],
182
+ marginBlockStart: ['marginTop'],
183
+ marginBlockEnd: ['marginBottom'],
184
+ marginInlineStart: ['marginStart'],
185
+ marginInlineEnd: ['marginEnd'],
186
+ paddingBlockStart: ['paddingTop'],
187
+ paddingBlockEnd: ['paddingBottom'],
188
+ paddingInlineStart: ['paddingStart'],
189
+ paddingInlineEnd: ['paddingEnd'],
190
+ // logical sizing
191
+ minBlockSize: ['minHeight'],
192
+ maxBlockSize: ['maxHeight'],
193
+ minInlineSize: ['minWidth'],
194
+ maxInlineSize: ['maxWidth'],
195
+ blockSize: ['height'],
196
+ inlineSize: ['width'],
197
+ // inset
198
+ inset: ['top', 'right', 'bottom', 'left'],
199
+ insetBlock: ['top', 'bottom'],
200
+ insetBlockStart: ['top'],
201
+ insetBlockEnd: ['bottom'],
202
+ insetInlineStart: ['left'],
203
+ insetInlineEnd: ['right'],
204
+ }
@@ -0,0 +1,42 @@
1
+ import { isWeb } from '@hanzogui/constants'
2
+ import { normalizeShadow } from './normalizeShadow'
3
+
4
+ export function fixStyles(style: Record<string, any>) {
5
+ if (process.env.HANZO_GUI_TARGET === 'native') {
6
+ if ('elevationAndroid' in style) {
7
+ // @ts-ignore
8
+ style['elevation'] = style.elevationAndroid
9
+ // @ts-ignore
10
+ delete style.elevationAndroid
11
+ }
12
+ }
13
+
14
+ // TODO deprecate for web-style shadows
15
+ if (
16
+ style.shadowRadius != null ||
17
+ style.shadowColor ||
18
+ style.shadowOpacity != null ||
19
+ style.shadowOffset
20
+ ) {
21
+ Object.assign(style, normalizeShadow(style))
22
+ }
23
+
24
+ // could be optimized better
25
+ // ensure border style set by default to solid
26
+ for (const key in borderDefaults) {
27
+ if (key in style) {
28
+ style[borderDefaults[key]] ||= 'solid'
29
+ }
30
+ }
31
+ }
32
+
33
+ // native doesn't support specific border edge style
34
+ const nativeStyle = isWeb ? null : 'borderStyle'
35
+ const borderDefaults = {
36
+ borderWidth: 'borderStyle',
37
+ borderBottomWidth: nativeStyle || 'borderBottomStyle',
38
+ borderTopWidth: nativeStyle || 'borderTopStyle',
39
+ borderLeftWidth: nativeStyle || 'borderLeftStyle',
40
+ borderRightWidth: nativeStyle || 'borderRightStyle',
41
+ // TODO: need to add borderBlock and borderInline here, but they are alot and might impact performance
42
+ }
@@ -0,0 +1,7 @@
1
+ const empty = () => {
2
+ console.warn('no-op native')
3
+ }
4
+
5
+ export const getCSSStylesAtomic = empty
6
+ export const getStyleAtomic = empty
7
+ export const styleToCSS = empty
@@ -0,0 +1,263 @@
1
+ /**
2
+ * Some parts adapted from react-native-web
3
+ * Copyright (c) Nicolas Gallagher licensed under the MIT license.
4
+ */
5
+
6
+ import type { StyleObject } from '@hanzogui/helpers'
7
+ import { cssShorthandLonghands, simpleHash } from '@hanzogui/helpers'
8
+ import { getConfigMaybe } from '../config'
9
+ import { isMediaKey } from '../hooks/useMedia'
10
+ import type { GuiInternalConfig, ViewStyleWithPseudos } from '../types'
11
+ import { defaultOffset } from './defaultOffset'
12
+ import { normalizeColor } from './normalizeColor'
13
+ import { normalizeValueWithProperty } from './normalizeValueWithProperty'
14
+ import type { PseudoDescriptor } from './pseudoDescriptors'
15
+ import { pseudoDescriptors } from './pseudoDescriptors'
16
+ import { transformsToString } from './transformsToString'
17
+
18
+ // refactor this file away next...
19
+
20
+ export function getCSSStylesAtomic(style: ViewStyleWithPseudos) {
21
+ styleToCSS(style)
22
+ const out: StyleObject[] = []
23
+ for (const key in style) {
24
+ if (key === '$$css') continue
25
+ const val = style[key]
26
+ if (key in pseudoDescriptors) {
27
+ if (val) {
28
+ out.push(...getStyleAtomic(val, pseudoDescriptors[key]))
29
+ }
30
+ } else if (isMediaKey(key)) {
31
+ for (const subKey in val) {
32
+ const so = getStyleObject(val, subKey)
33
+ if (so) {
34
+ so[0] = key // set the property to be eg $platform-web so we can use it above
35
+ out.push(so)
36
+ }
37
+ }
38
+ } else {
39
+ const so = getStyleObject(style, key)
40
+ if (so) {
41
+ out.push(so)
42
+ }
43
+ }
44
+ }
45
+ return out
46
+ }
47
+
48
+ export const getStyleAtomic = (
49
+ style: ViewStyleWithPseudos,
50
+ pseudo?: PseudoDescriptor
51
+ ): StyleObject[] => {
52
+ styleToCSS(style)
53
+ const out: StyleObject[] = []
54
+ for (const key in style) {
55
+ const so = getStyleObject(style, key, pseudo)
56
+ if (so) {
57
+ out.push(so)
58
+ }
59
+ }
60
+ return out
61
+ }
62
+
63
+ let conf: GuiInternalConfig | null = null
64
+
65
+ // this could be cached for performance?
66
+ const getStyleObject = (
67
+ style: ViewStyleWithPseudos,
68
+ key: string,
69
+ pseudo?: PseudoDescriptor
70
+ ): StyleObject | undefined => {
71
+ let val = style[key]
72
+ if (val == null) return
73
+ // transform
74
+ if (key === 'transform' && Array.isArray(style.transform)) {
75
+ val = transformsToString(val)
76
+ }
77
+ const value = normalizeValueWithProperty(val, key)
78
+ const hash = simpleHash(typeof value === 'string' ? value : `${value}`)
79
+ const pseudoPrefix = pseudo ? `0${pseudo.name}-` : ''
80
+ conf ||= getConfigMaybe()
81
+ const shortProp = conf?.inverseShorthands[key] || key
82
+ let identifier = `_${shortProp}-${pseudoPrefix}${hash}`
83
+ if (key === 'pointerEvents' && !pseudo) {
84
+ if (value === 'box-none') identifier = '_pe-boxnone'
85
+ else if (value === 'box-only') identifier = '_pe-boxonly'
86
+ }
87
+ const rules = createAtomicRules(identifier, key, value, pseudo)
88
+ return [
89
+ // array for performance
90
+ key,
91
+ value,
92
+ identifier,
93
+ pseudo?.name as any,
94
+ rules,
95
+ ]
96
+ }
97
+
98
+ export function styleToCSS(style: Record<string, any>) {
99
+ // box-shadow
100
+ const { shadowOffset, shadowRadius, shadowColor, shadowOpacity } = style
101
+ if (
102
+ shadowRadius != null ||
103
+ shadowColor ||
104
+ shadowOffset != null ||
105
+ shadowOpacity != null
106
+ ) {
107
+ const offset = shadowOffset || defaultOffset
108
+ const width = normalizeValueWithProperty(offset.width)
109
+ const height = normalizeValueWithProperty(offset.height)
110
+ const radius = normalizeValueWithProperty(shadowRadius)
111
+ const color = normalizeColor(shadowColor, shadowOpacity)
112
+ if (color) {
113
+ const shadow = `${width} ${height} ${radius} ${color}`
114
+ style.boxShadow = style.boxShadow ? `${style.boxShadow}, ${shadow}` : shadow
115
+ }
116
+ delete style.shadowOffset
117
+ delete style.shadowRadius
118
+ delete style.shadowColor
119
+ delete style.shadowOpacity
120
+ }
121
+
122
+ // text-shadow
123
+ const { textShadowColor, textShadowOffset, textShadowRadius } = style
124
+ if (textShadowColor || textShadowOffset || textShadowRadius) {
125
+ const { height, width } = textShadowOffset || defaultOffset
126
+ const radius = textShadowRadius || 0
127
+ const color = normalizeValueWithProperty(textShadowColor, 'textShadowColor')
128
+ if (color && (height !== 0 || width !== 0 || radius !== 0)) {
129
+ const blurRadius = normalizeValueWithProperty(radius)
130
+ const offsetX = normalizeValueWithProperty(width)
131
+ const offsetY = normalizeValueWithProperty(height)
132
+ style.textShadow = `${offsetX} ${offsetY} ${blurRadius} ${color}`
133
+ }
134
+ delete style.textShadowColor
135
+ delete style.textShadowOffset
136
+ delete style.textShadowRadius
137
+ }
138
+ }
139
+
140
+ function createDeclarationBlock(style: [string, any][], important = false) {
141
+ let next = ''
142
+ for (const [key, value] of style) {
143
+ next += `${hyphenateStyleName(key)}:${value}${important ? ' !important' : ''};`
144
+ }
145
+ return `{${next}}`
146
+ }
147
+
148
+ const hcache = {}
149
+ const toHyphenLower = (match: string) => `-${match.toLowerCase()}`
150
+ const hyphenateStyleName = (key: string) => {
151
+ if (key in hcache) return hcache[key]
152
+ const val = key.replace(/[A-Z]/g, toHyphenLower)
153
+ hcache[key] = val
154
+ return val
155
+ }
156
+
157
+ // adding one more :root so we always override react native web styles :/
158
+ const selectorPriority = (() => {
159
+ const res: Record<string, string> = {}
160
+ for (const key in pseudoDescriptors) {
161
+ const pseudo = pseudoDescriptors[key]
162
+ res[pseudo.name] = `${[...Array(pseudo.priority)].map(() => ':root').join('')} `
163
+ }
164
+ return res
165
+ })()
166
+
167
+ function createAtomicRules(
168
+ identifier: string,
169
+ property: string,
170
+ value: any,
171
+ pseudo?: PseudoDescriptor
172
+ ): string[] {
173
+ const pseudoIdPostfix = pseudo
174
+ ? pseudo.name === 'disabled'
175
+ ? `[aria-disabled]`
176
+ : `:${pseudo.name}`
177
+ : ''
178
+ const pseudoSelector = pseudo?.selector
179
+
180
+ // longhands get .cls.cls for higher specificity over shorthands
181
+ const cls =
182
+ property in cssShorthandLonghands ? `.${identifier}.${identifier}` : `.${identifier}`
183
+
184
+ let selector = pseudo
185
+ ? pseudoSelector
186
+ ? `${pseudoSelector} ${cls}`
187
+ : `${selectorPriority[pseudo.name]} ${cls}${pseudoIdPostfix}`
188
+ : `:root ${cls}`
189
+
190
+ // enter style on css driver needs both:
191
+ // .t_unmounted .selector
192
+ // .selector.t_unmounted
193
+ if (pseudoSelector === pseudoDescriptors.enterStyle.selector) {
194
+ selector = `${selector}, .${identifier}${pseudoSelector}`
195
+ }
196
+
197
+ const important = !!pseudo
198
+
199
+ let rules: string[] = []
200
+
201
+ // Handle non-standard properties and object values that require multiple
202
+ // CSS rules to be created.
203
+ switch (property) {
204
+ // Equivalent to using '::placeholder'
205
+ case 'placeholderTextColor': {
206
+ const block = createDeclarationBlock(
207
+ [
208
+ ['color', value],
209
+ ['opacity', 1],
210
+ ],
211
+ important
212
+ )
213
+ rules.push(`${selector}::placeholder${block}`)
214
+ break
215
+ }
216
+
217
+ // all webkit prefixed rules
218
+ case 'backgroundClip':
219
+ case 'userSelect': {
220
+ const propertyCapitalized = `${property[0].toUpperCase()}${property.slice(1)}`
221
+ const webkitProperty = `Webkit${propertyCapitalized}`
222
+ const block = createDeclarationBlock(
223
+ [
224
+ [property, value],
225
+ [webkitProperty, value],
226
+ ],
227
+ important
228
+ )
229
+ rules.push(`${selector}${block}`)
230
+ break
231
+ }
232
+
233
+ // Polyfill for additional 'pointer-events' values
234
+ case 'pointerEvents': {
235
+ let finalValue = value
236
+ if (value === 'auto' || value === 'box-only') {
237
+ finalValue = 'auto'
238
+ } else if (value === 'none' || value === 'box-none') {
239
+ finalValue = 'none'
240
+ }
241
+ const block = createDeclarationBlock([['pointerEvents', finalValue]], true)
242
+ rules.push(`${selector}${block}`)
243
+ break
244
+ }
245
+
246
+ default: {
247
+ const block = createDeclarationBlock([[property, value]], important)
248
+ rules.push(`${selector}${block}`)
249
+ break
250
+ }
251
+ }
252
+
253
+ // hover styles need to be conditional
254
+ // perhaps this can be generalized but for now lets just shortcut
255
+ // and hardcode for hover styles, if we need to later we can
256
+ // WEIRD SYNTAX, SEE:
257
+ // https://stackoverflow.com/questions/40532204/media-query-for-devices-supporting-hover
258
+ if (pseudo?.name === 'hover') {
259
+ rules = rules.map((r) => `@media (hover) {${r}}`)
260
+ }
261
+
262
+ return rules
263
+ }
@@ -0,0 +1,28 @@
1
+ import { getConfig } from '../config'
2
+ import type { StaticConfig } from '../types'
3
+
4
+ // merge both default props, styled context props, and default text props
5
+ export const getDefaultProps = (
6
+ staticConfig: StaticConfig,
7
+ propsComponentName?: string
8
+ ) => {
9
+ let defaultProps = staticConfig?.defaultProps
10
+
11
+ const conf = getConfig()
12
+ const name =
13
+ propsComponentName ||
14
+ staticConfig?.componentName ||
15
+ // important: this is how we end up getting the defaultProps we set in createGui
16
+ (staticConfig.isText ? 'Text' : 'View')
17
+
18
+ const userDefaultProps = conf?.defaultProps?.[name]
19
+
20
+ if (userDefaultProps) {
21
+ // component's staticConfig.defaultProps wins over global config defaults
22
+ defaultProps = defaultProps
23
+ ? { ...userDefaultProps, ...defaultProps }
24
+ : userDefaultProps
25
+ }
26
+
27
+ return defaultProps
28
+ }