From d5cc9e43b9e940faa856be6504932569f8f8e1f8 Mon Sep 17 00:00:00 2001 From: Ben White Date: Fri, 22 Mar 2024 12:28:09 +0100 Subject: [PATCH] fix: Toolbar better auth issue (#21096) --- ...s-other-toolbar--unauthenticated--dark.png | Bin 10791 -> 12371 bytes ...-other-toolbar--unauthenticated--light.png | Bin 12070 -> 13639 bytes frontend/src/toolbar/bar/Toolbar.scss | 4 - frontend/src/toolbar/bar/Toolbar.tsx | 39 ++++++-- frontend/src/toolbar/bar/ToolbarButton.scss | 11 +++ frontend/src/toolbar/bar/ToolbarButton.tsx | 13 ++- .../src/toolbar/flags/flagsToolbarLogic.ts | 5 - frontend/src/toolbar/toolbarConfigLogic.ts | 6 +- frontend/src/toolbar/toolbarLogic.ts | 87 ------------------ 9 files changed, 53 insertions(+), 112 deletions(-) delete mode 100644 frontend/src/toolbar/toolbarLogic.ts diff --git a/frontend/__snapshots__/scenes-other-toolbar--unauthenticated--dark.png b/frontend/__snapshots__/scenes-other-toolbar--unauthenticated--dark.png index f5283e47bdf438cc2f95a77a1b24ccc90adc38b9..dc149beabe2037e498026227fe248d0fa4cac62c 100644 GIT binary patch literal 12371 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 diff --git a/frontend/__snapshots__/scenes-other-toolbar--unauthenticated--light.png b/frontend/__snapshots__/scenes-other-toolbar--unauthenticated--light.png index 15b96030b8a254d62484aa97934a3972fea6d9b8..ace3a2b7f937317a2e0525ef4a80cbf46ae0220b 100644 GIT binary patch literal 13639 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 TPFNd4G#+Mm&hZz(YJU4456HRb literal 12070 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 PwX*r$?l=6eUibb7qA3my diff --git a/frontend/src/toolbar/bar/Toolbar.scss b/frontend/src/toolbar/bar/Toolbar.scss index ff83b7c9d922a..ec98167332fbd 100644 --- a/frontend/src/toolbar/bar/Toolbar.scss +++ b/frontend/src/toolbar/bar/Toolbar.scss @@ -144,8 +144,4 @@ transform: var(--toolbar-translate) scale(0); } } - - &--unauthenticated { - width: calc(5rem + 1px); // Account for border - } } diff --git a/frontend/src/toolbar/bar/Toolbar.tsx b/frontend/src/toolbar/bar/Toolbar.tsx index f255ccc26800d..8ed031f904d86 100644 --- a/frontend/src/toolbar/bar/Toolbar.tsx +++ b/frontend/src/toolbar/bar/Toolbar.tsx @@ -77,15 +77,18 @@ function MoreMenu(): JSX.Element { } maxContentWidth={true} > - } title="More options" /> + + + ) } -export function ToolbarInfoMenu(): JSX.Element { +export function ToolbarInfoMenu(): JSX.Element | null { const ref = useRef(null) const { visibleMenu, isDragging, menuProperties, minimized, isBlurred } = useValues(toolbarLogic) const { setMenu } = useActions(toolbarLogic) + const { isAuthenticated } = useValues(toolbarConfigLogic) const content = minimized ? null : visibleMenu === 'flags' ? ( @@ -102,6 +105,10 @@ export function ToolbarInfoMenu(): JSX.Element { return () => setMenu(null) }, [ref.current]) + if (!isAuthenticated) { + return null + } + return (
} onClick={isAuthenticated ? toggleMinimized : authenticate} title={isAuthenticated ? 'Minimize' : 'Authenticate the PostHog Toolbar'} titleMinimized={isAuthenticated ? 'Expand the toolbar' : 'Authenticate the PostHog Toolbar'} - /> + > + + {isAuthenticated ? ( <> - } menuId="inspect" /> - } menuId="heatmap" /> - } menuId="actions" /> - } menuId="flags" title="Feature flags" /> + + + + + + + + + + + + - ) : null} + ) : ( + + Authenticate + + )}
diff --git a/frontend/src/toolbar/bar/ToolbarButton.scss b/frontend/src/toolbar/bar/ToolbarButton.scss index 0d0bb666fa540..ce480f3fbab35 100644 --- a/frontend/src/toolbar/bar/ToolbarButton.scss +++ b/frontend/src/toolbar/bar/ToolbarButton.scss @@ -15,6 +15,8 @@ width: 2rem; height: 2rem; min-height: var(--lemon-button-height); + margin: 0.25rem; + font-weight: 600; color: var(--muted-alt); appearance: none !important; // Important as this gets overridden by Ant styles... cursor: pointer; @@ -43,4 +45,13 @@ } } } + + &--flex { + flex-grow: 1; + width: auto; + + button { + width: 100%; + } + } } diff --git a/frontend/src/toolbar/bar/ToolbarButton.tsx b/frontend/src/toolbar/bar/ToolbarButton.tsx index add0e5f2580ce..f5dfc755be469 100644 --- a/frontend/src/toolbar/bar/ToolbarButton.tsx +++ b/frontend/src/toolbar/bar/ToolbarButton.tsx @@ -10,17 +10,18 @@ import React from 'react' import { MenuState, toolbarLogic } from './toolbarLogic' export type ToolbarButtonProps = { - icon: React.ReactElement | null + children: React.ReactNode onClick?: () => void title?: string titleMinimized?: JSX.Element | string menuId?: MenuState + flex?: boolean } export const ToolbarButton: FunctionComponent = React.forwardRef< HTMLDivElement, ToolbarButtonProps ->(({ icon, title, onClick, titleMinimized, menuId, ...props }, ref): JSX.Element => { +>(({ children, title, onClick, titleMinimized, menuId, flex, ...props }, ref): JSX.Element => { const { visibleMenu, minimized, isDragging } = useValues(toolbarLogic) const { setVisibleMenu } = useActions(toolbarLogic) @@ -54,9 +55,13 @@ export const ToolbarButton: FunctionComponent = React.forwar } const theButton = ( -
+
) diff --git a/frontend/src/toolbar/flags/flagsToolbarLogic.ts b/frontend/src/toolbar/flags/flagsToolbarLogic.ts index 60c1f568f45a6..e1f41cabca73c 100644 --- a/frontend/src/toolbar/flags/flagsToolbarLogic.ts +++ b/frontend/src/toolbar/flags/flagsToolbarLogic.ts @@ -40,11 +40,6 @@ export const flagsToolbarLogic = kea([ `/api/projects/@current/feature_flags/my_flags${encodeParams(params, '?')}` ) - if (response.status >= 400) { - toolbarConfigLogic.actions.tokenExpired() - return [] - } - breakpoint() if (!response.ok) { return [] diff --git a/frontend/src/toolbar/toolbarConfigLogic.ts b/frontend/src/toolbar/toolbarConfigLogic.ts index 1b4638b8f39f8..853b03bdeea32 100644 --- a/frontend/src/toolbar/toolbarConfigLogic.ts +++ b/frontend/src/toolbar/toolbarConfigLogic.ts @@ -119,10 +119,12 @@ export async function toolbarFetch( }) if (response.status === 403) { const responseData = await response.json() - // Do not try to authenticate if the user has no project access altogether - if (responseData.detail !== "You don't have access to the project.") { + if (responseData.detail === "You don't have access to the project.") { toolbarConfigLogic.actions.authenticate() } } + if (response.status == 401) { + toolbarConfigLogic.actions.tokenExpired() + } return response } diff --git a/frontend/src/toolbar/toolbarLogic.ts b/frontend/src/toolbar/toolbarLogic.ts deleted file mode 100644 index d5183a6734f20..0000000000000 --- a/frontend/src/toolbar/toolbarLogic.ts +++ /dev/null @@ -1,87 +0,0 @@ -import { actions, afterMount, kea, listeners, path, props, reducers, selectors } from 'kea' -import { lemonToast } from 'lib/lemon-ui/LemonToast/LemonToast' - -import { actionsTabLogic } from '~/toolbar/actions/actionsTabLogic' -import { posthog } from '~/toolbar/posthog' -import { clearSessionToolbarToken } from '~/toolbar/utils' -import { ToolbarProps } from '~/types' - -import type { toolbarLogicType } from './toolbarLogicType' - -export const toolbarLogic = kea([ - path(['toolbar', 'toolbarLogic']), - props({} as ToolbarProps), - - actions({ - authenticate: true, - logout: true, - tokenExpired: true, - processUserIntent: true, - clearUserIntent: true, - showButton: true, - hideButton: true, - }), - - reducers(({ props }) => ({ - rawApiURL: [props.apiURL as string], - rawJsURL: [(props.jsURL || props.apiURL) as string], - temporaryToken: [props.temporaryToken || null, { logout: () => null, tokenExpired: () => null }], - actionId: [props.actionId || null, { logout: () => null, clearUserIntent: () => null }], - userIntent: [props.userIntent || null, { logout: () => null, clearUserIntent: () => null }], - source: [props.source || null, { logout: () => null }], - buttonVisible: [true, { showButton: () => true, hideButton: () => false, logout: () => false }], - dataAttributes: [props.dataAttributes || []], - posthog: [props.posthog ?? null], - })), - - selectors({ - apiURL: [(s) => [s.rawApiURL], (apiURL) => `${apiURL.endsWith('/') ? apiURL.replace(/\/+$/, '') : apiURL}`], - jsURL: [ - (s) => [s.rawJsURL, s.apiURL], - (rawJsURL, apiUrl) => - `${rawJsURL ? (rawJsURL.endsWith('/') ? rawJsURL.replace(/\/+$/, '') : rawJsURL) : apiUrl}`, - ], - isAuthenticated: [(s) => [s.temporaryToken], (temporaryToken) => !!temporaryToken], - }), - - listeners(({ values, props }) => ({ - authenticate: () => { - posthog.capture('toolbar authenticate', { is_authenticated: values.isAuthenticated }) - const encodedUrl = encodeURIComponent(window.location.href) - window.location.href = `${values.apiURL}/authorize_and_redirect/?redirect=${encodedUrl}` - clearSessionToolbarToken() - }, - logout: () => { - posthog.capture('toolbar logout') - clearSessionToolbarToken() - }, - tokenExpired: () => { - posthog.capture('toolbar token expired') - console.warn('PostHog Toolbar API token expired. Clearing session.') - if (values.source !== 'localstorage') { - lemonToast.error('PostHog Toolbar API token expired.') - } - clearSessionToolbarToken() - }, - processUserIntent: () => { - if (props.userIntent === 'add-action' || props.userIntent === 'edit-action') { - actionsTabLogic.actions.showButtonActions() - // the right view will next be opened in `actionsTabLogic` on `getActionsSuccess` - } - }, - })), - - afterMount(({ props, actions, values }) => { - if (props.instrument) { - const distinctId = props.distinctId - if (distinctId) { - posthog.identify(distinctId, props.userEmail ? { email: props.userEmail } : {}) - } - posthog.optIn() - } - if (props.userIntent) { - actions.processUserIntent() - } - posthog.capture('toolbar loaded', { is_authenticated: values.isAuthenticated }) - }), -])