@semcore/core 17.0.0-prerelease.43 → 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.
- package/CHANGELOG.md +3 -111
- package/README.md +35 -5
- package/lib/LastInteractionType.js +36 -22
- package/lib/LastInteractionType.js.map +1 -1
- package/lib/LastInteractionType.mjs +33 -19
- package/lib/LastInteractionType.mjs.map +1 -1
- package/lib/core-types/Component.js +41 -25
- package/lib/core-types/Component.js.map +1 -1
- package/lib/core-types/Component.mjs +38 -18
- package/lib/core-types/Component.mjs.map +1 -1
- package/lib/core-types/symbols.js +9 -9
- package/lib/core-types/symbols.js.map +1 -1
- package/lib/core-types/symbols.mjs +9 -9
- package/lib/core-types/symbols.mjs.map +1 -1
- package/lib/coreFactory.js +238 -158
- package/lib/coreFactory.js.map +1 -1
- package/lib/coreFactory.mjs +189 -133
- package/lib/coreFactory.mjs.map +1 -1
- package/lib/decorators/propsObserver.js +64 -36
- package/lib/decorators/propsObserver.js.map +1 -1
- package/lib/decorators/propsObserver.mjs +61 -33
- package/lib/decorators/propsObserver.mjs.map +1 -1
- package/lib/decorators/reactive.js +17 -17
- package/lib/decorators/reactive.js.map +1 -1
- package/lib/decorators/reactive.mjs +15 -15
- package/lib/decorators/reactive.mjs.map +1 -1
- package/lib/enhancement/Children.js +59 -51
- package/lib/enhancement/Children.js.map +1 -1
- package/lib/enhancement/Children.mjs +41 -47
- package/lib/enhancement/Children.mjs.map +1 -1
- package/lib/enhancement/Root.js +37 -36
- package/lib/enhancement/Root.js.map +1 -1
- package/lib/enhancement/Root.mjs +18 -28
- package/lib/enhancement/Root.mjs.map +1 -1
- package/lib/enhancement/dataName.js +8 -7
- package/lib/enhancement/dataName.js.map +1 -1
- package/lib/enhancement/dataName.mjs +5 -5
- package/lib/enhancement/dataName.mjs.map +1 -1
- package/lib/enhancement/enhance.js +9 -6
- package/lib/enhancement/enhance.js.map +1 -1
- package/lib/enhancement/enhance.mjs +7 -4
- package/lib/enhancement/enhance.mjs.map +1 -1
- package/lib/enhancement/functionDefaultProps.js +6 -6
- package/lib/enhancement/functionDefaultProps.js.map +1 -1
- package/lib/enhancement/functionDefaultProps.mjs +4 -4
- package/lib/enhancement/functionDefaultProps.mjs.map +1 -1
- package/lib/enhancement/i18n.js +13 -13
- package/lib/enhancement/i18n.js.map +1 -1
- package/lib/enhancement/i18n.mjs +9 -10
- package/lib/enhancement/i18n.mjs.map +1 -1
- package/lib/enhancement/inheritedName.js +8 -7
- package/lib/enhancement/inheritedName.js.map +1 -1
- package/lib/enhancement/inheritedName.mjs +5 -5
- package/lib/enhancement/inheritedName.mjs.map +1 -1
- package/lib/enhancement/staticChildren.js +56 -47
- package/lib/enhancement/staticChildren.js.map +1 -1
- package/lib/enhancement/staticChildren.mjs +48 -43
- package/lib/enhancement/staticChildren.mjs.map +1 -1
- package/lib/enhancement/style.js +27 -29
- package/lib/enhancement/style.js.map +1 -1
- package/lib/enhancement/style.mjs +20 -26
- package/lib/enhancement/style.mjs.map +1 -1
- package/lib/enhancement/uncontrolledProps.js +65 -46
- package/lib/enhancement/uncontrolledProps.js.map +1 -1
- package/lib/enhancement/uncontrolledProps.mjs +52 -43
- package/lib/enhancement/uncontrolledProps.mjs.map +1 -1
- package/lib/esm/LastInteractionType.mjs +33 -19
- package/lib/esm/core-types/Component.mjs +38 -18
- package/lib/esm/core-types/symbols.mjs +9 -9
- package/lib/esm/coreFactory.mjs +189 -133
- package/lib/esm/enhancement/Children.mjs +41 -47
- package/lib/esm/enhancement/Root.mjs +18 -28
- package/lib/esm/enhancement/dataName.mjs +5 -5
- package/lib/esm/enhancement/enhance.mjs +7 -4
- package/lib/esm/enhancement/functionDefaultProps.mjs +4 -4
- package/lib/esm/enhancement/i18n.mjs +9 -10
- package/lib/esm/enhancement/inheritedName.mjs +5 -5
- package/lib/esm/enhancement/staticChildren.mjs +48 -43
- package/lib/esm/enhancement/style.mjs +20 -26
- package/lib/esm/enhancement/uncontrolledProps.mjs +52 -43
- package/lib/esm/register.mjs +20 -12
- package/lib/esm/styled/reshadow-core.mjs +111 -98
- package/lib/esm/styled/sstyled.mjs +41 -31
- package/lib/esm/utils/assignProps.mjs +36 -32
- package/lib/esm/utils/enhances/WithI18n.mjs +17 -15
- package/lib/esm/utils/enhances/i18nEnhance.mjs +61 -47
- package/lib/esm/utils/logger.mjs +21 -13
- package/lib/esm/utils/pick.mjs +4 -4
- package/lib/esm/utils/ref.mjs +43 -27
- package/lib/esm/utils/use/useEnhancedEffect.mjs +1 -1
- package/lib/index.js +17 -17
- package/lib/register.js +24 -17
- package/lib/register.js.map +1 -1
- package/lib/register.mjs +20 -12
- package/lib/register.mjs.map +1 -1
- package/lib/styled/index.js +4 -4
- package/lib/styled/reshadow-core.js +104 -102
- package/lib/styled/reshadow-core.js.map +1 -1
- package/lib/styled/reshadow-core.mjs +111 -98
- package/lib/styled/reshadow-core.mjs.map +1 -1
- package/lib/styled/sstyled.js +53 -31
- package/lib/styled/sstyled.js.map +1 -1
- package/lib/styled/sstyled.mjs +41 -31
- package/lib/styled/sstyled.mjs.map +1 -1
- package/lib/theme/themes/dark.js +2 -2
- package/lib/theme/themes/dark.js.map +1 -1
- package/lib/theme/themes/default.js +2 -2
- package/lib/theme/themes/default.js.map +1 -1
- package/lib/theme/themes/highlights-dark.js +2 -2
- package/lib/theme/themes/highlights-dark.js.map +1 -1
- package/lib/theme/themes/highlights-light.js +2 -2
- package/lib/theme/themes/highlights-light.js.map +1 -1
- package/lib/theme/themes/light.js +2 -2
- package/lib/theme/themes/light.js.map +1 -1
- package/lib/utils/CSSinJS.js +10 -8
- package/lib/utils/CSSinJS.js.map +1 -1
- package/lib/utils/CSSinJS.mjs +7 -6
- package/lib/utils/CSSinJS.mjs.map +1 -1
- package/lib/utils/ThemeProvider.js +51 -44
- package/lib/utils/ThemeProvider.js.map +1 -1
- package/lib/utils/ThemeProvider.mjs +47 -36
- package/lib/utils/ThemeProvider.mjs.map +1 -1
- package/lib/utils/addonText.js +7 -4
- package/lib/utils/addonText.js.map +1 -1
- package/lib/utils/addonText.mjs +5 -2
- package/lib/utils/addonText.mjs.map +1 -1
- package/lib/utils/addonTextChildren.js +21 -15
- package/lib/utils/addonTextChildren.js.map +1 -1
- package/lib/utils/addonTextChildren.mjs +13 -7
- package/lib/utils/addonTextChildren.mjs.map +1 -1
- package/lib/utils/ariaProps.js +5 -7
- package/lib/utils/ariaProps.js.map +1 -1
- package/lib/utils/ariaProps.mjs +5 -7
- package/lib/utils/ariaProps.mjs.map +1 -1
- package/lib/utils/assignProps.js +37 -33
- package/lib/utils/assignProps.js.map +1 -1
- package/lib/utils/assignProps.mjs +36 -32
- package/lib/utils/assignProps.mjs.map +1 -1
- package/lib/utils/canUseDOM.js +1 -1
- package/lib/utils/capitalizeFirstLetter.js +1 -1
- package/lib/utils/color.js +95 -72
- package/lib/utils/color.js.map +1 -1
- package/lib/utils/color.mjs +94 -71
- package/lib/utils/color.mjs.map +1 -1
- package/lib/utils/compose.js +12 -3
- package/lib/utils/compose.js.map +1 -1
- package/lib/utils/compose.mjs +11 -2
- package/lib/utils/compose.mjs.map +1 -1
- package/lib/utils/createUUID.js +5 -5
- package/lib/utils/createUUID.js.map +1 -1
- package/lib/utils/createUUID.mjs +4 -4
- package/lib/utils/createUUID.mjs.map +1 -1
- package/lib/utils/cssToIntDefault.js +4 -3
- package/lib/utils/cssToIntDefault.js.map +1 -1
- package/lib/utils/cssToIntDefault.mjs +3 -2
- package/lib/utils/cssToIntDefault.mjs.map +1 -1
- package/lib/utils/enhances/WithCSS.js +8 -10
- package/lib/utils/enhances/WithCSS.js.map +1 -1
- package/lib/utils/enhances/WithCSS.mjs +6 -7
- package/lib/utils/enhances/WithCSS.mjs.map +1 -1
- package/lib/utils/enhances/WithI18n.js +19 -19
- package/lib/utils/enhances/WithI18n.js.map +1 -1
- package/lib/utils/enhances/WithI18n.mjs +17 -15
- package/lib/utils/enhances/WithI18n.mjs.map +1 -1
- package/lib/utils/enhances/a11yEnhance.js +39 -34
- package/lib/utils/enhances/a11yEnhance.js.map +1 -1
- package/lib/utils/enhances/a11yEnhance.mjs +36 -32
- package/lib/utils/enhances/a11yEnhance.mjs.map +1 -1
- package/lib/utils/enhances/animatedSizeEnhance.js +63 -55
- package/lib/utils/enhances/animatedSizeEnhance.js.map +1 -1
- package/lib/utils/enhances/animatedSizeEnhance.mjs +58 -50
- package/lib/utils/enhances/animatedSizeEnhance.mjs.map +1 -1
- package/lib/utils/enhances/contextEnhance.js +11 -12
- package/lib/utils/enhances/contextEnhance.js.map +1 -1
- package/lib/utils/enhances/contextEnhance.mjs +8 -9
- package/lib/utils/enhances/contextEnhance.mjs.map +1 -1
- package/lib/utils/enhances/i18nEnhance.js +67 -51
- package/lib/utils/enhances/i18nEnhance.js.map +1 -1
- package/lib/utils/enhances/i18nEnhance.mjs +61 -47
- package/lib/utils/enhances/i18nEnhance.mjs.map +1 -1
- package/lib/utils/enhances/resolveColorEnhance.js +10 -12
- package/lib/utils/enhances/resolveColorEnhance.js.map +1 -1
- package/lib/utils/enhances/resolveColorEnhance.mjs +6 -8
- package/lib/utils/enhances/resolveColorEnhance.mjs.map +1 -1
- package/lib/utils/eventEmitter.js +57 -30
- package/lib/utils/eventEmitter.js.map +1 -1
- package/lib/utils/eventEmitter.mjs +55 -26
- package/lib/utils/eventEmitter.mjs.map +1 -1
- package/lib/utils/findComponent.js +42 -35
- package/lib/utils/findComponent.js.map +1 -1
- package/lib/utils/findComponent.mjs +33 -26
- package/lib/utils/findComponent.mjs.map +1 -1
- package/lib/utils/fire.js +13 -7
- package/lib/utils/fire.js.map +1 -1
- package/lib/utils/fire.mjs +11 -5
- package/lib/utils/fire.mjs.map +1 -1
- package/lib/utils/focus-lock/focusBorders.js +32 -28
- package/lib/utils/focus-lock/focusBorders.js.map +1 -1
- package/lib/utils/focus-lock/focusBorders.mjs +32 -26
- package/lib/utils/focus-lock/focusBorders.mjs.map +1 -1
- package/lib/utils/focus-lock/getFocusableIn.js +6 -4
- package/lib/utils/focus-lock/getFocusableIn.js.map +1 -1
- package/lib/utils/focus-lock/getFocusableIn.mjs +6 -3
- package/lib/utils/focus-lock/getFocusableIn.mjs.map +1 -1
- package/lib/utils/focus-lock/isFocusInside.js +6 -5
- package/lib/utils/focus-lock/isFocusInside.js.map +1 -1
- package/lib/utils/focus-lock/isFocusInside.mjs +6 -4
- package/lib/utils/focus-lock/isFocusInside.mjs.map +1 -1
- package/lib/utils/focus-lock/isFocusable.js +12 -9
- package/lib/utils/focus-lock/isFocusable.js.map +1 -1
- package/lib/utils/focus-lock/isFocusable.mjs +11 -8
- package/lib/utils/focus-lock/isFocusable.mjs.map +1 -1
- package/lib/utils/focus-lock/setFocus.js +27 -21
- package/lib/utils/focus-lock/setFocus.js.map +1 -1
- package/lib/utils/focus-lock/setFocus.mjs +25 -19
- package/lib/utils/focus-lock/setFocus.mjs.map +1 -1
- package/lib/utils/getAccessibleName.js +22 -10
- package/lib/utils/getAccessibleName.js.map +1 -1
- package/lib/utils/getAccessibleName.mjs +21 -10
- package/lib/utils/getAccessibleName.mjs.map +1 -1
- package/lib/utils/getDisplayName.js +1 -1
- package/lib/utils/getEventTarget.js +32 -13
- package/lib/utils/getEventTarget.js.map +1 -1
- package/lib/utils/getEventTarget.mjs +31 -12
- package/lib/utils/getEventTarget.mjs.map +1 -1
- package/lib/utils/getOriginChildren.js +4 -4
- package/lib/utils/getOriginChildren.js.map +1 -1
- package/lib/utils/getRandomInt.js +1 -1
- package/lib/utils/getValue.js +6 -4
- package/lib/utils/getValue.js.map +1 -1
- package/lib/utils/getValue.mjs +5 -3
- package/lib/utils/getValue.mjs.map +1 -1
- package/lib/utils/hasLabels.js +27 -16
- package/lib/utils/hasLabels.js.map +1 -1
- package/lib/utils/hasLabels.mjs +24 -14
- package/lib/utils/hasLabels.mjs.map +1 -1
- package/lib/utils/hasParent.js +2 -3
- package/lib/utils/hasParent.js.map +1 -1
- package/lib/utils/hasParent.mjs +3 -2
- package/lib/utils/hasParent.mjs.map +1 -1
- package/lib/utils/ifChildren.js +4 -6
- package/lib/utils/ifChildren.js.map +1 -1
- package/lib/utils/ifChildren.mjs +2 -4
- package/lib/utils/ifChildren.mjs.map +1 -1
- package/lib/utils/indentStyles.js +10 -5
- package/lib/utils/indentStyles.js.map +1 -1
- package/lib/utils/indentStyles.mjs +9 -5
- package/lib/utils/indentStyles.mjs.map +1 -1
- package/lib/utils/injectStyle.js +13 -11
- package/lib/utils/injectStyle.js.map +1 -1
- package/lib/utils/injectStyle.mjs +10 -9
- package/lib/utils/injectStyle.mjs.map +1 -1
- package/lib/utils/inputProps.js +5 -5
- package/lib/utils/inputProps.js.map +1 -1
- package/lib/utils/inputProps.mjs +4 -4
- package/lib/utils/inputProps.mjs.map +1 -1
- package/lib/utils/isInteractiveElement.js +9 -7
- package/lib/utils/isInteractiveElement.js.map +1 -1
- package/lib/utils/isInteractiveElement.mjs +9 -7
- package/lib/utils/isInteractiveElement.mjs.map +1 -1
- package/lib/utils/isNode.js +5 -4
- package/lib/utils/isNode.js.map +1 -1
- package/lib/utils/isNode.mjs +2 -1
- package/lib/utils/isNode.mjs.map +1 -1
- package/lib/utils/isPromise.js +1 -1
- package/lib/utils/isRetina.js +2 -7
- package/lib/utils/isRetina.js.map +1 -1
- package/lib/utils/isRetina.mjs +1 -6
- package/lib/utils/isRetina.mjs.map +1 -1
- package/lib/utils/logger.js +25 -18
- package/lib/utils/logger.js.map +1 -1
- package/lib/utils/logger.mjs +21 -13
- package/lib/utils/logger.mjs.map +1 -1
- package/lib/utils/numericChecker.js +18 -11
- package/lib/utils/numericChecker.js.map +1 -1
- package/lib/utils/numericChecker.mjs +17 -10
- package/lib/utils/numericChecker.mjs.map +1 -1
- package/lib/utils/ownerDocument.js +2 -2
- package/lib/utils/ownerDocument.js.map +1 -1
- package/lib/utils/ownerDocument.mjs +1 -1
- package/lib/utils/ownerDocument.mjs.map +1 -1
- package/lib/utils/pick.js +5 -5
- package/lib/utils/pick.js.map +1 -1
- package/lib/utils/pick.mjs +4 -4
- package/lib/utils/pick.mjs.map +1 -1
- package/lib/utils/propsForElement.js +12 -10
- package/lib/utils/propsForElement.js.map +1 -1
- package/lib/utils/propsForElement.mjs +10 -8
- package/lib/utils/propsForElement.mjs.map +1 -1
- package/lib/utils/rafTrottle.js +14 -9
- package/lib/utils/rafTrottle.js.map +1 -1
- package/lib/utils/rafTrottle.mjs +12 -7
- package/lib/utils/rafTrottle.mjs.map +1 -1
- package/lib/utils/reactToText.js +8 -5
- package/lib/utils/reactToText.js.map +1 -1
- package/lib/utils/reactToText.mjs +6 -3
- package/lib/utils/reactToText.mjs.map +1 -1
- package/lib/utils/ref.js +47 -29
- package/lib/utils/ref.js.map +1 -1
- package/lib/utils/ref.mjs +43 -27
- package/lib/utils/ref.mjs.map +1 -1
- package/lib/utils/setRef.js +2 -2
- package/lib/utils/setRef.js.map +1 -1
- package/lib/utils/syncScroll.js +24 -24
- package/lib/utils/syncScroll.js.map +1 -1
- package/lib/utils/syncScroll.mjs +21 -21
- package/lib/utils/syncScroll.mjs.map +1 -1
- package/lib/utils/uncontroll.js +18 -8
- package/lib/utils/uncontroll.js.map +1 -1
- package/lib/utils/uncontroll.mjs +17 -8
- package/lib/utils/uncontroll.mjs.map +1 -1
- package/lib/utils/uniqueID.js +27 -22
- package/lib/utils/uniqueID.js.map +1 -1
- package/lib/utils/uniqueID.mjs +25 -18
- package/lib/utils/uniqueID.mjs.map +1 -1
- package/lib/utils/use/useColorResolver.js +22 -21
- package/lib/utils/use/useColorResolver.js.map +1 -1
- package/lib/utils/use/useColorResolver.mjs +19 -17
- package/lib/utils/use/useColorResolver.mjs.map +1 -1
- package/lib/utils/use/useEnhancedEffect.js +4 -4
- package/lib/utils/use/useEnhancedEffect.js.map +1 -1
- package/lib/utils/use/useEnhancedEffect.mjs +1 -1
- package/lib/utils/use/useEnhancedEffect.mjs.map +1 -1
- package/lib/utils/use/useEventCallback.js +10 -5
- package/lib/utils/use/useEventCallback.js.map +1 -1
- package/lib/utils/use/useEventCallback.mjs +8 -3
- package/lib/utils/use/useEventCallback.mjs.map +1 -1
- package/lib/utils/use/useEventListener.js +15 -11
- package/lib/utils/use/useEventListener.js.map +1 -1
- package/lib/utils/use/useEventListener.mjs +11 -7
- package/lib/utils/use/useEventListener.mjs.map +1 -1
- package/lib/utils/use/useFocusLock.js +94 -80
- package/lib/utils/use/useFocusLock.js.map +1 -1
- package/lib/utils/use/useFocusLock.mjs +88 -71
- package/lib/utils/use/useFocusLock.mjs.map +1 -1
- package/lib/utils/use/usePreventScroll.js +26 -24
- package/lib/utils/use/usePreventScroll.js.map +1 -1
- package/lib/utils/use/usePreventScroll.mjs +21 -19
- package/lib/utils/use/usePreventScroll.mjs.map +1 -1
- package/lib/utils/use/useScrollBarWidth.js +14 -8
- package/lib/utils/use/useScrollBarWidth.js.map +1 -1
- package/lib/utils/use/useScrollBarWidth.mjs +13 -8
- package/lib/utils/use/useScrollBarWidth.mjs.map +1 -1
- package/lib/utils/useCssVariable.js +37 -32
- package/lib/utils/useCssVariable.js.map +1 -1
- package/lib/utils/useCssVariable.mjs +34 -27
- package/lib/utils/useCssVariable.mjs.map +1 -1
- package/lib/utils/zIndexStacking.js +24 -28
- package/lib/utils/zIndexStacking.js.map +1 -1
- package/lib/utils/zIndexStacking.mjs +22 -23
- package/lib/utils/zIndexStacking.mjs.map +1 -1
- package/package.json +12 -316
- package/vite.config.ts +0 -22
- 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":"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","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
|
|
15
|
+
return "get".concat(name, "Props");
|
|
13
16
|
}
|
|
14
|
-
function getterMethodNameByDisplayName(
|
|
15
|
-
|
|
16
|
-
|
|
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,
|
|
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(
|
|
27
|
+
acc.push.apply(acc, _toConsumableArray(flatGetterMethodNames(value[1], name)));
|
|
23
28
|
}
|
|
24
|
-
name = parentName ?
|
|
29
|
+
name = parentName ? "".concat(parentName).concat(name) : name;
|
|
25
30
|
acc.push(getterMethodName(name));
|
|
26
31
|
return acc;
|
|
27
32
|
}, []);
|
|
28
33
|
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
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
|
-
|
|
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
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
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
|
-
|
|
50
|
+
assign(this, getterMethodNames.reduce(function(acc, name) {
|
|
51
|
+
var getterMethod = getterMethods[name];
|
|
46
52
|
if (!getterMethod) return acc;
|
|
47
|
-
acc[name] = (
|
|
48
|
-
|
|
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,
|
|
61
|
-
|
|
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
|
-
|
|
67
|
-
|
|
68
|
-
value.displayName =
|
|
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(
|
|
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
|
-
|
|
87
|
-
|
|
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(
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
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
|
|
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":[]}
|
package/lib/enhancement/style.js
CHANGED
|
@@ -1,21 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports
|
|
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
|
-
|
|
12
|
-
|
|
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 (
|
|
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
|
|
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
|
-
|
|
39
|
-
|
|
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
|
-
|
|
49
|
-
|
|
50
|
-
|
|
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
|
|
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"
|
|
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
|
-
|
|
6
|
-
|
|
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(
|
|
24
|
+
context: function context(_context) {
|
|
21
25
|
if (!this[STYLES_SELF] || !Object.keys(childComponents).length) {
|
|
22
|
-
return
|
|
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
|
-
|
|
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
|
-
|
|
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,
|
|
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":[]}
|