@semcore/core 17.0.1-prerelease.0 → 17.1.0-prerelease.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (354) hide show
  1. package/CHANGELOG.md +123 -3
  2. package/README.md +5 -35
  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.js +25 -41
  8. package/lib/core-types/Component.js.map +1 -1
  9. package/lib/core-types/Component.mjs +18 -38
  10. package/lib/core-types/Component.mjs.map +1 -1
  11. package/lib/core-types/symbols.js +9 -9
  12. package/lib/core-types/symbols.js.map +1 -1
  13. package/lib/core-types/symbols.mjs +9 -9
  14. package/lib/core-types/symbols.mjs.map +1 -1
  15. package/lib/coreFactory.js +158 -238
  16. package/lib/coreFactory.js.map +1 -1
  17. package/lib/coreFactory.mjs +133 -189
  18. package/lib/coreFactory.mjs.map +1 -1
  19. package/lib/decorators/propsObserver.js +36 -64
  20. package/lib/decorators/propsObserver.js.map +1 -1
  21. package/lib/decorators/propsObserver.mjs +33 -61
  22. package/lib/decorators/propsObserver.mjs.map +1 -1
  23. package/lib/decorators/reactive.js +17 -17
  24. package/lib/decorators/reactive.js.map +1 -1
  25. package/lib/decorators/reactive.mjs +15 -15
  26. package/lib/decorators/reactive.mjs.map +1 -1
  27. package/lib/enhancement/Children.js +51 -59
  28. package/lib/enhancement/Children.js.map +1 -1
  29. package/lib/enhancement/Children.mjs +47 -41
  30. package/lib/enhancement/Children.mjs.map +1 -1
  31. package/lib/enhancement/Root.js +36 -37
  32. package/lib/enhancement/Root.js.map +1 -1
  33. package/lib/enhancement/Root.mjs +28 -18
  34. package/lib/enhancement/Root.mjs.map +1 -1
  35. package/lib/enhancement/dataName.js +7 -8
  36. package/lib/enhancement/dataName.js.map +1 -1
  37. package/lib/enhancement/dataName.mjs +5 -5
  38. package/lib/enhancement/dataName.mjs.map +1 -1
  39. package/lib/enhancement/enhance.js +6 -9
  40. package/lib/enhancement/enhance.js.map +1 -1
  41. package/lib/enhancement/enhance.mjs +4 -7
  42. package/lib/enhancement/enhance.mjs.map +1 -1
  43. package/lib/enhancement/functionDefaultProps.js +6 -6
  44. package/lib/enhancement/functionDefaultProps.js.map +1 -1
  45. package/lib/enhancement/functionDefaultProps.mjs +4 -4
  46. package/lib/enhancement/functionDefaultProps.mjs.map +1 -1
  47. package/lib/enhancement/i18n.js +13 -13
  48. package/lib/enhancement/i18n.js.map +1 -1
  49. package/lib/enhancement/i18n.mjs +10 -9
  50. package/lib/enhancement/i18n.mjs.map +1 -1
  51. package/lib/enhancement/inheritedName.js +7 -8
  52. package/lib/enhancement/inheritedName.js.map +1 -1
  53. package/lib/enhancement/inheritedName.mjs +5 -5
  54. package/lib/enhancement/inheritedName.mjs.map +1 -1
  55. package/lib/enhancement/staticChildren.js +47 -56
  56. package/lib/enhancement/staticChildren.js.map +1 -1
  57. package/lib/enhancement/staticChildren.mjs +43 -48
  58. package/lib/enhancement/staticChildren.mjs.map +1 -1
  59. package/lib/enhancement/style.js +29 -27
  60. package/lib/enhancement/style.js.map +1 -1
  61. package/lib/enhancement/style.mjs +26 -20
  62. package/lib/enhancement/style.mjs.map +1 -1
  63. package/lib/enhancement/uncontrolledProps.js +46 -65
  64. package/lib/enhancement/uncontrolledProps.js.map +1 -1
  65. package/lib/enhancement/uncontrolledProps.mjs +43 -52
  66. package/lib/enhancement/uncontrolledProps.mjs.map +1 -1
  67. package/lib/esm/LastInteractionType.mjs +19 -33
  68. package/lib/esm/core-types/Component.mjs +18 -38
  69. package/lib/esm/core-types/symbols.mjs +9 -9
  70. package/lib/esm/coreFactory.mjs +133 -189
  71. package/lib/esm/enhancement/Children.mjs +47 -41
  72. package/lib/esm/enhancement/Root.mjs +28 -18
  73. package/lib/esm/enhancement/dataName.mjs +5 -5
  74. package/lib/esm/enhancement/enhance.mjs +4 -7
  75. package/lib/esm/enhancement/functionDefaultProps.mjs +4 -4
  76. package/lib/esm/enhancement/i18n.mjs +10 -9
  77. package/lib/esm/enhancement/inheritedName.mjs +5 -5
  78. package/lib/esm/enhancement/staticChildren.mjs +43 -48
  79. package/lib/esm/enhancement/style.mjs +26 -20
  80. package/lib/esm/enhancement/uncontrolledProps.mjs +43 -52
  81. package/lib/esm/register.mjs +12 -20
  82. package/lib/esm/styled/reshadow-core.mjs +98 -111
  83. package/lib/esm/styled/sstyled.mjs +31 -41
  84. package/lib/esm/utils/assignProps.mjs +32 -36
  85. package/lib/esm/utils/enhances/WithI18n.mjs +15 -17
  86. package/lib/esm/utils/enhances/i18nEnhance.mjs +47 -61
  87. package/lib/esm/utils/logger.mjs +13 -21
  88. package/lib/esm/utils/pick.mjs +4 -4
  89. package/lib/esm/utils/ref.mjs +27 -43
  90. package/lib/esm/utils/use/useEnhancedEffect.mjs +1 -1
  91. package/lib/index.js +17 -17
  92. package/lib/register.js +17 -24
  93. package/lib/register.js.map +1 -1
  94. package/lib/register.mjs +12 -20
  95. package/lib/register.mjs.map +1 -1
  96. package/lib/styled/index.js +4 -4
  97. package/lib/styled/reshadow-core.js +102 -104
  98. package/lib/styled/reshadow-core.js.map +1 -1
  99. package/lib/styled/reshadow-core.mjs +98 -111
  100. package/lib/styled/reshadow-core.mjs.map +1 -1
  101. package/lib/styled/sstyled.js +31 -53
  102. package/lib/styled/sstyled.js.map +1 -1
  103. package/lib/styled/sstyled.mjs +31 -41
  104. package/lib/styled/sstyled.mjs.map +1 -1
  105. package/lib/theme/themes/dark.js +2 -2
  106. package/lib/theme/themes/dark.js.map +1 -1
  107. package/lib/theme/themes/default.js +2 -2
  108. package/lib/theme/themes/default.js.map +1 -1
  109. package/lib/theme/themes/highlights-dark.js +2 -2
  110. package/lib/theme/themes/highlights-dark.js.map +1 -1
  111. package/lib/theme/themes/highlights-light.js +2 -2
  112. package/lib/theme/themes/highlights-light.js.map +1 -1
  113. package/lib/theme/themes/light.js +2 -2
  114. package/lib/theme/themes/light.js.map +1 -1
  115. package/lib/utils/CSSinJS.js +8 -10
  116. package/lib/utils/CSSinJS.js.map +1 -1
  117. package/lib/utils/CSSinJS.mjs +6 -7
  118. package/lib/utils/CSSinJS.mjs.map +1 -1
  119. package/lib/utils/ThemeProvider.js +44 -51
  120. package/lib/utils/ThemeProvider.js.map +1 -1
  121. package/lib/utils/ThemeProvider.mjs +36 -47
  122. package/lib/utils/ThemeProvider.mjs.map +1 -1
  123. package/lib/utils/addonText.js +4 -7
  124. package/lib/utils/addonText.js.map +1 -1
  125. package/lib/utils/addonText.mjs +2 -5
  126. package/lib/utils/addonText.mjs.map +1 -1
  127. package/lib/utils/addonTextChildren.js +15 -21
  128. package/lib/utils/addonTextChildren.js.map +1 -1
  129. package/lib/utils/addonTextChildren.mjs +7 -13
  130. package/lib/utils/addonTextChildren.mjs.map +1 -1
  131. package/lib/utils/ariaProps.js +7 -5
  132. package/lib/utils/ariaProps.js.map +1 -1
  133. package/lib/utils/ariaProps.mjs +7 -5
  134. package/lib/utils/ariaProps.mjs.map +1 -1
  135. package/lib/utils/assignProps.js +33 -37
  136. package/lib/utils/assignProps.js.map +1 -1
  137. package/lib/utils/assignProps.mjs +32 -36
  138. package/lib/utils/assignProps.mjs.map +1 -1
  139. package/lib/utils/canUseDOM.js +1 -1
  140. package/lib/utils/capitalizeFirstLetter.js +1 -1
  141. package/lib/utils/color.js +72 -95
  142. package/lib/utils/color.js.map +1 -1
  143. package/lib/utils/color.mjs +71 -94
  144. package/lib/utils/color.mjs.map +1 -1
  145. package/lib/utils/compose.js +3 -12
  146. package/lib/utils/compose.js.map +1 -1
  147. package/lib/utils/compose.mjs +2 -11
  148. package/lib/utils/compose.mjs.map +1 -1
  149. package/lib/utils/createUUID.js +5 -5
  150. package/lib/utils/createUUID.js.map +1 -1
  151. package/lib/utils/createUUID.mjs +4 -4
  152. package/lib/utils/createUUID.mjs.map +1 -1
  153. package/lib/utils/cssToIntDefault.js +3 -4
  154. package/lib/utils/cssToIntDefault.js.map +1 -1
  155. package/lib/utils/cssToIntDefault.mjs +2 -3
  156. package/lib/utils/cssToIntDefault.mjs.map +1 -1
  157. package/lib/utils/enhances/WithCSS.js +10 -8
  158. package/lib/utils/enhances/WithCSS.js.map +1 -1
  159. package/lib/utils/enhances/WithCSS.mjs +7 -6
  160. package/lib/utils/enhances/WithCSS.mjs.map +1 -1
  161. package/lib/utils/enhances/WithI18n.js +19 -19
  162. package/lib/utils/enhances/WithI18n.js.map +1 -1
  163. package/lib/utils/enhances/WithI18n.mjs +15 -17
  164. package/lib/utils/enhances/WithI18n.mjs.map +1 -1
  165. package/lib/utils/enhances/a11yEnhance.js +34 -39
  166. package/lib/utils/enhances/a11yEnhance.js.map +1 -1
  167. package/lib/utils/enhances/a11yEnhance.mjs +32 -36
  168. package/lib/utils/enhances/a11yEnhance.mjs.map +1 -1
  169. package/lib/utils/enhances/animatedSizeEnhance.js +55 -63
  170. package/lib/utils/enhances/animatedSizeEnhance.js.map +1 -1
  171. package/lib/utils/enhances/animatedSizeEnhance.mjs +50 -58
  172. package/lib/utils/enhances/animatedSizeEnhance.mjs.map +1 -1
  173. package/lib/utils/enhances/contextEnhance.js +12 -11
  174. package/lib/utils/enhances/contextEnhance.js.map +1 -1
  175. package/lib/utils/enhances/contextEnhance.mjs +9 -8
  176. package/lib/utils/enhances/contextEnhance.mjs.map +1 -1
  177. package/lib/utils/enhances/i18nEnhance.js +51 -67
  178. package/lib/utils/enhances/i18nEnhance.js.map +1 -1
  179. package/lib/utils/enhances/i18nEnhance.mjs +47 -61
  180. package/lib/utils/enhances/i18nEnhance.mjs.map +1 -1
  181. package/lib/utils/enhances/resolveColorEnhance.js +12 -10
  182. package/lib/utils/enhances/resolveColorEnhance.js.map +1 -1
  183. package/lib/utils/enhances/resolveColorEnhance.mjs +8 -6
  184. package/lib/utils/enhances/resolveColorEnhance.mjs.map +1 -1
  185. package/lib/utils/eventEmitter.js +30 -57
  186. package/lib/utils/eventEmitter.js.map +1 -1
  187. package/lib/utils/eventEmitter.mjs +26 -55
  188. package/lib/utils/eventEmitter.mjs.map +1 -1
  189. package/lib/utils/findComponent.js +35 -42
  190. package/lib/utils/findComponent.js.map +1 -1
  191. package/lib/utils/findComponent.mjs +26 -33
  192. package/lib/utils/findComponent.mjs.map +1 -1
  193. package/lib/utils/fire.js +7 -13
  194. package/lib/utils/fire.js.map +1 -1
  195. package/lib/utils/fire.mjs +5 -11
  196. package/lib/utils/fire.mjs.map +1 -1
  197. package/lib/utils/focus-lock/focusBorders.js +28 -32
  198. package/lib/utils/focus-lock/focusBorders.js.map +1 -1
  199. package/lib/utils/focus-lock/focusBorders.mjs +26 -32
  200. package/lib/utils/focus-lock/focusBorders.mjs.map +1 -1
  201. package/lib/utils/focus-lock/getFocusableIn.js +4 -6
  202. package/lib/utils/focus-lock/getFocusableIn.js.map +1 -1
  203. package/lib/utils/focus-lock/getFocusableIn.mjs +3 -6
  204. package/lib/utils/focus-lock/getFocusableIn.mjs.map +1 -1
  205. package/lib/utils/focus-lock/isFocusInside.js +5 -6
  206. package/lib/utils/focus-lock/isFocusInside.js.map +1 -1
  207. package/lib/utils/focus-lock/isFocusInside.mjs +4 -6
  208. package/lib/utils/focus-lock/isFocusInside.mjs.map +1 -1
  209. package/lib/utils/focus-lock/isFocusable.js +9 -12
  210. package/lib/utils/focus-lock/isFocusable.js.map +1 -1
  211. package/lib/utils/focus-lock/isFocusable.mjs +8 -11
  212. package/lib/utils/focus-lock/isFocusable.mjs.map +1 -1
  213. package/lib/utils/focus-lock/setFocus.js +21 -27
  214. package/lib/utils/focus-lock/setFocus.js.map +1 -1
  215. package/lib/utils/focus-lock/setFocus.mjs +19 -25
  216. package/lib/utils/focus-lock/setFocus.mjs.map +1 -1
  217. package/lib/utils/getAccessibleName.js +10 -22
  218. package/lib/utils/getAccessibleName.js.map +1 -1
  219. package/lib/utils/getAccessibleName.mjs +10 -21
  220. package/lib/utils/getAccessibleName.mjs.map +1 -1
  221. package/lib/utils/getDisplayName.js +1 -1
  222. package/lib/utils/getEventTarget.js +13 -32
  223. package/lib/utils/getEventTarget.js.map +1 -1
  224. package/lib/utils/getEventTarget.mjs +12 -31
  225. package/lib/utils/getEventTarget.mjs.map +1 -1
  226. package/lib/utils/getOriginChildren.js +4 -4
  227. package/lib/utils/getOriginChildren.js.map +1 -1
  228. package/lib/utils/getRandomInt.js +1 -1
  229. package/lib/utils/getValue.js +4 -6
  230. package/lib/utils/getValue.js.map +1 -1
  231. package/lib/utils/getValue.mjs +3 -5
  232. package/lib/utils/getValue.mjs.map +1 -1
  233. package/lib/utils/hasLabels.js +16 -27
  234. package/lib/utils/hasLabels.js.map +1 -1
  235. package/lib/utils/hasLabels.mjs +14 -24
  236. package/lib/utils/hasLabels.mjs.map +1 -1
  237. package/lib/utils/hasParent.js +3 -2
  238. package/lib/utils/hasParent.js.map +1 -1
  239. package/lib/utils/hasParent.mjs +2 -3
  240. package/lib/utils/hasParent.mjs.map +1 -1
  241. package/lib/utils/ifChildren.js +6 -4
  242. package/lib/utils/ifChildren.js.map +1 -1
  243. package/lib/utils/ifChildren.mjs +4 -2
  244. package/lib/utils/ifChildren.mjs.map +1 -1
  245. package/lib/utils/indentStyles.js +5 -10
  246. package/lib/utils/indentStyles.js.map +1 -1
  247. package/lib/utils/indentStyles.mjs +5 -9
  248. package/lib/utils/indentStyles.mjs.map +1 -1
  249. package/lib/utils/injectStyle.js +11 -13
  250. package/lib/utils/injectStyle.js.map +1 -1
  251. package/lib/utils/injectStyle.mjs +9 -10
  252. package/lib/utils/injectStyle.mjs.map +1 -1
  253. package/lib/utils/inputProps.js +5 -5
  254. package/lib/utils/inputProps.js.map +1 -1
  255. package/lib/utils/inputProps.mjs +4 -4
  256. package/lib/utils/inputProps.mjs.map +1 -1
  257. package/lib/utils/isInteractiveElement.js +7 -9
  258. package/lib/utils/isInteractiveElement.js.map +1 -1
  259. package/lib/utils/isInteractiveElement.mjs +7 -9
  260. package/lib/utils/isInteractiveElement.mjs.map +1 -1
  261. package/lib/utils/isNode.js +4 -5
  262. package/lib/utils/isNode.js.map +1 -1
  263. package/lib/utils/isNode.mjs +1 -2
  264. package/lib/utils/isNode.mjs.map +1 -1
  265. package/lib/utils/isPromise.js +1 -1
  266. package/lib/utils/isRetina.js +7 -2
  267. package/lib/utils/isRetina.js.map +1 -1
  268. package/lib/utils/isRetina.mjs +6 -1
  269. package/lib/utils/isRetina.mjs.map +1 -1
  270. package/lib/utils/logger.js +18 -25
  271. package/lib/utils/logger.js.map +1 -1
  272. package/lib/utils/logger.mjs +13 -21
  273. package/lib/utils/logger.mjs.map +1 -1
  274. package/lib/utils/numericChecker.js +11 -18
  275. package/lib/utils/numericChecker.js.map +1 -1
  276. package/lib/utils/numericChecker.mjs +10 -17
  277. package/lib/utils/numericChecker.mjs.map +1 -1
  278. package/lib/utils/ownerDocument.js +2 -2
  279. package/lib/utils/ownerDocument.js.map +1 -1
  280. package/lib/utils/ownerDocument.mjs +1 -1
  281. package/lib/utils/ownerDocument.mjs.map +1 -1
  282. package/lib/utils/pick.js +5 -5
  283. package/lib/utils/pick.js.map +1 -1
  284. package/lib/utils/pick.mjs +4 -4
  285. package/lib/utils/pick.mjs.map +1 -1
  286. package/lib/utils/propsForElement.js +10 -12
  287. package/lib/utils/propsForElement.js.map +1 -1
  288. package/lib/utils/propsForElement.mjs +8 -10
  289. package/lib/utils/propsForElement.mjs.map +1 -1
  290. package/lib/utils/rafTrottle.js +9 -14
  291. package/lib/utils/rafTrottle.js.map +1 -1
  292. package/lib/utils/rafTrottle.mjs +7 -12
  293. package/lib/utils/rafTrottle.mjs.map +1 -1
  294. package/lib/utils/reactToText.js +5 -8
  295. package/lib/utils/reactToText.js.map +1 -1
  296. package/lib/utils/reactToText.mjs +3 -6
  297. package/lib/utils/reactToText.mjs.map +1 -1
  298. package/lib/utils/ref.js +29 -47
  299. package/lib/utils/ref.js.map +1 -1
  300. package/lib/utils/ref.mjs +27 -43
  301. package/lib/utils/ref.mjs.map +1 -1
  302. package/lib/utils/setRef.js +2 -2
  303. package/lib/utils/setRef.js.map +1 -1
  304. package/lib/utils/syncScroll.js +24 -24
  305. package/lib/utils/syncScroll.js.map +1 -1
  306. package/lib/utils/syncScroll.mjs +21 -21
  307. package/lib/utils/syncScroll.mjs.map +1 -1
  308. package/lib/utils/uncontroll.js +8 -18
  309. package/lib/utils/uncontroll.js.map +1 -1
  310. package/lib/utils/uncontroll.mjs +8 -17
  311. package/lib/utils/uncontroll.mjs.map +1 -1
  312. package/lib/utils/uniqueID.js +22 -27
  313. package/lib/utils/uniqueID.js.map +1 -1
  314. package/lib/utils/uniqueID.mjs +18 -25
  315. package/lib/utils/uniqueID.mjs.map +1 -1
  316. package/lib/utils/use/useColorResolver.js +20 -21
  317. package/lib/utils/use/useColorResolver.js.map +1 -1
  318. package/lib/utils/use/useColorResolver.mjs +16 -18
  319. package/lib/utils/use/useColorResolver.mjs.map +1 -1
  320. package/lib/utils/use/useEnhancedEffect.js +4 -4
  321. package/lib/utils/use/useEnhancedEffect.js.map +1 -1
  322. package/lib/utils/use/useEnhancedEffect.mjs +1 -1
  323. package/lib/utils/use/useEnhancedEffect.mjs.map +1 -1
  324. package/lib/utils/use/useEventCallback.js +5 -10
  325. package/lib/utils/use/useEventCallback.js.map +1 -1
  326. package/lib/utils/use/useEventCallback.mjs +3 -8
  327. package/lib/utils/use/useEventCallback.mjs.map +1 -1
  328. package/lib/utils/use/useEventListener.js +11 -15
  329. package/lib/utils/use/useEventListener.js.map +1 -1
  330. package/lib/utils/use/useEventListener.mjs +7 -11
  331. package/lib/utils/use/useEventListener.mjs.map +1 -1
  332. package/lib/utils/use/useFocusLock.js +80 -94
  333. package/lib/utils/use/useFocusLock.js.map +1 -1
  334. package/lib/utils/use/useFocusLock.mjs +71 -88
  335. package/lib/utils/use/useFocusLock.mjs.map +1 -1
  336. package/lib/utils/use/usePreventScroll.js +24 -26
  337. package/lib/utils/use/usePreventScroll.js.map +1 -1
  338. package/lib/utils/use/usePreventScroll.mjs +19 -21
  339. package/lib/utils/use/usePreventScroll.mjs.map +1 -1
  340. package/lib/utils/use/useScrollBarWidth.js +8 -14
  341. package/lib/utils/use/useScrollBarWidth.js.map +1 -1
  342. package/lib/utils/use/useScrollBarWidth.mjs +8 -13
  343. package/lib/utils/use/useScrollBarWidth.mjs.map +1 -1
  344. package/lib/utils/useCssVariable.js +32 -37
  345. package/lib/utils/useCssVariable.js.map +1 -1
  346. package/lib/utils/useCssVariable.mjs +27 -34
  347. package/lib/utils/useCssVariable.mjs.map +1 -1
  348. package/lib/utils/zIndexStacking.js +28 -24
  349. package/lib/utils/zIndexStacking.js.map +1 -1
  350. package/lib/utils/zIndexStacking.mjs +23 -22
  351. package/lib/utils/zIndexStacking.mjs.map +1 -1
  352. package/package.json +316 -13
  353. package/tsconfig-utils.json +4 -0
  354. package/vite.config.ts +22 -0
