chore: upgrade dependencies and build tooling

This commit is contained in:
roymondchen 2026-08-05 18:13:43 +08:00
parent f609a02277
commit 192c16a7be
43 changed files with 3197 additions and 3229 deletions

View File

@ -17,6 +17,8 @@ jobs:
- name: Install pnpm - name: Install pnpm
uses: pnpm/action-setup@v4 uses: pnpm/action-setup@v4
with:
version: 11.20.0
- name: Set node version to 22 - name: Set node version to 22
uses: actions/setup-node@v4 uses: actions/setup-node@v4

View File

@ -18,7 +18,7 @@ https://tencent.github.io/tmagic-editor/playground/index.html
node.js ^20.19.0 || >=22.12.0 node.js ^20.19.0 || >=22.12.0
pnpm >= 10 pnpm 11.20.0
先安装 pnpm 先安装 pnpm

View File

@ -69,11 +69,11 @@ $ npm install monaco-editor -S
```ts ```ts
import { createApp } from "vue"; import { createApp } from "vue";
import EditorWorker from "monaco-editor/esm/vs/editor/editor.worker?worker"; import EditorWorker from "monaco-editor/editor/editor.worker.js?worker";
import CssWorker from "monaco-editor/esm/vs/language/css/css.worker?worker"; import CssWorker from "monaco-editor/language/css/css.worker.js?worker";
import HtmlWorker from "monaco-editor/esm/vs/language/html/html.worker?worker"; import HtmlWorker from "monaco-editor/language/html/html.worker.js?worker";
import JsonWorker from "monaco-editor/esm/vs/language/json/json.worker?worker"; import JsonWorker from "monaco-editor/language/json/json.worker.js?worker";
import TsWorker from "monaco-editor/esm/vs/language/typescript/ts.worker?worker"; import TsWorker from "monaco-editor/language/typescript/ts.worker.js?worker";
import editorPlugin from "@tmagic/editor"; import editorPlugin from "@tmagic/editor";
import MagicElementPlusAdapter from "@tmagic/element-plus-adapter"; import MagicElementPlusAdapter from "@tmagic/element-plus-adapter";

View File

