classcard-ui 0.2.705 → 0.2.708

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 (175) hide show
  1. package/README.md +24 -24
  2. package/dist/classcard-ui.common.js +68 -75
  3. package/dist/classcard-ui.common.js.map +1 -1
  4. package/dist/classcard-ui.umd.js +68 -75
  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 +81 -81
  9. package/src/App.vue +16 -16
  10. package/src/components/CAlerts/CAlerts.vue +70 -70
  11. package/src/components/CAlerts/index.js +2 -2
  12. package/src/components/CAnchorTabs/CAnchorTabs.vue +96 -96
  13. package/src/components/CAnchorTabs/index.js +2 -2
  14. package/src/components/CAnchorTag/CAnchorTag.vue +62 -62
  15. package/src/components/CAnchorTag/index.js +2 -2
  16. package/src/components/CAvatar/CAvatar.vue +112 -112
  17. package/src/components/CAvatar/index.js +2 -2
  18. package/src/components/CAvatarGroup/CAvatarGroup.vue +145 -145
  19. package/src/components/CAvatarGroup/index.js +2 -2
  20. package/src/components/CBasicTable/CBasicTable.vue +184 -184
  21. package/src/components/CBasicTable/index.js +2 -2
  22. package/src/components/CBreadcrumbs/CBreadcrumbs.vue +38 -38
  23. package/src/components/CBreadcrumbs/index.js +2 -2
  24. package/src/components/CButton/CButton.vue +147 -147
  25. package/src/components/CButton/index.js +2 -2
  26. package/src/components/CButtonGroup/CButtonGroup.vue +116 -116
  27. package/src/components/CButtonGroup/index.js +2 -2
  28. package/src/components/CButtonIcon/CButtonIcon.vue +91 -91
  29. package/src/components/CButtonIcon/index.js +2 -2
  30. package/src/components/CButtonLink/CButtonLink.vue +39 -39
  31. package/src/components/CButtonLink/index.js +2 -2
  32. package/src/components/CButtonSelect/CButtonSelect.vue +103 -103
  33. package/src/components/CButtonSelect/index.js +2 -2
  34. package/src/components/CButtonWithDropdown/CButtonWithDropdown.vue +168 -168
  35. package/src/components/CButtonWithDropdown/index.js +2 -2
  36. package/src/components/CCalendar/CCalendar.vue +401 -401
  37. package/src/components/CCalendar/index.js +3 -3
  38. package/src/components/CCard/CCard.vue +49 -49
  39. package/src/components/CCard/index.js +2 -2
  40. package/src/components/CCheckbox/CCheckbox.vue +70 -70
  41. package/src/components/CCheckbox/index.js +2 -2
  42. package/src/components/CCollapsibleSection/CCollapsibleSection.vue +99 -99
  43. package/src/components/CCollapsibleSection/index.js +2 -2
  44. package/src/components/CColorDots/CColorDots.vue +35 -35
  45. package/src/components/CColorDots/index.js +3 -3
  46. package/src/components/CConfirmActionModal/CConfirmActionModal.vue +120 -120
  47. package/src/components/CConfirmActionModal/index.js +3 -3
  48. package/src/components/CDatepicker/CDatepicker.vue +139 -139
  49. package/src/components/CDatepicker/index.js +2 -2
  50. package/src/components/CDualSelect/CDualSelect.vue +193 -193
  51. package/src/components/CDualSelect/index.js +2 -2
  52. package/src/components/CEditor/CEditor.vue +96 -96
  53. package/src/components/CEditor/index.js +2 -2
  54. package/src/components/CFormSectionHeading/CFormSectionHeading.vue +53 -53
  55. package/src/components/CFormSectionHeading/index.js +2 -2
  56. package/src/components/CGroupedSelect/CGroupedSelect.vue +217 -217
  57. package/src/components/CGroupedSelect/index.js +3 -3
  58. package/src/components/CIcon/CIcon.vue +77 -77
  59. package/src/components/CIcon/index.js +2 -2
  60. package/src/components/CIconDropdown/CIconDropdown.vue +111 -111
  61. package/src/components/CIconDropdown/index.js +2 -2
  62. package/src/components/CInput/CInput.vue +120 -120
  63. package/src/components/CInput/index.js +2 -2
  64. package/src/components/CInputAddon/CInputAddon.vue +202 -202
  65. package/src/components/CInputAddon/index.js +2 -2
  66. package/src/components/CInputEmail/CInputEmail.vue +93 -93
  67. package/src/components/CInputEmail/index.js +2 -2
  68. package/src/components/CModalHeading/CModalHeading.vue +22 -22
  69. package/src/components/CModalHeading/index.js +2 -2
  70. package/src/components/CModuleHelpLinks/CModuleHelpLinks.vue +39 -39
  71. package/src/components/CModuleHelpLinks/index.js +3 -3
  72. package/src/components/CMultiselect/CMultiselect.vue +339 -339
  73. package/src/components/CMultiselect/index.js +2 -2
  74. package/src/components/CMultiselectr/CMultiselectr.vue +44 -44
  75. package/src/components/CMultiselectr/index.js +2 -2
  76. package/src/components/CPageHeading/CPageHeading.vue +56 -56
  77. package/src/components/CPageHeading/index.js +2 -2
  78. package/src/components/CPagination/CPagination.vue +202 -202
  79. package/src/components/CPagination/index.js +2 -2
  80. package/src/components/CPhoneNumber/CPhoneNumber.vue +81 -81
  81. package/src/components/CPhoneNumber/index.js +2 -2
  82. package/src/components/CRadio/CRadio.vue +106 -106
  83. package/src/components/CRadio/index.js +2 -2
  84. package/src/components/CRangeSlider/CRangeSlider.vue +55 -55
  85. package/src/components/CRangeSlider/index.js +2 -2
  86. package/src/components/CReorderableStackedList/CReorderableStackedList.vue +94 -94
  87. package/src/components/CReorderableStackedList/index.js +2 -2
  88. package/src/components/CSelect/CSelect.vue +348 -343
  89. package/src/components/CSelect/index.js +2 -2
  90. package/src/components/CSmallTimeline/CSmallTimeline.vue +40 -40
  91. package/src/components/CSmallTimeline/index.js +2 -2
  92. package/src/components/CStackedList/CStackedList.vue +132 -132
  93. package/src/components/CStackedList/index.js +2 -2
  94. package/src/components/CStats/CStats.vue +111 -111
  95. package/src/components/CStats/index.js +2 -2
  96. package/src/components/CSwitch/CSwitch.vue +140 -140
  97. package/src/components/CSwitch/index.js +2 -2
  98. package/src/components/CTable/CTable.vue +536 -536
  99. package/src/components/CTable/index.js +2 -2
  100. package/src/components/CTabs/CTabs.vue +111 -111
  101. package/src/components/CTabs/index.js +2 -2
  102. package/src/components/CTag/CTag.vue +36 -36
  103. package/src/components/CTag/index.js +2 -2
  104. package/src/components/CTextarea/CTextarea.vue +95 -95
  105. package/src/components/CTextarea/index.js +2 -2
  106. package/src/components/CTimeline/CTimeline.vue +237 -237
  107. package/src/components/CTimeline/index.js +2 -2
  108. package/src/components/CUpload/CUpload.vue +231 -231
  109. package/src/components/CUpload/index.js +2 -2
  110. package/src/components/index.js +48 -48
  111. package/src/icons.js +285 -285
  112. package/src/main.js +22 -22
  113. package/src/stories/CAlerts.stories.js +37 -37
  114. package/src/stories/CAnchorTabs.stories.js +29 -29
  115. package/src/stories/CAnchorTag.stories.js +36 -36
  116. package/src/stories/CAvatar.stories.js +38 -38
  117. package/src/stories/CAvatarGroup.stories.js +100 -100
  118. package/src/stories/CBasicTable.stories.js +316 -316
  119. package/src/stories/CBreadcrumbs.stories.js +24 -24
  120. package/src/stories/CButton.stories.js +46 -46
  121. package/src/stories/CButtonGroup.stories.js +33 -33
  122. package/src/stories/CButtonIcon.stories.js +27 -27
  123. package/src/stories/CButtonLink.stories.js +24 -24
  124. package/src/stories/CButtonSelect.stories.js +32 -32
  125. package/src/stories/CButtonWithDropdown.stories.js +41 -41
  126. package/src/stories/CCalendar.stories.js +16 -16
  127. package/src/stories/CCard.stories.js +30 -30
  128. package/src/stories/CCheckbox.stories.js +29 -29
  129. package/src/stories/CCollapsibleSection.stories.js +28 -28
  130. package/src/stories/CColorDots.stories.js +28 -28
  131. package/src/stories/CConfirmActionModal.stories.js +59 -59
  132. package/src/stories/CDatepicker.stories.js +30 -30
  133. package/src/stories/CDualSelect.stories.js +29 -29
  134. package/src/stories/CEditor.stories.js +30 -30
  135. package/src/stories/CFormSectionHeading.stories.js +34 -34
  136. package/src/stories/CGroupedSelect.stories.js +69 -69
  137. package/src/stories/CIcon.stories.js +26 -26
  138. package/src/stories/CIconDropdown.stories.js +39 -39
  139. package/src/stories/CInput.stories.js +36 -36
  140. package/src/stories/CInputAddon.stories.js +37 -37
  141. package/src/stories/CInputEmail.stories.js +27 -27
  142. package/src/stories/CModalHeading.stories.js +25 -25
  143. package/src/stories/CModuleHelpLinks.stories.js +25 -25
  144. package/src/stories/CMultiselect.stories.js +97 -97
  145. package/src/stories/CMultiselectr.stories.js +23 -23
  146. package/src/stories/CPageHeading.stories.js +32 -32
  147. package/src/stories/CPagination.stories.js +30 -30
  148. package/src/stories/CPhoneNumber.stories.js +29 -29
  149. package/src/stories/CRadio.stories.js +36 -36
  150. package/src/stories/CRangeSlider.stories.js +23 -23
  151. package/src/stories/CReorderableStackedList.stories.js +23 -23
  152. package/src/stories/CSelect.stories.js +50 -50
  153. package/src/stories/CSmallTimeline.stories.js +26 -26
  154. package/src/stories/CStackedList.stories.js +37 -37
  155. package/src/stories/CStats.stories.js +33 -33
  156. package/src/stories/CSwitch.stories.js +28 -28
  157. package/src/stories/CTable.stories.js +77 -77
  158. package/src/stories/CTabs.stories.js +33 -33
  159. package/src/stories/CTag.stories.js +23 -23
  160. package/src/stories/CTextarea.stories.js +32 -32
  161. package/src/stories/CTimeline.stories.js +26 -26
  162. package/src/stories/CUpload.stories.js +36 -36
  163. package/src/stories/Introduction.stories.mdx +207 -207
  164. package/src/stories/Page.vue +88 -88
  165. package/src/stories/assets/code-brackets.svg +0 -0
  166. package/src/stories/assets/colors.svg +0 -0
  167. package/src/stories/assets/comments.svg +0 -0
  168. package/src/stories/assets/direction.svg +0 -0
  169. package/src/stories/assets/flow.svg +0 -0
  170. package/src/stories/assets/plugin.svg +0 -0
  171. package/src/stories/assets/repo.svg +0 -0
  172. package/src/stories/assets/stackalt.svg +0 -0
  173. package/src/stories/header.css +26 -26
  174. package/src/stories/page.css +69 -69
  175. package/src/stories/utils.css +17 -17
