PluginProbe ʕ •ᴥ•ʔ
Presto Player / 4.3.2
Presto Player v4.3.2
4.3.2 4.3.1 4.3.0 4.2.4 4.2.3 4.2.2 4.2.0 4.2.1 trunk 1.10.0 1.10.1 1.10.2 1.11.0 1.12.0 1.13.0 1.14.0 1.14.1 1.5.10 1.5.11 1.5.12 1.5.13 1.5.14 1.5.15 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.6.10 1.6.11 1.6.12 1.6.13 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.6.9 1.7.0 1.7.1 1.7.2 1.8.0 1.8.1 1.8.2 1.8.3 1.8.4 1.8.5 1.8.6 1.9.0 1.9.1 1.9.10 1.9.11 1.9.12 1.9.13 1.9.14 1.9.2 1.9.3 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.0.0 2.0.1 2.0.10 2.0.11 2.0.12 2.0.13 2.0.14 2.0.15 2.0.16 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.0.8 2.0.9 2.1.0 2.2.0 2.2.1 2.2.2 2.2.3 2.2.3-beta1 2.3.0 2.3.1 2.3.2 2.3.3 3.0.0 3.0.0-beta1 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.8 3.1.0 3.1.1 3.1.2 3.1.3 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.0.5 4.0.6 4.0.7 4.0.8 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4
presto-player / src / admin / dashboard / App.js
presto-player / src / admin / dashboard Last commit date
components 1 month ago hooks 1 month ago lib 2 months ago pages 1 month ago router 2 months ago utils 2 months ago App.js 2 months ago Routes.js 2 months ago common.scss 2 months ago index.js 2 months ago main.scss 2 months ago
App.js
52 lines
1 import { useState, useEffect } from "react";
2 import { RouterProvider } from "./router/router";
3 import { Toaster } from "@bsf/force-ui";
4 import Routes from "./Routes";
5 import Onboarding from "./pages/Onboarding";
6
7 // Single Toaster config for every tab. Pin to the extreme top-right just
8 // under the WP admin bar so the toast lands on the navbar corner, and keep
9 // the z-index above every Dialog overlay (999999) so it's never hidden
10 // behind a backdrop. The admin-bar CSS var automatically shifts to 46px on
11 // screens ≤782px, so the offset stays correct on small screens too.
12 const AppToaster = () => (
13 <Toaster
14 position="top-right"
15 dismissAfter={3000}
16 className="!top-[var(--presto-admin-bar-h)] !p-4 !z-[1000050]"
17 />
18 );
19
20 export default () => {
21 const prestoData = window.prestoPlayer || {};
22 const shouldShowOnboarding =
23 !prestoData.onboarding_completed || prestoData.onboarding_redirect;
24
25 const [showOnboarding, setShowOnboarding] = useState(shouldShowOnboarding);
26
27 useEffect(() => {
28 if (showOnboarding) {
29 document.body.classList.add("presto-player-onboarding-page");
30 }
31 return () => {
32 document.body.classList.remove("presto-player-onboarding-page");
33 };
34 }, [showOnboarding]);
35
36 if (showOnboarding) {
37 return (
38 <RouterProvider>
39 <AppToaster />
40 <Onboarding />
41 </RouterProvider>
42 );
43 }
44
45 return (
46 <RouterProvider>
47 <AppToaster />
48 <Routes />
49 </RouterProvider>
50 );
51 };
52