aboutsummaryrefslogtreecommitdiff
path: root/node_modules/expand-tilde/index.js
blob: d4e47062b2be465f45cc1cf34bb6493afcff4bb5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
/*!
 * expand-tilde <https://github.com/jonschlinkert/expand-tilde>
 *
 * Copyright (c) 2015 Jon Schlinkert.
 * Licensed under the MIT license.
 */

var homedir = require('homedir-polyfill');
var path = require('path');

module.exports = function expandTilde(filepath) {
  var home = homedir();

  if (filepath.charCodeAt(0) === 126 /* ~ */) {
    if (filepath.charCodeAt(1) === 43 /* + */) {
      return path.join(process.cwd(), filepath.slice(2));
    }
    return home ? path.join(home, filepath.slice(1)) : filepath;
  }

  return filepath;
};