contentoh-components-library 21.1.51 → 21.1.52
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/components/atoms/CheckBox/styles.js +1 -1
- package/dist/components/atoms/Commentary/styles.js +1 -1
- package/dist/components/atoms/GeneralInput/index.js +0 -1
- package/dist/components/atoms/GeneralInput/styles.js +3 -3
- package/dist/components/atoms/InputFormatter/styles.js +1 -1
- package/dist/components/atoms/SliderToolTip/SliderToolTip.stories.js +67 -13
- package/dist/components/atoms/SliderToolTip/index.js +70 -135
- package/dist/components/atoms/SliderToolTip/styles.js +2 -2
- package/dist/components/atoms/VerticalSideMenuMainPage/VerticalSideMenuMainPage.stories.js +44 -1
- package/dist/components/atoms/VerticalSideMenuMainPage/index.js +39 -65
- package/dist/components/atoms/VerticalSideMenuMainPage/styles.js +21 -6
- package/dist/components/molecules/HeaderTop/index.js +4 -1
- package/dist/components/molecules/RetailerSelector/index.js +32 -0
- package/dist/components/molecules/StatusAsignationInfo/index.js +32 -3
- package/dist/components/organisms/FullTabsMenu/index.js +3 -1
- package/dist/components/pages/ProviderProductEdition/index.js +44 -6
- package/dist/components/pages/RetailerProductEdition/index.js +6 -5
- package/dist/components/pages/RetailerProductEdition/styles.js +1 -1
- package/dist/index.js +38 -51
- package/package.json +2 -2
- package/src/components/atoms/CheckBox/styles.js +0 -1
- package/src/components/atoms/Commentary/styles.js +2 -2
- package/src/components/atoms/GeneralInput/index.js +0 -1
- package/src/components/atoms/GeneralInput/styles.js +5 -5
- package/src/components/atoms/InputFormatter/styles.js +3 -3
- package/src/components/atoms/SliderToolTip/SliderToolTip.stories.js +77 -11
- package/src/components/atoms/SliderToolTip/index.js +98 -154
- package/src/components/atoms/SliderToolTip/styles.js +51 -26
- package/src/components/atoms/VerticalSideMenuMainPage/VerticalSideMenuMainPage.stories.js +24 -1
- package/src/components/atoms/VerticalSideMenuMainPage/index.js +32 -38
- package/src/components/atoms/VerticalSideMenuMainPage/styles.js +35 -29
- package/src/components/molecules/HeaderTop/index.js +6 -1
- package/src/components/molecules/RetailerSelector/index.js +15 -0
- package/src/components/molecules/StatusAsignationInfo/index.js +33 -1
- package/src/components/organisms/FullProductNameHeader/index.js +1 -1
- package/src/components/organisms/FullTabsMenu/index.js +2 -0
- package/src/components/pages/ProviderProductEdition/index.js +53 -9
- package/src/components/pages/ProviderProductEdition/styles.js +1 -1
- package/src/components/pages/RetailerProductEdition/index.js +6 -5
- package/src/components/pages/RetailerProductEdition/styles.js +1 -1
- package/src/index.js +0 -1
- package/src/components/pages/RegistrationLoginFirstStep/RegistrationLoginFirstStep.stories.js +0 -17
- package/src/components/pages/RegistrationLoginFirstStep/index.js +0 -160
- package/src/components/pages/RegistrationLoginFirstStep/styles.js +0 -85
|
@@ -13,7 +13,12 @@ export const HeaderTop = ({ setHeaderTop }) => {
|
|
|
13
13
|
return (
|
|
14
14
|
<Container ref={headerTop}>
|
|
15
15
|
<ScreenHeader text="Edición de producto" />
|
|
16
|
-
<Button
|
|
16
|
+
<Button
|
|
17
|
+
buttonType="close-button"
|
|
18
|
+
onClick={() => {
|
|
19
|
+
window.location.href = `/products`;
|
|
20
|
+
}}
|
|
21
|
+
/>
|
|
17
22
|
</Container>
|
|
18
23
|
);
|
|
19
24
|
};
|
|
@@ -19,12 +19,27 @@ export const RetailerSelector = ({
|
|
|
19
19
|
}
|
|
20
20
|
};
|
|
21
21
|
|
|
22
|
+
const getRetailerImage = async () => {
|
|
23
|
+
console.log(
|
|
24
|
+
`https://content-management-images.s3.amazonaws.com/retailers/${activeRetailer.id}.png`
|
|
25
|
+
);
|
|
26
|
+
activeRetailer.image = `https://content-management-images.s3.amazonaws.com/retailers/${activeRetailer.id}.png`;
|
|
27
|
+
retailers.forEach(
|
|
28
|
+
(retailer) =>
|
|
29
|
+
(retailer.image = `https://content-management-images.s3.amazonaws.com/retailers/${retailer.id}.png`)
|
|
30
|
+
);
|
|
31
|
+
};
|
|
32
|
+
|
|
22
33
|
useEffect(() => {
|
|
23
34
|
if (retailersPanel) {
|
|
24
35
|
document.addEventListener("click", closeRetailersPanel, false);
|
|
25
36
|
}
|
|
26
37
|
}, [retailersPanel]);
|
|
27
38
|
|
|
39
|
+
useEffect(() => {
|
|
40
|
+
getRetailerImage();
|
|
41
|
+
}, [activeRetailer]);
|
|
42
|
+
|
|
28
43
|
return (
|
|
29
44
|
<Container id="retailers-assignation">
|
|
30
45
|
<Avatar
|
|
@@ -6,6 +6,11 @@ import { Button } from "../../atoms/GeneralButton";
|
|
|
6
6
|
import { useEffect, useState } from "react";
|
|
7
7
|
import { AsignationOption } from "../../atoms/AsignationOption/index";
|
|
8
8
|
import { getProfilePicture } from "../../../global-files/data";
|
|
9
|
+
import { SliderToolTip } from "../../atoms/SliderToolTip";
|
|
10
|
+
import InfoIcon from "../../../assets/images/sliderToolTip/infoIcon.svg";
|
|
11
|
+
import Slide1 from "../../../assets/images/sliderToolTip/slide21.svg";
|
|
12
|
+
import Slide2 from "../../../assets/images/sliderToolTip/slide22.svg";
|
|
13
|
+
import Slide3 from "../../../assets/images/sliderToolTip/slide23.svg";
|
|
9
14
|
|
|
10
15
|
export const StatusAsignationInfo = ({
|
|
11
16
|
status = "-",
|
|
@@ -20,6 +25,7 @@ export const StatusAsignationInfo = ({
|
|
|
20
25
|
id = "default-id",
|
|
21
26
|
onClickSave,
|
|
22
27
|
showSaveButton,
|
|
28
|
+
canAssign,
|
|
23
29
|
}) => {
|
|
24
30
|
const [showAsignationPanel, setShowAsignationPanel] = useState(false);
|
|
25
31
|
const [layout, setLayout] = useState(false);
|
|
@@ -31,6 +37,26 @@ export const StatusAsignationInfo = ({
|
|
|
31
37
|
setShowAsignationPanel(false);
|
|
32
38
|
}
|
|
33
39
|
};
|
|
40
|
+
const slidefront = [
|
|
41
|
+
{
|
|
42
|
+
slide: Slide1,
|
|
43
|
+
title: "Valida tu producto en cada activo digital",
|
|
44
|
+
description:
|
|
45
|
+
"Al solicitar a Content-oh! podrás validar la información, imágenes y documentación de tu producto, esto hará más sencillo que puedas aprobar o rechazar el contenido.",
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
slide: Slide2,
|
|
49
|
+
title: "Aprueba o rechaza con un clic",
|
|
50
|
+
description:
|
|
51
|
+
"Cuando termines de revisar tu información, elige si aproebas o rechazas, esto enviara una notificiación a nuestro equipo, para continuar o corregir el producto.",
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
slide: Slide3,
|
|
55
|
+
title: "Estatus de tu producto en el proceso",
|
|
56
|
+
description:
|
|
57
|
+
"La mayor parte del proceso podrás identificar que estatus tiene tu producto, esto dara visibilidad a todo tu equipo para saber la etapa se encuentra.",
|
|
58
|
+
},
|
|
59
|
+
];
|
|
34
60
|
|
|
35
61
|
useEffect(() => {
|
|
36
62
|
if (showAsignationPanel) {
|
|
@@ -40,6 +66,12 @@ export const StatusAsignationInfo = ({
|
|
|
40
66
|
|
|
41
67
|
return (
|
|
42
68
|
<Container id={id}>
|
|
69
|
+
<SliderToolTip
|
|
70
|
+
infoIcon={InfoIcon}
|
|
71
|
+
slidefront={slidefront}
|
|
72
|
+
iconSize={"medium-image"}
|
|
73
|
+
slidePosition={"bottom-slide"}
|
|
74
|
+
></SliderToolTip>
|
|
43
75
|
{status !== "-" && <StatusTag statusType={status} ovalForm={true} />}
|
|
44
76
|
{showSaveButton && (
|
|
45
77
|
<Button
|
|
@@ -92,7 +124,7 @@ export const StatusAsignationInfo = ({
|
|
|
92
124
|
fontFamily={"Avenir Next"}
|
|
93
125
|
headerType={"input-name-header"}
|
|
94
126
|
/>
|
|
95
|
-
{showAsignationPanel && (
|
|
127
|
+
{showAsignationPanel && canAssign && (
|
|
96
128
|
<div className="asignation-panel">
|
|
97
129
|
<div className="asignation-header">
|
|
98
130
|
<div className="asignation-status">
|
|
@@ -16,6 +16,7 @@ export const FullTabsMenu = ({
|
|
|
16
16
|
askToDeleteImages,
|
|
17
17
|
onClickSave,
|
|
18
18
|
showSaveButton,
|
|
19
|
+
canAssign,
|
|
19
20
|
}) => {
|
|
20
21
|
const [imagesSection, setImagesSection] = useState(false);
|
|
21
22
|
|
|
@@ -27,6 +28,7 @@ export const FullTabsMenu = ({
|
|
|
27
28
|
setActiveTab={setActiveTab}
|
|
28
29
|
/>
|
|
29
30
|
<StatusAsignationInfo
|
|
31
|
+
canAssign={canAssign}
|
|
30
32
|
status={status}
|
|
31
33
|
activeTab={activeTab}
|
|
32
34
|
setImageLayout={setImageLayout}
|
|
@@ -33,6 +33,13 @@ import { Link } from "react-router-dom";
|
|
|
33
33
|
import face from "../../../assets/images/defaultImages/defaultProfileImage.svg";
|
|
34
34
|
import errorModal from "../../../assets/images/genericModal/errorModal.svg";
|
|
35
35
|
import { GlobalModal } from "../../organisms/GlobalModal/index";
|
|
36
|
+
import { SliderToolTip } from "../../atoms/SliderToolTip";
|
|
37
|
+
import InfoIcon from "../../../assets/images/sliderToolTip/infoIcon.svg";
|
|
38
|
+
import Slide1_1 from "../../../assets/images/sliderToolTip/slide1.svg";
|
|
39
|
+
import Slide1_2 from "../../../assets/images/sliderToolTip/slide2.svg";
|
|
40
|
+
import Slide1_3 from "../../../assets/images/sliderToolTip/slide3.svg";
|
|
41
|
+
import Slide1_4 from "../../../assets/images/sliderToolTip/slide4.svg";
|
|
42
|
+
import Slide1_5 from "../../../assets/images/sliderToolTip/slide5.svg";
|
|
36
43
|
|
|
37
44
|
const reducerImages = (state, action) => {
|
|
38
45
|
let { values, attrForImgs } = state;
|
|
@@ -973,6 +980,35 @@ export const ProviderProductEdition = ({
|
|
|
973
980
|
setSaving(loading);
|
|
974
981
|
}, [loading]);
|
|
975
982
|
|
|
983
|
+
const slidefront = [
|
|
984
|
+
{
|
|
985
|
+
slide: Slide1_1,
|
|
986
|
+
description:
|
|
987
|
+
"Creamos tu contenido, y todo lo que haga falta para tu producto, cada sección puedes socilitar contenido enriquecido, y nosotros lo haremos por ti.",
|
|
988
|
+
},
|
|
989
|
+
{
|
|
990
|
+
slide: Slide1_2,
|
|
991
|
+
description:
|
|
992
|
+
"Puedes agregar solicitudes de contenido enriquecido a tu carrito de compra las veces que sean necesarias. Una vez completada tu lista con los servicios necesitados sigue el proceso de compra en checkout.",
|
|
993
|
+
},
|
|
994
|
+
{
|
|
995
|
+
slide: Slide1_3,
|
|
996
|
+
description:
|
|
997
|
+
"Revisa el contenido que deseas solicilitar, valida y tambien puedes agregar contenido extra, traducciones, o simplemente completar el checkout.",
|
|
998
|
+
},
|
|
999
|
+
{
|
|
1000
|
+
slide: Slide1_4,
|
|
1001
|
+
description:
|
|
1002
|
+
"Elige el tipo de entrega de tu producto, puedes ser recolección en el lugar o por el contrario puedes dejarlo en nuestras oficinas.",
|
|
1003
|
+
},
|
|
1004
|
+
{
|
|
1005
|
+
slide: Slide1_5,
|
|
1006
|
+
title: "Bienvenido al modo Content-oh!",
|
|
1007
|
+
description:
|
|
1008
|
+
"Finalmente elige la forma de pago que más te guste, procede con el pago y listo.",
|
|
1009
|
+
},
|
|
1010
|
+
];
|
|
1011
|
+
|
|
976
1012
|
return (
|
|
977
1013
|
<Container headerTop={headerTop}>
|
|
978
1014
|
<HeaderTop setHeaderTop={setHeaderTop} />
|
|
@@ -1309,14 +1345,22 @@ export const ProviderProductEdition = ({
|
|
|
1309
1345
|
</Link>
|
|
1310
1346
|
</button>
|
|
1311
1347
|
) : (
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
|
|
1348
|
+
<>
|
|
1349
|
+
<SliderToolTip
|
|
1350
|
+
infoIcon={InfoIcon}
|
|
1351
|
+
slidefront={slidefront}
|
|
1352
|
+
iconSize={"big-image"}
|
|
1353
|
+
slidePosition={"top-slide"}
|
|
1354
|
+
></SliderToolTip>
|
|
1355
|
+
<Button
|
|
1356
|
+
onClick={() => {
|
|
1357
|
+
setShowContentohRequestModal &&
|
|
1358
|
+
setShowContentohRequestModal(true);
|
|
1359
|
+
}}
|
|
1360
|
+
buttonType="general-default-button"
|
|
1361
|
+
label="Enviar a Content-oh!"
|
|
1362
|
+
/>
|
|
1363
|
+
</>
|
|
1320
1364
|
)}
|
|
1321
1365
|
</div>
|
|
1322
1366
|
)}
|
|
@@ -1397,4 +1441,4 @@ export const ProviderProductEdition = ({
|
|
|
1397
1441
|
)}
|
|
1398
1442
|
</Container>
|
|
1399
1443
|
);
|
|
1400
|
-
};
|
|
1444
|
+
};
|
|
@@ -808,7 +808,7 @@ export const RetailerProductEdition = ({
|
|
|
808
808
|
const data = {
|
|
809
809
|
articleId: product?.article?.id_article,
|
|
810
810
|
orderId: product?.orderId,
|
|
811
|
-
message: body,
|
|
811
|
+
message: body?.replace(/<.*?\/?>/gm, ""),
|
|
812
812
|
concept: concept,
|
|
813
813
|
version: version,
|
|
814
814
|
};
|
|
@@ -1164,7 +1164,7 @@ export const RetailerProductEdition = ({
|
|
|
1164
1164
|
onClickSave={() =>
|
|
1165
1165
|
product?.services?.images === 1 && updateImages()
|
|
1166
1166
|
}
|
|
1167
|
-
showSaveButton={userAssigned()}
|
|
1167
|
+
showSaveButton={auditorAssigned() || userAssigned()}
|
|
1168
1168
|
/>
|
|
1169
1169
|
</div>
|
|
1170
1170
|
<div className="product-information">
|
|
@@ -1256,6 +1256,7 @@ export const RetailerProductEdition = ({
|
|
|
1256
1256
|
}}
|
|
1257
1257
|
/>
|
|
1258
1258
|
<FullTabsMenu
|
|
1259
|
+
canAssign={![7, 8].includes(user.id_role)}
|
|
1259
1260
|
tabsSections={tabsSections}
|
|
1260
1261
|
status={retailerStatus}
|
|
1261
1262
|
activeTab={activeTab}
|
|
@@ -1266,7 +1267,7 @@ export const RetailerProductEdition = ({
|
|
|
1266
1267
|
assig={assig[activeTab]}
|
|
1267
1268
|
setAssignation={setAssignation}
|
|
1268
1269
|
isRetailer={isRetailer}
|
|
1269
|
-
showSaveButton={userAssigned()}
|
|
1270
|
+
showSaveButton={auditorAssigned() || userAssigned()}
|
|
1270
1271
|
onClickSave={() => {
|
|
1271
1272
|
switch (activeTab) {
|
|
1272
1273
|
case "Descripción":
|
|
@@ -1394,7 +1395,7 @@ export const RetailerProductEdition = ({
|
|
|
1394
1395
|
) : (
|
|
1395
1396
|
<div className="feedback-box">
|
|
1396
1397
|
<Commentary
|
|
1397
|
-
comment={comment
|
|
1398
|
+
comment={comment?.message?.replace(/<.*?\/?>/gm, "")}
|
|
1398
1399
|
reviewed={crossComment}
|
|
1399
1400
|
/>
|
|
1400
1401
|
<Button
|
|
@@ -1449,4 +1450,4 @@ export const RetailerProductEdition = ({
|
|
|
1449
1450
|
)}
|
|
1450
1451
|
</Container>
|
|
1451
1452
|
);
|
|
1452
|
-
};
|
|
1453
|
+
};
|
package/src/index.js
CHANGED
|
@@ -22,7 +22,6 @@ export * from "./components/atoms/SliderToolTip/index";
|
|
|
22
22
|
export * from "./components/atoms/StatusTag/index";
|
|
23
23
|
export * from "./components/atoms/TabSection/index";
|
|
24
24
|
export * from "./components/atoms/ValidationPanel/index";
|
|
25
|
-
export * from "./components/atoms/VerticalSideMenuMainPage/index";
|
|
26
25
|
|
|
27
26
|
//molecules
|
|
28
27
|
export * from "./components/molecules/AvatarAndValidation/index";
|
package/src/components/pages/RegistrationLoginFirstStep/RegistrationLoginFirstStep.stories.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { RegistrationLoginFirstStep } from "./index";
|
|
2
|
-
import LoginImage from "../../../assets/images/carouselImagesLogin/loginImage.svg";
|
|
3
|
-
import Login2 from "../../../assets/images/carouselImagesLogin/login2.svg";
|
|
4
|
-
import Login3 from "../../../assets/images/carouselImagesLogin/login3.svg";
|
|
5
|
-
|
|
6
|
-
export default {
|
|
7
|
-
title: "Components/pages/RegistrationLoginFirstStep",
|
|
8
|
-
component: RegistrationLoginFirstStep,
|
|
9
|
-
};
|
|
10
|
-
const Template = (args) => <RegistrationLoginFirstStep {...args} />;
|
|
11
|
-
|
|
12
|
-
export const RegistrationLoginFirstStepDefault = Template.bind({});
|
|
13
|
-
|
|
14
|
-
RegistrationLoginFirstStepDefault.args = {
|
|
15
|
-
imageArrayCarousel: [LoginImage, Login2, Login3],
|
|
16
|
-
textCarousel: "Elige la plataforma que conecta proovedores y retailers",
|
|
17
|
-
};
|
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
import { Container } from "./styles";
|
|
2
|
-
import { GradientPanel } from "../../atoms/GradientPanel";
|
|
3
|
-
import { CarouselImagesLogin } from "../../molecules/CarouselImagesLogin";
|
|
4
|
-
import { useState } from "react";
|
|
5
|
-
import { LogoImage } from "../../atoms/LogoImage";
|
|
6
|
-
import { ScreenHeader } from "../../atoms/ScreenHeader";
|
|
7
|
-
import { GlobalColors, FontFamily } from "../../../global-files/variables";
|
|
8
|
-
import { TagAndInput } from "../../molecules/TagAndInput";
|
|
9
|
-
import { Button } from "../../atoms/GeneralButton";
|
|
10
|
-
import { GeneralInput } from "../../atoms/GeneralInput";
|
|
11
|
-
|
|
12
|
-
export const RegistrationLoginFirstStep = ({
|
|
13
|
-
imageArrayCarousel = [],
|
|
14
|
-
textCarousel,
|
|
15
|
-
backogroundColorCarousel,
|
|
16
|
-
}) => {
|
|
17
|
-
const [emptyName, setEmptyName] = useState(false);
|
|
18
|
-
const [emptyLastName, setEmptyLastName] = useState(false);
|
|
19
|
-
const [emptyEmail, setEmptyEmail] = useState(false);
|
|
20
|
-
const [emptyJob, setEmptyJob] = useState(false);
|
|
21
|
-
const [emptyPhone, setEmptyPhone] = useState(false);
|
|
22
|
-
const [invalidEmail, setInvalidEmail] = useState(false);
|
|
23
|
-
|
|
24
|
-
const validate = async (e) => {
|
|
25
|
-
e.preventDefault();
|
|
26
|
-
const name = document.querySelector("#nameInput").value;
|
|
27
|
-
const lastName = document.querySelector("#lastNameInput").value;
|
|
28
|
-
const email = document.querySelector("#emailInput").value;
|
|
29
|
-
const job = document.querySelector("#jobInput").value;
|
|
30
|
-
const phone = document.querySelector("#phoneInput").value;
|
|
31
|
-
name === "" ? setEmptyName(true) : setEmptyName(false);
|
|
32
|
-
lastName === "" ? setEmptyLastName(true) : setEmptyLastName(false);
|
|
33
|
-
email === "" ? setEmptyEmail(true) : setEmptyEmail(false);
|
|
34
|
-
job === "" ? setEmptyJob(true) : setEmptyJob(false);
|
|
35
|
-
phone === "" ? setEmptyPhone(true) : setEmptyPhone(false);
|
|
36
|
-
!/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/.test(
|
|
37
|
-
email
|
|
38
|
-
)
|
|
39
|
-
? setInvalidEmail(true)
|
|
40
|
-
: setInvalidEmail(false);
|
|
41
|
-
};
|
|
42
|
-
const loginRight = [
|
|
43
|
-
<LogoImage key="1" />,
|
|
44
|
-
<div className="credenciales" key={"2"}>
|
|
45
|
-
<ScreenHeader
|
|
46
|
-
fontFamily={FontFamily.AvenirNext}
|
|
47
|
-
color={GlobalColors.s5}
|
|
48
|
-
text={"Ingresa tus credenciales"}
|
|
49
|
-
/>
|
|
50
|
-
</div>,
|
|
51
|
-
<div className="user" key="3">
|
|
52
|
-
<div className="name-registration-user">
|
|
53
|
-
<TagAndInput
|
|
54
|
-
inputType={"text"}
|
|
55
|
-
inputId={"nameInput"}
|
|
56
|
-
label={"Nombre"}
|
|
57
|
-
inputPlaceHolder={"Nombre"}
|
|
58
|
-
/>
|
|
59
|
-
<TagAndInput
|
|
60
|
-
inputType={"text"}
|
|
61
|
-
inputId={"lastNameInput"}
|
|
62
|
-
label={"Apellido"}
|
|
63
|
-
inputPlaceHolder={"Apellido"}
|
|
64
|
-
/>
|
|
65
|
-
</div>
|
|
66
|
-
{emptyName && <label>Ingrese su nombre</label>}
|
|
67
|
-
{emptyLastName && <label>Ingrese sus apellidos</label>}
|
|
68
|
-
<TagAndInput
|
|
69
|
-
inputType={"text"}
|
|
70
|
-
inputId={"emailInput"}
|
|
71
|
-
label={"Correo electrónico"}
|
|
72
|
-
inputPlaceHolder={"username@contentoh.com"}
|
|
73
|
-
/>
|
|
74
|
-
{emptyEmail && <label>Ingrese su correo</label>}
|
|
75
|
-
{invalidEmail && !emptyEmail && <label>Ingrese un correo válido</label>}
|
|
76
|
-
<TagAndInput
|
|
77
|
-
inputType={"text"}
|
|
78
|
-
inputId={"jobInput"}
|
|
79
|
-
label={"Puesto laboral"}
|
|
80
|
-
inputPlaceHolder={"Puesto dentro de la empresa"}
|
|
81
|
-
/>
|
|
82
|
-
{emptyJob && <label>Ingrese su puesto</label>}
|
|
83
|
-
<ScreenHeader text={"Teléfono"} headerType={"input-name-header"} />
|
|
84
|
-
<div className="phone-registration-user">
|
|
85
|
-
<select name="select" className="phone-options">
|
|
86
|
-
<option>+52</option>
|
|
87
|
-
<option>+54</option>
|
|
88
|
-
<option>+57</option>
|
|
89
|
-
<option>+506</option>
|
|
90
|
-
<option>+593</option>
|
|
91
|
-
<option>+503</option>
|
|
92
|
-
<option>+504</option>
|
|
93
|
-
<option>+507</option>
|
|
94
|
-
<option>+51</option>
|
|
95
|
-
</select>
|
|
96
|
-
<GeneralInput
|
|
97
|
-
inputId={"phoneInput"}
|
|
98
|
-
inputType={"text"}
|
|
99
|
-
inputPlaceholder={"Teléfono"}
|
|
100
|
-
/>
|
|
101
|
-
</div>
|
|
102
|
-
{emptyPhone && <label>Ingrese su número de teléfono</label>}
|
|
103
|
-
<ScreenHeader text={"País"} headerType={"input-name-header"} />
|
|
104
|
-
<select name="select" className="country-options">
|
|
105
|
-
<option value="value1" selected>
|
|
106
|
-
Selecciona tu país
|
|
107
|
-
</option>
|
|
108
|
-
<option value="value2">Argentina</option>
|
|
109
|
-
<option value="value3">Colombia</option>
|
|
110
|
-
<option value="value2">Ecuador</option>
|
|
111
|
-
<option value="value3">El Salvador</option>
|
|
112
|
-
<option value="value2">Honduras</option>
|
|
113
|
-
<option value="value3">México</option>
|
|
114
|
-
<option value="value2">Panamá</option>
|
|
115
|
-
<option value="value3">Perú</option>
|
|
116
|
-
</select>
|
|
117
|
-
{emptyEmail && <label>Seleccione su país</label>}
|
|
118
|
-
</div>,
|
|
119
|
-
<div className="button-end" key="4">
|
|
120
|
-
<Button
|
|
121
|
-
buttonType={"general-default-button"}
|
|
122
|
-
label={"Enviar"}
|
|
123
|
-
onClick={(e) => validate(e)}
|
|
124
|
-
/>
|
|
125
|
-
</div>,
|
|
126
|
-
<div className="progress-bar" key="5">
|
|
127
|
-
<div className="progress-bar-first-step"></div>
|
|
128
|
-
<div className="progress-bar-registration"></div>
|
|
129
|
-
</div>,
|
|
130
|
-
<ScreenHeader
|
|
131
|
-
text={"Paso 1"}
|
|
132
|
-
headerType={"date-header"}
|
|
133
|
-
color={GlobalColors.s4}
|
|
134
|
-
key="6"
|
|
135
|
-
/>,
|
|
136
|
-
<div className="new-login" key="7">
|
|
137
|
-
<p className="pre-registro">
|
|
138
|
-
¿Ya tienes una cuenta?<span> Inicia Sesión</span>
|
|
139
|
-
</p>
|
|
140
|
-
</div>,
|
|
141
|
-
];
|
|
142
|
-
return (
|
|
143
|
-
<Container>
|
|
144
|
-
<div className="home-retailer">
|
|
145
|
-
<CarouselImagesLogin
|
|
146
|
-
panelImg={imageArrayCarousel}
|
|
147
|
-
panelText={textCarousel}
|
|
148
|
-
panelColor={backogroundColorCarousel}
|
|
149
|
-
/>
|
|
150
|
-
</div>
|
|
151
|
-
<div className="home-login-retailer">
|
|
152
|
-
<GradientPanel
|
|
153
|
-
componentsArray={loginRight}
|
|
154
|
-
panelType={"home-login"}
|
|
155
|
-
panelColor={GlobalColors.white}
|
|
156
|
-
/>
|
|
157
|
-
</div>
|
|
158
|
-
</Container>
|
|
159
|
-
);
|
|
160
|
-
};
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import styled from "styled-components";
|
|
2
|
-
import { FontFamily, GlobalColors } from "../../../global-files/variables";
|
|
3
|
-
|
|
4
|
-
export const Container = styled.div`
|
|
5
|
-
display: flex;
|
|
6
|
-
width: 100%;
|
|
7
|
-
height: 100vh;
|
|
8
|
-
.user {
|
|
9
|
-
.name-registration-user {
|
|
10
|
-
display: flex;
|
|
11
|
-
justify-content: space-between;
|
|
12
|
-
input {
|
|
13
|
-
width: 160px;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
.input-name-header {
|
|
17
|
-
margin-bottom: 4px;
|
|
18
|
-
margin-top: 12px;
|
|
19
|
-
}
|
|
20
|
-
.phone-registration-user {
|
|
21
|
-
display: flex;
|
|
22
|
-
justify-content: space-between;
|
|
23
|
-
.phone-options {
|
|
24
|
-
width: 80px;
|
|
25
|
-
}
|
|
26
|
-
input {
|
|
27
|
-
width: 100%;
|
|
28
|
-
}
|
|
29
|
-
& + * {
|
|
30
|
-
margin-top: 10px;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
.country-options,
|
|
34
|
-
.phone-options {
|
|
35
|
-
width: 100%;
|
|
36
|
-
border: 1px solid ${GlobalColors.s2};
|
|
37
|
-
font-family: ${FontFamily.AvenirNext};
|
|
38
|
-
color: ${GlobalColors.s4};
|
|
39
|
-
font-weight: normal;
|
|
40
|
-
font-size: 12px;
|
|
41
|
-
line-height: 15px;
|
|
42
|
-
padding: 10px;
|
|
43
|
-
outline: none;
|
|
44
|
-
border-radius: 2px;
|
|
45
|
-
resize: none;
|
|
46
|
-
&:focus {
|
|
47
|
-
border: 1px solid ${GlobalColors.magenta_s2};
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
.button-end {
|
|
52
|
-
text-align: end;
|
|
53
|
-
.general-default-button {
|
|
54
|
-
width: 160px;
|
|
55
|
-
}
|
|
56
|
-
& + * {
|
|
57
|
-
margin-top: 10px;
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
.progress-bar {
|
|
61
|
-
width: 100%;
|
|
62
|
-
height: 8px;
|
|
63
|
-
display: flex;
|
|
64
|
-
justify-content: space-between;
|
|
65
|
-
.progress-bar-first-step {
|
|
66
|
-
width: 33.33%;
|
|
67
|
-
background-color: rgb(196, 196, 196);
|
|
68
|
-
}
|
|
69
|
-
.progress-bar-registration {
|
|
70
|
-
background-color: rgb(226, 226, 226);
|
|
71
|
-
width: 66.66%;
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
.date-header {
|
|
75
|
-
.new-login {
|
|
76
|
-
& + * {
|
|
77
|
-
margin-top: 20px;
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
.home-login-retailer,
|
|
82
|
-
.home-retailer {
|
|
83
|
-
width: 50%;
|
|
84
|
-
}
|
|
85
|
-
`;
|