@@ -23,7 +23,7 @@ export default function ({
23
23
fallback,
24
24
precompress = false ,
25
25
manifest = "manifest.json" ,
26
- emptyOutDir = true
26
+ emptyOutDir = true ,
27
27
} = { } ) {
28
28
return {
29
29
name : "sveltekit-adapter-chrome-extension" ,
@@ -61,7 +61,7 @@ export default function ({
61
61
await removeInlineScripts ( assets , builder . log ) ;
62
62
63
63
await removeAppManifest ( assets , builder . config . kit . appDir , builder . log ) ;
64
- await removeAppManifest ( '.' , assets , builder . log ) ;
64
+ await removeAppManifest ( "." , assets , builder . log ) ;
65
65
66
66
// operation required since generated app manifest will overwrite the static extension manifest.json
67
67
reWriteExtensionManifest ( assets , manifest , builder ) ;
@@ -94,7 +94,7 @@ async function removeAppManifest(directory, appDir, log) {
94
94
absolute : true ,
95
95
filesOnly : true ,
96
96
} ) ;
97
-
97
+
98
98
files . forEach ( ( path ) => {
99
99
try {
100
100
unlinkSync ( path ) ;
@@ -123,7 +123,7 @@ async function removeInlineScripts(directory, log) {
123
123
const f = readFileSync ( file ) ;
124
124
const $ = load ( f . toString ( ) ) ;
125
125
const node = $ ( 'script[type="module"]' ) . get ( ) [ 0 ] ;
126
-
126
+
127
127
if ( ! node ) return ;
128
128
if ( Object . keys ( node . attribs ) . includes ( "src" ) ) return ; // if there is a src, it's not an inline script
129
129
@@ -149,9 +149,14 @@ async function removeInlineScripts(directory, log) {
149
149
}
150
150
151
151
function reWriteExtensionManifest ( directory , manifest , builder ) {
152
- const { log, getStaticDirectory, copy } = builder ;
152
+ const { log, getStaticDirectory, getClientDirectory , copy } = builder ;
153
153
log ( "Re-writing extension manifest" ) ;
154
- const sourceFilePath = join ( getStaticDirectory ( ) , manifest ) ;
154
+ let sourceFilePath ;
155
+ if ( typeof getStaticDirectory !== "undefined" ) {
156
+ sourceFilePath = join ( getStaticDirectory ( ) , manifest ) ;
157
+ } else {
158
+ sourceFilePath = join ( getClientDirectory ( ) , manifest ) ;
159
+ }
155
160
if ( existsSync ( sourceFilePath ) ) {
156
161
log . info ( "Extension manifest found" ) ;
157
162
const res = copy ( sourceFilePath , join ( directory , "manifest.json" ) ) ;
0 commit comments