diff --git a/packages/nc-gui-v2/nuxt.config.ts b/packages/nc-gui-v2/nuxt.config.ts index 4dd3bb9c88..6155cf9098 100644 --- a/packages/nc-gui-v2/nuxt.config.ts +++ b/packages/nc-gui-v2/nuxt.config.ts @@ -13,7 +13,7 @@ export default defineNuxtConfig({ ssr: false, app: { - baseURL: '/dashboard/', + baseURL: process.env.NODE_ENV === 'production' ? '.' : undefined, }, css: [ 'virtual:windi.css', diff --git a/packages/nc-gui-v2/package-lock.json b/packages/nc-gui-v2/package-lock.json index f14d081e5e..90b27462c7 100644 --- a/packages/nc-gui-v2/package-lock.json +++ b/packages/nc-gui-v2/package-lock.json @@ -4,6 +4,7 @@ "requires": true, "packages": { "": { + "hasInstallScript": true, "dependencies": { "@ckpack/vue-color": "^1.2.0", "@vuelidate/core": "^2.0.0-alpha.44", diff --git a/packages/nc-gui-v2/package.json b/packages/nc-gui-v2/package.json index 1dae9282e6..81abf4f9a5 100644 --- a/packages/nc-gui-v2/package.json +++ b/packages/nc-gui-v2/package.json @@ -10,7 +10,8 @@ "test:ui": "vitest -c test/vite.config.ts --ui", "coverage": "vitest -c test/vite.config.ts run --coverage", "build:copy": "npm run generate; rm -rf ../nc-lib-gui-v2/lib/dist/; rsync -rvzh ./dist/ ../nc-lib-gui-v2/lib/dist/", - "build:copy:publish": "npm run generate; rm -rf ../nc-lib-gui-v2/lib/dist/; rsync -rvzh ./dist/ ../nc-lib-gui-v2/lib/dist/; npm publish ../nc-lib-gui-v2" + "build:copy:publish": "npm run generate; rm -rf ../nc-lib-gui-v2/lib/dist/; rsync -rvzh ./dist/ ../nc-lib-gui-v2/lib/dist/; npm publish ../nc-lib-gui-v2", + "postinstall": "node scripts/updateNuxtRouting.js" }, "dependencies": { "@ckpack/vue-color": "^1.2.0", diff --git a/packages/nc-gui-v2/scripts/updateNuxtRouting.js b/packages/nc-gui-v2/scripts/updateNuxtRouting.js new file mode 100644 index 0000000000..e03723ec80 --- /dev/null +++ b/packages/nc-gui-v2/scripts/updateNuxtRouting.js @@ -0,0 +1,20 @@ +/** A temporary solution to enable hash based routing until + * nuxt-team merges - https://github.com/nuxt/framework/pull/6980 + */ + +const fs = require('fs') +const path = require('path') + +const filePath = path.join(__dirname, '..', 'node_modules', 'nuxt', 'dist', 'pages', 'runtime', 'router.mjs') + +/** Read file content to be updated */ +const content = fs.readFileSync(filePath, 'utf8') + +/** Replace `createWebHistory` with `createWebHashHistory` */ +const updatedContent = content.replace( + /createWebHistory(\s*,\s*)createMemoryHistory/, + `createWebHashHistory as createWebHistory$1createMemoryHistory`, +) + +/** Update file content with updated code */ +fs.writeFileSync(filePath, updatedContent, 'utf8')