classcard-ui 0.2.1475 → 0.2.1476

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.
Files changed (209) hide show
  1. package/README.md +24 -24
  2. package/dist/classcard-ui.common.js +86 -85
  3. package/dist/classcard-ui.common.js.map +1 -1
  4. package/dist/classcard-ui.css +1 -1
  5. package/dist/classcard-ui.umd.js +86 -85
  6. package/dist/classcard-ui.umd.js.map +1 -1
  7. package/dist/classcard-ui.umd.min.js +1 -1
  8. package/dist/classcard-ui.umd.min.js.map +1 -1
  9. package/package.json +83 -83
  10. package/src/App.vue +16 -16
  11. package/src/colorConfig.js +52 -52
  12. package/src/components/CAlertModal/CAlertModal.vue +179 -179
  13. package/src/components/CAlertModal/index.js +3 -3
  14. package/src/components/CAlerts/CAlerts.vue +114 -114
  15. package/src/components/CAlerts/index.js +2 -2
  16. package/src/components/CAnchorTabs/CAnchorTabs.vue +100 -100
  17. package/src/components/CAnchorTabs/index.js +2 -2
  18. package/src/components/CAnchorTag/CAnchorTag.vue +84 -84
  19. package/src/components/CAnchorTag/index.js +2 -2
  20. package/src/components/CAvatar/CAvatar.vue +230 -230
  21. package/src/components/CAvatar/index.js +2 -2
  22. package/src/components/CAvatarGroup/CAvatarGroup.vue +213 -213
  23. package/src/components/CAvatarGroup/index.js +2 -2
  24. package/src/components/CBasicTable/CBasicTable.vue +184 -184
  25. package/src/components/CBasicTable/index.js +2 -2
  26. package/src/components/CBreadcrumbs/CBreadcrumbs.vue +38 -38
  27. package/src/components/CBreadcrumbs/index.js +2 -2
  28. package/src/components/CButton/CButton.vue +239 -239
  29. package/src/components/CButton/index.js +2 -2
  30. package/src/components/CButtonGroup/CButtonGroup.vue +155 -155
  31. package/src/components/CButtonGroup/index.js +2 -2
  32. package/src/components/CButtonIcon/CButtonIcon.vue +166 -166
  33. package/src/components/CButtonIcon/index.js +2 -2
  34. package/src/components/CButtonLink/CButtonLink.vue +43 -43
  35. package/src/components/CButtonLink/index.js +2 -2
  36. package/src/components/CButtonSelect/CButtonSelect.vue +186 -186
  37. package/src/components/CButtonSelect/index.js +2 -2
  38. package/src/components/CButtonSelectBorder/CButtonSelectBorder.vue +265 -265
  39. package/src/components/CButtonSelectBorder/index.js +3 -3
  40. package/src/components/CButtonWithDropdown/CButtonWithDropdown.vue +152 -152
  41. package/src/components/CButtonWithDropdown/index.js +2 -2
  42. package/src/components/CCalendar/CCalendar.vue +443 -443
  43. package/src/components/CCalendar/index.js +3 -3
  44. package/src/components/CCard/CCard.vue +53 -53
  45. package/src/components/CCard/index.js +2 -2
  46. package/src/components/CCheckbox/CCheckbox.vue +200 -200
  47. package/src/components/CCheckbox/index.js +2 -2
  48. package/src/components/CCircularButton/CCircularButton.vue +57 -57
  49. package/src/components/CCircularButton/index.js +2 -2
  50. package/src/components/CCollapsibleSection/CCollapsibleSection.vue +121 -121
  51. package/src/components/CCollapsibleSection/index.js +2 -2
  52. package/src/components/CColorDots/CColorDots.vue +52 -52
  53. package/src/components/CColorDots/index.js +3 -3
  54. package/src/components/CConfirmActionModal/CConfirmActionModal.vue +221 -221
  55. package/src/components/CConfirmActionModal/index.js +3 -3
  56. package/src/components/CDatepicker/CDatepicker.vue +235 -235
  57. package/src/components/CDatepicker/index.js +2 -2
  58. package/src/components/CDualSelect/CDualSelect.vue +193 -193
  59. package/src/components/CDualSelect/index.js +2 -2
  60. package/src/components/CEditor/CEditor.vue +114 -114
  61. package/src/components/CEditor/index.js +2 -2
  62. package/src/components/CFormSectionHeading/CFormSectionHeading.vue +76 -76
  63. package/src/components/CFormSectionHeading/index.js +2 -2
  64. package/src/components/CGroupedFilterDropdown/CGroupedFilterDropdown.vue +263 -263
  65. package/src/components/CGroupedFilterDropdown/index.js +2 -2
  66. package/src/components/CGroupedSelect/CGroupedSelect.vue +366 -366
  67. package/src/components/CGroupedSelect/index.js +3 -3
  68. package/src/components/CIcon/CIcon.vue +112 -112
  69. package/src/components/CIcon/index.js +2 -2
  70. package/src/components/CIconDropdown/CIconDropdown.vue +206 -206
  71. package/src/components/CIconDropdown/index.js +2 -2
  72. package/src/components/CIconSelect/CIconSelect.vue +182 -182
  73. package/src/components/CIconSelect/index.js +3 -3
  74. package/src/components/CInput/CInput.vue +173 -173
  75. package/src/components/CInput/index.js +2 -2
  76. package/src/components/CInputAddon/CInputAddon.vue +297 -297
  77. package/src/components/CInputAddon/index.js +2 -2
  78. package/src/components/CInputEmail/CInputEmail.vue +107 -107
  79. package/src/components/CInputEmail/index.js +2 -2
  80. package/src/components/CInsetTabs/CInsetTabs.vue +134 -134
  81. package/src/components/CInsetTabs/index.js +3 -3
  82. package/src/components/CModalHeading/CModalHeading.vue +22 -22
  83. package/src/components/CModalHeading/index.js +2 -2
  84. package/src/components/CModuleHelpLinks/CModuleHelpLinks.vue +88 -88
  85. package/src/components/CModuleHelpLinks/index.js +3 -3
  86. package/src/components/CMultiselect/CMultiselect.vue +1170 -1170
  87. package/src/components/CMultiselect/index.js +2 -2
  88. package/src/components/CMultiselectr/CMultiselectr.vue +44 -44
  89. package/src/components/CMultiselectr/index.js +2 -2
  90. package/src/components/CPageHeading/CPageHeading.vue +83 -83
  91. package/src/components/CPageHeading/index.js +2 -2
  92. package/src/components/CPagination/CPagination.vue +239 -239
  93. package/src/components/CPagination/index.js +2 -2
  94. package/src/components/CPhoneNumber/CPhoneNumber.vue +213 -213
  95. package/src/components/CPhoneNumber/index.js +2 -2
  96. package/src/components/CProgress/CProgress.vue +91 -91
  97. package/src/components/CProgress/index.js +2 -2
  98. package/src/components/CRadio/CRadio.vue +197 -197
  99. package/src/components/CRadio/index.js +2 -2
  100. package/src/components/CRadioGroup/CRadioGroup.vue +96 -96
  101. package/src/components/CRadioGroup/index.js +2 -2
  102. package/src/components/CRangeSlider/CRangeSlider.vue +55 -55
  103. package/src/components/CRangeSlider/index.js +2 -2
  104. package/src/components/CReorderableStackedList/CReorderableStackedList.vue +94 -94
  105. package/src/components/CReorderableStackedList/index.js +2 -2
  106. package/src/components/CSelect/CSelect.vue +1210 -1210
  107. package/src/components/CSelect/index.js +2 -2
  108. package/src/components/CSmallTimeline/CSmallTimeline.vue +40 -40
  109. package/src/components/CSmallTimeline/index.js +2 -2
  110. package/src/components/CStackedList/CStackedList.vue +162 -162
  111. package/src/components/CStackedList/index.js +2 -2
  112. package/src/components/CStats/CStats.vue +157 -157
  113. package/src/components/CStats/index.js +2 -2
  114. package/src/components/CSwitch/CSwitch.vue +200 -200
  115. package/src/components/CSwitch/index.js +2 -2
  116. package/src/components/CTabLazy/CTabLazy.vue +83 -83
  117. package/src/components/CTabLazy/index.js +2 -2
  118. package/src/components/CTable/CTable.vue +1114 -1114
  119. package/src/components/CTable/index.js +2 -2
  120. package/src/components/CTabs/CTabs.vue +250 -250
  121. package/src/components/CTabs/index.js +2 -2
  122. package/src/components/CTag/CTag.vue +109 -109
  123. package/src/components/CTag/index.js +2 -2
  124. package/src/components/CTextarea/CTextarea.vue +118 -118
  125. package/src/components/CTextarea/index.js +2 -2
  126. package/src/components/CTimeline/CTimeline.vue +237 -237
  127. package/src/components/CTimeline/index.js +2 -2
  128. package/src/components/CToolTip/CToolTip.vue +108 -108
  129. package/src/components/CToolTip/index.js +3 -3
  130. package/src/components/CUpload/CUpload.vue +331 -331
  131. package/src/components/CUpload/index.js +2 -2
  132. package/src/components/NumberAnimator.vue +112 -112
  133. package/src/components/index.js +57 -57
  134. package/src/helper.js +8 -8
  135. package/src/icons.js +831 -830
  136. package/src/main.js +22 -22
  137. package/src/stories/CAlertModal.stories.js +30 -30
  138. package/src/stories/CAlerts.stories.js +39 -39
  139. package/src/stories/CAnchorTabs.stories.js +29 -29
  140. package/src/stories/CAnchorTag.stories.js +38 -38
  141. package/src/stories/CAvatar.stories.js +38 -38
  142. package/src/stories/CAvatarGroup.stories.js +136 -136
  143. package/src/stories/CBasicTable.stories.js +316 -316
  144. package/src/stories/CBreadcrumbs.stories.js +24 -24
  145. package/src/stories/CButton.stories.js +49 -49
  146. package/src/stories/CButtonGroup.stories.js +43 -43
  147. package/src/stories/CButtonIcon.stories.js +27 -27
  148. package/src/stories/CButtonLink.stories.js +24 -24
  149. package/src/stories/CButtonSelect.stories.js +44 -44
  150. package/src/stories/CButtonSelectBorder.stories.js +56 -56
  151. package/src/stories/CButtonWithDropdown.stories.js +41 -41
  152. package/src/stories/CCalendar.stories.js +16 -16
  153. package/src/stories/CCard.stories.js +30 -30
  154. package/src/stories/CCheckbox.stories.js +38 -38
  155. package/src/stories/CCircularButton.stories.js +29 -29
  156. package/src/stories/CCollapsibleSection.stories.js +29 -29
  157. package/src/stories/CColorDots.stories.js +37 -37
  158. package/src/stories/CConfirmActionModal.stories.js +60 -60
  159. package/src/stories/CDatepicker.stories.js +31 -31
  160. package/src/stories/CDualSelect.stories.js +29 -29
  161. package/src/stories/CEditor.stories.js +30 -30
  162. package/src/stories/CFormSectionHeading.stories.js +37 -37
  163. package/src/stories/CGroupedFilterDropdown.stories.js +176 -176
  164. package/src/stories/CGroupedSelect.stories.js +103 -103
  165. package/src/stories/CIcon.stories.js +31 -31
  166. package/src/stories/CIconDropdown.stories.js +52 -52
  167. package/src/stories/CIconSelect.stories.js +45 -45
  168. package/src/stories/CInput.stories.js +36 -36
  169. package/src/stories/CInputAddon.stories.js +37 -37
  170. package/src/stories/CInputEmail.stories.js +27 -27
  171. package/src/stories/CInsetTabs.stories.js +48 -48
  172. package/src/stories/CModalHeading.stories.js +25 -25
  173. package/src/stories/CModuleHelpLinks.stories.js +25 -25
  174. package/src/stories/CMultiselect.stories.js +136 -136
  175. package/src/stories/CMultiselectr.stories.js +23 -23
  176. package/src/stories/CPageHeading.stories.js +32 -32
  177. package/src/stories/CPagination.stories.js +30 -30
  178. package/src/stories/CPhoneNumber.stories.js +37 -37
  179. package/src/stories/CProgress.stories.js +23 -23
  180. package/src/stories/CRadio.stories.js +44 -44
  181. package/src/stories/CRadioGroup.stories.js +51 -51
  182. package/src/stories/CRangeSlider.stories.js +23 -23
  183. package/src/stories/CReorderableStackedList.stories.js +23 -23
  184. package/src/stories/CSelect.stories.js +157 -157
  185. package/src/stories/CSmallTimeline.stories.js +26 -26
  186. package/src/stories/CStackedList.stories.js +37 -37
  187. package/src/stories/CStats.stories.js +53 -53
  188. package/src/stories/CSwitch.stories.js +28 -28
  189. package/src/stories/CTabLazy.stories.js +42 -42
  190. package/src/stories/CTable.stories.js +203 -203
  191. package/src/stories/CTabs.stories.js +36 -36
  192. package/src/stories/CTag.stories.js +37 -37
  193. package/src/stories/CTextarea.stories.js +32 -32
  194. package/src/stories/CTimeline.stories.js +26 -26
  195. package/src/stories/CToolTip.stories.js +27 -27
  196. package/src/stories/CUpload.stories.js +36 -36
  197. package/src/stories/Introduction.stories.mdx +207 -207
  198. package/src/stories/Page.vue +88 -88
  199. package/src/stories/assets/code-brackets.svg +0 -0
  200. package/src/stories/assets/colors.svg +0 -0
  201. package/src/stories/assets/comments.svg +0 -0
  202. package/src/stories/assets/direction.svg +0 -0
  203. package/src/stories/assets/flow.svg +0 -0
  204. package/src/stories/assets/plugin.svg +0 -0
  205. package/src/stories/assets/repo.svg +0 -0
  206. package/src/stories/assets/stackalt.svg +0 -0
  207. package/src/stories/header.css +26 -26
  208. package/src/stories/page.css +69 -69
  209. package/src/stories/utils.css +32 -32
