@nutui/nutui-react-taro 2.0.0-alpha.0 → 2.0.0-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +35 -627
- package/dist/esm/ActionSheet.js +3 -3
- package/dist/esm/Address.js +4 -4
- package/dist/esm/Animate.js +2 -3
- package/dist/esm/Badge.js +1 -3
- package/dist/esm/Calendar.js +5 -5
- package/dist/esm/Cascader.js +4 -4
- package/dist/esm/Col.js +2 -1
- package/dist/esm/DatePicker.js +5 -5
- package/dist/esm/Divider.js +2 -1
- package/dist/esm/Drag.js +2 -3
- package/dist/esm/Elevator.js +3 -3
- package/dist/esm/ImagePreview.js +5 -5
- package/dist/esm/Menu.js +1 -1
- package/dist/esm/MenuItem.js +3 -4
- package/dist/esm/NavBar.js +1 -4
- package/dist/esm/NumberKeyboard.js +3 -3
- package/dist/esm/Picker.js +4 -4
- package/dist/esm/Popup.js +2 -4
- package/dist/esm/Progress.js +1 -4
- package/dist/esm/Row.js +2 -1
- package/dist/esm/ShortPassword.js +3 -3
- package/dist/esm/SideNavBar.js +3 -8
- package/dist/esm/TimeSelect.js +4 -4
- package/dist/esm/Uploader.js +2 -4
- package/dist/esm/{actionsheet.taro-b76a342e.js → actionsheet.taro-10cc53ee.js} +1 -1
- package/dist/esm/{address.taro-1812caeb.js → address.taro-2f915873.js} +3 -3
- package/dist/esm/{animate.taro-fb7986d6.js → animate.taro-9e65d07a.js} +4 -3
- package/dist/esm/{badge.taro-ae154f41.js → badge.taro-1d5df601.js} +11 -16
- package/dist/esm/{calendar.taro-b6b147ca.js → calendar.taro-099cb4a2.js} +1 -1
- package/dist/esm/{cascader.taro-9c0a1a38.js → cascader.taro-62e764a7.js} +2 -2
- package/dist/esm/{col.taro-53eed3cc.js → col.taro-a99a9171.js} +3 -1
- package/dist/esm/{datepicker.taro-439e2080.js → datepicker.taro-0f2bcf42.js} +1 -1
- package/dist/esm/{divider.taro-6c1657ce.js → divider.taro-67e9f757.js} +2 -0
- package/dist/esm/{drag.taro-79bb8744.js → drag.taro-2d3d9d11.js} +4 -3
- package/dist/esm/{elevator.taro-81a11ecc.js → elevator.taro-588e219b.js} +31 -24
- package/dist/esm/{imagepreview.taro-867ee24a.js → imagepreview.taro-b88fcf41.js} +2 -2
- package/dist/esm/menu.taro-b61442a7.js +111 -0
- package/dist/esm/{menuitem.taro-86a6bb6c.js → menuitem.taro-bca78e07.js} +31 -30
- package/dist/esm/navbar.taro-02c69d66.js +57 -0
- package/dist/esm/{numberkeyboard.taro-81b36e5e.js → numberkeyboard.taro-ed9b2149.js} +2 -2
- package/dist/esm/nutui-react.es.js +26 -26
- package/dist/esm/{picker.taro-5c9030a7.js → picker.taro-5028afcb.js} +1 -1
- package/dist/esm/{popup.taro-124b9bab.js → popup.taro-020bf791.js} +27 -30
- package/dist/esm/progress.taro-1c199fbe.js +40 -0
- package/dist/esm/{row.taro-f64d4a13.js → row.taro-75039d53.js} +5 -3
- package/dist/esm/{shortpassword.taro-9a2c98ad.js → shortpassword.taro-681a33a1.js} +1 -1
- package/dist/esm/{sidenavbar.taro-0265812f.js → sidenavbar.taro-d5c5b331.js} +1 -3
- package/dist/esm/{timeselect.taro-5b047850.js → timeselect.taro-a4b86771.js} +1 -1
- package/dist/esm/{uploader.taro-0cca7e97.js → uploader.taro-17569890.js} +36 -38
- package/dist/locales/base.js +1 -1
- package/dist/locales/en-US.js +1 -1
- package/dist/locales/id-ID.js +1 -1
- package/dist/locales/zh-CN.js +1 -1
- package/dist/locales/zh-TW.js +1 -1
- package/dist/locales/zh-UG.js +1 -1
- package/dist/nutui.react.mjs +795 -892
- package/dist/nutui.react.umd.js +795 -892
- package/dist/packages/audio/audio.scss +2 -15
- package/dist/packages/badge/badge.scss +8 -17
- package/dist/packages/calendar/calendar.scss +0 -30
- package/dist/packages/elevator/elevator.scss +2 -28
- package/dist/packages/menu/menu.scss +44 -55
- package/dist/packages/menuitem/menuitem.scss +16 -26
- package/dist/packages/navbar/navbar.scss +16 -115
- package/dist/packages/popup/popup.scss +0 -16
- package/dist/packages/progress/progress.scss +19 -58
- package/dist/packages/row/row.scss +13 -31
- package/dist/packages/sidenavbar/sidenavbar.scss +0 -19
- package/dist/packages/uploader/uploader.scss +2 -28
- package/dist/style.css +1 -1
- package/dist/style.mjs +1 -1
- package/dist/styles/variables-jmapp.scss +23 -114
- package/dist/styles/variables.scss +31 -122
- package/dist/types/index.d.ts +43 -78
- package/package.json +1 -1
- package/dist/esm/menu.taro-54951911.js +0 -98
- package/dist/esm/navbar.taro-69f47d51.js +0 -77
- package/dist/esm/progress.taro-24392ef3.js +0 -88
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
import React__default, { useRef, useEffect, useState } from 'react';
|
|
2
|
-
import classNames from 'classnames';
|
|
3
|
-
import { RectUp, RectDown } from '@nutui/icons-react-taro';
|
|
4
|
-
import { C as ComponentDefaults } from './typings-d8491423.js';
|
|
5
|
-
|
|
6
|
-
const defaultProps = {
|
|
7
|
-
...ComponentDefaults,
|
|
8
|
-
className: '',
|
|
9
|
-
style: {},
|
|
10
|
-
activeColor: '',
|
|
11
|
-
closeOnClickOverlay: true,
|
|
12
|
-
scrollFixed: false,
|
|
13
|
-
lockScroll: true,
|
|
14
|
-
titleIcon: null,
|
|
15
|
-
};
|
|
16
|
-
const Menu = (props) => {
|
|
17
|
-
const { className, titleIcon, scrollFixed, lockScroll, closeOnClickOverlay, children, activeColor, ...rest } = {
|
|
18
|
-
...defaultProps,
|
|
19
|
-
...props,
|
|
20
|
-
};
|
|
21
|
-
const parentRef = useRef(null);
|
|
22
|
-
const onScroll = () => { };
|
|
23
|
-
useEffect(() => {
|
|
24
|
-
if (scrollFixed) {
|
|
25
|
-
window.addEventListener('scroll', onScroll);
|
|
26
|
-
}
|
|
27
|
-
return () => window.removeEventListener('scroll', onScroll);
|
|
28
|
-
}, []);
|
|
29
|
-
const [itemShow, setItemShow] = useState([]);
|
|
30
|
-
const [itemTitle, setItemTitle] = useState([]);
|
|
31
|
-
const toggleItemShow = (index) => {
|
|
32
|
-
itemShow[index] = !itemShow[index];
|
|
33
|
-
const temp = itemShow.map((i, idx) => (idx === index ? i : false));
|
|
34
|
-
setItemShow([...temp]);
|
|
35
|
-
};
|
|
36
|
-
const hideItemShow = (index) => {
|
|
37
|
-
itemShow[index] = false;
|
|
38
|
-
setItemShow([...itemShow]);
|
|
39
|
-
};
|
|
40
|
-
const updateTitle = (text, index) => {
|
|
41
|
-
itemTitle[index] = text;
|
|
42
|
-
setItemTitle([...itemTitle]);
|
|
43
|
-
};
|
|
44
|
-
const parent = () => {
|
|
45
|
-
return parentRef;
|
|
46
|
-
};
|
|
47
|
-
const cloneChildren = () => {
|
|
48
|
-
return React__default.Children.map(children, (child, index) => {
|
|
49
|
-
return React__default.cloneElement(child, {
|
|
50
|
-
showPopup: itemShow[index],
|
|
51
|
-
orderKey: index,
|
|
52
|
-
activeColor,
|
|
53
|
-
parent: {
|
|
54
|
-
closeOnClickOverlay,
|
|
55
|
-
lockScroll,
|
|
56
|
-
toggleItemShow,
|
|
57
|
-
updateTitle,
|
|
58
|
-
hideItemShow,
|
|
59
|
-
parent,
|
|
60
|
-
},
|
|
61
|
-
});
|
|
62
|
-
});
|
|
63
|
-
};
|
|
64
|
-
return (React__default.createElement("div", { className: `nut-menu ${className}`, ...rest, ref: parentRef },
|
|
65
|
-
React__default.createElement("div", { className: "nut-menu-relative" },
|
|
66
|
-
React__default.createElement("div", { className: `nut-menu__bar ${itemShow.includes(true) ? 'opened' : ''} ${className}` }, React__default.Children.toArray(children).map((child, index) => {
|
|
67
|
-
if (!child)
|
|
68
|
-
return null;
|
|
69
|
-
const { disabled, title, value, direction, options, className } = child.props;
|
|
70
|
-
const currentTitle = options?.filter((option) => option.value === value);
|
|
71
|
-
function finallyTitle() {
|
|
72
|
-
if (title)
|
|
73
|
-
return title;
|
|
74
|
-
if (itemTitle && itemTitle[index])
|
|
75
|
-
return itemTitle[index];
|
|
76
|
-
if (currentTitle && currentTitle[0] && currentTitle[0].text)
|
|
77
|
-
return currentTitle[0].text;
|
|
78
|
-
return '';
|
|
79
|
-
}
|
|
80
|
-
return (React__default.createElement("div", { className: `nut-menu__item ${classNames({
|
|
81
|
-
active: itemShow[index],
|
|
82
|
-
disabled,
|
|
83
|
-
})} ${className}`, style: { color: itemShow[index] ? activeColor : '' }, key: index, onClick: () => {
|
|
84
|
-
!disabled && toggleItemShow(index);
|
|
85
|
-
} },
|
|
86
|
-
React__default.createElement("div", { className: `nut-menu__title ${classNames({
|
|
87
|
-
active: itemShow[index],
|
|
88
|
-
disabled,
|
|
89
|
-
})}` },
|
|
90
|
-
React__default.createElement("div", { className: "nut-menu__title-text" }, finallyTitle()),
|
|
91
|
-
titleIcon || (React__default.createElement(React__default.Fragment, null, direction === 'up' ? (React__default.createElement(RectUp, { className: "nut-menu__title-icon", size: "14px" })) : (React__default.createElement(RectDown, { className: "nut-menu__title-icon", size: "14px" })))))));
|
|
92
|
-
})),
|
|
93
|
-
cloneChildren())));
|
|
94
|
-
};
|
|
95
|
-
Menu.defaultProps = defaultProps;
|
|
96
|
-
Menu.displayName = 'NutMenu';
|
|
97
|
-
|
|
98
|
-
export { Menu as M };
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import React__default from 'react';
|
|
2
|
-
import classNames from 'classnames';
|
|
3
|
-
import { Left } from '@nutui/icons-react-taro';
|
|
4
|
-
import { c as cn } from './bem-350c1702.js';
|
|
5
|
-
import { C as ComponentDefaults } from './typings-d8491423.js';
|
|
6
|
-
|
|
7
|
-
const defaultProps = {
|
|
8
|
-
...ComponentDefaults,
|
|
9
|
-
title: '',
|
|
10
|
-
description: '',
|
|
11
|
-
leftShow: true,
|
|
12
|
-
className: '',
|
|
13
|
-
leftText: '',
|
|
14
|
-
fixed: false,
|
|
15
|
-
safeAreaInsetTop: false,
|
|
16
|
-
border: false,
|
|
17
|
-
placeholder: false,
|
|
18
|
-
zIndex: 10,
|
|
19
|
-
style: {},
|
|
20
|
-
};
|
|
21
|
-
const NavBar = (props) => {
|
|
22
|
-
const { description, title, leftShow, className, style, leftText, fixed, safeAreaInsetTop, border, placeholder, zIndex, onClickTitle, onClickIcon, onClickBack, onClickRight, } = {
|
|
23
|
-
...defaultProps,
|
|
24
|
-
...props,
|
|
25
|
-
};
|
|
26
|
-
const b = cn('navbar');
|
|
27
|
-
const children = Array.isArray(props.children)
|
|
28
|
-
? props.children
|
|
29
|
-
: [props.children];
|
|
30
|
-
const slot = children.reduce((slot, item) => {
|
|
31
|
-
const data = slot;
|
|
32
|
-
if (item && item.props) {
|
|
33
|
-
data[item.props.slot] = item.props.children;
|
|
34
|
-
}
|
|
35
|
-
return data;
|
|
36
|
-
}, {});
|
|
37
|
-
const styles = () => {
|
|
38
|
-
return {
|
|
39
|
-
...style,
|
|
40
|
-
zIndex,
|
|
41
|
-
};
|
|
42
|
-
};
|
|
43
|
-
const renderLeft = () => {
|
|
44
|
-
return (React__default.createElement("div", { className: `${b('left')}`, onClick: (e) => onClickBack(e) },
|
|
45
|
-
leftShow && React__default.createElement(Left, { name: "left", color: "#979797" }),
|
|
46
|
-
leftText && React__default.createElement("div", { className: `${b('text')}` }, leftText),
|
|
47
|
-
slot.left));
|
|
48
|
-
};
|
|
49
|
-
const renderContent = () => {
|
|
50
|
-
return (React__default.createElement("div", { className: `${b('title')}` },
|
|
51
|
-
title && (React__default.createElement("div", { className: "title", onClick: (e) => onClickTitle(e) }, title)),
|
|
52
|
-
slot.titleIcon && (React__default.createElement("div", { onClick: (e) => onClickIcon(e) }, slot.titleIcon)),
|
|
53
|
-
slot.content));
|
|
54
|
-
};
|
|
55
|
-
const renderRight = () => {
|
|
56
|
-
return (React__default.createElement("div", { className: `${b('right')}`, onClick: (e) => onClickRight(e) },
|
|
57
|
-
description && React__default.createElement("div", { className: `${b('text')}` }, description),
|
|
58
|
-
slot.right));
|
|
59
|
-
};
|
|
60
|
-
const renderWrapper = () => {
|
|
61
|
-
return (React__default.createElement("div", { className: cls, style: styles() },
|
|
62
|
-
renderLeft(),
|
|
63
|
-
renderContent(),
|
|
64
|
-
renderRight()));
|
|
65
|
-
};
|
|
66
|
-
const classes = classNames({
|
|
67
|
-
[`nut-navbar--border`]: border,
|
|
68
|
-
[`nut-navbar--fixed`]: fixed,
|
|
69
|
-
[`nut-navbar--safe-area-inset-top`]: safeAreaInsetTop,
|
|
70
|
-
});
|
|
71
|
-
const cls = classNames(b(''), classes, className);
|
|
72
|
-
return (React__default.createElement(React__default.Fragment, null, fixed && placeholder ? (React__default.createElement("div", { className: `${b('')}--placeholder` }, renderWrapper())) : (renderWrapper())));
|
|
73
|
-
};
|
|
74
|
-
NavBar.defaultProps = defaultProps;
|
|
75
|
-
NavBar.displayName = 'NutNavBar';
|
|
76
|
-
|
|
77
|
-
export { NavBar as N };
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
import React__default from 'react';
|
|
2
|
-
import classNames from 'classnames';
|
|
3
|
-
import { Checked } from '@nutui/icons-react-taro';
|
|
4
|
-
import { c as cn } from './bem-350c1702.js';
|
|
5
|
-
import { C as ComponentDefaults } from './typings-d8491423.js';
|
|
6
|
-
|
|
7
|
-
const defaultProps = {
|
|
8
|
-
...ComponentDefaults,
|
|
9
|
-
className: '',
|
|
10
|
-
style: {},
|
|
11
|
-
isShowPercentage: true,
|
|
12
|
-
percentage: 0,
|
|
13
|
-
fillColor: '#f3f3f3',
|
|
14
|
-
strokeColor: 'linear-gradient(135deg, #fa2c19 0%, #fa6419 100%)',
|
|
15
|
-
strokeWidth: '',
|
|
16
|
-
textColor: '',
|
|
17
|
-
textWidth: '',
|
|
18
|
-
showText: true,
|
|
19
|
-
textInside: false,
|
|
20
|
-
textBackground: 'linear-gradient(135deg, #fa2c19 0%, #fa6419 100%)',
|
|
21
|
-
textType: 'text',
|
|
22
|
-
status: false,
|
|
23
|
-
icon: null,
|
|
24
|
-
children: undefined,
|
|
25
|
-
};
|
|
26
|
-
const Progress = (props) => {
|
|
27
|
-
const { className, style, isShowPercentage, percentage, fillColor, strokeColor, strokeWidth, size, textColor, textWidth, showText, textInside, textBackground, textType, status, icon, children, ...rest } = {
|
|
28
|
-
...defaultProps,
|
|
29
|
-
...props,
|
|
30
|
-
};
|
|
31
|
-
const b = cn('progress');
|
|
32
|
-
const classes = classNames(b(''));
|
|
33
|
-
const classesOuter = classNames({
|
|
34
|
-
[`${b('')}-outer`]: true,
|
|
35
|
-
[`${b('')}-${size || 'base'}`]: true,
|
|
36
|
-
});
|
|
37
|
-
const classesInner = classNames({
|
|
38
|
-
[`${b('')}-inner`]: true,
|
|
39
|
-
[`${b('')}-active`]: status,
|
|
40
|
-
});
|
|
41
|
-
const classesText = classNames({
|
|
42
|
-
[`${b('')}-text`]: true,
|
|
43
|
-
});
|
|
44
|
-
const classesInsideText = classNames({
|
|
45
|
-
[`${b('')}-text`]: true,
|
|
46
|
-
[`${b('')}-insidetext`]: true,
|
|
47
|
-
});
|
|
48
|
-
const classesTextInner = classNames({
|
|
49
|
-
[`${b('')}-text__inner`]: true,
|
|
50
|
-
});
|
|
51
|
-
const stylesOuter = {
|
|
52
|
-
height: `${strokeWidth}px`,
|
|
53
|
-
// eslint-disable-next-line no-nested-ternary
|
|
54
|
-
background: `${fillColor}`,
|
|
55
|
-
};
|
|
56
|
-
const stylesInner = {
|
|
57
|
-
width: `${percentage}%`,
|
|
58
|
-
// eslint-disable-next-line no-nested-ternary
|
|
59
|
-
background: `${strokeColor}`,
|
|
60
|
-
};
|
|
61
|
-
const stylesInsideText = {
|
|
62
|
-
width: `${textWidth}px`,
|
|
63
|
-
left: `${percentage}%`,
|
|
64
|
-
background: textBackground || strokeColor,
|
|
65
|
-
};
|
|
66
|
-
const stylesInsideIcon = {
|
|
67
|
-
width: `${textWidth}px`,
|
|
68
|
-
left: `${percentage}%`,
|
|
69
|
-
};
|
|
70
|
-
const stylesText = {
|
|
71
|
-
width: `${textWidth}px`,
|
|
72
|
-
};
|
|
73
|
-
return (React__default.createElement("div", { className: `${classes} ${className}`, style: style, ...rest },
|
|
74
|
-
React__default.createElement("div", { className: classesOuter, style: stylesOuter },
|
|
75
|
-
React__default.createElement("div", { className: classesInner, style: stylesInner }, showText && textInside && (React__default.createElement(React__default.Fragment, null, children ? (React__default.createElement("div", { className: classesInsideText, style: stylesInsideIcon }, children)) : (React__default.createElement("div", { className: classesInsideText, style: stylesInsideText },
|
|
76
|
-
React__default.createElement("span", { className: classesTextInner, style: { color: textColor } },
|
|
77
|
-
percentage,
|
|
78
|
-
isShowPercentage ? '%' : ''))))))),
|
|
79
|
-
showText && !textInside && (React__default.createElement("div", { className: classesText, style: stylesText },
|
|
80
|
-
textType === 'text' && (React__default.createElement("span", { className: classesTextInner, style: { color: textColor } },
|
|
81
|
-
percentage,
|
|
82
|
-
isShowPercentage ? '%' : '')),
|
|
83
|
-
textType === 'icon' && (React__default.createElement(React__default.Fragment, null, icon || React__default.createElement(Checked, { width: 16, height: 16, color: "#439422" })))))));
|
|
84
|
-
};
|
|
85
|
-
Progress.defaultProps = defaultProps;
|
|
86
|
-
Progress.displayName = 'NutProgress';
|
|
87
|
-
|
|
88
|
-
export { Progress as P };
|