diff options
Diffstat (limited to 'dev')
-rw-r--r-- | dev/build.js | 29 | ||||
-rw-r--r-- | dev/data/manifest-variants.json | 20 |
2 files changed, 36 insertions, 13 deletions
diff --git a/dev/build.js b/dev/build.js index e9c204c5..496e5865 100644 --- a/dev/build.js +++ b/dev/build.js @@ -141,22 +141,25 @@ async function build(buildDir, extDir, manifestUtil, variantNames, manifestPath, const modifiedManifest = manifestUtil.getManifest(variant.name); - const fileNameSafe = path.basename(fileName); - const fullFileName = path.join(buildDir, fileNameSafe); ensureFilesExist(extDir, excludeFiles); - if (!dryRun) { - fs.writeFileSync(manifestPath, ManifestUtil.createManifestString(modifiedManifest)); - } - if (!dryRun || dryRunBuildZip) { - await createZip(extDir, excludeFiles, fullFileName, sevenZipExes, onUpdate, dryRun); - } + if (typeof fileName === 'string') { + const fileNameSafe = path.basename(fileName); + const fullFileName = path.join(buildDir, fileNameSafe); + if (!dryRun) { + fs.writeFileSync(manifestPath, ManifestUtil.createManifestString(modifiedManifest)); + } - if (!dryRun) { - if (Array.isArray(fileCopies)) { - for (const fileName2 of fileCopies) { - const fileName2Safe = path.basename(fileName2); - fs.copyFileSync(fullFileName, path.join(buildDir, fileName2Safe)); + if (!dryRun || dryRunBuildZip) { + await createZip(extDir, excludeFiles, fullFileName, sevenZipExes, onUpdate, dryRun); + } + + if (!dryRun) { + if (Array.isArray(fileCopies)) { + for (const fileName2 of fileCopies) { + const fileName2Safe = path.basename(fileName2); + fs.copyFileSync(fullFileName, path.join(buildDir, fileName2Safe)); + } } } } diff --git a/dev/data/manifest-variants.json b/dev/data/manifest-variants.json index 96b6d877..e9672cc0 100644 --- a/dev/data/manifest-variants.json +++ b/dev/data/manifest-variants.json @@ -306,6 +306,26 @@ "js/dom/simple-dom-parser.js", "lib/parse5.js" ] + }, + { + "name": "safari", + "fileName": null, + "modifications": [ + {"action": "remove", "path": ["optional_permissions"], "item": "clipboardRead"}, + {"action": "remove", "path": ["permissions"], "item": "webRequestBlocking"}, + {"action": "delete", "path": ["content_scripts", 0, "match_about_blank"]}, + {"action": "delete", "path": ["sandbox"]}, + { + "action": "set", + "path": ["content_security_policy"], + "value": "default-src 'self'; script-src 'self' 'unsafe-eval'; img-src blob: 'self'; style-src 'self' 'unsafe-inline'; media-src *; connect-src *" + } + ], + "excludeFiles": [ + "sw.js", + "js/dom/simple-dom-parser.js", + "lib/parse5.js" + ] } ] } |