Newer
Older
"description": "Metabase Analytics Report Server",
"repository": "https://github.com/metabase/metabase",
Nemanja Glumac
committed
"node": ">=18",
"@dnd-kit/core": "^6.0.8",
"@dnd-kit/modifiers": "^6.0.1",
"@dnd-kit/sortable": "^8.0.0",
"@emotion/cache": "^11.10.5",
"@emotion/is-prop-valid": "^1.1.1",
"@emotion/react": "^11.10.5",
"@emotion/styled": "^11.10.5",
Kyle Doherty
committed
"@mantine/core": "^6.0.13",
Kyle Doherty
committed
"@mantine/hooks": "^6.0.13",
"@react-oauth/google": "^0.11.1",
"@reduxjs/toolkit": "^1.9.3",
"@visx/clip-path": "^2.1.0",
"@visx/grid": "1.16.0",
"@visx/group": "1.7.0",
"@visx/legend": "^2.10.0",
"@visx/mock-data": "^2.1.2",
"@visx/responsive": "^2.10.0",
"color-harmony": "^0.3.0",
Cam Saul
committed
"cron-expression-validator": "^1.0.20",
"cronstrue": "^2.11.0",
"crossfilter": "^1.3.12",
Paul Rosenzweig
committed
"humanize-plus": "^1.8.1",
"inflection": "^1.7.1",
Tom Robinson
committed
"lodash.debounce": "^4.0.8",
"lodash.orderby": "^4.6.0",
"moment-timezone": "^0.5.38",
Allen Gilliland
committed
"password-generator": "^2.0.1",
"re-reselect": "^4.0.1",
"react-beautiful-dnd": "^13.1.1",
"react-dnd": "4",
"react-dnd-html5-backend": "4",
"react-draggable": "^4.4.5",
Anton Kulyk
committed
"react-grid-layout": "^1.2.5",
Mahatthana (Kelvin) Nomsawadi
committed
"react-markdown": "^8.0.4",
"react-resizable": "^3.0.5",
Tom Robinson
committed
"react-router": "3",
"react-transition-group": "^4.4.5",
"reduce-reducers": "^1.0.4",
"redux-auth-wrapper": "^2.1.0",
Tom Robinson
committed
"redux-promise": "^0.5.0",
Alexander Solovyov
committed
"regenerator-runtime": "^0.14.1",
Mahatthana (Kelvin) Nomsawadi
committed
"rehype-external-links": "^2.0.1",
Uladzimir Havenchyk
committed
"simple-statistics": "^3.0.0",
Oleg Gromov
committed
"use-debounce": "^10.0.0",
"@babel/cli": "^7.23.0",
"@babel/core": "^7.23.3",
"@babel/node": "^7.22.19",
"@babel/preset-env": "^7.23.3",
"@babel/preset-react": "^7.23.3",
"@babel/preset-typescript": "^7.23.3",
Nemanja Glumac
committed
"@cypress/grep": "^4.0.1",
"@cypress/skip-test": "^2.6.1",
"@percy/cli": "^1.27.2",
"@percy/cypress": "^3.1.2",
"@storybook/addon-actions": "6.5.16",
"@storybook/addon-essentials": "6.5.16",
"@storybook/addon-links": "6.5.16",
Kyle Doherty
committed
"@storybook/blocks": "^7.0.18",
"@storybook/react": "6.5.16",
"@testing-library/jest-dom": "^6.4.2",
"@testing-library/react": "^12.1.5",
"@types/babel__core": "^7.20.4",
"@types/babel__preset-env": "^7.9.5",
"@types/color": "^3.0.2",
"@types/concurrently": "^6.3.0",
"@types/crossfilter": "^0.0.34",
"@types/d3": "^3.5.46",
Mahatthana (Kelvin) Nomsawadi
committed
"@types/d3-scale": "^4.0.2",
"@types/d3-time": "^3.0.0",
"@types/dc": "0.0.29",
"@types/diff": "^3.5.4",
"@types/eslint": "7.29.0",
"@types/glob": "^7.1.4",
"@types/history": "3.2.5",
"@types/humanize-plus": "^1.8.0",
"@types/icepick": "2.3.0",
"@types/iframe-resizer": "^3.5.9",
"@types/inflection": "^1.13.0",
"@types/jest": "^29.2.3",
"@types/js-cookie": "^2.2.7",
"@types/jsonwebtoken": "^9.0.1",
"@types/jsrsasign": "^10.5.12",
"@types/leaflet": "^1.7.5",
"@types/leaflet-draw": "^0.4.14",
"@types/leaflet.heat": "^0.2.1",
"@types/lodash.debounce": "^4.0.9",
"@types/lodash.orderby": "^4.6.9",
"@types/mustache": "^4.1.2",
"@types/postcss-import": "^12.0.1",
"@types/postcss-url": "^8.0.2",
"@types/prettier": "1.19.1",
"@types/prop-types": "^15.7.4",
"@types/raf": "^3.4.0",
"@types/react-collapse": "^5.0.1",
"@types/react-color": "^2.17.6",
"@types/react-copy-to-clipboard": "^5.0.2",
"@types/react-motion": "0.0.32",
"@types/react-resizable": "^3.0.4",
"@types/react-router": "3.0.28",
"@types/react-virtualized": "^9.21.13",
"@types/redux-actions": "^2.6.2",
"@types/redux-logger": "^3.0.9",
"@types/redux-promise": "^0.5.29",
"@types/tether": "^1.4.6",
"@types/underscore": "^1.11.3",
"babel-jest": "^29.3.1",
"concurrently": "^7.6.0",
"css-loader": "^6.10.0",
"eslint-plugin-cypress": "^2.12.1",
"eslint-plugin-import": "^2.29.1",
"eslint-plugin-jest-dom": "^4.0.3",
"eslint-plugin-react": "^7.32.2",
"jest-canvas-mock": "^2.4.0",
"jest-localstorage-mock": "^2.4.22",
"jest-watch-typeahead": "^2.2.1",
"json-to-pretty-yaml": "^1.2.2",
"jsonwebtoken": "^9.0.0",
"lint-staged": "^13.1.2",
"mini-css-extract-plugin": "2.7.2",
"mocha": "^10.2.0",
"mocha-junit-reporter": "^2.2.1",
"mochawesome": "^7.1.3",
"mochawesome-merge": "^4.2.1",
"mochawesome-report-generator": "^6.2.0",
"mutationobserver-shim": "^0.3.7",
"null-loader": "^4.0.1",
"postcss-import": "15.1.0",
"postcss-loader": "7.0.2",
"postcss-preset-env": "^6.7.0",
"postcss-url": "^10.1.3",
"react-refresh": "^0.13.0",
"shadow-cljs": "2.27.4",
"source-map-loader": "^4.0.1",
"stylelint": "^16.2.1",
"stylelint-config-css-modules": "^4.4.0",
"stylelint-config-standard": "^36.0.0",
"terser-webpack-plugin": "^5.3.9",
"webpack-cli": "^5.1.1",
"webpack-dev-server": "^4.15.2",
"webpack-stats-plugin": "^1.1.3",
"ansi-html": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz",
"ansi-regex": "5.0.1",
"d3-color": "^3.1.0",
Alexander Solovyov
committed
"debug": "^4.3.4",
"follow-redirects": "^1.15.5",
"json5": "2.2.2",
"nth-check": "2.0.1",
"@types/react": "^17.0.77",
"@types/react-dom": "^17.0.11",
"set-value": "4.0.1",
"source-map-js": "1.2.0",
"unset-value": "2.0.1",
"webpack-dev-middleware": "^5.3.4"
Tom Robinson
committed
"scripts": {
"build": "yarn build:cljs && yarn build:js",
"build-embedding-sdk": "yarn && yarn build-release:cljs && yarn build-release:sdk && yarn embedding-sdk:fixup-types-imports",
"build-embedding-sdk:pure": "WEBPACK_BUNDLE=development webpack --config webpack.embedding-sdk.config.js",
"build-embedding-sdk:watch": "yarn embedding-sdk:generate-package && yarn build-embedding-sdk:pure --watch",
"build-hot": "rm -f target/cljs_dev/cljs.core.js && yarn concurrently -n 'cljs,js' -c 'yellow,green' 'yarn build-hot:cljs' 'yarn build-hot:js-wait'",
"build-hot:cljs": "yarn && shadow-cljs watch app",
"build-hot:js": "yarn && NODE_OPTIONS=--max-old-space-size=8196 WEBPACK_BUNDLE=hot webpack serve --host 0.0.0.0",
"build-hot:js-wait": "yarn wait:cljs; yarn build-hot:js",
"build-pure:cljs": "yarn clean-dev:cljs && shadow-cljs compile app",
"build-release": "yarn build-release:cljs && yarn build-release:js",
"build-release:cljs": "yarn && yarn clean-release:cljs && shadow-cljs release app",
"build-release:js": "yarn && WEBPACK_BUNDLE=production NODE_OPTIONS=--max-old-space-size=8196 webpack --bail",
"build-release:sdk": "WEBPACK_BUNDLE=production webpack --config webpack.embedding-sdk.config.js",
"build-shared": "yarn && webpack --config webpack.shared.config.js",
"build-static-viz": "yarn && yarn build-release:cljs && WEBPACK_BUNDLE=production webpack --config webpack.static-viz.config.js",
"build-static-viz:watch": "webpack --config webpack.static-viz.config.js --watch",
"build-static-viz:watch-wait": "yarn wait:cljs; yarn build-static-viz:watch",
"build-stats": "yarn && webpack --json > stats.json",
Uladzimir Havenchyk
committed
"build-storybook": "NODE_ENV=development yarn build:cljs && NODE_OPTIONS=--max-old-space-size=8196 build-storybook",
"build-watch": "yarn concurrently -n 'cljs,js' 'yarn build-watch:cljs' 'yarn build-watch:js'",
"build-watch:cljs": "yarn && shadow-cljs watch app",
"build-watch:js": "yarn && NODE_OPTIONS=--max-old-space-size=8196 webpack --watch",
"build:cljs": "yarn && yarn build-pure:cljs",
"build:js": "yarn && NODE_OPTIONS=--max-old-space-size=8196 webpack --bail",
"chromatic": "yarn build:cljs && NODE_OPTIONS=--max-old-space-size=8196 chromatic",
"ci": "yarn ci-frontend && yarn ci-backend",
"ci-backend": "clojure -X:dev:ee:ee-dev:drivers:drivers-dev:eastwood && clojure -X:dev:test",
"ci-frontend": "yarn lint && yarn test",
"clean-cypress-artifacts": "rm -R -f cypress/",
"clean-dev:cljs": "rm -rf target/cljs_dev/*",
"clean-release:cljs": "rm -rf target/cljs_release/*",
"clean:cljs": "yarn && yarn clean-dev:cljs && yarn clean-release:cljs",
Cam Saul
committed
"cljs-nrepl": "yarn && shadow-cljs node-repl -d cider/cider-nrepl:0.45.0 -d cider/piggieback:0.5.3 -d refactor-nrepl/refactor-nrepl:3.9.1",
"cljs-server-restart": "yarn && shadow-cljs restart",
"cljs-server-start": "yarn && shadow-cljs start",
"cljs-server-stop": "yarn && shadow-cljs stop",
"concurrently": "yarn && concurrently --kill-others -p name",
"dev": "yarn && yarn clean:cljs && concurrently -n 'backend,frontend,cljs,static-viz' -c 'blue,green,yellow,magenta,red' 'clojure -M:run' 'yarn build-hot:js-wait' 'yarn build-hot:cljs' 'yarn build-static-viz:watch-wait'",
"dev-ee": "yarn && yarn clean:cljs && concurrently -n 'backend,frontend,cljs,static-viz' -c 'blue,green,yellow,magenta,red' 'clojure -M:run:ee' 'MB_EDITION=ee yarn build-hot:js-wait' 'MB_EDITION=ee yarn build-hot:cljs' 'yarn build-static-viz:watch-wait'",
"docs-lint-links": "find docs -type f -name '*.md' -print0 | xargs -0 markdown-link-check --quiet --config .mlc_config.json",
"embedding-sdk:fixup-types-imports": "node ./bin/embedding-sdk/fixup-types-after-compilation.js",
"embedding-sdk:generate-package": "node ./bin/embedding-sdk/generate-sdk-package-json.js",
"embedding-sdk:publish": "cd ./resources/embedding-sdk && npm publish",
"eslint-fix": "yarn lint-eslint --fix",
"generate-cypress-html-report": "mochawesome-merge cypress/reports/mochareports/*.json > cypress/reports/cypress-test-report.json && marge cypress/reports/cypress-test-report.json -o cypress/reports/mochareports --inline",
"lint": "yarn lint-eslint && yarn lint-prettier && yarn lint-docs-links && yarn lint-yaml && yarn type-check",
"lint-docs-links": "yarn && ./bin/verify-doc-links",
"lint-eslint": "yarn build:cljs && yarn lint-eslint-pure",
"lint-eslint-pure": "eslint --ext .js,.jsx,.ts,.tsx --rulesdir frontend/lint/eslint-rules --max-warnings 0 --report-unused-disable-directives enterprise/frontend frontend e2e",
"lint-prettier": "yarn && yarn lint-prettier-pure",
"lint-prettier-pure": "prettier --check '{frontend,enterprise/frontend,e2e}/**/*.{js,jsx,ts,tsx,css}'",
"lint-yaml": "yamllint **/*.{yaml,yml} --ignore=node_modules/**/*.{yaml,yml}",
"precommit": "lint-staged --shell",
"preinstall": "echo $npm_execpath | grep -q yarn || echo '\\033[0;33mSorry, npm is not supported. Please use Yarn (https://yarnpkg.com/).\\033[0m'",
"prepare": "husky install",
"prettier": "prettier --write '{frontend,enterprise/frontend,e2e}/**/*.{js,jsx,ts,tsx,css}'",
"remove-webpack-cache": "rm -rf ./node_modules/.cache",
"storybook": "yarn build:cljs && start-storybook -p 6006",
"test": "yarn test-unit && yarn test-timezones && yarn test-cypress",
"test-cljs": "yarn && shadow-cljs compile test && node target/node-tests.js",
"test-cypress": "yarn build && ./bin/build-for-test && yarn test-cypress-run",
"test-cypress-open": "./bin/build-for-test && CYPRESS_FE_HEALTHCHECK=false yarn test-cypress-run --e2e --open",
"test-cypress-open-no-backend": "E2E_HOST='http://localhost:3000' yarn test-cypress-run --e2e --open",
"test-cypress-open-qa": "yarn test-qa-dbs:up && QA_DB_ENABLED=true TZ='US/Pacific' yarn test-cypress-open",
"test-cypress-run": "node ./e2e/runner/run_cypress_tests.js",
"test-debug": "yarn build:cljs && node --inspect-brk node_modules/.bin/jest --runInBand --detectOpenHandles",
"test-qa-dbs:down": "docker-compose -f ./e2e/test/scenarios/docker-compose.yml down",
"test-qa-dbs:up": "docker-compose -f ./e2e/test/scenarios/docker-compose.yml up -d",
"test-timezones": "yarn && ./frontend/test/__runner__/run_timezone_tests",
"test-timezones-unit": "yarn build:cljs && jest --silent --maxWorkers=2 --config jest.tz.unit.conf.json",
"test-unit": "yarn build:cljs && jest --maxWorkers=2",
"test-unit-keep-cljs": "jest --maxWorkers=2",
"test-unit-watch": "yarn test-unit --watch",
"test-unit-watch:cljs": "yarn concurrently -n 'cljs,tests' 'yarn build-watch:cljs' 'yarn test-unit-keep-cljs --watch'",
"test-visual": "yarn build && ./bin/build-for-test && yarn test-visual-run",
"test-visual-open": "percy exec -- yarn test-cypress-open",
"test-visual-run": "percy exec -- yarn test-cypress-run --spec \"./e2e/test/visual/**/*.cy.spec.js\"",
"type-check": "yarn clean:cljs && yarn build:cljs && yarn type-check-pure",
"type-check-pure": "tsc --noEmit",
"validate-e2e-filenames": "node e2e/validate-e2e-test-files.js",
"wait:cljs": "echo Waiting for first CLJS build; until [ -f target/cljs_dev/cljs.core.js ]; do sleep 1; done; echo CLJS build done"
"+(frontend|enterprise/frontend|e2e)/**/*.css": [
"+(frontend|enterprise/frontend)/**/*.{js,jsx,ts,tsx}": [
"LINT_CSS_MODULES=true eslint --rulesdir frontend/lint/eslint-rules --max-warnings 0 --fix",
"prettier --write",
"node ./bin/verify-doc-links"
Mahatthana (Kelvin) Nomsawadi
committed
"e2e/**/*.{js,jsx,ts,jsx}": [
"eslint --rulesdir frontend/lint/eslint-rules --max-warnings 0 --fix",
Mahatthana (Kelvin) Nomsawadi
committed
"prettier --write"
],
"e2e/test/scenarios/*/{*.(js|ts),!(helpers|shared)/*.(js|ts)}": [
"node e2e/validate-e2e-test-files.js"
],
"**/*.{clj,cljc,cljs,bb}": [
"clj-kondo --config ./.clj-kondo/config.edn --config-dir ./.clj-kondo --parallel --lint",
"./bin/whitespace_lint_staged.sh"
Tom Robinson
committed
},
"browserslist": [
"defaults"
]