@qsxy/element-plus-react 1.0.0-next.21 → 1.0.0-next.23
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/dist/Breadcrumb/Breadcrumb.js +9 -0
- package/dist/Breadcrumb/BreadcrumbItem.js +7 -4
- package/dist/Button/Button.js +3 -3
- package/dist/ColorPicker/ColorPicker.js +12 -2
- package/dist/ConfigProvider/ConfigProvider.d.ts +6 -22
- package/dist/ConfigProvider/ConfigProvider.js +22 -13
- package/dist/ConfigProvider/ConfigProviderContext.d.ts +5 -0
- package/dist/ConfigProvider/ConfigProviderContext.js +13 -0
- package/dist/ConfigProvider/index.d.ts +2 -2
- package/dist/ConfigProvider/index.js +1 -1
- package/dist/ConfigProvider/typings.d.ts +22 -0
- package/dist/ConfigProvider/typings.js +1 -0
- package/dist/Container/Aside.d.ts +5 -0
- package/dist/Container/Aside.js +26 -0
- package/dist/Container/Container.d.ts +5 -0
- package/dist/Container/Container.js +37 -0
- package/dist/Container/Footer.d.ts +5 -0
- package/dist/Container/Footer.js +26 -0
- package/dist/Container/Header.d.ts +5 -0
- package/dist/Container/Header.js +26 -0
- package/dist/Container/Main.d.ts +3 -0
- package/dist/Container/Main.js +14 -0
- package/dist/Container/index.d.ts +6 -0
- package/dist/Container/index.js +5 -0
- package/dist/Container/typings.d.ts +30 -0
- package/dist/Container/typings.js +1 -0
- package/dist/DateTimePicker/DateTimePicker.d.ts +1 -1
- package/dist/InputNumber/InputNumber.js +4 -4
- package/dist/Menu/Menu.d.ts +4 -0
- package/dist/Menu/Menu.js +281 -0
- package/dist/Menu/MenuCollapseTransition.d.ts +6 -0
- package/dist/Menu/MenuCollapseTransition.js +40 -0
- package/dist/Menu/MenuContext.d.ts +18 -0
- package/dist/Menu/MenuContext.js +20 -0
- package/dist/Menu/MenuItem.d.ts +7 -0
- package/dist/Menu/MenuItem.js +77 -0
- package/dist/Menu/MenuItemGroup.d.ts +7 -0
- package/dist/Menu/MenuItemGroup.js +45 -0
- package/dist/Menu/SubMenu.d.ts +7 -0
- package/dist/Menu/SubMenu.js +287 -0
- package/dist/Menu/SubMenuCollapseTransition.d.ts +6 -0
- package/dist/Menu/SubMenuCollapseTransition.js +52 -0
- package/dist/Menu/index.d.ts +5 -0
- package/dist/Menu/index.js +4 -0
- package/dist/Menu/typings.d.ts +121 -0
- package/dist/Menu/typings.js +1 -0
- package/dist/Menu/useEllipsis.d.ts +6 -0
- package/dist/Menu/useEllipsis.js +82 -0
- package/dist/Message/Message.js +1 -1
- package/dist/Pagination/Options.js +1 -1
- package/dist/Pagination/Pagination.js +1 -1
- package/dist/Popper/Popper.js +10 -5
- package/dist/Popper/popperOptions.d.ts +7 -6
- package/dist/Popper/popperOptions.js +56 -8
- package/dist/Popper/typings.d.ts +1 -0
- package/dist/Radio/Radio.js +4 -3
- package/dist/Radio/RadioButton.d.ts +1 -1
- package/dist/Radio/RadioButton.js +3 -2
- package/dist/Radio/typings.d.ts +1 -1
- package/dist/Table/Table.js +9 -1
- package/dist/Tooltip/Tooltip.js +4 -3
- package/dist/Transition/CssTransiton.d.ts +15 -0
- package/dist/Transition/CssTransiton.js +29 -0
- package/dist/Transition/Transition.d.ts +2 -0
- package/dist/Transition/Transition.js +7 -2
- package/dist/hooks/popperPropsUtils.js +1 -1
- package/dist/hooks/useCssTransiton.d.ts +27 -0
- package/dist/hooks/useCssTransiton.js +87 -0
- package/dist/hooks/useResizeObserver.d.ts +42 -0
- package/dist/hooks/useResizeObserver.js +42 -0
- package/dist/index.css +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.js +2 -0
- package/dist/types/common.d.ts +2 -2
- package/package.json +4 -3
- package/theme-chalk/aside.scss +8 -0
- package/theme-chalk/common/transition.scss +142 -0
- package/theme-chalk/container.scss +14 -0
- package/theme-chalk/footer.scss +12 -0
- package/theme-chalk/header.scss +12 -0
- package/theme-chalk/index.scss +8 -0
- package/theme-chalk/main.scss +14 -0
- package/theme-chalk/menu-item-group.scss +0 -0
- package/theme-chalk/menu-item.scss +0 -0
- package/theme-chalk/menu.scss +353 -0
|
@@ -1,23 +1,24 @@
|
|
|
1
|
-
import { Options, Placement, StrictModifiers } from '@popperjs/core';
|
|
2
|
-
|
|
1
|
+
import { Options, Placement, State, StrictModifiers } from '@popperjs/core';
|
|
2
|
+
import { PopperOptions } from './typings';
|
|
3
|
+
type IUsePopperProps = {
|
|
3
4
|
popperOptions?: Options;
|
|
4
5
|
arrowOffset?: number;
|
|
5
6
|
offset?: number;
|
|
6
7
|
placement?: Placement;
|
|
7
8
|
gpuAcceleration?: boolean;
|
|
8
|
-
}
|
|
9
|
-
|
|
9
|
+
} & Pick<PopperOptions, 'fallbackPlacements'>;
|
|
10
|
+
type ModifierProps = {
|
|
10
11
|
offset?: number;
|
|
11
12
|
arrow?: HTMLElement;
|
|
12
13
|
arrowOffset?: number;
|
|
13
14
|
gpuAcceleration?: boolean;
|
|
14
15
|
placement?: Placement;
|
|
15
|
-
}
|
|
16
|
+
} & Pick<PopperOptions, 'fallbackPlacements'>;
|
|
16
17
|
export default function usePopperOptions(props: IUsePopperProps, arrowElement: any): {
|
|
17
18
|
modifiers: StrictModifiers[];
|
|
18
19
|
placement: Placement;
|
|
19
20
|
strategy: import("@popperjs/core").PositioningStrategy;
|
|
20
|
-
onFirstUpdate?: (arg0: Partial<
|
|
21
|
+
onFirstUpdate?: (arg0: Partial<State>) => void;
|
|
21
22
|
};
|
|
22
23
|
export declare function buildModifier(props: ModifierProps, externalModifiers?: StrictModifiers[]): StrictModifiers[];
|
|
23
24
|
export {};
|
|
@@ -10,6 +10,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
10
10
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
11
11
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
12
12
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
13
|
+
import fromPairs from 'lodash/fromPairs';
|
|
13
14
|
import { useMemo } from 'react';
|
|
14
15
|
export default function usePopperOptions(props, arrowElement) {
|
|
15
16
|
return useMemo(function () {
|
|
@@ -23,18 +24,46 @@ export default function usePopperOptions(props, arrowElement) {
|
|
|
23
24
|
arrowOffset: props.arrowOffset,
|
|
24
25
|
offset: props.offset,
|
|
25
26
|
gpuAcceleration: props.gpuAcceleration,
|
|
26
|
-
placement: props.placement
|
|
27
|
+
placement: props.placement,
|
|
28
|
+
fallbackPlacements: props.fallbackPlacements
|
|
27
29
|
}, (_props$popperOptions = props.popperOptions) === null || _props$popperOptions === void 0 ? void 0 : _props$popperOptions.modifiers)
|
|
28
30
|
});
|
|
29
|
-
}, [arrowElement, props.arrowOffset, props.gpuAcceleration, props.offset, props.placement, props.popperOptions]);
|
|
31
|
+
}, [arrowElement, props.arrowOffset, props.fallbackPlacements, props.gpuAcceleration, props.offset, props.placement, props.popperOptions]);
|
|
30
32
|
}
|
|
33
|
+
function deriveState(state) {
|
|
34
|
+
var elements = Object.keys(state.elements);
|
|
35
|
+
var styles = fromPairs(elements.map(function (element) {
|
|
36
|
+
return [element, state.styles[element] || {}];
|
|
37
|
+
}));
|
|
38
|
+
var attributes = fromPairs(elements.map(function (element) {
|
|
39
|
+
return [element, state.attributes[element]];
|
|
40
|
+
}));
|
|
41
|
+
return {
|
|
42
|
+
styles: styles,
|
|
43
|
+
attributes: attributes
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
var states = {
|
|
47
|
+
styles: {
|
|
48
|
+
popper: {
|
|
49
|
+
position: 'absolute',
|
|
50
|
+
left: '0',
|
|
51
|
+
top: '0'
|
|
52
|
+
},
|
|
53
|
+
arrow: {
|
|
54
|
+
position: 'absolute'
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
attributes: {}
|
|
58
|
+
};
|
|
31
59
|
export function buildModifier(props) {
|
|
32
60
|
var externalModifiers = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
33
61
|
var arrow = props.arrow,
|
|
34
62
|
arrowOffset = props.arrowOffset,
|
|
35
63
|
offset = props.offset,
|
|
36
64
|
gpuAcceleration = props.gpuAcceleration,
|
|
37
|
-
placement = props.placement
|
|
65
|
+
placement = props.placement,
|
|
66
|
+
fallbackPlacements = props.fallbackPlacements;
|
|
38
67
|
var modifiers = [{
|
|
39
68
|
name: 'offset',
|
|
40
69
|
options: {
|
|
@@ -50,15 +79,32 @@ export function buildModifier(props) {
|
|
|
50
79
|
right: 5
|
|
51
80
|
}
|
|
52
81
|
}
|
|
82
|
+
}, {
|
|
83
|
+
name: 'updateState',
|
|
84
|
+
enabled: true,
|
|
85
|
+
phase: 'write',
|
|
86
|
+
fn: function fn(_ref) {
|
|
87
|
+
var state = _ref.state;
|
|
88
|
+
var derivedState = deriveState(state);
|
|
89
|
+
Object.assign(states, derivedState);
|
|
90
|
+
},
|
|
91
|
+
requires: ['computeStyles']
|
|
53
92
|
}, {
|
|
54
93
|
name: 'flip',
|
|
55
94
|
options: {
|
|
56
95
|
padding: 5,
|
|
57
96
|
fallbackPlacements: function () {
|
|
58
|
-
if (
|
|
59
|
-
|
|
97
|
+
if (fallbackPlacements) {
|
|
98
|
+
if (typeof fallbackPlacements === 'function') {
|
|
99
|
+
return fallbackPlacements(placement);
|
|
100
|
+
}
|
|
101
|
+
return fallbackPlacements;
|
|
102
|
+
} else {
|
|
103
|
+
if (placement === 'bottom-start') {
|
|
104
|
+
return ['bottom', 'top-start', 'right', 'left'];
|
|
105
|
+
}
|
|
106
|
+
return ['bottom', 'top', 'right', 'left'];
|
|
60
107
|
}
|
|
61
|
-
return ['bottom', 'top', 'right', 'left'];
|
|
62
108
|
}()
|
|
63
109
|
}
|
|
64
110
|
}, {
|
|
@@ -67,11 +113,13 @@ export function buildModifier(props) {
|
|
|
67
113
|
gpuAcceleration: gpuAcceleration,
|
|
68
114
|
adaptive: gpuAcceleration
|
|
69
115
|
}
|
|
70
|
-
},
|
|
116
|
+
},
|
|
117
|
+
// { name: 'applyStyles', enabled: false },
|
|
118
|
+
{
|
|
71
119
|
name: 'eventListeners',
|
|
72
120
|
enabled: true,
|
|
73
121
|
options: {
|
|
74
|
-
scroll:
|
|
122
|
+
scroll: false,
|
|
75
123
|
resize: true
|
|
76
124
|
}
|
|
77
125
|
}
|
package/dist/Popper/typings.d.ts
CHANGED
|
@@ -31,6 +31,7 @@ export type PopperOptions = {
|
|
|
31
31
|
popperStyle?: React.CSSProperties;
|
|
32
32
|
effect?: 'light' | 'dark' | string;
|
|
33
33
|
popperOptions?: Options;
|
|
34
|
+
fallbackPlacements?: Placement[] | ((placement?: Placement) => Placement[]);
|
|
34
35
|
};
|
|
35
36
|
export type PopperProps = {
|
|
36
37
|
visible: boolean;
|
package/dist/Radio/Radio.js
CHANGED
|
@@ -131,8 +131,9 @@ var InternalRadio = function InternalRadio(props, ref) {
|
|
|
131
131
|
}, /*#__PURE__*/React.createElement("input", _extends({
|
|
132
132
|
key: name
|
|
133
133
|
}, htmlInputProps, {
|
|
134
|
-
name: name
|
|
135
|
-
|
|
134
|
+
name: name
|
|
135
|
+
// value={value}
|
|
136
|
+
,
|
|
136
137
|
type: "radio",
|
|
137
138
|
ref: inputRef,
|
|
138
139
|
className: e(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["hidden"]))),
|
|
@@ -149,7 +150,7 @@ var InternalRadio = function InternalRadio(props, ref) {
|
|
|
149
150
|
})), /*#__PURE__*/React.createElement("span", {
|
|
150
151
|
className: e(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["label"])))
|
|
151
152
|
}, children));
|
|
152
|
-
}, [b, checked, children, className, disabled, e, handleChange, htmlInputProps, is, m, name, readOnly, size, tooltipEvents
|
|
153
|
+
}, [b, checked, children, className, disabled, e, handleChange, htmlInputProps, is, m, name, readOnly, size, tooltipEvents]);
|
|
153
154
|
if (plaintext) {
|
|
154
155
|
return checked ? /*#__PURE__*/React.createElement("div", _extends({}, tooltipEvents, {
|
|
155
156
|
ref: containerRef,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { RadioProps, RadioRef } from './typings';
|
|
3
|
-
declare const RadioButton: React.ForwardRefExoticComponent<RadioProps<
|
|
3
|
+
declare const RadioButton: React.ForwardRefExoticComponent<RadioProps<import("./typings").ValueType> & React.RefAttributes<RadioRef>>;
|
|
4
4
|
export default RadioButton;
|
|
@@ -116,8 +116,9 @@ var RadioButton = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
116
116
|
}), /*#__PURE__*/React.createElement("input", _extends({
|
|
117
117
|
key: name
|
|
118
118
|
}, htmlInputProps, {
|
|
119
|
-
name: name
|
|
120
|
-
|
|
119
|
+
name: name
|
|
120
|
+
// value={value}
|
|
121
|
+
,
|
|
121
122
|
type: "radio",
|
|
122
123
|
ref: inputRef,
|
|
123
124
|
className: e(_templateObject || (_templateObject = _taggedTemplateLiteral(["original-radio"]))),
|
package/dist/Radio/typings.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React, { RefObject } from 'react';
|
|
2
2
|
import { BaseProps, FormControlBaseProps, NativeProps } from '../types/common';
|
|
3
|
-
export type ValueType =
|
|
3
|
+
export type ValueType = string | number | boolean;
|
|
4
4
|
export type RadioRef = {
|
|
5
5
|
ref: RefObject<HTMLSpanElement>;
|
|
6
6
|
input: HTMLInputElement;
|
package/dist/Table/Table.js
CHANGED
|
@@ -8,6 +8,8 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
8
8
|
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
9
9
|
import classNames from 'classnames';
|
|
10
10
|
import React, { forwardRef, useImperativeHandle, useMemo, useRef } from 'react';
|
|
11
|
+
import { useTranslation } from 'react-i18next';
|
|
12
|
+
import { useConfigProvider } from "../ConfigProvider/ConfigProviderContext";
|
|
11
13
|
import { Loading } from "../Loading";
|
|
12
14
|
import Scrollbar from "../Scrollbar/Scrollbar";
|
|
13
15
|
import { mergeDefaultProps } from "../Util";
|
|
@@ -21,13 +23,19 @@ import { useSelection } from "./hooks/useSelection";
|
|
|
21
23
|
import { useTable } from "./hooks/useTable";
|
|
22
24
|
import { TableIdManager } from "./util";
|
|
23
25
|
function InternalTable(props, ref) {
|
|
26
|
+
var _useConfigProvider = useConfigProvider(),
|
|
27
|
+
locale = _useConfigProvider.locale;
|
|
28
|
+
var _useTranslation = useTranslation(),
|
|
29
|
+
t = _useTranslation.t;
|
|
24
30
|
props = mergeDefaultProps({
|
|
25
31
|
data: [],
|
|
26
32
|
fit: true,
|
|
27
33
|
showHeader: true,
|
|
28
34
|
tableLayout: 'fixed',
|
|
29
35
|
style: {},
|
|
30
|
-
emptyText: '
|
|
36
|
+
emptyText: t('el.table.emptyText', {
|
|
37
|
+
lng: locale
|
|
38
|
+
}),
|
|
31
39
|
selectOnIndeterminate: true
|
|
32
40
|
}, props);
|
|
33
41
|
var _props = props,
|
package/dist/Tooltip/Tooltip.js
CHANGED
|
@@ -55,8 +55,7 @@ var Tooltip = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
55
55
|
_partitionAnimationPr2 = _slicedToArray(_partitionAnimationPr, 1),
|
|
56
56
|
transitionProps = _partitionAnimationPr2[0];
|
|
57
57
|
var _useClassNames = useClassNames(classPrefix),
|
|
58
|
-
e = _useClassNames.e
|
|
59
|
-
is = _useClassNames.is;
|
|
58
|
+
e = _useClassNames.e;
|
|
60
59
|
var _useControlled = useControlled(props.visible, props.defaultVisible),
|
|
61
60
|
_useControlled2 = _slicedToArray(_useControlled, 2),
|
|
62
61
|
visible = _useControlled2[0],
|
|
@@ -108,7 +107,9 @@ var Tooltip = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
108
107
|
},
|
|
109
108
|
onOpen: handleMouseEnter,
|
|
110
109
|
onClose: handleMouseLeave,
|
|
111
|
-
hide:
|
|
110
|
+
hide: function hide() {
|
|
111
|
+
setVisible(false);
|
|
112
|
+
}
|
|
112
113
|
};
|
|
113
114
|
});
|
|
114
115
|
return /*#__PURE__*/React.createElement(React.Fragment, null, Children.map(filterChildren, function (child) {
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React, { FC } from 'react';
|
|
2
|
+
import { BaseProps, NativeProps } from '../types/common';
|
|
3
|
+
export interface CssTransitonProps extends BaseProps<React.ReactElement>, NativeProps {
|
|
4
|
+
}
|
|
5
|
+
export declare enum STATUS {
|
|
6
|
+
UNMOUNTED = 0,
|
|
7
|
+
BEFORE_ENTER = 1,
|
|
8
|
+
ENTER = 2,
|
|
9
|
+
AFTER_ENTER = 3,
|
|
10
|
+
BEFORE_LEAVE = 4,
|
|
11
|
+
LEAVE = 5,
|
|
12
|
+
AFTER_LEAVE = 6
|
|
13
|
+
}
|
|
14
|
+
declare const CssTransiton: FC<CssTransitonProps>;
|
|
15
|
+
export default CssTransiton;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
2
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
3
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
4
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
5
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
6
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
7
|
+
import { useComposeRef } from 'rc-util';
|
|
8
|
+
import React from 'react';
|
|
9
|
+
export var STATUS = /*#__PURE__*/function (STATUS) {
|
|
10
|
+
STATUS[STATUS["UNMOUNTED"] = 0] = "UNMOUNTED";
|
|
11
|
+
STATUS[STATUS["BEFORE_ENTER"] = 1] = "BEFORE_ENTER";
|
|
12
|
+
STATUS[STATUS["ENTER"] = 2] = "ENTER";
|
|
13
|
+
STATUS[STATUS["AFTER_ENTER"] = 3] = "AFTER_ENTER";
|
|
14
|
+
STATUS[STATUS["BEFORE_LEAVE"] = 4] = "BEFORE_LEAVE";
|
|
15
|
+
STATUS[STATUS["LEAVE"] = 5] = "LEAVE";
|
|
16
|
+
STATUS[STATUS["AFTER_LEAVE"] = 6] = "AFTER_LEAVE";
|
|
17
|
+
return STATUS;
|
|
18
|
+
}({});
|
|
19
|
+
var CssTransiton = function CssTransiton(props) {
|
|
20
|
+
var _props$children$props;
|
|
21
|
+
var _React$useState = React.useState(STATUS.UNMOUNTED),
|
|
22
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
23
|
+
status = _React$useState2[0],
|
|
24
|
+
setStatus = _React$useState2[1];
|
|
25
|
+
var nodeRef = React.useRef(null);
|
|
26
|
+
var mergedRef = useComposeRef(nodeRef, (_props$children$props = props.children.props) === null || _props$children$props === void 0 ? void 0 : _props$children$props.ref);
|
|
27
|
+
return /*#__PURE__*/React.cloneElement(props.children);
|
|
28
|
+
};
|
|
29
|
+
export default CssTransiton;
|
|
@@ -19,6 +19,8 @@ export interface TransitionProps extends AnimationEventProps {
|
|
|
19
19
|
/** Additional classes */
|
|
20
20
|
className?: string;
|
|
21
21
|
name?: string;
|
|
22
|
+
disabled?: boolean;
|
|
23
|
+
cssTransition?: boolean;
|
|
22
24
|
display?: string;
|
|
23
25
|
/** Show the component; triggers the enter or exit animation */
|
|
24
26
|
visible?: boolean;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var _excluded = ["children", "className", "name"];
|
|
1
|
+
var _excluded = ["children", "className", "name", "disabled", "cssTransition"];
|
|
2
2
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
3
3
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
4
4
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
@@ -247,7 +247,12 @@ var Transition = /*#__PURE__*/function (_Component) {
|
|
|
247
247
|
children = _this$props5.children,
|
|
248
248
|
className = _this$props5.className,
|
|
249
249
|
name = _this$props5.name,
|
|
250
|
+
disabled = _this$props5.disabled,
|
|
251
|
+
cssTransition = _this$props5.cssTransition,
|
|
250
252
|
rest = _objectWithoutProperties(_this$props5, _excluded);
|
|
253
|
+
if (disabled) {
|
|
254
|
+
return children;
|
|
255
|
+
}
|
|
251
256
|
var childProps = omit(rest, ['animation', 'className', 'visible', 'unmountOnExit', 'transitionAppear', 'duration', 'beforeEnter', 'onEnter', 'afterEnter', 'beforeLeave', 'onLeave', 'afterLeave', 'nodeRef']);
|
|
252
257
|
var transitionClassName;
|
|
253
258
|
if (name) {
|
|
@@ -277,7 +282,7 @@ var Transition = /*#__PURE__*/function (_Component) {
|
|
|
277
282
|
// @ts-ignore
|
|
278
283
|
className: classNames(className, (_child$props = child.props) === null || _child$props === void 0 ? void 0 : _child$props.className, transitionClassName),
|
|
279
284
|
style: _objectSpread(_objectSpread({}, ((_child$props2 = child.props) === null || _child$props2 === void 0 ? void 0 : _child$props2.style) || {}), {}, {
|
|
280
|
-
display: _this5.state.status > 1 ? (_this5$props$display = _this5.props.display) !== null && _this5$props$display !== void 0 ? _this5$props$display : 'block' : 'none'
|
|
285
|
+
display: _this5.state.status > 1 || cssTransition ? (_this5$props$display = _this5.props.display) !== null && _this5$props$display !== void 0 ? _this5$props$display : 'block' : 'none'
|
|
281
286
|
})
|
|
282
287
|
}));
|
|
283
288
|
});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import forEach from 'lodash/forEach';
|
|
2
2
|
import includes from 'lodash/includes';
|
|
3
3
|
// @ts-ignore
|
|
4
|
-
export var popperAllProps = ['popperInstRef', 'offset', 'placement', 'arrowOffset', 'showArrow', 'popperClass', 'popperStyle', 'name', 'display', 'unmountOnExit', 'transitionAppear', 'duration', 'gpuAcceleration', 'strategy', 'appendToBody', 'appendTo', 'popperOptions'];
|
|
4
|
+
export var popperAllProps = ['popperInstRef', 'offset', 'placement', 'arrowOffset', 'showArrow', 'popperClass', 'popperStyle', 'name', 'display', 'unmountOnExit', 'transitionAppear', 'duration', 'gpuAcceleration', 'strategy', 'appendToBody', 'appendTo', 'popperOptions', 'fallbackPlacements'];
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Returns an array of objects consisting of: props of html input element and rest.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface CssTransitonProps {
|
|
3
|
+
nodeRef: React.RefObject<HTMLElement>;
|
|
4
|
+
visible: boolean;
|
|
5
|
+
disabled?: boolean;
|
|
6
|
+
duration?: number;
|
|
7
|
+
beforeLeave?: (el: HTMLElement) => void;
|
|
8
|
+
onLeave?: (el: HTMLElement) => void;
|
|
9
|
+
afterLeave?: (el: HTMLElement) => void;
|
|
10
|
+
beforeEnter?: (el: HTMLElement) => void;
|
|
11
|
+
onEnter?: (el: HTMLElement, done?: () => void) => void;
|
|
12
|
+
afterEnter?: (el: HTMLElement) => void;
|
|
13
|
+
done?: () => void;
|
|
14
|
+
}
|
|
15
|
+
export declare enum STATUS {
|
|
16
|
+
UNMOUNTED = 0,
|
|
17
|
+
BEFORE_LEAVE = 1,
|
|
18
|
+
LEAVE = 2,
|
|
19
|
+
AFTER_LEAVE = 3,
|
|
20
|
+
BEFORE_ENTER = 4,
|
|
21
|
+
ENTER = 5,
|
|
22
|
+
AFTER_ENTER = 6
|
|
23
|
+
}
|
|
24
|
+
declare const useCssTransiton: (props: CssTransitonProps) => {
|
|
25
|
+
mounted: boolean;
|
|
26
|
+
};
|
|
27
|
+
export default useCssTransiton;
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
2
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
3
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
4
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
5
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
6
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
7
|
+
import { addStyle } from 'dom-lib';
|
|
8
|
+
import { useCallback, useEffect, useState } from 'react';
|
|
9
|
+
export var STATUS = /*#__PURE__*/function (STATUS) {
|
|
10
|
+
STATUS[STATUS["UNMOUNTED"] = 0] = "UNMOUNTED";
|
|
11
|
+
STATUS[STATUS["BEFORE_LEAVE"] = 1] = "BEFORE_LEAVE";
|
|
12
|
+
STATUS[STATUS["LEAVE"] = 2] = "LEAVE";
|
|
13
|
+
STATUS[STATUS["AFTER_LEAVE"] = 3] = "AFTER_LEAVE";
|
|
14
|
+
STATUS[STATUS["BEFORE_ENTER"] = 4] = "BEFORE_ENTER";
|
|
15
|
+
STATUS[STATUS["ENTER"] = 5] = "ENTER";
|
|
16
|
+
STATUS[STATUS["AFTER_ENTER"] = 6] = "AFTER_ENTER";
|
|
17
|
+
return STATUS;
|
|
18
|
+
}({});
|
|
19
|
+
var useCssTransiton = function useCssTransiton(props) {
|
|
20
|
+
var nodeRef = props.nodeRef,
|
|
21
|
+
visible = props.visible,
|
|
22
|
+
disabled = props.disabled,
|
|
23
|
+
_props$duration = props.duration,
|
|
24
|
+
duration = _props$duration === void 0 ? 250 : _props$duration,
|
|
25
|
+
beforeLeave = props.beforeLeave,
|
|
26
|
+
onLeave = props.onLeave,
|
|
27
|
+
afterLeave = props.afterLeave,
|
|
28
|
+
beforeEnter = props.beforeEnter,
|
|
29
|
+
onEnter = props.onEnter,
|
|
30
|
+
afterEnter = props.afterEnter,
|
|
31
|
+
done = props.done;
|
|
32
|
+
var _useState = useState(STATUS.UNMOUNTED),
|
|
33
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
34
|
+
status = _useState2[0],
|
|
35
|
+
setStatus = _useState2[1];
|
|
36
|
+
var _useState3 = useState(false),
|
|
37
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
38
|
+
mounted = _useState4[0],
|
|
39
|
+
setMounted = _useState4[1];
|
|
40
|
+
var startCssTransition = useCallback(function () {
|
|
41
|
+
setStatus(STATUS.BEFORE_LEAVE);
|
|
42
|
+
}, []);
|
|
43
|
+
useEffect(function () {
|
|
44
|
+
if (!disabled) {
|
|
45
|
+
if (mounted) {
|
|
46
|
+
startCssTransition();
|
|
47
|
+
} else {
|
|
48
|
+
setMounted(true);
|
|
49
|
+
done === null || done === void 0 || done();
|
|
50
|
+
}
|
|
51
|
+
} else {
|
|
52
|
+
done === null || done === void 0 || done();
|
|
53
|
+
}
|
|
54
|
+
}, [visible]);
|
|
55
|
+
useEffect(function () {
|
|
56
|
+
if (status === STATUS.BEFORE_LEAVE) {
|
|
57
|
+
beforeLeave === null || beforeLeave === void 0 || beforeLeave(nodeRef.current);
|
|
58
|
+
setStatus(STATUS.LEAVE);
|
|
59
|
+
} else if (status === STATUS.LEAVE) {
|
|
60
|
+
onLeave === null || onLeave === void 0 || onLeave(nodeRef.current);
|
|
61
|
+
setStatus(STATUS.AFTER_LEAVE);
|
|
62
|
+
} else if (status === STATUS.AFTER_LEAVE) {
|
|
63
|
+
setTimeout(function () {
|
|
64
|
+
afterLeave === null || afterLeave === void 0 || afterLeave(nodeRef.current);
|
|
65
|
+
setStatus(STATUS.BEFORE_ENTER);
|
|
66
|
+
addStyle(nodeRef.current, {
|
|
67
|
+
display: 'none'
|
|
68
|
+
});
|
|
69
|
+
}, duration);
|
|
70
|
+
} else if (status === STATUS.BEFORE_ENTER) {
|
|
71
|
+
beforeEnter === null || beforeEnter === void 0 || beforeEnter(nodeRef.current);
|
|
72
|
+
setStatus(STATUS.ENTER);
|
|
73
|
+
} else if (status === STATUS.ENTER) {
|
|
74
|
+
addStyle(nodeRef.current, {
|
|
75
|
+
display: ''
|
|
76
|
+
});
|
|
77
|
+
onEnter === null || onEnter === void 0 || onEnter(nodeRef.current, done);
|
|
78
|
+
setStatus(STATUS.AFTER_ENTER);
|
|
79
|
+
} else if (status === STATUS.AFTER_ENTER) {
|
|
80
|
+
afterEnter === null || afterEnter === void 0 || afterEnter(nodeRef.current);
|
|
81
|
+
}
|
|
82
|
+
}, [status]);
|
|
83
|
+
return {
|
|
84
|
+
mounted: mounted
|
|
85
|
+
};
|
|
86
|
+
};
|
|
87
|
+
export default useCssTransiton;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { RefObject } from 'react';
|
|
2
|
+
export interface ResizeObserverSize {
|
|
3
|
+
readonly inlineSize: number;
|
|
4
|
+
readonly blockSize: number;
|
|
5
|
+
}
|
|
6
|
+
export interface ResizeObserverEntry {
|
|
7
|
+
readonly target: Element;
|
|
8
|
+
readonly contentRect: DOMRectReadOnly;
|
|
9
|
+
readonly borderBoxSize: ReadonlyArray<ResizeObserverSize>;
|
|
10
|
+
readonly contentBoxSize: ReadonlyArray<ResizeObserverSize>;
|
|
11
|
+
readonly devicePixelContentBoxSize: ReadonlyArray<ResizeObserverSize>;
|
|
12
|
+
}
|
|
13
|
+
export type ResizeObserverCallback = (entries: ReadonlyArray<ResizeObserverEntry>, observer: ResizeObserver) => void;
|
|
14
|
+
export interface UseResizeObserverOptions {
|
|
15
|
+
/**
|
|
16
|
+
* Sets which box model the observer will observe changes to. Possible values
|
|
17
|
+
* are `content-box` (the default), `border-box` and `device-pixel-content-box`.
|
|
18
|
+
*
|
|
19
|
+
* @default 'content-box'
|
|
20
|
+
*/
|
|
21
|
+
box?: ResizeObserverBoxOptions;
|
|
22
|
+
window?: Window;
|
|
23
|
+
}
|
|
24
|
+
declare class ResizeObserver {
|
|
25
|
+
constructor(callback: ResizeObserverCallback);
|
|
26
|
+
disconnect(): void;
|
|
27
|
+
observe(target: Element, options?: UseResizeObserverOptions): void;
|
|
28
|
+
unobserve(target: Element): void;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Reports changes to the dimensions of an Element's content or the border-box
|
|
32
|
+
*
|
|
33
|
+
* @param target
|
|
34
|
+
* @param callback
|
|
35
|
+
* @param options
|
|
36
|
+
*/
|
|
37
|
+
export declare function useResizeObserver(target: RefObject<HTMLElement>, callback: ResizeObserverCallback, options?: UseResizeObserverOptions): {
|
|
38
|
+
isSupported: boolean;
|
|
39
|
+
stop: () => void;
|
|
40
|
+
};
|
|
41
|
+
export type UseResizeObserverReturn = ReturnType<typeof useResizeObserver>;
|
|
42
|
+
export {};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
function _objectDestructuringEmpty(obj) { if (obj == null) throw new TypeError("Cannot destructure " + obj); }
|
|
2
|
+
import { useEffect, useMemo } from 'react';
|
|
3
|
+
/**
|
|
4
|
+
* Reports changes to the dimensions of an Element's content or the border-box
|
|
5
|
+
*
|
|
6
|
+
* @param target
|
|
7
|
+
* @param callback
|
|
8
|
+
* @param options
|
|
9
|
+
*/
|
|
10
|
+
export function useResizeObserver(target, callback) {
|
|
11
|
+
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
12
|
+
var observerOptions = Object.assign({}, (_objectDestructuringEmpty(options), options));
|
|
13
|
+
var observer;
|
|
14
|
+
var isSupported = useMemo(function () {
|
|
15
|
+
return window && 'ResizeObserver' in window;
|
|
16
|
+
}, []);
|
|
17
|
+
var cleanup = function cleanup() {
|
|
18
|
+
if (observer) {
|
|
19
|
+
observer.disconnect();
|
|
20
|
+
observer = undefined;
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
var stop = function stop() {
|
|
24
|
+
cleanup();
|
|
25
|
+
};
|
|
26
|
+
useEffect(function () {
|
|
27
|
+
cleanup();
|
|
28
|
+
if (isSupported && window) {
|
|
29
|
+
observer = new ResizeObserver(callback);
|
|
30
|
+
if (target.current) {
|
|
31
|
+
observer.observe(target.current, observerOptions);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return function () {
|
|
35
|
+
cleanup();
|
|
36
|
+
};
|
|
37
|
+
}, []);
|
|
38
|
+
return {
|
|
39
|
+
isSupported: isSupported,
|
|
40
|
+
stop: stop
|
|
41
|
+
};
|
|
42
|
+
}
|