@nutui/nutui-react-taro 1.5.2-beta.1 → 1.5.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/dist/esm/ActionSheet.js +90 -14
- package/dist/esm/Address.js +620 -21
- package/dist/esm/Animate.js +53 -7
- package/dist/esm/AnimatingNumbers.js +125 -7
- package/dist/esm/Audio.js +264 -19
- package/dist/esm/Avatar.js +130 -11
- package/dist/esm/{AvatarContext-c96afdcc.js → AvatarContext-15733596.js} +1 -3
- package/dist/esm/AvatarGroup.js +41 -11
- package/dist/esm/BackTop.js +138 -10
- package/dist/esm/Badge.js +71 -9
- package/dist/esm/Barrage.js +97 -8
- package/dist/esm/Button.js +108 -9
- package/dist/esm/Calendar.js +128 -20
- package/dist/esm/CalendarItem.js +674 -12
- package/dist/esm/Card.js +61 -11
- package/dist/esm/Cascader.js +671 -16
- package/dist/esm/Cell.js +101 -9
- package/dist/esm/CellGroup.js +2 -5
- package/dist/esm/Checkbox.js +5 -7
- package/dist/esm/CheckboxGroup.js +111 -8
- package/dist/esm/CircleProgress.js +114 -8
- package/dist/esm/Col.js +57 -7
- package/dist/esm/Collapse.js +97 -7
- package/dist/esm/CollapseItem.js +146 -8
- package/dist/esm/ConfigProvider.js +187 -8
- package/dist/esm/CountDown.js +247 -9
- package/dist/esm/DatePicker.js +309 -25
- package/dist/esm/Dialog.js +296 -17
- package/dist/esm/Divider.js +34 -7
- package/dist/esm/Drag.js +118 -7
- package/dist/esm/Elevator.js +234 -8
- package/dist/esm/Ellipsis.js +176 -10
- package/dist/esm/Empty.js +79 -8
- package/dist/esm/FixedNav.js +103 -14
- package/dist/esm/Form.js +215 -10
- package/dist/esm/FormItem.js +3 -10
- package/dist/esm/Grid.js +81 -11
- package/dist/esm/GridItem.js +123 -13
- package/dist/esm/Icon.js +2 -5
- package/dist/esm/Image.js +169 -11
- package/dist/esm/ImagePreview.js +225 -19
- package/dist/esm/Indicator.js +50 -7
- package/dist/esm/Infiniteloading.js +215 -14
- package/dist/esm/Input.js +362 -12
- package/dist/esm/InputNumber.js +275 -9
- package/dist/esm/Layout.js +13 -5
- package/dist/esm/Menu.js +153 -10
- package/dist/esm/MenuItem.js +175 -15
- package/dist/esm/NavBar.js +114 -9
- package/dist/esm/NoticeBar.js +568 -10
- package/dist/esm/Notify.js +234 -8
- package/dist/esm/NumberKeyboard.js +247 -17
- package/dist/esm/Overlay.js +2 -6
- package/dist/esm/Pagination.js +168 -9
- package/dist/esm/Picker.js +494 -22
- package/dist/esm/Popover.js +223 -12
- package/dist/esm/Popup.js +193 -13
- package/dist/esm/Price.js +84 -6
- package/dist/esm/Progress.js +122 -9
- package/dist/esm/PullToRefresh.js +276 -13
- package/dist/esm/Radio.js +4 -8
- package/dist/esm/RadioGroup.js +120 -7
- package/dist/esm/Range.js +406 -15
- package/dist/esm/Rate.js +121 -9
- package/dist/esm/Row.js +49 -7
- package/dist/esm/SearchBar.js +235 -12
- package/dist/esm/ShortPassword.js +191 -17
- package/dist/esm/SideNavBar.js +57 -19
- package/dist/esm/SideNavBarItem.js +24 -5
- package/dist/esm/Signature.js +153 -13
- package/dist/esm/Skeleton.js +98 -12
- package/dist/esm/Step.js +87 -10
- package/dist/esm/Steps.js +38 -8
- package/dist/esm/Sticky.js +190 -11
- package/dist/esm/SubSideNavBar.js +78 -6
- package/dist/esm/Swipe.js +230 -10
- package/dist/esm/Swiper.js +490 -9
- package/dist/esm/SwiperItem.js +36 -8
- package/dist/esm/Switch.js +71 -6
- package/dist/esm/TabPane.js +2 -5
- package/dist/esm/Tabbar.js +68 -6
- package/dist/esm/TabbarItem.js +78 -9
- package/dist/esm/Table.js +140 -12
- package/dist/esm/Tabs.js +5 -8
- package/dist/esm/Tag.js +110 -10
- package/dist/esm/TextArea.js +148 -9
- package/dist/esm/TimeDetail.js +67 -9
- package/dist/esm/TimePannel.js +29 -9
- package/dist/esm/TimeSelect.js +171 -19
- package/dist/esm/Toast.js +268 -7
- package/dist/esm/TrendArrow.js +99 -7
- package/dist/esm/Uploader.js +566 -17
- package/dist/esm/{UserContext-0aac9a82.js → UserContext-101ad4a4.js} +1 -3
- package/dist/esm/{UserContext-e402e1a6.js → UserContext-2629d479.js} +1 -3
- package/dist/esm/{UserContext-e8176108.js → UserContext-b33bcf21.js} +1 -3
- package/dist/esm/Video.js +90 -7
- package/dist/esm/VirtualList.js +313 -9
- package/dist/esm/WaterMark.js +111 -11
- package/dist/esm/{bem-350c1702.js → bem-3b438e61.js} +6 -3
- package/dist/esm/cellgroup-fcc72767.js +34 -0
- package/dist/esm/checkbox-44e13cd0.js +137 -0
- package/dist/esm/date-c7aad4c0.js +97 -0
- package/dist/esm/formitem-8a73a5fb.js +157 -0
- package/dist/esm/get-scroll-parent-5f85dee8.js +24 -0
- package/dist/esm/{grid.taro.context-c2bbfb4f.js → grid.context-2ee27d95.js} +2 -4
- package/dist/esm/icon-4ef1581c.js +70 -0
- package/dist/esm/index-030b7245.js +11 -0
- package/dist/esm/nutui-react.es.js +94 -119
- package/dist/esm/offsetContext-3ab00d40.js +16 -0
- package/dist/esm/overlay-de6c79d5.js +83 -0
- package/dist/esm/radio-9f141e6b.js +118 -0
- package/dist/esm/render-bbebb760.js +79 -0
- package/dist/esm/tabpane-01075e6c.js +29 -0
- package/dist/esm/tabs-e1b4e4b1.js +181 -0
- package/dist/esm/typings-f27b58f4.js +8 -0
- package/dist/esm/useClientRect-56bb675b.js +39 -0
- package/dist/esm/useTouch-cf73a407.js +99 -0
- 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 +15025 -13192
- package/dist/nutui.react.umd.js +15004 -13169
- package/dist/style.mjs +1 -1
- package/dist/types/index.d.ts +183 -176
- package/package.json +1 -1
- package/dist/esm/actionsheet.taro-e6a51446.js +0 -53
- package/dist/esm/address.taro-3a9b6396.js +0 -461
- package/dist/esm/animate.taro-fb7986d6.js +0 -40
- package/dist/esm/animatingnumbers.taro-03e5d61d.js +0 -104
- package/dist/esm/audio.taro-87ec8bf2.js +0 -161
- package/dist/esm/avatar.taro-3676f38f.js +0 -103
- package/dist/esm/avatargroup-f3574510.js +0 -34
- package/dist/esm/backtop.taro-66394a36.js +0 -48
- package/dist/esm/badge.taro-a4e59c11.js +0 -52
- package/dist/esm/barrage.taro-0495a1b2.js +0 -94
- package/dist/esm/button.taro-9244d065.js +0 -100
- package/dist/esm/calendar.taro-670842ea.js +0 -65
- package/dist/esm/calendaritem.taro-2a603571.js +0 -787
- package/dist/esm/can-use-dom-3eeb5af4.js +0 -6
- package/dist/esm/card.taro-e4c76dad.js +0 -33
- package/dist/esm/cascader.taro-eb1fb011.js +0 -438
- package/dist/esm/cell.taro-a10a74d3.js +0 -64
- package/dist/esm/cellgroup.taro-abe501bc.js +0 -25
- package/dist/esm/checkbox.taro-6120e3e3.js +0 -171
- package/dist/esm/circleprogress.taro-79854448.js +0 -109
- package/dist/esm/col.taro-53eed3cc.js +0 -41
- package/dist/esm/collapse.taro-1a9e4ba2.js +0 -83
- package/dist/esm/collapseitem-4d0bc55d.js +0 -83
- package/dist/esm/configprovider-67d19d3a.js +0 -19
- package/dist/esm/configprovider.taro-8d71eb49.js +0 -42
- package/dist/esm/countdown.taro-5b17c607.js +0 -226
- package/dist/esm/datepicker.taro-6e9b4b8f.js +0 -275
- package/dist/esm/dialog.taro-a3267d29.js +0 -118
- package/dist/esm/divider.taro-26d1d8b4.js +0 -35
- package/dist/esm/drag.taro-79bb8744.js +0 -110
- package/dist/esm/elevator.taro-6019669e.js +0 -178
- package/dist/esm/ellipsis.taro-f15f26da.js +0 -241
- package/dist/esm/empty.taro-04ae4389.js +0 -62
- package/dist/esm/fixednav.taro-1f05acaf.js +0 -53
- package/dist/esm/form.taro-0c8e7a39.js +0 -179
- package/dist/esm/formitem.taro-190a3326.js +0 -89
- package/dist/esm/get-scroll-parent-b4a07e65.js +0 -25
- package/dist/esm/grid.taro-3503b82c.js +0 -61
- package/dist/esm/griditem.taro-cdb3f119.js +0 -98
- package/dist/esm/icon-296a1bec.js +0 -63
- package/dist/esm/icon.taro-296a1bec.js +0 -63
- package/dist/esm/image.taro-142cf512.js +0 -64
- package/dist/esm/imagepreview.taro-c50bb0a3.js +0 -167
- package/dist/esm/index-5bcb0ff8.js +0 -7
- package/dist/esm/indicator.taro-cba8b010.js +0 -37
- package/dist/esm/infiniteloading.taro-183bccbf.js +0 -144
- package/dist/esm/input.taro-97af6c96.js +0 -240
- package/dist/esm/inputnumber.taro-91f65d17.js +0 -130
- package/dist/esm/layout.taro-9046d093.js +0 -11
- package/dist/esm/menu.taro-7e4038a1.js +0 -99
- package/dist/esm/menuitem.taro-96cc4f15.js +0 -130
- package/dist/esm/navbar.taro-777c4705.js +0 -79
- package/dist/esm/noticebar.taro-4a23cdee.js +0 -448
- package/dist/esm/notify.taro-e17c6f82.js +0 -75
- package/dist/esm/numberkeyboard.taro-1bc24744.js +0 -159
- package/dist/esm/offsetContext-c2a746fa.js +0 -5
- package/dist/esm/overlay.taro-21e87fb1.js +0 -69
- package/dist/esm/pagination.taro-715a173b.js +0 -124
- package/dist/esm/picker.taro-9ad1b7c5.js +0 -473
- package/dist/esm/popover.taro-ad5e76ea.js +0 -156
- package/dist/esm/popup.taro-01676bff.js +0 -137
- package/dist/esm/price.taro-776ed16e.js +0 -83
- package/dist/esm/progress.taro-f0ce38e9.js +0 -90
- package/dist/esm/pulltorefresh.taro-a294f656.js +0 -181
- package/dist/esm/radio.taro-a6eff96c.js +0 -168
- package/dist/esm/range.taro-d8fc7656.js +0 -332
- package/dist/esm/rate.taro-6cdf03bd.js +0 -75
- package/dist/esm/row.taro-f64d4a13.js +0 -46
- package/dist/esm/searchbar.taro-0c25927b.js +0 -152
- package/dist/esm/shortpassword.taro-9ee034f7.js +0 -111
- package/dist/esm/sidenavbar.taro-c307b35e.js +0 -35
- package/dist/esm/sidenavbaritem.taro-5a7965d0.js +0 -12
- package/dist/esm/signature.taro-ec4e713b.js +0 -143
- package/dist/esm/skeleton.taro-76faf63f.js +0 -62
- package/dist/esm/step.taro-b7903e8c.js +0 -59
- package/dist/esm/steps.taro-c82d2252.js +0 -30
- package/dist/esm/sticky.taro-218bda37.js +0 -138
- package/dist/esm/subsidenavbar.taro-69cb9752.js +0 -63
- package/dist/esm/supports-passive-c85ef996.js +0 -18
- package/dist/esm/swipe.taro-ea35f07f.js +0 -177
- package/dist/esm/swiper.taro-7a94e211.js +0 -451
- package/dist/esm/swiperitem-c9e3d0d5.js +0 -29
- package/dist/esm/switch.taro-34ca8228.js +0 -50
- package/dist/esm/tabbar.taro-9acfc2fa.js +0 -59
- package/dist/esm/tabbaritem.taro-bf517487.js +0 -58
- package/dist/esm/table.taro-91fc0c01.js +0 -93
- package/dist/esm/tabpane.taro-4ca340ef.js +0 -23
- package/dist/esm/tabs.taro-6a7524a4.js +0 -140
- package/dist/esm/tag.taro-23ba0834.js +0 -92
- package/dist/esm/textarea.taro-442e7350.js +0 -94
- package/dist/esm/timedetail.taro-5b2f2269.js +0 -44
- package/dist/esm/timepannel.taro-d6e40180.js +0 -22
- package/dist/esm/timeselect.taro-a07036f4.js +0 -133
- package/dist/esm/toast.taro-d6c14811.js +0 -109
- package/dist/esm/trendarrow.taro-b8c5ccd9.js +0 -73
- package/dist/esm/typings-b9828dba.js +0 -9
- package/dist/esm/uploader.taro-587e6bf3.js +0 -492
- package/dist/esm/useClientRect-1f8ed1fe.js +0 -18
- package/dist/esm/useTouch-db24bb5c.js +0 -69
- package/dist/esm/video-f1be8a91.js +0 -67
- package/dist/esm/virtuallist.taro-f0b0270d.js +0 -214
- package/dist/esm/watermark.taro-9ce2ae37.js +0 -114
- package/dist/esm/zh-CN-c779e6c1.js +0 -131
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
4
|
+
var _excluded = ["iconName", "iconSize", "label", "className", "iconActiveName", "checked", "disabled", "onChange", "indeterminate", "iconClassPrefix", "iconFontClassName", "iconIndeterminateName"],
|
|
5
|
+
_excluded2 = ["textPosition"];
|
|
6
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
7
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
8
|
+
import React__default, { createContext, useContext, useState, useEffect } from 'react';
|
|
9
|
+
import Icon from './Icon.js';
|
|
10
|
+
import CheckboxGroup from './CheckboxGroup.js';
|
|
11
|
+
import { c as cn } from './bem-3b438e61.js';
|
|
12
|
+
import { C as ComponentDefaults } from './typings-f27b58f4.js';
|
|
13
|
+
var CheckboxGroupContext = createContext(null);
|
|
14
|
+
var defaultProps = _objectSpread(_objectSpread({}, ComponentDefaults), {}, {
|
|
15
|
+
checked: false,
|
|
16
|
+
disabled: false,
|
|
17
|
+
textPosition: 'right',
|
|
18
|
+
iconSize: 18,
|
|
19
|
+
iconName: 'check-normal',
|
|
20
|
+
iconActiveName: 'checked',
|
|
21
|
+
iconClassPrefix: 'nut-icon',
|
|
22
|
+
iconFontClassName: 'nutui-iconfont',
|
|
23
|
+
iconIndeterminateName: 'check-disabled',
|
|
24
|
+
onChange: function onChange(state, label) {}
|
|
25
|
+
});
|
|
26
|
+
var Checkbox = function Checkbox(props) {
|
|
27
|
+
var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),
|
|
28
|
+
children = _defaultProps$props.children;
|
|
29
|
+
var b = cn('checkbox');
|
|
30
|
+
var iconName = props.iconName,
|
|
31
|
+
iconSize = props.iconSize,
|
|
32
|
+
label = props.label,
|
|
33
|
+
className = props.className,
|
|
34
|
+
iconActiveName = props.iconActiveName,
|
|
35
|
+
checked = props.checked,
|
|
36
|
+
disabled = props.disabled,
|
|
37
|
+
onChange = props.onChange,
|
|
38
|
+
indeterminate = props.indeterminate,
|
|
39
|
+
iconClassPrefix = props.iconClassPrefix,
|
|
40
|
+
iconFontClassName = props.iconFontClassName,
|
|
41
|
+
iconIndeterminateName = props.iconIndeterminateName,
|
|
42
|
+
others = _objectWithoutProperties(props, _excluded);
|
|
43
|
+
// eslint-disable-next-line prefer-const
|
|
44
|
+
var textPosition = others.textPosition,
|
|
45
|
+
rest = _objectWithoutProperties(others, _excluded2);
|
|
46
|
+
var ctx = useContext(CheckboxGroupContext);
|
|
47
|
+
var _useState = useState(checked),
|
|
48
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
49
|
+
innerChecked = _useState2[0],
|
|
50
|
+
setInnerChecked = _useState2[1];
|
|
51
|
+
// eslint-disable-next-line prefer-const
|
|
52
|
+
var _useState3 = useState(disabled),
|
|
53
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
54
|
+
innerDisabled = _useState4[0],
|
|
55
|
+
setDisabled = _useState4[1];
|
|
56
|
+
var _useState5 = useState(indeterminate),
|
|
57
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
58
|
+
_indeterminate = _useState6[0],
|
|
59
|
+
setIndeterminate = _useState6[1];
|
|
60
|
+
useEffect(function () {
|
|
61
|
+
!ctx && setInnerChecked(checked);
|
|
62
|
+
setDisabled(disabled);
|
|
63
|
+
setIndeterminate(indeterminate);
|
|
64
|
+
}, [disabled, checked, indeterminate]);
|
|
65
|
+
if (ctx) {
|
|
66
|
+
if (ctx.textPosition !== undefined) {
|
|
67
|
+
textPosition = ctx.textPosition;
|
|
68
|
+
}
|
|
69
|
+
innerDisabled = ctx.disabled;
|
|
70
|
+
innerChecked = ctx.checkedValue.includes(label);
|
|
71
|
+
setInnerChecked = function setInnerChecked(checked) {
|
|
72
|
+
if (ctx.disabled) return;
|
|
73
|
+
if (checked) ctx.check(label);
|
|
74
|
+
if (!checked) ctx.uncheck(label);
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
var getIconName = function getIconName() {
|
|
78
|
+
if (!innerChecked) {
|
|
79
|
+
return iconName;
|
|
80
|
+
}
|
|
81
|
+
if (_indeterminate) {
|
|
82
|
+
return iconIndeterminateName;
|
|
83
|
+
}
|
|
84
|
+
return iconActiveName;
|
|
85
|
+
};
|
|
86
|
+
var renderIcon = function renderIcon() {
|
|
87
|
+
return React__default.createElement(Icon, {
|
|
88
|
+
classPrefix: iconClassPrefix,
|
|
89
|
+
fontClassName: iconFontClassName,
|
|
90
|
+
name: getIconName(),
|
|
91
|
+
size: iconSize,
|
|
92
|
+
className: color()
|
|
93
|
+
});
|
|
94
|
+
};
|
|
95
|
+
var color = function color() {
|
|
96
|
+
if (innerDisabled) {
|
|
97
|
+
return 'nut-checkbox__icon--disable';
|
|
98
|
+
}
|
|
99
|
+
if (innerChecked) {
|
|
100
|
+
if (_indeterminate) {
|
|
101
|
+
return 'nut-checkbox__icon--indeterminate';
|
|
102
|
+
}
|
|
103
|
+
return 'nut-checkbox__icon';
|
|
104
|
+
}
|
|
105
|
+
return 'nut-checkbox__icon--unchecked';
|
|
106
|
+
};
|
|
107
|
+
var renderLabel = function renderLabel() {
|
|
108
|
+
return React__default.createElement("span", {
|
|
109
|
+
className: "".concat(b('label', {
|
|
110
|
+
disabled: innerDisabled
|
|
111
|
+
}), " ")
|
|
112
|
+
}, children || label);
|
|
113
|
+
};
|
|
114
|
+
var handleClick = function handleClick() {
|
|
115
|
+
// 禁用的时候直接返回
|
|
116
|
+
if (disabled) return;
|
|
117
|
+
// 先转换状态
|
|
118
|
+
var latestChecked = !innerChecked;
|
|
119
|
+
// 判断是不是有 context 和 max,有的话需要判断是不是超过最大限制
|
|
120
|
+
if (ctx && ctx.max !== undefined) {
|
|
121
|
+
if (latestChecked && ctx.checkedValue.length >= ctx.max) return;
|
|
122
|
+
}
|
|
123
|
+
onChange && onChange(latestChecked, label || children);
|
|
124
|
+
setInnerChecked(latestChecked);
|
|
125
|
+
};
|
|
126
|
+
return React__default.createElement("div", _objectSpread(_objectSpread({
|
|
127
|
+
className: "".concat(b({
|
|
128
|
+
reverse: textPosition === 'left'
|
|
129
|
+
}), " ").concat(className || '')
|
|
130
|
+
}, rest), {}, {
|
|
131
|
+
onClick: handleClick
|
|
132
|
+
}), renderIcon(), renderLabel());
|
|
133
|
+
};
|
|
134
|
+
Checkbox.defaultProps = defaultProps;
|
|
135
|
+
Checkbox.displayName = 'NutCheckBox';
|
|
136
|
+
Checkbox.Group = CheckboxGroup;
|
|
137
|
+
export { Checkbox as C, CheckboxGroupContext as a };
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
var Utils = {
|
|
2
|
+
/**
|
|
3
|
+
* 是否为闫年
|
|
4
|
+
* @return {Boolse} true|false
|
|
5
|
+
*/
|
|
6
|
+
isLeapYear: function isLeapYear(y) {
|
|
7
|
+
return y % 4 == 0 && y % 100 != 0 || y % 400 == 0;
|
|
8
|
+
},
|
|
9
|
+
/**
|
|
10
|
+
* 返回星期数
|
|
11
|
+
* @return {String}
|
|
12
|
+
*/
|
|
13
|
+
getWhatDay: function getWhatDay(year, month, day) {
|
|
14
|
+
var date = new Date("".concat(year, "/").concat(month, "/").concat(day));
|
|
15
|
+
var index = date.getDay();
|
|
16
|
+
var dayNames = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'];
|
|
17
|
+
return dayNames[index];
|
|
18
|
+
},
|
|
19
|
+
/**
|
|
20
|
+
* 返回星期数
|
|
21
|
+
* @return {Number}
|
|
22
|
+
*/
|
|
23
|
+
getMonthPreDay: function getMonthPreDay(year, month) {
|
|
24
|
+
var date = new Date("".concat(year, "/").concat(month, "/01"));
|
|
25
|
+
var day = date.getDay();
|
|
26
|
+
if (day == 0) {
|
|
27
|
+
day = 7;
|
|
28
|
+
}
|
|
29
|
+
return day;
|
|
30
|
+
},
|
|
31
|
+
/**
|
|
32
|
+
* 返回月份天数
|
|
33
|
+
* @return {Number}
|
|
34
|
+
*/
|
|
35
|
+
getMonthDays: function getMonthDays(year, month) {
|
|
36
|
+
if (/^0/.test(month)) {
|
|
37
|
+
month = month.split('')[1];
|
|
38
|
+
}
|
|
39
|
+
return [0, 31, this.isLeapYear(Number(year)) ? 29 : 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31][month];
|
|
40
|
+
},
|
|
41
|
+
/**
|
|
42
|
+
* 补齐数字位数
|
|
43
|
+
* @return {string}
|
|
44
|
+
*/
|
|
45
|
+
getNumTwoBit: function getNumTwoBit(n) {
|
|
46
|
+
n = Number(n);
|
|
47
|
+
return (n > 9 ? '' : '0') + n;
|
|
48
|
+
},
|
|
49
|
+
/**
|
|
50
|
+
* 日期对象转成字符串
|
|
51
|
+
* @return {string}
|
|
52
|
+
*/
|
|
53
|
+
date2Str: function date2Str(date, split) {
|
|
54
|
+
split = split || '-';
|
|
55
|
+
var y = date.getFullYear();
|
|
56
|
+
var m = this.getNumTwoBit(date.getMonth() + 1);
|
|
57
|
+
var d = this.getNumTwoBit(date.getDate());
|
|
58
|
+
return [y, m, d].join(split);
|
|
59
|
+
},
|
|
60
|
+
/**
|
|
61
|
+
* 返回日期格式字符串
|
|
62
|
+
* @param {Number} 0返回今天的日期、1返回明天的日期,2返回后天得日期,依次类推
|
|
63
|
+
* @return {string} '2014-12-31'
|
|
64
|
+
*/
|
|
65
|
+
getDay: function getDay(i) {
|
|
66
|
+
i = i || 0;
|
|
67
|
+
var date = new Date();
|
|
68
|
+
var diff = i * (1000 * 60 * 60 * 24);
|
|
69
|
+
date = new Date(date.getTime() + diff);
|
|
70
|
+
return this.date2Str(date);
|
|
71
|
+
},
|
|
72
|
+
/**
|
|
73
|
+
* 时间比较
|
|
74
|
+
* @return {Boolean}
|
|
75
|
+
*/
|
|
76
|
+
compareDate: function compareDate(date1, date2) {
|
|
77
|
+
var startTime = new Date(date1.replace('-', '/').replace('-', '/'));
|
|
78
|
+
var endTime = new Date(date2.replace('-', '/').replace('-', '/'));
|
|
79
|
+
if (startTime >= endTime) {
|
|
80
|
+
return false;
|
|
81
|
+
}
|
|
82
|
+
return true;
|
|
83
|
+
},
|
|
84
|
+
/**
|
|
85
|
+
* 时间是否相等
|
|
86
|
+
* @return {Boolean}
|
|
87
|
+
*/
|
|
88
|
+
isEqual: function isEqual(date1, date2) {
|
|
89
|
+
var startTime = new Date(date1).getTime();
|
|
90
|
+
var endTime = new Date(date2).getTime();
|
|
91
|
+
if (startTime == endTime) {
|
|
92
|
+
return true;
|
|
93
|
+
}
|
|
94
|
+
return false;
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
export { Utils as U };
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
2
|
+
import _createClass from "@babel/runtime/helpers/createClass";
|
|
3
|
+
import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
|
|
4
|
+
import _inherits from "@babel/runtime/helpers/inherits";
|
|
5
|
+
import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
|
|
6
|
+
import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
|
|
7
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
8
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
9
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
10
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
11
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
12
|
+
import React__default, { createContext } from 'react';
|
|
13
|
+
import Cell from './Cell.js';
|
|
14
|
+
import { C as ComponentDefaults } from './typings-f27b58f4.js';
|
|
15
|
+
var FormItemContext = createContext({});
|
|
16
|
+
var defaultProps = _objectSpread(_objectSpread({}, ComponentDefaults), {}, {
|
|
17
|
+
name: '',
|
|
18
|
+
label: '',
|
|
19
|
+
className: '',
|
|
20
|
+
rules: [{
|
|
21
|
+
required: false,
|
|
22
|
+
message: ''
|
|
23
|
+
}],
|
|
24
|
+
disabled: false,
|
|
25
|
+
labelWidth: 90,
|
|
26
|
+
errorMessageAlign: 'left',
|
|
27
|
+
showErrorLine: true,
|
|
28
|
+
showErrorMessage: true,
|
|
29
|
+
initialValue: ''
|
|
30
|
+
});
|
|
31
|
+
var FormItem = /*#__PURE__*/function (_React__default$Compo) {
|
|
32
|
+
_inherits(FormItem, _React__default$Compo);
|
|
33
|
+
var _super = _createSuper(FormItem);
|
|
34
|
+
function FormItem() {
|
|
35
|
+
var _this;
|
|
36
|
+
_classCallCheck(this, FormItem);
|
|
37
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
38
|
+
args[_key] = arguments[_key];
|
|
39
|
+
}
|
|
40
|
+
_this = _super.call.apply(_super, [this].concat(args));
|
|
41
|
+
_defineProperty(_assertThisInitialized(_this), "cancelRegister", void 0);
|
|
42
|
+
_defineProperty(_assertThisInitialized(_this), "isInitialValue", false);
|
|
43
|
+
// children添加value属性和onChange事件
|
|
44
|
+
_defineProperty(_assertThisInitialized(_this), "getControlled", function (children) {
|
|
45
|
+
var _children$props, _children$props2;
|
|
46
|
+
var _this$context = _this.context,
|
|
47
|
+
getFieldValue = _this$context.getFieldValue,
|
|
48
|
+
setFieldsValue = _this$context.setFieldsValue;
|
|
49
|
+
var name = _this.props.name;
|
|
50
|
+
var type = children.type.NAME;
|
|
51
|
+
var defaultvalue = _this.props.initialValue || ((_children$props = children.props) === null || _children$props === void 0 ? void 0 : _children$props.defaultValue) || ((_children$props2 = children.props) === null || _children$props2 === void 0 ? void 0 : _children$props2.value);
|
|
52
|
+
if (defaultvalue && !_this.isInitialValue) {
|
|
53
|
+
setFieldsValue(_defineProperty({}, name, defaultvalue));
|
|
54
|
+
_this.isInitialValue = true;
|
|
55
|
+
}
|
|
56
|
+
return {
|
|
57
|
+
value: getFieldValue(name),
|
|
58
|
+
defaultValue: getFieldValue(name),
|
|
59
|
+
onChange: function onChange(event) {
|
|
60
|
+
var originOnChange = children.props.onChange;
|
|
61
|
+
if (originOnChange) {
|
|
62
|
+
originOnChange(event);
|
|
63
|
+
}
|
|
64
|
+
var newValue = event;
|
|
65
|
+
switch (type) {
|
|
66
|
+
case 'checkbox':
|
|
67
|
+
newValue = event.target.value;
|
|
68
|
+
break;
|
|
69
|
+
}
|
|
70
|
+
setFieldsValue(_defineProperty({}, name, newValue));
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
});
|
|
74
|
+
_defineProperty(_assertThisInitialized(_this), "onStoreChange", function () {
|
|
75
|
+
_this.forceUpdate();
|
|
76
|
+
});
|
|
77
|
+
_defineProperty(_assertThisInitialized(_this), "renderLayout", function (childNode) {
|
|
78
|
+
var _this$context$errList, _this$context$errList2;
|
|
79
|
+
var _defaultProps$_this$p = _objectSpread(_objectSpread({}, defaultProps), _this.props),
|
|
80
|
+
label = _defaultProps$_this$p.label,
|
|
81
|
+
name = _defaultProps$_this$p.name,
|
|
82
|
+
_defaultProps$_this$p2 = _defaultProps$_this$p.rules,
|
|
83
|
+
rules = _defaultProps$_this$p2 === void 0 ? [{
|
|
84
|
+
required: false,
|
|
85
|
+
message: ''
|
|
86
|
+
}] : _defaultProps$_this$p2,
|
|
87
|
+
className = _defaultProps$_this$p.className,
|
|
88
|
+
labelWidth = _defaultProps$_this$p.labelWidth,
|
|
89
|
+
errorMessageAlign = _defaultProps$_this$p.errorMessageAlign,
|
|
90
|
+
showErrorLine = _defaultProps$_this$p.showErrorLine,
|
|
91
|
+
showErrorMessage = _defaultProps$_this$p.showErrorMessage;
|
|
92
|
+
var item = ((_this$context$errList = _this.context.errList) === null || _this$context$errList === void 0 ? void 0 : _this$context$errList.length) > 0 && ((_this$context$errList2 = _this.context.errList) === null || _this$context$errList2 === void 0 ? void 0 : _this$context$errList2.filter(function (item) {
|
|
93
|
+
return item.field === name;
|
|
94
|
+
}));
|
|
95
|
+
var starPositon = _this.context.starPositon;
|
|
96
|
+
var renderStar = rules.length > 0 && rules[0].required && React__default.createElement("i", {
|
|
97
|
+
className: "required"
|
|
98
|
+
});
|
|
99
|
+
var renderLabel = starPositon === 'Right' ? React__default.createElement(React__default.Fragment, null, label, renderStar) : React__default.createElement(React__default.Fragment, null, renderStar, label);
|
|
100
|
+
return React__default.createElement(Cell, {
|
|
101
|
+
className: "nut-form-item ".concat(className)
|
|
102
|
+
}, label ? React__default.createElement("div", {
|
|
103
|
+
className: "nut-cell__title nut-form-item__label",
|
|
104
|
+
style: {
|
|
105
|
+
width: _this.pxCheck(labelWidth)
|
|
106
|
+
}
|
|
107
|
+
}, renderLabel) : null, React__default.createElement("div", {
|
|
108
|
+
className: "nut-cell__value nut-form-item__body"
|
|
109
|
+
}, React__default.createElement("div", {
|
|
110
|
+
className: "nut-form-item__body__slots"
|
|
111
|
+
}, childNode), item.length > 0 && React__default.createElement("div", {
|
|
112
|
+
className: "nut-form-item__body__tips",
|
|
113
|
+
style: {
|
|
114
|
+
textAlign: errorMessageAlign
|
|
115
|
+
}
|
|
116
|
+
}, item[0].message)));
|
|
117
|
+
});
|
|
118
|
+
_defineProperty(_assertThisInitialized(_this), "pxCheck", function (value) {
|
|
119
|
+
return Number.isNaN(Number(value)) ? String(value) : "".concat(value, "px");
|
|
120
|
+
});
|
|
121
|
+
return _this;
|
|
122
|
+
}
|
|
123
|
+
_createClass(FormItem, [{
|
|
124
|
+
key: "componentDidMount",
|
|
125
|
+
value: function componentDidMount() {
|
|
126
|
+
// 注册组件实例到FormStore
|
|
127
|
+
this.cancelRegister = this.context.registerField(this);
|
|
128
|
+
}
|
|
129
|
+
}, {
|
|
130
|
+
key: "componentWillUnmount",
|
|
131
|
+
value: function componentWillUnmount() {
|
|
132
|
+
if (this.cancelRegister) {
|
|
133
|
+
this.cancelRegister();
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}, {
|
|
137
|
+
key: "render",
|
|
138
|
+
value: function render() {
|
|
139
|
+
var _this$props = this.props,
|
|
140
|
+
children = _this$props.children,
|
|
141
|
+
initialValue = _this$props.initialValue;
|
|
142
|
+
var c = Array.isArray(children) ? children[0] : children;
|
|
143
|
+
var restCNode = c;
|
|
144
|
+
if (initialValue) {
|
|
145
|
+
restCNode = React__default.cloneElement(c, {
|
|
146
|
+
defaultValue: initialValue
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
var returnChildNode = React__default.cloneElement(restCNode, this.getControlled(restCNode));
|
|
150
|
+
return this.renderLayout(returnChildNode);
|
|
151
|
+
}
|
|
152
|
+
}]);
|
|
153
|
+
return FormItem;
|
|
154
|
+
}(React__default.Component);
|
|
155
|
+
_defineProperty(FormItem, "defaultProps", defaultProps);
|
|
156
|
+
_defineProperty(FormItem, "contextType", FormItemContext);
|
|
157
|
+
export { FormItemContext as F, FormItem as a };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
var canUseDom = !!(typeof window !== 'undefined' && typeof document !== 'undefined' && window.document && window.document.createElement);
|
|
2
|
+
var defaultRoot = canUseDom ? window : undefined;
|
|
3
|
+
var overflowStylePatterns = ['scroll', 'auto', 'overlay'];
|
|
4
|
+
function isElement(node) {
|
|
5
|
+
var ELEMENT_NODE_TYPE = 1;
|
|
6
|
+
return node.nodeType === ELEMENT_NODE_TYPE;
|
|
7
|
+
}
|
|
8
|
+
function getScrollParent(el) {
|
|
9
|
+
var root = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : defaultRoot;
|
|
10
|
+
var node = el;
|
|
11
|
+
while (node && node !== root && isElement(node)) {
|
|
12
|
+
if (node === document.body) {
|
|
13
|
+
return root;
|
|
14
|
+
}
|
|
15
|
+
var _window$getComputedSt = window.getComputedStyle(node),
|
|
16
|
+
overflowY = _window$getComputedSt.overflowY;
|
|
17
|
+
if (overflowStylePatterns.includes(overflowY) && node.scrollHeight > node.clientHeight) {
|
|
18
|
+
return node;
|
|
19
|
+
}
|
|
20
|
+
node = node.parentNode;
|
|
21
|
+
}
|
|
22
|
+
return root;
|
|
23
|
+
}
|
|
24
|
+
export { canUseDom as c, getScrollParent as g };
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
|
+
var _excluded = ["name", "size", "classPrefix", "color", "tag", "children", "className", "fontClassName", "style", "onClick"];
|
|
4
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
5
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
6
|
+
import React__default from 'react';
|
|
7
|
+
import { c as cn } from './bem-3b438e61.js';
|
|
8
|
+
var defaultProps = {
|
|
9
|
+
name: '',
|
|
10
|
+
size: '',
|
|
11
|
+
classPrefix: 'nut-icon',
|
|
12
|
+
fontClassName: 'nutui-iconfont',
|
|
13
|
+
color: '',
|
|
14
|
+
tag: 'i',
|
|
15
|
+
onClick: function onClick(e) {},
|
|
16
|
+
className: ''
|
|
17
|
+
};
|
|
18
|
+
function pxCheck(value) {
|
|
19
|
+
if (value === '') {
|
|
20
|
+
return value;
|
|
21
|
+
}
|
|
22
|
+
if (Number.isNaN(Number(value))) {
|
|
23
|
+
return String(value);
|
|
24
|
+
}
|
|
25
|
+
return "".concat(value, "px");
|
|
26
|
+
}
|
|
27
|
+
function Icon(props) {
|
|
28
|
+
var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),
|
|
29
|
+
name = _defaultProps$props.name,
|
|
30
|
+
size = _defaultProps$props.size,
|
|
31
|
+
classPrefix = _defaultProps$props.classPrefix,
|
|
32
|
+
color = _defaultProps$props.color,
|
|
33
|
+
tag = _defaultProps$props.tag,
|
|
34
|
+
children = _defaultProps$props.children,
|
|
35
|
+
className = _defaultProps$props.className,
|
|
36
|
+
fontClassName = _defaultProps$props.fontClassName,
|
|
37
|
+
style = _defaultProps$props.style,
|
|
38
|
+
onClick = _defaultProps$props.onClick,
|
|
39
|
+
rest = _objectWithoutProperties(_defaultProps$props, _excluded);
|
|
40
|
+
var isImage = name ? name.indexOf('/') !== -1 : false;
|
|
41
|
+
var type = isImage ? 'img' : tag;
|
|
42
|
+
var b = cn('icon');
|
|
43
|
+
var handleClick = function handleClick(e) {
|
|
44
|
+
if (onClick) {
|
|
45
|
+
onClick(e);
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
var hasSrc = function hasSrc() {
|
|
49
|
+
if (isImage) return {
|
|
50
|
+
src: name
|
|
51
|
+
};
|
|
52
|
+
return {};
|
|
53
|
+
};
|
|
54
|
+
var styles = {};
|
|
55
|
+
var checkedSize = pxCheck(size);
|
|
56
|
+
if (checkedSize) {
|
|
57
|
+
styles.width = styles.height = styles.fontSize = checkedSize;
|
|
58
|
+
}
|
|
59
|
+
return React__default.createElement(type, _objectSpread(_objectSpread({
|
|
60
|
+
className: isImage ? "".concat(b('img'), " ").concat(className || '', " ") : "".concat(fontClassName, " ").concat(b(null), " ").concat(classPrefix, "-").concat(name, " ").concat(className || ''),
|
|
61
|
+
style: _objectSpread(_objectSpread({
|
|
62
|
+
color: color
|
|
63
|
+
}, styles), style)
|
|
64
|
+
}, rest), {}, {
|
|
65
|
+
onClick: handleClick
|
|
66
|
+
}, hasSrc()), children);
|
|
67
|
+
}
|
|
68
|
+
Icon.defaultProps = defaultProps;
|
|
69
|
+
Icon.displayName = 'NutIcon';
|
|
70
|
+
export { Icon as I };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import _typeof from "@babel/runtime/helpers/typeof";
|
|
2
|
+
var isObject = function isObject(val) {
|
|
3
|
+
return val !== null && _typeof(val) === 'object';
|
|
4
|
+
};
|
|
5
|
+
var isFunction = function isFunction(val) {
|
|
6
|
+
return typeof val === 'function';
|
|
7
|
+
};
|
|
8
|
+
var isPromise = function isPromise(val) {
|
|
9
|
+
return isObject(val) && isFunction(val.then) && isFunction(val["catch"]);
|
|
10
|
+
};
|
|
11
|
+
export { isObject as a, isPromise as i };
|