package.json
Rama main · réplica de lectura del repositorio original.
{
"name": "dbackup",
"version": "4.0.2",
"private": true,
"scripts": {
"dev": "node scripts/apply-pending-restore.js && prisma migrate deploy && prisma generate && next dev",
"build": "next build",
"start": "next start",
"lint": "eslint",
"type": "tsc --noEmit",
"validate": "./scripts/validate.sh",
"test": "vitest",
"test:coverage": "vitest run --coverage",
"test:e2e": "playwright test -c e2e",
"test:e2e:ui": "playwright test -c e2e --ui",
"lab": "tsx lab/src/cli.ts",
"lab:status": "tsx lab/src/cli.ts status",
"lab:up": "tsx lab/src/cli.ts up",
"lab:down": "tsx lab/src/cli.ts down",
"lab:seed": "tsx lab/src/cli.ts seed",
"lab:check": "tsx lab/src/cli.ts check",
"lab:reset": "tsx lab/src/cli.ts reset",
"lab:clean": "tsx lab/src/cli.ts clean",
"lab:provision": "tsx lab/src/cli.ts provision",
"lab:init": "tsx lab/src/cli.ts init",
"toolbox": "node scripts/toolbox/index.mjs",
"version:bump": "node scripts/toolbox/index.mjs version:bump",
"release:tag": "node scripts/toolbox/index.mjs release:tag",
"release:untag": "node scripts/toolbox/index.mjs release:untag",
"version:sync": "node scripts/toolbox/index.mjs version:sync",
"changelog:check": "node scripts/toolbox/index.mjs changelog:check",
"changelog:preview": "node scripts/toolbox/index.mjs changelog:preview",
"changelog:amend": "node scripts/toolbox/index.mjs changelog:amend",
"codeql:check": "node scripts/toolbox/index.mjs codeql:check",
"audit:check": "node scripts/toolbox/index.mjs audit:check",
"update:check": "node scripts/toolbox/index.mjs update:check",
"database:deploy": "prisma migrate deploy && prisma generate",
"database:reset": "prisma migrate reset",
"docs:install": "cd docs && pnpm install",
"docs:dev": "cd docs && pnpm dev",
"docs:build": "cd docs && pnpm build",
"docs:preview": "cd docs && pnpm preview",
"website:install": "cd website && pnpm install",
"website:dev": "cd website && pnpm dev",
"website:build": "cd website && pnpm build",
"website:preview": "cd website && pnpm preview",
"setup:worktree": "bash scripts/setup-worktree.sh",
"email:icons": "npx tsx scripts/build-email-icons.ts"
},
"dependencies": {
"@aws-sdk/client-s3": "^3.1146.0",
"@aws-sdk/lib-storage": "^3.1146.0",
"@better-auth/passkey": "~1.6.33",
"@better-auth/sso": "~1.6.33",
"@better-auth/utils": "0.4.2",
"@hookform/resolvers": "^5.9.1",
"@iconify-icons/logos": "^1.2.36",
"@iconify-icons/mdi": "^1.2.48",
"@iconify-icons/simple-icons": "^1.2.74",
"@iconify/react": "^6.0.2",
"@microsoft/microsoft-graph-client": "^3.0.7",
"@prisma/client": "^6.19.3",
"@radix-ui/react-alert-dialog": "^1.1.23",
"@radix-ui/react-avatar": "^1.2.6",
"@radix-ui/react-checkbox": "^1.3.11",
"@radix-ui/react-context-menu": "^2.3.7",
"@radix-ui/react-dialog": "^1.1.23",
"@radix-ui/react-dropdown-menu": "^2.1.24",
"@radix-ui/react-label": "^2.1.15",
"@radix-ui/react-popover": "^1.1.23",
"@radix-ui/react-progress": "^1.1.16",
"@radix-ui/react-radio-group": "^1.4.7",
"@radix-ui/react-scroll-area": "^1.2.18",
"@radix-ui/react-select": "^2.3.7",
"@radix-ui/react-slot": "^1.3.3",
"@radix-ui/react-switch": "^1.3.7",
"@radix-ui/react-tabs": "^1.1.21",
"@radix-ui/react-tooltip": "^1.2.16",
"@scalar/api-reference-react": "^0.9.77",
"@tanstack/react-table": "^8.21.3",
"adm-zip": "^0.6.1",
"basic-ftp": "^6.2.2",
"better-auth": "~1.6.33",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"cmdk": "^1.1.1",
"croner": "^10.0.1",
"date-fns": "^4.4.0",
"date-fns-tz": "^3.2.0",
"dockerode": "5.0.1",
"dropbox": "^10.47.0",
"googleapis": "^173.0.0",
"lucide-react": "^1.52.0",
"minimatch": "^10.2.6",
"mongodb": "^7.7.0",
"mssql": "^12.7.2",
"next": "16.3.8",
"next-themes": "^0.4.6",
"node-cron": "^4.6.0",
"nodemailer": "^10.0.14",
"qrcode.react": "^4.2.0",
"radix-ui": "^1.6.7",
"rate-limiter-flexible": "^11.2.1",
"react": "19.3.0",
"react-colorful": "^5.8.1",
"react-day-picker": "^10.0.2",
"react-dom": "19.3.0",
"react-hook-form": "^7.89.0",
"recharts": "3.10.1",
"samba-client": "^7.2.0",
"sonner": "^2.0.8",
"ssh2": "^1.17.0",
"ssh2-sftp-client": "^12.1.1",
"tailwind-merge": "^3.7.0",
"tailwindcss-animate": "^1.0.7",
"tar-stream": "3.2.0",
"webdav": "~5.10.0",
"zod": "^4.6.5"
},
"devDependencies": {
"@eslint/compat": "^2.1.1",
"@playwright/test": "1.64.0",
"@tailwindcss/postcss": "^4.3.3",
"@testing-library/jest-dom": "^6.9.1",
"@testing-library/react": "^16.3.3",
"@testing-library/user-event": "^14.6.7",
"@types/adm-zip": "^0.5.8",
"@types/dockerode": "4.0.1",
"@types/mssql": "^12.3.0",
"@types/node": "^24.12.2",
"@types/node-cron": "^3.0.11",
"@types/react": "^19.3.0",
"@types/react-dom": "^19.3.0",
"@types/ssh2": "^1.15.6",
"@types/ssh2-sftp-client": "^9.0.6",
"@types/tar-stream": "^3.1.5",
"@vitejs/plugin-react": "^6.1.1",
"@vitest/coverage-v8": "^4.1.11",
"eslint": "^10.12.0",
"eslint-config-next": "16.3.8",
"jsdom": "^29.1.1",
"prisma": "^6.19.3",
"shadcn": "^4.21.1",
"tailwindcss": "^4.3.3",
"tsx": "4.20.6",
"typescript": "^5.9.3",
"vite": "^8.3.2",
"vitest": "^4.1.11",
"vitest-mock-extended": "^5.1.1"
},
"pnpm": {
"overrides": {
"dompurify": ">=3.4.11",
"postcss": ">=8.5.23",
"fast-xml-builder": "^1.2.0",
"brace-expansion@1": "^1.1.21",
"brace-expansion@2": "^2.1.7",
"brace-expansion@5": "^5.0.12",
"sharp": "^0.35.4",
"qs": "^6.16.0",
"uuid": "^11.1.1",
"kysely": "0.28.17",
"shell-quote": ">=1.8.4",
"form-data": ">=4.0.6",
"undici": "^7.29.1",
"js-yaml": ">=5.2.2",
"esbuild": ">=0.28.1",
"@babel/core": ">=7.29.6",
"nanoid@3": "^3.3.18",
"nanoid@5": "^5.1.16",
"browserslist": "^4.28.7",
"@xmldom/xmldom": "^0.8.15",
"@grpc/grpc-js": "^1.14.5",
"@humanfs/node": "^0.16.8",
"baseline-browser-mapping": "^2.11.0",
"@ai-sdk/provider-utils": "^4.0.33"
},
"onlyBuiltDependencies": [
"@prisma/client",
"@prisma/engines",
"better-sqlite3",
"esbuild",
"prisma",
"sharp",
"unrs-resolver"
]
}
}