{ "name": "twenty", "version": "0.1.5", "private": true, "dependencies": { "@air/react-drag-to-select": "^5.0.8", "@apollo/client": "3.7.17", "@blocknote/core": "^0.8.2", "@blocknote/react": "^0.8.2", "@chakra-ui/accordion": "^2.3.0", "@chakra-ui/system": "^2.6.0", "@emotion/react": "^11.10.6", "@emotion/styled": "^11.10.5", "@floating-ui/react": "^0.24.3", "@hello-pangea/dnd": "^16.2.0", "@hookform/resolvers": "^3.1.1", "@sniptt/guards": "^0.2.0", "@tabler/icons-react": "^2.30.0", "@tanstack/react-virtual": "^3.0.0-alpha.0", "@types/node": "^16.18.4", "@types/react": "^18.0.25", "@types/react-dom": "^18.0.9", "@types/react-helmet-async": "^1.0.3", "afterframe": "^1.0.2", "apollo-upload-client": "^17.0.0", "cmdk": "^0.2.0", "date-fns": "^2.30.0", "deep-equal": "^2.2.2", "framer-motion": "^10.12.17", "graphql": "^16.6.0", "hex-rgb": "^5.0.0", "immer": "^10.0.2", "js-cookie": "^3.0.5", "js-levenshtein": "^1.1.6", "libphonenumber-js": "^1.10.26", "lodash.camelcase": "^4.3.0", "lodash.debounce": "^4.0.8", "lodash.kebabcase": "^4.1.1", "luxon": "^3.3.0", "react": "^18.2.0", "react-data-grid": "7.0.0-beta.13", "react-datepicker": "^4.11.0", "react-dom": "^18.2.0", "react-dropzone": "^14.2.3", "react-helmet-async": "^1.3.0", "react-hook-form": "^7.45.1", "react-hotkeys-hook": "^4.4.0", "react-intersection-observer": "^9.5.2", "react-loading-skeleton": "^3.3.1", "react-phone-number-input": "^3.3.4", "react-responsive": "^9.0.2", "react-router-dom": "^6.4.4", "react-textarea-autosize": "^8.4.1", "react-tooltip": "^5.13.1", "recoil": "^0.7.7", "scroll-into-view": "^1.16.2", "ts-key-enum": "^2.0.12", "type-fest": "^4.1.0", "uuid": "^9.0.0", "xlsx-ugnis": "^0.19.3", "zod": "^3.22.2" }, "scripts": { "start": "PORT=3001 craco start --max-warnings=0", "build:inject-runtime-env": "./scripts/inject-runtime-env.sh", "build": "craco build && yarn build:inject-runtime-env", "test": "craco test", "coverage": "craco test --coverage .", "lint": "eslint src --max-warnings=0", "eslint-plugin:setup": "cd ../packages/eslint-plugin-twenty/ && yarn && yarn build && cd ../../front/ && yarn upgrade eslint-plugin-twenty", "storybook:dev": "storybook dev -p 6006 -s ../public", "storybook:test": "test-storybook", "storybook:test-slow": "test-storybook --maxWorkers=3", "storybook:build": "storybook build -s public", "storybook:coverage": "test-storybook --coverage --maxWorkers=3 && npx nyc report --reporter=lcov -t coverage/storybook --report-dir coverage/storybook --check-coverage", "storybook:modules:dev": "STORYBOOK_SCOPE=modules yarn storybook:dev", "storybook:pages:dev": "STORYBOOK_SCOPE=pages yarn storybook:dev", "storybook:docs:dev": "STORYBOOK_SCOPE=ui-docs yarn storybook:dev", "storybook:modules:build": "STORYBOOK_SCOPE=modules yarn storybook:build", "storybook:pages:build": "STORYBOOK_SCOPE=pages yarn storybook:build", "storybook:docs:build": "STORYBOOK_SCOPE=ui-docs yarn storybook:build", "storybook:modules:coverage": "STORYBOOK_SCOPE=modules yarn storybook:coverage", "storybook:pages:coverage": "STORYBOOK_SCOPE=pages yarn storybook:coverage", "graphql:data:generate": "dotenv cross-var graphql-codegen -- --config codegen.js", "graphql:metadata:generate": "dotenv cross-var graphql-codegen -- --config codegen-metadata.js", "chromatic": "dotenv cross-var npx chromatic --project-token=$CHROMATIC_PROJECT_TOKEN", "install": "yarn eslint-plugin:setup" }, "overrides": { "react-refresh": "0.14.0" }, "jest": { "testMatch": [ "/**/*.test.ts", "/**/*.test.tsx" ] }, "browserslist": { "production": [ ">0.2%", "not dead", "not op_mini all" ], "development": [ "last 1 chrome version", "last 1 firefox version", "last 1 safari version" ] }, "devDependencies": { "@babel/plugin-proposal-private-property-in-object": "^7.21.11", "@craco/craco": "^7.1.0", "@graphql-codegen/cli": "^3.3.1", "@graphql-codegen/client-preset": "^4.1.0", "@graphql-codegen/typescript": "^3.0.4", "@graphql-codegen/typescript-operations": "^3.0.4", "@graphql-codegen/typescript-react-apollo": "^3.3.7", "@storybook/addon-actions": "^7.0.22", "@storybook/addon-coverage": "^0.0.8", "@storybook/addon-essentials": "^7.0.22", "@storybook/addon-interactions": "^7.0.22", "@storybook/addon-links": "^7.0.22", "@storybook/addon-styling": "^1.3.0", "@storybook/jest": "^0.1.0", "@storybook/node-logger": "^7.0.22", "@storybook/react": "^7.0.22", "@storybook/react-webpack5": "^7.0.22", "@storybook/test-runner": "^0.10.0", "@storybook/testing-library": "^0.1.0", "@svgr/plugin-jsx": "^8.1.0", "@svgr/webpack": "^8.0.1", "@testing-library/jest-dom": "^5.16.5", "@testing-library/react": "^13.4.0", "@testing-library/user-event": "^13.5.0", "@types/apollo-upload-client": "^17.0.2", "@types/deep-equal": "^1.0.1", "@types/intl-tel-input": "^18.1.1", "@types/jest": "^27.5.2", "@types/js-cookie": "^3.0.3", "@types/lodash.camelcase": "^4.3.7", "@types/lodash.debounce": "^4.0.7", "@types/lodash.kebabcase": "^4.1.7", "@types/luxon": "^3.3.0", "@types/react-datepicker": "^4.11.2", "@types/scroll-into-view": "^1.16.0", "@types/uuid": "^9.0.1", "@typescript-eslint/eslint-plugin": "^6.7.5", "@typescript-eslint/parser": "^6.7.5", "@typescript-eslint/utils": "^6.7.0", "babel-plugin-named-exports-order": "^0.0.2", "chromatic": "^6.18.0", "concurrently": "^8.0.1", "cross-var": "^1.1.0", "dotenv-cli": "^7.2.1", "esbuild-plugin-svgr": "^2.1.0", "eslint": "^8.28.0", "eslint-config-prettier": "^8.5.0", "eslint-config-standard-with-typescript": "^23.0.0", "eslint-plugin-prefer-arrow": "^1.2.3", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-react": "^7.31.11", "eslint-plugin-simple-import-sort": "^10.0.0", "eslint-plugin-storybook": "^0.6.12", "eslint-plugin-twenty": "file:../packages/eslint-plugin-twenty", "eslint-plugin-unused-imports": "^3.0.0", "http-server": "^14.1.1", "msw": "1.2.1", "msw-storybook-addon": "^1.8.0", "prettier": "^2.8.0", "react-scripts": "5.0.1", "storybook": "^7.0.22", "storybook-addon-cookie": "^3.0.1", "storybook-addon-pseudo-states": "^2.1.0", "ts-jest": "^29.1.0", "tsup": "^7.2.0", "typescript": "^5.2.2", "webpack": "^5.75.0" }, "msw": { "workerDirectory": "public" } }