{ "name": "appflowy_tauri", "private": true, "version": "0.0.0", "type": "module", "scripts": { "dev": "vite", "build": "tsc && vite build", "preview": "vite preview", "format": "prettier --write .", "test:code": "eslint --max-warnings=0 --ext .js,.ts,.tsx .", "test:errors": "tsc --noEmit", "test:prettier": "yarn prettier --list-different src", "tauri:clean": "cargo make --cwd .. tauri_clean", "tauri:dev": "tauri dev" }, "dependencies": { "@emotion/react": "^11.10.6", "@emotion/styled": "^11.10.6", "@mui/icons-material": "^5.11.11", "@mui/material": "^5.11.12", "@reduxjs/toolkit": "^1.9.2", "@slate-yjs/core": "^0.3.1", "@tanstack/react-virtual": "3.0.0-beta.54", "@tauri-apps/api": "^1.2.0", "dayjs": "^1.11.7", "events": "^3.3.0", "google-protobuf": "^3.21.2", "i18next": "^22.4.10", "i18next-browser-languagedetector": "^7.0.1", "is-hotkey": "^0.2.0", "jest": "^29.5.0", "nanoid": "^4.0.0", "protoc-gen-ts": "^0.8.5", "react": "^18.2.0", "react-beautiful-dnd": "^13.1.1", "react-calendar": "^4.1.0", "react-dom": "^18.2.0", "react-error-boundary": "^3.1.4", "react-i18next": "^12.2.0", "react-redux": "^8.0.5", "react-router-dom": "^6.8.0", "react18-input-otp": "^1.1.2", "redux": "^4.2.1", "rxjs": "^7.8.0", "slate": "^0.91.4", "slate-react": "^0.91.9", "ts-results": "^3.3.0", "utf8": "^3.0.0", "y-indexeddb": "^9.0.9", "yjs": "^13.5.51" }, "devDependencies": { "@tauri-apps/cli": "^1.2.2", "@types/google-protobuf": "^3.15.6", "@types/is-hotkey": "^0.1.7", "@types/node": "^18.7.10", "@types/react": "^18.0.15", "@types/react-beautiful-dnd": "^13.1.3", "@types/react-dom": "^18.0.6", "@types/utf8": "^3.0.1", "@types/uuid": "^9.0.1", "@typescript-eslint/eslint-plugin": "^5.51.0", "@typescript-eslint/parser": "^5.51.0", "@vitejs/plugin-react": "^3.0.0", "autoprefixer": "^10.4.13", "eslint": "^8.34.0", "eslint-plugin-react": "^7.32.2", "postcss": "^8.4.21", "prettier": "2.8.4", "prettier-plugin-tailwindcss": "^0.2.2", "tailwindcss": "^3.2.7", "typescript": "^4.6.4", "uuid": "^9.0.0", "vite": "^4.0.0" } }