@robotical/sensors-dashboard
Version:
A dashboard tool for depicting Marty data by Robotical
62 lines (61 loc) • 3.18 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = NewGraphModal;
require("core-js/modules/esnext.iterator.constructor.js");
require("core-js/modules/esnext.iterator.filter.js");
require("core-js/modules/esnext.iterator.map.js");
var _SelectedRaftContext = require("@robotical/webapp-types/dist-types/src/store/SelectedRaftContext");
var _cog_selected = _interopRequireDefault(require("../../../assets/connect-button/cog_selected.svg"));
var _marty_selected = _interopRequireDefault(require("../../../assets/connect-button/marty_selected.svg"));
var _stylesModule = _interopRequireDefault(require("./styles.module.css"));
var _raft = require("@robotical/webapp-types/dist-types/src/types/raft");
var _ModalState = _interopRequireDefault(require("../../../state-observables/modal/ModalState"));
var _fa = require("react-icons/fa");
var _jsxRuntime = require("react/jsx-runtime");
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
function NewGraphModal() {
var _window$applicationMa;
const connectedRaftsArray = (_window$applicationMa = window.applicationManager) === null || _window$applicationMa === void 0 ? void 0 : _window$applicationMa.connectedRaftsContext;
const handleRaftClick = raftId => {
console.log("Raft with id ".concat(raftId, " clicked"));
_ModalState.default.closeModal(raftId);
};
const areThereConnectedRafts = connectedRaftsArray.filter(raft => raft.id !== _SelectedRaftContext.NewRobotIdE.NEW).length > 0;
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
className: _stylesModule.default.newGraphModalContainer,
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_fa.FaTimes, {
className: _stylesModule.default.closeIcon,
onClick: () => _ModalState.default.closeModal()
}), " ", areThereConnectedRafts ? /*#__PURE__*/(0, _jsxRuntime.jsx)("h6", {
className: _stylesModule.default.title,
children: "Select a robot to generate a graph"
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)("h2", {
className: _stylesModule.default.title,
children: "No robots connected. Please close this window and connect a robot to continue."
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
className: _stylesModule.default.gridContainer,
children: connectedRaftsArray.filter(raftFil => raftFil.id !== _SelectedRaftContext.NewRobotIdE.NEW).map((raft, index) => {
let raftIcon;
if (raft.type === _raft.RaftTypeE.COG) {
raftIcon = _cog_selected.default;
} else if (raft.type === _raft.RaftTypeE.MARTY) {
raftIcon = _marty_selected.default;
}
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
className: _stylesModule.default.card,
onClick: () => handleRaftClick(raft.id),
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("img", {
src: raftIcon,
alt: "Raft Icon",
className: _stylesModule.default.icon
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
className: _stylesModule.default.raftName,
children: raft.name
})]
}, raft.id);
})
})]
});
}