@nutui/nutui-react-taro 2.0.19-beta.0 → 2.0.19
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 +14 -0
- package/dist/esm/Menu.js +2 -2
- package/dist/esm/MenuItem.js +1 -1
- package/dist/esm/Swiper.js +7 -1
- package/dist/esm/Uploader.js +5 -3
- package/dist/esm/{menu.taro-f419b9ef.js → menu.taro-cf8d7d5b.js} +1 -1
- package/dist/esm/{menuitem.taro-d598a86e.js → menuitem.taro-b73e5ed3.js} +2 -0
- package/dist/esm/nutui-react.es.js +3 -3
- package/dist/esm/types/src/packages/uploader/demo.taro.d.ts +0 -15
- package/dist/esm/types/src/packages/uploader/file-item.d.ts +19 -0
- package/dist/esm/types/src/packages/uploader/index.d.ts +2 -1
- package/dist/esm/types/src/packages/uploader/index.taro.d.ts +2 -1
- package/dist/esm/types/src/packages/uploader/preview.d.ts +2 -0
- package/dist/esm/types/src/packages/uploader/preview.taro.d.ts +2 -0
- package/dist/esm/types/src/packages/uploader/upload.d.ts +3 -0
- package/dist/esm/types/src/packages/uploader/uploader.d.ts +5 -23
- package/dist/esm/types/src/packages/uploader/uploader.taro.d.ts +10 -26
- package/dist/esm/{uploader.taro-56b2ca0d.js → uploader.taro-da0414ba.js} +148 -134
- 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/tr-TR.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 +247 -209
- package/dist/nutui.react.umd.js +247 -209
- package/dist/style.mjs +1 -1
- package/dist/types/packages/uploader/file-item.d.ts +19 -0
- package/dist/types/packages/uploader/index.taro.d.ts +2 -1
- package/dist/types/packages/uploader/preview.taro.d.ts +2 -0
- package/dist/types/packages/uploader/upload.d.ts +3 -0
- package/dist/types/packages/uploader/uploader.taro.d.ts +10 -26
- package/package.json +1 -1
package/dist/nutui.react.es.js
CHANGED
|
@@ -5,7 +5,7 @@ var __publicField = (obj, key, value) => {
|
|
|
5
5
|
return value;
|
|
6
6
|
};
|
|
7
7
|
/*!
|
|
8
|
-
* @nutui/nutui-react-taro v2.0.19
|
|
8
|
+
* @nutui/nutui-react-taro v2.0.19 Wed Sep 27 2023 18:15:02 GMT+0800 (China Standard Time)
|
|
9
9
|
* (c) 2023 @jdf2e.
|
|
10
10
|
* Released under the MIT License.
|
|
11
11
|
*/
|
|
@@ -11794,6 +11794,8 @@ const MenuItem = forwardRef((props, ref) => {
|
|
|
11794
11794
|
}, [showPopup]);
|
|
11795
11795
|
const windowHeight = useMemo$1(() => getSystemInfoSync().windowHeight, []);
|
|
11796
11796
|
const updateItemOffset = useCallback(() => {
|
|
11797
|
+
if (!parent.lockScroll)
|
|
11798
|
+
return;
|
|
11797
11799
|
const p = parent.menuRef.current;
|
|
11798
11800
|
p.getBoundingClientRect().then((rect) => {
|
|
11799
11801
|
if (rect) {
|
|
@@ -13441,80 +13443,6 @@ const TextArea = (props) => {
|
|
|
13441
13443
|
};
|
|
13442
13444
|
TextArea.defaultProps = defaultProps$J;
|
|
13443
13445
|
TextArea.displayName = "NutTextArea";
|
|
13444
|
-
const defaultProps$I = {
|
|
13445
|
-
...ComponentDefaults,
|
|
13446
|
-
percent: 0,
|
|
13447
|
-
showText: false,
|
|
13448
|
-
animated: false,
|
|
13449
|
-
delay: 0
|
|
13450
|
-
};
|
|
13451
|
-
const Progress = (props) => {
|
|
13452
|
-
const {
|
|
13453
|
-
className,
|
|
13454
|
-
style,
|
|
13455
|
-
percent,
|
|
13456
|
-
background,
|
|
13457
|
-
color,
|
|
13458
|
-
strokeWidth,
|
|
13459
|
-
showText,
|
|
13460
|
-
animated,
|
|
13461
|
-
children,
|
|
13462
|
-
delay,
|
|
13463
|
-
...rest
|
|
13464
|
-
} = {
|
|
13465
|
-
...defaultProps$I,
|
|
13466
|
-
...props
|
|
13467
|
-
};
|
|
13468
|
-
const classPrefix2 = "nut-progress";
|
|
13469
|
-
const classesInner = classNames({
|
|
13470
|
-
[`${classPrefix2}-inner`]: true,
|
|
13471
|
-
[`${classPrefix2}-active`]: animated
|
|
13472
|
-
});
|
|
13473
|
-
const stylesOuter = {
|
|
13474
|
-
height: `${strokeWidth}px`,
|
|
13475
|
-
background
|
|
13476
|
-
};
|
|
13477
|
-
const [displayPercent, setDispalyPercent] = useState(0);
|
|
13478
|
-
const stylesInner = {
|
|
13479
|
-
width: `${displayPercent}%`,
|
|
13480
|
-
background: color
|
|
13481
|
-
};
|
|
13482
|
-
useEffect(() => {
|
|
13483
|
-
setDispalyPercent(percent);
|
|
13484
|
-
}, [percent]);
|
|
13485
|
-
useEffect(() => {
|
|
13486
|
-
let timer = null;
|
|
13487
|
-
if (delay) {
|
|
13488
|
-
setDispalyPercent(0);
|
|
13489
|
-
timer = setTimeout(() => {
|
|
13490
|
-
setDispalyPercent(percent);
|
|
13491
|
-
}, delay);
|
|
13492
|
-
}
|
|
13493
|
-
return () => {
|
|
13494
|
-
timer && clearTimeout(timer);
|
|
13495
|
-
};
|
|
13496
|
-
}, []);
|
|
13497
|
-
return /* @__PURE__ */ React__default.createElement("div", { className: classNames(classPrefix2, className), style, ...rest }, /* @__PURE__ */ React__default.createElement("div", { className: `${classPrefix2}-outer`, style: stylesOuter }, /* @__PURE__ */ React__default.createElement("div", { className: classesInner, style: stylesInner }, showText && /* @__PURE__ */ React__default.createElement(
|
|
13498
|
-
"div",
|
|
13499
|
-
{
|
|
13500
|
-
className: `${classPrefix2}-text`,
|
|
13501
|
-
style: { left: `${displayPercent}%` }
|
|
13502
|
-
},
|
|
13503
|
-
children || /* @__PURE__ */ React__default.createElement(
|
|
13504
|
-
"div",
|
|
13505
|
-
{
|
|
13506
|
-
className: `${classPrefix2}-text__inner`,
|
|
13507
|
-
style: {
|
|
13508
|
-
background: color
|
|
13509
|
-
}
|
|
13510
|
-
},
|
|
13511
|
-
percent,
|
|
13512
|
-
"%"
|
|
13513
|
-
)
|
|
13514
|
-
))));
|
|
13515
|
-
};
|
|
13516
|
-
Progress.defaultProps = defaultProps$I;
|
|
13517
|
-
Progress.displayName = "NutProgress";
|
|
13518
13446
|
class UploadOptions {
|
|
13519
13447
|
constructor() {
|
|
13520
13448
|
__publicField(this, "url", "");
|
|
@@ -13535,6 +13463,9 @@ class UploadOptions {
|
|
|
13535
13463
|
__publicField(this, "beforeXhrUpload");
|
|
13536
13464
|
}
|
|
13537
13465
|
}
|
|
13466
|
+
const UPLOADING = "uploading";
|
|
13467
|
+
const SUCCESS = "success";
|
|
13468
|
+
const ERROR = "error";
|
|
13538
13469
|
class Upload {
|
|
13539
13470
|
constructor(options) {
|
|
13540
13471
|
__publicField(this, "options");
|
|
@@ -13656,6 +13587,179 @@ const funcInterceptor = (interceptor, {
|
|
|
13656
13587
|
done();
|
|
13657
13588
|
}
|
|
13658
13589
|
};
|
|
13590
|
+
class FileItem {
|
|
13591
|
+
constructor() {
|
|
13592
|
+
__publicField(this, "status", "ready");
|
|
13593
|
+
__publicField(this, "message", "准备中..");
|
|
13594
|
+
__publicField(this, "uid", (/* @__PURE__ */ new Date()).getTime().toString());
|
|
13595
|
+
__publicField(this, "name");
|
|
13596
|
+
__publicField(this, "url");
|
|
13597
|
+
__publicField(this, "type");
|
|
13598
|
+
__publicField(this, "path");
|
|
13599
|
+
__publicField(this, "percentage", 0);
|
|
13600
|
+
__publicField(this, "formData", {});
|
|
13601
|
+
__publicField(this, "responseText");
|
|
13602
|
+
__publicField(this, "loadingIcon");
|
|
13603
|
+
__publicField(this, "failIcon");
|
|
13604
|
+
}
|
|
13605
|
+
}
|
|
13606
|
+
const defaultProps$I = {
|
|
13607
|
+
...ComponentDefaults,
|
|
13608
|
+
percent: 0,
|
|
13609
|
+
showText: false,
|
|
13610
|
+
animated: false,
|
|
13611
|
+
delay: 0
|
|
13612
|
+
};
|
|
13613
|
+
const Progress = (props) => {
|
|
13614
|
+
const {
|
|
13615
|
+
className,
|
|
13616
|
+
style,
|
|
13617
|
+
percent,
|
|
13618
|
+
background,
|
|
13619
|
+
color,
|
|
13620
|
+
strokeWidth,
|
|
13621
|
+
showText,
|
|
13622
|
+
animated,
|
|
13623
|
+
children,
|
|
13624
|
+
delay,
|
|
13625
|
+
...rest
|
|
13626
|
+
} = {
|
|
13627
|
+
...defaultProps$I,
|
|
13628
|
+
...props
|
|
13629
|
+
};
|
|
13630
|
+
const classPrefix2 = "nut-progress";
|
|
13631
|
+
const classesInner = classNames({
|
|
13632
|
+
[`${classPrefix2}-inner`]: true,
|
|
13633
|
+
[`${classPrefix2}-active`]: animated
|
|
13634
|
+
});
|
|
13635
|
+
const stylesOuter = {
|
|
13636
|
+
height: `${strokeWidth}px`,
|
|
13637
|
+
background
|
|
13638
|
+
};
|
|
13639
|
+
const [displayPercent, setDispalyPercent] = useState(0);
|
|
13640
|
+
const stylesInner = {
|
|
13641
|
+
width: `${displayPercent}%`,
|
|
13642
|
+
background: color
|
|
13643
|
+
};
|
|
13644
|
+
useEffect(() => {
|
|
13645
|
+
setDispalyPercent(percent);
|
|
13646
|
+
}, [percent]);
|
|
13647
|
+
useEffect(() => {
|
|
13648
|
+
let timer = null;
|
|
13649
|
+
if (delay) {
|
|
13650
|
+
setDispalyPercent(0);
|
|
13651
|
+
timer = setTimeout(() => {
|
|
13652
|
+
setDispalyPercent(percent);
|
|
13653
|
+
}, delay);
|
|
13654
|
+
}
|
|
13655
|
+
return () => {
|
|
13656
|
+
timer && clearTimeout(timer);
|
|
13657
|
+
};
|
|
13658
|
+
}, []);
|
|
13659
|
+
return /* @__PURE__ */ React__default.createElement("div", { className: classNames(classPrefix2, className), style, ...rest }, /* @__PURE__ */ React__default.createElement("div", { className: `${classPrefix2}-outer`, style: stylesOuter }, /* @__PURE__ */ React__default.createElement("div", { className: classesInner, style: stylesInner }, showText && /* @__PURE__ */ React__default.createElement(
|
|
13660
|
+
"div",
|
|
13661
|
+
{
|
|
13662
|
+
className: `${classPrefix2}-text`,
|
|
13663
|
+
style: { left: `${displayPercent}%` }
|
|
13664
|
+
},
|
|
13665
|
+
children || /* @__PURE__ */ React__default.createElement(
|
|
13666
|
+
"div",
|
|
13667
|
+
{
|
|
13668
|
+
className: `${classPrefix2}-text__inner`,
|
|
13669
|
+
style: {
|
|
13670
|
+
background: color
|
|
13671
|
+
}
|
|
13672
|
+
},
|
|
13673
|
+
percent,
|
|
13674
|
+
"%"
|
|
13675
|
+
)
|
|
13676
|
+
))));
|
|
13677
|
+
};
|
|
13678
|
+
Progress.defaultProps = defaultProps$I;
|
|
13679
|
+
Progress.displayName = "NutProgress";
|
|
13680
|
+
const Preview = ({
|
|
13681
|
+
fileList,
|
|
13682
|
+
previewType,
|
|
13683
|
+
deletable,
|
|
13684
|
+
onDeleteItem,
|
|
13685
|
+
handleItemClick,
|
|
13686
|
+
previewUrl,
|
|
13687
|
+
children
|
|
13688
|
+
}) => {
|
|
13689
|
+
const renderIcon = (item) => {
|
|
13690
|
+
if (item.status === ERROR) {
|
|
13691
|
+
return item.failIcon || /* @__PURE__ */ React__default.createElement(a$n, { color: "#fff" });
|
|
13692
|
+
}
|
|
13693
|
+
return item.loadingIcon || /* @__PURE__ */ React__default.createElement(r$h, { className: "nut-icon-loading", color: "#fff" });
|
|
13694
|
+
};
|
|
13695
|
+
return /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, fileList.length !== 0 && fileList.map((item, index) => {
|
|
13696
|
+
var _a;
|
|
13697
|
+
return /* @__PURE__ */ React__default.createElement(
|
|
13698
|
+
"div",
|
|
13699
|
+
{
|
|
13700
|
+
className: `nut-uploader__preview ${previewType}`,
|
|
13701
|
+
key: item.uid
|
|
13702
|
+
},
|
|
13703
|
+
previewType === "picture" && deletable && /* @__PURE__ */ React__default.createElement(
|
|
13704
|
+
a$n,
|
|
13705
|
+
{
|
|
13706
|
+
color: "rgba(0,0,0,0.6)",
|
|
13707
|
+
className: "close",
|
|
13708
|
+
onClick: () => onDeleteItem(item, index)
|
|
13709
|
+
}
|
|
13710
|
+
),
|
|
13711
|
+
previewType === "picture" && !children && /* @__PURE__ */ React__default.createElement("div", { className: "nut-uploader__preview-img" }, item.status === "ready" ? /* @__PURE__ */ React__default.createElement("div", { className: "nut-uploader__preview__progress" }, /* @__PURE__ */ React__default.createElement("div", { className: "nut-uploader__preview__progress__msg" }, item.message)) : item.status !== "success" && /* @__PURE__ */ React__default.createElement("div", { className: "nut-uploader__preview__progress" }, renderIcon(item), /* @__PURE__ */ React__default.createElement("div", { className: "nut-uploader__preview__progress__msg" }, item.message)), ((_a = item.type) == null ? void 0 : _a.includes("image")) ? /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, item.url && /* @__PURE__ */ React__default.createElement(
|
|
13712
|
+
Image$2,
|
|
13713
|
+
{
|
|
13714
|
+
className: "nut-uploader__preview-img__c",
|
|
13715
|
+
style: { objectFit: "fill" },
|
|
13716
|
+
mode: "aspectFit",
|
|
13717
|
+
src: item.url,
|
|
13718
|
+
onClick: () => handleItemClick(item)
|
|
13719
|
+
}
|
|
13720
|
+
)) : /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, previewUrl ? /* @__PURE__ */ React__default.createElement(
|
|
13721
|
+
Image$2,
|
|
13722
|
+
{
|
|
13723
|
+
className: "nut-uploader__preview-img__c",
|
|
13724
|
+
mode: "aspectFit",
|
|
13725
|
+
src: previewUrl,
|
|
13726
|
+
onClick: () => handleItemClick(item)
|
|
13727
|
+
}
|
|
13728
|
+
) : /* @__PURE__ */ React__default.createElement("div", { className: "nut-uploader__preview-img__file" }, /* @__PURE__ */ React__default.createElement(
|
|
13729
|
+
"div",
|
|
13730
|
+
{
|
|
13731
|
+
onClick: () => handleItemClick(item),
|
|
13732
|
+
className: "nut-uploader__preview-img__file__name"
|
|
13733
|
+
},
|
|
13734
|
+
/* @__PURE__ */ React__default.createElement(a$i, { color: "#808080" }),
|
|
13735
|
+
/* @__PURE__ */ React__default.createElement("span", null, " ", item.name)
|
|
13736
|
+
))), item.status === "success" ? /* @__PURE__ */ React__default.createElement("div", { className: "tips" }, item.name) : null),
|
|
13737
|
+
previewType === "list" && /* @__PURE__ */ React__default.createElement("div", { className: "nut-uploader__preview-list" }, /* @__PURE__ */ React__default.createElement(
|
|
13738
|
+
"div",
|
|
13739
|
+
{
|
|
13740
|
+
className: `nut-uploader__preview-img__file__name ${item.status}`,
|
|
13741
|
+
onClick: () => handleItemClick(item)
|
|
13742
|
+
},
|
|
13743
|
+
/* @__PURE__ */ React__default.createElement(a$i, null),
|
|
13744
|
+
/* @__PURE__ */ React__default.createElement("span", null, " ", item.name)
|
|
13745
|
+
), deletable && /* @__PURE__ */ React__default.createElement(
|
|
13746
|
+
a$p,
|
|
13747
|
+
{
|
|
13748
|
+
color: "#808080",
|
|
13749
|
+
className: "nut-uploader__preview-img__file__del",
|
|
13750
|
+
onClick: () => onDeleteItem(item, index)
|
|
13751
|
+
}
|
|
13752
|
+
), item.status === "uploading" && /* @__PURE__ */ React__default.createElement(
|
|
13753
|
+
Progress,
|
|
13754
|
+
{
|
|
13755
|
+
percent: item.percentage,
|
|
13756
|
+
color: "linear-gradient(270deg, rgba(18,126,255,1) 0%,rgba(32,147,255,1) 32.815625%,rgba(13,242,204,1) 100%)",
|
|
13757
|
+
showText: false
|
|
13758
|
+
}
|
|
13759
|
+
))
|
|
13760
|
+
);
|
|
13761
|
+
}));
|
|
13762
|
+
};
|
|
13659
13763
|
const defaultProps$H = {
|
|
13660
13764
|
...ComponentDefaults,
|
|
13661
13765
|
url: "",
|
|
@@ -13664,7 +13768,7 @@ const defaultProps$H = {
|
|
|
13664
13768
|
sourceType: ["album", "camera"],
|
|
13665
13769
|
mediaType: ["image", "video"],
|
|
13666
13770
|
camera: "back",
|
|
13667
|
-
uploadIcon:
|
|
13771
|
+
uploadIcon: /* @__PURE__ */ React__default.createElement(a$a, { size: "20px", color: "#808080" }),
|
|
13668
13772
|
uploadLabel: "",
|
|
13669
13773
|
previewType: "picture",
|
|
13670
13774
|
fit: "cover",
|
|
@@ -13687,19 +13791,6 @@ const defaultProps$H = {
|
|
|
13687
13791
|
return true;
|
|
13688
13792
|
}
|
|
13689
13793
|
};
|
|
13690
|
-
class FileItem {
|
|
13691
|
-
constructor() {
|
|
13692
|
-
__publicField(this, "status", "ready");
|
|
13693
|
-
__publicField(this, "message", "准备中..");
|
|
13694
|
-
__publicField(this, "uid", Date.now().toString());
|
|
13695
|
-
__publicField(this, "name");
|
|
13696
|
-
__publicField(this, "url");
|
|
13697
|
-
__publicField(this, "type");
|
|
13698
|
-
__publicField(this, "path");
|
|
13699
|
-
__publicField(this, "percentage", 0);
|
|
13700
|
-
__publicField(this, "formData", {});
|
|
13701
|
-
}
|
|
13702
|
-
}
|
|
13703
13794
|
const InternalUploader = (props, ref) => {
|
|
13704
13795
|
const { locale } = useConfig$1();
|
|
13705
13796
|
const {
|
|
@@ -13745,13 +13836,15 @@ const InternalUploader = (props, ref) => {
|
|
|
13745
13836
|
beforeDelete,
|
|
13746
13837
|
...restProps
|
|
13747
13838
|
} = { ...defaultProps$H, ...props };
|
|
13748
|
-
const [fileList, setFileList] =
|
|
13749
|
-
|
|
13750
|
-
|
|
13751
|
-
|
|
13752
|
-
|
|
13839
|
+
const [fileList, setFileList] = usePropsValue({
|
|
13840
|
+
value,
|
|
13841
|
+
defaultValue,
|
|
13842
|
+
finalValue: [],
|
|
13843
|
+
onChange: (v) => {
|
|
13844
|
+
onChange == null ? void 0 : onChange(v);
|
|
13753
13845
|
}
|
|
13754
|
-
}
|
|
13846
|
+
});
|
|
13847
|
+
const [uploadQueue, setUploadQueue] = useState([]);
|
|
13755
13848
|
const classes = classNames(className, "nut-uploader");
|
|
13756
13849
|
useImperativeHandle(ref, () => ({
|
|
13757
13850
|
submit: () => {
|
|
@@ -13842,63 +13935,60 @@ const InternalUploader = (props, ref) => {
|
|
|
13842
13935
|
uploadOption.beforeXhrUpload = beforeXhrUpload;
|
|
13843
13936
|
uploadOption.onStart = (option) => {
|
|
13844
13937
|
clearUploadQueue(index);
|
|
13845
|
-
setFileList(
|
|
13846
|
-
|
|
13938
|
+
setFileList(
|
|
13939
|
+
fileList.map((item) => {
|
|
13847
13940
|
if (item.uid === fileItem.uid) {
|
|
13848
13941
|
item.status = "ready";
|
|
13849
13942
|
item.message = locale.uploader.readyUpload;
|
|
13850
13943
|
}
|
|
13851
|
-
|
|
13852
|
-
|
|
13853
|
-
|
|
13944
|
+
return item;
|
|
13945
|
+
})
|
|
13946
|
+
);
|
|
13854
13947
|
onStart && onStart(option);
|
|
13855
13948
|
};
|
|
13856
13949
|
uploadOption.onProgress = (e, option) => {
|
|
13857
|
-
setFileList(
|
|
13858
|
-
|
|
13950
|
+
setFileList(
|
|
13951
|
+
fileList.map((item) => {
|
|
13859
13952
|
if (item.uid === fileItem.uid) {
|
|
13860
|
-
item.status =
|
|
13953
|
+
item.status = UPLOADING;
|
|
13861
13954
|
item.message = locale.uploader.uploading;
|
|
13862
13955
|
item.percentage = e.progress;
|
|
13863
13956
|
onProgress && onProgress({ e, option, percentage: item.percentage });
|
|
13864
13957
|
}
|
|
13865
|
-
|
|
13866
|
-
|
|
13867
|
-
|
|
13958
|
+
return item;
|
|
13959
|
+
})
|
|
13960
|
+
);
|
|
13868
13961
|
};
|
|
13869
13962
|
uploadOption.onSuccess = (responseText, option) => {
|
|
13870
|
-
|
|
13871
|
-
|
|
13872
|
-
|
|
13873
|
-
|
|
13874
|
-
|
|
13875
|
-
|
|
13876
|
-
|
|
13877
|
-
}
|
|
13878
|
-
});
|
|
13879
|
-
return [...fileList2];
|
|
13963
|
+
const list = fileList.map((item) => {
|
|
13964
|
+
if (item.uid === fileItem.uid) {
|
|
13965
|
+
item.status = SUCCESS;
|
|
13966
|
+
item.message = locale.uploader.success;
|
|
13967
|
+
item.responseText = responseText;
|
|
13968
|
+
}
|
|
13969
|
+
return item;
|
|
13880
13970
|
});
|
|
13881
|
-
|
|
13971
|
+
setFileList(list);
|
|
13972
|
+
onSuccess == null ? void 0 : onSuccess({
|
|
13882
13973
|
responseText,
|
|
13883
13974
|
option,
|
|
13884
|
-
fileList
|
|
13975
|
+
fileList: list
|
|
13885
13976
|
});
|
|
13886
13977
|
};
|
|
13887
13978
|
uploadOption.onFailure = (responseText, option) => {
|
|
13888
|
-
|
|
13889
|
-
|
|
13890
|
-
|
|
13891
|
-
|
|
13892
|
-
|
|
13893
|
-
|
|
13894
|
-
|
|
13895
|
-
});
|
|
13896
|
-
return [...fileList2];
|
|
13979
|
+
const list = fileList.map((item) => {
|
|
13980
|
+
if (item.uid === fileItem.uid) {
|
|
13981
|
+
item.status = ERROR;
|
|
13982
|
+
item.message = locale.uploader.error;
|
|
13983
|
+
item.responseText = responseText;
|
|
13984
|
+
}
|
|
13985
|
+
return item;
|
|
13897
13986
|
});
|
|
13898
|
-
|
|
13987
|
+
setFileList(list);
|
|
13988
|
+
onFailure == null ? void 0 : onFailure({
|
|
13899
13989
|
responseText,
|
|
13900
13990
|
option,
|
|
13901
|
-
fileList
|
|
13991
|
+
fileList: list
|
|
13902
13992
|
});
|
|
13903
13993
|
};
|
|
13904
13994
|
const task = new UploaderTaro(uploadOption);
|
|
@@ -13932,11 +14022,7 @@ const InternalUploader = (props, ref) => {
|
|
|
13932
14022
|
fileItem.status = "ready";
|
|
13933
14023
|
fileItem.type = fileType;
|
|
13934
14024
|
fileItem.uid = `${fileItem.uid}_${index}`;
|
|
13935
|
-
|
|
13936
|
-
fileItem.message = locale.uploader.readyUpload;
|
|
13937
|
-
} else {
|
|
13938
|
-
fileItem.message = locale.uploader.waitingUpload;
|
|
13939
|
-
}
|
|
14025
|
+
fileItem.message = autoUpload ? locale.uploader.readyUpload : locale.uploader.waitingUpload;
|
|
13940
14026
|
if (getEnv() === "WEB") {
|
|
13941
14027
|
const formData = new FormData();
|
|
13942
14028
|
for (const [key, value2] of Object.entries(data)) {
|
|
@@ -13953,7 +14039,7 @@ const InternalUploader = (props, ref) => {
|
|
|
13953
14039
|
fileItem.url = fileType === "video" ? file.thumbTempFilePath : filepath;
|
|
13954
14040
|
}
|
|
13955
14041
|
fileList.push(fileItem);
|
|
13956
|
-
setFileList(
|
|
14042
|
+
setFileList(fileList);
|
|
13957
14043
|
executeUpload(fileItem, index);
|
|
13958
14044
|
});
|
|
13959
14045
|
};
|
|
@@ -13978,9 +14064,9 @@ const InternalUploader = (props, ref) => {
|
|
|
13978
14064
|
return filterFile;
|
|
13979
14065
|
};
|
|
13980
14066
|
const deleted = (file, index) => {
|
|
13981
|
-
fileList.
|
|
13982
|
-
onDelete
|
|
13983
|
-
setFileList(
|
|
14067
|
+
const deletedFileList = fileList.filter((file2, idx) => idx !== index);
|
|
14068
|
+
onDelete == null ? void 0 : onDelete(file, deletedFileList);
|
|
14069
|
+
setFileList(deletedFileList);
|
|
13984
14070
|
};
|
|
13985
14071
|
const onDeleteItem = (file, index) => {
|
|
13986
14072
|
clearUploadQueue(index);
|
|
@@ -13993,88 +14079,34 @@ const InternalUploader = (props, ref) => {
|
|
|
13993
14079
|
const { tempFiles } = res;
|
|
13994
14080
|
const _files = filterFiles(tempFiles);
|
|
13995
14081
|
readFile(_files);
|
|
13996
|
-
onChange && onChange({ fileList });
|
|
13997
14082
|
};
|
|
13998
14083
|
const onChangeImage = (res) => {
|
|
13999
14084
|
const { tempFiles } = res;
|
|
14000
14085
|
const _files = filterFiles(tempFiles);
|
|
14001
14086
|
readFile(_files);
|
|
14002
|
-
onChange && onChange({ fileList });
|
|
14003
14087
|
};
|
|
14004
14088
|
const handleItemClick = (file) => {
|
|
14005
|
-
onFileItemClick
|
|
14089
|
+
onFileItemClick == null ? void 0 : onFileItemClick(file);
|
|
14006
14090
|
};
|
|
14007
|
-
return /* @__PURE__ */ React__default.createElement("div", { className: classes, ...restProps }, (children || previewType === "list") && /* @__PURE__ */ React__default.createElement("div", { className: "nut-uploader__slot" }, /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, children || /* @__PURE__ */ React__default.createElement(Button, { size: "small", type: "primary" }, "上传文件"), maxCount > fileList.length && /* @__PURE__ */ React__default.createElement(Button, { className: "nut-uploader__input", onClick: _chooseImage }))),
|
|
14008
|
-
|
|
14009
|
-
|
|
14010
|
-
{
|
|
14011
|
-
|
|
14012
|
-
|
|
14013
|
-
|
|
14014
|
-
|
|
14015
|
-
|
|
14016
|
-
|
|
14017
|
-
|
|
14018
|
-
|
|
14019
|
-
|
|
14020
|
-
|
|
14021
|
-
),
|
|
14022
|
-
previewType === "picture" && !children && /* @__PURE__ */ React__default.createElement("div", { className: "nut-uploader__preview-img" }, item.status === "ready" ? /* @__PURE__ */ React__default.createElement("div", { className: "nut-uploader__preview__progress" }, /* @__PURE__ */ React__default.createElement("div", { className: "nut-uploader__preview__progress__msg" }, item.message)) : item.status !== "success" && /* @__PURE__ */ React__default.createElement("div", { className: "nut-uploader__preview__progress" }, item.failIcon !== " " && item.loadingIcon !== " " && (item.status === "error" ? item.failIcon || /* @__PURE__ */ React__default.createElement(a$n, { color: "#fff" }) : item.loadingIcon || /* @__PURE__ */ React__default.createElement(r$h, { color: "#fff" })), /* @__PURE__ */ React__default.createElement("div", { className: "nut-uploader__preview__progress__msg" }, item.message)), item.type.includes("image") ? /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, item.url && /* @__PURE__ */ React__default.createElement(
|
|
14023
|
-
Image$2,
|
|
14024
|
-
{
|
|
14025
|
-
className: "nut-uploader__preview-img__c",
|
|
14026
|
-
style: { objectFit: fit },
|
|
14027
|
-
mode: "aspectFit",
|
|
14028
|
-
src: item.url,
|
|
14029
|
-
onClick: () => handleItemClick(item)
|
|
14030
|
-
}
|
|
14031
|
-
)) : /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, previewUrl ? /* @__PURE__ */ React__default.createElement(
|
|
14032
|
-
Image$2,
|
|
14033
|
-
{
|
|
14034
|
-
className: "nut-uploader__preview-img__c",
|
|
14035
|
-
mode: "aspectFit",
|
|
14036
|
-
src: previewUrl,
|
|
14037
|
-
onClick: () => handleItemClick(item)
|
|
14038
|
-
}
|
|
14039
|
-
) : /* @__PURE__ */ React__default.createElement("div", { className: "nut-uploader__preview-img__file" }, /* @__PURE__ */ React__default.createElement(
|
|
14040
|
-
"div",
|
|
14041
|
-
{
|
|
14042
|
-
onClick: () => handleItemClick(item),
|
|
14043
|
-
className: "nut-uploader__preview-img__file__name"
|
|
14044
|
-
},
|
|
14045
|
-
/* @__PURE__ */ React__default.createElement(a$i, { color: "#808080" }),
|
|
14046
|
-
/* @__PURE__ */ React__default.createElement("span", null, " ", item.name)
|
|
14047
|
-
))), item.status === "success" ? /* @__PURE__ */ React__default.createElement("div", { className: "tips" }, item.name) : null),
|
|
14048
|
-
previewType === "list" && /* @__PURE__ */ React__default.createElement("div", { className: "nut-uploader__preview-list" }, /* @__PURE__ */ React__default.createElement(
|
|
14049
|
-
"div",
|
|
14050
|
-
{
|
|
14051
|
-
className: `nut-uploader__preview-img__file__name ${item.status}`,
|
|
14052
|
-
onClick: () => handleItemClick(item)
|
|
14053
|
-
},
|
|
14054
|
-
/* @__PURE__ */ React__default.createElement(a$i, null),
|
|
14055
|
-
/* @__PURE__ */ React__default.createElement("span", null, " ", item.name)
|
|
14056
|
-
), deletable && /* @__PURE__ */ React__default.createElement(
|
|
14057
|
-
a$p,
|
|
14058
|
-
{
|
|
14059
|
-
color: "#808080",
|
|
14060
|
-
className: "nut-uploader__preview-img__file__del",
|
|
14061
|
-
onClick: () => onDeleteItem(item, index)
|
|
14062
|
-
}
|
|
14063
|
-
), item.status === "uploading" && /* @__PURE__ */ React__default.createElement(
|
|
14064
|
-
Progress,
|
|
14065
|
-
{
|
|
14066
|
-
percent: item.percentage,
|
|
14067
|
-
color: "linear-gradient(270deg, rgba(18,126,255,1) 0%,rgba(32,147,255,1) 32.815625%,rgba(13,242,204,1) 100%)",
|
|
14068
|
-
showText: false
|
|
14069
|
-
}
|
|
14070
|
-
))
|
|
14071
|
-
);
|
|
14072
|
-
}), maxCount > fileList.length && previewType === "picture" && !children && /* @__PURE__ */ React__default.createElement(
|
|
14091
|
+
return /* @__PURE__ */ React__default.createElement("div", { className: classes, ...restProps }, (children || previewType === "list") && /* @__PURE__ */ React__default.createElement("div", { className: "nut-uploader__slot" }, /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, children || /* @__PURE__ */ React__default.createElement(Button, { size: "small", type: "primary" }, "上传文件"), maxCount > fileList.length && /* @__PURE__ */ React__default.createElement(Button, { className: "nut-uploader__input", onClick: _chooseImage }))), /* @__PURE__ */ React__default.createElement(
|
|
14092
|
+
Preview,
|
|
14093
|
+
{
|
|
14094
|
+
...{
|
|
14095
|
+
fileList,
|
|
14096
|
+
previewType,
|
|
14097
|
+
deletable,
|
|
14098
|
+
onDeleteItem,
|
|
14099
|
+
handleItemClick,
|
|
14100
|
+
previewUrl,
|
|
14101
|
+
children
|
|
14102
|
+
}
|
|
14103
|
+
}
|
|
14104
|
+
), maxCount > fileList.length && previewType === "picture" && !children && /* @__PURE__ */ React__default.createElement(
|
|
14073
14105
|
"div",
|
|
14074
14106
|
{
|
|
14075
14107
|
className: `nut-uploader__upload ${previewType} ${disabled ? "nut-uploader__upload-disabled" : ""}`
|
|
14076
14108
|
},
|
|
14077
|
-
/* @__PURE__ */ React__default.createElement("div", { className: "nut-uploader__icon" }, uploadIcon
|
|
14109
|
+
/* @__PURE__ */ React__default.createElement("div", { className: "nut-uploader__icon" }, uploadIcon, /* @__PURE__ */ React__default.createElement("span", { className: "nut-uploader__icon-tip" }, uploadLabel)),
|
|
14078
14110
|
/* @__PURE__ */ React__default.createElement(Button, { className: "nut-uploader__input", onClick: _chooseImage })
|
|
14079
14111
|
));
|
|
14080
14112
|
};
|
|
@@ -17585,7 +17617,13 @@ const Swiper = forwardRef((props, ref) => {
|
|
|
17585
17617
|
},
|
|
17586
17618
|
...rest
|
|
17587
17619
|
},
|
|
17588
|
-
Children.toArray(children).map((child, index) =>
|
|
17620
|
+
Children.toArray(children).map((child, index) => {
|
|
17621
|
+
let className2;
|
|
17622
|
+
if (React__default.isValidElement(child)) {
|
|
17623
|
+
className2 = child.props.className;
|
|
17624
|
+
}
|
|
17625
|
+
return /* @__PURE__ */ React__default.createElement(SwiperItem$1, { className: className2, key: index }, child);
|
|
17626
|
+
})
|
|
17589
17627
|
)
|
|
17590
17628
|
),
|
|
17591
17629
|
renderIndicator()
|