处理一些类型问题

This commit is contained in:
KuroSago 2025-05-06 16:20:20 +08:00
parent 9e89fdbaef
commit baa4fdc8a2
6 changed files with 55 additions and 2407 deletions

View File

@ -1,21 +1,30 @@
const { exec } = require('child_process') const { exec } = require('child_process')
const fs = require('fs') const fs = require('fs')
const base = './src/plugins/' // 定义需要处理的目录列表
const list = fs.readdirSync(base) const directories = ['./src/plugins/', './src/parse/']
const files = [] const allFiles = []
// 遍历每个目录
directories.forEach(baseDir => {
try {
const list = fs.readdirSync(baseDir)
list.forEach(item => { list.forEach(item => {
const stat = fs.statSync(base + item) const filePath = baseDir + item
const stat = fs.statSync(filePath)
if (stat.isFile()) { if (stat.isFile()) {
files.push(item) allFiles.push(filePath)
} }
}) })
const str = files } catch (e) {
.map(item => { console.error(`Error processing directory ${baseDir}:`, e)
return base + item }
}) })
.join(' ')
// 将所有文件路径组合成字符串
const str = allFiles.join(' ')
// 执行 TypeScript 编译命令生成类型声明文件
exec( exec(
`tsc ${str} --declaration --allowJs --emitDeclarationOnly --outDir types/src/ --target es2017 --skipLibCheck ` `tsc ${str} --declaration --allowJs --emitDeclarationOnly --outDir types/src/ --target es2017 --skipLibCheck `
) )

File diff suppressed because it is too large Load Diff

View File

@ -53,6 +53,7 @@
], ],
"devDependencies": { "devDependencies": {
"eslint": "^8.25.0", "eslint": "^8.25.0",
"prettier": "^2.7.1" "prettier": "^2.7.1",
"typescript": "^5.8.3"
} }
} }

View File

@ -2,6 +2,7 @@
import MindMap from "simple-mind-map"; import MindMap from "simple-mind-map";
// 导入插件
import ExportPDF from 'simple-mind-map/src/plugins/ExportPDF' import ExportPDF from 'simple-mind-map/src/plugins/ExportPDF'
import ExportXMind from 'simple-mind-map/src/plugins/ExportXMind' import ExportXMind from 'simple-mind-map/src/plugins/ExportXMind'
import Export from 'simple-mind-map/src/plugins/Export' import Export from 'simple-mind-map/src/plugins/Export'

View File

@ -1,8 +1,9 @@
import { defineStore } from "pinia"; import { defineStore } from "pinia";
import { ref, Ref } from "vue"; import { ref } from "vue";
import { importFile } from "../helpers/import"; import { importFile } from "../helpers/import";
import { exportFile } from "../helpers/export"; import { exportFile } from "../helpers/export";
import { usePlugins } from "../helpers/usePlugin"; import { usePlugins } from "../helpers/usePlugin";
import MindMap from "simple-mind-map"; import MindMap from "simple-mind-map";
// 使用 defineStore 创建 store // 使用 defineStore 创建 store

View File

@ -0,0 +1,29 @@
// 导入全局声明文件
/// <reference path="./global.d.ts" />
declare module 'simple-mind-map' {
import MindMap from 'simple-mind-map/types/index';
export default MindMap
}
declare module 'simple-mind-map/src/plugins/ExportPDF' {
import ExportPDF from 'simple-mind-map/types/src/plugins/ExportPDF';
export default ExportPDF;
}
declare module 'simple-mind-map/src/plugins/ExportXMind' {
import ExportXMind from 'simple-mind-map/types/src/plugins/ExportXMind';
export default ExportXMind;
}
declare module 'simple-mind-map/src/plugins/Export' {
import Export from 'simple-mind-map/types/src/plugins/Export';
export default Export;
}
// simple-mind-map/src/parse/markdown
declare module 'simple-mind-map/src/parse/markdown' {
import markdown from 'simple-mind-map/types/src/parse/markdown';
export default markdown;
}