diff --git a/.gitignore b/.gitignore index ddf88d34f..3c5267c1a 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ packages/shiki/src/assets/themes packages/shiki/src/assets/*.json cache .eslintcache +report-engine-js-compat.json diff --git a/bench/engines.bench.ts b/bench/engines.bench.ts new file mode 100644 index 000000000..e71b62937 --- /dev/null +++ b/bench/engines.bench.ts @@ -0,0 +1,39 @@ +import fs from 'node:fs/promises' +import { bench, describe } from 'vitest' +import type { BundledLanguage } from 'shiki' +import { createHighlighter, createJavaScriptRegexEngine, createWasmOnigEngine } from 'shiki' +import type { ReportItem } from '../scripts/report-engine-js-compat' + +describe('engines', async () => { + const js = createJavaScriptRegexEngine() + const wasm = await createWasmOnigEngine(() => import('shiki/wasm')) + + // Run `npx jiti scripts/report-engine-js-compat.ts` to generate the report first + const report = await fs.readFile('../scripts/report-engine-js-compat.json', 'utf-8').then(JSON.parse) as ReportItem[] + const langs = report.filter(i => i.highlightMatch === true).map(i => i.lang) as BundledLanguage[] + const samples = await Promise.all(langs.map(lang => fs.readFile(`../tm-grammars-themes/samples/${lang}.sample`, 'utf-8'))) + + const shikiJs = await createHighlighter({ + langs, + themes: ['vitesse-dark'], + engine: js, + }) + + const shikiWasm = await createHighlighter({ + langs, + themes: ['vitesse-dark'], + engine: wasm, + }) + + bench('js', () => { + for (const lang of langs) { + shikiJs.codeToTokensBase(samples[langs.indexOf(lang)], { lang, theme: 'vitesse-dark' }) + } + }, { warmupIterations: 10, iterations: 30 }) + + bench('wasm', () => { + for (const lang of langs) { + shikiWasm.codeToTokensBase(samples[langs.indexOf(lang)], { lang, theme: 'vitesse-dark' }) + } + }, { warmupIterations: 10, iterations: 30 }) +}) diff --git a/package.json b/package.json index 0c3f9cb41..4bb6395c7 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "type": "module", "version": "1.14.1", "private": true, - "packageManager": "pnpm@9.8.0", + "packageManager": "pnpm@9.9.0", "scripts": { "lint": "eslint . --cache", "release": "bumpp && pnpm -r publish", @@ -46,6 +46,7 @@ "mdast-util-gfm": "catalog:", "mdast-util-to-hast": "catalog:", "ofetch": "catalog:", + "picocolors": "catalog:", "pnpm": "catalog:", "prettier": "catalog:", "rimraf": "catalog:", diff --git a/packages/core/package.json b/packages/core/package.json index d1eed9327..0d003f42b 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -70,6 +70,7 @@ }, "devDependencies": { "hast-util-to-html": "catalog:", + "oniguruma-to-js": "catalog:", "vscode-oniguruma": "catalog:" } } diff --git a/packages/core/src/engines/javascript.ts b/packages/core/src/engines/javascript.ts new file mode 100644 index 000000000..d9a0208ae --- /dev/null +++ b/packages/core/src/engines/javascript.ts @@ -0,0 +1,133 @@ +import { onigurumaToRegexp } from 'oniguruma-to-js' +import type { PatternScanner, RegexEngine, RegexEngineString } from '../textmate' +import type { JavaScriptRegexEngineOptions } from '../types/engines' + +const MAX = 4294967295 + +export class JavaScriptScanner implements PatternScanner { + regexps: (RegExp | null)[] + + constructor( + public patterns: string[], + public cache: Map, + public forgiving: boolean, + ) { + this.regexps = patterns.map((p) => { + const cached = cache?.get(p) + if (cached) { + if (cached instanceof RegExp) { + return cached + } + if (forgiving) + return null + throw cached + } + try { + const regex = onigurumaToRegexp( + p + // YAML specific handling; TODO: move to tm-grammars + .replaceAll('[^\\s[-?:,\\[\\]{}#&*!|>\'"%@`]]', '[^\\s\\-?:,\\[\\]{}#&*!|>\'"%@`]'), + { flags: 'dg' }, + ) + cache?.set(p, regex) + return regex + } + catch (e) { + cache?.set(p, e as Error) + if (forgiving) + return null + // console.error({ ...e }) + throw e + } + }) + } + + findNextMatchSync(string: string | RegexEngineString, startPosition: number) { + const str = typeof string === 'string' + ? string + : string.content + const pending: [index: number, match: RegExpExecArray][] = [] + + function toResult(index: number, match: RegExpExecArray) { + return { + index, + captureIndices: match.indices!.map((indice) => { + if (indice == null) { + return { + end: MAX, + start: MAX, + length: 0, + } + } + return { + start: indice[0], + length: indice[1] - indice[0], + end: indice[1], + } + }), + } + } + + for (let i = 0; i < this.regexps.length; i++) { + const regexp = this.regexps[i] + if (!regexp) + continue + try { + regexp.lastIndex = startPosition + const match = regexp.exec(str) + if (!match) + continue + // If the match is at the start position, return it immediately + if (match.index === startPosition) { + return toResult(i, match) + } + // Otherwise, store it for later + pending.push([i, match]) + } + catch (e) { + if (this.forgiving) + continue + throw e + } + } + + // Find the closest match to the start position + if (pending.length) { + const minIndex = Math.min(...pending.map(m => m[1].index)) + for (const [i, match] of pending) { + if (match.index === minIndex) { + return toResult(i, match) + } + } + } + + return null + } +} + +/** + * Use the modern JavaScript RegExp engine to implement the OnigScanner. + * + * As Oniguruma regex is more powerful than JavaScript regex, some patterns may not be supported. + * Errors will be thrown when parsing TextMate grammars with unsupported patterns. + * Set `forgiving` to `true` to ignore these errors and skip the unsupported patterns. + * + * @experimental + */ +export function createJavaScriptRegexEngine(options: JavaScriptRegexEngineOptions = {}): RegexEngine { + const { + forgiving = false, + cache = new Map(), + } = options + + return { + createScanner(patterns: string[]) { + return new JavaScriptScanner(patterns, cache, forgiving) + }, + createString(s: string) { + return { + content: s, + } + }, + } +} diff --git a/packages/core/src/oniguruma/LICENSE b/packages/core/src/engines/oniguruma/LICENSE similarity index 100% rename from packages/core/src/oniguruma/LICENSE rename to packages/core/src/engines/oniguruma/LICENSE diff --git a/packages/core/src/oniguruma/index.ts b/packages/core/src/engines/oniguruma/index.ts similarity index 87% rename from packages/core/src/oniguruma/index.ts rename to packages/core/src/engines/oniguruma/index.ts index 029210e73..5b9b7f28f 100644 --- a/packages/core/src/oniguruma/index.ts +++ b/packages/core/src/engines/oniguruma/index.ts @@ -2,10 +2,15 @@ * Copyright (C) Microsoft Corporation. All rights reserved. *-------------------------------------------------------- */ -import { ShikiError } from '../error' -import type { IOnigBinding, IOnigCaptureIndex, IOnigMatch, OnigScanner as IOnigScanner, OnigString as IOnigString, Pointer } from './types' +import { ShikiError } from '../../error' +import type { LoadWasmOptions, WebAssemblyInstance, WebAssemblyInstantiator } from '../../types' +import type { IOnigCaptureIndex, IOnigMatch, OnigScanner as IOnigScanner, OnigString as IOnigString } from '../../../vendor/vscode-textmate/src/main' import createOnigasm from './onig' +export type Instantiator = (importObject: Record>) => Promise + +export type Pointer = number + export const enum FindOption { None = 0, /** @@ -20,14 +25,25 @@ export const enum FindOption { * equivalent of ONIG_OPTION_NOT_BEGIN_POSITION: (start) isn't considered as start position of search (* fail \G) */ NotBeginPosition = 4, - /** - * used for debugging purposes. - */ - DebugCall = 8, +} + +export interface IOnigBinding { + HEAPU8: Uint8Array + HEAPU32: Uint32Array + + UTF8ToString: (ptr: Pointer) => string + + omalloc: (count: number) => Pointer + ofree: (ptr: Pointer) => void + getLastOnigError: () => Pointer + createOnigScanner: (strPtrsPtr: Pointer, strLenPtr: Pointer, count: number) => Pointer + freeOnigScanner: (ptr: Pointer) => void + findNextOnigScannerMatch: (scanner: Pointer, strCacheId: number, strData: Pointer, strLength: number, position: number, options: number) => number + // findNextOnigScannerMatchDbg: (scanner: Pointer, strCacheId: number, strData: Pointer, strLength: number, position: number, options: number) => number } let onigBinding: IOnigBinding | null = null -let defaultDebugCall = false +// let defaultDebugCall = false function throwLastOnigError(onigBinding: IOnigBinding): void { throw new ShikiError(onigBinding.UTF8ToString(onigBinding.getLastOnigError())) @@ -294,34 +310,33 @@ export class OnigScanner implements IOnigScanner { public findNextMatchSync(string: string | OnigString, startPosition: number, debugCall: boolean): IOnigMatch | null public findNextMatchSync(string: string | OnigString, startPosition: number): IOnigMatch | null public findNextMatchSync(string: string | OnigString, startPosition: number, arg?: number | boolean): IOnigMatch | null { - let debugCall = defaultDebugCall + // let debugCall = defaultDebugCall let options = FindOption.None if (typeof arg === 'number') { - if (arg & FindOption.DebugCall) - debugCall = true - + // if (arg & FindOption.DebugCall) + // debugCall = true options = arg } else if (typeof arg === 'boolean') { - debugCall = arg + // debugCall = arg } if (typeof string === 'string') { string = new OnigString(string) - const result = this._findNextMatchSync(string, startPosition, debugCall, options) + const result = this._findNextMatchSync(string, startPosition, false, options) string.dispose() return result } - return this._findNextMatchSync(string, startPosition, debugCall, options) + return this._findNextMatchSync(string, startPosition, false, options) } private _findNextMatchSync(string: OnigString, startPosition: number, debugCall: boolean, options: number): IOnigMatch | null { const onigBinding = this._onigBinding - let resultPtr: Pointer - if (debugCall) - resultPtr = onigBinding.findNextOnigScannerMatchDbg(this._ptr, string.id, string.ptr, string.utf8Length, string.convertUtf16OffsetToUtf8(startPosition), options) + // let resultPtr: Pointer + // if (debugCall) + // resultPtr = onigBinding.findNextOnigScannerMatchDbg(this._ptr, string.id, string.ptr, string.utf8Length, string.convertUtf16OffsetToUtf8(startPosition), options) - else - resultPtr = onigBinding.findNextOnigScannerMatch(this._ptr, string.id, string.ptr, string.utf8Length, string.convertUtf16OffsetToUtf8(startPosition), options) + // else + const resultPtr = onigBinding.findNextOnigScannerMatch(this._ptr, string.id, string.ptr, string.utf8Length, string.convertUtf16OffsetToUtf8(startPosition), options) if (resultPtr === 0) { // no match @@ -348,17 +363,6 @@ export class OnigScanner implements IOnigScanner { } } -export interface WebAssemblyInstantiator { - (importObject: Record> | undefined): Promise -} - -export type WebAssemblyInstance = WebAssembly.WebAssemblyInstantiatedSource | WebAssembly.Instance | WebAssembly.Instance['exports'] - -export type OnigurumaLoadOptions = - | { instantiator: WebAssemblyInstantiator } - | { default: WebAssemblyInstantiator } - | { data: ArrayBufferView | ArrayBuffer | Response } - function isInstantiatorOptionsObject(dataOrOptions: any): dataOrOptions is { instantiator: WebAssemblyInstantiator } { return (typeof dataOrOptions.instantiator === 'function') } @@ -385,15 +389,6 @@ function isArrayBuffer(data: any): data is ArrayBuffer | ArrayBufferView { let initPromise: Promise -type Awaitable = T | Promise - -export type LoadWasmOptionsPlain = - | OnigurumaLoadOptions - | WebAssemblyInstantiator - | ArrayBufferView | ArrayBuffer | Response - -export type LoadWasmOptions = Awaitable | (() => Awaitable) - export function loadWasm(options: LoadWasmOptions): Promise { if (initPromise) return initPromise @@ -461,14 +456,14 @@ function _makeResponseNonStreamingLoader(data: Response): WebAssemblyInstantiato } } -export function createOnigString(str: string) { - return new OnigString(str) -} +// export function createOnigString(str: string) { +// return new OnigString(str) +// } -export function createOnigScanner(patterns: string[]) { - return new OnigScanner(patterns) -} +// export function createOnigScanner(patterns: string[]) { +// return new OnigScanner(patterns) +// } -export function setDefaultDebugCall(_defaultDebugCall: boolean): void { - defaultDebugCall = _defaultDebugCall -} +// export function setDefaultDebugCall(_defaultDebugCall: boolean): void { +// defaultDebugCall = _defaultDebugCall +// } diff --git a/packages/core/src/oniguruma/onig.ts b/packages/core/src/engines/oniguruma/onig.ts similarity index 91% rename from packages/core/src/oniguruma/onig.ts rename to packages/core/src/engines/oniguruma/onig.ts index 405706555..aa37e6b90 100644 --- a/packages/core/src/oniguruma/onig.ts +++ b/packages/core/src/engines/oniguruma/onig.ts @@ -1,4 +1,14 @@ -import type { IOnigBinding, Instantiator } from './types' +import type { IOnigBinding, Instantiator } from '.' + +function getHeapMax() { + return 2147483648 +} + +function _emscripten_get_now() { + return typeof performance !== 'undefined' ? performance.now() : Date.now() +} + +const alignUp = (x: number, multiple: number) => x + ((multiple - (x % multiple)) % multiple) export default async function main(init: Instantiator): Promise { let wasmMemory: any @@ -12,15 +22,10 @@ export default async function main(init: Instantiator): Promise { binding.HEAPU32 = new Uint32Array(buf) } - function _emscripten_get_now() { - return typeof performance !== 'undefined' ? performance.now() : Date.now() - } function _emscripten_memcpy_big(dest: number, src: number, num: number) { binding.HEAPU8.copyWithin(dest, src, src + num) } - function getHeapMax() { - return 2147483648 - } + function emscripten_realloc_buffer(size: number) { try { wasmMemory.grow((size - buffer.byteLength + 65535) >>> 16) @@ -36,7 +41,6 @@ export default async function main(init: Instantiator): Promise { if (requestedSize > maxHeapSize) return false - const alignUp = (x: number, multiple: number) => x + ((multiple - (x % multiple)) % multiple) for (let cutDown = 1; cutDown <= 4; cutDown *= 2) { let overGrownHeapSize = oldSize * (1 + 0.2 / cutDown) overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296) diff --git a/packages/core/src/engines/wasm.ts b/packages/core/src/engines/wasm.ts new file mode 100644 index 000000000..a057e6938 --- /dev/null +++ b/packages/core/src/engines/wasm.ts @@ -0,0 +1,19 @@ +import type { RegexEngine } from '../textmate' +import type { LoadWasmOptions } from '../types' +import { OnigScanner, OnigString, loadWasm } from './oniguruma' + +export { loadWasm } + +export async function createWasmOnigEngine(options?: LoadWasmOptions | null): Promise { + if (options) + await loadWasm(options) + + return { + createScanner(patterns) { + return new OnigScanner(patterns) + }, + createString(s) { + return new OnigString(s) + }, + } +} diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index b776465eb..389aabb16 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -3,7 +3,9 @@ export * from './bundle-factory' export * from './utils' export * from './types' -export { loadWasm } from './oniguruma' +export { createWasmOnigEngine, loadWasm } from './engines/wasm' +export { createJavaScriptRegexEngine } from './engines/javascript' + export { createShikiInternal, getShikiInternal, setDefaultWasmLoader } from './internal' export { codeToTokensBase, tokenizeWithTheme } from './code-to-tokens-base' export { codeToTokens } from './code-to-tokens' diff --git a/packages/core/src/internal.ts b/packages/core/src/internal.ts index 6bcc3f9ab..fb450b650 100644 --- a/packages/core/src/internal.ts +++ b/packages/core/src/internal.ts @@ -1,11 +1,10 @@ -import type { HighlighterCoreOptions, LanguageInput, LanguageRegistration, MaybeGetter, ShikiInternal, SpecialLanguage, SpecialTheme, ThemeInput, ThemeRegistrationAny, ThemeRegistrationResolved } from './types' -import type { LoadWasmOptions } from './oniguruma' -import { createOnigScanner, createOnigString, loadWasm } from './oniguruma' +import type { HighlighterCoreOptions, LanguageInput, LanguageRegistration, LoadWasmOptions, MaybeGetter, ShikiInternal, SpecialLanguage, SpecialTheme, ThemeInput, ThemeRegistrationAny, ThemeRegistrationResolved } from './types' import { Registry } from './registry' import { Resolver } from './resolver' import { normalizeTheme } from './normalize' import { isSpecialLang, isSpecialTheme } from './utils' import { ShikiError } from './error' +import { createWasmOnigEngine } from './engines/wasm' let _defaultWasmLoader: LoadWasmOptions | undefined /** @@ -40,26 +39,16 @@ export async function createShikiInternal(options: HighlighterCoreOptions = {}): )).flat())) } - const wasmLoader = options.loadWasm || _defaultWasmLoader - const [ themes, langs, ] = await Promise.all([ Promise.all((options.themes || []).map(normalizeGetter)).then(r => r.map(normalizeTheme)), resolveLangs(options.langs || []), - wasmLoader ? loadWasm(wasmLoader) : undefined, ] as const) const resolver = new Resolver( - Promise.resolve({ - createOnigScanner(patterns) { - return createOnigScanner(patterns) - }, - createOnigString(s) { - return createOnigString(s) - }, - }), + Promise.resolve(options.engine || createWasmOnigEngine(options.loadWasm || _defaultWasmLoader)), langs, ) diff --git a/packages/core/src/oniguruma/types.ts b/packages/core/src/oniguruma/types.ts deleted file mode 100644 index 7801fb21a..000000000 --- a/packages/core/src/oniguruma/types.ts +++ /dev/null @@ -1,61 +0,0 @@ -/* --------------------------------------------------------- - * Copyright (C) Microsoft Corporation. All rights reserved. - *-------------------------------------------------------- */ - -export type Instantiator = (importObject: Record>) => Promise - -export type Pointer = number - -export const enum FindOption { - None = 0, - /** - * equivalent of ONIG_OPTION_NOT_BEGIN_STRING: (str) isn't considered as begin of string (* fail \A) - */ - NotBeginString = 1, - /** - * equivalent of ONIG_OPTION_NOT_END_STRING: (end) isn't considered as end of string (* fail \z, \Z) - */ - NotEndString = 2, - /** - * equivalent of ONIG_OPTION_NOT_BEGIN_POSITION: (start) isn't considered as start position of search (* fail \G) - */ - NotBeginPosition = 4, -} - -export interface IOnigBinding { - HEAPU8: Uint8Array - HEAPU32: Uint32Array - - UTF8ToString: (ptr: Pointer) => string - - omalloc: (count: number) => Pointer - ofree: (ptr: Pointer) => void - getLastOnigError: () => Pointer - createOnigScanner: (strPtrsPtr: Pointer, strLenPtr: Pointer, count: number) => Pointer - freeOnigScanner: (ptr: Pointer) => void - findNextOnigScannerMatch: (scanner: Pointer, strCacheId: number, strData: Pointer, strLength: number, position: number, options: number) => number - findNextOnigScannerMatchDbg: (scanner: Pointer, strCacheId: number, strData: Pointer, strLength: number, position: number, options: number) => number -} - -export interface IOnigCaptureIndex { - start: number - end: number - length: number -} - -export interface IOnigMatch { - index: number - captureIndices: IOnigCaptureIndex[] -} - -export interface OnigScanner { - // We need the bivariant type here - // eslint-disable-next-line ts/method-signature-style - findNextMatchSync(string: string | OnigString, startPosition: number): IOnigMatch | null - readonly dispose?: () => void -} - -export interface OnigString { - readonly content: string - readonly dispose?: () => void -} diff --git a/packages/core/src/resolver.ts b/packages/core/src/resolver.ts index cd707760c..0a6d32591 100644 --- a/packages/core/src/resolver.ts +++ b/packages/core/src/resolver.ts @@ -1,4 +1,5 @@ -import type { IOnigLib, RegistryOptions } from './textmate' +import type { IOnigLib } from '../vendor/vscode-textmate/src/main' +import type { RegexEngine, RegistryOptions } from './textmate' import type { LanguageRegistration } from './types' export class Resolver implements RegistryOptions { @@ -8,8 +9,12 @@ export class Resolver implements RegistryOptions { private readonly _onigLibPromise: Promise - constructor(onigLibPromise: Promise, langs: LanguageRegistration[]) { + constructor(onigLibPromise: Promise, langs: LanguageRegistration[]) { this._onigLibPromise = onigLibPromise + .then(engine => ({ + createOnigScanner: patterns => engine.createScanner(patterns), + createOnigString: s => engine.createString(s), + })) langs.forEach(i => this.addLanguage(i)) } diff --git a/packages/core/src/textmate.ts b/packages/core/src/textmate.ts index a031890fb..940c21511 100644 --- a/packages/core/src/textmate.ts +++ b/packages/core/src/textmate.ts @@ -1,4 +1,6 @@ // We re-bundled vscode-textmate from source to have ESM support. +import type { OnigScanner, OnigString } from '../vendor/vscode-textmate/src/main' + // This file re-exports some runtime values we need. export { Registry, INITIAL, StateStack } from '../vendor/vscode-textmate/src/main' export { Theme } from '../vendor/vscode-textmate/src/theme' @@ -7,8 +9,19 @@ export type { IRawGrammar, IGrammar, IGrammarConfiguration, - IOnigLib, RegistryOptions, } from '../vendor/vscode-textmate/src/main' export type { IRawThemeSetting } from '../vendor/vscode-textmate/src/theme' export * from './stack-element-metadata' + +export interface PatternScanner extends OnigScanner {} + +export interface RegexEngineString extends OnigString {} + +/** + * Engine for RegExp matching and scanning. + */ +export interface RegexEngine { + createScanner: (patterns: string[]) => PatternScanner + createString: (s: string) => RegexEngineString +} diff --git a/packages/core/src/transformer-decorations.ts b/packages/core/src/transformer-decorations.ts index 2f6ade007..7d701b066 100644 --- a/packages/core/src/transformer-decorations.ts +++ b/packages/core/src/transformer-decorations.ts @@ -62,29 +62,6 @@ export function transformerDecorations(): ShikiTransformer { return map.get(shiki.meta)! } - function verifyIntersections(items: ResolvedDecorationItem[]) { - for (let i = 0; i < items.length; i++) { - const foo = items[i] - if (foo.start.offset > foo.end.offset) - throw new ShikiError(`Invalid decoration range: ${JSON.stringify(foo.start)} - ${JSON.stringify(foo.end)}`) - - for (let j = i + 1; j < items.length; j++) { - const bar = items[j] - const isFooHasBarStart = foo.start.offset < bar.start.offset && bar.start.offset < foo.end.offset - const isFooHasBarEnd = foo.start.offset < bar.end.offset && bar.end.offset < foo.end.offset - const isBarHasFooStart = bar.start.offset < foo.start.offset && foo.start.offset < bar.end.offset - const isBarHasFooEnd = bar.start.offset < foo.end.offset && foo.end.offset < bar.end.offset - if (isFooHasBarStart || isFooHasBarEnd || isBarHasFooStart || isBarHasFooEnd) { - if (isFooHasBarEnd && isFooHasBarEnd) - continue // nested - if (isBarHasFooStart && isBarHasFooEnd) - continue // nested - throw new ShikiError(`Decorations ${JSON.stringify(foo.start)} and ${JSON.stringify(bar.start)} intersect.`) - } - } - } - } - return { name: 'shiki:decorations', tokens(tokens) { @@ -111,14 +88,6 @@ export function transformerDecorations(): ShikiTransformer { let startIndex = -1 let endIndex = -1 - function stringify(el: ElementContent): string { - if (el.type === 'text') - return el.value - if (el.type === 'element') - return el.children.map(stringify).join('') - return '' - } - if (start === 0) startIndex = 0 if (end === 0) @@ -206,3 +175,34 @@ export function transformerDecorations(): ShikiTransformer { }, } } + +function verifyIntersections(items: ResolvedDecorationItem[]) { + for (let i = 0; i < items.length; i++) { + const foo = items[i] + if (foo.start.offset > foo.end.offset) + throw new ShikiError(`Invalid decoration range: ${JSON.stringify(foo.start)} - ${JSON.stringify(foo.end)}`) + + for (let j = i + 1; j < items.length; j++) { + const bar = items[j] + const isFooHasBarStart = foo.start.offset < bar.start.offset && bar.start.offset < foo.end.offset + const isFooHasBarEnd = foo.start.offset < bar.end.offset && bar.end.offset < foo.end.offset + const isBarHasFooStart = bar.start.offset < foo.start.offset && foo.start.offset < bar.end.offset + const isBarHasFooEnd = bar.start.offset < foo.end.offset && foo.end.offset < bar.end.offset + if (isFooHasBarStart || isFooHasBarEnd || isBarHasFooStart || isBarHasFooEnd) { + if (isFooHasBarEnd && isFooHasBarEnd) + continue // nested + if (isBarHasFooStart && isBarHasFooEnd) + continue // nested + throw new ShikiError(`Decorations ${JSON.stringify(foo.start)} and ${JSON.stringify(bar.start)} intersect.`) + } + } + } +} + +function stringify(el: ElementContent): string { + if (el.type === 'text') + return el.value + if (el.type === 'element') + return el.children.map(stringify).join('') + return '' +} diff --git a/packages/core/src/types/engines.ts b/packages/core/src/types/engines.ts new file mode 100644 index 000000000..5efa2a578 --- /dev/null +++ b/packages/core/src/types/engines.ts @@ -0,0 +1,31 @@ +type Awaitable = T | Promise + +export interface WebAssemblyInstantiator { + (importObject: Record> | undefined): Promise +} + +export type WebAssemblyInstance = WebAssembly.WebAssemblyInstantiatedSource | WebAssembly.Instance | WebAssembly.Instance['exports'] + +export type OnigurumaLoadOptions = + | { instantiator: WebAssemblyInstantiator } + | { default: WebAssemblyInstantiator } + | { data: ArrayBufferView | ArrayBuffer | Response } + +export type LoadWasmOptionsPlain = + | OnigurumaLoadOptions + | WebAssemblyInstantiator + | ArrayBufferView | ArrayBuffer | Response + +export type LoadWasmOptions = Awaitable | (() => Awaitable) + +export interface JavaScriptRegexEngineOptions { + /** + * Whether to allow invalid regex patterns. + */ + forgiving?: boolean + + /** + * Cache for regex patterns. + */ + cache?: Map +} diff --git a/packages/core/src/types/index.ts b/packages/core/src/types/index.ts index f089d8d20..41939e02c 100644 --- a/packages/core/src/types/index.ts +++ b/packages/core/src/types/index.ts @@ -8,4 +8,8 @@ export * from './transformers' export * from './utils' export * from './decorations' -export { WebAssemblyInstantiator } from '../oniguruma' +export type { + LoadWasmOptions, + WebAssemblyInstantiator, + WebAssemblyInstance, +} from './engines' diff --git a/packages/core/src/types/options.ts b/packages/core/src/types/options.ts index b722b06e6..4924c5a2e 100644 --- a/packages/core/src/types/options.ts +++ b/packages/core/src/types/options.ts @@ -1,4 +1,5 @@ -import type { LoadWasmOptions } from '../oniguruma' +import type { LoadWasmOptions } from '../types' +import type { RegexEngine } from '../textmate' import type { StringLiteralUnion } from './utils' import type { LanguageInput, SpecialLanguage } from './langs' import type { SpecialTheme, ThemeInput, ThemeRegistrationAny } from './themes' @@ -29,9 +30,13 @@ export interface HighlighterCoreOptions { * @default true */ warnings?: boolean + /** + * Custom RegExp engine. + */ + engine?: RegexEngine | Promise } -export interface BundledHighlighterOptions { +export interface BundledHighlighterOptions extends Pick { /** * Theme registation * diff --git a/packages/core/src/wasm-inlined.ts b/packages/core/src/wasm-inlined.ts index da82fe565..4e9413157 100644 --- a/packages/core/src/wasm-inlined.ts +++ b/packages/core/src/wasm-inlined.ts @@ -1,6 +1,6 @@ // @ts-expect-error this will be compiled to ArrayBuffer import binary from 'vscode-oniguruma/release/onig.wasm' -import type { WebAssemblyInstantiator } from './oniguruma' +import type { WebAssemblyInstantiator } from './types' export const wasmBinary = binary as ArrayBuffer diff --git a/packages/rehype/test/core.test.ts b/packages/rehype/test/core.test.ts index 5db5ed93e..78f1b2dc2 100644 --- a/packages/rehype/test/core.test.ts +++ b/packages/rehype/test/core.test.ts @@ -48,6 +48,7 @@ it('run with rehype-raw', async () => { ], }) + // eslint-disable-next-line unicorn/consistent-function-scoping const rehypeMetaString = () => (tree: Root) => { visit(tree, 'element', (node) => { if (node.tagName === 'code' && node.data?.meta) { diff --git a/packages/shiki/test/engine-js/__records__/html-basic.json b/packages/shiki/test/engine-js/__records__/html-basic.json new file mode 100644 index 000000000..7d6b35530 --- /dev/null +++ b/packages/shiki/test/engine-js/__records__/html-basic.json @@ -0,0 +1,1383 @@ +[ + { + "constractor": [ + [ + "^(///)\\s*(?=<(reference|amd-dependency|amd-module)(\\s+(path|types|no-default-lib|lib|name|resolution-mode)\\s*=\\s*((\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`)))+\\s*/>\\s*$)", + "(?]|^await|[^\\._$0-9A-Za-z]await|^return|[^\\._$0-9A-Za-z]return|^yield|[^\\._$0-9A-Za-z]yield|^throw|[^\\._$0-9A-Za-z]throw|^in|[^\\._$0-9A-Za-z]in|^of|[^\\._$0-9A-Za-z]of|^typeof|[^\\._$0-9A-Za-z]typeof|&&|\\|\\||\\*)\\s*(\\{)", + "\\{", + "([_$A-Za-z][_$0-9A-Za-z]*)\\s*(:)(?=\\s*\\{)", + "([_$A-Za-z][_$0-9A-Za-z]*)\\s*(:)", + "(?:*]|&&|\\|\\||\\?|\\*\\/|^await|[^\\._$0-9A-Za-z]await|^return|[^\\._$0-9A-Za-z]return|^default|[^\\._$0-9A-Za-z]default|^yield|[^\\._$0-9A-Za-z]yield|^)\\s*(?=(<)\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?))", + "(?:*]|&&|\\|\\||\\?|\\*\\/|^await|[^\\._$0-9A-Za-z]await|^return|[^\\._$0-9A-Za-z]return|^default|[^\\._$0-9A-Za-z]default|^yield|[^\\._$0-9A-Za-z]yield|^)\\s*(?!<\\s*[_$A-Za-z][_$0-9A-Za-z]*((\\s+extends\\s+[^=>])|,))(?=(<)\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?))", + "'", + "\"", + "(?=(([_$A-Za-z][_$0-9A-Za-z]*\\s*\\??\\.\\s*)*|(\\??\\.\\s*)?)([_$A-Za-z][_$0-9A-Za-z]*)(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)?`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?\\s*(?=(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?(`)", + "(?|&&|\\|\\||\\*\\/)\\s*(\\/)(?![\\/*])(?=(?:[^\\/\\\\\\[\\()]|\\\\.|\\[([^\\]\\\\]|\\\\.)+\\]|\\(([^\\)\\\\]|\\\\.)+\\))+\\/([dgimsuy]+|(?![\\/\\*])|(?=\\/\\*))(?!\\s*[a-zA-Z0-9_$]))", + "((?)", + "(?:(?]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?[(]\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([)]\\s*:)|((\\.\\.\\.\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\s*:)))|([<]\\s*[_$A-Za-z][_$0-9A-Za-z]*\\s+extends\\s*[^=>])|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?\\(\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([_$A-Za-z]|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\.\\.\\.\\s*[_$A-Za-z]))([^()\\'\\\"\\`]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))*)?\\)(\\s*:\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+)?\\s*=>)))", + "=>", + "(?<=[(=,])\\s*(async)?(?=\\s*((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*))?\\(\\s*((([\\{\\[]\\s*)?$)|((\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})\\s*((:\\s*\\{?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*)))|((\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])\\s*((:\\s*\\[?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*)))))", + "(?<=[(=,]|=>|^return|[^\\._$0-9A-Za-z]return)\\s*(async)?(?=\\s*((((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*))?\\()|(<)|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)))\\s*$)", + "(?<=\\)|^)\\s*(:)(?=\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*=>)", + "(?:*]|&&|\\|\\||\\?|\\*\\/|^await|[^\\._$0-9A-Za-z]await|^return|[^\\._$0-9A-Za-z]return|^default|[^\\._$0-9A-Za-z]default|^yield|[^\\._$0-9A-Za-z]yield|^)\\s*(?=(<)\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?))", + "(?:*]|&&|\\|\\||\\?|\\*\\/|^await|[^\\._$0-9A-Za-z]await|^return|[^\\._$0-9A-Za-z]return|^default|[^\\._$0-9A-Za-z]default|^yield|[^\\._$0-9A-Za-z]yield|^)\\s*(?!<\\s*[_$A-Za-z][_$0-9A-Za-z]*((\\s+extends\\s+[^=>])|,))(?=(<)\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?))", + "(?!\\?\\.\\s*[^\\d])(\\?)(?!\\?)", + "(?>=|>>>=|\\|=", + "<<|>>>|>>", + "===|!==|==|!=", + "<=|>=|<>|<|>", + "(?<=[_$0-9A-Za-z])(\\!)\\s*(?:(/=)|(?:(/)(?![/*])))", + "\\!|&&|\\|\\||\\?\\?", + "\\&|~|\\^|\\|", + "\\=", + "--", + "\\+\\+", + "%|\\*|/|-|\\+", + "(?<=[_$0-9A-Za-z)\\]])\\s*(?=(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)+(?:(/=)|(?:(/)(?![/*]))))", + "(?<=[_$0-9A-Za-z)\\]])\\s*(?:(/=)|(?:(/)(?![/*])))", + "(?=(((([_$A-Za-z][_$0-9A-Za-z]*)(\\s*\\??\\.\\s*(\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\??\\.\\s*\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[\\)]))\\s*(?:(\\?\\.\\s*)|(\\!))?((<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)?\\())", + "(?=(((([_$A-Za-z][_$0-9A-Za-z]*)(\\s*\\??\\.\\s*(\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\??\\.\\s*\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[\\)]))(<\\s*[\\{\\[\\(]\\s*$))", + "\\b(?]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\b(?!\\$)))", + "(?)))|((async\\s*)?(((<\\s*$)|([\\(]\\s*((([\\{\\[]\\s*)?$)|((\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})\\s*((:\\s*\\{?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*)))|((\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])\\s*((:\\s*\\[?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*))))))|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?[(]\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([)]\\s*:)|((\\.\\.\\.\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\s*:)))|([<]\\s*[_$A-Za-z][_$0-9A-Za-z]*\\s+extends\\s*[^=>])|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?\\(\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([_$A-Za-z]|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\.\\.\\.\\s*[_$A-Za-z]))([^()\\'\\\"\\`]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))*)?\\)(\\s*:\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+)?\\s*=>)))))", + "(?:(\\.)|(\\?\\.(?!\\s*[\\d])))\\s*(\\#?[A-Z][_$\\dA-Z]*)(?![_$0-9A-Za-z])", + "(?:(\\.)|(\\?\\.(?!\\s*[\\d])))\\s*(\\#?[_$A-Za-z][_$0-9A-Za-z]*)", + "([A-Z][_$\\dA-Z]*)(?![_$0-9A-Za-z])", + "[_$A-Za-z][_$0-9A-Za-z]*", + ",", + "(?:(\\.)|(\\?\\.(?!\\s*[\\d])))", + ";", + "'", + "\"", + "(?=(([_$A-Za-z][_$0-9A-Za-z]*\\s*\\??\\.\\s*)*|(\\??\\.\\s*)?)([_$A-Za-z][_$0-9A-Za-z]*)(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)?`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?\\s*(?=(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?(`)", + "/\\*\\*(?!/)", + "(/\\*)(?:\\s*((@)internal)(?=\\s|(\\*/)))?", + "(^[ \\t]+)?((//)(?:\\s*((@)internal)(?=\\s|$))?)", + "\\A(#!).*(?=$)" + ] + ], + "executions": [ + { + "args": [ + "
bar
\n", + 0 + ], + "result": { + "index": 35, + "captureIndices": [ + { + "start": 0, + "end": 0, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 0, + "end": 1, + "length": 1 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 1, + "end": 4, + "length": 3 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4, + "end": 5, + "length": 1 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4, + "end": 5, + "length": 1 + } + ] + } + }, + { + "args": [ + "foobar\n", + 0 + ], + "result": { + "index": 77, + "captureIndices": [ + { + "start": 0, + "end": 1, + "length": 1 + } + ] + } + } + ] + }, + { + "constractor": [ + [ + "(?!(<)\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?))", + "(?=(<)\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?))" + ] + ], + "executions": [ + { + "args": [ + "
bar
\n", + 0 + ], + "result": { + "index": 1, + "captureIndices": [ + { + "start": 0, + "end": 0, + "length": 0 + }, + { + "start": 0, + "end": 1, + "length": 1 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 1, + "end": 4, + "length": 3 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4, + "end": 5, + "length": 1 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4, + "end": 5, + "length": 1 + } + ] + } + }, + { + "args": [ + "
bar
\n", + 26 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 26, + "end": 26, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + } + ] + } + } + ] + }, + { + "constractor": [ + [ + "(/>)|(?:())", + "(<)\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?)", + "(>)" + ] + ], + "executions": [ + { + "args": [ + "
bar
\n", + 0 + ], + "result": { + "index": 1, + "captureIndices": [ + { + "start": 0, + "end": 4, + "length": 4 + }, + { + "start": 0, + "end": 1, + "length": 1 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 1, + "end": 4, + "length": 3 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4, + "end": 5, + "length": 1 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4, + "end": 5, + "length": 1 + } + ] + } + }, + { + "args": [ + "
bar
\n", + 16 + ], + "result": { + "index": 2, + "captureIndices": [ + { + "start": 16, + "end": 17, + "length": 1 + }, + { + "start": 16, + "end": 17, + "length": 1 + } + ] + } + }, + { + "args": [ + "
bar
\n", + 20 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 20, + "end": 26, + "length": 6 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 20, + "end": 22, + "length": 2 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 22, + "end": 25, + "length": 3 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 25, + "end": 26, + "length": 1 + } + ] + } + } + ] + }, + { + "constractor": [ + [ + "(?=[/]?>)", + "/\\*\\*(?!/)", + "(/\\*)(?:\\s*((@)internal)(?=\\s|(\\*/)))?", + "(^[ \\t]+)?((//)(?:\\s*((@)internal)(?=\\s|$))?)", + "\\<", + "\\s+" + ] + ], + "executions": [ + { + "args": [ + "
bar
\n", + 4 + ], + "result": { + "index": 5, + "captureIndices": [ + { + "start": 4, + "end": 5, + "length": 1 + } + ] + } + }, + { + "args": [ + "
bar
\n", + 16 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 16, + "end": 16, + "length": 0 + } + ] + } + } + ] + }, + { + "constractor": [ + [ + "(?=[/]?>)", + "/\\*\\*(?!/)", + "(/\\*)(?:\\s*((@)internal)(?=\\s|(\\*/)))?", + "(^[ \\t]+)?((//)(?:\\s*((@)internal)(?=\\s|$))?)", + "\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(:))?([_$A-Za-z][-_$0-9A-Za-z]*)(?=\\s|=|/?>|/\\*|//)", + "=(?=\\s*(?:'|\"|{|/\\*|//|\\n))", + "\"", + "'", + "\\{", + "\\S+" + ] + ], + "executions": [ + { + "args": [ + "
bar
\n", + 5 + ], + "result": { + "index": 4, + "captureIndices": [ + { + "start": 5, + "end": 10, + "length": 5 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 5, + "end": 10, + "length": 5 + } + ] + } + }, + { + "args": [ + "
bar
\n", + 10 + ], + "result": { + "index": 5, + "captureIndices": [ + { + "start": 10, + "end": 11, + "length": 1 + } + ] + } + }, + { + "args": [ + "
bar
\n", + 11 + ], + "result": { + "index": 6, + "captureIndices": [ + { + "start": 11, + "end": 12, + "length": 1 + } + ] + } + }, + { + "args": [ + "
bar
\n", + 16 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 16, + "end": 16, + "length": 0 + } + ] + } + } + ] + }, + { + "constractor": [ + [ + "\"", + "(&)([a-zA-Z0-9]+|#\\d+|#x[0-9a-fA-F]+)(;)" + ] + ], + "executions": [ + { + "args": [ + "
bar
\n", + 12 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 15, + "end": 16, + "length": 1 + } + ] + } + } + ] + }, + { + "constractor": [ + [ + "(?=)", + "(?=(<)\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?))", + "\\{", + "(&)([a-zA-Z0-9]+|#\\d+|#x[0-9a-fA-F]+)(;)" + ] + ], + "executions": [ + { + "args": [ + "
bar
\n", + 17 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 20, + "end": 20, + "length": 0 + } + ] + } + } + ] + }, + { + "constractor": [ + [ + "^(///)\\s*(?=<(reference|amd-dependency|amd-module)(\\s+(path|types|no-default-lib|lib|name|resolution-mode)\\s*=\\s*((\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`)))+\\s*/>\\s*$)", + "(?]|^await|[^\\._$0-9A-Za-z]await|^return|[^\\._$0-9A-Za-z]return|^yield|[^\\._$0-9A-Za-z]yield|^throw|[^\\._$0-9A-Za-z]throw|^in|[^\\._$0-9A-Za-z]in|^of|[^\\._$0-9A-Za-z]of|^typeof|[^\\._$0-9A-Za-z]typeof|&&|\\|\\||\\*)\\s*(\\{)", + "\\{", + "([_$A-Za-z][_$0-9A-Za-z]*)\\s*(:)(?=\\s*\\{)", + "([_$A-Za-z][_$0-9A-Za-z]*)\\s*(:)", + "(?:*]|&&|\\|\\||\\?|\\*\\/|^await|[^\\._$0-9A-Za-z]await|^return|[^\\._$0-9A-Za-z]return|^default|[^\\._$0-9A-Za-z]default|^yield|[^\\._$0-9A-Za-z]yield|^)\\s*(?=(<)\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?))", + "(?:*]|&&|\\|\\||\\?|\\*\\/|^await|[^\\._$0-9A-Za-z]await|^return|[^\\._$0-9A-Za-z]return|^default|[^\\._$0-9A-Za-z]default|^yield|[^\\._$0-9A-Za-z]yield|^)\\s*(?!<\\s*[_$A-Za-z][_$0-9A-Za-z]*((\\s+extends\\s+[^=>])|,))(?=(<)\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?))", + "'", + "\"", + "(?=(([_$A-Za-z][_$0-9A-Za-z]*\\s*\\??\\.\\s*)*|(\\??\\.\\s*)?)([_$A-Za-z][_$0-9A-Za-z]*)(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)?`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?\\s*(?=(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?(`)", + "(?|&&|\\|\\||\\*\\/)\\s*(\\/)(?![\\/*])(?=(?:[^\\/\\\\\\[\\()]|\\\\.|\\[([^\\]\\\\]|\\\\.)+\\]|\\(([^\\)\\\\]|\\\\.)+\\))+\\/([dgimsuy]+|(?![\\/\\*])|(?=\\/\\*))(?!\\s*[a-zA-Z0-9_$]))", + "((?)", + "(?:(?]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?[(]\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([)]\\s*:)|((\\.\\.\\.\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\s*:)))|([<]\\s*[_$A-Za-z][_$0-9A-Za-z]*\\s+extends\\s*[^=>])|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?\\(\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([_$A-Za-z]|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\.\\.\\.\\s*[_$A-Za-z]))([^()\\'\\\"\\`]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))*)?\\)(\\s*:\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+)?\\s*=>)))", + "=>", + "(?<=[(=,])\\s*(async)?(?=\\s*((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*))?\\(\\s*((([\\{\\[]\\s*)?$)|((\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})\\s*((:\\s*\\{?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*)))|((\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])\\s*((:\\s*\\[?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*)))))", + "(?<=[(=,]|=>|^return|[^\\._$0-9A-Za-z]return)\\s*(async)?(?=\\s*((((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*))?\\()|(<)|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)))\\s*$)", + "(?<=\\)|^)\\s*(:)(?=\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*=>)", + "(?:*]|&&|\\|\\||\\?|\\*\\/|^await|[^\\._$0-9A-Za-z]await|^return|[^\\._$0-9A-Za-z]return|^default|[^\\._$0-9A-Za-z]default|^yield|[^\\._$0-9A-Za-z]yield|^)\\s*(?=(<)\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?))", + "(?:*]|&&|\\|\\||\\?|\\*\\/|^await|[^\\._$0-9A-Za-z]await|^return|[^\\._$0-9A-Za-z]return|^default|[^\\._$0-9A-Za-z]default|^yield|[^\\._$0-9A-Za-z]yield|^)\\s*(?!<\\s*[_$A-Za-z][_$0-9A-Za-z]*((\\s+extends\\s+[^=>])|,))(?=(<)\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?))", + "(?!\\?\\.\\s*[^\\d])(\\?)(?!\\?)", + "(?>=|>>>=|\\|=", + "<<|>>>|>>", + "===|!==|==|!=", + "<=|>=|<>|<|>", + "(?<=[_$0-9A-Za-z])(\\!)\\s*(?:(/=)|(?:(/)(?![/*])))", + "\\!|&&|\\|\\||\\?\\?", + "\\&|~|\\^|\\|", + "\\=", + "--", + "\\+\\+", + "%|\\*|/|-|\\+", + "(?<=[_$0-9A-Za-z)\\]])\\s*(?=(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)+(?:(/=)|(?:(/)(?![/*]))))", + "(?<=[_$0-9A-Za-z)\\]])\\s*(?:(/=)|(?:(/)(?![/*])))", + "(?=(((([_$A-Za-z][_$0-9A-Za-z]*)(\\s*\\??\\.\\s*(\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\??\\.\\s*\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[\\)]))\\s*(?:(\\?\\.\\s*)|(\\!))?((<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)?\\())", + "(?=(((([_$A-Za-z][_$0-9A-Za-z]*)(\\s*\\??\\.\\s*(\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\??\\.\\s*\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[\\)]))(<\\s*[\\{\\[\\(]\\s*$))", + "\\b(?]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\b(?!\\$)))", + "(?)))|((async\\s*)?(((<\\s*$)|([\\(]\\s*((([\\{\\[]\\s*)?$)|((\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})\\s*((:\\s*\\{?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*)))|((\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])\\s*((:\\s*\\[?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*))))))|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?[(]\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([)]\\s*:)|((\\.\\.\\.\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\s*:)))|([<]\\s*[_$A-Za-z][_$0-9A-Za-z]*\\s+extends\\s*[^=>])|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?\\(\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([_$A-Za-z]|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\.\\.\\.\\s*[_$A-Za-z]))([^()\\'\\\"\\`]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))*)?\\)(\\s*:\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+)?\\s*=>)))))", + "(?:(\\.)|(\\?\\.(?!\\s*[\\d])))\\s*(\\#?[A-Z][_$\\dA-Z]*)(?![_$0-9A-Za-z])", + "(?:(\\.)|(\\?\\.(?!\\s*[\\d])))\\s*(\\#?[_$A-Za-z][_$0-9A-Za-z]*)", + "([A-Z][_$\\dA-Z]*)(?![_$0-9A-Za-z])", + "[_$A-Za-z][_$0-9A-Za-z]*", + ",", + "(?:(\\.)|(\\?\\.(?!\\s*[\\d])))", + ";", + "'", + "\"", + "(?=(([_$A-Za-z][_$0-9A-Za-z]*\\s*\\??\\.\\s*)*|(\\??\\.\\s*)?)([_$A-Za-z][_$0-9A-Za-z]*)(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)?`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?\\s*(?=(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?(`)", + "/\\*\\*(?!/)", + "(/\\*)(?:\\s*((@)internal)(?=\\s|(\\*/)))?", + "(^[ \\t]+)?((//)(?:\\s*((@)internal)(?=\\s|$))?)", + "\\￿(#!).*(?=$)" + ] + ], + "executions": [ + { + "args": [ + "
bar
\n", + 26 + ], + "result": null + }, + { + "args": [ + "foobar\n", + 1 + ], + "result": { + "index": 79, + "captureIndices": [ + { + "start": 1, + "end": 2, + "length": 1 + } + ] + } + }, + { + "args": [ + "foobar\n", + 2 + ], + "result": { + "index": 115, + "captureIndices": [ + { + "start": 2, + "end": 9, + "length": 7 + }, + { + "start": 2, + "end": 9, + "length": 7 + } + ] + } + }, + { + "args": [ + "foobar\n", + 9 + ], + "result": { + "index": 116, + "captureIndices": [ + { + "start": 10, + "end": 14, + "length": 4 + } + ] + } + }, + { + "args": [ + "foobar\n", + 14 + ], + "result": { + "index": 77, + "captureIndices": [ + { + "start": 14, + "end": 15, + "length": 1 + } + ] + } + }, + { + "args": [ + "foobar\n", + 15 + ], + "result": { + "index": 34, + "captureIndices": [ + { + "start": 15, + "end": 15, + "length": 0 + }, + { + "start": 15, + "end": 16, + "length": 1 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 16, + "end": 20, + "length": 4 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 20, + "end": 21, + "length": 1 + } + ] + } + }, + { + "args": [ + "foobar\n", + 75 + ], + "result": null + } + ] + }, + { + "constractor": [ + [ + "(?!(<)\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?))", + "(<)\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?)" + ] + ], + "executions": [ + { + "args": [ + "foobar\n", + 15 + ], + "result": { + "index": 1, + "captureIndices": [ + { + "start": 15, + "end": 21, + "length": 6 + }, + { + "start": 15, + "end": 16, + "length": 1 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 16, + "end": 20, + "length": 4 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 20, + "end": 21, + "length": 1 + } + ] + } + }, + { + "args": [ + "foobar\n", + 75 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 75, + "end": 75, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + } + ] + } + } + ] + }, + { + "constractor": [ + [ + "()", + "(<)\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?)", + "(?=(<)\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?))", + "\\{", + "(&)([a-zA-Z0-9]+|#\\d+|#x[0-9a-fA-F]+)(;)" + ] + ], + "executions": [ + { + "args": [ + "foobar\n", + 21 + ], + "result": { + "index": 1, + "captureIndices": [ + { + "start": 21, + "end": 27, + "length": 6 + }, + { + "start": 21, + "end": 22, + "length": 1 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 22, + "end": 26, + "length": 4 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 26, + "end": 27, + "length": 1 + } + ] + } + }, + { + "args": [ + "foobar\n", + 27 + ], + "result": { + "index": 1, + "captureIndices": [ + { + "start": 27, + "end": 34, + "length": 7 + }, + { + "start": 27, + "end": 28, + "length": 1 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 28, + "end": 33, + "length": 5 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 33, + "end": 34, + "length": 1 + } + ] + } + }, + { + "args": [ + "foobar\n", + 34 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 37, + "end": 45, + "length": 8 + }, + { + "start": 37, + "end": 39, + "length": 2 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 39, + "end": 44, + "length": 5 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 44, + "end": 45, + "length": 1 + } + ] + } + }, + { + "args": [ + "foobar\n", + 45 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 45, + "end": 52, + "length": 7 + }, + { + "start": 45, + "end": 47, + "length": 2 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 47, + "end": 51, + "length": 4 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 51, + "end": 52, + "length": 1 + } + ] + } + }, + { + "args": [ + "foobar\n", + 52 + ], + "result": { + "index": 1, + "captureIndices": [ + { + "start": 52, + "end": 58, + "length": 6 + }, + { + "start": 52, + "end": 53, + "length": 1 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 53, + "end": 57, + "length": 4 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 57, + "end": 58, + "length": 1 + } + ] + } + }, + { + "args": [ + "foobar\n", + 58 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 61, + "end": 68, + "length": 7 + }, + { + "start": 61, + "end": 63, + "length": 2 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 63, + "end": 67, + "length": 4 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 67, + "end": 68, + "length": 1 + } + ] + } + }, + { + "args": [ + "foobar\n", + 68 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 68, + "end": 75, + "length": 7 + }, + { + "start": 68, + "end": 70, + "length": 2 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 70, + "end": 74, + "length": 4 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 74, + "end": 75, + "length": 1 + } + ] + } + } + ] + } +] diff --git a/packages/shiki/test/engine-js/__records__/json-basic.json b/packages/shiki/test/engine-js/__records__/json-basic.json new file mode 100644 index 000000000..98db6f72d --- /dev/null +++ b/packages/shiki/test/engine-js/__records__/json-basic.json @@ -0,0 +1,836 @@ +[ + { + "constractor": [ + [ + "\\b(?:true|false|null)\\b", + "-?(?:0|[1-9]\\d*)(?:(?:\\.\\d+)?(?:[eE][+-]?\\d+)?)?", + "\"", + "\\[", + "\\{", + "/\\*\\*(?!/)", + "/\\*", + "(//).*$\\n?" + ] + ], + "executions": [ + { + "args": [ + "{\"foo\":{\"bar\":1}}\n", + 0 + ], + "result": { + "index": 4, + "captureIndices": [ + { + "start": 0, + "end": 1, + "length": 1 + } + ] + } + }, + { + "args": [ + "{\"foo\":{\"bar\":1}}\n", + 17 + ], + "result": null + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 0 + ], + "result": { + "index": 3, + "captureIndices": [ + { + "start": 0, + "end": 1, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 56 + ], + "result": null + } + ] + }, + { + "constractor": [ + [ + "\\}", + "\"", + "/\\*\\*(?!/)", + "/\\*", + "(//).*$\\n?", + ":", + "[^\\s\\}]" + ] + ], + "executions": [ + { + "args": [ + "{\"foo\":{\"bar\":1}}\n", + 1 + ], + "result": { + "index": 1, + "captureIndices": [ + { + "start": 1, + "end": 2, + "length": 1 + } + ] + } + }, + { + "args": [ + "{\"foo\":{\"bar\":1}}\n", + 6 + ], + "result": { + "index": 5, + "captureIndices": [ + { + "start": 6, + "end": 7, + "length": 1 + } + ] + } + }, + { + "args": [ + "{\"foo\":{\"bar\":1}}\n", + 8 + ], + "result": { + "index": 1, + "captureIndices": [ + { + "start": 8, + "end": 9, + "length": 1 + } + ] + } + }, + { + "args": [ + "{\"foo\":{\"bar\":1}}\n", + 13 + ], + "result": { + "index": 5, + "captureIndices": [ + { + "start": 13, + "end": 14, + "length": 1 + } + ] + } + }, + { + "args": [ + "{\"foo\":{\"bar\":1}}\n", + 15 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 15, + "end": 16, + "length": 1 + } + ] + } + }, + { + "args": [ + "{\"foo\":{\"bar\":1}}\n", + 16 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 16, + "end": 17, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 54 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 54, + "end": 55, + "length": 1 + } + ] + } + } + ] + }, + { + "constractor": [ + [ + "\"", + "\\\\(?:[\"\\\\/bfnrt]|u[0-9a-fA-F]{4})", + "\\\\." + ] + ], + "executions": [ + { + "args": [ + "{\"foo\":{\"bar\":1}}\n", + 2 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 5, + "end": 6, + "length": 1 + } + ] + } + }, + { + "args": [ + "{\"foo\":{\"bar\":1}}\n", + 9 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 12, + "end": 13, + "length": 1 + } + ] + } + } + ] + }, + { + "constractor": [ + [ + "(,)|(?=\\})", + "\\b(?:true|false|null)\\b", + "-?(?:0|[1-9]\\d*)(?:(?:\\.\\d+)?(?:[eE][+-]?\\d+)?)?", + "\"", + "\\[", + "\\{", + "/\\*\\*(?!/)", + "/\\*", + "(//).*$\\n?", + "[^\\s,]" + ] + ], + "executions": [ + { + "args": [ + "{\"foo\":{\"bar\":1}}\n", + 7 + ], + "result": { + "index": 5, + "captureIndices": [ + { + "start": 7, + "end": 8, + "length": 1 + } + ] + } + }, + { + "args": [ + "{\"foo\":{\"bar\":1}}\n", + 14 + ], + "result": { + "index": 2, + "captureIndices": [ + { + "start": 14, + "end": 15, + "length": 1 + } + ] + } + }, + { + "args": [ + "{\"foo\":{\"bar\":1}}\n", + 15 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 15, + "end": 15, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + } + ] + } + }, + { + "args": [ + "{\"foo\":{\"bar\":1}}\n", + 16 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 16, + "end": 16, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + } + ] + } + } + ] + }, + { + "constractor": [ + [ + "\\]", + "\\b(?:true|false|null)\\b", + "-?(?:0|[1-9]\\d*)(?:(?:\\.\\d+)?(?:[eE][+-]?\\d+)?)?", + "\"", + "\\[", + "\\{", + "/\\*\\*(?!/)", + "/\\*", + "(//).*$\\n?", + ",", + "[^\\s\\]]" + ] + ], + "executions": [ + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 1 + ], + "result": { + "index": 10, + "captureIndices": [ + { + "start": 1, + "end": 2, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 2 + ], + "result": { + "index": 10, + "captureIndices": [ + { + "start": 2, + "end": 3, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 3 + ], + "result": { + "index": 10, + "captureIndices": [ + { + "start": 3, + "end": 4, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 4 + ], + "result": { + "index": 10, + "captureIndices": [ + { + "start": 4, + "end": 5, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 5 + ], + "result": { + "index": 10, + "captureIndices": [ + { + "start": 5, + "end": 6, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 6 + ], + "result": { + "index": 10, + "captureIndices": [ + { + "start": 6, + "end": 7, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 7 + ], + "result": { + "index": 10, + "captureIndices": [ + { + "start": 7, + "end": 8, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 8 + ], + "result": { + "index": 10, + "captureIndices": [ + { + "start": 8, + "end": 9, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 9 + ], + "result": { + "index": 10, + "captureIndices": [ + { + "start": 9, + "end": 10, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 10 + ], + "result": { + "index": 9, + "captureIndices": [ + { + "start": 10, + "end": 11, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 11 + ], + "result": { + "index": 1, + "captureIndices": [ + { + "start": 12, + "end": 16, + "length": 4 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 16 + ], + "result": { + "index": 9, + "captureIndices": [ + { + "start": 16, + "end": 17, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 17 + ], + "result": { + "index": 1, + "captureIndices": [ + { + "start": 18, + "end": 22, + "length": 4 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 22 + ], + "result": { + "index": 9, + "captureIndices": [ + { + "start": 22, + "end": 23, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 23 + ], + "result": { + "index": 1, + "captureIndices": [ + { + "start": 24, + "end": 29, + "length": 5 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 29 + ], + "result": { + "index": 9, + "captureIndices": [ + { + "start": 29, + "end": 30, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 30 + ], + "result": { + "index": 2, + "captureIndices": [ + { + "start": 31, + "end": 32, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 32 + ], + "result": { + "index": 9, + "captureIndices": [ + { + "start": 32, + "end": 33, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 33 + ], + "result": { + "index": 2, + "captureIndices": [ + { + "start": 34, + "end": 35, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 35 + ], + "result": { + "index": 9, + "captureIndices": [ + { + "start": 35, + "end": 36, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 36 + ], + "result": { + "index": 2, + "captureIndices": [ + { + "start": 37, + "end": 40, + "length": 3 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 40 + ], + "result": { + "index": 9, + "captureIndices": [ + { + "start": 40, + "end": 41, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 41 + ], + "result": { + "index": 3, + "captureIndices": [ + { + "start": 42, + "end": 43, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 47 + ], + "result": { + "index": 9, + "captureIndices": [ + { + "start": 47, + "end": 48, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 48 + ], + "result": { + "index": 4, + "captureIndices": [ + { + "start": 49, + "end": 50, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 50 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 50, + "end": 51, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 51 + ], + "result": { + "index": 9, + "captureIndices": [ + { + "start": 51, + "end": 52, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 52 + ], + "result": { + "index": 5, + "captureIndices": [ + { + "start": 53, + "end": 54, + "length": 1 + } + ] + } + }, + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 55 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 55, + "end": 56, + "length": 1 + } + ] + } + } + ] + }, + { + "constractor": [ + [ + "\"", + "\\\\(?:[\"\\\\/bfnrt]|u[0-9a-fA-F]{4})", + "\\\\." + ] + ], + "executions": [ + { + "args": [ + "[undefined, null, true, false, 0, 1, 1.1, \"foo\", [], {}]\n", + 43 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 46, + "end": 47, + "length": 1 + } + ] + } + } + ] + } +] diff --git a/packages/shiki/test/engine-js/__records__/ts-basic.json b/packages/shiki/test/engine-js/__records__/ts-basic.json new file mode 100644 index 000000000..063f37ac4 --- /dev/null +++ b/packages/shiki/test/engine-js/__records__/ts-basic.json @@ -0,0 +1,816 @@ +[ + { + "constractor": [ + [ + "^(///)\\s*(?=<(reference|amd-dependency|amd-module)(\\s+(path|types|no-default-lib|lib|name|resolution-mode)\\s*=\\s*((\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`)))+\\s*/>\\s*$)", + "(?]|^await|[^\\._$0-9A-Za-z]await|^return|[^\\._$0-9A-Za-z]return|^yield|[^\\._$0-9A-Za-z]yield|^throw|[^\\._$0-9A-Za-z]throw|^in|[^\\._$0-9A-Za-z]in|^of|[^\\._$0-9A-Za-z]of|^typeof|[^\\._$0-9A-Za-z]typeof|&&|\\|\\||\\*)\\s*(\\{)", + "\\{", + "([_$A-Za-z][_$0-9A-Za-z]*)\\s*(:)(?=\\s*\\{)", + "([_$A-Za-z][_$0-9A-Za-z]*)\\s*(:)", + "'", + "\"", + "(?=(([_$A-Za-z][_$0-9A-Za-z]*\\s*\\??\\.\\s*)*|(\\??\\.\\s*)?)([_$A-Za-z][_$0-9A-Za-z]*)(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)?`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?\\s*(?=(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?(`)", + "(?|&&|\\|\\||\\*\\/)\\s*(\\/)(?![\\/*])(?=(?:[^\\/\\\\\\[\\()]|\\\\.|\\[([^\\]\\\\]|\\\\.)+\\]|\\(([^\\)\\\\]|\\\\.)+\\))+\\/([dgimsuy]+|(?![\\/\\*])|(?=\\/\\*))(?!\\s*[a-zA-Z0-9_$]))", + "((?)", + "(?:(?]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?[(]\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([)]\\s*:)|((\\.\\.\\.\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\s*:)))|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?\\(\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([_$A-Za-z]|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\.\\.\\.\\s*[_$A-Za-z]))([^()\\'\\\"\\`]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))*)?\\)(\\s*:\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+)?\\s*=>)))", + "=>", + "(?<=[(=,])\\s*(async)?(?=\\s*((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*))?\\(\\s*((([\\{\\[]\\s*)?$)|((\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})\\s*((:\\s*\\{?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*)))|((\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])\\s*((:\\s*\\[?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*)))))", + "(?<=[(=,]|=>|^return|[^\\._$0-9A-Za-z]return)\\s*(async)?(?=\\s*((((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*))?\\()|(<)|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)))\\s*$)", + "(?<=\\)|^)\\s*(:)(?=\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*=>)", + "\\s*(<)\\s*(const)\\s*(>)", + "(?:(?*?\\&\\|\\^]|[^_$0-9A-Za-z](?:\\+\\+|\\-\\-)|[^\\+]\\+|[^\\-]\\-))\\s*(<)(?!)", + "(?!\\?\\.\\s*[^\\d])(\\?)(?!\\?)", + "(?>=|>>>=|\\|=", + "<<|>>>|>>", + "===|!==|==|!=", + "<=|>=|<>|<|>", + "(?<=[_$0-9A-Za-z])(\\!)\\s*(?:(/=)|(?:(/)(?![/*])))", + "\\!|&&|\\|\\||\\?\\?", + "\\&|~|\\^|\\|", + "\\=", + "--", + "\\+\\+", + "%|\\*|/|-|\\+", + "(?<=[_$0-9A-Za-z)\\]])\\s*(?=(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)+(?:(/=)|(?:(/)(?![/*]))))", + "(?<=[_$0-9A-Za-z)\\]])\\s*(?:(/=)|(?:(/)(?![/*])))", + "(?=(((([_$A-Za-z][_$0-9A-Za-z]*)(\\s*\\??\\.\\s*(\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\??\\.\\s*\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[\\)]))\\s*(?:(\\?\\.\\s*)|(\\!))?((<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)?\\())", + "(?=(((([_$A-Za-z][_$0-9A-Za-z]*)(\\s*\\??\\.\\s*(\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\??\\.\\s*\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[\\)]))(<\\s*[\\{\\[\\(]\\s*$))", + "\\b(?]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\b(?!\\$)))", + "(?)))|((async\\s*)?(((<\\s*$)|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?[\\(]\\s*((([\\{\\[]\\s*)?$)|((\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})\\s*((:\\s*\\{?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*)))|((\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])\\s*((:\\s*\\[?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*))))))|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?[(]\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([)]\\s*:)|((\\.\\.\\.\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\s*:)))|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?\\(\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([_$A-Za-z]|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\.\\.\\.\\s*[_$A-Za-z]))([^()\\'\\\"\\`]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))*)?\\)(\\s*:\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+)?\\s*=>)))))", + "(?:(\\.)|(\\?\\.(?!\\s*[\\d])))\\s*(\\#?[A-Z][_$\\dA-Z]*)(?![_$0-9A-Za-z])", + "(?:(\\.)|(\\?\\.(?!\\s*[\\d])))\\s*(\\#?[_$A-Za-z][_$0-9A-Za-z]*)", + "([A-Z][_$\\dA-Z]*)(?![_$0-9A-Za-z])", + "[_$A-Za-z][_$0-9A-Za-z]*", + ",", + "(?:(\\.)|(\\?\\.(?!\\s*[\\d])))", + ";", + "'", + "\"", + "(?=(([_$A-Za-z][_$0-9A-Za-z]*\\s*\\??\\.\\s*)*|(\\??\\.\\s*)?)([_$A-Za-z][_$0-9A-Za-z]*)(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)?`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?\\s*(?=(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?(`)", + "/\\*\\*(?!/)", + "(/\\*)(?:\\s*((@)internal)(?=\\s|(\\*/)))?", + "(^[ \\t]+)?((//)(?:\\s*((@)internal)(?=\\s|$))?)", + "\\A(#!).*(?=$)" + ] + ], + "executions": [ + { + "args": [ + "const foo: string = \"bar\"\n", + 0 + ], + "result": { + "index": 3, + "captureIndices": [ + { + "start": 0, + "end": 0, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 0, + "end": 5, + "length": 5 + } + ] + } + } + ] + }, + { + "constractor": [ + [ + "(?!(?)))|((async\\s*)?(((<\\s*$)|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?[\\(]\\s*((([\\{\\[]\\s*)?$)|((\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})\\s*((:\\s*\\{?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*)))|((\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])\\s*((:\\s*\\[?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*))))))|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?[(]\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([)]\\s*:)|((\\.\\.\\.\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\s*:)))|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?\\(\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([_$A-Za-z]|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\.\\.\\.\\s*[_$A-Za-z]))([^()\\'\\\"\\`]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))*)?\\)(\\s*:\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+)?\\s*=>)))))|(:\\s*((<)|([(]\\s*(([)])|(\\.\\.\\.)|([_$0-9A-Za-z]+\\s*(([:,?=])|([)]\\s*=>)))))))|(:\\s*(?]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?[\\(]\\s*((([\\{\\[]\\s*)?$)|((\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})\\s*((:\\s*\\{?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*)))|((\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])\\s*((:\\s*\\[?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*)))))))|(:\\s*(=>|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(<[^<>]*>)|[^<>(),=])+=\\s*(((async\\s+)?((function\\s*[(<*])|(function\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\s*=>)))|((async\\s*)?(((<\\s*$)|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?[\\(]\\s*((([\\{\\[]\\s*)?$)|((\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})\\s*((:\\s*\\{?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*)))|((\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])\\s*((:\\s*\\[?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*))))))|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?[(]\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([)]\\s*:)|((\\.\\.\\.\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\s*:)))|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?\\(\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([_$A-Za-z]|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\.\\.\\.\\s*[_$A-Za-z]))([^()\\'\\\"\\`]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))*)?\\)(\\s*:\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+)?\\s*=>))))))", + "([_$A-Za-z][_$0-9A-Za-z]*)", + "(?\\s*$)", + "(?\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)?`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?\\s*(?=(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?(`)", + "/\\*\\*(?!/)", + "(/\\*)(?:\\s*((@)internal)(?=\\s|(\\*/)))?", + "(^[ \\t]+)?((//)(?:\\s*((@)internal)(?=\\s|$))?)" + ] + ], + "executions": [ + { + "args": [ + "const foo: string = \"bar\"\n", + 9 + ], + "result": { + "index": 1, + "captureIndices": [ + { + "start": 9, + "end": 10, + "length": 1 + }, + { + "start": 9, + "end": 10, + "length": 1 + } + ] + } + }, + { + "args": [ + "const foo: string = \"bar\"\n", + 18 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 18, + "end": 18, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + } + ] + } + } + ] + }, + { + "constractor": [ + [ + "(?])|((?<=[\\}>\\]\\)]|[_$A-Za-z])\\s*(?=\\{)))", + "/\\*\\*(?!/)", + "(/\\*)(?:\\s*((@)internal)(?=\\s|(\\*/)))?", + "(^[ \\t]+)?((//)(?:\\s*((@)internal)(?=\\s|$))?)", + "'", + "\"", + "(?=(([_$A-Za-z][_$0-9A-Za-z]*\\s*\\??\\.\\s*)*|(\\??\\.\\s*)?)([_$A-Za-z][_$0-9A-Za-z]*)(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)?`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?\\s*(?=(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?(`)", + "\\b(?))))))", + "\\(", + "(=>)(?=\\s*\\S)", + "=>", + "(?\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)?`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?\\s*(?=(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?(`)", + "(?|&&|\\|\\||\\*\\/)\\s*(\\/)(?![\\/*])(?=(?:[^\\/\\\\\\[\\()]|\\\\.|\\[([^\\]\\\\]|\\\\.)+\\]|\\(([^\\)\\\\]|\\\\.)+\\))+\\/([dgimsuy]+|(?![\\/\\*])|(?=\\/\\*))(?!\\s*[a-zA-Z0-9_$]))", + "((?)", + "(?:(?]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?[(]\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([)]\\s*:)|((\\.\\.\\.\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\s*:)))|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?\\(\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([_$A-Za-z]|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\.\\.\\.\\s*[_$A-Za-z]))([^()\\'\\\"\\`]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))*)?\\)(\\s*:\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+)?\\s*=>)))", + "=>", + "(?<=[(=,])\\s*(async)?(?=\\s*((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*))?\\(\\s*((([\\{\\[]\\s*)?$)|((\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})\\s*((:\\s*\\{?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*)))|((\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])\\s*((:\\s*\\[?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*)))))", + "(?<=[(=,]|=>|^return|[^\\._$0-9A-Za-z]return)\\s*(async)?(?=\\s*((((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*))?\\()|(<)|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)))\\s*$)", + "(?<=\\)|^)\\s*(:)(?=\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*=>)", + "\\s*(<)\\s*(const)\\s*(>)", + "(?:(?*?\\&\\|\\^]|[^_$0-9A-Za-z](?:\\+\\+|\\-\\-)|[^\\+]\\+|[^\\-]\\-))\\s*(<)(?!)", + "(?!\\?\\.\\s*[^\\d])(\\?)(?!\\?)", + "(?>=|>>>=|\\|=", + "<<|>>>|>>", + "===|!==|==|!=", + "<=|>=|<>|<|>", + "(?<=[_$0-9A-Za-z])(\\!)\\s*(?:(/=)|(?:(/)(?![/*])))", + "\\!|&&|\\|\\||\\?\\?", + "\\&|~|\\^|\\|", + "\\=", + "--", + "\\+\\+", + "%|\\*|/|-|\\+", + "(?<=[_$0-9A-Za-z)\\]])\\s*(?=(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)+(?:(/=)|(?:(/)(?![/*]))))", + "(?<=[_$0-9A-Za-z)\\]])\\s*(?:(/=)|(?:(/)(?![/*])))", + "(?=(((([_$A-Za-z][_$0-9A-Za-z]*)(\\s*\\??\\.\\s*(\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\??\\.\\s*\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[\\)]))\\s*(?:(\\?\\.\\s*)|(\\!))?((<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)?\\())", + "(?=(((([_$A-Za-z][_$0-9A-Za-z]*)(\\s*\\??\\.\\s*(\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\??\\.\\s*\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[\\)]))(<\\s*[\\{\\[\\(]\\s*$))", + "\\b(?]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\b(?!\\$)))", + "(?)))|((async\\s*)?(((<\\s*$)|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?[\\(]\\s*((([\\{\\[]\\s*)?$)|((\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})\\s*((:\\s*\\{?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*)))|((\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])\\s*((:\\s*\\[?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*))))))|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?[(]\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([)]\\s*:)|((\\.\\.\\.\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\s*:)))|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?\\(\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([_$A-Za-z]|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\.\\.\\.\\s*[_$A-Za-z]))([^()\\'\\\"\\`]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))*)?\\)(\\s*:\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+)?\\s*=>)))))", + "(?:(\\.)|(\\?\\.(?!\\s*[\\d])))\\s*(\\#?[A-Z][_$\\dA-Z]*)(?![_$0-9A-Za-z])", + "(?:(\\.)|(\\?\\.(?!\\s*[\\d])))\\s*(\\#?[_$A-Za-z][_$0-9A-Za-z]*)", + "([A-Z][_$\\dA-Z]*)(?![_$0-9A-Za-z])", + "[_$A-Za-z][_$0-9A-Za-z]*", + ",", + "(?:(\\.)|(\\?\\.(?!\\s*[\\d])))" + ] + ], + "executions": [ + { + "args": [ + "const foo: string = \"bar\"\n", + 19 + ], + "result": { + "index": 2, + "captureIndices": [ + { + "start": 20, + "end": 21, + "length": 1 + } + ] + } + }, + { + "args": [ + "const foo: string = \"bar\"\n", + 25 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 25, + "end": 25, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + } + ] + } + } + ] + }, + { + "constractor": [ + [ + "(\")|((?:[^\\\\\\n])$)", + "\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|u\\{[0-9A-Fa-f]+\\}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)" + ] + ], + "executions": [ + { + "args": [ + "const foo: string = \"bar\"\n", + 21 + ], + "result": { + "index": 0, + "captureIndices": [ + { + "start": 24, + "end": 25, + "length": 1 + }, + { + "start": 24, + "end": 25, + "length": 1 + }, + { + "start": 4294967295, + "end": 4294967295, + "length": 0 + } + ] + } + } + ] + }, + { + "constractor": [ + [ + "^(///)\\s*(?=<(reference|amd-dependency|amd-module)(\\s+(path|types|no-default-lib|lib|name|resolution-mode)\\s*=\\s*((\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`)))+\\s*/>\\s*$)", + "(?]|^await|[^\\._$0-9A-Za-z]await|^return|[^\\._$0-9A-Za-z]return|^yield|[^\\._$0-9A-Za-z]yield|^throw|[^\\._$0-9A-Za-z]throw|^in|[^\\._$0-9A-Za-z]in|^of|[^\\._$0-9A-Za-z]of|^typeof|[^\\._$0-9A-Za-z]typeof|&&|\\|\\||\\*)\\s*(\\{)", + "\\{", + "([_$A-Za-z][_$0-9A-Za-z]*)\\s*(:)(?=\\s*\\{)", + "([_$A-Za-z][_$0-9A-Za-z]*)\\s*(:)", + "'", + "\"", + "(?=(([_$A-Za-z][_$0-9A-Za-z]*\\s*\\??\\.\\s*)*|(\\??\\.\\s*)?)([_$A-Za-z][_$0-9A-Za-z]*)(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)?`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?\\s*(?=(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?(`)", + "(?|&&|\\|\\||\\*\\/)\\s*(\\/)(?![\\/*])(?=(?:[^\\/\\\\\\[\\()]|\\\\.|\\[([^\\]\\\\]|\\\\.)+\\]|\\(([^\\)\\\\]|\\\\.)+\\))+\\/([dgimsuy]+|(?![\\/\\*])|(?=\\/\\*))(?!\\s*[a-zA-Z0-9_$]))", + "((?)", + "(?:(?]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?[(]\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([)]\\s*:)|((\\.\\.\\.\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\s*:)))|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?\\(\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([_$A-Za-z]|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\.\\.\\.\\s*[_$A-Za-z]))([^()\\'\\\"\\`]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))*)?\\)(\\s*:\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+)?\\s*=>)))", + "=>", + "(?<=[(=,])\\s*(async)?(?=\\s*((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*))?\\(\\s*((([\\{\\[]\\s*)?$)|((\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})\\s*((:\\s*\\{?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*)))|((\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])\\s*((:\\s*\\[?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*)))))", + "(?<=[(=,]|=>|^return|[^\\._$0-9A-Za-z]return)\\s*(async)?(?=\\s*((((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*))?\\()|(<)|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)))\\s*$)", + "(?<=\\)|^)\\s*(:)(?=\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*=>)", + "\\s*(<)\\s*(const)\\s*(>)", + "(?:(?*?\\&\\|\\^]|[^_$0-9A-Za-z](?:\\+\\+|\\-\\-)|[^\\+]\\+|[^\\-]\\-))\\s*(<)(?!)", + "(?!\\?\\.\\s*[^\\d])(\\?)(?!\\?)", + "(?>=|>>>=|\\|=", + "<<|>>>|>>", + "===|!==|==|!=", + "<=|>=|<>|<|>", + "(?<=[_$0-9A-Za-z])(\\!)\\s*(?:(/=)|(?:(/)(?![/*])))", + "\\!|&&|\\|\\||\\?\\?", + "\\&|~|\\^|\\|", + "\\=", + "--", + "\\+\\+", + "%|\\*|/|-|\\+", + "(?<=[_$0-9A-Za-z)\\]])\\s*(?=(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)+(?:(/=)|(?:(/)(?![/*]))))", + "(?<=[_$0-9A-Za-z)\\]])\\s*(?:(/=)|(?:(/)(?![/*])))", + "(?=(((([_$A-Za-z][_$0-9A-Za-z]*)(\\s*\\??\\.\\s*(\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\??\\.\\s*\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[\\)]))\\s*(?:(\\?\\.\\s*)|(\\!))?((<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)?\\())", + "(?=(((([_$A-Za-z][_$0-9A-Za-z]*)(\\s*\\??\\.\\s*(\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\??\\.\\s*\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[\\)]))(<\\s*[\\{\\[\\(]\\s*$))", + "\\b(?]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\b(?!\\$)))", + "(?)))|((async\\s*)?(((<\\s*$)|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?[\\(]\\s*((([\\{\\[]\\s*)?$)|((\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})\\s*((:\\s*\\{?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*)))|((\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])\\s*((:\\s*\\[?$)|((\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\s*)?=\\s*))))))|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?[(]\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([)]\\s*:)|((\\.\\.\\.\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\s*:)))|((<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$A-Za-z])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*)?\\(\\s*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*(([_$A-Za-z]|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\.\\.\\.\\s*[_$A-Za-z]))([^()\\'\\\"\\`]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))*)?\\)(\\s*:\\s*([^<>\\(\\)\\{\\}]|\\<([^<>]|\\<([^<>]|\\<[^<>]+\\>)+\\>)+\\>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+)?\\s*=>)))))", + "(?:(\\.)|(\\?\\.(?!\\s*[\\d])))\\s*(\\#?[A-Z][_$\\dA-Z]*)(?![_$0-9A-Za-z])", + "(?:(\\.)|(\\?\\.(?!\\s*[\\d])))\\s*(\\#?[_$A-Za-z][_$0-9A-Za-z]*)", + "([A-Z][_$\\dA-Z]*)(?![_$0-9A-Za-z])", + "[_$A-Za-z][_$0-9A-Za-z]*", + ",", + "(?:(\\.)|(\\?\\.(?!\\s*[\\d])))", + ";", + "'", + "\"", + "(?=(([_$A-Za-z][_$0-9A-Za-z]*\\s*\\??\\.\\s*)*|(\\??\\.\\s*)?)([_$A-Za-z][_$0-9A-Za-z]*)(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)?`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?\\s*(?=(<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))(([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>|\\<\\s*(((keyof|infer|typeof|readonly)\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\])|(\\'([^\\'\\\\]|\\\\.)*\\')|(\\\"([^\\\"\\\\]|\\\\.)*\\\")|(\\`([^\\`\\\\]|\\\\.)*\\`))(?=\\s*([\\<\\>\\,\\.\\[]|=>|&(?!&)|\\|(?!\\|)))))([^<>\\(]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(?<==)\\>)*(?))*(?)*(?\\s*)`)", + "([_$A-Za-z][_$0-9A-Za-z]*)?(`)", + "/\\*\\*(?!/)", + "(/\\*)(?:\\s*((@)internal)(?=\\s|(\\*/)))?", + "(^[ \\t]+)?((//)(?:\\s*((@)internal)(?=\\s|$))?)", + "\\￿(#!).*(?=$)" + ] + ], + "executions": [ + { + "args": [ + "const foo: string = \"bar\"\n", + 25 + ], + "result": null + } + ] + } +] diff --git a/packages/shiki/test/engine-js/compare.test.ts b/packages/shiki/test/engine-js/compare.test.ts new file mode 100644 index 000000000..ef58e692a --- /dev/null +++ b/packages/shiki/test/engine-js/compare.test.ts @@ -0,0 +1,121 @@ +import { describe, expect, it } from 'vitest' +import { wasmBinary } from '@shikijs/core/wasm-inlined' +import type { RegexEngine } from '@shikijs/core/textmate' +import type { LanguageRegistration, ThemeRegistration } from '../../src/core' +import { createHighlighterCore, createJavaScriptRegexEngine, loadWasm } from '../../src/core' + +import { OnigScanner, OnigString } from '../../../core/src/engines/oniguruma' +import type { Instance } from './types' + +await loadWasm({ instantiator: obj => WebAssembly.instantiate(wasmBinary, obj) }) + +function createWasmOnigLibWrapper(): RegexEngine & { instances: Instance[] } { + const instances: Instance[] = [] + + return { + instances, + createScanner(patterns) { + const scanner = new OnigScanner(patterns) + const instance: Instance = { + constractor: [patterns], + executions: [], + } + instances.push(instance) + return { + findNextMatchSync(string: string | OnigString, startPosition: number) { + const result = scanner.findNextMatchSync(string, startPosition) + instance.executions.push({ args: [typeof string === 'string' ? string : string.content, startPosition], result }) + return result + }, + } + }, + createString(s) { + return new OnigString(s) + }, + } +} + +export interface Cases { + name: string + theme: () => Promise<{ default: ThemeRegistration }> + lang: () => Promise<{ default: LanguageRegistration[] }> + cases: string[] +} + +const cases: Cases[] = [ + { + name: 'json-basic', + theme: () => import('../../src/assets/themes/nord'), + lang: () => import('../../src/assets/langs/json'), + cases: [ + '{"foo":{"bar":1}}', + '[undefined, null, true, false, 0, 1, 1.1, "foo", [], {}]', + ], + }, + { + name: 'html-basic', + theme: () => import('../../src/assets/themes/nord'), + lang: () => import('../../src/assets/langs/html'), + cases: [ + '
bar
', + 'foobar', + ], + }, + { + name: 'ts-basic', + theme: () => import('../../src/assets/themes/nord'), + lang: () => import('../../src/assets/langs/typescript'), + cases: [ + 'const foo: string = "bar"', + ], + }, +] + +describe('cases', async () => { + const resolved = await Promise.all(cases.map(async (c) => { + const theme = await c.theme().then(r => r.default) + const lang = await c.lang().then(r => r.default) + return { + theme, + lang, + c, + } + })) + + for (const c of resolved) { + it(c.c.name, async () => { + const wasm = createWasmOnigLibWrapper() + const native = createJavaScriptRegexEngine() + + const shiki1 = await createHighlighterCore({ + langs: c.lang, + themes: [c.theme], + engine: wasm, + }) + const shiki2 = await createHighlighterCore({ + langs: c.lang, + themes: [c.theme], + engine: native, + }) + + const lang = c.lang[0].name + const theme = c.theme.name! + + const compare: [any, any][] = [] + + for (const code of c.c.cases) { + compare.push([ + shiki1.codeToTokensBase(code, { lang, theme }), + shiki2.codeToTokensBase(code, { lang, theme }), + ]) + } + + await expect(JSON.stringify(wasm.instances, null, 2)) + .toMatchFileSnapshot(`./__records__/${c.c.name}.json`) + + for (const [a, b] of compare) { + expect.soft(a).toEqual(b) + } + }) + } +}) diff --git a/packages/shiki/test/engine-js/general.test.ts b/packages/shiki/test/engine-js/general.test.ts new file mode 100644 index 000000000..4498b00d9 --- /dev/null +++ b/packages/shiki/test/engine-js/general.test.ts @@ -0,0 +1,47 @@ +import { describe, expect, it } from 'vitest' +import { createHighlighter, createJavaScriptRegexEngine } from '../../src' + +describe('should', () => { + it('works', async () => { + const shiki = await createHighlighter({ + themes: ['vitesse-light'], + langs: ['javascript'], + engine: createJavaScriptRegexEngine(), + }) + + expect(shiki.codeToHtml('console.log', { lang: 'js', theme: 'vitesse-light' })) + .toMatchInlineSnapshot(`"
console.log
"`) + }) + + it('dynamic load theme and lang', async () => { + const shiki = await createHighlighter({ + themes: ['vitesse-light'], + langs: ['javascript', 'ts'], + engine: createJavaScriptRegexEngine(), + }) + + await shiki.loadLanguage('css') + await shiki.loadTheme('min-dark') + + expect(shiki.getLoadedLanguages()) + .toMatchInlineSnapshot(` + [ + "javascript", + "typescript", + "css", + "js", + "ts", + ] + `) + expect(shiki.getLoadedThemes()) + .toMatchInlineSnapshot(` + [ + "vitesse-light", + "min-dark", + ] + `) + + expect(shiki.codeToHtml('@media foo { .bar { padding-left: 1px; }}', { lang: 'css', theme: 'min-dark' })) + .toMatchInlineSnapshot(`"
@media foo { .bar { padding-left: 1px; }}
"`) + }) +}) diff --git a/packages/shiki/test/engine-js/out/monokai-underline.html b/packages/shiki/test/engine-js/out/monokai-underline.html new file mode 100644 index 000000000..24c633a15 --- /dev/null +++ b/packages/shiki/test/engine-js/out/monokai-underline.html @@ -0,0 +1 @@ +
type Foo = { bar: string }
\ No newline at end of file diff --git a/packages/shiki/test/engine-js/types.ts b/packages/shiki/test/engine-js/types.ts new file mode 100644 index 000000000..99d414da2 --- /dev/null +++ b/packages/shiki/test/engine-js/types.ts @@ -0,0 +1,11 @@ +import type { IOnigMatch } from '../../../core/vendor/vscode-textmate/src/main' + +export interface Instance { + constractor: [string[]] + executions: Executions[] +} + +export interface Executions { + args: [str: string, start: number] + result: IOnigMatch | null +} diff --git a/packages/shiki/test/engine-js/verify.test.ts b/packages/shiki/test/engine-js/verify.test.ts new file mode 100644 index 000000000..a004ed306 --- /dev/null +++ b/packages/shiki/test/engine-js/verify.test.ts @@ -0,0 +1,45 @@ +import { fileURLToPath } from 'node:url' +import { basename } from 'node:path' +import { promises as fs } from 'node:fs' +import { describe, expect, it, onTestFailed } from 'vitest' +import fg from 'fast-glob' +import { JavaScriptScanner } from '../../../core/src/engines/javascript' +import type { Instance } from './types' + +const files = await fg('*.json', { + cwd: fileURLToPath(new URL('./__records__', import.meta.url)), + absolute: true, + onlyFiles: true, +}) + +const cache = new Map() + +for (const file of files) { + // Some token positions are off in this record + const name = basename(file, '.json') + if (name === 'ts-basic') + continue + + describe(`record: ${name}`, async () => { + const instances = JSON.parse(await fs.readFile(file, 'utf-8')) as Instance[] + let i = 0 + for (const instance of instances) { + describe(`instances ${i++}`, () => { + const scanner = new JavaScriptScanner(instance.constractor[0], cache, false) + let j = 0 + for (const execution of instance.executions) { + it(`case ${j++}`, () => { + onTestFailed(() => { + console.error({ + patterns: scanner.patterns, + regexps: scanner.regexps, + }) + }) + const result = scanner.findNextMatchSync(...execution.args) + expect(result).toEqual(execution.result) + }) + } + }) + } + }) +} diff --git a/packages/shiki/test/out/injections-side-effects-angular-after.html b/packages/shiki/test/out/injections-side-effects-angular-after.html index ab802b83a..5ff08d6e0 100644 --- a/packages/shiki/test/out/injections-side-effects-angular-after.html +++ b/packages/shiki/test/out/injections-side-effects-angular-after.html @@ -2,7 +2,7 @@ <p><em>Select a hero from the list to see details.</em></p> -@if (heroes.length > 0) { +@if (heroes.length > 0) { <ul> <li *ngFor="let hero of heroes"> @let isSelected = hero === selectedHero; diff --git a/packages/shiki/test/out/injections-side-effects-angular-ts-after.html b/packages/shiki/test/out/injections-side-effects-angular-ts-after.html index d2eaecea7..9a2f4d317 100644 --- a/packages/shiki/test/out/injections-side-effects-angular-ts-after.html +++ b/packages/shiki/test/out/injections-side-effects-angular-ts-after.html @@ -12,7 +12,7 @@ type="button" [routerLink]="'/cart'" > - @if (heroes.length > 0) { + @if (heroes.length > 0) { <ul> <li *ngFor="let hero of heroes"> @let isSelected = hero === selectedHero; diff --git a/packages/shiki/test/themes.test.ts b/packages/shiki/test/themes.test.ts index adf4d2355..3703013a7 100644 --- a/packages/shiki/test/themes.test.ts +++ b/packages/shiki/test/themes.test.ts @@ -3,11 +3,11 @@ import type { ThemedToken } from '../src' import { codeToHtml, codeToTokensBase, codeToTokensWithThemes } from '../src' import { syncThemesTokenization } from '../../core/src/code-to-tokens-themes' -describe('syncThemesTokenization', () => { - function stringifyTokens(tokens: ThemedToken[][]) { - return tokens.map(line => line.map(token => token.content).join(' ')).join('\n') - } +function stringifyTokens(tokens: ThemedToken[][]) { + return tokens.map(line => line.map(token => token.content).join(' ')).join('\n') +} +describe('syncThemesTokenization', () => { it('two themes', async () => { const lines1 = await codeToTokensBase('console.log("hello")', { lang: 'js', theme: 'vitesse-dark', includeExplanation: true }) const lines2 = await codeToTokensBase('console.log("hello")', { lang: 'js', theme: 'min-light', includeExplanation: true }) diff --git a/packages/shiki/test/wasm4.test.ts b/packages/shiki/test/wasm4.test.ts index 0b09bbabf..a9b53170f 100644 --- a/packages/shiki/test/wasm4.test.ts +++ b/packages/shiki/test/wasm4.test.ts @@ -11,6 +11,7 @@ it('wasm', async () => { const shiki = await createHighlighterCore({ themes: [nord], langs: [js as any], + // eslint-disable-next-line unicorn/consistent-function-scoping loadWasm: Promise.resolve().then(() => obj => WebAssembly.instantiate(wasmBinary, obj).then(r => r.instance)), }) diff --git a/packages/vitepress-twoslash/src/renderer-floating-vue.ts b/packages/vitepress-twoslash/src/renderer-floating-vue.ts index 9a3b044f3..6b8d5d01c 100644 --- a/packages/vitepress-twoslash/src/renderer-floating-vue.ts +++ b/packages/vitepress-twoslash/src/renderer-floating-vue.ts @@ -47,29 +47,6 @@ export function rendererFloatingVue(options: TwoslashFloatingVueRendererOptions 'theme': floatingVueTheme, } - function compose(parts: { token: Element | Text, popup: Element }): Element[] { - return [ - { - type: 'element', - tagName: 'span', - properties: {}, - children: [parts.token], - }, - { - type: 'element', - tagName: 'template', - properties: { - 'v-slot:popper': '{}', - }, - content: { - type: 'root', - children: [vPre(parts.popup)], - }, - children: [], - }, - ] - } - const rich = rendererRich({ classExtra: classCopyIgnore, ...options, @@ -194,3 +171,26 @@ function renderMarkdownInline(this: ShikiTransformerContextCommon, md: string, c return children[0].children return children } + +function compose(parts: { token: Element | Text, popup: Element }): Element[] { + return [ + { + type: 'element', + tagName: 'span', + properties: {}, + children: [parts.token], + }, + { + type: 'element', + tagName: 'template', + properties: { + 'v-slot:popper': '{}', + }, + content: { + type: 'root', + children: [vPre(parts.popup)], + }, + children: [], + }, + ] +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 51239b779..76274fb2f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -7,11 +7,11 @@ settings: catalogs: default: '@antfu/eslint-config': - specifier: ^2.27.0 - version: 2.27.0 + specifier: ^3.0.0 + version: 3.0.0 '@antfu/ni': - specifier: ^0.22.4 - version: 0.22.4 + specifier: ^0.23.0 + version: 0.23.0 '@antfu/utils': specifier: ^0.7.10 version: 0.7.10 @@ -55,29 +55,29 @@ catalogs: specifier: ^1.2.5 version: 1.2.5 '@types/node': - specifier: ^22.5.0 - version: 22.5.0 + specifier: ^22.5.1 + version: 22.5.1 '@unocss/reset': - specifier: ^0.62.2 - version: 0.62.2 + specifier: ^0.62.3 + version: 0.62.3 '@vitest/coverage-v8': specifier: ^2.0.5 version: 2.0.5 '@vueuse/core': - specifier: ^11.0.1 - version: 11.0.1 + specifier: ^11.0.3 + version: 11.0.3 ansi-sequence-parser: specifier: ^1.1.1 version: 1.1.1 bumpp: - specifier: ^9.5.1 - version: 9.5.1 + specifier: ^9.5.2 + version: 9.5.2 chalk: specifier: ^5.3.0 version: 5.3.0 eslint: - specifier: ^9.9.0 - version: 9.9.0 + specifier: ^9.9.1 + version: 9.9.1 eslint-plugin-format: specifier: ^0.1.2 version: 0.1.2 @@ -100,8 +100,8 @@ catalogs: specifier: ^2.0.2 version: 2.0.2 hast-util-to-html: - specifier: ^9.0.1 - version: 9.0.1 + specifier: ^9.0.2 + version: 9.0.2 hast-util-to-string: specifier: ^3.0.0 version: 3.0.0 @@ -127,17 +127,23 @@ catalogs: specifier: ^1.2.8 version: 1.2.8 monaco-editor-core: - specifier: ^0.50.0 - version: 0.50.0 + specifier: ^0.51.0 + version: 0.51.0 ofetch: specifier: ^1.3.4 version: 1.3.4 + oniguruma-to-js: + specifier: ^0.2.3 + version: 0.2.3 + picocolors: + specifier: ^1.0.1 + version: 1.0.1 pinia: specifier: ^2.2.2 version: 2.2.2 pnpm: - specifier: ^9.8.0 - version: 9.8.0 + specifier: ^9.9.0 + version: 9.9.0 prettier: specifier: ^3.3.3 version: 3.3.3 @@ -157,8 +163,8 @@ catalogs: specifier: ^6.0.1 version: 6.0.1 rollup: - specifier: ^4.21.0 - version: 4.21.0 + specifier: ^4.21.2 + version: 4.21.2 rollup-plugin-copy: specifier: ^3.5.0 version: 3.5.0 @@ -178,14 +184,14 @@ catalogs: specifier: ^2.11.1 version: 2.11.1 taze: - specifier: ^0.16.6 - version: 0.16.6 + specifier: ^0.16.7 + version: 0.16.7 tm-grammars: - specifier: ^1.17.3 - version: 1.17.3 + specifier: ^1.17.9 + version: 1.17.9 tm-themes: - specifier: ^1.8.0 - version: 1.8.0 + specifier: ^1.8.1 + version: 1.8.1 twoslash: specifier: ^0.2.9 version: 0.2.9 @@ -202,8 +208,8 @@ catalogs: specifier: ^5.0.0 version: 5.0.0 unocss: - specifier: ^0.62.2 - version: 0.62.2 + specifier: ^0.62.3 + version: 0.62.3 unplugin-vue-components: specifier: ^0.27.4 version: 0.27.4 @@ -214,8 +220,8 @@ catalogs: specifier: ^5.0.1 version: 5.0.1 vitepress: - specifier: ^1.3.3 - version: 1.3.3 + specifier: ^1.3.4 + version: 1.3.4 vitepress-plugin-mermaid: specifier: ^2.0.16 version: 2.0.16 @@ -226,11 +232,11 @@ catalogs: specifier: ^3.4.38 version: 3.4.38 vue-tsc: - specifier: ^2.0.29 - version: 2.0.29 + specifier: ^2.1.2 + version: 2.1.2 wrangler: - specifier: ^3.72.1 - version: 3.72.1 + specifier: ^3.73.0 + version: 3.73.0 overrides: '@shikijs/compat': workspace:* @@ -253,31 +259,31 @@ importers: devDependencies: '@antfu/eslint-config': specifier: 'catalog:' - version: 2.27.0(@typescript-eslint/utils@8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4))(@vue/compiler-sfc@3.4.38)(eslint-plugin-format@0.1.2(eslint@9.9.0(jiti@1.21.6)))(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4)(vitest@2.0.5(@types/node@22.5.0)(terser@5.27.0)) + version: 3.0.0(@typescript-eslint/utils@8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4))(@vue/compiler-sfc@3.4.38)(eslint-plugin-format@0.1.2(eslint@9.9.1(jiti@1.21.6)))(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4)(vitest@2.0.5(@types/node@22.5.1)(terser@5.27.0)) '@antfu/ni': specifier: 'catalog:' - version: 0.22.4 + version: 0.23.0 '@antfu/utils': specifier: 'catalog:' version: 0.7.10 '@rollup/plugin-alias': specifier: 'catalog:' - version: 5.1.0(rollup@4.21.0) + version: 5.1.0(rollup@4.21.2) '@rollup/plugin-commonjs': specifier: 'catalog:' - version: 26.0.1(rollup@4.21.0) + version: 26.0.1(rollup@4.21.2) '@rollup/plugin-json': specifier: 'catalog:' - version: 6.1.0(rollup@4.21.0) + version: 6.1.0(rollup@4.21.2) '@rollup/plugin-node-resolve': specifier: 'catalog:' - version: 15.2.3(rollup@4.21.0) + version: 15.2.3(rollup@4.21.2) '@rollup/plugin-replace': specifier: 'catalog:' - version: 5.0.7(rollup@4.21.0) + version: 5.0.7(rollup@4.21.2) '@rollup/plugin-terser': specifier: 'catalog:' - version: 0.4.4(rollup@4.21.0) + version: 0.4.4(rollup@4.21.2) '@shikijs/markdown-it': specifier: workspace:* version: link:packages/markdown-it @@ -301,22 +307,22 @@ importers: version: 3.0.4 '@types/node': specifier: 'catalog:' - version: 22.5.0 + version: 22.5.1 '@vitest/coverage-v8': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5(@types/node@22.5.0)(terser@5.27.0)) + version: 2.0.5(vitest@2.0.5(@types/node@22.5.1)(terser@5.27.0)) ansi-sequence-parser: specifier: 'catalog:' version: 1.1.1 bumpp: specifier: 'catalog:' - version: 9.5.1(magicast@0.3.4) + version: 9.5.2(magicast@0.3.4) eslint: specifier: 'catalog:' - version: 9.9.0(jiti@1.21.6) + version: 9.9.1(jiti@1.21.6) eslint-plugin-format: specifier: 'catalog:' - version: 0.1.2(eslint@9.9.0(jiti@1.21.6)) + version: 0.1.2(eslint@9.9.1(jiti@1.21.6)) esno: specifier: 'catalog:' version: 4.7.0 @@ -347,9 +353,12 @@ importers: ofetch: specifier: 'catalog:' version: 1.3.4 + picocolors: + specifier: 'catalog:' + version: 1.0.1 pnpm: specifier: 'catalog:' - version: 9.8.0 + version: 9.9.0 prettier: specifier: 'catalog:' version: 3.3.3 @@ -358,19 +367,19 @@ importers: version: 6.0.1 rollup: specifier: 'catalog:' - version: 4.21.0 + version: 4.21.2 rollup-plugin-copy: specifier: 'catalog:' version: 3.5.0 rollup-plugin-dts: specifier: 'catalog:' - version: 6.1.1(rollup@4.21.0)(typescript@5.5.4) + version: 6.1.1(rollup@4.21.2)(typescript@5.5.4) rollup-plugin-esbuild: specifier: 'catalog:' - version: 6.1.1(esbuild@0.17.19)(rollup@4.21.0) + version: 6.1.1(esbuild@0.17.19)(rollup@4.21.2) rollup-plugin-typescript2: specifier: 'catalog:' - version: 0.36.0(rollup@4.21.0)(typescript@5.5.4) + version: 0.36.0(rollup@4.21.2)(typescript@5.5.4) shiki: specifier: workspace:* version: link:packages/shiki @@ -379,7 +388,7 @@ importers: version: 2.11.1 taze: specifier: 'catalog:' - version: 0.16.6 + version: 0.16.7 typescript: specifier: 'catalog:' version: 5.5.4 @@ -388,22 +397,22 @@ importers: version: 2.0.0(typescript@5.5.4) vite: specifier: 'catalog:' - version: 5.4.2(@types/node@22.5.0)(terser@5.27.0) + version: 5.4.2(@types/node@22.5.1)(terser@5.27.0) vite-tsconfig-paths: specifier: 'catalog:' - version: 5.0.1(typescript@5.5.4)(vite@5.4.2(@types/node@22.5.0)(terser@5.27.0)) + version: 5.0.1(typescript@5.5.4)(vite@5.4.2(@types/node@22.5.1)(terser@5.27.0)) vitepress-plugin-mermaid: specifier: 'catalog:' - version: 2.0.16(mermaid@10.7.0)(vitepress@1.3.3(@algolia/client-search@4.22.1)(@types/node@22.5.0)(fuse.js@7.0.0)(postcss@8.4.41)(search-insights@2.13.0)(terser@5.27.0)(typescript@5.5.4)) + version: 2.0.16(mermaid@10.7.0)(vitepress@1.3.4(@algolia/client-search@4.22.1)(@types/node@22.5.1)(fuse.js@7.0.0)(postcss@8.4.41)(search-insights@2.13.0)(terser@5.27.0)(typescript@5.5.4)) vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@22.5.0)(terser@5.27.0) + version: 2.0.5(@types/node@22.5.1)(terser@5.27.0) vue-tsc: specifier: 'catalog:' - version: 2.0.29(typescript@5.5.4) + version: 2.1.2(typescript@5.5.4) wrangler: specifier: 'catalog:' - version: 3.72.1 + version: 3.73.0 docs: dependencies: @@ -425,10 +434,10 @@ importers: version: link:../packages/twoslash '@unocss/reset': specifier: 'catalog:' - version: 0.62.2 + version: 0.62.3 '@vueuse/core': specifier: 'catalog:' - version: 11.0.1(vue@3.4.38(typescript@5.5.4)) + version: 11.0.3(vue@3.4.38(typescript@5.5.4)) floating-vue: specifier: 'catalog:' version: 5.2.2(vue@3.4.38(typescript@5.5.4)) @@ -440,13 +449,13 @@ importers: version: link:../packages/shiki unocss: specifier: 'catalog:' - version: 0.62.2(postcss@8.4.41)(rollup@4.21.0)(vite@5.4.2(@types/node@22.5.0)(terser@5.27.0)) + version: 0.62.3(postcss@8.4.41)(rollup@4.21.2)(vite@5.4.2(@types/node@22.5.1)(terser@5.27.0)) unplugin-vue-components: specifier: 'catalog:' - version: 0.27.4(@babel/parser@7.25.3)(rollup@4.21.0)(vue@3.4.38(typescript@5.5.4)) + version: 0.27.4(@babel/parser@7.25.3)(rollup@4.21.2)(vue@3.4.38(typescript@5.5.4)) vitepress: specifier: 'catalog:' - version: 1.3.3(@algolia/client-search@4.22.1)(@types/node@22.5.0)(fuse.js@7.0.0)(postcss@8.4.41)(search-insights@2.13.0)(terser@5.27.0)(typescript@5.5.4) + version: 1.3.4(@algolia/client-search@4.22.1)(@types/node@22.5.1)(fuse.js@7.0.0)(postcss@8.4.41)(search-insights@2.13.0)(terser@5.27.0)(typescript@5.5.4) vue: specifier: 'catalog:' version: 3.4.38(typescript@5.5.4) @@ -491,7 +500,10 @@ importers: devDependencies: hast-util-to-html: specifier: 'catalog:' - version: 9.0.1 + version: 9.0.2 + oniguruma-to-js: + specifier: 'catalog:' + version: 0.2.3 vscode-oniguruma: specifier: ^1.7.0 version: 1.7.0 @@ -520,7 +532,7 @@ importers: devDependencies: monaco-editor-core: specifier: 'catalog:' - version: 0.50.0 + version: 0.51.0 packages/monaco/playground: devDependencies: @@ -529,7 +541,7 @@ importers: version: 5.5.4 vite: specifier: 'catalog:' - version: 5.4.2(@types/node@22.5.0)(terser@5.27.0) + version: 5.4.2(@types/node@22.5.1)(terser@5.27.0) packages/rehype: dependencies: @@ -576,10 +588,10 @@ importers: devDependencies: tm-grammars: specifier: 'catalog:' - version: 1.17.3 + version: 1.17.9 tm-themes: specifier: 'catalog:' - version: 1.8.0 + version: 1.8.1 vscode-oniguruma: specifier: ^1.7.0 version: 1.7.0 @@ -717,15 +729,15 @@ packages: resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} engines: {node: '>=6.0.0'} - '@antfu/eslint-config@2.27.0': - resolution: {integrity: sha512-HyUUKx9Q8jiRY8zVm6MxmIPcf9n46I41jwY3G+LXzsqgPr18dHdjAUJqbZVT9ZAI0UndV18Ye5I+H9AI3vX37w==} + '@antfu/eslint-config@3.0.0': + resolution: {integrity: sha512-3HC35LrsW5kvHyVY2U6yat3Uz20/9Re5137LAKqAtl2tKictef2CmdYk5z+qK4UsaY32MMfg98MhuBbvAvZF1w==} hasBin: true peerDependencies: '@eslint-react/eslint-plugin': ^1.5.8 '@prettier/plugin-xml': ^3.4.1 '@unocss/eslint-plugin': '>=0.50.0' astro-eslint-parser: ^1.0.2 - eslint: '>=8.40.0' + eslint: ^9.5.0 eslint-plugin-astro: ^1.2.0 eslint-plugin-format: '>=0.1.0' eslint-plugin-react-hooks: ^4.6.0 @@ -763,14 +775,11 @@ packages: svelte-eslint-parser: optional: true - '@antfu/install-pkg@0.1.1': - resolution: {integrity: sha512-LyB/8+bSfa0DFGC06zpCEfs89/XoWZwws5ygEa5D+Xsm3OfI+aXQ86VgVG7Acyef+rSZ5HE7J8rrxzrQeM3PjQ==} - - '@antfu/install-pkg@0.4.0': - resolution: {integrity: sha512-vI73C0pFA9L+5v+djh0WSLXb8qYQGH5fX8nczaFe1OTI/8Fh03JS1Mov1V7urb6P3A2cBlBqZNjJIKv54+zVRw==} + '@antfu/install-pkg@0.4.1': + resolution: {integrity: sha512-T7yB5QNG29afhWVkVq7XeIMBa5U/vs9mX69YqayXypPRmYzUmzwnYltplHmPtZ4HPCn+sQKeXW8I47wCbuBOjw==} - '@antfu/ni@0.22.4': - resolution: {integrity: sha512-uCzh43cmUwQQcgv2BPyo0JWOMgXhcaE+F2I6Ucmfc7f9ir52lfA4OtZXdfL5D8cMa5GAwuCSNqOshIol8YN82g==} + '@antfu/ni@0.23.0': + resolution: {integrity: sha512-R5/GkA3PfGewAXLzz6lN5XagunF6PKeDtWt8dbZQXvHfebLS0qEczV+Azg/d+tKgSh6kRBpxvu8oSjARdPtw0A==} hasBin: true '@antfu/utils@0.7.10': @@ -943,38 +952,38 @@ packages: resolution: {integrity: sha512-YLPHc8yASwjNkmcDMQMY35yiWjoKAKnhUbPRszBRS0YgH+IXtsMp61j+yTcnCE3oO2DgP0U3iejLC8FTtKDC8Q==} engines: {node: '>=16.13'} - '@cloudflare/workerd-darwin-64@1.20240806.0': - resolution: {integrity: sha512-FqcVBBCO//I39K5F+HqE/v+UkqY1UrRnS653Jv+XsNNH9TpX5fTs7VCKG4kDSnmxlAaKttyIN5sMEt7lpuNExQ==} + '@cloudflare/workerd-darwin-64@1.20240821.1': + resolution: {integrity: sha512-CDBpfZKrSy4YrIdqS84z67r3Tzal2pOhjCsIb63IuCnvVes59/ft1qhczBzk9EffeOE2iTCrA4YBT7Sbn7USew==} engines: {node: '>=16'} cpu: [x64] os: [darwin] - '@cloudflare/workerd-darwin-arm64@1.20240806.0': - resolution: {integrity: sha512-8c3KvmzYp/wg+82KHSOzDetJK+pThH4MTrU1OsjmsR2cUfedm5dk5Lah9/0Ld68+6A0umFACi4W2xJHs/RoBpA==} + '@cloudflare/workerd-darwin-arm64@1.20240821.1': + resolution: {integrity: sha512-Q+9RedvNbPcEt/dKni1oN94OxbvuNAeJkgHmrLFTGF8zu21wzOhVkQeRNxcYxrMa9mfStc457NAg13OVCj2kHQ==} engines: {node: '>=16'} cpu: [arm64] os: [darwin] - '@cloudflare/workerd-linux-64@1.20240806.0': - resolution: {integrity: sha512-/149Bpxw4e2p5QqnBc06g0mx+4sZYh9j0doilnt0wk/uqYkLp0DdXGMQVRB74sBLg2UD3wW8amn1w3KyFhK2tQ==} + '@cloudflare/workerd-linux-64@1.20240821.1': + resolution: {integrity: sha512-j6z3KsPtawrscoLuP985LbqFrmsJL6q1mvSXOXTqXGODAHIzGBipHARdOjms3UQqovzvqB2lQaQsZtLBwCZxtA==} engines: {node: '>=16'} cpu: [x64] os: [linux] - '@cloudflare/workerd-linux-arm64@1.20240806.0': - resolution: {integrity: sha512-lacDWY3S1rKL/xT6iMtTQJEKmTTKrBavPczInEuBFXElmrS6IwVjZwv8hhVm32piyNt/AuFu9BYoJALi9D85/g==} + '@cloudflare/workerd-linux-arm64@1.20240821.1': + resolution: {integrity: sha512-I9bHgZOxJQW0CV5gTdilyxzTG7ILzbTirehQWgfPx9X77E/7eIbR9sboOMgyeC69W4he0SKtpx0sYZuTJu4ERw==} engines: {node: '>=16'} cpu: [arm64] os: [linux] - '@cloudflare/workerd-windows-64@1.20240806.0': - resolution: {integrity: sha512-hC6JEfTSQK6//Lg+D54TLVn1ceTPY+fv4MXqDZIYlPP53iN+dL8Xd0utn2SG57UYdlL5FRAhm/EWHcATZg1RgA==} + '@cloudflare/workerd-windows-64@1.20240821.1': + resolution: {integrity: sha512-keC97QPArs6LWbPejQM7/Y8Jy8QqyaZow4/ZdsGo+QjlOLiZRDpAenfZx3CBUoWwEeFwQTl2FLO+8hV1SWFFYw==} engines: {node: '>=16'} cpu: [x64] os: [win32] - '@cloudflare/workers-shared@0.2.0': - resolution: {integrity: sha512-tIWLooWkBMuoKRk72lr6YrEtVlVdUTtAGVmPOnUroMrnri/9YLx+mVawL0/egDgSGmPbmvkdBFsUGRuI+aZmxg==} + '@cloudflare/workers-shared@0.4.1': + resolution: {integrity: sha512-nYh4r8JwOOjYIdH2zub++CmIKlkYFlpxI1nBHimoiHcytJXD/b7ldJ21TtfzUZMCgI78mxVlymMHA/ReaOxKlA==} engines: {node: '>=16.7.0'} '@cspotcode/source-map-support@0.8.1': @@ -1449,22 +1458,26 @@ packages: resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: - eslint: ^9.9.0 + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 '@eslint-community/regexpp@4.11.0': resolution: {integrity: sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/config-array@0.17.1': - resolution: {integrity: sha512-BlYOpej8AQ8Ev9xVqroV7a02JK3SkBAaN9GfMMH9W6Ch8FlQlkjGw4Ir7+FgYwfirivAf4t+GtzuAxqfukmISA==} + '@eslint/compat@1.1.1': + resolution: {integrity: sha512-lpHyRyplhGPL5mGEh6M9O5nnKk0Gz4bFI+Zu6tKlPpDUN7XshWvH9C/px4UVm87IAANE0W81CEsNGbS1KlzXpA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/config-array@0.18.0': + resolution: {integrity: sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/eslintrc@3.1.0': resolution: {integrity: sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/js@9.9.0': - resolution: {integrity: sha512-hhetes6ZHP3BlXLxmd8K2SNgkhNSi+UcecbnwWKwpP7kyi/uC75DJ1lOOBO3xrC4jyojtGE3YxKZPHfk4yrgug==} + '@eslint/js@9.9.1': + resolution: {integrity: sha512-xIDQRsfg5hNBqHz04H1R3scSVwmI+KUbqjsQKHKQ1DAUSaUjYPReZZmS/5PNiKu1fUvzDd6H7DEDKACSEhu+TQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/object-schema@2.1.4': @@ -1507,8 +1520,8 @@ packages: '@iconify/types@2.0.0': resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==} - '@iconify/utils@2.1.30': - resolution: {integrity: sha512-bY0IO5xLOlbzJBnjWLxknp6Sss3yla03sVY9VeUz9nT6dbc+EGKlLfCt+6uytJnWm5CUvTF/BNotsLWF7kI61A==} + '@iconify/utils@2.1.32': + resolution: {integrity: sha512-LeifFZPPKu28O3AEDpYJNdEbvS4/ojAPyIW+pF/vUpJTYnbTiXUHkCh0bwgFRzKvdpb8H4Fbfd/742++MF4fPQ==} '@isaacs/cliui@8.0.2': resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} @@ -1615,7 +1628,7 @@ packages: resolution: {integrity: sha512-EGI2te5ENk1coGeADSIwZ7G2Q8CJS2sF120T7jLw4xFw9n7wIOXHo+kIYRAoVpJAN+kmqZSoO3Fp4JtoNF4ReA==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: ^4.20.0 + rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 peerDependenciesMeta: rollup: optional: true @@ -1665,106 +1678,163 @@ packages: cpu: [arm] os: [android] + '@rollup/rollup-android-arm-eabi@4.21.2': + resolution: {integrity: sha512-fSuPrt0ZO8uXeS+xP3b+yYTCBUd05MoSp2N/MFOgjhhUhMmchXlpTQrTpI8T+YAwAQuK7MafsCOxW7VrPMrJcg==} + cpu: [arm] + os: [android] + '@rollup/rollup-android-arm64@4.21.0': resolution: {integrity: sha512-a1sR2zSK1B4eYkiZu17ZUZhmUQcKjk2/j9Me2IDjk1GHW7LB5Z35LEzj9iJch6gtUfsnvZs1ZNyDW2oZSThrkA==} cpu: [arm64] os: [android] + '@rollup/rollup-android-arm64@4.21.2': + resolution: {integrity: sha512-xGU5ZQmPlsjQS6tzTTGwMsnKUtu0WVbl0hYpTPauvbRAnmIvpInhJtgjj3mcuJpEiuUw4v1s4BimkdfDWlh7gA==} + cpu: [arm64] + os: [android] + '@rollup/rollup-darwin-arm64@4.21.0': resolution: {integrity: sha512-zOnKWLgDld/svhKO5PD9ozmL6roy5OQ5T4ThvdYZLpiOhEGY+dp2NwUmxK0Ld91LrbjrvtNAE0ERBwjqhZTRAA==} cpu: [arm64] os: [darwin] + '@rollup/rollup-darwin-arm64@4.21.2': + resolution: {integrity: sha512-99AhQ3/ZMxU7jw34Sq8brzXqWH/bMnf7ZVhvLk9QU2cOepbQSVTns6qoErJmSiAvU3InRqC2RRZ5ovh1KN0d0Q==} + cpu: [arm64] + os: [darwin] + '@rollup/rollup-darwin-x64@4.21.0': resolution: {integrity: sha512-7doS8br0xAkg48SKE2QNtMSFPFUlRdw9+votl27MvT46vo44ATBmdZdGysOevNELmZlfd+NEa0UYOA8f01WSrg==} cpu: [x64] os: [darwin] + '@rollup/rollup-darwin-x64@4.21.2': + resolution: {integrity: sha512-ZbRaUvw2iN/y37x6dY50D8m2BnDbBjlnMPotDi/qITMJ4sIxNY33HArjikDyakhSv0+ybdUxhWxE6kTI4oX26w==} + cpu: [x64] + os: [darwin] + '@rollup/rollup-linux-arm-gnueabihf@4.21.0': resolution: {integrity: sha512-pWJsfQjNWNGsoCq53KjMtwdJDmh/6NubwQcz52aEwLEuvx08bzcy6tOUuawAOncPnxz/3siRtd8hiQ32G1y8VA==} cpu: [arm] os: [linux] + '@rollup/rollup-linux-arm-gnueabihf@4.21.2': + resolution: {integrity: sha512-ztRJJMiE8nnU1YFcdbd9BcH6bGWG1z+jP+IPW2oDUAPxPjo9dverIOyXz76m6IPA6udEL12reYeLojzW2cYL7w==} + cpu: [arm] + os: [linux] + '@rollup/rollup-linux-arm-musleabihf@4.21.0': resolution: {integrity: sha512-efRIANsz3UHZrnZXuEvxS9LoCOWMGD1rweciD6uJQIx2myN3a8Im1FafZBzh7zk1RJ6oKcR16dU3UPldaKd83w==} cpu: [arm] os: [linux] + '@rollup/rollup-linux-arm-musleabihf@4.21.2': + resolution: {integrity: sha512-flOcGHDZajGKYpLV0JNc0VFH361M7rnV1ee+NTeC/BQQ1/0pllYcFmxpagltANYt8FYf9+kL6RSk80Ziwyhr7w==} + cpu: [arm] + os: [linux] + '@rollup/rollup-linux-arm64-gnu@4.21.0': resolution: {integrity: sha512-ZrPhydkTVhyeGTW94WJ8pnl1uroqVHM3j3hjdquwAcWnmivjAwOYjTEAuEDeJvGX7xv3Z9GAvrBkEzCgHq9U1w==} cpu: [arm64] os: [linux] + '@rollup/rollup-linux-arm64-gnu@4.21.2': + resolution: {integrity: sha512-69CF19Kp3TdMopyteO/LJbWufOzqqXzkrv4L2sP8kfMaAQ6iwky7NoXTp7bD6/irKgknDKM0P9E/1l5XxVQAhw==} + cpu: [arm64] + os: [linux] + '@rollup/rollup-linux-arm64-musl@4.21.0': resolution: {integrity: sha512-cfaupqd+UEFeURmqNP2eEvXqgbSox/LHOyN9/d2pSdV8xTrjdg3NgOFJCtc1vQ/jEke1qD0IejbBfxleBPHnPw==} cpu: [arm64] os: [linux] + '@rollup/rollup-linux-arm64-musl@4.21.2': + resolution: {integrity: sha512-48pD/fJkTiHAZTnZwR0VzHrao70/4MlzJrq0ZsILjLW/Ab/1XlVUStYyGt7tdyIiVSlGZbnliqmult/QGA2O2w==} + cpu: [arm64] + os: [linux] + '@rollup/rollup-linux-powerpc64le-gnu@4.21.0': resolution: {integrity: sha512-ZKPan1/RvAhrUylwBXC9t7B2hXdpb/ufeu22pG2psV7RN8roOfGurEghw1ySmX/CmDDHNTDDjY3lo9hRlgtaHg==} cpu: [ppc64] os: [linux] + '@rollup/rollup-linux-powerpc64le-gnu@4.21.2': + resolution: {integrity: sha512-cZdyuInj0ofc7mAQpKcPR2a2iu4YM4FQfuUzCVA2u4HI95lCwzjoPtdWjdpDKyHxI0UO82bLDoOaLfpZ/wviyQ==} + cpu: [ppc64] + os: [linux] + '@rollup/rollup-linux-riscv64-gnu@4.21.0': resolution: {integrity: sha512-H1eRaCwd5E8eS8leiS+o/NqMdljkcb1d6r2h4fKSsCXQilLKArq6WS7XBLDu80Yz+nMqHVFDquwcVrQmGr28rg==} cpu: [riscv64] os: [linux] + '@rollup/rollup-linux-riscv64-gnu@4.21.2': + resolution: {integrity: sha512-RL56JMT6NwQ0lXIQmMIWr1SW28z4E4pOhRRNqwWZeXpRlykRIlEpSWdsgNWJbYBEWD84eocjSGDu/XxbYeCmwg==} + cpu: [riscv64] + os: [linux] + '@rollup/rollup-linux-s390x-gnu@4.21.0': resolution: {integrity: sha512-zJ4hA+3b5tu8u7L58CCSI0A9N1vkfwPhWd/puGXwtZlsB5bTkwDNW/+JCU84+3QYmKpLi+XvHdmrlwUwDA6kqw==} cpu: [s390x] os: [linux] + '@rollup/rollup-linux-s390x-gnu@4.21.2': + resolution: {integrity: sha512-PMxkrWS9z38bCr3rWvDFVGD6sFeZJw4iQlhrup7ReGmfn7Oukrr/zweLhYX6v2/8J6Cep9IEA/SmjXjCmSbrMQ==} + cpu: [s390x] + os: [linux] + '@rollup/rollup-linux-x64-gnu@4.21.0': resolution: {integrity: sha512-e2hrvElFIh6kW/UNBQK/kzqMNY5mO+67YtEh9OA65RM5IJXYTWiXjX6fjIiPaqOkBthYF1EqgiZ6OXKcQsM0hg==} cpu: [x64] os: [linux] + '@rollup/rollup-linux-x64-gnu@4.21.2': + resolution: {integrity: sha512-B90tYAUoLhU22olrafY3JQCFLnT3NglazdwkHyxNDYF/zAxJt5fJUB/yBoWFoIQ7SQj+KLe3iL4BhOMa9fzgpw==} + cpu: [x64] + os: [linux] + '@rollup/rollup-linux-x64-musl@4.21.0': resolution: {integrity: sha512-1vvmgDdUSebVGXWX2lIcgRebqfQSff0hMEkLJyakQ9JQUbLDkEaMsPTLOmyccyC6IJ/l3FZuJbmrBw/u0A0uCQ==} cpu: [x64] os: [linux] + '@rollup/rollup-linux-x64-musl@4.21.2': + resolution: {integrity: sha512-7twFizNXudESmC9oneLGIUmoHiiLppz/Xs5uJQ4ShvE6234K0VB1/aJYU3f/4g7PhssLGKBVCC37uRkkOi8wjg==} + cpu: [x64] + os: [linux] + '@rollup/rollup-win32-arm64-msvc@4.21.0': resolution: {integrity: sha512-s5oFkZ/hFcrlAyBTONFY1TWndfyre1wOMwU+6KCpm/iatybvrRgmZVM+vCFwxmC5ZhdlgfE0N4XorsDpi7/4XQ==} cpu: [arm64] os: [win32] + '@rollup/rollup-win32-arm64-msvc@4.21.2': + resolution: {integrity: sha512-9rRero0E7qTeYf6+rFh3AErTNU1VCQg2mn7CQcI44vNUWM9Ze7MSRS/9RFuSsox+vstRt97+x3sOhEey024FRQ==} + cpu: [arm64] + os: [win32] + '@rollup/rollup-win32-ia32-msvc@4.21.0': resolution: {integrity: sha512-G9+TEqRnAA6nbpqyUqgTiopmnfgnMkR3kMukFBDsiyy23LZvUCpiUwjTRx6ezYCjJODXrh52rBR9oXvm+Fp5wg==} cpu: [ia32] os: [win32] + '@rollup/rollup-win32-ia32-msvc@4.21.2': + resolution: {integrity: sha512-5rA4vjlqgrpbFVVHX3qkrCo/fZTj1q0Xxpg+Z7yIo3J2AilW7t2+n6Q8Jrx+4MrYpAnjttTYF8rr7bP46BPzRw==} + cpu: [ia32] + os: [win32] + '@rollup/rollup-win32-x64-msvc@4.21.0': resolution: {integrity: sha512-2jsCDZwtQvRhejHLfZ1JY6w6kEuEtfF9nzYsZxzSlNVKDX+DpsDJ+Rbjkm74nvg2rdx0gwBS+IMdvwJuq3S9pQ==} cpu: [x64] os: [win32] - '@stylistic/eslint-plugin-js@2.6.4': - resolution: {integrity: sha512-kx1hS3xTvzxZLdr/DCU/dLBE++vcP97sHeEFX2QXhk1Ipa4K1rzPOLw1HCbf4mU3s+7kHP5eYpDe+QteEOFLug==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - eslint: '>=8.40.0' - - '@stylistic/eslint-plugin-jsx@2.6.4': - resolution: {integrity: sha512-bIvVhdtjmyu3S10V7QRIuawtCZSq9gRmzAX23ucjCOdSFzEwlq+di0IM0riBAvvQerrJL4SM6G3xgyPs8BSXIA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - eslint: '>=8.40.0' - - '@stylistic/eslint-plugin-plus@2.6.4': - resolution: {integrity: sha512-EuRvtxhf7Hv8OoMIePulP/6rBJIgPTu1l5GAm1780WcF1Cl8bOZXIn84Pdac5pNv6lVlzCOFm8MD3VE+2YROuA==} - peerDependencies: - eslint: '*' - - '@stylistic/eslint-plugin-ts@2.6.4': - resolution: {integrity: sha512-yxL8Hj6WkObw1jfiLpBzKy5yfxY6vwlwO4miq34ySErUjUecPV5jxfVbOe4q1QDPKemQGPq93v7sAQS5PzM8lA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - eslint: '>=8.40.0' + '@rollup/rollup-win32-x64-msvc@4.21.2': + resolution: {integrity: sha512-6UUxd0+SKomjdzuAcp+HAmxw1FlGBnl1v2yEPSabtx4lBfdXHDVsW7+lQkgz9cNFJGY3AWR7+V8P5BqkD9L9nA==} + cpu: [x64] + os: [win32] - '@stylistic/eslint-plugin@2.6.4': - resolution: {integrity: sha512-euUGnjzH8EOqEYTGk9dB2OBINp0FX1nuO7/k4fO82zNRBIKZgJoDwTLM4Ce+Om6W1Qmh1PrZjCr4jh4tMEXGPQ==} + '@stylistic/eslint-plugin@2.7.1': + resolution: {integrity: sha512-JqnHom8CP14oOgPhwTPbn0QgsBJwgNySQSe00V9GQQDlY1tEqZUlK4jM2DIOJ5nE+oXoy51vZWHnHkfZ6rEruw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: '>=8.40.0' @@ -1791,6 +1861,9 @@ packages: '@types/eslint@9.6.0': resolution: {integrity: sha512-gi6WQJ7cHRgZxtkQEoyHMppPjq9Kxo5Tjn2prSKDSmZrCz8TZ3jSRCeTJm+WoM+oB0WG37bRqLzaaU3q7JypGg==} + '@types/eslint@9.6.1': + resolution: {integrity: sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==} + '@types/estree@1.0.5': resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} @@ -1836,8 +1909,8 @@ packages: '@types/node-forge@1.3.11': resolution: {integrity: sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==} - '@types/node@22.5.0': - resolution: {integrity: sha512-DkFrJOe+rfdHTqqMg0bSNlGlQ85hSoh2TPzZyhHsXnMtligRWpxUySiyw8FY14ITt24HVCiQPWxS3KO/QlGmWg==} + '@types/node@22.5.1': + resolution: {integrity: sha512-KkHsxej0j9IW1KKOOAA/XBA0z08UFSrRQHErzEfA3Vgq57eXIMYboIlHJuYIfd+lwCQjtKqUu3UnmKbtUc9yRw==} '@types/normalize-package-data@2.4.4': resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} @@ -1851,8 +1924,8 @@ packages: '@types/web-bluetooth@0.0.20': resolution: {integrity: sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow==} - '@typescript-eslint/eslint-plugin@8.2.0': - resolution: {integrity: sha512-02tJIs655em7fvt9gps/+4k4OsKULYGtLBPJfOsmOq1+3cdClYiF0+d6mHu6qDnTcg88wJBkcPLpQhq7FyDz0A==} + '@typescript-eslint/eslint-plugin@8.3.0': + resolution: {integrity: sha512-FLAIn63G5KH+adZosDYiutqkOkYEx0nvcwNNfJAf+c7Ae/H35qWwTYvPZUKFj5AS+WfHG/WJJfWnDnyNUlp8UA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 @@ -1862,8 +1935,8 @@ packages: typescript: optional: true - '@typescript-eslint/parser@8.2.0': - resolution: {integrity: sha512-j3Di+o0lHgPrb7FxL3fdEy6LJ/j2NE8u+AP/5cQ9SKb+JLH6V6UHDqJ+e0hXBkHP1wn1YDFjYCS9LBQsZDlDEg==} + '@typescript-eslint/parser@8.3.0': + resolution: {integrity: sha512-h53RhVyLu6AtpUzVCYLPhZGL5jzTD9fZL+SYf/+hYOx2bDkyQXztXSc4tbvKYHzfMXExMLiL9CWqJmVz6+78IQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 @@ -1872,16 +1945,12 @@ packages: typescript: optional: true - '@typescript-eslint/scope-manager@7.18.0': - resolution: {integrity: sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==} - engines: {node: ^18.18.0 || >=20.0.0} - - '@typescript-eslint/scope-manager@8.2.0': - resolution: {integrity: sha512-OFn80B38yD6WwpoHU2Tz/fTz7CgFqInllBoC3WP+/jLbTb4gGPTy9HBSTsbDWkMdN55XlVU0mMDYAtgvlUspGw==} + '@typescript-eslint/scope-manager@8.3.0': + resolution: {integrity: sha512-mz2X8WcN2nVu5Hodku+IR8GgCOl4C0G/Z1ruaWN4dgec64kDBabuXyPAr+/RgJtumv8EEkqIzf3X2U5DUKB2eg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/type-utils@8.2.0': - resolution: {integrity: sha512-g1CfXGFMQdT5S+0PSO0fvGXUaiSkl73U1n9LTK5aRAFnPlJ8dLKkXr4AaLFvPedW8lVDoMgLLE3JN98ZZfsj0w==} + '@typescript-eslint/type-utils@8.3.0': + resolution: {integrity: sha512-wrV6qh//nLbfXZQoj32EXKmwHf4b7L+xXLrP3FZ0GOUU72gSvLjeWUl5J5Ue5IwRxIV1TfF73j/eaBapxx99Lg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '*' @@ -1893,21 +1962,12 @@ packages: resolution: {integrity: sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/types@8.2.0': - resolution: {integrity: sha512-6a9QSK396YqmiBKPkJtxsgZZZVjYQ6wQ/TlI0C65z7vInaETuC6HAHD98AGLC8DyIPqHytvNuS8bBVvNLKyqvQ==} + '@typescript-eslint/types@8.3.0': + resolution: {integrity: sha512-y6sSEeK+facMaAyixM36dQ5NVXTnKWunfD1Ft4xraYqxP0lC0POJmIaL/mw72CUMqjY9qfyVfXafMeaUj0noWw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@7.18.0': - resolution: {integrity: sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==} - engines: {node: ^18.18.0 || >=20.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/typescript-estree@8.2.0': - resolution: {integrity: sha512-kiG4EDUT4dImplOsbh47B1QnNmXSoUqOjWDvCJw/o8LgfD0yr7k2uy54D5Wm0j4t71Ge1NkynGhpWdS0dEIAUA==} + '@typescript-eslint/typescript-estree@8.3.0': + resolution: {integrity: sha512-Mq7FTHl0R36EmWlCJWojIC1qn/ZWo2YiWYc1XVtasJ7FIgjo0MVv9rZWXEE7IK2CGrtwe1dVOxWwqXUdNgfRCA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '*' @@ -1915,24 +1975,14 @@ packages: typescript: optional: true - '@typescript-eslint/utils@7.18.0': - resolution: {integrity: sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==} - engines: {node: ^18.18.0 || >=20.0.0} - peerDependencies: - eslint: ^8.56.0 - - '@typescript-eslint/utils@8.2.0': - resolution: {integrity: sha512-O46eaYKDlV3TvAVDNcoDzd5N550ckSe8G4phko++OCSC1dYIb9LTc3HDGYdWqWIAT5qDUKphO6sd9RrpIJJPfg==} + '@typescript-eslint/utils@8.3.0': + resolution: {integrity: sha512-F77WwqxIi/qGkIGOGXNBLV7nykwfjLsdauRB/DOFPdv6LTF3BHHkBpq81/b5iMPSF055oO2BiivDJV4ChvNtXA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - '@typescript-eslint/visitor-keys@7.18.0': - resolution: {integrity: sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==} - engines: {node: ^18.18.0 || >=20.0.0} - - '@typescript-eslint/visitor-keys@8.2.0': - resolution: {integrity: sha512-sbgsPMW9yLvS7IhCi8IpuK1oBmtbWUNP+hBdwl/I9nzqVsszGnNGti5r9dUtF5RLivHUFFIdRvLiTsPhzSyJ3Q==} + '@typescript-eslint/visitor-keys@8.3.0': + resolution: {integrity: sha512-RmZwrTbQ9QveF15m/Cl28n0LXD6ea2CjkhH5rQ55ewz3H24w+AMCJHPVYaZ8/0HoG8Z3cLLFFycRXxeO2tz9FA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@typescript/vfs@1.5.0': @@ -1941,89 +1991,89 @@ packages: '@ungap/structured-clone@1.2.0': resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} - '@unocss/astro@0.62.2': - resolution: {integrity: sha512-RUPGmbNEyfbBOuS22PC23Dy9gmNBQHpLCmpuj6ehr6UcKeRy3xOwlbJDnCv08Vfd3mp3n45Va24wTK/yM6I1YQ==} + '@unocss/astro@0.62.3': + resolution: {integrity: sha512-C6ZdyLbLDS0LebwmgwVItLNAOSkL/tvVWNRd1i3Jy5uj1vPxlrw+3lIYiHjEofn0GFpBiwlv5+OCvO1Xpq5MqA==} peerDependencies: vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 peerDependenciesMeta: vite: optional: true - '@unocss/cli@0.62.2': - resolution: {integrity: sha512-M1Itw4CVTnoBS1rTLYZvEV5lhq3r711Dwes4GlCHmCwuwEJcp7b83Saim2x6+h1BZbMY3CxgendGNQAIJ9rHkw==} + '@unocss/cli@0.62.3': + resolution: {integrity: sha512-yEl1iNKkBVpo8+i8gzveM5/0/vOVe6m8+FmuSDuKeSPJnYMhI1mAn+OCKFb/I+qEeLbRPXebbJUUB1xZNzya+w==} engines: {node: '>=14'} hasBin: true - '@unocss/config@0.62.2': - resolution: {integrity: sha512-TgWhO0hkTADnuSgcUZvFP3i4AVpaiMvr41hhQqCPQTaiLMRrroXFnqL33cpkEbHLIfbTh74pXrDxnzMLaEKVdQ==} + '@unocss/config@0.62.3': + resolution: {integrity: sha512-zYOvFE0HfGIbnP/AvsbAlJpPRx9CQyXzL11m/8zgsHW5SGlJIYxuTll83l/xu026G5mPiksy7quoEOEgCLslqw==} engines: {node: '>=14'} - '@unocss/core@0.62.2': - resolution: {integrity: sha512-86jEFUJ/PSwdb1qqiEi0lWlewfKLQwiH+JAfnh8c2hLjOPVmCkb0nnsYSMh8drmtN5kpk6E06mN0IrKMO7OnvQ==} + '@unocss/core@0.62.3': + resolution: {integrity: sha512-Pfyrj8S7jq9K1QXD6Z5BCeiQavaHpbMN5q958/kmdbNGp57hOg1e346fMJAvgPjLBR+lE/hgZEsDrijtRiZXnw==} - '@unocss/extractor-arbitrary-variants@0.62.2': - resolution: {integrity: sha512-k0+QifbKe3Wp6dznQIhn1bQ/shR8yMk1ypfWQFOAr0ylXXlKMXFxfpRyxH3awbTDRBpi/SxIIaBTAzflGxBSgg==} + '@unocss/extractor-arbitrary-variants@0.62.3': + resolution: {integrity: sha512-9ZscWyXEwDZif+b56xZyJFHwJOjdMXmj+6x96jOsnRNBzwT9eW7YcGCErP1ih/q1S6KmuRrHM/JOXMBQ6H4qlw==} - '@unocss/inspector@0.62.2': - resolution: {integrity: sha512-P2J8xx4MeB8VHCwjick+PzMyLPKvUNZBuUxuFVhh3xpMsbGlvSIKMH4PRCriwWih+7wqHlrI+fv1gAjoiGHe3Q==} + '@unocss/inspector@0.62.3': + resolution: {integrity: sha512-nTSXOf7YimFPxEYJo5VfP5wlMgYOCjlv3c5Ub/0fynCJXZNb89SFeU05ABXkEgg/FfiobVBTscikLc6guW8eHQ==} - '@unocss/postcss@0.62.2': - resolution: {integrity: sha512-x0vSz1l2eWpkfqLPcAO0kO36oKcMqtC6JmmM2tRB9WSxiz6xu9qHibfj6VXLe+KqggvFRnKObok4Fr1GIe0Srw==} + '@unocss/postcss@0.62.3': + resolution: {integrity: sha512-CwL378ef0QazduXqlaGcWgKJAzemBUxdhapWWiRqI8sXC/eXht5xK6nS1JxqADDuxosgqsGdvcCGmP8ZFrEyiA==} engines: {node: '>=14'} peerDependencies: postcss: ^8.4.21 - '@unocss/preset-attributify@0.62.2': - resolution: {integrity: sha512-QBxm62Lq6O7pN47TBD25LrH6CXZGDyTORguKL+IvIxuf8/VTEwwLl1z9FJ10u+kTwHX11RDnAF7KmZsTpcezgA==} + '@unocss/preset-attributify@0.62.3': + resolution: {integrity: sha512-ORNwyLobGTwnn/tK5yHnMabdJU6Mr/C4LyFH7G8VSLit/aVS0fFa795kJXwxfbqQoQ7Gw0Zxs9oE5RXI0/0y7g==} - '@unocss/preset-icons@0.62.2': - resolution: {integrity: sha512-cj5fhhgyMK2Wio2nsR4hJuorRtqrgeX8sApffCRxpdKb/rg0De7IzXlTRQvAivFingRLXxwMKcpR4hgw/kw/pA==} + '@unocss/preset-icons@0.62.3': + resolution: {integrity: sha512-Ie+5RTyac1Q5CNB/s/4aB4VTHAQgQqsI5hshMNLkJ0Jj1lWxodUdEbCRKjXDalRjAXOS9vsLjfJ35ozJ1RSTIQ==} - '@unocss/preset-mini@0.62.2': - resolution: {integrity: sha512-NeyYGwGCmMbjzMMhQGzn4qk74LYIsLM4zpQru2Krt1snw1DgVpp3iV8hCWIH4y0Y+ud+K5SUFMAvIe18vq2OQw==} + '@unocss/preset-mini@0.62.3': + resolution: {integrity: sha512-dn/8ubeW2ry/ZF3iKxdQHnS0l3EBibt0rIOE/XVwx24ub6pRzclU4r7xHnXeqvAFOO9PoiKDGgFR92m6R2MxyQ==} - '@unocss/preset-tagify@0.62.2': - resolution: {integrity: sha512-xfxyKqBxBFOtKRifpM+9co9GqXj5PmGNdLcoWoYninmtO1CvCc50IBIob2h85X18jsa6Vm3sATzEfgOSggcGzQ==} + '@unocss/preset-tagify@0.62.3': + resolution: {integrity: sha512-8BpUCZ5sjOZOzBKtu7ecfhRggwwPF78IqeqeNjI+XYRs8r7TBBcUVeF6zUkwhlX/TbtREkw2OZj0Iusa9CBO+A==} - '@unocss/preset-typography@0.62.2': - resolution: {integrity: sha512-NnoblEZX+dDZeM537l6HcNfPJC8KPGcD5LimVO/HS7GuDarTXeu1JgnCqYc2d5q69OAbyfJfO9k1iKqnAHkqug==} + '@unocss/preset-typography@0.62.3': + resolution: {integrity: sha512-GjtDgQ1Jec/5RNmnyGMWMgyPdStWcFG/S+NUfOuroRsGSI8PDxihVOwFu5CwvOB2J2r6mRNLeUYMluE05jW3sw==} - '@unocss/preset-uno@0.62.2': - resolution: {integrity: sha512-oMwSP3haSiyiSqI0KqrYkda8mnkWu9lJDdm4bZ5iO6v/rDxmcydBr7MEl8iEy9EdOy1lv3xsyzwMrRer392JEw==} + '@unocss/preset-uno@0.62.3': + resolution: {integrity: sha512-RlsrMlpEzoZqB0lr5VvlkHGpEgr0Vp6z4Q/7DjW5t7mi20Z2i8olaLGWM0TO1wKoRi8bxc6HP0RHUS7pHtZxBA==} - '@unocss/preset-web-fonts@0.62.2': - resolution: {integrity: sha512-LawmODVu8jjluVGxCIFePkqHLPkhU6S3xJIq8harZAt/uzfkosO3ozzWrRHcVR7SQGPWdATie0ggTFcmVRxFzw==} + '@unocss/preset-web-fonts@0.62.3': + resolution: {integrity: sha512-rGEouncGFwcUY1cjkQ/ZoSmEzOeSi3Yk4YAfHGyS0ff5zKuTDWZgivB8hh/mTtvRzZunIL+FW1+1z5G9rUwjgQ==} - '@unocss/preset-wind@0.62.2': - resolution: {integrity: sha512-1pohITLsjhUfEA774Ftz2EAaolbUmhM8yircxTaQEty9qYF1dEcLM2Fm6Y0+ZNhPOcKCAOYZkExuu6JEjbEACg==} + '@unocss/preset-wind@0.62.3': + resolution: {integrity: sha512-6+VNce1he1U5EXKlXRwTIPn8KeK6bZ2jAEgcCxk8mFy8SzOlLeYzXCI9lcdiWRTjIeIiK5iSaUqmsQFtKdTyQg==} - '@unocss/reset@0.62.2': - resolution: {integrity: sha512-5hgxcBMMbw5tMSSd4kUX70H0pZK9SwRHtm8Q4VvDV6xOZJa2/fvFR4qyxbuAM9nhOwYUqAAX23lxfmY0bXX73A==} + '@unocss/reset@0.62.3': + resolution: {integrity: sha512-XVKPkbm8y9SGzRaG3x+HygGZURm50MvKLVHXsbxi67RbIir9Ouyt9hQTV6Xs3RicRZFWOpJx3wMRb8iKUOe5Zw==} - '@unocss/rule-utils@0.62.2': - resolution: {integrity: sha512-0za00pkDHsGZhiXBiZfOuUyT+GjCInPxMXj+QsybRU4UrjJS+d3gAteC34BqNFfDAoKQb9G5q9etXztcNHXQbg==} + '@unocss/rule-utils@0.62.3': + resolution: {integrity: sha512-qI37jHH//XzyR5Y2aN3Kpo4lQrQO+CaiXpqPSwMLYh2bIypc2RQVpqGVtU736x0eA6IIx41XEkKzUW+VtvJvmg==} engines: {node: '>=14'} - '@unocss/scope@0.62.2': - resolution: {integrity: sha512-AEQ1CV8s8NAkBJPO1NCSjADoNyCOYiqkW1DXMvB9mA6lTff5SgmFqIiNmBtMsnBs7/dO0iOSMEDIpdgtDg/KhA==} + '@unocss/scope@0.62.3': + resolution: {integrity: sha512-TJGmFfsMrTo8DBJ7CJupIqObpgij+w4jCHMBf1uu0/9jbm63dH6WGcrl3zf5mm6UBTeLmB0RwJ8K4hs7LtrBDQ==} - '@unocss/transformer-attributify-jsx-babel@0.62.2': - resolution: {integrity: sha512-t0/3TFc29vwurjRR0akGkYv1VdzqLXHJn6d+d4BSzYhsH0YIhNFxU7r7Gf9iea38IqW6av+OlPBgCZknbG9K+g==} + '@unocss/transformer-attributify-jsx-babel@0.62.3': + resolution: {integrity: sha512-3yFZPSoN8VLiAGUAFIyfDRv9HQYTKFGKawDdMM9ATZmSEYOecJnYjS2HayT1P9kzGwBwuKoFjcX50JH1PuNokg==} - '@unocss/transformer-attributify-jsx@0.62.2': - resolution: {integrity: sha512-Lgv6OH3rtO7fn0DzBH8C2tEN4247d2Bsm9eP3jIU2w/jTxuv+1XEh8Wir67winLdn/ZNBzVxJb3popnNo9qhcA==} + '@unocss/transformer-attributify-jsx@0.62.3': + resolution: {integrity: sha512-AutidZj26QW1vLQzuW/aQigC/5ZnIeqGYIBeb/O+FKKt0bU411tHrHnA1iV4CoxIdWJTkw2sGAl6z6YvwAYG6w==} - '@unocss/transformer-compile-class@0.62.2': - resolution: {integrity: sha512-Kjyt7+NYLBRUSY0OA8tC6CDTC0qh9HkNt+WEEWvtTcrWwRvTU0VUroTkndHI3Fmv/yczuwmPXI71J+jJeLBQ6w==} + '@unocss/transformer-compile-class@0.62.3': + resolution: {integrity: sha512-1hf+99wJXzQXQPz9xR0AiTB3vBXT5RiEyugIX95HFx7EvSE/P17RP90yKEKZtDZRUwGiz2vIyySlxcKTFak9Vg==} - '@unocss/transformer-directives@0.62.2': - resolution: {integrity: sha512-5ZGTmsXkAkFd7pHjHkGy6LGgxhh6bPbZ3jLltf98OhgBZH558y9iui6LKq3n2LpUsSZox6ey3yh1AibvakQeeg==} + '@unocss/transformer-directives@0.62.3': + resolution: {integrity: sha512-HqHwFOA7DfxD/A1ROZIp8Dr8iZcE0z4w3VQtViWPQ89Fqmb7p2wCPGekk+8yW5PAltpynvHE4ahJEto5xjdg6w==} - '@unocss/transformer-variant-group@0.62.2': - resolution: {integrity: sha512-WknoFYRAik2NJfo0AHoId912jzzZaOV9bKgoSh7Lpx7dMxgngfU027Gx7Wnd8mR+TSqQzsfYaXdPa+PqyTv6Xg==} + '@unocss/transformer-variant-group@0.62.3': + resolution: {integrity: sha512-oNX1SdfWemz0GWGSXACu8NevM0t2l44j2ancnooNkNz3l1+z1nbn4vFwfsJCOqOaoVm4ZqxaiQ8HIx81ZSiU1A==} - '@unocss/vite@0.62.2': - resolution: {integrity: sha512-ES39SL7+0UDTM5IvIiDVodH4duUIzGXug/bhuDHHhhtUBoengH+Oe59jURzRChDj4Pf3cyqMtTwo5amoz3lV2Q==} + '@unocss/vite@0.62.3': + resolution: {integrity: sha512-RrqF6Go8s0BGpwRfkOiLuO+n3CUE/CXxGqb0ipbUARhmNWJlekE3YPfayqImSEnCcImpaPgtVGv6Y0u3kLGG/w==} peerDependencies: vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 @@ -2039,8 +2089,8 @@ packages: peerDependencies: vitest: 2.0.5 - '@vitest/eslint-plugin@1.0.3': - resolution: {integrity: sha512-7hTONh+lqN+TEimHy2aWVdHVqYohcxLGD4yYBwSVvhyiti/j9CqBNMQvOa6xLoVcEtaWAoCCDbYgvxwNqA4lsA==} + '@vitest/eslint-plugin@1.1.0': + resolution: {integrity: sha512-Ur80Y27Wbw8gFHJ3cv6vypcjXmrx6QHfw+q435h6Q2L+tf+h4Xf5pJTCL4YU/Jps9EVeggQxS85OcUZU7sdXRw==} peerDependencies: '@typescript-eslint/utils': '>= 8.0' eslint: '>= 8.57.0' @@ -2075,11 +2125,17 @@ packages: '@volar/language-core@2.4.0-alpha.18': resolution: {integrity: sha512-JAYeJvYQQROmVRtSBIczaPjP3DX4QW1fOqW1Ebs0d3Y3EwSNRglz03dSv0Dm61dzd0Yx3WgTW3hndDnTQqgmyg==} + '@volar/language-core@2.4.1': + resolution: {integrity: sha512-9AKhC7Qn2mQYxj7Dz3bVxeOk7gGJladhWixUYKef/o0o7Bm4an+A3XvmcTHVqZ8stE6lBVH++g050tBtJ4TZPQ==} + '@volar/source-map@2.4.0-alpha.18': resolution: {integrity: sha512-MTeCV9MUwwsH0sNFiZwKtFrrVZUK6p8ioZs3xFzHc2cvDXHWlYN3bChdQtwKX+FY2HG6H3CfAu1pKijolzIQ8g==} - '@volar/typescript@2.4.0-alpha.18': - resolution: {integrity: sha512-sXh5Y8sqGUkgxpMWUGvRXggxYHAVxg0Pa1C42lQZuPDrW6vHJPR0VCK8Sr7WJsAW530HuNQT/ZIskmXtxjybMQ==} + '@volar/source-map@2.4.1': + resolution: {integrity: sha512-Xq6ep3OZg9xUqN90jEgB9ztX5SsTz1yiV8wiQbcYNjWkek+Ie3dc8l7AVt3EhDm9mSIR58oWczHkzM2H6HIsmQ==} + + '@volar/typescript@2.4.1': + resolution: {integrity: sha512-UoRzC0PXcwajFQTu8XxKSYNsWNBtVja6Y9gC8eLv7kYm+UEKJCcZ8g7dialsOYA0HKs3Vpg57MeCsawFLC6m9Q==} '@vue/compiler-core@3.4.38': resolution: {integrity: sha512-8IQOTCWnLFqfHzOGm9+P8OPSEDukgg3Huc92qSG49if/xI2SAwLHQO2qaPQbjCWPBcQoO1WYfXfTACUrWV3c5A==} @@ -2116,6 +2172,14 @@ packages: typescript: optional: true + '@vue/language-core@2.1.2': + resolution: {integrity: sha512-tt2J7C+l0J/T5PaLhJ0jvCCi0JNwu3e8azWTYxW3jmAW5B/dac0g5UxmI7l59CQgCGFotqUqI3tXjfZgoWNtog==} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + '@vue/reactivity@3.4.38': resolution: {integrity: sha512-4vl4wMMVniLsSYYeldAKzbk72+D3hUnkw9z8lDeJacTxAkXeDAP1uE9xr2+aKIN0ipOL8EG2GPouVTH6yF7Gnw==} @@ -2136,8 +2200,8 @@ packages: '@vueuse/core@11.0.0': resolution: {integrity: sha512-shibzNGjmRjZucEm97B8V0NO5J3vPHMCE/mltxQ3vHezbDoFQBMtK11XsfwfPionxSbo+buqPmsCljtYuXIBpw==} - '@vueuse/core@11.0.1': - resolution: {integrity: sha512-YTrekI18WwEyP3h168Fir94G/HNC27wvXJI21Alm0sPOwvhihfkrvHIe+5PNJq+MpgWdRcsjvE/38JaoKrgZhQ==} + '@vueuse/core@11.0.3': + resolution: {integrity: sha512-RENlh64+SYA9XMExmmH1a3TPqeIuJBNNB/63GT35MZI+zpru3oMRUA6cEFr9HmGqEgUisurwGwnIieF6qu3aXw==} '@vueuse/integrations@11.0.0': resolution: {integrity: sha512-B95nBX4B2q2ZETBDldrKARM/fYXBHfwdo44UbHBq4bUTi25lrlc8MwAZGqEoRvdV4ND9T6O1Rb9e4kaCJFXnqw==} @@ -2183,14 +2247,14 @@ packages: '@vueuse/metadata@11.0.0': resolution: {integrity: sha512-0TKsAVT0iUOAPWyc9N79xWYfovJVPATiOPVKByG6jmAYdDiwvMVm9xXJ5hp4I8nZDxpCcYlLq/Rg9w1Z/jrGcg==} - '@vueuse/metadata@11.0.1': - resolution: {integrity: sha512-dTFvuHFAjLYOiSd+t9Sk7xUiuL6jbfay/eX+g+jaipXXlwKur2VCqBCZX+jfu+2vROUGcUsdn3fJR9KkpadIOg==} + '@vueuse/metadata@11.0.3': + resolution: {integrity: sha512-+FtbO4SD5WpsOcQTcC0hAhNlOid6QNLzqedtquTtQ+CRNBoAt9GuV07c6KNHK1wCmlq8DFPwgiLF2rXwgSHX5Q==} '@vueuse/shared@11.0.0': resolution: {integrity: sha512-i4ZmOrIEjSsL94uAEt3hz88UCz93fMyP/fba9S+vypX90fKg3uYX9cThqvWc9aXxuTzR0UGhOKOTQd//Goh1nQ==} - '@vueuse/shared@11.0.1': - resolution: {integrity: sha512-eAPf5CQB3HR0S76HqrhjBqFYstZfiHWZq8xF9EQmobGBkrhPfErJEhr8aMNQMqd6MkENIx2pblIEfJGlHpClug==} + '@vueuse/shared@11.0.3': + resolution: {integrity: sha512-0rY2m6HS5t27n/Vp5cTDsKTlNnimCqsbh/fmT2LgE+aaU42EMfXo8+bNX91W9I7DDmxfuACXMmrd7d79JxkqWA==} acorn-jsx@5.3.2: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} @@ -2317,8 +2381,8 @@ packages: resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} engines: {node: '>=6'} - bumpp@9.5.1: - resolution: {integrity: sha512-crWpuPh5/SO84HTsIIQbwFpjwg8Zadm3udyj2YfnSSijCvjxwdtmXy2vQh6GLMWJ5LgKwmmMIn85qJ4AIHKlhg==} + bumpp@9.5.2: + resolution: {integrity: sha512-L0awRXkMY4MLasVy3dyfM+2aU2Q4tyCDU45O7hxiB2SHZF8jurw3nmyifrtFJ4cI/JZIvu5ChCtf0i8yLfnohQ==} engines: {node: '>=10'} hasBin: true @@ -2902,8 +2966,10 @@ packages: peerDependencies: eslint: '>=6.0.0' - eslint-config-flat-gitignore@0.1.8: - resolution: {integrity: sha512-OEUbS2wzzYtUfshjOqzFo4Bl4lHykXUdM08TCnYNl7ki+niW4Q1R0j0FDFDr0vjVsI5ZFOz5LvluxOP+Ew+dYw==} + eslint-config-flat-gitignore@0.3.0: + resolution: {integrity: sha512-0Ndxo4qGhcewjTzw52TK06Mc00aDtHNTdeeW2JfONgDcLkRO/n/BteMRzNVpLQYxdCC/dFEilfM9fjjpGIJ9Og==} + peerDependencies: + eslint: ^9.5.0 eslint-flat-config-utils@0.3.1: resolution: {integrity: sha512-eFT3EaoJN1hlN97xw4FIEX//h0TiFUobgl2l5uLkIwhVN9ahGq95Pbs+i1/B5UACA78LO3rco3JzuvxLdTUOPA==} @@ -2924,8 +2990,8 @@ packages: eslint-parser-plain@0.1.0: resolution: {integrity: sha512-oOeA6FWU0UJT/Rxc3XF5Cq0nbIZbylm7j8+plqq0CZoE6m4u32OXJrR+9iy4srGMmF6v6pmgvP1zPxSRIGh3sg==} - eslint-plugin-antfu@2.3.5: - resolution: {integrity: sha512-q3S9q7O176sd5VyPKksN1WGtB0l8W1jeWs61xWAmbM5JdZN8q9e0Vmm+tY/YOygHfn1eK9uE4/MGyZBebdtgLA==} + eslint-plugin-antfu@2.3.6: + resolution: {integrity: sha512-31VwbU1Yd4BFNUUPQEazKyP79f3c+ohJtq5iZIuw38JjkRQdQAcF/31Kjr0DOKZXVDkeeNPrttKidrr3xhnhOA==} peerDependencies: eslint: '*' @@ -2945,11 +3011,11 @@ packages: peerDependencies: eslint: ^8.40.0 || ^9.0.0 - eslint-plugin-import-x@3.1.0: - resolution: {integrity: sha512-/UbPA+bYY7nIxcjL3kpcDY3UNdoLHFhyBFzHox2M0ypcUoueTn6woZUUmzzi5et/dXChksasYYFeKE2wshOrhg==} - engines: {node: '>=16'} + eslint-plugin-import-x@4.1.1: + resolution: {integrity: sha512-dBEM8fACIFNt4H7GoOaRmnH6evJW6JSTJTYYgmRd3vI4geBTjgDM/JyUDKUwIw0HDSyI+u7Vs3vFRXUo/BOAtA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: ^8.56.0 || ^9.0.0-0 + eslint: ^8.57.0 || ^9.0.0 eslint-plugin-jsdoc@50.2.2: resolution: {integrity: sha512-i0ZMWA199DG7sjxlzXn5AeYZxpRfMJjDPUl7lL9eJJX8TPRoIaxJU4ys/joP5faM5AXE1eqW/dslCj3uj4Nqpg==} @@ -2979,8 +3045,8 @@ packages: resolution: {integrity: sha512-brcKcxGnISN2CcVhXJ/kEQlNa0MEfGRtwKtWA16SkqXHKitaKIMrfemJKLKX1YqDU5C/5JY3PvZXd5jEW04e0Q==} engines: {node: '>=5.0.0'} - eslint-plugin-perfectionist@3.2.0: - resolution: {integrity: sha512-cX1aztMbSfRWPKJH8CD+gadrbkS+RNH1OGWuNGws8J6rHzYYhawxWTU/yzMYjq2IRJCpBCfhgfa7BHRXQYxLHA==} + eslint-plugin-perfectionist@3.3.0: + resolution: {integrity: sha512-sGgShkEqDBqIZ3WlenGHwLe1cl3vHKTfeh9b1XXAamaxSC7AY4Os0jdNCXnGJW4l0TlpismT5t2r7CXY7sfKlw==} engines: {node: ^18.0.0 || >=20.0.0} peerDependencies: astro-eslint-parser: ^1.0.2 @@ -3059,8 +3125,8 @@ packages: resolution: {integrity: sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint@9.9.0: - resolution: {integrity: sha512-JfiKJrbx0506OEerjK2Y1QlldtBxkAlLxT5OEcRF8uaQ86noDe2k31Vw9rnSWv+MXZHj7OOUV/dA0AhdLFcyvA==} + eslint@9.9.1: + resolution: {integrity: sha512-dHvhrbfr4xFQ9/dq+jcVneZMyRYLjggWjk6RVsIiHsP8Rz6yZ8LvZ//iU4TrZF+SXWG+JkNF2OyiZRvzgRDqMg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true peerDependencies: @@ -3109,10 +3175,6 @@ packages: eventemitter3@5.0.1: resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} - execa@5.1.1: - resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} - engines: {node: '>=10'} - execa@8.0.1: resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} engines: {node: '>=16.17'} @@ -3254,10 +3316,6 @@ packages: get-source@2.0.12: resolution: {integrity: sha512-X5+4+iD+HoSeEED+uwrQ07BOQr0kEDFMVqqpBuI+RaZBpBpHCuXxo70bjar6f0b0u/DQJsJ7ssurpP0V60Az+w==} - get-stream@6.0.1: - resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} - engines: {node: '>=10'} - get-stream@8.0.1: resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} engines: {node: '>=16'} @@ -3319,10 +3377,6 @@ packages: resolution: {integrity: sha512-sSs4inE1FB2YQiymcmTv6NWENryABjUNPeWhOvmn4SjtKybglsyPZxFB3U1/+L1bYi0rNZDqCLlHyLYDl1Pq5A==} engines: {node: '>=8'} - globby@11.1.0: - resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} - engines: {node: '>=10'} - globby@13.2.2: resolution: {integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -3367,6 +3421,9 @@ packages: hast-util-to-html@9.0.1: resolution: {integrity: sha512-hZOofyZANbyWo+9RP75xIDV/gq+OUKx+T46IlwERnKmfpwp81XBFbT9mi26ws+SJchA4RVUQwIBJpqEOBhMzEQ==} + hast-util-to-html@9.0.2: + resolution: {integrity: sha512-RP5wNpj5nm1Z8cloDv4Sl4RS8jH5HYa0v93YB6Wb4poEzgMo/dAAL0KcT4974dCjcNG5pkLqTImeFHHCwwfY3g==} + hast-util-to-parse5@8.0.0: resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==} @@ -3413,10 +3470,6 @@ packages: resolution: {integrity: sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==} engines: {node: '>= 14'} - human-signals@2.1.0: - resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} - engines: {node: '>=10.17.0'} - human-signals@5.0.0: resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} engines: {node: '>=16.17.0'} @@ -3533,10 +3586,6 @@ packages: is-reference@1.2.1: resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==} - is-stream@2.0.1: - resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} - engines: {node: '>=8'} - is-stream@3.0.0: resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -3980,10 +4029,6 @@ packages: engines: {node: '>=10.0.0'} hasBin: true - mimic-fn@2.1.0: - resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} - engines: {node: '>=6'} - mimic-fn@4.0.0: resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} engines: {node: '>=12'} @@ -3996,8 +4041,8 @@ packages: resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} engines: {node: '>=4'} - miniflare@3.20240806.1: - resolution: {integrity: sha512-wJq3YQYx9k83L2CNYtxvwWvXSi+uHrC6aFoXYSbzhxIDlUWvMEqippj+3HeKLgsggC31nHJab3b1Pifg9IxIFQ==} + miniflare@3.20240821.0: + resolution: {integrity: sha512-4BhLGpssQxM/O6TZmJ10GkT3wBJK6emFkZ3V87/HyvQmVt8zMxEBvyw5uv6kdtp+7F54Nw6IKFJjPUL8rFVQrQ==} engines: {node: '>=16.13'} hasBin: true @@ -4081,8 +4126,8 @@ packages: mlly@1.7.1: resolution: {integrity: sha512-rrVRZRELyQzrIUAVMHxP97kv+G786pHmOKzuFII8zDYahFBS7qnHh2AlYSl1GAHhaMPCz6/oHjVMcfFYgFYHgA==} - monaco-editor-core@0.50.0: - resolution: {integrity: sha512-XKdublTat9qDKwJhMbm6nnTUKA75MU7jWVooZeXcZKP0/y2jscNWQ9FpCiRtWk33Teemihx155WQ7o7xgf89eA==} + monaco-editor-core@0.51.0: + resolution: {integrity: sha512-wNWSPfvQirGt2vxn9DzlwnXURPH20kyND60UZXD+Vk9x7+QbUpV5Cc1J5ojlSq3lxu1dEIMpG5gbL7oPJSCRWw==} mri@1.2.0: resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} @@ -4152,10 +4197,6 @@ packages: resolution: {integrity: sha512-5+bKQRH0J1xG1uZ1zMNvxW0VEyoNWgJpY9UDuluPFLKDfJ9u2JmmjmTJV1srBGQOROfdBMiVvnH2Zvpbm+xkVA==} engines: {node: ^16.14.0 || >=18.0.0} - npm-run-path@4.0.1: - resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} - engines: {node: '>=8'} - npm-run-path@5.2.0: resolution: {integrity: sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -4177,10 +4218,6 @@ packages: once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} - onetime@5.1.2: - resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} - engines: {node: '>=6'} - onetime@6.0.0: resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} engines: {node: '>=12'} @@ -4189,6 +4226,9 @@ packages: resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==} engines: {node: '>=18'} + oniguruma-to-js@0.2.3: + resolution: {integrity: sha512-BTm2ZRpn+6A2NmaXvrkPmksLThXAX9uo2gfpetx3V/goWq68H1pXUkguBbQWxcaKGeNTfUFagxRfxDRbtZsw2Q==} + optionator@0.9.3: resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} engines: {node: '>= 0.8.0'} @@ -4220,8 +4260,8 @@ packages: package-json-from-dist@1.0.0: resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==} - package-manager-detector@0.1.2: - resolution: {integrity: sha512-iePyefLTOm2gEzbaZKSW+eBMjg+UYsQvUKxmvGXAQ987K16efBg10MxIjZs08iyX+DY2/owKY9DIdu193kX33w==} + package-manager-detector@0.2.0: + resolution: {integrity: sha512-E385OSk9qDcXhcM9LNSe4sdhx8a9mAPrZ4sMLW+tmxl5ZuGtPUcdFu+MPP2jbgiWAZ6Pfe5soGFMd+0Db5Vrog==} parent-module@1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} @@ -4331,8 +4371,8 @@ packages: resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} engines: {node: '>=4'} - pnpm@9.8.0: - resolution: {integrity: sha512-jkw1UPtQDoCNvDC7DOTdHrYU4wscVSRfIRWR7CzfnGEcq9NOE2S0L1ZL1Us5Re0PSdYdG78uyb10uGb83HIydg==} + pnpm@9.9.0: + resolution: {integrity: sha512-YMGKzROL/2ldM5vmrRP36TbupnRWYNTMSndtUkfFQNDt7hpWNpXBg6ZuuRfviPK0/rH8JfMqetytx6rzQ46ZwQ==} engines: {node: '>=18.12'} hasBin: true @@ -4696,6 +4736,11 @@ packages: engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true + rollup@4.21.2: + resolution: {integrity: sha512-e3TapAgYf9xjdLvKQCkQTnbTKd4a6jwlpQSJJFokHGaX2IVjoEqkIIhiQfqsi0cdwlOD+tQGuOd5AJkc5RngBw==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + run-parallel@1.2.0: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} @@ -4756,9 +4801,6 @@ packages: siginfo@2.0.0: resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} - signal-exit@3.0.7: - resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} - signal-exit@4.1.0: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} @@ -4895,10 +4937,6 @@ packages: resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} engines: {node: '>=12'} - strip-final-newline@2.0.0: - resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} - engines: {node: '>=6'} - strip-final-newline@3.0.0: resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} engines: {node: '>=12'} @@ -4960,8 +4998,8 @@ packages: resolution: {integrity: sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==} engines: {node: '>=10'} - taze@0.16.6: - resolution: {integrity: sha512-KBqEUSsRH1i3DykVutcoV3TtXVQSuZRhKnqGsI2Sz0hjYySNCFPlViQJ+rGNn5OE+jiYKoKTzq4rIR/1tzQ1Hg==} + taze@0.16.7: + resolution: {integrity: sha512-bVKeFJc/rewVI5MFcG8EK5+6jWx37c3IiDy9qnk9Pv6FV8OLu6GhTk1ru+KLmvGwQc2twqtKA8HW3HmjHA2bEQ==} hasBin: true terser@5.27.0: @@ -4979,11 +5017,11 @@ packages: tinybench@2.8.0: resolution: {integrity: sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw==} - tinyexec@0.2.0: - resolution: {integrity: sha512-au8dwv4xKSDR+Fw52csDo3wcDztPdne2oM1o/7LFro4h6bdFmvyUAeAfX40pwDtzHgRFqz1XWaUqgKS2G83/ig==} + tinyexec@0.3.0: + resolution: {integrity: sha512-tVGE0mVJPGb0chKhqmsoosjsS+qUnJVGJpZgsHYQcGoPlG3B51R3PouqTgEGH2Dc9jjFyOqOpix6ZHNMXp1FZg==} - tinyglobby@0.2.2: - resolution: {integrity: sha512-mZ2sDMaySvi1PkTp4lTo1In2zjU+cY8OvZsfwrDrx3YGRbXPX1/cbPwCR9zkm3O/Fz9Jo0F1HNgIQ1b8BepqyQ==} + tinyglobby@0.2.5: + resolution: {integrity: sha512-Dlqgt6h0QkoHttG53/WGADNh9QhcjCAIZMTERAVhdpmIBEejSuLI9ZmGKWzB7tweBjlk30+s/ofi4SLmBeTYhw==} engines: {node: '>=12.0.0'} tinypool@1.0.0: @@ -4998,11 +5036,11 @@ packages: resolution: {integrity: sha512-q5nmENpTHgiPVd1cJDDc9cVoYN5x4vCvwT3FMilvKPKneCBZAxn2YWQjDF0UMcE9k0Cay1gBiDfTMU0g+mPMQA==} engines: {node: '>=14.0.0'} - tm-grammars@1.17.3: - resolution: {integrity: sha512-AwJnLwhVA1IprP5FawFEmZlfFtZmvuhYn6zukSuYyLfzr8uDSJFQTRUCDWS22UuRhJJ/eek0QyMDq5WKiAQ55w==} + tm-grammars@1.17.9: + resolution: {integrity: sha512-zfffNWj6Nde5FzlHRmN5AkGYfz0yTaYIpcoHB3OcvDNmn70aHN0HmkZpoItjZomk3V/noemcGXRW53Ueve++eg==} - tm-themes@1.8.0: - resolution: {integrity: sha512-7xvJNCLkQBg7FFTZKFXNKK2I1mEX/qP6q0xIJNOdWFvKAA4nfDlRsyxW2MXFp7lrTTtN8HTVPpvIhk5mmVuBGQ==} + tm-themes@1.8.1: + resolution: {integrity: sha512-jTUfDRn5TysYhkxxEWBQDo1C1n4yoHcnfNNqXkVxIMGQCgal/9poGuMBsfbnZCPEmFVcN2rtrUwaOJ8s2hVQXg==} to-fast-properties@2.0.0: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} @@ -5049,6 +5087,9 @@ packages: tslib@2.6.2: resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} + tslib@2.7.0: + resolution: {integrity: sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==} + tsx@4.16.3: resolution: {integrity: sha512-MP8AEUxVnboD2rCC6kDLxnpDBNWN9k3BSVU/0/nNxgm70bPBnfn+yCKcnOsIVPQwdkbKYoFOlKjjWZWJ2XCXUg==} engines: {node: '>=18.0.0'} @@ -5098,6 +5139,9 @@ packages: ufo@1.5.3: resolution: {integrity: sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==} + ufo@1.5.4: + resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==} + unbuild@2.0.0: resolution: {integrity: sha512-JWCUYx3Oxdzvw2J9kTAp+DKE8df/BnH/JTSj6JyA4SH40ECdFu7FoJJcrm8G92B7TjofQ6GZGjJs50TRxoH6Wg==} hasBin: true @@ -5117,8 +5161,8 @@ packages: resolution: {integrity: sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==} engines: {node: '>=14.0'} - unenv-nightly@1.10.0-1717606461.a117952: - resolution: {integrity: sha512-u3TfBX02WzbHTpaEfWEKwDijDSFAHcgXkayUZ+MVDrjhLFvgAJzFGTSTmwlEhwWi2exyRQey23ah9wELMM6etg==} + unenv-nightly@2.0.0-1724863496.70db6f1: + resolution: {integrity: sha512-r+VIl1gnsI4WQxluruSQhy8alpAf1AsLRLm4sEKp3otCyTIVD6I6wHEYzeQnwsyWgaD4+3BD4A/eqrgOpdTzhw==} unified@11.0.5: resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} @@ -5160,11 +5204,11 @@ packages: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} - unocss@0.62.2: - resolution: {integrity: sha512-XLLOXyLrbLX7xIChdCPZAmfLR+1aqIHGN/y7QOn4t3g8C3Kk1tAH2aMMQHWhWFfNzskfNiPjKeVYhWQ8QV53Mg==} + unocss@0.62.3: + resolution: {integrity: sha512-CLS6+JIlBobe/iPTz07pehyGDP8VqGJsiE+ZZ3Xkgib3hw76nCqAQF/4mJ8jVoV4C8KvGyVxmHaSSCFOkWmmZg==} engines: {node: '>=14'} peerDependencies: - '@unocss/webpack': 0.62.2 + '@unocss/webpack': 0.62.3 vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 peerDependenciesMeta: '@unocss/webpack': @@ -5280,8 +5324,8 @@ packages: mermaid: '10' vitepress: ^1.0.0 || ^1.0.0-alpha - vitepress@1.3.3: - resolution: {integrity: sha512-6UzEw/wZ41S/CATby7ea7UlffvRER/uekxgN6hbEvSys9ukmLOKsz87Ehq9yOx1Rwiw+Sj97yjpivP8w1sUmng==} + vitepress@1.3.4: + resolution: {integrity: sha512-I1/F6OW1xl3kW4PaIMC6snxjWgf3qfziq2aqsDoFc/Gt41WbcRv++z8zjw8qGRIJ+I4bUW7ZcKFDHHN/jkH9DQ==} hasBin: true peerDependencies: markdown-it-mathjax3: ^4 @@ -5348,8 +5392,8 @@ packages: peerDependencies: vue: ^3.0.0 - vue-tsc@2.0.29: - resolution: {integrity: sha512-MHhsfyxO3mYShZCGYNziSbc63x7cQ5g9kvijV7dRe1TTXBRLxXyL0FnXWpUF1xII2mJ86mwYpYsUmMwkmerq7Q==} + vue-tsc@2.1.2: + resolution: {integrity: sha512-PH1BDxWT3eaPhl73elyZj6DV0nR3K4IFoUM1sGzMXXQneovVUwHQytdSyAHiED5MtEINGSHpL/Hs9ch+c/tDTw==} hasBin: true peerDependencies: typescript: '>=5.0.0' @@ -5385,17 +5429,17 @@ packages: engines: {node: '>=8'} hasBin: true - workerd@1.20240806.0: - resolution: {integrity: sha512-yyNtyzTMgVY0sgYijHBONqZFVXsOFGj2jDjS8MF/RbO2ZdGROvs4Hkc/9QnmqFWahE0STxXeJ1yW1yVotdF0UQ==} + workerd@1.20240821.1: + resolution: {integrity: sha512-y4phjCnEG96u8ZkgkkHB+gSw0i6uMNo23rBmixylWpjxDklB+LWD8dztasvsu7xGaZbLoTxQESdEw956F7VJDA==} engines: {node: '>=16'} hasBin: true - wrangler@3.72.1: - resolution: {integrity: sha512-0UrkDpBJb1KHP6msGF+k14+2CFoF9jFKMKGEPfr6yflCduKVas9qA2ExKiRF5un9PKDY79cszuwvVUtir2NfLg==} + wrangler@3.73.0: + resolution: {integrity: sha512-VrdDR2OpvsCQp+r5Of3rDP1W64cNN/LHLVx1roULOlPS8PZiv7rUYgkwhdCQ61+HICAaeSxWYIzkL5+B9+8W3g==} engines: {node: '>=16.17.0'} hasBin: true peerDependencies: - '@cloudflare/workers-types': ^4.20240806.0 + '@cloudflare/workers-types': ^4.20240821.1 peerDependenciesMeta: '@cloudflare/workers-types': optional: true @@ -5573,46 +5617,46 @@ snapshots: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 - '@antfu/eslint-config@2.27.0(@typescript-eslint/utils@8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4))(@vue/compiler-sfc@3.4.38)(eslint-plugin-format@0.1.2(eslint@9.9.0(jiti@1.21.6)))(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4)(vitest@2.0.5(@types/node@22.5.0)(terser@5.27.0))': + '@antfu/eslint-config@3.0.0(@typescript-eslint/utils@8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4))(@vue/compiler-sfc@3.4.38)(eslint-plugin-format@0.1.2(eslint@9.9.1(jiti@1.21.6)))(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4)(vitest@2.0.5(@types/node@22.5.1)(terser@5.27.0))': dependencies: - '@antfu/install-pkg': 0.4.0 + '@antfu/install-pkg': 0.4.1 '@clack/prompts': 0.7.0 - '@eslint-community/eslint-plugin-eslint-comments': 4.4.0(eslint@9.9.0(jiti@1.21.6)) - '@stylistic/eslint-plugin': 2.6.4(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4) - '@typescript-eslint/eslint-plugin': 8.2.0(@typescript-eslint/parser@8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4))(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4) - '@typescript-eslint/parser': 8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4) - '@vitest/eslint-plugin': 1.0.3(@typescript-eslint/utils@8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4))(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4)(vitest@2.0.5(@types/node@22.5.0)(terser@5.27.0)) - eslint: 9.9.0(jiti@1.21.6) - eslint-config-flat-gitignore: 0.1.8 + '@eslint-community/eslint-plugin-eslint-comments': 4.4.0(eslint@9.9.1(jiti@1.21.6)) + '@stylistic/eslint-plugin': 2.7.1(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4) + '@typescript-eslint/eslint-plugin': 8.3.0(@typescript-eslint/parser@8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4))(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4) + '@typescript-eslint/parser': 8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4) + '@vitest/eslint-plugin': 1.1.0(@typescript-eslint/utils@8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4))(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4)(vitest@2.0.5(@types/node@22.5.1)(terser@5.27.0)) + eslint: 9.9.1(jiti@1.21.6) + eslint-config-flat-gitignore: 0.3.0(eslint@9.9.1(jiti@1.21.6)) eslint-flat-config-utils: 0.3.1 - eslint-merge-processors: 0.1.0(eslint@9.9.0(jiti@1.21.6)) - eslint-plugin-antfu: 2.3.5(eslint@9.9.0(jiti@1.21.6)) - eslint-plugin-command: 0.2.3(eslint@9.9.0(jiti@1.21.6)) - eslint-plugin-import-x: 3.1.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4) - eslint-plugin-jsdoc: 50.2.2(eslint@9.9.0(jiti@1.21.6)) - eslint-plugin-jsonc: 2.16.0(eslint@9.9.0(jiti@1.21.6)) - eslint-plugin-markdown: 5.1.0(eslint@9.9.0(jiti@1.21.6)) - eslint-plugin-n: 17.10.2(eslint@9.9.0(jiti@1.21.6)) + eslint-merge-processors: 0.1.0(eslint@9.9.1(jiti@1.21.6)) + eslint-plugin-antfu: 2.3.6(eslint@9.9.1(jiti@1.21.6)) + eslint-plugin-command: 0.2.3(eslint@9.9.1(jiti@1.21.6)) + eslint-plugin-import-x: 4.1.1(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4) + eslint-plugin-jsdoc: 50.2.2(eslint@9.9.1(jiti@1.21.6)) + eslint-plugin-jsonc: 2.16.0(eslint@9.9.1(jiti@1.21.6)) + eslint-plugin-markdown: 5.1.0(eslint@9.9.1(jiti@1.21.6)) + eslint-plugin-n: 17.10.2(eslint@9.9.1(jiti@1.21.6)) eslint-plugin-no-only-tests: 3.3.0 - eslint-plugin-perfectionist: 3.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4)(vue-eslint-parser@9.4.3(eslint@9.9.0(jiti@1.21.6))) - eslint-plugin-regexp: 2.6.0(eslint@9.9.0(jiti@1.21.6)) - eslint-plugin-toml: 0.11.1(eslint@9.9.0(jiti@1.21.6)) - eslint-plugin-unicorn: 55.0.0(eslint@9.9.0(jiti@1.21.6)) - eslint-plugin-unused-imports: 4.1.3(@typescript-eslint/eslint-plugin@8.2.0(@typescript-eslint/parser@8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4))(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4))(eslint@9.9.0(jiti@1.21.6)) - eslint-plugin-vue: 9.27.0(eslint@9.9.0(jiti@1.21.6)) - eslint-plugin-yml: 1.14.0(eslint@9.9.0(jiti@1.21.6)) - eslint-processor-vue-blocks: 0.1.2(@vue/compiler-sfc@3.4.38)(eslint@9.9.0(jiti@1.21.6)) + eslint-plugin-perfectionist: 3.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4)(vue-eslint-parser@9.4.3(eslint@9.9.1(jiti@1.21.6))) + eslint-plugin-regexp: 2.6.0(eslint@9.9.1(jiti@1.21.6)) + eslint-plugin-toml: 0.11.1(eslint@9.9.1(jiti@1.21.6)) + eslint-plugin-unicorn: 55.0.0(eslint@9.9.1(jiti@1.21.6)) + eslint-plugin-unused-imports: 4.1.3(@typescript-eslint/eslint-plugin@8.3.0(@typescript-eslint/parser@8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4))(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4))(eslint@9.9.1(jiti@1.21.6)) + eslint-plugin-vue: 9.27.0(eslint@9.9.1(jiti@1.21.6)) + eslint-plugin-yml: 1.14.0(eslint@9.9.1(jiti@1.21.6)) + eslint-processor-vue-blocks: 0.1.2(@vue/compiler-sfc@3.4.38)(eslint@9.9.1(jiti@1.21.6)) globals: 15.9.0 jsonc-eslint-parser: 2.4.0 local-pkg: 0.5.0 parse-gitignore: 2.0.0 picocolors: 1.0.1 toml-eslint-parser: 0.10.0 - vue-eslint-parser: 9.4.3(eslint@9.9.0(jiti@1.21.6)) + vue-eslint-parser: 9.4.3(eslint@9.9.1(jiti@1.21.6)) yaml-eslint-parser: 1.2.3 yargs: 17.7.2 optionalDependencies: - eslint-plugin-format: 0.1.2(eslint@9.9.0(jiti@1.21.6)) + eslint-plugin-format: 0.1.2(eslint@9.9.1(jiti@1.21.6)) transitivePeerDependencies: - '@typescript-eslint/utils' - '@vue/compiler-sfc' @@ -5621,17 +5665,12 @@ snapshots: - typescript - vitest - '@antfu/install-pkg@0.1.1': + '@antfu/install-pkg@0.4.1': dependencies: - execa: 5.1.1 - find-up: 5.0.0 - - '@antfu/install-pkg@0.4.0': - dependencies: - package-manager-detector: 0.1.2 - tinyexec: 0.2.0 + package-manager-detector: 0.2.0 + tinyexec: 0.3.0 - '@antfu/ni@0.22.4': {} + '@antfu/ni@0.23.0': {} '@antfu/utils@0.7.10': {} @@ -5869,22 +5908,22 @@ snapshots: dependencies: mime: 3.0.0 - '@cloudflare/workerd-darwin-64@1.20240806.0': + '@cloudflare/workerd-darwin-64@1.20240821.1': optional: true - '@cloudflare/workerd-darwin-arm64@1.20240806.0': + '@cloudflare/workerd-darwin-arm64@1.20240821.1': optional: true - '@cloudflare/workerd-linux-64@1.20240806.0': + '@cloudflare/workerd-linux-64@1.20240821.1': optional: true - '@cloudflare/workerd-linux-arm64@1.20240806.0': + '@cloudflare/workerd-linux-arm64@1.20240821.1': optional: true - '@cloudflare/workerd-windows-64@1.20240806.0': + '@cloudflare/workerd-windows-64@1.20240821.1': optional: true - '@cloudflare/workers-shared@0.2.0': {} + '@cloudflare/workers-shared@0.4.1': {} '@cspotcode/source-map-support@0.8.1': dependencies: @@ -6149,20 +6188,22 @@ snapshots: '@esbuild/win32-x64@0.21.5': optional: true - '@eslint-community/eslint-plugin-eslint-comments@4.4.0(eslint@9.9.0(jiti@1.21.6))': + '@eslint-community/eslint-plugin-eslint-comments@4.4.0(eslint@9.9.1(jiti@1.21.6))': dependencies: escape-string-regexp: 4.0.0 - eslint: 9.9.0(jiti@1.21.6) + eslint: 9.9.1(jiti@1.21.6) ignore: 5.3.1 - '@eslint-community/eslint-utils@4.4.0(eslint@9.9.0(jiti@1.21.6))': + '@eslint-community/eslint-utils@4.4.0(eslint@9.9.1(jiti@1.21.6))': dependencies: - eslint: 9.9.0(jiti@1.21.6) + eslint: 9.9.1(jiti@1.21.6) eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.11.0': {} - '@eslint/config-array@0.17.1': + '@eslint/compat@1.1.1': {} + + '@eslint/config-array@0.18.0': dependencies: '@eslint/object-schema': 2.1.4 debug: 4.3.6 @@ -6184,7 +6225,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/js@9.9.0': {} + '@eslint/js@9.9.1': {} '@eslint/object-schema@2.1.4': {} @@ -6222,9 +6263,9 @@ snapshots: '@iconify/types@2.0.0': {} - '@iconify/utils@2.1.30': + '@iconify/utils@2.1.32': dependencies: - '@antfu/install-pkg': 0.1.1 + '@antfu/install-pkg': 0.4.1 '@antfu/utils': 0.7.10 '@iconify/types': 2.0.0 debug: 4.3.6 @@ -6331,11 +6372,11 @@ snapshots: optionalDependencies: rollup: 3.29.4 - '@rollup/plugin-alias@5.1.0(rollup@4.21.0)': + '@rollup/plugin-alias@5.1.0(rollup@4.21.2)': dependencies: slash: 4.0.0 optionalDependencies: - rollup: 4.21.0 + rollup: 4.21.2 '@rollup/plugin-commonjs@25.0.8(rollup@3.29.4)': dependencies: @@ -6348,16 +6389,16 @@ snapshots: optionalDependencies: rollup: 3.29.4 - '@rollup/plugin-commonjs@26.0.1(rollup@4.21.0)': + '@rollup/plugin-commonjs@26.0.1(rollup@4.21.2)': dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.21.0) + '@rollup/pluginutils': 5.1.0(rollup@4.21.2) commondir: 1.0.1 estree-walker: 2.0.2 glob: 10.4.1 is-reference: 1.2.1 magic-string: 0.30.11 optionalDependencies: - rollup: 4.21.0 + rollup: 4.21.2 '@rollup/plugin-json@6.1.0(rollup@3.29.4)': dependencies: @@ -6365,11 +6406,11 @@ snapshots: optionalDependencies: rollup: 3.29.4 - '@rollup/plugin-json@6.1.0(rollup@4.21.0)': + '@rollup/plugin-json@6.1.0(rollup@4.21.2)': dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.21.0) + '@rollup/pluginutils': 5.1.0(rollup@4.21.2) optionalDependencies: - rollup: 4.21.0 + rollup: 4.21.2 '@rollup/plugin-node-resolve@15.2.3(rollup@3.29.4)': dependencies: @@ -6382,16 +6423,16 @@ snapshots: optionalDependencies: rollup: 3.29.4 - '@rollup/plugin-node-resolve@15.2.3(rollup@4.21.0)': + '@rollup/plugin-node-resolve@15.2.3(rollup@4.21.2)': dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.21.0) + '@rollup/pluginutils': 5.1.0(rollup@4.21.2) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-builtin-module: 3.2.1 is-module: 1.0.0 resolve: 1.22.8 optionalDependencies: - rollup: 4.21.0 + rollup: 4.21.2 '@rollup/plugin-replace@5.0.7(rollup@3.29.4)': dependencies: @@ -6400,20 +6441,20 @@ snapshots: optionalDependencies: rollup: 3.29.4 - '@rollup/plugin-replace@5.0.7(rollup@4.21.0)': + '@rollup/plugin-replace@5.0.7(rollup@4.21.2)': dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.21.0) + '@rollup/pluginutils': 5.1.0(rollup@4.21.2) magic-string: 0.30.11 optionalDependencies: - rollup: 4.21.0 + rollup: 4.21.2 - '@rollup/plugin-terser@0.4.4(rollup@4.21.0)': + '@rollup/plugin-terser@0.4.4(rollup@4.21.2)': dependencies: serialize-javascript: 6.0.2 smob: 1.4.1 terser: 5.27.0 optionalDependencies: - rollup: 4.21.0 + rollup: 4.21.2 '@rollup/pluginutils@4.2.1': dependencies: @@ -6428,103 +6469,119 @@ snapshots: optionalDependencies: rollup: 3.29.4 - '@rollup/pluginutils@5.1.0(rollup@4.21.0)': + '@rollup/pluginutils@5.1.0(rollup@4.21.2)': dependencies: '@types/estree': 1.0.5 estree-walker: 2.0.2 picomatch: 2.3.1 optionalDependencies: - rollup: 4.21.0 + rollup: 4.21.2 '@rollup/rollup-android-arm-eabi@4.21.0': optional: true + '@rollup/rollup-android-arm-eabi@4.21.2': + optional: true + '@rollup/rollup-android-arm64@4.21.0': optional: true + '@rollup/rollup-android-arm64@4.21.2': + optional: true + '@rollup/rollup-darwin-arm64@4.21.0': optional: true + '@rollup/rollup-darwin-arm64@4.21.2': + optional: true + '@rollup/rollup-darwin-x64@4.21.0': optional: true + '@rollup/rollup-darwin-x64@4.21.2': + optional: true + '@rollup/rollup-linux-arm-gnueabihf@4.21.0': optional: true + '@rollup/rollup-linux-arm-gnueabihf@4.21.2': + optional: true + '@rollup/rollup-linux-arm-musleabihf@4.21.0': optional: true + '@rollup/rollup-linux-arm-musleabihf@4.21.2': + optional: true + '@rollup/rollup-linux-arm64-gnu@4.21.0': optional: true + '@rollup/rollup-linux-arm64-gnu@4.21.2': + optional: true + '@rollup/rollup-linux-arm64-musl@4.21.0': optional: true + '@rollup/rollup-linux-arm64-musl@4.21.2': + optional: true + '@rollup/rollup-linux-powerpc64le-gnu@4.21.0': optional: true + '@rollup/rollup-linux-powerpc64le-gnu@4.21.2': + optional: true + '@rollup/rollup-linux-riscv64-gnu@4.21.0': optional: true + '@rollup/rollup-linux-riscv64-gnu@4.21.2': + optional: true + '@rollup/rollup-linux-s390x-gnu@4.21.0': optional: true + '@rollup/rollup-linux-s390x-gnu@4.21.2': + optional: true + '@rollup/rollup-linux-x64-gnu@4.21.0': optional: true + '@rollup/rollup-linux-x64-gnu@4.21.2': + optional: true + '@rollup/rollup-linux-x64-musl@4.21.0': optional: true + '@rollup/rollup-linux-x64-musl@4.21.2': + optional: true + '@rollup/rollup-win32-arm64-msvc@4.21.0': optional: true + '@rollup/rollup-win32-arm64-msvc@4.21.2': + optional: true + '@rollup/rollup-win32-ia32-msvc@4.21.0': optional: true + '@rollup/rollup-win32-ia32-msvc@4.21.2': + optional: true + '@rollup/rollup-win32-x64-msvc@4.21.0': optional: true - '@stylistic/eslint-plugin-js@2.6.4(eslint@9.9.0(jiti@1.21.6))': - dependencies: - '@types/eslint': 9.6.0 - acorn: 8.12.1 - eslint: 9.9.0(jiti@1.21.6) - eslint-visitor-keys: 4.0.0 - espree: 10.1.0 + '@rollup/rollup-win32-x64-msvc@4.21.2': + optional: true - '@stylistic/eslint-plugin-jsx@2.6.4(eslint@9.9.0(jiti@1.21.6))': + '@stylistic/eslint-plugin@2.7.1(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4)': dependencies: - '@stylistic/eslint-plugin-js': 2.6.4(eslint@9.9.0(jiti@1.21.6)) - '@types/eslint': 9.6.0 - eslint: 9.9.0(jiti@1.21.6) + '@types/eslint': 9.6.1 + '@typescript-eslint/utils': 8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4) + eslint: 9.9.1(jiti@1.21.6) eslint-visitor-keys: 4.0.0 espree: 10.1.0 estraverse: 5.3.0 picomatch: 4.0.2 - - '@stylistic/eslint-plugin-plus@2.6.4(eslint@9.9.0(jiti@1.21.6))': - dependencies: - '@types/eslint': 9.6.0 - eslint: 9.9.0(jiti@1.21.6) - - '@stylistic/eslint-plugin-ts@2.6.4(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4)': - dependencies: - '@stylistic/eslint-plugin-js': 2.6.4(eslint@9.9.0(jiti@1.21.6)) - '@types/eslint': 9.6.0 - '@typescript-eslint/utils': 8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4) - eslint: 9.9.0(jiti@1.21.6) - transitivePeerDependencies: - - supports-color - - typescript - - '@stylistic/eslint-plugin@2.6.4(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4)': - dependencies: - '@stylistic/eslint-plugin-js': 2.6.4(eslint@9.9.0(jiti@1.21.6)) - '@stylistic/eslint-plugin-jsx': 2.6.4(eslint@9.9.0(jiti@1.21.6)) - '@stylistic/eslint-plugin-plus': 2.6.4(eslint@9.9.0(jiti@1.21.6)) - '@stylistic/eslint-plugin-ts': 2.6.4(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4) - '@types/eslint': 9.6.0 - eslint: 9.9.0(jiti@1.21.6) transitivePeerDependencies: - supports-color - typescript @@ -6553,21 +6610,26 @@ snapshots: '@types/estree': 1.0.5 '@types/json-schema': 7.0.15 + '@types/eslint@9.6.1': + dependencies: + '@types/estree': 1.0.5 + '@types/json-schema': 7.0.15 + '@types/estree@1.0.5': {} '@types/fs-extra@11.0.4': dependencies: '@types/jsonfile': 6.1.4 - '@types/node': 22.5.0 + '@types/node': 22.5.1 '@types/fs-extra@8.1.5': dependencies: - '@types/node': 22.5.0 + '@types/node': 22.5.1 '@types/glob@7.2.0': dependencies: '@types/minimatch': 5.1.2 - '@types/node': 22.5.0 + '@types/node': 22.5.1 '@types/hast@3.0.4': dependencies: @@ -6577,7 +6639,7 @@ snapshots: '@types/jsonfile@6.1.4': dependencies: - '@types/node': 22.5.0 + '@types/node': 22.5.1 '@types/linkify-it@5.0.0': {} @@ -6600,9 +6662,9 @@ snapshots: '@types/node-forge@1.3.11': dependencies: - '@types/node': 22.5.0 + '@types/node': 22.5.1 - '@types/node@22.5.0': + '@types/node@22.5.1': dependencies: undici-types: 6.19.6 @@ -6614,15 +6676,15 @@ snapshots: '@types/web-bluetooth@0.0.20': {} - '@typescript-eslint/eslint-plugin@8.2.0(@typescript-eslint/parser@8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4))(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4)': + '@typescript-eslint/eslint-plugin@8.3.0(@typescript-eslint/parser@8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4))(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4)': dependencies: '@eslint-community/regexpp': 4.11.0 - '@typescript-eslint/parser': 8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4) - '@typescript-eslint/scope-manager': 8.2.0 - '@typescript-eslint/type-utils': 8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4) - '@typescript-eslint/utils': 8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4) - '@typescript-eslint/visitor-keys': 8.2.0 - eslint: 9.9.0(jiti@1.21.6) + '@typescript-eslint/parser': 8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4) + '@typescript-eslint/scope-manager': 8.3.0 + '@typescript-eslint/type-utils': 8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4) + '@typescript-eslint/utils': 8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4) + '@typescript-eslint/visitor-keys': 8.3.0 + eslint: 9.9.1(jiti@1.21.6) graphemer: 1.4.0 ignore: 5.3.1 natural-compare: 1.4.0 @@ -6632,33 +6694,28 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4)': + '@typescript-eslint/parser@8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4)': dependencies: - '@typescript-eslint/scope-manager': 8.2.0 - '@typescript-eslint/types': 8.2.0 - '@typescript-eslint/typescript-estree': 8.2.0(typescript@5.5.4) - '@typescript-eslint/visitor-keys': 8.2.0 + '@typescript-eslint/scope-manager': 8.3.0 + '@typescript-eslint/types': 8.3.0 + '@typescript-eslint/typescript-estree': 8.3.0(typescript@5.5.4) + '@typescript-eslint/visitor-keys': 8.3.0 debug: 4.3.6 - eslint: 9.9.0(jiti@1.21.6) + eslint: 9.9.1(jiti@1.21.6) optionalDependencies: typescript: 5.5.4 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@7.18.0': + '@typescript-eslint/scope-manager@8.3.0': dependencies: - '@typescript-eslint/types': 7.18.0 - '@typescript-eslint/visitor-keys': 7.18.0 - - '@typescript-eslint/scope-manager@8.2.0': - dependencies: - '@typescript-eslint/types': 8.2.0 - '@typescript-eslint/visitor-keys': 8.2.0 + '@typescript-eslint/types': 8.3.0 + '@typescript-eslint/visitor-keys': 8.3.0 - '@typescript-eslint/type-utils@8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4)': + '@typescript-eslint/type-utils@8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4)': dependencies: - '@typescript-eslint/typescript-estree': 8.2.0(typescript@5.5.4) - '@typescript-eslint/utils': 8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4) + '@typescript-eslint/typescript-estree': 8.3.0(typescript@5.5.4) + '@typescript-eslint/utils': 8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4) debug: 4.3.6 ts-api-utils: 1.3.0(typescript@5.5.4) optionalDependencies: @@ -6669,29 +6726,14 @@ snapshots: '@typescript-eslint/types@7.18.0': {} - '@typescript-eslint/types@8.2.0': {} - - '@typescript-eslint/typescript-estree@7.18.0(typescript@5.5.4)': - dependencies: - '@typescript-eslint/types': 7.18.0 - '@typescript-eslint/visitor-keys': 7.18.0 - debug: 4.3.6 - globby: 11.1.0 - is-glob: 4.0.3 - minimatch: 9.0.5 - semver: 7.6.3 - ts-api-utils: 1.3.0(typescript@5.5.4) - optionalDependencies: - typescript: 5.5.4 - transitivePeerDependencies: - - supports-color + '@typescript-eslint/types@8.3.0': {} - '@typescript-eslint/typescript-estree@8.2.0(typescript@5.5.4)': + '@typescript-eslint/typescript-estree@8.3.0(typescript@5.5.4)': dependencies: - '@typescript-eslint/types': 8.2.0 - '@typescript-eslint/visitor-keys': 8.2.0 + '@typescript-eslint/types': 8.3.0 + '@typescript-eslint/visitor-keys': 8.3.0 debug: 4.3.6 - globby: 11.1.0 + fast-glob: 3.3.2 is-glob: 4.0.3 minimatch: 9.0.5 semver: 7.6.3 @@ -6701,36 +6743,20 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@7.18.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4)': - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.9.0(jiti@1.21.6)) - '@typescript-eslint/scope-manager': 7.18.0 - '@typescript-eslint/types': 7.18.0 - '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.5.4) - eslint: 9.9.0(jiti@1.21.6) - transitivePeerDependencies: - - supports-color - - typescript - - '@typescript-eslint/utils@8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4)': + '@typescript-eslint/utils@8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4)': dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.9.0(jiti@1.21.6)) - '@typescript-eslint/scope-manager': 8.2.0 - '@typescript-eslint/types': 8.2.0 - '@typescript-eslint/typescript-estree': 8.2.0(typescript@5.5.4) - eslint: 9.9.0(jiti@1.21.6) + '@eslint-community/eslint-utils': 4.4.0(eslint@9.9.1(jiti@1.21.6)) + '@typescript-eslint/scope-manager': 8.3.0 + '@typescript-eslint/types': 8.3.0 + '@typescript-eslint/typescript-estree': 8.3.0(typescript@5.5.4) + eslint: 9.9.1(jiti@1.21.6) transitivePeerDependencies: - supports-color - typescript - '@typescript-eslint/visitor-keys@7.18.0': + '@typescript-eslint/visitor-keys@8.3.0': dependencies: - '@typescript-eslint/types': 7.18.0 - eslint-visitor-keys: 3.4.3 - - '@typescript-eslint/visitor-keys@8.2.0': - dependencies: - '@typescript-eslint/types': 8.2.0 + '@typescript-eslint/types': 8.3.0 eslint-visitor-keys: 3.4.3 '@typescript/vfs@1.5.0': @@ -6741,24 +6767,24 @@ snapshots: '@ungap/structured-clone@1.2.0': {} - '@unocss/astro@0.62.2(rollup@4.21.0)(vite@5.4.2(@types/node@22.5.0)(terser@5.27.0))': + '@unocss/astro@0.62.3(rollup@4.21.2)(vite@5.4.2(@types/node@22.5.1)(terser@5.27.0))': dependencies: - '@unocss/core': 0.62.2 - '@unocss/reset': 0.62.2 - '@unocss/vite': 0.62.2(rollup@4.21.0)(vite@5.4.2(@types/node@22.5.0)(terser@5.27.0)) + '@unocss/core': 0.62.3 + '@unocss/reset': 0.62.3 + '@unocss/vite': 0.62.3(rollup@4.21.2)(vite@5.4.2(@types/node@22.5.1)(terser@5.27.0)) optionalDependencies: - vite: 5.4.2(@types/node@22.5.0)(terser@5.27.0) + vite: 5.4.2(@types/node@22.5.1)(terser@5.27.0) transitivePeerDependencies: - rollup - supports-color - '@unocss/cli@0.62.2(rollup@4.21.0)': + '@unocss/cli@0.62.3(rollup@4.21.2)': dependencies: '@ampproject/remapping': 2.3.0 - '@rollup/pluginutils': 5.1.0(rollup@4.21.0) - '@unocss/config': 0.62.2 - '@unocss/core': 0.62.2 - '@unocss/preset-uno': 0.62.2 + '@rollup/pluginutils': 5.1.0(rollup@4.21.2) + '@unocss/config': 0.62.3 + '@unocss/core': 0.62.3 + '@unocss/preset-uno': 0.62.3 cac: 6.7.14 chokidar: 3.6.0 colorette: 2.0.20 @@ -6766,147 +6792,147 @@ snapshots: magic-string: 0.30.11 pathe: 1.1.2 perfect-debounce: 1.0.0 - tinyglobby: 0.2.2 + tinyglobby: 0.2.5 transitivePeerDependencies: - rollup - supports-color - '@unocss/config@0.62.2': + '@unocss/config@0.62.3': dependencies: - '@unocss/core': 0.62.2 + '@unocss/core': 0.62.3 unconfig: 0.5.5 transitivePeerDependencies: - supports-color - '@unocss/core@0.62.2': {} + '@unocss/core@0.62.3': {} - '@unocss/extractor-arbitrary-variants@0.62.2': + '@unocss/extractor-arbitrary-variants@0.62.3': dependencies: - '@unocss/core': 0.62.2 + '@unocss/core': 0.62.3 - '@unocss/inspector@0.62.2': + '@unocss/inspector@0.62.3': dependencies: - '@unocss/core': 0.62.2 - '@unocss/rule-utils': 0.62.2 + '@unocss/core': 0.62.3 + '@unocss/rule-utils': 0.62.3 gzip-size: 6.0.0 sirv: 2.0.4 - '@unocss/postcss@0.62.2(postcss@8.4.41)': + '@unocss/postcss@0.62.3(postcss@8.4.41)': dependencies: - '@unocss/config': 0.62.2 - '@unocss/core': 0.62.2 - '@unocss/rule-utils': 0.62.2 + '@unocss/config': 0.62.3 + '@unocss/core': 0.62.3 + '@unocss/rule-utils': 0.62.3 css-tree: 2.3.1 magic-string: 0.30.11 postcss: 8.4.41 - tinyglobby: 0.2.2 + tinyglobby: 0.2.5 transitivePeerDependencies: - supports-color - '@unocss/preset-attributify@0.62.2': + '@unocss/preset-attributify@0.62.3': dependencies: - '@unocss/core': 0.62.2 + '@unocss/core': 0.62.3 - '@unocss/preset-icons@0.62.2': + '@unocss/preset-icons@0.62.3': dependencies: - '@iconify/utils': 2.1.30 - '@unocss/core': 0.62.2 + '@iconify/utils': 2.1.32 + '@unocss/core': 0.62.3 ofetch: 1.3.4 transitivePeerDependencies: - supports-color - '@unocss/preset-mini@0.62.2': + '@unocss/preset-mini@0.62.3': dependencies: - '@unocss/core': 0.62.2 - '@unocss/extractor-arbitrary-variants': 0.62.2 - '@unocss/rule-utils': 0.62.2 + '@unocss/core': 0.62.3 + '@unocss/extractor-arbitrary-variants': 0.62.3 + '@unocss/rule-utils': 0.62.3 - '@unocss/preset-tagify@0.62.2': + '@unocss/preset-tagify@0.62.3': dependencies: - '@unocss/core': 0.62.2 + '@unocss/core': 0.62.3 - '@unocss/preset-typography@0.62.2': + '@unocss/preset-typography@0.62.3': dependencies: - '@unocss/core': 0.62.2 - '@unocss/preset-mini': 0.62.2 + '@unocss/core': 0.62.3 + '@unocss/preset-mini': 0.62.3 - '@unocss/preset-uno@0.62.2': + '@unocss/preset-uno@0.62.3': dependencies: - '@unocss/core': 0.62.2 - '@unocss/preset-mini': 0.62.2 - '@unocss/preset-wind': 0.62.2 - '@unocss/rule-utils': 0.62.2 + '@unocss/core': 0.62.3 + '@unocss/preset-mini': 0.62.3 + '@unocss/preset-wind': 0.62.3 + '@unocss/rule-utils': 0.62.3 - '@unocss/preset-web-fonts@0.62.2': + '@unocss/preset-web-fonts@0.62.3': dependencies: - '@unocss/core': 0.62.2 + '@unocss/core': 0.62.3 ofetch: 1.3.4 - '@unocss/preset-wind@0.62.2': + '@unocss/preset-wind@0.62.3': dependencies: - '@unocss/core': 0.62.2 - '@unocss/preset-mini': 0.62.2 - '@unocss/rule-utils': 0.62.2 + '@unocss/core': 0.62.3 + '@unocss/preset-mini': 0.62.3 + '@unocss/rule-utils': 0.62.3 - '@unocss/reset@0.62.2': {} + '@unocss/reset@0.62.3': {} - '@unocss/rule-utils@0.62.2': + '@unocss/rule-utils@0.62.3': dependencies: - '@unocss/core': 0.62.2 + '@unocss/core': 0.62.3 magic-string: 0.30.11 - '@unocss/scope@0.62.2': {} + '@unocss/scope@0.62.3': {} - '@unocss/transformer-attributify-jsx-babel@0.62.2': + '@unocss/transformer-attributify-jsx-babel@0.62.3': dependencies: '@babel/core': 7.25.2 '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.25.2) '@babel/preset-typescript': 7.24.7(@babel/core@7.25.2) - '@unocss/core': 0.62.2 + '@unocss/core': 0.62.3 transitivePeerDependencies: - supports-color - '@unocss/transformer-attributify-jsx@0.62.2': + '@unocss/transformer-attributify-jsx@0.62.3': dependencies: - '@unocss/core': 0.62.2 + '@unocss/core': 0.62.3 - '@unocss/transformer-compile-class@0.62.2': + '@unocss/transformer-compile-class@0.62.3': dependencies: - '@unocss/core': 0.62.2 + '@unocss/core': 0.62.3 - '@unocss/transformer-directives@0.62.2': + '@unocss/transformer-directives@0.62.3': dependencies: - '@unocss/core': 0.62.2 - '@unocss/rule-utils': 0.62.2 + '@unocss/core': 0.62.3 + '@unocss/rule-utils': 0.62.3 css-tree: 2.3.1 - '@unocss/transformer-variant-group@0.62.2': + '@unocss/transformer-variant-group@0.62.3': dependencies: - '@unocss/core': 0.62.2 + '@unocss/core': 0.62.3 - '@unocss/vite@0.62.2(rollup@4.21.0)(vite@5.4.2(@types/node@22.5.0)(terser@5.27.0))': + '@unocss/vite@0.62.3(rollup@4.21.2)(vite@5.4.2(@types/node@22.5.1)(terser@5.27.0))': dependencies: '@ampproject/remapping': 2.3.0 - '@rollup/pluginutils': 5.1.0(rollup@4.21.0) - '@unocss/config': 0.62.2 - '@unocss/core': 0.62.2 - '@unocss/inspector': 0.62.2 - '@unocss/scope': 0.62.2 - '@unocss/transformer-directives': 0.62.2 + '@rollup/pluginutils': 5.1.0(rollup@4.21.2) + '@unocss/config': 0.62.3 + '@unocss/core': 0.62.3 + '@unocss/inspector': 0.62.3 + '@unocss/scope': 0.62.3 + '@unocss/transformer-directives': 0.62.3 chokidar: 3.6.0 magic-string: 0.30.11 - tinyglobby: 0.2.2 - vite: 5.4.2(@types/node@22.5.0)(terser@5.27.0) + tinyglobby: 0.2.5 + vite: 5.4.2(@types/node@22.5.1)(terser@5.27.0) transitivePeerDependencies: - rollup - supports-color - '@vitejs/plugin-vue@5.1.2(vite@5.4.2(@types/node@22.5.0)(terser@5.27.0))(vue@3.4.38(typescript@5.5.4))': + '@vitejs/plugin-vue@5.1.2(vite@5.4.2(@types/node@22.5.1)(terser@5.27.0))(vue@3.4.38(typescript@5.5.4))': dependencies: - vite: 5.4.2(@types/node@22.5.0)(terser@5.27.0) + vite: 5.4.2(@types/node@22.5.1)(terser@5.27.0) vue: 3.4.38(typescript@5.5.4) - '@vitest/coverage-v8@2.0.5(vitest@2.0.5(@types/node@22.5.0)(terser@5.27.0))': + '@vitest/coverage-v8@2.0.5(vitest@2.0.5(@types/node@22.5.1)(terser@5.27.0))': dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 0.2.3 @@ -6920,17 +6946,17 @@ snapshots: std-env: 3.7.0 test-exclude: 7.0.1 tinyrainbow: 1.2.0 - vitest: 2.0.5(@types/node@22.5.0)(terser@5.27.0) + vitest: 2.0.5(@types/node@22.5.1)(terser@5.27.0) transitivePeerDependencies: - supports-color - '@vitest/eslint-plugin@1.0.3(@typescript-eslint/utils@8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4))(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4)(vitest@2.0.5(@types/node@22.5.0)(terser@5.27.0))': + '@vitest/eslint-plugin@1.1.0(@typescript-eslint/utils@8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4))(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4)(vitest@2.0.5(@types/node@22.5.1)(terser@5.27.0))': dependencies: - eslint: 9.9.0(jiti@1.21.6) + eslint: 9.9.1(jiti@1.21.6) optionalDependencies: - '@typescript-eslint/utils': 8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4) + '@typescript-eslint/utils': 8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4) typescript: 5.5.4 - vitest: 2.0.5(@types/node@22.5.0)(terser@5.27.0) + vitest: 2.0.5(@types/node@22.5.1)(terser@5.27.0) '@vitest/expect@2.0.5': dependencies: @@ -6969,11 +6995,17 @@ snapshots: dependencies: '@volar/source-map': 2.4.0-alpha.18 + '@volar/language-core@2.4.1': + dependencies: + '@volar/source-map': 2.4.1 + '@volar/source-map@2.4.0-alpha.18': {} - '@volar/typescript@2.4.0-alpha.18': + '@volar/source-map@2.4.1': {} + + '@volar/typescript@2.4.1': dependencies: - '@volar/language-core': 2.4.0-alpha.18 + '@volar/language-core': 2.4.1 path-browserify: 1.0.1 vscode-uri: 3.0.8 @@ -7045,6 +7077,19 @@ snapshots: optionalDependencies: typescript: 5.5.4 + '@vue/language-core@2.1.2(typescript@5.5.4)': + dependencies: + '@volar/language-core': 2.4.1 + '@vue/compiler-dom': 3.4.38 + '@vue/compiler-vue2': 2.7.16 + '@vue/shared': 3.4.38 + computeds: 0.0.1 + minimatch: 9.0.5 + muggle-string: 0.4.1 + path-browserify: 1.0.1 + optionalDependencies: + typescript: 5.5.4 + '@vue/reactivity@3.4.38': dependencies: '@vue/shared': 3.4.38 @@ -7079,11 +7124,11 @@ snapshots: - '@vue/composition-api' - vue - '@vueuse/core@11.0.1(vue@3.4.38(typescript@5.5.4))': + '@vueuse/core@11.0.3(vue@3.4.38(typescript@5.5.4))': dependencies: '@types/web-bluetooth': 0.0.20 - '@vueuse/metadata': 11.0.1 - '@vueuse/shared': 11.0.1(vue@3.4.38(typescript@5.5.4)) + '@vueuse/metadata': 11.0.3 + '@vueuse/shared': 11.0.3(vue@3.4.38(typescript@5.5.4)) vue-demi: 0.14.10(vue@3.4.38(typescript@5.5.4)) transitivePeerDependencies: - '@vue/composition-api' @@ -7103,7 +7148,7 @@ snapshots: '@vueuse/metadata@11.0.0': {} - '@vueuse/metadata@11.0.1': {} + '@vueuse/metadata@11.0.3': {} '@vueuse/shared@11.0.0(vue@3.4.38(typescript@5.5.4))': dependencies: @@ -7112,7 +7157,7 @@ snapshots: - '@vue/composition-api' - vue - '@vueuse/shared@11.0.1(vue@3.4.38(typescript@5.5.4))': + '@vueuse/shared@11.0.3(vue@3.4.38(typescript@5.5.4))': dependencies: vue-demi: 0.14.10(vue@3.4.38(typescript@5.5.4)) transitivePeerDependencies: @@ -7245,7 +7290,7 @@ snapshots: builtin-modules@3.3.0: {} - bumpp@9.5.1(magicast@0.3.4): + bumpp@9.5.2(magicast@0.3.4): dependencies: '@jsdevtools/ez-spawn': 3.0.4 c12: 1.11.1(magicast@0.3.4) @@ -7314,7 +7359,7 @@ snapshots: capnp-ts@0.7.0: dependencies: debug: 4.3.6 - tslib: 2.6.2 + tslib: 2.7.0 transitivePeerDependencies: - supports-color @@ -7915,28 +7960,29 @@ snapshots: escape-string-regexp@5.0.0: {} - eslint-compat-utils@0.1.2(eslint@9.9.0(jiti@1.21.6)): + eslint-compat-utils@0.1.2(eslint@9.9.1(jiti@1.21.6)): dependencies: - eslint: 9.9.0(jiti@1.21.6) + eslint: 9.9.1(jiti@1.21.6) - eslint-compat-utils@0.5.0(eslint@9.9.0(jiti@1.21.6)): + eslint-compat-utils@0.5.0(eslint@9.9.1(jiti@1.21.6)): dependencies: - eslint: 9.9.0(jiti@1.21.6) + eslint: 9.9.1(jiti@1.21.6) semver: 7.6.3 - eslint-config-flat-gitignore@0.1.8: + eslint-config-flat-gitignore@0.3.0(eslint@9.9.1(jiti@1.21.6)): dependencies: + '@eslint/compat': 1.1.1 + eslint: 9.9.1(jiti@1.21.6) find-up-simple: 1.0.0 - parse-gitignore: 2.0.0 eslint-flat-config-utils@0.3.1: dependencies: '@types/eslint': 9.6.0 pathe: 1.1.2 - eslint-formatting-reporter@0.0.0(eslint@9.9.0(jiti@1.21.6)): + eslint-formatting-reporter@0.0.0(eslint@9.9.1(jiti@1.21.6)): dependencies: - eslint: 9.9.0(jiti@1.21.6) + eslint: 9.9.1(jiti@1.21.6) prettier-linter-helpers: 1.0.0 eslint-import-resolver-node@0.3.9: @@ -7947,65 +7993,66 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-merge-processors@0.1.0(eslint@9.9.0(jiti@1.21.6)): + eslint-merge-processors@0.1.0(eslint@9.9.1(jiti@1.21.6)): dependencies: - eslint: 9.9.0(jiti@1.21.6) + eslint: 9.9.1(jiti@1.21.6) eslint-parser-plain@0.1.0: {} - eslint-plugin-antfu@2.3.5(eslint@9.9.0(jiti@1.21.6)): + eslint-plugin-antfu@2.3.6(eslint@9.9.1(jiti@1.21.6)): dependencies: '@antfu/utils': 0.7.10 - eslint: 9.9.0(jiti@1.21.6) + eslint: 9.9.1(jiti@1.21.6) - eslint-plugin-command@0.2.3(eslint@9.9.0(jiti@1.21.6)): + eslint-plugin-command@0.2.3(eslint@9.9.1(jiti@1.21.6)): dependencies: '@es-joy/jsdoccomment': 0.43.1 - eslint: 9.9.0(jiti@1.21.6) + eslint: 9.9.1(jiti@1.21.6) - eslint-plugin-es-x@7.5.0(eslint@9.9.0(jiti@1.21.6)): + eslint-plugin-es-x@7.5.0(eslint@9.9.1(jiti@1.21.6)): dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.9.0(jiti@1.21.6)) + '@eslint-community/eslint-utils': 4.4.0(eslint@9.9.1(jiti@1.21.6)) '@eslint-community/regexpp': 4.11.0 - eslint: 9.9.0(jiti@1.21.6) - eslint-compat-utils: 0.1.2(eslint@9.9.0(jiti@1.21.6)) + eslint: 9.9.1(jiti@1.21.6) + eslint-compat-utils: 0.1.2(eslint@9.9.1(jiti@1.21.6)) - eslint-plugin-format@0.1.2(eslint@9.9.0(jiti@1.21.6)): + eslint-plugin-format@0.1.2(eslint@9.9.1(jiti@1.21.6)): dependencies: '@dprint/formatter': 0.3.0 '@dprint/markdown': 0.17.1 '@dprint/toml': 0.6.2 - eslint: 9.9.0(jiti@1.21.6) - eslint-formatting-reporter: 0.0.0(eslint@9.9.0(jiti@1.21.6)) + eslint: 9.9.1(jiti@1.21.6) + eslint-formatting-reporter: 0.0.0(eslint@9.9.1(jiti@1.21.6)) eslint-parser-plain: 0.1.0 prettier: 3.3.3 synckit: 0.9.1 - eslint-plugin-import-x@3.1.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4): + eslint-plugin-import-x@4.1.1(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4): dependencies: - '@typescript-eslint/utils': 7.18.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4) + '@typescript-eslint/typescript-estree': 8.3.0(typescript@5.5.4) + '@typescript-eslint/utils': 8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4) debug: 4.3.6 doctrine: 3.0.0 - eslint: 9.9.0(jiti@1.21.6) + eslint: 9.9.1(jiti@1.21.6) eslint-import-resolver-node: 0.3.9 get-tsconfig: 4.7.5 is-glob: 4.0.3 minimatch: 9.0.5 semver: 7.6.3 stable-hash: 0.0.4 - tslib: 2.6.2 + tslib: 2.7.0 transitivePeerDependencies: - supports-color - typescript - eslint-plugin-jsdoc@50.2.2(eslint@9.9.0(jiti@1.21.6)): + eslint-plugin-jsdoc@50.2.2(eslint@9.9.1(jiti@1.21.6)): dependencies: '@es-joy/jsdoccomment': 0.48.0 are-docs-informative: 0.0.2 comment-parser: 1.4.1 debug: 4.3.6 escape-string-regexp: 4.0.0 - eslint: 9.9.0(jiti@1.21.6) + eslint: 9.9.1(jiti@1.21.6) espree: 10.1.0 esquery: 1.6.0 parse-imports: 2.1.1 @@ -8015,30 +8062,30 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-plugin-jsonc@2.16.0(eslint@9.9.0(jiti@1.21.6)): + eslint-plugin-jsonc@2.16.0(eslint@9.9.1(jiti@1.21.6)): dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.9.0(jiti@1.21.6)) - eslint: 9.9.0(jiti@1.21.6) - eslint-compat-utils: 0.5.0(eslint@9.9.0(jiti@1.21.6)) + '@eslint-community/eslint-utils': 4.4.0(eslint@9.9.1(jiti@1.21.6)) + eslint: 9.9.1(jiti@1.21.6) + eslint-compat-utils: 0.5.0(eslint@9.9.1(jiti@1.21.6)) espree: 9.6.1 graphemer: 1.4.0 jsonc-eslint-parser: 2.4.0 natural-compare: 1.4.0 synckit: 0.6.2 - eslint-plugin-markdown@5.1.0(eslint@9.9.0(jiti@1.21.6)): + eslint-plugin-markdown@5.1.0(eslint@9.9.1(jiti@1.21.6)): dependencies: - eslint: 9.9.0(jiti@1.21.6) + eslint: 9.9.1(jiti@1.21.6) mdast-util-from-markdown: 0.8.5 transitivePeerDependencies: - supports-color - eslint-plugin-n@17.10.2(eslint@9.9.0(jiti@1.21.6)): + eslint-plugin-n@17.10.2(eslint@9.9.1(jiti@1.21.6)): dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.9.0(jiti@1.21.6)) + '@eslint-community/eslint-utils': 4.4.0(eslint@9.9.1(jiti@1.21.6)) enhanced-resolve: 5.17.0 - eslint: 9.9.0(jiti@1.21.6) - eslint-plugin-es-x: 7.5.0(eslint@9.9.0(jiti@1.21.6)) + eslint: 9.9.1(jiti@1.21.6) + eslint-plugin-es-x: 7.5.0(eslint@9.9.1(jiti@1.21.6)) get-tsconfig: 4.7.5 globals: 15.9.0 ignore: 5.3.1 @@ -8047,48 +8094,48 @@ snapshots: eslint-plugin-no-only-tests@3.3.0: {} - eslint-plugin-perfectionist@3.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4)(vue-eslint-parser@9.4.3(eslint@9.9.0(jiti@1.21.6))): + eslint-plugin-perfectionist@3.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4)(vue-eslint-parser@9.4.3(eslint@9.9.1(jiti@1.21.6))): dependencies: - '@typescript-eslint/types': 8.2.0 - '@typescript-eslint/utils': 8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4) - eslint: 9.9.0(jiti@1.21.6) + '@typescript-eslint/types': 8.3.0 + '@typescript-eslint/utils': 8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4) + eslint: 9.9.1(jiti@1.21.6) minimatch: 10.0.1 natural-compare-lite: 1.4.0 optionalDependencies: - vue-eslint-parser: 9.4.3(eslint@9.9.0(jiti@1.21.6)) + vue-eslint-parser: 9.4.3(eslint@9.9.1(jiti@1.21.6)) transitivePeerDependencies: - supports-color - typescript - eslint-plugin-regexp@2.6.0(eslint@9.9.0(jiti@1.21.6)): + eslint-plugin-regexp@2.6.0(eslint@9.9.1(jiti@1.21.6)): dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.9.0(jiti@1.21.6)) + '@eslint-community/eslint-utils': 4.4.0(eslint@9.9.1(jiti@1.21.6)) '@eslint-community/regexpp': 4.11.0 comment-parser: 1.4.1 - eslint: 9.9.0(jiti@1.21.6) + eslint: 9.9.1(jiti@1.21.6) jsdoc-type-pratt-parser: 4.1.0 refa: 0.12.1 regexp-ast-analysis: 0.7.1 scslre: 0.3.0 - eslint-plugin-toml@0.11.1(eslint@9.9.0(jiti@1.21.6)): + eslint-plugin-toml@0.11.1(eslint@9.9.1(jiti@1.21.6)): dependencies: debug: 4.3.6 - eslint: 9.9.0(jiti@1.21.6) - eslint-compat-utils: 0.5.0(eslint@9.9.0(jiti@1.21.6)) + eslint: 9.9.1(jiti@1.21.6) + eslint-compat-utils: 0.5.0(eslint@9.9.1(jiti@1.21.6)) lodash: 4.17.21 toml-eslint-parser: 0.10.0 transitivePeerDependencies: - supports-color - eslint-plugin-unicorn@55.0.0(eslint@9.9.0(jiti@1.21.6)): + eslint-plugin-unicorn@55.0.0(eslint@9.9.1(jiti@1.21.6)): dependencies: '@babel/helper-validator-identifier': 7.24.7 - '@eslint-community/eslint-utils': 4.4.0(eslint@9.9.0(jiti@1.21.6)) + '@eslint-community/eslint-utils': 4.4.0(eslint@9.9.1(jiti@1.21.6)) ci-info: 4.0.0 clean-regexp: 1.0.0 core-js-compat: 3.37.1 - eslint: 9.9.0(jiti@1.21.6) + eslint: 9.9.1(jiti@1.21.6) esquery: 1.6.0 globals: 15.9.0 indent-string: 4.0.0 @@ -8101,41 +8148,41 @@ snapshots: semver: 7.6.3 strip-indent: 3.0.0 - eslint-plugin-unused-imports@4.1.3(@typescript-eslint/eslint-plugin@8.2.0(@typescript-eslint/parser@8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4))(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4))(eslint@9.9.0(jiti@1.21.6)): + eslint-plugin-unused-imports@4.1.3(@typescript-eslint/eslint-plugin@8.3.0(@typescript-eslint/parser@8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4))(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4))(eslint@9.9.1(jiti@1.21.6)): dependencies: - eslint: 9.9.0(jiti@1.21.6) + eslint: 9.9.1(jiti@1.21.6) optionalDependencies: - '@typescript-eslint/eslint-plugin': 8.2.0(@typescript-eslint/parser@8.2.0(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4))(eslint@9.9.0(jiti@1.21.6))(typescript@5.5.4) + '@typescript-eslint/eslint-plugin': 8.3.0(@typescript-eslint/parser@8.3.0(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4))(eslint@9.9.1(jiti@1.21.6))(typescript@5.5.4) - eslint-plugin-vue@9.27.0(eslint@9.9.0(jiti@1.21.6)): + eslint-plugin-vue@9.27.0(eslint@9.9.1(jiti@1.21.6)): dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.9.0(jiti@1.21.6)) - eslint: 9.9.0(jiti@1.21.6) + '@eslint-community/eslint-utils': 4.4.0(eslint@9.9.1(jiti@1.21.6)) + eslint: 9.9.1(jiti@1.21.6) globals: 13.24.0 natural-compare: 1.4.0 nth-check: 2.1.1 postcss-selector-parser: 6.0.15 semver: 7.6.3 - vue-eslint-parser: 9.4.3(eslint@9.9.0(jiti@1.21.6)) + vue-eslint-parser: 9.4.3(eslint@9.9.1(jiti@1.21.6)) xml-name-validator: 4.0.0 transitivePeerDependencies: - supports-color - eslint-plugin-yml@1.14.0(eslint@9.9.0(jiti@1.21.6)): + eslint-plugin-yml@1.14.0(eslint@9.9.1(jiti@1.21.6)): dependencies: debug: 4.3.6 - eslint: 9.9.0(jiti@1.21.6) - eslint-compat-utils: 0.5.0(eslint@9.9.0(jiti@1.21.6)) + eslint: 9.9.1(jiti@1.21.6) + eslint-compat-utils: 0.5.0(eslint@9.9.1(jiti@1.21.6)) lodash: 4.17.21 natural-compare: 1.4.0 yaml-eslint-parser: 1.2.3 transitivePeerDependencies: - supports-color - eslint-processor-vue-blocks@0.1.2(@vue/compiler-sfc@3.4.38)(eslint@9.9.0(jiti@1.21.6)): + eslint-processor-vue-blocks@0.1.2(@vue/compiler-sfc@3.4.38)(eslint@9.9.1(jiti@1.21.6)): dependencies: '@vue/compiler-sfc': 3.4.38 - eslint: 9.9.0(jiti@1.21.6) + eslint: 9.9.1(jiti@1.21.6) eslint-scope@7.2.2: dependencies: @@ -8151,13 +8198,13 @@ snapshots: eslint-visitor-keys@4.0.0: {} - eslint@9.9.0(jiti@1.21.6): + eslint@9.9.1(jiti@1.21.6): dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.9.0(jiti@1.21.6)) + '@eslint-community/eslint-utils': 4.4.0(eslint@9.9.1(jiti@1.21.6)) '@eslint-community/regexpp': 4.11.0 - '@eslint/config-array': 0.17.1 + '@eslint/config-array': 0.18.0 '@eslint/eslintrc': 3.1.0 - '@eslint/js': 9.9.0 + '@eslint/js': 9.9.1 '@humanwhocodes/module-importer': 1.0.1 '@humanwhocodes/retry': 0.3.0 '@nodelib/fs.walk': 1.2.8 @@ -8230,18 +8277,6 @@ snapshots: eventemitter3@5.0.1: {} - execa@5.1.1: - dependencies: - cross-spawn: 7.0.3 - get-stream: 6.0.1 - human-signals: 2.1.0 - is-stream: 2.0.1 - merge-stream: 2.0.0 - npm-run-path: 4.0.1 - onetime: 5.1.2 - signal-exit: 3.0.7 - strip-final-newline: 2.0.0 - execa@8.0.1: dependencies: cross-spawn: 7.0.3 @@ -8380,8 +8415,6 @@ snapshots: data-uri-to-buffer: 2.0.2 source-map: 0.6.1 - get-stream@6.0.1: {} - get-stream@8.0.1: {} get-tsconfig@4.7.5: @@ -8464,15 +8497,6 @@ snapshots: merge2: 1.4.1 slash: 3.0.0 - globby@11.1.0: - dependencies: - array-union: 2.1.0 - dir-glob: 3.0.1 - fast-glob: 3.3.2 - ignore: 5.3.1 - merge2: 1.4.1 - slash: 3.0.0 - globby@13.2.2: dependencies: dir-glob: 3.0.1 @@ -8554,6 +8578,20 @@ snapshots: stringify-entities: 4.0.3 zwitch: 2.0.4 + hast-util-to-html@9.0.2: + dependencies: + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + ccount: 2.0.1 + comma-separated-tokens: 2.0.3 + hast-util-whitespace: 3.0.0 + html-void-elements: 3.0.0 + mdast-util-to-hast: 13.2.0 + property-information: 6.4.1 + space-separated-tokens: 2.0.2 + stringify-entities: 4.0.3 + zwitch: 2.0.4 + hast-util-to-parse5@8.0.0: dependencies: '@types/hast': 3.0.4 @@ -8612,8 +8650,6 @@ snapshots: transitivePeerDependencies: - supports-color - human-signals@2.1.0: {} - human-signals@5.0.0: {} iconv-lite@0.6.3: @@ -8715,8 +8751,6 @@ snapshots: dependencies: '@types/estree': 1.0.5 - is-stream@2.0.1: {} - is-stream@3.0.0: {} is-what@4.1.16: {} @@ -9422,15 +9456,13 @@ snapshots: mime@3.0.0: {} - mimic-fn@2.1.0: {} - mimic-fn@4.0.0: {} mimic-function@5.0.1: {} min-indent@1.0.1: {} - miniflare@3.20240806.1: + miniflare@3.20240821.0: dependencies: '@cspotcode/source-map-support': 0.8.1 acorn: 8.12.1 @@ -9440,7 +9472,7 @@ snapshots: glob-to-regexp: 0.4.1 stoppable: 1.1.0 undici: 5.28.4 - workerd: 1.20240806.0 + workerd: 1.20240821.1 ws: 8.17.1 youch: 3.3.3 zod: 3.22.4 @@ -9535,7 +9567,7 @@ snapshots: pkg-types: 1.1.3 ufo: 1.5.3 - monaco-editor-core@0.50.0: {} + monaco-editor-core@0.51.0: {} mri@1.2.0: {} @@ -9596,10 +9628,6 @@ snapshots: transitivePeerDependencies: - supports-color - npm-run-path@4.0.1: - dependencies: - path-key: 3.1.1 - npm-run-path@5.2.0: dependencies: path-key: 4.0.0 @@ -9615,7 +9643,7 @@ snapshots: execa: 8.0.1 pathe: 1.1.2 pkg-types: 1.1.3 - ufo: 1.5.3 + ufo: 1.5.4 ofetch@1.3.4: dependencies: @@ -9629,10 +9657,6 @@ snapshots: dependencies: wrappy: 1.0.2 - onetime@5.1.2: - dependencies: - mimic-fn: 2.1.0 - onetime@6.0.0: dependencies: mimic-fn: 4.0.0 @@ -9641,6 +9665,8 @@ snapshots: dependencies: mimic-function: 5.0.1 + oniguruma-to-js@0.2.3: {} + optionator@0.9.3: dependencies: '@aashutoshrathi/word-wrap': 1.2.6 @@ -9674,7 +9700,7 @@ snapshots: package-json-from-dist@1.0.0: {} - package-manager-detector@0.1.2: {} + package-manager-detector@0.2.0: {} parent-module@1.0.1: dependencies: @@ -9767,7 +9793,7 @@ snapshots: pluralize@8.0.0: {} - pnpm@9.8.0: {} + pnpm@9.9.0: {} postcss-calc@9.0.1(postcss@8.4.41): dependencies: @@ -10086,22 +10112,22 @@ snapshots: optionalDependencies: '@babel/code-frame': 7.24.7 - rollup-plugin-dts@6.1.1(rollup@4.21.0)(typescript@5.5.4): + rollup-plugin-dts@6.1.1(rollup@4.21.2)(typescript@5.5.4): dependencies: magic-string: 0.30.11 - rollup: 4.21.0 + rollup: 4.21.2 typescript: 5.5.4 optionalDependencies: '@babel/code-frame': 7.24.7 - rollup-plugin-esbuild@6.1.1(esbuild@0.17.19)(rollup@4.21.0): + rollup-plugin-esbuild@6.1.1(esbuild@0.17.19)(rollup@4.21.2): dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.21.0) + '@rollup/pluginutils': 5.1.0(rollup@4.21.2) debug: 4.3.6 es-module-lexer: 1.5.4 esbuild: 0.17.19 get-tsconfig: 4.7.5 - rollup: 4.21.0 + rollup: 4.21.2 transitivePeerDependencies: - supports-color @@ -10115,12 +10141,12 @@ snapshots: dependencies: rollup-plugin-inject: 3.0.2 - rollup-plugin-typescript2@0.36.0(rollup@4.21.0)(typescript@5.5.4): + rollup-plugin-typescript2@0.36.0(rollup@4.21.2)(typescript@5.5.4): dependencies: '@rollup/pluginutils': 4.2.1 find-cache-dir: 3.3.2 fs-extra: 10.1.0 - rollup: 4.21.0 + rollup: 4.21.2 semver: 7.6.3 tslib: 2.6.2 typescript: 5.5.4 @@ -10155,6 +10181,28 @@ snapshots: '@rollup/rollup-win32-x64-msvc': 4.21.0 fsevents: 2.3.3 + rollup@4.21.2: + dependencies: + '@types/estree': 1.0.5 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.21.2 + '@rollup/rollup-android-arm64': 4.21.2 + '@rollup/rollup-darwin-arm64': 4.21.2 + '@rollup/rollup-darwin-x64': 4.21.2 + '@rollup/rollup-linux-arm-gnueabihf': 4.21.2 + '@rollup/rollup-linux-arm-musleabihf': 4.21.2 + '@rollup/rollup-linux-arm64-gnu': 4.21.2 + '@rollup/rollup-linux-arm64-musl': 4.21.2 + '@rollup/rollup-linux-powerpc64le-gnu': 4.21.2 + '@rollup/rollup-linux-riscv64-gnu': 4.21.2 + '@rollup/rollup-linux-s390x-gnu': 4.21.2 + '@rollup/rollup-linux-x64-gnu': 4.21.2 + '@rollup/rollup-linux-x64-musl': 4.21.2 + '@rollup/rollup-win32-arm64-msvc': 4.21.2 + '@rollup/rollup-win32-ia32-msvc': 4.21.2 + '@rollup/rollup-win32-x64-msvc': 4.21.2 + fsevents: 2.3.3 + run-parallel@1.2.0: dependencies: queue-microtask: 1.2.3 @@ -10209,8 +10257,6 @@ snapshots: siginfo@2.0.0: {} - signal-exit@3.0.7: {} - signal-exit@4.1.0: {} simple-git-hooks@2.11.1: {} @@ -10342,8 +10388,6 @@ snapshots: dependencies: ansi-regex: 6.0.1 - strip-final-newline@2.0.0: {} - strip-final-newline@3.0.0: {} strip-indent@3.0.0: @@ -10386,7 +10430,7 @@ snapshots: synckit@0.6.2: dependencies: - tslib: 2.6.2 + tslib: 2.7.0 synckit@0.9.1: dependencies: @@ -10406,13 +10450,14 @@ snapshots: mkdirp: 1.0.4 yallist: 4.0.0 - taze@0.16.6: + taze@0.16.7: dependencies: - '@antfu/ni': 0.22.4 - '@jsdevtools/ez-spawn': 3.0.4 + '@antfu/ni': 0.23.0 js-yaml: 4.1.0 npm-registry-fetch: 17.1.0 ofetch: 1.3.4 + package-manager-detector: 0.2.0 + tinyexec: 0.3.0 unconfig: 0.5.5 yargs: 17.7.2 transitivePeerDependencies: @@ -10435,9 +10480,9 @@ snapshots: tinybench@2.8.0: {} - tinyexec@0.2.0: {} + tinyexec@0.3.0: {} - tinyglobby@0.2.2: + tinyglobby@0.2.5: dependencies: fdir: 6.2.0(picomatch@4.0.2) picomatch: 4.0.2 @@ -10448,9 +10493,9 @@ snapshots: tinyspy@3.0.0: {} - tm-grammars@1.17.3: {} + tm-grammars@1.17.9: {} - tm-themes@1.8.0: {} + tm-themes@1.8.1: {} to-fast-properties@2.0.0: {} @@ -10480,6 +10525,8 @@ snapshots: tslib@2.6.2: {} + tslib@2.7.0: {} + tsx@4.16.3: dependencies: esbuild: 0.21.5 @@ -10524,6 +10571,8 @@ snapshots: ufo@1.5.3: {} + ufo@1.5.4: {} + unbuild@2.0.0(typescript@5.5.4): dependencies: '@rollup/plugin-alias': 5.1.0(rollup@3.29.4) @@ -10570,14 +10619,12 @@ snapshots: dependencies: '@fastify/busboy': 2.1.0 - unenv-nightly@1.10.0-1717606461.a117952: + unenv-nightly@2.0.0-1724863496.70db6f1: dependencies: - consola: 3.2.3 defu: 6.1.4 - mime: 3.0.0 - node-fetch-native: 1.6.4 + ohash: 1.1.3 pathe: 1.1.2 - ufo: 1.5.3 + ufo: 1.5.4 unified@11.0.5: dependencies: @@ -10632,39 +10679,39 @@ snapshots: universalify@2.0.1: {} - unocss@0.62.2(postcss@8.4.41)(rollup@4.21.0)(vite@5.4.2(@types/node@22.5.0)(terser@5.27.0)): - dependencies: - '@unocss/astro': 0.62.2(rollup@4.21.0)(vite@5.4.2(@types/node@22.5.0)(terser@5.27.0)) - '@unocss/cli': 0.62.2(rollup@4.21.0) - '@unocss/core': 0.62.2 - '@unocss/extractor-arbitrary-variants': 0.62.2 - '@unocss/postcss': 0.62.2(postcss@8.4.41) - '@unocss/preset-attributify': 0.62.2 - '@unocss/preset-icons': 0.62.2 - '@unocss/preset-mini': 0.62.2 - '@unocss/preset-tagify': 0.62.2 - '@unocss/preset-typography': 0.62.2 - '@unocss/preset-uno': 0.62.2 - '@unocss/preset-web-fonts': 0.62.2 - '@unocss/preset-wind': 0.62.2 - '@unocss/reset': 0.62.2 - '@unocss/transformer-attributify-jsx': 0.62.2 - '@unocss/transformer-attributify-jsx-babel': 0.62.2 - '@unocss/transformer-compile-class': 0.62.2 - '@unocss/transformer-directives': 0.62.2 - '@unocss/transformer-variant-group': 0.62.2 - '@unocss/vite': 0.62.2(rollup@4.21.0)(vite@5.4.2(@types/node@22.5.0)(terser@5.27.0)) + unocss@0.62.3(postcss@8.4.41)(rollup@4.21.2)(vite@5.4.2(@types/node@22.5.1)(terser@5.27.0)): + dependencies: + '@unocss/astro': 0.62.3(rollup@4.21.2)(vite@5.4.2(@types/node@22.5.1)(terser@5.27.0)) + '@unocss/cli': 0.62.3(rollup@4.21.2) + '@unocss/core': 0.62.3 + '@unocss/extractor-arbitrary-variants': 0.62.3 + '@unocss/postcss': 0.62.3(postcss@8.4.41) + '@unocss/preset-attributify': 0.62.3 + '@unocss/preset-icons': 0.62.3 + '@unocss/preset-mini': 0.62.3 + '@unocss/preset-tagify': 0.62.3 + '@unocss/preset-typography': 0.62.3 + '@unocss/preset-uno': 0.62.3 + '@unocss/preset-web-fonts': 0.62.3 + '@unocss/preset-wind': 0.62.3 + '@unocss/reset': 0.62.3 + '@unocss/transformer-attributify-jsx': 0.62.3 + '@unocss/transformer-attributify-jsx-babel': 0.62.3 + '@unocss/transformer-compile-class': 0.62.3 + '@unocss/transformer-directives': 0.62.3 + '@unocss/transformer-variant-group': 0.62.3 + '@unocss/vite': 0.62.3(rollup@4.21.2)(vite@5.4.2(@types/node@22.5.1)(terser@5.27.0)) optionalDependencies: - vite: 5.4.2(@types/node@22.5.0)(terser@5.27.0) + vite: 5.4.2(@types/node@22.5.1)(terser@5.27.0) transitivePeerDependencies: - postcss - rollup - supports-color - unplugin-vue-components@0.27.4(@babel/parser@7.25.3)(rollup@4.21.0)(vue@3.4.38(typescript@5.5.4)): + unplugin-vue-components@0.27.4(@babel/parser@7.25.3)(rollup@4.21.2)(vue@3.4.38(typescript@5.5.4)): dependencies: '@antfu/utils': 0.7.10 - '@rollup/pluginutils': 5.1.0(rollup@4.21.0) + '@rollup/pluginutils': 5.1.0(rollup@4.21.2) chokidar: 3.6.0 debug: 4.3.6 fast-glob: 3.3.2 @@ -10743,13 +10790,13 @@ snapshots: unist-util-stringify-position: 4.0.0 vfile-message: 4.0.2 - vite-node@2.0.5(@types/node@22.5.0)(terser@5.27.0): + vite-node@2.0.5(@types/node@22.5.1)(terser@5.27.0): dependencies: cac: 6.7.14 debug: 4.3.6 pathe: 1.1.2 tinyrainbow: 1.2.0 - vite: 5.4.2(@types/node@22.5.0)(terser@5.27.0) + vite: 5.4.2(@types/node@22.5.1)(terser@5.27.0) transitivePeerDependencies: - '@types/node' - less @@ -10761,51 +10808,51 @@ snapshots: - supports-color - terser - vite-tsconfig-paths@5.0.1(typescript@5.5.4)(vite@5.4.2(@types/node@22.5.0)(terser@5.27.0)): + vite-tsconfig-paths@5.0.1(typescript@5.5.4)(vite@5.4.2(@types/node@22.5.1)(terser@5.27.0)): dependencies: debug: 4.3.6 globrex: 0.1.2 tsconfck: 3.0.3(typescript@5.5.4) optionalDependencies: - vite: 5.4.2(@types/node@22.5.0)(terser@5.27.0) + vite: 5.4.2(@types/node@22.5.1)(terser@5.27.0) transitivePeerDependencies: - supports-color - typescript - vite@5.4.2(@types/node@22.5.0)(terser@5.27.0): + vite@5.4.2(@types/node@22.5.1)(terser@5.27.0): dependencies: esbuild: 0.21.5 postcss: 8.4.41 rollup: 4.21.0 optionalDependencies: - '@types/node': 22.5.0 + '@types/node': 22.5.1 fsevents: 2.3.3 terser: 5.27.0 - vitepress-plugin-mermaid@2.0.16(mermaid@10.7.0)(vitepress@1.3.3(@algolia/client-search@4.22.1)(@types/node@22.5.0)(fuse.js@7.0.0)(postcss@8.4.41)(search-insights@2.13.0)(terser@5.27.0)(typescript@5.5.4)): + vitepress-plugin-mermaid@2.0.16(mermaid@10.7.0)(vitepress@1.3.4(@algolia/client-search@4.22.1)(@types/node@22.5.1)(fuse.js@7.0.0)(postcss@8.4.41)(search-insights@2.13.0)(terser@5.27.0)(typescript@5.5.4)): dependencies: mermaid: 10.7.0 - vitepress: 1.3.3(@algolia/client-search@4.22.1)(@types/node@22.5.0)(fuse.js@7.0.0)(postcss@8.4.41)(search-insights@2.13.0)(terser@5.27.0)(typescript@5.5.4) + vitepress: 1.3.4(@algolia/client-search@4.22.1)(@types/node@22.5.1)(fuse.js@7.0.0)(postcss@8.4.41)(search-insights@2.13.0)(terser@5.27.0)(typescript@5.5.4) optionalDependencies: '@mermaid-js/mermaid-mindmap': 9.3.0 - vitepress@1.3.3(@algolia/client-search@4.22.1)(@types/node@22.5.0)(fuse.js@7.0.0)(postcss@8.4.41)(search-insights@2.13.0)(terser@5.27.0)(typescript@5.5.4): + vitepress@1.3.4(@algolia/client-search@4.22.1)(@types/node@22.5.1)(fuse.js@7.0.0)(postcss@8.4.41)(search-insights@2.13.0)(terser@5.27.0)(typescript@5.5.4): dependencies: '@docsearch/css': 3.6.1 '@docsearch/js': 3.6.1(@algolia/client-search@4.22.1)(search-insights@2.13.0) '@shikijs/core': link:packages/core '@shikijs/transformers': link:packages/transformers '@types/markdown-it': 14.1.2 - '@vitejs/plugin-vue': 5.1.2(vite@5.4.2(@types/node@22.5.0)(terser@5.27.0))(vue@3.4.38(typescript@5.5.4)) + '@vitejs/plugin-vue': 5.1.2(vite@5.4.2(@types/node@22.5.1)(terser@5.27.0))(vue@3.4.38(typescript@5.5.4)) '@vue/devtools-api': 7.3.8 '@vue/shared': 3.4.38 - '@vueuse/core': 11.0.1(vue@3.4.38(typescript@5.5.4)) + '@vueuse/core': 11.0.3(vue@3.4.38(typescript@5.5.4)) '@vueuse/integrations': 11.0.0(focus-trap@7.5.4)(fuse.js@7.0.0)(vue@3.4.38(typescript@5.5.4)) focus-trap: 7.5.4 mark.js: 8.11.1 minisearch: 7.1.0 shiki: link:packages/shiki - vite: 5.4.2(@types/node@22.5.0)(terser@5.27.0) + vite: 5.4.2(@types/node@22.5.1)(terser@5.27.0) vue: 3.4.38(typescript@5.5.4) optionalDependencies: postcss: 8.4.41 @@ -10837,7 +10884,7 @@ snapshots: - typescript - universal-cookie - vitest@2.0.5(@types/node@22.5.0)(terser@5.27.0): + vitest@2.0.5(@types/node@22.5.1)(terser@5.27.0): dependencies: '@ampproject/remapping': 2.3.0 '@vitest/expect': 2.0.5 @@ -10855,11 +10902,11 @@ snapshots: tinybench: 2.8.0 tinypool: 1.0.0 tinyrainbow: 1.2.0 - vite: 5.4.2(@types/node@22.5.0)(terser@5.27.0) - vite-node: 2.0.5(@types/node@22.5.0)(terser@5.27.0) + vite: 5.4.2(@types/node@22.5.1)(terser@5.27.0) + vite-node: 2.0.5(@types/node@22.5.1)(terser@5.27.0) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 22.5.0 + '@types/node': 22.5.1 transitivePeerDependencies: - less - lightningcss @@ -10880,10 +10927,10 @@ snapshots: dependencies: vue: 3.4.38(typescript@5.5.4) - vue-eslint-parser@9.4.3(eslint@9.9.0(jiti@1.21.6)): + vue-eslint-parser@9.4.3(eslint@9.9.1(jiti@1.21.6)): dependencies: debug: 4.3.6 - eslint: 9.9.0(jiti@1.21.6) + eslint: 9.9.1(jiti@1.21.6) eslint-scope: 7.2.2 eslint-visitor-keys: 3.4.3 espree: 9.6.1 @@ -10897,10 +10944,10 @@ snapshots: dependencies: vue: 3.4.38(typescript@5.5.4) - vue-tsc@2.0.29(typescript@5.5.4): + vue-tsc@2.1.2(typescript@5.5.4): dependencies: - '@volar/typescript': 2.4.0-alpha.18 - '@vue/language-core': 2.0.29(typescript@5.5.4) + '@volar/typescript': 2.4.1 + '@vue/language-core': 2.1.2(typescript@5.5.4) semver: 7.6.3 typescript: 5.5.4 @@ -10931,33 +10978,33 @@ snapshots: siginfo: 2.0.0 stackback: 0.0.2 - workerd@1.20240806.0: + workerd@1.20240821.1: optionalDependencies: - '@cloudflare/workerd-darwin-64': 1.20240806.0 - '@cloudflare/workerd-darwin-arm64': 1.20240806.0 - '@cloudflare/workerd-linux-64': 1.20240806.0 - '@cloudflare/workerd-linux-arm64': 1.20240806.0 - '@cloudflare/workerd-windows-64': 1.20240806.0 + '@cloudflare/workerd-darwin-64': 1.20240821.1 + '@cloudflare/workerd-darwin-arm64': 1.20240821.1 + '@cloudflare/workerd-linux-64': 1.20240821.1 + '@cloudflare/workerd-linux-arm64': 1.20240821.1 + '@cloudflare/workerd-windows-64': 1.20240821.1 - wrangler@3.72.1: + wrangler@3.73.0: dependencies: '@cloudflare/kv-asset-handler': 0.3.4 - '@cloudflare/workers-shared': 0.2.0 + '@cloudflare/workers-shared': 0.4.1 '@esbuild-plugins/node-globals-polyfill': 0.2.3(esbuild@0.17.19) '@esbuild-plugins/node-modules-polyfill': 0.2.2(esbuild@0.17.19) blake3-wasm: 2.1.5 chokidar: 3.6.0 date-fns: 3.6.0 esbuild: 0.17.19 - miniflare: 3.20240806.1 + miniflare: 3.20240821.0 nanoid: 3.3.7 path-to-regexp: 6.2.1 resolve: 1.22.8 resolve.exports: 2.0.2 selfsigned: 2.4.1 source-map: 0.6.1 - unenv: unenv-nightly@1.10.0-1717606461.a117952 - workerd: 1.20240806.0 + unenv: unenv-nightly@2.0.0-1724863496.70db6f1 + workerd: 1.20240821.1 xxhash-wasm: 1.0.2 optionalDependencies: fsevents: 2.3.3 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index fb0303220..e16418757 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -6,8 +6,8 @@ packages: - docs - packages/@shikijs/core/vendor/* catalog: - '@antfu/eslint-config': ^2.27.0 - '@antfu/ni': ^0.22.4 + '@antfu/eslint-config': ^3.0.0 + '@antfu/ni': ^0.23.0 '@antfu/utils': ^0.7.10 '@iconify-json/carbon': ^1.1.37 '@iconify-json/codicon': ^1.1.51 @@ -24,14 +24,14 @@ catalog: '@types/hast': ^3.0.4 '@types/markdown-it': ^14.1.2 '@types/minimist': ^1.2.5 - '@types/node': ^22.5.0 - '@unocss/reset': ^0.62.2 + '@types/node': ^22.5.1 + '@unocss/reset': ^0.62.3 '@vitest/coverage-v8': ^2.0.5 - '@vueuse/core': ^11.0.1 + '@vueuse/core': ^11.0.3 ansi-sequence-parser: ^1.1.1 - bumpp: ^9.5.1 + bumpp: ^9.5.2 chalk: ^5.3.0 - eslint: ^9.9.0 + eslint: ^9.9.1 eslint-plugin-format: ^0.1.2 esno: ^4.7.0 fast-glob: ^3.3.2 @@ -39,7 +39,7 @@ catalog: fs-extra: ^11.2.0 fuse.js: ^7.0.0 hast-util-from-html: ^2.0.2 - hast-util-to-html: ^9.0.1 + hast-util-to-html: ^9.0.2 hast-util-to-string: ^3.0.0 jsonc-parser: ^3.3.1 lint-staged: ^15.2.9 @@ -48,40 +48,42 @@ catalog: mdast-util-gfm: ^3.0.0 mdast-util-to-hast: ^13.2.0 minimist: ^1.2.8 - monaco-editor-core: ^0.50.0 + monaco-editor-core: ^0.51.0 ofetch: ^1.3.4 + oniguruma-to-js: ^0.2.3 + picocolors: ^1.0.1 pinia: ^2.2.2 - pnpm: ^9.8.0 + pnpm: ^9.9.0 prettier: ^3.3.3 rehype-raw: ^7.0.0 rehype-stringify: ^10.0.0 remark-parse: ^11.0.0 remark-rehype: ^11.1.0 rimraf: ^6.0.1 - rollup: ^4.21.0 + rollup: ^4.21.2 rollup-plugin-copy: ^3.5.0 rollup-plugin-dts: ^6.1.1 rollup-plugin-esbuild: ^6.1.1 rollup-plugin-typescript2: ^0.36.0 shiki-legacy: npm:shiki@^0.14.7 simple-git-hooks: ^2.11.1 - taze: ^0.16.6 - tm-grammars: ^1.17.3 - tm-themes: ^1.8.0 + taze: ^0.16.7 + tm-grammars: ^1.17.9 + tm-themes: ^1.8.1 twoslash: ^0.2.9 twoslash-vue: ^0.2.9 typescript: ^5.5.4 unbuild: ^2.0.0 unified: ^11.0.5 unist-util-visit: ^5.0.0 - unocss: ^0.62.2 + unocss: ^0.62.3 unplugin-vue-components: ^0.27.4 vite: ^5.4.2 vite-tsconfig-paths: ^5.0.1 - vitepress: ^1.3.3 + vitepress: ^1.3.4 vitepress-plugin-mermaid: ^2.0.16 vitest: ^2.0.5 vscode-oniguruma: ^1.7.0 vue: ^3.4.38 - vue-tsc: ^2.0.29 - wrangler: ^3.72.1 + vue-tsc: ^2.1.2 + wrangler: ^3.73.0 diff --git a/scripts/report-engine-js-compat.md b/scripts/report-engine-js-compat.md new file mode 100644 index 000000000..8568a51d9 --- /dev/null +++ b/scripts/report-engine-js-compat.md @@ -0,0 +1,230 @@ +# Report: JavaScript RegExp Engine Compatibility + +> At Fri Aug 30 2024 +> +> Version `1.14.1` +> +> Runtime: Node.js v20.12.2 + +| Status | Number | +| :-------------- | -----: | +| Total Languages | 213 | +| OK | 84 | +| Mismatch | 127 | +| Error | 2 | + +| Language | Highlight Match | Patterns Parsable | Patterns Failed | +| ------------------ | :-------------- | ----------------- | --------------- | +| actionscript-3 | ✅ OK | 57 | - | +| apl | ✅ OK | 179 | - | +| awk | ✅ OK | 36 | - | +| ballerina | ✅ OK | 231 | - | +| beancount | ✅ OK | 39 | - | +| berry | ✅ OK | 18 | - | +| bibtex | ✅ OK | 19 | - | +| clj | ✅ OK | 38 | - | +| clojure | ✅ OK | 38 | - | +| codeowners | ✅ OK | 4 | - | +| coffee | ✅ OK | 120 | - | +| css | ✅ OK | 141 | - | +| csv | ✅ OK | 1 | - | +| dax | ✅ OK | 23 | - | +| desktop | ✅ OK | 16 | - | +| dream-maker | ✅ OK | 55 | - | +| elixir | ✅ OK | 102 | - | +| elm | ✅ OK | 68 | - | +| erb | ✅ OK | 6 | - | +| fennel | ✅ OK | 31 | - | +| fsl | ✅ OK | 30 | - | +| gdshader | ✅ OK | 38 | - | +| gherkin | ✅ OK | 16 | - | +| gleam | ✅ OK | 26 | - | +| glimmer-js | ✅ OK | 74 | - | +| glimmer-ts | ✅ OK | 74 | - | +| graphql | ✅ OK | 63 | - | +| handlebars | ✅ OK | 64 | - | +| hcl | ✅ OK | 61 | - | +| imba | ✅ OK | 242 | - | +| javascript | ✅ OK | 378 | - | +| jinja | ✅ OK | 35 | - | +| json | ✅ OK | 19 | - | +| json5 | ✅ OK | 23 | - | +| jssm | ✅ OK | 30 | - | +| jsx | ✅ OK | 378 | - | +| kotlin | ✅ OK | 58 | - | +| lean | ✅ OK | 32 | - | +| liquid | ✅ OK | 69 | - | +| log | ✅ OK | 30 | - | +| luau | ✅ OK | 88 | - | +| marko | ✅ OK | 81 | - | +| mojo | ✅ OK | 213 | - | +| move | ✅ OK | 117 | - | +| nextflow | ✅ OK | 17 | - | +| nginx | ✅ OK | 102 | - | +| nix | ✅ OK | 80 | - | +| ocaml | ✅ OK | 178 | - | +| postcss | ✅ OK | 47 | - | +| prisma | ✅ OK | 26 | - | +| prolog | ✅ OK | 26 | - | +| proto | ✅ OK | 33 | - | +| python | ✅ OK | 218 | - | +| qml | ✅ OK | 38 | - | +| qmldir | ✅ OK | 7 | - | +| qss | ✅ OK | 31 | - | +| regexp | ✅ OK | 34 | - | +| rel | ✅ OK | 17 | - | +| rst | ✅ OK | 61 | - | +| sas | ✅ OK | 32 | - | +| sass | ✅ OK | 67 | - | +| scss | ✅ OK | 104 | - | +| smalltalk | ✅ OK | 31 | - | +| system-verilog | ✅ OK | 102 | - | +| systemd | ✅ OK | 32 | - | +| tcl | ✅ OK | 33 | - | +| terraform | ✅ OK | 62 | - | +| ts-tags | ✅ OK | - | - | +| tsv | ✅ OK | 1 | - | +| tsx | ✅ OK | 378 | - | +| twig | ✅ OK | 94 | - | +| typescript | ✅ OK | 366 | - | +| typst | ✅ OK | 78 | - | +| v | ✅ OK | 76 | - | +| viml | ✅ OK | 72 | - | +| vyper | ✅ OK | 238 | - | +| wenyan | ✅ OK | 18 | - | +| wgsl | ✅ OK | 44 | - | +| wikitext | ✅ OK | 104 | - | +| wolfram | ✅ OK | 501 | - | +| xml | ✅ OK | 30 | - | +| xsl | ✅ OK | 5 | - | +| zenscript | ✅ OK | 21 | - | +| zig | ✅ OK | 51 | - | +| abap | ⚠️ Mismatch | 49 | - | +| angular-html | ⚠️ Mismatch | 2 | - | +| angular-ts | ⚠️ Mismatch | 366 | - | +| apache | ⚠️ Mismatch | 60 | - | +| apex | ⚠️ Mismatch | 189 | - | +| applescript | ⚠️ Mismatch | 151 | - | +| ara | ⚠️ Mismatch | 54 | - | +| asciidoc | ⚠️ Mismatch | 262 | - | +| asm | ⚠️ Mismatch | 297 | - | +| astro | ⚠️ Mismatch | 59 | - | +| bash | ⚠️ Mismatch | 146 | - | +| bat | ⚠️ Mismatch | 58 | - | +| bicep | ⚠️ Mismatch | 28 | - | +| blade | ⚠️ Mismatch | 330 | - | +| c | ⚠️ Mismatch | 158 | - | +| cadence | ⚠️ Mismatch | 71 | - | +| clarity | ⚠️ Mismatch | 43 | - | +| cmake | ⚠️ Mismatch | 23 | - | +| cobol | ⚠️ Mismatch | 138 | - | +| codeql | ⚠️ Mismatch | 150 | - | +| common-lisp | ⚠️ Mismatch | 57 | - | +| coq | ⚠️ Mismatch | 25 | - | +| cpp | ⚠️ Mismatch | 220 | - | +| crystal | ⚠️ Mismatch | 140 | - | +| cue | ⚠️ Mismatch | 85 | - | +| cypher | ⚠️ Mismatch | 39 | - | +| d | ⚠️ Mismatch | 270 | - | +| dart | ⚠️ Mismatch | 71 | - | +| diff | ⚠️ Mismatch | 16 | - | +| docker | ⚠️ Mismatch | 7 | - | +| dotenv | ⚠️ Mismatch | 9 | - | +| edge | ⚠️ Mismatch | 10 | - | +| emacs-lisp | ⚠️ Mismatch | 151 | - | +| erlang | ⚠️ Mismatch | 147 | - | +| fish | ⚠️ Mismatch | 22 | - | +| fluent | ⚠️ Mismatch | 23 | - | +| fortran-fixed-form | ⚠️ Mismatch | 6 | - | +| fortran-free-form | ⚠️ Mismatch | 317 | - | +| fsharp | ⚠️ Mismatch | 120 | - | +| gdresource | ⚠️ Mismatch | 32 | - | +| gdscript | ⚠️ Mismatch | 93 | - | +| genie | ⚠️ Mismatch | 20 | - | +| glsl | ⚠️ Mismatch | 7 | - | +| gnuplot | ⚠️ Mismatch | 82 | - | +| go | ⚠️ Mismatch | 117 | - | +| groovy | ⚠️ Mismatch | 134 | - | +| hack | ⚠️ Mismatch | 301 | - | +| haml | ⚠️ Mismatch | 64 | - | +| haskell | ⚠️ Mismatch | 157 | - | +| haxe | ⚠️ Mismatch | 175 | - | +| hjson | ⚠️ Mismatch | 55 | - | +| hlsl | ⚠️ Mismatch | 52 | - | +| html | ⚠️ Mismatch | 116 | - | +| http | ⚠️ Mismatch | 20 | - | +| hxml | ⚠️ Mismatch | 6 | - | +| hy | ⚠️ Mismatch | 9 | - | +| ini | ⚠️ Mismatch | 11 | - | +| java | ⚠️ Mismatch | 141 | - | +| jison | ⚠️ Mismatch | 57 | - | +| jsonc | ⚠️ Mismatch | 19 | - | +| jsonl | ⚠️ Mismatch | 19 | - | +| jsonnet | ⚠️ Mismatch | 33 | - | +| kusto | ⚠️ Mismatch | 60 | - | +| latex | ⚠️ Mismatch | 183 | - | +| less | ⚠️ Mismatch | 261 | - | +| logo | ⚠️ Mismatch | 9 | - | +| lua | ⚠️ Mismatch | 113 | - | +| make | ⚠️ Mismatch | 48 | - | +| markdown | ⚠️ Mismatch | 103 | - | +| matlab | ⚠️ Mismatch | 77 | - | +| mdc | ⚠️ Mismatch | 27 | - | +| mdx | ⚠️ Mismatch | 180 | - | +| mermaid | ⚠️ Mismatch | 129 | - | +| narrat | ⚠️ Mismatch | 34 | - | +| nim | ⚠️ Mismatch | 114 | - | +| nushell | ⚠️ Mismatch | 75 | - | +| objective-c | ⚠️ Mismatch | 219 | - | +| objective-cpp | ⚠️ Mismatch | 300 | - | +| pascal | ⚠️ Mismatch | 23 | - | +| perl | ⚠️ Mismatch | 156 | - | +| php | ⚠️ Mismatch | 328 | - | +| plsql | ⚠️ Mismatch | 43 | - | +| po | ⚠️ Mismatch | 23 | - | +| powerquery | ⚠️ Mismatch | 30 | - | +| powershell | ⚠️ Mismatch | 88 | - | +| pug | ⚠️ Mismatch | 92 | - | +| puppet | ⚠️ Mismatch | 59 | - | +| purescript | ⚠️ Mismatch | 72 | - | +| r | ⚠️ Mismatch | 73 | - | +| racket | ⚠️ Mismatch | 68 | - | +| raku | ⚠️ Mismatch | 52 | - | +| reg | ⚠️ Mismatch | 9 | - | +| riscv | ⚠️ Mismatch | 36 | - | +| ruby | ⚠️ Mismatch | 154 | - | +| rust | ⚠️ Mismatch | 89 | - | +| scala | ⚠️ Mismatch | 108 | - | +| scheme | ⚠️ Mismatch | 34 | - | +| shaderlab | ⚠️ Mismatch | 38 | - | +| shellscript | ⚠️ Mismatch | 146 | - | +| shellsession | ⚠️ Mismatch | 2 | - | +| solidity | ⚠️ Mismatch | 102 | - | +| soy | ⚠️ Mismatch | 45 | - | +| sparql | ⚠️ Mismatch | 4 | - | +| splunk | ⚠️ Mismatch | 17 | - | +| sql | ⚠️ Mismatch | 67 | - | +| ssh-config | ⚠️ Mismatch | 12 | - | +| stata | ⚠️ Mismatch | 189 | - | +| stylus | ⚠️ Mismatch | 107 | - | +| svelte | ⚠️ Mismatch | 83 | - | +| tasl | ⚠️ Mismatch | 22 | - | +| templ | ⚠️ Mismatch | 74 | - | +| tex | ⚠️ Mismatch | 38 | - | +| toml | ⚠️ Mismatch | 40 | - | +| turtle | ⚠️ Mismatch | 15 | - | +| typespec | ⚠️ Mismatch | 80 | - | +| vala | ⚠️ Mismatch | 20 | - | +| vb | ⚠️ Mismatch | 34 | - | +| verilog | ⚠️ Mismatch | 33 | - | +| vhdl | ⚠️ Mismatch | 82 | - | +| vue | ⚠️ Mismatch | 69 | - | +| vue-html | ⚠️ Mismatch | 36 | - | +| wasm | ⚠️ Mismatch | 78 | - | +| yaml | ⚠️ Mismatch | 46 | - | +| zsh | ⚠️ Mismatch | 146 | - | +| ada | ⚠️ Mismatch | 199 | 1 | +| csharp | ⚠️ Mismatch | 298 | 1 | +| razor | ⚠️ Mismatch | 83 | 2 | +| swift | ❌ Error | 302 | 4 | +| julia | ❌ Error | 77 | 18 | diff --git a/scripts/report-engine-js-compat.ts b/scripts/report-engine-js-compat.ts new file mode 100644 index 000000000..9720c50a1 --- /dev/null +++ b/scripts/report-engine-js-compat.ts @@ -0,0 +1,173 @@ +import fs from 'node:fs/promises' +import process from 'node:process' +import { bundledLanguages, createHighlighter, createJavaScriptRegexEngine } from 'shiki' +import c from 'picocolors' +import { version } from '../package.json' + +const engine = createJavaScriptRegexEngine() + +export interface ReportItem { + lang: string + highlightMatch: boolean | 'error' + patternsParsable: number + patternsFailed: [string, unknown][] + highlightA?: string + highlightB?: string +} + +async function run() { + const report: ReportItem[] = [] + + for (const lang of Object.keys(bundledLanguages)) { + const sample = await fs.readFile(`../tm-grammars-themes/samples/${lang}.sample`, 'utf-8') + .catch(() => '') + + if (!sample) { + console.log(c.dim(`[${lang}] Sample not found`)) + continue + } + + let shiki = null + const parsablePatterns: string[] = [] + const unparsablePatterns: [string, unknown][] = [] + + const shikiWasm = await createHighlighter({ + langs: [lang], + themes: ['vitesse-dark'], + }) + + const grammar = shikiWasm.getLanguage(lang) as any + const patterns = getPatternsOfGrammar(grammar._grammar) + let highlightMatch: boolean | 'error' = false + + for (const pattern of patterns) { + try { + engine.createScanner([pattern]) + parsablePatterns.push(pattern) + } + catch (e: any) { + unparsablePatterns.push([pattern, String(e.cause || e)]) + } + } + + const highlightA = shikiWasm.codeToHtml(sample, { lang, theme: 'vitesse-dark' }) + let highlightB: string | undefined + + try { + shiki = await createHighlighter({ + langs: [lang], + themes: ['vitesse-dark'], + engine, + }) + + highlightB = shiki.codeToHtml(sample, { lang, theme: 'vitesse-dark' }) + + highlightMatch = highlightA === highlightB + + if (!highlightMatch) { + console.log(c.yellow(`[${lang}] Mismatch`)) + } + else { + console.log(c.green(`[${lang}] OK`)) + } + } + catch (e) { + highlightMatch = 'error' + console.log(c.red(`[${lang}] Error ${e}`)) + } + finally { + report.push({ + lang, + highlightMatch, + patternsParsable: parsablePatterns.length, + patternsFailed: unparsablePatterns, + ...highlightMatch === true + ? {} + : { + highlightA, + highlightB, + }, + }) + + shikiWasm?.dispose() + shiki?.dispose() + } + } + + const order = [true, false, 'error'] + + report + .sort((a, b) => { + const aOrder = order.indexOf(a.highlightMatch) + const bOrder = order.indexOf(b.highlightMatch) + + if (aOrder !== bOrder) + return aOrder - bOrder + + return (a.patternsFailed.length - b.patternsFailed.length) || a.lang.localeCompare(b.lang) + }) + + await fs.writeFile( + new URL('./report-engine-js-compat.json', import.meta.url), + JSON.stringify(report, null, 2), + ) + + const table: readonly [string, string, string, string][] = [ + ['Language', 'Highlight Match', 'Patterns Parsable', 'Patterns Failed'], + ['---', ':---', '---', '---'], + ...report + .map(item => [ + item.lang, + item.highlightMatch === true ? '✅ OK' : item.highlightMatch === 'error' ? '❌ Error' : '⚠️ Mismatch', + item.patternsParsable === 0 ? '-' : item.patternsParsable.toString(), + item.patternsFailed.length === 0 ? '-' : item.patternsFailed.length.toString(), + ] as [string, string, string, string]), + ] + + const markdown = [ + '# Report: JavaScript RegExp Engine Compatibility', + '', + `> At ${new Date().toDateString()}`, + '>', + `> Version \`${version}\``, + '>', + `> Runtime: Node.js v${process.versions.node}`, + '', + '| Status | Number |', + '| :--- | ---: |', + `| Total Languages | ${report.length} |`, + `| OK | ${report.filter(item => item.highlightMatch === true).length} |`, + `| Mismatch | ${report.filter(item => item.highlightMatch === false).length} |`, + `| Error | ${report.filter(item => item.highlightMatch === 'error').length} |`, + '', + table.map(row => `| ${row.join(' | ')} |`).join('\n'), + ].join('\n') + await fs.writeFile( + new URL('./report-engine-js-compat.md', import.meta.url), + markdown, + ) +} + +function getPatternsOfGrammar(grammar: any) { + const patterns = new Set() + + const scan = (obj: any) => { + if (!obj) + return + if (typeof obj.match === 'string') + patterns.add(obj.match) + if (typeof obj.begin === 'string') + patterns.add(obj.begin) + if (typeof obj.end === 'string') + patterns.add(obj.end) + if (obj.patterns) + obj.patterns.forEach(scan) + Object.values(obj.repository || {}).forEach(scan) + } + + scan(grammar) + + return patterns +} + +run()