68 lines
1.8 KiB
TypeScript
68 lines
1.8 KiB
TypeScript
import { defineConfig } from "zotero-plugin-scaffold";
|
|
import pkg from "./package.json";
|
|
import { copyFileSync } from "fs";
|
|
|
|
export default defineConfig({
|
|
source: ["src", "addon"],
|
|
dist: "build",
|
|
name: pkg.config.addonName,
|
|
id: pkg.config.addonID,
|
|
namespace: pkg.config.addonRef,
|
|
updateURL: `https://github.com/{{owner}}/{{repo}}/releases/download/release/${
|
|
pkg.version.includes("-") ? "update-beta.json" : "update.json"
|
|
}`,
|
|
xpiDownloadLink:
|
|
"https://github.com/{{owner}}/{{repo}}/releases/download/v{{version}}/{{xpiName}}.xpi",
|
|
|
|
server: {
|
|
asProxy: true,
|
|
},
|
|
|
|
build: {
|
|
assets: ["addon/**/*.*"],
|
|
define: {
|
|
...pkg.config,
|
|
author: pkg.author,
|
|
description: pkg.description,
|
|
homepage: pkg.homepage,
|
|
buildVersion: pkg.version,
|
|
buildTime: "{{buildTime}}",
|
|
},
|
|
esbuildOptions: [
|
|
{
|
|
entryPoints: ["src/index.ts"],
|
|
define: {
|
|
__env__: `"${process.env.NODE_ENV}"`,
|
|
},
|
|
bundle: true,
|
|
target: "firefox115",
|
|
outfile: `build/addon/chrome/content/scripts/${pkg.config.addonRef}.js`,
|
|
},
|
|
{
|
|
entryPoints: ["src/extras/*.*"],
|
|
outdir: "build/addon/chrome/content/scripts",
|
|
bundle: true,
|
|
target: ["firefox115"],
|
|
}
|
|
],
|
|
// If you want to checkout update.json into the repository, uncomment the following lines:
|
|
// makeUpdateJson: {
|
|
// hash: false,
|
|
// },
|
|
// hooks: {
|
|
// "build:makeUpdateJSON": (ctx) => {
|
|
// copyFileSync("build/update.json", "update.json");
|
|
// copyFileSync("build/update-beta.json", "update-beta.json");
|
|
// },
|
|
// },
|
|
},
|
|
// release: {
|
|
// bumpp: {
|
|
// execute: "npm run build",
|
|
// },
|
|
// },
|
|
|
|
// If you need to see a more detailed build log, uncomment the following line:
|
|
// logLevel: "trace",
|
|
});
|