@ -10,17 +10,17 @@
}, },
"dependencies": { "dependencies": {
"@eslint/js": "^10.0.1", "@eslint/js": "^10.0.1",
"@typescript-eslint/parser": "^8.58.0",
"@typescript-eslint/eslint-plugin": "^8.58.0",
"@stylistic/eslint-plugin": "^5.10.0", "@stylistic/eslint-plugin": "^5.10.0",
"@typescript-eslint/eslint-plugin": "^8.66.0",
"@typescript-eslint/parser": "^8.66.0",
"eslint-config-prettier": "^10.1.8", "eslint-config-prettier": "^10.1.8",
"eslint-plugin-import": "^2.32.0", "eslint-plugin-import": "^2.32.0",
"eslint-plugin-simple-import-sort": "^13.0.0", "eslint-plugin-prettier": "^5.5.6",
"eslint-plugin-vue": "^10.8.0", "eslint-plugin-simple-import-sort": "^14.0.0",
"vue-eslint-parser": "^10.4.0", "eslint-plugin-vue": "^10.10.0",
"eslint-plugin-prettier": "^5.5.5", "globals": "^17.9.0",
"globals": "^17.4.0", "typescript-eslint": "^8.66.0",
"typescript-eslint": "^8.58.0" "vue-eslint-parser": "^10.4.1"
}, },
"peerDependencies": { "peerDependencies": {
"eslint": ">=10.0.0", "eslint": ">=10.0.0",

View File

@ -3,10 +3,10 @@
"name": "tmagic", "name": "tmagic",
"private": true, "private": true,
"type": "module", "type": "module",
"packageManager": "pnpm@10.33.4", "packageManager": "pnpm@11.20.0",
"scripts": { "scripts": {
"bootstrap": "pnpm i && pnpm build", "bootstrap": "pnpm i && pnpm build",
"clean:top": "rimraf */**/dist */**/types */dist coverage dwt* temp packages/cli/lib", "clean:top": "rimraf packages/*/dist packages/*/types runtime/*/dist runtime/*/types vue-components/*/dist vue-components/*/types react-components/*/dist react-components/*/types playground/dist coverage dwt* temp packages/cli/lib",
"clean:modules": "rimraf node_modules **/node_modules **/**/node_modules", "clean:modules": "rimraf node_modules **/node_modules **/**/node_modules",
"clean:all": "pnpm clean:top && pnpm clean:modules", "clean:all": "pnpm clean:top && pnpm clean:modules",
"lint": "eslint --cache .", "lint": "eslint --cache .",
@ -40,44 +40,44 @@
"url": "https://github.com/Tencent/tmagic-editor.git" "url": "https://github.com/Tencent/tmagic-editor.git"
}, },
"devDependencies": { "devDependencies": {
"@commitlint/cli": "^20.5.3", "@commitlint/cli": "^21.2.1",
"@commitlint/config-conventional": "^20.5.3", "@commitlint/config-conventional": "^21.2.0",
"@tmagic/eslint-config": "workspace:*", "@tmagic/eslint-config": "workspace:*",
"@types/node": "24.0.10", "@types/node": "26.1.2",
"@vitejs/plugin-vue": "^6.0.8", "@vitejs/plugin-vue": "^6.0.8",
"@vitest/coverage-v8": "^4.1.10", "@vitest/coverage-v8": "^4.1.10",
"@vue/compiler-sfc": "catalog:", "@vue/compiler-sfc": "catalog:",
"c8": "^10.1.3", "c8": "^12.0.0",
"commitizen": "^4.3.2", "commitizen": "^4.3.2",
"conventional-changelog-cli": "^5.0.0", "conventional-changelog-cli": "^5.0.0",
"cosmiconfig": "^9.0.2", "cosmiconfig": "^10.0.0",
"cz-conventional-changelog": "^3.3.0", "cz-conventional-changelog": "^3.3.0",
"element-plus": "^2.14.3", "element-plus": "^2.14.3",
"enquirer": "^2.4.1", "enquirer": "^2.4.1",
"eslint": "^10.7.0", "eslint": "^10.8.0",
"execa": "^9.6.1", "execa": "^10.0.1",
"happy-dom": "^20.10.6", "happy-dom": "^20.11.1",
"highlight.js": "^11.11.1", "highlight.js": "^11.11.1",
"husky": "^9.1.7", "husky": "^9.1.7",
"jsdom": "^27.4.0", "jsdom": "^30.0.1",
"lint-staged": "^16.4.0", "lint-staged": "^17.3.0",
"minimist": "^1.2.8", "minimist": "^1.2.8",
"picocolors": "^1.1.1", "picocolors": "^1.1.1",
"prettier": "^3.9.5", "prettier": "^3.9.6",
"recast": "^0.23.12", "recast": "^0.23.19",
"rimraf": "^3.0.2", "rimraf": "^6.1.3",
"rolldown": "^1.2.0", "rolldown": "^1.2.2",
"rolldown-plugin-dts": "^0.26.0", "rolldown-plugin-dts": "^0.28.0",
"sass-embedded": "^1.100.0", "sass-embedded": "^1.100.0",
"semver": "^7.8.5", "semver": "^7.8.5",
"serialize-javascript": "^7.0.7", "serialize-javascript": "^7.0.7",
"shx": "^0.3.4", "shx": "^0.4.0",
"typescript": "catalog:", "typescript": "catalog:",
"vite": "catalog:", "vite": "catalog:",
"vitepress": "2.0.0-alpha.18", "vitepress": "^2.0.0-alpha.19",
"vitest": "^4.1.10", "vitest": "^4.1.10",
"vue": "catalog:", "vue": "catalog:",
"vue-tsc": "^3.3.7" "vue-tsc": "^3.3.9"
}, },
"config": { "config": {
"commitizen": { "commitizen": {

View File

@ -1,6 +1,6 @@
#!/usr/bin/env node #!/usr/bin/env node
const { cli } = require('../lib'); import { cli } from '../lib/index.js';
cli({ cli({
source: process.cwd(), source: process.cwd(),

View File

@ -1,11 +1,12 @@
{ {
"version": "1.8.0-beta.22", "version": "1.8.0-beta.22",
"name": "@tmagic/cli", "name": "@tmagic/cli",
"type": "module",
"main": "lib/index.js", "main": "lib/index.js",
"types": "lib/index.d.ts", "types": "lib/index.d.ts",
"license": "Apache-2.0", "license": "Apache-2.0",
"scripts": { "scripts": {
"build": "pnpm clean && tsc -b tsconfig.build.json", "build": "pnpm clean && rolldown -c rolldown.config.mjs",
"clean": "rimraf lib *.tsbuildinfo", "clean": "rimraf lib *.tsbuildinfo",
"check:type": "tsc --noEmit --project tsconfig.build.json" "check:type": "tsc --noEmit --project tsconfig.build.json"
}, },
@ -26,25 +27,18 @@
"url": "https://github.com/Tencent/tmagic-editor.git" "url": "https://github.com/Tencent/tmagic-editor.git"
}, },
"dependencies": { "dependencies": {
"cac": "^6.7.14", "cac": "^7.0.0",
"chokidar": "^3.6.0", "chokidar": "^5.0.0",
"esbuild": "^0.21.5", "fs-extra": "^11.4.0",
"fs-extra": "^11.2.0",
"merge-options": "^3.0.4", "merge-options": "^3.0.4",
"picocolors": "^1.1.1", "picocolors": "^1.1.1",
"recast": "^0.23.11", "recast": "^0.23.19",
"tslib": "^2.8.0" "typescript": "catalog:"
}, },
"devDependencies": { "devDependencies": {
"@types/fs-extra": "^11.0.4", "@types/fs-extra": "^11.0.4",
"@types/node": "^24.0.10" "@types/node": "^26.1.2",
}, "rolldown": "^1.2.2",
"peerDependencies": { "rolldown-plugin-dts": "^0.28.0"
"typescript": "catalog:"
},
"peerDependenciesMeta": {
"typescript": {
"optional": true
}
} }
} }

View File

@ -0,0 +1,36 @@
import { builtinModules, createRequire } from 'node:module';
import { defineConfig } from 'rolldown';
import { dts } from 'rolldown-plugin-dts';
const require = createRequire(import.meta.url);
const packageJson = require('./package.json');
const externalPackages = new Set([
...builtinModules,
...Object.keys(packageJson.dependencies ?? {}),
...Object.keys(packageJson.peerDependencies ?? {}),
]);
export default defineConfig({
input: 'src/index.ts',
plugins: [dts()],
external: (id) => {
if (id.startsWith('node:') || externalPackages.has(id)) {
return true;
}
for (const packageName of externalPackages) {
if (id.startsWith(`${packageName}/`)) {
return true;
}
}
return false;
},
output: {
dir: 'lib',
format: 'es',
sourcemap: false,
},
codeSplitting: false,
});

View File

@ -4,10 +4,10 @@ import fs from 'fs-extra';
import { prepareEntryFile } from './utils/prepareEntryFile'; import { prepareEntryFile } from './utils/prepareEntryFile';
import { resolveAppPackages } from './utils/resolveAppPackages'; import { resolveAppPackages } from './utils/resolveAppPackages';
import { require } from './require';
import { ModuleMainFilePath, UserConfig } from './types'; import { ModuleMainFilePath, UserConfig } from './types';
export default class Core { export default class Core {
// eslint-disable-next-line @typescript-eslint/no-require-imports
public version = require('../package.json').version; public version = require('../package.json').version;
public options: UserConfig; public options: UserConfig;

View File

@ -4,6 +4,7 @@ import { allowTs } from './utils/allowTs';
import { error } from './utils/logger'; import { error } from './utils/logger';
import { scripts } from './commands'; import { scripts } from './commands';
import App from './Core'; import App from './Core';
import { require } from './require';
import { UserConfig } from './types'; import { UserConfig } from './types';
/** /**
@ -29,7 +30,7 @@ export const cli = (defaultAppConfig: UserConfig): void => {
const program = cac('tmagic'); const program = cac('tmagic');
// display core version and cli version // display core version and cli version
// eslint-disable-next-line @typescript-eslint/no-require-imports
const versionCli = require('../package.json').version; const versionCli = require('../package.json').version;
program.version(`tmagic/cli@${versionCli}`); program.version(`tmagic/cli@${versionCli}`);

View File

@ -0,0 +1,9 @@
import { createRequire } from 'node:module';
/**
* CJS `require()` in an ESM context, shared by the whole CLI so that
* `allowTs`'s `.ts` loader also applies to `loadUserConfig` requires.
* Bound to the package `src/` directory, so paths like `../package.json`
* resolve to the package root as before.
*/
export const require = createRequire(import.meta.url);

View File

@ -1,23 +1,27 @@
import { transformSync } from 'esbuild';
import fs from 'fs-extra'; import fs from 'fs-extra';
import ts from 'typescript';
import { require } from '../require';
/** /**
* Transform a ts file to cjs code * Transform a ts file to cjs code
*/ */
export const transformTsFileToCodeSync = (filename: string): string => export const transformTsFileToCodeSync = (filename: string): string =>
transformSync(fs.readFileSync(filename).toString(), { ts.transpileModule(fs.readFileSync(filename).toString(), {
format: 'cjs', compilerOptions: {
loader: 'ts', inlineSourceMap: true,
sourcefile: filename, inlineSources: true,
sourcemap: 'inline', module: ts.ModuleKind.CommonJS,
target: 'node18', target: ts.ScriptTarget.ES2022,
}).code; },
fileName: filename,
}).outputText;
/** /**
* Globally allow ts files to be loaded via `require()` * Globally allow ts files to be loaded via `require()`
*/ */
export const allowTs = (): void => { export const allowTs = (): void => {
require.extensions['.ts'] = (m: any, filename) => { require.extensions['.ts'] = (m: any, filename: string) => {
m._compile(transformTsFileToCodeSync(filename), filename); m._compile(transformTsFileToCodeSync(filename), filename);
}; };
}; };

View File

@ -1,3 +1,4 @@
import { require } from '../require';
import { UserConfig, UserConfigLoader } from '../types'; import { UserConfig, UserConfigLoader } from '../types';
export const isPlainObject = <T extends Record<any, any> = Record<any, any>>(val: unknown): val is T => export const isPlainObject = <T extends Record<any, any> = Record<any, any>>(val: unknown): val is T =>
@ -10,7 +11,6 @@ export const hasExportDefault = <T = any>(mod: unknown): mod is { default: T } =
isPlainObject(mod) && !!mod.__esModule && Object.prototype.hasOwnProperty.call(mod, 'default'); isPlainObject(mod) && !!mod.__esModule && Object.prototype.hasOwnProperty.call(mod, 'default');
export const loadUserConfigCjs: UserConfigLoader = async (userConfigPath) => { export const loadUserConfigCjs: UserConfigLoader = async (userConfigPath) => {
// eslint-disable-next-line @typescript-eslint/no-require-imports
const required = require(userConfigPath); const required = require(userConfigPath);
return hasExportDefault(required) ? required.default : required; return hasExportDefault(required) ? required.default : required;
}; };

View File

@ -1,6 +1,7 @@
import * as recast from 'recast'; import * as recast from 'recast';
import type App from '../Core'; import type App from '../Core';
import { require } from '../require';
import { EntryType } from '../types'; import { EntryType } from '../types';
export const prepareEntryFile = async (app: App) => { export const prepareEntryFile = async (app: App) => {
@ -138,7 +139,6 @@ export const generateContent = (
}; };
export const prettyCode = (code: string) => export const prettyCode = (code: string) =>
// eslint-disable-next-line @typescript-eslint/no-require-imports
recast.prettyPrint(recast.parse(code.replace(/\\/g, '/'), { parser: require('recast/parsers/typescript') }), { recast.prettyPrint(recast.parse(code.replace(/\\/g, '/'), { parser: require('recast/parsers/typescript') }), {
tabWidth: 2, tabWidth: 2,
trailingComma: true, trailingComma: true,

View File

@ -2,10 +2,11 @@ import { execSync } from 'node:child_process';
import path from 'node:path'; import path from 'node:path';
import { exit } from 'node:process'; import { exit } from 'node:process';
import fs, { existsSync } from 'fs-extra'; import fs from 'fs-extra';
import * as recast from 'recast'; import * as recast from 'recast';
import type App from '../Core'; import type App from '../Core';
import { require } from '../require';
import { EntryType, ModuleMainFilePath, NpmConfig, PackageType } from '../types'; import { EntryType, ModuleMainFilePath, NpmConfig, PackageType } from '../types';
import { backupLock, backupPackageJson, restoreLock, restorePackageJson } from './backupPackageFile'; import { backupLock, backupPackageJson, restoreLock, restorePackageJson } from './backupPackageFile';
@ -127,7 +128,7 @@ const typeAssertion = function ({
if (isFile(defaultFile)) { if (isFile(defaultFile)) {
const defaultCode = fs.readFileSync(defaultFile, { encoding: 'utf-8', flag: 'r' }); const defaultCode = fs.readFileSync(defaultFile, { encoding: 'utf-8', flag: 'r' });
// eslint-disable-next-line @typescript-eslint/no-require-imports
const ast = recast.parse(defaultCode, { parser: require('recast/parsers/typescript') }); const ast = recast.parse(defaultCode, { parser: require('recast/parsers/typescript') });
if ( if (
isDatasource( isDatasource(
@ -294,7 +295,7 @@ const getComponentPackageImports = function ({
if (propertyMatch) { if (propertyMatch) {
let file = getIndexPath(path.resolve(path.dirname(indexPath), propertyMatch.source.value)); let file = getIndexPath(path.resolve(path.dirname(indexPath), propertyMatch.source.value));
if (!existsSync(file)) { if (!fs.existsSync(file)) {
file = propertyMatch.source.value; file = propertyMatch.source.value;
} }
@ -518,7 +519,7 @@ const setPackages = (packages: ModuleMainFilePath, app: App, packagePath: string
.replace('\n', ''); .replace('\n', '');
const indexCode = fs.readFileSync(indexPath, { encoding: 'utf-8', flag: 'r' }); const indexCode = fs.readFileSync(indexPath, { encoding: 'utf-8', flag: 'r' });
// eslint-disable-next-line @typescript-eslint/no-require-imports
const ast: Ast = recast.parse(indexCode, { parser: require('recast/parsers/typescript') }); const ast: Ast = recast.parse(indexCode, { parser: require('recast/parsers/typescript') });
const result = typeAssertion({ ast, indexPath, componentFileAffix, datasoucreSuperClass }); const result = typeAssertion({ ast, indexPath, componentFileAffix, datasoucreSuperClass });

View File

@ -2,12 +2,10 @@
"extends": "../../tsconfig.json", "extends": "../../tsconfig.json",
"compilerOptions": { "compilerOptions": {
"tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo", "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",
"moduleResolution": "node16", "moduleResolution": "bundler",
"module": "node16", "module": "ESNext",
"rootDir": "./src", "rootDir": "./src",
"outDir": "./lib", "outDir": "./lib",
"declaration": true,
"types": ["node"], "types": ["node"],
}, },
"include": ["./src"], "include": ["./src"],

View File

@ -39,11 +39,11 @@
"@tmagic/schema": "workspace:*", "@tmagic/schema": "workspace:*",
"@tmagic/utils": "workspace:*", "@tmagic/utils": "workspace:*",
"events": "^3.3.0", "events": "^3.3.0",
"lodash-es": "^4.17.21" "lodash-es": "^4.18.1"
}, },
"devDependencies": { "devDependencies": {
"@types/events": "^3.0.3", "@types/events": "^3.0.3",
"@types/lodash-es": "^4.17.4" "@types/lodash-es": "^4.17.12"
}, },
"peerDependencies": { "peerDependencies": {
"typescript": "catalog:" "typescript": "catalog:"

View File

@ -32,9 +32,9 @@
"data-source" "data-source"
], ],
"dependencies": { "dependencies": {
"deep-state-observer": "^5.5.13", "deep-state-observer": "^5.5.17",
"events": "^3.3.0", "events": "^3.3.0",
"lodash-es": "^4.17.21" "lodash-es": "^4.18.1"
}, },
"peerDependencies": { "peerDependencies": {
"@tmagic/core": "workspace:*", "@tmagic/core": "workspace:*",
@ -47,6 +47,6 @@
}, },
"devDependencies": { "devDependencies": {
"@types/events": "^3.0.3", "@types/events": "^3.0.3",
"@types/lodash-es": "^4.17.4" "@types/lodash-es": "^4.17.12"
} }
} }

View File

@ -59,17 +59,17 @@
"events": "^3.3.0", "events": "^3.3.0",
"gesto": "^1.19.4", "gesto": "^1.19.4",
"keycon": "^1.4.0", "keycon": "^1.4.0",
"lodash-es": "^4.17.21", "lodash-es": "^4.18.1",
"moveable": "^0.53.0", "moveable": "^0.53.0",
"serialize-javascript": "^7.0.0", "serialize-javascript": "^7.0.7",
"sortablejs": "^1.15.6" "sortablejs": "^1.15.7"
}, },
"devDependencies": { "devDependencies": {
"@types/events": "^3.0.3", "@types/events": "^3.0.3",
"@types/lodash-es": "^4.17.4", "@types/lodash-es": "^4.17.12",
"@types/serialize-javascript": "^5.0.4", "@types/serialize-javascript": "^5.0.4",
"@types/sortablejs": "^1.15.9", "@types/sortablejs": "^1.15.9",
"@vue/test-utils": "^2.4.6" "@vue/test-utils": "^2.4.11"
}, },
"peerDependencies": { "peerDependencies": {
"@tmagic/core": "workspace:*", "@tmagic/core": "workspace:*",

View File

@ -40,21 +40,21 @@
"dependencies": { "dependencies": {
"@element-plus/icons-vue": "^2.3.2", "@element-plus/icons-vue": "^2.3.2",
"@popperjs/core": "^2.11.8", "@popperjs/core": "^2.11.8",
"dayjs": "^1.11.19", "dayjs": "^1.11.21",
"lodash-es": "^4.17.21", "lodash-es": "^4.18.1",
"sortablejs": "^1.15.6" "sortablejs": "^1.15.7"
}, },
"devDependencies": { "devDependencies": {
"@types/lodash-es": "^4.17.4", "@types/lodash-es": "^4.17.12",
"@types/sortablejs": "^1.15.9", "@types/sortablejs": "^1.15.9",
"@vue/test-utils": "^2.4.6" "@vue/test-utils": "^2.4.11"
}, },
"peerDependencies": { "peerDependencies": {
"@tmagic/design": "workspace:*", "@tmagic/design": "workspace:*",
"@tmagic/utils": "workspace:*",
"@tmagic/form-schema": "workspace:*", "@tmagic/form-schema": "workspace:*",
"vue": "catalog:", "@tmagic/utils": "workspace:*",
"typescript": "catalog:" "typescript": "catalog:",
"vue": "catalog:"
}, },
"peerDependenciesMeta": { "peerDependenciesMeta": {
"typescript": { "typescript": {

View File

@ -30,17 +30,17 @@
}, },
"dependencies": { "dependencies": {
"@scena/guides": "^0.29.2", "@scena/guides": "^0.29.2",
"@zumer/snapdom": "^2.23.2",
"events": "^3.3.0", "events": "^3.3.0",
"@zumer/snapdom": "^2.8.0",
"keycon": "^1.4.0", "keycon": "^1.4.0",
"lodash-es": "^4.17.21", "lodash-es": "^4.18.1",
"moveable": "^0.53.0", "moveable": "^0.53.0",
"moveable-helper": "^0.4.0", "moveable-helper": "^0.4.0",
"scenejs": "^1.10.3" "scenejs": "^1.10.3"
}, },
"devDependencies": { "devDependencies": {
"@types/events": "^3.0.3", "@types/events": "^3.0.3",
"@types/lodash-es": "^4.17.4" "@types/lodash-es": "^4.17.12"
}, },
"peerDependencies": { "peerDependencies": {
"@tmagic/core": "workspace:*", "@tmagic/core": "workspace:*",

View File

@ -38,18 +38,18 @@
}, },
"dependencies": { "dependencies": {
"@element-plus/icons-vue": "^2.3.2", "@element-plus/icons-vue": "^2.3.2",
"lodash-es": "^4.17.21" "lodash-es": "^4.18.1"
}, },
"devDependencies": { "devDependencies": {
"@types/lodash-es": "^4.17.4", "@types/lodash-es": "^4.17.12",
"@vue/test-utils": "^2.4.6" "@vue/test-utils": "^2.4.11"
}, },
"peerDependencies": { "peerDependencies": {
"@tmagic/design": "workspace:*", "@tmagic/design": "workspace:*",
"@tmagic/form": "workspace:*", "@tmagic/form": "workspace:*",
"@tmagic/utils": "workspace:*", "@tmagic/utils": "workspace:*",
"vue": "catalog:", "typescript": "catalog:",
"typescript": "catalog:" "vue": "catalog:"
}, },
"peerDependenciesMeta": { "peerDependenciesMeta": {
"typescript": { "typescript": {

View File

@ -28,10 +28,10 @@
"url": "https://github.com/Tencent/tmagic-editor.git" "url": "https://github.com/Tencent/tmagic-editor.git"
}, },
"dependencies": { "dependencies": {
"lodash-es": "^4.17.21" "lodash-es": "^4.18.1"
}, },
"devDependencies": { "devDependencies": {
"@types/lodash-es": "^4.17.4" "@types/lodash-es": "^4.17.12"
}, },
"peerDependencies": { "peerDependencies": {
"@tmagic/schema": "workspace:*", "@tmagic/schema": "workspace:*",

View File

@ -17,22 +17,22 @@
"@tmagic/editor": "1.8.0-beta.22", "@tmagic/editor": "1.8.0-beta.22",
"@tmagic/element-plus-adapter": "1.8.0-beta.22", "@tmagic/element-plus-adapter": "1.8.0-beta.22",
"@tmagic/tdesign-vue-next-adapter": "1.8.0-beta.22", "@tmagic/tdesign-vue-next-adapter": "1.8.0-beta.22",
"@tmagic/tmagic-form-runtime": "1.1.3", "@tmagic/tmagic-form-runtime": "1.1.6",
"element-plus": "^2.14.3", "element-plus": "^2.14.3",
"lodash-es": "^4.17.21", "lodash-es": "^4.18.1",
"monaco-editor": "^0.55.1", "monaco-editor": "^0.56.0",
"serialize-javascript": "^7.0.0", "serialize-javascript": "^7.0.7",
"tdesign-vue-next": "^1.17.3", "tdesign-vue-next": "^1.20.5",
"vue": "catalog:", "vue": "catalog:",
"vue-router": "^4.6.3" "vue-router": "^5.2.0"
}, },
"devDependencies": { "devDependencies": {
"@types/lodash-es": "^4.17.4", "@types/lodash-es": "^4.17.12",
"@types/node": "^24.0.10", "@types/node": "^26.1.2",
"@types/serialize-javascript": "^5.0.4", "@types/serialize-javascript": "^5.0.4",
"@vitejs/plugin-legacy": "^8.0.1", "@vitejs/plugin-legacy": "^8.2.2",
"@vitejs/plugin-vue": "^6.0.6", "@vitejs/plugin-vue": "^6.0.8",
"@vitejs/plugin-vue-jsx": "^5.1.5", "@vitejs/plugin-vue-jsx": "^5.1.6",
"@vue/compiler-sfc": "catalog:", "@vue/compiler-sfc": "catalog:",
"typescript": "catalog:", "typescript": "catalog:",
"vite": "catalog:" "vite": "catalog:"

View File

@ -17,11 +17,11 @@
*/ */
import { createApp } from 'vue'; import { createApp } from 'vue';
import EditorWorker from 'monaco-editor/esm/vs/editor/editor.worker?worker'; import EditorWorker from 'monaco-editor/editor/editor.worker.js?worker';
import CssWorker from 'monaco-editor/esm/vs/language/css/css.worker?worker'; import CssWorker from 'monaco-editor/language/css/css.worker.js?worker';
import HtmlWorker from 'monaco-editor/esm/vs/language/html/html.worker?worker'; import HtmlWorker from 'monaco-editor/language/html/html.worker.js?worker';
import JsonWorker from 'monaco-editor/esm/vs/language/json/json.worker?worker'; import JsonWorker from 'monaco-editor/language/json/json.worker.js?worker';
import TsWorker from 'monaco-editor/esm/vs/language/typescript/ts.worker?worker'; import TsWorker from 'monaco-editor/language/typescript/ts.worker.js?worker';
import editorPlugin from '@tmagic/editor'; import editorPlugin from '@tmagic/editor';

6040
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@ -6,12 +6,19 @@ packages:
- "react-components/*" - "react-components/*"
- "eslint-config" - "eslint-config"
minimumReleaseAge: 0
allowBuilds:
'@parcel/watcher': true
core-js: true
esbuild: true
catalog: catalog:
"@vue/compiler-sfc": ^3.5.40 "@vue/compiler-sfc": ^3.5.40
typescript: "^6.0.3" typescript: "^6.0.3"
vite: ^8.1.5 vite: ^8.2.0
vue: ^3.5.40 vue: ^3.5.40
overrides: overrides:
element-plus: ^2.14.3 element-plus: ^2.14.3
vue: ^3.5.40 vue: ^3.5.40

View File

@ -29,7 +29,7 @@
} }
}, },
"devDependencies": { "devDependencies": {
"@types/react": "^18.3.3", "@types/react": "^19.2.18",
"@types/react-dom": "^18.3.0" "@types/react-dom": "^19.2.4"
} }
} }

View File

@ -29,7 +29,7 @@
} }
}, },
"devDependencies": { "devDependencies": {
"@types/react": "^18.3.3", "@types/react": "^19.2.18",
"@types/react-dom": "^18.3.0" "@types/react-dom": "^19.2.4"
} }
} }

View File

@ -29,7 +29,7 @@
} }
}, },
"devDependencies": { "devDependencies": {
"@types/react": "^18.3.3", "@types/react": "^19.2.18",
"@types/react-dom": "^18.3.0" "@types/react-dom": "^19.2.4"
} }
} }

View File

@ -29,7 +29,7 @@
} }
}, },
"devDependencies": { "devDependencies": {
"@types/react": "^18.3.3", "@types/react": "^19.2.18",
"@types/react-dom": "^18.3.0" "@types/react-dom": "^19.2.4"
} }
} }

View File

@ -29,7 +29,7 @@
} }
}, },
"devDependencies": { "devDependencies": {
"@types/react": "^18.3.3", "@types/react": "^19.2.18",
"@types/react-dom": "^18.3.0" "@types/react-dom": "^19.2.4"
} }
} }

