@semcore/core 17.0.0 → 17.0.1-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 +3 -111
  2. package/README.md +35 -5
  3. package/lib/LastInteractionType.js +36 -22
  4. package/lib/LastInteractionType.js.map +1 -1
  5. package/lib/LastInteractionType.mjs +33 -19
  6. package/lib/LastInteractionType.mjs.map +1 -1
  7. package/lib/core-types/Component.js +41 -25
  8. package/lib/core-types/Component.js.map +1 -1
  9. package/lib/core-types/Component.mjs +38 -18
  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 +238 -158
  16. package/lib/coreFactory.js.map +1 -1
  17. package/lib/coreFactory.mjs +189 -133
  18. package/lib/coreFactory.mjs.map +1 -1
  19. package/lib/decorators/propsObserver.js +64 -36
  20. package/lib/decorators/propsObserver.js.map +1 -1
  21. package/lib/decorators/propsObserver.mjs +61 -33
  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 +59 -51
  28. package/lib/enhancement/Children.js.map +1 -1
  29. package/lib/enhancement/Children.mjs +41 -47
  30. package/lib/enhancement/Children.mjs.map +1 -1
  31. package/lib/enhancement/Root.js +37 -36
  32. package/lib/enhancement/Root.js.map +1 -1
  33. package/lib/enhancement/Root.mjs +18 -28
  34. package/lib/enhancement/Root.mjs.map +1 -1
  35. package/lib/enhancement/dataName.js +8 -7
  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 +9 -6
  40. package/lib/enhancement/enhance.js.map +1 -1
  41. package/lib/enhancement/enhance.mjs +7 -4
  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 +9 -10
  50. package/lib/enhancement/i18n.mjs.map +1 -1
  51. package/lib/enhancement/inheritedName.js +8 -7
  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 +56 -47
  56. package/lib/enhancement/staticChildren.js.map +1 -1
  57. package/lib/enhancement/staticChildren.mjs +48 -43
  58. package/lib/enhancement/staticChildren.mjs.map +1 -1
  59. package/lib/enhancement/style.js +27 -29
  60. package/lib/enhancement/style.js.map +1 -1
  61. package/lib/enhancement/style.mjs +20 -26
  62. package/lib/enhancement/style.mjs.map +1 -1
  63. package/lib/enhancement/uncontrolledProps.js +65 -46
  64. package/lib/enhancement/uncontrolledProps.js.map +1 -1
  65. package/lib/enhancement/uncontrolledProps.mjs +52 -43
  66. package/lib/enhancement/uncontrolledProps.mjs.map +1 -1
  67. package/lib/esm/LastInteractionType.mjs +33 -19
  68. package/lib/esm/core-types/Component.mjs +38 -18
  69. package/lib/esm/core-types/symbols.mjs +9 -9
  70. package/lib/esm/coreFactory.mjs +189 -133
  71. package/lib/esm/enhancement/Children.mjs +41 -47
  72. package/lib/esm/enhancement/Root.mjs +18 -28
  73. package/lib/esm/enhancement/dataName.mjs +5 -5
  74. package/lib/esm/enhancement/enhance.mjs +7 -4
  75. package/lib/esm/enhancement/functionDefaultProps.mjs +4 -4
  76. package/lib/esm/enhancement/i18n.mjs +9 -10
  77. package/lib/esm/enhancement/inheritedName.mjs +5 -5
  78. package/lib/esm/enhancement/staticChildren.mjs +48 -43
  79. package/lib/esm/enhancement/style.mjs +20 -26
  80. package/lib/esm/enhancement/uncontrolledProps.mjs +52 -43
  81. package/lib/esm/register.mjs +20 -12
  82. package/lib/esm/styled/reshadow-core.mjs +111 -98
  83. package/lib/esm/styled/sstyled.mjs +41 -31
  84. package/lib/esm/utils/assignProps.mjs +36 -32
  85. package/lib/esm/utils/enhances/WithI18n.mjs +17 -15
  86. package/lib/esm/utils/enhances/i18nEnhance.mjs +61 -47
  87. package/lib/esm/utils/logger.mjs +21 -13
  88. package/lib/esm/utils/pick.mjs +4 -4
  89. package/lib/esm/utils/ref.mjs +43 -27
  90. package/lib/esm/utils/use/useEnhancedEffect.mjs +1 -1
  91. package/lib/index.js +17 -17
  92. package/lib/register.js +24 -17
  93. package/lib/register.js.map +1 -1
  94. package/lib/register.mjs +20 -12
  95. package/lib/register.mjs.map +1 -1
  96. package/lib/styled/index.js +4 -4
  97. package/lib/styled/reshadow-core.js +104 -102
  98. package/lib/styled/reshadow-core.js.map +1 -1
  99. package/lib/styled/reshadow-core.mjs +111 -98
  100. package/lib/styled/reshadow-core.mjs.map +1 -1
  101. package/lib/styled/sstyled.js +53 -31
  102. package/lib/styled/sstyled.js.map +1 -1
  103. package/lib/styled/sstyled.mjs +41 -31
  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 +10 -8
  116. package/lib/utils/CSSinJS.js.map +1 -1
  117. package/lib/utils/CSSinJS.mjs +7 -6
  118. package/lib/utils/CSSinJS.mjs.map +1 -1
  119. package/lib/utils/ThemeProvider.js +51 -44
  120. package/lib/utils/ThemeProvider.js.map +1 -1
  121. package/lib/utils/ThemeProvider.mjs +47 -36
  122. package/lib/utils/ThemeProvider.mjs.map +1 -1
  123. package/lib/utils/addonText.js +7 -4
  124. package/lib/utils/addonText.js.map +1 -1
  125. package/lib/utils/addonText.mjs +5 -2
  126. package/lib/utils/addonText.mjs.map +1 -1
  127. package/lib/utils/addonTextChildren.js +21 -15
  128. package/lib/utils/addonTextChildren.js.map +1 -1
  129. package/lib/utils/addonTextChildren.mjs +13 -7
  130. package/lib/utils/addonTextChildren.mjs.map +1 -1
  131. package/lib/utils/ariaProps.js +5 -7
  132. package/lib/utils/ariaProps.js.map +1 -1
  133. package/lib/utils/ariaProps.mjs +5 -7
  134. package/lib/utils/ariaProps.mjs.map +1 -1
  135. package/lib/utils/assignProps.js +37 -33
  136. package/lib/utils/assignProps.js.map +1 -1
  137. package/lib/utils/assignProps.mjs +36 -32
  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 +95 -72
  142. package/lib/utils/color.js.map +1 -1
  143. package/lib/utils/color.mjs +94 -71
  144. package/lib/utils/color.mjs.map +1 -1
  145. package/lib/utils/compose.js +12 -3
  146. package/lib/utils/compose.js.map +1 -1
  147. package/lib/utils/compose.mjs +11 -2
  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 +4 -3
  154. package/lib/utils/cssToIntDefault.js.map +1 -1
  155. package/lib/utils/cssToIntDefault.mjs +3 -2
  156. package/lib/utils/cssToIntDefault.mjs.map +1 -1
  157. package/lib/utils/enhances/WithCSS.js +8 -10
  158. package/lib/utils/enhances/WithCSS.js.map +1 -1
  159. package/lib/utils/enhances/WithCSS.mjs +6 -7
  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 +17 -15
  164. package/lib/utils/enhances/WithI18n.mjs.map +1 -1
  165. package/lib/utils/enhances/a11yEnhance.js +39 -34
  166. package/lib/utils/enhances/a11yEnhance.js.map +1 -1
  167. package/lib/utils/enhances/a11yEnhance.mjs +36 -32
  168. package/lib/utils/enhances/a11yEnhance.mjs.map +1 -1
  169. package/lib/utils/enhances/animatedSizeEnhance.js +63 -55
  170. package/lib/utils/enhances/animatedSizeEnhance.js.map +1 -1
  171. package/lib/utils/enhances/animatedSizeEnhance.mjs +58 -50
  172. package/lib/utils/enhances/animatedSizeEnhance.mjs.map +1 -1
  173. package/lib/utils/enhances/contextEnhance.js +11 -12
  174. package/lib/utils/enhances/contextEnhance.js.map +1 -1
  175. package/lib/utils/enhances/contextEnhance.mjs +8 -9
  176. package/lib/utils/enhances/contextEnhance.mjs.map +1 -1
  177. package/lib/utils/enhances/i18nEnhance.js +67 -51
  178. package/lib/utils/enhances/i18nEnhance.js.map +1 -1
  179. package/lib/utils/enhances/i18nEnhance.mjs +61 -47
  180. package/lib/utils/enhances/i18nEnhance.mjs.map +1 -1
  181. package/lib/utils/enhances/resolveColorEnhance.js +10 -12
  182. package/lib/utils/enhances/resolveColorEnhance.js.map +1 -1
  183. package/lib/utils/enhances/resolveColorEnhance.mjs +6 -8
  184. package/lib/utils/enhances/resolveColorEnhance.mjs.map +1 -1
  185. package/lib/utils/eventEmitter.js +57 -30
  186. package/lib/utils/eventEmitter.js.map +1 -1
  187. package/lib/utils/eventEmitter.mjs +55 -26
  188. package/lib/utils/eventEmitter.mjs.map +1 -1
  189. package/lib/utils/findComponent.js +42 -35
  190. package/lib/utils/findComponent.js.map +1 -1
  191. package/lib/utils/findComponent.mjs +33 -26
  192. package/lib/utils/findComponent.mjs.map +1 -1
  193. package/lib/utils/fire.js +13 -7
  194. package/lib/utils/fire.js.map +1 -1
  195. package/lib/utils/fire.mjs +11 -5
  196. package/lib/utils/fire.mjs.map +1 -1
  197. package/lib/utils/focus-lock/focusBorders.js +32 -28
  198. package/lib/utils/focus-lock/focusBorders.js.map +1 -1
  199. package/lib/utils/focus-lock/focusBorders.mjs +32 -26
  200. package/lib/utils/focus-lock/focusBorders.mjs.map +1 -1
  201. package/lib/utils/focus-lock/getFocusableIn.js +6 -4
  202. package/lib/utils/focus-lock/getFocusableIn.js.map +1 -1
  203. package/lib/utils/focus-lock/getFocusableIn.mjs +6 -3
  204. package/lib/utils/focus-lock/getFocusableIn.mjs.map +1 -1
  205. package/lib/utils/focus-lock/isFocusInside.js +6 -5
  206. package/lib/utils/focus-lock/isFocusInside.js.map +1 -1
  207. package/lib/utils/focus-lock/isFocusInside.mjs +6 -4
  208. package/lib/utils/focus-lock/isFocusInside.mjs.map +1 -1
  209. package/lib/utils/focus-lock/isFocusable.js +12 -9
  210. package/lib/utils/focus-lock/isFocusable.js.map +1 -1
  211. package/lib/utils/focus-lock/isFocusable.mjs +11 -8
  212. package/lib/utils/focus-lock/isFocusable.mjs.map +1 -1
  213. package/lib/utils/focus-lock/setFocus.js +27 -21
  214. package/lib/utils/focus-lock/setFocus.js.map +1 -1
  215. package/lib/utils/focus-lock/setFocus.mjs +25 -19
  216. package/lib/utils/focus-lock/setFocus.mjs.map +1 -1
  217. package/lib/utils/getAccessibleName.js +22 -10
  218. package/lib/utils/getAccessibleName.js.map +1 -1
  219. package/lib/utils/getAccessibleName.mjs +21 -10
  220. package/lib/utils/getAccessibleName.mjs.map +1 -1
  221. package/lib/utils/getDisplayName.js +1 -1
  222. package/lib/utils/getEventTarget.js +32 -13
  223. package/lib/utils/getEventTarget.js.map +1 -1
  224. package/lib/utils/getEventTarget.mjs +31 -12
  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 +6 -4
  230. package/lib/utils/getValue.js.map +1 -1
  231. package/lib/utils/getValue.mjs +5 -3
  232. package/lib/utils/getValue.mjs.map +1 -1
  233. package/lib/utils/hasLabels.js +27 -16
  234. package/lib/utils/hasLabels.js.map +1 -1
  235. package/lib/utils/hasLabels.mjs +24 -14
  236. package/lib/utils/hasLabels.mjs.map +1 -1
  237. package/lib/utils/hasParent.js +2 -3
  238. package/lib/utils/hasParent.js.map +1 -1
  239. package/lib/utils/hasParent.mjs +3 -2
  240. package/lib/utils/hasParent.mjs.map +1 -1
  241. package/lib/utils/ifChildren.js +4 -6
  242. package/lib/utils/ifChildren.js.map +1 -1
  243. package/lib/utils/ifChildren.mjs +2 -4
  244. package/lib/utils/ifChildren.mjs.map +1 -1
  245. package/lib/utils/indentStyles.js +10 -5
  246. package/lib/utils/indentStyles.js.map +1 -1
  247. package/lib/utils/indentStyles.mjs +9 -5
  248. package/lib/utils/indentStyles.mjs.map +1 -1
  249. package/lib/utils/injectStyle.js +13 -11
  250. package/lib/utils/injectStyle.js.map +1 -1
  251. package/lib/utils/injectStyle.mjs +10 -9
  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 +9 -7
  258. package/lib/utils/isInteractiveElement.js.map +1 -1
  259. package/lib/utils/isInteractiveElement.mjs +9 -7
  260. package/lib/utils/isInteractiveElement.mjs.map +1 -1
  261. package/lib/utils/isNode.js +5 -4
  262. package/lib/utils/isNode.js.map +1 -1
  263. package/lib/utils/isNode.mjs +2 -1
  264. package/lib/utils/isNode.mjs.map +1 -1
  265. package/lib/utils/isPromise.js +1 -1
  266. package/lib/utils/isRetina.js +2 -7
  267. package/lib/utils/isRetina.js.map +1 -1
  268. package/lib/utils/isRetina.mjs +1 -6
  269. package/lib/utils/isRetina.mjs.map +1 -1
  270. package/lib/utils/logger.js +25 -18
  271. package/lib/utils/logger.js.map +1 -1
  272. package/lib/utils/logger.mjs +21 -13
  273. package/lib/utils/logger.mjs.map +1 -1
  274. package/lib/utils/numericChecker.js +18 -11
  275. package/lib/utils/numericChecker.js.map +1 -1
  276. package/lib/utils/numericChecker.mjs +17 -10
  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 +12 -10
  287. package/lib/utils/propsForElement.js.map +1 -1
  288. package/lib/utils/propsForElement.mjs +10 -8
  289. package/lib/utils/propsForElement.mjs.map +1 -1
  290. package/lib/utils/rafTrottle.js +14 -9
  291. package/lib/utils/rafTrottle.js.map +1 -1
  292. package/lib/utils/rafTrottle.mjs +12 -7
  293. package/lib/utils/rafTrottle.mjs.map +1 -1
  294. package/lib/utils/reactToText.js +8 -5
  295. package/lib/utils/reactToText.js.map +1 -1
  296. package/lib/utils/reactToText.mjs +6 -3
  297. package/lib/utils/reactToText.mjs.map +1 -1
  298. package/lib/utils/ref.js +47 -29
  299. package/lib/utils/ref.js.map +1 -1
  300. package/lib/utils/ref.mjs +43 -27
  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 +18 -8
  309. package/lib/utils/uncontroll.js.map +1 -1
  310. package/lib/utils/uncontroll.mjs +17 -8
  311. package/lib/utils/uncontroll.mjs.map +1 -1
  312. package/lib/utils/uniqueID.js +27 -22
  313. package/lib/utils/uniqueID.js.map +1 -1
  314. package/lib/utils/uniqueID.mjs +25 -18
  315. package/lib/utils/uniqueID.mjs.map +1 -1
  316. package/lib/utils/use/useColorResolver.js +22 -21
  317. package/lib/utils/use/useColorResolver.js.map +1 -1
  318. package/lib/utils/use/useColorResolver.mjs +19 -17
  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 +10 -5
  325. package/lib/utils/use/useEventCallback.js.map +1 -1
  326. package/lib/utils/use/useEventCallback.mjs +8 -3
  327. package/lib/utils/use/useEventCallback.mjs.map +1 -1
  328. package/lib/utils/use/useEventListener.js +15 -11
  329. package/lib/utils/use/useEventListener.js.map +1 -1
  330. package/lib/utils/use/useEventListener.mjs +11 -7
  331. package/lib/utils/use/useEventListener.mjs.map +1 -1
  332. package/lib/utils/use/useFocusLock.js +94 -80
  333. package/lib/utils/use/useFocusLock.js.map +1 -1
  334. package/lib/utils/use/useFocusLock.mjs +88 -71
  335. package/lib/utils/use/useFocusLock.mjs.map +1 -1
  336. package/lib/utils/use/usePreventScroll.js +26 -24
  337. package/lib/utils/use/usePreventScroll.js.map +1 -1
  338. package/lib/utils/use/usePreventScroll.mjs +21 -19
  339. package/lib/utils/use/usePreventScroll.mjs.map +1 -1
  340. package/lib/utils/use/useScrollBarWidth.js +14 -8
  341. package/lib/utils/use/useScrollBarWidth.js.map +1 -1
  342. package/lib/utils/use/useScrollBarWidth.mjs +13 -8
  343. package/lib/utils/use/useScrollBarWidth.mjs.map +1 -1
  344. package/lib/utils/useCssVariable.js +37 -32
  345. package/lib/utils/useCssVariable.js.map +1 -1
  346. package/lib/utils/useCssVariable.mjs +34 -27
  347. package/lib/utils/useCssVariable.mjs.map +1 -1
  348. package/lib/utils/zIndexStacking.js +24 -28
  349. package/lib/utils/zIndexStacking.js.map +1 -1
  350. package/lib/utils/zIndexStacking.mjs +22 -23
  351. package/lib/utils/zIndexStacking.mjs.map +1 -1
  352. package/package.json +12 -316
  353. package/vite.config.ts +0 -22
  354. package/tsconfig-utils.json +0 -4
