@nutui/nutui-react 2.6.19 → 2.6.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.
package/CHANGELOG.md CHANGED
@@ -1,15 +1,31 @@
1
- # v2.6.19
2
- `2024-09-13`
1
+ # v2.6.21
2
+ `2024-09-27`
3
+
4
+
5
+ * 🏡 chore: update dependency linguist-languages to be included within package (#2607)
6
+ * :sparkles: feat(Uploader): add support for deleteIcon prop customization (#2618)
7
+ * :bug: fix: 修改jd小程序高版本弹幕不滚动问题 (#2612)
8
+
3
9
 
10
+ # v2.6.20
4
11
 
5
- * 🏡 chore(deps): update dependency vite-plugin-dts to v4 (#2533)
6
- * :bug: fix(cascader): 受控状态下 value 变化时同步组件选中状态 (#2591)
7
- * :bug: fix: 移除不必要的 fragment 元素 (#2587)
8
- * :bug: fix(datepicker): show zero on page (#2582)
9
- * :bug: fix: findDomNode from transition (#2525)
10
- * :bug: fix(props): add mergeProps utility to resolve all defaultProps warnings (#2581)
11
- * 🪵 refactor: resolve sass nested rules warning (#2579)
12
+ `2024-09-20`
13
+
14
+ - :bug: fix: i18n (#2597)
15
+ - :bug: fix: 类型构建错误 (#2605)
16
+ - 🏡 chore: replace local prettier plugin with npm package (#2603)
17
+
18
+ # v2.6.19
19
+
20
+ `2024-09-13`
12
21
 
22
+ - 🏡 chore(deps): update dependency vite-plugin-dts to v4 (#2533)
23
+ - :bug: fix(cascader): 受控状态下 value 变化时同步组件选中状态 (#2591)
24
+ - :bug: fix: 移除不必要的 fragment 元素 (#2587)
25
+ - :bug: fix(datepicker): show zero on page (#2582)
26
+ - :bug: fix: findDomNode from transition (#2525)
27
+ - :bug: fix(props): add mergeProps utility to resolve all defaultProps warnings (#2581)
28
+ - 🪵 refactor: resolve sass nested rules warning (#2579)
13
29
 
14
30
  # v2.6.18
15
31
 
@@ -6,15 +6,23 @@ import { C as ComponentDefaults } from "./typings.js";
6
6
  import { u as useTouch } from "./use-touch.js";
7
7
  import { p as preventDefault, c as clamp } from "./index.js";
8
8
  import { g as getRect } from "./use-client-rect.js";
9
+ import { u as useConfig } from "./configprovider.taro.js";
9
10
  const defaultProps = Object.assign(Object.assign({}, ComponentDefaults), { maxZoom: 3, space: 10, toolbar: [
10
- React__default.createElement(Button__default, { type: "danger", key: "cancel" }, "取消"),
11
- React__default.createElement(Button__default, { key: "reset" }, "重置"),
12
- React__default.createElement(Button__default, { key: "rotate" }, "旋转"),
13
- React__default.createElement(Button__default, { type: "success", key: "confirm" }, "确认")
14
- ], toolbarPosition: "bottom", editText: "编辑", shape: "square" });
11
+ React__default.createElement(Button__default, { type: "danger", key: "cancel" }, "Cancel"),
12
+ React__default.createElement(Button__default, { key: "reset" }, "Reset"),
13
+ React__default.createElement(Button__default, { key: "rotate" }, "Rotate"),
14
+ React__default.createElement(Button__default, { type: "success", key: "confirm" }, "Confirm")
15
+ ], toolbarPosition: "bottom", editText: "Edit", shape: "square" });
15
16
  const classPrefix = `nut-avatar-cropper`;
16
17
  const AvatarCropper = (props) => {
17
- const _a = Object.assign(Object.assign({}, defaultProps), props), { children, toolbar, maxZoom, space, toolbarPosition, editText, shape, className, style, onConfirm, onCancel } = _a, rest = __rest(_a, ["children", "toolbar", "maxZoom", "space", "toolbarPosition", "editText", "shape", "className", "style", "onConfirm", "onCancel"]);
18
+ const { locale } = useConfig();
19
+ defaultProps.toolbar = [
20
+ React__default.createElement(Button__default, { type: "danger", key: "cancel" }, locale.cancel),
21
+ React__default.createElement(Button__default, { key: "reset" }, locale.reset),
22
+ React__default.createElement(Button__default, { key: "rotate" }, locale.avatarCropper.rotate),
23
+ React__default.createElement(Button__default, { type: "success", key: "confirm" }, locale.confirm)
24
+ ];
25
+ const _a = Object.assign(Object.assign({}, defaultProps), props), { children, maxZoom, space, toolbar, toolbarPosition, editText, shape, className, style, onConfirm, onCancel } = _a, rest = __rest(_a, ["children", "maxZoom", "space", "toolbar", "toolbarPosition", "editText", "shape", "className", "style", "onConfirm", "onCancel"]);
18
26
  const cls = classNames(classPrefix, className, shape === "round" && "round");
19
27
  const toolbarPositionCls = classNames(`${classPrefix}-popup-toolbar`, toolbarPosition);
20
28
  const inputImageRef = useRef(null);
@@ -285,7 +293,7 @@ const AvatarCropper = (props) => {
285
293
  "div",
286
294
  Object.assign({ className: cls }, rest, { style }),
287
295
  children,
288
- React__default.createElement("input", { ref: inputImageRef, type: "file", accept: "image/*", className: `${classPrefix}-input`, onChange: (e) => inputImageChange(e), "aria-label": "选择图片" }),
296
+ React__default.createElement("input", { ref: inputImageRef, type: "file", accept: "image/*", className: `${classPrefix}-input`, onChange: (e) => inputImageChange(e), "aria-label": locale.avatarCropper.selectImage }),
289
297
  React__default.createElement("div", { className: "nut-avatar-cropper-edit-text" }, editText)
290
298
  ),
291
299
  CropperPopup()
@@ -1,11 +1,9 @@
1
1
  import { _ as __rest } from "./tslib.es6.js";
2
2
  import React__default, { useState, useRef, useImperativeHandle, useEffect } from "react";
3
- import { useConfig } from "./ConfigProvider.js";
4
3
  import { C as ComponentDefaults } from "./typings.js";
5
4
  import { p as padZero } from "./pad-zero.js";
6
5
  const defaultProps = Object.assign(Object.assign({}, ComponentDefaults), { paused: false, startTime: Date.now(), endTime: Date.now(), remainingTime: 0, millisecond: false, format: "HH:mm:ss", autoStart: true, time: 0, destroy: false });
7
6
  const InternalCountDown = (props, ref) => {
8
- useConfig();
9
7
  const _a = Object.assign(Object.assign({}, defaultProps), props), { paused, startTime, endTime, remainingTime, millisecond, format, autoStart, time, destroy, className, style, onEnd, onPaused, onRestart, onUpdate, children } = _a, rest = __rest(_a, ["paused", "startTime", "endTime", "remainingTime", "millisecond", "format", "autoStart", "time", "destroy", "className", "style", "onEnd", "onPaused", "onRestart", "onUpdate", "children"]);
10
8
  const classPrefix = "nut-countdown";
11
9
  const [restTimeStamp, setRestTime] = useState(0);
package/dist/esm/Empty.js CHANGED
@@ -1,7 +1,6 @@
1
1
  import { _ as __rest } from "./tslib.es6.js";
2
2
  import React__default, { useState, useEffect } from "react";
3
3
  import classNames from "classnames";
4
- import { useConfig } from "./ConfigProvider.js";
5
4
  import { C as ComponentDefaults } from "./typings.js";
6
5
  import { B as Button } from "./button2.js";
7
6
  const defaultStatus = {
@@ -12,7 +11,6 @@ const defaultStatus = {
12
11
  const defaultProps = Object.assign(Object.assign({}, ComponentDefaults), { title: "", description: "", imageSize: "", size: "base", status: "empty", actions: [] });
13
12
  const classPrefix = `nut-empty`;
14
13
  const Empty = (props) => {
15
- useConfig();
16
14
  const _a = Object.assign(Object.assign({}, defaultProps), props), { image, imageSize, title, description, children, className, size, status, actions } = _a, rest = __rest(_a, ["image", "imageSize", "title", "description", "children", "className", "size", "status", "actions"]);
17
15
  const [imgStyle, setImgStyle] = useState({});
18
16
  const imageUrl = image || defaultStatus[status];
@@ -1,7 +1,7 @@
1
1
  import { _ as __rest } from "./tslib.es6.js";
2
2
  import React__default, { useRef, useState, useEffect, useImperativeHandle } from "react";
3
3
  import classNames from "classnames";
4
- import { Failure, Link, Del, Loading, Photograph } from "@nutui/icons-react";
4
+ import { Link, Del, Failure, Loading, Photograph } from "@nutui/icons-react";
5
5
  import { useConfig } from "./ConfigProvider.js";
6
6
  import { b as isPromise } from "./index.js";
7
7
  import { C as ComponentDefaults } from "./typings.js";
@@ -85,7 +85,7 @@ const funcInterceptor = (interceptor, { args = [], done, canceled }) => {
85
85
  done();
86
86
  }
87
87
  };
88
- const Preview = ({ fileList, previewType, deletable, onDeleteItem, handleItemClick, previewUrl, children }) => {
88
+ const Preview = ({ fileList, previewType, deletable, onDeleteItem, handleItemClick, previewUrl, deleteIcon, children }) => {
89
89
  const renderIcon = (item) => {
90
90
  if (item.status === ERROR) {
91
91
  return item.failIcon || React__default.createElement(Failure, { color: "#fff" });
@@ -97,7 +97,7 @@ const Preview = ({ fileList, previewType, deletable, onDeleteItem, handleItemCli
97
97
  return React__default.createElement(
98
98
  "div",
99
99
  { className: `nut-uploader-preview ${previewType}`, key: item.uid },
100
- previewType === "picture" && !children && deletable && React__default.createElement(Failure, { color: "rgba(0,0,0,0.6)", className: "close", onClick: () => onDeleteItem(item, index) }),
100
+ previewType === "picture" && !children && deletable && React__default.createElement("div", { onClick: () => onDeleteItem(item, index), className: "close" }, deleteIcon),
101
101
  previewType === "picture" && !children && React__default.createElement(
102
102
  "div",
103
103
  { className: "nut-uploader-preview-img" },
@@ -151,19 +151,19 @@ const Preview = ({ fileList, previewType, deletable, onDeleteItem, handleItemCli
151
151
  class FileItem {
152
152
  constructor() {
153
153
  this.status = "ready";
154
- this.message = "准备中..";
154
+ this.message = "";
155
155
  this.uid = (/* @__PURE__ */ new Date()).getTime().toString();
156
156
  this.percentage = 0;
157
157
  this.formData = {};
158
158
  }
159
159
  }
160
- const defaultProps = Object.assign(Object.assign({}, ComponentDefaults), { url: "", maxCount: 1, previewType: "picture", fit: "cover", name: "file", accept: "*", disabled: false, autoUpload: true, multiple: false, maxFileSize: Number.MAX_VALUE, data: {}, headers: {}, method: "post", xhrState: 200, timeout: 1e3 * 30, withCredentials: false, clearInput: true, preview: true, deletable: true, capture: false, uploadIcon: React__default.createElement(Photograph, { width: "20px", height: "20px", color: "#808080" }), beforeDelete: (file, files) => {
160
+ const defaultProps = Object.assign(Object.assign({}, ComponentDefaults), { url: "", maxCount: 1, previewType: "picture", fit: "cover", name: "file", accept: "*", disabled: false, autoUpload: true, multiple: false, maxFileSize: Number.MAX_VALUE, data: {}, headers: {}, method: "post", xhrState: 200, timeout: 1e3 * 30, withCredentials: false, clearInput: true, preview: true, deletable: true, capture: false, uploadIcon: React__default.createElement(Photograph, { width: "20px", height: "20px", color: "#808080" }), deleteIcon: React__default.createElement(Failure, { color: "rgba(0,0,0,0.6)" }), beforeDelete: (file, files) => {
161
161
  return true;
162
162
  } });
163
163
  const InternalUploader = (props, ref) => {
164
164
  const { locale } = useConfig();
165
165
  const fileListRef = useRef([]);
166
- const _a = Object.assign(Object.assign({}, defaultProps), props), { children, uploadIcon, uploadLabel, name, accept, defaultValue, value, previewType, fit, disabled, multiple, url, previewUrl, headers, timeout, method, xhrState, withCredentials, data, preview, deletable, maxCount, capture, maxFileSize, className, autoUpload, clearInput, onStart, onDelete, onChange, onFileItemClick, onProgress, onSuccess, onUpdate, onFailure, onOversize, beforeUpload, beforeXhrUpload, beforeDelete } = _a, restProps = __rest(_a, ["children", "uploadIcon", "uploadLabel", "name", "accept", "defaultValue", "value", "previewType", "fit", "disabled", "multiple", "url", "previewUrl", "headers", "timeout", "method", "xhrState", "withCredentials", "data", "preview", "deletable", "maxCount", "capture", "maxFileSize", "className", "autoUpload", "clearInput", "onStart", "onDelete", "onChange", "onFileItemClick", "onProgress", "onSuccess", "onUpdate", "onFailure", "onOversize", "beforeUpload", "beforeXhrUpload", "beforeDelete"]);
166
+ const _a = Object.assign(Object.assign({}, defaultProps), props), { children, uploadIcon, deleteIcon, uploadLabel, name, accept, defaultValue, value, previewType, fit, disabled, multiple, url, previewUrl, headers, timeout, method, xhrState, withCredentials, data, preview, deletable, maxCount, capture, maxFileSize, className, autoUpload, clearInput, onStart, onDelete, onChange, onFileItemClick, onProgress, onSuccess, onUpdate, onFailure, onOversize, beforeUpload, beforeXhrUpload, beforeDelete } = _a, restProps = __rest(_a, ["children", "uploadIcon", "deleteIcon", "uploadLabel", "name", "accept", "defaultValue", "value", "previewType", "fit", "disabled", "multiple", "url", "previewUrl", "headers", "timeout", "method", "xhrState", "withCredentials", "data", "preview", "deletable", "maxCount", "capture", "maxFileSize", "className", "autoUpload", "clearInput", "onStart", "onDelete", "onChange", "onFileItemClick", "onProgress", "onSuccess", "onUpdate", "onFailure", "onOversize", "beforeUpload", "beforeXhrUpload", "beforeDelete"]);
167
167
  const [fileList, setFileList] = usePropsValue({
168
168
  value,
169
169
  defaultValue,
@@ -369,7 +369,7 @@ const InternalUploader = (props, ref) => {
369
369
  (children || previewType === "list") && React__default.createElement(
370
370
  "div",
371
371
  { className: "nut-uploader-slot" },
372
- children || React__default.createElement(Button__default, { size: "small", type: "primary" }, "上传文件"),
372
+ children || React__default.createElement(Button__default, { size: "small", type: "primary" }, locale.uploader.list),
373
373
  Number(maxCount) > fileList.length && React__default.createElement("input", { className: "nut-uploader-input", type: "file", capture, name, accept, disabled, multiple, onChange: fileChange })
374
374
  ),
375
375
  React__default.createElement(Preview, {
@@ -379,7 +379,8 @@ const InternalUploader = (props, ref) => {
379
379
  onDeleteItem,
380
380
  handleItemClick,
381
381
  previewUrl,
382
- children
382
+ children,
383
+ deleteIcon
383
384
  }),
384
385
  Number(maxCount) > fileList.length && previewType === "picture" && !children && React__default.createElement(
385
386
  "div",
@@ -6,6 +6,7 @@ import { P as Popup } from "./popup2.js";
6
6
  import { T as Tabs } from "./tabs2.js";
7
7
  import { C as ComponentDefaults } from "./typings.js";
8
8
  import { u as usePropsValue } from "./use-props-value.js";
9
+ import { u as useConfig } from "./configprovider.taro.js";
9
10
  const formatTree = (tree, parent, config) => tree.map((node) => {
10
11
  const { value: valueKey = "value", text: textKey = "text", children: childrenKey = "children" } = config;
11
12
  const _a = node, _b = valueKey, value = _a[_b], _c = textKey, text = _a[_c], _d = childrenKey, children = _a[_d], others = __rest(_a, [typeof _b === "symbol" ? _b : _b + "", typeof _c === "symbol" ? _c : _c + "", typeof _d === "symbol" ? _d : _d + ""]);
@@ -124,6 +125,7 @@ const defaultProps = Object.assign(Object.assign({}, ComponentDefaults), { activ
124
125
  }, onPathChange: () => {
125
126
  } });
126
127
  const InternalCascader = (props, ref) => {
128
+ const { locale } = useConfig();
127
129
  const { className, style, activeColor, activeIcon, popup, popupProps = {}, visible, options, value, defaultValue, optionKey, format, closeable, closeIconPosition, closeIcon, lazy, title, left, onLoad, onClose, onChange, onPathChange } = Object.assign(Object.assign({}, defaultProps), props);
128
130
  const [tabvalue, setTabvalue] = useState("c1");
129
131
  const [optionsData, setOptionsData] = useState([]);
@@ -379,7 +381,7 @@ const InternalCascader = (props, ref) => {
379
381
  "span",
380
382
  { className: "nut-tabs-titles-item-text" },
381
383
  !state.initLoading && state.panes.length && ((_a = pane === null || pane === void 0 ? void 0 : pane.selectedNode) === null || _a === void 0 ? void 0 : _a.text),
382
- !state.initLoading && state.panes.length && !((_b = pane === null || pane === void 0 ? void 0 : pane.selectedNode) === null || _b === void 0 ? void 0 : _b.text) && "请选择",
384
+ !state.initLoading && state.panes.length && !((_b = pane === null || pane === void 0 ? void 0 : pane.selectedNode) === null || _b === void 0 ? void 0 : _b.text) && `${locale.select}`,
383
385
  !(!state.initLoading && state.panes.length) && "Loading..."
384
386
  ),
385
387
  React__default.createElement("span", { className: "nut-tabs-titles-item-line" })
@@ -0,0 +1,23 @@
1
+ import "./tslib.es6.js";
2
+ import { createContext, useContext } from "react";
3
+ import "classnames";
4
+ import "lodash.kebabcase";
5
+ import "lodash.isequal";
6
+ import { z as zhCN } from "./zh-CN.js";
7
+ const defaultConfigRef = {
8
+ current: {
9
+ locale: zhCN,
10
+ direction: "ltr"
11
+ }
12
+ };
13
+ const getDefaultConfig = () => {
14
+ return defaultConfigRef.current;
15
+ };
16
+ const ConfigContext = createContext(null);
17
+ const useConfig = () => {
18
+ var _a;
19
+ return (_a = useContext(ConfigContext)) !== null && _a !== void 0 ? _a : getDefaultConfig();
20
+ };
21
+ export {
22
+ useConfig as u
23
+ };
@@ -4,6 +4,7 @@ import React__default, { createContext, useContext } from "react";
4
4
  import classNames from "classnames";
5
5
  import kebabCase from "lodash.kebabcase";
6
6
  import isequal from "lodash.isequal";
7
+ import { z as zhCN } from "./zh-CN.js";
7
8
  import { i as inBrowser } from "./raf.js";
8
9
  function useMemo(getValue, condition, shouldUpdate) {
9
10
  const cacheRef = React.useRef({});
@@ -13,140 +14,6 @@ function useMemo(getValue, condition, shouldUpdate) {
13
14
  }
14
15
  return cacheRef.current.value;
15
16
  }
16
- const zhCN = {
17
- save: "保存",
18
- confirm: "确认",
19
- cancel: "取消",
20
- done: "完成",
21
- noData: "暂无数据",
22
- placeholder: "请输入内容",
23
- select: "请选择",
24
- video: {
25
- errorTip: "视频加载失败",
26
- clickRetry: "点击重试"
27
- },
28
- fixednav: {
29
- activeText: "收起导航",
30
- inactiveText: "快速导航"
31
- },
32
- infiniteloading: {
33
- pullRefreshText: "松开刷新",
34
- loadText: "加载中",
35
- loadMoreText: "没有更多了"
36
- },
37
- pagination: {
38
- prev: "上一页",
39
- next: "下一页"
40
- },
41
- range: {
42
- rangeText: "不在该区间内"
43
- },
44
- calendaritem: {
45
- weekdays: ["日", "一", "二", "三", "四", "五", "六"],
46
- end: "结束",
47
- start: "开始",
48
- confirm: "确认",
49
- title: "日历选择",
50
- monthTitle: (year, month) => `${year}年${Number(month) < 10 ? `0${Number(month)}` : month}月`,
51
- today: "今天",
52
- loadPreviousMonth: "加载上一个月",
53
- noEarlierMonth: "没有更早月份"
54
- },
55
- shortpassword: {
56
- title: "请输入密码",
57
- description: "您使用了虚拟资产,请进行验证",
58
- tips: "忘记密码"
59
- },
60
- uploader: {
61
- ready: "准备完成",
62
- readyUpload: "准备上传",
63
- waitingUpload: "等待上传",
64
- uploading: "上传中...",
65
- success: "上传成功",
66
- error: "上传失败",
67
- deleteWord: "用户阻止了删除!"
68
- },
69
- countdown: {
70
- day: "天",
71
- hour: "时",
72
- minute: "分",
73
- second: "秒"
74
- },
75
- address: {
76
- selectRegion: "请选择地址",
77
- deliveryTo: "配送至",
78
- chooseAnotherAddress: "选择其他地址"
79
- },
80
- signature: {
81
- reSign: "重签",
82
- unsupported: "对不起,当前浏览器不支持Canvas,无法使用本控件!"
83
- },
84
- ecard: {
85
- chooseText: "请选择电子卡面值",
86
- otherValueText: "其他面值",
87
- placeholder: "请输入1-5000整数"
88
- },
89
- timeselect: {
90
- pickupTime: "取件时间"
91
- },
92
- sku: {
93
- buyNow: "立即购买",
94
- buyNumber: "购买数量",
95
- addToCard: "加入购物车"
96
- },
97
- skuheader: {
98
- skuId: "商品编号"
99
- },
100
- addresslist: {
101
- addAddress: "新建地址"
102
- },
103
- comment: {
104
- complaintsText: "我要投诉",
105
- additionalReview: (day) => `购买${day}天后追评`,
106
- additionalImages: (length) => `${length}张追评图片`
107
- },
108
- searchbar: {
109
- basePlaceholder: "上京东,购好物",
110
- text: "文本",
111
- test: "测试",
112
- title1: "基础用法",
113
- title2: "搜索框形状及最大长度",
114
- title3: "搜索框内外背景设置",
115
- title4: "搜索框文本设置",
116
- title5: "自定义图标设置",
117
- title6: "数据改变监听"
118
- },
119
- audio: {
120
- back: "快退",
121
- forward: "快进",
122
- pause: "暂停",
123
- start: "开始",
124
- mute: "静音",
125
- tips: "onPlayEnd事件在loop=false时才会触发"
126
- },
127
- datepicker: {
128
- year: "年",
129
- month: "月",
130
- day: "日",
131
- hour: "时",
132
- min: "分",
133
- seconds: "秒"
134
- },
135
- pullToRefresh: {
136
- pullingText: "下拉刷新",
137
- canReleaseText: "松手刷新",
138
- refreshingText: "刷新中",
139
- completeText: "刷新成功"
140
- },
141
- tour: {
142
- prevStepText: "上一步",
143
- completeText: "完成",
144
- nextStepText: "下一步"
145
- },
146
- watermark: {
147
- errorCanvasTips: "当前环境不支持Canvas"
148
- }
149
- };
150
17
  const classPrefix = "nut-configprovider";
151
18
  const defaultConfigRef = {
152
19
  current: {
@@ -1,7 +1,6 @@
1
1
  import { _ as __rest } from "./tslib.es6.js";
2
2
  import React__default, { useContext } from "react";
3
3
  import classNames from "classnames";
4
- import { useConfig } from "./ConfigProvider.js";
5
4
  import { p as pxCheck } from "./px-check.js";
6
5
  const gridContext = {
7
6
  onClick: (item, index) => {
@@ -18,7 +17,6 @@ const defaultProps = {
18
17
  direction: "vertical"
19
18
  };
20
19
  const GridItem = (props) => {
21
- useConfig();
22
20
  const _a = Object.assign(Object.assign({}, defaultProps), props), { children, style, columns, index, gap, square, text, center, reverse, direction, className, onClick } = _a, rest = __rest(_a, ["children", "style", "columns", "index", "gap", "square", "text", "center", "reverse", "direction", "className", "onClick"]);
23
21
  const classPrefix = "nut-grid-item";
24
22
  const classes = classNames(classPrefix, className);
@@ -0,0 +1,141 @@
1
+ const zhCN = {
2
+ save: "保存",
3
+ confirm: "确认",
4
+ cancel: "取消",
5
+ done: "完成",
6
+ noData: "暂无数据",
7
+ placeholder: "请输入内容",
8
+ select: "请选择",
9
+ edit: "编辑",
10
+ reset: "重置",
11
+ video: {
12
+ errorTip: "视频加载失败",
13
+ clickRetry: "点击重试"
14
+ },
15
+ fixednav: {
16
+ activeText: "收起导航",
17
+ inactiveText: "快速导航"
18
+ },
19
+ infiniteloading: {
20
+ pullRefreshText: "松开刷新",
21
+ loadText: "加载中",
22
+ loadMoreText: "没有更多了"
23
+ },
24
+ pagination: {
25
+ prev: "上一页",
26
+ next: "下一页"
27
+ },
28
+ range: {
29
+ rangeText: "不在该区间内"
30
+ },
31
+ calendaritem: {
32
+ weekdays: ["日", "一", "二", "三", "四", "五", "六"],
33
+ end: "结束",
34
+ start: "开始",
35
+ confirm: "确认",
36
+ title: "日历选择",
37
+ monthTitle: (year, month) => `${year}年${Number(month) < 10 ? `0${Number(month)}` : month}月`,
38
+ today: "今天",
39
+ loadPreviousMonth: "加载上一个月",
40
+ noEarlierMonth: "没有更早月份"
41
+ },
42
+ shortpassword: {
43
+ title: "请输入密码",
44
+ description: "您使用了虚拟资产,请进行验证",
45
+ tips: "忘记密码"
46
+ },
47
+ uploader: {
48
+ list: "上传文件",
49
+ ready: "准备完成",
50
+ readyUpload: "准备上传",
51
+ waitingUpload: "等待上传",
52
+ uploading: "上传中...",
53
+ success: "上传成功",
54
+ error: "上传失败",
55
+ deleteWord: "用户阻止了删除!"
56
+ },
57
+ countdown: {
58
+ day: "天",
59
+ hour: "时",
60
+ minute: "分",
61
+ second: "秒"
62
+ },
63
+ address: {
64
+ selectRegion: "请选择地址",
65
+ deliveryTo: "配送至",
66
+ chooseAnotherAddress: "选择其他地址"
67
+ },
68
+ signature: {
69
+ reSign: "重签",
70
+ unsupported: "对不起,当前浏览器不支持Canvas,无法使用本控件!"
71
+ },
72
+ ecard: {
73
+ chooseText: "请选择电子卡面值",
74
+ otherValueText: "其他面值",
75
+ placeholder: "请输入1-5000整数"
76
+ },
77
+ timeselect: {
78
+ pickupTime: "取件时间"
79
+ },
80
+ sku: {
81
+ buyNow: "立即购买",
82
+ buyNumber: "购买数量",
83
+ addToCard: "加入购物车"
84
+ },
85
+ skuheader: {
86
+ skuId: "商品编号"
87
+ },
88
+ addresslist: {
89
+ addAddress: "新建地址"
90
+ },
91
+ comment: {
92
+ complaintsText: "我要投诉",
93
+ additionalReview: (day) => `购买${day}天后追评`,
94
+ additionalImages: (length) => `${length}张追评图片`
95
+ },
96
+ searchbar: {
97
+ basePlaceholder: "上京东,购好物",
98
+ text: "文本",
99
+ test: "测试",
100
+ title1: "基础用法",
101
+ title2: "搜索框形状及最大长度",
102
+ title3: "搜索框内外背景设置",
103
+ title4: "搜索框文本设置",
104
+ title5: "自定义图标设置",
105
+ title6: "数据改变监听"
106
+ },
107
+ audio: {
108
+ back: "快退",
109
+ forward: "快进",
110
+ pause: "暂停",
111
+ start: "开始",
112
+ mute: "静音",
113
+ tips: "onPlayEnd事件在loop=false时才会触发"
114
+ },
115
+ avatarCropper: { rotate: "旋转", selectImage: "选择图片" },
116
+ datepicker: {
117
+ year: "年",
118
+ month: "月",
119
+ day: "日",
120
+ hour: "时",
121
+ min: "分",
122
+ seconds: "秒"
123
+ },
124
+ pullToRefresh: {
125
+ pullingText: "下拉刷新",
126
+ canReleaseText: "松手刷新",
127
+ refreshingText: "刷新中",
128
+ completeText: "刷新成功"
129
+ },
130
+ tour: {
131
+ prevStepText: "上一步",
132
+ completeText: "完成",
133
+ nextStepText: "下一步"
134
+ },
135
+ watermark: {
136
+ errorCanvasTips: "当前环境不支持Canvas"
137
+ }
138
+ };
139
+ export {
140
+ zhCN as z
141
+ };
@@ -6,6 +6,8 @@ export interface BaseLang {
6
6
  noData: string;
7
7
  placeholder: string;
8
8
  select: string;
9
+ edit: string;
10
+ reset: string;
9
11
  video: {
10
12
  errorTip: string;
11
13
  clickRetry: string;
@@ -43,6 +45,7 @@ export interface BaseLang {
43
45
  tips: string;
44
46
  };
45
47
  uploader: {
48
+ list: string;
46
49
  ready: string;
47
50
  readyUpload: string;
48
51
  waitingUpload: string;
@@ -109,6 +112,10 @@ export interface BaseLang {
109
112
  mute: string;
110
113
  tips: string;
111
114
  };
115
+ avatarCropper: {
116
+ rotate: string;
117
+ selectImage: string;
118
+ };
112
119
  datepicker: {
113
120
  year: string;
114
121
  month: string;
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui-react v2.6.19 Fri Sep 13 2024 15:44:33 GMT+0800 (China Standard Time)
2
+ * @nutui/nutui-react v2.6.21 Fri Sep 27 2024 14:10:08 GMT+0800 (China Standard Time)
3
3
  * (c) 2023 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui-react v2.6.19 Fri Sep 13 2024 15:44:33 GMT+0800 (China Standard Time)
2
+ * @nutui/nutui-react v2.6.21 Fri Sep 27 2024 14:10:08 GMT+0800 (China Standard Time)
3
3
  * (c) 2023 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -11,6 +11,8 @@ const o = {
11
11
  noData: "No Data",
12
12
  placeholder: "Placeholder",
13
13
  select: "Select",
14
+ edit: "Edit",
15
+ reset: "Reset",
14
16
  video: {
15
17
  errorTip: "Error Tip",
16
18
  clickRetry: "Click Retry"
@@ -46,6 +48,7 @@ const o = {
46
48
  tips: "Forget password"
47
49
  },
48
50
  uploader: {
51
+ list: "Upload Files",
49
52
  ready: "Ready",
50
53
  readyUpload: "Ready to upload",
51
54
  waitingUpload: "Waiting for upload",
@@ -112,6 +115,7 @@ const o = {
112
115
  mute: "mute",
113
116
  tips: "The onplayend event will only be triggered when loop = false"
114
117
  },
118
+ avatarCropper: { rotate: "Rotate", selectImage: "Select Image" },
115
119
  datepicker: {
116
120
  year: "Year",
117
121
  month: "Month",
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui-react v2.6.19 Fri Sep 13 2024 15:44:33 GMT+0800 (China Standard Time)
2
+ * @nutui/nutui-react v2.6.21 Fri Sep 27 2024 14:10:08 GMT+0800 (China Standard Time)
3
3
  * (c) 2023 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -11,6 +11,8 @@ const n = {
11
11
  noData: "Tidak Ada Data",
12
12
  placeholder: "Kolom Input",
13
13
  select: "Pilih",
14
+ edit: "Sunting",
15
+ reset: "Mengatur Ulang",
14
16
  video: {
15
17
  errorTip: "Terjadi Kesalahan",
16
18
  clickRetry: "Coba Lagi"
@@ -46,6 +48,7 @@ const n = {
46
48
  tips: "Lupa Kata Sandi"
47
49
  },
48
50
  uploader: {
51
+ list: "Unggah file",
49
52
  ready: "File berhasil diunggah",
50
53
  readyUpload: "Siap untuk mengunggah",
51
54
  waitingUpload: "Menunggu untuk diunggah",
@@ -112,6 +115,7 @@ const n = {
112
115
  mute: "bisu",
113
116
  tips: "Acara Onplayend hanya akan dipicu saat loop = false"
114
117
  },
118
+ avatarCropper: { rotate: "Memutar", selectImage: "Pilih gambar" },
115
119
  datepicker: {
116
120
  year: "Tahun",
117
121
  month: "Bulan",