diff --git a/.eslintrc.js b/.eslintrc.js index 084deb91..e3b50a27 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -22,6 +22,7 @@ module.exports = { "@typescript-eslint/no-explicit-any": "off", "@typescript-eslint/no-useless-constructor": "error", "@typescript-eslint/no-unused-vars": "off", + "@typescript-eslint/triple-slash-reference": "off", "prefer-const": "off", }, }, @@ -39,7 +40,11 @@ module.exports = { }, }, { - "files": ["packages/web_ui/src/**/*.ts?(x)", "packages/lib/browser.js", "plugins/*/web/**/*.ts?(x)"], + "files": [ + "packages/web_ui/src/**/*.ts?(x)", + "packages/lib/browser.ts", + "{packages,plugins}/*/web/**/*.ts?(x)", + ], "env": { "browser": true, }, @@ -315,7 +320,11 @@ module.exports = { "space-in-parens": ["error", "never"], "space-infix-ops": "off", "space-unary-ops": "error", - "spaced-comment": ["error", "always"], + "spaced-comment": ["error", "always", { + "line": { + "markers": ["/"], + }, + }], "strict": "error", "switch-colon-spacing": "error", "symbol-description": "error", diff --git a/packages/controller/.npmignore b/packages/controller/.npmignore index 6de001d8..ebd99907 100644 --- a/packages/controller/.npmignore +++ b/packages/controller/.npmignore @@ -1 +1,2 @@ webpack.config.js +dist/web/build diff --git a/packages/controller/src/routes.ts b/packages/controller/src/routes.ts index d5f9dfbe..45d5dbc4 100644 --- a/packages/controller/src/routes.ts +++ b/packages/controller/src/routes.ts @@ -93,20 +93,8 @@ async function getMetrics(req: Request, res: Response, next: any) { } -export type PluginWebApi = { - name: string; - version: string; - enabled: boolean; - loaded: boolean; - web: { - main: string; - error?: string; - }; - requirePath: string; -} - function getPlugins(req: Request, res: Response) { - let plugins: PluginWebApi[] = []; + let plugins: lib.PluginWebApi[] = []; for (let pluginInfo of req.app.locals.controller.pluginInfos) { let name = pluginInfo.name; let loaded = req.app.locals.controller.plugins.has(name); diff --git a/packages/controller/tsconfig.web.json b/packages/controller/tsconfig.web.json new file mode 100644 index 00000000..01d0c42f --- /dev/null +++ b/packages/controller/tsconfig.web.json @@ -0,0 +1,12 @@ +{ + "extends": "../../tsconfig.web.json", + "references": [ + { "path": "../lib" }, + { "path": "../web_ui/tsconfig.web.json" }, + ], + "include": [ "web/**/*.tsx", "web/**/*.ts", "package.json" ], + "compilerOptions": { + "rootDir": "..", + "outDir": "dist/web/build", + } +} diff --git a/packages/controller/web/index.html b/packages/controller/web/index.html index fde58715..5a5a8af0 100644 --- a/packages/controller/web/index.html +++ b/packages/controller/web/index.html @@ -17,22 +17,33 @@ margin: auto; margin-top: 1em; width: fit-content; + white-space: pre; } -