tide-design-system 2.0.0 → 2.0.1
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/dist/{IconAccountBalance-91cf067b.js → IconAccountBalance-0c552905.js} +1 -1
- package/dist/{IconAdd-95c51c0e.js → IconAdd-50766b43.js} +1 -1
- package/dist/{IconAi-08172540.js → IconAi-3f1ad2fe.js} +1 -1
- package/dist/{IconAlignSpace-9ab2bdf2.js → IconAlignSpace-804660fd.js} +1 -1
- package/dist/{IconApplePay-1ee6317b.js → IconApplePay-75b9850c.js} +1 -1
- package/dist/{IconArrowBack-a2226a94.js → IconArrowBack-3bde832a.js} +1 -1
- package/dist/{IconArrowForward-e1ca9957.js → IconArrowForward-0582323f.js} +1 -1
- package/dist/{IconArrowRight-53382084.js → IconArrowRight-c37875ce.js} +1 -1
- package/dist/{IconAssignment-332c2b2b.js → IconAssignment-b9549d2c.js} +1 -1
- package/dist/{IconAwardStar-1ca35385.js → IconAwardStar-a1b0a840.js} +1 -1
- package/dist/{IconBookmark-49b42628.js → IconBookmark-26e82ff4.js} +1 -1
- package/dist/{IconCalendarMonth-22c938d7.js → IconCalendarMonth-55806114.js} +1 -1
- package/dist/{IconCall-989a47fc.js → IconCall-dfc29049.js} +1 -1
- package/dist/{IconCheck-a3467b47.js → IconCheck-1d4a84f9.js} +1 -1
- package/dist/{IconChevronLeft-c1d90bb7.js → IconChevronLeft-8a9307a6.js} +1 -1
- package/dist/{IconChevronRight-ad47891f.js → IconChevronRight-46940da9.js} +1 -1
- package/dist/{IconClear-7c8fad4e.js → IconClear-1dc6a4df.js} +1 -1
- package/dist/{IconClose-4b6c5aed.js → IconClose-93976f13.js} +1 -1
- package/dist/{IconCycle-99d40f2d.js → IconCycle-b8bc8146.js} +1 -1
- package/dist/{IconDelete-446eff93.js → IconDelete-2970a09b.js} +1 -1
- package/dist/{IconDiamond-765a7d8d.js → IconDiamond-ba4bae95.js} +1 -1
- package/dist/{IconEdit-ce05f3b5.js → IconEdit-3612d58e.js} +1 -1
- package/dist/{IconError-7983707a.js → IconError-643df67d.js} +1 -1
- package/dist/{IconExpandContent-8b6e2125.js → IconExpandContent-71109869.js} +1 -1
- package/dist/{IconExpandLess-9e23f1e9.js → IconExpandLess-9c6c12b6.js} +1 -1
- package/dist/{IconExpandMore-ded098a7.js → IconExpandMore-fcd92910.js} +1 -1
- package/dist/{IconFacebook-3cab65a8.js → IconFacebook-b0d62bbb.js} +1 -1
- package/dist/{IconFavorite-5fe831f4.js → IconFavorite-d59dfc0b.js} +1 -1
- package/dist/{IconFavoriteFilled-58fa0bf7.js → IconFavoriteFilled-fd2c5862.js} +1 -1
- package/dist/{IconFormatBold-889f6b8b.js → IconFormatBold-6f1aa639.js} +1 -1
- package/dist/{IconFormatItalic-103eba00.js → IconFormatItalic-a82848b2.js} +1 -1
- package/dist/{IconFormatListBulleted-4c824025.js → IconFormatListBulleted-4f4a0a99.js} +1 -1
- package/dist/{IconForum-abc2fe82.js → IconForum-194dedbd.js} +1 -1
- package/dist/{IconGoogle-281b6d80.js → IconGoogle-46e6c4f1.js} +1 -1
- package/dist/{IconGooglePay-cc83c5c8.js → IconGooglePay-090b70a8.js} +1 -1
- package/dist/{IconGrid-ef763745.js → IconGrid-0f7c079c.js} +1 -1
- package/dist/{IconHelp-2ad33f76.js → IconHelp-e91f36a5.js} +1 -1
- package/dist/{IconInfo-5878df77.js → IconInfo-df1f06a5.js} +1 -1
- package/dist/{IconInsertText-0c62badf.js → IconInsertText-e371c1cd.js} +1 -1
- package/dist/{IconInstagram-69e21cfb.js → IconInstagram-af4ea628.js} +1 -1
- package/dist/{IconIosShare-be5f117c.js → IconIosShare-7253c1df.js} +1 -1
- package/dist/{IconLayout-c1ffbcd3.js → IconLayout-225d9fb6.js} +1 -1
- package/dist/{IconLinkedIn-807ef6f5.js → IconLinkedIn-ab7e007c.js} +1 -1
- package/dist/{IconLocalShipping-2c6d71e0.js → IconLocalShipping-2c8ac96c.js} +1 -1
- package/dist/{IconLock-9178e816.js → IconLock-b4e1bd5d.js} +1 -1
- package/dist/{IconMail-0123a7c6.js → IconMail-50eca4b4.js} +1 -1
- package/dist/{IconMenu-33ed2d99.js → IconMenu-7789a1f9.js} +1 -1
- package/dist/{IconMoreHoriz-c281099f.js → IconMoreHoriz-35960212.js} +1 -1
- package/dist/{IconNotifications-89f80e0f.js → IconNotifications-a6690c77.js} +1 -1
- package/dist/{IconOpenInNew-87ad0454.js → IconOpenInNew-8b812d7f.js} +1 -1
- package/dist/{IconPalette-7ee5b40c.js → IconPalette-18b6e766.js} +1 -1
- package/dist/{IconPaypal-e311eadd.js → IconPaypal-75ff8ed5.js} +1 -1
- package/dist/{IconPerson-932fbcbc.js → IconPerson-3c8a4c27.js} +1 -1
- package/dist/{IconPhotoCamera-fdbd5767.js → IconPhotoCamera-0fbb9344.js} +1 -1
- package/dist/{IconPinterest-2d19c2eb.js → IconPinterest-28ae7c92.js} +1 -1
- package/dist/{IconPlayArrow-9837a5c0.js → IconPlayArrow-6d779a71.js} +1 -1
- package/dist/{IconRemove-29ef8f82.js → IconRemove-1f655305.js} +1 -1
- package/dist/{IconRoundedCorners-8ad194fc.js → IconRoundedCorners-1f9eba28.js} +1 -1
- package/dist/{IconSearch-5ff23d26.js → IconSearch-c6843cf3.js} +1 -1
- package/dist/{IconSell-0e0ecd20.js → IconSell-c7818ac8.js} +1 -1
- package/dist/{IconShare-47084765.js → IconShare-b81bc4cd.js} +1 -1
- package/dist/{IconShoppingCart-9d6495b3.js → IconShoppingCart-b6cc2022.js} +1 -1
- package/dist/{IconSms-5ba18382.js → IconSms-dc4c1454.js} +1 -1
- package/dist/{IconStar-ef69284b.js → IconStar-c4305bd6.js} +1 -1
- package/dist/{IconSwapVert-05e14e3d.js → IconSwapVert-00e66af6.js} +1 -1
- package/dist/{IconThreeDRotation-2433b2e8.js → IconThreeDRotation-b19a9312.js} +1 -1
- package/dist/{IconTune-3c6452f0.js → IconTune-dee47734.js} +1 -1
- package/dist/{IconTwitter-a634cef4.js → IconTwitter-2ab4e06b.js} +1 -1
- package/dist/{IconVideocam-5712435e.js → IconVideocam-0d0142aa.js} +1 -1
- package/dist/{IconViewInAr-d38a23d5.js → IconViewInAr-7cd92579.js} +1 -1
- package/dist/{IconVisibility-8cdf7151.js → IconVisibility-84655778.js} +1 -1
- package/dist/{IconWarning-b9e61180.js → IconWarning-cab4938a.js} +1 -1
- package/dist/{IconYoutube-92447826.js → IconYoutube-ab7e33d3.js} +1 -1
- package/dist/css/dynamic-utilities.css +0 -1
- package/dist/css/main.css +0 -1
- package/dist/css/utilities.css +9 -8
- package/dist/css/variables.css +21 -17
- package/dist/index-32686488.js +2106 -0
- package/dist/style.css +1 -1
- package/dist/tide-design-system.js +48 -0
- package/dist/types/FacetRange.ts +84 -0
- package/dist/types/Field.ts +0 -1
- package/dist/types/Form.ts +57 -0
- package/dist/types/Realm.ts +1 -0
- package/dist/types/Select.ts +6 -0
- package/dist/types/Storybook.ts +206 -1
- package/dist/types/Styles.ts +64 -30
- package/dist/types/Validation.ts +7 -1
- package/dist/utilities/format.ts +75 -39
- package/dist/utilities/storybook.ts +35 -1
- package/dist/utilities/validation.ts +139 -34
- package/package.json +1 -1
- package/dist/css/dynamic-inputs.css +0 -43
- package/dist/index-c5bc4216.js +0 -1910
- package/dist/tide2-design-system.js +0 -36
- package/dist/types/StorybookStyles.ts +0 -209
- package/dist/types/Vehicle.ts +0 -139
- package/dist/types/VehicleDetail.ts +0 -44
- package/dist/types/index.d.ts +0 -7
- package/dist/utilities/forms.ts +0 -47
- package/dist/utilities/media.ts +0 -77
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { T as d, a as s, b as T, c as t, d as n, e as o, f as r, g as u, h as g, i as p, j as I, k as c, l as B, m, n as C, o as l, p as h, q as x, r as A, s as P, t as b, u as k, v, w as S, x as f, y as D, z as L, A as M, B as j, C as q, D as w, E as y } from "./index-c5bc4216.js";
|
|
2
|
-
import "vue";
|
|
3
|
-
export {
|
|
4
|
-
d as TideAccordionItem,
|
|
5
|
-
s as TideAlert,
|
|
6
|
-
T as TideBadge,
|
|
7
|
-
t as TideBadgeCounter,
|
|
8
|
-
n as TideBadgeMisc,
|
|
9
|
-
o as TideBadgePremium,
|
|
10
|
-
r as TideBadgeTrustedPartner,
|
|
11
|
-
u as TideBreadCrumbs,
|
|
12
|
-
g as TideButton,
|
|
13
|
-
p as TideButtonIcon,
|
|
14
|
-
I as TideButtonPagination,
|
|
15
|
-
c as TideCard,
|
|
16
|
-
B as TideCarousel,
|
|
17
|
-
m as TideChipAction,
|
|
18
|
-
C as TideChipFilter,
|
|
19
|
-
l as TideChipInput,
|
|
20
|
-
h as TideColumns,
|
|
21
|
-
x as TideDivider,
|
|
22
|
-
A as TideIcon,
|
|
23
|
-
P as TideImage,
|
|
24
|
-
b as TideIndicator,
|
|
25
|
-
k as TideInputRadio,
|
|
26
|
-
v as TideInputSelect,
|
|
27
|
-
S as TideInputText,
|
|
28
|
-
f as TideInputTextarea,
|
|
29
|
-
D as TideLink,
|
|
30
|
-
L as TideModal,
|
|
31
|
-
M as TidePagination,
|
|
32
|
-
j as TideSeoLinks,
|
|
33
|
-
q as TideSvgIcon,
|
|
34
|
-
w as TideTabs,
|
|
35
|
-
y as TideToggle
|
|
36
|
-
};
|
|
@@ -1,209 +0,0 @@
|
|
|
1
|
-
/* eslint vue/sort-keys: 0 */
|
|
2
|
-
// ^ Storybook controls are based on iterating over object properties instead of array slots (bad form), so these can't be ordered alphabetically.
|
|
3
|
-
|
|
4
|
-
import { CSS } from '@/types/Styles';
|
|
5
|
-
|
|
6
|
-
export const BADGE_TRUSTED = {
|
|
7
|
-
YEARS_5: '5',
|
|
8
|
-
YEARS_10: '10',
|
|
9
|
-
YEARS_15: '15',
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
export const BORDER_RADIUS = {
|
|
13
|
-
'0.25 REM': 'tide-radius-1/4',
|
|
14
|
-
'0.5 REM': 'tide-radius-1/2',
|
|
15
|
-
'1 REM': 'tide-radius-1',
|
|
16
|
-
'Full': 'tide-radius-full',
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
export const BORDER_SIDE = {
|
|
20
|
-
Full: 'tide-border',
|
|
21
|
-
Top: 'tide-border-top',
|
|
22
|
-
Right: 'tide-border-right',
|
|
23
|
-
Bottom: 'tide-border-bottom',
|
|
24
|
-
Left: 'tide-border-left',
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
export const BORDER_WIDTH = {
|
|
28
|
-
'1px': '1',
|
|
29
|
-
'2px': '2',
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
export const DISPLAY = {
|
|
33
|
-
'Block': 'tide-display-block',
|
|
34
|
-
'Contents': 'tide-contents',
|
|
35
|
-
'Flex': 'tide-display-flex',
|
|
36
|
-
'Grid': 'tide-display-grid',
|
|
37
|
-
'Inline Block': 'tide-display-inline-block',
|
|
38
|
-
'Inline Flex': 'tide-display-inline-flex',
|
|
39
|
-
'Inline': 'tide-display-inline',
|
|
40
|
-
'None (Hidden)': 'tide-display-none',
|
|
41
|
-
};
|
|
42
|
-
|
|
43
|
-
export const FLEX_AXIS1 = {
|
|
44
|
-
Around: 'tide-axis1-around',
|
|
45
|
-
Between: 'tide-axis1-between',
|
|
46
|
-
Center: 'tide-axis1-center',
|
|
47
|
-
End: 'tide-axis1-end',
|
|
48
|
-
Start: 'tide-axis1-start',
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
export const FLEX_AXIS2 = {
|
|
52
|
-
Center: 'tide-axis2-center',
|
|
53
|
-
End: 'tide-axis2-end',
|
|
54
|
-
Normal: 'tide-axis2-normal',
|
|
55
|
-
Start: 'tide-axis2-start',
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
export const FLEX_DIRECTION = {
|
|
59
|
-
Column: 'tide-flex-column',
|
|
60
|
-
Row: 'tide-flex-row',
|
|
61
|
-
};
|
|
62
|
-
|
|
63
|
-
export const FONT_SIZE = {
|
|
64
|
-
'12px': 'tide-font-12',
|
|
65
|
-
'14px': 'tide-font-14',
|
|
66
|
-
'16px': 'tide-font-16',
|
|
67
|
-
'20px': 'tide-font-20',
|
|
68
|
-
'24px': 'tide-font-24',
|
|
69
|
-
'32px': 'tide-font-32',
|
|
70
|
-
};
|
|
71
|
-
|
|
72
|
-
export const FONT_WEIGHT = {
|
|
73
|
-
'400 Regular': 'tide-font-400',
|
|
74
|
-
'500 Medium': 'tide-font-500',
|
|
75
|
-
'600 Semibold': 'tide-font-600',
|
|
76
|
-
'700 Bold': 'tide-font-700',
|
|
77
|
-
};
|
|
78
|
-
|
|
79
|
-
export const GAP = {
|
|
80
|
-
'4 REM': 'tide-gap-4',
|
|
81
|
-
'2 REM': 'tide-gap-2',
|
|
82
|
-
'1 REM': 'tide-gap-1',
|
|
83
|
-
'0.5 REM': 'tide-gap-1/2',
|
|
84
|
-
'0.25 REM': 'tide-gap-1/4',
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
export const LINK_SIZE = {
|
|
88
|
-
TWELVE: 'tide-font-12',
|
|
89
|
-
FOURTEEN: 'tide-font-14',
|
|
90
|
-
SIXTEEN: 'tide-font-16',
|
|
91
|
-
};
|
|
92
|
-
|
|
93
|
-
export const MARGIN = {
|
|
94
|
-
'Full 4 REM': 'tide-margin-4',
|
|
95
|
-
'Full 2 REM': 'tide-margin-2',
|
|
96
|
-
'Full 1 REM': 'tide-margin-1',
|
|
97
|
-
'Full 0.5 REM': 'tide-margin-1/2',
|
|
98
|
-
'Full 0.25 REM': 'tide-margin-1/4',
|
|
99
|
-
|
|
100
|
-
'X-axis Auto': 'tide-margin-x-auto',
|
|
101
|
-
'X-axis 4 REM': 'tide-margin-x-4',
|
|
102
|
-
'X-axis 2 REM': 'tide-margin-x-2',
|
|
103
|
-
'X-axis 1 REM': 'tide-margin-x-1',
|
|
104
|
-
'X-axis 0.5 REM': 'tide-margin-x-1/2',
|
|
105
|
-
'X-axis 0.25 REM': 'tide-margin-x-1/4',
|
|
106
|
-
|
|
107
|
-
'Y-axis 4 REM': 'tide-margin-y-4',
|
|
108
|
-
'Y-axis 2 REM': 'tide-margin-y-2',
|
|
109
|
-
'Y-axis 1 REM': 'tide-margin-y-1',
|
|
110
|
-
'Y-axis 0.5 REM': 'tide-margin-y-1/2',
|
|
111
|
-
'Y-axis 0.25 REM': 'tide-margin-y-1/4',
|
|
112
|
-
|
|
113
|
-
'Top 4 REM': 'tide-margin-top-4',
|
|
114
|
-
'Top 2 REM': 'tide-margin-top-2',
|
|
115
|
-
'Top 1 REM': 'tide-margin-top-1',
|
|
116
|
-
'Top 0.5 REM': 'tide-margin-top-1/2',
|
|
117
|
-
'Top 0.25 REM': 'tide-margin-top-1/4',
|
|
118
|
-
|
|
119
|
-
'Right Auto': 'tide-margin-right-auto',
|
|
120
|
-
'Right 4 REM': 'tide-margin-right-4',
|
|
121
|
-
'Right 2 REM': 'tide-margin-right-2',
|
|
122
|
-
'Right 1 REM': 'tide-margin-right-1',
|
|
123
|
-
'Right 0.5 REM': 'tide-margin-right-1/2',
|
|
124
|
-
'Right 0.25 REM': 'tide-margin-right-1/4',
|
|
125
|
-
|
|
126
|
-
'Bottom 4 REM': 'tide-margin-bottom-4',
|
|
127
|
-
'Bottom 2 REM': 'tide-margin-bottom-2',
|
|
128
|
-
'Bottom 1 REM': 'tide-margin-bottom-1',
|
|
129
|
-
'Bottom 0.5 REM': 'tide-margin-bottom-1/2',
|
|
130
|
-
'Bottom 0.25 REM': 'tide-margin-bottom-1/4',
|
|
131
|
-
|
|
132
|
-
'Left Auto': 'tide-margin-left-auto',
|
|
133
|
-
'Left 4 REM': 'tide-margin-left-4',
|
|
134
|
-
'Left 2 REM': 'tide-margin-left-2',
|
|
135
|
-
'Left 1 REM': 'tide-margin-left-1',
|
|
136
|
-
'Left 0.5 REM': 'tide-margin-left-1/2',
|
|
137
|
-
'Left 0.25 REM': 'tide-margin-left-1/4',
|
|
138
|
-
};
|
|
139
|
-
|
|
140
|
-
export const PADDING = {
|
|
141
|
-
'Full 4 REM': 'tide-padding-4',
|
|
142
|
-
'Full 2 REM': 'tide-padding-2',
|
|
143
|
-
'Full 1 REM': 'tide-padding-1',
|
|
144
|
-
'Full 0.5 REM': 'tide-padding-1/2',
|
|
145
|
-
'Full 0.25 REM': 'tide-padding-1/4',
|
|
146
|
-
|
|
147
|
-
'X-axis 4 REM': 'tide-padding-x-4',
|
|
148
|
-
'X-axis 2 REM': 'tide-padding-x-2',
|
|
149
|
-
'X-axis 1 REM': 'tide-padding-x-1',
|
|
150
|
-
'X-axis 0.5 REM': 'tide-padding-x-1/2',
|
|
151
|
-
'X-axis 0.25 REM': 'tide-padding-x-1/4',
|
|
152
|
-
|
|
153
|
-
'Y-axis 4 REM': 'tide-padding-y-4',
|
|
154
|
-
'Y-axis 2 REM': 'tide-padding-y-2',
|
|
155
|
-
'Y-axis 1 REM': 'tide-padding-y-1',
|
|
156
|
-
'Y-axis 0.5 REM': 'tide-padding-y-1/2',
|
|
157
|
-
'Y-axis 0.25 REM': 'tide-padding-y-1/4',
|
|
158
|
-
|
|
159
|
-
'Top 4 REM': 'tide-padding-top-4',
|
|
160
|
-
'Top 2 REM': 'tide-padding-top-2',
|
|
161
|
-
'Top 1 REM': 'tide-padding-top-1',
|
|
162
|
-
'Top 0.5 REM': 'tide-padding-top-1/2',
|
|
163
|
-
'Top 0.25 REM': 'tide-padding-top-1/4',
|
|
164
|
-
|
|
165
|
-
'Right 4 REM': 'tide-padding-right-4',
|
|
166
|
-
'Right 2 REM': 'tide-padding-right-2',
|
|
167
|
-
'Right 1 REM': 'tide-padding-right-1',
|
|
168
|
-
'Right 0.5 REM': 'tide-padding-right-1/2',
|
|
169
|
-
'Right 0.25 REM': 'tide-padding-right-1/4',
|
|
170
|
-
|
|
171
|
-
'Bottom 4 REM': 'tide-padding-bottom-4',
|
|
172
|
-
'Bottom 2 REM': 'tide-padding-bottom-2',
|
|
173
|
-
'Bottom 1 REM': 'tide-padding-bottom-1',
|
|
174
|
-
'Bottom 0.5 REM': 'tide-padding-bottom-1/2',
|
|
175
|
-
'Bottom 0.25 REM': 'tide-padding-bottom-1/4',
|
|
176
|
-
|
|
177
|
-
'Left 4 REM': 'tide-padding-left-4',
|
|
178
|
-
'Left 2 REM': 'tide-padding-left-2',
|
|
179
|
-
'Left 1 REM': 'tide-padding-left-1',
|
|
180
|
-
'Left 0.5 REM': 'tide-padding-left-1/2',
|
|
181
|
-
'Left 0.25 REM': 'tide-padding-left-1/4',
|
|
182
|
-
};
|
|
183
|
-
|
|
184
|
-
export const SHADOW = {
|
|
185
|
-
Bottom: 'tide-shadow-bottom',
|
|
186
|
-
Top: 'tide-shadow-top',
|
|
187
|
-
};
|
|
188
|
-
|
|
189
|
-
export const TYPOGRAPHY = {
|
|
190
|
-
DISPLAY_1: [CSS.FONT.SIZE.THIRTY_TWO, CSS.FONT.WEIGHT.SEVEN_HUNDRED],
|
|
191
|
-
HEADLINE_1: [CSS.FONT.SIZE.TWENTY_FOUR, CSS.FONT.WEIGHT.SEVEN_HUNDRED],
|
|
192
|
-
HEADLINE_2: [CSS.FONT.SIZE.TWENTY, CSS.FONT.WEIGHT.SEVEN_HUNDRED],
|
|
193
|
-
HEADLINE_3: [CSS.FONT.SIZE.SIXTEEN, CSS.FONT.WEIGHT.SEVEN_HUNDRED],
|
|
194
|
-
TITLE_1: [CSS.FONT.SIZE.TWENTY, CSS.FONT.WEIGHT.SIX_HUNDRED],
|
|
195
|
-
TITLE_2: [CSS.FONT.SIZE.SIXTEEN, CSS.FONT.WEIGHT.SIX_HUNDRED],
|
|
196
|
-
BODY_1: [CSS.FONT.SIZE.SIXTEEN, CSS.FONT.WEIGHT.FOUR_HUNDRED],
|
|
197
|
-
BODY_2: [CSS.FONT.SIZE.FOURTEEN, CSS.FONT.WEIGHT.FOUR_HUNDRED],
|
|
198
|
-
LABEL_1: [CSS.FONT.SIZE.SIXTEEN, CSS.FONT.WEIGHT.FIVE_HUNDRED],
|
|
199
|
-
LABEL_1_SEMIBOLD: [CSS.FONT.SIZE.SIXTEEN, CSS.FONT.WEIGHT.SIX_HUNDRED],
|
|
200
|
-
LABEL_2: [CSS.FONT.SIZE.FOURTEEN, CSS.FONT.WEIGHT.FIVE_HUNDRED],
|
|
201
|
-
LABEL_2_SEMIBOLD: [CSS.FONT.SIZE.FOURTEEN, CSS.FONT.WEIGHT.SIX_HUNDRED],
|
|
202
|
-
LABEL_3: [CSS.FONT.SIZE.TWELVE, CSS.FONT.WEIGHT.FIVE_HUNDRED],
|
|
203
|
-
LINK_1: [CSS.FONT.SIZE.SIXTEEN, CSS.FONT.WEIGHT.SEVEN_HUNDRED],
|
|
204
|
-
LINK_2: [CSS.FONT.SIZE.FOURTEEN, CSS.FONT.WEIGHT.SEVEN_HUNDRED],
|
|
205
|
-
LINK_3: [CSS.FONT.SIZE.TWELVE, CSS.FONT.WEIGHT.SEVEN_HUNDRED],
|
|
206
|
-
BUTTON_1: [CSS.FONT.SIZE.SIXTEEN, CSS.FONT.WEIGHT.SIX_HUNDRED],
|
|
207
|
-
};
|
|
208
|
-
|
|
209
|
-
export type Typography = (typeof TYPOGRAPHY)[keyof typeof TYPOGRAPHY];
|
package/dist/types/Vehicle.ts
DELETED
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
export type Vehicle = {
|
|
2
|
-
adAttribs: {
|
|
3
|
-
itemUrl: string;
|
|
4
|
-
makeAnOffer: string;
|
|
5
|
-
priceDisclaimer: string;
|
|
6
|
-
requestAPrice: string;
|
|
7
|
-
videoBorchueNarationStyle: string;
|
|
8
|
-
};
|
|
9
|
-
adDetailUrl: string;
|
|
10
|
-
adFeatures: {
|
|
11
|
-
buyNow: boolean;
|
|
12
|
-
featuredHomepage: boolean;
|
|
13
|
-
featuredSearch: boolean;
|
|
14
|
-
hideFloorPlans: boolean;
|
|
15
|
-
oneYearPackage: boolean;
|
|
16
|
-
paaVideo: boolean;
|
|
17
|
-
premium: boolean;
|
|
18
|
-
topPremium: boolean;
|
|
19
|
-
};
|
|
20
|
-
adId: number;
|
|
21
|
-
adListingPosition: number;
|
|
22
|
-
categoryName: string[];
|
|
23
|
-
city: string;
|
|
24
|
-
cityStateFacet: string;
|
|
25
|
-
classId: string;
|
|
26
|
-
className: string;
|
|
27
|
-
companyName: string;
|
|
28
|
-
condition: string[];
|
|
29
|
-
createDate: string;
|
|
30
|
-
createDateFormatted: string;
|
|
31
|
-
customerId: string;
|
|
32
|
-
dealerFeatures: {
|
|
33
|
-
deactivateContactDealer: boolean;
|
|
34
|
-
hasAccessIndustryAero: boolean;
|
|
35
|
-
hasAccessIndustryCycle: boolean;
|
|
36
|
-
hasAccessIndustryEquipment: boolean;
|
|
37
|
-
hasAccessIndustryNextruck: boolean;
|
|
38
|
-
hasAccessIndustryRV: boolean;
|
|
39
|
-
hasAccessIndustryRentalsCycle: boolean;
|
|
40
|
-
hasAccessIndustryRentalsRv: boolean;
|
|
41
|
-
hasAccessIndustryRockAndDirt: boolean;
|
|
42
|
-
hasAccessIndustryTradeAPlane: boolean;
|
|
43
|
-
hasAccessIndustryTradeEquip: boolean;
|
|
44
|
-
hasAccessIndustryTrailer: boolean;
|
|
45
|
-
hasAccessIndustryTruck: boolean;
|
|
46
|
-
hasAdLocationLockdown: boolean;
|
|
47
|
-
hasAdPearance: boolean;
|
|
48
|
-
hasAutoSelectUnusedBundle: boolean;
|
|
49
|
-
hasClickToCall: boolean;
|
|
50
|
-
hasClickToWeb: boolean;
|
|
51
|
-
hasContactAtOnce: boolean;
|
|
52
|
-
hasContactAtOnceTexting: boolean;
|
|
53
|
-
hasCoreLite: boolean;
|
|
54
|
-
hasDealDesignation: boolean;
|
|
55
|
-
hasDealerCoreLeadManager: boolean;
|
|
56
|
-
hasDigitalRetailingBuyNow: boolean;
|
|
57
|
-
hasDigitalRetailingEnhancedLead: boolean;
|
|
58
|
-
hasFacebookRetargeting: boolean;
|
|
59
|
-
hasGreenFlag: boolean;
|
|
60
|
-
hasHideDealerWebsiteLink: boolean;
|
|
61
|
-
hasHideFactorySpecs: boolean;
|
|
62
|
-
hasHideFinance: boolean;
|
|
63
|
-
hasHideInspection: boolean;
|
|
64
|
-
hasHideLoanCalculator: boolean;
|
|
65
|
-
hasHideShipping: boolean;
|
|
66
|
-
hasHideStandardFeatures: boolean;
|
|
67
|
-
hasHideTaglines: boolean;
|
|
68
|
-
hasInternetAdvertising: boolean;
|
|
69
|
-
hasMakeAnOffer: boolean;
|
|
70
|
-
hasMakeAnOfferPrice: boolean;
|
|
71
|
-
hasMapIt: boolean;
|
|
72
|
-
hasOctaneFinance: boolean;
|
|
73
|
-
hasOptOutDealerGroupLeaderboard: boolean;
|
|
74
|
-
hasOptOutDealerGroupRollup: boolean;
|
|
75
|
-
hasOptOutDealerGroupSharedLogin: boolean;
|
|
76
|
-
hasOptOutDealerGroupWebsite: boolean;
|
|
77
|
-
hasRemoveLoanCalcDealerFinancing: boolean;
|
|
78
|
-
hasRemoveVinFromDisplay: boolean;
|
|
79
|
-
hasRental: boolean;
|
|
80
|
-
hasRequestBestPrice: boolean;
|
|
81
|
-
hasRequestPrice: boolean;
|
|
82
|
-
hasRequestQuotePreorder: boolean;
|
|
83
|
-
hasRequestQuoteWeBuy: boolean;
|
|
84
|
-
hasRequestTradeIn: boolean;
|
|
85
|
-
hasShiftDigital: boolean;
|
|
86
|
-
hasShowListingAddress: boolean;
|
|
87
|
-
hasShutOffAdvertising: boolean;
|
|
88
|
-
hasShutOffDigitRetailVDP: boolean;
|
|
89
|
-
hasSuggestedTrucks: boolean;
|
|
90
|
-
hasTalkingBrochure: boolean;
|
|
91
|
-
hasTiChat: boolean;
|
|
92
|
-
hasTiChatGuestDisabled: boolean;
|
|
93
|
-
hasTiChatManaged: boolean;
|
|
94
|
-
hasTradeIn: boolean;
|
|
95
|
-
hasTradeInFeature: boolean;
|
|
96
|
-
hasTradertraxxCombinedExperience: boolean;
|
|
97
|
-
hasVideo: boolean;
|
|
98
|
-
hasVideoChatRequest: boolean;
|
|
99
|
-
hasVr: boolean;
|
|
100
|
-
isHibernate: boolean;
|
|
101
|
-
removeRequestPhotoVideo: boolean;
|
|
102
|
-
};
|
|
103
|
-
dealerGroupDealerCount: string;
|
|
104
|
-
dealerGroupId: string;
|
|
105
|
-
dealerGroupName: string;
|
|
106
|
-
dealerId: string;
|
|
107
|
-
dealerPhone: string[];
|
|
108
|
-
dealerWebsiteUrl: string;
|
|
109
|
-
description: string;
|
|
110
|
-
isBuynow: string;
|
|
111
|
-
isFeatured: string;
|
|
112
|
-
isPremium: string;
|
|
113
|
-
isToppremium: string;
|
|
114
|
-
latitude: string;
|
|
115
|
-
longitude: string;
|
|
116
|
-
makeFacet: string[];
|
|
117
|
-
makeId: string[];
|
|
118
|
-
makeName: string[];
|
|
119
|
-
meta: {
|
|
120
|
-
engine: string;
|
|
121
|
-
id: string;
|
|
122
|
-
score: number;
|
|
123
|
-
};
|
|
124
|
-
mfrSerialNum: null;
|
|
125
|
-
modelFacet: string[];
|
|
126
|
-
modelName: string[];
|
|
127
|
-
msrp: null;
|
|
128
|
-
phone: string;
|
|
129
|
-
photoCount: number;
|
|
130
|
-
photoIds: string[];
|
|
131
|
-
price: number;
|
|
132
|
-
rebate: null;
|
|
133
|
-
schemeCode: string;
|
|
134
|
-
sellerType: string;
|
|
135
|
-
stateCode: string;
|
|
136
|
-
trimName: string[];
|
|
137
|
-
websiteUrl: null;
|
|
138
|
-
year: number;
|
|
139
|
-
};
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
export type VehicleDetail = {
|
|
2
|
-
id: string;
|
|
3
|
-
adUrl: string;
|
|
4
|
-
breadcrumbs: { text: string; link: string }[];
|
|
5
|
-
categoryName: string | null;
|
|
6
|
-
className: string;
|
|
7
|
-
condition: string;
|
|
8
|
-
customerId: string;
|
|
9
|
-
dealerId: string;
|
|
10
|
-
dealerLogo: { url: string };
|
|
11
|
-
dealerMapUrl: string;
|
|
12
|
-
dealerName: string;
|
|
13
|
-
dealerRepeatTag: string;
|
|
14
|
-
features: { id: string; name: string }[];
|
|
15
|
-
makeAnOfferPrice: string | null;
|
|
16
|
-
makeDisplayName: string;
|
|
17
|
-
modelDisplayName: string;
|
|
18
|
-
phone: string;
|
|
19
|
-
photos: { url: string }[];
|
|
20
|
-
price: string;
|
|
21
|
-
realmId: string;
|
|
22
|
-
state: string;
|
|
23
|
-
trimName: string;
|
|
24
|
-
year: string;
|
|
25
|
-
zip: string;
|
|
26
|
-
formattedPhone: string;
|
|
27
|
-
description: string;
|
|
28
|
-
miles: string;
|
|
29
|
-
location: string;
|
|
30
|
-
locationDistance: string;
|
|
31
|
-
details: { [key: string]: string };
|
|
32
|
-
factorySpecs: string | null;
|
|
33
|
-
localDelivery: string;
|
|
34
|
-
emailSellerUrl: string;
|
|
35
|
-
dealerLink: string;
|
|
36
|
-
realmUrl: string;
|
|
37
|
-
realmName: string;
|
|
38
|
-
isSmsAvailable: boolean;
|
|
39
|
-
isChatAvailable: boolean;
|
|
40
|
-
isDealerWebsiteAvailable: boolean;
|
|
41
|
-
video?: { thumbnail: string; url: string };
|
|
42
|
-
vrUrl: string;
|
|
43
|
-
floorPlanMediaId: string | null;
|
|
44
|
-
};
|
package/dist/types/index.d.ts
DELETED
package/dist/utilities/forms.ts
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import type { Ref } from 'vue';
|
|
2
|
-
import type { SelectOption } from '@/types/Select';
|
|
3
|
-
import type { ValidationError, Validator } from '@/types/Validation';
|
|
4
|
-
|
|
5
|
-
import { errorMessageDefault, validateProperty } from '@/utilities/validation';
|
|
6
|
-
|
|
7
|
-
export const getFieldHasError = (errorFromProps: ValidationError, errorFromRef: ValidationError) =>
|
|
8
|
-
errorFromProps !== false || errorFromRef !== false;
|
|
9
|
-
|
|
10
|
-
export const getSelectOptionsFromStrings = (strings: string[]) =>
|
|
11
|
-
strings.map(
|
|
12
|
-
(option) =>
|
|
13
|
-
({
|
|
14
|
-
label: option,
|
|
15
|
-
value: option,
|
|
16
|
-
} as SelectOption)
|
|
17
|
-
);
|
|
18
|
-
|
|
19
|
-
export const getSupportingText = (errorFromProps: ValidationError, errorFromRef: ValidationError) => {
|
|
20
|
-
// error in props takes precedence over validation error
|
|
21
|
-
if (typeof errorFromProps === 'string' && errorFromProps.length > 0) return errorFromProps;
|
|
22
|
-
|
|
23
|
-
return typeof errorFromRef === 'string' && errorFromRef.length > 0 ? errorFromRef : errorMessageDefault;
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
export const handleFieldValidation = ({
|
|
27
|
-
error,
|
|
28
|
-
errorFromProps,
|
|
29
|
-
validators,
|
|
30
|
-
value,
|
|
31
|
-
}: {
|
|
32
|
-
error: Ref<ValidationError>;
|
|
33
|
-
errorFromProps: ValidationError;
|
|
34
|
-
validators?: Validator[];
|
|
35
|
-
value: Ref<string>;
|
|
36
|
-
}) => {
|
|
37
|
-
// error in props takes precedence over validation error
|
|
38
|
-
error.value = errorFromProps;
|
|
39
|
-
|
|
40
|
-
if (!errorFromProps && validators) {
|
|
41
|
-
const validation = validateProperty(value.value, validators);
|
|
42
|
-
|
|
43
|
-
if (!validation.valid) {
|
|
44
|
-
error.value = validation.message;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
};
|
package/dist/utilities/media.ts
DELETED
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import { MEDIA_SLIDE_TYPES, type ListingMedia } from '@/types/ListingMedia';
|
|
2
|
-
import type { VehicleDetail } from '@/types/VehicleDetail';
|
|
3
|
-
|
|
4
|
-
export function getIdFromYoutubeUrl(url: string): string {
|
|
5
|
-
const prefixes = [
|
|
6
|
-
'http://www.youtube.com/v/',
|
|
7
|
-
'https://www.youtube.com/v/',
|
|
8
|
-
'http://www.youtube.com/watch?v=',
|
|
9
|
-
'https://www.youtube.com/watch?v=',
|
|
10
|
-
'http://youtu.be/',
|
|
11
|
-
'https://youtu.be/',
|
|
12
|
-
];
|
|
13
|
-
|
|
14
|
-
let id = url;
|
|
15
|
-
prefixes.forEach((separator) => {
|
|
16
|
-
if (url.includes(separator)) {
|
|
17
|
-
id = url.split(separator).join('');
|
|
18
|
-
}
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
return id;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
export function getListingMediaSlides(vehicle: VehicleDetail): ListingMedia[] {
|
|
25
|
-
const slides: ListingMedia[] = [];
|
|
26
|
-
|
|
27
|
-
// insert at a specific index but also handle cases where the index is out of bounds
|
|
28
|
-
const insertSlideAtIndex = (slide: ListingMedia, index: number) => {
|
|
29
|
-
slides.splice(Math.min(index, slides.length), 0, slide);
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
vehicle.photos.forEach((photo) => {
|
|
33
|
-
slides.push({
|
|
34
|
-
imageUrl: String(photo.url),
|
|
35
|
-
type: MEDIA_SLIDE_TYPES.IMAGE.IMAGE,
|
|
36
|
-
});
|
|
37
|
-
});
|
|
38
|
-
|
|
39
|
-
if (vehicle.floorPlanMediaId) {
|
|
40
|
-
insertSlideAtIndex(
|
|
41
|
-
{
|
|
42
|
-
imageUrl: String(vehicle.floorPlanMediaId),
|
|
43
|
-
type: MEDIA_SLIDE_TYPES.IMAGE.FLOORPLAN,
|
|
44
|
-
},
|
|
45
|
-
1
|
|
46
|
-
);
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
if (vehicle.video) {
|
|
50
|
-
insertSlideAtIndex(
|
|
51
|
-
{
|
|
52
|
-
imageUrl: String(vehicle.video.thumbnail),
|
|
53
|
-
type: MEDIA_SLIDE_TYPES.VIDEO,
|
|
54
|
-
videoUrl: String(vehicle.video.url),
|
|
55
|
-
},
|
|
56
|
-
2
|
|
57
|
-
);
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
if (vehicle.vrUrl) {
|
|
61
|
-
insertSlideAtIndex(
|
|
62
|
-
{
|
|
63
|
-
imageUrl: vehicle.photos?.[0]?.url && String(vehicle.photos[0].url),
|
|
64
|
-
type: MEDIA_SLIDE_TYPES.VR,
|
|
65
|
-
vrUrl: String(vehicle.vrUrl),
|
|
66
|
-
},
|
|
67
|
-
3
|
|
68
|
-
);
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
return slides;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
export function getSlideIndex(slideToFind: ListingMedia, allSlides: ListingMedia[]): number {
|
|
75
|
-
// TODO: find a better way of matching a slide. this is not good.
|
|
76
|
-
return allSlides.findIndex((slide) => slide === slideToFind);
|
|
77
|
-
}
|