* refactor: reorganize package structure and decouple framework packages ## Package Structure Reorganization - Reorganized 55 packages into categorized subdirectories: - packages/framework/ - Generic framework (Laya/Cocos compatible) - packages/engine/ - ESEngine core modules - packages/rendering/ - Rendering modules (WASM dependent) - packages/physics/ - Physics modules - packages/streaming/ - World streaming - packages/network-ext/ - Network extensions - packages/editor/ - Editor framework and plugins - packages/rust/ - Rust WASM engine - packages/tools/ - Build tools and SDK ## Framework Package Decoupling - Decoupled behavior-tree and blueprint packages from ESEngine dependencies - Created abstracted interfaces (IBTAssetManager, IBehaviorTreeAssetContent) - ESEngine-specific code moved to esengine/ subpath exports - Framework packages now usable with Cocos/Laya without ESEngine ## CI Configuration - Updated CI to only type-check and lint framework packages - Added type-check:framework and lint:framework scripts ## Breaking Changes - Package import paths changed due to directory reorganization - ESEngine integrations now use subpath imports (e.g., '@esengine/behavior-tree/esengine') * fix: update es-engine file path after directory reorganization * docs: update README to focus on framework over engine * ci: only build framework packages, remove Rust/WASM dependencies * fix: remove esengine subpath from behavior-tree and blueprint builds ESEngine integration code will only be available in full engine builds. Framework packages are now purely engine-agnostic. * fix: move network-protocols to framework, build both in CI * fix: update workflow paths from packages/core to packages/framework/core * fix: exclude esengine folder from type-check in behavior-tree and blueprint * fix: update network tsconfig references to new paths * fix: add test:ci:framework to only test framework packages in CI * fix: only build core and math npm packages in CI * fix: exclude test files from CodeQL and fix string escaping security issue
84 lines
2.4 KiB
JSON
84 lines
2.4 KiB
JSON
{
|
|
"name": "@esengine/ecs-framework",
|
|
"version": "2.4.2",
|
|
"description": "用于Laya、Cocos Creator等JavaScript游戏引擎的高性能ECS框架",
|
|
"main": "dist/index.cjs",
|
|
"module": "dist/index.mjs",
|
|
"types": "dist/index.d.ts",
|
|
"unpkg": "dist/index.umd.js",
|
|
"exports": {
|
|
".": {
|
|
"types": "./dist/index.d.ts",
|
|
"import": "./dist/index.mjs",
|
|
"require": "./dist/index.cjs"
|
|
}
|
|
},
|
|
"files": [
|
|
"dist/**/*"
|
|
],
|
|
"keywords": [
|
|
"ecs",
|
|
"entity-component-system",
|
|
"game-engine",
|
|
"typescript",
|
|
"laya",
|
|
"cocos",
|
|
"egret"
|
|
],
|
|
"scripts": {
|
|
"clean": "rimraf bin dist tsconfig.tsbuildinfo",
|
|
"build:ts": "tsc",
|
|
"prebuild": "npm run clean",
|
|
"build": "npm run build:ts && node build-rollup.cjs",
|
|
"build:watch": "tsc --watch",
|
|
"rebuild": "npm run clean && npm run build",
|
|
"build:npm": "npm run build",
|
|
"test": "jest --config jest.config.cjs",
|
|
"test:watch": "jest --watch --config jest.config.cjs",
|
|
"test:performance": "jest --config jest.performance.config.cjs",
|
|
"test:coverage": "jest --coverage --config jest.config.cjs",
|
|
"test:ci": "jest --ci --coverage --config jest.config.cjs",
|
|
"test:clear": "jest --clearCache",
|
|
"type-check": "npx tsc --noEmit",
|
|
"lint": "eslint \"src/**/*.{ts,tsx}\"",
|
|
"lint:fix": "eslint \"src/**/*.{ts,tsx}\" --fix"
|
|
},
|
|
"author": "yhh",
|
|
"license": "MIT",
|
|
"devDependencies": {
|
|
"@babel/core": "^7.28.3",
|
|
"@babel/plugin-transform-nullish-coalescing-operator": "^7.27.1",
|
|
"@babel/plugin-transform-optional-chaining": "^7.27.1",
|
|
"@babel/preset-env": "^7.28.3",
|
|
"@rollup/plugin-babel": "^6.0.4",
|
|
"@rollup/plugin-commonjs": "^28.0.3",
|
|
"@rollup/plugin-node-resolve": "^16.0.1",
|
|
"@rollup/plugin-terser": "^0.4.4",
|
|
"@jest/globals": "^29.7.0",
|
|
"@types/jest": "^29.5.14",
|
|
"@types/node": "^20.19.17",
|
|
"@eslint/js": "^9.37.0",
|
|
"eslint": "^9.37.0",
|
|
"typescript-eslint": "^8.46.1",
|
|
"jest": "^29.7.0",
|
|
"jest-environment-jsdom": "^29.7.0",
|
|
"rimraf": "^5.0.0",
|
|
"rollup": "^4.42.0",
|
|
"rollup-plugin-dts": "^6.2.1",
|
|
"ts-jest": "^29.4.0",
|
|
"typescript": "^5.8.3"
|
|
},
|
|
"publishConfig": {
|
|
"access": "public",
|
|
"registry": "https://registry.npmjs.org/"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/esengine/esengine.git",
|
|
"directory": "packages/core"
|
|
},
|
|
"dependencies": {
|
|
"tslib": "^2.8.1"
|
|
}
|
|
}
|