diff --git a/ui-common/package.json b/ui-common/package.json index 2d3f72462..e4a48d1cf 100644 --- a/ui-common/package.json +++ b/ui-common/package.json @@ -1,6 +1,6 @@ { "name": "@up9/mizu-common", - "version": "1.0.141", + "version": "1.0.142", "description": "Made with create-react-library", "author": "", "license": "MIT", diff --git a/ui-common/src/components/OasModal/OasModal.tsx b/ui-common/src/components/OasModal/OasModal.tsx index d5283a93a..124cc88df 100644 --- a/ui-common/src/components/OasModal/OasModal.tsx +++ b/ui-common/src/components/OasModal/OasModal.tsx @@ -1,4 +1,4 @@ -import { Box, Fade, FormControl, MenuItem, Modal, Backdrop, ListSubheader } from "@material-ui/core"; +import { Box, Fade, FormControl, MenuItem, Modal, Backdrop } from "@material-ui/core"; import { useCallback, useEffect, useState } from "react"; import { RedocStandalone } from "redoc"; import closeIcon from "assets/closeIcon.svg"; @@ -7,7 +7,6 @@ import style from './OasModal.module.sass'; import openApiLogo from 'assets/openApiLogo.png' import { redocThemeOptions } from "./redocThemeOptions"; import React from "react"; -import { TOAST_CONTAINER_ID } from "../../configs/Consts"; import { Select } from "../UI/Select"; @@ -25,68 +24,44 @@ const modalStyle = { color: '#000', }; -const ipAddressWithPortRegex = new RegExp('([0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}):([0-9]{1,5})'); const OasModal = ({ openModal, handleCloseModal, getOasServices, getOasByService }) => { const [oasServices, setOasServices] = useState([] as string[]) const [selectedServiceName, setSelectedServiceName] = useState(""); const [selectedServiceSpec, setSelectedServiceSpec] = useState(null); - const [resolvedServices, setResolvedServices] = useState([]); - const [unResolvedServices, setUnResolvedServices] = useState([]); - const onSelectedOASService = useCallback(async (selectedService) => { - if (!!selectedService) { - setSelectedServiceName(selectedService); - if (oasServices.length === 0) { - return - } - try { - const data = await getOasByService(selectedService); - setSelectedServiceSpec(data); - } catch (e) { - toast.error("Error occurred while fetching service OAS spec", { containerId: TOAST_CONTAINER_ID }); - console.error(e); - } - } - }, [oasServices.length]) - - const resolvedArrayBuilder = useCallback(async (services) => { - const resServices = []; - const unResServices = []; - services.forEach(s => { - if (ipAddressWithPortRegex.test(s)) { - unResServices.push(s); - } - else { - resServices.push(s); - } - }); - - resServices.sort(); - unResServices.sort(); - if (resServices.length > 0) { - onSelectedOASService(resServices[0]); + const onSelectedOASService = async (selectedService) => { + if (oasServices.length === 0) { + setSelectedServiceSpec(null); + setSelectedServiceName(""); + return } else { - onSelectedOASService(unResServices[0]); + setSelectedServiceName(selectedService ? selectedService : oasServices[0]); } - - setResolvedServices(resServices); - setUnResolvedServices(unResServices); - }, [onSelectedOASService]) + try { + const data = await getOasByService(selectedService ? selectedService : oasServices[0]); + setSelectedServiceSpec(data); + } catch (e) { + toast.error("Error occurred while fetching service OAS spec"); + console.error(e); + } + }; useEffect(() => { (async () => { try { const services = await getOasServices(); - resolvedArrayBuilder(services); setOasServices(services); } catch (e) { console.error(e); } })(); - }, [openModal, resolvedArrayBuilder]); + }, [openModal]); + useEffect(() => { + onSelectedOASService(null); + },[oasServices]) return (
-
openApi
-
OpenApi
+
openAPI
+
OpenAPI
close
- - - -
+ + + +
{selectedServiceSpec && - OpenApi Specs + OpenAPI Specs } {window["isServiceMapEnabled"] &&