contentoh-components-library 21.3.67 → 21.3.69

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 (81) hide show
  1. package/.env.development +4 -0
  2. package/.env.production +3 -0
  3. package/dist/components/atoms/ButtonV2/styles.js +1 -1
  4. package/dist/components/atoms/Card/index.js +47 -7
  5. package/dist/components/atoms/Card/styles.js +3 -1
  6. package/dist/components/atoms/CheckBox/index.js +4 -2
  7. package/dist/components/atoms/InputFormatter/styles.js +1 -1
  8. package/dist/components/molecules/CarouselImagesLogin/index.js +1 -1
  9. package/dist/components/molecules/HeaderTop/index.js +68 -11
  10. package/dist/components/molecules/StripeCardForm/StripeCardForm.stories.js +31 -0
  11. package/dist/components/molecules/StripeCardForm/index.js +81 -0
  12. package/dist/components/molecules/StripeCardForm/paymentForm.js +187 -0
  13. package/dist/components/molecules/StripeCardForm/styles.js +24 -0
  14. package/dist/components/molecules/StripeCardSelector/CardSelector.stories.js +30 -0
  15. package/dist/components/molecules/StripeCardSelector/index.js +103 -0
  16. package/dist/components/molecules/StripeCardSelector/styles.js +19 -0
  17. package/dist/components/molecules/StripeCardSelector/utils.js +56 -0
  18. package/dist/components/molecules/TabsMenu/index.js +128 -13
  19. package/dist/components/molecules/TagAndInput/index.js +1 -1
  20. package/dist/components/organisms/Chat/Chat.stories.js +21 -1
  21. package/dist/components/organisms/Chat/ContainerItems/index.js +19 -3
  22. package/dist/components/organisms/Chat/ContainerItems/styles.js +1 -1
  23. package/dist/components/organisms/Chat/ContentChat/index.js +343 -191
  24. package/dist/components/organisms/Chat/Footer/index.js +48 -39
  25. package/dist/components/organisms/Chat/index.js +48 -3
  26. package/dist/components/organisms/FullProductNameHeader/index.js +2 -2
  27. package/dist/components/organisms/FullTabsMenu/index.js +27 -2
  28. package/dist/components/organisms/ImageDataTable/index.js +2 -0
  29. package/dist/components/organisms/Modal/styles.js +1 -1
  30. package/dist/components/organisms/SideModal/index.js +11 -0
  31. package/dist/components/organisms/SideModal/styles.js +1 -1
  32. package/dist/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +172 -127
  33. package/dist/components/pages/ProviderProductEdition/index.js +223 -177
  34. package/dist/components/pages/ProviderProductEdition/styles.js +1 -1
  35. package/dist/components/pages/RetailerProductEdition/RetailerProductEdition.stories.js +40 -28
  36. package/dist/components/pages/RetailerProductEdition/index.js +298 -273
  37. package/dist/components/pages/RetailerProductEdition/styles.js +1 -1
  38. package/dist/components/pages/RetailerProductEdition/utils.js +61 -2
  39. package/dist/index.js +51 -12
  40. package/package.json +1 -1
  41. package/src/components/atoms/ButtonV2/styles.js +1 -1
  42. package/src/components/atoms/Card/index.js +35 -2
  43. package/src/components/atoms/Card/styles.js +41 -5
  44. package/src/components/atoms/CheckBox/index.js +2 -0
  45. package/src/components/atoms/InputFormatter/styles.js +2 -1
  46. package/src/components/molecules/CarouselImagesLogin/index.js +1 -1
  47. package/src/components/molecules/GalleryElement/index.js +5 -0
  48. package/src/components/molecules/HeaderTop/index.js +52 -6
  49. package/src/components/molecules/StripeCardForm/StripeCardForm.stories.js +13 -0
  50. package/src/components/molecules/StripeCardForm/index.js +33 -0
  51. package/src/components/molecules/StripeCardForm/paymentForm.js +121 -0
  52. package/src/components/molecules/StripeCardForm/styles.js +72 -0
  53. package/src/components/molecules/StripeCardSelector/CardSelector.stories.js +12 -0
  54. package/src/components/molecules/StripeCardSelector/index.js +42 -0
  55. package/src/components/molecules/StripeCardSelector/styles.js +4 -0
  56. package/src/components/molecules/StripeCardSelector/utils.js +17 -0
  57. package/src/components/molecules/TabsMenu/index.js +126 -3
  58. package/src/components/molecules/TagAndInput/index.js +12 -8
  59. package/src/components/organisms/Chat/Chat.stories.js +21 -0
  60. package/src/components/organisms/Chat/ContainerItems/index.js +18 -2
  61. package/src/components/organisms/Chat/ContainerItems/styles.js +10 -2
  62. package/src/components/organisms/Chat/ContentChat/index.js +81 -6
  63. package/src/components/organisms/Chat/Footer/index.js +11 -0
  64. package/src/components/organisms/Chat/index.js +47 -3
  65. package/src/components/organisms/FullProductNameHeader/index.js +1 -1
  66. package/src/components/organisms/FullTabsMenu/index.js +28 -1
  67. package/src/components/organisms/ImageDataTable/index.js +3 -0
  68. package/src/components/organisms/InputGroup/index.js +4 -1
  69. package/src/components/organisms/Modal/styles.js +4 -1
  70. package/src/components/organisms/SideModal/SideModal.stories.js +23 -0
  71. package/src/components/organisms/SideModal/index.js +50 -0
  72. package/src/components/organisms/SideModal/styles.js +30 -0
  73. package/src/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +177 -130
  74. package/src/components/pages/ProviderProductEdition/index.js +160 -129
  75. package/src/components/pages/ProviderProductEdition/styles.js +5 -1
  76. package/src/components/pages/RetailerProductEdition/RetailerProductEdition.stories.js +38 -26
  77. package/src/components/pages/RetailerProductEdition/index.js +142 -135
  78. package/src/components/pages/RetailerProductEdition/styles.js +4 -0
  79. package/src/components/pages/RetailerProductEdition/utils.js +37 -0
  80. package/src/index.js +3 -0
  81. package/dist/assets/fonts/roboto/LICENSE.txt +0 -202
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.CardSelector = void 0;
9
+
10
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+
12
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
13
+
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
15
+
16
+ var _react = require("react");
17
+
18
+ var _styles = require("./styles");
19
+
20
+ var _stripeJs = require("@stripe/stripe-js");
21
+
22
+ var _reactStripeJs = require("@stripe/react-stripe-js");
23
+
24
+ var _utils = require("./utils");
25
+
26
+ var _Card = require("../../atoms/Card");
27
+
28
+ var _Loading = require("../../atoms/Loading");
29
+
30
+ var _jsxRuntime = require("react/jsx-runtime");
31
+
32
+ var stripeApiKey = (0, _stripeJs.loadStripe)("".concat(process.env.REACT_APP_KEY_STRIPE));
33
+
34
+ var CardSelector = function CardSelector(_ref) {
35
+ var jwt = _ref.jwt,
36
+ setCard = _ref.setCard;
37
+
38
+ var _useState = (0, _react.useState)(false),
39
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
40
+ stripeLoaded = _useState2[0],
41
+ setStripeLoaded = _useState2[1];
42
+
43
+ var _useState3 = (0, _react.useState)([]),
44
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
45
+ cards = _useState4[0],
46
+ setCards = _useState4[1];
47
+
48
+ var _useState5 = (0, _react.useState)(""),
49
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
50
+ selectedCard = _useState6[0],
51
+ setSelectedCard = _useState6[1];
52
+
53
+ var loadStripeJS = /*#__PURE__*/function () {
54
+ var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
55
+ var cardsResponse;
56
+ return _regenerator.default.wrap(function _callee$(_context) {
57
+ while (1) {
58
+ switch (_context.prev = _context.next) {
59
+ case 0:
60
+ _context.next = 2;
61
+ return stripeApiKey;
62
+
63
+ case 2:
64
+ setStripeLoaded(true);
65
+ _context.next = 5;
66
+ return (0, _utils.getAllCards)(jwt);
67
+
68
+ case 5:
69
+ cardsResponse = _context.sent;
70
+ setCards(cardsResponse);
71
+
72
+ case 7:
73
+ case "end":
74
+ return _context.stop();
75
+ }
76
+ }
77
+ }, _callee);
78
+ }));
79
+
80
+ return function loadStripeJS() {
81
+ return _ref2.apply(this, arguments);
82
+ };
83
+ }();
84
+
85
+ (0, _react.useEffect)(function () {
86
+ loadStripeJS();
87
+ }, []);
88
+ return stripeLoaded ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_styles.Container, {
89
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactStripeJs.Elements, {
90
+ stripe: stripeApiKey,
91
+ children: cards.map(function (card) {
92
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Card.Card, {
93
+ card: card,
94
+ selectedCard: selectedCard,
95
+ setSelectedCard: setSelectedCard,
96
+ setCard: setCard
97
+ }, card.id);
98
+ })
99
+ })
100
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Loading.Loading, {});
101
+ };
102
+
103
+ exports.CardSelector = CardSelector;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.Container = void 0;
9
+
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/taggedTemplateLiteral"));
11
+
12
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
13
+
14
+ var _styles = require("../StripeCardForm/styles");
15
+
16
+ var _templateObject;
17
+
18
+ var Container = (0, _styledComponents.default)(_styles.PaymentFormContainer)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)([""])));
19
+ exports.Container = Container;
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.getAllCards = void 0;
9
+
10
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+
12
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
13
+
14
+ var _axios = _interopRequireDefault(require("axios"));
15
+
16
+ var getAllCards = /*#__PURE__*/function () {
17
+ var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(jwt) {
18
+ var response, stripeCards;
19
+ return _regenerator.default.wrap(function _callee$(_context) {
20
+ while (1) {
21
+ switch (_context.prev = _context.next) {
22
+ case 0:
23
+ _context.prev = 0;
24
+ _context.next = 3;
25
+ return (0, _axios.default)({
26
+ method: "get",
27
+ url: "".concat(process.env.REACT_APP_CARDS_ENDPOINT),
28
+ headers: {
29
+ Authorization: jwt
30
+ }
31
+ });
32
+
33
+ case 3:
34
+ response = _context.sent;
35
+ stripeCards = JSON.parse(response.data.body).data;
36
+ return _context.abrupt("return", stripeCards);
37
+
38
+ case 8:
39
+ _context.prev = 8;
40
+ _context.t0 = _context["catch"](0);
41
+ console.log(_context.t0);
42
+
43
+ case 11:
44
+ case "end":
45
+ return _context.stop();
46
+ }
47
+ }
48
+ }, _callee, null, [[0, 8]]);
49
+ }));
50
+
51
+ return function getAllCards(_x) {
52
+ return _ref.apply(this, arguments);
53
+ };
54
+ }();
55
+
56
+ exports.getAllCards = getAllCards;
@@ -15,40 +15,155 @@ var _TabSection = require("../../atoms/TabSection");
15
15
 
