about summary refs log tree commit diff
path: root/config/webpack/rules
diff options
context:
space:
mode:
Diffstat (limited to 'config/webpack/rules')
-rw-r--r--config/webpack/rules/index.js2
-rw-r--r--config/webpack/rules/node_modules.js5
-rw-r--r--config/webpack/rules/tesseract.js14
3 files changed, 20 insertions, 1 deletions
diff --git a/config/webpack/rules/index.js b/config/webpack/rules/index.js
index bbf6b0187..92a384e6d 100644
--- a/config/webpack/rules/index.js
+++ b/config/webpack/rules/index.js
@@ -1,6 +1,7 @@
 const babel = require('./babel');
 const css = require('./css');
 const file = require('./file');
+const tesseract = require('./tesseract');
 const nodeModules = require('./node_modules');
 
 // Webpack loaders are processed in reverse order
@@ -8,6 +9,7 @@ const nodeModules = require('./node_modules');
 // Lastly, process static files using file loader
 module.exports = {
   file,
+  tesseract,
   css,
   nodeModules,
   babel,
diff --git a/config/webpack/rules/node_modules.js b/config/webpack/rules/node_modules.js
index 7ed05504b..c084d3a57 100644
--- a/config/webpack/rules/node_modules.js
+++ b/config/webpack/rules/node_modules.js
@@ -4,7 +4,10 @@ const { settings, env } = require('../configuration');
 module.exports = {
   test: /\.(js|mjs)$/,
   include: /node_modules/,
-  exclude: /@babel(?:\/|\\{1,2})runtime/,
+  exclude: [
+    /@babel(?:\/|\\{1,2})runtime/,
+    /tesseract.js/,
+  ],
   use: [
     {
       loader: 'babel-loader',
diff --git a/config/webpack/rules/tesseract.js b/config/webpack/rules/tesseract.js
new file mode 100644
index 000000000..de647c8d1
--- /dev/null
+++ b/config/webpack/rules/tesseract.js
@@ -0,0 +1,14 @@
+module.exports = {
+  test: [
+    /tesseract\.js\/dist\/worker\.min\.js$/,
+    /tesseract\.js\/dist\/worker\.min\.js.map$/,
+    /tesseract\.js-core\/tesseract-core\.wasm$/,
+    /tesseract\.js-core\/tesseract-core\.wasm.js$/,
+  ],
+  use: {
+    loader: 'file-loader',
+    options: {
+      name: 'ocr/[name]-[hash].[ext]',
+    },
+  },
+};