contentoh-components-library 21.3.33 → 21.3.34

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 (35) hide show
  1. package/dist/components/atoms/CustomSelectItem/index.js +1 -1
  2. package/dist/components/atoms/InputText/index.js +1 -1
  3. package/dist/components/atoms/ProductPercentCard/index.js +1 -1
  4. package/dist/components/atoms/Select/index.js +1 -1
  5. package/dist/components/molecules/ButtonDownloadFile/index.js +1 -1
  6. package/dist/components/molecules/CarouselImagesLogin/index.js +2 -2
  7. package/dist/components/molecules/ImageTooltip/index.js +7 -21
  8. package/dist/components/molecules/ProductNameHeader/index.js +0 -1
  9. package/dist/components/molecules/SelectV2/index.js +1 -1
  10. package/dist/components/organisms/Chat/Chat.stories.js +6 -5
  11. package/dist/components/organisms/Chat/ChatLists/index.js +2 -2
  12. package/dist/components/organisms/Chat/ContentChat/index.js +85 -49
  13. package/dist/components/organisms/Chat/Footer/index.js +21 -22
  14. package/dist/components/organisms/Chat/index.js +1 -1
  15. package/dist/components/organisms/FullProductNameHeader/index.js +7 -1
  16. package/dist/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +9 -6
  17. package/dist/global-files/handle_http.js +33 -31
  18. package/package.json +1 -1
  19. package/src/components/atoms/CustomSelectItem/index.js +2 -1
  20. package/src/components/atoms/InputText/index.js +1 -1
  21. package/src/components/atoms/ProductPercentCard/index.js +2 -2
  22. package/src/components/atoms/Select/index.js +1 -1
  23. package/src/components/molecules/ButtonDownloadFile/index.js +1 -1
  24. package/src/components/molecules/CarouselImagesLogin/index.js +2 -2
  25. package/src/components/molecules/ImageTooltip/index.js +7 -17
  26. package/src/components/molecules/ProductNameHeader/index.js +0 -1
  27. package/src/components/molecules/SelectV2/index.js +1 -1
  28. package/src/components/organisms/Chat/Chat.stories.js +5 -4
  29. package/src/components/organisms/Chat/ChatLists/index.js +2 -2
  30. package/src/components/organisms/Chat/ContentChat/index.js +35 -28
  31. package/src/components/organisms/Chat/Footer/index.js +4 -8
  32. package/src/components/organisms/Chat/index.js +1 -1
  33. package/src/components/organisms/FullProductNameHeader/index.js +8 -3
  34. package/src/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +11 -5
  35. package/src/global-files/handle_http.js +11 -13
@@ -55,6 +55,12 @@ var FullProductNameHeader = function FullProductNameHeader(_ref) {
55
55
  });
56
56
  setRetailers(rtls);
57
57
  }, [servicesData]);
