@carbon/vue 2.34.0-canary.0 → 2.35.0

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 (132) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/README.md +25 -18
  3. package/dist/carbon-vue.common.js +2649 -2113
  4. package/dist/carbon-vue.common.js.map +1 -1
  5. package/dist/carbon-vue.umd.js +2649 -2113
  6. package/dist/carbon-vue.umd.js.map +1 -1
  7. package/dist/carbon-vue.umd.min.js +3 -3
  8. package/dist/carbon-vue.umd.min.js.map +1 -1
  9. package/package.json +6 -6
  10. package/src/components/cv-accordion/_cv-accordion-item-skeleton.vue +1 -1
  11. package/src/components/cv-accordion/cv-accordion-item.vue +5 -4
  12. package/src/components/cv-accordion/cv-accordion-skeleton.vue +18 -2
  13. package/src/components/cv-accordion/cv-accordion.vue +19 -2
  14. package/src/components/cv-breadcrumb/_cv-breadcrumb-item-skeleton.vue +1 -1
  15. package/src/components/cv-breadcrumb/cv-breadcrumb-item.vue +1 -1
  16. package/src/components/cv-breadcrumb/cv-breadcrumb-skeleton.vue +1 -1
  17. package/src/components/cv-breadcrumb/cv-breadcrumb.vue +1 -1
  18. package/src/components/cv-button/button-mixin.js +12 -7
  19. package/src/components/cv-button/cv-button-set.vue +5 -2
  20. package/src/components/cv-button/cv-button.vue +1 -1
  21. package/src/components/cv-button/cv-icon-button.vue +2 -2
  22. package/src/components/cv-checkbox/cv-checkbox-skeleton.vue +1 -1
  23. package/src/components/cv-checkbox/cv-checkbox.vue +1 -4
  24. package/src/components/cv-code-snippet/_cv-code-snippet-inline.vue +13 -8
  25. package/src/components/cv-code-snippet/_cv-code-snippet-multiline.vue +13 -8
  26. package/src/components/cv-code-snippet/_cv-code-snippet-oneline.vue +10 -12
  27. package/src/components/cv-code-snippet/cv-code-snippet-skeleton.vue +1 -1
  28. package/src/components/cv-code-snippet/cv-code-snippet.vue +17 -1
  29. package/src/components/cv-combo-box/cv-combo-box.vue +2 -5
  30. package/src/components/cv-content-switcher/cv-content-switcher-button.vue +1 -2
  31. package/src/components/cv-content-switcher/cv-content-switcher.vue +20 -3
  32. package/src/components/cv-data-table/_cv-data-table-row-inner.vue +1 -1
  33. package/src/components/cv-data-table/cv-data-table-action.vue +1 -1
  34. package/src/components/cv-data-table/cv-data-table-heading.vue +1 -2
  35. package/src/components/cv-data-table/cv-data-table-row.vue +1 -2
  36. package/src/components/cv-data-table/cv-data-table.vue +2 -4
  37. package/src/components/cv-date-picker/cv-date-picker.vue +36 -14
  38. package/src/components/cv-date-picker/plugins/appendToPlugin.js +52 -0
  39. package/src/components/cv-date-picker/plugins/fixEventsPlugin.js +75 -0
  40. package/src/components/cv-date-picker/plugins/monthSelectPlugin.js +66 -0
  41. package/src/components/cv-date-picker/plugins/rangePlugin.js +45 -0
  42. package/src/components/cv-dropdown/cv-dropdown-item.vue +1 -1
  43. package/src/components/cv-dropdown/cv-dropdown-skeleton.vue +1 -1
  44. package/src/components/cv-dropdown/cv-dropdown.vue +9 -7
  45. package/src/components/cv-feedback-button/_cv-feedback-button.vue +1 -1
  46. package/src/components/cv-file-uploader/cv-file-uploader-skeleton.vue +1 -1
  47. package/src/components/cv-file-uploader/cv-file-uploader.vue +1 -3
  48. package/src/components/cv-form/cv-form-group.vue +1 -1
  49. package/src/components/cv-form/cv-form-item.vue +1 -1
  50. package/src/components/cv-form/cv-form.vue +1 -1
  51. package/src/components/cv-grid/cv-column.vue +77 -0
  52. package/src/components/cv-grid/cv-grid.vue +32 -0
  53. package/src/components/cv-grid/cv-row.vue +30 -0
  54. package/src/components/cv-grid/index.js +5 -0
  55. package/src/components/cv-inline-loading/cv-inline-loading.vue +1 -1
  56. package/src/components/cv-inline-notification/cv-inline-notification.vue +2 -3
  57. package/src/components/cv-link/cv-link.vue +2 -3
  58. package/src/components/cv-list/cv-list-item.vue +1 -1
  59. package/src/components/cv-list/cv-list.vue +1 -1
  60. package/src/components/cv-loading/cv-loading.vue +6 -2
  61. package/src/components/cv-modal/cv-modal.vue +29 -2
  62. package/src/components/cv-multi-select/cv-multi-select.vue +8 -12
  63. package/src/components/cv-number-input/cv-number-input-skeleton.vue +1 -1
  64. package/src/components/cv-number-input/cv-number-input.vue +2 -5
  65. package/src/components/cv-overflow-menu/cv-overflow-menu-item.vue +1 -1
  66. package/src/components/cv-overflow-menu/cv-overflow-menu.vue +1 -3
  67. package/src/components/cv-pagination/cv-pagination.vue +1 -1
  68. package/src/components/cv-progress/cv-progress-step.vue +1 -1
  69. package/src/components/cv-progress/cv-progress.vue +1 -1
  70. package/src/components/cv-radio-button/cv-radio-button.vue +1 -4
  71. package/src/components/cv-radio-button/cv-radio-group.vue +1 -1
  72. package/src/components/cv-search/cv-search.vue +2 -5
  73. package/src/components/cv-select/cv-select-optgroup.vue +1 -1
  74. package/src/components/cv-select/cv-select-option.vue +1 -1
  75. package/src/components/cv-select/cv-select.vue +2 -5
  76. package/src/components/cv-skeleton-text/cv-skeleton-text.vue +1 -1
  77. package/src/components/cv-slider/cv-slider-skeleton.vue +1 -1
  78. package/src/components/cv-slider/cv-slider.vue +2 -5
  79. package/src/components/cv-structured-list/_cv-structured-list-item-selectable.vue +1 -4
  80. package/src/components/cv-structured-list/_cv-structured-list-item-standard.vue +1 -1
  81. package/src/components/cv-structured-list/cv-structured-list-data.vue +1 -1
  82. package/src/components/cv-structured-list/cv-structured-list-heading.vue +1 -1
  83. package/src/components/cv-structured-list/cv-structured-list.vue +1 -1
  84. package/src/components/cv-tabs/cv-tab.vue +1 -1
  85. package/src/components/cv-tabs/cv-tabs-skeleton.vue +1 -1
  86. package/src/components/cv-tabs/cv-tabs.vue +1 -1
  87. package/src/components/cv-tag/cv-tag-skeleton.vue +1 -1
  88. package/src/components/cv-tag/cv-tag.vue +1 -2
  89. package/src/components/cv-text-area/cv-text-area.vue +2 -5
  90. package/src/components/cv-text-input/cv-text-input.vue +2 -6
  91. package/src/components/cv-tile/_cv-tile-clickable.vue +2 -4
  92. package/src/components/cv-tile/_cv-tile-expandable.vue +1 -2
  93. package/src/components/cv-tile/_cv-tile-selectable.vue +1 -4
  94. package/src/components/cv-tile/cv-tile.vue +2 -4
  95. package/src/components/cv-time-picker/cv-time-picker.vue +3 -6
  96. package/src/components/cv-toast-notification/cv-toast-notification.vue +3 -4
  97. package/src/components/cv-toggle/cv-toggle-skeleton.vue +1 -2
  98. package/src/components/cv-toggle/cv-toggle.vue +1 -4
  99. package/src/components/cv-toolbar/cv-toolbar-divider.vue +1 -1
  100. package/src/components/cv-toolbar/cv-toolbar-option.vue +1 -1
  101. package/src/components/cv-toolbar/cv-toolbar-search.vue +1 -1
  102. package/src/components/cv-toolbar/cv-toolbar-title.vue +1 -1
  103. package/src/components/cv-toolbar/cv-toolbar.vue +1 -1
  104. package/src/components/cv-tooltip/cv-definition-tooltip.vue +1 -2
  105. package/src/components/cv-tooltip/cv-interactive-tooltip.vue +1 -2
  106. package/src/components/cv-tooltip/cv-tooltip.vue +1 -1
  107. package/src/components/cv-ui-shell/_cv-side-nav-footer.vue +1 -1
  108. package/src/components/cv-ui-shell/_cv-side-nav-link-text.vue +1 -1
  109. package/src/components/cv-ui-shell/cv-content.vue +1 -1
  110. package/src/components/cv-ui-shell/cv-header-global-action.vue +1 -2
  111. package/src/components/cv-ui-shell/cv-header-menu-button.vue +1 -2
  112. package/src/components/cv-ui-shell/cv-header-menu-item.vue +2 -3
  113. package/src/components/cv-ui-shell/cv-header-menu.vue +1 -1
  114. package/src/components/cv-ui-shell/cv-header-name.vue +2 -3
  115. package/src/components/cv-ui-shell/cv-header-nav.vue +1 -1
  116. package/src/components/cv-ui-shell/cv-header-panel.vue +2 -2
  117. package/src/components/cv-ui-shell/cv-header-side-nav-items.vue +1 -1
  118. package/src/components/cv-ui-shell/cv-header.vue +1 -1
  119. package/src/components/cv-ui-shell/cv-side-nav-icon.vue +1 -1
  120. package/src/components/cv-ui-shell/cv-side-nav-items.vue +1 -1
  121. package/src/components/cv-ui-shell/cv-side-nav-link.vue +2 -3
  122. package/src/components/cv-ui-shell/cv-side-nav-menu-item.vue +2 -3
  123. package/src/components/cv-ui-shell/cv-side-nav-menu.vue +1 -1
  124. package/src/components/cv-ui-shell/cv-side-nav.vue +2 -2
  125. package/src/components/cv-ui-shell/cv-skip-to-content.vue +2 -3
  126. package/src/components/cv-ui-shell/cv-switcher-item-link.vue +2 -3
  127. package/src/components/cv-ui-shell/cv-switcher-item.vue +1 -1
  128. package/src/components/cv-ui-shell/cv-switcher.vue +1 -1
  129. package/src/directives/clickout.js +21 -9
  130. package/src/index.js +2 -0
  131. package/src/mixins/index.js +12 -0
  132. package/src/mixins/theme-mixin.js +14 -2
