@jsxtools/rollup-plugin-utils
Advanced tools
| export declare class Pattern { | ||
| #private; | ||
| constructor(pattern: string); | ||
| match(path: string, includeDot?: boolean): boolean; | ||
| static match(pattern: string, path: string, includeDot?: boolean): boolean; | ||
| } | ||
| export declare const match: typeof Pattern.match; |
+368
| // Highly opinionated, high-performance POSIX glob matcher. | ||
| // Features: ?, *, **, [], extglobs @() ?() +() *() !(), leading-dot rule (POSIX), no brace expansion. | ||
| // Two segment kinds: GlobStar or an anchored RegExp per segment. | ||
| // | ||
| // Usage: | ||
| // const glob = new Glob("src/**/*.ts") | ||
| // glob.match("src/a/b/x.ts") // true | ||
| export class Pattern { | ||
| constructor(pattern) { | ||
| // quick scan: bail to literal-fast-path if there are no meta chars | ||
| let hasMeta = false; | ||
| for (let scanIndex = 0, n = pattern.length; scanIndex < n; ++scanIndex) { | ||
| const ch = pattern[scanIndex]; | ||
| if (ch === "\\" || | ||
| ch === "[" || | ||
| ch === "]" || | ||
| ch === "?" || | ||
| ch === "*" || | ||
| ch === "@" || | ||
| ch === "!" || | ||
| ch === "+" || | ||
| ch === "(" || | ||
| ch === ")") { | ||
| hasMeta = true; | ||
| break; | ||
| } | ||
| } | ||
| let segments; | ||
| if (!hasMeta) { | ||
| // literal fast-path: just split + anchor as exact literals | ||
| const parts = pattern.split("/"); | ||
| segments = new Array(parts.length); | ||
| for (let index = 0; index < parts.length; ++index) { | ||
| const literal = parts[index]; | ||
| segments[index] = { | ||
| kind: 0 /* SegmentKind.LiteralRegex */, | ||
| re: new RegExp(`^${escapeRegex(literal)}$`), | ||
| explicitLeadingDot: literal.length > 0 && literal[0] === ".", | ||
| }; | ||
| } | ||
| } | ||
| else { | ||
| segments = parseAndPrecompile(pattern); | ||
| } | ||
| this.#internals.segments = segments; | ||
| } | ||
| match(path, includeDot = false) { | ||
| return matchPathAgainstCompiled(this.#internals.segments, path, includeDot); | ||
| } | ||
| static match(pattern, path, includeDot = false) { | ||
| return new this(pattern).match(path, includeDot); | ||
| } | ||
| #internals = { | ||
| segments: [], | ||
| }; | ||
| } | ||
| export const match = Pattern.match.bind(Pattern); | ||
| // #region Internals | ||
| const isDotfile = (part, includeDot, explicitLeadingDot) => !includeDot && part.length > 0 && part[0] === "." && !explicitLeadingDot; | ||
| const matchPathAgainstCompiled = (segments, path, includeDot) => { | ||
| const parts = path.split("/"); | ||
| // detect globstar presence | ||
| let containsGlobStar = false; | ||
| for (let index = 0; index < segments.length; ++index) { | ||
| if (segments[index].kind === 1 /* SegmentKind.GlobStar */) { | ||
| containsGlobStar = true; | ||
| break; | ||
| } | ||
| } | ||
| // no-globstar fast path: segment lengths must match, then straight tests | ||
| if (!containsGlobStar) { | ||
| if (parts.length !== segments.length) | ||
| return false; | ||
| for (let index = 0; index < parts.length; ++index) { | ||
| const segment = segments[index]; | ||
| const part = parts[index]; | ||
| if (isDotfile(part, includeDot, segment.explicitLeadingDot)) | ||
| return false; | ||
| if (!segment.re.test(part)) | ||
| return false; | ||
| } | ||
| return true; | ||
| } | ||
| // general DP path with ** support | ||
| return matchWithGlobStarDP(segments, parts, includeDot); | ||
| }; | ||
| const matchWithGlobStarDP = (segments, parts, includeDot) => { | ||
| const m = segments.length; | ||
| const n = parts.length; | ||
| const memo = new Map(); | ||
| const recur = (i, j) => { | ||
| const k = i * 1000 + j; | ||
| const cached = memo.get(k); | ||
| if (cached !== undefined) | ||
| return cached; | ||
| let result = false; | ||
| if (i === m) { | ||
| result = j === n; | ||
| } | ||
| else { | ||
| const segment = segments[i]; | ||
| if (segment.kind === 1 /* SegmentKind.GlobStar */) { | ||
| // ** matches zero segments | ||
| if (recur(i + 1, j)) { | ||
| result = true; | ||
| } | ||
| else { | ||
| // ** matches one or more segments, but cannot start by consuming a dotfile (unless includeDot) | ||
| for (let nextJ = j; nextJ < n; ++nextJ) { | ||
| const part = parts[nextJ]; | ||
| if (isDotfile(part, includeDot)) { | ||
| ++nextJ; | ||
| continue; | ||
| } | ||
| if (recur(i + 1, nextJ + 1)) { | ||
| result = true; | ||
| break; | ||
| } | ||
| } | ||
| } | ||
| } | ||
| else { | ||
| if (j < n) { | ||
| const part = parts[j]; | ||
| result = | ||
| !isDotfile(part, includeDot, segment.explicitLeadingDot) && | ||
| segment.re.test(part) && | ||
| recur(i + 1, j + 1); | ||
| } | ||
| } | ||
| } | ||
| memo.set(k, result); | ||
| return result; | ||
| }; | ||
| return recur(0, 0); | ||
| }; | ||
| const handleEscape = (pattern, index, end) => index + 1 < end ? [escapeRegex(pattern[index + 1]), index + 2] : ["\\\\", index + 1]; | ||
| const parseAndPrecompile = (pattern) => { | ||
| const segments = []; | ||
| const length = pattern.length; | ||
| let index = 0; | ||
| let currentSegmentRegexSource = ""; | ||
| let sawFirstUnit = false; | ||
| let explicitLeadingDot = false; | ||
| const flushCurrentSegment = () => { | ||
| if (currentSegmentRegexSource === "") { | ||
| return; | ||
| } | ||
| segments.push({ | ||
| kind: 0 /* SegmentKind.LiteralRegex */, | ||
| re: new RegExp(`^${currentSegmentRegexSource}$`), | ||
| explicitLeadingDot, | ||
| }); | ||
| currentSegmentRegexSource = ""; | ||
| sawFirstUnit = false; | ||
| explicitLeadingDot = false; | ||
| }; | ||
| while (index < length) { | ||
| const ch = pattern[index]; | ||
| // Backslash escape → literal | ||
| if (ch === "\\") { | ||
| const [escaped, nextIndex] = handleEscape(pattern, index, length); | ||
| if (!sawFirstUnit && index + 1 < length) { | ||
| if (pattern[index + 1] === ".") | ||
| explicitLeadingDot = true; | ||
| sawFirstUnit = true; | ||
| } | ||
| currentSegmentRegexSource += escaped; | ||
| index = nextIndex; | ||
| continue; | ||
| } | ||
| // Slash → boundary | ||
| if (ch === "/") { | ||
| flushCurrentSegment(); | ||
| ++index; | ||
| continue; | ||
| } | ||
| // Bracket class '[ ... ]' (best-effort, still does not match '/') | ||
| if (ch === "[") { | ||
| const [s, e] = readBalancedRange(pattern, index, "[", "]"); | ||
| // If first unit of segment is a literal '.' inside a class like [.] set explicit flag. | ||
| if (!sawFirstUnit && pattern[s + 1] === "." && pattern[s + 2] === "]") { | ||
| explicitLeadingDot = true; | ||
| } | ||
| currentSegmentRegexSource += pattern.slice(s, e); | ||
| index = e; | ||
| continue; | ||
| } | ||
| // Extglob at segment level | ||
| if (isExtglobOperator(ch) && pattern[index + 1] === "(") { | ||
| // First unit is wildcard (not a literal dot) → do not mark explicitLeadingDot | ||
| const { regexSource, nextIndex } = parseExtglob(pattern, index); | ||
| currentSegmentRegexSource += regexSource; | ||
| index = nextIndex; | ||
| continue; | ||
| } | ||
| // Star(s) | ||
| if (ch === "*") { | ||
| let runEnd = index + 1; | ||
| while (runEnd < length && pattern[runEnd] === "*") | ||
| ++runEnd; | ||
| if (runEnd - index >= 2) { | ||
| flushCurrentSegment(); | ||
| segments.push({ kind: 1 /* SegmentKind.GlobStar */ }); | ||
| } | ||
| else { | ||
| // '*' within a segment is wildcard → does not set explicitLeadingDot | ||
| currentSegmentRegexSource += "[^/]*"; | ||
| } | ||
| index = runEnd; | ||
| continue; | ||
| } | ||
| // Single '?' | ||
| if (ch === "?") { | ||
| currentSegmentRegexSource += "[^/]"; | ||
| ++index; | ||
| continue; | ||
| } | ||
| // Plain text run | ||
| const start = index; | ||
| while (index < length) { | ||
| const c = pattern[index]; | ||
| if (c === "\\" || c === "/" || c === "[" || c === "*" || c === "?" || isExtglobOperator(c)) { | ||
| break; | ||
| } | ||
| ++index; | ||
| } | ||
| if (start < index) { | ||
| if (!sawFirstUnit) { | ||
| if (pattern[start] === ".") | ||
| explicitLeadingDot = true; | ||
| sawFirstUnit = true; | ||
| } | ||
| currentSegmentRegexSource += escapeRegex(pattern.slice(start, index)); | ||
| } | ||
| } | ||
| flushCurrentSegment(); | ||
| return segments; | ||
| }; | ||
| const isExtglobOperator = (c) => c === "@" || c === "!" || c === "?" || c === "+" || c === "*"; | ||
| // Balanced read starting on opener at position `pos` | ||
| const readBalancedRange = (s, pos, open, close) => { | ||
| const start = pos; | ||
| const n = s.length; | ||
| let depth = 0; | ||
| while (pos < n) { | ||
| const ch = s[pos]; | ||
| ++pos; | ||
| if (ch === "\\") { | ||
| if (pos < n) { | ||
| ++pos; | ||
| } | ||
| continue; | ||
| } | ||
| if (ch === open) { | ||
| ++depth; | ||
| continue; | ||
| } | ||
| if (ch === close) { | ||
| --depth; | ||
| if (depth === 0) { | ||
| break; | ||
| } | ||
| } | ||
| } | ||
| return [start, pos]; | ||
| }; | ||
| const parseExtglob = (pattern, opIndex) => { | ||
| const kind = pattern[opIndex]; | ||
| const [parenStart, parenEnd] = readBalancedRange(pattern, opIndex + 1, "(", ")"); // start on '(' | ||
| const innerStart = parenStart + 1; | ||
| const innerEnd = parenEnd - 1; | ||
| const alternates = splitAlternatesTopLevel(pattern, innerStart, innerEnd) | ||
| .map(([s, e]) => compileSubpatternToRegexSource(pattern, s, e)) | ||
| .join("|"); | ||
| const extglobSuffix = { "@": "", "?": "?", "+": "+", "*": "*" }; | ||
| const source = kind === "!" ? `(?:(?!${alternates})[^/]+)` : `(?:${alternates})${extglobSuffix[kind]}`; | ||
| return { regexSource: source, nextIndex: parenEnd }; | ||
| }; | ||
| const splitAlternatesTopLevel = (pattern, start, end) => { | ||
| const parts = []; | ||
| let parenDepth = 0; | ||
| let bracketDepth = 0; | ||
| let pieceStart = start; | ||
| for (let index = start; index < end; ++index) { | ||
| const ch = pattern[index]; | ||
| if (ch === "\\") { | ||
| ++index; | ||
| continue; | ||
| } | ||
| if (ch === "[" && parenDepth >= 0) { | ||
| ++bracketDepth; | ||
| continue; | ||
| } | ||
| if (ch === "]" && bracketDepth > 0) { | ||
| --bracketDepth; | ||
| continue; | ||
| } | ||
| if (bracketDepth === 0) { | ||
| if (ch === "(") { | ||
| ++parenDepth; | ||
| continue; | ||
| } | ||
| if (ch === ")") { | ||
| if (parenDepth > 0) | ||
| --parenDepth; | ||
| continue; | ||
| } | ||
| } | ||
| if (ch === "|" && parenDepth === 0 && bracketDepth === 0) { | ||
| parts.push([pieceStart, index]); | ||
| pieceStart = index + 1; | ||
| } | ||
| } | ||
| parts.push([pieceStart, end]); | ||
| return parts; | ||
| }; | ||
| /** Compile a subpattern that lives within a single segment into regex source. */ | ||
| const compileSubpatternToRegexSource = (pattern, start, end) => { | ||
| let source = ""; | ||
| let index = start; | ||
| while (index < end) { | ||
| const ch = pattern[index]; | ||
| if (ch === "\\") { | ||
| const [escaped, nextIndex] = handleEscape(pattern, index, end); | ||
| source += escaped; | ||
| index = nextIndex; | ||
| continue; | ||
| } | ||
| if (ch === "[") { | ||
| const [s, e] = readBalancedRange(pattern, index, "[", "]"); | ||
| source += pattern.slice(s, e); | ||
| index = e; | ||
| continue; | ||
| } | ||
| if (isExtglobOperator(ch) && pattern[index + 1] === "(") { | ||
| const { regexSource, nextIndex } = parseExtglob(pattern, index); | ||
| source += regexSource; | ||
| index = nextIndex; | ||
| continue; | ||
| } | ||
| if (ch === "?") { | ||
| source += "[^/]"; | ||
| ++index; | ||
| continue; | ||
| } | ||
| if (ch === "*") { | ||
| source += "[^/]*"; | ||
| ++index; | ||
| continue; | ||
| } | ||
| // plain text run | ||
| const runStart = index; | ||
| while (index < end) { | ||
| const c = pattern[index]; | ||
| if (c === "\\" || c === "[" || c === "?" || c === "*" || isExtglobOperator(c)) { | ||
| break; | ||
| } | ||
| ++index; | ||
| } | ||
| if (runStart < index) { | ||
| source += escapeRegex(pattern.slice(runStart, index)); | ||
| } | ||
| } | ||
| return source; | ||
| }; | ||
| const escapeRegex = (s) => s.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"); | ||
| //# sourceMappingURL=pattern.js.map |
| {"version":3,"file":"pattern.js","sourceRoot":"","sources":["../src/pattern.ts"],"names":[],"mappings":"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"} |
+0
-2
| import { type Stats } from "node:fs"; | ||
| import * as path from "./path.js"; | ||
| export { readFile, stat as getFileStats, unlink as deleteFile, writeFile } from "node:fs/promises"; | ||
| /** Copies a file using the fastest method available. @deprecated */ | ||
| export declare const copy: (src: PathLike, dest: PathLike) => Promise<void>; | ||
| /** Copies a file using the fastest method available. */ | ||
@@ -7,0 +5,0 @@ export declare const copyFile: (src: PathLike, dest: PathLike) => Promise<void>; |
+0
-9
@@ -8,11 +8,2 @@ import { createHash } from "node:crypto"; | ||
| export { readFile, stat as getFileStats, unlink as deleteFile, writeFile } from "node:fs/promises"; | ||
| /** Copies a file using the fastest method available. @deprecated */ | ||
| export const copy = async (src, dest) => { | ||
| try { | ||
| return await fsCopyFile(src, dest, fsConstants.COPYFILE_FICLONE); | ||
| } | ||
| catch { | ||
| return await fsCopyFile(src, dest); | ||
| } | ||
| }; | ||
| /** Copies a file using the fastest method available. */ | ||
@@ -19,0 +10,0 @@ export const copyFile = async (src, dest) => { |
+1
-1
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"file.js","sourceRoot":"","sources":["../src/file.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"file.js","sourceRoot":"","sources":["../src/file.ts"],"names":[],"mappings":"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"} |
| import type { RollupOptions } from "rollup"; | ||
| export declare const assignInput: <T extends string[] | Record<string, string>>(input: T, id: string) => T; | ||
| /** Assigns an input to Rollup input options. */ | ||
| export declare const assignInput: <T extends InputOption>(input: T, id: string) => T; | ||
| /** Assigns an input to Rollup options. */ | ||
| export declare const assignOptionsInput: (options: RollupOptions, id: string) => InputOption; | ||
| /** Normalizes Rollup input options. */ | ||
| export declare const normalizeOptionsInput: (options: RollupOptions) => InputOption; | ||
| /** Returns the dist and root directories from Rollup output options. */ | ||
| export declare const getDirs: (options: RollupOptions) => { | ||
@@ -7,1 +13,3 @@ distDir: string | undefined; | ||
| }; | ||
| /** Normalized Rollup input option. */ | ||
| export type InputOption = Record<string, string> | string[]; |
+13
-1
| import * as array from "./array.js"; | ||
| /** Assigns an input to Rollup input options. */ | ||
| export const assignInput = (input, id) => { | ||
| if (Array.isArray(input)) { | ||
| input.push(id); | ||
| if (!input.includes(id)) { | ||
| input.push(id); | ||
| } | ||
| } | ||
@@ -11,2 +14,11 @@ else { | ||
| }; | ||
| /** Assigns an input to Rollup options. */ | ||
| export const assignOptionsInput = (options, id) => assignInput(normalizeOptionsInput(options), id); | ||
| /** Normalizes Rollup input options. */ | ||
| export const normalizeOptionsInput = (options) => { | ||
| options.input = options.input ?? []; | ||
| options.input = typeof options.input === "object" ? options.input : [options.input]; | ||
| return options.input; | ||
| }; | ||
| /** Returns the dist and root directories from Rollup output options. */ | ||
| export const getDirs = (options) => ({ | ||
@@ -13,0 +25,0 @@ distDir: array.from(options.output).find((output) => output.dir)?.dir, |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC,MAAM,CAAC,MAAM,WAAW,GAAG,CAA8C,KAAQ,EAAE,EAAU,EAAK,EAAE;IACnG,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACf,CAAC;SAAM,CAAC;QACP,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,CAAA;IACf,CAAC;IAED,OAAO,KAAK,CAAA;AACb,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,OAAsB,EAAE,EAAE,CAAC,CAAC;IACnD,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG;IACrE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,EAAE,mBAAmB;CACrG,CAAC,CAAA"} | ||
| {"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC,gDAAgD;AAChD,MAAM,CAAC,MAAM,WAAW,GAAG,CAAwB,KAAQ,EAAE,EAAU,EAAK,EAAE;IAC7E,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACf,CAAC;IACF,CAAC;SAAM,CAAC;QACP,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,CAAA;IACf,CAAC;IAED,OAAO,KAAK,CAAA;AACb,CAAC,CAAA;AAED,0CAA0C;AAC1C,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAAsB,EAAE,EAAU,EAAe,EAAE,CACrF,WAAW,CAAC,qBAAqB,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAA;AAEhD,uCAAuC;AACvC,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,OAAsB,EAAe,EAAE;IAC5E,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAA;IACnC,OAAO,CAAC,KAAK,GAAG,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAEnF,OAAO,OAAO,CAAC,KAAK,CAAA;AACrB,CAAC,CAAA;AAED,wEAAwE;AACxE,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,OAAsB,EAAE,EAAE,CAAC,CAAC;IACnD,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG;IACrE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,EAAE,mBAAmB;CACrG,CAAC,CAAA"} |
+9
-2
@@ -0,1 +1,3 @@ | ||
| import { sep as sepByOS } from "node:path"; | ||
| import { sep } from "node:path/posix"; | ||
| /** Returns the file path with a trailing slash. */ | ||
@@ -14,4 +16,9 @@ export declare const toDirPath: (path: PathLike, ...parts: PathLike[]) => string; | ||
| /** Returns the given path relative to the base path. */ | ||
| export declare const toRelativePath: (base: PathLike, path: PathLike, matchOS?: boolean) => string; | ||
| export declare const toPathWithoutBase: (path: PathLike, base: PathLike) => string; | ||
| export declare const toRelativePath: (path: PathLike, base: PathLike, opts?: RelativePathOptions) => string; | ||
| export declare const toNativePath: (path: PathLike, force?: boolean) => string; | ||
| export { sep, sepByOS }; | ||
| export type PathLike = string | URL; | ||
| export type RelativePathOptions = { | ||
| explicit?: boolean; | ||
| matchOS?: boolean; | ||
| }; |
+25
-21
| import { isAbsolute as isAbsoluteByOS, sep as sepByOS } from "node:path"; | ||
| import { resolve, sep } from "node:path/posix"; | ||
| import { pathToFileURL } from "node:url"; | ||
| import { fileURLToPath, pathToFileURL } from "node:url"; | ||
| /** Returns the file path with a trailing slash. */ | ||
| export const toDirPath = (path, ...parts) => toDirURL(path, ...parts).pathname; | ||
| export const toDirPath = (path, ...parts) => __toPath(toDirURL(path, ...parts)); | ||
| /** Returns a resolved URL of a directory from any path. */ | ||
| export const toDirURL = (path, ...parts) => __toDirURL(toURL(path, ...parts)); | ||
| export const toDirURL = (path, ...parts) => __toDirFromURL(toURL(path, ...parts)); | ||
| /** Returns the parent directory path of the given path. */ | ||
| export const toParentPath = (path) => toParentURL(path).pathname; | ||
| export const toParentPath = (path) => __toPath(toParentURL(path)); | ||
| /** Returns the parent directory URL of the given path. */ | ||
| export const toParentURL = (path) => toURL(path, "./"); | ||
| /** Returns a resolved, posix path from any path. */ | ||
| export const toPath = (path, ...parts) => toURL(path, ...parts).pathname; | ||
| export const toPath = (path, ...parts) => __toPath(toURL(path, ...parts)); | ||
| /** Returns a URL from any path. */ | ||
| export const toURL = (path, ...parts) => __withURLParts(__toURL(path), parts); | ||
| export const toURL = (path, ...parts) => __withPartsFromURL(__toURL(path), parts); | ||
| /** Returns the given path relative to the base path. */ | ||
| export const toRelativePath = (base, path, matchOS = false) => { | ||
| export const toRelativePath = (path, base, opts = null) => { | ||
| opts = { | ||
| explicit: true, | ||
| matchOS: false, | ||
| ...opts, | ||
| }; | ||
| base = __toURL(base); | ||
| path = __withURLParts(base, [path]); | ||
| const baseParts = base.pathname.slice(1).split("/"); | ||
| const pathParts = path.pathname.slice(1).split("/"); // <-- use path, not base | ||
| // Remove the trailing "" segment if base ends with a slash | ||
| if (base.pathname.endsWith("/")) { | ||
| baseParts.pop(); | ||
| } | ||
| path = __withPartsFromURL(base, [path]); | ||
| /** Base path segments (omitting the root segment and last segment). */ | ||
| const baseParts = base.pathname.split("/").slice(1, -1); | ||
| /** Path path segments (omitting the root segment). */ | ||
| const pathParts = path.pathname.split("/").slice(1); | ||
| let shared = 0; | ||
@@ -32,10 +35,11 @@ const max = Math.min(baseParts.length, pathParts.length); | ||
| const up = baseParts.length - shared; | ||
| const dir = matchOS ? sepByOS : sep; | ||
| const dir = opts.matchOS ? sepByOS : sep; | ||
| const tail = pathParts.slice(shared).join(dir); | ||
| return (up ? `..${dir}`.repeat(up) : `.${dir}`) + tail; | ||
| return (up ? `..${dir}`.repeat(up) : opts.explicit ? `.${dir}` : "") + tail; | ||
| }; | ||
| export const toPathWithoutBase = (path, base) => ((base = __toDirURL(__toURL(base))), | ||
| (path = __withURLParts(base, [path]).pathname), | ||
| path.startsWith(base.pathname) ? path.slice(base.pathname.length) : path); | ||
| export const toNativePath = (path, force = true) => fileURLToPath(__toURL(path), { windows: force ? undefined : false }); | ||
| // #region Types | ||
| export { sep, sepByOS }; | ||
| // #region Internals | ||
| const __toPath = (url) => decodeURIComponent(url.pathname); | ||
| const __toURL = (path) => path instanceof URL | ||
@@ -48,4 +52,4 @@ ? path | ||
| : pathToFileURL(resolve(path)); | ||
| const __toDirURL = (url) => url.pathname.endsWith("/") ? url : new URL(`${url.pathname}/${url.search}${url.hash}`, url); | ||
| const __withURLParts = (url, parts) => { | ||
| const __toDirFromURL = (url) => url.pathname.endsWith("/") ? url : new URL(`${url.pathname}/${url.search}${url.hash}`, url); | ||
| const __withPartsFromURL = (url, parts) => { | ||
| for (const part of parts) { | ||
@@ -52,0 +56,0 @@ url = new URL(part, url); |
+1
-1
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"path.js","sourceRoot":"","sources":["../src/path.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"path.js","sourceRoot":"","sources":["../src/path.ts"],"names":[],"mappings":"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"} |
| import type * as Rollup from "rollup"; | ||
| export declare class VirtualAsset { | ||
| #private; | ||
| constructor(id: string, hooks?: Partial<VirtualAsset.Hooks>); | ||
| constructor(id: string); | ||
| get id(): string; | ||
| set id(id: string); | ||
| get virtualId(): string; | ||
| buildStart(context: Rollup.PluginContext, options: Rollup.NormalizedInputOptions): void; | ||
| resolveId(context: Rollup.PluginContext, id: string, importer: string | undefined, options: VirtualAsset.ResolveIdOptions): Rollup.ResolveIdResult; | ||
| load(context: Rollup.PluginContext, id: string): Rollup.LoadResult; | ||
| generateBundle(context: Rollup.PluginContext, options: Rollup.NormalizedOutputOptions, bundle: Rollup.OutputBundle): void; | ||
| options(options: Rollup.RollupOptions): void; | ||
| generateBundle(options: Rollup.NormalizedOutputOptions, bundle: Rollup.OutputBundle): void; | ||
| } | ||
| export declare namespace VirtualAsset { | ||
| interface Hooks { | ||
| buildStart(this: VirtualAsset, context: Rollup.PluginContext, options: Rollup.NormalizedInputOptions): void; | ||
| resolveId(this: VirtualAsset, context: Rollup.PluginContext, id: string, importer: string | undefined, options: ResolveIdOptions): Rollup.ResolveIdResult; | ||
| load(this: VirtualAsset, context: Rollup.PluginContext, id: string): Rollup.LoadResult; | ||
| generateBundle(this: VirtualAsset, context: Rollup.PluginContext, options: Rollup.NormalizedOutputOptions, bundle: Rollup.OutputBundle): void; | ||
| } | ||
| interface ResolveIdOptions { | ||
| attributes: Record<string, string>; | ||
| custom?: Rollup.CustomPluginOptions; | ||
| isEntry: boolean; | ||
| } | ||
| } |
@@ -1,8 +0,6 @@ | ||
| import { assignInput } from "./options.js"; | ||
| import { assignOptionsInput } from "./options.js"; | ||
| export class VirtualAsset { | ||
| #id = ""; | ||
| #hooks = Object.create(null); | ||
| constructor(id, hooks) { | ||
| constructor(id) { | ||
| this.id = id; | ||
| Object.assign(this.#hooks, hooks); | ||
| } | ||
@@ -19,24 +17,6 @@ get id() { | ||
| } | ||
| buildStart(context, options) { | ||
| if (typeof this.#hooks.buildStart === "function") { | ||
| this.#hooks.buildStart.call(this, context, options); | ||
| } | ||
| assignInput(options.input, this.virtualId); | ||
| options(options) { | ||
| assignOptionsInput(options, this.virtualId); | ||
| } | ||
| resolveId(context, id, importer, options) { | ||
| if (id === this.virtualId) { | ||
| return this.#hooks.resolveId?.call(this, context, id, importer, options) || { id }; | ||
| } | ||
| } | ||
| load(context, id) { | ||
| if (id === this.virtualId) { | ||
| return (this.#hooks.load?.call(this, context, id) || { | ||
| code: "export let _", | ||
| }); | ||
| } | ||
| } | ||
| generateBundle(context, options, bundle) { | ||
| if (typeof this.#hooks.generateBundle === "function") { | ||
| this.#hooks.generateBundle.call(this, context, options, bundle); | ||
| } | ||
| generateBundle(options, bundle) { | ||
| // with sanitization | ||
@@ -43,0 +23,0 @@ let bundleId = options.sanitizeFileName(this.virtualId); |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"virtual-asset.js","sourceRoot":"","sources":["../src/virtual-asset.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAE1C,MAAM,OAAO,YAAY;IACxB,GAAG,GAAG,EAAE,CAAA;IACR,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAgC,CAAA;IAE3D,YAAY,EAAU,EAAE,KAAmC;QAC1D,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QAEZ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IAClC,CAAC;IAED,IAAI,EAAE;QACL,OAAO,IAAI,CAAC,GAAG,CAAA;IAChB,CAAC;IAED,IAAI,EAAE,CAAC,EAAU;QAChB,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,eAAe,CAAA;QAEhE,IAAI,CAAC,GAAG,GAAG,EAAE,CAAA;IACd,CAAC;IAED,IAAI,SAAS;QACZ,OAAO,KAAK,IAAI,CAAC,EAAE,GAAG,CAAA;IACvB,CAAC;IAED,UAAU,CAAC,OAA6B,EAAE,OAAsC;QAC/E,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;YAClD,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;QACpD,CAAC;QAED,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;IAC3C,CAAC;IAED,SAAS,CACR,OAA6B,EAC7B,EAAU,EACV,QAA4B,EAC5B,OAAsC;QAEtC,IAAI,EAAE,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,CAAA;QACnF,CAAC;IACF,CAAC;IAED,IAAI,CAAC,OAA6B,EAAE,EAAU;QAC7C,IAAI,EAAE,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;YAC3B,OAAO,CACN,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI;gBAC5C,IAAI,EAAE,cAAc;aACpB,CACD,CAAA;QACF,CAAC;IACF,CAAC;IAED,cAAc,CACb,OAA6B,EAC7B,OAAuC,EACvC,MAA2B;QAE3B,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,KAAK,UAAU,EAAE,CAAC;YACtD,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAChE,CAAC;QAED,oBAAoB;QACpB,IAAI,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAEvD,2BAA2B;QAC3B,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QAEtC,uBAAuB;QACvB,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;QAE5C,sBAAsB;QACtB,QAAQ,GAAG,GAAG,OAAO,CAAC,cAAc,IAAI,QAAQ,KAAK,CAAA;QAErD,8BAA8B;QAC9B,KAAK,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,QAAQ,MAAM,CAAC,EAAE,CAAC;YAChD,OAAO,MAAM,CAAC,EAAE,CAAC,CAAA;QAClB,CAAC;IACF,CAAC;CACD"} | ||
| {"version":3,"file":"virtual-asset.js","sourceRoot":"","sources":["../src/virtual-asset.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAEjD,MAAM,OAAO,YAAY;IACxB,GAAG,GAAG,EAAE,CAAA;IAER,YAAY,EAAU;QACrB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;IACb,CAAC;IAED,IAAI,EAAE;QACL,OAAO,IAAI,CAAC,GAAG,CAAA;IAChB,CAAC;IAED,IAAI,EAAE,CAAC,EAAU;QAChB,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,eAAe,CAAA;QAEhE,IAAI,CAAC,GAAG,GAAG,EAAE,CAAA;IACd,CAAC;IAED,IAAI,SAAS;QACZ,OAAO,KAAK,IAAI,CAAC,EAAE,GAAG,CAAA;IACvB,CAAC;IAED,OAAO,CAAC,OAA6B;QACpC,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;IAC5C,CAAC;IAED,cAAc,CAAC,OAAuC,EAAE,MAA2B;QAClF,oBAAoB;QACpB,IAAI,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAEvD,2BAA2B;QAC3B,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QAEtC,uBAAuB;QACvB,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;QAE5C,sBAAsB;QACtB,QAAQ,GAAG,GAAG,OAAO,CAAC,cAAc,IAAI,QAAQ,KAAK,CAAA;QAErD,8BAA8B;QAC9B,KAAK,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,QAAQ,MAAM,CAAC,EAAE,CAAC;YAChD,OAAO,MAAM,CAAC,EAAE,CAAC,CAAA;QAClB,CAAC;IACF,CAAC;CACD"} |
+2
-1
| { | ||
| "name": "@jsxtools/rollup-plugin-utils", | ||
| "description": "A collection of utilities for authoring Rollup plugins.", | ||
| "version": "0.2.1", | ||
| "version": "0.3.0", | ||
| "type": "module", | ||
@@ -12,2 +12,3 @@ "exports": { | ||
| "./path": "./dist/path.js", | ||
| "./pattern": "./dist/pattern.js", | ||
| "./string": "./dist/string.js", | ||
@@ -14,0 +15,0 @@ "./virtual-asset": "./dist/virtual-asset.js" |
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
58143
68.17%26
13.04%654
121.69%1
Infinity%