* Initial scaffolding for comments CRUD APIs * add actions * add assets * state management for existing comments and creating new * add ui components * add overlay comments wrapper to baseWidget * add toggle comment mode button at editor header * trigger tests * Disallow commenting as someone else * Add applicationId for comments * lint * Add overlay blacklist to prevent component interaction while adding comments * Comment thread style updates * Placeholder comment context menu * Controlled comment thread visibility for making new comments visible by default * Update comment type description * Reset input on save * Resolve comment thread button ui * fix close on esc key, dont create new comment on outside click * Submit on enter * add emoji picker * Attempt at adding a websocket server in Java * CRUD APIs for comment threads * Add API for getting all threads in application * Move types to a separate file * Initial commit for real time server (RTS) * Add script to start RTS * Fix position property * Use create comment thread API * Use add comment to thread API * Add custom cursor * Dispatch logout init on 401 errors * Allow CORS for real time connection * Add more logs to RTS * Fix construction of MongoClient * WIP: Real time comments * Enable comments * Minor updates * Read backend API base URL from environment * Escape to reset comments mode * Set popover position as auto and boundary as scroll parent * Disable warning * Added permissions for comment threads * Add resolved API for comment threads * Migration to set commenting permission on existing apps * Fix updates bringing the RTS down * Show view latest button, scroll to bottom on creating a new comment * Cleanup comment reducer * Move to typescript for RTS * Add missing server.ts and tsconfig files * Resolve / unresolve comment * Scaffold app comments * Minor fixes: comment on top of all widgets, add toggle button at viewer header * Reconnect socket on creating a new app, set connected status in store * Retry socket connection flow * Integration tests for comments with api mocks using msw * Fix circular depependency * rm file * Minor cleanup and comments * Minor refactors: move isScrolledToBottom to common hooks, decouple prevent interactions overlay from comments wrapper * Use policies when pushing updates in RTS * ENV var to set if comments are enabled * Fix: check if editor/viewer is initialised before waiting for init action * Add tests for comments reducer * Revert "ENV var to set if comments are enabled" This reverts commit 988efeaa69d378d943a387e1e73510334958adc5. * Enable comments for users with appsmith email * lint * fix * Try running a socket.io server inside backend * Update comment reducer tests * Init mentions within comments * Fix comment thread updates with email rooms * Minor fixes * Refactors / review suggestions * lint * increase cache limit for builds * Comment out tests for feature that's under development * Add Dockerfile for RTS * Fix policies missing for first comment in threads * Use draftJS for comments input with mentions support * fix fixtures * Use thread's policies when querying for threads * Update socket.io to v4 * Add support for richer body with mentions * Update comment body type to RawDraftContentState * fix stale method * Fix mentions search * Minor cleanups * Comment context menu and thread UI updates * revert: Scaffold app comments * Yarn dependencies * Delete comment using id api added * Init app comments * Add test for creating thread * Api for delete comment with id * Test comment creation response and policies * Copy comment links * Fix reset editor state * Delete valid comment testcase added * Delete comment TC : code refactor * Don't allow creating comments with an empty body * Pin comments WIP[] * Ignore dependency-reduced-pom.xml files from VCS * Cleanup of some dev-only files, for review * Delete comment * Update socket.io to v4 in RTS * Pin and resolve comment thread object added in commentThread * Pin and resolve comment thread object added in commentThread * Update comment thread API * Added creationTime and updationTime in comment thread response * Added creationTime and updationTime in comment thread response * Added human readable id to comment threads, fallback to username for null name in user document * Refactor * lint * fix test, rm duplicate selector * comment out saga used for dev * CommentThread viewed status, username fallback for getName=null, username field added in pin & resolve status * lint * trigger tests Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com> Co-authored-by: Abhijeet <abhi.nagarnaik@gmail.com>
251 lines
8.4 KiB
JSON
251 lines
8.4 KiB
JSON
{
|
|
"name": "appsmith",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"engines": {
|
|
"node": "^14.15.4",
|
|
"npm": "^6.14.10"
|
|
},
|
|
"cracoConfig": "craco.dev.config.js",
|
|
"dependencies": {
|
|
"@blueprintjs/core": "^3.36.0",
|
|
"@blueprintjs/datetime": "^3.14.0",
|
|
"@blueprintjs/icons": "^3.10.0",
|
|
"@blueprintjs/popover2": "^0.5.0",
|
|
"@blueprintjs/select": "^3.10.0",
|
|
"@blueprintjs/timezone": "^3.6.0",
|
|
"@craco/craco": "^5.7.0",
|
|
"@draft-js-plugins/editor": "^4.1.0",
|
|
"@draft-js-plugins/mention": "^4.3.2",
|
|
"@fusioncharts/powercharts": "^3.16.0",
|
|
"@github/g-emoji-element": "^1.1.5",
|
|
"@manaflair/redux-batch": "^1.0.0",
|
|
"@optimizely/optimizely-sdk": "^4.0.0",
|
|
"@sentry/react": "^6.2.4",
|
|
"@sentry/tracing": "^6.2.4",
|
|
"@sentry/webpack-plugin": "^1.12.1",
|
|
"@types/chance": "^1.0.7",
|
|
"@types/lodash": "^4.14.120",
|
|
"@types/moment-timezone": "^0.5.10",
|
|
"@types/nanoid": "^2.0.0",
|
|
"@types/node": "^10.12.18",
|
|
"@types/prismjs": "^1.16.1",
|
|
"@types/react": "^16.8.2",
|
|
"@types/react-dom": "^16.8.0",
|
|
"@types/react-helmet": "^5.0.14",
|
|
"@types/react-instantsearch-dom": "^6.3.0",
|
|
"@types/react-redux": "^7.0.1",
|
|
"@types/react-router-dom": "^5.1.2",
|
|
"@types/react-table": "^7.0.13",
|
|
"@types/styled-components": "^5.1.3",
|
|
"@types/tinycolor2": "^1.4.2",
|
|
"@uppy/core": "^1.16.0",
|
|
"@uppy/dashboard": "^1.16.0",
|
|
"@uppy/file-input": "^1.4.22",
|
|
"@uppy/google-drive": "^1.5.22",
|
|
"@uppy/onedrive": "^1.1.22",
|
|
"@uppy/react": "^1.11.2",
|
|
"@uppy/url": "^1.5.16",
|
|
"@uppy/webcam": "^1.8.4",
|
|
"@welldone-software/why-did-you-render": "^4.2.5",
|
|
"algoliasearch": "^4.2.0",
|
|
"axios": "^0.21.1",
|
|
"caniuse-lite": "^1.0.30001208",
|
|
"chance": "^1.1.3",
|
|
"codemirror": "^5.59.2",
|
|
"copy-to-clipboard": "^3.3.1",
|
|
"core-js": "^3.9.1",
|
|
"craco-alias": "^2.1.1",
|
|
"cypress-log-to-output": "^1.1.2",
|
|
"deep-diff": "^1.0.2",
|
|
"downloadjs": "^1.4.7",
|
|
"draft-js": "^0.11.7",
|
|
"emoji-picker-react": "^3.4.2",
|
|
"eslint": "^7.11.0",
|
|
"fast-deep-equal": "^3.1.1",
|
|
"fast-xml-parser": "^3.17.5",
|
|
"flow-bin": "^0.91.0",
|
|
"fuse.js": "^3.4.5",
|
|
"fusioncharts": "^3.16.0",
|
|
"history": "^4.10.1",
|
|
"husky": "^3.0.5",
|
|
"immer": "^8.0.1",
|
|
"instantsearch.css": "^7.4.2",
|
|
"instantsearch.js": "^4.4.1",
|
|
"interweave": "^12.1.1",
|
|
"interweave-autolink": "^4.0.1",
|
|
"js-sha256": "^0.9.0",
|
|
"json-fn": "^1.1.1",
|
|
"lint-staged": "^9.2.5",
|
|
"localforage": "^1.7.3",
|
|
"lodash": "^4.17.19",
|
|
"lodash-es": "4.17.14",
|
|
"lodash-move": "^1.1.1",
|
|
"loglevel": "^1.6.7",
|
|
"lottie-web": "^5.7.4",
|
|
"marked": "^2.0.0",
|
|
"moment": "^2.24.0",
|
|
"moment-timezone": "^0.5.27",
|
|
"nanoid": "^2.0.4",
|
|
"node-sass": "^4.11.0",
|
|
"normalizr": "^3.3.0",
|
|
"path-to-regexp": "^6.2.0",
|
|
"popper.js": "^1.15.0",
|
|
"prettier": "^1.18.2",
|
|
"prismjs": "^1.23.0",
|
|
"rc-pagination": "^3.1.3",
|
|
"re-reselect": "^3.4.0",
|
|
"react": "^16.12.0",
|
|
"react-base-table": "^1.9.1",
|
|
"react-beautiful-dnd": "^12.2.0",
|
|
"react-dnd": "^9.3.4",
|
|
"react-dnd-html5-backend": "^9.3.4",
|
|
"react-dnd-touch-backend": "^9.4.0",
|
|
"react-dom": "^16.7.0",
|
|
"react-google-maps": "^9.4.5",
|
|
"react-helmet": "^5.2.1",
|
|
"react-infinite-scroller": "^1.2.4",
|
|
"react-instantsearch-dom": "^6.4.0",
|
|
"react-json-view": "^1.19.1",
|
|
"react-mentions": "^4.1.1",
|
|
"react-paginating": "^1.4.0",
|
|
"react-player": "^2.3.1",
|
|
"react-redux": "^7.1.3",
|
|
"react-router": "^5.1.2",
|
|
"react-router-dom": "^5.1.2",
|
|
"react-scripts": "4.0.1",
|
|
"react-select": "^3.0.8",
|
|
"react-spring": "^8.0.27",
|
|
"react-table": "^7.0.0",
|
|
"react-tabs": "^3.0.0",
|
|
"react-toastify": "^5.5.0",
|
|
"react-transition-group": "^4.3.0",
|
|
"react-use-gesture": "^7.0.4",
|
|
"react-window": "^1.8.6",
|
|
"react-zoom-pan-pinch": "^1.6.1",
|
|
"redux": "^4.0.1",
|
|
"redux-form": "^8.2.6",
|
|
"redux-saga": "^1.1.3",
|
|
"reselect": "^4.0.0",
|
|
"scroll-into-view-if-needed": "^2.2.26",
|
|
"shallowequal": "^1.1.0",
|
|
"showdown": "^1.9.1",
|
|
"smartlook-client": "^4.5.1",
|
|
"socket.io-client": "^4.0.0",
|
|
"styled-components": "^5.2.0",
|
|
"styled-system": "^5.1.5",
|
|
"tern": "^0.21.0",
|
|
"tinycolor2": "^1.4.1",
|
|
"toposort": "^2.0.2",
|
|
"ts-loader": "^6.0.4",
|
|
"tslib": "^2.1.0",
|
|
"typescript": "^4.1.3",
|
|
"unescape-js": "^1.1.4",
|
|
"url-search-params-polyfill": "^8.0.0",
|
|
"worker-loader": "^3.0.2"
|
|
},
|
|
"scripts": {
|
|
"analyze": "source-map-explorer 'build/static/js/*.js'",
|
|
"start": "BROWSER=none EXTEND_ESLINT=true REACT_APP_ENVIRONMENT=DEVELOPMENT HOST=dev.appsmith.com craco start",
|
|
"start-m1": "BROWSER=none EXTEND_ESLINT=true REACT_APP_ENVIRONMENT=DEVELOPMENT HOST=0.0.0.0 craco start",
|
|
"build": "./build.sh",
|
|
"build-local": "craco --max-old-space-size=4096 build --config craco.build.config.js",
|
|
"build-staging": "REACT_APP_ENVIRONMENT=STAGING craco --max-old-space-size=4096 build --config craco.build.config.js",
|
|
"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",
|
|
"eject": "react-scripts eject",
|
|
"start-prod": "REACT_APP_ENVIRONMENT=PRODUCTION craco start",
|
|
"cytest": "REACT_APP_TESTING=TESTING REACT_APP_ENVIRONMENT=DEVELOPMENT craco start & ./node_modules/.bin/cypress open",
|
|
"test:unit": "$(npm bin)/jest -b --colors --no-cache --coverage --collectCoverage=true --coverageDirectory='../../' --coverageReporters='json-summary'",
|
|
"test:jest": "$(npm bin)/jest --watch",
|
|
"storybook": "start-storybook -p 9009 -s public",
|
|
"build-storybook": "build-storybook -s public"
|
|
},
|
|
"resolution": {
|
|
"jest": "24.8.0"
|
|
},
|
|
"eslintConfig": {
|
|
"extends": "react-app",
|
|
"parser": "@typescript-eslint/parser"
|
|
},
|
|
"browserslist": [
|
|
">0.2%",
|
|
"not dead",
|
|
"not ie <= 11",
|
|
"not op_mini all"
|
|
],
|
|
"devDependencies": {
|
|
"@babel/core": "^7.7.4",
|
|
"@storybook/addon-actions": "^5.3.19",
|
|
"@storybook/addon-backgrounds": "^5.3.19",
|
|
"@storybook/addon-contexts": "^5.3.19",
|
|
"@storybook/addon-docs": "^5.3.19",
|
|
"@storybook/addon-knobs": "^5.3.19",
|
|
"@storybook/addon-links": "^5.3.19",
|
|
"@storybook/addon-notes": "^5.3.19",
|
|
"@storybook/addons": "^5.3.19",
|
|
"@storybook/preset-create-react-app": "^3.1.4",
|
|
"@storybook/react": "^5.3.19",
|
|
"@testing-library/jest-dom": "^5.11.4",
|
|
"@testing-library/react": "^11.2.6",
|
|
"@testing-library/user-event": "^13.1.1",
|
|
"@types/codemirror": "^0.0.96",
|
|
"@types/deep-diff": "^1.0.0",
|
|
"@types/downloadjs": "^1.4.2",
|
|
"@types/draft-js": "^0.11.1",
|
|
"@types/jest": "^24.0.22",
|
|
"@types/marked": "^1.2.2",
|
|
"@types/react-beautiful-dnd": "^11.0.4",
|
|
"@types/react-select": "^3.0.5",
|
|
"@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/styled-system": "^5.1.9",
|
|
"@types/tern": "0.22.0",
|
|
"@types/toposort": "^2.0.3",
|
|
"@typescript-eslint/eslint-plugin": "^4.15.0",
|
|
"@typescript-eslint/parser": "^4.15.0",
|
|
"babel-loader": "^8.1.0",
|
|
"babel-plugin-styled-components": "^1.10.7",
|
|
"craco-babel-loader": "^0.1.4",
|
|
"cypress": "6.2.1",
|
|
"cypress-file-upload": "^4.1.1",
|
|
"cypress-multi-reporters": "^1.2.4",
|
|
"cypress-xpath": "^1.4.0",
|
|
"dotenv": "^8.1.0",
|
|
"eslint": "^7.11.0",
|
|
"eslint-config-prettier": "^6.12.0",
|
|
"eslint-config-react": "^1.1.7",
|
|
"eslint-plugin-cypress": "^2.11.2",
|
|
"eslint-plugin-prettier": "^3.1.4",
|
|
"eslint-plugin-react": "^7.21.3",
|
|
"eslint-plugin-react-hooks": "^2.3.0",
|
|
"factory.ts": "^0.5.1",
|
|
"jest-canvas-mock": "^2.3.1",
|
|
"mocha": "^7.1.0",
|
|
"mocha-junit-reporter": "^1.23.3",
|
|
"mochawesome": "^5.0.0",
|
|
"mochawesome-report-generator": "^4.1.0",
|
|
"msw": "^0.28.0",
|
|
"raw-loader": "^4.0.2",
|
|
"react-docgen-typescript-loader": "^3.6.0",
|
|
"react-is": "^16.12.0",
|
|
"react-test-renderer": "^16.11.0",
|
|
"redux-devtools": "^3.5.0",
|
|
"redux-devtools-extension": "^2.13.8",
|
|
"redux-mock-store": "^1.5.4",
|
|
"source-map-explorer": "^2.4.2",
|
|
"storybook-addon-designs": "^5.4.0",
|
|
"ts-jest": "^26.5.4",
|
|
"webpack-merge": "^4.2.2",
|
|
"workbox-webpack-plugin": "^5.1.2"
|
|
},
|
|
"husky": {
|
|
"hooks": {
|
|
"pre-commit": "lint-staged"
|
|
}
|
|
}
|
|
}
|