View File

@ -29,7 +29,7 @@
} }
}, },
"devDependencies": { "devDependencies": {
"@types/react": "^18.3.3", "@types/react": "^19.2.18",
"@types/react-dom": "^18.3.0" "@types/react-dom": "^19.2.4"
} }
} }

View File

@ -29,7 +29,7 @@
} }
}, },
"devDependencies": { "devDependencies": {
"@types/react": "^18.3.3", "@types/react": "^19.2.18",
"@types/react-dom": "^18.3.0" "@types/react-dom": "^19.2.4"
} }
} }

View File

@ -29,7 +29,7 @@
} }
}, },
"devDependencies": { "devDependencies": {
"@types/react": "^18.3.3", "@types/react": "^19.2.18",
"@types/react-dom": "^18.3.0" "@types/react-dom": "^19.2.4"
} }
} }

View File

@ -15,7 +15,7 @@
}, },
"dependencies": { "dependencies": {
"@tmagic/form-schema": "workspace:^", "@tmagic/form-schema": "workspace:^",
"qrcode": "^1.5.0" "qrcode": "^1.5.4"
}, },
"peerDependencies": { "peerDependencies": {
"@tmagic/core": "workspace:^", "@tmagic/core": "workspace:^",
@ -30,8 +30,8 @@
} }
}, },
"devDependencies": { "devDependencies": {
"@types/qrcode": "^1.4.2", "@types/qrcode": "^1.5.6",
"@types/react": "^18.3.3", "@types/react": "^19.2.18",
"@types/react-dom": "^18.3.0" "@types/react-dom": "^19.2.4"
} }
} }

