developer-tools index file was restored

This commit is contained in:
Vladimir Khvan 2023-05-17 16:58:58 +05:00
parent 832621c6e9
commit c82fee11c3

View File

@ -0,0 +1,70 @@
import React, { useEffect, useState } from "react";
import Submenu from "@docspace/components/submenu";
import { inject, observer } from "mobx-react";
import { combineUrl } from "@docspace/common/utils";
import config from "PACKAGE_FILE";
import { useNavigate } from "react-router-dom";
import JavascriptSDK from "./JavascriptSDK";
import Webhooks from "./Webhooks";
import AppLoader from "@docspace/common/components/AppLoader";
import SSOLoader from "./sub-components/ssoLoader";
const DeveloperToolsWrapper = (props) => {
const { loadBaseInfo } = props;
const [currentTab, setCurrentTab] = useState(0);
const [isLoading, setIsLoading] = useState(false);
const navigate = useNavigate();
const data = [
{
id: "javascript-sdk",
name: "Javascript sdk",
content: <JavascriptSDK />,
},
{
id: "webhooks",
name: "Webhooks",
content: <Webhooks />,
},
];
const load = async () => {
await loadBaseInfo();
setIsLoading(true);
};
useEffect(() => {
const path = location.pathname;
const currentTab = data.findIndex((item) => path.includes(item.id));
if (currentTab !== -1) setCurrentTab(currentTab);
load();
}, []);
const onSelect = (e) => {
navigate(
combineUrl(
window.DocSpaceConfig?.proxy?.url,
config.homepage,
`/portal-settings/developer-tools/${e.id}`,
),
);
};
if (!isLoading) return currentTab === 0 ? <SSOLoader /> : <AppLoader />;
return <Submenu data={data} startSelect={currentTab} onSelect={onSelect} />;
};
export default inject(({ setup }) => {
const { initSettings } = setup;
return {
loadBaseInfo: async () => {
await initSettings();
},
};
})(observer(DeveloperToolsWrapper));