source: trip-planner-front/node_modules/normalize-path/index.js@ 8d391a1

Last change on this file since 8d391a1 was 6a3a178, checked in by Ema <ema_spirova@…>, 3 years ago

initial commit

  • Property mode set to 100644
File size: 1.0 KB
Line 
1/*!
2 * normalize-path <https://github.com/jonschlinkert/normalize-path>
3 *
4 * Copyright (c) 2014-2018, Jon Schlinkert.
5 * Released under the MIT License.
6 */
7
8module.exports = function(path, stripTrailing) {
9 if (typeof path !== 'string') {
10 throw new TypeError('expected path to be a string');
11 }
12
13 if (path === '\\' || path === '/') return '/';
14
15 var len = path.length;
16 if (len <= 1) return path;
17
18 // ensure that win32 namespaces has two leading slashes, so that the path is
19 // handled properly by the win32 version of path.parse() after being normalized
20 // https://msdn.microsoft.com/library/windows/desktop/aa365247(v=vs.85).aspx#namespaces
21 var prefix = '';
22 if (len > 4 && path[3] === '\\') {
23 var ch = path[2];
24 if ((ch === '?' || ch === '.') && path.slice(0, 2) === '\\\\') {
25 path = path.slice(2);
26 prefix = '//';
27 }
28 }
29
30 var segs = path.split(/[/\\]+/);
31 if (stripTrailing !== false && segs[segs.length - 1] === '') {
32 segs.pop();
33 }
34 return prefix + segs.join('/');
35};
Note: See TracBrowser for help on using the repository browser.