UNPKG

@finos/legend-extension-dsl-data-space

Version:
49 lines 5.92 kB
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime"; /** * Copyright (c) 2020-present, Goldman Sachs * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import { observer } from 'mobx-react-lite'; import { BlankPanelContent, DocumentationIcon, EnvelopeIcon, HomeIcon, QuestionAnswerIcon, SparkleIcon, SupportIcon, } from '@finos/legend-art'; import { DataSpaceSupportCombinedInfo, DataSpaceSupportEmail, } from '../graph/metamodel/pure/model/packageableElements/dataSpace/DSL_DataSpace_DataSpace.js'; import {} from '../stores/DataSpaceViewerState.js'; const DataSpaceSupportEmailViewer = observer((props) => { const { supportInfo } = props; return (_jsx("div", { className: "data-space__viewer__support__section", children: _jsxs("div", { className: "data-space__viewer__support__entry", children: [_jsx("div", { className: "data-space__viewer__support__entry__icon", children: _jsx(EnvelopeIcon, {}) }), _jsx("a", { href: `mailto:${supportInfo.address}`, className: "data-space__viewer__support__entry__content", children: supportInfo.address })] }) })); }); const DataSpaceSupportCombinedInfoViewer = observer((props) => { const { supportInfo } = props; return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "data-space__viewer__support__section", children: [_jsxs("div", { className: "data-space__viewer__support__entry", title: "Website", children: [_jsx("div", { className: "data-space__viewer__support__entry__icon data-space__viewer__support__entry__icon--website", children: _jsx(HomeIcon, {}) }), supportInfo.website ? (_jsx("a", { href: supportInfo.website, className: "data-space__viewer__support__entry__content", children: supportInfo.website })) : (_jsx("div", { className: "data-space__viewer__support__entry__content", children: "(not specified)" }))] }), _jsxs("div", { className: "data-space__viewer__support__entry", title: "Documentation", children: [_jsx("div", { className: "data-space__viewer__support__entry__icon", children: _jsx(DocumentationIcon, {}) }), supportInfo.documentationUrl ? (_jsx("a", { href: supportInfo.documentationUrl, className: "data-space__viewer__support__entry__content", children: supportInfo.documentationUrl })) : (_jsx("div", { className: "data-space__viewer__support__entry__content", children: "(not specified)" }))] }), _jsxs("div", { className: "data-space__viewer__support__entry", title: "Support", children: [_jsx("div", { className: "data-space__viewer__support__entry__icon data-space__viewer__support__entry__icon--support", children: _jsx(SupportIcon, {}) }), supportInfo.supportUrl ? (_jsx("a", { href: supportInfo.supportUrl, className: "data-space__viewer__support__entry__content", children: supportInfo.supportUrl })) : (_jsx("div", { className: "data-space__viewer__support__entry__content", children: "(not specified)" }))] }), _jsxs("div", { className: "data-space__viewer__support__entry", title: "FAQ", children: [_jsx("div", { className: "data-space__viewer__support__entry__icon data-space__viewer__support__entry__icon--faq", children: _jsx(QuestionAnswerIcon, {}) }), supportInfo.faqUrl ? (_jsx("a", { href: supportInfo.faqUrl, className: "data-space__viewer__support__entry__content", children: supportInfo.faqUrl })) : (_jsx("div", { className: "data-space__viewer__support__entry__content", children: "(not specified)" }))] })] }), supportInfo.emails?.length && (_jsx("div", { className: "data-space__viewer__support__section", children: supportInfo.emails.map((email, idx) => ( // eslint-disable-next-line react/no-array-index-key _jsxs("div", { className: "data-space__viewer__support__entry", children: [_jsx("div", { className: "data-space__viewer__support__entry__icon", children: _jsx(EnvelopeIcon, {}) }), _jsx("a", { href: `mailto:${email}`, className: "data-space__viewer__support__entry__content", children: email })] }, idx))) }))] })); }); const DataSpaceSupport = observer((props) => { const { dataSpaceViewerState } = props; const supportInfo = dataSpaceViewerState.dataSpaceAnalysisResult.supportInfo; if (supportInfo === undefined) { return _jsx(BlankPanelContent, { children: "No support info available" }); } else if (supportInfo instanceof DataSpaceSupportEmail) { return (_jsx(DataSpaceSupportEmailViewer, { dataSpaceViewerState: dataSpaceViewerState, supportInfo: supportInfo })); } else if (supportInfo instanceof DataSpaceSupportCombinedInfo) { return (_jsx(DataSpaceSupportCombinedInfoViewer, { dataSpaceViewerState: dataSpaceViewerState, supportInfo: supportInfo })); } return (_jsxs("div", { className: "data-space__viewer__panel__content__placeholder", children: [_jsx(SparkleIcon, {}), " This is work in progress"] })); }); export const DataSpaceSupportPanel = observer((props) => { const { dataSpaceViewerState } = props; return (_jsxs("div", { className: "data-space__viewer__panel", children: [_jsx("div", { className: "data-space__viewer__panel__header", children: _jsx("div", { className: "data-space__viewer__panel__header__label", children: "Support" }) }), _jsx("div", { className: "data-space__viewer__panel__content", children: _jsx("div", { className: "data-space__viewer__support-info", children: _jsx(DataSpaceSupport, { dataSpaceViewerState: dataSpaceViewerState }) }) })] })); }); //# sourceMappingURL=DataSpaceSupportPanel.js.map