Better Names for Math UI Components

This commit is contained in:
meinzzzz 2025-11-20 22:45:21 +01:00
parent e777b06fb8
commit 49e90c08a9
7 changed files with 149 additions and 158 deletions

View File

@ -71,7 +71,6 @@
]
},
"dependencies": {
"@ckeditor/ckeditor5-icons": "47.2.0",
"mathlive": "0.108.2"
}
}

View File

@ -57,7 +57,7 @@ export default class MathUI extends Plugin {
this._balloon.showStack( 'main' );
requestAnimationFrame(() => {
this.formView?.mathInputView.focus();
this.formView?.mathLiveInputView.focus();
});
}
@ -90,13 +90,22 @@ export default class MathUI extends Plugin {
mathConfig.katexRenderOptions!
);
formView.mathInputView.bind( 'value' ).to( mathCommand, value => value ?? '' );
formView.mathLiveInputView.bind( 'value' ).to( mathCommand, 'value' );
formView.displayButtonView.bind( 'isOn' ).to( mathCommand, 'display' );
// Form elements should be read-only when corresponding commands are disabled.
formView.mathInputView.bind( 'isReadOnly' ).to( mathCommand, 'isEnabled', value => !value );
formView.saveButtonView.bind( 'isEnabled' ).to( mathCommand );
formView.displayButtonView.bind( 'isEnabled' ).to( mathCommand );
formView.mathLiveInputView.bind( 'isReadOnly' ).to( mathCommand, 'isEnabled', value => !value );
formView.saveButtonView.bind( 'isEnabled' ).to(
mathCommand,
'isEnabled',
formView.mathLiveInputView,
'value',
( commandEnabled, equation ) => {
const normalizedEquation = ( equation ?? '' ).trim();
return commandEnabled && normalizedEquation.length > 0;
}
);
formView.displayButtonView.bind( 'isEnabled' ).to( mathCommand, 'isEnabled' );
// Listen to submit button click
this.listenTo( formView, 'submit', () => {
@ -151,7 +160,7 @@ export default class MathUI extends Plugin {
} );
if ( this._balloon.visibleView === this.formView ) {
this.formView.mathInputView.focus();
this.formView.mathLiveInputView.focus();
}
// Show preview element

View File

@ -10,7 +10,7 @@ import type { KatexOptions } from '../typings-external.js';
export default class MainFormView extends View {
public saveButtonView: ButtonView;
public mathInputView: MathLiveInputView;
public mathLiveInputView: MathLiveInputView;
public rawLatexInputView: RawLatexInputView;
public rawLatexLabel: LabelView;
public displayButtonView: SwitchButtonView;
@ -46,8 +46,8 @@ export default class MainFormView extends View {
this.saveButtonView = this._createButton( t( 'Save' ), IconCheck, 'ck-button-save', null );
this.saveButtonView.type = 'submit';
// Equation input
this.mathInputView = this._createMathInput();
// MathLive visual equation editor
this.mathLiveInputView = this._createMathLiveInput();
// Raw LaTeX input
this.rawLatexInputView = this._createRawLatexInput();
@ -75,7 +75,7 @@ export default class MainFormView extends View {
this.mathView.bind( 'display' ).to( this.displayButtonView, 'isOn' );
children = [
this.mathInputView,
this.mathLiveInputView,
this.rawLatexLabel,
this.rawLatexInputView,
this.displayButtonView,
@ -84,7 +84,7 @@ export default class MainFormView extends View {
];
} else {
children = [
this.mathInputView,
this.mathLiveInputView,
this.rawLatexLabel,
this.rawLatexInputView,
this.displayButtonView
@ -143,7 +143,7 @@ export default class MainFormView extends View {
// Register form elements to focusable elements
const childViews = [
this.mathInputView,
this.mathLiveInputView,
this.rawLatexInputView,
this.displayButtonView,
this.saveButtonView,
@ -168,14 +168,15 @@ export default class MainFormView extends View {
}
public get equation(): string {
return this.mathInputView.value ?? '';
return this.mathLiveInputView.value ?? '';
}
public set equation( equation: string ) {
this.mathInputView.value = equation;
this.rawLatexInputView.value = equation;
const normalizedEquation = equation.trim();
this.mathLiveInputView.value = normalizedEquation.length ? normalizedEquation : null;
this.rawLatexInputView.value = normalizedEquation;
if ( this.previewEnabled && this.mathView ) {
this.mathView.value = equation;
this.mathView.value = normalizedEquation;
}
}
@ -195,13 +196,13 @@ export default class MainFormView extends View {
/**
* Creates the MathLive visual equation editor.
*
* Handles bidirectional synchronization with the raw LaTeX input and preview.
* Handles bidirectional synchronization with the raw LaTeX textarea and preview.
*/
private _createMathInput() {
const mathInput = new MathLiveInputView( this.locale );
private _createMathLiveInput() {
const mathLiveInput = new MathLiveInputView( this.locale );
const onInput = () => {
const rawValue = mathInput.value ?? '';
const rawValue = mathLiveInput.value ?? '';
let equationInput = rawValue.trim();
// If input has delimiters
@ -210,56 +211,58 @@ export default class MainFormView extends View {
const params = extractDelimiters( equationInput );
// Remove delimiters from input field
mathInput.value = params.equation;
mathLiveInput.value = params.equation;
equationInput = params.equation;
// update display button and preview
// Update display button and preview
this.displayButtonView.isOn = params.display;
}
// Sync to raw LaTeX input
const normalizedEquation = equationInput.length ? equationInput : null;
if ( mathLiveInput.value !== normalizedEquation ) {
mathLiveInput.value = normalizedEquation;
}
// Sync to raw LaTeX textarea
this.rawLatexInputView.value = equationInput;
if ( this.previewEnabled && this.mathView ) {
// Update preview view
// Update preview
this.mathView.value = equationInput;
}
this.saveButtonView.isEnabled = !!equationInput;
};
mathInput.on( 'change:value', onInput );
mathLiveInput.on( 'change:value', onInput );
return mathInput;
return mathLiveInput;
}
/**
* Creates the raw LaTeX code textarea editor.
* Creates the raw LaTeX textarea editor.
*
* Provides direct LaTeX editing and synchronizes changes with the MathLive visual editor.
* Provides direct LaTeX code editing and synchronizes changes with the MathLive visual editor.
*/
private _createRawLatexInput() {
const t = this.locale.t;
const rawLatexInput = new RawLatexInputView( this.locale );
rawLatexInput.label = t( 'LaTeX' );
// Sync raw LaTeX changes to MathLive visual editor
// Sync raw LaTeX textarea changes to MathLive visual editor
rawLatexInput.on( 'change:value', () => {
const rawValue = rawLatexInput.value ?? '';
const equationInput = rawValue.trim();
// Update MathLive field
if ( this.mathInputView.value !== equationInput ) {
this.mathInputView.value = equationInput;
// Update MathLive visual editor
const normalizedEquation = equationInput.length ? equationInput : null;
if ( this.mathLiveInputView.value !== normalizedEquation ) {
this.mathLiveInputView.value = normalizedEquation;
}
// Update preview if enabled
// Update preview
if ( this.previewEnabled && this.mathView ) {
this.mathView.value = equationInput;
}
this.saveButtonView.isEnabled = !!equationInput;
} );
return rawLatexInput;

View File

@ -14,7 +14,7 @@ export default class MathLiveInputView extends View {
*
* @observable
*/
public declare value: string;
public declare value: string | null;
/**
* Whether the input is in read-only mode.
@ -31,7 +31,7 @@ export default class MathLiveInputView extends View {
constructor( locale: Locale ) {
super( locale );
this.set( 'value', '' );
this.set( 'value', null );
this.set( 'isReadOnly', false );
this.setTemplate( {
@ -56,8 +56,9 @@ export default class MathLiveInputView extends View {
mathfield.setAttribute( 'virtual-keyboard-mode', 'manual' );
// Set initial value
if ( this.value ) {
( mathfield as any ).value = this.value;
const initialValue = this.value ?? '';
if ( initialValue ) {
( mathfield as any ).value = initialValue;
}
// Bind readonly state
@ -67,13 +68,15 @@ export default class MathLiveInputView extends View {
// Sync math-field changes to observable value
mathfield.addEventListener( 'input', () => {
this.value = ( mathfield as any ).value;
const nextValue: string = ( mathfield as any ).value;
this.value = nextValue.length ? nextValue : null;
} );
// Sync observable value changes back to math-field
this.on( 'change:value', () => {
if ( ( mathfield as any ).value !== this.value ) {
( mathfield as any ).value = this.value;
const nextValue = this.value ?? '';
if ( ( mathfield as any ).value !== nextValue ) {
( mathfield as any ).value = nextValue;
}
} );

203
pnpm-lock.yaml generated
View File

@ -641,7 +641,7 @@ importers:
version: 3.0.0
debug:
specifier: 4.4.3
version: 4.4.3(supports-color@8.1.1)
version: 4.4.3(supports-color@6.0.0)
ejs:
specifier: 3.1.10
version: 3.1.10
@ -15356,7 +15356,7 @@ snapshots:
'@babel/traverse': 7.28.4
'@babel/types': 7.28.4
convert-source-map: 2.0.0
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
gensync: 1.0.0-beta.2
json5: 2.2.3
semver: 6.3.1
@ -15479,7 +15479,7 @@ snapshots:
'@babel/parser': 7.28.4
'@babel/template': 7.27.2
'@babel/types': 7.28.4
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
globals: 11.12.0
transitivePeerDependencies:
- supports-color
@ -15492,7 +15492,7 @@ snapshots:
'@babel/parser': 7.28.4
'@babel/template': 7.27.2
'@babel/types': 7.28.4
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
transitivePeerDependencies:
- supports-color
@ -15504,7 +15504,7 @@ snapshots:
'@babel/parser': 7.28.4
'@babel/template': 7.27.2
'@babel/types': 7.28.4
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
transitivePeerDependencies:
- supports-color
@ -16498,8 +16498,6 @@ snapshots:
'@ckeditor/ckeditor5-ui': 47.2.0
'@ckeditor/ckeditor5-utils': 47.2.0
ckeditor5: 47.2.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-restricted-editing@47.2.0':
dependencies:
@ -16978,7 +16976,7 @@ snapshots:
'@listr2/prompt-adapter-inquirer': 2.0.22(@inquirer/prompts@6.0.1)
chalk: 4.1.2
commander: 11.1.0
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
fs-extra: 10.1.0
listr2: 7.0.2
log-symbols: 4.1.0
@ -16998,7 +16996,7 @@ snapshots:
'@electron/rebuild': 3.7.2
'@malept/cross-spawn-promise': 2.0.0
chalk: 4.1.2
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
find-up: 5.0.0
fs-extra: 10.1.0
log-symbols: 4.1.0
@ -17027,7 +17025,7 @@ snapshots:
'@malept/cross-spawn-promise': 2.0.0
'@vscode/sudo-prompt': 9.3.1
chalk: 4.1.2
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
fast-glob: 3.3.3
filenamify: 4.3.0
find-up: 5.0.0
@ -17163,7 +17161,7 @@ snapshots:
'@electron-forge/core-utils': 7.10.2
'@electron-forge/shared-types': 7.10.2
'@malept/cross-spawn-promise': 2.0.0
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
fs-extra: 10.1.0
semver: 7.7.3
username: 5.1.0
@ -17225,7 +17223,7 @@ snapshots:
'@electron/get@2.0.3':
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
env-paths: 2.2.1
fs-extra: 8.1.0
got: 11.8.6
@ -17239,7 +17237,7 @@ snapshots:
'@electron/get@3.1.0':
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
env-paths: 2.2.1
fs-extra: 8.1.0
got: 11.8.6
@ -17269,7 +17267,7 @@ snapshots:
'@electron/notarize@2.5.0':
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
fs-extra: 9.1.0
promise-retry: 2.0.1
transitivePeerDependencies:
@ -17278,7 +17276,7 @@ snapshots:
'@electron/osx-sign@1.3.3':
dependencies:
compare-version: 0.1.2
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
fs-extra: 10.1.0
isbinaryfile: 4.0.10
minimist: 1.2.8
@ -17294,7 +17292,7 @@ snapshots:
'@electron/osx-sign': 1.3.3
'@electron/universal': 2.0.2
'@electron/windows-sign': 1.2.1
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
extract-zip: 2.0.1
filenamify: 4.3.0
fs-extra: 11.3.2
@ -17315,7 +17313,7 @@ snapshots:
'@electron/node-gyp': https://codeload.github.com/electron/node-gyp/tar.gz/06b29aafb7708acef8b3669835c8a7857ebc92d2
'@malept/cross-spawn-promise': 2.0.0
chalk: 4.1.2
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
detect-libc: 2.1.1
fs-extra: 10.1.0
got: 11.8.6
@ -17334,7 +17332,7 @@ snapshots:
dependencies:
'@malept/cross-spawn-promise': 2.0.0
chalk: 4.1.2
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
detect-libc: 2.0.4
got: 11.8.6
graceful-fs: 4.2.11
@ -17357,7 +17355,7 @@ snapshots:
dependencies:
'@electron/asar': 3.4.1
'@malept/cross-spawn-promise': 2.0.0
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
dir-compare: 4.2.0
fs-extra: 11.3.2
minimatch: 9.0.5
@ -17368,7 +17366,7 @@ snapshots:
'@electron/windows-sign@1.2.1':
dependencies:
cross-dirname: 0.1.0
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
fs-extra: 11.3.2
minimist: 1.2.8
postject: 1.0.0-alpha.6
@ -17655,7 +17653,7 @@ snapshots:
'@eslint/config-array@0.21.1':
dependencies:
'@eslint/object-schema': 2.1.7
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
minimatch: 3.1.2
transitivePeerDependencies:
- supports-color
@ -17679,7 +17677,7 @@ snapshots:
'@eslint/eslintrc@3.3.1':
dependencies:
ajv: 6.12.6
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
espree: 10.4.0
globals: 14.0.0
ignore: 5.3.2
@ -18039,7 +18037,7 @@ snapshots:
'@antfu/install-pkg': 1.1.0
'@antfu/utils': 9.2.0
'@iconify/types': 2.0.0
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
globals: 15.15.0
kolorist: 1.8.0
local-pkg: 1.1.1
@ -18457,7 +18455,7 @@ snapshots:
'@kwsites/file-exists@1.1.1':
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
transitivePeerDependencies:
- supports-color
@ -18541,7 +18539,7 @@ snapshots:
'@malept/electron-installer-flatpak@0.11.4':
dependencies:
'@malept/flatpak-bundler': 0.4.0
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
electron-installer-common: 0.10.4
lodash: 4.17.21
semver: 7.7.3
@ -18552,7 +18550,7 @@ snapshots:
'@malept/flatpak-bundler@0.4.0':
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
fs-extra: 9.1.0
lodash: 4.17.21
tmp-promise: 3.0.3
@ -19011,7 +19009,7 @@ snapshots:
'@puppeteer/browsers@2.10.10':
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
extract-zip: 2.0.1
progress: 2.0.3
proxy-agent: 6.5.0
@ -20279,7 +20277,7 @@ snapshots:
'@tokenizer/inflate@0.2.7':
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
fflate: 0.8.2
token-types: 6.0.0
transitivePeerDependencies:
@ -20905,7 +20903,7 @@ snapshots:
'@typescript-eslint/types': 8.46.4
'@typescript-eslint/typescript-estree': 8.46.4(typescript@5.9.3)
'@typescript-eslint/visitor-keys': 8.46.4
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
eslint: 9.39.1(jiti@2.6.1)
typescript: 5.9.3
transitivePeerDependencies:
@ -20927,7 +20925,7 @@ snapshots:
dependencies:
'@typescript-eslint/tsconfig-utils': 8.46.4(typescript@5.9.3)
'@typescript-eslint/types': 8.46.4
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
typescript: 5.9.3
transitivePeerDependencies:
- supports-color
@ -20964,7 +20962,7 @@ snapshots:
'@typescript-eslint/types': 8.46.4
'@typescript-eslint/typescript-estree': 8.46.4(typescript@5.9.3)
'@typescript-eslint/utils': 8.46.4(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
eslint: 9.39.1(jiti@2.6.1)
ts-api-utils: 2.1.0(typescript@5.9.3)
typescript: 5.9.3
@ -20993,7 +20991,7 @@ snapshots:
'@typescript-eslint/tsconfig-utils': 8.46.4(typescript@5.9.3)
'@typescript-eslint/types': 8.46.4
'@typescript-eslint/visitor-keys': 8.46.4
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
fast-glob: 3.3.3
is-glob: 4.0.3
minimatch: 9.0.5
@ -21115,7 +21113,7 @@ snapshots:
'@vitest/coverage-istanbul@4.0.10(vitest@4.0.10)':
dependencies:
'@istanbuljs/schema': 0.1.3
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
istanbul-lib-coverage: 3.2.2
istanbul-lib-instrument: 6.0.3
istanbul-lib-report: 3.0.1
@ -21130,7 +21128,8 @@ snapshots:
'@vitest/coverage-v8@4.0.10(@vitest/browser@4.0.10(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.1)(typescript@5.9.3))(utf-8-validate@6.0.5)(vite@7.2.2(@types/node@24.10.1)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.30.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1))(vitest@4.0.10))(vitest@4.0.10)':
dependencies:
'@bcoe/v8-coverage': 1.0.2
ast-v8-to-istanbul: 0.3.3
'@vitest/utils': 4.0.10
ast-v8-to-istanbul: 0.3.8
debug: 4.4.3(supports-color@6.0.0)
istanbul-lib-coverage: 3.2.2
istanbul-lib-report: 3.0.1
@ -21436,7 +21435,7 @@ snapshots:
agent-base@6.0.2:
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
transitivePeerDependencies:
- supports-color
@ -21872,7 +21871,7 @@ snapshots:
dependencies:
bytes: 3.1.2
content-type: 1.0.5
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
http-errors: 2.0.0
iconv-lite: 0.6.3
on-finished: 2.4.1
@ -23618,7 +23617,7 @@ snapshots:
dependencies:
'@electron/asar': 3.4.1
'@malept/cross-spawn-promise': 1.1.1
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
fs-extra: 9.1.0
glob: 7.2.3
lodash: 4.17.21
@ -23634,7 +23633,7 @@ snapshots:
electron-installer-debian@3.2.0:
dependencies:
'@malept/cross-spawn-promise': 1.1.1
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
electron-installer-common: 0.10.4
fs-extra: 9.1.0
get-folder-size: 2.0.1
@ -23648,7 +23647,7 @@ snapshots:
electron-installer-dmg@5.0.1:
dependencies:
'@types/appdmg': 0.5.5
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
minimist: 1.2.8
optionalDependencies:
appdmg: 0.6.6
@ -23659,7 +23658,7 @@ snapshots:
electron-installer-redhat@3.4.0:
dependencies:
'@malept/cross-spawn-promise': 1.1.1
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
electron-installer-common: 0.10.4
fs-extra: 9.1.0
lodash: 4.17.21
@ -23675,7 +23674,7 @@ snapshots:
electron-localshortcut@3.2.1:
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
electron-is-accelerator: 0.1.2
keyboardevent-from-electron-accelerator: 2.0.0
keyboardevents-areequal: 0.2.2
@ -23700,7 +23699,7 @@ snapshots:
electron-winstaller@5.4.0:
dependencies:
'@electron/asar': 3.4.1
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
fs-extra: 7.0.1
lodash: 4.17.21
temp: 0.9.4
@ -24248,7 +24247,7 @@ snapshots:
ajv: 6.12.6
chalk: 4.1.2
cross-spawn: 7.0.6
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
escape-string-regexp: 4.0.0
eslint-scope: 8.4.0
eslint-visitor-keys: 4.2.1
@ -24358,7 +24357,7 @@ snapshots:
express-http-proxy@2.1.2:
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
es6-promise: 4.2.8
raw-body: 2.5.2
transitivePeerDependencies:
@ -24369,7 +24368,7 @@ snapshots:
base64url: 3.0.1
clone: 2.1.2
cookie: 0.7.2
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
express: 5.1.0
futoin-hkdf: 1.5.3
http-errors: 1.8.1
@ -24443,7 +24442,7 @@ snapshots:
content-type: 1.0.5
cookie: 0.7.2
cookie-signature: 1.2.2
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
encodeurl: 2.0.0
escape-html: 1.0.3
etag: 1.8.1
@ -24492,7 +24491,7 @@ snapshots:
extract-zip@2.0.1:
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
get-stream: 5.2.0
yauzl: 2.10.0
optionalDependencies:
@ -24634,7 +24633,7 @@ snapshots:
finalhandler@2.1.0:
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
encodeurl: 2.0.0
escape-html: 1.0.3
on-finished: 2.4.1
@ -24690,7 +24689,7 @@ snapshots:
flora-colossus@2.0.0:
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
fs-extra: 10.1.0
transitivePeerDependencies:
- supports-color
@ -24702,7 +24701,7 @@ snapshots:
follow-redirects@1.15.9(debug@4.4.3):
optionalDependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
for-each@0.3.5:
dependencies:
@ -24843,7 +24842,7 @@ snapshots:
galactus@1.0.0:
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
flora-colossus: 2.0.0
fs-extra: 10.1.0
transitivePeerDependencies:
@ -24959,7 +24958,7 @@ snapshots:
dependencies:
basic-ftp: 5.0.5
data-uri-to-buffer: 6.0.2
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
transitivePeerDependencies:
- supports-color
@ -25436,7 +25435,7 @@ snapshots:
dependencies:
'@tootallnate/once': 1.1.2
agent-base: 6.0.2
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
transitivePeerDependencies:
- supports-color
@ -25444,14 +25443,14 @@ snapshots:
dependencies:
'@tootallnate/once': 2.0.0
agent-base: 6.0.2
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
transitivePeerDependencies:
- supports-color
http-proxy-agent@7.0.2:
dependencies:
agent-base: 7.1.3
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
transitivePeerDependencies:
- supports-color
@ -25504,14 +25503,14 @@ snapshots:
https-proxy-agent@5.0.1:
dependencies:
agent-base: 6.0.2
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
transitivePeerDependencies:
- supports-color
https-proxy-agent@7.0.6:
dependencies:
agent-base: 7.1.3
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
transitivePeerDependencies:
- supports-color
@ -25906,7 +25905,7 @@ snapshots:
istanbul-lib-source-maps@5.0.6:
dependencies:
'@jridgewell/trace-mapping': 0.3.31
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
istanbul-lib-coverage: 3.2.2
transitivePeerDependencies:
- supports-color
@ -26520,7 +26519,7 @@ snapshots:
log4js@6.9.1:
dependencies:
date-format: 4.0.14
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
flatted: 3.3.3
rfdc: 1.4.1
streamroller: 3.1.5
@ -27119,7 +27118,7 @@ snapshots:
micromark@4.0.2:
dependencies:
'@types/debug': 4.1.12
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
decode-named-character-reference: 1.2.0
devlop: 1.1.0
micromark-core-commonmark: 2.0.3
@ -27957,7 +27956,7 @@ snapshots:
dependencies:
'@tootallnate/quickjs-emscripten': 0.23.0
agent-base: 7.1.4
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
get-uri: 6.0.5
http-proxy-agent: 7.0.2
https-proxy-agent: 7.0.6
@ -28235,7 +28234,7 @@ snapshots:
portfinder@1.0.36:
dependencies:
async: 3.2.6
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
transitivePeerDependencies:
- supports-color
@ -29074,7 +29073,7 @@ snapshots:
proxy-agent@6.5.0:
dependencies:
agent-base: 7.1.4
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
http-proxy-agent: 7.0.2
https-proxy-agent: 7.0.6
lru-cache: 7.18.3
@ -29290,7 +29289,7 @@ snapshots:
read-binary-file-arch@1.0.6:
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
transitivePeerDependencies:
- supports-color
@ -29733,7 +29732,7 @@ snapshots:
router@2.2.0:
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
depd: 2.0.0
is-promise: 4.0.0
parseurl: 1.3.3
@ -29994,7 +29993,7 @@ snapshots:
send@1.2.0:
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
encodeurl: 2.0.0
escape-html: 1.0.3
etag: 1.8.1
@ -30211,13 +30210,13 @@ snapshots:
dependencies:
'@kwsites/file-exists': 1.1.1
'@kwsites/promise-deferred': 1.1.1
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
transitivePeerDependencies:
- supports-color
simple-websocket@9.1.0(bufferutil@4.0.9)(utf-8-validate@6.0.5):
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
queue-microtask: 1.2.3
randombytes: 2.1.0
readable-stream: 3.6.2
@ -30311,7 +30310,7 @@ snapshots:
socks-proxy-agent@6.2.1:
dependencies:
agent-base: 6.0.2
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
socks: 2.8.4
transitivePeerDependencies:
- supports-color
@ -30320,7 +30319,7 @@ snapshots:
socks-proxy-agent@7.0.0:
dependencies:
agent-base: 6.0.2
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
socks: 2.8.7
transitivePeerDependencies:
- supports-color
@ -30328,7 +30327,7 @@ snapshots:
socks-proxy-agent@8.0.5:
dependencies:
agent-base: 7.1.4
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
socks: 2.8.7
transitivePeerDependencies:
- supports-color
@ -30389,7 +30388,7 @@ snapshots:
spdy-transport@3.0.0:
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
detect-node: 2.1.0
hpack.js: 2.1.6
obuf: 1.1.2
@ -30400,7 +30399,7 @@ snapshots:
spdy@4.0.2:
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
handle-thing: 2.0.1
http-deceiver: 1.2.7
select-hose: 2.0.0
@ -30484,7 +30483,7 @@ snapshots:
streamroller@3.1.5:
dependencies:
date-format: 4.0.14
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
fs-extra: 8.1.0
transitivePeerDependencies:
- supports-color
@ -30731,7 +30730,7 @@ snapshots:
cosmiconfig: 9.0.0(typescript@5.0.4)
css-functions-list: 3.2.3
css-tree: 3.1.0
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
fast-glob: 3.3.3
fastest-levenshtein: 1.0.16
file-entry-cache: 10.1.4
@ -30775,7 +30774,7 @@ snapshots:
cosmiconfig: 9.0.0(typescript@5.9.3)
css-functions-list: 3.2.3
css-tree: 3.1.0
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
fast-glob: 3.3.3
fastest-levenshtein: 1.0.16
file-entry-cache: 10.1.4
@ -30821,7 +30820,7 @@ snapshots:
sumchecker@3.0.1:
dependencies:
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
transitivePeerDependencies:
- supports-color
@ -30829,7 +30828,7 @@ snapshots:
dependencies:
component-emitter: 1.3.1
cookiejar: 2.1.4
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
fast-safe-stringify: 2.1.1
form-data: 4.0.4
formidable: 3.5.4
@ -31276,7 +31275,7 @@ snapshots:
tuf-js@4.0.0:
dependencies:
'@tufjs/models': 4.0.0
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
make-fetch-happen: 15.0.3
transitivePeerDependencies:
- supports-color
@ -31654,27 +31653,6 @@ snapshots:
'@types/unist': 3.0.3
vfile-message: 4.0.2
vite-node@3.2.4(@types/node@24.10.1)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.30.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1):
dependencies:
cac: 6.7.14
debug: 4.4.3(supports-color@6.0.0)
es-module-lexer: 1.7.0
pathe: 2.0.3
vite: 7.2.2(@types/node@24.10.1)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.30.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)
transitivePeerDependencies:
- '@types/node'
- jiti
- less
- lightningcss
- sass
- sass-embedded
- stylus
- sugarss
- supports-color
- terser
- tsx
- yaml
vite-plugin-dts@4.5.4(@types/node@24.10.1)(rollup@4.52.0)(typescript@5.9.3)(vite@7.2.2(@types/node@24.10.1)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.30.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)):
dependencies:
'@microsoft/api-extractor': 7.52.8(@types/node@24.10.1)
@ -31682,7 +31660,7 @@ snapshots:
'@volar/typescript': 2.4.13
'@vue/language-core': 2.2.0(typescript@5.9.3)
compare-versions: 6.1.1
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
kolorist: 1.8.0
local-pkg: 1.1.1
magic-string: 0.30.21
@ -31740,18 +31718,17 @@ snapshots:
vitest@4.0.10(@types/debug@4.1.12)(@types/node@24.10.1)(@vitest/browser-webdriverio@4.0.10)(@vitest/ui@4.0.10)(happy-dom@20.0.10)(jiti@2.6.1)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))(less@4.1.3)(lightningcss@1.30.1)(msw@2.7.5(@types/node@24.10.1)(typescript@5.9.3))(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1):
dependencies:
'@types/chai': 5.2.2
'@vitest/expect': 3.2.4
'@vitest/mocker': 3.2.4(msw@2.7.5(@types/node@24.10.1)(typescript@5.9.3))(vite@7.2.2(@types/node@24.10.1)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.30.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1))
'@vitest/pretty-format': 3.2.4
'@vitest/runner': 3.2.4
'@vitest/snapshot': 3.2.4
'@vitest/spy': 3.2.4
'@vitest/utils': 3.2.4
chai: 5.2.0
'@vitest/expect': 4.0.10
'@vitest/mocker': 4.0.10(msw@2.7.5(@types/node@24.10.1)(typescript@5.9.3))(vite@7.2.2(@types/node@24.10.1)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.30.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1))
'@vitest/pretty-format': 4.0.10
'@vitest/runner': 4.0.10
'@vitest/snapshot': 4.0.10
'@vitest/spy': 4.0.10
'@vitest/utils': 4.0.10
debug: 4.4.3(supports-color@6.0.0)
expect-type: 1.2.1
magic-string: 0.30.18
es-module-lexer: 1.7.0
expect-type: 1.2.2
magic-string: 0.30.21
pathe: 2.0.3
picomatch: 4.0.3
std-env: 3.10.0
@ -31830,7 +31807,7 @@ snapshots:
dependencies:
chalk: 4.1.2
commander: 9.5.0
debug: 4.4.3(supports-color@8.1.1)
debug: 4.4.3(supports-color@6.0.0)
transitivePeerDependencies:
- supports-color