diff options
-rw-r--r-- | package.json | 7 | ||||
-rw-r--r-- | pnpm-lock.yaml | 125 | ||||
-rw-r--r-- | src/components/layout/Sidebar.tsx | 34 | ||||
-rw-r--r-- | src/components/services/tabs/TabItem.tsx | 3 | ||||
-rw-r--r-- | src/components/settings/account/AccountDashboard.tsx | 9 | ||||
-rw-r--r-- | src/components/settings/services/ServiceItem.tsx | 20 | ||||
-rw-r--r-- | src/components/settings/team/TeamDashboard.tsx | 9 | ||||
-rw-r--r-- | src/components/ui/effects/Appear.tsx | 26 | ||||
-rw-r--r-- | src/features/webControls/components/WebControls.tsx | 22 | ||||
-rw-r--r-- | src/features/workspaces/components/WorkspaceDrawer.tsx | 13 | ||||
-rw-r--r-- | src/features/workspaces/components/WorkspaceDrawerItem.tsx | 3 | ||||
-rw-r--r-- | src/routes.tsx | 1 | ||||
-rw-r--r-- | src/styles/main.scss | 1 |
13 files changed, 164 insertions, 109 deletions
diff --git a/package.json b/package.json index cc932fe2e..4b3b76f88 100644 --- a/package.json +++ b/package.json | |||
@@ -108,11 +108,11 @@ | |||
108 | "react-jss": "10.10.0", | 108 | "react-jss": "10.10.0", |
109 | "react-loader": "2.4.7", | 109 | "react-loader": "2.4.7", |
110 | "react-modal": "3.16.1", | 110 | "react-modal": "3.16.1", |
111 | "react-router-dom": "6.4.2", | 111 | "react-router-dom": "6.11.2", |
112 | "react-sortable-hoc": "2.0.0", | 112 | "react-sortable-hoc": "2.0.0", |
113 | "react-tooltip": "4.5.1", | 113 | "react-tooltip": "5.13.1", |
114 | "react-topbar-progress-indicator": "4.1.1", | 114 | "react-topbar-progress-indicator": "4.1.1", |
115 | "react-transition-group": "1.2.1", | 115 | "react-transition-group": "4.4.5", |
116 | "route-parser": "0.0.5", | 116 | "route-parser": "0.0.5", |
117 | "sanitize-filename": "1.6.3", | 117 | "sanitize-filename": "1.6.3", |
118 | "semver": "7.5.1", | 118 | "semver": "7.5.1", |
@@ -138,6 +138,7 @@ | |||
138 | "@types/node": "18.15.3", | 138 | "@types/node": "18.15.3", |
139 | "@types/react": "18.2.7", | 139 | "@types/react": "18.2.7", |
140 | "@types/react-dom": "18.2.4", | 140 | "@types/react-dom": "18.2.4", |
141 | "@types/react-transition-group": "4.4.6", | ||
141 | "@types/route-parser": "0.1.4", | 142 | "@types/route-parser": "0.1.4", |
142 | "@types/tar": "6.1.5", | 143 | "@types/tar": "6.1.5", |
143 | "@types/uuid": "9.0.1", | 144 | "@types/uuid": "9.0.1", |
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3727d8b98..3743c42cf 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml | |||
@@ -200,20 +200,20 @@ dependencies: | |||
200 | specifier: 3.16.1 | 200 | specifier: 3.16.1 |
201 | version: 3.16.1(react-dom@18.2.0)(react@18.2.0) | 201 | version: 3.16.1(react-dom@18.2.0)(react@18.2.0) |
202 | react-router-dom: | 202 | react-router-dom: |
203 | specifier: 6.4.2 | 203 | specifier: 6.11.2 |
204 | version: 6.4.2(react-dom@18.2.0)(react@18.2.0) | 204 | version: 6.11.2(react-dom@18.2.0)(react@18.2.0) |
205 | react-sortable-hoc: | 205 | react-sortable-hoc: |
206 | specifier: 2.0.0 | 206 | specifier: 2.0.0 |
207 | version: 2.0.0(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) | 207 | version: 2.0.0(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) |
208 | react-tooltip: | 208 | react-tooltip: |
209 | specifier: 4.5.1 | 209 | specifier: 5.13.1 |
210 | version: 4.5.1(react-dom@18.2.0)(react@18.2.0) | 210 | version: 5.13.1(react-dom@18.2.0)(react@18.2.0) |
211 | react-topbar-progress-indicator: | 211 | react-topbar-progress-indicator: |
212 | specifier: 4.1.1 | 212 | specifier: 4.1.1 |
213 | version: 4.1.1(react@18.2.0) | 213 | version: 4.1.1(react@18.2.0) |
214 | react-transition-group: | 214 | react-transition-group: |
215 | specifier: 1.2.1 | 215 | specifier: 4.4.5 |
216 | version: 1.2.1(react-dom@18.2.0)(react@18.2.0) | 216 | version: 4.4.5(react-dom@18.2.0)(react@18.2.0) |
217 | route-parser: | 217 | route-parser: |
218 | specifier: 0.0.5 | 218 | specifier: 0.0.5 |
219 | version: 0.0.5 | 219 | version: 0.0.5 |
@@ -293,6 +293,9 @@ devDependencies: | |||
293 | '@types/react-dom': | 293 | '@types/react-dom': |
294 | specifier: 18.2.4 | 294 | specifier: 18.2.4 |
295 | version: 18.2.4 | 295 | version: 18.2.4 |
296 | '@types/react-transition-group': | ||
297 | specifier: 4.4.6 | ||
298 | version: 4.4.6 | ||
296 | '@types/route-parser': | 299 | '@types/route-parser': |
297 | specifier: 0.1.4 | 300 | specifier: 0.1.4 |
298 | version: 0.1.4 | 301 | version: 0.1.4 |
@@ -1507,6 +1510,16 @@ packages: | |||
1507 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} | 1510 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} |
1508 | dev: true | 1511 | dev: true |
1509 | 1512 | ||
1513 | /@floating-ui/core@1.2.6: | ||
1514 | resolution: {integrity: sha512-EvYTiXet5XqweYGClEmpu3BoxmsQ4hkj3QaYA6qEnigCWffTP3vNRwBReTdrwDwo7OoJ3wM8Uoe9Uk4n+d4hfg==} | ||
1515 | dev: false | ||
1516 | |||
1517 | /@floating-ui/dom@1.2.8: | ||
1518 | resolution: {integrity: sha512-XLwhYV90MxiHDq6S0rzFZj00fnDM+A1R9jhSioZoMsa7G0Q0i+Q4x40ajR8FHSdYDE1bgjG45mIWe6jtv9UPmg==} | ||
1519 | dependencies: | ||
1520 | '@floating-ui/core': 1.2.6 | ||
1521 | dev: false | ||
1522 | |||
1510 | /@formatjs/cli@6.1.1: | 1523 | /@formatjs/cli@6.1.1: |
1511 | resolution: {integrity: sha512-prUblUQRJwFQqfmBtRWXZFKX+QmhXQkBKRl54hWTCwenskorK6+LTlm9TFbUDhfib2Xt3iDsjk7o9LpeU/AQCw==} | 1524 | resolution: {integrity: sha512-prUblUQRJwFQqfmBtRWXZFKX+QmhXQkBKRl54hWTCwenskorK6+LTlm9TFbUDhfib2Xt3iDsjk7o9LpeU/AQCw==} |
1512 | engines: {node: '>= 16'} | 1525 | engines: {node: '>= 16'} |
@@ -2165,8 +2178,8 @@ packages: | |||
2165 | dev: true | 2178 | dev: true |
2166 | optional: true | 2179 | optional: true |
2167 | 2180 | ||
2168 | /@remix-run/router@1.0.2: | 2181 | /@remix-run/router@1.6.2: |
2169 | resolution: {integrity: sha512-GRSOFhJzjGN+d4sKHTMSvNeUPoZiDHWmRnXfzaxrqe7dE/Nzlc8BiMSJdLDESZlndM7jIUrZ/F4yWqVYlI0rwQ==} | 2182 | resolution: {integrity: sha512-LzqpSrMK/3JBAVBI9u3NWtOhWNw5AMQfrUFYB0+bDHTSw17z++WJLsPsxAuK+oSddsxk4d7F/JcdDPM1M5YAhA==} |
2170 | engines: {node: '>=14'} | 2183 | engines: {node: '>=14'} |
2171 | dev: false | 2184 | dev: false |
2172 | 2185 | ||
@@ -2494,6 +2507,12 @@ packages: | |||
2494 | '@types/react': 18.2.7 | 2507 | '@types/react': 18.2.7 |
2495 | dev: true | 2508 | dev: true |
2496 | 2509 | ||
2510 | /@types/react-transition-group@4.4.6: | ||
2511 | resolution: {integrity: sha512-VnCdSxfcm08KjsJVQcfBmhEQAPnLB8G08hAxn39azX1qYBQ/5RVQuoHuKIcfKOdncuaUvEpFKFzEvbtIMsfVew==} | ||
2512 | dependencies: | ||
2513 | '@types/react': 18.2.7 | ||
2514 | dev: true | ||
2515 | |||
2497 | /@types/react@18.2.7: | 2516 | /@types/react@18.2.7: |
2498 | resolution: {integrity: sha512-ojrXpSH2XFCmHm7Jy3q44nXDyN54+EYKP2lBhJ2bqfyPj6cIUW/FZW/Csdia34NQgq7KYcAlHi5184m4X88+yw==} | 2517 | resolution: {integrity: sha512-ojrXpSH2XFCmHm7Jy3q44nXDyN54+EYKP2lBhJ2bqfyPj6cIUW/FZW/Csdia34NQgq7KYcAlHi5184m4X88+yw==} |
2499 | dependencies: | 2518 | dependencies: |
@@ -3905,10 +3924,6 @@ packages: | |||
3905 | resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==} | 3924 | resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==} |
3906 | dev: false | 3925 | dev: false |
3907 | 3926 | ||
3908 | /chain-function@1.0.1: | ||
3909 | resolution: {integrity: sha512-SxltgMwL9uCko5/ZCLiyG2B7R9fY4pDZUw7hJ4MhirdjBLosoDqkWABi3XMucddHdLiFJMb7PD2MZifZriuMTg==} | ||
3910 | dev: false | ||
3911 | |||
3912 | /chainsaw@0.1.0: | 3927 | /chainsaw@0.1.0: |
3913 | resolution: {integrity: sha512-75kWfWt6MEKNC8xYXIdRpDehRYY/tNSgwKaJq+dbbDcxORuVrrQ+SEHoWsniVn9XPYfP4gmdWIeDk/4YNp1rNQ==} | 3928 | resolution: {integrity: sha512-75kWfWt6MEKNC8xYXIdRpDehRYY/tNSgwKaJq+dbbDcxORuVrrQ+SEHoWsniVn9XPYfP4gmdWIeDk/4YNp1rNQ==} |
3914 | dependencies: | 3929 | dependencies: |
@@ -4461,7 +4476,7 @@ packages: | |||
4461 | /css-jss@10.10.0: | 4476 | /css-jss@10.10.0: |
4462 | resolution: {integrity: sha512-YyMIS/LsSKEGXEaVJdjonWe18p4vXLo8CMA4FrW/kcaEyqdIGKCFXao31gbJddXEdIxSXFFURWrenBJPlKTgAA==} | 4477 | resolution: {integrity: sha512-YyMIS/LsSKEGXEaVJdjonWe18p4vXLo8CMA4FrW/kcaEyqdIGKCFXao31gbJddXEdIxSXFFURWrenBJPlKTgAA==} |
4463 | dependencies: | 4478 | dependencies: |
4464 | '@babel/runtime': 7.20.7 | 4479 | '@babel/runtime': 7.21.5 |
4465 | jss: 10.10.0 | 4480 | jss: 10.10.0 |
4466 | jss-preset-default: 10.10.0 | 4481 | jss-preset-default: 10.10.0 |
4467 | dev: false | 4482 | dev: false |
@@ -4469,7 +4484,7 @@ packages: | |||
4469 | /css-vendor@2.0.8: | 4484 | /css-vendor@2.0.8: |
4470 | resolution: {integrity: sha512-x9Aq0XTInxrkuFeHKbYC7zWY8ai7qJ04Kxd9MnvbC1uO5DagxoHQjm4JvG+vCdXOoFtCjbL2XSZfxmoYa9uQVQ==} | 4485 | resolution: {integrity: sha512-x9Aq0XTInxrkuFeHKbYC7zWY8ai7qJ04Kxd9MnvbC1uO5DagxoHQjm4JvG+vCdXOoFtCjbL2XSZfxmoYa9uQVQ==} |
4471 | dependencies: | 4486 | dependencies: |
4472 | '@babel/runtime': 7.20.7 | 4487 | '@babel/runtime': 7.21.5 |
4473 | is-in-browser: 1.1.3 | 4488 | is-in-browser: 1.1.3 |
4474 | dev: false | 4489 | dev: false |
4475 | 4490 | ||
@@ -4792,10 +4807,11 @@ packages: | |||
4792 | esutils: 2.0.3 | 4807 | esutils: 2.0.3 |
4793 | dev: true | 4808 | dev: true |
4794 | 4809 | ||
4795 | /dom-helpers@3.4.0: | 4810 | /dom-helpers@5.2.1: |
4796 | resolution: {integrity: sha512-LnuPJ+dwqKDIyotW1VzmOZ5TONUN7CwkCR5hrgawTUbkBGYdeoNLZo6nNfGkCrjtE1nXXaj7iMMpDa8/d9WoIA==} | 4811 | resolution: {integrity: sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==} |
4797 | dependencies: | 4812 | dependencies: |
4798 | '@babel/runtime': 7.21.5 | 4813 | '@babel/runtime': 7.21.5 |
4814 | csstype: 3.1.2 | ||
4799 | dev: false | 4815 | dev: false |
4800 | 4816 | ||
4801 | /dot-prop@5.3.0: | 4817 | /dot-prop@5.3.0: |
@@ -7875,7 +7891,7 @@ packages: | |||
7875 | /jss-plugin-camel-case@10.10.0: | 7891 | /jss-plugin-camel-case@10.10.0: |
7876 | resolution: {integrity: sha512-z+HETfj5IYgFxh1wJnUAU8jByI48ED+v0fuTuhKrPR+pRBYS2EDwbusU8aFOpCdYhtRc9zhN+PJ7iNE8pAWyPw==} | 7892 | resolution: {integrity: sha512-z+HETfj5IYgFxh1wJnUAU8jByI48ED+v0fuTuhKrPR+pRBYS2EDwbusU8aFOpCdYhtRc9zhN+PJ7iNE8pAWyPw==} |
7877 | dependencies: | 7893 | dependencies: |
7878 | '@babel/runtime': 7.20.7 | 7894 | '@babel/runtime': 7.21.5 |
7879 | hyphenate-style-name: 1.0.4 | 7895 | hyphenate-style-name: 1.0.4 |
7880 | jss: 10.10.0 | 7896 | jss: 10.10.0 |
7881 | dev: false | 7897 | dev: false |
@@ -7883,7 +7899,7 @@ packages: | |||
7883 | /jss-plugin-compose@10.10.0: | 7899 | /jss-plugin-compose@10.10.0: |
7884 | resolution: {integrity: sha512-F5kgtWpI2XfZ3Z8eP78tZEYFdgTIbpA/TMuX3a8vwrNolYtN1N4qJR/Ob0LAsqIwCMLojtxN7c7Oo/+Vz6THow==} | 7900 | resolution: {integrity: sha512-F5kgtWpI2XfZ3Z8eP78tZEYFdgTIbpA/TMuX3a8vwrNolYtN1N4qJR/Ob0LAsqIwCMLojtxN7c7Oo/+Vz6THow==} |
7885 | dependencies: | 7901 | dependencies: |
7886 | '@babel/runtime': 7.20.7 | 7902 | '@babel/runtime': 7.21.5 |
7887 | jss: 10.10.0 | 7903 | jss: 10.10.0 |
7888 | tiny-warning: 1.0.3 | 7904 | tiny-warning: 1.0.3 |
7889 | dev: false | 7905 | dev: false |
@@ -7891,21 +7907,21 @@ packages: | |||
7891 | /jss-plugin-default-unit@10.10.0: | 7907 | /jss-plugin-default-unit@10.10.0: |
7892 | resolution: {integrity: sha512-SvpajxIECi4JDUbGLefvNckmI+c2VWmP43qnEy/0eiwzRUsafg5DVSIWSzZe4d2vFX1u9nRDP46WCFV/PXVBGQ==} | 7908 | resolution: {integrity: sha512-SvpajxIECi4JDUbGLefvNckmI+c2VWmP43qnEy/0eiwzRUsafg5DVSIWSzZe4d2vFX1u9nRDP46WCFV/PXVBGQ==} |
7893 | dependencies: | 7909 | dependencies: |
7894 | '@babel/runtime': 7.20.7 | 7910 | '@babel/runtime': 7.21.5 |
7895 | jss: 10.10.0 | 7911 | jss: 10.10.0 |
7896 | dev: false | 7912 | dev: false |
7897 | 7913 | ||
7898 | /jss-plugin-expand@10.10.0: | 7914 | /jss-plugin-expand@10.10.0: |
7899 | resolution: {integrity: sha512-ymT62W2OyDxBxr7A6JR87vVX9vTq2ep5jZLIdUSusfBIEENLdkkc0lL/Xaq8W9s3opUq7R0sZQpzRWELrfVYzA==} | 7915 | resolution: {integrity: sha512-ymT62W2OyDxBxr7A6JR87vVX9vTq2ep5jZLIdUSusfBIEENLdkkc0lL/Xaq8W9s3opUq7R0sZQpzRWELrfVYzA==} |
7900 | dependencies: | 7916 | dependencies: |
7901 | '@babel/runtime': 7.20.7 | 7917 | '@babel/runtime': 7.21.5 |
7902 | jss: 10.10.0 | 7918 | jss: 10.10.0 |
7903 | dev: false | 7919 | dev: false |
7904 | 7920 | ||
7905 | /jss-plugin-extend@10.10.0: | 7921 | /jss-plugin-extend@10.10.0: |
7906 | resolution: {integrity: sha512-sKYrcMfr4xxigmIwqTjxNcHwXJIfvhvjTNxF+Tbc1NmNdyspGW47Ey6sGH8BcQ4FFQhLXctpWCQSpDwdNmXSwg==} | 7922 | resolution: {integrity: sha512-sKYrcMfr4xxigmIwqTjxNcHwXJIfvhvjTNxF+Tbc1NmNdyspGW47Ey6sGH8BcQ4FFQhLXctpWCQSpDwdNmXSwg==} |
7907 | dependencies: | 7923 | dependencies: |
7908 | '@babel/runtime': 7.20.7 | 7924 | '@babel/runtime': 7.21.5 |
7909 | jss: 10.10.0 | 7925 | jss: 10.10.0 |
7910 | tiny-warning: 1.0.3 | 7926 | tiny-warning: 1.0.3 |
7911 | dev: false | 7927 | dev: false |
@@ -7913,14 +7929,14 @@ packages: | |||
7913 | /jss-plugin-global@10.10.0: | 7929 | /jss-plugin-global@10.10.0: |
7914 | resolution: {integrity: sha512-icXEYbMufiNuWfuazLeN+BNJO16Ge88OcXU5ZDC2vLqElmMybA31Wi7lZ3lf+vgufRocvPj8443irhYRgWxP+A==} | 7930 | resolution: {integrity: sha512-icXEYbMufiNuWfuazLeN+BNJO16Ge88OcXU5ZDC2vLqElmMybA31Wi7lZ3lf+vgufRocvPj8443irhYRgWxP+A==} |
7915 | dependencies: | 7931 | dependencies: |
7916 | '@babel/runtime': 7.20.7 | 7932 | '@babel/runtime': 7.21.5 |
7917 | jss: 10.10.0 | 7933 | jss: 10.10.0 |
7918 | dev: false | 7934 | dev: false |
7919 | 7935 | ||
7920 | /jss-plugin-nested@10.10.0: | 7936 | /jss-plugin-nested@10.10.0: |
7921 | resolution: {integrity: sha512-9R4JHxxGgiZhurDo3q7LdIiDEgtA1bTGzAbhSPyIOWb7ZubrjQe8acwhEQ6OEKydzpl8XHMtTnEwHXCARLYqYA==} | 7937 | resolution: {integrity: sha512-9R4JHxxGgiZhurDo3q7LdIiDEgtA1bTGzAbhSPyIOWb7ZubrjQe8acwhEQ6OEKydzpl8XHMtTnEwHXCARLYqYA==} |
7922 | dependencies: | 7938 | dependencies: |
7923 | '@babel/runtime': 7.20.7 | 7939 | '@babel/runtime': 7.21.5 |
7924 | jss: 10.10.0 | 7940 | jss: 10.10.0 |
7925 | tiny-warning: 1.0.3 | 7941 | tiny-warning: 1.0.3 |
7926 | dev: false | 7942 | dev: false |
@@ -7928,14 +7944,14 @@ packages: | |||
7928 | /jss-plugin-props-sort@10.10.0: | 7944 | /jss-plugin-props-sort@10.10.0: |
7929 | resolution: {integrity: sha512-5VNJvQJbnq/vRfje6uZLe/FyaOpzP/IH1LP+0fr88QamVrGJa0hpRRyAa0ea4U/3LcorJfBFVyC4yN2QC73lJg==} | 7945 | resolution: {integrity: sha512-5VNJvQJbnq/vRfje6uZLe/FyaOpzP/IH1LP+0fr88QamVrGJa0hpRRyAa0ea4U/3LcorJfBFVyC4yN2QC73lJg==} |
7930 | dependencies: | 7946 | dependencies: |
7931 | '@babel/runtime': 7.20.7 | 7947 | '@babel/runtime': 7.21.5 |
7932 | jss: 10.10.0 | 7948 | jss: 10.10.0 |
7933 | dev: false | 7949 | dev: false |
7934 | 7950 | ||
7935 | /jss-plugin-rule-value-function@10.10.0: | 7951 | /jss-plugin-rule-value-function@10.10.0: |
7936 | resolution: {integrity: sha512-uEFJFgaCtkXeIPgki8ICw3Y7VMkL9GEan6SqmT9tqpwM+/t+hxfMUdU4wQ0MtOiMNWhwnckBV0IebrKcZM9C0g==} | 7952 | resolution: {integrity: sha512-uEFJFgaCtkXeIPgki8ICw3Y7VMkL9GEan6SqmT9tqpwM+/t+hxfMUdU4wQ0MtOiMNWhwnckBV0IebrKcZM9C0g==} |
7937 | dependencies: | 7953 | dependencies: |
7938 | '@babel/runtime': 7.20.7 | 7954 | '@babel/runtime': 7.21.5 |
7939 | jss: 10.10.0 | 7955 | jss: 10.10.0 |
7940 | tiny-warning: 1.0.3 | 7956 | tiny-warning: 1.0.3 |
7941 | dev: false | 7957 | dev: false |
@@ -7943,7 +7959,7 @@ packages: | |||
7943 | /jss-plugin-rule-value-observable@10.10.0: | 7959 | /jss-plugin-rule-value-observable@10.10.0: |
7944 | resolution: {integrity: sha512-ZLMaYrR3QE+vD7nl3oNXuj79VZl9Kp8/u6A1IbTPDcuOu8b56cFdWRZNZ0vNr8jHewooEeq2doy8Oxtymr2ZPA==} | 7960 | resolution: {integrity: sha512-ZLMaYrR3QE+vD7nl3oNXuj79VZl9Kp8/u6A1IbTPDcuOu8b56cFdWRZNZ0vNr8jHewooEeq2doy8Oxtymr2ZPA==} |
7945 | dependencies: | 7961 | dependencies: |
7946 | '@babel/runtime': 7.20.7 | 7962 | '@babel/runtime': 7.21.5 |
7947 | jss: 10.10.0 | 7963 | jss: 10.10.0 |
7948 | symbol-observable: 1.2.0 | 7964 | symbol-observable: 1.2.0 |
7949 | dev: false | 7965 | dev: false |
@@ -7951,7 +7967,7 @@ packages: | |||
7951 | /jss-plugin-template@10.10.0: | 7967 | /jss-plugin-template@10.10.0: |
7952 | resolution: {integrity: sha512-ocXZBIOJOA+jISPdsgkTs8wwpK6UbsvtZK5JI7VUggTD6LWKbtoxUzadd2TpfF+lEtlhUmMsCkTRNkITdPKa6w==} | 7968 | resolution: {integrity: sha512-ocXZBIOJOA+jISPdsgkTs8wwpK6UbsvtZK5JI7VUggTD6LWKbtoxUzadd2TpfF+lEtlhUmMsCkTRNkITdPKa6w==} |
7953 | dependencies: | 7969 | dependencies: |
7954 | '@babel/runtime': 7.20.7 | 7970 | '@babel/runtime': 7.21.5 |
7955 | jss: 10.10.0 | 7971 | jss: 10.10.0 |
7956 | tiny-warning: 1.0.3 | 7972 | tiny-warning: 1.0.3 |
7957 | dev: false | 7973 | dev: false |
@@ -7959,7 +7975,7 @@ packages: | |||
7959 | /jss-plugin-vendor-prefixer@10.10.0: | 7975 | /jss-plugin-vendor-prefixer@10.10.0: |
7960 | resolution: {integrity: sha512-UY/41WumgjW8r1qMCO8l1ARg7NHnfRVWRhZ2E2m0DMYsr2DD91qIXLyNhiX83hHswR7Wm4D+oDYNC1zWCJWtqg==} | 7976 | resolution: {integrity: sha512-UY/41WumgjW8r1qMCO8l1ARg7NHnfRVWRhZ2E2m0DMYsr2DD91qIXLyNhiX83hHswR7Wm4D+oDYNC1zWCJWtqg==} |
7961 | dependencies: | 7977 | dependencies: |
7962 | '@babel/runtime': 7.20.7 | 7978 | '@babel/runtime': 7.21.5 |
7963 | css-vendor: 2.0.8 | 7979 | css-vendor: 2.0.8 |
7964 | jss: 10.10.0 | 7980 | jss: 10.10.0 |
7965 | dev: false | 7981 | dev: false |
@@ -7967,7 +7983,7 @@ packages: | |||
7967 | /jss-preset-default@10.10.0: | 7983 | /jss-preset-default@10.10.0: |
7968 | resolution: {integrity: sha512-GL175Wt2FGhjE+f+Y3aWh+JioL06/QWFgZp53CbNNq6ZkVU0TDplD8Bxm9KnkotAYn3FlplNqoW5CjyLXcoJ7Q==} | 7984 | resolution: {integrity: sha512-GL175Wt2FGhjE+f+Y3aWh+JioL06/QWFgZp53CbNNq6ZkVU0TDplD8Bxm9KnkotAYn3FlplNqoW5CjyLXcoJ7Q==} |
7969 | dependencies: | 7985 | dependencies: |
7970 | '@babel/runtime': 7.20.7 | 7986 | '@babel/runtime': 7.21.5 |
7971 | jss: 10.10.0 | 7987 | jss: 10.10.0 |
7972 | jss-plugin-camel-case: 10.10.0 | 7988 | jss-plugin-camel-case: 10.10.0 |
7973 | jss-plugin-compose: 10.10.0 | 7989 | jss-plugin-compose: 10.10.0 |
@@ -10068,26 +10084,26 @@ packages: | |||
10068 | warning: 4.0.3 | 10084 | warning: 4.0.3 |
10069 | dev: false | 10085 | dev: false |
10070 | 10086 | ||
10071 | /react-router-dom@6.4.2(react-dom@18.2.0)(react@18.2.0): | 10087 | /react-router-dom@6.11.2(react-dom@18.2.0)(react@18.2.0): |
10072 | resolution: {integrity: sha512-yM1kjoTkpfjgczPrcyWrp+OuQMyB1WleICiiGfstnQYo/S8hPEEnVjr/RdmlH6yKK4Tnj1UGXFSa7uwAtmDoLQ==} | 10088 | resolution: {integrity: sha512-JNbKtAeh1VSJQnH6RvBDNhxNwemRj7KxCzc5jb7zvDSKRnPWIFj9pO+eXqjM69gQJ0r46hSz1x4l9y0651DKWw==} |
10073 | engines: {node: '>=14'} | 10089 | engines: {node: '>=14'} |
10074 | peerDependencies: | 10090 | peerDependencies: |
10075 | react: '>=16.8' | 10091 | react: '>=16.8' |
10076 | react-dom: '>=16.8' | 10092 | react-dom: '>=16.8' |
10077 | dependencies: | 10093 | dependencies: |
10078 | '@remix-run/router': 1.0.2 | 10094 | '@remix-run/router': 1.6.2 |
10079 | react: 18.2.0 | 10095 | react: 18.2.0 |
10080 | react-dom: 18.2.0(react@18.2.0) | 10096 | react-dom: 18.2.0(react@18.2.0) |
10081 | react-router: 6.4.2(react@18.2.0) | 10097 | react-router: 6.11.2(react@18.2.0) |
10082 | dev: false | 10098 | dev: false |
10083 | 10099 | ||
10084 | /react-router@6.4.2(react@18.2.0): | 10100 | /react-router@6.11.2(react@18.2.0): |
10085 | resolution: {integrity: sha512-Rb0BAX9KHhVzT1OKhMvCDMw776aTYM0DtkxqUBP8dNBom3mPXlfNs76JNGK8wKJ1IZEY1+WGj+cvZxHVk/GiKw==} | 10101 | resolution: {integrity: sha512-74z9xUSaSX07t3LM+pS6Un0T55ibUE/79CzfZpy5wsPDZaea1F8QkrsiyRnA2YQ7LwE/umaydzXZV80iDCPkMg==} |
10086 | engines: {node: '>=14'} | 10102 | engines: {node: '>=14'} |
10087 | peerDependencies: | 10103 | peerDependencies: |
10088 | react: '>=16.8' | 10104 | react: '>=16.8' |
10089 | dependencies: | 10105 | dependencies: |
10090 | '@remix-run/router': 1.0.2 | 10106 | '@remix-run/router': 1.6.2 |
10091 | react: 18.2.0 | 10107 | react: 18.2.0 |
10092 | dev: false | 10108 | dev: false |
10093 | 10109 | ||
@@ -10105,17 +10121,16 @@ packages: | |||
10105 | react-dom: 18.2.0(react@18.2.0) | 10121 | react-dom: 18.2.0(react@18.2.0) |
10106 | dev: false | 10122 | dev: false |
10107 | 10123 | ||
10108 | /react-tooltip@4.5.1(react-dom@18.2.0)(react@18.2.0): | 10124 | /react-tooltip@5.13.1(react-dom@18.2.0)(react@18.2.0): |
10109 | resolution: {integrity: sha512-Zo+CSFUGXar1uV+bgXFFDe7VeS2iByeIp5rTgTcc2HqtuOS5D76QapejNNfx320MCY91TlhTQat36KGFTqgcvw==} | 10125 | resolution: {integrity: sha512-9NstDFdjyy6cIH9zjeT70zXTHlW/TIGCOWQmhkAyqLFeQioLg1FXvb9ec7AxSpn0zyFUkFSLdFYxZRuewti3Aw==} |
10110 | engines: {npm: '>=6.13'} | ||
10111 | peerDependencies: | 10126 | peerDependencies: |
10112 | react: '>=16.0.0' | 10127 | react: '>=16.14.0' |
10113 | react-dom: '>=16.0.0' | 10128 | react-dom: '>=16.14.0' |
10114 | dependencies: | 10129 | dependencies: |
10115 | prop-types: 15.8.1 | 10130 | '@floating-ui/dom': 1.2.8 |
10131 | classnames: 2.3.2 | ||
10116 | react: 18.2.0 | 10132 | react: 18.2.0 |
10117 | react-dom: 18.2.0(react@18.2.0) | 10133 | react-dom: 18.2.0(react@18.2.0) |
10118 | uuid: 7.0.3 | ||
10119 | dev: false | 10134 | dev: false |
10120 | 10135 | ||
10121 | /react-topbar-progress-indicator@4.1.1(react@18.2.0): | 10136 | /react-topbar-progress-indicator@4.1.1(react@18.2.0): |
@@ -10127,19 +10142,18 @@ packages: | |||
10127 | topbar: 0.1.4 | 10142 | topbar: 0.1.4 |
10128 | dev: false | 10143 | dev: false |
10129 | 10144 | ||
10130 | /react-transition-group@1.2.1(react-dom@18.2.0)(react@18.2.0): | 10145 | /react-transition-group@4.4.5(react-dom@18.2.0)(react@18.2.0): |
10131 | resolution: {integrity: sha512-CWaL3laCmgAFdxdKbhhps+c0HRGF4c+hdM4H23+FI1QBNUyx/AMeIJGWorehPNSaKnQNOAxL7PQmqMu78CDj3Q==} | 10146 | resolution: {integrity: sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==} |
10132 | peerDependencies: | 10147 | peerDependencies: |
10133 | react: ^15.0.0 || ^16.0.0 | 10148 | react: '>=16.6.0' |
10134 | react-dom: ^15.0.0 || ^16.0.0 | 10149 | react-dom: '>=16.6.0' |
10135 | dependencies: | 10150 | dependencies: |
10136 | chain-function: 1.0.1 | 10151 | '@babel/runtime': 7.21.5 |
10137 | dom-helpers: 3.4.0 | 10152 | dom-helpers: 5.2.1 |
10138 | loose-envify: 1.4.0 | 10153 | loose-envify: 1.4.0 |
10139 | prop-types: 15.8.1 | 10154 | prop-types: 15.8.1 |
10140 | react: 18.2.0 | 10155 | react: 18.2.0 |
10141 | react-dom: 18.2.0(react@18.2.0) | 10156 | react-dom: 18.2.0(react@18.2.0) |
10142 | warning: 3.0.0 | ||
10143 | dev: false | 10157 | dev: false |
10144 | 10158 | ||
10145 | /react-window@1.8.8(react-dom@18.2.0)(react@18.2.0): | 10159 | /react-window@1.8.8(react-dom@18.2.0)(react@18.2.0): |
@@ -11937,11 +11951,6 @@ packages: | |||
11937 | hasBin: true | 11951 | hasBin: true |
11938 | dev: false | 11952 | dev: false |
11939 | 11953 | ||
11940 | /uuid@7.0.3: | ||
11941 | resolution: {integrity: sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==} | ||
11942 | hasBin: true | ||
11943 | dev: false | ||
11944 | |||
11945 | /uuid@8.3.2: | 11954 | /uuid@8.3.2: |
11946 | resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} | 11955 | resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} |
11947 | hasBin: true | 11956 | hasBin: true |
@@ -12046,12 +12055,6 @@ packages: | |||
12046 | engines: {node: '>=0.10.0'} | 12055 | engines: {node: '>=0.10.0'} |
12047 | dev: false | 12056 | dev: false |
12048 | 12057 | ||
12049 | /warning@3.0.0: | ||
12050 | resolution: {integrity: sha512-jMBt6pUrKn5I+OGgtQ4YZLdhIeJmObddh6CsibPxyQ5yPZm1XExSyzC1LCNX7BzhxWgiHmizBWJTHJIjMjTQYQ==} | ||
12051 | dependencies: | ||
12052 | loose-envify: 1.4.0 | ||
12053 | dev: false | ||
12054 | |||
12055 | /warning@4.0.3: | 12058 | /warning@4.0.3: |
12056 | resolution: {integrity: sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==} | 12059 | resolution: {integrity: sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==} |
12057 | dependencies: | 12060 | dependencies: |
diff --git a/src/components/layout/Sidebar.tsx b/src/components/layout/Sidebar.tsx index fac424477..2b1e87023 100644 --- a/src/components/layout/Sidebar.tsx +++ b/src/components/layout/Sidebar.tsx | |||
@@ -1,5 +1,5 @@ | |||
1 | import { Component } from 'react'; | 1 | import { Component } from 'react'; |
2 | import ReactTooltip from 'react-tooltip'; | 2 | import { Tooltip as ReactTooltip } from 'react-tooltip'; |
3 | import { defineMessages, injectIntl, WrappedComponentProps } from 'react-intl'; | 3 | import { defineMessages, injectIntl, WrappedComponentProps } from 'react-intl'; |
4 | import { inject, observer } from 'mobx-react'; | 4 | import { inject, observer } from 'mobx-react'; |
5 | import { | 5 | import { |
@@ -123,10 +123,6 @@ class Sidebar extends Component<IProps, IState> { | |||
123 | }; | 123 | }; |
124 | } | 124 | } |
125 | 125 | ||
126 | componentDidUpdate() { | ||
127 | ReactTooltip.rebuild(); | ||
128 | } | ||
129 | |||
130 | enableToolTip() { | 126 | enableToolTip() { |
131 | this.setState({ tooltipEnabled: true }); | 127 | this.setState({ tooltipEnabled: true }); |
132 | } | 128 | } |
@@ -232,7 +228,8 @@ class Sidebar extends Component<IProps, IState> { | |||
232 | type="button" | 228 | type="button" |
233 | onClick={() => openSettings({ path: 'recipes' })} | 229 | onClick={() => openSettings({ path: 'recipes' })} |
234 | className="sidebar__button sidebar__button--new-service" | 230 | className="sidebar__button sidebar__button--new-service" |
235 | data-tip={`${intl.formatMessage( | 231 | data-tooltip-id="tooltip-sidebar-button" |
232 | data-tooltip-content={`${intl.formatMessage( | ||
236 | messages.addNewService, | 233 | messages.addNewService, |
237 | )} (${addNewServiceShortcutKey(false)})`} | 234 | )} (${addNewServiceShortcutKey(false)})`} |
238 | > | 235 | > |
@@ -251,7 +248,8 @@ class Sidebar extends Component<IProps, IState> { | |||
251 | }); | 248 | }); |
252 | }} | 249 | }} |
253 | className="sidebar__button sidebar__button--split-mode-toggle" | 250 | className="sidebar__button sidebar__button--split-mode-toggle" |
254 | data-tip={`${intl.formatMessage( | 251 | data-tooltip-id="tooltip-sidebar-button" |
252 | data-tooltip-content={`${intl.formatMessage( | ||
255 | messages.splitModeToggle, | 253 | messages.splitModeToggle, |
256 | )} (${splitModeToggleShortcutKey(false)})`} | 254 | )} (${splitModeToggleShortcutKey(false)})`} |
257 | > | 255 | > |
@@ -268,7 +266,8 @@ class Sidebar extends Component<IProps, IState> { | |||
268 | className={`sidebar__button sidebar__button--workspaces ${ | 266 | className={`sidebar__button sidebar__button--workspaces ${ |
269 | isWorkspaceDrawerOpen ? 'is-active' : '' | 267 | isWorkspaceDrawerOpen ? 'is-active' : '' |
270 | }`} | 268 | }`} |
271 | data-tip={`${intl.formatMessage( | 269 | data-tooltip-id="tooltip-sidebar-button" |
270 | data-tooltip-content={`${intl.formatMessage( | ||
272 | workspaceToggleMessage, | 271 | workspaceToggleMessage, |
273 | )} (${workspaceToggleShortcutKey(false)})`} | 272 | )} (${workspaceToggleShortcutKey(false)})`} |
274 | > | 273 | > |
@@ -285,7 +284,8 @@ class Sidebar extends Component<IProps, IState> { | |||
285 | className={`sidebar__button sidebar__button--audio ${ | 284 | className={`sidebar__button sidebar__button--audio ${ |
286 | isAppMuted ? 'is-muted' : '' | 285 | isAppMuted ? 'is-muted' : '' |
287 | }`} | 286 | }`} |
288 | data-tip={`${intl.formatMessage( | 287 | data-tooltip-id="tooltip-sidebar-button" |
288 | data-tooltip-content={`${intl.formatMessage( | ||
289 | isAppMuted ? messages.unmute : messages.mute, | 289 | isAppMuted ? messages.unmute : messages.mute, |
290 | )} (${muteFerdiumShortcutKey(false)})`} | 290 | )} (${muteFerdiumShortcutKey(false)})`} |
291 | > | 291 | > |
@@ -303,7 +303,8 @@ class Sidebar extends Component<IProps, IState> { | |||
303 | className={`sidebar__button sidebar__button--todos ${ | 303 | className={`sidebar__button sidebar__button--todos ${ |
304 | todosStore.isTodosPanelVisible ? 'is-active' : '' | 304 | todosStore.isTodosPanelVisible ? 'is-active' : '' |
305 | }`} | 305 | }`} |
306 | data-tip={`${intl.formatMessage( | 306 | data-tooltip-id="tooltip-sidebar-button" |
307 | data-tooltip-content={`${intl.formatMessage( | ||
307 | todosToggleMessage, | 308 | todosToggleMessage, |
308 | )} (${todosToggleShortcutKey(false)})`} | 309 | )} (${todosToggleShortcutKey(false)})`} |
309 | > | 310 | > |
@@ -322,7 +323,8 @@ class Sidebar extends Component<IProps, IState> { | |||
322 | }, | 323 | }, |
323 | }); | 324 | }); |
324 | }} | 325 | }} |
325 | data-tip={`${intl.formatMessage( | 326 | data-tooltip-id="tooltip-sidebar-button" |
327 | data-tooltip-content={`${intl.formatMessage( | ||
326 | messages.lockFerdium, | 328 | messages.lockFerdium, |
327 | )} (${lockFerdiumShortcutKey(false)})`} | 329 | )} (${lockFerdiumShortcutKey(false)})`} |
328 | > | 330 | > |
@@ -331,14 +333,20 @@ class Sidebar extends Component<IProps, IState> { | |||
331 | ) : null} | 333 | ) : null} |
332 | </> | 334 | </> |
333 | {this.state.tooltipEnabled && ( | 335 | {this.state.tooltipEnabled && ( |
334 | <ReactTooltip place="right" type="dark" effect="solid" /> | 336 | <ReactTooltip |
337 | id="tooltip-sidebar-button" | ||
338 | place="right" | ||
339 | variant="dark" | ||
340 | style={{ height: 'auto', overflowY: 'unset' }} | ||
341 | /> | ||
335 | )} | 342 | )} |
336 | {!hideSettingsButton && !isMenuCollapsed ? ( | 343 | {!hideSettingsButton && !isMenuCollapsed ? ( |
337 | <button | 344 | <button |
338 | type="button" | 345 | type="button" |
339 | onClick={() => openSettings({ path: 'app' })} | 346 | onClick={() => openSettings({ path: 'app' })} |
340 | className="sidebar__button sidebar__button--settings" | 347 | className="sidebar__button sidebar__button--settings" |
341 | data-tip={`${intl.formatMessage( | 348 | data-tooltip-id="tooltip-sidebar-button" |
349 | data-tooltip-content={`${intl.formatMessage( | ||
342 | globalMessages.settings, | 350 | globalMessages.settings, |
343 | )} (${settingsShortcutKey(false)})`} | 351 | )} (${settingsShortcutKey(false)})`} |
344 | > | 352 | > |
diff --git a/src/components/services/tabs/TabItem.tsx b/src/components/services/tabs/TabItem.tsx index c883066ce..c25af4427 100644 --- a/src/components/services/tabs/TabItem.tsx +++ b/src/components/services/tabs/TabItem.tsx | |||
@@ -359,7 +359,8 @@ class TabItem extends Component<IProps, IState> { | |||
359 | onKeyDown={noop} | 359 | onKeyDown={noop} |
360 | role="presentation" | 360 | role="presentation" |
361 | onContextMenu={() => menu.popup()} | 361 | onContextMenu={() => menu.popup()} |
362 | data-tip={`${service.name} ${acceleratorString( | 362 | data-tooltip-id="tooltip-sidebar-button" |
363 | data-tooltip-content={`${service.name} ${acceleratorString( | ||
363 | shortcutIndex, | 364 | shortcutIndex, |
364 | cmdOrCtrlShortcutKey(false), | 365 | cmdOrCtrlShortcutKey(false), |
365 | )}`} | 366 | )}`} |
diff --git a/src/components/settings/account/AccountDashboard.tsx b/src/components/settings/account/AccountDashboard.tsx index 163b0a160..de323c06e 100644 --- a/src/components/settings/account/AccountDashboard.tsx +++ b/src/components/settings/account/AccountDashboard.tsx | |||
@@ -1,7 +1,7 @@ | |||
1 | import { Component } from 'react'; | 1 | import { Component } from 'react'; |
2 | import { observer } from 'mobx-react'; | 2 | import { observer } from 'mobx-react'; |
3 | import { defineMessages, injectIntl, WrappedComponentProps } from 'react-intl'; | 3 | import { defineMessages, injectIntl, WrappedComponentProps } from 'react-intl'; |
4 | import ReactTooltip from 'react-tooltip'; | 4 | import { Tooltip as ReactTooltip } from 'react-tooltip'; |
5 | import { H1, H2 } from '../../ui/headline'; | 5 | import { H1, H2 } from '../../ui/headline'; |
6 | 6 | ||
7 | import Loader from '../../ui/Loader'; | 7 | import Loader from '../../ui/Loader'; |
@@ -215,7 +215,12 @@ class AccountDashboard extends Component<IProp> { | |||
215 | </> | 215 | </> |
216 | )} | 216 | )} |
217 | </div> | 217 | </div> |
218 | <ReactTooltip place="right" type="dark" effect="solid" /> | 218 | <ReactTooltip |
219 | place="right" | ||
220 | variant="dark" | ||
221 | float | ||
222 | style={{ height: 'auto' }} | ||
223 | /> | ||
219 | </div> | 224 | </div> |
220 | ); | 225 | ); |
221 | } | 226 | } |
diff --git a/src/components/settings/services/ServiceItem.tsx b/src/components/settings/services/ServiceItem.tsx index bf2dfa9da..babe06b5a 100644 --- a/src/components/settings/services/ServiceItem.tsx +++ b/src/components/settings/services/ServiceItem.tsx | |||
@@ -1,6 +1,6 @@ | |||
1 | import { Component, ReactElement } from 'react'; | 1 | import { Component, ReactElement } from 'react'; |
2 | import { defineMessages, injectIntl, WrappedComponentProps } from 'react-intl'; | 2 | import { defineMessages, injectIntl, WrappedComponentProps } from 'react-intl'; |
3 | import ReactTooltip from 'react-tooltip'; | 3 | import { Tooltip as ReactTooltip } from 'react-tooltip'; |
4 | import { observer } from 'mobx-react'; | 4 | import { observer } from 'mobx-react'; |
5 | import classnames from 'classnames'; | 5 | import classnames from 'classnames'; |
6 | import { mdiBellOff, mdiMessageBulletedOff, mdiPower } from '@mdi/js'; | 6 | import { mdiBellOff, mdiMessageBulletedOff, mdiPower } from '@mdi/js'; |
@@ -73,7 +73,8 @@ class ServiceItem extends Component<IProps> { | |||
73 | {service.isMuted && ( | 73 | {service.isMuted && ( |
74 | <Icon | 74 | <Icon |
75 | icon={mdiBellOff} | 75 | icon={mdiBellOff} |
76 | data-tip={intl.formatMessage(messages.tooltipIsMuted)} | 76 | data-tooltip-id="tooltip-service-item" |
77 | data-tooltip-content={intl.formatMessage(messages.tooltipIsMuted)} | ||
77 | /> | 78 | /> |
78 | )} | 79 | )} |
79 | </td> | 80 | </td> |
@@ -85,7 +86,10 @@ class ServiceItem extends Component<IProps> { | |||
85 | {!service.isEnabled && ( | 86 | {!service.isEnabled && ( |
86 | <Icon | 87 | <Icon |
87 | icon={mdiPower} | 88 | icon={mdiPower} |
88 | data-tip={intl.formatMessage(messages.tooltipIsDisabled)} | 89 | data-tooltip-id="tooltip-service-item" |
90 | data-tooltip-content={intl.formatMessage( | ||
91 | messages.tooltipIsDisabled, | ||
92 | )} | ||
89 | /> | 93 | /> |
90 | )} | 94 | )} |
91 | </td> | 95 | </td> |
@@ -97,12 +101,18 @@ class ServiceItem extends Component<IProps> { | |||
97 | {!service.isNotificationEnabled && ( | 101 | {!service.isNotificationEnabled && ( |
98 | <Icon | 102 | <Icon |
99 | icon={mdiMessageBulletedOff} | 103 | icon={mdiMessageBulletedOff} |
100 | data-tip={intl.formatMessage( | 104 | data-tooltip-id="tooltip-service-item" |
105 | data-tooltip-content={intl.formatMessage( | ||
101 | messages.tooltipNotificationsDisabled, | 106 | messages.tooltipNotificationsDisabled, |
102 | )} | 107 | )} |
103 | /> | 108 | /> |
104 | )} | 109 | )} |
105 | <ReactTooltip place="top" type="dark" effect="solid" /> | 110 | <ReactTooltip |
111 | id="tooltip-service-item" | ||
112 | place="right" | ||
113 | variant="dark" | ||
114 | style={{ height: 'auto' }} | ||
115 | /> | ||
106 | </td> | 116 | </td> |
107 | </tr> | 117 | </tr> |
108 | ); | 118 | ); |
diff --git a/src/components/settings/team/TeamDashboard.tsx b/src/components/settings/team/TeamDashboard.tsx index 6fd2d4426..77bccb8c3 100644 --- a/src/components/settings/team/TeamDashboard.tsx +++ b/src/components/settings/team/TeamDashboard.tsx | |||
@@ -3,7 +3,7 @@ | |||
3 | import { Component, ReactElement } from 'react'; | 3 | import { Component, ReactElement } from 'react'; |
4 | import { observer } from 'mobx-react'; | 4 | import { observer } from 'mobx-react'; |
5 | import { defineMessages, injectIntl, WrappedComponentProps } from 'react-intl'; | 5 | import { defineMessages, injectIntl, WrappedComponentProps } from 'react-intl'; |
6 | import ReactTooltip from 'react-tooltip'; | 6 | import { Tooltip as ReactTooltip } from 'react-tooltip'; |
7 | import withStyles, { WithStylesProps } from 'react-jss'; | 7 | import withStyles, { WithStylesProps } from 'react-jss'; |
8 | import classnames from 'classnames'; | 8 | import classnames from 'classnames'; |
9 | import Loader from '../../ui/Loader'; | 9 | import Loader from '../../ui/Loader'; |
@@ -173,7 +173,12 @@ class TeamDashboard extends Component<IProps> { | |||
173 | </> | 173 | </> |
174 | )} | 174 | )} |
175 | </div> | 175 | </div> |
176 | <ReactTooltip place="right" type="dark" effect="solid" /> | 176 | <ReactTooltip |
177 | place="right" | ||
178 | variant="dark" | ||
179 | float | ||
180 | style={{ height: 'auto' }} | ||
181 | /> | ||
177 | </div> | 182 | </div> |
178 | ) : ( | 183 | ) : ( |
179 | <div className="settings__main"> | 184 | <div className="settings__main"> |
diff --git a/src/components/ui/effects/Appear.tsx b/src/components/ui/effects/Appear.tsx index 2076f6ba6..0868271f3 100644 --- a/src/components/ui/effects/Appear.tsx +++ b/src/components/ui/effects/Appear.tsx | |||
@@ -1,5 +1,5 @@ | |||
1 | import { ReactElement, ReactNode, useEffect, useState } from 'react'; | 1 | import { ReactElement, ReactNode, useEffect, useState } from 'react'; |
2 | import { CSSTransitionGroup } from 'react-transition-group'; | 2 | import { TransitionGroup, CSSTransition } from 'react-transition-group'; |
3 | 3 | ||
4 | interface IProps { | 4 | interface IProps { |
5 | children: ReactNode; | 5 | children: ReactNode; |
@@ -7,7 +7,6 @@ interface IProps { | |||
7 | className?: string; | 7 | className?: string; |
8 | transitionAppear?: boolean; | 8 | transitionAppear?: boolean; |
9 | transitionLeave?: boolean; | 9 | transitionLeave?: boolean; |
10 | transitionAppearTimeout?: number; | ||
11 | transitionEnterTimeout?: number; | 10 | transitionEnterTimeout?: number; |
12 | transitionLeaveTimeout?: number; | 11 | transitionLeaveTimeout?: number; |
13 | } | 12 | } |
@@ -18,7 +17,6 @@ const Appear = ({ | |||
18 | className = '', | 17 | className = '', |
19 | transitionAppear = true, | 18 | transitionAppear = true, |
20 | transitionLeave = true, | 19 | transitionLeave = true, |
21 | transitionAppearTimeout = 1500, | ||
22 | transitionEnterTimeout = 1500, | 20 | transitionEnterTimeout = 1500, |
23 | transitionLeaveTimeout = 1500, | 21 | transitionLeaveTimeout = 1500, |
24 | }: IProps): ReactElement | null => { | 22 | }: IProps): ReactElement | null => { |
@@ -33,17 +31,21 @@ const Appear = ({ | |||
33 | } | 31 | } |
34 | 32 | ||
35 | return ( | 33 | return ( |
36 | <CSSTransitionGroup | 34 | <TransitionGroup |
37 | transitionName={transitionName} | 35 | appear={transitionAppear} |
38 | transitionAppear={transitionAppear} | 36 | exit={transitionLeave} |
39 | transitionLeave={transitionLeave} | ||
40 | transitionAppearTimeout={transitionAppearTimeout} | ||
41 | transitionEnterTimeout={transitionEnterTimeout} | ||
42 | transitionLeaveTimeout={transitionLeaveTimeout} | ||
43 | className={className} | 37 | className={className} |
44 | > | 38 | > |
45 | {children} | 39 | <CSSTransition |
46 | </CSSTransitionGroup> | 40 | classNames={transitionName} |
41 | timeout={{ | ||
42 | enter: transitionEnterTimeout, | ||
43 | exit: transitionLeaveTimeout, | ||
44 | }} | ||
45 | > | ||
46 | {children} | ||
47 | </CSSTransition> | ||
48 | </TransitionGroup> | ||
47 | ); | 49 | ); |
48 | }; | 50 | }; |
49 | 51 | ||
diff --git a/src/features/webControls/components/WebControls.tsx b/src/features/webControls/components/WebControls.tsx index e76fca6a2..54f45c843 100644 --- a/src/features/webControls/components/WebControls.tsx +++ b/src/features/webControls/components/WebControls.tsx | |||
@@ -9,6 +9,7 @@ import { | |||
9 | mdiHomeOutline, | 9 | mdiHomeOutline, |
10 | mdiEarth, | 10 | mdiEarth, |
11 | } from '@mdi/js'; | 11 | } from '@mdi/js'; |
12 | import { Tooltip as ReactTooltip } from 'react-tooltip'; | ||
12 | import Icon from '../../../components/ui/icon'; | 13 | import Icon from '../../../components/ui/icon'; |
13 | 14 | ||
14 | const messages = defineMessages({ | 15 | const messages = defineMessages({ |
@@ -151,7 +152,8 @@ class WebControls extends Component<IProps, IState> { | |||
151 | onClick={goHome} | 152 | onClick={goHome} |
152 | type="button" | 153 | type="button" |
153 | className={classes.button} | 154 | className={classes.button} |
154 | data-tip={intl.formatMessage(messages.goHome)} | 155 | data-tooltip-id="tooltip-web-controls" |
156 | data-tooltip-content={intl.formatMessage(messages.goHome)} | ||
155 | data-place="bottom" | 157 | data-place="bottom" |
156 | > | 158 | > |
157 | <Icon icon={mdiHomeOutline} className={classes.icon} /> | 159 | <Icon icon={mdiHomeOutline} className={classes.icon} /> |
@@ -161,7 +163,8 @@ class WebControls extends Component<IProps, IState> { | |||
161 | type="button" | 163 | type="button" |
162 | className={classes.button} | 164 | className={classes.button} |
163 | disabled={!canGoBack} | 165 | disabled={!canGoBack} |
164 | data-tip={intl.formatMessage(messages.back)} | 166 | data-tooltip-id="tooltip-web-controls" |
167 | data-tooltip-content={intl.formatMessage(messages.back)} | ||
165 | data-place="bottom" | 168 | data-place="bottom" |
166 | > | 169 | > |
167 | <Icon icon={mdiArrowLeft} className={classes.icon} /> | 170 | <Icon icon={mdiArrowLeft} className={classes.icon} /> |
@@ -171,7 +174,8 @@ class WebControls extends Component<IProps, IState> { | |||
171 | type="button" | 174 | type="button" |
172 | className={classes.button} | 175 | className={classes.button} |
173 | disabled={!canGoForward} | 176 | disabled={!canGoForward} |
174 | data-tip={intl.formatMessage(messages.forward)} | 177 | data-tooltip-id="tooltip-web-controls" |
178 | data-tooltip-content={intl.formatMessage(messages.forward)} | ||
175 | data-place="bottom" | 179 | data-place="bottom" |
176 | > | 180 | > |
177 | <Icon icon={mdiArrowRight} className={classes.icon} /> | 181 | <Icon icon={mdiArrowRight} className={classes.icon} /> |
@@ -180,7 +184,8 @@ class WebControls extends Component<IProps, IState> { | |||
180 | onClick={reload} | 184 | onClick={reload} |
181 | type="button" | 185 | type="button" |
182 | className={classes.button} | 186 | className={classes.button} |
183 | data-tip={intl.formatMessage(messages.reload)} | 187 | data-tooltip-id="tooltip-web-controls" |
188 | data-tooltip-content={intl.formatMessage(messages.reload)} | ||
184 | data-place="bottom" | 189 | data-place="bottom" |
185 | > | 190 | > |
186 | <Icon icon={mdiReload} className={classes.icon} /> | 191 | <Icon icon={mdiReload} className={classes.icon} /> |
@@ -232,11 +237,18 @@ class WebControls extends Component<IProps, IState> { | |||
232 | onClick={openInBrowser} | 237 | onClick={openInBrowser} |
233 | type="button" | 238 | type="button" |
234 | className={classes.button} | 239 | className={classes.button} |
235 | data-tip={intl.formatMessage(messages.openInBrowser)} | 240 | data-tooltip-id="tooltip-web-controls" |
241 | data-tooltip-content={intl.formatMessage(messages.openInBrowser)} | ||
236 | data-place="bottom" | 242 | data-place="bottom" |
237 | > | 243 | > |
238 | <Icon icon={mdiEarth} className={classes.icon} /> | 244 | <Icon icon={mdiEarth} className={classes.icon} /> |
239 | </button> | 245 | </button> |
246 | <ReactTooltip | ||
247 | id="tooltip-web-controls" | ||
248 | place="bottom" | ||
249 | variant="dark" | ||
250 | style={{ height: 'auto' }} | ||
251 | /> | ||
240 | </div> | 252 | </div> |
241 | ); | 253 | ); |
242 | } | 254 | } |
diff --git a/src/features/workspaces/components/WorkspaceDrawer.tsx b/src/features/workspaces/components/WorkspaceDrawer.tsx index 61284d81a..1c827e9dd 100644 --- a/src/features/workspaces/components/WorkspaceDrawer.tsx +++ b/src/features/workspaces/components/WorkspaceDrawer.tsx | |||
@@ -2,7 +2,7 @@ import { Component, ReactElement } from 'react'; | |||
2 | import { observer } from 'mobx-react'; | 2 | import { observer } from 'mobx-react'; |
3 | import withStyles, { WithStylesProps } from 'react-jss'; | 3 | import withStyles, { WithStylesProps } from 'react-jss'; |
4 | import { defineMessages, injectIntl, WrappedComponentProps } from 'react-intl'; | 4 | import { defineMessages, injectIntl, WrappedComponentProps } from 'react-intl'; |
5 | import ReactTooltip from 'react-tooltip'; | 5 | import { Tooltip as ReactTooltip } from 'react-tooltip'; |
6 | import { mdiPlusBox, mdiCog } from '@mdi/js'; | 6 | import { mdiPlusBox, mdiCog } from '@mdi/js'; |
7 | import { noop } from 'lodash'; | 7 | import { noop } from 'lodash'; |
8 | import { H1 } from '../../../components/ui/headline'; | 8 | import { H1 } from '../../../components/ui/headline'; |
@@ -96,7 +96,6 @@ interface IProps extends WithStylesProps<typeof styles>, WrappedComponentProps { | |||
96 | class WorkspaceDrawer extends Component<IProps> { | 96 | class WorkspaceDrawer extends Component<IProps> { |
97 | componentDidMount(): void { | 97 | componentDidMount(): void { |
98 | try { | 98 | try { |
99 | ReactTooltip.rebuild(); | ||
100 | getUserWorkspacesRequest.execute(); | 99 | getUserWorkspacesRequest.execute(); |
101 | } catch (error) { | 100 | } catch (error) { |
102 | console.log(error); | 101 | console.log(error); |
@@ -121,7 +120,8 @@ class WorkspaceDrawer extends Component<IProps> { | |||
121 | onClick={() => { | 120 | onClick={() => { |
122 | workspaceActions.openWorkspaceSettings(); | 121 | workspaceActions.openWorkspaceSettings(); |
123 | }} | 122 | }} |
124 | data-tip={`${intl.formatMessage( | 123 | data-tooltip-id="tooltip-workspaces-drawer" |
124 | data-tooltip-content={`${intl.formatMessage( | ||
125 | messages.workspacesSettingsTooltip, | 125 | messages.workspacesSettingsTooltip, |
126 | )}`} | 126 | )}`} |
127 | > | 127 | > |
@@ -176,7 +176,12 @@ class WorkspaceDrawer extends Component<IProps> { | |||
176 | <span>{intl.formatMessage(messages.addNewWorkspaceLabel)}</span> | 176 | <span>{intl.formatMessage(messages.addNewWorkspaceLabel)}</span> |
177 | </div> | 177 | </div> |
178 | </div> | 178 | </div> |
179 | <ReactTooltip place="right" type="dark" effect="solid" /> | 179 | <ReactTooltip |
180 | id="tooltip-workspaces-drawer" | ||
181 | place="right" | ||
182 | variant="dark" | ||
183 | style={{ height: 'auto', zIndex: 210 }} | ||
184 | /> | ||
180 | </div> | 185 | </div> |
181 | ); | 186 | ); |
182 | } | 187 | } |
diff --git a/src/features/workspaces/components/WorkspaceDrawerItem.tsx b/src/features/workspaces/components/WorkspaceDrawerItem.tsx index cf8c3b2ba..172b4192c 100644 --- a/src/features/workspaces/components/WorkspaceDrawerItem.tsx +++ b/src/features/workspaces/components/WorkspaceDrawerItem.tsx | |||
@@ -119,7 +119,8 @@ class WorkspaceDrawerItem extends Component<IProps> { | |||
119 | } | 119 | } |
120 | }} | 120 | }} |
121 | onKeyDown={noop} | 121 | onKeyDown={noop} |
122 | data-tip={acceleratorString( | 122 | data-tooltip-id="tooltip-workspaces-drawer" |
123 | data-tooltip-content={acceleratorString( | ||
123 | shortcutIndex, | 124 | shortcutIndex, |
124 | `${cmdOrCtrlShortcutKey(false)}+${altKey(false)}`, | 125 | `${cmdOrCtrlShortcutKey(false)}+${altKey(false)}`, |
125 | )} | 126 | )} |
diff --git a/src/routes.tsx b/src/routes.tsx index 04b6fa96f..beada5c96 100644 --- a/src/routes.tsx +++ b/src/routes.tsx | |||
@@ -51,6 +51,7 @@ class FerdiumRoutes extends Component<IProps> { | |||
51 | const errorProps = { error: routeProps.stores.globalError.error || {} }; | 51 | const errorProps = { error: routeProps.stores.globalError.error || {} }; |
52 | 52 | ||
53 | return ( | 53 | return ( |
54 | // @ts-expect-error | ||
54 | <HistoryRouter history={history}> | 55 | <HistoryRouter history={history}> |
55 | <Routes> | 56 | <Routes> |
56 | <Route path="/auth" element={<AuthLayoutContainer {...routeProps} />}> | 57 | <Route path="/auth" element={<AuthLayoutContainer {...routeProps} />}> |
diff --git a/src/styles/main.scss b/src/styles/main.scss index 8369c9298..eb7649bfa 100644 --- a/src/styles/main.scss +++ b/src/styles/main.scss | |||
@@ -1,5 +1,6 @@ | |||
1 | @import '../../node_modules/electron-react-titlebar/assets/style'; | 1 | @import '../../node_modules/electron-react-titlebar/assets/style'; |
2 | 2 | ||
3 | |||
3 | // modules | 4 | // modules |
4 | @import './globals.scss'; | 5 | @import './globals.scss'; |
5 | @import './reset.scss'; | 6 | @import './reset.scss'; |