@@ -1,235 +1,235 @@
1
- <template>
2
- <div>
3
- <div class="flex items-center justify-between">
4
- <div class="flex items-center">
5
- <label v-if="label" class="block text-sm font-medium text-gray-900">
6
- {{ label }}
7
- </label>
8
- <!-- asterisk sign to render if field is required -->
9
- <p v-if="isRequired" class="ml-1 text-red-600">*</p>
10
- </div>
11
- <span v-if="hint" class="text-sm text-gray-500">{{ hint }}</span>
12
- </div>
13
- <div class="relative">
14
- <v-date-picker
15
- ref="datepicker"
16
- :class="[
17
- 'h-full',
18
- isExpanded ? 'w-full' : '',
19
- isInline ? 'inline' : 'inline-block',
20
- ]"
21
- :masks="masks"
22
- @input="onDayClick"
23
- :id="id"
24
- :value="value"
25
- :popover="popoverPlacement"
26
- :min-date="minDate"
27
- :max-date="maxDate"
28
- :attributes="attrs"
29
- :first-day-of-week="firstDayOfWeek"
30
- :is-required="isDatePickerRequired"
31
- :timezone="timezone"
32
- >
33
- <template v-slot="{ inputValue, togglePopover }">
34
- <div v-if="showOnlyDatePickerIcon">
35
- <button
36
- type="button"
37
- class="relative flex h-9 w-9 cursor-pointer items-center justify-center rounded focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2 disabled:custom-disabled-state"
38
- :id="id + '_button_toggle_dropdown'"
39
- :disabled="disabled"
40
- @click="togglePopover()"
41
- >
42
- <c-icon
43
- :name="calendarIcon.iconName"
44
- class="text-gray-400 flex h-5 w-5 justify-center"
45
- :type="calendarIcon.type ? calendarIcon.type : 'solid'"
46
- :viewBox="calendarIcon.viewBox ? calendarIcon.viewBox : ''"
47
- ></c-icon>
48
- </button>
49
- </div>
50
- <div :class="`${isCustom ? '' : 'mt-1'} h-9 flex items-center`" v-else>
51
- <button
52
- type="button"
53
- :class="['border-gray-300 text-blue-600 focus:outline-none bg-white shadow-sm focus:text-white disabled:custom-disabled-state',
54
- isCustom ? 'border-t border-b px-3 py-2' : 'rounded-l-md border p-2'
55
- ]"
56
- :id="id + '_button_toggle_dropdown'"
57
- :disabled="disabled"
58
- @click="togglePopover()"
59
- >
60
- <c-icon
61
- :name="calendarIcon.iconName"
62
- class="text-gray-400 h-5 w-5"
63
- :type="calendarIcon.type ? calendarIcon.type : 'solid'"
64
- :viewBox="calendarIcon.viewBox"
65
- ></c-icon>
66
- </button>
67
- <input
68
- type="text"
69
- :value="inputValue"
70
- class="border-l-0 border-gray-300 text-gray-900 w-full appearance-none rounded-r-md border bg-white px-3 py-2 text-sm shadow-sm focus:border-blue-500 focus:outline-none"
71
- :readonly="disabled"
72
- :disabled="disabled"
73
- @input="handleInputBoxInput"
74
- @click="togglePopover()"
75
- />
76
- </div>
77
- </template>
78
- </v-date-picker>
79
- </div>
80
- <!-- validation error message -->
81
- <p v-if="!isValidate" class="mt-2 text-sm text-red-600">
82
- {{ errorMessage }}
83
- </p>
84
- <p v-if="helpText && isValidate == true" class="mt-2 text-sm text-gray-500">
85
- {{ helpText }}
86
- </p>
87
- </div>
88
- </template>
89
- <script>
90
- import CIcon from "../CIcon/CIcon.vue";
91
- // import Calendar from "v-calendar/lib/components/calendar.umd";
92
- import VDatePicker from "v-calendar/lib/components/date-picker.umd";
93
- export default {
94
- name: "CDatepicker",
95
- components: {
96
- // Calendar,
97
- VDatePicker,
98
- CIcon,
99
- },
100
- props: {
101
- classes: {
102
- type: String,
103
- },
104
- id: {
105
- type: String,
106
- },
107
- isRequired: {
108
- type: Boolean,
109
- },
110
- isCustom: {
111
- type: Boolean,
112
- },
113
- label: {
114
- type: String,
115
- },
116
- helpText: {
117
- type: String,
118
- },
119
- value: {
120
- type: [String, Date, Array],
121
- },
122
- disabled: {
123
- type: Boolean,
124
- default: false,
125
- },
126
- minDate: {
127
- type: [String, Date],
128
- default: null,
129
- },
130
- maxDate: {
131
- type: [String, Date],
132
- default: null,
133
- },
134
- isExpanded: {
135
- type: Boolean,
136
- default: false,
137
- },
138
- isValidate: {
139
- type: Boolean,
140
- default: true,
141
- },
142
- errorMessage: {
143
- type: String,
144
- },
145
- hint: {
146
- type: String,
147
- },
148
- isDatePickerRequired: {
149
- type: Boolean,
150
- default: true,
151
- },
152
- showOnlyDatePickerIcon: {
153
- type: Boolean,
154
- default: false,
155
- },
156
- popoverPlacement: {
157
- type: Object,
158
- default() {
159
- return {
160
- placement: "bottom-start",
161
- };
162
- },
163
- },
164
- calendarIcon: {
165
- type: Object,
166
- default() {
167
- return {
168
- iconName: "calendar-solid",
169
- type: "solid",
170
- viewBox: "0 0 20 20",
171
- };
172
- },
173
- },
174
- firstDayOfWeek: {
175
- type: Number,
176
- default: 2,
177
- },
178
- timezone: {
179
- type: String,
180
- default: null,
181
- },
182
- isInline: {
183
- type: Boolean,
184
- default: false,
185
- },
186
- //to trigger popover close manually
187
- manualHidePopover: {
188
- type: Boolean,
189
- default: false,
190
- },
191
- },
192
- data() {
193
- const masks = {
194
- input: [
195
- "MMM DD, YYYY",
196
- "YYYY/MM/DD",
197
- "DD-MM-YYYY",
198
- "DD/MM/YYYY",
199
- "YYYY-MM-DD",
200
- "L",
201
- ],
202
- };
203
- return {
204
- masks,
205
- attrs: [
206
- {
207
- highlight: {
208
- color: "blue",
209
- fillMode: "outline",
210
- },
211
- dates: new Date(),
212
- },
213
- ],
214
- };
215
- },
216
- methods: {
217
- onDayClick(date) {
218
- this.$emit("input", date);
219
- if (this.manualHidePopover) {
220
- this.$refs.datepicker.hidePopover();
221
- }
222
- },
223
- handleInputBoxInput(input) {
224
- if (input.target.value.length == 0) {
225
- this.$emit("input", null);
226
- }
227
- },
228
- toggleDatePicker() {
229
- if (this.$refs.datepicker) {
230
- this.$refs.datepicker.togglePopover();
231
- }
232
- },
233
- },
234
- };
235
- </script>
1
+ <template>
2
+ <div>
3
+ <div class="flex items-center justify-between">
4
+ <div class="flex items-center">
5
+ <label v-if="label" class="block text-sm font-medium text-gray-900">
6
+ {{ label }}
7
+ </label>
8
+ <!-- asterisk sign to render if field is required -->
9
+ <p v-if="isRequired" class="ml-1 text-red-600">*</p>
10
+ </div>
11
+ <span v-if="hint" class="text-sm text-gray-500">{{ hint }}</span>
12
+ </div>
13
+ <div class="relative">
14
+ <v-date-picker
15
+ ref="datepicker"
16
+ :class="[
17
+ 'h-full',
18
+ isExpanded ? 'w-full' : '',
19
+ isInline ? 'inline' : 'inline-block',
20
+ ]"
21
+ :masks="masks"
22
+ @input="onDayClick"
23
+ :id="id"
24
+ :value="value"
25
+ :popover="popoverPlacement"
26
+ :min-date="minDate"
27
+ :max-date="maxDate"
28
+ :attributes="attrs"
29
+ :first-day-of-week="firstDayOfWeek"
30
+ :is-required="isDatePickerRequired"
31
+ :timezone="timezone"
32
+ >
33
+ <template v-slot="{ inputValue, togglePopover }">
34
+ <div v-if="showOnlyDatePickerIcon">
35
+ <button
36
+ type="button"
37
+ class="relative flex h-9 w-9 cursor-pointer items-center justify-center rounded focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2 disabled:custom-disabled-state"
38
+ :id="id + '_button_toggle_dropdown'"
39
+ :disabled="disabled"
40
+ @click="togglePopover()"
41
+ >
42
+ <c-icon
43
+ :name="calendarIcon.iconName"
44
+ class="text-gray-400 flex h-5 w-5 justify-center"
45
+ :type="calendarIcon.type ? calendarIcon.type : 'solid'"
46
+ :viewBox="calendarIcon.viewBox ? calendarIcon.viewBox : ''"
47
+ ></c-icon>
48
+ </button>
49
+ </div>
50
+ <div :class="`${isCustom ? '' : 'mt-1'} h-9 flex items-center`" v-else>
51
+ <button
52
+ type="button"
53
+ :class="['border-gray-300 text-blue-600 focus:outline-none bg-white shadow-sm focus:text-white disabled:custom-disabled-state',
54
+ isCustom ? 'border-t border-b px-3 py-2' : 'rounded-l-md border p-2'
55
+ ]"
56
+ :id="id + '_button_toggle_dropdown'"
57
+ :disabled="disabled"
58
+ @click="togglePopover()"
59
+ >
60
+ <c-icon
61
+ :name="calendarIcon.iconName"
62
+ class="text-gray-400 h-5 w-5"
63
+ :type="calendarIcon.type ? calendarIcon.type : 'solid'"
64
+ :viewBox="calendarIcon.viewBox"
65
+ ></c-icon>
66
+ </button>
67
+ <input
68
+ type="text"
69
+ :value="inputValue"
70
+ class="border-l-0 border-gray-300 text-gray-900 w-full appearance-none rounded-r-md border bg-white px-3 py-2 text-sm shadow-sm focus:border-blue-500 focus:outline-none"
71
+ :readonly="disabled"
72
+ :disabled="disabled"
73
+ @input="handleInputBoxInput"
74
+ @click="togglePopover()"
75
+ />
76
+ </div>
77
+ </template>
78
+ </v-date-picker>
79
+ </div>
80
+ <!-- validation error message -->
81
+ <p v-if="!isValidate" class="mt-2 text-sm text-red-600">
82
+ {{ errorMessage }}
83
+ </p>
84
+ <p v-if="helpText && isValidate == true" class="mt-2 text-sm text-gray-500">
85
+ {{ helpText }}
86
+ </p>
87
+ </div>
88
+ </template>
89
+ <script>
90
+ import CIcon from "../CIcon/CIcon.vue";
91
+ // import Calendar from "v-calendar/lib/components/calendar.umd";
92
+ import VDatePicker from "v-calendar/lib/components/date-picker.umd";
93
+ export default {
94
+ name: "CDatepicker",
95
+ components: {
96
+ // Calendar,
97
+ VDatePicker,
98
+ CIcon,
99
+ },
100
+ props: {
101
+ classes: {
102
+ type: String,
103
+ },
104
+ id: {
105
+ type: String,
106
+ },
107
+ isRequired: {
108
+ type: Boolean,
109
+ },
110
+ isCustom: {
111
+ type: Boolean,
112
+ },
113
+ label: {
114
+ type: String,
115
+ },
116
+ helpText: {
117
+ type: String,
118
+ },
119
+ value: {
120
+ type: [String, Date, Array],
121
+ },
122
+ disabled: {
123
+ type: Boolean,
124
+ default: false,
125
+ },
126
+ minDate: {
127
+ type: [String, Date],
128
+ default: null,
129
+ },
130
+ maxDate: {
131
+ type: [String, Date],
132
+ default: null,
133
+ },
134
+ isExpanded: {
135
+ type: Boolean,
136
+ default: false,
137
+ },
138
+ isValidate: {
139
+ type: Boolean,
140
+ default: true,
141
+ },
142
+ errorMessage: {
143
+ type: String,
144
+ },
145
+ hint: {
146
+ type: String,
147
+ },
148
+ isDatePickerRequired: {
149
+ type: Boolean,
150
+ default: true,
151
+ },
152
+ showOnlyDatePickerIcon: {
153
+ type: Boolean,
154
+ default: false,
155
+ },
156
+ popoverPlacement: {
157
+ type: Object,
158
+ default() {
159
+ return {
160
+ placement: "bottom-start",
161
+ };
162
+ },
163
+ },
164
+ calendarIcon: {
165
+ type: Object,
166
+ default() {
167
+ return {
168
+ iconName: "calendar-solid",
169
+ type: "solid",
170
+ viewBox: "0 0 20 20",
171
+ };
172
+ },
173
+ },
174
+ firstDayOfWeek: {
175
+ type: Number,
176
+ default: 2,
177
+ },
178
+ timezone: {
179
+ type: String,
180
+ default: null,
181
+ },
182
+ isInline: {
183
+ type: Boolean,
184
+ default: false,
185
+ },
186
+ //to trigger popover close manually
187
+ manualHidePopover: {
188
+ type: Boolean,
189
+ default: false,
190
+ },
191
+ },
192
+ data() {
193
+ const masks = {
194
+ input: [
195
+ "MMM DD, YYYY",
196
+ "YYYY/MM/DD",
197
+ "DD-MM-YYYY",
198
+ "DD/MM/YYYY",
199
+ "YYYY-MM-DD",
200
+ "L",
201
+ ],
202
+ };
203
+ return {
204
+ masks,
205
+ attrs: [
206
+ {
207
+ highlight: {
208
+ color: "blue",
209
+ fillMode: "outline",
210
+ },
211
+ dates: new Date(),
212
+ },
213
+ ],
214
+ };
215
+ },
216
+ methods: {
217
+ onDayClick(date) {
218
+ this.$emit("input", date);
219
+ if (this.manualHidePopover) {
220
+ this.$refs.datepicker.hidePopover();
221
+ }
222
+ },
223
+ handleInputBoxInput(input) {
224
+ if (input.target.value.length == 0) {
225
+ this.$emit("input", null);
226
+ }
227
+ },
228
+ toggleDatePicker() {
229
+ if (this.$refs.datepicker) {
230
+ this.$refs.datepicker.togglePopover();
231
+ }
232
+ },
233
+ },
234
+ };
235
+ </script>
@@ -1,3 +1,3 @@
1
- import CDatepicker from './CDatepicker.vue'
2
-
1
+ import CDatepicker from './CDatepicker.vue'
2
+
3
3
  export default CDatepicker