vue2-comp-lib 1.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.
Files changed (29) hide show
  1. package/dist/_virtual/_plugin-vue2_normalizer.js +10 -0
  2. package/dist/components/app-button-v2/app-button-v2.vue.d.ts +82 -0
  3. package/dist/components/app-button-v2/app-button-v2.vue.js +21 -0
  4. package/dist/components/app-button-v2/app-button-v2.vue2.js +28 -0
  5. package/dist/components/app-button-v2/index.d.ts +1 -0
  6. package/dist/components/app-loading-dots/app-loading-dots.vue.d.ts +36 -0
  7. package/dist/components/app-loading-dots/app-loading-dots.vue.js +18 -0
  8. package/dist/components/app-loading-dots/app-loading-dots.vue2.js +21 -0
  9. package/dist/components/app-loading-dots/index.d.ts +1 -0
  10. package/dist/components/index.d.ts +2 -0
  11. package/dist/index.d.ts +2 -0
  12. package/dist/index.js +9 -0
  13. package/dist/vue2-comp-lib.css +1 -0
  14. package/package.json +71 -0
  15. package/src/assets/images/glasshive-brand.svg +40 -0
  16. package/src/assets/styles/components.css +1 -0
  17. package/src/assets/styles/main.css +16 -0
  18. package/src/assets/styles/themes/app-button-v2.css +197 -0
  19. package/src/assets/styles/themes/primitives.css +61 -0
  20. package/src/assets/styles/themes/theme-light.css +166 -0
  21. package/src/assets/styles/themes/themes.css +2 -0
  22. package/src/components/app-button-v2/app-button-v2.vue +512 -0
  23. package/src/components/app-button-v2/index.ts +1 -0
  24. package/src/components/app-loading-dots/app-loading-dots.vue +107 -0
  25. package/src/components/app-loading-dots/index.ts +1 -0
  26. package/src/components/index.ts +2 -0
  27. package/src/index.ts +5 -0
  28. package/src/stories/app-button-v2.stories.ts +61 -0
  29. package/src/utils/storybook/create-story.ts +9 -0
