Kaynağa Gözat

修改组件排列和图标

dsy 1 ay önce
ebeveyn
işleme
33611f3193
33 değiştirilmiş dosya ile 311 ekleme ve 192 silme
  1. 1 1
      .env
  2. 1 1
      package.json
  3. 2 2
      src/components/RichText.vue
  4. 6 0
      src/icons/svg/components/article.svg
  5. 6 3
      src/icons/svg/components/audio.svg
  6. 6 0
      src/icons/svg/components/dialogue_article.svg
  7. 6 0
      src/icons/svg/components/drawing.svg
  8. 6 0
      src/icons/svg/components/fill.svg
  9. 6 0
      src/icons/svg/components/games.svg
  10. 6 0
      src/icons/svg/components/image_text.svg
  11. 6 0
      src/icons/svg/components/input.svg
  12. 6 3
      src/icons/svg/components/label.svg
  13. 6 0
      src/icons/svg/components/matching.svg
  14. 6 3
      src/icons/svg/components/picture.svg
  15. 6 0
      src/icons/svg/components/record_input.svg
  16. 6 1
      src/icons/svg/components/richtext.svg
  17. 6 0
      src/icons/svg/components/select.svg
  18. 6 0
      src/icons/svg/components/sort.svg
  19. 6 3
      src/icons/svg/components/spacing.svg
  20. 6 0
      src/icons/svg/components/table.svg
  21. 6 0
      src/icons/svg/components/three-model.svg
  22. 6 5
      src/icons/svg/components/uploadPreview.svg
  23. 6 3
      src/icons/svg/components/video.svg
  24. 6 0
      src/icons/svg/components/video_interaction.svg
  25. 6 0
      src/icons/svg/components/voice_matrix.svg
  26. 6 0
      src/icons/svg/components/write_base.svg
  27. 6 0
      src/icons/svg/components/文件.svg
  28. 6 0
      src/icons/svg/components/问答题.svg
  29. 0 13
      src/icons/svg/games.svg
  30. 0 1
      src/icons/svg/three-model.svg
  31. 0 1
      src/icons/svg/write_base.svg
  32. 156 150
      src/views/book/courseware/data/bookType.js
  33. 1 2
      src/views/book/courseware/preview/components/matching/MatchingPreview.vue

+ 1 - 1
.env

@@ -11,4 +11,4 @@ VUE_APP_BookWebSI = '/GCLSBookWebSI/ServiceInterface'
 VUE_APP_EepServer = '/EEPServer/SI'
 
 #version
-VUE_APP_VERSION = '2026.01.12'
+VUE_APP_VERSION = '2026.01.16'

+ 1 - 1
package.json