View File

@ -29,7 +29,7 @@
} }
}, },
"devDependencies": { "devDependencies": {
"@types/react": "^18.3.3", "@types/react": "^19.2.18",
"@types/react-dom": "^18.3.0" "@types/react-dom": "^19.2.4"
} }
} }

View File

@ -27,12 +27,12 @@
"url": "https://github.com/Tencent/tmagic-editor.git" "url": "https://github.com/Tencent/tmagic-editor.git"
}, },
"dependencies": { "dependencies": {
"lodash-es": "^4.17.21" "lodash-es": "^4.18.1"
}, },
"peerDependencies": { "peerDependencies": {
"lodash-es": "^4.17.21",
"@tmagic/core": ">=1.7.0", "@tmagic/core": ">=1.7.0",
"@tmagic/stage": ">=1.7.0", "@tmagic/stage": ">=1.7.0",
"lodash-es": "^4.17.21",
"react": ">=18.3.1", "react": ">=18.3.1",
"typescript": "catalog:" "typescript": "catalog:"
}, },
@ -48,7 +48,7 @@
} }
}, },
"devDependencies": { "devDependencies": {
"@types/lodash-es": "^4.17.4", "@types/lodash-es": "^4.17.12",
"@types/react": "^18.3.3" "@types/react": "^19.2.18"
} }
} }

