element-web/package.json

238 lines
9.5 KiB
JSON
Raw Normal View History

{
2022-12-21 18:50:31 +01:00
"name": "matrix-react-sdk",
2024-02-27 13:58:36 +01:00
"version": "3.93.0",
2022-12-21 18:50:31 +01:00
"description": "SDK for matrix.org using React",
"author": "matrix.org",
"repository": {
"type": "git",
"url": "https://github.com/matrix-org/matrix-react-sdk"
2022-12-21 18:15:53 +01:00
},
2022-12-21 18:50:31 +01:00
"license": "Apache-2.0",
"files": [
"lib",
"res",
"src",
"scripts",
"git-revision.txt",
"docs",
"header",
"CHANGELOG.md",
"CONTRIBUTING.rst",
"LICENSE",
"README.md",
"package.json",
".stylelintrc.js"
],
"main": "./src/index.ts",
2022-12-21 18:50:31 +01:00
"matrix_src_main": "./src/index.ts",
"matrix_lib_main": "./lib/index.ts",
"matrix_lib_typings": "./lib/index.d.ts",
"matrix_i18n_extra_translation_funcs": [
"UserFriendlyError"
],
2022-12-21 18:50:31 +01:00
"scripts": {
"prepack": "yarn build",
"i18n": "matrix-gen-i18n && yarn i18n:sort && yarn i18n:lint",
"i18n:sort": "jq --sort-keys '.' src/i18n/strings/en_EN.json > src/i18n/strings/en_EN.json.tmp && mv src/i18n/strings/en_EN.json.tmp src/i18n/strings/en_EN.json",
"i18n:lint": "matrix-i18n-lint && prettier --log-level=silent --write src/i18n/strings/ --ignore-path /dev/null",
"i18n:diff": "cp src/i18n/strings/en_EN.json src/i18n/strings/en_EN_orig.json && yarn i18n && matrix-compare-i18n-files src/i18n/strings/en_EN_orig.json src/i18n/strings/en_EN.json",
2022-12-21 18:50:31 +01:00
"make-component": "node scripts/make-react-component.js",
"rethemendex": "res/css/rethemendex.sh",
"clean": "rimraf lib",
"build": "yarn clean && git rev-parse HEAD > git-revision.txt && yarn build:compile && yarn build:types",
"build:compile": "babel -d lib --verbose --extensions \".ts,.js,.tsx\" src",
"build:types": "tsc --emitDeclarationOnly --jsx react",
"start": "echo THIS IS FOR LEGACY PURPOSES ONLY. && yarn start:all",
"start:all": "echo THIS IS FOR LEGACY PURPOSES ONLY. && yarn start:build",
"start:build": "babel src -w -s -d lib --verbose --extensions \".ts,.js\"",
"lint": "yarn lint:types && yarn lint:js && yarn lint:style && yarn lint:workflows",
"lint:js": "eslint --max-warnings 0 src test playwright && prettier --check .",
"lint:js-fix": "eslint --fix src test playwright && prettier --log-level=warn --write .",
"lint:types": "tsc --noEmit --jsx react && tsc --noEmit --jsx react -p playwright",
2022-12-21 18:50:31 +01:00
"lint:style": "stylelint \"res/css/**/*.pcss\"",
"test": "jest",
"test:playwright": "playwright test",
"test:playwright:open": "yarn test:playwright --ui",
"test:playwright:screenshots": "yarn test:playwright:screenshots:build && yarn test:playwright:screenshots:run",
"test:playwright:screenshots:build": "docker build playwright -t matrix-react-sdk-playwright",
"test:playwright:screenshots:run": "docker run --rm --network host -v $(pwd)/../:/work/ -v /var/run/docker.sock:/var/run/docker.sock -v /tmp/:/tmp/ -it matrix-react-sdk-playwright",
"coverage": "yarn test --coverage",
"lint:workflows": "find .github/workflows -type f \\( -iname '*.yaml' -o -iname '*.yml' \\) | xargs -I {} sh -c 'echo \"Linting {}\"; action-validator \"{}\"'"
2022-12-21 18:50:31 +01:00
},
"resolutions": {
"@types/react-dom": "17.0.21",
"@types/react": "17.0.68",
"oidc-client-ts": "3.0.1",
"jwt-decode": "4.0.0"
},
2022-12-21 18:50:31 +01:00
"dependencies": {
"@babel/runtime": "^7.12.5",
Pop out of Threads Activity Centre (#12136) * Add `Thread Activity centre` labs flag * Rename translation string * WIP Thread Activity Centre * Update supportedLevels * css lint * i18n lint * Fix labs subsection test * Update Threads Activity Centre label * Rename Thread Activity Centre to Threads Activity Centre * Use compound `MenuItem` instead of custom button * Color thread icon when hovered * Make the pop-up scrollable and add a max height * Remove Math.random in key * Remove unused class * Change add comments on `mx_ThreadsActivityRows` and `mx_ThreadsActivityRow` * Make threads activity centre labs flag split out unread counts Just shows notif & unread counts for main thread if the TAC is enabled. * Fix tests * Simpler fix * Open thread panel when thread clicke in Threads Activity Centre Hopefully this is a sensible enough way. The panel will stay open of course (ie. if you go to a different room & come back), but that's the nature of the right panel. * Dynamic state of room * Add doc * Use the StatelessNotificationBadge component in ThreadsActivityCentre and re-use the existing NotificationLevel * Remove unused style * Add room sorting * Fix `ThreadsActivityRow` props doc * Pass in & cache the status of the TAC labs flag * Pass includeThreads as setting to doesRoomHaveUnreadMessages too * Fix tests * Add analytics to the TAC (#12179) * Update TAC label (#12186) * Add `IndicatorIcon` to the TAC button (#12182) Add `IndicatorIcon` to the TAC button * Threads don't have activity if the room is muted This makes it match the computation in determineUnreadState. Ideally this logic should all be in one place. * Re-use doesRoomHaveUnreadThreads for useRoomThreadNotifications This incorporates the logic of not showing unread dots if the room is muted * Add TAC description in labs (#12197) * Fox position & size of dot on the tac button IndicatorIcon doesn't like having the size of its icon adjusted and we probably shouldn't do it anyway: better to specify to the component what size we want it. * TAC: Utils tests (#12200) * Add tests for `doesRoomHaveUnreadThreads` * Add tests for `getThreadNotificationLevel` * Add test for the ThreadsActivityCentre component * Add snapshot test * Fix narrow hover background on TAC button Make the button 32x32 (and the inner icon 24x24) * Add caption for empty TAC * s/tac/threads_activity_centre/ * Fix i18n & add tests * Add playwright tests for the TAC (#12227) * Fox comments --------- Co-authored-by: David Baker <dbkr@users.noreply.github.com>
2024-02-07 14:49:40 +01:00
"@matrix-org/analytics-events": "^0.10.0",
"@matrix-org/emojibase-bindings": "^1.1.2",
2023-11-16 14:54:55 +01:00
"@matrix-org/matrix-wysiwyg": "2.17.0",
"@matrix-org/olm": "3.2.15",
"@matrix-org/react-sdk-module-api": "^2.3.0",
"@matrix-org/spec": "^1.7.0",
2022-12-21 18:50:31 +01:00
"@sentry/browser": "^7.0.0",
"@testing-library/react-hooks": "^8.0.1",
"@vector-im/compound-design-tokens": "^1.0.0",
"@vector-im/compound-web": "^3.1.1",
"@zxcvbn-ts/core": "^3.0.4",
"@zxcvbn-ts/language-common": "^3.0.4",
"@zxcvbn-ts/language-en": "^3.0.2",
2022-12-21 18:50:31 +01:00
"await-lock": "^2.1.0",
"blurhash": "^2.0.3",
2022-12-21 18:50:31 +01:00
"classnames": "^2.2.6",
"commonmark": "^0.31.0",
2022-12-21 18:50:31 +01:00
"counterpart": "^0.18.6",
"diff-dom": "^5.0.0",
2022-12-21 18:50:31 +01:00
"diff-match-patch": "^1.0.5",
"emojibase-regex": "15.3.0",
2022-12-21 18:50:31 +01:00
"escape-html": "^1.0.3",
"file-saver": "^2.0.5",
"filesize": "10.1.0",
2022-12-21 18:50:31 +01:00
"gfm.css": "^1.1.2",
"glob-to-regexp": "^0.4.1",
"graphemer": "^1.4.0",
2022-12-21 18:50:31 +01:00
"highlight.js": "^11.3.1",
"html-entities": "^2.0.0",
"is-ip": "^3.1.0",
"js-xxhash": "^3.0.1",
2022-12-21 18:50:31 +01:00
"jszip": "^3.7.0",
"katex": "^0.16.0",
"linkify-element": "4.1.3",
"linkify-react": "4.1.3",
"linkify-string": "4.1.3",
"linkifyjs": "4.1.3",
2022-12-21 18:50:31 +01:00
"lodash": "^4.17.20",
"maplibre-gl": "^2.0.0",
"matrix-encrypt-attachment": "^1.0.3",
"matrix-events-sdk": "0.0.1",
"matrix-js-sdk": "github:matrix-org/matrix-js-sdk#develop",
"matrix-widget-api": "^1.5.0",
"memoize-one": "^6.0.0",
2022-12-21 18:50:31 +01:00
"minimist": "^1.2.5",
"oidc-client-ts": "^3.0.1",
2022-12-21 18:50:31 +01:00
"opus-recorder": "^8.0.3",
"pako": "^2.0.3",
"png-chunks-extract": "^1.0.0",
"posthog-js": "1.106.0",
"proposal-temporal": "^0.9.0",
"qrcode": "1.5.3",
2022-12-21 18:50:31 +01:00
"re-resizable": "^6.9.0",
"react": "17.0.2",
"react-beautiful-dnd": "^13.1.0",
"react-blurhash": "^0.3.0",
2022-12-21 18:50:31 +01:00
"react-dom": "17.0.2",
"react-focus-lock": "^2.5.1",
"react-transition-group": "^4.4.1",
"rfc4648": "^1.4.0",
"sanitize-filename": "^1.6.3",
"sanitize-html": "2.12.1",
2022-12-21 18:50:31 +01:00
"tar-js": "^0.3.0",
"ua-parser-js": "^1.0.2",
"uuid": "^9.0.0",
"what-input": "^5.2.10"
2022-12-21 18:50:31 +01:00
},
"devDependencies": {
2023-11-28 17:22:28 +01:00
"@action-validator/cli": "^0.5.3",
"@action-validator/core": "^0.5.3",
"@axe-core/playwright": "^4.8.1",
2022-12-21 18:50:31 +01:00
"@babel/cli": "^7.12.10",
"@babel/core": "^7.12.10",
"@babel/eslint-parser": "^7.12.10",
"@babel/eslint-plugin": "^7.12.10",
"@babel/parser": "^7.12.11",
"@babel/plugin-proposal-class-properties": "^7.12.1",
"@babel/plugin-proposal-export-default-from": "^7.12.1",
"@babel/plugin-proposal-numeric-separator": "^7.12.7",
"@babel/plugin-proposal-object-rest-spread": "^7.12.1",
"@babel/plugin-transform-runtime": "^7.12.10",
"@babel/preset-env": "^7.12.11",
"@babel/preset-react": "^7.12.10",
"@babel/preset-typescript": "^7.12.7",
"@babel/register": "^7.12.10",
"@casualbot/jest-sonar-reporter": "2.2.7",
"@peculiar/webcrypto": "^1.4.3",
"@playwright/test": "^1.40.1",
"@testing-library/dom": "^9.0.0",
"@testing-library/jest-dom": "^6.0.0",
2022-12-21 18:50:31 +01:00
"@testing-library/react": "^12.1.5",
"@testing-library/user-event": "^14.4.3",
"@types/commonmark": "^0.27.4",
"@types/content-type": "^1.1.5",
2022-12-21 18:50:31 +01:00
"@types/counterpart": "^0.18.1",
"@types/diff-match-patch": "^1.0.32",
"@types/escape-html": "^1.0.1",
"@types/express": "^4.17.21",
2022-12-21 18:50:31 +01:00
"@types/file-saver": "^2.0.3",
"@types/fs-extra": "^11.0.0",
"@types/glob-to-regexp": "^0.4.1",
"@types/jest": "29.5.12",
"@types/katex": "^0.16.0",
2022-12-21 18:50:31 +01:00
"@types/lodash": "^4.14.168",
"@types/modernizr": "^3.5.3",
"@types/node": "18",
"@types/node-fetch": "^2.6.2",
2022-12-21 18:50:31 +01:00
"@types/pako": "^2.0.0",
"@types/qrcode": "^1.3.5",
"@types/react": "17.0.68",
2022-12-21 18:50:31 +01:00
"@types/react-beautiful-dnd": "^13.0.0",
"@types/react-dom": "17.0.21",
2022-12-21 18:50:31 +01:00
"@types/react-transition-group": "^4.4.0",
"@types/sanitize-html": "2.11.0",
"@types/sdp-transform": "^2.4.6",
"@types/tar-js": "^0.3.2",
2022-12-21 18:50:31 +01:00
"@types/ua-parser-js": "^0.7.36",
"@types/uuid": "^9.0.2",
"@typescript-eslint/eslint-plugin": "^7.0.0",
"@typescript-eslint/parser": "^7.0.0",
"axe-core": "4.8.4",
2022-12-21 18:50:31 +01:00
"babel-jest": "^29.0.0",
"blob-polyfill": "^7.0.0",
"eslint": "8.56.0",
2022-12-21 18:50:31 +01:00
"eslint-config-google": "^0.14.0",
"eslint-config-prettier": "^9.0.0",
"eslint-plugin-deprecate": "0.8.4",
2022-12-21 18:50:31 +01:00
"eslint-plugin-import": "^2.25.4",
2023-03-01 16:23:35 +01:00
"eslint-plugin-jest": "^27.2.1",
2022-12-21 18:50:31 +01:00
"eslint-plugin-jsx-a11y": "^6.5.1",
"eslint-plugin-matrix-org": "1.2.1",
2022-12-21 18:50:31 +01:00
"eslint-plugin-react": "^7.28.0",
"eslint-plugin-react-hooks": "^4.3.0",
"eslint-plugin-unicorn": "^51.0.0",
"express": "^4.18.2",
"fake-indexeddb": "^5.0.2",
2022-12-21 18:50:31 +01:00
"fetch-mock-jest": "^1.5.1",
"fs-extra": "^11.0.0",
"jest": "^29.6.2",
"jest-canvas-mock": "^2.5.2",
"jest-environment-jsdom": "^29.6.2",
"jest-mock": "^29.6.2",
2022-12-21 18:50:31 +01:00
"jest-raw-loader": "^1.0.1",
"jsqr": "^1.4.0",
"mailhog": "^4.16.0",
"matrix-web-i18n": "^3.2.1",
2022-12-21 18:50:31 +01:00
"mocha-junit-reporter": "^2.2.0",
"node-fetch": "2",
"postcss-scss": "^4.0.4",
"prettier": "3.2.5",
2022-12-21 18:50:31 +01:00
"raw-loader": "^4.0.2",
"rimraf": "^5.0.0",
"stylelint": "^16.1.0",
"stylelint-config-standard": "^36.0.0",
"stylelint-scss": "^6.0.0",
"ts-node": "^10.9.1",
"typescript": "5.3.3"
2022-12-21 18:50:31 +01:00
},
"peerDependencies": {
"postcss": "^8.4.19",
"webpack": "^4.0.0 || ^5.0.0"
},
2022-12-21 18:50:31 +01:00
"@casualbot/jest-sonar-reporter": {
"outputDirectory": "coverage",
"outputName": "jest-sonar-report.xml",
"relativePaths": true
}
}