@tamagui/react-native-web-internals 2.7.7 → 3.0.0-beta.643.1

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 (286) hide show
  1. package/dist/cjs/StyleSheet/compiler/createReactDOMStyle.cjs +151 -136
  2. package/dist/cjs/StyleSheet/compiler/hash.cjs +15 -18
  3. package/dist/cjs/StyleSheet/compiler/hyphenateStyleName.cjs +21 -24
  4. package/dist/cjs/StyleSheet/compiler/index.cjs +295 -321
  5. package/dist/cjs/StyleSheet/compiler/normalizeColor.cjs +20 -23
  6. package/dist/cjs/StyleSheet/compiler/normalizeValueWithProperty.cjs +32 -35
  7. package/dist/cjs/StyleSheet/compiler/resolveShadowValue.cjs +27 -38
  8. package/dist/cjs/StyleSheet/dom/createCSSStyleSheet.cjs +37 -40
  9. package/dist/cjs/StyleSheet/dom/createOrderedCSSStyleSheet.cjs +108 -111
  10. package/dist/cjs/StyleSheet/dom/index.cjs +70 -72
  11. package/dist/cjs/StyleSheet/index.cjs +33 -34
  12. package/dist/cjs/StyleSheet/preprocess.cjs +74 -94
  13. package/dist/cjs/StyleSheet/validate.cjs +72 -75
  14. package/dist/cjs/TextAncestorContext.cjs +15 -18
  15. package/dist/cjs/colorProps.cjs +25 -28
  16. package/dist/cjs/index.cjs +49 -50
  17. package/dist/cjs/modules/AccessibilityUtil/index.cjs +18 -21
  18. package/dist/cjs/modules/AccessibilityUtil/isDisabled.cjs +15 -18
  19. package/dist/cjs/modules/AccessibilityUtil/propsToAccessibilityComponent.cjs +46 -49
  20. package/dist/cjs/modules/AccessibilityUtil/propsToAriaRole.cjs +34 -39
  21. package/dist/cjs/modules/AssetRegistry/index.cjs +18 -19
  22. package/dist/cjs/modules/ImageLoader/index.cjs +135 -141
  23. package/dist/cjs/modules/InteractionManager.cjs +212 -219
  24. package/dist/cjs/modules/Platform/index.cjs +18 -21
  25. package/dist/cjs/modules/TextInputState/index.cjs +55 -58
  26. package/dist/cjs/modules/UIManager/index.cjs +46 -51
  27. package/dist/cjs/modules/canUseDOM.cjs +15 -18
  28. package/dist/cjs/modules/createDOMProps/index.cjs +289 -358
  29. package/dist/cjs/modules/createEventHandle/index.cjs +57 -62
  30. package/dist/cjs/modules/dismissKeyboard/index.cjs +16 -19
  31. package/dist/cjs/modules/forwardedProps/index.cjs +128 -130
  32. package/dist/cjs/modules/getBoundingClientRect/index.cjs +22 -25
  33. package/dist/cjs/modules/invariant.cjs +26 -27
  34. package/dist/cjs/modules/isSelectionValid/index.cjs +22 -25
  35. package/dist/cjs/modules/isWebColor/index.cjs +15 -18
  36. package/dist/cjs/modules/mergeRefs/index.cjs +31 -34
  37. package/dist/cjs/modules/modality/index.cjs +131 -134
  38. package/dist/cjs/modules/multiplyStyleLengthValue/index.cjs +25 -28
  39. package/dist/cjs/modules/normalizeColor/index.cjs +28 -31
  40. package/dist/cjs/modules/pick/index.cjs +24 -27
  41. package/dist/cjs/modules/processColor/index.cjs +28 -36
  42. package/dist/cjs/modules/requestIdleCallback/index.cjs +28 -29
  43. package/dist/cjs/modules/setValueForStyles/dangerousStyleValue.cjs +39 -42
  44. package/dist/cjs/modules/setValueForStyles/index.cjs +31 -34
  45. package/dist/cjs/modules/unitlessNumbers/index.cjs +74 -75
  46. package/dist/cjs/modules/useElementLayout/index.cjs +24 -31
  47. package/dist/cjs/modules/useEvent/index.cjs +40 -43
  48. package/dist/cjs/modules/useHover/index.cjs +113 -118
  49. package/dist/cjs/modules/useLayoutEffect/index.cjs +18 -26
  50. package/dist/cjs/modules/useLocale/index.cjs +33 -43
  51. package/dist/cjs/modules/useLocale/isLocaleRTL.cjs +66 -76
  52. package/dist/cjs/modules/useMergeRefs/index.cjs +19 -29
  53. package/dist/cjs/modules/usePlatformMethods/index.cjs +24 -30
  54. package/dist/cjs/modules/useStable/index.cjs +24 -32
  55. package/dist/cjs/styleTypes.cjs +10 -11
  56. package/dist/cjs/types.cjs +10 -11
  57. package/dist/esm/StyleSheet/compiler/createReactDOMStyle.mjs +137 -119
  58. package/dist/esm/StyleSheet/compiler/createReactDOMStyle.mjs.map +1 -1
  59. package/dist/esm/StyleSheet/compiler/hash.mjs +2 -2
  60. package/dist/esm/StyleSheet/compiler/hyphenateStyleName.mjs +7 -6
  61. package/dist/esm/StyleSheet/compiler/hyphenateStyleName.mjs.map +1 -1
  62. package/dist/esm/StyleSheet/compiler/index.mjs +279 -302
  63. package/dist/esm/StyleSheet/compiler/index.mjs.map +1 -1
  64. package/dist/esm/StyleSheet/compiler/normalizeColor.mjs +7 -5
  65. package/dist/esm/StyleSheet/compiler/normalizeColor.mjs.map +1 -1
  66. package/dist/esm/StyleSheet/compiler/normalizeValueWithProperty.mjs +19 -17
  67. package/dist/esm/StyleSheet/compiler/normalizeValueWithProperty.mjs.map +1 -1
  68. package/dist/esm/StyleSheet/compiler/resolveShadowValue.mjs +14 -20
  69. package/dist/esm/StyleSheet/compiler/resolveShadowValue.mjs.map +1 -1
  70. package/dist/esm/StyleSheet/dom/createCSSStyleSheet.mjs +24 -22
  71. package/dist/esm/StyleSheet/dom/createCSSStyleSheet.mjs.map +1 -1
  72. package/dist/esm/StyleSheet/dom/createOrderedCSSStyleSheet.mjs +94 -93
  73. package/dist/esm/StyleSheet/dom/createOrderedCSSStyleSheet.mjs.map +1 -1
  74. package/dist/esm/StyleSheet/dom/index.mjs +57 -54
  75. package/dist/esm/StyleSheet/dom/index.mjs.map +1 -1
  76. package/dist/esm/StyleSheet/index.mjs +18 -17
  77. package/dist/esm/StyleSheet/index.mjs.map +1 -1
  78. package/dist/esm/StyleSheet/preprocess.mjs +58 -75
  79. package/dist/esm/StyleSheet/preprocess.mjs.map +1 -1
  80. package/dist/esm/StyleSheet/validate.mjs +58 -57
  81. package/dist/esm/StyleSheet/validate.mjs.map +1 -1
  82. package/dist/esm/TextAncestorContext.mjs +2 -0
  83. package/dist/esm/TextAncestorContext.mjs.map +1 -1
  84. package/dist/esm/colorProps.mjs +11 -10
  85. package/dist/esm/colorProps.mjs.map +1 -1
  86. package/dist/esm/index.js +22 -15
  87. package/dist/esm/index.mjs +22 -15
  88. package/dist/esm/modules/AccessibilityUtil/index.mjs +5 -3
  89. package/dist/esm/modules/AccessibilityUtil/index.mjs.map +1 -1
  90. package/dist/esm/modules/AccessibilityUtil/isDisabled.mjs +2 -1
  91. package/dist/esm/modules/AccessibilityUtil/isDisabled.mjs.map +1 -1
  92. package/dist/esm/modules/AccessibilityUtil/propsToAccessibilityComponent.mjs +33 -31
  93. package/dist/esm/modules/AccessibilityUtil/propsToAccessibilityComponent.mjs.map +1 -1
  94. package/dist/esm/modules/AccessibilityUtil/propsToAriaRole.mjs +20 -21
  95. package/dist/esm/modules/AccessibilityUtil/propsToAriaRole.mjs.map +1 -1
  96. package/dist/esm/modules/AssetRegistry/index.mjs +3 -2
  97. package/dist/esm/modules/AssetRegistry/index.mjs.map +1 -1
  98. package/dist/esm/modules/ImageLoader/index.mjs +120 -124
  99. package/dist/esm/modules/ImageLoader/index.mjs.map +1 -1
  100. package/dist/esm/modules/InteractionManager.mjs +199 -201
  101. package/dist/esm/modules/InteractionManager.mjs.map +1 -1
  102. package/dist/esm/modules/Platform/index.mjs +4 -3
  103. package/dist/esm/modules/Platform/index.mjs.map +1 -1
  104. package/dist/esm/modules/TextInputState/index.mjs +42 -40
  105. package/dist/esm/modules/TextInputState/index.mjs.map +1 -1
  106. package/dist/esm/modules/UIManager/index.mjs +33 -33
  107. package/dist/esm/modules/UIManager/index.mjs.map +1 -1
  108. package/dist/esm/modules/canUseDOM.mjs +1 -0
  109. package/dist/esm/modules/canUseDOM.mjs.map +1 -1
  110. package/dist/esm/modules/createDOMProps/index.mjs +275 -341
  111. package/dist/esm/modules/createDOMProps/index.mjs.map +1 -1
  112. package/dist/esm/modules/createEventHandle/index.mjs +44 -44
  113. package/dist/esm/modules/createEventHandle/index.mjs.map +1 -1
  114. package/dist/esm/modules/dismissKeyboard/index.mjs +3 -1
  115. package/dist/esm/modules/dismissKeyboard/index.mjs.map +1 -1
  116. package/dist/esm/modules/forwardedProps/index.mjs +104 -104
  117. package/dist/esm/modules/forwardedProps/index.mjs.map +1 -1
  118. package/dist/esm/modules/getBoundingClientRect/index.mjs +8 -7
  119. package/dist/esm/modules/getBoundingClientRect/index.mjs.map +1 -1
  120. package/dist/esm/modules/invariant.mjs +11 -10
  121. package/dist/esm/modules/invariant.mjs.map +1 -1
  122. package/dist/esm/modules/isSelectionValid/index.mjs +8 -7
  123. package/dist/esm/modules/isSelectionValid/index.mjs.map +1 -1
  124. package/dist/esm/modules/isWebColor/index.mjs +2 -1
  125. package/dist/esm/modules/isWebColor/index.mjs.map +1 -1
  126. package/dist/esm/modules/mergeRefs/index.mjs +17 -16
  127. package/dist/esm/modules/mergeRefs/index.mjs.map +1 -1
  128. package/dist/esm/modules/modality/index.mjs +115 -115
  129. package/dist/esm/modules/modality/index.mjs.map +1 -1
  130. package/dist/esm/modules/multiplyStyleLengthValue/index.mjs +11 -10
  131. package/dist/esm/modules/multiplyStyleLengthValue/index.mjs.map +1 -1
  132. package/dist/esm/modules/normalizeColor/index.mjs +15 -13
  133. package/dist/esm/modules/normalizeColor/index.mjs.map +1 -1
  134. package/dist/esm/modules/pick/index.mjs +10 -9
  135. package/dist/esm/modules/pick/index.mjs.map +1 -1
  136. package/dist/esm/modules/processColor/index.mjs +12 -10
  137. package/dist/esm/modules/processColor/index.mjs.map +1 -1
  138. package/dist/esm/modules/requestIdleCallback/index.mjs +14 -12
  139. package/dist/esm/modules/requestIdleCallback/index.mjs.map +1 -1
  140. package/dist/esm/modules/setValueForStyles/dangerousStyleValue.mjs +27 -25
  141. package/dist/esm/modules/setValueForStyles/dangerousStyleValue.mjs.map +1 -1
  142. package/dist/esm/modules/setValueForStyles/index.mjs +18 -16
  143. package/dist/esm/modules/setValueForStyles/index.mjs.map +1 -1
  144. package/dist/esm/modules/unitlessNumbers/index.mjs +60 -57
  145. package/dist/esm/modules/unitlessNumbers/index.mjs.map +1 -1
  146. package/dist/esm/modules/useElementLayout/index.mjs +12 -14
  147. package/dist/esm/modules/useElementLayout/index.mjs.map +1 -1
  148. package/dist/esm/modules/useEvent/index.mjs +28 -26
  149. package/dist/esm/modules/useEvent/index.mjs.map +1 -1
  150. package/dist/esm/modules/useHover/index.mjs +101 -101
  151. package/dist/esm/modules/useHover/index.mjs.map +1 -1
  152. package/dist/esm/modules/useLayoutEffect/index.mjs +2 -0
  153. package/dist/esm/modules/useLayoutEffect/index.mjs.map +1 -1
  154. package/dist/esm/modules/useLocale/index.mjs +15 -17
  155. package/dist/esm/modules/useLocale/index.mjs.map +1 -1
  156. package/dist/esm/modules/useLocale/isLocaleRTL.mjs +52 -58
  157. package/dist/esm/modules/useLocale/isLocaleRTL.mjs.map +1 -1
  158. package/dist/esm/modules/useMergeRefs/index.mjs +3 -3
  159. package/dist/esm/modules/useMergeRefs/index.mjs.map +1 -1
  160. package/dist/esm/modules/usePlatformMethods/index.mjs +11 -12
  161. package/dist/esm/modules/usePlatformMethods/index.mjs.map +1 -1
  162. package/dist/esm/modules/useStable/index.mjs +8 -6
  163. package/dist/esm/modules/useStable/index.mjs.map +1 -1
  164. package/dist/esm/styleTypes.mjs +0 -2
  165. package/dist/esm/types.mjs +0 -2
  166. package/package.json +8 -8
  167. package/src/modules/createDOMProps/index.tsx +3 -12
  168. package/src/modules/forwardedProps/index.tsx +0 -1
  169. package/src/modules/mergeRefs/index.tsx +1 -1
  170. package/types/StyleSheet/compiler/createReactDOMStyle.d.ts.map +1 -1
  171. package/types/StyleSheet/compiler/normalizeColor.d.ts.map +1 -1
  172. package/types/StyleSheet/compiler/resolveShadowValue.d.ts.map +1 -1
  173. package/types/StyleSheet/index.d.ts +15 -16
  174. package/types/StyleSheet/index.d.ts.map +1 -1
  175. package/types/StyleSheet/preprocess.d.ts +1 -1
  176. package/types/StyleSheet/preprocess.d.ts.map +1 -1
  177. package/types/colorProps.d.ts.map +1 -1
  178. package/types/modules/AccessibilityUtil/index.d.ts +6 -5
  179. package/types/modules/AccessibilityUtil/index.d.ts.map +1 -1
  180. package/types/modules/AccessibilityUtil/isDisabled.d.ts.map +1 -1
  181. package/types/modules/AccessibilityUtil/propsToAccessibilityComponent.d.ts.map +1 -1
  182. package/types/modules/AccessibilityUtil/propsToAriaRole.d.ts.map +1 -1
  183. package/types/modules/ImageLoader/index.d.ts +1 -1
  184. package/types/modules/ImageLoader/index.d.ts.map +1 -1
  185. package/types/modules/InteractionManager.d.ts +3 -3
  186. package/types/modules/InteractionManager.d.ts.map +1 -1
  187. package/types/modules/Platform/index.d.ts.map +1 -1
  188. package/types/modules/TextInputState/index.d.ts.map +1 -1
  189. package/types/modules/createDOMProps/index.d.ts.map +1 -1
  190. package/types/modules/forwardedProps/index.d.ts +70 -74
  191. package/types/modules/forwardedProps/index.d.ts.map +1 -1
  192. package/types/modules/getBoundingClientRect/index.d.ts.map +1 -1
  193. package/types/modules/isWebColor/index.d.ts.map +1 -1
  194. package/types/modules/multiplyStyleLengthValue/index.d.ts.map +1 -1
  195. package/types/modules/normalizeColor/index.d.ts.map +1 -1
  196. package/types/modules/processColor/index.d.ts.map +1 -1
  197. package/types/modules/requestIdleCallback/index.d.ts +3 -1
  198. package/types/modules/requestIdleCallback/index.d.ts.map +1 -1
  199. package/types/modules/unitlessNumbers/index.d.ts.map +1 -1
  200. package/types/modules/useLayoutEffect/index.d.ts +1 -1
  201. package/types/modules/useLayoutEffect/index.d.ts.map +1 -1
  202. package/dist/cjs/StyleSheet/__tests__/compiler-createReactDOMStyle-test.cjs +0 -265
  203. package/dist/cjs/StyleSheet/__tests__/compiler-test.cjs +0 -419
  204. package/dist/cjs/StyleSheet/__tests__/dom-createOrderedCSSStyleSheet-test.cjs +0 -160
  205. package/dist/cjs/StyleSheet/__tests__/index-test.cjs +0 -436
  206. package/dist/cjs/StyleSheet/__tests__/preprocess-test.cjs +0 -121
  207. package/dist/cjs/StyleSheet/__tests__/validate-test.cjs +0 -51
  208. package/dist/cjs/modules/AccessibilityUtil/__tests__/propsToAccessibilityComponent-test.cjs +0 -57
  209. package/dist/cjs/modules/AccessibilityUtil/__tests__/propsToAriaRole-test.cjs +0 -46
  210. package/dist/cjs/modules/Platform/__tests__/index-test.cjs +0 -56
  211. package/dist/cjs/modules/UIManager/__tests__/index-test.cjs +0 -111
  212. package/dist/cjs/modules/createDOMProps/__tests__/index-test.cjs +0 -177
  213. package/dist/cjs/modules/createEventHandle/__tests__/index-test.cjs +0 -422
  214. package/dist/cjs/modules/mergeRefs/__tests__/index-test.cjs +0 -48
  215. package/dist/cjs/modules/modality/__tests__/index-test.cjs +0 -59
  216. package/dist/cjs/modules/multiplyStyleLengthValue/__tests__/index-test.cjs +0 -38
  217. package/dist/cjs/modules/processColor/__tests__/index-test.cjs +0 -85
  218. package/dist/cjs/modules/useEvent/__tests__/index-test.cjs +0 -490
  219. package/dist/cjs/modules/useHover/__tests__/index-test.cjs +0 -382
  220. package/dist/cjs/modules/useMergeRefs/__tests__/index-test.cjs +0 -125
  221. package/dist/cjs/modules/useStable/__tests__/index-test.cjs +0 -122
  222. package/dist/esm/StyleSheet/__tests__/compiler-createReactDOMStyle-test.mjs +0 -242
  223. package/dist/esm/StyleSheet/__tests__/compiler-createReactDOMStyle-test.mjs.map +0 -1
  224. package/dist/esm/StyleSheet/__tests__/compiler-test.mjs +0 -420
  225. package/dist/esm/StyleSheet/__tests__/compiler-test.mjs.map +0 -1
  226. package/dist/esm/StyleSheet/__tests__/dom-createOrderedCSSStyleSheet-test.mjs +0 -137
  227. package/dist/esm/StyleSheet/__tests__/dom-createOrderedCSSStyleSheet-test.mjs.map +0 -1
  228. package/dist/esm/StyleSheet/__tests__/index-test.mjs +0 -413
  229. package/dist/esm/StyleSheet/__tests__/index-test.mjs.map +0 -1
  230. package/dist/esm/StyleSheet/__tests__/preprocess-test.mjs +0 -122
  231. package/dist/esm/StyleSheet/__tests__/preprocess-test.mjs.map +0 -1
  232. package/dist/esm/StyleSheet/__tests__/validate-test.mjs +0 -52
  233. package/dist/esm/StyleSheet/__tests__/validate-test.mjs.map +0 -1
  234. package/dist/esm/StyleSheet/compiler/hash.mjs.map +0 -1
  235. package/dist/esm/index.js.map +0 -1
  236. package/dist/esm/index.mjs.map +0 -1
  237. package/dist/esm/modules/AccessibilityUtil/__tests__/propsToAccessibilityComponent-test.mjs +0 -34
  238. package/dist/esm/modules/AccessibilityUtil/__tests__/propsToAccessibilityComponent-test.mjs.map +0 -1
  239. package/dist/esm/modules/AccessibilityUtil/__tests__/propsToAriaRole-test.mjs +0 -23
  240. package/dist/esm/modules/AccessibilityUtil/__tests__/propsToAriaRole-test.mjs.map +0 -1
  241. package/dist/esm/modules/Platform/__tests__/index-test.mjs +0 -33
  242. package/dist/esm/modules/Platform/__tests__/index-test.mjs.map +0 -1
  243. package/dist/esm/modules/UIManager/__tests__/index-test.mjs +0 -88
  244. package/dist/esm/modules/UIManager/__tests__/index-test.mjs.map +0 -1
  245. package/dist/esm/modules/createDOMProps/__tests__/index-test.mjs +0 -154
  246. package/dist/esm/modules/createDOMProps/__tests__/index-test.mjs.map +0 -1
  247. package/dist/esm/modules/createEventHandle/__tests__/index-test.mjs +0 -399
  248. package/dist/esm/modules/createEventHandle/__tests__/index-test.mjs.map +0 -1
  249. package/dist/esm/modules/mergeRefs/__tests__/index-test.mjs +0 -25
  250. package/dist/esm/modules/mergeRefs/__tests__/index-test.mjs.map +0 -1
  251. package/dist/esm/modules/modality/__tests__/index-test.mjs +0 -60
  252. package/dist/esm/modules/modality/__tests__/index-test.mjs.map +0 -1
  253. package/dist/esm/modules/multiplyStyleLengthValue/__tests__/index-test.mjs +0 -15
  254. package/dist/esm/modules/multiplyStyleLengthValue/__tests__/index-test.mjs.map +0 -1
  255. package/dist/esm/modules/processColor/__tests__/index-test.mjs +0 -62
  256. package/dist/esm/modules/processColor/__tests__/index-test.mjs.map +0 -1
  257. package/dist/esm/modules/useEvent/__tests__/index-test.mjs +0 -467
  258. package/dist/esm/modules/useEvent/__tests__/index-test.mjs.map +0 -1
  259. package/dist/esm/modules/useHover/__tests__/index-test.mjs +0 -359
  260. package/dist/esm/modules/useHover/__tests__/index-test.mjs.map +0 -1
  261. package/dist/esm/modules/useMergeRefs/__tests__/index-test.mjs +0 -102
  262. package/dist/esm/modules/useMergeRefs/__tests__/index-test.mjs.map +0 -1
  263. package/dist/esm/modules/useStable/__tests__/index-test.mjs +0 -99
  264. package/dist/esm/modules/useStable/__tests__/index-test.mjs.map +0 -1
  265. package/dist/esm/styleTypes.mjs.map +0 -1
  266. package/dist/esm/types.mjs.map +0 -1
  267. package/src/StyleSheet/__tests__/compiler-createReactDOMStyle-test.tsx +0 -236
  268. package/src/StyleSheet/__tests__/compiler-test.tsx +0 -426
  269. package/src/StyleSheet/__tests__/dom-createOrderedCSSStyleSheet-test.tsx +0 -169
  270. package/src/StyleSheet/__tests__/index-test.tsx +0 -406
  271. package/src/StyleSheet/__tests__/preprocess-test.tsx +0 -107
  272. package/src/StyleSheet/__tests__/validate-test.tsx +0 -42
  273. package/src/modules/AccessibilityUtil/__tests__/propsToAccessibilityComponent-test.tsx +0 -44
  274. package/src/modules/AccessibilityUtil/__tests__/propsToAriaRole-test.tsx +0 -25
  275. package/src/modules/Platform/__tests__/index-test.tsx +0 -45
  276. package/src/modules/UIManager/__tests__/index-test.tsx +0 -87
  277. package/src/modules/createDOMProps/__tests__/index-test.tsx +0 -138
  278. package/src/modules/createEventHandle/__tests__/index-test.tsx +0 -459
  279. package/src/modules/mergeRefs/__tests__/index-test.tsx +0 -32
  280. package/src/modules/modality/__tests__/index-test.tsx +0 -66
  281. package/src/modules/multiplyStyleLengthValue/__tests__/index-test.tsx +0 -23
  282. package/src/modules/processColor/__tests__/index-test.tsx +0 -78
  283. package/src/modules/useEvent/__tests__/index-test.tsx +0 -511
  284. package/src/modules/useHover/__tests__/index-test.tsx +0 -342
  285. package/src/modules/useMergeRefs/__tests__/index-test.tsx +0 -91
  286. package/src/modules/useStable/__tests__/index-test.tsx +0 -101
