mirror of
https://github.com/PostHog/posthog.git
synced 2024-11-24 18:07:17 +01:00
355 lines
16 KiB
JSON
355 lines
16 KiB
JSON
{
|
|
"name": "posthog",
|
|
"description": "",
|
|
"version": "0.0.0",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/posthog/posthog.git"
|
|
},
|
|
"author": "PostHog Inc.",
|
|
"bugs": {
|
|
"url": "https://github.com/posthog/posthog/issues"
|
|
},
|
|
"homepage": "https://github.com/posthog/posthog#readme",
|
|
"license": "MIT",
|
|
"engines": {
|
|
"node": ">=18 <19"
|
|
},
|
|
"packageManager": "pnpm@8.10.5",
|
|
"scripts": {
|
|
"copy-scripts": "mkdir -p frontend/dist/ && ./bin/copy-posthog-js",
|
|
"test": "pnpm test:unit && pnpm test:visual-regression",
|
|
"test:unit": "jest --testPathPattern=frontend/",
|
|
"jest": "jest",
|
|
"test:visual-regression": "rm -rf frontend/__snapshots__/__failures__/ && docker compose -f docker-compose.playwright.yml run --rm -it --build playwright pnpm test:visual-regression:docker",
|
|
"test:visual-regression:docker": "NODE_OPTIONS=--max-old-space-size=6144 test-storybook -u --no-index-json --browsers chromium webkit --url http://host.docker.internal:6006",
|
|
"test:visual-regression:local": "NODE_OPTIONS=--max-old-space-size=6144 test-storybook -u --no-index-json --browsers chromium webkit --url http://localhost:6006",
|
|
"test:visual-regression:ci:update": "test-storybook -u --no-index-json --maxWorkers=2",
|
|
"test:visual-regression:ci:verify": "test-storybook --ci --no-index-json --maxWorkers=2",
|
|
"start": "concurrently -n ESBUILD,TYPEGEN -c yellow,green \"pnpm start-http\" \"pnpm run typegen:watch\"",
|
|
"start-http": "pnpm clean && pnpm copy-scripts && node frontend/build.mjs --dev",
|
|
"start-docker": "pnpm start-http --host 0.0.0.0",
|
|
"clean": "rm -rf frontend/dist && mkdir frontend/dist",
|
|
"build": "pnpm copy-scripts && pnpm build:esbuild",
|
|
"build:esbuild": "node frontend/build.mjs",
|
|
"schema:build": "pnpm run schema:build:json && pnpm run schema:build:python",
|
|
"schema:build:json": "ts-node bin/build-schema.mjs && prettier --write frontend/src/queries/schema.json",
|
|
"schema:build:python": "datamodel-codegen --class-name='SchemaRoot' --collapse-root-models --target-python-version 3.10 --disable-timestamp --use-one-literal-as-default --use-default --use-default-kwarg --use-subclass-enum --input frontend/src/queries/schema.json --input-file-type jsonschema --output posthog/schema.py --output-model-type pydantic_v2.BaseModel && ruff format posthog/schema.py",
|
|
"grammar:build": "npm run grammar:build:python && npm run grammar:build:cpp",
|
|
"grammar:build:python": "cd posthog/hogql/grammar && antlr -Dlanguage=Python3 HogQLLexer.g4 && antlr -visitor -no-listener -Dlanguage=Python3 HogQLParser.g4",
|
|
"grammar:build:cpp": "cd posthog/hogql/grammar && antlr -o ../../../hogql_parser -Dlanguage=Cpp HogQLLexer.g4 && antlr -o ../../../hogql_parser -visitor -no-listener -Dlanguage=Cpp HogQLParser.g4",
|
|
"packages:build": "pnpm packages:build:apps-common && pnpm packages:build:lemon-ui",
|
|
"packages:build:apps-common": "cd frontend/@posthog/apps-common && pnpm i && pnpm build",
|
|
"packages:build:lemon-ui": "cd frontend/@posthog/lemon-ui && pnpm i && pnpm build",
|
|
"editor:update-tsd": "pnpm packages:build && node frontend/editor-update-tsd.mjs",
|
|
"prettier": "prettier --write \"./**/*.{js,mjs,ts,tsx,json,yaml,yml,css,scss}\"",
|
|
"prettier:check": "prettier --check \"frontend/**/*.{js,mjs,ts,tsx,json,yaml,yml,css,scss}\"",
|
|
"typescript:check": "tsc --noEmit && echo \"No errors reported by tsc.\"",
|
|
"lint:js": "eslint frontend/src",
|
|
"lint:css": "stylelint \"frontend/**/*.{css,scss}\"",
|
|
"format:backend": "ruff --exclude posthog/hogql/grammar .",
|
|
"format:frontend": "pnpm lint:js --fix && pnpm lint:css --fix && pnpm prettier",
|
|
"format": "pnpm format:backend && pnpm format:frontend",
|
|
"typegen:write": "kea-typegen write --delete --show-ts-errors",
|
|
"typegen:check": "kea-typegen check",
|
|
"typegen:watch": "kea-typegen watch --delete --show-ts-errors",
|
|
"typegen:clean": "find frontend/src -type f -name '*Type.ts' -delete",
|
|
"storybook": "storybook dev -p 6006",
|
|
"build-storybook": "storybook build",
|
|
"dev:migrate:postgres": "export DEBUG=1 && source env/bin/activate && python manage.py migrate",
|
|
"dev:migrate:clickhouse": "export DEBUG=1 && source env/bin/activate && python manage.py migrate_clickhouse",
|
|
"prepare": "husky install",
|
|
"mobile-replay:web:schema:build:json": "ts-json-schema-generator -f tsconfig.json --path 'node_modules/@rrweb/types/dist/index.d.ts' --type 'eventWithTime' --expose all --no-top-ref --out ee/frontend/mobile-replay/schema/web/rr-web-schema.json && prettier --write ee/frontend/mobile-replay/schema/web/rr-web-schema.json",
|
|
"mobile-replay:mobile:schema:build:json": "ts-json-schema-generator -f tsconfig.json --path 'ee/frontend/mobile-replay/mobile.types.ts' --type 'mobileEventWithTime' --expose all --no-top-ref --out ee/frontend/mobile-replay/schema/mobile/rr-mobile-schema.json && prettier --write ee/frontend/mobile-replay/schema/mobile/rr-mobile-schema.json",
|
|
"mobile-replay:schema:build:json": "pnpm mobile-replay:web:schema:build:json && pnpm mobile-replay:mobile:schema:build:json",
|
|
"visualize-toolbar-bundle": "pnpm exec esbuild-visualizer --metadata ./toolbar-esbuild-meta.json --filename=toolbar-esbuild-bundle-visualization.html"
|
|
},
|
|
"dependencies": {
|
|
"@ant-design/icons": "^4.7.0",
|
|
"@dnd-kit/core": "^6.0.8",
|
|
"@dnd-kit/modifiers": "^6.0.1",
|
|
"@dnd-kit/sortable": "^7.0.2",
|
|
"@dnd-kit/utilities": "^3.2.1",
|
|
"@floating-ui/react": "^0.16.0",
|
|
"@lottiefiles/react-lottie-player": "^3.4.7",
|
|
"@medv/finder": "^3.1.0",
|
|
"@microlink/react-json-view": "^1.21.3",
|
|
"@monaco-editor/react": "4.4.6",
|
|
"@posthog/icons": "0.5.1",
|
|
"@posthog/plugin-scaffold": "^1.4.4",
|
|
"@react-hook/size": "^2.1.2",
|
|
"@rrweb/types": "2.0.0-alpha.11",
|
|
"@sentry/react": "7.22.0",
|
|
"@tailwindcss/container-queries": "^0.1.1",
|
|
"@testing-library/dom": ">=7.21.4",
|
|
"@tiptap/core": "^2.1.16",
|
|
"@tiptap/extension-document": "^2.1.16",
|
|
"@tiptap/extension-floating-menu": "^2.1.16",
|
|
"@tiptap/extension-placeholder": "^2.1.16",
|
|
"@tiptap/extension-task-item": "^2.1.16",
|
|
"@tiptap/extension-task-list": "^2.1.16",
|
|
"@tiptap/pm": "^2.1.16",
|
|
"@tiptap/react": "^2.1.16",
|
|
"@tiptap/starter-kit": "^2.1.16",
|
|
"@tiptap/suggestion": "^2.1.16",
|
|
"@types/md5": "^2.3.0",
|
|
"@types/react-transition-group": "^4.4.5",
|
|
"@types/react-virtualized": "^9.21.23",
|
|
"ajv": "^8.12.0",
|
|
"antd": "^4.17.1",
|
|
"antd-dayjs-webpack-plugin": "^1.0.6",
|
|
"autoprefixer": "^10.4.13",
|
|
"babel-preset-nano-react-app": "^0.1.0",
|
|
"chart.js": "^3.9.1",
|
|
"chartjs-adapter-dayjs-3": "^1.2.3",
|
|
"chartjs-plugin-annotation": "2.2.1",
|
|
"chartjs-plugin-crosshair": "^1.2.0",
|
|
"chartjs-plugin-datalabels": "^2.2.0",
|
|
"chartjs-plugin-stacked100": "^1.4.0",
|
|
"chokidar": "^3.5.3",
|
|
"clsx": "^1.1.1",
|
|
"core-js": "^3.32.0",
|
|
"cors": "^2.8.5",
|
|
"cssnano": "^6.0.3",
|
|
"d3": "^7.8.2",
|
|
"d3-sankey": "^0.12.3",
|
|
"dayjs": "^1.10.7",
|
|
"dompurify": "^3.0.6",
|
|
"esbuild": "^0.19.8",
|
|
"esbuild-plugin-less": "^1.3.1",
|
|
"esbuild-sass-plugin": "^3.0.0",
|
|
"expr-eval": "^2.0.2",
|
|
"express": "^4.17.1",
|
|
"fast-deep-equal": "^3.1.3",
|
|
"fflate": "^0.7.4",
|
|
"fs-extra": "^10.0.0",
|
|
"fuse.js": "^6.6.2",
|
|
"husky": "^7.0.4",
|
|
"image-blob-reduce": "^4.1.0",
|
|
"kea": "^3.1.5",
|
|
"kea-forms": "^3.0.3",
|
|
"kea-loaders": "^3.0.0",
|
|
"kea-localstorage": "^3.1.0",
|
|
"kea-router": "^3.1.4",
|
|
"kea-subscriptions": "^3.0.0",
|
|
"kea-test-utils": "^0.2.4",
|
|
"kea-waitfor": "^0.2.1",
|
|
"kea-window-values": "^3.0.0",
|
|
"maplibre-gl": "^3.5.1",
|
|
"md5": "^2.3.0",
|
|
"monaco-editor": "^0.39.0",
|
|
"papaparse": "^5.4.1",
|
|
"pmtiles": "^2.11.0",
|
|
"postcss": "^8.4.31",
|
|
"postcss-preset-env": "^9.3.0",
|
|
"posthog-js": "1.106.3",
|
|
"posthog-js-lite": "2.5.0",
|
|
"prettier": "^2.8.8",
|
|
"prop-types": "^15.7.2",
|
|
"protomaps-themes-base": "2.0.0-alpha.1",
|
|
"query-selector-shadow-dom": "^1.0.0",
|
|
"rc-field-form": "~1.21.0",
|
|
"rc-picker": "~2.5.17",
|
|
"rc-select": "~13.1.0-alpha.0",
|
|
"rc-table": "~7.19.0",
|
|
"rc-trigger": "^5.2.5",
|
|
"react": "^18.2.0",
|
|
"react-dom": "^18.2.0",
|
|
"react-draggable": "^4.2.0",
|
|
"react-grid-layout": "^1.3.0",
|
|
"react-intersection-observer": "^9.5.3",
|
|
"react-markdown": "^5.0.3",
|
|
"react-modal": "^3.15.1",
|
|
"react-resizable": "^3.0.5",
|
|
"react-shadow": "^20.3.0",
|
|
"react-syntax-highlighter": "^15.5.0",
|
|
"react-textarea-autosize": "^8.3.3",
|
|
"react-toastify": "^8.2.0",
|
|
"react-transition-group": "^4.4.5",
|
|
"react-virtualized": "^9.22.5",
|
|
"require-from-string": "^2.0.2",
|
|
"resize-observer-polyfill": "^1.5.1",
|
|
"rrweb": "2.0.0-alpha.11",
|
|
"sass": "^1.26.2",
|
|
"tailwindcss": "^3.4.0",
|
|
"use-debounce": "^9.0.3",
|
|
"use-resize-observer": "^8.0.0",
|
|
"zxcvbn": "^4.4.2"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/core": "^7.22.10",
|
|
"@babel/plugin-proposal-class-properties": "^7.18.6",
|
|
"@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6",
|
|
"@babel/plugin-proposal-private-property-in-object": "^7.21.11",
|
|
"@babel/plugin-transform-react-jsx": "^7.22.5",
|
|
"@babel/plugin-transform-runtime": "^7.22.10",
|
|
"@babel/preset-env": "^7.22.10",
|
|
"@babel/preset-react": "^7.22.5",
|
|
"@babel/preset-typescript": "^7.22.5",
|
|
"@babel/runtime": "^7.22.10",
|
|
"@cypress/webpack-preprocessor": "^5.17.1",
|
|
"@playwright/test": "1.41.2",
|
|
"@sentry/types": "7.22.0",
|
|
"@storybook/addon-a11y": "^7.6.4",
|
|
"@storybook/addon-actions": "^7.6.4",
|
|
"@storybook/addon-essentials": "^7.6.4",
|
|
"@storybook/addon-links": "^7.6.4",
|
|
"@storybook/addon-storysource": "^7.6.4",
|
|
"@storybook/addons": "^7.6.4",
|
|
"@storybook/api": "^7.6.4",
|
|
"@storybook/blocks": "^7.6.4",
|
|
"@storybook/components": "^7.6.4",
|
|
"@storybook/core-events": "^7.6.4",
|
|
"@storybook/csf": "^0.1.2",
|
|
"@storybook/react": "^7.6.4",
|
|
"@storybook/react-webpack5": "^7.6.4",
|
|
"@storybook/test-runner": "^0.16.0",
|
|
"@storybook/theming": "^7.6.4",
|
|
"@storybook/types": "^7.6.4",
|
|
"@sucrase/jest-plugin": "^3.0.0",
|
|
"@testing-library/dom": ">=7.21.4",
|
|
"@testing-library/jest-dom": "^5.16.2",
|
|
"@testing-library/react": "^13.4.0",
|
|
"@testing-library/react-hooks": "^8.0.1",
|
|
"@testing-library/user-event": "^13.5.0",
|
|
"@types/chartjs-plugin-crosshair": "^1.1.1",
|
|
"@types/clone": "^2.1.1",
|
|
"@types/d3": "^7.4.0",
|
|
"@types/d3-sankey": "^0.12.1",
|
|
"@types/dompurify": "^3.0.3",
|
|
"@types/image-blob-reduce": "^4.1.1",
|
|
"@types/jest": "^29.2.3",
|
|
"@types/jest-image-snapshot": "^6.1.0",
|
|
"@types/md5": "^2.3.0",
|
|
"@types/node": "^18.11.9",
|
|
"@types/papaparse": "^5.3.8",
|
|
"@types/pixelmatch": "^5.2.4",
|
|
"@types/pngjs": "^6.0.1",
|
|
"@types/query-selector-shadow-dom": "^1.0.0",
|
|
"@types/react": "^17.0.39",
|
|
"@types/react-dom": "^18.2.8",
|
|
"@types/react-grid-layout": "^1.1.2",
|
|
"@types/react-modal": "^3.13.1",
|
|
"@types/react-resizable": "^3.0.4",
|
|
"@types/react-syntax-highlighter": "^15.5.7",
|
|
"@types/react-virtualized": "^9.21.23",
|
|
"@types/testing-library__jest-dom": "^5.14.5",
|
|
"@types/zxcvbn": "^4.4.0",
|
|
"@typescript-eslint/eslint-plugin": "^6.9.0",
|
|
"@typescript-eslint/parser": "^6.9.0",
|
|
"axe-core": "^4.4.3",
|
|
"babel-loader": "^8.0.6",
|
|
"babel-plugin-import": "^1.13.0",
|
|
"concurrently": "^5.3.0",
|
|
"css-loader": "^3.4.2",
|
|
"cypress": "^13.3.0",
|
|
"cypress-axe": "^1.5.0",
|
|
"cypress-terminal-report": "^5.3.7",
|
|
"esbuild-visualizer": "^0.6.0",
|
|
"eslint": "^8.52.0",
|
|
"eslint-config-prettier": "^9.0.0",
|
|
"eslint-plugin-compat": "^4.2.0",
|
|
"eslint-plugin-cypress": "^2.15.1",
|
|
"eslint-plugin-eslint-comments": "^3.2.0",
|
|
"eslint-plugin-import": "^2.29.0",
|
|
"eslint-plugin-jest": "^27.4.3",
|
|
"eslint-plugin-no-only-tests": "^3.1.0",
|
|
"eslint-plugin-posthog": "link:./eslint-rules",
|
|
"eslint-plugin-prettier": "^5.0.1",
|
|
"eslint-plugin-react": "^7.33.2",
|
|
"eslint-plugin-simple-import-sort": "^10.0.0",
|
|
"eslint-plugin-storybook": "^0.6.15",
|
|
"file-loader": "^6.1.0",
|
|
"givens": "^1.3.6",
|
|
"history": "^5.0.1",
|
|
"html-webpack-harddisk-plugin": "^2.0.0",
|
|
"html-webpack-plugin": "^5.5.3",
|
|
"jest": "^29.7.0",
|
|
"jest-canvas-mock": "^2.4.0",
|
|
"jest-environment-jsdom": "^29.3.1",
|
|
"jest-image-snapshot": "^6.1.0",
|
|
"kea-typegen": "^3.3.0",
|
|
"less": "^3.12.2",
|
|
"less-loader": "^7.0.2",
|
|
"lint-staged": "~10.2.13",
|
|
"mockdate": "^3.0.5",
|
|
"monaco-editor-webpack-plugin": "^7.0.1",
|
|
"msw": "^0.49.0",
|
|
"path-browserify": "^1.0.1",
|
|
"pixelmatch": "^5.3.0",
|
|
"pngjs": "^6.0.0",
|
|
"postcss-loader": "^4.3.0",
|
|
"process": "^0.11.10",
|
|
"raw-loader": "^4.0.2",
|
|
"redis": "^4.6.13",
|
|
"safe-stable-stringify": "^2.4.3",
|
|
"sass-loader": "^10.0.1",
|
|
"storybook": "^7.6.4",
|
|
"storybook-addon-pseudo-states": "2.1.2",
|
|
"style-loader": "^2.0.0",
|
|
"stylelint": "^15.11.0",
|
|
"stylelint-config-recess-order": "^4.3.0",
|
|
"stylelint-config-standard-scss": "^11.1.0",
|
|
"stylelint-order": "^6.0.3",
|
|
"sucrase": "^3.29.0",
|
|
"timekeeper": "^2.2.0",
|
|
"ts-json-schema-generator": "^1.5.0",
|
|
"ts-node": "^10.9.1",
|
|
"typescript": "~4.9.5",
|
|
"webpack": "^5.88.2",
|
|
"webpack-cli": "^5.1.4",
|
|
"whatwg-fetch": "^3.6.2"
|
|
},
|
|
"optionalDependencies": {
|
|
"fsevents": "^2.3.2"
|
|
},
|
|
"pnpm": {
|
|
"overrides": {
|
|
"playwright": "1.41.2"
|
|
},
|
|
"patchedDependencies": {
|
|
"rrweb@2.0.0-alpha.11": "patches/rrweb@2.0.0-alpha.11.patch"
|
|
}
|
|
},
|
|
"lint-staged": {
|
|
"*.{json,yaml,yml}": "prettier --write",
|
|
"*.{css,scss}": [
|
|
"stylelint --fix",
|
|
"prettier --write"
|
|
],
|
|
"frontend/src/**/*.{js,jsx,mjs,ts,tsx}": [
|
|
"eslint -c .eslintrc.js --fix",
|
|
"prettier --write"
|
|
],
|
|
"frontend/*.mjs": [
|
|
"eslint -c .eslintrc.js --fix",
|
|
"prettier --write"
|
|
],
|
|
"ee/frontend/**/*.{js,jsx,mjs,ts,tsx}": [
|
|
"eslint -c .eslintrc.js --fix",
|
|
"prettier --write"
|
|
],
|
|
"plugin-server/**/*.{js,jsx,mjs,ts,tsx}": [
|
|
"pnpm --dir plugin-server exec eslint --fix",
|
|
"pnpm --dir plugin-server exec prettier --write"
|
|
],
|
|
"!(posthog/hogql/grammar/*)*.{py,pyi}": [
|
|
"ruff format",
|
|
"ruff check --fix"
|
|
]
|
|
},
|
|
"browserslist": {
|
|
"development": [
|
|
"last 2 chrome versions",
|
|
"last 2 firefox versions",
|
|
"last 2 edge versions"
|
|
],
|
|
"production": [
|
|
"defaults and not not op_mini all"
|
|
]
|
|
},
|
|
"browser": {
|
|
"path": "path-browserify"
|
|
}
|
|
}
|