@@ -1,16 +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;
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"));
8
12
  var _react = _interopRequireDefault(require("react"));
9
13
  var _symbols = require("../core-types/symbols");
10
- const CHILDREN_SELF = Symbol('CHILDREN_SELF');
11
- const GETTER_REG = /^get[\w]+Props$/;
14
+ var _excluded = ["handlers", "getters"],
15
+ _excluded2 = ["handlers"];
16
+ var CHILDREN_SELF = Symbol('CHILDREN_SELF');
17
+ var GETTER_REG = /^get[\w]+Props$/;
12
18
  function splitPropsAndGetters(props) {
13
- return Object.entries(props).reduce((acc, [key, value]) => {
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];
14
23
  if (GETTER_REG.exec(key) === null) {
15
24
  acc.props[key] = value;
16
25
  } else {
@@ -28,83 +37,82 @@ function getterToArray(getter) {
28
37
  }
29
38
  return getter;
30
39
  }
31
- function mergeObjects(a = {}, b = {}) {
32
- const core = {
33
- ...a,
34
- ...b
35
- };
36
- return Object.keys(core).reduce((acc, key) => {
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) {
37
45
  a[key] = getterToArray(a[key]);
38
46
  b[key] = getterToArray(b[key]);
39
- acc[key] = [...a[key], ...b[key]];
47
+ acc[key] = [].concat((0, _toConsumableArray2["default"])(a[key]), (0, _toConsumableArray2["default"])(b[key]));
40
48
  return acc;
41
49
  }, {});
42
50
  }
43
51
  function assignGettersChain(getters) {
44
- return function (props = {}) {
45
- return getters.reduce((acc, getter) => {
52
+ return function () {
53
+ var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
54
+ return getters.reduce(function (acc, getter) {
46
55
  return getter(acc);
47
56
  }, props);
48
57
  };
49
58
  }
50
59
  function createChildren(Context, contexts) {
51
- const Children = function () {
52
- const children = Children.origin;
60
+ var _Children = function Children() {
61
+ var children = _Children.origin;
53
62
  if (typeof children === 'function') {
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]) => {
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];
74
84
  acc[key] = assignGettersChain(value);
75
85
  return acc;
76
86
  }, {});
77
- return children({
78
- ...props,
79
- ...mergedGetters
80
- }, handlers);
87
+ return children((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, props), mergedGetters), handlers);
81
88
  } else if (children === undefined) {
82
89
  return null;
83
90
  }
84
91
  return children;
85
92
  };
86
- Children.origin = null;
87
- Children.props = {};
88
- Children[_symbols.CHILDREN_COMPONENT] = true;
89
- return Children;
93
+ _Children.origin = null;
94
+ _Children.props = {};
95
+ _Children[_symbols.CHILDREN_COMPONENT] = true;
96
+ return _Children;
90
97
  }
91
98
  function Enhancement(Context, parent) {
92
99
  return {
93
- init: function () {
94
- const contexts = (Array.isArray(parent) ? parent : [parent]).map(component => component[_symbols.CONTEXT_COMPONENT]).filter(Boolean);
100
+ init: function init() {
101
+ var contexts = (Array.isArray(parent) ? parent : [parent]).map(function (component) {
102
+ return component[_symbols.CONTEXT_COMPONENT];
103
+ }).filter(Boolean);
95
104
  this[CHILDREN_SELF] = createChildren(Context, contexts);
96
105
  },
97
- asProps: function (props) {
106
+ asProps: function asProps(props) {
98
107
  // TODO: learn the reason what it was used for (by lsroman)
99
108
  // this[CHILDREN_SELF].origin = _Children ? _Children.origin : children;
100
109
  this[CHILDREN_SELF].origin = props.children;
101
110
  this[CHILDREN_SELF].props = props;
102
- return {
103
- ...props,
111
+ return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, props), {}, {
104
112
  Children: this[CHILDREN_SELF]
105
- };
113
+ });
106
114
  }
107
115
  };
108
116
  }
109
- var _default = exports.default = Enhancement;
117
+ var _default = exports["default"] = Enhancement;
110
118
  //# sourceMappingURL=Children.js.map
@@ -1 +1 @@
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
+ {"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,9 +1,15 @@
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";
1
5
  import React from "react";
2
6
  import { CHILDREN_COMPONENT, CONTEXT_COMPONENT } from "../core-types/symbols.mjs";
3
- const CHILDREN_SELF = /* @__PURE__ */ Symbol("CHILDREN_SELF");
4
- const GETTER_REG = /^get[\w]+Props$/;
7
+ var _excluded = ["handlers", "getters"], _excluded2 = ["handlers"];
8
+ var CHILDREN_SELF = /* @__PURE__ */ Symbol("CHILDREN_SELF");
9
+ var GETTER_REG = /^get[\w]+Props$/;
5
10
  function splitPropsAndGetters(props) {
6
- return Object.entries(props).reduce((acc, [key, value]) => {
11
+ return Object.entries(props).reduce(function(acc, _ref) {
12
+ var _ref2 = _slicedToArray(_ref, 2), key = _ref2[0], value = _ref2[1];
7
13
  if (GETTER_REG.exec(key) === null) {
8
14
  acc.props[key] = value;
9
15
  } else {
@@ -21,79 +27,67 @@ function getterToArray(getter) {
21
27
  }
22
28
  return getter;
23
29
  }
24
- function mergeObjects(a = {}, b = {}) {
25
- const core = {
26
- ...a,
27
- ...b
28
- };
29
- return Object.keys(core).reduce((acc, key) => {
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) {
30
35
  a[key] = getterToArray(a[key]);
31
36
  b[key] = getterToArray(b[key]);
32
- acc[key] = [...a[key], ...b[key]];
37
+ acc[key] = [].concat(_toConsumableArray(a[key]), _toConsumableArray(b[key]));
33
38
  return acc;
34
39
  }, {});
35
40
  }
36
41
  function assignGettersChain(getters) {
37
- return function(props = {}) {
38
- return getters.reduce((acc, getter) => {
42
+ return function() {
43
+ var props = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
44
+ return getters.reduce(function(acc, getter) {
39
45
  return getter(acc);
40
46
  }, props);
41
47
  };
42
48
  }
43
49
  function createChildren(Context, contexts) {
44
- const Children = function() {
45
- const children = Children.origin;
50
+ var _Children = function Children() {
51
+ var children = _Children.origin;
46
52
  if (typeof children === "function") {
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, {
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({
61
57
  handlers: Object.assign({}, acc.handlers, handlers2),
62
- getters: mergeObjects(acc.getters, getters2),
63
- ...props2
64
- });
65
- }, Children.props);
66
- const mergedGetters = Object.entries(getters).reduce((acc, [key, value]) => {
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];
67
63
  acc[key] = assignGettersChain(value);
68
64
  return acc;
69
65
  }, {});
70
- return children({
71
- ...props,
72
- ...mergedGetters
73
- }, handlers);
66
+ return children(_objectSpread(_objectSpread({}, props), mergedGetters), handlers);
74
67
  } else if (children === void 0) {
75
68
  return null;
76
69
  }
77
70
  return children;
78
71
  };
79
- Children.origin = null;
80
- Children.props = {};
81
- Children[CHILDREN_COMPONENT] = true;
82
- return Children;
72
+ _Children.origin = null;
73
+ _Children.props = {};
74
+ _Children[CHILDREN_COMPONENT] = true;
75
+ return _Children;
83
76
  }
84
77
  function Enhancement(Context, parent) {
85
78
  return {
86
- init: function() {
87
- const contexts = (Array.isArray(parent) ? parent : [parent]).map((component) => component[CONTEXT_COMPONENT]).filter(Boolean);
79
+ init: function init() {
80
+ var contexts = (Array.isArray(parent) ? parent : [parent]).map(function(component) {
81
+ return component[CONTEXT_COMPONENT];
82
+ }).filter(Boolean);
88
83
  this[CHILDREN_SELF] = createChildren(Context, contexts);
89
84
  },
90
- asProps: function(props) {
85
+ asProps: function asProps(props) {
91
86
  this[CHILDREN_SELF].origin = props.children;
92
87
  this[CHILDREN_SELF].props = props;
93
- return {
94
- ...props,
88
+ return _objectSpread(_objectSpread({}, props), {}, {
95
89
  Children: this[CHILDREN_SELF]
96
- };
90
+ });
97
91
  }
98
92
  };
99
93
  }
@@ -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","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
+ {"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,52 +1,54 @@
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;
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"));
8
11
  var _react = _interopRequireDefault(require("react"));
9
12
  var _assignProps = _interopRequireDefault(require("../utils/assignProps"));
10
- var _ref = require("../utils/ref");
13
+ var _ref4 = require("../utils/ref");
14
+ var _excluded = ["render"],
15
+ _excluded2 = ["Root", "styles", "children", "Children", "forwardRef"];
11
16
  function createRootRender() {
12
17
  // @ts-ignore
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]) => {
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];
27
33
  if (value !== undefined) {
28
34
  props[name] = value;
29
35
  }
30
36
  return props;
31
37
  }, {});
32
- const child = {};
38
+ var child = {};
33
39
  // TODO: need to find better check solution (by lsroman)
34
40
  if (typeof Children.origin !== 'undefined') {
35
41
  // @ts-ignore
36
- child.children = /*#__PURE__*/_react.default.createElement(Children, null);
42
+ child.children = /*#__PURE__*/_react["default"].createElement(Children, null);
37
43
  }
38
- const other = (0, _assignProps.default)({
39
- ...clearProps,
40
- ref: (0, _ref.useForkRef)(forwardRef, ref)
41
- }, {
42
- ...child,
43
- ...source
44
- });
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));
45
47
  if (!Tag) {
46
48
  throw new Error('`render` prop of Root is not provided');
47
49
  }
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);
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);
50
52
  });
51
53
  // @ts-ignore
52
54
  Root.props = {};
@@ -54,23 +56,22 @@ function createRootRender() {
54
56
  }
55
57
  function Enhancement() {
56
58
  return {
57
- init: function () {
59
+ init: function init() {
58
60
  this.Root = createRootRender();
59
61
  },
60
- asProps: function (props, _WrapperComponent, isFunction) {
62
+ asProps: function asProps(props, _WrapperComponent, isFunction) {
61
63
  if (isFunction) {
62
- return {
63
- ...props,
64
+ return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, props), {}, {
64
65
  Root: this.Root
65
- };
66
+ });
66
67
  }
67
68
  return props;
68
69
  },
69
- render: function (render, props) {
70
+ render: function render(_render, props) {
70
71
  this.Root.props = props;
71
- return render;
72
+ return _render;
72
73
  }
73
74
  };
74
75
  }
75
- var _default = exports.default = Enhancement;
76
+ var _default = exports["default"] = Enhancement;
76
77
  //# sourceMappingURL=Root.js.map
@@ -1 +1 @@
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
+ {"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,37 +1,28 @@
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";
1
4
  import React from "react";
2
5
  import assignProps from "../utils/assignProps.mjs";
3
6
  import { useForkRef } from "../utils/ref.mjs";
7
+ var _excluded = ["render"], _excluded2 = ["Root", "styles", "children", "Children", "forwardRef"];
4
8
  function createRootRender() {
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]) => {
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];
19
14
  if (value !== void 0) {
20
15
  props2[name] = value;
21
16
  }
22
17
  return props2;
23
18
  }, {});
24
- const child = {};
19
+ var child = {};
25
20
  if (typeof Children.origin !== "undefined") {
26
21
  child.children = /* @__PURE__ */ React.createElement(Children, null);
27
22
  }
28
- const other = assignProps({
29
- ...clearProps,
23
+ var other = assignProps(_objectSpread(_objectSpread({}, clearProps), {}, {
30
24
  ref: useForkRef(forwardRef, ref)
31
- }, {
32
- ...child,
33
- ...source
34
- });
25
+ }), _objectSpread(_objectSpread({}, child), source));
35
26
  if (!Tag) {
36
27
  throw new Error("`render` prop of Root is not provided");
37
28
  }
@@ -43,21 +34,20 @@ function createRootRender() {
43
34
  }
44
35
  function Enhancement() {
45
36
  return {
46
- init: function() {
37
+ init: function init() {
47
38
  this.Root = createRootRender();
48
39
  },
49
- asProps: function(props, _WrapperComponent, isFunction) {
40
+ asProps: function asProps(props, _WrapperComponent, isFunction) {
50
41
  if (isFunction) {
51
- return {
52
- ...props,
42
+ return _objectSpread(_objectSpread({}, props), {}, {
53
43
  Root: this.Root
54
- };
44
+ });
55
45
  }
56
46
  return props;
57
47
  },
58
- render: function(render, props) {
48
+ render: function render(_render, props) {
59
49
  this.Root.props = props;
60
- return render;
50
+ return _render;
61
51
  }
62
52
  };
63
53
  }