{ "name": "chrome-wakatime", "private": true, "scripts": { "dev": "clap dev", "postinstall": "clap postinstall", "lint": "clap lint", "start": "clap build", "test": "clap test", "validate": "npm ls", "watch": "clap watch" }, "husky": { "hooks": { "pre-commit": "lint-staged", "pre-push": "npm test" } }, "lint-staged": { "*.json": [ "prettier --write" ], "*.{js|jsx|ts|tsx}": [ "eslint", "prettier --write", "git add" ] }, "dependencies": { "@manaflair/redux-batch": "^1.0.0", "@reduxjs/toolkit": "^1.9.0", "bootstrap": "3.4.1", "classnames": "^2.3.2", "create-react-class": "^15.7.0", "font-awesome": "4.7.0", "idb": "^7.1.1", "jquery": "^3.6.3", "moment": "^2.29.4", "react": "^18.2.0", "react-dom": "^18.2.0", "react-redux": "^8.0.5", "react-transition-group": "^4.4.5", "redux-logger": "^4.0.0", "webextension-polyfill": "^0.10.0" }, "devDependencies": { "@babel/core": "^7.8.7", "@babel/preset-env": "^7.8.7", "@babel/preset-react": "^7.18.6", "@babel/preset-typescript": "^7.8.3", "@testing-library/dom": "^7.29.4", "@testing-library/jest-dom": "^5.16.5", "@testing-library/react": "^13.4.0", "@testing-library/user-event": "^12.6.0", "@types/chrome": "0.0.128", "@types/classnames": "^2.2.11", "@types/copy-webpack-plugin": "^10.1.0", "@types/firefox-webext-browser": "^82.0.0", "@types/jest": "^29.2.5", "@types/jquery": "^3.5.5", "@types/node": "^18.11.18", "@types/react": "^18.0.26", "@types/react-dom": "^18.0.10", "@types/react-redux": "^7.1.25", "@types/redux-logger": "^3.0.9", "@types/remote-redux-devtools": "^0.5.4", "@types/shelljs": "^0.8.8", "@types/sinon-chrome": "^2.2.11", "@types/wait-on": "^5.2.0", "@types/webextension-polyfill": "^0.10.0", "@typescript-eslint/eslint-plugin": "^4.33.0", "@typescript-eslint/parser": "^4.33.0", "@xarc/run": "^1.0.4", "axios": "^1.2.2", "babel-jest": "^29.3.1", "babel-loader": "^9.1.2", "browserify": "^17.0.0", "chai": "^4.3.7", "clean-webpack-plugin": "^4.0.0", "copy-webpack-plugin": "^11.0.0", "del": "^7.0.0", "eslint": "^7.32.0", "eslint-config-kentcdodds": "^19.2.0", "eslint-config-prettier": "^8.6.0", "eslint-plugin-import": "^2.26.0", "eslint-plugin-jest-dom": "^4.0.3", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-react": "^7.32.0", "eslint-plugin-sort-keys-fix": "^1.1.2", "eslint-plugin-testing-library": "^5.9.1", "eslint-plugin-typescript-sort-keys": "^2.1.0", "husky": "^4.3.7", "jest": "^29.3.1", "jest-cli": "^29.3.1", "jest-environment-jsdom": "^29.3.1", "jsdom": "^21.0.0", "jshint": "^2.13.6", "jsxhint": "^0.15.1", "less": "^4.1.3", "lint-staged": "^13.1.0", "mocha": "^10.2.0", "mocha-sinon": "^2.1.2", "node-gyp": "^8.3.0", "prettier": "^2.8.2", "prettier-plugin-packagejson": "^2.3.0", "prettier-plugin-sort-json": "1.0.0", "remote-redux-devtools": "^0.5.16", "rimraf": "^3.0.2", "shelljs": "^0.8.5", "sinon": "^15.0.1", "sinon-chai": "^3.7.0", "sinon-chrome": "^3.0.1", "ts-jest": "^29.0.3", "ts-loader": "^9.4.2", "ts-node": "^10.9.1", "typescript": "^4.9.4", "wait-on": "^7.0.1", "web-ext": "^7.4.0", "webpack": "^5.75.0", "webpack-cli": "^5.0.1" } }