@@ -1,215 +1,213 @@
1
1
  import { invariant } from "./invariant.mjs";
2
2
  import { requestIdleCallback } from "./requestIdleCallback/index.mjs";
3
- class EventEmitter {
4
- _registry = {};
5
- addListener(eventType, listener, context) {
6
- const registrations = this._allocate(eventType);
7
- const registration = {
8
- context,
9
- listener,
10
- remove: () => {
11
- registrations.delete(registration);
12
- }
13
- };
14
- registrations.add(registration);
15
- return registration;
16
- }
17
- emit(eventType, ...args) {
18
- const registrations = this._registry[eventType];
19
- if (registrations != null) {
20
- for (const registration of Array.from(registrations)) {
21
- registration.listener.apply(registration.context, args);
22
- }
23
- }
24
- }
25
- _allocate(eventType) {
26
- let registrations = this._registry[eventType];
27
- if (registrations == null) {
28
- registrations = /* @__PURE__ */new Set();
29
- this._registry[eventType] = registrations;
30
- }
31
- return registrations;
32
- }
33
- }
34
- class TaskQueue {
35
- _queueStack;
36
- _onMoreTasks;
37
- constructor({
38
- onMoreTasks
39
- }) {
40
- this._onMoreTasks = onMoreTasks;
41
- this._queueStack = [{
42
- tasks: [],
43
- popable: true
44
- }];
45
- }
46
- enqueueTasks(tasks) {
47
- tasks.forEach(task => this._enqueue(task));
48
- }
49
- cancelTasks(tasksToCancel) {
50
- this._queueStack = this._queueStack.map(queue => ({
51
- ...queue,
52
- tasks: queue.tasks.filter(task => !tasksToCancel.includes(task))
53
- })).filter((queue, idx) => queue.tasks.length > 0 || idx === 0);
54
- }
55
- hasTasksToProcess() {
56
- return this._getCurrentQueue().length > 0;
57
- }
58
- processNext() {
59
- const queue = this._getCurrentQueue();
60
- if (queue.length) {
61
- const task = queue.shift();
62
- try {
63
- if (typeof task === "object" && task && "gen" in task) {
64
- this._genPromise(task);
65
- } else if (typeof task === "object" && task && "run" in task) {
66
- ;
67
- task.run();
68
- } else {
69
- invariant(typeof task === "function", "Expected Function, SimpleTask, or PromiseTask, but got:\n" + JSON.stringify(task, null, 2));
70
- task();
71
- }
72
- } catch (e) {
73
- if (e instanceof Error) {
74
- const taskName = task && typeof task === "object" && "name" in task ? task.name : "";
75
- e.message = "TaskQueue: Error with task " + taskName + ": " + e.message;
76
- }
77
- throw e;
78
- }
79
- }
80
- }
81
- _enqueue(task) {
82
- this._getCurrentQueue().push(task);
83
- }
84
- _getCurrentQueue() {
85
- const stackIdx = this._queueStack.length - 1;
86
- const queue = this._queueStack[stackIdx];
87
- if (queue.popable && queue.tasks.length === 0 && stackIdx > 0) {
88
- this._queueStack.pop();
89
- return this._getCurrentQueue();
90
- } else {
91
- return queue.tasks;
92
- }
93
- }
94
- _genPromise(task) {
95
- const length = this._queueStack.push({
96
- tasks: [],
97
- popable: false
98
- });
99
- const stackIdx = length - 1;
100
- const stackItem = this._queueStack[stackIdx];
101
- task.gen().then(() => {
102
- stackItem.popable = true;
103
- if (this.hasTasksToProcess()) {
104
- this._onMoreTasks();
105
- }
106
- }).catch(ex => {
107
- setTimeout(() => {
108
- if (ex instanceof Error) {
109
- ex.message = `TaskQueue: Error resolving Promise in task ${task.name}: ${ex.message}`;
110
- }
111
- throw ex;
112
- }, 0);
113
- });
114
- }
115
- }
3
+
4
+ var EventEmitter = class {
5
+ _registry = {};
6
+ addListener(eventType, listener, context) {
7
+ const registrations = this._allocate(eventType);
8
+ const registration = {
9
+ context,
10
+ listener,
11
+ remove: () => {
12
+ registrations.delete(registration);
13
+ }
14
+ };
15
+ registrations.add(registration);
16
+ return registration;
17
+ }
18
+ emit(eventType, ...args) {
19
+ const registrations = this._registry[eventType];
20
+ if (registrations != null) {
21
+ for (const registration of Array.from(registrations)) {
22
+ registration.listener.apply(registration.context, args);
23
+ }
24
+ }
25
+ }
26
+ _allocate(eventType) {
27
+ let registrations = this._registry[eventType];
28
+ if (registrations == null) {
29
+ registrations = /* @__PURE__ */ new Set();
30
+ this._registry[eventType] = registrations;
31
+ }
32
+ return registrations;
33
+ }
34
+ };
35
+ var TaskQueue = class {
36
+ _queueStack;
37
+ _onMoreTasks;
38
+ constructor({ onMoreTasks }) {
39
+ this._onMoreTasks = onMoreTasks;
40
+ this._queueStack = [{
41
+ tasks: [],
42
+ popable: true
43
+ }];
44
+ }
45
+ enqueueTasks(tasks) {
46
+ tasks.forEach((task) => this._enqueue(task));
47
+ }
48
+ cancelTasks(tasksToCancel) {
49
+ this._queueStack = this._queueStack.map((queue) => ({
50
+ ...queue,
51
+ tasks: queue.tasks.filter((task) => !tasksToCancel.includes(task))
52
+ })).filter((queue, idx) => queue.tasks.length > 0 || idx === 0);
53
+ }
54
+ hasTasksToProcess() {
55
+ return this._getCurrentQueue().length > 0;
56
+ }
57
+ processNext() {
58
+ const queue = this._getCurrentQueue();
59
+ if (queue.length) {
60
+ const task = queue.shift();
61
+ try {
62
+ if (typeof task === "object" && task && "gen" in task) {
63
+ this._genPromise(task);
64
+ } else if (typeof task === "object" && task && "run" in task) {
65
+ ;
66
+ task.run();
67
+ } else {
68
+ invariant(typeof task === "function", "Expected Function, SimpleTask, or PromiseTask, but got:\n" + JSON.stringify(task, null, 2));
69
+ task();
70
+ }
71
+ } catch (e) {
72
+ if (e instanceof Error) {
73
+ const taskName = task && typeof task === "object" && "name" in task ? task.name : "";
74
+ e.message = "TaskQueue: Error with task " + taskName + ": " + e.message;
75
+ }
76
+ throw e;
77
+ }
78
+ }
79
+ }
80
+ _enqueue(task) {
81
+ this._getCurrentQueue().push(task);
82
+ }
83
+ _getCurrentQueue() {
84
+ const stackIdx = this._queueStack.length - 1;
85
+ const queue = this._queueStack[stackIdx];
86
+ if (queue.popable && queue.tasks.length === 0 && stackIdx > 0) {
87
+ this._queueStack.pop();
88
+ return this._getCurrentQueue();
89
+ } else {
90
+ return queue.tasks;
91
+ }
92
+ }
93
+ _genPromise(task) {
94
+ const length = this._queueStack.push({
95
+ tasks: [],
96
+ popable: false
97
+ });
98
+ const stackIdx = length - 1;
99
+ const stackItem = this._queueStack[stackIdx];
100
+ task.gen().then(() => {
101
+ stackItem.popable = true;
102
+ if (this.hasTasksToProcess()) {
103
+ this._onMoreTasks();
104
+ }
105
+ }).catch((ex) => {
106
+ setTimeout(() => {
107
+ if (ex instanceof Error) {
108
+ ex.message = `TaskQueue: Error resolving Promise in task ${task.name}: ${ex.message}`;
109
+ }
110
+ throw ex;
111
+ }, 0);
112
+ });
113
+ }
114
+ };
116
115
  const _emitter = new EventEmitter();
