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.
Files changed (33) hide show
  1. package/dist/components/atoms/ScreenHeader/styles.js +1 -1
  2. package/dist/components/molecules/RetailerSelector/index.js +11 -1
  3. package/dist/components/molecules/TabsMenu/index.js +3 -1
  4. package/dist/components/organisms/FullProductNameHeader/index.js +32 -41
  5. package/dist/components/organisms/FullTabsMenu/index.js +2 -0
  6. package/dist/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +609 -225
  7. package/dist/components/pages/ProviderProductEdition/context/provider-product-edition.context.js +620 -0
  8. package/dist/components/pages/ProviderProductEdition/context/provider-product-edition.reducer.js +57 -0
  9. package/dist/components/pages/ProviderProductEdition/context/reducers/active-state.js +234 -0
  10. package/dist/components/pages/ProviderProductEdition/context/reducers/inputs.js +140 -0
  11. package/dist/components/pages/ProviderProductEdition/context/reducers/product.js +74 -0
  12. package/dist/components/pages/ProviderProductEdition/context/reducers/system.js +76 -0
  13. package/dist/components/pages/ProviderProductEdition/index.js +1183 -2201
  14. package/dist/components/pages/ProviderProductEdition/styles.js +2 -2
  15. package/dist/components/pages/ProviderProductEdition/utils.js +75 -0
  16. package/dist/global-files/data.js +43 -2
  17. package/package.json +1 -1
  18. package/src/components/atoms/ScreenHeader/styles.js +1 -1
  19. package/src/components/molecules/RetailerSelector/index.js +5 -0
  20. package/src/components/molecules/TabsMenu/index.js +6 -1
  21. package/src/components/organisms/FullProductNameHeader/index.js +28 -32
  22. package/src/components/organisms/FullTabsMenu/index.js +2 -0
  23. package/src/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +444 -255
  24. package/src/components/pages/ProviderProductEdition/context/provider-product-edition.context.jsx +420 -0
  25. package/src/components/pages/ProviderProductEdition/context/provider-product-edition.reducer.js +62 -0
  26. package/src/components/pages/ProviderProductEdition/context/reducers/active-state.js +236 -0
  27. package/src/components/pages/ProviderProductEdition/context/reducers/inputs.js +146 -0
  28. package/src/components/pages/ProviderProductEdition/context/reducers/product.js +60 -0
  29. package/src/components/pages/ProviderProductEdition/context/reducers/system.js +60 -0
  30. package/src/components/pages/ProviderProductEdition/index.js +1132 -1670
  31. package/src/components/pages/ProviderProductEdition/styles.js +42 -1
  32. package/src/components/pages/ProviderProductEdition/utils.js +72 -0
  33. 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\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) {
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 2:
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$article7, _headerData$article7$, _headerData$article7$2, _headerData$categoryR2, _headerData$categoryR3, _headerData$article8;
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
- var _headerData$article;
57
-
58
- var retailers = (headerData === null || headerData === void 0 ? void 0 : headerData.statusByRetailer) || (headerData === null || headerData === void 0 ? void 0 : headerData.categoryRetailer);
59
- console.log("servicesData", retailers);
60
- var ids = (retailers === null || retailers === void 0 ? void 0 : retailers.map(function (retailer) {
61
- var _retailer$id_retailer;
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
- id: (_retailer$id_retailer2 = retailer === null || retailer === void 0 ? void 0 : retailer.id_retailer) !== null && _retailer$id_retailer2 !== void 0 ? _retailer$id_retailer2 : retailer === null || retailer === void 0 ? void 0 : retailer.retailer_id,
76
- name: (retailer === null || retailer === void 0 ? void 0 : retailer.retailer_name) || (retailer === null || retailer === void 0 ? void 0 : retailer.name) || retailer.retailerName
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
- servicesData && (rtls === null || rtls === void 0 ? void 0 : rtls.forEach(function (rt) {
80
- var element = [];
81
- servicesData.forEach(function (sd) {
82
- if (sd.id_retailer === rt.id) {
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
- setRetailers(rtls);
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$article2, _headerData$article2$, _headerData$categoryR;
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$article2 = headerData.article) === null || _headerData$article2 === void 0 ? void 0 : (_headerData$article2$ = _headerData$article2.categoryRetailer) === null || _headerData$article2$ === void 0 ? void 0 : _headerData$article2$.findIndex(function (retailer) {
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$article3 = headerData.article) === null || _headerData$article3 === void 0 ? void 0 : _headerData$article3.name) || (headerData === null || headerData === void 0 ? void 0 : headerData.name),
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$article4 = headerData.article) === null || _headerData$article4 === void 0 ? void 0 : _headerData$article4.timestamp) || (headerData === null || headerData === void 0 ? void 0 : headerData.timestamp)),
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$article5 = headerData.article) === null || _headerData$article5 === void 0 ? void 0 : _headerData$article5.upc) || (headerData === null || headerData === void 0 ? void 0 : headerData.upc)
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$article6 = headerData.article) === null || _headerData$article6 === void 0 ? void 0 : _headerData$article6.sku) || (headerData === null || headerData === void 0 ? void 0 : headerData.sku)
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$article7 = headerData.article) === null || _headerData$article7 === void 0 ? void 0 : (_headerData$article7$ = _headerData$article7.categoryRetailer) === null || _headerData$article7$ === void 0 ? void 0 : (_headerData$article7$2 = _headerData$article7$[retailerIndex]) === null || _headerData$article7$2 === void 0 ? void 0 : _headerData$article7$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
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$article8 = headerData.article) === null || _headerData$article8 === void 0 ? void 0 : _headerData$article8.company_name
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,