@@ -1,6 +1,6 @@
 {
   "name": "eep_page",
-  "version": "2026.01.12",
+  "version": "2026.01.16",
   "private": true,
   "main": "main.js",
   "description": "智慧梧桐数字教材编辑器",

+ 2 - 2
src/components/RichText.vue

@@ -103,11 +103,11 @@ export default {
     },
     fontSize: {
       type: String,
-      default: '14pt',
+      default: '12pt',
     },
     fontFamily: {
       type: String,
-      default: '宋体',
+      default: 'Arial',
     },
     isHasSpace: {
       type: Boolean,

+ 6 - 0
src/icons/svg/components/article.svg

@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M26.667 29.333h-21.333c-0.736 0-1.333-0.597-1.333-1.333v0-24c0-0.736 0.597-1.333 1.333-1.333v0h21.333c0.736 0 1.333 0.597 1.333 1.333v0 24c0 0.736-0.597 1.333-1.333 1.333v0zM25.333 26.667v-21.333h-18.667v21.333h18.667zM10.667 9.333h10.667v2.667h-10.667v-2.667zM10.667 14.667h10.667v2.667h-10.667v-2.667zM10.667 20h6.667v2.667h-6.667v-2.667z" fill="rgba(16,16,16,1)"></path>
+    </g>
+  </svg>

+ 6 - 3
src/icons/svg/components/audio.svg

@@ -1,3 +1,6 @@
-<svg width="14" height="12" viewBox="0 0 14 12" fill="none" xmlns="http://www.w3.org/2000/svg">
-<path d="M13.3337 0V9.33333C13.3337 10.8061 12.1397 12 10.667 12C9.19426 12 8.00033 10.8061 8.00033 9.33333C8.00033 7.8606 9.19426 6.66667 10.667 6.66667C11.1527 6.66667 11.6081 6.79653 12.0003 7.0234V1.33333H6.00033V9.33333C6.00033 10.8061 4.80642 12 3.33366 12C1.8609 12 0.666992 10.8061 0.666992 9.33333C0.666992 7.8606 1.8609 6.66667 3.33366 6.66667C3.81937 6.66667 4.27476 6.79653 4.66699 7.0234V0H13.3337ZM3.33366 10.6667C4.07004 10.6667 4.66699 10.0697 4.66699 9.33333C4.66699 8.59693 4.07004 8 3.33366 8C2.59728 8 2.00033 8.59693 2.00033 9.33333C2.00033 10.0697 2.59728 10.6667 3.33366 10.6667ZM10.667 10.6667C11.4034 10.6667 12.0003 10.0697 12.0003 9.33333C12.0003 8.59693 11.4034 8 10.667 8C9.93059 8 9.33366 8.59693 9.33366 9.33333C9.33366 10.0697 9.93059 10.6667 10.667 10.6667Z" fill="black"/>
-</svg>
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M13.333 9.627l-4.529 3.707h-4.804v5.333h4.804l4.529 3.707v-12.747zM7.852 21.333h-5.185c-0.736 0-1.333-0.597-1.333-1.333v0-8c0-0.736 0.597-1.333 1.333-1.333v0h5.185l7.059-5.776c0.114-0.094 0.262-0.151 0.423-0.151 0.368 0 0.667 0.298 0.667 0.667 0 0 0 0 0 0v-0 21.187c0 0 0 0 0 0 0 0.368-0.298 0.667-0.667 0.667-0.161 0-0.309-0.057-0.424-0.152l0.001 0.001-7.057-5.776zM25.875 26.845l-1.888-1.888c2.467-2.203 4.013-5.392 4.013-8.943 0-0.005 0-0.010 0-0.015v0.001c0-0.003 0-0.007 0-0.011 0-3.733-1.708-7.066-4.384-9.263l-0.021-0.017 1.893-1.893c3.177 2.702 5.179 6.702 5.179 11.169 0 0.005 0 0.010 0 0.015v-0.001c0 4.297-1.848 8.163-4.792 10.845zM21.151 22.121l-1.896-1.896c1.269-0.983 2.079-2.507 2.079-4.221 0-0.002 0-0.003 0-0.005v0c0-1.907-1-3.58-2.507-4.523l1.919-1.919c1.983 1.471 3.255 3.804 3.255 6.435 0 0.002 0 0.005 0 0.007v-0c0 2.456-1.107 4.653-2.849 6.121z" fill="rgba(16,16,16,1)"></path>
+    </g>
+  </svg>

+ 6 - 0
src/icons/svg/components/dialogue_article.svg

@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 48 48" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <rect width="48" height="48" fill="rgba(16,16,16,1)" fill-opacity="0.01" stroke="none"></rect><path d="M33 38H22V30H36V22H44V38H39L36 41L33 38Z" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"></path><path d="M4 6H36V30H17L13 34L9 30H4V6Z" fill="none" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"></path><path d="M12 22H18" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linecap="round" fill="none"></path><path d="M12 14H24" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linecap="round" fill="none"></path>
+    </g>
+  </svg>

+ 6 - 0
src/icons/svg/components/drawing.svg

@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M11.448 22.667h-7.448v-2.667h24v2.667h-7.448l4.324 4.324-1.885 1.885-5.657-5.657v3.448h-2.667v-3.448l-5.657 5.657-1.885-1.885 4.324-4.324zM6.667 4h18.667c0.736 0 1.333 0.597 1.333 1.333v0 13.333h-21.333v-13.333c0-0.736 0.597-1.333 1.333-1.333v0zM8 6.667v9.333h16v-9.333h-16z" fill="rgba(16,16,16,1)"></path>
+    </g>
+  </svg>

+ 6 - 0
src/icons/svg/components/fill.svg

@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M8.552 21.333l13.523-13.523-1.885-1.885-13.523 13.523v1.885h1.885zM9.657 24h-5.657v-5.657l15.247-15.247c0.241-0.241 0.575-0.39 0.943-0.39s0.701 0.149 0.943 0.39l3.772 3.772c0.241 0.241 0.39 0.575 0.39 0.943s-0.149 0.701-0.39 0.943l-15.247 15.247zM4 26.667h24v2.667h-24v-2.667z" fill="rgba(16,16,16,1)"></path>
+    </g>
+  </svg>

+ 6 - 0
src/icons/svg/components/games.svg

@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M22.667 5.333c4.418 0 8 3.582 8 8v0 5.333c0 4.418-3.582 8-8 8v0h-13.333c-4.418 0-8-3.582-8-8v0-5.333c0-4.418 3.582-8 8-8v0h13.333zM22.667 8h-13.333c-2.852 0-5.181 2.238-5.326 5.054l-0.001 0.013-0.007 0.267v5.333c0 2.852 2.238 5.181 5.054 5.326l0.013 0.001 0.267 0.007h13.333c2.852 0 5.181-2.238 5.326-5.054l0.001-0.013 0.007-0.267v-5.333c0-2.852-2.238-5.181-5.054-5.326l-0.013-0.001-0.267-0.007zM13.333 12v2.667h2.667v2.667h-2.668l0.001 2.667h-2.667l-0.001-2.667h-2.665v-2.667h2.667v-2.667h2.667zM24 17.333v2.667h-2.667v-2.667h2.667zM21.333 12v2.667h-2.667v-2.667h2.667z" fill="rgba(16,16,16,1)"></path>
+    </g>
+  </svg>

+ 6 - 0
src/icons/svg/components/image_text.svg

@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M2.667 5.324c0.005-0.729 0.594-1.318 1.322-1.324h24.022c0.731 0 1.323 0.593 1.323 1.324v21.352c-0.005 0.729-0.594 1.318-1.322 1.324h-24.022c-0.731-0.001-1.323-0.593-1.323-1.324v0-21.352zM5.333 6.667v18.667h21.333v-18.667h-21.333zM8 9.333h8v8h-8v-8zM10.667 12v2.667h2.667v-2.667h-2.667zM8 20h16v2.667h-16v-2.667zM18.667 9.333h5.333v2.667h-5.333v-2.667zM18.667 14.667h5.333v2.667h-5.333v-2.667z" fill="rgba(16,16,16,1)"></path>
+    </g>
+  </svg>

+ 6 - 0
src/icons/svg/components/input.svg

@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M26.445 11.403c0 0.588-0.477 1.065-1.065 1.065s-1.065-0.477-1.065-1.065c0-0.588 0.477-1.065 1.065-1.065s1.065 0.477 1.065 1.065zM21.653 11.403c0 0.588-0.477 1.065-1.065 1.065s-1.065-0.477-1.065-1.065c0-0.588 0.477-1.065 1.065-1.065s1.065 0.477 1.065 1.065zM17.040 11.403c0 0.588-0.477 1.065-1.065 1.065s-1.065-0.477-1.065-1.065c0-0.588 0.477-1.065 1.065-1.065s1.065 0.477 1.065 1.065zM12.426 11.403c0 0.588-0.477 1.065-1.065 1.065s-1.065-0.477-1.065-1.065c0-0.588 0.477-1.065 1.065-1.065s1.065 0.477 1.065 1.065zM7.812 11.403c0 0.588-0.477 1.065-1.065 1.065s-1.065-0.477-1.065-1.065c0-0.588 0.477-1.065 1.065-1.065s1.065 0.477 1.065 1.065zM23.961 16.017c0 0.588-0.477 1.065-1.065 1.065s-1.065-0.477-1.065-1.065c0-0.588 0.477-1.065 1.065-1.065s1.065 0.477 1.065 1.065zM19.346 16.017c0 0.588-0.477 1.065-1.065 1.065s-1.065-0.477-1.065-1.065c0-0.588 0.477-1.065 1.065-1.065s1.065 0.477 1.065 1.065zM14.733 16.017c0 0.588-0.477 1.065-1.065 1.065s-1.065-0.477-1.065-1.065c0-0.588 0.477-1.065 1.065-1.065s1.065 0.477 1.065 1.065zM10.118 16.017c0 0.588-0.477 1.065-1.065 1.065s-1.065-0.477-1.065-1.065c0-0.588 0.477-1.065 1.065-1.065s1.065 0.477 1.065 1.065zM10.297 19.744h11.003v1.774h-11.003zM1.513 5.013v21.296h29.28v-21.296h-29.28zM29.018 24.533h-25.732v-17.743h25.732v17.743z" fill="rgba(16,16,16,1)"></path>
+    </g>
+  </svg>

+ 6 - 3
src/icons/svg/components/label.svg

@@ -1,3 +1,6 @@
-<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
-<path d="M7.26979 0.398438L13.8695 1.34124L14.8123 7.9409L8.68399 14.0692C8.42366 14.3295 8.00159 14.3295 7.74119 14.0692L1.14155 7.4695C0.881201 7.20917 0.881201 6.78704 1.14155 6.5267L7.26979 0.398438ZM7.74119 1.81265L2.55577 6.9981L8.21259 12.655L13.3981 7.4695L12.691 2.51976L7.74119 1.81265ZM9.15546 6.0553C8.63473 5.53459 8.63473 4.69037 9.15546 4.16967C9.67613 3.64897 10.5203 3.64897 11.0411 4.16967C11.5617 4.69037 11.5617 5.53459 11.0411 6.0553C10.5203 6.57597 9.67613 6.57597 9.15546 6.0553Z" fill="black"/>
-</svg>
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M4 9.333l11.26-7.507c0.208-0.14 0.464-0.224 0.74-0.224s0.532 0.084 0.745 0.227l-0.005-0.003 11.26 7.507v18.667c0 0.736-0.597 1.333-1.333 1.333v0h-21.333c-0.736 0-1.333-0.597-1.333-1.333v0-18.667zM6.667 10.76v15.907h18.667v-15.907l-9.333-6.221-9.333 6.221zM10.667 21.333h10.667v2.667h-10.667v-2.667zM10.667 17.333h10.667v2.667h-10.667v-2.667zM16 14.667c-1.473 0-2.667-1.194-2.667-2.667s1.194-2.667 2.667-2.667v0c1.473 0 2.667 1.194 2.667 2.667s-1.194 2.667-2.667 2.667v0z" fill="rgba(16,16,16,1)"></path>
+    </g>
+  </svg>

+ 6 - 0
src/icons/svg/components/matching.svg

@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 48 48" width="22" height="22" style="" filter="none">
+    
+    <g>
+    <rect width="48" height="48" fill="rgba(16,16,16,1)" fill-opacity="0.01" stroke="none"></rect><path d="M36 8L13 8C10 8 4 10 4 16C4 22 10 24 13 24H35C38 24 44 26 44 32C44 38 38 40 35 40H12" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"></path><path d="M40 12C42.2091 12 44 10.2091 44 8C44 5.79086 42.2091 4 40 4C37.7909 4 36 5.79086 36 8C36 10.2091 37.7909 12 40 12Z" fill="none" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linejoin="round"></path><path d="M8 44C10.2091 44 12 42.2091 12 40C12 37.7909 10.2091 36 8 36C5.79086 36 4 37.7909 4 40C4 42.2091 5.79086 44 8 44Z" fill="none" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linejoin="round"></path>
+    </g>
+  </svg>

+ 6 - 3
src/icons/svg/components/picture.svg

@@ -1,3 +1,6 @@
-<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
-<path d="M1.33333 5.40033L2.66667 4.067L6.33333 7.73367L8.66667 5.40033L10.6667 7.40033V1.33333H1.33333V5.40033ZM1.33333 7.28593V10.6667H3.40033L5.39053 8.67647L2.66667 5.9526L1.33333 7.28593ZM5.28593 10.6667H10.6667V9.28593L8.66667 7.28593L5.28593 10.6667ZM0.666667 0H11.3333C11.7015 0 12 0.29848 12 0.666667V11.3333C12 11.7015 11.7015 12 11.3333 12H0.666667C0.29848 12 0 11.7015 0 11.3333V0.666667C0 0.29848 0.29848 0 0.666667 0ZM8.33333 4.66667C7.78107 4.66667 7.33333 4.21895 7.33333 3.66667C7.33333 3.11438 7.78107 2.66667 8.33333 2.66667C8.8856 2.66667 9.33333 3.11438 9.33333 3.66667C9.33333 4.21895 8.8856 4.66667 8.33333 4.66667Z" fill="black"/>
-</svg>
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M6.437 28l-0.027 0.027-0.028-0.027h-2.393c-0.731-0.001-1.323-0.593-1.323-1.324v0-21.352c0.005-0.729 0.594-1.318 1.322-1.324h24.022c0.731 0 1.323 0.593 1.323 1.324v21.352c-0.005 0.729-0.594 1.318-1.322 1.324h-21.574zM26.667 20v-13.333h-21.333v18.667l13.333-13.333 8 8zM26.667 23.771l-8-8-9.563 9.563h17.563v-1.563zM10.667 14.667c-1.473 0-2.667-1.194-2.667-2.667s1.194-2.667 2.667-2.667v0c1.473 0 2.667 1.194 2.667 2.667s-1.194 2.667-2.667 2.667v0z" fill="rgba(16,16,16,1)"></path>
+    </g>
+  </svg>

+ 6 - 0
src/icons/svg/components/record_input.svg

@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M16 22c3.4 0 6-2.6 6-6v-8c0-3.4-2.6-6-6-6s-6 2.6-6 6v8c0 3.4 2.6 6 6 6zM12 8c0-2.2 1.8-4 4-4s4 1.8 4 4v8c0 2.2-1.8 4-4 4s-4-1.8-4-4v-8z" fill="rgba(16,16,16,1)"></path><path d="M24 14v2c0 4.4-3.6 8-8 8s-8-3.6-8-8v-2h-2v2c0 5.2 4 9.4 9 9.8v2.2h-5v2h12v-2h-5v-2.2c5-0.4 9-4.6 9-9.8v-2h-2z" fill="rgba(16,16,16,1)"></path>
+    </g>
+  </svg>

+ 6 - 1
src/icons/svg/components/richtext.svg

@@ -1 +1,6 @@
-<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1753441956864" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2349" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16"><path d="M712.145455 316.509091h-390.981819c-18.618182 0-37.236364 13.963636-37.236363 37.236364s18.618182 37.236364 37.236363 37.236363h158.254546v344.436364c0 18.618182 18.618182 37.236364 37.236363 37.236363s37.236364-18.618182 37.236364-37.236363v-344.436364h158.254546c18.618182 0 37.236364-18.618182 37.236363-37.236363s-18.618182-37.236364-37.236363-37.236364z" p-id="2350"></path><path d="M842.472727 51.2h-665.6c-69.818182 0-130.327273 60.509091-130.327272 130.327273v665.6c0 69.818182 60.509091 130.327273 130.327272 130.327272h665.6c74.472727 0 130.327273-55.854545 130.327273-130.327272V176.872727c0-69.818182-55.854545-125.672727-130.327273-125.672727z m60.509091 795.927273c0 32.581818-23.272727 55.854545-55.854545 55.854545h-665.6c-32.581818 0-55.854545-23.272727-55.854546-55.854545V176.872727c0-32.581818 23.272727-55.854545 55.854546-55.854545h665.6c32.581818 0 55.854545 23.272727 55.854545 55.854545v670.254546z" p-id="2351"></path></svg>
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 48 48" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <rect width="48" height="48" fill="rgba(16,16,16,1)" fill-opacity="0.01" stroke="none"></rect><rect x="6" y="6" width="36" height="36" rx="3" fill="none" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linejoin="round"></rect><path d="M16 19V16H32V19" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"></path><path d="M22 34H26" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"></path><path d="M24 18L24 34" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"></path>
+    </g>
+  </svg>

+ 6 - 0
src/icons/svg/components/select.svg

@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M16 29.333c-7.364 0-13.333-5.969-13.333-13.333s5.969-13.333 13.333-13.333 13.333 5.969 13.333 13.333-5.969 13.333-13.333 13.333zM16 26.667c5.891 0 10.667-4.776 10.667-10.667s-4.776-10.667-10.667-10.667v0c-5.891 0-10.667 4.776-10.667 10.667s4.776 10.667 10.667 10.667v0zM14.671 21.333l-5.657-5.657 1.885-1.885 3.772 3.772 7.541-7.543 1.887 1.885-9.428 9.428z" fill="rgba(16,16,16,1)"></path>
+    </g>
+  </svg>

+ 6 - 0
src/icons/svg/components/sort.svg

@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 48 48" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M25 14L16 5L7 14" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"></path><path d="M15.9917 31V5" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"></path><path d="M42 34L33 43L24 34" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"></path><path d="M32.9917 17V43" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"></path>
+    </g>
+  </svg>

+ 6 - 3
src/icons/svg/components/spacing.svg

@@ -1,3 +1,6 @@
-<svg width="14" height="12" viewBox="0 0 14 12" fill="none" xmlns="http://www.w3.org/2000/svg">
-<path d="M10.333 12V9.33333H3.66634V12H2.33301V8.66667C2.33301 8.29847 2.63149 8 2.99967 8H10.9997C11.3679 8 11.6663 8.29847 11.6663 8.66667V12H10.333ZM3.66634 0V2.66667H10.333V0H11.6663V3.33333C11.6663 3.70152 11.3679 4 10.9997 4H2.99967C2.63149 4 2.33301 3.70152 2.33301 3.33333V0H3.66634ZM0.333008 4L2.99967 6L0.333008 8V4ZM13.6663 4V8L10.9997 6L13.6663 4Z" fill="black"/>
-</svg>
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M22.667 28v-5.333h-13.333v5.333h-2.667v-6.667c0-0.736 0.597-1.333 1.333-1.333v0h16c0.736 0 1.333 0.597 1.333 1.333v0 6.667h-2.667zM9.333 4v5.333h13.333v-5.333h2.667v6.667c0 0.736-0.597 1.333-1.333 1.333v0h-16c-0.736 0-1.333-0.597-1.333-1.333v0-6.667h2.667zM2.667 12l5.333 4-5.333 4v-8zM29.333 12v8l-5.333-4 5.333-4z" fill="rgba(16,16,16,1)"></path>
+    </g>
+  </svg>

+ 6 - 0
src/icons/svg/components/table.svg

@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M17.333 13.333v5.333h8v-5.333h-8zM14.667 13.333h-8v5.333h8v-5.333zM17.333 25.333h8v-4h-8v4zM14.667 25.333v-4h-8v4h8zM17.333 6.667v4h8v-4h-8zM14.667 6.667h-8v4h8v-4zM5.333 4h21.333c0.736 0 1.333 0.597 1.333 1.333v0 21.333c0 0.736-0.597 1.333-1.333 1.333v0h-21.333c-0.736 0-1.333-0.597-1.333-1.333v0-21.333c0-0.736 0.597-1.333 1.333-1.333v0z" fill="rgba(16,16,16,1)"></path>
+    </g>
+  </svg>

+ 6 - 0
src/icons/svg/components/three-model.svg

@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 48 48" width="22" height="22" style="" filter="none">
+    
+    <g>
+    <rect width="48" height="48" fill="rgba(16,16,16,1)" fill-opacity="0.01" stroke="none"></rect><path d="M48 0H0V48H48V0Z" fill="rgba(16,16,16,1)" fill-opacity="0.01" stroke="none"></path><path d="M4 44V14L14 4H44V34L34 44H4Z" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"></path><path d="M34 14V44" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"></path><path d="M14 4L14 34" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"></path><path d="M4 14L34 14" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"></path><path d="M44 4L34 14" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"></path><path d="M4 44L14 34" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"></path><path d="M14 34L44 34" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"></path>
+    </g>
+  </svg>

+ 6 - 5
src/icons/svg/components/uploadPreview.svg

@@ -1,5 +1,6 @@
-<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
-  <path
-    d="M8.00028 2C11.595 2 14.5857 4.58651 15.2127 8C14.5857 11.4135 11.595 14 8.00028 14C4.4055 14 1.41485 11.4135 0.787842 8C1.41485 4.58651 4.4055 2 8.00028 2ZM8.00028 12.6667C10.824 12.6667 13.2403 10.7013 13.8519 8C13.2403 5.29869 10.824 3.33333 8.00028 3.33333C5.17648 3.33333 2.76023 5.29869 2.1486 8C2.76023 10.7013 5.17648 12.6667 8.00028 12.6667ZM8.00028 11C6.3434 11 5.00026 9.65687 5.00026 8C5.00026 6.34315 6.3434 5 8.00028 5C9.65708 5 11.0003 6.34315 11.0003 8C11.0003 9.65687 9.65708 11 8.00028 11ZM8.00028 9.66667C8.92075 9.66667 9.66695 8.92047 9.66695 8C9.66695 7.07953 8.92075 6.33333 8.00028 6.33333C7.07982 6.33333 6.33359 7.07953 6.33359 8C6.33359 8.92047 7.07982 9.66667 8.00028 9.66667Z"
-    fill="#4E5969" />
-</svg>
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M16.552 6.667h11.448c0.736 0 1.333 0.597 1.333 1.333v0 18.667c0 0.736-0.597 1.333-1.333 1.333v0h-24c-0.736 0-1.333-0.597-1.333-1.333v0-21.333c0-0.736 0.597-1.333 1.333-1.333v0h9.885l2.667 2.667zM5.333 6.667v18.667h21.333v-16h-11.219l-2.667-2.667h-7.448zM17.333 17.333v5.333h-2.667v-5.333h-4l5.333-5.333 5.333 5.333h-4z" fill="rgba(16,16,16,1)"></path>
+    </g>
+  </svg>

+ 6 - 3
src/icons/svg/components/video.svg

@@ -1,3 +1,6 @@
-<svg width="14" height="12" viewBox="0 0 14 12" fill="none" xmlns="http://www.w3.org/2000/svg">
-<path d="M0.333008 0.662267C0.333008 0.296507 0.636548 0 0.994208 0H13.0051C13.3703 0 13.6663 0.296633 13.6663 0.662267V11.3377C13.6663 11.7035 13.3628 12 13.0051 12H0.994208C0.629041 12 0.333008 11.7034 0.333008 11.3377V0.662267ZM1.66634 1.33333V10.6667H12.333V1.33333H1.66634ZM6.08094 3.60973L9.33354 5.77813C9.45607 5.8598 9.48921 6.0254 9.40747 6.14793C9.38794 6.1772 9.36281 6.20233 9.33354 6.22187L6.08094 8.39027C5.95841 8.472 5.79281 8.43887 5.71114 8.31633C5.68194 8.27253 5.66634 8.22107 5.66634 8.1684V3.83161C5.66634 3.68433 5.78574 3.56494 5.93301 3.56494C5.98567 3.56494 6.03714 3.58052 6.08094 3.60973Z" fill="black"/>
-</svg>
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M2.667 5.324c0.005-0.729 0.594-1.318 1.322-1.324h24.022c0.731 0 1.323 0.593 1.323 1.324v21.352c-0.005 0.729-0.594 1.318-1.322 1.324h-24.022c-0.731-0.001-1.323-0.593-1.323-1.324v0-21.352zM5.333 6.667v18.667h21.333v-18.667h-21.333zM14.163 11.22l6.505 4.336c0.144 0.097 0.238 0.26 0.238 0.444s-0.094 0.347-0.236 0.443l-0.002 0.001-6.507 4.336c-0.083 0.056-0.185 0.089-0.295 0.089-0.294 0-0.532-0.238-0.533-0.531v-8.675c0.001-0.294 0.239-0.532 0.533-0.532 0.11 0 0.213 0.034 0.298 0.091l-0.002-0.001z" fill="rgba(16,16,16,1)"></path>
+    </g>
+  </svg>

+ 6 - 0
src/icons/svg/components/video_interaction.svg

@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M18.667 13.667l4-3v8l-4-3v3h-9.333v-8h9.333v3zM7.684 22.667h18.983v-16h-21.333v17.847l2.351-1.847zM8.607 25.333l-5.94 4.667v-24.667c0-0.736 0.597-1.333 1.333-1.333v0h24c0.736 0 1.333 0.597 1.333 1.333v0 18.667c0 0.736-0.597 1.333-1.333 1.333v0h-19.393z" fill="rgba(16,16,16,1)"></path>
+    </g>
+  </svg>

+ 6 - 0
src/icons/svg/components/voice_matrix.svg

@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 48 48" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M18 6H8C6.89543 6 6 6.89543 6 8V18C6 19.1046 6.89543 20 8 20H18C19.1046 20 20 19.1046 20 18V8C20 6.89543 19.1046 6 18 6Z" fill="none" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linejoin="round"></path><path d="M18 28H8C6.89543 28 6 28.8954 6 30V40C6 41.1046 6.89543 42 8 42H18C19.1046 42 20 41.1046 20 40V30C20 28.8954 19.1046 28 18 28Z" fill="none" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linejoin="round"></path><path d="M40 6H30C28.8954 6 28 6.89543 28 8V18C28 19.1046 28.8954 20 30 20H40C41.1046 20 42 19.1046 42 18V8C42 6.89543 41.1046 6 40 6Z" fill="none" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linejoin="round"></path><path d="M40 28H30C28.8954 28 28 28.8954 28 30V40C28 41.1046 28.8954 42 30 42H40C41.1046 42 42 41.1046 42 40V30C42 28.8954 41.1046 28 40 28Z" fill="none" stroke="rgba(16,16,16,1)" stroke-width="4" stroke-linejoin="round"></path>
+    </g>
+  </svg>

+ 6 - 0
src/icons/svg/components/write_base.svg

@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" width="22" height="22" style="" filter="none">
+    
+    <g>
+    <path d="M26 28h-22v-20h10.4l2-2h-14.4v24h26v-16.4l-2 2z" fill="rgba(16,16,16,1)"></path><path d="M10 22h6l14-14-6-6-14 14v6zM12 16.8l9.4-9.4 3.2 3.2-9.4 9.4h-3.2v-3.2z" fill="rgba(16,16,16,1)"></path>
+    </g>
+  </svg>

+ 6 - 0
src/icons/svg/components/文件.svg

@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M5.333 6.667v18.667h21.333v-16h-11.219l-2.667-2.667h-7.448zM16.552 6.667h11.448c0.736 0 1.333 0.597 1.333 1.333v0 18.667c0 0.736-0.597 1.333-1.333 1.333v0h-24c-0.736 0-1.333-0.597-1.333-1.333v0-21.333c0-0.736 0.597-1.333 1.333-1.333v0h9.885l2.667 2.667z" fill="rgba(16,16,16,1)"></path>
+    </g>
+  </svg>

+ 6 - 0
src/icons/svg/components/问答题.svg

@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" width="24" height="24" style="" filter="none">
+    
+    <g>
+    <path d="M7.684 22.667h18.983v-16h-21.333v17.847l2.351-1.847zM8.607 25.333l-5.94 4.667v-24.667c0-0.736 0.597-1.333 1.333-1.333v0h24c0.736 0 1.333 0.597 1.333 1.333v0 18.667c0 0.736-0.597 1.333-1.333 1.333v0h-19.393zM14.667 18.667h2.667v2.667h-2.667v-2.667zM11.423 11.751c0.442-2.155 2.323-3.753 4.578-3.753 2.578 0 4.668 2.090 4.668 4.668s-2.090 4.668-4.668 4.668c-0 0-0 0-0 0h-1.333v-2.667h1.333c1.105-0 2-0.895 2-2s-0.895-2-2-2c-0.966 0-1.772 0.685-1.959 1.595l-0.002 0.013-2.616-0.524z" fill="rgba(16,16,16,1)"></path>
+    </g>
+  </svg>

+ 0 - 13
src/icons/svg/games.svg

@@ -1,13 +0,0 @@
-<?xml version="1.0" standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1750410306045"
-  class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2380"
-  xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200">
-  <path
-    d="M917.4 507c-27.8-98.4-66-189.8-79.3-214.7-16.8-31.4-39.9-55.5-68.7-71.5-29.8-16.6-66.7-25.1-109.6-25.1H364c-42.9 0-79.8 8.4-109.6 25.1-28.7 16-51.8 40.1-68.7 71.5-13.4 24.9-51.5 116.3-79.3 214.7-37.1 131.4-42.1 224.8-14.7 277.7 15.2 29.3 40.4 47 73.1 51.1 13.5 1.7 26 2.5 37.7 2.5 87.6 0 127.7-44.2 163.5-83.8 21.2-23.4 41.3-45.6 70.9-57.9h166.3c29.4 12.3 46.5 33.8 66.1 58.5 18 22.7 36.7 46.1 65.9 62.6 32.8 18.5 73.3 24.5 123.9 18.1 32.7-4.1 57.9-21.8 73.1-51.1 27.3-52.9 22.3-146.3-14.8-277.7z m-29.7 254.8c-7.7 14.8-18.4 22.4-34.9 24.4-11.4 1.4-21.8 2.1-31.3 2.1-61.9 0-85-29-113.1-64.4-22-27.6-46.9-59-91.7-75.8-2.8-1.1-5.8-1.6-8.8-1.6H432.1c-3 0-6 0.5-8.8 1.6-43.2 16.2-70.4 46.3-94.4 72.8-38.7 42.7-69.2 76.4-158 65.3-16.5-2.1-27.2-9.6-34.9-24.4-20.7-40.1-14.2-125.7 18.4-241.1 27.3-96.7 64.4-184.4 75.3-204.7 25.6-47.9 68.3-70.1 134.2-70.1h295.8c65.9 0 108.6 22.3 134.2 70.1 10.9 20.3 48 108 75.3 204.7 32.7 115.4 39.2 201 18.5 241.1z"
-    fill="currentColor" p-id="2381"></path>
-  <path
-    d="M450 444.9h-70.3v-70.5c0-11-9-20-20-20s-20 9-20 20v70.5H270c-11 0-20 9-20 20s9 20 20 20h69.7v69.5c0 11 9 20 20 20s20-9 20-20v-69.5H450c11 0 20-9 20-20s-9-20-20-20z"
-    fill="currentColor" p-id="2382"></path>
-  <path d="M640.5 427m-41.9 0a41.9 41.9 0 1 0 83.8 0 41.9 41.9 0 1 0-83.8 0Z" fill="currentColor" p-id="2383"></path>
-  <path d="M739.1 525.6m-41.9 0a41.9 41.9 0 1 0 83.8 0 41.9 41.9 0 1 0-83.8 0Z" fill="currentColor" p-id="2384"></path>
-</svg>

+ 0 - 1
src/icons/svg/three-model.svg

@@ -1 +0,0 @@
-<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1752147497625" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="6476" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16"><path d="M177.493333 389.36381a48.761905 48.761905 0 0 1 24.380953 6.534095l249.222095 143.896381a73.142857 73.142857 0 0 1 36.571429 63.341714v287.792762a48.761905 48.761905 0 0 1-45.104762 48.615619l-3.657143 0.146286a48.761905 48.761905 0 0 1-24.380953-6.534096L165.302857 789.26019a73.142857 73.142857 0 0 1-36.571428-63.341714V438.125714a48.761905 48.761905 0 0 1 45.104761-48.64l3.657143-0.121904z m669.135238 0a48.761905 48.761905 0 0 1 48.615619 45.104761l0.146286 3.657143v287.792762a73.142857 73.142857 0 0 1-32.426666 60.757334l-4.144762 2.58438-249.246477 143.896381a48.761905 48.761905 0 0 1-20.114285 6.339048l-4.266667 0.195048a48.761905 48.761905 0 0 1-48.615619-45.104762l-0.146286-3.657143V603.136a73.142857 73.142857 0 0 1 32.426667-60.757333l4.144762-2.584381 249.246476-143.896381a48.761905 48.761905 0 0 1 20.114286-6.339048l4.266666-0.195047zM201.849905 480.353524l0.024381 245.564952 212.650666 122.758095V603.136L201.874286 480.353524z m620.373333 0l-210.553905 121.539047-2.096762 1.243429V848.700952l210.578286-121.514666 2.096762-1.243429-0.024381-245.564952zM544.085333 122.441143l4.608 2.438095 249.222096 143.896381a48.761905 48.761905 0 0 1 3.242666 82.407619l-3.242666 2.048-249.222096 143.896381a73.142857 73.142857 0 0 1-68.559238 2.438095l-4.583619-2.438095-249.246476-143.896381a48.761905 48.761905 0 0 1-3.218286-82.407619l3.218286-2.048 249.246476-143.896381a73.142857 73.142857 0 0 1 68.534857-2.438095zM512.048762 188.220952l-212.601905 122.758096 211.748572 122.270476 0.950857 0.487619 212.626285-122.758095-211.309714-122.002286-1.414095-0.75581z" p-id="6477"></path></svg>

+ 0 - 1
src/icons/svg/write_base.svg

@@ -1 +0,0 @@
-<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1747712026273" class="icon" viewBox="0 0 1147 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2531" xmlns:xlink="http://www.w3.org/1999/xlink" width="224.0234375" height="200"><path d="M62 902.996h1007.998v56.124h-1007.998v-56.124zM62 864.245l264.137-74.992-188.667-187.513-75.47 262.505zM767.475 350.607l-188.67-187.516-415.077 412.522 188.667 187.497 415.080-412.504zM855.163 193.093l-117.923-117.189c-19.537-19.42-52.267-18.363-73.108 2.342l-56.61 56.243 188.67 187.515 56.606-56.26c20.841-20.707 21.899-53.227 2.364-72.651z" p-id="2532"></path></svg>

+ 156 - 150
src/views/book/courseware/data/bookType.js

@@ -117,7 +117,7 @@ import CharacterStructurePreview from '../preview/components/character_structure
 export const bookTypeOption = [
   {
     value: 'base',
-    label: '基础',
+    label: '基础组件',
     children: [
       // {
       //   value: 'stem',
@@ -137,14 +137,6 @@ export const bookTypeOption = [
         preview: DescribePreview,
       },
       {
-        value: 'label',
-        label: '标签',
-        icon: 'label',
-        component: LabelPage,
-        set: LabelSetting,
-        preview: LabelPreview,
-      },
-      {
         value: 'audio',
         label: '音频',
         icon: 'audio',
@@ -153,6 +145,14 @@ export const bookTypeOption = [
         preview: AudioPreview,
       },
       {
+        value: 'picture',
+        label: '图片',
+        icon: 'picture',
+        component: PicturePage,
+        set: PictureSetting,
+        preview: PicturePreview,
+      },
+      {
         value: 'video',
         label: '视频',
         icon: 'video',
@@ -161,12 +161,28 @@ export const bookTypeOption = [
         preview: VideoPreview,
       },
       {
-        value: 'picture',
-        label: '图片',
-        icon: 'picture',
-        component: PicturePage,
-        set: PictureSetting,
-        preview: PicturePreview,
+        value: 'input',
+        label: '输入',
+        icon: 'input',
+        component: Input,
+        set: InputSetting,
+        preview: InputPreview,
+      },
+      {
+        value: 'write_base',
+        label: '写字',
+        icon: 'write_base',
+        component: WriteBase,
+        set: WriteBaseSetting,
+        preview: WriteBasePreview,
+      },
+      {
+        value: 'record_input',
+        label: '录音',
+        icon: 'record_input',
+        component: RecordInput,
+        set: RecordInputSetting,
+        preview: RecordInputPreview,
       },
       // {
       //   value: 'upload_control',
@@ -185,12 +201,44 @@ export const bookTypeOption = [
         preview: UploadPreviewPreview,
       },
       {
-        value: 'divider',
-        label: '分隔',
-        icon: 'spacing',
-        component: DividerPage,
-        set: DividerSetting,
-        preview: DividerPreview,
+        value: 'drawing',
+        label: '趣味画板',
+        icon: 'drawing',
+        component: Drawing,
+        set: DrawingSetting,
+        preview: DrawingPreview,
+      },
+      {
+        value: 'image_text',
+        label: '图文融合',
+        icon: 'image_text',
+        component: ImageText,
+        set: ImageTextSetting,
+        preview: ImageTextPreview,
+      },
+      {
+        value: 'video_interaction',
+        label: '交互视频',
+        icon: 'video_interaction',
+        component: VideoInteraction,
+        set: VideoInteractionSetting,
+        preview: VideoInteractionPreview,
+      },
+      {
+        value: '3DModel',
+        label: '3D模型',
+        icon: 'three-model',
+        component: ThreeModel,
+        set: ThreeModelSetting,
+        preview: ThreeModelPreview,
+      },
+      {
+        value: 'h5_games',
+        label: 'H5游戏',
+        icon: 'games',
+        component: H5Games,
+        set: H5GamesSetting,
+        preview: H5GamesPreview,
       },
       // {
       //   value: 'spacing',
@@ -209,111 +257,125 @@ export const bookTypeOption = [
       //   preview: CharacterBasePreview,
       // },
       {
-        value: 'write_base',
-        label: '写字',
-        icon: 'write_base',
-        component: WriteBase,
-        set: WriteBaseSetting,
-        preview: WriteBasePreview,
-      },
-      {
-        value: 'h5_games',
-        label: 'H5游戏',
-        icon: 'games',
-        component: H5Games,
-        set: H5GamesSetting,
-        preview: H5GamesPreview,
+        value: 'label',
+        label: '标签',
+        icon: 'label',
+        component: LabelPage,
+        set: LabelSetting,
+        preview: LabelPreview,
       },
       {
-        value: '3DModel',
-        label: '3D模型',
-        icon: 'three-model',
-        component: ThreeModel,
-        set: ThreeModelSetting,
-        preview: ThreeModelPreview,
+        value: 'divider',
+        label: '分隔',
+        icon: 'spacing',
+        component: DividerPage,
+        set: DividerSetting,
+        preview: DividerPreview,
       },
     ],
   },
   {
-    value: 'question',
-    label: '题型组件',
+    value: 'teaching',
+    label: '教学组件',
     children: [
       {
-        value: 'article',
-        label: '文章',
-        icon: '',
-        component: Article,
-        set: ArticleSetting,
-        preview: ArticlePreview,
+        value: 'voice_matrix',
+        label: '语音矩阵',
+        icon: 'voice_matrix',
+        component: VoiceMatrix,
+        set: VoiceMatrixSetting,
+        preview: VoiceMatrixPreview,
+      },
+      {
+        value: 'pinyin_base',
+        label: '拼音',
+        icon: 'pinyin_base',
+        component: PinyinBase,
+        set: PinyinBaseSetting,
+        preview: PinyinBasePreview,
+      },
+      {
+        value: 'character',
+        label: '汉字',
+        icon: 'character',
+        component: Character,
+        set: CharacterSetting,
+        preview: CharacterPreview,
+      },
+      {
+        value: 'new_word',
+        label: '生词表',
+        icon: 'new_word',
+        component: NewWord,
+        set: NewWordSetting,
+        preview: NewWordPreview,
       },
       {
         value: 'dialogue_article',
-        label: '对话课文',
-        icon: '',
+        label: '对话课文',
+        icon: 'dialogue_article',
         component: DialogueArticlePage,
         set: DialogueArticleSetting,
         preview: DialogueArticlePreview,
       },
       {
+        value: 'article',
+        label: '文章',
+        icon: 'article',
+        component: Article,
+        set: ArticleSetting,
+        preview: ArticlePreview,
+      },
+    ],
+  },
+  {
+    value: 'exercise',
+    label: '练习组件',
+    children: [
+      {
         value: 'select',
-        label: '选择',
-        icon: '',
+        label: '选择',
+        icon: 'select',
         component: SelectPage,
         set: SelectSetting,
         preview: SelectPreview,
       },
       {
-        value: 'matching',
-        label: '连线',
-        icon: '',
-        component: MatchingPage,
-        set: MatchingSetting,
-        preview: MatchingPreview,
-      },
-      {
-        value: 'sort',
-        label: '排序',
-        icon: '',
-        component: SortPage,
-        set: SortSetting,
-        preview: SortPreview,
-      },
-      {
-        value: 'voice_matrix',
-        label: '语音矩阵',
-        icon: '',
-        component: VoiceMatrix,
-        set: VoiceMatrixSetting,
-        preview: VoiceMatrixPreview,
+        value: 'judge',
+        label: '判断题',
+        icon: 'judge',
+        component: Judge,
+        set: JudgeSetting,
+        preview: JudgePreview,
       },
       {
         value: 'fill',
-        label: '填空',
-        icon: '',
+        label: '填空题',
+        icon: 'fill',
         component: FillPage,
         set: FillSetting,
         preview: FillPreview,
       },
       {
-        value: 'record_input',
-        label: '录音',
-        icon: '',
-        component: RecordInput,
-        set: RecordInputSetting,
-        preview: RecordInputPreview,
+        value: 'matching',
+        label: '连线题',
+        icon: 'matching',
+        component: MatchingPage,
+        set: MatchingSetting,
+        preview: MatchingPreview,
       },
       {
-        value: 'new_word',
-        label: '生词',
-        icon: '',
-        component: NewWord,
-        set: NewWordSetting,
-        preview: NewWordPreview,
+        value: 'sort',
+        label: '排序题',
+        icon: 'sort',
+        component: SortPage,
+        set: SortSetting,
+        preview: SortPreview,
       },
       {
         value: 'notes',
         label: '注释',
-        icon: '',
+        icon: 'notes',
         component: Notes,
         set: NotesSetting,
         preview: NotesPreview,
@@ -327,17 +389,9 @@ export const bookTypeOption = [
       //   preview: OtherWordPreview,
       // },
       {
-        value: 'character',
-        label: '汉字',
-        icon: '',
-        component: Character,
-        set: CharacterSetting,
-        preview: CharacterPreview,
-      },
-      {
         value: 'newWord_template',
         label: '生字',
-        icon: '',
+        icon: 'newWord_template',
         component: NewWordTemplate,
         set: NewWordTemplateSetting,
         preview: NewWordTemplatePreview,
@@ -345,7 +399,7 @@ export const bookTypeOption = [
       {
         value: 'character_structure',
         label: '汉字结构',
-        icon: '',
+        icon: 'character_structure',
         component: CharacterStructure,
         set: CharacterStructureSetting,
         preview: CharacterStructurePreview,
@@ -367,61 +421,13 @@ export const bookTypeOption = [
       //   preview: MathPreview,
       // },
       {
-        value: 'input',
-        label: '输入框',
-        icon: '',
-        component: Input,
-        set: InputSetting,
-        preview: InputPreview,
-      },
-      {
-        value: 'judge',
-        label: '判断',
-        icon: '',
-        component: Judge,
-        set: JudgeSetting,
-        preview: JudgePreview,
-      },
-      {
-        value: 'image_text',
-        label: '图片文本融合',
-        icon: '',
-        component: ImageText,
-        set: ImageTextSetting,
-        preview: ImageTextPreview,
-      },
-      {
         value: 'table',
-        label: '表格',
-        icon: '',
+        label: '表格题',
+        icon: 'table',
         component: Table,
         set: TableSetting,
         preview: TablePreview,
       },
-      {
-        value: 'pinyin_base',
-        label: '拼音',
-        icon: '',
-        component: PinyinBase,
-        set: PinyinBaseSetting,
-        preview: PinyinBasePreview,
-      },
-      {
-        value: 'video_interaction',
-        label: '视频交互',
-        icon: '',
-        component: VideoInteraction,
-        set: VideoInteractionSetting,
-        preview: VideoInteractionPreview,
-      },
-      {
-        value: 'drawing',
-        label: '画板',
-        icon: '',
-        component: Drawing,
-        set: DrawingSetting,
-        preview: DrawingPreview,
-      },
     ],
   },
 ];

+ 1 - 2
src/views/book/courseware/preview/components/matching/MatchingPreview.vue

@@ -363,7 +363,6 @@ export default {
       path.setAttribute('stroke-linecap', 'round'); // 设置线段的两端样式
       const assistColor = this.data?.unified_attrib?.topic_color || '#306eff';
       path.setAttribute('stroke', assistColor); // 设置填充颜色
-      path.setAttribute('transform', `translate(2, 2)`); // 设置偏移量
     },
     /**
      * 计算当前连线点的位置
@@ -523,7 +522,7 @@ export default {
     .list-item {
       display: flex;
       column-gap: 8px;
-      align-items: center;
+      align-items: stretch;
       padding: 1px;
 
       .item-wrapper {