@hanzogui/react-native-web-internals 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 (420) hide show
  1. package/LICENSE +21 -0
  2. package/dist/cjs/StyleSheet/__tests__/compiler-createReactDOMStyle-test.cjs +240 -0
  3. package/dist/cjs/StyleSheet/__tests__/compiler-test.cjs +407 -0
  4. package/dist/cjs/StyleSheet/__tests__/dom-createOrderedCSSStyleSheet-test.cjs +121 -0
  5. package/dist/cjs/StyleSheet/__tests__/index-test.cjs +404 -0
  6. package/dist/cjs/StyleSheet/__tests__/preprocess-test.cjs +108 -0
  7. package/dist/cjs/StyleSheet/__tests__/validate-test.cjs +36 -0
  8. package/dist/cjs/StyleSheet/compiler/createReactDOMStyle.cjs +87 -0
  9. package/dist/cjs/StyleSheet/compiler/hash.cjs +26 -0
  10. package/dist/cjs/StyleSheet/compiler/hyphenateStyleName.cjs +36 -0
  11. package/dist/cjs/StyleSheet/compiler/index.cjs +318 -0
  12. package/dist/cjs/StyleSheet/compiler/normalizeColor.cjs +40 -0
  13. package/dist/cjs/StyleSheet/compiler/normalizeValueWithProperty.cjs +43 -0
  14. package/dist/cjs/StyleSheet/compiler/resolveShadowValue.cjs +48 -0
  15. package/dist/cjs/StyleSheet/dom/createCSSStyleSheet.cjs +37 -0
  16. package/dist/cjs/StyleSheet/dom/createOrderedCSSStyleSheet.cjs +110 -0
  17. package/dist/cjs/StyleSheet/dom/index.cjs +67 -0
  18. package/dist/cjs/StyleSheet/index.cjs +57 -0
  19. package/dist/cjs/StyleSheet/preprocess.cjs +101 -0
  20. package/dist/cjs/StyleSheet/validate.cjs +69 -0
  21. package/dist/cjs/TextAncestorContext.cjs +27 -0
  22. package/dist/cjs/colorProps.cjs +37 -0
  23. package/dist/cjs/index.cjs +103 -0
  24. package/dist/cjs/modules/AccessibilityUtil/__tests__/propsToAccessibilityComponent-test.cjs +50 -0
  25. package/dist/cjs/modules/AccessibilityUtil/__tests__/propsToAriaRole-test.cjs +40 -0
  26. package/dist/cjs/modules/AccessibilityUtil/index.cjs +33 -0
  27. package/dist/cjs/modules/AccessibilityUtil/isDisabled.cjs +26 -0
  28. package/dist/cjs/modules/AccessibilityUtil/propsToAccessibilityComponent.cjs +57 -0
  29. package/dist/cjs/modules/AccessibilityUtil/propsToAriaRole.cjs +47 -0
  30. package/dist/cjs/modules/AssetRegistry/index.cjs +33 -0
  31. package/dist/cjs/modules/ImageLoader/index.cjs +111 -0
  32. package/dist/cjs/modules/InteractionManager.cjs +184 -0
  33. package/dist/cjs/modules/Platform/__tests__/index-test.cjs +48 -0
  34. package/dist/cjs/modules/Platform/index.cjs +30 -0
  35. package/dist/cjs/modules/TextInputState/index.cjs +55 -0
  36. package/dist/cjs/modules/UIManager/__tests__/index-test.cjs +90 -0
  37. package/dist/cjs/modules/UIManager/index.cjs +60 -0
  38. package/dist/cjs/modules/canUseDOM.cjs +26 -0
  39. package/dist/cjs/modules/createDOMProps/__tests__/index-test.cjs +156 -0
  40. package/dist/cjs/modules/createDOMProps/index.cjs +179 -0
  41. package/dist/cjs/modules/createEventHandle/__tests__/index-test.cjs +344 -0
  42. package/dist/cjs/modules/createEventHandle/index.cjs +67 -0
  43. package/dist/cjs/modules/dismissKeyboard/index.cjs +29 -0
  44. package/dist/cjs/modules/forwardedProps/index.cjs +161 -0
  45. package/dist/cjs/modules/getBoundingClientRect/index.cjs +28 -0
  46. package/dist/cjs/modules/invariant.cjs +36 -0
  47. package/dist/cjs/modules/isSelectionValid/index.cjs +35 -0
  48. package/dist/cjs/modules/isWebColor/index.cjs +26 -0
  49. package/dist/cjs/modules/mergeRefs/__tests__/index-test.cjs +42 -0
  50. package/dist/cjs/modules/mergeRefs/index.cjs +42 -0
  51. package/dist/cjs/modules/modality/__tests__/index-test.cjs +32 -0
  52. package/dist/cjs/modules/modality/index.cjs +135 -0
  53. package/dist/cjs/modules/multiplyStyleLengthValue/__tests__/index-test.cjs +30 -0
  54. package/dist/cjs/modules/multiplyStyleLengthValue/index.cjs +35 -0
  55. package/dist/cjs/modules/normalizeColor/index.cjs +39 -0
  56. package/dist/cjs/modules/pick/index.cjs +30 -0
  57. package/dist/cjs/modules/processColor/__tests__/index-test.cjs +66 -0
  58. package/dist/cjs/modules/processColor/index.cjs +42 -0
  59. package/dist/cjs/modules/requestIdleCallback/index.cjs +44 -0
  60. package/dist/cjs/modules/setValueForStyles/dangerousStyleValue.cjs +35 -0
  61. package/dist/cjs/modules/setValueForStyles/index.cjs +35 -0
  62. package/dist/cjs/modules/unitlessNumbers/index.cjs +85 -0
  63. package/dist/cjs/modules/useElementLayout/index.cjs +39 -0
  64. package/dist/cjs/modules/useEvent/__tests__/index-test.cjs +408 -0
  65. package/dist/cjs/modules/useEvent/index.cjs +45 -0
  66. package/dist/cjs/modules/useHover/__tests__/index-test.cjs +273 -0
  67. package/dist/cjs/modules/useHover/index.cjs +97 -0
  68. package/dist/cjs/modules/useLayoutEffect/index.cjs +39 -0
  69. package/dist/cjs/modules/useLocale/index.cjs +66 -0
  70. package/dist/cjs/modules/useLocale/isLocaleRTL.cjs +83 -0
  71. package/dist/cjs/modules/useMergeRefs/__tests__/index-test.cjs +102 -0
  72. package/dist/cjs/modules/useMergeRefs/index.cjs +43 -0
  73. package/dist/cjs/modules/usePlatformMethods/index.cjs +35 -0
  74. package/dist/cjs/modules/useStable/__tests__/index-test.cjs +92 -0
  75. package/dist/cjs/modules/useStable/index.cjs +42 -0
  76. package/dist/cjs/styleTypes.cjs +16 -0
  77. package/dist/cjs/types.cjs +16 -0
  78. package/dist/esm/StyleSheet/__tests__/compiler-createReactDOMStyle-test.mjs +219 -0
  79. package/dist/esm/StyleSheet/__tests__/compiler-createReactDOMStyle-test.mjs.map +1 -0
  80. package/dist/esm/StyleSheet/__tests__/compiler-test.mjs +408 -0
  81. package/dist/esm/StyleSheet/__tests__/compiler-test.mjs.map +1 -0
  82. package/dist/esm/StyleSheet/__tests__/dom-createOrderedCSSStyleSheet-test.mjs +100 -0
  83. package/dist/esm/StyleSheet/__tests__/dom-createOrderedCSSStyleSheet-test.mjs.map +1 -0
  84. package/dist/esm/StyleSheet/__tests__/index-test.mjs +383 -0
  85. package/dist/esm/StyleSheet/__tests__/index-test.mjs.map +1 -0
  86. package/dist/esm/StyleSheet/__tests__/preprocess-test.mjs +109 -0
  87. package/dist/esm/StyleSheet/__tests__/preprocess-test.mjs.map +1 -0
  88. package/dist/esm/StyleSheet/__tests__/validate-test.mjs +37 -0
  89. package/dist/esm/StyleSheet/__tests__/validate-test.mjs.map +1 -0
  90. package/dist/esm/StyleSheet/compiler/createReactDOMStyle.mjs +63 -0
  91. package/dist/esm/StyleSheet/compiler/createReactDOMStyle.mjs.map +1 -0
  92. package/dist/esm/StyleSheet/compiler/hash.mjs +3 -0
  93. package/dist/esm/StyleSheet/compiler/hash.mjs.map +1 -0
  94. package/dist/esm/StyleSheet/compiler/hyphenateStyleName.mjs +13 -0
  95. package/dist/esm/StyleSheet/compiler/hyphenateStyleName.mjs.map +1 -0
  96. package/dist/esm/StyleSheet/compiler/index.mjs +292 -0
  97. package/dist/esm/StyleSheet/compiler/index.mjs.map +1 -0
  98. package/dist/esm/StyleSheet/compiler/normalizeColor.mjs +17 -0
  99. package/dist/esm/StyleSheet/compiler/normalizeColor.mjs.map +1 -0
  100. package/dist/esm/StyleSheet/compiler/normalizeValueWithProperty.mjs +20 -0
  101. package/dist/esm/StyleSheet/compiler/normalizeValueWithProperty.mjs.map +1 -0
  102. package/dist/esm/StyleSheet/compiler/resolveShadowValue.mjs +25 -0
  103. package/dist/esm/StyleSheet/compiler/resolveShadowValue.mjs.map +1 -0
  104. package/dist/esm/StyleSheet/dom/createCSSStyleSheet.mjs +14 -0
  105. package/dist/esm/StyleSheet/dom/createCSSStyleSheet.mjs.map +1 -0
  106. package/dist/esm/StyleSheet/dom/createOrderedCSSStyleSheet.mjs +87 -0
  107. package/dist/esm/StyleSheet/dom/createOrderedCSSStyleSheet.mjs.map +1 -0
  108. package/dist/esm/StyleSheet/dom/index.mjs +44 -0
  109. package/dist/esm/StyleSheet/dom/index.mjs.map +1 -0
  110. package/dist/esm/StyleSheet/index.mjs +33 -0
  111. package/dist/esm/StyleSheet/index.mjs.map +1 -0
  112. package/dist/esm/StyleSheet/preprocess.mjs +75 -0
  113. package/dist/esm/StyleSheet/preprocess.mjs.map +1 -0
  114. package/dist/esm/StyleSheet/validate.mjs +46 -0
  115. package/dist/esm/StyleSheet/validate.mjs.map +1 -0
  116. package/dist/esm/TextAncestorContext.mjs +4 -0
  117. package/dist/esm/TextAncestorContext.mjs.map +1 -0
  118. package/dist/esm/colorProps.mjs +14 -0
  119. package/dist/esm/colorProps.mjs.map +1 -0
  120. package/dist/esm/index.js +45 -0
  121. package/dist/esm/index.js.map +1 -0
  122. package/dist/esm/index.mjs +45 -0
  123. package/dist/esm/index.mjs.map +1 -0
  124. package/dist/esm/modules/AccessibilityUtil/__tests__/propsToAccessibilityComponent-test.mjs +29 -0
  125. package/dist/esm/modules/AccessibilityUtil/__tests__/propsToAccessibilityComponent-test.mjs.map +1 -0
  126. package/dist/esm/modules/AccessibilityUtil/__tests__/propsToAriaRole-test.mjs +19 -0
  127. package/dist/esm/modules/AccessibilityUtil/__tests__/propsToAriaRole-test.mjs.map +1 -0
  128. package/dist/esm/modules/AccessibilityUtil/index.mjs +10 -0
  129. package/dist/esm/modules/AccessibilityUtil/index.mjs.map +1 -0
  130. package/dist/esm/modules/AccessibilityUtil/isDisabled.mjs +3 -0
  131. package/dist/esm/modules/AccessibilityUtil/isDisabled.mjs.map +1 -0
  132. package/dist/esm/modules/AccessibilityUtil/propsToAccessibilityComponent.mjs +34 -0
  133. package/dist/esm/modules/AccessibilityUtil/propsToAccessibilityComponent.mjs.map +1 -0
  134. package/dist/esm/modules/AccessibilityUtil/propsToAriaRole.mjs +24 -0
  135. package/dist/esm/modules/AccessibilityUtil/propsToAriaRole.mjs.map +1 -0
  136. package/dist/esm/modules/AssetRegistry/index.mjs +9 -0
  137. package/dist/esm/modules/AssetRegistry/index.mjs.map +1 -0
  138. package/dist/esm/modules/ImageLoader/index.mjs +87 -0
  139. package/dist/esm/modules/ImageLoader/index.mjs.map +1 -0
  140. package/dist/esm/modules/InteractionManager.mjs +161 -0
  141. package/dist/esm/modules/InteractionManager.mjs.map +1 -0
  142. package/dist/esm/modules/Platform/__tests__/index-test.mjs +27 -0
  143. package/dist/esm/modules/Platform/__tests__/index-test.mjs.map +1 -0
  144. package/dist/esm/modules/Platform/index.mjs +7 -0
  145. package/dist/esm/modules/Platform/index.mjs.map +1 -0
  146. package/dist/esm/modules/TextInputState/index.mjs +32 -0
  147. package/dist/esm/modules/TextInputState/index.mjs.map +1 -0
  148. package/dist/esm/modules/UIManager/__tests__/index-test.mjs +69 -0
  149. package/dist/esm/modules/UIManager/__tests__/index-test.mjs.map +1 -0
  150. package/dist/esm/modules/UIManager/index.mjs +37 -0
  151. package/dist/esm/modules/UIManager/index.mjs.map +1 -0
  152. package/dist/esm/modules/canUseDOM.mjs +3 -0
  153. package/dist/esm/modules/canUseDOM.mjs.map +1 -0
  154. package/dist/esm/modules/createDOMProps/__tests__/index-test.mjs +135 -0
  155. package/dist/esm/modules/createDOMProps/__tests__/index-test.mjs.map +1 -0
  156. package/dist/esm/modules/createDOMProps/index.mjs +155 -0
  157. package/dist/esm/modules/createDOMProps/index.mjs.map +1 -0
  158. package/dist/esm/modules/createEventHandle/__tests__/index-test.mjs +323 -0
  159. package/dist/esm/modules/createEventHandle/__tests__/index-test.mjs.map +1 -0
  160. package/dist/esm/modules/createEventHandle/index.mjs +42 -0
  161. package/dist/esm/modules/createEventHandle/index.mjs.map +1 -0
  162. package/dist/esm/modules/dismissKeyboard/index.mjs +6 -0
  163. package/dist/esm/modules/dismissKeyboard/index.mjs.map +1 -0
  164. package/dist/esm/modules/forwardedProps/index.mjs +128 -0
  165. package/dist/esm/modules/forwardedProps/index.mjs.map +1 -0
  166. package/dist/esm/modules/getBoundingClientRect/index.mjs +5 -0
  167. package/dist/esm/modules/getBoundingClientRect/index.mjs.map +1 -0
  168. package/dist/esm/modules/invariant.mjs +12 -0
  169. package/dist/esm/modules/invariant.mjs.map +1 -0
  170. package/dist/esm/modules/isSelectionValid/index.mjs +12 -0
  171. package/dist/esm/modules/isSelectionValid/index.mjs.map +1 -0
  172. package/dist/esm/modules/isWebColor/index.mjs +3 -0
  173. package/dist/esm/modules/isWebColor/index.mjs.map +1 -0
  174. package/dist/esm/modules/mergeRefs/__tests__/index-test.mjs +21 -0
  175. package/dist/esm/modules/mergeRefs/__tests__/index-test.mjs.map +1 -0
  176. package/dist/esm/modules/mergeRefs/index.mjs +19 -0
  177. package/dist/esm/modules/mergeRefs/index.mjs.map +1 -0
  178. package/dist/esm/modules/modality/__tests__/index-test.mjs +33 -0
  179. package/dist/esm/modules/modality/__tests__/index-test.mjs.map +1 -0
  180. package/dist/esm/modules/modality/index.mjs +109 -0
  181. package/dist/esm/modules/modality/index.mjs.map +1 -0
  182. package/dist/esm/modules/multiplyStyleLengthValue/__tests__/index-test.mjs +9 -0
  183. package/dist/esm/modules/multiplyStyleLengthValue/__tests__/index-test.mjs.map +1 -0
  184. package/dist/esm/modules/multiplyStyleLengthValue/index.mjs +12 -0
  185. package/dist/esm/modules/multiplyStyleLengthValue/index.mjs.map +1 -0
  186. package/dist/esm/modules/normalizeColor/index.mjs +16 -0
  187. package/dist/esm/modules/normalizeColor/index.mjs.map +1 -0
  188. package/dist/esm/modules/pick/index.mjs +7 -0
  189. package/dist/esm/modules/pick/index.mjs.map +1 -0
  190. package/dist/esm/modules/processColor/__tests__/index-test.mjs +45 -0
  191. package/dist/esm/modules/processColor/__tests__/index-test.mjs.map +1 -0
  192. package/dist/esm/modules/processColor/index.mjs +8 -0
  193. package/dist/esm/modules/processColor/index.mjs.map +1 -0
  194. package/dist/esm/modules/requestIdleCallback/index.mjs +20 -0
  195. package/dist/esm/modules/requestIdleCallback/index.mjs.map +1 -0
  196. package/dist/esm/modules/setValueForStyles/dangerousStyleValue.mjs +12 -0
  197. package/dist/esm/modules/setValueForStyles/dangerousStyleValue.mjs.map +1 -0
  198. package/dist/esm/modules/setValueForStyles/index.mjs +12 -0
  199. package/dist/esm/modules/setValueForStyles/index.mjs.map +1 -0
  200. package/dist/esm/modules/unitlessNumbers/index.mjs +62 -0
  201. package/dist/esm/modules/unitlessNumbers/index.mjs.map +1 -0
  202. package/dist/esm/modules/useElementLayout/index.mjs +16 -0
  203. package/dist/esm/modules/useElementLayout/index.mjs.map +1 -0
  204. package/dist/esm/modules/useEvent/__tests__/index-test.mjs +387 -0
  205. package/dist/esm/modules/useEvent/__tests__/index-test.mjs.map +1 -0
  206. package/dist/esm/modules/useEvent/index.mjs +22 -0
  207. package/dist/esm/modules/useEvent/index.mjs.map +1 -0
  208. package/dist/esm/modules/useHover/__tests__/index-test.mjs +252 -0
  209. package/dist/esm/modules/useHover/__tests__/index-test.mjs.map +1 -0
  210. package/dist/esm/modules/useHover/index.mjs +74 -0
  211. package/dist/esm/modules/useHover/index.mjs.map +1 -0
  212. package/dist/esm/modules/useLayoutEffect/index.mjs +5 -0
  213. package/dist/esm/modules/useLayoutEffect/index.mjs.map +1 -0
  214. package/dist/esm/modules/useLocale/index.mjs +30 -0
  215. package/dist/esm/modules/useLocale/index.mjs.map +1 -0
  216. package/dist/esm/modules/useLocale/isLocaleRTL.mjs +60 -0
  217. package/dist/esm/modules/useLocale/isLocaleRTL.mjs.map +1 -0
  218. package/dist/esm/modules/useMergeRefs/__tests__/index-test.mjs +81 -0
  219. package/dist/esm/modules/useMergeRefs/__tests__/index-test.mjs.map +1 -0
  220. package/dist/esm/modules/useMergeRefs/index.mjs +9 -0
  221. package/dist/esm/modules/useMergeRefs/index.mjs.map +1 -0
  222. package/dist/esm/modules/usePlatformMethods/index.mjs +12 -0
  223. package/dist/esm/modules/usePlatformMethods/index.mjs.map +1 -0
  224. package/dist/esm/modules/useStable/__tests__/index-test.mjs +71 -0
  225. package/dist/esm/modules/useStable/__tests__/index-test.mjs.map +1 -0
  226. package/dist/esm/modules/useStable/index.mjs +8 -0
  227. package/dist/esm/modules/useStable/index.mjs.map +1 -0
  228. package/dist/esm/styleTypes.mjs +2 -0
  229. package/dist/esm/styleTypes.mjs.map +1 -0
  230. package/dist/esm/types.mjs +2 -0
  231. package/dist/esm/types.mjs.map +1 -0
  232. package/package.json +58 -0
  233. package/src/StyleSheet/__tests__/compiler-createReactDOMStyle-test.tsx +236 -0
  234. package/src/StyleSheet/__tests__/compiler-test.tsx +426 -0
  235. package/src/StyleSheet/__tests__/dom-createOrderedCSSStyleSheet-test.tsx +169 -0
  236. package/src/StyleSheet/__tests__/index-test.tsx +406 -0
  237. package/src/StyleSheet/__tests__/preprocess-test.tsx +107 -0
  238. package/src/StyleSheet/__tests__/validate-test.tsx +42 -0
  239. package/src/StyleSheet/compiler/createReactDOMStyle.tsx +215 -0
  240. package/src/StyleSheet/compiler/hash.tsx +1 -0
  241. package/src/StyleSheet/compiler/hyphenateStyleName.tsx +25 -0
  242. package/src/StyleSheet/compiler/index.tsx +478 -0
  243. package/src/StyleSheet/compiler/normalizeColor.tsx +35 -0
  244. package/src/StyleSheet/compiler/normalizeValueWithProperty.tsx +34 -0
  245. package/src/StyleSheet/compiler/resolveShadowValue.tsx +26 -0
  246. package/src/StyleSheet/dom/createCSSStyleSheet.tsx +42 -0
  247. package/src/StyleSheet/dom/createOrderedCSSStyleSheet.tsx +195 -0
  248. package/src/StyleSheet/dom/index.tsx +92 -0
  249. package/src/StyleSheet/index.tsx +99 -0
  250. package/src/StyleSheet/preprocess.tsx +119 -0
  251. package/src/StyleSheet/validate.tsx +90 -0
  252. package/src/TextAncestorContext.tsx +13 -0
  253. package/src/colorProps.tsx +12 -0
  254. package/src/index.tsx +58 -0
  255. package/src/modules/AccessibilityUtil/__tests__/propsToAccessibilityComponent-test.tsx +44 -0
  256. package/src/modules/AccessibilityUtil/__tests__/propsToAriaRole-test.tsx +25 -0
  257. package/src/modules/AccessibilityUtil/index.tsx +18 -0
  258. package/src/modules/AccessibilityUtil/isDisabled.tsx +13 -0
  259. package/src/modules/AccessibilityUtil/propsToAccessibilityComponent.tsx +54 -0
  260. package/src/modules/AccessibilityUtil/propsToAriaRole.tsx +37 -0
  261. package/src/modules/AssetRegistry/index.tsx +32 -0
  262. package/src/modules/ImageLoader/index.tsx +165 -0
  263. package/src/modules/InteractionManager.tsx +315 -0
  264. package/src/modules/Platform/__tests__/index-test.tsx +45 -0
  265. package/src/modules/Platform/index.tsx +15 -0
  266. package/src/modules/TextInputState/index.tsx +62 -0
  267. package/src/modules/UIManager/__tests__/index-test.tsx +87 -0
  268. package/src/modules/UIManager/index.tsx +68 -0
  269. package/src/modules/canUseDOM.tsx +14 -0
  270. package/src/modules/createDOMProps/__tests__/index-test.tsx +138 -0
  271. package/src/modules/createDOMProps/index.tsx +436 -0
  272. package/src/modules/createEventHandle/__tests__/index-test.tsx +459 -0
  273. package/src/modules/createEventHandle/index.tsx +100 -0
  274. package/src/modules/dismissKeyboard/index.tsx +14 -0
  275. package/src/modules/forwardedProps/index.tsx +145 -0
  276. package/src/modules/getBoundingClientRect/index.tsx +17 -0
  277. package/src/modules/invariant.ts +23 -0
  278. package/src/modules/isSelectionValid/index.tsx +20 -0
  279. package/src/modules/isWebColor/index.tsx +14 -0
  280. package/src/modules/mergeRefs/__tests__/index-test.tsx +32 -0
  281. package/src/modules/mergeRefs/index.tsx +36 -0
  282. package/src/modules/modality/__tests__/index-test.tsx +66 -0
  283. package/src/modules/modality/index.tsx +228 -0
  284. package/src/modules/multiplyStyleLengthValue/__tests__/index-test.tsx +23 -0
  285. package/src/modules/multiplyStyleLengthValue/index.tsx +26 -0
  286. package/src/modules/normalizeColor/index.tsx +32 -0
  287. package/src/modules/pick/index.tsx +25 -0
  288. package/src/modules/processColor/__tests__/index-test.tsx +78 -0
  289. package/src/modules/processColor/index.tsx +28 -0
  290. package/src/modules/requestIdleCallback/index.tsx +35 -0
  291. package/src/modules/setValueForStyles/dangerousStyleValue.tsx +74 -0
  292. package/src/modules/setValueForStyles/index.tsx +39 -0
  293. package/src/modules/unitlessNumbers/index.tsx +77 -0
  294. package/src/modules/useElementLayout/index.tsx +28 -0
  295. package/src/modules/useEvent/__tests__/index-test.tsx +511 -0
  296. package/src/modules/useEvent/index.tsx +64 -0
  297. package/src/modules/useHover/__tests__/index-test.tsx +342 -0
  298. package/src/modules/useHover/index.tsx +181 -0
  299. package/src/modules/useLayoutEffect/index.ts +15 -0
  300. package/src/modules/useLocale/index.tsx +57 -0
  301. package/src/modules/useLocale/isLocaleRTL.tsx +74 -0
  302. package/src/modules/useMergeRefs/__tests__/index-test.tsx +91 -0
  303. package/src/modules/useMergeRefs/index.tsx +22 -0
  304. package/src/modules/usePlatformMethods/index.tsx +40 -0
  305. package/src/modules/useStable/__tests__/index-test.tsx +101 -0
  306. package/src/modules/useStable/index.tsx +24 -0
  307. package/src/styleTypes.ts +321 -0
  308. package/src/types.ts +77 -0
  309. package/types/StyleSheet/compiler/createReactDOMStyle.d.ts +18 -0
  310. package/types/StyleSheet/compiler/createReactDOMStyle.d.ts.map +1 -0
  311. package/types/StyleSheet/compiler/hash.d.ts +2 -0
  312. package/types/StyleSheet/compiler/hash.d.ts.map +1 -0
  313. package/types/StyleSheet/compiler/hyphenateStyleName.d.ts +10 -0
  314. package/types/StyleSheet/compiler/hyphenateStyleName.d.ts.map +1 -0
  315. package/types/StyleSheet/compiler/index.d.ts +39 -0
  316. package/types/StyleSheet/compiler/index.d.ts.map +1 -0
  317. package/types/StyleSheet/compiler/normalizeColor.d.ts +10 -0
  318. package/types/StyleSheet/compiler/normalizeColor.d.ts.map +1 -0
  319. package/types/StyleSheet/compiler/normalizeValueWithProperty.d.ts +10 -0
  320. package/types/StyleSheet/compiler/normalizeValueWithProperty.d.ts.map +1 -0
  321. package/types/StyleSheet/compiler/resolveShadowValue.d.ts +10 -0
  322. package/types/StyleSheet/compiler/resolveShadowValue.d.ts.map +1 -0
  323. package/types/StyleSheet/dom/createCSSStyleSheet.d.ts +10 -0
  324. package/types/StyleSheet/dom/createCSSStyleSheet.d.ts.map +1 -0
  325. package/types/StyleSheet/dom/createOrderedCSSStyleSheet.d.ts +29 -0
  326. package/types/StyleSheet/dom/createOrderedCSSStyleSheet.d.ts.map +1 -0
  327. package/types/StyleSheet/dom/index.d.ts +15 -0
  328. package/types/StyleSheet/dom/index.d.ts.map +1 -0
  329. package/types/StyleSheet/index.d.ts +69 -0
  330. package/types/StyleSheet/index.d.ts.map +1 -0
  331. package/types/StyleSheet/preprocess.d.ts +16 -0
  332. package/types/StyleSheet/preprocess.d.ts.map +1 -0
  333. package/types/StyleSheet/validate.d.ts +10 -0
  334. package/types/StyleSheet/validate.d.ts.map +1 -0
  335. package/types/TextAncestorContext.d.ts +11 -0
  336. package/types/TextAncestorContext.d.ts.map +1 -0
  337. package/types/colorProps.d.ts +13 -0
  338. package/types/colorProps.d.ts.map +1 -0
  339. package/types/index.d.ts +45 -0
  340. package/types/index.d.ts.map +1 -0
  341. package/types/modules/AccessibilityUtil/index.d.ts +16 -0
  342. package/types/modules/AccessibilityUtil/index.d.ts.map +1 -0
  343. package/types/modules/AccessibilityUtil/isDisabled.d.ts +10 -0
  344. package/types/modules/AccessibilityUtil/isDisabled.d.ts.map +1 -0
  345. package/types/modules/AccessibilityUtil/propsToAccessibilityComponent.d.ts +10 -0
  346. package/types/modules/AccessibilityUtil/propsToAccessibilityComponent.d.ts.map +1 -0
  347. package/types/modules/AccessibilityUtil/propsToAriaRole.d.ts +12 -0
  348. package/types/modules/AccessibilityUtil/propsToAriaRole.d.ts.map +1 -0
  349. package/types/modules/AssetRegistry/index.d.ts +22 -0
  350. package/types/modules/AssetRegistry/index.d.ts.map +1 -0
  351. package/types/modules/ImageLoader/index.d.ts +27 -0
  352. package/types/modules/ImageLoader/index.d.ts.map +1 -0
  353. package/types/modules/InteractionManager.d.ts +48 -0
  354. package/types/modules/InteractionManager.d.ts.map +1 -0
  355. package/types/modules/Platform/index.d.ts +15 -0
  356. package/types/modules/Platform/index.d.ts.map +1 -0
  357. package/types/modules/TextInputState/index.d.ts +38 -0
  358. package/types/modules/TextInputState/index.d.ts.map +1 -0
  359. package/types/modules/UIManager/index.d.ts +23 -0
  360. package/types/modules/UIManager/index.d.ts.map +1 -0
  361. package/types/modules/canUseDOM.d.ts +10 -0
  362. package/types/modules/canUseDOM.d.ts.map +1 -0
  363. package/types/modules/createDOMProps/index.d.ts +12 -0
  364. package/types/modules/createDOMProps/index.d.ts.map +1 -0
  365. package/types/modules/createEventHandle/index.d.ts +20 -0
  366. package/types/modules/createEventHandle/index.d.ts.map +1 -0
  367. package/types/modules/dismissKeyboard/index.d.ts +10 -0
  368. package/types/modules/dismissKeyboard/index.d.ts.map +1 -0
  369. package/types/modules/forwardedProps/index.d.ts +383 -0
  370. package/types/modules/forwardedProps/index.d.ts.map +1 -0
  371. package/types/modules/getBoundingClientRect/index.d.ts +10 -0
  372. package/types/modules/getBoundingClientRect/index.d.ts.map +1 -0
  373. package/types/modules/invariant.d.ts +3 -0
  374. package/types/modules/invariant.d.ts.map +1 -0
  375. package/types/modules/isSelectionValid/index.d.ts +10 -0
  376. package/types/modules/isSelectionValid/index.d.ts.map +1 -0
  377. package/types/modules/isWebColor/index.d.ts +10 -0
  378. package/types/modules/isWebColor/index.d.ts.map +1 -0
  379. package/types/modules/mergeRefs/index.d.ts +11 -0
  380. package/types/modules/mergeRefs/index.d.ts.map +1 -0
  381. package/types/modules/modality/index.d.ts +17 -0
  382. package/types/modules/modality/index.d.ts.map +1 -0
  383. package/types/modules/multiplyStyleLengthValue/index.d.ts +10 -0
  384. package/types/modules/multiplyStyleLengthValue/index.d.ts.map +1 -0
  385. package/types/modules/normalizeColor/index.d.ts +10 -0
  386. package/types/modules/normalizeColor/index.d.ts.map +1 -0
  387. package/types/modules/pick/index.d.ts +12 -0
  388. package/types/modules/pick/index.d.ts.map +1 -0
  389. package/types/modules/processColor/index.d.ts +11 -0
  390. package/types/modules/processColor/index.d.ts.map +1 -0
  391. package/types/modules/requestIdleCallback/index.d.ts +3 -0
  392. package/types/modules/requestIdleCallback/index.d.ts.map +1 -0
  393. package/types/modules/setValueForStyles/dangerousStyleValue.d.ts +11 -0
  394. package/types/modules/setValueForStyles/dangerousStyleValue.d.ts.map +1 -0
  395. package/types/modules/setValueForStyles/index.d.ts +9 -0
  396. package/types/modules/setValueForStyles/index.d.ts.map +1 -0
  397. package/types/modules/unitlessNumbers/index.d.ts +60 -0
  398. package/types/modules/unitlessNumbers/index.d.ts.map +1 -0
  399. package/types/modules/useElementLayout/index.d.ts +4 -0
  400. package/types/modules/useElementLayout/index.d.ts.map +1 -0
  401. package/types/modules/useEvent/index.d.ts +24 -0
  402. package/types/modules/useEvent/index.d.ts.map +1 -0
  403. package/types/modules/useHover/index.d.ts +21 -0
  404. package/types/modules/useHover/index.d.ts.map +1 -0
  405. package/types/modules/useLayoutEffect/index.d.ts +13 -0
  406. package/types/modules/useLayoutEffect/index.d.ts.map +1 -0
  407. package/types/modules/useLocale/index.d.ts +14 -0
  408. package/types/modules/useLocale/index.d.ts.map +1 -0
  409. package/types/modules/useLocale/isLocaleRTL.d.ts +13 -0
  410. package/types/modules/useLocale/isLocaleRTL.d.ts.map +1 -0
  411. package/types/modules/useMergeRefs/index.d.ts +11 -0
  412. package/types/modules/useMergeRefs/index.d.ts.map +1 -0
  413. package/types/modules/usePlatformMethods/index.d.ts +18 -0
  414. package/types/modules/usePlatformMethods/index.d.ts.map +1 -0
  415. package/types/modules/useStable/index.d.ts +10 -0
  416. package/types/modules/useStable/index.d.ts.map +1 -0
  417. package/types/styleTypes.d.ts +211 -0
  418. package/types/styleTypes.d.ts.map +1 -0
  419. package/types/types.d.ts +46 -0
  420. package/types/types.d.ts.map +1 -0