117
116
  const InteractionManager = {
118
- Events: {
119
- interactionStart: "interactionStart",
120
- interactionComplete: "interactionComplete"
121
- },
122
- /**
123
- * Schedule a function to run after all interactions have completed.
124
- */
125
- runAfterInteractions(task) {
126
- const tasks = [];
127
- const promise = new Promise(resolve => {
128
- _scheduleUpdate();
129
- if (task) {
130
- tasks.push(task);
131
- }
132
- tasks.push({
133
- run: resolve,
134
- name: "resolve " + (task && typeof task === "object" && "name" in task && task.name || "?")
135
- });
136
- _taskQueue.enqueueTasks(tasks);
137
- });
138
- return {
139
- then: promise.then.bind(promise),
140
- done: promise.then.bind(promise),
141
- cancel: () => {
142
- _taskQueue.cancelTasks(tasks);
143
- }
144
- };
145
- },
146
- /**
147
- * Notify manager that an interaction has started.
148
- */
149
- createInteractionHandle() {
150
- _scheduleUpdate();
151
- const handle = ++_inc;
152
- _addInteractionSet.add(handle);
153
- return handle;
154
- },
155
- /**
156
- * Notify manager that an interaction has completed.
157
- */
158
- clearInteractionHandle(handle) {
159
- invariant(!!handle, "Must provide a handle to clear.");
160
- _scheduleUpdate();
161
- _addInteractionSet.delete(handle);
162
- _deleteInteractionSet.add(handle);
163
- },
164
- addListener: _emitter.addListener.bind(_emitter),
165
- /**
166
- * Set deadline for task processing
167
- */
168
- setDeadline(deadline) {
169
- _deadline = deadline;
170
- }
117
+ Events: {
118
+ interactionStart: "interactionStart",
119
+ interactionComplete: "interactionComplete"
120
+ },
121
+ /**
122
+ * Schedule a function to run after all interactions have completed.
123
+ */
124
+ runAfterInteractions(task) {
125
+ const tasks = [];
126
+ const promise = new Promise((resolve) => {
127
+ _scheduleUpdate();
128
+ if (task) {
129
+ tasks.push(task);
130
+ }
131
+ tasks.push({
132
+ run: resolve,
133
+ name: "resolve " + (task && typeof task === "object" && "name" in task && task.name || "?")
134
+ });
135
+ _taskQueue.enqueueTasks(tasks);
136
+ });
137
+ return {
138
+ then: promise.then.bind(promise),
139
+ done: promise.then.bind(promise),
140
+ cancel: () => {
141
+ _taskQueue.cancelTasks(tasks);
142
+ }
143
+ };
144
+ },
145
+ /**
146
+ * Notify manager that an interaction has started.
147
+ */
148
+ createInteractionHandle() {
149
+ _scheduleUpdate();
150
+ const handle = ++_inc;
151
+ _addInteractionSet.add(handle);
152
+ return handle;
153
+ },
154
+ /**
155
+ * Notify manager that an interaction has completed.
156
+ */
157
+ clearInteractionHandle(handle) {
158
+ invariant(!!handle, "Must provide a handle to clear.");
159
+ _scheduleUpdate();
160
+ _addInteractionSet.delete(handle);
161
+ _deleteInteractionSet.add(handle);
162
+ },
163
+ addListener: _emitter.addListener.bind(_emitter),
164
+ /**
165
+ * Set deadline for task processing
166
+ */
167
+ setDeadline(deadline) {
168
+ _deadline = deadline;
169
+ }
171
170
  };
