classcard-ui 0.2.985 → 0.2.986

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 (188) hide show
  1. package/README.md +24 -24
  2. package/dist/classcard-ui.common.js +70 -58
  3. package/dist/classcard-ui.common.js.map +1 -1
  4. package/dist/classcard-ui.umd.js +70 -58
  5. package/dist/classcard-ui.umd.js.map +1 -1
  6. package/dist/classcard-ui.umd.min.js +1 -1
  7. package/dist/classcard-ui.umd.min.js.map +1 -1
  8. package/package.json +82 -82
  9. package/src/.DS_Store +0 -0
  10. package/src/App.vue +16 -16
  11. package/src/components/CAlerts/CAlerts.vue +70 -70
  12. package/src/components/CAlerts/index.js +2 -2
  13. package/src/components/CAnchorTabs/CAnchorTabs.vue +96 -96
  14. package/src/components/CAnchorTabs/index.js +2 -2
  15. package/src/components/CAnchorTag/CAnchorTag.vue +62 -62
  16. package/src/components/CAnchorTag/index.js +2 -2
  17. package/src/components/CAvatar/CAvatar.vue +136 -136
  18. package/src/components/CAvatar/index.js +2 -2
  19. package/src/components/CAvatarGroup/CAvatarGroup.vue +145 -145
  20. package/src/components/CAvatarGroup/index.js +2 -2
  21. package/src/components/CBasicTable/CBasicTable.vue +184 -184
  22. package/src/components/CBasicTable/index.js +2 -2
  23. package/src/components/CBreadcrumbs/CBreadcrumbs.vue +38 -38
  24. package/src/components/CBreadcrumbs/index.js +2 -2
  25. package/src/components/CButton/CButton.vue +152 -152
  26. package/src/components/CButton/index.js +2 -2
  27. package/src/components/CButtonGroup/CButtonGroup.vue +118 -118
  28. package/src/components/CButtonGroup/index.js +2 -2
  29. package/src/components/CButtonIcon/CButtonIcon.vue +117 -117
  30. package/src/components/CButtonIcon/index.js +2 -2
  31. package/src/components/CButtonLink/CButtonLink.vue +39 -39
  32. package/src/components/CButtonLink/index.js +2 -2
  33. package/src/components/CButtonSelect/CButtonSelect.vue +124 -124
  34. package/src/components/CButtonSelect/index.js +2 -2
  35. package/src/components/CButtonSelectBorder/CButtonSelectBorder.vue +135 -135
  36. package/src/components/CButtonSelectBorder/index.js +3 -3
  37. package/src/components/CButtonWithDropdown/CButtonWithDropdown.vue +135 -135
  38. package/src/components/CButtonWithDropdown/index.js +2 -2
  39. package/src/components/CCalendar/CCalendar.vue +410 -410
  40. package/src/components/CCalendar/index.js +3 -3
  41. package/src/components/CCard/CCard.vue +49 -49
  42. package/src/components/CCard/index.js +2 -2
  43. package/src/components/CCheckbox/CCheckbox.vue +85 -85
  44. package/src/components/CCheckbox/index.js +2 -2
  45. package/src/components/CCircularButton/CCircularButton.vue +52 -52
  46. package/src/components/CCircularButton/index.js +2 -2
  47. package/src/components/CCollapsibleSection/CCollapsibleSection.vue +101 -101
  48. package/src/components/CCollapsibleSection/index.js +2 -2
  49. package/src/components/CColorDots/CColorDots.vue +46 -46
  50. package/src/components/CColorDots/index.js +3 -3
  51. package/src/components/CConfirmActionModal/CConfirmActionModal.vue +171 -171
  52. package/src/components/CConfirmActionModal/index.js +3 -3
  53. package/src/components/CDatepicker/CDatepicker.vue +158 -158
  54. package/src/components/CDatepicker/index.js +2 -2
  55. package/src/components/CDualSelect/CDualSelect.vue +193 -193
  56. package/src/components/CDualSelect/index.js +2 -2
  57. package/src/components/CEditor/CEditor.vue +98 -98
  58. package/src/components/CEditor/index.js +2 -2
  59. package/src/components/CFormSectionHeading/CFormSectionHeading.vue +53 -53
  60. package/src/components/CFormSectionHeading/index.js +2 -2
  61. package/src/components/CGroupedSelect/CGroupedSelect.vue +245 -245
  62. package/src/components/CGroupedSelect/index.js +3 -3
  63. package/src/components/CIcon/CIcon.vue +77 -77
  64. package/src/components/CIcon/index.js +2 -2
  65. package/src/components/CIconDropdown/CIconDropdown.vue +131 -120
  66. package/src/components/CIconDropdown/index.js +2 -2
  67. package/src/components/CInput/CInput.vue +134 -134
  68. package/src/components/CInput/index.js +2 -2
  69. package/src/components/CInputAddon/CInputAddon.vue +228 -228
  70. package/src/components/CInputAddon/index.js +2 -2
  71. package/src/components/CInputEmail/CInputEmail.vue +93 -93
  72. package/src/components/CInputEmail/index.js +2 -2
  73. package/src/components/CInsetTabs/CInsetTabs.vue +88 -88
  74. package/src/components/CInsetTabs/index.js +3 -3
  75. package/src/components/CModalHeading/CModalHeading.vue +22 -22
  76. package/src/components/CModalHeading/index.js +2 -2
  77. package/src/components/CModuleHelpLinks/CModuleHelpLinks.vue +70 -70
  78. package/src/components/CModuleHelpLinks/index.js +3 -3
  79. package/src/components/CMultiselect/CMultiselect.vue +479 -479
  80. package/src/components/CMultiselect/index.js +2 -2
  81. package/src/components/CMultiselectr/CMultiselectr.vue +44 -44
  82. package/src/components/CMultiselectr/index.js +2 -2
  83. package/src/components/CPageHeading/CPageHeading.vue +56 -56
  84. package/src/components/CPageHeading/index.js +2 -2
  85. package/src/components/CPagination/CPagination.vue +233 -233
  86. package/src/components/CPagination/index.js +2 -2
  87. package/src/components/CPhoneNumber/CPhoneNumber.vue +114 -114
  88. package/src/components/CPhoneNumber/index.js +2 -2
  89. package/src/components/CRadio/CRadio.vue +124 -124
  90. package/src/components/CRadio/index.js +2 -2
  91. package/src/components/CRangeSlider/CRangeSlider.vue +55 -55
  92. package/src/components/CRangeSlider/index.js +2 -2
  93. package/src/components/CReorderableStackedList/CReorderableStackedList.vue +94 -94
  94. package/src/components/CReorderableStackedList/index.js +2 -2
  95. package/src/components/CSelect/CSelect.vue +417 -417
  96. package/src/components/CSelect/index.js +2 -2
  97. package/src/components/CSmallTimeline/CSmallTimeline.vue +40 -40
  98. package/src/components/CSmallTimeline/index.js +2 -2
  99. package/src/components/CStackedList/CStackedList.vue +150 -150
  100. package/src/components/CStackedList/index.js +2 -2
  101. package/src/components/CStats/CStats.vue +116 -116
  102. package/src/components/CStats/index.js +2 -2
  103. package/src/components/CSwitch/CSwitch.vue +171 -171
  104. package/src/components/CSwitch/index.js +2 -2
  105. package/src/components/CTabLazy/CTabLazy.vue +58 -58
  106. package/src/components/CTabLazy/index.js +2 -2
  107. package/src/components/CTable/CTable.vue +671 -671
  108. package/src/components/CTable/index.js +2 -2
  109. package/src/components/CTabs/CTabs.vue +125 -125
  110. package/src/components/CTabs/index.js +2 -2
  111. package/src/components/CTag/CTag.vue +59 -59
  112. package/src/components/CTag/index.js +2 -2
  113. package/src/components/CTextarea/CTextarea.vue +107 -107
  114. package/src/components/CTextarea/index.js +2 -2
  115. package/src/components/CTimeline/CTimeline.vue +237 -237
  116. package/src/components/CTimeline/index.js +2 -2
  117. package/src/components/CUpload/CUpload.vue +267 -267
  118. package/src/components/CUpload/index.js +2 -2
  119. package/src/components/index.js +52 -52
  120. package/src/icons.js +364 -364
  121. package/src/main.js +22 -22
  122. package/src/stories/CAlerts.stories.js +37 -37
  123. package/src/stories/CAnchorTabs.stories.js +29 -29
  124. package/src/stories/CAnchorTag.stories.js +36 -36
  125. package/src/stories/CAvatar.stories.js +38 -38
  126. package/src/stories/CAvatarGroup.stories.js +100 -100
  127. package/src/stories/CBasicTable.stories.js +316 -316
  128. package/src/stories/CBreadcrumbs.stories.js +24 -24
  129. package/src/stories/CButton.stories.js +47 -47
  130. package/src/stories/CButtonGroup.stories.js +33 -33
  131. package/src/stories/CButtonIcon.stories.js +27 -27
  132. package/src/stories/CButtonLink.stories.js +24 -24
  133. package/src/stories/CButtonSelect.stories.js +41 -41
  134. package/src/stories/CButtonSelectBorder.stories.js +48 -48
  135. package/src/stories/CButtonWithDropdown.stories.js +41 -41
  136. package/src/stories/CCalendar.stories.js +16 -16
  137. package/src/stories/CCard.stories.js +30 -30
  138. package/src/stories/CCheckbox.stories.js +29 -29
  139. package/src/stories/CCircularButton.stories.js +29 -29
  140. package/src/stories/CCollapsibleSection.stories.js +28 -28
  141. package/src/stories/CColorDots.stories.js +28 -28
  142. package/src/stories/CConfirmActionModal.stories.js +59 -59
  143. package/src/stories/CDatepicker.stories.js +30 -30
  144. package/src/stories/CDualSelect.stories.js +29 -29
  145. package/src/stories/CEditor.stories.js +30 -30
  146. package/src/stories/CFormSectionHeading.stories.js +34 -34
  147. package/src/stories/CGroupedSelect.stories.js +71 -71
  148. package/src/stories/CIcon.stories.js +26 -26
  149. package/src/stories/CIconDropdown.stories.js +45 -45
  150. package/src/stories/CInput.stories.js +36 -36
  151. package/src/stories/CInputAddon.stories.js +37 -37
  152. package/src/stories/CInputEmail.stories.js +27 -27
  153. package/src/stories/CInsetTabs.stories.js +38 -38
  154. package/src/stories/CModalHeading.stories.js +25 -25
  155. package/src/stories/CModuleHelpLinks.stories.js +25 -25
  156. package/src/stories/CMultiselect.stories.js +157 -157
  157. package/src/stories/CMultiselectr.stories.js +23 -23
  158. package/src/stories/CPageHeading.stories.js +32 -32
  159. package/src/stories/CPagination.stories.js +30 -30
  160. package/src/stories/CPhoneNumber.stories.js +29 -29
  161. package/src/stories/CRadio.stories.js +36 -36
  162. package/src/stories/CRangeSlider.stories.js +23 -23
  163. package/src/stories/CReorderableStackedList.stories.js +23 -23
  164. package/src/stories/CSelect.stories.js +96 -96
  165. package/src/stories/CSmallTimeline.stories.js +26 -26
  166. package/src/stories/CStackedList.stories.js +37 -37
  167. package/src/stories/CStats.stories.js +33 -33
  168. package/src/stories/CSwitch.stories.js +28 -28
  169. package/src/stories/CTabLazy.stories.js +24 -24
  170. package/src/stories/CTable.stories.js +169 -169
  171. package/src/stories/CTabs.stories.js +33 -33
  172. package/src/stories/CTag.stories.js +34 -34
  173. package/src/stories/CTextarea.stories.js +32 -32
  174. package/src/stories/CTimeline.stories.js +26 -26
  175. package/src/stories/CUpload.stories.js +36 -36
  176. package/src/stories/Introduction.stories.mdx +207 -207
  177. package/src/stories/Page.vue +88 -88
  178. package/src/stories/assets/code-brackets.svg +0 -0
  179. package/src/stories/assets/colors.svg +0 -0
  180. package/src/stories/assets/comments.svg +0 -0
  181. package/src/stories/assets/direction.svg +0 -0
  182. package/src/stories/assets/flow.svg +0 -0
  183. package/src/stories/assets/plugin.svg +0 -0
  184. package/src/stories/assets/repo.svg +0 -0
  185. package/src/stories/assets/stackalt.svg +0 -0
  186. package/src/stories/header.css +26 -26
  187. package/src/stories/page.css +69 -69
  188. package/src/stories/utils.css +17 -17
