@skbkontur/db-viewer-ui
Version:
Database Viewer with custom configuration
37 lines • 3.09 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.ObjectTypesContainer = void 0;
const tslib_1 = require("tslib");
const jsx_runtime_1 = require("react/jsx-runtime");
const react_stack_layout_1 = require("@skbkontur/react-stack-layout");
const react_ui_1 = require("@skbkontur/react-ui");
const react_1 = require("react");
const react_router_1 = require("react-router");
const ErrorHandlingContainer_1 = require("../Components/ErrorHandling/ErrorHandlingContainer");
const CommonLayout_1 = require("../Components/Layouts/CommonLayout");
const ObjectTypes_1 = require("../Components/ObjectTypes/ObjectTypes");
const RouteUtils_1 = require("../Domain/Utils/RouteUtils");
const ObjectTypesContainer = ({ dbViewerApi, useErrorHandlingContainer, identifierKeywords, withGoBackUrl, }) => {
const [loading, setLoading] = (0, react_1.useState)(false);
const { pathname } = (0, react_router_1.useLocation)();
const [objects, setObjects] = (0, react_1.useState)([]);
const [filter, setFilter] = (0, react_1.useState)("");
(0, react_1.useEffect)(() => {
loadData();
}, []);
return ((0, jsx_runtime_1.jsxs)(CommonLayout_1.CommonLayout, { withArrow: withGoBackUrl, children: [useErrorHandlingContainer && (0, jsx_runtime_1.jsx)(ErrorHandlingContainer_1.ErrorHandlingContainer, {}), withGoBackUrl && (0, jsx_runtime_1.jsx)(CommonLayout_1.CommonLayout.GoBack, { to: RouteUtils_1.RouteUtils.backUrl(pathname) }), (0, jsx_runtime_1.jsx)(CommonLayout_1.CommonLayout.Header, { title: "\u0421\u043F\u0438\u0441\u043E\u043A \u041E\u0431\u044A\u0435\u043A\u0442\u043E\u0432" }), (0, jsx_runtime_1.jsx)(CommonLayout_1.CommonLayout.Content, { children: (0, jsx_runtime_1.jsx)(react_ui_1.Loader, { type: "big", active: loading, children: (0, jsx_runtime_1.jsxs)(react_stack_layout_1.ColumnStack, { block: true, stretch: true, children: [(0, jsx_runtime_1.jsx)(react_stack_layout_1.Fit, { children: (0, jsx_runtime_1.jsx)(react_ui_1.Input, { "data-tid": "FilterInput", autoFocus: true, placeholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0434\u043B\u044F \u043F\u043E\u0438\u0441\u043A\u0430 (\u0440\u0430\u0431\u043E\u0442\u0430\u0435\u0442 R#-style \u043F\u043E\u0438\u0441\u043A, \u043D\u0430\u043F\u0440\u0438\u043C\u0435\u0440, BoxEvSt \u0438\u043B\u0438 BESE)", value: filter, onValueChange: setFilter, width: "100%" }) }), (0, jsx_runtime_1.jsx)(react_stack_layout_1.Fit, { children: (0, jsx_runtime_1.jsx)(ObjectTypes_1.ObjectTypes, { objects: objects, filter: filter, identifierKeywords: identifierKeywords }) })] }) }) })] }));
function loadData() {
return tslib_1.__awaiter(this, void 0, void 0, function* () {
setLoading(true);
try {
const objects = yield dbViewerApi.getNames();
setObjects(objects);
}
finally {
setLoading(false);
}
});
}
};
exports.ObjectTypesContainer = ObjectTypesContainer;
//# sourceMappingURL=ObjectTypesContainer.js.map
;