package/package.json CHANGED
@@ -1,81 +1,81 @@
1
- {
2
- "name": "classcard-ui",
3
- "version": "0.2.705",
4
- "main": "dist/classcard-ui.umd.min.js",
5
- "scripts": {
6
- "serve": "vue-cli-service serve",
7
- "build": "vue-cli-service build",
8
- "build-bundle": "vue-cli-service build --target lib --name classcard-ui src/main.js",
9
- "lint": "vue-cli-service lint",
10
- "storybook": "start-storybook -p 6006",
11
- "publish-to-npm": "npm version patch && git push && npm run build-bundle && npm publish",
12
- "build-storybook": "build-storybook"
13
- },
14
- "files": [
15
- "dist/*",
16
- "src/*"
17
- ],
18
- "dependencies": {
19
- "@shopify/draggable": "^1.0.0-beta.8",
20
- "@storybook/addon-postcss": "^2.0.0",
21
- "@tailwindcss/forms": "^0.2.1",
22
- "core-js": "^3.18.0",
23
- "dayjs": "^1.10.7",
24
- "filestack-js": "^3.25.0",
25
- "focus-trap-vue": "^1.1.1",
26
- "gridjs-selection": "^3.4.0",
27
- "gridjs-vue": "^3.4.0",
28
- "lodash-es": "^4.17.21",
29
- "v-calendar": "^2.3.2",
30
- "v-scroll-lock": "^1.3.1",
31
- "vue": "^2.6.14",
32
- "vue-good-table": "^2.21.8",
33
- "vue-multiselect": "^2.1.6",
34
- "vue-quill-editor": "^3.0.6",
35
- "vue-select": "^3.13.0",
36
- "vue-table-draggable": "^1.0.1",
37
- "vue-tailwind-picker": "^2.0.0",
38
- "vue-tel-input": "^4.4.2"
39
- },
40
- "devDependencies": {
41
- "@babel/core": "^7.15.5",
42
- "@storybook/addon-actions": "^6.5.10",
43
- "@storybook/addon-essentials": "^6.5.10",
44
- "@storybook/addon-links": "^6.5.10",
45
- "@storybook/vue": "^6.5.10",
46
- "@tailwindcss/postcss7-compat": "^2.2.14",
47
- "@types/lodash-es": "^4.17.5",
48
- "@vue/cli-plugin-babel": "^4.5.13",
49
- "@vue/cli-plugin-eslint": "^4.5.13",
50
- "@vue/cli-service": "^4.5.13",
51
- "autoprefixer": "^9.8.6",
52
- "babel-eslint": "^10.1.0",
53
- "babel-loader": "^8.2.2",
54
- "eslint": "^6.7.2",
55
- "eslint-plugin-vue": "^6.2.2",
56
- "postcss": "^7.0.36",
57
- "prettier": "^2.5.1",
58
- "prettier-plugin-tailwindcss": "^0.1.6",
59
- "tailwindcss": "npm:@tailwindcss/postcss7-compat@^2.2.14",
60
- "vue-template-compiler": "^2.6.14"
61
- },
62
- "eslintConfig": {
63
- "root": true,
64
- "env": {
65
- "node": true
66
- },
67
- "extends": [
68
- "plugin:vue/essential",
69
- "eslint:recommended"
70
- ],
71
- "parserOptions": {
72
- "parser": "babel-eslint"
73
- },
74
- "rules": {}
75
- },
76
- "browserslist": [
77
- "> 1%",
78
- "last 2 versions",
79
- "not dead"
80
- ]
81
- }
1
+ {
2
+ "name": "classcard-ui",
3
+ "version": "0.2.708",
4
+ "main": "dist/classcard-ui.umd.min.js",
5
+ "scripts": {
6
+ "serve": "vue-cli-service serve",
7
+ "build": "vue-cli-service build",
8
+ "build-bundle": "vue-cli-service build --target lib --name classcard-ui src/main.js",
9
+ "lint": "vue-cli-service lint",
10
+ "storybook": "start-storybook -p 6006",
11
+ "publish-to-npm": "npm version patch && git push && npm run build-bundle && npm publish",
12
+ "build-storybook": "build-storybook"
13
+ },
14
+ "files": [
15
+ "dist/*",
16
+ "src/*"
17
+ ],
18
+ "dependencies": {
19
+ "@shopify/draggable": "^1.0.0-beta.8",
20
+ "@storybook/addon-postcss": "^2.0.0",
21
+ "@tailwindcss/forms": "^0.2.1",
22
+ "core-js": "^3.18.0",
23
+ "dayjs": "^1.10.7",
24
+ "filestack-js": "^3.25.0",
25
+ "focus-trap-vue": "^1.1.1",
26
+ "gridjs-selection": "^3.4.0",
27
+ "gridjs-vue": "^3.4.0",
28
+ "lodash-es": "^4.17.21",
29
+ "v-calendar": "^2.3.2",
30
+ "v-scroll-lock": "^1.3.1",
31
+ "vue": "^2.6.14",
32
+ "vue-good-table": "^2.21.8",
33
+ "vue-multiselect": "^2.1.6",
34
+ "vue-quill-editor": "^3.0.6",
35
+ "vue-select": "^3.13.0",
36
+ "vue-table-draggable": "^1.0.1",
37
+ "vue-tailwind-picker": "^2.0.0",
38
+ "vue-tel-input": "^4.4.2"
39
+ },
40
+ "devDependencies": {
41
+ "@babel/core": "^7.15.5",
42
+ "@storybook/addon-actions": "^6.5.10",
43
+ "@storybook/addon-essentials": "^6.5.10",
44
+ "@storybook/addon-links": "^6.5.10",
45
+ "@storybook/vue": "^6.5.10",
46
+ "@tailwindcss/postcss7-compat": "^2.2.14",
47
+ "@types/lodash-es": "^4.17.5",
48
+ "@vue/cli-plugin-babel": "^4.5.13",
49
+ "@vue/cli-plugin-eslint": "^4.5.13",
50
+ "@vue/cli-service": "^4.5.13",
51
+ "autoprefixer": "^9.8.6",
52
+ "babel-eslint": "^10.1.0",
53
+ "babel-loader": "^8.2.2",
54
+ "eslint": "^6.7.2",
55
+ "eslint-plugin-vue": "^6.2.2",
56
+ "postcss": "^7.0.36",
57
+ "prettier": "^2.5.1",
58
+ "prettier-plugin-tailwindcss": "^0.1.6",
59
+ "tailwindcss": "npm:@tailwindcss/postcss7-compat@^2.2.14",
60
+ "vue-template-compiler": "^2.6.14"
61
+ },
62
+ "eslintConfig": {
63
+ "root": true,
64
+ "env": {
65
+ "node": true
66
+ },
67
+ "extends": [
68
+ "plugin:vue/essential",
69
+ "eslint:recommended"
70
+ ],
71
+ "parserOptions": {
72
+ "parser": "babel-eslint"
73
+ },
74
+ "rules": {}
75
+ },
76
+ "browserslist": [
77
+ "> 1%",
78
+ "last 2 versions",
79
+ "not dead"
80
+ ]
81
+ }
package/src/App.vue CHANGED
@@ -1,16 +1,16 @@
1
- <template>
2
- <div id="app">
3
-
4
- </div>
5
- </template>
6
-
7
- <script>
8
-
9
- export default {
10
- name: 'App'
11
- }
12
- </script>
13
-
14
- <style>
15
-
16
- </style>
1
+ <template>
2
+ <div id="app">
3
+
4
+ </div>
5
+ </template>
6
+
7
+ <script>
8
+
9
+ export default {
10
+ name: 'App'
11
+ }
12
+ </script>
13
+
14
+ <style>
15
+
16
+ </style>
@@ -1,70 +1,70 @@
1
- <template>
2
- <div :class=" type == 'withAccentBorder' ? `bg-${color}-50 border-l-4 border-${color}-400 p-4` : `rounded-md bg-${color}-50 p-4`">
3
- <div class="flex">
4
- <div class="flex-shrink-0" v-if="icon">
5
- <c-icon :type="icon.type" :name="icon.name" :class="`h-5 w-5 text-${color}-700`"></c-icon>
6
- </div>
7
- <div class="ml-3" v-if="type == 'withAccentBorder'">
8
- <p :class="`text-sm text-${color}-700`">
9
- <a href="#" :class="`font-medium underline text-${color}-700 hover:text-${color}-600`">
10
- {{linkLabel}}
11
- </a>
12
- {{label}}
13
- </p>
14
- </div>
15
- <div v-else class="ml-3">
16
- <h3 :class="`text-sm font-medium text-${color}-800`">
17
- {{label}}
18
- </h3>
19
- <div :class="`mt-2 text-sm text-${color}-700`" v-if="description">
20
- <p>
21
- {{description}}
22
- </p>
23
- </div>
24
- <div class="mt-4" v-if="type == 'withActions'">
25
- <div class="-mx-2 -my-1.5 flex">
26
- <button :class="`bg-${color}-50 px-2 py-1.5 rounded-md text-sm font-medium text-${color}-800 hover:bg-${color}-100 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-offset-${color}-50 focus:ring-${color}-600`">
27
- {{actions.label}}
28
- </button>
29
- </div>
30
- </div>
31
- </div>
32
- </div>
33
- </div>
34
-
35
- </template>
36
- <script>
37
- import CIcon from "../CIcon/CIcon.vue";
38
- export default {
39
- name: "CAlerts",
40
- components: {
41
- CIcon,
42
- },
43
- props: {
44
- label: {
45
- type: String,
46
- },
47
- icon: {
48
- type: Object,
49
- },
50
- classes:{
51
- type:String
52
- },
53
- color:{
54
- type:String
55
- },
56
- type:{
57
- type:String
58
- },
59
- description:{
60
- type:String
61
- },
62
- actions:{
63
- type:Object
64
- },
65
- linkLabel:{
66
- type:String
67
- }
68
- },
69
- };
70
- </script>
1
+ <template>
2
+ <div :class=" type == 'withAccentBorder' ? `bg-${color}-50 border-l-4 border-${color}-400 p-4` : `rounded-md bg-${color}-50 p-4`">
3
+ <div class="flex">
4
+ <div class="flex-shrink-0" v-if="icon">
5
+ <c-icon :type="icon.type" :name="icon.name" :class="`h-5 w-5 text-${color}-700`"></c-icon>
6
+ </div>
7
+ <div class="ml-3" v-if="type == 'withAccentBorder'">
8
+ <p :class="`text-sm text-${color}-700`">
9
+ <a href="#" :class="`font-medium underline text-${color}-700 hover:text-${color}-600`">
10
+ {{linkLabel}}
11
+ </a>
12
+ {{label}}
13
+ </p>
14
+ </div>
15
+ <div v-else class="ml-3">
16
+ <h3 :class="`text-sm font-medium text-${color}-800`">
17
+ {{label}}
18
+ </h3>
19
+ <div :class="`mt-2 text-sm text-${color}-700`" v-if="description">
20
+ <p>
21
+ {{description}}
22
+ </p>
23
+ </div>
24
+ <div class="mt-4" v-if="type == 'withActions'">
25
+ <div class="-mx-2 -my-1.5 flex">
26
+ <button :class="`bg-${color}-50 px-2 py-1.5 rounded-md text-sm font-medium text-${color}-800 hover:bg-${color}-100 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-offset-${color}-50 focus:ring-${color}-600`">
27
+ {{actions.label}}
28
+ </button>
29
+ </div>
30
+ </div>
31
+ </div>
32
+ </div>
33
+ </div>
34
+
35
+ </template>
36
+ <script>
37
+ import CIcon from "../CIcon/CIcon.vue";
38
+ export default {
39
+ name: "CAlerts",
40
+ components: {
41
+ CIcon,
42
+ },
43
+ props: {
44
+ label: {
45
+ type: String,
46
+ },
47
+ icon: {
48
+ type: Object,
49
+ },
50
+ classes:{
51
+ type:String
52
+ },
53
+ color:{
54
+ type:String
55
+ },
56
+ type:{
57
+ type:String
58
+ },
59
+ description:{
60
+ type:String
61
+ },
62
+ actions:{
63
+ type:Object
64
+ },
65
+ linkLabel:{
66
+ type:String
67
+ }
68
+ },
69
+ };
70
+ </script>
@@ -1,3 +1,3 @@
1
- import CAlerts from './CAlerts.vue'
2
-
1
+ import CAlerts from './CAlerts.vue'
2
+
3
3
  export default CAlerts
