contentoh-components-library 21.5.60 → 21.5.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/ScreenHeader/styles.js +1 -1
- package/dist/components/molecules/RetailerSelector/index.js +11 -1
- package/dist/components/molecules/TabsMenu/index.js +3 -1
- package/dist/components/organisms/FullProductNameHeader/index.js +32 -41
- package/dist/components/organisms/FullTabsMenu/index.js +2 -0
- package/dist/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +609 -225
- package/dist/components/pages/ProviderProductEdition/context/provider-product-edition.context.js +620 -0
- package/dist/components/pages/ProviderProductEdition/context/provider-product-edition.reducer.js +57 -0
- package/dist/components/pages/ProviderProductEdition/context/reducers/active-state.js +234 -0
- package/dist/components/pages/ProviderProductEdition/context/reducers/inputs.js +140 -0
- package/dist/components/pages/ProviderProductEdition/context/reducers/product.js +74 -0
- package/dist/components/pages/ProviderProductEdition/context/reducers/system.js +76 -0
- package/dist/components/pages/ProviderProductEdition/index.js +1183 -2201
- package/dist/components/pages/ProviderProductEdition/styles.js +2 -2
- package/dist/components/pages/ProviderProductEdition/utils.js +75 -0
- package/dist/global-files/data.js +43 -2
- package/package.json +1 -1
- package/src/components/atoms/ScreenHeader/styles.js +1 -1
- package/src/components/molecules/RetailerSelector/index.js +5 -0
- package/src/components/molecules/TabsMenu/index.js +6 -1
- package/src/components/organisms/FullProductNameHeader/index.js +28 -32
- package/src/components/organisms/FullTabsMenu/index.js +2 -0
- package/src/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +444 -255
- package/src/components/pages/ProviderProductEdition/context/provider-product-edition.context.jsx +420 -0
- package/src/components/pages/ProviderProductEdition/context/provider-product-edition.reducer.js +62 -0
- package/src/components/pages/ProviderProductEdition/context/reducers/active-state.js +236 -0
- package/src/components/pages/ProviderProductEdition/context/reducers/inputs.js +146 -0
- package/src/components/pages/ProviderProductEdition/context/reducers/product.js +60 -0
- package/src/components/pages/ProviderProductEdition/context/reducers/system.js +60 -0
- package/src/components/pages/ProviderProductEdition/index.js +1132 -1670
- package/src/components/pages/ProviderProductEdition/styles.js +42 -1
- package/src/components/pages/ProviderProductEdition/utils.js +72 -0
- package/src/global-files/data.js +16 -0
|
@@ -15,7 +15,7 @@ var _variables = require("../../../global-files/variables");
|
|
|
15
15
|
|
|
16
16
|
var _templateObject;
|
|
17
17
|
|
|
18
|
-
var Container = _styledComponents.default.h2(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n font-family: ", ";\n font-style: normal;\n font-size: 36px;\n line-height: 42px;\n font-feature-settings: \"pnum\" on, \"lnum\" on;\n color: ", ";\n position: relative;\n
|
|
18
|
+
var Container = _styledComponents.default.h2(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n font-family: ", ";\n font-style: normal;\n font-size: 36px;\n line-height: 42px;\n font-feature-settings: \"pnum\" on, \"lnum\" on;\n color: ", ";\n position: relative;\n margin-top: 8px;\n &.with-bold-text {\n span {\n font-family: ", ";\n }\n }\n\n &.product-name-header {\n font-size: 24px;\n line-height: 36px;\n font-weight: 500;\n letter-spacing: -0.015em;\n color: ", ";\n }\n\n &.retailer-name-header {\n font-size: 18px;\n font-weight: 400;\n line-height: 19px;\n color: ", ";\n }\n\n &.input-name-header {\n font-size: 14px;\n line-height: 19px;\n height: 19px;\n max-width: 100%;\n font-weight: 400;\n color: ", ";\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n &.date-header {\n font-family: ", ";\n color: ", ";\n font-size: 13px;\n font-weight: 400;\n line-height: 18px;\n }\n\n &.table-row-text {\n font-family: ", ";\n color: ", ";\n font-weight: 400;\n font-size: 11px;\n line-height: 18px;\n\n &:last-child {\n min-width: 50px;\n text-align: center;\n }\n }\n\n &.gray-table-row {\n font-family: ", ";\n font-weight: 400;\n font-size: 11px;\n line-height: 19px;\n color: ", ";\n background-color: ", ";\n padding: 1px 3px;\n border-radius: 3px;\n min-width: 50px;\n text-align: center;\n }\n &.header-and-paragraph {\n font-family: ", ";\n font-size: 36px;\n color: ", ";\n p {\n font-family: ", ";\n font-size: 14px;\n color: ", ";\n letter-spacing: -0.015em;\n }\n }\n"])), function (props) {
|
|
19
19
|
return props.fontFamily;
|
|
20
20
|
}, function (props) {
|
|
21
21
|
return props.color;
|
|
@@ -51,12 +51,22 @@ var RetailerSelector = function RetailerSelector(_ref) {
|
|
|
51
51
|
while (1) {
|
|
52
52
|
switch (_context.prev = _context.next) {
|
|
53
53
|
case 0:
|
|
54
|
+
if (!(activeRetailer.image || retailers.map(function (retailer) {
|
|
55
|
+
return retailer.image;
|
|
56
|
+
}).includes(true))) {
|
|
57
|
+
_context.next = 2;
|
|
58
|
+
break;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
return _context.abrupt("return");
|
|
62
|
+
|
|
63
|
+
case 2:
|
|
54
64
|
activeRetailer.image = "https://content-management-images.s3.amazonaws.com/retailers/".concat(activeRetailer.id, ".png");
|
|
55
65
|
retailers.forEach(function (retailer) {
|
|
56
66
|
return retailer.image = "https://content-management-images.s3.amazonaws.com/retailers/".concat(retailer.id, ".png");
|
|
57
67
|
});
|
|
58
68
|
|
|
59
|
-
case
|
|
69
|
+
case 4:
|
|
60
70
|
case "end":
|
|
61
71
|
return _context.stop();
|
|
62
72
|
}
|
|
@@ -29,6 +29,7 @@ var TabsMenu = function TabsMenu(_ref) {
|
|
|
29
29
|
activeTab = _ref.activeTab,
|
|
30
30
|
updatedDescriptions = _ref.updatedDescriptions,
|
|
31
31
|
updatedDatasheets = _ref.updatedDatasheets,
|
|
32
|
+
updatedImages = _ref.updatedImages,
|
|
32
33
|
images = _ref.images,
|
|
33
34
|
setUpdatedDescriptions = _ref.setUpdatedDescriptions,
|
|
34
35
|
setUpdatedDatasheets = _ref.setUpdatedDatasheets,
|
|
@@ -90,10 +91,11 @@ var TabsMenu = function TabsMenu(_ref) {
|
|
|
90
91
|
var targetIsTheCurrentTab = e.target.innerHTML === activeTab;
|
|
91
92
|
var descriptionsWereUpdated = updatedDescriptions.length > 0;
|
|
92
93
|
var datasheetWereUpdated = updatedDatasheets.length > 0;
|
|
94
|
+
var imagesUpdated = updatedImages.length > 0;
|
|
93
95
|
var imagesWereUpdated = (images === null || images === void 0 ? void 0 : (_images$values = images.values) === null || _images$values === void 0 ? void 0 : (_images$values$filter = _images$values.filter(function (f) {
|
|
94
96
|
return !f.id;
|
|
95
97
|
})) === null || _images$values$filter === void 0 ? void 0 : _images$values$filter.length) > 0;
|
|
96
|
-
var dataWereUpdated = descriptionsWereUpdated || datasheetWereUpdated || imagesWereUpdated;
|
|
98
|
+
var dataWereUpdated = descriptionsWereUpdated || datasheetWereUpdated || imagesWereUpdated || imagesUpdated;
|
|
97
99
|
|
|
98
100
|
if (!targetIsTheCurrentTab && !dataWereUpdated) {
|
|
99
101
|
setLlave(key);
|
|
@@ -7,8 +7,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.FullProductNameHeader = void 0;
|
|
9
9
|
|
|
10
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/toConsumableArray"));
|
|
11
|
-
|
|
12
10
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
13
11
|
|
|
14
12
|
var _styles = require("./styles");
|
|
@@ -24,7 +22,7 @@ var _react = require("react");
|
|
|
24
22
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
25
23
|
|
|
26
24
|
var FullProductNameHeader = function FullProductNameHeader(_ref) {
|
|
27
|
-
var _headerData$article3, _headerData$article4, _headerData$article5, _headerData$article6, _headerData$
|
|
25
|
+
var _headerData$article2, _headerData$article3, _headerData$article4, _headerData$article5, _headerData$article6, _headerData$article6$, _headerData$article6$2, _headerData$categoryR2, _headerData$categoryR3, _headerData$article7;
|
|
28
26
|
|
|
29
27
|
var headerData = _ref.headerData,
|
|
30
28
|
percent = _ref.percent,
|
|
@@ -53,40 +51,33 @@ var FullProductNameHeader = function FullProductNameHeader(_ref) {
|
|
|
53
51
|
setRetailerIndex = _useState4[1];
|
|
54
52
|
|
|
55
53
|
(0, _react.useEffect)(function () {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
var
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
return (_retailer$id_retailer = retailer === null || retailer === void 0 ? void 0 : retailer.id_retailer) !== null && _retailer$id_retailer !== void 0 ? _retailer$id_retailer : retailer === null || retailer === void 0 ? void 0 : retailer.retailer_id;
|
|
64
|
-
})) || [];
|
|
65
|
-
var uniqueIds = (0, _toConsumableArray2.default)(new Set(ids));
|
|
66
|
-
var categoryRetailer = (headerData === null || headerData === void 0 ? void 0 : (_headerData$article = headerData.article) === null || _headerData$article === void 0 ? void 0 : _headerData$article.categoryRetailer) || (headerData === null || headerData === void 0 ? void 0 : headerData.categoryRetailer);
|
|
67
|
-
var categoriesRetailers = categoryRetailer.filter(function (retailer) {
|
|
68
|
-
return uniqueIds.includes(retailer === null || retailer === void 0 ? void 0 : retailer.id_retailer) || uniqueIds.includes(retailer === null || retailer === void 0 ? void 0 : retailer.retailer_id);
|
|
69
|
-
});
|
|
70
|
-
console.log("categoriesRetailers", categoriesRetailers);
|
|
71
|
-
var rtls = categoriesRetailers === null || categoriesRetailers === void 0 ? void 0 : categoriesRetailers.map(function (retailer) {
|
|
72
|
-
var _retailer$id_retailer2;
|
|
73
|
-
|
|
54
|
+
// necesitamos definir los retailers que se deberan de mostrar en el selecto de retailers
|
|
55
|
+
// Si se viene desde la vista de productos se deben usar los de categoryRetailer
|
|
56
|
+
// Si se vene desde la vista de tareas entonces se debe trabajar con los retailers que esten en statusByRetailer
|
|
57
|
+
var ifFromTasks = headerData.statusByRetailer;
|
|
58
|
+
var categoryRetailer = headerData.categoryRetailer || headerData.article.categoryRetailer;
|
|
59
|
+
var categoryRetailerNormalized = categoryRetailer ? categoryRetailer.map(function (rel) {
|
|
74
60
|
return {
|
|
75
|
-
|
|
76
|
-
|
|
61
|
+
id_retailer: rel.id_retailer || rel.retailer_id,
|
|
62
|
+
retailer: rel.retailer_name || rel.retailerName || rel.retailer,
|
|
63
|
+
name: rel.retailer_name || rel.retailerName || rel.retailer,
|
|
64
|
+
id_category: rel.id_category,
|
|
65
|
+
category: rel.category_name || rel.categoryName || rel.category,
|
|
66
|
+
image: "https://content-management-images.s3.amazonaws.com/retailers/".concat(rel.id_retailer || rel.retailer_id, ".png")
|
|
77
67
|
};
|
|
68
|
+
}) : null;
|
|
69
|
+
var retailersIdsFromStatusByRetailer = Object.keys(headerData.statusByRetailer || {}).map(function (id) {
|
|
70
|
+
return parseInt(id, 10);
|
|
78
71
|
});
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
element.push(sd.status ? sd.status : "R");
|
|
84
|
-
} else element.push("NA");
|
|
85
|
-
|
|
86
|
-
rt["services"] = element;
|
|
72
|
+
|
|
73
|
+
if (ifFromTasks) {
|
|
74
|
+
var categoryRetailerInOrder = categoryRetailerNormalized.filter(function (rel) {
|
|
75
|
+
return retailersIdsFromStatusByRetailer.includes(rel.id_retailer);
|
|
87
76
|
});
|
|
88
|
-
|
|
89
|
-
|
|
77
|
+
setRetailers(categoryRetailerInOrder);
|
|
78
|
+
} else {
|
|
79
|
+
setRetailers(categoryRetailerNormalized);
|
|
80
|
+
}
|
|
90
81
|
}, [servicesData]);
|
|
91
82
|
|
|
92
83
|
var getTime = function getTime(date) {
|
|
@@ -95,9 +86,9 @@ var FullProductNameHeader = function FullProductNameHeader(_ref) {
|
|
|
95
86
|
};
|
|
96
87
|
|
|
97
88
|
(0, _react.useEffect)(function () {
|
|
98
|
-
var _headerData$article$c, _headerData$
|
|
89
|
+
var _headerData$article$c, _headerData$article, _headerData$article$c2, _headerData$categoryR;
|
|
99
90
|
|
|
100
|
-
var index = (_headerData$article$c = headerData === null || headerData === void 0 ? void 0 : (_headerData$
|
|
91
|
+
var index = (_headerData$article$c = headerData === null || headerData === void 0 ? void 0 : (_headerData$article = headerData.article) === null || _headerData$article === void 0 ? void 0 : (_headerData$article$c2 = _headerData$article.categoryRetailer) === null || _headerData$article$c2 === void 0 ? void 0 : _headerData$article$c2.findIndex(function (retailer) {
|
|
101
92
|
return (retailer === null || retailer === void 0 ? void 0 : retailer.id_retailer) === (activeRetailer === null || activeRetailer === void 0 ? void 0 : activeRetailer.id);
|
|
102
93
|
})) !== null && _headerData$article$c !== void 0 ? _headerData$article$c : headerData === null || headerData === void 0 ? void 0 : (_headerData$categoryR = headerData.categoryRetailer) === null || _headerData$categoryR === void 0 ? void 0 : _headerData$categoryR.findIndex(function (retailer) {
|
|
103
94
|
return (retailer === null || retailer === void 0 ? void 0 : retailer.retailer_id) === (activeRetailer === null || activeRetailer === void 0 ? void 0 : activeRetailer.id);
|
|
@@ -106,13 +97,13 @@ var FullProductNameHeader = function FullProductNameHeader(_ref) {
|
|
|
106
97
|
}, [activeRetailer]);
|
|
107
98
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_styles.Container, {
|
|
108
99
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ProductNameHeader.ProductNameHeader, {
|
|
109
|
-
productName: (headerData === null || headerData === void 0 ? void 0 : (_headerData$
|
|
100
|
+
productName: (headerData === null || headerData === void 0 ? void 0 : (_headerData$article2 = headerData.article) === null || _headerData$article2 === void 0 ? void 0 : _headerData$article2.name) || (headerData === null || headerData === void 0 ? void 0 : headerData.name),
|
|
110
101
|
statusType: (headerData === null || headerData === void 0 ? void 0 : headerData.version_status) || (headerData === null || headerData === void 0 ? void 0 : headerData.status) || (headerData === null || headerData === void 0 ? void 0 : headerData.article_status),
|
|
111
102
|
percentRequired: percent,
|
|
112
103
|
percent: percent === null || percent === void 0 ? void 0 : percent.toFixed(0),
|
|
113
104
|
priority: headerData === null || headerData === void 0 ? void 0 : headerData.prio,
|
|
114
105
|
productObservation: productObservation,
|
|
115
|
-
date: getTime((headerData === null || headerData === void 0 ? void 0 : (_headerData$
|
|
106
|
+
date: getTime((headerData === null || headerData === void 0 ? void 0 : (_headerData$article3 = headerData.article) === null || _headerData$article3 === void 0 ? void 0 : _headerData$article3.timestamp) || (headerData === null || headerData === void 0 ? void 0 : headerData.timestamp)),
|
|
116
107
|
dataProduct: headerData,
|
|
117
108
|
isObservationVisible: isObservationVisible,
|
|
118
109
|
toggleObservation: toggleObservation // handleClickOutside ={handleClickOutside}
|
|
@@ -123,16 +114,16 @@ var FullProductNameHeader = function FullProductNameHeader(_ref) {
|
|
|
123
114
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_FeaturesBar.FeaturesBar, {
|
|
124
115
|
features: [{
|
|
125
116
|
feature: "UPC",
|
|
126
|
-
value: (headerData === null || headerData === void 0 ? void 0 : (_headerData$
|
|
117
|
+
value: (headerData === null || headerData === void 0 ? void 0 : (_headerData$article4 = headerData.article) === null || _headerData$article4 === void 0 ? void 0 : _headerData$article4.upc) || (headerData === null || headerData === void 0 ? void 0 : headerData.upc)
|
|
127
118
|
}, {
|
|
128
119
|
feature: "SKU",
|
|
129
|
-
value: (headerData === null || headerData === void 0 ? void 0 : (_headerData$
|
|
120
|
+
value: (headerData === null || headerData === void 0 ? void 0 : (_headerData$article5 = headerData.article) === null || _headerData$article5 === void 0 ? void 0 : _headerData$article5.sku) || (headerData === null || headerData === void 0 ? void 0 : headerData.sku)
|
|
130
121
|
}, {
|
|
131
122
|
feature: "Categoría",
|
|
132
|
-
value: (headerData === null || headerData === void 0 ? void 0 : (_headerData$
|
|
123
|
+
value: (headerData === null || headerData === void 0 ? void 0 : (_headerData$article6 = headerData.article) === null || _headerData$article6 === void 0 ? void 0 : (_headerData$article6$ = _headerData$article6.categoryRetailer) === null || _headerData$article6$ === void 0 ? void 0 : (_headerData$article6$2 = _headerData$article6$[retailerIndex]) === null || _headerData$article6$2 === void 0 ? void 0 : _headerData$article6$2.category_name) || (headerData === null || headerData === void 0 ? void 0 : (_headerData$categoryR2 = headerData.categoryRetailer) === null || _headerData$categoryR2 === void 0 ? void 0 : (_headerData$categoryR3 = _headerData$categoryR2[retailerIndex]) === null || _headerData$categoryR3 === void 0 ? void 0 : _headerData$categoryR3.categoryName) || headerData.categoryName
|
|
133
124
|
}, {
|
|
134
125
|
feature: "Prov",
|
|
135
|
-
value: headerData === null || headerData === void 0 ? void 0 : (_headerData$
|
|
126
|
+
value: headerData === null || headerData === void 0 ? void 0 : (_headerData$article7 = headerData.article) === null || _headerData$article7 === void 0 ? void 0 : _headerData$article7.company_name
|
|
136
127
|
}]
|
|
137
128
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_AvatarAndValidation.AvatarAndValidation, {
|
|
138
129
|
retailers: retailers,
|
|
@@ -39,6 +39,7 @@ var FullTabsMenu = function FullTabsMenu(_ref) {
|
|
|
39
39
|
images = _ref.images,
|
|
40
40
|
updatedDescriptions = _ref.updatedDescriptions,
|
|
41
41
|
updatedDatasheets = _ref.updatedDatasheets,
|
|
42
|
+
updatedImages = _ref.updatedImages,
|
|
42
43
|
selectedImages = _ref.selectedImages,
|
|
43
44
|
setSelectedImages = _ref.setSelectedImages,
|
|
44
45
|
setUpdatedDescriptions = _ref.setUpdatedDescriptions,
|
|
@@ -60,6 +61,7 @@ var FullTabsMenu = function FullTabsMenu(_ref) {
|
|
|
60
61
|
images: images,
|
|
61
62
|
updatedDescriptions: updatedDescriptions,
|
|
62
63
|
updatedDatasheets: updatedDatasheets,
|
|
64
|
+
updatedImages: updatedImages,
|
|
63
65
|
selectedImages: selectedImages,
|
|
64
66
|
setUpdatedDescriptions: setUpdatedDescriptions,
|
|
65
67
|
setUpdatedDatasheets: setUpdatedDatasheets,
|