classcard-ui 0.2.666 → 0.2.671

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 (174) hide show
  1. package/dist/classcard-ui.common.js +69 -81
  2. package/dist/classcard-ui.common.js.map +1 -1
  3. package/dist/classcard-ui.umd.js +69 -81
  4. package/dist/classcard-ui.umd.js.map +1 -1
  5. package/dist/classcard-ui.umd.min.js +1 -1
  6. package/dist/classcard-ui.umd.min.js.map +1 -1
  7. package/package.json +6 -7
  8. package/src/App.vue +0 -16
  9. package/src/components/CAlerts/CAlerts.vue +0 -70
  10. package/src/components/CAlerts/index.js +0 -3
  11. package/src/components/CAnchorTabs/CAnchorTabs.vue +0 -96
  12. package/src/components/CAnchorTabs/index.js +0 -3
  13. package/src/components/CAnchorTag/CAnchorTag.vue +0 -62
  14. package/src/components/CAnchorTag/index.js +0 -3
  15. package/src/components/CAvatar/CAvatar.vue +0 -112
  16. package/src/components/CAvatar/index.js +0 -3
  17. package/src/components/CAvatarGroup/CAvatarGroup.vue +0 -145
  18. package/src/components/CAvatarGroup/index.js +0 -3
  19. package/src/components/CBasicTable/CBasicTable.vue +0 -184
  20. package/src/components/CBasicTable/index.js +0 -3
  21. package/src/components/CBreadcrumbs/CBreadcrumbs.vue +0 -38
  22. package/src/components/CBreadcrumbs/index.js +0 -3
  23. package/src/components/CButton/CButton.vue +0 -147
  24. package/src/components/CButton/index.js +0 -3
  25. package/src/components/CButtonGroup/CButtonGroup.vue +0 -116
  26. package/src/components/CButtonGroup/index.js +0 -3
  27. package/src/components/CButtonIcon/CButtonIcon.vue +0 -91
  28. package/src/components/CButtonIcon/index.js +0 -3
  29. package/src/components/CButtonLink/CButtonLink.vue +0 -39
  30. package/src/components/CButtonLink/index.js +0 -3
  31. package/src/components/CButtonSelect/CButtonSelect.vue +0 -103
  32. package/src/components/CButtonSelect/index.js +0 -3
  33. package/src/components/CButtonWithDropdown/CButtonWithDropdown.vue +0 -168
  34. package/src/components/CButtonWithDropdown/index.js +0 -3
  35. package/src/components/CCalendar/CCalendar.vue +0 -401
  36. package/src/components/CCalendar/index.js +0 -3
  37. package/src/components/CCard/CCard.vue +0 -49
  38. package/src/components/CCard/index.js +0 -3
  39. package/src/components/CCheckbox/CCheckbox.vue +0 -70
  40. package/src/components/CCheckbox/index.js +0 -3
  41. package/src/components/CCollapsibleSection/CCollapsibleSection.vue +0 -99
  42. package/src/components/CCollapsibleSection/index.js +0 -3
  43. package/src/components/CColorDots/CColorDots.vue +0 -35
  44. package/src/components/CColorDots/index.js +0 -3
  45. package/src/components/CConfirmActionModal/CConfirmActionModal.vue +0 -120
  46. package/src/components/CConfirmActionModal/index.js +0 -3
  47. package/src/components/CDatepicker/CDatepicker.vue +0 -139
  48. package/src/components/CDatepicker/index.js +0 -3
  49. package/src/components/CDualSelect/CDualSelect.vue +0 -193
  50. package/src/components/CDualSelect/index.js +0 -3
  51. package/src/components/CEditor/CEditor.vue +0 -96
  52. package/src/components/CEditor/index.js +0 -3
  53. package/src/components/CFormSectionHeading/CFormSectionHeading.vue +0 -53
  54. package/src/components/CFormSectionHeading/index.js +0 -3
  55. package/src/components/CGroupedSelect/CGroupedSelect.vue +0 -217
  56. package/src/components/CGroupedSelect/index.js +0 -3
  57. package/src/components/CIcon/CIcon.vue +0 -77
  58. package/src/components/CIcon/index.js +0 -3
  59. package/src/components/CIconDropdown/CIconDropdown.vue +0 -111
  60. package/src/components/CIconDropdown/index.js +0 -3
  61. package/src/components/CInput/CInput.vue +0 -120
  62. package/src/components/CInput/index.js +0 -3
  63. package/src/components/CInputAddon/CInputAddon.vue +0 -202
  64. package/src/components/CInputAddon/index.js +0 -3
  65. package/src/components/CInputEmail/CInputEmail.vue +0 -93
  66. package/src/components/CInputEmail/index.js +0 -3
  67. package/src/components/CModalHeading/CModalHeading.vue +0 -22
  68. package/src/components/CModalHeading/index.js +0 -3
  69. package/src/components/CModuleHelpLinks/CModuleHelpLinks.vue +0 -39
  70. package/src/components/CModuleHelpLinks/index.js +0 -3
  71. package/src/components/CMultiselect/CMultiselect.vue +0 -333
  72. package/src/components/CMultiselect/index.js +0 -3
  73. package/src/components/CMultiselectr/CMultiselectr.vue +0 -44
  74. package/src/components/CMultiselectr/index.js +0 -3
  75. package/src/components/CPageHeading/CPageHeading.vue +0 -56
  76. package/src/components/CPageHeading/index.js +0 -3
  77. package/src/components/CPagination/CPagination.vue +0 -202
  78. package/src/components/CPagination/index.js +0 -3
  79. package/src/components/CPhoneNumber/CPhoneNumber.vue +0 -81
  80. package/src/components/CPhoneNumber/index.js +0 -3
  81. package/src/components/CRadio/CRadio.vue +0 -106
  82. package/src/components/CRadio/index.js +0 -3
  83. package/src/components/CRangeSlider/CRangeSlider.vue +0 -55
  84. package/src/components/CRangeSlider/index.js +0 -3
  85. package/src/components/CReorderableStackedList/CReorderableStackedList.vue +0 -94
  86. package/src/components/CReorderableStackedList/index.js +0 -3
  87. package/src/components/CSelect/CSelect.vue +0 -343
  88. package/src/components/CSelect/index.js +0 -3
  89. package/src/components/CSmallTimeline/CSmallTimeline.vue +0 -40
  90. package/src/components/CSmallTimeline/index.js +0 -3
  91. package/src/components/CStackedList/CStackedList.vue +0 -132
  92. package/src/components/CStackedList/index.js +0 -3
  93. package/src/components/CStats/CStats.vue +0 -111
  94. package/src/components/CStats/index.js +0 -3
  95. package/src/components/CSwitch/CSwitch.vue +0 -140
  96. package/src/components/CSwitch/index.js +0 -3
  97. package/src/components/CTable/CTable.vue +0 -536
  98. package/src/components/CTable/index.js +0 -3
  99. package/src/components/CTabs/CTabs.vue +0 -111
  100. package/src/components/CTabs/index.js +0 -3
  101. package/src/components/CTag/CTag.vue +0 -36
  102. package/src/components/CTag/index.js +0 -3
  103. package/src/components/CTextarea/CTextarea.vue +0 -95
  104. package/src/components/CTextarea/index.js +0 -3
  105. package/src/components/CTimeline/CTimeline.vue +0 -237
  106. package/src/components/CTimeline/index.js +0 -3
  107. package/src/components/CUpload/CUpload.vue +0 -231
  108. package/src/components/CUpload/index.js +0 -3
  109. package/src/components/index.js +0 -48
  110. package/src/icons.js +0 -275
  111. package/src/main.js +0 -22
  112. package/src/stories/CAlerts.stories.js +0 -37
  113. package/src/stories/CAnchorTabs.stories.js +0 -29
  114. package/src/stories/CAnchorTag.stories.js +0 -36
  115. package/src/stories/CAvatar.stories.js +0 -38
  116. package/src/stories/CAvatarGroup.stories.js +0 -100
  117. package/src/stories/CBasicTable.stories.js +0 -316
  118. package/src/stories/CBreadcrumbs.stories.js +0 -24
  119. package/src/stories/CButton.stories.js +0 -46
  120. package/src/stories/CButtonGroup.stories.js +0 -33
  121. package/src/stories/CButtonIcon.stories.js +0 -27
  122. package/src/stories/CButtonLink.stories.js +0 -24
  123. package/src/stories/CButtonSelect.stories.js +0 -32
  124. package/src/stories/CButtonWithDropdown.stories.js +0 -41
  125. package/src/stories/CCalendar.stories.js +0 -16
  126. package/src/stories/CCard.stories.js +0 -30
  127. package/src/stories/CCheckbox.stories.js +0 -29
  128. package/src/stories/CCollapsibleSection.stories.js +0 -28
  129. package/src/stories/CColorDots.stories.js +0 -28
  130. package/src/stories/CConfirmActionModal.stories.js +0 -59
  131. package/src/stories/CDatepicker.stories.js +0 -30
  132. package/src/stories/CDualSelect.stories.js +0 -29
  133. package/src/stories/CEditor.stories.js +0 -30
  134. package/src/stories/CFormSectionHeading.stories.js +0 -34
  135. package/src/stories/CGroupedSelect.stories.js +0 -69
  136. package/src/stories/CIcon.stories.js +0 -26
  137. package/src/stories/CIconDropdown.stories.js +0 -40
  138. package/src/stories/CInput.stories.js +0 -36
  139. package/src/stories/CInputAddon.stories.js +0 -37
  140. package/src/stories/CInputEmail.stories.js +0 -27
  141. package/src/stories/CModalHeading.stories.js +0 -25
  142. package/src/stories/CModuleHelpLinks.stories.js +0 -25
  143. package/src/stories/CMultiselect.stories.js +0 -97
  144. package/src/stories/CMultiselectr.stories.js +0 -23
  145. package/src/stories/CPageHeading.stories.js +0 -32
  146. package/src/stories/CPagination.stories.js +0 -30
  147. package/src/stories/CPhoneNumber.stories.js +0 -29
  148. package/src/stories/CRadio.stories.js +0 -36
  149. package/src/stories/CRangeSlider.stories.js +0 -23
  150. package/src/stories/CReorderableStackedList.stories.js +0 -23
  151. package/src/stories/CSelect.stories.js +0 -50
  152. package/src/stories/CSmallTimeline.stories.js +0 -26
  153. package/src/stories/CStackedList.stories.js +0 -37
  154. package/src/stories/CStats.stories.js +0 -33
  155. package/src/stories/CSwitch.stories.js +0 -28
  156. package/src/stories/CTable.stories.js +0 -77
  157. package/src/stories/CTabs.stories.js +0 -33
  158. package/src/stories/CTag.stories.js +0 -23
  159. package/src/stories/CTextarea.stories.js +0 -32
  160. package/src/stories/CTimeline.stories.js +0 -26
  161. package/src/stories/CUpload.stories.js +0 -36
  162. package/src/stories/Introduction.stories.mdx +0 -207
  163. package/src/stories/Page.vue +0 -88
  164. package/src/stories/assets/code-brackets.svg +0 -1
  165. package/src/stories/assets/colors.svg +0 -1
  166. package/src/stories/assets/comments.svg +0 -1
  167. package/src/stories/assets/direction.svg +0 -1
  168. package/src/stories/assets/flow.svg +0 -1
  169. package/src/stories/assets/plugin.svg +0 -1
  170. package/src/stories/assets/repo.svg +0 -1
  171. package/src/stories/assets/stackalt.svg +0 -1
  172. package/src/stories/header.css +0 -26
  173. package/src/stories/page.css +0 -69
  174. package/src/stories/utils.css +0 -18
