1
- const { copy, remove, readFile, writeFile, readdir } = require ( 'fs-extra' ) ;
1
+ const {
2
+ copy,
3
+ remove,
4
+ readFile,
5
+ writeFile,
6
+ readdir,
7
+ rename,
8
+ } = require ( 'fs-extra' ) ;
2
9
const { resolve, join } = require ( 'path' ) ;
3
10
const { build } = require ( './build' ) ;
4
11
const { openInBrowser } = require ( '@parcel/utils' ) ;
@@ -63,6 +70,26 @@ async function fixWebManifest({ dest }) {
63
70
] ) ;
64
71
}
65
72
73
+ async function fixHtml ( { dest } ) {
74
+ const htmlContent = await readFile ( join ( dest , 'index.html' ) , 'utf8' ) ;
75
+
76
+ const [ , ogImageName ] = htmlContent . match (
77
+ / < m e t a p r o p e r t y = " o g : i m a g e " c o n t e n t = " \/ ? ( s i t e \. [ 0 - 9 a - f A - F ] { 8 } \. j p g ) " > / ,
78
+ ) ;
79
+
80
+ const replacer = new RegExp ( `/${ ogImageName } ` , 'g' ) ;
81
+ const newContent = htmlContent . replace (
82
+ replacer ,
83
+ 'https://testing-playground.com/site.jpg' ,
84
+ 'utf8' ,
85
+ ) ;
86
+
87
+ await Promise . all ( [
88
+ rename ( join ( dest , ogImageName ) , join ( dest , 'site.jpg' ) ) ,
89
+ writeFile ( join ( dest , 'index.html' ) , newContent , 'utf8' ) ,
90
+ ] ) ;
91
+ }
92
+
66
93
async function main ( ) {
67
94
const dest = resolve ( 'dist/client' ) ;
68
95
await remove ( dest ) ;
@@ -80,6 +107,7 @@ async function main() {
80
107
} ) ;
81
108
82
109
await fixWebManifest ( { dest } ) ;
110
+ await fixHtml ( { dest } ) ;
83
111
84
112
await workbox . generateSW ( workboxConfig ) ;
85
113
0 commit comments