package.json 11.1 KB
Newer Older
winniehell's avatar
winniehell committed
1 2 3
{
  "private": true,
  "scripts": {
4
    "check-dependencies": "scripts/frontend/check_dependencies.sh",
5
    "block-dependencies": "node scripts/frontend/block_dependencies.js",
6
    "check:startup_css": "scripts/frontend/startup_css/startup_css_changed.sh",
7
    "clean": "rm -rf public/assets tmp/cache/*-loader",
8
    "dev-server": "NODE_OPTIONS=\"--max-old-space-size=3584\" node scripts/frontend/webpack_dev_server.js",
9
    "file-coverage": "scripts/frontend/file_test_coverage.js",
10
    "lint-docs": "scripts/lint-doc.sh",
11
    "internal:eslint": "eslint --cache --max-warnings 0 --report-unused-disable-directives --ext .js,.vue,.graphql",
12
    "internal:stylelint": "stylelint -q '{ee/,}app/assets/stylesheets/**/*.{css,scss}'",
13
    "prejest": "yarn check-dependencies",
14
    "jest": "jest --config jest.config.js",
15
    "jest-debug": "node --inspect-brk node_modules/.bin/jest --runInBand",
Albert Salim's avatar
Albert Salim committed
16 17
    "jest:ci": "jest --config jest.config.js --ci --coverage --testSequencer ./scripts/frontend/parallel_ci_sequencer.js",
    "jest:ci:minimal": "jest --config jest.config.js --ci --coverage --findRelatedTests $(cat tmp/changed_files.txt) --passWithNoTests --testSequencer ./scripts/frontend/parallel_ci_sequencer.js",
18
    "jest:integration": "jest --config jest.config.integration.js",
19
    "jsdoc": "jsdoc -c config/jsdocs.config.js",
20 21 22 23
    "lint:eslint": "yarn run internal:eslint",
    "lint:eslint:fix": "yarn run internal:eslint --fix",
    "lint:eslint:all": "yarn run internal:eslint .",
    "lint:eslint:all:fix": "yarn run lint:eslint:all --fix",
24 25 26
    "lint:eslint:report": "yarn run internal:eslint --format html --output-file ./eslint-report.html --no-inline-config .",
    "lint:eslint:staged": "scripts/frontend/execute-on-staged-files.sh internal:eslint '(js|vue)'",
    "lint:eslint:staged:fix": "yarn run lint:eslint:staged --fix",
27 28 29 30
    "lint:prettier": "yarn run prettier --check '**/*.{graphql,js,vue}'",
    "lint:prettier:fix": "yarn run prettier --write '**/*.{graphql,js,vue}'",
    "lint:prettier:staged": "scripts/frontend/execute-on-staged-files.sh prettier '(graphql|js|vue)' --check",
    "lint:prettier:staged:fix": "scripts/frontend/execute-on-staged-files.sh prettier '(graphql|js|vue)' --write",
31
    "lint:stylelint": "stylelint '{ee/,}app/assets/stylesheets/**/*.{css,scss}'",
32 33 34
    "lint:stylelint:fix": "yarn run lint:stylelint --fix",
    "lint:stylelint:staged": "scripts/frontend/execute-on-staged-files.sh stylelint '(css|scss)' -q",
    "lint:stylelint:staged:fix": "yarn run lint:stylelint:staged --fix",
35 36
    "generate:startup_css": "scripts/frontend/startup_css/setup.sh && node scripts/frontend/startup_css/main.js",
    "generate:startup_css:full": "scripts/frontend/startup_css/setup.sh force && node scripts/frontend/startup_css/main.js",
37 38 39
    "markdownlint": "markdownlint --config .markdownlint.yml",
    "markdownlint:no-trailing-spaces": "markdownlint --config doc/.markdownlint/markdownlint-no-trailing-spaces.yml",
    "markdownlint:no-trailing-spaces:fix": "yarn run markdownlint:no-trailing-spaces --fix",
40
    "postinstall": "node ./scripts/frontend/postinstall.js",
41
    "storybook:install": "yarn --cwd ./storybook install",
42
    "storybook:build": "yarn --cwd ./storybook build",
43
    "storybook:start": "./scripts/frontend/start_storybook.sh",
44
    "stylelint-create-utility-map": "node scripts/frontend/stylelint/stylelint-utility-map.js",
45
    "webpack": "NODE_OPTIONS=\"--max-old-space-size=3584\" webpack --config config/webpack.config.js",
46
    "webpack-vendor": "NODE_OPTIONS=\"--max-old-space-size=3584\" webpack --config config/webpack.vendor.config.js",
47
    "webpack-prod": "NODE_OPTIONS=\"--max-old-space-size=3584\" NODE_ENV=production webpack --config config/webpack.config.js"
winniehell's avatar
winniehell committed
48
  },
49
  "dependencies": {
50 51 52 53 54 55
    "@babel/core": "^7.10.1",
    "@babel/plugin-proposal-class-properties": "^7.10.1",
    "@babel/plugin-proposal-json-strings": "^7.10.1",
    "@babel/plugin-proposal-private-methods": "^7.10.1",
    "@babel/plugin-syntax-import-meta": "^7.10.1",
    "@babel/preset-env": "^7.10.1",
56
    "@gitlab/at.js": "1.5.7",
57
    "@gitlab/favicon-overlay": "2.0.0",
58
    "@gitlab/svgs": "2.0.0",
Coung Ngo's avatar
Coung Ngo committed
59
    "@gitlab/tributejs": "1.0.0",
60
    "@gitlab/ui": "32.50.0",
61
    "@gitlab/visual-review-tools": "1.6.1",
Dmitry Gruzd's avatar
Dmitry Gruzd committed
62 63
    "@rails/actioncable": "6.1.4-1",
    "@rails/ujs": "6.1.4-1",
64
    "@sentry/browser": "5.30.0",
65
    "@sourcegraph/code-host-integration": "0.0.60",
66 67 68 69 70 71
    "@tiptap/core": "^2.0.0-beta.160",
    "@tiptap/extension-blockquote": "^2.0.0-beta.26",
    "@tiptap/extension-bold": "^2.0.0-beta.25",
    "@tiptap/extension-bullet-list": "^2.0.0-beta.26",
    "@tiptap/extension-code": "^2.0.0-beta.26",
    "@tiptap/extension-code-block-lowlight": "2.0.0-beta.63",
72
    "@tiptap/extension-document": "^2.0.0-beta.15",
73
    "@tiptap/extension-dropcursor": "^2.0.0-beta.25",
74
    "@tiptap/extension-gapcursor": "^2.0.0-beta.34",
75
    "@tiptap/extension-hard-break": "^2.0.0-beta.30",
76
    "@tiptap/extension-heading": "^2.0.0-beta.24",
77 78 79
    "@tiptap/extension-history": "^2.0.0-beta.21",
    "@tiptap/extension-horizontal-rule": "^2.0.0-beta.30",
    "@tiptap/extension-image": "^2.0.0-beta.24",
80 81 82 83 84 85 86 87 88
    "@tiptap/extension-italic": "^2.0.0-beta.25",
    "@tiptap/extension-link": "^2.0.0-beta.34",
    "@tiptap/extension-list-item": "^2.0.0-beta.20",
    "@tiptap/extension-ordered-list": "^2.0.0-beta.27",
    "@tiptap/extension-paragraph": "^2.0.0-beta.23",
    "@tiptap/extension-strike": "^2.0.0-beta.27",
    "@tiptap/extension-subscript": "^2.0.0-beta.10",
    "@tiptap/extension-superscript": "^2.0.0-beta.10",
    "@tiptap/extension-table": "^2.0.0-beta.46",
89 90 91
    "@tiptap/extension-table-cell": "^2.0.0-beta.20",
    "@tiptap/extension-table-header": "^2.0.0-beta.22",
    "@tiptap/extension-table-row": "^2.0.0-beta.19",
92 93
    "@tiptap/extension-task-item": "^2.0.0-beta.30",
    "@tiptap/extension-task-list": "^2.0.0-beta.26",
94
    "@tiptap/extension-text": "^2.0.0-beta.15",
95
    "@tiptap/vue-2": "^2.0.0-beta.74",
96 97
    "@toast-ui/editor": "^2.5.2",
    "@toast-ui/vue-editor": "^2.5.2",
98 99 100 101
    "apollo-cache-inmemory": "^1.6.6",
    "apollo-client": "^2.6.10",
    "apollo-link": "^1.2.14",
    "apollo-link-batch-http": "^1.2.14",
102
    "apollo-link-error": "^1.1.13",
103
    "apollo-link-http": "^1.5.17",
104
    "apollo-upload-client": "^13.0.0",
105
    "autosize": "^5.0.1",
106
    "aws-sdk": "^2.637.0",
Tim Zallmann's avatar
Tim Zallmann committed
107
    "axios": "^0.24.0",
108
    "babel-loader": "^8.2.2",
109
    "babel-plugin-lodash": "^3.3.4",
110
    "bootstrap": "4.5.3",
111
    "cache-loader": "^4.1.0",
112
    "canvas-confetti": "^1.4.0",
113
    "clipboard": "^2.0.8",
114
    "codemirror": "^5.48.4",
115
    "codesandbox-api": "0.0.23",
116
    "compression-webpack-plugin": "^5.0.2",
117
    "copy-webpack-plugin": "^6.4.1",
118
    "core-js": "^3.20.2",
119
    "cron-validator": "^1.1.1",
120
    "cronstrue": "^1.122.0",
121
    "cropper": "^2.3.0",
122
    "css-loader": "^2.1.1",
123
    "d3": "^5.16.0",
124
    "d3-sankey": "^0.12.3",
125
    "d3-selection": "^1.2.0",
126
    "dateformat": "^5.0.1",
127
    "deckar01-task_list": "^2.3.1",
Phil Hughes's avatar
Phil Hughes committed
128
    "diff": "^3.4.0",
129
    "dompurify": "^2.3.4",
130
    "dropzone": "^4.2.0",
131
    "editorconfig": "^0.15.3",
132
    "emoji-regex": "^10.0.0",
Thomas Randolph's avatar
Thomas Randolph committed
133
    "fast-mersenne-twister": "1.0.2",
134
    "file-loader": "^6.2.0",
135
    "fuzzaldrin-plus": "^0.6.0",
Mark Florian's avatar
Mark Florian committed
136
    "graphql": "^15.7.2",
137
    "graphql-tag": "^2.11.0",
Jacques's avatar
Jacques committed
138
    "highlight.js": "^11.3.1",
139
    "immer": "^7.0.7",
140
    "ipaddr.js": "^1.9.1",
141
    "jed": "^1.1.1",
Tim Zallmann's avatar
Tim Zallmann committed
142
    "jquery": "^3.6.0",
143
    "jquery.caret": "^0.3.1",
144
    "js-cookie": "^2.2.1",
145
    "js-yaml": "^3.13.1",
146 147
    "jszip": "^3.1.3",
    "jszip-utils": "^0.0.2",
148
    "katex": "^0.13.2",
Takuya Noguchi's avatar
Takuya Noguchi committed
149
    "lodash": "^4.17.20",
150
    "lowlight": "^1.20.0",
151
    "marked": "^0.3.12",
152
    "mathjax": "3",
153
    "mermaid": "^8.13.4",
154
    "minimatch": "^3.0.4",
Denys Mishunov's avatar
Denys Mishunov committed
155 156
    "monaco-editor": "^0.25.2",
    "monaco-editor-webpack-plugin": "^4.0.0",
157
    "monaco-yaml": "^2.5.1",
158
    "mousetrap": "1.6.5",
159
    "papaparse": "^5.3.1",
160
    "pdfjs-dist": "^2.0.943",
161
    "pikaday": "^1.8.0",
162
    "popper.js": "^1.16.1",
163
    "portal-vue": "^2.1.7",
164
    "prismjs": "^1.21.0",
165
    "prosemirror-markdown": "1.6.0",
166
    "prosemirror-model": "^1.16.1",
167
    "prosemirror-state": "^1.3.4",
168
    "prosemirror-tables": "^1.1.1",
169
    "prosemirror-view": "^1.23.5",
170
    "raphael": "^2.2.7",
171
    "raw-loader": "^4.0.2",
172
    "scrollparent": "^2.0.1",
173
    "select2": "3.5.2-browserify",
174
    "smooshpack": "^0.0.62",
175
    "sortablejs": "^1.10.2",
176
    "sql.js": "^0.4.0",
177
    "string-hash": "1.1.3",
178
    "style-loader": "^2.0.0",
179
    "swagger-ui-dist": "^3.52.3",
Phil Hughes's avatar
Phil Hughes committed
180 181 182
    "three": "^0.84.0",
    "three-orbit-controls": "^82.1.0",
    "three-stl-loader": "^1.0.4",
183
    "timeago.js": "^4.0.2",
184 185
    "tiptap": "^1.32.2",
    "tiptap-extensions": "^1.35.2",
186
    "url-loader": "^4.1.1",
187
    "uuid": "8.1.0",
Filipa Lacerda's avatar
Filipa Lacerda committed
188
    "visibilityjs": "^1.2.4",
189
    "vue": "^2.6.12",
190
    "vue-apollo": "^3.0.3",
191
    "vue-loader": "^15.9.6",
192 193
    "vue-observe-visibility": "^1.0.0",
    "vue-resize": "^1.0.1",
194
    "vue-router": "3.4.9",
195
    "vue-template-compiler": "^2.6.12",
196
    "vue-virtual-scroll-list": "^1.4.7",
197
    "vuedraggable": "^2.23.0",
198
    "vuex": "^3.6.0",
199
    "web-vitals": "^0.2.4",
GitLab Bot's avatar
GitLab Bot committed
200
    "webpack": "^4.46.0",
201
    "webpack-bundle-analyzer": "^4.4.2",
GitLab Bot's avatar
GitLab Bot committed
202
    "webpack-cli": "^3.3.12",
Mike Greiling's avatar
Mike Greiling committed
203
    "webpack-stats-plugin": "^0.3.1",
204
    "worker-loader": "^2.0.0",
205 206
    "xterm": "3.14.5",
    "yaml": "^2.0.0-8"
207
  },
winniehell's avatar
winniehell committed
208
  "devDependencies": {
209
    "@babel/plugin-transform-modules-commonjs": "^7.10.1",
210
    "@gitlab/eslint-plugin": "10.0.0",
211
    "@gitlab/stylelint-config": "2.6.0",
Mark Florian's avatar
Mark Florian committed
212
    "@graphql-eslint/eslint-plugin": "3.0.0",
jboyson's avatar
jboyson committed
213
    "@testing-library/dom": "^7.16.2",
peterhegman's avatar
peterhegman committed
214
    "@vue/test-utils": "1.2.0",
215
    "acorn": "^6.3.0",
216
    "axios-mock-adapter": "^1.15.0",
Lukas Eipert's avatar
Lukas Eipert committed
217 218 219
    "babel-jest": "^26.5.2",
    "babel-plugin-dynamic-import-node": "^2.3.3",
    "babel-plugin-istanbul": "^6.0.0",
220
    "chalk": "^2.4.1",
221
    "cheerio": "^1.0.0-rc.9",
222
    "commander": "^2.20.3",
223
    "custom-jquery-matchers": "^2.1.0",
224
    "docdash": "^1.0.2",
225
    "eslint": "7.32.0",
226
    "eslint-import-resolver-jest": "3.0.2",
227 228
    "eslint-import-resolver-webpack": "0.13.2",
    "eslint-plugin-no-jquery": "2.7.0",
229 230
    "gettext-extractor": "^3.5.3",
    "gettext-extractor-vue": "^5.0.0",
231
    "glob": "^7.1.6",
Albert Salim's avatar
Albert Salim committed
232 233 234
    "istanbul-lib-coverage": "^3.0.0",
    "istanbul-lib-report": "^3.0.0",
    "istanbul-reports": "^3.0.0",
Lukas Eipert's avatar
Lukas Eipert committed
235
    "jest": "^26.5.2",
236
    "jest-canvas-mock": "^2.1.2",
Lukas Eipert's avatar
Lukas Eipert committed
237 238
    "jest-environment-jsdom": "^26.5.2",
    "jest-junit": "^12.0.0",
239
    "jest-raw-loader": "^1.0.1",
240
    "jest-transform-graphql": "^2.1.0",
Lukas Eipert's avatar
Lukas Eipert committed
241
    "jest-util": "^26.5.2",
242 243
    "jsdoc": "^3.5.5",
    "jsdoc-vue": "^1.0.0",
244
    "markdownlint-cli": "0.26.0",
245
    "md5": "^2.2.1",
246
    "miragejs": "^0.1.40",
247
    "mock-apollo-client": "^0.7.0",
Tim Zallmann's avatar
Tim Zallmann committed
248
    "nodemon": "^2.0.4",
Tim Zallmann's avatar
Tim Zallmann committed
249
    "postcss": "^7.0.14",
250
    "prettier": "2.2.1",
251
    "prosemirror-schema-basic": "^1.1.2",
252
    "prosemirror-schema-list": "^1.1.6",
253
    "prosemirror-test-builder": "^1.0.5",
254
    "purgecss": "^4.0.3",
255
    "purgecss-from-html": "^4.0.3",
Lukas Eipert's avatar
Lukas Eipert committed
256
    "sass": "^1.32.12",
Wei-Meng Lee's avatar
Wei-Meng Lee committed
257
    "timezone-mock": "^1.0.8",
Vitaly Slobodin's avatar
Vitaly Slobodin committed
258
    "vue-jest": "4.0.1",
259
    "webpack-dev-server": "^3.11.3",
260
    "xhr-mock": "^2.5.1",
261
    "yarn-check-webpack-plugin": "^1.2.0",
262
    "yarn-deduplicate": "^3.1.0"
263
  },
264
  "blockedDependencies": {
265
    "bootstrap-vue": "https://docs.gitlab.com/ee/development/fe_guide/dependencies.html#bootstrapvue"
266
  },
267
  "resolutions": {
268
    "chokidar": "^3.4.0",
269
    "@types/node": "14.17.5"
270
  },
271
  "engines": {
272
    "node": ">=12.22.1",
273
    "yarn": "^1.10.0"
winniehell's avatar
winniehell committed
274
  }
275
}