@@ -1,3 +1,3 @@
1
- import CTable from './CTable.vue'
2
-
1
+ import CTable from './CTable.vue'
2
+
3
3
  export default CTable
@@ -1,125 +1,125 @@
1
- <template>
2
- <div>
3
- <slot></slot>
4
- <div class="lg:hidden" :class="tabClasses">
5
- <label for="tabs" class="sr-only">Select a tab</label>
6
- <select
7
- v-model="activeTab"
8
- @change="switchTabForMobile($event.target.selectedIndex)"
9
- class="block w-full rounded-md border-gray-300 pr-6 pl-4 text-sm focus:border-indigo-500 focus:ring-indigo-500"
10
- id="tabs"
11
- >
12
- <option
13
- v-for="tab in tabs"
14
- :key="tab.text"
15
- :value="tab.name"
16
- class="text-sm"
17
- >
18
- {{ tab.text }}
19
- </option>
20
- </select>
21
- </div>
22
- <div class="hidden lg:block">
23
- <div class="flex items-center justify-between border-b border-gray-200">
24
- <nav :class="classes" class="-mb-px flex" aria-label="Tabs">
25
- <a
26
- v-for="tab in tabs"
27
- :key="tab.text"
28
- @click="switchTab(tab.name)"
29
- class="group inline-flex cursor-pointer items-center whitespace-nowrap border-b-2 py-4 px-1 text-sm font-medium"
30
- :class="
31
- activeTab == tab.name
32
- ? 'border-indigo-600 text-indigo-700 hover:text-indigo-800'
33
- : 'border-transparent text-gray-500 hover:border-gray-300 hover:text-gray-700'
34
- "
35
- >
36
- <c-icon
37
- v-if="tab.icon"
38
- :name="tab.icon"
39
- class="-ml-0.5 mr-2 h-5 w-5"
40
- :class="
41
- activeTab == tab.name
42
- ? 'text-indigo-700 group-hover:text-indigo-800'
43
- : 'text-gray-400 group-hover:text-gray-500 '
44
- "
45
- type="solid"
46
- ></c-icon>
47
- <span
48
- :class="
49
- activeTab == tab.name
50
- ? 'text-indigo-700'
51
- : 'text-gray-500 hover:text-gray-700'
52
- "
53
- >
54
- {{ tab.text }}
55
- </span>
56
- <div class="ml-2" v-if="tab.count">
57
- <span
58
- :class="
59
- activeTab == tab.name
60
- ? 'rounded-full bg-indigo-100 px-2 py-0.5 text-indigo-900'
61
- : 'rounded-full bg-gray-100 px-2 py-0.5 text-gray-900'
62
- "
63
- >
64
- {{ tab.count }}
65
- </span>
66
- </div>
67
- </a>
68
- </nav>
69
- <div>
70
- <slot name="customComp"> </slot>
71
- </div>
72
- </div>
73
- </div>
74
- <div v-for="(tab, index) in tabs" :key="index">
75
- <div v-show="tab.name == activeTab">
76
- <slot :name="`tab-panel-${tab.name}`"></slot>
77
- </div>
78
- </div>
79
- </div>
80
- </template>
81
-
82
- <script>
83
- // import CIcon from "../CIcon/CIcon.vue";
84
- export default {
85
- name: "CTabs",
86
- // components: { CIcon },
87
- props: {
88
- tabs: {
89
- type: Array,
90
- required: true,
91
- },
92
- initialTab: {
93
- type: String,
94
- },
95
- classes: {
96
- type: String,
97
- },
98
- tabClasses: {
99
- type: String,
100
- },
101
- },
102
- data() {
103
- return {
104
- activeTab: this.initialTab,
105
- };
106
- },
107
- methods: {
108
- switchTab(tabText) {
109
- console.log(tabText);
110
- this.activeTab = tabText;
111
- },
112
- switchTabForMobile(index) {
113
- var selectedOption = this.tabs[index];
114
- this.activeTab = selectedOption.name;
115
- },
116
- },
117
- watch: {
118
- initialTab() {
119
- this.activeTab = this.initialTab;
120
- },
121
- },
122
- };
123
- </script>
124
-
125
- <style></style>
1
+ <template>
2
+ <div>
3
+ <slot></slot>
4
+ <div class="lg:hidden" :class="tabClasses">
5
+ <label for="tabs" class="sr-only">Select a tab</label>
6
+ <select
7
+ v-model="activeTab"
8
+ @change="switchTabForMobile($event.target.selectedIndex)"
9
+ class="block w-full rounded-md border-gray-300 pr-6 pl-4 text-sm focus:border-indigo-500 focus:ring-indigo-500"
10
+ id="tabs"
11
+ >
12
+ <option
13
+ v-for="tab in tabs"
14
+ :key="tab.text"
15
+ :value="tab.name"
16
+ class="text-sm"
17
+ >
18
+ {{ tab.text }}
19
+ </option>
20
+ </select>
21
+ </div>
22
+ <div class="hidden lg:block">
23
+ <div class="flex items-center justify-between border-b border-gray-200">
24
+ <nav :class="classes" class="-mb-px flex" aria-label="Tabs">
25
+ <a
26
+ v-for="tab in tabs"
27
+ :key="tab.text"
28
+ @click="switchTab(tab.name)"
29
+ class="group inline-flex cursor-pointer items-center whitespace-nowrap border-b-2 py-4 px-1 text-sm font-medium"
30
+ :class="
31
+ activeTab == tab.name
32
+ ? 'border-indigo-600 text-indigo-700 hover:text-indigo-800'
33
+ : 'border-transparent text-gray-500 hover:border-gray-300 hover:text-gray-700'
34
+ "
35
+ >
36
+ <c-icon
37
+ v-if="tab.icon"
38
+ :name="tab.icon"
39
+ class="-ml-0.5 mr-2 h-5 w-5"
40
+ :class="
41
+ activeTab == tab.name
42
+ ? 'text-indigo-700 group-hover:text-indigo-800'
43
+ : 'text-gray-400 group-hover:text-gray-500 '
44
+ "
45
+ type="solid"
46
+ ></c-icon>
47
+ <span
48
+ :class="
49
+ activeTab == tab.name
50
+ ? 'text-indigo-700'
51
+ : 'text-gray-500 hover:text-gray-700'
52
+ "
53
+ >
54
+ {{ tab.text }}
55
+ </span>
56
+ <div class="ml-2" v-if="tab.count">
57
+ <span
58
+ :class="
59
+ activeTab == tab.name
60
+ ? 'rounded-full bg-indigo-100 px-2 py-0.5 text-indigo-900'
61
+ : 'rounded-full bg-gray-100 px-2 py-0.5 text-gray-900'
62
+ "
63
+ >
64
+ {{ tab.count }}
65
+ </span>
66
+ </div>
67
+ </a>
68
+ </nav>
69
+ <div>
70
+ <slot name="customComp"> </slot>
71
+ </div>
72
+ </div>
73
+ </div>
74
+ <div v-for="(tab, index) in tabs" :key="index">
75
+ <div v-show="tab.name == activeTab">
76
+ <slot :name="`tab-panel-${tab.name}`"></slot>
77
+ </div>
78
+ </div>
79
+ </div>
80
+ </template>
81
+
82
+ <script>
83
+ // import CIcon from "../CIcon/CIcon.vue";
84
+ export default {
85
+ name: "CTabs",
86
+ // components: { CIcon },
87
+ props: {
88
+ tabs: {
89
+ type: Array,
90
+ required: true,
91
+ },
92
+ initialTab: {
93
+ type: String,
94
+ },
95
+ classes: {
96
+ type: String,
97
+ },
98
+ tabClasses: {
99
+ type: String,
100
+ },
101
+ },
102
+ data() {
103
+ return {
104
+ activeTab: this.initialTab,
105
+ };
106
+ },
107
+ methods: {
108
+ switchTab(tabText) {
109
+ console.log(tabText);
110
+ this.activeTab = tabText;
111
+ },
112
+ switchTabForMobile(index) {
113
+ var selectedOption = this.tabs[index];
114
+ this.activeTab = selectedOption.name;
115
+ },
116
+ },
117
+ watch: {
118
+ initialTab() {
119
+ this.activeTab = this.initialTab;
120
+ },
121
+ },
122
+ };
123
+ </script>
124
+
125
+ <style></style>
@@ -1,3 +1,3 @@
1
- import CTabs from './CTabs.vue'
2
-
1
+ import CTabs from './CTabs.vue'
2
+
3
3
  export default CTabs