16
16
  var _react = require("react");
17
17
 
18
+ var _Modal = require("../../organisms/Modal");
19
+
20
+ var _ButtonV = require("../../atoms/ButtonV2");
21
+
18
22
  var _jsxRuntime = require("react/jsx-runtime");
19
23
 
20
24
  var TabsMenu = function TabsMenu(_ref) {
21
25
  var _ref$tabsSections = _ref.tabsSections,
22
26
  tabsSections = _ref$tabsSections === void 0 ? {} : _ref$tabsSections,
23
27
  setImagesSection = _ref.setImagesSection,
24
- setActiveTab = _ref.setActiveTab;
28
+ setActiveTab = _ref.setActiveTab,
29
+ activeTab = _ref.activeTab,
30
+ desc = _ref.desc,
31
+ setDesc = _ref.setDesc,
32
+ fich = _ref.fich,
33
+ setFich = _ref.setFich,
34
+ imag = _ref.imag,
35
+ setImag = _ref.setImag,
36
+ updatedDescriptions = _ref.updatedDescriptions,
37
+ updatedDatasheets = _ref.updatedDatasheets,
38
+ selectedImages = _ref.selectedImages,
39
+ setUpdatedDescriptions = _ref.setUpdatedDescriptions,
40
+ setUpdatedDatasheets = _ref.setUpdatedDatasheets,
41
+ setSelectedImages = _ref.setSelectedImages;
25
42
 
26
43
  var _useState = (0, _react.useState)(tabsSections),
27
44
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
28
45
  sections = _useState2[0],
29
46
  setSections = _useState2[1];
30
47
 
48
+ var _useState3 = (0, _react.useState)(false),
49
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
50
+ modal = _useState4[0],
51
+ setModal = _useState4[1];
52
+
53
+ var _useState5 = (0, _react.useState)(true),
54
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
55
+ isFirstExecution = _useState6[0],
56
+ setIsFirstExecution = _useState6[1];
57
+
58
+ var _useState7 = (0, _react.useState)(''),
59
+ _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
60
+ detectaTab = _useState8[0],
61
+ setDetectaTab = _useState8[1];
62
+
63
+ var _useState9 = (0, _react.useState)(''),
64
+ _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
65
+ cancelAccept = _useState10[0],
66
+ setCancelAccept = _useState10[1];
67
+
68
+ var _useState11 = (0, _react.useState)(''),
69
+ _useState12 = (0, _slicedToArray2.default)(_useState11, 2),
70
+ llave = _useState12[0],
71
+ setLlave = _useState12[1];
72
+
73
+ var _useState13 = (0, _react.useState)(),
74
+ _useState14 = (0, _slicedToArray2.default)(_useState13, 2),
75
+ objeto = _useState14[0],
76
+ setObjeto = _useState14[1];
77
+
31
78
  var activeSection = function activeSection(key) {
32
79
  var array = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
33
80
  var tempArray = {};
34
81
  setImagesSection(key === "Imágenes");
35
82
  Object.keys(array).forEach(function (section) {
36
83
  tempArray[section] = section === key;
37
- if (section === key) setActiveTab(key);
84
+
85
+ if (section === key) {
86
+ setUpdatedDatasheets([]);
87
+ setUpdatedDescriptions([]);
88
+ setSelectedImages([]);
89
+ setDesc([]);
90
+ setFich([]);
91
+ setImag([]);
92
+ return setActiveTab(key);
93
+ }
94
+
95
+ ;
38
96
  });
39
97
  setSections(tempArray);
40
- };
41
-
42
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_styles.Container, {
43
- children: Object.keys(sections).map(function (key, index) {
44
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_TabSection.TabSection, {
45
- label: key,
46
- active: sections[key],
47
- onClick: function onClick() {
48
- return activeSection(key, sections);
98
+ }; //! ==========================================Daniel===========================================
99
+
100
+
101
+ {
102
+ /*=============================================================================
103
+ UseEffect para poder recolectar la info
104
+ ==============================================================================*/
105
+ }
106
+ (0, _react.useEffect)(function () {
107
+ if (cancelAccept === 'Aceptar' & llave !== '') {
108
+ setCancelAccept('');
109
+ setModal(false);
110
+ activeSection(llave, objeto);
111
+ } else if (cancelAccept === 'Cancelar' & llave !== '') {
112
+ setModal(false);
113
+ setCancelAccept('');
114
+ }
115
+ }, [cancelAccept]);
116
+
117
+ function detectClickFunction(e, key, sections) {
118
+ var targetIsTheCurrentTab = e.target.innerHTML === activeTab;
119
+ var descriptionsWereUpdated = updatedDescriptions.length > 0;
120
+ var datasheetWereUpdated = updatedDatasheets.length > 0;
121
+ var imagesWereUpdated = selectedImages.length > 0;
122
+ var dataWereUpdated = descriptionsWereUpdated || datasheetWereUpdated || imagesWereUpdated;
123
+
124
+ if (!targetIsTheCurrentTab && !dataWereUpdated) {
125
+ setLlave(key);
126
+ setObjeto(sections);
127
+ activeSection(key, sections);
128
+ } else if (!targetIsTheCurrentTab && dataWereUpdated) {
129
+ setModal(true);
130
+ setLlave(key);
131
+ setObjeto(sections);
132
+ }
133
+ } //! ==========================================Daniel===========================================
134
+
135
+
136
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
137
+ children: [activeTab && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Modal.Modal, {
138
+ show: modal,
139
+ title: "Cambios sin Guardar",
140
+ message: "Est\xE1s cambiando de vista y aun no guardas cambios \xBFEst\xE1s seguro?",
141
+ buttons: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ButtonV.ButtonV2, {
142
+ type: "white",
143
+ label: "Cancelar",
144
+ size: 12,
145
+ onClick: function onClick(event) {
146
+ return setCancelAccept(event.target.textContent);
147
+ }
148
+ }, "btn-Cancelar"), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ButtonV.ButtonV2, {
149
+ type: "pink",
150
+ label: "Aceptar",
151
+ size: 12,
152
+ onClick: function onClick(event) {
153
+ return setCancelAccept(event.target.textContent);
49
154
  }
50
- }, index);
51
- })
155
+ }, "btn-Aceptar")]
156
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_styles.Container, {
157
+ children: Object.keys(sections).map(function (key, index) {
158
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_TabSection.TabSection, {
159
+ label: key,
160
+ active: sections[key],
161
+ onClick: function onClick(e) {
162
+ detectClickFunction(e, key, sections);
163
+ }
164
+ }, index);
165
+ })
166
+ })]
52
167
  });
