@semcore/core 16.5.1 → 17.0.0-prerelease.14

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 (427) hide show
  1. package/CHANGELOG.md +12 -1
  2. package/README.md +4 -4
  3. package/lib/LastInteractionType.js +22 -36
  4. package/lib/LastInteractionType.js.map +1 -1
  5. package/lib/LastInteractionType.mjs +19 -33
  6. package/lib/LastInteractionType.mjs.map +1 -1
  7. package/lib/core-types/Component.d.ts +26 -79
  8. package/lib/core-types/Component.js +24 -72
  9. package/lib/core-types/Component.js.map +1 -1
  10. package/lib/core-types/Component.mjs +18 -34
  11. package/lib/core-types/Component.mjs.map +1 -1
  12. package/lib/core-types/symbols.js +9 -9
  13. package/lib/core-types/symbols.js.map +1 -1
  14. package/lib/core-types/symbols.mjs +9 -9
  15. package/lib/core-types/symbols.mjs.map +1 -1
  16. package/lib/coreFactory.d.ts +6 -23
  17. package/lib/coreFactory.js +150 -217
  18. package/lib/coreFactory.js.map +1 -1
  19. package/lib/coreFactory.mjs +139 -194
  20. package/lib/coreFactory.mjs.map +1 -1
  21. package/lib/decorators/propsObserver.d.ts +11 -0
  22. package/lib/decorators/reactive.d.ts +11 -0
  23. package/lib/enhancement/Children.js +51 -59
  24. package/lib/enhancement/Children.js.map +1 -1
  25. package/lib/enhancement/Children.mjs +47 -41
  26. package/lib/enhancement/Children.mjs.map +1 -1
  27. package/lib/enhancement/Root.js +36 -37
  28. package/lib/enhancement/Root.js.map +1 -1
  29. package/lib/enhancement/Root.mjs +28 -18
  30. package/lib/enhancement/Root.mjs.map +1 -1
  31. package/lib/enhancement/dataName.js +7 -8
  32. package/lib/enhancement/dataName.js.map +1 -1
  33. package/lib/enhancement/dataName.mjs +5 -5
  34. package/lib/enhancement/dataName.mjs.map +1 -1
  35. package/lib/enhancement/enhance.js +6 -9
  36. package/lib/enhancement/enhance.js.map +1 -1
  37. package/lib/enhancement/enhance.mjs +5 -7
  38. package/lib/enhancement/enhance.mjs.map +1 -1
  39. package/lib/enhancement/functionDefaultProps.js +6 -6
  40. package/lib/enhancement/functionDefaultProps.js.map +1 -1
  41. package/lib/enhancement/functionDefaultProps.mjs +4 -4
  42. package/lib/enhancement/functionDefaultProps.mjs.map +1 -1
  43. package/lib/enhancement/i18n.js +13 -13
  44. package/lib/enhancement/i18n.js.map +1 -1
  45. package/lib/enhancement/i18n.mjs +10 -9
  46. package/lib/enhancement/i18n.mjs.map +1 -1
  47. package/lib/enhancement/inheritedName.js +7 -8
  48. package/lib/enhancement/inheritedName.js.map +1 -1
  49. package/lib/enhancement/inheritedName.mjs +5 -5
  50. package/lib/enhancement/inheritedName.mjs.map +1 -1
  51. package/lib/enhancement/staticChildren.js +47 -56
  52. package/lib/enhancement/staticChildren.js.map +1 -1
  53. package/lib/enhancement/staticChildren.mjs +43 -48
  54. package/lib/enhancement/staticChildren.mjs.map +1 -1
  55. package/lib/enhancement/style.js +29 -27
  56. package/lib/enhancement/style.js.map +1 -1
  57. package/lib/enhancement/style.mjs +26 -20
  58. package/lib/enhancement/style.mjs.map +1 -1
  59. package/lib/enhancement/uncontrolledProps.js +46 -64
  60. package/lib/enhancement/uncontrolledProps.js.map +1 -1
  61. package/lib/enhancement/uncontrolledProps.mjs +43 -51
  62. package/lib/enhancement/uncontrolledProps.mjs.map +1 -1
  63. package/lib/esm/LastInteractionType.mjs +19 -33
  64. package/lib/esm/core-types/Component.mjs +18 -34
  65. package/lib/esm/core-types/symbols.mjs +9 -9
  66. package/lib/esm/coreFactory.mjs +139 -194
  67. package/lib/esm/enhancement/Children.mjs +47 -41
  68. package/lib/esm/enhancement/Root.mjs +28 -18
  69. package/lib/esm/enhancement/dataName.mjs +5 -5
  70. package/lib/esm/enhancement/enhance.mjs +5 -7
  71. package/lib/esm/enhancement/functionDefaultProps.mjs +4 -4
  72. package/lib/esm/enhancement/i18n.mjs +10 -9
  73. package/lib/esm/enhancement/inheritedName.mjs +5 -5
  74. package/lib/esm/enhancement/staticChildren.mjs +43 -48
  75. package/lib/esm/enhancement/style.mjs +26 -20
  76. package/lib/esm/enhancement/uncontrolledProps.mjs +43 -51
  77. package/lib/esm/register.mjs +12 -20
  78. package/lib/esm/styled/reshadow-core.mjs +98 -111
  79. package/lib/esm/styled/sstyled.mjs +31 -41
  80. package/lib/esm/utils/assignProps.mjs +32 -36
  81. package/lib/esm/utils/enhances/WithI18n.mjs +16 -63
  82. package/lib/esm/utils/enhances/i18nEnhance.mjs +47 -61
  83. package/lib/esm/utils/logger.mjs +13 -21
  84. package/lib/esm/utils/pick.mjs +4 -4
  85. package/lib/esm/utils/ref.mjs +27 -57
  86. package/lib/esm/utils/use/useEnhancedEffect.mjs +1 -1
  87. package/lib/index.d.ts +3 -3
  88. package/lib/index.js +17 -17
  89. package/lib/index.js.map +1 -1
  90. package/lib/index.mjs.map +1 -1
  91. package/lib/register.js +17 -24
  92. package/lib/register.js.map +1 -1
  93. package/lib/register.mjs +12 -20
  94. package/lib/register.mjs.map +1 -1
  95. package/lib/styled/index.d.ts +1 -5
  96. package/lib/styled/index.js +4 -4
  97. package/lib/styled/index.js.map +1 -1
  98. package/lib/styled/index.mjs.map +1 -1
  99. package/lib/styled/reshadow-core.js +102 -104
  100. package/lib/styled/reshadow-core.js.map +1 -1
  101. package/lib/styled/reshadow-core.mjs +98 -111
  102. package/lib/styled/reshadow-core.mjs.map +1 -1
  103. package/lib/styled/sstyled.js +31 -53
  104. package/lib/styled/sstyled.js.map +1 -1
  105. package/lib/styled/sstyled.mjs +31 -41
  106. package/lib/styled/sstyled.mjs.map +1 -1
  107. package/lib/theme/processor.js +150 -222
  108. package/lib/theme/processor.js.map +1 -1
  109. package/lib/theme/processor.mjs +148 -221
  110. package/lib/theme/processor.mjs.map +1 -1
  111. package/lib/theme/themes/dark.js +2 -2
  112. package/lib/theme/themes/dark.js.map +1 -1
  113. package/lib/theme/themes/default.js +2 -2
  114. package/lib/theme/themes/default.js.map +1 -1
  115. package/lib/theme/themes/highlights-dark.js +2 -2
  116. package/lib/theme/themes/highlights-dark.js.map +1 -1
  117. package/lib/theme/themes/highlights-light.js +2 -2
  118. package/lib/theme/themes/highlights-light.js.map +1 -1
  119. package/lib/theme/themes/light.js +2 -2
  120. package/lib/theme/themes/light.js.map +1 -1
  121. package/lib/theme/utils.js +140 -215
  122. package/lib/theme/utils.js.map +1 -1
  123. package/lib/theme/utils.mjs +135 -214
  124. package/lib/theme/utils.mjs.map +1 -1
  125. package/lib/utils/CSSinJS.js +8 -10
  126. package/lib/utils/CSSinJS.js.map +1 -1
  127. package/lib/utils/CSSinJS.mjs +6 -7
  128. package/lib/utils/CSSinJS.mjs.map +1 -1
  129. package/lib/utils/ThemeProvider.js +44 -51
  130. package/lib/utils/ThemeProvider.js.map +1 -1
  131. package/lib/utils/ThemeProvider.mjs +36 -47
  132. package/lib/utils/ThemeProvider.mjs.map +1 -1
  133. package/lib/utils/addonText.js +4 -7
  134. package/lib/utils/addonText.js.map +1 -1
  135. package/lib/utils/addonText.mjs +2 -5
  136. package/lib/utils/addonText.mjs.map +1 -1
  137. package/lib/utils/addonTextChildren.js +15 -21
  138. package/lib/utils/addonTextChildren.js.map +1 -1
  139. package/lib/utils/addonTextChildren.mjs +7 -13
  140. package/lib/utils/addonTextChildren.mjs.map +1 -1
  141. package/lib/utils/ariaProps.js +7 -5
  142. package/lib/utils/ariaProps.js.map +1 -1
  143. package/lib/utils/ariaProps.mjs +7 -5
  144. package/lib/utils/ariaProps.mjs.map +1 -1
  145. package/lib/utils/assignProps.js +33 -37
  146. package/lib/utils/assignProps.js.map +1 -1
  147. package/lib/utils/assignProps.mjs +32 -36
  148. package/lib/utils/assignProps.mjs.map +1 -1
  149. package/lib/utils/canUseDOM.js +1 -1
  150. package/lib/utils/capitalizeFirstLetter.js +1 -1
  151. package/lib/utils/color.js +72 -95
  152. package/lib/utils/color.js.map +1 -1
  153. package/lib/utils/color.mjs +71 -94
  154. package/lib/utils/color.mjs.map +1 -1
  155. package/lib/utils/compose.js +3 -12
  156. package/lib/utils/compose.js.map +1 -1
  157. package/lib/utils/compose.mjs +2 -11
  158. package/lib/utils/compose.mjs.map +1 -1
  159. package/lib/utils/createUUID.js +5 -5
  160. package/lib/utils/createUUID.js.map +1 -1
  161. package/lib/utils/createUUID.mjs +4 -4
  162. package/lib/utils/createUUID.mjs.map +1 -1
  163. package/lib/utils/cssToIntDefault.js +3 -4
  164. package/lib/utils/cssToIntDefault.js.map +1 -1
  165. package/lib/utils/cssToIntDefault.mjs +2 -3
  166. package/lib/utils/cssToIntDefault.mjs.map +1 -1
  167. package/lib/utils/enhances/WithCSS.d.ts +2 -30
  168. package/lib/utils/enhances/WithCSS.js +13 -64
  169. package/lib/utils/enhances/WithCSS.js.map +1 -1
  170. package/lib/utils/enhances/WithCSS.mjs +9 -59
  171. package/lib/utils/enhances/WithCSS.mjs.map +1 -1
  172. package/lib/utils/enhances/WithI18n.d.ts +1 -30
  173. package/lib/utils/enhances/WithI18n.js +20 -76
  174. package/lib/utils/enhances/WithI18n.js.map +1 -1
  175. package/lib/utils/enhances/WithI18n.mjs +16 -63
  176. package/lib/utils/enhances/WithI18n.mjs.map +1 -1
  177. package/lib/utils/enhances/a11yEnhance.js +34 -39
  178. package/lib/utils/enhances/a11yEnhance.js.map +1 -1
  179. package/lib/utils/enhances/a11yEnhance.mjs +32 -36
  180. package/lib/utils/enhances/a11yEnhance.mjs.map +1 -1
  181. package/lib/utils/enhances/animatedSizeEnhance.d.ts +0 -4
  182. package/lib/utils/enhances/animatedSizeEnhance.js +55 -65
  183. package/lib/utils/enhances/animatedSizeEnhance.js.map +1 -1
  184. package/lib/utils/enhances/animatedSizeEnhance.mjs +50 -61
  185. package/lib/utils/enhances/animatedSizeEnhance.mjs.map +1 -1
  186. package/lib/utils/enhances/contextEnhance.js +12 -11
  187. package/lib/utils/enhances/contextEnhance.js.map +1 -1
  188. package/lib/utils/enhances/contextEnhance.mjs +9 -8
  189. package/lib/utils/enhances/contextEnhance.mjs.map +1 -1
  190. package/lib/utils/enhances/i18nEnhance.d.ts +0 -4
  191. package/lib/utils/enhances/i18nEnhance.js +51 -69
  192. package/lib/utils/enhances/i18nEnhance.js.map +1 -1
  193. package/lib/utils/enhances/i18nEnhance.mjs +47 -61
  194. package/lib/utils/enhances/i18nEnhance.mjs.map +1 -1
  195. package/lib/utils/enhances/resolveColorEnhance.js +12 -10
  196. package/lib/utils/enhances/resolveColorEnhance.js.map +1 -1
  197. package/lib/utils/enhances/resolveColorEnhance.mjs +8 -6
  198. package/lib/utils/enhances/resolveColorEnhance.mjs.map +1 -1
  199. package/lib/utils/eventEmitter.d.ts +10 -6
  200. package/lib/utils/eventEmitter.js +33 -32
  201. package/lib/utils/eventEmitter.js.map +1 -1
  202. package/lib/utils/eventEmitter.mjs +30 -31
  203. package/lib/utils/eventEmitter.mjs.map +1 -1
  204. package/lib/utils/findComponent.js +35 -42
  205. package/lib/utils/findComponent.js.map +1 -1
  206. package/lib/utils/findComponent.mjs +26 -33
  207. package/lib/utils/findComponent.mjs.map +1 -1
  208. package/lib/utils/fire.js +7 -13
  209. package/lib/utils/fire.js.map +1 -1
  210. package/lib/utils/fire.mjs +5 -11
  211. package/lib/utils/fire.mjs.map +1 -1
  212. package/lib/utils/focus-lock/focusBorders.js +28 -32
  213. package/lib/utils/focus-lock/focusBorders.js.map +1 -1
  214. package/lib/utils/focus-lock/focusBorders.mjs +26 -32
  215. package/lib/utils/focus-lock/focusBorders.mjs.map +1 -1
  216. package/lib/utils/focus-lock/getFocusableIn.js +4 -6
  217. package/lib/utils/focus-lock/getFocusableIn.js.map +1 -1
  218. package/lib/utils/focus-lock/getFocusableIn.mjs +3 -6
  219. package/lib/utils/focus-lock/getFocusableIn.mjs.map +1 -1
  220. package/lib/utils/focus-lock/isFocusInside.js +5 -6
  221. package/lib/utils/focus-lock/isFocusInside.js.map +1 -1
  222. package/lib/utils/focus-lock/isFocusInside.mjs +4 -6
  223. package/lib/utils/focus-lock/isFocusInside.mjs.map +1 -1
  224. package/lib/utils/focus-lock/isFocusable.js +9 -12
  225. package/lib/utils/focus-lock/isFocusable.js.map +1 -1
  226. package/lib/utils/focus-lock/isFocusable.mjs +8 -11
  227. package/lib/utils/focus-lock/isFocusable.mjs.map +1 -1
  228. package/lib/utils/focus-lock/setFocus.js +21 -27
  229. package/lib/utils/focus-lock/setFocus.js.map +1 -1
  230. package/lib/utils/focus-lock/setFocus.mjs +19 -25
  231. package/lib/utils/focus-lock/setFocus.mjs.map +1 -1
  232. package/lib/utils/getAccessibleName.js +10 -22
  233. package/lib/utils/getAccessibleName.js.map +1 -1
  234. package/lib/utils/getAccessibleName.mjs +10 -21
  235. package/lib/utils/getAccessibleName.mjs.map +1 -1
  236. package/lib/utils/getDisplayName.js +1 -1
  237. package/lib/utils/getDisplayName.mjs +3 -5
  238. package/lib/utils/getEventTarget.js +13 -32
  239. package/lib/utils/getEventTarget.js.map +1 -1
  240. package/lib/utils/getEventTarget.mjs +12 -31
  241. package/lib/utils/getEventTarget.mjs.map +1 -1
  242. package/lib/utils/getOriginChildren.js +4 -4
  243. package/lib/utils/getOriginChildren.js.map +1 -1
  244. package/lib/utils/getRandomInt.js +1 -1
  245. package/lib/utils/getValue.js +4 -6
  246. package/lib/utils/getValue.js.map +1 -1
  247. package/lib/utils/getValue.mjs +3 -5
  248. package/lib/utils/getValue.mjs.map +1 -1
  249. package/lib/utils/hasLabels.js +16 -27
  250. package/lib/utils/hasLabels.js.map +1 -1
  251. package/lib/utils/hasLabels.mjs +14 -24
  252. package/lib/utils/hasLabels.mjs.map +1 -1
  253. package/lib/utils/hasParent.js +3 -2
  254. package/lib/utils/hasParent.js.map +1 -1
  255. package/lib/utils/hasParent.mjs +2 -3
  256. package/lib/utils/hasParent.mjs.map +1 -1
  257. package/lib/utils/ifChildren.js +6 -4
  258. package/lib/utils/ifChildren.js.map +1 -1
  259. package/lib/utils/ifChildren.mjs +4 -2
  260. package/lib/utils/ifChildren.mjs.map +1 -1
  261. package/lib/utils/injectStyle.js +11 -13
  262. package/lib/utils/injectStyle.js.map +1 -1
  263. package/lib/utils/injectStyle.mjs +9 -10
  264. package/lib/utils/injectStyle.mjs.map +1 -1
  265. package/lib/utils/inputProps.js +5 -5
  266. package/lib/utils/inputProps.js.map +1 -1
  267. package/lib/utils/inputProps.mjs +4 -4
  268. package/lib/utils/inputProps.mjs.map +1 -1
  269. package/lib/utils/isInteractiveElement.js +7 -9
  270. package/lib/utils/isInteractiveElement.js.map +1 -1
  271. package/lib/utils/isInteractiveElement.mjs +7 -9
  272. package/lib/utils/isInteractiveElement.mjs.map +1 -1
  273. package/lib/utils/isNode.js +4 -5
  274. package/lib/utils/isNode.js.map +1 -1
  275. package/lib/utils/isNode.mjs +1 -2
  276. package/lib/utils/isNode.mjs.map +1 -1
  277. package/lib/utils/isPromise.js +1 -1
  278. package/lib/utils/isRetina.js +7 -2
  279. package/lib/utils/isRetina.js.map +1 -1
  280. package/lib/utils/isRetina.mjs +6 -1
  281. package/lib/utils/isRetina.mjs.map +1 -1
  282. package/lib/utils/logger.js +18 -25
  283. package/lib/utils/logger.js.map +1 -1
  284. package/lib/utils/logger.mjs +13 -21
  285. package/lib/utils/logger.mjs.map +1 -1
  286. package/lib/utils/numericChecker.js +11 -18
  287. package/lib/utils/numericChecker.js.map +1 -1
  288. package/lib/utils/numericChecker.mjs +10 -17
  289. package/lib/utils/numericChecker.mjs.map +1 -1
  290. package/lib/utils/ownerDocument.js +2 -2
  291. package/lib/utils/ownerDocument.js.map +1 -1
  292. package/lib/utils/ownerDocument.mjs +1 -1
  293. package/lib/utils/ownerDocument.mjs.map +1 -1
  294. package/lib/utils/pick.js +5 -5
  295. package/lib/utils/pick.js.map +1 -1
  296. package/lib/utils/pick.mjs +4 -4
  297. package/lib/utils/pick.mjs.map +1 -1
  298. package/lib/utils/propsForElement.js +10 -12
  299. package/lib/utils/propsForElement.js.map +1 -1
  300. package/lib/utils/propsForElement.mjs +8 -10
  301. package/lib/utils/propsForElement.mjs.map +1 -1
  302. package/lib/utils/rafTrottle.js +9 -14
  303. package/lib/utils/rafTrottle.js.map +1 -1
  304. package/lib/utils/rafTrottle.mjs +7 -12
  305. package/lib/utils/rafTrottle.mjs.map +1 -1
  306. package/lib/utils/reactToText.js +5 -8
  307. package/lib/utils/reactToText.js.map +1 -1
  308. package/lib/utils/reactToText.mjs +3 -6
  309. package/lib/utils/reactToText.mjs.map +1 -1
  310. package/lib/utils/ref.d.ts +1 -3
  311. package/lib/utils/ref.js +29 -61
  312. package/lib/utils/ref.js.map +1 -1
  313. package/lib/utils/ref.mjs +27 -57
  314. package/lib/utils/ref.mjs.map +1 -1
  315. package/lib/utils/setRef.js +2 -2
  316. package/lib/utils/setRef.js.map +1 -1
  317. package/lib/utils/syncScroll.js +24 -24
  318. package/lib/utils/syncScroll.js.map +1 -1
  319. package/lib/utils/syncScroll.mjs +21 -21
  320. package/lib/utils/syncScroll.mjs.map +1 -1
  321. package/lib/utils/uncontroll.js +8 -18
  322. package/lib/utils/uncontroll.js.map +1 -1
  323. package/lib/utils/uncontroll.mjs +8 -17
  324. package/lib/utils/uncontroll.mjs.map +1 -1
  325. package/lib/utils/uniqueID.d.ts +0 -4
  326. package/lib/utils/uniqueID.js +23 -30
  327. package/lib/utils/uniqueID.js.map +1 -1
  328. package/lib/utils/uniqueID.mjs +19 -29
  329. package/lib/utils/uniqueID.mjs.map +1 -1
  330. package/lib/utils/use/useColorResolver.js +20 -21
  331. package/lib/utils/use/useColorResolver.js.map +1 -1
  332. package/lib/utils/use/useColorResolver.mjs +16 -18
  333. package/lib/utils/use/useColorResolver.mjs.map +1 -1
  334. package/lib/utils/use/useEnhancedEffect.d.ts +1 -1
  335. package/lib/utils/use/useEnhancedEffect.js +4 -4
  336. package/lib/utils/use/useEnhancedEffect.js.map +1 -1
  337. package/lib/utils/use/useEnhancedEffect.mjs +1 -1
  338. package/lib/utils/use/useEnhancedEffect.mjs.map +1 -1
  339. package/lib/utils/use/useEventCallback.js +5 -10
  340. package/lib/utils/use/useEventCallback.js.map +1 -1
  341. package/lib/utils/use/useEventCallback.mjs +3 -8
  342. package/lib/utils/use/useEventCallback.mjs.map +1 -1
  343. package/lib/utils/use/useEventListener.js +11 -15
  344. package/lib/utils/use/useEventListener.js.map +1 -1
  345. package/lib/utils/use/useEventListener.mjs +7 -11
  346. package/lib/utils/use/useEventListener.mjs.map +1 -1
  347. package/lib/utils/use/useFocusLock.js +80 -94
  348. package/lib/utils/use/useFocusLock.js.map +1 -1
  349. package/lib/utils/use/useFocusLock.mjs +71 -88
  350. package/lib/utils/use/useFocusLock.mjs.map +1 -1
  351. package/lib/utils/use/usePreventScroll.js +26 -28
  352. package/lib/utils/use/usePreventScroll.js.map +1 -1
  353. package/lib/utils/use/usePreventScroll.mjs +21 -23
  354. package/lib/utils/use/usePreventScroll.mjs.map +1 -1
  355. package/lib/utils/use/useScrollBarWidth.js +8 -14
  356. package/lib/utils/use/useScrollBarWidth.js.map +1 -1
  357. package/lib/utils/use/useScrollBarWidth.mjs +8 -13
  358. package/lib/utils/use/useScrollBarWidth.mjs.map +1 -1
  359. package/lib/utils/useCssVariable.js +32 -37
  360. package/lib/utils/useCssVariable.js.map +1 -1
  361. package/lib/utils/useCssVariable.mjs +27 -34
  362. package/lib/utils/useCssVariable.mjs.map +1 -1
  363. package/lib/utils/zIndexStacking.d.ts +3 -1
  364. package/lib/utils/zIndexStacking.js +28 -24
  365. package/lib/utils/zIndexStacking.js.map +1 -1
  366. package/lib/utils/zIndexStacking.mjs +23 -22
  367. package/lib/utils/zIndexStacking.mjs.map +1 -1
  368. package/package.json +129 -129
  369. package/lib/enhancement/bindHandler.d.ts +0 -5
  370. package/lib/enhancement/bindHandler.js +0 -53
  371. package/lib/enhancement/bindHandler.js.map +0 -1
  372. package/lib/enhancement/bindHandler.mjs +0 -48
  373. package/lib/enhancement/bindHandler.mjs.map +0 -1
  374. package/lib/enhancement/hoistProps.d.ts +0 -10
  375. package/lib/enhancement/hoistProps.js +0 -95
  376. package/lib/enhancement/hoistProps.js.map +0 -1
  377. package/lib/enhancement/hoistProps.mjs +0 -78
  378. package/lib/enhancement/hoistProps.mjs.map +0 -1
  379. package/lib/esm/enhancement/bindHandler.mjs +0 -48
  380. package/lib/esm/enhancement/hoistProps.mjs +0 -78
  381. package/lib/esm/utils/createHoc.mjs +0 -42
  382. package/lib/esm/utils/getDisplayName.mjs +0 -6
  383. package/lib/utils/ScreenReaderOnly.d.ts +0 -8
  384. package/lib/utils/ScreenReaderOnly.js +0 -30
  385. package/lib/utils/ScreenReaderOnly.js.map +0 -1
  386. package/lib/utils/ScreenReaderOnly.mjs +0 -24
  387. package/lib/utils/ScreenReaderOnly.mjs.map +0 -1
  388. package/lib/utils/createHoc.d.ts +0 -3
  389. package/lib/utils/createHoc.js +0 -52
  390. package/lib/utils/createHoc.js.map +0 -1
  391. package/lib/utils/createHoc.mjs +0 -42
  392. package/lib/utils/createHoc.mjs.map +0 -1
  393. package/lib/utils/enhances/WithAutoFocus.d.ts +0 -14
  394. package/lib/utils/enhances/WithAutoFocus.js +0 -72
  395. package/lib/utils/enhances/WithAutoFocus.js.map +0 -1
  396. package/lib/utils/enhances/WithAutoFocus.mjs +0 -66
  397. package/lib/utils/enhances/WithAutoFocus.mjs.map +0 -1
  398. package/lib/utils/enhances/WithKeyboardFocus.d.ts +0 -46
  399. package/lib/utils/enhances/WithKeyboardFocus.js +0 -94
  400. package/lib/utils/enhances/WithKeyboardFocus.js.map +0 -1
  401. package/lib/utils/enhances/WithKeyboardFocus.mjs +0 -88
  402. package/lib/utils/enhances/WithKeyboardFocus.mjs.map +0 -1
  403. package/lib/utils/enhances/WithRef.d.ts +0 -3
  404. package/lib/utils/enhances/WithRef.js +0 -25
  405. package/lib/utils/enhances/WithRef.js.map +0 -1
  406. package/lib/utils/enhances/WithRef.mjs +0 -18
  407. package/lib/utils/enhances/WithRef.mjs.map +0 -1
  408. package/lib/utils/enhances/autoFocusEnhance.d.ts +0 -10
  409. package/lib/utils/enhances/autoFocusEnhance.js +0 -45
  410. package/lib/utils/enhances/autoFocusEnhance.js.map +0 -1
  411. package/lib/utils/enhances/autoFocusEnhance.mjs +0 -38
  412. package/lib/utils/enhances/autoFocusEnhance.mjs.map +0 -1
  413. package/lib/utils/enhances/keyboardFocusEnhance.d.ts +0 -27
  414. package/lib/utils/enhances/keyboardFocusEnhance.js +0 -63
  415. package/lib/utils/enhances/keyboardFocusEnhance.js.map +0 -1
  416. package/lib/utils/enhances/keyboardFocusEnhance.mjs +0 -57
  417. package/lib/utils/enhances/keyboardFocusEnhance.mjs.map +0 -1
  418. package/lib/utils/if.d.ts +0 -11
  419. package/lib/utils/if.js +0 -15
  420. package/lib/utils/if.js.map +0 -1
  421. package/lib/utils/if.mjs +0 -9
  422. package/lib/utils/if.mjs.map +0 -1
  423. package/lib/utils/use/useCss.d.ts +0 -4
  424. package/lib/utils/use/useCss.js +0 -19
  425. package/lib/utils/use/useCss.js.map +0 -1
  426. package/lib/utils/use/useCss.mjs +0 -12
  427. package/lib/utils/use/useCss.mjs.map +0 -1
