contentoh-components-library 21.3.19 → 21.3.21

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 (197) hide show
  1. package/.env.development +5 -0
  2. package/.env.production +2 -2
  3. package/dist/assets/images/customSelect/starIcon.svg +14 -0
  4. package/dist/assets/images/defaultImages/Spinner.gif +0 -0
  5. package/dist/assets/images/defaultImages/notFound.svg +124 -0
  6. package/dist/assets/images/generalButton/closeIcon.svg +2 -2
  7. package/dist/assets/sounds/newMessage.mp3 +0 -0
  8. package/dist/components/atoms/ButtonFileChooser/ButtonFileChooser.stories.js +72 -0
  9. package/dist/components/atoms/ButtonFileChooser/index.js +110 -0
  10. package/dist/components/atoms/ButtonFileChooser/styles.js +20 -0
  11. package/dist/components/atoms/ButtonV2/ButtonV2.stories.js +66 -0
  12. package/dist/components/atoms/ButtonV2/index.js +110 -0
  13. package/dist/components/atoms/ButtonV2/styles.js +53 -0
  14. package/dist/components/atoms/CustomIcon/CustomIcon.stories.js +50 -0
  15. package/dist/components/atoms/CustomIcon/index.js +40 -0
  16. package/dist/components/atoms/CustomIcon/styles.js +33 -0
  17. package/dist/components/atoms/IconFile/IconFile.stories.js +48 -0
  18. package/dist/components/atoms/IconFile/index.js +249 -0
  19. package/dist/components/atoms/IconFile/styles.js +23 -0
  20. package/dist/components/atoms/Image/Image.stories.js +73 -0
  21. package/dist/components/atoms/Image/index.js +76 -0
  22. package/dist/components/atoms/Image/styles.js +43 -0
  23. package/dist/components/atoms/ImageLink/ImageLink.stories.js +63 -0
  24. package/dist/components/atoms/ImageLink/index.js +77 -0
  25. package/dist/components/atoms/ImageLink/styles.js +40 -0
  26. package/dist/components/atoms/ImagePreview/ImagePreview.stories.js +70 -0
  27. package/dist/components/atoms/ImagePreview/index.js +208 -0
  28. package/dist/components/atoms/ImagePreview/styles.js +44 -0
  29. package/dist/components/atoms/InputText/InputText.stories.js +60 -0
  30. package/dist/components/atoms/InputText/index.js +66 -0
  31. package/dist/components/atoms/InputText/styles.js +32 -0
  32. package/dist/components/atoms/NotFound/NotFound.stories.js +36 -0
  33. package/dist/components/atoms/NotFound/index.js +75 -0
  34. package/dist/components/atoms/NotFound/styles.js +20 -0
  35. package/dist/components/atoms/ProgressBar/index.js +36 -6
  36. package/dist/components/atoms/ProgressBar/styles.js +11 -3
  37. package/dist/components/atoms/SelectItemV2/SelectItemV2.stories.js +45 -0
  38. package/dist/components/atoms/SelectItemV2/index.js +57 -0
  39. package/dist/components/atoms/SelectItemV2/styles.js +30 -0
  40. package/dist/components/atoms/Tooltip/Tooltip.stories.js +66 -0
  41. package/dist/components/atoms/Tooltip/index.js +72 -0
  42. package/dist/components/atoms/Tooltip/styles.js +20 -0
  43. package/dist/components/molecules/ButtonDownloadFile/DownloadFile.stories.js +66 -0
  44. package/dist/components/molecules/ButtonDownloadFile/index.js +179 -0
  45. package/dist/components/molecules/ButtonDownloadFile/styles.js +23 -0
  46. package/dist/components/molecules/CustomSelect/CustomSelect.stories.js +21 -22
  47. package/dist/components/molecules/CustomSelect/SelectItem.js +10 -1
  48. package/dist/components/molecules/Dropdown/Dropdown.stories.js +98 -0
  49. package/dist/components/molecules/Dropdown/index.js +150 -0
  50. package/dist/components/molecules/Dropdown/styles.js +26 -0
  51. package/dist/components/molecules/HeaderTop/index.js +23 -6
  52. package/dist/components/molecules/HeaderTop/styles.js +1 -1
  53. package/dist/components/molecules/ImageTooltip/ImageTooltip.stories.js +82 -0
  54. package/dist/components/molecules/ImageTooltip/index.js +85 -0
  55. package/dist/components/molecules/ImageTooltip/styles.js +33 -0
  56. package/dist/components/molecules/ProductNameHeader/index.js +6 -4
  57. package/dist/components/molecules/SelectV2/SelectV2.stories.js +120 -0
  58. package/dist/components/molecules/SelectV2/index.js +306 -0
  59. package/dist/components/molecules/SelectV2/styles.js +42 -0
  60. package/dist/components/molecules/SelectV2/test.js +94 -0
  61. package/dist/components/molecules/SelectV2/test.stories.js +27 -0
  62. package/dist/components/organisms/Chat/Chat.stories.js +160 -0
  63. package/dist/components/organisms/Chat/ChatLists/ChatLists.stories.js +83 -0
  64. package/dist/components/organisms/Chat/ChatLists/index.js +160 -0
  65. package/dist/components/organisms/Chat/ChatLists/styles.js +29 -0
  66. package/dist/components/organisms/Chat/ContainerItems/ContainerItems.stories.js +176 -0
  67. package/dist/components/organisms/Chat/ContainerItems/index.js +537 -0
  68. package/dist/components/organisms/Chat/ContainerItems/styles.js +20 -0
  69. package/dist/components/organisms/Chat/ContentChat/ContentChat.stories.js +142 -0
  70. package/dist/components/organisms/Chat/ContentChat/index.js +1466 -0
  71. package/dist/components/organisms/Chat/ContentChat/styles.js +20 -0
  72. package/dist/components/organisms/Chat/Footer/Footer.stories.js +43 -0
  73. package/dist/components/organisms/Chat/Footer/index.js +976 -0
  74. package/dist/components/organisms/Chat/Footer/styles.js +32 -0
  75. package/dist/components/organisms/Chat/Header/Header.stories.js +96 -0
  76. package/dist/components/organisms/Chat/Header/index.js +83 -0
  77. package/dist/components/organisms/Chat/Header/styles.js +20 -0
  78. package/dist/components/organisms/Chat/index.js +253 -0
  79. package/dist/components/organisms/Chat/styles.js +29 -0
  80. package/dist/components/organisms/FullProductNameHeader/index.js +1 -0
  81. package/dist/components/organisms/Modal/Modal.stories.js +66 -0
  82. package/dist/components/organisms/Modal/index.js +95 -0
  83. package/dist/components/organisms/Modal/styles.js +20 -0
  84. package/dist/components/organisms/RangeCalendar/RangeCalendar.stories.js +33 -0
  85. package/dist/components/organisms/RangeCalendar/index.js +149 -0
  86. package/dist/components/organisms/RangeCalendar/styles.js +27 -0
  87. package/dist/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +65 -50
  88. package/dist/components/pages/ProviderProductEdition/index.js +15 -11
  89. package/dist/components/pages/RetailerProductEdition/RetailerProductEdition.stories.js +36 -44
  90. package/dist/components/pages/RetailerProductEdition/index.js +13 -12
  91. package/dist/global-files/data.js +18 -23
  92. package/dist/global-files/fonts.css +6 -0
  93. package/dist/global-files/handle_http.js +381 -0
  94. package/dist/global-files/handle_userTech.js +20 -0
  95. package/dist/global-files/utils.js +514 -0
  96. package/dist/global-files/variables.js +2 -0
  97. package/dist/index.js +267 -46
  98. package/package.json +13 -1
  99. package/src/assets/images/customSelect/starIcon.svg +14 -0
  100. package/src/assets/images/defaultImages/Spinner.gif +0 -0
  101. package/src/assets/images/defaultImages/notFound.svg +124 -0
  102. package/src/assets/images/generalButton/closeIcon.svg +2 -2
  103. package/src/assets/sounds/newMessage.mp3 +0 -0
  104. package/src/components/atoms/ButtonFileChooser/ButtonFileChooser.stories.js +47 -0
  105. package/src/components/atoms/ButtonFileChooser/index.js +68 -0
  106. package/src/components/atoms/ButtonFileChooser/styles.js +4 -0
  107. package/src/components/atoms/ButtonV2/ButtonV2.stories.js +53 -0
  108. package/src/components/atoms/ButtonV2/index.js +85 -0
  109. package/src/components/atoms/ButtonV2/styles.js +217 -0
  110. package/src/components/atoms/CustomIcon/CustomIcon.stories.js +36 -0
  111. package/src/components/atoms/CustomIcon/index.js +41 -0
  112. package/src/components/atoms/CustomIcon/styles.js +85 -0
  113. package/src/components/atoms/IconFile/IconFile.stories.js +35 -0
  114. package/src/components/atoms/IconFile/index.js +119 -0
  115. package/src/components/atoms/IconFile/styles.js +67 -0
  116. package/src/components/atoms/Image/Image.stories.js +51 -0
  117. package/src/components/atoms/Image/index.js +55 -0
  118. package/src/components/atoms/Image/styles.js +34 -0
  119. package/src/components/atoms/ImageLink/ImageLink.stories.js +43 -0
  120. package/src/components/atoms/ImageLink/index.js +57 -0
  121. package/src/components/atoms/ImageLink/styles.js +30 -0
  122. package/src/components/atoms/ImagePreview/ImagePreview.stories.js +52 -0
  123. package/src/components/atoms/ImagePreview/index.js +178 -0
  124. package/src/components/atoms/ImagePreview/styles.js +77 -0
  125. package/src/components/atoms/InputText/InputText.stories.js +39 -0
  126. package/src/components/atoms/InputText/index.js +61 -0
  127. package/src/components/atoms/InputText/styles.js +89 -0
  128. package/src/components/atoms/NotFound/NotFound.stories.js +19 -0
  129. package/src/components/atoms/NotFound/index.js +52 -0
  130. package/src/components/atoms/NotFound/styles.js +55 -0
  131. package/src/components/atoms/ProgressBar/index.js +40 -5
  132. package/src/components/atoms/ProgressBar/styles.js +24 -0
  133. package/src/components/atoms/SelectItemV2/SelectItemV2.stories.js +26 -0
  134. package/src/components/atoms/SelectItemV2/index.js +61 -0
  135. package/src/components/atoms/SelectItemV2/styles.js +90 -0
  136. package/src/components/atoms/Tooltip/Tooltip.stories.js +51 -0
  137. package/src/components/atoms/Tooltip/index.js +59 -0
  138. package/src/components/atoms/Tooltip/styles.js +42 -0
  139. package/src/components/molecules/ButtonDownloadFile/DownloadFile.stories.js +54 -0
  140. package/src/components/molecules/ButtonDownloadFile/index.js +109 -0
  141. package/src/components/molecules/ButtonDownloadFile/styles.js +66 -0
  142. package/src/components/molecules/CustomSelect/CustomSelect.stories.js +20 -12
  143. package/src/components/molecules/CustomSelect/SelectItem.js +7 -0
  144. package/src/components/molecules/Dropdown/Dropdown.stories.js +103 -0
  145. package/src/components/molecules/Dropdown/index.js +150 -0
  146. package/src/components/molecules/Dropdown/styles.js +75 -0
  147. package/src/components/molecules/HeaderTop/index.js +29 -8
  148. package/src/components/molecules/HeaderTop/styles.js +4 -0
  149. package/src/components/molecules/ImageTooltip/ImageTooltip.stories.js +68 -0
  150. package/src/components/molecules/ImageTooltip/index.js +63 -0
  151. package/src/components/molecules/ImageTooltip/styles.js +18 -0
  152. package/src/components/molecules/ProductNameHeader/index.js +7 -2
  153. package/src/components/molecules/SelectV2/SelectV2.stories.js +115 -0
  154. package/src/components/molecules/SelectV2/index.js +357 -0
  155. package/src/components/molecules/SelectV2/styles.js +105 -0
  156. package/src/components/molecules/SelectV2/test.js +60 -0
  157. package/src/components/molecules/SelectV2/test.stories.js +10 -0
  158. package/src/components/organisms/Chat/Chat.stories.js +147 -0
  159. package/src/components/organisms/Chat/ChatLists/ChatLists.stories.js +65 -0
  160. package/src/components/organisms/Chat/ChatLists/Rotoplas.jpeg +0 -0
  161. package/src/components/organisms/Chat/ChatLists/THD.png +0 -0
  162. package/src/components/organisms/Chat/ChatLists/index.js +141 -0
  163. package/src/components/organisms/Chat/ChatLists/styles.js +162 -0
  164. package/src/components/organisms/Chat/ContainerItems/ContainerItems.stories.js +142 -0
  165. package/src/components/organisms/Chat/ContainerItems/index.js +512 -0
  166. package/src/components/organisms/Chat/ContainerItems/styles.js +328 -0
  167. package/src/components/organisms/Chat/ContentChat/ContentChat.stories.js +102 -0
  168. package/src/components/organisms/Chat/ContentChat/Rotoplas.jpeg +0 -0
  169. package/src/components/organisms/Chat/ContentChat/THD.png +0 -0
  170. package/src/components/organisms/Chat/ContentChat/index.js +919 -0
  171. package/src/components/organisms/Chat/ContentChat/styles.js +41 -0
  172. package/src/components/organisms/Chat/Footer/Footer.stories.js +22 -0
  173. package/src/components/organisms/Chat/Footer/index.js +661 -0
  174. package/src/components/organisms/Chat/Footer/styles.js +286 -0
  175. package/src/components/organisms/Chat/Header/Header.stories.js +66 -0
  176. package/src/components/organisms/Chat/Header/index.js +93 -0
  177. package/src/components/organisms/Chat/Header/styles.js +49 -0
  178. package/src/components/organisms/Chat/index.js +235 -0
  179. package/src/components/organisms/Chat/styles.js +42 -0
  180. package/src/components/organisms/FullProductNameHeader/index.js +1 -0
  181. package/src/components/organisms/Modal/Modal.stories.js +55 -0
  182. package/src/components/organisms/Modal/index.js +97 -0
  183. package/src/components/organisms/Modal/styles.js +103 -0
  184. package/src/components/organisms/RangeCalendar/RangeCalendar.stories.js +16 -0
  185. package/src/components/organisms/RangeCalendar/index.js +121 -0
  186. package/src/components/organisms/RangeCalendar/styles.js +883 -0
  187. package/src/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +67 -49
  188. package/src/components/pages/ProviderProductEdition/index.js +16 -9
  189. package/src/components/pages/RetailerProductEdition/RetailerProductEdition.stories.js +36 -46
  190. package/src/components/pages/RetailerProductEdition/index.js +14 -10
  191. package/src/global-files/data.js +18 -23
  192. package/src/global-files/fonts.css +6 -0
  193. package/src/global-files/handle_http.js +225 -0
  194. package/src/global-files/handle_userTech.js +7 -0
  195. package/src/global-files/utils.js +330 -0
  196. package/src/global-files/variables.js +2 -0
  197. package/src/index.js +17 -0
