@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 +1 @@
1
- {"version":3,"file":"staticChildren.js","names":["_react","_interopRequireDefault","require","_assignProps","_logger","_pick","assign","target","source","Object","defineProperties","keys","reduce","descriptors","key","getOwnPropertyDescriptor","getterMethodName","name","getterMethodNameByDisplayName","displayName","displayNames","split","slice","length","join","flatGetterMethodNames","childComponents","parentName","entries","acc","value","Array","isArray","push","STATIC_COMPONENT","exports","Symbol","ROOT_COMPONENT","SELF_GETTER_METHOD","Enhancement","createComponent","options","getterMethodNames","condition","Component","Boolean","init","props","WrapperComponent","getterMethods","pick","selfGetterMethod","logger","warn","getterMethod","childrenProps","getterProps","call","index","assignProps","cache","Set","static","Error","prevStaticComponent","prevDisplayName","context","wrapperProps","React","useContext","has","add","render","forEach","undefined","clear","_default","default"],"sources":["../../src/enhancement/staticChildren.tsx"],"sourcesContent":["import React from 'react';\n\nimport assignProps from '../utils/assignProps';\nimport logger from '../utils/logger';\nimport pick from '../utils/pick';\n\nfunction assign(target: any, source: any) {\n return Object.defineProperties(\n target,\n Object.keys(source).reduce((descriptors: any, key) => {\n descriptors[key] = Object.getOwnPropertyDescriptor(source, key);\n return descriptors;\n }, {}),\n );\n}\n\nexport function getterMethodName(name: string) {\n return `get${name}Props`;\n}\n\nexport function getterMethodNameByDisplayName(displayName = '') {\n const displayNames = displayName.split('.');\n const name = displayNames.slice(-(displayNames.length - 1)).join('');\n return getterMethodName(name);\n}\n\nfunction flatGetterMethodNames(childComponents: any, parentName?: string) {\n return Object.entries(childComponents).reduce<string[]>((acc, [name, value]) => {\n if (Array.isArray(value)) {\n acc.push(...flatGetterMethodNames(value[1], name));\n }\n name = parentName ? `${parentName}${name}` : name;\n acc.push(getterMethodName(name));\n return acc;\n }, []);\n}\n\nexport const STATIC_COMPONENT = Symbol('STATIC_COMPONENT');\nexport const ROOT_COMPONENT = Symbol('ROOT_COMPONENT');\nconst SELF_GETTER_METHOD = Symbol('SELF_GETTER_METHOD');\n\nfunction Enhancement(childComponents: any, createComponent: any, options: any) {\n const getterMethodNames = flatGetterMethodNames(childComponents);\n return {\n condition: function (Component: any) {\n return Boolean(Component[STATIC_COMPONENT] || Object.keys(childComponents).length);\n },\n init: function (this: any, props: any, WrapperComponent: any) {\n const getterMethods: any = pick(this, getterMethodNames);\n this[SELF_GETTER_METHOD] = () => {\n const selfGetterMethod = getterMethodNameByDisplayName(WrapperComponent.displayName);\n logger.warn(\n true,\n `Getter \\`${selfGetterMethod}\\` can't be fired as it is a getter of static component`,\n props['data-ui-name'] || WrapperComponent.displayName,\n );\n };\n assign(\n this,\n getterMethodNames.reduce((acc: any, name) => {\n const getterMethod = getterMethods[name];\n if (!getterMethod) return acc;\n acc[name] = (childrenProps = {}) => {\n const getterProps = getterMethod.call(this, childrenProps, acc[name].index);\n return assignProps(childrenProps, getterProps);\n };\n acc[name].index = -1;\n acc[name].cache = new Set();\n return acc;\n }, {}),\n );\n },\n static: function (WrapperComponent: any, Component: any) {\n if (Object.keys(childComponents).length && !WrapperComponent.displayName) {\n throw new Error('\"displayName\" is not defined');\n }\n return Object.entries(childComponents).reduce((acc: any, [name, value]: any) => {\n let childComponents = {};\n\n if (Array.isArray(value)) {\n childComponents = value[1];\n value = value[0];\n }\n\n const prevStaticComponent = value[STATIC_COMPONENT];\n // @ts-ignore\n const prevDisplayName = value.displayName;\n // @ts-ignore\n value.displayName = `${WrapperComponent.displayName}.${name}`;\n value[STATIC_COMPONENT] = true;\n value[ROOT_COMPONENT] = Component[ROOT_COMPONENT] || Component;\n acc[name] = createComponent(value, childComponents, options);\n // @ts-ignore\n value.displayName = prevDisplayName;\n value[STATIC_COMPONENT] = prevStaticComponent;\n return acc;\n }, {});\n },\n context: function (context: any /* , WrapperComponent */) {\n // const getterMethod = getterMethodNameByDisplayName(WrapperComponent.displayName);\n return {\n ...context,\n // [getterMethod]: this[SELF_GETTER_METHOD],\n ...pick(this, getterMethodNames as any),\n };\n },\n wrapperProps: function (this: any, props: any, WrapperComponent: any) {\n if (!WrapperComponent[STATIC_COMPONENT]) return props;\n const context: any = React.useContext(options.context);\n const getterMethod = context[getterMethodNameByDisplayName(WrapperComponent.displayName)];\n if (getterMethod) {\n if (!getterMethod.cache.has(this)) {\n getterMethod.cache.add(this);\n getterMethod.index++;\n if (this) this.index = getterMethod.index;\n }\n if (this) getterMethod.index = this.index;\n return getterMethod(props);\n }\n return props;\n },\n render: function (this: any, render: any) {\n getterMethodNames.forEach((name) => {\n if (this[name] === undefined) return;\n this[name].index = -1;\n this[name].cache.clear();\n });\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,OAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,KAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAEA,SAASI,MAAMA,CAACC,MAAW,EAAEC,MAAW,EAAE;EACxC,OAAOC,MAAM,CAACC,gBAAgB,CAC5BH,MAAM,EACNE,MAAM,CAACE,IAAI,CAACH,MAAM,CAAC,CAACI,MAAM,CAAC,CAACC,WAAgB,EAAEC,GAAG,KAAK;IACpDD,WAAW,CAACC,GAAG,CAAC,GAAGL,MAAM,CAACM,wBAAwB,CAACP,MAAM,EAAEM,GAAG,CAAC;IAC/D,OAAOD,WAAW;EACpB,CAAC,EAAE,CAAC,CAAC,CACP,CAAC;AACH;AAEO,SAASG,gBAAgBA,CAACC,IAAY,EAAE;EAC7C,OAAO,MAAMA,IAAI,OAAO;AAC1B;AAEO,SAASC,6BAA6BA,CAACC,WAAW,GAAG,EAAE,EAAE;EAC9D,MAAMC,YAAY,GAAGD,WAAW,CAACE,KAAK,CAAC,GAAG,CAAC;EAC3C,MAAMJ,IAAI,GAAGG,YAAY,CAACE,KAAK,CAAC,EAAEF,YAAY,CAACG,MAAM,GAAG,CAAC,CAAC,CAAC,CAACC,IAAI,CAAC,EAAE,CAAC;EACpE,OAAOR,gBAAgB,CAACC,IAAI,CAAC;AAC/B;AAEA,SAASQ,qBAAqBA,CAACC,eAAoB,EAAEC,UAAmB,EAAE;EACxE,OAAOlB,MAAM,CAACmB,OAAO,CAACF,eAAe,CAAC,CAACd,MAAM,CAAW,CAACiB,GAAG,EAAE,CAACZ,IAAI,EAAEa,KAAK,CAAC,KAAK;IAC9E,IAAIC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,EAAE;MACxBD,GAAG,CAACI,IAAI,CAAC,GAAGR,qBAAqB,CAACK,KAAK,CAAC,CAAC,CAAC,EAAEb,IAAI,CAAC,CAAC;IACpD;IACAA,IAAI,GAAGU,UAAU,GAAG,GAAGA,UAAU,GAAGV,IAAI,EAAE,GAAGA,IAAI;IACjDY,GAAG,CAACI,IAAI,CAACjB,gBAAgB,CAACC,IAAI,CAAC,CAAC;IAChC,OAAOY,GAAG;EACZ,CAAC,EAAE,EAAE,CAAC;AACR;AAEO,MAAMK,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAGE,MAAM,CAAC,kBAAkB,CAAC;AACnD,MAAMC,cAAc,GAAAF,OAAA,CAAAE,cAAA,GAAGD,MAAM,CAAC,gBAAgB,CAAC;AACtD,MAAME,kBAAkB,GAAGF,MAAM,CAAC,oBAAoB,CAAC;AAEvD,SAASG,WAAWA,CAACb,eAAoB,EAAEc,eAAoB,EAAEC,OAAY,EAAE;EAC7E,MAAMC,iBAAiB,GAAGjB,qBAAqB,CAACC,eAAe,CAAC;EAChE,OAAO;IACLiB,SAAS,EAAE,SAAAA,CAAUC,SAAc,EAAE;MACnC,OAAOC,OAAO,CAACD,SAAS,CAACV,gBAAgB,CAAC,IAAIzB,MAAM,CAACE,IAAI,CAACe,eAAe,CAAC,CAACH,MAAM,CAAC;IACpF,CAAC;IACDuB,IAAI,EAAE,SAAAA,CAAqBC,KAAU,EAAEC,gBAAqB,EAAE;MAC5D,MAAMC,aAAkB,GAAG,IAAAC,aAAI,EAAC,IAAI,EAAER,iBAAiB,CAAC;MACxD,IAAI,CAACJ,kBAAkB,CAAC,GAAG,MAAM;QAC/B,MAAMa,gBAAgB,GAAGjC,6BAA6B,CAAC8B,gBAAgB,CAAC7B,WAAW,CAAC;QACpFiC,eAAM,CAACC,IAAI,CACT,IAAI,EACJ,YAAYF,gBAAgB,yDAAyD,EACrFJ,KAAK,CAAC,cAAc,CAAC,IAAIC,gBAAgB,CAAC7B,WAC5C,CAAC;MACH,CAAC;MACDb,MAAM,CACJ,IAAI,EACJoC,iBAAiB,CAAC9B,MAAM,CAAC,CAACiB,GAAQ,EAAEZ,IAAI,KAAK;QAC3C,MAAMqC,YAAY,GAAGL,aAAa,CAAChC,IAAI,CAAC;QACxC,IAAI,CAACqC,YAAY,EAAE,OAAOzB,GAAG;QAC7BA,GAAG,CAACZ,IAAI,CAAC,GAAG,CAACsC,aAAa,GAAG,CAAC,CAAC,KAAK;UAClC,MAAMC,WAAW,GAAGF,YAAY,CAACG,IAAI,CAAC,IAAI,EAAEF,aAAa,EAAE1B,GAAG,CAACZ,IAAI,CAAC,CAACyC,KAAK,CAAC;UAC3E,OAAO,IAAAC,oBAAW,EAACJ,aAAa,EAAEC,WAAW,CAAC;QAChD,CAAC;QACD3B,GAAG,CAACZ,IAAI,CAAC,CAACyC,KAAK,GAAG,CAAC,CAAC;QACpB7B,GAAG,CAACZ,IAAI,CAAC,CAAC2C,KAAK,GAAG,IAAIC,GAAG,CAAC,CAAC;QAC3B,OAAOhC,GAAG;MACZ,CAAC,EAAE,CAAC,CAAC,CACP,CAAC;IACH,CAAC;IACDiC,MAAM,EAAE,SAAAA,CAAUd,gBAAqB,EAAEJ,SAAc,EAAE;MACvD,IAAInC,MAAM,CAACE,IAAI,CAACe,eAAe,CAAC,CAACH,MAAM,IAAI,CAACyB,gBAAgB,CAAC7B,WAAW,EAAE;QACxE,MAAM,IAAI4C,KAAK,CAAC,8BAA8B,CAAC;MACjD;MACA,OAAOtD,MAAM,CAACmB,OAAO,CAACF,eAAe,CAAC,CAACd,MAAM,CAAC,CAACiB,GAAQ,EAAE,CAACZ,IAAI,EAAEa,KAAK,CAAM,KAAK;QAC9E,IAAIJ,eAAe,GAAG,CAAC,CAAC;QAExB,IAAIK,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,EAAE;UACxBJ,eAAe,GAAGI,KAAK,CAAC,CAAC,CAAC;UAC1BA,KAAK,GAAGA,KAAK,CAAC,CAAC,CAAC;QAClB;QAEA,MAAMkC,mBAAmB,GAAGlC,KAAK,CAACI,gBAAgB,CAAC;QACnD;QACA,MAAM+B,eAAe,GAAGnC,KAAK,CAACX,WAAW;QACzC;QACAW,KAAK,CAACX,WAAW,GAAG,GAAG6B,gBAAgB,CAAC7B,WAAW,IAAIF,IAAI,EAAE;QAC7Da,KAAK,CAACI,gBAAgB,CAAC,GAAG,IAAI;QAC9BJ,KAAK,CAACO,cAAc,CAAC,GAAGO,SAAS,CAACP,cAAc,CAAC,IAAIO,SAAS;QAC9Df,GAAG,CAACZ,IAAI,CAAC,GAAGuB,eAAe,CAACV,KAAK,EAAEJ,eAAe,EAAEe,OAAO,CAAC;QAC5D;QACAX,KAAK,CAACX,WAAW,GAAG8C,eAAe;QACnCnC,KAAK,CAACI,gBAAgB,CAAC,GAAG8B,mBAAmB;QAC7C,OAAOnC,GAAG;MACZ,CAAC,EAAE,CAAC,CAAC,CAAC;IACR,CAAC;IACDqC,OAAO,EAAE,SAAAA,CAAUA,OAAY,EAA2B;MACxD;MACA,OAAO;QACL,GAAGA,OAAO;QACV;QACA,GAAG,IAAAhB,aAAI,EAAC,IAAI,EAAER,iBAAwB;MACxC,CAAC;IACH,CAAC;IACDyB,YAAY,EAAE,SAAAA,CAAqBpB,KAAU,EAAEC,gBAAqB,EAAE;MACpE,IAAI,CAACA,gBAAgB,CAACd,gBAAgB,CAAC,EAAE,OAAOa,KAAK;MACrD,MAAMmB,OAAY,GAAGE,cAAK,CAACC,UAAU,CAAC5B,OAAO,CAACyB,OAAO,CAAC;MACtD,MAAMZ,YAAY,GAAGY,OAAO,CAAChD,6BAA6B,CAAC8B,gBAAgB,CAAC7B,WAAW,CAAC,CAAC;MACzF,IAAImC,YAAY,EAAE;QAChB,IAAI,CAACA,YAAY,CAACM,KAAK,CAACU,GAAG,CAAC,IAAI,CAAC,EAAE;UACjChB,YAAY,CAACM,KAAK,CAACW,GAAG,CAAC,IAAI,CAAC;UAC5BjB,YAAY,CAACI,KAAK,EAAE;UACpB,IAAI,IAAI,EAAE,IAAI,CAACA,KAAK,GAAGJ,YAAY,CAACI,KAAK;QAC3C;QACA,IAAI,IAAI,EAAEJ,YAAY,CAACI,KAAK,GAAG,IAAI,CAACA,KAAK;QACzC,OAAOJ,YAAY,CAACP,KAAK,CAAC;MAC5B;MACA,OAAOA,KAAK;IACd,CAAC;IACDyB,MAAM,EAAE,SAAAA,CAAqBA,MAAW,EAAE;MACxC9B,iBAAiB,CAAC+B,OAAO,CAAExD,IAAI,IAAK;QAClC,IAAI,IAAI,CAACA,IAAI,CAAC,KAAKyD,SAAS,EAAE;QAC9B,IAAI,CAACzD,IAAI,CAAC,CAACyC,KAAK,GAAG,CAAC,CAAC;QACrB,IAAI,CAACzC,IAAI,CAAC,CAAC2C,KAAK,CAACe,KAAK,CAAC,CAAC;MAC1B,CAAC,CAAC;MACF,OAAOH,MAAM;IACf;EACF,CAAC;AACH;AAAC,IAAAI,QAAA,GAAAzC,OAAA,CAAA0C,OAAA,GAEctC,WAAW","ignoreList":[]}
1
+ {"version":3,"file":"staticChildren.js","names":["_react","_interopRequireDefault","require","_assignProps","_logger","_pick","assign","target","source","Object","defineProperties","keys","reduce","descriptors","key","getOwnPropertyDescriptor","getterMethodName","name","concat","getterMethodNameByDisplayName","displayName","arguments","length","undefined","displayNames","split","slice","join","flatGetterMethodNames","childComponents","parentName","entries","acc","_ref","_ref2","_slicedToArray2","value","Array","isArray","push","apply","_toConsumableArray2","STATIC_COMPONENT","exports","Symbol","ROOT_COMPONENT","SELF_GETTER_METHOD","Enhancement","createComponent","options","getterMethodNames","condition","Component","Boolean","init","props","WrapperComponent","_this","getterMethods","pick","selfGetterMethod","logger","warn","getterMethod","childrenProps","getterProps","call","index","assignProps","cache","Set","static","Error","_ref3","_ref4","prevStaticComponent","prevDisplayName","context","_objectSpread2","wrapperProps","React","useContext","has","add","render","_this2","forEach","clear","_default"],"sources":["../../src/enhancement/staticChildren.tsx"],"sourcesContent":["import React from 'react';\n\nimport assignProps from '../utils/assignProps';\nimport logger from '../utils/logger';\nimport pick from '../utils/pick';\n\nfunction assign(target: any, source: any) {\n return Object.defineProperties(\n target,\n Object.keys(source).reduce((descriptors: any, key) => {\n descriptors[key] = Object.getOwnPropertyDescriptor(source, key);\n return descriptors;\n }, {}),\n );\n}\n\nexport function getterMethodName(name: string) {\n return `get${name}Props`;\n}\n\nexport function getterMethodNameByDisplayName(displayName = '') {\n const displayNames = displayName.split('.');\n const name = displayNames.slice(-(displayNames.length - 1)).join('');\n return getterMethodName(name);\n}\n\nfunction flatGetterMethodNames(childComponents: any, parentName?: string) {\n return Object.entries(childComponents).reduce<string[]>((acc, [name, value]) => {\n if (Array.isArray(value)) {\n acc.push(...flatGetterMethodNames(value[1], name));\n }\n name = parentName ? `${parentName}${name}` : name;\n acc.push(getterMethodName(name));\n return acc;\n }, []);\n}\n\nexport const STATIC_COMPONENT = Symbol('STATIC_COMPONENT');\nexport const ROOT_COMPONENT = Symbol('ROOT_COMPONENT');\nconst SELF_GETTER_METHOD = Symbol('SELF_GETTER_METHOD');\n\nfunction Enhancement(childComponents: any, createComponent: any, options: any) {\n const getterMethodNames = flatGetterMethodNames(childComponents);\n return {\n condition: function (Component: any) {\n return Boolean(Component[STATIC_COMPONENT] || Object.keys(childComponents).length);\n },\n init: function (this: any, props: any, WrapperComponent: any) {\n const getterMethods: any = pick(this, getterMethodNames);\n this[SELF_GETTER_METHOD] = () => {\n const selfGetterMethod = getterMethodNameByDisplayName(WrapperComponent.displayName);\n logger.warn(\n true,\n `Getter \\`${selfGetterMethod}\\` can't be fired as it is a getter of static component`,\n props['data-ui-name'] || WrapperComponent.displayName,\n );\n };\n assign(\n this,\n getterMethodNames.reduce((acc: any, name) => {\n const getterMethod = getterMethods[name];\n if (!getterMethod) return acc;\n acc[name] = (childrenProps = {}) => {\n const getterProps = getterMethod.call(this, childrenProps, acc[name].index);\n return assignProps(childrenProps, getterProps);\n };\n acc[name].index = -1;\n acc[name].cache = new Set();\n return acc;\n }, {}),\n );\n },\n static: function (WrapperComponent: any, Component: any) {\n if (Object.keys(childComponents).length && !WrapperComponent.displayName) {\n throw new Error('\"displayName\" is not defined');\n }\n return Object.entries(childComponents).reduce((acc: any, [name, value]: any) => {\n let childComponents = {};\n\n if (Array.isArray(value)) {\n childComponents = value[1];\n value = value[0];\n }\n\n const prevStaticComponent = value[STATIC_COMPONENT];\n // @ts-ignore\n const prevDisplayName = value.displayName;\n // @ts-ignore\n value.displayName = `${WrapperComponent.displayName}.${name}`;\n value[STATIC_COMPONENT] = true;\n value[ROOT_COMPONENT] = Component[ROOT_COMPONENT] || Component;\n acc[name] = createComponent(value, childComponents, options);\n // @ts-ignore\n value.displayName = prevDisplayName;\n value[STATIC_COMPONENT] = prevStaticComponent;\n return acc;\n }, {});\n },\n context: function (context: any /* , WrapperComponent */) {\n // const getterMethod = getterMethodNameByDisplayName(WrapperComponent.displayName);\n return {\n ...context,\n // [getterMethod]: this[SELF_GETTER_METHOD],\n ...pick(this, getterMethodNames as any),\n };\n },\n wrapperProps: function (this: any, props: any, WrapperComponent: any) {\n if (!WrapperComponent[STATIC_COMPONENT]) return props;\n const context: any = React.useContext(options.context);\n const getterMethod = context[getterMethodNameByDisplayName(WrapperComponent.displayName)];\n if (getterMethod) {\n if (!getterMethod.cache.has(this)) {\n getterMethod.cache.add(this);\n getterMethod.index++;\n if (this) this.index = getterMethod.index;\n }\n if (this) getterMethod.index = this.index;\n return getterMethod(props);\n }\n return props;\n },\n render: function (this: any, render: any) {\n getterMethodNames.forEach((name) => {\n if (this[name] === undefined) return;\n this[name].index = -1;\n this[name].cache.clear();\n });\n return render;\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"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","ignoreList":[]}
@@ -1,51 +1,58 @@
1
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
+ import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
3
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
1
4
  import React from "react";
2
5
  import assignProps from "../utils/assignProps.mjs";
3
6
  import logger from "../utils/logger.mjs";
4
7
  import pick from "../utils/pick.mjs";
5
8
  function assign(target, source) {
6
- return Object.defineProperties(target, Object.keys(source).reduce((descriptors, key) => {
9
+ return Object.defineProperties(target, Object.keys(source).reduce(function(descriptors, key) {
7
10
  descriptors[key] = Object.getOwnPropertyDescriptor(source, key);
8
11
  return descriptors;
9
12
  }, {}));
10
13
  }
11
14
  function getterMethodName(name) {
12
- return `get${name}Props`;
15
+ return "get".concat(name, "Props");
13
16
  }
14
- function getterMethodNameByDisplayName(displayName = "") {
15
- const displayNames = displayName.split(".");
16
- const name = displayNames.slice(-(displayNames.length - 1)).join("");
17
+ function getterMethodNameByDisplayName() {
18
+ var displayName = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "";
19
+ var displayNames = displayName.split(".");
20
+ var name = displayNames.slice(-(displayNames.length - 1)).join("");
17
21
  return getterMethodName(name);
18
22
  }
19
23
  function flatGetterMethodNames(childComponents, parentName) {
20
- return Object.entries(childComponents).reduce((acc, [name, value]) => {
24
+ return Object.entries(childComponents).reduce(function(acc, _ref) {
25
+ var _ref2 = _slicedToArray(_ref, 2), name = _ref2[0], value = _ref2[1];
21
26
  if (Array.isArray(value)) {
22
- acc.push(...flatGetterMethodNames(value[1], name));
27
+ acc.push.apply(acc, _toConsumableArray(flatGetterMethodNames(value[1], name)));
23
28
  }
24
- name = parentName ? `${parentName}${name}` : name;
29
+ name = parentName ? "".concat(parentName).concat(name) : name;
25
30
  acc.push(getterMethodName(name));
26
31
  return acc;
27
32
  }, []);
28
33
  }
29
- const STATIC_COMPONENT = /* @__PURE__ */ Symbol("STATIC_COMPONENT");
30
- const ROOT_COMPONENT = /* @__PURE__ */ Symbol("ROOT_COMPONENT");
31
- const SELF_GETTER_METHOD = /* @__PURE__ */ Symbol("SELF_GETTER_METHOD");
34
+ var STATIC_COMPONENT = /* @__PURE__ */ Symbol("STATIC_COMPONENT");
35
+ var ROOT_COMPONENT = /* @__PURE__ */ Symbol("ROOT_COMPONENT");
36
+ var SELF_GETTER_METHOD = /* @__PURE__ */ Symbol("SELF_GETTER_METHOD");
32
37
  function Enhancement(childComponents, createComponent, options) {
33
- const getterMethodNames = flatGetterMethodNames(childComponents);
38
+ var getterMethodNames = flatGetterMethodNames(childComponents);
34
39
  return {
35
- condition: function(Component) {
40
+ condition: function condition(Component) {
36
41
  return Boolean(Component[STATIC_COMPONENT] || Object.keys(childComponents).length);
37
42
  },
38
- init: function(props, WrapperComponent) {
39
- const getterMethods = pick(this, getterMethodNames);
40
- this[SELF_GETTER_METHOD] = () => {
41
- const selfGetterMethod = getterMethodNameByDisplayName(WrapperComponent.displayName);
42
- logger.warn(true, `Getter \`${selfGetterMethod}\` can't be fired as it is a getter of static component`, props["data-ui-name"] || WrapperComponent.displayName);
43
+ init: function init(props, WrapperComponent) {
44
+ var _this = this;
45
+ var getterMethods = pick(this, getterMethodNames);
46
+ this[SELF_GETTER_METHOD] = function() {
47
+ var selfGetterMethod = getterMethodNameByDisplayName(WrapperComponent.displayName);
48
+ logger.warn(true, "Getter `".concat(selfGetterMethod, "` can't be fired as it is a getter of static component"), props["data-ui-name"] || WrapperComponent.displayName);
43
49
  };
44
- assign(this, getterMethodNames.reduce((acc, name) => {
45
- const getterMethod = getterMethods[name];
50
+ assign(this, getterMethodNames.reduce(function(acc, name) {
51
+ var getterMethod = getterMethods[name];
46
52
  if (!getterMethod) return acc;
47
- acc[name] = (childrenProps = {}) => {
48
- const getterProps = getterMethod.call(this, childrenProps, acc[name].index);
53
+ acc[name] = function() {
54
+ var childrenProps = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
55
+ var getterProps = getterMethod.call(_this, childrenProps, acc[name].index);
49
56
  return assignProps(childrenProps, getterProps);
50
57
  };
51
58
  acc[name].index = -1;
@@ -53,19 +60,20 @@ function Enhancement(childComponents, createComponent, options) {
53
60
  return acc;
54
61
  }, {}));
55
62
  },
56
- static: function(WrapperComponent, Component) {
63
+ "static": function _static(WrapperComponent, Component) {
57
64
  if (Object.keys(childComponents).length && !WrapperComponent.displayName) {
58
65
  throw new Error('"displayName" is not defined');
59
66
  }
60
- return Object.entries(childComponents).reduce((acc, [name, value]) => {
61
- let childComponents2 = {};
67
+ return Object.entries(childComponents).reduce(function(acc, _ref3) {
68
+ var _ref4 = _slicedToArray(_ref3, 2), name = _ref4[0], value = _ref4[1];
69
+ var childComponents2 = {};
62
70
  if (Array.isArray(value)) {
63
71
  childComponents2 = value[1];
64
72
  value = value[0];
65
73
  }
66
- const prevStaticComponent = value[STATIC_COMPONENT];
67
- const prevDisplayName = value.displayName;
68
- value.displayName = `${WrapperComponent.displayName}.${name}`;
74
+ var prevStaticComponent = value[STATIC_COMPONENT];
75
+ var prevDisplayName = value.displayName;
76
+ value.displayName = "".concat(WrapperComponent.displayName, ".").concat(name);
69
77
  value[STATIC_COMPONENT] = true;
70
78
  value[ROOT_COMPONENT] = Component[ROOT_COMPONENT] || Component;
71
79
  acc[name] = createComponent(value, childComponents2, options);
@@ -74,17 +82,13 @@ function Enhancement(childComponents, createComponent, options) {
74
82
  return acc;
75
83
  }, {});
76
84
  },
77
- context: function(context) {
78
- return {
79
- ...context,
80
- // [getterMethod]: this[SELF_GETTER_METHOD],
81
- ...pick(this, getterMethodNames)
82
- };
85
+ context: function context(_context) {
86
+ return _objectSpread(_objectSpread({}, _context), pick(this, getterMethodNames));
83
87
  },
84
- wrapperProps: function(props, WrapperComponent) {
88
+ wrapperProps: function wrapperProps(props, WrapperComponent) {
85
89
  if (!WrapperComponent[STATIC_COMPONENT]) return props;
86
- const context = React.useContext(options.context);
87
- const getterMethod = context[getterMethodNameByDisplayName(WrapperComponent.displayName)];
90
+ var context = React.useContext(options.context);
91
+ var getterMethod = context[getterMethodNameByDisplayName(WrapperComponent.displayName)];
88
92
  if (getterMethod) {
89
93
  if (!getterMethod.cache.has(this)) {
90
94
  getterMethod.cache.add(this);
@@ -96,13 +100,14 @@ function Enhancement(childComponents, createComponent, options) {
96
100
  }
97
101
  return props;
98
102
  },
99
- render: function(render) {
100
- getterMethodNames.forEach((name) => {
101
- if (this[name] === void 0) return;
102
- this[name].index = -1;
103
- this[name].cache.clear();
103
+ render: function render(_render) {
104
+ var _this2 = this;
105
+ getterMethodNames.forEach(function(name) {
106
+ if (_this2[name] === void 0) return;
107
+ _this2[name].index = -1;
108
+ _this2[name].cache.clear();
104
109
  });
105
- return render;
110
+ return _render;
106
111
  }
107
112
  };
108
113
  }
@@ -1 +1 @@
1
- {"version":3,"file":"staticChildren.mjs","names":["React","assignProps","logger","pick","assign","target","source","Object","defineProperties","keys","reduce","descriptors","key","getOwnPropertyDescriptor","getterMethodName","name","getterMethodNameByDisplayName","displayName","displayNames","split","slice","length","join","flatGetterMethodNames","childComponents","parentName","entries","acc","value","Array","isArray","push","STATIC_COMPONENT","Symbol","ROOT_COMPONENT","SELF_GETTER_METHOD","Enhancement","createComponent","options","getterMethodNames","condition","Component","Boolean","init","props","WrapperComponent","getterMethods","selfGetterMethod","warn","getterMethod","childrenProps","getterProps","call","index","cache","Set","static","Error","prevStaticComponent","prevDisplayName","context","wrapperProps","useContext","has","add","render","forEach","undefined","clear"],"sources":["../../src/enhancement/staticChildren.tsx"],"sourcesContent":["import React from 'react';\n\nimport assignProps from '../utils/assignProps';\nimport logger from '../utils/logger';\nimport pick from '../utils/pick';\n\nfunction assign(target: any, source: any) {\n return Object.defineProperties(\n target,\n Object.keys(source).reduce((descriptors: any, key) => {\n descriptors[key] = Object.getOwnPropertyDescriptor(source, key);\n return descriptors;\n }, {}),\n );\n}\n\nexport function getterMethodName(name: string) {\n return `get${name}Props`;\n}\n\nexport function getterMethodNameByDisplayName(displayName = '') {\n const displayNames = displayName.split('.');\n const name = displayNames.slice(-(displayNames.length - 1)).join('');\n return getterMethodName(name);\n}\n\nfunction flatGetterMethodNames(childComponents: any, parentName?: string) {\n return Object.entries(childComponents).reduce<string[]>((acc, [name, value]) => {\n if (Array.isArray(value)) {\n acc.push(...flatGetterMethodNames(value[1], name));\n }\n name = parentName ? `${parentName}${name}` : name;\n acc.push(getterMethodName(name));\n return acc;\n }, []);\n}\n\nexport const STATIC_COMPONENT = Symbol('STATIC_COMPONENT');\nexport const ROOT_COMPONENT = Symbol('ROOT_COMPONENT');\nconst SELF_GETTER_METHOD = Symbol('SELF_GETTER_METHOD');\n\nfunction Enhancement(childComponents: any, createComponent: any, options: any) {\n const getterMethodNames = flatGetterMethodNames(childComponents);\n return {\n condition: function (Component: any) {\n return Boolean(Component[STATIC_COMPONENT] || Object.keys(childComponents).length);\n },\n init: function (this: any, props: any, WrapperComponent: any) {\n const getterMethods: any = pick(this, getterMethodNames);\n this[SELF_GETTER_METHOD] = () => {\n const selfGetterMethod = getterMethodNameByDisplayName(WrapperComponent.displayName);\n logger.warn(\n true,\n `Getter \\`${selfGetterMethod}\\` can't be fired as it is a getter of static component`,\n props['data-ui-name'] || WrapperComponent.displayName,\n );\n };\n assign(\n this,\n getterMethodNames.reduce((acc: any, name) => {\n const getterMethod = getterMethods[name];\n if (!getterMethod) return acc;\n acc[name] = (childrenProps = {}) => {\n const getterProps = getterMethod.call(this, childrenProps, acc[name].index);\n return assignProps(childrenProps, getterProps);\n };\n acc[name].index = -1;\n acc[name].cache = new Set();\n return acc;\n }, {}),\n );\n },\n static: function (WrapperComponent: any, Component: any) {\n if (Object.keys(childComponents).length && !WrapperComponent.displayName) {\n throw new Error('\"displayName\" is not defined');\n }\n return Object.entries(childComponents).reduce((acc: any, [name, value]: any) => {\n let childComponents = {};\n\n if (Array.isArray(value)) {\n childComponents = value[1];\n value = value[0];\n }\n\n const prevStaticComponent = value[STATIC_COMPONENT];\n // @ts-ignore\n const prevDisplayName = value.displayName;\n // @ts-ignore\n value.displayName = `${WrapperComponent.displayName}.${name}`;\n value[STATIC_COMPONENT] = true;\n value[ROOT_COMPONENT] = Component[ROOT_COMPONENT] || Component;\n acc[name] = createComponent(value, childComponents, options);\n // @ts-ignore\n value.displayName = prevDisplayName;\n value[STATIC_COMPONENT] = prevStaticComponent;\n return acc;\n }, {});\n },\n context: function (context: any /* , WrapperComponent */) {\n // const getterMethod = getterMethodNameByDisplayName(WrapperComponent.displayName);\n return {\n ...context,\n // [getterMethod]: this[SELF_GETTER_METHOD],\n ...pick(this, getterMethodNames as any),\n };\n },\n wrapperProps: function (this: any, props: any, WrapperComponent: any) {\n if (!WrapperComponent[STATIC_COMPONENT]) return props;\n const context: any = React.useContext(options.context);\n const getterMethod = context[getterMethodNameByDisplayName(WrapperComponent.displayName)];\n if (getterMethod) {\n if (!getterMethod.cache.has(this)) {\n getterMethod.cache.add(this);\n getterMethod.index++;\n if (this) this.index = getterMethod.index;\n }\n if (this) getterMethod.index = this.index;\n return getterMethod(props);\n }\n return props;\n },\n render: function (this: any, render: any) {\n getterMethodNames.forEach((name) => {\n if (this[name] === undefined) return;\n this[name].index = -1;\n this[name].cache.clear();\n });\n return render;\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"staticChildren.mjs","names":["React","assignProps","logger","pick","assign","target","source","Object","defineProperties","keys","reduce","descriptors","key","getOwnPropertyDescriptor","getterMethodName","name","concat","getterMethodNameByDisplayName","displayName","arguments","length","undefined","displayNames","split","slice","join","flatGetterMethodNames","childComponents","parentName","entries","acc","_ref","_ref2","_slicedToArray","value","Array","isArray","push","apply","_toConsumableArray","STATIC_COMPONENT","Symbol","ROOT_COMPONENT","SELF_GETTER_METHOD","Enhancement","createComponent","options","getterMethodNames","condition","Component","Boolean","init","props","WrapperComponent","_this","getterMethods","selfGetterMethod","warn","getterMethod","childrenProps","getterProps","call","index","cache","Set","static","Error","_ref3","_ref4","prevStaticComponent","prevDisplayName","context","_objectSpread","wrapperProps","useContext","has","add","render","_this2","forEach","clear"],"sources":["../../src/enhancement/staticChildren.tsx"],"sourcesContent":["import React from 'react';\n\nimport assignProps from '../utils/assignProps';\nimport logger from '../utils/logger';\nimport pick from '../utils/pick';\n\nfunction assign(target: any, source: any) {\n return Object.defineProperties(\n target,\n Object.keys(source).reduce((descriptors: any, key) => {\n descriptors[key] = Object.getOwnPropertyDescriptor(source, key);\n return descriptors;\n }, {}),\n );\n}\n\nexport function getterMethodName(name: string) {\n return `get${name}Props`;\n}\n\nexport function getterMethodNameByDisplayName(displayName = '') {\n const displayNames = displayName.split('.');\n const name = displayNames.slice(-(displayNames.length - 1)).join('');\n return getterMethodName(name);\n}\n\nfunction flatGetterMethodNames(childComponents: any, parentName?: string) {\n return Object.entries(childComponents).reduce<string[]>((acc, [name, value]) => {\n if (Array.isArray(value)) {\n acc.push(...flatGetterMethodNames(value[1], name));\n }\n name = parentName ? `${parentName}${name}` : name;\n acc.push(getterMethodName(name));\n return acc;\n }, []);\n}\n\nexport const STATIC_COMPONENT = Symbol('STATIC_COMPONENT');\nexport const ROOT_COMPONENT = Symbol('ROOT_COMPONENT');\nconst SELF_GETTER_METHOD = Symbol('SELF_GETTER_METHOD');\n\nfunction Enhancement(childComponents: any, createComponent: any, options: any) {\n const getterMethodNames = flatGetterMethodNames(childComponents);\n return {\n condition: function (Component: any) {\n return Boolean(Component[STATIC_COMPONENT] || Object.keys(childComponents).length);\n },\n init: function (this: any, props: any, WrapperComponent: any) {\n const getterMethods: any = pick(this, getterMethodNames);\n this[SELF_GETTER_METHOD] = () => {\n const selfGetterMethod = getterMethodNameByDisplayName(WrapperComponent.displayName);\n logger.warn(\n true,\n `Getter \\`${selfGetterMethod}\\` can't be fired as it is a getter of static component`,\n props['data-ui-name'] || WrapperComponent.displayName,\n );\n };\n assign(\n this,\n getterMethodNames.reduce((acc: any, name) => {\n const getterMethod = getterMethods[name];\n if (!getterMethod) return acc;\n acc[name] = (childrenProps = {}) => {\n const getterProps = getterMethod.call(this, childrenProps, acc[name].index);\n return assignProps(childrenProps, getterProps);\n };\n acc[name].index = -1;\n acc[name].cache = new Set();\n return acc;\n }, {}),\n );\n },\n static: function (WrapperComponent: any, Component: any) {\n if (Object.keys(childComponents).length && !WrapperComponent.displayName) {\n throw new Error('\"displayName\" is not defined');\n }\n return Object.entries(childComponents).reduce((acc: any, [name, value]: any) => {\n let childComponents = {};\n\n if (Array.isArray(value)) {\n childComponents = value[1];\n value = value[0];\n }\n\n const prevStaticComponent = value[STATIC_COMPONENT];\n // @ts-ignore\n const prevDisplayName = value.displayName;\n // @ts-ignore\n value.displayName = `${WrapperComponent.displayName}.${name}`;\n value[STATIC_COMPONENT] = true;\n value[ROOT_COMPONENT] = Component[ROOT_COMPONENT] || Component;\n acc[name] = createComponent(value, childComponents, options);\n // @ts-ignore\n value.displayName = prevDisplayName;\n value[STATIC_COMPONENT] = prevStaticComponent;\n return acc;\n }, {});\n },\n context: function (context: any /* , WrapperComponent */) {\n // const getterMethod = getterMethodNameByDisplayName(WrapperComponent.displayName);\n return {\n ...context,\n // [getterMethod]: this[SELF_GETTER_METHOD],\n ...pick(this, getterMethodNames as any),\n };\n },\n wrapperProps: function (this: any, props: any, WrapperComponent: any) {\n if (!WrapperComponent[STATIC_COMPONENT]) return props;\n const context: any = React.useContext(options.context);\n const getterMethod = context[getterMethodNameByDisplayName(WrapperComponent.displayName)];\n if (getterMethod) {\n if (!getterMethod.cache.has(this)) {\n getterMethod.cache.add(this);\n getterMethod.index++;\n if (this) this.index = getterMethod.index;\n }\n if (this) getterMethod.index = this.index;\n return getterMethod(props);\n }\n return props;\n },\n render: function (this: any, render: any) {\n getterMethodNames.forEach((name) => {\n if (this[name] === undefined) return;\n this[name].index = -1;\n this[name].cache.clear();\n });\n return render;\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"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","ignoreList":[]}
@@ -1,21 +1,26 @@
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 = exports.STYLES_CONTEXT = void 0;
7
+ exports["default"] = exports.STYLES_CONTEXT = void 0;
8
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _objectSpread3 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
8
11
  var _react = _interopRequireDefault(require("react"));
9
12
  var _staticChildren = require("./staticChildren");
10
13
  var _index = require("../styled/index");
11
- const STYLES_CONTEXT = exports.STYLES_CONTEXT = Symbol('STYLES_CONTEXT');
12
- const STYLES_SELF = Symbol('STYLES_SELF');
14
+ var _excluded = ["_styles", "styles"],
15
+ _excluded2 = ["styles"];
16
+ var STYLES_CONTEXT = exports.STYLES_CONTEXT = Symbol('STYLES_CONTEXT');
17
+ var STYLES_SELF = Symbol('STYLES_SELF');
13
18
  function Enhancement(childComponents, Context) {
14
19
  return {
15
- condition: function (Component) {
20
+ condition: function condition(Component) {
16
21
  return Boolean(Component.style || Component[_staticChildren.STATIC_COMPONENT]);
17
22
  },
18
- init: function (props, WrapperComponent) {
23
+ init: function init(props, WrapperComponent) {
19
24
  if (props.styles) {
20
25
  this[STYLES_SELF] = props.styles;
21
26
  }
@@ -23,38 +28,31 @@ function Enhancement(childComponents, Context) {
23
28
  this[STYLES_SELF] = _index.sstyled.merge(WrapperComponent.style, props._styles);
24
29
  }
25
30
  },
26
- context: function (context) {
31
+ context: function context(_context) {
27
32
  // Optimization: if has no children there is no need to create new context (by lsroman)
28
33
  if (!this[STYLES_SELF] || !Object.keys(childComponents).length) {
29
- return context;
34
+ return _context;
30
35
  }
31
- return {
32
- ...context,
33
- [STYLES_CONTEXT]: this[STYLES_SELF]
34
- };
36
+ return (0, _objectSpread3["default"])((0, _objectSpread3["default"])({}, _context), {}, (0, _defineProperty2["default"])({}, STYLES_CONTEXT, this[STYLES_SELF]));
35
37
  },
36
- asProps: function ({
37
- _styles,
38
- styles,
39
- ...props
40
- }) {
41
- return {
42
- ...props,
38
+ asProps: function asProps(_ref) {
39
+ var _styles = _ref._styles,
40
+ styles = _ref.styles,
41
+ props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
42
+ return (0, _objectSpread3["default"])((0, _objectSpread3["default"])({}, props), {}, {
43
43
  styles: this[STYLES_SELF]
44
- };
44
+ });
45
45
  },
46
- wrapperProps: function ({
47
- styles,
48
- ...props
49
- }) {
50
- const context = _react.default.useContext(Context);
51
- return {
52
- ...props,
46
+ wrapperProps: function wrapperProps(_ref2) {
47
+ var styles = _ref2.styles,
48
+ props = (0, _objectWithoutProperties2["default"])(_ref2, _excluded2);
49
+ var context = _react["default"].useContext(Context);
50
+ return (0, _objectSpread3["default"])((0, _objectSpread3["default"])({}, props), {}, {
53
51
  _styles: styles,
54
52
  styles: context[STYLES_CONTEXT]
55
- };
53
+ });
56
54
  }
57
55
  };
58
56
  }
59
- var _default = exports.default = Enhancement;
57
+ var _default = exports["default"] = Enhancement;
60
58
  //# sourceMappingURL=style.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"style.js","names":["_react","_interopRequireDefault","require","_staticChildren","_index","STYLES_CONTEXT","exports","Symbol","STYLES_SELF","Enhancement","childComponents","Context","condition","Component","Boolean","style","STATIC_COMPONENT","init","props","WrapperComponent","styles","sstyled","merge","_styles","context","Object","keys","length","asProps","wrapperProps","React","useContext","_default","default"],"sources":["../../src/enhancement/style.tsx"],"sourcesContent":["import React from 'react';\n\nimport { STATIC_COMPONENT } from './staticChildren';\nimport { sstyled } from '../styled/index';\n\nexport const STYLES_CONTEXT = Symbol('STYLES_CONTEXT');\nconst STYLES_SELF = Symbol('STYLES_SELF');\n\nfunction Enhancement(childComponents: any, Context: any) {\n return {\n condition: function (Component: any) {\n return Boolean(Component.style || Component[STATIC_COMPONENT]);\n },\n init: function (this: any, props: any, WrapperComponent: any) {\n if (props.styles) {\n this[STYLES_SELF] = props.styles;\n }\n if (WrapperComponent.style) {\n this[STYLES_SELF] = sstyled.merge(WrapperComponent.style, props._styles);\n }\n },\n context: function (this: any, context: any): any {\n // Optimization: if has no children there is no need to create new context (by lsroman)\n if (!this[STYLES_SELF] || !Object.keys(childComponents).length) {\n return context;\n }\n return {\n ...context,\n [STYLES_CONTEXT]: this[STYLES_SELF],\n };\n },\n\n asProps: function (this: any, { _styles, styles, ...props }: any) {\n return {\n ...props,\n styles: this[STYLES_SELF],\n };\n },\n wrapperProps: function (this: any, { styles, ...props }: any) {\n const context: any = React.useContext(Context);\n return {\n ...props,\n _styles: styles,\n styles: context[STYLES_CONTEXT],\n };\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAEO,MAAMG,cAAc,GAAAC,OAAA,CAAAD,cAAA,GAAGE,MAAM,CAAC,gBAAgB,CAAC;AACtD,MAAMC,WAAW,GAAGD,MAAM,CAAC,aAAa,CAAC;AAEzC,SAASE,WAAWA,CAACC,eAAoB,EAAEC,OAAY,EAAE;EACvD,OAAO;IACLC,SAAS,EAAE,SAAAA,CAAUC,SAAc,EAAE;MACnC,OAAOC,OAAO,CAACD,SAAS,CAACE,KAAK,IAAIF,SAAS,CAACG,gCAAgB,CAAC,CAAC;IAChE,CAAC;IACDC,IAAI,EAAE,SAAAA,CAAqBC,KAAU,EAAEC,gBAAqB,EAAE;MAC5D,IAAID,KAAK,CAACE,MAAM,EAAE;QAChB,IAAI,CAACZ,WAAW,CAAC,GAAGU,KAAK,CAACE,MAAM;MAClC;MACA,IAAID,gBAAgB,CAACJ,KAAK,EAAE;QAC1B,IAAI,CAACP,WAAW,CAAC,GAAGa,cAAO,CAACC,KAAK,CAACH,gBAAgB,CAACJ,KAAK,EAAEG,KAAK,CAACK,OAAO,CAAC;MAC1E;IACF,CAAC;IACDC,OAAO,EAAE,SAAAA,CAAqBA,OAAY,EAAO;MAC/C;MACA,IAAI,CAAC,IAAI,CAAChB,WAAW,CAAC,IAAI,CAACiB,MAAM,CAACC,IAAI,CAAChB,eAAe,CAAC,CAACiB,MAAM,EAAE;QAC9D,OAAOH,OAAO;MAChB;MACA,OAAO;QACL,GAAGA,OAAO;QACV,CAACnB,cAAc,GAAG,IAAI,CAACG,WAAW;MACpC,CAAC;IACH,CAAC;IAEDoB,OAAO,EAAE,SAAAA,CAAqB;MAAEL,OAAO;MAAEH,MAAM;MAAE,GAAGF;IAAW,CAAC,EAAE;MAChE,OAAO;QACL,GAAGA,KAAK;QACRE,MAAM,EAAE,IAAI,CAACZ,WAAW;MAC1B,CAAC;IACH,CAAC;IACDqB,YAAY,EAAE,SAAAA,CAAqB;MAAET,MAAM;MAAE,GAAGF;IAAW,CAAC,EAAE;MAC5D,MAAMM,OAAY,GAAGM,cAAK,CAACC,UAAU,CAACpB,OAAO,CAAC;MAC9C,OAAO;QACL,GAAGO,KAAK;QACRK,OAAO,EAAEH,MAAM;QACfA,MAAM,EAAEI,OAAO,CAACnB,cAAc;MAChC,CAAC;IACH;EACF,CAAC;AACH;AAAC,IAAA2B,QAAA,GAAA1B,OAAA,CAAA2B,OAAA,GAEcxB,WAAW","ignoreList":[]}
1
+ {"version":3,"file":"style.js","names":["_react","_interopRequireDefault","require","_staticChildren","_index","_excluded","_excluded2","STYLES_CONTEXT","exports","Symbol","STYLES_SELF","Enhancement","childComponents","Context","condition","Component","Boolean","style","STATIC_COMPONENT","init","props","WrapperComponent","styles","sstyled","merge","_styles","context","Object","keys","length","_objectSpread3","_defineProperty2","asProps","_ref","_objectWithoutProperties2","wrapperProps","_ref2","React","useContext","_default"],"sources":["../../src/enhancement/style.tsx"],"sourcesContent":["import React from 'react';\n\nimport { STATIC_COMPONENT } from './staticChildren';\nimport { sstyled } from '../styled/index';\n\nexport const STYLES_CONTEXT = Symbol('STYLES_CONTEXT');\nconst STYLES_SELF = Symbol('STYLES_SELF');\n\nfunction Enhancement(childComponents: any, Context: any) {\n return {\n condition: function (Component: any) {\n return Boolean(Component.style || Component[STATIC_COMPONENT]);\n },\n init: function (this: any, props: any, WrapperComponent: any) {\n if (props.styles) {\n this[STYLES_SELF] = props.styles;\n }\n if (WrapperComponent.style) {\n this[STYLES_SELF] = sstyled.merge(WrapperComponent.style, props._styles);\n }\n },\n context: function (this: any, context: any): any {\n // Optimization: if has no children there is no need to create new context (by lsroman)\n if (!this[STYLES_SELF] || !Object.keys(childComponents).length) {\n return context;\n }\n return {\n ...context,\n [STYLES_CONTEXT]: this[STYLES_SELF],\n };\n },\n\n asProps: function (this: any, { _styles, styles, ...props }: any) {\n return {\n ...props,\n styles: this[STYLES_SELF],\n };\n },\n wrapperProps: function (this: any, { styles, ...props }: any) {\n const context: any = React.useContext(Context);\n return {\n ...props,\n _styles: styles,\n styles: context[STYLES_CONTEXT],\n };\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAA0C,IAAAG,SAAA;EAAAC,UAAA;AAEnC,IAAMC,cAAc,GAAAC,OAAA,CAAAD,cAAA,GAAGE,MAAM,CAAC,gBAAgB,CAAC;AACtD,IAAMC,WAAW,GAAGD,MAAM,CAAC,aAAa,CAAC;AAEzC,SAASE,WAAWA,CAACC,eAAoB,EAAEC,OAAY,EAAE;EACvD,OAAO;IACLC,SAAS,EAAE,SAAXA,SAASA,CAAYC,SAAc,EAAE;MACnC,OAAOC,OAAO,CAACD,SAAS,CAACE,KAAK,IAAIF,SAAS,CAACG,gCAAgB,CAAC,CAAC;IAChE,CAAC;IACDC,IAAI,EAAE,SAANA,IAAIA,CAAuBC,KAAU,EAAEC,gBAAqB,EAAE;MAC5D,IAAID,KAAK,CAACE,MAAM,EAAE;QAChB,IAAI,CAACZ,WAAW,CAAC,GAAGU,KAAK,CAACE,MAAM;MAClC;MACA,IAAID,gBAAgB,CAACJ,KAAK,EAAE;QAC1B,IAAI,CAACP,WAAW,CAAC,GAAGa,cAAO,CAACC,KAAK,CAACH,gBAAgB,CAACJ,KAAK,EAAEG,KAAK,CAACK,OAAO,CAAC;MAC1E;IACF,CAAC;IACDC,OAAO,EAAE,SAATA,OAAOA,CAAuBA,QAAY,EAAO;MAC/C;MACA,IAAI,CAAC,IAAI,CAAChB,WAAW,CAAC,IAAI,CAACiB,MAAM,CAACC,IAAI,CAAChB,eAAe,CAAC,CAACiB,MAAM,EAAE;QAC9D,OAAOH,QAAO;MAChB;MACA,WAAAI,cAAA,iBAAAA,cAAA,iBACKJ,QAAO,WAAAK,gBAAA,iBACTxB,cAAc,EAAG,IAAI,CAACG,WAAW,CAAC;IAEvC,CAAC;IAEDsB,OAAO,EAAE,SAATA,OAAOA,CAAAC,IAAA,EAA2D;MAAA,IAAlCR,OAAO,GAAAQ,IAAA,CAAPR,OAAO;QAAEH,MAAM,GAAAW,IAAA,CAANX,MAAM;QAAKF,KAAK,OAAAc,yBAAA,aAAAD,IAAA,EAAA5B,SAAA;MACvD,WAAAyB,cAAA,iBAAAA,cAAA,iBACKV,KAAK;QACRE,MAAM,EAAE,IAAI,CAACZ,WAAW;MAAC;IAE7B,CAAC;IACDyB,YAAY,EAAE,SAAdA,YAAYA,CAAAC,KAAA,EAAkD;MAAA,IAAzBd,MAAM,GAAAc,KAAA,CAANd,MAAM;QAAKF,KAAK,OAAAc,yBAAA,aAAAE,KAAA,EAAA9B,UAAA;MACnD,IAAMoB,OAAY,GAAGW,iBAAK,CAACC,UAAU,CAACzB,OAAO,CAAC;MAC9C,WAAAiB,cAAA,iBAAAA,cAAA,iBACKV,KAAK;QACRK,OAAO,EAAEH,MAAM;QACfA,MAAM,EAAEI,OAAO,CAACnB,cAAc;MAAC;IAEnC;EACF,CAAC;AACH;AAAC,IAAAgC,QAAA,GAAA/B,OAAA,cAEcG,WAAW","ignoreList":[]}
@@ -1,15 +1,19 @@
1
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
2
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
1
4
  import React from "react";
2
5
  import { STATIC_COMPONENT } from "./staticChildren.mjs";
3
6
  import "../styled/index.mjs";
4
7
  import { sstyled } from "../styled/sstyled.mjs";
5
- const STYLES_CONTEXT = /* @__PURE__ */ Symbol("STYLES_CONTEXT");
6
- const STYLES_SELF = /* @__PURE__ */ Symbol("STYLES_SELF");
8
+ var _excluded = ["_styles", "styles"], _excluded2 = ["styles"];
9
+ var STYLES_CONTEXT = /* @__PURE__ */ Symbol("STYLES_CONTEXT");
10
+ var STYLES_SELF = /* @__PURE__ */ Symbol("STYLES_SELF");
7
11
  function Enhancement(childComponents, Context) {
8
12
  return {
9
- condition: function(Component) {
13
+ condition: function condition(Component) {
10
14
  return Boolean(Component.style || Component[STATIC_COMPONENT]);
11
15
  },
12
- init: function(props, WrapperComponent) {
16
+ init: function init(props, WrapperComponent) {
13
17
  if (props.styles) {
14
18
  this[STYLES_SELF] = props.styles;
15
19
  }
@@ -17,35 +21,25 @@ function Enhancement(childComponents, Context) {
17
21
  this[STYLES_SELF] = sstyled.merge(WrapperComponent.style, props._styles);
18
22
  }
19
23
  },
20
- context: function(context) {
24
+ context: function context(_context) {
21
25
  if (!this[STYLES_SELF] || !Object.keys(childComponents).length) {
22
- return context;
26
+ return _context;
23
27
  }
24
- return {
25
- ...context,
26
- [STYLES_CONTEXT]: this[STYLES_SELF]
27
- };
28
+ return _objectSpread(_objectSpread({}, _context), {}, _defineProperty({}, STYLES_CONTEXT, this[STYLES_SELF]));
28
29
  },
29
- asProps: function({
30
- _styles,
31
- styles,
32
- ...props
33
- }) {
34
- return {
35
- ...props,
30
+ asProps: function asProps(_ref) {
31
+ var _styles = _ref._styles, styles = _ref.styles, props = _objectWithoutProperties(_ref, _excluded);
32
+ return _objectSpread(_objectSpread({}, props), {}, {
36
33
  styles: this[STYLES_SELF]
37
- };
34
+ });
38
35
  },
39
- wrapperProps: function({
40
- styles,
41
- ...props
42
- }) {
43
- const context = React.useContext(Context);
44
- return {
45
- ...props,
36
+ wrapperProps: function wrapperProps(_ref2) {
37
+ var styles = _ref2.styles, props = _objectWithoutProperties(_ref2, _excluded2);
38
+ var context = React.useContext(Context);
39
+ return _objectSpread(_objectSpread({}, props), {}, {
46
40
  _styles: styles,
47
41
  styles: context[STYLES_CONTEXT]
48
- };
42
+ });
49
43
  }
50
44
  };
51
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"style.mjs","names":["React","STATIC_COMPONENT","sstyled","STYLES_CONTEXT","Symbol","STYLES_SELF","Enhancement","childComponents","Context","condition","Component","Boolean","style","init","props","WrapperComponent","styles","merge","_styles","context","Object","keys","length","asProps","wrapperProps","useContext"],"sources":["../../src/enhancement/style.tsx"],"sourcesContent":["import React from 'react';\n\nimport { STATIC_COMPONENT } from './staticChildren';\nimport { sstyled } from '../styled/index';\n\nexport const STYLES_CONTEXT = Symbol('STYLES_CONTEXT');\nconst STYLES_SELF = Symbol('STYLES_SELF');\n\nfunction Enhancement(childComponents: any, Context: any) {\n return {\n condition: function (Component: any) {\n return Boolean(Component.style || Component[STATIC_COMPONENT]);\n },\n init: function (this: any, props: any, WrapperComponent: any) {\n if (props.styles) {\n this[STYLES_SELF] = props.styles;\n }\n if (WrapperComponent.style) {\n this[STYLES_SELF] = sstyled.merge(WrapperComponent.style, props._styles);\n }\n },\n context: function (this: any, context: any): any {\n // Optimization: if has no children there is no need to create new context (by lsroman)\n if (!this[STYLES_SELF] || !Object.keys(childComponents).length) {\n return context;\n }\n return {\n ...context,\n [STYLES_CONTEXT]: this[STYLES_SELF],\n };\n },\n\n asProps: function (this: any, { _styles, styles, ...props }: any) {\n return {\n ...props,\n styles: this[STYLES_SELF],\n };\n },\n wrapperProps: function (this: any, { styles, ...props }: any) {\n const context: any = React.useContext(Context);\n return {\n ...props,\n _styles: styles,\n styles: context[STYLES_CONTEXT],\n };\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,gBAAgB,QAAQ,sBAAkB;AACnD,SAASC,OAAO,QAAQ,qBAAiB;AAEzC,OAAO,MAAMC,cAAc,GAAGC,MAAM,CAAC,gBAAgB,CAAC;AACtD,MAAMC,WAAW,GAAGD,MAAM,CAAC,aAAa,CAAC;AAEzC,SAASE,WAAWA,CAACC,eAAoB,EAAEC,OAAY,EAAE;EACvD,OAAO;IACLC,SAAS,EAAE,SAAAA,CAAUC,SAAc,EAAE;MACnC,OAAOC,OAAO,CAACD,SAAS,CAACE,KAAK,IAAIF,SAAS,CAACT,gBAAgB,CAAC,CAAC;IAChE,CAAC;IACDY,IAAI,EAAE,SAAAA,CAAqBC,KAAU,EAAEC,gBAAqB,EAAE;MAC5D,IAAID,KAAK,CAACE,MAAM,EAAE;QAChB,IAAI,CAACX,WAAW,CAAC,GAAGS,KAAK,CAACE,MAAM;MAClC;MACA,IAAID,gBAAgB,CAACH,KAAK,EAAE;QAC1B,IAAI,CAACP,WAAW,CAAC,GAAGH,OAAO,CAACe,KAAK,CAACF,gBAAgB,CAACH,KAAK,EAAEE,KAAK,CAACI,OAAO,CAAC;MAC1E;IACF,CAAC;IACDC,OAAO,EAAE,SAAAA,CAAqBA,OAAY,EAAO;MAC/C;MACA,IAAI,CAAC,IAAI,CAACd,WAAW,CAAC,IAAI,CAACe,MAAM,CAACC,IAAI,CAACd,eAAe,CAAC,CAACe,MAAM,EAAE;QAC9D,OAAOH,OAAO;MAChB;MACA,OAAO;QACL,GAAGA,OAAO;QACV,CAAChB,cAAc,GAAG,IAAI,CAACE,WAAW;MACpC,CAAC;IACH,CAAC;IAEDkB,OAAO,EAAE,SAAAA,CAAqB;MAAEL,OAAO;MAAEF,MAAM;MAAE,GAAGF;IAAW,CAAC,EAAE;MAChE,OAAO;QACL,GAAGA,KAAK;QACRE,MAAM,EAAE,IAAI,CAACX,WAAW;MAC1B,CAAC;IACH,CAAC;IACDmB,YAAY,EAAE,SAAAA,CAAqB;MAAER,MAAM;MAAE,GAAGF;IAAW,CAAC,EAAE;MAC5D,MAAMK,OAAY,GAAGnB,KAAK,CAACyB,UAAU,CAACjB,OAAO,CAAC;MAC9C,OAAO;QACL,GAAGM,KAAK;QACRI,OAAO,EAAEF,MAAM;QACfA,MAAM,EAAEG,OAAO,CAAChB,cAAc;MAChC,CAAC;IACH;EACF,CAAC;AACH;AAEA,eAAeG,WAAW","ignoreList":[]}
1
+ {"version":3,"file":"style.mjs","names":["React","STATIC_COMPONENT","sstyled","STYLES_CONTEXT","Symbol","STYLES_SELF","Enhancement","childComponents","Context","condition","Component","Boolean","style","init","props","WrapperComponent","styles","merge","_styles","context","Object","keys","length","_objectSpread","_defineProperty","asProps","_ref","_objectWithoutProperties","_excluded","wrapperProps","_ref2","_excluded2","useContext"],"sources":["../../src/enhancement/style.tsx"],"sourcesContent":["import React from 'react';\n\nimport { STATIC_COMPONENT } from './staticChildren';\nimport { sstyled } from '../styled/index';\n\nexport const STYLES_CONTEXT = Symbol('STYLES_CONTEXT');\nconst STYLES_SELF = Symbol('STYLES_SELF');\n\nfunction Enhancement(childComponents: any, Context: any) {\n return {\n condition: function (Component: any) {\n return Boolean(Component.style || Component[STATIC_COMPONENT]);\n },\n init: function (this: any, props: any, WrapperComponent: any) {\n if (props.styles) {\n this[STYLES_SELF] = props.styles;\n }\n if (WrapperComponent.style) {\n this[STYLES_SELF] = sstyled.merge(WrapperComponent.style, props._styles);\n }\n },\n context: function (this: any, context: any): any {\n // Optimization: if has no children there is no need to create new context (by lsroman)\n if (!this[STYLES_SELF] || !Object.keys(childComponents).length) {\n return context;\n }\n return {\n ...context,\n [STYLES_CONTEXT]: this[STYLES_SELF],\n };\n },\n\n asProps: function (this: any, { _styles, styles, ...props }: any) {\n return {\n ...props,\n styles: this[STYLES_SELF],\n };\n },\n wrapperProps: function (this: any, { styles, ...props }: any) {\n const context: any = React.useContext(Context);\n return {\n ...props,\n _styles: styles,\n styles: context[STYLES_CONTEXT],\n };\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,gBAAgB,QAAQ,sBAAkB;AACnD,SAASC,OAAO,QAAQ,qBAAiB;AAEzC,OAAO,IAAMC,cAAc,GAAGC,MAAM,CAAC,gBAAgB,CAAC;AACtD,IAAMC,WAAW,GAAGD,MAAM,CAAC,aAAa,CAAC;AAEzC,SAASE,WAAWA,CAACC,eAAoB,EAAEC,OAAY,EAAE;EACvD,OAAO;IACLC,SAAS,EAAE,SAAXA,SAASA,CAAYC,SAAc,EAAE;MACnC,OAAOC,OAAO,CAACD,SAAS,CAACE,KAAK,IAAIF,SAAS,CAACT,gBAAgB,CAAC,CAAC;IAChE,CAAC;IACDY,IAAI,EAAE,SAANA,IAAIA,CAAuBC,KAAU,EAAEC,gBAAqB,EAAE;MAC5D,IAAID,KAAK,CAACE,MAAM,EAAE;QAChB,IAAI,CAACX,WAAW,CAAC,GAAGS,KAAK,CAACE,MAAM;MAClC;MACA,IAAID,gBAAgB,CAACH,KAAK,EAAE;QAC1B,IAAI,CAACP,WAAW,CAAC,GAAGH,OAAO,CAACe,KAAK,CAACF,gBAAgB,CAACH,KAAK,EAAEE,KAAK,CAACI,OAAO,CAAC;MAC1E;IACF,CAAC;IACDC,OAAO,EAAE,SAATA,OAAOA,CAAuBA,QAAY,EAAO;MAC/C;MACA,IAAI,CAAC,IAAI,CAACd,WAAW,CAAC,IAAI,CAACe,MAAM,CAACC,IAAI,CAACd,eAAe,CAAC,CAACe,MAAM,EAAE;QAC9D,OAAOH,QAAO;MAChB;MACA,OAAAI,aAAA,CAAAA,aAAA,KACKJ,QAAO,OAAAK,eAAA,KACTrB,cAAc,EAAG,IAAI,CAACE,WAAW,CAAC;IAEvC,CAAC;IAEDoB,OAAO,EAAE,SAATA,OAAOA,CAAAC,IAAA,EAA2D;MAAA,IAAlCR,OAAO,GAAAQ,IAAA,CAAPR,OAAO;QAAEF,MAAM,GAAAU,IAAA,CAANV,MAAM;QAAKF,KAAK,GAAAa,wBAAA,CAAAD,IAAA,EAAAE,SAAA;MACvD,OAAAL,aAAA,CAAAA,aAAA,KACKT,KAAK;QACRE,MAAM,EAAE,IAAI,CAACX,WAAW;MAAC;IAE7B,CAAC;IACDwB,YAAY,EAAE,SAAdA,YAAYA,CAAAC,KAAA,EAAkD;MAAA,IAAzBd,MAAM,GAAAc,KAAA,CAANd,MAAM;QAAKF,KAAK,GAAAa,wBAAA,CAAAG,KAAA,EAAAC,UAAA;MACnD,IAAMZ,OAAY,GAAGnB,KAAK,CAACgC,UAAU,CAACxB,OAAO,CAAC;MAC9C,OAAAe,aAAA,CAAAA,aAAA,KACKT,KAAK;QACRI,OAAO,EAAEF,MAAM;QACfA,MAAM,EAAEG,OAAO,CAAChB,cAAc;MAAC;IAEnC;EACF,CAAC;AACH;AAEA,eAAeG,WAAW","ignoreList":[]}