UNPKG

web-dev-server

Version:

Node.js simple http server for common development or training purposes.

91 lines 3.21 kB
Object.defineProperty(exports, "__esModule", { value: true }); exports.DirItem = void 0; var DirItem = /** @class */ (function () { function DirItem(type, path, code) { this.type = type; this.path = path; this.code = code; } DirItem.SortByPath = function (a, b) { if (a.path < b.path) { return -1; } else if (a.path > b.path) { return 1; } else { return 0; } }; /** * @summary Return found index JS stripts for server side execution or index HTML static files. */ DirItem.FindIndex = function (dirItems, indexScripts, indexFiles) { var dirItemsLowerCased = [], indexFilesFound = [], indexScriptsFound = [], dirItem = '', dirItemLowerCased = '', resultScripts = [], resultFiles = [], i, l, index = 0; for (i = 0, l = dirItems.length; i < l; i++) { dirItem = dirItems[i]; dirItemLowerCased = dirItem.toLocaleLowerCase(); dirItemsLowerCased.push({ original: dirItem, lowerCase: dirItemLowerCased }); if (indexScripts.has(dirItemLowerCased)) { index = indexScripts.get(dirItemLowerCased); indexScriptsFound.push({ index: index, dir: dirItem }); break; } } if (indexScriptsFound.length > 0) { indexScriptsFound.sort(DirItem.indexScriptsFoundSort); indexScriptsFound.map(function (item) { resultScripts.push(item.dir); }); } else { for (i = 0, l = dirItemsLowerCased.length; i < l; i++) { dirItem = dirItemsLowerCased[i].original; dirItemLowerCased = dirItemsLowerCased[i].lowerCase; if (indexFiles.has(dirItemLowerCased)) { index = indexFiles.get(dirItemLowerCased); indexFilesFound.push({ index: index, file: dirItem }); } } indexFilesFound.sort(DirItem.indexFilesFoundSort); indexFilesFound.map(function (item) { resultFiles.push(item.file); }); } ; return { scripts: resultScripts, files: resultFiles }; }; DirItem.indexScriptsFoundSort = function (a, b) { var ai = a.index; var bi = b.index; return (ai > bi) ? 1 : (ai < bi ? -1 : 0); }; DirItem.indexFilesFoundSort = function (a, b) { var ai = a.index; var bi = b.index; return (ai > bi) ? 1 : (ai < bi ? -1 : 0); }; DirItem.TYPE_UNKNOWN = 0; DirItem.TYPE_DIR = 1; DirItem.TYPE_FILE = 2; DirItem.TYPE_SYMLINK = 4; DirItem.TYPE_SOCKET = 8; DirItem.TYPE_BLOCK_DEVICE = 16; DirItem.TYPE_CHARACTER_DEVICE = 32; DirItem.TYPE_FIFO = 64; return DirItem; }()); exports.DirItem = DirItem; //# sourceMappingURL=DirItem.js.map