172
- const _interactionSet = /* @__PURE__ */new Set();
173
- const _addInteractionSet = /* @__PURE__ */new Set();
174
- const _deleteInteractionSet = /* @__PURE__ */new Set();
175
- const _taskQueue = new TaskQueue({
176
- onMoreTasks: _scheduleUpdate
177
- });
171
+ const _interactionSet = /* @__PURE__ */ new Set();
172
+ const _addInteractionSet = /* @__PURE__ */ new Set();
173
+ const _deleteInteractionSet = /* @__PURE__ */ new Set();
174
+ const _taskQueue = new TaskQueue({ onMoreTasks: _scheduleUpdate });
178
175
  let _nextUpdateHandle = null;
179
176
  let _inc = 0;
180
177
  let _deadline = -1;
181
178
  function _scheduleUpdate() {
182
- if (!_nextUpdateHandle) {
183
- if (_deadline > 0) {
184
- _nextUpdateHandle = setTimeout(_processUpdate);
185
- } else {
186
- _nextUpdateHandle = requestIdleCallback(_processUpdate);
187
- }
188
- }
179
+ if (!_nextUpdateHandle) {
180
+ if (_deadline > 0) {
181
+ _nextUpdateHandle = setTimeout(_processUpdate);
182
+ } else {
183
+ _nextUpdateHandle = requestIdleCallback(_processUpdate);
184
+ }
185
+ }
189
186
  }
