mirror of
https://github.com/logancyang/obsidian-copilot.git
synced 2026-07-22 07:50:24 +00:00
* Persist quick command configs * upgrade langchain and fix gpt-5 in custom command * Handle thinking in custom command * code clean up * Address cursor feedback
37 lines
1.1 KiB
JavaScript
37 lines
1.1 KiB
JavaScript
// Plugin to provide a shim for node:module in browser/Electron renderer context
|
|
const nodeModuleShim = {
|
|
name: "node-module-shim",
|
|
setup(build) {
|
|
// Intercept node:module imports and provide a shim
|
|
build.onResolve({ filter: /^node:module$/ }, (args) => {
|
|
return {
|
|
path: args.path,
|
|
namespace: "node-module-shim",
|
|
};
|
|
});
|
|
|
|
build.onLoad({ filter: /.*/, namespace: "node-module-shim" }, () => {
|
|
return {
|
|
contents: `
|
|
// Shim for node:module in Electron/Obsidian environment (CommonJS format)
|
|
module.exports = {
|
|
createRequire: function(filename) {
|
|
// In Electron renderer, we can use the global require
|
|
// Note: filename parameter is ignored (may be undefined from @langchain/community v1.0.0)
|
|
if (typeof require !== 'undefined') {
|
|
return require;
|
|
}
|
|
// Fallback: return a function that throws a helpful error
|
|
return function shimmedRequire(id) {
|
|
throw new Error('Dynamic require of "' + id + '" is not supported in this environment');
|
|
};
|
|
}
|
|
};
|
|
`,
|
|
loader: "js",
|
|
};
|
|
});
|
|
},
|
|
};
|
|
|
|
export default nodeModuleShim;
|