|
@@ -1,4 +1,3 @@
|
|
|
-import {useEffect, useState} from 'react';
|
|
|
import styled from '@emotion/styled';
|
|
|
|
|
|
import Button from 'app/components/button';
|
|
@@ -7,13 +6,12 @@ import ExternalLink from 'app/components/links/externalLink';
|
|
|
import LogoSentry from 'app/components/logoSentry';
|
|
|
import {t} from 'app/locale';
|
|
|
import PreferencesStore from 'app/stores/preferencesStore';
|
|
|
+import {useLegacyStore} from 'app/stores/useLegacyStore';
|
|
|
import space from 'app/styles/space';
|
|
|
import trackAdvancedAnalyticsEvent from 'app/utils/analytics/trackAdvancedAnalyticsEvent';
|
|
|
import {emailQueryParameter, extraQueryParameter} from 'app/utils/demoMode';
|
|
|
import getCookie from 'app/utils/getCookie';
|
|
|
|
|
|
-type Preferences = typeof PreferencesStore.prefs;
|
|
|
-
|
|
|
export default function DemoHeader() {
|
|
|
// if the user came from a SaaS org, we should send them back to upgrade when they leave the sandbox
|
|
|
const saasOrgSlug = getCookie('saas_org_slug');
|
|
@@ -27,25 +25,7 @@ export default function DemoHeader() {
|
|
|
? `https://sentry.io/settings/${saasOrgSlug}/billing/checkout/`
|
|
|
: `https://sentry.io/signup/${queryParameter}${getStartedExtraParameter}`;
|
|
|
|
|
|
- const [collapsed, setCollapsed] = useState(PreferencesStore.prefs.collapsed);
|
|
|
-
|
|
|
- const preferenceUnsubscribe = PreferencesStore.listen(
|
|
|
- (preferences: Preferences) => onPreferenceChange(preferences),
|
|
|
- undefined
|
|
|
- );
|
|
|
-
|
|
|
- function onPreferenceChange(preferences: Preferences) {
|
|
|
- if (preferences.collapsed === collapsed) {
|
|
|
- return;
|
|
|
- }
|
|
|
- setCollapsed(!collapsed);
|
|
|
- }
|
|
|
-
|
|
|
- useEffect(() => {
|
|
|
- return () => {
|
|
|
- preferenceUnsubscribe();
|
|
|
- };
|
|
|
- });
|
|
|
+ const collapsed = !!useLegacyStore(PreferencesStore).collapsed;
|
|
|
|
|
|
return (
|
|
|
<Wrapper collapsed={collapsed}>
|