@@ -1,59 +1,59 @@
1
- <template>
2
- <div>
3
- <span
4
- :class="[colorClasses, tagClasses]"
5
- class="inline-flex rounded-md px-2.5 py-0.5 text-sm leading-5"
6
- >
7
- <c-icon
8
- v-if="icon"
9
- :type="icon.type"
10
- :class="icon.class"
11
- :name="icon.name"
12
- ></c-icon>
13
- {{ label }}
14
- </span>
15
- </div>
16
- </template>
17
- <script>
18
- import CIcon from "../CIcon/CIcon.vue";
19
- export default {
20
- name: "CTag",
21
- components: { CIcon },
22
- props: {
23
- label: { type: String },
24
- color: { type: String, default: "green" },
25
- tagClasses: {
26
- type: String,
27
- },
28
- icon: {
29
- type: Object,
30
- },
31
- },
32
- computed: {
33
- colorClasses() {
34
- return {
35
- "bg-gray-50 text-gray-800 ring-1 ring-inset ring-gray-500/10":
36
- this.color == "gray",
37
- "bg-red-50 text-red-700 ring-1 ring-inset ring-red-600/10":
38
- this.color == "red",
39
- "bg-yellow-50 text-yellow-800 ring-1 ring-inset ring-yellow-600/20":
40
- this.color == "yellow",
41
- "bg-green-50 text-green-700 ring-1 ring-inset ring-green-600/20":
42
- this.color == "green",
43
- "bg-blue-50 text-blue-700 ring-1 ring-inset ring-blue-700/10":
44
- this.color == "blue",
45
- "bg-purple-50 text-purple-700 ring-1 ring-inset ring-purple-700/10":
46
- this.color == "purple",
47
- "bg-pink-50 text-pink-700 ring-1 ring-inset ring-pink-700/10":
48
- this.color == "pink",
49
- "bg-indigo-50 text-indigo-700 ring-1 ring-inset ring-indigo-700/10":
50
- this.color == "indigo",
51
- "bg-orange-50 text-orange-700 ring-1 ring-inset ring-orange-700/10":
52
- this.color == "orange",
53
- "bg-white text-gray-800 ring-1 ring-inset ring-gray-500/10":
54
- this.color == "white",
55
- };
56
- },
57
- },
58
- };
59
- </script>
1
+ <template>
2
+ <div>
3
+ <span
4
+ :class="[colorClasses, tagClasses]"
5
+ class="inline-flex rounded-md px-2.5 py-0.5 text-sm leading-5"
6
+ >
7
+ <c-icon
8
+ v-if="icon"
9
+ :type="icon.type"
10
+ :class="icon.class"
11
+ :name="icon.name"
12
+ ></c-icon>
13
+ {{ label }}
14
+ </span>
15
+ </div>
16
+ </template>
17
+ <script>
18
+ import CIcon from "../CIcon/CIcon.vue";
19
+ export default {
20
+ name: "CTag",
21
+ components: { CIcon },
22
+ props: {
23
+ label: { type: String },
24
+ color: { type: String, default: "green" },
25
+ tagClasses: {
26
+ type: String,
27
+ },
28
+ icon: {
29
+ type: Object,
30
+ },
31
+ },
32
+ computed: {
33
+ colorClasses() {
34
+ return {
35
+ "bg-gray-50 text-gray-800 ring-1 ring-inset ring-gray-500/10":
36
+ this.color == "gray",
37
+ "bg-red-50 text-red-700 ring-1 ring-inset ring-red-600/10":
38
+ this.color == "red",
39
+ "bg-yellow-50 text-yellow-800 ring-1 ring-inset ring-yellow-600/20":
40
+ this.color == "yellow",
41
+ "bg-green-50 text-green-700 ring-1 ring-inset ring-green-600/20":
42
+ this.color == "green",
43
+ "bg-blue-50 text-blue-700 ring-1 ring-inset ring-blue-700/10":
44
+ this.color == "blue",
45
+ "bg-purple-50 text-purple-700 ring-1 ring-inset ring-purple-700/10":
46
+ this.color == "purple",
47
+ "bg-pink-50 text-pink-700 ring-1 ring-inset ring-pink-700/10":
48
+ this.color == "pink",
49
+ "bg-indigo-50 text-indigo-700 ring-1 ring-inset ring-indigo-700/10":
50
+ this.color == "indigo",
51
+ "bg-orange-50 text-orange-700 ring-1 ring-inset ring-orange-700/10":
52
+ this.color == "orange",
53
+ "bg-white text-gray-800 ring-1 ring-inset ring-gray-500/10":
54
+ this.color == "white",
55
+ };
56
+ },
57
+ },
58
+ };
59
+ </script>
@@ -1,3 +1,3 @@
1
- import CTag from './CTag.vue'
2
-
1
+ import CTag from './CTag.vue'
2
+
3
3
  export default CTag
