@semcore/core 16.5.1-prerelease.5 → 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,19 +1,15 @@
1
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
2
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
- import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
4
1
  import React from "react";
5
2
  import { STATIC_COMPONENT } from "./staticChildren.mjs";
6
3
  import "../styled/index.mjs";
7
4
  import { sstyled } from "../styled/sstyled.mjs";
8
- var _excluded = ["_styles", "styles"], _excluded2 = ["styles"];
9
- var STYLES_CONTEXT = Symbol("STYLES_CONTEXT");
10
- var STYLES_SELF = Symbol("STYLES_SELF");
5
+ const STYLES_CONTEXT = Symbol("STYLES_CONTEXT");
6
+ const STYLES_SELF = Symbol("STYLES_SELF");
11
7
  function Enhancement(childComponents, Context) {
12
8
  return {
13
- condition: function condition(Component) {
9
+ condition: function(Component) {
14
10
  return Boolean(Component.style || Component[STATIC_COMPONENT]);
15
11
  },
16
- init: function init(props, WrapperComponent) {
12
+ init: function(props, WrapperComponent) {
17
13
  if (props.styles) {
18
14
  this[STYLES_SELF] = props.styles;
19
15
  }
@@ -21,25 +17,35 @@ function Enhancement(childComponents, Context) {
21
17
  this[STYLES_SELF] = sstyled.merge(WrapperComponent.style, props._styles);
22
18
  }
23
19
  },
24
- context: function context(_context) {
20
+ context: function(context) {
25
21
  if (!this[STYLES_SELF] || !Object.keys(childComponents).length) {
26
- return _context;
22
+ return context;
27
23
  }
28
- return _objectSpread(_objectSpread({}, _context), {}, _defineProperty({}, STYLES_CONTEXT, this[STYLES_SELF]));
24
+ return {
25
+ ...context,
26
+ [STYLES_CONTEXT]: this[STYLES_SELF]
27
+ };
29
28
  },
30
- asProps: function asProps(_ref) {
31
- var _styles = _ref._styles, styles = _ref.styles, props = _objectWithoutProperties(_ref, _excluded);
32
- return _objectSpread(_objectSpread({}, props), {}, {
29
+ asProps: function({
30
+ _styles,
31
+ styles,
32
+ ...props
33
+ }) {
34
+ return {
35
+ ...props,
33
36
  styles: this[STYLES_SELF]
34
- });
37
+ };
35
38
  },
36
- wrapperProps: function wrapperProps(_ref2) {
37
- var styles = _ref2.styles, props = _objectWithoutProperties(_ref2, _excluded2);
38
- var context = React.useContext(Context);
39
- return _objectSpread(_objectSpread({}, props), {}, {
39
+ wrapperProps: function({
40
+ styles,
41
+ ...props
42
+ }) {
43
+ const context = React.useContext(Context);
44
+ return {
45
+ ...props,
40
46
  _styles: styles,
41
47
  styles: context[STYLES_CONTEXT]
42
- });
48
+ };
43
49
  }
44
50
  };
45
51
  }
@@ -1 +1 @@
1
- {"version":3,"file":"style.mjs","names":["React","STATIC_COMPONENT","sstyled","STYLES_CONTEXT","Symbol","STYLES_SELF","Enhancement","childComponents","Context","condition","Component","Boolean","style","init","props","WrapperComponent","styles","merge","_styles","context","Object","keys","length","_objectSpread","_defineProperty","asProps","_ref","_objectWithoutProperties","_excluded","wrapperProps","_ref2","_excluded2","useContext"],"sources":["../../src/enhancement/style.tsx"],"sourcesContent":["import React from 'react';\n\nimport { STATIC_COMPONENT } from './staticChildren';\nimport { sstyled } from '../styled/index';\n\nexport const STYLES_CONTEXT = Symbol('STYLES_CONTEXT');\nconst STYLES_SELF = Symbol('STYLES_SELF');\n\nfunction Enhancement(childComponents: any, Context: any) {\n return {\n condition: function (Component: any) {\n return Boolean(Component.style || Component[STATIC_COMPONENT]);\n },\n init: function (this: any, props: any, WrapperComponent: any) {\n if (props.styles) {\n this[STYLES_SELF] = props.styles;\n }\n if (WrapperComponent.style) {\n this[STYLES_SELF] = sstyled.merge(WrapperComponent.style, props._styles);\n }\n },\n context: function (this: any, context: any): any {\n // Optimization: if has no children there is no need to create new context (by lsroman)\n if (!this[STYLES_SELF] || !Object.keys(childComponents).length) {\n return context;\n }\n return {\n ...context,\n [STYLES_CONTEXT]: this[STYLES_SELF],\n };\n },\n\n asProps: function (this: any, { _styles, styles, ...props }: any) {\n return {\n ...props,\n styles: this[STYLES_SELF],\n };\n },\n wrapperProps: function (this: any, { styles, ...props }: any) {\n const context: any = React.useContext(Context);\n return {\n ...props,\n _styles: styles,\n styles: context[STYLES_CONTEXT],\n };\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,gBAAgB,QAAQ,sBAAkB;AACnD,SAASC,OAAO,QAAQ,qBAAiB;AAEzC,OAAO,IAAMC,cAAc,GAAGC,MAAM,CAAC,gBAAgB,CAAC;AACtD,IAAMC,WAAW,GAAGD,MAAM,CAAC,aAAa,CAAC;AAEzC,SAASE,WAAWA,CAACC,eAAoB,EAAEC,OAAY,EAAE;EACvD,OAAO;IACLC,SAAS,EAAE,SAAXA,SAASA,CAAYC,SAAc,EAAE;MACnC,OAAOC,OAAO,CAACD,SAAS,CAACE,KAAK,IAAIF,SAAS,CAACT,gBAAgB,CAAC,CAAC;IAChE,CAAC;IACDY,IAAI,EAAE,SAANA,IAAIA,CAAuBC,KAAU,EAAEC,gBAAqB,EAAE;MAC5D,IAAID,KAAK,CAACE,MAAM,EAAE;QAChB,IAAI,CAACX,WAAW,CAAC,GAAGS,KAAK,CAACE,MAAM;MAClC;MACA,IAAID,gBAAgB,CAACH,KAAK,EAAE;QAC1B,IAAI,CAACP,WAAW,CAAC,GAAGH,OAAO,CAACe,KAAK,CAACF,gBAAgB,CAACH,KAAK,EAAEE,KAAK,CAACI,OAAO,CAAC;MAC1E;IACF,CAAC;IACDC,OAAO,EAAE,SAATA,OAAOA,CAAuBA,QAAY,EAAO;MAC/C;MACA,IAAI,CAAC,IAAI,CAACd,WAAW,CAAC,IAAI,CAACe,MAAM,CAACC,IAAI,CAACd,eAAe,CAAC,CAACe,MAAM,EAAE;QAC9D,OAAOH,QAAO;MAChB;MACA,OAAAI,aAAA,CAAAA,aAAA,KACKJ,QAAO,OAAAK,eAAA,KACTrB,cAAc,EAAG,IAAI,CAACE,WAAW,CAAC;IAEvC,CAAC;IAEDoB,OAAO,EAAE,SAATA,OAAOA,CAAAC,IAAA,EAA2D;MAAA,IAAlCR,OAAO,GAAAQ,IAAA,CAAPR,OAAO;QAAEF,MAAM,GAAAU,IAAA,CAANV,MAAM;QAAKF,KAAK,GAAAa,wBAAA,CAAAD,IAAA,EAAAE,SAAA;MACvD,OAAAL,aAAA,CAAAA,aAAA,KACKT,KAAK;QACRE,MAAM,EAAE,IAAI,CAACX,WAAW;MAAC;IAE7B,CAAC;IACDwB,YAAY,EAAE,SAAdA,YAAYA,CAAAC,KAAA,EAAkD;MAAA,IAAzBd,MAAM,GAAAc,KAAA,CAANd,MAAM;QAAKF,KAAK,GAAAa,wBAAA,CAAAG,KAAA,EAAAC,UAAA;MACnD,IAAMZ,OAAY,GAAGnB,KAAK,CAACgC,UAAU,CAACxB,OAAO,CAAC;MAC9C,OAAAe,aAAA,CAAAA,aAAA,KACKT,KAAK;QACRI,OAAO,EAAEF,MAAM;QACfA,MAAM,EAAEG,OAAO,CAAChB,cAAc;MAAC;IAEnC;EACF,CAAC;AACH;AAEA,eAAeG,WAAW","ignoreList":[]}
1
+ {"version":3,"file":"style.mjs","names":["React","STATIC_COMPONENT","sstyled","STYLES_CONTEXT","Symbol","STYLES_SELF","Enhancement","childComponents","Context","condition","Component","Boolean","style","init","props","WrapperComponent","styles","merge","_styles","context","Object","keys","length","asProps","wrapperProps","useContext"],"sources":["../../src/enhancement/style.tsx"],"sourcesContent":["import React from 'react';\n\nimport { STATIC_COMPONENT } from './staticChildren';\nimport { sstyled } from '../styled/index';\n\nexport const STYLES_CONTEXT = Symbol('STYLES_CONTEXT');\nconst STYLES_SELF = Symbol('STYLES_SELF');\n\nfunction Enhancement(childComponents: any, Context: any) {\n return {\n condition: function (Component: any) {\n return Boolean(Component.style || Component[STATIC_COMPONENT]);\n },\n init: function (this: any, props: any, WrapperComponent: any) {\n if (props.styles) {\n this[STYLES_SELF] = props.styles;\n }\n if (WrapperComponent.style) {\n this[STYLES_SELF] = sstyled.merge(WrapperComponent.style, props._styles);\n }\n },\n context: function (this: any, context: any): any {\n // Optimization: if has no children there is no need to create new context (by lsroman)\n if (!this[STYLES_SELF] || !Object.keys(childComponents).length) {\n return context;\n }\n return {\n ...context,\n [STYLES_CONTEXT]: this[STYLES_SELF],\n };\n },\n\n asProps: function (this: any, { _styles, styles, ...props }: any) {\n return {\n ...props,\n styles: this[STYLES_SELF],\n };\n },\n wrapperProps: function (this: any, { styles, ...props }: any) {\n const context: any = React.useContext(Context);\n return {\n ...props,\n _styles: styles,\n styles: context[STYLES_CONTEXT],\n };\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,gBAAgB,QAAQ,sBAAkB;AACnD,SAASC,OAAO,QAAQ,qBAAiB;AAEzC,OAAO,MAAMC,cAAc,GAAGC,MAAM,CAAC,gBAAgB,CAAC;AACtD,MAAMC,WAAW,GAAGD,MAAM,CAAC,aAAa,CAAC;AAEzC,SAASE,WAAWA,CAACC,eAAoB,EAAEC,OAAY,EAAE;EACvD,OAAO;IACLC,SAAS,EAAE,SAAAA,CAAUC,SAAc,EAAE;MACnC,OAAOC,OAAO,CAACD,SAAS,CAACE,KAAK,IAAIF,SAAS,CAACT,gBAAgB,CAAC,CAAC;IAChE,CAAC;IACDY,IAAI,EAAE,SAAAA,CAAqBC,KAAU,EAAEC,gBAAqB,EAAE;MAC5D,IAAID,KAAK,CAACE,MAAM,EAAE;QAChB,IAAI,CAACX,WAAW,CAAC,GAAGS,KAAK,CAACE,MAAM;MAClC;MACA,IAAID,gBAAgB,CAACH,KAAK,EAAE;QAC1B,IAAI,CAACP,WAAW,CAAC,GAAGH,OAAO,CAACe,KAAK,CAACF,gBAAgB,CAACH,KAAK,EAAEE,KAAK,CAACI,OAAO,CAAC;MAC1E;IACF,CAAC;IACDC,OAAO,EAAE,SAAAA,CAAqBA,OAAY,EAAO;MAC/C;MACA,IAAI,CAAC,IAAI,CAACd,WAAW,CAAC,IAAI,CAACe,MAAM,CAACC,IAAI,CAACd,eAAe,CAAC,CAACe,MAAM,EAAE;QAC9D,OAAOH,OAAO;MAChB;MACA,OAAO;QACL,GAAGA,OAAO;QACV,CAAChB,cAAc,GAAG,IAAI,CAACE,WAAW;MACpC,CAAC;IACH,CAAC;IAEDkB,OAAO,EAAE,SAAAA,CAAqB;MAAEL,OAAO;MAAEF,MAAM;MAAE,GAAGF;IAAW,CAAC,EAAE;MAChE,OAAO;QACL,GAAGA,KAAK;QACRE,MAAM,EAAE,IAAI,CAACX,WAAW;MAC1B,CAAC;IACH,CAAC;IACDmB,YAAY,EAAE,SAAAA,CAAqB;MAAER,MAAM;MAAE,GAAGF;IAAW,CAAC,EAAE;MAC5D,MAAMK,OAAY,GAAGnB,KAAK,CAACyB,UAAU,CAACjB,OAAO,CAAC;MAC9C,OAAO;QACL,GAAGM,KAAK;QACRI,OAAO,EAAEF,MAAM;QACfA,MAAM,EAAEG,OAAO,CAAChB,cAAc;MAChC,CAAC;IACH;EACF,CAAC;AACH;AAEA,eAAeG,WAAW","ignoreList":[]}
@@ -1,32 +1,25 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports["default"] = void 0;
8
- var _objectSpread3 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
- var _toArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toArray"));
11
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
12
- var _toPropertyKey2 = _interopRequireDefault(require("@babel/runtime/helpers/toPropertyKey"));
13
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
14
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
7
+ exports.default = void 0;
15
8
  var _assignProps = require("../utils/assignProps");
16
9
  var _capitalizeFirstLetter = _interopRequireDefault(require("../utils/capitalizeFirstLetter"));
17
10
  function assign(target, source) {
18
- return Object.defineProperties(target, Object.keys(source).reduce(function (descriptors, key) {
11
+ return Object.defineProperties(target, Object.keys(source).reduce((descriptors, key) => {
19
12
  descriptors[key] = Object.getOwnPropertyDescriptor(source, key);
20
13
  return descriptors;
21
14
  }, {}));
22
15
  }
23
16
  function defaultProp(prop) {
24
- return "default".concat((0, _capitalizeFirstLetter["default"])(prop));
17
+ return `default${(0, _capitalizeFirstLetter.default)(prop)}`;
25
18
  }
26
19
  function handlerProp(prop) {
27
20
  if (prop === 'value') prop = '';
28
21
  if (prop === 'checked') prop = '';
29
- return "on".concat((0, _capitalizeFirstLetter["default"])(prop), "Change");
22
+ return `on${(0, _capitalizeFirstLetter.default)(prop)}Change`;
30
23
  }
31
24
  function isControlled(propValue) {
32
25
  return propValue !== undefined;
@@ -35,25 +28,26 @@ function uncontrolledProp(self, propName, propValue, propDefaultValue, propHandl
35
28
  function getValue() {
36
29
  return isControlled(propValue) ? propValue : propName in self.state ? self.state[propName] : propDefaultValue;
37
30
  }
38
- return [getValue(), function (value) {
39
- var oldValue = getValue();
31
+ return [getValue(), (value, ...args) => {
32
+ const oldValue = getValue();
40
33
  if (oldValue === value) return false;
41
- if (!isControlled(propValue)) self.setState((0, _defineProperty2["default"])({}, propName, value));
42
- for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
43
- args[_key - 1] = arguments[_key];
44
- }
45
- return _assignProps.callAllEventHandlers.apply(void 0, [propHandler].concat((0, _toConsumableArray2["default"])(chainHandler))).apply(void 0, [value].concat(args));
34
+ if (!isControlled(propValue)) self.setState({
35
+ [propName]: value
36
+ });
37
+ return (0, _assignProps.callAllEventHandlers)(propHandler, ...chainHandler)(value, ...args);
46
38
  }];
47
39
  }
48
40
  function uncontrolledUniversal(props, config, uncontrolledProp) {
49
- var handlerProps = {};
50
- var uncontrolledProps = Object.keys(config).reduce(function (result, propName) {
51
- var handlerName = handlerProp(propName);
52
- var defaultPropName = defaultProp(propName);
53
- var propDefaultValue = result[defaultPropName],
54
- propValue = result[propName],
55
- propHandler = result[handlerName],
56
- other = (0, _objectWithoutProperties2["default"])(result, [defaultPropName, propName, handlerName].map(_toPropertyKey2["default"]));
41
+ const handlerProps = {};
42
+ const uncontrolledProps = Object.keys(config).reduce((result, propName) => {
43
+ const handlerName = handlerProp(propName);
44
+ const defaultPropName = defaultProp(propName);
45
+ const {
46
+ [defaultPropName]: propDefaultValue,
47
+ [propName]: propValue,
48
+ [handlerName]: propHandler,
49
+ ...other
50
+ } = result;
57
51
  if (propDefaultValue === undefined) {
58
52
  // eslint-disable-next-line no-console
59
53
  console.warn(defaultPropName, 'must be installed in "defaultProps"');
@@ -63,33 +57,24 @@ function uncontrolledUniversal(props, config, uncontrolledProp) {
63
57
  // propDefaultValue = propDefaultValue(result);
64
58
  // }
65
59
 
66
- var setter = config[propName];
67
- var chainHandler = [];
68
- if (Array.isArray(setter)) {
69
- var _setter = setter;
70
- var _setter2 = (0, _toArray2["default"])(_setter);
71
- setter = _setter2[0];
72
- chainHandler = _setter2.slice(1);
73
- }
74
- setter = setter || function (v) {
75
- return v;
76
- };
77
- var _uncontrolledProp = uncontrolledProp(propName, propValue, propDefaultValue, propHandler, chainHandler),
78
- _uncontrolledProp2 = (0, _slicedToArray2["default"])(_uncontrolledProp, 2),
79
- value = _uncontrolledProp2[0],
80
- handler = _uncontrolledProp2[1];
60
+ let setter = config[propName];
61
+ let chainHandler = [];
62
+ if (Array.isArray(setter)) [setter, ...chainHandler] = setter;
63
+ setter = setter || (v => v);
64
+ const [value, handler] = uncontrolledProp(propName, propValue, propDefaultValue, propHandler, chainHandler);
81
65
  // TODO: need to warn about recursion (by lsroman)
82
66
  handlerProps[propName] = handler;
83
- return (0, _objectSpread3["default"])((0, _objectSpread3["default"])({}, other), {}, (0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, propName, value), handlerName, function (eventOrValue) {
84
- for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
85
- args[_key2 - 1] = arguments[_key2];
86
- }
87
- var result = [setter.apply(void 0, [eventOrValue].concat(args))].concat(args);
88
- if (eventOrValue !== null && eventOrValue !== void 0 && eventOrValue.target) {
89
- result.push(eventOrValue);
67
+ return {
68
+ ...other,
69
+ [propName]: value,
70
+ [handlerName]: (eventOrValue, ...args) => {
71
+ const result = [setter(eventOrValue, ...args), ...args];
72
+ if (eventOrValue?.target) {
73
+ result.push(eventOrValue);
74
+ }
75
+ return handler(...result);
90
76
  }
91
- return handler.apply(void 0, (0, _toConsumableArray2["default"])(result));
92
- }));
77
+ };
93
78
  }, props);
94
79
  return [uncontrolledProps, handlerProps];
95
80
  }
@@ -98,33 +83,30 @@ function uncontrolled(self, props, config) {
98
83
  }
99
84
  function Enhancement() {
100
85
  return {
101
- condition: function condition(Component) {
86
+ condition: function (Component) {
102
87
  return Boolean(Component.prototype.uncontrolledProps);
103
88
  },
104
- init: function init() {
89
+ init: function () {
105
90
  this.state = this.state || {};
106
91
  assign(this, {
107
92
  get handlers() {
108
- var _uncontrolled = uncontrolled(this, this.props, this.uncontrolledProps()),
109
- _uncontrolled2 = (0, _slicedToArray2["default"])(_uncontrolled, 2),
110
- uncontrolledHandlers = _uncontrolled2[1];
93
+ const [, uncontrolledHandlers] = uncontrolled(this, this.props, this.uncontrolledProps());
111
94
  return uncontrolledHandlers;
112
95
  }
113
96
  });
114
97
  },
115
- context: function context(_context) {
116
- return (0, _objectSpread3["default"])((0, _objectSpread3["default"])({}, _context), {}, {
98
+ context: function (context) {
99
+ return {
100
+ ...context,
117
101
  handlers: this.handlers
118
- });
102
+ };
119
103
  },
120
- asProps: function asProps(props) {
104
+ asProps: function (props) {
121
105
  // TODO: need to omit unneccessary props (by lsroman)
122
- var _uncontrolled3 = uncontrolled(this, props, this.uncontrolledProps()),
123
- _uncontrolled4 = (0, _slicedToArray2["default"])(_uncontrolled3, 1),
124
- uncontrolledProps = _uncontrolled4[0];
106
+ const [uncontrolledProps] = uncontrolled(this, props, this.uncontrolledProps());
125
107
  return uncontrolledProps;
126
108
  }
127
109
  };
128
110
  }
129
- var _default = exports["default"] = Enhancement;
111
+ var _default = exports.default = Enhancement;
130
112
  //# sourceMappingURL=uncontrolledProps.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"uncontrolledProps.js","names":["_assignProps","require","_capitalizeFirstLetter","_interopRequireDefault","assign","target","source","Object","defineProperties","keys","reduce","descriptors","key","getOwnPropertyDescriptor","defaultProp","prop","concat","capitalizeFirstLetter","handlerProp","isControlled","propValue","undefined","uncontrolledProp","self","propName","propDefaultValue","propHandler","chainHandler","getValue","state","value","oldValue","setState","_defineProperty2","_len","arguments","length","args","Array","_key","callAllEventHandlers","apply","_toConsumableArray2","uncontrolledUniversal","props","config","handlerProps","uncontrolledProps","result","handlerName","defaultPropName","other","_objectWithoutProperties2","map","_toPropertyKey2","console","warn","setter","isArray","_setter","_setter2","_toArray2","slice","v","_uncontrolledProp","_uncontrolledProp2","_slicedToArray2","handler","_objectSpread3","eventOrValue","_len2","_key2","push","uncontrolled","bind","Enhancement","condition","Component","Boolean","prototype","init","handlers","_uncontrolled","_uncontrolled2","uncontrolledHandlers","context","asProps","_uncontrolled3","_uncontrolled4","_default","exports"],"sources":["../../src/enhancement/uncontrolledProps.tsx"],"sourcesContent":["import { callAllEventHandlers } from '../utils/assignProps';\nimport capitalizeFirstLetter from '../utils/capitalizeFirstLetter';\n\nfunction assign(target: any, source: any) {\n return Object.defineProperties(\n target,\n Object.keys(source).reduce((descriptors: any, key) => {\n descriptors[key] = Object.getOwnPropertyDescriptor(source, key);\n return descriptors;\n }, {}),\n );\n}\n\nfunction defaultProp(prop: any) {\n return `default${capitalizeFirstLetter(prop)}`;\n}\n\nfunction handlerProp(prop: any) {\n if (prop === 'value') prop = '';\n if (prop === 'checked') prop = '';\n return `on${capitalizeFirstLetter(prop)}Change`;\n}\n\nfunction isControlled(propValue: any) {\n return propValue !== undefined;\n}\n\nfunction uncontrolledProp(\n self: any,\n propName: any,\n propValue: any,\n propDefaultValue: any,\n propHandler: any,\n chainHandler: any,\n) {\n function getValue() {\n return isControlled(propValue)\n ? propValue\n : propName in self.state\n ? self.state[propName]\n : propDefaultValue;\n }\n\n return [\n getValue(),\n (value: any, ...args: any[]) => {\n const oldValue = getValue();\n if (oldValue === value) return false;\n if (!isControlled(propValue)) self.setState({ [propName]: value });\n return callAllEventHandlers(propHandler, ...chainHandler)(value, ...args);\n },\n ];\n}\n\nfunction uncontrolledUniversal(props: any, config: any, uncontrolledProp: any) {\n const handlerProps = {};\n const uncontrolledProps = Object.keys(config).reduce((result, propName) => {\n const handlerName = handlerProp(propName);\n const defaultPropName = defaultProp(propName);\n const {\n [defaultPropName]: propDefaultValue,\n [propName]: propValue,\n [handlerName]: propHandler,\n ...other\n } = result;\n\n if (propDefaultValue === undefined) {\n // eslint-disable-next-line no-console\n console.warn(defaultPropName, 'must be installed in \"defaultProps\"');\n }\n\n // if (typeof propDefaultValue === 'function' && propDefaultValue.defaultInit) {\n // propDefaultValue = propDefaultValue(result);\n // }\n\n let setter = config[propName];\n let chainHandler = [];\n\n if (Array.isArray(setter)) [setter, ...chainHandler] = setter;\n setter = setter || ((v: any) => v);\n\n const [value, handler] = uncontrolledProp(\n propName,\n propValue,\n propDefaultValue,\n propHandler,\n chainHandler,\n );\n // TODO: need to warn about recursion (by lsroman)\n (handlerProps as any)[propName] = handler;\n\n return {\n ...other,\n [propName]: value,\n [handlerName]: (eventOrValue: any, ...args: any[]) => {\n const result = [setter(eventOrValue, ...args), ...args];\n if (eventOrValue?.target) {\n result.push(eventOrValue);\n }\n return handler(...result);\n },\n };\n }, props);\n return [uncontrolledProps, handlerProps];\n}\n\nfunction uncontrolled(self: any, props: any, config: any) {\n return uncontrolledUniversal(props, config, uncontrolledProp.bind(undefined, self));\n}\n\nfunction Enhancement() {\n return {\n condition: function (Component: any) {\n return Boolean(Component.prototype.uncontrolledProps);\n },\n init: function (this: any) {\n this.state = this.state || {};\n assign(this, {\n get handlers() {\n const [, uncontrolledHandlers] = uncontrolled(this, this.props, this.uncontrolledProps());\n return uncontrolledHandlers;\n },\n });\n },\n context: function (this: any, context: any) {\n return {\n ...context,\n handlers: this.handlers,\n };\n },\n asProps: function (this: any, props: any) {\n // TODO: need to omit unneccessary props (by lsroman)\n const [uncontrolledProps] = uncontrolled(this, props, this.uncontrolledProps());\n return uncontrolledProps;\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"uncontrolledProps.js","names":["_assignProps","require","_capitalizeFirstLetter","_interopRequireDefault","assign","target","source","Object","defineProperties","keys","reduce","descriptors","key","getOwnPropertyDescriptor","defaultProp","prop","capitalizeFirstLetter","handlerProp","isControlled","propValue","undefined","uncontrolledProp","self","propName","propDefaultValue","propHandler","chainHandler","getValue","state","value","args","oldValue","setState","callAllEventHandlers","uncontrolledUniversal","props","config","handlerProps","uncontrolledProps","result","handlerName","defaultPropName","other","console","warn","setter","Array","isArray","v","handler","eventOrValue","push","uncontrolled","bind","Enhancement","condition","Component","Boolean","prototype","init","handlers","uncontrolledHandlers","context","asProps","_default","exports","default"],"sources":["../../src/enhancement/uncontrolledProps.tsx"],"sourcesContent":["import { callAllEventHandlers } from '../utils/assignProps';\nimport capitalizeFirstLetter from '../utils/capitalizeFirstLetter';\n\nfunction assign(target: any, source: any) {\n return Object.defineProperties(\n target,\n Object.keys(source).reduce((descriptors: any, key) => {\n descriptors[key] = Object.getOwnPropertyDescriptor(source, key);\n return descriptors;\n }, {}),\n );\n}\n\nfunction defaultProp(prop: any) {\n return `default${capitalizeFirstLetter(prop)}`;\n}\n\nfunction handlerProp(prop: any) {\n if (prop === 'value') prop = '';\n if (prop === 'checked') prop = '';\n return `on${capitalizeFirstLetter(prop)}Change`;\n}\n\nfunction isControlled(propValue: any) {\n return propValue !== undefined;\n}\n\nfunction uncontrolledProp(\n self: any,\n propName: any,\n propValue: any,\n propDefaultValue: any,\n propHandler: any,\n chainHandler: any,\n) {\n function getValue() {\n return isControlled(propValue)\n ? propValue\n : propName in self.state\n ? self.state[propName]\n : propDefaultValue;\n }\n\n return [\n getValue(),\n (value: any, ...args: any[]) => {\n const oldValue = getValue();\n if (oldValue === value) return false;\n if (!isControlled(propValue)) self.setState({ [propName]: value });\n return callAllEventHandlers(propHandler, ...chainHandler)(value, ...args);\n },\n ];\n}\n\nfunction uncontrolledUniversal(props: any, config: any, uncontrolledProp: any) {\n const handlerProps = {};\n const uncontrolledProps = Object.keys(config).reduce((result, propName) => {\n const handlerName = handlerProp(propName);\n const defaultPropName = defaultProp(propName);\n const {\n [defaultPropName]: propDefaultValue,\n [propName]: propValue,\n [handlerName]: propHandler,\n ...other\n } = result;\n\n if (propDefaultValue === undefined) {\n // eslint-disable-next-line no-console\n console.warn(defaultPropName, 'must be installed in \"defaultProps\"');\n }\n\n // if (typeof propDefaultValue === 'function' && propDefaultValue.defaultInit) {\n // propDefaultValue = propDefaultValue(result);\n // }\n\n let setter = config[propName];\n let chainHandler = [];\n\n if (Array.isArray(setter)) [setter, ...chainHandler] = setter;\n setter = setter || ((v: any) => v);\n\n const [value, handler] = uncontrolledProp(\n propName,\n propValue,\n propDefaultValue,\n propHandler,\n chainHandler,\n );\n // TODO: need to warn about recursion (by lsroman)\n (handlerProps as any)[propName] = handler;\n\n return {\n ...other,\n [propName]: value,\n [handlerName]: (eventOrValue: any, ...args: any[]) => {\n const result = [setter(eventOrValue, ...args), ...args];\n if (eventOrValue?.target) {\n result.push(eventOrValue);\n }\n return handler(...result);\n },\n };\n }, props);\n return [uncontrolledProps, handlerProps];\n}\n\nfunction uncontrolled(self: any, props: any, config: any) {\n return uncontrolledUniversal(props, config, uncontrolledProp.bind(undefined, self));\n}\n\nfunction Enhancement() {\n return {\n condition: function (Component: any) {\n return Boolean(Component.prototype.uncontrolledProps);\n },\n init: function (this: any) {\n this.state = this.state || {};\n assign(this, {\n get handlers() {\n const [, uncontrolledHandlers] = uncontrolled(this, this.props, this.uncontrolledProps());\n return uncontrolledHandlers;\n },\n });\n },\n context: function (this: any, context: any) {\n return {\n ...context,\n handlers: this.handlers,\n };\n },\n asProps: function (this: any, props: any) {\n // TODO: need to omit unneccessary props (by lsroman)\n const [uncontrolledProps] = uncontrolled(this, props, this.uncontrolledProps());\n return uncontrolledProps;\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"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","ignoreList":[]}
@@ -1,25 +1,18 @@
1
- import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
- import _toArray from "@babel/runtime/helpers/esm/toArray";
4
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
5
- import _toPropertyKey from "@babel/runtime/helpers/esm/toPropertyKey";
6
- import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
7
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
8
1
  import { callAllEventHandlers } from "../utils/assignProps.mjs";
9
2
  import capitalizeFirstLetter from "../utils/capitalizeFirstLetter.mjs";
10
3
  function assign(target, source) {
11
- return Object.defineProperties(target, Object.keys(source).reduce(function(descriptors, key) {
4
+ return Object.defineProperties(target, Object.keys(source).reduce((descriptors, key) => {
12
5
  descriptors[key] = Object.getOwnPropertyDescriptor(source, key);
13
6
  return descriptors;
14
7
  }, {}));
15
8
  }
16
9
  function defaultProp(prop) {
17
- return "default".concat(capitalizeFirstLetter(prop));
10
+ return `default${capitalizeFirstLetter(prop)}`;
18
11
  }
19
12
  function handlerProp(prop) {
20
13
  if (prop === "value") prop = "";
21
14
  if (prop === "checked") prop = "";
22
- return "on".concat(capitalizeFirstLetter(prop), "Change");
15
+ return `on${capitalizeFirstLetter(prop)}Change`;
23
16
  }
24
17
  function isControlled(propValue) {
25
18
  return propValue !== void 0;
@@ -28,48 +21,46 @@ function uncontrolledProp(self, propName, propValue, propDefaultValue, propHandl
28
21
  function getValue() {
29
22
  return isControlled(propValue) ? propValue : propName in self.state ? self.state[propName] : propDefaultValue;
30
23
  }
31
- return [getValue(), function(value) {
32
- var oldValue = getValue();
24
+ return [getValue(), (value, ...args) => {
25
+ const oldValue = getValue();
33
26
  if (oldValue === value) return false;
34
- if (!isControlled(propValue)) self.setState(_defineProperty({}, propName, value));
35
- for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
36
- args[_key - 1] = arguments[_key];
37
- }
38
- return callAllEventHandlers.apply(void 0, [propHandler].concat(_toConsumableArray(chainHandler))).apply(void 0, [value].concat(args));
27
+ if (!isControlled(propValue)) self.setState({
28
+ [propName]: value
29
+ });
30
+ return callAllEventHandlers(propHandler, ...chainHandler)(value, ...args);
39
31
  }];
40
32
  }
41
33
  function uncontrolledUniversal(props, config, uncontrolledProp2) {
42
- var handlerProps = {};
43
- var uncontrolledProps = Object.keys(config).reduce(function(result, propName) {
44
- var handlerName = handlerProp(propName);
45
- var defaultPropName = defaultProp(propName);
46
- var propDefaultValue = result[defaultPropName], propValue = result[propName], propHandler = result[handlerName], other = _objectWithoutProperties(result, [defaultPropName, propName, handlerName].map(_toPropertyKey));
34
+ const handlerProps = {};
35
+ const uncontrolledProps = Object.keys(config).reduce((result, propName) => {
36
+ const handlerName = handlerProp(propName);
37
+ const defaultPropName = defaultProp(propName);
38
+ const {
39
+ [defaultPropName]: propDefaultValue,
40
+ [propName]: propValue,
41
+ [handlerName]: propHandler,
42
+ ...other
43
+ } = result;
47
44
  if (propDefaultValue === void 0) {
48
45
  console.warn(defaultPropName, 'must be installed in "defaultProps"');
49
46
  }
50
- var setter = config[propName];
51
- var chainHandler = [];
52
- if (Array.isArray(setter)) {
53
- var _setter = setter;
54
- var _setter2 = _toArray(_setter);
55
- setter = _setter2[0];
56
- chainHandler = _setter2.slice(1);
57
- }
58
- setter = setter || function(v) {
59
- return v;
60
- };
61
- var _uncontrolledProp = uncontrolledProp2(propName, propValue, propDefaultValue, propHandler, chainHandler), _uncontrolledProp2 = _slicedToArray(_uncontrolledProp, 2), value = _uncontrolledProp2[0], handler = _uncontrolledProp2[1];
47
+ let setter = config[propName];
48
+ let chainHandler = [];
49
+ if (Array.isArray(setter)) [setter, ...chainHandler] = setter;
50
+ setter = setter || ((v) => v);
51
+ const [value, handler] = uncontrolledProp2(propName, propValue, propDefaultValue, propHandler, chainHandler);
62
52
  handlerProps[propName] = handler;
63
- return _objectSpread(_objectSpread({}, other), {}, _defineProperty(_defineProperty({}, propName, value), handlerName, function(eventOrValue) {
64
- for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
65
- args[_key2 - 1] = arguments[_key2];
66
- }
67
- var result2 = [setter.apply(void 0, [eventOrValue].concat(args))].concat(args);
68
- if (eventOrValue !== null && eventOrValue !== void 0 && eventOrValue.target) {
69
- result2.push(eventOrValue);
53
+ return {
54
+ ...other,
55
+ [propName]: value,
56
+ [handlerName]: (eventOrValue, ...args) => {
57
+ const result2 = [setter(eventOrValue, ...args), ...args];
58
+ if (eventOrValue == null ? void 0 : eventOrValue.target) {
59
+ result2.push(eventOrValue);
60
+ }
61
+ return handler(...result2);
70
62
  }
71
- return handler.apply(void 0, _toConsumableArray(result2));
72
- }));
63
+ };
73
64
  }, props);
74
65
  return [uncontrolledProps, handlerProps];
75
66
  }
@@ -78,25 +69,26 @@ function uncontrolled(self, props, config) {
78
69
  }
79
70
  function Enhancement() {
80
71
  return {
81
- condition: function condition(Component) {
72
+ condition: function(Component) {
82
73
  return Boolean(Component.prototype.uncontrolledProps);
83
74
  },
84
- init: function init() {
75
+ init: function() {
85
76
  this.state = this.state || {};
86
77
  assign(this, {
87
78
  get handlers() {
88
- var _uncontrolled = uncontrolled(this, this.props, this.uncontrolledProps()), _uncontrolled2 = _slicedToArray(_uncontrolled, 2), uncontrolledHandlers = _uncontrolled2[1];
79
+ const [, uncontrolledHandlers] = uncontrolled(this, this.props, this.uncontrolledProps());
89
80
  return uncontrolledHandlers;
90
81
  }
91
82
  });
92
83
  },
93
- context: function context(_context) {
94
- return _objectSpread(_objectSpread({}, _context), {}, {
84
+ context: function(context) {
85
+ return {
86
+ ...context,
95
87
  handlers: this.handlers
96
- });
88
+ };
97
89
  },
98
- asProps: function asProps(props) {
99
- var _uncontrolled3 = uncontrolled(this, props, this.uncontrolledProps()), _uncontrolled4 = _slicedToArray(_uncontrolled3, 1), uncontrolledProps = _uncontrolled4[0];
90
+ asProps: function(props) {
91
+ const [uncontrolledProps] = uncontrolled(this, props, this.uncontrolledProps());
100
92
  return uncontrolledProps;
101
93
  }
102
94
  };
@@ -1 +1 @@
1
- {"version":3,"file":"uncontrolledProps.mjs","names":["callAllEventHandlers","capitalizeFirstLetter","assign","target","source","Object","defineProperties","keys","reduce","descriptors","key","getOwnPropertyDescriptor","defaultProp","prop","concat","handlerProp","isControlled","propValue","undefined","uncontrolledProp","self","propName","propDefaultValue","propHandler","chainHandler","getValue","state","value","oldValue","setState","_defineProperty","_len","arguments","length","args","Array","_key","apply","_toConsumableArray","uncontrolledUniversal","props","config","handlerProps","uncontrolledProps","result","handlerName","defaultPropName","other","_objectWithoutProperties","map","_toPropertyKey","console","warn","setter","isArray","_setter","_setter2","_toArray","slice","v","_uncontrolledProp","_uncontrolledProp2","_slicedToArray","handler","_objectSpread","eventOrValue","_len2","_key2","push","uncontrolled","bind","Enhancement","condition","Component","Boolean","prototype","init","handlers","_uncontrolled","_uncontrolled2","uncontrolledHandlers","context","asProps","_uncontrolled3","_uncontrolled4"],"sources":["../../src/enhancement/uncontrolledProps.tsx"],"sourcesContent":["import { callAllEventHandlers } from '../utils/assignProps';\nimport capitalizeFirstLetter from '../utils/capitalizeFirstLetter';\n\nfunction assign(target: any, source: any) {\n return Object.defineProperties(\n target,\n Object.keys(source).reduce((descriptors: any, key) => {\n descriptors[key] = Object.getOwnPropertyDescriptor(source, key);\n return descriptors;\n }, {}),\n );\n}\n\nfunction defaultProp(prop: any) {\n return `default${capitalizeFirstLetter(prop)}`;\n}\n\nfunction handlerProp(prop: any) {\n if (prop === 'value') prop = '';\n if (prop === 'checked') prop = '';\n return `on${capitalizeFirstLetter(prop)}Change`;\n}\n\nfunction isControlled(propValue: any) {\n return propValue !== undefined;\n}\n\nfunction uncontrolledProp(\n self: any,\n propName: any,\n propValue: any,\n propDefaultValue: any,\n propHandler: any,\n chainHandler: any,\n) {\n function getValue() {\n return isControlled(propValue)\n ? propValue\n : propName in self.state\n ? self.state[propName]\n : propDefaultValue;\n }\n\n return [\n getValue(),\n (value: any, ...args: any[]) => {\n const oldValue = getValue();\n if (oldValue === value) return false;\n if (!isControlled(propValue)) self.setState({ [propName]: value });\n return callAllEventHandlers(propHandler, ...chainHandler)(value, ...args);\n },\n ];\n}\n\nfunction uncontrolledUniversal(props: any, config: any, uncontrolledProp: any) {\n const handlerProps = {};\n const uncontrolledProps = Object.keys(config).reduce((result, propName) => {\n const handlerName = handlerProp(propName);\n const defaultPropName = defaultProp(propName);\n const {\n [defaultPropName]: propDefaultValue,\n [propName]: propValue,\n [handlerName]: propHandler,\n ...other\n } = result;\n\n if (propDefaultValue === undefined) {\n // eslint-disable-next-line no-console\n console.warn(defaultPropName, 'must be installed in \"defaultProps\"');\n }\n\n // if (typeof propDefaultValue === 'function' && propDefaultValue.defaultInit) {\n // propDefaultValue = propDefaultValue(result);\n // }\n\n let setter = config[propName];\n let chainHandler = [];\n\n if (Array.isArray(setter)) [setter, ...chainHandler] = setter;\n setter = setter || ((v: any) => v);\n\n const [value, handler] = uncontrolledProp(\n propName,\n propValue,\n propDefaultValue,\n propHandler,\n chainHandler,\n );\n // TODO: need to warn about recursion (by lsroman)\n (handlerProps as any)[propName] = handler;\n\n return {\n ...other,\n [propName]: value,\n [handlerName]: (eventOrValue: any, ...args: any[]) => {\n const result = [setter(eventOrValue, ...args), ...args];\n if (eventOrValue?.target) {\n result.push(eventOrValue);\n }\n return handler(...result);\n },\n };\n }, props);\n return [uncontrolledProps, handlerProps];\n}\n\nfunction uncontrolled(self: any, props: any, config: any) {\n return uncontrolledUniversal(props, config, uncontrolledProp.bind(undefined, self));\n}\n\nfunction Enhancement() {\n return {\n condition: function (Component: any) {\n return Boolean(Component.prototype.uncontrolledProps);\n },\n init: function (this: any) {\n this.state = this.state || {};\n assign(this, {\n get handlers() {\n const [, uncontrolledHandlers] = uncontrolled(this, this.props, this.uncontrolledProps());\n return uncontrolledHandlers;\n },\n });\n },\n context: function (this: any, context: any) {\n return {\n ...context,\n handlers: this.handlers,\n };\n },\n asProps: function (this: any, props: any) {\n // TODO: need to omit unneccessary props (by lsroman)\n const [uncontrolledProps] = uncontrolled(this, props, this.uncontrolledProps());\n return uncontrolledProps;\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"uncontrolledProps.mjs","names":["callAllEventHandlers","capitalizeFirstLetter","assign","target","source","Object","defineProperties","keys","reduce","descriptors","key","getOwnPropertyDescriptor","defaultProp","prop","handlerProp","isControlled","propValue","undefined","uncontrolledProp","self","propName","propDefaultValue","propHandler","chainHandler","getValue","state","value","args","oldValue","setState","uncontrolledUniversal","props","config","handlerProps","uncontrolledProps","result","handlerName","defaultPropName","other","console","warn","setter","Array","isArray","v","handler","eventOrValue","push","uncontrolled","bind","Enhancement","condition","Component","Boolean","prototype","init","handlers","uncontrolledHandlers","context","asProps"],"sources":["../../src/enhancement/uncontrolledProps.tsx"],"sourcesContent":["import { callAllEventHandlers } from '../utils/assignProps';\nimport capitalizeFirstLetter from '../utils/capitalizeFirstLetter';\n\nfunction assign(target: any, source: any) {\n return Object.defineProperties(\n target,\n Object.keys(source).reduce((descriptors: any, key) => {\n descriptors[key] = Object.getOwnPropertyDescriptor(source, key);\n return descriptors;\n }, {}),\n );\n}\n\nfunction defaultProp(prop: any) {\n return `default${capitalizeFirstLetter(prop)}`;\n}\n\nfunction handlerProp(prop: any) {\n if (prop === 'value') prop = '';\n if (prop === 'checked') prop = '';\n return `on${capitalizeFirstLetter(prop)}Change`;\n}\n\nfunction isControlled(propValue: any) {\n return propValue !== undefined;\n}\n\nfunction uncontrolledProp(\n self: any,\n propName: any,\n propValue: any,\n propDefaultValue: any,\n propHandler: any,\n chainHandler: any,\n) {\n function getValue() {\n return isControlled(propValue)\n ? propValue\n : propName in self.state\n ? self.state[propName]\n : propDefaultValue;\n }\n\n return [\n getValue(),\n (value: any, ...args: any[]) => {\n const oldValue = getValue();\n if (oldValue === value) return false;\n if (!isControlled(propValue)) self.setState({ [propName]: value });\n return callAllEventHandlers(propHandler, ...chainHandler)(value, ...args);\n },\n ];\n}\n\nfunction uncontrolledUniversal(props: any, config: any, uncontrolledProp: any) {\n const handlerProps = {};\n const uncontrolledProps = Object.keys(config).reduce((result, propName) => {\n const handlerName = handlerProp(propName);\n const defaultPropName = defaultProp(propName);\n const {\n [defaultPropName]: propDefaultValue,\n [propName]: propValue,\n [handlerName]: propHandler,\n ...other\n } = result;\n\n if (propDefaultValue === undefined) {\n // eslint-disable-next-line no-console\n console.warn(defaultPropName, 'must be installed in \"defaultProps\"');\n }\n\n // if (typeof propDefaultValue === 'function' && propDefaultValue.defaultInit) {\n // propDefaultValue = propDefaultValue(result);\n // }\n\n let setter = config[propName];\n let chainHandler = [];\n\n if (Array.isArray(setter)) [setter, ...chainHandler] = setter;\n setter = setter || ((v: any) => v);\n\n const [value, handler] = uncontrolledProp(\n propName,\n propValue,\n propDefaultValue,\n propHandler,\n chainHandler,\n );\n // TODO: need to warn about recursion (by lsroman)\n (handlerProps as any)[propName] = handler;\n\n return {\n ...other,\n [propName]: value,\n [handlerName]: (eventOrValue: any, ...args: any[]) => {\n const result = [setter(eventOrValue, ...args), ...args];\n if (eventOrValue?.target) {\n result.push(eventOrValue);\n }\n return handler(...result);\n },\n };\n }, props);\n return [uncontrolledProps, handlerProps];\n}\n\nfunction uncontrolled(self: any, props: any, config: any) {\n return uncontrolledUniversal(props, config, uncontrolledProp.bind(undefined, self));\n}\n\nfunction Enhancement() {\n return {\n condition: function (Component: any) {\n return Boolean(Component.prototype.uncontrolledProps);\n },\n init: function (this: any) {\n this.state = this.state || {};\n assign(this, {\n get handlers() {\n const [, uncontrolledHandlers] = uncontrolled(this, this.props, this.uncontrolledProps());\n return uncontrolledHandlers;\n },\n });\n },\n context: function (this: any, context: any) {\n return {\n ...context,\n handlers: this.handlers,\n };\n },\n asProps: function (this: any, props: any) {\n // TODO: need to omit unneccessary props (by lsroman)\n const [uncontrolledProps] = uncontrolled(this, props, this.uncontrolledProps());\n return uncontrolledProps;\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"AAAA,SAASA,oBAAoB,QAAQ,0BAAsB;AAC3D,OAAOC,qBAAqB,MAAM,oCAAgC;AAElE,SAASC,MAAMA,CAACC,MAAW,EAAEC,MAAW,EAAE;EACxC,OAAOC,MAAM,CAACC,gBAAgB,CAC5BH,MAAM,EACNE,MAAM,CAACE,IAAI,CAACH,MAAM,CAAC,CAACI,MAAM,CAAC,CAACC,WAAgB,EAAEC,GAAG,KAAK;IACpDD,WAAW,CAACC,GAAG,CAAC,GAAGL,MAAM,CAACM,wBAAwB,CAACP,MAAM,EAAEM,GAAG,CAAC;IAC/D,OAAOD,WAAW;EACpB,CAAC,EAAE,CAAC,CAAC,CACP,CAAC;AACH;AAEA,SAASG,WAAWA,CAACC,IAAS,EAAE;EAC9B,OAAO,UAAUZ,qBAAqB,CAACY,IAAI,CAAC,EAAE;AAChD;AAEA,SAASC,WAAWA,CAACD,IAAS,EAAE;EAC9B,IAAIA,IAAI,KAAK,OAAO,EAAEA,IAAI,GAAG,EAAE;EAC/B,IAAIA,IAAI,KAAK,SAAS,EAAEA,IAAI,GAAG,EAAE;EACjC,OAAO,KAAKZ,qBAAqB,CAACY,IAAI,CAAC,QAAQ;AACjD;AAEA,SAASE,YAAYA,CAACC,SAAc,EAAE;EACpC,OAAOA,SAAS,KAAKC,SAAS;AAChC;AAEA,SAASC,gBAAgBA,CACvBC,IAAS,EACTC,QAAa,EACbJ,SAAc,EACdK,gBAAqB,EACrBC,WAAgB,EAChBC,YAAiB,EACjB;EACA,SAASC,QAAQA,CAAA,EAAG;IAClB,OAAOT,YAAY,CAACC,SAAS,CAAC,GAC1BA,SAAS,GACTI,QAAQ,IAAID,IAAI,CAACM,KAAK,GACpBN,IAAI,CAACM,KAAK,CAACL,QAAQ,CAAC,GACpBC,gBAAgB;EACxB;EAEA,OAAO,CACLG,QAAQ,CAAC,CAAC,EACV,CAACE,KAAU,EAAE,GAAGC,IAAW,KAAK;IAC9B,MAAMC,QAAQ,GAAGJ,QAAQ,CAAC,CAAC;IAC3B,IAAII,QAAQ,KAAKF,KAAK,EAAE,OAAO,KAAK;IACpC,IAAI,CAACX,YAAY,CAACC,SAAS,CAAC,EAAEG,IAAI,CAACU,QAAQ,CAAC;MAAE,CAACT,QAAQ,GAAGM;IAAM,CAAC,CAAC;IAClE,OAAO1B,oBAAoB,CAACsB,WAAW,EAAE,GAAGC,YAAY,CAAC,CAACG,KAAK,EAAE,GAAGC,IAAI,CAAC;EAC3E,CAAC,CACF;AACH;AAEA,SAASG,qBAAqBA,CAACC,KAAU,EAAEC,MAAW,EAAEd,gBAAqB,EAAE;EAC7E,MAAMe,YAAY,GAAG,CAAC,CAAC;EACvB,MAAMC,iBAAiB,GAAG7B,MAAM,CAACE,IAAI,CAACyB,MAAM,CAAC,CAACxB,MAAM,CAAC,CAAC2B,MAAM,EAAEf,QAAQ,KAAK;IACzE,MAAMgB,WAAW,GAAGtB,WAAW,CAACM,QAAQ,CAAC;IACzC,MAAMiB,eAAe,GAAGzB,WAAW,CAACQ,QAAQ,CAAC;IAC7C,MAAM;MACJ,CAACiB,eAAe,GAAGhB,gBAAgB;MACnC,CAACD,QAAQ,GAAGJ,SAAS;MACrB,CAACoB,WAAW,GAAGd,WAAW;MAC1B,GAAGgB;IACL,CAAC,GAAGH,MAAM;IAEV,IAAId,gBAAgB,KAAKJ,SAAS,EAAE;MAClC;MACAsB,OAAO,CAACC,IAAI,CAACH,eAAe,EAAE,qCAAqC,CAAC;IACtE;;IAEA;IACA;IACA;;IAEA,IAAII,MAAM,GAAGT,MAAM,CAACZ,QAAQ,CAAC;IAC7B,IAAIG,YAAY,GAAG,EAAE;IAErB,IAAImB,KAAK,CAACC,OAAO,CAACF,MAAM,CAAC,EAAE,CAACA,MAAM,EAAE,GAAGlB,YAAY,CAAC,GAAGkB,MAAM;IAC7DA,MAAM,GAAGA,MAAM,KAAMG,CAAM,IAAKA,CAAC,CAAC;IAElC,MAAM,CAAClB,KAAK,EAAEmB,OAAO,CAAC,GAAG3B,gBAAgB,CACvCE,QAAQ,EACRJ,SAAS,EACTK,gBAAgB,EAChBC,WAAW,EACXC,YACF,CAAC;IACD;IACCU,YAAY,CAASb,QAAQ,CAAC,GAAGyB,OAAO;IAEzC,OAAO;MACL,GAAGP,KAAK;MACR,CAAClB,QAAQ,GAAGM,KAAK;MACjB,CAACU,WAAW,GAAG,CAACU,YAAiB,EAAE,GAAGnB,IAAW,KAAK;QACpD,MAAMQ,MAAM,GAAG,CAACM,MAAM,CAACK,YAAY,EAAE,GAAGnB,IAAI,CAAC,EAAE,GAAGA,IAAI,CAAC;QACvD,IAAImB,YAAY,EAAE3C,MAAM,EAAE;UACxBgC,MAAM,CAACY,IAAI,CAACD,YAAY,CAAC;QAC3B;QACA,OAAOD,OAAO,CAAC,GAAGV,MAAM,CAAC;MAC3B;IACF,CAAC;EACH,CAAC,EAAEJ,KAAK,CAAC;EACT,OAAO,CAACG,iBAAiB,EAAED,YAAY,CAAC;AAC1C;AAEA,SAASe,YAAYA,CAAC7B,IAAS,EAAEY,KAAU,EAAEC,MAAW,EAAE;EACxD,OAAOF,qBAAqB,CAACC,KAAK,EAAEC,MAAM,EAAEd,gBAAgB,CAAC+B,IAAI,CAAChC,SAAS,EAAEE,IAAI,CAAC,CAAC;AACrF;AAEA,SAAS+B,WAAWA,CAAA,EAAG;EACrB,OAAO;IACLC,SAAS,EAAE,SAAAA,CAAUC,SAAc,EAAE;MACnC,OAAOC,OAAO,CAACD,SAAS,CAACE,SAAS,CAACpB,iBAAiB,CAAC;IACvD,CAAC;IACDqB,IAAI,EAAE,SAAAA,CAAA,EAAqB;MACzB,IAAI,CAAC9B,KAAK,GAAG,IAAI,CAACA,KAAK,IAAI,CAAC,CAAC;MAC7BvB,MAAM,CAAC,IAAI,EAAE;QACX,IAAIsD,QAAQA,CAAA,EAAG;UACb,MAAM,GAAGC,oBAAoB,CAAC,GAAGT,YAAY,CAAC,IAAI,EAAE,IAAI,CAACjB,KAAK,EAAE,IAAI,CAACG,iBAAiB,CAAC,CAAC,CAAC;UACzF,OAAOuB,oBAAoB;QAC7B;MACF,CAAC,CAAC;IACJ,CAAC;IACDC,OAAO,EAAE,SAAAA,CAAqBA,OAAY,EAAE;MAC1C,OAAO;QACL,GAAGA,OAAO;QACVF,QAAQ,EAAE,IAAI,CAACA;MACjB,CAAC;IACH,CAAC;IACDG,OAAO,EAAE,SAAAA,CAAqB5B,KAAU,EAAE;MACxC;MACA,MAAM,CAACG,iBAAiB,CAAC,GAAGc,YAAY,CAAC,IAAI,EAAEjB,KAAK,EAAE,IAAI,CAACG,iBAAiB,CAAC,CAAC,CAAC;MAC/E,OAAOA,iBAAiB;IAC1B;EACF,CAAC;AACH;AAEA,eAAegB,WAAW","ignoreList":[]}
@@ -1,10 +1,7 @@
1
- import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
2
- import _createClass from "@babel/runtime/helpers/esm/createClass";
3
1
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
2
  import canUseDOM from "./utils/canUseDOM.mjs";
5
- var LastInteractionType = /* @__PURE__ */ (function() {
6
- function LastInteractionType2() {
7
- _classCallCheck(this, LastInteractionType2);
3
+ class LastInteractionType {
4
+ constructor() {
8
5
  _defineProperty(this, "lastFocusSource", "none");
9
6
  this.handleKeyDown = this.handleKeyDown.bind(this);
10
7
  this.handleMouseDown = this.handleMouseDown.bind(this);
@@ -17,34 +14,23 @@ var LastInteractionType = /* @__PURE__ */ (function() {
17
14
  });
18
15
  }
19
16
  }
20
- return _createClass(LastInteractionType2, [{
21
- key: "type",
22
- get: function get() {
23
- return this.lastFocusSource;
24
- }
25
- }, {
26
- key: "isKeyboard",
27
- value: function isKeyboard() {
28
- return this.lastFocusSource === "keyboard";
29
- }
30
- }, {
31
- key: "isMouse",
32
- value: function isMouse() {
33
- return this.lastFocusSource === "mouse";
34
- }
35
- }, {
36
- key: "handleMouseDown",
37
- value: function handleMouseDown() {
38
- this.lastFocusSource = "mouse";
39
- }
40
- }, {
41
- key: "handleKeyDown",
42
- value: function handleKeyDown() {
43
- this.lastFocusSource = "keyboard";
44
- }
45
- }]);
46
- })();
47
- var lastInteraction = new LastInteractionType();
17
+ get type() {
18
+ return this.lastFocusSource;
19
+ }
20
+ isKeyboard() {
21
+ return this.lastFocusSource === "keyboard";
22
+ }
23
+ isMouse() {
24
+ return this.lastFocusSource === "mouse";
25
+ }
26
+ handleMouseDown() {
27
+ this.lastFocusSource = "mouse";
28
+ }
29
+ handleKeyDown() {
30
+ this.lastFocusSource = "keyboard";
31
+ }
32
+ }
33
+ const lastInteraction = new LastInteractionType();
48
34
  export {
49
35
  lastInteraction
50
36
  };