53
168
  };
54
169
 
@@ -45,7 +45,7 @@ var TagAndInput = function TagAndInput(_ref) {
45
45
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_styles.Container, {
46
46
  inputType: inputType,
47
47
  className: "input-container",
48
- children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
48
+ children: [(label === null || label === void 0 ? void 0 : label.length) && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
49
49
  className: "title-container",
50
50
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_index.ScreenHeader, {
51
51
  text: label,
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.default = exports.chatTicket_userTECH = exports.chatTicket_userNORMAL = exports.chatPROV_orderProduct = exports.chatFAB_orderProduct_user49 = exports.chatFAB_orderProduct_user37 = exports.chatCAD_orderProduct = exports.chatCAD_merchantsProductProvider = exports.chatCAD_merchantsProduct = void 0;
8
+ exports.default = exports.chatTicket_userTECH = exports.chatTicket_userNORMAL = exports.chatProduct_status = exports.chatPROV_orderProduct = exports.chatFAB_orderProduct_user49 = exports.chatFAB_orderProduct_user37 = exports.chatCAD_orderProduct = exports.chatCAD_merchantsProductProvider = exports.chatCAD_merchantsProduct = void 0;
9
9
 
10
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
11
11
 
@@ -172,4 +172,24 @@ chatTicket_userTECH.args = {
172
172
  }
173
173
  },
174
174
  classNameContainerFixed: "chatTicket"
175
+ }; // ejemplo del chat para los cambios de status del producto.
176
+
177
+ var chatProduct_status = Template.bind({});
178
+ exports.chatProduct_status = chatProduct_status;
179
+ chatProduct_status.args = {
180
+ chatType: "product_status",
181
+ chatContainerType: "popUp",
182
+ chatData: {
183
+ id: 37414,
184
+ version: 7,
185
+ retailerId: 70,
186
+ status: "AA",
187
+ orderId: 15189,
188
+ userToken: "eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiI5YTIxMzEyOC02NDgyLTRjMTYtYTRiNi02ZTY0ZjIyNWIxYmQiLCJjb2duaXRvOmdyb3VwcyI6WyJjb2xhYm9yYWRvcmVzX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfWE1aUWRxa0dqIiwiY29nbml0bzp1c2VybmFtZSI6IjlhMjEzMTI4LTY0ODItNGMxNi1hNGI2LTZlNjRmMjI1YjFiZCIsImNvZ25pdG86cm9sZXMiOlsiYXJuOmF3czppYW06Ojg5ODY3MDIzMjgwNzpyb2xlXC9jb250ZW50b2gtZGV2LXVzLWVhc3QtMS1sYW1iZGFSb2xlIl0sImF1ZCI6IjVhYzh0cGdzNmdic3ExM2ZydnJwaWVlcDQwIiwiZXZlbnRfaWQiOiJhOWFhMDQ4Zi05YzRjLTQxODMtYWUzMS03OWVjNjBhY2NjZGYiLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY4MzU4ODM4OSwibmFtZSI6IkNvbGFib3JhZG9yIiwicGhvbmVfbnVtYmVyIjoiKzUyMTExMSIsImV4cCI6MTY4MzU5MTk4OSwiaWF0IjoxNjgzNTg4Mzg5LCJlbWFpbCI6ImlzbWFlbDk3bG9wZXpAZ21haWwuY29tIn0.k9FQfRR02XC3WWfOzWhrbJGmp69AmCHJEIrgtXKhIwC69trdphSm1AKkZnDJMsEdkpUgjF_zAOsa_xYRxO6goXy7WXVc_p7N-yFHlkhZrRyn3LEFKaLzD8vVqlWx4kgfSERm7KhI1AxPmrA-lw8eF6Axvqn3PvuszAw89_WhPOcnOt8vU0MxAVhLgS8oM6vyHFmHEHWQ2FnSYYed9sEvAxGh_B44aIgWeDteQGeGdYhsm6rUcxgkrskywZJp9FW5VgYXuDcC5NpvomMMRy_v95UV897JzCHl__sK2Z9ahm0eczVN3tAc0GbKnlN96ZrGTQ_nmNHbuMDPQBPXH5HXZQ",
189
+ currentUser: {
190
+ id: 37,
191
+ companyId: 2,
192
+ isUserTech: false
193
+ }
194
+ }
175
195
  };
@@ -43,6 +43,8 @@ var _material = require("@mui/material");
43
43
 
44
44
  var _ImagePreview = require("../../../atoms/ImagePreview");
45
45
 
46
+ var _Status = require("../../../atoms/Status");
47
+
46
48
  var _handle_userTech = require("../../../../global-files/handle_userTech");
47
49
 
48
50
  var _awsAmplify = require("aws-amplify");
@@ -87,7 +89,7 @@ var ContainerItems = function ContainerItems(props) {
87
89
  var containerItems = (0, _react.useRef)(null);
88
90
  (0, _react.useEffect)(function () {
89
91
  if (!items) return;
90
- if (["merchant_product", "order_product"].includes(chatType)) renderItems();else if (chatType === "ticket") renderItemsTicket();else setCustomItems([]);
92
+ if (["merchant_product", "order_product", "product_status"].includes(chatType)) renderItems();else if (chatType === "ticket") renderItemsTicket();else setCustomItems([]);
91
93
  }, [items]);
92
94
  (0, _react.useEffect)(function () {
93
95
  var containerScroll = document.getElementById("ulItems");
@@ -161,6 +163,20 @@ var ContainerItems = function ContainerItems(props) {
161
163
  });
162
164
  };
163
165
 
166
+ var renderStatusItem = function renderStatusItem(item) {
167
+ var splitText = item.value.split("|");
168
+ var message = [];
169
+ splitText.forEach(function (text, i) {
170
+ if (i === 1 || i === 3) message.push( /*#__PURE__*/(0, _jsxRuntime.jsx)(_Status.Status, {
171
+ statusType: text
172
+ }));else message.push(text);
173
+ });
174
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
175
+ className: "item-statusItem",
176
+ children: message
177
+ });
178
+ };
179
+
164
180
  var renderStatusTicketNeutral = function renderStatusTicketNeutral(item) {
165
181
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.Tooltip, {
166
182
  componentTooltip: /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
@@ -305,7 +321,7 @@ var ContainerItems = function ContainerItems(props) {
305
321
  timeout: 500,
306
322
  container: containerList.current,
307
323
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("li", {
308
- className: (ownMessage ? "own-message " : "") + (lastUserId === item.userId ? "sameUser" : ""),
324
+ className: (ownMessage && item.type !== "status" ? "own-message " : "") + (lastUserId === item.userId ? "sameUser" : ""),
309
325
  children: [item.type !== "statusTicket" && lastUserId !== item.userId && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ImageTooltip.ImageTooltip, {
310
326
  className: "container-imgUser",
311
327
  sizeLoading: 25,
@@ -323,7 +339,7 @@ var ContainerItems = function ContainerItems(props) {
323
339
  className: "label-nameUser",
324
340
  children: users[item.userId].name
325
341
  })
326
- }), item.type === "message" ? renderMessage(item, differentCompany) : item.type === "comment" ? renderComment(item) : item.type === "img" ? renderImg(item) : item.type === "file" ? renderFile(item, ownMessage) : item.type === "statusTicket" && [ticketCompany, 254].includes(currentUser.companyId) ? renderStatusTicket(item) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
342
+ }), item.type === "message" ? renderMessage(item, differentCompany) : item.type === "comment" ? renderComment(item) : item.type === "img" ? renderImg(item) : item.type === "status" ? renderStatusItem(item) : item.type === "file" ? renderFile(item, ownMessage) : item.type === "statusTicket" && [ticketCompany, 254].includes(currentUser.companyId) ? renderStatusTicket(item) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
327
343
  className: "label-time",
328
344
  children: (0, _utils.getTime)(item.date)
329
345
  })]
