{
  "name": "rowy",
  "version": "3.0.0",
  "homepage": "https://rowy.io",
  "repository": {
    "type": "git",
    "url": "https://github.com/rowyio/rowy.git"
  },
  "private": true,
  "dependencies": {
    "@emotion/react": "^11.10.5",
    "@emotion/styled": "^11.10.5",
    "@mdi/js": "^6.6.96",
    "@monaco-editor/react": "^4.4.4",
    "@mui/icons-material": "^5.10.16",
    "@mui/lab": "^5.0.0-alpha.76",
    "@mui/material": "^5.10.16",
    "@mui/x-date-pickers": "^5.0.0-alpha.4",
    "@rowy/form-builder": "^0.8.0",
    "@rowy/multiselect": "^0.4.1",
    "@tanstack/react-table": "^8.5.15",
    "@tinymce/tinymce-react": "^3",
    "@uiw/react-md-editor": "^3.14.1",
    "algoliasearch": "^4.13.1",
    "ansi-to-react": "^6.1.6",
    "buffer": "^6.0.3",
    "compare-versions": "^4.1.3",
    "csv-parse": "^5.1.0",
    "date-fns": "^2.28.0",
    "dompurify": "^2.3.6",
    "file-saver": "^2.0.5",
    "firebase": "^9.12.1",
    "firebaseui": "^6.0.1",
    "jotai": "^1.8.4",
    "json-stable-stringify-without-jsonify": "^1.0.1",
    "json2csv": "^5.0.7",
    "jszip": "^3.10.0",
    "lodash-es": "^4.17.21",
    "match-sorter": "^6.3.1",
    "material-ui-popup-state": "^4.0.1",
    "mdi-material-ui": "^7.3.0",
    "monaco-editor-auto-typings": "^0.4.0",
    "notistack": "^2.0.4",
    "path-browserify": "^1.0.1",
    "pb-util": "^1.0.3",
    "quicktype-core": "^6.0.71",
    "react": "^18.2.0",
    "react-beautiful-dnd": "^13.1.0",
    "react-color-palette": "^6.2.0",
    "react-detect-offline": "^2.4.5",
    "react-div-100vh": "^0.7.0",
    "react-dnd": "^16.0.1",
    "react-dnd-html5-backend": "^16.0.1",
    "react-dom": "^18.2.0",
    "react-dropzone": "^10",
    "react-element-scroll-hook": "^1.1.0",
    "react-error-boundary": "^3.1.4",
    "react-helmet-async": "^1.3.0",
    "react-hook-form": "^7.30.0",
    "react-image": "^4",
    "react-json-view": "^1.21.3",
    "react-markdown": "^8.0.3",
    "react-router-dom": "6.3.0",
    "react-router-hash-link": "^2.4.3",
    "react-scripts": "^5.0.1",
    "react-usestateref": "^1.0.8",
    "react-virtual": "^2.10.4",
    "remark-gfm": "^3.0.1",
    "seedrandom": "^3.0.5",
    "stream-browserify": "^3.0.0",
    "swr": "^1.3.0",
    "tinymce": "^5",
    "tss-react": "^4.4.4",
    "typescript": "^4.9.3",
    "use-algolia": "^1.5.3",
    "use-async-memo": "^1.2.4",
    "use-debounce": "^8.0.0",
    "use-memo-value": "^1.0.1",
    "web-vitals": "^2.1.4",
    "workbox-webpack-plugin": "^6.5.4"
  },
  "scripts": {
    "start": "cross-env PORT=7699 craco start",
    "startWithEmulators": "cross-env PORT=7699 REACT_APP_FIREBASE_EMULATORS=true craco start",
    "emulators": "firebase emulators:start --only firestore,auth --import ./emulators/ --export-on-exit",
    "test": "craco test --env ./src/test/custom-jest-env.js --verbose --detectOpenHandles",
    "build": "craco build",
    "analyze": "source-map-explorer ./build/static/js/*.js",
    "prepare": "husky install",
    "env": "node createDotEnv",
    "target": "firebase target:apply hosting rowy",
    "deploy": "firebase deploy --only hosting",
    "typedoc": "typedoc --options typedoc.json"
  },
  "engines": {
    "node": ">=16"
  },
  "eslintConfig": {
    "plugins": [
      "eslint-plugin-no-relative-import-paths",
      "eslint-plugin-tsdoc",
      "eslint-plugin-local-rules"
    ],
    "extends": [
      "react-app",
      "react-app/jest",
      "prettier"
    ],
    "rules": {
      "no-relative-import-paths/no-relative-import-paths": [
        "error",
        {
          "allowSameFolder": true
        }
      ],
      "no-restricted-imports": [
        "error",
        {
          "patterns": [
            {
              "group": [
                "lodash",
                "lodash/*"
              ],
              "message": "Use lodash-es instead"
            }
          ]
        }
      ],
      "tsdoc/syntax": "warn",
      "local-rules/no-jotai-use-atom-without-scope": "error"
    }
  },
  "browserslist": {
    "production": [
      "> 0.5%",
      "not dead",
      "not op_mini all",
      "not ie > 0",
      "not and_uc > 0",
      "not ios_saf < 14"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  },
  "devDependencies": {
    "@craco/craco": "^6.4.3",
    "@testing-library/jest-dom": "^5.16.4",
    "@testing-library/react": "^13.0.0",
    "@testing-library/user-event": "^14.0.4",
    "@types/dompurify": "^2.3.3",
    "@types/file-saver": "^2.0.5",
    "@types/jest": "^27.4.1",
    "@types/json2csv": "^5.0.3",
    "@types/lodash-es": "^4.17.6",
    "@types/node": "^17.0.23",
    "@types/react": "^18.0.25",
    "@types/react-beautiful-dnd": "^13.1.2",
    "@types/react-detect-offline": "^2.4.1",
    "@types/react-div-100vh": "^0.4.0",
    "@types/react-dom": "^18.0.9",
    "@types/react-router-dom": "^5.3.3",
    "@types/react-router-hash-link": "^2.4.5",
    "@types/seedrandom": "^3.0.2",
    "@typescript-eslint/eslint-plugin": "^5.45.0",
    "@typescript-eslint/parser": "^5.45.0",
    "craco-alias": "^3.0.1",
    "craco-swc": "^0.5.1",
    "cross-env": "^7.0.3",
    "eslint": "^8.28.0",
    "eslint-config-prettier": "^8.5.0",
    "eslint-config-react-app": "^7.0.1",
    "eslint-plugin-local-rules": "^1.1.0",
    "eslint-plugin-no-relative-import-paths": "^1.2.0",
    "eslint-plugin-tsdoc": "^0.2.16",
    "husky": ">=7.0.4",
    "lint-staged": ">=12.3.7",
    "monaco-editor": "^0.33.0",
    "prettier": "^2.6.2",
    "raw-loader": "^4.0.2",
    "source-map-explorer": "^2.5.2",
    "ts-jest": "^28.0.2",
    "typedoc": "^0.23.21"
  },
  "resolutions": {
    "@types/react": "^18"
  },
  "lint-staged": {
    "*.{js,ts,tsx}": "eslint --cache --fix",
    "**/*": "prettier --write --ignore-unknown"
  },
  "packageManager": "yarn@1.22.19"
}
