0.1.1 • Published 10 months ago

@isdk/glob v0.1.1

Weekly downloads
-
License
-
Repository
github
Last release
10 months ago

@isdk/glob

npm version License

@isdk/glob is a library that provides a simple and efficient way to match string against glob patterns. It supports both whitelist and blacklist patterns, with blacklist patterns taking precedence.

Installation

You can install @isdk/glob:

npm install @isdk/glob

Usage

Basic Usage

The globMatch function checks if a given string matches the specified pattern(s).

import { globMatch } from '@isdk/glob';

// Single pattern
console.log(globMatch('example.txt', '*.txt')); // true
console.log(globMatch('example.txt', '*.md'));  // false

// Array of patterns
console.log(globMatch('example.txt', ['*.txt', '*.md'])); // true
console.log(globMatch('example.txt', ['*.md', '*.js'])); // false

Advanced Usage

You can use both whitelist and blacklist patterns. Blacklist patterns take precedence over whitelist patterns.

import { globMatch } from 'glob-match';

// Blacklist pattern
console.log(globMatch('example.txt', ['!example.txt'])); // false

// Mixed patterns
console.log(globMatch('example.txt', ['*.txt', '!example.txt'])); // false
console.log(globMatch('example.txt', ['*.txt', '!example.md']));  // true

API Documentation

globMatch(value: string, pattern: string | string[]): boolean

Checks if a given string matches the specified pattern(s).

  • Parameters:
    • value (string): The string to be matched.
    • pattern (string | string[]): A single pattern string or an array of pattern strings.
  • Returns:
    • boolean: Returns true if the string matches any of the whitelist patterns and does not match any blacklist patterns, otherwise returns false or undefined.

Example

import { globMatch } from 'glob-match';

console.log(globMatch('example.txt', '*.txt')); // true
console.log(globMatch('example.txt', ['*.md', '!example.txt'])); // false

Contributing

We welcome contributions from the community! Here are some ways you can help:

  • Bug Reports: If you find a bug, please open an issue on the GitHub Issues page.
  • Feature Requests: If you have an idea for a new feature, feel free to open an issue to discuss it.
  • Pull Requests: If you want to contribute code, please fork the repository and submit a pull request with your changes.

License

This project is licensed under the MIT License. See the LICENSE file for details.

0.1.1

10 months ago

0.1.0

12 months ago

0.0.2

12 months ago