⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.1
Server IP:
185.238.29.86
Server:
Linux server2 6.8.12-6-pve #1 SMP PREEMPT_DYNAMIC PMX 6.8.12-6 (2024-12-19T19:05Z) x86_64
Server Software:
nginx/1.18.0
PHP Version:
8.1.31
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
var
/
www
/
invoice
/
node_modules
/
micromatch
/
lib
/
View File Name :
parsers.js
'use strict'; var extglob = require('extglob'); var nanomatch = require('nanomatch'); var regexNot = require('regex-not'); var toRegex = require('to-regex'); var not; /** * Characters to use in negation regex (we want to "not" match * characters that are matched by other parsers) */ var TEXT = '([!@*?+]?\\(|\\)|\\[:?(?=.*?:?\\])|:?\\]|[*+?!^$.\\\\/])+'; var createNotRegex = function(opts) { return not || (not = textRegex(TEXT)); }; /** * Parsers */ module.exports = function(snapdragon) { var parsers = snapdragon.parser.parsers; // register nanomatch parsers snapdragon.use(nanomatch.parsers); // get references to some specific nanomatch parsers before they // are overridden by the extglob and/or parsers var escape = parsers.escape; var slash = parsers.slash; var qmark = parsers.qmark; var plus = parsers.plus; var star = parsers.star; var dot = parsers.dot; // register extglob parsers snapdragon.use(extglob.parsers); // custom micromatch parsers snapdragon.parser .use(function() { // override "notRegex" created in nanomatch parser this.notRegex = /^\!+(?!\()/; }) // reset the referenced parsers .capture('escape', escape) .capture('slash', slash) .capture('qmark', qmark) .capture('star', star) .capture('plus', plus) .capture('dot', dot) /** * Override `text` parser */ .capture('text', function() { if (this.isInside('bracket')) return; var pos = this.position(); var m = this.match(createNotRegex(this.options)); if (!m || !m[0]) return; // escape regex boundary characters and simple brackets var val = m[0].replace(/([[\]^$])/g, '\\$1'); return pos({ type: 'text', val: val }); }); }; /** * Create text regex */ function textRegex(pattern) { var notStr = regexNot.create(pattern, {contains: true, strictClose: false}); var prefix = '(?:[\\^]|\\\\|'; return toRegex(prefix + notStr + ')', {strictClose: false}); }