contentoh-components-library 21.3.5 → 21.3.7

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 (186) hide show
  1. package/.env.development +3 -0
  2. package/dist/assets/images/customSelect/starIcon.svg +14 -0
  3. package/dist/assets/images/defaultImages/Spinner.gif +0 -0
  4. package/dist/assets/images/defaultImages/notFound.svg +124 -0
  5. package/dist/components/atoms/ButtonFileChooser/ButtonFileChooser.stories.js +72 -0
  6. package/dist/components/atoms/ButtonFileChooser/index.js +118 -0
  7. package/dist/components/atoms/ButtonFileChooser/styles.js +20 -0
  8. package/dist/components/atoms/ButtonV2/ButtonV2.stories.js +66 -0
  9. package/dist/components/atoms/ButtonV2/index.js +110 -0
  10. package/dist/components/atoms/ButtonV2/styles.js +53 -0
  11. package/dist/components/atoms/CustomIcon/CustomIcon.stories.js +50 -0
  12. package/dist/components/atoms/CustomIcon/index.js +40 -0
  13. package/dist/components/atoms/CustomIcon/styles.js +33 -0
  14. package/dist/components/atoms/IconFile/IconFile.stories.js +48 -0
  15. package/dist/components/atoms/IconFile/index.js +249 -0
  16. package/dist/components/atoms/IconFile/styles.js +23 -0
  17. package/dist/components/atoms/Image/Image.stories.js +73 -0
  18. package/dist/components/atoms/Image/index.js +76 -0
  19. package/dist/components/atoms/Image/styles.js +43 -0
  20. package/dist/components/atoms/ImageLink/ImageLink.stories.js +63 -0
  21. package/dist/components/atoms/ImageLink/index.js +77 -0
  22. package/dist/components/atoms/ImageLink/styles.js +40 -0
  23. package/dist/components/atoms/ImagePreview/ImagePreview.stories.js +70 -0
  24. package/dist/components/atoms/ImagePreview/index.js +222 -0
  25. package/dist/components/atoms/ImagePreview/styles.js +44 -0
  26. package/dist/components/atoms/InputText/InputText.stories.js +60 -0
  27. package/dist/components/atoms/InputText/index.js +66 -0
  28. package/dist/components/atoms/InputText/styles.js +32 -0
  29. package/dist/components/atoms/NotFound/NotFound.stories.js +36 -0
  30. package/dist/components/atoms/NotFound/index.js +75 -0
  31. package/dist/components/atoms/NotFound/styles.js +20 -0
  32. package/dist/components/atoms/ProgressBar/index.js +36 -6
  33. package/dist/components/atoms/ProgressBar/styles.js +11 -3
  34. package/dist/components/atoms/SelectItemV2/SelectItemV2.stories.js +45 -0
  35. package/dist/components/atoms/SelectItemV2/index.js +57 -0
  36. package/dist/components/atoms/SelectItemV2/styles.js +30 -0
  37. package/dist/components/atoms/Tooltip/Tooltip.stories.js +66 -0
  38. package/dist/components/atoms/Tooltip/index.js +72 -0
  39. package/dist/components/atoms/Tooltip/styles.js +20 -0
  40. package/dist/components/molecules/ButtonDownloadFile/DownloadFile.stories.js +66 -0
  41. package/dist/components/molecules/ButtonDownloadFile/index.js +179 -0
  42. package/dist/components/molecules/ButtonDownloadFile/styles.js +23 -0
  43. package/dist/components/molecules/CustomSelect/CustomSelect.stories.js +21 -22
  44. package/dist/components/molecules/CustomSelect/SelectItem.js +10 -1
  45. package/dist/components/molecules/Dropdown/Dropdown.stories.js +98 -0
  46. package/dist/components/molecules/Dropdown/index.js +150 -0
  47. package/dist/components/molecules/Dropdown/styles.js +26 -0
  48. package/dist/components/molecules/HeaderTop/index.js +10 -5
  49. package/dist/components/molecules/HeaderTop/styles.js +1 -1
  50. package/dist/components/molecules/ImageTooltip/ImageTooltip.stories.js +82 -0
  51. package/dist/components/molecules/ImageTooltip/index.js +85 -0
  52. package/dist/components/molecules/ImageTooltip/styles.js +33 -0
  53. package/dist/components/molecules/ProductNameHeader/index.js +5 -3
  54. package/dist/components/molecules/SelectV2/SelectV2.stories.js +119 -0
  55. package/dist/components/molecules/SelectV2/index.js +306 -0
  56. package/dist/components/molecules/SelectV2/styles.js +42 -0
  57. package/dist/components/molecules/SelectV2/test.js +95 -0
  58. package/dist/components/molecules/SelectV2/test.stories.js +27 -0
  59. package/dist/components/organisms/Chat/Chat.stories.js +215 -0
  60. package/dist/components/organisms/Chat/ChatLists/ChatLists.stories.js +83 -0
  61. package/dist/components/organisms/Chat/ChatLists/index.js +160 -0
  62. package/dist/components/organisms/Chat/ChatLists/styles.js +29 -0
  63. package/dist/components/organisms/Chat/ContainerItems/ContainerItems.stories.js +176 -0
  64. package/dist/components/organisms/Chat/ContainerItems/index.js +569 -0
  65. package/dist/components/organisms/Chat/ContainerItems/styles.js +20 -0
  66. package/dist/components/organisms/Chat/ContentChat/ContentChat.stories.js +142 -0
  67. package/dist/components/organisms/Chat/ContentChat/index.js +1422 -0
  68. package/dist/components/organisms/Chat/ContentChat/styles.js +20 -0
  69. package/dist/components/organisms/Chat/Footer/Footer.stories.js +43 -0
  70. package/dist/components/organisms/Chat/Footer/index.js +984 -0
  71. package/dist/components/organisms/Chat/Footer/styles.js +32 -0
  72. package/dist/components/organisms/Chat/Header/Header.stories.js +96 -0
  73. package/dist/components/organisms/Chat/Header/index.js +84 -0
  74. package/dist/components/organisms/Chat/Header/styles.js +20 -0
  75. package/dist/components/organisms/Chat/index.js +327 -0
  76. package/dist/components/organisms/Chat/styles.js +29 -0
  77. package/dist/components/organisms/FullProductNameHeader/index.js +1 -0
  78. package/dist/components/organisms/Modal/Modal.stories.js +66 -0
  79. package/dist/components/organisms/Modal/index.js +95 -0
  80. package/dist/components/organisms/Modal/styles.js +20 -0
  81. package/dist/components/organisms/RangeCalendar/RangeCalendar.stories.js +33 -0
  82. package/dist/components/organisms/RangeCalendar/index.js +148 -0
  83. package/dist/components/organisms/RangeCalendar/styles.js +27 -0
  84. package/dist/components/pages/ProviderProductEdition/index.js +8 -8
  85. package/dist/components/pages/RetailerProductEdition/RetailerProductEdition.stories.js +60 -86
  86. package/dist/components/pages/RetailerProductEdition/index.js +13 -12
  87. package/dist/global-files/fonts.css +6 -0
  88. package/dist/global-files/handle_http.js +383 -0
  89. package/dist/global-files/utils.js +484 -0
  90. package/dist/global-files/variables.js +2 -0
  91. package/dist/index.js +267 -46
  92. package/package.json +12 -1
  93. package/src/assets/images/customSelect/starIcon.svg +14 -0
  94. package/src/assets/images/defaultImages/Spinner.gif +0 -0
  95. package/src/assets/images/defaultImages/notFound.svg +124 -0
  96. package/src/components/atoms/ButtonFileChooser/ButtonFileChooser.stories.js +47 -0
  97. package/src/components/atoms/ButtonFileChooser/index.js +69 -0
  98. package/src/components/atoms/ButtonFileChooser/styles.js +4 -0
  99. package/src/components/atoms/ButtonV2/ButtonV2.stories.js +53 -0
  100. package/src/components/atoms/ButtonV2/index.js +85 -0
  101. package/src/components/atoms/ButtonV2/styles.js +217 -0
  102. package/src/components/atoms/CustomIcon/CustomIcon.stories.js +36 -0
  103. package/src/components/atoms/CustomIcon/index.js +41 -0
  104. package/src/components/atoms/CustomIcon/styles.js +85 -0
  105. package/src/components/atoms/IconFile/IconFile.stories.js +35 -0
  106. package/src/components/atoms/IconFile/index.js +119 -0
  107. package/src/components/atoms/IconFile/styles.js +67 -0
  108. package/src/components/atoms/Image/Image.stories.js +51 -0
  109. package/src/components/atoms/Image/index.js +55 -0
  110. package/src/components/atoms/Image/styles.js +34 -0
  111. package/src/components/atoms/ImageLink/ImageLink.stories.js +43 -0
  112. package/src/components/atoms/ImageLink/index.js +57 -0
  113. package/src/components/atoms/ImageLink/styles.js +30 -0
  114. package/src/components/atoms/ImagePreview/ImagePreview.stories.js +52 -0
  115. package/src/components/atoms/ImagePreview/index.js +191 -0
  116. package/src/components/atoms/ImagePreview/styles.js +77 -0
  117. package/src/components/atoms/InputText/InputText.stories.js +39 -0
  118. package/src/components/atoms/InputText/index.js +61 -0
  119. package/src/components/atoms/InputText/styles.js +89 -0
  120. package/src/components/atoms/NotFound/NotFound.stories.js +19 -0
  121. package/src/components/atoms/NotFound/index.js +52 -0
  122. package/src/components/atoms/NotFound/styles.js +55 -0
  123. package/src/components/atoms/ProgressBar/index.js +40 -5
  124. package/src/components/atoms/ProgressBar/styles.js +24 -0
  125. package/src/components/atoms/SelectItemV2/SelectItemV2.stories.js +26 -0
  126. package/src/components/atoms/SelectItemV2/index.js +61 -0
  127. package/src/components/atoms/SelectItemV2/styles.js +90 -0
  128. package/src/components/atoms/Tooltip/Tooltip.stories.js +51 -0
  129. package/src/components/atoms/Tooltip/index.js +59 -0
  130. package/src/components/atoms/Tooltip/styles.js +42 -0
  131. package/src/components/molecules/ButtonDownloadFile/DownloadFile.stories.js +54 -0
  132. package/src/components/molecules/ButtonDownloadFile/index.js +111 -0
  133. package/src/components/molecules/ButtonDownloadFile/styles.js +66 -0
  134. package/src/components/molecules/CustomSelect/CustomSelect.stories.js +20 -12
  135. package/src/components/molecules/CustomSelect/SelectItem.js +7 -0
  136. package/src/components/molecules/Dropdown/Dropdown.stories.js +103 -0
  137. package/src/components/molecules/Dropdown/index.js +150 -0
  138. package/src/components/molecules/Dropdown/styles.js +75 -0
  139. package/src/components/molecules/HeaderTop/index.js +11 -6
  140. package/src/components/molecules/HeaderTop/styles.js +4 -0
  141. package/src/components/molecules/ImageTooltip/ImageTooltip.stories.js +68 -0
  142. package/src/components/molecules/ImageTooltip/index.js +63 -0
  143. package/src/components/molecules/ImageTooltip/styles.js +18 -0
  144. package/src/components/molecules/ProductNameHeader/index.js +6 -1
  145. package/src/components/molecules/SelectV2/SelectV2.stories.js +114 -0
  146. package/src/components/molecules/SelectV2/index.js +350 -0
  147. package/src/components/molecules/SelectV2/styles.js +105 -0
  148. package/src/components/molecules/SelectV2/test.js +61 -0
  149. package/src/components/molecules/SelectV2/test.stories.js +10 -0
  150. package/src/components/organisms/Chat/Chat.stories.js +199 -0
  151. package/src/components/organisms/Chat/ChatLists/ChatLists.stories.js +65 -0
  152. package/src/components/organisms/Chat/ChatLists/Rotoplas.jpeg +0 -0
  153. package/src/components/organisms/Chat/ChatLists/THD.png +0 -0
  154. package/src/components/organisms/Chat/ChatLists/index.js +141 -0
  155. package/src/components/organisms/Chat/ChatLists/styles.js +162 -0
  156. package/src/components/organisms/Chat/ContainerItems/ContainerItems.stories.js +142 -0
  157. package/src/components/organisms/Chat/ContainerItems/index.js +549 -0
  158. package/src/components/organisms/Chat/ContainerItems/styles.js +328 -0
  159. package/src/components/organisms/Chat/ContentChat/ContentChat.stories.js +102 -0
  160. package/src/components/organisms/Chat/ContentChat/Rotoplas.jpeg +0 -0
  161. package/src/components/organisms/Chat/ContentChat/THD.png +0 -0
  162. package/src/components/organisms/Chat/ContentChat/index.js +900 -0
  163. package/src/components/organisms/Chat/ContentChat/styles.js +41 -0
  164. package/src/components/organisms/Chat/Footer/Footer.stories.js +22 -0
  165. package/src/components/organisms/Chat/Footer/index.js +669 -0
  166. package/src/components/organisms/Chat/Footer/styles.js +286 -0
  167. package/src/components/organisms/Chat/Header/Header.stories.js +66 -0
  168. package/src/components/organisms/Chat/Header/index.js +94 -0
  169. package/src/components/organisms/Chat/Header/styles.js +49 -0
  170. package/src/components/organisms/Chat/index.js +294 -0
  171. package/src/components/organisms/Chat/styles.js +42 -0
  172. package/src/components/organisms/FullProductNameHeader/index.js +1 -0
  173. package/src/components/organisms/Modal/Modal.stories.js +55 -0
  174. package/src/components/organisms/Modal/index.js +97 -0
  175. package/src/components/organisms/Modal/styles.js +103 -0
  176. package/src/components/organisms/RangeCalendar/RangeCalendar.stories.js +16 -0
  177. package/src/components/organisms/RangeCalendar/index.js +121 -0
  178. package/src/components/organisms/RangeCalendar/styles.js +883 -0
  179. package/src/components/pages/ProviderProductEdition/index.js +9 -6
  180. package/src/components/pages/RetailerProductEdition/RetailerProductEdition.stories.js +62 -85
  181. package/src/components/pages/RetailerProductEdition/index.js +12 -10
  182. package/src/global-files/fonts.css +6 -0
  183. package/src/global-files/handle_http.js +231 -0
  184. package/src/global-files/utils.js +309 -0
  185. package/src/global-files/variables.js +2 -0
  186. package/src/index.js +17 -0