@@ -1,96 +1,96 @@
1
- <template>
2
- <div>
3
- <div class="sm:hidden">
4
- <label for="tabs" class="sr-only">Select a tab</label>
5
- <select
6
- class="block w-full rounded-md border-gray-300 focus:border-indigo-500 focus:ring-indigo-500"
7
- >
8
- <option>My Account</option>
9
-
10
- <option>Company</option>
11
-
12
- <option selected>Team Members</option>
13
-
14
- <option>Billing</option>
15
- </select>
16
- </div>
17
- <div class="hidden sm:block">
18
- <div class="border-b border-gray-200">
19
- <nav :class="classes" class="-mb-px flex space-x-8" aria-label="Tabs">
20
- <a
21
- v-for="tab in tabs"
22
- :key="tab.name"
23
- @click="switchTab(tab.name)"
24
- :class="
25
- activeTab == tab.name
26
- ? 'border-indigo-600 text-indigo-700 hover:text-indigo-800'
27
- : 'border-transparent text-gray-500 hover:border-gray-300 hover:text-gray-700'
28
- "
29
- class="group inline-flex cursor-pointer items-center whitespace-nowrap border-b-2 py-4 px-1 text-sm font-medium"
30
- >
31
- <c-icon
32
- v-if="tab.icon"
33
- :name="tab.icon"
34
- class="-ml-0.5 mr-2 h-5 w-5"
35
- type="solid"
36
- :class="
37
- activeTab == tab.name
38
- ? 'text-indigo-700 group-hover:text-indigo-800'
39
- : 'text-gray-400 group-hover:text-gray-500 '
40
- "
41
- ></c-icon>
42
- <span
43
- :class="
44
- activeTab == tab.name
45
- ? 'font-semibold text-indigo-700'
46
- : 'text-gray-500 hover:text-gray-700'
47
- "
48
- >
49
- {{ tab.text }}
50
- </span>
51
- </a>
52
- </nav>
53
- </div>
54
- <slot></slot>
55
- </div>
56
- </div>
57
- </template>
58
- <script>
59
- import CIcon from "../CIcon/CIcon.vue";
60
- export default {
61
- name: "CAnchorTabs",
62
- components: { CIcon },
63
- props: {
64
- tabs: {
65
- type: Array,
66
- required: true,
67
- },
68
- initialTab: {
69
- type: String,
70
- },
71
- classes: {
72
- type: String,
73
- },
74
- },
75
- data() {
76
- return {
77
- activeTab: this.initialTab,
78
- };
79
- },
80
- methods: {
81
- switchTab(name) {
82
- this.activeTab = name;
83
- this.$emit("tabSwitched", name);
84
- },
85
- switchTabForMobile(index) {
86
- var selectedOption = this.tabs[index];
87
- this.activeTab = selectedOption.text;
88
- },
89
- },
90
- watch: {
91
- initialTab() {
92
- this.activeTab = this.value;
93
- },
94
- },
95
- };
96
- </script>
1
+ <template>
2
+ <div>
3
+ <div class="sm:hidden">
4
+ <label for="tabs" class="sr-only">Select a tab</label>
5
+ <select
6
+ class="block w-full rounded-md border-gray-300 focus:border-indigo-500 focus:ring-indigo-500"
7
+ >
8
+ <option>My Account</option>
9
+
10
+ <option>Company</option>
11
+
12
+ <option selected>Team Members</option>
13
+
14
+ <option>Billing</option>
15
+ </select>
16
+ </div>
17
+ <div class="hidden sm:block">
18
+ <div class="border-b border-gray-200">
19
+ <nav :class="classes" class="-mb-px flex space-x-8" aria-label="Tabs">
20
+ <a
21
+ v-for="tab in tabs"
22
+ :key="tab.name"
23
+ @click="switchTab(tab.name)"
24
+ :class="
25
+ activeTab == tab.name
26
+ ? 'border-indigo-600 text-indigo-700 hover:text-indigo-800'
27
+ : 'border-transparent text-gray-500 hover:border-gray-300 hover:text-gray-700'
28
+ "
29
+ class="group inline-flex cursor-pointer items-center whitespace-nowrap border-b-2 py-4 px-1 text-sm font-medium"
30
+ >
31
+ <c-icon
32
+ v-if="tab.icon"
33
+ :name="tab.icon"
34
+ class="-ml-0.5 mr-2 h-5 w-5"
35
+ type="solid"
36
+ :class="
37
+ activeTab == tab.name
38
+ ? 'text-indigo-700 group-hover:text-indigo-800'
39
+ : 'text-gray-400 group-hover:text-gray-500 '
40
+ "
41
+ ></c-icon>
42
+ <span
43
+ :class="
44
+ activeTab == tab.name
45
+ ? 'font-semibold text-indigo-700'
46
+ : 'text-gray-500 hover:text-gray-700'
47
+ "
48
+ >
49
+ {{ tab.text }}
50
+ </span>
51
+ </a>
52
+ </nav>
53
+ </div>
54
+ <slot></slot>
55
+ </div>
56
+ </div>
57
+ </template>
58
+ <script>
59
+ import CIcon from "../CIcon/CIcon.vue";
60
+ export default {
61
+ name: "CAnchorTabs",
62
+ components: { CIcon },
63
+ props: {
64
+ tabs: {
65
+ type: Array,
66
+ required: true,
67
+ },
68
+ initialTab: {
69
+ type: String,
70
+ },
71
+ classes: {
72
+ type: String,
73
+ },
74
+ },
75
+ data() {
76
+ return {
77
+ activeTab: this.initialTab,
78
+ };
79
+ },
80
+ methods: {
81
+ switchTab(name) {
82
+ this.activeTab = name;
83
+ this.$emit("tabSwitched", name);
84
+ },
85
+ switchTabForMobile(index) {
86
+ var selectedOption = this.tabs[index];
87
+ this.activeTab = selectedOption.text;
88
+ },
89
+ },
90
+ watch: {
91
+ initialTab() {
92
+ this.activeTab = this.value;
93
+ },
94
+ },
95
+ };
96
+ </script>
@@ -1,3 +1,3 @@
1
- import CAnchorTabs from './CAnchorTabs.vue'
2
-
1
+ import CAnchorTabs from './CAnchorTabs.vue'
2
+
3
3
  export default CAnchorTabs
