Skip to content

Commit 6d8cf01

Browse files
author
Aleksander Ciesielski
committed
Add a support for disabling DatePicker
1 parent 0c37f6c commit 6d8cf01

File tree

2 files changed

+21
-4
lines changed

2 files changed

+21
-4
lines changed

src/components/Calendar/DatePicker.vue

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
<template>
2-
<div ref="date-picker" class="date-picker" @click.stop>
3-
<TextField :is-focused="focused" :is-loading="isLoading" :disabled="isLoading"
2+
<div ref="date-picker" class="date-picker" :class="{ 'date-picker-disabled': disabled }" @click.stop>
3+
<TextField :is-focused="focused" :is-loading="isLoading" :disabled="disabled || isLoading"
44
:is-invalid="isInvalid" select @mousedown="toggle">
55
<input ref="input" :value="formattedDate" type="text"
6-
width="50%" placeholder="e.g. 31/12/2018" :disabled="isLoading"
6+
width="50%" placeholder="e.g. 31/12/2018" :disabled="disabled || isLoading"
77
v-on="listeners" @keydown.enter="onEnter"
88
@input="onInput" @keyup.esc="onEsc"
99
@focus="onFocus" @blur="onBlur">
@@ -51,6 +51,10 @@
5151
type: String,
5252
default: 'dd/MM/y'
5353
},
54+
disabled: {
55+
type: Boolean,
56+
default: false,
57+
},
5458
disabledRange: {
5559
type: Object,
5660
default: () => ({
@@ -151,4 +155,8 @@
151155
.icon {
152156
padding-right: 8px;
153157
}
158+
159+
.date-picker-disabled {
160+
cursor: not-allowed;
161+
}
154162
</style>

stories/DatePicker/DatePicker.story.vue

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
<template>
22
<div class="wrapper">
3-
<DatePicker v-model="date"/>
3+
<DatePicker v-model="date" />
4+
<DatePicker v-model="date" :disabled="true" />
45
</div>
56
</template>
67

@@ -17,3 +18,11 @@
1718
}
1819
};
1920
</script>
21+
22+
<style scoped>
23+
.wrapper {
24+
display: flex;
25+
flex-direction: column;
26+
row-gap: 10px;
27+
}
28+
</style>

0 commit comments

Comments
 (0)