@@ -1,49 +0,0 @@
1
- <template>
2
- <div
3
- class="relative rounded-lg border border-gray-300 bg-white px-6 py-5 shadow-sm flex items-center space-x-3 hover:border-gray-400 focus-within:ring-2 focus-within:ring-offset-2 focus-within:ring-indigo-500"
4
- >
5
- <div class="flex-shrink-0 p-2 rounded-md bg-gray-100">
6
- <c-avatar
7
- :image="image.image"
8
- :rounded="image.rounded"
9
- :size="image.size"
10
- imageClasses="object-contain"
11
- ></c-avatar>
12
- </div>
13
- <div class="flex-1 min-w-0">
14
- <a href="#" class="focus:outline-none">
15
- <span class="absolute inset-0" aria-hidden="true"></span>
16
- <div class="flex">
17
- <p class="text-sm text-gray-900">
18
- {{ name }}
19
- </p>
20
- <slot></slot>
21
- </div>
22
- <p class="text-sm text-gray-500 truncate">
23
- {{ description }}
24
- </p>
25
- </a>
26
- </div>
27
- </div>
28
- </template>
29
-
30
- <script>
31
- import CAvatar from "../CAvatar/CAvatar.vue";
32
- export default {
33
- name: "CCard",
34
- components: { CAvatar },
35
- props: {
36
- image: {
37
- type: Object,
38
- },
39
- name: {
40
- type: String,
41
- },
42
- description: {
43
- type: String,
44
- },
45
- },
46
- };
47
- </script>
48
-
49
- <style></style>
@@ -1,3 +0,0 @@
1
- import CCard from './CCard.vue'
2
-
3
- export default CCard
@@ -1,70 +0,0 @@
1
- <template>
2
- <div>
3
- <div class="relative flex items-start">
4
- <div class="flex h-5 items-center">
5
- <input
6
- type="checkbox"
7
- v-model="checkedValue"
8
- class="h-4 w-4 cursor-pointer rounded border-gray-300 text-indigo-600 focus:ring-indigo-500 disabled:opacity-50"
9
- @click="changeValue"
10
- :disabled="isDisabled"
11
- />
12
- </div>
13
- <div
14
- class="ml-3 cursor-pointer text-sm"
15
- :class="isDisabled ? 'pointer-events-none' : ''"
16
- @click="changeValue"
17
- >
18
- <label
19
- :class="`cursor-pointer font-medium text-gray-900 ${
20
- isDisabled ? 'opacity-50' : ''
21
- }`"
22
- >{{ label }}</label
23
- >
24
- <p
25
- :class="`mt-0.5 cursor-pointer text-gray-500 ${
26
- isDisabled ? 'opacity-50' : ''
27
- }`"
28
- >
29
- {{ description }}
30
- </p>
31
- </div>
32
- </div>
33
- </div>
34
- </template>
35
- <script>
36
- export default {
37
- name: "CCheckbox",
38
- props: {
39
- label: { type: String },
40
- description: { type: String },
41
- value: [Boolean, Number],
42
- isDisabled: {
43
- type: Boolean,
44
- },
45
- },
46
- data() {
47
- return {
48
- checkedValue: this.value == 0 ? false : true,
49
- };
50
- },
51
- methods: {
52
- changeValue() {
53
- let selectedValue = 0;
54
- if (this.checkedValue) {
55
- this.checkedValue = false;
56
- selectedValue = 0;
57
- } else if (!this.checkedValue) {
58
- this.checkedValue = true;
59
- selectedValue = 1;
60
- }
61
- this.$emit("onChange", selectedValue);
62
- },
63
- },
64
- watch: {
65
- value() {
66
- this.checkedValue = this.value;
67
- },
68
- },
69
- };
70
- </script>
@@ -1,3 +0,0 @@
1
- import CCheckbox from './CCheckbox.vue'
2
-
3
- export default CCheckbox
@@ -1,99 +0,0 @@
1
- <template>
2
- <div>
3
- <div
4
- :class="divider || showSection ? 'border-b border-gray-200 pb-2' : ''"
5
- class="flex flex-row items-center justify-between cursor-pointer"
6
- @click.self="collapse"
7
- >
8
- <!-- left and right arrow icon as per opening and closing of collapsible -->
9
- <div
10
- class="flex flex-row items-center"
11
- @click="collapse"
12
- >
13
- <c-icon
14
- :name="showSection ? 'chevron-down' : 'chevron-right'"
15
- class="text-gray-900 h-5 w-5"
16
- type="solid"
17
- ></c-icon>
18
- <!-- label of the collapsible section -->
19
- <div
20
- :class="{ 'py-2': tabAction }"
21
- class="border-transparent text-gray-900 hover:text-gray-700 hover:border-gray-300 whitespace-nowrap font-semibold text-base ml-1"
22
- >
23
- {{ label }}
24
- </div>
25
- </div>
26
- <!-- tertiary button to render on right side of collapsible section -->
27
- <c-button
28
- v-if="tabAction && showSection"
29
- type="tertiary"
30
- :label="buttonLabel"
31
- @action="action"
32
- ></c-button>
33
- <!-- anchor tag to render on right side of collapsible section -->
34
- <c-anchor-tag
35
- v-if="tabLink && showSection"
36
- :label="tabLink.label"
37
- :action="action"
38
- ></c-anchor-tag>
39
- </div>
40
- <!-- content to render in collapsible section -->
41
- <div class="text-sm text-gray-500 mt-5" v-if="showSection">
42
- <slot></slot>
43
- </div>
44
- </div>
45
- </template>
46
-
47
- <script>
48
- import CIcon from "../CIcon/CIcon.vue";
49
- import CButton from "../CButton/CButton.vue";
50
- import CAnchorTag from "../CAnchorTag/CAnchorTag.vue";
51
- export default {
52
- name: "CCollapsibleSection",
53
- components: { CIcon, CButton, CAnchorTag },
54
- props: {
55
- // label of section
56
- label: {
57
- type: String,
58
- },
59
- // text to render on tertiary button
60
- buttonLabel: {
61
- type: String,
62
- },
63
- // whether to show the divider below section heading
64
- divider: {
65
- type: Boolean,
66
- },
67
- isCollapsed: {
68
- type: Boolean,
69
- default: true,
70
- },
71
- // to render button on right side of section heading
72
- tabAction: { type: Boolean },
73
- // link to render on right side of section
74
- tabLink: { type: Object },
75
- // action to emit on click of link/button
76
- action: {
77
- type: Function,
78
- },
79
- },
80
- data() {
81
- return {
82
- showSection: this.isCollapsed,
83
- };
84
- },
85
- methods: {
86
- collapse() {
87
- console.log("collapsing")
88
- this.showSection = !this.showSection;
89
- },
90
- },
91
- watch: {
92
- isCollapsed() {
93
- this.showSection = this.isCollapsed;
94
- },
95
- },
96
- };
97
- </script>
98
-
99
- <style></style>
@@ -1,3 +0,0 @@
1
- import CCollapsibleSection from './CCollapsibleSection.vue'
2
-
3
- export default CCollapsibleSection
@@ -1,35 +0,0 @@
1
- <template>
2
- <div class="flex items-center">
3
- <span class="h-1.5 w-1.5 rounded-full" :class="colorClasses" aria-hidden="true"></span>
4
- <div class="ml-2 text-sm font-medium">
5
- {{ label }}
6
- </div>
7
- </div>
8
- </template>
9
- <script>
10
- export default {
11
- name: "CColorDots",
12
- props: {
13
- color: {
14
- type: String,
15
- },
16
- label: {
17
- type: String,
18
- },
19
- },
20
- computed: {
21
- colorClasses() {
22
- return {
23
- "bg-gray-500": this.color == "gray",
24
- "bg-red-500": this.color == "red",
25
- "bg-yellow-500": this.color == "yellow",
26
- "bg-green-500": this.color == "green",
27
- "bg-blue-500": this.color == "indigo",
28
- "bg-purple-500": this.color == "purple",
29
- "bg-pink-500": this.color == "pink",
30
- "bg-indigo-500": this.color == "indigo",
31
- };
32
- },
33
- },
34
- };
35
- </script>
@@ -1,3 +0,0 @@
1
- import CColorDots from "./CColorDots.vue";
2
-
3
- export default CColorDots;
@@ -1,120 +0,0 @@
1
- <template>
2
- <focus-trap :active="true" :escapeDeactivates="false">
3
- <div v-scroll-lock="true" class="fixed inset-0 z-100 overflow-y-auto">
4
- <div
5
- class="flex min-h-screen items-end justify-center px-4 pt-4 pb-20 text-center sm:block sm:p-0"
6
- @click="$emit('close')"
7
- >
8
- <transition
9
- enter-active-class="ease-out duration-300"
10
- enter-class="opacity-0"
11
- enter-to-class="opacity-100"
12
- leave-active-class="ease-in duration-200"
13
- leave-class="opacity-100"
14
- leave-to-class="opacity-0"
15
- >
16
- <div class="fixed inset-0 transition-opacity" aria-hidden="true">
17
- <div class="absolute inset-0 bg-gray-500 opacity-75"></div>
18
- </div>
19
- </transition>
20
-
21
- <!-- This element is to trick the browser into centering the modal contents. -->
22
- <span class="hidden sm:inline-block sm:h-screen sm:align-middle" aria-hidden="true"
23
- >&#8203;</span
24
- >
25
- <transition
26
- enter-active-class="ease-out duration-300"
27
- enter-class="opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95"
28
- enter-to-class="opacity-100 translate-y-0 sm:scale-100"
29
- leave-active-class="ease-in duration-200"
30
- leave-class="opacity-100 translate-y-0 sm:scale-100"
31
- leave-to-class="opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95"
32
- >
33
- <div
34
- class="inline-block transform overflow-y-visible rounded-lg bg-white text-left align-bottom shadow-xl transition-all sm:my-8 sm:w-full sm:max-w-sm sm:align-middle md:max-w-2xl"
35
- role="dialog"
36
- aria-modal="true"
37
- aria-labelledby="modal-headline"
38
- @click.stop
39
- >
40
- <div class="bg-white shadow sm:rounded-lg">
41
- <div class="px-4 py-5 sm:p-6">
42
- <h3 class="text-lg font-medium leading-6 text-gray-900">
43
- {{ title }}
44
- </h3>
45
- <div class="mt-2 max-w-xl text-sm text-gray-500">
46
- <p>{{ message }}</p>
47
- <p v-if="description" class="mt-1 text-gray-500">{{ description }}</p>
48
- </div>
49
- <div class="mt-5 flex justify-end space-x-2">
50
- <c-button
51
- @action="$emit('action-one')"
52
- :type="actionOneType"
53
- :label="actionOneLabel"
54
- ></c-button>
55
- <c-button
56
- @action="$emit('action-two')"
57
- :type="actionTwoType"
58
- :label="actionTwoLabel"
59
- :isLoading="loadButton"
60
- :disabled="loadButton"
61
- ></c-button>
62
- </div>
63
- </div>
64
- </div>
65
- </div>
66
- </transition>
67
- </div>
68
- </div>
69
- </focus-trap>
70
- </template>
71
-
72
- <script>
73
- import CButton from "../CButton";
74
-
75
- export default {
76
- name: "CConfirmActionModal",
77
- components: {
78
- CButton,
79
- },
80
- props: {
81
- title: {
82
- type: String,
83
- default: "Are you sure?",
84
- },
85
- message: {
86
- type: String,
87
- default: "",
88
- },
89
- description: {
90
- type: String,
91
- },
92
- actionOneLabel: {
93
- type: String,
94
- default: "Cancel",
95
- },
96
- actionTwoLabel: {
97
- type: String,
98
- default: "Ok",
99
- },
100
- actionOneType: {
101
- type: String,
102
- default: "secondary-gray",
103
- },
104
- actionTwoType: {
105
- type: String,
106
- default: "secondary-gray",
107
- },
108
- loadButton: {
109
- type: Boolean,
110
- default: false,
111
- },
112
- },
113
- };
114
- </script>
115
-
116
- <style>
117
- .form-content {
118
- max-height: calc(100vh - 200px);
119
- }
120
- </style>
@@ -1,3 +0,0 @@
1
- import CConfirmActionModal from "./CConfirmActionModal.vue";
2
-
3
- export default CConfirmActionModal;
@@ -1,139 +0,0 @@
1
- <template>
2
- <div>
3
- <div class="flex items-center">
4
- <div v-if="label">
5
- <label class="block text-sm font-medium text-gray-900">
6
- {{ label }}
7
- </label>
8
- </div>
9
- <!-- asterisk sign to render if field is required -->
10
- <p v-if="isRequired" class="ml-1 text-red-600">*</p>
11
- </div>
12
- <v-date-picker
13
- :class="{
14
- 'inline-block h-full': true,
15
- 'w-full': isExpanded,
16
- }"
17
- :masks="masks"
18
- @input="onDayClick"
19
- :value="value"
20
- :min-date="minDate"
21
- :max-date="maxDate"
22
- :attributes="attrs"
23
- firstDayOfWeek="2"
24
- :is-required="true"
25
- >
26
- <template v-slot="{ inputValue, togglePopover }">
27
- <div class="mt-1 flex items-center">
28
- <button
29
- type="button"
30
- :class="[
31
- disabled ? 'pointer-events-none border-gray-100' : 'border-gray-300',
32
- 'text-blue-600 focus:outline-none rounded-l-md border bg-white p-2 shadow-sm focus:text-white',
33
- ]"
34
- @click="togglePopover()"
35
- >
36
- <c-icon
37
- name="calendar-solid"
38
- :class="[disabled ? 'text-gray-200' : 'text-gray-400', 'h-5 w-5 ']"
39
- type="solid"
40
- ></c-icon>
41
- </button>
42
- <input
43
- :value="inputValue"
44
- :class="[
45
- disabled
46
- ? 'pointer-events-none border-l-0 border-gray-100 text-gray-400'
47
- : 'border-l-0 border-gray-300 text-gray-900',
48
- 'focus:outline-none focus:border-blue-500 w-full appearance-none rounded-r-md border bg-white p-2 text-sm shadow-sm',
49
- ]"
50
- :readonly="disabled"
51
- @click="togglePopover()"
52
- />
53
- </div>
54
- </template>
55
- </v-date-picker>
56
- <!-- validation error message -->
57
- <p v-if="!isValidate" class="mt-2 text-sm text-red-600">
58
- {{ errorMessage }}
59
- </p>
60
- <p v-if="helpText && isValidate == true" class="mt-1 text-sm text-gray-500">
61
- {{ helpText }}
62
- </p>
63
- </div>
64
- </template>
65
- <script>
66
- import CIcon from "../CIcon/CIcon.vue";
67
- // import Calendar from "v-calendar/lib/components/calendar.umd";
68
- import VDatePicker from "v-calendar/lib/components/date-picker.umd";
69
- export default {
70
- name: "CDatepicker",
71
- components: {
72
- // Calendar,
73
- VDatePicker,
74
- CIcon,
75
- },
76
- props: {
77
- classes: {
78
- type: String,
79
- },
80
- isRequired: {
81
- type: Boolean,
82
- },
83
- label: {
84
- type: String,
85
- },
86
- helpText: {
87
- type: String,
88
- },
89
- value: {
90
- type: [String, Date, Array],
91
- },
92
- disabled: {
93
- type: Boolean,
94
- default: false,
95
- },
96
- minDate: {
97
- type: [String, Date],
98
- default: null,
99
- },
100
- maxDate:{
101
- type: [String, Date],
102
- default: null,
103
- },
104
- isExpanded: {
105
- type: Boolean,
106
- default: false,
107
- },
108
- isValidate: {
109
- type: Boolean,
110
- default: true,
111
- },
112
- errorMessage: {
113
- type: String,
114
- },
115
- },
116
- data() {
117
- const masks = {
118
- input: ["MMM DD, YYYY", "YYYY/MM/DD", "DD-MM-YYYY", "DD/MM/YYYY", "YYYY-MM-DD", "L"],
119
- };
120
- return {
121
- masks,
122
- attrs: [
123
- {
124
- highlight: {
125
- color: "blue",
126
- fillMode: "outline",
127
- },
128
- dates: new Date(),
129
- },
130
- ],
131
- };
132
- },
133
- methods: {
134
- onDayClick(date) {
135
- this.$emit("input", date);
136
- },
137
- },
138
- };
139
- </script>
@@ -1,3 +0,0 @@
1
- import CDatepicker from './CDatepicker.vue'
2
-
3
- export default CDatepicker