1"use strict"; 2var __importDefault = (this && this.__importDefault) || function (mod) { 3 return (mod && mod.__esModule) ? mod : { "default": mod }; 4}; 5Object.defineProperty(exports, "__esModule", { value: true }); 6// @ts-expect-error: types node 7const node_fs_1 = __importDefault(require("node:fs")); 8// @ts-expect-error: types node 9const node_path_1 = __importDefault(require("node:path")); 10function requireContext(base = '.', scanSubDirectories = true, regularExpression = /\.[tj]sx?$/) { 11 const files = {}; 12 function readDirectory(directory) { 13 node_fs_1.default.readdirSync(directory).forEach((file) => { 14 const fullPath = node_path_1.default.resolve(directory, file); 15 const relativePath = `./${node_path_1.default.relative(base, fullPath)}`; 16 if (node_fs_1.default.statSync(fullPath).isDirectory()) { 17 if (scanSubDirectories) 18 readDirectory(fullPath); 19 return; 20 } 21 if (!regularExpression.test(fullPath)) 22 return; 23 files[relativePath] = true; 24 }); 25 } 26 readDirectory(base); 27 const context = Object.assign(function Module(file) { 28 return require(node_path_1.default.join(base, file)); 29 }, { 30 keys: () => Object.keys(files), 31 resolve: (key) => key, 32 id: '0', 33 }); 34 return context; 35} 36exports.default = requireContext; 37//# sourceMappingURL=require-context-ponyfill.js.map