diff --git a/bun.lock b/bun.lock index 87abf85f30..7644e3ef75 100644 --- a/bun.lock +++ b/bun.lock @@ -24,12 +24,10 @@ "@lezer/highlight": "1.2.1", "@lezer/lr": "1.4.2", "@material/material-color-utilities": "0.3.0", - "@mui/icons-material": "5.16.7", - "@mui/lab": "5.0.0-alpha.170", - "@mui/material": "5.16.7", - "@mui/styles": "5.16.7", - "@mui/system": "5.16.7", - "@mui/x-data-grid": "6.20.4", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@mui/system": "7.3.10", + "@mui/x-data-grid": "7.29.12", "@playwright/test": "1.55.1", "@storybook/addon-links": "9.1.8", "@storybook/react-vite": "9.1.8", @@ -127,6 +125,9 @@ }, }, }, + "overrides": { + "react-is": "^18.3.1", + }, "packages": { "@0no-co/graphql.web": ["@0no-co/graphql.web@1.2.0", "", { "peerDependencies": { "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0" }, "optionalPeers": ["graphql"] }, "sha512-/1iHy9TTr63gE1YcR5idjx8UREz1s0kFhydf3bBLCXyqjhkIc6igAzTOx3zPifCwFR87tsh/4Pa9cNts6d2otw=="], @@ -492,29 +493,25 @@ "@mswjs/interceptors": ["@mswjs/interceptors@0.39.6", "", { "dependencies": { "@open-draft/deferred-promise": "^2.2.0", "@open-draft/logger": "^0.3.0", "@open-draft/until": "^2.0.0", "is-node-process": "^1.2.0", "outvariant": "^1.4.3", "strict-event-emitter": "^0.5.1" } }, "sha512-bndDP83naYYkfayr/qhBHMhk0YGwS1iv6vaEGcr0SQbO0IZtbOPqjKjds/WcG+bJA+1T5vCx6kprKOzn5Bg+Vw=="], - "@mui/base": ["@mui/base@5.0.0-beta.40", "", { "dependencies": { "@babel/runtime": "^7.23.9", "@floating-ui/react-dom": "^2.0.8", "@mui/types": "^7.2.14", "@mui/utils": "^5.15.14", "@popperjs/core": "^2.11.8", "clsx": "^2.1.0", "prop-types": "^15.8.1" }, "peerDependencies": { "@types/react": "^17.0.0 || ^18.0.0", "react": "^17.0.0 || ^18.0.0", "react-dom": "^17.0.0 || ^18.0.0" }, "optionalPeers": ["@types/react"] }, "sha512-I/lGHztkCzvwlXpjD2+SNmvNQvB4227xBXhISPjEaJUXGImOQ9f3D2Yj/T3KasSI/h0MLWy74X0J6clhPmsRbQ=="], - - "@mui/core-downloads-tracker": ["@mui/core-downloads-tracker@5.18.0", "", {}, "sha512-jbhwoQ1AY200PSSOrNXmrFCaSDSJWP7qk6urkTmIirvRXDROkqe+QwcLlUiw/PrREwsIF/vm3/dAXvjlMHF0RA=="], + "@mui/core-downloads-tracker": ["@mui/core-downloads-tracker@7.3.10", "", {}, "sha512-vrOpWRmPJSuwLo23J62wggEm/jvGdzqctej+UOCtgDUz6nZJQuj3ByPccVyaa7eQmwAzUwKN56FQPMKkqbj1GA=="], - "@mui/icons-material": ["@mui/icons-material@5.16.7", "", { "dependencies": { "@babel/runtime": "^7.23.9" }, "peerDependencies": { "@mui/material": "^5.0.0", "@types/react": "^17.0.0 || ^18.0.0", "react": "^17.0.0 || ^18.0.0" }, "optionalPeers": ["@types/react"] }, "sha512-UrGwDJCXEszbDI7yV047BYU5A28eGJ79keTCP4cc74WyncuVrnurlmIRxaHL8YK+LI1Kzq+/JM52IAkNnv4u+Q=="], + "@mui/icons-material": ["@mui/icons-material@7.3.10", "", { "dependencies": { "@babel/runtime": "^7.28.6" }, "peerDependencies": { "@mui/material": "^7.3.10", "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "optionalPeers": ["@types/react"] }, "sha512-Au0ma4NSKGKNiimukj8UT/W1x2Qx6Qwn2RvFGykiSqVLYBNlIOPbjnIMvrwLGLu89EEpTVdu/ys/OduZR+tWqw=="], - "@mui/lab": ["@mui/lab@5.0.0-alpha.170", "", { "dependencies": { "@babel/runtime": "^7.23.9", "@mui/base": "5.0.0-beta.40", "@mui/system": "^5.15.15", "@mui/types": "^7.2.14", "@mui/utils": "^5.15.14", "clsx": "^2.1.0", "prop-types": "^15.8.1" }, "peerDependencies": { "@emotion/react": "^11.5.0", "@emotion/styled": "^11.3.0", "@mui/material": ">=5.15.0", "@types/react": "^17.0.0 || ^18.0.0", "react": "^17.0.0 || ^18.0.0", "react-dom": "^17.0.0 || ^18.0.0" }, "optionalPeers": ["@emotion/react", "@emotion/styled", "@types/react"] }, "sha512-0bDVECGmrNjd3+bLdcLiwYZ0O4HP5j5WSQm5DV6iA/Z9kr8O6AnvZ1bv9ImQbbX7Gj3pX4o43EKwCutj3EQxQg=="], + "@mui/material": ["@mui/material@7.3.10", "", { "dependencies": { "@babel/runtime": "^7.28.6", "@mui/core-downloads-tracker": "^7.3.10", "@mui/system": "^7.3.10", "@mui/types": "^7.4.12", "@mui/utils": "^7.3.10", "@popperjs/core": "^2.11.8", "@types/react-transition-group": "^4.4.12", "clsx": "^2.1.1", "csstype": "^3.2.3", "prop-types": "^15.8.1", "react-is": "^19.2.3", "react-transition-group": "^4.4.5" }, "peerDependencies": { "@emotion/react": "^11.5.0", "@emotion/styled": "^11.3.0", "@mui/material-pigment-css": "^7.3.10", "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "optionalPeers": ["@emotion/react", "@emotion/styled", "@mui/material-pigment-css", "@types/react"] }, "sha512-cHvGOk2ZEfbQt3LnGe0ZKd/ETs9gsUpkW66DCO+GSjMZhpdKU4XsuIr7zJ/B/2XaN8ihxuzHfYAR4zPtCN4RYg=="], - "@mui/material": ["@mui/material@5.16.7", "", { "dependencies": { "@babel/runtime": "^7.23.9", "@mui/core-downloads-tracker": "^5.16.7", "@mui/system": "^5.16.7", "@mui/types": "^7.2.15", "@mui/utils": "^5.16.6", "@popperjs/core": "^2.11.8", "@types/react-transition-group": "^4.4.10", "clsx": "^2.1.0", "csstype": "^3.1.3", "prop-types": "^15.8.1", "react-is": "^18.3.1", "react-transition-group": "^4.4.5" }, "peerDependencies": { "@emotion/react": "^11.5.0", "@emotion/styled": "^11.3.0", "@types/react": "^17.0.0 || ^18.0.0", "react": "^17.0.0 || ^18.0.0", "react-dom": "^17.0.0 || ^18.0.0" }, "optionalPeers": ["@emotion/react", "@emotion/styled", "@types/react"] }, "sha512-cwwVQxBhK60OIOqZOVLFt55t01zmarKJiJUWbk0+8s/Ix5IaUzAShqlJchxsIQ4mSrWqgcKCCXKtIlG5H+/Jmg=="], + "@mui/private-theming": ["@mui/private-theming@7.3.10", "", { "dependencies": { "@babel/runtime": "^7.28.6", "@mui/utils": "^7.3.10", "prop-types": "^15.8.1" }, "peerDependencies": { "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "optionalPeers": ["@types/react"] }, "sha512-j3EZN+zOctxUISvJSmsEPo5o2F8zse4l5vRkBY+ps6UtnL6J7o14kUaI4w7gwo73id9e3cDNMVQK/9BVaMHVBw=="], - "@mui/private-theming": ["@mui/private-theming@5.17.1", "", { "dependencies": { "@babel/runtime": "^7.23.9", "@mui/utils": "^5.17.1", "prop-types": "^15.8.1" }, "peerDependencies": { "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "optionalPeers": ["@types/react"] }, "sha512-XMxU0NTYcKqdsG8LRmSoxERPXwMbp16sIXPcLVgLGII/bVNagX0xaheWAwFv8+zDK7tI3ajllkuD3GZZE++ICQ=="], + "@mui/styled-engine": ["@mui/styled-engine@7.3.10", "", { "dependencies": { "@babel/runtime": "^7.28.6", "@emotion/cache": "^11.14.0", "@emotion/serialize": "^1.3.3", "@emotion/sheet": "^1.4.0", "csstype": "^3.2.3", "prop-types": "^15.8.1" }, "peerDependencies": { "@emotion/react": "^11.4.1", "@emotion/styled": "^11.3.0", "react": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "optionalPeers": ["@emotion/react", "@emotion/styled"] }, "sha512-WxE9SiF8xskAQqGjsp0poXCkCqsoXFEsSr0HBXfApmGHR+DBnXRp+z46Vsltg4gpPM4Z96DeAQRpeAOnhNg7Ng=="], - "@mui/styled-engine": ["@mui/styled-engine@5.18.0", "", { "dependencies": { "@babel/runtime": "^7.23.9", "@emotion/cache": "^11.13.5", "@emotion/serialize": "^1.3.3", "csstype": "^3.1.3", "prop-types": "^15.8.1" }, "peerDependencies": { "@emotion/react": "^11.4.1", "@emotion/styled": "^11.3.0", "react": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "optionalPeers": ["@emotion/react", "@emotion/styled"] }, "sha512-BN/vKV/O6uaQh2z5rXV+MBlVrEkwoS/TK75rFQ2mjxA7+NBo8qtTAOA4UaM0XeJfn7kh2wZ+xQw2HAx0u+TiBg=="], + "@mui/system": ["@mui/system@7.3.10", "", { "dependencies": { "@babel/runtime": "^7.28.6", "@mui/private-theming": "^7.3.10", "@mui/styled-engine": "^7.3.10", "@mui/types": "^7.4.12", "@mui/utils": "^7.3.10", "clsx": "^2.1.1", "csstype": "^3.2.3", "prop-types": "^15.8.1" }, "peerDependencies": { "@emotion/react": "^11.5.0", "@emotion/styled": "^11.3.0", "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "optionalPeers": ["@emotion/react", "@emotion/styled", "@types/react"] }, "sha512-/sfPpdpJaQn7BSF+avjIdHSYmxHp0UOBYNxSG9QGKfMOD6sLANCpRPCnanq1Pe0lFf0NHkO2iUk0TNzdWC1USQ=="], - "@mui/styles": ["@mui/styles@5.16.7", "", { "dependencies": { "@babel/runtime": "^7.23.9", "@emotion/hash": "^0.9.1", "@mui/private-theming": "^5.16.6", "@mui/types": "^7.2.15", "@mui/utils": "^5.16.6", "clsx": "^2.1.0", "csstype": "^3.1.3", "hoist-non-react-statics": "^3.3.2", "jss": "^10.10.0", "jss-plugin-camel-case": "^10.10.0", "jss-plugin-default-unit": "^10.10.0", "jss-plugin-global": "^10.10.0", "jss-plugin-nested": "^10.10.0", "jss-plugin-props-sort": "^10.10.0", "jss-plugin-rule-value-function": "^10.10.0", "jss-plugin-vendor-prefixer": "^10.10.0", "prop-types": "^15.8.1" }, "peerDependencies": { "@types/react": "^17.0.0 || ^18.0.0", "react": "^17.0.0" }, "optionalPeers": ["@types/react"] }, "sha512-FfXhHP/2MlqH+vLs2tIHMeCChmqSRgkOALVNLKkPrDsvtoq5J8OraOutCn1scpvRjr9mO8ZhW6jKx2t/vUDxtQ=="], + "@mui/types": ["@mui/types@7.4.12", "", { "dependencies": { "@babel/runtime": "^7.28.6" }, "peerDependencies": { "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "optionalPeers": ["@types/react"] }, "sha512-iKNAF2u9PzSIj40CjvKJWxFXJo122jXVdrmdh0hMYd+FR+NuJMkr/L88XwWLCRiJ5P1j+uyac25+Kp6YC4hu6w=="], - "@mui/system": ["@mui/system@5.16.7", "", { "dependencies": { "@babel/runtime": "^7.23.9", "@mui/private-theming": "^5.16.6", "@mui/styled-engine": "^5.16.6", "@mui/types": "^7.2.15", "@mui/utils": "^5.16.6", "clsx": "^2.1.0", "csstype": "^3.1.3", "prop-types": "^15.8.1" }, "peerDependencies": { "@emotion/react": "^11.5.0", "@emotion/styled": "^11.3.0", "@types/react": "^17.0.0 || ^18.0.0", "react": "^17.0.0 || ^18.0.0" }, "optionalPeers": ["@emotion/react", "@emotion/styled", "@types/react"] }, "sha512-Jncvs/r/d/itkxh7O7opOunTqbbSSzMTHzZkNLM+FjAOg+cYAZHrPDlYe1ZGKUYORwwb2XexlWnpZp0kZ4AHuA=="], + "@mui/utils": ["@mui/utils@7.3.10", "", { "dependencies": { "@babel/runtime": "^7.28.6", "@mui/types": "^7.4.12", "@types/prop-types": "^15.7.15", "clsx": "^2.1.1", "prop-types": "^15.8.1", "react-is": "^19.2.3" }, "peerDependencies": { "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "optionalPeers": ["@types/react"] }, "sha512-7y2eIfy0h7JPz+Yy4pS+wgV68d46PuuxDqKBN4Q8VlPQSsCAGwroMCV6xWyc7g9dvEp8ZNFsknc59GHWO+r6Ow=="], - "@mui/types": ["@mui/types@7.4.6", "", { "dependencies": { "@babel/runtime": "^7.28.3" }, "peerDependencies": { "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "optionalPeers": ["@types/react"] }, "sha512-NVBbIw+4CDMMppNamVxyTccNv0WxtDb7motWDlMeSC8Oy95saj1TIZMGynPpFLePt3yOD8TskzumeqORCgRGWw=="], + "@mui/x-data-grid": ["@mui/x-data-grid@7.29.12", "", { "dependencies": { "@babel/runtime": "^7.25.7", "@mui/utils": "^5.16.6 || ^6.0.0 || ^7.0.0", "@mui/x-internals": "7.29.0", "clsx": "^2.1.1", "prop-types": "^15.8.1", "reselect": "^5.1.1", "use-sync-external-store": "^1.0.0" }, "peerDependencies": { "@emotion/react": "^11.9.0", "@emotion/styled": "^11.8.1", "@mui/material": "^5.15.14 || ^6.0.0 || ^7.0.0", "@mui/system": "^5.15.14 || ^6.0.0 || ^7.0.0", "react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "optionalPeers": ["@emotion/react", "@emotion/styled"] }, "sha512-MaEC7ubr/je8jVWjdRU7LxBXAzlOZwFEdNdvlDUJIYkRa3TRCQ1HsY8Gd8Od0jnlnMYn9M4BrEfOrq9VRnt4bw=="], - "@mui/utils": ["@mui/utils@5.17.1", "", { "dependencies": { "@babel/runtime": "^7.23.9", "@mui/types": "~7.2.15", "@types/prop-types": "^15.7.12", "clsx": "^2.1.1", "prop-types": "^15.8.1", "react-is": "^19.0.0" }, "peerDependencies": { "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "optionalPeers": ["@types/react"] }, "sha512-jEZ8FTqInt2WzxDV8bhImWBqeQRD99c/id/fq83H0ER9tFl+sfZlaAoCdznGvbSQQ9ividMxqSV2c7cC1vBcQg=="], - - "@mui/x-data-grid": ["@mui/x-data-grid@6.20.4", "", { "dependencies": { "@babel/runtime": "^7.23.2", "@mui/utils": "^5.14.16", "clsx": "^2.0.0", "prop-types": "^15.8.1", "reselect": "^4.1.8" }, "peerDependencies": { "@mui/material": "^5.4.1", "@mui/system": "^5.4.1", "react": "^17.0.0 || ^18.0.0", "react-dom": "^17.0.0 || ^18.0.0" } }, "sha512-I0JhinVV4e25hD2dB+R6biPBtpGeFrXf8RwlMPQbr9gUggPmPmNtWKo8Kk2PtBBMlGtdMAgHWe7PqhmucUxU1w=="], + "@mui/x-internals": ["@mui/x-internals@7.29.0", "", { "dependencies": { "@babel/runtime": "^7.25.7", "@mui/utils": "^5.16.6 || ^6.0.0 || ^7.0.0" }, "peerDependencies": { "react": "^17.0.0 || ^18.0.0 || ^19.0.0" } }, "sha512-+Gk6VTZIFD70XreWvdXBwKd8GZ2FlSCuecQFzm6znwqXg1ZsndavrhG9tkxpxo2fM1Zf7Tk8+HcOO0hCbhTQFA=="], "@n1ru4l/push-pull-async-iterable-iterator": ["@n1ru4l/push-pull-async-iterable-iterator@3.2.0", "", {}, "sha512-3fkKj25kEjsfObL6IlKPAlHYPq/oYwUkkQ03zsTTiDjD7vg/RxjdiLeCydqtxHZP0JgsXL3D/X5oAkMGzuUp/Q=="], @@ -1216,13 +1213,11 @@ "css-tree": ["css-tree@3.1.0", "", { "dependencies": { "mdn-data": "2.12.2", "source-map-js": "^1.0.1" } }, "sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w=="], - "css-vendor": ["css-vendor@2.0.8", "", { "dependencies": { "@babel/runtime": "^7.8.3", "is-in-browser": "^1.0.2" } }, "sha512-x9Aq0XTInxrkuFeHKbYC7zWY8ai7qJ04Kxd9MnvbC1uO5DagxoHQjm4JvG+vCdXOoFtCjbL2XSZfxmoYa9uQVQ=="], - "css.escape": ["css.escape@1.5.1", "", {}, "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg=="], "cssesc": ["cssesc@3.0.0", "", { "bin": { "cssesc": "bin/cssesc" } }, "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg=="], - "csstype": ["csstype@3.1.3", "", {}, "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw=="], + "csstype": ["csstype@3.2.3", "", {}, "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ=="], "cwd": ["cwd@0.10.0", "", { "dependencies": { "find-pkg": "^0.1.2", "fs-exists-sync": "^0.1.0" } }, "sha512-YGZxdTTL9lmLkCUTpg4j0zQ7IhRB5ZmqNBbGCl3Tg6MP/d5/6sY7L5mmTjzbc6JKgVZYiqTQTNhPFsbXNGlRaA=="], @@ -1662,8 +1657,6 @@ "human-signals": ["human-signals@1.1.1", "", {}, "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw=="], - "hyphenate-style-name": ["hyphenate-style-name@1.1.0", "", {}, "sha512-WDC/ui2VVRrz3jOVi+XtjqkDjiVjTtFaAGiW37k6b+ohyQ5wYDOGkvCZa8+H0nx3gyvv0+BST9xuOgIyGQ00gw=="], - "ieee754": ["ieee754@1.2.1", "", {}, "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="], "ignore": ["ignore@7.0.5", "", {}, "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg=="], @@ -1742,8 +1735,6 @@ "is-hexadecimal": ["is-hexadecimal@2.0.1", "", {}, "sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg=="], - "is-in-browser": ["is-in-browser@1.1.3", "", {}, "sha512-FeXIBgG/CPGd/WUxuEyvgGTEfwiG9Z4EKGxjNMRqviiIIfsmgrpnHLffEDdwUHqNva1VEW91o3xBT/m8Elgl9g=="], - "is-installed-globally": ["is-installed-globally@0.4.0", "", { "dependencies": { "global-dirs": "^3.0.0", "is-path-inside": "^3.0.2" } }, "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ=="], "is-map": ["is-map@2.0.3", "", {}, "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw=="], @@ -1914,22 +1905,6 @@ "jsprim": ["jsprim@2.0.2", "", { "dependencies": { "assert-plus": "1.0.0", "extsprintf": "1.3.0", "json-schema": "0.4.0", "verror": "1.10.0" } }, "sha512-gqXddjPqQ6G40VdnI6T6yObEC+pDNvyP95wdQhkWkg7crHH3km5qP1FsOXEkzEQwnz6gz5qGTn1c2Y52wP3OyQ=="], - "jss": ["jss@10.10.0", "", { "dependencies": { "@babel/runtime": "^7.3.1", "csstype": "^3.0.2", "is-in-browser": "^1.1.3", "tiny-warning": "^1.0.2" } }, "sha512-cqsOTS7jqPsPMjtKYDUpdFC0AbhYFLTcuGRqymgmdJIeQ8cH7+AgX7YSgQy79wXloZq2VvATYxUOUQEvS1V/Zw=="], - - "jss-plugin-camel-case": ["jss-plugin-camel-case@10.10.0", "", { "dependencies": { "@babel/runtime": "^7.3.1", "hyphenate-style-name": "^1.0.3", "jss": "10.10.0" } }, "sha512-z+HETfj5IYgFxh1wJnUAU8jByI48ED+v0fuTuhKrPR+pRBYS2EDwbusU8aFOpCdYhtRc9zhN+PJ7iNE8pAWyPw=="], - - "jss-plugin-default-unit": ["jss-plugin-default-unit@10.10.0", "", { "dependencies": { "@babel/runtime": "^7.3.1", "jss": "10.10.0" } }, "sha512-SvpajxIECi4JDUbGLefvNckmI+c2VWmP43qnEy/0eiwzRUsafg5DVSIWSzZe4d2vFX1u9nRDP46WCFV/PXVBGQ=="], - - "jss-plugin-global": ["jss-plugin-global@10.10.0", "", { "dependencies": { "@babel/runtime": "^7.3.1", "jss": "10.10.0" } }, "sha512-icXEYbMufiNuWfuazLeN+BNJO16Ge88OcXU5ZDC2vLqElmMybA31Wi7lZ3lf+vgufRocvPj8443irhYRgWxP+A=="], - - "jss-plugin-nested": ["jss-plugin-nested@10.10.0", "", { "dependencies": { "@babel/runtime": "^7.3.1", "jss": "10.10.0", "tiny-warning": "^1.0.2" } }, "sha512-9R4JHxxGgiZhurDo3q7LdIiDEgtA1bTGzAbhSPyIOWb7ZubrjQe8acwhEQ6OEKydzpl8XHMtTnEwHXCARLYqYA=="], - - "jss-plugin-props-sort": ["jss-plugin-props-sort@10.10.0", "", { "dependencies": { "@babel/runtime": "^7.3.1", "jss": "10.10.0" } }, "sha512-5VNJvQJbnq/vRfje6uZLe/FyaOpzP/IH1LP+0fr88QamVrGJa0hpRRyAa0ea4U/3LcorJfBFVyC4yN2QC73lJg=="], - - "jss-plugin-rule-value-function": ["jss-plugin-rule-value-function@10.10.0", "", { "dependencies": { "@babel/runtime": "^7.3.1", "jss": "10.10.0", "tiny-warning": "^1.0.2" } }, "sha512-uEFJFgaCtkXeIPgki8ICw3Y7VMkL9GEan6SqmT9tqpwM+/t+hxfMUdU4wQ0MtOiMNWhwnckBV0IebrKcZM9C0g=="], - - "jss-plugin-vendor-prefixer": ["jss-plugin-vendor-prefixer@10.10.0", "", { "dependencies": { "@babel/runtime": "^7.3.1", "css-vendor": "^2.0.8", "jss": "10.10.0" } }, "sha512-UY/41WumgjW8r1qMCO8l1ARg7NHnfRVWRhZ2E2m0DMYsr2DD91qIXLyNhiX83hHswR7Wm4D+oDYNC1zWCJWtqg=="], - "jsx-ast-utils": ["jsx-ast-utils@3.3.5", "", { "dependencies": { "array-includes": "^3.1.6", "array.prototype.flat": "^1.3.1", "object.assign": "^4.1.4", "object.values": "^1.1.6" } }, "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ=="], "keyv": ["keyv@4.5.4", "", { "dependencies": { "json-buffer": "3.0.1" } }, "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw=="], @@ -2444,7 +2419,7 @@ "require-main-filename": ["require-main-filename@2.0.0", "", {}, "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg=="], - "reselect": ["reselect@4.1.8", "", {}, "sha512-ab9EmR80F/zQTMNeneUr4cv+jSwPJgIlvEmVwLerwrWVbpLlBuls9XHzIeTFy4cegU2NHBp3va0LKOzU5qFEYQ=="], + "reselect": ["reselect@5.1.1", "", {}, "sha512-K/BG6eIky/SBpzfHZv/dd+9JBFiS4SWV7FIujVyJRux6e45+73RaUHXLmIR1f7WOMaQ0U1km6qwklRQxpJJY0w=="], "resolve": ["resolve@1.22.10", "", { "dependencies": { "is-core-module": "^2.16.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, "bin": { "resolve": "bin/resolve" } }, "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w=="], @@ -2654,8 +2629,6 @@ "tiny-invariant": ["tiny-invariant@1.3.3", "", {}, "sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg=="], - "tiny-warning": ["tiny-warning@1.0.3", "", {}, "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA=="], - "tinyglobby": ["tinyglobby@0.2.15", "", { "dependencies": { "fdir": "^6.5.0", "picomatch": "^4.0.3" } }, "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ=="], "tinyrainbow": ["tinyrainbow@2.0.0", "", {}, "sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw=="], @@ -2878,6 +2851,8 @@ "@emotion/babel-plugin/convert-source-map": ["convert-source-map@1.9.0", "", {}, "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A=="], + "@emotion/serialize/csstype": ["csstype@3.1.3", "", {}, "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw=="], + "@eslint-community/eslint-utils/eslint-visitor-keys": ["eslint-visitor-keys@3.4.3", "", {}, "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag=="], "@eslint/eslintrc/globals": ["globals@14.0.0", "", {}, "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ=="], @@ -2970,24 +2945,32 @@ "@joshwooding/vite-plugin-react-docgen-typescript/glob": ["glob@10.4.5", "", { "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", "minimatch": "^9.0.4", "minipass": "^7.1.2", "package-json-from-dist": "^1.0.0", "path-scurry": "^1.11.1" }, "bin": { "glob": "dist/esm/bin.mjs" } }, "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg=="], - "@mui/base/clsx": ["clsx@2.1.1", "", {}, "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA=="], + "@mui/icons-material/@babel/runtime": ["@babel/runtime@7.29.2", "", {}, "sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g=="], - "@mui/lab/clsx": ["clsx@2.1.1", "", {}, "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA=="], + "@mui/material/@babel/runtime": ["@babel/runtime@7.29.2", "", {}, "sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g=="], "@mui/material/clsx": ["clsx@2.1.1", "", {}, "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA=="], - "@mui/styles/clsx": ["clsx@2.1.1", "", {}, "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA=="], + "@mui/private-theming/@babel/runtime": ["@babel/runtime@7.29.2", "", {}, "sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g=="], + + "@mui/styled-engine/@babel/runtime": ["@babel/runtime@7.29.2", "", {}, "sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g=="], + + "@mui/system/@babel/runtime": ["@babel/runtime@7.29.2", "", {}, "sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g=="], "@mui/system/clsx": ["clsx@2.1.1", "", {}, "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA=="], - "@mui/utils/@mui/types": ["@mui/types@7.2.24", "", { "peerDependencies": { "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "optionalPeers": ["@types/react"] }, "sha512-3c8tRt/CbWZ+pEg7QpSwbdxOk36EfmhbKf6AGZsD1EcLDLTSZoxxJ86FVtcjxvjuhdyBiWKSTGZFaXCnidO2kw=="], + "@mui/types/@babel/runtime": ["@babel/runtime@7.29.2", "", {}, "sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g=="], + + "@mui/utils/@babel/runtime": ["@babel/runtime@7.29.2", "", {}, "sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g=="], "@mui/utils/clsx": ["clsx@2.1.1", "", {}, "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA=="], - "@mui/utils/react-is": ["react-is@19.1.1", "", {}, "sha512-tr41fA15Vn8p4X9ntI+yCyeGSf1TlYaY5vlTZfQmeLBrFo3psOPX6HhTDnFNL9uj3EhP0KAQ80cugCl4b4BERA=="], + "@mui/x-data-grid/@babel/runtime": ["@babel/runtime@7.29.2", "", {}, "sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g=="], "@mui/x-data-grid/clsx": ["clsx@2.1.1", "", {}, "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA=="], + "@mui/x-internals/@babel/runtime": ["@babel/runtime@7.29.2", "", {}, "sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g=="], + "@storybook/test-runner/jest": ["jest@29.7.0", "", { "dependencies": { "@jest/core": "^29.7.0", "@jest/types": "^29.6.3", "import-local": "^3.0.2", "jest-cli": "^29.7.0" }, "peerDependencies": { "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" }, "optionalPeers": ["node-notifier"], "bin": { "jest": "bin/jest.js" } }, "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw=="], "@testing-library/dom/aria-query": ["aria-query@5.3.0", "", { "dependencies": { "dequal": "^2.0.3" } }, "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A=="], @@ -2998,6 +2981,8 @@ "@types/glob/glob": ["glob@11.0.3", "", { "dependencies": { "foreground-child": "^3.3.1", "jackspeak": "^4.1.1", "minimatch": "^10.0.3", "minipass": "^7.1.2", "package-json-from-dist": "^1.0.0", "path-scurry": "^2.0.0" }, "bin": { "glob": "dist/esm/bin.mjs" } }, "sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA=="], + "@types/react/csstype": ["csstype@3.1.3", "", {}, "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw=="], + "@typescript-eslint/typescript-estree/minimatch": ["minimatch@9.0.5", "", { "dependencies": { "brace-expansion": "^2.0.1" } }, "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow=="], "@vitest/mocker/estree-walker": ["estree-walker@3.0.3", "", { "dependencies": { "@types/estree": "^1.0.0" } }, "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g=="], @@ -3058,6 +3043,8 @@ "detect-package-manager/execa": ["execa@5.1.1", "", { "dependencies": { "cross-spawn": "^7.0.3", "get-stream": "^6.0.0", "human-signals": "^2.1.0", "is-stream": "^2.0.0", "merge-stream": "^2.0.0", "npm-run-path": "^4.0.1", "onetime": "^5.1.2", "signal-exit": "^3.0.3", "strip-final-newline": "^2.0.0" } }, "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg=="], + "dom-helpers/csstype": ["csstype@3.1.3", "", {}, "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw=="], + "dom-serializer/domelementtype": ["domelementtype@2.3.0", "", {}, "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw=="], "dom-serializer/entities": ["entities@2.2.0", "", {}, "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A=="], @@ -3134,8 +3121,6 @@ "hasha/type-fest": ["type-fest@0.8.1", "", {}, "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA=="], - "hoist-non-react-statics/react-is": ["react-is@16.13.1", "", {}, "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="], - "htmlparser2/entities": ["entities@1.1.2", "", {}, "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w=="], "import-fresh/resolve-from": ["resolve-from@4.0.0", "", {}, "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g=="], @@ -3268,8 +3253,6 @@ "pretty-format/@jest/schemas": ["@jest/schemas@30.0.5", "", { "dependencies": { "@sinclair/typebox": "^0.34.0" } }, "sha512-DmdYgtezMkh3cpU8/1uyXakv3tJRcmcXxBOcO0tbaozPwpmh4YMsnWrQm9ZmZMfa5ocbxzbFk6O4bDPEc/iAnA=="], - "prop-types/react-is": ["react-is@16.13.1", "", {}, "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="], - "rc/ini": ["ini@1.3.8", "", {}, "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew=="], "rc/strip-json-comments": ["strip-json-comments@2.0.1", "", {}, "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ=="], @@ -3458,8 +3441,6 @@ "@storybook/test-runner/jest/jest-cli": ["jest-cli@29.7.0", "", { "dependencies": { "@jest/core": "^29.7.0", "@jest/test-result": "^29.7.0", "@jest/types": "^29.6.3", "chalk": "^4.0.0", "create-jest": "^29.7.0", "exit": "^0.1.2", "import-local": "^3.0.2", "jest-config": "^29.7.0", "jest-util": "^29.7.0", "jest-validate": "^29.7.0", "yargs": "^17.3.1" }, "peerDependencies": { "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" }, "optionalPeers": ["node-notifier"], "bin": { "jest": "bin/jest.js" } }, "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg=="], - "@testing-library/dom/pretty-format/react-is": ["react-is@17.0.2", "", {}, "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w=="], - "@types/glob/glob/minimatch": ["minimatch@10.0.3", "", { "dependencies": { "@isaacs/brace-expansion": "^5.0.0" } }, "sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw=="], "@typescript-eslint/typescript-estree/minimatch/brace-expansion": ["brace-expansion@2.0.2", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ=="], diff --git a/package.json b/package.json index cd5a4af150..caa0372680 100644 --- a/package.json +++ b/package.json @@ -52,12 +52,10 @@ "@lezer/highlight": "1.2.1", "@lezer/lr": "1.4.2", "@material/material-color-utilities": "0.3.0", - "@mui/icons-material": "5.16.7", - "@mui/lab": "5.0.0-alpha.170", - "@mui/material": "5.16.7", - "@mui/styles": "5.16.7", - "@mui/system": "5.16.7", - "@mui/x-data-grid": "6.20.4", + "@mui/icons-material": "7.3.10", + "@mui/material": "7.3.10", + "@mui/system": "7.3.10", + "@mui/x-data-grid": "7.29.12", "@playwright/test": "1.55.1", "@storybook/addon-links": "9.1.8", "@storybook/react-vite": "9.1.8", @@ -153,6 +151,9 @@ "wonka": "6.3.5", "wouter": "3.7.1" }, + "overrides": { + "react-is": "^18.3.1" + }, "msw": { "workerDirectory": ".storybook/static" } diff --git a/search/render.go b/search/render.go index 6dfba9c5ae..41e6f4ec2f 100644 --- a/search/render.go +++ b/search/render.go @@ -41,7 +41,7 @@ func Helpers() template.FuncMap { if i > 0 { buf.WriteString(" OR ") } - buf.WriteString(fmt.Sprintf("to_tsvector('english', replace(lower(%s), '.', ' ')) @@ plainto_tsquery('english', replace(lower(:%s),'.',' '))", columnName, argName)) + fmt.Fprintf(&buf, "to_tsvector('english', replace(lower(%s), '.', ' ')) @@ plainto_tsquery('english', replace(lower(:%s),'.',' '))", columnName, argName) } buf.WriteRune(')') diff --git a/web/src/app/admin/AdminAPIKeys.tsx b/web/src/app/admin/AdminAPIKeys.tsx index 831b36f14e..925a7afbcf 100644 --- a/web/src/app/admin/AdminAPIKeys.tsx +++ b/web/src/app/admin/AdminAPIKeys.tsx @@ -1,8 +1,6 @@ import React, { Suspense, useMemo, useState } from 'react' -import { Button, Card, Grid, Typography } from '@mui/material' +import { Box, Button, Card, Grid, Typography } from '@mui/material' import { Add } from '@mui/icons-material' -import makeStyles from '@mui/styles/makeStyles' -import { Theme } from '@mui/material/styles' import { gql, useQuery } from 'urql' import { DateTime } from 'luxon' import AdminAPIKeysDrawer from './admin-api-keys/AdminAPIKeyDrawer' @@ -33,26 +31,7 @@ const query = gql` } ` -const useStyles = makeStyles((theme: Theme) => ({ - buttons: { - 'margin-bottom': '15px', - }, - containerDefault: { - [theme.breakpoints.up('md')]: { - maxWidth: '100%', - transition: `max-width ${theme.transitions.duration.leavingScreen}ms ease`, - }, - }, - containerSelected: { - [theme.breakpoints.up('md')]: { - maxWidth: '70%', - transition: `max-width ${theme.transitions.duration.enteringScreen}ms ease`, - }, - }, -})) - export default function AdminAPIKeys(): React.JSX.Element { - const classes = useStyles() const [selectedAPIKey, setSelectedAPIKey] = useState(null) const [createDialog, setCreateDialog] = useState(false) const [createFromID, setCreateFromID] = useState('') @@ -135,11 +114,7 @@ export default function AdminAPIKeys(): React.JSX.Element { ), secondaryAction: ( - + - + )} -
+ selectedAPIKey + ? { + [theme.breakpoints.up('md')]: { + maxWidth: '70%', + transition: `max-width ${theme.transitions.duration.enteringScreen}ms ease`, + }, + } + : { + [theme.breakpoints.up('md')]: { + maxWidth: '100%', + transition: `max-width ${theme.transitions.duration.leavingScreen}ms ease`, + }, + } } >
+ ) } diff --git a/web/src/app/admin/AdminConfig.tsx b/web/src/app/admin/AdminConfig.tsx index fc4dc2e3d6..53c5a18747 100644 --- a/web/src/app/admin/AdminConfig.tsx +++ b/web/src/app/admin/AdminConfig.tsx @@ -5,8 +5,7 @@ import ButtonGroup from '@mui/material/ButtonGroup' import Divider from '@mui/material/Divider' import Grid from '@mui/material/Grid' import Typography from '@mui/material/Typography' -import makeStyles from '@mui/styles/makeStyles' -import { Theme } from '@mui/material/styles' +import { SxProps, Theme } from '@mui/material/styles' import _, { startCase, isEmpty, uniq, chain } from 'lodash' import AdminSection from './AdminSection' import AdminDialog from './AdminDialog' @@ -43,31 +42,25 @@ const query = gql` } ` -const useStyles = makeStyles((theme: Theme) => ({ +const classes = { accordionDetails: { padding: 0, display: 'block', }, - form: { - width: '100%', - }, - saveDisabled: { - color: 'rgba(255, 255, 255, 0.5)', - }, heading: { fontSize: '1.1rem', flexBasis: '33.33%', flexShrink: 0, }, - secondaryHeading: { + secondaryHeading: (theme: Theme) => ({ fontSize: theme.typography.pxToRem(15), color: theme.palette.text.secondary, flexGrow: 1, - }, + }), changeChip: { justifyContent: 'flex-end', }, -})) +} satisfies Record> interface ConfigValues { [id: string]: string @@ -82,7 +75,6 @@ function formatHeading(s = ''): string { } export default function AdminConfig(): React.JSX.Element { - const classes = useStyles() const [confirm, setConfirm] = useState(false) const [values, setValues] = useState({}) const [section, setSection] = useState(false as false | string) @@ -135,7 +127,7 @@ export default function AdminConfig(): React.JSX.Element { return ( - +
+ ) } diff --git a/web/src/app/admin/AdminMaint.tsx b/web/src/app/admin/AdminMaint.tsx index 0aedee1f56..7537387ab7 100644 --- a/web/src/app/admin/AdminMaint.tsx +++ b/web/src/app/admin/AdminMaint.tsx @@ -60,7 +60,7 @@ type AdminMaintToolProps = { function AdminMaintTool(props: AdminMaintToolProps): React.ReactNode { return ( - + diff --git a/web/src/app/admin/AdminNumberLookup.tsx b/web/src/app/admin/AdminNumberLookup.tsx index 3b81238f2f..e1e84bb066 100644 --- a/web/src/app/admin/AdminNumberLookup.tsx +++ b/web/src/app/admin/AdminNumberLookup.tsx @@ -100,7 +100,7 @@ export default function AdminNumberLookup(): React.JSX.Element { - + { setNumber(e.target.value) diff --git a/web/src/app/admin/AdminSMSSend.tsx b/web/src/app/admin/AdminSMSSend.tsx index c5984d15b0..b731ca0c5e 100644 --- a/web/src/app/admin/AdminSMSSend.tsx +++ b/web/src/app/admin/AdminSMSSend.tsx @@ -13,7 +13,6 @@ import { TextField, Typography, } from '@mui/material' -import makeStyles from '@mui/styles/makeStyles' import OpenInNewIcon from '@mui/icons-material/OpenInNew' import { useConfigValue } from '../util/RequireConfig' @@ -44,15 +43,7 @@ const sendSMSMutation = gql` } ` -const useStyles = makeStyles({ - twilioLink: { - display: 'flex', - alignItems: 'center', - }, -}) - export default function AdminSMSSend(): React.JSX.Element { - const classes = useStyles() const [cfgFromNumber, cfgSID] = useConfigValue( 'Twilio.FromNumber', 'Twilio.MessagingServiceSID', @@ -105,7 +96,7 @@ export default function AdminSMSSend(): React.JSX.Element { - + setFromNumber(e.target.value)} value={fromNumber} @@ -114,7 +105,7 @@ export default function AdminSMSSend(): React.JSX.Element { fullWidth /> - + setToNumber(e.target.value)} value={toNumber} @@ -122,7 +113,7 @@ export default function AdminSMSSend(): React.JSX.Element { label='To Number' /> - + setBody(e.target.value)} value={body} @@ -138,7 +129,7 @@ export default function AdminSMSSend(): React.JSX.Element { {smsData?.debugSendSMS && ( -
+
{details} Open in Twilio 
diff --git a/web/src/app/admin/AdminSection.tsx b/web/src/app/admin/AdminSection.tsx index f0c9bab71d..f2ebec64c1 100644 --- a/web/src/app/admin/AdminSection.tsx +++ b/web/src/app/admin/AdminSection.tsx @@ -3,10 +3,9 @@ import List from '@mui/material/List' import ListItem from '@mui/material/ListItem' import ListItemText from '@mui/material/ListItemText' import Typography from '@mui/material/Typography' +import Box from '@mui/material/Box' import { FormContainer } from '../forms' import _, { defaultTo } from 'lodash' -import { Theme } from '@mui/material/styles' -import makeStyles from '@mui/styles/makeStyles' import { StringInput, StringListInput, @@ -34,34 +33,10 @@ interface AdminSectionProps { onChange: (id: string, value: null | string) => void } -const useStyles = makeStyles((theme: Theme) => ({ - listItem: { - // leaves some room around fields without descriptions - // 71px is the height of the checkbox field without w/o a desc - minHeight: '71px', - padding: '1em', - }, - listItemText: { - maxWidth: '50%', - [theme.breakpoints.up('md')]: { - maxWidth: '65%', - }, - }, - listItemAction: { - width: '50%', - [theme.breakpoints.up('md')]: { - width: '35%', - }, - display: 'flex', - justifyContent: 'flex-end', - }, -})) - export default function AdminSection( props: AdminSectionProps, ): React.JSX.Element { // TODO: add 'reset to default' buttons - const classes = useStyles() const { fields, value, headerNote } = props return ( @@ -83,12 +58,20 @@ export default function AdminSection( return ( ({ + minHeight: '71px', + padding: '1em', + ...(_.has(value, f.id) ? { bgcolor: 'action.selected' } : {}), + })} divider={idx !== fields.length - 1} - selected={_.has(value, f.id)} > ({ + maxWidth: '50%', + [theme.breakpoints.up('md')]: { + maxWidth: '65%', + }, + })} primary={(f.deprecated ? '* ' : '') + f.label} secondary={ f.deprecated ? ( @@ -107,7 +90,16 @@ export default function AdminSection( ) } /> -
+ ({ + width: '50%', + [theme.breakpoints.up('md')]: { + width: '35%', + }, + display: 'flex', + justifyContent: 'flex-end', + })} + > -
+
) })} diff --git a/web/src/app/admin/AdminToolbox.tsx b/web/src/app/admin/AdminToolbox.tsx index 1c8805ebb4..0ebb27d90b 100644 --- a/web/src/app/admin/AdminToolbox.tsx +++ b/web/src/app/admin/AdminToolbox.tsx @@ -1,29 +1,11 @@ import React from 'react' import Grid from '@mui/material/Grid' import Typography from '@mui/material/Typography' -import makeStyles from '@mui/styles/makeStyles' -import { Theme } from '@mui/material/styles' import AdminNumberLookup from './AdminNumberLookup' import AdminSMSSend from './AdminSMSSend' import { useConfigValue } from '../util/RequireConfig' -const useStyles = makeStyles((theme: Theme) => ({ - gridContainer: { - [theme.breakpoints.up('md')]: { - justifyContent: 'center', - }, - }, - groupTitle: { - fontSize: '1.1rem', - }, - saveDisabled: { - color: 'rgba(255, 255, 255, 0.5)', - }, -})) - export default function AdminToolbox(): React.JSX.Element { - const classes = useStyles() - const [hasTwilio] = useConfigValue('Twilio.Enable') if (!hasTwilio) { @@ -36,34 +18,40 @@ export default function AdminToolbox(): React.JSX.Element { } return ( - - - + ({ + [theme.breakpoints.up('md')]: { justifyContent: 'center' }, + })} + > + + Twilio Number Lookup - + - - + + Send SMS - + diff --git a/web/src/app/admin/SlackActions.tsx b/web/src/app/admin/SlackActions.tsx index 845343432a..9011005c23 100644 --- a/web/src/app/admin/SlackActions.tsx +++ b/web/src/app/admin/SlackActions.tsx @@ -1,5 +1,4 @@ import React, { useState } from 'react' -import makeStyles from '@mui/styles/makeStyles' import Button from '@mui/material/Button' import Dialog from '@mui/material/Dialog' import DialogActions from '@mui/material/DialogActions' @@ -22,18 +21,7 @@ const query = gql` } ` -const useStyles = makeStyles({ - copyButton: { - float: 'right', - padding: '12px', - }, - dialog: { - minHeight: '650px', - }, -}) - export default function SlackActions(): React.JSX.Element { - const classes = useStyles() const [showManifest, setShowManifest] = useState(false) const [{ fetching, error, data }] = useQuery({ query }) @@ -45,7 +33,7 @@ export default function SlackActions(): React.JSX.Element { return (
-
+
@@ -67,8 +55,8 @@ export default function SlackActions(): React.JSX.Element { ]} /> setShowManifest(false)} diff --git a/web/src/app/admin/admin-alert-counts/AdminAlertCounts.tsx b/web/src/app/admin/admin-alert-counts/AdminAlertCounts.tsx index 54b32bdfab..e85be95a7c 100644 --- a/web/src/app/admin/admin-alert-counts/AdminAlertCounts.tsx +++ b/web/src/app/admin/admin-alert-counts/AdminAlertCounts.tsx @@ -1,7 +1,5 @@ import React, { useMemo, useState } from 'react' import { Grid, Card, CardContent, CardHeader } from '@mui/material' -import makeStyles from '@mui/styles/makeStyles' -import { Theme } from '@mui/material/styles' import AlertCountControls from './AlertCountControls' import { useURLParams } from '../../actions' import { DateTime, Duration, Interval, DateTimeUnit } from 'luxon' @@ -13,12 +11,6 @@ import AlertCountLineGraph from './AlertCountLineGraph' import AlertCountTable from './AlertCountTable' import { AlertCountOpts, AlertCountSeries } from './useAdminAlertCounts' -const useStyles = makeStyles((theme: Theme) => ({ - card: { - marginTop: theme.spacing(1), - }, -})) - const units: Record = { PT1M: 'minute', PT1H: 'hour', @@ -28,8 +20,6 @@ const units: Record = { } export default function AdminAlertCounts(): React.JSX.Element { - const styles = useStyles() - const [graphData, setGraphData] = useState([]) const now = useMemo(() => DateTime.now(), []) @@ -79,9 +69,9 @@ export default function AdminAlertCounts(): React.JSX.Element { return ( - + - + - + - + - + Interval {selected ? ( // if a preset is selected, show the expiration time - + The token will expire ) : ( // if custom is selected, show date picker - + - + - + - + - + - + - + - + - + ({ - appLink: { - display: 'flex', - alignItems: 'center', - }, - appLinkIcon: { - paddingLeft: theme.spacing(0.5), - }, -})) - export default function AdminMessageLogDrawer(props: Props): React.JSX.Element { const { onClose, log } = props - const classes = useStyles() const isOpen = Boolean(log) @@ -113,15 +100,12 @@ export default function AdminMessageLogDrawer(props: Props): React.JSX.Element { primary='User' secondary={ {log.userName} - + } secondaryTypographyProps={{ component: 'div' }} @@ -134,15 +118,12 @@ export default function AdminMessageLogDrawer(props: Props): React.JSX.Element { primary='Service' secondary={ {log.serviceName} - + } secondaryTypographyProps={{ component: 'div' }} @@ -155,15 +136,12 @@ export default function AdminMessageLogDrawer(props: Props): React.JSX.Element { primary='Alert' secondary={ {log.alertID} - + } secondaryTypographyProps={{ component: 'div' }} diff --git a/web/src/app/admin/admin-message-logs/AdminMessageLogsControls.tsx b/web/src/app/admin/admin-message-logs/AdminMessageLogsControls.tsx index e0c361542c..d6b286a769 100644 --- a/web/src/app/admin/admin-message-logs/AdminMessageLogsControls.tsx +++ b/web/src/app/admin/admin-message-logs/AdminMessageLogsControls.tsx @@ -11,10 +11,10 @@ export default function AdminMessageLogsControls(): React.JSX.Element { return ( - + - + - + - + diff --git a/web/src/app/admin/switchover/AdminSWOWrongMode.tsx b/web/src/app/admin/switchover/AdminSWOWrongMode.tsx index c42f42f178..ee10a0f5a4 100644 --- a/web/src/app/admin/switchover/AdminSWOWrongMode.tsx +++ b/web/src/app/admin/switchover/AdminSWOWrongMode.tsx @@ -5,9 +5,9 @@ import DatabaseOff from 'mdi-material-ui/DatabaseOff' export function AdminSWOWrongMode(): React.JSX.Element { return ( - + - +
Unavailable: Application is not in switchover mode. diff --git a/web/src/app/admin/switchover/AdminSwitchover.tsx b/web/src/app/admin/switchover/AdminSwitchover.tsx index 8b764883be..908883ccba 100644 --- a/web/src/app/admin/switchover/AdminSwitchover.tsx +++ b/web/src/app/admin/switchover/AdminSwitchover.tsx @@ -122,11 +122,11 @@ export default function AdminSwitchover(): React.JSX.Element { /> )} {statusNotices.length > 0 && ( - + )} - + { @@ -142,11 +142,11 @@ export default function AdminSwitchover(): React.JSX.Element { /> - + - + {data?.nodes.length > 0 && data.nodes .slice() diff --git a/web/src/app/admin/switchover/SWONode.tsx b/web/src/app/admin/switchover/SWONode.tsx index 23e0aad50d..9bb929d2d0 100644 --- a/web/src/app/admin/switchover/SWONode.tsx +++ b/web/src/app/admin/switchover/SWONode.tsx @@ -25,7 +25,7 @@ export default function SWONode({ if (node.id.startsWith('unknown-')) { return ( - + {name} @@ -60,7 +60,7 @@ export default function SWONode({ } return ( - + {name} diff --git a/web/src/app/alerts/AlertDetailLogs.tsx b/web/src/app/alerts/AlertDetailLogs.tsx index 5a14611ec0..f81cf5bcec 100644 --- a/web/src/app/alerts/AlertDetailLogs.tsx +++ b/web/src/app/alerts/AlertDetailLogs.tsx @@ -5,7 +5,6 @@ import Button from '@mui/material/Button' import List from '@mui/material/List' import ListItem from '@mui/material/ListItem' import ListItemText from '@mui/material/ListItemText' -import makeStyles from '@mui/styles/makeStyles' import _ from 'lodash' import { POLL_INTERVAL } from '../config' import { Time } from '../util/Time' @@ -51,13 +50,6 @@ const query = gql` } ` -const useStyles = makeStyles({ - logTimeContainer: { - width: 'max-content', - }, - sentAccordian: {}, -}) - const assertNever = (s: never): never => { throw new Error('Unknown notification status: ' + s) } @@ -151,7 +143,6 @@ interface LogEventProps { } function LogEventHeader(props: LogEventProps): React.ReactNode { - const classes = useStyles() const details = _.upperFirst(props.event?.state?.details ?? '') const status = (props.event?.state?.status ?? '') as NotificationStatus return ( @@ -165,7 +156,7 @@ function LogEventHeader(props: LogEventProps): React.ReactNode { />
- + + - + } checkboxActions={getActions()} /> diff --git a/web/src/app/alerts/CreateAlertDialog/CreateAlertDialog.tsx b/web/src/app/alerts/CreateAlertDialog/CreateAlertDialog.tsx index 703634fdd6..80f4bcb8bc 100644 --- a/web/src/app/alerts/CreateAlertDialog/CreateAlertDialog.tsx +++ b/web/src/app/alerts/CreateAlertDialog/CreateAlertDialog.tsx @@ -5,10 +5,9 @@ import { Stepper, Step, StepLabel, - Typography, Theme, + Typography, } from '@mui/material' -import { makeStyles } from '@mui/styles' import OpenInNewIcon from '@mui/icons-material/OpenInNew' import _ from 'lodash' import { useCreateAlerts } from './useCreateAlerts' @@ -26,22 +25,10 @@ export interface Value { const pluralize = (num: number): string => (num !== 1 ? 's' : '') -const useStyles = makeStyles((theme: Theme) => ({ - dialog: { - [theme.breakpoints.up('md')]: { - height: '65vh', - }, - }, - flexGrow: { - flexGrow: 1, - }, -})) - export default function CreateAlertDialog(props: { onClose: () => void serviceID?: string }): React.JSX.Element { - const classes = useStyles() const [step, setStep] = useState(0) const serviceID = props.serviceID @@ -101,11 +88,11 @@ export default function CreateAlertDialog(props: { reviewTitle = ( - + {titleMessage} - - + +