msoffice-addin
Version:
Microsoft office addin module for Nuxt abd vite
55 lines (48 loc) • 2 kB
JavaScript
;
const process = require('node:process');
const kit = require('@nuxt/kit');
const index = require('./shared/msoffice-addin.3624eb4b.cjs');
require('node:fs');
require('node:path');
require('vite');
var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e.default : e; }
const process__default = /*#__PURE__*/_interopDefaultCompat(process);
function serialize(source) {
function replacer(key, value) {
if (value instanceof RegExp)
return `__REGEX__${value.toString()}__REGEX__`;
return value;
}
const content = JSON.stringify(source, replacer, 2);
const result = content.replaceAll(/"__REGEX__.*?__REGEX__"/g, (pattern) => {
const value = pattern.replaceAll(/"__REGEX__|__REGEX__"/g, "").replaceAll("\\\\", "\\");
return value;
});
return result;
}
const module$1 = kit.defineNuxtModule({
meta: {
name: "msoffice-addin",
configKey: "msOfficeAddin"
},
setup(options, nuxt) {
const { vite } = nuxt.options;
const { resolve } = kit.createResolver((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('module.cjs', document.baseURI).href)));
kit.addServerPlugin(resolve("./runtime/loader.server"));
nuxt.hooks.hookOnce("nitro:config", async (nitro) => {
const manifests = index.transformManifests({
mode: vite.mode,
envDir: vite.envDir ?? process__default.cwd(),
inputs: options.manifests,
defineENV: options.defineENV
});
kit.addPrerenderRoutes(
manifests.flatMap((entry) => entry.route)
);
nitro.virtual ||= {};
nitro.virtual["#office-addin-content"] = `export default ${serialize({ manifests, options })}`;
});
}
});
module.exports = module$1;