@@ -0,0 +1,176 @@
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.exampleChat = exports.emptyChat = exports.default = void 0;
9
+
10
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
11
+
12
+ var _index = require("./index");
13
+
14
+ var _jsxRuntime = require("react/jsx-runtime");
15
+
16
+ var _default = {
17
+ title: "Components/organisms/Chat/ContainerItems",
18
+ component: _index.ContainerItems
19
+ };
20
+ exports.default = _default;
21
+
22
+ var Template = function Template(args) {
23
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.ContainerItems, (0, _objectSpread2.default)({}, args));
24
+ }; // items de prueba
25
+
26
+
27
+ var items = {
28
+ 1: {
29
+ date: "2022-10-13 10:10:00",
30
+ type: "message",
31
+ value: "mensaje 1 user10",
32
+ userId: 10
33
+ },
34
+ 2: {
35
+ date: "2022-10-12 13:19:00",
36
+ type: "message",
37
+ value: "mensaje 1 user20",
38
+ userId: 20
39
+ },
40
+ 3: {
41
+ date: "2022-10-12 12:33:00",
42
+ type: "comment",
43
+ value: "comentario 1 user20",
44
+ userId: 20
45
+ },
46
+ 4: {
47
+ date: "2022-10-12 11:56:00",
48
+ type: "comment",
49
+ value: "comentario 1 user30",
50
+ userId: 30
51
+ },
52
+ 5: {
53
+ date: "2022-10-12 8:41:00",
54
+ type: "statusService",
55
+ value: "La sección imágenes ha sido validada",
56
+ userId: 20
57
+ },
58
+ 6: {
59
+ date: "2022-10-11 14:58:00",
60
+ type: "img",
61
+ value: "84300/1/chat/playa-213f791b-d890-48e1-be19-28bf5a95d517.jpeg",
62
+ userId: 10
63
+ },
64
+ 7: {
65
+ date: "2022-10-10 16:12:00",
66
+ type: "img",
67
+ value: "84300/1/chat/21dba1da-3c60-42c4-97bd-033664808256-fb19ff57-b91c-4ef2-ba2a-d857b55fb33b.svg",
68
+ userId: 30
69
+ },
70
+ 8: {
71
+ date: "2022-10-10 15:55:00",
72
+ type: "statusArticle",
73
+ value: "El estatus cambio a Aprobado Coordinador",
74
+ userId: 20
75
+ },
76
+ 9: {
77
+ date: "2022-10-10 9:15:00",
78
+ type: "comment",
79
+ value: "comentario 1 user10",
80
+ userId: 10
81
+ },
82
+ 10: {
83
+ date: "2022-10-9 6:24:00",
84
+ type: "file",
85
+ value: "84300/1/chat/acuse RFC-8b2eb177-5bfc-4266-9b26-4e7297880594-9e2e5853-4697-442a-8ff7-3b7a1ede0856.pdf",
86
+ userId: 10
87
+ },
88
+ 11: {
89
+ date: "2022-10-9 4:29:00",
90
+ type: "file",
91
+ value: "84300/1/chat/noExiste.docx",
92
+ userId: 30
93
+ },
94
+ 12: {
95
+ date: "2022-10-9 2:39:00",
96
+ type: "file",
97
+ value: "84300/1/chat/noExiste2.xlsx",
98
+ userId: 20
99
+ },
100
+ 13: {
101
+ date: "2022-10-8 23:46:00",
102
+ type: "file",
103
+ value: "84300/1/chat/noExiste3.csv",
104
+ userId: 20
105
+ },
106
+ 14: {
107
+ date: "2022-10-8 23:22:00",
108
+ type: "file",
109
+ value: "84300/1/chat/noExiste4.pptx",
110
+ userId: 30
111
+ },
112
+ 15: {
113
+ date: "2022-10-8 21:01:00",
114
+ type: "file",
115
+ value: "84300/1/chat/noExiste5.zip",
116
+ userId: 10
117
+ },
118
+ 16: {
119
+ date: "2022-10-8 20:11:00",
120
+ type: "file",
121
+ value: "84300/1/chat/noExiste6.txt",
122
+ userId: 10
123
+ }
124
+ }; // users de prueba
125
+
126
+ var users = {
127
+ 10: {
128
+ name: "Pedro Castillo",
129
+ companyId: 100
130
+ },
131
+ 20: {
132
+ name: "Ana Carranza",
133
+ companyId: 200
134
+ },
135
+ 30: {
136
+ name: "Javier Aguayo",
137
+ companyId: 100
138
+ }
139
+ }; // companies de prueba multiple
140
+
141
+ var companies = {
142
+ 100: {
143
+ name: "Fábrica",
144
+ statusChat: "enabled"
145
+ },
146
+ 200: {
147
+ name: "Proveedor",
148
+ statusChat: "current"
149
+ }
150
+ };
151
+ var exampleChat = Template.bind({});
152
+ exports.exampleChat = exampleChat;
153
+ exampleChat.args = {
154
+ chatData: {
155
+ items: items,
156
+ users: users,
157
+ companies: companies
158
+ },
159
+ currentUser: {
160
+ id: 10,
161
+ companyId: 100
162
+ }
163
+ };
164
+ var emptyChat = Template.bind({});
165
+ exports.emptyChat = emptyChat;
166
+ emptyChat.args = {
167
+ chatData: {
168
+ items: [],
169
+ users: [],
170
+ companies: []
171
+ },
172
+ currentUser: {
173
+ id: 10,
174
+ companyId: 100
175
+ }
176
+ };
@@ -0,0 +1,537 @@
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.ContainerItems = void 0;
9
+
10
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+
12
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
13
+
14
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
15
+
16
+ var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createForOfIteratorHelper"));
17
+
18
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
19
+
20
+ var _styles = require("./styles");
21
+
22
+ var _react = require("react");
23
+
24
+ var _data = require("../../../../global-files/data");
25
+
26
+ var _ImageTooltip = require("../../../molecules/ImageTooltip");
27
+
28
+ var _utils = require("../../../../global-files/utils");
29
+
30
+ var _freeSolidSvgIcons = require("@fortawesome/free-solid-svg-icons");
31
+
32
+ var _CustomIcon = require("../../../atoms/CustomIcon");
33
+
34
+ var _ButtonV = require("../../../atoms/ButtonV2");
35
+
36
+ var _ButtonDownloadFile = require("../../../molecules/ButtonDownloadFile");
37
+
38
+ var _Modal = require("../../Modal");
39
+
40
+ var _Tooltip = require("../../../atoms/Tooltip");
41
+
42
+ var _material = require("@mui/material");
43
+
44
+ var _ImagePreview = require("../../../atoms/ImagePreview");
45
+
46
+ var _handle_userTech = require("../../../../global-files/handle_userTech");
47
+
48
+ var _jsxRuntime = require("react/jsx-runtime");
49
+
50
+ var ContainerItems = function ContainerItems(props) {
51
+ var items = props.items,
52
+ users = props.users,
53
+ currentUser = props.currentUser,
54
+ activeCompanyId = props.activeCompanyId,
55
+ chatType = props.chatType,
56
+ showBtnLoadMore = props.showBtnLoadMore,
57
+ onClickBtnLoadMore = props.onClickBtnLoadMore;
58
+
59
+ var _useState = (0, _react.useState)(0),
60
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
61
+ scrollHeight = _useState2[0],
62
+ setScrollHeight = _useState2[1];
63
+
64
+ var _useState3 = (0, _react.useState)(false),
65
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
66
+ btnLoadMoreLoading = _useState4[0],
67
+ setBtnLoadMoreLoading = _useState4[1];
68
+
69
+ var _useState5 = (0, _react.useState)([]),
70
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
71
+ customItems = _useState6[0],
72
+ setCustomItems = _useState6[1];
73
+
74
+ var _useState7 = (0, _react.useState)({
75
+ show: false,
76
+ title: "",
77
+ message: ""
78
+ }),
79
+ _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
80
+ modalAlert = _useState8[0],
81
+ setModalAlert = _useState8[1];
82
+
83
+ var containerList = (0, _react.useRef)(null);
84
+ (0, _react.useEffect)(function () {
85
+ if (!items) return;
86
+ if (["merchant_product", "order_product"].includes(chatType)) renderItems();else if (chatType === "ticket") renderItemsTicket();else setCustomItems([]);
87
+ }, [items]);
88
+
89
+ var updateScroll = function updateScroll() {
90
+ var containerScroll = document.getElementById("containerItems");
91
+
92
+ if (containerScroll) {
93
+ var newScrollHeight = containerScroll.scrollHeight + 15;
94
+ var positionScroll = newScrollHeight - scrollHeight;
95
+
96
+ if (newScrollHeight !== scrollHeight) {
97
+ containerScroll.scrollTop = positionScroll;
98
+ setScrollHeight(newScrollHeight);
99
+ }
100
+ }
101
+ };
102
+
103
+ var renderGrayLabel = function renderGrayLabel(text, key) {
104
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Zoom, {
105
+ in: true,
106
+ timeout: 600,
107
+ container: containerList.current,
108
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("li", {
109
+ className: "label-gray",
110
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
111
+ className: "separator"
112
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
113
+ children: text
114
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
115
+ className: "separator"
116
+ })]
117
+ })
118
+ }, key !== null && key !== void 0 ? key : "");
119
+ };
120
+
121
+ var renderStatusService = function renderStatusService(text, key) {
122
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Zoom, {
123
+ in: true,
124
+ timeout: 600,
125
+ container: containerList.current,
126
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
127
+ className: "label-statusService",
128
+ children: text
129
+ })
130
+ }, key !== null && key !== void 0 ? key : "");
131
+ };
132
+
133
+ var renderStatusArticle = function renderStatusArticle(text, key) {
134
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Zoom, {
135
+ in: true,
136
+ timeout: 600,
137
+ container: containerList.current,
138
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
139
+ className: "label-statusArticle",
140
+ children: text
141
+ })
142
+ }, key !== null && key !== void 0 ? key : "");
143
+ };
144
+
145
+ var renderStatusTicket = function renderStatusTicket(item) {
146
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
147
+ className: "item-statusTicket",
148
+ children: item.value
149
+ });
150
+ };
151
+
152
+ var renderStatusTicketNeutral = function renderStatusTicketNeutral(item) {
153
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.Tooltip, {
154
+ componentTooltip: /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
155
+ children: users[item.userId].name
156
+ }),
157
+ className: "itemStatus ticket",
158
+ position: "topCenter",
159
+ addArrow: false,
160
+ transitionType: "zoom",
161
+ followCursor: false,
162
+ children: item.value
163
+ });
164
+ };
165
+
166
+ var renderMessage = function renderMessage(item) {
167
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("label", {
168
+ className: "item-message",
169
+ children: [" ", item.value, " "]
170
+ });
171
+ };
172
+
173
+ var renderComment = function renderComment(item) {
174
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("label", {
175
+ className: "item-comment",
176
+ children: [" ", item.value, " "]
177
+ });
178
+ };
179
+
180
+ var renderImg = function renderImg(item) {
181
+ var _value$width, _value$height, _value$width2, _value$height2;
182
+
183
+ var value = (0, _utils.decodeJSON)(item.value);
184
+ var originalImgURL = "".concat(process.env.REACT_APP_IMAGES_ENDPOINT, "/").concat(value.key); // dimensiones de la imagen a mostrar en el chat
185
+
186
+ var imgHeight = (0, _utils.getResizeImgHeight)((_value$width = value.width) !== null && _value$width !== void 0 ? _value$width : 400, (_value$height = value.height) !== null && _value$height !== void 0 ? _value$height : 400, 400);
187
+ var imgURL = (0, _utils.getImageURL)(process.env.REACT_APP_IMAGES_BUCKET, value.key, 400, imgHeight); // dimensiones de la imagen a mostrar en modal full
188
+
189
+ var modalImgHeight = (0, _utils.getResizeImgHeight)((_value$width2 = value.width) !== null && _value$width2 !== void 0 ? _value$width2 : screen.width, (_value$height2 = value.height) !== null && _value$height2 !== void 0 ? _value$height2 : screen.height, screen.width);
190
+ var modalImgURL = (0, _utils.getImageURL)(process.env.REACT_APP_IMAGES_BUCKET, value.key, screen.width, modalImgHeight);
191
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
192
+ className: "item-img",
193
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ImagePreview.ImagePreview, {
194
+ className: "container-ImagePreview",
195
+ width: "100%",
196
+ sizeLoading: 35,
197
+ colorLoading: undefined,
198
+ imgURL: imgURL,
199
+ modalImgURL: modalImgURL,
200
+ downloadImgURL: originalImgURL,
201
+ imageName: value.name,
202
+ showButtonDownload: true,
203
+ componentDefault: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.Tooltip, {
204
+ componentTooltip: /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
205
+ children: value.name
206
+ }),
207
+ className: "label-nameImg",
208
+ position: "topCenter",
209
+ addArrow: false,
210
+ transitionType: "zoom",
211
+ followCursor: false,
212
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_CustomIcon.CustomIcon, {
213
+ className: "iconDefaultImg",
214
+ type: "white",
215
+ size: 60,
216
+ borderType: "rectangle",
217
+ icon: _freeSolidSvgIcons.faImage
218
+ })
219
+ }),
220
+ componentDefaultModal: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.Tooltip, {
221
+ componentTooltip: /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
222
+ children: value.name
223
+ }),
224
+ className: "label-nameImgModal",
225
+ position: "topCenter",
226
+ addArrow: false,
227
+ transitionType: "zoom",
228
+ followCursor: false,
229
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_CustomIcon.CustomIcon, {
230
+ className: "iconDefaultImgModal",
231
+ type: "white",
232
+ size: 100,
233
+ borderType: "rectangle",
234
+ icon: _freeSolidSvgIcons.faImage
235
+ })
236
+ })
237
+ })
238
+ });
239
+ /*
240
+ <Tooltip
241
+ componentTooltip={<label>{value.name}</label>}
242
+ className="label-nameFileShort"
243
+ position={"topCenter"}
244
+ addArrow={false}
245
+ transitionType={"zoom"}
246
+ followCursor={false}
247
+ >
248
+ {value.name}
249
+ </Tooltip>
250
+ */
251
+ };
252
+
253
+ var renderFile = function renderFile(item, ownMessage) {
254
+ var value = (0, _utils.decodeJSON)(item.value);
255
+ var url = "".concat(process.env.REACT_APP_IMAGES_ENDPOINT, "/").concat(value.key);
256
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
257
+ className: "item-file",
258
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ButtonDownloadFile.ButtonDownloadFile, {
259
+ className: "btnDownloadFileItem",
260
+ size: 22,
261
+ type: ownMessage ? "black" : "white",
262
+ transparent: true,
263
+ url: url,
264
+ onDownload: function onDownload(error) {
265
+ error && setModalAlert(function (prev) {
266
+ return {
267
+ show: true,
268
+ title: error.message,
269
+ message: error.details
270
+ };
271
+ });
272
+ }
273
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.Tooltip, {
274
+ componentTooltip: /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
275
+ children: value.name
276
+ }),
277
+ className: "label-nameFileShort",
278
+ position: "topCenter",
279
+ addArrow: false,
280
+ transitionType: "zoom",
281
+ followCursor: false,
282
+ children: value.name
283
+ })]
284
+ });
285
+ };
286
+
287
+ var getUserCreatedItem = function getUserCreatedItem(ownMessage, item, lastUserId) {
288
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Slide, {
289
+ id: "itemScroll-" + item.id,
290
+ direction: ownMessage ? "left" : "right",
291
+ in: true,
292
+ timeout: 500,
293
+ container: containerList.current,
294
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("li", {
295
+ className: (ownMessage ? "own-message " : "") + (lastUserId === item.userId ? "sameUser" : ""),
296
+ children: [lastUserId !== item.userId && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ImageTooltip.ImageTooltip, {
297
+ className: "container-imgUser",
298
+ sizeLoading: 25,
299
+ colorLoading: undefined,
300
+ src: (0, _data.getProfilePicture)(item.userId, 34, 34),
301
+ componentDefault: /*#__PURE__*/(0, _jsxRuntime.jsx)(_CustomIcon.CustomIcon, {
302
+ className: "icon-imgUser",
303
+ type: "whiteS2",
304
+ size: 17,
305
+ borderType: "circle",
306
+ icon: _freeSolidSvgIcons.faUser
307
+ }),
308
+ classNameTooltip: "tooltip-imgUser",
309
+ componentTooltip: /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
310
+ className: "label-nameUser",
311
+ children: users[item.userId].name
312
+ })
313
+ }), item.type === "message" ? renderMessage(item) : item.type === "comment" ? renderComment(item) : item.type === "img" ? renderImg(item) : item.type === "file" ? renderFile(item, ownMessage) : item.type === "statusTicket" ? renderStatusTicket(item) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
314
+ className: "label-time",
315
+ children: (0, _utils.getTime)(item.date)
316
+ })]
317
+ })
318
+ }, "item-" + item.id);
319
+ };
320
+
321
+ var getItemNeutral = function getItemNeutral(item) {
322
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Zoom, {
323
+ in: true,
324
+ timeout: 600,
325
+ container: containerList.current,
326
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("li", {
327
+ className: "itemNeutral",
328
+ children: item.type === "statusTicket" ? renderStatusTicketNeutral(item) : null
329
+ })
330
+ }, "item-" + item.id);
331
+ };
332
+
333
+ var renderItems = function renderItems() {
334
+ var jsxItems = [];
335
+ var date = undefined;
336
+ var countDate = 1;
337
+
338
+ var _iterator = (0, _createForOfIteratorHelper2.default)(items),
339
+ _step;
340
+
341
+ try {
342
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
343
+ var item = _step.value;
344
+
345
+ // manejo de las etiquetas fechas
346
+ if (!date) {
347
+ date = (0, _utils.getFullDate)(new Date(item.date));
348
+ jsxItems.push(renderGrayLabel(date, "itemDate-".concat(countDate++)));
349
+ } else {
350
+ var newDate = (0, _utils.getFullDate)(new Date(item.date));
351
+
352
+ if (newDate !== date) {
353
+ jsxItems.push(renderGrayLabel(newDate, "itemDate-".concat(countDate++)));
354
+ date = newDate;
355
+ }
356
+ } // elementos que van alineados al centro
357
+
358
+
359
+ switch (item.type) {
360
+ case "statusArticle":
361
+ jsxItems.push(renderStatusArticle(item.value, "item-".concat(item.id)));
362
+ break;
363
+
364
+ case "statusService":
365
+ jsxItems.push(renderStatusService(item.value, "item-".concat(item.id)));
366
+ break;
367
+ } // acomodo del item (left o right)
368
+
369
+
370
+ var ownMessage = false; // CHAT MERCHANT ARTICLE
371
+
372
+ if (chatType === "merchant_product") {
373
+ if (currentUser.companyId === users[item.userId].companyId) {
374
+ ownMessage = true;
375
+ }
376
+ } // CHAT ORDER ARTICLE
377
+ else if (chatType === "order_product") {
378
+ if (currentUser.companyId === users[item.userId].companyId) {
379
+ if (activeCompanyId && activeCompanyId === currentUser.companyId) {
380
+ if (item.userId === currentUser.id) {
381
+ ownMessage = true;
382
+ }
383
+ } else {
384
+ ownMessage = true;
385
+ }
386
+ }
387
+ } // renderizar tipo de item
388
+
389
+
390
+ jsxItems.push(getUserCreatedItem(ownMessage, item));
391
+ }
392
+ } catch (err) {
393
+ _iterator.e(err);
394
+ } finally {
395
+ _iterator.f();
396
+ }
397
+
398
+ setCustomItems(jsxItems);
399
+ };
400
+
401
+ var renderItemsTicket = function renderItemsTicket() {
402
+ var jsxItems = [];
403
+ var date = undefined;
404
+ var countDate = 1;
405
+ var lastUserId = undefined; // recorrido de los items (del mas viejo al mas reciente)
406
+
407
+ for (var index = items.length - 1; index >= 0; index--) {
408
+ var item = items[index]; // manejo de las etiquetas fechas
409
+
410
+ if (!date) {
411
+ date = (0, _utils.getFullDate)(new Date(item.date));
412
+ jsxItems.push(renderGrayLabel(date, "itemDate-".concat(countDate++)));
413
+ lastUserId = undefined;
414
+ } else {
415
+ var newDate = (0, _utils.getFullDate)(new Date(item.date));
416
+
417
+ if (newDate !== date) {
418
+ jsxItems.push(renderGrayLabel(newDate, "itemDate-".concat(countDate++)));
419
+ date = newDate;
420
+ lastUserId = undefined;
421
+ }
422
+ } // elementos que van alineados al centro
423
+
424
+ /*
425
+ switch (item.type) {
426
+ case "statusTicket":
427
+ jsxItems.push(getItemNeutral(item));
428
+ lastUserId = undefined;
429
+ continue;
430
+ }
431
+ */
432
+ // acomodo del item (left o right)
433
+
434
+
435
+ var ownMessage = false; // user tech
436
+
437
+ if (currentUser.isUserTech) {
438
+ if ((0, _handle_userTech.isUserTech)(users[item.userId].isUserTech)) ownMessage = true;
439
+ } // user normal
440
+ else {
441
+ if (!(0, _handle_userTech.isUserTech)(users[item.userId].isUserTech)) {
442
+ if (currentUser.companyId === users[item.userId].companyId) {
443
+ ownMessage = true;
444
+ }
445
+ } else if (currentUser.id === item.userId) {
446
+ ownMessage = true;
447
+ }
448
+ } // renderizar tipo de item
449
+
450
+
451
+ jsxItems.push(getUserCreatedItem(ownMessage, item, lastUserId));
452
+ lastUserId = item.userId;
453
+ }
454
+
455
+ setCustomItems(jsxItems);
456
+ };
457
+
458
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
459
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_styles.Container, {
460
+ id: "containerItems",
461
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
462
+ className: "btn-loadMore",
463
+ children: showBtnLoadMore && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ButtonV.ButtonV2, {
464
+ className: "container-btnLoadMore",
465
+ type: "purple",
466
+ label: "cargar más",
467
+ size: 10,
468
+ borderType: "oval",
469
+ icon: _freeSolidSvgIcons.faRedoAlt,
470
+ iconPosition: "start",
471
+ isLoading: btnLoadMoreLoading,
472
+ onClick: /*#__PURE__*/function () {
473
+ var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(event) {
474
+ var responseError;
475
+ return _regenerator.default.wrap(function _callee$(_context) {
476
+ while (1) {
477
+ switch (_context.prev = _context.next) {
478
+ case 0:
479
+ setBtnLoadMoreLoading(true);
480
+
481
+ if (!onClickBtnLoadMore) {
482
+ _context.next = 6;
483
+ break;
484
+ }
485
+
486
+ _context.next = 4;
487
+ return onClickBtnLoadMore();
488
+
489
+ case 4:
490
+ responseError = _context.sent;
491
+
492
+ if (responseError) {
493
+ setModalAlert({
494
+ show: true,
495
+ title: responseError.title,
496
+ message: responseError.message
497
+ });
498
+ }
499
+
500
+ case 6:
501
+ setBtnLoadMoreLoading(false);
502
+
503
+ case 7:
504
+ case "end":
505
+ return _context.stop();
506
+ }
507
+ }
508
+ }, _callee);
509
+ }));
510
+
511
+ return function (_x) {
512
+ return _ref.apply(this, arguments);
513
+ };
514
+ }()
515
+ })
516
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("ul", {
517
+ id: "ulItems",
518
+ ref: containerList,
519
+ children: customItems
520
+ })]
521
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Modal.Modal, {
522
+ show: modalAlert.show,
523
+ title: modalAlert.title,
524
+ message: modalAlert.message,
525
+ icon: "info",
526
+ onClickBtnDefault: function onClickBtnDefault(event) {
527
+ return setModalAlert(function (prev) {
528
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, prev), {}, {
529
+ show: false
530
+ });
531
+ });
532
+ }
533
+ })]
534
+ });
535
+ };
536
+
537
+ exports.ContainerItems = ContainerItems;