View File

@ -19,19 +19,19 @@
"@tmagic/core": "1.8.0-beta.22", "@tmagic/core": "1.8.0-beta.22",
"@tmagic/react-runtime-help": "0.2.2", "@tmagic/react-runtime-help": "0.2.2",
"@tmagic/stage": "1.8.0-beta.22", "@tmagic/stage": "1.8.0-beta.22",
"axios": "^1.13.2", "axios": "^1.19.0",
"qrcode": "^1.5.0", "qrcode": "^1.5.4",
"react": "^18.3.1", "react": "^19.2.8",
"react-dom": "^18.3.1" "react-dom": "^19.2.8"
}, },
"devDependencies": { "devDependencies": {
"@tmagic/cli": "1.8.0-beta.22", "@tmagic/cli": "1.8.0-beta.22",
"@types/fs-extra": "^11.0.4", "@types/fs-extra": "^11.0.4",
"@types/react": "^18.3.3", "@types/react": "^19.2.18",
"@types/react-dom": "^18.3.0", "@types/react-dom": "^19.2.4",
"@vitejs/plugin-legacy": "^8.0.0", "@vitejs/plugin-legacy": "^8.2.2",
"@vitejs/plugin-react-refresh": "^1.3.6", "@vitejs/plugin-react-refresh": "^1.3.6",
"fs-extra": "^11.3.1", "fs-extra": "^11.4.0",
"typescript": "catalog:", "typescript": "catalog:",
"vite": "catalog:", "vite": "catalog:",
"vite-plugin-commonjs": "^0.10.4" "vite-plugin-commonjs": "^0.10.4"

View File

@ -44,6 +44,6 @@
} }
}, },
"devDependencies": { "devDependencies": {
"@vue/test-utils": "^2.4.6" "@vue/test-utils": "^2.4.11"
} }
} }

