@nutui/nutui-react-taro 2.0.21-beta.0 → 2.0.21

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.
Files changed (36) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/esm/DatePicker/style/style.css +1 -1
  3. package/dist/esm/DatePicker.js +2 -2
  4. package/dist/esm/Form.js +9 -6
  5. package/dist/esm/FormItem.js +1 -1
  6. package/dist/esm/Menu.js +2 -2
  7. package/dist/esm/MenuItem.js +1 -1
  8. package/dist/esm/Picker/style/style.css +1 -1
  9. package/dist/esm/Picker.js +1 -1
  10. package/dist/esm/Popover/style/style.css +1 -1
  11. package/dist/esm/Tour/style/style.css +1 -1
  12. package/dist/esm/Uploader.js +1 -1
  13. package/dist/esm/{datepicker.taro-725e96f0.js → datepicker.taro-f0e1771a.js} +1 -1
  14. package/dist/esm/{formitem.taro-0dc81538.js → formitem.taro-17dac26c.js} +5 -1
  15. package/dist/esm/{menu.taro-cf8d7d5b.js → menu.taro-b54d3f8d.js} +1 -1
  16. package/dist/esm/{menuitem.taro-b73e5ed3.js → menuitem.taro-6455f170.js} +1 -1
  17. package/dist/esm/nutui-react.es.js +6 -6
  18. package/dist/esm/{picker.taro-5f86e72b.js → picker.taro-d731f062.js} +1 -1
  19. package/dist/esm/types/src/packages/uploader/uploader.d.ts +8 -8
  20. package/dist/esm/types/src/packages/uploader/uploader.taro.d.ts +6 -6
  21. package/dist/esm/{uploader.taro-da0414ba.js → uploader.taro-69af92c4.js} +7 -7
  22. package/dist/locales/base.js +1 -1
  23. package/dist/locales/en-US.js +1 -1
  24. package/dist/locales/id-ID.js +1 -1
  25. package/dist/locales/tr-TR.js +1 -1
  26. package/dist/locales/zh-CN.js +1 -1
  27. package/dist/locales/zh-TW.js +1 -1
  28. package/dist/locales/zh-UG.js +1 -1
  29. package/dist/nutui.react.es.js +26 -18
  30. package/dist/nutui.react.umd.js +26 -18
  31. package/dist/packages/picker/picker.scss +12 -0
  32. package/dist/packages/popover/popover.scss +1 -1
  33. package/dist/style.css +1 -1
  34. package/dist/style.mjs +1 -1
  35. package/dist/types/packages/uploader/uploader.taro.d.ts +6 -6
  36. package/package.json +1 -1
@@ -5,7 +5,7 @@ var __publicField = (obj, key, value) => {
5
5
  return value;
6
6
  };
7
7
  /*!
8
- * @nutui/nutui-react-taro v2.0.21-beta.0 Fri Oct 13 2023 18:55:02 GMT+0800 (China Standard Time)
8
+ * @nutui/nutui-react-taro v2.0.21 Wed Oct 18 2023 17:56:58 GMT+0800 (China Standard Time)
9
9
  * (c) 2023 @jdf2e.
10
10
  * Released under the MIT License.
11
11
  */
@@ -9472,6 +9472,7 @@ const InternalPicker = (props, ref) => {
9472
9472
  onPickStart: pickerStart,
9473
9473
  onChange: pickerChange,
9474
9474
  onPickEnd: pickerEnd,
9475
+ indicatorClass: Taro.getEnv() === "JD" ? "nut-picker-indicator-jdapp" : "",
9475
9476
  className: "nut-picker-view-panel"
9476
9477
  },
