import {Trans} from "react-i18next"; import {useStore} from "../store/store.ts"; import {useEffect, useState} from "react"; import {HelpObj} from "./Plugin.ts"; export const HelpPage = () => { const settingsSocket = useStore(state=>state.settingsSocket) const [helpData, setHelpData] = useState(); useEffect(() => { if(!settingsSocket) return; settingsSocket?.on('reply:help', (data) => { setHelpData(data) }); settingsSocket?.emit('help'); }, [settingsSocket]); const renderHooks = (hooks:Record>) => { return Object.keys(hooks).map((hookName, i) => { return

{hookName}

    {Object.keys(hooks[hookName]).map((hook, i) =>
  • {hook}
      {Object.keys(hooks[hookName][hook]).map((subHook, i) =>
    • {subHook}
    • )}
  • )}
}) } if (!helpData) return
return

{helpData?.epVersion}
{helpData.latestVersion}
Git sha
{helpData.gitCommit}

    {helpData.installedPlugins.map((plugin, i) =>
  • {plugin}
  • )}

    {helpData.installedParts.map((part, i) =>
  • {part}
  • )}

{ renderHooks(helpData.installedServerHooks) }

{ renderHooks(helpData.installedClientHooks) }

}