File tree Expand file tree Collapse file tree 2 files changed +12
-1
lines changed Expand file tree Collapse file tree 2 files changed +12
-1
lines changed Original file line number Diff line number Diff line change @@ -31,6 +31,10 @@ export type UseIsDark = () => {
31
31
32
32
const $isAfterFirstEffect = createStatefulObservable ( ( ) => false ) ;
33
33
34
+ export function getIsDarkClientSide ( ) {
35
+ return $isAfterFirstEffect . current ? $clientSideIsDark . current : ssrWasPerformedWithIsDark ;
36
+ }
37
+
34
38
export const useIsDarkClientSide : UseIsDark = ( ) => {
35
39
useRerenderOnChange ( $clientSideIsDark ) ;
36
40
useRerenderOnChange ( $isAfterFirstEffect ) ;
Original file line number Diff line number Diff line change
1
+ import { assert } from "tsafe/assert" ;
1
2
import { isBrowser } from "../tools/isBrowser" ;
2
3
import { useIsDarkServerSide } from "./server" ;
3
- import { useIsDarkClientSide } from "./client" ;
4
+ import { useIsDarkClientSide , getIsDarkClientSide } from "./client" ;
4
5
export type { ColorScheme } from "./client" ;
5
6
6
7
export const useIsDark = isBrowser ? useIsDarkClientSide : useIsDarkServerSide ;
8
+
9
+ export const getIsDark = ( ) => {
10
+ assert ( isBrowser , "getIsDark can only be used on the client side" ) ;
11
+
12
+ return getIsDarkClientSide ( ) ;
13
+ } ;
You can’t perform that action at this time.
0 commit comments