contentoh-components-library 21.3.55 → 21.3.57

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/components/atoms/ButtonV2/styles.js +1 -1
  2. package/dist/components/atoms/Status/styles.js +1 -1
  3. package/dist/components/atoms/VerticalSideMenuMainPage/index.js +18 -23
  4. package/dist/components/atoms/VerticalSideMenuMainPage/styles.js +4 -4
  5. package/dist/components/organisms/DashboardMetric/dashboardMetricUtils.js +27 -0
  6. package/dist/components/organisms/GlobalModal/styles.js +1 -1
  7. package/dist/components/organisms/OrderDetail/styles.js +1 -1
  8. package/dist/components/organisms/OrderDetail/utils/Table/styles.js +1 -1
  9. package/dist/components/pages/Dashboard/Dashboard.stories.js +35 -54
  10. package/dist/components/pages/Dashboard/index.js +8 -4
  11. package/dist/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +98 -26
  12. package/dist/components/pages/ProviderProductEdition/index.js +623 -386
  13. package/dist/components/pages/RetailerProductEdition/RetailerProductEdition.stories.js +103 -153
  14. package/dist/components/pages/RetailerProductEdition/index.js +33 -35
  15. package/dist/index.js +13 -0
  16. package/package.json +7 -6
  17. package/src/components/atoms/ButtonV2/styles.js +1 -1
  18. package/src/components/atoms/Status/styles.js +4 -0
  19. package/src/components/atoms/VerticalSideMenuMainPage/index.js +18 -22
  20. package/src/components/atoms/VerticalSideMenuMainPage/styles.js +3 -4
  21. package/src/components/organisms/DashboardMetric/dashboardMetricUtils.js +18 -1
  22. package/src/components/organisms/GlobalModal/styles.js +10 -0
  23. package/src/components/organisms/OrderDetail/styles.js +1 -1
  24. package/src/components/organisms/OrderDetail/utils/Table/styles.js +0 -1
  25. package/src/components/organisms/TableResizable/TableResizable.stories.js +17 -0
  26. package/src/components/organisms/TableResizable/index.js +119 -0
  27. package/src/components/organisms/TableResizable/styles.js +133 -0
  28. package/src/components/organisms/TableResizable/utils.js +46 -0
  29. package/src/components/pages/Dashboard/Dashboard.stories.js +35 -59
  30. package/src/components/pages/Dashboard/index.js +4 -3
  31. package/src/components/pages/ProviderProductEdition/ProviderProductEdition.stories.js +110 -31
  32. package/src/components/pages/ProviderProductEdition/index.js +244 -131
  33. package/src/components/pages/RetailerProductEdition/RetailerProductEdition.stories.js +93 -145
  34. package/src/components/pages/RetailerProductEdition/index.js +24 -22
  35. package/src/index.js +1 -0
@@ -27,6 +27,16 @@ export const MessageContainer = styled.div`
27
27
  min-height: ${(props) => (props.height ? "300px" : "190px")};
28
28
  background: #281f33;
29
29
  border-radius: 39px;
30
+ & > .generic-text {
31
+ width: 100%;
32
+ font-family: Raleway;
33
+ font-style: normal;
34
+ font-weight: normal;
35
+ font-size: 16px;
36
+ text-align: center;
37
+ color: #f7f7f7;
38
+ margin: 20px 0px;
39
+ }
30
40
  `;
31
41
  export const TextArea = styled.textarea`
32
42
  display: block;
@@ -14,7 +14,7 @@ export const MainContainer = styled.div`
14
14
  & > * {
15
15
  padding: 0 30px;
16
16
  }
