@semcore/core 17.0.0-prerelease.20 → 17.0.0-prerelease.20-prerelease.20
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/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 +205 -143
- package/lib/coreFactory.js.map +1 -1
- package/lib/coreFactory.mjs +164 -118
- 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 -5
- 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 +164 -118
- 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 -5
- 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/processor.js +222 -150
- package/lib/theme/processor.js.map +1 -1
- package/lib/theme/processor.mjs +221 -148
- package/lib/theme/processor.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/theme/utils.js +215 -140
- package/lib/theme/utils.js.map +1 -1
- package/lib/theme/utils.mjs +214 -135
- package/lib/theme/utils.mjs.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/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 +21 -20
- package/lib/utils/use/useColorResolver.js.map +1 -1
- package/lib/utils/use/useColorResolver.mjs +18 -16
- 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 +28 -26
- package/lib/utils/use/usePreventScroll.js.map +1 -1
- package/lib/utils/use/usePreventScroll.mjs +23 -21
- 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 +1 -1
package/lib/coreFactory.mjs
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
|
+
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
|
2
|
+
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
3
|
+
import _superPropGet from "@babel/runtime/helpers/esm/superPropGet";
|
|
4
|
+
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
5
|
+
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
6
|
+
import _callSuper from "@babel/runtime/helpers/esm/callSuper";
|
|
7
|
+
import _inherits from "@babel/runtime/helpers/esm/inherits";
|
|
1
8
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
2
9
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
10
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
3
11
|
import hoistNonReactStatics from "hoist-non-react-statics";
|
|
4
12
|
import React from "react";
|
|
5
13
|
import { Component } from "./core-types/Component.mjs";
|
|
@@ -17,18 +25,19 @@ import Enhancement$2 from "./enhancement/uncontrolledProps.mjs";
|
|
|
17
25
|
import assignProps$1 from "./utils/assignProps.mjs";
|
|
18
26
|
import { useForkRef } from "./utils/ref.mjs";
|
|
19
27
|
import useEnhancedEffect from "./utils/use/useEnhancedEffect.mjs";
|
|
28
|
+
var _excluded = ["forwardRef"], _excluded2 = ["forwardRef", "__WRAPPER_PROPS_BIND__"], _excluded3 = ["ref"];
|
|
20
29
|
function isEmptyObject(obj) {
|
|
21
30
|
return Object.getOwnPropertyNames(obj).length === 0 && Object.getOwnPropertySymbols && // For IE 11
|
|
22
31
|
Object.getOwnPropertySymbols(obj).length === 0 && Object.getPrototypeOf(obj) === Object.prototype;
|
|
23
32
|
}
|
|
24
33
|
function createGetField(enhancements, Component2, isFunction) {
|
|
25
34
|
return function getField(key) {
|
|
26
|
-
return enhancements.filter((enhancement)
|
|
35
|
+
return enhancements.filter(function(enhancement) {
|
|
27
36
|
if (!enhancement.condition) {
|
|
28
37
|
return true;
|
|
29
38
|
}
|
|
30
39
|
return enhancement.condition(Component2, isFunction);
|
|
31
|
-
}).reduce((acc, item)
|
|
40
|
+
}).reduce(function(acc, item) {
|
|
32
41
|
if (item[key]) {
|
|
33
42
|
acc.push(item[key]);
|
|
34
43
|
}
|
|
@@ -37,142 +46,174 @@ function createGetField(enhancements, Component2, isFunction) {
|
|
|
37
46
|
};
|
|
38
47
|
}
|
|
39
48
|
function createForwardWrapper(Component2, wrapperProps, statics, isFunction) {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
function WrapperForwardRefWithBind({
|
|
45
|
-
forwardRef = null,
|
|
46
|
-
...other
|
|
47
|
-
}, ref) {
|
|
49
|
+
var RootComponent = Component2[ROOT_COMPONENT];
|
|
50
|
+
var getterMethodName = getterMethodNameByDisplayName(Component2 === null || Component2 === void 0 ? void 0 : Component2.displayName);
|
|
51
|
+
var getterMethod = RootComponent !== null && RootComponent !== void 0 && RootComponent.prototype ? RootComponent.prototype[getterMethodName] : void 0;
|
|
52
|
+
var useGetterIndex = (getterMethod === null || getterMethod === void 0 ? void 0 : getterMethod.length) >= 2;
|
|
53
|
+
function WrapperForwardRefWithBind(_ref, ref) {
|
|
54
|
+
var _ref$forwardRef = _ref.forwardRef, forwardRef = _ref$forwardRef === void 0 ? null : _ref$forwardRef, other = _objectWithoutProperties(_ref, _excluded);
|
|
48
55
|
return /* @__PURE__ */ React.createElement(BindingWrapper, _extends({}, other, {
|
|
49
56
|
forwardRef: useForkRef(ref, forwardRef)
|
|
50
57
|
}));
|
|
51
58
|
}
|
|
52
|
-
function WrapperForwardRef({
|
|
53
|
-
forwardRef = null,
|
|
54
|
-
__WRAPPER_PROPS_BIND__,
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
const {
|
|
58
|
-
ref: enhancementRef = null,
|
|
59
|
-
...props
|
|
60
|
-
} = (__WRAPPER_PROPS_BIND__ || wrapperProps).reduce((acc, enhancement) => enhancement(acc, WrapperComponent, isFunction), other);
|
|
59
|
+
function WrapperForwardRef(_ref2, ref) {
|
|
60
|
+
var _ref2$forwardRef = _ref2.forwardRef, forwardRef = _ref2$forwardRef === void 0 ? null : _ref2$forwardRef, __WRAPPER_PROPS_BIND__ = _ref2.__WRAPPER_PROPS_BIND__, other = _objectWithoutProperties(_ref2, _excluded2);
|
|
61
|
+
var _reduce = (__WRAPPER_PROPS_BIND__ || wrapperProps).reduce(function(acc, enhancement) {
|
|
62
|
+
return enhancement(acc, WrapperComponent, isFunction);
|
|
63
|
+
}, other), _reduce$ref = _reduce.ref, enhancementRef = _reduce$ref === void 0 ? null : _reduce$ref, props = _objectWithoutProperties(_reduce, _excluded3);
|
|
61
64
|
return /* @__PURE__ */ React.createElement(Component2, _extends({}, props, {
|
|
62
65
|
forwardRef: useForkRef(enhancementRef, ref, forwardRef)
|
|
63
66
|
}));
|
|
64
67
|
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
68
|
+
var BindingWrapper = /* @__PURE__ */ (function(_React$Component) {
|
|
69
|
+
function BindingWrapper2() {
|
|
70
|
+
var _this;
|
|
71
|
+
_classCallCheck(this, BindingWrapper2);
|
|
72
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
73
|
+
args[_key] = arguments[_key];
|
|
74
|
+
}
|
|
75
|
+
_this = _callSuper(this, BindingWrapper2, [].concat(args));
|
|
76
|
+
_defineProperty(_this, "index", -1);
|
|
77
|
+
return _this;
|
|
74
78
|
}
|
|
75
|
-
|
|
76
|
-
|
|
79
|
+
_inherits(BindingWrapper2, _React$Component);
|
|
80
|
+
return _createClass(BindingWrapper2, [{
|
|
81
|
+
key: "render",
|
|
82
|
+
value: function render() {
|
|
83
|
+
var _this2 = this;
|
|
84
|
+
return /* @__PURE__ */ React.createElement(WrapperForwardRef, _extends({}, this.props, {
|
|
85
|
+
__WRAPPER_PROPS_BIND__: wrapperProps.map(function(fn) {
|
|
86
|
+
return fn.bind(_this2);
|
|
87
|
+
})
|
|
88
|
+
}));
|
|
89
|
+
}
|
|
90
|
+
}]);
|
|
91
|
+
})(React.Component);
|
|
92
|
+
var WrapperComponent = /* @__PURE__ */ React.forwardRef(useGetterIndex ? WrapperForwardRefWithBind : WrapperForwardRef);
|
|
77
93
|
hoistNonReactStatics(WrapperComponent, Component2);
|
|
78
94
|
WrapperComponent.displayName = Component2.displayName;
|
|
79
95
|
WrapperComponent.defaultProps = Component2.defaultProps;
|
|
80
|
-
statics.forEach((enhancement)
|
|
96
|
+
statics.forEach(function(enhancement) {
|
|
97
|
+
return Object.assign(WrapperComponent, enhancement(WrapperComponent, Component2, isFunction));
|
|
98
|
+
});
|
|
81
99
|
return WrapperComponent;
|
|
82
100
|
}
|
|
83
101
|
function wrapClass(OriginComponent, enhancements, Context) {
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
_defineProperty(
|
|
97
|
-
|
|
98
|
-
|
|
102
|
+
var getField = createGetField(enhancements, OriginComponent, false);
|
|
103
|
+
var inits = getField("init");
|
|
104
|
+
var props = getField("asProps");
|
|
105
|
+
var renders = getField("render");
|
|
106
|
+
var statics = getField("static");
|
|
107
|
+
var wrapperProps = getField("wrapperProps");
|
|
108
|
+
var contexts = getField("context");
|
|
109
|
+
var Component2 = /* @__PURE__ */ (function(_OriginComponent2) {
|
|
110
|
+
function Component3(props2, context) {
|
|
111
|
+
var _this3;
|
|
112
|
+
_classCallCheck(this, Component3);
|
|
113
|
+
_this3 = _callSuper(this, Component3, [props2, context]);
|
|
114
|
+
_defineProperty(_this3, CORE_AS_PROPS, null);
|
|
115
|
+
_defineProperty(_this3, CORE_INSTANCE, WrapperComponent);
|
|
116
|
+
_defineProperty(_this3, CORE_INIT, false);
|
|
117
|
+
inits.forEach(function(enhancement) {
|
|
118
|
+
return enhancement.call(_this3, props2, WrapperComponent, false);
|
|
119
|
+
});
|
|
120
|
+
_this3[CORE_INIT] = true;
|
|
121
|
+
return _this3;
|
|
99
122
|
}
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
123
|
+
_inherits(Component3, _OriginComponent2);
|
|
124
|
+
return _createClass(Component3, [{
|
|
125
|
+
key: "asProps",
|
|
126
|
+
get: function get() {
|
|
127
|
+
var _this4 = this;
|
|
128
|
+
if (!this[CORE_INIT]) {
|
|
129
|
+
throw new Error("Can not call asProps in constructor");
|
|
130
|
+
}
|
|
131
|
+
if (!this[CORE_AS_PROPS]) {
|
|
132
|
+
this[CORE_AS_PROPS] = props.reduce(function(acc, enhancement) {
|
|
133
|
+
return enhancement.call(_this4, acc, WrapperComponent, false);
|
|
134
|
+
}, this.props);
|
|
135
|
+
}
|
|
136
|
+
return this[CORE_AS_PROPS];
|
|
103
137
|
}
|
|
104
|
-
|
|
105
|
-
|
|
138
|
+
}, {
|
|
139
|
+
key: "setContext",
|
|
140
|
+
value: function setContext() {
|
|
141
|
+
var _this5 = this;
|
|
142
|
+
var contextProps = _superPropGet(Component3, "setContext", this, 1) ? _superPropGet(Component3, "setContext", this, 3)([]) : {};
|
|
143
|
+
return contexts.reduce(function(acc, enhancement) {
|
|
144
|
+
return enhancement.call(_this5, acc, WrapperComponent, false);
|
|
145
|
+
}, contextProps);
|
|
106
146
|
}
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
}, render);
|
|
128
|
-
} else {
|
|
129
|
-
return render;
|
|
147
|
+
}, {
|
|
148
|
+
key: "render",
|
|
149
|
+
value: function render() {
|
|
150
|
+
var _this6 = this;
|
|
151
|
+
this[CORE_AS_PROPS] = null;
|
|
152
|
+
if (!_superPropGet(Component3, "render", this, 1)) {
|
|
153
|
+
throw new Error("Component `render` method is not defined");
|
|
154
|
+
}
|
|
155
|
+
var asProps = this.asProps;
|
|
156
|
+
var ctx = this.setContext();
|
|
157
|
+
var render2 = renders.reduce(function(acc, enhancement) {
|
|
158
|
+
return enhancement.call(_this6, acc, asProps, WrapperComponent, false);
|
|
159
|
+
}, _superPropGet(Component3, "render", this, 3)([]));
|
|
160
|
+
if (!WrapperComponent[STATIC_COMPONENT] && !isEmptyObject(ctx)) {
|
|
161
|
+
return /* @__PURE__ */ React.createElement(Context.Provider, {
|
|
162
|
+
value: _objectSpread(_objectSpread({}, asProps), ctx)
|
|
163
|
+
}, render2);
|
|
164
|
+
} else {
|
|
165
|
+
return render2;
|
|
166
|
+
}
|
|
130
167
|
}
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
|
|
168
|
+
}]);
|
|
169
|
+
})(OriginComponent);
|
|
170
|
+
var WrapperComponent = createForwardWrapper(Component2, wrapperProps, statics, false);
|
|
134
171
|
return WrapperComponent;
|
|
135
172
|
}
|
|
136
173
|
function wrapFunction(OriginComponent, enhancements, Context) {
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
useEnhancedEffect(()
|
|
174
|
+
var getField = createGetField(enhancements, OriginComponent, true);
|
|
175
|
+
var inits = getField("init");
|
|
176
|
+
var props = getField("asProps");
|
|
177
|
+
var renders = getField("render");
|
|
178
|
+
var statics = getField("static");
|
|
179
|
+
var wrapperProps = getField("wrapperProps");
|
|
180
|
+
var contexts = getField("context");
|
|
181
|
+
var Component2 = /* @__PURE__ */ React.memo(function FunctionMemoComponent(other) {
|
|
182
|
+
var selfRef = React.useRef({});
|
|
183
|
+
var firstRender = React.useRef(true);
|
|
184
|
+
useEnhancedEffect(function() {
|
|
148
185
|
firstRender.current = false;
|
|
149
186
|
}, []);
|
|
150
187
|
if (firstRender.current) {
|
|
151
|
-
inits.forEach((enhancement)
|
|
188
|
+
inits.forEach(function(enhancement) {
|
|
189
|
+
return enhancement.call(selfRef.current, other, WrapperComponent, true);
|
|
190
|
+
});
|
|
152
191
|
}
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
192
|
+
var asProps = props.reduce(function(acc, enhancement) {
|
|
193
|
+
return enhancement.call(selfRef.current, acc, WrapperComponent, true);
|
|
194
|
+
}, other);
|
|
195
|
+
var ctx = contexts.reduce(function(acc, enhancement) {
|
|
196
|
+
return enhancement.call(selfRef.current, acc, WrapperComponent, true);
|
|
197
|
+
}, {});
|
|
198
|
+
var render = renders.reduce(function(acc, enhancement) {
|
|
199
|
+
return enhancement.call(selfRef.current, acc, asProps, WrapperComponent, true);
|
|
200
|
+
}, /* @__PURE__ */ React.createElement(OriginComponent, asProps));
|
|
156
201
|
if (!WrapperComponent[STATIC_COMPONENT] && !isEmptyObject(ctx)) {
|
|
157
202
|
return /* @__PURE__ */ React.createElement(Context.Provider, {
|
|
158
|
-
value: {
|
|
159
|
-
...asProps,
|
|
160
|
-
...ctx
|
|
161
|
-
}
|
|
203
|
+
value: _objectSpread(_objectSpread({}, asProps), ctx)
|
|
162
204
|
}, render);
|
|
163
205
|
} else {
|
|
164
206
|
return render;
|
|
165
207
|
}
|
|
166
208
|
});
|
|
167
209
|
Object.assign(Component2, OriginComponent);
|
|
168
|
-
|
|
210
|
+
var WrapperComponent = createForwardWrapper(Component2, wrapperProps, statics, true);
|
|
169
211
|
return WrapperComponent;
|
|
170
212
|
}
|
|
171
213
|
function wrapCore(OriginComponent, enhancements, Context) {
|
|
172
|
-
|
|
173
|
-
Root
|
|
174
|
-
|
|
175
|
-
const defaultProps = OriginComponent.defaultProps || {};
|
|
214
|
+
var Component2 = function Component3(_ref3) {
|
|
215
|
+
var Root = _ref3.Root;
|
|
216
|
+
var defaultProps = OriginComponent.defaultProps || {};
|
|
176
217
|
return /* @__PURE__ */ React.createElement(Root, _extends({}, defaultProps, {
|
|
177
218
|
render: OriginComponent
|
|
178
219
|
}));
|
|
@@ -199,17 +240,15 @@ function createComposeComponent(OriginComponent, Context, enhancements) {
|
|
|
199
240
|
function assignProps(p1, p2) {
|
|
200
241
|
return assignProps$1(p2, p1);
|
|
201
242
|
}
|
|
202
|
-
function createComponent(OriginComponent
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
} = options;
|
|
208
|
-
let parents = Array.isArray(parent) ? parent : [parent];
|
|
243
|
+
function createComponent(OriginComponent) {
|
|
244
|
+
var childComponents = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
|
|
245
|
+
var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
|
|
246
|
+
var _options$context = options.context, context = _options$context === void 0 ? /* @__PURE__ */ React.createContext({}) : _options$context, _options$parent = options.parent, parent = _options$parent === void 0 ? [] : _options$parent, _options$enhancements = options.enhancements, enhancements = _options$enhancements === void 0 ? [] : _options$enhancements;
|
|
247
|
+
var parents = Array.isArray(parent) ? parent : [parent];
|
|
209
248
|
if (parents.length) {
|
|
210
|
-
|
|
249
|
+
var wholeFamily = parents.reduce(function(acc, parent2) {
|
|
211
250
|
if (parent2[PARENT_COMPONENTS]) {
|
|
212
|
-
acc = [
|
|
251
|
+
acc = [].concat(_toConsumableArray(parent2[PARENT_COMPONENTS]), _toConsumableArray(acc));
|
|
213
252
|
}
|
|
214
253
|
return acc;
|
|
215
254
|
}, parents);
|
|
@@ -219,9 +258,9 @@ function createComponent(OriginComponent, childComponents = {}, options = {}) {
|
|
|
219
258
|
if (OriginComponent[CORE_COMPONENT]) {
|
|
220
259
|
parents.push(OriginComponent);
|
|
221
260
|
}
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
261
|
+
var Component2 = createComposeComponent(OriginComponent, context, [].concat(_toConsumableArray(enhancements.map(function(f) {
|
|
262
|
+
return f(context, parents, createComponent, childComponents);
|
|
263
|
+
})), [
|
|
225
264
|
i18nAppLocaleEnhance(),
|
|
226
265
|
Enhancement(context, parents),
|
|
227
266
|
// root must be under the children
|
|
@@ -241,21 +280,28 @@ function createComponent(OriginComponent, childComponents = {}, options = {}) {
|
|
|
241
280
|
// enhanceEnhancement must be under the functionDefaultPropsEnhancement
|
|
242
281
|
Enhancement$7(),
|
|
243
282
|
Enhancement$8(childComponents, context)
|
|
244
|
-
]);
|
|
283
|
+
]));
|
|
245
284
|
Component2[CONTEXT_COMPONENT] = context;
|
|
246
285
|
Component2._______childrenComponents = childComponents;
|
|
247
|
-
Component2[CREATE_COMPONENT] = function(
|
|
286
|
+
Component2[CREATE_COMPONENT] = function() {
|
|
287
|
+
var _OriginComponent = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : OriginComponent;
|
|
288
|
+
var _childComponents = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : childComponents;
|
|
289
|
+
var _options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : options;
|
|
248
290
|
return createComponent(_OriginComponent, _childComponents, _options);
|
|
249
291
|
};
|
|
250
|
-
Component2.newInstance = function(
|
|
292
|
+
Component2.newInstance = function() {
|
|
293
|
+
var _OriginComponent = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : OriginComponent;
|
|
294
|
+
var _childComponents = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : childComponents;
|
|
295
|
+
var _options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : options;
|
|
251
296
|
return createComponent(_OriginComponent, _childComponents, _options);
|
|
252
297
|
};
|
|
253
298
|
Component2[CORE_COMPONENT] = true;
|
|
254
299
|
return Component2;
|
|
255
300
|
}
|
|
256
301
|
function createBaseComponent(OriginComponent) {
|
|
257
|
-
|
|
258
|
-
Component2
|
|
302
|
+
var _OriginComponent$disp;
|
|
303
|
+
var Component2 = /* @__PURE__ */ React.forwardRef(OriginComponent);
|
|
304
|
+
Component2.displayName = (_OriginComponent$disp = OriginComponent.displayName) !== null && _OriginComponent$disp !== void 0 ? _OriginComponent$disp : "";
|
|
259
305
|
Component2.defaultProps = {
|
|
260
306
|
"data-ui-name": OriginComponent.displayName
|
|
261
307
|
};
|
package/lib/coreFactory.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coreFactory.mjs","names":["hoistNonReactStatics","React","Component","CONTEXT_COMPONENT","CORE_AS_PROPS","CORE_COMPONENT","CORE_INIT","CORE_INSTANCE","CREATE_COMPONENT","PARENT_COMPONENTS","childrenEnhancement","dataNameEnhancement","enhanceEnhancement","functionDefaultPropsEnhancement","i18nAppLocaleEnhance","inheritedNameEnhancement","rootEnhancement","staticChildrenEnhancement","getterMethodNameByDisplayName","ROOT_COMPONENT","STATIC_COMPONENT","styleEnhancement","uncontrolledPropsEnhancement","_assignProps","useForkRef","useEnhancedEffect","isEmptyObject","obj","Object","getOwnPropertyNames","length","getOwnPropertySymbols","getPrototypeOf","prototype","createGetField","enhancements","isFunction","getField","key","filter","enhancement","condition","reduce","acc","item","push","createForwardWrapper","wrapperProps","statics","RootComponent","getterMethodName","displayName","getterMethod","undefined","useGetterIndex","WrapperForwardRefWithBind","forwardRef","other","ref","createElement","BindingWrapper","_extends","WrapperForwardRef","__WRAPPER_PROPS_BIND__","enhancementRef","props","WrapperComponent","constructor","args","_defineProperty","render","map","fn","bind","defaultProps","forEach","assign","wrapClass","OriginComponent","Context","inits","renders","contexts","context","call","asProps","Error","setContext","contextProps","ctx","Provider","value","wrapFunction","memo","FunctionMemoComponent","selfRef","useRef","firstRender","current","wrapCore","Root","createComposeComponent","PureComponent","isPrototypeOf","assignProps","p1","p2","createComponent","childComponents","options","createContext","parent","parents","Array","isArray","wholeFamily","f","_______childrenComponents","_OriginComponent","_childComponents","_options","newInstance","createBaseComponent"],"sources":["../src/coreFactory.tsx"],"sourcesContent":["import hoistNonReactStatics from 'hoist-non-react-statics';\nimport React from 'react';\n\nimport { type Intergalactic, Component } from './core-types/Component';\nimport {\n CONTEXT_COMPONENT,\n CORE_AS_PROPS,\n CORE_COMPONENT,\n CORE_INIT,\n CORE_INSTANCE,\n CREATE_COMPONENT,\n PARENT_COMPONENTS,\n} from './core-types/symbols';\nimport childrenEnhancement from './enhancement/Children';\nimport dataNameEnhancement from './enhancement/dataName';\nimport enhanceEnhancement from './enhancement/enhance';\nimport functionDefaultPropsEnhancement from './enhancement/functionDefaultProps';\nimport i18nAppLocaleEnhance from './enhancement/i18n';\nimport inheritedNameEnhancement from './enhancement/inheritedName';\nimport rootEnhancement from './enhancement/Root';\nimport staticChildrenEnhancement, {\n getterMethodNameByDisplayName,\n ROOT_COMPONENT,\n STATIC_COMPONENT,\n} from './enhancement/staticChildren';\nimport styleEnhancement from './enhancement/style';\nimport uncontrolledPropsEnhancement from './enhancement/uncontrolledProps';\nimport _assignProps from './utils/assignProps';\nimport { useForkRef } from './utils/ref';\nimport useEnhancedEffect from './utils/use/useEnhancedEffect';\n\nfunction isEmptyObject(obj: any) {\n return (\n Object.getOwnPropertyNames(obj).length === 0 &&\n Object.getOwnPropertySymbols && // For IE 11\n Object.getOwnPropertySymbols(obj).length === 0 &&\n Object.getPrototypeOf(obj) === Object.prototype\n );\n}\n\nfunction createGetField(enhancements: any, Component: any, isFunction: boolean) {\n return function getField(key: string) {\n return enhancements\n .filter((enhancement: any) => {\n if (!enhancement.condition) {\n return true;\n }\n return enhancement.condition(Component, isFunction);\n })\n .reduce((acc: any, item: any) => {\n if (item[key]) {\n acc.push(item[key]);\n }\n return acc;\n }, []);\n };\n}\n\nfunction createForwardWrapper(Component: any, wrapperProps: any, statics: any, isFunction: any) {\n const RootComponent = Component[ROOT_COMPONENT];\n const getterMethodName = getterMethodNameByDisplayName(Component?.displayName);\n const getterMethod = RootComponent?.prototype\n ? RootComponent.prototype[getterMethodName]\n : undefined;\n const useGetterIndex = getterMethod?.length >= 2;\n\n function WrapperForwardRefWithBind({ forwardRef = null, ...other }, ref: any) {\n return <BindingWrapper {...other} forwardRef={useForkRef(ref, forwardRef)} />;\n }\n\n function WrapperForwardRef(\n { forwardRef = null, __WRAPPER_PROPS_BIND__, ...other }: any,\n ref: any,\n ) {\n const { ref: enhancementRef = null, ...props } = (\n __WRAPPER_PROPS_BIND__ || wrapperProps\n ).reduce((acc: any, enhancement: any) => enhancement(acc, WrapperComponent, isFunction), other);\n return <Component {...props} forwardRef={useForkRef(enhancementRef, ref, forwardRef)} />;\n }\n\n class BindingWrapper extends React.Component<any> {\n index = -1;\n render() {\n return (\n <WrapperForwardRef\n {...this.props}\n __WRAPPER_PROPS_BIND__={wrapperProps.map((fn: any) => fn.bind(this))}\n />\n );\n }\n }\n\n const WrapperComponent = React.forwardRef(\n useGetterIndex ? WrapperForwardRefWithBind : WrapperForwardRef,\n );\n\n hoistNonReactStatics(WrapperComponent, Component);\n\n WrapperComponent.displayName = Component.displayName;\n // TODO: defaultProps is only empty\n WrapperComponent.defaultProps = Component.defaultProps;\n // STATIC\n statics.forEach((enhancement: any) =>\n Object.assign(WrapperComponent, enhancement(WrapperComponent, Component, isFunction)),\n );\n\n return WrapperComponent;\n}\n\nfunction wrapClass(OriginComponent: any, enhancements: any, Context: any) {\n const getField = createGetField(enhancements, OriginComponent, false);\n\n const inits = getField('init');\n const props = getField('asProps');\n const renders = getField('render');\n const statics = getField('static');\n const wrapperProps = getField('wrapperProps');\n const contexts = getField('context');\n\n class Component extends OriginComponent {\n [CORE_AS_PROPS] = null;\n [CORE_INSTANCE] = WrapperComponent;\n [CORE_INIT] = false;\n\n constructor(props: any, context: any) {\n super(props, context);\n // INITS\n inits.forEach((enhancement: any) => enhancement.call(this, props, WrapperComponent, false));\n this[CORE_INIT] = true;\n }\n\n get asProps() {\n // TODO if not production\n if (!this[CORE_INIT]) {\n throw new Error('Can not call asProps in constructor');\n }\n if (!this[CORE_AS_PROPS]) {\n // PROPS\n this[CORE_AS_PROPS] = props.reduce(\n (acc: any, enhancement: any) => enhancement.call(this, acc, WrapperComponent, false),\n this.props,\n );\n }\n return this[CORE_AS_PROPS];\n }\n\n setContext() {\n const contextProps = super.setContext ? super.setContext() : {};\n // CONTEXT\n return contexts.reduce(\n (acc: any, enhancement: any) => enhancement.call(this, acc, WrapperComponent, false),\n contextProps,\n );\n }\n\n render() {\n this[CORE_AS_PROPS] = null;\n // TODO if not production\n if (!super.render) {\n throw new Error('Component `render` method is not defined');\n }\n const asProps: any = this.asProps;\n const ctx = this.setContext();\n // RENDER\n const render = renders.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(this, acc, asProps, WrapperComponent, false),\n super.render(),\n );\n if (!WrapperComponent[STATIC_COMPONENT] && !isEmptyObject(ctx)) {\n return <Context.Provider value={{ ...asProps, ...ctx }}>{render}</Context.Provider>;\n } else {\n return render;\n }\n }\n }\n\n const WrapperComponent: any = createForwardWrapper(Component, wrapperProps, statics, false);\n return WrapperComponent;\n}\n\nfunction wrapFunction(OriginComponent: any, enhancements: any, Context: any) {\n const getField = createGetField(enhancements, OriginComponent, true);\n\n const inits = getField('init');\n const props = getField('asProps');\n const renders = getField('render');\n const statics = getField('static');\n const wrapperProps = getField('wrapperProps');\n const contexts = getField('context');\n\n const Component = React.memo(function FunctionMemoComponent(other) {\n const selfRef = React.useRef({});\n const firstRender = React.useRef(true);\n useEnhancedEffect(() => {\n firstRender.current = false;\n }, []);\n if (firstRender.current) {\n // INITS\n inits.forEach((enhancement: any) =>\n enhancement.call(selfRef.current, other, WrapperComponent, true),\n );\n }\n // PROPS\n const asProps = props.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(selfRef.current, acc, WrapperComponent, true),\n other,\n );\n // CONTEXT\n const ctx = contexts.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(selfRef.current, acc, WrapperComponent, true),\n {},\n );\n\n // RENDER\n const render = renders.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(selfRef.current, acc, asProps, WrapperComponent, true),\n <OriginComponent {...asProps} />,\n );\n\n if (!WrapperComponent[STATIC_COMPONENT] && !isEmptyObject(ctx)) {\n return <Context.Provider value={{ ...asProps, ...ctx }}>{render}</Context.Provider>;\n } else {\n return render;\n }\n });\n Object.assign(Component, OriginComponent);\n const WrapperComponent: any = createForwardWrapper(Component, wrapperProps, statics, true);\n return WrapperComponent;\n}\n\nfunction wrapCore(OriginComponent: any, enhancements: any, Context: any) {\n const Component = function ({ Root }: any) {\n const defaultProps = OriginComponent.defaultProps || {};\n return <Root {...defaultProps} render={OriginComponent} />;\n };\n hoistNonReactStatics(Component, OriginComponent);\n Component.displayName = OriginComponent.displayName;\n return wrapFunction(Component, enhancements, Context);\n}\n\nfunction createComposeComponent(OriginComponent: any, Context: any, enhancements: any): any {\n if (\n React.PureComponent.isPrototypeOf(OriginComponent) ||\n React.Component.isPrototypeOf(OriginComponent)\n ) {\n if (OriginComponent.prototype instanceof Component) {\n return wrapClass(OriginComponent, enhancements, Context);\n } else {\n throw new Error('Must inherit from our component');\n }\n } else if (typeof OriginComponent === 'function') {\n return wrapFunction(OriginComponent, enhancements, Context);\n } else if (OriginComponent[CORE_COMPONENT]) {\n return wrapCore(OriginComponent, enhancements, Context);\n } else {\n throw new Error('Must be a React component');\n }\n}\n\nexport function assignProps(p1: any, p2: any) {\n return _assignProps(p2, p1);\n}\n\nfunction createComponent<T extends Intergalactic.InternalTypings.ComponentTag = 'div', ComponentProps = {}, ContextType = {}, E extends Readonly<any[]> = never[]>(\n OriginComponent: any,\n childComponents: any = {},\n options: {\n context?: React.Context<ContextType>;\n parent?: Intergalactic.Component<any, any, any, any> | Intergalactic.Component<any, any, any, any>[];\n enhancements?: [any];\n } = {},\n): Intergalactic.Component<T, ComponentProps, ContextType, E> {\n const {\n context = React.createContext<ContextType>({} as ContextType),\n parent = [],\n enhancements = [],\n } = options;\n let parents: any[] = Array.isArray(parent) ? parent : [parent];\n if (parents.length) {\n const wholeFamily = parents.reduce((acc: any, parent: any) => {\n if (parent[PARENT_COMPONENTS]) {\n acc = [...parent[PARENT_COMPONENTS], ...acc];\n }\n return acc;\n }, parents);\n // @ts-ignore\n OriginComponent[PARENT_COMPONENTS] = wholeFamily;\n parents = wholeFamily;\n }\n // @ts-ignore\n if (OriginComponent[CORE_COMPONENT]) {\n parents.push(OriginComponent);\n }\n const Component = createComposeComponent(OriginComponent, context, [\n // @ts-ignore\n ...enhancements.map((f) => f(context, parents, createComponent, childComponents)),\n i18nAppLocaleEnhance(),\n childrenEnhancement(context, parents),\n // root must be under the children\n rootEnhancement(),\n uncontrolledPropsEnhancement(),\n staticChildrenEnhancement(childComponents, createComponent, {\n context,\n parent,\n enhancements,\n }),\n // functionDefaultProps must be under the staticChild\n functionDefaultPropsEnhancement(),\n // inheritedName must be under the staticChild\n inheritedNameEnhancement(),\n // dataName must be under the staticChild\n dataNameEnhancement(),\n // enhanceEnhancement must be under the functionDefaultPropsEnhancement\n enhanceEnhancement(),\n styleEnhancement(childComponents, context),\n ]);\n Component[CONTEXT_COMPONENT] = context;\n Component._______childrenComponents = childComponents;\n Component[CREATE_COMPONENT] = function (\n _OriginComponent = OriginComponent,\n _childComponents = childComponents,\n _options = options,\n ) {\n return createComponent(_OriginComponent, _childComponents, _options);\n };\n Component.newInstance = function (\n _OriginComponent = OriginComponent,\n _childComponents = childComponents,\n _options = options,\n ) {\n return createComponent(_OriginComponent, _childComponents, _options);\n };\n Component[CORE_COMPONENT] = true;\n return Component;\n}\n\nfunction createBaseComponent<T extends keyof React.JSX.IntrinsicElements, P>(OriginComponent: React.ForwardRefRenderFunction<React.ElementRef<T>, P>) {\n const Component = React.forwardRef<React.ElementRef<T>, P>(OriginComponent) as unknown as Intergalactic.Component<T, P>;\n Component.displayName = OriginComponent.displayName ?? '';\n // @ts-ignore\n Component.defaultProps = {\n 'data-ui-name': OriginComponent.displayName,\n };\n Component[CORE_COMPONENT] = true;\n\n return Component;\n}\n\nexport { createComponent, createBaseComponent };\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"coreFactory.mjs","names":["hoistNonReactStatics","React","Component","CONTEXT_COMPONENT","CORE_AS_PROPS","CORE_COMPONENT","CORE_INIT","CORE_INSTANCE","CREATE_COMPONENT","PARENT_COMPONENTS","childrenEnhancement","dataNameEnhancement","enhanceEnhancement","functionDefaultPropsEnhancement","i18nAppLocaleEnhance","inheritedNameEnhancement","rootEnhancement","staticChildrenEnhancement","getterMethodNameByDisplayName","ROOT_COMPONENT","STATIC_COMPONENT","styleEnhancement","uncontrolledPropsEnhancement","_assignProps","useForkRef","useEnhancedEffect","isEmptyObject","obj","Object","getOwnPropertyNames","length","getOwnPropertySymbols","getPrototypeOf","prototype","createGetField","enhancements","isFunction","getField","key","filter","enhancement","condition","reduce","acc","item","push","createForwardWrapper","wrapperProps","statics","RootComponent","getterMethodName","displayName","getterMethod","undefined","useGetterIndex","WrapperForwardRefWithBind","_ref","ref","_ref$forwardRef","forwardRef","other","_objectWithoutProperties","_excluded","createElement","BindingWrapper","_extends","WrapperForwardRef","_ref2","_ref2$forwardRef","__WRAPPER_PROPS_BIND__","_excluded2","_reduce","WrapperComponent","_reduce$ref","enhancementRef","props","_excluded3","_React$Component","_this","_classCallCheck","_len","arguments","args","Array","_key","_callSuper","concat","_defineProperty","_inherits","_createClass","value","render","_this2","map","fn","bind","defaultProps","forEach","assign","wrapClass","OriginComponent","Context","inits","renders","contexts","_OriginComponent2","context","_this3","call","get","_this4","Error","setContext","_this5","contextProps","_superPropGet","_this6","asProps","ctx","Provider","_objectSpread","wrapFunction","memo","FunctionMemoComponent","selfRef","useRef","firstRender","current","wrapCore","_ref3","Root","createComposeComponent","PureComponent","isPrototypeOf","assignProps","p1","p2","createComponent","childComponents","options","_options$context","createContext","_options$parent","parent","_options$enhancements","parents","isArray","wholeFamily","_toConsumableArray","f","_______childrenComponents","_OriginComponent","_childComponents","_options","newInstance","createBaseComponent","_OriginComponent$disp"],"sources":["../src/coreFactory.tsx"],"sourcesContent":["import hoistNonReactStatics from 'hoist-non-react-statics';\nimport React from 'react';\n\nimport { type Intergalactic, Component } from './core-types/Component';\nimport {\n CONTEXT_COMPONENT,\n CORE_AS_PROPS,\n CORE_COMPONENT,\n CORE_INIT,\n CORE_INSTANCE,\n CREATE_COMPONENT,\n PARENT_COMPONENTS,\n} from './core-types/symbols';\nimport childrenEnhancement from './enhancement/Children';\nimport dataNameEnhancement from './enhancement/dataName';\nimport enhanceEnhancement from './enhancement/enhance';\nimport functionDefaultPropsEnhancement from './enhancement/functionDefaultProps';\nimport i18nAppLocaleEnhance from './enhancement/i18n';\nimport inheritedNameEnhancement from './enhancement/inheritedName';\nimport rootEnhancement from './enhancement/Root';\nimport staticChildrenEnhancement, {\n getterMethodNameByDisplayName,\n ROOT_COMPONENT,\n STATIC_COMPONENT,\n} from './enhancement/staticChildren';\nimport styleEnhancement from './enhancement/style';\nimport uncontrolledPropsEnhancement from './enhancement/uncontrolledProps';\nimport _assignProps from './utils/assignProps';\nimport { useForkRef } from './utils/ref';\nimport useEnhancedEffect from './utils/use/useEnhancedEffect';\n\nfunction isEmptyObject(obj: any) {\n return (\n Object.getOwnPropertyNames(obj).length === 0 &&\n Object.getOwnPropertySymbols && // For IE 11\n Object.getOwnPropertySymbols(obj).length === 0 &&\n Object.getPrototypeOf(obj) === Object.prototype\n );\n}\n\nfunction createGetField(enhancements: any, Component: any, isFunction: boolean) {\n return function getField(key: string) {\n return enhancements\n .filter((enhancement: any) => {\n if (!enhancement.condition) {\n return true;\n }\n return enhancement.condition(Component, isFunction);\n })\n .reduce((acc: any, item: any) => {\n if (item[key]) {\n acc.push(item[key]);\n }\n return acc;\n }, []);\n };\n}\n\nfunction createForwardWrapper(Component: any, wrapperProps: any, statics: any, isFunction: any) {\n const RootComponent = Component[ROOT_COMPONENT];\n const getterMethodName = getterMethodNameByDisplayName(Component?.displayName);\n const getterMethod = RootComponent?.prototype\n ? RootComponent.prototype[getterMethodName]\n : undefined;\n const useGetterIndex = getterMethod?.length >= 2;\n\n function WrapperForwardRefWithBind({ forwardRef = null, ...other }, ref: any) {\n return <BindingWrapper {...other} forwardRef={useForkRef(ref, forwardRef)} />;\n }\n\n function WrapperForwardRef(\n { forwardRef = null, __WRAPPER_PROPS_BIND__, ...other }: any,\n ref: any,\n ) {\n const { ref: enhancementRef = null, ...props } = (\n __WRAPPER_PROPS_BIND__ || wrapperProps\n ).reduce((acc: any, enhancement: any) => enhancement(acc, WrapperComponent, isFunction), other);\n return <Component {...props} forwardRef={useForkRef(enhancementRef, ref, forwardRef)} />;\n }\n\n class BindingWrapper extends React.Component<any> {\n index = -1;\n render() {\n return (\n <WrapperForwardRef\n {...this.props}\n __WRAPPER_PROPS_BIND__={wrapperProps.map((fn: any) => fn.bind(this))}\n />\n );\n }\n }\n\n const WrapperComponent = React.forwardRef(\n useGetterIndex ? WrapperForwardRefWithBind : WrapperForwardRef,\n );\n\n hoistNonReactStatics(WrapperComponent, Component);\n\n WrapperComponent.displayName = Component.displayName;\n // TODO: defaultProps is only empty\n WrapperComponent.defaultProps = Component.defaultProps;\n // STATIC\n statics.forEach((enhancement: any) =>\n Object.assign(WrapperComponent, enhancement(WrapperComponent, Component, isFunction)),\n );\n\n return WrapperComponent;\n}\n\nfunction wrapClass(OriginComponent: any, enhancements: any, Context: any) {\n const getField = createGetField(enhancements, OriginComponent, false);\n\n const inits = getField('init');\n const props = getField('asProps');\n const renders = getField('render');\n const statics = getField('static');\n const wrapperProps = getField('wrapperProps');\n const contexts = getField('context');\n\n class Component extends OriginComponent {\n [CORE_AS_PROPS] = null;\n [CORE_INSTANCE] = WrapperComponent;\n [CORE_INIT] = false;\n\n constructor(props: any, context: any) {\n super(props, context);\n // INITS\n inits.forEach((enhancement: any) => enhancement.call(this, props, WrapperComponent, false));\n this[CORE_INIT] = true;\n }\n\n get asProps() {\n // TODO if not production\n if (!this[CORE_INIT]) {\n throw new Error('Can not call asProps in constructor');\n }\n if (!this[CORE_AS_PROPS]) {\n // PROPS\n this[CORE_AS_PROPS] = props.reduce(\n (acc: any, enhancement: any) => enhancement.call(this, acc, WrapperComponent, false),\n this.props,\n );\n }\n return this[CORE_AS_PROPS];\n }\n\n setContext() {\n const contextProps = super.setContext ? super.setContext() : {};\n // CONTEXT\n return contexts.reduce(\n (acc: any, enhancement: any) => enhancement.call(this, acc, WrapperComponent, false),\n contextProps,\n );\n }\n\n render() {\n this[CORE_AS_PROPS] = null;\n // TODO if not production\n if (!super.render) {\n throw new Error('Component `render` method is not defined');\n }\n const asProps: any = this.asProps;\n const ctx = this.setContext();\n // RENDER\n const render = renders.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(this, acc, asProps, WrapperComponent, false),\n super.render(),\n );\n if (!WrapperComponent[STATIC_COMPONENT] && !isEmptyObject(ctx)) {\n return <Context.Provider value={{ ...asProps, ...ctx }}>{render}</Context.Provider>;\n } else {\n return render;\n }\n }\n }\n\n const WrapperComponent: any = createForwardWrapper(Component, wrapperProps, statics, false);\n return WrapperComponent;\n}\n\nfunction wrapFunction(OriginComponent: any, enhancements: any, Context: any) {\n const getField = createGetField(enhancements, OriginComponent, true);\n\n const inits = getField('init');\n const props = getField('asProps');\n const renders = getField('render');\n const statics = getField('static');\n const wrapperProps = getField('wrapperProps');\n const contexts = getField('context');\n\n const Component = React.memo(function FunctionMemoComponent(other) {\n const selfRef = React.useRef({});\n const firstRender = React.useRef(true);\n useEnhancedEffect(() => {\n firstRender.current = false;\n }, []);\n if (firstRender.current) {\n // INITS\n inits.forEach((enhancement: any) =>\n enhancement.call(selfRef.current, other, WrapperComponent, true),\n );\n }\n // PROPS\n const asProps = props.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(selfRef.current, acc, WrapperComponent, true),\n other,\n );\n // CONTEXT\n const ctx = contexts.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(selfRef.current, acc, WrapperComponent, true),\n {},\n );\n\n // RENDER\n const render = renders.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(selfRef.current, acc, asProps, WrapperComponent, true),\n <OriginComponent {...asProps} />,\n );\n\n if (!WrapperComponent[STATIC_COMPONENT] && !isEmptyObject(ctx)) {\n return <Context.Provider value={{ ...asProps, ...ctx }}>{render}</Context.Provider>;\n } else {\n return render;\n }\n });\n Object.assign(Component, OriginComponent);\n const WrapperComponent: any = createForwardWrapper(Component, wrapperProps, statics, true);\n return WrapperComponent;\n}\n\nfunction wrapCore(OriginComponent: any, enhancements: any, Context: any) {\n const Component = function ({ Root }: any) {\n const defaultProps = OriginComponent.defaultProps || {};\n return <Root {...defaultProps} render={OriginComponent} />;\n };\n hoistNonReactStatics(Component, OriginComponent);\n Component.displayName = OriginComponent.displayName;\n return wrapFunction(Component, enhancements, Context);\n}\n\nfunction createComposeComponent(OriginComponent: any, Context: any, enhancements: any): any {\n if (\n React.PureComponent.isPrototypeOf(OriginComponent) ||\n React.Component.isPrototypeOf(OriginComponent)\n ) {\n if (OriginComponent.prototype instanceof Component) {\n return wrapClass(OriginComponent, enhancements, Context);\n } else {\n throw new Error('Must inherit from our component');\n }\n } else if (typeof OriginComponent === 'function') {\n return wrapFunction(OriginComponent, enhancements, Context);\n } else if (OriginComponent[CORE_COMPONENT]) {\n return wrapCore(OriginComponent, enhancements, Context);\n } else {\n throw new Error('Must be a React component');\n }\n}\n\nexport function assignProps(p1: any, p2: any) {\n return _assignProps(p2, p1);\n}\n\nfunction createComponent<T extends Intergalactic.InternalTypings.ComponentTag = 'div', ComponentProps = {}, ContextType = {}, E extends Readonly<any[]> = never[]>(\n OriginComponent: any,\n childComponents: any = {},\n options: {\n context?: React.Context<ContextType>;\n parent?: Intergalactic.Component<any, any, any, any> | Intergalactic.Component<any, any, any, any>[];\n enhancements?: [any];\n } = {},\n): Intergalactic.Component<T, ComponentProps, ContextType, E> {\n const {\n context = React.createContext<ContextType>({} as ContextType),\n parent = [],\n enhancements = [],\n } = options;\n let parents: any[] = Array.isArray(parent) ? parent : [parent];\n if (parents.length) {\n const wholeFamily = parents.reduce((acc: any, parent: any) => {\n if (parent[PARENT_COMPONENTS]) {\n acc = [...parent[PARENT_COMPONENTS], ...acc];\n }\n return acc;\n }, parents);\n // @ts-ignore\n OriginComponent[PARENT_COMPONENTS] = wholeFamily;\n parents = wholeFamily;\n }\n // @ts-ignore\n if (OriginComponent[CORE_COMPONENT]) {\n parents.push(OriginComponent);\n }\n const Component = createComposeComponent(OriginComponent, context, [\n // @ts-ignore\n ...enhancements.map((f) => f(context, parents, createComponent, childComponents)),\n i18nAppLocaleEnhance(),\n childrenEnhancement(context, parents),\n // root must be under the children\n rootEnhancement(),\n uncontrolledPropsEnhancement(),\n staticChildrenEnhancement(childComponents, createComponent, {\n context,\n parent,\n enhancements,\n }),\n // functionDefaultProps must be under the staticChild\n functionDefaultPropsEnhancement(),\n // inheritedName must be under the staticChild\n inheritedNameEnhancement(),\n // dataName must be under the staticChild\n dataNameEnhancement(),\n // enhanceEnhancement must be under the functionDefaultPropsEnhancement\n enhanceEnhancement(),\n styleEnhancement(childComponents, context),\n ]);\n Component[CONTEXT_COMPONENT] = context;\n Component._______childrenComponents = childComponents;\n Component[CREATE_COMPONENT] = function (\n _OriginComponent = OriginComponent,\n _childComponents = childComponents,\n _options = options,\n ) {\n return createComponent(_OriginComponent, _childComponents, _options);\n };\n Component.newInstance = function (\n _OriginComponent = OriginComponent,\n _childComponents = childComponents,\n _options = options,\n ) {\n return createComponent(_OriginComponent, _childComponents, _options);\n };\n Component[CORE_COMPONENT] = true;\n return Component;\n}\n\nfunction createBaseComponent<T extends keyof React.JSX.IntrinsicElements, P>(OriginComponent: React.ForwardRefRenderFunction<React.ElementRef<T>, P>) {\n const Component = React.forwardRef<React.ElementRef<T>, P>(OriginComponent) as unknown as Intergalactic.Component<T, P>;\n Component.displayName = OriginComponent.displayName ?? '';\n // @ts-ignore\n Component.defaultProps = {\n 'data-ui-name': OriginComponent.displayName,\n };\n Component[CORE_COMPONENT] = true;\n\n return Component;\n}\n\nexport { createComponent, createBaseComponent };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,49 +1,77 @@
|
|
|
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"] = void 0;
|
|
8
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
9
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
10
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
12
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
13
|
+
var _callSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/callSuper"));
|
|
14
|
+
var _superPropGet3 = _interopRequireDefault(require("@babel/runtime/helpers/superPropGet"));
|
|
15
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
8
16
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
17
|
function propsObserver(propsToWatch) {
|
|
10
18
|
return function (Class) {
|
|
11
|
-
return
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
(0,
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
+
return /*#__PURE__*/function (_Class2) {
|
|
20
|
+
function _class() {
|
|
21
|
+
var _this;
|
|
22
|
+
(0, _classCallCheck2["default"])(this, _class);
|
|
23
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
24
|
+
args[_key] = arguments[_key];
|
|
25
|
+
}
|
|
26
|
+
_this = (0, _callSuper2["default"])(this, _class, [].concat(args));
|
|
27
|
+
(0, _defineProperty2["default"])(_this, "__observableProps", {});
|
|
28
|
+
if (!_this.props) return (0, _possibleConstructorReturn2["default"])(_this);
|
|
29
|
+
var observablePropKeys = propsToWatch.length === 0 ? Object.keys(_this.props) : (0, _toConsumableArray2["default"])(propsToWatch);
|
|
30
|
+
observablePropKeys.forEach(function (key) {
|
|
31
|
+
_this.__observableProps[key] = _this.props[key];
|
|
19
32
|
});
|
|
33
|
+
return _this;
|
|
20
34
|
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
35
|
+
(0, _inherits2["default"])(_class, _Class2);
|
|
36
|
+
return (0, _createClass2["default"])(_class, [{
|
|
37
|
+
key: "onPropsChange",
|
|
38
|
+
value: function onPropsChange(_) {
|
|
39
|
+
var _this2 = this;
|
|
40
|
+
var shouldEmitChanges = false;
|
|
41
|
+
var changedProps = {};
|
|
42
|
+
Object.entries(this.__observableProps).forEach(function (_ref) {
|
|
43
|
+
var _ref2 = (0, _slicedToArray2["default"])(_ref, 2),
|
|
44
|
+
key = _ref2[0],
|
|
45
|
+
value = _ref2[1];
|
|
46
|
+
var arePropsEqual = Object.is(value, _this2.props[key]);
|
|
47
|
+
if (!arePropsEqual) {
|
|
48
|
+
_this2.__observableProps[key] = _this2.props[key];
|
|
49
|
+
changedProps[key] = _this2.props[key];
|
|
50
|
+
shouldEmitChanges = true;
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
if (!shouldEmitChanges) return;
|
|
54
|
+
(0, _superPropGet3["default"])(_class, "onPropsChange", this, 3)([changedProps]);
|
|
55
|
+
}
|
|
56
|
+
}, {
|
|
57
|
+
key: "componentWillUnmount",
|
|
58
|
+
value: function componentWillUnmount() {
|
|
59
|
+
var _superPropGet2,
|
|
60
|
+
_this3 = this;
|
|
61
|
+
(_superPropGet2 = (0, _superPropGet3["default"])(_class, "componentWillUnmount", this, 3)) === null || _superPropGet2 === void 0 || _superPropGet2([]);
|
|
62
|
+
Object.keys(this.__observableProps).forEach(function (key) {
|
|
63
|
+
_this3.__observableProps[key] = undefined;
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
}, {
|
|
67
|
+
key: "render",
|
|
68
|
+
value: function render() {
|
|
69
|
+
this.onPropsChange();
|
|
70
|
+
return (0, _superPropGet3["default"])(_class, "render", this, 3)([]);
|
|
71
|
+
}
|
|
72
|
+
}]);
|
|
73
|
+
}(Class);
|
|
46
74
|
};
|
|
47
75
|
}
|
|
48
|
-
var _default = exports
|
|
76
|
+
var _default = exports["default"] = propsObserver;
|
|
49
77
|
//# sourceMappingURL=propsObserver.js.map
|