contentoh-components-library 21.4.57 → 21.4.59

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 (120) hide show
  1. package/dist/components/atoms/Avatar/index.js +2 -3
  2. package/dist/components/atoms/CheckBox/index.js +2 -7
  3. package/dist/components/atoms/CheckBox/styles.js +1 -1
  4. package/dist/components/atoms/InputFormatter/styles.js +1 -1
  5. package/dist/components/atoms/SliderToolTip/styles.js +1 -1
  6. package/dist/components/molecules/CarouselImagesLogin/index.js +1 -1
  7. package/dist/components/molecules/HeaderTop/index.js +11 -68
  8. package/dist/components/molecules/SignInLogin/index.js +28 -36
  9. package/dist/components/molecules/StripeCardSelector/CardSelector.stories.js +2 -1
  10. package/dist/components/molecules/TagAndInput/index.js +3 -64
  11. package/dist/components/organisms/Chat/Chat.stories.js +8 -27
  12. package/dist/components/organisms/Chat/ContainerItems/index.js +3 -19
  13. package/dist/components/organisms/Chat/ContainerItems/styles.js +1 -1
  14. package/dist/components/organisms/Chat/ContentChat/index.js +197 -350
  15. package/dist/components/organisms/Chat/Footer/index.js +39 -48
  16. package/dist/components/organisms/Chat/index.js +4 -49
  17. package/dist/components/organisms/Chat/styles.js +1 -1
  18. package/dist/components/organisms/FullProductNameHeader/index.js +2 -2
  19. package/dist/components/organisms/InputGroup/index.js +48 -154
  20. package/dist/components/organisms/Modal/styles.js +1 -1
  21. package/dist/components/pages/Dashboard/index.js +2 -8
  22. package/dist/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +137 -123
  23. package/dist/components/pages/ProviderProductEdition/index.js +258 -269
  24. package/dist/components/pages/ProviderProductEdition/styles.js +1 -1
  25. package/dist/components/pages/RetailerProductEdition/RetailerProductEdition.stories.js +3 -7
  26. package/dist/components/pages/RetailerProductEdition/index.js +276 -278
  27. package/dist/components/pages/RetailerProductEdition/styles.js +1 -1
  28. package/dist/components/pages/RetailerProductEdition/utils.js +2 -61
  29. package/dist/global-files/data.js +8 -21
  30. package/dist/global-files/variables.js +1 -5
  31. package/dist/index.js +58 -201
  32. package/package.json +1 -2
  33. package/src/components/atoms/Avatar/index.js +2 -8
  34. package/src/components/atoms/CheckBox/index.js +1 -4
  35. package/src/components/atoms/CheckBox/styles.js +0 -2
  36. package/src/components/atoms/InputFormatter/styles.js +1 -2
  37. package/src/components/atoms/SliderToolTip/styles.js +1 -1
  38. package/src/components/molecules/CarouselImagesLogin/index.js +1 -1
  39. package/src/components/molecules/HeaderTop/index.js +6 -52
  40. package/src/components/molecules/SignInLogin/index.js +11 -11
  41. package/src/components/molecules/StripeCardSelector/CardSelector.stories.js +2 -1
  42. package/src/components/molecules/TagAndInput/index.js +8 -52
  43. package/src/components/organisms/Chat/Chat.stories.js +7 -27
  44. package/src/components/organisms/Chat/ContainerItems/index.js +2 -18
  45. package/src/components/organisms/Chat/ContainerItems/styles.js +2 -14
  46. package/src/components/organisms/Chat/ContentChat/index.js +12 -88
  47. package/src/components/organisms/Chat/Footer/index.js +0 -11
  48. package/src/components/organisms/Chat/index.js +4 -46
  49. package/src/components/organisms/Chat/styles.js +0 -4
  50. package/src/components/organisms/FullProductNameHeader/index.js +1 -1
  51. package/src/components/organisms/InputGroup/index.js +88 -238
  52. package/src/components/organisms/Modal/styles.js +1 -4
  53. package/src/components/organisms/OrderDetail/utils/Table/utils.js +16 -6
  54. package/src/components/pages/Dashboard/index.js +1 -6
  55. package/src/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +145 -141
  56. package/src/components/pages/ProviderProductEdition/index.js +148 -145
  57. package/src/components/pages/ProviderProductEdition/styles.js +1 -5
  58. package/src/components/pages/RetailerProductEdition/RetailerProductEdition.stories.js +2 -6
  59. package/src/components/pages/RetailerProductEdition/index.js +144 -115
  60. package/src/components/pages/RetailerProductEdition/styles.js +0 -4
  61. package/src/components/pages/RetailerProductEdition/utils.js +0 -37
  62. package/src/global-files/data.js +6 -10
  63. package/src/global-files/variables.js +0 -4
  64. package/src/index.js +0 -11
  65. package/src/assets/images/Icons/info.svg +0 -8
  66. package/src/components/atoms/ImageCarousel/ImgeSlider.stories.js +0 -76
  67. package/src/components/atoms/ImageCarousel/index.js +0 -103
  68. package/src/components/atoms/ImageCarousel/styles.js +0 -79
  69. package/src/components/atoms/PercentTag/PercentTag.stories.js +0 -7
  70. package/src/components/atoms/PercentTag/index.js +0 -9
  71. package/src/components/atoms/PercentTag/styles.js +0 -69
  72. package/src/components/atoms/RatingStars/RatingStars.stories.js +0 -10
  73. package/src/components/atoms/RatingStars/index.js +0 -31
  74. package/src/components/atoms/RatingStars/styles.js +0 -28
  75. package/src/components/atoms/RetailerCatalog/RetailerCatalog.stories.js +0 -36
  76. package/src/components/atoms/RetailerCatalog/index.js +0 -49
  77. package/src/components/atoms/RetailerCatalog/styles.js +0 -30
  78. package/src/components/atoms/RetailerOption/RetailerOption.stories.js +0 -15
  79. package/src/components/atoms/RetailerOption/index.js +0 -53
  80. package/src/components/atoms/RetailerOption/styles.js +0 -41
  81. package/src/components/atoms/RetailersList/RetailersList.stories.js +0 -33
  82. package/src/components/atoms/RetailersList/index.js +0 -20
  83. package/src/components/atoms/RetailersList/styles.js +0 -19
  84. package/src/components/atoms/TabSection/styles.js +0 -23
  85. package/src/components/atoms/UserCatalog/UserCatalog.stories.js +0 -67
  86. package/src/components/atoms/UserCatalog/index.js +0 -100
  87. package/src/components/atoms/UserCatalog/styles.js +0 -24
  88. package/src/components/atoms/UserOption/UserOption.stories.js +0 -25
  89. package/src/components/atoms/UserOption/index.js +0 -95
  90. package/src/components/atoms/UserOption/styles.js +0 -61
  91. package/src/components/atoms/UserSelector/UserSelector.stories.js +0 -25
  92. package/src/components/atoms/UserSelector/index.js +0 -86
  93. package/src/components/atoms/UserSelector/styles.js +0 -55
  94. package/src/components/molecules/BoxAttribute/BoxAttribute.stories.js +0 -16
  95. package/src/components/molecules/BoxAttribute/index.js +0 -72
  96. package/src/components/molecules/BoxAttribute/styles.js +0 -41
  97. package/src/components/molecules/BoxButtons/BoxButtons.stories.js +0 -15
  98. package/src/components/molecules/BoxButtons/index.js +0 -32
  99. package/src/components/molecules/BoxButtons/styles.js +0 -43
  100. package/src/components/molecules/GridItem/GridItem.stories.js +0 -126
  101. package/src/components/molecules/GridItem/index.js +0 -105
  102. package/src/components/molecules/GridItem/styles.js +0 -104
  103. package/src/components/molecules/HeaderItem/ColumnItem.js +0 -9
  104. package/src/components/molecules/HeaderItem/HeaderItem.stories.js +0 -24
  105. package/src/components/molecules/HeaderItem/index.js +0 -26
  106. package/src/components/molecules/HeaderItem/styles.js +0 -27
  107. package/src/components/molecules/RowItem/ColumnItem.js +0 -9
  108. package/src/components/molecules/RowItem/RowItem.stories.js +0 -5660
  109. package/src/components/molecules/RowItem/index.js +0 -45
  110. package/src/components/molecules/RowItem/styles.js +0 -40
  111. package/src/components/organisms/Box/Box.stories.js +0 -17
  112. package/src/components/organisms/Box/index.js +0 -103
  113. package/src/components/organisms/Box/styles.js +0 -48
  114. package/src/components/organisms/BoxOnboarding/BoxOnboarding.stories.js +0 -17
  115. package/src/components/organisms/BoxOnboarding/index.js +0 -60
  116. package/src/components/organisms/BoxOnboarding/styles.js +0 -44
  117. package/src/components/organisms/GridProducts/GridProducts.stories.js +0 -5485
  118. package/src/components/organisms/GridProducts/index.js +0 -50
  119. package/src/components/organisms/GridProducts/styles.js +0 -14
  120. package/src/components/organisms/GridProducts/utils.js +0 -111
