UNPKG

@pipepack/enhanced-resolver

Version:

yet, reimplement enhanced-resolve with the idea 'simple is best'.

58 lines (45 loc) 1.47 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.asFile = asFile; exports.asModule = asModule; exports.asDirectory = asDirectory; var _path = require("path"); var _rxjs = require("rxjs"); var _operators = require("rxjs/operators"); var _is = require("./is"); var _descriptionFile = require("./description-file"); var _assign = require("../utils/assign"); // package // internal /** * consider request as file, just pass through, for convenience */ function asFile(request) { return (0, _rxjs.of)(request); } /** * condier request as standalone module, which means search by description file */ function asModule(request, options) { const { fs, descriptionFiles, mainFields } = options; return (0, _rxjs.of)(request).pipe((0, _operators.concatMap)(() => (0, _descriptionFile.pickDescriptionFile)(request, fs, descriptionFiles)), (0, _operators.concatMap)(descriptions => (0, _descriptionFile.pickMainField)(request, descriptions, mainFields))); } /** * consider request as directory, spread indexes */ function asDirectory(request, options) { const { fs, mainFiles } = options; return (0, _is.isDirectoryRequest)(request, fs).pipe((0, _operators.concatMap)(() => (0, _rxjs.from)(mainFiles).pipe((0, _operators.map)(mainFile => (0, _assign.assign)(request, { referencePathName: (0, _path.join)(request.referencePathName, mainFile) }))))); } //# sourceMappingURL=as.js.map