@@ -11,12 +11,11 @@
11
11
  </template>
12
12
 
13
13
  <script>
14
- import LinkMixin from '../../mixins/link-mixin';
15
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
14
+ import { linkMixin, carbonPrefixMixin } from '../../mixins';
16
15
 
17
16
  export default {
18
17
  name: 'CvLink',
19
- mixins: [LinkMixin, carbonPrefixMixin],
18
+ mixins: [linkMixin, carbonPrefixMixin],
20
19
  props: {
21
20
  inline: Boolean,
22
21
  },
@@ -5,7 +5,7 @@
5
5
  </template>
6
6
 
7
7
  <script>
8
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
8
+ import { carbonPrefixMixin } from '../../mixins';
9
9
  export default {
10
10
  name: 'CvListItem',
11
11
  mixins: [carbonPrefixMixin],
@@ -14,7 +14,7 @@
14
14
  </template>
15
15
 
16
16
  <script>
17
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
17
+ import { carbonPrefixMixin } from '../../mixins';
18
18
  export default {
19
19
  name: 'CvList',
20
20
  mixins: [carbonPrefixMixin],
@@ -10,8 +10,11 @@
10
10
  }"
11
11
  ref="loading"
12
12
  >
13
+ <label :class="`${carbonPrefix}--visually-hidden`">
14
+ {{ description }}
15
+ </label>
13
16
  <svg :class="`${carbonPrefix}--loading__svg`" viewBox="-75 -75 150 150">
14
- <title>Loading</title>
17
+ <title>{{ description }}</title>
15
18
  <circle v-if="small" :class="`${carbonPrefix}--loading__background`" cx="0" cy="0" :r="loadingRadius" />
16
19
  <circle :class="`${carbonPrefix}--loading__stroke`" cx="0" cy="0" :r="loadingRadius" />
17
20
  </svg>
@@ -21,7 +24,7 @@
21
24
 
22
25
  <script>
23
26
  import CvWrapper from '../cv-wrapper/_cv-wrapper';
24
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
27
+ import { carbonPrefixMixin } from '../../mixins';
25
28
 
26
29
  export default {
27
30
  name: 'CvLoading',
@@ -29,6 +32,7 @@ export default {
29
32
  components: { CvWrapper },
30
33
  props: {
31
34
  active: { type: Boolean, default: true },
35
+ description: { type: String, default: 'Loading' },
32
36
  overlay: Boolean,
33
37
  small: Boolean,
34
38
  },
@@ -18,6 +18,7 @@
18
18
  `${carbonPrefix}--modal-container`,
19
19
  { [`${carbonPrefix}--modal-container--${internalSize}`]: internalSize },
20
20
  ]"
21
+ v-bind="dialogAttrs"
21
22
  ref="modalDialog"
22
23
  >
23
24
  <div
@@ -81,9 +82,8 @@
81
82
 
82
83
  <script>
83
84
  import CvButton from '../cv-button/cv-button';
84
- import uidMixin from '../../mixins/uid-mixin';
85
+ import { uidMixin, carbonPrefixMixin } from '../../mixins';
85
86
  import Close16 from '@carbon/icons-vue/es/close/16';
86
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
87
87
 
88
88
  export default {
89
89
  name: 'CvModal',
@@ -93,6 +93,7 @@ export default {
93
93
  Close16,
94
94
  },
95
95
  props: {
96
+ alert: Boolean,
96
97
  closeAriaLabel: { type: String, default: 'Close modal' },
97
98
  kind: {
98
99
  type: String,
@@ -134,6 +135,20 @@ export default {
134
135
  },
135
136
  },
136
137
  computed: {
138
+ dialogAttrs() {
139
+ const passive = !(this.hasPrimary || this.hasSecondary);
140
+ const attrs = { role: 'dialog' };
141
+
142
+ if (this.alert) {
143
+ if (passive) {
144
+ attrs.role = 'alert';
145
+ } else {
146
+ attrs.role = 'alertdialog';
147
+ attrs['aria-describedBy'] = this.uid;
148
+ }
149
+ }
150
+ return attrs;
151
+ },
137
152
  primaryKind() {
138
153
  if (this.kind === 'danger') {
139
154
  return 'danger';
@@ -229,9 +244,16 @@ export default {
229
244
  //restore any previous scrollability
230
245
  document.body.classList.remove(`${this.carbonPrefix}--body--with-modal-open`);
231
246
 
247
+ if (this.dataVisible) {
248
+ this.$el.addEventListener('transitionend', this.afterHide, { once: true });
249
+ }
250
+
232
251
  this.dataVisible = false;
233
252
  this.$emit('modal-hidden');
234
253
  },
254
+ afterHide() {
255
+ this.$emit('after-modal-hidden');
256
+ },
235
257
  onPrimaryClick(ev) {
236
258
  this.$emit('primary-click');
237
259
  if (!this.$listeners['primary-click']) {
@@ -245,5 +267,10 @@ export default {
245
267
  }
246
268
  },
247
269
  },
270
+ beforeDestroy() {
271
+ if (this.dataVisible) {
272
+ this.$emit('after-modal-hidden');
273
+ }
274
+ },
248
275
  };
249
276
  </script>
@@ -18,20 +18,13 @@
18
18
  >{{ title }}</label
19
19
  >
20
20
 
21
- <div
22
- v-if="!inline && isHelper"
23
- :class="[`${carbonPrefix}--form__helper-text`, { [`${carbonPrefix}--form__helper-text--disabled`]: disabled }]"
24
- >
25
- <slot name="helper-text">{{ helperText }}</slot>
26
- </div>
27
-
28
21
  <div
29
22
  role="listbox"
30
23
  tabindex="-1"
31
24
  :class="[
32
25
  `${carbonPrefix}--multi-select ${carbonPrefix}--list-box`,
33
26
  {
34
- [`${carbonPrefix}--list-box--light`]: theme === 'light',
27
+ [`${carbonPrefix}--list-box--light`]: isLight,
35
28
  [`${carbonPrefix}--list-box--expanded`]: open,
36
29
  [`${carbonPrefix}--multi-select--invalid`]: isInvalid,
37
30
  [`${carbonPrefix}--multi-select--disabled`]: disabled,
@@ -147,19 +140,22 @@
147
140
  <div v-if="isInvalid && !inline" :class="`${carbonPrefix}--form-requirement`">
148
141
  <slot name="invalid-message">{{ invalidMessage }}</slot>
149
142
  </div>
143
+ <div
144
+ v-if="!inline && !isInvalid && isHelper"
145
+ :class="[`${carbonPrefix}--form__helper-text`, { [`${carbonPrefix}--form__helper-text--disabled`]: disabled }]"
146
+ >
147
+ <slot name="helper-text">{{ helperText }}</slot>
148
+ </div>
150
149
  </div>
151
150
  </template>
152
151
 
153
152
  <script>
154
- import themeMixin from '../../mixins/theme-mixin';
153
+ import { themeMixin, uidMixin, carbonPrefixMixin, methodsMixin } from '../../mixins';
155
154
  import WarningFilled16 from '@carbon/icons-vue/es/warning--filled/16';
156
155
  import ChevronDown16 from '@carbon/icons-vue/es/chevron--down/16';
157
156
  import Close16 from '@carbon/icons-vue/es/close/16';
158
- import uidMixin from '../../mixins/uid-mixin';
159
157
  import CvCheckbox from '../cv-checkbox/cv-checkbox';
160
158
  import CvTag from '../cv-tag/cv-tag';
161
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
162
- import methodsMixin from '../../mixins/methods-mixin';
163
159
 
164
160
  const TOP_AFTER_REOPEN = 0;
165
161
  const TOP = 1;
@@ -6,7 +6,7 @@
6
6
  </template>
7
7
 
8
8
  <script>
9
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
9
+ import { carbonPrefixMixin } from '../../mixins';
10
10
  export default {
11
11
  name: 'CvNumberInputSkeleton',
12
12
  mixins: [carbonPrefixMixin],
@@ -5,7 +5,7 @@
5
5
  :class="[
6
6
  `${carbonPrefix}--number`,
7
7
  {
8
- [`${carbonPrefix}--number--light`]: theme === 'light',
8
+ [`${carbonPrefix}--number--light`]: isLight,
9
9
  [`${carbonPrefix}--number--helpertext`]: isHelper,
10
10
  [`cv-number-input`]: !formItem,
11
11
  [`${carbonPrefix}--number--mobile`]: mobile,
@@ -83,14 +83,11 @@
83
83
  </template>
84
84
 
85
85
  <script>
86
- import uidMixin from '../../mixins/uid-mixin';
87
- import themeMixin from '../../mixins/theme-mixin';
86
+ import { uidMixin, themeMixin, carbonPrefixMixin, methodsMixin } from '../../mixins';
88
87
  import CaretDownGlyph from '@carbon/icons-vue/es/caret--down/index';
89
88
  import CaretUpGlyph from '@carbon/icons-vue/es/caret--up/index';
90
89
  import WarningFilled16 from '@carbon/icons-vue/es/warning--filled/16';
91
90
  import CvWrapper from '../cv-wrapper/_cv-wrapper';
92
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
93
- import methodsMixin from '../../mixins/methods-mixin';
94
91
 
95
92
  export default {
96
93
  name: 'CvNumberInput',
@@ -25,7 +25,7 @@
25
25
  </template>
26
26
 
27
27
  <script>
28
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
28
+ import { carbonPrefixMixin } from '../../mixins';
29
29
  export default {
30
30
  name: 'CvOverflowMenuItem',
31
31
  mixins: [carbonPrefixMixin],
@@ -67,9 +67,7 @@
67
67
 
68
68
  <script>
69
69
  import OverflowMenuVertical16 from '@carbon/icons-vue/es/overflow-menu--vertical/16';
70
- import uidMixin from '../../mixins/uid-mixin';
71
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
72
- import methodsMixin from '../../mixins/methods-mixin';
70
+ import { uidMixin, carbonPrefixMixin, methodsMixin } from '../../mixins';
73
71
 
74
72
  export default {
75
73
  name: 'CvOverflowMenu',
@@ -83,7 +83,7 @@ import CvSelect from '../cv-select/cv-select';
83
83
  import CvSelectOption from '../cv-select/cv-select-option';
84
84
  import CaretLeft16 from '@carbon/icons-vue/es/caret--left/16';
85
85
  import CaretRight16 from '@carbon/icons-vue/es/caret--right/16';
86
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
86
+ import { carbonPrefixMixin } from '../../mixins';
87
87
 
88
88
  const newPageValue = (page, lastPage) => {
89
89
  let result = 1;
@@ -43,7 +43,7 @@
43
43
  <script>
44
44
  import CheckmarkOutline16 from '@carbon/icons-vue/es/checkmark--outline/16';
45
45
  import Warning16 from '@carbon/icons-vue/es/warning/16';
46
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
46
+ import { carbonPrefixMixin } from '../../mixins';
47
47
 
48
48
  const states = ['incomplete', 'current', 'complete'];
49
49
 
@@ -18,7 +18,7 @@
18
18
 
19
19
  <script>
20
20
  import CvProgressStep from './cv-progress-step';
21
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
21
+ import { carbonPrefixMixin } from '../../mixins';
22
22
 
23
23
  export default {
24
24
  name: 'CvProgress',
@@ -24,10 +24,7 @@
24
24
  </template>
25
25
 
26
26
  <script>
27
- import uidMixin from '../../mixins/uid-mixin';
28
- import radioMixin from '../../mixins/radio-mixin';
29
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
30
- import methodsMixin from '../../mixins/methods-mixin';
27
+ import { uidMixin, radioMixin, carbonPrefixMixin, methodsMixin } from '../../mixins';
31
28
 
32
29
  export default {
33
30
  name: 'CvRadioButton',
@@ -9,7 +9,7 @@
9
9
  </template>
10
10
 
11
11
  <script>
12
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
12
+ import { carbonPrefixMixin } from '../../mixins';
13
13
  export default {
14
14
  name: 'CvRadioGroup',
15
15
  mixins: [carbonPrefixMixin],
@@ -4,7 +4,7 @@
4
4
  :class="[
5
5
  `${carbonPrefix}--search`,
6
6
  {
7
- [`${carbonPrefix}--search--${theme}`]: theme.length,
7
+ [`${carbonPrefix}--search--light`]: isLight,
8
8
  [`${carbonPrefix}--search--${internalSize}`]: internalSize,
9
9
  [`${carbonPrefix}--toolbar-search`]: isToolbarKind,
10
10
  [`${carbonPrefix}--toolbar-search--active`]: toolbarActive,
@@ -55,14 +55,11 @@
55
55
  </template>
56
56
 
57
57
  <script>
58
- import uidMixin from '../../mixins/uid-mixin';
59
- import themeMixin from '../../mixins/theme-mixin';
58
+ import { uidMixin, themeMixin, carbonPrefixMixin, methodsMixin } from '../../mixins';
60
59
  import Search16 from '@carbon/icons-vue/es/search/16';
61
60
  import Search20 from '@carbon/icons-vue/es/search/20';
62
61
  import Close16 from '@carbon/icons-vue/es/close/16';
63
62
  import CvWrapper from '../cv-wrapper/_cv-wrapper';
64
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
65
- import methodsMixin from '../../mixins/methods-mixin';
66
63
 
67
64
  export default {
68
65
  name: 'CvSearch',
@@ -5,7 +5,7 @@
5
5
  </template>
6
6
 
7
7
  <script>
8
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
8
+ import { carbonPrefixMixin } from '../../mixins';
9
9
  export default {
10
10
  name: 'CvSelectOptgroup',
11
11
  mixins: [carbonPrefixMixin],
@@ -5,7 +5,7 @@
5
5
  </template>
6
6
 
7
7
  <script>
8
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
8
+ import { carbonPrefixMixin } from '../../mixins';
9
9
  export default {
10
10
  name: 'CvSelectOption',
11
11
  mixins: [carbonPrefixMixin],
@@ -7,7 +7,7 @@
7
7
  {
8
8
  'cv-select': !formItem,
9
9
  [`${carbonPrefix}--select--inline`]: inline,
10
- [`${carbonPrefix}--select--light`]: theme === 'light',
10
+ [`${carbonPrefix}--select--light`]: isLight,
11
11
  [`${carbonPrefix}--select--invalid`]: isInvalid,
12
12
  [`${carbonPrefix}--select--disabled`]: $attrs.disabled,
13
13
  },
@@ -56,13 +56,10 @@
56
56
  </template>
57
57
 
58
58
  <script>
59
- import uidMixin from '../../mixins/uid-mixin';
60
- import themeMixin from '../../mixins/theme-mixin';
59
+ import { uidMixin, themeMixin, carbonPrefixMixin, methodsMixin } from '../../mixins';
61
60
  import CvWrapper from '../cv-wrapper/_cv-wrapper';
62
61
  import ChevronDownGlyph from '@carbon/icons-vue/es/chevron--down';
63
62
  import WarningFilled16 from '@carbon/icons-vue/es/warning--filled/16';
64
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
65
- import methodsMixin from '../../mixins/methods-mixin';
66
63
 
67
64
  export default {
68
65
  name: 'CvSelect',
@@ -10,7 +10,7 @@
10
10
  </template>
11
11
 
12
12
  <script>
13
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
13
+ import { carbonPrefixMixin } from '../../mixins';
14
14
  export default {
15
15
  name: 'CvSkeletonText',
16
16
  mixins: [carbonPrefixMixin],
@@ -14,7 +14,7 @@
14
14
  </template>
15
15
 
16
16
  <script>
17
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
17
+ import { carbonPrefixMixin } from '../../mixins';
18
18
  export default {
19
19
  name: 'CvSliderSkeleton',
20
20
  mixins: [carbonPrefixMixin],
@@ -41,7 +41,7 @@
41
41
  type="number"
42
42
  :class="[
43
43
  `${carbonPrefix}--text-input ${carbonPrefix}--slider-text-input`,
44
- { [`${carbonPrefix}--text-input--light`]: theme === 'light' },
44
+ { [`${carbonPrefix}--text-input--light`]: isLight },
45
45
  ]"
46
46
  :placeholder="min"
47
47
  v-model="internalValue"
@@ -56,10 +56,7 @@
56
56
  </template>
57
57
 
58
58
  <script>
59
- import uidMixin from '../../mixins/uid-mixin';
60
- import themeMixin from '../../mixins/theme-mixin';
61
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
62
- import methodsMixin from '../../mixins/methods-mixin';
59
+ import { uidMixin, themeMixin, carbonPrefixMixin, methodsMixin } from '../../mixins';
63
60
 
64
61
  export default {
65
62
  name: 'CvSlider',
@@ -26,11 +26,8 @@
26
26
  </template>
27
27
 
28
28
  <script>
29
- import uidMixin from '../../mixins/uid-mixin';
30
- import radioMixin from '../../mixins/radio-mixin';
29
+ import { uidMixin, radioMixin, carbonPrefixMixin } from '../../mixins';
31
30
  import CheckmarkFilled16 from '@carbon/icons-vue/es/checkmark--filled/16';
32
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
33
-
34
31
  export default {
35
32
  name: 'CvStructuredListItemSelectable',
36
33
  components: { CheckmarkFilled16 },
@@ -5,7 +5,7 @@
5
5
  </template>
6
6
 
7
7
  <script>
8
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
8
+ import { carbonPrefixMixin } from '../../mixins';
9
9
  export default {
10
10
  name: 'CvStructuredListItemStandard',
11
11
  mixins: [carbonPrefixMixin],
@@ -12,7 +12,7 @@
12
12
  </template>
13
13
 
14
14
  <script>
15
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
15
+ import { carbonPrefixMixin } from '../../mixins';
16
16
  export default {
17
17
  name: 'CvStructuredListData',
18
18
  mixins: [carbonPrefixMixin],
@@ -5,7 +5,7 @@
5
5
  </template>
6
6
 
7
7
  <script>
8
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
8
+ import { carbonPrefixMixin } from '../../mixins';
9
9
  export default {
10
10
  name: 'CvStructuredListHeading',
11
11
  mixins: [carbonPrefixMixin],
@@ -22,7 +22,7 @@
22
22
  </template>
23
23
 
24
24
  <script>
25
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
25
+ import { carbonPrefixMixin } from '../../mixins';
26
26
  export default {
27
27
  name: 'CvStructuredList',
28
28
  mixins: [carbonPrefixMixin],
@@ -14,7 +14,7 @@
14
14
  </template>
15
15
 
16
16
  <script>
17
- import uidMixin from '../../mixins/uid-mixin';
17
+ import { uidMixin } from '../../mixins';
18
18
 
19
19
  export default {
20
20
  name: 'CvTab',
@@ -24,7 +24,7 @@
24
24
  </template>
25
25
 
26
26
  <script>
27
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
27
+ import { carbonPrefixMixin } from '../../mixins';
28
28
  export default {
29
29
  name: 'CvTabsSkeleton',
30
30
  mixins: [carbonPrefixMixin],
@@ -61,7 +61,7 @@
61
61
 
62
62
  <script>
63
63
  import ChevronDownGlyph from '@carbon/icons-vue/es/chevron--down';
64
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
64
+ import { carbonPrefixMixin } from '../../mixins';
65
65
 
66
66
  export default {
67
67
  name: 'CvTabs',
@@ -3,7 +3,7 @@
3
3
  </template>
4
4
 
5
5
  <script>
6
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
6
+ import { carbonPrefixMixin } from '../../mixins';
7
7
  export default {
8
8
  name: 'CvTagSkeleton',
9
9
  mixins: [carbonPrefixMixin],
@@ -8,7 +8,6 @@
8
8
  [`${carbonPrefix}--tag--disabled`]: disabled,
9
9
  },
10
10
  ]"
11
- :tabindex="!disabled ? 0 : undefined"
12
11
  role="listitem"
13
12
  :title="title"
14
13
  @keydown.enter.stop.prevent="$emit('remove')"
@@ -30,7 +29,7 @@
30
29
 
31
30
  <script>
32
31
  import Close16 from '@carbon/icons-vue/es/close/16';
33
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
32
+ import { carbonPrefixMixin } from '../../mixins';
34
33
 
35
34
  const tagKinds = [
36
35
  'red',
@@ -17,7 +17,7 @@
17
17
  :class="[
18
18
  `${carbonPrefix}--text-area`,
19
19
  {
20
- [`${carbonPrefix}--text-area--light`]: theme === 'light',
20
+ [`${carbonPrefix}--text-area--light`]: isLight,
21
21
  [`${carbonPrefix}--text-area--invalid`]: isInvalid,
22
22
  },
23
23
  ]"
@@ -43,11 +43,8 @@
43
43
  </template>
44
44
 
45
45
  <script>
46
- import uidMixin from '../../mixins/uid-mixin';
47
- import themeMixin from '../../mixins/theme-mixin';
48
- import methodsMixin from '../../mixins/methods-mixin';
46
+ import { uidMixin, themeMixin, methodsMixin, carbonPrefixMixin } from '../../mixins';
49
47
  import WarningFilled16 from '@carbon/icons-vue/es/warning--filled/16';
50
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
51
48
 
52
49
  export default {
53
50
  name: 'CvTextArea',
@@ -17,7 +17,7 @@
17
17
  :class="[
18
18
  `${carbonPrefix}--text-input`,
19
19
  {
20
- [`${carbonPrefix}--text-input--light`]: theme === 'light',
20
+ [`${carbonPrefix}--text-input--light`]: isLight,
21
21
  [`${carbonPrefix}--text-input--invalid`]: isInvalid,
22
22
  },
23
23
  ]"
@@ -61,13 +61,10 @@
61
61
  </template>
62
62
 
63
63
  <script>
64
- import uidMixin from '../../mixins/uid-mixin';
65
- import themeMixin from '../../mixins/theme-mixin';
66
- import methodsMixin from '../../mixins/methods-mixin';
64
+ import { uidMixin, themeMixin, methodsMixin, carbonPrefixMixin } from '../../mixins';
67
65
  import WarningFilled16 from '@carbon/icons-vue/es/warning--filled/16';
68
66
  import View16 from '@carbon/icons-vue/es/view/16';
69
67
  import ViewOff16 from '@carbon/icons-vue/es/view--off/16';
70
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
71
68
 
72
69
  export default {
73
70
  name: 'CvTextInput',
@@ -81,7 +78,6 @@ export default {
81
78
  passwordHideLabel: { type: String, default: 'Hide password' },
82
79
  passwordShowLabel: { type: String, default: 'Show password' },
83
80
  passwordVisible: Boolean,
84
- theme: String,
85
81
  type: String,
86
82
  value: String,
87
83
  },
@@ -13,12 +13,10 @@
13
13
  </template>
14
14
 
15
15
  <script>
16
- import LinkMixin from '../../mixins/link-mixin';
17
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
18
- import methodsMixin from '../../mixins/methods-mixin';
16
+ import { linkMixin, carbonPrefixMixin, methodsMixin } from '../../mixins';
19
17
 
20
18
  export default {
21
19
  name: 'CvTileClickable',
22
- mixins: [LinkMixin, carbonPrefixMixin, methodsMixin({ target: ['blur', 'focus'] })],
20
+ mixins: [linkMixin, carbonPrefixMixin, methodsMixin({ target: ['blur', 'focus'] })],
23
21
  };
24
22
  </script>
@@ -37,8 +37,7 @@
37
37
 
38
38
  <script>
39
39
  import ChevronDown16 from '@carbon/icons-vue/es/chevron--down/16';
40
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
41
- import methodsMixin from '../../mixins/methods-mixin';
40
+ import { carbonPrefixMixin, methodsMixin } from '../../mixins';
42
41
 
43
42
  export default {
44
43
  name: 'CvTileExpandable',
@@ -34,11 +34,8 @@
34
34
  </template>
35
35
 
36
36
  <script>
37
- import uidMixin from '../../mixins/uid-mixin';
38
- import checkMixin from '../../mixins/check-mixin';
37
+ import { uidMixin, checkMixin, carbonPrefixMixin, methodsMixin } from '../../mixins';
39
38
  import CheckmarkFilled16 from '@carbon/icons-vue/es/checkmark--filled/16';
40
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
41
- import methodsMixin from '../../mixins/methods-mixin';
42
39
 
43
40
  export default {
44
41
  name: 'CvTileSelectable',
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <component
3
3
  :is="tagType"
4
- :class="[`cv-tile ${carbonPrefix}--tile`, { [`${carbonPrefix}--tile--light`]: theme === 'light' }]"
4
+ :class="[`cv-tile ${carbonPrefix}--tile`, { [`${carbonPrefix}--tile--light`]: isLight }]"
5
5
  :checked="selected"
6
6
  :expanded="expanded"
7
7
  v-bind="$attrs"
@@ -19,13 +19,11 @@
19
19
  </template>
20
20
 
21
21
  <script>
22
- import themeMixin from '../../mixins/theme-mixin';
22
+ import { themeMixin, carbonPrefixMixin, methodsMixin } from '../../mixins';
23
23
  import CvTileClickable from './_cv-tile-clickable';
24
24
  import CvTileExpandable from './_cv-tile-expandable';
25
25
  import CvTileSelectable from './_cv-tile-selectable';
26
26
  import CvTileStandard from './_cv-tile-standard';
27
- import carbonPrefixMixin from '../../mixins/carbon-prefix-mixin';
28
- import methodsMixin from '../../mixins/methods-mixin';
29
27
 
30
28
  export default {
31
29
  name: 'CvTile',