@@ -15,6 +15,6 @@ var _variables = require("../../../../global-files/variables");
15
15
 
16
16
  var _templateObject;
17
17
 
18
- var Container = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n width: 100%;\n max-height: 100%;\n flex-grow: 2;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: flex-start;\n gap: 8px;\n background: white;\n padding: 15px 11px;\n overflow: auto;\n //border: 1px solid red;\n\n .btn-loadMore {\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n flex-grow: 2;\n\n .container-btnLoadMore {\n border-radius: 10px;\n .button {\n padding: 5px 10px;\n border: none;\n gap: 10px;\n font-family: ", ";\n .icon,\n .iconLoading {\n font-size: 10px;\n }\n }\n }\n }\n\n // lista de items\n > ul {\n --marginUserValue: 10px;\n list-style: none;\n margin: 0;\n padding: 0;\n width: 100%;\n display: flex;\n flex-direction: column;\n gap: 0px;\n\n // items cambio de estatus general del article\n // items cambio de estatus en servicio del article\n .label-statusArticle,\n .label-statusService {\n width: 100%;\n padding: 10px;\n border-radius: 10px;\n display: grid;\n place-items: center;\n cursor: default;\n\n text-align: left;\n font-family: ", ", sans-serif;\n color: white;\n font-size: 12px;\n\n .label {\n text-align: left;\n font-family: ", ", sans-serif;\n color: white;\n font-size: 12px;\n white-space: pre-wrap;\n cursor: inherit;\n }\n }\n .label-statusArticle {\n background-color: #85bc5b;\n }\n .label-statusService {\n background-color: #8a6caa;\n }\n\n // cada item dentro de la lista (fechas|message|img|file|status...)\n li {\n width: 90%;\n padding: 0px;\n margin: 16px 0px 0px 0px;\n display: flex;\n flex-direction: row;\n justify-content: flex-start;\n flex-wrap: nowrap;\n gap: var(--marginUserValue);\n align-items: center;\n align-self: flex-start;\n //border: 1px solid blue;\n\n & > label:first-child,\n .item-img {\n margin: 0px 0px 0px 44px;\n }\n\n &.sameUser {\n margin: 2px 0px 0px 0px;\n /* padding: 0px 0px 0px calc(34px + var(--marginUserValue)); */\n }\n\n // items gray label (para fechas)\n &.label-gray {\n width: 100%;\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n padding: 0px; //0px calc(34px + var(--marginUserValue));\n\n .separator {\n flex-grow: 2;\n min-width: 35px;\n border: 0.3px solid #f0f0f0;\n }\n label {\n padding: 4px 15px;\n text-align: center;\n font-family: ", ", sans-serif;\n color: #b3b3b3;\n font-size: 10px;\n }\n }\n\n // container ImageTooltip del user de un item\n .container-imgUser {\n display: grid;\n place-items: center;\n width: 34px;\n min-width: min-content;\n border-radius: 50%;\n overflow: hidden;\n align-self: flex-start;\n margin: 0;\n }\n .icon-imgUser.fill {\n padding: 0px;\n width: 34px;\n height: 34px;\n color: #9d9d9d;\n border-color: #9d9d9d;\n border-width: 2px;\n }\n .tooltip-imgUser {\n .label-nameUser {\n font-family: ", ", sans-serif;\n color: #262626;\n font-size: 12px;\n text-align: center;\n }\n }\n\n // items de tipo message, comment y file\n .item-message,\n .item-comment,\n .item-file,\n .item-statusTicket {\n border-radius: 10px;\n padding: 10px;\n font-family: ", ", sans-serif;\n font-size: 12px;\n text-align: left;\n white-space: pre-line;\n color: white;\n word-break: break-word;\n }\n .item-message,\n .item-comment,\n .item-file {\n background-color: #8386ee;\n }\n .item-statusTicket {\n background-color: #85bc5b;\n }\n\n .item-message {\n &.different-company {\n border: 1px solid #e33aa9;\n }\n }\n /*\n .item-comment {\n background-color: #5e61b2;\n }\n */\n\n // items de tipo img\n .item-img {\n display: grid;\n place-items: center;\n background-color: #f7f7f7;\n border-radius: 10px;\n overflow: hidden;\n max-width: 60%;\n max-height: 300px;\n\n .container-ImagePreview {\n max-height: inherit;\n\n > .img {\n max-height: inherit;\n }\n\n .label-nameImg {\n .iconDefaultImg {\n border-radius: 0px;\n border: none;\n padding: 0px;\n color: #8386ee;\n }\n }\n }\n }\n\n // items de tipo file\n .item-file {\n width: auto;\n max-width: 70%;\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 6px;\n\n .btnDownloadFileItem {\n width: 28px;\n min-width: 28px;\n height: 28px;\n min-height: 28px;\n }\n\n // nameFile solo 1 linea\n .label-nameFileShort {\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n flex-grow: 2;\n cursor: default;\n font-family: ", ", sans-serif;\n font-size: 12px;\n text-align: center;\n color: white;\n }\n }\n\n // label hora del item\n .label-time {\n min-width: fit-content;\n color: #c7c7c7;\n font-family: ", ", sans-serif;\n font-size: 9px;\n }\n\n & > .label-time:first-child {\n display: none;\n }\n\n // items del currentUser\n &.own-message {\n align-self: flex-end;\n flex-direction: row-reverse;\n\n /* &.sameUser {\n padding: 0px calc(34px + var(--marginUserValue)) 0px 0px;\n } */\n\n .item-message,\n .item-comment {\n color: #262626;\n }\n .item-message,\n .item-comment,\n .item-file {\n background-color: #f0f0f0;\n }\n\n & > .item-message:first-child {\n margin: 0px 40px 0px 0px;\n }\n /*\n .item-comment {\n background-color: #d7d7d7;\n }\n */\n\n // items de tipo img\n .item-img {\n .container-ImagePreview {\n .label-nameImg {\n .iconDefaultImg {\n color: #c9c7c7;\n }\n }\n }\n }\n\n // items de tipo file\n .item-file {\n .btnDownloadFileItem {\n .iconFile,\n .container-btnDownload .buttonMUI .icon {\n color: #262626;\n }\n }\n\n // nameFile solo 1 linea\n .label-nameFileShort {\n color: #262626;\n }\n }\n }\n\n // items neutrales (center aligned)\n &.itemNeutral {\n width: 100%;\n\n .itemStatus {\n width: 100%;\n padding: 10px;\n border-radius: 10px;\n display: grid;\n place-items: center;\n cursor: default;\n text-align: center;\n font-family: ", ", sans-serif;\n color: white;\n font-size: 12px;\n line-height: 1.2;\n white-space: pre-wrap;\n\n &.ticket {\n color: white;\n background-color: #85bc5b;\n }\n }\n }\n }\n }\n\n .content-chat {\n ::-webkit-scrollbar {\n width: 0;\n }\n }\n"])), _variables.FontFamily.RobotoRegular, _variables.FontFamily.RobotoRegular, _variables.FontFamily.RobotoRegular, _variables.FontFamily.RobotoMedium, _variables.FontFamily.RobotoMedium, _variables.FontFamily.RobotoRegular, _variables.FontFamily.RobotoRegular, _variables.FontFamily.RobotoRegular, _variables.FontFamily.RobotoRegular);
18
+ var Container = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n width: 100%;\n max-height: 100%;\n flex-grow: 2;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: flex-start;\n gap: 8px;\n background: white;\n padding: 15px 11px;\n overflow: auto;\n //border: 1px solid red;\n\n .btn-loadMore {\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n flex-grow: 2;\n\n .container-btnLoadMore {\n border-radius: 10px;\n .button {\n padding: 5px 10px;\n border: none;\n gap: 10px;\n font-family: ", ";\n .icon,\n .iconLoading {\n font-size: 10px;\n }\n }\n }\n }\n\n // lista de items\n > ul {\n --marginUserValue: 10px;\n list-style: none;\n margin: 0;\n padding: 0;\n width: 100%;\n display: flex;\n flex-direction: column;\n gap: 0px;\n\n // items cambio de estatus general del article\n // items cambio de estatus en servicio del article\n .label-statusArticle,\n .label-statusService {\n width: 100%;\n padding: 10px;\n border-radius: 10px;\n display: grid;\n place-items: center;\n cursor: default;\n\n text-align: left;\n font-family: ", ", sans-serif;\n color: white;\n font-size: 12px;\n\n .label {\n text-align: left;\n font-family: ", ", sans-serif;\n color: white;\n font-size: 12px;\n white-space: pre-wrap;\n cursor: inherit;\n }\n }\n .label-statusArticle {\n background-color: #85bc5b;\n }\n .label-statusService {\n background-color: #8a6caa;\n }\n\n // cada item dentro de la lista (fechas|message|img|file|status...)\n li {\n width: 90%;\n padding: 0px;\n margin: 16px 0px 0px 0px;\n display: flex;\n flex-direction: row;\n justify-content: flex-start;\n flex-wrap: nowrap;\n gap: var(--marginUserValue);\n align-items: center;\n align-self: flex-start;\n //border: 1px solid blue;\n\n & > label:first-child,\n .item-img {\n margin: 0px 0px 0px 44px;\n }\n\n &.sameUser {\n margin: 2px 0px 0px 0px;\n /* padding: 0px 0px 0px calc(34px + var(--marginUserValue)); */\n }\n\n // items gray label (para fechas)\n &.label-gray {\n width: 100%;\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n padding: 0px; //0px calc(34px + var(--marginUserValue));\n\n .separator {\n flex-grow: 2;\n min-width: 35px;\n border: 0.3px solid #f0f0f0;\n }\n label {\n padding: 4px 15px;\n text-align: center;\n font-family: ", ", sans-serif;\n color: #b3b3b3;\n font-size: 10px;\n }\n }\n\n // container ImageTooltip del user de un item\n .container-imgUser {\n display: grid;\n place-items: center;\n width: 34px;\n min-width: min-content;\n border-radius: 50%;\n overflow: hidden;\n align-self: flex-start;\n margin: 0;\n }\n .icon-imgUser.fill {\n padding: 0px;\n width: 34px;\n height: 34px;\n color: #9d9d9d;\n border-color: #9d9d9d;\n border-width: 2px;\n }\n .tooltip-imgUser {\n .label-nameUser {\n font-family: ", ", sans-serif;\n color: #262626;\n font-size: 12px;\n text-align: center;\n }\n }\n\n // items de tipo message, comment y file\n .item-message,\n .item-comment,\n .item-file,\n .item-statusTicket,\n .item-statusItem {\n border-radius: 10px;\n padding: 10px;\n font-family: ", ", sans-serif;\n font-size: 12px;\n text-align: left;\n white-space: pre-line;\n color: white;\n word-break: break-word;\n }\n .item-message,\n .item-comment,\n .item-file {\n background-color: #8386ee;\n }\n .item-statusTicket,\n .item-statusItem {\n background-color: #85bc5b;\n }\n\n .item-statusItem {\n display: flex;\n gap: 3px;\n align-items: center;\n }\n\n .item-message {\n &.different-company {\n border: 1px solid #e33aa9;\n }\n }\n /*\n .item-comment {\n background-color: #5e61b2;\n }\n */\n\n // items de tipo img\n .item-img {\n display: grid;\n place-items: center;\n background-color: #f7f7f7;\n border-radius: 10px;\n overflow: hidden;\n max-width: 60%;\n max-height: 300px;\n\n .container-ImagePreview {\n max-height: inherit;\n\n > .img {\n max-height: inherit;\n }\n\n .label-nameImg {\n .iconDefaultImg {\n border-radius: 0px;\n border: none;\n padding: 0px;\n color: #8386ee;\n }\n }\n }\n }\n\n // items de tipo file\n .item-file {\n width: auto;\n max-width: 70%;\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 6px;\n\n .btnDownloadFileItem {\n width: 28px;\n min-width: 28px;\n height: 28px;\n min-height: 28px;\n }\n\n // nameFile solo 1 linea\n .label-nameFileShort {\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n flex-grow: 2;\n cursor: default;\n font-family: ", ", sans-serif;\n font-size: 12px;\n text-align: center;\n color: white;\n }\n }\n\n // label hora del item\n .label-time {\n min-width: fit-content;\n color: #c7c7c7;\n font-family: ", ", sans-serif;\n font-size: 9px;\n }\n\n & > .label-time:first-child {\n display: none;\n }\n\n // items del currentUser\n &.own-message {\n align-self: flex-end;\n flex-direction: row-reverse;\n\n /* &.sameUser {\n padding: 0px calc(34px + var(--marginUserValue)) 0px 0px;\n } */\n\n .item-message,\n .item-comment {\n color: #262626;\n }\n .item-message,\n .item-comment,\n .item-file {\n background-color: #f0f0f0;\n }\n\n & > .item-message:first-child {\n margin: 0px 40px 0px 0px;\n }\n /*\n .item-comment {\n background-color: #d7d7d7;\n }\n */\n\n // items de tipo img\n .item-img {\n .container-ImagePreview {\n .label-nameImg {\n .iconDefaultImg {\n color: #c9c7c7;\n }\n }\n }\n }\n\n // items de tipo file\n .item-file {\n .btnDownloadFileItem {\n .iconFile,\n .container-btnDownload .buttonMUI .icon {\n color: #262626;\n }\n }\n\n // nameFile solo 1 linea\n .label-nameFileShort {\n color: #262626;\n }\n }\n }\n\n // items neutrales (center aligned)\n &.itemNeutral {\n width: 100%;\n\n .itemStatus {\n width: 100%;\n padding: 10px;\n border-radius: 10px;\n display: grid;\n place-items: center;\n cursor: default;\n text-align: center;\n font-family: ", ", sans-serif;\n color: white;\n font-size: 12px;\n line-height: 1.2;\n white-space: pre-wrap;\n\n &.ticket {\n color: white;\n background-color: #85bc5b;\n }\n }\n }\n }\n }\n\n .content-chat {\n ::-webkit-scrollbar {\n width: 0;\n }\n }\n"])), _variables.FontFamily.RobotoRegular, _variables.FontFamily.RobotoRegular, _variables.FontFamily.RobotoRegular, _variables.FontFamily.RobotoMedium, _variables.FontFamily.RobotoMedium, _variables.FontFamily.RobotoRegular, _variables.FontFamily.RobotoRegular, _variables.FontFamily.RobotoRegular, _variables.FontFamily.RobotoRegular);
19
19
 
20
20
  exports.Container = Container;