@@ -0,0 +1,199 @@
1
+ import { Chat } from "./index";
2
+
3
+ export default {
4
+ title: "Components/organisms/Chat",
5
+ component: Chat,
6
+ argTypes: {
7
+ chatContainerType: {
8
+ options: ["popUp", "fixed"],
9
+ control: { type: "select" },
10
+ },
11
+ chatType: {
12
+ options: ["order_product", "merchant_product", "ticket"],
13
+ control: { type: "select" },
14
+ },
15
+ },
16
+ };
17
+
18
+ const Template = (args) => <Chat {...args} />;
19
+
20
+ // ejemplo del chat orderProduct con user CADENA
21
+ export const chatCAD_orderProduct = Template.bind({});
22
+ chatCAD_orderProduct.args = {
23
+ chatType: "order_product",
24
+ chatContainerType: "popUp",
25
+ chatData: {
26
+ userToken:
27
+ "eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiI1ODg0YWUzNC01OWQ2LTQ0NTQtYjk4ZS04MjE1MThiY2MzYTciLCJjb2duaXRvOmdyb3VwcyI6WyJ1c3VhcmlvX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfWE1aUWRxa0dqIiwicGhvbmVfbnVtYmVyX3ZlcmlmaWVkIjpmYWxzZSwiY29nbml0bzp1c2VybmFtZSI6IjU4ODRhZTM0LTU5ZDYtNDQ1NC1iOThlLTgyMTUxOGJjYzNhNyIsImNvZ25pdG86cm9sZXMiOlsiYXJuOmF3czppYW06Ojg5ODY3MDIzMjgwNzpyb2xlXC9jb250ZW50b2gtZGV2LXVzLWVhc3QtMS1sYW1iZGFSb2xlIl0sImF1ZCI6IjVhYzh0cGdzNmdic3ExM2ZydnJwaWVlcDQwIiwiZXZlbnRfaWQiOiI2YmI0NzExMi03ZTNiLTRjYzUtYmVhZS02MzMxZjEwYjk3MzIiLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY2NTYxNjI0MSwibmFtZSI6IkNhZGVuYSBJc21hZWwiLCJwaG9uZV9udW1iZXIiOiIrNTIzMTExMzY2MzM2IiwiZXhwIjoxNjY1NjE5ODQxLCJpYXQiOjE2NjU2MTYyNDEsImVtYWlsIjoiY2FkZW5hLmlzbWFlbEBhbGxmcmVlbWFpbC5uZXQifQ.gi1Jiua_O175vHLy-CYXOR945IRcObIj5j1LNk4_EhcKPz-MzPnfWDLH7L3sTiNS-VUhIRtAhtUVPUSYv0oP1qfJwFHomerxJvYgJge8SLWPjL6yGBnTxAvHVbuLU8kcaoZup2eNMV6XOIAEBAHeCDm4vW0rYWwfrKADPyYGZQF2si14o3wtgSMX5a4ccxGwikT3to3HttWBhmJs_I1Xr_BvBxePc4WghjQr5GVGbq8vhr4HwdkTmlcJAnQsc_fmIdbJ_ACyTa1wr343KYYOQVwBjAmZDa6rU16y0yTr_J4IVWY3aS5UpBEBHy4XE0c76UaN-_DcGiVl4ayWQIUz8A",
28
+ id: 84311,
29
+ retailerId: 68,
30
+ orderId: 3118,
31
+ },
32
+ };
33
+
34
+ // ejemplo del chat orderProduct con user PROVEEDOR
35
+ export const chatPROV_orderProduct = Template.bind({});
36
+ chatPROV_orderProduct.args = {
37
+ chatType: "order_product",
38
+ chatContainerType: "popUp",
39
+ chatData: {
40
+ userToken:
41
+ "eyJraWQiOiJEV3owZnNieXg2MXNFcVduN3RCXC81bVhod3ZNbFZIOTgwUnZcL3RjT0lKdEk9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiI5ZDBjYzVjOC1hODllLTRiZGQtOWUyZC0zNThhMDFjYzlhNjIiLCJjb2duaXRvOmdyb3VwcyI6WyJjb2xhYm9yYWRvcmVzX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfbFN6UVo0WjdSIiwicGhvbmVfbnVtYmVyX3ZlcmlmaWVkIjp0cnVlLCJjb2duaXRvOnVzZXJuYW1lIjoiOWQwY2M1YzgtYTg5ZS00YmRkLTllMmQtMzU4YTAxY2M5YTYyIiwiYXVkIjoiNTJkOXNra2RjZzhxanA4OG9vazF1c2U2bWsiLCJldmVudF9pZCI6IjU1NDQ5NzhmLWExMGEtNGE5Ni05M2NkLWY5Y2ZmNTFlNWRlOCIsInRva2VuX3VzZSI6ImlkIiwiYXV0aF90aW1lIjoxNjY1NjI0MjYyLCJuYW1lIjoiSXNtYWVsIExvcGV6IiwicGhvbmVfbnVtYmVyIjoiKzUyMzExMTM2NjMzNiIsImV4cCI6MTY2NTYyNzg2MiwiaWF0IjoxNjY1NjI0MjYyLCJlbWFpbCI6Imlsb3BlekBjb250ZW50b2guY29tIn0.bIDIv57LRgafkymcUY4DqFRxR91iTBlZ7H7v1o3TnwJpIFPUEvzfvHObDR534xfa-R5ZRz46YCjsV6yQ-2hd8OA97VFLrqyC8Yqx_hjoIA1QxX_5_-b4UWaIib_1wSkrWd2gQtuKAUucfzAisZp1UNiY6Sm4VPGXsc5Lk6kLo1X_rctLUlQMhl5KaMNaSWqvbcYZLz5XSpbJR_MHegkdquKBaQJVKl76TkvDT8Eyr6rPUUAtnRBAPfnP4dW82HgT-aZp-0wUH5fYcb02agPg4-wqVsxPr8WxihATqn9rVfR5CjZWYOGPdSw7AUS33yYAkx5Nmnz4oIcRlPsvF5U62g",
42
+ id: 84311,
43
+ retailerId: 68,
44
+ orderId: 3118,
45
+ },
46
+ };
47
+
48
+ // ejemplo del chat orderProduct con user FABRICA 37
49
+ export const chatFAB_orderProduct_user37 = Template.bind({});
50
+ chatFAB_orderProduct_user37.args = {
51
+ chatType: "order_product",
52
+ chatContainerType: "popUp",
53
+ chatData: {
54
+ userToken:
55
+ "eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiI5YTIxMzEyOC02NDgyLTRjMTYtYTRiNi02ZTY0ZjIyNWIxYmQiLCJjb2duaXRvOmdyb3VwcyI6WyJjb2xhYm9yYWRvcmVzX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfWE1aUWRxa0dqIiwiY29nbml0bzp1c2VybmFtZSI6IjlhMjEzMTI4LTY0ODItNGMxNi1hNGI2LTZlNjRmMjI1YjFiZCIsImNvZ25pdG86cm9sZXMiOlsiYXJuOmF3czppYW06Ojg5ODY3MDIzMjgwNzpyb2xlXC9jb250ZW50b2gtZGV2LXVzLWVhc3QtMS1sYW1iZGFSb2xlIl0sImF1ZCI6IjVhYzh0cGdzNmdic3ExM2ZydnJwaWVlcDQwIiwiZXZlbnRfaWQiOiI1YTg4MmFkMS04OWFjLTQwYTYtYWRhMi02NzgyNWNjMzNiZTciLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY2NjIwNTg2NSwibmFtZSI6IkNvbGFib3JhZG9yIiwicGhvbmVfbnVtYmVyIjoiKzUyMTExMSIsImV4cCI6MTY2NjIwOTQ2NSwiaWF0IjoxNjY2MjA1ODY1LCJlbWFpbCI6ImlzbWFlbDk3bG9wZXpAZ21haWwuY29tIn0.HOsBuNBBeDL4Vwhi5Rou0jzZqOO_n_AIvoFOVRuFFiVppzaTDFNEVcapq9hCLIGQZT5NK8Arwo-nZkcVVAqHMsu8KKJsPQZIkGbHI6CVD7IkBBfm756e-tTuHHBYd4ND3HifVDWwno8mEODLZdaWRcy5MN3TErqCEy8cf1u7CQSguKmjeElL-8DHtNfLKMnxJOGGW_JAEa1JVWninzekPAeFKmWFOtByFCJZT1HBmL9XERIXXN6qWU_g0KlUm_wBWkmIDxuVRPorFEPinh0ETAGkGa5mf1SPaibXXSEoiF58DkFRyrOcTVKnV7Dixjo6DvBwN98fYW0zaeo3G5nSXw",
56
+ id: 84311,
57
+ retailerId: 68,
58
+ orderId: 3118,
59
+ },
60
+ };
61
+
62
+ // ejemplo del chat orderProduct con user FABRICA 49
63
+ export const chatFAB_orderProduct_user49 = Template.bind({});
64
+ chatFAB_orderProduct_user49.args = {
65
+ chatType: "order_product",
66
+ chatContainerType: "popUp",
67
+ chatData: {
68
+ userToken:
69
+ "eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiIxODA1MDQ1Mi0xOGQ0LTQxM2ItYjg2MC1iMWMyMzZmMTM5OWYiLCJjb2duaXRvOmdyb3VwcyI6WyJjb2xhYm9yYWRvcmVzX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfWE1aUWRxa0dqIiwiY29nbml0bzp1c2VybmFtZSI6IjE4MDUwNDUyLTE4ZDQtNDEzYi1iODYwLWIxYzIzNmYxMzk5ZiIsImNvZ25pdG86cm9sZXMiOlsiYXJuOmF3czppYW06Ojg5ODY3MDIzMjgwNzpyb2xlXC9jb250ZW50b2gtZGV2LXVzLWVhc3QtMS1sYW1iZGFSb2xlIl0sImF1ZCI6IjVhYzh0cGdzNmdic3ExM2ZydnJwaWVlcDQwIiwiZXZlbnRfaWQiOiJkYmU1ODRmOS0xOTJmLTRkNDEtOWMxMS0xMzRkMDgzODVjMDQiLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY2NTcxNjI3NywibmFtZSI6IkNvbGFib3JhZG9yIiwicGhvbmVfbnVtYmVyIjoiKzUyMTExMSIsImV4cCI6MTY2NTcxOTg3NywiaWF0IjoxNjY1NzE2Mjc3LCJlbWFpbCI6Im16dW5pZ2FAY29udGVudG9oLmNvbSJ9.KoPNFy9gZYoYjiCGanSe_MvnuX7rSvNTXqQVffXSzGYeb4R3G6yDWrWItjHfgFmmo1jLlTmLT_yiVC4g9Vpo9WxebPwZA9rFwKDbc3vKeAs1JSUfaatQOwIqS1NsHwEkAM-agsO2s2Rnqq4h-FCcURqjiknbvHXUjcXqSea-3JlxtVFw3x7NLG3bUPqfPyVV1N5jR-XMrDOSZctS2k4WvPqhxf75Iv77U23YNFRoOIUZIAYx8SmSw792h4YwmJqMUuZlo48aBaaZO3NE83KdMR-mYvvoa-TDIE2d9ww-vPctauVL9ydB5ISSB8gUz90o8IZIWjrwQgbzE7eRPKxPWw",
70
+ id: 84311,
71
+ retailerId: 68,
72
+ orderId: 3118,
73
+ },
74
+ };
75
+
76
+ // ejemplo del chat merchantProduct con user CADENA
77
+ export const chatCAD_merchantsProduct = Template.bind({});
78
+ chatCAD_merchantsProduct.args = {
79
+ chatType: "merchant_product",
80
+ chatContainerType: "popUp",
81
+ chatData: {
82
+ userToken:
83
+ "eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiI1ODg0YWUzNC01OWQ2LTQ0NTQtYjk4ZS04MjE1MThiY2MzYTciLCJjb2duaXRvOmdyb3VwcyI6WyJ1c3VhcmlvX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfWE1aUWRxa0dqIiwicGhvbmVfbnVtYmVyX3ZlcmlmaWVkIjpmYWxzZSwiY29nbml0bzp1c2VybmFtZSI6IjU4ODRhZTM0LTU5ZDYtNDQ1NC1iOThlLTgyMTUxOGJjYzNhNyIsImNvZ25pdG86cm9sZXMiOlsiYXJuOmF3czppYW06Ojg5ODY3MDIzMjgwNzpyb2xlXC9jb250ZW50b2gtZGV2LXVzLWVhc3QtMS1sYW1iZGFSb2xlIl0sImF1ZCI6IjVhYzh0cGdzNmdic3ExM2ZydnJwaWVlcDQwIiwiZXZlbnRfaWQiOiI2YmI0NzExMi03ZTNiLTRjYzUtYmVhZS02MzMxZjEwYjk3MzIiLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY2NTYxNjI0MSwibmFtZSI6IkNhZGVuYSBJc21hZWwiLCJwaG9uZV9udW1iZXIiOiIrNTIzMTExMzY2MzM2IiwiZXhwIjoxNjY1NjE5ODQxLCJpYXQiOjE2NjU2MTYyNDEsImVtYWlsIjoiY2FkZW5hLmlzbWFlbEBhbGxmcmVlbWFpbC5uZXQifQ.gi1Jiua_O175vHLy-CYXOR945IRcObIj5j1LNk4_EhcKPz-MzPnfWDLH7L3sTiNS-VUhIRtAhtUVPUSYv0oP1qfJwFHomerxJvYgJge8SLWPjL6yGBnTxAvHVbuLU8kcaoZup2eNMV6XOIAEBAHeCDm4vW0rYWwfrKADPyYGZQF2si14o3wtgSMX5a4ccxGwikT3to3HttWBhmJs_I1Xr_BvBxePc4WghjQr5GVGbq8vhr4HwdkTmlcJAnQsc_fmIdbJ_ACyTa1wr343KYYOQVwBjAmZDa6rU16y0yTr_J4IVWY3aS5UpBEBHy4XE0c76UaN-_DcGiVl4ayWQIUz8A",
84
+ id: 84300,
85
+ version: 1,
86
+ },
87
+ };
88
+
89
+ /*
90
+ export const chatPROV_merchantsProduct = Template.bind({});
91
+ chatPROV_merchantsProduct.args = {
92
+ userToken:
93
+ "eyJraWQiOiJEV3owZnNieXg2MXNFcVduN3RCXC81bVhod3ZNbFZIOTgwUnZcL3RjT0lKdEk9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiI5ZDBjYzVjOC1hODllLTRiZGQtOWUyZC0zNThhMDFjYzlhNjIiLCJjb2duaXRvOmdyb3VwcyI6WyJjb2xhYm9yYWRvcmVzX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfbFN6UVo0WjdSIiwicGhvbmVfbnVtYmVyX3ZlcmlmaWVkIjp0cnVlLCJjb2duaXRvOnVzZXJuYW1lIjoiOWQwY2M1YzgtYTg5ZS00YmRkLTllMmQtMzU4YTAxY2M5YTYyIiwiYXVkIjoiNTJkOXNra2RjZzhxanA4OG9vazF1c2U2bWsiLCJldmVudF9pZCI6IjU1NDQ5NzhmLWExMGEtNGE5Ni05M2NkLWY5Y2ZmNTFlNWRlOCIsInRva2VuX3VzZSI6ImlkIiwiYXV0aF90aW1lIjoxNjY1NjI0MjYyLCJuYW1lIjoiSXNtYWVsIExvcGV6IiwicGhvbmVfbnVtYmVyIjoiKzUyMzExMTM2NjMzNiIsImV4cCI6MTY2NTYyNzg2MiwiaWF0IjoxNjY1NjI0MjYyLCJlbWFpbCI6Imlsb3BlekBjb250ZW50b2guY29tIn0.bIDIv57LRgafkymcUY4DqFRxR91iTBlZ7H7v1o3TnwJpIFPUEvzfvHObDR534xfa-R5ZRz46YCjsV6yQ-2hd8OA97VFLrqyC8Yqx_hjoIA1QxX_5_-b4UWaIib_1wSkrWd2gQtuKAUucfzAisZp1UNiY6Sm4VPGXsc5Lk6kLo1X_rctLUlQMhl5KaMNaSWqvbcYZLz5XSpbJR_MHegkdquKBaQJVKl76TkvDT8Eyr6rPUUAtnRBAPfnP4dW82HgT-aZp-0wUH5fYcb02agPg4-wqVsxPr8WxihATqn9rVfR5CjZWYOGPdSw7AUS33yYAkx5Nmnz4oIcRlPsvF5U62g",
94
+ chatType: "merchants_products",
95
+ articleId: "84300",
96
+ articleVersion: "1",
97
+ };*/
98
+
99
+ // ejemplo del chat ticket con user FAB
100
+ export const chatFAB_ticketClosed_user49 = Template.bind({});
101
+ chatFAB_ticketClosed_user49.args = {
102
+ chatType: "ticket",
103
+ chatContainerType: "fixed",
104
+ chatData: {
105
+ id: 10,
106
+ ticketOwnerUserId: 23,
107
+ statusTicket: "COMPLETED",
108
+ currentUser: {
109
+ id: 49,
110
+ companyId: 2,
111
+ isUserTech: false,
112
+ },
113
+ },
114
+ };
115
+
116
+ // ejemplo del chat ticket con user TECH
117
+ export const chatTECH_ticketClosed_user65 = Template.bind({});
118
+ chatTECH_ticketClosed_user65.args = {
119
+ chatType: "ticket",
120
+ chatContainerType: "fixed",
121
+ chatData: {
122
+ id: 10,
123
+ ticketOwnerUserId: 23,
124
+ statusTicket: "COMPLETED",
125
+ currentUser: {
126
+ id: 65,
127
+ companyId: 2,
128
+ isUserTech: true,
129
+ },
130
+ },
131
+ };
132
+
133
+ // ejemplo del chat ticket con user TECH propietario del ticket
134
+ export const chatTECH_ticketClosedOwn_user66 = Template.bind({});
135
+ chatTECH_ticketClosedOwn_user66.args = {
136
+ chatType: "ticket",
137
+ chatContainerType: "fixed",
138
+ chatData: {
139
+ id: 10,
140
+ ticketOwnerUserId: 66,
141
+ statusTicket: "COMPLETED",
142
+ currentUser: {
143
+ id: 66,
144
+ companyId: 2,
145
+ isUserTech: true,
146
+ },
147
+ },
148
+ };
149
+
150
+ // ejemplo del chat ticket con user FAB
151
+ export const chatFAB_ticketOpen_user49 = Template.bind({});
152
+ chatFAB_ticketOpen_user49.args = {
153
+ chatType: "ticket",
154
+ chatContainerType: "fixed",
155
+ chatData: {
156
+ id: 11,
157
+ ticketOwnerUserId: 23,
158
+ statusTicket: "PENDING",
159
+ currentUser: {
160
+ id: 49,
161
+ companyId: 2,
162
+ isUserTech: false,
163
+ },
164
+ },
165
+ };
166
+
167
+ // ejemplo del chat ticket con user TECH
168
+ export const chatTECH_ticketOpen_user65 = Template.bind({});
169
+ chatTECH_ticketOpen_user65.args = {
170
+ chatType: "ticket",
171
+ chatContainerType: "fixed",
172
+ chatData: {
173
+ id: 11,
174
+ ticketOwnerUserId: 23,
175
+ statusTicket: "PENDING",
176
+ currentUser: {
177
+ id: 65,
178
+ companyId: 2,
179
+ isUserTech: true,
180
+ },
181
+ },
182
+ };
183
+
184
+ // ejemplo del chat ticket con user TECH propietario del ticket
185
+ export const chatTECH_ticketOpenOwn_user66 = Template.bind({});
186
+ chatTECH_ticketOpenOwn_user66.args = {
187
+ chatType: "ticket",
188
+ chatContainerType: "fixed",
189
+ chatData: {
190
+ id: 11,
191
+ ticketOwnerUserId: 66,
192
+ statusTicket: "PENDING",
193
+ currentUser: {
194
+ id: 66,
195
+ companyId: 2,
196
+ isUserTech: true,
197
+ },
198
+ },
199
+ };
@@ -0,0 +1,65 @@
1
+ import { ChatLists } from "./index";
2
+ import THD from "./THD.png";
3
+ import Rotoplas from "./Rotoplas.jpeg";
4
+
5
+ export default {
6
+ title: "Components/organisms/Chat/ChatLists",
7
+ component: ChatLists,
8
+ };
9
+
10
+ const Template = (args) => <ChatLists {...args} />;
11
+
12
+ // companies de prueba
13
+ const companies = {
14
+ 200: {
15
+ name: "The Home Depot",
16
+ src: THD,
17
+ lastChatDate: "2022-11-4 21:01:00",
18
+ statusChat: "disabled",
19
+ },
20
+ 300: {
21
+ name: "Rotoplas",
22
+ src: Rotoplas,
23
+ lastChatDate: "2022-11-03 21:01:00",
24
+ statusChat: "enabled",
25
+ },
26
+ 100: {
27
+ name: "Content-oh!",
28
+ src: "",
29
+ lastChatDate: "2022-11-02 21:01:00",
30
+ statusChat: "current",
31
+ },
32
+ };
33
+ // companies de prueba sin chats cerrados
34
+ const companies2 = {
35
+ 300: {
36
+ name: "Rotoplas",
37
+ src: Rotoplas,
38
+ lastChatDate: "2022-10-27 21:01:00",
39
+ statusChat: "enabled",
40
+ },
41
+ 100: {
42
+ name: "Content-oh!",
43
+ src: "",
44
+ lastChatDate: "2022-9-27 21:01:00",
45
+ statusChat: "current",
46
+ },
47
+ };
48
+
49
+ export const exampleChatLists = Template.bind({});
50
+ exampleChatLists.args = {
51
+ companies,
52
+ currentCompanyId: 100,
53
+ onClickCompany: (companyId) => {
54
+ console.log("click en company:", companyId);
55
+ },
56
+ };
57
+
58
+ export const onlyOpenChatLists = Template.bind({});
59
+ onlyOpenChatLists.args = {
60
+ companies: companies2,
61
+ currentCompanyId: 100,
62
+ onClickCompany: (companyId) => {
63
+ console.log("click en company:", companyId);
64
+ },
65
+ };
@@ -0,0 +1,141 @@
1
+ import { Container, ContainerItemChat, ContainerTooltip } from "./styles";
2
+ import { useEffect, useState } from "react";
3
+ import { getCustomDate } from "../../../../global-files/utils";
4
+ import { faImage as IconImage } from "@fortawesome/free-solid-svg-icons";
5
+ import { CustomIcon } from "../../../atoms/CustomIcon";
6
+ import { Image } from "../../../atoms/Image";
7
+ import { Tooltip } from "../../../atoms/Tooltip";
8
+
9
+ export const ChatLists = (props) => {
10
+ const {
11
+ companies /* {
12
+ id: { name , src , statusChat , items } ,
13
+ ...
14
+ } */,
15
+ currentCompanyId, // number
16
+ onClickCompany, // (id) => {}
17
+ } = props;
18
+ const [openChats, setOpenChats] = useState([]);
19
+ const [closedChats, setClosedChats] = useState([]);
20
+
21
+ useEffect(() => {
22
+ renderChats();
23
+ }, [companies]);
24
+
25
+ const renderChats = () => {
26
+ let jsxOpenChats = [];
27
+ let jsxClosedChats = [];
28
+
29
+ for (const companyId of Object.keys(companies)) {
30
+ const company = companies[companyId];
31
+ // crear el item chat
32
+ const itemChat = (
33
+ <ContainerItemChat
34
+ key={"itemChat-" + companyId}
35
+ onClick={(event) => {
36
+ onClickCompany && onClickCompany(companyId);
37
+ }}
38
+ >
39
+ {/* logo de la compañia */}
40
+ <Image
41
+ className="img-logoCompany"
42
+ width={"34px"}
43
+ sizeLoading={24}
44
+ colorLoading={undefined}
45
+ src={company.src}
46
+ componentDefault={
47
+ <CustomIcon
48
+ className="icon-logoCompany"
49
+ type={"white"}
50
+ borderType={"circle"}
51
+ size={15}
52
+ icon={IconImage}
53
+ />
54
+ }
55
+ />
56
+
57
+ {/* name y date */}
58
+ <div className="container-info">
59
+ <label className="label-name"> {company.name} </label>
60
+ <label className="label-lastDate">
61
+ {getCustomDate(
62
+ new Date(
63
+ company.items.length ? company.items[0].date : undefined
64
+ )
65
+ )}
66
+ </label>
67
+ </div>
68
+
69
+ {/* label interno */}
70
+ <div className="container-indicators">
71
+ {currentCompanyId == companyId && (
72
+ <div className="label-ownCompany">Interno</div>
73
+ )}
74
+ </div>
75
+ </ContainerItemChat>
76
+ );
77
+
78
+ // checar si es chat abierto
79
+ if (company.statusChat == "closed") jsxClosedChats.push(itemChat);
80
+ else jsxOpenChats.push(itemChat);
81
+ }
82
+ setOpenChats(jsxOpenChats);
83
+ setClosedChats(jsxClosedChats);
84
+ };
85
+
86
+ return (
87
+ <>
88
+ <Container>
89
+ {openChats.length !== 0 && (
90
+ <section>
91
+ <div className="container-headerChats">
92
+ <Tooltip
93
+ className={"tooltip-title"}
94
+ position={"topCenter"}
95
+ addArrow={false}
96
+ transitionType={"zoom"}
97
+ followCursor={false}
98
+ componentTooltip={
99
+ <ContainerTooltip>
100
+ <label className="label-title"> Chats abiertos </label>
101
+ <label className="label-message">{`De acuerdo al estatus
102
+ actual del producto, puedes establecer una conversación
103
+ con estas compañias`}</label>
104
+ </ContainerTooltip>
105
+ }
106
+ >
107
+ <label> Chats abiertos </label>
108
+ </Tooltip>
109
+ </div>
110
+ <div className="container-bodyChats">{openChats}</div>
111
+ </section>
112
+ )}
113
+
114
+ {closedChats.length !== 0 && (
115
+ <section>
116
+ <div className="container-headerChats">
117
+ <Tooltip
118
+ className={"tooltip-title"}
119
+ position={"topCenter"}
120
+ addArrow={false}
121
+ transitionType={"zoom"}
122
+ followCursor={false}
123
+ componentTooltip={
124
+ <ContainerTooltip>
125
+ <label className="label-title"> Chats cerrados </label>
126
+ <label className="label-message">{`Las conversaciones
127
+ con estas compañias han finalizado debido al cambio de
128
+ estatus, sigue el flujo de trabajo con tus chats abiertos`}</label>
129
+ </ContainerTooltip>
130
+ }
131
+ >
132
+ <label> Chats cerrados </label>
133
+ </Tooltip>
134
+ </div>
135
+ <div className="container-bodyChats">{closedChats}</div>
136
+ </section>
137
+ )}
138
+ </Container>
139
+ </>
140
+ );
141
+ };
@@ -0,0 +1,162 @@
1
+ import styled from "styled-components";
2
+ import { GlobalColors, FontFamily } from "../../../../global-files/variables";
3
+
4
+ export const Container = styled.div`
5
+ width: 100%;
6
+ max-height: 100%;
7
+ flex-grow: 2;
8
+ display: flex;
9
+ flex-direction: column;
10
+ justify-content: flex-start;
11
+ gap: 30px;
12
+ background: white;
13
+ padding: 20px;
14
+ overflow: auto;
15
+ //border: 1px solid red;
16
+
17
+ section {
18
+ width: 100%;
19
+ display: flex;
20
+ flex-direction: column;
21
+ gap: 15px;
22
+
23
+ // container del nombre de la seccion con su icono info
24
+ .container-headerChats {
25
+ width: 100%;
26
+ display: flex;
27
+ flex-direction: row;
28
+ flex-wrap: nowrap;
29
+ align-items: center;
30
+ gap: 5px;
31
+
32
+ .tooltip-title {
33
+ max-width: 100%;
34
+
35
+ label {
36
+ font-family: ${FontFamily.RobotoMedium}, sans-serif;
37
+ font-size: 15px;
38
+ text-align: left;
39
+ color: #262626;
40
+ }
41
+ }
42
+ }
43
+
44
+ // container de la lista de los items chats de la seccion
45
+ .container-bodyChats {
46
+ width: 100%;
47
+ display: flex;
48
+ flex-direction: column;
49
+ gap: 10px;
50
+ }
51
+ }
52
+ `;
53
+
54
+ export const ContainerItemChat = styled.div`
55
+ width: 100%;
56
+ min-width: min-content;
57
+ display: flex;
58
+ flex-direction: row;
59
+ align-items: center;
60
+ justify-content: flex-start;
61
+ gap: 20px;
62
+ background: #f7f7fc;
63
+ padding: 15px;
64
+ border-radius: 10px;
65
+ cursor: pointer;
66
+ transition: background 0.25s;
67
+
68
+ * {
69
+ cursor: inherit;
70
+ }
71
+
72
+ // imagen del logo de la compañia
73
+ .img-logoCompany {
74
+ border-radius: 50%;
75
+ overflow: hidden;
76
+ height: 34px;
77
+ width: 34px;
78
+
79
+ .icon-logoCompany {
80
+ width: 100%;
81
+ height: 100%;
82
+ }
83
+ }
84
+
85
+ // container de las etiquetas "name" y "lastDate"
86
+ .container-info {
87
+ flex-grow: 2;
88
+ display: flex;
89
+ flex-direction: column;
90
+ align-items: flex-start;
91
+ gap: 4px;
92
+
93
+ .label-name {
94
+ font-family: ${FontFamily.RobotoMedium}, sans-serif;
95
+ font-size: 15px;
96
+ text-align: left;
97
+ color: #262626;
98
+ }
99
+ .label-lastDate {
100
+ font-family: ${FontFamily.RobotoRegular}, sans-serif;
101
+ font-size: 11px;
102
+ text-align: left;
103
+ color: #b3b3b3;
104
+ }
105
+ }
106
+
107
+ .container-indicators {
108
+ display: flex;
109
+ flex-direction: row;
110
+ align-items: center;
111
+ gap: 7px;
112
+
113
+ // label "Interno"
114
+ .label-ownCompany {
115
+ padding: 5px 10px;
116
+ border-radius: 3px;
117
+ font-family: ${FontFamily.RobotoRegular}, sans-serif;
118
+ font-size: 10px;
119
+ background-color: rgba(0, 0, 0, 0.05);
120
+ color: #707070;
121
+ }
122
+ }
123
+
124
+ // cuando el item chat tenga el cursor
125
+ &:hover {
126
+ background-color: #d7d7dd;
127
+
128
+ .container-info {
129
+ .label-lastDate {
130
+ color: #959292;
131
+ }
132
+ }
133
+
134
+ /*
135
+ .label-ownCompany {
136
+ background-color: ;
137
+ }*/
138
+ }
139
+ `;
140
+
141
+ // container con 2 labels "label-title" y "label-message"
142
+ export const ContainerTooltip = styled.div`
143
+ min-width: min-content;
144
+ display: flex;
145
+ flex-direction: column;
146
+ align-items: flex-start;
147
+ gap: 5px;
148
+ background: transparent;
149
+
150
+ .label-title {
151
+ font-family: ${FontFamily.RobotoMedium}, sans-serif;
152
+ font-size: 12px;
153
+ text-align: left;
154
+ color: #262626;
155
+ }
156
+ .label-message {
157
+ font-family: ${FontFamily.RobotoRegular}, sans-serif;
158
+ font-size: 11px;
159
+ text-align: left;
160
+ color: #262626;
161
+ }
162
+ `;