@@ -3,6 +3,7 @@ import * as React from 'react';
3
3
import type * as _NextImage from 'next/image' ;
4
4
import type * as _NextLegacyImage from 'next/legacy/image' ;
5
5
import semver from 'semver' ;
6
+ import { ImageContext } from './context' ;
6
7
7
8
const defaultLoader = ( { src, width, quality } : _NextImage . ImageLoaderProps ) => {
8
9
const missingValues = [ ] ;
@@ -38,7 +39,11 @@ const OriginalNextImage = NextImage.default;
38
39
Object . defineProperty ( NextImage , 'default' , {
39
40
configurable : true ,
40
41
value : ( props : _NextImage . ImageProps ) => {
41
- return < OriginalNextImage { ...props } loader = { props . loader ?? defaultLoader } /> ;
42
+ const imageParameters = React . useContext ( ImageContext ) ;
43
+
44
+ return (
45
+ < OriginalNextImage { ...props } loader = { props . loader ?? defaultLoader } { ...imageParameters } />
46
+ ) ;
42
47
} ,
43
48
} ) ;
44
49
@@ -48,9 +53,17 @@ if (semver.satisfies(process.env.__NEXT_VERSION!, '^13.0.0')) {
48
53
49
54
Object . defineProperty ( OriginalNextLegacyImage , 'default' , {
50
55
configurable : true ,
51
- value : ( props : _NextLegacyImage . ImageProps ) => (
52
- < OriginalNextLegacyImage { ...props } loader = { props . loader ?? defaultLoader } />
53
- ) ,
56
+ value : ( props : _NextLegacyImage . ImageProps ) => {
57
+ const imageParameters = React . useContext ( ImageContext ) ;
58
+
59
+ return (
60
+ < OriginalNextLegacyImage
61
+ { ...props }
62
+ loader = { props . loader ?? defaultLoader }
63
+ { ...imageParameters }
64
+ />
65
+ ) ;
66
+ } ,
54
67
} ) ;
55
68
}
56
69
@@ -60,8 +73,16 @@ if (semver.satisfies(process.env.__NEXT_VERSION!, '^12.2.0')) {
60
73
61
74
Object . defineProperty ( OriginalNextFutureImage , 'default' , {
62
75
configurable : true ,
63
- value : ( props : _NextImage . ImageProps ) => (
64
- < OriginalNextFutureImage { ...props } loader = { props . loader ?? defaultLoader } />
65
- ) ,
76
+ value : ( props : _NextImage . ImageProps ) => {
77
+ const imageParameters = React . useContext ( ImageContext ) ;
78
+
79
+ return (
80
+ < OriginalNextFutureImage
81
+ { ...props }
82
+ loader = { props . loader ?? defaultLoader }
83
+ { ...imageParameters }
84
+ />
85
+ ) ;
86
+ } ,
66
87
} ) ;
67
88
}
0 commit comments