17
- box-shadow: -4px 0px 8px 0px rgba(0,0,0,0.1);
17
+ box-shadow: -4px 0px 8px 0px rgba(0, 0, 0, 0.1);
18
18
  .headerTitle {
19
19
  font-weight: bold;
20
20
  font-size: 25px;
@@ -36,7 +36,6 @@ export const Column = styled.div`
36
36
  &:nth-child(-n + 2) {
37
37
  overflow: hidden;
38
38
  }
39
-
40
39
  .tooltip {
41
40
  position: relative;
42
41
  display: inline-block;
@@ -0,0 +1,17 @@
1
+ import { TableResizable } from ".";
2
+ import { data } from "./utils.js";
3
+
4
+ export default {
5
+ title: "Components/organisms/TableResizable",
6
+ component: TableResizable,
7
+ };
8
+
9
+ const Template = (args) => <TableResizable {...args} />;
10
+
11
+ export const DefaultTableResizable = Template.bind({});
12
+ DefaultTableResizable.args = {
13
+ headers: ["Col 1", "Col 2", "Col 3", "Col 4", "Col 5"],
14
+ tableContent: data,
15
+ minCellWidth: 120,
16
+ withResetSizeButton: true,
17
+ };
@@ -0,0 +1,119 @@
1
+ import React, { useState, useCallback, useEffect, useRef } from "react";
2
+ import { RestartAlt } from "@mui/icons-material";
3
+ import { Container } from "./styles.js";
4
+
5
+ const createHeaders = (headers) => {
6
+ return headers.map((item) => ({
7
+ text: item,
8
+ ref: useRef(),
9
+ }));
10
+ };
11
+
12
+ /*
13
+ * Read the blog post here:
14
+ * https://letsbuildui.dev/articles/resizable-tables-with-react-and-css-grid
15
+ */
16
+ export const TableResizable = (props) => {
17
+ const {
18
+ gridTemplateColumns,
19
+ headers,
20
+ minCellWidth,
21
+ tableContent,
22
+ withResetSizeButton,
23
+ } = props;
24
+ // const [tableHeight, setTableHeight] = useState("auto");
25
+ const [activeIndex, setActiveIndex] = useState(null);
26
+ const tableElement = useRef(null);
27
+ const columns = createHeaders(headers);
28
+
29
+ // useEffect(() => {
30
+ // setTableHeight(tableElement.current.offsetHeight);
31
+ // }, []);
32
+
33
+ const mouseDown = (index) => setActiveIndex(index);
34
+
35
+ const mouseMove = useCallback(
36
+ (e) => {
37
+ const gridColumns = columns.map((col, i) => {
38
+ if (i === activeIndex) {
39
+ const width = e.clientX - col.ref.current.offsetLeft;
40
+ if (width >= minCellWidth) return `${width}px`;
41
+ }
42
+ return `${col.ref.current.offsetWidth}px`;
43
+ });
44
+ const gridTemplateColumns = `${gridColumns.join(" ")}`;
45
+ tableElement.current.style.gridTemplateColumns = gridTemplateColumns;
46
+ },
47
+ [activeIndex, columns, minCellWidth]
48
+ );
49
+
50
+ const removeListeners = useCallback(() => {
51
+ window.removeEventListener("mousemove", mouseMove);
52
+ window.removeEventListener("mouseup", removeListeners);
53
+ }, [mouseMove]);
54
+
55
+ const mouseUp = useCallback(() => {
56
+ setActiveIndex(null);
57
+ removeListeners();
58
+ }, [setActiveIndex, removeListeners]);
59
+
60
+ useEffect(() => {
61
+ if (activeIndex > -1) {
62
+ window.addEventListener("mousemove", mouseMove);
63
+ window.addEventListener("mouseup", mouseUp);
64
+ }
65
+ return () => removeListeners();
66
+ }, [activeIndex, mouseMove, mouseUp, removeListeners]);
67
+
68
+ const resetTableCells = () => {
69
+ tableElement.current.style.gridTemplateColumns = "";
70
+ };
71
+
72
+ return (
73
+ <Container
74
+ gridTemplateColumns={gridTemplateColumns}
75
+ totalColumns={columns?.length}
76
+ totalRows={tableContent?.length}
77
+ >
78
+ {withResetSizeButton ? (
79
+ <button className="reset-button" onClick={resetTableCells}>
80
+ <RestartAlt sx={{ fontSize: 18 }} />
81
+ </button>
82
+ ) : null}
83
+ <div className="table-wrapper">
84
+ <table className="resizeable-table" ref={tableElement}>
85
+ <thead>
86
+ <tr>
87
+ {columns?.map(({ ref, text }, i) => (
88
+ <th ref={ref} key={i}>
89
+ <span>{text}</span>
90
+ <div
91
+ style={{ height: "50px" /* tableHeight */ }}
92
+ onMouseDown={() => mouseDown(i)}
93
+ className={`resize-handle ${
94
+ activeIndex === i ? "active" : "idle"
95
+ }`}
96
+ />
97
+ </th>
98
+ ))}
99
+ </tr>
100
+ </thead>
101
+ <tbody>
102
+ {tableContent.map((row) => (
103
+ <tr key={row.key}>
104
+ {row?.columns?.map((column, indexColumn) => (
105
+ <td
106
+ className={typeof column === "object" ? "noOverflow" : ""}
107
+ key={`${row.key}-${indexColumn}`}
108
+ >
109
+ <span>{column}</span>
110
+ </td>
111
+ ))}
112
+ </tr>
113
+ ))}
114
+ </tbody>
115
+ </table>
116
+ </div>
117
+ </Container>
118
+ );
119
+ };
@@ -0,0 +1,133 @@
1
+ import styled from "styled-components";
2
+
3
+ const defaultTemplateColumns = (totalColumns) =>
4
+ `minmax(100px, 1fr) `.repeat(totalColumns);
5
+
6
+ export const Container = styled.div`
7
+ position: absolute;
8
+ overflow: hidden; /* Clips any scrollbars that appear */
9
+ font-family: Avenir Next;
10
+ font-size: 13px;
11
+ width: 90%;
12
+
13
+ .reset-button {
14
+ display: flex;
15
+ justify-content: center;
16
+ align-items: center;
17
+ border-radius: 50%;
18
+ cursor: pointer;
19
+ padding: 3px;
20
+ border: 0;
21
+ background: #f5f5f5;
22
+ position: absolute;
23
+ top: 5px;
24
+ left: 5px;
25
+ margin: 0;
26
+ z-index: 10;
27
+ }
28
+
29
+ .table-wrapper {
30
+ border-radius: 6px;
31
+ background: #fff;
32
+ }
33
+
34
+ table {
35
+ width: 100%;
36
+ height: calc(100vh - 250px);
37
+ overflow: auto; /* Allow scrolling within the table */
38
+ display: grid;
39
+ grid-template-columns: ${(props) =>
40
+ props.gridTemplateColumns ?? defaultTemplateColumns(props.totalColumns)};
41
+ grid-template-rows: ${(props) => `repeat(${props.totalRows + 2}, 50px)`};
42
+ }
43
+
44
+ table th {
45
+ font-size: 15px;
46
+ }
47
+
48
+ table th,
49
+ table td {
50
+ text-align: left;
51
+ padding: 5px;
52
+ }
53
+
54
+ table th span,
55
+ table td span {
56
+ white-space: nowrap;
57
+ text-overflow: ellipsis;
58
+ overflow: hidden;
59
+ display: block;
60
+ border-right: 1px solid #ccc;
61
+ text-align: center;
62
+ height: 100%;
63
+ }
64
+
65
+ table th:last-child span,
66
+ table td:last-child span {
67
+ border-right: 0px;
68
+ }
69
+
70
+ table tr td {
71
+ border-bottom: 1px solid #ccc;
72
+ }
73
+
74
+ table tr th {
75
+ border-bottom: 1px solid #ccc;
76
+ }
77
+
78
+ table thead,
79
+ table tbody,
80
+ table tr {
81
+ display: contents;
82
+ background: red;
83
+ }
84
+
85
+ table thead {
86
+ -webkit-user-select: none; /* Safari */
87
+ -ms-user-select: none; /* IE 10 and IE 11 */
88
+ user-select: none; /* Standard syntax */
89
+ }
90
+
91
+ th {
92
+ position: sticky;
93
+ top: 0;
94
+ background-color: #fff;
95
+ line-height: 40px;
96
+ z-index: 8;
97
+ }
98
+
99
+ td {
100
+ line-height: 40px;
101
+ height: 50px;
102
+ }
103
+
104
+ .resize-handle {
105
+ display: block;
106
+ position: absolute;
107
+ cursor: col-resize;
108
+ width: 8px;
109
+ right: 0;
110
+ top: 0;
111
+ z-index: 1;
112
+ border-right: 1px solid transparent;
113
+ }
114
+
115
+ .resize-handle:hover {
116
+ border-color: #ccc;
117
+ }
118
+
119
+ .resize-handle.active {
120
+ border-color: #517ea5;
121
+ }
122
+
123
+ .resizeable-table {
124
+ width: 100%;
125
+ }
126
+
127
+ .noOverflow {
128
+ overflow: inherit;
129
+ span {
130
+ overflow: inherit;
131
+ }
132
+ }
133
+ `;
@@ -0,0 +1,46 @@
1
+ export const data = [
2
+ {
3
+ key: 1,
4
+ object: {},
5
+ columns: [
6
+ "Large Detroit Style Pizza",
7
+ 3213456785,
8
+ "$31.43",
9
+ "Pending",
10
+ "Dave",
11
+ ],
12
+ },
13
+ {
14
+ key: 2,
15
+ object: {},
16
+ columns: [
17
+ "Large Detroit Style Pizza",
18
+ 3213456785,
19
+ "$31.43",
20
+ "Pending",
21
+ "Dave",
22
+ ],
23
+ },
24
+ {
25
+ key: 3,
26
+ object: {},
27
+ columns: [
28
+ "Large Detroit Style Pizza",
29
+ 3213456785,
30
+ "$31.43",
31
+ "Pending",
32
+ "Dave",
33
+ ],
34
+ },
35
+ {
36
+ key: 4,
37
+ object: {},
38
+ columns: [
39
+ "Large Detroit Style Pizza",
40
+ 3213456785,
41
+ "$31.43",
42
+ "Pending",
43
+ "Dave",
44
+ ],
45
+ },
46
+ ];
@@ -9,83 +9,59 @@ const Template = (args) => <Dashboard {...args} />;
9
9
  export const DashboardDeafult = Template.bind({});
10
10
  DashboardDeafult.args = {
11
11
  user: {
12
- id_user: 59,
13
- name: "Cadena",
14
- last_name: "Comercial",
15
- email: "cadena.ismael@allfreemail.net",
16
- position: "Admin",
17
- telephone: "+523111366336",
12
+ id_user: 37,
13
+ name: "José",
14
+ last_name: "Castañeda",
15
+ email: "ismael97lopez@gmail.com",
16
+ position: "Auditor",
17
+ telephone: "",
18
18
  country: "México",
19
- id_company: 817,
20
- id_cognito: "5884ae34-59d6-4454-b98e-821518bcc3a7",
19
+ id_company: 2,
20
+ id_cognito: "9a213128-6482-4c16-a4b6-6e64f225b1bd",
21
21
  birth_Date: null,
22
22
  about_me: "",
23
23
  zip_code: "",
24
24
  address: "",
25
25
  job: "",
26
26
  id_stripe: "",
27
- id_role: 0,
27
+ id_role: 6,
28
28
  active: 1,
29
- is_retailer: 1,
30
- email_notify: 0,
29
+ is_retailer: 0,
30
+ email_notify: 1,
31
31
  is_user_tech: null,
32
32
  membership: {
33
- id: 47,
34
- start_date: "2022-05-25T14:31:12.000Z",
35
- end_date: "2023-05-25T14:31:12.000Z",
36
- planID: 5,
37
- plan: "prod_Ktl6B5Ou2gqTB2",
38
- name: "Plan Pro",
39
- user_limit: "5",
40
- products_limit: "500",
33
+ id: 2,
34
+ start_date: "2021-11-05T02:35:12.000Z",
35
+ end_date: "2022-11-05T02:34:49.000Z",
36
+ planID: 1,
37
+ plan: "prod_KtkvuFFLpOdP6e",
38
+ name: "Plan Free",
39
+ user_limit: "1",
40
+ products_limit: "3",
41
41
  type: "PyMES",
42
42
  },
43
- src: "https://content-management-profile.s3.amazonaws.com/id-59/59.png?1681406304781",
43
+ src: "https://content-management-profile.s3.amazonaws.com/id-37/37.png?1684953973972",
44
44
  },
45
45
  company: {
46
- id_company: 817,
47
- trade_name: "Retailer acc",
48
- company_name: "Retailer acc",
49
- rfc: "ASER12345",
50
- adress: "Av. Insurgentes",
51
- about_company: null,
52
- telephone: null,
53
- web_site: null,
54
- zip_code: null,
46
+ id_company: 1,
47
+ trade_name: "GRUPO BRAHMA",
48
+ company_name: "GRUPO BRAHMA",
49
+ rfc: "XAXX010101000",
50
+ adress: "AA",
51
+ about_company: "",
52
+ telephone: "",
53
+ web_site: "",
54
+ zip_code: "",
55
55
  email: null,
56
- social_link: null,
57
- is_retailer: 1,
58
- financedRetailers: [
59
- {
60
- id: 68,
61
- name: "The Home Depot Merchants",
62
- country: "México",
63
- id_region: 1,
64
- active: 1,
65
- },
66
- ],
56
+ social_link: "",
57
+ is_retailer: 0,
67
58
  retailers: [
68
59
  {
69
- id: 59,
70
- name: "The Home Depot Platinum",
71
- country: "México",
72
- },
73
- {
74
- id: 60,
75
- name: "The Home Depot Resizing",
76
- country: "México",
77
- },
78
- {
79
- id: 61,
80
- name: "Home Depot TAB",
81
- country: "México",
82
- },
83
- {
84
- id: 68,
85
- name: "The Home Depot Merchants",
86
- country: "México",
60
+ id: null,
61
+ name: null,
62
+ country: null,
87
63
  },
88
64
  ],
89
65
  },
90
- jwt: "eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiIyNDlhMjJkMC00Y2VhLTRjNGEtYTNjYS0zM2ZjN2VmNjAwOTEiLCJjb2duaXRvOmdyb3VwcyI6WyJ1c3VhcmlvX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfWE1aUWRxa0dqIiwiY29nbml0bzp1c2VybmFtZSI6IjI0OWEyMmQwLTRjZWEtNGM0YS1hM2NhLTMzZmM3ZWY2MDA5MSIsImNvZ25pdG86cm9sZXMiOlsiYXJuOmF3czppYW06Ojg5ODY3MDIzMjgwNzpyb2xlXC9jb250ZW50b2gtZGV2LXVzLWVhc3QtMS1sYW1iZGFSb2xlIl0sImF1ZCI6IjVhYzh0cGdzNmdic3ExM2ZydnJwaWVlcDQwIiwiZXZlbnRfaWQiOiI0MzRhODBmZi0yZmNiLTQyMmItOGI5ZC0wNzU4OGQ3NGQyNmIiLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY4MTQyNjgyOCwibmFtZSI6IkNvbGFib3JhZG9yIiwicGhvbmVfbnVtYmVyIjoiKzUyMTExMSIsImV4cCI6MTY4MTQzMDQyOCwiaWF0IjoxNjgxNDI2ODI4LCJlbWFpbCI6Im1lcmNoYW50c2lsdW1pbmFjaW9uQGFsbGZyZWVtYWlsLm5ldCJ9.IJNkSNUBmeOFQiDzyR2R0dDtwqg7U5GbXIwtW60cpxVBXj5Lr4zRdPuQnW3o02PxVR189IX2S3jcGgHhnvGMMKh4jRr-YM_eFpXYRQL_279tjG_rlZjwYFC333XMOcHViB8rEqNAti1PnuphCzqNiWH1z_b6aynxlbAeR23-P3VhSb0v6z_EWTdnuEw7ETXLFu2V6qaZTJCx6l7CZKECG2UExbaA0Be5_Ju56Q5cSNSf-lngetTvlb5DGeCge4nQ36y2qy9HnjAPDtP6c1v7KrT6zE74qh_L6u-xrdwYlaP5KBg4B3qJobtI9bgtKiqY1AZSTjWp4vr0T0_5M6GA7Q",
66
+ jwt: "eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiJmNTkyN2Y4ZS1jYmY3LTQ5MjItOWUwOS1lNjllYzBiMjczMWEiLCJjb2duaXRvOmdyb3VwcyI6WyJ1c3VhcmlvX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfWE1aUWRxa0dqIiwicGhvbmVfbnVtYmVyX3ZlcmlmaWVkIjpmYWxzZSwiY29nbml0bzp1c2VybmFtZSI6ImY1OTI3ZjhlLWNiZjctNDkyMi05ZTA5LWU2OWVjMGIyNzMxYSIsImNvZ25pdG86cm9sZXMiOlsiYXJuOmF3czppYW06Ojg5ODY3MDIzMjgwNzpyb2xlXC9jb250ZW50b2gtZGV2LXVzLWVhc3QtMS1sYW1iZGFSb2xlIl0sImF1ZCI6IjVhYzh0cGdzNmdic3ExM2ZydnJwaWVlcDQwIiwiZXZlbnRfaWQiOiI3ZjNkZTM4Mi03NWE2LTRlNDAtYTI3NC00YmM5ODg2Nzk0YjYiLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY4NDk1NTYzOCwibmFtZSI6IklzbWFlbCBMb3BleiIsInBob25lX251bWJlciI6Iis1MjMxMTEzNjYzMzYiLCJleHAiOjE2ODQ5NTkyMzcsImlhdCI6MTY4NDk1NTYzOCwiZW1haWwiOiJpbG9wZXpAY29udGVudG9oLmNvbSJ9.ALvhpSGVv34JV8vLSg0CznmsIzRMJ_BFcmDI4qYXzr0qwgLLihon0M0xmODMhIHKcZK4jODC01guliB6fTPoCb8kfPHrBgLnHMBU8PxU1Fcc2EqF5U8lh4fJK6Mc7kiJ4lCreKJL3kT_1ytC-7FdRAlhNXzuJW6aMQQ785ODQ8-1RtHKW6U_b9x88-WFxjltEKuw734LGBSkz9iKZSumNBJBP8HTMgwOgmRTJ6lR-hPsujvl7aF3maXhftpk2fI8S_FzjVRMsxY3T8hQHIXEYwQUv-fC5SPOgc8XDuAp18MKfi0qkU1EYHQahC0qZmvgVGWEDcu5D36Xj0as4iAiFQ",
91
67
  };
@@ -39,6 +39,7 @@ export const Dashboard = ({ jwt, user, company }) => {
39
39
  ];
40
40
  const [applicantsFilter, setApplicantsFilter] = useState([]);
41
41
  const [totalCount, setTotalCount] = useState(0);
42
+ const [isProviderFinanced] = useState(company?.financedRetailers?.length > 0);
42
43
 
43
44
  const loadProductVersions = async (queryObject) => {
44
45
  const keys = Object.keys(queryObject);
@@ -70,7 +71,7 @@ export const Dashboard = ({ jwt, user, company }) => {
70
71
  );
71
72
  const parsed = JSON.parse(retailersResponse.data.body).data;
72
73
  let retailers = Object.values(parsed);
73
- if (isRetailer) {
74
+ if (isRetailer || isProviderFinanced) {
74
75
  const retailersValid = company.retailers.map((e) => e.id);
75
76
  retailers = retailers.filter((value) =>
76
77
  retailersValid.includes(value.id)
@@ -252,7 +253,7 @@ export const Dashboard = ({ jwt, user, company }) => {
252
253
  setParameterArray={setDatesRange}
253
254
  isSingleSelect
254
255
  />
255
- {providers?.length > 0 && (
256
+ {!isProviderFinanced && providers?.length > 1 && (
256
257
  <CustomSelect
257
258
  showFilterString={true}
258
259
  showSearchBar={true}
@@ -276,7 +277,7 @@ export const Dashboard = ({ jwt, user, company }) => {
276
277
  setParameterArray={setCategoryId}
277
278
  defaultOption="Todas las categorías"
278
279
  />
279
- {retailers?.length > 1 && (
280
+ {!isProviderFinanced && retailers?.length > 1 && (
280
281
  <CustomSelect
281
282
  showFilterString={true}
282
283
  showSearchBar={true}
@@ -16,47 +16,121 @@ ProviderProductEditionDefault.args = {
16
16
  Imágenes: false,
17
17
  },
18
18
  token:
19
- "eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiI1ODg0YWUzNC01OWQ2LTQ0NTQtYjk4ZS04MjE1MThiY2MzYTciLCJjb2duaXRvOmdyb3VwcyI6WyJ1c3VhcmlvX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfWE1aUWRxa0dqIiwicGhvbmVfbnVtYmVyX3ZlcmlmaWVkIjpmYWxzZSwiY29nbml0bzp1c2VybmFtZSI6IjU4ODRhZTM0LTU5ZDYtNDQ1NC1iOThlLTgyMTUxOGJjYzNhNyIsImNvZ25pdG86cm9sZXMiOlsiYXJuOmF3czppYW06Ojg5ODY3MDIzMjgwNzpyb2xlXC9jb250ZW50b2gtZGV2LXVzLWVhc3QtMS1sYW1iZGFSb2xlIl0sImF1ZCI6IjVhYzh0cGdzNmdic3ExM2ZydnJwaWVlcDQwIiwiZXZlbnRfaWQiOiJlZjViNDQzYi02ODc0LTQ2NGQtOWZiZS00Y2UwNWU4ZDQ3YTEiLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY4MDAzODYyNiwibmFtZSI6IkNhZGVuYSBJc21hZWwiLCJwaG9uZV9udW1iZXIiOiIrNTIzMTExMzY2MzM2IiwiZXhwIjoxNjgwMDQyMjI1LCJpYXQiOjE2ODAwMzg2MjYsImVtYWlsIjoiY2FkZW5hLmlzbWFlbEBhbGxmcmVlbWFpbC5uZXQifQ.rhufpJdUaJOpiKtXJgNoDq863ecFnLp63c9_6NeEbpYYNN19d_xac8aZADN-QMpkmz1oxtqfxf_-JN5jMJexi9gJCRb9O7-xL75v_G9UjdmE8sRA6qRNb_tFUCt1oee_ulgqm_2wTjb7qGMGvY1eb1J1IX2pBYKnBy64KM6J5xFfZ57ac_bGruYhCzUexPBWyZKc5ckoY2zJqK5m5Ok7ds0m1hC0t-eQSGX_8KMsGQKiHevQ07cZUQ9mxOGVweRuAqITNx8fVmpD9QTpoZJJ5STVVcKO2CS0ltyE_DNlyejO7mZqbKvGEeLYc4ga0nozK9aP8H2cN_topT0d4JZ5rA",
19
+ "eyJraWQiOiJkQWJkZCtlclwvTlwveVRQUWNvUlVyOCtrNUd2M1hMM2N1MWUzQ09zWExVRnc9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiI1ODg0YWUzNC01OWQ2LTQ0NTQtYjk4ZS04MjE1MThiY2MzYTciLCJjb2duaXRvOmdyb3VwcyI6WyJ1c3VhcmlvX2NvbnRlbnRvaCJdLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfWE1aUWRxa0dqIiwicGhvbmVfbnVtYmVyX3ZlcmlmaWVkIjpmYWxzZSwiY29nbml0bzp1c2VybmFtZSI6IjU4ODRhZTM0LTU5ZDYtNDQ1NC1iOThlLTgyMTUxOGJjYzNhNyIsImNvZ25pdG86cm9sZXMiOlsiYXJuOmF3czppYW06Ojg5ODY3MDIzMjgwNzpyb2xlXC9jb250ZW50b2gtZGV2LXVzLWVhc3QtMS1sYW1iZGFSb2xlIl0sImF1ZCI6IjVhYzh0cGdzNmdic3ExM2ZydnJwaWVlcDQwIiwiZXZlbnRfaWQiOiJjOWRjOWE1OS0xNTAxLTQyOTgtODRjMi03MDM4NzRhNzIxMTEiLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY4MjQ2Mjc4NCwibmFtZSI6IkNhZGVuYSBJc21hZWwiLCJwaG9uZV9udW1iZXIiOiIrNTIzMTExMzY2MzM2IiwiZXhwIjoxNjgyNDY2Mzg0LCJpYXQiOjE2ODI0NjI3ODQsImVtYWlsIjoiY2FkZW5hLmlzbWFlbEBhbGxmcmVlbWFpbC5uZXQifQ.ebKSsnTxKoNfWDoKGFJRlLWgNulGj4KrDe0EgsqLEIVx3Qu0lgmg43UY5tZ3FUlRE8XO2UGq0XxEgdbGOe_4nbTRYigdvxP3bh3cPQ0s68hlTDfhPRvxVJYlaO4s0rhk9rt_VVteTyLfhPHFCymrkFYYDB8bVvKnxUUCX_nJvqGQkl48JiYgvYVLpuus5FvRkGwi1u-jTtMoKiUK-jw9MxI18hD0FWXVnJr-q9ftf2d0bv4JRv4XJ_tRh1N6jps5n3c_KKZswqRfGLU-8MS2X3DU6pDqEP2BZAGXksiFYXYH_uHE6BKJAl7EEhkDTqZsx_jWtVSXTdDg_QDKrOw0Kg",
20
20
  articleId: 238,
21
21
  category: 846,
22
22
  version: 2,
23
23
  productSelected: {
24
- category: "Iluminación|Lámparas de Interior|Pie y Pedestal",
25
- company_name: "Demo",
26
- company_id: 923,
27
- id_category: "2676",
28
- id_article: 17163,
29
- name: "Eglo 95055",
30
- upc: "165033",
31
- version: 1,
24
+ orderId: 15165,
25
+ article_status: "AAC",
26
+ datasheet_status: "AAC",
27
+ description_status: "FAP",
28
+ images_status: "FAP",
29
+ prio: "none",
30
+ version: 3,
31
+ brand: null,
32
+ article: {
33
+ category: "Puertas y Ventanas|Molduras|Molduras Madera Blanda",
34
+ company_name: "Demo",
35
+ id_company: 923,
36
+ country: "México",
37
+ id_category: "2366",
38
+ id_article: 39336,
39
+ name: "Prueba Auditoria",
40
+ upc: "100030124",
41
+ },
42
+ retailers: [
43
+ {
44
+ id: 58,
45
+ name: "The Home Depot Golden",
46
+ },
47
+ {
48
+ id: 68,
49
+ name: "The Home Depot Dropship",
50
+ },
51
+ ],
52
+ services: {
53
+ datasheets: 1,
54
+ descriptions: 1,
55
+ images: 1,
56
+ },
57
+ statusByRetailer: {
58
+ 58: {
59
+ datasheet: "AAC",
60
+ description: "FAP",
61
+ images: "FAP",
62
+ },
63
+ },
64
+ retailersWithService: ["58"],
65
+ id_article: 39336,
32
66
  retailersAvailable: [
67
+ {
68
+ id: 58,
69
+ name: "The Home Depot Golden",
70
+ },
33
71
  {
34
72
  id: 68,
35
- name: "The Home Depot Merchants",
73
+ name: "The Home Depot Dropship",
36
74
  },
37
75
  ],
38
76
  },
39
77
  productToEdit: {
40
- idCategory: "2676",
41
- ArticleId: 17163,
42
- product: [
43
- {
44
- category: "Iluminación|Lámparas de Interior|Pie y Pedestal",
78
+ ArticleId: 39336,
79
+ idCategory: "2366",
80
+ product: {
81
+ orderId: 15165,
82
+ article_status: "AAC",
83
+ datasheet_status: "AAC",
84
+ description_status: "FAP",
85
+ images_status: "FAP",
86
+ prio: "none",
87
+ version: 3,
88
+ brand: null,
89
+ article: {
90
+ category: "Puertas y Ventanas|Molduras|Molduras Madera Blanda",
45
91
  company_name: "Demo",
46
- company_id: 923,
47
- id_category: "2676",
48
- id_article: 17163,
49
- name: "Eglo 95055",
50
- upc: "165033",
51
- version: 1,
52
- retailersAvailable: [
53
- {
54
- id: 68,
55
- name: "The Home Depot Merchants",
56
- },
57
- ],
92
+ id_company: 923,
93
+ country: "México",
94
+ id_category: "2366",
95
+ id_article: 39336,
96
+ name: "Prueba Auditoria",
97
+ upc: "100030124",
58
98
  },
59
- ],
99
+ retailers: [
100
+ {
101
+ id: 58,
102
+ name: "The Home Depot Golden",
103
+ },
104
+ {
105
+ id: 68,
106
+ name: "The Home Depot Dropship",
107
+ },
108
+ ],
109
+ services: {
110
+ datasheets: 1,
111
+ descriptions: 1,
112
+ images: 1,
113
+ },
114
+ statusByRetailer: {
115
+ 58: {
116
+ datasheet: "AAC",
117
+ description: "FAP",
118
+ images: "FAP",
119
+ },
120
+ },
121
+ retailersWithService: ["58"],
122
+ id_article: 39336,
123
+ retailersAvailable: [
124
+ {
125
+ id: 58,
126
+ name: "The Home Depot Golden",
127
+ },
128
+ {
129
+ id: 68,
130
+ name: "The Home Depot Dropship",
131
+ },
132
+ ],
133
+ },
60
134
  },
61
135
  location: {
62
136
  pathname: "/EditProducts",
@@ -99,7 +173,7 @@ ProviderProductEditionDefault.args = {
99
173
  products_limit: "500",
100
174
  type: "PyMES",
101
175
  },
102
- src: "https://content-management-profile.s3.amazonaws.com/id-59/59.png?1680038627077",
176
+ src: "https://content-management-profile.s3.amazonaws.com/id-59/59.png?1682462786497",
103
177
  },
104
178
  company: {
105
179
  id_company: 817,
@@ -117,7 +191,7 @@ ProviderProductEditionDefault.args = {
117
191
  financedRetailers: [
118
192
  {
119
193
  id: 68,
120
- name: "The Home Depot Merchants",
194
+ name: "The Home Depot Dropship",
121
195
  country: "México",
122
196
  id_region: 1,
123
197
  active: 1,
@@ -141,7 +215,12 @@ ProviderProductEditionDefault.args = {
141
215
  },
142
216
  {
143
217
  id: 68,
144
- name: "The Home Depot Merchants",
218
+ name: "The Home Depot Dropship",
219
+ country: "México",
220
+ },
221
+ {
222
+ id: 58,
223
+ name: "The Home Depot Golden",
145
224
  country: "México",
146
225
  },
147
226
  ],