Centralizing where we add atom to require

This commit is contained in:
Maurício Szabo 2023-05-26 23:42:08 -03:00
parent 769daed2c4
commit 6549da2668
4 changed files with 20 additions and 22 deletions

View File

@ -2,6 +2,7 @@ const AtomEnvironment = require('./atom-environment');
const ApplicationDelegate = require('./application-delegate');
const Clipboard = require('./clipboard');
const TextEditor = require('./text-editor');
const { addAtomExport } = require('./module-utils');
require('./text-editor-component');
require('./file-system-blob-store');
@ -31,11 +32,7 @@ module.exports = function({ blobStore }) {
const { ipcRenderer } = require('electron');
const { resourcePath, devMode } = getWindowLoadSettings();
require('./electron-shims');
// Add application-specific exports to module search path.
const exportsPath = path.join(resourcePath, 'exports');
require('module').globalPaths.push(exportsPath);
process.env.NODE_PATH = exportsPath;
addAtomExport();
// Make React faster
if (!devMode && process.env.NODE_ENV == null) {

View File

@ -1,5 +1,5 @@
const ipcHelpers = require('./ipc-helpers');
const { requireModule } = require('./module-utils');
const { addAtomExport } = require('./module-utils');
const fs = require('fs');
const path = require('path');
const vm = require('vm')
@ -84,14 +84,7 @@ module.exports = async function({ blobStore, globalAtom }) {
window.addEventListener('keydown', handleKeydown, { capture: true });
// Add 'exports' to module search path.
const exportsPath = path.join(
getWindowLoadSettings().resourcePath,
'exports'
);
// require('module').globalPaths.push(exportsPath);
process.env.NODE_PATH = exportsPath; // Set NODE_PATH env variable since tasks may need it.
addAtomExport();
updateProcessEnv(env);
// Set up optional transpilation for packages under test if any

View File

@ -1,5 +1,5 @@
const ipcHelpers = require('./ipc-helpers');
const { requireModule } = require('./module-utils');
const { addAtomExport, requireModule } = require('./module-utils');
function cloneObject(object) {
const clone = {};
@ -88,12 +88,7 @@ module.exports = async function({ blobStore }) {
window.addEventListener('keydown', handleKeydown, { capture: true });
// Add 'exports' to module search path.
const exportsPath = path.join(
getWindowLoadSettings().resourcePath,
'exports'
);
require('module').globalPaths.push(exportsPath);
process.env.NODE_PATH = exportsPath; // Set NODE_PATH env variable since tasks may need it.
addAtomExport();
updateProcessEnv(env);

View File

@ -1,3 +1,7 @@
const getWindowLoadSettings = require('./get-window-load-settings');
const Module = require('module');
const path = require('path');
// a require function with both ES5 and ES6 default export support
function requireModule(path) {
const modul = require(path);
@ -18,4 +22,13 @@ function requireModule(path) {
}
}
exports.requireModule = requireModule;
function addAtomExport() {
const exportsPath = path.join(
getWindowLoadSettings().resourcePath,
'exports'
);
Module.globalPaths.push(exportsPath);
process.env.NODE_PATH = exportsPath; // Set NODE_PATH env variable since tasks may need it.
}
module.exports = { requireModule, addAtomExport };