@nutui/nutui-react 1.4.8 → 1.4.9-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +27 -0
- package/dist/esm/Animate.js +1 -1
- package/dist/esm/AnimatingNumbers.js +2 -5
- package/dist/esm/Badge.js +8 -2
- package/dist/esm/CalendarItem.js +2 -2
- package/dist/esm/Card.js +2 -1
- package/dist/esm/Cascader.js +2 -1
- package/dist/esm/Checkbox.js +2 -2
- package/dist/esm/CheckboxGroup.js +34 -69
- package/dist/esm/CircleProgress.js +1 -4
- package/dist/esm/Collapse.js +2 -1
- package/dist/esm/DatePicker.js +1 -27
- package/dist/esm/Form/style/index.js +1 -1
- package/dist/esm/FormItem/style/index.js +1 -1
- package/dist/esm/Grid.js +2 -1
- package/dist/esm/GridItem.js +3 -1
- package/dist/esm/Indicator.js +1 -1
- package/dist/esm/MenuItem/style/index.js +1 -1
- package/dist/esm/MenuItem.js +0 -2
- package/dist/esm/NavBar/style/index.js +1 -1
- package/dist/esm/NumberKeyboard/style/index.js +1 -1
- package/dist/esm/Picker.js +1 -1
- package/dist/esm/Popover/style/index.js +2 -1
- package/dist/esm/Popup.js +1 -1
- package/dist/esm/Rate.js +3 -2
- package/dist/esm/SearchBar/style/index.js +1 -1
- package/dist/esm/SideNavBar/style/index.js +1 -1
- package/dist/esm/Skeleton/style/index.js +1 -1
- package/dist/esm/Sticky.js +6 -1
- package/dist/esm/Swipe.js +2 -1
- package/dist/esm/Table/style/index.js +1 -1
- package/dist/esm/Tabs/style/index.js +2 -1
- package/dist/esm/Tabs.js +3 -2
- package/dist/esm/TimeSelect/style/index.js +1 -0
- package/dist/esm/Uploader/style/index.js +1 -0
- package/dist/esm/Uploader.js +74 -72
- package/dist/esm/WaterMark.js +1 -1
- package/dist/esm/{checkbox-b2f0756e.js → checkbox-6969a83f.js} +34 -16
- package/dist/esm/index-a90733f9.js +11 -0
- package/dist/esm/{tabs-5fe5fd90.js → tabs-c13f8ffe.js} +2 -0
- package/dist/esm/types/src/packages/checkbox/checkbox.d.ts +2 -7
- package/dist/esm/types/src/packages/checkboxgroup/checkboxgroup.d.ts +4 -5
- package/dist/esm/types/src/packages/checkboxgroup/context.d.ts +10 -0
- package/dist/esm/types/src/packages/tabs/tabs.d.ts +4 -1
- package/dist/esm/types/src/packages/uploader/upload.d.ts +3 -0
- package/dist/esm/types/src/packages/uploader/uploader.d.ts +4 -1
- package/dist/esm/types/src/utils/Interceptor.d.ts +6 -0
- package/dist/esm/types/src/utils/index.d.ts +2 -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.es.js +435 -438
- package/dist/nutui.react.umd.js +435 -438
- package/dist/packages/datepicker/datepicker.scss +0 -3
- package/dist/packages/form/form.scss +1 -0
- package/dist/packages/formitem/formitem.scss +13 -0
- package/dist/packages/menuitem/menuitem.scss +4 -0
- package/dist/packages/navbar/navbar.scss +24 -0
- package/dist/packages/numberkeyboard/numberkeyboard.scss +1 -0
- package/dist/packages/picker/picker.scss +47 -14
- package/dist/packages/searchbar/searchbar.scss +1 -0
- package/dist/packages/sidenavbar/sidenavbar.scss +13 -0
- package/dist/packages/skeleton/skeleton.scss +7 -0
- package/dist/packages/table/table.scss +22 -0
- package/dist/packages/tabs/tabs.scss +65 -35
- package/dist/packages/timeselect/timeselect.scss +7 -0
- package/dist/packages/uploader/uploader.scss +85 -28
- package/dist/style.css +1 -1
- package/dist/style.es.js +1 -1
- package/dist/styles/variables.scss +95 -21
- package/dist/types/index.d.ts +16 -16
- package/package.json +1 -1
- package/dist/esm/types/src/packages/tabbar/use-props-value.d.ts +0 -7
package/dist/esm/Tabs.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { T as Tabs } from './tabs-
|
|
2
|
-
export { T as default } from './tabs-
|
|
1
|
+
import { T as Tabs } from './tabs-c13f8ffe.js';
|
|
2
|
+
export { T as default } from './tabs-c13f8ffe.js';
|
|
3
3
|
import 'react';
|
|
4
4
|
import 'classnames';
|
|
5
5
|
import './bem-893ad28d.js';
|
|
6
6
|
import '@bem-react/classname';
|
|
7
7
|
import './Icon.js';
|
|
8
8
|
import './typings-1c5f2628.js';
|
|
9
|
+
import './TabPane.js';
|
package/dist/esm/Uploader.js
CHANGED
|
@@ -4,7 +4,7 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
|
4
4
|
import _createClass from "@babel/runtime/helpers/createClass";
|
|
5
5
|
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
6
6
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
7
|
-
var _excluded = ["children", "uploadIcon", "uploadIconSize", "name", "accept", "defaultFileList", "listType", "disabled", "multiple", "url", "defaultImg", "headers", "timeout", "method", "xhrState", "withCredentials", "data", "isPreview", "isDeletable", "maximum", "capture", "maximize", "className", "autoUpload", "clearInput", "iconClassPrefix", "iconFontClassName", "onStart", "onRemove", "onChange", "onFileItemClick", "onProgress", "onSuccess", "onUpdate", "onFailure", "onOversize", "onBeforeUpload", "onBeforeXhrUpload", "onBeforeDelete"];
|
|
7
|
+
var _excluded = ["children", "uploadIcon", "uploadIconSize", "uploadIconTip", "name", "accept", "defaultFileList", "listType", "disabled", "multiple", "url", "defaultImg", "headers", "timeout", "method", "xhrState", "withCredentials", "data", "isPreview", "isDeletable", "maximum", "capture", "maximize", "className", "autoUpload", "clearInput", "iconClassPrefix", "iconFontClassName", "onStart", "onRemove", "onChange", "onFileItemClick", "onProgress", "onSuccess", "onUpdate", "onFailure", "onOversize", "onBeforeUpload", "onBeforeXhrUpload", "onBeforeDelete"];
|
|
8
8
|
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; }
|
|
9
9
|
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; }
|
|
10
10
|
import React__default, { useState, useEffect, useImperativeHandle } from 'react';
|
|
@@ -13,6 +13,7 @@ import Icon from './Icon.js';
|
|
|
13
13
|
import Progress from './Progress.js';
|
|
14
14
|
import { c as cn } from './bem-893ad28d.js';
|
|
15
15
|
import { useConfig } from './ConfigProvider.js';
|
|
16
|
+
import { i as isPromise } from './index-a90733f9.js';
|
|
16
17
|
import { C as ComponentDefaults } from './typings-1c5f2628.js';
|
|
17
18
|
import '@bem-react/classname';
|
|
18
19
|
var UploadOptions = /*#__PURE__*/_createClass(function UploadOptions() {
|
|
@@ -82,58 +83,39 @@ var Upload = /*#__PURE__*/function () {
|
|
|
82
83
|
console.warn('浏览器不支持 XMLHttpRequest');
|
|
83
84
|
}
|
|
84
85
|
}
|
|
85
|
-
}, {
|
|
86
|
-
key: "uploadTaro",
|
|
87
|
-
value: function uploadTaro(uploadFile, env) {
|
|
88
|
-
var options = this.options;
|
|
89
|
-
if (env === 'WEB') {
|
|
90
|
-
this.upload();
|
|
91
|
-
} else if (options.beforeXhrUpload) {
|
|
92
|
-
options.beforeXhrUpload(uploadFile, options);
|
|
93
|
-
} else {
|
|
94
|
-
var _options$onStart2;
|
|
95
|
-
var uploadTask = uploadFile({
|
|
96
|
-
url: options.url,
|
|
97
|
-
filePath: options.taroFilePath,
|
|
98
|
-
fileType: options.fileType,
|
|
99
|
-
header: _objectSpread({
|
|
100
|
-
'Content-Type': 'multipart/form-data'
|
|
101
|
-
}, options.headers),
|
|
102
|
-
formData: options.formData,
|
|
103
|
-
name: options.name,
|
|
104
|
-
success: function success(response) {
|
|
105
|
-
if (options.xhrState == response.statusCode) {
|
|
106
|
-
var _options$onSuccess2;
|
|
107
|
-
(_options$onSuccess2 = options.onSuccess) === null || _options$onSuccess2 === void 0 ? void 0 : _options$onSuccess2.call(options, response, options);
|
|
108
|
-
} else {
|
|
109
|
-
var _options$onFailure2;
|
|
110
|
-
(_options$onFailure2 = options.onFailure) === null || _options$onFailure2 === void 0 ? void 0 : _options$onFailure2.call(options, response, options);
|
|
111
|
-
}
|
|
112
|
-
},
|
|
113
|
-
fail: function fail(e) {
|
|
114
|
-
var _options$onFailure3;
|
|
115
|
-
(_options$onFailure3 = options.onFailure) === null || _options$onFailure3 === void 0 ? void 0 : _options$onFailure3.call(options, e, options);
|
|
116
|
-
}
|
|
117
|
-
});
|
|
118
|
-
(_options$onStart2 = options.onStart) === null || _options$onStart2 === void 0 ? void 0 : _options$onStart2.call(options, options);
|
|
119
|
-
uploadTask.progress(function (res) {
|
|
120
|
-
var _options$onProgress2;
|
|
121
|
-
(_options$onProgress2 = options.onProgress) === null || _options$onProgress2 === void 0 ? void 0 : _options$onProgress2.call(options, res, options);
|
|
122
|
-
// console.log('上传进度', res.progress);
|
|
123
|
-
// console.log('已经上传的数据长度', res.totalBytesSent);
|
|
124
|
-
// console.log('预期需要上传的数据总长度', res.totalBytesExpectedToSend);
|
|
125
|
-
});
|
|
126
|
-
// uploadTask.abort(); // 取消上传任务
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
86
|
}]);
|
|
130
87
|
return Upload;
|
|
131
88
|
}();
|
|
89
|
+
var funcInterceptor = function funcInterceptor(interceptor, _ref) {
|
|
90
|
+
var _ref$args = _ref.args,
|
|
91
|
+
args = _ref$args === void 0 ? [] : _ref$args,
|
|
92
|
+
done = _ref.done,
|
|
93
|
+
canceled = _ref.canceled;
|
|
94
|
+
if (interceptor) {
|
|
95
|
+
var returnVal = interceptor.apply(null, args);
|
|
96
|
+
if (isPromise(returnVal)) {
|
|
97
|
+
returnVal.then(function (value) {
|
|
98
|
+
if (value) {
|
|
99
|
+
done(value);
|
|
100
|
+
} else if (canceled) {
|
|
101
|
+
canceled();
|
|
102
|
+
}
|
|
103
|
+
})["catch"](function () {});
|
|
104
|
+
} else if (returnVal) {
|
|
105
|
+
done();
|
|
106
|
+
} else if (canceled) {
|
|
107
|
+
canceled();
|
|
108
|
+
}
|
|
109
|
+
} else {
|
|
110
|
+
done();
|
|
111
|
+
}
|
|
112
|
+
};
|
|
132
113
|
var defaultProps = _objectSpread(_objectSpread({}, ComponentDefaults), {}, {
|
|
133
114
|
url: '',
|
|
134
115
|
maximum: 1,
|
|
135
116
|
uploadIcon: 'photograph',
|
|
136
117
|
uploadIconSize: '',
|
|
118
|
+
uploadIconTip: '',
|
|
137
119
|
listType: 'picture',
|
|
138
120
|
name: 'file',
|
|
139
121
|
accept: '*',
|
|
@@ -175,6 +157,7 @@ var InternalUploader = function InternalUploader(props, ref) {
|
|
|
175
157
|
children = _defaultProps$props.children,
|
|
176
158
|
uploadIcon = _defaultProps$props.uploadIcon,
|
|
177
159
|
uploadIconSize = _defaultProps$props.uploadIconSize,
|
|
160
|
+
uploadIconTip = _defaultProps$props.uploadIconTip,
|
|
178
161
|
name = _defaultProps$props.name,
|
|
179
162
|
accept = _defaultProps$props.accept,
|
|
180
163
|
defaultFileList = _defaultProps$props.defaultFileList,
|
|
@@ -235,6 +218,9 @@ var InternalUploader = function InternalUploader(props, ref) {
|
|
|
235
218
|
return i.upload();
|
|
236
219
|
});
|
|
237
220
|
});
|
|
221
|
+
},
|
|
222
|
+
clear: function clear() {
|
|
223
|
+
clearUploadQueue();
|
|
238
224
|
}
|
|
239
225
|
};
|
|
240
226
|
});
|
|
@@ -245,6 +231,8 @@ var InternalUploader = function InternalUploader(props, ref) {
|
|
|
245
231
|
setUploadQueue(uploadQueue);
|
|
246
232
|
} else {
|
|
247
233
|
setUploadQueue([]);
|
|
234
|
+
fileList.splice(0, fileList.length);
|
|
235
|
+
setFileList(_toConsumableArray(fileList));
|
|
248
236
|
}
|
|
249
237
|
};
|
|
250
238
|
var clearInputValue = function clearInputValue(el) {
|
|
@@ -315,7 +303,8 @@ var InternalUploader = function InternalUploader(props, ref) {
|
|
|
315
303
|
});
|
|
316
304
|
onSuccess && onSuccess({
|
|
317
305
|
responseText: responseText,
|
|
318
|
-
option: option
|
|
306
|
+
option: option,
|
|
307
|
+
fileList: fileList
|
|
319
308
|
});
|
|
320
309
|
};
|
|
321
310
|
uploadOption.onFailure = function (responseText, option) {
|
|
@@ -331,7 +320,8 @@ var InternalUploader = function InternalUploader(props, ref) {
|
|
|
331
320
|
});
|
|
332
321
|
onFailure && onFailure({
|
|
333
322
|
responseText: responseText,
|
|
334
|
-
option: option
|
|
323
|
+
option: option,
|
|
324
|
+
fileList: fileList
|
|
335
325
|
});
|
|
336
326
|
};
|
|
337
327
|
var task = new Upload(uploadOption);
|
|
@@ -354,7 +344,11 @@ var InternalUploader = function InternalUploader(props, ref) {
|
|
|
354
344
|
fileItem.type = file.type;
|
|
355
345
|
fileItem.formData = formData;
|
|
356
346
|
fileItem.uid = file.lastModified + fileItem.uid;
|
|
357
|
-
|
|
347
|
+
if (autoUpload) {
|
|
348
|
+
fileItem.message = locale.uploader.readyUpload;
|
|
349
|
+
} else {
|
|
350
|
+
fileItem.message = locale.uploader.waitingUpload;
|
|
351
|
+
}
|
|
358
352
|
executeUpload(fileItem, index);
|
|
359
353
|
if (isPreview && file.type.includes('image')) {
|
|
360
354
|
var reader = new FileReader();
|
|
@@ -392,15 +386,19 @@ var InternalUploader = function InternalUploader(props, ref) {
|
|
|
392
386
|
}
|
|
393
387
|
return filterFile;
|
|
394
388
|
};
|
|
389
|
+
var deleted = function deleted(file, index) {
|
|
390
|
+
fileList.splice(index, 1);
|
|
391
|
+
onRemove && onRemove(file, fileList);
|
|
392
|
+
setFileList(_toConsumableArray(fileList));
|
|
393
|
+
};
|
|
395
394
|
var onDelete = function onDelete(file, index) {
|
|
396
395
|
clearUploadQueue(index);
|
|
397
|
-
|
|
398
|
-
fileList
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
}
|
|
396
|
+
funcInterceptor(onBeforeDelete, {
|
|
397
|
+
args: [file, fileList],
|
|
398
|
+
done: function done() {
|
|
399
|
+
return deleted(file, index);
|
|
400
|
+
}
|
|
401
|
+
});
|
|
404
402
|
};
|
|
405
403
|
var fileChange = function fileChange(event) {
|
|
406
404
|
if (disabled) {
|
|
@@ -455,29 +453,29 @@ var InternalUploader = function InternalUploader(props, ref) {
|
|
|
455
453
|
key: item.uid
|
|
456
454
|
}, listType === 'picture' && !children && React__default.createElement("div", {
|
|
457
455
|
className: "nut-uploader__preview-img"
|
|
458
|
-
},
|
|
456
|
+
}, isDeletable && React__default.createElement(Icon, {
|
|
457
|
+
classPrefix: iconClassPrefix,
|
|
458
|
+
fontClassName: iconFontClassName,
|
|
459
|
+
color: "rgba(0,0,0,0.6)",
|
|
460
|
+
className: "close",
|
|
461
|
+
name: "failure",
|
|
462
|
+
onClick: function onClick() {
|
|
463
|
+
return onDelete(item, index);
|
|
464
|
+
}
|
|
465
|
+
}), item.status === 'ready' ? React__default.createElement("div", {
|
|
459
466
|
className: "nut-uploader__preview__progress"
|
|
460
467
|
}, React__default.createElement("div", {
|
|
461
468
|
className: "nut-uploader__preview__progress__msg"
|
|
462
469
|
}, item.message)) : item.status !== 'success' && React__default.createElement("div", {
|
|
463
470
|
className: "nut-uploader__preview__progress"
|
|
464
|
-
}, React__default.createElement(Icon, {
|
|
471
|
+
}, item.failIcon === ' ' || item.loadingIcon === ' ' ? null : React__default.createElement(Icon, {
|
|
465
472
|
classPrefix: iconClassPrefix,
|
|
466
473
|
fontClassName: iconFontClassName,
|
|
467
474
|
color: "#fff",
|
|
468
|
-
name: "".concat(item.status === 'error' ? 'failure' : 'loading')
|
|
475
|
+
name: "".concat(item.status === 'error' ? "".concat(item.failIcon || 'failure') : "".concat(item.loadingIcon || 'loading'))
|
|
469
476
|
}), React__default.createElement("div", {
|
|
470
477
|
className: "nut-uploader__preview__progress__msg"
|
|
471
|
-
}, item.message)),
|
|
472
|
-
classPrefix: iconClassPrefix,
|
|
473
|
-
fontClassName: iconFontClassName,
|
|
474
|
-
color: "rgba(0,0,0,0.6)",
|
|
475
|
-
className: "close",
|
|
476
|
-
name: "failure",
|
|
477
|
-
onClick: function onClick() {
|
|
478
|
-
return onDelete(item, index);
|
|
479
|
-
}
|
|
480
|
-
}), item.type.includes('image') ? React__default.createElement(React__default.Fragment, null, item.url && React__default.createElement("img", {
|
|
478
|
+
}, item.message)), item.type.includes('image') ? React__default.createElement(React__default.Fragment, null, item.url && React__default.createElement("img", {
|
|
481
479
|
className: "nut-uploader__preview-img__c",
|
|
482
480
|
src: item.url,
|
|
483
481
|
alt: "",
|
|
@@ -503,9 +501,9 @@ var InternalUploader = function InternalUploader(props, ref) {
|
|
|
503
501
|
fontClassName: iconFontClassName,
|
|
504
502
|
color: "#808080",
|
|
505
503
|
name: "link"
|
|
506
|
-
}), "\xA0", item.name))), React__default.createElement("div", {
|
|
504
|
+
}), "\xA0", item.name))), item.status === 'success' ? React__default.createElement("div", {
|
|
507
505
|
className: "tips"
|
|
508
|
-
}, item.name)), listType === 'list' && React__default.createElement("div", {
|
|
506
|
+
}, item.name) : null), listType === 'list' && React__default.createElement("div", {
|
|
509
507
|
className: "nut-uploader__preview-list"
|
|
510
508
|
}, React__default.createElement("div", {
|
|
511
509
|
className: "nut-uploader__preview-img__file__name ".concat(item.status),
|
|
@@ -532,14 +530,18 @@ var InternalUploader = function InternalUploader(props, ref) {
|
|
|
532
530
|
showText: false
|
|
533
531
|
})));
|
|
534
532
|
}), maximum > fileList.length && listType === 'picture' && !children && React__default.createElement("div", {
|
|
535
|
-
className: "nut-uploader__upload ".concat(listType)
|
|
533
|
+
className: "nut-uploader__upload ".concat(listType, " ").concat(disabled ? 'nut-uploader__upload-disabled' : '')
|
|
534
|
+
}, React__default.createElement("div", {
|
|
535
|
+
className: "nut-uploader__icon"
|
|
536
536
|
}, React__default.createElement(Icon, {
|
|
537
537
|
classPrefix: iconClassPrefix,
|
|
538
538
|
fontClassName: iconFontClassName,
|
|
539
539
|
size: uploadIconSize,
|
|
540
540
|
color: "#808080",
|
|
541
541
|
name: uploadIcon
|
|
542
|
-
}),
|
|
542
|
+
}), React__default.createElement("span", {
|
|
543
|
+
className: "nut-uploader__icon-tip"
|
|
544
|
+
}, uploadIconTip)), capture ? React__default.createElement("input", {
|
|
543
545
|
className: "nut-uploader__input",
|
|
544
546
|
type: "file",
|
|
545
547
|
capture: "user",
|
package/dist/esm/WaterMark.js
CHANGED
|
@@ -3,8 +3,8 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
|
3
3
|
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; }
|
|
4
4
|
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; }
|
|
5
5
|
import React__default, { useState, useEffect } from 'react';
|
|
6
|
-
import { useConfig } from './ConfigProvider.js';
|
|
7
6
|
import classNames from 'classnames';
|
|
7
|
+
import { useConfig } from './ConfigProvider.js';
|
|
8
8
|
import { c as cn } from './bem-893ad28d.js';
|
|
9
9
|
import '@bem-react/classname';
|
|
10
10
|
var defaultProps = {
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
2
2
|
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
3
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
4
|
-
var _excluded = ["iconName", "iconSize", "label", "className", "
|
|
4
|
+
var _excluded = ["iconName", "iconSize", "label", "className", "iconActiveName", "checked", "disabled", "onChange", "indeterminate", "iconClassPrefix", "iconFontClassName", "iconIndeterminateName"],
|
|
5
|
+
_excluded2 = ["textPosition"];
|
|
5
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; }
|
|
6
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; }
|
|
7
|
-
import React__default, { useState, useEffect } from 'react';
|
|
8
|
+
import React__default, { createContext, useContext, useState, useEffect } from 'react';
|
|
8
9
|
import Icon from './Icon.js';
|
|
9
10
|
import CheckboxGroup from './CheckboxGroup.js';
|
|
10
11
|
import { c as cn } from './bem-893ad28d.js';
|
|
11
12
|
import { C as ComponentDefaults } from './typings-1c5f2628.js';
|
|
13
|
+
var CheckboxGroupContext = createContext(null);
|
|
12
14
|
var defaultProps = _objectSpread(_objectSpread({}, ComponentDefaults), {}, {
|
|
13
15
|
checked: false,
|
|
14
16
|
disabled: false,
|
|
@@ -29,7 +31,6 @@ var Checkbox = function Checkbox(props) {
|
|
|
29
31
|
iconSize = props.iconSize,
|
|
30
32
|
label = props.label,
|
|
31
33
|
className = props.className,
|
|
32
|
-
textPosition = props.textPosition,
|
|
33
34
|
iconActiveName = props.iconActiveName,
|
|
34
35
|
checked = props.checked,
|
|
35
36
|
disabled = props.disabled,
|
|
@@ -38,13 +39,16 @@ var Checkbox = function Checkbox(props) {
|
|
|
38
39
|
iconClassPrefix = props.iconClassPrefix,
|
|
39
40
|
iconFontClassName = props.iconFontClassName,
|
|
40
41
|
iconIndeterminateName = props.iconIndeterminateName,
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
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);
|
|
44
47
|
var _useState = useState(checked),
|
|
45
48
|
_useState2 = _slicedToArray(_useState, 2),
|
|
46
49
|
innerChecked = _useState2[0],
|
|
47
50
|
setInnerChecked = _useState2[1];
|
|
51
|
+
// eslint-disable-next-line prefer-const
|
|
48
52
|
var _useState3 = useState(disabled),
|
|
49
53
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
50
54
|
innerDisabled = _useState4[0],
|
|
@@ -54,12 +58,22 @@ var Checkbox = function Checkbox(props) {
|
|
|
54
58
|
_indeterminate = _useState6[0],
|
|
55
59
|
setIndeterminate = _useState6[1];
|
|
56
60
|
useEffect(function () {
|
|
57
|
-
setInnerChecked(checked);
|
|
61
|
+
!ctx && setInnerChecked(checked);
|
|
58
62
|
setDisabled(disabled);
|
|
59
|
-
}, [disabled, checked]);
|
|
60
|
-
useEffect(function () {
|
|
61
63
|
setIndeterminate(indeterminate);
|
|
62
|
-
}, [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
|
+
}
|
|
63
77
|
var getIconName = function getIconName() {
|
|
64
78
|
if (!innerChecked) {
|
|
65
79
|
return iconName;
|
|
@@ -98,12 +112,16 @@ var Checkbox = function Checkbox(props) {
|
|
|
98
112
|
}, children || label);
|
|
99
113
|
};
|
|
100
114
|
var handleClick = function handleClick() {
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
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;
|
|
106
122
|
}
|
|
123
|
+
onChange && onChange(latestChecked, label || children);
|
|
124
|
+
setInnerChecked(latestChecked);
|
|
107
125
|
};
|
|
108
126
|
return React__default.createElement("div", _objectSpread(_objectSpread({
|
|
109
127
|
className: "".concat(b({
|
|
@@ -116,4 +134,4 @@ var Checkbox = function Checkbox(props) {
|
|
|
116
134
|
Checkbox.defaultProps = defaultProps;
|
|
117
135
|
Checkbox.displayName = 'NutCheckBox';
|
|
118
136
|
Checkbox.Group = CheckboxGroup;
|
|
119
|
-
export { Checkbox as C };
|
|
137
|
+
export { Checkbox as C, CheckboxGroupContext as a };
|
|
@@ -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 };
|
|
@@ -11,6 +11,7 @@ import classNames from 'classnames';
|
|
|
11
11
|
import { c as cn } from './bem-893ad28d.js';
|
|
12
12
|
import Icon from './Icon.js';
|
|
13
13
|
import { C as ComponentDefaults } from './typings-1c5f2628.js';
|
|
14
|
+
import TabPane from './TabPane.js';
|
|
14
15
|
var Title = /*#__PURE__*/_createClass(
|
|
15
16
|
// eslint-disable-next-line no-useless-constructor
|
|
16
17
|
function Title() {
|
|
@@ -176,4 +177,5 @@ var Tabs = function Tabs(props) {
|
|
|
176
177
|
};
|
|
177
178
|
Tabs.defaultProps = defaultProps;
|
|
178
179
|
Tabs.displayName = 'NutTabs';
|
|
180
|
+
Tabs.TabPane = TabPane;
|
|
179
181
|
export { Tabs as T };
|
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
import React, { FunctionComponent } from 'react';
|
|
2
2
|
import CheckboxGroup from '@/packages/checkboxgroup';
|
|
3
3
|
import { BasicComponent } from '@/utils/typings';
|
|
4
|
-
interface InheritParentProps {
|
|
5
|
-
getParentVals?: () => string[] | undefined;
|
|
6
|
-
max?: number | undefined;
|
|
7
|
-
}
|
|
8
4
|
export interface CheckboxProps extends BasicComponent {
|
|
9
5
|
checked: boolean;
|
|
10
6
|
disabled: boolean;
|
|
@@ -16,10 +12,9 @@ export interface CheckboxProps extends BasicComponent {
|
|
|
16
12
|
iconClassPrefix: string;
|
|
17
13
|
iconFontClassName: string;
|
|
18
14
|
indeterminate: boolean;
|
|
19
|
-
label: string;
|
|
15
|
+
label: string | number;
|
|
20
16
|
onChange: (state: boolean, label: string) => void;
|
|
21
17
|
}
|
|
22
|
-
export declare const Checkbox: FunctionComponent<Partial<CheckboxProps> & Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'
|
|
18
|
+
export declare const Checkbox: FunctionComponent<Partial<CheckboxProps> & Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'>> & {
|
|
23
19
|
Group: typeof CheckboxGroup;
|
|
24
20
|
};
|
|
25
|
-
export {};
|
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { RadioGroupOptionType } from '@/packages/radiogroup/type';
|
|
3
|
-
type
|
|
4
|
-
type
|
|
3
|
+
export type CheckboxTextPosition = 'left' | 'right';
|
|
4
|
+
export type CheckboxDirection = 'horizontal' | 'vertical';
|
|
5
5
|
export interface CheckboxGroupProps {
|
|
6
6
|
disabled: boolean;
|
|
7
7
|
checkedValue: string[];
|
|
8
8
|
max: number | undefined;
|
|
9
|
-
textPosition:
|
|
10
|
-
direction:
|
|
9
|
+
textPosition: CheckboxTextPosition;
|
|
10
|
+
direction: CheckboxDirection;
|
|
11
11
|
onChange: (value: string[]) => void;
|
|
12
12
|
options: RadioGroupOptionType[];
|
|
13
13
|
}
|
|
14
14
|
export declare const CheckboxGroup: React.ForwardRefExoticComponent<Partial<CheckboxGroupProps> & Omit<React.HTMLAttributes<HTMLDivElement>, "onChange"> & React.RefAttributes<unknown>>;
|
|
15
|
-
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
declare const CheckboxGroupContext: import("react").Context<{
|
|
3
|
+
textPosition: 'left' | 'right';
|
|
4
|
+
disabled: boolean | undefined;
|
|
5
|
+
checkedValue: string[];
|
|
6
|
+
max: number | undefined;
|
|
7
|
+
check: (value: string) => void;
|
|
8
|
+
uncheck: (value: string) => void;
|
|
9
|
+
} | null>;
|
|
10
|
+
export default CheckboxGroupContext;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React, { FunctionComponent } from 'react';
|
|
2
2
|
import { BasicComponent } from '@/utils/typings';
|
|
3
|
+
import TabPane from '@/packages/tabpane';
|
|
3
4
|
declare class Title {
|
|
4
5
|
title: string;
|
|
5
6
|
paneKey: string;
|
|
@@ -29,5 +30,7 @@ export interface TabsProps extends BasicComponent {
|
|
|
29
30
|
autoHeight: boolean;
|
|
30
31
|
children?: React.ReactNode;
|
|
31
32
|
}
|
|
32
|
-
export declare const Tabs: FunctionComponent<Partial<TabsProps
|
|
33
|
+
export declare const Tabs: FunctionComponent<Partial<TabsProps>> & {
|
|
34
|
+
TabPane: typeof TabPane;
|
|
35
|
+
};
|
|
33
36
|
export {};
|
|
@@ -20,5 +20,8 @@ export declare class Upload {
|
|
|
20
20
|
options: UploadOptions;
|
|
21
21
|
constructor(options: UploadOptions);
|
|
22
22
|
upload(): void;
|
|
23
|
+
}
|
|
24
|
+
export declare class UploaderTaro extends Upload {
|
|
25
|
+
constructor(options: UploadOptions);
|
|
23
26
|
uploadTaro(uploadFile: Function, env: string): void;
|
|
24
27
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { UploadOptions } from './upload';
|
|
3
|
+
import { BasicComponent } from '@/utils/typings';
|
|
3
4
|
export type FileType<T> = {
|
|
4
5
|
[key: string]: T;
|
|
5
6
|
};
|
|
6
7
|
export type FileItemStatus = 'ready' | 'uploading' | 'success' | 'error' | 'removed';
|
|
7
|
-
import { BasicComponent } from '@/utils/typings';
|
|
8
8
|
export interface UploaderProps extends BasicComponent {
|
|
9
9
|
url: string;
|
|
10
10
|
maximum: string | number;
|
|
@@ -13,6 +13,7 @@ export interface UploaderProps extends BasicComponent {
|
|
|
13
13
|
listType: string;
|
|
14
14
|
uploadIcon: string;
|
|
15
15
|
uploadIconSize: string | number;
|
|
16
|
+
uploadIconTip: string;
|
|
16
17
|
name: string;
|
|
17
18
|
accept: string;
|
|
18
19
|
disabled: boolean;
|
|
@@ -36,6 +37,7 @@ export interface UploaderProps extends BasicComponent {
|
|
|
36
37
|
onSuccess?: (param: {
|
|
37
38
|
responseText: XMLHttpRequest['responseText'];
|
|
38
39
|
option: UploadOptions;
|
|
40
|
+
fileList: FileItem[];
|
|
39
41
|
}) => void;
|
|
40
42
|
onProgress?: (param: {
|
|
41
43
|
e: ProgressEvent<XMLHttpRequestEventTarget>;
|
|
@@ -45,6 +47,7 @@ export interface UploaderProps extends BasicComponent {
|
|
|
45
47
|
onFailure?: (param: {
|
|
46
48
|
responseText: XMLHttpRequest['responseText'];
|
|
47
49
|
option: UploadOptions;
|
|
50
|
+
fileList: FileItem[];
|
|
48
51
|
}) => void;
|
|
49
52
|
onUpdate?: (fileList: FileItem[]) => void;
|
|
50
53
|
onOversize?: (file: File[]) => void;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export type Interceptor = (...args: any[]) => Promise<boolean> | boolean | undefined | void;
|
|
2
|
+
export declare const funcInterceptor: (interceptor: Interceptor | undefined, { args, done, canceled, }: {
|
|
3
|
+
args?: unknown[] | undefined;
|
|
4
|
+
done: (val?: any) => void;
|
|
5
|
+
canceled?: (() => void) | undefined;
|
|
6
|
+
}) => void;
|
package/dist/locales/base.js
CHANGED
package/dist/locales/en-US.js
CHANGED
package/dist/locales/id-ID.js
CHANGED
package/dist/locales/zh-CN.js
CHANGED
package/dist/locales/zh-TW.js
CHANGED
package/dist/locales/zh-UG.js
CHANGED