{ "name": "um-react", "private": true, "version": "0.6.0", "type": "module", "scripts": { "start": "vite", "build": "tsc -p tsconfig.prod.json && vite build && pnpm build:finalize", "build:finalize": "node scripts/write-version.mjs", "lint": "eslint src --ext ts,tsx --report-unused-disable-directives --max-warnings 0", "format": "prettier -w .", "test": "vitest run", "test:ui": "vitest --ui", "test:coverage": "vitest run --coverage", "preview": "vite preview", "preview:coverage": "vite preview --outDir coverage --port 5175", "prepare": "simple-git-hooks" }, "dependencies": { "@reduxjs/toolkit": "^2.13.0", "@unlock-music/crypto": "^0.1.12", "classnames": "^2.5.1", "fflate": "^0.8.3", "idb-keyval": "^6.3.0", "nanoid": "^5.1.16", "radash": "^12.1.1", "react": "^19.3.1", "react-dom": "^19.3.1", "react-dropzone": "^14.4.1", "react-icons": "^5.7.0", "react-redux": "^9.3.0", "react-router": "^7.18.4", "react-syntax-highlighter": "^15.6.6", "react-toastify": "^11.1.0", "sql.js": "^1.15.1" }, "devDependencies": { "@eslint/js": "^9.39.5", "@rollup/plugin-replace": "^6.0.3", "@tailwindcss/vite": "^4.3.3", "@testing-library/jest-dom": "^6.9.1", "@testing-library/react": "^16.3.3", "@testing-library/user-event": "^14.6.8", "@types/node": "^24.19.2", "@types/react": "^19.3.0", "@types/react-dom": "^19.3.0", "@types/react-syntax-highlighter": "^15.5.13", "@types/sql.js": "^1.4.11", "@types/tar-stream": "^3.1.5", "@types/wicg-file-system-access": "^2023.10.7", "@typescript-eslint/eslint-plugin": "^8.72.0", "@typescript-eslint/parser": "^8.72.0", "@vitejs/plugin-react": "^5.2.0", "@vitest/coverage-v8": "^3.2.7", "@vitest/ui": "^3.2.7", "daisyui": "^5.7.50", "eslint": "^9.39.5", "eslint-config-prettier": "^10.1.8", "eslint-plugin-react-hooks": "^7.1.1", "eslint-plugin-react-refresh": "^0.4.26", "globals": "^16.5.0", "husky": "^9.1.7", "jsdom": "^27.4.0", "lint-staged": "^16.4.0", "prettier": "^3.9.10", "rollup": "^4.64.12", "sass": "^1.105.2", "simple-git-hooks": "^2.14.0", "tailwindcss": "^4.3.3", "tar-stream": "^3.2.2", "terser": "^5.51.2", "typescript": "^5.9.3", "typescript-eslint": "^8.72.0", "vite": "^7.3.7", "vite-plugin-pwa": "^1.3.0", "vite-plugin-top-level-await": "^1.6.0", "vite-plugin-wasm": "^3.6.0", "vitest": "^3.2.7", "workbox-build": "^7.4.1", "workbox-window": "^7.4.1" }, "lint-staged": { "*": "prettier --write --ignore-unknown", "*.{js,jsx,ts,tsx}": "eslint --fix --report-unused-disable-directives --max-warnings 0" }, "simple-git-hooks": { "pre-commit": "pnpm exec lint-staged", "pre-push": "pnpm test" }, "prettier": { "singleQuote": true, "printWidth": 120, "tabWidth": 2 }, "pnpm": { "patchedDependencies": { "sql.js": "patches/sql.js.patch" }, "overrides": { "sourcemap-codec": "npm:@jridgewell/sourcemap-codec@1.4.15" }, "onlyBuiltDependencies": [ "@swc/core", "@tailwindcss/oxide", "esbuild", "simple-git-hooks" ] }, "packageManager": "pnpm@10.15.1" }