2018-10-01 06:08:12 +00:00
|
|
|
{
|
2018-10-28 08:13:08 +00:00
|
|
|
"private": true,
|
2018-10-01 06:08:12 +00:00
|
|
|
"description": "The Sourcegraph web app",
|
|
|
|
|
"license": "MIT",
|
|
|
|
|
"repository": {
|
|
|
|
|
"type": "git",
|
|
|
|
|
"url": "https://github.com/sourcegraph/sourcegraph"
|
|
|
|
|
},
|
|
|
|
|
"engines": {
|
2019-11-26 22:09:13 +00:00
|
|
|
"node": ">=8.0.0 <14.0.0",
|
2018-10-01 06:08:12 +00:00
|
|
|
"yarn": "^1.10.1"
|
|
|
|
|
},
|
|
|
|
|
"scripts": {
|
2018-11-12 09:05:35 +00:00
|
|
|
"prettier": "prettier '**/{*.{js?(on),ts?(x),graphql,md,scss},.*.js?(on)}' --write --list-different --config prettier.config.js",
|
2019-12-10 14:05:27 +00:00
|
|
|
"prettier-check": "yarn -s run prettier --write=false",
|
2020-02-07 11:14:07 +00:00
|
|
|
"all:eslint": "dev/foreach-ts-project.sh yarn -s run eslint --quiet",
|
2019-08-06 01:39:54 +00:00
|
|
|
"all:stylelint": "yarn --cwd web run stylelint && yarn --cwd shared run stylelint && yarn --cwd browser run stylelint",
|
2020-05-05 13:17:12 +00:00
|
|
|
"all:tsgql": "yarn --cwd web run tsgql validate -p . --exitOnWarn && yarn --cwd shared run tsgql validate -p . --exitOnWarn && yarn --cwd browser run tsgql validate -p . --exitOnWarn",
|
2019-11-12 11:26:21 +00:00
|
|
|
"build-ts": "tsc -b .",
|
2018-11-15 08:20:11 +00:00
|
|
|
"graphql": "gulp graphQLTypes",
|
2018-11-12 09:05:35 +00:00
|
|
|
"graphql-lint": "graphql-schema-linter --old-implements-syntax --comment-descriptions cmd/frontend/graphqlbackend/schema.graphql",
|
2019-06-21 14:18:28 +00:00
|
|
|
"prepublish": "gulp generate",
|
2019-11-08 22:15:16 +00:00
|
|
|
"test": "jest --testPathIgnorePatterns e2e regression integration",
|
2020-04-06 21:15:33 +00:00
|
|
|
"test-e2e": "TS_NODE_PROJECT=web/src/e2e/tsconfig.json mocha ./web/src/e2e/e2e.test.ts",
|
|
|
|
|
"cover-e2e": "nyc --hook-require=false yarn test-e2e",
|
2019-05-06 22:57:51 +00:00
|
|
|
"storybook": "start-storybook -p 9001 -c .storybook",
|
|
|
|
|
"storybook:build": "build-storybook -c .storybook",
|
|
|
|
|
"storybook:smoke-test": "yarn run storybook --smoke-test",
|
2019-12-17 04:30:51 +00:00
|
|
|
"deduplicate": "yarn-deduplicate -s fewer"
|
2018-10-01 06:08:12 +00:00
|
|
|
},
|
2018-11-12 09:05:35 +00:00
|
|
|
"browserslist": [
|
|
|
|
|
"last 1 version",
|
|
|
|
|
">1%",
|
|
|
|
|
"not dead",
|
|
|
|
|
"not <0.25%",
|
|
|
|
|
"last 1 Chrome versions",
|
|
|
|
|
"not IE > 0"
|
|
|
|
|
],
|
2020-04-06 21:15:33 +00:00
|
|
|
"nyc": {
|
|
|
|
|
"all": true,
|
|
|
|
|
"extension": [
|
|
|
|
|
".tsx",
|
|
|
|
|
".ts"
|
|
|
|
|
],
|
|
|
|
|
"include": [
|
|
|
|
|
"@(web|shared)/src/**/*.ts?(x)"
|
|
|
|
|
],
|
|
|
|
|
"exclude": [
|
|
|
|
|
"node_modules",
|
|
|
|
|
"**/*.d.ts",
|
|
|
|
|
"**/*.@(test|story).ts?(x)"
|
|
|
|
|
]
|
|
|
|
|
},
|
2019-05-03 21:20:47 +00:00
|
|
|
"jscpd": {
|
|
|
|
|
"gitignore": true,
|
|
|
|
|
"ignore": [
|
|
|
|
|
"**/__snapshots__",
|
|
|
|
|
"**/__fixtures__",
|
|
|
|
|
"**/*.svg",
|
|
|
|
|
"migrations",
|
2019-05-06 17:36:03 +00:00
|
|
|
"browser/build",
|
2019-05-03 21:20:47 +00:00
|
|
|
"ui",
|
|
|
|
|
"**/assets"
|
|
|
|
|
]
|
|
|
|
|
},
|
2018-10-01 06:08:12 +00:00
|
|
|
"devDependencies": {
|
2020-05-08 15:09:12 +00:00
|
|
|
"@babel/core": "^7.9.6",
|
2020-02-03 12:59:13 +00:00
|
|
|
"@babel/plugin-proposal-class-properties": "^7.8.3",
|
|
|
|
|
"@babel/plugin-proposal-decorators": "^7.8.3",
|
2020-05-08 15:09:12 +00:00
|
|
|
"@babel/preset-env": "^7.9.6",
|
2020-03-22 21:31:42 +00:00
|
|
|
"@babel/preset-typescript": "^7.9.0",
|
2020-05-08 15:09:12 +00:00
|
|
|
"@babel/runtime": "^7.9.6",
|
2018-10-17 19:35:10 +00:00
|
|
|
"@gql2ts/from-schema": "^1.10.1",
|
2018-11-01 07:25:26 +00:00
|
|
|
"@gql2ts/language-typescript": "^1.9.0",
|
2020-01-02 02:23:58 +00:00
|
|
|
"@octokit/rest": "^16.36.0",
|
2020-02-04 15:14:09 +00:00
|
|
|
"@percy/puppeteer": "^1.1.0",
|
2020-04-07 14:45:21 +00:00
|
|
|
"@slack/web-api": "^5.8.0",
|
2019-06-13 03:43:15 +00:00
|
|
|
"@sourcegraph/babel-plugin-transform-react-hot-loader-wrapper": "^1.0.0",
|
2020-05-12 09:02:34 +00:00
|
|
|
"@sourcegraph/eslint-config": "^0.17.2",
|
2020-03-22 14:10:21 +00:00
|
|
|
"@sourcegraph/prettierrc": "^3.0.3",
|
2020-03-03 09:49:51 +00:00
|
|
|
"@sourcegraph/stylelint-config": "^1.1.8",
|
2020-03-25 02:35:43 +00:00
|
|
|
"@sourcegraph/tsconfig": "^4.0.1",
|
2020-04-02 22:24:57 +00:00
|
|
|
"@storybook/addon-actions": "^5.3.18",
|
2019-09-21 11:06:46 +00:00
|
|
|
"@storybook/addon-console": "^1.2.1",
|
2020-04-02 22:24:57 +00:00
|
|
|
"@storybook/addon-info": "^5.3.18",
|
|
|
|
|
"@storybook/addon-knobs": "^5.3.18",
|
|
|
|
|
"@storybook/addon-links": "^5.3.18",
|
|
|
|
|
"@storybook/addon-options": "^5.3.18",
|
|
|
|
|
"@storybook/addon-storyshots": "^5.3.18",
|
|
|
|
|
"@storybook/addons": "^5.3.18",
|
|
|
|
|
"@storybook/components": "^5.3.18",
|
|
|
|
|
"@storybook/core": "^5.3.18",
|
|
|
|
|
"@storybook/react": "^5.3.18",
|
|
|
|
|
"@storybook/theming": "^5.3.18",
|
2020-05-08 15:25:37 +00:00
|
|
|
"@testing-library/react": "^10.0.4",
|
2019-11-05 12:15:31 +00:00
|
|
|
"@testing-library/react-hooks": "^3.2.1",
|
2020-04-01 07:11:55 +00:00
|
|
|
"@types/babel__core": "7.1.7",
|
2020-04-01 15:39:47 +00:00
|
|
|
"@types/chai": "4.2.11",
|
2019-09-01 11:10:57 +00:00
|
|
|
"@types/chai-as-promised": "7.1.2",
|
2020-05-01 08:06:31 +00:00
|
|
|
"@types/chrome": "0.0.106",
|
2020-03-06 21:16:19 +00:00
|
|
|
"@types/classnames": "2.2.10",
|
2019-12-01 15:11:06 +00:00
|
|
|
"@types/command-exists": "1.2.0",
|
2019-03-02 10:07:19 +00:00
|
|
|
"@types/d3-axis": "1.0.12",
|
2020-04-01 15:40:13 +00:00
|
|
|
"@types/d3-scale": "2.2.0",
|
2019-03-02 10:24:47 +00:00
|
|
|
"@types/d3-selection": "1.4.1",
|
2019-11-01 08:14:00 +00:00
|
|
|
"@types/d3-shape": "1.3.2",
|
2020-02-01 08:09:55 +00:00
|
|
|
"@types/expect": "24.3.0",
|
2019-03-02 10:41:51 +00:00
|
|
|
"@types/fancy-log": "1.3.1",
|
2020-05-08 19:07:50 +00:00
|
|
|
"@types/got": "9.6.10",
|
2019-04-02 00:45:13 +00:00
|
|
|
"@types/gulp": "4.0.6",
|
2020-04-01 15:40:54 +00:00
|
|
|
"@types/he": "1.1.1",
|
2018-11-12 09:29:11 +00:00
|
|
|
"@types/highlight.js": "9.12.3",
|
2019-09-01 07:16:18 +00:00
|
|
|
"@types/is-absolute-url": "3.0.0",
|
2020-04-03 22:00:28 +00:00
|
|
|
"@types/jest": "25.2.1",
|
2019-07-01 10:11:34 +00:00
|
|
|
"@types/jsdom": "12.2.4",
|
2020-05-08 19:08:27 +00:00
|
|
|
"@types/lodash": "4.14.150",
|
2020-05-08 15:00:38 +00:00
|
|
|
"@types/marked": "0.7.4",
|
2020-03-01 08:10:04 +00:00
|
|
|
"@types/mini-css-extract-plugin": "0.9.1",
|
2018-11-12 09:29:11 +00:00
|
|
|
"@types/mkdirp-promise": "5.0.0",
|
2020-03-03 19:07:17 +00:00
|
|
|
"@types/mocha": "7.0.2",
|
2019-04-12 08:05:57 +00:00
|
|
|
"@types/mockdate": "2.0.0",
|
2019-12-01 12:59:09 +00:00
|
|
|
"@types/mz": "2.7.0",
|
2020-05-08 15:23:18 +00:00
|
|
|
"@types/node": "13.13.5",
|
2019-10-07 23:32:53 +00:00
|
|
|
"@types/optimize-css-assets-webpack-plugin": "5.0.1",
|
2019-11-01 11:02:28 +00:00
|
|
|
"@types/puppeteer": "1.20.2",
|
2020-05-08 15:01:11 +00:00
|
|
|
"@types/react": "16.9.34",
|
2020-03-03 06:22:56 +00:00
|
|
|
"@types/react-circular-progressbar": "1.0.2",
|
2020-05-08 15:01:40 +00:00
|
|
|
"@types/react-dom": "16.9.7",
|
2019-07-01 07:11:21 +00:00
|
|
|
"@types/react-hot-loader": "4.1.0",
|
2020-05-08 19:08:54 +00:00
|
|
|
"@types/react-router": "5.1.7",
|
2020-05-08 15:02:36 +00:00
|
|
|
"@types/react-router-dom": "5.1.5",
|
2020-02-03 18:47:00 +00:00
|
|
|
"@types/react-stripe-elements": "6.0.4",
|
2020-02-01 13:09:18 +00:00
|
|
|
"@types/react-test-renderer": "16.9.2",
|
2020-02-01 08:09:55 +00:00
|
|
|
"@types/react-textarea-autosize": "4.3.5",
|
2020-03-01 09:13:08 +00:00
|
|
|
"@types/reactstrap": "8.4.2",
|
2020-05-08 19:09:22 +00:00
|
|
|
"@types/recharts": "1.8.10",
|
2020-02-01 08:09:55 +00:00
|
|
|
"@types/resize-observer-browser": "0.1.3",
|
2020-04-02 17:14:01 +00:00
|
|
|
"@types/sanitize-html": "1.22.0",
|
2020-02-03 13:02:25 +00:00
|
|
|
"@types/semver": "7.1.0",
|
2020-04-01 15:42:36 +00:00
|
|
|
"@types/shelljs": "0.8.7",
|
2020-04-02 22:33:34 +00:00
|
|
|
"@types/signale": "1.4.1",
|
2019-11-01 12:14:42 +00:00
|
|
|
"@types/simmerjs": "0.5.1",
|
2020-04-02 13:36:57 +00:00
|
|
|
"@types/sinon": "9.0.0",
|
2019-11-01 12:15:11 +00:00
|
|
|
"@types/socket.io": "2.1.4",
|
2018-11-12 09:05:35 +00:00
|
|
|
"@types/socket.io-client": "1.4.32",
|
2019-06-05 23:11:23 +00:00
|
|
|
"@types/storybook__addon-actions": "3.4.3",
|
2019-12-03 15:47:00 +00:00
|
|
|
"@types/storybook__addon-info": "5.2.1",
|
2019-10-01 08:19:14 +00:00
|
|
|
"@types/storybook__addon-knobs": "5.0.4",
|
2019-06-06 03:12:37 +00:00
|
|
|
"@types/storybook__addon-options": "4.0.2",
|
2019-12-01 13:03:32 +00:00
|
|
|
"@types/storybook__addon-storyshots": "5.1.2",
|
2019-06-06 05:11:42 +00:00
|
|
|
"@types/storybook__react": "4.0.2",
|
2019-04-15 21:52:51 +00:00
|
|
|
"@types/textarea-caret": "3.0.0",
|
2020-05-08 19:09:58 +00:00
|
|
|
"@types/uuid": "7.0.3",
|
2020-05-11 20:53:09 +00:00
|
|
|
"@types/webpack": "4.41.12",
|
2020-04-01 15:43:26 +00:00
|
|
|
"@types/webpack-dev-server": "3.10.1",
|
2019-02-16 10:53:20 +00:00
|
|
|
"@types/whatwg-url": "6.4.0",
|
2019-09-20 20:21:24 +00:00
|
|
|
"abort-controller": "^3.0.0",
|
2020-04-07 14:48:09 +00:00
|
|
|
"autoprefixer": "^9.7.6",
|
2020-04-02 22:23:44 +00:00
|
|
|
"babel-jest": "^25.2.6",
|
2020-03-22 21:31:42 +00:00
|
|
|
"babel-loader": "^8.1.0",
|
2018-11-12 09:05:35 +00:00
|
|
|
"babel-plugin-lodash": "^3.3.4",
|
2020-03-22 21:31:42 +00:00
|
|
|
"babel-preset-react-app": "^9.1.2",
|
2020-05-08 15:17:11 +00:00
|
|
|
"browserslist": "^4.12.0",
|
2020-01-18 16:32:30 +00:00
|
|
|
"bundlesize": "^0.18.0",
|
2019-05-01 13:27:33 +00:00
|
|
|
"chai": "^4.2.0",
|
use jest for testing (#1456)
Goal: help people write reliable UI code by making it easier to write and run tests.
Using Facebook's [jest](https://jestjs.io) for tests helps us achieve this goal because:
- jest has great first-class support for testing React components (see https://jestjs.io/docs/en/tutorial-react) and is by far the most popular way that people test React components, so the bugs are ironed out and the tooling is good
- jest can run all of our tests (`shared/`, `web/`, and `client/browser/` -- and unit tests **AND** e2e tests) from the same runner (`yarn test` in the root dir)
- jest has a great `--watch` UI and a good [vscode-jest extension](https://github.com/jest-community/vscode-jest)
- debugging tests in VS Code works with no additional effort
- jest requires a lot less configuration and code to set up testing and coverage than Mocha (no `--require ts-node --require source-map-support mocha.opts --require long-stack-traces --require esm ...`, no test-time bundling required using `unit-test-utils.ts`, etc.)
**Note:** Most of the diff is from https://github.com/skovhus/jest-codemods, which automatically updates our test code to use jest style (`describe`, `test`, `expect`, etc., not `it` and `assert`).
jest appears to be the most popular tool for solving the problem that we have (testing a large web/multi-platform application), and it was surprisingly painless to set up and a joy to use.
TODOs:
- [x] Make it pass on Buildkite
- [x] Ensure e2e, screenshots-after-failures, and coverage still work on Buildkite
- [x] Test on macOS
- [x] Add docs to repo
---
Usage:
> This is also documented in `doc/dev/testing.md` and `doc/dev/web_app.md`.
- To run all unit tests, run `yarn test` from the root directory.
- To run unit tests in development (only running the tests related to uncommitted code), run `yarn test --watch`.
- And/or use [vscode-jest](https://github.com/jest-community/vscode-jest) with `jest.autoEnable: true` (and, if you want, `jest.showCoverageOnLoad: true`)
- To debug tests in VS Code, use [vscode-jest](https://github.com/jest-community/vscode-jest) and click the **Debug** code lens next to any `test('name ...', ...)` definition in your test file (be sure to set a breakpoint or break on uncaught exceptions by clicking in the left gutter).
- e2e tests:
- To run e2e tests for the browser extension: `cd client/browser && yarn test-e2e`
- To run e2e tests for the browser extension: `cd web && yarn test-e2e`
- You can also run `yarn test` from any of the individual project dirs (`shared/`, `web/`, `client/browser/`).
Usually while developing you will either have `yarn test --watch` running in a terminal or you will use vscode-jest.
---
Notes:
- There are no regressions. The following are all preserved as before: Puppeteer screenshots after test failures, jsdom tests, e2e tests, Codecov and lcov coverage, VS Code integration, etc.
- You will need to write tests using [jest matchers](https://jestjs.io/docs/en/using-matchers) (or [jest async matchers](https://jestjs.io/docs/en/asynchronous) for async code), not `assert`. They are very similar.
- You need to use `test()` instead of `it()` for defining test cases.
2018-12-17 02:13:40 +00:00
|
|
|
"chai-as-promised": "^7.1.1",
|
2020-04-02 22:24:43 +00:00
|
|
|
"chalk": "^4.0.0",
|
2019-11-01 14:35:11 +00:00
|
|
|
"chokidar-cli": "^2.1.0",
|
2018-11-15 18:18:11 +00:00
|
|
|
"chrome-webstore-upload-cli": "^1.2.0",
|
2019-11-26 01:15:39 +00:00
|
|
|
"command-exists": "^1.2.8",
|
2020-03-07 00:23:52 +00:00
|
|
|
"cross-env": "^7.0.2",
|
2020-05-10 07:50:45 +00:00
|
|
|
"css-loader": "^3.5.3",
|
2020-01-01 09:48:24 +00:00
|
|
|
"eslint": "^6.8.0",
|
2020-01-20 10:37:52 +00:00
|
|
|
"execa": "^4.0.0",
|
2018-12-30 08:56:48 +00:00
|
|
|
"fancy-log": "^1.3.3",
|
2020-02-01 16:15:46 +00:00
|
|
|
"get-port": "^5.1.1",
|
2020-03-03 06:18:07 +00:00
|
|
|
"googleapis": "^47.0.0",
|
2019-05-01 11:48:45 +00:00
|
|
|
"gql2ts": "^1.10.1",
|
2020-02-03 18:59:28 +00:00
|
|
|
"graphql": "^14.6.0",
|
2020-05-08 15:28:06 +00:00
|
|
|
"graphql-schema-linter": "^0.4.0",
|
2019-09-09 01:52:46 +00:00
|
|
|
"gulp": "^4.0.2",
|
2019-01-08 07:44:08 +00:00
|
|
|
"identity-obj-proxy": "^3.0.0",
|
2020-04-03 13:39:05 +00:00
|
|
|
"jest": "^25.2.7",
|
2019-11-04 14:46:31 +00:00
|
|
|
"jsdom": "^15.2.1",
|
2020-04-02 13:36:42 +00:00
|
|
|
"json-schema-ref-parser": "^8.0.0",
|
2019-10-03 08:56:50 +00:00
|
|
|
"json-schema-to-typescript": "^6.1.3",
|
2019-09-09 03:22:53 +00:00
|
|
|
"latest-version": "^5.1.0",
|
2020-04-16 20:44:54 +00:00
|
|
|
"license-checker": "^25.0.1",
|
2019-08-05 10:24:43 +00:00
|
|
|
"message-port-polyfill": "^0.2.0",
|
2020-01-01 14:49:23 +00:00
|
|
|
"mini-css-extract-plugin": "^0.9.0",
|
2018-11-01 07:25:26 +00:00
|
|
|
"mkdirp-promise": "^5.0.1",
|
2020-04-02 22:34:03 +00:00
|
|
|
"mocha": "^7.1.1",
|
2019-09-21 11:07:30 +00:00
|
|
|
"mockdate": "^2.0.5",
|
2020-01-07 16:45:52 +00:00
|
|
|
"monaco-editor-webpack-plugin": "^1.8.2",
|
2018-10-01 06:08:12 +00:00
|
|
|
"mz": "^2.7.0",
|
2019-09-20 20:21:24 +00:00
|
|
|
"node-fetch": "^2.6.0",
|
2020-05-08 19:39:55 +00:00
|
|
|
"node-sass": "^4.14.1",
|
2020-05-12 00:12:18 +00:00
|
|
|
"nyc": "^15.0.1",
|
2020-04-03 00:21:38 +00:00
|
|
|
"open": "^7.0.3",
|
2019-08-06 10:51:42 +00:00
|
|
|
"optimize-css-assets-webpack-plugin": "^5.0.3",
|
2019-11-08 00:03:39 +00:00
|
|
|
"p-retry": "^4.2.0",
|
2019-08-28 10:40:48 +00:00
|
|
|
"postcss-focus-visible": "^4.0.0",
|
2018-11-12 09:05:35 +00:00
|
|
|
"postcss-loader": "^3.0.0",
|
2020-05-08 19:34:26 +00:00
|
|
|
"prettier": "^2.0.5",
|
2019-11-07 15:32:44 +00:00
|
|
|
"puppeteer": "2.0.0",
|
2020-02-01 16:12:45 +00:00
|
|
|
"puppeteer-firefox": "^0.5.1",
|
2019-01-08 07:44:08 +00:00
|
|
|
"react-docgen-typescript-webpack-plugin": "^1.1.0",
|
2020-04-02 17:20:23 +00:00
|
|
|
"react-hot-loader": "^4.12.20",
|
2020-04-02 22:23:27 +00:00
|
|
|
"react-test-renderer": "^16.13.1",
|
2020-02-01 16:29:01 +00:00
|
|
|
"sass-loader": "^8.0.2",
|
2018-12-30 08:56:48 +00:00
|
|
|
"shelljs": "^0.8.3",
|
2019-05-01 13:18:13 +00:00
|
|
|
"signale": "^1.4.0",
|
2019-05-03 08:40:15 +00:00
|
|
|
"simmerjs": "^0.5.6",
|
2020-04-02 13:36:57 +00:00
|
|
|
"sinon": "^9.0.1",
|
2020-03-03 06:04:38 +00:00
|
|
|
"socket.io": "^2.3.0",
|
|
|
|
|
"socket.io-client": "^2.3.0",
|
2020-01-17 17:43:24 +00:00
|
|
|
"string-width": "^4.2.0",
|
2020-02-03 13:58:42 +00:00
|
|
|
"style-loader": "^1.1.3",
|
2020-04-03 16:32:16 +00:00
|
|
|
"stylelint": "^13.3.0",
|
2020-02-03 15:41:11 +00:00
|
|
|
"term-size": "^2.2.0",
|
2020-02-03 13:00:49 +00:00
|
|
|
"terser-webpack-plugin": "^2.3.4",
|
2019-12-06 23:18:08 +00:00
|
|
|
"thread-loader": "^2.1.3",
|
2020-04-20 16:05:16 +00:00
|
|
|
"to-string-loader": "^1.1.6",
|
2020-05-05 13:17:12 +00:00
|
|
|
"ts-graphql-plugin": "^1.12.0",
|
2020-05-08 15:20:01 +00:00
|
|
|
"ts-node": "^8.10.1",
|
2020-03-17 11:11:20 +00:00
|
|
|
"typescript": "^3.8.3",
|
2019-07-04 13:31:59 +00:00
|
|
|
"utc-version": "^2.0.1",
|
2020-03-10 16:32:28 +00:00
|
|
|
"web-ext": "^4.1.0",
|
2020-05-11 20:53:09 +00:00
|
|
|
"webpack": "^4.43.0",
|
2020-05-11 23:42:32 +00:00
|
|
|
"webpack-dev-server": "^3.11.0",
|
2019-05-02 23:09:20 +00:00
|
|
|
"worker-loader": "^2.0.0",
|
2020-03-02 19:06:29 +00:00
|
|
|
"yarn-deduplicate": "^2.0.0"
|
2018-11-12 09:05:35 +00:00
|
|
|
},
|
|
|
|
|
"dependencies": {
|
2020-04-02 17:11:41 +00:00
|
|
|
"@hot-loader/react-dom": "^16.13.0",
|
2020-03-18 21:36:34 +00:00
|
|
|
"@primer/octicons-react": "^9.6.0",
|
2020-04-14 16:17:52 +00:00
|
|
|
"@reach/accordion": "^0.9.1",
|
2020-05-11 23:42:58 +00:00
|
|
|
"@reach/menu-button": "0.10.2",
|
2020-05-12 01:16:21 +00:00
|
|
|
"@sentry/browser": "^5.15.5",
|
2018-11-12 09:05:35 +00:00
|
|
|
"@slimsag/react-shortcuts": "^1.2.1",
|
2020-04-17 06:41:33 +00:00
|
|
|
"@sourcegraph/codeintellify": "^7.0.0",
|
2020-01-31 17:03:57 +00:00
|
|
|
"@sourcegraph/extension-api-classes": "^1.0.3",
|
2018-12-10 05:35:40 +00:00
|
|
|
"@sourcegraph/extension-api-types": "link:packages/@sourcegraph/extension-api-types",
|
2018-12-17 05:00:57 +00:00
|
|
|
"@sourcegraph/react-loading-spinner": "0.0.7",
|
2018-11-12 09:05:35 +00:00
|
|
|
"@sqs/jsonc-parser": "^1.0.3",
|
2020-03-03 06:22:37 +00:00
|
|
|
"bootstrap": "^4.4.1",
|
2019-02-11 03:26:22 +00:00
|
|
|
"classnames": "^2.2.6",
|
2020-05-04 12:27:12 +00:00
|
|
|
"comlink": "^4.3.0",
|
2020-03-02 00:50:41 +00:00
|
|
|
"copy-to-clipboard": "^3.3.1",
|
2020-05-08 15:16:49 +00:00
|
|
|
"core-js": "^3.6.5",
|
2019-05-01 14:28:21 +00:00
|
|
|
"d3-axis": "^1.0.12",
|
2020-03-03 12:07:28 +00:00
|
|
|
"d3-scale": "^3.2.1",
|
2020-02-03 14:23:55 +00:00
|
|
|
"d3-selection": "^1.4.1",
|
2020-02-03 12:59:48 +00:00
|
|
|
"d3-shape": "^1.3.7",
|
2020-05-08 15:20:42 +00:00
|
|
|
"date-fns": "^2.13.0",
|
2019-11-27 15:15:05 +00:00
|
|
|
"delay": "^4.3.0",
|
2020-01-02 02:21:31 +00:00
|
|
|
"downshift": "^3.4.8",
|
2020-04-04 11:50:48 +00:00
|
|
|
"focus-visible": "^5.1.0",
|
2020-04-02 10:03:17 +00:00
|
|
|
"got": "^10.7.0",
|
2020-03-03 12:26:59 +00:00
|
|
|
"graphiql": "^0.17.5",
|
2018-12-07 18:50:22 +00:00
|
|
|
"he": "^1.2.0",
|
2020-02-03 15:30:13 +00:00
|
|
|
"highlight.js": "^9.18.1",
|
2020-04-20 17:07:40 +00:00
|
|
|
"highlightjs-graphql": "^1.0.1",
|
2019-11-01 22:16:29 +00:00
|
|
|
"is-absolute-url": "^3.0.3",
|
2019-08-05 09:45:42 +00:00
|
|
|
"lodash": "^4.17.15",
|
2020-04-02 11:39:35 +00:00
|
|
|
"marked": "^0.8.2",
|
2020-03-03 08:41:32 +00:00
|
|
|
"mdi-react": "^6.7.0",
|
2018-11-12 09:05:35 +00:00
|
|
|
"minimatch": "^3.0.4",
|
2019-12-03 15:53:57 +00:00
|
|
|
"monaco-editor": "^0.18.1",
|
2020-01-02 02:20:04 +00:00
|
|
|
"open-color": "^1.7.0",
|
2019-08-06 10:41:11 +00:00
|
|
|
"pretty-bytes": "^5.3.0",
|
2020-04-02 22:23:27 +00:00
|
|
|
"react": "^16.13.1",
|
2020-03-03 14:33:21 +00:00
|
|
|
"react-circular-progressbar": "^2.0.3",
|
2020-04-02 23:15:44 +00:00
|
|
|
"react-dom": "npm:@hot-loader/react-dom@^16.13.0",
|
2020-01-03 05:32:11 +00:00
|
|
|
"react-dom-confetti": "^0.1.3",
|
2019-11-02 13:19:52 +00:00
|
|
|
"react-router": "^5.1.2",
|
|
|
|
|
"react-router-dom": "^5.1.2",
|
2020-04-02 22:34:27 +00:00
|
|
|
"react-stripe-elements": "^6.1.1",
|
2020-01-09 18:20:43 +00:00
|
|
|
"react-textarea-autosize": "^7.1.2",
|
2019-10-02 13:37:10 +00:00
|
|
|
"react-visibility-sensor": "^5.1.1",
|
2020-02-01 15:46:57 +00:00
|
|
|
"reactstrap": "^8.4.1",
|
2019-11-01 22:13:01 +00:00
|
|
|
"recharts": "^1.8.5",
|
2020-04-02 10:01:06 +00:00
|
|
|
"regenerator-runtime": "^0.13.5",
|
2020-04-03 13:12:31 +00:00
|
|
|
"rxjs": "^6.5.5",
|
2020-04-02 17:14:01 +00:00
|
|
|
"sanitize-html": "^1.22.1",
|
2020-05-08 15:26:09 +00:00
|
|
|
"semver": "^7.3.2",
|
2020-03-02 04:14:41 +00:00
|
|
|
"slugify": "^1.4.0",
|
2018-11-12 09:05:35 +00:00
|
|
|
"sourcegraph": "link:packages/sourcegraph-extension-api",
|
|
|
|
|
"string-score": "^1.0.1",
|
2019-01-28 17:28:44 +00:00
|
|
|
"symbol-observable": "^1.2.0",
|
2020-04-20 16:05:16 +00:00
|
|
|
"tagged-template-noop": "^2.1.1",
|
2019-04-15 20:44:57 +00:00
|
|
|
"textarea-caret": "^3.1.0",
|
2020-01-07 17:14:37 +00:00
|
|
|
"ts-key-enum": "^2.0.2",
|
2020-03-02 08:22:29 +00:00
|
|
|
"tslib": "^1.11.1",
|
2019-12-01 14:23:26 +00:00
|
|
|
"utility-types": "^3.10.0",
|
2020-04-02 22:35:06 +00:00
|
|
|
"uuid": "^7.0.3",
|
2019-08-07 13:04:05 +00:00
|
|
|
"webext-domain-permission-toggle": "^1.0.0",
|
2020-01-07 16:58:01 +00:00
|
|
|
"webextension-polyfill": "^0.6.0",
|
2020-01-03 07:06:13 +00:00
|
|
|
"whatwg-url": "^8.0.0"
|
2019-06-12 12:07:44 +00:00
|
|
|
},
|
|
|
|
|
"resolutions": {
|
|
|
|
|
"history": "4.5.1"
|
2018-10-01 06:08:12 +00:00
|
|
|
}
|
|
|
|
|
}
|