vueless 0.0.493 → 0.0.495
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/package.json +1 -1
- package/types.ts +37 -0
- package/ui.form-calendar/UCalendar.vue +20 -11
- package/ui.form-calendar/UCalendarDayView.vue +1 -1
- package/ui.form-calendar/UCalendarMonthView.vue +1 -1
- package/ui.form-calendar/UCalendarYearView.vue +1 -1
- package/ui.form-calendar/config.ts +1 -0
- package/ui.form-calendar/constants.ts +0 -6
- package/ui.form-calendar/storybook/stories.ts +5 -3
- package/ui.form-calendar/types.ts +7 -2
- package/ui.form-calendar/useAttrs.ts +1 -1
- package/ui.form-calendar/utilDate.ts +2 -2
- package/ui.form-date-picker/UDatePicker.vue +18 -16
- package/ui.form-date-picker/storybook/stories.ts +6 -4
- package/ui.form-date-picker/types.ts +2 -6
- package/ui.form-date-picker/useAttrs.ts +1 -1
- package/ui.form-date-picker-range/UDatePickerRange.vue +371 -433
- package/ui.form-date-picker-range/UDatePickerRangeInputs.vue +67 -76
- package/ui.form-date-picker-range/UDatePickerRangePeriodMenu.vue +158 -205
- package/ui.form-date-picker-range/{constants.js → constants.ts} +17 -18
- package/ui.form-date-picker-range/storybook/Docs.mdx +16 -0
- package/ui.form-date-picker-range/storybook/stories.ts +237 -0
- package/ui.form-date-picker-range/types.ts +193 -0
- package/ui.form-date-picker-range/{useAttrs.js → useAttrs.ts} +21 -5
- package/ui.form-date-picker-range/useLocale.ts +65 -0
- package/ui.form-date-picker-range/{useUserFormat.js → useUserFormat.ts} +22 -8
- package/ui.form-date-picker-range/{utilDateRange.js → utilDateRange.ts} +14 -8
- package/ui.form-date-picker-range/{utilValidation.js → utilValidation.ts} +4 -4
- package/utils/theme.ts +16 -0
- package/web-types.json +158 -52
- package/ui.form-date-picker-range/useLocale.js +0 -63
- /package/ui.form-date-picker-range/{config.js → config.ts} +0 -0
|
@@ -12,13 +12,19 @@ import {
|
|
|
12
12
|
getStartOfYear,
|
|
13
13
|
} from "../ui.form-calendar/utilDate.ts";
|
|
14
14
|
|
|
15
|
-
export
|
|
15
|
+
export interface DatePeriodRange {
|
|
16
|
+
title: string | number;
|
|
17
|
+
startRange: Date;
|
|
18
|
+
endRange: Date;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export function getYearDateList(date: Date) {
|
|
16
22
|
const NUMBER_ADDING_YEAR = 12;
|
|
17
23
|
|
|
18
24
|
const year = date.getFullYear();
|
|
19
25
|
const month = date.getMonth();
|
|
20
26
|
|
|
21
|
-
const years = [];
|
|
27
|
+
const years: DatePeriodRange[] = [];
|
|
22
28
|
|
|
23
29
|
for (let i = 0; i < NUMBER_ADDING_YEAR; i++) {
|
|
24
30
|
const currentYear = year + i;
|
|
@@ -33,13 +39,13 @@ export function getYearDateList(date) {
|
|
|
33
39
|
return years;
|
|
34
40
|
}
|
|
35
41
|
|
|
36
|
-
export function getQuartersDateList(date, quarterLocales = "") {
|
|
42
|
+
export function getQuartersDateList(date: Date, quarterLocales = "") {
|
|
37
43
|
const QUARTER_NUMBER = 4;
|
|
38
44
|
const monthIndex = 0;
|
|
39
45
|
const day = 1;
|
|
40
46
|
const year = date.getFullYear();
|
|
41
47
|
|
|
42
|
-
|
|
48
|
+
const quarters: DatePeriodRange[] = [];
|
|
43
49
|
|
|
44
50
|
const firstQuarter = new Date(year, monthIndex, day);
|
|
45
51
|
|
|
@@ -57,7 +63,7 @@ export function getQuartersDateList(date, quarterLocales = "") {
|
|
|
57
63
|
return quarters;
|
|
58
64
|
}
|
|
59
65
|
|
|
60
|
-
export function getMonthsDateList(date, monthLocales = []) {
|
|
66
|
+
export function getMonthsDateList(date: Date, monthLocales: string[] = []) {
|
|
61
67
|
const year = date.getFullYear();
|
|
62
68
|
|
|
63
69
|
const months = monthLocales.map((item, index) => {
|
|
@@ -71,7 +77,7 @@ export function getMonthsDateList(date, monthLocales = []) {
|
|
|
71
77
|
return months;
|
|
72
78
|
}
|
|
73
79
|
|
|
74
|
-
export function getWeekDateList(date, monthShortLocales =
|
|
80
|
+
export function getWeekDateList(date: Date, monthShortLocales: string[] = []) {
|
|
75
81
|
const month = date.getMonth();
|
|
76
82
|
const year = date.getFullYear();
|
|
77
83
|
const day = 1;
|
|
@@ -90,8 +96,8 @@ export function getWeekDateList(date, monthShortLocales = {}) {
|
|
|
90
96
|
const isDayInPreviousMonth = week === 0 && firstDayOfWeek > 1;
|
|
91
97
|
const isLastWeek = week + day === weeksInMonth;
|
|
92
98
|
|
|
93
|
-
let monthFirstDayOfWeek =
|
|
94
|
-
|
|
99
|
+
let monthFirstDayOfWeek = 0;
|
|
100
|
+
const monthLastDayOfWeek = endOfWeekDate.getMonth();
|
|
95
101
|
|
|
96
102
|
if (isDayInPreviousMonth || isLastWeek) {
|
|
97
103
|
monthFirstDayOfWeek = startOfWeekDate.getMonth();
|
|
@@ -2,21 +2,21 @@ import { getDaysInMonth } from "../ui.form-calendar/utilDate.ts";
|
|
|
2
2
|
|
|
3
3
|
const datePattern = /^\d{1,2}\.\d{1,2}\.\d{4}$/;
|
|
4
4
|
|
|
5
|
-
export function isWrongDateFormat(value) {
|
|
5
|
+
export function isWrongDateFormat(value: string) {
|
|
6
6
|
return !datePattern.test(value);
|
|
7
7
|
}
|
|
8
8
|
|
|
9
|
-
export function isWrongMonthNumber(value) {
|
|
9
|
+
export function isWrongMonthNumber(value: string) {
|
|
10
10
|
const splitDate = value.split(".");
|
|
11
11
|
const month = splitDate[1];
|
|
12
12
|
|
|
13
13
|
return !(Number(month) >= 1 && Number(month) <= 12);
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
-
export function isWrongDayNumber(value) {
|
|
16
|
+
export function isWrongDayNumber(value: string) {
|
|
17
17
|
const [day, month, year] = value.split(".");
|
|
18
18
|
|
|
19
|
-
const daysInMonth = getDaysInMonth(new Date(year, month - 1));
|
|
19
|
+
const daysInMonth = getDaysInMonth(new Date(Number(year), Number(month) - 1));
|
|
20
20
|
|
|
21
21
|
return !(Number(day) >= 1 && Number(day) <= Number(daysInMonth));
|
|
22
22
|
}
|
package/utils/theme.ts
CHANGED
|
@@ -139,6 +139,22 @@ export function setTheme(config: InternalThemeConfig = {}) {
|
|
|
139
139
|
return rootVariables;
|
|
140
140
|
}
|
|
141
141
|
|
|
142
|
+
// todo: need to be reactive same like loader state
|
|
143
|
+
export function getDarkMode() {
|
|
144
|
+
let isDarkMode = undefined;
|
|
145
|
+
let storedDarkMode = null;
|
|
146
|
+
|
|
147
|
+
if (isCSR) {
|
|
148
|
+
storedDarkMode = localStorage.getItem(DARK_MODE_SELECTOR);
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
if (storedDarkMode !== null) {
|
|
152
|
+
isDarkMode = !!Number(storedDarkMode);
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
return isDarkMode;
|
|
156
|
+
}
|
|
157
|
+
|
|
142
158
|
function setDarkMode(config: InternalThemeConfig) {
|
|
143
159
|
config?.darkMode === undefined
|
|
144
160
|
? isCSR && localStorage.removeItem(DARK_MODE_SELECTOR)
|
package/web-types.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"framework": "vue",
|
|
3
3
|
"name": "vueless",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.495",
|
|
5
5
|
"contributions": {
|
|
6
6
|
"html": {
|
|
7
7
|
"description-markup": "markdown",
|
|
@@ -1074,7 +1074,7 @@
|
|
|
1074
1074
|
"description": "Calendar value (JavaScript Date object or string formatted in given `dateFormat` or object when `range` enabled).",
|
|
1075
1075
|
"value": {
|
|
1076
1076
|
"kind": "expression",
|
|
1077
|
-
"type": "
|
|
1077
|
+
"type": "TModelValue"
|
|
1078
1078
|
}
|
|
1079
1079
|
},
|
|
1080
1080
|
{
|
|
@@ -1102,6 +1102,20 @@
|
|
|
1102
1102
|
},
|
|
1103
1103
|
"default": "false"
|
|
1104
1104
|
},
|
|
1105
|
+
{
|
|
1106
|
+
"name": "tabindex",
|
|
1107
|
+
"required": false,
|
|
1108
|
+
"description": "Controls the keyboard “Tab” focus order of elements.",
|
|
1109
|
+
"enum": [
|
|
1110
|
+
"number",
|
|
1111
|
+
"string"
|
|
1112
|
+
],
|
|
1113
|
+
"value": {
|
|
1114
|
+
"kind": "expression",
|
|
1115
|
+
"type": "union"
|
|
1116
|
+
},
|
|
1117
|
+
"default": "1"
|
|
1118
|
+
},
|
|
1105
1119
|
{
|
|
1106
1120
|
"name": "timepicker",
|
|
1107
1121
|
"required": false,
|
|
@@ -2773,13 +2787,9 @@
|
|
|
2773
2787
|
"name": "modelValue",
|
|
2774
2788
|
"required": true,
|
|
2775
2789
|
"description": "Calendar value (JavaScript Date object or string formatted in given `dateFormat` or object when `range` enabled).",
|
|
2776
|
-
"enum": [
|
|
2777
|
-
"Date",
|
|
2778
|
-
"string"
|
|
2779
|
-
],
|
|
2780
2790
|
"value": {
|
|
2781
2791
|
"kind": "expression",
|
|
2782
|
-
"type": "
|
|
2792
|
+
"type": "TModelValue"
|
|
2783
2793
|
}
|
|
2784
2794
|
},
|
|
2785
2795
|
{
|
|
@@ -2968,7 +2978,7 @@
|
|
|
2968
2978
|
"kind": "expression",
|
|
2969
2979
|
"type": "string"
|
|
2970
2980
|
},
|
|
2971
|
-
"default": "getDefault<
|
|
2981
|
+
"default": "getDefault<Props>(defaultConfig, UDatePicker).leftIcon"
|
|
2972
2982
|
},
|
|
2973
2983
|
{
|
|
2974
2984
|
"name": "rightIcon",
|
|
@@ -3125,24 +3135,26 @@
|
|
|
3125
3135
|
"attributes": [
|
|
3126
3136
|
{
|
|
3127
3137
|
"name": "modelValue",
|
|
3138
|
+
"required": true,
|
|
3128
3139
|
"description": "Datepicker range value (JavaScript Date objects or strings formatted in given `dateFormat`).",
|
|
3129
3140
|
"value": {
|
|
3130
3141
|
"kind": "expression",
|
|
3131
|
-
"type": "
|
|
3132
|
-
}
|
|
3133
|
-
"default": "{\n from: null,\n to: null\n}"
|
|
3142
|
+
"type": "TModelValue"
|
|
3143
|
+
}
|
|
3134
3144
|
},
|
|
3135
3145
|
{
|
|
3136
3146
|
"name": "customRangeButton",
|
|
3147
|
+
"required": false,
|
|
3137
3148
|
"description": "Custom range button.",
|
|
3138
3149
|
"value": {
|
|
3139
3150
|
"kind": "expression",
|
|
3140
|
-
"type": "
|
|
3151
|
+
"type": "CustomRangeButton"
|
|
3141
3152
|
},
|
|
3142
|
-
"default": "{\n range: { from: null, to: null },\n label: \"\",\n description: \"\"
|
|
3153
|
+
"default": "() => ({\n range: { from: null, to: null },\n label: \"\",\n description: \"\",\n})"
|
|
3143
3154
|
},
|
|
3144
3155
|
{
|
|
3145
3156
|
"name": "openDirectionX",
|
|
3157
|
+
"required": false,
|
|
3146
3158
|
"description": "Datepicker open direction on x-axis.",
|
|
3147
3159
|
"enum": [
|
|
3148
3160
|
"auto",
|
|
@@ -3151,12 +3163,13 @@
|
|
|
3151
3163
|
],
|
|
3152
3164
|
"value": {
|
|
3153
3165
|
"kind": "expression",
|
|
3154
|
-
"type": "
|
|
3166
|
+
"type": "union"
|
|
3155
3167
|
},
|
|
3156
3168
|
"default": "auto"
|
|
3157
3169
|
},
|
|
3158
3170
|
{
|
|
3159
3171
|
"name": "openDirectionY",
|
|
3172
|
+
"required": false,
|
|
3160
3173
|
"description": "Datepicker open direction on y-axis.",
|
|
3161
3174
|
"enum": [
|
|
3162
3175
|
"auto",
|
|
@@ -3165,12 +3178,13 @@
|
|
|
3165
3178
|
],
|
|
3166
3179
|
"value": {
|
|
3167
3180
|
"kind": "expression",
|
|
3168
|
-
"type": "
|
|
3181
|
+
"type": "union"
|
|
3169
3182
|
},
|
|
3170
3183
|
"default": "auto"
|
|
3171
3184
|
},
|
|
3172
3185
|
{
|
|
3173
3186
|
"name": "variant",
|
|
3187
|
+
"required": false,
|
|
3174
3188
|
"description": "The variant of the date picker.",
|
|
3175
3189
|
"enum": [
|
|
3176
3190
|
"button",
|
|
@@ -3178,29 +3192,55 @@
|
|
|
3178
3192
|
],
|
|
3179
3193
|
"value": {
|
|
3180
3194
|
"kind": "expression",
|
|
3181
|
-
"type": "
|
|
3195
|
+
"type": "union"
|
|
3182
3196
|
},
|
|
3183
3197
|
"default": "button"
|
|
3184
3198
|
},
|
|
3185
3199
|
{
|
|
3186
3200
|
"name": "minDate",
|
|
3201
|
+
"required": false,
|
|
3187
3202
|
"description": "Min date (JavaScript Date object or string formatted in given `dateFormat`).",
|
|
3203
|
+
"enum": [
|
|
3204
|
+
"string",
|
|
3205
|
+
"Date",
|
|
3206
|
+
"undefined"
|
|
3207
|
+
],
|
|
3188
3208
|
"value": {
|
|
3189
3209
|
"kind": "expression",
|
|
3190
|
-
"type": "
|
|
3210
|
+
"type": "union"
|
|
3191
3211
|
}
|
|
3192
3212
|
},
|
|
3193
3213
|
{
|
|
3194
3214
|
"name": "maxDate",
|
|
3215
|
+
"required": false,
|
|
3195
3216
|
"description": "Max date (JavaScript Date object or string formatted in given `dateFormat`).",
|
|
3217
|
+
"enum": [
|
|
3218
|
+
"string",
|
|
3219
|
+
"Date",
|
|
3220
|
+
"undefined"
|
|
3221
|
+
],
|
|
3196
3222
|
"value": {
|
|
3197
3223
|
"kind": "expression",
|
|
3198
|
-
"type": "
|
|
3224
|
+
"type": "union"
|
|
3199
3225
|
}
|
|
3200
3226
|
},
|
|
3201
3227
|
{
|
|
3202
3228
|
"name": "dateFormat",
|
|
3229
|
+
"required": false,
|
|
3203
3230
|
"description": "Date string format.",
|
|
3231
|
+
"enum": [
|
|
3232
|
+
"string",
|
|
3233
|
+
"undefined"
|
|
3234
|
+
],
|
|
3235
|
+
"value": {
|
|
3236
|
+
"kind": "expression",
|
|
3237
|
+
"type": "union"
|
|
3238
|
+
}
|
|
3239
|
+
},
|
|
3240
|
+
{
|
|
3241
|
+
"name": "dateTimeFormat",
|
|
3242
|
+
"required": false,
|
|
3243
|
+
"description": "Same as date format, but used when timepicker is enabled.",
|
|
3204
3244
|
"value": {
|
|
3205
3245
|
"kind": "expression",
|
|
3206
3246
|
"type": "string"
|
|
@@ -3208,6 +3248,7 @@
|
|
|
3208
3248
|
},
|
|
3209
3249
|
{
|
|
3210
3250
|
"name": "userDateFormat",
|
|
3251
|
+
"required": false,
|
|
3211
3252
|
"description": "User-friendly date format (it will be shown in UI).",
|
|
3212
3253
|
"value": {
|
|
3213
3254
|
"kind": "expression",
|
|
@@ -3217,6 +3258,7 @@
|
|
|
3217
3258
|
},
|
|
3218
3259
|
{
|
|
3219
3260
|
"name": "size",
|
|
3261
|
+
"required": false,
|
|
3220
3262
|
"description": "Datepicker size.",
|
|
3221
3263
|
"enum": [
|
|
3222
3264
|
"sm",
|
|
@@ -3225,21 +3267,23 @@
|
|
|
3225
3267
|
],
|
|
3226
3268
|
"value": {
|
|
3227
3269
|
"kind": "expression",
|
|
3228
|
-
"type": "
|
|
3270
|
+
"type": "union"
|
|
3229
3271
|
},
|
|
3230
3272
|
"default": "md"
|
|
3231
3273
|
},
|
|
3232
3274
|
{
|
|
3233
3275
|
"name": "leftIcon",
|
|
3276
|
+
"required": false,
|
|
3234
3277
|
"description": "Left icon name.",
|
|
3235
3278
|
"value": {
|
|
3236
3279
|
"kind": "expression",
|
|
3237
3280
|
"type": "string"
|
|
3238
3281
|
},
|
|
3239
|
-
"default": "
|
|
3282
|
+
"default": "getDefault<Props>(defaultConfig, UDatePickerRange).leftIcon"
|
|
3240
3283
|
},
|
|
3241
3284
|
{
|
|
3242
3285
|
"name": "rightIcon",
|
|
3286
|
+
"required": false,
|
|
3243
3287
|
"description": "Right icon name.",
|
|
3244
3288
|
"value": {
|
|
3245
3289
|
"kind": "expression",
|
|
@@ -3249,16 +3293,18 @@
|
|
|
3249
3293
|
},
|
|
3250
3294
|
{
|
|
3251
3295
|
"name": "label",
|
|
3252
|
-
"
|
|
3296
|
+
"required": false,
|
|
3297
|
+
"description": "Datepicker label.",
|
|
3253
3298
|
"value": {
|
|
3254
3299
|
"kind": "expression",
|
|
3255
3300
|
"type": "string"
|
|
3256
3301
|
},
|
|
3257
|
-
"default": "
|
|
3302
|
+
"default": "getDefault<Props>(defaultConfig, UDatePickerRange).label"
|
|
3258
3303
|
},
|
|
3259
3304
|
{
|
|
3260
3305
|
"name": "labelAlign",
|
|
3261
|
-
"
|
|
3306
|
+
"required": false,
|
|
3307
|
+
"description": "Datepicker label placement.",
|
|
3262
3308
|
"enum": [
|
|
3263
3309
|
"top",
|
|
3264
3310
|
"topInside",
|
|
@@ -3268,40 +3314,41 @@
|
|
|
3268
3314
|
],
|
|
3269
3315
|
"value": {
|
|
3270
3316
|
"kind": "expression",
|
|
3271
|
-
"type": "
|
|
3317
|
+
"type": "union"
|
|
3272
3318
|
},
|
|
3273
3319
|
"default": "topInside"
|
|
3274
3320
|
},
|
|
3275
3321
|
{
|
|
3276
3322
|
"name": "placeholder",
|
|
3277
|
-
"
|
|
3323
|
+
"required": false,
|
|
3324
|
+
"description": "Datepicker placeholder.",
|
|
3278
3325
|
"value": {
|
|
3279
3326
|
"kind": "expression",
|
|
3280
3327
|
"type": "string"
|
|
3281
|
-
}
|
|
3282
|
-
"default": "\"\""
|
|
3328
|
+
}
|
|
3283
3329
|
},
|
|
3284
3330
|
{
|
|
3285
3331
|
"name": "description",
|
|
3286
|
-
"
|
|
3332
|
+
"required": false,
|
|
3333
|
+
"description": "Datepicker description.",
|
|
3287
3334
|
"value": {
|
|
3288
3335
|
"kind": "expression",
|
|
3289
3336
|
"type": "string"
|
|
3290
|
-
}
|
|
3291
|
-
"default": "\"\""
|
|
3337
|
+
}
|
|
3292
3338
|
},
|
|
3293
3339
|
{
|
|
3294
3340
|
"name": "error",
|
|
3295
|
-
"
|
|
3341
|
+
"required": false,
|
|
3342
|
+
"description": "Datepicker error message.",
|
|
3296
3343
|
"value": {
|
|
3297
3344
|
"kind": "expression",
|
|
3298
3345
|
"type": "string"
|
|
3299
|
-
}
|
|
3300
|
-
"default": "\"\""
|
|
3346
|
+
}
|
|
3301
3347
|
},
|
|
3302
3348
|
{
|
|
3303
3349
|
"name": "disabled",
|
|
3304
|
-
"
|
|
3350
|
+
"required": false,
|
|
3351
|
+
"description": "Make datepicker disabled.",
|
|
3305
3352
|
"value": {
|
|
3306
3353
|
"kind": "expression",
|
|
3307
3354
|
"type": "boolean"
|
|
@@ -3310,6 +3357,7 @@
|
|
|
3310
3357
|
},
|
|
3311
3358
|
{
|
|
3312
3359
|
"name": "id",
|
|
3360
|
+
"required": false,
|
|
3313
3361
|
"description": "Unique element id.",
|
|
3314
3362
|
"value": {
|
|
3315
3363
|
"kind": "expression",
|
|
@@ -3319,15 +3367,17 @@
|
|
|
3319
3367
|
},
|
|
3320
3368
|
{
|
|
3321
3369
|
"name": "config",
|
|
3370
|
+
"required": false,
|
|
3322
3371
|
"description": "Component config object.",
|
|
3323
3372
|
"value": {
|
|
3324
3373
|
"kind": "expression",
|
|
3325
|
-
"type": "
|
|
3374
|
+
"type": "Config"
|
|
3326
3375
|
},
|
|
3327
|
-
"default": "{}"
|
|
3376
|
+
"default": "() => ({})"
|
|
3328
3377
|
},
|
|
3329
3378
|
{
|
|
3330
3379
|
"name": "dataTest",
|
|
3380
|
+
"required": false,
|
|
3331
3381
|
"description": "Data-test attribute for automated testing.",
|
|
3332
3382
|
"value": {
|
|
3333
3383
|
"kind": "expression",
|
|
@@ -3393,14 +3443,19 @@
|
|
|
3393
3443
|
"required": true,
|
|
3394
3444
|
"value": {
|
|
3395
3445
|
"kind": "expression",
|
|
3396
|
-
"type": "
|
|
3446
|
+
"type": "SortedLocale"
|
|
3397
3447
|
}
|
|
3398
3448
|
},
|
|
3399
3449
|
{
|
|
3400
3450
|
"name": "dateFormat",
|
|
3451
|
+
"required": true,
|
|
3452
|
+
"enum": [
|
|
3453
|
+
"string",
|
|
3454
|
+
"undefined"
|
|
3455
|
+
],
|
|
3401
3456
|
"value": {
|
|
3402
3457
|
"kind": "expression",
|
|
3403
|
-
"type": "
|
|
3458
|
+
"type": "union"
|
|
3404
3459
|
}
|
|
3405
3460
|
},
|
|
3406
3461
|
{
|
|
@@ -3411,12 +3466,38 @@
|
|
|
3411
3466
|
"type": "string"
|
|
3412
3467
|
}
|
|
3413
3468
|
},
|
|
3469
|
+
{
|
|
3470
|
+
"name": "maxDate",
|
|
3471
|
+
"required": true,
|
|
3472
|
+
"enum": [
|
|
3473
|
+
"string",
|
|
3474
|
+
"Date",
|
|
3475
|
+
"undefined"
|
|
3476
|
+
],
|
|
3477
|
+
"value": {
|
|
3478
|
+
"kind": "expression",
|
|
3479
|
+
"type": "union"
|
|
3480
|
+
}
|
|
3481
|
+
},
|
|
3482
|
+
{
|
|
3483
|
+
"name": "minDate",
|
|
3484
|
+
"required": true,
|
|
3485
|
+
"enum": [
|
|
3486
|
+
"string",
|
|
3487
|
+
"Date",
|
|
3488
|
+
"undefined"
|
|
3489
|
+
],
|
|
3490
|
+
"value": {
|
|
3491
|
+
"kind": "expression",
|
|
3492
|
+
"type": "union"
|
|
3493
|
+
}
|
|
3494
|
+
},
|
|
3414
3495
|
{
|
|
3415
3496
|
"name": "config",
|
|
3416
3497
|
"required": true,
|
|
3417
3498
|
"value": {
|
|
3418
3499
|
"kind": "expression",
|
|
3419
|
-
"type": "
|
|
3500
|
+
"type": "Config"
|
|
3420
3501
|
}
|
|
3421
3502
|
},
|
|
3422
3503
|
{
|
|
@@ -3424,10 +3505,18 @@
|
|
|
3424
3505
|
"required": true,
|
|
3425
3506
|
"value": {
|
|
3426
3507
|
"kind": "expression",
|
|
3427
|
-
"type": "
|
|
3508
|
+
"type": "UDatePickerRangeInputsAttrs"
|
|
3428
3509
|
}
|
|
3429
3510
|
}
|
|
3430
3511
|
],
|
|
3512
|
+
"exposes": [
|
|
3513
|
+
{
|
|
3514
|
+
"name": "rangeInputEndRef"
|
|
3515
|
+
},
|
|
3516
|
+
{
|
|
3517
|
+
"name": "rangeInputStartRef"
|
|
3518
|
+
}
|
|
3519
|
+
],
|
|
3431
3520
|
"source": {
|
|
3432
3521
|
"module": "./src/ui.form-date-picker-range/UDatePickerRangeInputs.vue",
|
|
3433
3522
|
"symbol": "default"
|
|
@@ -3442,44 +3531,61 @@
|
|
|
3442
3531
|
"required": true,
|
|
3443
3532
|
"value": {
|
|
3444
3533
|
"kind": "expression",
|
|
3445
|
-
"type": "
|
|
3534
|
+
"type": "SortedLocale"
|
|
3446
3535
|
}
|
|
3447
3536
|
},
|
|
3448
3537
|
{
|
|
3449
|
-
"name": "
|
|
3538
|
+
"name": "dateFormat",
|
|
3450
3539
|
"required": true,
|
|
3540
|
+
"enum": [
|
|
3541
|
+
"string",
|
|
3542
|
+
"undefined"
|
|
3543
|
+
],
|
|
3451
3544
|
"value": {
|
|
3452
3545
|
"kind": "expression",
|
|
3453
|
-
"type": "
|
|
3546
|
+
"type": "union"
|
|
3454
3547
|
}
|
|
3455
3548
|
},
|
|
3456
3549
|
{
|
|
3457
|
-
"name": "
|
|
3550
|
+
"name": "isPeriod",
|
|
3458
3551
|
"required": true,
|
|
3459
3552
|
"value": {
|
|
3460
3553
|
"kind": "expression",
|
|
3461
|
-
"type": "
|
|
3554
|
+
"type": "IsPeriod"
|
|
3462
3555
|
}
|
|
3463
3556
|
},
|
|
3464
3557
|
{
|
|
3465
|
-
"name": "
|
|
3558
|
+
"name": "maxDate",
|
|
3559
|
+
"required": true,
|
|
3560
|
+
"enum": [
|
|
3561
|
+
"string",
|
|
3562
|
+
"Date",
|
|
3563
|
+
"undefined"
|
|
3564
|
+
],
|
|
3466
3565
|
"value": {
|
|
3467
3566
|
"kind": "expression",
|
|
3468
|
-
"type": "
|
|
3567
|
+
"type": "union"
|
|
3469
3568
|
}
|
|
3470
3569
|
},
|
|
3471
3570
|
{
|
|
3472
3571
|
"name": "minDate",
|
|
3572
|
+
"required": true,
|
|
3573
|
+
"enum": [
|
|
3574
|
+
"string",
|
|
3575
|
+
"Date",
|
|
3576
|
+
"undefined"
|
|
3577
|
+
],
|
|
3473
3578
|
"value": {
|
|
3474
3579
|
"kind": "expression",
|
|
3475
|
-
"type": "
|
|
3580
|
+
"type": "union"
|
|
3476
3581
|
}
|
|
3477
3582
|
},
|
|
3478
3583
|
{
|
|
3479
|
-
"name": "
|
|
3584
|
+
"name": "customRangeButton",
|
|
3585
|
+
"required": true,
|
|
3480
3586
|
"value": {
|
|
3481
3587
|
"kind": "expression",
|
|
3482
|
-
"type": "
|
|
3588
|
+
"type": "CustomRangeButton"
|
|
3483
3589
|
}
|
|
3484
3590
|
},
|
|
3485
3591
|
{
|
|
@@ -3487,7 +3593,7 @@
|
|
|
3487
3593
|
"required": true,
|
|
3488
3594
|
"value": {
|
|
3489
3595
|
"kind": "expression",
|
|
3490
|
-
"type": "
|
|
3596
|
+
"type": "Config"
|
|
3491
3597
|
}
|
|
3492
3598
|
},
|
|
3493
3599
|
{
|
|
@@ -3495,7 +3601,7 @@
|
|
|
3495
3601
|
"required": true,
|
|
3496
3602
|
"value": {
|
|
3497
3603
|
"kind": "expression",
|
|
3498
|
-
"type": "
|
|
3604
|
+
"type": "UDatePickerRangePeriodMenuAttrs"
|
|
3499
3605
|
}
|
|
3500
3606
|
}
|
|
3501
3607
|
],
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { computed } from "vue";
|
|
2
|
-
import { useLocale as useGlobalLocale } from "../composables/useLocale.ts";
|
|
3
|
-
|
|
4
|
-
import { merge } from "lodash-es";
|
|
5
|
-
import { getSortedLocale } from "../ui.form-calendar/utilDate.ts";
|
|
6
|
-
|
|
7
|
-
import { LOCALE_TYPE } from "../ui.form-calendar/constants.ts";
|
|
8
|
-
import { UDatePickerRange } from "./constants.js";
|
|
9
|
-
import defaultConfig from "./config.js";
|
|
10
|
-
|
|
11
|
-
export function useLocale(props) {
|
|
12
|
-
const { tm } = useGlobalLocale();
|
|
13
|
-
|
|
14
|
-
const i18nGlobal = tm(UDatePickerRange);
|
|
15
|
-
|
|
16
|
-
const currentLocale = computed(() => merge(defaultConfig.i18n, i18nGlobal, props.config.i18n));
|
|
17
|
-
|
|
18
|
-
const locale = computed(() => {
|
|
19
|
-
const { months, weekdays } = currentLocale.value;
|
|
20
|
-
|
|
21
|
-
// formatted locale
|
|
22
|
-
return {
|
|
23
|
-
...currentLocale.value,
|
|
24
|
-
months: {
|
|
25
|
-
shorthand: getSortedLocale(months.shorthand, LOCALE_TYPE.month),
|
|
26
|
-
longhand: getSortedLocale(months.longhand, LOCALE_TYPE.month),
|
|
27
|
-
},
|
|
28
|
-
weekdays: {
|
|
29
|
-
shorthand: getSortedLocale(weekdays.shorthand, LOCALE_TYPE.day),
|
|
30
|
-
longhand: getSortedLocale(weekdays.longhand, LOCALE_TYPE.day),
|
|
31
|
-
},
|
|
32
|
-
};
|
|
33
|
-
});
|
|
34
|
-
|
|
35
|
-
const userFormatLocale = computed(() => {
|
|
36
|
-
const { months, weekdays } = currentLocale.value;
|
|
37
|
-
|
|
38
|
-
const monthsLonghand =
|
|
39
|
-
Boolean(props.config.i18n?.months?.userFormat) || Boolean(i18nGlobal?.months?.userFormat)
|
|
40
|
-
? months.userFormat
|
|
41
|
-
: months.longhand;
|
|
42
|
-
|
|
43
|
-
const weekdaysLonghand =
|
|
44
|
-
Boolean(props.config.i18n?.weekdays?.userFormat) || Boolean(i18nGlobal?.weekdays?.userFormat)
|
|
45
|
-
? weekdays.userFormat
|
|
46
|
-
: weekdays.longhand;
|
|
47
|
-
|
|
48
|
-
// formatted locale
|
|
49
|
-
return {
|
|
50
|
-
...currentLocale,
|
|
51
|
-
months: {
|
|
52
|
-
shorthand: getSortedLocale(months.shorthand, LOCALE_TYPE.month),
|
|
53
|
-
longhand: getSortedLocale(monthsLonghand, LOCALE_TYPE.month),
|
|
54
|
-
},
|
|
55
|
-
weekdays: {
|
|
56
|
-
shorthand: getSortedLocale(weekdays.shorthand, LOCALE_TYPE.day),
|
|
57
|
-
longhand: getSortedLocale(weekdaysLonghand, LOCALE_TYPE.day),
|
|
58
|
-
},
|
|
59
|
-
};
|
|
60
|
-
});
|
|
61
|
-
|
|
62
|
-
return { userFormatLocale, locale };
|
|
63
|
-
}
|
|
File without changes
|