diff --git a/src/assets/locales/en.json b/src/assets/locales/en.json index 76412ef4..71871423 100644 --- a/src/assets/locales/en.json +++ b/src/assets/locales/en.json @@ -629,6 +629,7 @@ "cancel": "Cancel", "confirm": "Use default setup", "description": "The default setup does not have the best streams. You'll be missing out on the best sources!", + "tip": "It's recommended to set up the extension and/or FED API!", "title": "Are you sure?" }, "extension": { @@ -712,9 +713,15 @@ "extension": { "action": "Install extension", "description": "Install browser extension and gain access to additional sources! Remember to enable it for this site.", - "quality": "Best quality + More Sources", + "quality": "Best quality + More sources", "title": "Browser extension" }, + "desktopapp": { + "action": "Install Desktop app", + "description": "Install desktop app and gain access to additional sources! Simple and easy to use!", + "quality": "Best quality + Even more sources", + "title": "P-Stream Desktop app" + }, "proxy": { "action": "Setup proxy", "description": "Setup a free proxy in just 5 minutes! Improves loading reliability!", diff --git a/src/pages/onboarding/Onboarding.tsx b/src/pages/onboarding/Onboarding.tsx index 2c37fc5e..115bd581 100644 --- a/src/pages/onboarding/Onboarding.tsx +++ b/src/pages/onboarding/Onboarding.tsx @@ -1,6 +1,6 @@ -import classNames from "classnames"; import { Trans, useTranslation } from "react-i18next"; +import { isExtensionActiveCached } from "@/backend/extension/messaging"; import { Button } from "@/components/buttons/Button"; import { Icon, Icons } from "@/components/Icon"; import { Stepper } from "@/components/layout/Stepper"; @@ -55,11 +55,7 @@ export function OnboardingPage() { const { t } = useTranslation(); const noProxies = getProxyUrls().length === 0; - const isSafari = - typeof navigator !== "undefined" && - /Safari/.test(navigator.userAgent) && - !/Chrome/.test(navigator.userAgent) && - !/Edg/.test(navigator.userAgent); + const isFebboxSetup = usePreferencesStore((s) => s.febboxKey) !== ""; return ( @@ -69,16 +65,24 @@ export function OnboardingPage() { {t("onboarding.defaultConfirm.title")} - + {t("onboarding.defaultConfirm.description")} + + {t("onboarding.defaultConfirm.tip")} +
+ -
@@ -177,48 +181,49 @@ export function OnboardingPage() {
{/* Desktop Cards */} -
+
navigate("/onboarding/extension")} - className={classNames( - conf().HIDE_PROXY_ONBOARDING ? "md:w-1/2" : "md:w-1/3", - )} + onClick={() => + window.open( + "https://github.com/p-stream/p-stream-desktop/releases", + "_blank", + ) + } + className="w-1/3" > + + {t("onboarding.start.options.desktopapp.action")} + + + +
+ + + {t("onboarding.start.options.or")} + + +
+ navigate("/onboarding/extension")} + className="w-1/3" + > + - + {t("onboarding.start.options.extension.action")} - {conf().HIDE_PROXY_ONBOARDING ? null : ( - <> -
- - - {t("onboarding.start.options.or")} - - -
- navigate("/onboarding/proxy")} - className="md:w-1/3" - > - - {t("onboarding.start.options.proxy.action")} - - - - )} {noProxies ? null : ( <>
@@ -230,13 +235,11 @@ export function OnboardingPage() {
completeAndRedirect() // Skip modal on Safari - : skipModal.show // Show modal on other browsers + isFebboxSetup && isExtensionActiveCached() + ? () => completeAndRedirect() + : skipModal.show } - className={classNames( - conf().HIDE_PROXY_ONBOARDING ? "md:w-1/2" : "md:w-1/3", - )} + className="w-1/3" > {/* Mobile Cards */} -
+
+ {/* + window.open( + "https://github.com/p-stream/p-stream-desktop/releases", + "_blank", + ) + } + className="w-full" + > + + */} navigate("/onboarding/extension")} className="md:w-1/3 md:h-full" > - {conf().HIDE_PROXY_ONBOARDING ? null : ( - navigate("/onboarding/proxy")} - className="md:w-1/3" - > - - - )} {noProxies ? null : ( completeAndRedirect() // Skip modal on Safari - : skipModal.show // Show modal on other browsers + isFebboxSetup && isExtensionActiveCached() + ? () => completeAndRedirect() + : skipModal.show } className="md:w-1/3" >