@@ -1,25 +1,16 @@
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 _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
9
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
10
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
7
+ exports.default = void 0;
12
8
  var _react = _interopRequireDefault(require("react"));
13
9
  var _symbols = require("../core-types/symbols");
14
- var _excluded = ["handlers", "getters"],
15
- _excluded2 = ["handlers"];
16
- var CHILDREN_SELF = Symbol('CHILDREN_SELF');
17
- var GETTER_REG = /^get[\w]+Props$/;
10
+ const CHILDREN_SELF = Symbol('CHILDREN_SELF');
11
+ const GETTER_REG = /^get[\w]+Props$/;
18
12
  function splitPropsAndGetters(props) {
19
- return Object.entries(props).reduce(function (acc, _ref) {
20
- var _ref2 = (0, _slicedToArray2["default"])(_ref, 2),
21
- key = _ref2[0],
22
- value = _ref2[1];
13
+ return Object.entries(props).reduce((acc, [key, value]) => {
23
14
  if (GETTER_REG.exec(key) === null) {
24
15
  acc.props[key] = value;
25
16
  } else {
@@ -37,82 +28,83 @@ function getterToArray(getter) {
37
28
  }
38
29
  return getter;
39
30
  }
40
- function mergeObjects() {
41
- var a = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
42
- var b = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
43
- var core = (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, a), b);
44
- return Object.keys(core).reduce(function (acc, key) {
31
+ function mergeObjects(a = {}, b = {}) {
32
+ const core = {
33
+ ...a,
34
+ ...b
35
+ };
36
+ return Object.keys(core).reduce((acc, key) => {
45
37
  a[key] = getterToArray(a[key]);
46
38
  b[key] = getterToArray(b[key]);
47
- acc[key] = [].concat((0, _toConsumableArray2["default"])(a[key]), (0, _toConsumableArray2["default"])(b[key]));
39
+ acc[key] = [...a[key], ...b[key]];
48
40
  return acc;
49
41
  }, {});
50
42
  }
51
43
  function assignGettersChain(getters) {
52
- return function () {
53
- var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
54
- return getters.reduce(function (acc, getter) {
44
+ return function (props = {}) {
45
+ return getters.reduce((acc, getter) => {
55
46
  return getter(acc);
56
47
  }, props);
57
48
  };
58
49
  }
59
50
  function createChildren(Context, contexts) {
60
- var _Children = function Children() {
61
- var children = _Children.origin;
51
+ const Children = function () {
52
+ const children = Children.origin;
62
53
  if (typeof children === 'function') {
63
- var _reduce = [].concat((0, _toConsumableArray2["default"])(contexts), [Context]).reduce(function (acc, ctx) {
64
- var _ref3 = _react["default"].useContext(ctx),
65
- handlers = _ref3.handlers,
66
- propsAndGetters = (0, _objectWithoutProperties2["default"])(_ref3, _excluded2);
67
- var _splitPropsAndGetters = splitPropsAndGetters(propsAndGetters),
68
- props = _splitPropsAndGetters.props,
69
- getters = _splitPropsAndGetters.getters;
70
- return Object.assign({}, acc, (0, _objectSpread2["default"])({
71
- handlers: Object.assign({}, acc.handlers, handlers),
72
- getters: mergeObjects(acc.getters, getters)
73
- }, props));
74
- }, _Children.props),
75
- _reduce$handlers = _reduce.handlers,
76
- handlers = _reduce$handlers === void 0 ? {} : _reduce$handlers,
77
- _reduce$getters = _reduce.getters,
78
- getters = _reduce$getters === void 0 ? {} : _reduce$getters,
79
- props = (0, _objectWithoutProperties2["default"])(_reduce, _excluded);
80
- var mergedGetters = Object.entries(getters).reduce(function (acc, _ref4) {
81
- var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2),
82
- key = _ref5[0],
83
- value = _ref5[1];
54
+ const {
55
+ handlers = {},
56
+ getters = {},
57
+ ...props
58
+ } = [...contexts, Context].reduce((acc, ctx) => {
59
+ const {
60
+ handlers,
61
+ ...propsAndGetters
62
+ } = _react.default.useContext(ctx);
63
+ const {
64
+ props,
65
+ getters
66
+ } = splitPropsAndGetters(propsAndGetters);
67
+ return Object.assign({}, acc, {
68
+ handlers: Object.assign({}, acc.handlers, handlers),
69
+ getters: mergeObjects(acc.getters, getters),
70
+ ...props
71
+ });
72
+ }, Children.props);
73
+ const mergedGetters = Object.entries(getters).reduce((acc, [key, value]) => {
84
74
  acc[key] = assignGettersChain(value);
85
75
  return acc;
86
76
  }, {});
87
- return children((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, props), mergedGetters), handlers);
77
+ return children({
78
+ ...props,
79
+ ...mergedGetters
80
+ }, handlers);
88
81
  } else if (children === undefined) {
89
82
  return null;
90
83
  }
91
84
  return children;
92
85
  };
93
- _Children.origin = null;
94
- _Children.props = {};
95
- _Children[_symbols.CHILDREN_COMPONENT] = true;
96
- return _Children;
86
+ Children.origin = null;
87
+ Children.props = {};
88
+ Children[_symbols.CHILDREN_COMPONENT] = true;
89
+ return Children;
97
90
  }
98
91
  function Enhancement(Context, parent) {
99
92
  return {
100
- init: function init() {
101
- var contexts = (Array.isArray(parent) ? parent : [parent]).map(function (component) {
102
- return component[_symbols.CONTEXT_COMPONENT];
103
- }).filter(Boolean);
93
+ init: function () {
94
+ const contexts = (Array.isArray(parent) ? parent : [parent]).map(component => component[_symbols.CONTEXT_COMPONENT]).filter(Boolean);
104
95
  this[CHILDREN_SELF] = createChildren(Context, contexts);
105
96
  },
106
- asProps: function asProps(props) {
97
+ asProps: function (props) {
107
98
  // TODO: learn the reason what it was used for (by lsroman)
108
99
  // this[CHILDREN_SELF].origin = _Children ? _Children.origin : children;
109
100
  this[CHILDREN_SELF].origin = props.children;
110
101
  this[CHILDREN_SELF].props = props;
111
- return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, props), {}, {
102
+ return {
103
+ ...props,
112
104
  Children: this[CHILDREN_SELF]
113
- });
105
+ };
114
106
  }
115
107
  };
116
108
  }
117
- var _default = exports["default"] = Enhancement;
109
+ var _default = exports.default = Enhancement;
118
110
  //# sourceMappingURL=Children.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Children.js","names":["_react","_interopRequireDefault","require","_symbols","_excluded","_excluded2","CHILDREN_SELF","Symbol","GETTER_REG","splitPropsAndGetters","props","Object","entries","reduce","acc","_ref","_ref2","_slicedToArray2","key","value","exec","getters","getterToArray","getter","Array","isArray","mergeObjects","a","arguments","length","undefined","b","core","_objectSpread2","keys","concat","_toConsumableArray2","assignGettersChain","createChildren","Context","contexts","Children","children","origin","_reduce","ctx","_ref3","React","useContext","handlers","propsAndGetters","_objectWithoutProperties2","_splitPropsAndGetters","assign","_reduce$handlers","_reduce$getters","mergedGetters","_ref4","_ref5","CHILDREN_COMPONENT","Enhancement","parent","init","map","component","CONTEXT_COMPONENT","filter","Boolean","asProps","_default","exports"],"sources":["../../src/enhancement/Children.tsx"],"sourcesContent":["import React from 'react';\n\nimport { CONTEXT_COMPONENT, CHILDREN_COMPONENT } from '../core-types/symbols';\n\nconst CHILDREN_SELF = Symbol('CHILDREN_SELF');\n\nconst GETTER_REG = /^get[\\w]+Props$/;\n\nfunction splitPropsAndGetters(props: any) {\n return Object.entries(props).reduce(\n (acc: any, [key, value]) => {\n if (GETTER_REG.exec(key) === null) {\n acc.props[key] = value;\n } else {\n acc.getters[key] = value;\n }\n return acc;\n },\n { props: {}, getters: {} },\n );\n}\n\nfunction getterToArray(getter: any) {\n if (!Array.isArray(getter)) {\n return typeof getter === 'function' ? [getter] : [];\n }\n return getter;\n}\n\nfunction mergeObjects(a: any = {}, b: any = {}) {\n const core = { ...a, ...b };\n return Object.keys(core).reduce((acc: any, key) => {\n a[key] = getterToArray(a[key]);\n b[key] = getterToArray(b[key]);\n acc[key] = [...a[key], ...b[key]];\n return acc;\n }, {});\n}\n\nfunction assignGettersChain(getters: Array<Function>) {\n return function (props = {}) {\n return getters.reduce((acc, getter) => {\n return getter(acc);\n }, props);\n };\n}\n\nfunction createChildren(Context: any, contexts: any) {\n const Children: any = function () {\n const children = Children.origin;\n if (typeof children === 'function') {\n const {\n handlers = {},\n getters = {},\n ...props\n } = [...contexts, Context].reduce((acc, ctx) => {\n const { handlers, ...propsAndGetters } = React.useContext(ctx) as any;\n const { props, getters } = splitPropsAndGetters(propsAndGetters);\n return Object.assign({}, acc, {\n handlers: Object.assign({}, acc.handlers, handlers),\n getters: mergeObjects(acc.getters, getters),\n ...props,\n });\n }, Children.props);\n\n const mergedGetters = Object.entries(getters).reduce((acc: any, [key, value]) => {\n acc[key] = assignGettersChain(value as []);\n return acc;\n }, {});\n\n return children({ ...props, ...mergedGetters }, handlers);\n } else if (children === undefined) {\n return null;\n }\n return children;\n };\n Children.origin = null;\n Children.props = {};\n Children[CHILDREN_COMPONENT] = true;\n return Children;\n}\n\nfunction Enhancement(this: any, Context: any, parent: any) {\n return {\n init: function (this: any) {\n const contexts = (Array.isArray(parent) ? parent : [parent])\n .map((component) => component[CONTEXT_COMPONENT])\n .filter(Boolean);\n this[CHILDREN_SELF] = createChildren(Context, contexts);\n },\n asProps: function (this: any, props: any) {\n // TODO: learn the reason what it was used for (by lsroman)\n // this[CHILDREN_SELF].origin = _Children ? _Children.origin : children;\n this[CHILDREN_SELF].origin = props.children;\n this[CHILDREN_SELF].props = props;\n return {\n ...props,\n Children: this[CHILDREN_SELF],\n };\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Children.js","names":["_react","_interopRequireDefault","require","_symbols","CHILDREN_SELF","Symbol","GETTER_REG","splitPropsAndGetters","props","Object","entries","reduce","acc","key","value","exec","getters","getterToArray","getter","Array","isArray","mergeObjects","a","b","core","keys","assignGettersChain","createChildren","Context","contexts","Children","children","origin","handlers","ctx","propsAndGetters","React","useContext","assign","mergedGetters","undefined","CHILDREN_COMPONENT","Enhancement","parent","init","map","component","CONTEXT_COMPONENT","filter","Boolean","asProps","_default","exports","default"],"sources":["../../src/enhancement/Children.tsx"],"sourcesContent":["import React from 'react';\n\nimport { CONTEXT_COMPONENT, CHILDREN_COMPONENT } from '../core-types/symbols';\n\nconst CHILDREN_SELF = Symbol('CHILDREN_SELF');\n\nconst GETTER_REG = /^get[\\w]+Props$/;\n\nfunction splitPropsAndGetters(props: any) {\n return Object.entries(props).reduce(\n (acc: any, [key, value]) => {\n if (GETTER_REG.exec(key) === null) {\n acc.props[key] = value;\n } else {\n acc.getters[key] = value;\n }\n return acc;\n },\n { props: {}, getters: {} },\n );\n}\n\nfunction getterToArray(getter: any) {\n if (!Array.isArray(getter)) {\n return typeof getter === 'function' ? [getter] : [];\n }\n return getter;\n}\n\nfunction mergeObjects(a: any = {}, b: any = {}) {\n const core = { ...a, ...b };\n return Object.keys(core).reduce((acc: any, key) => {\n a[key] = getterToArray(a[key]);\n b[key] = getterToArray(b[key]);\n acc[key] = [...a[key], ...b[key]];\n return acc;\n }, {});\n}\n\nfunction assignGettersChain(getters: Array<Function>) {\n return function (props = {}) {\n return getters.reduce((acc, getter) => {\n return getter(acc);\n }, props);\n };\n}\n\nfunction createChildren(Context: any, contexts: any) {\n const Children: any = function () {\n const children = Children.origin;\n if (typeof children === 'function') {\n const {\n handlers = {},\n getters = {},\n ...props\n } = [...contexts, Context].reduce((acc, ctx) => {\n const { handlers, ...propsAndGetters } = React.useContext(ctx) as any;\n const { props, getters } = splitPropsAndGetters(propsAndGetters);\n return Object.assign({}, acc, {\n handlers: Object.assign({}, acc.handlers, handlers),\n getters: mergeObjects(acc.getters, getters),\n ...props,\n });\n }, Children.props);\n\n const mergedGetters = Object.entries(getters).reduce((acc: any, [key, value]) => {\n acc[key] = assignGettersChain(value as []);\n return acc;\n }, {});\n\n return children({ ...props, ...mergedGetters }, handlers);\n } else if (children === undefined) {\n return null;\n }\n return children;\n };\n Children.origin = null;\n Children.props = {};\n Children[CHILDREN_COMPONENT] = true;\n return Children;\n}\n\nfunction Enhancement(this: any, Context: any, parent: any) {\n return {\n init: function (this: any) {\n const contexts = (Array.isArray(parent) ? parent : [parent])\n .map((component) => component[CONTEXT_COMPONENT])\n .filter(Boolean);\n this[CHILDREN_SELF] = createChildren(Context, contexts);\n },\n asProps: function (this: any, props: any) {\n // TODO: learn the reason what it was used for (by lsroman)\n // this[CHILDREN_SELF].origin = _Children ? _Children.origin : children;\n this[CHILDREN_SELF].origin = props.children;\n this[CHILDREN_SELF].props = props;\n return {\n ...props,\n Children: this[CHILDREN_SELF],\n };\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"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","ignoreList":[]}
@@ -1,15 +1,9 @@
1
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
2
- import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
3
- import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
4
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
5
1
  import React from "react";
6
2
  import { CHILDREN_COMPONENT, CONTEXT_COMPONENT } from "../core-types/symbols.mjs";
7
- var _excluded = ["handlers", "getters"], _excluded2 = ["handlers"];
8
- var CHILDREN_SELF = /* @__PURE__ */ Symbol("CHILDREN_SELF");
9
- var GETTER_REG = /^get[\w]+Props$/;
3
+ const CHILDREN_SELF = /* @__PURE__ */ Symbol("CHILDREN_SELF");
4
+ const GETTER_REG = /^get[\w]+Props$/;
10
5
  function splitPropsAndGetters(props) {
11
- return Object.entries(props).reduce(function(acc, _ref) {
12
- var _ref2 = _slicedToArray(_ref, 2), key = _ref2[0], value = _ref2[1];
6
+ return Object.entries(props).reduce((acc, [key, value]) => {
13
7
  if (GETTER_REG.exec(key) === null) {
14
8
  acc.props[key] = value;
15
9
  } else {
@@ -27,67 +21,79 @@ function getterToArray(getter) {
27
21
  }
28
22
  return getter;
29
23
  }
30
- function mergeObjects() {
31
- var a = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
32
- var b = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
33
- var core = _objectSpread(_objectSpread({}, a), b);
34
- return Object.keys(core).reduce(function(acc, key) {
24
+ function mergeObjects(a = {}, b = {}) {
25
+ const core = {
26
+ ...a,
27
+ ...b
28
+ };
29
+ return Object.keys(core).reduce((acc, key) => {
35
30
  a[key] = getterToArray(a[key]);
36
31
  b[key] = getterToArray(b[key]);
37
- acc[key] = [].concat(_toConsumableArray(a[key]), _toConsumableArray(b[key]));
32
+ acc[key] = [...a[key], ...b[key]];
38
33
  return acc;
39
34
  }, {});
40
35
  }
41
36
  function assignGettersChain(getters) {
42
- return function() {
43
- var props = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
44
- return getters.reduce(function(acc, getter) {
37
+ return function(props = {}) {
38
+ return getters.reduce((acc, getter) => {
45
39
  return getter(acc);
46
40
  }, props);
47
41
  };
48
42
  }
49
43
  function createChildren(Context, contexts) {
50
- var _Children = function Children() {
51
- var children = _Children.origin;
44
+ const Children = function() {
45
+ const children = Children.origin;
52
46
  if (typeof children === "function") {
53
- var _reduce = [].concat(_toConsumableArray(contexts), [Context]).reduce(function(acc, ctx) {
54
- var _ref3 = React.useContext(ctx), handlers2 = _ref3.handlers, propsAndGetters = _objectWithoutProperties(_ref3, _excluded2);
55
- var _splitPropsAndGetters = splitPropsAndGetters(propsAndGetters), props2 = _splitPropsAndGetters.props, getters2 = _splitPropsAndGetters.getters;
56
- return Object.assign({}, acc, _objectSpread({
47
+ const {
48
+ handlers = {},
49
+ getters = {},
50
+ ...props
51
+ } = [...contexts, Context].reduce((acc, ctx) => {
52
+ const {
53
+ handlers: handlers2,
54
+ ...propsAndGetters
55
+ } = React.useContext(ctx);
56
+ const {
57
+ props: props2,
58
+ getters: getters2
59
+ } = splitPropsAndGetters(propsAndGetters);
60
+ return Object.assign({}, acc, {
57
61
  handlers: Object.assign({}, acc.handlers, handlers2),
58
- getters: mergeObjects(acc.getters, getters2)
59
- }, props2));
60
- }, _Children.props), _reduce$handlers = _reduce.handlers, handlers = _reduce$handlers === void 0 ? {} : _reduce$handlers, _reduce$getters = _reduce.getters, getters = _reduce$getters === void 0 ? {} : _reduce$getters, props = _objectWithoutProperties(_reduce, _excluded);
61
- var mergedGetters = Object.entries(getters).reduce(function(acc, _ref4) {
62
- var _ref5 = _slicedToArray(_ref4, 2), key = _ref5[0], value = _ref5[1];
62
+ getters: mergeObjects(acc.getters, getters2),
63
+ ...props2
64
+ });
65
+ }, Children.props);
66
+ const mergedGetters = Object.entries(getters).reduce((acc, [key, value]) => {
63
67
  acc[key] = assignGettersChain(value);
64
68
  return acc;
65
69
  }, {});
66
- return children(_objectSpread(_objectSpread({}, props), mergedGetters), handlers);
70
+ return children({
71
+ ...props,
72
+ ...mergedGetters
73
+ }, handlers);
67
74
  } else if (children === void 0) {
68
75
  return null;
69
76
  }
70
77
  return children;
71
78
  };
72
- _Children.origin = null;
73
- _Children.props = {};
74
- _Children[CHILDREN_COMPONENT] = true;
75
- return _Children;
79
+ Children.origin = null;
80
+ Children.props = {};
81
+ Children[CHILDREN_COMPONENT] = true;
82
+ return Children;
76
83
  }
77
84
  function Enhancement(Context, parent) {
78
85
  return {
79
- init: function init() {
80
- var contexts = (Array.isArray(parent) ? parent : [parent]).map(function(component) {
81
- return component[CONTEXT_COMPONENT];
82
- }).filter(Boolean);
86
+ init: function() {
87
+ const contexts = (Array.isArray(parent) ? parent : [parent]).map((component) => component[CONTEXT_COMPONENT]).filter(Boolean);
83
88
  this[CHILDREN_SELF] = createChildren(Context, contexts);
84
89
  },
85
- asProps: function asProps(props) {
90
+ asProps: function(props) {
86
91
  this[CHILDREN_SELF].origin = props.children;
87
92
  this[CHILDREN_SELF].props = props;
88
- return _objectSpread(_objectSpread({}, props), {}, {
93
+ return {
94
+ ...props,
89
95
  Children: this[CHILDREN_SELF]
90
- });
96
+ };
91
97
  }
92
98
  };
93
99
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Children.mjs","names":["React","CONTEXT_COMPONENT","CHILDREN_COMPONENT","CHILDREN_SELF","Symbol","GETTER_REG","splitPropsAndGetters","props","Object","entries","reduce","acc","_ref","_ref2","_slicedToArray","key","value","exec","getters","getterToArray","getter","Array","isArray","mergeObjects","a","arguments","length","undefined","b","core","_objectSpread","keys","concat","_toConsumableArray","assignGettersChain","createChildren","Context","contexts","Children","children","origin","_reduce","ctx","_ref3","useContext","handlers","propsAndGetters","_objectWithoutProperties","_excluded2","_splitPropsAndGetters","assign","_reduce$handlers","_reduce$getters","_excluded","mergedGetters","_ref4","_ref5","Enhancement","parent","init","map","component","filter","Boolean","asProps"],"sources":["../../src/enhancement/Children.tsx"],"sourcesContent":["import React from 'react';\n\nimport { CONTEXT_COMPONENT, CHILDREN_COMPONENT } from '../core-types/symbols';\n\nconst CHILDREN_SELF = Symbol('CHILDREN_SELF');\n\nconst GETTER_REG = /^get[\\w]+Props$/;\n\nfunction splitPropsAndGetters(props: any) {\n return Object.entries(props).reduce(\n (acc: any, [key, value]) => {\n if (GETTER_REG.exec(key) === null) {\n acc.props[key] = value;\n } else {\n acc.getters[key] = value;\n }\n return acc;\n },\n { props: {}, getters: {} },\n );\n}\n\nfunction getterToArray(getter: any) {\n if (!Array.isArray(getter)) {\n return typeof getter === 'function' ? [getter] : [];\n }\n return getter;\n}\n\nfunction mergeObjects(a: any = {}, b: any = {}) {\n const core = { ...a, ...b };\n return Object.keys(core).reduce((acc: any, key) => {\n a[key] = getterToArray(a[key]);\n b[key] = getterToArray(b[key]);\n acc[key] = [...a[key], ...b[key]];\n return acc;\n }, {});\n}\n\nfunction assignGettersChain(getters: Array<Function>) {\n return function (props = {}) {\n return getters.reduce((acc, getter) => {\n return getter(acc);\n }, props);\n };\n}\n\nfunction createChildren(Context: any, contexts: any) {\n const Children: any = function () {\n const children = Children.origin;\n if (typeof children === 'function') {\n const {\n handlers = {},\n getters = {},\n ...props\n } = [...contexts, Context].reduce((acc, ctx) => {\n const { handlers, ...propsAndGetters } = React.useContext(ctx) as any;\n const { props, getters } = splitPropsAndGetters(propsAndGetters);\n return Object.assign({}, acc, {\n handlers: Object.assign({}, acc.handlers, handlers),\n getters: mergeObjects(acc.getters, getters),\n ...props,\n });\n }, Children.props);\n\n const mergedGetters = Object.entries(getters).reduce((acc: any, [key, value]) => {\n acc[key] = assignGettersChain(value as []);\n return acc;\n }, {});\n\n return children({ ...props, ...mergedGetters }, handlers);\n } else if (children === undefined) {\n return null;\n }\n return children;\n };\n Children.origin = null;\n Children.props = {};\n Children[CHILDREN_COMPONENT] = true;\n return Children;\n}\n\nfunction Enhancement(this: any, Context: any, parent: any) {\n return {\n init: function (this: any) {\n const contexts = (Array.isArray(parent) ? parent : [parent])\n .map((component) => component[CONTEXT_COMPONENT])\n .filter(Boolean);\n this[CHILDREN_SELF] = createChildren(Context, contexts);\n },\n asProps: function (this: any, props: any) {\n // TODO: learn the reason what it was used for (by lsroman)\n // this[CHILDREN_SELF].origin = _Children ? _Children.origin : children;\n this[CHILDREN_SELF].origin = props.children;\n this[CHILDREN_SELF].props = props;\n return {\n ...props,\n Children: this[CHILDREN_SELF],\n };\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Children.mjs","names":["React","CONTEXT_COMPONENT","CHILDREN_COMPONENT","CHILDREN_SELF","Symbol","GETTER_REG","splitPropsAndGetters","props","Object","entries","reduce","acc","key","value","exec","getters","getterToArray","getter","Array","isArray","mergeObjects","a","b","core","keys","assignGettersChain","createChildren","Context","contexts","Children","children","origin","handlers","ctx","propsAndGetters","useContext","assign","mergedGetters","undefined","Enhancement","parent","init","map","component","filter","Boolean","asProps"],"sources":["../../src/enhancement/Children.tsx"],"sourcesContent":["import React from 'react';\n\nimport { CONTEXT_COMPONENT, CHILDREN_COMPONENT } from '../core-types/symbols';\n\nconst CHILDREN_SELF = Symbol('CHILDREN_SELF');\n\nconst GETTER_REG = /^get[\\w]+Props$/;\n\nfunction splitPropsAndGetters(props: any) {\n return Object.entries(props).reduce(\n (acc: any, [key, value]) => {\n if (GETTER_REG.exec(key) === null) {\n acc.props[key] = value;\n } else {\n acc.getters[key] = value;\n }\n return acc;\n },\n { props: {}, getters: {} },\n );\n}\n\nfunction getterToArray(getter: any) {\n if (!Array.isArray(getter)) {\n return typeof getter === 'function' ? [getter] : [];\n }\n return getter;\n}\n\nfunction mergeObjects(a: any = {}, b: any = {}) {\n const core = { ...a, ...b };\n return Object.keys(core).reduce((acc: any, key) => {\n a[key] = getterToArray(a[key]);\n b[key] = getterToArray(b[key]);\n acc[key] = [...a[key], ...b[key]];\n return acc;\n }, {});\n}\n\nfunction assignGettersChain(getters: Array<Function>) {\n return function (props = {}) {\n return getters.reduce((acc, getter) => {\n return getter(acc);\n }, props);\n };\n}\n\nfunction createChildren(Context: any, contexts: any) {\n const Children: any = function () {\n const children = Children.origin;\n if (typeof children === 'function') {\n const {\n handlers = {},\n getters = {},\n ...props\n } = [...contexts, Context].reduce((acc, ctx) => {\n const { handlers, ...propsAndGetters } = React.useContext(ctx) as any;\n const { props, getters } = splitPropsAndGetters(propsAndGetters);\n return Object.assign({}, acc, {\n handlers: Object.assign({}, acc.handlers, handlers),\n getters: mergeObjects(acc.getters, getters),\n ...props,\n });\n }, Children.props);\n\n const mergedGetters = Object.entries(getters).reduce((acc: any, [key, value]) => {\n acc[key] = assignGettersChain(value as []);\n return acc;\n }, {});\n\n return children({ ...props, ...mergedGetters }, handlers);\n } else if (children === undefined) {\n return null;\n }\n return children;\n };\n Children.origin = null;\n Children.props = {};\n Children[CHILDREN_COMPONENT] = true;\n return Children;\n}\n\nfunction Enhancement(this: any, Context: any, parent: any) {\n return {\n init: function (this: any) {\n const contexts = (Array.isArray(parent) ? parent : [parent])\n .map((component) => component[CONTEXT_COMPONENT])\n .filter(Boolean);\n this[CHILDREN_SELF] = createChildren(Context, contexts);\n },\n asProps: function (this: any, props: any) {\n // TODO: learn the reason what it was used for (by lsroman)\n // this[CHILDREN_SELF].origin = _Children ? _Children.origin : children;\n this[CHILDREN_SELF].origin = props.children;\n this[CHILDREN_SELF].props = props;\n return {\n ...props,\n Children: this[CHILDREN_SELF],\n };\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"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","ignoreList":[]}
@@ -1,54 +1,52 @@
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 _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
7
+ exports.default = void 0;
11
8
  var _react = _interopRequireDefault(require("react"));
12
9
  var _assignProps = _interopRequireDefault(require("../utils/assignProps"));
13
- var _ref4 = require("../utils/ref");
14
- var _excluded = ["render"],
15
- _excluded2 = ["Root", "styles", "children", "Children", "forwardRef"];
10
+ var _ref = require("../utils/ref");
16
11
  function createRootRender() {
17
12
  // @ts-ignore
18
- var Root = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
19
- var Tag = _ref.render,
20
- source = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
21
- var _Root$props = Root.props,
22
- _Root = _Root$props.Root,
23
- _styles = _Root$props.styles,
24
- _children = _Root$props.children,
25
- Children = _Root$props.Children,
26
- _Root$props$forwardRe = _Root$props.forwardRef,
27
- forwardRef = _Root$props$forwardRe === void 0 ? null : _Root$props$forwardRe,
28
- props = (0, _objectWithoutProperties2["default"])(_Root$props, _excluded2);
29
- var clearProps = Object.entries(props).reduce(function (props, _ref2) {
30
- var _ref3 = (0, _slicedToArray2["default"])(_ref2, 2),
31
- name = _ref3[0],
32
- value = _ref3[1];
13
+ const Root = /*#__PURE__*/_react.default.forwardRef(function ({
14
+ render: Tag,
15
+ ...source
16
+ }, ref) {
17
+ const {
18
+ Root: _Root,
19
+ styles: _styles,
20
+ children: _children,
21
+ Children,
22
+ forwardRef = null,
23
+ ...props
24
+ // @ts-ignore
25
+ } = Root.props;
26
+ const clearProps = Object.entries(props).reduce((props, [name, value]) => {
33
27
  if (value !== undefined) {
34
28
  props[name] = value;
35
29
  }
36
30
  return props;
37
31
  }, {});
38
- var child = {};
32
+ const child = {};
39
33
  // TODO: need to find better check solution (by lsroman)
40
34
  if (typeof Children.origin !== 'undefined') {
41
35
  // @ts-ignore
42
- child.children = /*#__PURE__*/_react["default"].createElement(Children, null);
36
+ child.children = /*#__PURE__*/_react.default.createElement(Children, null);
43
37
  }
44
- var other = (0, _assignProps["default"])((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, clearProps), {}, {
45
- ref: (0, _ref4.useForkRef)(forwardRef, ref)
46
- }), (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, child), source));
38
+ const other = (0, _assignProps.default)({
39
+ ...clearProps,
40
+ ref: (0, _ref.useForkRef)(forwardRef, ref)
41
+ }, {
42
+ ...child,
43
+ ...source
44
+ });
47
45
  if (!Tag) {
48
46
  throw new Error('`render` prop of Root is not provided');
49
47
  }
50
- if (Tag === _react["default"].Fragment) return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, other.children);
51
- return /*#__PURE__*/_react["default"].createElement(Tag, other);
48
+ if (Tag === _react.default.Fragment) return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, other.children);
49
+ return /*#__PURE__*/_react.default.createElement(Tag, other);
52
50
  });
53
51
  // @ts-ignore
54
52
  Root.props = {};
@@ -56,22 +54,23 @@ function createRootRender() {
56
54
  }
57
55
  function Enhancement() {
58
56
  return {
59
- init: function init() {
57
+ init: function () {
60
58
  this.Root = createRootRender();
61
59
  },
62
- asProps: function asProps(props, _WrapperComponent, isFunction) {
60
+ asProps: function (props, _WrapperComponent, isFunction) {
63
61
  if (isFunction) {
64
- return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, props), {}, {
62
+ return {
63
+ ...props,
65
64
  Root: this.Root
66
- });
65
+ };
67
66
  }
68
67
  return props;
69
68
  },
70
- render: function render(_render, props) {
69
+ render: function (render, props) {
71
70
  this.Root.props = props;
72
- return _render;
71
+ return render;
73
72
  }
74
73
  };
75
74
  }
76
- var _default = exports["default"] = Enhancement;
75
+ var _default = exports.default = Enhancement;
77
76
  //# sourceMappingURL=Root.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Root.js","names":["_react","_interopRequireDefault","require","_assignProps","_ref4","_excluded","_excluded2","createRootRender","Root","React","forwardRef","_ref","ref","Tag","render","source","_objectWithoutProperties2","_Root$props","props","_Root","_styles","styles","_children","children","Children","_Root$props$forwardRe","clearProps","Object","entries","reduce","_ref2","_ref3","_slicedToArray2","name","value","undefined","child","origin","createElement","other","assignProps","_objectSpread2","useForkRef","Error","Fragment","Enhancement","init","asProps","_WrapperComponent","isFunction","_default","exports"],"sources":["../../src/enhancement/Root.tsx"],"sourcesContent":["import React from 'react';\n\nimport assignProps from '../utils/assignProps';\nimport { useForkRef } from '../utils/ref';\n\nfunction createRootRender() {\n // @ts-ignore\n const Root = React.forwardRef(function ({ render: Tag, ...source }, ref) {\n const {\n Root: _Root,\n\n styles: _styles,\n\n children: _children,\n Children,\n forwardRef = null,\n ...props\n // @ts-ignore\n } = Root.props;\n\n const clearProps = Object.entries(props).reduce((props: any, [name, value]) => {\n if (value !== undefined) {\n props[name] = value;\n }\n return props;\n }, {});\n\n const child = {};\n // TODO: need to find better check solution (by lsroman)\n if (typeof Children.origin !== 'undefined') {\n // @ts-ignore\n child.children = <Children />;\n }\n\n const other = assignProps(\n {\n ...clearProps,\n ref: useForkRef(forwardRef, ref),\n },\n {\n ...child,\n ...source,\n },\n );\n if (!Tag) {\n throw new Error('`render` prop of Root is not provided');\n }\n if (Tag === React.Fragment) return <React.Fragment>{other.children}</React.Fragment>;\n\n return <Tag {...other} />;\n });\n // @ts-ignore\n Root.props = {};\n return Root;\n}\n\nfunction Enhancement() {\n return {\n init: function (this: any) {\n this.Root = createRootRender();\n },\n asProps: function (this: any, props: any, _WrapperComponent: any, isFunction: boolean) {\n if (isFunction) {\n return {\n ...props,\n Root: this.Root,\n };\n }\n return props;\n },\n render: function (this: any, render: any, props: any) {\n this.Root.props = props;\n return render;\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Root.js","names":["_react","_interopRequireDefault","require","_assignProps","_ref","createRootRender","Root","React","forwardRef","render","Tag","source","ref","_Root","styles","_styles","children","_children","Children","props","clearProps","Object","entries","reduce","name","value","undefined","child","origin","default","createElement","other","assignProps","useForkRef","Error","Fragment","Enhancement","init","asProps","_WrapperComponent","isFunction","_default","exports"],"sources":["../../src/enhancement/Root.tsx"],"sourcesContent":["import React from 'react';\n\nimport assignProps from '../utils/assignProps';\nimport { useForkRef } from '../utils/ref';\n\nfunction createRootRender() {\n // @ts-ignore\n const Root = React.forwardRef(function ({ render: Tag, ...source }, ref) {\n const {\n Root: _Root,\n\n styles: _styles,\n\n children: _children,\n Children,\n forwardRef = null,\n ...props\n // @ts-ignore\n } = Root.props;\n\n const clearProps = Object.entries(props).reduce((props: any, [name, value]) => {\n if (value !== undefined) {\n props[name] = value;\n }\n return props;\n }, {});\n\n const child = {};\n // TODO: need to find better check solution (by lsroman)\n if (typeof Children.origin !== 'undefined') {\n // @ts-ignore\n child.children = <Children />;\n }\n\n const other = assignProps(\n {\n ...clearProps,\n ref: useForkRef(forwardRef, ref),\n },\n {\n ...child,\n ...source,\n },\n );\n if (!Tag) {\n throw new Error('`render` prop of Root is not provided');\n }\n if (Tag === React.Fragment) return <React.Fragment>{other.children}</React.Fragment>;\n\n return <Tag {...other} />;\n });\n // @ts-ignore\n Root.props = {};\n return Root;\n}\n\nfunction Enhancement() {\n return {\n init: function (this: any) {\n this.Root = createRootRender();\n },\n asProps: function (this: any, props: any, _WrapperComponent: any, isFunction: boolean) {\n if (isFunction) {\n return {\n ...props,\n Root: this.Root,\n };\n }\n return props;\n },\n render: function (this: any, render: any, props: any) {\n this.Root.props = props;\n return render;\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,IAAA,GAAAF,OAAA;AAEA,SAASG,gBAAgBA,CAAA,EAAG;EAC1B;EACA,MAAMC,IAAI,gBAAGC,cAAK,CAACC,UAAU,CAAC,UAAU;IAAEC,MAAM,EAAEC,GAAG;IAAE,GAAGC;EAAO,CAAC,EAAEC,GAAG,EAAE;IACvE,MAAM;MACJN,IAAI,EAAEO,KAAK;MAEXC,MAAM,EAAEC,OAAO;MAEfC,QAAQ,EAAEC,SAAS;MACnBC,QAAQ;MACRV,UAAU,GAAG,IAAI;MACjB,GAAGW;MACH;IACF,CAAC,GAAGb,IAAI,CAACa,KAAK;IAEd,MAAMC,UAAU,GAAGC,MAAM,CAACC,OAAO,CAACH,KAAK,CAAC,CAACI,MAAM,CAAC,CAACJ,KAAU,EAAE,CAACK,IAAI,EAAEC,KAAK,CAAC,KAAK;MAC7E,IAAIA,KAAK,KAAKC,SAAS,EAAE;QACvBP,KAAK,CAACK,IAAI,CAAC,GAAGC,KAAK;MACrB;MACA,OAAON,KAAK;IACd,CAAC,EAAE,CAAC,CAAC,CAAC;IAEN,MAAMQ,KAAK,GAAG,CAAC,CAAC;IAChB;IACA,IAAI,OAAOT,QAAQ,CAACU,MAAM,KAAK,WAAW,EAAE;MAC1C;MACAD,KAAK,CAACX,QAAQ,gBAAGhB,MAAA,CAAA6B,OAAA,CAAAC,aAAA,CAACZ,QAAQ,MAAE,CAAC;IAC/B;IAEA,MAAMa,KAAK,GAAG,IAAAC,oBAAW,EACvB;MACE,GAAGZ,UAAU;MACbR,GAAG,EAAE,IAAAqB,eAAU,EAACzB,UAAU,EAAEI,GAAG;IACjC,CAAC,EACD;MACE,GAAGe,KAAK;MACR,GAAGhB;IACL,CACF,CAAC;IACD,IAAI,CAACD,GAAG,EAAE;MACR,MAAM,IAAIwB,KAAK,CAAC,uCAAuC,CAAC;IAC1D;IACA,IAAIxB,GAAG,KAAKH,cAAK,CAAC4B,QAAQ,EAAE,oBAAOnC,MAAA,CAAA6B,OAAA,CAAAC,aAAA,CAAC9B,MAAA,CAAA6B,OAAK,CAACM,QAAQ,QAAEJ,KAAK,CAACf,QAAyB,CAAC;IAEpF,oBAAOhB,MAAA,CAAA6B,OAAA,CAAAC,aAAA,CAACpB,GAAG,EAAKqB,KAAQ,CAAC;EAC3B,CAAC,CAAC;EACF;EACAzB,IAAI,CAACa,KAAK,GAAG,CAAC,CAAC;EACf,OAAOb,IAAI;AACb;AAEA,SAAS8B,WAAWA,CAAA,EAAG;EACrB,OAAO;IACLC,IAAI,EAAE,SAAAA,CAAA,EAAqB;MACzB,IAAI,CAAC/B,IAAI,GAAGD,gBAAgB,CAAC,CAAC;IAChC,CAAC;IACDiC,OAAO,EAAE,SAAAA,CAAqBnB,KAAU,EAAEoB,iBAAsB,EAAEC,UAAmB,EAAE;MACrF,IAAIA,UAAU,EAAE;QACd,OAAO;UACL,GAAGrB,KAAK;UACRb,IAAI,EAAE,IAAI,CAACA;QACb,CAAC;MACH;MACA,OAAOa,KAAK;IACd,CAAC;IACDV,MAAM,EAAE,SAAAA,CAAqBA,MAAW,EAAEU,KAAU,EAAE;MACpD,IAAI,CAACb,IAAI,CAACa,KAAK,GAAGA,KAAK;MACvB,OAAOV,MAAM;IACf;EACF,CAAC;AACH;AAAC,IAAAgC,QAAA,GAAAC,OAAA,CAAAb,OAAA,GAEcO,WAAW","ignoreList":[]}
@@ -1,28 +1,37 @@
1
- import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
1
  import React from "react";
5
2
  import assignProps from "../utils/assignProps.mjs";
6
3
  import { useForkRef } from "../utils/ref.mjs";
7
- var _excluded = ["render"], _excluded2 = ["Root", "styles", "children", "Children", "forwardRef"];
8
4
  function createRootRender() {
9
- var Root = /* @__PURE__ */ React.forwardRef(function(_ref, ref) {
10
- var Tag = _ref.render, source = _objectWithoutProperties(_ref, _excluded);
11
- var _Root$props = Root.props, _Root = _Root$props.Root, _styles = _Root$props.styles, _children = _Root$props.children, Children = _Root$props.Children, _Root$props$forwardRe = _Root$props.forwardRef, forwardRef = _Root$props$forwardRe === void 0 ? null : _Root$props$forwardRe, props = _objectWithoutProperties(_Root$props, _excluded2);
12
- var clearProps = Object.entries(props).reduce(function(props2, _ref2) {
13
- var _ref3 = _slicedToArray(_ref2, 2), name = _ref3[0], value = _ref3[1];
5
+ const Root = /* @__PURE__ */ React.forwardRef(function({
6
+ render: Tag,
7
+ ...source
8
+ }, ref) {
9
+ const {
10
+ Root: _Root,
11
+ styles: _styles,
12
+ children: _children,
13
+ Children,
14
+ forwardRef = null,
15
+ ...props
16
+ // @ts-ignore
17
+ } = Root.props;
18
+ const clearProps = Object.entries(props).reduce((props2, [name, value]) => {
14
19
  if (value !== void 0) {
15
20
  props2[name] = value;
16
21
  }
17
22
  return props2;
18
23
  }, {});
19
- var child = {};
24
+ const child = {};
20
25
  if (typeof Children.origin !== "undefined") {
21
26
  child.children = /* @__PURE__ */ React.createElement(Children, null);
22
27
  }
23
- var other = assignProps(_objectSpread(_objectSpread({}, clearProps), {}, {
28
+ const other = assignProps({
29
+ ...clearProps,
24
30
  ref: useForkRef(forwardRef, ref)
25
- }), _objectSpread(_objectSpread({}, child), source));
31
+ }, {
32
+ ...child,
33
+ ...source
34
+ });
26
35
  if (!Tag) {
27
36
  throw new Error("`render` prop of Root is not provided");
28
37
  }
@@ -34,20 +43,21 @@ function createRootRender() {
34
43
  }
35
44
  function Enhancement() {
36
45
  return {
37
- init: function init() {
46
+ init: function() {
38
47
  this.Root = createRootRender();
39
48
  },
40
- asProps: function asProps(props, _WrapperComponent, isFunction) {
49
+ asProps: function(props, _WrapperComponent, isFunction) {
41
50
  if (isFunction) {
42
- return _objectSpread(_objectSpread({}, props), {}, {
51
+ return {
52
+ ...props,
43
53
  Root: this.Root
44
- });
54
+ };
45
55
  }
46
56
  return props;
47
57
  },
48
- render: function render(_render, props) {
58
+ render: function(render, props) {
49
59
  this.Root.props = props;
50
- return _render;
60
+ return render;
51
61
  }
52
62
  };
53
63
  }