190
187
  function _processUpdate() {
191
- _nextUpdateHandle = null;
192
- const interactionCount = _interactionSet.size;
193
- _addInteractionSet.forEach(handle => _interactionSet.add(handle));
194
- _deleteInteractionSet.forEach(handle => _interactionSet.delete(handle));
195
- const nextInteractionCount = _interactionSet.size;
196
- if (interactionCount !== 0 && nextInteractionCount === 0) {
197
- _emitter.emit("interactionComplete");
198
- } else if (interactionCount === 0 && nextInteractionCount !== 0) {
199
- _emitter.emit("interactionStart");
200
- }
201
- if (nextInteractionCount === 0) {
202
- const begin = Date.now();
203
- while (_taskQueue.hasTasksToProcess()) {
204
- _taskQueue.processNext();
205
- if (_deadline > 0 && Date.now() - begin >= _deadline) {
206
- _scheduleUpdate();
207
- break;
208
- }
209
- }
210
- }
211
- _addInteractionSet.clear();
212
- _deleteInteractionSet.clear();
188
+ _nextUpdateHandle = null;
189
+ const interactionCount = _interactionSet.size;
190
+ _addInteractionSet.forEach((handle) => _interactionSet.add(handle));
191
+ _deleteInteractionSet.forEach((handle) => _interactionSet.delete(handle));
192
+ const nextInteractionCount = _interactionSet.size;
193
+ if (interactionCount !== 0 && nextInteractionCount === 0) {
194
+ _emitter.emit("interactionComplete");
195
+ } else if (interactionCount === 0 && nextInteractionCount !== 0) {
196
+ _emitter.emit("interactionStart");
197
+ }
198
+ if (nextInteractionCount === 0) {
199
+ const begin = Date.now();
200
+ while (_taskQueue.hasTasksToProcess()) {
201
+ _taskQueue.processNext();
202
+ if (_deadline > 0 && Date.now() - begin >= _deadline) {
203
+ _scheduleUpdate();
204
+ break;
205
+ }
206
+ }
207
+ }
208
+ _addInteractionSet.clear();
209
+ _deleteInteractionSet.clear();
213
210
  }
