|
@@ -11,7 +11,7 @@
|
|
|
<path id="Vector_2" d="M12.8335 1.83398V7.33398H18.3335" stroke="currentColor" stroke-width="1.83333" />
|
|
<path id="Vector_2" d="M12.8335 1.83398V7.33398H18.3335" stroke="currentColor" stroke-width="1.83333" />
|
|
|
</g>
|
|
</g>
|
|
|
</svg>
|
|
</svg>
|
|
|
- <span class="item-label">页面</span>
|
|
|
|
|
|
|
+ <span class="item-label">{{ lang.ssPage }}</span>
|
|
|
</div>
|
|
</div>
|
|
|
<div class="sidebar-item" :class="{ active: activeSubmenu === 'interactive' }"
|
|
<div class="sidebar-item" :class="{ active: activeSubmenu === 'interactive' }"
|
|
|
@click="toggleSubmenu('interactive')">
|
|
@click="toggleSubmenu('interactive')">
|
|
@@ -42,7 +42,7 @@
|
|
|
<path d="M2 12h20" />
|
|
<path d="M2 12h20" />
|
|
|
<path d="M12 2a15.3 15.3 0 014 10 15.3 15.3 0 01-4 10 15.3 15.3 0 01-4-10 15.3 15.3 0 014-10z" />
|
|
<path d="M12 2a15.3 15.3 0 014 10 15.3 15.3 0 01-4 10 15.3 15.3 0 01-4-10 15.3 15.3 0 014-10z" />
|
|
|
</svg>
|
|
</svg>
|
|
|
- <span class="item-label">交互网页</span>
|
|
|
|
|
|
|
+ <span class="item-label">{{ lang.ssInteractiveWebpage }}</span>
|
|
|
</div>
|
|
</div>
|
|
|
<!-- <div class="sidebar-item" @click="handleToolClick('video')">
|
|
<!-- <div class="sidebar-item" @click="handleToolClick('video')">
|
|
|
<svg class="item-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
|
<svg class="item-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
|
@@ -68,13 +68,13 @@
|
|
|
stroke="currentColor" stroke-width="1.83333" />
|
|
stroke="currentColor" stroke-width="1.83333" />
|
|
|
</g>
|
|
</g>
|
|
|
</svg>
|
|
</svg>
|
|
|
- <span class="item-label">多媒体</span>
|
|
|
|
|
|
|
+ <span class="item-label">{{ lang.ssMultimedia }}</span>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
<div class="submenu" :class="{ visible: activeSubmenu === 'page' }">
|
|
<div class="submenu" :class="{ visible: activeSubmenu === 'page' }">
|
|
|
<div class="submenu-title">
|
|
<div class="submenu-title">
|
|
|
- <div class="title">添加模版页面</div>
|
|
|
|
|
|
|
+ <div class="title">{{ lang.ssAddTemplatePage }}</div>
|
|
|
<div class="close-icon" @click="toggleSubmenu('page')">
|
|
<div class="close-icon" @click="toggleSubmenu('page')">
|
|
|
<svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
<svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
|
<g id="Component 3">
|
|
<g id="Component 3">
|
|
@@ -94,7 +94,7 @@
|
|
|
</g>
|
|
</g>
|
|
|
</svg>
|
|
</svg>
|
|
|
</div>
|
|
</div>
|
|
|
- <span class="submenu-label">标题页</span>
|
|
|
|
|
|
|
+ <span class="submenu-label">{{ lang.ssTitlePage }}</span>
|
|
|
</div>
|
|
</div>
|
|
|
<div class="submenu-item">
|
|
<div class="submenu-item">
|
|
|
<div class="submenu-icon">
|
|
<div class="submenu-icon">
|
|
@@ -110,7 +110,7 @@
|
|
|
</g>
|
|
</g>
|
|
|
</svg>
|
|
</svg>
|
|
|
</div>
|
|
</div>
|
|
|
- <span class="submenu-label">图片页</span>
|
|
|
|
|
|
|
+ <span class="submenu-label">{{ lang.ssImagePage }}</span>
|
|
|
</div>
|
|
</div>
|
|
|
<div class="submenu-item">
|
|
<div class="submenu-item">
|
|
|
<div class="submenu-icon">
|
|
<div class="submenu-icon">
|
|
@@ -124,7 +124,7 @@
|
|
|
</g>
|
|
</g>
|
|
|
</svg>
|
|
</svg>
|
|
|
</div>
|
|
</div>
|
|
|
- <span class="submenu-label">内容页</span>
|
|
|
|
|
|
|
+ <span class="submenu-label">{{ lang.ssContentPage }}</span>
|
|
|
</div>
|
|
</div>
|
|
|
<div class="submenu-item">
|
|
<div class="submenu-item">
|
|
|
<div class="submenu-icon">
|
|
<div class="submenu-icon">
|
|
@@ -139,7 +139,7 @@
|
|
|
</g>
|
|
</g>
|
|
|
</svg>
|
|
</svg>
|
|
|
</div>
|
|
</div>
|
|
|
- <span class="submenu-label">文图页</span>
|
|
|
|
|
|
|
+ <span class="submenu-label">{{ lang.ssTextImagePage }}</span>
|
|
|
</div>
|
|
</div>
|
|
|
<div class="submenu-item">
|
|
<div class="submenu-item">
|
|
|
<div class="submenu-icon">
|
|
<div class="submenu-icon">
|
|
@@ -154,7 +154,7 @@
|
|
|
</g>
|
|
</g>
|
|
|
</svg>
|
|
</svg>
|
|
|
</div>
|
|
</div>
|
|
|
- <span class="submenu-label">图文页</span>
|
|
|
|
|
|
|
+ <span class="submenu-label">{{ lang.ssImageTextPage }}</span>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
<FileInput accept="application/vnd.openxmlformats-officedocument.presentationml.presentation"
|
|
<FileInput accept="application/vnd.openxmlformats-officedocument.presentationml.presentation"
|
|
@@ -172,13 +172,13 @@
|
|
|
</g>
|
|
</g>
|
|
|
</svg>
|
|
</svg>
|
|
|
</div>
|
|
</div>
|
|
|
- <span class="submenu-label">上传PPT</span>
|
|
|
|
|
|
|
+ <span class="submenu-label">{{ lang.ssUploadPPT }}</span>
|
|
|
</div>
|
|
</div>
|
|
|
</FileInput>
|
|
</FileInput>
|
|
|
</div>
|
|
</div>
|
|
|
<div class="submenu" :class="{ visible: activeSubmenu === 'interactive' }">
|
|
<div class="submenu" :class="{ visible: activeSubmenu === 'interactive' }">
|
|
|
<div class="submenu-title">
|
|
<div class="submenu-title">
|
|
|
- <div class="title">添加互动工具</div>
|
|
|
|
|
|
|
+ <div class="title">{{ lang.ssAddInteractiveTool }}</div>
|
|
|
<div class="close-icon" @click="toggleSubmenu('interactive')">
|
|
<div class="close-icon" @click="toggleSubmenu('interactive')">
|
|
|
<svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
<svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
|
<g id="Component 3">
|
|
<g id="Component 3">
|
|
@@ -210,7 +210,7 @@
|
|
|
fill="#E5E7EB" />
|
|
fill="#E5E7EB" />
|
|
|
</g>
|
|
</g>
|
|
|
</svg>
|
|
</svg>
|
|
|
- <div class="detail">选择工具创建互动画面</div>
|
|
|
|
|
|
|
+ <div class="detail">{{ lang.ssSelectToolCreateInteractive }}</div>
|
|
|
</div>
|
|
</div>
|
|
|
<img class="submenu-img" v-else-if="hoveredTool === 'qa'" key="qa" :src="toolAnswer" alt="">
|
|
<img class="submenu-img" v-else-if="hoveredTool === 'qa'" key="qa" :src="toolAnswer" alt="">
|
|
|
<img class="submenu-img" v-else-if="hoveredTool === 'choice'" key="choice" :src="toolChoice" alt="">
|
|
<img class="submenu-img" v-else-if="hoveredTool === 'choice'" key="choice" :src="toolChoice" alt="">
|
|
@@ -235,7 +235,7 @@
|
|
|
</div>
|
|
</div>
|
|
|
<div class="submenu" :class="{ visible: activeSubmenu === 'aiapp' }">
|
|
<div class="submenu" :class="{ visible: activeSubmenu === 'aiapp' }">
|
|
|
<div class="submenu-title">
|
|
<div class="submenu-title">
|
|
|
- <div class="title">添加AI应用</div>
|
|
|
|
|
|
|
+ <div class="title">{{ lang.ssAddAIApp }}</div>
|
|
|
<div class="close-icon" @click="toggleSubmenu('aiapp')">
|
|
<div class="close-icon" @click="toggleSubmenu('aiapp')">
|
|
|
<svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
<svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
|
<g id="Component 3">
|
|
<g id="Component 3">
|
|
@@ -266,7 +266,7 @@
|
|
|
</g>
|
|
</g>
|
|
|
</svg>
|
|
</svg>
|
|
|
</div>
|
|
</div>
|
|
|
- <span class="submenu-label">应用中心</span>
|
|
|
|
|
|
|
+ <span class="submenu-label">{{ lang.ssAppCenter }}</span>
|
|
|
</div>
|
|
</div>
|
|
|
<div class="submenu-item">
|
|
<div class="submenu-item">
|
|
|
<div class="submenu-icon">
|
|
<div class="submenu-icon">
|
|
@@ -280,13 +280,13 @@
|
|
|
</g>
|
|
</g>
|
|
|
</svg>
|
|
</svg>
|
|
|
</div>
|
|
</div>
|
|
|
- <span class="submenu-label">创建应用</span>
|
|
|
|
|
|
|
+ <span class="submenu-label">{{ lang.ssCreateApp }}</span>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
<div class="submenu" :class="{ visible: activeSubmenu === 'h5page' }">
|
|
<div class="submenu" :class="{ visible: activeSubmenu === 'h5page' }">
|
|
|
<div class="submenu-title">
|
|
<div class="submenu-title">
|
|
|
- <div class="title">添加交互网页</div>
|
|
|
|
|
|
|
+ <div class="title">{{ lang.ssAddInteractiveWebpage }}</div>
|
|
|
<div class="close-icon" @click="toggleSubmenu('h5page')">
|
|
<div class="close-icon" @click="toggleSubmenu('h5page')">
|
|
|
<svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
<svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
|
<g id="Component 3">
|
|
<g id="Component 3">
|
|
@@ -319,7 +319,7 @@
|
|
|
</g>
|
|
</g>
|
|
|
</svg>
|
|
</svg>
|
|
|
</div>
|
|
</div>
|
|
|
- <span class="submenu-label">网页中心</span>
|
|
|
|
|
|
|
+ <span class="submenu-label">{{ lang.ssWebpageCenter }}</span>
|
|
|
</div>
|
|
</div>
|
|
|
<div class="submenu-item">
|
|
<div class="submenu-item">
|
|
|
<div class="submenu-icon">
|
|
<div class="submenu-icon">
|
|
@@ -333,7 +333,7 @@
|
|
|
</g>
|
|
</g>
|
|
|
</svg>
|
|
</svg>
|
|
|
</div>
|
|
</div>
|
|
|
- <span class="submenu-label">上传网页</span>
|
|
|
|
|
|
|
+ <span class="submenu-label">{{ lang.ssUploadWebpage }}</span>
|
|
|
</div>
|
|
</div>
|
|
|
<div class="submenu-item">
|
|
<div class="submenu-item">
|
|
|
<div class="submenu-icon">
|
|
<div class="submenu-icon">
|
|
@@ -350,13 +350,13 @@
|
|
|
</g>
|
|
</g>
|
|
|
</svg>
|
|
</svg>
|
|
|
</div>
|
|
</div>
|
|
|
- <span class="submenu-label">爬取网页</span>
|
|
|
|
|
|
|
+ <span class="submenu-label">{{ lang.ssCrawlWebpage }}</span>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
<div class="submenu" :class="{ visible: activeSubmenu === 'multimedia' }">
|
|
<div class="submenu" :class="{ visible: activeSubmenu === 'multimedia' }">
|
|
|
<div class="submenu-title">
|
|
<div class="submenu-title">
|
|
|
- <div class="title">添加多媒体</div>
|
|
|
|
|
|
|
+ <div class="title">{{ lang.ssAddMultimedia }}</div>
|
|
|
<div class="close-icon" @click="toggleSubmenu('multimedia')">
|
|
<div class="close-icon" @click="toggleSubmenu('multimedia')">
|
|
|
<svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
<svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
|
<g id="Component 3">
|
|
<g id="Component 3">
|
|
@@ -368,7 +368,7 @@
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
<div class="submenu-item-box2">
|
|
<div class="submenu-item-box2">
|
|
|
- <div class="submenu-item">
|
|
|
|
|
|
|
+ <div class="submenu-item" @click="handleToolClick('video')">
|
|
|
<div class="submenu-icon">
|
|
<div class="submenu-icon">
|
|
|
<svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
<svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
|
<g id="Component 1">
|
|
<g id="Component 1">
|
|
@@ -379,9 +379,9 @@
|
|
|
</g>
|
|
</g>
|
|
|
</svg>
|
|
</svg>
|
|
|
</div>
|
|
</div>
|
|
|
- <span class="submenu-label">视频</span>
|
|
|
|
|
|
|
+ <span class="submenu-label">{{ lang.ssVideo }}</span>
|
|
|
</div>
|
|
</div>
|
|
|
- <div class="submenu-item">
|
|
|
|
|
|
|
+ <!-- <div class="submenu-item">
|
|
|
<div class="submenu-icon">
|
|
<div class="submenu-icon">
|
|
|
<svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
<svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
|
<g id="Component 1">
|
|
<g id="Component 1">
|
|
@@ -395,7 +395,7 @@
|
|
|
</g>
|
|
</g>
|
|
|
</svg>
|
|
</svg>
|
|
|
</div>
|
|
</div>
|
|
|
- <span class="submenu-label">音频</span>
|
|
|
|
|
|
|
+ <span class="submenu-label">{{ lang.ssAudio }}</span>
|
|
|
</div>
|
|
</div>
|
|
|
<div class="submenu-item">
|
|
<div class="submenu-item">
|
|
|
<div class="submenu-icon">
|
|
<div class="submenu-icon">
|
|
@@ -410,7 +410,7 @@
|
|
|
</g>
|
|
</g>
|
|
|
</svg>
|
|
</svg>
|
|
|
</div>
|
|
</div>
|
|
|
- <span class="submenu-label">文档</span>
|
|
|
|
|
|
|
+ <span class="submenu-label">{{ lang.ssDocument }}</span>
|
|
|
</div>
|
|
</div>
|
|
|
<div class="submenu-item">
|
|
<div class="submenu-item">
|
|
|
<div class="submenu-icon">
|
|
<div class="submenu-icon">
|
|
@@ -427,8 +427,8 @@
|
|
|
</g>
|
|
</g>
|
|
|
</svg>
|
|
</svg>
|
|
|
</div>
|
|
</div>
|
|
|
- <span class="submenu-label">文档集</span>
|
|
|
|
|
- </div>
|
|
|
|
|
|
|
+ <span class="submenu-label">{{ lang.ssDocumentSet }}</span>
|
|
|
|
|
+ </div> -->
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
@@ -444,11 +444,11 @@
|
|
|
</svg>
|
|
</svg>
|
|
|
|
|
|
|
|
</div>
|
|
</div>
|
|
|
- <h3>{{ exporting ? '解析中...' : '导出完成' }}</h3>
|
|
|
|
|
- <p v-if="exporting">正在解析 {{ currentFileName }}</p>
|
|
|
|
|
- <p v-if="!exporting">解析完成,已生成课件</p>
|
|
|
|
|
|
|
+ <h3>{{ exporting ? lang.ssParsing : lang.ssExportCompleted }}</h3>
|
|
|
|
|
+ <p v-if="exporting">{{ lang.ssParsingFile }}{{ currentFileName }}</p>
|
|
|
|
|
+ <p v-if="!exporting">{{ lang.ssParsingCompleted }}</p>
|
|
|
<button class="close-btn2" @click="handleParsingClose">
|
|
<button class="close-btn2" @click="handleParsingClose">
|
|
|
- {{ exporting ? '关闭' : '完成' }}
|
|
|
|
|
|
|
+ {{ exporting ? lang.ssClose : lang.ssComplete }}
|
|
|
</button>
|
|
</button>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
@@ -658,11 +658,11 @@ const handleFileUpload = async (files: FileList) => {
|
|
|
}
|
|
}
|
|
|
catch (error) {
|
|
catch (error) {
|
|
|
if (error instanceof DOMException && error.name === 'AbortError') {
|
|
if (error instanceof DOMException && error.name === 'AbortError') {
|
|
|
- console.log('文件解析已取消')
|
|
|
|
|
|
|
+ console.log(lang.ssFileParseCancelled)
|
|
|
}
|
|
}
|
|
|
else {
|
|
else {
|
|
|
- console.error('文件解析失败:', error)
|
|
|
|
|
- message.error('文件解析失败,请重试')
|
|
|
|
|
|
|
+ console.error(lang.ssFileParseFailed, error)
|
|
|
|
|
+ message.error(lang.ssFileParseFailedRetry)
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -672,7 +672,7 @@ const handleParsingClose = () => {
|
|
|
parsingAbortController.value.abort()
|
|
parsingAbortController.value.abort()
|
|
|
exporting.value = false
|
|
exporting.value = false
|
|
|
parsingAbortController.value = null
|
|
parsingAbortController.value = null
|
|
|
- // message.info('解析已取消')
|
|
|
|
|
|
|
+ // message.info(lang.ssParseCancelled)
|
|
|
}
|
|
}
|
|
|
else if (!exporting.value) {
|
|
else if (!exporting.value) {
|
|
|
emit('close')
|
|
emit('close')
|