UNPKG

@kv-systems/ng-packagr

Version:

Compile and package Angular libraries in Angular Package Format (APF)

26 lines (20 loc) 811 B
import * as nodePath from 'path'; const PATH_REGEXP = new RegExp('\\' + nodePath.win32.sep, 'g'); const ensureUnixPathCache = new Map<string, string>(); const IS_WINDOWS = process.platform === 'win32'; export const ensureUnixPath = IS_WINDOWS ? (path?: string): string | null => { if (!path) { return null; } const cachePath = ensureUnixPathCache.get(path); if (cachePath) { return cachePath; } // we use a regex instead of the character literal due to a bug in some versions of node.js // the path separator needs to be preceded by an escape character const normalizedPath = path.replace(PATH_REGEXP, nodePath.posix.sep); ensureUnixPathCache.set(path, normalizedPath); return normalizedPath; } : (path?: string) => path;