{ "name": "appsmith", "version": "0.1.0", "private": true, "exports": { "./lib/*": "./lib/*.js" }, "engines": { "node": "^20.11.1", "yarn": "^3.5.1" }, "packageManager": "yarn@3.5.1", "workspaces": [ "packages/**", "!packages/**/build" ], "scripts": { "start": "BROWSER=none REACT_APP_ENVIRONMENT=DEVELOPMENT REACT_APP_CLIENT_LOG_LEVEL=debug node --max_old_space_size=4096 scripts/start.js", "build": "./build.sh", "build-airgap": "node download-assets.js && ./build.sh", "test": "CYPRESS_BASE_URL=https://dev.appsmith.com cypress/test.sh", "test:ci": "CYPRESS_BASE_URL=https://dev.appsmith.com cypress/test.sh --env=ci", "start-prod": "REACT_APP_ENVIRONMENT=PRODUCTION node scripts/start.js", "cytest": "BROWSER=none REACT_APP_TESTING=TESTING REACT_APP_ENVIRONMENT=DEVELOPMENT node scripts/start.js & ./node_modules/.bin/cypress open", "test:unit": "yarn g:jest --coverage --collectCoverage=true --coverageDirectory='../../' --coverageReporters='json-summary'", "test:jest": "jest --watch", "g:jest": "cd $INIT_CWD && jest --colors --no-cache --silent --maxWorkers=50%", "test:unit:ci": "yarn workspaces foreach -tv run test:unit", "generate:widget": "plop --plopfile generators/index.js", "postinstall": "node cypress/apply-patches.js && yarn init-husky", "storybook": "yarn workspace @design-system/storybook storybook", "lint": "eslint --cache ./src && cd ./cypress && eslint -c .eslintrc.json --cache ./", "g:lint": "cd $INIT_CWD && eslint --cache .", "lint:ci": "yarn workspaces foreach -ptv run lint", "prettier": "prettier --check ./src && prettier --check ./cypress", "g:prettier": "cd $INIT_CWD && prettier --check .", "prettier:ci": "yarn workspaces foreach -ptv run prettier", "check-types": "yarn tsc --noEmit", "init-husky": "cd ../.. && husky install app/client/.husky", "clean:workspaces": "yarn workspaces foreach -pAv exec rm -rf node_modules", "cypress:snapshot": "npx cypress run -b chromium -s", "cypress:snapshot:docker": "docker run --network='host' -it --rm -e CYPRESS_$1 -v $PWD:/cypress -w /cypress cypress-snapshot $0", "cypress:snapshot:docker:build": "docker build . -f cypress/Dockerfile -t cypress-snapshot" }, "dependencies": { "@appsmith/ads": "workspace:^", "@appsmith/ads-old": "workspace:^", "@appsmith/utils": "workspace:^", "@appsmith/wds": "workspace:^", "@appsmith/wds-headless": "workspace:^", "@appsmith/wds-theming": "workspace:^", "@aws-sdk/client-s3": "^3.622.0", "@aws-sdk/lib-storage": "^3.622.0", "@blueprintjs/core": "^3.43.0", "@blueprintjs/datetime": "^3.23.6", "@blueprintjs/icons": "3.22.0", "@blueprintjs/popover2": "^0.5.0", "@blueprintjs/select": "^3.10.0", "@design-system/widgets-old": "workspace:^", "@floating-ui/dom": "^1.6.4", "@floating-ui/react": "^0.26.24", "@github/g-emoji-element": "^1.1.5", "@googlemaps/markerclusterer": "^2.0.14", "@googlemaps/react-wrapper": "^1.1.35", "@grafana/faro-react": "^1.12.2", "@grafana/faro-web-tracing": "^1.12.2", "@manaflair/redux-batch": "^1.0.0", "@mantine/hooks": "^5.10.1", "@opentelemetry/api": "^1.9.0", "@opentelemetry/context-zone": "^1.30.0", "@opentelemetry/core": "^1.30.0", "@opentelemetry/exporter-trace-otlp-http": "^0.57.0", "@opentelemetry/instrumentation": "^0.57.0", "@opentelemetry/resources": "^1.30.0", "@opentelemetry/sdk-trace-base": "^1.30.0", "@opentelemetry/sdk-trace-web": "^1.30.0", "@opentelemetry/semantic-conventions": "^1.28.0", "@react-spring/web": "^9.7.4", "@react-types/shared": "^3.23.0", "@redux-saga/core": "1.1.3", "@redux-saga/types": "1.2.1", "@reduxjs/toolkit": "^2.4.0", "@segment/analytics-next": "^1.76.0", "@sentry/react": "^7.120.3", "@sentry/utils": "^7.120.3", "@shared/ast": "workspace:^", "@shared/dsl": "workspace:^", "@svgr/webpack": "^5.5.0", "@tanstack/virtual-core": "^3.0.0-beta.18", "@tinymce/tinymce-react": "^6.0.0", "@types/babel__standalone": "^7.1.7", "@types/d3-geo": "^3.1.0", "@types/google.maps": "^3.51.0", "@types/react-page-visibility": "^6.4.1", "@types/react-window-infinite-loader": "^1.0.9", "@types/web": "^0.0.99", "@uppy/core": "^1.16.0", "@uppy/dashboard": "^1.16.0", "@uppy/google-drive": "^1.5.22", "@uppy/image-editor": "^0.2.4", "@uppy/onedrive": "^1.1.22", "@uppy/react": "^1.11.2", "@uppy/url": "^1.5.16", "@uppy/utils": "^6.0.2", "@uppy/webcam": "^1.8.4", "@welldone-software/why-did-you-render": "^4.2.5", "acorn": "8.10.0", "acorn-walk": "8.2.0", "appsmith-icons": "workspace:^", "assert-never": "^1.2.1", "astring": "^1.7.5", "async-mutex": "^0.5.0", "axios": "^1.8.3", "bfj": "^7.0.2", "camelcase": "^6.2.1", "classnames": "^2.3.1", "clsx": "^1.2.1", "codemirror": "^5.65.13", "codemirror-graphql": "^1.2.14", "colorjs.io": "^0.5.2", "copy-to-clipboard": "^3.3.1", "core-js": "^3.9.1", "cypress-log-to-output": "^1.1.2", "cypress-repeat-pro": "^1.0.9", "d3-geo": "^3.1.0", "date-fns": "^4.1.0", "dayjs": "^1.10.6", "deep-diff": "^1.0.2", "downloadjs": "^1.4.7", "echarts": "^5.4.2", "fast-deep-equal": "^3.1.3", "fast-sort": "^3.4.0", "fastdom": "^1.0.11", "focus-trap-react": "^8.9.2", "fuse.js": "^3.4.5", "fusioncharts": "^3.18.0", "graphql": "^16.8.1", "history": "^4.10.1", "interweave": "^12.7.2", "interweave-autolink": "^4.4.2", "js-regex-pl": "^1.0.1", "js-sha256": "^0.9.0", "jshint": "^2.13.4", "klona": "^2.0.5", "libphonenumber-js": "^1.9.44", "linkedom": "^0.14.20", "localforage": "^1.7.3", "lodash": ">=4.17.21", "lodash-es": "4.17.21", "loglevel": "^1.7.1", "lottie-web": "^5.7.4", "mammoth": "^1.5.1", "memoize-one": "^6.0.0", "micro-memoize": "^4.0.10", "microdiff": "^1.4.0", "mixpanel-browser": "^2.55.1", "moment": "2.29.4", "moment-timezone": "^0.5.35", "mutative": "^1.1.0", "nanoid": "3.3.11", "node-forge": "^1.3.0", "object-hash": "^3.0.0", "openai": "4.87.3", "path-to-regexp": "^6.3.0", "pluralize": "^8.0.0", "popper.js": "^1.15.0", "prismjs": "^1.30.0", "prompts": "^2.4.2", "proxy-memoize": "^1.2.0", "rc-pagination": "^3.1.3", "rc-select": "^14.1.9", "rc-tree-select": "^5.4.0", "react": "^17.0.2", "react-app-polyfill": "^3.0.0", "react-append-to-body": "^2.0.26", "react-custom-scrollbars": "^4.2.1", "react-dev-utils": "^12.0.1", "react-device-detect": "^2.2.2", "react-dnd": "^14.0.5", "react-dnd-html5-backend": "^14.1.0", "react-documents": "^1.0.4", "react-dom": "^17.0.2", "react-full-screen": "^1.1.0", "react-google-recaptcha": "^2.1.0", "react-helmet": "^5.2.1", "react-hook-form": "^7.28.0", "react-json-view": "^1.21.3", "react-media-recorder": "^1.6.1", "react-modal": "^3.15.1", "react-page-visibility": "^7.0.0", "react-player": "^2.3.1", "react-qr-barcode-scanner": "^1.0.6", "react-rating": "^2.0.5", "react-redux": "^7.2.4", "react-refresh": "^0.11.0", "react-responsive": "^9.0.0-beta.3", "react-router": "^5.1.2", "react-router-dom": "^5.1.2", "react-spring": "^9.4.0", "react-table": "^7.0.0", "react-table-sticky": "^1.1.3", "react-tabs": "^3.0.0", "react-timer-hook": "^3.0.4", "react-use-gesture": "^7.0.4", "react-virtuoso": "^4.5.0", "react-webcam": "^7.0.1", "react-window": "^1.8.6", "react-window-infinite-loader": "^1.0.10", "react-zoom-pan-pinch": "^1.6.1", "redux": "^4.0.1", "redux-form": "^8.2.6", "redux-saga": "^1.1.3", "remixicon-react": "^1.0.0", "reselect": "^4.0.0", "resize-observer-polyfill": "^1.5.1", "sass": "^1.70.0", "scroll-into-view-if-needed": "^2.2.26", "semver": "^7.3.5", "shallowequal": "^1.1.0", "sheetjs": "^2.0.0", "showdown": "^1.9.1", "simplebar-react": "^2.4.3", "smartlook-client": "^8.0.0", "sql-formatter": "12.2.0", "styled-components": "^5.3.6", "tailwindcss": "^3.3.3", "tern": "^0.21.0", "tinycolor2": "^1.4.2", "tinymce": "6.8.3", "toposort": "^2.0.2", "tslib": "^2.3.1", "typescript": "^5.5.4", "unescape-js": "^1.1.4", "url-search-params-polyfill": "^8.0.0", "usehooks-ts": "^3.1.0", "uuid": "^9.0.0", "validate-color": "^2.2.4", "web-vitals": "3.5.2", "yjs": "^13.5.12", "zipcelx": "^1.6.2" }, "browserslist": [ ">0.2%", "not dead", "not ie <= 11", "not op_mini all" ], "devDependencies": { "@appsmith/eslint-plugin": "workspace:^", "@babel/core": "^7.26.10", "@babel/standalone": "^7.26.10", "@cypress/grep": "^4.0.1", "@faker-js/faker": "^7.4.0", "@grafana/faro-webpack-plugin": "^0.2.1", "@octokit/rest": "^20.0.1", "@peculiar/webcrypto": "^1.4.3", "@pmmmwh/react-refresh-webpack-plugin": "^0.5.3", "@simonsmith/cypress-image-snapshot": "^9.1.0", "@testing-library/jest-dom": "5.16.1", "@testing-library/react": "12.1.2", "@testing-library/react-hooks": "^8.0.1", "@testing-library/user-event": "13.5.0", "@types/codemirror": "^0.0.96", "@types/deep-diff": "^1.0.0", "@types/dom-view-transitions": "^1.0.5", "@types/downloadjs": "^1.4.2", "@types/estree": "^1.0.6", "@types/jest": "^29.5.3", "@types/jshint": "^2.12.0", "@types/lodash": "^4.14.120", "@types/mixpanel-browser": "^2.50.1", "@types/moment-timezone": "^0.5.10", "@types/node": "^10.12.18", "@types/node-fetch": "^2.6.11", "@types/node-forge": "^0.10.0", "@types/object-hash": "^2.2.1", "@types/pluralize": "^0.0.33", "@types/prismjs": "^1.16.1", "@types/react": "^17.0.2", "@types/react-custom-scrollbars": "^4.0.7", "@types/react-dom": "^17.0.2", "@types/react-google-recaptcha": "^2.1.1", "@types/react-helmet": "^5.0.14", "@types/react-modal": "^3.13.1", "@types/react-redux": "^7.0.1", "@types/react-router-dom": "^5.1.2", "@types/react-table": "^7.0.13", "@types/react-tabs": "^2.3.1", "@types/react-test-renderer": "^17.0.1", "@types/react-window": "^1.8.2", "@types/redux-form": "^8.1.9", "@types/redux-mock-store": "^1.0.2", "@types/shallowequal": "^1.1.5", "@types/showdown": "^1.9.4", "@types/styled-components": "^5.1.26", "@types/tern": "0.22.0", "@types/tinycolor2": "^1.4.2", "@types/toposort": "^2.0.3", "@types/uuid": "^9.0.5", "@types/zipcelx": "^1.5.0", "@typescript-eslint/eslint-plugin": "^6.7.4", "@typescript-eslint/parser": "^6.7.4", "babel-jest": "^27.4.2", "babel-loader": "^8.2.3", "babel-plugin-lodash": "^3.3.4", "babel-plugin-module-resolver": "^4.1.0", "babel-plugin-named-asset-import": "^0.3.8", "babel-preset-react-app": "^10.0.1", "browserslist": "^4.24.4", "case-sensitive-paths-webpack-plugin": "^2.4.0", "chalk": "^4.1.1", "compression-webpack-plugin": "^11.1.0", "css-loader": "^6.5.1", "css-minimizer-webpack-plugin": "^3.2.0", "cy-verify-downloads": "^0.0.5", "cypress": "13.13.0", "cypress-file-upload": "^4.1.1", "cypress-mochawesome-reporter": "^3.5.1", "cypress-multi-reporters": "^1.2.4", "cypress-network-idle": "^1.14.2", "cypress-plugin-tab": "^1.0.5", "cypress-real-events": "^1.8.1", "cypress-tags": "^1.1.2", "cypress-terminal-report": "^5.3.6", "cypress-wait-until": "^1.7.2", "cypress-xpath": "^1.6.0", "diff": "^5.0.0", "dotenv": "^10.0.0", "dotenv-expand": "^5.1.0", "eslint": "^8.51.0", "eslint-config-prettier": "^9.0.0", "eslint-config-react-app": "^7.0.1", "eslint-import-resolver-babel-module": "^5.3.2", "eslint-linter-browserify": "^9.15.0", "eslint-plugin-cypress": "^2.15.1", "eslint-plugin-jest": "^27.4.2", "eslint-plugin-prettier": "^5.0.0", "eslint-plugin-react": "^7.33.2", "eslint-plugin-react-compiler": "beta", "eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-react-perf": "^3.3.2", "eslint-plugin-sort-destructure-keys": "^1.5.0", "eslint-plugin-storybook": "^0.6.15", "eslint-plugin-testing-library": "^6.2.0", "eslint-webpack-plugin": "^3.1.1", "factory.ts": "^0.5.1", "file-loader": "^6.2.0", "fs-extra": "^10.0.0", "html-webpack-plugin": "^5.5.0", "husky": "^8.0.0", "identity-obj-proxy": "^3.0.0", "jest": "^29.6.1", "jest-canvas-mock": "^2.3.1", "jest-environment-jsdom": "^29.6.1", "jest-resolve": "^27.4.2", "jest-styled-components": "^7.0.8", "jest-watch-typeahead": "^1.0.0", "json5": "^2.2.3", "knip": "^5.30.2", "lint-staged": "^14.0.1", "mini-css-extract-plugin": "^2.4.5", "msw": "^0.28.0", "pg": "^8.11.3", "plop": "^3.1.1", "postcss": "8.4.31", "postcss-at-rules-variables": "^0.3.0", "postcss-each": "^1.1.0", "postcss-flexbugs-fixes": "^5.0.2", "postcss-import": "^15.1.0", "postcss-loader": "^6.2.1", "postcss-modules-values": "^4.0.0", "postcss-nesting": "^12.0.1", "postcss-normalize": "^10.0.1", "postcss-preset-env": "^7.0.1", "postcss-url": "^10.1.3", "prettier": "3.2.5", "prop-types": "^15.8.1", "raw-loader": "^4.0.2", "react-is": "^16.12.0", "react-test-renderer": "^16.11.0", "redux-devtools-extension": "^2.13.8", "redux-mock-store": "^1.5.4", "redux-saga-test-plan": "^4.0.6", "resolve": "^1.20.0", "resolve-url-loader": "^4.0.0", "sass-loader": "^12.3.0", "source-map-loader": "^3.0.0", "style-loader": "^3.3.1", "terser-webpack-plugin": "^5.2.5", "ts-jest": "^29.1.0", "ts-jest-mock-import-meta": "^0.12.0", "ts-node": "^10.9.1", "webpack": "^5.98.0", "webpack-dev-server": "5.2.2", "webpack-manifest-plugin": "^4.0.2", "webpack-retry-chunk-load-plugin": "^3.1.1", "workbox-webpack-plugin": "^7.3.0", "xlsx": "https://cdn.sheetjs.com/xlsx-0.19.3/xlsx-0.19.3.tgz" }, "resolutions": { "cookie": "0.7.0", "browserslist": "4.24.4", "chokidar": "3.5.3", "css-select": "4.1.3", "ejs": "3.1.10", "fast-csv": "4.3.6", "json-schema": "0.4.0", "node-fetch": "2.6.7", "minimatch": "^5.0.0", "loader-utils": "^2.0.4", "json5": "2.2.3", "dns-packet": "5.4.0", "glob-parent": "5.1.2", "ua-parser-js": "1.0.33", "got": "11.8.5", "tabbable": "5.2.1", "trim-newlines": "3.0.1", "trim": "0.0.3", "webpack": "5.98.0", "@blueprintjs/core@^3.43.0": "patch:@blueprintjs/core@npm%3A3.47.0#./.yarn/patches/@blueprintjs-core-npm-3.47.0-a5bc1ea927.patch", "@blueprintjs/core@^3.33.0": "patch:@blueprintjs/core@npm%3A3.47.0#./.yarn/patches/@blueprintjs-core-npm-3.47.0-a5bc1ea927.patch", "@blueprintjs/core@^3.47.0": "patch:@blueprintjs/core@npm%3A3.47.0#./.yarn/patches/@blueprintjs-core-npm-3.47.0-a5bc1ea927.patch", "@blueprintjs/icons": "3.22.0", "@types/react": "^17.0.2", "postcss": "8.4.31", "axios": "^1.8.3", "esbuild": "^0.25.1", "path-to-regexp@^1.7.0": "1.9.0", "prismjs": "1.30.0", "undici": "6.21.2", "formidable": "2.1.3", "brace-expansion": "1.1.12" } }