9477
9478
  columnsList == null ? void 0 : columnsList.map((columnOptions, index) => {
@@ -10944,17 +10945,17 @@ class FormStore {
10944
10945
  });
10945
10946
  __publicField(this, "validateFields", async (nameList) => {
10946
10947
  var _a;
10947
- let filterEntitys = [];
10948
+ let filterEntities = [];
10948
10949
  const errs = [];
10949
10950
  this.errors.length = 0;
10950
10951
  if (!nameList || nameList.length === 0) {
10951
- filterEntitys = this.fieldEntities;
10952
+ filterEntities = this.fieldEntities;
10952
10953
  } else {
10953
- filterEntitys = this.fieldEntities.filter(
10954
+ filterEntities = this.fieldEntities.filter(
10954
10955
  ({ props: { name } }) => nameList.includes(name)
10955
10956
  );
10956
10957
  }
10957
- for (const entity of filterEntitys) {
10958
+ for (const entity of filterEntities) {
10958
10959
  const { name, rules: rules2 = [] } = entity.props;
10959
10960
  const descriptor = {};
10960
10961
  if (rules2.length) {
@@ -10969,13 +10970,16 @@ class FormStore {
10969
10970
  }
10970
10971
  const validator = new Schema(descriptor);
10971
10972
  try {
10972
- this.errors[name] = [];
10973
10973
  await validator.validate({ [name]: (_a = this.store) == null ? void 0 : _a[name] });
10974
10974
  } catch ({ errors }) {
10975
10975
  if (errors) {
10976
10976
  errs.push(...errors);
10977
10977
  this.errors[name] = errors;
10978
10978
  }
10979
+ } finally {
10980
+ if (!errs || errs.length === 0) {
10981
+ this.errors[name] = [];
10982
+ }
10979
10983
  }
10980
10984
  entity.onStoreChange("validate");
10981
10985
  }
@@ -11218,6 +11222,7 @@ class FormItem extends React__default.Component {
11218
11222
  }
11219
11223
  });
11220
11224
  __publicField(this, "renderLayout", (childNode) => {
11225
+ var _a;
11221
11226
  const {
11222
11227
  label,
11223
11228
  name,
@@ -11243,13 +11248,16 @@ class FormItem extends React__default.Component {
11243
11248
  onClick: (e) => this.props.onClick && this.props.onClick(e, this.componentRef)
11244
11249
  },
11245
11250
  label ? /* @__PURE__ */ React__default.createElement("div", { className: "nut-cell__title nut-form-item__label" }, renderLabel) : null,
11246
- /* @__PURE__ */ React__default.createElement("div", { className: "nut-cell__value nut-form-item__body" }, /* @__PURE__ */ React__default.createElement("div", { className: "nut-form-item__body__slots" }, childNode), item && item.length > 0 && /* @__PURE__ */ React__default.createElement(
11251
+ /* @__PURE__ */ React__default.createElement("div", { className: "nut-cell__value nut-form-item__body" }, /* @__PURE__ */ React__default.createElement("div", { className: "nut-form-item__body__slots" }, childNode), /* @__PURE__ */ React__default.createElement(
11247
11252
  "div",
11248
11253
  {
11249
11254
  className: "nut-form-item__body__tips",
11250
- style: { textAlign: errorMessageAlign }
11255
+ style: {
11256
+ textAlign: errorMessageAlign,
11257
+ display: (item == null ? void 0 : item.length) ? "inherit" : "none"
11258
+ }
11251
11259
  },
11252
- item[0].message
11260
+ (_a = item == null ? void 0 : item[0]) == null ? void 0 : _a.message
11253
11261
  ))
11254
11262
  );
11255
11263
  });
@@ -11776,7 +11784,7 @@ const MenuItem = forwardRef((props, ref) => {
11776
11784
  if (!parent.lockScroll)
11777
11785
  return;
11778
11786
  const p = parent.menuRef.current;
11779
- p.getBoundingClientRect().then((rect) => {
11787
+ getRectByTaro(p).then((rect) => {
11780
11788
  if (rect) {
11781
11789
  setPosition({
11782
11790
  height: rect.height,
@@ -13694,7 +13702,7 @@ const Preview = ({
13694
13702
  style: { objectFit: "fill" },
13695
13703
  mode: "aspectFit",
13696
13704
  src: item.url,
13697
- onClick: () => handleItemClick(item)
13705
+ onClick: () => handleItemClick(item, index)
13698
13706
  }
13699
13707
  )) : /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, previewUrl ? /* @__PURE__ */ React__default.createElement(
13700
13708
  Image$2,
@@ -13702,12 +13710,12 @@ const Preview = ({
13702
13710
  className: "nut-uploader__preview-img__c",
13703
13711
  mode: "aspectFit",
13704
13712
  src: previewUrl,
13705
- onClick: () => handleItemClick(item)
13713
+ onClick: () => handleItemClick(item, index)
13706
13714
  }
13707
13715
  ) : /* @__PURE__ */ React__default.createElement("div", { className: "nut-uploader__preview-img__file" }, /* @__PURE__ */ React__default.createElement(
13708
13716
  "div",
13709
13717
  {
13710
- onClick: () => handleItemClick(item),
13718
+ onClick: () => handleItemClick(item, index),
13711
13719
  className: "nut-uploader__preview-img__file__name"
13712
13720
  },
13713
13721
  /* @__PURE__ */ React__default.createElement(a$i, { color: "#808080" }),
@@ -13717,7 +13725,7 @@ const Preview = ({
13717
13725
  "div",
13718
13726
  {
13719
13727
  className: `nut-uploader__preview-img__file__name ${item.status}`,
13720
- onClick: () => handleItemClick(item)
13728
+ onClick: () => handleItemClick(item, index)
13721
13729
  },
13722
13730
  /* @__PURE__ */ React__default.createElement(a$i, null),
13723
13731
  /* @__PURE__ */ React__default.createElement("span", null, " ", item.name)
@@ -13951,7 +13959,7 @@ const InternalUploader = (props, ref) => {
13951
13959
  onSuccess == null ? void 0 : onSuccess({
13952
13960
  responseText,
13953
13961
  option,
13954
- fileList: list
13962
+ files: list
13955
13963
  });
13956
13964
  };
13957
13965
  uploadOption.onFailure = (responseText, option) => {
@@ -13967,7 +13975,7 @@ const InternalUploader = (props, ref) => {
13967
13975
  onFailure == null ? void 0 : onFailure({
13968
13976
  responseText,
13969
13977
  option,
13970
- fileList: list
13978
+ files: list
13971
13979
  });
13972
13980
  };
13973
13981
  const task = new UploaderTaro(uploadOption);
@@ -14064,8 +14072,8 @@ const InternalUploader = (props, ref) => {
14064
14072
  const _files = filterFiles(tempFiles);
14065
14073
  readFile(_files);
14066
14074
  };
14067
- const handleItemClick = (file) => {
14068
- onFileItemClick == null ? void 0 : onFileItemClick(file);
14075
+ const handleItemClick = (file, index) => {
14076
+ onFileItemClick == null ? void 0 : onFileItemClick(file, index);
14069
14077
  };
14070
14078
  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(
14071
14079
  Preview,
@@ -8,7 +8,7 @@ var __publicField = (obj, key, value) => {
8
8
  return value;
9
9
  };
10
10
  /*!
11
- * @nutui/nutui-react-taro v2.0.21-beta.0 Fri Oct 13 2023 18:55:02 GMT+0800 (China Standard Time)
11
+ * @nutui/nutui-react-taro v2.0.21 Wed Oct 18 2023 17:56:58 GMT+0800 (China Standard Time)
12
12
  * (c) 2023 @jdf2e.
13
13
  * Released under the MIT License.
14
14
  */
@@ -9488,6 +9488,7 @@ var __publicField = (obj, key, value) => {
9488
9488
  onPickStart: pickerStart,
9489
9489
  onChange: pickerChange,
9490
9490
  onPickEnd: pickerEnd,
9491
+ indicatorClass: Taro.getEnv() === "JD" ? "nut-picker-indicator-jdapp" : "",
9491
9492
  className: "nut-picker-view-panel"
9492
9493
  },
9493
9494
  columnsList == null ? void 0 : columnsList.map((columnOptions, index) => {
@@ -10960,17 +10961,17 @@ var __publicField = (obj, key, value) => {
10960
10961
  });
10961
10962
  __publicField(this, "validateFields", async (nameList) => {
10962
10963
  var _a;
10963
- let filterEntitys = [];
10964
+ let filterEntities = [];
10964
10965
  const errs = [];
10965
10966
  this.errors.length = 0;
10966
10967
  if (!nameList || nameList.length === 0) {
10967
- filterEntitys = this.fieldEntities;
10968
+ filterEntities = this.fieldEntities;
10968
10969
  } else {
10969
- filterEntitys = this.fieldEntities.filter(
10970
+ filterEntities = this.fieldEntities.filter(
10970
10971
  ({ props: { name } }) => nameList.includes(name)
10971
10972
  );
10972
10973
  }
10973
- for (const entity of filterEntitys) {
10974
+ for (const entity of filterEntities) {
10974
10975
  const { name, rules: rules2 = [] } = entity.props;
10975
10976
  const descriptor = {};
10976
10977
  if (rules2.length) {
@@ -10985,13 +10986,16 @@ var __publicField = (obj, key, value) => {
10985
10986
  }
10986
10987
  const validator = new Schema(descriptor);
10987
10988
  try {
10988
- this.errors[name] = [];
10989
10989
  await validator.validate({ [name]: (_a = this.store) == null ? void 0 : _a[name] });
10990
10990
  } catch ({ errors }) {
10991
10991
  if (errors) {
10992
10992
  errs.push(...errors);
10993
10993
  this.errors[name] = errors;
10994
10994
  }
10995
+ } finally {
10996
+ if (!errs || errs.length === 0) {
10997
+ this.errors[name] = [];
10998
+ }
10995
10999
  }
10996
11000
  entity.onStoreChange("validate");
10997
11001
  }
@@ -11234,6 +11238,7 @@ var __publicField = (obj, key, value) => {
11234
11238
  }
11235
11239
  });
11236
11240
  __publicField(this, "renderLayout", (childNode) => {
11241
+ var _a;
11237
11242
  const {
11238
11243
  label,
11239
11244
  name,
@@ -11259,13 +11264,16 @@ var __publicField = (obj, key, value) => {
11259
11264
  onClick: (e) => this.props.onClick && this.props.onClick(e, this.componentRef)
11260
11265
  },
11261
11266
  label ? /* @__PURE__ */ React.createElement("div", { className: "nut-cell__title nut-form-item__label" }, renderLabel) : null,
11262
- /* @__PURE__ */ React.createElement("div", { className: "nut-cell__value nut-form-item__body" }, /* @__PURE__ */ React.createElement("div", { className: "nut-form-item__body__slots" }, childNode), item && item.length > 0 && /* @__PURE__ */ React.createElement(
11267
+ /* @__PURE__ */ React.createElement("div", { className: "nut-cell__value nut-form-item__body" }, /* @__PURE__ */ React.createElement("div", { className: "nut-form-item__body__slots" }, childNode), /* @__PURE__ */ React.createElement(
11263
11268
  "div",
11264
11269
  {
11265
11270
  className: "nut-form-item__body__tips",
11266
- style: { textAlign: errorMessageAlign }
11271
+ style: {
11272
+ textAlign: errorMessageAlign,
11273
+ display: (item == null ? void 0 : item.length) ? "inherit" : "none"
11274
+ }
11267
11275
  },
11268
- item[0].message
11276
+ (_a = item == null ? void 0 : item[0]) == null ? void 0 : _a.message
11269
11277
  ))
11270
11278
  );
11271
11279
  });
@@ -11792,7 +11800,7 @@ var __publicField = (obj, key, value) => {
11792
11800
  if (!parent.lockScroll)
11793
11801
  return;
11794
11802
  const p = parent.menuRef.current;
11795
- p.getBoundingClientRect().then((rect) => {
11803
+ getRectByTaro(p).then((rect) => {
11796
11804
  if (rect) {
11797
11805
  setPosition({
11798
11806
  height: rect.height,
@@ -13710,7 +13718,7 @@ var __publicField = (obj, key, value) => {
13710
13718
  style: { objectFit: "fill" },
13711
13719
  mode: "aspectFit",
13712
13720
  src: item.url,
13713
- onClick: () => handleItemClick(item)
13721
+ onClick: () => handleItemClick(item, index)
13714
13722
  }
13715
13723
  )) : /* @__PURE__ */ React.createElement(React.Fragment, null, previewUrl ? /* @__PURE__ */ React.createElement(
13716
13724
  components.Image,
@@ -13718,12 +13726,12 @@ var __publicField = (obj, key, value) => {
13718
13726
  className: "nut-uploader__preview-img__c",
13719
13727
  mode: "aspectFit",
13720
13728
  src: previewUrl,
13721
- onClick: () => handleItemClick(item)
13729
+ onClick: () => handleItemClick(item, index)
13722
13730
  }
13723
13731
  ) : /* @__PURE__ */ React.createElement("div", { className: "nut-uploader__preview-img__file" }, /* @__PURE__ */ React.createElement(
13724
13732
  "div",
13725
13733
  {
13726
- onClick: () => handleItemClick(item),
13734
+ onClick: () => handleItemClick(item, index),
13727
13735
  className: "nut-uploader__preview-img__file__name"
13728
13736
  },
13729
13737
  /* @__PURE__ */ React.createElement(a$i, { color: "#808080" }),
@@ -13733,7 +13741,7 @@ var __publicField = (obj, key, value) => {
13733
13741
  "div",
13734
13742
  {
13735
13743
  className: `nut-uploader__preview-img__file__name ${item.status}`,
13736
- onClick: () => handleItemClick(item)
13744
+ onClick: () => handleItemClick(item, index)
13737
13745
  },
13738
13746
  /* @__PURE__ */ React.createElement(a$i, null),
13739
13747
  /* @__PURE__ */ React.createElement("span", null, " ", item.name)
@@ -13967,7 +13975,7 @@ var __publicField = (obj, key, value) => {
13967
13975
  onSuccess == null ? void 0 : onSuccess({
13968
13976
  responseText,
13969
13977
  option,
13970
- fileList: list
13978
+ files: list
13971
13979
  });
13972
13980
  };
13973
13981
  uploadOption.onFailure = (responseText, option) => {
@@ -13983,7 +13991,7 @@ var __publicField = (obj, key, value) => {
13983
13991
  onFailure == null ? void 0 : onFailure({
13984
13992
  responseText,
13985
13993
  option,
13986
- fileList: list
13994
+ files: list
13987
13995
  });
13988
13996
  };
13989
13997
  const task = new UploaderTaro(uploadOption);
@@ -14080,8 +14088,8 @@ var __publicField = (obj, key, value) => {
14080
14088
  const _files = filterFiles(tempFiles);
14081
14089
  readFile(_files);
14082
14090
  };
14083
- const handleItemClick = (file) => {
14084
- onFileItemClick == null ? void 0 : onFileItemClick(file);
14091
+ const handleItemClick = (file, index) => {
14092
+ onFileItemClick == null ? void 0 : onFileItemClick(file, index);
14085
14093
  };
14086
14094
  return /* @__PURE__ */ React.createElement("div", { className: classes, ...restProps }, (children || previewType === "list") && /* @__PURE__ */ React.createElement("div", { className: "nut-uploader__slot" }, /* @__PURE__ */ React.createElement(React.Fragment, null, children || /* @__PURE__ */ React.createElement(Button, { size: "small", type: "primary" }, "上传文件"), maxCount > fileList.length && /* @__PURE__ */ React.createElement(Button, { className: "nut-uploader__input", onClick: _chooseImage }))), /* @__PURE__ */ React.createElement(
14087
14095
  Preview,
@@ -49,6 +49,18 @@
49
49
  color: $picker-item-text-color;
50
50
  font-size: $picker-item-text-font-size;
51
51
  z-index: 3;
52
+
53
+ &-jdapp {
54
+ height: $picker-item-height;
55
+ border: 0;
56
+
57
+ &::before,
58
+ &::after {
59
+ border: $picker-item-active-line-border;
60
+ border-left: 0;
61
+ border-right: 0;
62
+ }
63
+ }
52
64
  }
53
65
 
54
66
  &-list {
@@ -210,7 +210,7 @@
210
210
  top: 0;
211
211
  left: 0;
212
212
  background: transparent;
213
- z-index: 1999;
213
+ z-index: 999;
214
214
  }
215
215
 
216
216
  .nut-popover-wrapper {