@@ -1,62 +1,62 @@
1
- <template>
2
- <a
3
- :href="href"
4
- :class="`${classes} ${textColor}`"
5
- class="flex cursor-pointer text-sm hover:underline"
6
- @click="(event) => clickAction(event,action)"
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
- </a>
15
- </template>
16
- <script>
17
- import CIcon from "../CIcon/CIcon.vue";
18
- export default {
19
- name: "CAnchorTag",
20
- components: {
21
- CIcon,
22
- },
23
- props: {
24
- href: {
25
- type: String,
26
- },
27
- label: {
28
- type: String,
29
- },
30
- icon: {
31
- type: Object,
32
- },
33
- classes: {
34
- type: String,
35
- },
36
- action: {
37
- type: Function,
38
- },
39
- color: {
40
- type: String,
41
- default: "blue",
42
- },
43
- },
44
- methods: {
45
- clickAction(event,action) {
46
- if(action) {
47
- event.preventDefault();
48
- action();
49
- }
50
- }
51
- },
52
- computed: {
53
- textColor() {
54
- if (this.color === "red") {
55
- return "text-red-800";
56
- } else {
57
- return "text-indigo-800";
58
- }
59
- },
60
- },
61
- };
62
- </script>
1
+ <template>
2
+ <a
3
+ :href="href"
4
+ :class="`${classes} ${textColor}`"
5
+ class="flex cursor-pointer text-sm hover:underline"
6
+ @click="(event) => clickAction(event,action)"
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
+ </a>
15
+ </template>
16
+ <script>
17
+ import CIcon from "../CIcon/CIcon.vue";
18
+ export default {
19
+ name: "CAnchorTag",
20
+ components: {
21
+ CIcon,
22
+ },
23
+ props: {
24
+ href: {
25
+ type: String,
26
+ },
27
+ label: {
28
+ type: String,
29
+ },
30
+ icon: {
31
+ type: Object,
32
+ },
33
+ classes: {
34
+ type: String,
35
+ },
36
+ action: {
37
+ type: Function,
38
+ },
39
+ color: {
40
+ type: String,
41
+ default: "blue",
42
+ },
43
+ },
44
+ methods: {
45
+ clickAction(event,action) {
46
+ if(action) {
47
+ event.preventDefault();
48
+ action();
49
+ }
50
+ }
51
+ },
52
+ computed: {
53
+ textColor() {
54
+ if (this.color === "red") {
55
+ return "text-red-800";
56
+ } else {
57
+ return "text-indigo-800";
58
+ }
59
+ },
60
+ },
61
+ };
62
+ </script>
@@ -1,3 +1,3 @@
1
- import CAnchorTag from './CAnchorTag.vue'
2
-
1
+ import CAnchorTag from './CAnchorTag.vue'
2
+
3
3
  export default CAnchorTag