-
-
-

-
-
-
-
-

-
-
-
-
-
- Datagrid and Charting for Enterprise Applications
-
-
+const useDarkMode = () => {
+ const [isDark, setIsDark] = useState(
+ typeof document !== "undefined" &&
+ document.documentElement.getAttribute("data-theme") === "dark",
+ );
+
+ useEffect(() => {
+ if (typeof document === "undefined") return;
+ const observer = new MutationObserver(() => {
+ setIsDark(document.documentElement.getAttribute("data-theme") === "dark");
+ });
+ observer.observe(document.documentElement, {
+ attributes: true,
+ attributeFilter: ["data-theme"],
+ });
+ return () => observer.disconnect();
+ }, []);
+
+ return isDark;
+};
+
+const Sponsors = () => {
+ const isDark = useDarkMode();
+ return (
+
+
+
+
+

+
+
+
+

-
-
Proud to partner with webpack
-
+
+
+
+
+
+ Datagrid and Charting for Enterprise Applications
+
+
+

+
+
+ Proud to partner with webpack
+
+
+
-
-);
+ );
+};
export default Sponsors;
diff --git a/src/components/Sponsors/Sponsors.scss b/src/components/Sponsors/Sponsors.scss
deleted file mode 100644
index ea7fd7d6a937..000000000000
--- a/src/components/Sponsors/Sponsors.scss
+++ /dev/null
@@ -1,104 +0,0 @@
-@use "../../styles/partials/functions" as *;
-@use "../../styles/partials/mixins" as *;
-
-$sponsor-text-color-dark: #cecece;
-$sponsor-text-color-light: getColor(emperor);
-$background-color-hover: rgb(50, 50, 50);
-$link-wrapper-shadow: 0 3px 10px 0px rgba(0, 0, 0, 0.2);
-$link-wrapper-shadow-dark: 0 3px 10px 0px rgba(255, 255, 255, 0.2);
-$link-wrapper-radius: 8px;
-$link-wrapper-margin: 8px;
-$tagline-font-size: 2em;
-$footer-font-size: 1.7em;
-
-[data-theme="dark"] {
- .agGridLogo {
- content: url("../../assets/ag-grid-logo-dark.png");
- }
-
- .agChartsLogo {
- content: url("../../assets/ag-charts-logo-dark.png");
- }
-
- .sponsors {
- &__tagline,
- &__footer {
- margin: 1rem 0;
- text-align: center;
- color: $sponsor-text-color-dark;
- }
- &__tagline {
- font-size: $tagline-font-size;
- }
- &__footer {
- font-size: $footer-font-size;
- font-style: italic;
- }
- &__link-wrapper {
- background: rgb(12, 12, 12);
- box-shadow: $link-wrapper-shadow-dark;
- border-radius: $link-wrapper-radius;
- margin: $link-wrapper-margin;
- transition: transform 0.2s;
- &:hover {
- background-color: $background-color-hover;
- transform: scale(1.05);
- }
- }
- }
-}
-
-.sponsors {
- position: absolute;
- height: 100%;
- width: 250px;
- margin-left: -250px;
- margin-right: 8px;
-
- &__link-wrapper {
- box-shadow: $link-wrapper-shadow;
- border-radius: $link-wrapper-radius;
- margin: $link-wrapper-margin;
- transition: transform 0.2s;
- &:hover {
- background-color: getColor(concrete);
- transform: scale(1.05);
- }
- }
- &__tagline,
- &__footer {
- margin: 1rem 0;
- text-align: center;
- color: $sponsor-text-color-light;
- }
- &__tagline {
- font-size: $tagline-font-size;
- }
- &__footer {
- font-size: $footer-font-size;
- font-style: italic;
- }
- &__content {
- position: sticky;
- display: none;
- margin: 1.5em 0;
- top: 6em;
- padding: 0 1.5em 3em;
- flex-wrap: wrap;
- justify-content: center;
- align-items: flex-start;
- border-right: 2px solid getColor(concrete);
- overflow: hidden;
- transition: background-color 250ms;
- @include break(xlarge) {
- display: flex;
- }
- }
- &__img {
- &__wrapper {
- display: flex;
- justify-content: center;
- width: 100%;
- }
- }
-}