lau-ecom-design-system 1.0.17 → 1.0.18
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/lau-ecom-design-system.esm.css +13 -1
- package/dist/lau-ecom-design-system.esm.js +1578 -258
- package/dist/lau-ecom-design-system.min.css +13 -1
- package/dist/lau-ecom-design-system.min.js +1 -1
- package/dist/lau-ecom-design-system.ssr.css +13 -1
- package/dist/lau-ecom-design-system.ssr.js +1492 -211
- package/dist/style.css +190 -19
- package/package.json +80 -80
- package/src/components/LauEcomBannerCookies/LauEcomBannerCookies.vue +8 -39
- package/src/components/LauEcomBannerCookies/LauEcomBannerCookiesConfig.vue +8 -46
- package/src/components/LauEcomBannerCookies/LauEcomBannerCookiesConfigAccordion.vue +2 -13
- package/src/components/LauEcomButton/LauEcomButton.vue +137 -150
- package/src/components/LauEcomCheckbox/LauEcomCheckbox.vue +143 -148
- package/src/components/LauEcomDisclamer/LauEcomDisclamer.vue +79 -82
- package/src/components/LauEcomDropdown/LauEcomDropdown.vue +203 -203
- package/src/components/LauEcomIcon/LauEcomCoreIconBook.vue +26 -29
- package/src/components/LauEcomIcon/LauEcomCoreIconFileCode.vue +28 -31
- package/src/components/LauEcomIcon/LauEcomUpcIconCertificate.vue +28 -31
- package/src/components/LauEcomIcon/LauEcomUpcIconCheck.vue +26 -29
- package/src/components/LauEcomIcon/LauEcomUpcIconCheckCircle.vue +28 -31
- package/src/components/LauEcomIcon/LauEcomUpcIconCreditCard.vue +28 -31
- package/src/components/LauEcomIcon/LauEcomUpcIconExclamationCircle.vue +28 -31
- package/src/components/LauEcomIcon/LauEcomUpcIconExclamationTriangle.vue +28 -31
- package/src/components/LauEcomIcon/LauEcomUpcIconInfoCircle.vue +26 -29
- package/src/components/LauEcomIcon/LauEcomUpcIconNavArrow.vue +26 -28
- package/src/components/LauEcomIcon/LauEcomUpcIconNavCheckmark.vue +26 -29
- package/src/components/LauEcomInput/LauEcomInput.vue +207 -208
- package/src/components/LauEcomLoaderPage/LauEcomLoaderPage.vue +2 -28
- package/src/components/LauEcomRadioButton/LauEcomRadioButton.vue +103 -115
- package/src/components/LauEcomRtb/LauEcomRtb.vue +71 -92
- package/src/components/LauEcomStepbar/LauEcomStepbar.vue +43 -49
- package/src/components/LauEcomStepbar/LauEcomStepbarItem.vue +128 -172
- package/src/components/LauEcomSwitch/LauEcomSwitch.vue +9 -20
- package/src/components/LauEcomTab/LauEcomTab.vue +82 -113
- package/src/components/LauEcomTextButton/LauEcomTextButton.vue +13 -75
@@ -1,11 +1,10 @@
|
|
1
1
|
<script lang="ts" setup>
|
2
|
-
import {
|
2
|
+
import { ref } from "vue";
|
3
3
|
import LauEcomButton from "../LauEcomButton/LauEcomButton.vue";
|
4
4
|
import { LauEcomButtonType } from "../LauEcomButton/types";
|
5
5
|
import { LauEcomCoreIconNavClose } from "../LauEcomIcon";
|
6
6
|
import LauEcomBannerCookiesConfigAccordion from "./LauEcomBannerCookiesConfigAccordion.vue";
|
7
7
|
import { CategoryCookie } from "./types";
|
8
|
-
import { LauEcomInstance } from "../../enums";
|
9
8
|
import {
|
10
9
|
acceptAllCookies,
|
11
10
|
acceptCookiesSelected,
|
@@ -16,12 +15,10 @@ import {
|
|
16
15
|
|
17
16
|
interface Props {
|
18
17
|
categoryCookies?: CategoryCookie[] | null;
|
19
|
-
instance?: LauEcomInstance;
|
20
18
|
}
|
21
19
|
|
22
20
|
const props = withDefaults(defineProps<Props>(), {
|
23
21
|
categoryCookies: null,
|
24
|
-
instance: LauEcomInstance.Upc,
|
25
22
|
});
|
26
23
|
|
27
24
|
const items = ref(props.categoryCookies);
|
@@ -33,31 +30,6 @@ const emit = defineEmits([
|
|
33
30
|
"onAcceptAll",
|
34
31
|
]);
|
35
32
|
|
36
|
-
const bannerCookiesConfigClasses = computed(() => {
|
37
|
-
return {
|
38
|
-
"lau-ecom-banner-cookies-config": true,
|
39
|
-
"lau-ecom-banner-cookies-config--upc":
|
40
|
-
props.instance === LauEcomInstance.Upc,
|
41
|
-
"lau-ecom-banner-cookies-config--cib":
|
42
|
-
props.instance === LauEcomInstance.Cibertec,
|
43
|
-
};
|
44
|
-
});
|
45
|
-
|
46
|
-
const configCookiesTitleClasses = computed(() => {
|
47
|
-
return {
|
48
|
-
"upc-font-subtitle-03-20px": props.instance === LauEcomInstance.Upc,
|
49
|
-
"cbt-font-subtitle-03-20px": props.instance === LauEcomInstance.Cibertec,
|
50
|
-
};
|
51
|
-
});
|
52
|
-
|
53
|
-
const configHeadClasses = computed(() => {
|
54
|
-
return {
|
55
|
-
"lau-ecom-config-head": true,
|
56
|
-
"lau-ecom-config-head--upc": props.instance === LauEcomInstance.Upc,
|
57
|
-
"lau-ecom-config-head--cbt": props.instance === LauEcomInstance.Cibertec,
|
58
|
-
};
|
59
|
-
});
|
60
|
-
|
61
33
|
const handleCloseConfig = () => {
|
62
34
|
emit("onClose");
|
63
35
|
};
|
@@ -100,9 +72,11 @@ const handleAcceptAll = () => {
|
|
100
72
|
</script>
|
101
73
|
|
102
74
|
<template>
|
103
|
-
<div
|
104
|
-
|
105
|
-
|
75
|
+
<div
|
76
|
+
class="lau-ecom-banner-cookies-config lau-ecom-banner-cookies-config--upc"
|
77
|
+
>
|
78
|
+
<div class="lau-ecom-config-head lau-ecom-config-head--upc">
|
79
|
+
<p class="upc-font-subtitle-03-20px">Configuracion de cookies</p>
|
106
80
|
<button @click="handleCloseConfig">
|
107
81
|
<span><LauEcomCoreIconNavClose /></span>
|
108
82
|
</button>
|
@@ -113,12 +87,10 @@ const handleAcceptAll = () => {
|
|
113
87
|
:key="`cookie-config-${index + 1}`"
|
114
88
|
v-model="item.isChecked"
|
115
89
|
:category-cookie="item"
|
116
|
-
:instance="instance!"
|
117
90
|
/>
|
118
91
|
</div>
|
119
92
|
<div class="lau-ecom-banner-cookies-buttons">
|
120
93
|
<LauEcomButton
|
121
|
-
:instance="instance"
|
122
94
|
class="!dsEcom-w-full mobiles:dsEcom-order-last"
|
123
95
|
:type="LauEcomButtonType.Secondary"
|
124
96
|
@on-click="handleReject"
|
@@ -126,7 +98,6 @@ const handleAcceptAll = () => {
|
|
126
98
|
Rechazar
|
127
99
|
</LauEcomButton>
|
128
100
|
<LauEcomButton
|
129
|
-
:instance="instance"
|
130
101
|
class="!dsEcom-w-full"
|
131
102
|
:type="LauEcomButtonType.Secondary"
|
132
103
|
@on-click="handleAcceptSelected"
|
@@ -134,7 +105,6 @@ const handleAcceptAll = () => {
|
|
134
105
|
Aceptar seleccionadas
|
135
106
|
</LauEcomButton>
|
136
107
|
<LauEcomButton
|
137
|
-
:instance="instance"
|
138
108
|
class="!dsEcom-w-full mobiles:dsEcom-order-first"
|
139
109
|
@on-click="handleAcceptAll"
|
140
110
|
>
|
@@ -166,11 +136,7 @@ const handleAcceptAll = () => {
|
|
166
136
|
}
|
167
137
|
|
168
138
|
.lau-ecom-banner-cookies-config--upc {
|
169
|
-
@apply dsEcom-text-
|
170
|
-
}
|
171
|
-
|
172
|
-
.lau-ecom-banner-cookies-config--cib {
|
173
|
-
@apply dsEcom-text-color-cbt-color-neutral-100;
|
139
|
+
@apply dsEcom-text-neutral-100;
|
174
140
|
}
|
175
141
|
|
176
142
|
.lau-ecom-config-head {
|
@@ -180,11 +146,7 @@ const handleAcceptAll = () => {
|
|
180
146
|
}
|
181
147
|
|
182
148
|
.lau-ecom-config-head--upc {
|
183
|
-
@apply dsEcom-text-
|
184
|
-
}
|
185
|
-
|
186
|
-
.lau-ecom-config-head--cbt {
|
187
|
-
@apply dsEcom-text-cbt-astro-blue-80;
|
149
|
+
@apply dsEcom-text-secondary-60;
|
188
150
|
}
|
189
151
|
|
190
152
|
.lau-ecom-banner-cookies-buttons {
|
@@ -3,15 +3,12 @@ import { computed, ref } from "vue";
|
|
3
3
|
import LauEcomUpcIconNavArrow from "../LauEcomIcon/LauEcomUpcIconNavArrow.vue";
|
4
4
|
import LauEcomSwitch from "../LauEcomSwitch/LauEcomSwitch.vue";
|
5
5
|
import { CategoryCookie } from "./types";
|
6
|
-
import { LauEcomInstance } from "../../enums";
|
7
6
|
|
8
7
|
interface Props {
|
9
|
-
instance: LauEcomInstance;
|
10
8
|
categoryCookie: CategoryCookie;
|
11
9
|
}
|
12
10
|
|
13
|
-
|
14
|
-
instance: LauEcomInstance.Upc,
|
11
|
+
withDefaults(defineProps<Props>(), {
|
15
12
|
categoryCookie: () => {
|
16
13
|
return {
|
17
14
|
title: "Cookie",
|
@@ -36,13 +33,6 @@ const handleToggle = () => {
|
|
36
33
|
const iconClass = computed(() => {
|
37
34
|
return isOpen.value ? "dsEcom-rotate-0" : "dsEcom-rotate-180";
|
38
35
|
});
|
39
|
-
|
40
|
-
const titleClasses = computed(() => {
|
41
|
-
return {
|
42
|
-
"upc-font-subtitle-03-20px": props.instance === LauEcomInstance.Upc,
|
43
|
-
"cbt-font-subtitle-03-20px": props.instance === LauEcomInstance.Cibertec,
|
44
|
-
};
|
45
|
-
});
|
46
36
|
</script>
|
47
37
|
|
48
38
|
<template>
|
@@ -53,13 +43,12 @@ const titleClasses = computed(() => {
|
|
53
43
|
@click="handleClickAccordion"
|
54
44
|
>
|
55
45
|
<span :class="iconClass"><LauEcomUpcIconNavArrow /></span>
|
56
|
-
<p
|
46
|
+
<p class="upc-font-subtitle-03-20px">
|
57
47
|
{{ categoryCookie.title }}
|
58
48
|
</p>
|
59
49
|
</div>
|
60
50
|
<LauEcomSwitch
|
61
51
|
v-model="isChecked"
|
62
|
-
:instance="instance"
|
63
52
|
:isDisabled="categoryCookie.isDisabled"
|
64
53
|
@on-toggle="handleToggle"
|
65
54
|
/>
|
@@ -1,150 +1,137 @@
|
|
1
|
-
<script lang="ts" setup>
|
2
|
-
import { computed
|
3
|
-
import { LauEcomUpcIconNavArrow } from "../LauEcomIcon";
|
4
|
-
import { LauEcomButtonType } from "./types";
|
5
|
-
import { LauEcomSize } from "../../enums";
|
6
|
-
|
7
|
-
const props = withDefaults(
|
8
|
-
defineProps<{
|
9
|
-
type?: LauEcomButtonType;
|
10
|
-
size?: LauEcomSize;
|
11
|
-
isDisabled?: boolean;
|
12
|
-
hasArrow?: boolean;
|
13
|
-
}>(),
|
14
|
-
{
|
15
|
-
text: "Button Text",
|
16
|
-
type: LauEcomButtonType.Primary,
|
17
|
-
size: LauEcomSize.lg,
|
18
|
-
isDisabled: false,
|
19
|
-
hasArrow: false,
|
20
|
-
},
|
21
|
-
);
|
22
|
-
|
23
|
-
const emit = defineEmits(["onClick"]);
|
24
|
-
|
25
|
-
const
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
"lau-ecom-button
|
30
|
-
|
31
|
-
"lau-ecom-button--secondary-upc":
|
32
|
-
|
33
|
-
"lau-ecom-button--large": props.size === LauEcomSize.lg,
|
34
|
-
"lau-ecom-button--medium": props.size === LauEcomSize.md,
|
35
|
-
"lau-ecom-button--disabled":
|
36
|
-
props.type === LauEcomButtonType.Primary && props.isDisabled,
|
37
|
-
};
|
38
|
-
});
|
39
|
-
|
40
|
-
const iconClasses = computed(() => {
|
41
|
-
return [
|
42
|
-
`lau-ecom-icon-button${props.type === LauEcomButtonType.Secondary ?
|
43
|
-
]
|
44
|
-
})
|
45
|
-
|
46
|
-
const handleClick = () => {
|
47
|
-
emit("onClick");
|
48
|
-
};
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
dsEcom-
|
79
|
-
dsEcom-
|
80
|
-
dsEcom-
|
81
|
-
dsEcom-
|
82
|
-
dsEcom-border-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
dsEcom-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
dsEcom-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
}
|
139
|
-
|
140
|
-
.lau-ecom-icon-button {
|
141
|
-
@apply
|
142
|
-
dsEcom-fill-neutral-10
|
143
|
-
}
|
144
|
-
|
145
|
-
.lau-ecom-icon-button-secondary {
|
146
|
-
@apply dsEcom-fill-primary-60
|
147
|
-
hover:dsEcom-fill-primary-70
|
148
|
-
active:dsEcom-fill-primary-80
|
149
|
-
}
|
150
|
-
</style>
|
1
|
+
<script lang="ts" setup>
|
2
|
+
import { computed } from "vue";
|
3
|
+
import { LauEcomUpcIconNavArrow } from "../LauEcomIcon";
|
4
|
+
import { LauEcomButtonType } from "./types";
|
5
|
+
import { LauEcomSize } from "../../enums";
|
6
|
+
|
7
|
+
const props = withDefaults(
|
8
|
+
defineProps<{
|
9
|
+
type?: LauEcomButtonType;
|
10
|
+
size?: LauEcomSize;
|
11
|
+
isDisabled?: boolean;
|
12
|
+
hasArrow?: boolean;
|
13
|
+
}>(),
|
14
|
+
{
|
15
|
+
text: "Button Text",
|
16
|
+
type: LauEcomButtonType.Primary,
|
17
|
+
size: LauEcomSize.lg,
|
18
|
+
isDisabled: false,
|
19
|
+
hasArrow: false,
|
20
|
+
},
|
21
|
+
);
|
22
|
+
|
23
|
+
const emit = defineEmits(["onClick"]);
|
24
|
+
|
25
|
+
const lauEcomButtonClasses = computed(() => {
|
26
|
+
return {
|
27
|
+
"lau-ecom-button lau-ecom-button--upc upc-font-button-16px": true,
|
28
|
+
"lau-ecom-button--secondary": props.type === LauEcomButtonType.Secondary,
|
29
|
+
"lau-ecom-button--secondary-upc":
|
30
|
+
props.type === LauEcomButtonType.Secondary,
|
31
|
+
"lau-ecom-button--secondary-upc-disabled":
|
32
|
+
props.type === LauEcomButtonType.Secondary && props.isDisabled,
|
33
|
+
"lau-ecom-button--large": props.size === LauEcomSize.lg,
|
34
|
+
"lau-ecom-button--medium": props.size === LauEcomSize.md,
|
35
|
+
"lau-ecom-button--disabled":
|
36
|
+
props.type === LauEcomButtonType.Primary && props.isDisabled,
|
37
|
+
};
|
38
|
+
});
|
39
|
+
|
40
|
+
const iconClasses = computed(() => {
|
41
|
+
return [
|
42
|
+
`lau-ecom-icon-button${props.type === LauEcomButtonType.Secondary ? "-secondary" : ""}`,
|
43
|
+
];
|
44
|
+
});
|
45
|
+
|
46
|
+
const handleClick = () => {
|
47
|
+
emit("onClick");
|
48
|
+
};
|
49
|
+
</script>
|
50
|
+
|
51
|
+
<template>
|
52
|
+
<button
|
53
|
+
:class="lauEcomButtonClasses"
|
54
|
+
:disabled="isDisabled"
|
55
|
+
@click="handleClick"
|
56
|
+
>
|
57
|
+
<LauEcomUpcIconNavArrow v-if="hasArrow" :class="iconClasses" />
|
58
|
+
<slot></slot>
|
59
|
+
</button>
|
60
|
+
</template>
|
61
|
+
|
62
|
+
<style scoped>
|
63
|
+
.lau-ecom-button {
|
64
|
+
@apply dsEcom-text-neutral-10
|
65
|
+
dsEcom-flex
|
66
|
+
dsEcom-items-center
|
67
|
+
dsEcom-justify-center
|
68
|
+
dsEcom-gap-2
|
69
|
+
dsEcom-rounded-core-border-radius-32px
|
70
|
+
dsEcom-border-[1px]
|
71
|
+
dsEcom-text-center
|
72
|
+
dsEcom-py-[14px]
|
73
|
+
dsEcom-px-[16px];
|
74
|
+
}
|
75
|
+
|
76
|
+
.lau-ecom-button--upc {
|
77
|
+
@apply dsEcom-bg-primary-60
|
78
|
+
dsEcom-border-primary-60
|
79
|
+
hover:dsEcom-bg-primary-70
|
80
|
+
hover:dsEcom-border-primary-70
|
81
|
+
active:dsEcom-bg-primary-80
|
82
|
+
active:dsEcom-border-primary-80;
|
83
|
+
}
|
84
|
+
|
85
|
+
.lau-ecom-button--large {
|
86
|
+
@apply dsEcom-w-auto
|
87
|
+
dsEcom-h-[48px];
|
88
|
+
}
|
89
|
+
|
90
|
+
.lau-ecom-button--medium {
|
91
|
+
@apply dsEcom-w-auto
|
92
|
+
dsEcom-h-[44px];
|
93
|
+
}
|
94
|
+
|
95
|
+
.lau-ecom-button--disabled {
|
96
|
+
@apply dsEcom-border-neutral-70
|
97
|
+
dsEcom-bg-neutral-70
|
98
|
+
hover:dsEcom-bg-neutral-70
|
99
|
+
hover:dsEcom-border-neutral-70
|
100
|
+
active:dsEcom-bg-neutral-70
|
101
|
+
active:dsEcom-border-neutral-70;
|
102
|
+
}
|
103
|
+
|
104
|
+
.lau-ecom-button--secondary {
|
105
|
+
@apply dsEcom-bg-neutral-10
|
106
|
+
hover:dsEcom-bg-neutral-10
|
107
|
+
active:dsEcom-bg-neutral-10;
|
108
|
+
}
|
109
|
+
|
110
|
+
.lau-ecom-button--secondary-upc {
|
111
|
+
@apply dsEcom-border-primary-60
|
112
|
+
dsEcom-text-primary-60
|
113
|
+
hover:dsEcom-text-primary-70
|
114
|
+
hover:dsEcom-border-primary-70
|
115
|
+
active:dsEcom-text-primary-80
|
116
|
+
active:dsEcom-border-primary-80;
|
117
|
+
}
|
118
|
+
|
119
|
+
.lau-ecom-button--secondary-upc-disabled {
|
120
|
+
@apply dsEcom-border-neutral-70
|
121
|
+
dsEcom-text-neutral-70
|
122
|
+
hover:dsEcom-border-neutral-70
|
123
|
+
hover:dsEcom-text-neutral-70
|
124
|
+
active:dsEcom-border-neutral-70
|
125
|
+
active:dsEcom-text-neutral-70;
|
126
|
+
}
|
127
|
+
|
128
|
+
.lau-ecom-icon-button {
|
129
|
+
@apply dsEcom-fill-neutral-10;
|
130
|
+
}
|
131
|
+
|
132
|
+
.lau-ecom-icon-button-secondary {
|
133
|
+
@apply dsEcom-fill-primary-60
|
134
|
+
hover:dsEcom-fill-primary-70
|
135
|
+
active:dsEcom-fill-primary-80;
|
136
|
+
}
|
137
|
+
</style>
|