@@ -0,0 +1,166 @@
1
+ :root[data-theme="light"] {
2
+ --bg-color: #f4f5f9;
3
+ --text-color: #382153;
4
+
5
+ --color-text-default: var(--main-void-base);
6
+ --color-text-link: var(--main-skyblue-base);
7
+ --color-text-warning: var(--main-vivid-raspberry-base);
8
+ --color-text-subtlest: var(--neutral-silvergray);
9
+ --color-text-subtle: var(--neutral-darkgray);
10
+ --color-text-inverse: var(--neutral-white);
11
+ --color-text-link-presed: var(--main-skyblue-dark);
12
+ --color-text-accent-skyblue: var(--main-skyblue-base);
13
+ --color-text-accent-slatepurple: var(--main-slatepurple-base);
14
+ --color-text-accent-slatepurple-medium: var(--main-slatepurple-medium);
15
+ --color-text-accent-vividraspberry: var(--main-vivid-raspberry-base);
16
+ --color-text-accent-tangerine: var(--main-tangerine-base);
17
+ --color-text-accent-lemon: var(--main-lemon-base);
18
+ --color-text-accent-limegreen: var(--main-limegreen-base);
19
+ --color-text-accent-limegreen-medium: var(--main-limegreen-medium);
20
+ --color-text-accent-andromeda: var(--main-andromeda-base);
21
+ --color-text-accent-andromeda-medium: var(--main-andromeda-medium);
22
+ --color-text-accent-begonia: var(--main-begonia-medium);
23
+ --color-text-accent-eris: var(--main-other-eris);
24
+ --color-text-accent-shire: var(--main-other-shire);
25
+ --color-text-accent-mar: var(--main-other-mar);
26
+ --color-text-accent-dos: var(--main-other-dos);
27
+ --color-text-accent-void-light: var(--main-void-light);
28
+
29
+ --color-background-default: var(--neutral-luna);
30
+ --color-background-secondary: var(--neutral-white);
31
+ --color-background-overlay: var(--overlay-overlay);
32
+ --color-drop-shadow-default: var(--main-void-base);
33
+
34
+ --color-border-field-active: var(--neutral-silvergray);
35
+ --color-border-field-input: var(--main-skyblue-base);
36
+ --color-border-field-error: var(--main-vivid-raspberry-base);
37
+ --color-border-field-hover: var(--neutral-darkgray);
38
+ --color-border-field-focused: var(--main-vivid-raspberry-base);
39
+
40
+ --color-border-divider-table: var(--neutral-brightgray);
41
+ --color-border-divider: var(--neutral-brightgray);
42
+
43
+ --color-border-bold: var(--main-void-base);
44
+
45
+ --color-border-container-hover: var(--main-skyblue-base);
46
+
47
+ --color-border-accent-white: var(--neutral-white);
48
+ --color-border-accent-ghost: var(--neutral-ghost);
49
+ --color-border-accent-silvergray: var(--neutral-silvergray);
50
+ --color-border-accent-skyblue-base: var(--main-skyblue-base);
51
+ --color-border-accent-vividraspberry: var(--main-vivid-raspberry-base);
52
+ --color-border-accent-brightgray: var(--neutral-brightgray);
53
+
54
+ --color-skeleton-base: var(--neutral-brightgray);
55
+ --color-skeleton-dark: var(--neutral-silvergray);
56
+
57
+ --color-fill-field-active: var(--neutral-phantom);
58
+ --color-fill-field-hover: var(--neutral-white);
59
+ --color-fill-field-input: var(--neutral-white);
60
+
61
+ --color-fill-cell: var(--neutral-white);
62
+ --color-fill-cell-hover: var(--main-skyblue-light);
63
+
64
+ --color-fill-options-default: var(--neutral-white);
65
+ --color-fill-options-hover: var(--neutral-brightgray);
66
+ --color-fill-options-selected: var(--main-skyblue-light);
67
+
68
+ --color-fill-accent-limegreen: var(--main-limegreen-base);
69
+ --color-fill-accent-brightgray: var(--neutral-brightgray);
70
+ --color-fill-accent-darkgray: var(--neutral-darkgray);
71
+ --color-fill-accent-vividraspberry: var(--main-vivid-raspberry-base);
72
+ --color-fill-accent-silvergray: var(--neutral-silvergray);
73
+ --color-fill-accent-white: var(--neutral-white);
74
+ --color-fill-accent-skyblue: var(--main-skyblue-base);
75
+ --color-fill-accent-skyblue-medium: var(--main-skyblue-medium);
76
+ --color-fill-accent-slatepurple: var(--main-slatepurple-base);
77
+ --color-fill-accent-slatepurple-light: var(--main-slatepurple-light);
78
+ --color-fill-accent-ghost: var(--neutral-ghost);
79
+ --color-fill-accent-slatepurple-medium: var(--main-slatepurple-medium);
80
+ --color-fill-accent-vividraspberry-medium: var(--main-vivid-raspberry-medium);
81
+ --color-fill-accent-begonia: var(--main-begonia-base);
82
+
83
+ --color-fill-bold: var(--main-void-base);
84
+
85
+ --color-fill-topnav: var(--neutral-luna);
86
+ --color-fill-mainnav: var(--main-void-base);
87
+
88
+ --color-icon-default: var(--main-void-base);
89
+ --color-icon-white: var(--neutral-white);
90
+ --color-icon-skyblue-base: var(--main-skyblue-base);
91
+ --color-icon-slatepurple-base: var(--main-slatepurple-base);
92
+ --color-icon-vividrasbpberry-base: var(--main-vivid-raspberry-base);
93
+ --color-icon-tangerine-base: var(--main-tangerine-base:);
94
+ --color-icon-lemon-base: var(--main-lemon-base);
95
+ --color-icon-limegreen-base: var(--main-limegreen-base);
96
+ --color-icon-andromeda-base: var(--main-andromeda-base);
97
+ --color-icon-begonia-base: var(--main-begonia-medium);
98
+ --color-icon-eris: var(--main-other-eris);
99
+ --color-icon-shire: var(--main-other-shire);
100
+ --color-icon-mar: var(--main-other-mar);
101
+ --color-icon-dos: var(--main-other-dos);
102
+ --color-icon-phantom: var(--neutral-phantom);
103
+ --color-icon-brightgray: var(--neutral-brightgray);
104
+ --color-icon-ghost: var(--neutral-ghost);
105
+ --color-icon-silvergray: var(--neutral-silvergray);
106
+ --color-icon-darkgray: var(--neutral-darkgray);
107
+ --color-icon-void: var(--main-void-base);
108
+
109
+
110
+ /* Created new semantic colors */
111
+ --color-background-scrollbar: var(--neutral-brightgray);
112
+ --color-background-button-primary: var(--main-skyblue-base);
113
+ --color-background-button-primary-hover: var(--main-skyblue-dark);
114
+ --color-box-shadow-dropdown: var(--main-slatepurple-light);
115
+ --color-border-button-secondary: var(--main-skyblue-base);
116
+ --color-text-button-secondary: var(--main-skyblue-base);
117
+ --color-background-button-secondary-hover: var(--main-skyblue-base);
118
+ --color-text-button-secondary-hover: var(--neutral-white);
119
+ --color-border-button-alternate: var(--neutral-silvergray);
120
+ --color-background-button-close: var(--neutral-sideral);
121
+ --color-background-button-close-hover: var(--neutral-white);
122
+ --color-border-button-close: var(--neutral-white);
123
+ --color-border-button-close-hover: var(--main-vivid-raspberry-base);
124
+ --color-background-button-alternate-hover: var(--neutral-brightgray);
125
+ --color-text-accent-tangerine-medium: var(--main-tangerine-medium);
126
+ --color-fill-accent-tangerine-light: var(--main-tangerine-light);
127
+ --color-fill-accent-tangerine: var(--main-tangerine-base);
128
+ --color-fill-accent-tangerine-medium: var(--main-tangerine-medium);
129
+ --color-icon-tangerine-medium: var(--main-tangerine-medium);
130
+ --color-fill-accent-lemon: var(--main-lemon-base);
131
+ --color-fill-accent-other-mar: var(--main-other-mar);
132
+ --color-text-button-alternate: var(--main-void-base);
133
+ --color-text-accent-vader: var(--neutral-vader);
134
+ --color-fill-accent-vividraspberry-light: var(--main-vivid-raspberry-light);
135
+ --color-background-scrollbar-default: var(--neutral-silvergray);
136
+ --color-drop-shadow-topnav: var(--main-andromeda-light);
137
+ --color-border-button-cancel: var(--neutral-darkgray);
138
+ --color-border-button-cancel-hover: var(--neutral-brightgray);
139
+ --color-fill-accent-skyblue-special-use: var(--main-skyblue-special-use);
140
+ --color-fill-accent-skyblue-light: var(--main-skyblue-light);
141
+ --color-fill-accent-limegreen-light: var(--main-limegreen-light);
142
+ --color-background-button-row-action: var(--main-void-base);
143
+ --color-fill-cell-delete-overlay: var(--main-vivid-raspberry-light);
144
+ --color-fill-cell-delete: var(--main-vivid-raspberry-base);
145
+ --color-fill-cell-selected: var(--main-lemon-light);
146
+ --color-text-accent-ghost: var(--neutral-ghost);
147
+ --color-text-button-remove: var(--main-vivid-raspberry-base);
148
+ --color-background-button-remove-hover: var(--main-vivid-raspberry-light);
149
+ --color-text-button-primary: var(--neutral-white);
150
+ --color-background-button-delete-hover: var(--main-vivid-raspberry-medium);
151
+ --color-background-button-delete: var(--main-vivid-raspberry-base);
152
+ --color-border-accent-slatepurple: var(--main-slatepurple-base);
153
+ --color-background-button-other: var(--neutral-phantom);
154
+ --color-border-button-other: var(--neutral-ghost);
155
+ --color-border-button-other-hover: var(--neutral-darkgray);
156
+ --color-text-button-other: var(--main-skyblue-base);
157
+ --color-text-accent-andromeda-light: var(--main-andromeda-light);
158
+ --color-fill-accent-phantom: var(--neutral-phantom);
159
+ --color-main-skyblue-light: var(--main-skyblue-light);
160
+ --color-icon-begonia-base: var(--main-begonia-medium);
161
+ --color-fill-cell-transparent: #f8f5ffed;
162
+ --color-border-accent-limegreen: var(--main-limegreen-base);
163
+ --color-fill-accent-lemon-light: var(--main-lemon-light);
164
+ --color-border-accent-darkgray: var(--neutral-darkgray);
165
+ --color-background-button-hover: var(--neutral-ghost);
166
+ }
@@ -0,0 +1,2 @@
1
+ @import './primitives.css';
2
+ @import './theme-light.css';
@@ -0,0 +1,512 @@
1
+ <template>
2
+ <button
3
+ :type="type"
4
+ :disabled="disabled || loading"
5
+ class="app-button-v2"
6
+ :class="[
7
+ !unstyled ? variantClass : null,
8
+ !unstyled ? colorClass : null,
9
+ ]"
10
+ :style="buttonStyle"
11
+ v-bind="$attrs"
12
+ v-on="$listeners"
13
+ >
14
+ <span class="app-button-v2-label">
15
+ <slot />
16
+ <app-loading-dots
17
+ v-if="loading"
18
+ :fill="loadingIconFill"
19
+ :size="loadingIconSize"
20
+ :dot-size="loadingIconDotSize"
21
+ class="app-button-v2-loading-icon"
22
+ />
23
+ </span>
24
+ </button>
25
+ </template>
26
+
27
+ <script setup lang="ts">
28
+ import { computed } from 'vue';
29
+ import AppLoadingDots from '@/components/app-loading-dots/app-loading-dots.vue';
30
+
31
+ export type AppButtonV2Type = HTMLButtonElement['type'];
32
+
33
+ export type AppButtonV2Variant = 'primary' | 'secondary';
34
+
35
+ export type AppButtonV2Color =
36
+ | 'sky-blue'
37
+ | 'slate-purple'
38
+ | 'ghost'
39
+ | 'vivid-raspberry'
40
+ | 'neptune'
41
+ | 'supernova'
42
+ | 'sea-foam'
43
+ | 'white'
44
+ | 'show-more'
45
+ | 'phantom';
46
+
47
+ interface Props {
48
+ type?: AppButtonV2Type;
49
+ variant?: AppButtonV2Variant;
50
+ color?: AppButtonV2Color;
51
+ disabled?: boolean;
52
+ loading?: boolean;
53
+ loadingIconFill?: string;
54
+ loadingIconSize?: string;
55
+ loadingIconDotSize?: string;
56
+ gap?: string;
57
+ unstyled?: boolean;
58
+ }
59
+
60
+ const props = withDefaults(defineProps<Props>(), {
61
+ type: 'button',
62
+ variant: 'primary',
63
+ color: 'sky-blue',
64
+ disabled: false,
65
+ loading: false,
66
+ loadingIconFill: 'currentColor',
67
+ loadingIconSize: '16px',
68
+ loadingIconDotSize: '8px',
69
+ gap: '8px',
70
+ unstyled: false,
71
+ });
72
+
73
+ const variantClass = computed(() => `app-button-${props.variant}`);
74
+
75
+ const colorClass = computed(() => `app-button-${props.color}`);
76
+
77
+ const buttonStyle = computed(
78
+ () =>
79
+ ({
80
+ '--app-button-v2-gap': props.gap,
81
+ }) as Record<string, string>,
82
+ );
83
+ </script>
84
+
85
+ <style scoped>
86
+ button.app-button-v2 {
87
+ color: var(--app-button-v2-text-color);
88
+ }
89
+
90
+ .app-button-v2 {
91
+ --app-button-v2-background-color: unset;
92
+ --app-button-v2-text-color: unset;
93
+ --app-button-v2-outline-color: unset;
94
+ --app-button-v2-outline-width: 0px;
95
+ --app-button-v2-border-width: 2px;
96
+ --app-button-v2-border-color: unset;
97
+ --app-button-v2-padding-x: 24px;
98
+ --app-button-v2-padding-y: 10px;
99
+ --app-button-v2-padding-offset: -2px;
100
+ --app-button-v2-border-radius: 60px;
101
+ --app-button-v2-transition: 300ms ease-out;
102
+
103
+ position: relative;
104
+ display: flex;
105
+ align-items: center;
106
+ justify-content: center;
107
+ padding: calc(
108
+ var(--app-button-v2-padding-y) + var(--app-button-v2-padding-offset)
109
+ )
110
+ calc(
111
+ var(--app-button-v2-padding-x) + var(--app-button-v2-padding-offset)
112
+ );
113
+ border-radius: var(--app-button-v2-border-radius);
114
+ font-size: 14px;
115
+ font-weight: 500;
116
+ border: var(--app-button-v2-border-width) solid
117
+ var(--app-button-v2-border-color);
118
+ background: var(--app-button-v2-background-color);
119
+ outline: var(--app-button-v2-outline-width) solid
120
+ var(--app-button-v2-outline-color);
121
+ outline-offset: 1px;
122
+ opacity: 1;
123
+ z-index: 0;
124
+
125
+ transition:
126
+ background var(--app-button-v2-transition),
127
+ color var(--app-button-v2-transition),
128
+ border var(--app-button-v2-transition),
129
+ opacity var(--app-button-v2-transition);
130
+
131
+ > * {
132
+ z-index: 1;
133
+ }
134
+ }
135
+
136
+ .app-button-v2 .app-button-v2-label {
137
+ display: flex;
138
+ align-items: center;
139
+ justify-content: center;
140
+ gap: var(--app-button-v2-gap);
141
+ }
142
+
143
+ .app-button-v2:disabled {
144
+ opacity: 0.4;
145
+ }
146
+
147
+ .app-button-v2:focus {
148
+ /* Currently disabled because no other standard components have focus styles */
149
+ --app-button-v2-outline-width: 0px;
150
+ }
151
+
152
+ /* Gradient Buttons Base Styles */
153
+ .app-button-v2.app-button-primary.app-button-neptune,
154
+ .app-button-v2.app-button-primary.app-button-supernova {
155
+ --app-button-v2-padding-offset: -2px;
156
+ }
157
+
158
+ .app-button-v2.app-button-primary.app-button-neptune,
159
+ .app-button-v2.app-button-primary.app-button-supernova,
160
+ .app-button-v2.app-button-primary.app-button-sea-foam {
161
+ &::after {
162
+ content: '';
163
+ position: absolute;
164
+ top: 0;
165
+ left: 0;
166
+ width: 100%;
167
+ height: 100%;
168
+ border-radius: inherit;
169
+ opacity: 0;
170
+ z-index: 0;
171
+
172
+ transition: opacity var(--app-button-v2-transition);
173
+ }
174
+
175
+ &:not(:disabled):hover::after {
176
+ opacity: 1;
177
+ }
178
+ }
179
+
180
+ /* Primary */
181
+
182
+ /* Sky Blue */
183
+
184
+ .app-button-v2.app-button-primary.app-button-sky-blue {
185
+ --app-button-v2-background-color: var(
186
+ --color-background-button-primary-sky-blue
187
+ );
188
+ --app-button-v2-text-color: var(--color-text-button-primary-sky-blue);
189
+ --app-button-v2-border-color: var(--color-border-button-primary-sky-blue);
190
+
191
+ &:not(:disabled):hover {
192
+ --app-button-v2-background-color: var(
193
+ --color-background-button-hover-primary-sky-blue
194
+ );
195
+ --app-button-v2-text-color: var(
196
+ --color-text-button-hover-primary-sky-blue
197
+ );
198
+ --app-button-v2-border-color: var(
199
+ --color-border-button-hover-primary-sky-blue
200
+ );
201
+ }
202
+ }
203
+
204
+ /* Slate Purple */
205
+
206
+ .app-button-v2.app-button-primary.app-button-slate-purple {
207
+ --app-button-v2-background-color: var(
208
+ --color-background-button-primary-slate-purple
209
+ );
210
+ --app-button-v2-text-color: var(--color-text-button-primary-slate-purple);
211
+ --app-button-v2-border-color: var(
212
+ --color-border-button-primary-slate-purple
213
+ );
214
+
215
+ &:not(:disabled):hover {
216
+ --app-button-v2-background-color: var(
217
+ --color-background-button-hover-primary-slate-purple
218
+ );
219
+ --app-button-v2-text-color: var(
220
+ --color-text-button-hover-primary-slate-purple
221
+ );
222
+ --app-button-v2-border-color: var(
223
+ --color-border-button-hover-primary-slate-purple
224
+ );
225
+ }
226
+ }
227
+
228
+ /* Ghost */
229
+
230
+ .app-button-v2.app-button-primary.app-button-ghost {
231
+ --app-button-v2-background-color: var(
232
+ --color-background-button-primary-ghost
233
+ );
234
+ --app-button-v2-text-color: var(--color-text-button-primary-ghost);
235
+ --app-button-v2-border-color: var(--color-border-button-primary-ghost);
236
+
237
+ &:not(:disabled):hover {
238
+ --app-button-v2-background-color: var(
239
+ --color-background-button-hover-primary-ghost
240
+ );
241
+ --app-button-v2-text-color: var(
242
+ --color-text-button-hover-primary-ghost
243
+ );
244
+ --app-button-v2-border-color: var(
245
+ --color-border-button-hover-primary-ghost
246
+ );
247
+ }
248
+ }
249
+
250
+ /* Vivid Raspberry */
251
+
252
+ .app-button-v2.app-button-primary.app-button-vivid-raspberry {
253
+ --app-button-v2-background-color: var(
254
+ --color-background-button-primary-vivid-raspberry
255
+ );
256
+ --app-button-v2-text-color: var(
257
+ --color-text-button-primary-vivid-raspberry
258
+ );
259
+ --app-button-v2-border-color: var(
260
+ --color-border-button-primary-vivid-raspberry
261
+ );
262
+
263
+ &:not(:disabled):hover {
264
+ --app-button-v2-background-color: var(
265
+ --color-background-button-hover-primary-vivid-raspberry
266
+ );
267
+ --app-button-v2-text-color: var(
268
+ --color-text-button-hover-primary-vivid-raspberry
269
+ );
270
+ --app-button-v2-border-color: var(
271
+ --color-border-button-hover-primary-vivid-raspberry
272
+ );
273
+ }
274
+ }
275
+
276
+ /* Neptune */
277
+
278
+ .app-button-v2.app-button-primary.app-button-neptune {
279
+ --app-button-v2-background-color: var(
280
+ --color-background-button-primary-neptune
281
+ );
282
+ --app-button-v2-text-color: var(--color-text-button-primary-neptune);
283
+ --app-button-v2-border-color: var(--color-border-button-primary-neptune);
284
+
285
+ &:not(:disabled):hover {
286
+ --app-button-v2-text-color: var(
287
+ --color-text-button-hover-primary-neptune
288
+ );
289
+ --app-button-v2-border-color: var(
290
+ --color-border-button-hover-primary-neptune
291
+ );
292
+ }
293
+
294
+ &::after {
295
+ background: var(--color-background-button-hover-primary-neptune);
296
+ }
297
+ }
298
+
299
+ /* Supernova */
300
+
301
+ .app-button-v2.app-button-primary.app-button-supernova {
302
+ --app-button-v2-background-color: var(
303
+ --color-background-button-primary-supernova
304
+ );
305
+ --app-button-v2-text-color: var(--color-text-button-primary-supernova);
306
+ --app-button-v2-border-color: var(--color-border-button-primary-supernova);
307
+
308
+ &:not(:disabled):hover {
309
+ --app-button-v2-background-color: var(
310
+ --color-background-button-hover-primary-supernova
311
+ );
312
+ --app-button-v2-text-color: var(
313
+ --color-text-button-hover-primary-supernova
314
+ );
315
+ --app-button-v2-border-color: var(
316
+ --color-border-button-hover-primary-supernova
317
+ );
318
+ }
319
+
320
+ &::after {
321
+ background: var(--color-background-button-hover-primary-supernova);
322
+ }
323
+ }
324
+
325
+ /* Sea Foam */
326
+
327
+ .app-button-v2.app-button-primary.app-button-sea-foam {
328
+ --app-button-v2-background-color: var(
329
+ --color-background-button-primary-sea-foam
330
+ );
331
+ --app-button-v2-text-color: var(--color-text-button-primary-sea-foam);
332
+ --app-button-v2-border-color: var(--color-border-button-primary-sea-foam);
333
+
334
+ --app-button-v2-border-width: 0px;
335
+ --app-button-v2-padding-offset: 0px;
336
+
337
+ &:not(:disabled):hover {
338
+ --app-button-v2-text-color: var(
339
+ --color-text-button-hover-primary-sea-foam
340
+ );
341
+ --app-button-v2-border-color: var(
342
+ --color-border-button-hover-primary-sea-foam
343
+ );
344
+ }
345
+
346
+ &::after {
347
+ background: var(--color-background-button-hover-primary-sea-foam);
348
+ }
349
+ }
350
+
351
+ /* White */
352
+
353
+ .app-button-v2.app-button-primary.app-button-white {
354
+ --app-button-v2-background-color: var(
355
+ --color-background-button-primary-white
356
+ );
357
+ --app-button-v2-text-color: var(--color-text-button-primary-white);
358
+ --app-button-v2-border-color: var(--color-border-button-primary-white);
359
+
360
+ &:not(:disabled):hover {
361
+ --app-button-v2-background-color: var(
362
+ --color-background-button-hover-primary-white
363
+ );
364
+ --app-button-v2-text-color: var(
365
+ --color-text-button-hover-primary-white
366
+ );
367
+ --app-button-v2-border-color: var(
368
+ --color-border-button-hover-primary-white
369
+ );
370
+ }
371
+ }
372
+
373
+ /* Secondary */
374
+
375
+ /* Sky Blue */
376
+
377
+ .app-button-v2.app-button-secondary.app-button-sky-blue {
378
+ --app-button-v2-background-color: var(
379
+ --color-background-button-secondary-sky-blue
380
+ );
381
+ --app-button-v2-text-color: var(--color-text-button-secondary-sky-blue);
382
+ --app-button-v2-border-color: var(--color-border-button-secondary-sky-blue);
383
+
384
+ &:not(:disabled):hover {
385
+ --app-button-v2-background-color: var(
386
+ --color-background-button-hover-secondary-sky-blue
387
+ );
388
+ --app-button-v2-text-color: var(
389
+ --color-text-button-hover-secondary-sky-blue
390
+ );
391
+ --app-button-v2-border-color: var(
392
+ --color-border-button-hover-secondary-sky-blue
393
+ );
394
+ }
395
+ }
396
+
397
+ /* White */
398
+
399
+ .app-button-v2.app-button-secondary.app-button-white {
400
+ --app-button-v2-background-color: var(
401
+ --color-background-button-secondary-white
402
+ );
403
+ --app-button-v2-text-color: var(--color-text-button-secondary-white);
404
+ --app-button-v2-border-color: var(--color-border-button-secondary-white);
405
+
406
+ &:not(:disabled):hover {
407
+ --app-button-v2-background-color: var(
408
+ --color-background-button-hover-secondary-white
409
+ );
410
+ --app-button-v2-text-color: var(
411
+ --color-text-button-hover-secondary-white
412
+ );
413
+ --app-button-v2-border-color: var(
414
+ --color-border-button-hover-secondary-white
415
+ );
416
+ }
417
+ }
418
+
419
+ /* Ghost */
420
+
421
+ .app-button-v2.app-button-secondary.app-button-ghost {
422
+ --app-button-v2-background-color: var(
423
+ --color-background-button-secondary-ghost
424
+ );
425
+ --app-button-v2-text-color: var(--color-text-button-secondary-ghost);
426
+ --app-button-v2-border-color: var(--color-border-button-secondary-ghost);
427
+
428
+ &:not(:disabled):hover {
429
+ --app-button-v2-background-color: var(
430
+ --color-background-button-hover-secondary-ghost
431
+ );
432
+ --app-button-v2-text-color: var(
433
+ --color-text-button-hover-secondary-ghost
434
+ );
435
+ --app-button-v2-border-color: var(
436
+ --color-border-button-hover-secondary-ghost
437
+ );
438
+ }
439
+ }
440
+
441
+ /* Show More */
442
+
443
+ .app-button-v2.app-button-secondary.app-button-show-more {
444
+ --app-button-v2-background-color: var(
445
+ --color-background-button-secondary-show-more
446
+ );
447
+ --app-button-v2-text-color: var(--color-text-button-secondary-show-more);
448
+ --app-button-v2-border-color: var(
449
+ --color-border-button-secondary-show-more
450
+ );
451
+
452
+ &:not(:disabled):hover {
453
+ --app-button-v2-background-color: var(
454
+ --color-background-button-hover-secondary-show-more
455
+ );
456
+ --app-button-v2-text-color: var(
457
+ --color-text-button-hover-secondary-show-more
458
+ );
459
+ --app-button-v2-border-color: var(
460
+ --color-border-button-hover-secondary-show-more
461
+ );
462
+ }
463
+ }
464
+
465
+ /* Vivid Raspberry */
466
+
467
+ .app-button-v2.app-button-secondary.app-button-vivid-raspberry {
468
+ --app-button-v2-background-color: var(
469
+ --color-background-button-secondary-vivid-raspberry
470
+ );
471
+ --app-button-v2-text-color: var(
472
+ --color-text-button-secondary-vivid-raspberry
473
+ );
474
+ --app-button-v2-border-color: var(
475
+ --color-border-button-secondary-vivid-raspberry
476
+ );
477
+
478
+ &:not(:disabled):hover {
479
+ --app-button-v2-background-color: var(
480
+ --color-background-button-hover-secondary-vivid-raspberry
481
+ );
482
+ --app-button-v2-text-color: var(
483
+ --color-text-button-hover-secondary-vivid-raspberry
484
+ );
485
+ --app-button-v2-border-color: var(
486
+ --color-border-button-hover-secondary-vivid-raspberry
487
+ );
488
+ }
489
+ }
490
+
491
+ /* Phantom */
492
+
493
+ .app-button-v2.app-button-secondary.app-button-phantom {
494
+ --app-button-v2-background-color: var(
495
+ --color-background-button-secondary-phantom
496
+ );
497
+ --app-button-v2-text-color: var(--color-text-button-secondary-phantom);
498
+ --app-button-v2-border-color: var(--color-border-button-secondary-phantom);
499
+
500
+ &:not(:disabled):hover {
501
+ --app-button-v2-background-color: var(
502
+ --color-background-button-hover-secondary-phantom
503
+ );
504
+ --app-button-v2-text-color: var(
505
+ --color-text-button-hover-secondary-phantom
506
+ );
507
+ --app-button-v2-border-color: var(
508
+ --color-border-button-hover-secondary-phantom
509
+ );
510
+ }
511
+ }
512
+ </style>
@@ -0,0 +1 @@
1
+ export { default as AppButtonV2 } from './app-button-v2.vue';