@sdata/web-vue 2.2.1 → 2.3.1
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/es/_components/picker/input-range.vue.d.ts +2 -2
- package/es/_utils/date.d.ts +10 -9
- package/es/_utils/date.js +23 -7
- package/es/anchor/anchor.vue.d.ts +52 -2
- package/es/anchor/anchor.vue_vue_type_script_setup_true_lang.js +75 -15
- package/es/anchor/index.d.ts +75 -0
- package/es/button/button.vue.d.ts +16 -3
- package/es/button/button.vue_vue_type_script_setup_true_lang.js +39 -9
- package/es/button/index.d.ts +19 -0
- package/es/button/interface.d.ts +1 -0
- package/es/config-provider/config-provider.vue.d.ts +9 -0
- package/es/config-provider/config-provider.vue_vue_type_script_setup_true_lang.js +10 -1
- package/es/config-provider/context.d.ts +1 -0
- package/es/config-provider/index.d.ts +15 -0
- package/es/copy/copy.vue_vue_type_script_setup_true_lang.js +1 -0
- package/es/date-picker/hooks/use-cell-class-name.d.ts +1 -0
- package/es/date-picker/hooks/use-cell-class-name.js +3 -2
- package/es/date-picker/hooks/use-header-value.d.ts +2 -0
- package/es/date-picker/hooks/use-header-value.js +23 -19
- package/es/date-picker/hooks/use-picker-state.d.ts +2 -0
- package/es/date-picker/hooks/use-picker-state.js +3 -3
- package/es/date-picker/hooks/use-range-header-value.d.ts +2 -0
- package/es/date-picker/hooks/use-range-header-value.js +5 -1
- package/es/date-picker/hooks/use-range-picker-state.d.ts +2 -0
- package/es/date-picker/hooks/use-range-picker-state.js +3 -3
- package/es/date-picker/hooks/use-value-format.d.ts +5 -3
- package/es/date-picker/hooks/use-value-format.js +10 -8
- package/es/date-picker/index.d.ts +1361 -0
- package/es/date-picker/interface.d.ts +7 -0
- package/es/date-picker/panels/body.vue.d.ts +24 -6
- package/es/date-picker/panels/body.vue_vue_type_script_setup_true_lang.js +13 -12
- package/es/date-picker/panels/date/index.vue.d.ts +26 -8
- package/es/date-picker/panels/date/index.vue_vue_type_script_setup_true_lang.js +18 -9
- package/es/date-picker/panels/header.vue_vue_type_script_setup_true_lang.js +13 -20
- package/es/date-picker/panels/month/index.vue.d.ts +13 -8
- package/es/date-picker/panels/month/index.vue_vue_type_script_setup_true_lang.js +6 -6
- package/es/date-picker/panels/quarter/index.vue.d.ts +13 -8
- package/es/date-picker/panels/quarter/index.vue_vue_type_script_setup_true_lang.js +6 -6
- package/es/date-picker/panels/shortcuts.vue_vue_type_script_setup_true_lang.js +2 -6
- package/es/date-picker/panels/week/index.vue.d.ts +13 -1
- package/es/date-picker/panels/week/index.vue_vue_type_script_setup_true_lang.js +5 -2
- package/es/date-picker/panels/year/index.vue.d.ts +13 -8
- package/es/date-picker/panels/year/index.vue_vue_type_script_setup_true_lang.js +25 -15
- package/es/date-picker/picker-panel.vue.d.ts +56 -14
- package/es/date-picker/picker-panel.vue_vue_type_script_setup_true_lang.js +36 -19
- package/es/date-picker/picker.vue.d.ts +949 -1
- package/es/date-picker/picker.vue_vue_type_script_setup_true_lang.js +91 -29
- package/es/date-picker/range-picker-panel.vue.d.ts +77 -15
- package/es/date-picker/range-picker-panel.vue_vue_type_script_setup_true_lang.js +52 -28
- package/es/date-picker/range-picker.vue.d.ts +1345 -1
- package/es/date-picker/range-picker.vue_vue_type_script_setup_true_lang.js +114 -34
- package/es/image/preview-toolbar.vue.d.ts +2 -3
- package/es/image/preview-toolbar.vue_vue_type_script_setup_true_lang.js +2 -3
- package/es/locale/interface.d.ts +2 -0
- package/es/locale/lang/ar-eg.js +46 -0
- package/es/locale/lang/de-de.js +46 -0
- package/es/locale/lang/es-es.js +46 -0
- package/es/locale/lang/fr-fr.js +46 -0
- package/es/locale/lang/id-id.js +46 -0
- package/es/locale/lang/it-it.js +46 -0
- package/es/locale/lang/km-kh.js +46 -0
- package/es/locale/lang/ko-kr.js +46 -0
- package/es/locale/lang/ms-my.js +46 -0
- package/es/locale/lang/pt-pt.js +46 -0
- package/es/locale/lang/th-th.js +46 -0
- package/es/locale/lang/vi-vn.js +46 -0
- package/es/mention/mention.js +2 -0
- package/es/menu/sub-menu-pop.vue_vue_type_script_setup_true_lang.js +3 -4
- package/es/modal/index.d.ts +7 -5
- package/es/modal/index.js +47 -11
- package/es/modal/interface.d.ts +5 -0
- package/es/textarea/textarea.vue_vue_type_script_setup_true_lang.js +2 -2
- package/es/tree/base-node.vue_vue_type_script_setup_true_lang.js +6 -21
- package/es/tree/node-switcher.vue.d.ts +0 -11
- package/es/tree/node-switcher.vue_vue_type_script_lang.js +1 -5
- package/es/trigger/trigger.js +2 -1
- package/es/verification-code/verification-code.js +17 -7
- package/json/vetur-attributes.json +53 -0
- package/json/vetur-tags.json +14 -0
- package/json/web-types.json +113 -1
- package/package.json +1 -1
- package/es/_components/render-function.d.ts +0 -14
- package/es/_components/render-function.js +0 -14
|
@@ -10,7 +10,7 @@ import useState from "../_hooks/use-state.js";
|
|
|
10
10
|
import useMergeState from "../_hooks/use-merge-state.js";
|
|
11
11
|
import Trigger from "../trigger/index.js";
|
|
12
12
|
import { useI18n } from "../locale/index.js";
|
|
13
|
-
import {
|
|
13
|
+
import { getDateValue, getDayjsValue, getNow, getSortedDayjsArray, initializeDateLocale, isValueChange, toLocal } from "../_utils/date.js";
|
|
14
14
|
import { useConfigProviderProp } from "../_hooks/use-config-provider-prop.js";
|
|
15
15
|
import IconCalendar from "../icon/icon-calendar/index.js";
|
|
16
16
|
import { getFormattedValue, isValidInputValue } from "../time-picker/utils/index.js";
|
|
@@ -24,9 +24,12 @@ import useRangeHeaderValue from "./hooks/use-range-header-value.js";
|
|
|
24
24
|
import useRangePickerState from "./hooks/use-range-picker-state.js";
|
|
25
25
|
import useRangeTimePickerValue from "./hooks/use-range-time-picker-value.js";
|
|
26
26
|
import range_picker_panel_default from "./range-picker-panel.js";
|
|
27
|
-
import { computed, createBlock, createSlots, createTextVNode, createVNode, defineComponent, guardReactiveProps, inject, mergeProps, nextTick, normalizeProps, onUnmounted, openBlock, reactive, ref, renderSlot, toDisplayString, toRefs, unref, useSlots, watch, watchEffect, withCtx } from "vue";
|
|
27
|
+
import { computed, createBlock, createSlots, createTextVNode, createVNode, defineComponent, guardReactiveProps, inject, mergeProps, nextTick, normalizeProps, onUnmounted, openBlock, reactive, ref, renderSlot, resolveDynamicComponent, toDisplayString, toRefs, unref, useSlots, watch, watchEffect, withCtx } from "vue";
|
|
28
28
|
//#region components/date-picker/range-picker.vue?vue&type=script&setup=true&lang.ts
|
|
29
|
-
var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, {
|
|
29
|
+
var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, {
|
|
30
|
+
name: "RangePicker",
|
|
31
|
+
inheritAttrs: false
|
|
32
|
+
}), {}, {
|
|
30
33
|
__name: "range-picker",
|
|
31
34
|
props: {
|
|
32
35
|
/**
|
|
@@ -97,6 +100,14 @@ var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
97
100
|
* */
|
|
98
101
|
timePickerProps: { type: Object },
|
|
99
102
|
/**
|
|
103
|
+
* @zh 原生输入框属性
|
|
104
|
+
* @en Native input attributes
|
|
105
|
+
*/
|
|
106
|
+
inputProps: {
|
|
107
|
+
type: Array,
|
|
108
|
+
default: () => []
|
|
109
|
+
},
|
|
110
|
+
/**
|
|
100
111
|
* @zh 提示文案
|
|
101
112
|
* @en Prompt copy
|
|
102
113
|
* */
|
|
@@ -125,6 +136,22 @@ var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
125
136
|
type: Boolean,
|
|
126
137
|
default: true
|
|
127
138
|
},
|
|
139
|
+
/**
|
|
140
|
+
* @zh 是否固定时间
|
|
141
|
+
* @en Is it a fixed time?
|
|
142
|
+
*/
|
|
143
|
+
fixedTime: {
|
|
144
|
+
type: Boolean,
|
|
145
|
+
default: false
|
|
146
|
+
},
|
|
147
|
+
/**
|
|
148
|
+
* @zh 当重新选择范围的时候,会清空之前的范围重新进行选择
|
|
149
|
+
* @en When reselecting the range, the previous range will be cleared for next selection
|
|
150
|
+
*/
|
|
151
|
+
clearRangeOnReselect: {
|
|
152
|
+
type: Boolean,
|
|
153
|
+
default: false
|
|
154
|
+
},
|
|
128
155
|
popupContainer: { type: [String, Object] },
|
|
129
156
|
locale: { type: Object },
|
|
130
157
|
hideTrigger: { type: Boolean },
|
|
@@ -154,12 +181,27 @@ var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
154
181
|
defaultPopupVisible: { type: Boolean },
|
|
155
182
|
triggerProps: { type: Object },
|
|
156
183
|
unmountOnClose: { type: Boolean },
|
|
184
|
+
/**
|
|
185
|
+
* @zh 面板隐藏不在当前时间范围的灰色日期
|
|
186
|
+
* @en Hide gray dates that are not in the current time range in the panel
|
|
187
|
+
*/
|
|
188
|
+
hideNotInViewDates: { type: Boolean },
|
|
157
189
|
previewShortcut: {
|
|
158
190
|
type: Boolean,
|
|
159
191
|
default: true
|
|
160
192
|
},
|
|
161
193
|
showConfirmBtn: { type: Boolean },
|
|
162
194
|
/**
|
|
195
|
+
* @zh 设置时区偏移,如果需要 utc 时间则设置为 0。
|
|
196
|
+
* @en Set the timezone offset. Set to 0 for UTC time.
|
|
197
|
+
*/
|
|
198
|
+
utcOffset: { type: Number },
|
|
199
|
+
/**
|
|
200
|
+
* @zh 设置时区,如果设置了 `utcOffset`,则以 `utcOffset` 为准。
|
|
201
|
+
* @en Set timezone. If `utcOffset` is set, `utcOffset` takes precedence.
|
|
202
|
+
*/
|
|
203
|
+
timezone: { type: String },
|
|
204
|
+
/**
|
|
163
205
|
* @zh 是否禁止键盘输入日期
|
|
164
206
|
* @en Whether input is disabled with the keyboard.
|
|
165
207
|
* @version 2.43.0
|
|
@@ -192,8 +234,15 @@ var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
192
234
|
setup(__props, { emit: __emit }) {
|
|
193
235
|
const props = __props;
|
|
194
236
|
const emit = __emit;
|
|
237
|
+
/**
|
|
238
|
+
* @zh 自定义渲染面板
|
|
239
|
+
* @en Customize panel rendering
|
|
240
|
+
* @slot panelRender
|
|
241
|
+
* @binding {Component} component
|
|
242
|
+
* @binding {object} props
|
|
243
|
+
*/
|
|
195
244
|
const slots = useSlots();
|
|
196
|
-
const { mode, showTime, format, modelValue, defaultValue, popupVisible, defaultPopupVisible, placeholder, timePickerProps, disabled, disabledDate, disabledTime, locale, pickerValue, defaultPickerValue, valueFormat, size, error, dayStartOfWeek, shortcuts, shortcutsPosition, exchangeTime, previewShortcut, showConfirmBtn, allowClear, abbreviation } = toRefs(props);
|
|
245
|
+
const { mode, showTime, format, modelValue, defaultValue, popupVisible, defaultPopupVisible, placeholder, timePickerProps, disabled, disabledDate, disabledTime, locale, pickerValue, defaultPickerValue, valueFormat, size, error, dayStartOfWeek, shortcuts, shortcutsPosition, exchangeTime, fixedTime, previewShortcut, showConfirmBtn, allowClear, abbreviation, utcOffset, timezone, clearRangeOnReselect } = toRefs(props);
|
|
197
246
|
const { mergedValue: mergedDayStartOfWeek } = useConfigProviderProp(dayStartOfWeek, {
|
|
198
247
|
propNames: ["dayStartOfWeek", "day-start-of-week"],
|
|
199
248
|
getGlobalValue: (configProviderCtx) => {
|
|
@@ -289,7 +338,9 @@ var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
289
338
|
const { value: selectedValue, setValue: setSelectedValue } = useRangePickerState(reactive({
|
|
290
339
|
modelValue,
|
|
291
340
|
defaultValue,
|
|
292
|
-
format: parseValueFormat
|
|
341
|
+
format: parseValueFormat,
|
|
342
|
+
utcOffset,
|
|
343
|
+
timezone
|
|
293
344
|
}));
|
|
294
345
|
const [processValue, setProcessValue] = useState();
|
|
295
346
|
const [previewValue, setPreviewValue] = useState();
|
|
@@ -302,10 +353,6 @@ var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
302
353
|
return (_ref = (_previewValue$value = previewValue.value) !== null && _previewValue$value !== void 0 ? _previewValue$value : processValue.value) !== null && _ref !== void 0 ? _ref : selectedValue.value;
|
|
303
354
|
});
|
|
304
355
|
const [inputValue, setInputValue] = useState();
|
|
305
|
-
const displayInputValue = computed(() => {
|
|
306
|
-
var _inputValue$value;
|
|
307
|
-
return (_inputValue$value = inputValue.value) === null || _inputValue$value === void 0 ? void 0 : _inputValue$value.map((item) => item !== null && item !== void 0 ? item : "");
|
|
308
|
-
});
|
|
309
356
|
const startHeaderMode = ref();
|
|
310
357
|
const endHeaderMode = ref();
|
|
311
358
|
const [panelVisible, setLocalPanelVisible] = useMergeState(defaultPopupVisible.value, reactive({ value: popupVisible }));
|
|
@@ -324,10 +371,13 @@ var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
324
371
|
defaultValue: defaultPickerValue,
|
|
325
372
|
selectedValue: panelValue,
|
|
326
373
|
format: parseValueFormat,
|
|
374
|
+
utcOffset,
|
|
375
|
+
timezone,
|
|
327
376
|
onChange: (newVal) => {
|
|
328
|
-
const returnValue = getReturnRangeValue(newVal, returnValueFormat.value);
|
|
329
|
-
const
|
|
330
|
-
|
|
377
|
+
const returnValue = getReturnRangeValue(newVal, returnValueFormat.value, utcOffset === null || utcOffset === void 0 ? void 0 : utcOffset.value, timezone === null || timezone === void 0 ? void 0 : timezone.value);
|
|
378
|
+
const localValue = newVal.map((item) => toLocal(item, utcOffset === null || utcOffset === void 0 ? void 0 : utcOffset.value, timezone === null || timezone === void 0 ? void 0 : timezone.value));
|
|
379
|
+
const formattedValue = getFormattedValue(localValue, parseValueFormat.value);
|
|
380
|
+
emit("picker-value-change", returnValue, getDateValue(localValue), formattedValue);
|
|
331
381
|
emit("update:pickerValue", returnValue);
|
|
332
382
|
}
|
|
333
383
|
}));
|
|
@@ -351,7 +401,7 @@ var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
351
401
|
setHeaderValue([startHeaderValue.value, newEndValue]);
|
|
352
402
|
endHeaderMode.value = void 0;
|
|
353
403
|
}
|
|
354
|
-
const footerValue = ref([panelValue.value[0] || getNow(), panelValue.value[1] || getNow()]);
|
|
404
|
+
const footerValue = ref([panelValue.value[0] || getNow(utcOffset === null || utcOffset === void 0 ? void 0 : utcOffset.value, timezone === null || timezone === void 0 ? void 0 : timezone.value), panelValue.value[1] || getNow(utcOffset === null || utcOffset === void 0 ? void 0 : utcOffset.value, timezone === null || timezone === void 0 ? void 0 : timezone.value)]);
|
|
355
405
|
watch(panelValue, () => {
|
|
356
406
|
const [value0, value1] = panelValue.value;
|
|
357
407
|
footerValue.value[0] = value0 || footerValue.value[0];
|
|
@@ -392,9 +442,10 @@ var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
392
442
|
}
|
|
393
443
|
});
|
|
394
444
|
function emitChange(value, emitOk) {
|
|
395
|
-
const
|
|
396
|
-
const
|
|
397
|
-
const
|
|
445
|
+
const localValue = value === null || value === void 0 ? void 0 : value.map((item) => item ? toLocal(item, utcOffset === null || utcOffset === void 0 ? void 0 : utcOffset.value, timezone === null || timezone === void 0 ? void 0 : timezone.value) : void 0);
|
|
446
|
+
const returnValue = value ? getReturnRangeValue(value, returnValueFormat.value, utcOffset === null || utcOffset === void 0 ? void 0 : utcOffset.value, timezone === null || timezone === void 0 ? void 0 : timezone.value) : void 0;
|
|
447
|
+
const formattedValue = getFormattedValue(localValue, parseValueFormat.value);
|
|
448
|
+
const dateValue = getDateValue(localValue);
|
|
398
449
|
if (isValueChange(value, selectedValue.value)) {
|
|
399
450
|
var _eventHandlers$value, _eventHandlers$value$;
|
|
400
451
|
emit("update:modelValue", returnValue);
|
|
@@ -406,8 +457,8 @@ var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
406
457
|
}
|
|
407
458
|
}
|
|
408
459
|
function getSortedDayjsArrayByExchangeTimeOrNot(newValue) {
|
|
409
|
-
let sortedValue = getSortedDayjsArray(newValue);
|
|
410
|
-
if (hasTime.value && !mergedExchangeTime.value) sortedValue = [getMergedOpValue(sortedValue[0], newValue[0]), getMergedOpValue(sortedValue[1], newValue[1])];
|
|
460
|
+
let sortedValue = getSortedDayjsArray(newValue, fixedTime.value);
|
|
461
|
+
if (hasTime.value && !mergedExchangeTime.value && !fixedTime.value) sortedValue = [getMergedOpValue(sortedValue[0], newValue[0]), getMergedOpValue(sortedValue[1], newValue[1])];
|
|
411
462
|
return sortedValue;
|
|
412
463
|
}
|
|
413
464
|
function confirm(value, showPanel, emitOk) {
|
|
@@ -424,9 +475,10 @@ var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
424
475
|
if (isBoolean(showPanel)) setPanelVisible(showPanel);
|
|
425
476
|
}
|
|
426
477
|
function emitSelectEvent(value) {
|
|
427
|
-
const
|
|
428
|
-
const
|
|
429
|
-
const
|
|
478
|
+
const localValue = value.map((item) => item ? toLocal(item, utcOffset === null || utcOffset === void 0 ? void 0 : utcOffset.value, timezone === null || timezone === void 0 ? void 0 : timezone.value) : void 0);
|
|
479
|
+
const returnValue = getReturnRangeValue(value, returnValueFormat.value, utcOffset === null || utcOffset === void 0 ? void 0 : utcOffset.value, timezone === null || timezone === void 0 ? void 0 : timezone.value);
|
|
480
|
+
const formattedValue = getFormattedValue(localValue, parseValueFormat.value);
|
|
481
|
+
const dateValue = getDateValue(localValue);
|
|
430
482
|
emitRangeEvent("select", returnValue !== null && returnValue !== void 0 ? returnValue : [], dateValue !== null && dateValue !== void 0 ? dateValue : [], formattedValue !== null && formattedValue !== void 0 ? formattedValue : []);
|
|
431
483
|
}
|
|
432
484
|
function select(value, options) {
|
|
@@ -452,7 +504,7 @@ var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
452
504
|
}
|
|
453
505
|
function getMergedOpValue(date, time) {
|
|
454
506
|
if (!hasTime.value) return date;
|
|
455
|
-
return mergeValueWithTime(getNow(), date, time);
|
|
507
|
+
return mergeValueWithTime(getNow(utcOffset === null || utcOffset === void 0 ? void 0 : utcOffset.value, timezone === null || timezone === void 0 ? void 0 : timezone.value), date, time);
|
|
456
508
|
}
|
|
457
509
|
function onPanelVisibleChange(visible) {
|
|
458
510
|
setPanelVisible(visible);
|
|
@@ -467,7 +519,8 @@ var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
467
519
|
}
|
|
468
520
|
function getValueToModify(isTime = false) {
|
|
469
521
|
if (isNextDisabled.value) return [...selectedValue.value];
|
|
470
|
-
if (processValue.value) return isTime || !isCompleteRangeValue(processValue.value) ? [...processValue.value] : [];
|
|
522
|
+
if (processValue.value) return isTime || !isCompleteRangeValue(processValue.value) || !clearRangeOnReselect.value ? [...processValue.value] : [];
|
|
523
|
+
if (!isTime && !clearRangeOnReselect.value) return [...selectedValue.value];
|
|
471
524
|
return isTime ? [...selectedValue.value] : [];
|
|
472
525
|
}
|
|
473
526
|
function onPanelCellClick(date) {
|
|
@@ -534,7 +587,7 @@ var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
534
587
|
newInputValue[focusedIndex.value] = targetValue;
|
|
535
588
|
setInputValue(newInputValue);
|
|
536
589
|
if (!isValidInputValue(targetValue, computedFormat.value)) return;
|
|
537
|
-
const targetValueDayjs =
|
|
590
|
+
const targetValueDayjs = getDayjsValue(targetValue, computedFormat.value, utcOffset === null || utcOffset === void 0 ? void 0 : utcOffset.value, timezone === null || timezone === void 0 ? void 0 : timezone.value);
|
|
538
591
|
if (isDisabledDate(targetValueDayjs, focusedIndex.value === 0 ? "start" : "end")) return;
|
|
539
592
|
const newValue = isArray(panelValue.value) ? [...panelValue.value] : [];
|
|
540
593
|
newValue[focusedIndex.value] = targetValueDayjs;
|
|
@@ -563,24 +616,26 @@ var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
563
616
|
});
|
|
564
617
|
const rangePanelProps = computed(() => _objectSpread2(_objectSpread2({}, pick(props, [
|
|
565
618
|
"mode",
|
|
619
|
+
"showTime",
|
|
620
|
+
"shortcuts",
|
|
621
|
+
"shortcutsPosition",
|
|
622
|
+
"dayStartOfWeek",
|
|
566
623
|
"disabledDate",
|
|
567
624
|
"disabledTime",
|
|
568
625
|
"hideTrigger",
|
|
569
|
-
"
|
|
626
|
+
"abbreviation",
|
|
627
|
+
"hideNotInViewDates",
|
|
628
|
+
"utcOffset",
|
|
629
|
+
"timezone"
|
|
570
630
|
])), {}, {
|
|
571
|
-
shortcuts: mergedShortcuts.value,
|
|
572
|
-
shortcutsPosition: mergedShortcutsPosition.value,
|
|
573
|
-
dayStartOfWeek: mergedDayStartOfWeek.value,
|
|
574
|
-
abbreviation: mergedAbbreviation.value,
|
|
575
631
|
prefixCls,
|
|
632
|
+
now: getNow(utcOffset === null || utcOffset === void 0 ? void 0 : utcOffset.value, timezone === null || timezone === void 0 ? void 0 : timezone.value),
|
|
576
633
|
format: parseValueFormat.value,
|
|
577
634
|
value: panelValue.value,
|
|
578
635
|
showConfirmBtn: needConfirm.value,
|
|
579
636
|
confirmBtnDisabled: confirmBtnDisabled.value,
|
|
580
637
|
timePickerValue: timePickerValue.value,
|
|
581
638
|
timePickerProps: computedTimePickerProps.value,
|
|
582
|
-
extra: slots.extra,
|
|
583
|
-
dateRender: slots.cell,
|
|
584
639
|
startHeaderProps,
|
|
585
640
|
endHeaderProps,
|
|
586
641
|
footerValue: footerValue.value,
|
|
@@ -616,7 +671,18 @@ var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
616
671
|
"popup-container": __props.popupContainer,
|
|
617
672
|
onPopupVisibleChange: onPanelVisibleChange
|
|
618
673
|
}), {
|
|
619
|
-
content: withCtx(() => [
|
|
674
|
+
content: withCtx(() => [renderSlot(_ctx.$slots, "panelRender", {
|
|
675
|
+
component: range_picker_panel_default,
|
|
676
|
+
props: rangePanelProps.value
|
|
677
|
+
}, () => [(openBlock(), createBlock(resolveDynamicComponent(range_picker_panel_default), normalizeProps(guardReactiveProps(rangePanelProps.value)), createSlots({ _: 2 }, [_ctx.$slots.extra ? {
|
|
678
|
+
name: "extra",
|
|
679
|
+
fn: withCtx(() => [renderSlot(_ctx.$slots, "extra")]),
|
|
680
|
+
key: "0"
|
|
681
|
+
} : void 0, _ctx.$slots.cell ? {
|
|
682
|
+
name: "cell",
|
|
683
|
+
fn: withCtx((scope) => [renderSlot(_ctx.$slots, "cell", normalizeProps(guardReactiveProps(scope)))]),
|
|
684
|
+
key: "1"
|
|
685
|
+
} : void 0]), 1040))])]),
|
|
620
686
|
default: withCtx(() => [renderSlot(_ctx.$slots, "default", {}, () => [createVNode(input_range_default, mergeProps({
|
|
621
687
|
ref_key: "refInput",
|
|
622
688
|
ref: refInput
|
|
@@ -631,7 +697,8 @@ var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
631
697
|
readonly: __props.readonly || __props.disabledInput,
|
|
632
698
|
"allow-clear": unref(mergedAllowClear) && !__props.readonly,
|
|
633
699
|
placeholder: computedPlaceholder.value,
|
|
634
|
-
"input-
|
|
700
|
+
"input-props": __props.inputProps,
|
|
701
|
+
"input-value": unref(inputValue),
|
|
635
702
|
value: panelValue.value,
|
|
636
703
|
format: unref(computedFormat),
|
|
637
704
|
onClear: onInputClear,
|
|
@@ -655,6 +722,7 @@ var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
655
722
|
"readonly",
|
|
656
723
|
"allow-clear",
|
|
657
724
|
"placeholder",
|
|
725
|
+
"input-props",
|
|
658
726
|
"input-value",
|
|
659
727
|
"value",
|
|
660
728
|
"format"
|
|
@@ -666,7 +734,19 @@ var range_picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
666
734
|
"disabled",
|
|
667
735
|
"popup-visible",
|
|
668
736
|
"popup-container"
|
|
669
|
-
])) : (
|
|
737
|
+
])) : renderSlot(_ctx.$slots, "panelRender", {
|
|
738
|
+
key: 1,
|
|
739
|
+
component: range_picker_panel_default,
|
|
740
|
+
props: rangePanelProps.value
|
|
741
|
+
}, () => [(openBlock(), createBlock(resolveDynamicComponent(range_picker_panel_default), normalizeProps(guardReactiveProps(_objectSpread2(_objectSpread2({}, rangePanelProps.value), _ctx.$attrs))), createSlots({ _: 2 }, [_ctx.$slots.extra ? {
|
|
742
|
+
name: "extra",
|
|
743
|
+
fn: withCtx(() => [renderSlot(_ctx.$slots, "extra")]),
|
|
744
|
+
key: "0"
|
|
745
|
+
} : void 0, _ctx.$slots.cell ? {
|
|
746
|
+
name: "cell",
|
|
747
|
+
fn: withCtx((scope) => [renderSlot(_ctx.$slots, "cell", normalizeProps(guardReactiveProps(scope)))]),
|
|
748
|
+
key: "1"
|
|
749
|
+
} : void 0]), 1040))]);
|
|
670
750
|
};
|
|
671
751
|
}
|
|
672
752
|
}));
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { PropType } from 'vue';
|
|
2
|
-
import { RenderFunc } from '../_components/render-function';
|
|
1
|
+
import { PropType, VNodeTypes } from 'vue';
|
|
3
2
|
export interface ActionType {
|
|
4
3
|
key: string;
|
|
5
4
|
name: string;
|
|
6
|
-
content:
|
|
5
|
+
content: () => VNodeTypes;
|
|
7
6
|
onClick: () => void;
|
|
8
7
|
disabled?: boolean;
|
|
9
8
|
}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { _objectSpread2 } from "../_virtual/_@oxc-project_runtime@0.133.0/helpers/esm/objectSpread2.js";
|
|
2
2
|
import { getPrefixCls } from "../_utils/global-config.js";
|
|
3
|
-
import render_function_default from "../_components/render-function.js";
|
|
4
3
|
import preview_action_default from "./preview-action.js";
|
|
5
|
-
import { Fragment, computed, createBlock, createElementBlock,
|
|
4
|
+
import { Fragment, computed, createBlock, createElementBlock, defineComponent, normalizeClass, openBlock, renderList, renderSlot, resolveDynamicComponent, toRefs, unref, withCtx } from "vue";
|
|
6
5
|
//#region components/image/preview-toolbar.vue?vue&type=script&setup=true&lang.tsx
|
|
7
6
|
var preview_toolbar_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, { name: "ImagePreviewToolbar" }), {}, {
|
|
8
7
|
__name: "preview-toolbar",
|
|
@@ -35,7 +34,7 @@ var preview_toolbar_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
35
34
|
disabled: action.disabled,
|
|
36
35
|
onClick: action.onClick
|
|
37
36
|
}, {
|
|
38
|
-
default: withCtx(() => [
|
|
37
|
+
default: withCtx(() => [(openBlock(), createBlock(resolveDynamicComponent(action.content)))]),
|
|
39
38
|
_: 2
|
|
40
39
|
}, 1032, [
|
|
41
40
|
"name",
|
package/es/locale/interface.d.ts
CHANGED
package/es/locale/lang/ar-eg.js
CHANGED
|
@@ -146,6 +146,52 @@ var lang = {
|
|
|
146
146
|
collapse: "يطوى",
|
|
147
147
|
expand: "وسعت"
|
|
148
148
|
},
|
|
149
|
+
form: { validateMessages: {
|
|
150
|
+
required: "الحقل #{field} مطلوب",
|
|
151
|
+
type: {
|
|
152
|
+
string: "#{field} ليس نصًا صالحًا",
|
|
153
|
+
number: "#{field} ليس رقمًا صالحًا",
|
|
154
|
+
boolean: "#{field} ليس قيمة منطقية صالحة",
|
|
155
|
+
array: "#{field} ليس مصفوفة صالحة",
|
|
156
|
+
object: "#{field} ليس كائنًا صالحًا",
|
|
157
|
+
url: "#{field} ليس رابط URL صالحًا",
|
|
158
|
+
email: "#{field} ليس بريدًا إلكترونيًا صالحًا",
|
|
159
|
+
ip: "#{field} ليس عنوان IP صالحًا"
|
|
160
|
+
},
|
|
161
|
+
number: {
|
|
162
|
+
min: "`#{value}` أصغر من الحد الأدنى `#{min}`",
|
|
163
|
+
max: "`#{value}` أكبر من الحد الأقصى `#{max}`",
|
|
164
|
+
equal: "`#{value}` لا يساوي `#{equal}`",
|
|
165
|
+
range: "`#{value}` ليس ضمن النطاق `#{min} ~ #{max}`",
|
|
166
|
+
positive: "`#{value}` ليس رقمًا موجبًا",
|
|
167
|
+
negative: "`#{value}` ليس رقمًا سالبًا"
|
|
168
|
+
},
|
|
169
|
+
array: {
|
|
170
|
+
length: "عدد عناصر `#{field}` لا يساوي #{length}",
|
|
171
|
+
minLength: "عدد عناصر `#{field}` يجب ألا يقل عن #{minLength}",
|
|
172
|
+
maxLength: "عدد عناصر `#{field}` يجب ألا يزيد عن #{maxLength}",
|
|
173
|
+
includes: "#{field} لا يحتوي على #{includes}",
|
|
174
|
+
deepEqual: "#{field} لا يساوي #{deepEqual}",
|
|
175
|
+
empty: "`#{field}` ليست مصفوفة فارغة"
|
|
176
|
+
},
|
|
177
|
+
string: {
|
|
178
|
+
minLength: "عدد الأحرف يجب ألا يقل عن #{minLength}",
|
|
179
|
+
maxLength: "عدد الأحرف يجب ألا يزيد عن #{maxLength}",
|
|
180
|
+
length: "عدد الأحرف يجب أن يساوي #{length}",
|
|
181
|
+
match: "`#{value}` لا يطابق النمط #{pattern}",
|
|
182
|
+
uppercase: "`#{value}` يجب أن يكون بأحرف كبيرة فقط",
|
|
183
|
+
lowercase: "`#{value}` يجب أن يكون بأحرف صغيرة فقط"
|
|
184
|
+
},
|
|
185
|
+
object: {
|
|
186
|
+
deepEqual: "`#{field}` لا يساوي القيمة المتوقعة",
|
|
187
|
+
hasKeys: "`#{field}` لا يحتوي على الحقول المطلوبة",
|
|
188
|
+
empty: "`#{field}` ليس كائنًا"
|
|
189
|
+
},
|
|
190
|
+
boolean: {
|
|
191
|
+
true: "القيمة المتوقعة هي `true`",
|
|
192
|
+
false: "القيمة المتوقعة هي `false`"
|
|
193
|
+
}
|
|
194
|
+
} },
|
|
149
195
|
colorPicker: {
|
|
150
196
|
history: "ألوان تاريخية",
|
|
151
197
|
preset: "ألوان النظام المضبوطة مسبقاً",
|
package/es/locale/lang/de-de.js
CHANGED
|
@@ -146,6 +146,52 @@ var lang = {
|
|
|
146
146
|
collapse: "Falten",
|
|
147
147
|
expand: "Erweitern"
|
|
148
148
|
},
|
|
149
|
+
form: { validateMessages: {
|
|
150
|
+
required: "#{field} ist ein Pflichtfeld",
|
|
151
|
+
type: {
|
|
152
|
+
string: "#{field} ist kein gültiger Text",
|
|
153
|
+
number: "#{field} ist keine gültige Zahl",
|
|
154
|
+
boolean: "#{field} ist kein gültiger boolescher Wert",
|
|
155
|
+
array: "#{field} ist kein gültiges Array",
|
|
156
|
+
object: "#{field} ist kein gültiges Objekt",
|
|
157
|
+
url: "#{field} ist keine gültige URL",
|
|
158
|
+
email: "#{field} ist keine gültige E-Mail-Adresse",
|
|
159
|
+
ip: "#{field} ist keine gültige IP-Adresse"
|
|
160
|
+
},
|
|
161
|
+
number: {
|
|
162
|
+
min: "`#{value}` ist kleiner als der Mindestwert `#{min}`",
|
|
163
|
+
max: "`#{value}` ist größer als der Höchstwert `#{max}`",
|
|
164
|
+
equal: "`#{value}` ist nicht gleich `#{equal}`",
|
|
165
|
+
range: "`#{value}` liegt nicht im Bereich `#{min} ~ #{max}`",
|
|
166
|
+
positive: "`#{value}` ist keine positive Zahl",
|
|
167
|
+
negative: "`#{value}` ist keine negative Zahl"
|
|
168
|
+
},
|
|
169
|
+
array: {
|
|
170
|
+
length: "Die Anzahl von `#{field}` ist nicht gleich #{length}",
|
|
171
|
+
minLength: "Die Anzahl von `#{field}` muss mindestens #{minLength} sein",
|
|
172
|
+
maxLength: "Die Anzahl von `#{field}` darf höchstens #{maxLength} sein",
|
|
173
|
+
includes: "#{field} enthält #{includes} nicht",
|
|
174
|
+
deepEqual: "#{field} ist nicht gleich #{deepEqual}",
|
|
175
|
+
empty: "`#{field}` ist kein leeres Array"
|
|
176
|
+
},
|
|
177
|
+
string: {
|
|
178
|
+
minLength: "Die Zeichenanzahl muss mindestens #{minLength} sein",
|
|
179
|
+
maxLength: "Die Zeichenanzahl darf höchstens #{maxLength} sein",
|
|
180
|
+
length: "Die Zeichenanzahl muss #{length} sein",
|
|
181
|
+
match: "`#{value}` entspricht nicht dem Muster #{pattern}",
|
|
182
|
+
uppercase: "`#{value}` muss vollständig in Großbuchstaben sein",
|
|
183
|
+
lowercase: "`#{value}` muss vollständig in Kleinbuchstaben sein"
|
|
184
|
+
},
|
|
185
|
+
object: {
|
|
186
|
+
deepEqual: "`#{field}` entspricht nicht dem erwarteten Wert",
|
|
187
|
+
hasKeys: "`#{field}` enthält nicht die erforderlichen Felder",
|
|
188
|
+
empty: "`#{field}` ist kein Objekt"
|
|
189
|
+
},
|
|
190
|
+
boolean: {
|
|
191
|
+
true: "Der erwartete Wert ist `true`",
|
|
192
|
+
false: "Der erwartete Wert ist `false`"
|
|
193
|
+
}
|
|
194
|
+
} },
|
|
149
195
|
colorPicker: {
|
|
150
196
|
history: "Historische Farben",
|
|
151
197
|
preset: "Standardfarbe des Systems",
|
package/es/locale/lang/es-es.js
CHANGED
|
@@ -146,6 +146,52 @@ var lang = {
|
|
|
146
146
|
expand: "Expandir",
|
|
147
147
|
collapse: "Pliegue"
|
|
148
148
|
},
|
|
149
|
+
form: { validateMessages: {
|
|
150
|
+
required: "El campo #{field} es obligatorio",
|
|
151
|
+
type: {
|
|
152
|
+
string: "#{field} no es un texto válido",
|
|
153
|
+
number: "#{field} no es un número válido",
|
|
154
|
+
boolean: "#{field} no es un valor booleano válido",
|
|
155
|
+
array: "#{field} no es un arreglo válido",
|
|
156
|
+
object: "#{field} no es un objeto válido",
|
|
157
|
+
url: "#{field} no es una URL válida",
|
|
158
|
+
email: "#{field} no es un correo electrónico válido",
|
|
159
|
+
ip: "#{field} no es una dirección IP válida"
|
|
160
|
+
},
|
|
161
|
+
number: {
|
|
162
|
+
min: "`#{value}` es menor que el valor mínimo `#{min}`",
|
|
163
|
+
max: "`#{value}` es mayor que el valor máximo `#{max}`",
|
|
164
|
+
equal: "`#{value}` no es igual a `#{equal}`",
|
|
165
|
+
range: "`#{value}` no está dentro del rango `#{min} ~ #{max}`",
|
|
166
|
+
positive: "`#{value}` no es un número positivo",
|
|
167
|
+
negative: "`#{value}` no es un número negativo"
|
|
168
|
+
},
|
|
169
|
+
array: {
|
|
170
|
+
length: "La cantidad de `#{field}` no es igual a #{length}",
|
|
171
|
+
minLength: "La cantidad de `#{field}` debe ser al menos #{minLength}",
|
|
172
|
+
maxLength: "La cantidad de `#{field}` debe ser como máximo #{maxLength}",
|
|
173
|
+
includes: "#{field} no incluye #{includes}",
|
|
174
|
+
deepEqual: "#{field} no es igual a #{deepEqual}",
|
|
175
|
+
empty: "`#{field}` no es un arreglo vacío"
|
|
176
|
+
},
|
|
177
|
+
string: {
|
|
178
|
+
minLength: "La cantidad de caracteres debe ser al menos #{minLength}",
|
|
179
|
+
maxLength: "La cantidad de caracteres debe ser como máximo #{maxLength}",
|
|
180
|
+
length: "La cantidad de caracteres debe ser #{length}",
|
|
181
|
+
match: "`#{value}` no coincide con el patrón #{pattern}",
|
|
182
|
+
uppercase: "`#{value}` debe estar completamente en mayúsculas",
|
|
183
|
+
lowercase: "`#{value}` debe estar completamente en minúsculas"
|
|
184
|
+
},
|
|
185
|
+
object: {
|
|
186
|
+
deepEqual: "`#{field}` no es igual al valor esperado",
|
|
187
|
+
hasKeys: "`#{field}` no incluye los campos obligatorios",
|
|
188
|
+
empty: "`#{field}` no es un objeto"
|
|
189
|
+
},
|
|
190
|
+
boolean: {
|
|
191
|
+
true: "El valor esperado es `true`",
|
|
192
|
+
false: "El valor esperado es `false`"
|
|
193
|
+
}
|
|
194
|
+
} },
|
|
149
195
|
colorPicker: {
|
|
150
196
|
history: "Colores históricos",
|
|
151
197
|
preset: "Colores predefinidos del sistema",
|
package/es/locale/lang/fr-fr.js
CHANGED
|
@@ -146,6 +146,52 @@ var lang = {
|
|
|
146
146
|
collapse: "Plier",
|
|
147
147
|
expand: "Étendre"
|
|
148
148
|
},
|
|
149
|
+
form: { validateMessages: {
|
|
150
|
+
required: "#{field} est obligatoire",
|
|
151
|
+
type: {
|
|
152
|
+
string: "#{field} n'est pas un texte valide",
|
|
153
|
+
number: "#{field} n'est pas un nombre valide",
|
|
154
|
+
boolean: "#{field} n'est pas une valeur booléenne valide",
|
|
155
|
+
array: "#{field} n'est pas un tableau valide",
|
|
156
|
+
object: "#{field} n'est pas un objet valide",
|
|
157
|
+
url: "#{field} n'est pas une URL valide",
|
|
158
|
+
email: "#{field} n'est pas une adresse e-mail valide",
|
|
159
|
+
ip: "#{field} n'est pas une adresse IP valide"
|
|
160
|
+
},
|
|
161
|
+
number: {
|
|
162
|
+
min: "`#{value}` est inférieur à la valeur minimale `#{min}`",
|
|
163
|
+
max: "`#{value}` est supérieur à la valeur maximale `#{max}`",
|
|
164
|
+
equal: "`#{value}` n'est pas égal à `#{equal}`",
|
|
165
|
+
range: "`#{value}` n'est pas dans la plage `#{min} ~ #{max}`",
|
|
166
|
+
positive: "`#{value}` n'est pas un nombre positif",
|
|
167
|
+
negative: "`#{value}` n'est pas un nombre négatif"
|
|
168
|
+
},
|
|
169
|
+
array: {
|
|
170
|
+
length: "Le nombre de `#{field}` n'est pas égal à #{length}",
|
|
171
|
+
minLength: "Le nombre de `#{field}` doit être au moins #{minLength}",
|
|
172
|
+
maxLength: "Le nombre de `#{field}` doit être au plus #{maxLength}",
|
|
173
|
+
includes: "#{field} ne contient pas #{includes}",
|
|
174
|
+
deepEqual: "#{field} n'est pas égal à #{deepEqual}",
|
|
175
|
+
empty: "`#{field}` n'est pas un tableau vide"
|
|
176
|
+
},
|
|
177
|
+
string: {
|
|
178
|
+
minLength: "Le nombre de caractères doit être au moins #{minLength}",
|
|
179
|
+
maxLength: "Le nombre de caractères doit être au plus #{maxLength}",
|
|
180
|
+
length: "Le nombre de caractères doit être #{length}",
|
|
181
|
+
match: "`#{value}` ne correspond pas au motif #{pattern}",
|
|
182
|
+
uppercase: "`#{value}` doit être entièrement en majuscules",
|
|
183
|
+
lowercase: "`#{value}` doit être entièrement en minuscules"
|
|
184
|
+
},
|
|
185
|
+
object: {
|
|
186
|
+
deepEqual: "`#{field}` n'est pas égal à la valeur attendue",
|
|
187
|
+
hasKeys: "`#{field}` ne contient pas les champs requis",
|
|
188
|
+
empty: "`#{field}` n'est pas un objet"
|
|
189
|
+
},
|
|
190
|
+
boolean: {
|
|
191
|
+
true: "La valeur attendue est `true`",
|
|
192
|
+
false: "La valeur attendue est `false`"
|
|
193
|
+
}
|
|
194
|
+
} },
|
|
149
195
|
colorPicker: {
|
|
150
196
|
history: "Couleurs historiques",
|
|
151
197
|
preset: "Couleurs prédéfinies par le système",
|
package/es/locale/lang/id-id.js
CHANGED
|
@@ -146,6 +146,52 @@ var lang = {
|
|
|
146
146
|
collapse: "Melipat",
|
|
147
147
|
expand: "Membuka"
|
|
148
148
|
},
|
|
149
|
+
form: { validateMessages: {
|
|
150
|
+
required: "#{field} wajib diisi",
|
|
151
|
+
type: {
|
|
152
|
+
string: "#{field} bukan teks yang valid",
|
|
153
|
+
number: "#{field} bukan angka yang valid",
|
|
154
|
+
boolean: "#{field} bukan nilai boolean yang valid",
|
|
155
|
+
array: "#{field} bukan array yang valid",
|
|
156
|
+
object: "#{field} bukan objek yang valid",
|
|
157
|
+
url: "#{field} bukan URL yang valid",
|
|
158
|
+
email: "#{field} bukan alamat email yang valid",
|
|
159
|
+
ip: "#{field} bukan alamat IP yang valid"
|
|
160
|
+
},
|
|
161
|
+
number: {
|
|
162
|
+
min: "`#{value}` lebih kecil dari nilai minimum `#{min}`",
|
|
163
|
+
max: "`#{value}` lebih besar dari nilai maksimum `#{max}`",
|
|
164
|
+
equal: "`#{value}` tidak sama dengan `#{equal}`",
|
|
165
|
+
range: "`#{value}` tidak berada dalam rentang `#{min} ~ #{max}`",
|
|
166
|
+
positive: "`#{value}` bukan angka positif",
|
|
167
|
+
negative: "`#{value}` bukan angka negatif"
|
|
168
|
+
},
|
|
169
|
+
array: {
|
|
170
|
+
length: "Jumlah `#{field}` tidak sama dengan #{length}",
|
|
171
|
+
minLength: "Jumlah `#{field}` minimal #{minLength}",
|
|
172
|
+
maxLength: "Jumlah `#{field}` maksimal #{maxLength}",
|
|
173
|
+
includes: "#{field} tidak mengandung #{includes}",
|
|
174
|
+
deepEqual: "#{field} tidak sama dengan #{deepEqual}",
|
|
175
|
+
empty: "`#{field}` bukan array kosong"
|
|
176
|
+
},
|
|
177
|
+
string: {
|
|
178
|
+
minLength: "Jumlah karakter minimal #{minLength}",
|
|
179
|
+
maxLength: "Jumlah karakter maksimal #{maxLength}",
|
|
180
|
+
length: "Jumlah karakter harus #{length}",
|
|
181
|
+
match: "`#{value}` tidak sesuai pola #{pattern}",
|
|
182
|
+
uppercase: "`#{value}` harus seluruhnya huruf kapital",
|
|
183
|
+
lowercase: "`#{value}` harus seluruhnya huruf kecil"
|
|
184
|
+
},
|
|
185
|
+
object: {
|
|
186
|
+
deepEqual: "`#{field}` tidak sama dengan nilai yang diharapkan",
|
|
187
|
+
hasKeys: "`#{field}` tidak mengandung field yang wajib",
|
|
188
|
+
empty: "`#{field}` bukan objek"
|
|
189
|
+
},
|
|
190
|
+
boolean: {
|
|
191
|
+
true: "Nilai yang diharapkan adalah `true`",
|
|
192
|
+
false: "Nilai yang diharapkan adalah `false`"
|
|
193
|
+
}
|
|
194
|
+
} },
|
|
149
195
|
colorPicker: {
|
|
150
196
|
history: "Warna sejarah",
|
|
151
197
|
preset: "Sistem preset warna",
|