File tree Expand file tree Collapse file tree 1 file changed +9
-3
lines changed Expand file tree Collapse file tree 1 file changed +9
-3
lines changed Original file line number Diff line number Diff line change @@ -63,14 +63,17 @@ const devSource = __DEVELOPMENT__
6363 // default-src
6464 if ( process . env . RAZZLE_CSP_DEFAULT_SRC ) {
6565 metaTags . push (
66- `default-src ${ nonceValue } ${ devSource } ${ process . env . RAZZLE_CSP_DEFAULT_SRC } `
66+ `default-src ${ devSource } ${ process . env . RAZZLE_CSP_DEFAULT_SRC } `
6767 ) ;
6868 }
6969
7070 // script-src
7171 if ( process . env . RAZZLE_CSP_SCRIPT_SRC ) {
72+ const scriptWords = process . env . RAZZLE_CSP_SCRIPT_SRC . split ( ' ' ) ;
73+ const hasUnsafeInline =
74+ scriptWords . includes ( "'unsafe-inline'" ) || scriptWords . includes ( "'unsafe-hashes'" ) ;
7275 metaTags . push (
73- `script-src ${ nonceValue } ${ devSource } ${ process . env . RAZZLE_CSP_SCRIPT_SRC } `
76+ `script-src ${ hasUnsafeInline ? '' : nonceValue } ${ devSource } ${ process . env . RAZZLE_CSP_SCRIPT_SRC } `
7477 ) ;
7578 }
7679
@@ -100,7 +103,10 @@ const devSource = __DEVELOPMENT__
100103 if ( process . env . RAZZLE_CSP_STYLE_SRC || styleVals . length > 0 ) {
101104 const styleSrc = process . env . RAZZLE_CSP_STYLE_SRC ?
102105 process . env . RAZZLE_CSP_STYLE_SRC : '' ;
103- metaTags . push ( `style-src ${ nonceValue } ${ devSource } ${ styleSrc } ${ styleVals . join ( ' ' ) } ` ) ;
106+ const styleWords = styleSrc . split ( ' ' ) ;
107+ const hasUnsafeInline =
108+ styleWords . includes ( "'unsafe-inline'" ) || styleWords . includes ( "'unsafe-hashes'" ) ;
109+ metaTags . push ( `style-src ${ hasUnsafeInline ? '' : nonceValue } ${ devSource } ${ styleSrc } ${ styleVals . join ( ' ' ) } ` ) ;
104110 }
105111
106112 // Add the standard directives unmodified.
You can’t perform that action at this time.
0 commit comments