View File

@ -19,21 +19,21 @@
"@tmagic/core": "1.8.0-beta.22", "@tmagic/core": "1.8.0-beta.22",
"@tmagic/stage": "1.8.0-beta.22", "@tmagic/stage": "1.8.0-beta.22",
"@tmagic/vue-runtime-help": "^2.0.4", "@tmagic/vue-runtime-help": "^2.0.4",
"axios": "^1.13.2", "axios": "^1.19.0",
"vue": "catalog:" "vue": "catalog:"
}, },
"devDependencies": { "devDependencies": {
"@tmagic/cli": "1.8.0-beta.22", "@tmagic/cli": "1.8.0-beta.22",
"@types/fs-extra": "^11.0.4", "@types/fs-extra": "^11.0.4",
"@types/node": "^24.0.10", "@types/node": "^26.1.2",
"@vitejs/plugin-legacy": "^8.0.1", "@vitejs/plugin-legacy": "^8.2.2",
"@vitejs/plugin-vue": "^6.0.6", "@vitejs/plugin-vue": "^6.0.8",
"@vitejs/plugin-vue-jsx": "^5.1.5", "@vitejs/plugin-vue-jsx": "^5.1.6",
"@vue/compiler-sfc": "catalog:", "@vue/compiler-sfc": "catalog:",
"fs-extra": "^11.3.1", "fs-extra": "^11.4.0",
"minimist": "^1.2.8", "minimist": "^1.2.8",
"rimraf": "^3.0.2", "rimraf": "^6.1.3",
"typescript": "catalog:", "typescript": "6.0.3",
"vite": "catalog:" "vite": "catalog:"
} }
} }