@@ -0,0 +1,161 @@
1
+ import { invariant } from "./invariant.mjs";
2
+ import { requestIdleCallback } from "./requestIdleCallback/index.mjs";
3
+ class EventEmitter {
4
+ _registry = {};
5
+ addListener(eventType, listener, context) {
6
+ const registrations = this._allocate(eventType),
7
+ registration = {
8
+ context,
9
+ listener,
10
+ remove: () => {
11
+ registrations.delete(registration);
12
+ }
13
+ };
14
+ return registrations.add(registration), registration;
15
+ }
16
+ emit(eventType, ...args) {
17
+ const registrations = this._registry[eventType];
18
+ if (registrations != null) for (const registration of Array.from(registrations)) registration.listener.apply(registration.context, args);
19
+ }
20
+ _allocate(eventType) {
21
+ let registrations = this._registry[eventType];
22
+ return registrations == null && (registrations = /* @__PURE__ */new Set(), this._registry[eventType] = registrations), registrations;
23
+ }
24
+ }
25
+ class TaskQueue {
26
+ _queueStack;
27
+ _onMoreTasks;
28
+ constructor({
29
+ onMoreTasks
30
+ }) {
31
+ this._onMoreTasks = onMoreTasks, this._queueStack = [{
32
+ tasks: [],
33
+ popable: !0
34
+ }];
35
+ }
36
+ enqueueTasks(tasks) {
37
+ tasks.forEach(task => this._enqueue(task));
38
+ }
39
+ cancelTasks(tasksToCancel) {
40
+ this._queueStack = this._queueStack.map(queue => ({
41
+ ...queue,
42
+ tasks: queue.tasks.filter(task => !tasksToCancel.includes(task))
43
+ })).filter((queue, idx) => queue.tasks.length > 0 || idx === 0);
44
+ }
45
+ hasTasksToProcess() {
46
+ return this._getCurrentQueue().length > 0;
47
+ }
48
+ processNext() {
49
+ const queue = this._getCurrentQueue();
50
+ if (queue.length) {
51
+ const task = queue.shift();
52
+ try {
53
+ typeof task == "object" && task && "gen" in task ? this._genPromise(task) : typeof task == "object" && task && "run" in task ? task.run() : (invariant(typeof task == "function", `Expected Function, SimpleTask, or PromiseTask, but got:
54
+ ` + JSON.stringify(task, null, 2)), task());
55
+ } catch (e) {
56
+ if (e instanceof Error) {
57
+ const taskName = task && typeof task == "object" && "name" in task ? task.name : "";
58
+ e.message = "TaskQueue: Error with task " + taskName + ": " + e.message;
59
+ }
60
+ throw e;
61
+ }
62
+ }
63
+ }
64
+ _enqueue(task) {
65
+ this._getCurrentQueue().push(task);
66
+ }
67
+ _getCurrentQueue() {
68
+ const stackIdx = this._queueStack.length - 1,
69
+ queue = this._queueStack[stackIdx];
70
+ return queue.popable && queue.tasks.length === 0 && stackIdx > 0 ? (this._queueStack.pop(), this._getCurrentQueue()) : queue.tasks;
71
+ }
72
+ _genPromise(task) {
73
+ const stackIdx = this._queueStack.push({
74
+ tasks: [],
75
+ popable: !1
76
+ }) - 1,
77
+ stackItem = this._queueStack[stackIdx];
78
+ task.gen().then(() => {
79
+ stackItem.popable = !0, this.hasTasksToProcess() && this._onMoreTasks();
80
+ }).catch(ex => {
81
+ setTimeout(() => {
82
+ throw ex instanceof Error && (ex.message = `TaskQueue: Error resolving Promise in task ${task.name}: ${ex.message}`), ex;
83
+ }, 0);
84
+ });
85
+ }
86
+ }
87
+ const _emitter = new EventEmitter(),
88
+ InteractionManager = {
89
+ Events: {
90
+ interactionStart: "interactionStart",
91
+ interactionComplete: "interactionComplete"
92
+ },
93
+ /**
94
+ * Schedule a function to run after all interactions have completed.
95
+ */
96
+ runAfterInteractions(task) {
97
+ const tasks = [],
98
+ promise = new Promise(resolve => {
99
+ _scheduleUpdate(), task && tasks.push(task), tasks.push({
100
+ run: resolve,
101
+ name: "resolve " + (task && typeof task == "object" && "name" in task && task.name || "?")
102
+ }), _taskQueue.enqueueTasks(tasks);
103
+ });
104
+ return {
105
+ then: promise.then.bind(promise),
106
+ done: promise.then.bind(promise),
107
+ cancel: () => {
108
+ _taskQueue.cancelTasks(tasks);
109
+ }
110
+ };
111
+ },
112
+ /**
113
+ * Notify manager that an interaction has started.
114
+ */
115
+ createInteractionHandle() {
116
+ _scheduleUpdate();
117
+ const handle = ++_inc;
118
+ return _addInteractionSet.add(handle), handle;
119
+ },
120
+ /**
121
+ * Notify manager that an interaction has completed.
122
+ */
123
+ clearInteractionHandle(handle) {
124
+ invariant(!!handle, "Must provide a handle to clear."), _scheduleUpdate(), _addInteractionSet.delete(handle), _deleteInteractionSet.add(handle);
125
+ },
126
+ addListener: _emitter.addListener.bind(_emitter),
127
+ /**
128
+ * Set deadline for task processing
129
+ */
130
+ setDeadline(deadline) {
131
+ _deadline = deadline;
132
+ }
133
+ },
134
+ _interactionSet = /* @__PURE__ */new Set(),
135
+ _addInteractionSet = /* @__PURE__ */new Set(),
136
+ _deleteInteractionSet = /* @__PURE__ */new Set(),
137
+ _taskQueue = new TaskQueue({
138
+ onMoreTasks: _scheduleUpdate
139
+ });
140
+ let _nextUpdateHandle = null,
141
+ _inc = 0,
142
+ _deadline = -1;
143
+ function _scheduleUpdate() {
144
+ _nextUpdateHandle || (_deadline > 0 ? _nextUpdateHandle = setTimeout(_processUpdate) : _nextUpdateHandle = requestIdleCallback(_processUpdate));
145
+ }
146
+ function _processUpdate() {
147
+ _nextUpdateHandle = null;
148
+ const interactionCount = _interactionSet.size;
149
+ _addInteractionSet.forEach(handle => _interactionSet.add(handle)), _deleteInteractionSet.forEach(handle => _interactionSet.delete(handle));
150
+ const nextInteractionCount = _interactionSet.size;
151
+ if (interactionCount !== 0 && nextInteractionCount === 0 ? _emitter.emit("interactionComplete") : interactionCount === 0 && nextInteractionCount !== 0 && _emitter.emit("interactionStart"), nextInteractionCount === 0) {
152
+ const begin = Date.now();
153
+ for (; _taskQueue.hasTasksToProcess();) if (_taskQueue.processNext(), _deadline > 0 && Date.now() - begin >= _deadline) {
154
+ _scheduleUpdate();
155
+ break;
156
+ }
157
+ }
158
+ _addInteractionSet.clear(), _deleteInteractionSet.clear();
159
+ }
160
+ export { InteractionManager };
161
+ //# sourceMappingURL=InteractionManager.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["invariant","requestIdleCallback","EventEmitter","_registry","addListener","eventType","listener","context","registrations","_allocate","registration","remove","delete","add","emit","args","Array","from","apply","Set","TaskQueue","_queueStack","_onMoreTasks","constructor","onMoreTasks","tasks","popable","enqueueTasks","forEach","task","_enqueue","cancelTasks","tasksToCancel","map","queue","filter","includes","idx","length","hasTasksToProcess","_getCurrentQueue","processNext","shift","_genPromise","run","JSON","stringify","e","Error","taskName","name","message","push","stackIdx","pop","stackItem","gen","then","catch","ex","setTimeout","_emitter","InteractionManager","Events","interactionStart","interactionComplete","runAfterInteractions","promise","Promise","resolve","_scheduleUpdate","_taskQueue","bind","done","cancel","createInteractionHandle","handle","_inc","_addInteractionSet","clearInteractionHandle","_deleteInteractionSet","setDeadline","deadline","_deadline","_interactionSet","_nextUpdateHandle","_processUpdate","interactionCount","size","nextInteractionCount","begin","Date","now","clear"],"sources":["../../../src/modules/InteractionManager.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,27 @@
1
+ import Platform from "../index.mjs";
2
+ describe("apis/Platform", () => {
3
+ describe("select", () => {
4
+ test('supports "default"', () => {
5
+ expect(Platform.select({
6
+ default: "default"
7
+ })).toEqual("default");
8
+ }), test('chooses "web"', () => {
9
+ expect(Platform.select({
10
+ android: "android",
11
+ ios: "ios",
12
+ web: "web",
13
+ default: "default"
14
+ })).toEqual("web");
15
+ });
16
+ }), describe("isTesting", () => {
17
+ const NODE_ENV_BACKUP = process.env.NODE_ENV;
18
+ afterEach(() => {
19
+ process.env.NODE_ENV = NODE_ENV_BACKUP;
20
+ }), test('true when NODE_ENV is "test"', () => {
21
+ process.env.NODE_ENV = "test", expect(Platform.isTesting).toEqual(!0);
22
+ }), test('false when NODE_ENV is not "test"', () => {
23
+ process.env.NODE_ENV = "development", expect(Platform.isTesting).toEqual(!1);
24
+ });
25
+ });
26
+ });
27
+ //# sourceMappingURL=index-test.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Platform","describe","test","expect","select","default","toEqual","android","ios","web","NODE_ENV_BACKUP","process","env","NODE_ENV","afterEach","isTesting"],"sources":["../../../../../src/modules/Platform/__tests__/index-test.tsx"],"sourcesContent":[null],"mappings":"AAOA,OAAOA,QAAA,MAAc;AAErBC,QAAA,CAAS,iBAAiB,MAAM;EAC9BA,QAAA,CAAS,UAAU,MAAM;IACvBC,IAAA,CAAK,sBAAsB,MAAM;MAC/BC,MAAA,CAAOH,QAAA,CAASI,MAAA,CAAO;QAAEC,OAAA,EAAS;MAAU,CAAC,CAAC,EAAEC,OAAA,CAAQ,SAAS;IACnE,CAAC,GAEDJ,IAAA,CAAK,iBAAiB,MAAM;MAC1BC,MAAA,CACEH,QAAA,CAASI,MAAA,CAAO;QACdG,OAAA,EAAS;QACTC,GAAA,EAAK;QACLC,GAAA,EAAK;QACLJ,OAAA,EAAS;MACX,CAAC,CACH,EAAEC,OAAA,CAAQ,KAAK;IACjB,CAAC;EACH,CAAC,GAEDL,QAAA,CAAS,aAAa,MAAM;IAC1B,MAAMS,eAAA,GAAkBC,OAAA,CAAQC,GAAA,CAAIC,QAAA;IAEpCC,SAAA,CAAU,MAAM;MACdH,OAAA,CAAQC,GAAA,CAAIC,QAAA,GAAWH,eAAA;IACzB,CAAC,GAEDR,IAAA,CAAK,gCAAgC,MAAM;MACzCS,OAAA,CAAQC,GAAA,CAAIC,QAAA,GAAW,QACvBV,MAAA,CAAOH,QAAA,CAASe,SAAS,EAAET,OAAA,CAAQ,EAAI;IACzC,CAAC,GAEDJ,IAAA,CAAK,qCAAqC,MAAM;MAC9CS,OAAA,CAAQC,GAAA,CAAIC,QAAA,GAAW,eACvBV,MAAA,CAAOH,QAAA,CAASe,SAAS,EAAET,OAAA,CAAQ,EAAK;IAC1C,CAAC;EACH,CAAC;AACH,CAAC","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ const Platform = {
2
+ OS: "web",
3
+ select: obj => "web" in obj ? obj.web : obj.default,
4
+ isTesting: process.env.NODE_ENV === "test"
5
+ };
6
+ export { Platform };
7
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Platform","OS","select","obj","web","default","isTesting","process","env","NODE_ENV"],"sources":["../../../../src/modules/Platform/index.tsx"],"sourcesContent":[null],"mappings":"AAUO,MAAMA,QAAA,GAAW;EACtBC,EAAA,EAAI;EACJC,MAAA,EAASC,GAAA,IAAmB,SAASA,GAAA,GAAMA,GAAA,CAAIC,GAAA,GAAMD,GAAA,CAAIE,OAAA;EACzDC,SAAA,EAAWC,OAAA,CAAQC,GAAA,CAAIC,QAAA,KAAa;AACtC","ignoreList":[]}
@@ -0,0 +1,32 @@
1
+ import { UIManager } from "../UIManager/index.mjs";
2
+ const TextInputState = {
3
+ /**
4
+ * Internal state
5
+ */
6
+ _currentlyFocusedNode: null,
7
+ /**
8
+ * Returns the ID of the currently focused text field, if one exists
9
+ * If no text field is focused it returns null
10
+ */
11
+ currentlyFocusedField() {
12
+ return document.activeElement !== this._currentlyFocusedNode && (this._currentlyFocusedNode = null), this._currentlyFocusedNode;
13
+ },
14
+ /**
15
+ * @param {Object} TextInputID id of the text field to focus
16
+ * Focuses the specified text field
17
+ * noop if the text field was already focused
18
+ */
19
+ focusTextInput(textFieldNode) {
20
+ textFieldNode !== null && (this._currentlyFocusedNode = textFieldNode, document.activeElement !== textFieldNode && UIManager.focus(textFieldNode));
21
+ },
22
+ /**
23
+ * @param {Object} textFieldNode id of the text field to focus
24
+ * Unfocuses the specified text field
25
+ * noop if it wasn't focused
26
+ */
27
+ blurTextInput(textFieldNode) {
28
+ textFieldNode !== null && (this._currentlyFocusedNode = null, document.activeElement === textFieldNode && UIManager.blur(textFieldNode));
29
+ }
30
+ };
31
+ export { TextInputState };
32
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["UIManager","TextInputState","_currentlyFocusedNode","currentlyFocusedField","document","activeElement","focusTextInput","textFieldNode","focus","blurTextInput","blur"],"sources":["../../../../src/modules/TextInputState/index.tsx"],"sourcesContent":[null],"mappings":"AAUA,SAASA,SAAA,QAAiB;AAOnB,MAAMC,cAAA,GAAiB;EAAA;AAAA;AAAA;EAI5BC,qBAAA,EAAuB;EAAA;AAAA;AAAA;AAAA;EAMvBC,sBAAA,EAAuC;IACrC,OAAIC,QAAA,CAASC,aAAA,KAAkB,KAAKH,qBAAA,KAClC,KAAKA,qBAAA,GAAwB,OAExB,KAAKA,qBAAA;EACd;EAAA;AAAA;AAAA;AAAA;AAAA;EAOAI,eAAeC,aAAA,EAA8B;IACvCA,aAAA,KAAkB,SACpB,KAAKL,qBAAA,GAAwBK,aAAA,EACzBH,QAAA,CAASC,aAAA,KAAkBE,aAAA,IAC7BP,SAAA,CAAUQ,KAAA,CAAMD,aAAa;EAGnC;EAAA;AAAA;AAAA;AAAA;AAAA;EAOAE,cAAcF,aAAA,EAA8B;IACtCA,aAAA,KAAkB,SACpB,KAAKL,qBAAA,GAAwB,MACzBE,QAAA,CAASC,aAAA,KAAkBE,aAAA,IAC7BP,SAAA,CAAUU,IAAA,CAAKH,aAAa;EAGlC;AACF","ignoreList":[]}
@@ -0,0 +1,69 @@
1
+ import UIManager from "../index.mjs";
2
+ const createStyledNode = (name = "div", style = {}) => {
3
+ const root = document.createElement(name);
4
+ return Object.keys(style).forEach(prop => {
5
+ root.style[prop] = style[prop];
6
+ }), root;
7
+ },
8
+ componentStub = {
9
+ _reactInternalInstance: {
10
+ _currentElement: {
11
+ _owner: {}
12
+ },
13
+ _debugID: 1
14
+ }
15
+ };
16
+ describe("apis/UIManager", () => {
17
+ describe("focus", () => {
18
+ test('sets tabIndex="-1" on elements not programmatically focusable by default', () => {
19
+ const node = createStyledNode();
20
+ UIManager.focus(node), expect(node.getAttribute("tabIndex")).toEqual("-1");
21
+ }), test(`doesn't set tabIndex="-1" on elements with an existing tabIndex`, () => {
22
+ const node = createStyledNode();
23
+ node.tabIndex = 0, UIManager.focus(node), expect(node.getAttribute("tabIndex")).toEqual("0");
24
+ }), test(`doesn't set tabIndex="-1" on elements focusable by default`, () => {
25
+ ["a", "input", "select", "textarea"].forEach(name => {
26
+ const node = createStyledNode(name);
27
+ UIManager.focus(node), expect(node.getAttribute("tabIndex")).toBeNull();
28
+ });
29
+ });
30
+ }), describe("updateView", () => {
31
+ test("supports className alias for class", () => {
32
+ const node = createStyledNode(),
33
+ props = {
34
+ className: "extra"
35
+ };
36
+ UIManager.updateView(node, props, componentStub), expect(node.getAttribute("class")).toEqual("extra");
37
+ }), test("adds correct DOM styles to existing style", () => {
38
+ const node = createStyledNode("div", {
39
+ color: "red"
40
+ }),
41
+ props = {
42
+ style: {
43
+ marginTop: 0,
44
+ marginBottom: 0,
45
+ opacity: 0
46
+ }
47
+ };
48
+ UIManager.updateView(node, props, componentStub), expect(node.getAttribute("style")).toEqual("color: red; margin-top: 0px; margin-bottom: 0px; opacity: 0;");
49
+ }), test("replaces input and textarea text", () => {
50
+ const node = createStyledNode("textarea");
51
+ node.value = "initial";
52
+ const textProp = {
53
+ text: "expected-text"
54
+ },
55
+ valueProp = {
56
+ value: "expected-value"
57
+ };
58
+ UIManager.updateView(node, textProp), expect(node.value).toEqual("expected-text"), UIManager.updateView(node, valueProp), expect(node.value).toEqual("expected-value");
59
+ }), test("sets other attribute values", () => {
60
+ const node = createStyledNode(),
61
+ props = {
62
+ "aria-level": "4",
63
+ "data-of-type": "string"
64
+ };
65
+ UIManager.updateView(node, props), expect(node.getAttribute("aria-level")).toEqual("4"), expect(node.getAttribute("data-of-type")).toEqual("string");
66
+ });
67
+ });
68
+ });
69
+ //# sourceMappingURL=index-test.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["UIManager","createStyledNode","name","style","root","document","createElement","Object","keys","forEach","prop","componentStub","_reactInternalInstance","_currentElement","_owner","_debugID","describe","test","node","focus","expect","getAttribute","toEqual","tabIndex","toBeNull","props","className","updateView","color","marginTop","marginBottom","opacity","value","textProp","text","valueProp"],"sources":["../../../../../src/modules/UIManager/__tests__/index-test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,37 @@
1
+ import { measure, measureInWindow } from "@hanzogui/use-element-layout";
2
+ const focusableElements = {
3
+ A: !0,
4
+ INPUT: !0,
5
+ SELECT: !0,
6
+ TEXTAREA: !0
7
+ },
8
+ UIManager = {
9
+ blur(node) {
10
+ try {
11
+ node.blur();
12
+ } catch {}
13
+ },
14
+ focus(node) {
15
+ try {
16
+ const name = node.nodeName;
17
+ node.getAttribute("tabIndex") == null && focusableElements[name] == null && node.setAttribute("tabIndex", "-1"), node.focus();
18
+ } catch {}
19
+ },
20
+ measure(node, callback) {
21
+ return measure(node, callback);
22
+ },
23
+ measureInWindow(node, callback) {
24
+ return measureInWindow(node, callback);
25
+ },
26
+ // note its flipped fail and success on purpose lol
27
+ async measureLayout(node, relativeToNativeNode, onFail, onSuccess) {
28
+ return measureLayout(node, relativeToNativeNode, onSuccess);
29
+ },
30
+ configureNextLayoutAnimation(config, onAnimationDidEnd) {
31
+ onAnimationDidEnd();
32
+ },
33
+ // mocks
34
+ setLayoutAnimationEnabledExperimental() {}
35
+ };
36
+ export { UIManager };
37
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["measure","measureInWindow","focusableElements","A","INPUT","SELECT","TEXTAREA","UIManager","blur","node","focus","name","nodeName","getAttribute","setAttribute","callback","measureLayout","relativeToNativeNode","onFail","onSuccess","configureNextLayoutAnimation","config","onAnimationDidEnd","setLayoutAnimationEnabledExperimental"],"sources":["../../../../src/modules/UIManager/index.tsx"],"sourcesContent":[null],"mappings":"AAUA,SAASA,OAAA,EAASC,eAAA,QAAuB;AAEzC,MAAMC,iBAAA,GAAoB;IACxBC,CAAA,EAAG;IACHC,KAAA,EAAO;IACPC,MAAA,EAAQ;IACRC,QAAA,EAAU;EACZ;EAEaC,SAAA,GAAY;IACvBC,KAAKC,IAAA,EAAM;MACT,IAAI;QACFA,IAAA,CAAKD,IAAA,CAAK;MACZ,QAAc,CAEd;IACF;IAEAE,MAAMD,IAAA,EAAM;MACV,IAAI;QACF,MAAME,IAAA,GAAOF,IAAA,CAAKG,QAAA;QAIdH,IAAA,CAAKI,YAAA,CAAa,UAAU,KAAK,QAAQX,iBAAA,CAAkBS,IAAI,KAAK,QACtEF,IAAA,CAAKK,YAAA,CAAa,YAAY,IAAI,GAEpCL,IAAA,CAAKC,KAAA,CAAM;MACb,QAAc,CAEd;IACF;IAEAV,QAAQS,IAAA,EAAMM,QAAA,EAAU;MACtB,OAAOf,OAAA,CAAQS,IAAA,EAAMM,QAAQ;IAC/B;IAEAd,gBAAgBQ,IAAA,EAAMM,QAAA,EAAU;MAC9B,OAAOd,eAAA,CAAgBQ,IAAA,EAAMM,QAAQ;IACvC;IAAA;IAGA,MAAMC,cACJP,IAAA,EACAQ,oBAAA,EACAC,MAAA,EACAC,SAAA,EACA;MACA,OAAOH,aAAA,CAAcP,IAAA,EAAMQ,oBAAA,EAAsBE,SAAS;IAC5D;IAEAC,6BAA6BC,MAAA,EAAQC,iBAAA,EAAmB;MACtDA,iBAAA,CAAkB;IACpB;IAAA;IAGAC,sCAAA,EAAwC,CAAC;EAC3C","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ const canUseDOM = !!(typeof window < "u" && window.document && window.document.createElement);
2
+ export { canUseDOM };
3
+ //# sourceMappingURL=canUseDOM.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["canUseDOM","window","document","createElement"],"sources":["../../../src/modules/canUseDOM.tsx"],"sourcesContent":[null],"mappings":"AASO,MAAMA,SAAA,GAAY,CAAC,EACxB,OAAOC,MAAA,GAAW,OAClBA,MAAA,CAAOC,QAAA,IACPD,MAAA,CAAOC,QAAA,CAASC,aAAA","ignoreList":[]}
@@ -0,0 +1,135 @@
1
+ import createDOMProps from "../index.mjs";
2
+ const createProps = props => createDOMProps(null, props);
3
+ describe("modules/createDOMProps", () => {
4
+ describe("focus-related accessibility attributes", () => {
5
+ test("with no accessibility props", () => {
6
+ expect(createProps({})).toEqual({});
7
+ }), describe('"accessibilityRole" of "link"', () => {
8
+ const accessibilityRole = "link";
9
+ test("default case", () => {
10
+ expect(createProps({
11
+ accessibilityRole
12
+ })).toEqual(expect.not.objectContaining({
13
+ tabIndex: "-1"
14
+ }));
15
+ }), test('when "focusable" is true', () => {
16
+ expect(createProps({
17
+ accessibilityRole,
18
+ focusable: !0
19
+ })).toEqual(expect.not.objectContaining({
20
+ tabIndex: "-1"
21
+ }));
22
+ }), test('when "focusable" is false', () => {
23
+ expect(createProps({
24
+ accessibilityRole,
25
+ focusable: !1
26
+ })).toEqual(expect.objectContaining({
27
+ tabIndex: "-1"
28
+ }));
29
+ }), test('when "accessibilityDisabled" is true', () => {
30
+ expect(createProps({
31
+ accessibilityRole,
32
+ accessibilityDisabled: !0
33
+ })).toEqual(expect.objectContaining({
34
+ "aria-disabled": !0
35
+ }));
36
+ }), test('when "disabled" is false', () => {
37
+ expect(createProps({
38
+ accessibilityRole,
39
+ accessibilityDisabled: !1
40
+ })).toEqual(expect.not.objectContaining({
41
+ tabIndex: "-1"
42
+ }));
43
+ });
44
+ });
45
+ const testFocusableRole = accessibilityRole => {
46
+ test("default case", () => {
47
+ expect(createProps({
48
+ accessibilityRole
49
+ })).toEqual(expect.objectContaining({
50
+ tabIndex: "0"
51
+ }));
52
+ }), test('when "focusable" is true', () => {
53
+ expect(createProps({
54
+ accessibilityRole,
55
+ focusable: !0
56
+ })).toEqual(expect.objectContaining({
57
+ tabIndex: "0"
58
+ }));
59
+ }), test('when "focusable" is false', () => {
60
+ expect(createProps({
61
+ accessibilityRole,
62
+ focusable: !1
63
+ })).toEqual(expect.objectContaining({
64
+ tabIndex: "-1"
65
+ }));
66
+ }), test('when "accessibilityDisabled" is true', () => {
67
+ expect(createProps({
68
+ accessibilityRole,
69
+ accessibilityDisabled: !0
70
+ })).toEqual(expect.objectContaining({
71
+ "aria-disabled": !0
72
+ }));
73
+ }), test('when "accessibilityDisabled" is false', () => {
74
+ expect(createProps({
75
+ accessibilityRole,
76
+ accessibilityDisabled: !1
77
+ })).toEqual(expect.objectContaining({
78
+ tabIndex: "0"
79
+ }));
80
+ });
81
+ };
82
+ describe('"accessibilityRole" of "button"', () => {
83
+ testFocusableRole("button");
84
+ }), describe("with unfocusable accessibilityRole", () => {
85
+ test('when "focusable" is true', () => {
86
+ expect(createProps({
87
+ focusable: !0
88
+ })).toEqual(expect.objectContaining({
89
+ tabIndex: "0"
90
+ }));
91
+ }), test('when "focusable" is false', () => {
92
+ expect(createProps({
93
+ focusable: !1
94
+ })).toEqual(expect.objectContaining({
95
+ tabIndex: "-1"
96
+ }));
97
+ });
98
+ });
99
+ }), test('prop "accessibilityLabel" becomes "aria-label"', () => {
100
+ const accessibilityLabel = "accessibilityLabel",
101
+ props = createProps({
102
+ accessibilityLabel
103
+ });
104
+ expect(props["aria-label"]).toEqual(accessibilityLabel);
105
+ }), test('prop "accessibilityLiveRegion" becomes "aria-live"', () => {
106
+ const props = createProps({
107
+ accessibilityLiveRegion: "none"
108
+ });
109
+ expect(props["aria-live"]).toEqual("off");
110
+ }), test('prop "accessibilityRole" becomes "role"', () => {
111
+ const props = createProps({
112
+ accessibilityRole: "button"
113
+ });
114
+ expect(props.role).toEqual("button");
115
+ }), test('prop "className" is preserved', () => {
116
+ const className = "external-class-name",
117
+ props = createProps({
118
+ className
119
+ });
120
+ expect(props.className).toEqual(className);
121
+ }), test('prop "nativeID" becomes "id"', () => {
122
+ const nativeID = "Example.nativeID",
123
+ props = createProps({
124
+ nativeID
125
+ });
126
+ expect(props.id).toEqual(nativeID);
127
+ }), test('prop "testID" becomes "data-testid"', () => {
128
+ const testID = "Example.testID",
129
+ props = createProps({
130
+ testID
131
+ });
132
+ expect(props["data-testid"]).toEqual(testID);
133
+ });
134
+ });
135
+ //# sourceMappingURL=index-test.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createDOMProps","createProps","props","describe","test","expect","toEqual","accessibilityRole","not","objectContaining","tabIndex","focusable","accessibilityDisabled","testFocusableRole","accessibilityLabel","accessibilityLiveRegion","role","className","nativeID","id","testID"],"sources":["../../../../../src/modules/createDOMProps/__tests__/index-test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}