@dexteel/mesf-core 4.10.0 → 4.10.2
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/CHANGELOG.md +7 -0
- package/dist/index.esm.js +310 -77
- package/dist/index.esm.js.map +1 -1
- package/dist/pages/trendings/components/chart/components/modals/tagsTreeModal/ContextMenu/ContextMenu.d.ts +15 -0
- package/dist/pages/trendings/components/chart/components/modals/tagsTreeModal/ContextMenu/NewFolder/NewFolder.d.ts +10 -0
- package/dist/pages/trendings/components/chart/components/modals/tagsTreeModal/ContextMenu/RemoveFolder/RemoveFolder.d.ts +10 -0
- package/dist/pages/trendings/components/chart/components/modals/tagsTreeModal/TagFolderCustomNode.d.ts +1 -0
- package/dist/pages/trendings/components/chart/components/modals/tagsTreeModal/TagSelectionModal.d.ts +4 -4
- package/dist/pages/trendings/components/chart/models/TrendingModels.d.ts +1 -1
- package/dist/pages/trendings/components/chart/repository/TrendingRepository.d.ts +1 -0
- package/package.json +1 -1
- package/dist/pages/trendings/components/chart/components/modals/tagsTreeModal/NewTagSelectionModal.d.ts +0 -9
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
# CHANGELOG
|
|
2
|
+
## 4.10.2
|
|
3
|
+
- Trending: Fix root of tags tree
|
|
4
|
+
- Trending: When no view detected, the Save View and Save View As work propertly and you can create the first view. Also the unit param was added to the Save View Modal
|
|
5
|
+
- Trending: Fix the Digital/Analog icon of the view tags. Also fixed when add a new tag from the tree
|
|
6
|
+
- Trending: The tag can be selected once for the view tags table
|
|
7
|
+
## 4.10.1
|
|
8
|
+
- Trending: Fix some bugs
|
|
2
9
|
## 4.10.0
|
|
3
10
|
- Forms: Remove forms from mesf-core-frontend
|
|
4
11
|
## 4.9.0
|
package/dist/index.esm.js
CHANGED
|
@@ -8674,6 +8674,50 @@ var getTagsTree = function () { return __awaiter(void 0, void 0, void 0, functio
|
|
|
8674
8674
|
}
|
|
8675
8675
|
});
|
|
8676
8676
|
}); };
|
|
8677
|
+
var deleteTagFolder = function (TagFolderId) { return __awaiter(void 0, void 0, void 0, function () {
|
|
8678
|
+
var apiService, parameters, backendOffset, resp;
|
|
8679
|
+
return __generator(this, function (_a) {
|
|
8680
|
+
switch (_a.label) {
|
|
8681
|
+
case 0:
|
|
8682
|
+
apiService = new MESApiService();
|
|
8683
|
+
parameters = [];
|
|
8684
|
+
backendOffset = 1000000;
|
|
8685
|
+
if (TagFolderId && TagFolderId > backendOffset) {
|
|
8686
|
+
TagFolderId = TagFolderId - backendOffset;
|
|
8687
|
+
}
|
|
8688
|
+
parameters.push({ name: "TagFolderId", value: TagFolderId });
|
|
8689
|
+
return [4 /*yield*/, apiService.callV2(getIhPath() + ".[DeleteTagFolder]", parameters)];
|
|
8690
|
+
case 1:
|
|
8691
|
+
resp = _a.sent();
|
|
8692
|
+
return [2 /*return*/, resp];
|
|
8693
|
+
}
|
|
8694
|
+
});
|
|
8695
|
+
}); };
|
|
8696
|
+
var upsertTagFolder = function (TagFolderId, ParentTagFolderId, TagFolderName, IsActive) { return __awaiter(void 0, void 0, void 0, function () {
|
|
8697
|
+
var apiService, parameters, backendOffset, resp;
|
|
8698
|
+
return __generator(this, function (_a) {
|
|
8699
|
+
switch (_a.label) {
|
|
8700
|
+
case 0:
|
|
8701
|
+
apiService = new MESApiService();
|
|
8702
|
+
parameters = [];
|
|
8703
|
+
backendOffset = 1000000;
|
|
8704
|
+
if (TagFolderId && TagFolderId > backendOffset) {
|
|
8705
|
+
TagFolderId = TagFolderId - backendOffset;
|
|
8706
|
+
}
|
|
8707
|
+
if (ParentTagFolderId && ParentTagFolderId > backendOffset) {
|
|
8708
|
+
ParentTagFolderId = ParentTagFolderId - backendOffset;
|
|
8709
|
+
}
|
|
8710
|
+
parameters.push({ name: "TagFolderId", value: TagFolderId });
|
|
8711
|
+
parameters.push({ name: "ParentTagFolderId", value: ParentTagFolderId });
|
|
8712
|
+
parameters.push({ name: "TagFolderName", value: TagFolderName });
|
|
8713
|
+
parameters.push({ name: "IsActive", value: IsActive });
|
|
8714
|
+
return [4 /*yield*/, apiService.callV2(getIhPath() + ".[UpsertTagFolder]", parameters)];
|
|
8715
|
+
case 1:
|
|
8716
|
+
resp = _a.sent();
|
|
8717
|
+
return [2 /*return*/, resp];
|
|
8718
|
+
}
|
|
8719
|
+
});
|
|
8720
|
+
}); };
|
|
8677
8721
|
var changeTagFolderToTag = function (TagId, TagFolderId) { return __awaiter(void 0, void 0, void 0, function () {
|
|
8678
8722
|
var apiService, parameters, backendOffset, resp;
|
|
8679
8723
|
return __generator(this, function (_a) {
|
|
@@ -8873,13 +8917,14 @@ var useTagsTreeModalStyles = makeStyles$1(function (theme) { return ({
|
|
|
8873
8917
|
fontSize: "14px",
|
|
8874
8918
|
backgroundColor: "#fff",
|
|
8875
8919
|
borderRadius: "2px",
|
|
8876
|
-
padding: "5px
|
|
8877
|
-
width: "
|
|
8920
|
+
padding: "5px 10px;",
|
|
8921
|
+
width: "140px",
|
|
8878
8922
|
height: "auto",
|
|
8879
8923
|
margin: "0",
|
|
8880
8924
|
position: "fixed",
|
|
8881
|
-
|
|
8882
|
-
|
|
8925
|
+
boxShadow: "0 0 20px 0 #ccc",
|
|
8926
|
+
display: "flex",
|
|
8927
|
+
flexDirection: "column"
|
|
8883
8928
|
},
|
|
8884
8929
|
storyRoot: {
|
|
8885
8930
|
display: "grid",
|
|
@@ -8947,13 +8992,14 @@ var CustomDragPreview = function (props) {
|
|
|
8947
8992
|
|
|
8948
8993
|
var customStyles = "\n ul, ol {\n list-style-type: none;\n margin: 0;\n padding: 0;\n }\n";
|
|
8949
8994
|
var TagFolderCustomNode = function (_a) {
|
|
8950
|
-
var _b, _c, _d, _e, _f, _g, _h;
|
|
8951
|
-
var node = _a.node,
|
|
8995
|
+
var _b, _c, _d, _e, _f, _g, _h, _j;
|
|
8996
|
+
var node = _a.node, _k = _a.options, depth = _k.depth, isOpen = _k.isOpen, onToggle = _k.onToggle, containerRef = _k.containerRef, options = _a.options, setOpenTagFolders = _a.setOpenTagFolders, openTagFolders = _a.openTagFolders, handleSelect = _a.handleSelect, setContextMenuOver = _a.setContextMenuOver, isSelected = _a.isSelected;
|
|
8952
8997
|
var classes = useTagsTreeModalStyles();
|
|
8953
8998
|
var nodeClasses = "".concat(classes.customNodeRoot, " ").concat(classes.root, " ").concat(isSelected ? classes.selected : "");
|
|
8954
8999
|
var onClickHandler = function () {
|
|
8955
9000
|
var _a;
|
|
8956
|
-
|
|
9001
|
+
var _b;
|
|
9002
|
+
if (options.hasChild || ((_b = node.data) === null || _b === void 0 ? void 0 : _b.TagTypeCode) === 'F') {
|
|
8957
9003
|
if (openTagFolders[node.id]) {
|
|
8958
9004
|
var newOpenTagFolders = __assign({}, openTagFolders);
|
|
8959
9005
|
delete newOpenTagFolders[node.id];
|
|
@@ -8969,81 +9015,256 @@ var TagFolderCustomNode = function (_a) {
|
|
|
8969
9015
|
handleSelect(node);
|
|
8970
9016
|
}
|
|
8971
9017
|
};
|
|
9018
|
+
var handleContextMenu = useCallback(function (ev) {
|
|
9019
|
+
ev.stopPropagation();
|
|
9020
|
+
ev.preventDefault();
|
|
9021
|
+
setContextMenuOver(node, ev);
|
|
9022
|
+
}, [node.id, setContextMenuOver]);
|
|
9023
|
+
useEffect(function () {
|
|
9024
|
+
var _a;
|
|
9025
|
+
(_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.addEventListener("contextmenu", handleContextMenu);
|
|
9026
|
+
return function () {
|
|
9027
|
+
var _a;
|
|
9028
|
+
(_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.removeEventListener("contextmenu", handleContextMenu);
|
|
9029
|
+
};
|
|
9030
|
+
}, []);
|
|
8972
9031
|
return (React__default.createElement("div", { className: nodeClasses, onClick: onClickHandler, style: { paddingLeft: depth * 20, cursor: "pointer" } },
|
|
8973
9032
|
React__default.createElement("style", null, customStyles),
|
|
8974
9033
|
React__default.createElement(React__default.Fragment, null,
|
|
8975
9034
|
options.hasChild ? (React__default.createElement("div", null, isOpen ? React__default.createElement(ArrowDropDownIcon, null) : React__default.createElement(ArrowRight, null)))
|
|
8976
9035
|
: null,
|
|
8977
|
-
React__default.createElement("div", null, options.hasChild ? (React__default.createElement(FolderIcon, null)) : (React__default.createElement(InsertChartIcon, { fontSize: 'small' })))),
|
|
8978
|
-
((
|
|
9036
|
+
React__default.createElement("div", null, options.hasChild || ((_b = node.data) === null || _b === void 0 ? void 0 : _b.TagTypeCode) === 'F' ? (React__default.createElement(FolderIcon, null)) : (React__default.createElement(InsertChartIcon, { fontSize: 'small' })))),
|
|
9037
|
+
((_c = node.data) === null || _c === void 0 ? void 0 : _c.TagName) &&
|
|
8979
9038
|
React__default.createElement(React__default.Fragment, null,
|
|
8980
|
-
((
|
|
8981
|
-
backgroundColor: ((
|
|
9039
|
+
((_d = node.data) === null || _d === void 0 ? void 0 : _d.TagTypeCode) && ((_e = node.data) === null || _e === void 0 ? void 0 : _e.TagTypeCode) !== 'F' && (React__default.createElement("div", { className: classes.dataTypeOfTree, style: {
|
|
9040
|
+
backgroundColor: ((_f = node.data) === null || _f === void 0 ? void 0 : _f.TagTypeCode) === 'A' ? 'blue' : 'red',
|
|
8982
9041
|
margin: "0 5px"
|
|
8983
|
-
} }, (
|
|
9042
|
+
} }, (_g = node.data) === null || _g === void 0 ? void 0 : _g.TagTypeCode)),
|
|
8984
9043
|
React__default.createElement(Tooltip, { title: node.data.TagName, placement: "top", arrow: true },
|
|
8985
|
-
React__default.createElement(Typography, { variant: "body2" }, ((
|
|
9044
|
+
React__default.createElement(Typography, { variant: "body2" }, ((_h = node.data) === null || _h === void 0 ? void 0 : _h.Alias) || ((_j = node.data) === null || _j === void 0 ? void 0 : _j.TagName))))));
|
|
9045
|
+
};
|
|
9046
|
+
|
|
9047
|
+
var ButtonWithLoading = function (_a) {
|
|
9048
|
+
var children = _a.children, isLoading = _a.isLoading, props = __rest(_a, ["children", "isLoading"]);
|
|
9049
|
+
return (React__default.createElement(Button$1, __assign({}, props, { disabled: isLoading }),
|
|
9050
|
+
isLoading && React__default.createElement(CircularProgress$1, { size: "1rem" }),
|
|
9051
|
+
children));
|
|
9052
|
+
};
|
|
9053
|
+
|
|
9054
|
+
var NewFolderModal = function (_a) {
|
|
9055
|
+
var open = _a.open, handleClose = _a.handleClose, tagNodeSelectedInTree = _a.tagNodeSelectedInTree;
|
|
9056
|
+
var _b = useState(), name = _b[0], setName = _b[1];
|
|
9057
|
+
var _c = useState(''), error = _c[0], setError = _c[1];
|
|
9058
|
+
var _d = useState(false), isLoading = _d[0], setIsLoading = _d[1];
|
|
9059
|
+
var onSubmit = function (e) { return __awaiter(void 0, void 0, void 0, function () {
|
|
9060
|
+
var parentId, parentTagId, resp;
|
|
9061
|
+
var _a;
|
|
9062
|
+
return __generator(this, function (_b) {
|
|
9063
|
+
switch (_b.label) {
|
|
9064
|
+
case 0:
|
|
9065
|
+
e.preventDefault();
|
|
9066
|
+
parentId = Number(tagNodeSelectedInTree === null || tagNodeSelectedInTree === void 0 ? void 0 : tagNodeSelectedInTree.parent) || null;
|
|
9067
|
+
parentTagId = ((_a = tagNodeSelectedInTree === null || tagNodeSelectedInTree === void 0 ? void 0 : tagNodeSelectedInTree.data) === null || _a === void 0 ? void 0 : _a.TagTypeCode) === "F" ? Number(tagNodeSelectedInTree.id) : parentId;
|
|
9068
|
+
setIsLoading(true);
|
|
9069
|
+
if (!name) return [3 /*break*/, 2];
|
|
9070
|
+
return [4 /*yield*/, upsertTagFolder(null, parentTagId, name, true)];
|
|
9071
|
+
case 1:
|
|
9072
|
+
resp = _b.sent();
|
|
9073
|
+
if (!resp.ok) {
|
|
9074
|
+
setError(resp.message);
|
|
9075
|
+
}
|
|
9076
|
+
_b.label = 2;
|
|
9077
|
+
case 2:
|
|
9078
|
+
handleClose(true);
|
|
9079
|
+
setName('');
|
|
9080
|
+
setIsLoading(false);
|
|
9081
|
+
return [2 /*return*/];
|
|
9082
|
+
}
|
|
9083
|
+
});
|
|
9084
|
+
}); };
|
|
9085
|
+
return (React__default.createElement(React__default.Fragment, null,
|
|
9086
|
+
React__default.createElement(MesfModal, { open: open, handleClose: function () { return handleClose(false); }, maxWidth: "lg", "aria-labelledby": "modal-modal-title", "aria-describedby": "modal-modal-description", title: 'New folder' },
|
|
9087
|
+
React__default.createElement(MesfModal.Content, null,
|
|
9088
|
+
React__default.createElement(Box, null,
|
|
9089
|
+
React__default.createElement(TextField, { style: { minWidth: "600px" }, id: "outlined-basic", label: "Folder name", variant: "outlined", value: name, onChange: (function (e) { return setName(e.target.value); }) }))),
|
|
9090
|
+
React__default.createElement(MesfModal.Actions, null,
|
|
9091
|
+
React__default.createElement("div", null,
|
|
9092
|
+
React__default.createElement(Button$1, { color: 'secondary', variant: 'outlined', onClick: function () { return handleClose(false); } }, "Cancel")),
|
|
9093
|
+
React__default.createElement("div", null,
|
|
9094
|
+
React__default.createElement(ButtonWithLoading, { isLoading: isLoading, onClick: onSubmit, color: 'primary', variant: 'contained' }, "Save")))),
|
|
9095
|
+
React__default.createElement(ErrorModal, { error: error, onHide: function () { return setError(''); } })));
|
|
9096
|
+
};
|
|
9097
|
+
|
|
9098
|
+
var RemoveFolderModal = function (_a) {
|
|
9099
|
+
var open = _a.open, handleClose = _a.handleClose, tagNodeSelectedInTree = _a.tagNodeSelectedInTree;
|
|
9100
|
+
var _b = useState(''), error = _b[0], setError = _b[1];
|
|
9101
|
+
var _c = useState(false), isLoading = _c[0], setIsLoading = _c[1];
|
|
9102
|
+
var onSubmit = function (e) { return __awaiter(void 0, void 0, void 0, function () {
|
|
9103
|
+
var parentId, name_1, id, resp;
|
|
9104
|
+
return __generator(this, function (_a) {
|
|
9105
|
+
switch (_a.label) {
|
|
9106
|
+
case 0:
|
|
9107
|
+
e.preventDefault();
|
|
9108
|
+
if (!tagNodeSelectedInTree) return [3 /*break*/, 5];
|
|
9109
|
+
parentId = Number(tagNodeSelectedInTree === null || tagNodeSelectedInTree === void 0 ? void 0 : tagNodeSelectedInTree.parent) || null;
|
|
9110
|
+
name_1 = tagNodeSelectedInTree === null || tagNodeSelectedInTree === void 0 ? void 0 : tagNodeSelectedInTree.text;
|
|
9111
|
+
id = Number(tagNodeSelectedInTree === null || tagNodeSelectedInTree === void 0 ? void 0 : tagNodeSelectedInTree.id);
|
|
9112
|
+
resp = void 0;
|
|
9113
|
+
setIsLoading(true);
|
|
9114
|
+
if (!parentId) return [3 /*break*/, 2];
|
|
9115
|
+
return [4 /*yield*/, deleteTagFolder(id)];
|
|
9116
|
+
case 1:
|
|
9117
|
+
resp = _a.sent();
|
|
9118
|
+
if (!resp.ok) {
|
|
9119
|
+
setError(resp.message);
|
|
9120
|
+
}
|
|
9121
|
+
return [3 /*break*/, 4];
|
|
9122
|
+
case 2: return [4 /*yield*/, upsertTagFolder(id, parentId, name_1, false)];
|
|
9123
|
+
case 3:
|
|
9124
|
+
resp = _a.sent();
|
|
9125
|
+
_a.label = 4;
|
|
9126
|
+
case 4:
|
|
9127
|
+
if (!resp.ok) {
|
|
9128
|
+
setError(resp.message);
|
|
9129
|
+
}
|
|
9130
|
+
_a.label = 5;
|
|
9131
|
+
case 5:
|
|
9132
|
+
handleClose(true);
|
|
9133
|
+
setIsLoading(false);
|
|
9134
|
+
return [2 /*return*/];
|
|
9135
|
+
}
|
|
9136
|
+
});
|
|
9137
|
+
}); };
|
|
9138
|
+
return (React__default.createElement(React__default.Fragment, null,
|
|
9139
|
+
React__default.createElement(MesfModal, { open: open, handleClose: function () { return handleClose(false); }, maxWidth: "lg", "aria-labelledby": "modal-modal-title", "aria-describedby": "modal-modal-description", title: 'Remove Folder' },
|
|
9140
|
+
React__default.createElement(MesfModal.Content, null,
|
|
9141
|
+
React__default.createElement(Box, null,
|
|
9142
|
+
React__default.createElement(Typography, null,
|
|
9143
|
+
"Are you sure you want to remove ",
|
|
9144
|
+
React__default.createElement("strong", null, tagNodeSelectedInTree === null || tagNodeSelectedInTree === void 0 ? void 0 : tagNodeSelectedInTree.text),
|
|
9145
|
+
" folder?"))),
|
|
9146
|
+
React__default.createElement(MesfModal.Actions, null,
|
|
9147
|
+
React__default.createElement("div", null,
|
|
9148
|
+
React__default.createElement(Button$1, { color: 'secondary', variant: 'outlined', onClick: function () { return handleClose(false); } }, "Cancel")),
|
|
9149
|
+
React__default.createElement("div", null,
|
|
9150
|
+
React__default.createElement(ButtonWithLoading, { isLoading: isLoading, onClick: onSubmit, color: 'primary', variant: 'contained' }, "Remove")))),
|
|
9151
|
+
React__default.createElement(ErrorModal, { error: error, onHide: function () { return setError(''); } })));
|
|
9152
|
+
};
|
|
9153
|
+
|
|
9154
|
+
var ContextMenu = function (_a) {
|
|
9155
|
+
var _b;
|
|
9156
|
+
var isOpen = _a.isOpen, anchorPoint = _a.anchorPoint, tagNodeSelectedInTree = _a.tagNodeSelectedInTree, getTagsTreeData = _a.getTagsTreeData, setShowContextMenu = _a.setShowContextMenu;
|
|
9157
|
+
var classes = useTagsTreeModalStyles();
|
|
9158
|
+
var _c = useState(false), showNewTagModal = _c[0], setShowNewTagModal = _c[1];
|
|
9159
|
+
var _d = useState(false), showRemoveTagModal = _d[0], setShowRemoveTagModal = _d[1];
|
|
9160
|
+
var isFolder = ((_b = tagNodeSelectedInTree === null || tagNodeSelectedInTree === void 0 ? void 0 : tagNodeSelectedInTree.data) === null || _b === void 0 ? void 0 : _b.TagTypeCode) === "F";
|
|
9161
|
+
return (React__default.createElement(React__default.Fragment, null,
|
|
9162
|
+
isOpen && anchorPoint ? (React__default.createElement("ul", { className: classes.contextMenu, style: { top: anchorPoint.y, left: anchorPoint.x } },
|
|
9163
|
+
React__default.createElement(MenuItem$1, { style: { width: "100%", justifyContent: "left" }, onClick: function () { return setShowNewTagModal(true); } }, "New Folder"),
|
|
9164
|
+
tagNodeSelectedInTree && isFolder && (React__default.createElement(MenuItem$1, { style: { width: "100%", justifyContent: "left" }, onClick: function () { return setShowRemoveTagModal(true); } }, "Remove Folder")))) : (null),
|
|
9165
|
+
React__default.createElement(NewFolderModal, { open: showNewTagModal, handleClose: function (shouldUpdate) {
|
|
9166
|
+
if (shouldUpdate) {
|
|
9167
|
+
getTagsTreeData();
|
|
9168
|
+
}
|
|
9169
|
+
setShowContextMenu(false);
|
|
9170
|
+
setShowNewTagModal(false);
|
|
9171
|
+
}, tagNodeSelectedInTree: tagNodeSelectedInTree }),
|
|
9172
|
+
React__default.createElement(RemoveFolderModal, { open: showRemoveTagModal, handleClose: function (shouldUpdate) {
|
|
9173
|
+
if (shouldUpdate) {
|
|
9174
|
+
getTagsTreeData();
|
|
9175
|
+
}
|
|
9176
|
+
setShowContextMenu(false);
|
|
9177
|
+
setShowRemoveTagModal(false);
|
|
9178
|
+
}, tagNodeSelectedInTree: tagNodeSelectedInTree })));
|
|
8986
9179
|
};
|
|
8987
9180
|
|
|
8988
|
-
var
|
|
9181
|
+
var TagSelectionModal = function (_a) {
|
|
8989
9182
|
var isOpen = _a.isOpen; _a.onClose; var onTagSelect = _a.onTagSelect;
|
|
8990
9183
|
var classes = useTagsTreeModalStyles();
|
|
8991
9184
|
var _b = useState(true), isLoading = _b[0], setIsLoading = _b[1];
|
|
8992
9185
|
var _c = useState(''), error = _c[0], setError = _c[1];
|
|
8993
9186
|
var _d = useState([]), tagsTreeData = _d[0], setTagsTreeData = _d[1];
|
|
8994
|
-
var _e = useState(
|
|
8995
|
-
var _f = useState(
|
|
9187
|
+
var _e = useState(null), tagNodeSelectedInTree = _e[0], setTagNodeSelectedInTree = _e[1];
|
|
9188
|
+
var _f = useState(null), anchorPoint = _f[0], setAnchorPoint = _f[1];
|
|
9189
|
+
var _g = useState(false), showContextMenu = _g[0], setShowContextMenu = _g[1];
|
|
9190
|
+
var backendOffset = 1000000;
|
|
9191
|
+
var _h = useState({}), openTagFolders = _h[0], setOpenTagFolders = _h[1];
|
|
9192
|
+
var _j = useState([]), selectedNodes = _j[0], setSelectedNodes = _j[1];
|
|
8996
9193
|
useTrendingContext().state.viewTags;
|
|
9194
|
+
var handleContextMenu = function (data, e) {
|
|
9195
|
+
e.preventDefault();
|
|
9196
|
+
var top = e.clientY;
|
|
9197
|
+
var left = e.clientX;
|
|
9198
|
+
setAnchorPoint({ x: left, y: top });
|
|
9199
|
+
setSelectedNodes([data]);
|
|
9200
|
+
setShowContextMenu(true);
|
|
9201
|
+
var selectedNode = tagsTreeData.find(function (node) { var _a; return ((_a = node.data) === null || _a === void 0 ? void 0 : _a.TagId) === data.id; });
|
|
9202
|
+
if (selectedNode) {
|
|
9203
|
+
setTagNodeSelectedInTree(selectedNode);
|
|
9204
|
+
}
|
|
9205
|
+
};
|
|
9206
|
+
var getTagsTreeData = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
9207
|
+
var tagsTree, rows, tree;
|
|
9208
|
+
return __generator(this, function (_a) {
|
|
9209
|
+
switch (_a.label) {
|
|
9210
|
+
case 0:
|
|
9211
|
+
if (!isOpen) return [3 /*break*/, 2];
|
|
9212
|
+
setIsLoading(true);
|
|
9213
|
+
return [4 /*yield*/, getTagsTree()];
|
|
9214
|
+
case 1:
|
|
9215
|
+
tagsTree = _a.sent();
|
|
9216
|
+
if (tagsTree.ok) {
|
|
9217
|
+
rows = tagsTree.data.tables[0].rows;
|
|
9218
|
+
tree = buildTagsTreeV2(rows);
|
|
9219
|
+
setTagsTreeData(tree);
|
|
9220
|
+
}
|
|
9221
|
+
setIsLoading(false);
|
|
9222
|
+
_a.label = 2;
|
|
9223
|
+
case 2: return [2 /*return*/];
|
|
9224
|
+
}
|
|
9225
|
+
});
|
|
9226
|
+
}); };
|
|
8997
9227
|
var expanded = useMemo(function () {
|
|
8998
9228
|
return Object.keys(openTagFolders).map(function (el) { return parseInt(el); });
|
|
8999
9229
|
}, [openTagFolders]);
|
|
9000
9230
|
useEffect(function () {
|
|
9001
|
-
|
|
9002
|
-
var tagsTree, rows, tree;
|
|
9003
|
-
return __generator(this, function (_a) {
|
|
9004
|
-
switch (_a.label) {
|
|
9005
|
-
case 0:
|
|
9006
|
-
if (!isOpen) return [3 /*break*/, 2];
|
|
9007
|
-
setIsLoading(true);
|
|
9008
|
-
return [4 /*yield*/, getTagsTree()];
|
|
9009
|
-
case 1:
|
|
9010
|
-
tagsTree = _a.sent();
|
|
9011
|
-
if (tagsTree.ok) {
|
|
9012
|
-
rows = tagsTree.data.tables[0].rows;
|
|
9013
|
-
tree = buildTagsTreeV2(rows);
|
|
9014
|
-
setTagsTreeData(tree);
|
|
9015
|
-
}
|
|
9016
|
-
setIsLoading(false);
|
|
9017
|
-
_a.label = 2;
|
|
9018
|
-
case 2: return [2 /*return*/];
|
|
9019
|
-
}
|
|
9020
|
-
});
|
|
9021
|
-
}); };
|
|
9022
|
-
loadData();
|
|
9231
|
+
getTagsTreeData();
|
|
9023
9232
|
}, [isOpen]);
|
|
9024
9233
|
var handleDrop = function (tree, options) { return __awaiter(void 0, void 0, void 0, function () {
|
|
9025
|
-
var tagId, newFolderId, newTree;
|
|
9026
|
-
|
|
9027
|
-
|
|
9234
|
+
var tagId, newFolderId, newTree, newTree;
|
|
9235
|
+
var _a, _b;
|
|
9236
|
+
return __generator(this, function (_c) {
|
|
9237
|
+
switch (_c.label) {
|
|
9028
9238
|
case 0:
|
|
9029
|
-
if (!(options.dragSource && options.dropTarget)) return [3 /*break*/, 2];
|
|
9030
9239
|
setIsLoading(true);
|
|
9240
|
+
if (!options.dragSource) return [3 /*break*/, 5];
|
|
9031
9241
|
tagId = Number(options.dragSource.id);
|
|
9032
|
-
newFolderId = Number(options.dropTarget.id);
|
|
9242
|
+
newFolderId = Number((_a = options.dropTarget) === null || _a === void 0 ? void 0 : _a.id) || null;
|
|
9033
9243
|
if (tagId === newFolderId) {
|
|
9034
9244
|
setIsLoading(false);
|
|
9035
9245
|
return [2 /*return*/];
|
|
9036
9246
|
}
|
|
9037
|
-
return [
|
|
9247
|
+
if (!(((_b = options.dragSource.data) === null || _b === void 0 ? void 0 : _b.TagTypeCode) === "F")) return [3 /*break*/, 2];
|
|
9248
|
+
return [4 /*yield*/, upsertTagFolder(tagId, newFolderId, options.dragSource.text, true)];
|
|
9038
9249
|
case 1:
|
|
9039
|
-
newTree =
|
|
9040
|
-
setTagsTreeData(tree);
|
|
9041
|
-
setIsLoading(false);
|
|
9250
|
+
newTree = _c.sent();
|
|
9042
9251
|
if (!newTree.ok) {
|
|
9043
9252
|
setError(newTree.message);
|
|
9044
9253
|
}
|
|
9045
|
-
|
|
9046
|
-
case 2: return [
|
|
9254
|
+
return [3 /*break*/, 4];
|
|
9255
|
+
case 2: return [4 /*yield*/, changeTagFolderToTag(tagId, newFolderId)];
|
|
9256
|
+
case 3:
|
|
9257
|
+
newTree = _c.sent();
|
|
9258
|
+
if (!newTree.ok) {
|
|
9259
|
+
setError(newTree.message);
|
|
9260
|
+
}
|
|
9261
|
+
_c.label = 4;
|
|
9262
|
+
case 4:
|
|
9263
|
+
setTagsTreeData(tree);
|
|
9264
|
+
_c.label = 5;
|
|
9265
|
+
case 5:
|
|
9266
|
+
setIsLoading(false);
|
|
9267
|
+
return [2 /*return*/];
|
|
9047
9268
|
}
|
|
9048
9269
|
});
|
|
9049
9270
|
}); };
|
|
@@ -9052,23 +9273,29 @@ var NewTagSelectionModal = function (_a) {
|
|
|
9052
9273
|
onTagSelect(node.data);
|
|
9053
9274
|
}
|
|
9054
9275
|
};
|
|
9276
|
+
var handleCloseContextMenu = function (e) {
|
|
9277
|
+
if (showContextMenu) {
|
|
9278
|
+
setShowContextMenu(false);
|
|
9279
|
+
}
|
|
9280
|
+
};
|
|
9055
9281
|
return (React__default.createElement(React__default.Fragment, null,
|
|
9056
|
-
React__default.createElement("div", { style: { display: isOpen ? "block" : "none", minHeight: "700px", minWidth: "800px" } },
|
|
9282
|
+
React__default.createElement("div", { style: { display: isOpen ? "block" : "none", minHeight: "700px", minWidth: "800px" }, onClick: handleCloseContextMenu },
|
|
9057
9283
|
React__default.createElement("div", { style: { overflowY: 'auto', maxHeight: '700px' } }, isLoading ? (React__default.createElement(Grid$1, { container: true, justifyContent: "center", alignItems: "center", style: { minHeight: "100px" } },
|
|
9058
9284
|
React__default.createElement(CircularProgress$1, { size: "2rem" }))) : (React__default.createElement(DndProvider$1, { backend: HTML5Backend },
|
|
9059
9285
|
React__default.createElement(Tree, { classes: {
|
|
9060
9286
|
root: classes.assetRoot,
|
|
9061
9287
|
dropTarget: classes.dropTarget
|
|
9062
|
-
}, initialOpen: expanded, tree: tagsTreeData, rootId:
|
|
9288
|
+
}, initialOpen: expanded, tree: tagsTreeData, rootId: backendOffset, onDrop: handleDrop, canDrop: function (tag, options) {
|
|
9063
9289
|
return !selectedNodes.some(function (selectedNode) {
|
|
9064
9290
|
return Number(selectedNode.id) === Number(options.dropTargetId);
|
|
9065
9291
|
});
|
|
9066
9292
|
}, render: function (node, options) {
|
|
9067
9293
|
var selected = selectedNodes.some(function (selectedNode) { return Number(selectedNode.id) === Number(node.id); });
|
|
9068
|
-
return (React__default.createElement(TagFolderCustomNode, { node: node, options: options, isSelected: selected, openTagFolders: openTagFolders, setOpenTagFolders: setOpenTagFolders, handleSelect: handleClick }));
|
|
9294
|
+
return (React__default.createElement(TagFolderCustomNode, { setContextMenuOver: handleContextMenu, node: node, options: options, isSelected: selected, openTagFolders: openTagFolders, setOpenTagFolders: setOpenTagFolders, handleSelect: handleClick }));
|
|
9069
9295
|
}, dragPreviewRender: function (monitorProps) { return (React__default.createElement(CustomDragPreview, { monitorProps: monitorProps })
|
|
9070
9296
|
// <div>{monitorProps.item.data?.TagName}</div>
|
|
9071
9297
|
); } }))))),
|
|
9298
|
+
React__default.createElement(ContextMenu, { anchorPoint: anchorPoint, isOpen: showContextMenu, setShowContextMenu: setShowContextMenu, tagNodeSelectedInTree: tagNodeSelectedInTree, getTagsTreeData: getTagsTreeData }),
|
|
9072
9299
|
React__default.createElement(ErrorModal, { error: error, onHide: function () { return setError(''); } })));
|
|
9073
9300
|
};
|
|
9074
9301
|
|
|
@@ -9079,14 +9306,7 @@ var TagsTreeModal = function (_a) {
|
|
|
9079
9306
|
React__default.createElement(MesfModal.Content, null,
|
|
9080
9307
|
React__default.createElement(Box, null,
|
|
9081
9308
|
React__default.createElement(Typography, { id: "modal-modal-description" },
|
|
9082
|
-
React__default.createElement(
|
|
9083
|
-
};
|
|
9084
|
-
|
|
9085
|
-
var ButtonWithLoading = function (_a) {
|
|
9086
|
-
var children = _a.children, isLoading = _a.isLoading, props = __rest(_a, ["children", "isLoading"]);
|
|
9087
|
-
return (React__default.createElement(Button$1, __assign({}, props, { disabled: isLoading }),
|
|
9088
|
-
isLoading && React__default.createElement(CircularProgress$1, { size: "1rem" }),
|
|
9089
|
-
children));
|
|
9309
|
+
React__default.createElement(TagSelectionModal, { isOpen: open, onClose: function () { return handleClose; }, onTagSelect: onTagSelect })))))));
|
|
9090
9310
|
};
|
|
9091
9311
|
|
|
9092
9312
|
var useTrendingStyles = makeStyles$1(function (theme) { return ({
|
|
@@ -9469,7 +9689,8 @@ var SaveAsViewModal = function (_a) {
|
|
|
9469
9689
|
setNewView(newInputValue);
|
|
9470
9690
|
}
|
|
9471
9691
|
}, style: { width: "100%" }, renderInput: function (params) { return React__default.createElement(TextField, __assign({}, params, { label: "Views", variant: "outlined" })); } })) :
|
|
9472
|
-
(React__default.createElement(
|
|
9692
|
+
(React__default.createElement(Box, null,
|
|
9693
|
+
React__default.createElement(TextField, { style: { minWidth: "600px" }, size: 'small', id: "outlined-basic", label: "View name", variant: "outlined", value: newView, onChange: (function (e) { return setNewView(e.target.value); }) }))))),
|
|
9473
9694
|
React__default.createElement(Grid$1, { item: true, md: 12, xs: 12, style: { paddingTop: "2rem" }, className: classes.isPublicCheckbox },
|
|
9474
9695
|
React__default.createElement("label", null,
|
|
9475
9696
|
"Public",
|
|
@@ -9715,7 +9936,7 @@ var TableComponent = function (_a) {
|
|
|
9715
9936
|
var handleAddTag = function (newTag) {
|
|
9716
9937
|
var newArr = __spreadArray([], viewTags, true);
|
|
9717
9938
|
if (newTag) {
|
|
9718
|
-
newArr.push(__assign(__assign({}, newTag), { IsVisible: true }));
|
|
9939
|
+
newArr.push(__assign(__assign({}, newTag), { IsVisible: true, TagType: newTag.TagTypeCode }));
|
|
9719
9940
|
setViewTagsAndRefetch(newArr);
|
|
9720
9941
|
}
|
|
9721
9942
|
};
|
|
@@ -9744,7 +9965,13 @@ var TableComponent = function (_a) {
|
|
|
9744
9965
|
{ id: 'loadView', label: 'Load View', onClick: function () { return setLoadViewOpen(true); } },
|
|
9745
9966
|
];
|
|
9746
9967
|
var handleTagSelect = function (selectedTag) {
|
|
9747
|
-
|
|
9968
|
+
var alreadySelected = viewTags.find(function (vt) { return vt.TagId === selectedTag.TagId; });
|
|
9969
|
+
if (!alreadySelected) {
|
|
9970
|
+
handleAddTag(selectedTag);
|
|
9971
|
+
}
|
|
9972
|
+
else {
|
|
9973
|
+
setError("".concat(selectedTag.TagName, " is already selected"));
|
|
9974
|
+
}
|
|
9748
9975
|
};
|
|
9749
9976
|
var handleDelete = function (index) { return __awaiter(void 0, void 0, void 0, function () {
|
|
9750
9977
|
return __generator(this, function (_a) {
|
|
@@ -9763,14 +9990,18 @@ var TableComponent = function (_a) {
|
|
|
9763
9990
|
return __generator(this, function (_a) {
|
|
9764
9991
|
switch (_a.label) {
|
|
9765
9992
|
case 0:
|
|
9993
|
+
if (!!viewSelected) return [3 /*break*/, 1];
|
|
9994
|
+
setSaveAsViewModalOpen(true);
|
|
9995
|
+
return [2 /*return*/];
|
|
9996
|
+
case 1:
|
|
9766
9997
|
setIsLoading(true);
|
|
9767
|
-
if (!(viewSelected === null || viewSelected === void 0 ? void 0 : viewSelected.ViewId)) return [3 /*break*/,
|
|
9998
|
+
if (!(viewSelected === null || viewSelected === void 0 ? void 0 : viewSelected.ViewId)) return [3 /*break*/, 6];
|
|
9768
9999
|
return [4 /*yield*/, upsertView(viewSelected === null || viewSelected === void 0 ? void 0 : viewSelected.ViewId, viewSelected.ViewName, viewSelected.IsPublic)];
|
|
9769
|
-
case
|
|
10000
|
+
case 2:
|
|
9770
10001
|
resp = _a.sent();
|
|
9771
|
-
if (!resp.ok) return [3 /*break*/,
|
|
10002
|
+
if (!resp.ok) return [3 /*break*/, 5];
|
|
9772
10003
|
return [4 /*yield*/, deleteAllViewTagsFromView(viewSelected.ViewId)];
|
|
9773
|
-
case
|
|
10004
|
+
case 3:
|
|
9774
10005
|
deleteResp = _a.sent();
|
|
9775
10006
|
if (!deleteResp.ok) {
|
|
9776
10007
|
setError(deleteResp.message);
|
|
@@ -9784,7 +10015,7 @@ var TableComponent = function (_a) {
|
|
|
9784
10015
|
}
|
|
9785
10016
|
});
|
|
9786
10017
|
}))];
|
|
9787
|
-
case
|
|
10018
|
+
case 4:
|
|
9788
10019
|
results = _a.sent();
|
|
9789
10020
|
results.forEach(function (result, index) {
|
|
9790
10021
|
if (result.status === "rejected") {
|
|
@@ -9795,13 +10026,14 @@ var TableComponent = function (_a) {
|
|
|
9795
10026
|
setSnackbarMessage('View saved successfully');
|
|
9796
10027
|
}
|
|
9797
10028
|
});
|
|
9798
|
-
return [3 /*break*/,
|
|
9799
|
-
case 4:
|
|
9800
|
-
setError(resp.message);
|
|
9801
|
-
_a.label = 5;
|
|
10029
|
+
return [3 /*break*/, 6];
|
|
9802
10030
|
case 5:
|
|
10031
|
+
setError(resp.message);
|
|
10032
|
+
_a.label = 6;
|
|
10033
|
+
case 6:
|
|
9803
10034
|
setIsLoading(false);
|
|
9804
|
-
|
|
10035
|
+
_a.label = 7;
|
|
10036
|
+
case 7: return [2 /*return*/];
|
|
9805
10037
|
}
|
|
9806
10038
|
});
|
|
9807
10039
|
}); };
|
|
@@ -9870,7 +10102,7 @@ var TableComponent = function (_a) {
|
|
|
9870
10102
|
React__default.createElement("table", { style: { width: '100%', tableLayout: 'fixed', textAlign: "center" } },
|
|
9871
10103
|
React__default.createElement("thead", null,
|
|
9872
10104
|
React__default.createElement("tr", null,
|
|
9873
|
-
React__default.createElement("th", { className: classes.visible }, "View:"),
|
|
10105
|
+
React__default.createElement("th", { className: classes.visible }, (viewSelected === null || viewSelected === void 0 ? void 0 : viewSelected.ViewName) && "View:"),
|
|
9874
10106
|
React__default.createElement("th", { className: classes.aliasCol }, viewSelected === null || viewSelected === void 0 ? void 0 : viewSelected.ViewName),
|
|
9875
10107
|
React__default.createElement("th", { className: classes.color }),
|
|
9876
10108
|
React__default.createElement("th", { colSpan: 4, className: "".concat(classes.topTitles, " ").concat(classes.scale) }, "Scale"),
|
|
@@ -9963,7 +10195,8 @@ var TableComponent = function (_a) {
|
|
|
9963
10195
|
React__default.createElement("td", { className: classes.aliasCol },
|
|
9964
10196
|
React__default.createElement(Tooltip, { title: tag.TagName, placement: "top", arrow: true, interactive: true, enterDelay: 500 },
|
|
9965
10197
|
React__default.createElement("div", { style: { display: 'flex', alignItems: 'center' } },
|
|
9966
|
-
|
|
10198
|
+
tag.TagType &&
|
|
10199
|
+
(React__default.createElement("div", { className: classes.dataType, style: { backgroundColor: tag.TagType === "A" ? "blue" : "red" } }, tag.TagType)),
|
|
9967
10200
|
React__default.createElement("input", { type: "text", style: { width: '100%' }, value: tag.Alias || tag.TagName, onFocus: function (e) { return e.target.select(); }, onChange: function (e) {
|
|
9968
10201
|
var newAlias = e.target.value;
|
|
9969
10202
|
handleChangeAlias(tag.TagId, newAlias);
|
|
@@ -10012,7 +10245,7 @@ var TableComponent = function (_a) {
|
|
|
10012
10245
|
React__default.createElement("td", null,
|
|
10013
10246
|
!isNaN(((_f = dataTable[tag.TagName]) === null || _f === void 0 ? void 0 : _f.pmax.y) * 0) ? round((_g = dataTable[tag.TagName]) === null || _g === void 0 ? void 0 : _g.pmax.y) : 0,
|
|
10014
10247
|
" ")));
|
|
10015
|
-
}) : React__default.createElement("div", { style: { padding: '
|
|
10248
|
+
}) : React__default.createElement("div", { style: { padding: '1rem' } },
|
|
10016
10249
|
React__default.createElement("div", { style: { padding: "1rem" } }, "No tag view detected. "),
|
|
10017
10250
|
React__default.createElement("div", { style: { padding: "1rem" } },
|
|
10018
10251
|
React__default.createElement(Button$1, { onClick: function () { return setTagsTreeModalOpen(true); }, variant: 'contained', color: 'primary' }, " Add tag")),
|
|
@@ -10666,7 +10899,7 @@ var TrendingsPage = function (props) {
|
|
|
10666
10899
|
setViews(viewsResp.data.tables[0].rows);
|
|
10667
10900
|
lastCreated = void 0;
|
|
10668
10901
|
if (!viewSelected || forceReload) {
|
|
10669
|
-
lastCreated = viewsResp.data.tables[0].rows.reduce(function (prev, current) { return (prev.ViewId > current.ViewId) ? prev : current; });
|
|
10902
|
+
lastCreated = viewsResp.data.tables[0].rows.reduce(function (prev, current) { return (prev.ViewId > current.ViewId) ? prev : current; }, null);
|
|
10670
10903
|
//viewSelected
|
|
10671
10904
|
setViewSelected(lastCreated);
|
|
10672
10905
|
}
|