summaryrefslogtreecommitdiff
path: root/packages/taler-wallet-webextension/dev.mjs
diff options
context:
space:
mode:
Diffstat (limited to 'packages/taler-wallet-webextension/dev.mjs')
-rwxr-xr-xpackages/taler-wallet-webextension/dev.mjs52
1 files changed, 42 insertions, 10 deletions
diff --git a/packages/taler-wallet-webextension/dev.mjs b/packages/taler-wallet-webextension/dev.mjs
index fb5661aa5..dc597c248 100755
--- a/packages/taler-wallet-webextension/dev.mjs
+++ b/packages/taler-wallet-webextension/dev.mjs
@@ -15,19 +15,52 @@
GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
*/
-import { serve } from "@gnu-taler/web-util/lib/index.node";
-import esbuild from 'esbuild';
-import { buildConfig } from "./build-fast-with-linaria.mjs";
+import { getFilesInDirectory, initializeDev } from "@gnu-taler/web-util/build";
+import { serve } from "@gnu-taler/web-util/node";
+import linaria from "@linaria/esbuild";
-buildConfig.inject = ['./node_modules/@gnu-taler/web-util/lib/live-reload.mjs']
+const allStaticFiles = getFilesInDirectory("src/pwa");
+
+const devEntryPoints = [
+ "src/popupEntryPoint.dev.tsx",
+ "src/walletEntryPoint.dev.tsx",
+ "src/background.dev.ts",
+ "src/browserWorkerEntry.ts",
+ "src/stories.tsx",
+];
+
+const build = initializeDev({
+ type: "development",
+ source: {
+ js: devEntryPoints,
+ assets: allStaticFiles,
+ },
+ destination: "./dist/dev",
+ public: "/app",
+ css: "linaria",
+ linariaPlugin: () => {
+ // linaria has a bug if this run in web-util library
+ return linaria({
+ babelOptions: {
+ presets: [
+ "@babel/preset-typescript",
+ "@babel/preset-react",
+ "@linaria",
+ ],
+ },
+ sourceMap: true,
+ });
+ },
+});
+
+await build();
serve({
- folder: './dist',
+ folder: "./dist/dev",
port: 8080,
- source: './src',
- development: true,
- onUpdate: async () => esbuild.build(buildConfig)
-})
+ source: "./src",
+ onSourceUpdate: build,
+});
// FIXME: create a mocha test in the browser as it was before
@@ -35,4 +68,3 @@ serve({
// fs.writeFileSync("dev-html/mocha.css", fs.readFileSync("node_modules/mocha/mocha.css"))
// fs.writeFileSync("dev-html/mocha.js", fs.readFileSync("node_modules/mocha/mocha.js"))
// fs.writeFileSync("dev-html/mocha.js.map", fs.readFileSync("node_modules/mocha/mocha.js.map"))
-