211
+
214
212
  export { InteractionManager };
215
213
  //# sourceMappingURL=InteractionManager.mjs.map
@@ -1 +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":[]}
1
+ {"version":3,"file":"InteractionManager.js","names":[],"sources":["esm/modules/InteractionManager.js"],"sourcesContent":["import { invariant } from \"./invariant\";\nimport { requestIdleCallback } from \"./requestIdleCallback/index\";\nclass EventEmitter {\n _registry = {};\n addListener(eventType, listener, context) {\n const registrations = this._allocate(eventType);\n const registration = {\n context,\n listener,\n remove: () => {\n registrations.delete(registration);\n }\n };\n registrations.add(registration);\n return registration;\n }\n emit(eventType, ...args) {\n const registrations = this._registry[eventType];\n if (registrations != null) {\n for (const registration of Array.from(registrations)) {\n registration.listener.apply(registration.context, args);\n }\n }\n }\n _allocate(eventType) {\n let registrations = this._registry[eventType];\n if (registrations == null) {\n registrations = /* @__PURE__ */ new Set();\n this._registry[eventType] = registrations;\n }\n return registrations;\n }\n}\nclass TaskQueue {\n _queueStack;\n _onMoreTasks;\n constructor({ onMoreTasks }) {\n this._onMoreTasks = onMoreTasks;\n this._queueStack = [{ tasks: [], popable: true }];\n }\n enqueueTasks(tasks) {\n tasks.forEach((task) => this._enqueue(task));\n }\n cancelTasks(tasksToCancel) {\n this._queueStack = this._queueStack.map((queue) => ({\n ...queue,\n tasks: queue.tasks.filter((task) => !tasksToCancel.includes(task))\n })).filter((queue, idx) => queue.tasks.length > 0 || idx === 0);\n }\n hasTasksToProcess() {\n return this._getCurrentQueue().length > 0;\n }\n processNext() {\n const queue = this._getCurrentQueue();\n if (queue.length) {\n const task = queue.shift();\n try {\n if (typeof task === \"object\" && task && \"gen\" in task) {\n this._genPromise(task);\n } else if (typeof task === \"object\" && task && \"run\" in task) {\n ;\n task.run();\n } else {\n invariant(\n typeof task === \"function\",\n \"Expected Function, SimpleTask, or PromiseTask, but got:\\n\" + JSON.stringify(task, null, 2)\n );\n task();\n }\n } catch (e) {\n if (e instanceof Error) {\n const taskName = task && typeof task === \"object\" && \"name\" in task ? task.name : \"\";\n e.message = \"TaskQueue: Error with task \" + taskName + \": \" + e.message;\n }\n throw e;\n }\n }\n }\n _enqueue(task) {\n this._getCurrentQueue().push(task);\n }\n _getCurrentQueue() {\n const stackIdx = this._queueStack.length - 1;\n const queue = this._queueStack[stackIdx];\n if (queue.popable && queue.tasks.length === 0 && stackIdx > 0) {\n this._queueStack.pop();\n return this._getCurrentQueue();\n } else {\n return queue.tasks;\n }\n }\n _genPromise(task) {\n const length = this._queueStack.push({ tasks: [], popable: false });\n const stackIdx = length - 1;\n const stackItem = this._queueStack[stackIdx];\n task.gen().then(() => {\n stackItem.popable = true;\n if (this.hasTasksToProcess()) {\n this._onMoreTasks();\n }\n }).catch((ex) => {\n setTimeout(() => {\n if (ex instanceof Error) {\n ex.message = `TaskQueue: Error resolving Promise in task ${task.name}: ${ex.message}`;\n }\n throw ex;\n }, 0);\n });\n }\n}\nconst _emitter = new EventEmitter();\nconst InteractionManager = {\n Events: {\n interactionStart: \"interactionStart\",\n interactionComplete: \"interactionComplete\"\n },\n /**\n * Schedule a function to run after all interactions have completed.\n */\n runAfterInteractions(task) {\n const tasks = [];\n const promise = new Promise((resolve) => {\n _scheduleUpdate();\n if (task) {\n tasks.push(task);\n }\n tasks.push({\n run: resolve,\n name: \"resolve \" + (task && typeof task === \"object\" && \"name\" in task && task.name || \"?\")\n });\n _taskQueue.enqueueTasks(tasks);\n });\n return {\n then: promise.then.bind(promise),\n done: promise.then.bind(promise),\n cancel: () => {\n _taskQueue.cancelTasks(tasks);\n }\n };\n },\n /**\n * Notify manager that an interaction has started.\n */\n createInteractionHandle() {\n _scheduleUpdate();\n const handle = ++_inc;\n _addInteractionSet.add(handle);\n return handle;\n },\n /**\n * Notify manager that an interaction has completed.\n */\n clearInteractionHandle(handle) {\n invariant(!!handle, \"Must provide a handle to clear.\");\n _scheduleUpdate();\n _addInteractionSet.delete(handle);\n _deleteInteractionSet.add(handle);\n },\n addListener: _emitter.addListener.bind(_emitter),\n /**\n * Set deadline for task processing\n */\n setDeadline(deadline) {\n _deadline = deadline;\n }\n};\nconst _interactionSet = /* @__PURE__ */ new Set();\nconst _addInteractionSet = /* @__PURE__ */ new Set();\nconst _deleteInteractionSet = /* @__PURE__ */ new Set();\nconst _taskQueue = new TaskQueue({ onMoreTasks: _scheduleUpdate });\nlet _nextUpdateHandle = null;\nlet _inc = 0;\nlet _deadline = -1;\nfunction _scheduleUpdate() {\n if (!_nextUpdateHandle) {\n if (_deadline > 0) {\n _nextUpdateHandle = setTimeout(_processUpdate);\n } else {\n _nextUpdateHandle = requestIdleCallback(_processUpdate);\n }\n }\n}\nfunction _processUpdate() {\n _nextUpdateHandle = null;\n const interactionCount = _interactionSet.size;\n _addInteractionSet.forEach((handle) => _interactionSet.add(handle));\n _deleteInteractionSet.forEach((handle) => _interactionSet.delete(handle));\n const nextInteractionCount = _interactionSet.size;\n if (interactionCount !== 0 && nextInteractionCount === 0) {\n _emitter.emit(\"interactionComplete\");\n } else if (interactionCount === 0 && nextInteractionCount !== 0) {\n _emitter.emit(\"interactionStart\");\n }\n if (nextInteractionCount === 0) {\n const begin = Date.now();\n while (_taskQueue.hasTasksToProcess()) {\n _taskQueue.processNext();\n if (_deadline > 0 && Date.now() - begin >= _deadline) {\n _scheduleUpdate();\n break;\n }\n }\n }\n _addInteractionSet.clear();\n _deleteInteractionSet.clear();\n}\nexport {\n InteractionManager\n};\n//# sourceMappingURL=InteractionManager.js.map\n"],"mappings":";;;;AAEA,IAAM,eAAN,MAAmB;CACjB,YAAY,CAAC;CACb,YAAY,WAAW,UAAU,SAAS;EACxC,MAAM,gBAAgB,KAAK,UAAU,SAAS;EAC9C,MAAM,eAAe;GACnB;GACA;GACA,cAAc;IACZ,cAAc,OAAO,YAAY;GACnC;EACF;EACA,cAAc,IAAI,YAAY;EAC9B,OAAO;CACT;CACA,KAAK,WAAW,GAAG,MAAM;EACvB,MAAM,gBAAgB,KAAK,UAAU;EACrC,IAAI,iBAAiB,MAAM;GACzB,KAAK,MAAM,gBAAgB,MAAM,KAAK,aAAa,GAAG;IACpD,aAAa,SAAS,MAAM,aAAa,SAAS,IAAI;GACxD;EACF;CACF;CACA,UAAU,WAAW;EACnB,IAAI,gBAAgB,KAAK,UAAU;EACnC,IAAI,iBAAiB,MAAM;GACzB,gCAAgC,IAAI,IAAI;GACxC,KAAK,UAAU,aAAa;EAC9B;EACA,OAAO;CACT;AACF;AACA,IAAM,YAAN,MAAgB;CACd;CACA;CACA,YAAY,EAAE,eAAe;EAC3B,KAAK,eAAe;EACpB,KAAK,cAAc,CAAC;GAAE,OAAO,CAAC;GAAG,SAAS;EAAK,CAAC;CAClD;CACA,aAAa,OAAO;EAClB,MAAM,SAAS,SAAS,KAAK,SAAS,IAAI,CAAC;CAC7C;CACA,YAAY,eAAe;EACzB,KAAK,cAAc,KAAK,YAAY,KAAK,WAAW;GAClD,GAAG;GACH,OAAO,MAAM,MAAM,QAAQ,SAAS,CAAC,cAAc,SAAS,IAAI,CAAC;EACnE,EAAE,EAAE,QAAQ,OAAO,QAAQ,MAAM,MAAM,SAAS,KAAK,QAAQ,CAAC;CAChE;CACA,oBAAoB;EAClB,OAAO,KAAK,iBAAiB,EAAE,SAAS;CAC1C;CACA,cAAc;EACZ,MAAM,QAAQ,KAAK,iBAAiB;EACpC,IAAI,MAAM,QAAQ;GAChB,MAAM,OAAO,MAAM,MAAM;GACzB,IAAI;IACF,IAAI,OAAO,SAAS,YAAY,QAAQ,SAAS,MAAM;KACrD,KAAK,YAAY,IAAI;IACvB,OAAO,IAAI,OAAO,SAAS,YAAY,QAAQ,SAAS,MAAM;KAC5D;KACA,KAAK,IAAI;IACX,OAAO;KACL,UACE,OAAO,SAAS,YAChB,8DAA8D,KAAK,UAAU,MAAM,MAAM,CAAC,CAC5F;KACA,KAAK;IACP;GACF,SAAS,GAAG;IACV,IAAI,aAAa,OAAO;KACtB,MAAM,WAAW,QAAQ,OAAO,SAAS,YAAY,UAAU,OAAO,KAAK,OAAO;KAClF,EAAE,UAAU,gCAAgC,WAAW,OAAO,EAAE;IAClE;IACA,MAAM;GACR;EACF;CACF;CACA,SAAS,MAAM;EACb,KAAK,iBAAiB,EAAE,KAAK,IAAI;CACnC;CACA,mBAAmB;EACjB,MAAM,WAAW,KAAK,YAAY,SAAS;EAC3C,MAAM,QAAQ,KAAK,YAAY;EAC/B,IAAI,MAAM,WAAW,MAAM,MAAM,WAAW,KAAK,WAAW,GAAG;GAC7D,KAAK,YAAY,IAAI;GACrB,OAAO,KAAK,iBAAiB;EAC/B,OAAO;GACL,OAAO,MAAM;EACf;CACF;CACA,YAAY,MAAM;EAChB,MAAM,SAAS,KAAK,YAAY,KAAK;GAAE,OAAO,CAAC;GAAG,SAAS;EAAM,CAAC;EAClE,MAAM,WAAW,SAAS;EAC1B,MAAM,YAAY,KAAK,YAAY;EACnC,KAAK,IAAI,EAAE,WAAW;GACpB,UAAU,UAAU;GACpB,IAAI,KAAK,kBAAkB,GAAG;IAC5B,KAAK,aAAa;GACpB;EACF,CAAC,EAAE,OAAO,OAAO;GACf,iBAAiB;IACf,IAAI,cAAc,OAAO;KACvB,GAAG,UAAU,8CAA8C,KAAK,KAAK,IAAI,GAAG;IAC9E;IACA,MAAM;GACR,GAAG,CAAC;EACN,CAAC;CACH;AACF;AACA,MAAM,WAAW,IAAI,aAAa;AAClC,MAAM,qBAAqB;CACzB,QAAQ;EACN,kBAAkB;EAClB,qBAAqB;CACvB;;;;CAIA,qBAAqB,MAAM;EACzB,MAAM,QAAQ,CAAC;EACf,MAAM,UAAU,IAAI,SAAS,YAAY;GACvC,gBAAgB;GAChB,IAAI,MAAM;IACR,MAAM,KAAK,IAAI;GACjB;GACA,MAAM,KAAK;IACT,KAAK;IACL,MAAM,cAAc,QAAQ,OAAO,SAAS,YAAY,UAAU,QAAQ,KAAK,QAAQ;GACzF,CAAC;GACD,WAAW,aAAa,KAAK;EAC/B,CAAC;EACD,OAAO;GACL,MAAM,QAAQ,KAAK,KAAK,OAAO;GAC/B,MAAM,QAAQ,KAAK,KAAK,OAAO;GAC/B,cAAc;IACZ,WAAW,YAAY,KAAK;GAC9B;EACF;CACF;;;;CAIA,0BAA0B;EACxB,gBAAgB;EAChB,MAAM,SAAS,EAAE;EACjB,mBAAmB,IAAI,MAAM;EAC7B,OAAO;CACT;;;;CAIA,uBAAuB,QAAQ;EAC7B,UAAU,CAAC,CAAC,QAAQ,iCAAiC;EACrD,gBAAgB;EAChB,mBAAmB,OAAO,MAAM;EAChC,sBAAsB,IAAI,MAAM;CAClC;CACA,aAAa,SAAS,YAAY,KAAK,QAAQ;;;;CAI/C,YAAY,UAAU;EACpB,YAAY;CACd;AACF;AACA,MAAM,kCAAkC,IAAI,IAAI;AAChD,MAAM,qCAAqC,IAAI,IAAI;AACnD,MAAM,wCAAwC,IAAI,IAAI;AACtD,MAAM,aAAa,IAAI,UAAU,EAAE,aAAa,gBAAgB,CAAC;AACjE,IAAI,oBAAoB;AACxB,IAAI,OAAO;AACX,IAAI,YAAY,CAAC;AACjB,SAAS,kBAAkB;CACzB,IAAI,CAAC,mBAAmB;EACtB,IAAI,YAAY,GAAG;GACjB,oBAAoB,WAAW,cAAc;EAC/C,OAAO;GACL,oBAAoB,oBAAoB,cAAc;EACxD;CACF;AACF;AACA,SAAS,iBAAiB;CACxB,oBAAoB;CACpB,MAAM,mBAAmB,gBAAgB;CACzC,mBAAmB,SAAS,WAAW,gBAAgB,IAAI,MAAM,CAAC;CAClE,sBAAsB,SAAS,WAAW,gBAAgB,OAAO,MAAM,CAAC;CACxE,MAAM,uBAAuB,gBAAgB;CAC7C,IAAI,qBAAqB,KAAK,yBAAyB,GAAG;EACxD,SAAS,KAAK,qBAAqB;CACrC,OAAO,IAAI,qBAAqB,KAAK,yBAAyB,GAAG;EAC/D,SAAS,KAAK,kBAAkB;CAClC;CACA,IAAI,yBAAyB,GAAG;EAC9B,MAAM,QAAQ,KAAK,IAAI;EACvB,OAAO,WAAW,kBAAkB,GAAG;GACrC,WAAW,YAAY;GACvB,IAAI,YAAY,KAAK,KAAK,IAAI,IAAI,SAAS,WAAW;IACpD,gBAAgB;IAChB;GACF;EACF;CACF;CACA,mBAAmB,MAAM;CACzB,sBAAsB,MAAM;AAC9B"}
@@ -1,7 +1,8 @@
1
1
  const Platform = {
2
- OS: "web",
3
- select: obj => "web" in obj ? obj.web : obj.default,
4
- isTesting: process.env.NODE_ENV === "test"
2
+ OS: "web",
3
+ select: (obj) => "web" in obj ? obj.web : obj.default,
4
+ isTesting: process.env.NODE_ENV === "test"
5
5
  };
