UNPKG

@skbkontur/db-viewer-ui

Version:

Database Viewer with custom configuration

37 lines 3.09 kB
"use strict"; 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