diff --git a/client/src/playground/forms.tsx b/client/src/playground/forms.tsx
index 8a54d41d9319..c10c3c4a8670 100644
--- a/client/src/playground/forms.tsx
+++ b/client/src/playground/forms.tsx
@@ -3,10 +3,9 @@ import { Button } from "../ui/atoms/button";
import { EditorContent, codeToMarkdown } from "./utils";
import { Loading } from "../ui/atoms/loading";
import { useUserData } from "../user-context";
-import { usePlusUrl } from "../plus/utils";
import { useGleanClick } from "../telemetry/glean-context";
-import { AuthContainer } from "../ui/molecules/auth-container";
import { PLAYGROUND } from "../telemetry/constants";
+import { PlusLoginBanner } from "../plus/common/login-banner";
export function FlagForm({ gistId }: { gistId: string | null }) {
return (
@@ -64,7 +63,6 @@ export function ShareForm({
extraClasses?: string;
}) {
let userData = useUserData();
- const href = usePlusUrl();
const gleanClick = useGleanClick();
let [loading, setLoading] = useState(false);
return (
@@ -126,25 +124,10 @@ export function ShareForm({
)}
>
) : (
-
-
diff --git a/client/src/plus/common/index.tsx b/client/src/plus/common/index.tsx
index 21dc82585ed9..364a8852a7e7 100644
--- a/client/src/plus/common/index.tsx
+++ b/client/src/plus/common/index.tsx
@@ -1,4 +1,4 @@
-import SignInLink from "../../ui/atoms/signin-link";
+import LogInLink from "../../ui/atoms/login-link";
import NoteCard from "../../ui/molecules/notecards";
import { getCategoryByPathname } from "../../utils";
@@ -6,7 +6,7 @@ export function NotSignedIn() {
return (
You have not signed in
-
+
);
}
@@ -15,7 +15,7 @@ export function NotSubscriber() {
return (
<>
You are signed in but not an active subscriber
-
+
>
);
}
diff --git a/client/src/plus/ai-help/login-banner.scss b/client/src/plus/common/login-banner.scss
similarity index 60%
rename from client/src/plus/ai-help/login-banner.scss
rename to client/src/plus/common/login-banner.scss
index 26ce2d911f96..cef4df848211 100644
--- a/client/src/plus/ai-help/login-banner.scss
+++ b/client/src/plus/common/login-banner.scss
@@ -1,8 +1,12 @@
+@use "../../ui/vars" as *;
+
.login-banner {
+ align-items: center;
background-color: var(--background-success);
border: 2px solid var(--background-success);
display: flex;
- justify-content: space-between;
+ flex-wrap: wrap;
+ gap: 1rem;
padding: 1rem;
.plus-link {
@@ -12,4 +16,12 @@
text-decoration-thickness: 0.15rem;
text-underline-offset: 0.1em;
}
+
+ .auth-container {
+ flex-direction: row;
+ flex-wrap: wrap;
+ gap: 1rem;
+ margin-bottom: 0;
+ margin-left: auto;
+ }
}
diff --git a/client/src/plus/updates/login-banner.tsx b/client/src/plus/common/login-banner.tsx
similarity index 52%
rename from client/src/plus/updates/login-banner.tsx
rename to client/src/plus/common/login-banner.tsx
index a26dcf9bed62..9ae2fe4816ab 100644
--- a/client/src/plus/updates/login-banner.tsx
+++ b/client/src/plus/common/login-banner.tsx
@@ -1,32 +1,39 @@
+import { useGleanClick } from "../../telemetry/glean-context";
import { AuthContainer } from "../../ui/molecules/auth-container";
-import "./login-banner.scss";
import { usePlusUrl } from "../utils";
-import { PLUS_UPDATES } from "../../telemetry/constants";
-import { useGleanClick } from "../../telemetry/glean-context";
+import "./login-banner.scss";
-export function LoginBanner() {
+export function PlusLoginBanner({
+ children,
+ className = "login-banner",
+ gleanPrefix,
+}: {
+ children: React.ReactNode;
+ className?: string;
+ gleanPrefix: string;
+}) {
const href = usePlusUrl();
const gleanClick = useGleanClick();
return (
-
+
);
diff --git a/client/src/plus/offer-overview/offer-overview-subscribe/index.tsx b/client/src/plus/offer-overview/offer-overview-subscribe/index.tsx
index e92697ed4bef..3253f5d2b7d1 100644
--- a/client/src/plus/offer-overview/offer-overview-subscribe/index.tsx
+++ b/client/src/plus/offer-overview/offer-overview-subscribe/index.tsx
@@ -14,7 +14,7 @@ import { getStripePlans } from "../../common/api";
import { useOnlineStatus } from "../../../hooks";
import { useGleanClick } from "../../../telemetry/glean-context";
import { OFFER_OVERVIEW_CLICK } from "../../../telemetry/constants";
-import SignInLink from "../../../ui/atoms/signin-link";
+import LogInLink from "../../../ui/atoms/login-link";
export enum Period {
Month,
@@ -347,7 +347,7 @@ function OfferOverviewSubscribe() {
{!activeSubscription && (
<>
{" "}
- or
+ or
>
)}
diff --git a/client/src/plus/updates/index.tsx b/client/src/plus/updates/index.tsx
index 863800bfdf8a..0768b0b6993b 100644
--- a/client/src/plus/updates/index.tsx
+++ b/client/src/plus/updates/index.tsx
@@ -19,11 +19,11 @@ import "./index.scss";
import { useGleanClick } from "../../telemetry/glean-context";
import { PLUS_UPDATES } from "../../telemetry/constants";
import SearchFilter, { AnyFilter, AnySort } from "../search-filter";
-import { LoginBanner } from "./login-banner";
import { useEffect, useState } from "react";
import { useSearchParams } from "react-router-dom";
import { DataError } from "../common";
import { useCollections } from "../collections/api";
+import { PlusLoginBanner } from "../common/login-banner";
type EventWithStatus = Event & { status: Status };
type Status = "added" | "removed";
@@ -201,7 +201,11 @@ function UpdatesLayout() {
}
/>
- {user && !user.isAuthenticated &&
}
+ {user && !user.isAuthenticated && (
+
+ Want to use filters?
+
+ )}
{user && user.isAuthenticated && hasFilters && (