295 lines
12 KiB
JSON
295 lines
12 KiB
JSON
{
|
|
"name": "@datalens-ui/opensource",
|
|
"version": "0.0.0",
|
|
"files": [
|
|
"build",
|
|
"scripts"
|
|
],
|
|
"description": "DataLens Opensource",
|
|
"private": true,
|
|
"scripts": {
|
|
"preinstall": "npx only-allow pnpm",
|
|
"deps:global": "pnpm --version | grep -q 10.17.1 && echo 'pnpm@10.17.1 already installed' || npm i -g pnpm@10.17.1",
|
|
"i18n:prepare": "tsc src/i18n/prepare-keysets/index.ts --esModuleInterop --outDir dist/i18n && node dist/i18n/prepare-keysets/index.js",
|
|
"dev": "pnpm run i18n:prepare && SETUP_DEV_ENV_INSTALLATION=opensource node ./scripts/setup-dev-env.js && APP_BUILDER_ENTRY_FILTER=dl-main LOCAL_DEV_PORT=8080 app-builder dev",
|
|
"build": "pnpm run i18n:prepare && NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 APP_BUILDER_CDN=false app-builder build",
|
|
"build:analyze": "pnpm run i18n:prepare && APP_BUILDER_ANALYZE_BUNDLE=statoscope UI_CORE_CDN=false APP_BUILDER_CDN=false NODE_ENV=production NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 app-builder build",
|
|
"cdn": "pnpm run i18n:prepare && NODE_ENV=production NODE_OPTIONS=--max_old_space_size=4096 app-builder build",
|
|
"start": "NODE_ENV=production node dist/server",
|
|
"lint:js:main": "eslint --ignore-pattern 'src/ui/*' '**/*.{js,jsx,ts,tsx}' --quiet",
|
|
"lint:js:ui": "eslint -c src/ui/.ci-eslintrc 'src/ui/**/*.{js,jsx,ts,tsx}' --quiet",
|
|
"lint:styles": "stylelint 'src/ui/**/*.scss'",
|
|
"lint:prettier:src": "prettier --check 'src/**/*.{js,jsx,ts,tsx,json,css,scss}'",
|
|
"lint:prettier:tests": "prettier --check 'tests/**/*.{js,jsx,ts,tsx,json,css,scss}'",
|
|
"lint": "pnpm run lint:prettier:src && pnpm run lint:js:main && pnpm run lint:js:ui && pnpm run lint:styles && pnpm run lint:features",
|
|
"lint:fix": "pnpm run lint:js:main --fix && pnpm run lint:js:ui --fix && pnpm run lint:styles --fix",
|
|
"lint:features": "bash scripts/ci/lint-typecheck/features.sh",
|
|
"typecheck:i18n": "tsc -p src/i18n --noEmit",
|
|
"typecheck:server": "tsc -p src/server --noEmit",
|
|
"typecheck:ui": "tsc -p src/ui --noEmit",
|
|
"typecheck:tests": "cd tests && tsc --noEmit",
|
|
"typecheck": "pnpm run i18n:prepare && pnpm run typecheck:server && pnpm run typecheck:ui && pnpm run typecheck:tests",
|
|
"test:jest": "pnpm run i18n:prepare && jest",
|
|
"test:jestWatch": "pnpm run i18n:prepare && jest --watchAll",
|
|
"platform-tools": "platform-tools",
|
|
"test:install:chromium": "npx playwright install --with-deps chromium",
|
|
"test:e2e": "cd tests && npx playwright test --config=./playwright.config.ts --project=basic",
|
|
"test:e2e:opensource": "cd tests && npx playwright test --config=./playwright.config.ts --project=opensource",
|
|
"test:e2e:us-dump": "./scripts/e2e/us-dump.sh --clear-deleted --clear-e2e --clear-revisions",
|
|
"test:e2e:docker": "cd ./tests && docker compose -f ./docker-compose.e2e.yml down --volumes && docker compose -f ./docker-compose.e2e.yml up --quiet-pull --pull always --build --no-log-prefix --exit-code-from e2e e2e",
|
|
"test:e2e:docker:snapshots": "cd ./tests && docker compose -f ./docker-compose.e2e.yml down --volumes && E2E_TEST_NAME_PATTERN=${E2E_TEST_NAME_PATTERN:-@screenshot} E2E_RETRY_TIMES=0 E2E_MAX_WORKERS=1 E2E_UPDATE_SNAPSHOTS=1 docker compose -f ./docker-compose.e2e.yml up --quiet-pull --pull always --build --no-log-prefix e2e; docker compose -f ./docker-compose.e2e.yml cp e2e:/opt/app/tests/opensource-suites/__screenshots__ ./opensource-suites",
|
|
"test:e2e:docker:report": "cd ./tests && docker compose -f ./docker-compose.e2e.yml cp e2e:/opt/app/tests/artifacts ./artifacts",
|
|
"test:e2e:docker:up": "cd ./tests && docker compose -f ./docker-compose.e2e.yml up --quiet-pull --pull always --build -d ui",
|
|
"test:e2e:docker:up-no-build": "cd ./tests && docker compose -f ./docker-compose.e2e.yml up --no-build --quiet-pull --pull always -d ui",
|
|
"test:e2e:docker:up-no-ui": "cd ./tests && docker compose -f ./docker-compose.e2e.dev.yml up --pull always -d data-api control-api us auth",
|
|
"test:e2e:docker:up-no-ui-no-auth": "cd ./tests && AUTH_TYPE=NONE AUTH_ENABLED=false docker compose -f ./docker-compose.e2e.dev.yml up --pull always -d data-api control-api us",
|
|
"test:e2e:docker:up-nginx": "cd ./tests && docker compose -f ./docker-compose.e2e.nginx.yml up -d nginx",
|
|
"test:e2e:docker:down": "cd ./tests && docker compose -f ./docker-compose.e2e.yml down --volumes",
|
|
"test:e2e:docker:down-nginx": "cd ./tests && docker compose -f ./docker-compose.e2e.nginx.yml down --volumes",
|
|
"test:e2e:docker:logs": "cd ./tests && docker --log-level error compose -f ./docker-compose.e2e.yml logs --no-color",
|
|
"test:e2e:docker:logs-nginx": "cd ./tests && docker --log-level error compose -f ./docker-compose.e2e.nginx.yml logs --no-color",
|
|
"statoscope:validate-diff": "statoscope validate --input input.json --reference reference.json",
|
|
"statoscope:validate": "statoscope validate --input ./dist/public/build/stats.json"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git@github.com:datalens-tech/datalens-ui.git"
|
|
},
|
|
"author": "DataLens Team <https://github.com/datalens-tech>",
|
|
"license": "Apache-2.0",
|
|
"dependencies": {
|
|
"@asteasolutions/zod-to-openapi": "^8.1.0",
|
|
"@braintree/sanitize-url": "^6.0.0",
|
|
"@datalens-tech/ui-sandbox-modules": "^0.36.0",
|
|
"@datalens-tech/xlsx": "^0.20.1",
|
|
"@diplodoc/cut-extension": "^0.7.4",
|
|
"@diplodoc/file-extension": "^0.2.1",
|
|
"@diplodoc/latex-extension": "^1.1.0",
|
|
"@diplodoc/mermaid-extension": "^1.4.0",
|
|
"@diplodoc/tabs-extension": "^3.7.5",
|
|
"@diplodoc/transform": "^4.64.1",
|
|
"@gravity-ui/app-layout": "^2.1.0",
|
|
"@gravity-ui/browserslist-config": "^4.3.0",
|
|
"@gravity-ui/chartkit": "^7.44.0",
|
|
"@gravity-ui/dashkit": "^10.0.0",
|
|
"@gravity-ui/date-utils": "^2.5.6",
|
|
"@gravity-ui/expresskit": "^3.0.2",
|
|
"@gravity-ui/gateway": "^4.10.4",
|
|
"@gravity-ui/i18n": "^1.7.0",
|
|
"@gravity-ui/nodekit": "^2.10.1",
|
|
"@node-rs/crc32": "^1.7.2",
|
|
"ajv": "^8.12.0",
|
|
"axios": "^1.13.2",
|
|
"axios-retry": "^3.9.1",
|
|
"chroma-js": "^3.1.2",
|
|
"clipboard-copy": "^3.2.0",
|
|
"dotenv": "^8.2.0",
|
|
"form-data": "^4.0.0",
|
|
"hashids": "^2.2.1",
|
|
"iconv-lite": "^0.4.24",
|
|
"ioredis": "^4.28.0",
|
|
"ismobilejs": "^1.1.1",
|
|
"js-sha1": "^0.6.0",
|
|
"js-yaml": "^4.1.0",
|
|
"json-fn": "^1.1.1",
|
|
"jsondiffpatch": "^0.6.0",
|
|
"jsonwebtoken": "^9.0.0",
|
|
"katex": "0.16.21",
|
|
"lodash": "^4.17.21",
|
|
"luxon": "^1.28.0",
|
|
"markdown-it-color": "^2.1.1",
|
|
"markdown-it-emoji": "^2.0.2",
|
|
"markdown-it-ins": "^4.0.0",
|
|
"markdown-it-link-attributes": "^4.0.1",
|
|
"markdown-it-mark": "^4.0.0",
|
|
"markdown-it-sub": "^2.0.0",
|
|
"mime": "^1.6.0",
|
|
"moment": "^2.29.4",
|
|
"moment-timezone": "^0.5.34",
|
|
"node-cache": "^5.1.2",
|
|
"object-sizeof": "^2.6.5",
|
|
"p-queue": "^6.6.2",
|
|
"qs": "^6.11.2",
|
|
"querystring": "^0.2.0",
|
|
"quickjs-emscripten": "^0.31.0",
|
|
"react": "^17.0.2",
|
|
"react-dom": "^17.0.2",
|
|
"react-hotkeys-hook": "^4.5.0",
|
|
"react-window": "^1.8.9",
|
|
"request": "^2.88.2",
|
|
"request-ip": "^3.3.0",
|
|
"request-promise-native": "^1.0.9",
|
|
"set-cookie-parser": "^2.7.1",
|
|
"swagger-ui-express": "^5.0.1",
|
|
"uuid": "^9.0.1",
|
|
"workerpool": "^9.1.1",
|
|
"zod": "^4.1.12"
|
|
},
|
|
"devDependencies": {
|
|
"@floating-ui/react": "^0.27.13",
|
|
"@gravity-ui/app-builder": "^0.38.0",
|
|
"@gravity-ui/components": "^4.12.0",
|
|
"@gravity-ui/date-components": "^3.2.3",
|
|
"@gravity-ui/eslint-config": "^3.2.0",
|
|
"@gravity-ui/icons": "^2.16.0",
|
|
"@gravity-ui/markdown-editor": "^15.26.1",
|
|
"@gravity-ui/navigation": "^3.8.0",
|
|
"@gravity-ui/prettier-config": "^1.1.0",
|
|
"@gravity-ui/react-data-table": "^2.1.1",
|
|
"@gravity-ui/sdk": "^1.5.1",
|
|
"@gravity-ui/stylelint-config": "^4.0.1",
|
|
"@gravity-ui/tsconfig": "^1.0.0",
|
|
"@gravity-ui/ui-logger": "^1.1.0",
|
|
"@gravity-ui/uikit": "^7.18.0",
|
|
"@jest/types": "^29.6.3",
|
|
"@microsoft/fetch-event-source": "^2.0.1",
|
|
"@playwright/test": "^1.48.2",
|
|
"@reduxjs/toolkit": "^1.8.3",
|
|
"@statoscope/cli": "^5.28.2",
|
|
"@statoscope/stats-validator-plugin-webpack": "^5.28.2",
|
|
"@statoscope/webpack-ui": "^5.28.2",
|
|
"@stripe/react-stripe-js": "^1.8.1",
|
|
"@stripe/stripe-js": "^1.30.0",
|
|
"@tanstack/react-table": "^8.12.0",
|
|
"@tanstack/react-virtual": "^3.8.1",
|
|
"@testing-library/jest-dom": "^5.16.2",
|
|
"@testing-library/react": "^12.1.4",
|
|
"@types/chroma-js": "^3.1.2",
|
|
"@types/d3-array": "3.2.2",
|
|
"@types/d3-color": "^3.1.3",
|
|
"@types/d3-interpolate": "3.0.4",
|
|
"@types/d3-scale": "4.0.9",
|
|
"@types/d3-selection": "3.0.11",
|
|
"@types/d3-shape": "3.1.8",
|
|
"@types/dompurify": "^3.0.5",
|
|
"@types/express": "^4.17.21",
|
|
"@types/gtag.js": "0.0.10",
|
|
"@types/hashids": "^1.0.32",
|
|
"@types/history": "^4.7.11",
|
|
"@types/http-proxy": "^1.17.10",
|
|
"@types/ioredis": "^4.28.8",
|
|
"@types/jest": "^29.2.5",
|
|
"@types/js-yaml": "^4.0.5",
|
|
"@types/jsonwebtoken": "^9.0.1",
|
|
"@types/lodash": "^4.14.168",
|
|
"@types/luxon": "^1.26.2",
|
|
"@types/markdown-it": "^13.0.7",
|
|
"@types/markdown-it-emoji": "^2.0.2",
|
|
"@types/markdown-it-link-attributes": "^3.0.4",
|
|
"@types/mime": "1.3.5",
|
|
"@types/node": "^20.16.10",
|
|
"@types/qs": "6.9.11",
|
|
"@types/rc-slider": "^8.6.6",
|
|
"@types/react": "^17.0.40",
|
|
"@types/react-dom": "^17.0.13",
|
|
"@types/react-inspector": "^4.0.2",
|
|
"@types/react-redux": "^7.1.16",
|
|
"@types/react-router": "^5.1.11",
|
|
"@types/react-router-dom": "^5.1.7",
|
|
"@types/react-window": "^1.8.5",
|
|
"@types/recompose": "^0.30.7",
|
|
"@types/redux-logger": "^3.0.9",
|
|
"@types/request": "2.48.7",
|
|
"@types/request-ip": "^0.0.41",
|
|
"@types/request-promise-native": "^1.0.21",
|
|
"@types/set-cookie-parser": "^2.4.10",
|
|
"@types/swagger-ui-express": "^4.1.8",
|
|
"@types/testing-library__jest-dom": "^5.14.3",
|
|
"@types/uuid": "^9.0.8",
|
|
"@types/webpack-env": "^1.16.0",
|
|
"bem-cn-lite": "^4.0.0",
|
|
"blueimp-md5": "^2.19.0",
|
|
"classnames": "^2.5.1",
|
|
"cli-color": "2.0.1",
|
|
"colormap": "^2.3.2",
|
|
"copy-to-clipboard": "^3.3.3",
|
|
"core-js": "3.43.0",
|
|
"csstype": "^3.1.3",
|
|
"d3-array": "^3.2.4",
|
|
"d3-color": "^3.1.0",
|
|
"d3-interpolate": "^3.0.1",
|
|
"d3-scale": "^4.0.2",
|
|
"d3-selection": "^3.0.0",
|
|
"d3-shape": "^3.2.0",
|
|
"dompurify": "^3.2.4",
|
|
"eslint": "^8.56.0",
|
|
"highcharts": "^8.2.2",
|
|
"history": "^4.10.1",
|
|
"htmlparser2": "^9.1.0",
|
|
"http-proxy": "^1.18.1",
|
|
"husky": "^8.0.3",
|
|
"immutability-helper": "^3.1.1",
|
|
"jest": "^29.3.1",
|
|
"jest-circus": "^27.5.1",
|
|
"jest-environment-jsdom": "^29.3.1",
|
|
"jest-environment-node": "^29.3.1",
|
|
"jest-html-reporters": "^2.1.2",
|
|
"lint-staged": "^13.2.2",
|
|
"lowlight": "^3.1.0",
|
|
"ml-regression-polynomial": "^3.0.2",
|
|
"mockdate": "^3.0.5",
|
|
"monaco-editor": "^0.36.1",
|
|
"monaco-editor-webpack-plugin": "^7.1.0",
|
|
"playwright-core": "1.48.2",
|
|
"postcss": "^8.4.33",
|
|
"prettier": "^3.2.5",
|
|
"prop-types": "^15.8.0",
|
|
"rc-slider": "^11.1.8",
|
|
"react-dnd": "^10.0.2",
|
|
"react-dnd-html5-backend": "^10.0.2",
|
|
"react-inspector": "^5.1.1",
|
|
"react-intersection-observer": "^9.4.0",
|
|
"react-monaco-editor": "^0.52.0",
|
|
"react-redux": "^7.2.4",
|
|
"react-router": "^5.3.4",
|
|
"react-router-dom": "^5.3.4",
|
|
"react-split-pane": "^0.1.92",
|
|
"react-virtualized-auto-sizer": "1.0.24",
|
|
"react-waypoint": "^10.3.0",
|
|
"recompose": "npm:react-recompose@^0.33.0",
|
|
"redux": "^4.1.1",
|
|
"redux-devtools-extension": "^2.13.9",
|
|
"redux-logger": "^3.0.6",
|
|
"redux-thunk": "^2.3.0",
|
|
"reselect": "^4.1.8",
|
|
"resize-observer-polyfill": "^1.5.1",
|
|
"robust-point-in-polygon": "^1.0.3",
|
|
"stylelint": "^15.11.0",
|
|
"ts-jest": "^29.0.5",
|
|
"ts-node": "^10.9.1",
|
|
"tsconfig-paths": "^3.14.0",
|
|
"typescript": "^5.4.5",
|
|
"url": "^0.11.1",
|
|
"utility-types": "^3.10.0",
|
|
"yup": "^1.6.1"
|
|
},
|
|
"pnpm": {
|
|
"overrides": {
|
|
"react": "^17.0.2",
|
|
"react-dom": "^17.0.2",
|
|
"react-router": "^5.3.4",
|
|
"react-router-dom": "^5.3.4",
|
|
"@gravity-ui/uikit>react-virtualized-auto-sizer": "1.0.24",
|
|
"@gravity-ui/gateway>@grpc/grpc-js": "^1.13.2"
|
|
}
|
|
},
|
|
"deploy": {
|
|
"project": "stat",
|
|
"app": "dx",
|
|
"component": "datalens",
|
|
"workflow": "workflow.json"
|
|
},
|
|
"engines": {
|
|
"pnpm": "10.17.1",
|
|
"node": ">= 20",
|
|
"yarn": "Please use pnpm instead of yarn to install dependencies",
|
|
"npm": "Please use pnpm instead of npm to install dependencies"
|
|
},
|
|
"packageManager": "pnpm@10.17.1",
|
|
"browserslist": [
|
|
"extends @gravity-ui/browserslist-config"
|
|
],
|
|
"optionalDependencies": {
|
|
"fsevents": "^2.3.2"
|
|
}
|
|
} |