mirror of
https://github.com/AutoMaker-Org/automaker.git
synced 2026-01-30 06:12:03 +00:00
* feat: add three viewing modes for app specification Introduces View, Edit, and Source modes for the spec page: - View: Clean read-only display with cards, badges, and accordions - Edit: Structured form-based editor for all spec fields - Source: Raw XML editor for advanced users Also adds @automaker/spec-parser shared package for XML parsing between server and client. * fix: address PR review feedback - Replace array index keys with stable UUIDs in array-field-editor, features-section, and roadmap-section components - Replace regex-based XML parsing with fast-xml-parser for robustness - Simplify renderContent logic in spec-view by removing dead code paths * fix: convert git+ssh URLs to https in package-lock.json * fix: address PR review feedback for spec visualiser - Remove unused RefreshCw import from spec-view.tsx - Add explicit parsedSpec check in renderContent for robustness - Hide save button in view mode since it's read-only - Remove GripVertical drag handles since drag-and-drop is not implemented - Rename Map imports to MapIcon to avoid shadowing global Map - Escape tagName in xml-utils.ts RegExp functions for safety - Add aria-label attributes for accessibility on mode tabs * fix: address additional PR review feedback - Fix Textarea controlled/uncontrolled warning with default value - Preserve IDs in useEffect sync to avoid unnecessary remounts - Consolidate lucide-react imports - Add JSDoc note about tag attributes limitation in xml-utils.ts - Remove redundant disabled prop from SpecModeTabs
79 lines
4.1 KiB
JSON
79 lines
4.1 KiB
JSON
{
|
|
"name": "automaker",
|
|
"version": "0.12.0rc",
|
|
"private": true,
|
|
"engines": {
|
|
"node": ">=22.0.0 <23.0.0"
|
|
},
|
|
"workspaces": [
|
|
"apps/*",
|
|
"libs/*"
|
|
],
|
|
"scripts": {
|
|
"postinstall": "node -e \"const fs=require('fs');if(process.platform==='darwin'){['darwin-arm64','darwin-x64'].forEach(a=>{const p='node_modules/node-pty/prebuilds/'+a+'/spawn-helper';if(fs.existsSync(p))fs.chmodSync(p,0o755)})}\" && node scripts/fix-lockfile-urls.mjs",
|
|
"fix:lockfile": "node scripts/fix-lockfile-urls.mjs",
|
|
"dev": "./start-automaker.sh",
|
|
"start": "./start-automaker.sh --production",
|
|
"_dev:web": "npm run dev:web --workspace=apps/ui",
|
|
"_dev:electron": "npm run dev:electron --workspace=apps/ui",
|
|
"_dev:electron:debug": "npm run dev:electron:debug --workspace=apps/ui",
|
|
"_dev:electron:wsl": "npm run dev:electron:wsl --workspace=apps/ui",
|
|
"_dev:electron:wsl:gpu": "npm run dev:electron:wsl:gpu --workspace=apps/ui",
|
|
"_dev:server": "npm run dev --workspace=apps/server",
|
|
"dev:web": "npm run build:packages && npm run _dev:web",
|
|
"dev:electron": "npm run build:packages && npm run _dev:electron",
|
|
"dev:electron:debug": "npm run build:packages && npm run _dev:electron:debug",
|
|
"dev:electron:wsl": "npm run build:packages && npm run _dev:electron:wsl",
|
|
"dev:electron:wsl:gpu": "npm run build:packages && npm run _dev:electron:wsl:gpu",
|
|
"dev:server": "npm run build:packages && npm run _dev:server",
|
|
"dev:docker": "docker compose up",
|
|
"dev:docker:rebuild": "docker compose build --no-cache && docker compose up",
|
|
"dev:full": "npm run build:packages && concurrently \"npm run _dev:server\" \"npm run _dev:web\"",
|
|
"build": "npm run build:packages && npm run build --workspace=apps/ui",
|
|
"build:packages": "npm run build -w @automaker/types && npm run build -w @automaker/platform && npm run build -w @automaker/utils -w @automaker/spec-parser && npm run build -w @automaker/prompts -w @automaker/model-resolver -w @automaker/dependency-resolver && npm run build -w @automaker/git-utils",
|
|
"build:server": "npm run build:packages && npm run build --workspace=apps/server",
|
|
"build:electron": "npm run build:packages && npm run build:electron --workspace=apps/ui",
|
|
"build:electron:dir": "npm run build:packages && npm run build:electron:dir --workspace=apps/ui",
|
|
"build:electron:win": "npm run build:packages && npm run build:electron:win --workspace=apps/ui",
|
|
"build:electron:win:dir": "npm run build:packages && npm run build:electron:win:dir --workspace=apps/ui",
|
|
"build:electron:mac": "npm run build:packages && npm run build:electron:mac --workspace=apps/ui",
|
|
"build:electron:mac:dir": "npm run build:packages && npm run build:electron:mac:dir --workspace=apps/ui",
|
|
"build:electron:linux": "npm run build:packages && npm run build:electron:linux --workspace=apps/ui",
|
|
"build:electron:linux:dir": "npm run build:packages && npm run build:electron:linux:dir --workspace=apps/ui",
|
|
"lint": "npm run lint --workspace=apps/ui",
|
|
"test": "npm run test --workspace=apps/ui",
|
|
"test:headed": "npm run test:headed --workspace=apps/ui",
|
|
"test:ui": "npm run test --workspace=apps/ui -- --ui",
|
|
"test:packages": "vitest run --project='!server'",
|
|
"test:server": "vitest run --project=server",
|
|
"test:server:coverage": "vitest run --project=server --coverage",
|
|
"test:unit": "vitest run",
|
|
"test:unit:watch": "vitest",
|
|
"test:all": "vitest run",
|
|
"lint:lockfile": "node scripts/lint-lockfile.mjs",
|
|
"format": "prettier --write .",
|
|
"format:check": "prettier --check .",
|
|
"rebuild": "rm -rf node_modules apps/*/node_modules libs/*/node_modules && npm install",
|
|
"prepare": "husky && npm run build:packages"
|
|
},
|
|
"lint-staged": {
|
|
"*.{js,jsx,ts,tsx,json,css,md,html,yml,yaml}": [
|
|
"prettier --write"
|
|
]
|
|
},
|
|
"dependencies": {
|
|
"cross-spawn": "7.0.6",
|
|
"rehype-sanitize": "6.0.0",
|
|
"tree-kill": "1.2.2"
|
|
},
|
|
"devDependencies": {
|
|
"husky": "9.1.7",
|
|
"lint-staged": "16.2.7",
|
|
"prettier": "3.7.4",
|
|
"vitest": "4.0.16"
|
|
},
|
|
"optionalDependencies": {
|
|
"dmg-license": "^1.0.11"
|
|
}
|
|
}
|