58
+
59
+ var getTime = function getTime(date) {
60
+ if (!date) return "";
61
+ return new Date(date).toLocaleDateString();
62
+ };
63
+
58
64
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_styles.Container, {
59
65
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ProductNameHeader.ProductNameHeader, {
60
66
  productName: (headerData === null || headerData === void 0 ? void 0 : (_headerData$article = headerData.article) === null || _headerData$article === void 0 ? void 0 : _headerData$article.name) || (headerData === null || headerData === void 0 ? void 0 : headerData.name),
@@ -62,7 +68,7 @@ var FullProductNameHeader = function FullProductNameHeader(_ref) {
62
68
  percentRequired: percent,
63
69
  percent: percent === null || percent === void 0 ? void 0 : percent.toFixed(0),
64
70
  priority: headerData === null || headerData === void 0 ? void 0 : headerData.prio,
65
- date: new Date((headerData === null || headerData === void 0 ? void 0 : (_headerData$article2 = headerData.article) === null || _headerData$article2 === void 0 ? void 0 : _headerData$article2.timestamp) || (headerData === null || headerData === void 0 ? void 0 : headerData.timestamp)).toLocaleDateString()
71
+ date: getTime((headerData === null || headerData === void 0 ? void 0 : (_headerData$article2 = headerData.article) === null || _headerData$article2 === void 0 ? void 0 : _headerData$article2.timestamp) || (headerData === null || headerData === void 0 ? void 0 : headerData.timestamp))
66
72
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
67
73
  className: "features-bar-container",
68
74
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_FeaturesBar.FeaturesBar, {
@@ -28,10 +28,10 @@ exports.ProviderProductEditionDefault = ProviderProductEditionDefault;
28
28
  ProviderProductEditionDefault.args = {
29
29
  tabsSections: {
30
30
  Descripción: true,
31
- "Ficha técnica": true,
32
- Imágenes: true
31
+ "Ficha técnica": false,
32
+ Imágenes: false
33
33
  },
34
- token: "eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiI1ODg0YWUzNC01OWQ2LTQ0NTQtYjk4ZS04MjE1MThiY2MzYTciLCJjb2duaXRvOmdyb3VwcyI6WyJ1c3VhcmlvX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfWE1aUWRxa0dqIiwicGhvbmVfbnVtYmVyX3ZlcmlmaWVkIjpmYWxzZSwiY29nbml0bzp1c2VybmFtZSI6IjU4ODRhZTM0LTU5ZDYtNDQ1NC1iOThlLTgyMTUxOGJjYzNhNyIsImNvZ25pdG86cm9sZXMiOlsiYXJuOmF3czppYW06Ojg5ODY3MDIzMjgwNzpyb2xlXC9jb250ZW50b2gtZGV2LXVzLWVhc3QtMS1sYW1iZGFSb2xlIl0sImF1ZCI6IjVhYzh0cGdzNmdic3ExM2ZydnJwaWVlcDQwIiwiZXZlbnRfaWQiOiIwM2UyYWU3NS1hNzg0LTQwM2UtODE1YS0wOWUzYTZkYjg1M2UiLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY4MDAyNzUyNSwibmFtZSI6IkNhZGVuYSBJc21hZWwiLCJwaG9uZV9udW1iZXIiOiIrNTIzMTExMzY2MzM2IiwiZXhwIjoxNjgwMDMxMTI1LCJpYXQiOjE2ODAwMjc1MjUsImVtYWlsIjoiY2FkZW5hLmlzbWFlbEBhbGxmcmVlbWFpbC5uZXQifQ.cHoFb-dn2q9GkDfippwUGNLMMtn-1-36Jhuhi8zhHEKlvPf6QIqCzM7vs0WBAkCNlOLrE3pr00LwemQi9TMJENqnQ2d2mbZ9QrOwFDSxkk-8-J7wbcRdaLmQFebIJmx8Ta1mAJDqEXsx7LTWW8D1N28bA3DKUS7Jnw411kC-4C2nT-zr0jRD5D0998dOROkDg6_Rp27sPE-B3H3Su0Of4C6olqYLNdZSCRJBTiXs5zJqmvZxtDcr20EFTWfNzXjHP2BNsylUHe9AKZI_pNjA3zhApfddZiYHWt8IMsJCSoW8yp8orZkwNew0BaHCFCk2UjyQu3NlW8i6D4aVnullqQ",
34
+ token: "eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiI1ODg0YWUzNC01OWQ2LTQ0NTQtYjk4ZS04MjE1MThiY2MzYTciLCJjb2duaXRvOmdyb3VwcyI6WyJ1c3VhcmlvX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfWE1aUWRxa0dqIiwicGhvbmVfbnVtYmVyX3ZlcmlmaWVkIjpmYWxzZSwiY29nbml0bzp1c2VybmFtZSI6IjU4ODRhZTM0LTU5ZDYtNDQ1NC1iOThlLTgyMTUxOGJjYzNhNyIsImNvZ25pdG86cm9sZXMiOlsiYXJuOmF3czppYW06Ojg5ODY3MDIzMjgwNzpyb2xlXC9jb250ZW50b2gtZGV2LXVzLWVhc3QtMS1sYW1iZGFSb2xlIl0sImF1ZCI6IjVhYzh0cGdzNmdic3ExM2ZydnJwaWVlcDQwIiwiZXZlbnRfaWQiOiJlZjViNDQzYi02ODc0LTQ2NGQtOWZiZS00Y2UwNWU4ZDQ3YTEiLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY4MDAzODYyNiwibmFtZSI6IkNhZGVuYSBJc21hZWwiLCJwaG9uZV9udW1iZXIiOiIrNTIzMTExMzY2MzM2IiwiZXhwIjoxNjgwMDQyMjI1LCJpYXQiOjE2ODAwMzg2MjYsImVtYWlsIjoiY2FkZW5hLmlzbWFlbEBhbGxmcmVlbWFpbC5uZXQifQ.rhufpJdUaJOpiKtXJgNoDq863ecFnLp63c9_6NeEbpYYNN19d_xac8aZADN-QMpkmz1oxtqfxf_-JN5jMJexi9gJCRb9O7-xL75v_G9UjdmE8sRA6qRNb_tFUCt1oee_ulgqm_2wTjb7qGMGvY1eb1J1IX2pBYKnBy64KM6J5xFfZ57ac_bGruYhCzUexPBWyZKc5ckoY2zJqK5m5Ok7ds0m1hC0t-eQSGX_8KMsGQKiHevQ07cZUQ9mxOGVweRuAqITNx8fVmpD9QTpoZJJ5STVVcKO2CS0ltyE_DNlyejO7mZqbKvGEeLYc4ga0nozK9aP8H2cN_topT0d4JZ5rA",
35
35
  articleId: 238,
36
36
  category: 846,
37
37
  version: 2,
@@ -68,10 +68,13 @@ ProviderProductEditionDefault.args = {
68
68
  }]
69
69
  },
70
70
  location: {
71
+ pathname: "/EditProducts",
72
+ search: "",
73
+ hash: "",
71
74
  state: {
72
- origin: "Contentoh",
73
75
  withChat: true
74
- }
76
+ },
77
+ key: "24vwut"
75
78
  },
76
79
  user: {
77
80
  id_user: 59,
@@ -105,7 +108,7 @@ ProviderProductEditionDefault.args = {
105
108
  products_limit: "500",
106
109
  type: "PyMES"
107
110
  },
108
- src: "https://content-management-profile.s3.amazonaws.com/id-59/59.png?1680027527535"
111
+ src: "https://content-management-profile.s3.amazonaws.com/id-59/59.png?1680038627077"
109
112
  },
110
113
  company: {
111
114
  id_company: 817,
@@ -11,10 +11,20 @@ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"))
11
11
 
12
12
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
13
13
 
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
15
+
14
16
  var _axios = _interopRequireDefault(require("axios"));
15
17
 
16
- //============================================================
18
+ var objToQueryString = function objToQueryString(obj) {
19
+ if (!Object.values(obj).length) return null;
20
+ return Object.entries(obj).map(function (_ref) {
21
+ var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
22
+ key = _ref2[0],
23
+ value = _ref2[1];
17
24
 
25
+ return "".concat(key, "=").concat(encodeURIComponent(JSON.stringify(value)));
26
+ }).join("&");
27
+ };
18
28
  /**
19
29
  * funcion que realiza un axios GET
20
30
  *
@@ -24,16 +34,15 @@ var _axios = _interopRequireDefault(require("axios"));
24
34
  * body: {} | undefined ,
25
35
  * message: string,
26
36
  * errorDetail: string
27
- * }> }
28
- *
29
- */
30
- //============================================================
37
+ * }> } */
38
+
39
+
31
40
  var fetchGET = function fetchGET() {
32
41
  var endpoint = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "";
33
42
  var paramsQuery = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
34
43
  var paramsHeaders = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
35
44
  return new Promise( /*#__PURE__*/function () {
36
- var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(response) {
45
+ var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(response) {
37
46
  var URL, keysParamsQuery, respHTTPjson, body, _body$message, _body$errorDetail;
38
47
 
39
48
  return _regenerator.default.wrap(function _callee$(_context) {
@@ -41,26 +50,19 @@ var fetchGET = function fetchGET() {
41
50
  switch (_context.prev = _context.next) {
42
51
  case 0:
43
52
  _context.prev = 0;
44
- URL = endpoint;
53
+ URL = "".concat(endpoint, "?").concat(objToQueryString(paramsQuery));
45
54
  keysParamsQuery = Object.keys(paramsQuery); // agregar cada param query a la URL
46
55
 
47
- keysParamsQuery.forEach(function (key, index) {
48
- if (index == 0) {
49
- URL += "?".concat(key, "=").concat(paramsQuery[key]);
50
- } else {
51
- URL += "&".concat(key, "=").concat(paramsQuery[key]);
52
- }
53
- });
54
- _context.next = 6;
56
+ _context.next = 5;
55
57
  return _axios.default.get(URL, {
56
58
  headers: paramsHeaders
57
59
  });
58
60
 
59
- case 6:
61
+ case 5:
60
62
  respHTTPjson = _context.sent;
61
63
 
62
64
  if (!(respHTTPjson.status !== 200)) {
63
- _context.next = 9;
65
+ _context.next = 8;
64
66
  break;
65
67
  }
66
68
 
@@ -69,12 +71,12 @@ var fetchGET = function fetchGET() {
69
71
  errorDetail: respHTTPjson.statusText
70
72
  }));
71
73
 
72
- case 9:
74
+ case 8:
73
75
  // obtener body backend
74
76
  body = JSON.parse(respHTTPjson.data.body); // verificar si existe error desde el backend
75
77
 
76
78
  if (!(respHTTPjson.data.statusCode !== 200)) {
77
- _context.next = 12;
79
+ _context.next = 11;
78
80
  break;
79
81
  }
80
82
 
@@ -83,29 +85,29 @@ var fetchGET = function fetchGET() {
83
85
  errorDetail: (_body$errorDetail = body.errorDetail) !== null && _body$errorDetail !== void 0 ? _body$errorDetail : ""
84
86
  }));
85
87
 
86
- case 12:
88
+ case 11:
87
89
  return _context.abrupt("return", response({
88
90
  body: body
89
91
  }));
90
92
 
91
- case 15:
92
- _context.prev = 15;
93
+ case 14:
94
+ _context.prev = 14;
93
95
  _context.t0 = _context["catch"](0);
94
96
  return _context.abrupt("return", response({
95
97
  message: "Error al obtener los datos",
96
98
  errorDetail: _context.t0.message
97
99
  }));
98
100
 
99
- case 18:
101
+ case 17:
100
102
  case "end":
101
103
  return _context.stop();
102
104
  }
103
105
  }
104
- }, _callee, null, [[0, 15]]);
106
+ }, _callee, null, [[0, 14]]);
105
107
  }));
