Socket
Socket
Sign inDemoInstall

picomatch

Package Overview
Dependencies
Maintainers
2
Versions
28
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

picomatch - npm Package Compare versions

Comparing version 2.0.1 to 2.0.2

16

lib/constants.js
'use strict';
const path = require('path');
const isWindows = process.platform === 'win32' || path.sep === '\\';
const WIN_SLASH = '\\\\/';

@@ -69,3 +68,3 @@ const WIN_NO_SLASH = `[^${WIN_SLASH}]`;

const POSIX_REGEX = {
const POSIX_REGEX_SOURCE = {
alnum: 'a-zA-Z0-9',

@@ -88,7 +87,12 @@ alpha: 'a-zA-Z',

module.exports = {
SPECIAL_CHAR_REGEX: /(\\?)((\W)(\3*))/g,
NON_SPECIAL_CHAR_REGEX: /^[^@![\].,$*+?^{}()|\\/]+/,
MAX_LENGTH: 1024 * 64,
POSIX_REGEX,
POSIX_REGEX_SOURCE,
// regular expressions
REGEX_BACKSLASH: /\\(?![*+?^${}(|)[\]])/g,
REGEX_NON_SPECIAL_CHAR: /^[^@![\].,$*+?^{}()|\\/]+/,
REGEX_SPECIAL_CHARS: /[-*+?.^${}(|)[\]]/,
REGEX_SPECIAL_CHARS_BACKREF: /(\\?)((\W)(\3*))/g,
REGEX_SPECIAL_CHARS_GLOBAL: /([-*+?.^${}(|)[\]])/g,
// Replace globs with equivalent patterns to reduce parsing time.

@@ -152,3 +156,3 @@ REPLACEMENTS: {

SEP: isWindows ? '\\' : '/',
SEP: path.sep,

@@ -155,0 +159,0 @@ /**

@@ -12,6 +12,6 @@ 'use strict';

MAX_LENGTH,
NON_SPECIAL_CHAR_REGEX,
POSIX_REGEX,
REPLACEMENTS,
SPECIAL_CHAR_REGEX
POSIX_REGEX_SOURCE,
REGEX_NON_SPECIAL_CHAR,
REGEX_SPECIAL_CHARS_BACKREF,
REPLACEMENTS
} = constants;

@@ -242,3 +242,3 @@

let output = input.replace(SPECIAL_CHAR_REGEX, (m, esc, chars, first, rest, index) => {
let output = input.replace(REGEX_SPECIAL_CHARS_BACKREF, (m, esc, chars, first, rest, index) => {
if (first === '\\') {

@@ -357,3 +357,3 @@ backslashes = true;

let rest = prev.value.slice(idx + 2);
let posix = POSIX_REGEX[rest];
let posix = POSIX_REGEX_SOURCE[rest];
if (posix) {

@@ -717,3 +717,3 @@ prev.value = pre + posix;

let match = NON_SPECIAL_CHAR_REGEX.exec(input.slice(state.index + 1));
let match = REGEX_NON_SPECIAL_CHAR.exec(input.slice(state.index + 1));
if (match) {

@@ -720,0 +720,0 @@ value += match[0];

@@ -5,8 +5,11 @@ 'use strict';

const win32 = process.platform === 'win32';
const SPECIAL_CHAR_REGEX = /[-[$*+?.^{}(|)\]]/;
const {
REGEX_SPECIAL_CHARS,
REGEX_SPECIAL_CHARS_GLOBAL,
} = require('./constants');
exports.isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val);
exports.hasRegexChars = str => SPECIAL_CHAR_REGEX.test(str);
exports.hasRegexChars = str => REGEX_SPECIAL_CHARS.test(str);
exports.isRegexChar = str => str.length === 1 && exports.hasRegexChars(str);
exports.escapeRegex = str => str.replace(/([-[$*+?.^{}(|)\]])/g, '\\$1');
exports.escapeRegex = str => str.replace(REGEX_SPECIAL_CHARS_GLOBAL, '\\$1');
exports.toPosixSlashes = str => str.replace(/\\/g, '/');

@@ -13,0 +16,0 @@

{
"name": "picomatch",
"description": "Blazing fast and accurate glob matcher written in JavaScript, with no dependencies and full support for standard and extended Bash glob features, including braces, extglobs, POSIX brackets, and regular expressions.",
"version": "2.0.1",
"version": "2.0.2",
"homepage": "https://github.com/folder/picomatch",

@@ -6,0 +6,0 @@ "author": "Jon Schlinkert (https://github.com/jonschlinkert)",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc