{ "name": "um-react", "private": true, "version": "0.4.7", "type": "module", "scripts": { "start": "vite", "build": "tsc -p tsconfig.prod.json && vite build && pnpm build:finalize", "build:finalize": "node scripts/write-version.mjs && node scripts/minify-mjs.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": { "@chakra-ui/anatomy": "^2.3.4", "@chakra-ui/icons": "^2.2.4", "@chakra-ui/react": "^2.10.7", "@emotion/react": "^11.14.0", "@emotion/styled": "^11.14.0", "@reduxjs/toolkit": "^2.6.1", "@unlock-music/crypto": "0.1.9", "framer-motion": "^12.6.2", "nanoid": "^5.1.5", "next-themes": "^0.4.6", "radash": "^12.1.0", "react": "^19.1.0", "react-dom": "^19.1.0", "react-dropzone": "^14.3.8", "react-icons": "^5.5.0", "react-promise-suspense": "^0.3.4", "react-redux": "^9.2.0", "react-syntax-highlighter": "^15.6.1", "sass": "^1.86.0", "sql.js": "^1.13.0", "workbox-build": "^7.3.0" }, "devDependencies": { "@eslint/js": "^9.23.0", "@rollup/plugin-replace": "^6.0.2", "@testing-library/jest-dom": "^6.6.3", "@testing-library/react": "^16.2.0", "@testing-library/user-event": "^14.6.1", "@types/node": "^22.13.14", "@types/react": "^19.0.12", "@types/react-dom": "^19.0.4", "@types/react-syntax-highlighter": "^15.5.13", "@types/sql.js": "^1.4.9", "@typescript-eslint/eslint-plugin": "^8.28.0", "@typescript-eslint/parser": "^8.28.0", "@vitejs/plugin-react": "^4.3.4", "@vitest/coverage-v8": "^3.0.9", "@vitest/ui": "^3.0.9", "eslint": "^9.23.0", "eslint-config-prettier": "^10.1.1", "eslint-plugin-react-hooks": "^5.2.0", "eslint-plugin-react-refresh": "^0.4.19", "globals": "^16.0.0", "husky": "^9.1.7", "jsdom": "^26.0.0", "lint-staged": "^15.5.0", "prettier": "^3.5.3", "rollup": "^4.38.0", "simple-git-hooks": "^2.12.1", "terser": "^5.39.0", "typescript": "^5.8.2", "typescript-eslint": "^8.28.0", "vite": "^6.2.3", "vite-plugin-pwa": "^1.0.0", "vite-plugin-top-level-await": "^1.5.0", "vite-plugin-wasm": "^3.4.1", "vitest": "^3.0.9", "workbox-window": "^7.3.0" }, "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": { "@rollup/plugin-terser": "patches/@rollup__plugin-terser.patch", "sql.js": "patches/sql.js.patch" }, "overrides": { "rollup-plugin-terser": "npm:@rollup/plugin-terser@0.4.3", "sourcemap-codec": "npm:@jridgewell/sourcemap-codec@1.4.15" } }, "packageManager": "pnpm@9.12.1+sha512.e5a7e52a4183a02d5931057f7a0dbff9d5e9ce3161e33fa68ae392125b79282a8a8a470a51dfc8a0ed86221442eb2fb57019b0990ed24fab519bf0e1bc5ccfc4" }