106
108
 
107
109
  return function (_x) {
108
- return _ref.apply(this, arguments);
110
+ return _ref3.apply(this, arguments);
109
111
  };
110
112
  }());
111
113
  }; //============================================================
@@ -132,7 +134,7 @@ var fetchPOST = function fetchPOST() {
132
134
  var paramsBody = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
133
135
  var paramsHeaders = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
134
136
  return new Promise( /*#__PURE__*/function () {
135
- var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(response) {
137
+ var _ref4 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(response) {
136
138
  var respHTTPjson, body, _body$message2, _body$errorDetail2;
137
139
 
138
140
  return _regenerator.default.wrap(function _callee2$(_context2) {
@@ -194,7 +196,7 @@ var fetchPOST = function fetchPOST() {
194
196
  }));
195
197
 
196
198
  return function (_x2) {
197
- return _ref2.apply(this, arguments);
199
+ return _ref4.apply(this, arguments);
198
200
  };
199
201
  }());
200
202
  }; //============================================================
@@ -221,7 +223,7 @@ var fetchPUT = function fetchPUT() {
221
223
  var paramsBody = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
222
224
  var paramsHeaders = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
223
225
  return new Promise( /*#__PURE__*/function () {
224
- var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(response) {
226
+ var _ref5 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(response) {
225
227
  var respHTTPjson, body, _body$message3, _body$errorDetail3;
226
228
 
227
229
  return _regenerator.default.wrap(function _callee3$(_context3) {
@@ -283,7 +285,7 @@ var fetchPUT = function fetchPUT() {
283
285
  }));
284
286
 
285
287
  return function (_x3) {
286
- return _ref3.apply(this, arguments);
288
+ return _ref5.apply(this, arguments);
287
289
  };
288
290
  }());
289
291
  }; //============================================================
@@ -310,7 +312,7 @@ var fetchDELETE = function fetchDELETE() {
310
312
  var paramsBody = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
311
313
  var paramsHeaders = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
312
314
  return new Promise( /*#__PURE__*/function () {
313
- var _ref4 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(response) {
315
+ var _ref6 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(response) {
314
316
  var respHTTPjson, body, _body$message4, _body$errorDetail4;
315
317
 
316
318
  return _regenerator.default.wrap(function _callee4$(_context4) {
@@ -373,7 +375,7 @@ var fetchDELETE = function fetchDELETE() {
373
375
  }));
374
376
 
375
377
  return function (_x4) {
376
- return _ref4.apply(this, arguments);
378
+ return _ref6.apply(this, arguments);
377
379
  };
378
380
  }());
379
381
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "contentoh-components-library",
3
- "version": "21.3.33",
3
+ "version": "21.3.34",
4
4
  "dependencies": {
5
5
  "@aws-amplify/auth": "^4.5.3",
6
6
  "@aws-amplify/datastore": "^3.11.0",
@@ -25,7 +25,8 @@ export const CustomSelectItem = ({
25
25
  const oneDimensionArray = (arr) => {
26
26
  var array = [];
27
27
  arr.forEach((element) => {
28
- if (typeof element == "object") array.push(...oneDimensionArray(element));
28
+ if (typeof element === "object")
29
+ array.push(...oneDimensionArray(element));
29
30
  else array.push(element);
30
31
  });
31
32
  return array;
@@ -49,7 +49,7 @@ export const InputText = (props) => {
49
49
  value={text}
50
50
  onChange={(event) => onChangeText && onChangeText(event.target.value)}
51
51
  onKeyDown={(event) => {
52
- if (event.key == "Enter" && !event.shiftKey) {
52
+ if (event.key === "Enter" && !event.shiftKey) {
53
53
  event.preventDefault();
54
54
  onEnter && onEnter(event);
55
55
  }
@@ -9,14 +9,14 @@ export const ProductPercentCard = ({
9
9
  var result = (productsInStatus / totalProcucts) * 100;
10
10
 
11
11
  var percent = result.toString().search(/\./) ? result.toFixed(2) : result;
12
-
12
+
13
13
  return (
14
14
  <Container className={`status-${statusType}`}>
15
15
  <p className="text">Productos en proceso</p>
16
16
  <div className="percent-text">
17
17
  <p className="number">{productsInStatus}</p>
18
18
  <img src={polygon} alt="" />
19
- <span className="span">{percent == "NaN" ? 0 : percent}%</span>
19
+ <span className="span">{percent === "NaN" ? 0 : percent}%</span>
20
20
  </div>
21
21
  </Container>
22
22
  );
@@ -22,7 +22,7 @@ export default function Select(props) {
22
22
  value={item.value ? item.value : item}
23
23
  // selected={
24
24
  // item.value
25
- // ? item.value == props.valueSelected && "selected"
25
+ // ? item.value === props.valueSelected && "selected"
26
26
  // : item === props.valueSelected && "selected"
27
27
  // }
28
28
  >
@@ -34,7 +34,7 @@ export const ButtonDownloadFile = (props) => {
34
34
  method: "GET",
35
35
  responseType: "blob",
36
36
  });
37
- if (responseFile.status != 200) {
37
+ if (responseFile.status !== 200) {
38
38
  setLoading(false);
39
39
  onDownload &&
40
40
  onDownload({
@@ -25,13 +25,13 @@ export const CarouselImagesLogin = ({
25
25
  circulos[0].classList.add("resaltado");
26
26
  const slideshow = () => {
27
27
  img2.src = images[i];
28
- const circulo_actual = Array.from(circulos).find((el) => el.id == i);
28
+ const circulo_actual = Array.from(circulos).find((el) => el.id === i);
29
29
  Array.from(circulos).forEach((cir) => cir.classList.remove("resaltado"));
30
30
  circulo_actual.classList.add("resaltado");
31
31
  img1.classList.add("right");
32
32
  img2.classList.add("active");
33
33
  i++;
34
- if (i == images.length) {
34
+ if (i === images.length) {
35
35
  i = 0;
36
36
  }
37
37
  setTimeout(() => {
@@ -7,7 +7,6 @@ import { Tooltip } from "../../atoms/Tooltip";
7
7
  export const ImageTooltip = (props) => {
8
8
  const {
9
9
  className, // string
10
- width, // string
11
10
  sizeLoading, // number
12
11
  colorLoading, // string
13
12
  classNameLoading, // string
@@ -19,15 +18,6 @@ export const ImageTooltip = (props) => {
19
18
  position, // (string) posicion del contenedor tooltip (values en object positions)
20
19
  } = props;
21
20
  const [imgLoad, setImgLoad] = useState();
22
- const [loading, setLoading] = useState(false);
23
-
24
- /* solo para hacer pruebas en modo dev
25
- useEffect(() => {
26
- setTimeout(() => {
27
- setLoading(false);
28
- }, 5000);
29
- }, []);
30
- */
31
21
 
32
22
  return (
33
23
  <Tooltip
@@ -37,9 +27,9 @@ export const ImageTooltip = (props) => {
37
27
  followCursor={false}
38
28
  className={className}
39
29
  classNameTooltip={classNameTooltip}
40
- componentTooltip={imgLoad !== undefined && !loading && componentTooltip}
30
+ componentTooltip={imgLoad !== undefined && componentTooltip}
41
31
  >
42
- {src && (imgLoad === undefined || loading) && (
32
+ {src && imgLoad === undefined && (
43
33
  <ContainerLoading
44
34
  className={classNameLoading}
45
35
  sizeLoading={sizeLoading}
@@ -49,14 +39,14 @@ export const ImageTooltip = (props) => {
49
39
  </ContainerLoading>
50
40
  )}
51
41
 
52
- {(!src || (imgLoad === false && !loading)) && componentDefault}
42
+ {(!src || imgLoad === false) && componentDefault}
53
43
 
54
44
  <Img
55
45
  className={classNameImg}
56
- src={src}
57
- onLoad={(event) => setImgLoad(true)}
58
- onError={(event) => setImgLoad(false)}
59
- show={imgLoad === true && !loading}
46
+ src={`${src}?${new Date().getMilliseconds()}`}
47
+ onLoad={() => setImgLoad(true)}
48
+ onError={() => setImgLoad(false)}
49
+ show={imgLoad === true}
60
50
  />
61
51
  </Tooltip>
62
52
  );
@@ -7,7 +7,6 @@ import { PriorityFlag } from "../../atoms/PriorityFlag/index";
7
7
  export const ProductNameHeader = ({
8
8
  productName,
9
9
  statusType,
10
- percent,
11
10
  priority,
12
11
  date,
13
12
  percentRequired,
@@ -142,7 +142,7 @@ export const SelectV2 = (props) => {
142
142
  } else if (selectedItemsCopy.length === 1) {
143
143
  let labelItem = undefined;
144
144
  for (const item of items) {
145
- if (item.value == selectedItemsCopy[0]) {
145
+ if (item.value === selectedItemsCopy[0]) {
146
146
  labelItem = item.label;
147
147
  break;
148
148
  }
@@ -135,15 +135,16 @@ chatTicket_userTECH.args = {
135
135
  chatContainerType: "fixed",
136
136
  chatData: {
137
137
  id: 130,
138
- ticketOwnerUserId: 49,
139
- ticketCompany: 817,
140
- statusTicket: "IN_PROGRESS",
138
+ ticketOwnerUserId: 194,
139
+ ticketCompany: undefined,
140
+ statusTicket: "PENDING",
141
141
  currentUser: {
142
142
  token:
143
- "eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiJmNTkyN2Y4ZS1jYmY3LTQ5MjItOWUwOS1lNjllYzBiMjczMWEiLCJjb2duaXRvOmdyb3VwcyI6WyJ1c3VhcmlvX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfWE1aUWRxa0dqIiwicGhvbmVfbnVtYmVyX3ZlcmlmaWVkIjpmYWxzZSwiY29nbml0bzp1c2VybmFtZSI6ImY1OTI3ZjhlLWNiZjctNDkyMi05ZTA5LWU2OWVjMGIyNzMxYSIsImNvZ25pdG86cm9sZXMiOlsiYXJuOmF3czppYW06Ojg5ODY3MDIzMjgwNzpyb2xlXC9jb250ZW50b2gtZGV2LXVzLWVhc3QtMS1sYW1iZGFSb2xlIl0sImF1ZCI6IjVhYzh0cGdzNmdic3ExM2ZydnJwaWVlcDQwIiwiZXZlbnRfaWQiOiI5M2FkOTM5Yy04MzJjLTQ4NWItOWUzMS0yN2MxNzBjMDk1NWEiLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY2OTY2MjU5MiwibmFtZSI6IklzbWFlbCBMb3BleiIsInBob25lX251bWJlciI6Iis1MjMxMTEzNjYzMzYiLCJleHAiOjE2Njk2NjYxOTIsImlhdCI6MTY2OTY2MjU5MiwiZW1haWwiOiJpbG9wZXpAY29udGVudG9oLmNvbSJ9.hhdlQk-ljHpyZPRoG02YcvPow8jpm9coZfmEuZ29vIVX7bX5k05Ss3FkaT0dYNr2qEvqZHHqH61oJvx4xr2i6z2c3xEZxyJZFR-Cc_skhH0UwGXbCH9up5PW1aipY5rL45E42R7GKSGmB5Z-B7vxe2NcL-ZojYZkXNZ7Gx_lM8Vpq-XsFLJ4nCJlH7vx9D4SkREN3lLfYIIgqNrxJ_wqfqvcqexwRJfnr76ZqCuDR4dTWsES2Lf5D8Wa_wkQAjQNdzP7ai28l9fRyCSwkTxvamdJkx7p-tssOL5pAnCsKkD22UN-09c1bhuGrgfKWUV4awbptfjvHS7TSq0bWiv4gQ",
143
+ "eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiJmNTkyN2Y4ZS1jYmY3LTQ5MjItOWUwOS1lNjllYzBiMjczMWEiLCJjb2duaXRvOmdyb3VwcyI6WyJ1c3VhcmlvX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfWE1aUWRxa0dqIiwicGhvbmVfbnVtYmVyX3ZlcmlmaWVkIjpmYWxzZSwiY29nbml0bzp1c2VybmFtZSI6ImY1OTI3ZjhlLWNiZjctNDkyMi05ZTA5LWU2OWVjMGIyNzMxYSIsImNvZ25pdG86cm9sZXMiOlsiYXJuOmF3czppYW06Ojg5ODY3MDIzMjgwNzpyb2xlXC9jb250ZW50b2gtZGV2LXVzLWVhc3QtMS1sYW1iZGFSb2xlIl0sImF1ZCI6IjVhYzh0cGdzNmdic3ExM2ZydnJwaWVlcDQwIiwiZXZlbnRfaWQiOiJlYTRlZmQ1Zi1mYTg4LTRjNDEtYTM3Ny02MWVkNmY0YTMyOTciLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY4MDA1Njg2NSwibmFtZSI6IklzbWFlbCBMb3BleiIsInBob25lX251bWJlciI6Iis1MjMxMTEzNjYzMzYiLCJleHAiOjE2ODAwNjA0NjUsImlhdCI6MTY4MDA1Njg2NSwiZW1haWwiOiJpbG9wZXpAY29udGVudG9oLmNvbSJ9.oRuv3LkdvctEMUjmeGw0-XefzV_Aoh1O2hFMik4RxpkkCUeP1O7AjA7lJI6sgoqa9Nwa2fCPRXk6ufi84UbgxGEgkupQmAvXTHQCw_uwCUVAZitlNGXSBl-VSisMuXSnckxdZQ1MvLV5BgLmiw4mu6HxKDN-Uw0xc7yL_yDtGu3NWxoO0Cm2zbej8jYLE9DV9wG297bjfzVQ7hzpEfEcB52I5Tg6nF2VDTx-8_m4mVVrpisbV5uBoYokbFyyOFVLZzUU7Je5uHukscHS5dje9IMTY8DE5S8xUWJubHjf_ktcy7Y2-F2cG5dI5oSdrBNU-wNNW5-OtRLgclSJLmbPCw",
144
144
  id: 28,
145
145
  companyId: 1,
146
146
  isUserTech: true,
147
147
  },
148
148
  },
149
+ classNameContainerFixed: "chatTicket",
149
150
  };
@@ -68,7 +68,7 @@ export const ChatLists = (props) => {
68
68
 
69
69
  {/* label interno */}
70
70
  <div className="container-indicators">
71
- {currentCompanyId == companyId && (
71
+ {currentCompanyId === companyId && (
72
72
  <div className="label-ownCompany">Interno</div>
73
73
  )}
74
74
  </div>
@@ -76,7 +76,7 @@ export const ChatLists = (props) => {
76
76
  );
77
77
 
78
78
  // checar si es chat abierto
79
- if (company.statusChat == "closed") jsxClosedChats.push(itemChat);
79
+ if (company.statusChat === "closed") jsxClosedChats.push(itemChat);
80
80
  else jsxOpenChats.push(itemChat);
81
81
  }
82
82
  setOpenChats(jsxOpenChats);
@@ -97,8 +97,8 @@ export const ContentChat = (props) => {
97
97
 
98
98
  // comenzar temporizador del update de 20s
99
99
  useEffect(() => {
100
- //return; -- descomentarizar para hacer pruebas sin update
101
- if (startUpdate == 0) return;
100
+ // return; // -- descomentarizar para hacer pruebas sin update
101
+ if (startUpdate === 0) return;
102
102
  const processID = setTimeout(() => {
103
103
  setRunUpdate((prev) => prev + 1);
104
104
  }, 15000);
@@ -109,10 +109,10 @@ export const ContentChat = (props) => {
109
109
  // ejecutar update
110
110
  useEffect(() => {
111
111
  if (chatType === "merchant_product") {
112
- if (singleChat.items) getUpdateLatestMerchantProduct();
112
+ if (singleChat.items) getUpdateLatestMerchantProduct(true);
113
113
  else getInitialMerchantProduct();
114
114
  } else if (chatType === "order_product") {
115
- if (companies) getUpdateLatestOrderProduct();
115
+ if (companies) getUpdateLatestOrderProduct(true);
116
116
  else getInitialOrderProduct();
117
117
  } else {
118
118
  if (singleChat.items) getUpdateLatestTicket(true);
@@ -146,6 +146,7 @@ export const ContentChat = (props) => {
146
146
  return;
147
147
  }
148
148
  // success
149
+ setStartUpdate((prev) => prev + 1);
149
150
  setCurrentUser({
150
151
  id: response.body.data.currentUserId,
151
152
  companyId: response.body.data.currentCompanyId,
@@ -379,16 +380,18 @@ export const ContentChat = (props) => {
379
380
  /*=======================================================================
380
381
  PETICION GET UPDATE_LATEST SEGUN EL TIPO DE CHAT
381
382
  ======================================================================= */
382
- const getUpdateLatestMerchantProduct = async () => {
383
+ const getUpdateLatestMerchantProduct = async (fromUpdate = false) => {
383
384
  const paramsQuery = {
384
385
  getType: "updateLatest",
385
386
  id: JSON.stringify(dataChat.id),
386
387
  version: JSON.stringify(dataChat.version),
387
388
  date: encodeURIComponent(lastUpdateDate),
388
389
  };
390
+ const paramsHeaders = { Authorization: dataChat.userToken };
389
391
  const response = await fetchGET(
390
392
  process.env.REACT_APP_PRODUCTS_CHAT_ENDPOINT,
391
- paramsQuery
393
+ paramsQuery,
394
+ paramsHeaders
392
395
  );
393
396
  if (!response.body) {
394
397
  console.log("ERROR updateLatest:", {
@@ -398,6 +401,7 @@ export const ContentChat = (props) => {
398
401
  return;
399
402
  }
400
403
  // success
404
+ setStartUpdate((prev) => prev + 1);
401
405
  setLastUpdateDate(response.body.data.lastUpdateDate);
402
406
  // actualizar la lista de los users
403
407
  updateAllUsers(response.body.users);
@@ -405,12 +409,13 @@ export const ContentChat = (props) => {
405
409
  let newSingleChat = { ...singleChat };
406
410
  newSingleChat.items = addNewItemsChat(
407
411
  newSingleChat.items,
408
- response.body.items
412
+ response.body.items,
413
+ fromUpdate
409
414
  );
410
415
  setSingleChat(newSingleChat);
411
416
  };
412
417
 
413
- const getUpdateLatestOrderProduct = async () => {
418
+ const getUpdateLatestOrderProduct = async (fromUpdate = false) => {
414
419
  const paramsQuery = {
415
420
  getType: "updateLatest",
416
421
  id: JSON.stringify(dataChat.id),
@@ -436,7 +441,7 @@ export const ContentChat = (props) => {
436
441
  return;
437
442
  }
438
443
  // success
439
-
444
+ setStartUpdate((prev) => prev + 1);
440
445
  // cuando cambie la lista de chats por un cambio de version o estatus
441
446
  if (response.body.data.status) {
442
447
  setIsLoading(true);
@@ -481,7 +486,8 @@ export const ContentChat = (props) => {
481
486
  Object.keys(response.body.companies).forEach((companyId) => {
482
487
  companiesList[companyId].items = addNewItemsChat(
483
488
  companiesList[companyId].items,
484
- response.body.companies[companyId].items
489
+ response.body.companies[companyId].items,
490
+ fromUpdate
485
491
  );
486
492
  });
487
493
  setCompanies(companiesList);
@@ -609,15 +615,13 @@ export const ContentChat = (props) => {
609
615
  };
610
616
 
611
617
  const createItemsMerchantProduct = async (items = []) => {
612
- const paramsBody = {
613
- id: JSON.stringify(dataChat.id),
614
- version: JSON.stringify(dataChat.version),
615
- userId: JSON.stringify(currentUser.id),
616
- items: JSON.stringify(items),
617
- };
618
+ const { id, version } = dataChat;
619
+ const paramsBody = { id, version, items };
620
+ const paramsHeaders = { Authorization: dataChat.userToken };
618
621
  const response = await fetchPOST(
619
622
  process.env.REACT_APP_PRODUCTS_CHAT_ENDPOINT,
620
- paramsBody
623
+ paramsBody,
624
+ paramsHeaders
621
625
  );
622
626
  if (!response.body) {
623
627
  return {
@@ -629,17 +633,18 @@ export const ContentChat = (props) => {
629
633
 
630
634
  const createItemsOrderProduct = async (items = []) => {
631
635
  const paramsBody = {
632
- id: JSON.stringify(dataChat.id),
633
- version: JSON.stringify(currentArticle.version),
634
- userId: JSON.stringify(currentUser.id),
635
- items: JSON.stringify(items),
636
- orderId: JSON.stringify(dataChat.orderId),
637
- sentCompanyId: JSON.stringify(currentUser.companyId),
638
- receivedCompanyId: JSON.stringify(activeCompanyId),
636
+ id: dataChat.id,
637
+ version: currentArticle.version,
638
+ items,
639
+ orderId: dataChat.orderId,
640
+ sentCompanyId: currentUser.companyId,
641
+ receivedCompanyId: activeCompanyId,
639
642
  };
643
+ const paramsHeaders = { Authorization: dataChat.userToken };
640
644
  const response = await fetchPOST(
641
645
  process.env.REACT_APP_PRODUCTS_CHAT_ENDPOINT,
642
- paramsBody
646
+ paramsBody,
647
+ paramsHeaders
643
648
  );
644
649
  if (!response.body) {
645
650
  return {
@@ -655,9 +660,11 @@ export const ContentChat = (props) => {
655
660
  userId: JSON.stringify(dataChat.currentUser.id),
656
661
  items: JSON.stringify(items),
657
662
  };
663
+ const paramsHeaders = { Authorization: dataChat.userToken };
658
664
  const response = await fetchPOST(
659
665
  process.env.REACT_APP_TICKETS_CHAT_ENDPOINT,
660
- paramsBody
666
+ paramsBody,
667
+ paramsHeaders
661
668
  );
662
669
  if (!response.body) {
663
670
  return {
@@ -739,8 +746,8 @@ export const ContentChat = (props) => {
739
746
  }, 5000);
740
747
  }
741
748
  return Object.values(itemsId).sort((a, b) => {
742
- if (a.id < b.id) return 1;
743
- if (a.id > b.id) return -1;
749
+ if (a.id > b.id) return 1;
750
+ if (a.id < b.id) return -1;
744
751
  return 0;
745
752
  });
746
753
  };
@@ -3,13 +3,11 @@ import {
3
3
  ContainerItemCarrousel,
4
4
  ContainerMain,
5
5
  ContainerSecondary,
6
- ContainerTooltipFileName,
7
6
  } from "./styles";
8
7
  import { useEffect, useState, useRef } from "react";
9
8
  import AWS from "aws-sdk";
10
9
  import { v4 as uuidv4 } from "uuid";
11
10
  import { Image as CustomImage } from "../../../atoms/Image";
12
- import { ImageTooltip } from "../../../molecules/ImageTooltip";
13
11
  import {
14
12
  faArrowUp as IconSend,
15
13
  faImage as IconImage,
@@ -21,7 +19,7 @@ import { ButtonV2 } from "../../../atoms/ButtonV2";
21
19
  import { IconFile } from "../../../atoms/IconFile";
22
20
  import { Modal } from "../../Modal";
23
21
  import { Tooltip } from "../../../atoms/Tooltip";
24
- import { Fade, Tooltip as TooltipMUI, Zoom } from "@mui/material";
22
+ import { Fade, Tooltip as TooltipMUI } from "@mui/material";
25
23
  import { ButtonFileChooser } from "../../../atoms/ButtonFileChooser";
26
24
  import { Slide } from "@mui/material";
27
25
  // carrousel
@@ -186,7 +184,7 @@ export const Footer = (props) => {
186
184
  }
187
185
  // enviar file a AWS
188
186
  customFiles.push({
189
- itemType: file.type.split("/")[0] == "image" ? "img" : "file",
187
+ itemType: file.type.split("/")[0] === "image" ? "img" : "file",
190
188
  key: fileKey,
191
189
  errorOwn: errorMessage,
192
190
  });
@@ -208,6 +206,7 @@ export const Footer = (props) => {
208
206
  }
209
207
  });
210
208
  } catch (err) {
209
+ console.log(err);
211
210
  disableSecondaryContainer(false);
212
211
  setModalAlert({
213
212
  show: true,
@@ -236,10 +235,7 @@ export const Footer = (props) => {
236
235
  valueItem.height = imgSize.height;
237
236
  }
238
237
  }
239
- items.push({
240
- type: file.itemType,
241
- value: JSON.stringify(valueItem),
242
- });
238
+ items.push({ type: file.itemType, value: JSON.stringify(valueItem) });
243
239
  }
244
240
  }
245
241