From 98bce1b0da675715b2e5482c0ad61ba21135f62f Mon Sep 17 00:00:00 2001
From: Server-Bibliothek <server-bibliothek@lokal>
Date: Di, 04 Aug 2026 07:00:04 +0200
Subject: [PATCH] Add a desktop client that knows what is installed locally

---
 desktop/frontend/webpack.config.js |   56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 56 insertions(+), 0 deletions(-)

diff --git a/desktop/frontend/webpack.config.js b/desktop/frontend/webpack.config.js
new file mode 100644
index 0000000..2cb3038
--- /dev/null
+++ b/desktop/frontend/webpack.config.js
@@ -0,0 +1,56 @@
+import path from 'path';
+import { fileURLToPath } from 'url';
+import HtmlWebpackPlugin from 'html-webpack-plugin';
+
+const __dirname = path.dirname(fileURLToPath(import.meta.url));
+const isProduction = process.env.NODE_ENV === 'production';
+
+export default {
+  entry: './src/index.ts',
+  mode: isProduction ? 'production' : 'development',
+  devtool: isProduction ? false : 'inline-source-map',
+  experiments: {
+    topLevelAwait: true,
+  },
+  module: {
+    rules: [
+      {
+        test: /\.ts$/,
+        use: 'ts-loader',
+        exclude: /node_modules\/(?!@dh-software)/,
+      },
+      {
+        test: /\.css$/i,
+        resourceQuery: { not: [/raw/] },
+        use: ['style-loader', 'css-loader'],
+      },
+      {
+        // Import mit ?raw liefert den CSS-Quelltext als String (Theme-Umschaltung).
+        resourceQuery: /raw/,
+        type: 'asset/source',
+      },
+      {
+        test: /\.(svg|ttf|woff|woff2|png|jpg|gif|ico)$/i,
+        type: 'asset',
+      },
+    ],
+  },
+  resolve: {
+    extensions: ['.ts', '.js'],
+  },
+  plugins: [
+    new HtmlWebpackPlugin({
+      template: 'src/index.html',
+      // Das Fenster laedt die Datei direkt vom Dateisystem — relative Pfade.
+      publicPath: '',
+    }),
+  ],
+  output: {
+    path: path.resolve(__dirname, 'dist'),
+    filename: 'index.[contenthash].js',
+    clean: true,
+  },
+  stats: {
+    errorDetails: true,
+  },
+};

--
Gitblit v1.9.3