PHP 8.2.30
Preview: index.js Size: 1.09 KB
/proc/thread-self/root/home/byroehnu/.trash/node_modules11/glob-parent/index.js

'use strict';

var isGlob = require('is-glob');
var pathPosixDirname = require('path').posix.dirname;
var isWin32 = require('os').platform() === 'win32';

var slash = '/';
var backslash = /\\/g;
var enclosure = /[\{\[].*[\}\]]$/;
var globby = /(^|[^\\])([\{\[]|\([^\)]+$)/;
var escaped = /\\([\!\*\?\|\[\]\(\)\{\}])/g;

/**
 * @param {string} str
 * @param {Object} opts
 * @param {boolean} [opts.flipBackslashes=true]
 * @returns {string}
 */
module.exports = function globParent(str, opts) {
  var options = Object.assign({ flipBackslashes: true }, opts);

  // flip windows path separators
  if (options.flipBackslashes && isWin32 && str.indexOf(slash) < 0) {
    str = str.replace(backslash, slash);
  }

  // special case for strings ending in enclosure containing path separator
  if (enclosure.test(str)) {
    str += slash;
  }

  // preserves full path in case of trailing path separator
  str += 'a';

  // remove path parts that are globby
  do {
    str = pathPosixDirname(str);
  } while (isGlob(str) || globby.test(str));

  // remove escape chars and return result
  return str.replace(escaped, '$1');
};

Directory Contents

Dirs: 0 × Files: 5

Name Size Perms Modified Actions
4.40 KB lrw-r--r-- 2026-02-03 15:06:46
Edit Download
1.09 KB lrw-r--r-- 2026-02-03 15:06:44
Edit Download
753 B lrw-r--r-- 2026-02-03 15:06:44
Edit Download
1.08 KB lrw-r--r-- 2026-02-03 15:06:46
Edit Download
4.54 KB lrw-r--r-- 2026-02-03 15:06:46
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).