iguazio.dashboard-react-controls 3.0.4 → 3.1.1
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.
- package/dist/components/ActionsMenu/ActionsMenu.d.ts +18 -0
- package/dist/components/ActionsMenu/ActionsMenu.d.ts.map +1 -0
- package/dist/components/ActionsMenu/ActionsMenu.mjs +126 -0
- package/dist/components/ActionsMenu/ActionsMenu.mjs.map +1 -0
- package/dist/components/BlockerSpy/BlockerSpy.d.ts +12 -0
- package/dist/components/BlockerSpy/BlockerSpy.d.ts.map +1 -0
- package/dist/components/BlockerSpy/BlockerSpy.mjs +18 -0
- package/dist/components/BlockerSpy/BlockerSpy.mjs.map +1 -0
- package/dist/components/Button/Button.mjs +21 -20
- package/dist/components/Button/Button.mjs.map +1 -1
- package/dist/components/Chip/Chip.d.ts +3 -0
- package/dist/components/Chip/Chip.d.ts.map +1 -0
- package/dist/components/Chip/Chip.mjs +153 -0
- package/dist/components/Chip/Chip.mjs.map +1 -0
- package/dist/components/Chip/Chip.stories.d.ts +26 -0
- package/dist/components/Chip/Chip.stories.d.ts.map +1 -0
- package/dist/components/ChipCell/ChipCell.d.ts +3 -0
- package/dist/components/ChipCell/ChipCell.d.ts.map +1 -0
- package/dist/components/ChipCell/ChipCell.mjs +212 -0
- package/dist/components/ChipCell/ChipCell.mjs.map +1 -0
- package/dist/components/ChipCell/ChipTooltip/ChipTooltip.d.ts +15 -0
- package/dist/components/ChipCell/ChipTooltip/ChipTooltip.d.ts.map +1 -0
- package/dist/components/ChipCell/ChipTooltip/ChipTooltip.mjs +36 -0
- package/dist/components/ChipCell/ChipTooltip/ChipTooltip.mjs.map +1 -0
- package/dist/components/ChipCell/HiddenChipsBlock/HiddenChipsBlock.d.ts +35 -0
- package/dist/components/ChipCell/HiddenChipsBlock/HiddenChipsBlock.d.ts.map +1 -0
- package/dist/components/ChipCell/HiddenChipsBlock/HiddenChipsBlock.mjs +73 -0
- package/dist/components/ChipCell/HiddenChipsBlock/HiddenChipsBlock.mjs.map +1 -0
- package/dist/components/ChipForm/ChipForm.d.ts +25 -0
- package/dist/components/ChipForm/ChipForm.d.ts.map +1 -0
- package/dist/components/ChipForm/ChipForm.mjs +184 -0
- package/dist/components/ChipForm/ChipForm.mjs.map +1 -0
- package/dist/components/CopyToClipboard/CopyToClipboard.d.ts +18 -0
- package/dist/components/CopyToClipboard/CopyToClipboard.d.ts.map +1 -0
- package/dist/components/CopyToClipboard/CopyToClipboard.mjs +51 -0
- package/dist/components/CopyToClipboard/CopyToClipboard.mjs.map +1 -0
- package/dist/components/ErrorMessage/ErrorMessage.d.ts +12 -0
- package/dist/components/ErrorMessage/ErrorMessage.d.ts.map +1 -0
- package/dist/components/ErrorMessage/ErrorMessage.mjs +23 -0
- package/dist/components/ErrorMessage/ErrorMessage.mjs.map +1 -0
- package/dist/components/FormChipCell/FormChipCellView.mjs +1 -1
- package/dist/components/LoadButton/LoadButton.d.ts +16 -0
- package/dist/components/LoadButton/LoadButton.d.ts.map +1 -0
- package/dist/components/LoadButton/LoadButton.mjs +22 -0
- package/dist/components/LoadButton/LoadButton.mjs.map +1 -0
- package/dist/components/LoadButton/LoadButton.stories.d.ts +10 -0
- package/dist/components/LoadButton/LoadButton.stories.d.ts.map +1 -0
- package/dist/components/Loader/Loader.d.ts +3 -0
- package/dist/components/Loader/Loader.d.ts.map +1 -0
- package/dist/components/Loader/Loader.mjs +24 -0
- package/dist/components/Loader/Loader.mjs.map +1 -0
- package/dist/components/Loader/LoaderForSuspenseFallback.d.ts +3 -0
- package/dist/components/Loader/LoaderForSuspenseFallback.d.ts.map +1 -0
- package/dist/components/Loader/LoaderForSuspenseFallback.mjs +13 -0
- package/dist/components/Loader/LoaderForSuspenseFallback.mjs.map +1 -0
- package/dist/components/TableCell/TableCell.d.ts +28 -0
- package/dist/components/TableCell/TableCell.d.ts.map +1 -0
- package/dist/components/TableCell/TableCell.mjs +104 -0
- package/dist/components/TableCell/TableCell.mjs.map +1 -0
- package/dist/components/TabsSlider/TabsSlider.d.ts +20 -0
- package/dist/components/TabsSlider/TabsSlider.d.ts.map +1 -0
- package/dist/components/TabsSlider/TabsSlider.mjs +133 -0
- package/dist/components/TabsSlider/TabsSlider.mjs.map +1 -0
- package/dist/components/index.d.ts +12 -1
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.mjs +60 -38
- package/dist/components/index.mjs.map +1 -1
- package/dist/constants.d.ts +8 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.mjs +34 -26
- package/dist/constants.mjs.map +1 -1
- package/dist/elements/ActionsMenuItem/ActionsMenuItem.d.ts +16 -0
- package/dist/elements/ActionsMenuItem/ActionsMenuItem.d.ts.map +1 -0
- package/dist/elements/ActionsMenuItem/ActionsMenuItem.mjs +51 -0
- package/dist/elements/ActionsMenuItem/ActionsMenuItem.mjs.map +1 -0
- package/dist/elements/TableHead/TableHead.d.ts +20 -0
- package/dist/elements/TableHead/TableHead.d.ts.map +1 -0
- package/dist/elements/TableHead/TableHead.mjs +58 -0
- package/dist/elements/TableHead/TableHead.mjs.map +1 -0
- package/dist/elements/TableLinkCell/TableLinkCell.d.ts +24 -0
- package/dist/elements/TableLinkCell/TableLinkCell.d.ts.map +1 -0
- package/dist/elements/TableLinkCell/TableLinkCell.mjs +87 -0
- package/dist/elements/TableLinkCell/TableLinkCell.mjs.map +1 -0
- package/dist/elements/TableTypeCell/TableTypeCell.d.ts +12 -0
- package/dist/elements/TableTypeCell/TableTypeCell.d.ts.map +1 -0
- package/dist/elements/TableTypeCell/TableTypeCell.mjs +37 -0
- package/dist/elements/TableTypeCell/TableTypeCell.mjs.map +1 -0
- package/dist/elements/index.d.ts +5 -1
- package/dist/elements/index.d.ts.map +1 -1
- package/dist/elements/index.mjs +18 -10
- package/dist/elements/index.mjs.map +1 -1
- package/dist/hooks/index.d.ts +3 -0
- package/dist/hooks/index.mjs +14 -8
- package/dist/hooks/index.mjs.map +1 -1
- package/dist/hooks/useDetails.hook.d.ts +72 -0
- package/dist/hooks/useDetails.hook.d.ts.map +1 -0
- package/dist/hooks/useDetails.hook.mjs +204 -0
- package/dist/hooks/useDetails.hook.mjs.map +1 -0
- package/dist/hooks/useDetailsHeader.hook.d.ts +77 -0
- package/dist/hooks/useDetailsHeader.hook.d.ts.map +1 -0
- package/dist/hooks/useDetailsHeader.hook.mjs +219 -0
- package/dist/hooks/useDetailsHeader.hook.mjs.map +1 -0
- package/dist/hooks/useTable.hook.d.ts +60 -0
- package/dist/hooks/useTable.hook.d.ts.map +1 -0
- package/dist/hooks/useTable.hook.mjs +129 -0
- package/dist/hooks/useTable.hook.mjs.map +1 -0
- package/dist/images/add.svg.mjs +2 -3
- package/dist/images/add.svg.mjs.map +1 -1
- package/dist/images/add.svg2.mjs +6 -0
- package/dist/images/add.svg2.mjs.map +1 -0
- package/dist/images/cancel.svg +3 -0
- package/dist/images/copy-to-clipboard-icon.svg.mjs +6 -0
- package/dist/images/copy-to-clipboard-icon.svg.mjs.map +1 -0
- package/dist/images/elipsis.svg.mjs +6 -0
- package/dist/images/elipsis.svg.mjs.map +1 -0
- package/dist/images/history.svg.mjs +6 -0
- package/dist/images/history.svg.mjs.map +1 -0
- package/dist/images/ml-enlarge.svg.mjs +6 -0
- package/dist/images/ml-enlarge.svg.mjs.map +1 -0
- package/dist/images/ml-minimize.svg.mjs +6 -0
- package/dist/images/ml-minimize.svg.mjs.map +1 -0
- package/dist/images/refresh.svg.mjs +6 -0
- package/dist/images/refresh.svg.mjs.map +1 -0
- package/dist/images/unsuccess_alert.svg.mjs +6 -0
- package/dist/images/unsuccess_alert.svg.mjs.map +1 -0
- package/dist/index.css +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +10 -8
- package/dist/index.mjs.map +1 -1
- package/dist/reducers/commonDetailsReducer.d.ts +12 -0
- package/dist/reducers/commonDetailsReducer.d.ts.map +1 -0
- package/dist/reducers/commonDetailsReducer.mjs +77 -0
- package/dist/reducers/commonDetailsReducer.mjs.map +1 -0
- package/dist/reducers/index.d.ts +3 -0
- package/dist/reducers/index.d.ts.map +1 -0
- package/dist/reducers/index.mjs +7 -0
- package/dist/reducers/index.mjs.map +1 -0
- package/dist/reducers/notificationReducer.d.ts +3 -0
- package/dist/reducers/notificationReducer.d.ts.map +1 -0
- package/dist/reducers/notificationReducer.mjs +21 -0
- package/dist/reducers/notificationReducer.mjs.map +1 -0
- package/dist/scss/common.scss +655 -0
- package/dist/scss/details.scss +376 -0
- package/dist/scss/mixins.scss +1 -1
- package/dist/scss/table.scss +283 -0
- package/dist/types.d.ts +6 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.mjs +89 -45
- package/dist/types.mjs.map +1 -1
- package/dist/utils/chips.util.d.ts +30 -0
- package/dist/utils/chips.util.d.ts.map +1 -0
- package/dist/utils/chips.util.mjs +75 -0
- package/dist/utils/chips.util.mjs.map +1 -0
- package/dist/utils/common.util.d.ts +5 -0
- package/dist/utils/common.util.d.ts.map +1 -1
- package/dist/utils/common.util.mjs +80 -33
- package/dist/utils/common.util.mjs.map +1 -1
- package/dist/utils/datetime.util.d.ts +9 -0
- package/dist/utils/datetime.util.d.ts.map +1 -0
- package/dist/utils/datetime.util.mjs +53 -0
- package/dist/utils/datetime.util.mjs.map +1 -0
- package/dist/utils/filter.util.d.ts +5 -0
- package/dist/utils/filter.util.d.ts.map +1 -0
- package/dist/utils/filter.util.mjs +23 -0
- package/dist/utils/filter.util.mjs.map +1 -0
- package/dist/utils/index.d.ts +5 -0
- package/dist/utils/index.mjs +22 -12
- package/dist/utils/index.mjs.map +1 -1
- package/dist/utils/notification.util.d.ts +2 -0
- package/dist/utils/notification.util.d.ts.map +1 -0
- package/dist/utils/notification.util.mjs +17 -0
- package/dist/utils/notification.util.mjs.map +1 -0
- package/dist/utils/string.util.d.ts +6 -0
- package/dist/utils/string.util.d.ts.map +1 -0
- package/dist/utils/string.util.mjs +13 -0
- package/dist/utils/string.util.mjs.map +1 -0
- package/package.json +11 -1
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export default TableLinkCell;
|
|
2
|
+
declare function TableLinkCell({ cellData, className, item, link, selectItem, selectedItem, showExpandButton, toggleRow }: {
|
|
3
|
+
cellData?: {};
|
|
4
|
+
className?: string;
|
|
5
|
+
item: any;
|
|
6
|
+
link: any;
|
|
7
|
+
selectItem: any;
|
|
8
|
+
selectedItem?: {};
|
|
9
|
+
showExpandButton?: boolean;
|
|
10
|
+
toggleRow?: any;
|
|
11
|
+
}): JSX.Element;
|
|
12
|
+
declare namespace TableLinkCell {
|
|
13
|
+
namespace propTypes {
|
|
14
|
+
let cellData: any;
|
|
15
|
+
let className: any;
|
|
16
|
+
let item: any;
|
|
17
|
+
let link: any;
|
|
18
|
+
let selectItem: any;
|
|
19
|
+
let selectedItem: any;
|
|
20
|
+
let showExpandButton: any;
|
|
21
|
+
let toggleRow: any;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=TableLinkCell.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableLinkCell.d.ts","sourceRoot":"","sources":["../../../src/lib/elements/TableLinkCell/TableLinkCell.jsx"],"names":[],"mappings":";AAkCA;;;;;;;;;gBAgGC"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { jsxs as o, jsx as s } from "react/jsx-runtime";
|
|
2
|
+
import "react";
|
|
3
|
+
import { Link as k } from "react-router-dom";
|
|
4
|
+
import a from "prop-types";
|
|
5
|
+
import u from "classnames";
|
|
6
|
+
import r from "../../components/Tooltip/Tooltip.mjs";
|
|
7
|
+
import i from "../../components/TooltipTemplate/TextTooltipTemplate.mjs";
|
|
8
|
+
import { formatDatetime as N } from "../../utils/datetime.util.mjs";
|
|
9
|
+
import { truncateUid as g } from "../../utils/string.util.mjs";
|
|
10
|
+
import T from "../../images/arrow.svg.mjs";
|
|
11
|
+
/* empty css */
|
|
12
|
+
const C = ({
|
|
13
|
+
cellData: e = {},
|
|
14
|
+
className: b = "",
|
|
15
|
+
item: t,
|
|
16
|
+
link: n,
|
|
17
|
+
selectItem: f,
|
|
18
|
+
selectedItem: m = {},
|
|
19
|
+
showExpandButton: x = !1,
|
|
20
|
+
toggleRow: p = null
|
|
21
|
+
}) => {
|
|
22
|
+
const v = u(
|
|
23
|
+
"table-body__cell",
|
|
24
|
+
e.className,
|
|
25
|
+
b,
|
|
26
|
+
e.bodyCellClassName
|
|
27
|
+
), c = u("item-name"), { value: d, label: l, className: h } = t.state ?? {};
|
|
28
|
+
return /* @__PURE__ */ o("td", { "data-testid": e.headerId, className: v, children: [
|
|
29
|
+
e.linkIsExternal ? /* @__PURE__ */ s("span", { className: "data-ellipsis", children: /* @__PURE__ */ o("a", { href: n, className: "link", target: "blank", children: [
|
|
30
|
+
/* @__PURE__ */ s(
|
|
31
|
+
r,
|
|
32
|
+
{
|
|
33
|
+
className: c,
|
|
34
|
+
template: /* @__PURE__ */ s(i, { text: e.tooltip || e.value || "" }),
|
|
35
|
+
children: e.value
|
|
36
|
+
}
|
|
37
|
+
),
|
|
38
|
+
e.showStatus && d && l && /* @__PURE__ */ s(r, { className: "status", template: /* @__PURE__ */ s(i, { text: l }), children: /* @__PURE__ */ s("i", { className: h }) })
|
|
39
|
+
] }) }) : /* @__PURE__ */ o(k, { to: n, onClick: () => f(t), className: "data-ellipsis", children: [
|
|
40
|
+
/* @__PURE__ */ o("div", { className: "name-wrapper", children: [
|
|
41
|
+
/* @__PURE__ */ o("div", { className: "link", children: [
|
|
42
|
+
/* @__PURE__ */ s(
|
|
43
|
+
r,
|
|
44
|
+
{
|
|
45
|
+
className: c,
|
|
46
|
+
template: /* @__PURE__ */ s(i, { text: e.tooltip || e.value || "" }),
|
|
47
|
+
children: e.value
|
|
48
|
+
}
|
|
49
|
+
),
|
|
50
|
+
e.showStatus && d && l && /* @__PURE__ */ s(r, { className: "status", template: /* @__PURE__ */ s(i, { text: l }), children: /* @__PURE__ */ s("i", { className: h }) })
|
|
51
|
+
] }),
|
|
52
|
+
e.showTag && /* @__PURE__ */ s(r, { className: "item-tag", template: /* @__PURE__ */ s(i, { text: t.tag }), children: /* @__PURE__ */ s("span", { className: "link-subtext", children: t.tag }) })
|
|
53
|
+
] }),
|
|
54
|
+
(e.showUid || e.showSelectedUid && Object.values(m).length !== 0) && /* @__PURE__ */ o("div", { className: "date-uid-row", children: [
|
|
55
|
+
(t.startTime || t.created || t.updated) && e.type !== "date" && (e.showDate || e.showUpdatedDate) && /* @__PURE__ */ s("span", { className: "link-subtext", children: e.showUpdatedDate ? N(t.updated, "N/A") : N(
|
|
56
|
+
t.startTime || t.created,
|
|
57
|
+
d === "aborted" ? "N/A" : "Not yet started"
|
|
58
|
+
) }),
|
|
59
|
+
e.value !== t.uid && e.value !== t.hash && /* @__PURE__ */ s("span", { className: "link-subtext", children: g(t.uid || t.hash) })
|
|
60
|
+
] }),
|
|
61
|
+
e.additionalInfo && Object.values(m).length !== 0 && /* @__PURE__ */ s("span", { className: "link-subtext", children: e.additionalInfo })
|
|
62
|
+
] }),
|
|
63
|
+
x && /* @__PURE__ */ s(
|
|
64
|
+
T,
|
|
65
|
+
{
|
|
66
|
+
onClick: (w) => {
|
|
67
|
+
p && p(w, t);
|
|
68
|
+
},
|
|
69
|
+
className: "expand-arrow"
|
|
70
|
+
}
|
|
71
|
+
)
|
|
72
|
+
] });
|
|
73
|
+
};
|
|
74
|
+
C.propTypes = {
|
|
75
|
+
cellData: a.object,
|
|
76
|
+
className: a.string,
|
|
77
|
+
item: a.object.isRequired,
|
|
78
|
+
link: a.string.isRequired,
|
|
79
|
+
selectItem: a.func.isRequired,
|
|
80
|
+
selectedItem: a.object,
|
|
81
|
+
showExpandButton: a.bool,
|
|
82
|
+
toggleRow: a.func
|
|
83
|
+
};
|
|
84
|
+
export {
|
|
85
|
+
C as default
|
|
86
|
+
};
|
|
87
|
+
//# sourceMappingURL=TableLinkCell.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableLinkCell.mjs","sources":["../../../src/lib/elements/TableLinkCell/TableLinkCell.jsx"],"sourcesContent":["/*\nCopyright 2019 Iguazio Systems Ltd.\n\nLicensed under the Apache License, Version 2.0 (the \"License\") with\nan addition restriction as set forth herein. You may not use this\nfile except in compliance with the License. You may obtain a copy of\nthe License at http://www.apache.org/licenses/LICENSE-2.0.\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\nimplied. See the License for the specific language governing\npermissions and limitations under the License.\n\nIn addition, you may not use the software for any purposes that are\nillegal under applicable law, and the grant of the foregoing license\nunder the Apache 2.0 license is conditioned upon your compliance with\nsuch restriction.\n*/\nimport React from 'react'\nimport { Link } from 'react-router-dom'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\n\nimport Tooltip from '../../components/Tooltip/Tooltip'\nimport TextTooltipTemplate from '../../components/TooltipTemplate/TextTooltipTemplate'\n\nimport { formatDatetime } from '../../utils/datetime.util'\nimport { truncateUid } from '../../utils/string.util'\n\nimport Arrow from '../../images/arrow.svg?react'\n\nimport './tableLinkCell.scss'\n\nconst TableLinkCell = ({\n cellData = {},\n className = '',\n item,\n link,\n selectItem,\n selectedItem = {},\n showExpandButton = false,\n toggleRow = null\n}) => {\n const tableCellClassNames = classnames(\n 'table-body__cell',\n cellData.className,\n className,\n cellData.bodyCellClassName\n )\n const itemNameClassNames = classnames('item-name')\n const { value: stateValue, label: stateLabel, className: stateClassName } = item.state ?? {}\n\n return (\n <td data-testid={cellData.headerId} className={tableCellClassNames}>\n {cellData.linkIsExternal ? (\n <span className=\"data-ellipsis\">\n <a href={link} className=\"link\" target=\"blank\">\n <Tooltip\n className={itemNameClassNames}\n template={<TextTooltipTemplate text={cellData.tooltip || cellData.value || ''} />}\n >\n {cellData.value}\n </Tooltip>\n\n {cellData.showStatus && stateValue && stateLabel && (\n <Tooltip className=\"status\" template={<TextTooltipTemplate text={stateLabel} />}>\n <i className={stateClassName} />\n </Tooltip>\n )}\n </a>\n </span>\n ) : (\n <Link to={link} onClick={() => selectItem(item)} className=\"data-ellipsis\">\n <div className=\"name-wrapper\">\n <div className=\"link\">\n <Tooltip\n className={itemNameClassNames}\n template={<TextTooltipTemplate text={cellData.tooltip || cellData.value || ''} />}\n >\n {cellData.value}\n </Tooltip>\n\n {cellData.showStatus && stateValue && stateLabel && (\n <Tooltip className=\"status\" template={<TextTooltipTemplate text={stateLabel} />}>\n <i className={stateClassName} />\n </Tooltip>\n )}\n </div>\n {cellData.showTag && (\n <Tooltip className=\"item-tag\" template={<TextTooltipTemplate text={item.tag} />}>\n <span className=\"link-subtext\">{item.tag}</span>\n </Tooltip>\n )}\n </div>\n {(cellData.showUid ||\n (cellData.showSelectedUid && Object.values(selectedItem).length !== 0)) && (\n <div className=\"date-uid-row\">\n {(item.startTime || item.created || item.updated) &&\n cellData.type !== 'date' &&\n (cellData.showDate || cellData.showUpdatedDate) && (\n <span className=\"link-subtext\">\n {cellData.showUpdatedDate\n ? formatDatetime(item.updated, 'N/A')\n : formatDatetime(\n item.startTime || item.created,\n stateValue === 'aborted' ? 'N/A' : 'Not yet started'\n )}\n </span>\n )}\n {cellData.value !== item.uid && cellData.value !== item.hash && (\n <span className=\"link-subtext\">{truncateUid(item.uid || item.hash)}</span>\n )}\n </div>\n )}\n {cellData.additionalInfo && Object.values(selectedItem).length !== 0 && (\n <span className=\"link-subtext\">{cellData.additionalInfo}</span>\n )}\n </Link>\n )}\n {showExpandButton && (\n <Arrow\n onClick={e => {\n toggleRow && toggleRow(e, item)\n }}\n className=\"expand-arrow\"\n />\n )}\n </td>\n )\n}\n\nTableLinkCell.propTypes = {\n cellData: PropTypes.object,\n className: PropTypes.string,\n item: PropTypes.object.isRequired,\n link: PropTypes.string.isRequired,\n selectItem: PropTypes.func.isRequired,\n selectedItem: PropTypes.object,\n showExpandButton: PropTypes.bool,\n toggleRow: PropTypes.func\n}\n\nexport default TableLinkCell\n"],"names":["TableLinkCell","cellData","className","item","link","selectItem","selectedItem","showExpandButton","toggleRow","tableCellClassNames","classnames","itemNameClassNames","stateValue","stateLabel","stateClassName","jsx","jsxs","Tooltip","TextTooltipTemplate","Link","formatDatetime","truncateUid","Arrow","e","PropTypes"],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export default TableTypeCell;
|
|
2
|
+
declare function TableTypeCell({ cellData, className }: {
|
|
3
|
+
cellData: any;
|
|
4
|
+
className?: string;
|
|
5
|
+
}): JSX.Element;
|
|
6
|
+
declare namespace TableTypeCell {
|
|
7
|
+
namespace propTypes {
|
|
8
|
+
let cellData: any;
|
|
9
|
+
let className: any;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=TableTypeCell.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableTypeCell.d.ts","sourceRoot":"","sources":["../../../src/lib/elements/TableTypeCell/TableTypeCell.jsx"],"names":[],"mappings":";AA2BA;;;gBAsBC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import "react";
|
|
3
|
+
import p from "prop-types";
|
|
4
|
+
import { capitalize as l } from "lodash";
|
|
5
|
+
import d from "classnames";
|
|
6
|
+
import y from "../../components/Tooltip/Tooltip.mjs";
|
|
7
|
+
import b from "../../components/TooltipTemplate/TextTooltipTemplate.mjs";
|
|
8
|
+
const c = ({ cellData: e, className: i = "" }) => {
|
|
9
|
+
var s, t, r, m;
|
|
10
|
+
const a = d(
|
|
11
|
+
"table-body__cell",
|
|
12
|
+
e.className,
|
|
13
|
+
e.bodyCellClassName,
|
|
14
|
+
i
|
|
15
|
+
);
|
|
16
|
+
return /* @__PURE__ */ o("td", { "data-testid": e.headerId, className: a, children: /* @__PURE__ */ o(
|
|
17
|
+
y,
|
|
18
|
+
{
|
|
19
|
+
className: "table-body__cell_type",
|
|
20
|
+
template: /* @__PURE__ */ o(
|
|
21
|
+
b,
|
|
22
|
+
{
|
|
23
|
+
text: ((t = (s = e.types) == null ? void 0 : s[e.value]) == null ? void 0 : t.label) ?? l(e.value)
|
|
24
|
+
}
|
|
25
|
+
),
|
|
26
|
+
children: ((m = (r = e.types) == null ? void 0 : r[e.value]) == null ? void 0 : m.icon) ?? l(e.value)
|
|
27
|
+
}
|
|
28
|
+
) });
|
|
29
|
+
};
|
|
30
|
+
c.propTypes = {
|
|
31
|
+
cellData: p.object.isRequired,
|
|
32
|
+
className: p.string
|
|
33
|
+
};
|
|
34
|
+
export {
|
|
35
|
+
c as default
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=TableTypeCell.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableTypeCell.mjs","sources":["../../../src/lib/elements/TableTypeCell/TableTypeCell.jsx"],"sourcesContent":["/*\nCopyright 2019 Iguazio Systems Ltd.\n\nLicensed under the Apache License, Version 2.0 (the \"License\") with\nan addition restriction as set forth herein. You may not use this\nfile except in compliance with the License. You may obtain a copy of\nthe License at http://www.apache.org/licenses/LICENSE-2.0.\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\nimplied. See the License for the specific language governing\npermissions and limitations under the License.\n\nIn addition, you may not use the software for any purposes that are\nillegal under applicable law, and the grant of the foregoing license\nunder the Apache 2.0 license is conditioned upon your compliance with\nsuch restriction.\n*/\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport { capitalize } from 'lodash'\nimport classnames from 'classnames'\n\nimport Tooltip from '../../components/Tooltip/Tooltip'\nimport TextTooltipTemplate from '../../components/TooltipTemplate/TextTooltipTemplate'\n\nconst TableTypeCell = ({ cellData, className = '' }) => {\n const cellClassNames = classnames(\n 'table-body__cell',\n cellData.className,\n cellData.bodyCellClassName,\n className\n )\n\n return (\n <td data-testid={cellData.headerId} className={cellClassNames}>\n <Tooltip\n className=\"table-body__cell_type\"\n template={\n <TextTooltipTemplate\n text={cellData.types?.[cellData.value]?.label ?? capitalize(cellData.value)}\n />\n }\n >\n {cellData.types?.[cellData.value]?.icon ?? capitalize(cellData.value)}\n </Tooltip>\n </td>\n )\n}\n\nTableTypeCell.propTypes = {\n cellData: PropTypes.object.isRequired,\n className: PropTypes.string\n}\n\nexport default TableTypeCell\n"],"names":["TableTypeCell","cellData","className","cellClassNames","classnames","jsx","Tooltip","TextTooltipTemplate","_b","_a","capitalize","_d","_c","PropTypes"],"mappings":";;;;;;;AA2BA,MAAMA,IAAgB,CAAC,EAAE,UAAAC,GAAU,WAAAC,IAAY,SAAS;;AACtD,QAAMC,IAAiBC;AAAA,IACrB;AAAA,IACAH,EAAS;AAAA,IACTA,EAAS;AAAA,IACTC;AAAA,EACF;AAEA,2BACG,MAAG,EAAA,eAAaD,EAAS,UAAU,WAAWE,GAC7C,UAAA,gBAAAE;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,WAAU;AAAA,MACV,UACE,gBAAAD;AAAA,QAACE;AAAA,QAAA;AAAA,UACC,QAAMC,KAAAC,IAAAR,EAAS,UAAT,gBAAAQ,EAAiBR,EAAS,WAA1B,gBAAAO,EAAkC,UAASE,EAAWT,EAAS,KAAK;AAAA,QAAA;AAAA,MAC5E;AAAA,MAGD,YAAAU,KAAAC,IAAAX,EAAS,UAAT,gBAAAW,EAAiBX,EAAS,WAA1B,gBAAAU,EAAkC,SAAQD,EAAWT,EAAS,KAAK;AAAA,IAAA;AAAA,EAAA,GAExE;AAEJ;AAEAD,EAAc,YAAY;AAAA,EACxB,UAAUa,EAAU,OAAO;AAAA,EAC3B,WAAWA,EAAU;AACvB;"}
|
package/dist/elements/index.d.ts
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
|
+
import ActionsMenuItem from './ActionsMenuItem/ActionsMenuItem';
|
|
1
2
|
import FormActionButton from './FormActionButton/FormActionButton';
|
|
2
3
|
import FormRowActions from './FormRowActions/FormRowActions';
|
|
3
4
|
import OptionsMenu from './OptionsMenu/OptionsMenu';
|
|
4
5
|
import SelectOption from './SelectOption/SelectOption';
|
|
6
|
+
import TableHead from './TableHead/TableHead';
|
|
7
|
+
import TableLinkCell from './TableLinkCell/TableLinkCell';
|
|
8
|
+
import TableTypeCell from './TableTypeCell/TableTypeCell';
|
|
5
9
|
import ValidationTemplate from './ValidationTemplate/ValidationTemplate';
|
|
6
|
-
export { FormActionButton, FormRowActions, OptionsMenu, SelectOption, ValidationTemplate };
|
|
10
|
+
export { ActionsMenuItem, FormActionButton, FormRowActions, OptionsMenu, SelectOption, TableHead, TableLinkCell, TableTypeCell, ValidationTemplate };
|
|
7
11
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/elements/index.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/elements/index.js"],"names":[],"mappings":"4BAiB4B,mCAAmC;6BAClC,qCAAqC;2BACvC,iCAAiC;wBACpC,2BAA2B;yBAC1B,6BAA6B;sBAChC,uBAAuB;0BACnB,+BAA+B;0BAC/B,+BAA+B;+BAC1B,yCAAyC"}
|
package/dist/elements/index.mjs
CHANGED
|
@@ -1,13 +1,21 @@
|
|
|
1
|
-
import { default as
|
|
2
|
-
import { default as r } from "./
|
|
3
|
-
import { default as
|
|
4
|
-
import { default as p } from "./
|
|
5
|
-
import { default as
|
|
1
|
+
import { default as o } from "./ActionsMenuItem/ActionsMenuItem.mjs";
|
|
2
|
+
import { default as r } from "./FormActionButton/FormActionButton.mjs";
|
|
3
|
+
import { default as f } from "./FormRowActions/FormRowActions.mjs";
|
|
4
|
+
import { default as p } from "./OptionsMenu/OptionsMenu.mjs";
|
|
5
|
+
import { default as u } from "./SelectOption/SelectOption.mjs";
|
|
6
|
+
import { default as n } from "./TableHead/TableHead.mjs";
|
|
7
|
+
import { default as i } from "./TableLinkCell/TableLinkCell.mjs";
|
|
8
|
+
import { default as c } from "./TableTypeCell/TableTypeCell.mjs";
|
|
9
|
+
import { default as A } from "./ValidationTemplate/ValidationTemplate.mjs";
|
|
6
10
|
export {
|
|
7
|
-
|
|
8
|
-
r as
|
|
9
|
-
|
|
10
|
-
p as
|
|
11
|
-
|
|
11
|
+
o as ActionsMenuItem,
|
|
12
|
+
r as FormActionButton,
|
|
13
|
+
f as FormRowActions,
|
|
14
|
+
p as OptionsMenu,
|
|
15
|
+
u as SelectOption,
|
|
16
|
+
n as TableHead,
|
|
17
|
+
i as TableLinkCell,
|
|
18
|
+
c as TableTypeCell,
|
|
19
|
+
A as ValidationTemplate
|
|
12
20
|
};
|
|
13
21
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}
|
package/dist/hooks/index.d.ts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
export { useChipCell } from "./useChipCell.hook";
|
|
2
2
|
export { useDebounce } from "./useDebounce.hook";
|
|
3
|
+
export { useDetails } from "./useDetails.hook";
|
|
4
|
+
export { useDetailsHeader } from "./useDetailsHeader.hook";
|
|
3
5
|
export { useDetectOutsideClick } from "./useDetectOutsideClick.hook";
|
|
4
6
|
export { useFormTable } from "./useFormTable.hook";
|
|
5
7
|
export { useHiddenChipsBlock } from "./useHiddenChipsBlock.hook";
|
|
8
|
+
export { useTable } from "./useTable.hook";
|
|
6
9
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/hooks/index.mjs
CHANGED
|
@@ -1,13 +1,19 @@
|
|
|
1
1
|
import { useChipCell as r } from "./useChipCell.hook.mjs";
|
|
2
|
-
import { useDebounce as
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
2
|
+
import { useDebounce as s } from "./useDebounce.hook.mjs";
|
|
3
|
+
import { useDetails as u } from "./useDetails.hook.mjs";
|
|
4
|
+
import { useDetailsHeader as f } from "./useDetailsHeader.hook.mjs";
|
|
5
|
+
import { useDetectOutsideClick as x } from "./useDetectOutsideClick.hook.mjs";
|
|
6
|
+
import { useFormTable as a } from "./useFormTable.hook.mjs";
|
|
7
|
+
import { useHiddenChipsBlock as d } from "./useHiddenChipsBlock.hook.mjs";
|
|
8
|
+
import { useTable as D } from "./useTable.hook.mjs";
|
|
6
9
|
export {
|
|
7
10
|
r as useChipCell,
|
|
8
|
-
|
|
9
|
-
u as
|
|
10
|
-
f as
|
|
11
|
-
|
|
11
|
+
s as useDebounce,
|
|
12
|
+
u as useDetails,
|
|
13
|
+
f as useDetailsHeader,
|
|
14
|
+
x as useDetectOutsideClick,
|
|
15
|
+
a as useFormTable,
|
|
16
|
+
d as useHiddenChipsBlock,
|
|
17
|
+
D as useTable
|
|
12
18
|
};
|
|
13
19
|
//# sourceMappingURL=index.mjs.map
|
package/dist/hooks/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
export function useDetails({ applyDetailsChanges, applyDetailsChangesCallback, formInitialValues, isDetailsPopUp, isDetailsScreen, selectedItem }: {
|
|
2
|
+
applyDetailsChanges: any;
|
|
3
|
+
applyDetailsChangesCallback: any;
|
|
4
|
+
formInitialValues: any;
|
|
5
|
+
isDetailsPopUp: any;
|
|
6
|
+
isDetailsScreen: any;
|
|
7
|
+
selectedItem: any;
|
|
8
|
+
}): {
|
|
9
|
+
DetailsContainer: {
|
|
10
|
+
({ blocker, detailsMenu, detailsPanelClassNames, detailsPopUpSelectedTab, detailsRef, detailsStore, commonDetailsStore, doNotLeavePage, formRef, isDetailsPopUp, leavePage, params, renderHeader, renderTabsContent, setBlocker, setDetailsPopUpSelectedTab, shouldDetailsBlock, withActionMenu }: {
|
|
11
|
+
blocker: any;
|
|
12
|
+
detailsMenu: any;
|
|
13
|
+
detailsPanelClassNames: any;
|
|
14
|
+
detailsPopUpSelectedTab?: string;
|
|
15
|
+
detailsRef: any;
|
|
16
|
+
detailsStore: any;
|
|
17
|
+
commonDetailsStore: any;
|
|
18
|
+
doNotLeavePage: any;
|
|
19
|
+
formRef: any;
|
|
20
|
+
isDetailsPopUp?: any;
|
|
21
|
+
leavePage: any;
|
|
22
|
+
params: any;
|
|
23
|
+
renderHeader: any;
|
|
24
|
+
renderTabsContent: any;
|
|
25
|
+
setBlocker: any;
|
|
26
|
+
setDetailsPopUpSelectedTab?: any;
|
|
27
|
+
shouldDetailsBlock: any;
|
|
28
|
+
withActionMenu?: boolean;
|
|
29
|
+
}): JSX.Element;
|
|
30
|
+
propTypes: {
|
|
31
|
+
blocker: any;
|
|
32
|
+
detailsMenu: any;
|
|
33
|
+
detailsPanelClassNames: any;
|
|
34
|
+
detailsPopUpSelectedTab: any;
|
|
35
|
+
detailsRef: any;
|
|
36
|
+
detailsStore: any;
|
|
37
|
+
commonDetailsStore: any;
|
|
38
|
+
doNotLeavePage: any;
|
|
39
|
+
formRef: any;
|
|
40
|
+
isDetailsPopUp: any;
|
|
41
|
+
leavePage: any;
|
|
42
|
+
params: any;
|
|
43
|
+
renderHeader: any;
|
|
44
|
+
renderTabsContent: any;
|
|
45
|
+
setBlocker: any;
|
|
46
|
+
setDetailsPopUpSelectedTab: any;
|
|
47
|
+
shouldDetailsBlock: any;
|
|
48
|
+
withActionMenu: any;
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
applyChanges: () => void;
|
|
52
|
+
applyChangesRef: import("react").MutableRefObject<undefined>;
|
|
53
|
+
blocker: {};
|
|
54
|
+
cancelChanges: () => void;
|
|
55
|
+
detailsPanelClassNames: string;
|
|
56
|
+
detailsRef: import("react").MutableRefObject<undefined>;
|
|
57
|
+
commonDetailsStore: any;
|
|
58
|
+
doNotLeavePage: () => void;
|
|
59
|
+
formRef: import("react").MutableRefObject<import("final-form").FormApi<any, Partial<any>>>;
|
|
60
|
+
handleShowWarning: (show: any) => void;
|
|
61
|
+
leavePage: () => void;
|
|
62
|
+
location: any;
|
|
63
|
+
params: any;
|
|
64
|
+
removeDetailsInfo: any;
|
|
65
|
+
setBlocker: import("react").Dispatch<import("react").SetStateAction<{}>>;
|
|
66
|
+
setDetailsInfo: any;
|
|
67
|
+
shouldDetailsBlock: ({ currentLocation, nextLocation }: {
|
|
68
|
+
currentLocation: any;
|
|
69
|
+
nextLocation: any;
|
|
70
|
+
}) => boolean;
|
|
71
|
+
};
|
|
72
|
+
//# sourceMappingURL=useDetails.hook.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDetails.hook.d.ts","sourceRoot":"","sources":["../../src/lib/hooks/useDetails.hook.jsx"],"names":[],"mappings":"AAyIO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqLN"}
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
import { jsx as d, jsxs as W } from "react/jsx-runtime";
|
|
2
|
+
import { useState as G, useRef as w, useMemo as J, useEffect as C, useCallback as l } from "react";
|
|
3
|
+
import r from "prop-types";
|
|
4
|
+
import K from "final-form-arrays";
|
|
5
|
+
import Q from "classnames";
|
|
6
|
+
import { Form as X } from "react-final-form";
|
|
7
|
+
import { isEqual as Z, pickBy as y, cloneDeep as U } from "lodash";
|
|
8
|
+
import { createForm as V } from "final-form";
|
|
9
|
+
import { useDispatch as ee, useSelector as te } from "react-redux";
|
|
10
|
+
import { useParams as ne, useLocation as re } from "react-router-dom";
|
|
11
|
+
import se from "../components/BlockerSpy/BlockerSpy.mjs";
|
|
12
|
+
import oe from "../components/ErrorMessage/ErrorMessage.mjs";
|
|
13
|
+
import ae from "../components/Loader/Loader.mjs";
|
|
14
|
+
import ie from "../components/TabsSlider/TabsSlider.mjs";
|
|
15
|
+
import ce from "../components/ConfirmDialog/ConfirmDialog.mjs";
|
|
16
|
+
import { setDetailsPopUpInfoContent as me, removeDetailsPopUpInfoContent as ue, setInfoContent as de, removeInfoContent as le, resetChanges as j, showWarning as A, setFiltersWasHandled as D, setEditMode as he } from "../reducers/commonDetailsReducer.mjs";
|
|
17
|
+
import { PRIMARY_BUTTON as fe, TERTIARY_BUTTON as pe, VIEW_SEARCH_PARAMETER as x } from "../constants.mjs";
|
|
18
|
+
import { DETAILS_MENU as ge } from "../types.mjs";
|
|
19
|
+
import { setFieldState as Re } from "../utils/form.util.mjs";
|
|
20
|
+
const H = ({
|
|
21
|
+
blocker: p,
|
|
22
|
+
detailsMenu: g,
|
|
23
|
+
detailsPanelClassNames: o,
|
|
24
|
+
detailsPopUpSelectedTab: a = "",
|
|
25
|
+
detailsRef: E,
|
|
26
|
+
detailsStore: h,
|
|
27
|
+
commonDetailsStore: s,
|
|
28
|
+
doNotLeavePage: R,
|
|
29
|
+
formRef: q,
|
|
30
|
+
isDetailsPopUp: t = null,
|
|
31
|
+
leavePage: T,
|
|
32
|
+
params: f,
|
|
33
|
+
renderHeader: n,
|
|
34
|
+
renderTabsContent: c,
|
|
35
|
+
setBlocker: S,
|
|
36
|
+
setDetailsPopUpSelectedTab: b = null,
|
|
37
|
+
shouldDetailsBlock: v,
|
|
38
|
+
withActionMenu: k = !0
|
|
39
|
+
}) => /* @__PURE__ */ d(X, { form: q.current, onSubmit: () => {
|
|
40
|
+
}, children: (i) => /* @__PURE__ */ W("div", { className: o, ref: E, "data-testid": "detailsPanel", children: [
|
|
41
|
+
h.loadingCounter > 0 && /* @__PURE__ */ d(ae, {}),
|
|
42
|
+
h.error && /* @__PURE__ */ d(oe, { message: h.error.message }),
|
|
43
|
+
/* @__PURE__ */ W("div", { className: "item-header-wrapper", children: [
|
|
44
|
+
n(),
|
|
45
|
+
k && /* @__PURE__ */ d(
|
|
46
|
+
ie,
|
|
47
|
+
{
|
|
48
|
+
initialTab: t ? a : f.tab,
|
|
49
|
+
isDetailsPopUp: t,
|
|
50
|
+
onClick: (u) => b && b(u),
|
|
51
|
+
skipLink: t,
|
|
52
|
+
tabsList: g
|
|
53
|
+
}
|
|
54
|
+
)
|
|
55
|
+
] }),
|
|
56
|
+
/* @__PURE__ */ d("div", { className: "item-info", children: c(i) }),
|
|
57
|
+
(p.state === "blocked" || s.showWarning) && /* @__PURE__ */ d(
|
|
58
|
+
ce,
|
|
59
|
+
{
|
|
60
|
+
cancelButton: {
|
|
61
|
+
handler: R,
|
|
62
|
+
label: "Cancel",
|
|
63
|
+
variant: pe
|
|
64
|
+
},
|
|
65
|
+
closePopUp: R,
|
|
66
|
+
confirmButton: {
|
|
67
|
+
handler: T,
|
|
68
|
+
label: "Yes",
|
|
69
|
+
variant: fe
|
|
70
|
+
},
|
|
71
|
+
header: "You have unsaved changes.",
|
|
72
|
+
isOpen: p.state === "blocked" || s.showWarning,
|
|
73
|
+
message: "Do you want to discard the changes?"
|
|
74
|
+
}
|
|
75
|
+
),
|
|
76
|
+
!t && /* @__PURE__ */ d(se, { setBlocker: S, shouldBlock: v })
|
|
77
|
+
] }) });
|
|
78
|
+
H.propTypes = {
|
|
79
|
+
blocker: r.object.isRequired,
|
|
80
|
+
detailsMenu: ge.isRequired,
|
|
81
|
+
detailsPanelClassNames: r.string.isRequired,
|
|
82
|
+
detailsPopUpSelectedTab: r.string,
|
|
83
|
+
detailsRef: r.object.isRequired,
|
|
84
|
+
detailsStore: r.object.isRequired,
|
|
85
|
+
commonDetailsStore: r.object.isRequired,
|
|
86
|
+
doNotLeavePage: r.func.isRequired,
|
|
87
|
+
formRef: r.object.isRequired,
|
|
88
|
+
isDetailsPopUp: r.bool,
|
|
89
|
+
leavePage: r.func.isRequired,
|
|
90
|
+
params: r.object.isRequired,
|
|
91
|
+
renderHeader: r.func.isRequired,
|
|
92
|
+
renderTabsContent: r.func.isRequired,
|
|
93
|
+
setBlocker: r.func.isRequired,
|
|
94
|
+
setDetailsPopUpSelectedTab: r.func,
|
|
95
|
+
shouldDetailsBlock: r.func.isRequired,
|
|
96
|
+
withActionMenu: r.bool
|
|
97
|
+
};
|
|
98
|
+
const De = ({
|
|
99
|
+
applyDetailsChanges: p,
|
|
100
|
+
applyDetailsChangesCallback: g,
|
|
101
|
+
formInitialValues: o,
|
|
102
|
+
isDetailsPopUp: a,
|
|
103
|
+
isDetailsScreen: E,
|
|
104
|
+
selectedItem: h
|
|
105
|
+
}) => {
|
|
106
|
+
const [s, R] = G({}), q = w(), t = ee(), T = w(), f = ne(), n = te((e) => e.commonDetailsStore), c = re(), [S, b] = J(() => a ? [me, ue] : [de, le], [a]), v = w(
|
|
107
|
+
c.pathname.substring(0, c.pathname.lastIndexOf(f.tab))
|
|
108
|
+
), k = Q(
|
|
109
|
+
"table__item",
|
|
110
|
+
n.showWarning && "pop-up-dialog-opened",
|
|
111
|
+
E && "table__item_big",
|
|
112
|
+
a && "table__item-popup"
|
|
113
|
+
), i = w(
|
|
114
|
+
V({
|
|
115
|
+
initialValues: o,
|
|
116
|
+
mutators: { ...K, setFieldState: Re },
|
|
117
|
+
onSubmit: () => {
|
|
118
|
+
}
|
|
119
|
+
})
|
|
120
|
+
);
|
|
121
|
+
C(() => () => {
|
|
122
|
+
a || t(j());
|
|
123
|
+
}, [t, a]);
|
|
124
|
+
const u = l(
|
|
125
|
+
(e) => {
|
|
126
|
+
t(A(e));
|
|
127
|
+
},
|
|
128
|
+
[t]
|
|
129
|
+
), B = l(
|
|
130
|
+
(e) => {
|
|
131
|
+
var m;
|
|
132
|
+
n.changes.counter > 0 && ((m = document.getElementById("refresh")) != null && m.contains(e.target)) && (u(!0), t(D(!0)));
|
|
133
|
+
},
|
|
134
|
+
[n.changes.counter, t, u]
|
|
135
|
+
);
|
|
136
|
+
C(() => (window.addEventListener("click", B), () => {
|
|
137
|
+
window.removeEventListener("click", B);
|
|
138
|
+
}), [B]);
|
|
139
|
+
const I = l(
|
|
140
|
+
({ currentLocation: e, nextLocation: m }) => {
|
|
141
|
+
var M, N;
|
|
142
|
+
const $ = (M = e.search.split(`${x}=`)) == null ? void 0 : M[1], z = (N = m.search.split(`${x}=`)) == null ? void 0 : N[1], P = e.pathname.split("/"), L = m.pathname.split("/");
|
|
143
|
+
return P.pop(), L.pop(), n.changes.counter > 0 && (P.join("/") !== L.join("/") || $ !== z);
|
|
144
|
+
},
|
|
145
|
+
[n.changes.counter]
|
|
146
|
+
);
|
|
147
|
+
C(() => {
|
|
148
|
+
var e, m;
|
|
149
|
+
i.current && n.changes.counter === 0 && !Z(y(o), y((e = i.current.getState()) == null ? void 0 : e.values)) && !((m = i.current.getState()) != null && m.active) && i.current.restart(o);
|
|
150
|
+
}, [o, n.changes.counter]), C(() => {
|
|
151
|
+
const e = c.pathname.substring(
|
|
152
|
+
0,
|
|
153
|
+
c.pathname.lastIndexOf(f.tab)
|
|
154
|
+
);
|
|
155
|
+
v.current !== e && !a && (i.current.restart(o), t(he(!1)), v.current = e);
|
|
156
|
+
}, [t, o, a, c.pathname, f.tab]);
|
|
157
|
+
const O = l(() => {
|
|
158
|
+
p(n.changes).then(() => {
|
|
159
|
+
t(j());
|
|
160
|
+
const e = U(n.changes);
|
|
161
|
+
setTimeout(() => {
|
|
162
|
+
g(e, h);
|
|
163
|
+
});
|
|
164
|
+
});
|
|
165
|
+
}, [
|
|
166
|
+
p,
|
|
167
|
+
g,
|
|
168
|
+
n.changes,
|
|
169
|
+
t,
|
|
170
|
+
h
|
|
171
|
+
]), _ = l(() => {
|
|
172
|
+
n.changes.counter > 0 && (t(j()), i.current.reset(o));
|
|
173
|
+
}, [n.changes.counter, t, o]), F = l(() => {
|
|
174
|
+
var e;
|
|
175
|
+
_(), u(!1), n.filtersWasHandled ? t(D(!1)) : (e = s.proceed) == null || e.call(s), window.dispatchEvent(new CustomEvent("discardChanges"));
|
|
176
|
+
}, [s, _, n.filtersWasHandled, t, u]), Y = l(() => {
|
|
177
|
+
var e;
|
|
178
|
+
(e = s.reset) == null || e.call(s), t(A(!1)), window.dispatchEvent(new CustomEvent("cancelLeave"));
|
|
179
|
+
}, [s, t]);
|
|
180
|
+
return {
|
|
181
|
+
DetailsContainer: H,
|
|
182
|
+
applyChanges: O,
|
|
183
|
+
applyChangesRef: q,
|
|
184
|
+
blocker: s,
|
|
185
|
+
cancelChanges: _,
|
|
186
|
+
detailsPanelClassNames: k,
|
|
187
|
+
detailsRef: T,
|
|
188
|
+
commonDetailsStore: n,
|
|
189
|
+
doNotLeavePage: Y,
|
|
190
|
+
formRef: i,
|
|
191
|
+
handleShowWarning: u,
|
|
192
|
+
leavePage: F,
|
|
193
|
+
location: c,
|
|
194
|
+
params: f,
|
|
195
|
+
removeDetailsInfo: b,
|
|
196
|
+
setBlocker: R,
|
|
197
|
+
setDetailsInfo: S,
|
|
198
|
+
shouldDetailsBlock: I
|
|
199
|
+
};
|
|
200
|
+
};
|
|
201
|
+
export {
|
|
202
|
+
De as useDetails
|
|
203
|
+
};
|
|
204
|
+
//# sourceMappingURL=useDetails.hook.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDetails.hook.mjs","sources":["../../src/lib/hooks/useDetails.hook.jsx"],"sourcesContent":["/*\nCopyright 2019 Iguazio Systems Ltd.\n\nLicensed under the Apache License, Version 2.0 (the \"License\") with\nan addition restriction as set forth herein. You may not use this\nfile except in compliance with the License. You may obtain a copy of\nthe License at http://www.apache.org/licenses/LICENSE-2.0.\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\nimplied. See the License for the specific language governing\npermissions and limitations under the License.\n\nIn addition, you may not use the software for any purposes that are\nillegal under applicable law, and the grant of the foregoing license\nunder the Apache 2.0 license is conditioned upon your compliance with\nsuch restriction.\n*/\nimport React, { useCallback, useEffect, useMemo, useRef, useState } from 'react'\nimport PropTypes from 'prop-types'\nimport arrayMutators from 'final-form-arrays'\nimport classnames from 'classnames'\nimport { Form } from 'react-final-form'\nimport { cloneDeep, isEqual, pickBy } from 'lodash'\nimport { createForm } from 'final-form'\nimport { useDispatch, useSelector } from 'react-redux'\nimport { useLocation, useParams } from 'react-router-dom'\n\nimport BlockerSpy from '../components/BlockerSpy/BlockerSpy'\nimport ErrorMessage from '../components/ErrorMessage/ErrorMessage'\nimport Loader from '../components/Loader/Loader'\nimport TabsSlider from '../components/TabsSlider/TabsSlider'\nimport ConfirmDialog from '../components/ConfirmDialog/ConfirmDialog'\n\nimport {\n removeDetailsPopUpInfoContent,\n removeInfoContent,\n resetChanges,\n setDetailsPopUpInfoContent,\n setEditMode,\n setFiltersWasHandled,\n setInfoContent,\n showWarning\n} from '../reducers/commonDetailsReducer'\nimport { PRIMARY_BUTTON, TERTIARY_BUTTON } from '../constants'\nimport { VIEW_SEARCH_PARAMETER } from '../constants'\nimport { DETAILS_MENU } from '../types'\nimport { setFieldState } from '../utils/form.util'\n\nconst DetailsContainer = ({\n blocker,\n detailsMenu,\n detailsPanelClassNames,\n detailsPopUpSelectedTab = '',\n detailsRef,\n detailsStore,\n commonDetailsStore,\n doNotLeavePage,\n formRef,\n isDetailsPopUp = null,\n leavePage,\n params,\n renderHeader,\n renderTabsContent,\n setBlocker,\n setDetailsPopUpSelectedTab = null,\n shouldDetailsBlock,\n withActionMenu = true\n}) => {\n return (\n <Form form={formRef.current} onSubmit={() => {}}>\n {formState => (\n <div className={detailsPanelClassNames} ref={detailsRef} data-testid=\"detailsPanel\">\n {detailsStore.loadingCounter > 0 && <Loader />}\n {detailsStore.error && <ErrorMessage message={detailsStore.error.message} />}\n <div className=\"item-header-wrapper\">\n {renderHeader()}\n {withActionMenu && (\n <TabsSlider\n initialTab={isDetailsPopUp ? detailsPopUpSelectedTab : params.tab}\n isDetailsPopUp={isDetailsPopUp}\n onClick={newTab => setDetailsPopUpSelectedTab && setDetailsPopUpSelectedTab(newTab)}\n skipLink={isDetailsPopUp}\n tabsList={detailsMenu}\n />\n )}\n </div>\n <div className=\"item-info\">{renderTabsContent(formState)}</div>\n {(blocker.state === 'blocked' || commonDetailsStore.showWarning) && (\n <ConfirmDialog\n cancelButton={{\n handler: doNotLeavePage,\n label: 'Cancel',\n variant: TERTIARY_BUTTON\n }}\n closePopUp={doNotLeavePage}\n confirmButton={{\n handler: leavePage,\n label: 'Yes',\n variant: PRIMARY_BUTTON\n }}\n header=\"You have unsaved changes.\"\n isOpen={blocker.state === 'blocked' || commonDetailsStore.showWarning}\n message=\"Do you want to discard the changes?\"\n />\n )}\n {!isDetailsPopUp && (\n <BlockerSpy setBlocker={setBlocker} shouldBlock={shouldDetailsBlock} />\n )}\n </div>\n )}\n </Form>\n )\n}\n\nDetailsContainer.propTypes = {\n blocker: PropTypes.object.isRequired,\n detailsMenu: DETAILS_MENU.isRequired,\n detailsPanelClassNames: PropTypes.string.isRequired,\n detailsPopUpSelectedTab: PropTypes.string,\n detailsRef: PropTypes.object.isRequired,\n detailsStore: PropTypes.object.isRequired,\n commonDetailsStore: PropTypes.object.isRequired,\n doNotLeavePage: PropTypes.func.isRequired,\n formRef: PropTypes.object.isRequired,\n isDetailsPopUp: PropTypes.bool,\n leavePage: PropTypes.func.isRequired,\n params: PropTypes.object.isRequired,\n renderHeader: PropTypes.func.isRequired,\n renderTabsContent: PropTypes.func.isRequired,\n setBlocker: PropTypes.func.isRequired,\n setDetailsPopUpSelectedTab: PropTypes.func,\n shouldDetailsBlock: PropTypes.func.isRequired,\n withActionMenu: PropTypes.bool\n}\n\nexport const useDetails = ({\n applyDetailsChanges,\n applyDetailsChangesCallback,\n formInitialValues,\n isDetailsPopUp,\n isDetailsScreen,\n selectedItem\n}) => {\n const [blocker, setBlocker] = useState({})\n const applyChangesRef = useRef()\n const dispatch = useDispatch()\n const detailsRef = useRef()\n const params = useParams()\n const commonDetailsStore = useSelector(store => store.commonDetailsStore)\n const location = useLocation()\n const [setDetailsInfo, removeDetailsInfo] = useMemo(() => {\n return isDetailsPopUp\n ? [setDetailsPopUpInfoContent, removeDetailsPopUpInfoContent]\n : [setInfoContent, removeInfoContent]\n }, [isDetailsPopUp])\n const previousPathnameRef = useRef(\n location.pathname.substring(0, location.pathname.lastIndexOf(params.tab))\n )\n const detailsPanelClassNames = classnames(\n 'table__item',\n commonDetailsStore.showWarning && 'pop-up-dialog-opened',\n isDetailsScreen && 'table__item_big',\n isDetailsPopUp && 'table__item-popup'\n )\n\n const formRef = useRef(\n createForm({\n initialValues: formInitialValues,\n mutators: { ...arrayMutators, setFieldState },\n onSubmit: () => {}\n })\n )\n\n useEffect(() => {\n return () => {\n if (!isDetailsPopUp) {\n dispatch(resetChanges())\n }\n }\n }, [dispatch, isDetailsPopUp])\n\n const handleShowWarning = useCallback(\n show => {\n dispatch(showWarning(show))\n },\n [dispatch]\n )\n\n const handleRefreshClick = useCallback(\n event => {\n if (\n commonDetailsStore.changes.counter > 0 &&\n document.getElementById('refresh')?.contains(event.target)\n ) {\n handleShowWarning(true)\n dispatch(setFiltersWasHandled(true))\n }\n },\n [commonDetailsStore.changes.counter, dispatch, handleShowWarning]\n )\n\n useEffect(() => {\n window.addEventListener('click', handleRefreshClick)\n\n return () => {\n window.removeEventListener('click', handleRefreshClick)\n }\n }, [handleRefreshClick])\n\n const shouldDetailsBlock = useCallback(\n ({ currentLocation, nextLocation }) => {\n const currentDetailsView = currentLocation.search.split(`${VIEW_SEARCH_PARAMETER}=`)?.[1]\n const nextDetailsView = nextLocation.search.split(`${VIEW_SEARCH_PARAMETER}=`)?.[1]\n const currentLocationPathname = currentLocation.pathname.split('/')\n const nextLocationPathname = nextLocation.pathname.split('/')\n currentLocationPathname.pop()\n nextLocationPathname.pop()\n\n return (\n commonDetailsStore.changes.counter > 0 &&\n (currentLocationPathname.join('/') !== nextLocationPathname.join('/') ||\n currentDetailsView !== nextDetailsView)\n )\n },\n [commonDetailsStore.changes.counter]\n )\n\n useEffect(() => {\n if (\n formRef.current &&\n commonDetailsStore.changes.counter === 0 &&\n !isEqual(pickBy(formInitialValues), pickBy(formRef.current.getState()?.values)) &&\n !formRef.current.getState()?.active\n ) {\n formRef.current.restart(formInitialValues)\n }\n }, [formInitialValues, commonDetailsStore.changes.counter])\n\n useEffect(() => {\n const currentPathname = location.pathname.substring(\n 0,\n location.pathname.lastIndexOf(params.tab)\n )\n\n if (previousPathnameRef.current !== currentPathname && !isDetailsPopUp) {\n formRef.current.restart(formInitialValues)\n dispatch(setEditMode(false))\n previousPathnameRef.current = currentPathname\n }\n }, [dispatch, formInitialValues, isDetailsPopUp, location.pathname, params.tab])\n\n const applyChanges = useCallback(() => {\n applyDetailsChanges(commonDetailsStore.changes).then(() => {\n dispatch(resetChanges())\n\n const changes = cloneDeep(commonDetailsStore.changes)\n\n // todo [redux-toolkit] rework it after redux-toolkit will be added to the details store. Need to remove setTimeout and use a Promise that resolves after the state is updated.\n setTimeout(() => {\n applyDetailsChangesCallback(changes, selectedItem)\n })\n })\n }, [\n applyDetailsChanges,\n applyDetailsChangesCallback,\n commonDetailsStore.changes,\n dispatch,\n selectedItem\n ])\n\n const cancelChanges = useCallback(() => {\n if (commonDetailsStore.changes.counter > 0) {\n dispatch(resetChanges())\n formRef.current.reset(formInitialValues)\n }\n }, [commonDetailsStore.changes.counter, dispatch, formInitialValues])\n\n const leavePage = useCallback(() => {\n cancelChanges()\n handleShowWarning(false)\n\n if (commonDetailsStore.filtersWasHandled) {\n dispatch(setFiltersWasHandled(false))\n } else {\n blocker.proceed?.()\n }\n\n window.dispatchEvent(new CustomEvent('discardChanges'))\n }, [blocker, cancelChanges, commonDetailsStore.filtersWasHandled, dispatch, handleShowWarning])\n\n const doNotLeavePage = useCallback(() => {\n blocker.reset?.()\n dispatch(showWarning(false))\n window.dispatchEvent(new CustomEvent('cancelLeave'))\n }, [blocker, dispatch])\n\n return {\n DetailsContainer,\n applyChanges,\n applyChangesRef,\n blocker,\n cancelChanges,\n detailsPanelClassNames,\n detailsRef,\n commonDetailsStore,\n doNotLeavePage,\n formRef,\n handleShowWarning,\n leavePage,\n location,\n params,\n removeDetailsInfo,\n setBlocker,\n setDetailsInfo,\n shouldDetailsBlock\n }\n}\n"],"names":["DetailsContainer","blocker","detailsMenu","detailsPanelClassNames","detailsPopUpSelectedTab","detailsRef","detailsStore","commonDetailsStore","doNotLeavePage","formRef","isDetailsPopUp","leavePage","params","renderHeader","renderTabsContent","setBlocker","setDetailsPopUpSelectedTab","shouldDetailsBlock","withActionMenu","Form","jsxs","jsx","Loader","ErrorMessage","TabsSlider","newTab","formState","ConfirmDialog","TERTIARY_BUTTON","PRIMARY_BUTTON","BlockerSpy","PropTypes","DETAILS_MENU","useDetails","applyDetailsChanges","applyDetailsChangesCallback","formInitialValues","isDetailsScreen","selectedItem","useState","applyChangesRef","useRef","dispatch","useDispatch","useParams","useSelector","store","location","useLocation","setDetailsInfo","removeDetailsInfo","useMemo","setDetailsPopUpInfoContent","removeDetailsPopUpInfoContent","setInfoContent","removeInfoContent","previousPathnameRef","classnames","createForm","arrayMutators","setFieldState","useEffect","resetChanges","handleShowWarning","useCallback","show","showWarning","handleRefreshClick","event","_a","setFiltersWasHandled","currentLocation","nextLocation","currentDetailsView","VIEW_SEARCH_PARAMETER","nextDetailsView","_b","currentLocationPathname","nextLocationPathname","isEqual","pickBy","currentPathname","setEditMode","applyChanges","changes","cloneDeep","cancelChanges"],"mappings":"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"}
|