File tree 4 files changed +39
-1
lines changed
src/pages/components/use-media-query
packages/material-ui/src/useMediaQuery
4 files changed +39
-1
lines changed Original file line number Diff line number Diff line change 34
34
"@material-ui/types" : " ^4.1.1" ,
35
35
"@trendmicro/react-interpolate" : " ^0.5.5" ,
36
36
"@types/autosuggest-highlight" : " ^3.1.0" ,
37
+ "@types/css-mediaquery" : " ^0.1.0" ,
37
38
"@types/json2mq" : " ^0.2.0" ,
38
39
"@types/react-autosuggest" : " ^9.3.11" ,
39
40
"@types/react-dom" : " ^16.9.1" ,
Original file line number Diff line number Diff line change
1
+ import React from 'react' ;
2
+ import mediaQuery from 'css-mediaquery' ;
3
+ import { ThemeProvider , Theme } from '@material-ui/core/styles' ;
4
+ import useMediaQuery from '@material-ui/core/useMediaQuery' ;
5
+
6
+ function MyComponent ( ) {
7
+ const matches = useMediaQuery ( '(min-width:600px)' ) ;
8
+
9
+ return < span > { `(min-width:600px) matches: ${ matches } ` } </ span > ;
10
+ }
11
+
12
+ export default function ServerSide ( ) {
13
+ const ssrMatchMedia = ( query : string ) => ( {
14
+ matches : mediaQuery . match ( query , {
15
+ // The estimated CSS width of the browser.
16
+ width : 800 ,
17
+ } ) ,
18
+ } ) ;
19
+
20
+ return (
21
+ < ThemeProvider < Theme >
22
+ theme = { {
23
+ props : {
24
+ // Change the default options of useMediaQuery
25
+ MuiUseMediaQuery : { ssrMatchMedia } ,
26
+ } ,
27
+ } }
28
+ >
29
+ < MyComponent />
30
+ </ ThemeProvider >
31
+ ) ;
32
+ }
Original file line number Diff line number Diff line change @@ -13,7 +13,7 @@ export type MuiMediaQueryListListener = (event: MuiMediaQueryListEvent) => void;
13
13
export interface Options {
14
14
defaultMatches ?: boolean ;
15
15
noSsr ?: boolean ;
16
- ssrMatchMedia ?: ( query : string ) => MuiMediaQueryList ;
16
+ ssrMatchMedia ?: ( query : string ) => { matches : boolean } ;
17
17
}
18
18
19
19
export default function useMediaQuery < Theme = unknown > (
Original file line number Diff line number Diff line change 2020
2020
resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0"
2021
2021
integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==
2022
2022
2023
+ "@types/css-mediaquery@^0.1.0":
2024
+ version "0.1.0"
2025
+ resolved "https://registry.yarnpkg.com/@types/css-mediaquery/-/css-mediaquery-0.1.0.tgz#61d439d8163880e90b61d19aba24f7b778c4e77d"
2026
+ integrity sha512-jzZ9bRw8fTgCEllDvE7GHR1zTP5LsDHJbAX6BCwD9qdxIOq/Le5TTsdteoCIdEQaFpDMvudLHU/hLo1Lmfcy0Q==
2027
+
2023
2028
"@types/enzyme@^3.10.3":
2024
2029
version "3.10.3"
2025
2030
resolved "https://registry.yarnpkg.com/@types/enzyme/-/enzyme-3.10.3.tgz#02b6c5ac7d0472005944a652e79045e2f6c66804"
You can’t perform that action at this time.
0 commit comments