contentoh-components-library 21.1.59 → 21.1.62
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/GeneralInput/index.js +0 -1
- package/dist/components/atoms/InputFormatter/index.js +3 -3
- package/dist/components/molecules/HeaderTop/index.js +4 -1
- package/dist/components/molecules/RetailerSelector/index.js +31 -0
- package/dist/components/molecules/StatusAsignationInfo/index.js +3 -2
- package/dist/components/organisms/FullProductNameHeader/index.js +1 -1
- package/dist/components/organisms/FullTabsMenu/index.js +3 -1
- package/dist/components/organisms/ImageDataTable/index.js +3 -6
- package/dist/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +115 -65
- package/dist/components/pages/ProviderProductEdition/index.js +333 -382
- package/dist/components/pages/RetailerProductEdition/RetailerProductEdition.stories.js +63 -110
- package/dist/components/pages/RetailerProductEdition/index.js +217 -225
- package/dist/components/pages/RetailerProductEdition/styles.js +1 -1
- package/dist/global-files/data.js +9 -10
- package/dist/index.js +13 -0
- package/package.json +1 -1
- package/src/components/atoms/GeneralInput/index.js +0 -1
- package/src/components/atoms/InputFormatter/index.js +6 -3
- package/src/components/molecules/HeaderTop/index.js +6 -1
- package/src/components/molecules/RetailerSelector/index.js +12 -0
- package/src/components/molecules/StatusAsignationInfo/index.js +3 -2
- package/src/components/organisms/FullProductNameHeader/index.js +1 -1
- package/src/components/organisms/FullTabsMenu/index.js +2 -0
- package/src/components/organisms/ImageDataTable/index.js +2 -5
- package/src/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +133 -71
- package/src/components/pages/ProviderProductEdition/index.js +208 -222
- package/src/components/pages/RetailerProductEdition/RetailerProductEdition.stories.js +59 -111
- package/src/components/pages/RetailerProductEdition/index.js +173 -148
- package/src/components/pages/RetailerProductEdition/styles.js +1 -1
- package/src/global-files/data.js +9 -10
- package/src/index.js +1 -0
- package/src/components/atoms/StatusTag/StatusTag.stories.js +0 -28
|
@@ -13,7 +13,7 @@ var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
|
13
13
|
|
|
14
14
|
var _templateObject;
|
|
15
15
|
|
|
16
|
-
var Container = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n flex-direction: column;\n height: 100%;\n flex: 1;\n overflow: auto;\n\n .data-container {\n display: flex;\n flex: 0%;\n height: calc(100% - ", "px);\n .image-data-panel {\n width: 340px;\n\n & + * {\n margin-left: 10px;\n }\n }\n\n .product-information {\n width: 100
|
|
16
|
+
var Container = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n flex-direction: column;\n height: 100%;\n flex: 1;\n overflow: auto;\n\n .data-container {\n display: flex;\n flex: 0%;\n height: calc(100% - ", "px);\n .image-data-panel {\n width: 340px;\n\n & + * {\n margin-left: 10px;\n }\n }\n\n .product-information {\n width: calc(100% - 341px);\n display: flex;\n flex-direction: column;\n\n .services-information-container {\n height: 100%;\n overflow: auto;\n }\n\n .image-services {\n aside {\n display: grid;\n grid-template-columns: repeat(auto-fill, 179px);\n column-gap: 15px;\n row-gap: 15px;\n padding: 20px;\n }\n }\n\n .commentary-box {\n display: flex;\n justify-content: space-between;\n align-items: flex-end;\n padding: 10px;\n padding-left: 0;\n\n .commentary {\n display: flex;\n align-items: flex-end;\n\n .input-container {\n width: 500px;\n\n .quill {\n height: 100px;\n }\n\n & + * {\n margin-left: 5px;\n }\n }\n\n .buttons-box {\n display: flex;\n width: 210px;\n flex-wrap: wrap;\n\n .general-transparent-button {\n & + * {\n margin-top: 5px;\n }\n }\n\n .general-transparent-button,\n .general-green-button,\n .general-button-disabled {\n width: fit-content;\n min-width: 201px;\n height: 40px;\n }\n }\n }\n }\n\n .feedback-box {\n display: flex;\n }\n }\n }\n .container {\n width: 100%;\n height: 100%;\n .dropzone {\n height: 100%;\n width: 100%;\n }\n }\n"])), function (_ref) {
|
|
17
17
|
var headerTop = _ref.headerTop;
|
|
18
18
|
return headerTop;
|
|
19
19
|
});
|
|
@@ -280,21 +280,20 @@ var getNewStatus = function getNewStatus(statusArray) {
|
|
|
280
280
|
statusArray.forEach(function (element) {
|
|
281
281
|
return lookupString += element + "/";
|
|
282
282
|
});
|
|
283
|
-
if (lookupString.includes("
|
|
284
|
-
if (lookupString.includes("RC")) return "RC";
|
|
283
|
+
if (lookupString.includes("RF")) return "RF";
|
|
285
284
|
if (lookupString.includes("RA")) return "RA";
|
|
286
285
|
if (lookupString.includes("RP")) return "RP";
|
|
287
|
-
if (lookupString.includes("
|
|
288
|
-
if (lookupString.includes("UNASSIGNED")) return "
|
|
289
|
-
if (lookupString.includes("
|
|
290
|
-
if (lookupString.includes("
|
|
291
|
-
if (lookupString.includes("
|
|
286
|
+
if (lookupString.includes("RC")) return "RC";
|
|
287
|
+
if (lookupString.includes("UNASSIGNED")) return "IN_PROGRESS";
|
|
288
|
+
if (lookupString.includes("IN_PROGRESS")) return "IN_PROGRESS";
|
|
289
|
+
if (lookupString.includes("QF")) return "QF";
|
|
290
|
+
if (lookupString.includes("AF")) return "AF";
|
|
292
291
|
if (lookupString.includes("AA")) return "AA";
|
|
293
292
|
if (lookupString.includes("AP")) return "AP";
|
|
294
|
-
if (lookupString.includes("
|
|
293
|
+
if (lookupString.includes("AC")) return "AC";
|
|
294
|
+
if (lookupString.includes("RECEIVED")) return "RECEIVED";
|
|
295
295
|
if (lookupString.includes("NA")) return "NA";
|
|
296
|
-
|
|
297
|
-
return "NA";
|
|
296
|
+
return new Error("Status not found");
|
|
298
297
|
};
|
|
299
298
|
|
|
300
299
|
exports.getNewStatus = getNewStatus;
|
package/dist/index.js
CHANGED
|
@@ -784,6 +784,19 @@ Object.keys(_OnboardPlan).forEach(function (key) {
|
|
|
784
784
|
});
|
|
785
785
|
});
|
|
786
786
|
|
|
787
|
+
var _RegistrationLoginFirstStep = require("./components/pages/RegistrationLoginFirstStep");
|
|
788
|
+
|
|
789
|
+
Object.keys(_RegistrationLoginFirstStep).forEach(function (key) {
|
|
790
|
+
if (key === "default" || key === "__esModule") return;
|
|
791
|
+
if (key in exports && exports[key] === _RegistrationLoginFirstStep[key]) return;
|
|
792
|
+
Object.defineProperty(exports, key, {
|
|
793
|
+
enumerable: true,
|
|
794
|
+
get: function get() {
|
|
795
|
+
return _RegistrationLoginFirstStep[key];
|
|
796
|
+
}
|
|
797
|
+
});
|
|
798
|
+
});
|
|
799
|
+
|
|
787
800
|
var _RegistrationLoginSecondStep = require("./components/pages/RegistrationLoginSecondStep");
|
|
788
801
|
|
|
789
802
|
Object.keys(_RegistrationLoginSecondStep).forEach(function (key) {
|
package/package.json
CHANGED
|
@@ -42,7 +42,6 @@ export const GeneralInput = ({
|
|
|
42
42
|
if (optionList?.length > 0) {
|
|
43
43
|
let index = evt.target.selectedIndex;
|
|
44
44
|
let valueSelected = evt.target.value;
|
|
45
|
-
console.log(valueSelected);
|
|
46
45
|
generalValue = valueSelected;
|
|
47
46
|
setTextValue({ value: generalValue });
|
|
48
47
|
} else {
|
|
@@ -22,7 +22,7 @@ export const InputFormatter = ({
|
|
|
22
22
|
const maxLength = maxChar ? maxChar : 999;
|
|
23
23
|
|
|
24
24
|
const getValue = (value) => {
|
|
25
|
-
let temp = value.replace(/\n/gm, "<br>");
|
|
25
|
+
let temp = value.replace(/\n/gm, "<br>").replace(/&/gm, "&");
|
|
26
26
|
return temp;
|
|
27
27
|
};
|
|
28
28
|
|
|
@@ -34,7 +34,10 @@ export const InputFormatter = ({
|
|
|
34
34
|
};
|
|
35
35
|
|
|
36
36
|
const valueFormater = (value) => {
|
|
37
|
-
return value
|
|
37
|
+
return value
|
|
38
|
+
.replace(/<\/p><p>/gm, "\n")
|
|
39
|
+
.replace(/<\/?br>|<\/?p>/gm, "")
|
|
40
|
+
.replace(/&/gm, "&");
|
|
38
41
|
};
|
|
39
42
|
|
|
40
43
|
const onChange = (valueInput, delta, user, h) => {
|
|
@@ -109,7 +112,7 @@ export const InputFormatter = ({
|
|
|
109
112
|
<ReactQuill
|
|
110
113
|
id={inputId + ""}
|
|
111
114
|
ref={(el) => setQuill(el)}
|
|
112
|
-
|
|
115
|
+
defaultValue={getValue(inputValue)}
|
|
113
116
|
//disabled={!props.enableInputs}
|
|
114
117
|
modules={{ toolbar: ["bold"] }}
|
|
115
118
|
onKeyPress={(e) => {
|
|
@@ -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,24 @@ export const RetailerSelector = ({
|
|
|
19
19
|
}
|
|
20
20
|
};
|
|
21
21
|
|
|
22
|
+
const getRetailerImage = async () => {
|
|
23
|
+
activeRetailer.image = `https://content-management-images.s3.amazonaws.com/retailers/${activeRetailer.id}.png`;
|
|
24
|
+
retailers.forEach(
|
|
25
|
+
(retailer) =>
|
|
26
|
+
(retailer.image = `https://content-management-images.s3.amazonaws.com/retailers/${retailer.id}.png`)
|
|
27
|
+
);
|
|
28
|
+
};
|
|
29
|
+
|
|
22
30
|
useEffect(() => {
|
|
23
31
|
if (retailersPanel) {
|
|
24
32
|
document.addEventListener("click", closeRetailersPanel, false);
|
|
25
33
|
}
|
|
26
34
|
}, [retailersPanel]);
|
|
27
35
|
|
|
36
|
+
useEffect(() => {
|
|
37
|
+
getRetailerImage();
|
|
38
|
+
}, [activeRetailer]);
|
|
39
|
+
|
|
28
40
|
return (
|
|
29
41
|
<Container id="retailers-assignation">
|
|
30
42
|
<Avatar
|
|
@@ -25,6 +25,7 @@ export const StatusAsignationInfo = ({
|
|
|
25
25
|
id = "default-id",
|
|
26
26
|
onClickSave,
|
|
27
27
|
showSaveButton,
|
|
28
|
+
canAssign,
|
|
28
29
|
}) => {
|
|
29
30
|
const [showAsignationPanel, setShowAsignationPanel] = useState(false);
|
|
30
31
|
const [layout, setLayout] = useState(false);
|
|
@@ -70,7 +71,7 @@ export const StatusAsignationInfo = ({
|
|
|
70
71
|
slidefront={slidefront}
|
|
71
72
|
iconSize={"medium-image"}
|
|
72
73
|
slidePosition={"bottom-slide"}
|
|
73
|
-
|
|
74
|
+
></SliderToolTip>
|
|
74
75
|
{status !== "-" && <StatusTag statusType={status} ovalForm={true} />}
|
|
75
76
|
{showSaveButton && (
|
|
76
77
|
<Button
|
|
@@ -123,7 +124,7 @@ export const StatusAsignationInfo = ({
|
|
|
123
124
|
fontFamily={"Avenir Next"}
|
|
124
125
|
headerType={"input-name-header"}
|
|
125
126
|
/>
|
|
126
|
-
{showAsignationPanel && (
|
|
127
|
+
{showAsignationPanel && canAssign && (
|
|
127
128
|
<div className="asignation-panel">
|
|
128
129
|
<div className="asignation-header">
|
|
129
130
|
<div className="asignation-status">
|
|
@@ -26,7 +26,7 @@ export const FullProductNameHeader = ({
|
|
|
26
26
|
const element = [];
|
|
27
27
|
servicesData.forEach((sd) => {
|
|
28
28
|
if (sd.id_retailer === rt.id) {
|
|
29
|
-
element.push(sd.status ? sd.status : "
|
|
29
|
+
element.push(sd.status ? sd.status : "RECEIVED");
|
|
30
30
|
} else element.push("NA");
|
|
31
31
|
rt["services"] = element;
|
|
32
32
|
});
|
|
@@ -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}
|
|
@@ -79,7 +79,7 @@ export const ImageDataTable = ({
|
|
|
79
79
|
</Row>
|
|
80
80
|
{retailerSelected &&
|
|
81
81
|
lists?.attrForImgs &&
|
|
82
|
-
lists?.attrForImgs
|
|
82
|
+
lists?.attrForImgs?.general?.map((attr, index) => (
|
|
83
83
|
<Row key={"row-" + index + "-" + attr?.name}>
|
|
84
84
|
<ScreenHeader
|
|
85
85
|
headerType={"table-row-text"}
|
|
@@ -91,11 +91,8 @@ export const ImageDataTable = ({
|
|
|
91
91
|
onChange={(e) => {
|
|
92
92
|
setImages({
|
|
93
93
|
action: "changeAttrValue",
|
|
94
|
-
retailer: retailerSelected,
|
|
95
|
-
index,
|
|
96
94
|
value: e.target.value || "-",
|
|
97
|
-
|
|
98
|
-
retailersId: Object.keys(lists.attrForImgs).slice(0, -1),
|
|
95
|
+
id: attr.id,
|
|
99
96
|
});
|
|
100
97
|
}}
|
|
101
98
|
/>
|
|
@@ -16,109 +16,171 @@ ProviderProductEditionDefault.args = {
|
|
|
16
16
|
Imágenes: false,
|
|
17
17
|
},
|
|
18
18
|
token:
|
|
19
|
-
"eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.
|
|
19
|
+
"eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiI1ODg0YWUzNC01OWQ2LTQ0NTQtYjk4ZS04MjE1MThiY2MzYTciLCJjb2duaXRvOmdyb3VwcyI6WyJ1c3VhcmlvX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfWE1aUWRxa0dqIiwicGhvbmVfbnVtYmVyX3ZlcmlmaWVkIjpmYWxzZSwiY29nbml0bzp1c2VybmFtZSI6IjU4ODRhZTM0LTU5ZDYtNDQ1NC1iOThlLTgyMTUxOGJjYzNhNyIsImNvZ25pdG86cm9sZXMiOlsiYXJuOmF3czppYW06Ojg5ODY3MDIzMjgwNzpyb2xlXC9jb250ZW50b2gtZGV2LXVzLWVhc3QtMS1sYW1iZGFSb2xlIl0sImF1ZCI6IjVhYzh0cGdzNmdic3ExM2ZydnJwaWVlcDQwIiwiZXZlbnRfaWQiOiJhODE2NGMwNi1hN2U5LTQ2OGItYTBiMS02MDIxNzMyNWY0ZTgiLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY1NjExMzE0NiwibmFtZSI6IkNhZGVuYSBJc21hZWwiLCJwaG9uZV9udW1iZXIiOiIrNTIzMTExMzY2MzM2IiwiZXhwIjoxNjU2MTE2NzQ2LCJpYXQiOjE2NTYxMTMxNDYsImVtYWlsIjoiY2FkZW5hLmlzbWFlbEBhbGxmcmVlbWFpbC5uZXQifQ.kfMoKcxYDkpNZJibGdw50oOkRwPVl26YNAwwDoLEfQjOZB6WRCY95iHfU1maYcTTvA5KlT5ali8XZ-nLnxh60vZoLGTDOfCvEnwd1t94JtfE5CsWDr_jfH1U0AVidxihqKnkwvCezkHwU1DUFlbu2iBNo7MHQw4ydiK2sx4q0-QGltmE7W2JJ0sayRDuNchy2S6FQoyIWhsP3oaKTvJGDKCaJxwkFEKk-3antoMtfua9H8V4p2Kkqa_eDbFk8pLYGaYgImLlaia2orGgETkHZIWEMr4WJq1V_7qOg4lYq2BUUuMhWdmK6XUL_Jhmv05TUJ3Rp_Ti4_J2WE4zQqhbfQ",
|
|
20
20
|
articleId: 238,
|
|
21
21
|
category: 846,
|
|
22
22
|
version: 2,
|
|
23
23
|
productSelected: {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
categoryName: "Salud y Belleza|Cosméticos y Accesorios|Cosméticos",
|
|
31
|
-
asignations: [],
|
|
24
|
+
orderId: 55,
|
|
25
|
+
article_status: "AP",
|
|
26
|
+
datasheet_status: "AP",
|
|
27
|
+
description_status: "AP",
|
|
28
|
+
images_status: "AP",
|
|
29
|
+
prio: "none",
|
|
32
30
|
version: 2,
|
|
33
|
-
|
|
31
|
+
brand: null,
|
|
32
|
+
article: {
|
|
33
|
+
category: "ILUMINACIÓN|FOCOS|FOCOS",
|
|
34
|
+
company_name: "THD Proveedor",
|
|
35
|
+
country: "México",
|
|
36
|
+
id_category: "2143",
|
|
37
|
+
id_article: 55118,
|
|
38
|
+
name: "FOCO BLUETOOTH SPOT PHILIPS 6 WATTS 300 LÚMENES MULTICOLOR",
|
|
39
|
+
upc: "145582",
|
|
40
|
+
},
|
|
41
|
+
retailers: [
|
|
42
|
+
{
|
|
43
|
+
id: 58,
|
|
44
|
+
name: "The Home Depot Golden",
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
id: 59,
|
|
48
|
+
name: "The Home Depot Platinum",
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
id: 60,
|
|
52
|
+
name: "The Home Depot Resizing",
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
id: 61,
|
|
56
|
+
name: "Home Depot TAB",
|
|
57
|
+
},
|
|
58
|
+
],
|
|
59
|
+
services: {
|
|
60
|
+
datasheets: 1,
|
|
61
|
+
descriptions: 1,
|
|
62
|
+
images: 1,
|
|
63
|
+
},
|
|
64
|
+
id_article: 55118,
|
|
34
65
|
retailersAvailable: [
|
|
35
66
|
{
|
|
36
|
-
id:
|
|
37
|
-
name: "
|
|
38
|
-
country: "México",
|
|
39
|
-
id_region: 1,
|
|
40
|
-
active: 1,
|
|
67
|
+
id: 58,
|
|
68
|
+
name: "The Home Depot Golden",
|
|
41
69
|
},
|
|
42
70
|
{
|
|
43
|
-
id:
|
|
44
|
-
name: "
|
|
45
|
-
country: "México",
|
|
46
|
-
id_region: 1,
|
|
47
|
-
active: 1,
|
|
71
|
+
id: 59,
|
|
72
|
+
name: "The Home Depot Platinum",
|
|
48
73
|
},
|
|
49
74
|
{
|
|
50
|
-
id:
|
|
51
|
-
name: "
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
75
|
+
id: 60,
|
|
76
|
+
name: "The Home Depot Resizing",
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
id: 61,
|
|
80
|
+
name: "Home Depot TAB",
|
|
55
81
|
},
|
|
56
82
|
],
|
|
57
|
-
missing: {},
|
|
58
83
|
},
|
|
59
84
|
productToEdit: {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
product:
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
id_region: 1,
|
|
80
|
-
active: 1,
|
|
81
|
-
},
|
|
82
|
-
],
|
|
83
|
-
missing: {},
|
|
85
|
+
ArticleId: 55118,
|
|
86
|
+
idCategory: "2143",
|
|
87
|
+
product: {
|
|
88
|
+
orderId: 55,
|
|
89
|
+
article_status: "AP",
|
|
90
|
+
datasheet_status: "AP",
|
|
91
|
+
description_status: "AP",
|
|
92
|
+
images_status: "AP",
|
|
93
|
+
prio: "none",
|
|
94
|
+
version: 2,
|
|
95
|
+
brand: null,
|
|
96
|
+
article: {
|
|
97
|
+
category: "ILUMINACIÓN|FOCOS|FOCOS",
|
|
98
|
+
company_name: "THD Proveedor",
|
|
99
|
+
country: "México",
|
|
100
|
+
id_category: "2143",
|
|
101
|
+
id_article: 55118,
|
|
102
|
+
name: "FOCO BLUETOOTH SPOT PHILIPS 6 WATTS 300 LÚMENES MULTICOLOR",
|
|
103
|
+
upc: "145582",
|
|
84
104
|
},
|
|
85
|
-
|
|
105
|
+
retailers: [
|
|
106
|
+
{
|
|
107
|
+
id: 58,
|
|
108
|
+
name: "The Home Depot Golden",
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
id: 59,
|
|
112
|
+
name: "The Home Depot Platinum",
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
id: 60,
|
|
116
|
+
name: "The Home Depot Resizing",
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
id: 61,
|
|
120
|
+
name: "Home Depot TAB",
|
|
121
|
+
},
|
|
122
|
+
],
|
|
123
|
+
services: {
|
|
124
|
+
datasheets: 1,
|
|
125
|
+
descriptions: 1,
|
|
126
|
+
images: 1,
|
|
127
|
+
},
|
|
128
|
+
id_article: 55118,
|
|
129
|
+
retailersAvailable: [
|
|
130
|
+
{
|
|
131
|
+
id: 58,
|
|
132
|
+
name: "The Home Depot Golden",
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
id: 59,
|
|
136
|
+
name: "The Home Depot Platinum",
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
id: 60,
|
|
140
|
+
name: "The Home Depot Resizing",
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
id: 61,
|
|
144
|
+
name: "Home Depot TAB",
|
|
145
|
+
},
|
|
146
|
+
],
|
|
147
|
+
},
|
|
86
148
|
},
|
|
87
149
|
location: {
|
|
88
150
|
product: { articleId: 109485, versionId: 3 },
|
|
89
|
-
state: { origin: "
|
|
151
|
+
state: { origin: "Contentoh" },
|
|
90
152
|
},
|
|
91
153
|
user: {
|
|
92
|
-
id_user:
|
|
93
|
-
name: "
|
|
94
|
-
last_name: "
|
|
95
|
-
email: "
|
|
96
|
-
position: "
|
|
154
|
+
id_user: 59,
|
|
155
|
+
name: "The Home",
|
|
156
|
+
last_name: "Depot",
|
|
157
|
+
email: "cadena.ismael@allfreemail.net",
|
|
158
|
+
position: "Admin",
|
|
97
159
|
telephone: "+523111366336",
|
|
98
160
|
country: "México",
|
|
99
|
-
id_company:
|
|
100
|
-
id_cognito: "
|
|
161
|
+
id_company: 7,
|
|
162
|
+
id_cognito: "5884ae34-59d6-4454-b98e-821518bcc3a7",
|
|
101
163
|
birth_Date: null,
|
|
102
164
|
about_me: null,
|
|
103
165
|
zip_code: null,
|
|
104
166
|
address: null,
|
|
105
167
|
job: null,
|
|
106
|
-
id_stripe: "
|
|
168
|
+
id_stripe: "",
|
|
107
169
|
id_role: 0,
|
|
108
170
|
active: 1,
|
|
109
171
|
is_retailer: 0,
|
|
110
|
-
email_notify:
|
|
172
|
+
email_notify: 1,
|
|
111
173
|
membership: {
|
|
112
|
-
id:
|
|
113
|
-
start_date: "
|
|
114
|
-
end_date: "
|
|
115
|
-
planID:
|
|
116
|
-
plan: "
|
|
117
|
-
name: "Plan
|
|
118
|
-
user_limit: "
|
|
119
|
-
products_limit: "
|
|
174
|
+
id: 24,
|
|
175
|
+
start_date: "2021-11-23T03:35:50.000Z",
|
|
176
|
+
end_date: "2022-11-23T03:35:50.000Z",
|
|
177
|
+
planID: 9,
|
|
178
|
+
plan: "prod_KtlkzZVGq6bRTO",
|
|
179
|
+
name: "Plan Enterprise Full",
|
|
180
|
+
user_limit: "30",
|
|
181
|
+
products_limit: "10000",
|
|
120
182
|
type: "Enterprise",
|
|
121
183
|
},
|
|
122
|
-
src: "https://content-management-profile.s3.amazonaws.com/id-
|
|
184
|
+
src: "https://content-management-profile.s3.amazonaws.com/id-59/59.png?1656113146885",
|
|
123
185
|
},
|
|
124
|
-
};
|
|
186
|
+
};
|