@@ -4,13 +4,10 @@ import { Button } from "../../atoms/GeneralButton/index";
4
4
  import { useEffect, useRef } from "react";
5
5
  import { Chat } from "../../organisms/Chat";
6
6
  import auditIcon from "../../../../src/assets/images/generalButton/Icono AB.svg";
7
- import { useState } from "react";
8
- import { render } from "@testing-library/react";
9
7
 
10
8
  export const HeaderTop = ({
11
9
  setHeaderTop,
12
10
  withChat,
13
- chatType,
14
11
  productSelected,
15
12
  token,
16
13
  auditableVersion,
@@ -19,51 +16,16 @@ export const HeaderTop = ({
19
16
  activeRetailer,
20
17
  }) => {
21
18
  const headerTop = useRef();
22
- const [chat, setChat] = useState(null);
23
- const [chatData, setChatData] = useState(null);
24
-
25
- useEffect(() => {
26
- if (activeRetailer.id && productSelected && token.length) {
27
- setChatData({
28
- id: productSelected?.article?.id_article || productSelected?.id_article,
29
- version: productSelected?.version,
30
- retailerId: activeRetailer?.id,
31
- status: productSelected?.status,
32
- userToken: token,
33
- });
34
- }
35
- }, [activeRetailer, productSelected, token]);
36
-
37
- useEffect(() => {
38
- if (chatType) renderChat(chatType);
39
- }, [chatData, chatType]);
40
19
 
41
20
  useEffect(() => {
42
21
  setHeaderTop && setHeaderTop(headerTop.current.clientHeight);
43
22
  }, []);
44
23
 
45
- const renderChat = (chatType) => {
46
- switch (chatType) {
47
- case "product_status":
48
- chatData &&
49
- setChat(
50
- <Chat
51
- chatType="product_status"
52
- chatContainerType="popUp"
53
- chatData={{
54
- id: chatData?.id,
55
- version: chatData?.version,
56
- retailerId: chatData?.retailerId,
57
- status: chatData?.status,
58
- userToken: chatData?.userToken,
59
- }}
60
- size={18}
61
- activeRetailer={activeRetailer}
62
- />
63
- );
64
- break;
65
- default:
66
- setChat(
24
+ return (
25
+ <Container ref={headerTop}>
26
+ <ScreenHeader text="Edición de producto" />
27
+ <div className="buttons-container">
28
+ {withChat && (
67
29
  <Chat
68
30
  chatType="merchant_product"
69
31
  chatContainerType="popUp"
@@ -75,16 +37,8 @@ export const HeaderTop = ({
75
37
  size={18}
76
38
  activeRetailer={activeRetailer}
77
39
  />
78
- );
79
- break;
80
- }
81
- };
40
+ )}
82
41
 
83
- return (
84
- <Container ref={headerTop}>
85
- <ScreenHeader text="Edición de producto" />
86
- <div className="buttons-container">
87
- {withChat && chat}
88
42
  {isAuditor && auditableVersion && (
89
43
  <Button
90
44
  buttonType="general-white-button circular-button"
@@ -54,25 +54,25 @@ export const SignInLogin = (props) => {
54
54
  } else {
55
55
  const userGroup =
56
56
  session.signInUserSession.accessToken.payload["cognito:groups"];
57
- if (userGroup.includes(props.users)) {
57
+ const response = await axios.get(
58
+ process.env.REACT_APP_USER_ENDPOINT,
59
+ {
60
+ headers: {
61
+ Authorization: session.signInUserSession.idToken.jwtToken,
62
+ },
63
+ }
64
+ );
65
+ if (userGroup[0] === props.users) {
58
66
  sessionStorage.setItem("auth", true);
59
67
  sessionStorage.setItem(
60
68
  "jwt",
61
69
  session.signInUserSession.idToken.jwtToken
62
70
  );
63
- const response = await axios.get(
64
- process.env.REACT_APP_USER_ENDPOINT,
65
- {
66
- headers: {
67
- Authorization: session.signInUserSession.idToken.jwtToken,
68
- },
69
- }
70
- );
71
71
  const user = JSON.parse(response.data.body).data[0];
72
72
  const company = JSON.parse(response.data.body).data[1];
73
73
  caches.keys().then((names) => {
74
74
  names.forEach((name) => {
75
- caches?.delete(name);
75
+ caches.delete(name);
76
76
  });
77
77
  });
78
78
  user.src = `https://${
@@ -89,7 +89,7 @@ export const SignInLogin = (props) => {
89
89
  }
90
90
  }
91
91
  } catch (error) {
92
- console.log(error);
92
+ console.log(error.code);
93
93
  setLoading(false);
94
94
  if (error.code === "NotAuthorizedException") {
95
95
  setSignInError("NotAuthorizedException");
@@ -8,5 +8,6 @@ export default {
8
8
  const Template = (args) => <CardSelector {...args} />;
9
9
  export const CardSelectorDefault = Template.bind({});
10
10
  CardSelectorDefault.args = {
11
- jwt: "eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiJmNTkyN2Y4ZS1jYmY3LTQ5MjItOWUwOS1lNjllYzBiMjczMWEiLCJjb2duaXRvOmdyb3VwcyI6WyJ1c3VhcmlvX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfWE1aUWRxa0dqIiwicGhvbmVfbnVtYmVyX3ZlcmlmaWVkIjpmYWxzZSwiY29nbml0bzp1c2VybmFtZSI6ImY1OTI3ZjhlLWNiZjctNDkyMi05ZTA5LWU2OWVjMGIyNzMxYSIsImNvZ25pdG86cm9sZXMiOlsiYXJuOmF3czppYW06Ojg5ODY3MDIzMjgwNzpyb2xlXC9jb250ZW50b2gtZGV2LXVzLWVhc3QtMS1sYW1iZGFSb2xlIl0sImF1ZCI6IjVhYzh0cGdzNmdic3ExM2ZydnJwaWVlcDQwIiwiZXZlbnRfaWQiOiI5ZjQzNjAwMC0wYzgyLTRjNzYtYWEzNi1kM2Q1NGJjZTZiMTMiLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY4NTU2OTUyMywibmFtZSI6IklzbWFlbCBMb3BleiIsInBob25lX251bWJlciI6Iis1MjMxMTEzNjYzMzYiLCJleHAiOjE2ODU1NzMxMjMsImlhdCI6MTY4NTU2OTUyMywiZW1haWwiOiJpbG9wZXpAY29udGVudG9oLmNvbSJ9.EotcxmtkUpBxwlXa3bo25iLAmRcT0kj1G3PVITVB_0ZtF8UC19rJIMTNSc1hYkl8cbfCuB_vkjYCAxi4b2SOru5MdMTRhgNjcQTVbiwIYww-QdUWq0WSv84nW_HaRoxCJ8ezm-wBZgUTpcD3VFuynUICbODKKHUfxVdKdVoAM6GGE6ymSbO7-0C7ZumoWEqaZ22BF4G1H-JvLkR-tL5iqXa2N-QCnNoteFmHstBfH6Sp5UZhPav1VBEGRmwdFfUnC-Xc-aNeIFwgWCXMsOXFWbbmWeh0uNF-Btu-QEJ7VkCu4pbElqHWJKBYLCx1zqDBrKrsrNxyvQlxsJ9NSOae8Q",
11
+ jwt: "eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiJmNTkyN2Y4ZS1jYmY3LTQ5MjItOWUwOS1lNjllYzBiMjczMWEiLCJjb2duaXRvOmdyb3VwcyI6WyJ1c3VhcmlvX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfWE1aUWRxa0dqIiwicGhvbmVfbnVtYmVyX3ZlcmlmaWVkIjpmYWxzZSwiY29nbml0bzp1c2VybmFtZSI6ImY1OTI3ZjhlLWNiZjctNDkyMi05ZTA5LWU2OWVjMGIyNzMxYSIsImNvZ25pdG86cm9sZXMiOlsiYXJuOmF3czppYW06Ojg5ODY3MDIzMjgwNzpyb2xlXC9jb250ZW50b2gtZGV2LXVzLWVhc3QtMS1sYW1iZGFSb2xlIl0sImF1ZCI6IjVhYzh0cGdzNmdic3ExM2ZydnJwaWVlcDQwIiwiZXZlbnRfaWQiOiIxMTAyNWQzMi1kMTM5LTQ0MzctYmZlYy1hNWY1Njg0NDdjODciLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY5NDQ3ODQ2NSwibmFtZSI6IklzbWFlbCBMb3BleiIsInBob25lX251bWJlciI6Iis1MjMxMTEzNjYzMzYiLCJleHAiOjE2OTQ0ODIwNjUsImlhdCI6MTY5NDQ3ODQ2NSwiZW1haWwiOiJpbG9wZXpAY29udGVudG9oLmNvbSJ9.Fia8x4aahTvCOdt2GohSNoe_9XgBcVuF4bXGWvuNTJ7-_YTe9t1vxGlhw7AG0WC2-tqFiAdx8_UojxqX-UW4lE6vI3pGLmkF7hEfV4XCWq6I3pF5aXYDkRD4YBPyQfzBgwQsx4bR_rm5oRfHPItfc_zJwObV9rQgTYLEQ9u-SL2t0bdx2yOmAjCAtGHp83w5highRkcZx0huKGJnRQ4Wmt5HlgAvsnkzqAimC9E6NH-IDLMAXq8T2f9INPzcdMR403Ybpy3Zrqphw5ITHK1tkUUZxcVsaAnRM7g1-q0OA5S0vRFbcw2lRgaZ_DVJbk0Lzba5NK4nDZ4U97Nw_zXqLA",
12
+ isSelected: true,
12
13
  };
@@ -1,7 +1,6 @@
1
1
  import { Container } from "./styles";
2
2
  import { ScreenHeader } from "../../atoms/ScreenHeader/index";
3
3
  import { GeneralInput } from "../../atoms/GeneralInput/index";
4
- import { useState, useEffect } from "react";
5
4
 
6
5
  export const TagAndInput = ({
7
6
  inputType,
@@ -30,54 +29,21 @@ export const TagAndInput = ({
30
29
  onKeyDown,
31
30
  showTooltip,
32
31
  auditClass,
33
- onChange,
34
- dataInputs,
35
- inputGroup,
36
- boxOnboardingData,
37
32
  }) => {
38
- const [boxOnboardingList, setBoxOnboardingList] = useState(boxOnboardingData || []);
39
-
40
- useEffect(() => {
41
- const temp = {};
42
- let maxBoxId = 0;
43
- inputGroup?.inputs.forEach((attrId) => {
44
- if (!dataInputs[attrId].box) return;
45
- Object.entries(dataInputs[attrId].box).forEach(([boxId, value]) => {
46
- if (boxId > maxBoxId) maxBoxId = boxId;
47
- if (!temp[boxId]) temp[boxId] = {};
48
- temp[boxId][attrId] = value;
49
- });
50
- });
51
- const tempList = Object.values(temp);
52
- if (tempList.length > 0) {
53
- setBoxOnboardingList(
54
- tempList.map((value, index) =>
55
- index === tempList.length - 1 ? {value } : { value }
56
- )
57
- );
58
- }
59
- }, []);
60
-
61
- useEffect(() => {
62
- onChange && onChange(boxOnboardingList);
63
- }, [boxOnboardingList]);
64
-
65
33
  return (
66
34
  <Container
67
35
  inputType={inputType}
68
36
  className={"input-container"}
69
37
  key={`generalTagInput-${inputType}`}
70
38
  >
71
- {label?.length && (
72
- <div className="title-container">
73
- <ScreenHeader
74
- text={label}
75
- headerType={"input-name-header"}
76
- color={color}
77
- />
78
- {showTooltip && <span className="tooltip">{label}</span>}
79
- </div>
80
- )}
39
+ <div className="title-container">
40
+ <ScreenHeader
41
+ text={label}
42
+ headerType={"input-name-header"}
43
+ color={color}
44
+ />
45
+ {showTooltip && <span className="tooltip">{label}</span>}
46
+ </div>
81
47
  <GeneralInput
82
48
  inputId={inputId}
83
49
  inputType={inputType}
@@ -102,16 +68,6 @@ export const TagAndInput = ({
102
68
  inputOnChange={inputOnChange}
103
69
  onKeyDown={onKeyDown}
104
70
  auditClass={auditClass}
105
- onChange={(e) => {
106
- setBoxOnboardingList((prev) => {
107
- return prev.map((box, i) => {
108
- if (i != index) {
109
- return box;
110
- }
111
- return { ...box, value: e };
112
- });
113
- });
114
- }}
115
71
  />
116
72
  </Container>
117
73
  );
@@ -148,37 +148,17 @@ chatTicket_userTECH.args = {
148
148
  chatType: "ticket",
149
149
  chatContainerType: "fixed",
150
150
  chatData: {
151
- id: 171,
152
- ticketOwnerUserId: 52,
153
- statusTicket: "IN_PROGRESS",
151
+ id: 130,
152
+ ticketOwnerUserId: 194,
153
+ ticketCompany: undefined,
154
+ statusTicket: "PENDING",
154
155
  currentUser: {
155
156
  token:
156
- "eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiI3M2NjOGQ0MC1jODQxLTQyMmEtYTJmMi1lNjlkN2ZlMjZlYmYiLCJjb2duaXRvOmdyb3VwcyI6WyJjb2xhYm9yYWRvcmVzX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfWE1aUWRxa0dqIiwiY29nbml0bzp1c2VybmFtZSI6IjczY2M4ZDQwLWM4NDEtNDIyYS1hMmYyLWU2OWQ3ZmUyNmViZiIsImNvZ25pdG86cm9sZXMiOlsiYXJuOmF3czppYW06Ojg5ODY3MDIzMjgwNzpyb2xlXC9jb250ZW50b2gtZGV2LXVzLWVhc3QtMS1sYW1iZGFSb2xlIl0sImF1ZCI6IjVhYzh0cGdzNmdic3ExM2ZydnJwaWVlcDQwIiwiZXZlbnRfaWQiOiIwYWNiYTdlYy01OGJhLTQyNGYtOTM5OC02ZGMxOGI1YTRkODYiLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY4ODk0MzcxNywibmFtZSI6IkNvbGFib3JhZG9yIiwicGhvbmVfbnVtYmVyIjoiKzUyMTExMSIsImV4cCI6MTY4ODk0NzMxNywiaWF0IjoxNjg4OTQzNzE3LCJlbWFpbCI6Im9hcmVuYXNAY29udGVudG9oLmNvbSJ9.SHeA5EMqLdqlTuDBTpJ3l_lAAqjMlOT2Dm9U9yf-Y3-4FR-3cwQ_16sdsmGCjJpwkhdYBEyuQbFkY1xnQHOBLMow0izWD4CDlhlNXkWBE_3DjgCspyPMlz31Lfik2ddnkHp3HQeLwucC4uyum3N-roQA7HkuWQHSBIplp6b-Xd44OmN9X-V_kseN3QOX6o7kxNFjwZL_DUzTJUdMDOtIXXIKYO2FLkR1eWJDNdvee5FEIWAxJXfaSZ__Awawfi5k93ILXrPX7QVt78lOH3THMyiPTtfiOOwMhoSQz_k5DIuofE8FM_1-nLNajM18pI49wPQ_-k3ltCjChjqy-OlERQ",
157
- id: 65,
158
- companyId: 2,
157
+ "eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiJmNTkyN2Y4ZS1jYmY3LTQ5MjItOWUwOS1lNjllYzBiMjczMWEiLCJjb2duaXRvOmdyb3VwcyI6WyJ1c3VhcmlvX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfWE1aUWRxa0dqIiwicGhvbmVfbnVtYmVyX3ZlcmlmaWVkIjpmYWxzZSwiY29nbml0bzp1c2VybmFtZSI6ImY1OTI3ZjhlLWNiZjctNDkyMi05ZTA5LWU2OWVjMGIyNzMxYSIsImNvZ25pdG86cm9sZXMiOlsiYXJuOmF3czppYW06Ojg5ODY3MDIzMjgwNzpyb2xlXC9jb250ZW50b2gtZGV2LXVzLWVhc3QtMS1sYW1iZGFSb2xlIl0sImF1ZCI6IjVhYzh0cGdzNmdic3ExM2ZydnJwaWVlcDQwIiwiZXZlbnRfaWQiOiJlYTRlZmQ1Zi1mYTg4LTRjNDEtYTM3Ny02MWVkNmY0YTMyOTciLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY4MDA1Njg2NSwibmFtZSI6IklzbWFlbCBMb3BleiIsInBob25lX251bWJlciI6Iis1MjMxMTEzNjYzMzYiLCJleHAiOjE2ODAwNjA0NjUsImlhdCI6MTY4MDA1Njg2NSwiZW1haWwiOiJpbG9wZXpAY29udGVudG9oLmNvbSJ9.oRuv3LkdvctEMUjmeGw0-XefzV_Aoh1O2hFMik4RxpkkCUeP1O7AjA7lJI6sgoqa9Nwa2fCPRXk6ufi84UbgxGEgkupQmAvXTHQCw_uwCUVAZitlNGXSBl-VSisMuXSnckxdZQ1MvLV5BgLmiw4mu6HxKDN-Uw0xc7yL_yDtGu3NWxoO0Cm2zbej8jYLE9DV9wG297bjfzVQ7hzpEfEcB52I5Tg6nF2VDTx-8_m4mVVrpisbV5uBoYokbFyyOFVLZzUU7Je5uHukscHS5dje9IMTY8DE5S8xUWJubHjf_ktcy7Y2-F2cG5dI5oSdrBNU-wNNW5-OtRLgclSJLmbPCw",
158
+ id: 28,
159
+ companyId: 1,
159
160
  isUserTech: true,
160
161
  },
161
162
  },
162
163
  classNameContainerFixed: "chatTicket",
163
164
  };
164
-
165
- // ejemplo del chat para los cambios de status del producto.
166
- export const chatProduct_status = Template.bind({});
167
- chatProduct_status.args = {
168
- chatType: "product_status",
169
- chatContainerType: "popUp",
170
- chatData: {
171
- id: 37414,
172
- version: 7,
173
- retailerId: 70,
174
- status: "AA",
175
- orderId: 15189,
176
- userToken:
177
- "eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiI5YTIxMzEyOC02NDgyLTRjMTYtYTRiNi02ZTY0ZjIyNWIxYmQiLCJjb2duaXRvOmdyb3VwcyI6WyJjb2xhYm9yYWRvcmVzX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfWE1aUWRxa0dqIiwiY29nbml0bzp1c2VybmFtZSI6IjlhMjEzMTI4LTY0ODItNGMxNi1hNGI2LTZlNjRmMjI1YjFiZCIsImNvZ25pdG86cm9sZXMiOlsiYXJuOmF3czppYW06Ojg5ODY3MDIzMjgwNzpyb2xlXC9jb250ZW50b2gtZGV2LXVzLWVhc3QtMS1sYW1iZGFSb2xlIl0sImF1ZCI6IjVhYzh0cGdzNmdic3ExM2ZydnJwaWVlcDQwIiwiZXZlbnRfaWQiOiJhOWFhMDQ4Zi05YzRjLTQxODMtYWUzMS03OWVjNjBhY2NjZGYiLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY4MzU4ODM4OSwibmFtZSI6IkNvbGFib3JhZG9yIiwicGhvbmVfbnVtYmVyIjoiKzUyMTExMSIsImV4cCI6MTY4MzU5MTk4OSwiaWF0IjoxNjgzNTg4Mzg5LCJlbWFpbCI6ImlzbWFlbDk3bG9wZXpAZ21haWwuY29tIn0.k9FQfRR02XC3WWfOzWhrbJGmp69AmCHJEIrgtXKhIwC69trdphSm1AKkZnDJMsEdkpUgjF_zAOsa_xYRxO6goXy7WXVc_p7N-yFHlkhZrRyn3LEFKaLzD8vVqlWx4kgfSERm7KhI1AxPmrA-lw8eF6Axvqn3PvuszAw89_WhPOcnOt8vU0MxAVhLgS8oM6vyHFmHEHWQ2FnSYYed9sEvAxGh_B44aIgWeDteQGeGdYhsm6rUcxgkrskywZJp9FW5VgYXuDcC5NpvomMMRy_v95UV897JzCHl__sK2Z9ahm0eczVN3tAc0GbKnlN96ZrGTQ_nmNHbuMDPQBPXH5HXZQ",
178
- currentUser: {
179
- id: 37,
180
- companyId: 2,
181
- isUserTech: false,
182
- },
183
- },
184
- };
@@ -22,7 +22,6 @@ import { Tooltip } from "../../../atoms/Tooltip";
22
22
  import { Slide, Zoom } from "@mui/material";
23
23
  import { useRef } from "react";
24
24
  import { ImagePreview } from "../../../atoms/ImagePreview";
25
- import { Status } from "../../../atoms/Status";
26
25
  import { isUserTech } from "../../../../global-files/handle_userTech";
27
26
  import { container } from "aws-amplify";
28
27
 
@@ -56,10 +55,7 @@ export const ContainerItems = (props) => {
56
55
 
57
56
  useEffect(() => {
58
57
  if (!items) return;
59
- if (
60
- ["merchant_product", "order_product", "product_status"].includes(chatType)
61
- )
62
- renderItems();
58
+ if (["merchant_product", "order_product"].includes(chatType)) renderItems();
63
59
  else if (chatType === "ticket") renderItemsTicket();
64
60
  else setCustomItems([]);
65
61
  }, [items]);
@@ -134,16 +130,6 @@ export const ContainerItems = (props) => {
134
130
  return <label className="item-statusTicket">{item.value}</label>;
135
131
  };
136
132
 
137
- const renderStatusItem = (item) => {
138
- const splitText = item.value.split("|");
139
- let message = [];
140
- splitText.forEach((text, i) => {
141
- if (i === 1 || i === 3) message.push(<Status statusType={text} />);
142
- else message.push(text);
143
- });
144
- return <label className="item-statusItem">{message}</label>;
145
- };
146
-
147
133
  const renderStatusTicketNeutral = (item) => {
148
134
  return (
149
135
  <Tooltip
@@ -318,7 +304,7 @@ export const ContainerItems = (props) => {
318
304
  >
319
305
  <li
320
306
  className={
321
- (ownMessage && item.type !== "status" ? "own-message " : "") +
307
+ (ownMessage ? "own-message " : "") +
322
308
  (lastUserId === item.userId ? "sameUser" : "")
323
309
  }
324
310
  >
@@ -353,8 +339,6 @@ export const ContainerItems = (props) => {
353
339
  ? renderComment(item)
354
340
  : item.type === "img"
355
341
  ? renderImg(item)
356
- : item.type === "status"
357
- ? renderStatusItem(item)
358
342
  : item.type === "file"
359
343
  ? renderFile(item, ownMessage)
360
344
  : item.type === "statusTicket" &&
@@ -36,10 +36,6 @@ export const Container = styled.div`
36
36
  }
37
37
  }
38
38
 
39
- @media (max-width: 768px) {
40
- width: 90%;
41
- }
42
-
43
39
  // lista de items
44
40
  > ul {
45
41
  --marginUserValue: 10px;
@@ -162,8 +158,7 @@ export const Container = styled.div`
162
158
  .item-message,
163
159
  .item-comment,
164
160
  .item-file,
165
- .item-statusTicket,
166
- .item-statusItem {
161
+ .item-statusTicket {
167
162
  border-radius: 10px;
168
163
  padding: 10px;
169
164
  font-family: ${FontFamily.RobotoRegular}, sans-serif;
@@ -178,17 +173,10 @@ export const Container = styled.div`
178
173
  .item-file {
179
174
  background-color: #8386ee;
180
175
  }
181
- .item-statusTicket,
182
- .item-statusItem {
176
+ .item-statusTicket {
183
177
  background-color: #85bc5b;
184
178
  }
185
179
 
186
- .item-statusItem {
187
- display: flex;
188
- gap: 3px;
189
- align-items: center;
190
- }
191
-
192
180
  .item-message {
193
181
  &.different-company {
194
182
  border: 1px solid #e33aa9;
@@ -86,8 +86,7 @@ export const ContentChat = (props) => {
86
86
 
87
87
  // al cargar el componente
88
88
  useEffect(() => {
89
- //if (dataChat && showPopUpChat) {
90
- if (Object.keys(dataChat || {}).length) {
89
+ if (dataChat && showPopUpChat) {
91
90
  stopUpdate();
92
91
  if (dataChat.code) {
93
92
  setErrorChat({
@@ -101,7 +100,6 @@ export const ContentChat = (props) => {
101
100
  }
102
101
  if (chatType === "merchant_product") getInitialMerchantProduct();
103
102
  else if (chatType === "order_product") getInitialOrderProduct();
104
- else if (chatType === "product_status") getInitialProductStatus();
105
103
  else getInitialTicket();
106
104
  }
107
105
  if (!showPopUpChat) {
@@ -128,8 +126,6 @@ export const ContentChat = (props) => {
128
126
  } else if (chatType === "order_product") {
129
127
  if (companies) getUpdateLatestOrderProduct(true);
130
128
  else getInitialOrderProduct();
131
- } else if (chatType === "product_status") {
132
- getInitialProductStatus();
133
129
  } else {
134
130
  if (singleChat.items) getUpdateLatestTicket(true);
135
131
  else getInitialTicket();
@@ -139,47 +135,6 @@ export const ContentChat = (props) => {
139
135
  /*=======================================================================
140
136
  PETICION GET INICIAL SEGUN EL TIPO DE CHAT
141
137
  ======================================================================= */
142
- const getInitialProductStatus = async () => {
143
- const paramsQuery = {
144
- articleData: JSON.stringify({
145
- articleId: JSON.stringify(dataChat.id),
146
- version: JSON.stringify(dataChat.version),
147
- retailerId: JSON.stringify(dataChat.retailerId),
148
- status: dataChat.status,
149
- })
150
- };
151
- const paramsHeaders = { Authorization: dataChat.userToken };
152
- const response = await fetchGET(
153
- process.env.REACT_APP_READ_MESSAGES,
154
- paramsQuery,
155
- paramsHeaders
156
- );
157
- if (!response.body) {
158
- setErrorChat({
159
- existError: true,
160
- code: 400,
161
- message: response.message,
162
- errorDetail: response.errorDetail,
163
- });
164
- setIsLoading(false);
165
- return;
166
- }
167
- // success
168
- setStartUpdate((prev) => prev + 1);
169
- setCurrentUser({
170
- id: response.body.data.currentUserId,
171
- companyId: response.body.data.currentCompanyId,
172
- });
173
- setLastUpdateDate(response.body.data.lastUpdateDate);
174
- setAllUsers(response.body.users);
175
- setSingleChat({
176
- items: response.body.items,
177
- enabledLoadMore: response.body.items.length === 50,
178
- });
179
- setErrorChat({ existError: false });
180
- setIsLoading(false);
181
- };
182
-
183
138
  const getInitialMerchantProduct = async () => {
184
139
  const paramsQuery = {
185
140
  getType: "initial",
@@ -613,14 +568,14 @@ export const ContentChat = (props) => {
613
568
  };
614
569
 
615
570
  /*=======================================================================
616
- FUNCION QUE EJECUTA EL MICROSERVICIO CREATE-ITEM
571
+ FUNCION QUE EJECUTA EL MICROSERVICIO CREATE-ITEM
617
572
  Este metodo recibe los items que queremos agregar al chat.
618
573
  requiere:
619
- => items: [ { type , value } , ... ]
574
+ => items: [ { type , value } , ... ]
620
575
  NOTA: si se quiere agregar un mensaje mandar un array con un object
621
- example: [ {
622
- type: "message" ,
623
- value: "mi mensaje"
576
+ example: [ {
577
+ type: "message" ,
578
+ value: "mi mensaje"
624
579
  } ]
625
580
  ======================================================================= */
626
581
  const createItemsChat = async (items = []) => {
@@ -656,14 +611,12 @@ export const ContentChat = (props) => {
656
611
  // enviar items a la BD
657
612
  if (chatType === "merchant_product") {
658
613
  errorCreate = await createItemsMerchantProduct(items);
659
- } else if (chatType === "product_status") {
660
- errorCreate = await createItemsProductStatus(items);
661
614
  } else if (chatType === "order_product") {
662
615
  errorCreate = await createItemsOrderProduct(items);
663
616
  } else errorCreate = await createItemsTicket(items);
664
617
 
665
618
  // actualizar chat para que aparezcan los items enviados
666
- if (["merchant_product", "product_status"].includes(chatType)) {
619
+ if (chatType === "merchant_product") {
667
620
  await getUpdateLatestMerchantProduct();
668
621
  } else if (chatType === "order_product") {
669
622
  await getUpdateLatestOrderProduct();
@@ -676,10 +629,9 @@ export const ContentChat = (props) => {
676
629
  };
677
630
 
678
631
  const createItemsMerchantProduct = async (items = []) => {
679
- const { id, version, orderId } = dataChat;
632
+ const { id, version } = dataChat;
680
633
  const { id: retailerId } = activeRetailer;
681
634
  const paramsBody = { id, version, items, retailerId };
682
- if (chatType === "product_status") paramsBody["orderId"] = orderId;
683
635
  const paramsHeaders = { Authorization: dataChat.userToken };
684
636
  const response = await fetchPOST(
685
637
  process.env.REACT_APP_PRODUCTS_CHAT_ENDPOINT,
@@ -693,23 +645,6 @@ export const ContentChat = (props) => {
693
645
  };
694
646
  }
695
647
  };
696
- const createItemsProductStatus = async (items = []) => {
697
- const { id, version, orderId, status } = dataChat;
698
- const { id: retailerId } = activeRetailer;
699
- const paramsBody = { id, version, items, retailerId, orderId, status };
700
- const paramsHeaders = { Authorization: dataChat.userToken };
701
- const response = await fetchPOST(
702
- process.env.REACT_APP_CREATE_MESSAGES,
703
- paramsBody,
704
- paramsHeaders
705
- );
706
- if (!response.body) {
707
- return {
708
- message: response.message,
709
- errorDetail: response.errorDetail,
710
- };
711
- }
712
- };
713
648
 
714
649
  const createItemsOrderProduct = async (items = []) => {
715
650
  const paramsBody = {
@@ -757,11 +692,7 @@ export const ContentChat = (props) => {
757
692
  SECCION DE FUNCIONES
758
693
  ======================================================================= */
759
694
  const isSingleChat = () => {
760
- if (
761
- chatType === "merchant_product" ||
762
- chatType === "ticket" ||
763
- chatType === "product_status"
764
- ) {
695
+ if (chatType === "merchant_product" || chatType === "ticket") {
765
696
  return true;
766
697
  }
767
698
  if (companies && Object.keys(companies).length < 2) return true;
@@ -876,7 +807,7 @@ export const ContentChat = (props) => {
876
807
  // mostrar chat?
877
808
  let items;
878
809
  let enabledLoadMore;
879
- if (["merchant_product", "ticket", "product_status"].includes(chatType)) {
810
+ if (["merchant_product", "ticket"].includes(chatType)) {
880
811
  items = singleChat.items;
881
812
  enabledLoadMore = singleChat.enabledLoadMore;
882
813
  }
@@ -918,9 +849,7 @@ export const ContentChat = (props) => {
918
849
  activeCompanyId={activeCompanyId}
919
850
  ticketCompany={ticketCompany}
920
851
  currentUser={
921
- ["merchant_product", "order_product", "product_status"].includes(
922
- chatType
923
- )
852
+ ["merchant_product", "order_product"].includes(chatType)
924
853
  ? currentUser
925
854
  : dataChat.currentUser
926
855
  }
@@ -959,12 +888,6 @@ export const ContentChat = (props) => {
959
888
  ? { id: dataChat.id, version: currentArticle.version }
960
889
  : chatType === "ticket"
961
890
  ? { id: dataChat.id }
962
- : chatType === "product_status"
963
- ? {
964
- id: dataChat.id,
965
- version: dataChat.version,
966
- retailerId: dataChat.retailerId,
967
- }
968
891
  : undefined
969
892
  }
970
893
  chatCompany={getChatCompany()}
@@ -1007,6 +930,7 @@ export const ContentChat = (props) => {
1007
930
  }}
1008
931
  />
1009
932
  )}
933
+
1010
934
  {/* body */}
1011
935
  {renderBodyChat()}
1012
936
  </Container>
@@ -169,17 +169,6 @@ export const Footer = (props) => {
169
169
  errorMessage = "El ID del ticket no es valido";
170
170
  }
171
171
  break;
172
- case "product_status":
173
- if (
174
- isValidNaturalNumber(dataChat?.id) &&
175
- isValidNaturalNumber(dataChat?.version) &&
176
- isValidNaturalNumber(dataChat?.retailerId)
177
- ) {
178
- fileKey += `productStatus/${dataChat.id}-${dataChat?.version}-${dataChat?.retailerId}/`;
179
- } else {
180
- errorMessage = "El ID del ticket no es valido";
181
- }
182
- break;
183
172
 
184
173
  default:
185
174
  errorMessage =
@@ -17,14 +17,14 @@ export const Chat = (props) => {
17
17
  const {
18
18
  chatType, // "merchant_product" | "order_product" | "ticket"
19
19
  chatContainerType, // ("fixed") | ("popUp")
20
- chatData = {}, // {} => aqui poner los datos requeridos segun el tipo de chat
20
+ chatData, // {} => aqui poner los datos requeridos segun el tipo de chat
21
21
  classNameContainerFixed, // clases CSS del envoltoria chat fixed
22
22
  size = 14, // tamaño del icono
23
23
  } = props;
24
24
  const [showPopUpChat, setShowPopUpChat] = useState(false);
25
25
  const [data, setData] = useState();
26
26
 
27
- const { ticketCompany, retailerId } = chatData || {};
27
+ const { ticketCompany } = chatData || {};
28
28
 
29
29
  useEffect(() => {
30
30
  switch (chatType) {
@@ -37,9 +37,6 @@ export const Chat = (props) => {
37
37
  case "ticket":
38
38
  validateChatTicket();
39
39
  break;
40
- case "product_status":
41
- validateProductStatus();
42
- break;
43
40
  default:
44
41
  setData({
45
42
  code: 404,
@@ -49,45 +46,6 @@ export const Chat = (props) => {
49
46
  }
50
47
  }, [chatType]);
51
48
 
52
- const validateProductStatus = () => {
53
- const {
54
- userToken, // string
55
- id, // number
56
- version,
57
- retailerId, // number
58
- status,
59
- orderId,
60
- } = chatData;
61
-
62
- if (!isValidGeneral(userToken, id)) return;
63
-
64
- // validar el ID de la cadena asociada al producto en la OT
65
- if (!isValidNaturalNumber(retailerId)) {
66
- setDataError("La cadena relacionada al producto no es válida");
67
- return;
68
- }
69
-
70
- // validar el ID de la version asociada al producto en la OT
71
- if (!isValidNaturalNumber(version)) {
72
- setDataError("La versión del producto no es válida");
73
- return;
74
- }
75
-
76
- if (orderId && !isValidNaturalNumber(orderId)) {
77
- setDataError("La orden del producto no es válida");
78
- return;
79
- }
80
-
81
- setData({
82
- userToken,
83
- id,
84
- version,
85
- retailerId,
86
- orderId,
87
- status,
88
- });
89
- };
90
-
91
49
  const isValidGeneral = (userToken, id) => {
92
50
  // validar token del user
93
51
  if (isStringEmpty(userToken)) {
@@ -239,7 +197,7 @@ export const Chat = (props) => {
239
197
  dataChat={data}
240
198
  showBtnClose={false}
241
199
  ticketCompany={ticketCompany}
242
- activeRetailer={props.activeRetailer || { id: retailerId }}
200
+ activeRetailer={props.activeRetailer}
243
201
  />
244
202
  </ContainerFixed>
245
203
  );
@@ -272,7 +230,7 @@ export const Chat = (props) => {
272
230
  onClickBtnClose={() => {
273
231
  setShowPopUpChat(false);
274
232
  }}
275
- activeRetailer={props.activeRetailer || { id: retailerId }}
233
+ activeRetailer={props.activeRetailer}
276
234
  />
277
235
  </ContainerPopUp>
278
236
  </Slide>