feat: 调整项目结构
This commit is contained in:
2
global.d.ts
vendored
2
global.d.ts
vendored
@@ -121,7 +121,7 @@ declare global {
|
|||||||
}
|
}
|
||||||
|
|
||||||
declare module "@store/*";
|
declare module "@store/*";
|
||||||
declare module "@modules/*";
|
declare module "@service/*";
|
||||||
declare module "@utils/*";
|
declare module "@utils/*";
|
||||||
declare module "@assets/images/*";
|
declare module "@assets/images/*";
|
||||||
declare module "@constant/*";
|
declare module "@constant/*";
|
||||||
|
|||||||
16
html/dialog.html
Normal file
16
html/dialog.html
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
<!doctype html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<title>NIANXX</title>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
|
<meta
|
||||||
|
http-equiv="Content-Security-Policy"
|
||||||
|
content="default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' http://8.138.234.141; connect-src 'self' http://8.138.234.141 https://api.iconify.design"
|
||||||
|
/>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="app"></div>
|
||||||
|
<script type="module" src="../src/renderer/views/dialog/index.ts"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@@ -11,6 +11,6 @@
|
|||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="app"></div>
|
<div id="app"></div>
|
||||||
<script type="module" src="/src/renderer/main.ts"></script>
|
<script type="module" src="../src/renderer/main.ts"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
16
html/loading.html
Normal file
16
html/loading.html
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
<!doctype html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<title>NIANXX</title>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
|
<meta
|
||||||
|
http-equiv="Content-Security-Policy"
|
||||||
|
content="default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' http://8.138.234.141; connect-src 'self' http://8.138.234.141 https://api.iconify.design"
|
||||||
|
/>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="app"></div>
|
||||||
|
<script type="module" src="../src/renderer/views/loading/index.ts"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
16
html/login.html
Normal file
16
html/login.html
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
<!doctype html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<title>NIANXX</title>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
|
<meta
|
||||||
|
http-equiv="Content-Security-Policy"
|
||||||
|
content="default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' http://8.138.234.141; connect-src 'self' http://8.138.234.141 https://api.iconify.design"
|
||||||
|
/>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="app"></div>
|
||||||
|
<script type="module" src="../src/renderer/views/login/index.ts"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
16
html/setting.html
Normal file
16
html/setting.html
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
<!doctype html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<title>NIANXX</title>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
|
<meta
|
||||||
|
http-equiv="Content-Security-Policy"
|
||||||
|
content="default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' http://8.138.234.141; connect-src 'self' http://8.138.234.141 https://api.iconify.design"
|
||||||
|
/>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="app"></div>
|
||||||
|
<script type="module" src="../src/renderer/views/setting/index.ts"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
import { app, BrowserWindow } from 'electron'
|
import { app, BrowserWindow } from 'electron'
|
||||||
import { setupWindows } from '@main/wins'
|
import { setupWindows } from '@main/wins'
|
||||||
import started from 'electron-squirrel-startup'
|
import started from 'electron-squirrel-startup'
|
||||||
import configManager from '@modules/config-service'
|
import configManager from '@main/service/config-service'
|
||||||
import logManager from '@modules/logger'
|
import logManager from '@main/service/logger'
|
||||||
import { CONFIG_KEYS } from '@common/constants'
|
import { CONFIG_KEYS } from '@common/constants'
|
||||||
|
|
||||||
// Handle creating/removing shortcuts on Windows when installing/uninstalling.
|
// Handle creating/removing shortcuts on Windows when installing/uninstalling.
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { BaseProvider } from "./BaseProvider";
|
import { BaseProvider } from "./BaseProvider";
|
||||||
|
|
||||||
import OpenAI from "openai";
|
import OpenAI from "openai";
|
||||||
import logManager from "@modules/logger"
|
import logManager from "@main/service/logger"
|
||||||
|
|
||||||
|
|
||||||
function _transformChunk(chunk: OpenAI.Chat.Completions.ChatCompletionChunk): UniversalChunk {
|
function _transformChunk(chunk: OpenAI.Chat.Completions.ChatCompletionChunk): UniversalChunk {
|
||||||
|
|||||||
@@ -2,8 +2,8 @@ import type { Provider } from "@common/types"
|
|||||||
import { OpenAIProvider } from "./OpenAIProvider"
|
import { OpenAIProvider } from "./OpenAIProvider"
|
||||||
import { parseOpenAISetting } from '@common/utils'
|
import { parseOpenAISetting } from '@common/utils'
|
||||||
import { decode } from 'js-base64'
|
import { decode } from 'js-base64'
|
||||||
import { configManager } from '@modules/config-service'
|
import { configManager } from '@main/service/config-service'
|
||||||
import { logManager } from '@modules/logger'
|
import { logManager } from '@main/service/logger'
|
||||||
import { CONFIG_KEYS } from "@common/constants"
|
import { CONFIG_KEYS } from "@common/constants"
|
||||||
|
|
||||||
const providers = [
|
const providers = [
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import { debounce, simpleCloneDeep } from '@common/utils'
|
|||||||
import * as fs from 'fs'
|
import * as fs from 'fs'
|
||||||
import * as path from 'path'
|
import * as path from 'path'
|
||||||
|
|
||||||
import logManager from '@modules/logger'
|
import logManager from '@main/service/logger'
|
||||||
|
|
||||||
const DEFAULT_CONFIG: IConfig = {
|
const DEFAULT_CONFIG: IConfig = {
|
||||||
[CONFIG_KEYS.THEME_MODE]: 'system',
|
[CONFIG_KEYS.THEME_MODE]: 'system',
|
||||||
@@ -2,8 +2,8 @@ import { ipcMain, Menu, type MenuItemConstructorOptions } from 'electron';
|
|||||||
import { CONFIG_KEYS, IPC_EVENTS } from '@common/constants';
|
import { CONFIG_KEYS, IPC_EVENTS } from '@common/constants';
|
||||||
import { cloneDeep } from '@common/utils';
|
import { cloneDeep } from '@common/utils';
|
||||||
import { createTranslator } from '@main/utils'
|
import { createTranslator } from '@main/utils'
|
||||||
import logManager from '@modules/logger'
|
import logManager from '@main/service/logger'
|
||||||
import configManager from '@modules/config-service'
|
import configManager from '@main/service/config-service'
|
||||||
|
|
||||||
let t: ReturnType<typeof createTranslator> = createTranslator();
|
let t: ReturnType<typeof createTranslator> = createTranslator();
|
||||||
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
import { BrowserWindow, ipcMain, nativeTheme } from 'electron'
|
import { BrowserWindow, ipcMain, nativeTheme } from 'electron'
|
||||||
import { configManager } from '@modules/config-service'
|
import { configManager } from '@main/service/config-service'
|
||||||
import { logManager } from '@modules/logger'
|
import { logManager } from '@main/service/logger'
|
||||||
import { IPC_EVENTS, CONFIG_KEYS } from '@common/constants'
|
import { IPC_EVENTS, CONFIG_KEYS } from '@common/constants'
|
||||||
|
|
||||||
class ThemeService {
|
class ThemeService {
|
||||||
@@ -2,10 +2,10 @@ import { Tray, Menu, ipcMain, app } from 'electron'
|
|||||||
import { createTranslator, createLogo } from '@main/utils'
|
import { createTranslator, createLogo } from '@main/utils'
|
||||||
import { CONFIG_KEYS, IPC_EVENTS, WINDOW_NAMES, MAIN_WIN_SIZE } from '@common/constants'
|
import { CONFIG_KEYS, IPC_EVENTS, WINDOW_NAMES, MAIN_WIN_SIZE } from '@common/constants'
|
||||||
|
|
||||||
import logManager from '@modules/logger'
|
import logManager from '@main/service/logger'
|
||||||
// TODO: shortcutManager
|
// TODO: shortcutManager
|
||||||
import windowManager from '@modules/window-service'
|
import windowManager from '@main/service/window-service'
|
||||||
import configManager from '@modules/config-service'
|
import configManager from '@main/service/config-service'
|
||||||
|
|
||||||
let t: ReturnType<typeof createTranslator> = createTranslator();
|
let t: ReturnType<typeof createTranslator> = createTranslator();
|
||||||
|
|
||||||
@@ -5,9 +5,9 @@ import { BrowserWindow, BrowserWindowConstructorOptions, ipcMain, IpcMainInvokeE
|
|||||||
import { debounce } from '@common/utils'
|
import { debounce } from '@common/utils'
|
||||||
import { createLogo } from '@main/utils'
|
import { createLogo } from '@main/utils'
|
||||||
|
|
||||||
import logManager from '@modules/logger'
|
import logManager from '@main/service/logger'
|
||||||
import configManager from '@modules/config-service'
|
import configManager from '@main/service/config-service'
|
||||||
import themeManager from '@modules/theme-service'
|
import themeManager from '@main/service/theme-service'
|
||||||
import path from 'node:path';
|
import path from 'node:path';
|
||||||
|
|
||||||
interface WindowState {
|
interface WindowState {
|
||||||
@@ -29,7 +29,7 @@ interface SizeOptions {
|
|||||||
const SHARED_WINDOW_OPTIONS = {
|
const SHARED_WINDOW_OPTIONS = {
|
||||||
titleBarStyle: 'hidden',
|
titleBarStyle: 'hidden',
|
||||||
show: false,
|
show: false,
|
||||||
title: 'Diona',
|
title: 'NIANXX',
|
||||||
darkTheme: themeManager.isDark,
|
darkTheme: themeManager.isDark,
|
||||||
backgroundColor: themeManager.isDark ? '#2C2C2C' : '#FFFFFF',
|
backgroundColor: themeManager.isDark ? '#2C2C2C' : '#FFFFFF',
|
||||||
webPreferences: {
|
webPreferences: {
|
||||||
@@ -49,6 +49,8 @@ class WindowService {
|
|||||||
main: { instance: void 0, isHidden: false, onCreate: [], onClosed: [] },
|
main: { instance: void 0, isHidden: false, onCreate: [], onClosed: [] },
|
||||||
setting: { instance: void 0, isHidden: false, onCreate: [], onClosed: [] },
|
setting: { instance: void 0, isHidden: false, onCreate: [], onClosed: [] },
|
||||||
dialog: { instance: void 0, isHidden: false, onCreate: [], onClosed: [] },
|
dialog: { instance: void 0, isHidden: false, onCreate: [], onClosed: [] },
|
||||||
|
login: { instance: void 0, isHidden: false, onCreate: [], onClosed: [] },
|
||||||
|
loading: { instance: void 0, isHidden: false, onCreate: [], onClosed: [] },
|
||||||
}
|
}
|
||||||
|
|
||||||
private constructor() {
|
private constructor() {
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
import { CONFIG_KEYS } from '@common/constants'
|
import { CONFIG_KEYS } from '@common/constants'
|
||||||
import logManager from '@modules/logger'
|
import logManager from '@main/service/logger'
|
||||||
import configManager from '@modules/config-service'
|
import configManager from '@main/service/config-service'
|
||||||
import path from 'node:path'
|
import path from 'node:path'
|
||||||
|
|
||||||
import en from '@locales/en.json'
|
import en from '@locales/en.json'
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { IPC_EVENTS, WINDOW_NAMES } from '@common/constants'
|
import { IPC_EVENTS, WINDOW_NAMES } from '@common/constants'
|
||||||
import { BrowserWindow, ipcMain } from 'electron'
|
import { BrowserWindow, ipcMain } from 'electron'
|
||||||
import { windowManager } from '@modules/window-service'
|
import { windowManager } from '@main/service/window-service'
|
||||||
|
|
||||||
export function setupDialogWindow() {
|
export function setupDialogWindow() {
|
||||||
let dialogWindow: BrowserWindow | void;
|
let dialogWindow: BrowserWindow | void;
|
||||||
|
|||||||
@@ -2,11 +2,11 @@ import type { BrowserWindow } from 'electron'
|
|||||||
import { ipcMain } from 'electron';
|
import { ipcMain } from 'electron';
|
||||||
import { WINDOW_NAMES, MAIN_WIN_SIZE, IPC_EVENTS, MENU_IDS, CONVERSATION_ITEM_MENU_IDS, CONVERSATION_LIST_MENU_IDS, MESSAGE_ITEM_MENU_IDS, CONFIG_KEYS } from '@common/constants'
|
import { WINDOW_NAMES, MAIN_WIN_SIZE, IPC_EVENTS, MENU_IDS, CONVERSATION_ITEM_MENU_IDS, CONVERSATION_LIST_MENU_IDS, MESSAGE_ITEM_MENU_IDS, CONFIG_KEYS } from '@common/constants'
|
||||||
import { createProvider } from '../providers'
|
import { createProvider } from '../providers'
|
||||||
import { windowManager } from '@modules/window-service'
|
import { windowManager } from '@main/service/window-service'
|
||||||
import { menuManager } from '@modules/menu-service'
|
import { menuManager } from '@main/service/menu-service'
|
||||||
import { logManager } from '@modules/logger'
|
import { logManager } from '@main/service/logger'
|
||||||
import { configManager } from '@modules/config-service'
|
import { configManager } from '@main/service/config-service'
|
||||||
import { trayManager } from '@modules/tray-service'
|
import { trayManager } from '@main/service/tray-service'
|
||||||
|
|
||||||
const handleTray = (minimizeToTray: boolean) => {
|
const handleTray = (minimizeToTray: boolean) => {
|
||||||
if (minimizeToTray) {
|
if (minimizeToTray) {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { IPC_EVENTS, WINDOW_NAMES } from '@common/constants'
|
import { IPC_EVENTS, WINDOW_NAMES } from '@common/constants'
|
||||||
import { ipcMain } from 'electron'
|
import { ipcMain } from 'electron'
|
||||||
import { windowManager } from '@modules/window-service'
|
import { windowManager } from '@main/service/window-service'
|
||||||
|
|
||||||
export function setupSetttingWindow() {
|
export function setupSetttingWindow() {
|
||||||
ipcMain.on(`${IPC_EVENTS.OPEN_WINDOW}:${WINDOW_NAMES.SETTING}`, () => {
|
ipcMain.on(`${IPC_EVENTS.OPEN_WINDOW}:${WINDOW_NAMES.SETTING}`, () => {
|
||||||
|
|||||||
@@ -1,18 +1,7 @@
|
|||||||
import { createRouter, createWebHistory } from "vue-router";
|
import { createRouter, createMemoryHistory } from "vue-router";
|
||||||
import Layout from '@renderer/layout/index.vue'
|
import Layout from '@renderer/layout/index.vue'
|
||||||
|
|
||||||
const routes = [
|
const routes = [
|
||||||
{
|
|
||||||
path: "/login",
|
|
||||||
name: "Login",
|
|
||||||
component: () => import("@renderer/views/login/index.vue"),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: "/browser",
|
|
||||||
name: "Browser",
|
|
||||||
component: () => import("@renderer/browser/BrowserLayout.vue"),
|
|
||||||
meta: { requiresAuth: true },
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
path: "/",
|
path: "/",
|
||||||
component: Layout,
|
component: Layout,
|
||||||
@@ -23,53 +12,12 @@ const routes = [
|
|||||||
name: "Home",
|
name: "Home",
|
||||||
meta: { requiresAuth: true },
|
meta: { requiresAuth: true },
|
||||||
},
|
},
|
||||||
{
|
|
||||||
path: "stock",
|
|
||||||
name: "Stock",
|
|
||||||
component: () => import("@renderer/views/stock/index.vue"),
|
|
||||||
meta: { requiresAuth: true },
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: "rate",
|
|
||||||
name: "Rate",
|
|
||||||
component: () => import("@renderer/views/rate/index.vue"),
|
|
||||||
meta: { requiresAuth: true },
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: "order",
|
|
||||||
name: "Order",
|
|
||||||
component: () => import("@renderer/views/order/index.vue"),
|
|
||||||
meta: { requiresAuth: true },
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: "more",
|
|
||||||
name: "More",
|
|
||||||
component: () => import("@renderer/views/more/index.vue"),
|
|
||||||
meta: { requiresAuth: true },
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: "setting",
|
|
||||||
name: "Setting",
|
|
||||||
component: () => import("@renderer/views/setting/index.vue"),
|
|
||||||
meta: { requiresAuth: true },
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: "/dashboard",
|
|
||||||
name: "Dashboard",
|
|
||||||
component: () => import("@renderer/views/dashboard/index.vue"),
|
|
||||||
meta: { requiresAuth: true },
|
|
||||||
},
|
|
||||||
]
|
]
|
||||||
},
|
}
|
||||||
{
|
|
||||||
path: "/about",
|
|
||||||
name: "About",
|
|
||||||
component: () => import("@renderer/views/about/index.vue"),
|
|
||||||
},
|
|
||||||
];
|
];
|
||||||
|
|
||||||
const router = createRouter({
|
const router = createRouter({
|
||||||
history: createWebHistory(),
|
history: createMemoryHistory(),
|
||||||
routes,
|
routes,
|
||||||
scrollBehavior(to: any, from: any, savedPosition: any) {
|
scrollBehavior(to: any, from: any, savedPosition: any) {
|
||||||
if (savedPosition) {
|
if (savedPosition) {
|
||||||
@@ -80,24 +28,24 @@ const router = createRouter({
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
router.beforeEach((to: any, from: any, next: any) => {
|
// router.beforeEach((to: any, from: any, next: any) => {
|
||||||
const token = localStorage.getItem("token");
|
// const token = localStorage.getItem("token");
|
||||||
if (to.meta && (to.meta as any).requiresAuth && !token) {
|
// if (to.meta && (to.meta as any).requiresAuth && !token) {
|
||||||
next({ path: "/login" });
|
// next({ path: "/login" });
|
||||||
return;
|
// return;
|
||||||
}
|
// }
|
||||||
|
|
||||||
if (token && to.path === "/login") {
|
// if (token && to.path === "/login") {
|
||||||
next({ path: "/home" });
|
// next({ path: "/home" });
|
||||||
return;
|
// return;
|
||||||
}
|
// }
|
||||||
|
|
||||||
if (token && to.path === "/") {
|
// if (token && to.path === "/") {
|
||||||
next({ path: "/home" });
|
// next({ path: "/home" });
|
||||||
return;
|
// return;
|
||||||
}
|
// }
|
||||||
|
|
||||||
next();
|
// next();
|
||||||
});
|
// });
|
||||||
|
|
||||||
export default router;
|
export default router;
|
||||||
|
|||||||
18
src/renderer/utils/errorHandler.ts
Normal file
18
src/renderer/utils/errorHandler.ts
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
import type { Plugin } from 'vue'
|
||||||
|
import logger from './logger'
|
||||||
|
|
||||||
|
export const errorHandler: Plugin = (app) => {
|
||||||
|
app.config.errorHandler = (err, instance, info) => {
|
||||||
|
logger.error('Vue error:', err, instance, info);
|
||||||
|
};
|
||||||
|
|
||||||
|
window.onerror = (message, source, lineno, colno, error) => {
|
||||||
|
logger.error('Window error:', message, source, lineno, colno, error);
|
||||||
|
};
|
||||||
|
|
||||||
|
window.onunhandledrejection = (event) => {
|
||||||
|
logger.error('Unhandled Promise Rejection:', event);
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
export default errorHandler;
|
||||||
15
src/renderer/views/dialog/index.ts
Normal file
15
src/renderer/views/dialog/index.ts
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
import '@renderer/styles/index.css'
|
||||||
|
|
||||||
|
import errorHandler from '@utils/errorHandler'
|
||||||
|
import i18n from '@renderer/i18n'
|
||||||
|
import HeaderBar from '@renderer/components/HeaderBar/index.vue'
|
||||||
|
import DragRegion from '@renderer/components/DragRegion/index.vue'
|
||||||
|
|
||||||
|
import Dialog from './index.vue'
|
||||||
|
|
||||||
|
createApp(Dialog)
|
||||||
|
.use(i18n)
|
||||||
|
.use(errorHandler)
|
||||||
|
.component('HeaderBar', HeaderBar)
|
||||||
|
.component('DragRegion', DragRegion)
|
||||||
|
.mount('#app')
|
||||||
5
src/renderer/views/dialog/index.vue
Normal file
5
src/renderer/views/dialog/index.vue
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<template></template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
|
||||||
|
</script>
|
||||||
16
src/renderer/views/loading/index.ts
Normal file
16
src/renderer/views/loading/index.ts
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
import '@renderer/styles/index.css'
|
||||||
|
|
||||||
|
import errorHandler from '@utils/errorHandler'
|
||||||
|
import i18n from '@renderer/i18n'
|
||||||
|
import HeaderBar from '@renderer/components/HeaderBar/index.vue'
|
||||||
|
import DragRegion from '@renderer/components/DragRegion/index.vue'
|
||||||
|
|
||||||
|
import Loading from './index.vue'
|
||||||
|
|
||||||
|
createApp(Loading)
|
||||||
|
.use(i18n)
|
||||||
|
.use(createPinia())
|
||||||
|
.use(errorHandler)
|
||||||
|
.component('HeaderBar', HeaderBar)
|
||||||
|
.component('DragRegion', DragRegion)
|
||||||
|
.mount('#app')
|
||||||
5
src/renderer/views/loading/index.vue
Normal file
5
src/renderer/views/loading/index.vue
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<template></template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
|
||||||
|
</script>
|
||||||
16
src/renderer/views/login/index.ts
Normal file
16
src/renderer/views/login/index.ts
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
import '@renderer/styles/index.css'
|
||||||
|
|
||||||
|
import errorHandler from '@utils/errorHandler'
|
||||||
|
import i18n from '@renderer/i18n'
|
||||||
|
import HeaderBar from '@renderer/components/HeaderBar/index.vue'
|
||||||
|
import DragRegion from '@renderer/components/DragRegion/index.vue'
|
||||||
|
|
||||||
|
import Login from './index.vue'
|
||||||
|
|
||||||
|
createApp(Login)
|
||||||
|
.use(i18n)
|
||||||
|
.use(createPinia())
|
||||||
|
.use(errorHandler)
|
||||||
|
.component('HeaderBar', HeaderBar)
|
||||||
|
.component('DragRegion', DragRegion)
|
||||||
|
.mount('#app')
|
||||||
15
src/renderer/views/setting/index.ts
Normal file
15
src/renderer/views/setting/index.ts
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
import '@renderer/styles/index.css'
|
||||||
|
|
||||||
|
import errorHandler from '@renderer/utils/errorHandler'
|
||||||
|
import i18n from '@renderer/i18n'
|
||||||
|
import HeaderBar from '@renderer/components/HeaderBar/index.vue'
|
||||||
|
import DragRegion from '@renderer/components/DragRegion/index.vue'
|
||||||
|
|
||||||
|
import Setting from './index.vue'
|
||||||
|
|
||||||
|
createApp(Setting)
|
||||||
|
.use(i18n)
|
||||||
|
.use(errorHandler)
|
||||||
|
.component('HeaderBar', HeaderBar)
|
||||||
|
.component('DragRegion', DragRegion)
|
||||||
|
.mount('#app')
|
||||||
@@ -34,7 +34,7 @@
|
|||||||
"@utils/*": ["src/renderer/utils/*"],
|
"@utils/*": ["src/renderer/utils/*"],
|
||||||
"@common/*": ["src/common/*"],
|
"@common/*": ["src/common/*"],
|
||||||
"@main/*": ["src/main/*"],
|
"@main/*": ["src/main/*"],
|
||||||
"@modules/*": ["src/main/modules/*"],
|
"@service/*": ["src/main/service/*"],
|
||||||
"@locales/*": ["locales/*"],
|
"@locales/*": ["locales/*"],
|
||||||
"@hooks/*": ["src/renderer/hooks/*"],
|
"@hooks/*": ["src/renderer/hooks/*"],
|
||||||
"@components/*": ["src/renderer/components/*"],
|
"@components/*": ["src/renderer/components/*"],
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
"paths": {
|
"paths": {
|
||||||
"@assets/*": ["src/assets/*"],
|
"@assets/*": ["src/assets/*"],
|
||||||
"@common/*": ["src/common/*"],
|
"@common/*": ["src/common/*"],
|
||||||
"@modules/*": ["src/main/modules/*"],
|
"@service/*": ["src/main/service/*"],
|
||||||
"@locales/*": ["locales/*"]
|
"@locales/*": ["locales/*"]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ export default defineConfig( async () => {
|
|||||||
'@common': resolve(__dirname, './src/common'),
|
'@common': resolve(__dirname, './src/common'),
|
||||||
'@renderer': resolve(__dirname, './src/renderer'),
|
'@renderer': resolve(__dirname, './src/renderer'),
|
||||||
'@locales': resolve(__dirname, 'locales'),
|
'@locales': resolve(__dirname, 'locales'),
|
||||||
"@modules": resolve(__dirname, "./src/main/modules"),
|
"@service": resolve(__dirname, "./src/main/service"),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,6 +16,19 @@ export default defineConfig(async () => {
|
|||||||
css: {
|
css: {
|
||||||
transformer: 'lightningcss' as CSSOptions['transformer'],
|
transformer: 'lightningcss' as CSSOptions['transformer'],
|
||||||
},
|
},
|
||||||
|
|
||||||
|
build: {
|
||||||
|
target: 'es2022',
|
||||||
|
publicDir: 'public',
|
||||||
|
rollupOptions: {
|
||||||
|
input: [
|
||||||
|
resolve(__dirname, 'html/index.html'),
|
||||||
|
resolve(__dirname, 'html/dialog.html'),
|
||||||
|
resolve(__dirname, 'html/setting.html'),
|
||||||
|
resolve(__dirname, 'html/loading.html'),
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
resolve: {
|
resolve: {
|
||||||
preserveSymlinks: true,
|
preserveSymlinks: true,
|
||||||
|
|||||||
Reference in New Issue
Block a user