View File

@ -6,7 +6,7 @@ import { fileURLToPath } from 'node:url';
import { build as buildVite } from 'vite'; import { build as buildVite } from 'vite';
import vue from '@vitejs/plugin-vue'; import vue from '@vitejs/plugin-vue';
import minimist from 'minimist'; import minimist from 'minimist';
import rimraf from 'rimraf'; import { rimrafSync } from 'rimraf';
import * as sass from 'sass-embedded'; import * as sass from 'sass-embedded';
const args = minimist(process.argv.slice(2)); const args = minimist(process.argv.slice(2));
@ -20,7 +20,7 @@ const runtimeDir = path.resolve(dirname, '../runtime');
if (args.package) { if (args.package) {
const pkgRoot = path.resolve(packagesDir, args.package); const pkgRoot = path.resolve(packagesDir, args.package);
if (fs.statSync(pkgRoot).isDirectory()) { if (fs.statSync(pkgRoot).isDirectory()) {
rimraf.sync(path.resolve(packagesDir, `./${args.package}/dist`)); rimrafSync(path.resolve(packagesDir, `./${args.package}/dist`));
const pkg = createRequire(import.meta.url)(`../packages/${args.package}/package.json`); const pkg = createRequire(import.meta.url)(`../packages/${args.package}/package.json`);
build({ packageName: args.package, format: 'es', pkg, packagesDir }); build({ packageName: args.package, format: 'es', pkg, packagesDir });
@ -32,7 +32,7 @@ if (args.package) {
const runtimeHelpers = getPackageNames(runtimeDir); const runtimeHelpers = getPackageNames(runtimeDir);
for (const packageName of packages) { for (const packageName of packages) {
rimraf.sync(path.resolve(packagesDir, `./${packageName}/dist`)); rimrafSync(path.resolve(packagesDir, `./${packageName}/dist`));
const pkg = createRequire(import.meta.url)(`../packages/${packageName}/package.json`); const pkg = createRequire(import.meta.url)(`../packages/${packageName}/package.json`);
build({ packageName, format: 'es', pkg, packagesDir }); build({ packageName, format: 'es', pkg, packagesDir });
@ -41,7 +41,7 @@ if (args.package) {
} }
for (const packageName of runtimeHelpers) { for (const packageName of runtimeHelpers) {
rimraf.sync(path.resolve(runtimeDir, `./${packageName}/dist`)); rimrafSync(path.resolve(runtimeDir, `./${packageName}/dist`));
const pkg = createRequire(import.meta.url)(`../runtime/${packageName}/package.json`); const pkg = createRequire(import.meta.url)(`../runtime/${packageName}/package.json`);
build({ packageName, format: 'es', pkg, packagesDir: runtimeDir }); build({ packageName, format: 'es', pkg, packagesDir: runtimeDir });

View File

@ -15,7 +15,7 @@
}, },
"dependencies": { "dependencies": {
"@tmagic/form-schema": "workspace:^", "@tmagic/form-schema": "workspace:^",
"qrcode": "^1.5.0" "qrcode": "^1.5.4"
}, },
"peerDependencies": { "peerDependencies": {
"@tmagic/core": "workspace:^", "@tmagic/core": "workspace:^",
@ -29,6 +29,6 @@
} }
}, },
"devDependencies": { "devDependencies": {
"@types/qrcode": "^1.4.2" "@types/qrcode": "^1.5.6"
} }
} }