diff --git a/web/src/lang/en_us.js b/web/src/lang/en_us.js index 3f10d685..77e4eb9d 100644 --- a/web/src/lang/en_us.js +++ b/web/src/lang/en_us.js @@ -197,7 +197,10 @@ export default { fileContentError: 'The file content is incorrect', importSuccess: 'Import success', fileParsingFailed: 'File parsing failed', - xmindCanvasSelectDialogTitle: 'Select the canvas to import' + xmindCanvasSelectDialogTitle: 'Select the canvas to import', + mdImportDialogTitle: 'Paste Markdown content to import', + mdPlaceholder: 'Please enter the content in Markdown format', + mdEmptyTip: 'The content cannot be empty' }, navigatorToolbar: { openMiniMap: 'Open mini map', diff --git a/web/src/lang/zh_cn.js b/web/src/lang/zh_cn.js index dcc2e9f1..4eae5aab 100644 --- a/web/src/lang/zh_cn.js +++ b/web/src/lang/zh_cn.js @@ -191,7 +191,10 @@ export default { fileContentError: '文件内容有误', importSuccess: '导入成功', fileParsingFailed: '文件解析失败', - xmindCanvasSelectDialogTitle: '选择要导入的画布' + xmindCanvasSelectDialogTitle: '选择要导入的画布', + mdImportDialogTitle: '粘贴Markdown内容导入', + mdPlaceholder: '请输入Markdown格式的内容', + mdEmptyTip: '内容不能为空' }, navigatorToolbar: { openMiniMap: '开启小地图', diff --git a/web/src/lang/zh_tw.js b/web/src/lang/zh_tw.js index 7f546340..fe3c8cdd 100644 --- a/web/src/lang/zh_tw.js +++ b/web/src/lang/zh_tw.js @@ -192,7 +192,10 @@ export default { fileContentError: '檔案內容有誤', importSuccess: '匯入成功', fileParsingFailed: '檔案解析失敗', - xmindCanvasSelectDialogTitle: '選擇要匯入的畫布' + xmindCanvasSelectDialogTitle: '選擇要匯入的畫布', + mdImportDialogTitle: '粘貼Markdown內容導入', + mdPlaceholder: '請輸入Markdown格式的內容', + mdEmptyTip: '內容不能爲空' }, navigatorToolbar: { openMiniMap: '開啟小地圖', diff --git a/web/src/pages/Edit/components/Import.vue b/web/src/pages/Edit/components/Import.vue index 9ece1996..0edcb661 100644 --- a/web/src/pages/Edit/components/Import.vue +++ b/web/src/pages/Edit/components/Import.vue @@ -4,7 +4,7 @@ class="nodeImportDialog" :title="$t('import.title')" :visible.sync="dialogVisible" - width="300px" + width="350px" > {{ $t('import.selectFile') }} + {{ $t('import.mdImportDialogTitle') }}
{{ $t('import.support') }}{{ supportFileStr }}{{ $t('import.file') }}
@@ -53,6 +59,27 @@ }} + + + + + {{ $t('dialog.cancel') }} + {{ + $t('dialog.confirm') + }} + + @@ -71,7 +98,9 @@ export default { selectPromiseResolve: null, xmindCanvasSelectDialogVisible: false, selectCanvas: '', - canvasList: [] + canvasList: [], + mdImportDialogVisible: false, + mdStr: '' } }, computed: { @@ -321,6 +350,27 @@ export default { }) if (this.fileList.length <= 0) return this.confirm() + }, + + cancelImportMd() { + this.mdImportDialogVisible = false + this.mdStr = '' + }, + + confirmImportFromMd() { + if (!this.mdStr.trim()) { + this.$message.warning(this.$t('import.mdEmptyTip')) + return + } + try { + const data = markdown.transformMarkdownTo(this.mdStr.trim()) + this.$bus.$emit('setData', data) + this.$message.success(this.$t('import.importSuccess')) + this.cancelImportMd() + } catch (error) { + console.log(error) + this.$message.error(this.$t('import.fileParsingFailed')) + } } } }