From dfd177734dbd556019c1b876468d7a5e9ca70306 Mon Sep 17 00:00:00 2001
From: mtyszczak <mateusz.tyszczak@gmail.com>
Date: Fri, 28 Mar 2025 17:00:43 +0100
Subject: [PATCH] WIP: Add Buffer polyfill

---
 package.json   |  3 ++-
 pnpm-lock.yaml | 12 ++++++++++++
 vite.config.ts | 13 +++++++++++++
 3 files changed, 27 insertions(+), 1 deletion(-)

diff --git a/package.json b/package.json
index f0c0870..ba7ea99 100644
--- a/package.json
+++ b/package.json
@@ -22,9 +22,10 @@
     "preview": "vite preview"
   },
   "devDependencies": {
+    "@esbuild-plugins/node-globals-polyfill": "^0.2.3",
     "@hiveio/wax": "1.27.6-rc7-250328142506",
-    "@hiveio/wax-signers-metamask": "1.27.6-rc7-250328142506",
     "@hiveio/wax-signers-keychain": "1.27.6-rc7-250328142506",
+    "@hiveio/wax-signers-metamask": "1.27.6-rc7-250328142506",
     "@hiveio/wax-signers-peakvault": "1.27.6-rc7-250328142506",
     "@mdi/js": "^7.4.47",
     "@metamask/providers": "^16.0.0",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 391c023..1e69fc4 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -8,6 +8,9 @@ importers:
 
   .:
     devDependencies:
+      '@esbuild-plugins/node-globals-polyfill':
+        specifier: ^0.2.3
+        version: 0.2.3(esbuild@0.25.0)
       '@hiveio/wax':
         specifier: 1.27.6-rc7-250328142506
         version: 1.27.6-rc7-250328142506
@@ -125,6 +128,11 @@ packages:
     resolution: {integrity: sha512-rGPjzD7a7cPtMHjpJEtLMt/RmqX8XK25tN5qjuu9iaDMK/Ril86CecU5DN/TXEMUQMY1p6b2cVvKBLTdFMr2DA==}
     engines: {node: '>=6'}
 
+  '@esbuild-plugins/node-globals-polyfill@0.2.3':
+    resolution: {integrity: sha512-r3MIryXDeXDOZh7ih1l/yE9ZLORCd5e8vWg02azWRGj5SPTuoh69A2AIyn0Z31V/kHBfZ4HgWJ+OK3GTTwLmnw==}
+    peerDependencies:
+      esbuild: '*'
+
   '@esbuild/aix-ppc64@0.25.0':
     resolution: {integrity: sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ==}
     engines: {node: '>=18'}
@@ -1953,6 +1961,10 @@ snapshots:
     dependencies:
       long: 3.2.0
 
+  '@esbuild-plugins/node-globals-polyfill@0.2.3(esbuild@0.25.0)':
+    dependencies:
+      esbuild: 0.25.0
+
   '@esbuild/aix-ppc64@0.25.0':
     optional: true
 
diff --git a/vite.config.ts b/vite.config.ts
index 23bb9e6..7d2075c 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -3,6 +3,7 @@ import vue from '@vitejs/plugin-vue'
 import autoprefixer from 'autoprefixer'
 import tailwind from 'tailwindcss'
 import { defineConfig } from 'vite'
+import { NodeGlobalsPolyfillPlugin } from '@esbuild-plugins/node-globals-polyfill';
 
 // https://vite.dev/config/
 export default defineConfig({
@@ -11,6 +12,18 @@ export default defineConfig({
       plugins: [tailwind(), autoprefixer()],
     },
   },
+  optimizeDeps: {
+    esbuildOptions: {
+      define: {
+        global: 'globalThis' // fix nuxt3 global
+      },
+      plugins: [
+        NodeGlobalsPolyfillPlugin({
+          buffer: true
+        }),
+      ]
+    }
+  },
   plugins: [vue()],
   resolve: {
     alias: {
-- 
GitLab