niuma-ui 2.0.3 → 2.0.4
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 +38 -0
- package/dist/components/_shared/src/reka.d.ts +1 -1
- package/dist/components/_shared/src/reka.js +2 -2
- package/dist/components/anchor/index.d.ts +1 -1
- package/dist/components/anchor/src/RsAnchor.css +63 -32
- package/dist/components/anchor/src/RsAnchor.d.ts +29 -2
- package/dist/components/anchor/src/RsAnchor.impl.js +199 -81
- package/dist/components/anchor/src/RsAnchor.js +1 -1
- package/dist/components/anchor/src/anchor-utils.d.ts +36 -4
- package/dist/components/anchor/src/anchor-utils.js +81 -19
- package/dist/components/auto-complete/index.d.ts +2 -0
- package/dist/components/auto-complete/src/RsAutoComplete.css +122 -0
- package/dist/components/auto-complete/src/RsAutoComplete.d.ts +47 -7
- package/dist/components/auto-complete/src/RsAutoComplete.impl.js +180 -72
- package/dist/components/auto-complete/src/RsAutoComplete.js +4 -1
- package/dist/components/auto-complete/src/auto-complete-utils.d.ts +7 -0
- package/dist/components/auto-complete/src/auto-complete-utils.js +17 -0
- package/dist/components/avatar/index.d.ts +1 -0
- package/dist/components/avatar/src/RsAvatar.css +36 -19
- package/dist/components/avatar/src/RsAvatar.d.ts +9 -3
- package/dist/components/avatar/src/RsAvatar.impl.js +57 -33
- package/dist/components/avatar/src/RsAvatar.js +2 -1
- package/dist/components/avatar/src/avatar-utils.d.ts +16 -7
- package/dist/components/avatar/src/avatar-utils.js +41 -3
- package/dist/components/breadcrumb/index.d.ts +1 -1
- package/dist/components/breadcrumb/src/RsBreadcrumb.css +50 -17
- package/dist/components/breadcrumb/src/RsBreadcrumb.d.ts +45 -6
- package/dist/components/breadcrumb/src/RsBreadcrumb.impl.js +111 -12
- package/dist/components/breadcrumb/src/RsBreadcrumb.js +2 -1
- package/dist/components/breadcrumb/src/breadcrumb-utils.d.ts +37 -5
- package/dist/components/breadcrumb/src/breadcrumb-utils.js +70 -9
- package/dist/components/calendar-grid/index.d.ts +2 -0
- package/dist/components/calendar-grid/src/RsCalendarGrid.css +105 -45
- package/dist/components/calendar-grid/src/RsCalendarGrid.d.ts +62 -2
- package/dist/components/calendar-grid/src/RsCalendarGrid.impl.js +265 -94
- package/dist/components/calendar-grid/src/RsCalendarGrid.js +1 -1
- package/dist/components/calendar-grid/src/calendar-grid-utils.d.ts +72 -0
- package/dist/components/calendar-grid/src/calendar-grid-utils.js +122 -0
- package/dist/components/card/index.d.ts +1 -1
- package/dist/components/card/src/RsCard.css +108 -98
- package/dist/components/card/src/RsCard.d.ts +3 -12
- package/dist/components/card/src/RsCard.impl.js +29 -25
- package/dist/components/card/src/RsCard.js +2 -1
- package/dist/components/card/src/card-utils.d.ts +25 -0
- package/dist/components/card/src/card-utils.js +10 -0
- package/dist/components/cascader/index.d.ts +1 -0
- package/dist/components/cascader/src/RsCascader.css +175 -30
- package/dist/components/cascader/src/RsCascader.d.ts +15 -3
- package/dist/components/cascader/src/RsCascader.impl.js +277 -48
- package/dist/components/cascader/src/RsCascader.js +1 -1
- package/dist/components/cascader/src/cascader-utils.d.ts +2 -0
- package/dist/components/cascader/src/cascader-utils.js +8 -1
- package/dist/components/checkbox/index.d.ts +1 -0
- package/dist/components/checkbox/src/RsCheckbox.css +46 -23
- package/dist/components/checkbox/src/RsCheckbox.d.ts +11 -1
- package/dist/components/checkbox/src/RsCheckbox.impl.js +37 -9
- package/dist/components/checkbox/src/RsCheckbox.js +2 -1
- package/dist/components/checkbox/src/checkbox-utils.d.ts +4 -0
- package/dist/components/checkbox/src/checkbox-utils.js +12 -0
- package/dist/components/container/index.d.ts +1 -1
- package/dist/components/container/src/RsContainer.css +11 -11
- package/dist/components/container/src/RsContainer.d.ts +2 -12
- package/dist/components/container/src/RsContainer.impl.js +10 -57
- package/dist/components/container/src/RsContainer.js +1 -1
- package/dist/components/container/src/container-utils.d.ts +23 -0
- package/dist/components/container/src/container-utils.js +51 -0
- package/dist/components/date-picker/index.d.ts +4 -2
- package/dist/components/date-picker/src/RsDatePicker.css +42 -22
- package/dist/components/date-picker/src/RsDatePicker.d.ts +44 -20
- package/dist/components/date-picker/src/RsDatePicker.impl.js +484 -222
- package/dist/components/date-picker/src/RsDatePicker.js +1 -3
- package/dist/components/date-picker/src/RsDateTimePicker.d.ts +33 -6
- package/dist/components/date-picker/src/RsDateTimePicker.impl.js +47 -6
- package/dist/components/date-picker/src/date-picker-utils.d.ts +19 -0
- package/dist/components/date-picker/src/date-picker-utils.js +33 -10
- package/dist/components/dynamic-tags/index.d.ts +1 -1
- package/dist/components/dynamic-tags/src/RsDynamicTags.css +115 -38
- package/dist/components/dynamic-tags/src/RsDynamicTags.d.ts +58 -17
- package/dist/components/dynamic-tags/src/RsDynamicTags.impl.js +269 -106
- package/dist/components/dynamic-tags/src/RsDynamicTags.js +1 -1
- package/dist/components/dynamic-tags/src/dynamic-tags-utils.d.ts +19 -0
- package/dist/components/dynamic-tags/src/dynamic-tags-utils.js +60 -0
- package/dist/components/fieldset/src/RsFieldset.css +71 -41
- package/dist/components/fieldset/src/RsFieldset.d.ts +21 -2
- package/dist/components/fieldset/src/RsFieldset.impl.js +93 -26
- package/dist/components/fieldset/src/RsFieldset.js +1 -1
- package/dist/components/fieldset/src/fieldset-utils.d.ts +4 -0
- package/dist/components/fieldset/src/fieldset-utils.js +9 -1
- package/dist/components/form/index.d.ts +1 -0
- package/dist/components/form/src/RsForm.css +15 -12
- package/dist/components/form/src/RsForm.d.ts +20 -22
- package/dist/components/form/src/RsForm.impl.js +33 -20
- package/dist/components/form/src/RsForm.js +1 -1
- package/dist/components/form/src/form-utils.d.ts +7 -0
- package/dist/components/form/src/form-utils.js +28 -1
- package/dist/components/input/index.d.ts +1 -1
- package/dist/components/input/src/RsInput.css +78 -260
- package/dist/components/input/src/RsInput.d.ts +5 -3
- package/dist/components/input/src/RsInput.impl.js +8 -16
- package/dist/components/input/src/RsInput.js +1 -1
- package/dist/components/input/src/input-utils.d.ts +11 -0
- package/dist/components/input/src/input-utils.js +22 -0
- package/dist/components/input-number/index.d.ts +1 -0
- package/dist/components/input-number/src/RsInputNumber.css +31 -31
- package/dist/components/input-number/src/RsInputNumber.d.ts +15 -13
- package/dist/components/input-number/src/RsInputNumber.impl.js +17 -4
- package/dist/components/input-number/src/RsInputNumber.js +1 -1
- package/dist/components/label/src/RsLabel.css +30 -11
- package/dist/components/label/src/RsLabel.d.ts +18 -1
- package/dist/components/label/src/RsLabel.impl.js +63 -10
- package/dist/components/label/src/RsLabel.js +1 -1
- package/dist/components/label/src/label-utils.d.ts +6 -0
- package/dist/components/label/src/label-utils.js +16 -0
- package/dist/components/link/src/RsLink.d.ts +2 -2
- package/dist/components/loading/src/RsLoading.d.ts +1 -1
- package/dist/components/mentions/index.d.ts +2 -1
- package/dist/components/mentions/src/RsMentions.css +119 -3
- package/dist/components/mentions/src/RsMentions.d.ts +56 -4
- package/dist/components/mentions/src/RsMentions.impl.js +298 -79
- package/dist/components/mentions/src/RsMentions.js +1 -3
- package/dist/components/mentions/src/mentions-utils.d.ts +5 -1
- package/dist/components/mentions/src/mentions-utils.js +28 -9
- package/dist/components/popover/src/RsPopover.d.ts +1 -1
- package/dist/components/radio/index.d.ts +1 -1
- package/dist/components/radio/src/RsRadio.css +7 -6
- package/dist/components/radio/src/RsRadio.d.ts +8 -5
- package/dist/components/radio/src/RsRadio.impl.js +34 -24
- package/dist/components/radio/src/RsRadio.js +2 -1
- package/dist/components/radio/src/RsRadioItem.css +61 -44
- package/dist/components/radio/src/RsRadioItem.d.ts +2 -2
- package/dist/components/radio/src/RsRadioItem.impl.js +53 -20
- package/dist/components/radio/src/RsRadioItem.js +2 -1
- package/dist/components/radio/src/radio-utils.d.ts +12 -1
- package/dist/components/radio/src/radio-utils.js +15 -1
- package/dist/components/scrollbar/src/RsScrollbar.css +71 -24
- package/dist/components/scrollbar/src/RsScrollbar.d.ts +9 -5
- package/dist/components/scrollbar/src/RsScrollbar.impl.js +372 -47
- package/dist/components/scrollbar/src/RsScrollbar.js +2 -1
- package/dist/components/scrollbar/src/scrollbar-utils.d.ts +34 -2
- package/dist/components/scrollbar/src/scrollbar-utils.js +64 -1
- package/dist/components/select/index.d.ts +1 -0
- package/dist/components/select/src/RsSelect.css +54 -42
- package/dist/components/select/src/RsSelect.d.ts +19 -2
- package/dist/components/select/src/RsSelect.impl.js +727 -312
- package/dist/components/select/src/RsSelect.js +1 -1
- package/dist/components/select/src/select-utils.d.ts +4 -2
- package/dist/components/select/src/select-utils.js +8 -3
- package/dist/components/select/src/use-rs-select.d.ts +1 -0
- package/dist/components/select/src/use-rs-select.js +23 -17
- package/dist/components/switch/index.d.ts +2 -1
- package/dist/components/switch/src/RsSwitch.css +36 -18
- package/dist/components/switch/src/RsSwitch.d.ts +18 -5
- package/dist/components/switch/src/RsSwitch.impl.js +61 -29
- package/dist/components/switch/src/RsSwitch.js +2 -1
- package/dist/components/switch/src/switch-utils.d.ts +4 -0
- package/dist/components/switch/src/switch-utils.js +9 -0
- package/dist/components/textarea/src/RsTextarea.css +23 -23
- package/dist/components/textarea/src/RsTextarea.d.ts +6 -12
- package/dist/components/textarea/src/RsTextarea.impl.js +37 -46
- package/dist/components/textarea/src/RsTextarea.js +1 -1
- package/dist/components/textarea/src/textarea-utils.d.ts +27 -0
- package/dist/components/textarea/src/textarea-utils.js +61 -0
- package/dist/components/time-picker/index.d.ts +3 -2
- package/dist/components/time-picker/src/RsTimePicker.css +41 -24
- package/dist/components/time-picker/src/RsTimePicker.d.ts +52 -7
- package/dist/components/time-picker/src/RsTimePicker.impl.js +520 -156
- package/dist/components/time-picker/src/RsTimePicker.js +1 -3
- package/dist/components/time-picker/src/RsTimePickerColumns.css +26 -18
- package/dist/components/time-picker/src/RsTimePickerColumns.d.ts +3 -1
- package/dist/components/time-picker/src/RsTimePickerColumns.impl.js +62 -9
- package/dist/components/time-picker/src/RsTimePickerColumns.js +1 -1
- package/dist/components/time-picker/src/time-picker-utils.d.ts +38 -0
- package/dist/components/time-picker/src/time-picker-utils.js +97 -5
- package/dist/components/toaster/src/RsToaster.d.ts +1 -1
- package/dist/components/tooltip/src/RsTooltip.d.ts +1 -1
- package/dist/components/tree/src/RsTree.d.ts +3 -3
- package/dist/components/tree-select/index.d.ts +2 -0
- package/dist/components/tree-select/src/RsTreeSelect.css +100 -25
- package/dist/components/tree-select/src/RsTreeSelect.d.ts +91 -7
- package/dist/components/tree-select/src/RsTreeSelect.impl.js +464 -79
- package/dist/components/tree-select/src/RsTreeSelect.js +1 -1
- package/dist/components/tree-select/src/tree-select-utils.d.ts +20 -0
- package/dist/components/tree-select/src/tree-select-utils.js +60 -0
- package/dist/components/upload/index.d.ts +2 -1
- package/dist/components/upload/src/RsUpload.css +223 -75
- package/dist/components/upload/src/RsUpload.d.ts +77 -1
- package/dist/components/upload/src/RsUpload.impl.js +404 -90
- package/dist/components/upload/src/RsUpload.js +1 -1
- package/dist/components/upload/src/upload-utils.d.ts +21 -2
- package/dist/components/upload/src/upload-utils.js +139 -9
- package/dist/index.d.ts +21 -11
- package/dist/index.js +6 -0
- package/dist/locale/messages.js +46 -2
- package/dist/styles.css +518 -154
- package/dist/theme/brand.example.css +1 -1
- package/package.json +1 -1
- package/dist/components/breadcrumb/src/RsBreadcrumbItems.d.ts +0 -8
- package/dist/components/breadcrumb/src/RsBreadcrumbItems.impl.js +0 -40
- package/dist/components/breadcrumb/src/RsBreadcrumbItems.js +0 -5
- package/dist/components/date-picker/src/RsDatePicker-1.css +0 -157
- package/dist/components/mentions/src/RsMentions-1.css +0 -29
- package/dist/components/time-picker/src/RsTimePicker-1.css +0 -98
|
@@ -1,8 +1,24 @@
|
|
|
1
1
|
//#region src/components/upload/src/upload-utils.ts
|
|
2
|
-
function formatFileSize(size) {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
function formatFileSize(size, locale) {
|
|
3
|
+
const abs = Number.isFinite(size) ? Math.max(0, size) : 0;
|
|
4
|
+
const units = [
|
|
5
|
+
"B",
|
|
6
|
+
"KB",
|
|
7
|
+
"MB",
|
|
8
|
+
"GB",
|
|
9
|
+
"TB"
|
|
10
|
+
];
|
|
11
|
+
let value = abs;
|
|
12
|
+
let unit = 0;
|
|
13
|
+
while (value >= 1024 && unit < units.length - 1) {
|
|
14
|
+
value /= 1024;
|
|
15
|
+
unit += 1;
|
|
16
|
+
}
|
|
17
|
+
if (unit === 0) return `${Math.round(value)} B`;
|
|
18
|
+
return `${locale ? new Intl.NumberFormat(locale, {
|
|
19
|
+
minimumFractionDigits: 1,
|
|
20
|
+
maximumFractionDigits: 1
|
|
21
|
+
}).format(value) : value.toFixed(1)} ${units[unit]}`;
|
|
6
22
|
}
|
|
7
23
|
function isFileAccepted(file, accept) {
|
|
8
24
|
if (!accept) return true;
|
|
@@ -40,17 +56,131 @@ function mergeUploadFiles(current, next, maxCount) {
|
|
|
40
56
|
function removeUploadFileAt(files, index) {
|
|
41
57
|
return files.filter((_, currentIndex) => currentIndex !== index);
|
|
42
58
|
}
|
|
43
|
-
|
|
59
|
+
function isSameUploadFile(left, right) {
|
|
60
|
+
return left.name === right.name && left.size === right.size && left.lastModified === right.lastModified && left.type === right.type;
|
|
61
|
+
}
|
|
62
|
+
function skipDuplicateUploadFiles(current, incoming) {
|
|
63
|
+
return incoming.filter((file) => !current.some((item) => isSameUploadFile(item, file)));
|
|
64
|
+
}
|
|
65
|
+
function resolveUploadCapture(capture) {
|
|
66
|
+
if (capture === true) return "environment";
|
|
67
|
+
if (capture === "user" || capture === "environment") return capture;
|
|
68
|
+
}
|
|
69
|
+
function isImageUploadFile(file) {
|
|
70
|
+
if (file.type.startsWith("image/")) return true;
|
|
71
|
+
return resolveUploadFileIcon(file) === "file-image";
|
|
72
|
+
}
|
|
73
|
+
function asFileSystemEntry(item) {
|
|
74
|
+
const getter = item.webkitGetAsEntry;
|
|
75
|
+
if (typeof getter !== "function") return null;
|
|
76
|
+
return getter.call(item);
|
|
77
|
+
}
|
|
78
|
+
function droppedDataHasDirectory(data) {
|
|
79
|
+
const items = data?.items;
|
|
80
|
+
if (!items?.length) return false;
|
|
81
|
+
return Array.from(items).some((item) => asFileSystemEntry(item)?.isDirectory);
|
|
82
|
+
}
|
|
83
|
+
function readFileEntry(entry) {
|
|
84
|
+
return new Promise((resolve) => {
|
|
85
|
+
if (!entry.file) {
|
|
86
|
+
resolve(null);
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
entry.file((file) => resolve(file), () => resolve(null));
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
function readDirectoryEntries(entry) {
|
|
93
|
+
const reader = entry.createReader?.();
|
|
94
|
+
if (!reader) return Promise.resolve([]);
|
|
95
|
+
const collected = [];
|
|
96
|
+
return new Promise((resolve) => {
|
|
97
|
+
const pump = () => {
|
|
98
|
+
reader.readEntries((batch) => {
|
|
99
|
+
if (!batch.length) {
|
|
100
|
+
resolve(collected);
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
collected.push(...batch);
|
|
104
|
+
pump();
|
|
105
|
+
}, () => resolve(collected));
|
|
106
|
+
};
|
|
107
|
+
pump();
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
async function collectEntryFiles(entry, output) {
|
|
111
|
+
if (entry.isFile) {
|
|
112
|
+
const file = await readFileEntry(entry);
|
|
113
|
+
if (file) output.push(file);
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
if (!entry.isDirectory) return;
|
|
117
|
+
const children = await readDirectoryEntries(entry);
|
|
118
|
+
for (const child of children) await collectEntryFiles(child, output);
|
|
119
|
+
}
|
|
120
|
+
/** 读取拖入的 File。文件夹走 webkitGetAsEntry;否则回退 dataTransfer.files。 */
|
|
121
|
+
async function collectDroppedFiles(data) {
|
|
122
|
+
if (!data) return [];
|
|
123
|
+
const fromList = Array.from(data.files ?? []);
|
|
124
|
+
const items = data.items;
|
|
125
|
+
if (!items?.length) return fromList;
|
|
126
|
+
const entries = Array.from(items).map((item) => asFileSystemEntry(item)).filter((entry) => Boolean(entry));
|
|
127
|
+
if (!entries.length) return fromList;
|
|
128
|
+
const files = [];
|
|
129
|
+
for (const entry of entries) await collectEntryFiles(entry, files);
|
|
130
|
+
return files.length ? files : fromList;
|
|
131
|
+
}
|
|
132
|
+
function nextUploadPreviewUrls(current, files, enabled, createUrl) {
|
|
133
|
+
const live = new Set(files);
|
|
134
|
+
const next = /* @__PURE__ */ new Map();
|
|
135
|
+
const revoked = [];
|
|
136
|
+
if (!enabled) {
|
|
137
|
+
revoked.push(...current.values());
|
|
138
|
+
return {
|
|
139
|
+
next,
|
|
140
|
+
revoked
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
for (const [file, url] of current) if (live.has(file)) next.set(file, url);
|
|
144
|
+
else revoked.push(url);
|
|
145
|
+
for (const file of files) {
|
|
146
|
+
if (!isImageUploadFile(file) || next.has(file)) continue;
|
|
147
|
+
const url = createUrl(file);
|
|
148
|
+
if (url) next.set(file, url);
|
|
149
|
+
}
|
|
150
|
+
return {
|
|
151
|
+
next,
|
|
152
|
+
revoked
|
|
153
|
+
};
|
|
154
|
+
}
|
|
155
|
+
function pruneBrokenUploadPreview(broken, files) {
|
|
156
|
+
const live = new Set(files);
|
|
157
|
+
return new Set([...broken].filter((file) => live.has(file)));
|
|
158
|
+
}
|
|
159
|
+
function createUploadObjectUrl(file) {
|
|
160
|
+
if (typeof URL === "undefined" || typeof URL.createObjectURL !== "function") return "";
|
|
161
|
+
return URL.createObjectURL(file);
|
|
162
|
+
}
|
|
163
|
+
function revokeUploadObjectUrl(url) {
|
|
164
|
+
if (!url || typeof URL === "undefined" || typeof URL.revokeObjectURL !== "function") return;
|
|
165
|
+
URL.revokeObjectURL(url);
|
|
166
|
+
}
|
|
167
|
+
/** 触发浏览器下载指定 File / Blob。无 document 时空操作。延迟 revoke,避免下载被中断。 */
|
|
44
168
|
function downloadUploadFile(file, filename) {
|
|
169
|
+
if (typeof document === "undefined" || typeof URL === "undefined") return;
|
|
45
170
|
const name = filename || (file instanceof File ? file.name : "download");
|
|
46
|
-
const url =
|
|
171
|
+
const url = createUploadObjectUrl(file);
|
|
172
|
+
if (!url) return;
|
|
47
173
|
const link = document.createElement("a");
|
|
48
174
|
link.href = url;
|
|
49
175
|
link.download = name;
|
|
50
176
|
document.body.appendChild(link);
|
|
51
177
|
link.click();
|
|
52
|
-
|
|
53
|
-
|
|
178
|
+
link.remove();
|
|
179
|
+
if (typeof window === "undefined") {
|
|
180
|
+
revokeUploadObjectUrl(url);
|
|
181
|
+
return;
|
|
182
|
+
}
|
|
183
|
+
window.setTimeout(() => revokeUploadObjectUrl(url), 1500);
|
|
54
184
|
}
|
|
55
185
|
/** 将文本等内容还原为可回显的 File(编辑态回填) */
|
|
56
186
|
function createUploadFileFromContent(name, content, type = "application/octet-stream") {
|
|
@@ -174,4 +304,4 @@ function resolveUploadFileIcon(file) {
|
|
|
174
304
|
return "file";
|
|
175
305
|
}
|
|
176
306
|
//#endregion
|
|
177
|
-
export { createUploadFileFromContent, downloadUploadFile, formatFileSize, isFileAccepted, mergeUploadFiles, removeUploadFileAt, resolveUploadFileIcon, validateUploadFiles };
|
|
307
|
+
export { collectDroppedFiles, createUploadFileFromContent, createUploadObjectUrl, downloadUploadFile, droppedDataHasDirectory, formatFileSize, isFileAccepted, isImageUploadFile, isSameUploadFile, mergeUploadFiles, nextUploadPreviewUrls, pruneBrokenUploadPreview, removeUploadFileAt, resolveUploadCapture, resolveUploadFileIcon, revokeUploadObjectUrl, skipDuplicateUploadFiles, validateUploadFiles };
|
package/dist/index.d.ts
CHANGED
|
@@ -4,22 +4,23 @@ export type { RsBadgeVariant } from './components/badge';
|
|
|
4
4
|
export { RsContainer } from './components/container';
|
|
5
5
|
export { RsBreadcrumb } from './components/breadcrumb';
|
|
6
6
|
export { RsAnchor } from './components/anchor';
|
|
7
|
-
export type { RsAnchorFlatItem, RsAnchorItem } from './components/anchor';
|
|
7
|
+
export type { RsAnchorDirection, RsAnchorExpose, RsAnchorFlatItem, RsAnchorInstance, RsAnchorItem, RsAnchorScrollBehavior, } from './components/anchor';
|
|
8
8
|
export { flattenAnchorItems, hrefToAnchorId, pickActiveAnchorHref, } from './components/anchor';
|
|
9
9
|
export { RsToolbar } from './components/toolbar';
|
|
10
10
|
export { RsButton } from './components/button';
|
|
11
11
|
export type { RsButtonTone, RsButtonVariant } from './components/button';
|
|
12
12
|
export { isRsButtonFilledVariant, resolveRsButtonTone, resolveRsButtonVariant, supportsRsButtonTone, } from './components/button';
|
|
13
13
|
export { RsCheckbox } from './components/checkbox';
|
|
14
|
+
export type { RsCheckboxExpose, RsCheckboxInstance } from './components/checkbox';
|
|
14
15
|
export { RsSwitch } from './components/switch';
|
|
15
|
-
export type { RsSwitchValue } from './components/switch';
|
|
16
|
+
export type { RsSwitchExpose, RsSwitchInstance, RsSwitchValue } from './components/switch';
|
|
16
17
|
export { RsRadio } from './components/radio';
|
|
17
18
|
export { RsRadioItem } from './components/radio';
|
|
18
|
-
export type { RsRadioValue } from './components/radio';
|
|
19
|
+
export type { RsRadioOrientation, RsRadioValue } from './components/radio';
|
|
19
20
|
export { RsTag } from './components/tag';
|
|
20
21
|
export type { RsTagVariant } from './components/tag';
|
|
21
22
|
export { RsDynamicTags } from './components/dynamic-tags';
|
|
22
|
-
export type { RsDynamicTagsInputMode, RsDynamicTagsRejectReason, } from './components/dynamic-tags';
|
|
23
|
+
export type { RsDynamicTagsExpose, RsDynamicTagsInputMode, RsDynamicTagsInstance, RsDynamicTagsParse, RsDynamicTagsRejectReason, } from './components/dynamic-tags';
|
|
23
24
|
export { RsAlert } from './components/alert';
|
|
24
25
|
export { RsDivider } from './components/divider';
|
|
25
26
|
export type { RsDividerOrientation } from './components/divider';
|
|
@@ -32,23 +33,29 @@ export type { RsLoadingBarApi } from './composables/useRsLoadingBar';
|
|
|
32
33
|
export { RsDropdown } from './components/dropdown';
|
|
33
34
|
export { RsIcon } from './components/icon';
|
|
34
35
|
export { RsInput } from './components/input';
|
|
35
|
-
export type { RsInputExpose, RsInputInstance } from './components/input';
|
|
36
|
+
export type { RsInputExpose, RsInputInstance, RsInputType } from './components/input';
|
|
36
37
|
export { RsTextarea } from './components/textarea';
|
|
37
38
|
export type { RsTextareaAutosize, RsTextareaExpose, RsTextareaInstance, RsTextareaResize, } from './components/textarea';
|
|
38
39
|
export { RsInputNumber } from './components/input-number';
|
|
39
|
-
export type { RsInputNumberValue } from './components/input-number';
|
|
40
|
+
export type { RsInputNumberExpose, RsInputNumberInstance, RsInputNumberValue, } from './components/input-number';
|
|
40
41
|
export { clampNumber, formatNumberValue, fromModelValue, isNumberInputInterim, normalizeCommittedNumber, parseNumberInput, resolveNumberPrecision, roundToPrecision, stepNumberValue, toModelValue, } from './components/input-number';
|
|
41
42
|
export { RsLabel } from './components/label';
|
|
42
43
|
export { RsLink } from './components/link';
|
|
43
44
|
export type { RsLinkTone, RsLinkUnderline } from './components/link';
|
|
44
45
|
export { RsMenu } from './components/menu';
|
|
45
46
|
export { RsSelect } from './components/select';
|
|
47
|
+
export type { RsSelectExpose, RsSelectInstance } from './components/select';
|
|
46
48
|
export { RsAutoComplete } from './components/auto-complete';
|
|
49
|
+
export type { RsAutoCompleteExpose, RsAutoCompleteInstance, RsAutoCompleteFilterOption, RsAutoCompleteOption, RsAutoCompleteOptionInput, } from './components/auto-complete';
|
|
47
50
|
export { RsCascader } from './components/cascader';
|
|
51
|
+
export type { RsCascaderExpose, RsCascaderInstance } from './components/cascader';
|
|
48
52
|
export { RsTreeSelect } from './components/tree-select';
|
|
53
|
+
export type { RsTreeSelectExpose, RsTreeSelectGetPopupContainer, RsTreeSelectInstance, RsTreeSelectModelValue, RsTreeSelectShowCheckedStrategy, } from './components/tree-select';
|
|
49
54
|
export { RsMentions } from './components/mentions';
|
|
55
|
+
export type { RsMentionsExpose, RsMentionsInstance } from './components/mentions';
|
|
50
56
|
export { RsScrollbar } from './components/scrollbar';
|
|
51
57
|
export { RsAvatar } from './components/avatar';
|
|
58
|
+
export type { RsAvatarShape, RsAvatarSize, RsAvatarTone } from './components/avatar';
|
|
52
59
|
export { RsCard } from './components/card';
|
|
53
60
|
export type { RsCardSize, RsCardVariant } from './components/card';
|
|
54
61
|
export { RsEmpty } from './components/empty';
|
|
@@ -77,6 +84,7 @@ export { RsDatePicker } from './components/date-picker';
|
|
|
77
84
|
export { RsDateTimePicker } from './components/date-picker';
|
|
78
85
|
export { RsTimePicker } from './components/time-picker';
|
|
79
86
|
export { RsCalendarGrid } from './components/calendar-grid';
|
|
87
|
+
export type { RsCalendarCell, RsCalendarGridCellSlot, RsCalendarGridExpose, RsCalendarGridInstance, } from './components/calendar-grid';
|
|
80
88
|
export { RsTimePickerColumns } from './components/time-picker';
|
|
81
89
|
export { RsSidebar } from './components/sidebar';
|
|
82
90
|
export { RsSidebarGroup } from './components/sidebar';
|
|
@@ -90,6 +98,7 @@ export { RsPagination } from './components/pagination';
|
|
|
90
98
|
export type { RsPaginationSize } from './components/pagination';
|
|
91
99
|
export { RsTree } from './components/tree';
|
|
92
100
|
export { RsUpload } from './components/upload';
|
|
101
|
+
export type { RsUploadBeforeRemove, RsUploadBeforeSelect, RsUploadCapture, RsUploadExpose, RsUploadInstance, RsUploadListType, RsUploadVariant, } from './components/upload';
|
|
93
102
|
export { RsVirtualList } from './components/virtual-list';
|
|
94
103
|
export { RsCodeEditor } from './components/code-editor';
|
|
95
104
|
export { RsMonacoEditor } from './components/monaco-editor';
|
|
@@ -120,11 +129,12 @@ export type { RsMenuItem, RsMenuItemGroup, RsMenuItems } from './components/menu
|
|
|
120
129
|
export type { RsScrollbarOrientation, RsScrollbarType } from './components/scrollbar';
|
|
121
130
|
export type { RsSelectFieldNames, RsSelectFilterOption, RsSelectFilterSort, RsSelectGetPopupContainer, RsSelectLabeledValue, RsSelectModelValue, RsSelectResolvedModel, RsSelectOption, RsSelectOptionFilterProp, RsSelectOptionGroup, RsSelectOptionInput, RsSelectOptions, RsSelectOptionsInput, RsSelectPlacement, RsSelectStatus, RsSelectMaxTagCount, RsSelectVariant, RsSelectValue, } from './components/select';
|
|
122
131
|
export type { RsCascaderExpandTrigger, RsCascaderOption, RsCascaderPath, } from './components/cascader';
|
|
123
|
-
export type { RsMentionActive, RsMentionCaretBox, RsMentionOption, RsMentionPopupBox, } from './components/mentions';
|
|
132
|
+
export type { RsMentionActive, RsMentionCaretBox, RsMentionFilterOption, RsMentionOption, RsMentionOptionInput, RsMentionPopupBox, } from './components/mentions';
|
|
124
133
|
export { RS_SELECT_EMPTY_VALUE, fromComboboxValue, isSelectLabeledValue, normalizeSelectOptions, optionDisplayLabel, packSelectModel, restoreSelectValue, toComboboxValue, unwrapSelectEntry, } from './components/select';
|
|
125
134
|
export type { RsFeedbackTone, RsToastPosition, RsToastType, RsOverlayAnchorBox, RsOverlayBox } from './components/_shared';
|
|
126
135
|
export { RS_TOAST_DEFAULT_GAP, RS_TOAST_DEFAULT_POSITION, rsToastPositions, rsFeedbackIconClass, placeAnchoredPopup, stepEnabledIndex } from './components/_shared';
|
|
127
136
|
export type { RsFormContext, RsFormErrorRender, RsFormErrorRenderContext, RsFormFieldExpose, RsFormItemContext, RsFormListContext, RsFormListField, RsFormListOperations, RsFormFieldValidationResult, RsFormGap, RsFormLabelAlign, RsFormLabelPosition, RsFormMaxWidth, RsFormSize, RsFormValidateStatus, RsFormValidationResult, } from './components/form';
|
|
137
|
+
export type { RsFormExpose, RsFormInstance } from './components/form';
|
|
128
138
|
export { cloneFormFieldValue, isRsFormItemBoundControl, provideRsFormItemContext, provideRsFormListContext, RS_FORM_INJECTION_KEY, RS_FORM_ITEM_INJECTION_KEY, RS_FORM_LIST_INJECTION_KEY, resolveFieldRules, useRsFormContext, useRsFormField, useRsFormItemContext, useRsFormListContext, } from './components/form';
|
|
129
139
|
export type { RsFormNamePath } from './components/form';
|
|
130
140
|
export { concatNamePath, getByNamePath, hasByNamePath, isIndexSegment, namePathKey, normalizeNamePath, setByNamePath, } from './components/form';
|
|
@@ -196,12 +206,12 @@ export type { RsVirtualListItemSize } from './components/virtual-list';
|
|
|
196
206
|
export { resolveItemSize, resolveVirtualListHeight } from './components/virtual-list';
|
|
197
207
|
export type { RsCodeEditorDiagnostic, RsCodeEditorLanguage, RsCodeEditorSqlColumn, RsCodeEditorSqlConfig, RsCodeEditorSqlDialect, RsCodeEditorSqlNamespace, RsCodeEditorTheme, RsResolvedCodeEditorTheme, } from './components/code-editor';
|
|
198
208
|
export { codeEditorLanguageLabel, readDocumentTheme, resolveCodeEditorLanguage, resolveCodeEditorSize, resolveCodeEditorTheme, } from './components/code-editor';
|
|
199
|
-
export type { RsDatePickerModelValue, RsDatePickerShortcut, RsDatePickerTimestampRange, RsDatePickerValueConvertOptions, RsDatePickerValueFormat, RsDatePickerValueFormatPreset, RsDateRangeValue, RsParsedDate, RsParsedDateTime, } from './components/date-picker';
|
|
200
|
-
export { EMPTY_DATE_RANGE, formatDateDisplay, formatDateParts, formatDateRangeDisplay, formatDateTimeDisplay, formatDateTimeValue, formatDateValue, fromInternalPickerValue, isDateRangeEmpty, isDateRangeOrdered, isDateTimeRangeOrdered, parseDateTimeValue, parseDateValue, RS_DATE_PICKER_VALUE_FORMAT_PRESETS, toInternalPickerValue, toRangeEndpointString, } from './components/date-picker';
|
|
209
|
+
export type { RsDatePickerDisabledDate, RsDatePickerExpose, RsDatePickerGetPopupContainer, RsDatePickerInstance, RsDatePickerLabelPosition, RsDatePickerModelValue, RsDatePickerShortcut, RsDatePickerTimestampRange, RsDatePickerValueConvertOptions, RsDatePickerValueFormat, RsDatePickerValueFormatPreset, RsDateRangeValue, RsDateTimePickerExpose, RsDateTimePickerInstance, RsDateTimePickerLabelPosition, RsDateTimeRangeValue, RsParsedDate, RsParsedDateTime, RsWeekStartsOn, } from './components/date-picker';
|
|
210
|
+
export { EMPTY_DATE_RANGE, formatDateDisplay, formatDateParts, formatDateRangeDisplay, formatDateTimeDisplay, formatDateTimeValue, formatDateValue, formatPickerDisplay, fromInternalPickerValue, isDateRangeEmpty, isDateRangeOrdered, isDateTimeRangeOrdered, parseDateTimeValue, parseDateValue, resolveWeekStartsOn, RS_DATE_PICKER_VALUE_FORMAT_PRESETS, toInternalPickerValue, toRangeEndpointString, } from './components/date-picker';
|
|
201
211
|
export { RS_DATE_FORMAT, RS_DATETIME_FORMAT, RS_TIME_MINUTE_FORMAT, RS_TIME_SECONDS_FORMAT, } from './utils/rs-dayjs';
|
|
202
212
|
export { formatIsoUtcToLocal, looksLikeIsoDateTimeWithTz, parseLocalDateTimeToUtcIso, } from './utils/iso-local-datetime';
|
|
203
|
-
export type { RsParsedTime, RsTimeRangeValue, RsTimeUnit, RsTimeUnitOption } from './components/time-picker';
|
|
204
|
-
export { EMPTY_TIME_RANGE, TIME_HOUR_OPTIONS, TIME_SECOND_OPTIONS, formatTimeFromParts, formatTimeParts, formatTimeRangeDisplay, formatTimeUnitLabel, formatTimeValue, getTimeMinuteOptions, isTimeRangeEmpty, isTimeRangeOrdered, isTimeWithinBounds, parseTimeValue, scrollTimeColumnToValue, } from './components/time-picker';
|
|
213
|
+
export type { RsParsedTime, RsTimePickerDisabledTime, RsTimePickerExpose, RsTimePickerGetPopupContainer, RsTimePickerHourCycle, RsTimePickerInstance, RsTimePickerLabelPosition, RsTimePickerModelValue, RsTimePickerShortcut, RsTimeRangeValue, RsTimeUnit, RsTimeUnitOption, } from './components/time-picker';
|
|
214
|
+
export { EMPTY_TIME_RANGE, TIME_HOUR12_OPTIONS, TIME_HOUR_OPTIONS, TIME_SECOND_OPTIONS, formatTimeDisplay, formatTimeFromParts, formatTimeParts, formatTimeRangeDisplay, formatTimeUnitLabel, formatTimeValue, getTimeMinuteOptions, isTimeRangeEmpty, isTimeRangeOrdered, isTimeWithinBounds, parseTimeValue, scrollTimeColumnToValue, toHour12, toHour24, } from './components/time-picker';
|
|
205
215
|
export type { RsDateTimeValidationError, RsDateTimeValidationResult, RsDateTimeValidationRules, RsDateValidationError, RsDateValidationResult, RsDateValidationRules, } from './components/date-picker';
|
|
206
216
|
export { validateDateTimeValue, validateDateValue } from './components/date-picker';
|
|
207
217
|
export type { RsTimeValidationError, RsTimeValidationResult, RsTimeValidationRules } from './components/time-picker';
|
package/dist/index.js
CHANGED
|
@@ -126,6 +126,7 @@ export { default as RsTree } from './components/tree/src/RsTree.js'
|
|
|
126
126
|
export { default as RsTreeSelect } from './components/tree-select/src/RsTreeSelect.js'
|
|
127
127
|
export { default as RsUpload } from './components/upload/src/RsUpload.js'
|
|
128
128
|
export { default as RsVirtualList } from './components/virtual-list/src/RsVirtualList.js'
|
|
129
|
+
export { TIME_HOUR12_OPTIONS } from './components/time-picker/src/time-picker-utils.js'
|
|
129
130
|
export { TIME_HOUR_OPTIONS } from './components/time-picker/src/time-picker-utils.js'
|
|
130
131
|
export { TIME_SECOND_OPTIONS } from './components/time-picker/src/time-picker-utils.js'
|
|
131
132
|
export { aggregateColumnSummary } from './components/table/src/utils/table-summary-utils.js'
|
|
@@ -210,6 +211,8 @@ export { formatFileSize } from './components/upload/src/upload-utils.js'
|
|
|
210
211
|
export { formatIsoUtcToLocal } from './utils/iso-local-datetime.js'
|
|
211
212
|
export { formatLogTime } from './components/log/src/log-utils.js'
|
|
212
213
|
export { formatNumberValue } from './components/input-number/src/input-number-utils.js'
|
|
214
|
+
export { formatPickerDisplay } from './components/date-picker/src/date-picker-utils.js'
|
|
215
|
+
export { formatTimeDisplay } from './components/time-picker/src/time-picker-utils.js'
|
|
213
216
|
export { formatTimeFromParts } from './components/time-picker/src/time-picker-utils.js'
|
|
214
217
|
export { formatTimeParts } from './components/time-picker/src/time-picker-utils.js'
|
|
215
218
|
export { formatTimeRangeDisplay } from './components/time-picker/src/time-picker-utils.js'
|
|
@@ -395,6 +398,7 @@ export { resolveTreeVirtualEnabled } from './components/tree/src/tree-utils.js'
|
|
|
395
398
|
export { resolveUploadFileIcon } from './components/upload/src/upload-utils.js'
|
|
396
399
|
export { resolveVirtualListHeight } from './components/virtual-list/src/virtual-list-utils.js'
|
|
397
400
|
export { resolveVisibleTabValues } from './components/tabs/src/tabs-utils.js'
|
|
401
|
+
export { resolveWeekStartsOn } from './components/date-picker/src/date-picker-utils.js'
|
|
398
402
|
export { restoreSelectValue } from './components/select/src/select-utils.js'
|
|
399
403
|
export { roundToPrecision } from './components/input-number/src/input-number-utils.js'
|
|
400
404
|
export { rsBrandIconAccentVar } from './icons/brand.js'
|
|
@@ -435,6 +439,8 @@ export { syslogSeverityOf } from './components/log/src/log-utils.js'
|
|
|
435
439
|
export { terminalShortcutLabel } from './components/terminal/src/terminal-utils.js'
|
|
436
440
|
export { themePresets } from './theme/presets.js'
|
|
437
441
|
export { toComboboxValue } from './components/select/src/select-utils.js'
|
|
442
|
+
export { toHour12 } from './components/time-picker/src/time-picker-utils.js'
|
|
443
|
+
export { toHour24 } from './components/time-picker/src/time-picker-utils.js'
|
|
438
444
|
export { toInternalPickerValue } from './components/date-picker/src/date-picker-utils.js'
|
|
439
445
|
export { toLogLineInput } from './components/log/src/log-utils.js'
|
|
440
446
|
export { toModelValue } from './components/input-number/src/input-number-utils.js'
|
package/dist/locale/messages.js
CHANGED
|
@@ -7,17 +7,23 @@ var zhCN = {
|
|
|
7
7
|
"select.clear": "清空",
|
|
8
8
|
"select.createOption": "使用 “{query}”",
|
|
9
9
|
"select.maxTagPlaceholder": "+{count}",
|
|
10
|
+
"select.listbox": "选项列表",
|
|
10
11
|
"mentions.placeholder": "输入 @ 提及",
|
|
11
12
|
"mentions.suggestions": "提及建议",
|
|
13
|
+
"autocomplete.placeholder": "输入以搜索",
|
|
12
14
|
"autocomplete.suggestions": "自动完成建议",
|
|
13
15
|
"dropdown.placeholder": "请选择",
|
|
14
16
|
"breadcrumb.label": "面包屑",
|
|
15
|
-
"anchor.label": "本页目录",
|
|
16
17
|
"breadcrumb.separator": "分隔符",
|
|
18
|
+
"breadcrumb.more": "显示更多层级",
|
|
19
|
+
"anchor.label": "本页目录",
|
|
17
20
|
"menu.label": "导航菜单",
|
|
18
21
|
"menu.expandSubmenu": "展开子菜单",
|
|
19
22
|
"menu.collapseSubmenu": "收起子菜单",
|
|
20
23
|
"input.required": "此项为必填",
|
|
24
|
+
"label.required": "必填",
|
|
25
|
+
"label.optional": "(选填)",
|
|
26
|
+
"label.colon": ":",
|
|
21
27
|
"form.field": "此项",
|
|
22
28
|
"form.validate.required": "请填写{label}",
|
|
23
29
|
"form.list.add": "添加",
|
|
@@ -43,12 +49,15 @@ var zhCN = {
|
|
|
43
49
|
"dialog.fullscreen": "全屏",
|
|
44
50
|
"dialog.restore": "还原",
|
|
45
51
|
"tag.close": "关闭标签",
|
|
52
|
+
"scrollbar.viewport": "滚动区域",
|
|
46
53
|
"alert.close": "关闭提示",
|
|
47
54
|
"dynamicTags.label": "标签编辑",
|
|
48
55
|
"dynamicTags.placeholder": "输入后回车添加",
|
|
49
56
|
"dynamicTags.add": "添加标签",
|
|
57
|
+
"dynamicTags.clear": "清空标签",
|
|
50
58
|
"dynamicTags.duplicate": "标签已存在",
|
|
51
59
|
"dynamicTags.maxReached": "已达数量上限",
|
|
60
|
+
"dynamicTags.invalid": "标签无效",
|
|
52
61
|
"confirm.title": "确认操作?",
|
|
53
62
|
"confirm.description": "此操作可能无法撤销,请确认后继续。",
|
|
54
63
|
"loading.label": "加载中",
|
|
@@ -103,6 +112,16 @@ var zhCN = {
|
|
|
103
112
|
"upload.browse": "或点击浏览本地文件",
|
|
104
113
|
"upload.download": "下载文件",
|
|
105
114
|
"upload.dropActive": "松开以添加文件",
|
|
115
|
+
"upload.button": "选择文件",
|
|
116
|
+
"upload.add": "添加文件",
|
|
117
|
+
"upload.preview": "预览文件",
|
|
118
|
+
"upload.fileList": "已选文件",
|
|
119
|
+
"calendarGrid.label": "月历",
|
|
120
|
+
"calendarGrid.prevYear": "上一年",
|
|
121
|
+
"calendarGrid.nextYear": "下一年",
|
|
122
|
+
"calendarGrid.prevMonth": "上个月",
|
|
123
|
+
"calendarGrid.nextMonth": "下个月",
|
|
124
|
+
"calendarGrid.week": "周",
|
|
106
125
|
"datePicker.placeholder": "选择日期",
|
|
107
126
|
"datePicker.rangePlaceholder": "选择日期范围",
|
|
108
127
|
"datePicker.clear": "清空日期",
|
|
@@ -137,6 +156,9 @@ var zhCN = {
|
|
|
137
156
|
"timePicker.separator": " ~ ",
|
|
138
157
|
"timePicker.rangeStart": "开始时间",
|
|
139
158
|
"timePicker.rangeEnd": "结束时间",
|
|
159
|
+
"timePicker.am": "上午",
|
|
160
|
+
"timePicker.pm": "下午",
|
|
161
|
+
"timePicker.period": "上午/下午",
|
|
140
162
|
"tree.label": "树形控件",
|
|
141
163
|
"tree.expand": "展开节点",
|
|
142
164
|
"tree.collapse": "收起节点",
|
|
@@ -240,17 +262,23 @@ var enUS = {
|
|
|
240
262
|
"select.clear": "Clear",
|
|
241
263
|
"select.createOption": "Use “{query}”",
|
|
242
264
|
"select.maxTagPlaceholder": "+{count}",
|
|
265
|
+
"select.listbox": "Options",
|
|
243
266
|
"mentions.placeholder": "Type @ to mention",
|
|
244
267
|
"mentions.suggestions": "Mention suggestions",
|
|
268
|
+
"autocomplete.placeholder": "Type to search",
|
|
245
269
|
"autocomplete.suggestions": "Autocomplete suggestions",
|
|
246
270
|
"dropdown.placeholder": "Select",
|
|
247
271
|
"breadcrumb.label": "Breadcrumb",
|
|
248
|
-
"anchor.label": "On this page",
|
|
249
272
|
"breadcrumb.separator": "Separator",
|
|
273
|
+
"breadcrumb.more": "Show more levels",
|
|
274
|
+
"anchor.label": "On this page",
|
|
250
275
|
"menu.label": "Navigation menu",
|
|
251
276
|
"menu.expandSubmenu": "Expand submenu",
|
|
252
277
|
"menu.collapseSubmenu": "Collapse submenu",
|
|
253
278
|
"input.required": "This field is required",
|
|
279
|
+
"label.required": "required",
|
|
280
|
+
"label.optional": "(optional)",
|
|
281
|
+
"label.colon": ":",
|
|
254
282
|
"form.field": "This field",
|
|
255
283
|
"form.validate.required": "Please enter {label}",
|
|
256
284
|
"form.list.add": "Add",
|
|
@@ -276,12 +304,15 @@ var enUS = {
|
|
|
276
304
|
"dialog.fullscreen": "Fullscreen",
|
|
277
305
|
"dialog.restore": "Restore",
|
|
278
306
|
"tag.close": "Close tag",
|
|
307
|
+
"scrollbar.viewport": "Scrollable area",
|
|
279
308
|
"alert.close": "Dismiss alert",
|
|
280
309
|
"dynamicTags.label": "Editable tags",
|
|
281
310
|
"dynamicTags.placeholder": "Type and press Enter",
|
|
282
311
|
"dynamicTags.add": "Add tag",
|
|
312
|
+
"dynamicTags.clear": "Clear tags",
|
|
283
313
|
"dynamicTags.duplicate": "Tag already exists",
|
|
284
314
|
"dynamicTags.maxReached": "Maximum number of tags reached",
|
|
315
|
+
"dynamicTags.invalid": "Invalid tag",
|
|
285
316
|
"confirm.title": "Confirm action?",
|
|
286
317
|
"confirm.description": "This action may not be reversible. Please confirm before continuing.",
|
|
287
318
|
"loading.label": "Loading",
|
|
@@ -336,6 +367,16 @@ var enUS = {
|
|
|
336
367
|
"upload.browse": "or click to browse files",
|
|
337
368
|
"upload.download": "Download file",
|
|
338
369
|
"upload.dropActive": "Drop files to upload",
|
|
370
|
+
"upload.button": "Choose files",
|
|
371
|
+
"upload.add": "Add files",
|
|
372
|
+
"upload.preview": "Preview file",
|
|
373
|
+
"upload.fileList": "Selected files",
|
|
374
|
+
"calendarGrid.label": "Calendar",
|
|
375
|
+
"calendarGrid.prevYear": "Previous year",
|
|
376
|
+
"calendarGrid.nextYear": "Next year",
|
|
377
|
+
"calendarGrid.prevMonth": "Previous month",
|
|
378
|
+
"calendarGrid.nextMonth": "Next month",
|
|
379
|
+
"calendarGrid.week": "Wk",
|
|
339
380
|
"datePicker.placeholder": "Select date",
|
|
340
381
|
"datePicker.rangePlaceholder": "Select date range",
|
|
341
382
|
"datePicker.clear": "Clear date",
|
|
@@ -370,6 +411,9 @@ var enUS = {
|
|
|
370
411
|
"timePicker.separator": " – ",
|
|
371
412
|
"timePicker.rangeStart": "Start time",
|
|
372
413
|
"timePicker.rangeEnd": "End time",
|
|
414
|
+
"timePicker.am": "AM",
|
|
415
|
+
"timePicker.pm": "PM",
|
|
416
|
+
"timePicker.period": "AM/PM",
|
|
373
417
|
"tree.label": "Tree",
|
|
374
418
|
"tree.expand": "Expand node",
|
|
375
419
|
"tree.collapse": "Collapse node",
|