{ "name": "focalboard", "version": "7.4.0", "private": true, "description": "", "scripts": { "pack": "cross-env NODE_ENV=production webpack --config webpack.prod.js", "packdev": "cross-env NODE_ENV=dev webpack --config webpack.dev.js", "watchdev": "cross-env NODE_ENV=dev webpack --watch --progress --config webpack.dev.js", "test": "jest", "updatesnapshot": "jest --updateSnapshot", "check": "eslint --ext .tsx,.ts . --quiet --cache && stylelint **/*.scss", "fix": "eslint --ext .tsx,.ts . --quiet --fix --cache && stylelint --fix **/*.scss", "fix:scss": "prettier --write './src/**/*.scss'", "i18n-extract": "formatjs extract '../mattermost-plugin/webapp/src/**/*.{ts,tsx}' 'src/**/*.{ts,tsx}' --ignore '**/*.d.ts' '../**/*.d.ts' --out-file i18n/tmp.json && formatjs compile i18n/tmp.json --out-file i18n/en.json && rm i18n/tmp.json", "runserver-test": "cd cypress && \"../../bin/focalboard-server\"", "cypress:ci": "start-server-and-test runserver-test http://localhost:8088 cypress:run", "cypress:debug": "start-server-and-test runserver-test http://localhost:8088 cypress:open", "cypress:run": "cypress run", "cypress:run:chrome": "cypress run --browser chrome", "cypress:run:firefox": "cypress run --browser firefox", "cypress:run:edge": "cypress run --browser edge", "cypress:run:electron": "cypress run --browser electron", "cypress:open": "cypress open" }, "dependencies": { "@draft-js-plugins/editor": "^4.1.2", "@draft-js-plugins/emoji": "^4.6.0", "@draft-js-plugins/mention": "^5.1.2", "@fullcalendar/core": "^5.10.1", "@fullcalendar/daygrid": "^5.10.1", "@fullcalendar/interaction": "^5.10.1", "@fullcalendar/react": "^5.10.1", "@mattermost/compass-icons": "^0.1.22", "@reduxjs/toolkit": "^1.8.0", "@tippyjs/react": "4.2.6", "color": "^4.2.1", "draft-js": "^0.11.7", "emoji-mart": "^3.0.1", "fstream": "^1.0.12", "fullcalendar": "^5.10.2", "imagemin-gifsicle": "^7.0.0", "imagemin-mozjpeg": "^10.0.0", "imagemin-optipng": "^8.0.0", "imagemin-pngquant": "^9.0.2", "imagemin-svgo": "^10.0.1", "imagemin-webp": "^7.0.0", "lodash": "^4.17.21", "marked": "^4.0.12", "mini-create-react-context": "^0.4.1", "moment": "^2.29.1", "nanoevents": "^5.1.13", "react": "^17.0.2", "react-day-picker": "^7.4.10", "react-dnd": "^14.0.2", "react-dnd-html5-backend": "^14.0.0", "react-dnd-scrolling": "^1.2.1", "react-dnd-touch-backend": "^14.0.0", "react-dom": "^17.0.2", "react-hot-keys": "^2.7.1", "react-hotkeys-hook": "^3.4.4", "react-intl": "^5.24.7", "react-redux": "^7.2.6", "react-router-dom": "^5.2.1", "react-select": "^5.2.2", "trim-newlines": "^4.0.2" }, "jest": { "moduleNameMapper": { "\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$": "/__mocks__/fileMock.js", "\\.(scss|css)$": "/__mocks__/styleMock.js" }, "globals": { "ts-jest": { "tsconfig": "./src/tsconfig.json" } }, "transform": { "^.+\\.tsx?$": "@swc/jest" }, "transformIgnorePatterns": [ "/nanoevents/" ], "maxWorkers": "50%", "testEnvironment": "jsdom", "collectCoverage": true, "collectCoverageFrom": [ "src/**/*.{ts,tsx,js,jsx}", "!src/test/**" ] }, "devDependencies": { "@formatjs/cli": "^4.8.2", "@formatjs/ts-transformer": "^3.9.2", "@swc/jest": "^0.2.20", "@testing-library/cypress": "^8.0.2", "@testing-library/dom": "^8.11.4", "@testing-library/jest-dom": "^5.16.3", "@testing-library/react": "^11.2.5", "@testing-library/user-event": "^13.5.0", "@types/color": "^3.0.3", "@types/draft-js": "^0.11.9", "@types/emoji-mart": "^3.0.9", "@types/jest": "^27.4.1", "@types/marked": "^4.0.3", "@types/nanoevents": "^1.0.0", "@types/react": "^17.0.43", "@types/react-dom": "^17.0.14", "@types/react-intl": "^3.0.0", "@types/react-redux": "^7.1.23", "@types/react-router-dom": "^5.3.3", "@types/react-select": "^5.0.0", "@types/redux-mock-store": "^1.0.3", "@typescript-eslint/eslint-plugin": "^5.16.0", "@typescript-eslint/parser": "^5.16.0", "copy-webpack-plugin": "^10.2.4", "cross-env": "^7.0.3", "css-loader": "^6.7.1", "cypress": "^9.5.2", "cypress-failed-log": "^2.9.5", "cypress-real-events": "^1.7.0", "eslint": "^8.11.0", "eslint-import-resolver-webpack": "0.13.2", "eslint-plugin-babel": "^5.3.1", "eslint-plugin-cypress": "2.12.1", "eslint-plugin-header": "3.1.1", "eslint-plugin-import": "2.25.4", "eslint-plugin-jquery": "1.5.1", "eslint-plugin-mattermost": "github:mattermost/eslint-plugin-mattermost#46ad99355644a719bf32082f472048f526605181", "eslint-plugin-no-only-tests": "2.6.0", "eslint-plugin-react": "7.29.4", "fetch-mock-jest": "^1.5.1", "file-loader": "^6.2.0", "html-webpack-plugin": "^5.5.0", "image-webpack-loader": "^8.1.0", "isomorphic-fetch": "^3.0.0", "jest": "^27.5.1", "jest-mock": "^27.5.1", "prettier": "^2.6.1", "redux-mock-store": "^1.5.4", "sass": "^1.49.9", "sass-loader": "^12.6.0", "start-server-and-test": "^1.14.0", "style-loader": "^3.3.1", "stylelint": "^14.6.1", "stylelint-config-sass-guidelines": "^9.0.1", "terser-webpack-plugin": "^5.3.1", "ts-jest": "^27.1.4", "ts-loader": "^9.2.8", "typescript": "^4.6.3", "webpack": "^5.70.0", "webpack-cli": "^4.9.2", "webpack-merge": "^5.8.0" }, "optionalDependencies": { "cypress": "^9.5.2" } }