mirror of
https://github.com/vector-im/element-web.git
synced 2026-03-29 10:11:05 +02:00
* Add `react-resizable-panels` library * Implement a custom SeparatorView * Add a `LeftResizablePanelView` * Add a custom `GroupView` * Export everything from shared-components * Make it possible to track width/collapse state through settings * Add a view model to drive the views * Render views without disrupting the old room list * Fix lint error * Disable user interaction on collapsed panel * Prevent widgets fron hijacking pointer events * Expand to full width on separator click * Separator should be shown when focused via keyboard * Update tests * Use data-attribute for hover * Write stories for SeperatorView * Write vite tests for SeparatorView * Write tests for LeftResizablePanelView * More tests * Fix lint errors * Fix flakey border on the roomlst * Fix storybook axe violation * Update snapshots * Fix playwright tests * Fix sonarcloud issues * Use translated string * Add better js-doc comments * Rename `ResizerSnapshot` to `ResizerViewSnapshot` * Externalize react-resizable-panels * Link figma designs to stories * Write playwright tests * Update screenshots * Fix lint errors * Update more screenshots * Update more screenshots * Fix flaky toast test * Update apps/web/playwright/e2e/crypto/toasts.spec.ts Co-authored-by: Andy Balaam <andy.balaam@matrix.org> * Fix indentation --------- Co-authored-by: Andy Balaam <andy.balaam@matrix.org>
129 lines
5.0 KiB
JSON
129 lines
5.0 KiB
JSON
{
|
|
"name": "@element-hq/web-shared-components",
|
|
"version": "0.0.2",
|
|
"description": "Shared components for Element",
|
|
"author": "New Vector Ltd.",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/element-hq/element-web"
|
|
},
|
|
"type": "module",
|
|
"exports": {
|
|
".": {
|
|
"require": {
|
|
"style": "./dist/element-web-shared-components.css",
|
|
"types": "./dist/element-web-shared-components.d.ts",
|
|
"default": "./dist/element-web-shared-components.umd.cjs"
|
|
},
|
|
"import": {
|
|
"style": "./dist/element-web-shared-components.css",
|
|
"types": "./dist/element-web-shared-components.d.ts",
|
|
"default": "./dist/element-web-shared-components.js"
|
|
}
|
|
},
|
|
"./dist/element-web-shared-components.css": {
|
|
"require": "./dist/element-web-shared-components.css",
|
|
"import": "./dist/element-web-shared-components.css"
|
|
}
|
|
},
|
|
"types": "dist/element-web-shared-components.d.ts",
|
|
"files": [
|
|
"dist",
|
|
"src",
|
|
"LICENSE",
|
|
"README.md",
|
|
"package.json"
|
|
],
|
|
"scripts": {
|
|
"i18n": "matrix-gen-i18n src && pnpm i18n:sort && pnpm i18n:lint",
|
|
"i18n:sort": "matrix-sort-i18n src/i18n/strings/en_EN.json",
|
|
"i18n:lint": "matrix-i18n-lint && prettier --log-level=silent --write src/i18n/strings/ --ignore-path /dev/null",
|
|
"test:unit": "nx test:unit",
|
|
"test:storybook": "nx test:storybook",
|
|
"test:storybook:update": "nx test:storybook:update",
|
|
"build": "nx build",
|
|
"prepack": "pnpm run build",
|
|
"storybook": "storybook dev -p 6007",
|
|
"build:storybook": "nx storybook",
|
|
"build:doc": "nx typedoc",
|
|
"lint": "pnpm lint:types && pnpm lint:js",
|
|
"lint:js": "eslint --max-warnings 0 src",
|
|
"lint:types": "tsc --noEmit && tsc --noEmit -p tsconfig.node.json"
|
|
},
|
|
"dependencies": {
|
|
"@element-hq/element-web-module-api": "catalog:",
|
|
"@matrix-org/spec": "^1.7.0",
|
|
"@vector-im/compound-design-tokens": "catalog:",
|
|
"classnames": "^2.5.1",
|
|
"counterpart": "^0.18.6",
|
|
"html-react-parser": "^5.2.2",
|
|
"linkify-html": "4.3.2",
|
|
"linkify-react": "4.3.2",
|
|
"linkify-string": "4.3.2",
|
|
"linkifyjs": "4.3.2",
|
|
"lodash": "npm:lodash-es@^4.17.21",
|
|
"matrix-web-i18n": "catalog:",
|
|
"react-merge-refs": "^3.0.2",
|
|
"react-resizable-panels": "^4.6.5",
|
|
"react-virtuoso": "^4.14.0",
|
|
"temporal-polyfill": "^0.3.0"
|
|
},
|
|
"devDependencies": {
|
|
"@element-hq/element-web-playwright-common-local": "workspace:*",
|
|
"@fetch-mock/vitest": "^0.2.18",
|
|
"@fontsource/inter": "catalog:",
|
|
"@matrix-org/react-sdk-module-api": "^2.5.0",
|
|
"@playwright/test": "catalog:",
|
|
"@storybook/addon-a11y": "^10.0.7",
|
|
"@storybook/addon-designs": "^11.0.1",
|
|
"@storybook/addon-docs": "^10.0.7",
|
|
"@storybook/addon-vitest": "^10.1.11",
|
|
"@storybook/icons": "^2.0.0",
|
|
"@storybook/react-vite": "^10.0.7",
|
|
"@stylistic/eslint-plugin": "^5.7.0",
|
|
"@testing-library/dom": "^10.4.1",
|
|
"@testing-library/react": "^16.3.2",
|
|
"@testing-library/user-event": "^14.6.1",
|
|
"@types/counterpart": "^0.18.4",
|
|
"@types/lodash": "^4.17.20",
|
|
"@types/react": "catalog:",
|
|
"@types/react-dom": "catalog:",
|
|
"@typescript-eslint/eslint-plugin": "^8.53.1",
|
|
"@typescript-eslint/parser": "^8.53.1",
|
|
"@vector-im/compound-web": "catalog:",
|
|
"@vitest/browser-playwright": "^4.0.17",
|
|
"@vitest/coverage-v8": "^4.0.17",
|
|
"eslint": "8",
|
|
"eslint-config-google": "^0.14.0",
|
|
"eslint-config-prettier": "^10.1.8",
|
|
"eslint-plugin-deprecate": "^0.9.0",
|
|
"eslint-plugin-import": "^2.32.0",
|
|
"eslint-plugin-jsx-a11y": "^6.10.2",
|
|
"eslint-plugin-matrix-org": "^3.0.0",
|
|
"eslint-plugin-react": "^7.37.5",
|
|
"eslint-plugin-react-compiler": "^19.1.0-rc.2",
|
|
"eslint-plugin-react-hooks": "^7.0.1",
|
|
"eslint-plugin-storybook": "^10.0.7",
|
|
"eslint-plugin-unicorn": "^56.0.0",
|
|
"prettier": "^3.6.2",
|
|
"storybook": "^10.0.7",
|
|
"storybook-addon-vis": "^3.1.2",
|
|
"typedoc": "^0.28.16",
|
|
"typedoc-plugin-markdown": "^4.9.0",
|
|
"typedoc-plugin-missing-exports": "^4.1.2",
|
|
"typescript": "catalog:",
|
|
"vite": "^8.0.0",
|
|
"vite-plugin-dts": "^4.5.4",
|
|
"vite-plugin-node-polyfills": "^0.25.0",
|
|
"vitest": "^4.0.18",
|
|
"vitest-sonar-reporter": "^3.0.0"
|
|
},
|
|
"engines": {
|
|
"node": ">=20.0.0"
|
|
},
|
|
"packageManager": "pnpm@10.32.1+sha512.a706938f0e89ac1456b6563eab4edf1d1faf3368d1191fc5c59790e96dc918e4456ab2e67d613de1043d2e8c81f87303e6b40d4ffeca9df15ef1ad567348f2be",
|
|
"peerDependencies": {
|
|
"@vector-im/compound-web": "^8.3.5"
|
|
}
|
|
}
|