tide-design-system 2.2.3 → 2.2.5
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.
- package/.storybook/main.ts +3 -1
- package/.storybook/preview.ts +4 -3
- package/README.md +35 -5
- package/dist/css/grid-layout.css +10 -49
- package/dist/css/utilities-lg.css +4 -11
- package/dist/css/utilities-md.css +4 -12
- package/dist/css/utilities-sm.css +4 -11
- package/dist/css/utilities-xl.css +4 -11
- package/dist/css/utilities.css +4 -11
- package/dist/style.css +1 -1
- package/dist/tide-design-system.cjs +2 -2
- package/dist/tide-design-system.esm.d.ts +31 -36
- package/dist/tide-design-system.esm.js +1397 -1407
- package/dist/utilities/storybook.ts +12 -0
- package/package.json +1 -1
- package/src/assets/css/grid-layout.css +10 -49
- package/src/assets/css/utilities-lg.css +4 -11
- package/src/assets/css/utilities-md.css +4 -12
- package/src/assets/css/utilities-sm.css +4 -11
- package/src/assets/css/utilities-xl.css +4 -11
- package/src/assets/css/utilities.css +4 -11
- package/src/components/TideAlert.vue +27 -33
- package/src/components/TideBadge.vue +4 -1
- package/src/components/TideBadgeTrustedPartner.vue +8 -2
- package/src/components/TideBadgeVerifiedVehicle.vue +7 -2
- package/src/components/TideButton.vue +1 -1
- package/src/components/TideButtonIcon.vue +1 -1
- package/src/components/TideButtonPagination.vue +1 -1
- package/src/components/TideCarousel.vue +90 -55
- package/src/components/TideChipAction.vue +1 -1
- package/src/components/TideLink.vue +10 -1
- package/src/components/TideModal.vue +1 -1
- package/src/components/TideSeoLinks.vue +1 -1
- package/src/docs/development.md +125 -18
- package/src/docs/figma.md +43 -0
- package/src/docs/integration-full.md +80 -0
- package/src/docs/integration-partial.md +42 -0
- package/src/docs/migration.md +65 -0
- package/src/docs/storybook.md +29 -24
- package/src/docs/style-guide.md +22 -0
- package/src/docs/workflows.md +20 -0
- package/src/stories/FoundationsBorder.stories.ts +1 -1
- package/src/stories/FoundationsColor.stories.ts +1 -1
- package/src/stories/FoundationsGap.stories.ts +1 -1
- package/src/stories/FoundationsGrid.stories.ts +2 -185
- package/src/stories/FoundationsMargin.stories.ts +1 -1
- package/src/stories/FoundationsPadding.stories.ts +1 -1
- package/src/stories/FoundationsShadow.stories.ts +1 -1
- package/src/stories/FoundationsTransparency.stories.ts +1 -1
- package/src/stories/FoundationsTypography.stories.ts +1 -1
- package/src/stories/TideAccordionItem.stories.ts +1 -1
- package/src/stories/TideAlert.stories.ts +47 -3
- package/src/stories/TideBadge.stories.ts +1 -1
- package/src/stories/TideBadgeTrustedPartner.stories.ts +1 -1
- package/src/stories/TideBadgeVerifiedVehicle.stories.ts +1 -1
- package/src/stories/TideBreadCrumbs.stories.ts +1 -1
- package/src/stories/TideButton.stories.ts +1 -1
- package/src/stories/TideButtonIcon.stories.ts +1 -1
- package/src/stories/TideButtonPagination.stories.ts +1 -1
- package/src/stories/TideButtonSegmented.stories.ts +1 -1
- package/src/stories/TideCard.stories.ts +1 -1
- package/src/stories/TideCarousel.stories.ts +52 -10
- package/src/stories/TideChipAction.stories.ts +1 -1
- package/src/stories/TideChipFilter.stories.ts +1 -1
- package/src/stories/TideChipInput.stories.ts +1 -1
- package/src/stories/TideColumns.stories.ts +1 -1
- package/src/stories/TideDivider.stories.ts +1 -1
- package/src/stories/TideIcon.stories.ts +1 -1
- package/src/stories/TideImage.stories.ts +1 -1
- package/src/stories/TideImageBackground.stories.ts +1 -1
- package/src/stories/TideIndicator.stories.ts +1 -1
- package/src/stories/TideInputCheckbox.stories.ts +1 -1
- package/src/stories/TideInputRadio.stories.ts +1 -1
- package/src/stories/TideInputSelect.stories.ts +1 -1
- package/src/stories/TideInputText.stories.ts +1 -1
- package/src/stories/TideInputTextarea.stories.ts +1 -1
- package/src/stories/TideLink.stories.ts +8 -2
- package/src/stories/TideModal.stories.ts +1 -1
- package/src/stories/TidePagination.stories.ts +1 -1
- package/src/stories/TidePopover.stories.ts +1 -1
- package/src/stories/TideSeoLinks.stories.ts +1 -1
- package/src/stories/TideSwitch.stories.ts +1 -1
- package/src/types/Storybook.ts +0 -32
- package/src/types/Styles.ts +8 -232
- package/src/utilities/storybook.ts +12 -0
- package/src/docs/integration.md +0 -79
|
@@ -76,6 +76,16 @@ export const click = {
|
|
|
76
76
|
},
|
|
77
77
|
};
|
|
78
78
|
|
|
79
|
+
export const close = {
|
|
80
|
+
control: 'text',
|
|
81
|
+
description: 'JS code or function to execute on close event',
|
|
82
|
+
isEmit: true,
|
|
83
|
+
table: {
|
|
84
|
+
defaultValue: { summary: 'None' },
|
|
85
|
+
type: { summary: '() => void' },
|
|
86
|
+
},
|
|
87
|
+
};
|
|
88
|
+
|
|
79
89
|
export const dataTrack = {
|
|
80
90
|
control: 'text',
|
|
81
91
|
description: 'Data attribute for external tracking',
|
|
@@ -91,6 +101,8 @@ export const disabledArgType = {
|
|
|
91
101
|
},
|
|
92
102
|
};
|
|
93
103
|
|
|
104
|
+
export const isProduction = process.env.NODE_ENV === 'production';
|
|
105
|
+
|
|
94
106
|
export const doSomething = () => {
|
|
95
107
|
alert('Did something.');
|
|
96
108
|
};
|
package/package.json
CHANGED
|
@@ -4,38 +4,27 @@
|
|
|
4
4
|
}
|
|
5
5
|
|
|
6
6
|
.tide-grid-layout {
|
|
7
|
-
--tide-max-content-width:
|
|
8
|
-
--tide-column-
|
|
9
|
-
--tide-
|
|
10
|
-
--tide-gap-count: calc(var(--tide-column-count) - 1);
|
|
11
|
-
--tide-gap-width: var(--tide-spacing-1);
|
|
12
|
-
--tide-gutter-width: var(--tide-spacing-1);
|
|
13
|
-
--tide-gutter-width-offset: calc(var(--tide-gutter-width) - var(--tide-gap-width));
|
|
7
|
+
--tide-max-content-width: var(--tide-1232px);
|
|
8
|
+
--tide-column-width: minmax(0, var(--tide-max-content-width));
|
|
9
|
+
--tide-gutter-width: var(--tide-spacing-1);
|
|
14
10
|
|
|
15
11
|
display: grid;
|
|
16
12
|
grid-auto-rows: min-content;
|
|
17
13
|
grid-template-columns:
|
|
18
|
-
minmax(var(--tide-gutter-width
|
|
19
|
-
|
|
20
|
-
minmax(var(--tide-gutter-width
|
|
21
|
-
gap: var(--tide-spacing-1) var(--tide-gap-width);
|
|
14
|
+
minmax(var(--tide-gutter-width), 1fr)
|
|
15
|
+
var(--tide-column-width)
|
|
16
|
+
minmax(var(--tide-gutter-width), 1fr);
|
|
22
17
|
}
|
|
23
18
|
|
|
24
19
|
@media (min-width: 768px) {
|
|
25
|
-
.tide-grid-layout {
|
|
26
|
-
--tide-gutter-width: var(--tide-spacing-2);
|
|
27
|
-
}
|
|
20
|
+
.tide-grid-layout {--tide-gutter-width: var(--tide-spacing-2);}
|
|
28
21
|
}
|
|
29
22
|
|
|
30
|
-
@media (min-width:
|
|
31
|
-
.tide-grid-layout {
|
|
32
|
-
--tide-gap-width: var(--tide-spacing-2);
|
|
33
|
-
}
|
|
23
|
+
@media (min-width: 1232px) {
|
|
24
|
+
.tide-grid-layout {--tide-gutter-width: var(--tide-spacing-4);}
|
|
34
25
|
}
|
|
35
26
|
|
|
36
|
-
.tide-grid-xl {
|
|
37
|
-
--tide-max-content-width: var(--tide-1920px);
|
|
38
|
-
}
|
|
27
|
+
.tide-grid-xl {--tide-max-content-width: var(--tide-1920px);}
|
|
39
28
|
|
|
40
29
|
.tide-grid-layout > *,
|
|
41
30
|
.tide-grid-item {
|
|
@@ -43,31 +32,3 @@
|
|
|
43
32
|
}
|
|
44
33
|
|
|
45
34
|
.tide-fluid {grid-column: 1 / -1;}
|
|
46
|
-
|
|
47
|
-
.tide-start-0 {grid-column-start: 1;}
|
|
48
|
-
.tide-start-1 {grid-column-start: 2;}
|
|
49
|
-
.tide-start-2 {grid-column-start: 3;}
|
|
50
|
-
.tide-start-3 {grid-column-start: 4;}
|
|
51
|
-
.tide-start-4 {grid-column-start: 5;}
|
|
52
|
-
.tide-start-5 {grid-column-start: 6;}
|
|
53
|
-
.tide-start-6 {grid-column-start: 7;}
|
|
54
|
-
.tide-start-7 {grid-column-start: 8;}
|
|
55
|
-
.tide-start-8 {grid-column-start: 9;}
|
|
56
|
-
.tide-start-9 {grid-column-start: 10;}
|
|
57
|
-
.tide-start-10 {grid-column-start: 11;}
|
|
58
|
-
.tide-start-11 {grid-column-start: 12;}
|
|
59
|
-
.tide-start-12 {grid-column-start: 13;}
|
|
60
|
-
|
|
61
|
-
.tide-end-1 {grid-column-end: 3;}
|
|
62
|
-
.tide-end-2 {grid-column-end: 4;}
|
|
63
|
-
.tide-end-3 {grid-column-end: 5;}
|
|
64
|
-
.tide-end-4 {grid-column-end: 6;}
|
|
65
|
-
.tide-end-5 {grid-column-end: 7;}
|
|
66
|
-
.tide-end-6 {grid-column-end: 8;}
|
|
67
|
-
.tide-end-7 {grid-column-end: 9;}
|
|
68
|
-
.tide-end-8 {grid-column-end: 10;}
|
|
69
|
-
.tide-end-9 {grid-column-end: 11;}
|
|
70
|
-
.tide-end-10 {grid-column-end: 12;}
|
|
71
|
-
.tide-end-11 {grid-column-end: 13;}
|
|
72
|
-
.tide-end-12 {grid-column-end: 14;}
|
|
73
|
-
.tide-end-13 {grid-column-end: 15;}
|
|
@@ -370,17 +370,10 @@
|
|
|
370
370
|
.lg-tide-text-transform-none {text-transform: none;}
|
|
371
371
|
.lg-tide-text-transform-upper {text-transform: uppercase;}
|
|
372
372
|
|
|
373
|
-
.lg-tide-underline
|
|
374
|
-
.lg-tide-underline:
|
|
375
|
-
.lg-tide-underline-hover:hover
|
|
376
|
-
|
|
377
|
-
}
|
|
378
|
-
|
|
379
|
-
.lg-tide-underline-none,
|
|
380
|
-
.lg-tide-underline-none:hover,
|
|
381
|
-
.lg-tide-underline-hover {
|
|
382
|
-
text-decoration: none;
|
|
383
|
-
}
|
|
373
|
+
.lg-tide-underline {text-decoration: underline;}
|
|
374
|
+
.lg-tide-underline-none {text-decoration: none;}
|
|
375
|
+
.lg-tide-underline-hover:hover {text-decoration: underline;}
|
|
376
|
+
.lg-tide-underline-hover-none:hover {text-decoration: none;}
|
|
384
377
|
|
|
385
378
|
.lg-tide-visible {visibility: visible;}
|
|
386
379
|
.lg-tide-visible-none {visibility: hidden;}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
/* Medium breakpoint */
|
|
2
|
-
@media (min-width: 992px) {}
|
|
3
2
|
@media (min-width: 992px) {
|
|
4
3
|
/* Reusable CSS Utility Library */
|
|
5
4
|
/* Position */
|
|
@@ -372,17 +371,10 @@
|
|
|
372
371
|
.md-tide-text-transform-none {text-transform: none;}
|
|
373
372
|
.md-tide-text-transform-upper {text-transform: uppercase;}
|
|
374
373
|
|
|
375
|
-
.md-tide-underline
|
|
376
|
-
.md-tide-underline:
|
|
377
|
-
.md-tide-underline-hover:hover
|
|
378
|
-
|
|
379
|
-
}
|
|
380
|
-
|
|
381
|
-
.md-tide-underline-none,
|
|
382
|
-
.md-tide-underline-none:hover,
|
|
383
|
-
.md-tide-underline-hover {
|
|
384
|
-
text-decoration: none;
|
|
385
|
-
}
|
|
374
|
+
.md-tide-underline {text-decoration: underline;}
|
|
375
|
+
.md-tide-underline-none {text-decoration: none;}
|
|
376
|
+
.md-tide-underline-hover:hover {text-decoration: underline;}
|
|
377
|
+
.md-tide-underline-hover-none:hover {text-decoration: none;}
|
|
386
378
|
|
|
387
379
|
.md-tide-visible {visibility: visible;}
|
|
388
380
|
.md-tide-visible-none {visibility: hidden;}
|
|
@@ -370,17 +370,10 @@
|
|
|
370
370
|
.sm-tide-text-transform-none {text-transform: none;}
|
|
371
371
|
.sm-tide-text-transform-upper {text-transform: uppercase;}
|
|
372
372
|
|
|
373
|
-
.sm-tide-underline
|
|
374
|
-
.sm-tide-underline:
|
|
375
|
-
.sm-tide-underline-hover:hover
|
|
376
|
-
|
|
377
|
-
}
|
|
378
|
-
|
|
379
|
-
.sm-tide-underline-none,
|
|
380
|
-
.sm-tide-underline-none:hover,
|
|
381
|
-
.sm-tide-underline-hover {
|
|
382
|
-
text-decoration: none;
|
|
383
|
-
}
|
|
373
|
+
.sm-tide-underline {text-decoration: underline;}
|
|
374
|
+
.sm-tide-underline-none {text-decoration: none;}
|
|
375
|
+
.sm-tide-underline-hover:hover {text-decoration: underline;}
|
|
376
|
+
.sm-tide-underline-hover-none:hover {text-decoration: none;}
|
|
384
377
|
|
|
385
378
|
.sm-tide-visible {visibility: visible;}
|
|
386
379
|
.sm-tide-visible-none {visibility: hidden;}
|
|
@@ -370,17 +370,10 @@
|
|
|
370
370
|
.lg-tide-text-transform-none {text-transform: none;}
|
|
371
371
|
.lg-tide-text-transform-upper {text-transform: uppercase;}
|
|
372
372
|
|
|
373
|
-
.
|
|
374
|
-
.
|
|
375
|
-
.
|
|
376
|
-
|
|
377
|
-
}
|
|
378
|
-
|
|
379
|
-
.lg-tide-underline-none,
|
|
380
|
-
.lg-tide-underline-none:hover,
|
|
381
|
-
.lg-tide-underline-hover {
|
|
382
|
-
text-decoration: none;
|
|
383
|
-
}
|
|
373
|
+
.xl-tide-underline {text-decoration: underline;}
|
|
374
|
+
.xl-tide-underline-none {text-decoration: none;}
|
|
375
|
+
.xl-tide-underline-hover:hover {text-decoration: underline;}
|
|
376
|
+
.xl-tide-underline-hover-none:hover {text-decoration: none;}
|
|
384
377
|
|
|
385
378
|
.lg-tide-visible {visibility: visible;}
|
|
386
379
|
.lg-tide-visible-none {visibility: hidden;}
|
|
@@ -369,17 +369,10 @@
|
|
|
369
369
|
.tide-text-transform-none {text-transform: none;}
|
|
370
370
|
.tide-text-transform-upper {text-transform: uppercase;}
|
|
371
371
|
|
|
372
|
-
.tide-underline
|
|
373
|
-
.tide-underline:
|
|
374
|
-
.tide-underline-hover:hover
|
|
375
|
-
|
|
376
|
-
}
|
|
377
|
-
|
|
378
|
-
.tide-underline-none,
|
|
379
|
-
.tide-underline-none:hover,
|
|
380
|
-
.tide-underline-hover {
|
|
381
|
-
text-decoration: none;
|
|
382
|
-
}
|
|
372
|
+
.tide-underline {text-decoration: underline;}
|
|
373
|
+
.tide-underline-none {text-decoration: none;}
|
|
374
|
+
.tide-underline-hover:hover {text-decoration: underline;}
|
|
375
|
+
.tide-underline-hover-none:hover {text-decoration: none;}
|
|
383
376
|
|
|
384
377
|
.tide-visible {visibility: visible;}
|
|
385
378
|
.tide-visible-none {visibility: hidden;}
|
|
@@ -1,49 +1,33 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
|
-
import { computed } from 'vue';
|
|
3
|
-
|
|
4
2
|
import TideButtonIcon from '@/components/TideButtonIcon.vue';
|
|
5
3
|
import TideIcon from '@/components/TideIcon.vue';
|
|
6
4
|
import { ALERT } from '@/types/Alert';
|
|
7
5
|
import { ICON } from '@/types/Icon';
|
|
8
6
|
import { PRIORITY } from '@/types/Priority';
|
|
7
|
+
import { SIZE } from '@/types/Size';
|
|
9
8
|
import { CSS } from '@/types/Styles';
|
|
10
9
|
|
|
11
10
|
import type { Alert } from '@/types/Alert';
|
|
12
|
-
import type { Icon } from '@/types/Icon';
|
|
13
11
|
|
|
14
12
|
type Props = {
|
|
15
13
|
heading?: string;
|
|
14
|
+
isDismissible?: boolean;
|
|
16
15
|
isToast?: boolean;
|
|
17
16
|
type?: Alert;
|
|
18
17
|
};
|
|
19
18
|
|
|
19
|
+
type Emits = {
|
|
20
|
+
(event: 'close'): void;
|
|
21
|
+
};
|
|
22
|
+
|
|
20
23
|
const props = withDefaults(defineProps<Props>(), {
|
|
21
24
|
heading: undefined,
|
|
25
|
+
isDismissible: true,
|
|
22
26
|
isToast: false,
|
|
23
27
|
type: ALERT.INFO,
|
|
24
28
|
});
|
|
25
29
|
|
|
26
|
-
const
|
|
27
|
-
let icon: Icon = ICON.INFO;
|
|
28
|
-
|
|
29
|
-
switch (props.type) {
|
|
30
|
-
case ALERT.ERROR:
|
|
31
|
-
icon = ICON.ERROR;
|
|
32
|
-
break;
|
|
33
|
-
default:
|
|
34
|
-
case ALERT.INFO:
|
|
35
|
-
icon = ICON.INFO;
|
|
36
|
-
break;
|
|
37
|
-
case ALERT.SUCCESS:
|
|
38
|
-
icon = ICON.CHECK;
|
|
39
|
-
break;
|
|
40
|
-
case ALERT.WARNING:
|
|
41
|
-
icon = ICON.WARNING;
|
|
42
|
-
break;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
return icon;
|
|
46
|
-
});
|
|
30
|
+
const emit = defineEmits<Emits>();
|
|
47
31
|
</script>
|
|
48
32
|
|
|
49
33
|
<template>
|
|
@@ -55,17 +39,21 @@
|
|
|
55
39
|
CSS.AXIS2.CENTER,
|
|
56
40
|
CSS.BORDER.RADIUS.HALF,
|
|
57
41
|
CSS.PADDING.FULL.ONE,
|
|
58
|
-
props.type === ALERT.ERROR
|
|
59
|
-
props.type === ALERT.INFO
|
|
60
|
-
props.type === ALERT.SUCCESS
|
|
61
|
-
|
|
62
|
-
|
|
42
|
+
!props.isToast && props.type === ALERT.ERROR ? [CSS.BG.GLOBAL.SURFACE.ERROR, CSS.BORDER.COLOR.GLOBAL.ERROR] : '',
|
|
43
|
+
!props.isToast && props.type === ALERT.INFO ? [CSS.BG.GLOBAL.SURFACE.INFO, CSS.BORDER.COLOR.GLOBAL.INFO] : '',
|
|
44
|
+
!props.isToast && props.type === ALERT.SUCCESS
|
|
45
|
+
? [CSS.BG.GLOBAL.SURFACE.SUCCESS, CSS.BORDER.COLOR.GLOBAL.SUCCESS]
|
|
46
|
+
: '',
|
|
47
|
+
!props.isToast && props.type === ALERT.WARNING
|
|
48
|
+
? [CSS.BG.GLOBAL.SURFACE.WARNING, CSS.BORDER.COLOR.GLOBAL.WARNING]
|
|
49
|
+
: '',
|
|
50
|
+
props.isToast ? [CSS.BG.SECONDARY, CSS.FONT.COLOR.SECONDARY, CSS.SHADOW.BOTTOM] : CSS.BORDER.LEFT.TWO,
|
|
63
51
|
]"
|
|
64
52
|
>
|
|
65
53
|
<div
|
|
66
54
|
:class="[
|
|
67
55
|
'tide-alert-icon',
|
|
68
|
-
CSS.PADDING.FULL.
|
|
56
|
+
CSS.PADDING.FULL.QUARTER,
|
|
69
57
|
CSS.BORDER.RADIUS.FULL,
|
|
70
58
|
CSS.FONT.COLOR.SURFACE.INVERSE,
|
|
71
59
|
props.type === ALERT.ERROR && CSS.BG.GLOBAL.PRIMARY.ERROR,
|
|
@@ -73,12 +61,16 @@
|
|
|
73
61
|
props.type === ALERT.SUCCESS && CSS.BG.GLOBAL.PRIMARY.SUCCESS,
|
|
74
62
|
props.type === ALERT.WARNING && CSS.BG.GLOBAL.PRIMARY.WARNING,
|
|
75
63
|
]"
|
|
64
|
+
v-if="!props.isToast"
|
|
76
65
|
>
|
|
77
|
-
<TideIcon
|
|
66
|
+
<TideIcon
|
|
67
|
+
:icon="ICON.INFORMATION"
|
|
68
|
+
:size="SIZE.SMALL"
|
|
69
|
+
/>
|
|
78
70
|
</div>
|
|
79
71
|
|
|
80
72
|
<div :class="['tide-alert-heading', CSS.DISPLAY.FLEX, CSS.AXIS2.CENTER]">
|
|
81
|
-
<h2 :class="[CSS.FONT.ROLE.LABEL_1_SEMIBOLD
|
|
73
|
+
<h2 :class="[CSS.FONT.ROLE.LABEL_1_SEMIBOLD]">
|
|
82
74
|
{{ props.heading }}
|
|
83
75
|
</h2>
|
|
84
76
|
</div>
|
|
@@ -87,10 +79,12 @@
|
|
|
87
79
|
:class="['tide-alert-close', CSS.AXIS2.CENTER, CSS.FONT.COLOR.SURFACE.DEFAULT]"
|
|
88
80
|
:icon="ICON.CLOSE"
|
|
89
81
|
:priority="PRIORITY.QUATERNARY"
|
|
82
|
+
@click="emit('close')"
|
|
90
83
|
aria-label="Close alert"
|
|
84
|
+
v-if="isDismissible"
|
|
91
85
|
/>
|
|
92
86
|
|
|
93
|
-
<div :class="['tide-alert-body', CSS.FONT.ROLE.LABEL_1, CSS.FONT.COLOR.SURFACE.VARIANT]">
|
|
87
|
+
<div :class="['tide-alert-body', CSS.FONT.ROLE.LABEL_1, !props.isToast && CSS.FONT.COLOR.SURFACE.VARIANT]">
|
|
94
88
|
<slot />
|
|
95
89
|
</div>
|
|
96
90
|
</div>
|
|
@@ -27,14 +27,17 @@
|
|
|
27
27
|
CSS.BORDER.RADIUS.QUARTER,
|
|
28
28
|
CSS.PADDING.Y.QUARTER,
|
|
29
29
|
CSS.PADDING.X.HALF,
|
|
30
|
+
CSS.ELLIPSIS,
|
|
30
31
|
CSS.FONT.ROLE.LABEL_2,
|
|
32
|
+
CSS.WHITESPACE_WRAP.OFF,
|
|
31
33
|
]"
|
|
32
34
|
>
|
|
33
35
|
<TideIcon
|
|
36
|
+
:class="[CSS.FLEX.SHRINK.OFF]"
|
|
34
37
|
:icon="props.iconLeading"
|
|
35
38
|
v-if="props.iconLeading"
|
|
36
39
|
/>
|
|
37
40
|
|
|
38
|
-
{{ props.label }}
|
|
41
|
+
<span :class="[CSS.ELLIPSIS]">{{ props.label }}</span>
|
|
39
42
|
</div>
|
|
40
43
|
</template>
|
|
@@ -25,11 +25,17 @@
|
|
|
25
25
|
CSS.GAP.QUARTER,
|
|
26
26
|
CSS.PADDING.Y.QUARTER,
|
|
27
27
|
CSS.PADDING.X.HALF,
|
|
28
|
+
CSS.ELLIPSIS,
|
|
28
29
|
CSS.FONT.ROLE.LABEL_2,
|
|
30
|
+
CSS.WHITESPACE_WRAP.OFF,
|
|
29
31
|
]"
|
|
30
32
|
>
|
|
31
|
-
<TideIcon
|
|
32
|
-
|
|
33
|
+
<TideIcon
|
|
34
|
+
:class="[CSS.FLEX.SHRINK.OFF]"
|
|
35
|
+
:icon="ICON.AWARD_STAR"
|
|
36
|
+
/>
|
|
37
|
+
|
|
38
|
+
<div :class="[CSS.ELLIPSIS]">
|
|
33
39
|
<span>{{ props.years }} year trusted partner</span>
|
|
34
40
|
</div>
|
|
35
41
|
</div>
|
|
@@ -17,11 +17,16 @@
|
|
|
17
17
|
CSS.BORDER.RADIUS.QUARTER,
|
|
18
18
|
CSS.PADDING.Y.QUARTER,
|
|
19
19
|
CSS.PADDING.X.HALF,
|
|
20
|
+
CSS.ELLIPSIS,
|
|
21
|
+
CSS.WHITESPACE_WRAP.OFF,
|
|
20
22
|
]"
|
|
21
23
|
>
|
|
22
|
-
<TideIcon
|
|
24
|
+
<TideIcon
|
|
25
|
+
:class="[CSS.FLEX.SHRINK.OFF]"
|
|
26
|
+
:icon="ICON.VERIFIED"
|
|
27
|
+
/>
|
|
23
28
|
|
|
24
|
-
<span>Verified vehicle</span>
|
|
29
|
+
<span :class="[CSS.ELLIPSIS]">Verified vehicle</span>
|
|
25
30
|
</div>
|
|
26
31
|
</template>
|
|
27
32
|
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
'tide-button',
|
|
43
43
|
props.priority && `tide-button-${props.priority}`,
|
|
44
44
|
props.element === ELEMENT.LINK ? [CSS.DISPLAY.INLINE_FLEX] : [CSS.DISPLAY.FLEX],
|
|
45
|
-
props.element === ELEMENT.LINK ? CSS.UNDERLINE.OFF : '',
|
|
45
|
+
props.element === ELEMENT.LINK ? CSS.UNDERLINE.REST.OFF : '',
|
|
46
46
|
size === SIZE_BUTTON.SMALL && [CSS.FONT.ROLE.BUTTON_2, CSS.PADDING.X.ONE, CSS.PADDING.Y.HALF],
|
|
47
47
|
size === SIZE_BUTTON.LARGE && [CSS.FONT.ROLE.BUTTON_1, CSS.PADDING.X.TWO, CSS.PADDING.Y.ONE],
|
|
48
48
|
CSS.AXIS1.CENTER,
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
props.element === ELEMENT.LINK ? 'tide-link-as-button-icon' : 'tide-button-icon',
|
|
37
37
|
props.priority && `tide-button-${props.priority}`,
|
|
38
38
|
[CSS.DISPLAY.FLEX, CSS.AXIS1.CENTER, CSS.AXIS2.CENTER, CSS.BORDER.RADIUS.FULL, CSS.PADDING.FULL.HALF],
|
|
39
|
-
props.element === ELEMENT.LINK ? [CSS.UNDERLINE.OFF] : '',
|
|
39
|
+
props.element === ELEMENT.LINK ? [CSS.UNDERLINE.REST.OFF] : '',
|
|
40
40
|
]"
|
|
41
41
|
:disabled="props.element === ELEMENT.BUTTON && props.disabled"
|
|
42
42
|
:href="props.element === ELEMENT.LINK && props.href ? props.href : undefined"
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
:class="[
|
|
25
25
|
props.element === ELEMENT_TEXT_AS_ICON.LINK ? 'tide-link-as-button-icon' : 'tide-button-icon',
|
|
26
26
|
[CSS.DISPLAY.INLINE_BLOCK, CSS.BORDER.RADIUS.FULL, CSS.PADDING.FULL.HALF],
|
|
27
|
-
props.element === ELEMENT_TEXT_AS_ICON.LINK ? [CSS.UNDERLINE.OFF] : '',
|
|
27
|
+
props.element === ELEMENT_TEXT_AS_ICON.LINK ? [CSS.UNDERLINE.REST.OFF] : '',
|
|
28
28
|
props.element === ELEMENT_TEXT_AS_ICON.DIV ? [CSS.CURSOR.POINTER] : '',
|
|
29
29
|
[CSS.FONT.ROLE.HEADLINE_3],
|
|
30
30
|
]"
|