@@ -1,107 +1,107 @@
1
- <template>
2
- <div>
3
- <div class="flex justify-between">
4
- <div class="flex items-center">
5
- <!-- label of input field -->
6
- <label v-if="label" class="block text-sm font-medium text-gray-900">
7
- {{ label }}
8
- </label>
9
- <!-- asterisk sign to render if field is required -->
10
- <p v-if="isRequired" class="ml-1 text-red-600">*</p>
11
- </div>
12
-
13
- <span v-if="hint" class="text-sm text-gray-500">{{ hint }}</span>
14
- </div>
15
-
16
- <div class="mt-1">
17
- <textarea
18
- :value="textareaValue"
19
- @input="$emit('input', $event.target.value)"
20
- @blur="$emit('blur', $event.target.value)"
21
- :placeholder="placeholder"
22
- :rows="rows"
23
- :class="[
24
- errorClasses,
25
- extraClasses,
26
- disableResize ? 'resize-none' : '',
27
- ]"
28
- :disabled="disabled"
29
- class="block w-full rounded-md text-gray-900 shadow-sm focus:border-indigo-500 focus:ring-indigo-500 disabled:opacity-50 sm:text-sm"
30
- ></textarea>
31
- <!-- <div
32
- v-if="!isValidate"
33
- class="pointer-events-none absolute inset-y-0 right-0 flex items-center pr-3 text-red-600"
34
- >
35
- <c-icon name="exclamation-circle" type="solid" class="h-5 w-5"></c-icon>
36
- </div> -->
37
- </div>
38
- <p v-if="!isValidate" class="mt-2 text-sm text-red-600">
39
- {{ errorMessage }}
40
- </p>
41
- <p v-if="helpText && isValidate == true" class="mt-2 text-sm text-gray-500">
42
- {{ helpText }}
43
- </p>
44
- </div>
45
- </template>
46
- <script>
47
- // import CIcon from "../CIcon/CIcon.vue";
48
- export default {
49
- name: "CTextarea",
50
- // components: { CIcon },
51
- props: {
52
- label: {
53
- type: String,
54
- },
55
- extraClasses: {
56
- type: String,
57
- },
58
- placeholder: {
59
- type: String,
60
- },
61
- value: {
62
- type: String,
63
- },
64
- rows: { type: String, default: "3" },
65
- helpText: {
66
- type: String,
67
- },
68
- hint: { type: String },
69
- isValidate: { type: Boolean },
70
- errorMessage: {
71
- type: String,
72
- },
73
- // whether the textarea field is mandatory or not
74
- isRequired: {
75
- type: Boolean,
76
- },
77
- disabled: {
78
- type: Boolean,
79
- default: false,
80
- },
81
- //disable the resize
82
- disableResize: {
83
- type: Boolean,
84
- default: false,
85
- },
86
- },
87
- computed: {
88
- errorClasses() {
89
- return {
90
- "border-red-300 text-red-900 placeholder-red-300 focus:ring-red-500 focus:border-red-500":
91
- this.isValidate == false,
92
- "border-gray-300": this.isValidate == true,
93
- };
94
- },
95
- },
96
- data() {
97
- return {
98
- textareaValue: this.value,
99
- };
100
- },
101
- watch: {
102
- value() {
103
- this.textareaValue = this.value;
104
- },
105
- },
106
- };
107
- </script>
1
+ <template>
2
+ <div>
3
+ <div class="flex justify-between">
4
+ <div class="flex items-center">
5
+ <!-- label of input field -->
6
+ <label v-if="label" class="block text-sm font-medium text-gray-900">
7
+ {{ label }}
8
+ </label>
9
+ <!-- asterisk sign to render if field is required -->
10
+ <p v-if="isRequired" class="ml-1 text-red-600">*</p>
11
+ </div>
12
+
13
+ <span v-if="hint" class="text-sm text-gray-500">{{ hint }}</span>
14
+ </div>
15
+
16
+ <div class="mt-1">
17
+ <textarea
18
+ :value="textareaValue"
19
+ @input="$emit('input', $event.target.value)"
20
+ @blur="$emit('blur', $event.target.value)"
21
+ :placeholder="placeholder"
22
+ :rows="rows"
23
+ :class="[
24
+ errorClasses,
25
+ extraClasses,
26
+ disableResize ? 'resize-none' : '',
27
+ ]"
28
+ :disabled="disabled"
29
+ class="block w-full rounded-md text-gray-900 shadow-sm focus:border-indigo-500 focus:ring-indigo-500 disabled:opacity-50 sm:text-sm"
30
+ ></textarea>
31
+ <!-- <div
32
+ v-if="!isValidate"
33
+ class="pointer-events-none absolute inset-y-0 right-0 flex items-center pr-3 text-red-600"
34
+ >
35
+ <c-icon name="exclamation-circle" type="solid" class="h-5 w-5"></c-icon>
36
+ </div> -->
37
+ </div>
38
+ <p v-if="!isValidate" class="mt-2 text-sm text-red-600">
39
+ {{ errorMessage }}
40
+ </p>
41
+ <p v-if="helpText && isValidate == true" class="mt-2 text-sm text-gray-500">
42
+ {{ helpText }}
43
+ </p>
44
+ </div>
45
+ </template>
46
+ <script>
47
+ // import CIcon from "../CIcon/CIcon.vue";
48
+ export default {
49
+ name: "CTextarea",
50
+ // components: { CIcon },
51
+ props: {
52
+ label: {
53
+ type: String,
54
+ },
55
+ extraClasses: {
56
+ type: String,
57
+ },
58
+ placeholder: {
59
+ type: String,
60
+ },
61
+ value: {
62
+ type: String,
63
+ },
64
+ rows: { type: String, default: "3" },
65
+ helpText: {
66
+ type: String,
67
+ },
68
+ hint: { type: String },
69
+ isValidate: { type: Boolean },
70
+ errorMessage: {
71
+ type: String,
72
+ },
73
+ // whether the textarea field is mandatory or not
74
+ isRequired: {
75
+ type: Boolean,
76
+ },
77
+ disabled: {
78
+ type: Boolean,
79
+ default: false,
80
+ },
81
+ //disable the resize
82
+ disableResize: {
83
+ type: Boolean,
84
+ default: false,
85
+ },
86
+ },
87
+ computed: {
88
+ errorClasses() {
89
+ return {
90
+ "border-red-300 text-red-900 placeholder-red-300 focus:ring-red-500 focus:border-red-500":
91
+ this.isValidate == false,
92
+ "border-gray-300": this.isValidate == true,
93
+ };
94
+ },
95
+ },
96
+ data() {
97
+ return {
98
+ textareaValue: this.value,
99
+ };
100
+ },
101
+ watch: {
102
+ value() {
103
+ this.textareaValue = this.value;
104
+ },
105
+ },
106
+ };
107
+ </script>
@@ -1,3 +1,3 @@
1
- import CTextarea from './CTextarea.vue'
2
-
1
+ import CTextarea from './CTextarea.vue'
2
+
3
3
  export default CTextarea