6
+
6
7
  export { Platform };
7
8
  //# sourceMappingURL=index.mjs.map
@@ -1 +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":[]}
1
+ {"version":3,"file":"index.js","names":[],"sources":["esm/modules/Platform/index.js"],"sourcesContent":["const Platform = {\n OS: \"web\",\n select: (obj) => \"web\" in obj ? obj.web : obj.default,\n isTesting: process.env.NODE_ENV === \"test\"\n};\nexport {\n Platform\n};\n//# sourceMappingURL=index.js.map\n"],"mappings":";AAAA,MAAM,WAAW;CACf,IAAI;CACJ,SAAS,QAAQ,SAAS,MAAM,IAAI,MAAM,IAAI;CAC9C,WAAW,QAAQ,IAAI,aAAa;AACtC"}
@@ -1,45 +1,47 @@
1
1
  import { UIManager } from "../UIManager/index.mjs";
2
+
2
3
  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
- if (document.activeElement !== this._currentlyFocusedNode) {
13
- this._currentlyFocusedNode = null;
14
- }
15
- return this._currentlyFocusedNode;
16
- },
17
- /**
18
- * @param {Object} TextInputID id of the text field to focus
19
- * Focuses the specified text field
20
- * noop if the text field was already focused
21
- */
22
- focusTextInput(textFieldNode) {
23
- if (textFieldNode !== null) {
24
- this._currentlyFocusedNode = textFieldNode;
25
- if (document.activeElement !== textFieldNode) {
26
- UIManager.focus(textFieldNode);
27
- }
28
- }
29
- },
30
- /**
31
- * @param {Object} textFieldNode id of the text field to focus
32
- * Unfocuses the specified text field
33
- * noop if it wasn't focused
34
- */
35
- blurTextInput(textFieldNode) {
36
- if (textFieldNode !== null) {
37
- this._currentlyFocusedNode = null;
38
- if (document.activeElement === textFieldNode) {
39
- UIManager.blur(textFieldNode);
40
- }
41
- }
42
- }
4
+ /**
5
+ * Internal state
6
+ */
7
+ _currentlyFocusedNode: null,
8
+ /**
9
+ * Returns the ID of the currently focused text field, if one exists
10
+ * If no text field is focused it returns null
11
+ */
12
+ currentlyFocusedField() {
13
+ if (document.activeElement !== this._currentlyFocusedNode) {
14
+ this._currentlyFocusedNode = null;
15
+ }
16
+ return this._currentlyFocusedNode;
17
+ },
18
+ /**
19
+ * @param {Object} TextInputID id of the text field to focus
20
+ * Focuses the specified text field
21
+ * noop if the text field was already focused
22
+ */
23
+ focusTextInput(textFieldNode) {
24
+ if (textFieldNode !== null) {
25
+ this._currentlyFocusedNode = textFieldNode;
26
+ if (document.activeElement !== textFieldNode) {
27
+ UIManager.focus(textFieldNode);
28
+ }
29
+ }
30
+ },
31
+ /**
32
+ * @param {Object} textFieldNode id of the text field to focus
33
+ * Unfocuses the specified text field
34
+ * noop if it wasn't focused
35
+ */
36
+ blurTextInput(textFieldNode) {
37
+ if (textFieldNode !== null) {
38
+ this._currentlyFocusedNode = null;
39
+ if (document.activeElement === textFieldNode) {
40
+ UIManager.blur(textFieldNode);
41
+ }
42
+ }
43
+ }
43
44
  };