@@ -1,89 +1,33 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard")["default"];
4
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
- exports.useI18n = exports["default"] = exports.I18nProvider = exports.I18nConsumer = exports.Context = void 0;
9
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
- var _callSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/callSuper"));
12
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
13
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
7
+ exports.useI18n = exports.I18nProvider = exports.I18nConsumer = exports.Context = void 0;
14
8
  var _intl = require("@formatjs/intl");
15
9
  var _react = _interopRequireWildcard(require("react"));
16
- var _createHoc = _interopRequireDefault(require("../createHoc"));
17
10
  var _i18nEnhance = require("./i18nEnhance");
18
- var Context = exports.Context = /*#__PURE__*/(0, _react.createContext)(undefined);
19
- var I18nProvider = exports.I18nProvider = Context.Provider,
20
- I18nConsumer = exports.I18nConsumer = Context.Consumer;
21
- var messagesCache = (0, _intl.createIntlCache)();
22
- function getText(dictionaries, locale) {
23
- return function (key) {
24
- var dictionary = dictionaries[locale];
25
- return dictionary ? dictionary[key] : dictionaries['en'][key];
26
- };
27
- }
28
-
29
- /** @deprecated */
30
-
31
- /** @deprecated */
32
- /**
33
- * @deprecated use `useI18n` instead
34
- */
35
- var WithI18n = /*#__PURE__*/function (_Component) {
36
- function WithI18n() {
37
- var _this;
38
- (0, _classCallCheck2["default"])(this, WithI18n);
39
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
40
- args[_key] = arguments[_key];
41
- }
42
- _this = (0, _callSuper2["default"])(this, WithI18n, [].concat(args));
43
- /* @ts-ignore */
44
- (0, _defineProperty2["default"])(_this, "context", void 0);
45
- (0, _defineProperty2["default"])(_this, "getText", function (dictionary, selfLocale) {
46
- var _this$props = _this.props,
47
- locale = _this$props.locale,
48
- getText = _this$props.getText;
49
- var contextLocale = _this.context;
50
- return getText(dictionary, selfLocale || locale || contextLocale);
51
- });
52
- return _this;
53
- }
54
- (0, _inherits2["default"])(WithI18n, _Component);
55
- return (0, _createClass2["default"])(WithI18n, [{
56
- key: "render",
57
- value: function render() {
58
- var _ref = this.props,
59
- children = _ref.children;
60
- return children({
61
- getText: this.getText
62
- });
63
- }
64
- }]);
65
- }(_react.Component);
66
- (0, _defineProperty2["default"])(WithI18n, "contextType", Context);
67
- (0, _defineProperty2["default"])(WithI18n, "defaultProps", {
68
- getText: getText
69
- });
70
- var useI18n = exports.useI18n = function useI18n(dictionary) {
71
- var _React$useContext;
72
- var locale = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'en';
73
- var fallbackDictionary = arguments.length > 2 ? arguments[2] : undefined;
74
- var lang = (_React$useContext = _react["default"].useContext(Context)) !== null && _React$useContext !== void 0 ? _React$useContext : locale;
75
- var resolvedDictionary = (0, _i18nEnhance.useAsyncI18nMessages)(dictionary, lang, fallbackDictionary);
76
- var intl = _react["default"].useMemo(function () {
77
- return (0, _intl.createIntl)({
78
- locale: lang,
79
- messages: resolvedDictionary
80
- }, messagesCache);
81
- }, [resolvedDictionary, lang]);
82
- return _react["default"].useCallback(function (messageId, variables) {
11
+ const Context = exports.Context = /*#__PURE__*/(0, _react.createContext)(undefined);
12
+ const {
13
+ Provider: I18nProvider,
14
+ Consumer: I18nConsumer
15
+ } = Context;
16
+ exports.I18nConsumer = I18nConsumer;
17
+ exports.I18nProvider = I18nProvider;
18
+ const messagesCache = (0, _intl.createIntlCache)();
19
+ const useI18n = (dictionary, locale = 'en', fallbackDictionary) => {
20
+ const lang = _react.default.useContext(Context) ?? locale;
21
+ const resolvedDictionary = (0, _i18nEnhance.useAsyncI18nMessages)(dictionary, lang, fallbackDictionary);
22
+ const intl = _react.default.useMemo(() => (0, _intl.createIntl)({
23
+ locale: lang,
24
+ messages: resolvedDictionary
25
+ }, messagesCache), [resolvedDictionary, lang]);
26
+ return _react.default.useCallback((messageId, variables) => {
83
27
  return intl.formatMessage({
84
- id: messageId !== null && messageId !== void 0 ? messageId : ''
28
+ id: messageId ?? ''
85
29
  }, variables);
86
30
  }, [intl]);
87
31
  };
88
- var _default = exports["default"] = (0, _createHoc["default"])(WithI18n);
32
+ exports.useI18n = useI18n;
89
33
  //# sourceMappingURL=WithI18n.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WithI18n.js","names":["_intl","require","_react","_interopRequireWildcard","_createHoc","_interopRequireDefault","_i18nEnhance","Context","exports","createContext","undefined","I18nProvider","Provider","I18nConsumer","Consumer","messagesCache","createIntlCache","getText","dictionaries","locale","key","dictionary","WithI18n","_Component","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","_callSuper2","concat","_defineProperty2","selfLocale","_this$props","props","contextLocale","context","_inherits2","_createClass2","value","render","_ref","children","Component","useI18n","_React$useContext","fallbackDictionary","lang","React","useContext","resolvedDictionary","useAsyncI18nMessages","intl","useMemo","createIntl","messages","useCallback","messageId","variables","formatMessage","id","_default","createHoc"],"sources":["../../../src/utils/enhances/WithI18n.tsx"],"sourcesContent":["import { createIntl, createIntlCache } from '@formatjs/intl';\nimport React, { Component, createContext } from 'react';\n\nimport createHoc from '../createHoc';\nimport { useAsyncI18nMessages } from './i18nEnhance';\nimport type { UnknownProperties } from '../../core-types/UnknownProperties';\n\nexport type LocaleKeys = string;\nexport type DictionaryItem = { [key: string]: string };\nexport type Dictionary = { [locale: string]: DictionaryItem | (() => Promise<DictionaryItem>) };\nexport const Context = createContext<LocaleKeys | undefined>(undefined);\nconst { Provider: I18nProvider, Consumer: I18nConsumer } = Context;\nconst messagesCache = createIntlCache();\n\nfunction getText(dictionaries: Dictionary, locale: LocaleKeys) {\n return function (key: keyof DictionaryItem) {\n const dictionary = dictionaries[locale];\n return dictionary ? (dictionary as any)[key] : (dictionaries as any)['en'][key];\n };\n}\n\n/** @deprecated */\nexport interface IWithI18nInjectedProps extends WithI18nInjectedProps, UnknownProperties {}\nexport type WithI18nInjectedProps = {\n getText: WithI18n['getText'];\n};\n\n/** @deprecated */\nexport interface IWithI18nProps extends WithI18nProps, UnknownProperties {}\nexport type WithI18nProps = WithI18nInjectedProps & {\n locale?: LocaleKeys;\n\n children?(props: IWithI18nInjectedProps): React.ReactNode;\n};\n\n/**\n * @deprecated use `useI18n` instead\n */\nclass WithI18n extends Component<IWithI18nProps> {\n /* @ts-ignore */\n context: LocaleKeys;\n\n static contextType = Context;\n static defaultProps = {\n getText,\n };\n\n getText = (dictionary: Dictionary, selfLocale?: string): string => {\n const { locale, getText } = this.props;\n const contextLocale = this.context;\n return getText(dictionary, selfLocale || locale || contextLocale);\n };\n\n render() {\n const { children } = this.props as any;\n return children({\n getText: this.getText,\n });\n }\n}\n\nconst useI18n = (\n dictionary: Dictionary,\n locale: LocaleKeys = 'en',\n fallbackDictionary?: Dictionary,\n) => {\n const lang = React.useContext(Context) ?? locale;\n const resolvedDictionary = useAsyncI18nMessages(dictionary, lang, fallbackDictionary);\n const intl = React.useMemo(\n () => createIntl({ locale: lang, messages: resolvedDictionary }, messagesCache),\n [resolvedDictionary, lang],\n );\n\n return React.useCallback(\n (messageId: string, variables?: { [key: string]: string | number | undefined }) => {\n return intl.formatMessage({ id: messageId ?? '' }, variables);\n },\n [intl],\n );\n};\n\nexport default createHoc(WithI18n);\nexport { useI18n, I18nProvider, I18nConsumer };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"WithI18n.js","names":["_intl","require","_react","_interopRequireWildcard","_i18nEnhance","Context","exports","createContext","undefined","Provider","I18nProvider","Consumer","I18nConsumer","messagesCache","createIntlCache","useI18n","dictionary","locale","fallbackDictionary","lang","React","useContext","resolvedDictionary","useAsyncI18nMessages","intl","useMemo","createIntl","messages","useCallback","messageId","variables","formatMessage","id"],"sources":["../../../src/utils/enhances/WithI18n.tsx"],"sourcesContent":["import { createIntl, createIntlCache } from '@formatjs/intl';\nimport React, { createContext } from 'react';\n\nimport { useAsyncI18nMessages } from './i18nEnhance';\n\nexport type LocaleKeys = string;\nexport type DictionaryItem = { [key: string]: string };\nexport type Dictionary = { [locale: string]: DictionaryItem | (() => Promise<DictionaryItem>) };\nexport const Context = createContext<LocaleKeys | undefined>(undefined);\nconst { Provider: I18nProvider, Consumer: I18nConsumer } = Context;\nconst messagesCache = createIntlCache();\n\nconst useI18n = (\n dictionary: Dictionary,\n locale: LocaleKeys = 'en',\n fallbackDictionary?: Dictionary,\n) => {\n const lang = React.useContext(Context) ?? locale;\n const resolvedDictionary = useAsyncI18nMessages(dictionary, lang, fallbackDictionary);\n const intl = React.useMemo(\n () => createIntl({ locale: lang, messages: resolvedDictionary }, messagesCache),\n [resolvedDictionary, lang],\n );\n\n return React.useCallback(\n (messageId: string, variables?: { [key: string]: string | number | undefined }) => {\n return intl.formatMessage({ id: messageId ?? '' }, variables);\n },\n [intl],\n );\n};\n\nexport { useI18n, I18nProvider, I18nConsumer };\n"],"mappings":";;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,uBAAA,CAAAF,OAAA;AAEA,IAAAG,YAAA,GAAAH,OAAA;AAKO,MAAMI,OAAO,GAAAC,OAAA,CAAAD,OAAA,gBAAG,IAAAE,oBAAa,EAAyBC,SAAS,CAAC;AACvE,MAAM;EAAEC,QAAQ,EAAEC,YAAY;EAAEC,QAAQ,EAAEC;AAAa,CAAC,GAAGP,OAAO;AAACC,OAAA,CAAAM,YAAA,GAAAA,YAAA;AAAAN,OAAA,CAAAI,YAAA,GAAAA,YAAA;AACnE,MAAMG,aAAa,GAAG,IAAAC,qBAAe,EAAC,CAAC;AAEvC,MAAMC,OAAO,GAAGA,CACdC,UAAsB,EACtBC,MAAkB,GAAG,IAAI,EACzBC,kBAA+B,KAC5B;EACH,MAAMC,IAAI,GAAGC,cAAK,CAACC,UAAU,CAAChB,OAAO,CAAC,IAAIY,MAAM;EAChD,MAAMK,kBAAkB,GAAG,IAAAC,iCAAoB,EAACP,UAAU,EAAEG,IAAI,EAAED,kBAAkB,CAAC;EACrF,MAAMM,IAAI,GAAGJ,cAAK,CAACK,OAAO,CACxB,MAAM,IAAAC,gBAAU,EAAC;IAAET,MAAM,EAAEE,IAAI;IAAEQ,QAAQ,EAAEL;EAAmB,CAAC,EAAET,aAAa,CAAC,EAC/E,CAACS,kBAAkB,EAAEH,IAAI,CAC3B,CAAC;EAED,OAAOC,cAAK,CAACQ,WAAW,CACtB,CAACC,SAAiB,EAAEC,SAA0D,KAAK;IACjF,OAAON,IAAI,CAACO,aAAa,CAAC;MAAEC,EAAE,EAAEH,SAAS,IAAI;IAAG,CAAC,EAAEC,SAAS,CAAC;EAC/D,CAAC,EACD,CAACN,IAAI,CACP,CAAC;AACH,CAAC;AAAClB,OAAA,CAAAS,OAAA,GAAAA,OAAA","ignoreList":[]}
@@ -1,75 +1,28 @@
1
- import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
2
- import _createClass from "@babel/runtime/helpers/esm/createClass";
3
- import _callSuper from "@babel/runtime/helpers/esm/callSuper";
4
- import _inherits from "@babel/runtime/helpers/esm/inherits";
5
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
6
1
  import { createIntlCache, createIntl } from "@formatjs/intl";
7
- import React, { createContext, Component } from "react";
8
- import createHoc from "../createHoc.mjs";
2
+ import React, { createContext } from "react";
9
3
  import { useAsyncI18nMessages } from "./i18nEnhance.mjs";
10
- var Context = /* @__PURE__ */ createContext(void 0);
11
- var I18nProvider = Context.Provider, I18nConsumer = Context.Consumer;
12
- var messagesCache = createIntlCache();
13
- function getText(dictionaries, locale) {
14
- return function(key) {
15
- var dictionary = dictionaries[locale];
16
- return dictionary ? dictionary[key] : dictionaries["en"][key];
17
- };
18
- }
19
- var WithI18n = /* @__PURE__ */ (function(_Component) {
20
- function WithI18n2() {
21
- var _this;
22
- _classCallCheck(this, WithI18n2);
23
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
24
- args[_key] = arguments[_key];
25
- }
26
- _this = _callSuper(this, WithI18n2, [].concat(args));
27
- _defineProperty(_this, "context", void 0);
28
- _defineProperty(_this, "getText", function(dictionary, selfLocale) {
29
- var _this$props = _this.props, locale = _this$props.locale, getText2 = _this$props.getText;
30
- var contextLocale = _this.context;
31
- return getText2(dictionary, selfLocale || locale || contextLocale);
32
- });
33
- return _this;
34
- }
35
- _inherits(WithI18n2, _Component);
36
- return _createClass(WithI18n2, [{
37
- key: "render",
38
- value: function render() {
39
- var _ref = this.props, children = _ref.children;
40
- return children({
41
- getText: this.getText
42
- });
43
- }
44
- }]);
45
- })(Component);
46
- _defineProperty(WithI18n, "contextType", Context);
47
- _defineProperty(WithI18n, "defaultProps", {
48
- getText
49
- });
50
- var useI18n = function useI18n2(dictionary) {
51
- var _React$useContext;
52
- var locale = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "en";
53
- var fallbackDictionary = arguments.length > 2 ? arguments[2] : void 0;
54
- var lang = (_React$useContext = React.useContext(Context)) !== null && _React$useContext !== void 0 ? _React$useContext : locale;
55
- var resolvedDictionary = useAsyncI18nMessages(dictionary, lang, fallbackDictionary);
56
- var intl = React.useMemo(function() {
57
- return createIntl({
58
- locale: lang,
59
- messages: resolvedDictionary
60
- }, messagesCache);
61
- }, [resolvedDictionary, lang]);
62
- return React.useCallback(function(messageId, variables) {
4
+ const Context = /* @__PURE__ */ createContext(void 0);
5
+ const {
6
+ Provider: I18nProvider,
7
+ Consumer: I18nConsumer
8
+ } = Context;
9
+ const messagesCache = createIntlCache();
10
+ const useI18n = (dictionary, locale = "en", fallbackDictionary) => {
11
+ const lang = React.useContext(Context) ?? locale;
12
+ const resolvedDictionary = useAsyncI18nMessages(dictionary, lang, fallbackDictionary);
13
+ const intl = React.useMemo(() => createIntl({
14
+ locale: lang,
15
+ messages: resolvedDictionary
16
+ }, messagesCache), [resolvedDictionary, lang]);
17
+ return React.useCallback((messageId, variables) => {
63
18
  return intl.formatMessage({
64
- id: messageId !== null && messageId !== void 0 ? messageId : ""
19
+ id: messageId ?? ""
65
20
  }, variables);
66
21
  }, [intl]);
67
22
  };
68
- const WithI18n$1 = createHoc(WithI18n);
69
23
  export {
70
24
  Context,
71
25
  I18nConsumer,
72
26
  I18nProvider,
73
- WithI18n$1 as default,
74
27
  useI18n
75
28
  };
@@ -1 +1 @@
1
- {"version":3,"file":"WithI18n.mjs","names":["createIntl","createIntlCache","React","Component","createContext","createHoc","useAsyncI18nMessages","Context","undefined","I18nProvider","Provider","I18nConsumer","Consumer","messagesCache","getText","dictionaries","locale","key","dictionary","WithI18n","_Component","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","concat","_defineProperty","selfLocale","_this$props","props","contextLocale","context","_inherits","_createClass","value","render","_ref","children","useI18n","_React$useContext","fallbackDictionary","lang","useContext","resolvedDictionary","intl","useMemo","messages","useCallback","messageId","variables","formatMessage","id"],"sources":["../../../src/utils/enhances/WithI18n.tsx"],"sourcesContent":["import { createIntl, createIntlCache } from '@formatjs/intl';\nimport React, { Component, createContext } from 'react';\n\nimport createHoc from '../createHoc';\nimport { useAsyncI18nMessages } from './i18nEnhance';\nimport type { UnknownProperties } from '../../core-types/UnknownProperties';\n\nexport type LocaleKeys = string;\nexport type DictionaryItem = { [key: string]: string };\nexport type Dictionary = { [locale: string]: DictionaryItem | (() => Promise<DictionaryItem>) };\nexport const Context = createContext<LocaleKeys | undefined>(undefined);\nconst { Provider: I18nProvider, Consumer: I18nConsumer } = Context;\nconst messagesCache = createIntlCache();\n\nfunction getText(dictionaries: Dictionary, locale: LocaleKeys) {\n return function (key: keyof DictionaryItem) {\n const dictionary = dictionaries[locale];\n return dictionary ? (dictionary as any)[key] : (dictionaries as any)['en'][key];\n };\n}\n\n/** @deprecated */\nexport interface IWithI18nInjectedProps extends WithI18nInjectedProps, UnknownProperties {}\nexport type WithI18nInjectedProps = {\n getText: WithI18n['getText'];\n};\n\n/** @deprecated */\nexport interface IWithI18nProps extends WithI18nProps, UnknownProperties {}\nexport type WithI18nProps = WithI18nInjectedProps & {\n locale?: LocaleKeys;\n\n children?(props: IWithI18nInjectedProps): React.ReactNode;\n};\n\n/**\n * @deprecated use `useI18n` instead\n */\nclass WithI18n extends Component<IWithI18nProps> {\n /* @ts-ignore */\n context: LocaleKeys;\n\n static contextType = Context;\n static defaultProps = {\n getText,\n };\n\n getText = (dictionary: Dictionary, selfLocale?: string): string => {\n const { locale, getText } = this.props;\n const contextLocale = this.context;\n return getText(dictionary, selfLocale || locale || contextLocale);\n };\n\n render() {\n const { children } = this.props as any;\n return children({\n getText: this.getText,\n });\n }\n}\n\nconst useI18n = (\n dictionary: Dictionary,\n locale: LocaleKeys = 'en',\n fallbackDictionary?: Dictionary,\n) => {\n const lang = React.useContext(Context) ?? locale;\n const resolvedDictionary = useAsyncI18nMessages(dictionary, lang, fallbackDictionary);\n const intl = React.useMemo(\n () => createIntl({ locale: lang, messages: resolvedDictionary }, messagesCache),\n [resolvedDictionary, lang],\n );\n\n return React.useCallback(\n (messageId: string, variables?: { [key: string]: string | number | undefined }) => {\n return intl.formatMessage({ id: messageId ?? '' }, variables);\n },\n [intl],\n );\n};\n\nexport default createHoc(WithI18n);\nexport { useI18n, I18nProvider, I18nConsumer };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"WithI18n.mjs","names":["createIntl","createIntlCache","React","createContext","useAsyncI18nMessages","Context","undefined","Provider","I18nProvider","Consumer","I18nConsumer","messagesCache","useI18n","dictionary","locale","fallbackDictionary","lang","useContext","resolvedDictionary","intl","useMemo","messages","useCallback","messageId","variables","formatMessage","id"],"sources":["../../../src/utils/enhances/WithI18n.tsx"],"sourcesContent":["import { createIntl, createIntlCache } from '@formatjs/intl';\nimport React, { createContext } from 'react';\n\nimport { useAsyncI18nMessages } from './i18nEnhance';\n\nexport type LocaleKeys = string;\nexport type DictionaryItem = { [key: string]: string };\nexport type Dictionary = { [locale: string]: DictionaryItem | (() => Promise<DictionaryItem>) };\nexport const Context = createContext<LocaleKeys | undefined>(undefined);\nconst { Provider: I18nProvider, Consumer: I18nConsumer } = Context;\nconst messagesCache = createIntlCache();\n\nconst useI18n = (\n dictionary: Dictionary,\n locale: LocaleKeys = 'en',\n fallbackDictionary?: Dictionary,\n) => {\n const lang = React.useContext(Context) ?? locale;\n const resolvedDictionary = useAsyncI18nMessages(dictionary, lang, fallbackDictionary);\n const intl = React.useMemo(\n () => createIntl({ locale: lang, messages: resolvedDictionary }, messagesCache),\n [resolvedDictionary, lang],\n );\n\n return React.useCallback(\n (messageId: string, variables?: { [key: string]: string | number | undefined }) => {\n return intl.formatMessage({ id: messageId ?? '' }, variables);\n },\n [intl],\n );\n};\n\nexport { useI18n, I18nProvider, I18nConsumer };\n"],"mappings":"AAAA,SAASA,UAAU,EAAEC,eAAe,QAAQ,gBAAgB;AAC5D,OAAOC,KAAK,IAAIC,aAAa,QAAQ,OAAO;AAE5C,SAASC,oBAAoB,QAAQ,mBAAe;AAKpD,OAAO,MAAMC,OAAO,gBAAGF,aAAa,CAAyBG,SAAS,CAAC;AACvE,MAAM;EAAEC,QAAQ,EAAEC,YAAY;EAAEC,QAAQ,EAAEC;AAAa,CAAC,GAAGL,OAAO;AAClE,MAAMM,aAAa,GAAGV,eAAe,CAAC,CAAC;AAEvC,MAAMW,OAAO,GAAGA,CACdC,UAAsB,EACtBC,MAAkB,GAAG,IAAI,EACzBC,kBAA+B,KAC5B;EACH,MAAMC,IAAI,GAAGd,KAAK,CAACe,UAAU,CAACZ,OAAO,CAAC,IAAIS,MAAM;EAChD,MAAMI,kBAAkB,GAAGd,oBAAoB,CAACS,UAAU,EAAEG,IAAI,EAAED,kBAAkB,CAAC;EACrF,MAAMI,IAAI,GAAGjB,KAAK,CAACkB,OAAO,CACxB,MAAMpB,UAAU,CAAC;IAAEc,MAAM,EAAEE,IAAI;IAAEK,QAAQ,EAAEH;EAAmB,CAAC,EAAEP,aAAa,CAAC,EAC/E,CAACO,kBAAkB,EAAEF,IAAI,CAC3B,CAAC;EAED,OAAOd,KAAK,CAACoB,WAAW,CACtB,CAACC,SAAiB,EAAEC,SAA0D,KAAK;IACjF,OAAOL,IAAI,CAACM,aAAa,CAAC;MAAEC,EAAE,EAAEH,SAAS,IAAI;IAAG,CAAC,EAAEC,SAAS,CAAC;EAC/D,CAAC,EACD,CAACL,IAAI,CACP,CAAC;AACH,CAAC;AAED,SAASP,OAAO,EAAEJ,YAAY,EAAEE,YAAY","ignoreList":[]}
@@ -1,73 +1,68 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
- exports["default"] = void 0;
8
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
6
+ exports.default = void 0;
10
7
  var _assignProps = require("../assignProps");
11
- var defaultOnNeighborChange = function defaultOnNeighborChange(neighborElement) {
12
- neighborElement === null || neighborElement === void 0 || neighborElement.focus();
8
+ const defaultOnNeighborChange = neighborElement => {
9
+ neighborElement?.focus();
13
10
  };
14
- var defaultFindNeighbor = function defaultFindNeighbor(listSelectors, element, direction) {
15
- var elementSibling = ['right', 'top'].includes(direction) ? 1 : -1;
16
- var indexElement = listSelectors.findIndex(function (node) {
17
- return node === element;
18
- });
19
- var lengthList = listSelectors.length;
20
- var lastIndex = lengthList - 1;
21
- var indexNext = indexElement + elementSibling;
11
+ const defaultFindNeighbor = (listSelectors, element, direction) => {
12
+ const elementSibling = ['right', 'top'].includes(direction) ? 1 : -1;
13
+ const indexElement = listSelectors.findIndex(node => node === element);
14
+ const lengthList = listSelectors.length;
15
+ const lastIndex = lengthList - 1;
16
+ let indexNext = indexElement + elementSibling;
22
17
  if (indexNext < 0) indexNext = lastIndex;
23
18
  if (indexNext > lastIndex) indexNext = 0;
24
19
  return listSelectors[indexNext];
25
20
  };
26
- var a11yEnhance = function a11yEnhance(options) {
27
- var findNeighbor = options.findNeighbor || defaultFindNeighbor;
28
- var onNeighborChange = options.onNeighborChange || defaultOnNeighborChange;
29
- var childSelector = options.childSelector;
30
- return function (props) {
31
- if (!childSelector) throw "parameter childSelector not passed in options for a11yEnhance for ".concat(props['data-ui-name']);
32
- var _getNeighbor = function getNeighbor(listSelectors, element, direction) {
33
- var neighbor = findNeighbor(listSelectors, element, direction);
21
+ const a11yEnhance = options => {
22
+ const findNeighbor = options.findNeighbor || defaultFindNeighbor;
23
+ const onNeighborChange = options.onNeighborChange || defaultOnNeighborChange;
24
+ const {
25
+ childSelector
26
+ } = options;
27
+ return props => {
28
+ if (!childSelector) throw `parameter childSelector not passed in options for a11yEnhance for ${props['data-ui-name']}`;
29
+ const getNeighbor = (listSelectors, element, direction) => {
30
+ const neighbor = findNeighbor(listSelectors, element, direction);
34
31
  if (!neighbor) return element;
35
- if ('disabled' in neighbor && neighbor.disabled) return _getNeighbor(listSelectors, neighbor, direction);
32
+ if ('disabled' in neighbor && neighbor.disabled) return getNeighbor(listSelectors, neighbor, direction);
36
33
  return neighbor;
37
34
  };
38
- var handleKeyDown = function handleKeyDown(event) {
39
- var parent = event.currentTarget;
40
- var selectedElement = event.target;
41
- var _ref = typeof childSelector === 'function' ? childSelector(props) : childSelector,
42
- _ref2 = (0, _slicedToArray2["default"])(_ref, 2),
43
- childAttrName = _ref2[0],
44
- childAttrValue = _ref2[1];
35
+ const handleKeyDown = event => {
36
+ const parent = event.currentTarget;
37
+ const selectedElement = event.target;
38
+ const [childAttrName, childAttrValue] = typeof childSelector === 'function' ? childSelector(props) : childSelector;
45
39
  if (!selectedElement.getAttribute(childAttrName)) return;
46
- var listSelectors = Array.from(parent.querySelectorAll("[".concat(childAttrName, "=\"").concat(childAttrValue, "\"]")));
47
- if (!listSelectors.length) throw "no children found querySelectorAll([".concat(childAttrName, "=\"").concat(childAttrValue, "\"] a11yEnhance for ").concat(props['data-ui-name']);
40
+ const listSelectors = Array.from(parent.querySelectorAll(`[${childAttrName}="${childAttrValue}"]`));
41
+ if (!listSelectors.length) throw `no children found querySelectorAll([${childAttrName}="${childAttrValue}"] a11yEnhance for ${props['data-ui-name']}`;
48
42
  switch (event.key) {
49
43
  case 'ArrowLeft':
50
- onNeighborChange(_getNeighbor(listSelectors, selectedElement, 'left'), props);
44
+ onNeighborChange(getNeighbor(listSelectors, selectedElement, 'left'), props);
51
45
  event.preventDefault();
52
46
  break;
53
47
  case 'ArrowTop':
54
- onNeighborChange(_getNeighbor(listSelectors, selectedElement, 'top'), props);
48
+ onNeighborChange(getNeighbor(listSelectors, selectedElement, 'top'), props);
55
49
  event.preventDefault();
56
50
  break;
57
51
  case 'ArrowRight':
58
- onNeighborChange(_getNeighbor(listSelectors, selectedElement, 'right'), props);
52
+ onNeighborChange(getNeighbor(listSelectors, selectedElement, 'right'), props);
59
53
  event.preventDefault();
60
54
  break;
61
55
  case 'ArrowBottom':
62
- onNeighborChange(_getNeighbor(listSelectors, selectedElement, 'bottom'), props);
56
+ onNeighborChange(getNeighbor(listSelectors, selectedElement, 'bottom'), props);
63
57
  event.preventDefault();
64
58
  break;
65
59
  }
66
60
  };
67
- return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, props), {}, {
61
+ return {
62
+ ...props,
68
63
  onKeyDown: (0, _assignProps.callAllEventHandlers)(props.onKeyDown, handleKeyDown)
69
- });
64
+ };
70
65
  };
71
66
  };
72
- var _default = exports["default"] = a11yEnhance;
67
+ var _default = exports.default = a11yEnhance;
73
68
  //# sourceMappingURL=a11yEnhance.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"a11yEnhance.js","names":["_assignProps","require","defaultOnNeighborChange","neighborElement","focus","defaultFindNeighbor","listSelectors","element","direction","elementSibling","includes","indexElement","findIndex","node","lengthList","length","lastIndex","indexNext","a11yEnhance","options","findNeighbor","onNeighborChange","childSelector","props","concat","getNeighbor","neighbor","disabled","handleKeyDown","event","parent","currentTarget","selectedElement","target","_ref","_ref2","_slicedToArray2","childAttrName","childAttrValue","getAttribute","Array","from","querySelectorAll","key","preventDefault","_objectSpread2","onKeyDown","callAllEventHandlers","_default","exports"],"sources":["../../../src/utils/enhances/a11yEnhance.tsx"],"sourcesContent":["import type React from 'react';\n\nimport { callAllEventHandlers } from '../assignProps';\n\ntype OnNeighborChange<P> = (neighborElement: HTMLElement, props: P) => void;\ntype FindNeighbor = (\n listSelectors: HTMLElement[],\n element: HTMLElement,\n direction: string,\n) => HTMLElement | undefined;\ntype ChildSelector<P> = [string, string] | ((props: P) => [string, string]);\n\ntype A11yEnhanceOptions<P = any> = {\n findNeighbor?: FindNeighbor;\n onNeighborChange?: OnNeighborChange<P>;\n childSelector: ChildSelector<P>;\n};\n\nconst defaultOnNeighborChange: OnNeighborChange<any> = (neighborElement) => {\n neighborElement?.focus();\n};\n\nconst defaultFindNeighbor: FindNeighbor = (listSelectors, element, direction) => {\n const elementSibling = ['right', 'top'].includes(direction) ? 1 : -1;\n const indexElement = listSelectors.findIndex((node) => node === element);\n const lengthList = listSelectors.length;\n\n const lastIndex = lengthList - 1;\n let indexNext = indexElement + elementSibling;\n if (indexNext < 0) indexNext = lastIndex;\n if (indexNext > lastIndex) indexNext = 0;\n return listSelectors[indexNext];\n};\n\nconst a11yEnhance = (options: A11yEnhanceOptions) => {\n const findNeighbor = options.findNeighbor || defaultFindNeighbor;\n const onNeighborChange = options.onNeighborChange || defaultOnNeighborChange;\n const { childSelector } = options;\n\n return (props: any) => {\n if (!childSelector)\n throw `parameter childSelector not passed in options for a11yEnhance for ${props['data-ui-name']}`;\n const getNeighbor = (\n listSelectors: any,\n element: HTMLElement,\n direction: string,\n ): HTMLElement => {\n const neighbor = findNeighbor(listSelectors, element, direction);\n if (!neighbor) return element;\n if ('disabled' in neighbor && neighbor.disabled)\n return getNeighbor(listSelectors, neighbor, direction);\n return neighbor;\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLElement>) => {\n const parent = event.currentTarget;\n const selectedElement = event.target as HTMLElement;\n const [childAttrName, childAttrValue] =\n typeof childSelector === 'function' ? childSelector(props) : childSelector;\n if (!selectedElement.getAttribute(childAttrName)) return;\n\n const listSelectors = Array.from(\n parent.querySelectorAll(`[${childAttrName}=\"${childAttrValue}\"]`),\n );\n if (!listSelectors.length)\n throw `no children found querySelectorAll([${childAttrName}=\"${childAttrValue}\"] a11yEnhance for ${props['data-ui-name']}`;\n\n switch (event.key) {\n case 'ArrowLeft':\n onNeighborChange(getNeighbor(listSelectors, selectedElement, 'left'), props);\n event.preventDefault();\n break;\n case 'ArrowTop':\n onNeighborChange(getNeighbor(listSelectors, selectedElement, 'top'), props);\n event.preventDefault();\n break;\n case 'ArrowRight':\n onNeighborChange(getNeighbor(listSelectors, selectedElement, 'right'), props);\n event.preventDefault();\n break;\n case 'ArrowBottom':\n onNeighborChange(getNeighbor(listSelectors, selectedElement, 'bottom'), props);\n event.preventDefault();\n break;\n }\n };\n\n return {\n ...props,\n onKeyDown: callAllEventHandlers(props.onKeyDown, handleKeyDown),\n };\n };\n};\n\nexport default a11yEnhance;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"a11yEnhance.js","names":["_assignProps","require","defaultOnNeighborChange","neighborElement","focus","defaultFindNeighbor","listSelectors","element","direction","elementSibling","includes","indexElement","findIndex","node","lengthList","length","lastIndex","indexNext","a11yEnhance","options","findNeighbor","onNeighborChange","childSelector","props","getNeighbor","neighbor","disabled","handleKeyDown","event","parent","currentTarget","selectedElement","target","childAttrName","childAttrValue","getAttribute","Array","from","querySelectorAll","key","preventDefault","onKeyDown","callAllEventHandlers","_default","exports","default"],"sources":["../../../src/utils/enhances/a11yEnhance.tsx"],"sourcesContent":["import type React from 'react';\n\nimport { callAllEventHandlers } from '../assignProps';\n\ntype OnNeighborChange<P> = (neighborElement: HTMLElement, props: P) => void;\ntype FindNeighbor = (\n listSelectors: HTMLElement[],\n element: HTMLElement,\n direction: string,\n) => HTMLElement | undefined;\ntype ChildSelector<P> = [string, string] | ((props: P) => [string, string]);\n\ntype A11yEnhanceOptions<P = any> = {\n findNeighbor?: FindNeighbor;\n onNeighborChange?: OnNeighborChange<P>;\n childSelector: ChildSelector<P>;\n};\n\nconst defaultOnNeighborChange: OnNeighborChange<any> = (neighborElement) => {\n neighborElement?.focus();\n};\n\nconst defaultFindNeighbor: FindNeighbor = (listSelectors, element, direction) => {\n const elementSibling = ['right', 'top'].includes(direction) ? 1 : -1;\n const indexElement = listSelectors.findIndex((node) => node === element);\n const lengthList = listSelectors.length;\n\n const lastIndex = lengthList - 1;\n let indexNext = indexElement + elementSibling;\n if (indexNext < 0) indexNext = lastIndex;\n if (indexNext > lastIndex) indexNext = 0;\n return listSelectors[indexNext];\n};\n\nconst a11yEnhance = (options: A11yEnhanceOptions) => {\n const findNeighbor = options.findNeighbor || defaultFindNeighbor;\n const onNeighborChange = options.onNeighborChange || defaultOnNeighborChange;\n const { childSelector } = options;\n\n return (props: any) => {\n if (!childSelector)\n throw `parameter childSelector not passed in options for a11yEnhance for ${props['data-ui-name']}`;\n const getNeighbor = (\n listSelectors: any,\n element: HTMLElement,\n direction: string,\n ): HTMLElement => {\n const neighbor = findNeighbor(listSelectors, element, direction);\n if (!neighbor) return element;\n if ('disabled' in neighbor && neighbor.disabled)\n return getNeighbor(listSelectors, neighbor, direction);\n return neighbor;\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLElement>) => {\n const parent = event.currentTarget;\n const selectedElement = event.target as HTMLElement;\n const [childAttrName, childAttrValue] =\n typeof childSelector === 'function' ? childSelector(props) : childSelector;\n if (!selectedElement.getAttribute(childAttrName)) return;\n\n const listSelectors = Array.from(\n parent.querySelectorAll(`[${childAttrName}=\"${childAttrValue}\"]`),\n );\n if (!listSelectors.length)\n throw `no children found querySelectorAll([${childAttrName}=\"${childAttrValue}\"] a11yEnhance for ${props['data-ui-name']}`;\n\n switch (event.key) {\n case 'ArrowLeft':\n onNeighborChange(getNeighbor(listSelectors, selectedElement, 'left'), props);\n event.preventDefault();\n break;\n case 'ArrowTop':\n onNeighborChange(getNeighbor(listSelectors, selectedElement, 'top'), props);\n event.preventDefault();\n break;\n case 'ArrowRight':\n onNeighborChange(getNeighbor(listSelectors, selectedElement, 'right'), props);\n event.preventDefault();\n break;\n case 'ArrowBottom':\n onNeighborChange(getNeighbor(listSelectors, selectedElement, 'bottom'), props);\n event.preventDefault();\n break;\n }\n };\n\n return {\n ...props,\n onKeyDown: callAllEventHandlers(props.onKeyDown, handleKeyDown),\n };\n };\n};\n\nexport default a11yEnhance;\n"],"mappings":"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","ignoreList":[]}
@@ -1,65 +1,61 @@
1
- import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
1
  import { callAllEventHandlers } from "../assignProps.mjs";
4
- var defaultOnNeighborChange = function defaultOnNeighborChange(neighborElement) {
5
- neighborElement === null || neighborElement === void 0 || neighborElement.focus();
2
+ const defaultOnNeighborChange = neighborElement => {
3
+ neighborElement?.focus();
6
4
  };
7
- var defaultFindNeighbor = function defaultFindNeighbor(listSelectors, element, direction) {
8
- var elementSibling = ['right', 'top'].includes(direction) ? 1 : -1;
9
- var indexElement = listSelectors.findIndex(function (node) {
10
- return node === element;
11
- });
12
- var lengthList = listSelectors.length;
13
- var lastIndex = lengthList - 1;
14
- var indexNext = indexElement + elementSibling;
5
+ const defaultFindNeighbor = (listSelectors, element, direction) => {
6
+ const elementSibling = ['right', 'top'].includes(direction) ? 1 : -1;
7
+ const indexElement = listSelectors.findIndex(node => node === element);
8
+ const lengthList = listSelectors.length;
9
+ const lastIndex = lengthList - 1;
10
+ let indexNext = indexElement + elementSibling;
15
11
  if (indexNext < 0) indexNext = lastIndex;
16
12
  if (indexNext > lastIndex) indexNext = 0;
17
13
  return listSelectors[indexNext];
18
14
  };
19
- var a11yEnhance = function a11yEnhance(options) {
20
- var findNeighbor = options.findNeighbor || defaultFindNeighbor;
21
- var onNeighborChange = options.onNeighborChange || defaultOnNeighborChange;
22
- var childSelector = options.childSelector;
23
- return function (props) {
24
- if (!childSelector) throw "parameter childSelector not passed in options for a11yEnhance for ".concat(props['data-ui-name']);
25
- var _getNeighbor = function getNeighbor(listSelectors, element, direction) {
26
- var neighbor = findNeighbor(listSelectors, element, direction);
15
+ const a11yEnhance = options => {
16
+ const findNeighbor = options.findNeighbor || defaultFindNeighbor;
17
+ const onNeighborChange = options.onNeighborChange || defaultOnNeighborChange;
18
+ const {
19
+ childSelector
20
+ } = options;
21
+ return props => {
22
+ if (!childSelector) throw `parameter childSelector not passed in options for a11yEnhance for ${props['data-ui-name']}`;
23
+ const getNeighbor = (listSelectors, element, direction) => {
24
+ const neighbor = findNeighbor(listSelectors, element, direction);
27
25
  if (!neighbor) return element;
28
- if ('disabled' in neighbor && neighbor.disabled) return _getNeighbor(listSelectors, neighbor, direction);
26
+ if ('disabled' in neighbor && neighbor.disabled) return getNeighbor(listSelectors, neighbor, direction);
29
27
  return neighbor;
30
28
  };
31
- var handleKeyDown = function handleKeyDown(event) {
32
- var parent = event.currentTarget;
33
- var selectedElement = event.target;
34
- var _ref = typeof childSelector === 'function' ? childSelector(props) : childSelector,
35
- _ref2 = _slicedToArray(_ref, 2),
36
- childAttrName = _ref2[0],
37
- childAttrValue = _ref2[1];
29
+ const handleKeyDown = event => {
30
+ const parent = event.currentTarget;
31
+ const selectedElement = event.target;
32
+ const [childAttrName, childAttrValue] = typeof childSelector === 'function' ? childSelector(props) : childSelector;
38
33
  if (!selectedElement.getAttribute(childAttrName)) return;
39
- var listSelectors = Array.from(parent.querySelectorAll("[".concat(childAttrName, "=\"").concat(childAttrValue, "\"]")));
40
- if (!listSelectors.length) throw "no children found querySelectorAll([".concat(childAttrName, "=\"").concat(childAttrValue, "\"] a11yEnhance for ").concat(props['data-ui-name']);
34
+ const listSelectors = Array.from(parent.querySelectorAll(`[${childAttrName}="${childAttrValue}"]`));
35
+ if (!listSelectors.length) throw `no children found querySelectorAll([${childAttrName}="${childAttrValue}"] a11yEnhance for ${props['data-ui-name']}`;
41
36
  switch (event.key) {
42
37
  case 'ArrowLeft':
43
- onNeighborChange(_getNeighbor(listSelectors, selectedElement, 'left'), props);
38
+ onNeighborChange(getNeighbor(listSelectors, selectedElement, 'left'), props);
44
39
  event.preventDefault();
45
40
  break;
46
41
  case 'ArrowTop':
47
- onNeighborChange(_getNeighbor(listSelectors, selectedElement, 'top'), props);
42
+ onNeighborChange(getNeighbor(listSelectors, selectedElement, 'top'), props);
48
43
  event.preventDefault();
49
44
  break;
50
45
  case 'ArrowRight':
51
- onNeighborChange(_getNeighbor(listSelectors, selectedElement, 'right'), props);
46
+ onNeighborChange(getNeighbor(listSelectors, selectedElement, 'right'), props);
52
47
  event.preventDefault();
53
48
  break;
54
49
  case 'ArrowBottom':
55
- onNeighborChange(_getNeighbor(listSelectors, selectedElement, 'bottom'), props);
50
+ onNeighborChange(getNeighbor(listSelectors, selectedElement, 'bottom'), props);
56
51
  event.preventDefault();
57
52
  break;
58
53
  }
59
54
  };
60
- return _objectSpread(_objectSpread({}, props), {}, {
55
+ return {
56
+ ...props,
61
57
  onKeyDown: callAllEventHandlers(props.onKeyDown, handleKeyDown)
62
- });
58
+ };
63
59
  };
64
60
  };
65
61
  export default a11yEnhance;
@@ -1 +1 @@
1
- {"version":3,"file":"a11yEnhance.mjs","names":["callAllEventHandlers","defaultOnNeighborChange","neighborElement","focus","defaultFindNeighbor","listSelectors","element","direction","elementSibling","includes","indexElement","findIndex","node","lengthList","length","lastIndex","indexNext","a11yEnhance","options","findNeighbor","onNeighborChange","childSelector","props","concat","getNeighbor","neighbor","disabled","handleKeyDown","event","parent","currentTarget","selectedElement","target","_ref","_ref2","_slicedToArray","childAttrName","childAttrValue","getAttribute","Array","from","querySelectorAll","key","preventDefault","_objectSpread","onKeyDown"],"sources":["../../../src/utils/enhances/a11yEnhance.tsx"],"sourcesContent":["import type React from 'react';\n\nimport { callAllEventHandlers } from '../assignProps';\n\ntype OnNeighborChange<P> = (neighborElement: HTMLElement, props: P) => void;\ntype FindNeighbor = (\n listSelectors: HTMLElement[],\n element: HTMLElement,\n direction: string,\n) => HTMLElement | undefined;\ntype ChildSelector<P> = [string, string] | ((props: P) => [string, string]);\n\ntype A11yEnhanceOptions<P = any> = {\n findNeighbor?: FindNeighbor;\n onNeighborChange?: OnNeighborChange<P>;\n childSelector: ChildSelector<P>;\n};\n\nconst defaultOnNeighborChange: OnNeighborChange<any> = (neighborElement) => {\n neighborElement?.focus();\n};\n\nconst defaultFindNeighbor: FindNeighbor = (listSelectors, element, direction) => {\n const elementSibling = ['right', 'top'].includes(direction) ? 1 : -1;\n const indexElement = listSelectors.findIndex((node) => node === element);\n const lengthList = listSelectors.length;\n\n const lastIndex = lengthList - 1;\n let indexNext = indexElement + elementSibling;\n if (indexNext < 0) indexNext = lastIndex;\n if (indexNext > lastIndex) indexNext = 0;\n return listSelectors[indexNext];\n};\n\nconst a11yEnhance = (options: A11yEnhanceOptions) => {\n const findNeighbor = options.findNeighbor || defaultFindNeighbor;\n const onNeighborChange = options.onNeighborChange || defaultOnNeighborChange;\n const { childSelector } = options;\n\n return (props: any) => {\n if (!childSelector)\n throw `parameter childSelector not passed in options for a11yEnhance for ${props['data-ui-name']}`;\n const getNeighbor = (\n listSelectors: any,\n element: HTMLElement,\n direction: string,\n ): HTMLElement => {\n const neighbor = findNeighbor(listSelectors, element, direction);\n if (!neighbor) return element;\n if ('disabled' in neighbor && neighbor.disabled)\n return getNeighbor(listSelectors, neighbor, direction);\n return neighbor;\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLElement>) => {\n const parent = event.currentTarget;\n const selectedElement = event.target as HTMLElement;\n const [childAttrName, childAttrValue] =\n typeof childSelector === 'function' ? childSelector(props) : childSelector;\n if (!selectedElement.getAttribute(childAttrName)) return;\n\n const listSelectors = Array.from(\n parent.querySelectorAll(`[${childAttrName}=\"${childAttrValue}\"]`),\n );\n if (!listSelectors.length)\n throw `no children found querySelectorAll([${childAttrName}=\"${childAttrValue}\"] a11yEnhance for ${props['data-ui-name']}`;\n\n switch (event.key) {\n case 'ArrowLeft':\n onNeighborChange(getNeighbor(listSelectors, selectedElement, 'left'), props);\n event.preventDefault();\n break;\n case 'ArrowTop':\n onNeighborChange(getNeighbor(listSelectors, selectedElement, 'top'), props);\n event.preventDefault();\n break;\n case 'ArrowRight':\n onNeighborChange(getNeighbor(listSelectors, selectedElement, 'right'), props);\n event.preventDefault();\n break;\n case 'ArrowBottom':\n onNeighborChange(getNeighbor(listSelectors, selectedElement, 'bottom'), props);\n event.preventDefault();\n break;\n }\n };\n\n return {\n ...props,\n onKeyDown: callAllEventHandlers(props.onKeyDown, handleKeyDown),\n };\n };\n};\n\nexport default a11yEnhance;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"a11yEnhance.mjs","names":["callAllEventHandlers","defaultOnNeighborChange","neighborElement","focus","defaultFindNeighbor","listSelectors","element","direction","elementSibling","includes","indexElement","findIndex","node","lengthList","length","lastIndex","indexNext","a11yEnhance","options","findNeighbor","onNeighborChange","childSelector","props","getNeighbor","neighbor","disabled","handleKeyDown","event","parent","currentTarget","selectedElement","target","childAttrName","childAttrValue","getAttribute","Array","from","querySelectorAll","key","preventDefault","onKeyDown"],"sources":["../../../src/utils/enhances/a11yEnhance.tsx"],"sourcesContent":["import type React from 'react';\n\nimport { callAllEventHandlers } from '../assignProps';\n\ntype OnNeighborChange<P> = (neighborElement: HTMLElement, props: P) => void;\ntype FindNeighbor = (\n listSelectors: HTMLElement[],\n element: HTMLElement,\n direction: string,\n) => HTMLElement | undefined;\ntype ChildSelector<P> = [string, string] | ((props: P) => [string, string]);\n\ntype A11yEnhanceOptions<P = any> = {\n findNeighbor?: FindNeighbor;\n onNeighborChange?: OnNeighborChange<P>;\n childSelector: ChildSelector<P>;\n};\n\nconst defaultOnNeighborChange: OnNeighborChange<any> = (neighborElement) => {\n neighborElement?.focus();\n};\n\nconst defaultFindNeighbor: FindNeighbor = (listSelectors, element, direction) => {\n const elementSibling = ['right', 'top'].includes(direction) ? 1 : -1;\n const indexElement = listSelectors.findIndex((node) => node === element);\n const lengthList = listSelectors.length;\n\n const lastIndex = lengthList - 1;\n let indexNext = indexElement + elementSibling;\n if (indexNext < 0) indexNext = lastIndex;\n if (indexNext > lastIndex) indexNext = 0;\n return listSelectors[indexNext];\n};\n\nconst a11yEnhance = (options: A11yEnhanceOptions) => {\n const findNeighbor = options.findNeighbor || defaultFindNeighbor;\n const onNeighborChange = options.onNeighborChange || defaultOnNeighborChange;\n const { childSelector } = options;\n\n return (props: any) => {\n if (!childSelector)\n throw `parameter childSelector not passed in options for a11yEnhance for ${props['data-ui-name']}`;\n const getNeighbor = (\n listSelectors: any,\n element: HTMLElement,\n direction: string,\n ): HTMLElement => {\n const neighbor = findNeighbor(listSelectors, element, direction);\n if (!neighbor) return element;\n if ('disabled' in neighbor && neighbor.disabled)\n return getNeighbor(listSelectors, neighbor, direction);\n return neighbor;\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLElement>) => {\n const parent = event.currentTarget;\n const selectedElement = event.target as HTMLElement;\n const [childAttrName, childAttrValue] =\n typeof childSelector === 'function' ? childSelector(props) : childSelector;\n if (!selectedElement.getAttribute(childAttrName)) return;\n\n const listSelectors = Array.from(\n parent.querySelectorAll(`[${childAttrName}=\"${childAttrValue}\"]`),\n );\n if (!listSelectors.length)\n throw `no children found querySelectorAll([${childAttrName}=\"${childAttrValue}\"] a11yEnhance for ${props['data-ui-name']}`;\n\n switch (event.key) {\n case 'ArrowLeft':\n onNeighborChange(getNeighbor(listSelectors, selectedElement, 'left'), props);\n event.preventDefault();\n break;\n case 'ArrowTop':\n onNeighborChange(getNeighbor(listSelectors, selectedElement, 'top'), props);\n event.preventDefault();\n break;\n case 'ArrowRight':\n onNeighborChange(getNeighbor(listSelectors, selectedElement, 'right'), props);\n event.preventDefault();\n break;\n case 'ArrowBottom':\n onNeighborChange(getNeighbor(listSelectors, selectedElement, 'bottom'), props);\n event.preventDefault();\n break;\n }\n };\n\n return {\n ...props,\n onKeyDown: callAllEventHandlers(props.onKeyDown, handleKeyDown),\n };\n };\n};\n\nexport default a11yEnhance;\n"],"mappings":"AAEA,SAASA,oBAAoB,QAAQ,oBAAgB;AAgBrD,MAAMC,uBAA8C,GAAIC,eAAe,IAAK;EAC1EA,eAAe,EAAEC,KAAK,CAAC,CAAC;AAC1B,CAAC;AAED,MAAMC,mBAAiC,GAAGA,CAACC,aAAa,EAAEC,OAAO,EAAEC,SAAS,KAAK;EAC/E,MAAMC,cAAc,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAACC,QAAQ,CAACF,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;EACpE,MAAMG,YAAY,GAAGL,aAAa,CAACM,SAAS,CAAEC,IAAI,IAAKA,IAAI,KAAKN,OAAO,CAAC;EACxE,MAAMO,UAAU,GAAGR,aAAa,CAACS,MAAM;EAEvC,MAAMC,SAAS,GAAGF,UAAU,GAAG,CAAC;EAChC,IAAIG,SAAS,GAAGN,YAAY,GAAGF,cAAc;EAC7C,IAAIQ,SAAS,GAAG,CAAC,EAAEA,SAAS,GAAGD,SAAS;EACxC,IAAIC,SAAS,GAAGD,SAAS,EAAEC,SAAS,GAAG,CAAC;EACxC,OAAOX,aAAa,CAACW,SAAS,CAAC;AACjC,CAAC;AAED,MAAMC,WAAW,GAAIC,OAA2B,IAAK;EACnD,MAAMC,YAAY,GAAGD,OAAO,CAACC,YAAY,IAAIf,mBAAmB;EAChE,MAAMgB,gBAAgB,GAAGF,OAAO,CAACE,gBAAgB,IAAInB,uBAAuB;EAC5E,MAAM;IAAEoB;EAAc,CAAC,GAAGH,OAAO;EAEjC,OAAQI,KAAU,IAAK;IACrB,IAAI,CAACD,aAAa,EAChB,MAAM,qEAAqEC,KAAK,CAAC,cAAc,CAAC,EAAE;IACpG,MAAMC,WAAW,GAAGA,CAClBlB,aAAkB,EAClBC,OAAoB,EACpBC,SAAiB,KACD;MAChB,MAAMiB,QAAQ,GAAGL,YAAY,CAACd,aAAa,EAAEC,OAAO,EAAEC,SAAS,CAAC;MAChE,IAAI,CAACiB,QAAQ,EAAE,OAAOlB,OAAO;MAC7B,IAAI,UAAU,IAAIkB,QAAQ,IAAIA,QAAQ,CAACC,QAAQ,EAC7C,OAAOF,WAAW,CAAClB,aAAa,EAAEmB,QAAQ,EAAEjB,SAAS,CAAC;MACxD,OAAOiB,QAAQ;IACjB,CAAC;IAED,MAAME,aAAa,GAAIC,KAAuC,IAAK;MACjE,MAAMC,MAAM,GAAGD,KAAK,CAACE,aAAa;MAClC,MAAMC,eAAe,GAAGH,KAAK,CAACI,MAAqB;MACnD,MAAM,CAACC,aAAa,EAAEC,cAAc,CAAC,GACnC,OAAOZ,aAAa,KAAK,UAAU,GAAGA,aAAa,CAACC,KAAK,CAAC,GAAGD,aAAa;MAC5E,IAAI,CAACS,eAAe,CAACI,YAAY,CAACF,aAAa,CAAC,EAAE;MAElD,MAAM3B,aAAa,GAAG8B,KAAK,CAACC,IAAI,CAC9BR,MAAM,CAACS,gBAAgB,CAAC,IAAIL,aAAa,KAAKC,cAAc,IAAI,CAClE,CAAC;MACD,IAAI,CAAC5B,aAAa,CAACS,MAAM,EACvB,MAAM,uCAAuCkB,aAAa,KAAKC,cAAc,sBAAsBX,KAAK,CAAC,cAAc,CAAC,EAAE;MAE5H,QAAQK,KAAK,CAACW,GAAG;QACf,KAAK,WAAW;UACdlB,gBAAgB,CAACG,WAAW,CAAClB,aAAa,EAAEyB,eAAe,EAAE,MAAM,CAAC,EAAER,KAAK,CAAC;UAC5EK,KAAK,CAACY,cAAc,CAAC,CAAC;UACtB;QACF,KAAK,UAAU;UACbnB,gBAAgB,CAACG,WAAW,CAAClB,aAAa,EAAEyB,eAAe,EAAE,KAAK,CAAC,EAAER,KAAK,CAAC;UAC3EK,KAAK,CAACY,cAAc,CAAC,CAAC;UACtB;QACF,KAAK,YAAY;UACfnB,gBAAgB,CAACG,WAAW,CAAClB,aAAa,EAAEyB,eAAe,EAAE,OAAO,CAAC,EAAER,KAAK,CAAC;UAC7EK,KAAK,CAACY,cAAc,CAAC,CAAC;UACtB;QACF,KAAK,aAAa;UAChBnB,gBAAgB,CAACG,WAAW,CAAClB,aAAa,EAAEyB,eAAe,EAAE,QAAQ,CAAC,EAAER,KAAK,CAAC;UAC9EK,KAAK,CAACY,cAAc,CAAC,CAAC;UACtB;MACJ;IACF,CAAC;IAED,OAAO;MACL,GAAGjB,KAAK;MACRkB,SAAS,EAAExC,oBAAoB,CAACsB,KAAK,CAACkB,SAAS,EAAEd,aAAa;IAChE,CAAC;EACH,CAAC;AACH,CAAC;AAED,eAAeT,WAAW","ignoreList":[]}
@@ -1,7 +1,3 @@
1
- import type { UnknownProperties } from '../../core-types/UnknownProperties';
2
- /** @deprecated */
3
- export interface IWithAnimatedSizeEnhanceProps extends WithAnimatedSizeEnhanceProps, UnknownProperties {
4
- }
5
1
  export type WithAnimatedSizeEnhanceProps = {
6
2
  animationsDisabled?: boolean;
7
3
  };