@onereach/ui-components 3.0.4-beta.2487.0 → 3.0.4-beta.2500.0
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/dist/bundled/v2/{OrDateTimePicker-11b6d4dd.js → OrDateTimePicker-5a379f88.js} +85 -19
- package/dist/bundled/v2/components/index.js +1 -1
- package/dist/bundled/v2/components/or-date-time-picker-v3/OrDateTimePicker.vue.d.ts +20 -1
- package/dist/bundled/v2/components/or-date-time-picker-v3/index.js +1 -1
- package/dist/bundled/v2/components/or-date-time-picker-v3/partials/or-date-time-picker-day-select/OrDateTimePickerDaySelect.vue.d.ts +12 -0
- package/dist/bundled/v2/components/or-date-time-picker-v3/partials/or-date-time-picker-month-select/OrDateTimePickerMonthSelect.vue.d.ts +12 -0
- package/dist/bundled/v2/components/or-date-time-picker-v3/partials/or-date-time-picker-time-select/OrDateTimePickerTimeSelect.vue.d.ts +12 -0
- package/dist/bundled/v2/index.js +2 -2
- package/dist/bundled/v3/{OrDateTimePicker.vue_vue_type_script_lang-b9bc77aa.js → OrDateTimePicker.vue_vue_type_script_lang-77c42110.js} +65 -8
- package/dist/bundled/v3/components/index.js +1 -1
- package/dist/bundled/v3/components/or-date-time-picker-v3/OrDateTimePicker.vue.d.ts +20 -1
- package/dist/bundled/v3/components/or-date-time-picker-v3/index.js +1 -1
- package/dist/bundled/v3/components/or-date-time-picker-v3/partials/or-date-time-picker-day-select/OrDateTimePickerDaySelect.vue.d.ts +12 -0
- package/dist/bundled/v3/components/or-date-time-picker-v3/partials/or-date-time-picker-month-select/OrDateTimePickerMonthSelect.vue.d.ts +12 -0
- package/dist/bundled/v3/components/or-date-time-picker-v3/partials/or-date-time-picker-time-select/OrDateTimePickerTimeSelect.vue.d.ts +12 -0
- package/dist/bundled/v3/index.js +26 -19
- package/dist/esm/v2/{OrDateTimePicker-7411ea1f.js → OrDateTimePicker-9b277e74.js} +88 -22
- package/dist/esm/v2/components/index.js +1 -1
- package/dist/esm/v2/components/or-date-time-picker-v3/OrDateTimePicker.vue.d.ts +20 -1
- package/dist/esm/v2/components/or-date-time-picker-v3/index.js +4 -4
- package/dist/esm/v2/components/or-date-time-picker-v3/partials/or-date-time-picker-day-select/OrDateTimePickerDaySelect.vue.d.ts +12 -0
- package/dist/esm/v2/components/or-date-time-picker-v3/partials/or-date-time-picker-month-select/OrDateTimePickerMonthSelect.vue.d.ts +12 -0
- package/dist/esm/v2/components/or-date-time-picker-v3/partials/or-date-time-picker-time-select/OrDateTimePickerTimeSelect.vue.d.ts +12 -0
- package/dist/esm/v2/index.js +1 -1
- package/dist/esm/v3/{OrDateTimePicker-966d5b1d.js → OrDateTimePicker-46b452b3.js} +91 -27
- package/dist/esm/v3/components/index.js +1 -1
- package/dist/esm/v3/components/or-date-time-picker-v3/OrDateTimePicker.vue.d.ts +20 -1
- package/dist/esm/v3/components/or-date-time-picker-v3/index.js +3 -3
- package/dist/esm/v3/components/or-date-time-picker-v3/partials/or-date-time-picker-day-select/OrDateTimePickerDaySelect.vue.d.ts +12 -0
- package/dist/esm/v3/components/or-date-time-picker-v3/partials/or-date-time-picker-month-select/OrDateTimePickerMonthSelect.vue.d.ts +12 -0
- package/dist/esm/v3/components/or-date-time-picker-v3/partials/or-date-time-picker-time-select/OrDateTimePickerTimeSelect.vue.d.ts +12 -0
- package/dist/esm/v3/index.js +1 -1
- package/package.json +2 -2
- package/src/components/or-date-time-picker-v3/OrDateTimePicker.stories3.ts +4 -0
- package/src/components/or-date-time-picker-v3/OrDateTimePicker.vue +88 -34
- package/src/components/or-date-time-picker-v3/partials/or-date-time-picker-day-select/OrDateTimePickerDaySelect.vue +7 -1
- package/src/components/or-date-time-picker-v3/partials/or-date-time-picker-day-select/styles.ts +3 -0
- package/src/components/or-date-time-picker-v3/partials/or-date-time-picker-month-select/OrDateTimePickerMonthSelect.vue +8 -1
- package/src/components/or-date-time-picker-v3/partials/or-date-time-picker-time-select/OrDateTimePickerTimeSelect.vue +8 -1
- package/src/components/or-date-time-picker-v3/styles.ts +5 -2
|
@@ -27,29 +27,59 @@
|
|
|
27
27
|
:readonly="readonly"
|
|
28
28
|
:disabled="disabled"
|
|
29
29
|
>
|
|
30
|
-
<input
|
|
30
|
+
<!-- <input
|
|
31
31
|
ref="dateControl"
|
|
32
32
|
v-dropdown-open="toggleDatePopover"
|
|
33
33
|
v-dropdown-close="closeDatePopover"
|
|
34
34
|
v-bind="controlAttributes"
|
|
35
35
|
:class="controlStyles"
|
|
36
|
-
:type="'
|
|
36
|
+
:type="'text'"
|
|
37
|
+
:value="formatDate(proxyModelValue)"
|
|
38
|
+
:required="required"
|
|
39
|
+
:readonly="readonly"
|
|
40
|
+
:disabled="disabled"
|
|
41
|
+
> -->
|
|
42
|
+
|
|
43
|
+
<!-- <input
|
|
44
|
+
ref="timeControl"
|
|
45
|
+
v-dropdown-open="toggleTimePopover"
|
|
46
|
+
v-dropdown-close="closeTimePopover"
|
|
47
|
+
v-bind="controlAttributes"
|
|
48
|
+
:class="controlStyles"
|
|
49
|
+
:type="'text'"
|
|
50
|
+
:value="formatTime(proxyModelValue)"
|
|
51
|
+
:required="required"
|
|
52
|
+
:readonly="readonly"
|
|
53
|
+
:disabled="disabled"
|
|
54
|
+
> -->
|
|
55
|
+
|
|
56
|
+
<div
|
|
57
|
+
ref="dateControl"
|
|
58
|
+
v-dropdown-open="toggleDatePopover"
|
|
59
|
+
v-dropdown-close="closeDatePopover"
|
|
60
|
+
v-bind="controlAttributes"
|
|
61
|
+
:class="controlStyles"
|
|
62
|
+
:contenteditable="true"
|
|
37
63
|
:required="required"
|
|
38
64
|
:readonly="readonly"
|
|
39
65
|
:disabled="disabled"
|
|
40
66
|
>
|
|
67
|
+
{{ formatDate(proxyModelValue) }}
|
|
68
|
+
</div>
|
|
41
69
|
|
|
42
|
-
<
|
|
70
|
+
<div
|
|
43
71
|
ref="timeControl"
|
|
44
72
|
v-dropdown-open="toggleTimePopover"
|
|
45
73
|
v-dropdown-close="closeTimePopover"
|
|
46
74
|
v-bind="controlAttributes"
|
|
47
75
|
:class="controlStyles"
|
|
48
|
-
:
|
|
76
|
+
:contenteditable="true"
|
|
49
77
|
:required="required"
|
|
50
78
|
:readonly="readonly"
|
|
51
79
|
:disabled="disabled"
|
|
52
80
|
>
|
|
81
|
+
{{ formatTime(proxyModelValue) }}
|
|
82
|
+
</div>
|
|
53
83
|
|
|
54
84
|
<OrPopover
|
|
55
85
|
ref="datePopover"
|
|
@@ -59,16 +89,22 @@
|
|
|
59
89
|
>
|
|
60
90
|
<OrDateTimePickerPopoverHeader>
|
|
61
91
|
<OrDateTimePickerMobileControl label="Date">
|
|
62
|
-
|
|
92
|
+
{{ formatDateAlt(draftModelValue) }}
|
|
63
93
|
</OrDateTimePickerMobileControl>
|
|
64
94
|
|
|
65
95
|
<OrDateTimePickerMobileControl label="Time">
|
|
66
|
-
|
|
96
|
+
{{ formatTimeAlt(draftModelValue) }}
|
|
67
97
|
</OrDateTimePickerMobileControl>
|
|
68
98
|
</OrDateTimePickerPopoverHeader>
|
|
69
99
|
|
|
70
|
-
<OrDateTimePickerMonthSelect
|
|
71
|
-
|
|
100
|
+
<OrDateTimePickerMonthSelect
|
|
101
|
+
v-model="draftModelValue"
|
|
102
|
+
:filter="filter"
|
|
103
|
+
/>
|
|
104
|
+
<OrDateTimePickerDaySelect
|
|
105
|
+
v-model="draftModelValue"
|
|
106
|
+
:filter="filter"
|
|
107
|
+
/>
|
|
72
108
|
|
|
73
109
|
<OrDateTimePickerPopoverFooter
|
|
74
110
|
@resolve="proxyModelValue = draftModelValue; datePopover.close()"
|
|
@@ -84,15 +120,18 @@
|
|
|
84
120
|
>
|
|
85
121
|
<OrDateTimePickerPopoverHeader>
|
|
86
122
|
<OrDateTimePickerMobileControl label="Date">
|
|
87
|
-
|
|
123
|
+
{{ formatDateAlt(draftModelValue) }}
|
|
88
124
|
</OrDateTimePickerMobileControl>
|
|
89
125
|
|
|
90
126
|
<OrDateTimePickerMobileControl label="Time">
|
|
91
|
-
|
|
127
|
+
{{ formatTimeAlt(draftModelValue) }}
|
|
92
128
|
</OrDateTimePickerMobileControl>
|
|
93
129
|
</OrDateTimePickerPopoverHeader>
|
|
94
130
|
|
|
95
|
-
<OrDateTimePickerTimeSelect
|
|
131
|
+
<OrDateTimePickerTimeSelect
|
|
132
|
+
v-model="draftModelValue"
|
|
133
|
+
:filter="filter"
|
|
134
|
+
/>
|
|
96
135
|
|
|
97
136
|
<OrDateTimePickerPopoverFooter
|
|
98
137
|
@resolve="proxyModelValue = draftModelValue; timePopover.close()"
|
|
@@ -132,7 +171,6 @@
|
|
|
132
171
|
|
|
133
172
|
<script lang="ts">
|
|
134
173
|
import { computed, defineComponent, PropType, reactive, ref, watch } from 'vue-demi';
|
|
135
|
-
import { DateTimePickerSize } from '.';
|
|
136
174
|
import { DropdownClose, DropdownOpen } from '../../directives';
|
|
137
175
|
import { useControlAttributes, useIdAttribute, useValidationAttributes } from '../../hooks';
|
|
138
176
|
import { OrErrorV3 as OrError } from '../or-error-v3';
|
|
@@ -147,6 +185,7 @@ import OrDateTimePickerMonthSelect from './partials/or-date-time-picker-month-se
|
|
|
147
185
|
import OrDateTimePickerPopoverFooter from './partials/or-date-time-picker-popover-footer/OrDateTimePickerPopoverFooter.vue';
|
|
148
186
|
import OrDateTimePickerPopoverHeader from './partials/or-date-time-picker-popover-header/OrDateTimePickerPopoverHeader.vue';
|
|
149
187
|
import OrDateTimePickerTimeSelect from './partials/or-date-time-picker-time-select/OrDateTimePickerTimeSelect.vue';
|
|
188
|
+
import { DateTimePickerSize } from './props';
|
|
150
189
|
import { DateTimePicker, DateTimePickerControl } from './styles';
|
|
151
190
|
|
|
152
191
|
export default defineComponent({
|
|
@@ -183,6 +222,11 @@ export default defineComponent({
|
|
|
183
222
|
default: undefined,
|
|
184
223
|
},
|
|
185
224
|
|
|
225
|
+
filter: {
|
|
226
|
+
type: Function as PropType<(value: Date) => boolean>,
|
|
227
|
+
default: undefined,
|
|
228
|
+
},
|
|
229
|
+
|
|
186
230
|
size: {
|
|
187
231
|
type: String as PropType<DateTimePickerSize>,
|
|
188
232
|
default: DateTimePickerSize.M,
|
|
@@ -329,6 +373,34 @@ export default defineComponent({
|
|
|
329
373
|
}
|
|
330
374
|
}
|
|
331
375
|
|
|
376
|
+
function formatDate(value?: Date): string {
|
|
377
|
+
return value?.toLocaleString('default', {
|
|
378
|
+
dateStyle: 'short',
|
|
379
|
+
timeZone: 'UTC',
|
|
380
|
+
}) ?? '--';
|
|
381
|
+
}
|
|
382
|
+
|
|
383
|
+
function formatTime(value?: Date): string {
|
|
384
|
+
return value?.toLocaleString('default', {
|
|
385
|
+
timeStyle: 'short',
|
|
386
|
+
timeZone: 'UTC',
|
|
387
|
+
}) ?? '--';
|
|
388
|
+
}
|
|
389
|
+
|
|
390
|
+
function formatDateAlt(value?: Date): string {
|
|
391
|
+
return value?.toLocaleString('default', {
|
|
392
|
+
dateStyle: 'medium',
|
|
393
|
+
timeZone: 'UTC',
|
|
394
|
+
}) ?? '--';
|
|
395
|
+
}
|
|
396
|
+
|
|
397
|
+
function formatTimeAlt(value?: Date): string {
|
|
398
|
+
return value?.toLocaleString('default', {
|
|
399
|
+
timeStyle: 'short',
|
|
400
|
+
timeZone: 'UTC',
|
|
401
|
+
}) ?? '--';
|
|
402
|
+
}
|
|
403
|
+
|
|
332
404
|
return {
|
|
333
405
|
root,
|
|
334
406
|
dateControl,
|
|
@@ -346,6 +418,10 @@ export default defineComponent({
|
|
|
346
418
|
toggleTimePopover,
|
|
347
419
|
closeDatePopover,
|
|
348
420
|
closeTimePopover,
|
|
421
|
+
formatDate,
|
|
422
|
+
formatTime,
|
|
423
|
+
formatDateAlt,
|
|
424
|
+
formatTimeAlt,
|
|
349
425
|
};
|
|
350
426
|
},
|
|
351
427
|
});
|
|
@@ -357,26 +433,4 @@ input {
|
|
|
357
433
|
background: none;
|
|
358
434
|
outline: none;
|
|
359
435
|
}
|
|
360
|
-
|
|
361
|
-
input[type="date"]::-webkit-datetime-edit-day-field,
|
|
362
|
-
input[type="date"]::-webkit-datetime-edit-month-field,
|
|
363
|
-
input[type="date"]::-webkit-datetime-edit-year-field {
|
|
364
|
-
display: none;
|
|
365
|
-
}
|
|
366
|
-
|
|
367
|
-
input[type="time"]::-webkit-datetime-edit-hour-field,
|
|
368
|
-
input[type="time"]::-webkit-datetime-edit-minute-field,
|
|
369
|
-
input[type="time"]::-webkit-datetime-edit-ampm-field {
|
|
370
|
-
display: none;
|
|
371
|
-
}
|
|
372
|
-
|
|
373
|
-
input[type="date"]::-webkit-datetime-edit-text,
|
|
374
|
-
input[type="time"]::-webkit-datetime-edit-text {
|
|
375
|
-
display: none;
|
|
376
|
-
}
|
|
377
|
-
|
|
378
|
-
input[type="date"]::-webkit-calendar-picker-indicator,
|
|
379
|
-
input[type="time"]::-webkit-calendar-picker-indicator {
|
|
380
|
-
display: none;
|
|
381
|
-
}
|
|
382
436
|
</style>
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
:class="buttonGroupItemStyles"
|
|
11
11
|
:variant="Number(value) === Number(proxyModelValue) ? 'contained' : 'text'"
|
|
12
12
|
:color="Number(value) === Number(proxyModelValue) ? 'primary' : 'inherit'"
|
|
13
|
+
:disabled="filter && !filter(value)"
|
|
13
14
|
@click.stop="proxyModelValue = value"
|
|
14
15
|
>
|
|
15
16
|
{{ formatDay(value) }}
|
|
@@ -19,7 +20,7 @@
|
|
|
19
20
|
</template>
|
|
20
21
|
|
|
21
22
|
<script lang="ts">
|
|
22
|
-
import { computed, defineComponent, ref } from 'vue-demi';
|
|
23
|
+
import { computed, defineComponent, PropType, ref } from 'vue-demi';
|
|
23
24
|
import { OrButtonV3 as OrButton } from '../../../or-button-v3';
|
|
24
25
|
import { useDefaultDate } from '../../hooks/useDefaultDate';
|
|
25
26
|
import { useDefaultHours } from '../../hooks/useDefaultHours';
|
|
@@ -45,6 +46,11 @@ export default defineComponent({
|
|
|
45
46
|
type: Date,
|
|
46
47
|
default: undefined,
|
|
47
48
|
},
|
|
49
|
+
|
|
50
|
+
filter: {
|
|
51
|
+
type: Function as PropType<(value: Date) => boolean>,
|
|
52
|
+
default: undefined,
|
|
53
|
+
},
|
|
48
54
|
},
|
|
49
55
|
|
|
50
56
|
emits: [
|
|
@@ -35,6 +35,7 @@
|
|
|
35
35
|
v-for="value in yearOptions"
|
|
36
36
|
:key="Number(value)"
|
|
37
37
|
:selected="Number(value) === Number(proxyModelValue)"
|
|
38
|
+
:disabled="filter && !filter(value)"
|
|
38
39
|
@click.stop="proxyModelValue = value; yearMenu.close()"
|
|
39
40
|
>
|
|
40
41
|
{{ formatYear(value) }}
|
|
@@ -49,6 +50,7 @@
|
|
|
49
50
|
v-for="value in monthOptions"
|
|
50
51
|
:key="Number(value)"
|
|
51
52
|
:selected="Number(value) === Number(proxyModelValue)"
|
|
53
|
+
:disabled="filter && !filter(value)"
|
|
52
54
|
@click.stop="proxyModelValue = value; monthMenu.close()"
|
|
53
55
|
>
|
|
54
56
|
{{ formatMonth(value) }}
|
|
@@ -64,7 +66,7 @@
|
|
|
64
66
|
</template>
|
|
65
67
|
|
|
66
68
|
<script lang="ts">
|
|
67
|
-
import { computed, defineComponent, ref } from 'vue-demi';
|
|
69
|
+
import { computed, defineComponent, PropType, ref } from 'vue-demi';
|
|
68
70
|
import { OrButtonV3 as OrButton } from '../../../or-button-v3';
|
|
69
71
|
import { OrIconButtonV3 as OrIconButton } from '../../../or-icon-button-v3';
|
|
70
72
|
import { OrIconV3 as OrIcon } from '../../../or-icon-v3';
|
|
@@ -98,6 +100,11 @@ export default defineComponent({
|
|
|
98
100
|
type: Date,
|
|
99
101
|
default: undefined,
|
|
100
102
|
},
|
|
103
|
+
|
|
104
|
+
filter: {
|
|
105
|
+
type: Function as PropType<(value: Date) => boolean>,
|
|
106
|
+
default: undefined,
|
|
107
|
+
},
|
|
101
108
|
},
|
|
102
109
|
|
|
103
110
|
emits: [
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
:class="buttonGroupItemStyles"
|
|
11
11
|
:variant="Number(value) === Number(proxyModelValue) ? 'contained' : 'text'"
|
|
12
12
|
:color="Number(value) === Number(proxyModelValue) ? 'primary' : 'inherit'"
|
|
13
|
+
:disabled="filter && !filter(value)"
|
|
13
14
|
@click.stop="proxyModelValue = value"
|
|
14
15
|
>
|
|
15
16
|
{{ formatHours(value) }}
|
|
@@ -25,6 +26,7 @@
|
|
|
25
26
|
:class="buttonGroupItemStyles"
|
|
26
27
|
:variant="Number(value) === Number(proxyModelValue) ? 'contained' : 'text'"
|
|
27
28
|
:color="Number(value) === Number(proxyModelValue) ? 'primary' : 'inherit'"
|
|
29
|
+
:disabled="filter && !filter(value)"
|
|
28
30
|
@click.stop="proxyModelValue = value"
|
|
29
31
|
>
|
|
30
32
|
{{ formatMinutes(value) }}
|
|
@@ -34,7 +36,7 @@
|
|
|
34
36
|
</template>
|
|
35
37
|
|
|
36
38
|
<script lang="ts">
|
|
37
|
-
import { computed, defineComponent, ref } from 'vue-demi';
|
|
39
|
+
import { computed, defineComponent, PropType, ref } from 'vue-demi';
|
|
38
40
|
import { OrButtonV3 as OrButton } from '../../../or-button-v3';
|
|
39
41
|
import { useDefaultDate } from '../../hooks/useDefaultDate';
|
|
40
42
|
import { useDefaultHours } from '../../hooks/useDefaultHours';
|
|
@@ -60,6 +62,11 @@ export default defineComponent({
|
|
|
60
62
|
type: Date,
|
|
61
63
|
default: undefined,
|
|
62
64
|
},
|
|
65
|
+
|
|
66
|
+
filter: {
|
|
67
|
+
type: Function as PropType<(value: Date) => boolean>,
|
|
68
|
+
default: undefined,
|
|
69
|
+
},
|
|
63
70
|
},
|
|
64
71
|
|
|
65
72
|
emits: [
|
|
@@ -7,9 +7,12 @@ export const DateTimePicker: string[] = [
|
|
|
7
7
|
];
|
|
8
8
|
|
|
9
9
|
export const DateTimePickerControl: string[] = [
|
|
10
|
+
// Layout
|
|
11
|
+
'layout-inline-row justify-center',
|
|
12
|
+
|
|
10
13
|
// Theme (focus)
|
|
11
|
-
'focus:theme-border-
|
|
12
|
-
'dark:focus:theme-border-
|
|
14
|
+
'focus:theme-border-2-current',
|
|
15
|
+
'dark:focus:theme-border-2-current-dark',
|
|
13
16
|
|
|
14
17
|
'focus:theme-border-underline',
|
|
15
18
|
'dark:focus:theme-border-underline',
|