45
+
44
46
  export { TextInputState };
45
47
  //# sourceMappingURL=index.mjs.map
@@ -1 +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,IAAIC,QAAA,CAASC,aAAA,KAAkB,KAAKH,qBAAA,EAAuB;MACzD,KAAKA,qBAAA,GAAwB;IAC/B;IACA,OAAO,KAAKA,qBAAA;EACd;EAAA;AAAA;AAAA;AAAA;AAAA;EAOAI,eAAeC,aAAA,EAA8B;IAC3C,IAAIA,aAAA,KAAkB,MAAM;MAC1B,KAAKL,qBAAA,GAAwBK,aAAA;MAC7B,IAAIH,QAAA,CAASC,aAAA,KAAkBE,aAAA,EAAe;QAC5CP,SAAA,CAAUQ,KAAA,CAAMD,aAAa;MAC/B;IACF;EACF;EAAA;AAAA;AAAA;AAAA;AAAA;EAOAE,cAAcF,aAAA,EAA8B;IAC1C,IAAIA,aAAA,KAAkB,MAAM;MAC1B,KAAKL,qBAAA,GAAwB;MAC7B,IAAIE,QAAA,CAASC,aAAA,KAAkBE,aAAA,EAAe;QAC5CP,SAAA,CAAUU,IAAA,CAAKH,aAAa;MAC9B;IACF;EACF;AACF","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":[],"sources":["esm/modules/TextInputState/index.js"],"sourcesContent":["import { UIManager } from \"../UIManager\";\nconst TextInputState = {\n /**\n * Internal state\n */\n _currentlyFocusedNode: null,\n /**\n * Returns the ID of the currently focused text field, if one exists\n * If no text field is focused it returns null\n */\n currentlyFocusedField() {\n if (document.activeElement !== this._currentlyFocusedNode) {\n this._currentlyFocusedNode = null;\n }\n return this._currentlyFocusedNode;\n },\n /**\n * @param {Object} TextInputID id of the text field to focus\n * Focuses the specified text field\n * noop if the text field was already focused\n */\n focusTextInput(textFieldNode) {\n if (textFieldNode !== null) {\n this._currentlyFocusedNode = textFieldNode;\n if (document.activeElement !== textFieldNode) {\n UIManager.focus(textFieldNode);\n }\n }\n },\n /**\n * @param {Object} textFieldNode id of the text field to focus\n * Unfocuses the specified text field\n * noop if it wasn't focused\n */\n blurTextInput(textFieldNode) {\n if (textFieldNode !== null) {\n this._currentlyFocusedNode = null;\n if (document.activeElement === textFieldNode) {\n UIManager.blur(textFieldNode);\n }\n }\n }\n};\nexport {\n TextInputState\n};\n//# sourceMappingURL=index.js.map\n"],"mappings":";;;AACA,MAAM,iBAAiB;;;;CAIrB,uBAAuB;;;;;CAKvB,wBAAwB;EACtB,IAAI,SAAS,kBAAkB,KAAK,uBAAuB;GACzD,KAAK,wBAAwB;EAC/B;EACA,OAAO,KAAK;CACd;;;;;;CAMA,eAAe,eAAe;EAC5B,IAAI,kBAAkB,MAAM;GAC1B,KAAK,wBAAwB;GAC7B,IAAI,SAAS,kBAAkB,eAAe;IAC5C,UAAU,MAAM,aAAa;GAC/B;EACF;CACF;;;;;;CAMA,cAAc,eAAe;EAC3B,IAAI,kBAAkB,MAAM;GAC1B,KAAK,wBAAwB;GAC7B,IAAI,SAAS,kBAAkB,eAAe;IAC5C,UAAU,KAAK,aAAa;GAC9B;EACF;CACF;AACF"}