diff --git a/.gitignore b/.gitignore
index 6a4b9fe..006f18f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -25,3 +25,4 @@ dist-ssr
*.sw?
*.ttf
+vite.config.ts
diff --git a/README.md b/README.md
index f1c08eb..228cfa6 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,7 @@
## 界面快照
-
+
## 当前功能
diff --git a/frontend/index.html b/frontend/index.html
index f41c537..7ec0630 100644
--- a/frontend/index.html
+++ b/frontend/index.html
@@ -2,7 +2,7 @@
-

+
-

+
@@ -176,7 +188,7 @@ console.log('App.vue: script setup completed')
class="w-4 h-4 shrink-0 cursor-pointer hover:opacity-70 transition-opacity flex items-center justify-center p-0 border-0 bg-transparent"
title="减小字体"
>
-

+
diff --git a/frontend/assets/icons/Button.svg b/frontend/src/assets/icons/Button.svg
similarity index 100%
rename from frontend/assets/icons/Button.svg
rename to frontend/src/assets/icons/Button.svg
diff --git a/frontend/assets/icons/checkbox.svg b/frontend/src/assets/icons/checkbox.svg
similarity index 100%
rename from frontend/assets/icons/checkbox.svg
rename to frontend/src/assets/icons/checkbox.svg
diff --git a/frontend/assets/icons/choose-color.svg b/frontend/src/assets/icons/choose-color.svg
similarity index 100%
rename from frontend/assets/icons/choose-color.svg
rename to frontend/src/assets/icons/choose-color.svg
diff --git a/frontend/assets/icons/expand.svg b/frontend/src/assets/icons/expand.svg
similarity index 100%
rename from frontend/assets/icons/expand.svg
rename to frontend/src/assets/icons/expand.svg
diff --git a/frontend/assets/icons/export-png.svg b/frontend/src/assets/icons/export-png.svg
similarity index 100%
rename from frontend/assets/icons/export-png.svg
rename to frontend/src/assets/icons/export-png.svg
diff --git a/frontend/assets/icons/export-svg.svg b/frontend/src/assets/icons/export-svg.svg
similarity index 100%
rename from frontend/assets/icons/export-svg.svg
rename to frontend/src/assets/icons/export-svg.svg
diff --git a/frontend/assets/icons/export.svg b/frontend/src/assets/icons/export.svg
similarity index 100%
rename from frontend/assets/icons/export.svg
rename to frontend/src/assets/icons/export.svg
diff --git a/frontend/assets/icons/font-icon.svg b/frontend/src/assets/icons/font-icon.svg
similarity index 100%
rename from frontend/assets/icons/font-icon.svg
rename to frontend/src/assets/icons/font-icon.svg
diff --git a/frontend/assets/icons/font-size-decrease.svg b/frontend/src/assets/icons/font-size-decrease.svg
similarity index 100%
rename from frontend/assets/icons/font-size-decrease.svg
rename to frontend/src/assets/icons/font-size-decrease.svg
diff --git a/frontend/assets/icons/font-size-increase.svg b/frontend/src/assets/icons/font-size-increase.svg
similarity index 100%
rename from frontend/assets/icons/font-size-increase.svg
rename to frontend/src/assets/icons/font-size-increase.svg
diff --git a/frontend/assets/icons/icons_idx _12.svg b/frontend/src/assets/icons/icons_idx _12.svg
similarity index 100%
rename from frontend/assets/icons/icons_idx _12.svg
rename to frontend/src/assets/icons/icons_idx _12.svg
diff --git a/frontend/assets/icons/icons_idx _18.svg b/frontend/src/assets/icons/icons_idx _18.svg
similarity index 100%
rename from frontend/assets/icons/icons_idx _18.svg
rename to frontend/src/assets/icons/icons_idx _18.svg
diff --git a/frontend/assets/icons/icons_idx _19.svg b/frontend/src/assets/icons/icons_idx _19.svg
similarity index 100%
rename from frontend/assets/icons/icons_idx _19.svg
rename to frontend/src/assets/icons/icons_idx _19.svg
diff --git a/frontend/assets/icons/icons_idx _29.svg b/frontend/src/assets/icons/icons_idx _29.svg
similarity index 100%
rename from frontend/assets/icons/icons_idx _29.svg
rename to frontend/src/assets/icons/icons_idx _29.svg
diff --git a/frontend/assets/icons/icons_idx _32.svg b/frontend/src/assets/icons/icons_idx _32.svg
similarity index 100%
rename from frontend/assets/icons/icons_idx _32.svg
rename to frontend/src/assets/icons/icons_idx _32.svg
diff --git a/frontend/assets/icons/icons_idx _33.svg b/frontend/src/assets/icons/icons_idx _33.svg
similarity index 100%
rename from frontend/assets/icons/icons_idx _33.svg
rename to frontend/src/assets/icons/icons_idx _33.svg
diff --git a/frontend/assets/icons/icons_idx _34.svg b/frontend/src/assets/icons/icons_idx _34.svg
similarity index 100%
rename from frontend/assets/icons/icons_idx _34.svg
rename to frontend/src/assets/icons/icons_idx _34.svg
diff --git a/frontend/assets/icons/icons_idx _35.svg b/frontend/src/assets/icons/icons_idx _35.svg
similarity index 100%
rename from frontend/assets/icons/icons_idx _35.svg
rename to frontend/src/assets/icons/icons_idx _35.svg
diff --git a/frontend/assets/icons/icons_idx _36.svg b/frontend/src/assets/icons/icons_idx _36.svg
similarity index 100%
rename from frontend/assets/icons/icons_idx _36.svg
rename to frontend/src/assets/icons/icons_idx _36.svg
diff --git a/frontend/assets/icons/icons_idx _37.svg b/frontend/src/assets/icons/icons_idx _37.svg
similarity index 100%
rename from frontend/assets/icons/icons_idx _37.svg
rename to frontend/src/assets/icons/icons_idx _37.svg
diff --git a/frontend/assets/icons/icons_idx _38.svg b/frontend/src/assets/icons/icons_idx _38.svg
similarity index 100%
rename from frontend/assets/icons/icons_idx _38.svg
rename to frontend/src/assets/icons/icons_idx _38.svg
diff --git a/frontend/assets/icons/zhedie.svg b/frontend/src/assets/icons/zhedie.svg
similarity index 100%
rename from frontend/assets/icons/zhedie.svg
rename to frontend/src/assets/icons/zhedie.svg
diff --git a/frontend/assets/icons/星程字体.svg b/frontend/src/assets/icons/星程字体.svg
similarity index 100%
rename from frontend/assets/icons/星程字体.svg
rename to frontend/src/assets/icons/星程字体.svg
diff --git a/frontend/assets/icons/星程字体转换.svg b/frontend/src/assets/icons/星程字体转换.svg
similarity index 100%
rename from frontend/assets/icons/星程字体转换.svg
rename to frontend/src/assets/icons/星程字体转换.svg
diff --git a/frontend/assets/snapshot.png b/frontend/src/assets/snapshot.png
similarity index 100%
rename from frontend/assets/snapshot.png
rename to frontend/src/assets/snapshot.png
diff --git a/frontend/assets/vue.svg b/frontend/src/assets/vue.svg
similarity index 100%
rename from frontend/assets/vue.svg
rename to frontend/src/assets/vue.svg
diff --git a/frontend/assets/webicon.png b/frontend/src/assets/webicon.png
similarity index 100%
rename from frontend/assets/webicon.png
rename to frontend/src/assets/webicon.png
diff --git a/frontend/src/assets/webicon.svg b/frontend/src/assets/webicon.svg
new file mode 100644
index 0000000..bd830bc
--- /dev/null
+++ b/frontend/src/assets/webicon.svg
@@ -0,0 +1,9 @@
+
diff --git a/frontend/src/components/FavoritesList.vue b/frontend/src/components/FavoritesList.vue
index 10e160f..bf2804d 100644
--- a/frontend/src/components/FavoritesList.vue
+++ b/frontend/src/components/FavoritesList.vue
@@ -38,7 +38,7 @@ function isInPreview(fontId: string): boolean {
>
-

+
@@ -52,7 +52,7 @@ function isInPreview(fontId: string): boolean {
class="w-[18px] h-[18px] shrink-0 border rounded-full flex items-center justify-center p-0 bg-transparent"
:class="isInPreview(font.id) ? 'bg-[#9b6bc2] border-[#9b6bc2]' : 'border-[#c9cdd4]'"
>
-

+

@@ -61,7 +61,7 @@ function isInPreview(fontId: string): boolean {
class="w-[18px] h-[17px] shrink-0 p-0 border-0 bg-transparent"
>

@@ -79,7 +79,7 @@ function isInPreview(node: FontTreeNode): boolean {
@@ -88,7 +88,7 @@ function isInPreview(node: FontTreeNode): boolean {
-

+
@@ -102,7 +102,7 @@ function isInPreview(node: FontTreeNode): boolean {
class="w-[18px] h-[18px] shrink-0 border rounded-full flex items-center justify-center p-0 bg-transparent"
:class="isInPreview(child) ? 'bg-[#9b6bc2] border-[#9b6bc2]' : 'border-[#c9cdd4]'"
>
-

+

@@ -111,7 +111,7 @@ function isInPreview(node: FontTreeNode): boolean {
class="w-[18px] h-[17px] shrink-0 p-0 border-0 bg-transparent"
>
-

+
@@ -109,7 +109,7 @@ function toggleSelectItem(item: PreviewItemType) {
class="w-[18px] h-[18px] shrink-0 border rounded-full flex items-center justify-center p-0 bg-transparent"
:class="item.selected ? 'bg-[#9b6bc2] border-[#9b6bc2]' : 'border-[#c9cdd4]'"
>
-

+
diff --git a/frontend/src/types/modules.d.ts b/frontend/src/types/modules.d.ts
index 8a191cd..78ac49d 100644
--- a/frontend/src/types/modules.d.ts
+++ b/frontend/src/types/modules.d.ts
@@ -48,4 +48,14 @@ declare module 'opentype.js' {
declare module 'harfbuzzjs' {
export default function (): Promise
-}
\ No newline at end of file
+}
+
+declare module 'harfbuzzjs/hb.js' {
+ const createHarfBuzz: any
+ export default createHarfBuzz
+}
+
+declare module 'harfbuzzjs/hbjs.js' {
+ const bindHarfBuzz: any
+ export default bindHarfBuzz
+}
diff --git a/frontend/vite.config.ts b/frontend/vite.config.ts
index f5221e2..4e63245 100644
--- a/frontend/vite.config.ts
+++ b/frontend/vite.config.ts
@@ -2,9 +2,6 @@ import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import UnoCSS from 'unocss/vite'
import wasm from 'vite-plugin-wasm'
-import fs from 'fs'
-import path from 'path'
-import { homedir } from 'os'
// https://vite.dev/config/
export default defineConfig({
@@ -18,9 +15,5 @@ export default defineConfig({
server: {
host: '0.0.0.0',
port: 5174,
- https: {
- key: fs.readFileSync(path.join(homedir(), 'mac.biboer.cn_ecc/mac.biboer.cn.key')),
- cert: fs.readFileSync(path.join(homedir(), 'mac.biboer.cn_ecc/fullchain.cer'))
- }
}
})