inital
This commit is contained in:
		
							
								
								
									
										33
									
								
								node_modules/fast-glob/out/providers/matchers/matcher.d.ts
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								node_modules/fast-glob/out/providers/matchers/matcher.d.ts
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,33 @@
 | 
			
		||||
import { Pattern, MicromatchOptions, PatternRe } from '../../types';
 | 
			
		||||
import Settings from '../../settings';
 | 
			
		||||
export type PatternSegment = StaticPatternSegment | DynamicPatternSegment;
 | 
			
		||||
type StaticPatternSegment = {
 | 
			
		||||
    dynamic: false;
 | 
			
		||||
    pattern: Pattern;
 | 
			
		||||
};
 | 
			
		||||
type DynamicPatternSegment = {
 | 
			
		||||
    dynamic: true;
 | 
			
		||||
    pattern: Pattern;
 | 
			
		||||
    patternRe: PatternRe;
 | 
			
		||||
};
 | 
			
		||||
export type PatternSection = PatternSegment[];
 | 
			
		||||
export type PatternInfo = {
 | 
			
		||||
    /**
 | 
			
		||||
     * Indicates that the pattern has a globstar (more than a single section).
 | 
			
		||||
     */
 | 
			
		||||
    complete: boolean;
 | 
			
		||||
    pattern: Pattern;
 | 
			
		||||
    segments: PatternSegment[];
 | 
			
		||||
    sections: PatternSection[];
 | 
			
		||||
};
 | 
			
		||||
export default abstract class Matcher {
 | 
			
		||||
    private readonly _patterns;
 | 
			
		||||
    private readonly _settings;
 | 
			
		||||
    private readonly _micromatchOptions;
 | 
			
		||||
    protected readonly _storage: PatternInfo[];
 | 
			
		||||
    constructor(_patterns: Pattern[], _settings: Settings, _micromatchOptions: MicromatchOptions);
 | 
			
		||||
    private _fillStorage;
 | 
			
		||||
    private _getPatternSegments;
 | 
			
		||||
    private _splitSegmentsIntoSections;
 | 
			
		||||
}
 | 
			
		||||
export {};
 | 
			
		||||
							
								
								
									
										45
									
								
								node_modules/fast-glob/out/providers/matchers/matcher.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								node_modules/fast-glob/out/providers/matchers/matcher.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,45 @@
 | 
			
		||||
"use strict";
 | 
			
		||||
Object.defineProperty(exports, "__esModule", { value: true });
 | 
			
		||||
const utils = require("../../utils");
 | 
			
		||||
class Matcher {
 | 
			
		||||
    constructor(_patterns, _settings, _micromatchOptions) {
 | 
			
		||||
        this._patterns = _patterns;
 | 
			
		||||
        this._settings = _settings;
 | 
			
		||||
        this._micromatchOptions = _micromatchOptions;
 | 
			
		||||
        this._storage = [];
 | 
			
		||||
        this._fillStorage();
 | 
			
		||||
    }
 | 
			
		||||
    _fillStorage() {
 | 
			
		||||
        for (const pattern of this._patterns) {
 | 
			
		||||
            const segments = this._getPatternSegments(pattern);
 | 
			
		||||
            const sections = this._splitSegmentsIntoSections(segments);
 | 
			
		||||
            this._storage.push({
 | 
			
		||||
                complete: sections.length <= 1,
 | 
			
		||||
                pattern,
 | 
			
		||||
                segments,
 | 
			
		||||
                sections
 | 
			
		||||
            });
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
    _getPatternSegments(pattern) {
 | 
			
		||||
        const parts = utils.pattern.getPatternParts(pattern, this._micromatchOptions);
 | 
			
		||||
        return parts.map((part) => {
 | 
			
		||||
            const dynamic = utils.pattern.isDynamicPattern(part, this._settings);
 | 
			
		||||
            if (!dynamic) {
 | 
			
		||||
                return {
 | 
			
		||||
                    dynamic: false,
 | 
			
		||||
                    pattern: part
 | 
			
		||||
                };
 | 
			
		||||
            }
 | 
			
		||||
            return {
 | 
			
		||||
                dynamic: true,
 | 
			
		||||
                pattern: part,
 | 
			
		||||
                patternRe: utils.pattern.makeRe(part, this._micromatchOptions)
 | 
			
		||||
            };
 | 
			
		||||
        });
 | 
			
		||||
    }
 | 
			
		||||
    _splitSegmentsIntoSections(segments) {
 | 
			
		||||
        return utils.array.splitWhen(segments, (segment) => segment.dynamic && utils.pattern.hasGlobStar(segment.pattern));
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
exports.default = Matcher;
 | 
			
		||||
							
								
								
									
										4
									
								
								node_modules/fast-glob/out/providers/matchers/partial.d.ts
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								node_modules/fast-glob/out/providers/matchers/partial.d.ts
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,4 @@
 | 
			
		||||
import Matcher from './matcher';
 | 
			
		||||
export default class PartialMatcher extends Matcher {
 | 
			
		||||
    match(filepath: string): boolean;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										38
									
								
								node_modules/fast-glob/out/providers/matchers/partial.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								node_modules/fast-glob/out/providers/matchers/partial.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,38 @@
 | 
			
		||||
"use strict";
 | 
			
		||||
Object.defineProperty(exports, "__esModule", { value: true });
 | 
			
		||||
const matcher_1 = require("./matcher");
 | 
			
		||||
class PartialMatcher extends matcher_1.default {
 | 
			
		||||
    match(filepath) {
 | 
			
		||||
        const parts = filepath.split('/');
 | 
			
		||||
        const levels = parts.length;
 | 
			
		||||
        const patterns = this._storage.filter((info) => !info.complete || info.segments.length > levels);
 | 
			
		||||
        for (const pattern of patterns) {
 | 
			
		||||
            const section = pattern.sections[0];
 | 
			
		||||
            /**
 | 
			
		||||
             * In this case, the pattern has a globstar and we must read all directories unconditionally,
 | 
			
		||||
             * but only if the level has reached the end of the first group.
 | 
			
		||||
             *
 | 
			
		||||
             * fixtures/{a,b}/**
 | 
			
		||||
             *  ^ true/false  ^ always true
 | 
			
		||||
            */
 | 
			
		||||
            if (!pattern.complete && levels > section.length) {
 | 
			
		||||
                return true;
 | 
			
		||||
            }
 | 
			
		||||
            const match = parts.every((part, index) => {
 | 
			
		||||
                const segment = pattern.segments[index];
 | 
			
		||||
                if (segment.dynamic && segment.patternRe.test(part)) {
 | 
			
		||||
                    return true;
 | 
			
		||||
                }
 | 
			
		||||
                if (!segment.dynamic && segment.pattern === part) {
 | 
			
		||||
                    return true;
 | 
			
		||||
                }
 | 
			
		||||
                return false;
 | 
			
		||||
            });
 | 
			
		||||
            if (match) {
 | 
			
		||||
                return true;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        return false;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
exports.default = PartialMatcher;
 | 
			
		||||
		Reference in New Issue
	
	Block a user