diff --git a/.rubocop.yml b/.rubocop.yml index 934b53771..8887fd586 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -48,6 +48,9 @@ Metrics/CyclomaticComplexity: Exclude: - lib/herb/project.rb - lib/herb/ast/nodes.rb + - lib/herb/cli.rb + - lib/herb/engine.rb + - lib/herb/engine/**/*.rb Metrics/MethodLength: Max: 20 @@ -55,9 +58,12 @@ Metrics/MethodLength: - lib/herb/ast/nodes.rb - lib/herb/cli.rb - lib/herb/project.rb + - lib/herb/engine.rb + - lib/herb/engine/**/*.rb - templates/template.rb - test/fork_helper.rb - test/snapshot_utils.rb + - bin/**/* Metrics/AbcSize: Exclude: @@ -66,37 +72,53 @@ Metrics/AbcSize: - lib/herb/cli.rb - lib/herb/errors.rb - lib/herb/project.rb + - lib/herb/engine.rb + - lib/herb/engine/**/*.rb - templates/template.rb - test/fork_helper.rb - test/snapshot_utils.rb + - bin/**/* Metrics/ClassLength: Exclude: - lib/herb/cli.rb - lib/herb/project.rb - lib/herb/visitor.rb + - lib/herb/engine.rb + - lib/herb/engine/**/*.rb + - bin/**/* - test/**/*_test.rb +Metrics/ModuleLength: + Exclude: + - test/**/*.rb + Metrics/BlockLength: Max: 30 Exclude: - Rakefile - "*.gemspec" - "**/*.rake" + - lib/herb/cli.rb - lib/herb/project.rb - test/**/*_test.rb + - bin/**/* Metrics/ParameterLists: Exclude: - lib/herb/ast/nodes.rb - lib/herb/errors.rb + - lib/herb/engine/validators/security_validator.rb Metrics/PerceivedComplexity: Exclude: - lib/herb/ast/nodes.rb - lib/herb/cli.rb - lib/herb/project.rb - - test/snapshot_utils.rb + - lib/herb/engine.rb + - lib/herb/engine/**/*.rb + - test/**/*.rb + - bin/**/* Layout/LineLength: Max: 120 @@ -104,6 +126,10 @@ Layout/LineLength: - test/**/*_test.rb - lib/herb/token.rb - lib/herb/ast/nodes.rb + - lib/herb/engine/error_formatter.rb + - lib/herb/engine/debug_visitor.rb + - lib/herb/engine/parser_error_overlay.rb + - lib/herb/engine/validation_error_overlay.rb Layout/EmptyLines: Exclude: @@ -128,7 +154,14 @@ Layout/LeadingCommentSpace: Security/Eval: Exclude: - Rakefile + - lib/herb/cli.rb + - test/**/*.rb + - bin/erubi-render Security/MarshalLoad: Exclude: - test/fork_helper.rb + +Lint/UnderscorePrefixedVariableName: + Exclude: + - test/engine/secure_compiler_test.rb diff --git a/Gemfile b/Gemfile index 629808ed2..fbe4490fe 100644 --- a/Gemfile +++ b/Gemfile @@ -6,6 +6,7 @@ gemspec gem "prism", github: "ruby/prism", tag: "v1.4.0" +gem "actionview", "~> 8.0" gem "lz_string" gem "maxitest" gem "minitest-difftastic", "~> 0.2" diff --git a/Gemfile.lock b/Gemfile.lock index 3b3237f8d..968c103df 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -22,7 +22,13 @@ PATH GEM remote: https://rubygems.org/ specs: - activesupport (8.0.2) + actionview (8.0.2.1) + activesupport (= 8.0.2.1) + builder (~> 3.1) + erubi (~> 1.11) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + activesupport (8.0.2.1) base64 benchmark (>= 0.3) bigdecimal @@ -39,8 +45,10 @@ GEM base64 (0.3.0) benchmark (0.4.1) bigdecimal (3.2.2) + builder (3.3.0) concurrent-ruby (1.3.5) connection_pool (2.5.3) + crass (1.0.6) csv (3.3.5) difftastic (0.7.0) pretty_please @@ -53,6 +61,7 @@ GEM dispersion (0.2.0) prism drb (2.2.3) + erubi (1.13.1) ffi (1.17.2-aarch64-linux-gnu) ffi (1.17.2-aarch64-linux-musl) ffi (1.17.2-arm64-darwin) @@ -62,14 +71,17 @@ GEM fileutils (1.7.3) i18n (1.14.7) concurrent-ruby (~> 1.0) - io-console (0.8.0) - json (2.12.2) + io-console (0.8.1) + json (2.13.2) language_server-protocol (3.17.0.5) lint_roller (1.1.0) listen (3.9.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) logger (1.7.0) + loofah (2.24.1) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) lz_string (0.3.0) maxitest (6.0.0) minitest (>= 5.20.0, < 5.26.0) @@ -77,13 +89,32 @@ GEM minitest-difftastic (0.2.1) difftastic (~> 0.6) mutex_m (0.3.0) + nokogiri (1.18.9-aarch64-linux-gnu) + racc (~> 1.4) + nokogiri (1.18.9-aarch64-linux-musl) + racc (~> 1.4) + nokogiri (1.18.9-arm64-darwin) + racc (~> 1.4) + nokogiri (1.18.9-x86_64-darwin) + racc (~> 1.4) + nokogiri (1.18.9-x86_64-linux-gnu) + racc (~> 1.4) + nokogiri (1.18.9-x86_64-linux-musl) + racc (~> 1.4) parallel (1.27.0) - parser (3.3.8.0) + parser (3.3.9.0) ast (~> 2.4.1) racc pretty_please (0.2.0) dispersion (~> 0.2) racc (1.8.1) + rails-dom-testing (2.3.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.6.2) + loofah (~> 2.21) + nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0) rainbow (3.1.1) rake (13.3.0) rake-compiler (1.3.0) @@ -94,10 +125,10 @@ GEM ffi (~> 1.0) rbs (3.9.4) logger - regexp_parser (2.10.0) - reline (0.6.1) + regexp_parser (2.11.2) + reline (0.6.2) io-console (~> 0.5) - rubocop (1.77.0) + rubocop (1.80.1) json (~> 2.3) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.1.0) @@ -105,19 +136,19 @@ GEM parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.45.1, < 2.0) + rubocop-ast (>= 1.46.0, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.45.1) + rubocop-ast (1.46.0) parser (>= 3.3.7.2) prism (~> 1.4) ruby-progressbar (1.13.0) securerandom (0.4.1) - sorbet (0.5.12214) - sorbet-static (= 0.5.12214) - sorbet-static (0.5.12214-aarch64-linux) - sorbet-static (0.5.12214-universal-darwin) - sorbet-static (0.5.12214-x86_64-linux) + sorbet (0.6.12473) + sorbet-static (= 0.6.12473) + sorbet-static (0.6.12473-aarch64-linux) + sorbet-static (0.6.12473-universal-darwin) + sorbet-static (0.6.12473-x86_64-linux) steep (1.10.0) activesupport (>= 5.1) concurrent-ruby (>= 1.1.10) @@ -140,21 +171,24 @@ GEM unicode-display_width (>= 1.1.1, < 4) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unicode-display_width (3.1.4) + unicode-display_width (3.1.5) unicode-emoji (~> 4.0, >= 4.0.4) unicode-emoji (4.0.4) uri (1.0.3) PLATFORMS + aarch64-linux aarch64-linux-gnu aarch64-linux-musl arm64-darwin + universal-darwin x86_64-darwin x86_64-linux x86_64-linux-gnu x86_64-linux-musl DEPENDENCIES + actionview (~> 8.0) herb! lz_string maxitest @@ -170,4 +204,4 @@ DEPENDENCIES steep (~> 1.10) BUNDLED WITH - 2.6.3 + 2.7.1 diff --git a/Steepfile b/Steepfile index 40d550b4c..9b2ca31fe 100644 --- a/Steepfile +++ b/Steepfile @@ -7,9 +7,12 @@ target :lib do library "delegate" library "json" + library "tempfile" + library "pathname" ignore "lib/herb/cli.rb" ignore "lib/herb/libherb.rb" ignore "lib/herb/libherb" ignore "lib/herb/project.rb" + ignore "lib/herb/engine/error_formatter.rb" end diff --git a/bin/erubi-compile b/bin/erubi-compile new file mode 100755 index 000000000..a31d96e85 --- /dev/null +++ b/bin/erubi-compile @@ -0,0 +1,150 @@ +#!/usr/bin/env ruby +# frozen_string_literal: true + +require "optparse" +require "json" + +class ErubiCompiler + def initialize + @file = nil + @no_escape = false + @escape = false + @freeze = false + @json = false + @silent = false + end + + def run(args) + parse_options(args) + + unless @file + puts "Error: No file specified" + puts "Usage: erubi-compile [options] " + exit(1) + end + + unless File.exist?(@file) + puts "Error: File '#{@file}' not found" + exit(1) + end + + compile_template + end + + private + + def parse_options(args) + OptionParser.new do |opts| + opts.banner = "Usage: erubi-compile [options] " + opts.separator "" + opts.separator "Compile ERB templates to Ruby code using Erubi" + opts.separator "" + opts.separator "Options:" + + opts.on("--no-escape", "Disable HTML escaping") do + @no_escape = true + end + + opts.on("--escape", "Enable HTML escaping (default)") do + @escape = true + end + + opts.on("--freeze", "Freeze template literals") do + @freeze = true + end + + opts.on("--json", "Output results as JSON") do + @json = true + end + + opts.on("--silent", "Silent mode (only success/failure)") do + @silent = true + end + + opts.on("-h", "--help", "Show this help message") do + puts opts + exit(0) + end + + opts.on("--version", "Show version") do + begin + require "erubi" + puts "erubi-compile using Erubi #{Erubi::VERSION}" + rescue LoadError + puts "erubi-compile (Erubi not installed)" + end + exit(0) + end + end.parse!(args) + + @file = args.first + end + + def file_content + @file_content ||= File.read(@file) + end + + def compile_template + begin + require "erubi" + rescue LoadError + if @json + result = { + success: false, + error: "Erubi gem is not available. Install with: gem install erubi", + filename: @file, + } + puts result.to_json + elsif @silent + puts "Failed" + else + puts "Error: Erubi gem is not available." + puts "Install with: gem install erubi" + end + exit(1) + end + + begin + options = {} + + options[:filename] = @file if @file + options[:escape_html] = @no_escape ? false : true + options[:freeze] = true if @freeze + + engine = Erubi::Engine.new(file_content, options) + + if @json + result = { + success: true, + source: engine.src, + filename: options[:filename], + bufvar: engine.bufvar, + } + puts result.to_json + elsif @silent + puts "Success" + else + puts engine.src + end + + exit(0) + rescue StandardError => e + if @json + result = { + success: false, + error: e.message, + filename: @file, + } + puts result.to_json + elsif @silent + puts "Failed" + else + puts "Erubi compilation error: #{e.message}" + end + + exit(1) + end + end +end + +ErubiCompiler.new.run(ARGV) if __FILE__ == $PROGRAM_NAME diff --git a/bin/erubi-render b/bin/erubi-render new file mode 100755 index 000000000..268530a5b --- /dev/null +++ b/bin/erubi-render @@ -0,0 +1,152 @@ +#!/usr/bin/env ruby +# frozen_string_literal: true + +require "optparse" +require "json" + +class ErubiRenderer + def initialize + @file = nil + @no_escape = false + @escape = false + @freeze = false + @json = false + @silent = false + end + + def run(args) + parse_options(args) + + unless @file + puts "Error: No file specified" + puts "Usage: erubi-render [options] " + exit(1) + end + + unless File.exist?(@file) + puts "Error: File '#{@file}' not found" + exit(1) + end + + render_template + end + + private + + def parse_options(args) + OptionParser.new do |opts| + opts.banner = "Usage: erubi-render [options] " + opts.separator "" + opts.separator "Render ERB templates to final output using Erubi" + opts.separator "" + opts.separator "Options:" + + opts.on("--no-escape", "Disable HTML escaping") do + @no_escape = true + end + + opts.on("--escape", "Enable HTML escaping (default)") do + @escape = true + end + + opts.on("--freeze", "Freeze template literals") do + @freeze = true + end + + opts.on("--json", "Output results as JSON") do + @json = true + end + + opts.on("--silent", "Silent mode (only success/failure)") do + @silent = true + end + + opts.on("-h", "--help", "Show this help message") do + puts opts + exit(0) + end + + opts.on("--version", "Show version") do + begin + require "erubi" + puts "erubi-render using Erubi #{Erubi::VERSION}" + rescue LoadError + puts "erubi-render (Erubi not installed)" + end + exit(0) + end + end.parse!(args) + + @file = args.first + end + + def file_content + @file_content ||= File.read(@file) + end + + def render_template + begin + require "erubi" + rescue LoadError + if @json + result = { + success: false, + error: "Erubi gem is not available. Install with: gem install erubi", + filename: @file, + } + puts result.to_json + elsif @silent + puts "Failed" + else + puts "Error: Erubi gem is not available." + puts "Install with: gem install erubi" + end + exit(1) + end + + begin + options = {} + + options[:filename] = @file if @file + options[:escape_html] = @no_escape ? false : true + options[:freeze] = true if @freeze + + engine = Erubi::Engine.new(file_content, options) + compiled_code = engine.src + + rendered_output = eval(compiled_code) + + if @json + result = { + success: true, + output: rendered_output, + filename: options[:filename], + } + puts result.to_json + elsif @silent + puts "Success" + else + puts rendered_output + end + + exit(0) + rescue StandardError => e + if @json + result = { + success: false, + error: e.message, + filename: @file, + } + puts result.to_json + elsif @silent + puts "Failed" + else + puts "Erubi render error: #{e.message}" + end + + exit(1) + end + end +end + +ErubiRenderer.new.run(ARGV) if __FILE__ == $PROGRAM_NAME diff --git a/docs/.vitepress/config/theme.mts b/docs/.vitepress/config/theme.mts index 53bde4702..43a882d56 100644 --- a/docs/.vitepress/config/theme.mts +++ b/docs/.vitepress/config/theme.mts @@ -17,6 +17,7 @@ const defaultSidebar = [ { text: "Formatter", link: "/projects/formatter" }, { text: "Linter", link: "/projects/linter" }, { text: "CLI", link: "/projects/cli" }, + { text: "Dev Tools", link: "/projects/dev-tools" }, ], }, { @@ -30,6 +31,14 @@ const defaultSidebar = [ { text: "Core", link: "/projects/core" }, ], }, + { + text: "HTML+ERB Rendering", + collapsed: false, + items: [ + { text: "Engine", link: "/projects/engine" }, + { text: "Compiler", link: "/projects/compiler" }, + ], + }, { text: "Editor Integrations", collapsed: false, diff --git a/docs/docs/projects/compiler.md b/docs/docs/projects/compiler.md new file mode 100644 index 000000000..0e0679b46 --- /dev/null +++ b/docs/docs/projects/compiler.md @@ -0,0 +1,3 @@ +# `Herb::Engine::Compiler` + +See [`marcoroth/reactionview`](https://github.com/marcoroth/reactionview) for now. diff --git a/docs/docs/projects/dev-tools.md b/docs/docs/projects/dev-tools.md new file mode 100644 index 000000000..14c695116 --- /dev/null +++ b/docs/docs/projects/dev-tools.md @@ -0,0 +1 @@ + diff --git a/docs/docs/projects/engine.md b/docs/docs/projects/engine.md new file mode 100644 index 000000000..21e48a879 --- /dev/null +++ b/docs/docs/projects/engine.md @@ -0,0 +1,3 @@ +# `Herb::Engine` + +See [`marcoroth/reactionview`](https://github.com/marcoroth/reactionview) for now. diff --git a/examples/link_to_with_block.html.erb b/examples/link_to_with_block.html.erb new file mode 100644 index 000000000..d502f954d --- /dev/null +++ b/examples/link_to_with_block.html.erb @@ -0,0 +1,5 @@ +<%= link_to root_path do %> +
+ Test +
+<% end %> diff --git a/javascript/packages/dev-tools/README.md b/javascript/packages/dev-tools/README.md new file mode 100644 index 000000000..03e2d5da7 --- /dev/null +++ b/javascript/packages/dev-tools/README.md @@ -0,0 +1,18 @@ +# Herb Dev Tools + +**Package**: [`@herb-tools/dev-tools`](https://www.npmjs.com/package/@herb-tools/dev-tools) + +--- + +Development tools for visual debugging in HTML+ERB templates. Provides a browser-based interface for inspecting ERB expressions, template boundaries, and more debugging information. + + +## Installation + +```bash +npm install @herb-tools/dev-tools + +# or + +yarn add @herb-tools/dev-tools +``` diff --git a/javascript/packages/dev-tools/package.json b/javascript/packages/dev-tools/package.json new file mode 100644 index 000000000..3dda908a8 --- /dev/null +++ b/javascript/packages/dev-tools/package.json @@ -0,0 +1,41 @@ +{ + "name": "@herb-tools/dev-tools", + "version": "0.6.1", + "description": "Development tools for visual debugging in HTML+ERB templates", + "type": "module", + "license": "MIT", + "homepage": "https://herb-tools.dev", + "bugs": "https://github.com/marcoroth/herb/issues/new?title=Package%20%60@herb-tools/dev-tools%60:%20", + "repository": { + "type": "git", + "url": "https://github.com/marcoroth/herb.git", + "directory": "javascript/packages/dev-tools" + }, + "main": "./dist/herb-dev-tools.umd.js", + "module": "./dist/herb-dev-tools.esm.js", + "types": "./dist/types/index.d.ts", + "scripts": { + "build": "yarn clean && rollup -c", + "dev": "rollup -c -w", + "clean": "rimraf dist", + "test": "echo 'TODO: add tests'", + "prepublishOnly": "yarn clean && yarn build && yarn test" + }, + "exports": { + "./package.json": "./package.json", + ".": { + "types": "./dist/types/index.d.ts", + "import": "./dist/herb-dev-tools.esm.js", + "default": "./dist/herb-dev-tools.umd.js" + } + }, + "dependencies": { + "@herb-tools/core": "0.6.1" + }, + "files": [ + "package.json", + "README.md", + "dist/", + "src/" + ] +} diff --git a/javascript/packages/dev-tools/project.json b/javascript/packages/dev-tools/project.json new file mode 100644 index 000000000..dde93e961 --- /dev/null +++ b/javascript/packages/dev-tools/project.json @@ -0,0 +1,36 @@ +{ + "name": "@herb-tools/dev-tools", + "$schema": "../../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "javascript/packages/dev-tools/src", + "projectType": "library", + "targets": { + "build": { + "executor": "nx:run-script", + "options": { + "script": "build" + }, + "dependsOn": [ + "@herb-tools/core:build" + ] + }, + "dev": { + "executor": "nx:run-script", + "options": { + "script": "dev" + } + }, + "test": { + "executor": "nx:run-script", + "options": { + "script": "test" + } + }, + "clean": { + "executor": "nx:run-script", + "options": { + "script": "clean" + } + } + }, + "tags": [] +} diff --git a/javascript/packages/dev-tools/rollup.config.mjs b/javascript/packages/dev-tools/rollup.config.mjs new file mode 100644 index 000000000..5d1c37a2d --- /dev/null +++ b/javascript/packages/dev-tools/rollup.config.mjs @@ -0,0 +1,51 @@ +import typescript from "@rollup/plugin-typescript" +import { nodeResolve } from "@rollup/plugin-node-resolve" +import json from "@rollup/plugin-json" +import postcss from "rollup-plugin-postcss" + +export default [ + { + input: "src/index.ts", + output: { + file: "dist/herb-dev-tools.esm.js", + format: "esm", + sourcemap: true, + }, + plugins: [ + nodeResolve({ browser: true }), + json(), + postcss({ + inject: true, + minimize: true, + }), + typescript({ + tsconfig: "./tsconfig.json", + declaration: true, + declarationDir: "./dist/types", + rootDir: "src/", + }), + ], + }, + { + input: "src/index.ts", + output: { + file: "dist/herb-dev-tools.umd.js", + format: "umd", + name: "HerbDevTools", + sourcemap: true + }, + plugins: [ + nodeResolve({ browser: true }), + json(), + postcss({ + inject: true, + minimize: true, + }), + typescript({ + tsconfig: "./tsconfig.json", + declaration: false, + rootDir: "src/", + }), + ], + }, +] diff --git a/javascript/packages/dev-tools/src/error-overlay.ts b/javascript/packages/dev-tools/src/error-overlay.ts new file mode 100644 index 000000000..a14fdb345 --- /dev/null +++ b/javascript/packages/dev-tools/src/error-overlay.ts @@ -0,0 +1,945 @@ +import { Diagnostic } from '@herb-tools/core'; + +export interface ValidationError extends Omit { + location?: { + line: number; + column: number; + }; + suggestion?: string; +} + +export interface ValidationData { + validationErrors: ValidationError[]; + filename: string; + timestamp: string; +} + +export class ErrorOverlay { + private overlay: HTMLElement | null = null; + private allValidationData: ValidationData[] = []; + private isVisible = false; + + constructor() { + this.init(); + } + + private init() { + this.detectValidationErrors(); + + const hasParserErrors = document.querySelector('.herb-parser-error-overlay') !== null; + + if (this.getTotalErrorCount() > 0) { + this.createOverlay(); + this.setupToggleHandler(); + } else if (hasParserErrors) { + console.log('[ErrorOverlay] Parser error overlay already displayed'); + } else { + console.log('[ErrorOverlay] No errors found, not creating overlay'); + } + } + + private detectValidationErrors() { + const templatesToRemove: HTMLTemplateElement[] = []; + const validationTemplates = document.querySelectorAll('template[data-herb-validation-error]') as NodeListOf; + + if (validationTemplates.length > 0) { + this.processValidationTemplates(validationTemplates, templatesToRemove); + } + + const jsonTemplates = document.querySelectorAll('template[data-herb-validation-errors]') as NodeListOf; + + jsonTemplates.forEach((template, _index) => { + try { + let jsonData = template.textContent?.trim(); + + if (!jsonData) { + jsonData = template.innerHTML?.trim(); + } + + if (jsonData) { + const validationData = JSON.parse(jsonData) as ValidationData; + this.allValidationData.push(validationData); + + templatesToRemove.push(template); + } + } catch (error) { + console.error('Failed to parse validation errors from template:', error, { + textContent: template.textContent, + innerHTML: template.innerHTML + }); + + templatesToRemove.push(template); + } + }); + + const htmlTemplates = document.querySelectorAll('template[data-herb-parser-error]') as NodeListOf; + + htmlTemplates.forEach((template, _index) => { + try { + let htmlContent = template.innerHTML?.trim() || template.textContent?.trim(); + + if (htmlContent) { + this.displayParserErrorOverlay(htmlContent); + templatesToRemove.push(template); + } + } catch (error) { + console.error('Failed to process parser error template:', error); + templatesToRemove.push(template); + } + }); + + templatesToRemove.forEach((template, _index) => template.remove()); + } + + private processValidationTemplates(templates: NodeListOf, templatesToRemove: HTMLTemplateElement[]) { + const validationFragments: Array<{ + metadata: { + severity: string; + source: string; + code: string; + line: number; + column: number; + filename: string; + message: string; + suggestion?: string; + timestamp: string; + }; + html: string; + count: number; + }> = []; + + const errorMap = new Map(); + + templates.forEach((template) => { + try { + const metadata = { + severity: template.getAttribute('data-severity') || 'error', + source: template.getAttribute('data-source') || 'unknown', + code: template.getAttribute('data-code') || '', + line: parseInt(template.getAttribute('data-line') || '0'), + column: parseInt(template.getAttribute('data-column') || '0'), + filename: template.getAttribute('data-filename') || 'unknown', + message: template.getAttribute('data-message') || '', + suggestion: template.getAttribute('data-suggestion') || undefined, + timestamp: template.getAttribute('data-timestamp') || new Date().toISOString() + }; + + const html = template.innerHTML?.trim() || ''; + + if (html) { + const errorKey = `${metadata.filename}:${metadata.line}:${metadata.column}:${metadata.code}:${metadata.message}`; + + if (errorMap.has(errorKey)) { + const existing = errorMap.get(errorKey)!; + existing.count++; + } else { + errorMap.set(errorKey, { metadata, html, count: 1 }); + } + + templatesToRemove.push(template); + } + } catch (error) { + console.error('Failed to process validation template:', error); + templatesToRemove.push(template); + } + }); + + validationFragments.push(...errorMap.values()); + + if (validationFragments.length > 0) { + this.displayValidationOverlay(validationFragments); + } + } + + private createOverlay() { + if (this.allValidationData.length === 0) return; + + this.overlay = document.createElement('div'); + this.overlay.id = 'herb-error-overlay'; + this.overlay.innerHTML = ` + + +
+
+
+ Errors (${this.getTotalErrorCount()}) +
+ +
+ +
+ ${this.allValidationData.map((validationData, index) => ` + ${index > 0 ? '
' : ''} +
+
${validationData.filename} (${this.getErrorSummary(validationData.validationErrors)})
+
+ ${validationData.validationErrors.map(error => ` +
+
${this.escapeHtml(error.message)}
+ ${error.location ? `
Line ${error.location.line}, Column ${error.location.column}
` : ''} + ${error.suggestion ? `
💡 ${this.escapeHtml(error.suggestion)}
` : ''} +
${error.source}${error.code ? ` (${error.code})` : ''}
+
+ `).join('')} +
+
+ `).join('')} +
+
+ `; + + document.body.appendChild(this.overlay); + + const closeBtn = this.overlay.querySelector('.herb-error-close'); + closeBtn?.addEventListener('click', () => this.hide()); + + this.overlay.addEventListener('click', (e) => { + if (e.target === this.overlay) { + this.hide(); + } + }); + + document.addEventListener('keydown', (e) => { + if (e.key === 'Escape' && this.isVisible) { + this.hide(); + } + }); + } + + private setupToggleHandler() { + document.addEventListener('keydown', (e) => { + if ((e.ctrlKey || e.metaKey) && e.shiftKey && e.key === 'E') { + e.preventDefault(); + this.toggle(); + } + }); + + if (this.hasErrorSeverity()) { + setTimeout(() => this.show(), 100); + } + } + + private getTotalErrorCount(): number { + return this.allValidationData.reduce((total, data) => total + data.validationErrors.length, 0); + } + + private getErrorSummary(errors: ValidationError[]): string { + if (errors.length === 1) { + return '1 error'; + } + + const errorsBySource = errors.reduce((acc, error) => { + const source = error.source || 'Unknown'; + acc[source] = (acc[source] || 0) + 1; + return acc; + }, {} as Record); + + const sourceKeys = Object.keys(errorsBySource); + if (sourceKeys.length === 1) { + const source = sourceKeys[0]; + const count = errorsBySource[source]; + const sourceLabel = this.getSourceLabel(source); + + return `${count} ${sourceLabel} error${count === 1 ? '' : 's'}`; + } else { + const parts = sourceKeys.map(source => { + const count = errorsBySource[source]; + const sourceLabel = this.getSourceLabel(source); + return `${count} ${sourceLabel}`; + }); + + return `${errors.length} errors (${parts.join(', ')})`; + } + } + + private getSourceLabel(source: string): string { + switch (source) { + case 'Parser': return 'parser'; + case 'SecurityValidator': return 'security'; + case 'NestingValidator': return 'nesting'; + case 'AccessibilityValidator': return 'accessibility'; + default: return 'validation'; + } + } + + private hasErrorSeverity(): boolean { + return this.allValidationData.some(data => + data.validationErrors.some(error => error.severity === 'error') + ); + } + + private escapeHtml(unsafe: string): string { + return unsafe + .replace(/&/g, '&') + .replace(//g, '>') + .replace(/"/g, '"') + .replace(/'/g, '''); + } + + public show() { + if (this.overlay) { + this.overlay.style.display = 'block'; + this.isVisible = true; + } + } + + public hide() { + if (this.overlay) { + this.overlay.style.display = 'none'; + this.isVisible = false; + } + } + + public toggle() { + if (this.isVisible) { + this.hide(); + } else { + this.show(); + } + } + + public hasErrors(): boolean { + return this.getTotalErrorCount() > 0; + } + + public getErrorCount(): number { + return this.getTotalErrorCount(); + } + + private displayParserErrorOverlay(htmlContent: string) { + const existingOverlay = document.querySelector('.herb-parser-error-overlay'); + if (existingOverlay) { + existingOverlay.remove(); + } + + const container = document.createElement('div'); + container.innerHTML = htmlContent; + + const overlay = container.querySelector('.herb-parser-error-overlay') as HTMLElement; + + if (overlay) { + document.body.appendChild(overlay); + overlay.style.display = 'flex'; + } else { + console.error('[ErrorOverlay] No parser error overlay found in HTML template'); + } + } + + private displayValidationOverlay(fragments: Array<{ + metadata: { + severity: string; + source: string; + code: string; + line: number; + column: number; + filename: string; + message: string; + suggestion?: string; + timestamp: string; + }; + html: string; + count: number; + }>) { + const existingOverlay = document.querySelector('.herb-validation-overlay'); + if (existingOverlay) { + existingOverlay.remove(); + } + + const errorsBySource = new Map(); + const errorsByFile = new Map(); + + fragments.forEach(fragment => { + const source = fragment.metadata.source; + + if (!errorsBySource.has(source)) { + errorsBySource.set(source, []); + } + + errorsBySource.get(source)!.push(fragment); + + const file = fragment.metadata.filename; + + if (!errorsByFile.has(file)) { + errorsByFile.set(file, []); + } + errorsByFile.get(file)!.push(fragment); + }); + + const errorCount = fragments.filter(f => f.metadata.severity === 'error').reduce((sum, f) => sum + f.count, 0); + const warningCount = fragments.filter(f => f.metadata.severity === 'warning').reduce((sum, f) => sum + f.count, 0); + const totalCount = fragments.reduce((sum, f) => sum + f.count, 0); + const uniqueCount = fragments.length; + + const overlayHTML = this.buildValidationOverlayHTML( + fragments, + errorsBySource, + errorsByFile, + { errorCount, warningCount, totalCount, uniqueCount } + ); + + const overlay = document.createElement('div'); + overlay.className = 'herb-validation-overlay'; + overlay.innerHTML = overlayHTML; + + document.body.appendChild(overlay); + + this.setupValidationOverlayHandlers(overlay); + } + + private buildValidationOverlayHTML( + _fragments: Array, + errorsBySource: Map, + errorsByFile: Map, + counts: { errorCount: number; warningCount: number; totalCount: number; uniqueCount: number } + ): string { + let title = counts.uniqueCount === 1 ? 'Validation Issue' : `Validation Issues`; + + if (counts.totalCount !== counts.uniqueCount) { + title += ` (${counts.uniqueCount} unique, ${counts.totalCount} total)`; + } else { + title += ` (${counts.totalCount})`; + } + + const subtitle = []; + + if (counts.errorCount > 0) subtitle.push(`${counts.errorCount} error${counts.errorCount !== 1 ? 's' : ''}`); + if (counts.warningCount > 0) subtitle.push(`${counts.warningCount} warning${counts.warningCount !== 1 ? 's' : ''}`); + + let fileTabs = ''; + + if (errorsByFile.size > 1) { + const totalErrors = Array.from(errorsByFile.values()).reduce((sum, errors) => sum + errors.length, 0); + + fileTabs = ` +
+ + ${Array.from(errorsByFile.entries()).map(([file, errors]) => ` + + `).join('')} +
+ `; + } + + const contentSections = Array.from(errorsBySource.entries()).map(([source, sourceFragments]) => ` +
+
+

${this.escapeHtml(source.replace('Validator', ''))} Issues (${sourceFragments.length})

+
+
+ ${sourceFragments.map(f => { + const fileAttribute = `data-error-file="${this.escapeAttr(f.metadata.filename)}"`; + + if (f.count > 1) { + return ` +
+ ${f.html} +
+ + ×${f.count} +
+
+ `; + } + return `
${f.html}
`; + }).join('')} +
+
+ `).join(''); + + return ` + +
+
+
+
+ ⚠️ + ${title} +
+
${subtitle.join(', ')}
+
+ +
+ ${fileTabs} +
+ ${contentSections} +
+
+ Click outside, press Esc key, or fix the code to dismiss.
+ + You can also disable this overlay by passing validation_mode: :none to Herb::Engine. +
+
+ `; + } + + private getValidationOverlayStyles(): string { + return ` + .herb-validation-overlay { + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: rgba(0, 0, 0, 0.8); + backdrop-filter: blur(4px); + z-index: 9999; + display: flex; + align-items: center; + justify-content: center; + padding: 20px; + font-family: 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace; + color: #e5e5e5; + line-height: 1.6; + } + + .herb-validation-container { + background: #000000; + border: 1px solid #374151; + border-radius: 12px; + box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); + max-width: 1200px; + max-height: 80vh; + width: 100%; + display: flex; + flex-direction: column; + overflow: hidden; + } + + .herb-validation-header { + background: linear-gradient(135deg, #f59e0b, #d97706); + padding: 20px 24px; + border-bottom: 1px solid #374151; + display: flex; + justify-content: space-between; + align-items: flex-start; + } + + .herb-validation-title { + font-size: 18px; + font-weight: 600; + color: white; + display: flex; + align-items: center; + gap: 12px; + } + + .herb-validation-subtitle { + font-size: 14px; + color: rgba(255, 255, 255, 0.9); + margin-top: 4px; + } + + .herb-file-tabs { + background: #1a1a1a; + border-bottom: 1px solid #374151; + padding: 0; + display: flex; + overflow-x: auto; + } + + .herb-file-tab { + background: transparent; + border: none; + color: #9ca3af; + padding: 12px 20px; + cursor: pointer; + font-size: 13px; + white-space: nowrap; + transition: all 0.2s; + border-bottom: 2px solid transparent; + } + + .herb-file-tab:hover { + background: #262626; + color: #e5e5e5; + } + + .herb-file-tab.active { + color: #f59e0b; + border-bottom-color: #f59e0b; + background: #262626; + } + + .herb-validation-content { + flex: 1; + overflow-y: auto; + padding: 24px; + display: flex; + flex-direction: column; + gap: 24px; + } + + .herb-validator-section { + background: #0f0f0f; + border: 1px solid #2d2d2d; + border-radius: 8px; + } + + .herb-validator-header { + background: #1a1a1a; + padding: 12px 16px; + border-bottom: 1px solid #2d2d2d; + } + + .herb-validator-header h3 { + margin: 0; + font-size: 14px; + font-weight: 500; + color: #e5e5e5; + } + + .herb-validator-content { + padding: 16px; + display: flex; + flex-direction: column; + gap: 16px; + } + + .herb-validation-item { + border-left: 3px solid #4a4a4a; + padding-left: 16px; + } + + .herb-validation-item[data-severity="error"] { + border-left-color: #7f1d1d; + } + + .herb-validation-item[data-severity="warning"] { + border-left-color: #78350f; + } + + .herb-validation-item[data-severity="info"] { + border-left-color: #1e3a8a; + } + + .herb-validation-header { + display: flex; + align-items: center; + gap: 8px; + margin-bottom: 8px; + } + + .herb-validation-badge { + padding: 2px 8px; + border-radius: 4px; + font-size: 11px; + font-weight: 600; + color: white; + text-transform: uppercase; + } + + .herb-validation-location { + font-size: 12px; + color: #9ca3af; + } + + .herb-validation-message { + font-size: 14px; + margin-bottom: 12px; + line-height: 1.5; + } + + .herb-code-snippet { + background: #1a1a1a; + border: 1px solid #2d2d2d; + border-radius: 4px; + padding: 12px; + overflow-x: auto; + } + + .herb-code-line { + display: flex; + align-items: flex-start; + min-height: 20px; + font-size: 13px; + line-height: 1.5; + } + + .herb-line-number { + color: #6b7280; + width: 40px; + text-align: right; + padding-right: 16px; + user-select: none; + flex-shrink: 0; + } + + .herb-line-content { + flex: 1; + white-space: pre; + font-family: inherit; + } + + .herb-error-line { + background: rgba(220, 38, 38, 0.1); + } + + .herb-error-line .herb-line-number { + color: #dc2626; + font-weight: 600; + } + + .herb-error-pointer { + color: #dc2626; + font-weight: bold; + margin-left: 56px; + font-size: 12px; + } + + .herb-validation-suggestion { + background: #1e3a1e; + border: 1px solid #10b981; + border-radius: 4px; + padding: 8px 12px; + margin-top: 8px; + font-size: 13px; + color: #10b981; + display: flex; + align-items: center; + gap: 8px; + } + + .herb-validation-item-wrapper, + .herb-validation-error-container { + position: relative; + } + + .herb-validation-error-container.hidden, + .herb-validation-item-wrapper.hidden, + .herb-validator-section.hidden { + display: none; + } + + .herb-occurrence-badge { + position: absolute; + top: 8px; + right: 8px; + background: #dc2626; + color: white; + padding: 4px 8px; + border-radius: 12px; + font-size: 12px; + font-weight: 600; + display: flex; + align-items: center; + gap: 4px; + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); + } + + .herb-occurrence-icon { + font-size: 10px; + } + + .herb-occurrence-count { + font-weight: bold; + } + + .herb-close-button { + background: rgba(255, 255, 255, 0.1); + border: 1px solid rgba(255, 255, 255, 0.2); + color: white; + width: 32px; + height: 32px; + border-radius: 6px; + display: flex; + align-items: center; + justify-content: center; + cursor: pointer; + font-size: 16px; + transition: all 0.2s; + } + + .herb-close-button:hover { + background: rgba(255, 255, 255, 0.2); + border-color: rgba(255, 255, 255, 0.3); + } + + /* Syntax highlighting */ + .herb-erb { color: #61dafb; } + .herb-erb-content { color: #c678dd; } + .herb-tag { color: #e06c75; } + .herb-attr { color: #d19a66; } + .herb-value { color: #98c379; } + .herb-comment { color: #5c6370; font-style: italic; } + `; + } + + private setupValidationOverlayHandlers(overlay: HTMLElement) { + const closeBtn = overlay.querySelector('.herb-close-button'); + + if (closeBtn) { + closeBtn.addEventListener('click', () => overlay.remove()); + } + + overlay.addEventListener('click', (e) => { + if (e.target === overlay) { + overlay.remove(); + } + }); + + const escHandler = (e: KeyboardEvent) => { + if (e.key === 'Escape') { + overlay.remove(); + document.removeEventListener('keydown', escHandler); + } + }; + + document.addEventListener('keydown', escHandler); + + const fileTabs = overlay.querySelectorAll('.herb-file-tab'); + + fileTabs.forEach(tab => { + tab.addEventListener('click', () => { + const selectedFile = tab.getAttribute('data-file'); + + fileTabs.forEach(t => t.classList.remove('active')); + tab.classList.add('active'); + + const errorContainers = overlay.querySelectorAll('[data-error-file]'); + const validatorSections = overlay.querySelectorAll('.herb-validator-section'); + + errorContainers.forEach(container => { + const containerFile = container.getAttribute('data-error-file'); + if (selectedFile === '*' || containerFile === selectedFile) { + container.classList.remove('hidden'); + } else { + container.classList.add('hidden'); + } + }); + + validatorSections.forEach(section => { + const sectionContent = section.querySelector('.herb-validator-content'); + const visibleErrors = sectionContent?.querySelectorAll('[data-error-file]:not(.hidden)').length || 0; + + const header = section.querySelector('h3'); + const source = section.getAttribute('data-source')?.replace('Validator', '') || 'Unknown'; + + if (header) { + header.textContent = `${source} Issues (${visibleErrors})`; + } + + if (visibleErrors === 0) { + section.classList.add('hidden'); + } else { + section.classList.remove('hidden'); + } + }); + }); + }); + } + + private escapeAttr(text: string): string { + return this.escapeHtml(text).replace(/"/g, '"'); + } +} diff --git a/javascript/packages/dev-tools/src/herb-overlay.ts b/javascript/packages/dev-tools/src/herb-overlay.ts new file mode 100644 index 000000000..1657e0bf6 --- /dev/null +++ b/javascript/packages/dev-tools/src/herb-overlay.ts @@ -0,0 +1,1001 @@ +import { ErrorOverlay } from './error-overlay'; + +export interface HerbDevToolsOptions { + projectPath?: string; + autoInit?: boolean; +} + +export class HerbOverlay { + private showingERB = false; + private showingERBOutlines = false; + private showingERBHoverReveal = false; + private showingTooltips = true; + private showingViewOutlines = false; + private showingPartialOutlines = false; + private showingComponentOutlines = false; + private menuOpen = false; + private projectPath = ''; + private currentlyHoveredERBElement: HTMLElement | null = null; + private errorOverlay: ErrorOverlay | null = null; + + private static readonly SETTINGS_KEY = 'herb-dev-tools-settings'; + + constructor(private options: HerbDevToolsOptions = {}) { + if (options.autoInit !== false) { + this.init(); + } + } + + private init() { + this.loadProjectPath(); + this.loadSettings(); + this.injectMenu(); + this.setupMenuToggle(); + this.setupToggleSwitches(); + this.initializeErrorOverlay(); + this.setupTurboListeners(); + this.applySettings(); + } + + private loadProjectPath() { + if (this.options.projectPath) { + this.projectPath = this.options.projectPath; + return; + } + + const metaTag = document.querySelector('meta[name="herb-project-path"]') as HTMLMetaElement; + + if (metaTag?.content) { + this.projectPath = metaTag.content; + } + } + + private loadSettings() { + const savedSettings = localStorage.getItem(HerbOverlay.SETTINGS_KEY); + if (savedSettings) { + try { + const settings = JSON.parse(savedSettings); + this.showingERB = settings.showingERB || false; + this.showingERBOutlines = settings.showingERBOutlines || false; + this.showingERBHoverReveal = settings.showingERBHoverReveal || false; + this.showingTooltips = settings.showingTooltips !== undefined ? settings.showingTooltips : true; + this.showingViewOutlines = settings.showingViewOutlines || false; + this.showingPartialOutlines = settings.showingPartialOutlines || false; + this.showingComponentOutlines = settings.showingComponentOutlines || false; + this.menuOpen = settings.menuOpen || false; + } catch (e) { + console.warn('Failed to load Herb dev tools settings:', e); + } + } + } + + private saveSettings() { + const settings = { + showingERB: this.showingERB, + showingERBOutlines: this.showingERBOutlines, + showingERBHoverReveal: this.showingERBHoverReveal, + showingTooltips: this.showingTooltips, + showingViewOutlines: this.showingViewOutlines, + showingPartialOutlines: this.showingPartialOutlines, + showingComponentOutlines: this.showingComponentOutlines, + menuOpen: this.menuOpen + }; + + localStorage.setItem(HerbOverlay.SETTINGS_KEY, JSON.stringify(settings)); + this.updateMenuButtonState(); + } + + private updateMenuButtonState() { + const menuTrigger = document.getElementById('herbMenuTrigger'); + if (menuTrigger) { + const hasActiveOptions = this.showingERB || this.showingERBOutlines || this.showingViewOutlines || this.showingPartialOutlines || this.showingComponentOutlines; + if (hasActiveOptions) { + menuTrigger.classList.add('has-active-options'); + } else { + menuTrigger.classList.remove('has-active-options'); + } + } + } + + private injectMenu() { + const existingMenu = document.querySelector('.herb-floating-menu'); + + if (existingMenu) { + return; + } + + const menuHTML = ` +
+ + +
+
Herb Debug Tools
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ + + + + +
+ +
+ +
+ +
+ +
+
+
+ `; + + document.body.insertAdjacentHTML('beforeend', menuHTML); + } + + private applySettings() { + this.toggleViewOutlines(this.showingViewOutlines); + this.togglePartialOutlines(this.showingPartialOutlines); + this.toggleComponentOutlines(this.showingComponentOutlines); + this.toggleERBTags(this.showingERB); + this.toggleERBOutlines(this.showingERBOutlines); + + const menuTrigger = document.getElementById('herbMenuTrigger'); + const menuPanel = document.getElementById('herbMenuPanel'); + + if (menuTrigger && menuPanel && this.menuOpen) { + menuTrigger.classList.add('active'); + menuPanel.classList.add('open'); + } + } + + private setupMenuToggle() { + const menuTrigger = document.getElementById('herbMenuTrigger'); + const menuPanel = document.getElementById('herbMenuPanel'); + + if (menuTrigger && menuPanel) { + menuTrigger.addEventListener('click', () => { + this.menuOpen = !this.menuOpen; + + if (this.menuOpen) { + menuTrigger.classList.add('active'); + menuPanel.classList.add('open'); + } else { + menuTrigger.classList.remove('active'); + menuPanel.classList.remove('open'); + } + + this.saveSettings(); + }); + + document.addEventListener('click', (e) => { + const target = e.target as HTMLElement; + const floatingMenu = document.querySelector('.herb-floating-menu'); + + if (floatingMenu && !floatingMenu.contains(target) && this.menuOpen) { + this.menuOpen = false; + menuTrigger.classList.remove('active'); + menuPanel.classList.remove('open'); + this.saveSettings(); + } + }); + } + } + + private setupTurboListeners() { + document.addEventListener('turbo:load', () => { + this.reinitializeAfterNavigation(); + }); + + document.addEventListener('turbo:render', () => { + this.reinitializeAfterNavigation(); + }); + + document.addEventListener('turbo:visit', () => { + this.reinitializeAfterNavigation(); + }); + } + + private reinitializeAfterNavigation() { + this.injectMenu(); + this.setupMenuToggle(); + this.setupToggleSwitches(); + this.applySettings(); + this.updateMenuButtonState(); + } + + private setupToggleSwitches() { + const toggleViewOutlinesSwitch = document.getElementById('herbToggleViewOutlines') as HTMLInputElement; + + if (toggleViewOutlinesSwitch) { + toggleViewOutlinesSwitch.checked = this.showingViewOutlines; + toggleViewOutlinesSwitch.addEventListener('change', () => { + this.toggleViewOutlines(toggleViewOutlinesSwitch.checked); + }); + } + + const togglePartialOutlinesSwitch = document.getElementById('herbTogglePartialOutlines') as HTMLInputElement; + + if (togglePartialOutlinesSwitch) { + togglePartialOutlinesSwitch.checked = this.showingPartialOutlines; + togglePartialOutlinesSwitch.addEventListener('change', () => { + this.togglePartialOutlines(togglePartialOutlinesSwitch.checked); + }); + } + + const toggleComponentOutlinesSwitch = document.getElementById('herbToggleComponentOutlines') as HTMLInputElement; + + if (toggleComponentOutlinesSwitch) { + toggleComponentOutlinesSwitch.checked = this.showingComponentOutlines; + toggleComponentOutlinesSwitch.addEventListener('change', () => { + this.toggleComponentOutlines(toggleComponentOutlinesSwitch.checked); + }); + } + + const toggleERBSwitch = document.getElementById('herbToggleERB') as HTMLInputElement; + const toggleERBOutlinesSwitch = document.getElementById('herbToggleERBOutlines') as HTMLInputElement; + + if (toggleERBSwitch) { + toggleERBSwitch.checked = this.showingERB; + toggleERBSwitch.addEventListener('change', () => { + if (toggleERBSwitch.checked && toggleERBOutlinesSwitch) { + toggleERBOutlinesSwitch.checked = false; + this.toggleERBOutlines(false); + } + this.toggleERBTags(toggleERBSwitch.checked); + }); + } + + if (toggleERBOutlinesSwitch) { + toggleERBOutlinesSwitch.checked = this.showingERBOutlines; + toggleERBOutlinesSwitch.addEventListener('change', () => { + if (toggleERBOutlinesSwitch.checked && toggleERBSwitch) { + toggleERBSwitch.checked = false; + this.toggleERBTags(false); + } + + this.toggleERBOutlines(toggleERBOutlinesSwitch.checked); + this.updateNestedToggleVisibility(); + }); + } else { + console.warn('ERB outlines toggle switch not found'); + } + + const toggleERBHoverRevealSwitch = document.getElementById('herbToggleERBHoverReveal') as HTMLInputElement; + + if (toggleERBHoverRevealSwitch) { + toggleERBHoverRevealSwitch.checked = this.showingERBHoverReveal; + toggleERBHoverRevealSwitch.addEventListener('change', () => { + this.toggleERBHoverReveal(toggleERBHoverRevealSwitch.checked); + }); + } + + const toggleTooltipsSwitch = document.getElementById('herbToggleTooltips') as HTMLInputElement; + + if (toggleTooltipsSwitch) { + toggleTooltipsSwitch.checked = this.showingTooltips; + toggleTooltipsSwitch.addEventListener('change', () => { + this.toggleTooltips(toggleTooltipsSwitch.checked); + }); + } + + this.updateNestedToggleVisibility(); + + const disableAllBtn = document.getElementById('herbDisableAll') as HTMLButtonElement; + if (disableAllBtn) { + disableAllBtn.addEventListener('click', () => { + this.disableAll(); + }); + } + } + + private toggleViewOutlines(show?: boolean) { + this.showingViewOutlines = show !== undefined ? show : !this.showingViewOutlines; + const viewOutlines = document.querySelectorAll('[data-herb-debug-outline-type="view"], [data-herb-debug-outline-type*="view"]'); + + viewOutlines.forEach((outline) => { + const element = outline as HTMLElement; + + if (this.showingViewOutlines) { + element.style.outline = '2px dotted #3b82f6'; + element.style.outlineOffset = element.tagName.toLowerCase() === 'html' ? '-2px' : '2px'; + element.classList.add('show-outline'); + + this.createOverlayLabel(element, 'view'); + } else { + element.style.outline = 'none'; + element.style.outlineOffset = '0'; + element.classList.remove('show-outline'); + + this.removeOverlayLabel(element); + } + }); + + this.saveSettings(); + } + + private togglePartialOutlines(show?: boolean) { + this.showingPartialOutlines = show !== undefined ? show : !this.showingPartialOutlines; + const partialOutlines = document.querySelectorAll('[data-herb-debug-outline-type="partial"], [data-herb-debug-outline-type*="partial"]'); + + partialOutlines.forEach((outline) => { + const element = outline as HTMLElement; + + if (this.showingPartialOutlines) { + element.style.outline = '2px dotted #10b981'; + element.style.outlineOffset = element.tagName.toLowerCase() === 'html' ? '-2px' : '2px'; + element.classList.add('show-outline'); + + this.createOverlayLabel(element, 'partial'); + } else { + element.style.outline = 'none'; + element.style.outlineOffset = '0'; + element.classList.remove('show-outline'); + + this.removeOverlayLabel(element); + } + }); + + this.saveSettings(); + } + + private toggleComponentOutlines(show?: boolean) { + this.showingComponentOutlines = show !== undefined ? show : !this.showingComponentOutlines; + const componentOutlines = document.querySelectorAll('[data-herb-debug-outline-type="component"], [data-herb-debug-outline-type*="component"]'); + + componentOutlines.forEach((outline) => { + const element = outline as HTMLElement; + + if (this.showingComponentOutlines) { + element.style.outline = '2px dotted #f59e0b'; + element.style.outlineOffset = element.tagName.toLowerCase() === 'html' ? '-2px' : '2px'; + element.classList.add('show-outline'); + + this.createOverlayLabel(element, 'component'); + } else { + element.style.outline = 'none'; + element.style.outlineOffset = '0'; + element.classList.remove('show-outline'); + + this.removeOverlayLabel(element); + } + }); + + this.saveSettings(); + } + + private createOverlayLabel(element: HTMLElement, type: 'view' | 'partial' | 'component') { + if (element.querySelector('.herb-overlay-label')) { + return; + } + + const shortName = element.getAttribute('data-herb-debug-file-name') || ''; + const relativePath = element.getAttribute('data-herb-debug-file-relative-path') || shortName; + const fullPath = element.getAttribute('data-herb-debug-file-full-path') || relativePath; + const label = document.createElement('div'); + + label.className = 'herb-overlay-label'; + label.textContent = shortName; + label.setAttribute('data-label-setup', 'true'); + + label.addEventListener('mouseenter', () => { + label.textContent = relativePath; + + document.querySelectorAll('.herb-overlay-label').forEach(otherLabel => { + (otherLabel as HTMLElement).style.zIndex = '1000'; + }); + + label.style.zIndex = '1002'; + }); + + label.addEventListener('mouseleave', () => { + label.textContent = shortName; + label.style.zIndex = '1000'; + }); + + label.addEventListener('click', (e) => { + e.stopPropagation(); + this.openFileInEditor(fullPath, 1, 1); + }); + + const shouldAttachToParent = element.getAttribute('data-herb-debug-attach-to-parent') === 'true'; + + if (shouldAttachToParent && element.parentElement) { + const parent = element.parentElement; + + element.style.outline = 'none'; + element.classList.remove('show-outline'); + + const outlineColor = type === 'component' ? '#f59e0b' : type === 'partial' ? '#10b981' : '#3b82f6'; + parent.style.outline = `2px dotted ${outlineColor}`; + parent.style.outlineOffset = parent.tagName.toLowerCase() === 'html' ? '-2px' : '2px'; + parent.classList.add('show-outline'); + + parent.setAttribute('data-herb-debug-attached-outline-type', type); + + parent.style.position = 'relative'; + label.style.position = 'absolute'; + label.style.top = '0'; + label.style.left = '0'; + + parent.appendChild(label); + return; + } + + element.style.position = 'relative'; + element.appendChild(label); + } + + private removeOverlayLabel(element: HTMLElement) { + const shouldAttachToParent = element.getAttribute('data-herb-debug-attach-to-parent') === 'true'; + + if (shouldAttachToParent && element.parentElement) { + const parent = element.parentElement; + const label = parent.querySelector('.herb-overlay-label'); + + if (label) { + label.remove(); + } + + parent.style.outline = 'none'; + parent.style.outlineOffset = '0'; + parent.classList.remove('show-outline'); + parent.removeAttribute('data-herb-debug-attached-outline-type'); + } else { + const label = element.querySelector('.herb-overlay-label'); + + if (label) { + label.remove(); + } + } + } + + private resetShowingERB() { + const elements = document.querySelectorAll('[data-herb-debug-showing-erb') + + elements.forEach(element => { + const originalContent = element.getAttribute('data-herb-debug-original') || ""; + + element.innerHTML = originalContent; + element.removeAttribute("data-herb-debug-showing-erb") + }) + } + + private toggleERBTags(show?: boolean) { + this.showingERB = show !== undefined ? show : !this.showingERB; + const erbOutputs = document.querySelectorAll('[data-herb-debug-outline-type*="erb-output"]'); + + erbOutputs.forEach((element) => { + const erbCode = element.getAttribute('data-herb-debug-erb'); + + if (this.showingERB && erbCode) { + // this.resetShowingERB() + + if (!element.hasAttribute('data-herb-debug-original')) { + element.setAttribute('data-herb-debug-original', element.innerHTML); + } + + element.textContent = erbCode; + element.setAttribute("data-herb-debug-showing-erb", "true") + + element.style.background = '#f3e8ff'; + element.style.color = '#7c3aed'; + + if (this.showingTooltips) { + this.addTooltipHoverHandler(element); + } + } else { + const originalContent = element.getAttribute('data-herb-debug-original') || ""; + + if (element && element.hasAttribute("data-herb-debug-showing-erb")) { + element.innerHTML = originalContent; + element.removeAttribute("data-herb-debug-showing-erb") + } + + element.style.background = 'transparent'; + element.style.color = 'inherit'; + + this.removeTooltipHoverHandler(element); + this.removeHoverTooltip(element); + } + }); + + this.saveSettings(); + } + + private toggleERBOutlines(show?: boolean) { + this.showingERBOutlines = show !== undefined ? show : !this.showingERBOutlines; + + this.clearCurrentHoveredERB(); + + const erbOutputs = document.querySelectorAll('[data-herb-debug-outline-type*="erb-output"]'); + + erbOutputs.forEach(element => { + const inserted = element.hasAttribute("data-herb-debug-inserted") + const needsWrapperToggled = (inserted && !element.children[0]) + + const realElement = (element.children[0] as HTMLElement) || element + + if (this.showingERBOutlines) { + + realElement.style.outline = '2px dotted #a78bfa'; + realElement.style.outlineOffset = '1px'; + + if (needsWrapperToggled) { + element.style.display = 'inline'; + } + + if (this.showingTooltips) { + this.addTooltipHoverHandler(element); + } + + if (this.showingERBHoverReveal) { + this.addERBHoverReveal(element); + } + } else { + realElement.style.outline = 'none'; + realElement.style.outlineOffset = '0'; + + if (needsWrapperToggled) { + element.style.display = 'contents'; + } + + this.removeTooltipHoverHandler(element); + this.removeHoverTooltip(element); + this.removeERBHoverReveal(element); + } + }); + + this.saveSettings(); + } + + private updateNestedToggleVisibility() { + const nestedToggle = document.getElementById('herbERBHoverRevealNested'); + const tooltipsNestedToggle = document.getElementById('herbTooltipsNested'); + + if (nestedToggle) { + nestedToggle.style.display = this.showingERBOutlines ? 'block' : 'none'; + } + + if (tooltipsNestedToggle) { + tooltipsNestedToggle.style.display = this.showingERBOutlines ? 'block' : 'none'; + } + } + + private toggleERBHoverReveal(show?: boolean) { + this.showingERBHoverReveal = show !== undefined ? show : !this.showingERBHoverReveal; + + if (this.showingERBHoverReveal && this.showingTooltips) { + this.toggleTooltips(false); + const toggleTooltipsSwitch = document.getElementById('herbToggleTooltips') as HTMLInputElement; + + if (toggleTooltipsSwitch) { + toggleTooltipsSwitch.checked = false; + } + } + + this.clearCurrentHoveredERB(); + + const erbOutputs = document.querySelectorAll('[data-herb-debug-outline-type*="erb-output"]'); + + erbOutputs.forEach((el) => { + const element = el as HTMLElement; + + this.removeERBHoverReveal(element); + + if (this.showingERBHoverReveal && this.showingERBOutlines) { + this.addERBHoverReveal(element); + } + }); + + this.saveSettings(); + } + + private clearCurrentHoveredERB() { + if (this.currentlyHoveredERBElement) { + const handlers = (this.currentlyHoveredERBElement as any)._erbHoverHandlers; + if (handlers) { + handlers.hideERBCode(); + } + this.currentlyHoveredERBElement = null; + } + } + + private handleRevealedERBClick = (event: Event) => { + event.stopPropagation(); + event.preventDefault(); + + const element = event.currentTarget as HTMLElement; + if (!element) return; + + const fullPath = element.getAttribute('data-herb-debug-file-full-path'); + const line = element.getAttribute('data-herb-debug-line'); + const column = element.getAttribute('data-herb-debug-column'); + + if (fullPath) { + this.openFileInEditor( + fullPath, + line ? parseInt(line) : 1, + column ? parseInt(column) : 1 + ); + } + } + + private addERBHoverReveal(element: HTMLElement) { + const erbCode = element.getAttribute('data-herb-debug-erb'); + if (!erbCode) return; + + this.removeERBHoverReveal(element); + + if (!element.hasAttribute('data-herb-debug-original')) { + element.setAttribute('data-herb-debug-original', element.innerHTML); + } + + const showERBCode = () => { + if (!this.showingERBHoverReveal || !this.showingERBOutlines) { + return; + } + + if (this.currentlyHoveredERBElement === element) { + return; + } + + this.clearCurrentHoveredERB(); + + this.currentlyHoveredERBElement = element; + + element.style.background = '#f3e8ff'; + element.style.color = '#7c3aed'; + element.style.fontFamily = 'inherit'; + element.style.fontSize = 'inherit'; + element.style.borderRadius = '3px'; + element.style.cursor = 'pointer'; + element.textContent = erbCode; + + element.addEventListener('click', this.handleRevealedERBClick); + }; + + const hideERBCode = () => { + if (this.currentlyHoveredERBElement === element) { + this.currentlyHoveredERBElement = null; + } + + const originalContent = element.getAttribute('data-herb-debug-original'); + + if (originalContent) { + element.innerHTML = originalContent; + } + + element.style.background = 'transparent'; + element.style.color = 'inherit'; + element.style.fontFamily = 'inherit'; + element.style.fontSize = 'inherit'; + element.style.borderRadius = '0'; + element.style.cursor = 'default'; + + element.removeEventListener('click', this.handleRevealedERBClick); + }; + + (element as any)._erbHoverHandlers = { showERBCode, hideERBCode }; + + element.addEventListener('mouseenter', showERBCode); + } + + private removeERBHoverReveal(element: HTMLElement) { + const handlers = (element as any)._erbHoverHandlers; + if (handlers) { + element.removeEventListener('mouseenter', handlers.showERBCode); + + delete (element as any)._erbHoverHandlers; + + handlers.hideERBCode(); + } + } + + private createHoverTooltip(element: HTMLElement, elementForPosition: HTMLElement) { + this.removeHoverTooltip(element); + + const relativePath = element.getAttribute('data-herb-debug-file-relative-path') || element.getAttribute('data-herb-debug-file-name') || ''; + const fullPath = element.getAttribute('data-herb-debug-file-full-path') || relativePath; + const line = element.getAttribute('data-herb-debug-line') || ''; + const column = element.getAttribute('data-herb-debug-column') || ''; + const erb = element.getAttribute('data-herb-debug-erb') || ''; + + if (!relativePath || !erb) return; + + const tooltip = document.createElement('div'); + tooltip.className = 'herb-tooltip'; + + tooltip.innerHTML = ` +
+ ${relativePath}:${line}:${column} + +
+
${erb}
+ `; + + let hideTimeout: number | null = null; + + const showTooltip = () => { + if (hideTimeout) { + clearTimeout(hideTimeout); + hideTimeout = null; + } + tooltip.classList.add('visible'); + }; + + const hideTooltip = () => { + hideTimeout = window.setTimeout(() => { + tooltip.classList.remove('visible'); + }, 100); + }; + + element.addEventListener('mouseenter', showTooltip); + element.addEventListener('mouseleave', hideTooltip); + tooltip.addEventListener('mouseenter', showTooltip); + tooltip.addEventListener('mouseleave', hideTooltip); + + const locationElement = tooltip.querySelector('.herb-location'); + const openInEditor = (e: Event) => { + if ((e.target as HTMLElement).closest('.herb-copy-path-btn')) { + return; + } + e.preventDefault(); + e.stopPropagation(); + this.openFileInEditor(fullPath, parseInt(line), parseInt(column)); + }; + locationElement?.addEventListener('click', openInEditor); + + const copyButton = tooltip.querySelector('.herb-copy-path-btn'); + const copyFilePath = (e: Event) => { + e.preventDefault(); + e.stopPropagation(); + const textToCopy = `${relativePath}:${line}:${column}`; + navigator.clipboard.writeText(textToCopy).then(() => { + copyButton!.textContent = '✅'; + setTimeout(() => { + copyButton!.textContent = '📋'; + }, 1000); + }).catch((err) => { + console.error('Failed to copy file path:', err); + }); + }; + copyButton?.addEventListener('click', copyFilePath); + + const positionTooltip = () => { + const elementRect = elementForPosition.getBoundingClientRect(); + const viewportHeight = window.innerHeight; + const viewportWidth = window.innerWidth; + + tooltip.style.position = 'fixed'; + tooltip.style.left = '0'; + tooltip.style.top = '0'; + tooltip.style.transform = 'none'; + tooltip.style.bottom = 'auto'; + + const actualTooltipRect = tooltip.getBoundingClientRect(); + const tooltipWidth = actualTooltipRect.width; + const tooltipHeight = actualTooltipRect.height; + + let left = elementRect.left + (elementRect.width / 2) - (tooltipWidth / 2); + let top = elementRect.top - tooltipHeight - 8; + + if (left < 8) { + left = 8; + } else if (left + tooltipWidth > viewportWidth - 8) { + left = viewportWidth - tooltipWidth - 8; + } + + if (top < 8) { + top = elementRect.bottom + 8; + + if (top + tooltipHeight > viewportHeight - 8) { + top = Math.max(8, (viewportHeight - tooltipHeight) / 2); + } + } + + if (top + tooltipHeight > viewportHeight - 8) { + top = viewportHeight - tooltipHeight - 8; + } + + tooltip.style.position = 'fixed'; + tooltip.style.left = `${left}px`; + tooltip.style.top = `${top}px`; + tooltip.style.transform = 'none'; + tooltip.style.bottom = 'auto'; + }; + + (element as any)._tooltipHandlers = { showTooltip, hideTooltip, openInEditor, copyFilePath, positionTooltip }; + (tooltip as any)._tooltipHandlers = { showTooltip, hideTooltip }; + + element.appendChild(tooltip); + + setTimeout(positionTooltip, 0); + window.addEventListener('scroll', positionTooltip, { passive: true }); + window.addEventListener('resize', positionTooltip, { passive: true }); + } + + private removeHoverTooltip(element: HTMLElement) { + const tooltip = element.querySelector('.herb-tooltip'); + + if (tooltip) { + const handlers = (element as any)._tooltipHandlers; + const tooltipHandlers = (tooltip as any)._tooltipHandlers; + + if (handlers) { + element.removeEventListener('mouseenter', handlers.showTooltip); + element.removeEventListener('mouseleave', handlers.hideTooltip); + + const locationElement = tooltip.querySelector('.herb-location'); + locationElement?.removeEventListener('click', handlers.openInEditor); + + const copyButton = tooltip.querySelector('.herb-copy-path-btn'); + copyButton?.removeEventListener('click', handlers.copyFilePath); + + if (handlers.positionTooltip) { + window.removeEventListener('scroll', handlers.positionTooltip); + window.removeEventListener('resize', handlers.positionTooltip); + } + + delete (element as any)._tooltipHandlers; + } + + if (tooltipHandlers) { + tooltip.removeEventListener('mouseenter', tooltipHandlers.showTooltip); + tooltip.removeEventListener('mouseleave', tooltipHandlers.hideTooltip); + delete (tooltip as any)._tooltipHandlers; + } + + tooltip.remove(); + } + } + + private addTooltipHoverHandler(element: HTMLElement) { + this.removeTooltipHoverHandler(element); + + const lazyTooltipHandler = () => { + if (!this.showingTooltips || !this.showingERBOutlines) { + return; + } + + if (element.querySelector('.herb-tooltip')) { + return; + } + + this.createHoverTooltip(element, element); + }; + + (element as any)._lazyTooltipHandler = lazyTooltipHandler; + element.addEventListener('mouseenter', lazyTooltipHandler); + } + + private removeTooltipHoverHandler(element: HTMLElement) { + const handler = (element as any)._lazyTooltipHandler; + if (handler) { + element.removeEventListener('mouseenter', handler); + delete (element as any)._lazyTooltipHandler; + } + } + + private openFileInEditor(file: string, line: number, column: number) { + const absolutePath = file.startsWith('/') ? file : (this.projectPath ? `${this.projectPath}/${file}` : file); + + const editors = [ + `vscode://file/${absolutePath}:${line}:${column}`, + `subl://open?url=file://${absolutePath}&line=${line}&column=${column}`, + `atom://core/open/file?filename=${absolutePath}&line=${line}&column=${column}`, + `txmt://open?url=file://${absolutePath}&line=${line}&column=${column}`, + ]; + + try { + window.open(editors[0], '_self'); + } catch (error) { + console.log(`Open in editor: ${absolutePath}:${line}:${column}`); + } + } + + private toggleTooltips(show?: boolean) { + this.showingTooltips = show !== undefined ? show : !this.showingTooltips; + + if (this.showingTooltips && this.showingERBHoverReveal) { + this.toggleERBHoverReveal(false); + const toggleERBHoverRevealSwitch = document.getElementById('herbToggleERBHoverReveal') as HTMLInputElement; + + if (toggleERBHoverRevealSwitch) { + toggleERBHoverRevealSwitch.checked = false; + } + } + + const erbOutputs = document.querySelectorAll('[data-herb-debug-outline-type*="erb-output"]'); + + erbOutputs.forEach((element) => { + if (this.showingERBOutlines && this.showingTooltips) { + this.addTooltipHoverHandler(element); + } else { + this.removeTooltipHoverHandler(element); + this.removeHoverTooltip(element); + } + }); + + this.saveSettings(); + } + + private disableAll() { + this.clearCurrentHoveredERB(); + + this.toggleViewOutlines(false); + this.togglePartialOutlines(false); + this.toggleComponentOutlines(false); + this.toggleERBTags(false); + this.toggleERBOutlines(false); + this.toggleERBHoverReveal(false); + this.toggleTooltips(false); + + const toggleViewOutlinesSwitch = document.getElementById('herbToggleViewOutlines') as HTMLInputElement; + const togglePartialOutlinesSwitch = document.getElementById('herbTogglePartialOutlines') as HTMLInputElement; + const toggleComponentOutlinesSwitch = document.getElementById('herbToggleComponentOutlines') as HTMLInputElement; + const toggleERBSwitch = document.getElementById('herbToggleERB') as HTMLInputElement; + const toggleERBOutlinesSwitch = document.getElementById('herbToggleERBOutlines') as HTMLInputElement; + const toggleERBHoverRevealSwitch = document.getElementById('herbToggleERBHoverReveal') as HTMLInputElement; + const toggleTooltipsSwitch = document.getElementById('herbToggleTooltips') as HTMLInputElement; + + if (toggleViewOutlinesSwitch) toggleViewOutlinesSwitch.checked = false; + if (togglePartialOutlinesSwitch) togglePartialOutlinesSwitch.checked = false; + if (toggleComponentOutlinesSwitch) toggleComponentOutlinesSwitch.checked = false; + if (toggleERBSwitch) toggleERBSwitch.checked = false; + if (toggleERBOutlinesSwitch) toggleERBOutlinesSwitch.checked = false; + if (toggleERBHoverRevealSwitch) toggleERBHoverRevealSwitch.checked = false; + if (toggleTooltipsSwitch) toggleTooltipsSwitch.checked = false; + } + + private initializeErrorOverlay() { + this.errorOverlay = new ErrorOverlay(); + } +} diff --git a/javascript/packages/dev-tools/src/index.ts b/javascript/packages/dev-tools/src/index.ts new file mode 100644 index 000000000..8d2c5034e --- /dev/null +++ b/javascript/packages/dev-tools/src/index.ts @@ -0,0 +1,31 @@ +import './styles.css'; +import { HerbOverlay, type HerbDevToolsOptions } from './herb-overlay.js'; + +export { HerbOverlay }; +export type { HerbDevToolsOptions }; + +export function initHerbDevTools(options: HerbDevToolsOptions = {}): HerbOverlay { + return new HerbOverlay(options); +} + +if (typeof window !== 'undefined' && typeof document !== 'undefined') { + const hasDebugMode = document.querySelector('meta[name="herb-debug-mode"]')?.getAttribute('content') === 'true'; + const hasDebugErb = document.querySelector('[data-herb-debug-erb]') !== null; + const hasValidationErrors = document.querySelector('template[data-herb-validation-errors]') !== null; + const hasValidationError = document.querySelector('template[data-herb-validation-error]') !== null; + const hasParserErrors = document.querySelector('template[data-herb-parser-error]') !== null; + const shouldAutoInit = hasDebugMode || hasDebugErb || hasValidationErrors || hasValidationError || hasParserErrors; + + if (shouldAutoInit) { + document.addEventListener('DOMContentLoaded', () => { + initHerbDevTools(); + }); + } +} + +if (typeof window !== 'undefined') { + (window as any).HerbDevTools = { + init: initHerbDevTools, + HerbOverlay + }; +} diff --git a/javascript/packages/dev-tools/src/styles.css b/javascript/packages/dev-tools/src/styles.css new file mode 100644 index 000000000..5ea714734 --- /dev/null +++ b/javascript/packages/dev-tools/src/styles.css @@ -0,0 +1,761 @@ +.herb-overlay-label { + position: absolute; + top: -18px; + left: 4px; + background: rgba(0, 0, 0, 0.8); + color: white; + padding: 2px 6px; + font-size: 11px; + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, monospace; + font-weight: 500; + border-radius: 3px; + display: block; + z-index: 1000; + cursor: pointer; + transition: all 0.2s ease; + white-space: nowrap; + line-height: 1.2; +} + +.herb-overlay-label:hover { + background: rgba(0, 0, 0, 0.9); + transform: scale(1.02); + color: #374151; + z-index: 1001; +} + +[data-herb-debug-outline-type*="view"] > .herb-overlay-label { + background: #dbeafe; + color: #1e40af; + border-color: #93c5fd; +} + +[data-herb-debug-outline-type*="partial"] > .herb-overlay-label { + background: #d1fae5; + color: #065f46; + border-color: #6ee7b7; +} + +[data-herb-debug-outline-type*="component"] > .herb-overlay-label { + background: #fef3c7; + color: #92400e; + border-color: #fcd34d; +} + +[data-herb-debug-outline-type*="erb-output"] { + transition: all 0.3s ease; +} + +.herb-tooltip { + position: fixed; + background: white; + border: 1px solid #e5e7eb; + padding: 16px 20px; + border-radius: 12px; + font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Fira Code', monospace; + font-size: 14px; + opacity: 0; + visibility: hidden; + pointer-events: none; + transition: opacity 0.2s ease, visibility 0.2s ease; + z-index: 10001; + box-shadow: 0 10px 40px rgba(0,0,0,0.12), 0 2px 8px rgba(0,0,0,0.08); + display: flex; + flex-direction: column; + gap: 12px; + white-space: nowrap; + overflow: visible; + max-width: calc(100vw - 16px); +} + +.herb-tooltip.visible { + opacity: 1; + visibility: visible; + pointer-events: auto; +} + +.herb-tooltip .herb-location { + color: #6b7280; + font-size: 13px; + font-weight: 500; + display: flex; + align-items: center; + justify-content: space-between; + gap: 12px; + cursor: pointer; + transition: all 0.2s ease; + background: #f8f9fa; + margin: -16px -20px 0 -20px; + padding: 12px 20px; + border-radius: 12px 12px 0 0; +} + +.herb-tooltip .herb-location:hover { + color: #374151; + background: #f1f3f4; +} + +.herb-copy-path-btn { + background: transparent; + border: none; + font-size: 14px; + cursor: pointer; + padding: 4px; + border-radius: 4px; + transition: all 0.2s ease; + color: #6b7280; + flex-shrink: 0; + position: relative; +} + +.herb-copy-path-btn:hover { + background: rgba(107, 114, 128, 0.1); + color: #374151; +} + +.herb-copy-path-btn:active { + transform: scale(0.95); +} + +.herb-location::after { + content: attr(data-tooltip); + position: absolute; + bottom: calc(100% + 8px); + left: 50%; + transform: translateX(-50%); + background: #1f2937; + color: white; + padding: 6px 10px; + border-radius: 6px; + font-size: 12px; + white-space: nowrap; + opacity: 0; + visibility: hidden; + pointer-events: none; + transition: all 0.2s ease; + z-index: 10002; +} + +.herb-location::before { + content: ''; + position: absolute; + bottom: calc(100% + 2px); + left: 50%; + transform: translateX(-50%); + border: 4px solid transparent; + border-top-color: #1f2937; + opacity: 0; + visibility: hidden; + transition: all 0.2s ease; + z-index: 10002; +} + +.herb-location:hover::after, +.herb-location:hover::before { + opacity: 1; + visibility: visible; +} + +.herb-location:has(.herb-copy-path-btn:hover)::after, +.herb-location:has(.herb-copy-path-btn:hover)::before { + opacity: 0 !important; + visibility: hidden !important; +} + +.herb-copy-path-btn::after { + content: attr(data-tooltip); + position: absolute; + top: -36px; + left: 50%; + transform: translateX(-50%); + background: #1f2937; + color: white; + padding: 6px 10px; + border-radius: 6px; + font-size: 12px; + white-space: nowrap; + opacity: 0; + visibility: hidden; + pointer-events: none; + transition: all 0.2s ease; + z-index: 10003; +} + +.herb-copy-path-btn::before { + content: ''; + position: absolute; + top: -6px; + left: 50%; + transform: translateX(-50%); + border: 4px solid transparent; + border-bottom-color: #1f2937; + opacity: 0; + visibility: hidden; + transition: all 0.2s ease; + z-index: 10003; +} + +.herb-copy-path-btn:hover::after, +.herb-copy-path-btn:hover::before { + opacity: 1; + visibility: visible; +} + +.herb-tooltip .herb-erb-code { + color: #111827; + font-size: 16px; + font-weight: 600; + cursor: text; + user-select: text; + letter-spacing: -0.025em; +} + +.herb-tooltip::before { + content: ''; + position: absolute; + bottom: -8px; + left: 0; + right: 0; + height: 8px; + pointer-events: auto; +} + +.herb-tooltip::after { + content: ''; + position: absolute; + bottom: -6px; + left: 50%; + transform: translateX(-50%); + border: 6px solid transparent; + border-top-color: #e5e7eb; + z-index: 10000; + pointer-events: none; +} + +.herb-floating-menu { + position: fixed; + top: 0; + right: 0; + z-index: 2147483643; + font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; +} + +.herb-menu-trigger { + padding: 4px 7px; + border-radius: 0 0 0 10px; + background: white; + border: 1px solid #c0c0c0; + border-top: none; + border-right: none; + box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.1); + cursor: pointer; + transition: all 0.2s ease; + display: flex; + align-items: center; + justify-content: center; + gap: 4px; + position: relative; + z-index: 2147483640; + font-size: 12px; +} + +.herb-menu-trigger:hover { + background: #f9fafb; + border-color: #9ca3af; + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); +} + +.herb-menu-trigger:active { + transform: scale(0.98); +} + +.herb-menu-trigger.has-active-options { + background: #dbeafe; + border-color: #3b82f6; +} + +.herb-menu-trigger.has-active-options:hover { + background: #bfdbfe; + border-color: #2563eb; +} + +.herb-menu-trigger.has-active-options .herb-text { + color: #1d4ed8; +} + +.herb-icon { + font-size: 14px; + line-height: 1; + display: block; +} + +.herb-text { + font-size: 11px; + font-weight: 600; + color: #555; + letter-spacing: 0.2px; +} + +.herb-menu-panel { + position: absolute; + top: 28px; + right: 10px; + background: white; + border-radius: 8px; + border: 1px solid #c0c0c0; + box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.1); + padding: 0; + min-width: 280px; + opacity: 0; + visibility: hidden; + transform: translateY(-10px) scale(0.95); + transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); + transform-origin: top right; +} + +.herb-menu-panel.open { + opacity: 1; + visibility: visible; + transform: translateY(0) scale(1); +} + +.herb-menu-header { + padding: 16px 20px; + border-bottom: 1px solid #e5e7eb; + font-weight: 600; + font-size: 14px; + color: #374151; + background: #f9fafb; + border-radius: 8px 8px 0 0; +} + +.herb-toggle-item { + padding: 12px 20px; + border-bottom: 1px solid #f3f4f6; +} + +.herb-toggle-item:last-child { + border-bottom: none; + border-radius: 0 0 8px 8px; +} + +.herb-nested-toggle { + margin-top: 8px; + padding-left: 24px; + border-left: 2px solid #f3f4f6; + transition: all 0.3s ease; +} + +.herb-nested-label { + opacity: 0.8; +} + +.herb-nested-label .herb-toggle-text { + font-size: 13px; + color: #6b7280; +} + +.herb-nested-switch { + width: 36px; + height: 20px; + background: #e5e7eb; +} + +.herb-nested-switch::after { + width: 14px; + height: 14px; + top: 3px; + left: 3px; +} + +.herb-toggle-input:checked + .herb-nested-switch::after { + transform: translateX(16px); +} + +.herb-toggle-label { + display: flex; + align-items: center; + cursor: pointer; + user-select: none; + gap: 12px; +} + +.herb-toggle-input { + display: none; +} + +.herb-toggle-switch { + position: relative; + width: 44px; + height: 24px; + background: #cbd5e1; + border-radius: 12px; + transition: background 0.3s ease; + flex-shrink: 0; +} + +.herb-toggle-switch::after { + content: ''; + position: absolute; + width: 18px; + height: 18px; + background: white; + border-radius: 50%; + top: 3px; + left: 3px; + transition: transform 0.3s ease; + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); +} + +.herb-toggle-input:checked + .herb-toggle-switch { + background: #8b5cf6; +} + +.herb-toggle-input:checked + .herb-toggle-switch::after { + transform: translateX(20px); +} + +.herb-toggle-text { + font-size: 14px; + color: #374151; + flex: 1; +} + +.herb-toggle-label:hover .herb-toggle-switch { + background: #94a3b8; +} + +.herb-toggle-label:hover .herb-toggle-input:checked + .herb-toggle-switch { + background: #7c3aed; +} + +.herb-disable-all-section { + padding: 16px 20px; + border-top: 1px solid #f3f4f6; + background: #f9fafb; + border-radius: 0 0 8px 8px; +} + +.herb-disable-all-btn { + width: 100%; + background: #ef4444; + color: white; + border: none; + padding: 8px 16px; + border-radius: 6px; + font-size: 13px; + font-weight: 500; + cursor: pointer; + transition: background 0.2s ease; +} + +.herb-disable-all-btn:hover { + background: #dc2626; +} + +.herb-disable-all-btn:active { + background: #b91c1c; +} + +.herb-validation-overlay { + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: rgba(0, 0, 0, 0.8); + backdrop-filter: blur(4px); + z-index: 2147483640; + display: flex; + align-items: center; + justify-content: center; + padding: 20px; + overflow-y: auto; + font-family: 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace; + color: #e5e5e5; + line-height: 1.6; +} + +.herb-validation-panel { + background: #000000; + border: 1px solid #374151; + border-radius: 12px; + max-width: 1200px; + width: 100%; + max-height: 80vh; + overflow: hidden; + box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); + display: flex; + flex-direction: column; +} + +.herb-validation-header { + background: linear-gradient(135deg, #dc2626, #b91c1c); + color: white; + padding: 20px 24px; + border-bottom: 1px solid #374151; + border-radius: 12px 12px 0 0; + display: flex; + align-items: flex-start; + justify-content: space-between; + gap: 16px; + flex-shrink: 0; +} + +.herb-validation-title { + font-size: 18px; + font-weight: 600; + margin: 0; +} + +.herb-validation-close { + background: rgba(255, 255, 255, 0.1); + border: 1px solid rgba(255, 255, 255, 0.2); + font-size: 16px; + cursor: pointer; + color: white; + padding: 0; + width: 32px; + height: 32px; + display: flex; + align-items: center; + justify-content: center; + border-radius: 6px; + transition: all 0.2s; + flex-shrink: 0; +} + +.herb-validation-close:hover { + background: rgba(255, 255, 255, 0.2); + border-color: rgba(255, 255, 255, 0.3); +} + +.herb-file-tabs { + display: flex; + border-bottom: 1px solid #374151; + background: #262626; + overflow-x: auto; + flex-shrink: 0; +} + +.herb-file-tab { + padding: 12px 16px; + background: none; + border: none; + border-bottom: 3px solid transparent; + cursor: pointer; + font-size: 14px; + font-weight: 500; + color: #9ca3af; + white-space: nowrap; + transition: all 0.2s ease; +} + +.herb-file-tab:hover { + color: #e5e5e5; + background: #2d2d2d; +} + +.herb-file-tab.active { + color: white; + border-bottom-color: #3b82f6; + background: #374151; +} + +.herb-validation-content { + flex: 1; + overflow-y: auto; + padding: 24px; +} + +.herb-validator-section { + margin-bottom: 32px; +} + +.herb-validator-section:last-child { + margin-bottom: 0; +} + +.herb-validator-section.hidden { + display: none; +} + +.herb-validator-header { + background: #262626; + color: #e5e5e5; + padding: 12px 16px; + border-radius: 8px 8px 0 0; + font-weight: 600; + font-size: 16px; + display: flex; + align-items: center; + justify-content: space-between; + border-bottom: 1px solid #374151; +} + +.herb-validator-count { + background: rgba(255, 255, 255, 0.2); + padding: 2px 8px; + border-radius: 12px; + font-size: 14px; + font-weight: 500; +} + +.herb-validator-items { + background: #111111; + border: 1px solid #374151; + border-top: none; + border-radius: 0 0 8px 8px; +} + +.herb-validation-item { + padding: 20px; + border-bottom: 1px solid #374151; + background: #111111; +} + +.herb-validation-item:last-child { + border-bottom: none; + border-radius: 0 0 8px 8px; +} + +.herb-validation-item.hidden { + display: none; +} + +.herb-validation-item .herb-validation-header { + background: #1a1a1a; + color: #9ca3af; + padding: 12px 16px; + border: none; + border-bottom: 1px solid #374151; + display: flex; + align-items: center; + gap: 12px; + margin: -20px -20px 16px -20px; + font-size: 13px; +} + +.herb-validation-badge { + color: white; + padding: 4px 8px; + border-radius: 4px; + font-size: 12px; + font-weight: 600; + text-transform: uppercase; + letter-spacing: 0.025em; +} + +.herb-validation-location { + color: #9ca3af; + font-size: 13px; + font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Fira Code', monospace; +} + +.herb-validation-message { + font-size: 13px; + font-weight: 500; + margin: -16px -16px 16px -16px; + padding: 12px 16px; + background: #1a1a1a; + border-bottom: 1px solid #374151; + color: #fbbf24; + line-height: 1.4; +} + +.herb-code-snippet { + background: #1f2937; + border-radius: 6px; + overflow: hidden; + margin-bottom: 16px; + font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Fira Code', monospace; +} + +.herb-code-line { + display: flex; + align-items: stretch; +} + +.herb-code-line.herb-error-line { + background: rgba(239, 68, 68, 0.1); +} + +.herb-validation-overlay .herb-line-number { + background: #374151; + color: #9ca3af; + padding: 8px 12px; + font-size: 13px; + width: 40px; + text-align: right; + user-select: none; + border-right: 1px solid #4b5563; + flex-shrink: 0; +} + +.herb-validation-overlay .herb-error-line .herb-line-number { + background: #dc2626; + color: white; +} + +.herb-validation-overlay .herb-line-content { + color: #e5e7eb; + padding: 8px 16px; + flex: 1; + font-size: 13px; + white-space: pre-wrap; +} + +.herb-validation-overlay .herb-error-pointer { + color: #dc2626; + padding: 4px 16px 8px 57px; + font-size: 13px; + font-weight: bold; + background: #1f2937; +} + +.herb-validation-suggestion { + background: #111111; + border: 1px solid #374151; + border-radius: 6px; + padding: 12px 16px; + display: flex; + align-items: flex-start; + gap: 8px; + font-size: 14px; + color: #d1d5db; + margin-top: 16px; +} + +.herb-suggestion-icon { + font-size: 16px; + flex-shrink: 0; + margin-top: 1px; + color: #10b981; +} + +.herb-erb { + color: #fbbf24; + font-weight: 600; +} + +.herb-erb-content { + color: #34d399; +} + +.herb-tag { + color: #60a5fa; + font-weight: 500; +} + +.herb-attr { + color: #f472b6; +} + +.herb-value { + color: #a78bfa; +} + +.herb-comment { + color: #6b7280; + font-style: italic; +} diff --git a/javascript/packages/dev-tools/tsconfig.json b/javascript/packages/dev-tools/tsconfig.json new file mode 100644 index 000000000..3ee09c86d --- /dev/null +++ b/javascript/packages/dev-tools/tsconfig.json @@ -0,0 +1,27 @@ +{ + "compilerOptions": { + "target": "ES2020", + "module": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable"], + "moduleResolution": "node", + "allowImportingTsExtensions": false, + "resolveJsonModule": true, + "isolatedModules": true, + "noEmit": false, + "strict": true, + "skipLibCheck": true, + "esModuleInterop": true, + "allowSyntheticDefaultImports": true, + "forceConsistentCasingInFileNames": true, + "declaration": false, + "rootDir": "src" + }, + "include": [ + "src/**/*" + ], + "exclude": [ + "node_modules", + "dist", + "test" + ] +} diff --git a/javascript/packages/highlighter/src/cli.ts b/javascript/packages/highlighter/src/cli.ts index e2f55d411..498ae2d49 100644 --- a/javascript/packages/highlighter/src/cli.ts +++ b/javascript/packages/highlighter/src/cli.ts @@ -10,6 +10,8 @@ import { THEME_NAMES, DEFAULT_THEME } from "./themes.js" import { name, version } from "../package.json" +import type { Diagnostic } from "@herb-tools/core" + export class CLI { private usage = dedent` Usage: herb-highlight [file] [options] @@ -28,6 +30,8 @@ export class CLI { --no-wrap-lines disable line wrapping --truncate-lines enable line truncation (mutually exclusive with --wrap-lines) --max-width maximum width for line wrapping/truncation [default: terminal width] + --diagnostics JSON string or file path containing diagnostics to render + --split-diagnostics render each diagnostic individually (requires --diagnostics) ` private parseArguments() { @@ -44,6 +48,8 @@ export class CLI { "no-wrap-lines": { type: "boolean" }, "truncate-lines": { type: "boolean" }, "max-width": { type: "string" }, + "diagnostics": { type: "string" }, + "split-diagnostics": { type: "boolean" }, }, allowPositionals: true, }) @@ -121,6 +127,44 @@ export class CLI { maxWidth = parsed } + let diagnostics: Diagnostic[] = [] + let splitDiagnostics = false + + if (values["diagnostics"]) { + try { + let diagnosticsData: string + + if (values["diagnostics"].startsWith("{") || values["diagnostics"].startsWith("[")) { + diagnosticsData = values["diagnostics"] + } else { + diagnosticsData = readFileSync(resolve(values["diagnostics"]), "utf-8") + } + + const parsed = JSON.parse(diagnosticsData) + diagnostics = Array.isArray(parsed) ? parsed : [parsed] + + for (const diagnostic of diagnostics) { + if (!diagnostic.message || !diagnostic.location || !diagnostic.severity) { + throw new Error("Invalid diagnostic format: each diagnostic must have message, location, and severity") + } + } + + } catch (error) { + console.error(`Error parsing diagnostics: ${error instanceof Error ? error.message : error}`) + process.exit(1) + } + } + + if (values["split-diagnostics"]) { + if (diagnostics.length === 0) { + console.error("Error: --split-diagnostics requires --diagnostics to be specified") + + process.exit(1) + } + + splitDiagnostics = true + } + return { values, positionals, @@ -131,11 +175,13 @@ export class CLI { wrapLines, truncateLines, maxWidth, + diagnostics, + splitDiagnostics, } } async run() { - const { positionals, theme, focusLine, contextLines, showLineNumbers, wrapLines, truncateLines, maxWidth } = + const { positionals, theme, focusLine, contextLines, showLineNumbers, wrapLines, truncateLines, maxWidth, diagnostics, splitDiagnostics } = this.parseArguments() if (positionals.length === 0) { @@ -154,11 +200,13 @@ export class CLI { const highlighted = highlighter.highlight(filePath, content, { focusLine, - contextLines: focusLine ? contextLines : 0, + contextLines: focusLine ? contextLines : (diagnostics.length > 0 ? contextLines : 0), showLineNumbers, wrapLines, truncateLines, maxWidth, + diagnostics, + splitDiagnostics, }) console.log(highlighted) diff --git a/lib/herb.rb b/lib/herb.rb index e558ef60a..53c0df792 100644 --- a/lib/herb.rb +++ b/lib/herb.rb @@ -15,6 +15,7 @@ require_relative "herb/ast" require_relative "herb/ast/node" require_relative "herb/ast/nodes" +require_relative "herb/ast/helpers" require_relative "herb/errors" require_relative "herb/warnings" @@ -25,6 +26,7 @@ require_relative "herb/version" require_relative "herb/visitor" +require_relative "herb/engine" begin major, minor, _patch = RUBY_VERSION.split(".") #: [String, String, String] diff --git a/lib/herb/ast/helpers.rb b/lib/herb/ast/helpers.rb new file mode 100644 index 000000000..2ddef5355 --- /dev/null +++ b/lib/herb/ast/helpers.rb @@ -0,0 +1,26 @@ +# frozen_string_literal: true +# typed: true + +module Herb + module AST + module Helpers + #: (Herb::AST::Node) -> bool + def erb_outputs?(node) + return false unless node.is_a?(Herb::AST::ERBContentNode) + + opening = node.tag_opening&.value + opening&.include?("=") && !opening&.start_with?("<%#") + end + + #: (String) -> bool + def erb_comment?(opening) + opening.start_with?("<%#") + end + + #: (String) -> bool + def erb_output?(opening) + opening.include?("=") + end + end + end +end diff --git a/lib/herb/cli.rb b/lib/herb/cli.rb index 51ebc68dc..3b0c08c8c 100644 --- a/lib/herb/cli.rb +++ b/lib/herb/cli.rb @@ -6,7 +6,7 @@ require "optparse" class Herb::CLI - attr_accessor :json, :silent, :no_interactive, :no_log_file, :no_timing, :local + attr_accessor :json, :silent, :no_interactive, :no_log_file, :no_timing, :local, :escape, :no_escape, :freeze, :debug def initialize(args) @args = args @@ -86,6 +86,8 @@ def help(exit_code = 0) Commands: bundle exec herb lex [file] Lex a file. bundle exec herb parse [file] Parse a file. + bundle exec herb compile [file] Compile ERB template to Ruby code. + bundle exec herb render [file] Compile and render ERB template to final output. bundle exec herb analyze [path] Analyze a project by passing a directory to the root of the project bundle exec herb ruby [file] Extract Ruby from a file. bundle exec herb html [file] Extract HTML from a file. @@ -114,6 +116,10 @@ def result exit(has_issues ? 1 : 0) when "parse" Herb.parse(file_content) + when "compile" + compile_template + when "render" + render_template when "lex" Herb.lex(file_content) when "ruby" @@ -191,6 +197,22 @@ def option_parser parser.on("--local", "Use localhost for playground command instead of herb-tools.dev") do self.local = true end + + parser.on("--escape", "Enable HTML escaping by default (for compile command)") do + self.escape = true + end + + parser.on("--no-escape", "Disable HTML escaping by default (for compile command)") do + self.no_escape = true + end + + parser.on("--freeze", "Add frozen string literal pragma (for compile command)") do + self.freeze = true + end + + parser.on("--debug", "Enable debug mode with ERB expression wrapping (for compile command)") do + self.debug = true + end end end @@ -200,6 +222,140 @@ def options private + def compile_template + require_relative "engine" + + begin + options = {} + options[:filename] = @file if @file + options[:escape] = no_escape ? false : true + options[:freeze] = true if freeze + + if debug + options[:debug] = true + options[:debug_filename] = @file if @file + end + + engine = Herb::Engine.new(file_content, options) + + if json + result = { + success: true, + source: engine.src, + filename: engine.filename, + bufvar: engine.bufvar, + } + + puts result.to_json + elsif silent + puts "Success" + else + puts engine.src + end + + exit(0) + rescue Herb::Engine::CompilationError => e + if json + result = { + success: false, + error: e.message, + filename: @file, + } + puts result.to_json + elsif silent + puts "Failed" + else + puts e.message + end + + exit(1) + rescue StandardError => e + if json + result = { + success: false, + error: "Unexpected error: #{e.class}: #{e.message}", + filename: @file, + } + puts result.to_json + elsif silent + puts "Failed" + else + puts "Unexpected error: #{e.class}: #{e.message}" + puts e.backtrace.first(5).join("\n") unless silent + end + + exit(1) + end + end + + def render_template + require_relative "engine" + + begin + options = {} + options[:filename] = @file if @file + options[:escape] = no_escape ? false : true + options[:freeze] = true if freeze + + if debug + options[:debug] = true + options[:debug_filename] = @file if @file + end + + engine = Herb::Engine.new(file_content, options) + compiled_code = engine.src + + rendered_output = eval(compiled_code) + + if json + result = { + success: true, + output: rendered_output, + filename: engine.filename, + } + + puts result.to_json + elsif silent + puts "Success" + else + puts rendered_output + end + + exit(0) + rescue Herb::Engine::CompilationError => e + if json + result = { + success: false, + error: e.message, + filename: @file, + } + puts result.to_json + elsif silent + puts "Failed" + else + puts e.message + end + + exit(1) + rescue StandardError => e + if json + result = { + success: false, + error: "Unexpected error: #{e.class}: #{e.message}", + filename: @file, + } + puts result.to_json + elsif silent + puts "Failed" + else + puts "Unexpected error: #{e.class}: #{e.message}" + puts e.backtrace.first(5).join("\n") unless silent + end + + exit(1) + end + end + def print_version puts Herb.version exit(0) diff --git a/lib/herb/engine.rb b/lib/herb/engine.rb new file mode 100644 index 000000000..91bffe258 --- /dev/null +++ b/lib/herb/engine.rb @@ -0,0 +1,366 @@ +# frozen_string_literal: true + +require "json" +require "time" +require "pathname" + +require_relative "engine/debug_visitor" +require_relative "engine/compiler" +require_relative "engine/error_formatter" +require_relative "engine/validation_errors" +require_relative "engine/parser_error_overlay" +require_relative "engine/validation_error_overlay" +require_relative "engine/validators/security_validator" +require_relative "engine/validators/nesting_validator" +require_relative "engine/validators/accessibility_validator" + +module Herb + class Engine + attr_reader :src, :filename, :project_path, :relative_file_path, :bufvar, :debug, :content_for_head, + :validation_error_template + + ESCAPE_TABLE = { + "&" => "&", + "<" => "<", + ">" => ">", + '"' => """, + "'" => "'", + }.freeze + + class CompilationError < StandardError + end + + def initialize(input, properties = {}) + @filename = properties[:filename] ? ::Pathname.new(properties[:filename]) : nil + @project_path = ::Pathname.new(properties[:project_path] || Dir.pwd) + + if @filename + absolute_filename = @filename.absolute? ? @filename : @project_path + @filename + @relative_file_path = absolute_filename.relative_path_from(@project_path).to_s + else + @relative_file_path = "unknown" + end + + @bufvar = properties[:bufvar] || properties[:outvar] || "_buf" + @escape = properties.fetch(:escape) { properties.fetch(:escape_html, false) } + @escapefunc = properties[:escapefunc] + @src = properties[:src] || String.new + @chain_appends = properties[:chain_appends] + @buffer_on_stack = false + @debug = properties.fetch(:debug, false) + @content_for_head = properties[:content_for_head] + @validation_error_template = nil + @validation_mode = properties.fetch(:validation_mode, :raise) + + unless [:raise, :overlay, :none].include?(@validation_mode) + raise ArgumentError, + "validation_mode must be one of :raise, :overlay, or :none, got #{@validation_mode.inspect}" + end + + @escapefunc ||= if @escape + "__herb.h" + else + "::Herb::Engine.h" + end + + @freeze = properties[:freeze] + @freeze_template_literals = properties.fetch(:freeze_template_literals, true) + @text_end = @freeze_template_literals ? "'.freeze" : "'" + + bufval = properties[:bufval] || "::String.new" + preamble = properties[:preamble] || "#{@bufvar} = #{bufval};" + postamble = properties[:postamble] || "#{@bufvar}.to_s\n" + + @src << "# frozen_string_literal: true\n" if @freeze + + if properties[:ensure] + @src << "begin; __original_outvar = #{@bufvar}" + @src << if /\A@[^@]/ =~ @bufvar + "; " + else + " if defined?(#{@bufvar}); " + end + end + + @src << "__herb = ::Herb::Engine; " if @escape && @escapefunc == "__herb.h" + + @src << preamble + @src << "\n" unless preamble.end_with?("\n") + + parse_result = ::Herb.parse(input) + ast = parse_result.value + parser_errors = parse_result.errors + + if parser_errors.any? + case @validation_mode + when :raise + handle_parser_errors(parser_errors, input, ast) + return + when :overlay + add_parser_error_overlay(parser_errors, input) + when :none + # Skip both errors and compilation, but still need minimal Ruby code + end + else + validation_errors = run_validation(ast) unless @validation_mode == :none + all_errors = parser_errors + (validation_errors || []) + + handle_validation_errors(all_errors, input) if @validation_mode == :raise && all_errors.any? + + add_validation_overlay(validation_errors, input) if @validation_mode == :overlay && validation_errors&.any? + + if @debug + debug_visitor = DebugVisitor.new(self) + ast.accept(debug_visitor) + end + + compiler = Compiler.new(self, properties) + ast.accept(compiler) + + compiler.generate_output + end + + if @validation_error_template + escaped_html = @validation_error_template.gsub("'", "\\\\'") + @src << " #{@bufvar} << ('#{escaped_html}'.html_safe).to_s;" + end + + @src << "\n" unless @src.end_with?("\n") + send(:add_postamble, postamble) + + @src << "; ensure\n #{@bufvar} = __original_outvar\nend\n" if properties[:ensure] + + @src.freeze + freeze + end + + def self.h(value) + value.to_s.gsub(/[&<>"']/, ESCAPE_TABLE) + end + + def self.attr(value) + value.to_s + .gsub("&", "&") + .gsub('"', """) + .gsub("'", "'") + .gsub("<", "<") + .gsub(">", ">") + .gsub("\n", " ") + .gsub("\r", " ") + .gsub("\t", " ") + end + + def self.js(value) + value.to_s.gsub(/[\\'"<>&\n\r\t\f\b]/) do |char| + case char + when "\n" then "\\n" + when "\r" then "\\r" + when "\t" then "\\t" + when "\f" then "\\f" + when "\b" then "\\b" + else + "\\x#{char.ord.to_s(16).rjust(2, "0")}" + end + end + end + + def self.css(value) + value.to_s.gsub(/[^\w-]/) do |char| + "\\#{char.ord.to_s(16).rjust(6, "0")}" + end + end + + protected + + def add_text(text) + return if text.empty? + + text = text.gsub(/['\\]/, '\\\\\&') + + with_buffer { @src << " << '" << text << @text_end } + end + + def add_code(code) + terminate_expression + + @src << " " << code + @src << ";" unless code[-1] == "\n" + @buffer_on_stack = false + end + + def add_expression(indicator, code) + if (indicator == "=") ^ @escape + add_expression_result(code) + else + add_expression_result_escaped(code) + end + end + + def add_expression_result(code) + with_buffer { @src << " << (" << code << ").to_s" } + end + + def add_expression_result_escaped(code) + with_buffer { @src << " << " << @escapefunc << "((" << code << "))" } + end + + def add_expression_block(indicator, code) + if (indicator == "=") ^ @escape + add_expression_block_result(code) + else + add_expression_block_result_escaped(code) + end + end + + def add_expression_block_result(code) + with_buffer { @src << " << " << code } + end + + def add_expression_block_result_escaped(code) + with_buffer { @src << " << " << @escapefunc << "(" << code << ")" } + end + + def add_postamble(postamble) + terminate_expression + @src << postamble + end + + def with_buffer(&_block) + if @chain_appends + @src << "; " << @bufvar unless @buffer_on_stack + yield + @buffer_on_stack = true + else + @src << " " << @bufvar + yield + @src << ";" + end + end + + def terminate_expression + @src << "; " if @chain_appends && @buffer_on_stack + end + + private + + def run_validation(ast) + validators = [ + Validators::SecurityValidator.new, + Validators::NestingValidator.new, + Validators::AccessibilityValidator.new + ] + + errors = [] #: Array[untyped] + + validators.each do |validator| + ast.accept(validator) + errors.concat(validator.errors) + end + + errors + end + + def handle_parser_errors(parser_errors, input, _ast) + case @validation_mode + when :raise + formatter = ErrorFormatter.new(input, parser_errors, filename: @filename) + message = formatter.format_all + + raise CompilationError, "\n#{message}" + when :overlay + add_parser_error_overlay(parser_errors, input) + @src << "\n" unless @src.end_with?("\n") + send(:add_postamble, "#{@bufvar}.to_s\n") + when :none + @src << "\n" unless @src.end_with?("\n") + send(:add_postamble, "#{@bufvar}.to_s\n") + end + end + + def handle_validation_errors(errors, input) + return unless errors.any? + + security_error = errors.find { |error| + error.is_a?(Hash) && error[:source] == "SecurityValidator" + } + + if security_error + line = security_error[:location]&.start&.line + column = security_error[:location]&.start&.column + suggestion = security_error[:suggestion] + + raise SecurityError.new( + security_error[:message], + line: line, + column: column, + filename: @filename, + suggestion: suggestion + ) + end + + formatter = ErrorFormatter.new(input, errors, filename: @filename) + message = formatter.format_all + raise CompilationError, "\n#{message}" + end + + def add_validation_overlay(errors, input = nil) + return unless errors.any? + + templates = errors.map { |error| + location = error[:location] + line = location&.start&.line || 0 + column = location&.start&.column || 0 + + source = input || @src + overlay_generator = ValidationErrorOverlay.new(source, error, filename: @relative_file_path) + html_fragment = overlay_generator.generate_fragment + + escaped_message = escape_attr(error[:message]) + escaped_suggestion = error[:suggestion] ? escape_attr(error[:suggestion]) : "" + + <<~TEMPLATE + + TEMPLATE + }.join + + @validation_error_template = templates + end + + def escape_attr(text) + text.to_s + .gsub("&", "&") + .gsub('"', """) + .gsub("'", "'") + .gsub("<", "<") + .gsub(">", ">") + .gsub("\n", " ") + .gsub("\r", " ") + .gsub("\t", " ") + end + + def add_parser_error_overlay(parser_errors, input) + return unless parser_errors.any? + + overlay_generator = ParserErrorOverlay.new( + input, + parser_errors, + filename: @relative_file_path + ) + + error_html = overlay_generator.generate_html + escaped_html = error_html.gsub("'", "\\'") + @validation_error_template = "" + end + end +end diff --git a/lib/herb/engine/compiler.rb b/lib/herb/engine/compiler.rb new file mode 100644 index 000000000..3e9870265 --- /dev/null +++ b/lib/herb/engine/compiler.rb @@ -0,0 +1,399 @@ +# frozen_string_literal: false + +module Herb + class Engine + class Compiler < ::Herb::Visitor + attr_reader :tokens + + def initialize(engine, options = {}) + super() + + @engine = engine + @escape = options.fetch(:escape) { options.fetch(:escape_html, false) } + @tokens = [] #: Array[untyped] + @element_stack = [] #: Array[String] + @context_stack = [:html_content] + @trim_next_whitespace = false + end + + def generate_output + optimized_tokens = optimize_tokens(@tokens) + + optimized_tokens.each do |type, value, context| + case type + when :text + @engine.send(:add_text, value) + when :code + @engine.send(:add_code, value) + when :expr + if [:attribute_value, :script_content, :style_content].include?(context) + add_context_aware_expression(value, context) + else + indicator = @escape ? "==" : "=" + @engine.send(:add_expression, indicator, value) + end + when :expr_escaped + if [:attribute_value, :script_content, :style_content].include?(context) + add_context_aware_expression(value, context) + else + indicator = @escape ? "=" : "==" + @engine.send(:add_expression, indicator, value) + end + when :expr_block + indicator = @escape ? "==" : "=" + @engine.send(:add_expression_block, indicator, value) + when :expr_block_escaped + indicator = @escape ? "=" : "==" + @engine.send(:add_expression_block, indicator, value) + end + end + end + + def visit_document_node(node) + visit_all(node.children) + end + + def visit_html_element_node(node) + tag_name = node.tag_name&.value&.downcase + + @element_stack.push(tag_name) if tag_name + + if tag_name == "script" + push_context(:script_content) + elsif tag_name == "style" + push_context(:style_content) + end + + visit(node.open_tag) + visit_all(node.body) + visit(node.close_tag) + + pop_context if %w[script style].include?(tag_name) + + @element_stack.pop if tag_name + end + + def visit_html_open_tag_node(node) + add_text(node.tag_opening&.value || "<") + add_text(node.tag_name.value) if node.tag_name + + visit_all(node.children) + + add_text(node.tag_closing&.value || ">") + end + + def visit_html_attribute_node(node) + add_text(" ") + + visit(node.name) + + return unless node.value + + add_text(node.equals.value) + visit(node.value) + end + + def visit_html_attribute_name_node(node) + visit_all(node.children) + end + + def visit_html_attribute_value_node(node) + push_context(:attribute_value) + + add_text(node.open_quote&.value) if node.quoted + + visit_all(node.children) + + add_text(node.close_quote&.value) if node.quoted + + pop_context + end + + def visit_html_close_tag_node(node) + tag_name = node.tag_name&.value&.downcase + + if @engine.content_for_head && tag_name == "head" + escaped_html = @engine.content_for_head.gsub("'", "\\\\'") + @tokens << [:expr, "'#{escaped_html}'.html_safe", current_context] + end + + add_text(node.tag_opening&.value) + add_text(node.tag_name&.value) + add_text(node.tag_closing&.value) + end + + def visit_html_text_node(node) + add_text(node.content) + end + + def visit_literal_node(node) + add_text(node.content) + end + + def visit_whitespace_node(node) + add_text(node.value.value) if node.value + end + + def visit_html_comment_node(node) + add_text(node.comment_start.value) + visit_all(node.children) + add_text(node.comment_end.value) + end + + def visit_html_doctype_node(node) + add_text(node.tag_opening.value) + visit_all(node.children) + add_text(node.tag_closing.value) + end + + def visit_xml_declaration_node(node) + add_text(node.tag_opening.value) + visit_all(node.children) + add_text(node.tag_closing.value) + end + + def visit_cdata_node(node) + add_text(node.cdata_opening.value) + visit_all(node.children) + add_text(node.cdata_closing.value) + end + + def visit_erb_content_node(node) + process_erb_tag(node) + end + + def visit_erb_control_node(node, &_block) + add_code(node.content.value.strip) + + yield if block_given? + end + + def visit_erb_if_node(node) + visit_erb_control_node(node) do + visit_all(node.statements) + visit(node.subsequent) + visit(node.end_node) + end + end + + def visit_erb_else_node(node) + visit_erb_control_node(node) do + visit_all(node.statements) + end + end + + def visit_erb_unless_node(node) + visit_erb_control_node(node) do + visit_all(node.statements) + visit(node.else_clause) + visit(node.end_node) + end + end + + def visit_erb_case_node(node) + visit_erb_control_with_parts(node, :conditions, :else_clause, :end_node) + end + + def visit_erb_when_node(node) + visit_erb_control_with_parts(node, :statements) + end + + def visit_erb_for_node(node) + visit_erb_control_with_parts(node, :statements, :end_node) + end + + def visit_erb_while_node(node) + visit_erb_control_with_parts(node, :statements, :end_node) + end + + def visit_erb_until_node(node) + visit_erb_control_with_parts(node, :statements, :end_node) + end + + def visit_erb_begin_node(node) + visit_erb_control_with_parts(node, :statements, :rescue_clause, :else_clause, :ensure_clause, :end_node) + end + + def visit_erb_rescue_node(node) + visit_erb_control_with_parts(node, :statements, :subsequent) + end + + def visit_erb_ensure_node(node) + visit_erb_control_with_parts(node, :statements) + end + + def visit_erb_end_node(node) + visit_erb_control_node(node) + end + + def visit_erb_case_match_node(node) + visit_erb_control_with_parts(node, :children, :conditions, :else_clause, :end_node) + end + + def visit_erb_in_node(node) + visit_erb_control_with_parts(node, :statements) + end + + def visit_erb_yield_node(node) + process_erb_tag(node, skip_comment_check: true) + end + + def visit_erb_block_node(node) + opening = node.tag_opening.value + + if opening.include?("=") + should_escape = should_escape_output?(opening) + code = node.content.value.strip + + @tokens << if should_escape + [:expr_block_escaped, code, current_context] + else + [:expr_block, code, current_context] + end + + visit_all(node.body) + visit(node.end_node) + else + visit_erb_control_node(node) do + visit_all(node.body) + visit(node.end_node) + end + end + end + + def visit_erb_control_with_parts(node, *parts) + visit_erb_control_node(node) do + parts.each do |part| + value = node.send(part) + case value + when Array + visit_all(value) + when nil + # Skip nil values + else + visit(value) + end + end + end + end + + private + + def current_context + @context_stack.last + end + + def push_context(context) + @context_stack.push(context) + end + + def pop_context + @context_stack.pop + end + + def add_context_aware_expression(code, context) + case context + when :attribute_value + @engine.send(:with_buffer) { @engine.instance_variable_get(:@src) << " << ::Herb::Engine.attr((" << code << "))" } + when :script_content + @engine.send(:with_buffer) { @engine.instance_variable_get(:@src) << " << ::Herb::Engine.js((" << code << "))" } + when :style_content + @engine.send(:with_buffer) { @engine.instance_variable_get(:@src) << " << ::Herb::Engine.css((" << code << "))" } + else + @engine.send(:add_expression_result_escaped, code) + end + end + + def process_erb_tag(node, skip_comment_check: false) + opening = node.tag_opening.value + + return if !skip_comment_check && erb_comment?(opening) + + code = node.content.value.strip + + if erb_output?(opening) + process_erb_output(opening, code) + else + add_code(code) + end + + handle_whitespace_trimming(node) + end + + def add_text(text) + return if text.empty? + + if @trim_next_whitespace + text = text.lstrip + @trim_next_whitespace = false + end + + return if text.empty? + + @tokens << [:text, text, current_context] + end + + def add_code(code) + @tokens << [:code, code, current_context] + end + + def add_expression(code) + @tokens << [:expr, code, current_context] + end + + def add_expression_escaped(code) + @tokens << [:expr_escaped, code, current_context] + end + + def optimize_tokens(tokens) + return tokens if tokens.empty? + + optimized = [] #: Array[untyped] + current_text = "" + current_context = nil + + tokens.each do |type, value, context| + if type == :text + current_text += value + current_context ||= context + else + unless current_text.empty? + optimized << [:text, current_text, current_context] + + current_text = "" + current_context = nil + end + + optimized << [type, value, context] + end + end + + optimized << [:text, current_text, current_context] unless current_text.empty? + + optimized + end + + def process_erb_output(opening, code) + should_escape = should_escape_output?(opening) + add_expression_with_escaping(code, should_escape) + end + + def should_escape_output?(opening) + is_double_equals = opening == "<%==" + is_double_equals ? !@escape : @escape + end + + def add_expression_with_escaping(code, should_escape) + if should_escape + add_expression_escaped(code) + else + add_expression(code) + end + end + + def handle_whitespace_trimming(node) + @trim_next_whitespace = true if node.tag_closing&.value == "-%>" + end + end + end +end diff --git a/lib/herb/engine/debug_visitor.rb b/lib/herb/engine/debug_visitor.rb new file mode 100644 index 000000000..05753d96a --- /dev/null +++ b/lib/herb/engine/debug_visitor.rb @@ -0,0 +1,321 @@ +# frozen_string_literal: true + +module Herb + class Engine + class DebugVisitor < Herb::Visitor + def initialize(engine) + super() + + @engine = engine + @top_level_elements = [] #: Array[Herb::AST::HTMLElementNode] + @element_stack = [] #: Array[String] + @debug_attributes_applied = false + @in_attribute = false + @in_html_comment = false + @in_html_doctype = false + @erb_nodes_to_wrap = [] #: Array[Herb::AST::ERBContentNode] + end + + def debug_enabled? + @engine.debug + end + + def visit_document_node(node) + return unless debug_enabled? + + find_top_level_elements(node) + + super + + wrap_all_erb_nodes(node) + end + + def visit_html_element_node(node) + return super unless debug_enabled? + + tag_name = node.tag_name&.value&.downcase + @element_stack.push(tag_name) if tag_name + + add_debug_attributes_to_element(node.open_tag) if should_add_debug_attributes_to_element?(node.open_tag) + + super + + @element_stack.pop if tag_name + end + + def visit_html_attribute_node(node) + @in_attribute = true + super + @in_attribute = false + end + + def visit_html_comment_node(node) + @in_html_comment = true + super + @in_html_comment = false + end + + def visit_html_doctype_node(node) + @in_html_doctype = true + super + @in_html_doctype = false + end + + def visit_erb_content_node(node) + if debug_enabled? && !@in_attribute && !@in_html_comment && !@in_html_doctype && !in_excluded_context? && erb_output?(node.tag_opening.value) + code = node.content.value.strip + + @erb_nodes_to_wrap << node unless complex_rails_helper?(code) + end + + super + end + + def visit_erb_yield_node(_node) + nil + end + + private + + def wrap_all_erb_nodes(node) + replace_erb_nodes_recursive(node) + end + + # Creates a dummy location for AST nodes that don't need real location info + #: () -> Herb::Location + def dummy_location + @dummy_location ||= Herb::Location.from(0, 0, 0, 0) + end + + # Creates a dummy range for tokens that don't need real range info + #: () -> Herb::Range + def dummy_range + @dummy_range ||= Herb::Range.from(0, 0) + end + + def replace_erb_nodes_recursive(node) + array_properties = [:children, :body, :statements] + + array_properties.each do |prop| + next unless node.respond_to?(prop) && node.send(prop).is_a?(Array) + + array = node.send(prop) + + array.each_with_index do |child, index| + if @erb_nodes_to_wrap.include?(child) + debug_span = create_debug_span_for_erb(child) + array[index] = debug_span + else + replace_erb_nodes_recursive(child) + end + end + end + + node_properties = [:subsequent, :else_clause, :end_node, :rescue_clause, :ensure_clause] + + node_properties.each do |prop| + if node.respond_to?(prop) && node.send(prop) + child_node = node.send(prop) + replace_erb_nodes_recursive(child_node) + end + end + end + + def find_top_level_elements(document_node) + @top_level_elements = [] #: Array[Herb::AST::HTMLElementNode] + + document_node.children.each do |child| + @top_level_elements << child if child.is_a?(Herb::AST::HTMLElementNode) + end + end + + def should_add_debug_attributes_to_element?(open_tag_node) + return false if @debug_attributes_applied + + parent_element = find_parent_element_for_open_tag(open_tag_node) + return false unless parent_element + + return @top_level_elements.first == parent_element if @top_level_elements.length >= 1 + + false + end + + def find_parent_element_for_open_tag(open_tag_node) + @top_level_elements.find { |element| element.open_tag == open_tag_node } + end + + def add_debug_attributes_to_element(open_tag_node) + return if @debug_attributes_applied + + view_type = determine_view_type + + debug_attributes = [ + create_debug_attribute("data-herb-debug-outline-type", view_type), + create_debug_attribute("data-herb-debug-file-name", @engine.filename&.basename&.to_s || "unknown"), + create_debug_attribute("data-herb-debug-file-relative-path", @engine.relative_file_path || ""), + create_debug_attribute("data-herb-debug-file-full-path", @engine.filename&.to_s || "unknown") + ] + + if @top_level_elements.length > 1 + debug_attributes << create_debug_attribute("data-herb-debug-attach-to-parent", "true") + end + + debug_attributes.each do |attr| + open_tag_node.children << attr + end + + @debug_attributes_applied = true + end + + def create_debug_attribute(name, value) + name_literal = Herb::AST::LiteralNode.new("LiteralNode", dummy_location, [], name.dup) + name_node = Herb::AST::HTMLAttributeNameNode.new("HTMLAttributeNameNode", dummy_location, [], [name_literal]) + + value_literal = Herb::AST::LiteralNode.new("LiteralNode", dummy_location, [], value.dup) + value_node = Herb::AST::HTMLAttributeValueNode.new("HTMLAttributeValueNode", dummy_location, [], create_token(:quote, '"'), + [value_literal], create_token(:quote, '"'), true) + + equals_token = create_token(:equals, "=") + + Herb::AST::HTMLAttributeNode.new("HTMLAttributeNode", dummy_location, [], name_node, equals_token, value_node) + end + + def create_token(type, value) + Herb::Token.new(value.dup, dummy_range, dummy_location, type.to_s) + end + + def create_debug_span_for_erb(erb_node) + opening = erb_node.tag_opening.value + code = erb_node.content.value.strip + erb_code = "#{opening} #{code} %>" + + return erb_node if complex_rails_helper?(code) + + line = erb_node.location&.start&.line + column = erb_node.location&.start&.column + + escaped_erb = erb_code.gsub("&", "&").gsub("<", "<").gsub(">", ">").gsub('"', """).gsub("'", + "'") + + outline_type = if @top_level_elements.empty? + "erb-output #{determine_view_type}" + else + "erb-output" + end + + debug_attributes = [ + create_debug_attribute("data-herb-debug-outline-type", outline_type), + create_debug_attribute("data-herb-debug-erb", escaped_erb), + create_debug_attribute("data-herb-debug-file-name", @engine.filename&.basename.to_s), + create_debug_attribute("data-herb-debug-file-relative-path", @engine.relative_file_path || ""), + create_debug_attribute("data-herb-debug-file-full-path", @engine.filename.to_s), + create_debug_attribute("data-herb-debug-inserted", "true") + ] + + debug_attributes << create_debug_attribute("data-herb-debug-line", line.to_s) if line + + debug_attributes << create_debug_attribute("data-herb-debug-column", (column + 1).to_s) if column + + debug_attributes << create_debug_attribute("style", "display: contents;") + + tag_name_token = create_token(:tag_name, "span") + + open_tag = Herb::AST::HTMLOpenTagNode.new( + "HTMLOpenTagNode", + dummy_location, + [], + create_token(:tag_opening, "<"), + tag_name_token, + create_token(:tag_closing, ">"), + debug_attributes, + false + ) + + close_tag = Herb::AST::HTMLCloseTagNode.new( + "HTMLCloseTagNode", + dummy_location, + [], + create_token(:tag_opening, "") + ) + + Herb::AST::HTMLElementNode.new("HTMLElementNode", dummy_location, [], open_tag, tag_name_token, [erb_node], close_tag, + false) + end + + def determine_view_type + if component? + "component" + elsif partial? + "partial" + else + "view" + end + end + + def partial? + return false unless @engine.filename + + basename = @engine.filename.basename.to_s + basename.start_with?("_") + end + + def component? + return false unless @engine.filename + + path = @engine.filename.to_s + path.include?("/components/") + end + + def in_head_context? + @element_stack.include?("head") + end + + def in_script_or_style_context? + ["script", "style"].include?(@element_stack.last) + end + + def in_excluded_context? + excluded_tags = ["script", "style", "head", "textarea", "pre"] + excluded_tags.any? { |tag| @element_stack.include?(tag) } + end + + def erb_output?(opening) + opening.include?("=") && !opening.include?("#") + end + + # TODO: Rewrite using Prism Nodes once available + def complex_rails_helper?(code) + cleaned_code = code.strip.gsub(/\s+/, " ") + + return true if cleaned_code.match?(/\bturbo_frame_tag\s*[(\s]/) + + return true if cleaned_code.match?(/\blink_to\s.*\s+do\s*$/) || + cleaned_code.match?(/\blink_to\s.*\{\s*$/) || + cleaned_code.match?(/\blink_to\s.*\s+do\s*\|/) || + cleaned_code.match?(/\blink_to\s.*\{\s*\|/) + + return true if cleaned_code.match?(/\brender[\s(]/) + + return true if cleaned_code.match?(/\bform_with\s.*\s+do\s*[|$]/) || + cleaned_code.match?(/\bform_with\s.*\{\s*[|$]/) + + return true if cleaned_code.match?(/\bcontent_for\s.*\s+do\s*$/) || + cleaned_code.match?(/\bcontent_for\s.*\{\s*$/) + + return true if cleaned_code.match?(/\bcontent_tag\s.*\s+do\s*$/) || + cleaned_code.match?(/\bcontent_tag\s.*\{\s*$/) + + return true if cleaned_code.match?(/\bcontent_tag\(.*\s+do\s*$/) || + cleaned_code.match?(/\bcontent_tag\(.*\{\s*$/) + + return true if cleaned_code.match?(/\btag\.\w+\s.*do\s*$/) || + cleaned_code.match?(/\btag\.\w+\s.*\{\s*$/) + + false + end + end + end +end diff --git a/lib/herb/engine/error_formatter.rb b/lib/herb/engine/error_formatter.rb new file mode 100644 index 000000000..690efbfa2 --- /dev/null +++ b/lib/herb/engine/error_formatter.rb @@ -0,0 +1,420 @@ +# frozen_string_literal: true + +require "English" +require "tempfile" + +module Herb + class Engine + class ErrorFormatter + CONTEXT_LINES = 3 + + def initialize(source, errors, options = {}) + @source = source + @errors = errors + @filename = options[:filename] || "[source]" + @lines = source.lines + @use_highlighter = options.fetch(:use_highlighter, true) + @highlighter_path = options[:highlighter_path] || find_highlighter_path + end + + def format_all + return "No errors found" if @errors.empty? + + if @use_highlighter && @highlighter_path && can_use_highlighter? + format_all_with_highlighter + else + format_all_without_highlighter + end + end + + def format_all_with_highlighter + output = String.new + output << "HTML+ERB Compilation Errors:\n" + output << ("=" * 60) << "\n\n" + + require "tempfile" + temp_file = Tempfile.new(["herb_error", ".html.erb"]) + temp_file.write(@source) + temp_file.close + + begin + highlighted_output = run_highlighter_with_diagnostics(temp_file.path, CONTEXT_LINES) + + if highlighted_output + output << highlighted_output + else + errors_by_line = @errors.group_by do |error| + location = error.is_a?(Hash) ? error[:location] : error.location + location&.start&.line + end.compact + + errors_by_line.each_with_index do |(line_num, line_errors), group_index| + output << "Error Group ##{group_index + 1} (Line #{line_num}):\n" + output << ("-" * 40) << "\n" + + line_errors.each_with_index do |error, index| + output << format_error_header(error, index + 1) + end + + output << "\nSource Context:\n" + + highlighted_basic = run_highlighter(temp_file.path, line_num, CONTEXT_LINES) + + output << (highlighted_basic || format_source_context_basic(line_errors.first)) + + output << "\n" + output << format_suggestions(line_errors) + output << "\n" unless group_index == errors_by_line.length - 1 + end + end + + output << "\n" << ("=" * 60) << "\n" + output << "Total errors: #{@errors.length}\n" + output << "Compilation failed. Please fix the errors above.\n" + ensure + temp_file.unlink + end + + output + end + + def format_all_without_highlighter + output = String.new + output << "HTML+ERB Compilation Errors:\n" + output << ("=" * 60) << "\n\n" + + @errors.each_with_index do |error, index| + output << format_error(error, index + 1) + output << "\n" unless index == @errors.length - 1 + end + + output << "\n" << ("=" * 60) << "\n" + output << "Total errors: #{@errors.length}\n" + output << "Compilation failed. Please fix the errors above.\n" + + output + end + + def format_error(error, number) + output = String.new + + output << "Error ##{number}: #{error.class.name.split("::").last.gsub(/Error$/, "")}\n" + output << ("-" * 40) << "\n" + + if error.location + output << " File: #{@filename}\n" + output << " Location: Line #{error.location.start.line}, Column #{error.location.start.column}\n" + end + + output << " Message: #{error.message}\n\n" + output << format_source_context(error) if error.location + output << format_error_details(error) + + output + end + + private + + def format_source_context(error) + output = String.new + location = error.is_a?(Hash) ? error[:location] : error.location + line_num = location.start.line + col_num = location.start.column + + start_line = [line_num - CONTEXT_LINES, 1].max + end_line = [line_num + CONTEXT_LINES, @lines.length].min + + output << " Source:\n" + + (start_line..end_line).each do |i| + line = @lines[i - 1] + line_str = line.chomp + line_prefix = format(" %4d | ", i) + + if i == line_num + output << "\e[31m" + output << line_prefix + output << line_str + output << "\e[0m\n" + + if col_num.positive? + pointer = "#{" " * (line_prefix.length + col_num - 1)}^" + + if location.end.column && location.end.column > col_num + underline_length = location.end.column - col_num + pointer << ("~" * [underline_length - 1, 0].max) + end + + output << "\e[31m#{pointer}\e[0m" + + output << " #{format_inline_hint(error)}" if inline_hint?(error) + output << "\n" + end + else + output << "\e[90m" + output << line_prefix + output << line_str + output << "\e[0m\n" + end + end + + output << "\n" + output + end + + def format_error_details(error) + output = String.new + + case error + when Herb::Errors::MissingClosingTagError + if error.opening_tag + output << " Opening tag: <#{error.opening_tag.value}> at line #{error.opening_tag.location.start.line}\n" + output << " Expected: \n" + output << " Suggestion: Add the closing tag or use a self-closing tag\n" + end + + when Herb::Errors::MissingOpeningTagError + if error.closing_tag + output << " Closing tag: at line #{error.closing_tag.location.start.line}\n" + output << " Suggestion: Add the corresponding opening tag or remove this closing tag\n" + end + + when Herb::Errors::TagNamesMismatchError + if error.opening_tag && error.closing_tag + output << " Opening tag: <#{error.opening_tag.value}> at line #{error.opening_tag.location.start.line}\n" + output << " Closing tag: at line #{error.closing_tag.location.start.line}\n" + output << " Suggestion: Change the closing tag to \n" + end + + when Herb::Errors::VoidElementClosingTagError + if error.tag_name + output << " Void element: <#{error.tag_name.value}>\n" + output << " Note: Void elements like
, , cannot have closing tags\n" + output << " Suggestion: Remove the closing tag or use <#{error.tag_name.value} />\n" + end + + when Herb::Errors::UnclosedElementError + if error.opening_tag + output << " Opening tag: <#{error.opening_tag.value}> at line #{error.opening_tag.location.start.line}\n" + output << " Note: This element was never closed before the end of the document\n" + output << " Suggestion: Add before the end of the template\n" + end + + when Herb::Errors::RubyParseError + output << " Ruby error: #{error.diagnostic_id}\n" + output << " Level: #{error.level}\n" + output << " Details: #{error.error_message}\n" + output << " Suggestion: Check your Ruby syntax inside the ERB tag\n" + + when Herb::Errors::QuotesMismatchError + if error.opening_quote && error.closing_quote + output << " Opening quote: #{error.opening_quote.value}\n" + output << " Closing quote: #{error.closing_quote.value}\n" + output << " Suggestion: Use matching quotes for attribute values\n" + end + end + + output + end + + def inline_hint?(error) + case error + when Herb::Errors::MissingClosingTagError, + Herb::Errors::TagNamesMismatchError, + Herb::Errors::UnclosedElementError + true + else + false + end + end + + def format_inline_hint(error) + case error + when Herb::Errors::MissingClosingTagError + "← Missing closing tag" + when Herb::Errors::TagNamesMismatchError + "← Tag mismatch" + when Herb::Errors::UnclosedElementError + "← Unclosed element" + else + "" + end + end + + def find_highlighter_path + possible_paths = [ + File.expand_path("../../../javascript/packages/highlighter/bin/herb-highlight", __dir__ || "."), + "herb-highlight" # In PATH + ] + + possible_paths.find { |path| File.executable?(path) || system("which #{path} > /dev/null 2>&1") } + end + + def can_use_highlighter? + return false unless @highlighter_path + return false unless File.exist?(@highlighter_path) || system("which #{@highlighter_path} > /dev/null 2>&1") + + system("node --version > /dev/null 2>&1") + end + + def run_highlighter(file_path, line_num, context_lines) + return nil unless @highlighter_path && can_use_highlighter? + + cmd = "#{@highlighter_path} --focus #{line_num} --context-lines #{context_lines} \"#{file_path}\"" + + begin + output = `#{cmd} 2>/dev/null` + status = $CHILD_STATUS + return output.gsub(file_path, @filename) if status&.success? && !output.strip.empty? + rescue StandardError + # Silently fall back to basic formatting if highlighter fails + end + + nil + end + + def run_highlighter_with_diagnostics(file_path, context_lines = 2) + return nil unless @highlighter_path && can_use_highlighter? + + diagnostics = @errors.map { |error| herb_error_to_diagnostic(error) } + + require "tempfile" + require "json" + + diagnostics_file = Tempfile.new(["herb_diagnostics", ".json"]) + diagnostics_file.write(JSON.pretty_generate(diagnostics)) + diagnostics_file.close + + begin + cmd = "#{@highlighter_path} --diagnostics \"#{diagnostics_file.path}\" --split-diagnostics --context-lines #{context_lines} \"#{file_path}\"" + + output = `#{cmd} 2>/dev/null` + status = $CHILD_STATUS + + return output.gsub(file_path, @filename) if status&.success? && !output.strip.empty? + rescue StandardError + # Silently fall back to basic formatting if highlighter fails + ensure + diagnostics_file.unlink + end + + nil + end + + def herb_error_to_diagnostic(error) + if error.is_a?(Hash) + location = error[:location] + { + message: error[:message], + location: { + start: { + line: location&.start&.line || 1, + column: location&.start&.column || 1, + }, + end: { + line: location&.end&.line || location&.start&.line || 1, + column: location&.end&.column || location&.start&.column || 1, + }, + }, + severity: error[:severity] || "error", + code: error[:code] || "UnknownError", + source: error[:source] || "herb-validator", + } + else + severity = case error + when Herb::Errors::RubyParseError + error.level == "error" ? "error" : "warning" + else + "error" + end + + { + message: error.message, + location: { + start: { + line: error.location&.start&.line || 1, + column: error.location&.start&.column || 1, + }, + end: { + line: error.location&.end&.line || error.location&.start&.line || 1, + column: error.location&.end&.column || error.location&.start&.column || 1, + }, + }, + severity: severity, + code: error.class.name.split("::").last.gsub(/Error$/, ""), + source: "herb-compiler", + } + end + end + + def format_error_header(error, number) + output = String.new + output << if error.is_a?(Hash) + " #{number}. #{error[:code] || "UnknownError"}: #{error[:message]}\n" + else + " #{number}. #{error.class.name.split("::").last.gsub(/Error$/, "")}: #{error.message}\n" + end + + location = error.is_a?(Hash) ? error[:location] : error.location + output << " Location: Line #{location.start.line}, Column #{location.start.column}\n" if location + + output + end + + def format_suggestions(errors) + output = String.new + output << "Suggestions:\n" + + errors.each do |error| + suggestion = get_error_suggestion(error) + output << " • #{suggestion}\n" if suggestion + end + + output + end + + def format_source_context_basic(error) + format_source_context(error) + end + + def get_error_suggestion(error) + case error + when Herb::Errors::MissingClosingTagError + if error.opening_tag + "Add to close the opening tag" + else + "Add the missing closing tag" + end + when Herb::Errors::MissingOpeningTagError + if error.closing_tag + "Add <#{error.closing_tag.value}> before the closing tag" + else + "Add the missing opening tag" + end + when Herb::Errors::TagNamesMismatchError + if error.opening_tag && error.closing_tag + "Change to " + else + "Fix the tag name mismatch" + end + when Herb::Errors::VoidElementClosingTagError + if error.tag_name + "Remove the closing tag for void element <#{error.tag_name.value}>" + else + "Remove the closing tag for this void element" + end + when Herb::Errors::UnclosedElementError + if error.opening_tag + "Add before the end of the template" + else + "Close the unclosed element" + end + when Herb::Errors::RubyParseError + "Check your Ruby syntax inside the ERB tag" + when Herb::Errors::QuotesMismatchError + "Use matching quotes for attribute values" + end + end + end + end +end diff --git a/lib/herb/engine/parser_error_overlay.rb b/lib/herb/engine/parser_error_overlay.rb new file mode 100644 index 000000000..66c55be5c --- /dev/null +++ b/lib/herb/engine/parser_error_overlay.rb @@ -0,0 +1,767 @@ +# frozen_string_literal: true + +module Herb + class Engine + class ParserErrorOverlay + CONTEXT_LINES = 3 + + ERROR_CLASS_PRIORITRY = [ + Herb::Errors::UnexpectedTokenError, + Herb::Errors::UnexpectedError, + Herb::Errors::RubyParseError, + Herb::Errors::QuotesMismatchError, + Herb::Errors::TagNamesMismatchError, + Herb::Errors::VoidElementClosingTagError, + Herb::Errors::UnclosedElementError, + Herb::Errors::MissingClosingTagError, + Herb::Errors::MissingOpeningTagError + ].freeze + + def initialize(source, errors, filename: nil) + @source = source + @errors = errors.sort_by { |error| + [ERROR_CLASS_PRIORITRY.index(error.class) || -1, error.location.start.line, error.location.start.column] + } + @filename = filename || "unknown" + @lines = source.lines + end + + def generate_html + return "" if @errors.empty? + + error_count = @errors.length + error_title = error_count == 1 ? "Template Error" : "Template Errors (#{error_count})" + + primary_error = @errors.first + error_message = primary_error.respond_to?(:message) ? primary_error.message : primary_error.to_s + + <<~HTML +
+ + +
+
+
+
+
!
+ #{escape_html(error_title)} +
+
+ #{escape_html(error_message)} +
+
+
+ +
+ #{generate_error_sections} +
+
+ + +
+ HTML + end + + private + + def generate_error_sections + sections = [] #: Array[String] + + @errors.each_with_index do |error, index| + sections << generate_code_section(error, index) + end + + suggestions = @errors.map { |error| get_error_suggestion(error) }.compact + + sections << generate_suggestions_section(suggestions) if suggestions.any? + + sections.uniq.join("\n") + end + + def generate_code_section(error, index) + location = error.respond_to?(:location) && error.location ? error.location : nil + line_num = 1 + col_num = 1 + + if location.respond_to?(:start) && location.is_a?(Herb::Location) && location.start + line_num = location.start.line + col_num = location.start.column + end + + error_class = error.class.name.split("::").last.gsub(/Error$/, "") + error_message = error.respond_to?(:message) ? error.message : error.to_s + + header_text = if @errors.length == 1 + "#{@filename}:#{line_num}:#{col_num}" + else + "Error #{index + 1}: #{error_class} - #{@filename}:#{line_num}:#{col_num}" + end + + code_lines = generate_code_lines(error, line_num, col_num) + + <<~HTML +
+
+
ERB
+ #{escape_html(header_text)} +
+
+
#{escape_html(error_message)}
+
+
+ #{code_lines} +
+
+ HTML + end + + def generate_code_lines(error, line_num, col_num) + start_line = [line_num - CONTEXT_LINES, 1].max + end_line = [line_num + CONTEXT_LINES, @lines.length].min + + lines_html = [] #: Array[String] + + (start_line..end_line).each do |i| + line = @lines[i - 1] || "" + line_str = line.chomp + is_error_line = i == line_num + + line_class = is_error_line ? "herb-code-line herb-error-line" : "herb-code-line" + + lines_html << <<~HTML +
+
#{i}
+
#{syntax_highlight(line_str)}
+
+ HTML + + next unless is_error_line && col_num.positive? + + pointer_text = "^#{"~" * [line_str.length - col_num, 0].max}" + hint = get_inline_hint(error) + pointer_display = hint ? "#{pointer_text} #{hint}" : pointer_text + + lines_html << <<~HTML +
#{" " * (col_num - 1)}#{escape_html(pointer_display)}
+ HTML + end + + lines_html.join("\n") + end + + def generate_suggestions_section(suggestions) + suggestion_items = suggestions.map do |suggestion| + title, description = suggestion.split(": ", 2) + title ||= "Suggestion" + description ||= suggestion + + <<~HTML +
+
#{escape_html(title)}
+
#{escape_html(description)}
+
+ HTML + end + + section_id = "suggestions-#{rand(1000)}" + + <<~HTML +
+
+ Suggestions + +
+
+
+ #{suggestion_items.join} +
+
+
+ HTML + end + + def syntax_highlight(code) + lex_result = ::Herb.lex(code) + + return escape_html(code) if lex_result.errors.any? + + tokens = lex_result.value + highlight_with_tokens(tokens, code) + rescue StandardError + escape_html(code) + end + + def highlight_with_tokens(tokens, code) + return escape_html(code) if tokens.empty? + + highlighted = "" + last_end = 0 + + state = { + in_tag: false, + in_comment: false, + tag_name: "", + is_closing_tag: false, + expecting_attribute_name: false, + expecting_attribute_value: false, + in_quotes: false, + } + + tokens.each_with_index do |token, i| + next_token = tokens[i + 1] + prev_token = tokens[i - 1] + + start_offset = get_character_offset(code, token.location.start.line, token.location.start.column) + end_offset = get_character_offset(code, token.location.end.line, token.location.end.column) + + highlighted += escape_html(code[last_end...start_offset]) if start_offset > last_end + + token_text = code[start_offset...end_offset] + + update_highlighting_state(state, token, token_text, next_token, prev_token) + + css_class = get_token_css_class(state, token, token_text) + + highlighted += if css_class + "#{escape_html(token_text)}" + else + escape_html(token_text) + end + + last_end = end_offset + end + + highlighted += escape_html(code[last_end..]) if last_end < code.length + + highlighted + end + + def get_character_offset(code, line, column) + lines = code.lines + offset = 0 + + (1...line).each do |line_num| + offset += lines[line_num - 1]&.length || 0 + end + + offset + column + end + + def update_highlighting_state(state, token, token_text, _next_token, _prev_token) + case token.type + when "TOKEN_HTML_TAG_START" + state[:in_tag] = true + state[:is_closing_tag] = false + state[:expecting_attribute_name] = false + state[:expecting_attribute_value] = false + + when "TOKEN_HTML_TAG_START_CLOSE" + state[:in_tag] = true + state[:is_closing_tag] = true + state[:expecting_attribute_name] = false + state[:expecting_attribute_value] = false + + when "TOKEN_HTML_TAG_END", "TOKEN_HTML_TAG_SELF_CLOSE" + state[:in_tag] = false + state[:tag_name] = "" + state[:is_closing_tag] = false + state[:expecting_attribute_name] = false + state[:expecting_attribute_value] = false + + when "TOKEN_IDENTIFIER" + if state[:in_tag] && state[:tag_name].empty? + state[:tag_name] = token_text + state[:expecting_attribute_name] = !state[:is_closing_tag] + elsif state[:in_tag] && state[:expecting_attribute_name] + state[:expecting_attribute_name] = false + state[:expecting_attribute_value] = true + end + + when "TOKEN_EQUALS" + state[:expecting_attribute_value] = true if state[:in_tag] + + when "TOKEN_QUOTE" + if state[:in_tag] + state[:in_quotes] = !state[:in_quotes] + unless state[:in_quotes] + state[:expecting_attribute_name] = true + state[:expecting_attribute_value] = false + end + end + + when "TOKEN_WHITESPACE" + if state[:in_tag] && !state[:in_quotes] && !state[:tag_name].empty? + state[:expecting_attribute_name] = true + state[:expecting_attribute_value] = false + end + + when "TOKEN_HTML_COMMENT_START" + state[:in_comment] = true + + when "TOKEN_HTML_COMMENT_END" + state[:in_comment] = false + end + end + + def get_token_css_class(state, token, token_text) + if state[:in_comment] && !["TOKEN_HTML_COMMENT_START", "TOKEN_HTML_COMMENT_END", "TOKEN_ERB_START", + "TOKEN_ERB_CONTENT", "TOKEN_ERB_END"].include?(token.type) + return "comment" + end + + case token.type + when "TOKEN_ERB_START", "TOKEN_ERB_CONTENT", "TOKEN_ERB_END" + "erb" + when "TOKEN_HTML_COMMENT_START", "TOKEN_HTML_COMMENT_END" + "comment" + when "TOKEN_HTML_TAG_START", "TOKEN_HTML_TAG_END", "TOKEN_HTML_TAG_START_CLOSE", "TOKEN_HTML_TAG_SELF_CLOSE" + "tag" + when "TOKEN_IDENTIFIER" + if state[:in_tag] && token_text == state[:tag_name] + "tag" + elsif state[:in_tag] && (state[:expecting_attribute_name] || state[:expecting_attribute_value]) + state[:in_quotes] ? "value" : "attr" + end + when "TOKEN_QUOTE" + state[:in_tag] ? "value" : nil + when "TOKEN_STRING" + state[:in_tag] ? "value" : "string" + end + end + + def get_error_suggestion(error) + case error + when Herb::Errors::MissingClosingTagError + if error.respond_to?(:opening_tag) && error.opening_tag + "Add missing closing tag: Add to close the opening tag" + else + "Add missing closing tag: Add the missing closing tag" + end + when Herb::Errors::MissingOpeningTagError + if error.respond_to?(:closing_tag) && error.closing_tag + "Add missing opening tag: Add <#{error.closing_tag.value}> before the closing tag" + else + "Add missing opening tag: Add the missing opening tag" + end + when Herb::Errors::TagNamesMismatchError + if error.respond_to?(:opening_tag) && error.respond_to?(:closing_tag) && error.opening_tag && error.closing_tag + "Fix tag mismatch: Change to " + else + "Fix tag mismatch: Ensure opening and closing tags match" + end + when Herb::Errors::VoidElementClosingTagError + if error.respond_to?(:tag_name) && error.tag_name + "Remove illegal closing tag: Remove the closing tag for void element <#{error.tag_name.value}>" + else + "Remove illegal closing tag: Remove the closing tag for this void element" + end + when Herb::Errors::UnclosedElementError + if error.respond_to?(:opening_tag) && error.opening_tag + "Close unclosed element: Add before the end of the template" + else + "Close unclosed element: Close the unclosed element" + end + when Herb::Errors::RubyParseError + "Fix Ruby syntax: Check your Ruby syntax inside the ERB tag" + when Herb::Errors::QuotesMismatchError + "Fix quote mismatch: Use matching quotes for attribute values" + else + message = error.respond_to?(:message) ? error.message : error.to_s + "Fix error: #{message}" + end + end + + def get_inline_hint(error) + case error + when Herb::Errors::MissingClosingTagError + "← Missing closing tag" + when Herb::Errors::TagNamesMismatchError + "← Tag mismatch" + when Herb::Errors::UnclosedElementError + "← Unclosed element" + when Herb::Errors::VoidElementClosingTagError + "← Void element cannot be closed" + when Herb::Errors::QuotesMismatchError + "← Quote mismatch" + when Herb::Errors::RubyParseError + "← Ruby syntax error" + end + end + + def escape_html(text) + text.to_s + .gsub("&", "&") + .gsub("<", "<") + .gsub(">", ">") + .gsub('"', """) + .gsub("'", "'") + end + end + end +end diff --git a/lib/herb/engine/validation_error_overlay.rb b/lib/herb/engine/validation_error_overlay.rb new file mode 100644 index 000000000..40fbd7a15 --- /dev/null +++ b/lib/herb/engine/validation_error_overlay.rb @@ -0,0 +1,182 @@ +# frozen_string_literal: true + +module Herb + class Engine + class ValidationErrorOverlay + CONTEXT_LINES = 2 + + VALIDATOR_BADGES = { + "SecurityValidator" => { label: "Security", color: "#dc2626" }, + "NestingValidator" => { label: "Nesting", color: "#f59e0b" }, + "AccessibilityValidator" => { label: "A11y", color: "#3b82f6" }, + }.freeze + + SEVERITY_COLORS = { + "error" => "#dc2626", + "warning" => "#f59e0b", + "info" => "#3b82f6", + }.freeze + + def initialize(source, error, filename: nil) + @source = source + @error = error + @filename = filename || "unknown" + @lines = source.lines + end + + def generate_fragment + location = @error[:location] + line_num = location&.start&.line || 1 + col_num = location&.start&.column || 1 + + validator_info = VALIDATOR_BADGES[@error[:source]] || { label: @error[:source], color: "#6b7280" } + severity_color = SEVERITY_COLORS[@error[:severity].to_s] || "#6b7280" + + code_snippet = generate_code_snippet(line_num, col_num) + + <<~HTML +
+
+ + #{escape_html(validator_info[:label])} + + + #{escape_html(@filename)}:#{line_num}:#{col_num} + +
+
+ #{escape_html(@error[:message])} +
+ #{code_snippet} + #{generate_suggestion_html if @error[:suggestion]} +
+ HTML + end + + private + + def generate_code_snippet(line_num, col_num) + start_line = [line_num - CONTEXT_LINES, 1].max + end_line = [line_num + CONTEXT_LINES, @lines.length].min + + code_lines = [] #: Array[String] + (start_line..end_line).each do |line| + line_content = @lines[line - 1] || "" + is_error_line = line == line_num + + highlighted_content = syntax_highlight(line_content.chomp) + + if is_error_line + code_lines << <<~HTML +
+
#{line}
+
#{highlighted_content}
+
+ HTML + + if col_num.positive? + pointer = "#{" " * (col_num - 1)}^" + code_lines << <<~HTML +
#{escape_html(pointer)}
+ HTML + end + else + code_lines << <<~HTML +
+
#{line}
+
#{highlighted_content}
+
+ HTML + end + end + + <<~HTML +
+ #{code_lines.join} +
+ HTML + end + + def generate_suggestion_html + <<~HTML +
+ 💡 + #{escape_html(@error[:suggestion])} +
+ HTML + end + + def syntax_highlight(code) + lex_result = ::Herb.lex(code) + return escape_html(code) if lex_result.errors.any? + + tokens = lex_result.value + highlight_with_tokens(tokens, code) + rescue StandardError + escape_html(code) + end + + def highlight_with_tokens(tokens, code) + return escape_html(code) if tokens.nil? || tokens.empty? + + highlighted = "" + last_end = 0 + + tokens.each do |token| + char_offset = get_character_offset(code, token.location.start.line, token.location.start.column) + char_end = get_character_offset(code, token.location.end_point.line, token.location.end_point.column) + + highlighted += escape_html(code[last_end...char_offset]) if char_offset > last_end + + token_text = code[char_offset...char_end] + highlighted += apply_token_style(token, token_text) + last_end = char_end + end + + highlighted += escape_html(code[last_end..]) if last_end < code.length + + highlighted + end + + def get_character_offset(_content, line, column) + return column - 1 if line == 1 + + column - 1 + end + + def apply_token_style(token, text) + escaped_text = escape_html(text) + + case token.type + when "TOKEN_ERB_START", "TOKEN_ERB_END" + "#{escaped_text}" + when "TOKEN_ERB_CONTENT" + "#{escaped_text}" + when "TOKEN_HTML_TAG_START", "TOKEN_HTML_TAG_START_CLOSE", "TOKEN_HTML_TAG_END", "TOKEN_HTML_TAG_SELF_CLOSE", "TOKEN_IDENTIFIER" + "#{escaped_text}" + when "TOKEN_HTML_ATTRIBUTE_NAME" + "#{escaped_text}" + when "TOKEN_QUOTE", "TOKEN_HTML_ATTRIBUTE_VALUE" + "#{escaped_text}" + when "TOKEN_HTML_COMMENT_START", "TOKEN_HTML_COMMENT_END", "TOKEN_HTML_COMMENT_CONTENT" + "#{escaped_text}" + else + escaped_text + end + end + + def escape_html(text) + text.to_s + .gsub("&", "&") + .gsub("<", "<") + .gsub(">", ">") + .gsub('"', """) + .gsub("'", "'") + end + + def escape_attr(text) + escape_html(text).gsub("\n", " ").gsub("\r", " ") + end + end + end +end diff --git a/lib/herb/engine/validation_errors.rb b/lib/herb/engine/validation_errors.rb new file mode 100644 index 000000000..b5b8620c8 --- /dev/null +++ b/lib/herb/engine/validation_errors.rb @@ -0,0 +1,65 @@ +# frozen_string_literal: true +# typed: false + +# rbs_inline: disabled + +module Herb + class Engine + class SecurityError < StandardError + attr_reader :line, :column, :filename, :suggestion + + def initialize(message, line: nil, column: nil, filename: nil, suggestion: nil) + @line = line + @column = column + @filename = filename + @suggestion = suggestion + + super(build_error_message(message)) + end + + private + + def build_error_message(message) + parts = [] #: Array[String] + + if @filename || (@line && @column) + location_parts = [] #: Array[String] + + location_parts << @filename if @filename + location_parts << "#{@line}:#{@column}" if @line && @column + + parts << location_parts.join(":") + end + + parts << message + + parts << "Suggestion: #{@suggestion}" if @suggestion + + parts.join(" - ") + end + end + + module ValidationErrors + class ValidationError + attr_reader :type, :location, :message + + def initialize(type, location, message) + @type = type + @location = location + @message = message + end + end + + class SecurityValidationError + attr_reader :type, :location, :message, :suggestion + + def initialize(location, message, suggestion) + @type = "SecurityError" + @location = location + @message = message + @suggestion = suggestion + end + end + end + end +end diff --git a/lib/herb/engine/validator.rb b/lib/herb/engine/validator.rb new file mode 100644 index 000000000..5b6590b25 --- /dev/null +++ b/lib/herb/engine/validator.rb @@ -0,0 +1,75 @@ +# frozen_string_literal: true + +module Herb + class Engine + class Validator < Herb::Visitor + attr_reader :diagnostics + + def initialize + super + + @diagnostics = [] + end + + def validate(node) + visit(node) + end + + def error(message, location, code: nil, source: nil) + add_diagnostic(message, location, :error, code: code, source: source) + end + + def warning(message, location, code: nil, source: nil) + add_diagnostic(message, location, :warning, code: code, source: source) + end + + def info(message, location, code: nil, source: nil) + add_diagnostic(message, location, :info, code: code, source: source) + end + + def hint(message, location, code: nil, source: nil) + add_diagnostic(message, location, :hint, code: code, source: source) + end + + def errors? + @diagnostics.any? { |diagnostic| diagnostic[:severity] == :error } + end + + def warnings? + @diagnostics.any? { |diagnostic| diagnostic[:severity] == :warning } + end + + def errors + @diagnostics.select { |diagnostic| diagnostic[:severity] == :error } + end + + def warnings + @diagnostics.select { |diagnostic| diagnostic[:severity] == :warning } + end + + def clear_diagnostics + @diagnostics.clear + end + + def diagnostic_count(severity = nil) + return @diagnostics.length unless severity + + @diagnostics.count { |diagnostic| diagnostic[:severity] == severity } + end + + private + + def add_diagnostic(message, location, severity, code: nil, source: nil) + diagnostic = { + message: message, + location: location, + severity: severity, + code: code, + source: source || self.class.name, + } + + @diagnostics << diagnostic + end + end + end +end diff --git a/lib/herb/engine/validators/accessibility_validator.rb b/lib/herb/engine/validators/accessibility_validator.rb new file mode 100644 index 000000000..6982ee33a --- /dev/null +++ b/lib/herb/engine/validators/accessibility_validator.rb @@ -0,0 +1,31 @@ +# frozen_string_literal: true +# typed: true + +require_relative "../validator" + +module Herb + class Engine + module Validators + class AccessibilityValidator < Validator + def visit_html_attribute_node(node) + validate_attribute(node) + super + end + + private + + def validate_attribute(node) + # TODO: Add accessibility attribute validation + end + + def validate_id_format(node) + # TODO: Add ID format validation + end + + def add_validation_error(type, location, message) + error(message, location, code: type, source: "AccessibilityValidator") + end + end + end + end +end diff --git a/lib/herb/engine/validators/nesting_validator.rb b/lib/herb/engine/validators/nesting_validator.rb new file mode 100644 index 000000000..e087c65c5 --- /dev/null +++ b/lib/herb/engine/validators/nesting_validator.rb @@ -0,0 +1,95 @@ +# frozen_string_literal: true +# typed: false + +# rbs_inline: disabled + +require_relative "../validator" + +module Herb + class Engine + module Validators + class NestingValidator < Validator + def visit_html_element_node(node) + validate_html_nesting(node) + super + end + + private + + def validate_html_nesting(node) + tag_name = node.tag_name&.value&.downcase + return unless tag_name + + case tag_name + when "p" + validate_no_block_elements_in_paragraph(node) + when "a" + validate_no_nested_anchors(node) + when "button" + validate_no_interactive_in_button(node) + end + end + + def validate_no_block_elements_in_paragraph(node) + block_elements = %w[div section article header footer nav aside p h1 h2 h3 h4 h5 h6 ul ol dl table form] + + node.body.each do |child| + next unless child.is_a?(Herb::AST::HTMLElementNode) + + child_tag = child.tag_name&.value&.downcase + next unless child_tag && block_elements.include?(child_tag) + + add_validation_error( + "InvalidNestingError", + child.location, + "Block element <#{child_tag}> cannot be nested inside

at line #{child.location.start.line}" + ) + end + end + + def validate_no_nested_anchors(node) + find_nested_elements(node, "a") do |nested| + add_validation_error( + "NestedAnchorError", + nested.location, + "Anchor cannot be nested inside another anchor at line #{nested.location.start.line}" + ) + end + end + + def validate_no_interactive_in_button(node) + interactive_elements = %w[a button input select textarea] + + node.body.each do |child| + next unless child.is_a?(Herb::AST::HTMLElementNode) + + child_tag = child.tag_name&.value&.downcase + next unless child_tag && interactive_elements.include?(child_tag) + + add_validation_error( + "InvalidNestingError", + child.location, + "Interactive element <#{child_tag}> cannot be nested inside ' + result1 = evaluate_template(template1) + assert_equal '', result1 + + template2 = '' + result2 = evaluate_template(template2) + + assert_includes result2, "disabled" + assert_includes result2, "aria-busy" + end + + test "erb output in attribute position blocked" do + template = "

>Content
" + + error = assert_raises(Herb::Engine::SecurityError) do + compile_template(template) + end + + assert_includes error.message, "ERB output tags (<%= %>) are not allowed in attribute position" + assert_includes error.suggestion, "Use control flow (<% %>) with static attributes instead" + assert_equal 1, error.line + assert_equal 5, error.column + end + + test "erb output in attribute names blocked" do + template = '
="value">Content
' + + error = assert_raises(Herb::Engine::SecurityError) do + compile_template(template) + end + + assert_includes error.message, "ERB output in attribute names is not allowed for security reasons" + assert_includes error.suggestion, "Use static attribute names with dynamic values instead" + end + + test "erb control flow in attribute position allowed" do + template = '
class="active"<% else %>class="inactive"<% end %>>Content
' + + result = compile_template(template) + assert result.is_a?(String) + end + + test "token optimization basic" do + template = "
Hello
World

<%= @name %>

" + compiled = compile_template(template) + + assert_includes compiled, "'
Hello
World

'" + end + + test "mixed contexts" do + template = '

Content
' + result = evaluate_template(template, css_class: "test", name: "Alice") + + assert_includes result, 'class="test"' + assert_includes result, "alert('Alice')" + end + + test "void elements" do + template = '
' + result = evaluate_template(template, value: "test") + assert_equal '
', result + end + + test "html comments with erb" do + template = '' + result = evaluate_template(template) + assert_includes result, "" + end + + test "mixed quote types" do + template = '
\' data-value="<%= @value %>">
' + result = evaluate_template(template, class: "test", value: "data") + assert_includes result, "class='test'" + assert_includes result, 'data-value="data"' + end + + test "user profile card" do + template = <<~ERB +
+ <% if @user_avatar %> + <%= @name %>'s avatar + <% end %> + +

<%= @name %>

+ + + +
+ ERB + + context = { + card_class: "featured", + user_avatar: true, + avatar_url: "https://example.com/avatar.jpg", + name: "Alice Smith", + email: "alice@example.com", + active: true, + } + + result = evaluate_template(template, context) + + assert_includes result, 'class="user-card featured"' + assert_includes result, 'src="https://example.com/avatar.jpg"' + assert_includes result, 'alt="Alice Smith\'s avatar"' + assert_includes result, "

Alice Smith

" + assert_includes result, 'name: "Alice Smith"' + assert_includes result, "isActive: true" + end + + test "security error provides location info" do + template = <<~ERB +
+

Some content

+ >Error here +
+ ERB + + error = assert_raises(Herb::Engine::SecurityError) do + compile_template(template) + end + + assert_equal 3, error.line + assert error.column.is_a?(Integer) + end + end +end diff --git a/test/engine/validation_deduplication_test.rb b/test/engine/validation_deduplication_test.rb new file mode 100644 index 000000000..97a1e610f --- /dev/null +++ b/test/engine/validation_deduplication_test.rb @@ -0,0 +1,69 @@ +# frozen_string_literal: true + +require_relative "../test_helper" + +module Engine + class ValidationDeduplicationTest < Minitest::Spec + test "validation errors in ERB loops generate single template per location" do + input = "<% 10.times do |i| %>
>
<% end %>" + + engine = Herb::Engine.new(input, validation_mode: :overlay, filename: "loop_test.html.erb") + + templates = engine.src.scan(%r{]*data-herb-validation-error[^>]*>.*?}m) + + assert_equal 1, templates.length, "ERB loops should generate one validation error per unique location" + + template = templates.first + + assert_includes template, 'data-source="SecurityValidator"' + assert_includes template, 'data-line="1"' + assert_includes template, 'data-column="26"' + assert_includes template, "ERB output tags" + end + + test "multiple identical errors at different locations generate separate templates" do + input = <<~ERB +
>
+
>
+
>
+ ERB + + engine = Herb::Engine.new(input, validation_mode: :overlay, filename: "multi_test.html.erb") + + templates = engine.src.scan(%r{]*data-herb-validation-error[^>]*>.*?}m) + + assert_equal 3, templates.length, "Each unique location should generate its own template" + + line_numbers = templates.map do |template| + template.match(/data-line="(\d+)"/)[1].to_i + end + + assert_equal [1, 2, 3], line_numbers.sort + end + + test "validation overlay includes deduplication metadata" do + input = "
>
" + + engine = Herb::Engine.new(input, validation_mode: :overlay, filename: "meta_test.html.erb") + + template_match = engine.src.match(%r{]*data-herb-validation-error[^>]*>.*?}m) + assert template_match, "Should contain validation error template" + + template = template_match[0] + + assert_includes template, "data-herb-validation-error" + assert_includes template, 'data-severity="error"' + assert_includes template, 'data-source="SecurityValidator"' + assert_includes template, 'data-code="SecurityViolation"' + assert_includes template, 'data-line="1"' + assert_includes template, 'data-column="5"' + assert_includes template, 'data-filename="meta_test.html.erb"' + assert_includes template, "data-message=" + assert_includes template, "data-suggestion=" + assert_includes template, "data-timestamp=" + assert_includes template, "herb-validation-item" + assert_includes template, "herb-validation-badge" + assert_includes template, "herb-code-snippet" + end + end +end diff --git a/test/engine/validation_modes_test.rb b/test/engine/validation_modes_test.rb new file mode 100644 index 000000000..3fc746648 --- /dev/null +++ b/test/engine/validation_modes_test.rb @@ -0,0 +1,145 @@ +# frozen_string_literal: true + +require_relative "../test_helper" + +module Engine + class ValidationModesTest < Minitest::Spec + def setup + @valid_template = "
Valid template
" + @invalid_security_template = "
>Content
" + @invalid_nesting_template = "

Invalid nesting

" + end + + test ":raise mode raises SecurityError for security violations" do + error = assert_raises(Herb::Engine::SecurityError) do + Herb::Engine.new(@invalid_security_template, validation_mode: :raise) + end + + assert_includes error.message, "ERB output tags" + assert_equal 1, error.line + assert_equal 5, error.column + end + + test ":raise mode raises CompilationError for other validation errors" do + error = assert_raises(Herb::Engine::CompilationError) do + Herb::Engine.new(@invalid_nesting_template, validation_mode: :raise) + end + + assert_includes error.message, "Block element" + end + + test ":raise mode is the default behavior" do + assert_raises(Herb::Engine::SecurityError) do + Herb::Engine.new(@invalid_security_template) + end + + assert_raises(Herb::Engine::SecurityError) do + Herb::Engine.new(@invalid_security_template, validation_mode: :raise) + end + end + + test ":none mode skips all validation" do + engine = Herb::Engine.new(@invalid_security_template, validation_mode: :none) + assert_kind_of String, engine.src + + engine2 = Herb::Engine.new('
="value">Content
', validation_mode: :none) + assert_kind_of String, engine2.src + end + + test ":overlay mode compiles successfully with validation errors" do + engine = Herb::Engine.new(@invalid_security_template, validation_mode: :overlay) + + assert_kind_of String, engine.src + assert_includes engine.src, "]*data-herb-validation-error[^>]*>.*?}m) + assert template_match, "Should contain validation error template" + + template = template_match[0] + + assert_includes template, 'data-severity="error"' + assert_includes template, 'data-source="SecurityValidator"' + assert_includes template, 'data-code="SecurityViolation"' + assert_includes template, 'data-line="1"' + assert_includes template, 'data-column="5"' + assert_includes template, "data-message=", "Should contain error message" + assert_includes template, "data-suggestion=", "Should contain suggestion" + + assert_includes template, "ERB output tags", "Should contain error message in HTML" + assert_includes template, "herb-validation-item", "Should contain validation item HTML" + assert_includes template, "Security", "Should contain validator badge" + end + + test ":overlay mode with valid template does not include validation errors" do + engine = Herb::Engine.new(@valid_template, validation_mode: :overlay) + + refute_includes engine.src, "]*data-herb-validation-error[^>]*>.*?}m) + template = template_match[0] + + assert_includes template, "template.html.erb", "Should contain filename in the path" + end + + test ":overlay mode includes timestamp in HTML" do + engine = Herb::Engine.new(@invalid_security_template, validation_mode: :overlay) + + template_match = engine.src.match(%r{]*data-herb-validation-error[^>]*>.*?}m) + template = template_match[0] + + timestamp_match = template.match(/data-timestamp="([^"]*)"/) + assert timestamp_match, "Should contain timestamp attribute" + + parsed_time = Time.iso8601(timestamp_match[1]) + assert_kind_of Time, parsed_time + end + + test ":overlay mode with multiple validation errors" do + complex_invalid_template = '
data-<%= @name %>="value">Content
' + + engine = Herb::Engine.new(complex_invalid_template, validation_mode: :overlay) + + templates = engine.src.scan(%r{]*data-herb-validation-error[^>]*>.*?}m) + assert templates.length >= 1, "Should have at least one validation error" + + security_templates = templates.select { |template| template.include?('data-source="SecurityValidator"') } + assert security_templates.length >= 1, "Should have at least one security error" + end + + test "validation modes work with debug mode" do + engine1 = Herb::Engine.new(@valid_template, validation_mode: :none, debug: true) + assert_kind_of String, engine1.src + + engine2 = Herb::Engine.new(@valid_template, validation_mode: :overlay, debug: true) + assert_kind_of String, engine2.src + + assert_raises(Herb::Engine::SecurityError) do + Herb::Engine.new(@invalid_security_template, validation_mode: :raise, debug: true) + end + end + end +end diff --git a/test/fork_helper.rb b/test/fork_helper.rb index a9a47c0b1..4e7ba9a04 100644 --- a/test/fork_helper.rb +++ b/test/fork_helper.rb @@ -3,7 +3,7 @@ require "timeout" class Minitest::Spec - TIMEOUT_THRESHOLD = ENV["UPDATE_SNAPSHOTS"].nil? ? 0.1 : 5 # seconds + TIMEOUT_THRESHOLD = ENV["UPDATE_SNAPSHOTS"].nil? ? 5 : 60 # seconds puts "Using fork_helper with timeout: #{TIMEOUT_THRESHOLD} seconds" diff --git a/test/snapshot_utils.rb b/test/snapshot_utils.rb index 06056e8b7..2034fc552 100644 --- a/test/snapshot_utils.rb +++ b/test/snapshot_utils.rb @@ -31,6 +31,41 @@ def assert_parsed_snapshot(source, **options) result end + def assert_compiled_snapshot(source, options = {}) + require_relative "../lib/herb/engine" + + engine = Herb::Engine.new(source, options) + expected = engine.src + + snapshot_key = { source: source, options: options }.to_s + assert_snapshot_matches(expected, snapshot_key) + + engine + end + + def assert_evaluated_snapshot(source, locals = {}, options = {}) + require_relative "../lib/herb/engine" + + engine = Herb::Engine.new(source, options) + binding_context = Object.new + + locals.each do |key, value| + binding_context.define_singleton_method(key) { value } + end + + result = binding_context.instance_eval(engine.src) + + snapshot_key = { + source: source, + locals: locals, + options: options, + }.to_s + + assert_snapshot_matches(result, snapshot_key) + + { engine: engine, result: result } + end + def snapshot_changed?(content, source, options = {}) if snapshot_file(source, options).exist? previous_content = snapshot_file(source, options).read diff --git a/test/snapshots/engine/debug_mode_test/test_0004_visible_erb_expression_gets_debug_span_9431501e9722fe8b38c66468fd77c1f5.txt b/test/snapshots/engine/debug_mode_test/test_0004_visible_erb_expression_gets_debug_span_9431501e9722fe8b38c66468fd77c1f5.txt new file mode 100644 index 000000000..ad598c6b7 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0004_visible_erb_expression_gets_debug_span_9431501e9722fe8b38c66468fd77c1f5.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << '

Welcome '.freeze; _buf << (@user.name).to_s; _buf << '!

'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0005_multiple_visible_erb_expressions_get_debug_spans_78e7fde7b24d6ebbef7b0cc3e02dfeeb.txt b/test/snapshots/engine/debug_mode_test/test_0005_multiple_visible_erb_expressions_get_debug_spans_78e7fde7b24d6ebbef7b0cc3e02dfeeb.txt new file mode 100644 index 000000000..bbc5f722a --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0005_multiple_visible_erb_expressions_get_debug_spans_78e7fde7b24d6ebbef7b0cc3e02dfeeb.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << '

Hello '.freeze; _buf << (@name).to_s; _buf << ' on '.freeze; _buf << (Date.today).to_s; _buf << '!

'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0009_render_calls_get_outline_boundaries_48fc68664d9cabb3813ea9b86d3f8bbd.txt b/test/snapshots/engine/debug_mode_test/test_0009_render_calls_get_outline_boundaries_48fc68664d9cabb3813ea9b86d3f8bbd.txt new file mode 100644 index 000000000..d5f9034a3 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0009_render_calls_get_outline_boundaries_48fc68664d9cabb3813ea9b86d3f8bbd.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << (render "shared/header").to_s; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0010_partial_render_calls_get_partial_outline_boundaries_15153b8ec3486c918ba9fcb33386aeee.txt b/test/snapshots/engine/debug_mode_test/test_0010_partial_render_calls_get_partial_outline_boundaries_15153b8ec3486c918ba9fcb33386aeee.txt new file mode 100644 index 000000000..1cf2fb6af --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0010_partial_render_calls_get_partial_outline_boundaries_15153b8ec3486c918ba9fcb33386aeee.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << (render partial: "user_card", locals: { user: @user }).to_s; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0011_top-level_element_with_only_ERB_output_as_child_683f80e816cdd50d5e065d1e91bcce53.txt b/test/snapshots/engine/debug_mode_test/test_0011_top-level_element_with_only_ERB_output_as_child_683f80e816cdd50d5e065d1e91bcce53.txt new file mode 100644 index 000000000..96bbfaa5f --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0011_top-level_element_with_only_ERB_output_as_child_683f80e816cdd50d5e065d1e91bcce53.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << '

'.freeze; _buf << (hello).to_s; _buf << '

'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0012_top-level_element_with_only_ERB_output_as_child_for_partial_00b34061b9686a4c930bd9ab0bd4665d.txt b/test/snapshots/engine/debug_mode_test/test_0012_top-level_element_with_only_ERB_output_as_child_for_partial_00b34061b9686a4c930bd9ab0bd4665d.txt new file mode 100644 index 000000000..588a30932 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0012_top-level_element_with_only_ERB_output_as_child_for_partial_00b34061b9686a4c930bd9ab0bd4665d.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << '

'.freeze; _buf << (hello).to_s; _buf << '

'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0013_collection_render_calls_get_outline_boundaries_a536d3d2225f6f8d1163956571c1623b.txt b/test/snapshots/engine/debug_mode_test/test_0013_collection_render_calls_get_outline_boundaries_a536d3d2225f6f8d1163956571c1623b.txt new file mode 100644 index 000000000..d634d9b3b --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0013_collection_render_calls_get_outline_boundaries_a536d3d2225f6f8d1163956571c1623b.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << (render @posts).to_s; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0016_block_expressions_get_debug_spans_c71ab7a64204c499e9b116ffc3fbf03d.txt b/test/snapshots/engine/debug_mode_test/test_0016_block_expressions_get_debug_spans_c71ab7a64204c499e9b116ffc3fbf03d.txt new file mode 100644 index 000000000..83fc73b42 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0016_block_expressions_get_debug_spans_c71ab7a64204c499e9b116ffc3fbf03d.txt @@ -0,0 +1,6 @@ +_buf = ::String.new; + _buf << content_for :sidebar do; _buf << ' +
Sidebar content
+'.freeze; end; _buf << ' +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0017_render_block_expressions_get_outline_boundaries_a8600827a6adf41bc60a28a65a7ebe50.txt b/test/snapshots/engine/debug_mode_test/test_0017_render_block_expressions_get_outline_boundaries_a8600827a6adf41bc60a28a65a7ebe50.txt new file mode 100644 index 000000000..6141d9ac7 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0017_render_block_expressions_get_outline_boundaries_a8600827a6adf41bc60a28a65a7ebe50.txt @@ -0,0 +1,6 @@ +_buf = ::String.new; + _buf << render "layout" do; _buf << ' +
Block content
+'.freeze; end; _buf << ' +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0018_mixed_content_and_attributes_a900dc734c9ad44f41ee0df5f88e0e68.txt b/test/snapshots/engine/debug_mode_test/test_0018_mixed_content_and_attributes_a900dc734c9ad44f41ee0df5f88e0e68.txt new file mode 100644 index 000000000..9c9cbc4ab --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0018_mixed_content_and_attributes_a900dc734c9ad44f41ee0df5f88e0e68.txt @@ -0,0 +1,7 @@ +_buf = ::String.new; + _buf << '
+

Hello '.freeze; _buf << (@name).to_s; _buf << '!

+

Today is '.freeze; _buf << (Date.today.strftime('%A')).to_s; _buf << '

+
+'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0019_nested_erb_expressions_with_render_calls_9ff80d616cac6cd6536d9d1c69828d42.txt b/test/snapshots/engine/debug_mode_test/test_0019_nested_erb_expressions_with_render_calls_9ff80d616cac6cd6536d9d1c69828d42.txt new file mode 100644 index 000000000..47b4352be --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0019_nested_erb_expressions_with_render_calls_9ff80d616cac6cd6536d9d1c69828d42.txt @@ -0,0 +1,10 @@ +_buf = ::String.new; + _buf << '
+

Welcome '.freeze; _buf << (@user.name).to_s; _buf << '!

+ '.freeze; _buf << (render "shared/navigation").to_s; _buf << ' +
+ '.freeze; _buf << (render partial: "content", locals: { data: @data }).to_s; _buf << ' +
+
+'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0020_debug_mode_with_escape_enabled_ed8d270f96c299d791e00fdbec8726b1.txt b/test/snapshots/engine/debug_mode_test/test_0020_debug_mode_with_escape_enabled_ed8d270f96c299d791e00fdbec8726b1.txt new file mode 100644 index 000000000..c707390d0 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0020_debug_mode_with_escape_enabled_ed8d270f96c299d791e00fdbec8726b1.txt @@ -0,0 +1,3 @@ +__herb = ::Herb::Engine; _buf = ::String.new; + _buf << '

User input: '.freeze; _buf << __herb.h((user_content)); _buf << '

'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0021_debug_mode_with_escape_disabled_d5b28d0c6e5cc66787fa0f0134fe2642.txt b/test/snapshots/engine/debug_mode_test/test_0021_debug_mode_with_escape_disabled_d5b28d0c6e5cc66787fa0f0134fe2642.txt new file mode 100644 index 000000000..d2759a86d --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0021_debug_mode_with_escape_disabled_d5b28d0c6e5cc66787fa0f0134fe2642.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << '

Safe content: '.freeze; _buf << (safe_html).to_s; _buf << '

'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0022_erb_yield_expressions_get_debug_spans_00962cc49ea43b8d9e11e5b050b24a56.txt b/test/snapshots/engine/debug_mode_test/test_0022_erb_yield_expressions_get_debug_spans_00962cc49ea43b8d9e11e5b050b24a56.txt new file mode 100644 index 000000000..70b51921b --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0022_erb_yield_expressions_get_debug_spans_00962cc49ea43b8d9e11e5b050b24a56.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << '
'.freeze; _buf << (yield :sidebar).to_s; _buf << '
'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0023_complex_nested_template_with_all_features_8183ba9ca86a867463e5eef28dede268.txt b/test/snapshots/engine/debug_mode_test/test_0023_complex_nested_template_with_all_features_8183ba9ca86a867463e5eef28dede268.txt new file mode 100644 index 000000000..2f1197613 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0023_complex_nested_template_with_all_features_8183ba9ca86a867463e5eef28dede268.txt @@ -0,0 +1,29 @@ +_buf = ::String.new; + _buf << ' + + + '.freeze; _buf << (@page_title).to_s; _buf << ' + + + + '.freeze; _buf << (render "shared/header").to_s; _buf << ' + +
+ '.freeze; if @user.present?; _buf << ' +

Welcome back, '.freeze; _buf << (@user.name).to_s; _buf << '!

+ '.freeze; _buf << (render partial: "user_dashboard", locals: { user: @user }).to_s; _buf << ' + '.freeze; else; _buf << ' +

Welcome, guest!

+ '.freeze; _buf << (render "auth/login_form").to_s; _buf << ' + '.freeze; end; _buf << ' +
+ + + + +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0025_turbo_frame_tag_does_NOT_get_erb-output_outline_type_6441400221f6c4babe86ffc5da0cd758.txt b/test/snapshots/engine/debug_mode_test/test_0025_turbo_frame_tag_does_NOT_get_erb-output_outline_type_6441400221f6c4babe86ffc5da0cd758.txt new file mode 100644 index 000000000..e8b944a48 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0025_turbo_frame_tag_does_NOT_get_erb-output_outline_type_6441400221f6c4babe86ffc5da0cd758.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << turbo_frame_tag "posts" do; _buf << '

Content

'.freeze; end; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0026_content_for_with_block_does_NOT_get_erb-output_outline_type_1d1f4277e9176d7fdfd12943bfdca2fe.txt b/test/snapshots/engine/debug_mode_test/test_0026_content_for_with_block_does_NOT_get_erb-output_outline_type_1d1f4277e9176d7fdfd12943bfdca2fe.txt new file mode 100644 index 000000000..ec2a93ed9 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0026_content_for_with_block_does_NOT_get_erb-output_outline_type_1d1f4277e9176d7fdfd12943bfdca2fe.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << content_for :sidebar do; _buf << '
Sidebar content
'.freeze; end; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0027_content_tag_with_block_does_NOT_get_erb-output_outline_type_085c2022e3fc5db7ee51f4bdb45e58cc.txt b/test/snapshots/engine/debug_mode_test/test_0027_content_tag_with_block_does_NOT_get_erb-output_outline_type_085c2022e3fc5db7ee51f4bdb45e58cc.txt new file mode 100644 index 000000000..5c92738fa --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0027_content_tag_with_block_does_NOT_get_erb-output_outline_type_085c2022e3fc5db7ee51f4bdb45e58cc.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << content_tag :div, class: "wrapper" do; _buf << 'Content'.freeze; end; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0028_link_to_with_block_does_NOT_get_erb-output_outline_type_25a2a32341c4efbd5fc67fcaccc65e04.txt b/test/snapshots/engine/debug_mode_test/test_0028_link_to_with_block_does_NOT_get_erb-output_outline_type_25a2a32341c4efbd5fc67fcaccc65e04.txt new file mode 100644 index 000000000..26531da29 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0028_link_to_with_block_does_NOT_get_erb-output_outline_type_25a2a32341c4efbd5fc67fcaccc65e04.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << link_to "/users" do; _buf << 'View Users'.freeze; end; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0029_tag_helper_with_block_does_NOT_get_erb-output_outline_type_d94d55997ab20001501c4d8811a7bb88.txt b/test/snapshots/engine/debug_mode_test/test_0029_tag_helper_with_block_does_NOT_get_erb-output_outline_type_d94d55997ab20001501c4d8811a7bb88.txt new file mode 100644 index 000000000..714c3719a --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0029_tag_helper_with_block_does_NOT_get_erb-output_outline_type_d94d55997ab20001501c4d8811a7bb88.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << tag.div class: "container" do; _buf << 'Content'.freeze; end; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0030_form_with_block_does_NOT_get_erb-output_outline_type_93a0348e20c77450c6d171153f72e728.txt b/test/snapshots/engine/debug_mode_test/test_0030_form_with_block_does_NOT_get_erb-output_outline_type_93a0348e20c77450c6d171153f72e728.txt new file mode 100644 index 000000000..66131f723 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0030_form_with_block_does_NOT_get_erb-output_outline_type_93a0348e20c77450c6d171153f72e728.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << form_with model: @user do |f|; _buf << 'Form content'.freeze; end; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0031_yield_expressions_get_NOT_erb-output_outline_type_0c837ffe84723a464e884d64d0e062dd.txt b/test/snapshots/engine/debug_mode_test/test_0031_yield_expressions_get_NOT_erb-output_outline_type_0c837ffe84723a464e884d64d0e062dd.txt new file mode 100644 index 000000000..187cdbb40 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0031_yield_expressions_get_NOT_erb-output_outline_type_0c837ffe84723a464e884d64d0e062dd.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << '

'.freeze; _buf << (yield :title).to_s; _buf << '

'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0032_if_with_elements_89b5f8286cf91457e3403e9ac303a110.txt b/test/snapshots/engine/debug_mode_test/test_0032_if_with_elements_89b5f8286cf91457e3403e9ac303a110.txt new file mode 100644 index 000000000..42f713714 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0032_if_with_elements_89b5f8286cf91457e3403e9ac303a110.txt @@ -0,0 +1,17 @@ +_buf = ::String.new; + _buf << '
+ '.freeze; if event.static_metadata && event.static_metadata.location != "Earth"; _buf << ' + '.freeze; _buf << (event.static_metadata.location).to_s; _buf << ' + '.freeze; end; _buf << ' + + '.freeze; _buf << (event.formatted_dates).to_s; _buf << ' + + '.freeze; if event.static_metadata.last_edition?; _buf << ' +
+ '.freeze; _buf << (fa "box-archive", size: :xs, style: :regular, class: "fill-gray-400").to_s; _buf << ' + Final Edition +
+ '.freeze; end; _buf << ' +
+'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0033_gets_view_and_erb_output_view_type_for_just_output_tag_a96009c6e583d1020beeee97e1ce62a9.txt b/test/snapshots/engine/debug_mode_test/test_0033_gets_view_and_erb_output_view_type_for_just_output_tag_a96009c6e583d1020beeee97e1ce62a9.txt new file mode 100644 index 000000000..7bafa30e0 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0033_gets_view_and_erb_output_view_type_for_just_output_tag_a96009c6e583d1020beeee97e1ce62a9.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << ''.freeze; _buf << (hello).to_s; _buf << ''.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0034_puts_debug_span_on_parent_if_HTMLTextContent_is_only_spaces_be6b19dff594a892a386128f09ffe067.txt b/test/snapshots/engine/debug_mode_test/test_0034_puts_debug_span_on_parent_if_HTMLTextContent_is_only_spaces_be6b19dff594a892a386128f09ffe067.txt new file mode 100644 index 000000000..6947049a1 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0034_puts_debug_span_on_parent_if_HTMLTextContent_is_only_spaces_be6b19dff594a892a386128f09ffe067.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << '

'.freeze; _buf << (hello).to_s; _buf << '

'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0035_puts_debug_span_on_parent_if_HTMLTextContent_is_only_whitespace_bac3b0b435460da6f79e9f55aa0330e8.txt b/test/snapshots/engine/debug_mode_test/test_0035_puts_debug_span_on_parent_if_HTMLTextContent_is_only_whitespace_bac3b0b435460da6f79e9f55aa0330e8.txt new file mode 100644 index 000000000..05c8f2fe2 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0035_puts_debug_span_on_parent_if_HTMLTextContent_is_only_whitespace_bac3b0b435460da6f79e9f55aa0330e8.txt @@ -0,0 +1,6 @@ +_buf = ::String.new; + _buf << '

+ '.freeze; _buf << (hello).to_s; _buf << ' +

+'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0036_mulitple_top-level_elements_should_be_wrapped_in_type=view_div_949cda6115e11aa1c64a4ba7f14af8d7.txt b/test/snapshots/engine/debug_mode_test/test_0036_mulitple_top-level_elements_should_be_wrapped_in_type=view_div_949cda6115e11aa1c64a4ba7f14af8d7.txt new file mode 100644 index 000000000..aece10e38 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0036_mulitple_top-level_elements_should_be_wrapped_in_type=view_div_949cda6115e11aa1c64a4ba7f14af8d7.txt @@ -0,0 +1,5 @@ +_buf = ::String.new; + _buf << '

Hello

+

World

+'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0037_non_HTML-element_top-level_node_should_be_wrapped_in_type=view_div_a5de27451c9360545052120fb160f115.txt b/test/snapshots/engine/debug_mode_test/test_0037_non_HTML-element_top-level_node_should_be_wrapped_in_type=view_div_a5de27451c9360545052120fb160f115.txt new file mode 100644 index 000000000..5be6d39f4 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0037_non_HTML-element_top-level_node_should_be_wrapped_in_type=view_div_a5de27451c9360545052120fb160f115.txt @@ -0,0 +1,6 @@ +_buf = ::String.new; + _buf << content_tag :div do; _buf << ' + Content +'.freeze; end; _buf << ' +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0038_script_content_erb_expressions_do_NOT_get_debug_spans_fa19152dbae94261cb892c6fe543ee74.txt b/test/snapshots/engine/debug_mode_test/test_0038_script_content_erb_expressions_do_NOT_get_debug_spans_fa19152dbae94261cb892c6fe543ee74.txt new file mode 100644 index 000000000..39c7e0cf9 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0038_script_content_erb_expressions_do_NOT_get_debug_spans_fa19152dbae94261cb892c6fe543ee74.txt @@ -0,0 +1,7 @@ +_buf = ::String.new; + _buf << ' +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0039_style_content_erb_expressions_do_NOT_get_debug_spans_841ac66ea0f03edd85fe096706e27292.txt b/test/snapshots/engine/debug_mode_test/test_0039_style_content_erb_expressions_do_NOT_get_debug_spans_841ac66ea0f03edd85fe096706e27292.txt new file mode 100644 index 000000000..91cc3c055 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0039_style_content_erb_expressions_do_NOT_get_debug_spans_841ac66ea0f03edd85fe096706e27292.txt @@ -0,0 +1,7 @@ +_buf = ::String.new; + _buf << ' +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0040_head_content_erb_expressions_do_NOT_get_debug_spans_8089875648934cfa3372da1612535899.txt b/test/snapshots/engine/debug_mode_test/test_0040_head_content_erb_expressions_do_NOT_get_debug_spans_8089875648934cfa3372da1612535899.txt new file mode 100644 index 000000000..0d9690e7a --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0040_head_content_erb_expressions_do_NOT_get_debug_spans_8089875648934cfa3372da1612535899.txt @@ -0,0 +1,7 @@ +_buf = ::String.new; + _buf << ' + '.freeze; _buf << (@page_title).to_s; _buf << ' + + +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0041_textarea_content_erb_expressions_do_NOT_get_debug_spans_749dc54ef9bc43f01a7308eb5aceb38e.txt b/test/snapshots/engine/debug_mode_test/test_0041_textarea_content_erb_expressions_do_NOT_get_debug_spans_749dc54ef9bc43f01a7308eb5aceb38e.txt new file mode 100644 index 000000000..470587032 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0041_textarea_content_erb_expressions_do_NOT_get_debug_spans_749dc54ef9bc43f01a7308eb5aceb38e.txt @@ -0,0 +1,7 @@ +_buf = ::String.new; + _buf << ' +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0042_pre_content_erb_expressions_do_NOT_get_debug_spans_310e2cf33eed6523c1327b9489be9c7c.txt b/test/snapshots/engine/debug_mode_test/test_0042_pre_content_erb_expressions_do_NOT_get_debug_spans_310e2cf33eed6523c1327b9489be9c7c.txt new file mode 100644 index 000000000..4c1069c5c --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0042_pre_content_erb_expressions_do_NOT_get_debug_spans_310e2cf33eed6523c1327b9489be9c7c.txt @@ -0,0 +1,9 @@ +_buf = ::String.new; + _buf << '
+  Code block:
+  '.freeze; _buf << (@code_sample).to_s; _buf << '
+
+  More code: '.freeze; _buf << (@another_sample).to_s; _buf << '
+
+'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0043_nested_excluded_contexts_do_NOT_get_debug_spans_0e904ebb5414efb4cb37c5370cb965a2.txt b/test/snapshots/engine/debug_mode_test/test_0043_nested_excluded_contexts_do_NOT_get_debug_spans_0e904ebb5414efb4cb37c5370cb965a2.txt new file mode 100644 index 000000000..e71e17ce2 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0043_nested_excluded_contexts_do_NOT_get_debug_spans_0e904ebb5414efb4cb37c5370cb965a2.txt @@ -0,0 +1,11 @@ +_buf = ::String.new; + _buf << '
+ + +
+'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0044_html_comment_erb_expressions_do_NOT_get_debug_spans_29f280295d96a879bf9775e4ca2509b8.txt b/test/snapshots/engine/debug_mode_test/test_0044_html_comment_erb_expressions_do_NOT_get_debug_spans_29f280295d96a879bf9775e4ca2509b8.txt new file mode 100644 index 000000000..9717d37c9 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0044_html_comment_erb_expressions_do_NOT_get_debug_spans_29f280295d96a879bf9775e4ca2509b8.txt @@ -0,0 +1,5 @@ +_buf = ::String.new; + _buf << ' + +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0045_html_doctype_erb_expressions_do_NOT_get_debug_spans_f7e26660aada5f63b9e67e4082fa3efe.txt b/test/snapshots/engine/debug_mode_test/test_0045_html_doctype_erb_expressions_do_NOT_get_debug_spans_f7e26660aada5f63b9e67e4082fa3efe.txt new file mode 100644 index 000000000..52be7d8b8 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0045_html_doctype_erb_expressions_do_NOT_get_debug_spans_f7e26660aada5f63b9e67e4082fa3efe.txt @@ -0,0 +1,5 @@ +_buf = ::String.new; + _buf << ' + +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0046_complex_erb_with_control_flow_and_fa_helper_calls_21cbfad3d0a53e094cf337404372e3cc.txt b/test/snapshots/engine/debug_mode_test/test_0046_complex_erb_with_control_flow_and_fa_helper_calls_21cbfad3d0a53e094cf337404372e3cc.txt new file mode 100644 index 000000000..25d478f9e --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0046_complex_erb_with_control_flow_and_fa_helper_calls_21cbfad3d0a53e094cf337404372e3cc.txt @@ -0,0 +1,11 @@ +_buf = ::String.new; + _buf << '
+ '.freeze; speakers_count = talk.speakers.size; _buf << ' + '.freeze; if speakers_count > 1; _buf << ' + '.freeze; _buf << (fa("users", size: :sm, style: :light, class: "shrink-0 grow-0 my-1")).to_s; _buf << ' + '.freeze; elsif speakers_count == 1; _buf << ' + '.freeze; _buf << (fa("user", size: :sm, style: :regular, class: "shrink-0 grow-0 my-1")).to_s; _buf << ' + '.freeze; end; _buf << ' +
+'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/debug_mode_test/test_0047_regular_div_content_still_gets_debug_spans_after_excluded_context_tests_8bcb5712e0fc1e7b6a6b8639a98f4e14.txt b/test/snapshots/engine/debug_mode_test/test_0047_regular_div_content_still_gets_debug_spans_after_excluded_context_tests_8bcb5712e0fc1e7b6a6b8639a98f4e14.txt new file mode 100644 index 000000000..13ff8c120 --- /dev/null +++ b/test/snapshots/engine/debug_mode_test/test_0047_regular_div_content_still_gets_debug_spans_after_excluded_context_tests_8bcb5712e0fc1e7b6a6b8639a98f4e14.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << '
'.freeze; _buf << (@content).to_s; _buf << '
'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/engine_test/test_0001_basic_compilation_8787e8652af182a14b119c02e42d41ef.txt b/test/snapshots/engine/engine_test/test_0001_basic_compilation_8787e8652af182a14b119c02e42d41ef.txt new file mode 100644 index 000000000..db02f350b --- /dev/null +++ b/test/snapshots/engine/engine_test/test_0001_basic_compilation_8787e8652af182a14b119c02e42d41ef.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << '
Hello '.freeze; _buf << (name).to_s; _buf << '!
'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/engine_test/test_0002_compilation_with_escaping_97a4cf60e21a27282801c928e34cc7ad.txt b/test/snapshots/engine/engine_test/test_0002_compilation_with_escaping_97a4cf60e21a27282801c928e34cc7ad.txt new file mode 100644 index 000000000..d1300265a --- /dev/null +++ b/test/snapshots/engine/engine_test/test_0002_compilation_with_escaping_97a4cf60e21a27282801c928e34cc7ad.txt @@ -0,0 +1,3 @@ +__herb = ::Herb::Engine; _buf = ::String.new; + _buf << '
'.freeze; _buf << __herb.h((user_input)); _buf << '
'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/engine_test/test_0003_compilation_without_escaping_dab6b2186b82b0e6da5e7aba13328292.txt b/test/snapshots/engine/engine_test/test_0003_compilation_without_escaping_dab6b2186b82b0e6da5e7aba13328292.txt new file mode 100644 index 000000000..2698e5075 --- /dev/null +++ b/test/snapshots/engine/engine_test/test_0003_compilation_without_escaping_dab6b2186b82b0e6da5e7aba13328292.txt @@ -0,0 +1,3 @@ +_buf = ::String.new; + _buf << '
'.freeze; _buf << (user_input).to_s; _buf << '
'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/engine_test/test_0004_compilation_with_freeze_2c027491a18992cfc58f26e5e11d132e.txt b/test/snapshots/engine/engine_test/test_0004_compilation_with_freeze_2c027491a18992cfc58f26e5e11d132e.txt new file mode 100644 index 000000000..09f5a8580 --- /dev/null +++ b/test/snapshots/engine/engine_test/test_0004_compilation_with_freeze_2c027491a18992cfc58f26e5e11d132e.txt @@ -0,0 +1,5 @@ +# frozen_string_literal: true +_buf = ::String.new; + _buf << '
Static content
+'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/engine_test/test_0005_erb_control_flow_e92996083eebcc06dbfdbe99b01405d4.txt b/test/snapshots/engine/engine_test/test_0005_erb_control_flow_e92996083eebcc06dbfdbe99b01405d4.txt new file mode 100644 index 000000000..f976e19e5 --- /dev/null +++ b/test/snapshots/engine/engine_test/test_0005_erb_control_flow_e92996083eebcc06dbfdbe99b01405d4.txt @@ -0,0 +1,8 @@ +_buf = ::String.new; + if active?; _buf << ' + Active +'.freeze; else; _buf << ' + Inactive +'.freeze; end; _buf << ' +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/engine_test/test_0006_erb_loops_ce09605dc8d98fa00b772641bcb94756.txt b/test/snapshots/engine/engine_test/test_0006_erb_loops_ce09605dc8d98fa00b772641bcb94756.txt new file mode 100644 index 000000000..8e9be0ac3 --- /dev/null +++ b/test/snapshots/engine/engine_test/test_0006_erb_loops_ce09605dc8d98fa00b772641bcb94756.txt @@ -0,0 +1,6 @@ +_buf = ::String.new; + items.each do |item|; _buf << ' +
  • '.freeze; _buf << (item).to_s; _buf << '
  • +'.freeze; end; _buf << ' +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/engine_test/test_0007_html_attributes_ae606d306ed113ca8c81bac949c95f0b.txt b/test/snapshots/engine/engine_test/test_0007_html_attributes_ae606d306ed113ca8c81bac949c95f0b.txt new file mode 100644 index 000000000..342d8ffe4 --- /dev/null +++ b/test/snapshots/engine/engine_test/test_0007_html_attributes_ae606d306ed113ca8c81bac949c95f0b.txt @@ -0,0 +1,4 @@ +_buf = ::String.new; + _buf << '
    Content
    +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/engine_test/test_0008_erb_in_attributes_d9215319e7a45e85562051ee88efb393.txt b/test/snapshots/engine/engine_test/test_0008_erb_in_attributes_d9215319e7a45e85562051ee88efb393.txt new file mode 100644 index 000000000..05af2d1ce --- /dev/null +++ b/test/snapshots/engine/engine_test/test_0008_erb_in_attributes_d9215319e7a45e85562051ee88efb393.txt @@ -0,0 +1,4 @@ +_buf = ::String.new; + _buf << '
    Content
    +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/engine_test/test_0010_compilation_with_custom_bufvar_648bc9c3988d6e3e11794740df367ac6.txt b/test/snapshots/engine/engine_test/test_0010_compilation_with_custom_bufvar_648bc9c3988d6e3e11794740df367ac6.txt new file mode 100644 index 000000000..48567691e --- /dev/null +++ b/test/snapshots/engine/engine_test/test_0010_compilation_with_custom_bufvar_648bc9c3988d6e3e11794740df367ac6.txt @@ -0,0 +1,3 @@ +output = ::String.new; + output << '
    Test
    '.freeze; +output.to_s diff --git a/test/snapshots/engine/engine_test/test_0011_void_elements_3979e9f719fb6a669a5f8954def7c5cb.txt b/test/snapshots/engine/engine_test/test_0011_void_elements_3979e9f719fb6a669a5f8954def7c5cb.txt new file mode 100644 index 000000000..390760787 --- /dev/null +++ b/test/snapshots/engine/engine_test/test_0011_void_elements_3979e9f719fb6a669a5f8954def7c5cb.txt @@ -0,0 +1,6 @@ +_buf = ::String.new; + _buf << 'Photo +
    + +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/engine_test/test_0012_comments_710fe3f51d746ce1e228e58597aea388.txt b/test/snapshots/engine/engine_test/test_0012_comments_710fe3f51d746ce1e228e58597aea388.txt new file mode 100644 index 000000000..50ee33a30 --- /dev/null +++ b/test/snapshots/engine/engine_test/test_0012_comments_710fe3f51d746ce1e228e58597aea388.txt @@ -0,0 +1,8 @@ +_buf = ::String.new; + _buf << ' +
    + + Content +
    +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/engine_test/test_0013_doctype_92f22a69d9a42244fd6bcb2269a2da78.txt b/test/snapshots/engine/engine_test/test_0013_doctype_92f22a69d9a42244fd6bcb2269a2da78.txt new file mode 100644 index 000000000..49182c96c --- /dev/null +++ b/test/snapshots/engine/engine_test/test_0013_doctype_92f22a69d9a42244fd6bcb2269a2da78.txt @@ -0,0 +1,7 @@ +_buf = ::String.new; + _buf << ' + + Test + +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/engine_test/test_0014_nested_structures_80dc820543c2a2f82784e771830a3ce2.txt b/test/snapshots/engine/engine_test/test_0014_nested_structures_80dc820543c2a2f82784e771830a3ce2.txt new file mode 100644 index 000000000..2d3cc9439 --- /dev/null +++ b/test/snapshots/engine/engine_test/test_0014_nested_structures_80dc820543c2a2f82784e771830a3ce2.txt @@ -0,0 +1,20 @@ +_buf = ::String.new; + _buf << '
    + '.freeze; if logged_in?; _buf << ' +
      + '.freeze; items.each do |item|; _buf << ' +
    • + '.freeze; if item.featured?; _buf << ' + '.freeze; _buf << (item.name).to_s; _buf << ' + '.freeze; else; _buf << ' + '.freeze; _buf << (item.name).to_s; _buf << ' + '.freeze; end; _buf << ' +
    • + '.freeze; end; _buf << ' +
    + '.freeze; else; _buf << ' +

    Please log in

    + '.freeze; end; _buf << ' +
    +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/engine_test/test_0015_void_element_7a2d40e72c76ae8704ea920276c8941e.txt b/test/snapshots/engine/engine_test/test_0015_void_element_7a2d40e72c76ae8704ea920276c8941e.txt new file mode 100644 index 000000000..2dfbe6a9e --- /dev/null +++ b/test/snapshots/engine/engine_test/test_0015_void_element_7a2d40e72c76ae8704ea920276c8941e.txt @@ -0,0 +1,5 @@ +_buf = ::String.new; + _buf << ' + +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/engine_test/test_0016_if_elsif_else_compilation_1437d0425640509570342c24b30de571.txt b/test/snapshots/engine/engine_test/test_0016_if_elsif_else_compilation_1437d0425640509570342c24b30de571.txt new file mode 100644 index 000000000..0da1ca593 --- /dev/null +++ b/test/snapshots/engine/engine_test/test_0016_if_elsif_else_compilation_1437d0425640509570342c24b30de571.txt @@ -0,0 +1,12 @@ +_buf = ::String.new; + _buf << '

    + '.freeze; if true; _buf << ' +
    Text1
    + '.freeze; elsif false; _buf << ' +
    Text2
    + '.freeze; else; _buf << ' +
    Text3
    + '.freeze; end; _buf << ' +

    +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/evaluation_test/test_0001_basic_text_output_446d2d1421cca7b806743f01aa2251e4.txt b/test/snapshots/engine/evaluation_test/test_0001_basic_text_output_446d2d1421cca7b806743f01aa2251e4.txt new file mode 100644 index 000000000..34fa97df8 --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0001_basic_text_output_446d2d1421cca7b806743f01aa2251e4.txt @@ -0,0 +1 @@ +
    Hello World
    \ No newline at end of file diff --git a/test/snapshots/engine/evaluation_test/test_0002_variable_interpolation_4088972be574f11869e69d9d1c431607.txt b/test/snapshots/engine/evaluation_test/test_0002_variable_interpolation_4088972be574f11869e69d9d1c431607.txt new file mode 100644 index 000000000..a7d646421 --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0002_variable_interpolation_4088972be574f11869e69d9d1c431607.txt @@ -0,0 +1 @@ +
    Hello Alice!
    \ No newline at end of file diff --git a/test/snapshots/engine/evaluation_test/test_0003_html_escaping_enabled_61ee66481732a63208d4098cd765a529.txt b/test/snapshots/engine/evaluation_test/test_0003_html_escaping_enabled_61ee66481732a63208d4098cd765a529.txt new file mode 100644 index 000000000..5e3d53c3d --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0003_html_escaping_enabled_61ee66481732a63208d4098cd765a529.txt @@ -0,0 +1 @@ +
    <script>alert('xss')</script>
    \ No newline at end of file diff --git a/test/snapshots/engine/evaluation_test/test_0004_html_escaping_disabled_0bf9b33f4064b46d0e661b92c60883b8.txt b/test/snapshots/engine/evaluation_test/test_0004_html_escaping_disabled_0bf9b33f4064b46d0e661b92c60883b8.txt new file mode 100644 index 000000000..79f19b22e --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0004_html_escaping_disabled_0bf9b33f4064b46d0e661b92c60883b8.txt @@ -0,0 +1 @@ +
    Bold
    \ No newline at end of file diff --git a/test/snapshots/engine/evaluation_test/test_0005_conditional_rendering_true_f476d94ad451540a483556ee84873425.txt b/test/snapshots/engine/evaluation_test/test_0005_conditional_rendering_true_f476d94ad451540a483556ee84873425.txt new file mode 100644 index 000000000..ed842c9b7 --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0005_conditional_rendering_true_f476d94ad451540a483556ee84873425.txt @@ -0,0 +1,5 @@ +
    + +

    Message is shown

    + +
    diff --git a/test/snapshots/engine/evaluation_test/test_0006_conditional_rendering_false_cc1fa20e0a32190d88a0227eb61a12a9.txt b/test/snapshots/engine/evaluation_test/test_0006_conditional_rendering_false_cc1fa20e0a32190d88a0227eb61a12a9.txt new file mode 100644 index 000000000..529808c79 --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0006_conditional_rendering_false_cc1fa20e0a32190d88a0227eb61a12a9.txt @@ -0,0 +1,5 @@ +
    + +

    Message is hidden

    + +
    diff --git a/test/snapshots/engine/evaluation_test/test_0007_loop_rendering_6e40ec8a557eaa730717359ad0e81955.txt b/test/snapshots/engine/evaluation_test/test_0007_loop_rendering_6e40ec8a557eaa730717359ad0e81955.txt new file mode 100644 index 000000000..fe4c32ea4 --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0007_loop_rendering_6e40ec8a557eaa730717359ad0e81955.txt @@ -0,0 +1,9 @@ +
      + +
    • apple
    • + +
    • banana
    • + +
    • cherry
    • + +
    diff --git a/test/snapshots/engine/evaluation_test/test_0008_nested_loops_41457e8139a808914d288744c4e0c532.txt b/test/snapshots/engine/evaluation_test/test_0008_nested_loops_41457e8139a808914d288744c4e0c532.txt new file mode 100644 index 000000000..8e517fffa --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0008_nested_loops_41457e8139a808914d288744c4e0c532.txt @@ -0,0 +1,21 @@ +
    + +

    Fruits

    +
      + +
    • apple
    • + +
    • banana
    • + +
    + +

    Colors

    +
      + +
    • red
    • + +
    • blue
    • + +
    + +
    diff --git a/test/snapshots/engine/evaluation_test/test_0009_complex_expressions_4a8e4604acd824ebd86dd77c316ced30.txt b/test/snapshots/engine/evaluation_test/test_0009_complex_expressions_4a8e4604acd824ebd86dd77c316ced30.txt new file mode 100644 index 000000000..f96408ae5 --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0009_complex_expressions_4a8e4604acd824ebd86dd77c316ced30.txt @@ -0,0 +1,7 @@ +
    +

    JOHN DOE

    +

    Score: 150

    + + Excellent! + +
    diff --git a/test/snapshots/engine/evaluation_test/test_0010_method_calls_with_blocks_faff63e221cd127f249022ff7517bb14.txt b/test/snapshots/engine/evaluation_test/test_0010_method_calls_with_blocks_faff63e221cd127f249022ff7517bb14.txt new file mode 100644 index 000000000..d54da1449 --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0010_method_calls_with_blocks_faff63e221cd127f249022ff7517bb14.txt @@ -0,0 +1,3 @@ +
    + 2, 4, 6 +
    diff --git a/test/snapshots/engine/evaluation_test/test_0011_unless_conditional_false_c4f4ef6359c9b399bbe059b270d0388f.txt b/test/snapshots/engine/evaluation_test/test_0011_unless_conditional_false_c4f4ef6359c9b399bbe059b270d0388f.txt new file mode 100644 index 000000000..86e144d83 --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0011_unless_conditional_false_c4f4ef6359c9b399bbe059b270d0388f.txt @@ -0,0 +1,3 @@ + +

    Content is visible

    + diff --git a/test/snapshots/engine/evaluation_test/test_0012_unless_conditional_true_62ddfd676314329facbb84fd7db1974c.txt b/test/snapshots/engine/evaluation_test/test_0012_unless_conditional_true_62ddfd676314329facbb84fd7db1974c.txt new file mode 100644 index 000000000..d5f2d9462 --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0012_unless_conditional_true_62ddfd676314329facbb84fd7db1974c.txt @@ -0,0 +1,3 @@ + +

    Content is hidden

    + diff --git a/test/snapshots/engine/evaluation_test/test_0013_case_statement_pending_8fd46cbbe67a0d2871dee4eca5f8e38f.txt b/test/snapshots/engine/evaluation_test/test_0013_case_statement_pending_8fd46cbbe67a0d2871dee4eca5f8e38f.txt new file mode 100644 index 000000000..97bcccd44 --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0013_case_statement_pending_8fd46cbbe67a0d2871dee4eca5f8e38f.txt @@ -0,0 +1,5 @@ +
    + + Pending + +
    diff --git a/test/snapshots/engine/evaluation_test/test_0014_case_statement_approved_989341ea9ef14353decf0f2697a3b605.txt b/test/snapshots/engine/evaluation_test/test_0014_case_statement_approved_989341ea9ef14353decf0f2697a3b605.txt new file mode 100644 index 000000000..ea968c1a8 --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0014_case_statement_approved_989341ea9ef14353decf0f2697a3b605.txt @@ -0,0 +1,5 @@ +
    + + Approved + +
    diff --git a/test/snapshots/engine/evaluation_test/test_0015_case_statement_unknown_8bdf6d6267e185f6eaaa261aed0851fd.txt b/test/snapshots/engine/evaluation_test/test_0015_case_statement_unknown_8bdf6d6267e185f6eaaa261aed0851fd.txt new file mode 100644 index 000000000..2460444ad --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0015_case_statement_unknown_8bdf6d6267e185f6eaaa261aed0851fd.txt @@ -0,0 +1,5 @@ +
    + + Unknown + +
    diff --git a/test/snapshots/engine/evaluation_test/test_0016_erb_in_attribute_values_2afc809a699663dfa53f333e524b3a75.txt b/test/snapshots/engine/evaluation_test/test_0016_erb_in_attribute_values_2afc809a699663dfa53f333e524b3a75.txt new file mode 100644 index 000000000..00e967f00 --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0016_erb_in_attribute_values_2afc809a699663dfa53f333e524b3a75.txt @@ -0,0 +1,3 @@ + + View Profile + diff --git a/test/snapshots/engine/evaluation_test/test_0017_whitespace_handling_8efdae73f991e421da3048f196d4f1e2.txt b/test/snapshots/engine/evaluation_test/test_0017_whitespace_handling_8efdae73f991e421da3048f196d4f1e2.txt new file mode 100644 index 000000000..9eb776b8c --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0017_whitespace_handling_8efdae73f991e421da3048f196d4f1e2.txt @@ -0,0 +1,7 @@ +
    + + a + + b + +
    diff --git a/test/snapshots/engine/evaluation_test/test_0018_erb_comments_not_in_output_b2301585369bb0d0a7f195ff44444845.txt b/test/snapshots/engine/evaluation_test/test_0018_erb_comments_not_in_output_b2301585369bb0d0a7f195ff44444845.txt new file mode 100644 index 000000000..2bb8e3ddd --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0018_erb_comments_not_in_output_b2301585369bb0d0a7f195ff44444845.txt @@ -0,0 +1,6 @@ +
    + +

    Visible content

    + inside %> +

    More content

    +
    diff --git a/test/snapshots/engine/evaluation_test/test_0019_html_comments_in_output_365585bce5e9853289b0f6a8cbded7d0.txt b/test/snapshots/engine/evaluation_test/test_0019_html_comments_in_output_365585bce5e9853289b0f6a8cbded7d0.txt new file mode 100644 index 000000000..7c635e85d --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0019_html_comments_in_output_365585bce5e9853289b0f6a8cbded7d0.txt @@ -0,0 +1,5 @@ +
    + +

    Content

    + +
    diff --git a/test/snapshots/engine/evaluation_test/test_0020_empty_template_33b1269514e02c4c9e317b3bc202bb50.txt b/test/snapshots/engine/evaluation_test/test_0020_empty_template_33b1269514e02c4c9e317b3bc202bb50.txt new file mode 100644 index 000000000..e69de29bb diff --git a/test/snapshots/engine/evaluation_test/test_0021_only_whitespace_template_f8959e0699f3edad1645d14d94451687.txt b/test/snapshots/engine/evaluation_test/test_0021_only_whitespace_template_f8959e0699f3edad1645d14d94451687.txt new file mode 100644 index 000000000..9799259a8 --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0021_only_whitespace_template_f8959e0699f3edad1645d14d94451687.txt @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/test/snapshots/engine/evaluation_test/test_0022_complex_real_world_example_77e6fc93cd860e93537231583cd9cf3f.txt b/test/snapshots/engine/evaluation_test/test_0022_complex_real_world_example_77e6fc93cd860e93537231583cd9cf3f.txt new file mode 100644 index 000000000..6e20f161a --- /dev/null +++ b/test/snapshots/engine/evaluation_test/test_0022_complex_real_world_example_77e6fc93cd860e93537231583cd9cf3f.txt @@ -0,0 +1,83 @@ + + + + My Blog + + + +
    +

    My Awesome Blog

    + +
    + +
    + +
    + Welcome! +
    + + +
    + + +
    +

    First Post

    +

    + By John Doe on January 15, 2024 +

    +
    + This is the first post excerpt. +
    + +
    + + ruby + + programming + +
    + +
    + +
    +

    Second Post

    +

    + By Jane Smith on February 01, 2024 +

    +
    + This is the second post excerpt. +
    + +
    + + html + + css + +
    + +
    + + +
    +
    + +
    +

    © 2025 My Awesome Blog

    +
    + + diff --git a/test/snapshots/engine/examples_compilation_test/test_0001_attributes_with_empty_value_compilation_441036c464ee35f7b120090fe76d6936.txt b/test/snapshots/engine/examples_compilation_test/test_0001_attributes_with_empty_value_compilation_441036c464ee35f7b120090fe76d6936.txt new file mode 100644 index 000000000..854c2cace --- /dev/null +++ b/test/snapshots/engine/examples_compilation_test/test_0001_attributes_with_empty_value_compilation_441036c464ee35f7b120090fe76d6936.txt @@ -0,0 +1,4 @@ +_buf = ::String.new; + _buf << '
    +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/examples_compilation_test/test_0002_begin_compilation_cf3fa644ffeb7b672053fa0e989f55b5.txt b/test/snapshots/engine/examples_compilation_test/test_0002_begin_compilation_cf3fa644ffeb7b672053fa0e989f55b5.txt new file mode 100644 index 000000000..7a0c113cb --- /dev/null +++ b/test/snapshots/engine/examples_compilation_test/test_0002_begin_compilation_cf3fa644ffeb7b672053fa0e989f55b5.txt @@ -0,0 +1,10 @@ +_buf = ::String.new; + begin; _buf << ' +

    Begin

    +'.freeze; rescue StandardError => e; _buf << ' +

    Rescue

    +'.freeze; ensure; _buf << ' +

    Ensure

    +'.freeze; end; _buf << ' +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/examples_compilation_test/test_0003_block_compilation_40b3cb480f677f54d2ff8f47af37f7fa.txt b/test/snapshots/engine/examples_compilation_test/test_0003_block_compilation_40b3cb480f677f54d2ff8f47af37f7fa.txt new file mode 100644 index 000000000..bcad69a8e --- /dev/null +++ b/test/snapshots/engine/examples_compilation_test/test_0003_block_compilation_40b3cb480f677f54d2ff8f47af37f7fa.txt @@ -0,0 +1,10 @@ +_buf = ::String.new; + array = ["One", "Two", "Three"]; _buf << ' + +
      + '.freeze; array.each do |item|; _buf << ' +
    • '.freeze; _buf << (item).to_s; _buf << '
    • + '.freeze; end; _buf << ' +
    +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/examples_compilation_test/test_0004_case_when_compilation_3ee70e5b90c1ff368a7783c49c6dc611.txt b/test/snapshots/engine/examples_compilation_test/test_0004_case_when_compilation_3ee70e5b90c1ff368a7783c49c6dc611.txt new file mode 100644 index 000000000..29871a149 --- /dev/null +++ b/test/snapshots/engine/examples_compilation_test/test_0004_case_when_compilation_3ee70e5b90c1ff368a7783c49c6dc611.txt @@ -0,0 +1,20 @@ +_buf = ::String.new; + case Date.today.cwday; when 0; _buf << ' +

    Today is Sunday

    +'.freeze; when 1; _buf << ' +

    Today is Monday

    +'.freeze; when 2; _buf << ' +

    Today is Tuesday

    +'.freeze; when 3; _buf << ' +

    Today is Wednesday

    +'.freeze; when 4; _buf << ' +

    Today is Thursday

    +'.freeze; when 5; _buf << ' +

    Today is Friday

    +'.freeze; when 6; _buf << ' +

    Today is Saturday

    +'.freeze; else; _buf << ' +

    Today is not a day of the week

    +'.freeze; end; _buf << ' +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/examples_compilation_test/test_0005_comment_compilation_da96aac1987dbb33d41eb4a121419b47.txt b/test/snapshots/engine/examples_compilation_test/test_0005_comment_compilation_da96aac1987dbb33d41eb4a121419b47.txt new file mode 100644 index 000000000..2697c5a89 --- /dev/null +++ b/test/snapshots/engine/examples_compilation_test/test_0005_comment_compilation_da96aac1987dbb33d41eb4a121419b47.txt @@ -0,0 +1,4 @@ +_buf = ::String.new; + _buf << ' +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/examples_compilation_test/test_0006_doctype_compilation_8c18fb8399a2fd1e65b0333bc01e041c.txt b/test/snapshots/engine/examples_compilation_test/test_0006_doctype_compilation_8c18fb8399a2fd1e65b0333bc01e041c.txt new file mode 100644 index 000000000..4dcf9dddd --- /dev/null +++ b/test/snapshots/engine/examples_compilation_test/test_0006_doctype_compilation_8c18fb8399a2fd1e65b0333bc01e041c.txt @@ -0,0 +1,7 @@ +_buf = ::String.new; + _buf << ' + + + +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/examples_compilation_test/test_0007_erb_compilation_0109f6af5a474973b8b1b52636135c4f.txt b/test/snapshots/engine/examples_compilation_test/test_0007_erb_compilation_0109f6af5a474973b8b1b52636135c4f.txt new file mode 100644 index 000000000..ecc5919bf --- /dev/null +++ b/test/snapshots/engine/examples_compilation_test/test_0007_erb_compilation_0109f6af5a474973b8b1b52636135c4f.txt @@ -0,0 +1,8 @@ +_buf = ::String.new; + _buf << '
    +

    + '.freeze; _buf << (title).to_s; _buf << ' +

    +
    +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/examples_compilation_test/test_0008_for_compilation_eeecb969def01ab8005c7b9f23686fed.txt b/test/snapshots/engine/examples_compilation_test/test_0008_for_compilation_eeecb969def01ab8005c7b9f23686fed.txt new file mode 100644 index 000000000..465025a3e --- /dev/null +++ b/test/snapshots/engine/examples_compilation_test/test_0008_for_compilation_eeecb969def01ab8005c7b9f23686fed.txt @@ -0,0 +1,8 @@ +_buf = ::String.new; + names = ["Alice", "Bob", "John"]; _buf << ' + +'.freeze; for name in names; _buf << ' +

    Hello, '.freeze; _buf << (name).to_s; _buf << '!

    +'.freeze; end; _buf << ' +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/examples_compilation_test/test_0009_if_else_compilation_1437d0425640509570342c24b30de571.txt b/test/snapshots/engine/examples_compilation_test/test_0009_if_else_compilation_1437d0425640509570342c24b30de571.txt new file mode 100644 index 000000000..0da1ca593 --- /dev/null +++ b/test/snapshots/engine/examples_compilation_test/test_0009_if_else_compilation_1437d0425640509570342c24b30de571.txt @@ -0,0 +1,12 @@ +_buf = ::String.new; + _buf << '

    + '.freeze; if true; _buf << ' +
    Text1
    + '.freeze; elsif false; _buf << ' +
    Text2
    + '.freeze; else; _buf << ' +
    Text3
    + '.freeze; end; _buf << ' +

    +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/examples_compilation_test/test_0010_line_wrap_compilation_ba78b92bec7a4692a2043f2ba2ebe057.txt b/test/snapshots/engine/examples_compilation_test/test_0010_line_wrap_compilation_ba78b92bec7a4692a2043f2ba2ebe057.txt new file mode 100644 index 000000000..75c314801 --- /dev/null +++ b/test/snapshots/engine/examples_compilation_test/test_0010_line_wrap_compilation_ba78b92bec7a4692a2043f2ba2ebe057.txt @@ -0,0 +1,4 @@ +_buf = ::String.new; + _buf << '
    +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/examples_compilation_test/test_0011_link_to_with_block_compilation_4ddb2a17755d3e775e3225970bc60a96.txt b/test/snapshots/engine/examples_compilation_test/test_0011_link_to_with_block_compilation_4ddb2a17755d3e775e3225970bc60a96.txt new file mode 100644 index 000000000..2563b33cf --- /dev/null +++ b/test/snapshots/engine/examples_compilation_test/test_0011_link_to_with_block_compilation_4ddb2a17755d3e775e3225970bc60a96.txt @@ -0,0 +1,8 @@ +_buf = ::String.new; + _buf << link_to root_path do; _buf << ' +
    + Test +
    +'.freeze; end; _buf << ' +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/examples_compilation_test/test_0012_nested_if_and_blocks_compilation_aa8aed9ef61b138a28efed42f4b72251.txt b/test/snapshots/engine/examples_compilation_test/test_0012_nested_if_and_blocks_compilation_aa8aed9ef61b138a28efed42f4b72251.txt new file mode 100644 index 000000000..8429c876e --- /dev/null +++ b/test/snapshots/engine/examples_compilation_test/test_0012_nested_if_and_blocks_compilation_aa8aed9ef61b138a28efed42f4b72251.txt @@ -0,0 +1,33 @@ +_buf = ::String.new; + _buf << '
    + '.freeze; _buf << tag.div class: "div" do; _buf << ' + '.freeze; if Date.today.friday?; _buf << ' +

    + Happy + '.freeze; current_hour = Time.now.hour; _buf << ' + + '.freeze; if current_hour < 12; _buf << ' + Early Friday + '.freeze; elsif current_hour >= 18; _buf << ' + Late Friday + '.freeze; else; _buf << ' + Friday + '.freeze; end; _buf << ' +

    + '.freeze; elsif Date.today.saturday?; _buf << ' +

    + It\'s + Saturday + '.freeze; _buf << (" - Time to relax!").to_s; _buf << ' +

    + '.freeze; else; _buf << ' +

    + Oh no, it\'s + Not Friday + '.freeze; _buf << (" - Keep going!").to_s; _buf << ' +

    + '.freeze; end; _buf << ' + '.freeze; end; _buf << ' +
    +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/examples_compilation_test/test_0013_simple_block_compilation_1729fad3a77618acdc687c9fb671b75b.txt b/test/snapshots/engine/examples_compilation_test/test_0013_simple_block_compilation_1729fad3a77618acdc687c9fb671b75b.txt new file mode 100644 index 000000000..e16a482e3 --- /dev/null +++ b/test/snapshots/engine/examples_compilation_test/test_0013_simple_block_compilation_1729fad3a77618acdc687c9fb671b75b.txt @@ -0,0 +1,10 @@ +_buf = ::String.new; + tag.div do; _buf << ' + '.freeze; if true; _buf << ' + Hello1 + '.freeze; else; _buf << ' + Hello2 + '.freeze; end; _buf << ' +'.freeze; end; _buf << ' +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/examples_compilation_test/test_0014_simple_erb_compilation_d81de4ca83482c4836215ef7177d9eec.txt b/test/snapshots/engine/examples_compilation_test/test_0014_simple_erb_compilation_d81de4ca83482c4836215ef7177d9eec.txt new file mode 100644 index 000000000..4d37a513e --- /dev/null +++ b/test/snapshots/engine/examples_compilation_test/test_0014_simple_erb_compilation_d81de4ca83482c4836215ef7177d9eec.txt @@ -0,0 +1,4 @@ +_buf = ::String.new; + title; _buf << ' +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/examples_compilation_test/test_0015_test_compilation_9c22f391d1d03fa66b3d18095354a236.txt b/test/snapshots/engine/examples_compilation_test/test_0015_test_compilation_9c22f391d1d03fa66b3d18095354a236.txt new file mode 100644 index 000000000..cfc12a2e0 --- /dev/null +++ b/test/snapshots/engine/examples_compilation_test/test_0015_test_compilation_9c22f391d1d03fa66b3d18095354a236.txt @@ -0,0 +1,8 @@ +_buf = ::String.new; + _buf << ' + +

    + Hello World '.freeze; _buf << (RUBY_VERSION).to_s; _buf << ' +

    +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/examples_compilation_test/test_0016_until_compilation_0b1269c00fd15a74df125278ed6a9fc4.txt b/test/snapshots/engine/examples_compilation_test/test_0016_until_compilation_0b1269c00fd15a74df125278ed6a9fc4.txt new file mode 100644 index 000000000..ead6a8ac6 --- /dev/null +++ b/test/snapshots/engine/examples_compilation_test/test_0016_until_compilation_0b1269c00fd15a74df125278ed6a9fc4.txt @@ -0,0 +1,9 @@ +_buf = ::String.new; + i = 0; _buf << ' + +'.freeze; until i == 10; _buf << ' + '.freeze; _buf << (i).to_s; _buf << ' is less than 10 + '.freeze; i += 1; _buf << ' +'.freeze; end; _buf << ' +'.freeze; +_buf.to_s diff --git a/test/snapshots/engine/examples_compilation_test/test_0017_while_compilation_a705eb5ed83b4db368d7204baa136b36.txt b/test/snapshots/engine/examples_compilation_test/test_0017_while_compilation_a705eb5ed83b4db368d7204baa136b36.txt new file mode 100644 index 000000000..d69b46e3a --- /dev/null +++ b/test/snapshots/engine/examples_compilation_test/test_0017_while_compilation_a705eb5ed83b4db368d7204baa136b36.txt @@ -0,0 +1,7 @@ +_buf = ::String.new; + while i < 10; _buf << ' + '.freeze; _buf << (i).to_s; _buf << ' is less than 10 + '.freeze; i += 1; _buf << ' +'.freeze; end; _buf << ' +'.freeze; +_buf.to_s diff --git a/test/test_helper.rb b/test/test_helper.rb index 164c52243..709515114 100644 --- a/test/test_helper.rb +++ b/test/test_helper.rb @@ -7,8 +7,9 @@ require "maxitest/autorun" require "minitest/spec" -require_relative "fork_helper" if ENV["NO_TIMEOUT"].nil? +require "active_support/core_ext/string/output_safety" +require_relative "fork_helper" if ENV["NO_TIMEOUT"].nil? require_relative "snapshot_utils" Minitest::Spec::DSL.send(:alias_method, :test, :it) diff --git a/workspace.json b/workspace.json index 3613abc11..6bc040b07 100644 --- a/workspace.json +++ b/workspace.json @@ -3,6 +3,7 @@ "projects": { "@herb-tools/browser": "javascript/packages/browser", "@herb-tools/core": "javascript/packages/core", + "@herb-tools/dev-tools": "javascript/packages/dev-tools", "@herb-tools/formatter": "javascript/packages/formatter", "@herb-tools/highlighter": "javascript/packages/highlighter", "@herb-tools/language-server": "javascript/packages/language-server", diff --git a/yarn.lock b/yarn.lock index be99d6f15..2deee4ec1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4,204 +4,61 @@ "@alenaksu/json-viewer@^2.0.1": version "2.1.2" - resolved "https://registry.npmjs.org/@alenaksu/json-viewer/-/json-viewer-2.1.2.tgz" + resolved "https://registry.yarnpkg.com/@alenaksu/json-viewer/-/json-viewer-2.1.2.tgz#24299f41a057231e9190a4a08f2ae900f1629255" integrity sha512-hyR5EUc0GZMTjlSULJZlMzEYB896ICbCf1+5YLQRSAczGRWy42UWac5PcXM4spuyTkrEHHlOZBTVEq34f9+JVQ== dependencies: lit "^3.2.0" -"@algolia/autocomplete-core@1.17.9": - version "1.17.9" - resolved "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.17.9.tgz" - integrity sha512-O7BxrpLDPJWWHv/DLA9DRFWs+iY1uOJZkqUwjS5HSZAGcl0hIVCQ97LTLewiZmZ402JYUrun+8NqFP+hCknlbQ== - dependencies: - "@algolia/autocomplete-plugin-algolia-insights" "1.17.9" - "@algolia/autocomplete-shared" "1.17.9" - -"@algolia/autocomplete-plugin-algolia-insights@1.17.9": - version "1.17.9" - resolved "https://registry.npmjs.org/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.17.9.tgz" - integrity sha512-u1fEHkCbWF92DBeB/KHeMacsjsoI0wFhjZtlCq2ddZbAehshbZST6Hs0Avkc0s+4UyBGbMDnSuXHLuvRWK5iDQ== - dependencies: - "@algolia/autocomplete-shared" "1.17.9" - -"@algolia/autocomplete-preset-algolia@1.17.9": - version "1.17.9" - resolved "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.17.9.tgz" - integrity sha512-Na1OuceSJeg8j7ZWn5ssMu/Ax3amtOwk76u4h5J4eK2Nx2KB5qt0Z4cOapCsxot9VcEN11ADV5aUSlQF4RhGjQ== - dependencies: - "@algolia/autocomplete-shared" "1.17.9" - -"@algolia/autocomplete-shared@1.17.9": - version "1.17.9" - resolved "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.17.9.tgz" - integrity sha512-iDf05JDQ7I0b7JEA/9IektxN/80a2MZ1ToohfmNS3rfeuQnIKI3IJlIafD0xu4StbtQTghx9T3Maa97ytkXenQ== - -"@algolia/client-abtesting@5.25.0": - version "5.25.0" - resolved "https://registry.npmjs.org/@algolia/client-abtesting/-/client-abtesting-5.25.0.tgz" - integrity sha512-1pfQulNUYNf1Tk/svbfjfkLBS36zsuph6m+B6gDkPEivFmso/XnRgwDvjAx80WNtiHnmeNjIXdF7Gos8+OLHqQ== - dependencies: - "@algolia/client-common" "5.25.0" - "@algolia/requester-browser-xhr" "5.25.0" - "@algolia/requester-fetch" "5.25.0" - "@algolia/requester-node-http" "5.25.0" - -"@algolia/client-analytics@5.25.0": - version "5.25.0" - resolved "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-5.25.0.tgz" - integrity sha512-AFbG6VDJX/o2vDd9hqncj1B6B4Tulk61mY0pzTtzKClyTDlNP0xaUiEKhl6E7KO9I/x0FJF5tDCm0Hn6v5x18A== - dependencies: - "@algolia/client-common" "5.25.0" - "@algolia/requester-browser-xhr" "5.25.0" - "@algolia/requester-fetch" "5.25.0" - "@algolia/requester-node-http" "5.25.0" - -"@algolia/client-common@5.25.0": - version "5.25.0" - resolved "https://registry.npmjs.org/@algolia/client-common/-/client-common-5.25.0.tgz" - integrity sha512-il1zS/+Rc6la6RaCdSZ2YbJnkQC6W1wiBO8+SH+DE6CPMWBU6iDVzH0sCKSAtMWl9WBxoN6MhNjGBnCv9Yy2bA== - -"@algolia/client-insights@5.25.0": - version "5.25.0" - resolved "https://registry.npmjs.org/@algolia/client-insights/-/client-insights-5.25.0.tgz" - integrity sha512-blbjrUH1siZNfyCGeq0iLQu00w3a4fBXm0WRIM0V8alcAPo7rWjLbMJMrfBtzL9X5ic6wgxVpDADXduGtdrnkw== - dependencies: - "@algolia/client-common" "5.25.0" - "@algolia/requester-browser-xhr" "5.25.0" - "@algolia/requester-fetch" "5.25.0" - "@algolia/requester-node-http" "5.25.0" - -"@algolia/client-personalization@5.25.0": - version "5.25.0" - resolved "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-5.25.0.tgz" - integrity sha512-aywoEuu1NxChBcHZ1pWaat0Plw7A8jDMwjgRJ00Mcl7wGlwuPt5dJ/LTNcg3McsEUbs2MBNmw0ignXBw9Tbgow== - dependencies: - "@algolia/client-common" "5.25.0" - "@algolia/requester-browser-xhr" "5.25.0" - "@algolia/requester-fetch" "5.25.0" - "@algolia/requester-node-http" "5.25.0" - -"@algolia/client-query-suggestions@5.25.0": - version "5.25.0" - resolved "https://registry.npmjs.org/@algolia/client-query-suggestions/-/client-query-suggestions-5.25.0.tgz" - integrity sha512-a/W2z6XWKjKjIW1QQQV8PTTj1TXtaKx79uR3NGBdBdGvVdt24KzGAaN7sCr5oP8DW4D3cJt44wp2OY/fZcPAVA== - dependencies: - "@algolia/client-common" "5.25.0" - "@algolia/requester-browser-xhr" "5.25.0" - "@algolia/requester-fetch" "5.25.0" - "@algolia/requester-node-http" "5.25.0" - -"@algolia/client-search@5.25.0": - version "5.25.0" - resolved "https://registry.npmjs.org/@algolia/client-search/-/client-search-5.25.0.tgz" - integrity sha512-9rUYcMIBOrCtYiLX49djyzxqdK9Dya/6Z/8sebPn94BekT+KLOpaZCuc6s0Fpfq7nx5J6YY5LIVFQrtioK9u0g== - dependencies: - "@algolia/client-common" "5.25.0" - "@algolia/requester-browser-xhr" "5.25.0" - "@algolia/requester-fetch" "5.25.0" - "@algolia/requester-node-http" "5.25.0" - -"@algolia/ingestion@1.25.0": - version "1.25.0" - resolved "https://registry.npmjs.org/@algolia/ingestion/-/ingestion-1.25.0.tgz" - integrity sha512-jJeH/Hk+k17Vkokf02lkfYE4A+EJX+UgnMhTLR/Mb+d1ya5WhE+po8p5a/Nxb6lo9OLCRl6w3Hmk1TX1e9gVbQ== - dependencies: - "@algolia/client-common" "5.25.0" - "@algolia/requester-browser-xhr" "5.25.0" - "@algolia/requester-fetch" "5.25.0" - "@algolia/requester-node-http" "5.25.0" - -"@algolia/monitoring@1.25.0": - version "1.25.0" - resolved "https://registry.npmjs.org/@algolia/monitoring/-/monitoring-1.25.0.tgz" - integrity sha512-Ls3i1AehJ0C6xaHe7kK9vPmzImOn5zBg7Kzj8tRYIcmCWVyuuFwCIsbuIIz/qzUf1FPSWmw0TZrGeTumk2fqXg== - dependencies: - "@algolia/client-common" "5.25.0" - "@algolia/requester-browser-xhr" "5.25.0" - "@algolia/requester-fetch" "5.25.0" - "@algolia/requester-node-http" "5.25.0" - -"@algolia/recommend@5.25.0": - version "5.25.0" - resolved "https://registry.npmjs.org/@algolia/recommend/-/recommend-5.25.0.tgz" - integrity sha512-79sMdHpiRLXVxSjgw7Pt4R1aNUHxFLHiaTDnN2MQjHwJ1+o3wSseb55T9VXU4kqy3m7TUme3pyRhLk5ip/S4Mw== - dependencies: - "@algolia/client-common" "5.25.0" - "@algolia/requester-browser-xhr" "5.25.0" - "@algolia/requester-fetch" "5.25.0" - "@algolia/requester-node-http" "5.25.0" - -"@algolia/requester-browser-xhr@5.25.0": - version "5.25.0" - resolved "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-5.25.0.tgz" - integrity sha512-JLaF23p1SOPBmfEqozUAgKHQrGl3z/Z5RHbggBu6s07QqXXcazEsub5VLonCxGVqTv6a61AAPr8J1G5HgGGjEw== - dependencies: - "@algolia/client-common" "5.25.0" - -"@algolia/requester-fetch@5.25.0": - version "5.25.0" - resolved "https://registry.npmjs.org/@algolia/requester-fetch/-/requester-fetch-5.25.0.tgz" - integrity sha512-rtzXwqzFi1edkOF6sXxq+HhmRKDy7tz84u0o5t1fXwz0cwx+cjpmxu/6OQKTdOJFS92JUYHsG51Iunie7xbqfQ== - dependencies: - "@algolia/client-common" "5.25.0" - -"@algolia/requester-node-http@5.25.0": - version "5.25.0" - resolved "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-5.25.0.tgz" - integrity sha512-ZO0UKvDyEFvyeJQX0gmZDQEvhLZ2X10K+ps6hViMo1HgE2V8em00SwNsQ+7E/52a+YiBkVWX61pJJJE44juDMQ== - dependencies: - "@algolia/client-common" "5.25.0" - "@alloc/quick-lru@^5.2.0": version "5.2.0" resolved "https://registry.yarnpkg.com/@alloc/quick-lru/-/quick-lru-5.2.0.tgz#7bf68b20c0a350f936915fcae06f58e32007ce30" integrity sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw== -"@antfu/install-pkg@^1.0.0": +"@antfu/install-pkg@^1.1.0": version "1.1.0" - resolved "https://registry.npmjs.org/@antfu/install-pkg/-/install-pkg-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/@antfu/install-pkg/-/install-pkg-1.1.0.tgz#78fa036be1a6081b5a77a5cf59f50c7752b6ba26" integrity sha512-MGQsmw10ZyI+EJo45CdSER4zEb+p31LpDAFp2Z3gkSd1yqVZGi0Ebx++YTEMonJy4oChEMLsxZ64j8FH6sSqtQ== dependencies: package-manager-detector "^1.3.0" tinyexec "^1.0.1" -"@antfu/utils@^8.1.0": - version "8.1.1" - resolved "https://registry.npmjs.org/@antfu/utils/-/utils-8.1.1.tgz" - integrity sha512-Mex9nXf9vR6AhcXmMrlz/HVgYYZpVGJ6YlPgwl7UnaFpnshXs6EK/oa5Gpf3CzENMjkvEx2tQtntGnb7UtSTOQ== +"@antfu/utils@^9.2.0": + version "9.2.0" + resolved "https://registry.yarnpkg.com/@antfu/utils/-/utils-9.2.0.tgz#0f55b14d51408413dee17bbffb2cf06a0dd3f60b" + integrity sha512-Oq1d9BGZakE/FyoEtcNeSwM7MpDO2vUBi11RWBZXf75zPsbUVWmUs03EqkRFrcgbXyKTas0BdZWC1wcuSoqSAw== "@azu/format-text@^1.0.1", "@azu/format-text@^1.0.2": version "1.0.2" - resolved "https://registry.npmjs.org/@azu/format-text/-/format-text-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/@azu/format-text/-/format-text-1.0.2.tgz#abd46dab2422e312bd1bfe36f0d427ab6039825d" integrity sha512-Swi4N7Edy1Eqq82GxgEECXSSLyn6GOb5htRFPzBDdUkECGXtlf12ynO5oJSpWKPwCaUssOu7NfhDcCWpIC6Ywg== "@azu/style-format@^1.0.1": version "1.0.1" - resolved "https://registry.npmjs.org/@azu/style-format/-/style-format-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/@azu/style-format/-/style-format-1.0.1.tgz#b3643af0c5fee9d53e69a97c835c404bdc80f792" integrity sha512-AHcTojlNBdD/3/KxIKlg8sxIWHfOtQszLvOpagLTO+bjC3u7SAszu1lf//u7JJC50aUSH+BVWDD/KvaA6Gfn5g== dependencies: "@azu/format-text" "^1.0.1" "@azure/abort-controller@^2.0.0": version "2.1.2" - resolved "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.1.2.tgz" + resolved "https://registry.yarnpkg.com/@azure/abort-controller/-/abort-controller-2.1.2.tgz#42fe0ccab23841d9905812c58f1082d27784566d" integrity sha512-nBrLsEWm4J2u5LpAPjxADTlq3trDgVZZXHNKabeXZtpq3d3AbN/KGO82R87rdDz5/lYB024rtEf10/q0urNgsA== dependencies: tslib "^2.6.2" "@azure/core-auth@^1.4.0", "@azure/core-auth@^1.8.0", "@azure/core-auth@^1.9.0": - version "1.9.0" - resolved "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.9.0.tgz" - integrity sha512-FPwHpZywuyasDSLMqJ6fhbOK3TqUdviZNF8OqRGA4W5Ewib2lEEZ+pBsYcBa88B2NGO/SEnYPGhyBqNlE8ilSw== + version "1.10.0" + resolved "https://registry.yarnpkg.com/@azure/core-auth/-/core-auth-1.10.0.tgz#68dba7036080e1d9d5699c4e48214ab796fa73ad" + integrity sha512-88Djs5vBvGbHQHf5ZZcaoNHo6Y8BKZkt3cw2iuJIQzLEgH4Ox6Tm4hjFhbqOxyYsgIG/eJbFEHpxRIfEEWv5Ow== dependencies: "@azure/abort-controller" "^2.0.0" "@azure/core-util" "^1.11.0" tslib "^2.6.2" "@azure/core-client@^1.9.2": - version "1.9.4" - resolved "https://registry.npmjs.org/@azure/core-client/-/core-client-1.9.4.tgz" - integrity sha512-f7IxTD15Qdux30s2qFARH+JxgwxWLG2Rlr4oSkPGuLWm+1p5y1+C04XGLA0vmX6EtqfutmjvpNmAfgwVIS5hpw== + version "1.10.0" + resolved "https://registry.yarnpkg.com/@azure/core-client/-/core-client-1.10.0.tgz#9f4ec9c89a63516927840ae620c60e811a0b54a3" + integrity sha512-O4aP3CLFNodg8eTHXECaH3B3CjicfzkxVtnrfLkOq0XNP7TIECGfHpK/C6vADZkWP75wzmdBnsIA8ksuJMk18g== dependencies: "@azure/abort-controller" "^2.0.0" "@azure/core-auth" "^1.4.0" @@ -212,38 +69,38 @@ tslib "^2.6.2" "@azure/core-rest-pipeline@^1.17.0", "@azure/core-rest-pipeline@^1.20.0": - version "1.21.0" - resolved "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.21.0.tgz" - integrity sha512-a4MBwe/5WKbq9MIxikzgxLBbruC5qlkFYlBdI7Ev50Y7ib5Vo/Jvt5jnJo7NaWeJ908LCHL0S1Us4UMf1VoTfg== + version "1.22.0" + resolved "https://registry.yarnpkg.com/@azure/core-rest-pipeline/-/core-rest-pipeline-1.22.0.tgz#76e44a75093a2f477fc54b84f46049dc2ce65800" + integrity sha512-OKHmb3/Kpm06HypvB3g6Q3zJuvyXcpxDpCS1PnU8OV6AJgSFaee/covXBcPbWc6XDDxtEPlbi3EMQ6nUiPaQtw== dependencies: "@azure/abort-controller" "^2.0.0" "@azure/core-auth" "^1.8.0" "@azure/core-tracing" "^1.0.1" "@azure/core-util" "^1.11.0" "@azure/logger" "^1.0.0" - "@typespec/ts-http-runtime" "^0.2.3" + "@typespec/ts-http-runtime" "^0.3.0" tslib "^2.6.2" "@azure/core-tracing@^1.0.0", "@azure/core-tracing@^1.0.1": - version "1.2.0" - resolved "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.2.0.tgz" - integrity sha512-UKTiEJPkWcESPYJz3X5uKRYyOcJD+4nYph+KpfdPRnQJVrZfk0KJgdnaAWKfhsBBtAf/D58Az4AvCJEmWgIBAg== + version "1.3.0" + resolved "https://registry.yarnpkg.com/@azure/core-tracing/-/core-tracing-1.3.0.tgz#341153f5b2927539eb898577651ee48ce98dda25" + integrity sha512-+XvmZLLWPe67WXNZo9Oc9CrPj/Tm8QnHR92fFAFdnbzwNdCH1h+7UdpaQgRSBsMY+oW1kHXNUZQLdZ1gHX3ROw== dependencies: tslib "^2.6.2" "@azure/core-util@^1.11.0", "@azure/core-util@^1.6.1": - version "1.12.0" - resolved "https://registry.npmjs.org/@azure/core-util/-/core-util-1.12.0.tgz" - integrity sha512-13IyjTQgABPARvG90+N2dXpC+hwp466XCdQXPCRlbWHgd3SJd5Q1VvaBGv6k1BIa4MQm6hAF1UBU1m8QUxV8sQ== + version "1.13.0" + resolved "https://registry.yarnpkg.com/@azure/core-util/-/core-util-1.13.0.tgz#fc2834fc51e1e2bb74b70c284b40f824d867422a" + integrity sha512-o0psW8QWQ58fq3i24Q1K2XfS/jYTxr7O1HRcyUE9bV9NttLU+kYOH82Ixj8DGlMTOWgxm1Sss2QAfKK5UkSPxw== dependencies: "@azure/abort-controller" "^2.0.0" - "@typespec/ts-http-runtime" "^0.2.2" + "@typespec/ts-http-runtime" "^0.3.0" tslib "^2.6.2" "@azure/identity@^4.1.0": - version "4.10.1" - resolved "https://registry.npmjs.org/@azure/identity/-/identity-4.10.1.tgz" - integrity sha512-YM/z6RxRtFlXUH2egAYF/FDPes+MUE6ZoknjEdaq7ebJMMNUzn9zCJ3bd2ZZZlkP0r1xKa88kolhFH/FGV7JnA== + version "4.11.1" + resolved "https://registry.yarnpkg.com/@azure/identity/-/identity-4.11.1.tgz#19ba5b7601ae4f2ded010c55ca55200ffa6c79ec" + integrity sha512-0ZdsLRaOyLxtCYgyuqyWqGU5XQ9gGnjxgfoNTt1pvELGkkUFrMATABZFIq8gusM7N1qbqpVtwLOhk0d/3kacLg== dependencies: "@azure/abort-controller" "^2.0.0" "@azure/core-auth" "^1.9.0" @@ -258,44 +115,35 @@ tslib "^2.2.0" "@azure/logger@^1.0.0": - version "1.2.0" - resolved "https://registry.npmjs.org/@azure/logger/-/logger-1.2.0.tgz" - integrity sha512-0hKEzLhpw+ZTAfNJyRrn6s+V0nDWzXk9OjBr2TiGIu0OfMr5s2V4FpKLTAK3Ca5r5OKLbf4hkOGDPyiRjie/jA== + version "1.3.0" + resolved "https://registry.yarnpkg.com/@azure/logger/-/logger-1.3.0.tgz#5501cf85d4f52630602a8cc75df76568c969a827" + integrity sha512-fCqPIfOcLE+CGqGPd66c8bZpwAji98tZ4JI9i/mlTNTlsIWslCfpg48s/ypyLxZTump5sypjrKn2/kY7q8oAbA== dependencies: - "@typespec/ts-http-runtime" "^0.2.2" + "@typespec/ts-http-runtime" "^0.3.0" tslib "^2.6.2" "@azure/msal-browser@^4.2.0": - version "4.13.2" - resolved "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-4.13.2.tgz" - integrity sha512-lS75bF6FYZRwsacKLXc8UYu/jb+gOB7dtZq5938chCvV/zKTFDnzuXxCXhsSUh0p8s/P8ztgbfdueD9lFARQlQ== + version "4.21.1" + resolved "https://registry.yarnpkg.com/@azure/msal-browser/-/msal-browser-4.21.1.tgz#6e0f29a14a7540fb3bcba34fc7deb995670a9532" + integrity sha512-qGtzX3HJfJsOVeDcVrFZAYZoxLRjrW2lXzXqijgiBA5EtM9ud7F/EYgKKQ9TJU/WtE46szuZtQZx5vD4pEiknA== dependencies: - "@azure/msal-common" "15.7.1" + "@azure/msal-common" "15.12.0" -"@azure/msal-common@15.7.1": - version "15.7.1" - resolved "https://registry.npmjs.org/@azure/msal-common/-/msal-common-15.7.1.tgz" - integrity sha512-a0eowoYfRfKZEjbiCoA5bPT3IlWRAdGSvi63OU23Hv+X6EI8gbvXCoeqokUceFMoT9NfRUWTJSx5FiuzruqT8g== +"@azure/msal-common@15.12.0": + version "15.12.0" + resolved "https://registry.yarnpkg.com/@azure/msal-common/-/msal-common-15.12.0.tgz#5c30a05b4396e2dbbc35d27bd9bb636d44ccb00e" + integrity sha512-4ucXbjVw8KJ5QBgnGJUeA07c8iznwlk5ioHIhI4ASXcXgcf2yRFhWzYOyWg/cI49LC9ekpFJeQtO3zjDTbl6TQ== "@azure/msal-node@^3.5.0": - version "3.6.1" - resolved "https://registry.npmjs.org/@azure/msal-node/-/msal-node-3.6.1.tgz" - integrity sha512-ctcVz4xS+st5KxOlQqgpvA+uDFAa59CvkmumnuhlD2XmNczloKBdCiMQG7/TigSlaeHe01qoOlDjz3TyUAmKUg== + version "3.7.3" + resolved "https://registry.yarnpkg.com/@azure/msal-node/-/msal-node-3.7.3.tgz#c6c8e11c08e36a5e347af9ba7bd6e4a6b8c536a5" + integrity sha512-MoJxkKM/YpChfq4g2o36tElyzNUMG8mfD6u8NbuaPAsqfGpaw249khAcJYNoIOigUzRw45OjXCOrexE6ImdUxg== dependencies: - "@azure/msal-common" "15.7.1" + "@azure/msal-common" "15.12.0" jsonwebtoken "^9.0.0" uuid "^8.3.0" "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.26.2": - version "7.26.2" - resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz" - integrity sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ== - dependencies: - "@babel/helper-validator-identifier" "^7.25.9" - js-tokens "^4.0.0" - picocolors "^1.0.0" - -"@babel/code-frame@^7.21.4": version "7.27.1" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.27.1.tgz#200f715e66d52a23b221a9435534a91cc13ad5be" integrity sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg== @@ -306,83 +154,68 @@ "@babel/helper-string-parser@^7.27.1": version "7.27.1" - resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz#54da796097ab19ce67ed9f88b47bb2ec49367687" integrity sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA== -"@babel/helper-validator-identifier@^7.25.9", "@babel/helper-validator-identifier@^7.27.1": +"@babel/helper-validator-identifier@^7.27.1": version "7.27.1" - resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz#a7054dcc145a967dd4dc8fee845a57c1316c9df8" integrity sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow== -"@babel/parser@^7.27.2": - version "7.27.4" - resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.27.4.tgz" - integrity sha512-BRmLHGwpUqLFR2jzx9orBuX/ABDkj2jLKOXrHDTN2aOKL+jFDDKaRNo9nyYsIl9h/UE/7lMKdDjKQQyxKKDZ7g== +"@babel/parser@^7.28.3": + version "7.28.3" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.28.3.tgz#d2d25b814621bca5fe9d172bc93792547e7a2a71" + integrity sha512-7+Ey1mAgYqFAx2h0RuoxcQT5+MlG3GTV0TQrgr7/ZliKsm/MNDxVVutlWaziMq7wJNAz8MTqz55XLpWvva6StA== dependencies: - "@babel/types" "^7.27.3" + "@babel/types" "^7.28.2" "@babel/runtime@^7.12.5": - version "7.26.9" - resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.9.tgz" - integrity sha512-aA63XwOkcl4xxQa3HjPMqOP6LiK0ZDv3mUPYEFXkpHbaFjtGggE1A61FjFzJnB+p7/oy2gA8E+rcBNl/zC1tMg== - dependencies: - regenerator-runtime "^0.14.0" + version "7.28.3" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.28.3.tgz#75c5034b55ba868121668be5d5bb31cc64e6e61a" + integrity sha512-9uIQ10o0WGdpP6GDhXcdOJPJuDgFtIDtN/9+ArJQ2NAfAmiuhTQdzkaTGR33v43GYS2UrSA0eX2pPPHoFVvpxA== -"@babel/types@^7.27.3": - version "7.27.3" - resolved "https://registry.npmjs.org/@babel/types/-/types-7.27.3.tgz" - integrity sha512-Y1GkI4ktrtvmawoSq+4FCVHNryea6uR+qUQy0AGxLSsjCX0nVmkYQMBLHDkXZuo5hGx7eYdnIaslsdBFm7zbUw== +"@babel/types@^7.28.2": + version "7.28.2" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.28.2.tgz#da9db0856a9a88e0a13b019881d7513588cf712b" + integrity sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ== dependencies: "@babel/helper-string-parser" "^7.27.1" "@babel/helper-validator-identifier" "^7.27.1" "@bcoe/v8-coverage@^0.2.3": version "0.2.3" - resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz" + resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@docsearch/css@3.9.0", "@docsearch/css@^3.9.0": - version "3.9.0" - resolved "https://registry.npmjs.org/@docsearch/css/-/css-3.9.0.tgz" - integrity sha512-cQbnVbq0rrBwNAKegIac/t6a8nWoUAn8frnkLFW6YARaRmAQr5/Eoe6Ln2fqkUCZ40KpdrKbpSAmgrkviOxuWA== +"@docsearch/css@^4.0.0-beta.7": + version "4.0.0-beta.8" + resolved "https://registry.yarnpkg.com/@docsearch/css/-/css-4.0.0-beta.8.tgz#836ac7c3eeecf87cfc9c518210f4dfd27e49b05f" + integrity sha512-/ZlyvZCjIJM4aaOYoJpVNHPJckX7J5KIbt6IWjnZXvo0QAUI1aH976vKEJUC9olgUbE3LWafB8yuX4qoqahIQg== -"@docsearch/js@^3.9.0": - version "3.9.0" - resolved "https://registry.npmjs.org/@docsearch/js/-/js-3.9.0.tgz" - integrity sha512-4bKHcye6EkLgRE8ze0vcdshmEqxeiJM77M0JXjef7lrYZfSlMunrDOCqyLjiZyo1+c0BhUqA2QpFartIjuHIjw== - dependencies: - "@docsearch/react" "3.9.0" - preact "^10.0.0" - -"@docsearch/react@3.9.0": - version "3.9.0" - resolved "https://registry.npmjs.org/@docsearch/react/-/react-3.9.0.tgz" - integrity sha512-mb5FOZYZIkRQ6s/NWnM98k879vu5pscWqTLubLFBO87igYYT4VzVazh4h5o/zCvTIZgEt3PvsCOMOswOUo9yHQ== - dependencies: - "@algolia/autocomplete-core" "1.17.9" - "@algolia/autocomplete-preset-algolia" "1.17.9" - "@docsearch/css" "3.9.0" - algoliasearch "^5.14.2" +"@docsearch/js@^4.0.0-beta.7": + version "4.0.0-beta.8" + resolved "https://registry.yarnpkg.com/@docsearch/js/-/js-4.0.0-beta.8.tgz#eca030c793fad34487c0c1c9147112544edb02bc" + integrity sha512-elgqPYpykRQr5MlfqoO8U2uC3BcPgjUQhzmHt/H4lSzP7khJ9Jpv/cCB4tiZreXb6GkdRgWr5csiItNq6jjnhg== "@emnapi/core@^1.1.0": - version "1.3.1" - resolved "https://registry.npmjs.org/@emnapi/core/-/core-1.3.1.tgz" - integrity sha512-pVGjBIt1Y6gg3EJN8jTcfpP/+uuRksIo055oE/OBkDNcjZqVbfkWCksG1Jp4yZnj3iKWyWX8fdG/j6UDYPbFog== + version "1.5.0" + resolved "https://registry.yarnpkg.com/@emnapi/core/-/core-1.5.0.tgz#85cd84537ec989cebb2343606a1ee663ce4edaf0" + integrity sha512-sbP8GzB1WDzacS8fgNPpHlp6C9VZe+SJP3F90W9rLemaQj2PzIuTEl1qDOYQf58YIpyjViI24y9aPWCjEzY2cg== dependencies: - "@emnapi/wasi-threads" "1.0.1" + "@emnapi/wasi-threads" "1.1.0" tslib "^2.4.0" "@emnapi/runtime@^1.1.0": - version "1.3.1" - resolved "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.3.1.tgz" - integrity sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw== + version "1.5.0" + resolved "https://registry.yarnpkg.com/@emnapi/runtime/-/runtime-1.5.0.tgz#9aebfcb9b17195dce3ab53c86787a6b7d058db73" + integrity sha512-97/BJ3iXHww3djw6hYIfErCZFee7qCtrneuLa20UXFCOTCfBM2cvQHjWJ2EG0s0MtdNwInarqCTz35i4wWXHsQ== dependencies: tslib "^2.4.0" -"@emnapi/wasi-threads@1.0.1": - version "1.0.1" - resolved "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.0.1.tgz" - integrity sha512-iIBu7mwkq4UQGeMEM8bLwNK962nXdhodeScX4slfQnRhEMMzvYivHhutCIk8uojvmASXXPC2WNEjwxFWk72Oqw== +"@emnapi/wasi-threads@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz#60b2102fddc9ccb78607e4a3cf8403ea69be41bf" + integrity sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ== dependencies: tslib "^2.4.0" @@ -633,14 +466,14 @@ "@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.7.0": version "4.7.0" - resolved "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz" + resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz#607084630c6c033992a082de6e6fbc1a8b52175a" integrity sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw== dependencies: eslint-visitor-keys "^3.4.3" "@eslint-community/regexpp@^4.10.0", "@eslint-community/regexpp@^4.12.1": version "4.12.1" - resolved "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz" + resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.12.1.tgz#cfc6cffe39df390a3841cde2abccf92eaa7ae0e0" integrity sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ== "@eslint/config-array@^0.21.0": @@ -652,28 +485,21 @@ debug "^4.3.1" minimatch "^3.1.2" -"@eslint/config-helpers@^0.3.0": - version "0.3.0" - resolved "https://registry.yarnpkg.com/@eslint/config-helpers/-/config-helpers-0.3.0.tgz#3e09a90dfb87e0005c7694791e58e97077271286" - integrity sha512-ViuymvFmcJi04qdZeDc2whTHryouGcDlaxPqarTD0ZE10ISpxGUVZGZDx4w01upyIynL3iu6IXH2bS1NhclQMw== - -"@eslint/core@^0.14.0": - version "0.14.0" - resolved "https://registry.npmjs.org/@eslint/core/-/core-0.14.0.tgz" - integrity sha512-qIbV0/JZr7iSDjqAc60IqbLdsj9GDt16xQtWD+B78d/HAlvysGdZZ6rpJHGAc2T0FQx1X6thsSPdnoiGKdNtdg== - dependencies: - "@types/json-schema" "^7.0.15" +"@eslint/config-helpers@^0.3.1": + version "0.3.1" + resolved "https://registry.yarnpkg.com/@eslint/config-helpers/-/config-helpers-0.3.1.tgz#d316e47905bd0a1a931fa50e669b9af4104d1617" + integrity sha512-xR93k9WhrDYpXHORXpxVL5oHj3Era7wo6k/Wd8/IsQNnZUTzkGS29lyn3nAT05v6ltUuTFVCCYDEGfy2Or/sPA== -"@eslint/core@^0.15.1": - version "0.15.1" - resolved "https://registry.yarnpkg.com/@eslint/core/-/core-0.15.1.tgz#d530d44209cbfe2f82ef86d6ba08760196dd3b60" - integrity sha512-bkOp+iumZCCbt1K1CmWf0R9pM5yKpDv+ZXtvSyQpudrI9kuFLp+bM2WOPXImuD/ceQuaa8f5pj93Y7zyECIGNA== +"@eslint/core@^0.15.2": + version "0.15.2" + resolved "https://registry.yarnpkg.com/@eslint/core/-/core-0.15.2.tgz#59386327d7862cc3603ebc7c78159d2dcc4a868f" + integrity sha512-78Md3/Rrxh83gCxoUc0EiciuOHsIITzLy53m3d9UyiW8y9Dj2D29FeETqyKA+BRK76tnTp6RXWb3pCay8Oyomg== dependencies: "@types/json-schema" "^7.0.15" "@eslint/eslintrc@^3.3.1": version "3.3.1" - resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-3.3.1.tgz#e55f7f1dd400600dd066dbba349c4c0bac916964" integrity sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ== dependencies: ajv "^6.12.4" @@ -686,42 +512,52 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@eslint/js@9.30.1": - version "9.30.1" - resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.30.1.tgz#ebe9dd52a38345784c486300175a28c6013c088d" - integrity sha512-zXhuECFlyep42KZUhWjfvsmXGX39W8K8LFb8AWXM9gSV9dQB+MrJGLKvW6Zw0Ggnbpw0VHTtrhFXYe3Gym18jg== +"@eslint/js@9.34.0": + version "9.34.0" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.34.0.tgz#fc423168b9d10e08dea9088d083788ec6442996b" + integrity sha512-EoyvqQnBNsV1CWaEJ559rxXL4c8V92gxirbawSmVUOWXlsRxxQXl6LmCpdUblgxgSkDIqKnhzba2SjRTI/A5Rw== "@eslint/object-schema@^2.1.6": version "2.1.6" - resolved "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz" + resolved "https://registry.yarnpkg.com/@eslint/object-schema/-/object-schema-2.1.6.tgz#58369ab5b5b3ca117880c0f6c0b0f32f6950f24f" integrity sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA== -"@eslint/plugin-kit@^0.3.1": - version "0.3.4" - resolved "https://registry.yarnpkg.com/@eslint/plugin-kit/-/plugin-kit-0.3.4.tgz#c6b9f165e94bf4d9fdd493f1c028a94aaf5fc1cc" - integrity sha512-Ul5l+lHEcw3L5+k8POx6r74mxEYKG5kOb6Xpy2gCRW6zweT6TEhAf8vhxGgjhqrd/VO/Dirhsb+1hNpD1ue9hw== +"@eslint/plugin-kit@^0.3.5": + version "0.3.5" + resolved "https://registry.yarnpkg.com/@eslint/plugin-kit/-/plugin-kit-0.3.5.tgz#fd8764f0ee79c8ddab4da65460c641cefee017c5" + integrity sha512-Z5kJ+wU3oA7MMIqVR9tyZRtjYPr4OC004Q4Rw7pgOKUOKkJfZ3O24nz3WYfGRpMDNmcOi3TwQOmgm7B7Tpii0w== dependencies: - "@eslint/core" "^0.15.1" + "@eslint/core" "^0.15.2" levn "^0.4.1" "@floating-ui/core@^1.1.0": - version "1.6.9" - resolved "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.9.tgz" - integrity sha512-uMXCuQ3BItDUbAMhIXw7UPXRfAlOAvZzdK9BWpE60MCn+Svt3aLn9jsPTi/WNGlRUu2uI0v5S7JiIUsbsvh3fw== + version "1.7.3" + resolved "https://registry.yarnpkg.com/@floating-ui/core/-/core-1.7.3.tgz#462d722f001e23e46d86fd2bd0d21b7693ccb8b7" + integrity sha512-sGnvb5dmrJaKEZ+LDIpguvdX3bDlEllmv4/ClQ9awcmCZrlx5jQyyMWFM5kBI+EyNOCDDiKk8il0zeuX3Zlg/w== dependencies: - "@floating-ui/utils" "^0.2.9" + "@floating-ui/utils" "^0.2.10" "@floating-ui/dom@~1.1.1": version "1.1.1" - resolved "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/@floating-ui/dom/-/dom-1.1.1.tgz#66aa747e15894910869bf9144fc54fc7d6e9f975" integrity sha512-TpIO93+DIujg3g7SykEAGZMDtbJRrmnYRCNYSjJlvIbGhBjRSNTLVbNeDQBrzy9qDgUbiWdc7KA0uZHZ2tJmiw== dependencies: "@floating-ui/core" "^1.1.0" -"@floating-ui/utils@^0.2.9": - version "0.2.9" - resolved "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.9.tgz" - integrity sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg== +"@floating-ui/utils@^0.2.10": + version "0.2.10" + resolved "https://registry.yarnpkg.com/@floating-ui/utils/-/utils-0.2.10.tgz#a2a1e3812d14525f725d011a73eceb41fef5bc1c" + integrity sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ== + +"@herb-tools/node@0.6.1": + version "0.6.1" + resolved "https://registry.yarnpkg.com/@herb-tools/node/-/node-0.6.1.tgz#90f14130a3ba141a1bf25a63b28c4914c7caf53c" + integrity sha512-iXJJpbLik9Eb1tIGwj54jQ1yjeZtV7udElWT96WDEar/HT7y7ICQc3VmrEGiW35rVAvlNBa+v/MhJsgZgF893w== + dependencies: + "@herb-tools/core" "0.6.1" + "@mapbox/node-pre-gyp" "^2.0.0" + node-addon-api "^5.1.0" + node-pre-gyp-github "^2.0.0" "@hotwired/stimulus-webpack-helpers@^1.0.1": version "1.0.1" @@ -730,17 +566,17 @@ "@hotwired/stimulus@^3.2.2": version "3.2.2" - resolved "https://registry.npmjs.org/@hotwired/stimulus/-/stimulus-3.2.2.tgz" + resolved "https://registry.yarnpkg.com/@hotwired/stimulus/-/stimulus-3.2.2.tgz#071aab59c600fed95b97939e605ff261a4251608" integrity sha512-eGeIqNOQpXoPAIP7tC1+1Yc1yl1xnwYqg+3mzqxyrbE5pg5YFBZcA6YoTiByJB6DKAEsiWtl6tjTJS4IYtbB7A== "@humanfs/core@^0.19.1": version "0.19.1" - resolved "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz" + resolved "https://registry.yarnpkg.com/@humanfs/core/-/core-0.19.1.tgz#17c55ca7d426733fe3c561906b8173c336b40a77" integrity sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA== "@humanfs/node@^0.16.6": version "0.16.6" - resolved "https://registry.npmjs.org/@humanfs/node/-/node-0.16.6.tgz" + resolved "https://registry.yarnpkg.com/@humanfs/node/-/node-0.16.6.tgz#ee2a10eaabd1131987bf0488fd9b820174cd765e" integrity sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw== dependencies: "@humanfs/core" "^0.19.1" @@ -748,79 +584,79 @@ "@humanwhocodes/module-importer@^1.0.1": version "1.0.1" - resolved "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== "@humanwhocodes/retry@^0.3.0": version "0.3.1" - resolved "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz" + resolved "https://registry.yarnpkg.com/@humanwhocodes/retry/-/retry-0.3.1.tgz#c72a5c76a9fbaf3488e231b13dc52c0da7bab42a" integrity sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA== "@humanwhocodes/retry@^0.4.2": version "0.4.3" - resolved "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz" + resolved "https://registry.yarnpkg.com/@humanwhocodes/retry/-/retry-0.4.3.tgz#c2b9d2e374ee62c586d3adbea87199b1d7a7a6ba" integrity sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ== "@iconify-json/logos@^1.2.4": - version "1.2.4" - resolved "https://registry.npmjs.org/@iconify-json/logos/-/logos-1.2.4.tgz" - integrity sha512-XC4If5D/hbaZvUkTV8iaZuGlQCyG6CNOlaAaJaGa13V5QMYwYjgtKk3vPP8wz3wtTVNVEVk3LRx1fOJz+YnSMw== + version "1.2.9" + resolved "https://registry.yarnpkg.com/@iconify-json/logos/-/logos-1.2.9.tgz#cf148ae5443f217a6a8dd8c9fe188adcee69d05f" + integrity sha512-G6VCdFnwZcrT6Eveq3m43oJfLw/CX8plwFcE+2jgv3fiGB64pTmnU7Yd1MNZ/eA+/Re2iEDhuCfSNOWTHwwK8w== dependencies: "@iconify/types" "*" -"@iconify-json/simple-icons@^1.2.32": - version "1.2.36" - resolved "https://registry.npmjs.org/@iconify-json/simple-icons/-/simple-icons-1.2.36.tgz" - integrity sha512-ZMpVdoW/7hhbt2aHVSvudjH8eSVNNjKkAAjwAQHgiuPUiIfbvNakVin+H9uhUz4N9TbDT/nanzV/4Slb+6dDXw== +"@iconify-json/simple-icons@^1.2.47": + version "1.2.49" + resolved "https://registry.yarnpkg.com/@iconify-json/simple-icons/-/simple-icons-1.2.49.tgz#2465a3d7e24d32b57dd3ce873914417af6e6dbea" + integrity sha512-nRLwrHzz+cTAQYBNQrcr4eWOmQIcHObTj/QSi7nj0SFwVh5MvBsgx8OhoDC/R8iGklNmMpmoE/NKU0cPXMlOZw== dependencies: "@iconify/types" "*" -"@iconify-json/vscode-icons@^1.2.18": - version "1.2.22" - resolved "https://registry.npmjs.org/@iconify-json/vscode-icons/-/vscode-icons-1.2.22.tgz" - integrity sha512-qQ+2q3E7ULfDreFOspoYKcGJ76o0/D7wZiBt5g8wco9v+Qq6JDH3z2YNoM/36zzAqRnhVEIs5A9sdZeAJeJUwA== +"@iconify-json/vscode-icons@^1.2.29": + version "1.2.30" + resolved "https://registry.yarnpkg.com/@iconify-json/vscode-icons/-/vscode-icons-1.2.30.tgz#fbbd58a4c9461d992d7749ff0b9911bd3978ef43" + integrity sha512-dlTOc8w4a8/QNumZzMve+APJa6xQVXPZwo8qBk/MaYfY42NPrQT83QXkbTWKDkuEu/xgHPXvKZZBL7Yy12vYQw== dependencies: "@iconify/types" "*" "@iconify/types@*", "@iconify/types@^2.0.0": version "2.0.0" - resolved "https://registry.npmjs.org/@iconify/types/-/types-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/@iconify/types/-/types-2.0.0.tgz#ab0e9ea681d6c8a1214f30cd741fe3a20cc57f57" integrity sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg== -"@iconify/utils@^2.3.0": - version "2.3.0" - resolved "https://registry.npmjs.org/@iconify/utils/-/utils-2.3.0.tgz" - integrity sha512-GmQ78prtwYW6EtzXRU1rY+KwOKfz32PD7iJh6Iyqw68GiKuoZ2A6pRtzWONz5VQJbp50mEjXh/7NkumtrAgRKA== +"@iconify/utils@^3.0.0": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@iconify/utils/-/utils-3.0.1.tgz#6c8e157b93f3952c32f4aafedf624509e63b7b0f" + integrity sha512-A78CUEnFGX8I/WlILxJCuIJXloL0j/OJ9PSchPAfCargEIKmUBWvvEMmKWB5oONwiUqlNt+5eRufdkLxeHIWYw== dependencies: - "@antfu/install-pkg" "^1.0.0" - "@antfu/utils" "^8.1.0" + "@antfu/install-pkg" "^1.1.0" + "@antfu/utils" "^9.2.0" "@iconify/types" "^2.0.0" - debug "^4.4.0" - globals "^15.14.0" + debug "^4.4.1" + globals "^15.15.0" kolorist "^1.8.0" - local-pkg "^1.0.0" + local-pkg "^1.1.1" mlly "^1.7.4" "@inquirer/figures@^1.0.3": - version "1.0.12" - resolved "https://registry.npmjs.org/@inquirer/figures/-/figures-1.0.12.tgz" - integrity sha512-MJttijd8rMFcKJC8NYmprWr6hD3r9Gd9qUC0XwPNwoEPWSMVJwA2MlXxF+nhZZNMY+HXsWa+o7KY2emWYIn0jQ== + version "1.0.13" + resolved "https://registry.yarnpkg.com/@inquirer/figures/-/figures-1.0.13.tgz#ad0afd62baab1c23175115a9b62f511b6a751e45" + integrity sha512-lGPVU3yO9ZNqA7vTYz26jny41lE7yoQansmqdMLBEfqaGsmdg7V3W9mK9Pvb5IL4EVZ9GnSDGMO/cJXud5dMaw== "@isaacs/balanced-match@^4.0.1": version "4.0.1" - resolved "https://registry.npmjs.org/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz" + resolved "https://registry.yarnpkg.com/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz#3081dadbc3460661b751e7591d7faea5df39dd29" integrity sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ== "@isaacs/brace-expansion@^5.0.0": version "5.0.0" - resolved "https://registry.npmjs.org/@isaacs/brace-expansion/-/brace-expansion-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/@isaacs/brace-expansion/-/brace-expansion-5.0.0.tgz#4b3dabab7d8e75a429414a96bd67bf4c1d13e0f3" integrity sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA== dependencies: "@isaacs/balanced-match" "^4.0.1" "@isaacs/cliui@^8.0.2": version "8.0.2" - resolved "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz" + resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550" integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA== dependencies: string-width "^5.1.2" @@ -832,24 +668,24 @@ "@isaacs/fs-minipass@^4.0.0": version "4.0.1" - resolved "https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz" + resolved "https://registry.yarnpkg.com/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz#2d59ae3ab4b38fb4270bfa23d30f8e2e86c7fe32" integrity sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w== dependencies: minipass "^7.0.4" "@isaacs/string-locale-compare@^1.1.0": version "1.1.0" - resolved "https://registry.npmjs.org/@isaacs/string-locale-compare/-/string-locale-compare-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/@isaacs/string-locale-compare/-/string-locale-compare-1.1.0.tgz#291c227e93fd407a96ecd59879a35809120e432b" integrity sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ== "@istanbuljs/schema@^0.1.2", "@istanbuljs/schema@^0.1.3": version "0.1.3" - resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz" + resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== "@jest/schemas@^29.6.3": version "29.6.3" - resolved "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz" + resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03" integrity sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA== dependencies: "@sinclair/typebox" "^0.27.8" @@ -859,63 +695,58 @@ resolved "https://github.com/jothepro/doxygen-awesome-css#568f56cde6ac78b6dfcc14acd380b2e745c301ea" "@jridgewell/gen-mapping@^0.3.2": - version "0.3.12" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.12.tgz#2234ce26c62889f03db3d7fea43c1932ab3e927b" - integrity sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg== + version "0.3.13" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz#6342a19f44347518c93e43b1ac69deb3c4656a1f" + integrity sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA== dependencies: "@jridgewell/sourcemap-codec" "^1.5.0" "@jridgewell/trace-mapping" "^0.3.24" "@jridgewell/resolve-uri@^3.1.0": version "3.1.2" - resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== -"@jridgewell/sourcemap-codec@^1.4.14": - version "1.5.0" - resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz" - integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ== - -"@jridgewell/sourcemap-codec@^1.5.0": +"@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.5.0", "@jridgewell/sourcemap-codec@^1.5.5": version "1.5.5" resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz#6912b00d2c631c0d15ce1a7ab57cd657f2a8f8ba" integrity sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og== "@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.24": - version "0.3.25" - resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz" - integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== + version "0.3.30" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.30.tgz#4a76c4daeee5df09f5d3940e087442fb36ce2b99" + integrity sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q== dependencies: "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" "@kwsites/file-exists@^1.1.1": version "1.1.1" - resolved "https://registry.npmjs.org/@kwsites/file-exists/-/file-exists-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/@kwsites/file-exists/-/file-exists-1.1.1.tgz#ad1efcac13e1987d8dbaf235ef3be5b0d96faa99" integrity sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw== dependencies: debug "^4.1.1" "@kwsites/promise-deferred@^1.1.1": version "1.1.1" - resolved "https://registry.npmjs.org/@kwsites/promise-deferred/-/promise-deferred-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/@kwsites/promise-deferred/-/promise-deferred-1.1.1.tgz#8ace5259254426ccef57f3175bc64ed7095ed919" integrity sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw== -"@lit-labs/ssr-dom-shim@^1.2.0": - version "1.3.0" - resolved "https://registry.npmjs.org/@lit-labs/ssr-dom-shim/-/ssr-dom-shim-1.3.0.tgz" - integrity sha512-nQIWonJ6eFAvUUrSlwyHDm/aE8PBDu5kRpL0vHMg6K8fK3Diq1xdPjTnsJSwxABhaZ+5eBi1btQB5ShUTKo4nQ== +"@lit-labs/ssr-dom-shim@^1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@lit-labs/ssr-dom-shim/-/ssr-dom-shim-1.4.0.tgz#55eb80ab5ef6e188f7e541c1e2bea1ef582413b8" + integrity sha512-ficsEARKnmmW5njugNYKipTm4SFnbik7CXtoencDZzmzo/dQ+2Q0bgkzJuoJP20Aj0F+izzJjOqsnkd6F/o1bw== -"@lit/reactive-element@^2.0.4": - version "2.0.4" - resolved "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-2.0.4.tgz" - integrity sha512-GFn91inaUa2oHLak8awSIigYz0cU0Payr1rcFsrkf5OJ5eSPxElyZfKh0f2p9FsTiZWXQdWGJeXZICEfXXYSXQ== +"@lit/reactive-element@^2.1.0": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@lit/reactive-element/-/reactive-element-2.1.1.tgz#0662ac4a43d4898974aef9a6c5cd47b9e331919a" + integrity sha512-N+dm5PAYdQ8e6UlywyyrgI2t++wFGXfHx+dSJ1oBrg6FAxUj40jId++EaRm80MKX5JnlH1sBsyZ5h0bcZKemCg== dependencies: - "@lit-labs/ssr-dom-shim" "^1.2.0" + "@lit-labs/ssr-dom-shim" "^1.4.0" "@mapbox/node-pre-gyp@^2.0.0": version "2.0.0" - resolved "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/@mapbox/node-pre-gyp/-/node-pre-gyp-2.0.0.tgz#16d1d9049c0218820da81a12ae084e7fe67790d1" integrity sha512-llMXd39jtP0HpQLVI37Bf1m2ADlEb35GYSh1SDSLsBhR+5iCxiNGlT31yqbNtVHygHAtMy6dWFERpU2JgufhPg== dependencies: consola "^3.2.3" @@ -928,7 +759,7 @@ "@napi-rs/wasm-runtime@0.2.4": version "0.2.4" - resolved "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.4.tgz" + resolved "https://registry.yarnpkg.com/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.4.tgz#d27788176f250d86e498081e3c5ff48a17606918" integrity sha512-9zESzOO5aDByvhIAsOy9TbpZ0Ur2AJbUI7UT73kcUTS2mxAMHOBaa1st/jAymNoCtvrit99kkzT1FZuXVcgfIQ== dependencies: "@emnapi/core" "^1.1.0" @@ -937,7 +768,7 @@ "@nodelib/fs.scandir@2.1.5": version "2.1.5" - resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== dependencies: "@nodelib/fs.stat" "2.0.5" @@ -945,12 +776,12 @@ "@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": version "2.0.5" - resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== "@nodelib/fs.walk@^1.2.3": version "1.2.8" - resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== dependencies: "@nodelib/fs.scandir" "2.1.5" @@ -958,7 +789,7 @@ "@npmcli/agent@^2.0.0": version "2.2.2" - resolved "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz" + resolved "https://registry.yarnpkg.com/@npmcli/agent/-/agent-2.2.2.tgz#967604918e62f620a648c7975461c9c9e74fc5d5" integrity sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og== dependencies: agent-base "^7.1.0" @@ -969,7 +800,7 @@ "@npmcli/arborist@^7.2.0": version "7.5.4" - resolved "https://registry.npmjs.org/@npmcli/arborist/-/arborist-7.5.4.tgz" + resolved "https://registry.yarnpkg.com/@npmcli/arborist/-/arborist-7.5.4.tgz#3dd9e531d6464ef6715e964c188e0880c471ac9b" integrity sha512-nWtIc6QwwoUORCRNzKx4ypHqCk3drI+5aeYdMTQQiRCcn4lOOgfQh7WyZobGYTxXPSq1VwV53lkpN/BRlRk08g== dependencies: "@isaacs/string-locale-compare" "^1.1.0" @@ -1010,14 +841,14 @@ "@npmcli/fs@^3.1.0", "@npmcli/fs@^3.1.1": version "3.1.1" - resolved "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz" + resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-3.1.1.tgz#59cdaa5adca95d135fc00f2bb53f5771575ce726" integrity sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg== dependencies: semver "^7.3.5" "@npmcli/git@^5.0.0": version "5.0.8" - resolved "https://registry.npmjs.org/@npmcli/git/-/git-5.0.8.tgz" + resolved "https://registry.yarnpkg.com/@npmcli/git/-/git-5.0.8.tgz#8ba3ff8724192d9ccb2735a2aa5380a992c5d3d1" integrity sha512-liASfw5cqhjNW9UFd+ruwwdEf/lbOAQjLL2XY2dFW/bkJheXDYZgOyul/4gVvEV4BWkTXjYGmDqMw9uegdbJNQ== dependencies: "@npmcli/promise-spawn" "^7.0.0" @@ -1032,7 +863,7 @@ "@npmcli/installed-package-contents@^2.0.1", "@npmcli/installed-package-contents@^2.1.0": version "2.1.0" - resolved "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/@npmcli/installed-package-contents/-/installed-package-contents-2.1.0.tgz#63048e5f6e40947a3a88dcbcb4fd9b76fdd37c17" integrity sha512-c8UuGLeZpm69BryRykLuKRyKFZYJsZSCT4aVY5ds4omyZqJ172ApzgfKJ5eV/r3HgLdUYgFVe54KSFVjKoe27w== dependencies: npm-bundled "^3.0.0" @@ -1040,7 +871,7 @@ "@npmcli/map-workspaces@^3.0.2": version "3.0.6" - resolved "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-3.0.6.tgz" + resolved "https://registry.yarnpkg.com/@npmcli/map-workspaces/-/map-workspaces-3.0.6.tgz#27dc06c20c35ef01e45a08909cab9cb3da08cea6" integrity sha512-tkYs0OYnzQm6iIRdfy+LcLBjcKuQCeE5YLb8KnrIlutJfheNaPvPpgoFEyEFgbjzl5PLZ3IA/BWAwRU0eHuQDA== dependencies: "@npmcli/name-from-folder" "^2.0.0" @@ -1050,7 +881,7 @@ "@npmcli/metavuln-calculator@^7.1.1": version "7.1.1" - resolved "https://registry.npmjs.org/@npmcli/metavuln-calculator/-/metavuln-calculator-7.1.1.tgz" + resolved "https://registry.yarnpkg.com/@npmcli/metavuln-calculator/-/metavuln-calculator-7.1.1.tgz#4d3b6c3192f72bc8ad59476de0da939c33877fcf" integrity sha512-Nkxf96V0lAx3HCpVda7Vw4P23RILgdi/5K1fmj2tZkWIYLpXAN8k2UVVOsW16TsS5F8Ws2I7Cm+PU1/rsVF47g== dependencies: cacache "^18.0.0" @@ -1061,17 +892,17 @@ "@npmcli/name-from-folder@^2.0.0": version "2.0.0" - resolved "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/@npmcli/name-from-folder/-/name-from-folder-2.0.0.tgz#c44d3a7c6d5c184bb6036f4d5995eee298945815" integrity sha512-pwK+BfEBZJbKdNYpHHRTNBwBoqrN/iIMO0AiGvYsp3Hoaq0WbgGSWQR6SCldZovoDpY3yje5lkFUe6gsDgJ2vg== "@npmcli/node-gyp@^3.0.0": version "3.0.0" - resolved "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz#101b2d0490ef1aa20ed460e4c0813f0db560545a" integrity sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA== "@npmcli/package-json@^5.0.0", "@npmcli/package-json@^5.1.0": version "5.2.1" - resolved "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.2.1.tgz" + resolved "https://registry.yarnpkg.com/@npmcli/package-json/-/package-json-5.2.1.tgz#df69477b1023b81ff8503f2b9db4db4faea567ed" integrity sha512-f7zYC6kQautXHvNbLEWgD/uGu1+xCn9izgqBfgItWSx22U0ZDekxN08A1vM8cTxj/cRVe0Q94Ode+tdoYmIOOQ== dependencies: "@npmcli/git" "^5.0.0" @@ -1084,26 +915,26 @@ "@npmcli/promise-spawn@^7.0.0": version "7.0.2" - resolved "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.2.tgz" + resolved "https://registry.yarnpkg.com/@npmcli/promise-spawn/-/promise-spawn-7.0.2.tgz#1d53d34ffeb5d151bfa8ec661bcccda8bbdfd532" integrity sha512-xhfYPXoV5Dy4UkY0D+v2KkwvnDfiA/8Mt3sWCGI/hM03NsYIH8ZaG6QzS9x7pje5vHZBZJ2v6VRFVTWACnqcmQ== dependencies: which "^4.0.0" "@npmcli/query@^3.1.0": version "3.1.0" - resolved "https://registry.npmjs.org/@npmcli/query/-/query-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/@npmcli/query/-/query-3.1.0.tgz#bc202c59e122a06cf8acab91c795edda2cdad42c" integrity sha512-C/iR0tk7KSKGldibYIB9x8GtO/0Bd0I2mhOaDb8ucQL/bQVTmGoeREaFj64Z5+iCBRf3dQfed0CjJL7I8iTkiQ== dependencies: postcss-selector-parser "^6.0.10" "@npmcli/redact@^2.0.0": version "2.0.1" - resolved "https://registry.npmjs.org/@npmcli/redact/-/redact-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/@npmcli/redact/-/redact-2.0.1.tgz#95432fd566e63b35c04494621767a4312c316762" integrity sha512-YgsR5jCQZhVmTJvjduTOIHph0L73pK8xwMVaDY0PatySqVM9AZj93jpoXYSJqfHFxFkN9dmqTw6OiqExsS3LPw== "@npmcli/run-script@^8.0.0", "@npmcli/run-script@^8.1.0": version "8.1.0" - resolved "https://registry.npmjs.org/@npmcli/run-script/-/run-script-8.1.0.tgz" + resolved "https://registry.yarnpkg.com/@npmcli/run-script/-/run-script-8.1.0.tgz#a563e5e29b1ca4e648a6b1bbbfe7220b4bfe39fc" integrity sha512-y7efHHwghQfk28G2z3tlZ67pLG0XdfYbcVG26r7YIXALRsrVQcTq4/tdenSmdOrEsNahIYA/eh8aEVROWGFUDg== dependencies: "@npmcli/node-gyp" "^3.0.0" @@ -1115,7 +946,7 @@ "@nx/nx-darwin-arm64@21.1.2": version "21.1.2" - resolved "https://registry.npmjs.org/@nx/nx-darwin-arm64/-/nx-darwin-arm64-21.1.2.tgz" + resolved "https://registry.yarnpkg.com/@nx/nx-darwin-arm64/-/nx-darwin-arm64-21.1.2.tgz#d88abfbff793b50e6613bf670e7f7d2dbfe3089c" integrity sha512-9dO32jd+h7SrvQafJph6b7Bsmp2IotTE0w7dAGb4MGBQni3JWCXaxlMMpWUZXWW1pM5uIkFJO5AASW4UOI7w2w== "@nx/nx-darwin-x64@21.1.2": @@ -1165,31 +996,31 @@ "@octokit/auth-token@^4.0.0": version "4.0.0" - resolved "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-4.0.0.tgz#40d203ea827b9f17f42a29c6afb93b7745ef80c7" integrity sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA== "@octokit/auth-token@^5.0.0": version "5.1.2" - resolved "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-5.1.2.tgz" + resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-5.1.2.tgz#68a486714d7a7fd1df56cb9bc89a860a0de866de" integrity sha512-JcQDsBdg49Yky2w2ld20IHAlwr8d/d8N6NiOXbtuoPCqzbsiJgF633mVUw3x4mo0H5ypataQIX7SFu3yy44Mpw== "@octokit/core@^5.0.2": - version "5.2.0" - resolved "https://registry.npmjs.org/@octokit/core/-/core-5.2.0.tgz" - integrity sha512-1LFfa/qnMQvEOAdzlQymH0ulepxbxnCYAKJZfMci/5XJyIHWgEYnDmgnKakbTh7CH2tFQ5O60oYDvns4i9RAIg== + version "5.2.2" + resolved "https://registry.yarnpkg.com/@octokit/core/-/core-5.2.2.tgz#252805732de9b4e8e4f658d34b80c4c9b2534761" + integrity sha512-/g2d4sW9nUDJOMz3mabVQvOGhVa4e/BN/Um7yca9Bb2XTzPPnfTWHWQg+IsEYO7M3Vx+EXvaM/I2pJWIMun1bg== dependencies: "@octokit/auth-token" "^4.0.0" "@octokit/graphql" "^7.1.0" - "@octokit/request" "^8.3.1" - "@octokit/request-error" "^5.1.0" + "@octokit/request" "^8.4.1" + "@octokit/request-error" "^5.1.1" "@octokit/types" "^13.0.0" before-after-hook "^2.2.0" universal-user-agent "^6.0.0" "@octokit/core@^6.1.4": - version "6.1.5" - resolved "https://registry.npmjs.org/@octokit/core/-/core-6.1.5.tgz" - integrity sha512-vvmsN0r7rguA+FySiCsbaTTobSftpIDIpPW81trAmsv9TGxg3YCujAxRYp/Uy8xmDgYCzzgulG62H7KYUFmeIg== + version "6.1.6" + resolved "https://registry.yarnpkg.com/@octokit/core/-/core-6.1.6.tgz#302b3e7188c81e43352c6df4dfabbf897ff192c1" + integrity sha512-kIU8SLQkYWGp3pVKiYzA5OSaNF5EE03P/R8zEmmrG6XwOg5oBjXyQVVIauQ0dgau4zYhpZEhJrvIYt6oM+zZZA== dependencies: "@octokit/auth-token" "^5.0.0" "@octokit/graphql" "^8.2.2" @@ -1201,7 +1032,7 @@ "@octokit/endpoint@^10.1.4": version "10.1.4" - resolved "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-10.1.4.tgz" + resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-10.1.4.tgz#8783be38a32b95af8bcb6523af20ab4eed7a2adb" integrity sha512-OlYOlZIsfEVZm5HCSR8aSg02T2lbUWOsCQoPKfTXJwDzcHQBrVBGdGXb89dv2Kw2ToZaRtudp8O3ZIYoaOjKlA== dependencies: "@octokit/types" "^14.0.0" @@ -1209,7 +1040,7 @@ "@octokit/endpoint@^9.0.6": version "9.0.6" - resolved "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-9.0.6.tgz" + resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-9.0.6.tgz#114d912108fe692d8b139cfe7fc0846dfd11b6c0" integrity sha512-H1fNTMA57HbkFESSt3Y9+FBICv+0jFceJFPWDePYlR/iMGrwM5ph+Dd4XRQs+8X+PUFURLQgX9ChPfhJ/1uNQw== dependencies: "@octokit/types" "^13.1.0" @@ -1217,7 +1048,7 @@ "@octokit/graphql@^7.1.0": version "7.1.1" - resolved "https://registry.npmjs.org/@octokit/graphql/-/graphql-7.1.1.tgz" + resolved "https://registry.yarnpkg.com/@octokit/graphql/-/graphql-7.1.1.tgz#79d9f3d0c96a8fd13d64186fe5c33606d48b79cc" integrity sha512-3mkDltSfcDUoa176nlGoA32RGjeWjl3K7F/BwHwRMJUW/IteSa4bnSV8p2ThNkcIcZU2umkZWxwETSSCJf2Q7g== dependencies: "@octokit/request" "^8.4.1" @@ -1226,69 +1057,64 @@ "@octokit/graphql@^8.2.2": version "8.2.2" - resolved "https://registry.npmjs.org/@octokit/graphql/-/graphql-8.2.2.tgz" + resolved "https://registry.yarnpkg.com/@octokit/graphql/-/graphql-8.2.2.tgz#3db48c4ffdf07f99600cee513baf45e73eced4d1" integrity sha512-Yi8hcoqsrXGdt0yObxbebHXFOiUA+2v3n53epuOg1QUgOB6c4XzvisBNVXJSl8RYA5KrDuSL2yq9Qmqe5N0ryA== dependencies: "@octokit/request" "^9.2.3" "@octokit/types" "^14.0.0" universal-user-agent "^7.0.0" -"@octokit/openapi-types@^23.0.1": - version "23.0.1" - resolved "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-23.0.1.tgz" - integrity sha512-izFjMJ1sir0jn0ldEKhZ7xegCTj/ObmEDlEfpFrx4k/JyZSMRHbO3/rBwgE7f3m2DHt+RrNGIVw4wSmwnm3t/g== - "@octokit/openapi-types@^24.2.0": version "24.2.0" - resolved "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-24.2.0.tgz" + resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-24.2.0.tgz#3d55c32eac0d38da1a7083a9c3b0cca77924f7d3" integrity sha512-9sIH3nSUttelJSXUrmGzl7QUBFul0/mB8HRYl3fOlgHbIWG+WnYDXU3v/2zMtAvuzZ/ed00Ei6on975FhBfzrg== "@octokit/openapi-types@^25.1.0": version "25.1.0" - resolved "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-25.1.0.tgz" + resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-25.1.0.tgz#5a72a9dfaaba72b5b7db375fd05e90ca90dc9682" integrity sha512-idsIggNXUKkk0+BExUn1dQ92sfysJrje03Q0bv0e+KPLrvyqZF8MnBpFz8UNfYDwB3Ie7Z0TByjWfzxt7vseaA== "@octokit/plugin-paginate-rest@11.3.1": version "11.3.1" - resolved "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-11.3.1.tgz" + resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-11.3.1.tgz#fe92d04b49f134165d6fbb716e765c2f313ad364" integrity sha512-ryqobs26cLtM1kQxqeZui4v8FeznirUsksiA+RYemMPJ7Micju0WSkv50dBksTuZks9O5cg4wp+t8fZ/cLY56g== dependencies: "@octokit/types" "^13.5.0" "@octokit/plugin-paginate-rest@^11.4.2": version "11.6.0" - resolved "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-11.6.0.tgz" + resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-11.6.0.tgz#e5e9ff3530e867c3837fdbff94ce15a2468a1f37" integrity sha512-n5KPteiF7pWKgBIBJSk8qzoZWcUkza2O6A0za97pMGVrGfPdltxrfmfF5GucHYvHGZD8BdaZmmHGz5cX/3gdpw== dependencies: "@octokit/types" "^13.10.0" "@octokit/plugin-request-log@^4.0.0": version "4.0.1" - resolved "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-4.0.1.tgz" + resolved "https://registry.yarnpkg.com/@octokit/plugin-request-log/-/plugin-request-log-4.0.1.tgz#98a3ca96e0b107380664708111864cb96551f958" integrity sha512-GihNqNpGHorUrO7Qa9JbAl0dbLnqJVrV8OXe2Zm5/Y4wFkZQDfTreBzVmiRfJVfE4mClXdihHnbpyyO9FSX4HA== "@octokit/plugin-request-log@^5.3.1": version "5.3.1" - resolved "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-5.3.1.tgz" + resolved "https://registry.yarnpkg.com/@octokit/plugin-request-log/-/plugin-request-log-5.3.1.tgz#ccb75d9705de769b2aa82bcd105cc96eb0c00f69" integrity sha512-n/lNeCtq+9ofhC15xzmJCNKP2BWTv8Ih2TTy+jatNCCq/gQP/V7rK3fjIfuz0pDWDALO/o/4QY4hyOF6TQQFUw== "@octokit/plugin-rest-endpoint-methods@13.2.2": version "13.2.2" - resolved "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-13.2.2.tgz" + resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-13.2.2.tgz#af8e5dd2cddfea576f92ffaf9cb84659f302a638" integrity sha512-EI7kXWidkt3Xlok5uN43suK99VWqc8OaIMktY9d9+RNKl69juoTyxmLoWPIZgJYzi41qj/9zU7G/ljnNOJ5AFA== dependencies: "@octokit/types" "^13.5.0" "@octokit/plugin-rest-endpoint-methods@^13.3.0": version "13.5.0" - resolved "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-13.5.0.tgz" + resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-13.5.0.tgz#d8c8ca2123b305596c959a9134dfa8b0495b0ba6" integrity sha512-9Pas60Iv9ejO3WlAX3maE1+38c5nqbJXV5GrncEfkndIpZrJ/WPMRd2xYDcPPEt5yzpxcjw9fWNoPhsSGzqKqw== dependencies: "@octokit/types" "^13.10.0" -"@octokit/request-error@^5.1.0", "@octokit/request-error@^5.1.1": +"@octokit/request-error@^5.1.1": version "5.1.1" - resolved "https://registry.npmjs.org/@octokit/request-error/-/request-error-5.1.1.tgz" + resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-5.1.1.tgz#b9218f9c1166e68bb4d0c89b638edc62c9334805" integrity sha512-v9iyEQJH6ZntoENr9/yXxjuezh4My67CBSu9r6Ve/05Iu5gNgnisNWOsoJHTP6k0Rr0+HQIpnH+kyammu90q/g== dependencies: "@octokit/types" "^13.1.0" @@ -1297,14 +1123,14 @@ "@octokit/request-error@^6.1.8": version "6.1.8" - resolved "https://registry.npmjs.org/@octokit/request-error/-/request-error-6.1.8.tgz" + resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-6.1.8.tgz#3c7ce1ca6721eabd43dbddc76b44860de1fdea75" integrity sha512-WEi/R0Jmq+IJKydWlKDmryPcmdYSVjL3ekaiEL1L9eo1sUnqMJ+grqmC9cjk7CA7+b2/T397tO5d8YLOH3qYpQ== dependencies: "@octokit/types" "^14.0.0" -"@octokit/request@^8.3.1", "@octokit/request@^8.4.1": +"@octokit/request@^8.4.1": version "8.4.1" - resolved "https://registry.npmjs.org/@octokit/request/-/request-8.4.1.tgz" + resolved "https://registry.yarnpkg.com/@octokit/request/-/request-8.4.1.tgz#715a015ccf993087977ea4365c44791fc4572486" integrity sha512-qnB2+SY3hkCmBxZsR/MPCybNmbJe4KAlfWErXq+rBKkQJlbjdJeS85VI9r8UqeLYLvnAenU8Q1okM/0MBsAGXw== dependencies: "@octokit/endpoint" "^9.0.6" @@ -1314,7 +1140,7 @@ "@octokit/request@^9.2.3": version "9.2.4" - resolved "https://registry.npmjs.org/@octokit/request/-/request-9.2.4.tgz" + resolved "https://registry.yarnpkg.com/@octokit/request/-/request-9.2.4.tgz#037400946a30f971917f47175053c1075fac713b" integrity sha512-q8ybdytBmxa6KogWlNa818r0k1wlqzNC+yNkcQDECHvQo8Vmstrg18JwqJHdJdUiHD2sjlwBgSm9kHkOKe2iyA== dependencies: "@octokit/endpoint" "^10.1.4" @@ -1325,7 +1151,7 @@ "@octokit/rest@20.1.1": version "20.1.1" - resolved "https://registry.npmjs.org/@octokit/rest/-/rest-20.1.1.tgz" + resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-20.1.1.tgz#ec775864f53fb42037a954b9a40d4f5275b3dc95" integrity sha512-MB4AYDsM5jhIHro/dq4ix1iWTLGToIGk6cWF5L6vanFaMble5jTX/UBQyiv05HsWnwUtY8JrfHy2LWfKwihqMw== dependencies: "@octokit/core" "^5.0.2" @@ -1335,7 +1161,7 @@ "@octokit/rest@^21.1.1": version "21.1.1" - resolved "https://registry.npmjs.org/@octokit/rest/-/rest-21.1.1.tgz" + resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-21.1.1.tgz#7a70455ca451b1d253e5b706f35178ceefb74de2" integrity sha512-sTQV7va0IUVZcntzy1q3QqPm/r8rWtDCqpRAmb8eXXnKkjoQEtFe3Nt5GTVsHft+R6jJoHeSiVLcgcvhtue/rg== dependencies: "@octokit/core" "^6.1.4" @@ -1343,23 +1169,16 @@ "@octokit/plugin-request-log" "^5.3.1" "@octokit/plugin-rest-endpoint-methods" "^13.3.0" -"@octokit/types@^13.0.0", "@octokit/types@^13.1.0", "@octokit/types@^13.5.0": - version "13.8.0" - resolved "https://registry.npmjs.org/@octokit/types/-/types-13.8.0.tgz" - integrity sha512-x7DjTIbEpEWXK99DMd01QfWy0hd5h4EN+Q7shkdKds3otGQP+oWE/y0A76i1OvH9fygo4ddvNf7ZvF0t78P98A== - dependencies: - "@octokit/openapi-types" "^23.0.1" - -"@octokit/types@^13.10.0": +"@octokit/types@^13.0.0", "@octokit/types@^13.1.0", "@octokit/types@^13.10.0", "@octokit/types@^13.5.0": version "13.10.0" - resolved "https://registry.npmjs.org/@octokit/types/-/types-13.10.0.tgz" + resolved "https://registry.yarnpkg.com/@octokit/types/-/types-13.10.0.tgz#3e7c6b19c0236c270656e4ea666148c2b51fd1a3" integrity sha512-ifLaO34EbbPj0Xgro4G5lP5asESjwHracYJvVaPIyXMuiuXLlhic3S47cBdTb+jfODkTE5YtGCLt3Ay3+J97sA== dependencies: "@octokit/openapi-types" "^24.2.0" "@octokit/types@^14.0.0": version "14.1.0" - resolved "https://registry.npmjs.org/@octokit/types/-/types-14.1.0.tgz" + resolved "https://registry.yarnpkg.com/@octokit/types/-/types-14.1.0.tgz#3bf9b3a3e3b5270964a57cc9d98592ed44f840f2" integrity sha512-1y6DgTy8Jomcpu33N+p5w58l6xyt55Ar2I91RPiIA0xCJBXyUAhXCcmZaDWSANiha7R9a6qJJ2CRomGPZ6f46g== dependencies: "@octokit/openapi-types" "^25.1.0" @@ -1406,24 +1225,24 @@ "@pkgjs/parseargs@^0.11.0": version "0.11.0" - resolved "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz" + resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== "@pnpm/config.env-replace@^1.1.0": version "1.1.0" - resolved "https://registry.npmjs.org/@pnpm/config.env-replace/-/config.env-replace-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/@pnpm/config.env-replace/-/config.env-replace-1.1.0.tgz#ab29da53df41e8948a00f2433f085f54de8b3a4c" integrity sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w== "@pnpm/network.ca-file@^1.0.1": version "1.0.2" - resolved "https://registry.npmjs.org/@pnpm/network.ca-file/-/network.ca-file-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/@pnpm/network.ca-file/-/network.ca-file-1.0.2.tgz#2ab05e09c1af0cdf2fcf5035bea1484e222f7983" integrity sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA== dependencies: graceful-fs "4.2.10" "@pnpm/npm-conf@^2.1.0": version "2.3.1" - resolved "https://registry.npmjs.org/@pnpm/npm-conf/-/npm-conf-2.3.1.tgz" + resolved "https://registry.yarnpkg.com/@pnpm/npm-conf/-/npm-conf-2.3.1.tgz#bb375a571a0bd63ab0a23bece33033c683e9b6b0" integrity sha512-c83qWb22rNRuB0UaVCI0uRPNRr8Z0FWnEIvT47jiHAmOIUHbBOg5XvV7pM5x+rKn9HRpjxquDbXYSXr3fAKFcw== dependencies: "@pnpm/config.env-replace" "^1.1.0" @@ -1435,10 +1254,10 @@ resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.29.tgz#5a40109a1ab5f84d6fd8fc928b19f367cbe7e7b1" integrity sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww== -"@rolldown/pluginutils@1.0.0-beta.19": - version "1.0.0-beta.19" - resolved "https://registry.yarnpkg.com/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.19.tgz#fc3b95145a8e7a3bf92754269d8e4f40eea8a244" - integrity sha512-3FL3mnMbPu0muGOCaKAhhFEYmqv9eTfPSJRJmANrCwtgK8VuxpsZDGK+m0LYAGoyO8+0j5uRe4PeyPDK1yA/hA== +"@rolldown/pluginutils@1.0.0-beta.29": + version "1.0.0-beta.29" + resolved "https://registry.yarnpkg.com/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.29.tgz#f8fc9a8788757dccba0d3b7fee93183621773d4c" + integrity sha512-NIJgOsMjbxAXvoGq/X0gD7VPMQ8j9g0BiDaNjVNVjvl+iKXxL3Jre0v31RmBYeLEmkbj2s02v8vFTbUXi5XS2Q== "@rollup/plugin-commonjs@^28.0.6": version "28.0.6" @@ -1455,7 +1274,7 @@ "@rollup/plugin-json@^6.1.0": version "6.1.0" - resolved "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-6.1.0.tgz" + resolved "https://registry.yarnpkg.com/@rollup/plugin-json/-/plugin-json-6.1.0.tgz#fbe784e29682e9bb6dee28ea75a1a83702e7b805" integrity sha512-EGI2te5ENk1coGeADSIwZ7G2Q8CJS2sF120T7jLw4xFw9n7wIOXHo+kIYRAoVpJAN+kmqZSoO3Fp4JtoNF4ReA== dependencies: "@rollup/pluginutils" "^5.1.0" @@ -1479,16 +1298,7 @@ "@rollup/pluginutils" "^5.1.0" resolve "^1.22.1" -"@rollup/pluginutils@^5.0.1": - version "5.1.4" - resolved "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.4.tgz" - integrity sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ== - dependencies: - "@types/estree" "^1.0.0" - estree-walker "^2.0.2" - picomatch "^4.0.2" - -"@rollup/pluginutils@^5.1.0": +"@rollup/pluginutils@^5.0.1", "@rollup/pluginutils@^5.1.0": version "5.2.0" resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-5.2.0.tgz#eac25ca5b0bdda4ba735ddaca5fbf26bd435f602" integrity sha512-qWJ2ZTbmumwiLFomfzTyt5Kng4hwPi9rwCYN4SHb6eaRU1KNO4ccxINHr/VhH4GgPlt1XfSTLX2LBTme8ne4Zw== @@ -1497,532 +1307,318 @@ estree-walker "^2.0.2" picomatch "^4.0.2" -"@rollup/rollup-android-arm-eabi@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.45.0.tgz#0592252f7550bc0ea0474bb5a22430850f92bdbd" - integrity sha512-2o/FgACbji4tW1dzXOqAV15Eu7DdgbKsF2QKcxfG4xbh5iwU7yr5RRP5/U+0asQliSYv5M4o7BevlGIoSL0LXg== - -"@rollup/rollup-android-arm-eabi@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.46.2.tgz#292e25953d4988d3bd1af0f5ebbd5ee4d65c90b4" - integrity sha512-Zj3Hl6sN34xJtMv7Anwb5Gu01yujyE/cLBDB2gnHTAHaWS1Z38L7kuSG+oAh0giZMqG060f/YBStXtMH6FvPMA== - -"@rollup/rollup-android-arm-eabi@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.47.1.tgz#6e236cd2fd29bb01a300ad4ff6ed0f1a17550e69" - integrity sha512-lTahKRJip0knffA/GTNFJMrToD+CM+JJ+Qt5kjzBK/sFQ0EWqfKW3AYQSlZXN98tX0lx66083U9JYIMioMMK7g== - -"@rollup/rollup-android-arm64@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.45.0.tgz#00a51d1d4380cc677da80ac9da1a19e7806bf57e" - integrity sha512-PSZ0SvMOjEAxwZeTx32eI/j5xSYtDCRxGu5k9zvzoY77xUNssZM+WV6HYBLROpY5CkXsbQjvz40fBb7WPwDqtQ== - -"@rollup/rollup-android-arm64@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.46.2.tgz#053b3def3451e6fc1a9078188f22799e868d7c59" - integrity sha512-nTeCWY83kN64oQ5MGz3CgtPx8NSOhC5lWtsjTs+8JAJNLcP3QbLCtDDgUKQc/Ro/frpMq4SHUaHN6AMltcEoLQ== - -"@rollup/rollup-android-arm64@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.47.1.tgz#808f2c9c7e68161add613ebcb0eac5a058a0df3c" - integrity sha512-uqxkb3RJLzlBbh/bbNQ4r7YpSZnjgMgyoEOY7Fy6GCbelkDSAzeiogxMG9TfLsBbqmGsdDObo3mzGqa8hps4MA== - -"@rollup/rollup-darwin-arm64@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.45.0.tgz#6638299dd282ebde1ebdf7dc5b0f150aa6e256e5" - integrity sha512-BA4yPIPssPB2aRAWzmqzQ3y2/KotkLyZukVB7j3psK/U3nVJdceo6qr9pLM2xN6iRP/wKfxEbOb1yrlZH6sYZg== - -"@rollup/rollup-darwin-arm64@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.46.2.tgz#98d90445282dec54fd05440305a5e8df79a91ece" - integrity sha512-HV7bW2Fb/F5KPdM/9bApunQh68YVDU8sO8BvcW9OngQVN3HHHkw99wFupuUJfGR9pYLLAjcAOA6iO+evsbBaPQ== - -"@rollup/rollup-darwin-arm64@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.47.1.tgz#fa41e413c8e73d61039d6375b234595f24b1e5e3" - integrity sha512-tV6reObmxBDS4DDyLzTDIpymthNlxrLBGAoQx6m2a7eifSNEZdkXQl1PE4ZjCkEDPVgNXSzND/k9AQ3mC4IOEQ== - -"@rollup/rollup-darwin-x64@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.45.0.tgz#33e61daa0a66890059648feda78e1075d4ea1bcb" - integrity sha512-Pr2o0lvTwsiG4HCr43Zy9xXrHspyMvsvEw4FwKYqhli4FuLE5FjcZzuQ4cfPe0iUFCvSQG6lACI0xj74FDZKRA== - -"@rollup/rollup-darwin-x64@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.46.2.tgz#fe05f95a736423af5f9c3a59a70f41ece52a1f20" - integrity sha512-SSj8TlYV5nJixSsm/y3QXfhspSiLYP11zpfwp6G/YDXctf3Xkdnk4woJIF5VQe0of2OjzTt8EsxnJDCdHd2xMA== - -"@rollup/rollup-darwin-x64@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.47.1.tgz#9aac64e886435493f2e3a0aa5e4aad098a90814c" - integrity sha512-XuJRPTnMk1lwsSnS3vYyVMu4x/+WIw1MMSiqj5C4j3QOWsMzbJEK90zG+SWV1h0B1ABGCQ0UZUjti+TQK35uHQ== - -"@rollup/rollup-freebsd-arm64@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.45.0.tgz#2cc4bd3ba7026cd5374e902285ce76e8fae0f6eb" - integrity sha512-lYE8LkE5h4a/+6VnnLiL14zWMPnx6wNbDG23GcYFpRW1V9hYWHAw9lBZ6ZUIrOaoK7NliF1sdwYGiVmziUF4vA== - -"@rollup/rollup-freebsd-arm64@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.46.2.tgz#41e1fbdc1f8c3dc9afb6bc1d6e3fb3104bd81eee" - integrity sha512-ZyrsG4TIT9xnOlLsSSi9w/X29tCbK1yegE49RYm3tu3wF1L/B6LVMqnEWyDB26d9Ecx9zrmXCiPmIabVuLmNSg== - -"@rollup/rollup-freebsd-arm64@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.47.1.tgz#9fc804264f7b7a7cdad3747950299f990163be1f" - integrity sha512-79BAm8Ag/tmJ5asCqgOXsb3WY28Rdd5Lxj8ONiQzWzy9LvWORd5qVuOnjlqiWWZJw+dWewEktZb5yiM1DLLaHw== - -"@rollup/rollup-freebsd-x64@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.45.0.tgz#64664ba3015deac473a5d6d6c60c068f274bf2d5" - integrity sha512-PVQWZK9sbzpvqC9Q0GlehNNSVHR+4m7+wET+7FgSnKG3ci5nAMgGmr9mGBXzAuE5SvguCKJ6mHL6vq1JaJ/gvw== - -"@rollup/rollup-freebsd-x64@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.46.2.tgz#69131e69cb149d547abb65ef3b38fc746c940e24" - integrity sha512-pCgHFoOECwVCJ5GFq8+gR8SBKnMO+xe5UEqbemxBpCKYQddRQMgomv1104RnLSg7nNvgKy05sLsY51+OVRyiVw== - -"@rollup/rollup-freebsd-x64@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.47.1.tgz#933feaff864feb03bbbcd0c18ea351ade957cf79" - integrity sha512-OQ2/ZDGzdOOlyfqBiip0ZX/jVFekzYrGtUsqAfLDbWy0jh1PUU18+jYp8UMpqhly5ltEqotc2miLngf9FPSWIA== - -"@rollup/rollup-linux-arm-gnueabihf@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.45.0.tgz#7ab16acae3bcae863e9a9bc32038cd05e794a0ff" - integrity sha512-hLrmRl53prCcD+YXTfNvXd776HTxNh8wPAMllusQ+amcQmtgo3V5i/nkhPN6FakW+QVLoUUr2AsbtIRPFU3xIA== - -"@rollup/rollup-linux-arm-gnueabihf@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.46.2.tgz#977ded91c7cf6fc0d9443bb9c0a064e45a805267" - integrity sha512-EtP8aquZ0xQg0ETFcxUbU71MZlHaw9MChwrQzatiE8U/bvi5uv/oChExXC4mWhjiqK7azGJBqU0tt5H123SzVA== - -"@rollup/rollup-linux-arm-gnueabihf@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.47.1.tgz#02915e6b2c55fe5961c27404aba2d9c8ef48ac6c" - integrity sha512-HZZBXJL1udxlCVvoVadstgiU26seKkHbbAMLg7680gAcMnRNP9SAwTMVet02ANA94kXEI2VhBnXs4e5nf7KG2A== - -"@rollup/rollup-linux-arm-musleabihf@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.45.0.tgz#bef91b1e924ab57e82e767dc2655264bbde7acc6" - integrity sha512-XBKGSYcrkdiRRjl+8XvrUR3AosXU0NvF7VuqMsm7s5nRy+nt58ZMB19Jdp1RdqewLcaYnpk8zeVs/4MlLZEJxw== - -"@rollup/rollup-linux-arm-musleabihf@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.46.2.tgz#dc034fc3c0f0eb5c75b6bc3eca3b0b97fd35f49a" - integrity sha512-qO7F7U3u1nfxYRPM8HqFtLd+raev2K137dsV08q/LRKRLEc7RsiDWihUnrINdsWQxPR9jqZ8DIIZ1zJJAm5PjQ== - -"@rollup/rollup-linux-arm-musleabihf@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.47.1.tgz#1afef33191b26e76ae7f0d0dc767efc6be1285ce" - integrity sha512-sZ5p2I9UA7T950JmuZ3pgdKA6+RTBr+0FpK427ExW0t7n+QwYOcmDTK/aRlzoBrWyTpJNlS3kacgSlSTUg6P/Q== - -"@rollup/rollup-linux-arm64-gnu@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.45.0.tgz#0a811b16da334125f6e44570d0badf543876f49e" - integrity sha512-fRvZZPUiBz7NztBE/2QnCS5AtqLVhXmUOPj9IHlfGEXkapgImf4W9+FSkL8cWqoAjozyUzqFmSc4zh2ooaeF6g== - -"@rollup/rollup-linux-arm64-gnu@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.46.2.tgz#5e92613768d3de3ffcabc965627dd0a59b3e7dfc" - integrity sha512-3dRaqLfcOXYsfvw5xMrxAk9Lb1f395gkoBYzSFcc/scgRFptRXL9DOaDpMiehf9CO8ZDRJW2z45b6fpU5nwjng== - -"@rollup/rollup-linux-arm64-gnu@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.47.1.tgz#6e7f38fb99d14143de3ce33204e6cd61e1c2c780" - integrity sha512-3hBFoqPyU89Dyf1mQRXCdpc6qC6At3LV6jbbIOZd72jcx7xNk3aAp+EjzAtN6sDlmHFzsDJN5yeUySvorWeRXA== - -"@rollup/rollup-linux-arm64-musl@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.45.0.tgz#e8c166efe3cb963faaa924c7721eafbade63036f" - integrity sha512-Btv2WRZOcUGi8XU80XwIvzTg4U6+l6D0V6sZTrZx214nrwxw5nAi8hysaXj/mctyClWgesyuxbeLylCBNauimg== - -"@rollup/rollup-linux-arm64-musl@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.46.2.tgz#2a44f88e83d28b646591df6e50aa0a5a931833d8" - integrity sha512-fhHFTutA7SM+IrR6lIfiHskxmpmPTJUXpWIsBXpeEwNgZzZZSg/q4i6FU4J8qOGyJ0TR+wXBwx/L7Ho9z0+uDg== - -"@rollup/rollup-linux-arm64-musl@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.47.1.tgz#25ab09f14bbcba85a604bcee2962d2486db90794" - integrity sha512-49J4FnMHfGodJWPw73Ve+/hsPjZgcXQGkmqBGZFvltzBKRS+cvMiWNLadOMXKGnYRhs1ToTGM0sItKISoSGUNA== - -"@rollup/rollup-linux-loongarch64-gnu@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.45.0.tgz#239feea00fa2a1e734bdff09b8d1c90def2abbf5" - integrity sha512-Li0emNnwtUZdLwHjQPBxn4VWztcrw/h7mgLyHiEI5Z0MhpeFGlzaiBHpSNVOMB/xucjXTTcO+dhv469Djr16KA== - -"@rollup/rollup-linux-loongarch64-gnu@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.46.2.tgz#bd5897e92db7fbf7dc456f61d90fff96c4651f2e" - integrity sha512-i7wfGFXu8x4+FRqPymzjD+Hyav8l95UIZ773j7J7zRYc3Xsxy2wIn4x+llpunexXe6laaO72iEjeeGyUFmjKeA== - -"@rollup/rollup-linux-loongarch64-gnu@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.47.1.tgz#d3e3a3fd61e21b2753094391dee9b515a2bc9ecd" - integrity sha512-4yYU8p7AneEpQkRX03pbpLmE21z5JNys16F1BZBZg5fP9rIlb0TkeQjn5du5w4agConCCEoYIG57sNxjryHEGg== - -"@rollup/rollup-linux-powerpc64le-gnu@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.45.0.tgz#1de2f926bddbf7d689a089277c1284ea6df4b6d1" - integrity sha512-sB8+pfkYx2kvpDCfd63d5ScYT0Fz1LO6jIb2zLZvmK9ob2D8DeVqrmBDE0iDK8KlBVmsTNzrjr3G1xV4eUZhSw== - -"@rollup/rollup-linux-ppc64-gnu@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.46.2.tgz#a7065025411c14ad9ec34cc1cd1414900ec2a303" - integrity sha512-B/l0dFcHVUnqcGZWKcWBSV2PF01YUt0Rvlurci5P+neqY/yMKchGU8ullZvIv5e8Y1C6wOn+U03mrDylP5q9Yw== - -"@rollup/rollup-linux-ppc64-gnu@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.47.1.tgz#6b44445e2bd5866692010de241bf18d2ae8b0cb8" - integrity sha512-fAiq+J28l2YMWgC39jz/zPi2jqc0y3GSRo1yyxlBHt6UN0yYgnegHSRPa3pnHS5amT/efXQrm0ug5+aNEu9UuQ== - -"@rollup/rollup-linux-riscv64-gnu@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.45.0.tgz#28dbac643244e477a7b931feb9b475aa826f84c1" - integrity sha512-5GQ6PFhh7E6jQm70p1aW05G2cap5zMOvO0se5JMecHeAdj5ZhWEHbJ4hiKpfi1nnnEdTauDXxPgXae/mqjow9w== - -"@rollup/rollup-linux-riscv64-gnu@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.46.2.tgz#17f9c0c675e13ef4567cfaa3730752417257ccc3" - integrity sha512-32k4ENb5ygtkMwPMucAb8MtV8olkPT03oiTxJbgkJa7lJ7dZMr0GCFJlyvy+K8iq7F/iuOr41ZdUHaOiqyR3iQ== - -"@rollup/rollup-linux-riscv64-gnu@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.47.1.tgz#3ff412d20d3b157e6aadabf84788e8c5cb221ba7" - integrity sha512-daoT0PMENNdjVYYU9xec30Y2prb1AbEIbb64sqkcQcSaR0zYuKkoPuhIztfxuqN82KYCKKrj+tQe4Gi7OSm1ow== - -"@rollup/rollup-linux-riscv64-musl@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.45.0.tgz#5d05eeaedadec3625cd50e3ca5d35ef6f96a4bf0" - integrity sha512-N/euLsBd1rekWcuduakTo/dJw6U6sBP3eUq+RXM9RNfPuWTvG2w/WObDkIvJ2KChy6oxZmOSC08Ak2OJA0UiAA== - -"@rollup/rollup-linux-riscv64-musl@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.46.2.tgz#bc6ed3db2cedc1ba9c0a2183620fe2f792c3bf3f" - integrity sha512-t5B2loThlFEauloaQkZg9gxV05BYeITLvLkWOkRXogP4qHXLkWSbSHKM9S6H1schf/0YGP/qNKtiISlxvfmmZw== - -"@rollup/rollup-linux-riscv64-musl@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.47.1.tgz#104f451497d53d82a49c6d08c13c59f5f30eed57" - integrity sha512-JNyXaAhWtdzfXu5pUcHAuNwGQKevR+6z/poYQKVW+pLaYOj9G1meYc57/1Xv2u4uTxfu9qEWmNTjv/H/EpAisw== - -"@rollup/rollup-linux-s390x-gnu@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.45.0.tgz#55b0790f499fb7adc14eb074c4e46aef92915813" - integrity sha512-2l9sA7d7QdikL0xQwNMO3xURBUNEWyHVHfAsHsUdq+E/pgLTUcCE+gih5PCdmyHmfTDeXUWVhqL0WZzg0nua3g== - -"@rollup/rollup-linux-s390x-gnu@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.46.2.tgz#440c4f6753274e2928e06d2a25613e5a1cf97b41" - integrity sha512-YKjekwTEKgbB7n17gmODSmJVUIvj8CX7q5442/CK80L8nqOUbMtf8b01QkG3jOqyr1rotrAnW6B/qiHwfcuWQA== - -"@rollup/rollup-linux-s390x-gnu@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.47.1.tgz#d04de7b21d181f30750760cb3553946306506172" - integrity sha512-U/CHbqKSwEQyZXjCpY43/GLYcTVKEXeRHw0rMBJP7fP3x6WpYG4LTJWR3ic6TeYKX6ZK7mrhltP4ppolyVhLVQ== - -"@rollup/rollup-linux-x64-gnu@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.45.0.tgz#e822632fe5b324b16bdc37149149c8c760b031fd" - integrity sha512-XZdD3fEEQcwG2KrJDdEQu7NrHonPxxaV0/w2HpvINBdcqebz1aL+0vM2WFJq4DeiAVT6F5SUQas65HY5JDqoPw== - -"@rollup/rollup-linux-x64-gnu@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.46.2.tgz#1e936446f90b2574ea4a83b4842a762cc0a0aed3" - integrity sha512-Jj5a9RUoe5ra+MEyERkDKLwTXVu6s3aACP51nkfnK9wJTraCC8IMe3snOfALkrjTYd2G1ViE1hICj0fZ7ALBPA== - -"@rollup/rollup-linux-x64-gnu@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.47.1.tgz#a6ba88ff7480940a435b1e67ddbb3f207a7ae02f" - integrity sha512-uTLEakjxOTElfeZIGWkC34u2auLHB1AYS6wBjPGI00bWdxdLcCzK5awjs25YXpqB9lS8S0vbO0t9ZcBeNibA7g== - -"@rollup/rollup-linux-x64-musl@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.45.0.tgz#19a3602cb8fabd7eb3087f0a1e1e01adac31bbff" - integrity sha512-7ayfgvtmmWgKWBkCGg5+xTQ0r5V1owVm67zTrsEY1008L5ro7mCyGYORomARt/OquB9KY7LpxVBZes+oSniAAQ== - -"@rollup/rollup-linux-x64-musl@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.46.2.tgz#c6f304dfba1d5faf2be5d8b153ccbd8b5d6f1166" - integrity sha512-7kX69DIrBeD7yNp4A5b81izs8BqoZkCIaxQaOpumcJ1S/kmqNFjPhDu1LHeVXv0SexfHQv5cqHsxLOjETuqDuA== - -"@rollup/rollup-linux-x64-musl@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.47.1.tgz#c912c8ffa0c242ed3175cd91cdeaef98109afa54" - integrity sha512-Ft+d/9DXs30BK7CHCTX11FtQGHUdpNDLJW0HHLign4lgMgBcPFN3NkdIXhC5r9iwsMwYreBBc4Rho5ieOmKNVQ== - -"@rollup/rollup-win32-arm64-msvc@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.45.0.tgz#42e08bf3ea4fc463fc9f199c4f0310a736f03eb1" - integrity sha512-B+IJgcBnE2bm93jEW5kHisqvPITs4ddLOROAcOc/diBgrEiQJJ6Qcjby75rFSmH5eMGrqJryUgJDhrfj942apQ== - -"@rollup/rollup-win32-arm64-msvc@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.46.2.tgz#b4ad4a79219892aac112ed1c9d1356cad0566ef5" - integrity sha512-wiJWMIpeaak/jsbaq2HMh/rzZxHVW1rU6coyeNNpMwk5isiPjSTx0a4YLSlYDwBH/WBvLz+EtsNqQScZTLJy3g== - -"@rollup/rollup-win32-arm64-msvc@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.47.1.tgz#ca5eaae89443554b461bb359112a056528cfdac0" - integrity sha512-N9X5WqGYzZnjGAFsKSfYFtAShYjwOmFJoWbLg3dYixZOZqU7hdMq+/xyS14zKLhFhZDhP9VfkzQnsdk0ZDS9IA== - -"@rollup/rollup-win32-ia32-msvc@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.45.0.tgz#043d25557f59d7e28dfe38ee1f60ddcb95a08124" - integrity sha512-+CXwwG66g0/FpWOnP/v1HnrGVSOygK/osUbu3wPRy8ECXjoYKjRAyfxYpDQOfghC5qPJYLPH0oN4MCOjwgdMug== - -"@rollup/rollup-win32-ia32-msvc@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.46.2.tgz#b1b22eb2a9568048961e4a6f540438b4a762aa62" - integrity sha512-gBgaUDESVzMgWZhcyjfs9QFK16D8K6QZpwAaVNJxYDLHWayOta4ZMjGm/vsAEy3hvlS2GosVFlBlP9/Wb85DqQ== - -"@rollup/rollup-win32-ia32-msvc@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.47.1.tgz#34e76172515fb4b374eb990d59f54faff938246e" - integrity sha512-O+KcfeCORZADEY8oQJk4HK8wtEOCRE4MdOkb8qGZQNun3jzmj2nmhV/B/ZaaZOkPmJyvm/gW9n0gsB4eRa1eiQ== - -"@rollup/rollup-win32-x64-msvc@4.45.0": - version "4.45.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.45.0.tgz#0a7eecae41f463d6591c8fecd7a5c5087345ee36" - integrity sha512-SRf1cytG7wqcHVLrBc9VtPK4pU5wxiB/lNIkNmW2ApKXIg+RpqwHfsaEK+e7eH4A1BpI6BX/aBWXxZCIrJg3uA== - -"@rollup/rollup-win32-x64-msvc@4.46.2": - version "4.46.2" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.46.2.tgz#87079f137b5fdb75da11508419aa998cc8cc3d8b" - integrity sha512-CvUo2ixeIQGtF6WvuB87XWqPQkoFAFqW+HUo/WzHwuHDvIwZCtjdWXoYCcr06iKGydiqTclC4jU/TNObC/xKZg== - -"@rollup/rollup-win32-x64-msvc@4.47.1": - version "4.47.1" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.47.1.tgz#e5e0a0bae2c9d4858cc9b8dc508b2e10d7f0df8b" - integrity sha512-CpKnYa8eHthJa3c+C38v/E+/KZyF1Jdh2Cz3DyKZqEWYgrM1IHFArXNWvBLPQCKUEsAqqKX27tTqVEFbDNUcOA== - -"@secretlint/config-creator@^10.1.1": - version "10.1.1" - resolved "https://registry.yarnpkg.com/@secretlint/config-creator/-/config-creator-10.1.1.tgz#9ab8a1759e19aa316a082caedd5a4ccbabe6f85a" - integrity sha512-TJ42CHZqqnEe9ORvIXVVMqdu3KAtyZRxLspjFexo6XgrwJ6CoFHQYzIihilqRjo2sJh9HMrpnYSj/5hopofGrA== - dependencies: - "@secretlint/types" "^10.1.1" - -"@secretlint/config-loader@^10.1.1": - version "10.1.1" - resolved "https://registry.yarnpkg.com/@secretlint/config-loader/-/config-loader-10.1.1.tgz#4889f630f2e37c41a871d6da5b0a719a6cef40ee" - integrity sha512-jBClVFmS6Yu/zI5ejBCRF5a5ASYsE4gOjogjB+WsaHbQHtGvnyY7I26Qtdg4ihCc/VPKYQg0LdM75pLTXzwsjg== - dependencies: - "@secretlint/profiler" "^10.1.1" - "@secretlint/resolver" "^10.1.1" - "@secretlint/types" "^10.1.1" +"@rollup/rollup-android-arm-eabi@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.49.0.tgz#ba432433f5e7b419dba2be407d1d59fea6b8de48" + integrity sha512-rlKIeL854Ed0e09QGYFlmDNbka6I3EQFw7iZuugQjMb11KMpJCLPFL4ZPbMfaEhLADEL1yx0oujGkBQ7+qW3eA== + +"@rollup/rollup-android-arm64@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.49.0.tgz#4e05c86e0fb9af6eaf52fc298dcdec577477e35c" + integrity sha512-cqPpZdKUSQYRtLLr6R4X3sD4jCBO1zUmeo3qrWBCqYIeH8Q3KRL4F3V7XJ2Rm8/RJOQBZuqzQGWPjjvFUcYa/w== + +"@rollup/rollup-darwin-arm64@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.49.0.tgz#788fad425b4129875639e0c14b6441c5f3b69d46" + integrity sha512-99kMMSMQT7got6iYX3yyIiJfFndpojBmkHfTc1rIje8VbjhmqBXE+nb7ZZP3A5skLyujvT0eIUCUsxAe6NjWbw== + +"@rollup/rollup-darwin-x64@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.49.0.tgz#d44e05bee55b781d7c2cf535d9f9169787c3599d" + integrity sha512-y8cXoD3wdWUDpjOLMKLx6l+NFz3NlkWKcBCBfttUn+VGSfgsQ5o/yDUGtzE9HvsodkP0+16N0P4Ty1VuhtRUGg== + +"@rollup/rollup-freebsd-arm64@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.49.0.tgz#107786b4d604495224c3543bfd2cae33ddf76500" + integrity sha512-3mY5Pr7qv4GS4ZvWoSP8zha8YoiqrU+e0ViPvB549jvliBbdNLrg2ywPGkgLC3cmvN8ya3za+Q2xVyT6z+vZqA== + +"@rollup/rollup-freebsd-x64@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.49.0.tgz#54e105c3da27f31084ca6913fed603627755abde" + integrity sha512-C9KzzOAQU5gU4kG8DTk+tjdKjpWhVWd5uVkinCwwFub2m7cDYLOdtXoMrExfeBmeRy9kBQMkiyJ+HULyF1yj9w== + +"@rollup/rollup-linux-arm-gnueabihf@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.49.0.tgz#725c23e0766b5d9368180bc2c427a51e31d0e147" + integrity sha512-OVSQgEZDVLnTbMq5NBs6xkmz3AADByCWI4RdKSFNlDsYXdFtlxS59J+w+LippJe8KcmeSSM3ba+GlsM9+WwC1w== + +"@rollup/rollup-linux-arm-musleabihf@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.49.0.tgz#6946b0d2f132f2baf5657945b81565d8abd51cc0" + integrity sha512-ZnfSFA7fDUHNa4P3VwAcfaBLakCbYaxCk0jUnS3dTou9P95kwoOLAMlT3WmEJDBCSrOEFFV0Y1HXiwfLYJuLlA== + +"@rollup/rollup-linux-arm64-gnu@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.49.0.tgz#83510a6d03e748619241a17f5a879418a963c5ed" + integrity sha512-Z81u+gfrobVK2iV7GqZCBfEB1y6+I61AH466lNK+xy1jfqFLiQ9Qv716WUM5fxFrYxwC7ziVdZRU9qvGHkYIJg== + +"@rollup/rollup-linux-arm64-musl@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.49.0.tgz#085b98d44c10908626dd40f26bf924433bbd8471" + integrity sha512-zoAwS0KCXSnTp9NH/h9aamBAIve0DXeYpll85shf9NJ0URjSTzzS+Z9evmolN+ICfD3v8skKUPyk2PO0uGdFqg== + +"@rollup/rollup-linux-loongarch64-gnu@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.49.0.tgz#13e0a4808e9f7924f2cc8c133603f627c7a00543" + integrity sha512-2QyUyQQ1ZtwZGiq0nvODL+vLJBtciItC3/5cYN8ncDQcv5avrt2MbKt1XU/vFAJlLta5KujqyHdYtdag4YEjYQ== + +"@rollup/rollup-linux-ppc64-gnu@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.49.0.tgz#aeee4e47fc9ca5d6687e686fea4696202af6b2f4" + integrity sha512-k9aEmOWt+mrMuD3skjVJSSxHckJp+SiFzFG+v8JLXbc/xi9hv2icSkR3U7uQzqy+/QbbYY7iNB9eDTwrELo14g== + +"@rollup/rollup-linux-riscv64-gnu@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.49.0.tgz#603e4591643f1d7851a96d096cf7fcd273f7b0e1" + integrity sha512-rDKRFFIWJ/zJn6uk2IdYLc09Z7zkE5IFIOWqpuU0o6ZpHcdniAyWkwSUWE/Z25N/wNDmFHHMzin84qW7Wzkjsw== + +"@rollup/rollup-linux-riscv64-musl@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.49.0.tgz#f8fd9b01f1888e1816d5a398789d430511286c00" + integrity sha512-FkkhIY/hYFVnOzz1WeV3S9Bd1h0hda/gRqvZCMpHWDHdiIHn6pqsY3b5eSbvGccWHMQ1uUzgZTKS4oGpykf8Tw== + +"@rollup/rollup-linux-s390x-gnu@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.49.0.tgz#37a1fd372d9b93d2b75b2f37c482ecf52f52849b" + integrity sha512-gRf5c+A7QiOG3UwLyOOtyJMD31JJhMjBvpfhAitPAoqZFcOeK3Kc1Veg1z/trmt+2P6F/biT02fU19GGTS529A== + +"@rollup/rollup-linux-x64-gnu@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.49.0.tgz#131e66dbf7e71cb2a389acc45319bd4c990e093a" + integrity sha512-BR7+blScdLW1h/2hB/2oXM+dhTmpW3rQt1DeSiCP9mc2NMMkqVgjIN3DDsNpKmezffGC9R8XKVOLmBkRUcK/sA== + +"@rollup/rollup-linux-x64-musl@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.49.0.tgz#b7245a5ea57db9679e8bf3032c25a5d2c5f54056" + integrity sha512-hDMOAe+6nX3V5ei1I7Au3wcr9h3ktKzDvF2ne5ovX8RZiAHEtX1A5SNNk4zt1Qt77CmnbqT+upb/umzoPMWiPg== + +"@rollup/rollup-win32-arm64-msvc@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.49.0.tgz#768a128bb5da3c5472c3c56aec77507d28bc7209" + integrity sha512-wkNRzfiIGaElC9kXUT+HLx17z7D0jl+9tGYRKwd8r7cUqTL7GYAvgUY++U2hK6Ar7z5Z6IRRoWC8kQxpmM7TDA== + +"@rollup/rollup-win32-ia32-msvc@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.49.0.tgz#ce3f3b2eebe585340631498666718f00983a6a62" + integrity sha512-gq5aW/SyNpjp71AAzroH37DtINDcX1Qw2iv9Chyz49ZgdOP3NV8QCyKZUrGsYX9Yyggj5soFiRCgsL3HwD8TdA== + +"@rollup/rollup-win32-x64-msvc@4.49.0": + version "4.49.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.49.0.tgz#c2a0e3b81262a7e9dd12ce18b350a97558dd50bc" + integrity sha512-gEtqFbzmZLFk2xKh7g0Rlo8xzho8KrEFEkzvHbfUGkrgXOpZ4XagQ6n+wIZFNh1nTb8UD16J4nFSFKXYgnbdBg== + +"@secretlint/config-creator@^10.2.2": + version "10.2.2" + resolved "https://registry.yarnpkg.com/@secretlint/config-creator/-/config-creator-10.2.2.tgz#5d646e83bb2aacfbd5218968ceb358420b4c2cb3" + integrity sha512-BynOBe7Hn3LJjb3CqCHZjeNB09s/vgf0baBaHVw67w7gHF0d25c3ZsZ5+vv8TgwSchRdUCRrbbcq5i2B1fJ2QQ== + dependencies: + "@secretlint/types" "^10.2.2" + +"@secretlint/config-loader@^10.2.2": + version "10.2.2" + resolved "https://registry.yarnpkg.com/@secretlint/config-loader/-/config-loader-10.2.2.tgz#a7790c8d0301db4f6d47e6fb0f0f9482fe652d9a" + integrity sha512-ndjjQNgLg4DIcMJp4iaRD6xb9ijWQZVbd9694Ol2IszBIbGPPkwZHzJYKICbTBmh6AH/pLr0CiCaWdGJU7RbpQ== + dependencies: + "@secretlint/profiler" "^10.2.2" + "@secretlint/resolver" "^10.2.2" + "@secretlint/types" "^10.2.2" ajv "^8.17.1" debug "^4.4.1" rc-config-loader "^4.1.3" -"@secretlint/core@^10.1.1": - version "10.1.1" - resolved "https://registry.yarnpkg.com/@secretlint/core/-/core-10.1.1.tgz#d7443d9e0538a135ff62616a5f35526885ee6a2c" - integrity sha512-COLCxSoH/iVQdLeaZPVtBj0UWKOagO09SqYkCQgfFfZ+soGxKVK405dL317r4PnH9Pm8/s8xQC6OSY5rWTRObQ== +"@secretlint/core@^10.2.2": + version "10.2.2" + resolved "https://registry.yarnpkg.com/@secretlint/core/-/core-10.2.2.tgz#cd41d5c27ba07c217f0af4e0e24dbdfe5ef62042" + integrity sha512-6rdwBwLP9+TO3rRjMVW1tX+lQeo5gBbxl1I5F8nh8bgGtKwdlCMhMKsBWzWg1ostxx/tIG7OjZI0/BxsP8bUgw== dependencies: - "@secretlint/profiler" "^10.1.1" - "@secretlint/types" "^10.1.1" + "@secretlint/profiler" "^10.2.2" + "@secretlint/types" "^10.2.2" debug "^4.4.1" structured-source "^4.0.0" -"@secretlint/formatter@^10.1.1": - version "10.1.1" - resolved "https://registry.yarnpkg.com/@secretlint/formatter/-/formatter-10.1.1.tgz#e297bbb4c2714edfd62be78d814a0ca6ecb08e3a" - integrity sha512-Gpd8gTPN121SJ0h/9e6nWlZU7PitfhXUiEzW7Kyswg6kNGs+bSqmgTgWFtbo1VQ4ygJYiveWPNT05RCImBexJw== - dependencies: - "@secretlint/resolver" "^10.1.1" - "@secretlint/types" "^10.1.1" - "@textlint/linter-formatter" "^14.8.4" - "@textlint/module-interop" "^14.8.4" - "@textlint/types" "^14.8.4" - chalk "^4.1.2" +"@secretlint/formatter@^10.2.2": + version "10.2.2" + resolved "https://registry.yarnpkg.com/@secretlint/formatter/-/formatter-10.2.2.tgz#c8ce35803ad0d841cc9b6e703d6fab68a144e9c0" + integrity sha512-10f/eKV+8YdGKNQmoDUD1QnYL7TzhI2kzyx95vsJKbEa8akzLAR5ZrWIZ3LbcMmBLzxlSQMMccRmi05yDQ5YDA== + dependencies: + "@secretlint/resolver" "^10.2.2" + "@secretlint/types" "^10.2.2" + "@textlint/linter-formatter" "^15.2.0" + "@textlint/module-interop" "^15.2.0" + "@textlint/types" "^15.2.0" + chalk "^5.4.1" debug "^4.4.1" pluralize "^8.0.0" - strip-ansi "^6.0.1" + strip-ansi "^7.1.0" table "^6.9.0" - terminal-link "^2.1.1" - -"@secretlint/node@^10.1.1": - version "10.1.1" - resolved "https://registry.yarnpkg.com/@secretlint/node/-/node-10.1.1.tgz#7a8b14f6ffaf1d13545a6fd83740de5ba61b9d7f" - integrity sha512-AhN+IGqljVObm8a+B33b23FY79wihu5E61Nd3oYSoZV7SxUvMjpafqhLfpt4frNSY7Ghf/pirWu7JY7GMujFrA== - dependencies: - "@secretlint/config-loader" "^10.1.1" - "@secretlint/core" "^10.1.1" - "@secretlint/formatter" "^10.1.1" - "@secretlint/profiler" "^10.1.1" - "@secretlint/source-creator" "^10.1.1" - "@secretlint/types" "^10.1.1" + terminal-link "^4.0.0" + +"@secretlint/node@^10.1.1", "@secretlint/node@^10.2.2": + version "10.2.2" + resolved "https://registry.yarnpkg.com/@secretlint/node/-/node-10.2.2.tgz#1d8a6ed620170bf4f29829a3a91878682c43c4d9" + integrity sha512-eZGJQgcg/3WRBwX1bRnss7RmHHK/YlP/l7zOQsrjexYt6l+JJa5YhUmHbuGXS94yW0++3YkEJp0kQGYhiw1DMQ== + dependencies: + "@secretlint/config-loader" "^10.2.2" + "@secretlint/core" "^10.2.2" + "@secretlint/formatter" "^10.2.2" + "@secretlint/profiler" "^10.2.2" + "@secretlint/source-creator" "^10.2.2" + "@secretlint/types" "^10.2.2" debug "^4.4.1" p-map "^7.0.3" -"@secretlint/profiler@^10.1.1": - version "10.1.1" - resolved "https://registry.yarnpkg.com/@secretlint/profiler/-/profiler-10.1.1.tgz#f9be2a10376f4dbe63d5424266612a6bb78515d3" - integrity sha512-kReI+Wr7IQz0LbVwYByzlnPbx4BEF2oEWJBc4Oa45g24alCjHu+jD9h9mzkTJqYUgMnVYD3o7HfzeqxFrV+9XA== +"@secretlint/profiler@^10.2.2": + version "10.2.2" + resolved "https://registry.yarnpkg.com/@secretlint/profiler/-/profiler-10.2.2.tgz#82c085ab1966806763bbf6edb830987f25d4e797" + integrity sha512-qm9rWfkh/o8OvzMIfY8a5bCmgIniSpltbVlUVl983zDG1bUuQNd1/5lUEeWx5o/WJ99bXxS7yNI4/KIXfHexig== -"@secretlint/resolver@^10.1.1": - version "10.1.1" - resolved "https://registry.yarnpkg.com/@secretlint/resolver/-/resolver-10.1.1.tgz#664fe6abf04bf999170149b1616a48e155962309" - integrity sha512-GdQzxnBtdBRjBULvZ8ERkaRqDp0njVwXrzBCav1pb0XshVk76C1cjeDqtTqM4RJ1Awo/g5U5MIWYztYv67v5Gg== +"@secretlint/resolver@^10.2.2": + version "10.2.2" + resolved "https://registry.yarnpkg.com/@secretlint/resolver/-/resolver-10.2.2.tgz#9c3c3e2fef00679fcce99793e76e19e575b75721" + integrity sha512-3md0cp12e+Ae5V+crPQYGd6aaO7ahw95s28OlULGyclyyUtf861UoRGS2prnUrKh7MZb23kdDOyGCYb9br5e4w== "@secretlint/secretlint-formatter-sarif@^10.1.1": - version "10.1.1" - resolved "https://registry.yarnpkg.com/@secretlint/secretlint-formatter-sarif/-/secretlint-formatter-sarif-10.1.1.tgz#b303009f61cbf07f637a8a1b98d9c3a5d7294310" - integrity sha512-Dyq8nzy6domjSlZKX1E5PEzuWxeTqjQJWrlXBmVmOjwLBLfRZDlm5Vq+AduBmEk03KEIKIZi4cZQwsniuRPO9Q== + version "10.2.2" + resolved "https://registry.yarnpkg.com/@secretlint/secretlint-formatter-sarif/-/secretlint-formatter-sarif-10.2.2.tgz#5c4044a6a6c9d95e2f57270d6184931f0979d649" + integrity sha512-ojiF9TGRKJJw308DnYBucHxkpNovDNu1XvPh7IfUp0A12gzTtxuWDqdpuVezL7/IP8Ua7mp5/VkDMN9OLp1doQ== dependencies: - node-sarif-builder "^2.0.3" + node-sarif-builder "^3.2.0" "@secretlint/secretlint-rule-no-dotenv@^10.1.1": - version "10.1.1" - resolved "https://registry.yarnpkg.com/@secretlint/secretlint-rule-no-dotenv/-/secretlint-rule-no-dotenv-10.1.1.tgz#566ef941fc6f64bfc113ee7ca0500de5f6af9fd3" - integrity sha512-a3/sOUUtEHuw1HCadtxUjViNeomiiohfJj+rwtHxJkCq4pjITS3HSYhQBXnNvkctQNljKIzFm7JUA/4QJ6I4sQ== + version "10.2.2" + resolved "https://registry.yarnpkg.com/@secretlint/secretlint-rule-no-dotenv/-/secretlint-rule-no-dotenv-10.2.2.tgz#ea43dcc2abd1dac3288b056610361f319f5ce6e9" + integrity sha512-KJRbIShA9DVc5Va3yArtJ6QDzGjg3PRa1uYp9As4RsyKtKSSZjI64jVca57FZ8gbuk4em0/0Jq+uy6485wxIdg== dependencies: - "@secretlint/types" "^10.1.1" + "@secretlint/types" "^10.2.2" "@secretlint/secretlint-rule-preset-recommend@^10.1.1": - version "10.1.1" - resolved "https://registry.yarnpkg.com/@secretlint/secretlint-rule-preset-recommend/-/secretlint-rule-preset-recommend-10.1.1.tgz#843cb3762c143444887e02e413afc00c5216fe02" - integrity sha512-+GeISCXVgpnoeRZE4ZPsuO97+fm6z8Ge23LNq6LvR9ZJAq018maXVftkJhHj4hnvYB5URUAEerBBkPGNk5/Ong== + version "10.2.2" + resolved "https://registry.yarnpkg.com/@secretlint/secretlint-rule-preset-recommend/-/secretlint-rule-preset-recommend-10.2.2.tgz#27b17c38b360c6788826d28fcda28ac6e9772d0b" + integrity sha512-K3jPqjva8bQndDKJqctnGfwuAxU2n9XNCPtbXVI5JvC7FnQiNg/yWlQPbMUlBXtBoBGFYp08A94m6fvtc9v+zA== -"@secretlint/source-creator@^10.1.1": - version "10.1.1" - resolved "https://registry.yarnpkg.com/@secretlint/source-creator/-/source-creator-10.1.1.tgz#f00009fbddb1a91de021bfcfac34fb54b3aef801" - integrity sha512-IWjvHcE0bhC/x88a9M9jbZlFRZGUEbBzujxrs2KzI5IQ2BXTBRBRhRSjE/BEpWqDHILB22c3mfam8X+UjukphA== +"@secretlint/source-creator@^10.2.2": + version "10.2.2" + resolved "https://registry.yarnpkg.com/@secretlint/source-creator/-/source-creator-10.2.2.tgz#d600b6d4487859cdd39bbb1cf8cf744540b3f7a1" + integrity sha512-h6I87xJfwfUTgQ7irWq7UTdq/Bm1RuQ/fYhA3dtTIAop5BwSFmZyrchph4WcoEvbN460BWKmk4RYSvPElIIvxw== dependencies: - "@secretlint/types" "^10.1.1" + "@secretlint/types" "^10.2.2" istextorbinary "^9.5.0" -"@secretlint/types@^10.1.1": - version "10.1.1" - resolved "https://registry.yarnpkg.com/@secretlint/types/-/types-10.1.1.tgz#6f6176ba1444031f5787ef76e2ac7b767733de4b" - integrity sha512-/JGAvVkurVHkargk3AC7UxRy+Ymc+52AVBO/fZA5pShuLW2dX4O/rKc4n8cyhQiOb/3ym5ACSlLQuQ8apPfxrQ== +"@secretlint/types@^10.2.2": + version "10.2.2" + resolved "https://registry.yarnpkg.com/@secretlint/types/-/types-10.2.2.tgz#1412d8f699fd900182cbf4c2923a9df9eb321ca7" + integrity sha512-Nqc90v4lWCXyakD6xNyNACBJNJ0tNCwj2WNk/7ivyacYHxiITVgmLUFXTBOeCdy79iz6HtN9Y31uw/jbLrdOAg== -"@shikijs/core@3.1.0": - version "3.1.0" - resolved "https://registry.npmjs.org/@shikijs/core/-/core-3.1.0.tgz" - integrity sha512-1ppAOyg3F18N8Ge9DmJjGqRVswihN33rOgPovR6gUHW17Hw1L4RlRhnmVQcsacSHh0A8IO1FIgNbtTxUFwodmg== +"@shikijs/core@3.12.0", "@shikijs/core@^3.9.2": + version "3.12.0" + resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-3.12.0.tgz#b193f7460c22bfdc2f4cd9b28fb2a88cb2a3c1f2" + integrity sha512-rPfCBd6gHIKBPpf2hKKWn2ISPSrmRKAFi+bYDjvZHpzs3zlksWvEwaF3Z4jnvW+xHxSRef7qDooIJkY0RpA9EA== dependencies: - "@shikijs/types" "3.1.0" + "@shikijs/types" "3.12.0" "@shikijs/vscode-textmate" "^10.0.2" "@types/hast" "^3.0.4" hast-util-to-html "^9.0.5" -"@shikijs/core@3.4.2", "@shikijs/core@^3.2.2": - version "3.4.2" - resolved "https://registry.npmjs.org/@shikijs/core/-/core-3.4.2.tgz" - integrity sha512-AG8vnSi1W2pbgR2B911EfGqtLE9c4hQBYkv/x7Z+Kt0VxhgQKcW7UNDVYsu9YxwV6u+OJrvdJrMq6DNWoBjihQ== +"@shikijs/engine-javascript@3.12.0": + version "3.12.0" + resolved "https://registry.yarnpkg.com/@shikijs/engine-javascript/-/engine-javascript-3.12.0.tgz#a66b13dbde02cafe32dba95b0e0c4c758bd2779d" + integrity sha512-Ni3nm4lnKxyKaDoXQQJYEayX052BL7D0ikU5laHp+ynxPpIF1WIwyhzrMU6WDN7AoAfggVR4Xqx3WN+JTS+BvA== dependencies: - "@shikijs/types" "3.4.2" - "@shikijs/vscode-textmate" "^10.0.2" - "@types/hast" "^3.0.4" - hast-util-to-html "^9.0.5" - -"@shikijs/engine-javascript@3.4.2": - version "3.4.2" - resolved "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-3.4.2.tgz" - integrity sha512-1/adJbSMBOkpScCE/SB6XkjJU17ANln3Wky7lOmrnpl+zBdQ1qXUJg2GXTYVHRq+2j3hd1DesmElTXYDgtfSOQ== - dependencies: - "@shikijs/types" "3.4.2" + "@shikijs/types" "3.12.0" "@shikijs/vscode-textmate" "^10.0.2" oniguruma-to-es "^4.3.3" -"@shikijs/engine-oniguruma@3.4.2": - version "3.4.2" - resolved "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.4.2.tgz" - integrity sha512-zcZKMnNndgRa3ORja6Iemsr3DrLtkX3cAF7lTJkdMB6v9alhlBsX9uNiCpqofNrXOvpA3h6lHcLJxgCIhVOU5Q== +"@shikijs/engine-oniguruma@3.12.0": + version "3.12.0" + resolved "https://registry.yarnpkg.com/@shikijs/engine-oniguruma/-/engine-oniguruma-3.12.0.tgz#060ca540c857fd7851a75d1280254392da96015b" + integrity sha512-IfDl3oXPbJ/Jr2K8mLeQVpnF+FxjAc7ZPDkgr38uEw/Bg3u638neSrpwqOTnTHXt1aU0Fk1/J+/RBdst1kVqLg== dependencies: - "@shikijs/types" "3.4.2" + "@shikijs/types" "3.12.0" "@shikijs/vscode-textmate" "^10.0.2" -"@shikijs/langs@3.4.2": - version "3.4.2" - resolved "https://registry.npmjs.org/@shikijs/langs/-/langs-3.4.2.tgz" - integrity sha512-H6azIAM+OXD98yztIfs/KH5H4PU39t+SREhmM8LaNXyUrqj2mx+zVkr8MWYqjceSjDw9I1jawm1WdFqU806rMA== +"@shikijs/langs@3.12.0": + version "3.12.0" + resolved "https://registry.yarnpkg.com/@shikijs/langs/-/langs-3.12.0.tgz#8c3c2035ee15a05566691f28eeb91084edd9ed75" + integrity sha512-HIca0daEySJ8zuy9bdrtcBPhcYBo8wR1dyHk1vKrOuwDsITtZuQeGhEkcEfWc6IDyTcom7LRFCH6P7ljGSCEiQ== dependencies: - "@shikijs/types" "3.4.2" + "@shikijs/types" "3.12.0" -"@shikijs/themes@3.4.2": - version "3.4.2" - resolved "https://registry.npmjs.org/@shikijs/themes/-/themes-3.4.2.tgz" - integrity sha512-qAEuAQh+brd8Jyej2UDDf+b4V2g1Rm8aBIdvt32XhDPrHvDkEnpb7Kzc9hSuHUxz0Iuflmq7elaDuQAP9bHIhg== +"@shikijs/themes@3.12.0": + version "3.12.0" + resolved "https://registry.yarnpkg.com/@shikijs/themes/-/themes-3.12.0.tgz#704f9bec156b25b873e42474c6dc8472ad96f246" + integrity sha512-/lxvQxSI5s4qZLV/AuFaA4Wt61t/0Oka/P9Lmpr1UV+HydNCczO3DMHOC/CsXCCpbv4Zq8sMD0cDa7mvaVoj0Q== dependencies: - "@shikijs/types" "3.4.2" + "@shikijs/types" "3.12.0" -"@shikijs/transformers@^3.2.2": - version "3.4.2" - resolved "https://registry.npmjs.org/@shikijs/transformers/-/transformers-3.4.2.tgz" - integrity sha512-I5baLVi/ynLEOZoWSAMlACHNnG+yw5HDmse0oe+GW6U1u+ULdEB3UHiVWaHoJSSONV7tlcVxuaMy74sREDkSvg== +"@shikijs/transformers@^3.9.2": + version "3.12.0" + resolved "https://registry.yarnpkg.com/@shikijs/transformers/-/transformers-3.12.0.tgz#1f91f3c504f3d5110996690d58be72ec377a46e6" + integrity sha512-HcJwlvMAyZzOY+ayEAGE891BdJ7Vtio+qdWUTF9ki4d0LIkDb6DBz8ynOWGAEglHv6eQs/WcAWf/h6ina6IgCw== dependencies: - "@shikijs/core" "3.4.2" - "@shikijs/types" "3.4.2" + "@shikijs/core" "3.12.0" + "@shikijs/types" "3.12.0" "@shikijs/twoslash@": - version "3.1.0" - resolved "https://registry.npmjs.org/@shikijs/twoslash/-/twoslash-3.1.0.tgz" - integrity sha512-cEaS6Nw1IhcJRc0RxJWIaZLXq0A5d9aJ9LoRfO4+y1L1wqC/+YCqrMEZqxkdjep3usCbZRae13fcXMd4pz8fHQ== - dependencies: - "@shikijs/core" "3.1.0" - "@shikijs/types" "3.1.0" - twoslash "^0.3.1" - -"@shikijs/types@3.1.0": - version "3.1.0" - resolved "https://registry.npmjs.org/@shikijs/types/-/types-3.1.0.tgz" - integrity sha512-F8e7Fy4ihtcNpJG572BZZC1ErYrBrzJ5Cbc9Zi3REgWry43gIvjJ9lFAoUnuy7Bvy4IFz7grUSxL5edfrrjFEA== + version "3.12.0" + resolved "https://registry.yarnpkg.com/@shikijs/twoslash/-/twoslash-3.12.0.tgz#1e1240df16b409477f16cddb9cd11e9dc83baf41" + integrity sha512-gO8u8ZYs7MginBaIFZf4nDX46gZZNcbtLwjy4bdPxw/uG6GKAWhvLSh5jMLnjA+7++K3UpuylAe+vqF9doAJgA== dependencies: - "@shikijs/vscode-textmate" "^10.0.2" - "@types/hast" "^3.0.4" + "@shikijs/core" "3.12.0" + "@shikijs/types" "3.12.0" + twoslash "^0.3.4" -"@shikijs/types@3.4.2", "@shikijs/types@^3.2.2": - version "3.4.2" - resolved "https://registry.npmjs.org/@shikijs/types/-/types-3.4.2.tgz" - integrity sha512-zHC1l7L+eQlDXLnxvM9R91Efh2V4+rN3oMVS2swCBssbj2U/FBwybD1eeLaq8yl/iwT+zih8iUbTBCgGZOYlVg== +"@shikijs/types@3.12.0", "@shikijs/types@^3.9.2": + version "3.12.0" + resolved "https://registry.yarnpkg.com/@shikijs/types/-/types-3.12.0.tgz#3d5f30acb6a3e6a72a1089fa8ca4764fc9f61336" + integrity sha512-jsFzm8hCeTINC3OCmTZdhR9DOl/foJWplH2Px0bTi4m8z59fnsueLsweX82oGcjRQ7mfQAluQYKGoH2VzsWY4A== dependencies: "@shikijs/vscode-textmate" "^10.0.2" "@types/hast" "^3.0.4" "@shikijs/vitepress-twoslash@^3.4.2": - version "3.4.2" - resolved "https://registry.npmjs.org/@shikijs/vitepress-twoslash/-/vitepress-twoslash-3.4.2.tgz" - integrity sha512-irVhypyX0vs79S00buqBGYeBJnBtBV50nqppPcKz3TiGlaWxH3BqcCLbJ6cl39N1hxzzuI51SVQv21SbjfsCBA== + version "3.12.0" + resolved "https://registry.yarnpkg.com/@shikijs/vitepress-twoslash/-/vitepress-twoslash-3.12.0.tgz#431f5ab2b50f4a12ed96a1589083c6104d4765f2" + integrity sha512-aFcZviQFgig2Ejvmzu598ZBM7u2UmCIMFquH2d8L0JTLuGKYqxlx3jsw7eMye1ZRsWz14a9/f41UNy6FDlNYHQ== dependencies: "@shikijs/twoslash" "" floating-vue "^5.2.2" + lz-string "^1.5.0" + magic-string "^0.30.17" + markdown-it "^14.1.0" mdast-util-from-markdown "^2.0.2" mdast-util-gfm "^3.1.0" mdast-util-to-hast "^13.2.0" - shiki "3.4.2" - twoslash "^0.3.1" - twoslash-vue "^0.3.1" - vue "^3.5.14" + ohash "^2.0.11" + shiki "3.12.0" + twoslash "^0.3.4" + twoslash-vue "^0.3.4" + vue "^3.5.20" "@shikijs/vscode-textmate@^10.0.2": version "10.0.2" - resolved "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz" + resolved "https://registry.yarnpkg.com/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz#a90ab31d0cc1dfb54c66a69e515bf624fa7b2224" integrity sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg== "@sigstore/bundle@^2.3.2": version "2.3.2" - resolved "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.3.2.tgz" + resolved "https://registry.yarnpkg.com/@sigstore/bundle/-/bundle-2.3.2.tgz#ad4dbb95d665405fd4a7a02c8a073dbd01e4e95e" integrity sha512-wueKWDk70QixNLB363yHc2D2ItTgYiMTdPwK8D9dKQMR3ZQ0c35IxP5xnwQ8cNLoCgCRcHf14kE+CLIvNX1zmA== dependencies: "@sigstore/protobuf-specs" "^0.3.2" "@sigstore/core@^1.0.0", "@sigstore/core@^1.1.0": version "1.1.0" - resolved "https://registry.npmjs.org/@sigstore/core/-/core-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/@sigstore/core/-/core-1.1.0.tgz#5583d8f7ffe599fa0a89f2bf289301a5af262380" integrity sha512-JzBqdVIyqm2FRQCulY6nbQzMpJJpSiJ8XXWMhtOX9eKgaXXpfNOF53lzQEjIydlStnd/eFtuC1dW4VYdD93oRg== "@sigstore/protobuf-specs@^0.3.2": version "0.3.3" - resolved "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.3.3.tgz" + resolved "https://registry.yarnpkg.com/@sigstore/protobuf-specs/-/protobuf-specs-0.3.3.tgz#7dd46d68b76c322873a2ef7581ed955af6f4dcde" integrity sha512-RpacQhBlwpBWd7KEJsRKcBQalbV28fvkxwTOJIqhIuDysMMaJW47V4OqW30iJB9uRpqOSxxEAQFdr8tTattReQ== "@sigstore/sign@^2.3.2": version "2.3.2" - resolved "https://registry.npmjs.org/@sigstore/sign/-/sign-2.3.2.tgz" + resolved "https://registry.yarnpkg.com/@sigstore/sign/-/sign-2.3.2.tgz#d3d01e56d03af96fd5c3a9b9897516b1233fc1c4" integrity sha512-5Vz5dPVuunIIvC5vBb0APwo7qKA4G9yM48kPWJT+OEERs40md5GoUR1yedwpekWZ4m0Hhw44m6zU+ObsON+iDA== dependencies: "@sigstore/bundle" "^2.3.2" @@ -2034,7 +1630,7 @@ "@sigstore/tuf@^2.3.4": version "2.3.4" - resolved "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.4.tgz" + resolved "https://registry.yarnpkg.com/@sigstore/tuf/-/tuf-2.3.4.tgz#da1d2a20144f3b87c0172920cbc8dcc7851ca27c" integrity sha512-44vtsveTPUpqhm9NCrbU8CWLe3Vck2HO1PNLw7RIajbB7xhtn5RBPm1VNSCMwqGYHhDsBJG8gDF0q4lgydsJvw== dependencies: "@sigstore/protobuf-specs" "^0.3.2" @@ -2042,7 +1638,7 @@ "@sigstore/verify@^1.2.1": version "1.2.1" - resolved "https://registry.npmjs.org/@sigstore/verify/-/verify-1.2.1.tgz" + resolved "https://registry.yarnpkg.com/@sigstore/verify/-/verify-1.2.1.tgz#c7e60241b432890dcb8bd8322427f6062ef819e1" integrity sha512-8iKx79/F73DKbGfRf7+t4dqrc0bRr0thdPrxAtCKWRm/F0tG71i6O1rvlnScncJLLBZHn3h8M3c1BSUAb9yu8g== dependencies: "@sigstore/bundle" "^2.3.2" @@ -2051,26 +1647,26 @@ "@sinclair/typebox@^0.27.8": version "0.27.8" - resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz" + resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e" integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA== "@sindresorhus/merge-streams@^2.1.0": version "2.3.0" - resolved "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz" + resolved "https://registry.yarnpkg.com/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz#719df7fb41766bc143369eaa0dd56d8dc87c9958" integrity sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg== "@testing-library/dom@^10.4.0": - version "10.4.0" - resolved "https://registry.npmjs.org/@testing-library/dom/-/dom-10.4.0.tgz" - integrity sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ== + version "10.4.1" + resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-10.4.1.tgz#d444f8a889e9a46e9a3b4f3b88e0fcb3efb6cf95" + integrity sha512-o4PXJQidqJl82ckFaXUeoAW+XysPLauYI43Abki5hABd853iMhitooc6znOnczgbTYmEP6U6/y1ZyKAIsvMKGg== dependencies: "@babel/code-frame" "^7.10.4" "@babel/runtime" "^7.12.5" "@types/aria-query" "^5.0.1" aria-query "5.3.0" - chalk "^4.1.0" dom-accessibility-api "^0.5.9" lz-string "^1.5.0" + picocolors "1.1.1" pretty-format "^27.0.2" "@testing-library/user-event@^14.6.1": @@ -2078,21 +1674,21 @@ resolved "https://registry.yarnpkg.com/@testing-library/user-event/-/user-event-14.6.1.tgz#13e09a32d7a8b7060fe38304788ebf4197cd2149" integrity sha512-vq7fv0rnt+QTXgPxr5Hjc210p6YKq2kmdziLgnsZGgLJ9e6VAShx1pACLuRjd/AS/sr7phAR58OIIpf0LlmQNw== -"@textlint/ast-node-types@14.8.4": - version "14.8.4" - resolved "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-14.8.4.tgz" - integrity sha512-+fI7miec/r9VeniFV9ppL4jRCmHNsTxieulTUf/4tvGII3db5hGriKHC4p/diq1SkQ9Sgs7kg6UyydxZtpTz1Q== +"@textlint/ast-node-types@15.2.2": + version "15.2.2" + resolved "https://registry.yarnpkg.com/@textlint/ast-node-types/-/ast-node-types-15.2.2.tgz#450632e54d08fc6776a620671a0ae29bb6cec08b" + integrity sha512-9ByYNzWV8tpz6BFaRzeRzIov8dkbSZu9q7IWqEIfmRuLWb2qbI/5gTvKcoWT1HYs4XM7IZ8TKSXcuPvMb6eorA== -"@textlint/linter-formatter@^14.8.4": - version "14.8.4" - resolved "https://registry.yarnpkg.com/@textlint/linter-formatter/-/linter-formatter-14.8.4.tgz#4573223860fac9fbfa19a1651ad9176eec9c6a23" - integrity sha512-sZ0UfYRDBNHnfMVBqLqqYnqTB7Ec169ljlmo+SEHR1T+dHUPYy1/DZK4p7QREXlBSFL4cnkswETCbc9xRodm4Q== +"@textlint/linter-formatter@^15.2.0": + version "15.2.2" + resolved "https://registry.yarnpkg.com/@textlint/linter-formatter/-/linter-formatter-15.2.2.tgz#d09311cdba9b48eef3800dca77ac12c4e653ad3a" + integrity sha512-oMVaMJ3exFvXhCj3AqmCbLaeYrTNLqaJnLJMIlmnRM3/kZdxvku4OYdaDzgtlI194cVxamOY5AbHBBVnY79kEg== dependencies: "@azu/format-text" "^1.0.2" "@azu/style-format" "^1.0.1" - "@textlint/module-interop" "14.8.4" - "@textlint/resolver" "14.8.4" - "@textlint/types" "14.8.4" + "@textlint/module-interop" "15.2.2" + "@textlint/resolver" "15.2.2" + "@textlint/types" "15.2.2" chalk "^4.1.2" debug "^4.4.1" js-yaml "^3.14.1" @@ -2103,31 +1699,36 @@ table "^6.9.0" text-table "^0.2.0" -"@textlint/module-interop@14.8.4", "@textlint/module-interop@^14.8.4": - version "14.8.4" - resolved "https://registry.npmjs.org/@textlint/module-interop/-/module-interop-14.8.4.tgz" - integrity sha512-1LdPYLAVpa27NOt6EqvuFO99s4XLB0c19Hw9xKSG6xQ1K82nUEyuWhzTQKb3KJ5Qx7qj14JlXZLfnEuL6A16Bw== +"@textlint/module-interop@15.2.2", "@textlint/module-interop@^15.2.0": + version "15.2.2" + resolved "https://registry.yarnpkg.com/@textlint/module-interop/-/module-interop-15.2.2.tgz#cffb4162265813a5813d5c807d9faae778638d3f" + integrity sha512-2rmNcWrcqhuR84Iio1WRzlc4tEoOMHd6T7urjtKNNefpTt1owrTJ9WuOe60yD3FrTW0J/R0ux5wxUbP/eaeFOA== -"@textlint/resolver@14.8.4": - version "14.8.4" - resolved "https://registry.npmjs.org/@textlint/resolver/-/resolver-14.8.4.tgz" - integrity sha512-nMDOgDAVwNU9ommh+Db0U+MCMNDPbQ/1HBNjbnHwxZkCpcT6hsAJwBe38CW/DtWVUv8yeR4R40IYNPT84srNwA== +"@textlint/resolver@15.2.2": + version "15.2.2" + resolved "https://registry.yarnpkg.com/@textlint/resolver/-/resolver-15.2.2.tgz#4871c590aa3e633b512efa5978e96e96bf7fb9b8" + integrity sha512-4hGWjmHt0y+5NAkoYZ8FvEkj8Mez9TqfbTm3BPjoV32cIfEixl2poTOgapn1rfm73905GSO3P1jiWjmgvii13Q== -"@textlint/types@14.8.4", "@textlint/types@^14.8.4": - version "14.8.4" - resolved "https://registry.npmjs.org/@textlint/types/-/types-14.8.4.tgz" - integrity sha512-9nyY8vVXlr8hHKxa6+37omJhXWCwovMQcgMteuldYd4dOxGm14AK2nXdkgtKEUQnzLGaXy46xwLCfhQy7V7/YA== +"@textlint/types@15.2.2", "@textlint/types@^15.2.0": + version "15.2.2" + resolved "https://registry.yarnpkg.com/@textlint/types/-/types-15.2.2.tgz#9e47d1021ece2cefe1749131b054e1a332cabcda" + integrity sha512-X2BHGAR3yXJsCAjwYEDBIk9qUDWcH4pW61ISfmtejau+tVqKtnbbvEZnMTb6mWgKU1BvTmftd5DmB1XVDUtY3g== dependencies: - "@textlint/ast-node-types" "14.8.4" + "@textlint/ast-node-types" "15.2.2" + +"@trysound/sax@0.2.0": + version "0.2.0" + resolved "https://registry.yarnpkg.com/@trysound/sax/-/sax-0.2.0.tgz#cccaab758af56761eb7bf37af6f03f326dd798ad" + integrity sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA== "@tufjs/canonical-json@2.0.0": version "2.0.0" - resolved "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz#a52f61a3d7374833fca945b2549bc30a2dd40d0a" integrity sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA== "@tufjs/models@2.0.1": version "2.0.1" - resolved "https://registry.npmjs.org/@tufjs/models/-/models-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/@tufjs/models/-/models-2.0.1.tgz#e429714e753b6c2469af3212e7f320a6973c2812" integrity sha512-92F7/SFyufn4DXsha9+QfKnN03JGqtMFMXgSHbZOo8JG59WkTni7UzAouNQDf7AuP9OAMxVOPQcqG3sB7w+kkg== dependencies: "@tufjs/canonical-json" "2.0.0" @@ -2135,14 +1736,14 @@ "@tybys/wasm-util@^0.9.0": version "0.9.0" - resolved "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.9.0.tgz" + resolved "https://registry.yarnpkg.com/@tybys/wasm-util/-/wasm-util-0.9.0.tgz#3e75eb00604c8d6db470bf18c37b7d984a0e3355" integrity sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw== dependencies: tslib "^2.4.0" "@types/aria-query@^5.0.1": version "5.0.4" - resolved "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz" + resolved "https://registry.yarnpkg.com/@types/aria-query/-/aria-query-5.0.4.tgz#1a31c3d378850d2778dabb6374d036dcba4ba708" integrity sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw== "@types/body-parser@*": @@ -2169,7 +1770,7 @@ "@types/debug@^4.0.0": version "4.1.12" - resolved "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz" + resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.12.tgz#a155f21690871953410df4b6b6f53187f0500917" integrity sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ== dependencies: "@types/ms" "*" @@ -2181,17 +1782,17 @@ "@types/ejs@^3.1.4": version "3.1.5" - resolved "https://registry.npmjs.org/@types/ejs/-/ejs-3.1.5.tgz" + resolved "https://registry.yarnpkg.com/@types/ejs/-/ejs-3.1.5.tgz#49d738257cc73bafe45c13cb8ff240683b4d5117" integrity sha512-nv+GSx77ZtXiJzwKdsASqi+YQ5Z7vwHsTP0JY2SiQgjGckkBRKZnk8nIM+7oUZ1VCtuTz0+By4qVR7fqzp/Dfg== "@types/estree@*", "@types/estree@1.0.8", "@types/estree@^1.0.0", "@types/estree@^1.0.6": version "1.0.8" - resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.8.tgz#958b91c991b1867ced318bedea0e215ee050726e" integrity sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w== "@types/expect@^1.20.4": version "1.20.4" - resolved "https://registry.npmjs.org/@types/expect/-/expect-1.20.4.tgz" + resolved "https://registry.yarnpkg.com/@types/expect/-/expect-1.20.4.tgz#8288e51737bf7e3ab5d7c77bfa695883745264e5" integrity sha512-Q5Vn3yjTDyCMV50TB6VRIbQNxSE4OmZR86VSbGaNpfUolm0iePBB4KdEEHmxoY5sT2+2DIvXW0rvMDP2nHZ4Mg== "@types/express-serve-static-core@^4.17.33": @@ -2216,7 +1817,7 @@ "@types/hast@^3.0.0", "@types/hast@^3.0.4": version "3.0.4" - resolved "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz" + resolved "https://registry.yarnpkg.com/@types/hast/-/hast-3.0.4.tgz#1d6b39993b82cea6ad783945b0508c25903e15aa" integrity sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ== dependencies: "@types/unist" "*" @@ -2227,42 +1828,60 @@ integrity sha512-r8Tayk8HJnX0FztbZN7oVqGccWgw98T/0neJphO91KkmOzug1KkofZURD4UaD5uH8AqcFLfdPErnBod0u71/qg== "@types/inquirer@^9.0.3": - version "9.0.8" - resolved "https://registry.npmjs.org/@types/inquirer/-/inquirer-9.0.8.tgz" - integrity sha512-CgPD5kFGWsb8HJ5K7rfWlifao87m4ph8uioU7OTncJevmE/VLIqAAjfQtko578JZg7/f69K4FgqYym3gNr7DeA== + version "9.0.9" + resolved "https://registry.yarnpkg.com/@types/inquirer/-/inquirer-9.0.9.tgz#c659dffbb8c2dab112324c7ae19b3303a972a96d" + integrity sha512-/mWx5136gts2Z2e5izdoRCo46lPp5TMs9R15GTSsgg/XnZyxDWVqoVU3R9lWnccKpqwsJLvRoxbCjoJtZB7DSw== dependencies: "@types/through" "*" rxjs "^7.2.0" "@types/istanbul-lib-coverage@^2.0.1": version "2.0.6" - resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz#7739c232a1fee9b4d3ce8985f314c0c6d33549d7" integrity sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w== "@types/json-schema@^7.0.15": version "7.0.15" - resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== +"@types/linkify-it@^5": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@types/linkify-it/-/linkify-it-5.0.0.tgz#21413001973106cda1c3a9b91eedd4ccd5469d76" + integrity sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q== + "@types/lodash-es@^4.17.9": version "4.17.12" - resolved "https://registry.npmjs.org/@types/lodash-es/-/lodash-es-4.17.12.tgz" + resolved "https://registry.yarnpkg.com/@types/lodash-es/-/lodash-es-4.17.12.tgz#65f6d1e5f80539aa7cfbfc962de5def0cf4f341b" integrity sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ== dependencies: "@types/lodash" "*" "@types/lodash@*": - version "4.17.19" - resolved "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.19.tgz" - integrity sha512-NYqRyg/hIQrYPT9lbOeYc3kIRabJDn/k4qQHIXUpx88CBDww2fD15Sg5kbXlW86zm2XEW4g0QxkTI3/Kfkc7xQ== + version "4.17.20" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.17.20.tgz#1ca77361d7363432d29f5e55950d9ec1e1c6ea93" + integrity sha512-H3MHACvFUEiujabxhaI/ImO6gUrd8oOurg7LQtS7mbwIXA/cUqWrvBsaeJ23aZEPk1TAYkurjfMbSELfoCXlGA== + +"@types/markdown-it@^14.1.2": + version "14.1.2" + resolved "https://registry.yarnpkg.com/@types/markdown-it/-/markdown-it-14.1.2.tgz#57f2532a0800067d9b934f3521429a2e8bfb4c61" + integrity sha512-promo4eFwuiW+TfGxhi+0x3czqTYJkG8qB17ZUJiVF10Xm7NLVRSLUsfRTU/6h1e24VvRnXCx+hG7li58lkzog== + dependencies: + "@types/linkify-it" "^5" + "@types/mdurl" "^2" "@types/mdast@^4.0.0": version "4.0.4" - resolved "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz" + resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-4.0.4.tgz#7ccf72edd2f1aa7dd3437e180c64373585804dd6" integrity sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA== dependencies: "@types/unist" "*" +"@types/mdurl@^2": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@types/mdurl/-/mdurl-2.0.0.tgz#d43878b5b20222682163ae6f897b20447233bdfd" + integrity sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg== + "@types/mime@^1": version "1.3.5" resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.5.tgz#1ef302e01cf7d2b5a0fa526790c9123bf1d06690" @@ -2270,15 +1889,15 @@ "@types/mocha@^10.0.2": version "10.0.10" - resolved "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.10.tgz" + resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-10.0.10.tgz#91f62905e8d23cbd66225312f239454a23bebfa0" integrity sha512-xPyYSz1cMPnJQhl0CLMH68j3gprKZaTjG3s5Vi+fDgx+uhG9NOXwbVt52eFS8ECyXhyKcjDLCBEqBExKuiZb7Q== "@types/ms@*": version "2.1.0" - resolved "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/@types/ms/-/ms-2.1.0.tgz#052aa67a48eccc4309d7f0191b7e41434b90bb78" integrity sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA== -"@types/node@*", "@types/node@^24.1.0": +"@types/node@*", "@types/node@>=16.18.31", "@types/node@>=18", "@types/node@^24.1.0": version "24.3.0" resolved "https://registry.yarnpkg.com/@types/node/-/node-24.3.0.tgz#89b09f45cb9a8ee69466f18ee5864e4c3eb84dec" integrity sha512-aPTXCrfwnDLj4VvXrm+UUCQjNEvJgNA8s5F1cvwQU+3KNltTOkBm1j30uNLyqqPNe7gE3KFzImYoZEfLhp4Yow== @@ -2292,21 +1911,14 @@ dependencies: undici-types "~6.21.0" -"@types/node@>=16.18.31", "@types/node@>=18": - version "24.0.8" - resolved "https://registry.npmjs.org/@types/node/-/node-24.0.8.tgz" - integrity sha512-WytNrFSgWO/esSH9NbpWUfTMGQwCGIKfCmNlmFDNiI5gGhgMmEA+V1AEvKLeBNvvtBnailJtkrEa2OIISwrVAA== - dependencies: - undici-types "~7.8.0" - "@types/node@^16.18.28": version "16.18.126" - resolved "https://registry.npmjs.org/@types/node/-/node-16.18.126.tgz" + resolved "https://registry.yarnpkg.com/@types/node/-/node-16.18.126.tgz#27875faa2926c0f475b39a8bb1e546c0176f8d4b" integrity sha512-OTcgaiwfGFBKacvfwuHzzn1KLxH/er8mluiy8/uM3sGXHaRe73RrSIj01jow9t4kJEW633Ov+cOexXeiApTyAw== -"@types/normalize-package-data@^2.4.1", "@types/normalize-package-data@^2.4.3": +"@types/normalize-package-data@^2.4.3": version "2.4.4" - resolved "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz" + resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz#56e2cc26c397c038fab0e3a917a12d5c5909e901" integrity sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA== "@types/qs@*": @@ -2321,12 +1933,12 @@ "@types/resolve@1.20.2": version "1.20.2" - resolved "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz" + resolved "https://registry.yarnpkg.com/@types/resolve/-/resolve-1.20.2.tgz#97d26e00cd4a0423b4af620abecf3e6f442b7975" integrity sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q== -"@types/sarif@^2.1.4": +"@types/sarif@^2.1.7": version "2.1.7" - resolved "https://registry.npmjs.org/@types/sarif/-/sarif-2.1.7.tgz" + resolved "https://registry.yarnpkg.com/@types/sarif/-/sarif-2.1.7.tgz#dab4d16ba7568e9846c454a8764f33c5d98e5524" integrity sha512-kRz0VEkJqWLf1LLVN4pT1cg1Z9wAuvI6L97V3m2f5B76Tg8d413ddvLBPTEHAZJlnn4XSvu0FkZtViCQGVyrXQ== "@types/send@*": @@ -2348,24 +1960,24 @@ "@types/through@*": version "0.0.33" - resolved "https://registry.npmjs.org/@types/through/-/through-0.0.33.tgz" + resolved "https://registry.yarnpkg.com/@types/through/-/through-0.0.33.tgz#14ebf599320e1c7851e7d598149af183c6b9ea56" integrity sha512-HsJ+z3QuETzP3cswwtzt2vEIiHBk/dCcHGhbmG5X3ecnwFD/lPrMpliGXxSCg03L9AhrdwA4Oz/qfspkDW+xGQ== dependencies: "@types/node" "*" "@types/trusted-types@^2.0.2": version "2.0.7" - resolved "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz" + resolved "https://registry.yarnpkg.com/@types/trusted-types/-/trusted-types-2.0.7.tgz#baccb07a970b91707df3a3e8ba6896c57ead2d11" integrity sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw== "@types/unist@*", "@types/unist@^3.0.0": version "3.0.3" - resolved "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz" + resolved "https://registry.yarnpkg.com/@types/unist/-/unist-3.0.3.tgz#acaab0f919ce69cce629c2d4ed2eb4adc1b6c20c" integrity sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q== "@types/vinyl@^2.0.7", "@types/vinyl@^2.0.8": version "2.0.12" - resolved "https://registry.npmjs.org/@types/vinyl/-/vinyl-2.0.12.tgz" + resolved "https://registry.yarnpkg.com/@types/vinyl/-/vinyl-2.0.12.tgz#17642ca9a8ae10f3db018e9f885da4188db4c6e6" integrity sha512-Sr2fYMBUVGYq8kj3UthXFAu5UN6ZW+rYr4NACjZQJvHvj+c8lYv0CahmZ2P/r7iUkN44gGUBwqxZkrKXYPb7cw== dependencies: "@types/expect" "^1.20.4" @@ -2378,42 +1990,33 @@ "@types/web-bluetooth@^0.0.21": version "0.0.21" - resolved "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.21.tgz" + resolved "https://registry.yarnpkg.com/@types/web-bluetooth/-/web-bluetooth-0.0.21.tgz#525433c784aed9b457aaa0ee3d92aeb71f346b63" integrity sha512-oIQLCGWtcFZy2JW77j9k8nHzAOpqMHLQejDA48XXMWH6tjCQHz5RCFz1bzsmROyL6PUm+LLnUiI4BCn221inxA== "@typescript-eslint/eslint-plugin@^8.40.0": - version "8.40.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.40.0.tgz#19f959f273b32f5082c891903645e6a85328db4e" - integrity sha512-w/EboPlBwnmOBtRbiOvzjD+wdiZdgFeo17lkltrtn7X37vagKKWJABvyfsJXTlHe6XBzugmYgd4A4nW+k8Mixw== + version "8.41.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.41.0.tgz#42209e2ce3e2274de0f5f9b75c777deedacaa558" + integrity sha512-8fz6oa6wEKZrhXWro/S3n2eRJqlRcIa6SlDh59FXJ5Wp5XRZ8B9ixpJDcjadHq47hMx0u+HW6SNa6LjJQ6NLtw== dependencies: "@eslint-community/regexpp" "^4.10.0" - "@typescript-eslint/scope-manager" "8.40.0" - "@typescript-eslint/type-utils" "8.40.0" - "@typescript-eslint/utils" "8.40.0" - "@typescript-eslint/visitor-keys" "8.40.0" + "@typescript-eslint/scope-manager" "8.41.0" + "@typescript-eslint/type-utils" "8.41.0" + "@typescript-eslint/utils" "8.41.0" + "@typescript-eslint/visitor-keys" "8.41.0" graphemer "^1.4.0" ignore "^7.0.0" natural-compare "^1.4.0" ts-api-utils "^2.1.0" "@typescript-eslint/parser@^8.40.0": - version "8.40.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.40.0.tgz#1bc9f3701ced29540eb76ff2d95ce0d52ddc7e69" - integrity sha512-jCNyAuXx8dr5KJMkecGmZ8KI61KBUhkCob+SD+C+I5+Y1FWI2Y3QmY4/cxMCC5WAsZqoEtEETVhUiUMIGCf6Bw== - dependencies: - "@typescript-eslint/scope-manager" "8.40.0" - "@typescript-eslint/types" "8.40.0" - "@typescript-eslint/typescript-estree" "8.40.0" - "@typescript-eslint/visitor-keys" "8.40.0" - debug "^4.3.4" - -"@typescript-eslint/project-service@8.40.0": - version "8.40.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/project-service/-/project-service-8.40.0.tgz#1b7ba6079ff580c3215882fe75a43e5d3ed166b9" - integrity sha512-/A89vz7Wf5DEXsGVvcGdYKbVM9F7DyFXj52lNYUDS1L9yJfqjW/fIp5PgMuEJL/KeqVTe2QSbXAGUZljDUpArw== + version "8.41.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.41.0.tgz#677f5b2b3fa947ee1eac4129220c051b1990d898" + integrity sha512-gTtSdWX9xiMPA/7MV9STjJOOYtWwIJIYxkQxnSV1U3xcE+mnJSH3f6zI0RYP+ew66WSlZ5ed+h0VCxsvdC1jJg== dependencies: - "@typescript-eslint/tsconfig-utils" "^8.40.0" - "@typescript-eslint/types" "^8.40.0" + "@typescript-eslint/scope-manager" "8.41.0" + "@typescript-eslint/types" "8.41.0" + "@typescript-eslint/typescript-estree" "8.41.0" + "@typescript-eslint/visitor-keys" "8.41.0" debug "^4.3.4" "@typescript-eslint/project-service@8.41.0": @@ -2425,62 +2028,36 @@ "@typescript-eslint/types" "^8.41.0" debug "^4.3.4" -"@typescript-eslint/scope-manager@8.40.0": - version "8.40.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.40.0.tgz#2fbfcc8643340d8cd692267e61548b946190be8a" - integrity sha512-y9ObStCcdCiZKzwqsE8CcpyuVMwRouJbbSrNuThDpv16dFAj429IkM6LNb1dZ2m7hK5fHyzNcErZf7CEeKXR4w== +"@typescript-eslint/scope-manager@8.41.0": + version "8.41.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.41.0.tgz#c8aba12129cb9cead1f1727f58e6a0fcebeecdb5" + integrity sha512-n6m05bXn/Cd6DZDGyrpXrELCPVaTnLdPToyhBoFkLIMznRUQUEQdSp96s/pcWSQdqOhrgR1mzJ+yItK7T+WPMQ== dependencies: - "@typescript-eslint/types" "8.40.0" - "@typescript-eslint/visitor-keys" "8.40.0" - -"@typescript-eslint/tsconfig-utils@8.40.0", "@typescript-eslint/tsconfig-utils@^8.40.0": - version "8.40.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.40.0.tgz#8e8fdb9b988854aedd04abdde3239c4bdd2d26e4" - integrity sha512-jtMytmUaG9d/9kqSl/W3E3xaWESo4hFDxAIHGVW/WKKtQhesnRIJSAJO6XckluuJ6KDB5woD1EiqknriCtAmcw== + "@typescript-eslint/types" "8.41.0" + "@typescript-eslint/visitor-keys" "8.41.0" "@typescript-eslint/tsconfig-utils@8.41.0", "@typescript-eslint/tsconfig-utils@^8.41.0": version "8.41.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.41.0.tgz#134dee36eb16cdd78095a20bca0516d10b5dda75" integrity sha512-TDhxYFPUYRFxFhuU5hTIJk+auzM/wKvWgoNYOPcOf6i4ReYlOoYN8q1dV5kOTjNQNJgzWN3TUUQMtlLOcUgdUw== -"@typescript-eslint/type-utils@8.40.0": - version "8.40.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.40.0.tgz#a7e4a1f0815dd0ba3e4eef945cc87193ca32c422" - integrity sha512-eE60cK4KzAc6ZrzlJnflXdrMqOBaugeukWICO2rB0KNvwdIMaEaYiywwHMzA1qFpTxrLhN9Lp4E/00EgWcD3Ow== +"@typescript-eslint/type-utils@8.41.0": + version "8.41.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.41.0.tgz#68d401e38fccf239925447e97bdbd048a9891ae5" + integrity sha512-63qt1h91vg3KsjVVonFJWjgSK7pZHSQFKH6uwqxAH9bBrsyRhO6ONoKyXxyVBzG1lJnFAJcKAcxLS54N1ee1OQ== dependencies: - "@typescript-eslint/types" "8.40.0" - "@typescript-eslint/typescript-estree" "8.40.0" - "@typescript-eslint/utils" "8.40.0" + "@typescript-eslint/types" "8.41.0" + "@typescript-eslint/typescript-estree" "8.41.0" + "@typescript-eslint/utils" "8.41.0" debug "^4.3.4" ts-api-utils "^2.1.0" -"@typescript-eslint/types@8.40.0", "@typescript-eslint/types@^8.40.0": - version "8.40.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.40.0.tgz#0b580fdf643737aa5c01285314b5c6e9543846a9" - integrity sha512-ETdbFlgbAmXHyFPwqUIYrfc12ArvpBhEVgGAxVYSwli26dn8Ko+lIo4Su9vI9ykTZdJn+vJprs/0eZU0YMAEQg== - "@typescript-eslint/types@8.41.0", "@typescript-eslint/types@^8.41.0": version "8.41.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.41.0.tgz#9935afeaae65e535abcbcee95383fa649c64d16d" integrity sha512-9EwxsWdVqh42afLbHP90n2VdHaWU/oWgbH2P0CfcNfdKL7CuKpwMQGjwev56vWu9cSKU7FWSu6r9zck6CVfnag== -"@typescript-eslint/typescript-estree@8.40.0": - version "8.40.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.40.0.tgz#295149440ce7da81c790a4e14e327599a3a1e5c9" - integrity sha512-k1z9+GJReVVOkc1WfVKs1vBrR5MIKKbdAjDTPvIK3L8De6KbFfPFt6BKpdkdk7rZS2GtC/m6yI5MYX+UsuvVYQ== - dependencies: - "@typescript-eslint/project-service" "8.40.0" - "@typescript-eslint/tsconfig-utils" "8.40.0" - "@typescript-eslint/types" "8.40.0" - "@typescript-eslint/visitor-keys" "8.40.0" - debug "^4.3.4" - fast-glob "^3.3.2" - is-glob "^4.0.3" - minimatch "^9.0.4" - semver "^7.6.0" - ts-api-utils "^2.1.0" - -"@typescript-eslint/typescript-estree@^8.33.0": +"@typescript-eslint/typescript-estree@8.41.0", "@typescript-eslint/typescript-estree@^8.33.0": version "8.41.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.41.0.tgz#7c9cff8b4334ce96f14e9689692e8cf426ce4d59" integrity sha512-D43UwUYJmGhuwHfY7MtNKRZMmfd8+p/eNSfFe6tH5mbVDto+VQCayeAt35rOx3Cs6wxD16DQtIKw/YXxt5E0UQ== @@ -2496,23 +2073,15 @@ semver "^7.6.0" ts-api-utils "^2.1.0" -"@typescript-eslint/utils@8.40.0": - version "8.40.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.40.0.tgz#8d0c6430ed2f5dc350784bb0d8be514da1e54054" - integrity sha512-Cgzi2MXSZyAUOY+BFwGs17s7ad/7L+gKt6Y8rAVVWS+7o6wrjeFN4nVfTpbE25MNcxyJ+iYUXflbs2xR9h4UBg== +"@typescript-eslint/utils@8.41.0": + version "8.41.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.41.0.tgz#17cb3b766c1626311004ea41ffd8c27eb226b953" + integrity sha512-udbCVstxZ5jiPIXrdH+BZWnPatjlYwJuJkDA4Tbo3WyYLh8NvB+h/bKeSZHDOFKfphsZYJQqaFtLeXEqurQn1A== dependencies: "@eslint-community/eslint-utils" "^4.7.0" - "@typescript-eslint/scope-manager" "8.40.0" - "@typescript-eslint/types" "8.40.0" - "@typescript-eslint/typescript-estree" "8.40.0" - -"@typescript-eslint/visitor-keys@8.40.0": - version "8.40.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.40.0.tgz#c1b45196981311fed7256863be4bfb2d3eda332a" - integrity sha512-8CZ47QwalyRjsypfwnbI3hKy5gJDPmrkLjkgMxhi0+DZZ2QNx2naS6/hWoVYUHU7LU2zleF68V9miaVZvhFfTA== - dependencies: - "@typescript-eslint/types" "8.40.0" - eslint-visitor-keys "^4.2.1" + "@typescript-eslint/scope-manager" "8.41.0" + "@typescript-eslint/types" "8.41.0" + "@typescript-eslint/typescript-estree" "8.41.0" "@typescript-eslint/visitor-keys@8.41.0", "@typescript-eslint/visitor-keys@^8.33.0": version "8.41.0" @@ -2524,15 +2093,15 @@ "@typescript/vfs@^1.6.1": version "1.6.1" - resolved "https://registry.npmjs.org/@typescript/vfs/-/vfs-1.6.1.tgz" + resolved "https://registry.yarnpkg.com/@typescript/vfs/-/vfs-1.6.1.tgz#fe7087d5a43715754f7ea9bf6e0b905176c9eebd" integrity sha512-JwoxboBh7Oz1v38tPbkrZ62ZXNHAk9bJ7c9x0eI5zBfBnBYGhURdbnh7Z4smN/MV48Y5OCcZb58n972UtbazsA== dependencies: debug "^4.1.1" -"@typespec/ts-http-runtime@^0.2.2", "@typespec/ts-http-runtime@^0.2.3": - version "0.2.3" - resolved "https://registry.npmjs.org/@typespec/ts-http-runtime/-/ts-http-runtime-0.2.3.tgz" - integrity sha512-oRhjSzcVjX8ExyaF8hC0zzTqxlVuRlgMHL/Bh4w3xB9+wjbm0FpXylVU/lBrn+kgphwYTrOk3tp+AVShGmlYCg== +"@typespec/ts-http-runtime@^0.3.0": + version "0.3.0" + resolved "https://registry.yarnpkg.com/@typespec/ts-http-runtime/-/ts-http-runtime-0.3.0.tgz#f506ff2170e594a257f8e78aa196088f3a46a22d" + integrity sha512-sOx1PKSuFwnIl7z4RN0Ls7N9AQawmR9r66eI5rFCzLDIs8HTIYrIpH9QjYWoX0lkgGrkLxXhi4QnK7MizPRrIg== dependencies: http-proxy-agent "^7.0.0" https-proxy-agent "^7.0.0" @@ -2543,17 +2112,12 @@ resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.3.0.tgz#d06bbb384ebcf6c505fde1c3d0ed4ddffe0aaff8" integrity sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g== -"@vitejs/plugin-vue@^5.2.3": - version "5.2.4" - resolved "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.2.4.tgz" - integrity sha512-7Yx/SXSOcQq5HiiV3orevHUFn+pmMB4cgbEkDYgnkUWb0WfeQ/wa2yFv6D5ICiCQOVpjA7vYDXrC7AGO8yjDHA== - -"@vitejs/plugin-vue@^6.0.0": - version "6.0.0" - resolved "https://registry.yarnpkg.com/@vitejs/plugin-vue/-/plugin-vue-6.0.0.tgz#3f8c3cdeb709d9646770eebead1babe6409bf059" - integrity sha512-iAliE72WsdhjzTOp2DtvKThq1VBC4REhwRcaA+zPAAph6I+OQhUXv+Xu2KS7ElxYtb7Zc/3R30Hwv1DxEo7NXQ== +"@vitejs/plugin-vue@^6.0.0", "@vitejs/plugin-vue@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/@vitejs/plugin-vue/-/plugin-vue-6.0.1.tgz#4c7f559621af104a22255c6ace5626e6d8349689" + integrity sha512-+MaE752hU0wfPFJEUAIxqw18+20euHHdxVtMvbFcOEpjEyfqXH/5DCoTHiVJ0J29EhTJdoTkjEv5YBKU9dnoTw== dependencies: - "@rolldown/pluginutils" "1.0.0-beta.19" + "@rolldown/pluginutils" "1.0.0-beta.29" "@vitest/browser@^3.2.4": version "3.2.4" @@ -2687,17 +2251,17 @@ loupe "^3.1.4" tinyrainbow "^2.0.0" -"@volar/language-core@~2.4.11": - version "2.4.12" - resolved "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.12.tgz" - integrity sha512-RLrFdXEaQBWfSnYGVxvR2WrO6Bub0unkdHYIdC31HzIEqATIuuhRRzYu76iGPZ6OtA4Au1SnW0ZwIqPP217YhA== +"@volar/language-core@2.4.23": + version "2.4.23" + resolved "https://registry.yarnpkg.com/@volar/language-core/-/language-core-2.4.23.tgz#deb6dbc5fdbafa9bb7ba691fc59cb196cdb856d3" + integrity sha512-hEEd5ET/oSmBC6pi1j6NaNYRWoAiDhINbT8rmwtINugR39loROSlufGdYMF9TaKGfz+ViGs1Idi3mAhnuPcoGQ== dependencies: - "@volar/source-map" "2.4.12" + "@volar/source-map" "2.4.23" -"@volar/source-map@2.4.12": - version "2.4.12" - resolved "https://registry.npmjs.org/@volar/source-map/-/source-map-2.4.12.tgz" - integrity sha512-bUFIKvn2U0AWojOaqf63ER0N/iHIBYZPpNGogfLPQ68F5Eet6FnLlyho7BS0y2HJ1jFhSif7AcuTx1TqsCzRzw== +"@volar/source-map@2.4.23": + version "2.4.23" + resolved "https://registry.yarnpkg.com/@volar/source-map/-/source-map-2.4.23.tgz#d476e11a3a669d89858a5eb38b02342be39b0e44" + integrity sha512-Z1Uc8IB57Lm6k7q6KIDu/p+JWtf3xsXJqAX/5r18hYOTpJyBn0KXUR8oTJ4WFYOcDzWC9n3IflGgHowx6U6z9Q== "@vscode/test-cli@^0.0.10": version "0.0.10" @@ -2737,7 +2301,7 @@ "@vscode/vsce-sign-darwin-arm64@2.0.5": version "2.0.5" - resolved "https://registry.npmjs.org/@vscode/vsce-sign-darwin-arm64/-/vsce-sign-darwin-arm64-2.0.5.tgz" + resolved "https://registry.yarnpkg.com/@vscode/vsce-sign-darwin-arm64/-/vsce-sign-darwin-arm64-2.0.5.tgz#2eabac7d8371292a8d22a15b3ff57f1988c29d6b" integrity sha512-z2Q62bk0ptADFz8a0vtPvnm6vxpyP3hIEYMU+i1AWz263Pj8Mc38cm/4sjzxu+LIsAfhe9HzvYNS49lV+KsatQ== "@vscode/vsce-sign-darwin-x64@2.0.5": @@ -2772,7 +2336,7 @@ "@vscode/vsce-sign@^2.0.0": version "2.0.6" - resolved "https://registry.npmjs.org/@vscode/vsce-sign/-/vsce-sign-2.0.6.tgz" + resolved "https://registry.yarnpkg.com/@vscode/vsce-sign/-/vsce-sign-2.0.6.tgz#a2b11e29dab56379c513e0cc52615edad1d34cd3" integrity sha512-j9Ashk+uOWCDHYDxgGsqzKq5FXW9b9MW7QqOIYZ8IYpneJclWTBeHZz2DJCSKQgo+JAqNcaRRE1hzIx0dswqAw== optionalDependencies: "@vscode/vsce-sign-alpine-arm64" "2.0.5" @@ -2822,170 +2386,170 @@ optionalDependencies: keytar "^7.7.0" -"@vue/compiler-core@3.5.16": - version "3.5.16" - resolved "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.16.tgz" - integrity sha512-AOQS2eaQOaaZQoL1u+2rCJIKDruNXVBZSiUD3chnUrsoX5ZTQMaCvXlWNIfxBJuU15r1o7+mpo5223KVtIhAgQ== +"@vue/compiler-core@3.5.20": + version "3.5.20" + resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.5.20.tgz#ea100646460703c98117b88900aab4aa7e6f797e" + integrity sha512-8TWXUyiqFd3GmP4JTX9hbiTFRwYHgVL/vr3cqhr4YQ258+9FADwvj7golk2sWNGHR67QgmCZ8gz80nQcMokhwg== dependencies: - "@babel/parser" "^7.27.2" - "@vue/shared" "3.5.16" + "@babel/parser" "^7.28.3" + "@vue/shared" "3.5.20" entities "^4.5.0" estree-walker "^2.0.2" source-map-js "^1.2.1" -"@vue/compiler-dom@3.5.16", "@vue/compiler-dom@^3.5.0": - version "3.5.16" - resolved "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.16.tgz" - integrity sha512-SSJIhBr/teipXiXjmWOVWLnxjNGo65Oj/8wTEQz0nqwQeP75jWZ0n4sF24Zxoht1cuJoWopwj0J0exYwCJ0dCQ== +"@vue/compiler-dom@3.5.20", "@vue/compiler-dom@^3.5.0": + version "3.5.20" + resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.5.20.tgz#7eb0d4b761a48b93723cf264d27c1385b90dae6d" + integrity sha512-whB44M59XKjqUEYOMPYU0ijUV0G+4fdrHVKDe32abNdX/kJe1NUEMqsi4cwzXa9kyM9w5S8WqFsrfo1ogtBZGQ== dependencies: - "@vue/compiler-core" "3.5.16" - "@vue/shared" "3.5.16" + "@vue/compiler-core" "3.5.20" + "@vue/shared" "3.5.20" -"@vue/compiler-sfc@3.5.16": - version "3.5.16" - resolved "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.16.tgz" - integrity sha512-rQR6VSFNpiinDy/DVUE0vHoIDUF++6p910cgcZoaAUm3POxgNOOdS/xgoll3rNdKYTYPnnbARDCZOyZ+QSe6Pw== +"@vue/compiler-sfc@3.5.20": + version "3.5.20" + resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.5.20.tgz#7bf92fc65951fd888076f1c71128dda4507a9328" + integrity sha512-SFcxapQc0/feWiSBfkGsa1v4DOrnMAQSYuvDMpEaxbpH5dKbnEM5KobSNSgU+1MbHCl+9ftm7oQWxvwDB6iBfw== dependencies: - "@babel/parser" "^7.27.2" - "@vue/compiler-core" "3.5.16" - "@vue/compiler-dom" "3.5.16" - "@vue/compiler-ssr" "3.5.16" - "@vue/shared" "3.5.16" + "@babel/parser" "^7.28.3" + "@vue/compiler-core" "3.5.20" + "@vue/compiler-dom" "3.5.20" + "@vue/compiler-ssr" "3.5.20" + "@vue/shared" "3.5.20" estree-walker "^2.0.2" magic-string "^0.30.17" - postcss "^8.5.3" + postcss "^8.5.6" source-map-js "^1.2.1" -"@vue/compiler-ssr@3.5.16": - version "3.5.16" - resolved "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.16.tgz" - integrity sha512-d2V7kfxbdsjrDSGlJE7my1ZzCXViEcqN6w14DOsDrUCHEA6vbnVCpRFfrc4ryCP/lCKzX2eS1YtnLE/BuC9f/A== +"@vue/compiler-ssr@3.5.20": + version "3.5.20" + resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.5.20.tgz#6cdae8662bf36974ffb4fe894ba08192f89d5660" + integrity sha512-RSl5XAMc5YFUXpDQi+UQDdVjH9FnEpLDHIALg5J0ITHxkEzJ8uQLlo7CIbjPYqmZtt6w0TsIPbo1izYXwDG7JA== dependencies: - "@vue/compiler-dom" "3.5.16" - "@vue/shared" "3.5.16" + "@vue/compiler-dom" "3.5.20" + "@vue/shared" "3.5.20" "@vue/compiler-vue2@^2.7.16": version "2.7.16" - resolved "https://registry.npmjs.org/@vue/compiler-vue2/-/compiler-vue2-2.7.16.tgz" + resolved "https://registry.yarnpkg.com/@vue/compiler-vue2/-/compiler-vue2-2.7.16.tgz#2ba837cbd3f1b33c2bc865fbe1a3b53fb611e249" integrity sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A== dependencies: de-indent "^1.0.2" he "^1.2.0" -"@vue/devtools-api@^7.7.5": - version "7.7.6" - resolved "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-7.7.6.tgz" - integrity sha512-b2Xx0KvXZObePpXPYHvBRRJLDQn5nhKjXh7vUhMEtWxz1AYNFOVIsh5+HLP8xDGL7sy+Q7hXeUxPHB/KgbtsPw== +"@vue/devtools-api@^8.0.0": + version "8.0.1" + resolved "https://registry.yarnpkg.com/@vue/devtools-api/-/devtools-api-8.0.1.tgz#142f94161ec80698f57ee8379bffad969868b251" + integrity sha512-YBvjfpM7LEp5+b7ZDm4+mFrC+TgGjUmN8ff9lZcbHQ1MKhmftT/urCTZP0y1j26YQWr25l9TPaEbNLbILRiGoQ== dependencies: - "@vue/devtools-kit" "^7.7.6" + "@vue/devtools-kit" "^8.0.1" -"@vue/devtools-kit@^7.7.6": - version "7.7.6" - resolved "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-7.7.6.tgz" - integrity sha512-geu7ds7tem2Y7Wz+WgbnbZ6T5eadOvozHZ23Atk/8tksHMFOFylKi1xgGlQlVn0wlkEf4hu+vd5ctj1G4kFtwA== +"@vue/devtools-kit@^8.0.1": + version "8.0.1" + resolved "https://registry.yarnpkg.com/@vue/devtools-kit/-/devtools-kit-8.0.1.tgz#84b8741bbd16fa7d6d5ce0baf3c2e8b3822237c2" + integrity sha512-7kiPhgTKNtNeXltEHnJJjIDlndlJP4P+UJvCw54uVHNDlI6JzwrSiRmW4cxKTug2wDbc/dkGaMnlZghcwV+aWA== dependencies: - "@vue/devtools-shared" "^7.7.6" - birpc "^2.3.0" + "@vue/devtools-shared" "^8.0.1" + birpc "^2.5.0" hookable "^5.5.3" mitt "^3.0.1" perfect-debounce "^1.0.0" speakingurl "^14.0.1" superjson "^2.2.2" -"@vue/devtools-shared@^7.7.6": - version "7.7.6" - resolved "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-7.7.6.tgz" - integrity sha512-yFEgJZ/WblEsojQQceuyK6FzpFDx4kqrz2ohInxNj5/DnhoX023upTv4OD6lNPLAA5LLkbwPVb10o/7b+Y4FVA== +"@vue/devtools-shared@^8.0.1": + version "8.0.1" + resolved "https://registry.yarnpkg.com/@vue/devtools-shared/-/devtools-shared-8.0.1.tgz#ace79d39fec42f35e02d1053d5c83c4f492423a9" + integrity sha512-PqtWqPPRpMwZ9FjTzyugb5KeV9kmg2C3hjxZHwjl0lijT4QIJDd0z6AWcnbM9w2nayjDymyTt0+sbdTv3pVeNg== dependencies: rfdc "^1.4.1" -"@vue/language-core@2.2.4": - version "2.2.4" - resolved "https://registry.npmjs.org/@vue/language-core/-/language-core-2.2.4.tgz" - integrity sha512-eGGdw7eWUwdIn9Fy/irJ7uavCGfgemuHQABgJ/hU1UgZFnbTg9VWeXvHQdhY+2SPQZWJqWXvRWIg67t4iWEa+Q== +"@vue/language-core@^3.0.5": + version "3.0.6" + resolved "https://registry.yarnpkg.com/@vue/language-core/-/language-core-3.0.6.tgz#5e9d2f58f3a91465c5d86e460f0239f9c6e8300d" + integrity sha512-e2RRzYWm+qGm8apUHW1wA5RQxzNhkqbbKdbKhiDUcmMrNAZGyM8aTiL3UrTqkaFI5s7wJRGGrp4u3jgusuBp2A== dependencies: - "@volar/language-core" "~2.4.11" + "@volar/language-core" "2.4.23" "@vue/compiler-dom" "^3.5.0" "@vue/compiler-vue2" "^2.7.16" "@vue/shared" "^3.5.0" - alien-signals "^1.0.3" - minimatch "^9.0.3" + alien-signals "^2.0.5" muggle-string "^0.4.1" path-browserify "^1.0.1" + picomatch "^4.0.2" -"@vue/reactivity@3.5.16": - version "3.5.16" - resolved "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.16.tgz" - integrity sha512-FG5Q5ee/kxhIm1p2bykPpPwqiUBV3kFySsHEQha5BJvjXdZTUfmya7wP7zC39dFuZAcf/PD5S4Lni55vGLMhvA== +"@vue/reactivity@3.5.20": + version "3.5.20" + resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.5.20.tgz#95b959380af1f49780247686467e8858641209bc" + integrity sha512-hS8l8x4cl1fmZpSQX/NXlqWKARqEsNmfkwOIYqtR2F616NGfsLUm0G6FQBK6uDKUCVyi1YOL8Xmt/RkZcd/jYQ== dependencies: - "@vue/shared" "3.5.16" + "@vue/shared" "3.5.20" -"@vue/runtime-core@3.5.16": - version "3.5.16" - resolved "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.16.tgz" - integrity sha512-bw5Ykq6+JFHYxrQa7Tjr+VSzw7Dj4ldR/udyBZbq73fCdJmyy5MPIFR9IX/M5Qs+TtTjuyUTCnmK3lWWwpAcFQ== +"@vue/runtime-core@3.5.20": + version "3.5.20" + resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.5.20.tgz#298eb83fc08887e21adf098a8c6ffeaa9e24c867" + integrity sha512-vyQRiH5uSZlOa+4I/t4Qw/SsD/gbth0SW2J7oMeVlMFMAmsG1rwDD6ok0VMmjXY3eI0iHNSSOBilEDW98PLRKw== dependencies: - "@vue/reactivity" "3.5.16" - "@vue/shared" "3.5.16" + "@vue/reactivity" "3.5.20" + "@vue/shared" "3.5.20" -"@vue/runtime-dom@3.5.16": - version "3.5.16" - resolved "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.16.tgz" - integrity sha512-T1qqYJsG2xMGhImRUV9y/RseB9d0eCYZQ4CWca9ztCuiPj/XWNNN+lkNBuzVbia5z4/cgxdL28NoQCvC0Xcfww== +"@vue/runtime-dom@3.5.20": + version "3.5.20" + resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.5.20.tgz#bbeb73b51745bf4065d3d42c9a2f18266c3269b7" + integrity sha512-KBHzPld/Djw3im0CQ7tGCpgRedryIn4CcAl047EhFTCCPT2xFf4e8j6WeKLgEEoqPSl9TYqShc3Q6tpWpz/Xgw== dependencies: - "@vue/reactivity" "3.5.16" - "@vue/runtime-core" "3.5.16" - "@vue/shared" "3.5.16" + "@vue/reactivity" "3.5.20" + "@vue/runtime-core" "3.5.20" + "@vue/shared" "3.5.20" csstype "^3.1.3" -"@vue/server-renderer@3.5.16": - version "3.5.16" - resolved "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.16.tgz" - integrity sha512-BrX0qLiv/WugguGsnQUJiYOE0Fe5mZTwi6b7X/ybGB0vfrPH9z0gD/Y6WOR1sGCgX4gc25L1RYS5eYQKDMoNIg== +"@vue/server-renderer@3.5.20": + version "3.5.20" + resolved "https://registry.yarnpkg.com/@vue/server-renderer/-/server-renderer-3.5.20.tgz#6e075ef0386d099e8ec09c4662b6e8af1c1a086f" + integrity sha512-HthAS0lZJDH21HFJBVNTtx+ULcIbJQRpjSVomVjfyPkFSpCwvsPTA+jIzOaUm3Hrqx36ozBHePztQFg6pj5aKg== dependencies: - "@vue/compiler-ssr" "3.5.16" - "@vue/shared" "3.5.16" + "@vue/compiler-ssr" "3.5.20" + "@vue/shared" "3.5.20" -"@vue/shared@3.5.16", "@vue/shared@^3.5.0", "@vue/shared@^3.5.13": - version "3.5.16" - resolved "https://registry.npmjs.org/@vue/shared/-/shared-3.5.16.tgz" - integrity sha512-c/0fWy3Jw6Z8L9FmTyYfkpM5zklnqqa9+a6dz3DvONRKW2NEbh46BP0FHuLFSWi2TnQEtp91Z6zOWNrU6QiyPg== +"@vue/shared@3.5.20", "@vue/shared@^3.5.0", "@vue/shared@^3.5.18": + version "3.5.20" + resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.5.20.tgz#8740b370738c8c7e29e02fa9051cfe6d20114cb4" + integrity sha512-SoRGP596KU/ig6TfgkCMbXkr4YJ91n/QSdMuqeP5r3hVIYA3CPHUBCc7Skak0EAKV+5lL4KyIh61VA/pK1CIAA== -"@vueuse/core@13.3.0", "@vueuse/core@^13.1.0": - version "13.3.0" - resolved "https://registry.npmjs.org/@vueuse/core/-/core-13.3.0.tgz" - integrity sha512-uYRz5oEfebHCoRhK4moXFM3NSCd5vu2XMLOq/Riz5FdqZMy2RvBtazdtL3gEcmDyqkztDe9ZP/zymObMIbiYSg== +"@vueuse/core@13.8.0", "@vueuse/core@^13.6.0": + version "13.8.0" + resolved "https://registry.yarnpkg.com/@vueuse/core/-/core-13.8.0.tgz#760800f866dd8a1152a0a28e412ed53336e9ad7e" + integrity sha512-rmBcgpEpxY0ZmyQQR94q1qkUcHREiLxQwNyWrtjMDipD0WTH/JBcAt0gdcn2PsH0SA76ec291cHFngmyaBhlxA== dependencies: "@types/web-bluetooth" "^0.0.21" - "@vueuse/metadata" "13.3.0" - "@vueuse/shared" "13.3.0" + "@vueuse/metadata" "13.8.0" + "@vueuse/shared" "13.8.0" -"@vueuse/integrations@^13.1.0": - version "13.3.0" - resolved "https://registry.npmjs.org/@vueuse/integrations/-/integrations-13.3.0.tgz" - integrity sha512-h5mGRYPbiTZTFP/AKELLPGnUDBly7z7Qd1pgEQlT3ItQ0NlZM0vB+8SOQycpSBOBlgg72Zgw+mi2r+4O/G8RuQ== +"@vueuse/integrations@^13.6.0": + version "13.8.0" + resolved "https://registry.yarnpkg.com/@vueuse/integrations/-/integrations-13.8.0.tgz#4ed1e7ce5a4691f171e53f7430f51d67c4976fc6" + integrity sha512-64mD5Q7heVkr8JsqBFDh9xnQJrPLmWJghy8Qtj9UeLosQL9n+JYTcS7d+eNsEVwuvZvxfF7hUSi87jABm/eYpw== dependencies: - "@vueuse/core" "13.3.0" - "@vueuse/shared" "13.3.0" + "@vueuse/core" "13.8.0" + "@vueuse/shared" "13.8.0" -"@vueuse/metadata@13.3.0": - version "13.3.0" - resolved "https://registry.npmjs.org/@vueuse/metadata/-/metadata-13.3.0.tgz" - integrity sha512-42IzJIOYCKIb0Yjv1JfaKpx8JlCiTmtCWrPxt7Ja6Wzoq0h79+YVXmBV03N966KEmDEESTbp5R/qO3AB5BDnGw== +"@vueuse/metadata@13.8.0": + version "13.8.0" + resolved "https://registry.yarnpkg.com/@vueuse/metadata/-/metadata-13.8.0.tgz#5bf97b8733346fc1abf0c20c31e01ea672279c0e" + integrity sha512-BYMp3Gp1kBUPv7AfQnJYP96mkX7g7cKdTIgwv/Jgd+pfQhz678naoZOAcknRtPLP4cFblDDW7rF4e3KFa+PfIA== -"@vueuse/shared@13.3.0": - version "13.3.0" - resolved "https://registry.npmjs.org/@vueuse/shared/-/shared-13.3.0.tgz" - integrity sha512-L1QKsF0Eg9tiZSFXTgodYnu0Rsa2P0En2LuLrIs/jgrkyiDuJSsPZK+tx+wU0mMsYHUYEjNsuE41uqqkuR8VhA== +"@vueuse/shared@13.8.0": + version "13.8.0" + resolved "https://registry.yarnpkg.com/@vueuse/shared/-/shared-13.8.0.tgz#ed7baa8ad19e164a7626592531694bfe6c94d2e3" + integrity sha512-x4nfM0ykW+RmNJ4/1IzZsuLuWWrNTxlTWUiehTGI54wnOxIgI9EDdu/O5S77ac6hvQ3hk2KpOVFHaM0M796Kbw== "@yarnpkg/lockfile@^1.1.0": version "1.1.0" - resolved "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31" integrity sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ== "@yarnpkg/parsers@3.0.2": version "3.0.2" - resolved "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.2.tgz" + resolved "https://registry.yarnpkg.com/@yarnpkg/parsers/-/parsers-3.0.2.tgz#48a1517a0f49124827f4c37c284a689c607b2f32" integrity sha512-/HcYgtUSiJiot/XWGLOlGxPYUG65+/31V8oqk17vZLW1xlCoR4PampyePljOxY2n8/3jz9+tIFzICsyGujJZoA== dependencies: js-yaml "^3.10.0" @@ -2993,7 +2557,7 @@ "@yeoman/adapter@^1.4.0": version "1.6.0" - resolved "https://registry.npmjs.org/@yeoman/adapter/-/adapter-1.6.0.tgz" + resolved "https://registry.yarnpkg.com/@yeoman/adapter/-/adapter-1.6.0.tgz#312a6ac7d8be23d34bb453d9bf5c057e387477ea" integrity sha512-oJw/i6zUDdfsT5VOPuANDDEWs5NhlMq5+rmyZIVdgBTXalbCw6nUfJQOblO2Fnq+Ov6CxlyzDBTWQvL5cEjA+g== dependencies: "@types/inquirer" "^9.0.3" @@ -3006,7 +2570,7 @@ "@yeoman/conflicter@^2.0.0-alpha.2": version "2.4.0" - resolved "https://registry.npmjs.org/@yeoman/conflicter/-/conflicter-2.4.0.tgz" + resolved "https://registry.yarnpkg.com/@yeoman/conflicter/-/conflicter-2.4.0.tgz#eeb02eedb2f67150299f891026facbb43b2ec3ee" integrity sha512-5qzY5+i16TSrcJsYshW3eKzflfYMMmVgC8gRtLCe4UxLO4u/dxpb8sN9HqQkpNVjuZV5ouIeOohSq9PSJDXC1g== dependencies: "@yeoman/transform" "^1.2.0" @@ -3024,12 +2588,12 @@ "@yeoman/namespace@^1.0.0": version "1.0.1" - resolved "https://registry.npmjs.org/@yeoman/namespace/-/namespace-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/@yeoman/namespace/-/namespace-1.0.1.tgz#8034277c4a62bdf41e05e2d890bc674bc320eb99" integrity sha512-XGdYL0HCoPvrzW7T8bxD6RbCY/B8uvR2jpOzJc/yEwTueKHwoVhjSLjVXkokQAO0LNl8nQFLVZ1aKfr2eFWZeA== "@yeoman/transform@^1.2.0": version "1.2.0" - resolved "https://registry.npmjs.org/@yeoman/transform/-/transform-1.2.0.tgz" + resolved "https://registry.yarnpkg.com/@yeoman/transform/-/transform-1.2.0.tgz#cad36ee95ccd6c7c79a0a774da1da31624219bf5" integrity sha512-evb/+2XMEBoHr4BxBeFkjeVTgTS4Qe7VH8DmzZ9kgJK7C7ACPAhW/qBdsKKP1sb5MoeITSaJSVFnc8S1fjZmcw== dependencies: "@types/node" "^16.18.28" @@ -3037,37 +2601,37 @@ readable-stream "^4.3.0" "@yeoman/types@^1.1.1": - version "1.6.0" - resolved "https://registry.npmjs.org/@yeoman/types/-/types-1.6.0.tgz" - integrity sha512-7Deh9qpDCoOmQal7Sdicb1v/Qv0KFhLqDHnSKh9NBKvvU4EKAFXmd4MuXFvGTCLQfKhuZ6doiM9CMUd4jGp25w== + version "1.7.1" + resolved "https://registry.yarnpkg.com/@yeoman/types/-/types-1.7.1.tgz#b7ecc78db1b4b1511525e3df493cf9b087ef0098" + integrity sha512-GseLxUAssJObEgGhXMEb1JfhA4mHycSawdrif73kjms2eSvbpxloNiAJSTiGRThcrfAYl05stleUk4OssyK41g== "@zkochan/js-yaml@0.0.7": version "0.0.7" - resolved "https://registry.npmjs.org/@zkochan/js-yaml/-/js-yaml-0.0.7.tgz" + resolved "https://registry.yarnpkg.com/@zkochan/js-yaml/-/js-yaml-0.0.7.tgz#4b0cb785220d7c28ce0ec4d0804deb5d821eae89" integrity sha512-nrUSn7hzt7J6JWgWGz78ZYI8wj+gdIJdk0Ynjpp8l+trkn58Uqsf6RYrYkEK+3X18EX+TNdtJI0WxAtc+L84SQ== dependencies: argparse "^2.0.1" abbrev@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-2.0.0.tgz#cf59829b8b4f03f89dda2771cb7f3653828c89bf" integrity sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ== abbrev@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/abbrev/-/abbrev-3.0.0.tgz" - integrity sha512-+/kfrslGQ7TNV2ecmQwMJj/B65g5KVq1/L3SGVZ3tCYGqlzFuFCGBZJtMP99wH3NpEUyAjn0zPdPUg0D+DwrOA== + version "3.0.1" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-3.0.1.tgz#8ac8b3b5024d31464fe2a5feeea9f4536bf44025" + integrity sha512-AO2ac6pjRB3SJmGJo+v5/aK6Omggp6fsLrs6wN9bd35ulu4cCwaAU9+7ZhXjeqHVkaHThLuzH0nZr0YpCDhygg== abort-controller@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg== dependencies: event-target-shim "^5.0.0" accepts@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/accepts/-/accepts-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-2.0.0.tgz#bbcf4ba5075467f3f2131eab3cffc73c2f5d7895" integrity sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng== dependencies: mime-types "^3.0.0" @@ -3075,7 +2639,7 @@ accepts@^2.0.0: acorn-jsx@^5.3.2: version "5.3.2" - resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== acorn-walk@^8.3.1, acorn-walk@^8.3.2: @@ -3085,19 +2649,19 @@ acorn-walk@^8.3.1, acorn-walk@^8.3.2: dependencies: acorn "^8.11.0" -acorn@^8.11.0, acorn@^8.14.0, acorn@^8.15.0: +acorn@^8.11.0, acorn@^8.15.0: version "8.15.0" - resolved "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.15.0.tgz#a360898bc415edaac46c8241f6383975b930b816" integrity sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg== agent-base@^7.1.0, agent-base@^7.1.2: - version "7.1.3" - resolved "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz" - integrity sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw== + version "7.1.4" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-7.1.4.tgz#e3cd76d4c548ee895d3c3fd8dc1f6c5b9032e7a8" + integrity sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ== aggregate-error@^3.0.0: version "3.1.0" - resolved "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== dependencies: clean-stack "^2.0.0" @@ -3105,7 +2669,7 @@ aggregate-error@^3.0.0: ajv@^6.12.4: version "6.12.6" - resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== dependencies: fast-deep-equal "^3.1.1" @@ -3115,7 +2679,7 @@ ajv@^6.12.4: ajv@^8.0.1, ajv@^8.17.1: version "8.17.1" - resolved "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.17.1.tgz#37d9a5c776af6bc92d7f4f9510eba4c0a60d11a6" integrity sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g== dependencies: fast-deep-equal "^3.1.3" @@ -3123,55 +2687,43 @@ ajv@^8.0.1, ajv@^8.17.1: json-schema-traverse "^1.0.0" require-from-string "^2.0.2" -algoliasearch@^5.14.2: - version "5.25.0" - resolved "https://registry.npmjs.org/algoliasearch/-/algoliasearch-5.25.0.tgz" - integrity sha512-n73BVorL4HIwKlfJKb4SEzAYkR3Buwfwbh+MYxg2mloFph2fFGV58E90QTzdbfzWrLn4HE5Czx/WTjI8fcHaMg== - dependencies: - "@algolia/client-abtesting" "5.25.0" - "@algolia/client-analytics" "5.25.0" - "@algolia/client-common" "5.25.0" - "@algolia/client-insights" "5.25.0" - "@algolia/client-personalization" "5.25.0" - "@algolia/client-query-suggestions" "5.25.0" - "@algolia/client-search" "5.25.0" - "@algolia/ingestion" "1.25.0" - "@algolia/monitoring" "1.25.0" - "@algolia/recommend" "5.25.0" - "@algolia/requester-browser-xhr" "5.25.0" - "@algolia/requester-fetch" "5.25.0" - "@algolia/requester-node-http" "5.25.0" - -alien-signals@^1.0.3: - version "1.0.4" - resolved "https://registry.npmjs.org/alien-signals/-/alien-signals-1.0.4.tgz" - integrity sha512-DJqqQD3XcsaQcQ1s+iE2jDUZmmQpXwHiR6fCAim/w87luaW+vmLY8fMlrdkmRwzaFXhkxf3rqPCR59tKVv1MDw== +alien-signals@^2.0.5: + version "2.0.7" + resolved "https://registry.yarnpkg.com/alien-signals/-/alien-signals-2.0.7.tgz#8c695e01878081046f1486e7e332380db35fb7e6" + integrity sha512-wE7y3jmYeb0+h6mr5BOovuqhFv22O/MV9j5p0ndJsa7z1zJNPGQ4ph5pQk/kTTCWRC3xsA4SmtwmkzQO+7NCNg== ansi-colors@^4.1.1, ansi-colors@^4.1.3: version "4.1.3" - resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== -ansi-escapes@^4.2.1, ansi-escapes@^4.3.2: +ansi-escapes@^4.3.2: version "4.3.2" - resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== dependencies: type-fest "^0.21.3" +ansi-escapes@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-7.0.0.tgz#00fc19f491bbb18e1d481b97868204f92109bfe7" + integrity sha512-GdYO7a61mR0fOlAsvC9/rIHf7L96sBc6dEWzeOu+KAea5bZyQRPIpojrVoI4AXGJS/ycu/fBTdLrUkA4ODrvjw== + dependencies: + environment "^1.0.0" + ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== ansi-regex@^6.0.1: - version "6.1.0" - resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz" - integrity sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA== + version "6.2.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.2.0.tgz#2f302e7550431b1b7762705fffb52cf1ffa20447" + integrity sha512-TKY5pyBkHyADOPYlRT9Lx6F544mPl0vS5Ew7BJ45hA08Q+t3GjbueLliBWN3sMICk6+y7HdyxSzC4bWS8baBdg== ansi-styles@^3.2.1: version "3.2.1" - resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== dependencies: color-convert "^1.9.0" @@ -3190,7 +2742,7 @@ ansi-styles@^5.0.0: ansi-styles@^6.1.0: version "6.2.1" - resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5" integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== any-promise@^1.0.0: @@ -3213,26 +2765,26 @@ arg@^5.0.2: argparse@^1.0.7: version "1.0.10" - resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== dependencies: sprintf-js "~1.0.2" argparse@^2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== aria-query@5.3.0: version "5.3.0" - resolved "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz" + resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.3.0.tgz#650c569e41ad90b51b3d7df5e5eed1c7549c103e" integrity sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A== dependencies: dequal "^2.0.3" array-buffer-byte-length@^1.0.1, array-buffer-byte-length@^1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz#384d12a37295aec3769ab022ad323a18a51ccf8b" integrity sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw== dependencies: call-bound "^1.0.3" @@ -3240,22 +2792,22 @@ array-buffer-byte-length@^1.0.1, array-buffer-byte-length@^1.0.2: array-differ@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/array-differ/-/array-differ-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-4.0.0.tgz#aa3c891c653523290c880022f45b06a42051b026" integrity sha512-Q6VPTLMsmXZ47ENG3V+wQyZS1ZxXMxFyYzA+Z/GMrJ6yIutAIEf9wTyroTzmGjNfox9/h3GdGBCVh43GVFx4Uw== array-union@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== array-union@^3.0.1: version "3.0.1" - resolved "https://registry.npmjs.org/array-union/-/array-union-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-3.0.1.tgz#da52630d327f8b88cfbfb57728e2af5cd9b6b975" integrity sha512-1OvF9IbWwaeiM9VhzYXVQacMibxpXOMYVNIvMtKRyX9SImBXpKcFr8XvFDeEslCyuH/t6KRt7HEO94AlP8Iatw== arraybuffer.prototype.slice@^1.0.4: version "1.0.4" - resolved "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz" + resolved "https://registry.yarnpkg.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz#9d760d84dbdd06d0cbf92c8849615a1a7ab3183c" integrity sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ== dependencies: array-buffer-byte-length "^1.0.1" @@ -3268,7 +2820,7 @@ arraybuffer.prototype.slice@^1.0.4: arrify@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/arrify/-/arrify-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/arrify/-/arrify-3.0.0.tgz#ccdefb8eaf2a1d2ab0da1ca2ce53118759fd46bc" integrity sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw== assertion-error@^1.1.0: @@ -3283,7 +2835,7 @@ assertion-error@^2.0.1: astral-regex@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== astring@^1.8.6: @@ -3293,38 +2845,38 @@ astring@^1.8.6: async-function@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/async-function/-/async-function-1.0.0.tgz#509c9fca60eaf85034c6829838188e4e4c8ffb2b" integrity sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA== -async@^3.2.3: +async@^3.2.6: version "3.2.6" - resolved "https://registry.npmjs.org/async/-/async-3.2.6.tgz" + resolved "https://registry.yarnpkg.com/async/-/async-3.2.6.tgz#1b0728e14929d51b85b449b7f06e27c1145e38ce" integrity sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA== asynckit@^0.4.0: version "0.4.0" - resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz" + resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== available-typed-arrays@^1.0.7: version "1.0.7" - resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz" + resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz#a5cc375d6a03c2efc87a553f3e0b1522def14846" integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ== dependencies: possible-typed-array-names "^1.0.0" axios@^1.8.3: - version "1.9.0" - resolved "https://registry.npmjs.org/axios/-/axios-1.9.0.tgz" - integrity sha512-re4CqKTJaURpzbLHtIi6XpDv20/CnpXOtjRY5/CU32L8gU8ek9UIivcfvSWvmKEngmVbrUtPpdDwWDWL7DNHvg== + version "1.11.0" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.11.0.tgz#c2ec219e35e414c025b2095e8b8280278478fdb6" + integrity sha512-1Lx3WLFQWm3ooKDYZD1eXmoGO9fxYQjrycfHFC8P0sCfQVXyROp0p9PFWBehewBOdCwHc+f/b8I0fMto5eSfwA== dependencies: follow-redirects "^1.15.6" - form-data "^4.0.0" + form-data "^4.0.4" proxy-from-env "^1.1.0" azure-devops-node-api@^12.5.0: version "12.5.0" - resolved "https://registry.npmjs.org/azure-devops-node-api/-/azure-devops-node-api-12.5.0.tgz" + resolved "https://registry.yarnpkg.com/azure-devops-node-api/-/azure-devops-node-api-12.5.0.tgz#38b9efd7c5ac74354fe4e8dbe42697db0b8e85a5" integrity sha512-R5eFskGvOm3U/GzeAuxRkUsAl0hrAwGgWn6zAd2KrZmrEhWZVqLew4OOupbQlXUuojUzpGtq62SmdhJ06N88og== dependencies: tunnel "0.0.6" @@ -3332,37 +2884,37 @@ azure-devops-node-api@^12.5.0: b4a@^1.6.4: version "1.6.7" - resolved "https://registry.npmjs.org/b4a/-/b4a-1.6.7.tgz" + resolved "https://registry.yarnpkg.com/b4a/-/b4a-1.6.7.tgz#a99587d4ebbfbd5a6e3b21bdb5d5fa385767abe4" integrity sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg== balanced-match@^1.0.0: version "1.0.2" - resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== bare-events@^2.2.0: - version "2.5.4" - resolved "https://registry.npmjs.org/bare-events/-/bare-events-2.5.4.tgz" - integrity sha512-+gFfDkR8pj4/TrWCGUGWmJIkBwuxPS5F+a5yWjOHQt2hHvNZd5YLzadjmDUtFmMM4y429bnKLa8bYBMHcYdnQA== + version "2.6.1" + resolved "https://registry.yarnpkg.com/bare-events/-/bare-events-2.6.1.tgz#f793b28bdc3dcf147d7cf01f882a6f0b12ccc4a2" + integrity sha512-AuTJkq9XmE6Vk0FJVNq5QxETrSA/vKHarWVBG5l/JbdCL1prJemiyJqUS0jrlXO0MftuPq4m3YVYhoNc5+aE/g== base64-js@^1.3.1: version "1.5.1" - resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== before-after-hook@^2.2.0: version "2.2.3" - resolved "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz" + resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.2.3.tgz#c51e809c81a4e354084422b9b26bad88249c517c" integrity sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ== before-after-hook@^3.0.2: version "3.0.2" - resolved "https://registry.npmjs.org/before-after-hook/-/before-after-hook-3.0.2.tgz" + resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-3.0.2.tgz#d5665a5fa8b62294a5aa0a499f933f4a1016195d" integrity sha512-Nik3Sc0ncrMK4UUdXQmAnRtzmNQTAAXmXIopizwZ1W1t8QmfJj+zL4OA2I7XPTPW5z5TDqv4hRo/JzouDJnX3A== bin-links@^4.0.4: version "4.0.4" - resolved "https://registry.npmjs.org/bin-links/-/bin-links-4.0.4.tgz" + resolved "https://registry.yarnpkg.com/bin-links/-/bin-links-4.0.4.tgz#c3565832b8e287c85f109a02a17027d152a58a63" integrity sha512-cMtq4W5ZsEwcutJrVId+a/tjt8GSbS+h0oNkdl6+6rBuEv8Ot33Bevj5KPm40t309zuhVic8NjpuL42QCiJWWA== dependencies: cmd-shim "^6.0.0" @@ -3372,24 +2924,24 @@ bin-links@^4.0.4: binary-extensions@^2.0.0, binary-extensions@^2.3.0: version "2.3.0" - resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522" integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== binaryextensions@^6.11.0: version "6.11.0" - resolved "https://registry.npmjs.org/binaryextensions/-/binaryextensions-6.11.0.tgz" + resolved "https://registry.yarnpkg.com/binaryextensions/-/binaryextensions-6.11.0.tgz#c36b3e6b5c59e621605709b099cda8dda824cc72" integrity sha512-sXnYK/Ij80TO3lcqZVV2YgfKN5QjUWIRk/XSm2J/4bd/lPko3lvk0O4ZppH6m+6hB2/GTu+ptNwVFe1xh+QLQw== dependencies: editions "^6.21.0" -birpc@^2.3.0: - version "2.3.0" - resolved "https://registry.npmjs.org/birpc/-/birpc-2.3.0.tgz" - integrity sha512-ijbtkn/F3Pvzb6jHypHRyve2QApOCZDR25D/VnkY2G/lBNcXCTsnsCxgY4k4PkVB7zfwzYbY3O9Lcqe3xufS5g== +birpc@^2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/birpc/-/birpc-2.5.0.tgz#3a014e54c17eceba0ce15738d484ea371dbf6527" + integrity sha512-VSWO/W6nNQdyP520F1mhf+Lc2f8pjGQOtoHHm7Ze8Go1kX7akpVIrtTa0fn+HB0QJEDVacl6aO08YE0PgXfdnQ== bl@^4.0.3, bl@^4.1.0: version "4.1.0" - resolved "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz" + resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a" integrity sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w== dependencies: buffer "^5.5.0" @@ -3398,7 +2950,7 @@ bl@^4.0.3, bl@^4.1.0: body-parser@^2.2.0: version "2.2.0" - resolved "https://registry.npmjs.org/body-parser/-/body-parser-2.2.0.tgz" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-2.2.0.tgz#f7a9656de305249a715b549b7b8fd1ab9dfddcfa" integrity sha512-02qvAaxv8tp7fBa/mw1ga98OGm+eCbqzJOKoRt70sLmfEEi+jyBYVTDGfCL/k06/4EMk/z01gCe7HoCH/f2LTg== dependencies: bytes "^3.1.2" @@ -3413,54 +2965,64 @@ body-parser@^2.2.0: boolbase@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww== boundary@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/boundary/-/boundary-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/boundary/-/boundary-2.0.0.tgz#169c8b1f0d44cf2c25938967a328f37e0a4e5efc" integrity sha512-rJKn5ooC9u8q13IMCrW0RSp31pxBCHE3y9V/tp3TdWSLf8Em3p6Di4NBpfzbJge9YjjFEsD0RtFEjtvHL5VyEA== brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + version "1.1.12" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.12.tgz#ab9b454466e5a8cc3a187beaad580412a9c5b843" + integrity sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg== dependencies: balanced-match "^1.0.0" concat-map "0.0.1" brace-expansion@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz" - integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== + version "2.0.2" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.2.tgz#54fc53237a613d854c7bd37463aad17df87214e7" + integrity sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ== dependencies: balanced-match "^1.0.0" braces@^3.0.3, braces@~3.0.2: version "3.0.3" - resolved "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== dependencies: fill-range "^7.1.1" browser-stdout@^1.3.1: version "1.3.1" - resolved "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz" + resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== +browserslist@^4.0.0, browserslist@^4.21.4: + version "4.25.4" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.25.4.tgz#ebdd0e1d1cf3911834bab3a6cd7b917d9babf5af" + integrity sha512-4jYpcjabC606xJ3kw2QwGEZKX0Aw7sgQdZCvIK9dhVSPh76BKo+C+btT1RRofH7B+8iNpEbgGNVWiLki5q93yg== + dependencies: + caniuse-lite "^1.0.30001737" + electron-to-chromium "^1.5.211" + node-releases "^2.0.19" + update-browserslist-db "^1.1.3" + buffer-crc32@~0.2.3: version "0.2.13" - resolved "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz" + resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== -buffer-equal-constant-time@1.0.1: +buffer-equal-constant-time@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" integrity sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA== buffer@^5.5.0: version "5.7.1" - resolved "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== dependencies: base64-js "^1.3.1" @@ -3468,7 +3030,7 @@ buffer@^5.5.0: buffer@^6.0.3: version "6.0.3" - resolved "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA== dependencies: base64-js "^1.3.1" @@ -3476,7 +3038,7 @@ buffer@^6.0.3: bundle-name@^4.1.0: version "4.1.0" - resolved "https://registry.npmjs.org/bundle-name/-/bundle-name-4.1.0.tgz" + resolved "https://registry.yarnpkg.com/bundle-name/-/bundle-name-4.1.0.tgz#f3b96b34160d6431a19d7688135af7cfb8797889" integrity sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q== dependencies: run-applescript "^7.0.0" @@ -3490,12 +3052,12 @@ bundle-require@^5.1.0: bytes@3.1.2, bytes@^3.1.2: version "3.1.2" - resolved "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== c8@^9.1.0: version "9.1.0" - resolved "https://registry.npmjs.org/c8/-/c8-9.1.0.tgz" + resolved "https://registry.yarnpkg.com/c8/-/c8-9.1.0.tgz#0e57ba3ab9e5960ab1d650b4a86f71e53cb68112" integrity sha512-mBWcT5iqNir1zIkzSPyI3NCR9EZCVI3WUD+AVO17MVWTSFNyUueXE82qTeampNtTr+ilN/5Ua3j24LgbCKjDVg== dependencies: "@bcoe/v8-coverage" "^0.2.3" @@ -3517,7 +3079,7 @@ cac@^6.7.14: cacache@^18.0.0, cacache@^18.0.3: version "18.0.4" - resolved "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-18.0.4.tgz#4601d7578dadb59c66044e157d02a3314682d6a5" integrity sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ== dependencies: "@npmcli/fs" "^3.1.0" @@ -3535,7 +3097,7 @@ cacache@^18.0.0, cacache@^18.0.3: call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz#4b5428c222be985d79c3d82657479dbe0b59b2d6" integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ== dependencies: es-errors "^1.3.0" @@ -3543,7 +3105,7 @@ call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1, call-bind-apply- call-bind@^1.0.7, call-bind@^1.0.8: version "1.0.8" - resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.8.tgz#0736a9660f537e3388826f440d5ec45f744eaa4c" integrity sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww== dependencies: call-bind-apply-helpers "^1.0.0" @@ -3553,7 +3115,7 @@ call-bind@^1.0.7, call-bind@^1.0.8: call-bound@^1.0.2, call-bound@^1.0.3, call-bound@^1.0.4: version "1.0.4" - resolved "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz" + resolved "https://registry.yarnpkg.com/call-bound/-/call-bound-1.0.4.tgz#238de935d2a2a692928c538c7ccfa91067fd062a" integrity sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg== dependencies: call-bind-apply-helpers "^1.0.2" @@ -3561,7 +3123,7 @@ call-bound@^1.0.2, call-bound@^1.0.3, call-bound@^1.0.4: callsites@^3.0.0, callsites@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== camelcase-css@^2.0.1: @@ -3574,9 +3136,24 @@ camelcase@^6.0.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== +caniuse-api@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" + integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw== + dependencies: + browserslist "^4.0.0" + caniuse-lite "^1.0.0" + lodash.memoize "^4.1.2" + lodash.uniq "^4.5.0" + +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001737: + version "1.0.30001739" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001739.tgz#b34ce2d56bfc22f4352b2af0144102d623a124f4" + integrity sha512-y+j60d6ulelrNSwpPyrHdl+9mJnQzHBr08xm48Qno0nSk4h3Qojh+ziv2qE6rXf4k3tadF4o1J/1tAbVm1NtnA== + ccount@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/ccount/-/ccount-2.0.1.tgz#17a3bf82302e0870d6da43a01311a8bc02a3ecf5" integrity sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg== chai@^4.3.10: @@ -3593,9 +3170,9 @@ chai@^4.3.10: type-detect "^4.1.0" chai@^5.2.0: - version "5.3.1" - resolved "https://registry.yarnpkg.com/chai/-/chai-5.3.1.tgz#f9e9a7e03f93d69e24b78d30db253780e26deb44" - integrity sha512-48af6xm9gQK8rhIcOxWwdGzIervm8BVTin+yRp9HEvU20BtVZ2lBywlIJBzwaDtvo0FvjeL7QdCADoUoqIbV3A== + version "5.3.3" + resolved "https://registry.yarnpkg.com/chai/-/chai-5.3.3.tgz#dd3da955e270916a4bd3f625f4b919996ada7e06" + integrity sha512-4zNhdJD/iOjSH0A05ea+Ke6MU5mmpQcbQsSOkgdaUMJ9zTlDTD/GYlwohmIE2u0gaxHYiVHEn1Fw9mZ/ktJWgw== dependencies: assertion-error "^2.0.1" check-error "^2.1.1" @@ -3603,46 +3180,46 @@ chai@^5.2.0: loupe "^3.1.0" pathval "^2.0.0" +chalk@4.1.2, chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + chalk@^2.4.1: version "2.4.2" - resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== dependencies: ansi-styles "^3.2.1" escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.2: - version "4.1.2" - resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz" - integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -chalk@^5.2.0, chalk@^5.3.0: - version "5.4.1" - resolved "https://registry.npmjs.org/chalk/-/chalk-5.4.1.tgz" - integrity sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w== +chalk@^5.2.0, chalk@^5.3.0, chalk@^5.4.1: + version "5.6.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.6.0.tgz#a1a8d294ea3526dbb77660f12649a08490e33ab8" + integrity sha512-46QrSQFyVSEyYAgQ22hQ+zDa60YHA4fBstHmtSApj1Y5vKtG27fWowW03jCk5KcbXEWPZUIR894aARCA/G1kfQ== character-entities-html4@^2.0.0: version "2.1.0" - resolved "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/character-entities-html4/-/character-entities-html4-2.1.0.tgz#1f1adb940c971a4b22ba39ddca6b618dc6e56b2b" integrity sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA== character-entities-legacy@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz#76bc83a90738901d7bc223a9e93759fdd560125b" integrity sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ== character-entities@^2.0.0: version "2.0.2" - resolved "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-2.0.2.tgz#2d09c2e72cd9523076ccb21157dff66ad43fcc22" integrity sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ== chardet@^0.7.0: version "0.7.0" - resolved "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz" + resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== check-error@^1.0.3: @@ -3659,7 +3236,7 @@ check-error@^2.1.1: cheerio-select@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/cheerio-select/-/cheerio-select-2.1.0.tgz#4d8673286b8126ca2a8e42740d5e3c4884ae21b4" integrity sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g== dependencies: boolbase "^1.0.0" @@ -3670,25 +3247,25 @@ cheerio-select@^2.1.0: domutils "^3.0.1" cheerio@^1.0.0-rc.9: - version "1.1.0" - resolved "https://registry.npmjs.org/cheerio/-/cheerio-1.1.0.tgz" - integrity sha512-+0hMx9eYhJvWbgpKV9hN7jg0JcwydpopZE4hgi+KvQtByZXPp04NiCWU0LzcAbP63abZckIHkTQaXVF52mX3xQ== + version "1.1.2" + resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.1.2.tgz#26af77e89336c81c63ea83197f868b4cbd351369" + integrity sha512-IkxPpb5rS/d1IiLbHMgfPuS0FgiWTtFIm/Nj+2woXDLTZ7fOT2eqzgYbdMlLweqlHbsZjxEChoVK+7iph7jyQg== dependencies: cheerio-select "^2.1.0" dom-serializer "^2.0.0" domhandler "^5.0.3" domutils "^3.2.2" - encoding-sniffer "^0.2.0" + encoding-sniffer "^0.2.1" htmlparser2 "^10.0.0" parse5 "^7.3.0" parse5-htmlparser2-tree-adapter "^7.1.0" parse5-parser-stream "^7.1.2" - undici "^7.10.0" + undici "^7.12.0" whatwg-mimetype "^4.0.0" chokidar@^3.5.3, chokidar@^3.6.0: version "3.6.0" - resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== dependencies: anymatch "~3.1.2" @@ -3710,22 +3287,22 @@ chokidar@^4.0.3: chownr@^1.1.1: version "1.1.4" - resolved "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== chownr@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== chownr@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-3.0.0.tgz#9855e64ecd240a9cc4267ce8a4aa5d24a1da15e4" integrity sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g== clean-stack@^2.0.0: version "2.2.0" - resolved "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== clear-module@^4.1.2: @@ -3738,43 +3315,43 @@ clear-module@^4.1.2: cli-cursor@3.1.0, cli-cursor@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== dependencies: restore-cursor "^3.1.0" cli-cursor@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/cli-cursor/-/cli-cursor-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-5.0.0.tgz#24a4831ecf5a6b01ddeb32fb71a4b2088b0dce38" integrity sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw== dependencies: restore-cursor "^5.0.0" cli-spinners@2.6.1: version "2.6.1" - resolved "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.6.1.tgz#adc954ebe281c37a6319bfa401e6dd2488ffb70d" integrity sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g== cli-spinners@^2.5.0, cli-spinners@^2.9.2: version "2.9.2" - resolved "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.9.2.tgz#1773a8f4b9c4d6ac31563df53b3fc1d79462fe41" integrity sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg== cli-table@^0.3.11: version "0.3.11" - resolved "https://registry.npmjs.org/cli-table/-/cli-table-0.3.11.tgz" + resolved "https://registry.yarnpkg.com/cli-table/-/cli-table-0.3.11.tgz#ac69cdecbe81dccdba4889b9a18b7da312a9d3ee" integrity sha512-IqLQi4lO0nIB4tcdTpN4LCB9FI3uqrJZK7RC515EnhZ6qBaglkIgICb1wjeAqpdoOabm1+SuQtkXIPdYC93jhQ== dependencies: colors "1.0.3" cli-width@^4.1.0: version "4.1.0" - resolved "https://registry.npmjs.org/cli-width/-/cli-width-4.1.0.tgz" + resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-4.1.0.tgz#42daac41d3c254ef38ad8ac037672130173691c5" integrity sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ== cliui@^7.0.2: version "7.0.4" - resolved "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== dependencies: string-width "^4.2.0" @@ -3792,27 +3369,27 @@ cliui@^8.0.1: clone@^1.0.2: version "1.0.4" - resolved "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz" + resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" integrity sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg== clone@^2.1.2: version "2.1.2" - resolved "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz" + resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" integrity sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w== cmd-shim@^6.0.0: version "6.0.3" - resolved "https://registry.npmjs.org/cmd-shim/-/cmd-shim-6.0.3.tgz" + resolved "https://registry.yarnpkg.com/cmd-shim/-/cmd-shim-6.0.3.tgz#c491e9656594ba17ac83c4bd931590a9d6e26033" integrity sha512-FMabTRlc5t5zjdenF6mS0MBeFZm0XqHqeOkcskKFb/LYCcRQ5fVgLOHVc4Lq9CqABd9zhjwPjMBCJvMCziSVtA== cockatiel@^3.1.2: version "3.2.1" - resolved "https://registry.npmjs.org/cockatiel/-/cockatiel-3.2.1.tgz" + resolved "https://registry.yarnpkg.com/cockatiel/-/cockatiel-3.2.1.tgz#575f937bc4040a20ae27352a6d07c9c5a741981f" integrity sha512-gfrHV6ZPkquExvMh9IOkKsBzNDk6sDuZ6DdBGUBkvFnTCqCxzpuq48RySgP0AnaqQkw2zynOFj9yly6T1Q2G5Q== color-convert@^1.9.0: version "1.9.3" - resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== dependencies: color-name "1.1.3" @@ -3826,7 +3403,7 @@ color-convert@^2.0.1: color-name@1.1.3: version "1.1.3" - resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== color-name@~1.1.4: @@ -3834,36 +3411,41 @@ color-name@~1.1.4: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== +colord@^2.9.1: + version "2.9.3" + resolved "https://registry.yarnpkg.com/colord/-/colord-2.9.3.tgz#4f8ce919de456f1d5c1c368c307fe20f3e59fb43" + integrity sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw== + colors@1.0.3: version "1.0.3" - resolved "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" integrity sha512-pFGrxThWcWQ2MsAz6RtgeWe4NK2kUE1WfsrvvlctdII745EW9I0yflqhe7++M5LEc7bV2c/9/5zc8sFcpL0Drw== combined-stream@^1.0.8: version "1.0.8" - resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz" + resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== dependencies: delayed-stream "~1.0.0" comma-separated-tokens@^2.0.0: version "2.0.3" - resolved "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz" + resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz#4e89c9458acb61bc8fef19f4529973b2392839ee" integrity sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg== commander@12.0.0: version "12.0.0" - resolved "https://registry.npmjs.org/commander/-/commander-12.0.0.tgz" + resolved "https://registry.yarnpkg.com/commander/-/commander-12.0.0.tgz#b929db6df8546080adfd004ab215ed48cf6f2592" integrity sha512-MwVNWlYjDTtOjX5PiD7o5pK0UrFU/OYgcJfjjK4RaHZETNtjJqrZa9Y9ds88+A+f+d5lv+561eZ+yCKoS3gbAA== commander@^11.1.0: version "11.1.0" - resolved "https://registry.npmjs.org/commander/-/commander-11.1.0.tgz" + resolved "https://registry.yarnpkg.com/commander/-/commander-11.1.0.tgz#62fdce76006a68e5c1ab3314dc92e800eb83d906" integrity sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ== commander@^12.1.0: version "12.1.0" - resolved "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz" + resolved "https://registry.yarnpkg.com/commander/-/commander-12.1.0.tgz#01423b36f501259fdaac4d0e4d60c96c991585d3" integrity sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA== commander@^4.0.0: @@ -3871,104 +3453,110 @@ commander@^4.0.0: resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== +commander@^7.2.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" + integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== + common-ancestor-path@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz#4f7d2d1394d91b7abdf51871c62f71eadb0182a7" integrity sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w== commondir@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg== concat-map@0.0.1: version "0.0.1" - resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== +concat-with-sourcemaps@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/concat-with-sourcemaps/-/concat-with-sourcemaps-1.1.0.tgz#d4ea93f05ae25790951b99e7b3b09e3908a4082e" + integrity sha512-4gEjHJFT9e+2W/77h/DS5SGUgwDaOwprX8L/gl5+3ixnzkVJJsZWDSelmN3Oilw3LNDZjZV0yqH1hLG3k6nghg== + dependencies: + source-map "^0.6.1" + concurrently@^9.2.0: - version "9.2.0" - resolved "https://registry.yarnpkg.com/concurrently/-/concurrently-9.2.0.tgz#233e3892ceb0b5db9fd49e9c8c739737a7b638b5" - integrity sha512-IsB/fiXTupmagMW4MNp2lx2cdSN2FfZq78vF90LBB+zZHArbIQZjQtzXCiXnvTxCZSvXanTqFLWBjw2UkLx1SQ== + version "9.2.1" + resolved "https://registry.yarnpkg.com/concurrently/-/concurrently-9.2.1.tgz#248ea21b95754947be2dad9c3e4b60f18ca4e44f" + integrity sha512-fsfrO0MxV64Znoy8/l1vVIjjHa29SZyyqPgQBwhiDcaW8wJc2W3XWVOGx4M3oJBnv/zdUZIIp1gDeS98GzP8Ng== dependencies: - chalk "^4.1.2" - lodash "^4.17.21" - rxjs "^7.8.1" - shell-quote "^1.8.1" - supports-color "^8.1.1" - tree-kill "^1.2.2" - yargs "^17.7.2" + chalk "4.1.2" + rxjs "7.8.2" + shell-quote "1.8.3" + supports-color "8.1.1" + tree-kill "1.2.2" + yargs "17.7.2" confbox@^0.1.8: version "0.1.8" - resolved "https://registry.npmjs.org/confbox/-/confbox-0.1.8.tgz" + resolved "https://registry.yarnpkg.com/confbox/-/confbox-0.1.8.tgz#820d73d3b3c82d9bd910652c5d4d599ef8ff8b06" integrity sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w== -confbox@^0.2.1: +confbox@^0.2.2: version "0.2.2" - resolved "https://registry.npmjs.org/confbox/-/confbox-0.2.2.tgz" + resolved "https://registry.yarnpkg.com/confbox/-/confbox-0.2.2.tgz#8652f53961c74d9e081784beed78555974a9c110" integrity sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ== config-chain@^1.1.11: version "1.1.13" - resolved "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz" + resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4" integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ== dependencies: ini "^1.3.4" proto-list "~1.2.1" -consola@^3.2.3: - version "3.4.0" - resolved "https://registry.npmjs.org/consola/-/consola-3.4.0.tgz" - integrity sha512-EiPU8G6dQG0GFHNR8ljnZFki/8a+cQwEQ+7wpxdChl02Q8HXlwEZWD5lqAF8vC2sEC3Tehr8hy7vErz88LHyUA== - -consola@^3.4.0: +consola@^3.2.3, consola@^3.4.0: version "3.4.2" resolved "https://registry.yarnpkg.com/consola/-/consola-3.4.2.tgz#5af110145397bb67afdab77013fdc34cae590ea7" integrity sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA== content-disposition@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/content-disposition/-/content-disposition-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-1.0.0.tgz#844426cb398f934caefcbb172200126bc7ceace2" integrity sha512-Au9nRL8VNUut/XSzbQA38+M78dzP4D+eqg3gfJHMIHHYa3bg067xj1KxMUWj+VULbiZMowKngFFbKczUrNJ1mg== dependencies: safe-buffer "5.2.1" content-type@^1.0.5: version "1.0.5" - resolved "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== convert-source-map@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== cookie-signature@^1.2.1: version "1.2.2" - resolved "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.2.2.tgz" + resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.2.2.tgz#57c7fc3cc293acab9fec54d73e15690ebe4a1793" integrity sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg== cookie@^0.7.1: version "0.7.2" - resolved "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.7.2.tgz#556369c472a2ba910f2979891b526b3436237ed7" integrity sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w== copy-anything@^3.0.2: version "3.0.5" - resolved "https://registry.npmjs.org/copy-anything/-/copy-anything-3.0.5.tgz" + resolved "https://registry.yarnpkg.com/copy-anything/-/copy-anything-3.0.5.tgz#2d92dce8c498f790fa7ad16b01a1ae5a45b020a0" integrity sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w== dependencies: is-what "^4.1.8" core-util-is@~1.0.0: version "1.0.3" - resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== cross-spawn@^6.0.5: version "6.0.6" - resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.6.tgz#30d0efa0712ddb7eb5a76e1e8721bffafa6b5d57" integrity sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw== dependencies: nice-try "^1.0.4" @@ -3979,17 +3567,33 @@ cross-spawn@^6.0.5: cross-spawn@^7.0.3, cross-spawn@^7.0.6: version "7.0.6" - resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== dependencies: path-key "^3.1.0" shebang-command "^2.0.0" which "^2.0.1" +css-declaration-sorter@^6.3.1: + version "6.4.1" + resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-6.4.1.tgz#28beac7c20bad7f1775be3a7129d7eae409a3a71" + integrity sha512-rtdthzxKuyq6IzqX6jEcIzQF/YqccluefyCYheovBOLhFT/drQA9zj/UbRAa9J7C0o6EG6u3E6g+vKkay7/k3g== + +css-select@^4.1.3: + version "4.3.0" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.3.0.tgz#db7129b2846662fd8628cfc496abb2b59e41529b" + integrity sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ== + dependencies: + boolbase "^1.0.0" + css-what "^6.0.1" + domhandler "^4.3.1" + domutils "^2.8.0" + nth-check "^2.0.1" + css-select@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz" - integrity sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg== + version "5.2.2" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-5.2.2.tgz#01b6e8d163637bb2dd6c982ca4ed65863682786e" + integrity sha512-TizTzUddG/xYLA3NXodFM0fSbNizXjOKhqiQQwvhlspadZokn1KDy0NZFS0wuEubIYAV5/c1/lAr0TaaFXEXzw== dependencies: boolbase "^1.0.0" css-what "^6.1.0" @@ -3997,24 +3601,88 @@ css-select@^5.1.0: domutils "^3.0.1" nth-check "^2.0.1" -css-what@^6.1.0: - version "6.1.0" - resolved "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz" - integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw== +css-tree@^1.1.2, css-tree@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.1.3.tgz#eb4870fb6fd7707327ec95c2ff2ab09b5e8db91d" + integrity sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q== + dependencies: + mdn-data "2.0.14" + source-map "^0.6.1" + +css-what@^6.0.1, css-what@^6.1.0: + version "6.2.2" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.2.2.tgz#cdcc8f9b6977719fdfbd1de7aec24abf756b9dea" + integrity sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA== cssesc@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== +cssnano-preset-default@^5.2.14: + version "5.2.14" + resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz#309def4f7b7e16d71ab2438052093330d9ab45d8" + integrity sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A== + dependencies: + css-declaration-sorter "^6.3.1" + cssnano-utils "^3.1.0" + postcss-calc "^8.2.3" + postcss-colormin "^5.3.1" + postcss-convert-values "^5.1.3" + postcss-discard-comments "^5.1.2" + postcss-discard-duplicates "^5.1.0" + postcss-discard-empty "^5.1.1" + postcss-discard-overridden "^5.1.0" + postcss-merge-longhand "^5.1.7" + postcss-merge-rules "^5.1.4" + postcss-minify-font-values "^5.1.0" + postcss-minify-gradients "^5.1.1" + postcss-minify-params "^5.1.4" + postcss-minify-selectors "^5.2.1" + postcss-normalize-charset "^5.1.0" + postcss-normalize-display-values "^5.1.0" + postcss-normalize-positions "^5.1.1" + postcss-normalize-repeat-style "^5.1.1" + postcss-normalize-string "^5.1.0" + postcss-normalize-timing-functions "^5.1.0" + postcss-normalize-unicode "^5.1.1" + postcss-normalize-url "^5.1.0" + postcss-normalize-whitespace "^5.1.1" + postcss-ordered-values "^5.1.3" + postcss-reduce-initial "^5.1.2" + postcss-reduce-transforms "^5.1.0" + postcss-svgo "^5.1.0" + postcss-unique-selectors "^5.1.1" + +cssnano-utils@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/cssnano-utils/-/cssnano-utils-3.1.0.tgz#95684d08c91511edfc70d2636338ca37ef3a6861" + integrity sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA== + +cssnano@^5.0.1: + version "5.1.15" + resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-5.1.15.tgz#ded66b5480d5127fcb44dac12ea5a983755136bf" + integrity sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw== + dependencies: + cssnano-preset-default "^5.2.14" + lilconfig "^2.0.3" + yaml "^1.10.2" + +csso@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/csso/-/csso-4.2.0.tgz#ea3a561346e8dc9f546d6febedd50187cf389529" + integrity sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA== + dependencies: + css-tree "^1.1.2" + csstype@^3.1.3: version "3.1.3" - resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== data-view-buffer@^1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/data-view-buffer/-/data-view-buffer-1.0.2.tgz#211a03ba95ecaf7798a8c7198d79536211f88570" integrity sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ== dependencies: call-bound "^1.0.3" @@ -4023,7 +3691,7 @@ data-view-buffer@^1.0.2: data-view-byte-length@^1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz#9e80f7ca52453ce3e93d25a35318767ea7704735" integrity sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ== dependencies: call-bound "^1.0.3" @@ -4032,7 +3700,7 @@ data-view-byte-length@^1.0.2: data-view-byte-offset@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz#068307f9b71ab76dbbe10291389e020856606191" integrity sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ== dependencies: call-bound "^1.0.2" @@ -4041,36 +3709,36 @@ data-view-byte-offset@^1.0.1: dateformat@^5.0.3: version "5.0.3" - resolved "https://registry.npmjs.org/dateformat/-/dateformat-5.0.3.tgz" + resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-5.0.3.tgz#fe2223eff3cc70ce716931cb3038b59a9280696e" integrity sha512-Kvr6HmPXUMerlLcLF+Pwq3K7apHpYmGDVqrxcDasBg86UcKeTSNWbEzU8bwdXnxnR44FtMhJAxI4Bov6Y/KUfA== de-indent@^1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/de-indent/-/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d" integrity sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg== debug@4, debug@^4.0.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.3.5, debug@^4.4.0, debug@^4.4.1: version "4.4.1" - resolved "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.1.tgz#e5a8bc6cbc4c6cd3e64308b0693a3d4fa550189b" integrity sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ== dependencies: ms "^2.1.3" decamelize@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ== decode-named-character-reference@^1.0.0: - version "1.1.0" - resolved "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.1.0.tgz" - integrity sha512-Wy+JTSbFThEOXQIR2L6mxJvEs+veIzpmqD7ynWxMXGpnk3smkHQOp6forLdHsKpAMW9iJpaBBIxz285t1n1C3w== + version "1.2.0" + resolved "https://registry.yarnpkg.com/decode-named-character-reference/-/decode-named-character-reference-1.2.0.tgz#25c32ae6dd5e21889549d40f676030e9514cc0ed" + integrity sha512-c6fcElNV6ShtZXmsgNgFFV5tVX2PaV4g+MOAkb8eXHvn6sryJBrZa9r0zV6+dtTyoCKxtDy5tyQ5ZwQuidtd+Q== dependencies: character-entities "^2.0.0" decompress-response@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz" + resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc" integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ== dependencies: mimic-response "^3.1.0" @@ -4094,12 +3762,12 @@ deep-eql@^5.0.1: deep-extend@^0.6.0: version "0.6.0" - resolved "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== deep-is@^0.1.3: version "0.1.4" - resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== deepmerge@^4.2.2: @@ -4109,12 +3777,12 @@ deepmerge@^4.2.2: default-browser-id@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/default-browser-id/-/default-browser-id-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/default-browser-id/-/default-browser-id-5.0.0.tgz#a1d98bf960c15082d8a3fa69e83150ccccc3af26" integrity sha512-A6p/pu/6fyBcA1TRz/GqWYPViplrftcW2gZC9q79ngNCKAeR/X3gcEdXQHl4KNXV+3wgIJ1CPkJQ3IHM6lcsyA== default-browser@^5.2.1: version "5.2.1" - resolved "https://registry.npmjs.org/default-browser/-/default-browser-5.2.1.tgz" + resolved "https://registry.yarnpkg.com/default-browser/-/default-browser-5.2.1.tgz#7b7ba61204ff3e425b556869ae6d3e9d9f1712cf" integrity sha512-WY/3TUME0x3KPYdRRxEJJvXRHV4PyPoUsxtZa78lwItwRQRHhd2U9xOscaT/YTf8uCXIAjeJOFBVEh/7FtD8Xg== dependencies: bundle-name "^4.1.0" @@ -4122,14 +3790,14 @@ default-browser@^5.2.1: defaults@^1.0.3: version "1.0.4" - resolved "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz" + resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.4.tgz#b0b02062c1e2aa62ff5d9528f0f98baa90978d7a" integrity sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A== dependencies: clone "^1.0.2" define-data-property@^1.0.1, define-data-property@^1.1.4: version "1.1.4" - resolved "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz" + resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== dependencies: es-define-property "^1.0.0" @@ -4138,17 +3806,17 @@ define-data-property@^1.0.1, define-data-property@^1.1.4: define-lazy-prop@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== define-lazy-prop@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz#dbb19adfb746d7fc6d734a06b72f4a00d021255f" integrity sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg== define-properties@^1.2.1: version "1.2.1" - resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== dependencies: define-data-property "^1.0.1" @@ -4157,32 +3825,32 @@ define-properties@^1.2.1: delayed-stream@~1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== depd@2.0.0, depd@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== deprecation@^2.0.0: version "2.3.1" - resolved "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz" + resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ== dequal@^2.0.0, dequal@^2.0.3: version "2.0.3" - resolved "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz" + resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be" integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA== detect-libc@^2.0.0: - version "2.0.3" - resolved "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz" - integrity sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw== + version "2.0.4" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.4.tgz#f04715b8ba815e53b4d8109655b6508a6865a7e8" + integrity sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA== devlop@^1.0.0, devlop@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/devlop/-/devlop-1.1.0.tgz#4db7c2ca4dc6e0e834c30be70c94bbc976dc7018" integrity sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA== dependencies: dequal "^2.0.0" @@ -4194,22 +3862,22 @@ didyoumean@^1.2.2: diff-sequences@^29.6.3: version "29.6.3" - resolved "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.6.3.tgz#4deaf894d11407c51efc8418012f9e70b84ea921" integrity sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q== diff@^5.2.0: version "5.2.0" - resolved "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz" + resolved "https://registry.yarnpkg.com/diff/-/diff-5.2.0.tgz#26ded047cd1179b78b9537d5ef725503ce1ae531" integrity sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A== diff@^7.0.0: version "7.0.0" - resolved "https://registry.npmjs.org/diff/-/diff-7.0.0.tgz" + resolved "https://registry.yarnpkg.com/diff/-/diff-7.0.0.tgz#3fb34d387cd76d803f6eebea67b921dab0182a9a" integrity sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw== dir-glob@^3.0.1: version "3.0.1" - resolved "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== dependencies: path-type "^4.0.0" @@ -4221,33 +3889,58 @@ dlv@^1.1.3: dom-accessibility-api@^0.5.9: version "0.5.16" - resolved "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz" + resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz#5a7429e6066eb3664d911e33fb0e45de8eb08453" integrity sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg== +dom-serializer@^1.0.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.4.1.tgz#de5d41b1aea290215dc45a6dae8adcf1d32e2d30" + integrity sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag== + dependencies: + domelementtype "^2.0.1" + domhandler "^4.2.0" + entities "^2.0.0" + dom-serializer@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-2.0.0.tgz#e41b802e1eedf9f6cae183ce5e622d789d7d8e53" integrity sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg== dependencies: domelementtype "^2.3.0" domhandler "^5.0.2" entities "^4.2.0" -domelementtype@^2.3.0: +domelementtype@^2.0.1, domelementtype@^2.2.0, domelementtype@^2.3.0: version "2.3.0" - resolved "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== +domhandler@^4.2.0, domhandler@^4.3.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" + integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ== + dependencies: + domelementtype "^2.2.0" + domhandler@^5.0.2, domhandler@^5.0.3: version "5.0.3" - resolved "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-5.0.3.tgz#cc385f7f751f1d1fc650c21374804254538c7d31" integrity sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w== dependencies: domelementtype "^2.3.0" +domutils@^2.8.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" + integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A== + dependencies: + dom-serializer "^1.0.1" + domelementtype "^2.2.0" + domhandler "^4.2.0" + domutils@^3.0.1, domutils@^3.2.1, domutils@^3.2.2: version "3.2.2" - resolved "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-3.2.2.tgz#edbfe2b668b0c1d97c24baf0f1062b132221bc78" integrity sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw== dependencies: dom-serializer "^2.0.0" @@ -4256,19 +3949,24 @@ domutils@^3.0.1, domutils@^3.2.1, domutils@^3.2.2: dotenv-expand@~11.0.6: version "11.0.7" - resolved "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-11.0.7.tgz" + resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-11.0.7.tgz#af695aea007d6fdc84c86cd8d0ad7beb40a0bd08" integrity sha512-zIHwmZPRshsCdpMDyVsqGmgyP0yT8GAgXUnkdAoJisxvf33k7yO6OuoKmcTGuXPWSsm8Oh88nZicRLA9Y0rUeA== dependencies: dotenv "^16.4.5" -dotenv@^16.4.5, dotenv@~16.4.5: +dotenv@^16.4.5: + version "16.6.1" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.6.1.tgz#773f0e69527a8315c7285d5ee73c4459d20a8020" + integrity sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow== + +dotenv@~16.4.5: version "16.4.7" - resolved "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.4.7.tgz#0e20c5b82950140aa99be360a8a5f52335f53c26" integrity sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ== dunder-proto@^1.0.0, dunder-proto@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/dunder-proto/-/dunder-proto-1.0.1.tgz#d7ae667e1dc83482f8b70fd0f6eefc50da30f58a" integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A== dependencies: call-bind-apply-helpers "^1.0.1" @@ -4277,39 +3975,44 @@ dunder-proto@^1.0.0, dunder-proto@^1.0.1: eastasianwidth@^0.2.0: version "0.2.0" - resolved "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz" + resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== ecdsa-sig-formatter@1.0.11: version "1.0.11" - resolved "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz" + resolved "https://registry.yarnpkg.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz#ae0f0fa2d85045ef14a817daa3ce9acd0489e5bf" integrity sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ== dependencies: safe-buffer "^5.0.1" editions@^6.21.0: - version "6.21.0" - resolved "https://registry.npmjs.org/editions/-/editions-6.21.0.tgz" - integrity sha512-ofkXJtn7z0urokN62DI3SBo/5xAtF0rR7tn+S/bSYV79Ka8pTajIIl+fFQ1q88DQEImymmo97M4azY3WX/nUdg== + version "6.22.0" + resolved "https://registry.yarnpkg.com/editions/-/editions-6.22.0.tgz#3913c4eea9aa4586e17bcd25d64d5edf1790657a" + integrity sha512-UgGlf8IW75je7HZjNDpJdCv4cGJWIi6yumFdZ0R7A8/CIhQiWUjyGLCxdHpd8bmyD1gnkfUNK0oeOXqUS2cpfQ== dependencies: - version-range "^4.13.0" + version-range "^4.15.0" ee-first@1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== ejs@^3.1.10: version "3.1.10" - resolved "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz" + resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.10.tgz#69ab8358b14e896f80cc39e62087b88500c3ac3b" integrity sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA== dependencies: jake "^10.8.5" +electron-to-chromium@^1.5.211: + version "1.5.211" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.211.tgz#749317bf9cf894c06f67980940cf8074e5eb08ca" + integrity sha512-IGBvimJkotaLzFnwIVgW9/UD/AOJ2tByUmeOrtqBfACSbAw5b1G0XpvdaieKyc7ULmbwXVx+4e4Be8pOPBrYkw== + emoji-regex@^10.3.0: - version "10.4.0" - resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.4.0.tgz" - integrity sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw== + version "10.5.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-10.5.0.tgz#be23498b9e39db476226d8e81e467f39aca26b78" + integrity sha512-lb49vf1Xzfx080OKA0o6l8DQQpV+6Vg95zyCJX9VB/BqKYlhG7N4wgROUUHRA+ZPUefLnteQOad7z1kT2bV7bg== emoji-regex@^8.0.0: version "8.0.0" @@ -4318,17 +4021,17 @@ emoji-regex@^8.0.0: emoji-regex@^9.2.2: version "9.2.2" - resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== encodeurl@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-2.0.0.tgz#7b8ea898077d7e409d3ac45474ea38eaf0857a58" integrity sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg== -encoding-sniffer@^0.2.0: +encoding-sniffer@^0.2.1: version "0.2.1" - resolved "https://registry.npmjs.org/encoding-sniffer/-/encoding-sniffer-0.2.1.tgz" + resolved "https://registry.yarnpkg.com/encoding-sniffer/-/encoding-sniffer-0.2.1.tgz#396ec97ac22ce5a037ba44af1992ac9d46a7b819" integrity sha512-5gvq20T6vfpekVtqrYQsSCFZ1wEg5+wW0/QaZMWkFr6BqD3NfKs0rLCx4rrVlSWJeZb5NBJgVLswK/w2MWU+Gw== dependencies: iconv-lite "^0.6.3" @@ -4336,68 +4039,78 @@ encoding-sniffer@^0.2.0: encoding@^0.1.13: version "0.1.13" - resolved "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz" + resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== dependencies: iconv-lite "^0.6.2" end-of-stream@^1.1.0, end-of-stream@^1.4.1: - version "1.4.4" - resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz" - integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== + version "1.4.5" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.5.tgz#7344d711dea40e0b74abc2ed49778743ccedb08c" + integrity sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg== dependencies: once "^1.4.0" enhanced-resolve@^5.15.0: - version "5.18.1" - resolved "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.1.tgz" - integrity sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg== + version "5.18.3" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.18.3.tgz#9b5f4c5c076b8787c78fe540392ce76a88855b44" + integrity sha512-d4lC8xfavMeBjzGr2vECC3fsGXziXZQyJxD868h2M/mBI3PwAuODxAkLkq5HYuvrPYcUtiLzsTo8U3PgX3Ocww== dependencies: graceful-fs "^4.2.4" tapable "^2.2.0" enquirer@~2.3.6: version "2.3.6" - resolved "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz" + resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== dependencies: ansi-colors "^4.1.1" +entities@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" + integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== + entities@^4.2.0, entities@^4.4.0, entities@^4.5.0: version "4.5.0" - resolved "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz" + resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== entities@^6.0.0: version "6.0.1" - resolved "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz" + resolved "https://registry.yarnpkg.com/entities/-/entities-6.0.1.tgz#c28c34a43379ca7f61d074130b2f5f7020a30694" integrity sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g== env-paths@^2.2.0: version "2.2.1" - resolved "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz" + resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== env-paths@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/env-paths/-/env-paths-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-3.0.0.tgz#2f1e89c2f6dbd3408e1b1711dd82d62e317f58da" integrity sha512-dtJUTepzMW3Lm/NPxRf3wP4642UWhjL2sQxc+ym2YMj1m/H2zDNQOlezafzkHwn6sMstjHTwG6iQQsctDW/b1A== +environment@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/environment/-/environment-1.1.0.tgz#8e86c66b180f363c7ab311787e0259665f45a9f1" + integrity sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q== + err-code@^2.0.2: version "2.0.3" - resolved "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz" + resolved "https://registry.yarnpkg.com/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" integrity sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA== -error-ex@^1.3.1, error-ex@^1.3.2: +error-ex@^1.3.1: version "1.3.2" - resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== dependencies: is-arrayish "^0.2.1" es-abstract@^1.23.2, es-abstract@^1.23.5, es-abstract@^1.23.9: version "1.24.0" - resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.24.0.tgz#c44732d2beb0acc1ed60df840869e3106e7af328" integrity sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg== dependencies: array-buffer-byte-length "^1.0.2" @@ -4457,12 +4170,12 @@ es-abstract@^1.23.2, es-abstract@^1.23.5, es-abstract@^1.23.9: es-define-property@^1.0.0, es-define-property@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa" integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g== es-errors@^1.3.0: version "1.3.0" - resolved "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz" + resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== es-module-lexer@^1.7.0: @@ -4472,14 +4185,14 @@ es-module-lexer@^1.7.0: es-object-atoms@^1.0.0, es-object-atoms@^1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz#1c4f2c4837327597ce69d2ca190a7fdd172338c1" integrity sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA== dependencies: es-errors "^1.3.0" es-set-tostringtag@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz#f31dbbe0c183b00a6d26eb6325c810c0fd18bd4d" integrity sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA== dependencies: es-errors "^1.3.0" @@ -4489,7 +4202,7 @@ es-set-tostringtag@^2.1.0: es-to-primitive@^1.3.0: version "1.3.0" - resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.3.0.tgz#96c89c82cc49fd8794a24835ba3e1ff87f214e18" integrity sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g== dependencies: is-callable "^1.2.7" @@ -4498,7 +4211,7 @@ es-to-primitive@^1.3.0: esbuild-plugin-copy@^2.1.1: version "2.1.1" - resolved "https://registry.npmjs.org/esbuild-plugin-copy/-/esbuild-plugin-copy-2.1.1.tgz" + resolved "https://registry.yarnpkg.com/esbuild-plugin-copy/-/esbuild-plugin-copy-2.1.1.tgz#638308ecfd679e4c7c76b71c62f7dd9a4cc7f901" integrity sha512-Bk66jpevTcV8KMFzZI1P7MZKZ+uDcrZm2G2egZ2jNIvVnivDpodZI+/KnpL3Jnap0PBdIHU7HwFGB8r+vV5CVw== dependencies: chalk "^4.1.2" @@ -4569,32 +4282,32 @@ esbuild@^0.25.0, esbuild@^0.25.8, esbuild@^0.25.9, esbuild@~0.25.0: escalade@^3.1.1, escalade@^3.2.0: version "3.2.0" - resolved "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== escape-html@^1.0.3: version "1.0.3" - resolved "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== escape-string-regexp@^1.0.5: version "1.0.5" - resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== escape-string-regexp@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== escape-string-regexp@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz#4683126b500b61762f2dbebace1806e8be31b1c8" integrity sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw== eslint-scope@^8.4.0: version "8.4.0" - resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-8.4.0.tgz#88e646a207fad61436ffa39eb505147200655c82" integrity sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg== dependencies: esrecurse "^4.3.0" @@ -4602,27 +4315,27 @@ eslint-scope@^8.4.0: eslint-visitor-keys@^3.4.3: version "3.4.3" - resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== eslint-visitor-keys@^4.2.1: version "4.2.1" - resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz#4cfea60fe7dd0ad8e816e1ed026c1d5251b512c1" integrity sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ== eslint@^9.25.1: - version "9.30.1" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.30.1.tgz#d4107b39964412acd9b5c0744f1c6df514fa1211" - integrity sha512-zmxXPNMOXmwm9E0yQLi5uqXHs7uq2UIiqEKo3Gq+3fwo1XrJ+hijAZImyF7hclW3E6oHz43Yk3RP8at6OTKflQ== + version "9.34.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.34.0.tgz#0ea1f2c1b5d1671db8f01aa6b8ce722302016f7b" + integrity sha512-RNCHRX5EwdrESy3Jc9o8ie8Bog+PeYvvSR8sDGoZxNFTvZ4dlxUB3WzQ3bQMztFrSRODGrLLj8g6OFuGY/aiQg== dependencies: "@eslint-community/eslint-utils" "^4.2.0" "@eslint-community/regexpp" "^4.12.1" "@eslint/config-array" "^0.21.0" - "@eslint/config-helpers" "^0.3.0" - "@eslint/core" "^0.14.0" + "@eslint/config-helpers" "^0.3.1" + "@eslint/core" "^0.15.2" "@eslint/eslintrc" "^3.3.1" - "@eslint/js" "9.30.1" - "@eslint/plugin-kit" "^0.3.1" + "@eslint/js" "9.34.0" + "@eslint/plugin-kit" "^0.3.5" "@humanfs/node" "^0.16.6" "@humanwhocodes/module-importer" "^1.0.1" "@humanwhocodes/retry" "^0.4.2" @@ -4653,7 +4366,7 @@ eslint@^9.25.1: espree@^10.0.1, espree@^10.4.0: version "10.4.0" - resolved "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz" + resolved "https://registry.yarnpkg.com/espree/-/espree-10.4.0.tgz#d54f4949d4629005a1fa168d937c3ff1f7e2a837" integrity sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ== dependencies: acorn "^8.15.0" @@ -4662,28 +4375,33 @@ espree@^10.0.1, espree@^10.4.0: esprima@^4.0.0: version "4.0.1" - resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== esquery@^1.5.0: version "1.6.0" - resolved "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.6.0.tgz#91419234f804d852a82dceec3e16cdc22cf9dae7" integrity sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg== dependencies: estraverse "^5.1.0" esrecurse@^4.3.0: version "4.3.0" - resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== dependencies: estraverse "^5.2.0" estraverse@^5.1.0, estraverse@^5.2.0: version "5.3.0" - resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== +estree-walker@^0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.6.1.tgz#53049143f40c6eb918b23671d1fe3219f3a1b362" + integrity sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w== + estree-walker@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac" @@ -4698,32 +4416,37 @@ estree-walker@^3.0.3: esutils@^2.0.2: version "2.0.3" - resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== etag@^1.8.1: version "1.8.1" - resolved "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== event-target-shim@^5.0.0: version "5.0.1" - resolved "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz" + resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== +eventemitter3@^4.0.4: + version "4.0.7" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" + integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== + eventemitter3@^5.0.1: version "5.0.1" - resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-5.0.1.tgz#53f5ffd0a492ac800721bb42c66b841de96423c4" integrity sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA== events@^3.3.0: version "3.3.0" - resolved "https://registry.npmjs.org/events/-/events-3.3.0.tgz" + resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== execa@^7.1.1: version "7.2.0" - resolved "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz" + resolved "https://registry.yarnpkg.com/execa/-/execa-7.2.0.tgz#657e75ba984f42a70f38928cedc87d6f2d4fe4e9" integrity sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA== dependencies: cross-spawn "^7.0.3" @@ -4738,7 +4461,7 @@ execa@^7.1.1: execa@^8.0.1: version "8.0.1" - resolved "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz" + resolved "https://registry.yarnpkg.com/execa/-/execa-8.0.1.tgz#51f6a5943b580f963c3ca9c6321796db8cc39b8c" integrity sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg== dependencies: cross-spawn "^7.0.3" @@ -4753,7 +4476,7 @@ execa@^8.0.1: expand-template@^2.0.3: version "2.0.3" - resolved "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz" + resolved "https://registry.yarnpkg.com/expand-template/-/expand-template-2.0.3.tgz#6e14b3fcee0f3a6340ecb57d2e8918692052a47c" integrity sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg== expect-type@^1.2.1: @@ -4763,12 +4486,12 @@ expect-type@^1.2.1: exponential-backoff@^3.1.1: version "3.1.2" - resolved "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.2.tgz" + resolved "https://registry.yarnpkg.com/exponential-backoff/-/exponential-backoff-3.1.2.tgz#a8f26adb96bf78e8cd8ad1037928d5e5c0679d91" integrity sha512-8QxYTVXUkuy7fIIoitQkPwGonB8F3Zj8eEO8Sqg9Zv/bkI7RJAzowee4gr81Hak/dUTpA2Z7VfQgoijjPNlUZA== express@^5.1.0: version "5.1.0" - resolved "https://registry.npmjs.org/express/-/express-5.1.0.tgz" + resolved "https://registry.yarnpkg.com/express/-/express-5.1.0.tgz#d31beaf715a0016f0d53f47d3b4d7acf28c75cc9" integrity sha512-DT9ck5YIRU+8GYzzU5kT3eHGA5iL+1Zd0EutOmTE9Dtk+Tvuzd23VBU+ec7HPNSTxXYO55gPV/hq4pSBJDjFpA== dependencies: accepts "^2.0.0" @@ -4799,14 +4522,14 @@ express@^5.1.0: type-is "^2.0.1" vary "^1.1.2" -exsolve@^1.0.1: - version "1.0.5" - resolved "https://registry.npmjs.org/exsolve/-/exsolve-1.0.5.tgz" - integrity sha512-pz5dvkYYKQ1AHVrgOzBKWeP4u4FRb3a6DNK2ucr0OoNwYIU4QWsJ+NM36LLzORT+z845MzKHHhpXiUF5nvQoJg== +exsolve@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/exsolve/-/exsolve-1.0.7.tgz#3b74e4c7ca5c5f9a19c3626ca857309fa99f9e9e" + integrity sha512-VO5fQUzZtI6C+vx4w/4BWJpg3s/5l+6pRQEHzFRM8WFi4XffSP1Z+4qi7GbjWbvRQEbdIco5mIMq+zX4rPuLrw== external-editor@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== dependencies: chardet "^0.7.0" @@ -4815,22 +4538,22 @@ external-editor@^3.1.0: fast-content-type-parse@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/fast-content-type-parse/-/fast-content-type-parse-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/fast-content-type-parse/-/fast-content-type-parse-2.0.1.tgz#c236124534ee2cb427c8d8e5ba35a4856947847b" integrity sha512-nGqtvLrj5w0naR6tDPfB4cUmYCqouzyQiz6C5y/LtcDllJdrcc6WaWW6iXyIIOErTa/XRybj28aasdn4LkVk6Q== fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" - resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== fast-fifo@^1.3.2: version "1.3.2" - resolved "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz" + resolved "https://registry.yarnpkg.com/fast-fifo/-/fast-fifo-1.3.2.tgz#286e31de96eb96d38a97899815740ba2a4f3640c" integrity sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ== fast-glob@^3.2.9, fast-glob@^3.3.2, fast-glob@^3.3.3: version "3.3.3" - resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.3.tgz#d06d585ce8dba90a16b0505c543c3ccfb3aeb818" integrity sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg== dependencies: "@nodelib/fs.stat" "^2.0.2" @@ -4841,39 +4564,34 @@ fast-glob@^3.2.9, fast-glob@^3.3.2, fast-glob@^3.3.3: fast-json-stable-stringify@^2.0.0: version "2.1.0" - resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== fast-levenshtein@^2.0.6: version "2.0.6" - resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== fast-uri@^3.0.1: - version "3.0.6" - resolved "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.6.tgz" - integrity sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw== + version "3.1.0" + resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.1.0.tgz#66eecff6c764c0df9b762e62ca7edcfb53b4edfa" + integrity sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA== fastq@^1.6.0: version "1.19.1" - resolved "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.19.1.tgz#d50eaba803c8846a883c16492821ebcd2cda55f5" integrity sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ== dependencies: reusify "^1.0.4" fd-slicer@~1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.1.0.tgz#25c7c89cb1f9077f8891bbe61d8f390eae256f1e" integrity sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g== dependencies: pend "~1.2.0" -fdir@^6.2.0, fdir@^6.4.6: - version "6.4.6" - resolved "https://registry.npmjs.org/fdir/-/fdir-6.4.6.tgz" - integrity sha512-hiFoqpyZcfNm1yc4u8oWCf9A2c4D3QjCrks3zmoVKVxpQRzmPNar1hUJcBG2RQHvEVGDN+Jm81ZheVLAQMK6+w== - -fdir@^6.4.4: +fdir@^6.2.0, fdir@^6.4.4, fdir@^6.5.0: version "6.5.0" resolved "https://registry.yarnpkg.com/fdir/-/fdir-6.5.0.tgz#ed2ab967a331ade62f18d077dae192684d50d350" integrity sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg== @@ -4885,35 +4603,35 @@ fflate@^0.8.2: figures@3.2.0: version "3.2.0" - resolved "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz" + resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== dependencies: escape-string-regexp "^1.0.5" file-entry-cache@^8.0.0: version "8.0.0" - resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-8.0.0.tgz#7787bddcf1131bffb92636c69457bbc0edd6d81f" integrity sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ== dependencies: flat-cache "^4.0.0" filelist@^1.0.4: version "1.0.4" - resolved "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz" + resolved "https://registry.yarnpkg.com/filelist/-/filelist-1.0.4.tgz#f78978a1e944775ff9e62e744424f215e58352b5" integrity sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q== dependencies: minimatch "^5.0.1" fill-range@^7.1.1: version "7.1.1" - resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== dependencies: to-regex-range "^5.0.1" finalhandler@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/finalhandler/-/finalhandler-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-2.1.0.tgz#72306373aa89d05a8242ed569ed86a1bff7c561f" integrity sha512-/t88Ty3d5JWQbWYgaOGCCYfXRwV1+be02WqYYlL6h0lEiUAMPM8o8qKGO01YIkOHzka2up08wvgYD0mDiI+q3Q== dependencies: debug "^4.4.0" @@ -4925,12 +4643,12 @@ finalhandler@^2.1.0: find-up-simple@^1.0.0: version "1.0.1" - resolved "https://registry.npmjs.org/find-up-simple/-/find-up-simple-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/find-up-simple/-/find-up-simple-1.0.1.tgz#18fb90ad49e45252c4d7fca56baade04fa3fca1e" integrity sha512-afd4O7zpqHeRyg4PfDQsXmlDe2PfdHtJt6Akt8jOWaApLOZk5JXs6VMR29lz03pRe9mpykrRCYIYxaJYcfpncQ== find-up@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== dependencies: locate-path "^6.0.0" @@ -4938,7 +4656,7 @@ find-up@^5.0.0: find-up@^6.3.0: version "6.3.0" - resolved "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-6.3.0.tgz#2abab3d3280b2dc7ac10199ef324c4e002c8c790" integrity sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw== dependencies: locate-path "^7.1.0" @@ -4946,7 +4664,7 @@ find-up@^6.3.0: first-chunk-stream@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/first-chunk-stream/-/first-chunk-stream-5.0.0.tgz#6089fd0add05b058ec0c122a21c0c1801d06d5ff" integrity sha512-WdHo4ejd2cG2Dl+sLkW79SctU7mUQDfr4s1i26ffOZRs5mgv+BRttIM9gwcq0rDbemo0KlpVPaa3LBVLqPXzcQ== fix-dts-default-cjs-exports@^1.0.0: @@ -4960,7 +4678,7 @@ fix-dts-default-cjs-exports@^1.0.0: flat-cache@^4.0.0: version "4.0.1" - resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-4.0.1.tgz#0ece39fcb14ee012f4b0410bd33dd9c1f011127c" integrity sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw== dependencies: flatted "^3.2.9" @@ -4968,17 +4686,17 @@ flat-cache@^4.0.0: flat@^5.0.2: version "5.0.2" - resolved "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz" + resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== flatted@^3.2.9, flatted@^3.3.3: version "3.3.3" - resolved "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.3.tgz#67c8fad95454a7c7abebf74bb78ee74a44023358" integrity sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg== floating-vue@^5.2.2: version "5.2.2" - resolved "https://registry.npmjs.org/floating-vue/-/floating-vue-5.2.2.tgz" + resolved "https://registry.yarnpkg.com/floating-vue/-/floating-vue-5.2.2.tgz#e263932042753f59f3e36e7c1188f3f3e272a539" integrity sha512-afW+h2CFafo+7Y9Lvw/xsqjaQlKLdJV7h1fCHfcYQ1C4SVMlu7OAekqWgu5d4SgvkBVU0pVpLlVsrSTBURFRkg== dependencies: "@floating-ui/dom" "~1.1.1" @@ -4986,7 +4704,7 @@ floating-vue@^5.2.2: fly-import@^0.4.0: version "0.4.1" - resolved "https://registry.npmjs.org/fly-import/-/fly-import-0.4.1.tgz" + resolved "https://registry.yarnpkg.com/fly-import/-/fly-import-0.4.1.tgz#33d0dfd67b973d50d4a8d941fbb9b59a64877c90" integrity sha512-9gqEx0nnQ6SF0pKKOEexVNYCTBiLb3g+a5JMLkiaBIqwM/pEZH0Le83owUA/tkRLxWNwIso+sB3E+epuOCPWlw== dependencies: "@npmcli/arborist" "^7.2.0" @@ -4994,34 +4712,34 @@ fly-import@^0.4.0: registry-auth-token "^5.0.2" registry-url "^6.0.1" -focus-trap@^7.6.4: +focus-trap@^7.6.5: version "7.6.5" - resolved "https://registry.npmjs.org/focus-trap/-/focus-trap-7.6.5.tgz" + resolved "https://registry.yarnpkg.com/focus-trap/-/focus-trap-7.6.5.tgz#56f0814286d43c1a2688e9bc4f31f17ae047fb76" integrity sha512-7Ke1jyybbbPZyZXFxEftUtxFGLMpE2n6A+z//m4CRDlj0hW+o3iYSmh8nFlYMurOiJVDmJRilUQtJr08KfIxlg== dependencies: tabbable "^6.2.0" follow-redirects@^1.15.6: - version "1.15.9" - resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz" - integrity sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ== + version "1.15.11" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.11.tgz#777d73d72a92f8ec4d2e410eb47352a56b8e8340" + integrity sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ== for-each@^0.3.3, for-each@^0.3.5: version "0.3.5" - resolved "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz" + resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.5.tgz#d650688027826920feeb0af747ee7b9421a41d47" integrity sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg== dependencies: is-callable "^1.2.7" foreground-child@^3.1.0, foreground-child@^3.1.1, foreground-child@^3.3.1: version "3.3.1" - resolved "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz" + resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.3.1.tgz#32e8e9ed1b68a3497befb9ac2b6adf92a638576f" integrity sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw== dependencies: cross-spawn "^7.0.6" signal-exit "^4.0.1" -form-data@^4.0.0: +form-data@^4.0.0, form-data@^4.0.4: version "4.0.4" resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.4.tgz#784cdcce0669a9d68e94d11ac4eea98088edd2c4" integrity sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow== @@ -5034,52 +4752,61 @@ form-data@^4.0.0: forwarded@0.2.0: version "0.2.0" - resolved "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz" + resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== fresh@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/fresh/-/fresh-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-2.0.0.tgz#8dd7df6a1b3a1b3a5cf186c05a5dd267622635a4" integrity sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A== front-matter@^4.0.2: version "4.0.2" - resolved "https://registry.npmjs.org/front-matter/-/front-matter-4.0.2.tgz" + resolved "https://registry.yarnpkg.com/front-matter/-/front-matter-4.0.2.tgz#b14e54dc745cfd7293484f3210d15ea4edd7f4d5" integrity sha512-I8ZuJ/qG92NWX8i5x1Y8qyj3vizhXS31OxjKDu3LKP+7/qBgfIKValiZIEwoVoJKUHlhWtYrktkxV1XsX+pPlg== dependencies: js-yaml "^3.13.1" fs-constants@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== -fs-extra@^10.0.0, fs-extra@^10.0.1: +fs-extra@^10.0.1: version "10.1.0" - resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== dependencies: graceful-fs "^4.2.0" jsonfile "^6.0.1" universalify "^2.0.0" +fs-extra@^11.1.1: + version "11.3.1" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.3.1.tgz#ba7a1f97a85f94c6db2e52ff69570db3671d5a74" + integrity sha512-eXvGGwZ5CL17ZSwHWd3bbgk7UUpF6IFHtP57NYYakPvHOs8GDgDe5KJI36jIJzDkJ6eJjuzRA8eBQb6SkKue0g== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + fs-minipass@^2.0.0: version "2.1.0" - resolved "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== dependencies: minipass "^3.0.0" fs-minipass@^3.0.0: version "3.0.3" - resolved "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-3.0.3.tgz#79a85981c4dc120065e96f62086bf6f9dc26cc54" integrity sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw== dependencies: minipass "^7.0.3" fs.realpath@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== fs@^0.0.1-security: @@ -5089,7 +4816,7 @@ fs@^0.0.1-security: fsevents@2.3.2: version "2.3.2" - resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== fsevents@~2.3.2, fsevents@~2.3.3: @@ -5104,7 +4831,7 @@ function-bind@^1.1.2: function.prototype.name@^1.1.6, function.prototype.name@^1.1.8: version "1.1.8" - resolved "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz" + resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.8.tgz#e68e1df7b259a5c949eeef95cdbde53edffabb78" integrity sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q== dependencies: call-bind "^1.0.8" @@ -5116,9 +4843,16 @@ function.prototype.name@^1.1.6, function.prototype.name@^1.1.8: functions-have-names@^1.2.3: version "1.2.3" - resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz" + resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== +generic-names@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/generic-names/-/generic-names-4.0.0.tgz#0bd8a2fd23fe8ea16cbd0a279acd69c06933d9a3" + integrity sha512-ySFolZQfw9FoDb3ed9d80Cm9f0+r7qj+HJkWjeD9RBfpxEVTlVhol+gvaQB/78WbwYfbnNh8nWHHBSlg072y6A== + dependencies: + loader-utils "^3.2.0" + get-caller-file@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" @@ -5126,7 +4860,7 @@ get-caller-file@^2.0.5: get-east-asian-width@^1.0.0: version "1.3.0" - resolved "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.3.0.tgz" + resolved "https://registry.yarnpkg.com/get-east-asian-width/-/get-east-asian-width-1.3.0.tgz#21b4071ee58ed04ee0db653371b55b4299875389" integrity sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ== get-func-name@^2.0.1, get-func-name@^2.0.2: @@ -5136,7 +4870,7 @@ get-func-name@^2.0.1, get-func-name@^2.0.2: get-intrinsic@^1.2.4, get-intrinsic@^1.2.5, get-intrinsic@^1.2.6, get-intrinsic@^1.2.7, get-intrinsic@^1.3.0: version "1.3.0" - resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01" integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== dependencies: call-bind-apply-helpers "^1.0.2" @@ -5152,7 +4886,7 @@ get-intrinsic@^1.2.4, get-intrinsic@^1.2.5, get-intrinsic@^1.2.6, get-intrinsic@ get-proto@^1.0.0, get-proto@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/get-proto/-/get-proto-1.0.1.tgz#150b3f2743869ef3e851ec0c49d15b1d14d00ee1" integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g== dependencies: dunder-proto "^1.0.1" @@ -5160,17 +4894,17 @@ get-proto@^1.0.0, get-proto@^1.0.1: get-stream@^6.0.1: version "6.0.1" - resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== get-stream@^8.0.1: version "8.0.1" - resolved "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-8.0.1.tgz#def9dfd71742cd7754a7761ed43749a27d02eca2" integrity sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA== get-symbol-description@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.1.0.tgz#7bdd54e0befe8ffc9f3b4e203220d9f1e881b6ee" integrity sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg== dependencies: call-bound "^1.0.3" @@ -5186,33 +4920,33 @@ get-tsconfig@^4.7.5: github-from-package@0.0.0: version "0.0.0" - resolved "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz" + resolved "https://registry.yarnpkg.com/github-from-package/-/github-from-package-0.0.0.tgz#97fb5d96bfde8973313f20e8288ef9a167fa64ce" integrity sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw== github-username@^9.0.0: version "9.0.0" - resolved "https://registry.npmjs.org/github-username/-/github-username-9.0.0.tgz" + resolved "https://registry.yarnpkg.com/github-username/-/github-username-9.0.0.tgz#0f165278e5db68eb038a732e9d54d3d3c06c4430" integrity sha512-lY7+mymwQUEhRwWTLxieKkxcZkVNnUh8iAGnl30DMB1ZtYODHkMAckZk8Jx5dLQs1YKPYM2ibnzQu02aCLFcYQ== dependencies: "@octokit/rest" "^21.1.1" glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" - resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" glob-parent@^6.0.2: version "6.0.2" - resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== dependencies: is-glob "^4.0.3" -glob@^10.2.2, glob@^10.3.10, glob@^10.3.7: +glob@^10.2.2, glob@^10.3.10: version "10.4.5" - resolved "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.4.5.tgz#f4d9f0b90ffdbab09c9d77f5f29b4262517b0956" integrity sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg== dependencies: foreground-child "^3.1.0" @@ -5222,21 +4956,9 @@ glob@^10.2.2, glob@^10.3.10, glob@^10.3.7: package-json-from-dist "^1.0.0" path-scurry "^1.11.1" -glob@^11.0.0: - version "11.0.1" - resolved "https://registry.npmjs.org/glob/-/glob-11.0.1.tgz" - integrity sha512-zrQDm8XPnYEKawJScsnM0QzobJxlT/kHOOlRTio8IH/GrmxRE5fjllkzdaHclIuNjUQTJYH2xHNIGfdpJkDJUw== - dependencies: - foreground-child "^3.1.0" - jackspeak "^4.0.1" - minimatch "^10.0.0" - minipass "^7.1.2" - package-json-from-dist "^1.0.0" - path-scurry "^2.0.0" - -glob@^11.0.3: +glob@^11.0.0, glob@^11.0.3: version "11.0.3" - resolved "https://registry.npmjs.org/glob/-/glob-11.0.3.tgz" + resolved "https://registry.yarnpkg.com/glob/-/glob-11.0.3.tgz#9d8087e6d72ddb3c4707b1d2778f80ea3eaefcd6" integrity sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA== dependencies: foreground-child "^3.3.1" @@ -5248,7 +4970,7 @@ glob@^11.0.3: glob@^7.1.4: version "7.2.3" - resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== dependencies: fs.realpath "^1.0.0" @@ -5260,7 +4982,7 @@ glob@^7.1.4: glob@^8.1.0: version "8.1.0" - resolved "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz" + resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== dependencies: fs.realpath "^1.0.0" @@ -5271,17 +4993,17 @@ glob@^8.1.0: globals@^14.0.0: version "14.0.0" - resolved "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz" + resolved "https://registry.yarnpkg.com/globals/-/globals-14.0.0.tgz#898d7413c29babcf6bafe56fcadded858ada724e" integrity sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ== -globals@^15.14.0: +globals@^15.15.0: version "15.15.0" - resolved "https://registry.npmjs.org/globals/-/globals-15.15.0.tgz" + resolved "https://registry.yarnpkg.com/globals/-/globals-15.15.0.tgz#7c4761299d41c32b075715a4ce1ede7897ff72a8" integrity sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg== globalthis@^1.0.4: version "1.0.4" - resolved "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz" + resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.4.tgz#7430ed3a975d97bfb59bcce41f5cabbafa651236" integrity sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ== dependencies: define-properties "^1.2.1" @@ -5289,7 +5011,7 @@ globalthis@^1.0.4: globby@^11.0.3: version "11.1.0" - resolved "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz" + resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== dependencies: array-union "^2.1.0" @@ -5301,7 +5023,7 @@ globby@^11.0.3: globby@^14.0.0, globby@^14.0.2, globby@^14.1.0: version "14.1.0" - resolved "https://registry.npmjs.org/globby/-/globby-14.1.0.tgz" + resolved "https://registry.yarnpkg.com/globby/-/globby-14.1.0.tgz#138b78e77cf5a8d794e327b15dce80bf1fb0a73e" integrity sha512-0Ia46fDOaT7k4og1PDW4YbodWWr3scS2vAr2lTbsplOt2WkKp0vQbkI9wKis/T5LV/dqPjO3bpS/z6GTJB82LA== dependencies: "@sindresorhus/merge-streams" "^2.1.0" @@ -5313,12 +5035,12 @@ globby@^14.0.0, globby@^14.0.2, globby@^14.1.0: gopd@^1.0.1, gopd@^1.2.0: version "1.2.0" - resolved "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz" + resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg== graceful-fs@4.2.10: version "4.2.10" - resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.6: @@ -5328,22 +5050,22 @@ graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graphemer@^1.4.0: version "1.4.0" - resolved "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz" + resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6" integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag== grouped-queue@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/grouped-queue/-/grouped-queue-2.0.0.tgz" - integrity sha512-/PiFUa7WIsl48dUeCvhIHnwNmAAzlI/eHoJl0vu3nsFA366JleY7Ff8EVTplZu5kO0MIdZjKTTnzItL61ahbnw== + version "2.1.0" + resolved "https://registry.yarnpkg.com/grouped-queue/-/grouped-queue-2.1.0.tgz#08a3063c9e4eafdd22455a2132487dbd8220debf" + integrity sha512-c5NDCWO0XiXuJAhOegMiNotkDmgORN+VNo3+YHMhWpoWG/u2+8im8byqsOe3/myI9YcC//plRdqGa2AE3Qsdjw== has-bigints@^1.0.2: version "1.1.0" - resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.1.0.tgz#28607e965ac967e03cd2a2c70a2636a1edad49fe" integrity sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg== has-flag@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== has-flag@^4.0.0: @@ -5353,26 +5075,26 @@ has-flag@^4.0.0: has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== dependencies: es-define-property "^1.0.0" has-proto@^1.2.0: version "1.2.0" - resolved "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz" + resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.2.0.tgz#5de5a6eabd95fdffd9818b43055e8065e39fe9d5" integrity sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ== dependencies: dunder-proto "^1.0.0" has-symbols@^1.0.3, has-symbols@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338" integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ== has-tostringtag@^1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== dependencies: has-symbols "^1.0.3" @@ -5386,7 +5108,7 @@ hasown@^2.0.2: hast-util-to-html@^9.0.5: version "9.0.5" - resolved "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.5.tgz" + resolved "https://registry.yarnpkg.com/hast-util-to-html/-/hast-util-to-html-9.0.5.tgz#ccc673a55bb8e85775b08ac28380f72d47167005" integrity sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw== dependencies: "@types/hast" "^3.0.0" @@ -5403,53 +5125,53 @@ hast-util-to-html@^9.0.5: hast-util-whitespace@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz#7778ed9d3c92dd9e8c5c8f648a49c21fc51cb621" integrity sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw== dependencies: "@types/hast" "^3.0.0" he@^1.2.0: version "1.2.0" - resolved "https://registry.npmjs.org/he/-/he-1.2.0.tgz" + resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== hookable@^5.5.3: version "5.5.3" - resolved "https://registry.npmjs.org/hookable/-/hookable-5.5.3.tgz" + resolved "https://registry.yarnpkg.com/hookable/-/hookable-5.5.3.tgz#6cfc358984a1ef991e2518cb9ed4a778bbd3215d" integrity sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ== hosted-git-info@^2.1.4: version "2.8.9" - resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== hosted-git-info@^4.0.2: version "4.1.0" - resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.1.0.tgz#827b82867e9ff1c8d0c4d9d53880397d2c86d224" integrity sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA== dependencies: lru-cache "^6.0.0" hosted-git-info@^7.0.0, hosted-git-info@^7.0.2: version "7.0.2" - resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-7.0.2.tgz#9b751acac097757667f30114607ef7b661ff4f17" integrity sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w== dependencies: lru-cache "^10.0.1" html-escaper@^2.0.0: version "2.0.2" - resolved "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== html-void-elements@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/html-void-elements/-/html-void-elements-3.0.0.tgz#fc9dbd84af9e747249034d4d62602def6517f1d7" integrity sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg== htmlparser2@^10.0.0: version "10.0.0" - resolved "https://registry.npmjs.org/htmlparser2/-/htmlparser2-10.0.0.tgz" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-10.0.0.tgz#77ad249037b66bf8cc99c6e286ef73b83aeb621d" integrity sha512-TwAZM+zE5Tq3lrEHvOlvwgj1XLWQCtaaibSN11Q+gGBAS7Y1uZSWwXXRe4iF6OXnaq1riyQAPFOBtYc77Mxq0g== dependencies: domelementtype "^2.3.0" @@ -5459,12 +5181,12 @@ htmlparser2@^10.0.0: http-cache-semantics@^4.1.1: version "4.2.0" - resolved "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz" + resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz#205f4db64f8562b76a4ff9235aa5279839a09dd5" integrity sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ== http-errors@2.0.0, http-errors@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== dependencies: depd "2.0.0" @@ -5475,7 +5197,7 @@ http-errors@2.0.0, http-errors@^2.0.0: http-proxy-agent@^7.0.0, http-proxy-agent@^7.0.2: version "7.0.2" - resolved "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz#9a8b1f246866c028509486585f62b8f2c18c270e" integrity sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig== dependencies: agent-base "^7.1.0" @@ -5483,7 +5205,7 @@ http-proxy-agent@^7.0.0, http-proxy-agent@^7.0.2: https-proxy-agent@^7.0.0, https-proxy-agent@^7.0.1, https-proxy-agent@^7.0.5: version "7.0.6" - resolved "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz#da8dfeac7da130b05c2ba4b59c9b6cd66611a6b9" integrity sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw== dependencies: agent-base "^7.1.2" @@ -5491,81 +5213,105 @@ https-proxy-agent@^7.0.0, https-proxy-agent@^7.0.1, https-proxy-agent@^7.0.5: human-signals@^4.3.0: version "4.3.1" - resolved "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-4.3.1.tgz#ab7f811e851fca97ffbd2c1fe9a958964de321b2" integrity sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ== human-signals@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-5.0.0.tgz#42665a284f9ae0dade3ba41ebc37eb4b852f3a28" integrity sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ== iconv-lite@0.6.3, iconv-lite@^0.6.2, iconv-lite@^0.6.3: version "0.6.3" - resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== dependencies: safer-buffer ">= 2.1.2 < 3.0.0" iconv-lite@^0.4.24: version "0.4.24" - resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== dependencies: safer-buffer ">= 2.1.2 < 3" +icss-replace-symbols@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded" + integrity sha512-chIaY3Vh2mh2Q3RGXttaDIzeiPvaVXJ+C4DAh/w3c37SKZ/U6PGMmuicR2EQQp9bKG8zLMCl7I+PtIoOOPp8Gg== + +icss-utils@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae" + integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== + ieee754@^1.1.13, ieee754@^1.2.1: version "1.2.1" - resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== ignore-walk@^6.0.4: version "6.0.5" - resolved "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.5.tgz" + resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-6.0.5.tgz#ef8d61eab7da169078723d1f82833b36e200b0dd" integrity sha512-VuuG0wCnjhnylG1ABXT3dAuIpTNDs/G8jlpmwXY03fXoXy/8ZK8/T+hMzt8L4WnrLCJgdybqgPagnF/f97cg3A== dependencies: minimatch "^9.0.0" ignore@^5.0.4, ignore@^5.2.0: version "5.3.2" - resolved "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== ignore@^7.0.0, ignore@^7.0.3: version "7.0.5" - resolved "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-7.0.5.tgz#4cb5f6cd7d4c7ab0365738c7aea888baa6d7efd9" integrity sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg== immediate@~3.0.5: version "3.0.6" - resolved "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz" + resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.0.6.tgz#9db1dbd0faf8de6fbe0f5dd5e56bb606280de69b" integrity sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ== +import-cwd@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/import-cwd/-/import-cwd-3.0.0.tgz#20845547718015126ea9b3676b7592fb8bd4cf92" + integrity sha512-4pnzH16plW+hgvRECbDWpQl3cqtvSofHWh44met7ESfZ8UZOWWddm8hEyDTqREJ9RbYHY8gi8DqmaelApoOGMg== + dependencies: + import-from "^3.0.0" + import-fresh@^3.2.1: version "3.3.1" - resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.1.tgz#9cecb56503c0ada1f2741dbbd6546e4b13b57ccf" integrity sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ== dependencies: parent-module "^1.0.0" resolve-from "^4.0.0" +import-from@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/import-from/-/import-from-3.0.0.tgz#055cfec38cd5a27d8057ca51376d7d3bf0891966" + integrity sha512-CiuXOFFSzkU5x/CR0+z7T91Iht4CXgfCxVOFRhh2Zyhg5wOpWvvDLQUsWl+gcN+QscYBjez8hDCt85O7RLDttQ== + dependencies: + resolve-from "^5.0.0" + imurmurhash@^0.1.4: version "0.1.4" - resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== indent-string@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== index-to-position@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/index-to-position/-/index-to-position-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/index-to-position/-/index-to-position-1.1.0.tgz#2e50bd54c8040bdd6d9b3d95ec2a8fedf86b4d44" integrity sha512-XPdx9Dq4t9Qk1mTMbWONJqU7boCoumEH7fRET37HX5+khDUl3J2W6PdALxhILYlIYx2amlwYcRPp28p0tSiojg== inflight@^1.0.4: version "1.0.6" - resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== dependencies: once "^1.3.0" @@ -5573,22 +5319,22 @@ inflight@^1.0.4: inherits@2, inherits@2.0.4, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3: version "2.0.4" - resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== ini@^1.3.4, ini@~1.3.0: version "1.3.8" - resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== ini@^4.1.3: version "4.1.3" - resolved "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz" + resolved "https://registry.yarnpkg.com/ini/-/ini-4.1.3.tgz#4c359675a6071a46985eb39b14e4a2c0ec98a795" integrity sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg== inquirer@^9.2.2: version "9.3.7" - resolved "https://registry.npmjs.org/inquirer/-/inquirer-9.3.7.tgz" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-9.3.7.tgz#0b562bf843812208844741c9aec9244c939b83d4" integrity sha512-LJKFHCSeIRq9hanN14IlOtPSTe3lNES7TYDTE2xxdAy1LS5rYphajK1qtwvj3YmQXvvk0U2Vbmcni8P9EIQW9w== dependencies: "@inquirer/figures" "^1.0.3" @@ -5606,29 +5352,26 @@ inquirer@^9.2.2: internal-slot@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.1.0.tgz#1eac91762947d2f7056bc838d93e13b2e9604961" integrity sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw== dependencies: es-errors "^1.3.0" hasown "^2.0.2" side-channel "^1.1.0" -ip-address@^9.0.5: - version "9.0.5" - resolved "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz" - integrity sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g== - dependencies: - jsbn "1.1.0" - sprintf-js "^1.1.3" +ip-address@^10.0.1: + version "10.0.1" + resolved "https://registry.yarnpkg.com/ip-address/-/ip-address-10.0.1.tgz#a8180b783ce7788777d796286d61bce4276818ed" + integrity sha512-NWv9YLW4PoW2B7xtzaS3NCot75m6nK7Icdv0o3lfMceJVRfSoQwqD4wEH5rLwoKJwUiZ/rfpiVBhnaF0FK4HoA== ipaddr.js@1.9.1: version "1.9.1" - resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== is-array-buffer@^3.0.4, is-array-buffer@^3.0.5: version "3.0.5" - resolved "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz" + resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.5.tgz#65742e1e687bd2cc666253068fd8707fe4d44280" integrity sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A== dependencies: call-bind "^1.0.8" @@ -5637,12 +5380,12 @@ is-array-buffer@^3.0.4, is-array-buffer@^3.0.5: is-arrayish@^0.2.1: version "0.2.1" - resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== is-async-function@^2.0.0: version "2.1.1" - resolved "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz" + resolved "https://registry.yarnpkg.com/is-async-function/-/is-async-function-2.1.1.tgz#3e69018c8e04e73b738793d020bfe884b9fd3523" integrity sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ== dependencies: async-function "^1.0.0" @@ -5653,21 +5396,21 @@ is-async-function@^2.0.0: is-bigint@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.1.0.tgz#dda7a3445df57a42583db4228682eba7c4170672" integrity sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ== dependencies: has-bigints "^1.0.2" is-binary-path@~2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== dependencies: binary-extensions "^2.0.0" is-boolean-object@^1.2.1: version "1.2.2" - resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz" + resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.2.2.tgz#7067f47709809a393c71ff5bb3e135d8a9215d9e" integrity sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A== dependencies: call-bound "^1.0.3" @@ -5675,7 +5418,7 @@ is-boolean-object@^1.2.1: is-callable@^1.2.7: version "1.2.7" - resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== is-core-module@^2.16.0: @@ -5687,7 +5430,7 @@ is-core-module@^2.16.0: is-data-view@^1.0.1, is-data-view@^1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/is-data-view/-/is-data-view-1.0.2.tgz#bae0a41b9688986c2188dda6657e56b8f9e63b8e" integrity sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw== dependencies: call-bound "^1.0.2" @@ -5696,7 +5439,7 @@ is-data-view@^1.0.1, is-data-view@^1.0.2: is-date-object@^1.0.5, is-date-object@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.1.0.tgz#ad85541996fc7aa8b2729701d27b7319f95d82f7" integrity sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg== dependencies: call-bound "^1.0.2" @@ -5704,22 +5447,22 @@ is-date-object@^1.0.5, is-date-object@^1.1.0: is-docker@^2.0.0, is-docker@^2.1.1: version "2.2.1" - resolved "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz" + resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== is-docker@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-3.0.0.tgz#90093aa3106277d8a77a5910dbae71747e15a200" integrity sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ== is-extglob@^2.1.1: version "2.1.1" - resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== is-finalizationregistry@^1.1.0: version "1.1.1" - resolved "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz#eefdcdc6c94ddd0674d9c85887bf93f944a97c90" integrity sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg== dependencies: call-bound "^1.0.3" @@ -5731,7 +5474,7 @@ is-fullwidth-code-point@^3.0.0: is-generator-function@^1.0.10: version "1.1.0" - resolved "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.1.0.tgz#bf3eeda931201394f57b5dba2800f91a238309ca" integrity sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ== dependencies: call-bound "^1.0.3" @@ -5741,51 +5484,51 @@ is-generator-function@^1.0.10: is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" - resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== dependencies: is-extglob "^2.1.1" is-inside-container@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-inside-container/-/is-inside-container-1.0.0.tgz#e81fba699662eb31dbdaf26766a61d4814717ea4" integrity sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA== dependencies: is-docker "^3.0.0" is-interactive@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-1.0.0.tgz#cea6e6ae5c870a7b0a0004070b7b587e0252912e" integrity sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w== is-interactive@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/is-interactive/-/is-interactive-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-2.0.0.tgz#40c57614593826da1100ade6059778d597f16e90" integrity sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ== is-lambda@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/is-lambda/-/is-lambda-1.0.1.tgz#3d9877899e6a53efc0160504cde15f82e6f061d5" integrity sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ== is-map@^2.0.3: version "2.0.3" - resolved "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz" + resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.3.tgz#ede96b7fe1e270b3c4465e3a465658764926d62e" integrity sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw== is-module@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591" integrity sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g== is-negative-zero@^2.0.3: version "2.0.3" - resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz" + resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.3.tgz#ced903a027aca6381b777a5743069d7376a49747" integrity sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw== is-number-object@^1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.1.1.tgz#144b21e95a1bc148205dcc2814a9134ec41b2541" integrity sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw== dependencies: call-bound "^1.0.3" @@ -5793,34 +5536,34 @@ is-number-object@^1.1.1: is-number@^7.0.0: version "7.0.0" - resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== is-plain-obj@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== is-plain-obj@^4.0.0: version "4.1.0" - resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-4.1.0.tgz#d65025edec3657ce032fd7db63c97883eaed71f0" integrity sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg== is-promise@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-4.0.0.tgz#42ff9f84206c1991d26debf520dd5c01042dd2f3" integrity sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ== is-reference@1.2.1: version "1.2.1" - resolved "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz" + resolved "https://registry.yarnpkg.com/is-reference/-/is-reference-1.2.1.tgz#8b2dac0b371f4bc994fdeaba9eb542d03002d0b7" integrity sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ== dependencies: "@types/estree" "*" is-regex@^1.2.1: version "1.2.1" - resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.2.1.tgz#76d70a3ed10ef9be48eb577887d74205bf0cad22" integrity sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g== dependencies: call-bound "^1.0.2" @@ -5830,24 +5573,24 @@ is-regex@^1.2.1: is-set@^2.0.3: version "2.0.3" - resolved "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz" + resolved "https://registry.yarnpkg.com/is-set/-/is-set-2.0.3.tgz#8ab209ea424608141372ded6e0cb200ef1d9d01d" integrity sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg== is-shared-array-buffer@^1.0.4: version "1.0.4" - resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz" + resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz#9b67844bd9b7f246ba0708c3a93e34269c774f6f" integrity sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A== dependencies: call-bound "^1.0.3" is-stream@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-3.0.0.tgz#e6bfd7aa6bef69f4f472ce9bb681e3e57b4319ac" integrity sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA== is-string@^1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.1.1.tgz#92ea3f3d5c5b6e039ca8677e5ac8d07ea773cbb9" integrity sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA== dependencies: call-bound "^1.0.3" @@ -5855,7 +5598,7 @@ is-string@^1.1.1: is-symbol@^1.0.4, is-symbol@^1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.1.1.tgz#f47761279f532e2b05a7024a7506dbbedacd0634" integrity sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w== dependencies: call-bound "^1.0.2" @@ -5864,46 +5607,46 @@ is-symbol@^1.0.4, is-symbol@^1.1.1: is-typed-array@^1.1.13, is-typed-array@^1.1.14, is-typed-array@^1.1.15: version "1.1.15" - resolved "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz" + resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.15.tgz#4bfb4a45b61cee83a5a46fba778e4e8d59c0ce0b" integrity sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ== dependencies: which-typed-array "^1.1.16" is-unicode-supported@^0.1.0: version "0.1.0" - resolved "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz" + resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== is-unicode-supported@^1.3.0: version "1.3.0" - resolved "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz" + resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz#d824984b616c292a2e198207d4a609983842f714" integrity sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ== is-unicode-supported@^2.0.0: version "2.1.0" - resolved "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-2.1.0.tgz#09f0ab0de6d3744d48d265ebb98f65d11f2a9b3a" integrity sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ== is-utf8@^0.2.1: version "0.2.1" - resolved "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz" + resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" integrity sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q== is-weakmap@^2.0.2: version "2.0.2" - resolved "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/is-weakmap/-/is-weakmap-2.0.2.tgz#bf72615d649dfe5f699079c54b83e47d1ae19cfd" integrity sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w== is-weakref@^1.0.2, is-weakref@^1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.1.1.tgz#eea430182be8d64174bd96bffbc46f21bf3f9293" integrity sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew== dependencies: call-bound "^1.0.3" is-weakset@^2.0.3: version "2.0.4" - resolved "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz" + resolved "https://registry.yarnpkg.com/is-weakset/-/is-weakset-2.0.4.tgz#c9f5deb0bc1906c6d6f1027f284ddf459249daca" integrity sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ== dependencies: call-bound "^1.0.3" @@ -5911,61 +5654,61 @@ is-weakset@^2.0.3: is-what@^4.1.8: version "4.1.16" - resolved "https://registry.npmjs.org/is-what/-/is-what-4.1.16.tgz" + resolved "https://registry.yarnpkg.com/is-what/-/is-what-4.1.16.tgz#1ad860a19da8b4895ad5495da3182ce2acdd7a6f" integrity sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A== is-wsl@^2.2.0: version "2.2.0" - resolved "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== dependencies: is-docker "^2.0.0" is-wsl@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/is-wsl/-/is-wsl-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-3.1.0.tgz#e1c657e39c10090afcbedec61720f6b924c3cbd2" integrity sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw== dependencies: is-inside-container "^1.0.0" isarray@^2.0.5: version "2.0.5" - resolved "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== isarray@~1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== isbinaryfile@5.0.3: version "5.0.3" - resolved "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-5.0.3.tgz" + resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-5.0.3.tgz#d7d9451fad89d7d3e889567f00bed6d3ea950bd3" integrity sha512-VR4gNjFaDP8csJQvzInG20JvBj8MaHYLxNOMXysxRbGM7tcsHZwCjhch3FubFtZBkuDbN55i4dUukGeIrzF+6g== isbinaryfile@^5.0.2: - version "5.0.4" - resolved "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-5.0.4.tgz" - integrity sha512-YKBKVkKhty7s8rxddb40oOkuP0NbaeXrQvLin6QMHL7Ypiy2RW9LwOVrVgZRyOrhQlayMd9t+D8yDy8MKFTSDQ== + version "5.0.6" + resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-5.0.6.tgz#01eac28867aeffaebaee7eaf21d1dd3a67d7c0c7" + integrity sha512-I+NmIfBHUl+r2wcDd6JwE9yWje/PIVY/R5/CmV8dXLZd5K+L9X2klAOwfAHNnondLXkbHyTAleQAWonpTJBTtw== isexe@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== isexe@^3.1.1: version "3.1.1" - resolved "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-3.1.1.tgz#4a407e2bd78ddfb14bea0c27c6f7072dde775f0d" integrity sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ== istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: version "3.2.2" - resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz#2d166c4b0644d43a39f04bf6c2edd1e585f31756" integrity sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg== istanbul-lib-report@^3.0.0, istanbul-lib-report@^3.0.1: version "3.0.1" - resolved "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz#908305bac9a5bd175ac6a74489eafd0fc2445a7d" integrity sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw== dependencies: istanbul-lib-coverage "^3.0.0" @@ -5973,16 +5716,16 @@ istanbul-lib-report@^3.0.0, istanbul-lib-report@^3.0.1: supports-color "^7.1.0" istanbul-reports@^3.1.6: - version "3.1.7" - resolved "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz" - integrity sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g== + version "3.2.0" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.2.0.tgz#cb4535162b5784aa623cee21a7252cf2c807ac93" + integrity sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA== dependencies: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" istextorbinary@^9.5.0: version "9.5.0" - resolved "https://registry.npmjs.org/istextorbinary/-/istextorbinary-9.5.0.tgz" + resolved "https://registry.yarnpkg.com/istextorbinary/-/istextorbinary-9.5.0.tgz#e6e13febf1c1685100ae264809a4f8f46e01dfd3" integrity sha512-5mbUj3SiZXCuRf9fT3ibzbSSEWiy63gFfksmGfdOzujPjW3k+z8WvIBxcJHBoQNlaZaiyB25deviif2+osLmLw== dependencies: binaryextensions "^6.11.0" @@ -5991,40 +5734,32 @@ istextorbinary@^9.5.0: jackspeak@^3.1.2: version "3.4.3" - resolved "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-3.4.3.tgz#8833a9d89ab4acde6188942bd1c53b6390ed5a8a" integrity sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw== dependencies: "@isaacs/cliui" "^8.0.2" optionalDependencies: "@pkgjs/parseargs" "^0.11.0" -jackspeak@^4.0.1: - version "4.1.0" - resolved "https://registry.npmjs.org/jackspeak/-/jackspeak-4.1.0.tgz" - integrity sha512-9DDdhb5j6cpeitCbvLO7n7J4IxnbM6hoF6O1g4HQ5TfhvvKN8ywDM7668ZhMHRqVmxqhps/F6syWK2KcPxYlkw== - dependencies: - "@isaacs/cliui" "^8.0.2" - jackspeak@^4.1.1: version "4.1.1" - resolved "https://registry.npmjs.org/jackspeak/-/jackspeak-4.1.1.tgz" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-4.1.1.tgz#96876030f450502047fc7e8c7fcf8ce8124e43ae" integrity sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ== dependencies: "@isaacs/cliui" "^8.0.2" jake@^10.8.5: - version "10.9.2" - resolved "https://registry.npmjs.org/jake/-/jake-10.9.2.tgz" - integrity sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA== + version "10.9.4" + resolved "https://registry.yarnpkg.com/jake/-/jake-10.9.4.tgz#d626da108c63d5cfb00ab5c25fadc7e0084af8e6" + integrity sha512-wpHYzhxiVQL+IV05BLE2Xn34zW1S223hvjtqk0+gsPrwd/8JNLXJgZZM/iPFsYc1xyphF+6M6EvdE5E9MBGkDA== dependencies: - async "^3.2.3" - chalk "^4.0.2" + async "^3.2.6" filelist "^1.0.4" - minimatch "^3.1.2" + picocolors "^1.1.1" jest-diff@^29.4.1: version "29.7.0" - resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.7.0.tgz#017934a66ebb7ecf6f205e84699be10afd70458a" integrity sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw== dependencies: chalk "^4.0.0" @@ -6034,7 +5769,7 @@ jest-diff@^29.4.1: jest-get-type@^29.6.3: version "29.6.3" - resolved "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.6.3.tgz#36f499fdcea197c1045a127319c0481723908fd1" integrity sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw== jiti@^1.21.6: @@ -6054,7 +5789,7 @@ joycon@^3.1.1: js-tokens@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== js-tokens@^9.0.1: @@ -6064,7 +5799,7 @@ js-tokens@^9.0.1: js-yaml@^3.10.0, js-yaml@^3.13.1, js-yaml@^3.14.1: version "3.14.1" - resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== dependencies: argparse "^1.0.7" @@ -6072,75 +5807,70 @@ js-yaml@^3.10.0, js-yaml@^3.13.1, js-yaml@^3.14.1: js-yaml@^4.1.0: version "4.1.0" - resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== dependencies: argparse "^2.0.1" -jsbn@1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz" - integrity sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A== - json-buffer@3.0.1: version "3.0.1" - resolved "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== json-parse-better-errors@^1.0.1: version "1.0.2" - resolved "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== json-parse-even-better-errors@^3.0.0, json-parse-even-better-errors@^3.0.2: version "3.0.2" - resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz" + resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz#b43d35e89c0f3be6b5fbbe9dc6c82467b30c28da" integrity sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ== json-schema-traverse@^0.4.1: version "0.4.1" - resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== json-schema-traverse@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== json-schema@^0.4.0: version "0.4.0" - resolved "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz" + resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5" integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA== json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== json-stringify-nice@^1.1.4: version "1.1.4" - resolved "https://registry.npmjs.org/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz" + resolved "https://registry.yarnpkg.com/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz#2c937962b80181d3f317dd39aa323e14f5a60a67" integrity sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw== json5@^2.2.2: version "2.2.3" - resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonc-parser@3.2.0: version "3.2.0" - resolved "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz" + resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.0.tgz#31ff3f4c2b9793f89c67212627c51c6394f88e76" integrity sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w== jsonc-parser@^3.2.0: version "3.3.1" - resolved "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.3.1.tgz" + resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.3.1.tgz#f2a524b4f7fd11e3d791e559977ad60b98b798b4" integrity sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ== jsonfile@^6.0.1: - version "6.1.0" - resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz" - integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== + version "6.2.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.2.0.tgz#7c265bd1b65de6977478300087c99f1c84383f62" + integrity sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg== dependencies: universalify "^2.0.0" optionalDependencies: @@ -6148,12 +5878,12 @@ jsonfile@^6.0.1: jsonparse@^1.3.1: version "1.3.1" - resolved "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz" + resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" integrity sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg== jsonwebtoken@^9.0.0: version "9.0.2" - resolved "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.2.tgz" + resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-9.0.2.tgz#65ff91f4abef1784697d40952bb1998c504caaf3" integrity sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ== dependencies: jws "^3.2.2" @@ -6169,7 +5899,7 @@ jsonwebtoken@^9.0.0: jszip@^3.10.1: version "3.10.1" - resolved "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz" + resolved "https://registry.yarnpkg.com/jszip/-/jszip-3.10.1.tgz#34aee70eb18ea1faec2f589208a157d1feb091c2" integrity sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g== dependencies: lie "~3.3.0" @@ -6179,26 +5909,26 @@ jszip@^3.10.1: just-diff-apply@^5.2.0: version "5.5.0" - resolved "https://registry.npmjs.org/just-diff-apply/-/just-diff-apply-5.5.0.tgz" + resolved "https://registry.yarnpkg.com/just-diff-apply/-/just-diff-apply-5.5.0.tgz#771c2ca9fa69f3d2b54e7c3f5c1dfcbcc47f9f0f" integrity sha512-OYTthRfSh55WOItVqwpefPtNt2VdKsq5AnAK6apdtR6yCH8pr0CmSr710J0Mf+WdQy7K/OzMy7K2MgAfdQURDw== just-diff@^6.0.0: version "6.0.2" - resolved "https://registry.npmjs.org/just-diff/-/just-diff-6.0.2.tgz" + resolved "https://registry.yarnpkg.com/just-diff/-/just-diff-6.0.2.tgz#03b65908543ac0521caf6d8eb85035f7d27ea285" integrity sha512-S59eriX5u3/QhMNq3v/gm8Kd0w8OS6Tz2FS1NG4blv+z0MuQcBRJyFWjdovM0Rad4/P4aUPFtnkNjMjyMlMSYA== jwa@^1.4.1: - version "1.4.1" - resolved "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz" - integrity sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA== + version "1.4.2" + resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.4.2.tgz#16011ac6db48de7b102777e57897901520eec7b9" + integrity sha512-eeH5JO+21J78qMvTIDdBXidBd6nG2kZjg5Ohz/1fpa28Z4CcsWUzJ1ZZyFq/3z3N17aZy+ZuBoHljASbL1WfOw== dependencies: - buffer-equal-constant-time "1.0.1" + buffer-equal-constant-time "^1.0.1" ecdsa-sig-formatter "1.0.11" safe-buffer "^5.0.1" jws@^3.2.2: version "3.2.2" - resolved "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz" + resolved "https://registry.yarnpkg.com/jws/-/jws-3.2.2.tgz#001099f3639468c9414000e99995fa52fb478304" integrity sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA== dependencies: jwa "^1.4.1" @@ -6206,7 +5936,7 @@ jws@^3.2.2: keytar@^7.7.0: version "7.9.0" - resolved "https://registry.npmjs.org/keytar/-/keytar-7.9.0.tgz" + resolved "https://registry.yarnpkg.com/keytar/-/keytar-7.9.0.tgz#4c6225708f51b50cbf77c5aae81721964c2918cb" integrity sha512-VPD8mtVtm5JNtA2AErl6Chp06JBfy7diFQ7TQQhdpWOl6MrCRB+eRbvAZUsbGQS9kiMq0coJsy0W0vHpDCkWsQ== dependencies: node-addon-api "^4.3.0" @@ -6214,36 +5944,36 @@ keytar@^7.7.0: keyv@^4.5.4: version "4.5.4" - resolved "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz" + resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== dependencies: json-buffer "3.0.1" kolorist@^1.8.0: version "1.8.0" - resolved "https://registry.npmjs.org/kolorist/-/kolorist-1.8.0.tgz" + resolved "https://registry.yarnpkg.com/kolorist/-/kolorist-1.8.0.tgz#edddbbbc7894bc13302cdf740af6374d4a04743c" integrity sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ== ky@^1.2.0: - version "1.8.1" - resolved "https://registry.npmjs.org/ky/-/ky-1.8.1.tgz" - integrity sha512-7Bp3TpsE+L+TARSnnDpk3xg8Idi8RwSLdj6CMbNWoOARIrGrbuLGusV0dYwbZOm4bB3jHNxSw8Wk/ByDqJEnDw== + version "1.9.1" + resolved "https://registry.yarnpkg.com/ky/-/ky-1.9.1.tgz#310c948a7a560a03c1a545769c7a1ffcaa25b6a3" + integrity sha512-WGzpBn57klhxsqRTEABAqF4tqTtqCuxoTIv9m6nIZtMMFTVcrHp7bRDWblzFIfqkb47+OhTztOgHn6A4xItmqg== latest-version@^9.0.0: version "9.0.0" - resolved "https://registry.npmjs.org/latest-version/-/latest-version-9.0.0.tgz" + resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-9.0.0.tgz#e91ed216e7a4badc6f73b66c65adb46c58ec6ba1" integrity sha512-7W0vV3rqv5tokqkBAFV1LbR7HPOWzXQDpDgEuib/aJ1jsZZx6x3c2mBI+TJhJzOhkGeaLbCKEHXEXLfirtG2JA== dependencies: package-json "^10.0.0" leven@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== levn@^0.4.1: version "0.4.1" - resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== dependencies: prelude-ls "^1.2.1" @@ -6251,11 +5981,16 @@ levn@^0.4.1: lie@~3.3.0: version "3.3.0" - resolved "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz" + resolved "https://registry.yarnpkg.com/lie/-/lie-3.3.0.tgz#dcf82dee545f46074daf200c7c1c5a08e0f40f6a" integrity sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ== dependencies: immediate "~3.0.5" +lilconfig@^2.0.3, lilconfig@^2.0.5: + version "2.1.0" + resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.1.0.tgz#78e23ac89ebb7e1bfbf25b18043de756548e7f52" + integrity sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ== + lilconfig@^3.0.0, lilconfig@^3.1.1, lilconfig@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-3.1.3.tgz#a1bcfd6257f9585bf5ae14ceeebb7b559025e4c4" @@ -6263,54 +5998,49 @@ lilconfig@^3.0.0, lilconfig@^3.1.1, lilconfig@^3.1.3: lines-and-columns@2.0.3: version "2.0.3" - resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz" + resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-2.0.3.tgz#b2f0badedb556b747020ab8ea7f0373e22efac1b" integrity sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w== lines-and-columns@^1.1.6: version "1.2.4" - resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz" + resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== -lines-and-columns@^2.0.3: - version "2.0.4" - resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.4.tgz" - integrity sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A== - linkify-it@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-5.0.0.tgz#9ef238bfa6dc70bd8e7f9572b52d369af569b421" integrity sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ== dependencies: uc.micro "^2.0.0" -lit-element@^4.1.0: - version "4.1.1" - resolved "https://registry.npmjs.org/lit-element/-/lit-element-4.1.1.tgz" - integrity sha512-HO9Tkkh34QkTeUmEdNYhMT8hzLid7YlMlATSi1q4q17HE5d9mrrEHJ/o8O2D0cMi182zK1F3v7x0PWFjrhXFew== +lit-element@^4.2.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/lit-element/-/lit-element-4.2.1.tgz#0a3782f36eaa545862fe07f84abcb14b2903a042" + integrity sha512-WGAWRGzirAgyphK2urmYOV72tlvnxw7YfyLDgQ+OZnM9vQQBQnumQ7jUJe6unEzwGU3ahFOjuz1iz1jjrpCPuw== dependencies: - "@lit-labs/ssr-dom-shim" "^1.2.0" - "@lit/reactive-element" "^2.0.4" - lit-html "^3.2.0" + "@lit-labs/ssr-dom-shim" "^1.4.0" + "@lit/reactive-element" "^2.1.0" + lit-html "^3.3.0" -lit-html@^3.2.0: - version "3.2.1" - resolved "https://registry.npmjs.org/lit-html/-/lit-html-3.2.1.tgz" - integrity sha512-qI/3lziaPMSKsrwlxH/xMgikhQ0EGOX2ICU73Bi/YHFvz2j/yMCIrw4+puF2IpQ4+upd3EWbvnHM9+PnJn48YA== +lit-html@^3.3.0: + version "3.3.1" + resolved "https://registry.yarnpkg.com/lit-html/-/lit-html-3.3.1.tgz#f0a7e4b9ea0a1d034eb28a4bf2d1b0a0096253e3" + integrity sha512-S9hbyDu/vs1qNrithiNyeyv64c9yqiW9l+DBgI18fL+MTvOtWoFR0FWiyq1TxaYef5wNlpEmzlXoBlZEO+WjoA== dependencies: "@types/trusted-types" "^2.0.2" lit@^3.2.0: - version "3.2.1" - resolved "https://registry.npmjs.org/lit/-/lit-3.2.1.tgz" - integrity sha512-1BBa1E/z0O9ye5fZprPtdqnc0BFzxIxTTOO/tQFmyC/hj1O3jL4TfmLBw0WEwjAokdLwpclkvGgDJwTIh0/22w== + version "3.3.1" + resolved "https://registry.yarnpkg.com/lit/-/lit-3.3.1.tgz#9dc79be626bc9a3b824de98b107dd662cabdeda6" + integrity sha512-Ksr/8L3PTapbdXJCk+EJVB78jDodUMaP54gD24W186zGRARvwrsPfS60wae/SSCTCNZVPd1chXqio1qHQmu4NA== dependencies: - "@lit/reactive-element" "^2.0.4" - lit-element "^4.1.0" - lit-html "^3.2.0" + "@lit/reactive-element" "^2.1.0" + lit-element "^4.2.0" + lit-html "^3.3.0" load-json-file@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" integrity sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw== dependencies: graceful-fs "^4.1.2" @@ -6323,6 +6053,11 @@ load-tsconfig@^0.2.3: resolved "https://registry.yarnpkg.com/load-tsconfig/-/load-tsconfig-0.2.5.tgz#453b8cd8961bfb912dea77eb6c168fe8cca3d3a1" integrity sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg== +loader-utils@^3.2.0: + version "3.3.1" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-3.3.1.tgz#735b9a19fd63648ca7adbd31c2327dfe281304e5" + integrity sha512-FMJTLMXfCLMLfJxcX9PFqX5qD88Z5MRGaZCVzfuqeZSPsyiBzs+pahDQjbIWz2QIzPZz0NX9Zy4FX3lmK6YHIg== + local-pkg@^0.5.0: version "0.5.1" resolved "https://registry.yarnpkg.com/local-pkg/-/local-pkg-0.5.1.tgz#69658638d2a95287534d4c2fff757980100dbb6d" @@ -6331,72 +6066,82 @@ local-pkg@^0.5.0: mlly "^1.7.3" pkg-types "^1.2.1" -local-pkg@^1.0.0: - version "1.1.1" - resolved "https://registry.npmjs.org/local-pkg/-/local-pkg-1.1.1.tgz" - integrity sha512-WunYko2W1NcdfAFpuLUoucsgULmgDBRkdxHxWQ7mK0cQqwPiy8E1enjuRBrhLtZkB5iScJ1XIPdhVEFK8aOLSg== +local-pkg@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/local-pkg/-/local-pkg-1.1.2.tgz#c03d208787126445303f8161619dc701afa4abb5" + integrity sha512-arhlxbFRmoQHl33a0Zkle/YWlmNwoyt6QNZEIJcqNbdrsix5Lvc4HyyI3EnwxTYlZYc32EbYrQ8SzEZ7dqgg9A== dependencies: mlly "^1.7.4" - pkg-types "^2.0.1" - quansync "^0.2.8" + pkg-types "^2.3.0" + quansync "^0.2.11" locate-path@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== dependencies: p-locate "^5.0.0" locate-path@^7.1.0, locate-path@^7.2.0: version "7.2.0" - resolved "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-7.2.0.tgz#69cb1779bd90b35ab1e771e1f2f89a202c2a8a8a" integrity sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA== dependencies: p-locate "^6.0.0" lodash-es@^4.17.21: version "4.17.21" - resolved "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz" + resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.21.tgz#43e626c46e6591b7750beb2b50117390c609e3ee" integrity sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw== +lodash.camelcase@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" + integrity sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA== + lodash.includes@^4.3.0: version "4.3.0" - resolved "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz" + resolved "https://registry.yarnpkg.com/lodash.includes/-/lodash.includes-4.3.0.tgz#60bb98a87cb923c68ca1e51325483314849f553f" integrity sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w== lodash.isboolean@^3.0.3: version "3.0.3" - resolved "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz" + resolved "https://registry.yarnpkg.com/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz#6c2e171db2a257cd96802fd43b01b20d5f5870f6" integrity sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg== lodash.isinteger@^4.0.4: version "4.0.4" - resolved "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz" + resolved "https://registry.yarnpkg.com/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz#619c0af3d03f8b04c31f5882840b77b11cd68343" integrity sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA== lodash.isnumber@^3.0.3: version "3.0.3" - resolved "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz" + resolved "https://registry.yarnpkg.com/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz#3ce76810c5928d03352301ac287317f11c0b1ffc" integrity sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw== lodash.isplainobject@^4.0.6: version "4.0.6" - resolved "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz" + resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" integrity sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA== lodash.isstring@^4.0.1: version "4.0.1" - resolved "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz" + resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" integrity sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw== +lodash.memoize@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" + integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== + lodash.merge@^4.6.2: version "4.6.2" - resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== lodash.once@^4.0.0: version "4.1.1" - resolved "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz" + resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" integrity sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg== lodash.sortby@^4.7.0: @@ -6406,17 +6151,22 @@ lodash.sortby@^4.7.0: lodash.truncate@^4.4.2: version "4.4.2" - resolved "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz" + resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" integrity sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw== +lodash.uniq@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" + integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ== + lodash@^4.17.21: version "4.17.21" - resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== log-symbols@^4.0.0, log-symbols@^4.1.0: version "4.1.0" - resolved "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503" integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg== dependencies: chalk "^4.1.0" @@ -6424,7 +6174,7 @@ log-symbols@^4.0.0, log-symbols@^4.1.0: log-symbols@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/log-symbols/-/log-symbols-6.0.0.tgz" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-6.0.0.tgz#bb95e5f05322651cac30c0feb6404f9f2a8a9439" integrity sha512-i24m8rpwhmPIS4zscNzK6MSEhk0DUWa/8iYQWxhffV8jkI4Phvs3F+quL5xvS0gdQR0FyTCMMH33Y78dDTzzIw== dependencies: chalk "^5.3.0" @@ -6432,7 +6182,7 @@ log-symbols@^6.0.0: log-symbols@^7.0.0: version "7.0.1" - resolved "https://registry.npmjs.org/log-symbols/-/log-symbols-7.0.1.tgz" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-7.0.1.tgz#f52e68037d96f589fc572ff2193dc424d48c195b" integrity sha512-ja1E3yCr9i/0hmBVaM0bfwDjnGy8I/s6PP4DFp+yP+a+mrHO4Rm7DtmnqROTUkHIkqffC84YY7AeqX6oFk0WFg== dependencies: is-unicode-supported "^2.0.0" @@ -6440,7 +6190,7 @@ log-symbols@^7.0.0: longest-streak@^3.0.0: version "3.1.0" - resolved "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/longest-streak/-/longest-streak-3.1.0.tgz#62fa67cd958742a1574af9f39866364102d90cd4" integrity sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g== loupe@^2.3.6, loupe@^2.3.7: @@ -6450,55 +6200,50 @@ loupe@^2.3.6, loupe@^2.3.7: dependencies: get-func-name "^2.0.1" -loupe@^3.1.0: +loupe@^3.1.0, loupe@^3.1.4: version "3.2.1" resolved "https://registry.yarnpkg.com/loupe/-/loupe-3.2.1.tgz#0095cf56dc5b7a9a7c08ff5b1a8796ec8ad17e76" integrity sha512-CdzqowRJCeLU72bHvWqwRBBlLcMEtIvGrlvef74kMnV2AolS9Y8xUv1I0U/MNAWMhBlKIoyuEgoJ0t/bbwHbLQ== -loupe@^3.1.4: - version "3.2.0" - resolved "https://registry.yarnpkg.com/loupe/-/loupe-3.2.0.tgz#174073ba8e0a1d0d5e43cc08626ed8a19403c344" - integrity sha512-2NCfZcT5VGVNX9mSZIxLRkEAegDGBpuQZBy13desuHeVORmBDyAET4TkJr4SjqQy3A8JDofMN6LpkK8Xcm/dlw== - lru-cache@^10.0.1, lru-cache@^10.2.0, lru-cache@^10.2.2: version "10.4.3" - resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119" integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== lru-cache@^11.0.0: - version "11.0.2" - resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.2.tgz" - integrity sha512-123qHRfJBmo2jXDbo/a5YOQrJoHF/GNQTLzQ5+IdK5pWpceK17yRc6ozlWd25FxvGKQbIUs91fDFkXmDHTKcyA== + version "11.1.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-11.1.0.tgz#afafb060607108132dbc1cf8ae661afb69486117" + integrity sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A== lru-cache@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== dependencies: yallist "^4.0.0" lz-string@^1.5.0: version "1.5.0" - resolved "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz" + resolved "https://registry.yarnpkg.com/lz-string/-/lz-string-1.5.0.tgz#c1ab50f77887b712621201ba9fd4e3a6ed099941" integrity sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ== magic-string@^0.30.17, magic-string@^0.30.3, magic-string@^0.30.5: - version "0.30.17" - resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz" - integrity sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA== + version "0.30.18" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.18.tgz#905bfbbc6aa5692703a93db26a9edcaa0007d2bb" + integrity sha512-yi8swmWbO17qHhwIBNeeZxTceJMeBvWJaId6dyvTSOwTipqeHhMhOrz6513r1sOKnpvQ7zkhlG8tPrpilwTxHQ== dependencies: - "@jridgewell/sourcemap-codec" "^1.5.0" + "@jridgewell/sourcemap-codec" "^1.5.5" make-dir@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-4.0.0.tgz#c3c2307a771277cd9638305f915c29ae741b614e" integrity sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw== dependencies: semver "^7.5.3" make-fetch-happen@^13.0.0, make-fetch-happen@^13.0.1: version "13.0.1" - resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz" + resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz#273ba2f78f45e1f3a6dca91cede87d9fa4821e36" integrity sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA== dependencies: "@npmcli/agent" "^2.0.0" @@ -6516,12 +6261,12 @@ make-fetch-happen@^13.0.0, make-fetch-happen@^13.0.1: mark.js@8.11.1: version "8.11.1" - resolved "https://registry.npmjs.org/mark.js/-/mark.js-8.11.1.tgz" + resolved "https://registry.yarnpkg.com/mark.js/-/mark.js-8.11.1.tgz#180f1f9ebef8b0e638e4166ad52db879beb2ffc5" integrity sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ== markdown-it@^14.1.0: version "14.1.0" - resolved "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.0.tgz" + resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-14.1.0.tgz#3c3c5992883c633db4714ccb4d7b5935d98b7d45" integrity sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg== dependencies: argparse "^2.0.1" @@ -6533,17 +6278,17 @@ markdown-it@^14.1.0: markdown-table@^3.0.0: version "3.0.4" - resolved "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.4.tgz" + resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-3.0.4.tgz#fe44d6d410ff9d6f2ea1797a3f60aa4d2b631c2a" integrity sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw== math-intrinsics@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9" integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g== mdast-util-find-and-replace@^3.0.0: version "3.0.2" - resolved "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.2.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.2.tgz#70a3174c894e14df722abf43bc250cbae44b11df" integrity sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg== dependencies: "@types/mdast" "^4.0.0" @@ -6553,7 +6298,7 @@ mdast-util-find-and-replace@^3.0.0: mdast-util-from-markdown@^2.0.0, mdast-util-from-markdown@^2.0.2: version "2.0.2" - resolved "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.2.tgz#4850390ca7cf17413a9b9a0fbefcd1bc0eb4160a" integrity sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA== dependencies: "@types/mdast" "^4.0.0" @@ -6571,7 +6316,7 @@ mdast-util-from-markdown@^2.0.0, mdast-util-from-markdown@^2.0.2: mdast-util-gfm-autolink-literal@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.1.tgz#abd557630337bd30a6d5a4bd8252e1c2dc0875d5" integrity sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ== dependencies: "@types/mdast" "^4.0.0" @@ -6582,7 +6327,7 @@ mdast-util-gfm-autolink-literal@^2.0.0: mdast-util-gfm-footnote@^2.0.0: version "2.1.0" - resolved "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.1.0.tgz#7778e9d9ca3df7238cc2bd3fa2b1bf6a65b19403" integrity sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ== dependencies: "@types/mdast" "^4.0.0" @@ -6593,7 +6338,7 @@ mdast-util-gfm-footnote@^2.0.0: mdast-util-gfm-strikethrough@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.0.tgz#d44ef9e8ed283ac8c1165ab0d0dfd058c2764c16" integrity sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg== dependencies: "@types/mdast" "^4.0.0" @@ -6602,7 +6347,7 @@ mdast-util-gfm-strikethrough@^2.0.0: mdast-util-gfm-table@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz#7a435fb6223a72b0862b33afbd712b6dae878d38" integrity sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg== dependencies: "@types/mdast" "^4.0.0" @@ -6613,7 +6358,7 @@ mdast-util-gfm-table@^2.0.0: mdast-util-gfm-task-list-item@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-2.0.0.tgz#e68095d2f8a4303ef24094ab642e1047b991a936" integrity sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ== dependencies: "@types/mdast" "^4.0.0" @@ -6623,7 +6368,7 @@ mdast-util-gfm-task-list-item@^2.0.0: mdast-util-gfm@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-gfm/-/mdast-util-gfm-3.1.0.tgz#2cdf63b92c2a331406b0fb0db4c077c1b0331751" integrity sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ== dependencies: mdast-util-from-markdown "^2.0.0" @@ -6636,7 +6381,7 @@ mdast-util-gfm@^3.1.0: mdast-util-phrasing@^4.0.0: version "4.1.0" - resolved "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz#7cc0a8dec30eaf04b7b1a9661a92adb3382aa6e3" integrity sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w== dependencies: "@types/mdast" "^4.0.0" @@ -6644,7 +6389,7 @@ mdast-util-phrasing@^4.0.0: mdast-util-to-hast@^13.0.0, mdast-util-to-hast@^13.2.0: version "13.2.0" - resolved "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz#5ca58e5b921cc0a3ded1bc02eed79a4fe4fe41f4" integrity sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA== dependencies: "@types/hast" "^3.0.0" @@ -6659,7 +6404,7 @@ mdast-util-to-hast@^13.0.0, mdast-util-to-hast@^13.2.0: mdast-util-to-markdown@^2.0.0: version "2.1.2" - resolved "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.2.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.2.tgz#f910ffe60897f04bb4b7e7ee434486f76288361b" integrity sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA== dependencies: "@types/mdast" "^4.0.0" @@ -6674,24 +6419,29 @@ mdast-util-to-markdown@^2.0.0: mdast-util-to-string@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz#7a5121475556a04e7eddeb67b264aae79d312814" integrity sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg== dependencies: "@types/mdast" "^4.0.0" +mdn-data@2.0.14: + version "2.0.14" + resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.14.tgz#7113fc4281917d63ce29b43446f701e68c25ba50" + integrity sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow== + mdurl@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-2.0.0.tgz#80676ec0433025dd3e17ee983d0fe8de5a2237e0" integrity sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w== media-typer@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/media-typer/-/media-typer-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-1.1.0.tgz#6ab74b8f2d3320f2064b2a87a38e7931ff3a5561" integrity sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw== mem-fs-editor@^11.0.0, mem-fs-editor@^11.0.1, mem-fs-editor@^11.1.2: version "11.1.4" - resolved "https://registry.npmjs.org/mem-fs-editor/-/mem-fs-editor-11.1.4.tgz" + resolved "https://registry.yarnpkg.com/mem-fs-editor/-/mem-fs-editor-11.1.4.tgz#ddfe705f3b0110cb96a40a3cad290ca21f0d1900" integrity sha512-Z4QX14Ev6eOVTuVSayS5rdiOua6C3gHcFw+n9Qc7WiaVTbC+H8b99c32MYGmbQN9UFHJeI/p3lf3LAxiIzwEmA== dependencies: "@types/ejs" "^3.1.4" @@ -6710,7 +6460,7 @@ mem-fs-editor@^11.0.0, mem-fs-editor@^11.0.1, mem-fs-editor@^11.1.2: mem-fs@^4.0.0: version "4.1.2" - resolved "https://registry.npmjs.org/mem-fs/-/mem-fs-4.1.2.tgz" + resolved "https://registry.yarnpkg.com/mem-fs/-/mem-fs-4.1.2.tgz#9c09d1344d88968e940b0e3366048ed8973bb78a" integrity sha512-CMwusHK+Kz0tu1qjgbd0rwcJxzgg76jlkPpqK+pDTv8Hth8JyM7JlgxNWaAFRKe969HATPTz/sp8T63QflyI+w== dependencies: "@types/node" ">=18" @@ -6720,27 +6470,27 @@ mem-fs@^4.0.0: memorystream@^0.3.1: version "0.3.1" - resolved "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz" + resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2" integrity sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw== merge-descriptors@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-2.0.0.tgz#ea922f660635a2249ee565e0449f951e6b603808" integrity sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g== merge-stream@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== merge2@^1.3.0, merge2@^1.4.1: version "1.4.1" - resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz" + resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== micromark-core-commonmark@^2.0.0: version "2.0.3" - resolved "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.3.tgz" + resolved "https://registry.yarnpkg.com/micromark-core-commonmark/-/micromark-core-commonmark-2.0.3.tgz#c691630e485021a68cf28dbc2b2ca27ebf678cd4" integrity sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg== dependencies: decode-named-character-reference "^1.0.0" @@ -6762,7 +6512,7 @@ micromark-core-commonmark@^2.0.0: micromark-factory-destination@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/micromark-factory-destination/-/micromark-factory-destination-2.0.1.tgz#8fef8e0f7081f0474fbdd92deb50c990a0264639" integrity sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA== dependencies: micromark-util-character "^2.0.0" @@ -6771,7 +6521,7 @@ micromark-factory-destination@^2.0.0: micromark-factory-label@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/micromark-factory-label/-/micromark-factory-label-2.0.1.tgz#5267efa97f1e5254efc7f20b459a38cb21058ba1" integrity sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg== dependencies: devlop "^1.0.0" @@ -6781,7 +6531,7 @@ micromark-factory-label@^2.0.0: micromark-factory-space@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/micromark-factory-space/-/micromark-factory-space-2.0.1.tgz#36d0212e962b2b3121f8525fc7a3c7c029f334fc" integrity sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg== dependencies: micromark-util-character "^2.0.0" @@ -6789,7 +6539,7 @@ micromark-factory-space@^2.0.0: micromark-factory-title@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/micromark-factory-title/-/micromark-factory-title-2.0.1.tgz#237e4aa5d58a95863f01032d9ee9b090f1de6e94" integrity sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw== dependencies: micromark-factory-space "^2.0.0" @@ -6799,7 +6549,7 @@ micromark-factory-title@^2.0.0: micromark-factory-whitespace@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.1.tgz#06b26b2983c4d27bfcc657b33e25134d4868b0b1" integrity sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ== dependencies: micromark-factory-space "^2.0.0" @@ -6809,7 +6559,7 @@ micromark-factory-whitespace@^2.0.0: micromark-util-character@^2.0.0: version "2.1.1" - resolved "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.1.tgz" + resolved "https://registry.yarnpkg.com/micromark-util-character/-/micromark-util-character-2.1.1.tgz#2f987831a40d4c510ac261e89852c4e9703ccda6" integrity sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q== dependencies: micromark-util-symbol "^2.0.0" @@ -6817,14 +6567,14 @@ micromark-util-character@^2.0.0: micromark-util-chunked@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/micromark-util-chunked/-/micromark-util-chunked-2.0.1.tgz#47fbcd93471a3fccab86cff03847fc3552db1051" integrity sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA== dependencies: micromark-util-symbol "^2.0.0" micromark-util-classify-character@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/micromark-util-classify-character/-/micromark-util-classify-character-2.0.1.tgz#d399faf9c45ca14c8b4be98b1ea481bced87b629" integrity sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q== dependencies: micromark-util-character "^2.0.0" @@ -6833,7 +6583,7 @@ micromark-util-classify-character@^2.0.0: micromark-util-combine-extensions@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.1.tgz#2a0f490ab08bff5cc2fd5eec6dd0ca04f89b30a9" integrity sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg== dependencies: micromark-util-chunked "^2.0.0" @@ -6841,14 +6591,14 @@ micromark-util-combine-extensions@^2.0.0: micromark-util-decode-numeric-character-reference@^2.0.0: version "2.0.2" - resolved "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.2.tgz#fcf15b660979388e6f118cdb6bf7d79d73d26fe5" integrity sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw== dependencies: micromark-util-symbol "^2.0.0" micromark-util-decode-string@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/micromark-util-decode-string/-/micromark-util-decode-string-2.0.1.tgz#6cb99582e5d271e84efca8e61a807994d7161eb2" integrity sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ== dependencies: decode-named-character-reference "^1.0.0" @@ -6858,31 +6608,31 @@ micromark-util-decode-string@^2.0.0: micromark-util-encode@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz#0d51d1c095551cfaac368326963cf55f15f540b8" integrity sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw== micromark-util-html-tag-name@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.1.tgz#e40403096481986b41c106627f98f72d4d10b825" integrity sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA== micromark-util-normalize-identifier@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.1.tgz#c30d77b2e832acf6526f8bf1aa47bc9c9438c16d" integrity sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q== dependencies: micromark-util-symbol "^2.0.0" micromark-util-resolve-all@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.1.tgz#e1a2d62cdd237230a2ae11839027b19381e31e8b" integrity sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg== dependencies: micromark-util-types "^2.0.0" micromark-util-sanitize-uri@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz#ab89789b818a58752b73d6b55238621b7faa8fd7" integrity sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ== dependencies: micromark-util-character "^2.0.0" @@ -6891,7 +6641,7 @@ micromark-util-sanitize-uri@^2.0.0: micromark-util-subtokenize@^2.0.0: version "2.1.0" - resolved "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/micromark-util-subtokenize/-/micromark-util-subtokenize-2.1.0.tgz#d8ade5ba0f3197a1cf6a2999fbbfe6357a1a19ee" integrity sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA== dependencies: devlop "^1.0.0" @@ -6901,17 +6651,17 @@ micromark-util-subtokenize@^2.0.0: micromark-util-symbol@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz#e5da494e8eb2b071a0d08fb34f6cefec6c0a19b8" integrity sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q== micromark-util-types@^2.0.0: version "2.0.2" - resolved "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/micromark-util-types/-/micromark-util-types-2.0.2.tgz#f00225f5f5a0ebc3254f96c36b6605c4b393908e" integrity sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA== micromark@^4.0.0: version "4.0.2" - resolved "https://registry.npmjs.org/micromark/-/micromark-4.0.2.tgz" + resolved "https://registry.yarnpkg.com/micromark/-/micromark-4.0.2.tgz#91395a3e1884a198e62116e33c9c568e39936fdb" integrity sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA== dependencies: "@types/debug" "^4.0.0" @@ -6934,7 +6684,7 @@ micromark@^4.0.0: micromatch@^4.0.5, micromatch@^4.0.8: version "4.0.8" - resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== dependencies: braces "^3.0.3" @@ -6942,103 +6692,103 @@ micromatch@^4.0.5, micromatch@^4.0.8: mime-db@1.52.0: version "1.52.0" - resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== mime-db@^1.54.0: version "1.54.0" - resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.54.0.tgz#cddb3ee4f9c64530dff640236661d42cb6a314f5" integrity sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ== mime-types@^2.1.12: version "2.1.35" - resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== dependencies: mime-db "1.52.0" mime-types@^3.0.0, mime-types@^3.0.1: version "3.0.1" - resolved "https://registry.npmjs.org/mime-types/-/mime-types-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-3.0.1.tgz#b1d94d6997a9b32fd69ebaed0db73de8acb519ce" integrity sha512-xRc4oEhT6eaBpU1XF7AjpOFD+xQmXNB5OVKwp4tqCuBpHLS/ZbBDrc07mYTDqVMg6PfxUjjNp85O6Cd2Z/5HWA== dependencies: mime-db "^1.54.0" mime@^1.3.4: version "1.6.0" - resolved "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== mimic-fn@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== mimic-fn@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-4.0.0.tgz#60a90550d5cb0b239cca65d893b1a53b29871ecc" integrity sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw== mimic-function@^5.0.0: version "5.0.1" - resolved "https://registry.npmjs.org/mimic-function/-/mimic-function-5.0.1.tgz" + resolved "https://registry.yarnpkg.com/mimic-function/-/mimic-function-5.0.1.tgz#acbe2b3349f99b9deaca7fb70e48b83e94e67076" integrity sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA== mimic-response@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9" integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ== minimatch@9.0.3: version "9.0.3" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825" integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg== dependencies: brace-expansion "^2.0.1" -minimatch@^10.0.0, minimatch@^10.0.3: +minimatch@^10.0.3: version "10.0.3" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-10.0.3.tgz" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-10.0.3.tgz#cf7a0314a16c4d9ab73a7730a0e8e3c3502d47aa" integrity sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw== dependencies: "@isaacs/brace-expansion" "^5.0.0" minimatch@^3.0.3, minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== dependencies: brace-expansion "^1.1.7" minimatch@^5.0.1, minimatch@^5.1.0, minimatch@^5.1.6: version "5.1.6" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== dependencies: brace-expansion "^2.0.1" minimatch@^9.0.0, minimatch@^9.0.3, minimatch@^9.0.4, minimatch@^9.0.5: version "9.0.5" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow== dependencies: brace-expansion "^2.0.1" minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.6, minimist@^1.2.8: version "1.2.8" - resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== minipass-collect@^2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-2.0.1.tgz#1621bc77e12258a12c60d34e2276ec5c20680863" integrity sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw== dependencies: minipass "^7.0.3" minipass-fetch@^3.0.0: version "3.0.5" - resolved "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz" + resolved "https://registry.yarnpkg.com/minipass-fetch/-/minipass-fetch-3.0.5.tgz#f0f97e40580affc4a35cc4a1349f05ae36cb1e4c" integrity sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg== dependencies: minipass "^7.0.3" @@ -7049,96 +6799,95 @@ minipass-fetch@^3.0.0: minipass-flush@^1.0.5: version "1.0.5" - resolved "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz" + resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== dependencies: minipass "^3.0.0" minipass-pipeline@^1.2.4: version "1.2.4" - resolved "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz" + resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== dependencies: minipass "^3.0.0" minipass-sized@^1.0.3: version "1.0.3" - resolved "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz" + resolved "https://registry.yarnpkg.com/minipass-sized/-/minipass-sized-1.0.3.tgz#70ee5a7c5052070afacfbc22977ea79def353b70" integrity sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g== dependencies: minipass "^3.0.0" minipass@^3.0.0: version "3.3.6" - resolved "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a" integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw== dependencies: yallist "^4.0.0" minipass@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d" integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ== "minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.0.2, minipass@^7.0.3, minipass@^7.0.4, minipass@^7.1.2: version "7.1.2" - resolved "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== minisearch@^7.1.2: version "7.1.2" - resolved "https://registry.npmjs.org/minisearch/-/minisearch-7.1.2.tgz" + resolved "https://registry.yarnpkg.com/minisearch/-/minisearch-7.1.2.tgz#296ee8d1906cc378f7e57a3a71f07e5205a75df5" integrity sha512-R1Pd9eF+MD5JYDDSPAp/q1ougKglm14uEkPMvQ/05RGmx6G9wvmLTrTI/Q5iPNJLYqNdsDQ7qTGIcNWR+FrHmA== minizlib@^2.1.1, minizlib@^2.1.2: version "2.1.2" - resolved "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== dependencies: minipass "^3.0.0" yallist "^4.0.0" minizlib@^3.0.1: - version "3.0.1" - resolved "https://registry.npmjs.org/minizlib/-/minizlib-3.0.1.tgz" - integrity sha512-umcy022ILvb5/3Djuu8LWeqUa8D68JaBzlttKeMWen48SjabqS3iY5w/vzeMzMUNhLDifyhbOwKDSznB1vvrwg== + version "3.0.2" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-3.0.2.tgz#f33d638eb279f664439aa38dc5f91607468cb574" + integrity sha512-oG62iEk+CYt5Xj2YqI5Xi9xWUeZhDI8jjQmC5oThVH5JGCTgIjr7ciJDzC7MBzYd//WvR1OTmP5Q38Q8ShQtVA== dependencies: - minipass "^7.0.4" - rimraf "^5.0.5" + minipass "^7.1.2" mitt@^3.0.1: version "3.0.1" - resolved "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/mitt/-/mitt-3.0.1.tgz#ea36cf0cc30403601ae074c8f77b7092cdab36d1" integrity sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw== mkdirp-classic@^0.5.2, mkdirp-classic@^0.5.3: version "0.5.3" - resolved "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz" + resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A== mkdirp@^1.0.3: version "1.0.4" - resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== mkdirp@^3.0.1: version "3.0.1" - resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-3.0.1.tgz#e44e4c5607fb279c168241713cc6e0fea9adcb50" integrity sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg== mlly@^1.7.3, mlly@^1.7.4: - version "1.7.4" - resolved "https://registry.npmjs.org/mlly/-/mlly-1.7.4.tgz" - integrity sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw== + version "1.8.0" + resolved "https://registry.yarnpkg.com/mlly/-/mlly-1.8.0.tgz#e074612b938af8eba1eaf43299cbc89cb72d824e" + integrity sha512-l8D9ODSRWLe2KHJSifWGwBqpTZXIXTeo8mlKjY+E2HAakaTeNpqAyBZ8GSqLzHgw4XmHmC8whvpjJNMbFZN7/g== dependencies: - acorn "^8.14.0" - pathe "^2.0.1" - pkg-types "^1.3.0" - ufo "^1.5.4" + acorn "^8.15.0" + pathe "^2.0.3" + pkg-types "^1.3.1" + ufo "^1.6.1" mocha@^10.2.0: version "10.8.2" - resolved "https://registry.npmjs.org/mocha/-/mocha-10.8.2.tgz" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-10.8.2.tgz#8d8342d016ed411b12a429eb731b825f961afb96" integrity sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg== dependencies: ansi-colors "^4.1.3" @@ -7164,7 +6913,7 @@ mocha@^10.2.0: monaco-editor@^0.52.2: version "0.52.2" - resolved "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.52.2.tgz" + resolved "https://registry.yarnpkg.com/monaco-editor/-/monaco-editor-0.52.2.tgz#53c75a6fcc6802684e99fd1b2700299857002205" integrity sha512-GEQWEZmfkOGLdd3XK8ryrfWz3AIP8YymVXiPHEdewrUq7mh0qrKrfHLNCXcbB6sTnMLnOZ3ztSiKcciFUkIJwQ== mrmime@^2.0.0: @@ -7179,12 +6928,12 @@ ms@^2.1.1, ms@^2.1.3: muggle-string@^0.4.1: version "0.4.1" - resolved "https://registry.npmjs.org/muggle-string/-/muggle-string-0.4.1.tgz" + resolved "https://registry.yarnpkg.com/muggle-string/-/muggle-string-0.4.1.tgz#3b366bd43b32f809dc20659534dd30e7c8a0d328" integrity sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ== multimatch@^7.0.0: version "7.0.0" - resolved "https://registry.npmjs.org/multimatch/-/multimatch-7.0.0.tgz" + resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-7.0.0.tgz#d0a1bf144db9106b8d19e3cb8cabec1a8986c27f" integrity sha512-SYU3HBAdF4psHEL/+jXDKHO95/m5P2RvboHT2Y0WtTttvJLP4H/2WS9WlQPFvF6C8d6SpLw8vjCnQOnVIVOSJQ== dependencies: array-differ "^4.0.0" @@ -7193,12 +6942,12 @@ multimatch@^7.0.0: mute-stream@1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-1.0.0.tgz#e31bd9fe62f0aed23520aa4324ea6671531e013e" integrity sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA== mute-stream@~0.0.4: version "0.0.8" - resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== mz@^2.7.0: @@ -7217,56 +6966,56 @@ nanoid@^3.3.11: napi-build-utils@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/napi-build-utils/-/napi-build-utils-2.0.0.tgz#13c22c0187fcfccce1461844136372a47ddc027e" integrity sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA== natural-compare@^1.4.0: version "1.4.0" - resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== negotiator@^0.6.3: version "0.6.4" - resolved "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.4.tgz#777948e2452651c570b712dd01c23e262713fff7" integrity sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w== negotiator@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-1.0.0.tgz#b6c91bb47172d69f93cfd7c357bbb529019b5f6a" integrity sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg== nice-try@^1.0.4: version "1.0.5" - resolved "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz" + resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== node-abi@^3.3.0: version "3.75.0" - resolved "https://registry.npmjs.org/node-abi/-/node-abi-3.75.0.tgz" + resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.75.0.tgz#2f929a91a90a0d02b325c43731314802357ed764" integrity sha512-OhYaY5sDsIka7H7AtijtI9jwGYLyl29eQn/W623DiN/MIv5sUqc4g7BIDThX+gb7di9f6xK02nkp8sdfFWZLTg== dependencies: semver "^7.3.5" node-addon-api@^4.3.0: version "4.3.0" - resolved "https://registry.npmjs.org/node-addon-api/-/node-addon-api-4.3.0.tgz" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-4.3.0.tgz#52a1a0b475193e0928e98e0426a0d1254782b77f" integrity sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ== node-addon-api@^5.1.0: version "5.1.0" - resolved "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-5.1.0.tgz#49da1ca055e109a23d537e9de43c09cca21eb762" integrity sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA== node-fetch@^2.6.7: version "2.7.0" - resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== dependencies: whatwg-url "^5.0.0" node-gyp@^10.0.0: version "10.3.1" - resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-10.3.1.tgz" + resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-10.3.1.tgz#1dd1a1a1c6c5c59da1a76aea06a062786b2c8a1a" integrity sha512-Pp3nFHBThHzVtNY7U6JfPjvT/DTE8+o/4xKsLQtBoU+j2HLsGlhcfzflAoUreaJbNmYnX+LlLi0qjV8kpyO6xQ== dependencies: env-paths "^2.2.0" @@ -7282,42 +7031,47 @@ node-gyp@^10.0.0: node-machine-id@1.1.12: version "1.1.12" - resolved "https://registry.npmjs.org/node-machine-id/-/node-machine-id-1.1.12.tgz" + resolved "https://registry.yarnpkg.com/node-machine-id/-/node-machine-id-1.1.12.tgz#37904eee1e59b320bb9c5d6c0a59f3b469cb6267" integrity sha512-QNABxbrPa3qEIfrE6GOJ7BYIuignnJw7iQ2YPbc3Nla1HzRJjXzZOiikfF8m7eAMfichLt3M4VgLOetqgDmgGQ== node-pre-gyp-github@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/node-pre-gyp-github/-/node-pre-gyp-github-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/node-pre-gyp-github/-/node-pre-gyp-github-2.0.0.tgz#8095f4a7bdee418df9406a774ad4719d67dc571f" integrity sha512-cTc6dRK3Sa4z+Z/1QAtAQErnaePir83ZveUz80VLK11zeYokt4cNJ6Aexoi58cSJ7xGvgZJImUeD1vIl2e7pjQ== dependencies: "@octokit/rest" "20.1.1" commander "12.0.0" -node-sarif-builder@^2.0.3: - version "2.0.3" - resolved "https://registry.npmjs.org/node-sarif-builder/-/node-sarif-builder-2.0.3.tgz" - integrity sha512-Pzr3rol8fvhG/oJjIq2NTVB0vmdNNlz22FENhhPojYRZ4/ee08CfK4YuKmuL54V9MLhI1kpzxfOJ/63LzmZzDg== +node-releases@^2.0.19: + version "2.0.19" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.19.tgz#9e445a52950951ec4d177d843af370b411caf314" + integrity sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw== + +node-sarif-builder@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/node-sarif-builder/-/node-sarif-builder-3.2.0.tgz#ba008995d8b165570c3f38300e56299a93531db1" + integrity sha512-kVIOdynrF2CRodHZeP/97Rh1syTUHBNiw17hUCIVhlhEsWlfJm19MuO56s4MdKbr22xWx6mzMnNAgXzVlIYM9Q== dependencies: - "@types/sarif" "^2.1.4" - fs-extra "^10.0.0" + "@types/sarif" "^2.1.7" + fs-extra "^11.1.1" nopt@^7.0.0, nopt@^7.2.1: version "7.2.1" - resolved "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-7.2.1.tgz#1cac0eab9b8e97c9093338446eddd40b2c8ca1e7" integrity sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w== dependencies: abbrev "^2.0.0" nopt@^8.0.0: version "8.1.0" - resolved "https://registry.npmjs.org/nopt/-/nopt-8.1.0.tgz" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-8.1.0.tgz#b11d38caf0f8643ce885818518064127f602eae3" integrity sha512-ieGu42u/Qsa4TFktmaKEwM6MQH0pOWnaB3htzh0JRtx84+Mebc0cbZYN5bC+6WTZ4+77xrL9Pn5m7CV6VIkV7A== dependencies: abbrev "^3.0.0" normalize-package-data@^2.3.2: version "2.5.0" - resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== dependencies: hosted-git-info "^2.1.4" @@ -7327,7 +7081,7 @@ normalize-package-data@^2.3.2: normalize-package-data@^6.0.0: version "6.0.2" - resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.2.tgz" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-6.0.2.tgz#a7bc22167fe24025412bcff0a9651eb768b03506" integrity sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g== dependencies: hosted-git-info "^7.0.0" @@ -7336,31 +7090,36 @@ normalize-package-data@^6.0.0: normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== +normalize-url@^6.0.1: + version "6.1.0" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" + integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== + npm-bundled@^3.0.0: version "3.0.1" - resolved "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-3.0.1.tgz#cca73e15560237696254b10170d8f86dad62da25" integrity sha512-+AvaheE/ww1JEwRHOrn4WHNzOxGtVp+adrg2AeZS/7KuxGUYFuBta98wYpfHBbJp6Tg6j1NKSEVHNcfZzJHQwQ== dependencies: npm-normalize-package-bin "^3.0.0" npm-install-checks@^6.0.0, npm-install-checks@^6.2.0: version "6.3.0" - resolved "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz" + resolved "https://registry.yarnpkg.com/npm-install-checks/-/npm-install-checks-6.3.0.tgz#046552d8920e801fa9f919cad569545d60e826fe" integrity sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw== dependencies: semver "^7.1.1" npm-normalize-package-bin@^3.0.0: version "3.0.1" - resolved "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz#25447e32a9a7de1f51362c61a559233b89947832" integrity sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ== npm-package-arg@^11.0.0, npm-package-arg@^11.0.2: version "11.0.3" - resolved "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.3.tgz" + resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-11.0.3.tgz#dae0c21199a99feca39ee4bfb074df3adac87e2d" integrity sha512-sHGJy8sOC1YraBywpzQlIKBE4pBbGbiF95U6Auspzyem956E0+FtDtsx1ZxlOJkQCZ1AFXAY/yuvtFYrOxF+Bw== dependencies: hosted-git-info "^7.0.0" @@ -7370,14 +7129,14 @@ npm-package-arg@^11.0.0, npm-package-arg@^11.0.2: npm-packlist@^8.0.0: version "8.0.2" - resolved "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.2.tgz" + resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-8.0.2.tgz#5b8d1d906d96d21c85ebbeed2cf54147477c8478" integrity sha512-shYrPFIS/JLP4oQmAwDyk5HcyysKW8/JLTEA32S0Z5TzvpaeeX2yMFfoK1fjEBnCBvVyIB/Jj/GBFdm0wsgzbA== dependencies: ignore-walk "^6.0.4" npm-pick-manifest@^9.0.0, npm-pick-manifest@^9.0.1: version "9.1.0" - resolved "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.1.0.tgz" + resolved "https://registry.yarnpkg.com/npm-pick-manifest/-/npm-pick-manifest-9.1.0.tgz#83562afde52b0b07cb6244361788d319ce7e8636" integrity sha512-nkc+3pIIhqHVQr085X9d2JzPzLyjzQS96zbruppqC9aZRm/x8xx6xhI98gHtsfELP2bE+loHq8ZaHFHhe+NauA== dependencies: npm-install-checks "^6.0.0" @@ -7387,7 +7146,7 @@ npm-pick-manifest@^9.0.0, npm-pick-manifest@^9.0.1: npm-registry-fetch@^17.0.0, npm-registry-fetch@^17.0.1: version "17.1.0" - resolved "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-17.1.0.tgz" + resolved "https://registry.yarnpkg.com/npm-registry-fetch/-/npm-registry-fetch-17.1.0.tgz#fb69e8e762d456f08bda2f5f169f7638fb92beb1" integrity sha512-5+bKQRH0J1xG1uZ1zMNvxW0VEyoNWgJpY9UDuluPFLKDfJ9u2JmmjmTJV1srBGQOROfdBMiVvnH2Zvpbm+xkVA== dependencies: "@npmcli/redact" "^2.0.0" @@ -7416,28 +7175,28 @@ npm-run-all@^4.1.5: npm-run-path@^4.0.1: version "4.0.1" - resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== dependencies: path-key "^3.0.0" npm-run-path@^5.1.0: version "5.3.0" - resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-5.3.0.tgz#e23353d0ebb9317f174e93417e4a4d82d0249e9f" integrity sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ== dependencies: path-key "^4.0.0" nth-check@^2.0.1: version "2.1.1" - resolved "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d" integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w== dependencies: boolbase "^1.0.0" nx@21.1.2: version "21.1.2" - resolved "https://registry.npmjs.org/nx/-/nx-21.1.2.tgz" + resolved "https://registry.yarnpkg.com/nx/-/nx-21.1.2.tgz#8aab3789e7758b2b3b88d958f73fc1fe198b3b80" integrity sha512-oczAEOOkQHElxCXs2g2jXDRabDRsmub/h5SAgqAUDSJ2CRnYGVVlgZX7l+o+A9kSqfONyLy5FlJ1pSWlvPuG4w== dependencies: "@napi-rs/wasm-runtime" "0.2.4" @@ -7489,7 +7248,7 @@ nx@21.1.2: object-assign@^4.0.1: version "4.1.1" - resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== object-hash@^3.0.0: @@ -7499,17 +7258,17 @@ object-hash@^3.0.0: object-inspect@^1.13.3, object-inspect@^1.13.4: version "1.13.4" - resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.4.tgz#8375265e21bc20d0fa582c22e1b13485d6e00213" integrity sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew== object-keys@^1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== object.assign@^4.1.7: version "4.1.7" - resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.7.tgz#8c14ca1a424c6a561b0bb2a22f66f5049a945d3d" integrity sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw== dependencies: call-bind "^1.0.8" @@ -7519,49 +7278,54 @@ object.assign@^4.1.7: has-symbols "^1.1.0" object-keys "^1.1.1" +ohash@^2.0.11: + version "2.0.11" + resolved "https://registry.yarnpkg.com/ohash/-/ohash-2.0.11.tgz#60b11e8cff62ca9dee88d13747a5baa145f5900b" + integrity sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ== + on-finished@^2.4.1: version "2.4.1" - resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== dependencies: ee-first "1.1.1" once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" - resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== dependencies: wrappy "1" onetime@^5.1.0: version "5.1.2" - resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== dependencies: mimic-fn "^2.1.0" onetime@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-6.0.0.tgz#7c24c18ed1fd2e9bca4bd26806a33613c77d34b4" integrity sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ== dependencies: mimic-fn "^4.0.0" onetime@^7.0.0: version "7.0.0" - resolved "https://registry.npmjs.org/onetime/-/onetime-7.0.0.tgz" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-7.0.0.tgz#9f16c92d8c9ef5120e3acd9dd9957cceecc1ab60" integrity sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ== dependencies: mimic-function "^5.0.0" oniguruma-parser@^0.12.1: version "0.12.1" - resolved "https://registry.npmjs.org/oniguruma-parser/-/oniguruma-parser-0.12.1.tgz" + resolved "https://registry.yarnpkg.com/oniguruma-parser/-/oniguruma-parser-0.12.1.tgz#82ba2208d7a2b69ee344b7efe0ae930c627dcc4a" integrity sha512-8Unqkvk1RYc6yq2WBYRj4hdnsAxVze8i7iPfQr8e4uSP3tRv0rpZcbGUDvxfQQcdwHt/e9PrMvGCsa8OqG9X3w== oniguruma-to-es@^4.3.3: version "4.3.3" - resolved "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-4.3.3.tgz" + resolved "https://registry.yarnpkg.com/oniguruma-to-es/-/oniguruma-to-es-4.3.3.tgz#50db2c1e28ec365e102c1863dfd3d1d1ad18613e" integrity sha512-rPiZhzC3wXwE59YQMRDodUwwT9FZ9nNBwQQfsd1wfdtlKEyCdRV0avrTcSZ5xlIvGRVPd/cx6ZN45ECmS39xvg== dependencies: oniguruma-parser "^0.12.1" @@ -7569,18 +7333,18 @@ oniguruma-to-es@^4.3.3: regex-recursion "^6.0.2" open@^10.1.0: - version "10.1.2" - resolved "https://registry.npmjs.org/open/-/open-10.1.2.tgz" - integrity sha512-cxN6aIDPz6rm8hbebcP7vrQNhvRcveZoJU72Y7vskh4oIm+BZwBECnx5nTmrlres1Qapvx27Qo1Auukpf8PKXw== + version "10.2.0" + resolved "https://registry.yarnpkg.com/open/-/open-10.2.0.tgz#b9d855be007620e80b6fb05fac98141fe62db73c" + integrity sha512-YgBpdJHPyQ2UE5x+hlSXcnejzAvD0b22U2OuAP+8OnlJT+PjWPxtgmGqKKc+RgTM63U9gN0YzrYc71R2WT/hTA== dependencies: default-browser "^5.2.1" define-lazy-prop "^3.0.0" is-inside-container "^1.0.0" - is-wsl "^3.1.0" + wsl-utils "^0.1.0" open@^8.4.0: version "8.4.2" - resolved "https://registry.npmjs.org/open/-/open-8.4.2.tgz" + resolved "https://registry.yarnpkg.com/open/-/open-8.4.2.tgz#5b5ffe2a8f793dcd2aad73e550cb87b59cb084f9" integrity sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ== dependencies: define-lazy-prop "^2.0.0" @@ -7589,7 +7353,7 @@ open@^8.4.0: optionator@^0.9.3: version "0.9.4" - resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.4.tgz#7ea1c1a5d91d764fb282139c88fe11e182a3a734" integrity sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g== dependencies: deep-is "^0.1.3" @@ -7601,7 +7365,7 @@ optionator@^0.9.3: ora@5.3.0: version "5.3.0" - resolved "https://registry.npmjs.org/ora/-/ora-5.3.0.tgz" + resolved "https://registry.yarnpkg.com/ora/-/ora-5.3.0.tgz#fb832899d3a1372fe71c8b2c534bbfe74961bb6f" integrity sha512-zAKMgGXUim0Jyd6CXK9lraBnD3H5yPGBPPOkC23a2BG6hsm4Zu6OQSjQuEtV0BHDf4aKHcUFvJiGRrFuW3MG8g== dependencies: bl "^4.0.3" @@ -7615,7 +7379,7 @@ ora@5.3.0: ora@^5.4.1: version "5.4.1" - resolved "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz" + resolved "https://registry.yarnpkg.com/ora/-/ora-5.4.1.tgz#1b2678426af4ac4a509008e5e4ac9e9959db9e18" integrity sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ== dependencies: bl "^4.1.0" @@ -7630,7 +7394,7 @@ ora@^5.4.1: ora@^8.1.0: version "8.2.0" - resolved "https://registry.npmjs.org/ora/-/ora-8.2.0.tgz" + resolved "https://registry.yarnpkg.com/ora/-/ora-8.2.0.tgz#8fbbb7151afe33b540dd153f171ffa8bd38e9861" integrity sha512-weP+BZ8MVNnlCm8c0Qdc1WSWq4Qn7I+9CJGm7Qali6g44e/PUzbjNqJX5NJ9ljlNMosfJvg1fKEGILklK9cwnw== dependencies: chalk "^5.3.0" @@ -7645,12 +7409,12 @@ ora@^8.1.0: os-tmpdir@~1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== own-keys@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/own-keys/-/own-keys-1.0.1.tgz#e4006910a2bf913585289676eebd6f390cf51358" integrity sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg== dependencies: get-intrinsic "^1.2.6" @@ -7671,16 +7435,21 @@ oxlint@^1.13.0: "@oxlint/win32-arm64" "1.13.0" "@oxlint/win32-x64" "1.13.0" +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== + p-limit@^3.0.2: version "3.1.0" - resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== dependencies: yocto-queue "^0.1.0" p-limit@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-4.0.0.tgz#914af6544ed32bfa54670b061cafcbd04984b644" integrity sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ== dependencies: yocto-queue "^1.0.0" @@ -7694,21 +7463,21 @@ p-limit@^5.0.0: p-locate@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== dependencies: p-limit "^3.0.2" p-locate@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-6.0.0.tgz#3da9a49d4934b901089dca3302fa65dc5a05c04f" integrity sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw== dependencies: p-limit "^4.0.0" p-map@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== dependencies: aggregate-error "^3.0.0" @@ -7718,9 +7487,17 @@ p-map@^7.0.3: resolved "https://registry.yarnpkg.com/p-map/-/p-map-7.0.3.tgz#7ac210a2d36f81ec28b736134810f7ba4418cdb6" integrity sha512-VkndIv2fIB99swvQoA65bm+fsmt6UNdGeIB0oxBs+WhAhdh08QA04JXpI7rbB9r08/nkbysKoya9rtDERYOYMA== +p-queue@^6.6.2: + version "6.6.2" + resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-6.6.2.tgz#2068a9dcf8e67dd0ec3e7a2bcb76810faa85e426" + integrity sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ== + dependencies: + eventemitter3 "^4.0.4" + p-timeout "^3.2.0" + p-queue@^7.3.0: version "7.4.1" - resolved "https://registry.npmjs.org/p-queue/-/p-queue-7.4.1.tgz" + resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-7.4.1.tgz#7f86f853048beca8272abdbb7cec1ed2afc0f265" integrity sha512-vRpMXmIkYF2/1hLBKisKeVYJZ8S2tZ0zEAmIJgdVKP2nq0nh4qCdf8bgw+ZgKrkh71AOCaqzwbJJk1WtdcF3VA== dependencies: eventemitter3 "^5.0.1" @@ -7728,25 +7505,32 @@ p-queue@^7.3.0: p-queue@^8.0.1: version "8.1.0" - resolved "https://registry.npmjs.org/p-queue/-/p-queue-8.1.0.tgz" + resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-8.1.0.tgz#d71929249868b10b16f885d8a82beeaf35d32279" integrity sha512-mxLDbbGIBEXTJL0zEx8JIylaj3xQ7Z/7eEVjcF9fJX4DBiH9oqe+oahYnlKKxm0Ci9TlWTyhSHgygxMxjIB2jw== dependencies: eventemitter3 "^5.0.1" p-timeout "^6.1.2" +p-timeout@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe" + integrity sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg== + dependencies: + p-finally "^1.0.0" + p-timeout@^5.0.2: version "5.1.0" - resolved "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz" + resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-5.1.0.tgz#b3c691cf4415138ce2d9cfe071dba11f0fee085b" integrity sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew== p-timeout@^6.1.2: version "6.1.4" - resolved "https://registry.npmjs.org/p-timeout/-/p-timeout-6.1.4.tgz" + resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-6.1.4.tgz#418e1f4dd833fa96a2e3f532547dd2abdb08dbc2" integrity sha512-MyIV3ZA/PmyBN/ud8vV9XzwTrNtR4jFrObymZYnZqMmW0zA8Z17vnT0rBgFE/TlohB+YCHqXMgZzb3Csp49vqg== p-transform@^4.1.6: version "4.1.6" - resolved "https://registry.npmjs.org/p-transform/-/p-transform-4.1.6.tgz" + resolved "https://registry.yarnpkg.com/p-transform/-/p-transform-4.1.6.tgz#7947f5c4c50ea3acb75202554d5392c4036f3de7" integrity sha512-ub9xBaRuk5FhfyzJv9y4OF8i7/3wH0gRG4C3jUp2pFcoftzkopgr6H0BJNcvbJBGsr7KmHHNWN+DCRPfPBIlAQ== dependencies: "@types/node" ">=16.18.31" @@ -7755,12 +7539,12 @@ p-transform@^4.1.6: package-json-from-dist@^1.0.0: version "1.0.1" - resolved "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505" integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw== package-json@^10.0.0: version "10.0.1" - resolved "https://registry.npmjs.org/package-json/-/package-json-10.0.1.tgz" + resolved "https://registry.yarnpkg.com/package-json/-/package-json-10.0.1.tgz#e49ee07b8de63b638e7f1b5bb353733e428fe7d7" integrity sha512-ua1L4OgXSBdsu1FPb7F3tYH0F48a6kxvod4pLUlGY9COeJAJQNX/sNH2IiEmsxw7lqYiAwrdHMjz1FctOsyDQg== dependencies: ky "^1.2.0" @@ -7770,12 +7554,12 @@ package-json@^10.0.0: package-manager-detector@^1.3.0: version "1.3.0" - resolved "https://registry.npmjs.org/package-manager-detector/-/package-manager-detector-1.3.0.tgz" + resolved "https://registry.yarnpkg.com/package-manager-detector/-/package-manager-detector-1.3.0.tgz#b42d641c448826e03c2b354272456a771ce453c0" integrity sha512-ZsEbbZORsyHuO00lY1kV3/t72yp6Ysay6Pd17ZAlNGuGwmWDLCJxFpRs0IzfXfj1o4icJOkUEioexFHzyPurSQ== pacote@^18.0.0, pacote@^18.0.6: version "18.0.6" - resolved "https://registry.npmjs.org/pacote/-/pacote-18.0.6.tgz" + resolved "https://registry.yarnpkg.com/pacote/-/pacote-18.0.6.tgz#ac28495e24f4cf802ef911d792335e378e86fac7" integrity sha512-+eK3G27SMwsB8kLIuj4h1FUhHtwiEUo21Tw8wNjmvdlpOEr613edv+8FUsTj/4F/VN5ywGE19X18N7CC2EJk6A== dependencies: "@npmcli/git" "^5.0.0" @@ -7798,12 +7582,12 @@ pacote@^18.0.0, pacote@^18.0.6: pako@~1.0.2: version "1.0.11" - resolved "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz" + resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw== parent-module@^1.0.0: version "1.0.1" - resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== dependencies: callsites "^3.0.0" @@ -7817,7 +7601,7 @@ parent-module@^2.0.0: parse-conflict-json@^3.0.0: version "3.0.1" - resolved "https://registry.npmjs.org/parse-conflict-json/-/parse-conflict-json-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/parse-conflict-json/-/parse-conflict-json-3.0.1.tgz#67dc55312781e62aa2ddb91452c7606d1969960c" integrity sha512-01TvEktc68vwbJOtWZluyWeVGWjP+bZwXtPDMQVbBKzbJ/vZBif0L69KH1+cHv1SZ6e0FKLvjyHe8mqsIqYOmw== dependencies: json-parse-even-better-errors "^3.0.0" @@ -7826,26 +7610,15 @@ parse-conflict-json@^3.0.0: parse-json@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" integrity sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw== dependencies: error-ex "^1.3.1" json-parse-better-errors "^1.0.1" -parse-json@^7.0.0: - version "7.1.1" - resolved "https://registry.npmjs.org/parse-json/-/parse-json-7.1.1.tgz" - integrity sha512-SgOTCX/EZXtZxBE5eJ97P4yGM5n37BwRU+YMsH4vNzFqJV/oWFXXCmwFlgWUM4PrakybVOueJJ6pwHqSVhTFDw== - dependencies: - "@babel/code-frame" "^7.21.4" - error-ex "^1.3.2" - json-parse-even-better-errors "^3.0.0" - lines-and-columns "^2.0.3" - type-fest "^3.8.0" - parse-json@^8.0.0: version "8.3.0" - resolved "https://registry.npmjs.org/parse-json/-/parse-json-8.3.0.tgz" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-8.3.0.tgz#88a195a2157025139a2317a4f2f9252b61304ed5" integrity sha512-ybiGyvspI+fAoRQbIPRddCcSTV9/LsJbf0e/S85VLowVGzRmokfneg2kwVW/KU5rOXrPSbF1qAKPMgNTqqROQQ== dependencies: "@babel/code-frame" "^7.26.2" @@ -7854,14 +7627,14 @@ parse-json@^8.0.0: parse-semver@^1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/parse-semver/-/parse-semver-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/parse-semver/-/parse-semver-1.1.1.tgz#9a4afd6df063dc4826f93fba4a99cf223f666cb8" integrity sha512-Eg1OuNntBMH0ojvEKSrvDSnwLmvVuUOSdylH/pSCPNMIspLlweJyIWXCE+k/5hm3cj/EBUYwmWkjhBALNP4LXQ== dependencies: semver "^5.1.0" parse5-htmlparser2-tree-adapter@^7.1.0: version "7.1.0" - resolved "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.1.0.tgz" + resolved "https://registry.yarnpkg.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.1.0.tgz#b5a806548ed893a43e24ccb42fbb78069311e81b" integrity sha512-ruw5xyKs6lrpo9x9rCZqZZnIUntICjQAd0Wsmp396Ul9lN/h+ifgVV1x1gZHi8euej6wTfpqX8j+BFQxF0NS/g== dependencies: domhandler "^5.0.3" @@ -7869,56 +7642,56 @@ parse5-htmlparser2-tree-adapter@^7.1.0: parse5-parser-stream@^7.1.2: version "7.1.2" - resolved "https://registry.npmjs.org/parse5-parser-stream/-/parse5-parser-stream-7.1.2.tgz" + resolved "https://registry.yarnpkg.com/parse5-parser-stream/-/parse5-parser-stream-7.1.2.tgz#d7c20eadc37968d272e2c02660fff92dd27e60e1" integrity sha512-JyeQc9iwFLn5TbvvqACIF/VXG6abODeB3Fwmv/TGdLk2LfbWkaySGY72at4+Ty7EkPZj854u4CrICqNk2qIbow== dependencies: parse5 "^7.0.0" parse5@^7.0.0, parse5@^7.3.0: version "7.3.0" - resolved "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.3.0.tgz#d7e224fa72399c7a175099f45fc2ad024b05ec05" integrity sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw== dependencies: entities "^6.0.0" parseurl@^1.3.3: version "1.3.3" - resolved "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz" + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== path-browserify@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd" integrity sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g== path-exists@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== path-exists@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-5.0.0.tgz#a6aad9489200b21fab31e49cf09277e5116fb9e7" integrity sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ== path-is-absolute@^1.0.0: version "1.0.1" - resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== path-key@^2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" integrity sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw== path-key@^3.0.0, path-key@^3.1.0: version "3.1.1" - resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== path-key@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-4.0.0.tgz#295588dc3aee64154f877adb9d780b81c554bf18" integrity sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ== path-parse@^1.0.7: @@ -7928,7 +7701,7 @@ path-parse@^1.0.7: path-scurry@^1.11.1: version "1.11.1" - resolved "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2" integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== dependencies: lru-cache "^10.2.0" @@ -7936,7 +7709,7 @@ path-scurry@^1.11.1: path-scurry@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-2.0.0.tgz#9f052289f23ad8bf9397a2a0425e7b8615c58580" integrity sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg== dependencies: lru-cache "^11.0.0" @@ -7944,24 +7717,24 @@ path-scurry@^2.0.0: path-to-regexp@^8.0.0: version "8.2.0" - resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.2.0.tgz" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-8.2.0.tgz#73990cc29e57a3ff2a0d914095156df5db79e8b4" integrity sha512-TdrF7fW9Rphjq4RjrW0Kp2AW0Ahwu9sRGTkS6bvDi0SCwZlEZYmcfDbEsTz8RVk0EHIS/Vd1bv3JhG+1xZuAyQ== path-type@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== dependencies: pify "^3.0.0" path-type@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== path-type@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/path-type/-/path-type-6.0.0.tgz" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-6.0.0.tgz#2f1bb6791a91ce99194caede5d6c5920ed81eb51" integrity sha512-Vj7sf++t5pBD637NSfkxpHSMfWaeig5+DKWLhcqIYx6mWQz5hdJTGDVMQiJcw1ZYkhs7AazKDGpRVji1LJCZUQ== pathe@^1.1.1: @@ -7971,7 +7744,7 @@ pathe@^1.1.1: pathe@^2.0.1, pathe@^2.0.3: version "2.0.3" - resolved "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz" + resolved "https://registry.yarnpkg.com/pathe/-/pathe-2.0.3.tgz#3ecbec55421685b70a9da872b2cff3e1cbed1716" integrity sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w== pathval@^1.1.1: @@ -7986,22 +7759,22 @@ pathval@^2.0.0: pend@~1.2.0: version "1.2.0" - resolved "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz" + resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" integrity sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg== perfect-debounce@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/perfect-debounce/-/perfect-debounce-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/perfect-debounce/-/perfect-debounce-1.0.0.tgz#9c2e8bc30b169cc984a58b7d5b28049839591d2a" integrity sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA== -picocolors@^1.0.0, picocolors@^1.1.1: +picocolors@1.1.1, picocolors@^1.0.0, picocolors@^1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: version "2.3.1" - resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== picomatch@^4.0.2, picomatch@^4.0.3: @@ -8011,7 +7784,7 @@ picomatch@^4.0.2, picomatch@^4.0.3: pidtree@^0.3.0: version "0.3.1" - resolved "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz" + resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.3.1.tgz#ef09ac2cc0533df1f3250ccf2c4d366b0d12114a" integrity sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA== pify@^2.3.0: @@ -8021,61 +7794,112 @@ pify@^2.3.0: pify@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" integrity sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg== +pify@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-5.0.0.tgz#1f5eca3f5e87ebec28cc6d54a0e4aaf00acc127f" + integrity sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA== + pirates@^4.0.1: version "4.0.7" resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.7.tgz#643b4a18c4257c8a65104b73f3049ce9a0a15e22" integrity sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA== -pkg-types@^1.2.1, pkg-types@^1.3.0: +pkg-types@^1.2.1, pkg-types@^1.3.1: version "1.3.1" - resolved "https://registry.npmjs.org/pkg-types/-/pkg-types-1.3.1.tgz" + resolved "https://registry.yarnpkg.com/pkg-types/-/pkg-types-1.3.1.tgz#bd7cc70881192777eef5326c19deb46e890917df" integrity sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ== dependencies: confbox "^0.1.8" mlly "^1.7.4" pathe "^2.0.1" -pkg-types@^2.0.1: - version "2.1.0" - resolved "https://registry.npmjs.org/pkg-types/-/pkg-types-2.1.0.tgz" - integrity sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A== +pkg-types@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/pkg-types/-/pkg-types-2.3.0.tgz#037f2c19bd5402966ff6810e32706558cb5b5726" + integrity sha512-SIqCzDRg0s9npO5XQ3tNZioRY1uK06lA41ynBC1YmFTmnY6FjUjVt6s4LoADmwoig1qqD0oK8h1p/8mlMx8Oig== dependencies: - confbox "^0.2.1" - exsolve "^1.0.1" + confbox "^0.2.2" + exsolve "^1.0.7" pathe "^2.0.3" -playwright-core@1.51.0: - version "1.51.0" - resolved "https://registry.npmjs.org/playwright-core/-/playwright-core-1.51.0.tgz" - integrity sha512-x47yPE3Zwhlil7wlNU/iktF7t2r/URR3VLbH6EknJd/04Qc/PSJ0EY3CMXipmglLG+zyRxW6HNo2EGbKLHPWMg== +playwright-core@1.55.0: + version "1.55.0" + resolved "https://registry.yarnpkg.com/playwright-core/-/playwright-core-1.55.0.tgz#ec8a9f8ef118afb3e86e0f46f1393e3bea32adf4" + integrity sha512-GvZs4vU3U5ro2nZpeiwyb0zuFaqb9sUiAJuyrWpcGouD8y9/HLgGbNRjIph7zU9D3hnPaisMl9zG9CgFi/biIg== playwright@^1.51.0: - version "1.51.0" - resolved "https://registry.npmjs.org/playwright/-/playwright-1.51.0.tgz" - integrity sha512-442pTfGM0xxfCYxuBa/Pu6B2OqxqqaYq39JS8QDMGThUvIOCd6s0ANDog3uwA0cHavVlnTQzGCN7Id2YekDSXA== + version "1.55.0" + resolved "https://registry.yarnpkg.com/playwright/-/playwright-1.55.0.tgz#7aca7ac3ffd9e083a8ad8b2514d6f9ba401cc78b" + integrity sha512-sdCWStblvV1YU909Xqx0DhOjPZE4/5lJsIS84IfN9dAZfcl/CIZ5O8l3o0j7hPMjDvqoTF8ZUcc+i/GL5erstA== dependencies: - playwright-core "1.51.0" + playwright-core "1.55.0" optionalDependencies: fsevents "2.3.2" pluralize@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/pluralize/-/pluralize-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-2.0.0.tgz#72b726aa6fac1edeee42256c7d8dc256b335677f" integrity sha512-TqNZzQCD4S42De9IfnnBvILN7HAW7riLqsCyp8lgjXeysyPlX5HhqKAcJHHHb9XskE4/a+7VGC9zzx8Ls0jOAw== pluralize@^8.0.0: version "8.0.0" - resolved "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz" + resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-8.0.0.tgz#1a6fa16a38d12a1901e0320fa017051c539ce3b1" integrity sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA== possible-typed-array-names@^1.0.0: version "1.1.0" - resolved "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz#93e3582bc0e5426586d9d07b79ee40fc841de4ae" integrity sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg== +postcss-calc@^8.2.3: + version "8.2.4" + resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-8.2.4.tgz#77b9c29bfcbe8a07ff6693dc87050828889739a5" + integrity sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q== + dependencies: + postcss-selector-parser "^6.0.9" + postcss-value-parser "^4.2.0" + +postcss-colormin@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-5.3.1.tgz#86c27c26ed6ba00d96c79e08f3ffb418d1d1988f" + integrity sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ== + dependencies: + browserslist "^4.21.4" + caniuse-api "^3.0.0" + colord "^2.9.1" + postcss-value-parser "^4.2.0" + +postcss-convert-values@^5.1.3: + version "5.1.3" + resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz#04998bb9ba6b65aa31035d669a6af342c5f9d393" + integrity sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA== + dependencies: + browserslist "^4.21.4" + postcss-value-parser "^4.2.0" + +postcss-discard-comments@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz#8df5e81d2925af2780075840c1526f0660e53696" + integrity sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ== + +postcss-discard-duplicates@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz#9eb4fe8456706a4eebd6d3b7b777d07bad03e848" + integrity sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw== + +postcss-discard-empty@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz#e57762343ff7f503fe53fca553d18d7f0c369c6c" + integrity sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A== + +postcss-discard-overridden@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz#7e8c5b53325747e9d90131bb88635282fb4a276e" + integrity sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw== + postcss-import@^15.1.0: version "15.1.0" resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-15.1.0.tgz#41c64ed8cc0e23735a9698b3249ffdbf704adc70" @@ -8101,6 +7925,14 @@ postcss-js@^4.0.1: dependencies: camelcase-css "^2.0.1" +postcss-load-config@^3.0.0: + version "3.1.4" + resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-3.1.4.tgz#1ab2571faf84bb078877e1d07905eabe9ebda855" + integrity sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg== + dependencies: + lilconfig "^2.0.5" + yaml "^1.10.2" + postcss-load-config@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-4.0.2.tgz#7159dcf626118d33e299f485d6afe4aff7c4a3e3" @@ -8116,6 +7948,98 @@ postcss-load-config@^6.0.1: dependencies: lilconfig "^3.1.1" +postcss-merge-longhand@^5.1.7: + version "5.1.7" + resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz#24a1bdf402d9ef0e70f568f39bdc0344d568fb16" + integrity sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ== + dependencies: + postcss-value-parser "^4.2.0" + stylehacks "^5.1.1" + +postcss-merge-rules@^5.1.4: + version "5.1.4" + resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz#2f26fa5cacb75b1402e213789f6766ae5e40313c" + integrity sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g== + dependencies: + browserslist "^4.21.4" + caniuse-api "^3.0.0" + cssnano-utils "^3.1.0" + postcss-selector-parser "^6.0.5" + +postcss-minify-font-values@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz#f1df0014a726083d260d3bd85d7385fb89d1f01b" + integrity sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-minify-gradients@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz#f1fe1b4f498134a5068240c2f25d46fcd236ba2c" + integrity sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw== + dependencies: + colord "^2.9.1" + cssnano-utils "^3.1.0" + postcss-value-parser "^4.2.0" + +postcss-minify-params@^5.1.4: + version "5.1.4" + resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz#c06a6c787128b3208b38c9364cfc40c8aa5d7352" + integrity sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw== + dependencies: + browserslist "^4.21.4" + cssnano-utils "^3.1.0" + postcss-value-parser "^4.2.0" + +postcss-minify-selectors@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz#d4e7e6b46147b8117ea9325a915a801d5fe656c6" + integrity sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg== + dependencies: + postcss-selector-parser "^6.0.5" + +postcss-modules-extract-imports@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz#b4497cb85a9c0c4b5aabeb759bb25e8d89f15002" + integrity sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q== + +postcss-modules-local-by-default@^4.0.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.2.0.tgz#d150f43837831dae25e4085596e84f6f5d6ec368" + integrity sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw== + dependencies: + icss-utils "^5.0.0" + postcss-selector-parser "^7.0.0" + postcss-value-parser "^4.1.0" + +postcss-modules-scope@^3.0.0: + version "3.2.1" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.2.1.tgz#1bbccddcb398f1d7a511e0a2d1d047718af4078c" + integrity sha512-m9jZstCVaqGjTAuny8MdgE88scJnCiQSlSrOWcTQgM2t32UBe+MUmFSO5t7VMSfAf/FJKImAxBav8ooCHJXCJA== + dependencies: + postcss-selector-parser "^7.0.0" + +postcss-modules-values@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c" + integrity sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ== + dependencies: + icss-utils "^5.0.0" + +postcss-modules@^4.0.0: + version "4.3.1" + resolved "https://registry.yarnpkg.com/postcss-modules/-/postcss-modules-4.3.1.tgz#517c06c09eab07d133ae0effca2c510abba18048" + integrity sha512-ItUhSUxBBdNamkT3KzIZwYNNRFKmkJrofvC2nWab3CPKhYBQ1f27XXh1PAPE27Psx58jeelPsxWB/+og+KEH0Q== + dependencies: + generic-names "^4.0.0" + icss-replace-symbols "^1.1.0" + lodash.camelcase "^4.3.0" + postcss-modules-extract-imports "^3.0.0" + postcss-modules-local-by-default "^4.0.0" + postcss-modules-scope "^3.0.0" + postcss-modules-values "^4.0.0" + string-hash "^1.1.1" + postcss-nested@^6.2.0: version "6.2.0" resolved "https://registry.yarnpkg.com/postcss-nested/-/postcss-nested-6.2.0.tgz#4c2d22ab5f20b9cb61e2c5c5915950784d068131" @@ -8123,15 +8047,124 @@ postcss-nested@^6.2.0: dependencies: postcss-selector-parser "^6.1.1" -postcss-selector-parser@^6.0.10, postcss-selector-parser@^6.1.1, postcss-selector-parser@^6.1.2: +postcss-normalize-charset@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz#9302de0b29094b52c259e9b2cf8dc0879879f0ed" + integrity sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg== + +postcss-normalize-display-values@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz#72abbae58081960e9edd7200fcf21ab8325c3da8" + integrity sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-normalize-positions@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz#ef97279d894087b59325b45c47f1e863daefbb92" + integrity sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-normalize-repeat-style@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz#e9eb96805204f4766df66fd09ed2e13545420fb2" + integrity sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-normalize-string@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz#411961169e07308c82c1f8c55f3e8a337757e228" + integrity sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-normalize-timing-functions@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz#d5614410f8f0b2388e9f240aa6011ba6f52dafbb" + integrity sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-normalize-unicode@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz#f67297fca3fea7f17e0d2caa40769afc487aa030" + integrity sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA== + dependencies: + browserslist "^4.21.4" + postcss-value-parser "^4.2.0" + +postcss-normalize-url@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz#ed9d88ca82e21abef99f743457d3729a042adcdc" + integrity sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew== + dependencies: + normalize-url "^6.0.1" + postcss-value-parser "^4.2.0" + +postcss-normalize-whitespace@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz#08a1a0d1ffa17a7cc6efe1e6c9da969cc4493cfa" + integrity sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-ordered-values@^5.1.3: + version "5.1.3" + resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz#b6fd2bd10f937b23d86bc829c69e7732ce76ea38" + integrity sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ== + dependencies: + cssnano-utils "^3.1.0" + postcss-value-parser "^4.2.0" + +postcss-reduce-initial@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz#798cd77b3e033eae7105c18c9d371d989e1382d6" + integrity sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg== + dependencies: + browserslist "^4.21.4" + caniuse-api "^3.0.0" + +postcss-reduce-transforms@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz#333b70e7758b802f3dd0ddfe98bb1ccfef96b6e9" + integrity sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-selector-parser@^6.0.10, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5, postcss-selector-parser@^6.0.9, postcss-selector-parser@^6.1.1, postcss-selector-parser@^6.1.2: version "6.1.2" - resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz#27ecb41fb0e3b6ba7a1ec84fff347f734c7929de" integrity sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg== dependencies: cssesc "^3.0.0" util-deprecate "^1.0.2" -postcss-value-parser@^4.0.0: +postcss-selector-parser@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz#4d6af97eba65d73bc4d84bcb343e865d7dd16262" + integrity sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA== + dependencies: + cssesc "^3.0.0" + util-deprecate "^1.0.2" + +postcss-svgo@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-5.1.0.tgz#0a317400ced789f233a28826e77523f15857d80d" + integrity sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA== + dependencies: + postcss-value-parser "^4.2.0" + svgo "^2.7.0" + +postcss-unique-selectors@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz#a9f273d1eacd09e9aa6088f4b0507b18b1b541b6" + integrity sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA== + dependencies: + postcss-selector-parser "^6.0.5" + +postcss-value-parser@^4.0.0, postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== @@ -8145,14 +8178,9 @@ postcss@^8.4.43, postcss@^8.4.47, postcss@^8.5.3, postcss@^8.5.6: picocolors "^1.1.1" source-map-js "^1.2.1" -preact@^10.0.0: - version "10.26.8" - resolved "https://registry.npmjs.org/preact/-/preact-10.26.8.tgz" - integrity sha512-1nMfdFjucm5hKvq0IClqZwK4FJkGXhRrQstOQ3P4vp8HxKrJEMFcY6RdBRVTdfQS/UlnX6gfbPuTvaqx/bDoeQ== - prebuild-install@^7.0.1: version "7.1.3" - resolved "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.3.tgz" + resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-7.1.3.tgz#d630abad2b147443f20a212917beae68b8092eec" integrity sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug== dependencies: detect-libc "^2.0.0" @@ -8170,7 +8198,7 @@ prebuild-install@^7.0.1: prelude-ls@^1.2.1: version "1.2.1" - resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== prettier@^3.6.2: @@ -8180,12 +8208,12 @@ prettier@^3.6.2: pretty-bytes@^6.1.1: version "6.1.1" - resolved "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-6.1.1.tgz" + resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-6.1.1.tgz#38cd6bb46f47afbf667c202cfc754bffd2016a3b" integrity sha512-mQUvGU6aUFQ+rNvTIAcZuWGRT9a6f6Yrg9bHs4ImKF+HZCEK+plBvnAZYSIQztknZF2qnzNtr6F8s0+IuptdlQ== pretty-format@^27.0.2: version "27.5.1" - resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ== dependencies: ansi-regex "^5.0.1" @@ -8194,7 +8222,7 @@ pretty-format@^27.0.2: pretty-format@^29.7.0: version "29.7.0" - resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.7.0.tgz#ca42c758310f365bfa71a0bda0a807160b776812" integrity sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ== dependencies: "@jest/schemas" "^29.6.3" @@ -8203,65 +8231,70 @@ pretty-format@^29.7.0: prismjs@^1.30.0: version "1.30.0" - resolved "https://registry.npmjs.org/prismjs/-/prismjs-1.30.0.tgz" + resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.30.0.tgz#d9709969d9d4e16403f6f348c63553b19f0975a9" integrity sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw== proc-log@^4.0.0, proc-log@^4.1.0, proc-log@^4.2.0: version "4.2.0" - resolved "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz" + resolved "https://registry.yarnpkg.com/proc-log/-/proc-log-4.2.0.tgz#b6f461e4026e75fdfe228b265e9f7a00779d7034" integrity sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA== process-nextick-args@~2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== process@^0.11.10: version "0.11.10" - resolved "https://registry.npmjs.org/process/-/process-0.11.10.tgz" + resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A== proggy@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/proggy/-/proggy-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/proggy/-/proggy-2.0.0.tgz#154bb0e41d3125b518ef6c79782455c2c47d94e1" integrity sha512-69agxLtnI8xBs9gUGqEnK26UfiexpHy+KUpBQWabiytQjnn5wFY8rklAi7GRfABIuPNnQ/ik48+LGLkYYJcy4A== promise-all-reject-late@^1.0.0: version "1.0.1" - resolved "https://registry.npmjs.org/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz#f8ebf13483e5ca91ad809ccc2fcf25f26f8643c2" integrity sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw== promise-call-limit@^3.0.1: version "3.0.2" - resolved "https://registry.npmjs.org/promise-call-limit/-/promise-call-limit-3.0.2.tgz" + resolved "https://registry.yarnpkg.com/promise-call-limit/-/promise-call-limit-3.0.2.tgz#524b7f4b97729ff70417d93d24f46f0265efa4f9" integrity sha512-mRPQO2T1QQVw11E7+UdCJu7S61eJVWknzml9sC1heAdj1jxl0fWMBypIt9ZOcLFf8FkG995ZD7RnVk7HH72fZw== promise-inflight@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" integrity sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g== promise-retry@^2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22" integrity sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g== dependencies: err-code "^2.0.2" retry "^0.12.0" +promise.series@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/promise.series/-/promise.series-0.2.0.tgz#2cc7ebe959fc3a6619c04ab4dbdc9e452d864bbd" + integrity sha512-VWQJyU2bcDTgZw8kpfBpB/ejZASlCrzwz5f2hjb/zlujOEB4oeiAhHygAWq8ubsX2GVkD4kCU5V2dwOTaCY5EQ== + property-information@^7.0.0: version "7.1.0" - resolved "https://registry.npmjs.org/property-information/-/property-information-7.1.0.tgz" + resolved "https://registry.yarnpkg.com/property-information/-/property-information-7.1.0.tgz#b622e8646e02b580205415586b40804d3e8bfd5d" integrity sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ== proto-list@~1.2.1: version "1.2.4" - resolved "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz" + resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" integrity sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA== proxy-addr@^2.0.7: version "2.0.7" - resolved "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== dependencies: forwarded "0.2.0" @@ -8269,12 +8302,12 @@ proxy-addr@^2.0.7: proxy-from-env@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== pump@^3.0.0: version "3.0.3" - resolved "https://registry.npmjs.org/pump/-/pump-3.0.3.tgz" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.3.tgz#151d979f1a29668dc0025ec589a455b53282268d" integrity sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA== dependencies: end-of-stream "^1.1.0" @@ -8282,46 +8315,46 @@ pump@^3.0.0: punycode.js@^2.3.1: version "2.3.1" - resolved "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz" + resolved "https://registry.yarnpkg.com/punycode.js/-/punycode.js-2.3.1.tgz#6b53e56ad75588234e79f4affa90972c7dd8cdb7" integrity sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA== punycode@^2.1.0: version "2.3.1" - resolved "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== qs@^6.14.0, qs@^6.9.1: version "6.14.0" - resolved "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.0.tgz#c63fa40680d2c5c941412a0e899c89af60c0a930" integrity sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w== dependencies: side-channel "^1.1.0" -quansync@^0.2.8: - version "0.2.10" - resolved "https://registry.npmjs.org/quansync/-/quansync-0.2.10.tgz" - integrity sha512-t41VRkMYbkHyCYmOvx/6URnN80H7k4X0lLdBMGsz+maAwrJQYB1djpV6vHrQIBE0WBSGqhtEHrK9U3DWWH8v7A== +quansync@^0.2.11: + version "0.2.11" + resolved "https://registry.yarnpkg.com/quansync/-/quansync-0.2.11.tgz#f9c3adda2e1272e4f8cf3f1457b04cbdb4ee692a" + integrity sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA== queue-microtask@^1.2.2: version "1.2.3" - resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz" + resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== randombytes@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== dependencies: safe-buffer "^5.1.0" range-parser@^1.2.1: version "1.2.1" - resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== raw-body@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/raw-body/-/raw-body-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-3.0.0.tgz#25b3476f07a51600619dae3fe82ddc28a36e5e0f" integrity sha512-RmkhL8CAyCRPXCE28MMH0z2PNWQBNk2Q09ZdxM9IOOXwxwZbN+qbWaatPkdkWIKL2ZVDImrN/pK5HTRz2PcS4g== dependencies: bytes "3.1.2" @@ -8331,7 +8364,7 @@ raw-body@^3.0.0: rc-config-loader@^4.1.3: version "4.1.3" - resolved "https://registry.npmjs.org/rc-config-loader/-/rc-config-loader-4.1.3.tgz" + resolved "https://registry.yarnpkg.com/rc-config-loader/-/rc-config-loader-4.1.3.tgz#1352986b8a2d8d96d6fd054a5bb19a60c576876a" integrity sha512-kD7FqML7l800i6pS6pvLyIE2ncbk9Du8Q0gp/4hMPhJU6ZxApkoLcGD8ZeqgiAlfwZ6BlETq6qqe+12DUL207w== dependencies: debug "^4.3.4" @@ -8341,7 +8374,7 @@ rc-config-loader@^4.1.3: rc@1.2.8, rc@^1.2.7: version "1.2.8" - resolved "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== dependencies: deep-extend "^0.6.0" @@ -8351,7 +8384,7 @@ rc@1.2.8, rc@^1.2.7: react-is@^17.0.1: version "17.0.2" - resolved "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== react-is@^18.0.0: @@ -8368,12 +8401,12 @@ read-cache@^1.0.0: read-cmd-shim@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/read-cmd-shim/-/read-cmd-shim-4.0.0.tgz#640a08b473a49043e394ae0c7a34dd822c73b9bb" integrity sha512-yILWifhaSEEytfXI76kB9xEEiG1AiozaCJZ83A87ytjRiN+jVibXjedjCRNjoZviinhG+4UkalO3mWTd8u5O0Q== read-package-json-fast@^3.0.0, read-package-json-fast@^3.0.2: version "3.0.2" - resolved "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz" + resolved "https://registry.yarnpkg.com/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz#394908a9725dc7a5f14e70c8e7556dff1d2b1049" integrity sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw== dependencies: json-parse-even-better-errors "^3.0.0" @@ -8381,7 +8414,7 @@ read-package-json-fast@^3.0.0, read-package-json-fast@^3.0.2: read-package-up@^11.0.0: version "11.0.0" - resolved "https://registry.npmjs.org/read-package-up/-/read-package-up-11.0.0.tgz" + resolved "https://registry.yarnpkg.com/read-package-up/-/read-package-up-11.0.0.tgz#71fb879fdaac0e16891e6e666df22de24a48d5ba" integrity sha512-MbgfoNPANMdb4oRBNg5eqLbB2t2r+o5Ua1pNt8BqGp4I0FJZhuVSOj3PaBPni4azWuSzEdNn2evevzVmEk1ohQ== dependencies: find-up-simple "^1.0.0" @@ -8390,26 +8423,16 @@ read-package-up@^11.0.0: read-pkg@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" integrity sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA== dependencies: load-json-file "^4.0.0" normalize-package-data "^2.3.2" path-type "^3.0.0" -read-pkg@^8.1.0: - version "8.1.0" - resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-8.1.0.tgz" - integrity sha512-PORM8AgzXeskHO/WEv312k9U03B8K9JSiWF/8N9sUuFjBa+9SF2u6K7VClzXwDXab51jCd8Nd36CNM+zR97ScQ== - dependencies: - "@types/normalize-package-data" "^2.4.1" - normalize-package-data "^6.0.0" - parse-json "^7.0.0" - type-fest "^4.2.0" - -read-pkg@^9.0.0: +read-pkg@^9.0.0, read-pkg@^9.0.1: version "9.0.1" - resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-9.0.1.tgz" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-9.0.1.tgz#b1b81fb15104f5dbb121b6bbdee9bbc9739f569b" integrity sha512-9viLL4/n1BJUCT1NXVTdS1jtm80yDEgR5T4yCelII49Mbj0v1rZdKqj7zCiYdbB0CuCgdrvHcNogAKTFPBocFA== dependencies: "@types/normalize-package-data" "^2.4.3" @@ -8420,14 +8443,14 @@ read-pkg@^9.0.0: read@^1.0.7: version "1.0.7" - resolved "https://registry.npmjs.org/read/-/read-1.0.7.tgz" + resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4" integrity sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ== dependencies: mute-stream "~0.0.4" readable-stream@^3.1.1, readable-stream@^3.4.0: version "3.6.2" - resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== dependencies: inherits "^2.0.3" @@ -8436,7 +8459,7 @@ readable-stream@^3.1.1, readable-stream@^3.4.0: readable-stream@^4.3.0: version "4.7.0" - resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-4.7.0.tgz" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-4.7.0.tgz#cedbd8a1146c13dfff8dab14068028d58c15ac91" integrity sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg== dependencies: abort-controller "^3.0.0" @@ -8447,7 +8470,7 @@ readable-stream@^4.3.0: readable-stream@~2.3.6: version "2.3.8" - resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== dependencies: core-util-is "~1.0.0" @@ -8465,14 +8488,14 @@ readdirp@^4.0.1: readdirp@~3.6.0: version "3.6.0" - resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== dependencies: picomatch "^2.2.1" reflect.getprototypeof@^1.0.6, reflect.getprototypeof@^1.0.9: version "1.0.10" - resolved "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz" + resolved "https://registry.yarnpkg.com/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz#c629219e78a3316d8b604c765ef68996964e7bf9" integrity sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw== dependencies: call-bind "^1.0.8" @@ -8484,33 +8507,28 @@ reflect.getprototypeof@^1.0.6, reflect.getprototypeof@^1.0.9: get-proto "^1.0.1" which-builtin-type "^1.2.1" -regenerator-runtime@^0.14.0: - version "0.14.1" - resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz" - integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw== - regex-recursion@^6.0.2: version "6.0.2" - resolved "https://registry.npmjs.org/regex-recursion/-/regex-recursion-6.0.2.tgz" + resolved "https://registry.yarnpkg.com/regex-recursion/-/regex-recursion-6.0.2.tgz#a0b1977a74c87f073377b938dbedfab2ea582b33" integrity sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg== dependencies: regex-utilities "^2.3.0" regex-utilities@^2.3.0: version "2.3.0" - resolved "https://registry.npmjs.org/regex-utilities/-/regex-utilities-2.3.0.tgz" + resolved "https://registry.yarnpkg.com/regex-utilities/-/regex-utilities-2.3.0.tgz#87163512a15dce2908cf079c8960d5158ff43280" integrity sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng== regex@^6.0.1: version "6.0.1" - resolved "https://registry.npmjs.org/regex/-/regex-6.0.1.tgz" + resolved "https://registry.yarnpkg.com/regex/-/regex-6.0.1.tgz#282fa4435d0c700b09c0eb0982b602e05ab6a34f" integrity sha512-uorlqlzAKjKQZ5P+kTJr3eeJGSVroLKoHmquUj4zHWuR+hEyNqlXsSKlYYF5F4NI6nl7tWCs0apKJ0lmfsXAPA== dependencies: regex-utilities "^2.3.0" regexp.prototype.flags@^1.5.4: version "1.5.4" - resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz#1ad6c62d44a259007e55b3970e00f746efbcaa19" integrity sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA== dependencies: call-bind "^1.0.8" @@ -8522,26 +8540,26 @@ regexp.prototype.flags@^1.5.4: registry-auth-token@^5.0.2: version "5.1.0" - resolved "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-5.1.0.tgz" + resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-5.1.0.tgz#3c659047ecd4caebd25bc1570a3aa979ae490eca" integrity sha512-GdekYuwLXLxMuFTwAPg5UKGLW/UXzQrZvH/Zj791BQif5T05T0RsaLfHc9q3ZOKi7n+BoprPD9mJ0O0k4xzUlw== dependencies: "@pnpm/npm-conf" "^2.1.0" registry-url@^6.0.1: version "6.0.1" - resolved "https://registry.npmjs.org/registry-url/-/registry-url-6.0.1.tgz" + resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-6.0.1.tgz#056d9343680f2f64400032b1e199faa692286c58" integrity sha512-+crtS5QjFRqFCoQmvGduwYWEBng99ZvmFvF+cUJkGYF1L1BfU8C6Zp9T7f5vPAwyLkUExpvK+ANVZmGU49qi4Q== dependencies: rc "1.2.8" remove-trailing-separator@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" integrity sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw== replace-ext@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-2.0.0.tgz#9471c213d22e1bcc26717cd6e50881d88f812b06" integrity sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug== require-directory@^2.1.1: @@ -8551,17 +8569,17 @@ require-directory@^2.1.1: require-from-string@^2.0.2: version "2.0.2" - resolved "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== resolve-from@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== resolve-from@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== resolve-pkg-maps@^1.0.0: @@ -8571,12 +8589,12 @@ resolve-pkg-maps@^1.0.0: resolve.exports@2.0.3: version "2.0.3" - resolved "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz" + resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.3.tgz#41955e6f1b4013b7586f873749a635dea07ebe3f" integrity sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A== -resolve@^1.1.7, resolve@^1.10.0, resolve@^1.22.1, resolve@^1.22.8: +resolve@^1.1.7, resolve@^1.10.0, resolve@^1.19.0, resolve@^1.22.1, resolve@^1.22.8: version "1.22.10" - resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.10.tgz#b663e83ffb09bbf2386944736baae803029b8b39" integrity sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w== dependencies: is-core-module "^2.16.0" @@ -8585,7 +8603,7 @@ resolve@^1.1.7, resolve@^1.10.0, resolve@^1.22.1, resolve@^1.22.8: restore-cursor@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== dependencies: onetime "^5.1.0" @@ -8593,7 +8611,7 @@ restore-cursor@^3.1.0: restore-cursor@^5.0.0: version "5.1.0" - resolved "https://registry.npmjs.org/restore-cursor/-/restore-cursor-5.1.0.tgz" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-5.1.0.tgz#0766d95699efacb14150993f55baf0953ea1ebe7" integrity sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA== dependencies: onetime "^7.0.0" @@ -8601,124 +8619,85 @@ restore-cursor@^5.0.0: retry@^0.12.0: version "0.12.0" - resolved "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" integrity sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow== reusify@^1.0.4: version "1.1.0" - resolved "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.1.0.tgz#0fe13b9522e1473f51b558ee796e08f11f9b489f" integrity sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw== rfdc@^1.4.1: version "1.4.1" - resolved "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz" + resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.4.1.tgz#778f76c4fb731d93414e8f925fbecf64cce7f6ca" integrity sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA== -rimraf@^5.0.5: - version "5.0.10" - resolved "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz" - integrity sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ== - dependencies: - glob "^10.3.7" - rimraf@^6.0.1: version "6.0.1" - resolved "https://registry.npmjs.org/rimraf/-/rimraf-6.0.1.tgz" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-6.0.1.tgz#ffb8ad8844dd60332ab15f52bc104bc3ed71ea4e" integrity sha512-9dkvaxAsk/xNXSJzMgFqqMCuFgt2+KsOFek3TMLfo8NCPfWpBmqwyNn5Y+NX56QUYfCtsyhF3ayiboEoUmJk/A== dependencies: glob "^11.0.0" package-json-from-dist "^1.0.0" -rollup@^4.20.0: - version "4.45.0" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.45.0.tgz#92d1b164eca1c6f2cb399ae7a1a8ee78967b6e33" - integrity sha512-WLjEcJRIo7i3WDDgOIJqVI2d+lAC3EwvOGy+Xfq6hs+GQuAA4Di/H72xmXkOhrIWFg2PFYSKZYfH0f4vfKXN4A== - dependencies: - "@types/estree" "1.0.8" - optionalDependencies: - "@rollup/rollup-android-arm-eabi" "4.45.0" - "@rollup/rollup-android-arm64" "4.45.0" - "@rollup/rollup-darwin-arm64" "4.45.0" - "@rollup/rollup-darwin-x64" "4.45.0" - "@rollup/rollup-freebsd-arm64" "4.45.0" - "@rollup/rollup-freebsd-x64" "4.45.0" - "@rollup/rollup-linux-arm-gnueabihf" "4.45.0" - "@rollup/rollup-linux-arm-musleabihf" "4.45.0" - "@rollup/rollup-linux-arm64-gnu" "4.45.0" - "@rollup/rollup-linux-arm64-musl" "4.45.0" - "@rollup/rollup-linux-loongarch64-gnu" "4.45.0" - "@rollup/rollup-linux-powerpc64le-gnu" "4.45.0" - "@rollup/rollup-linux-riscv64-gnu" "4.45.0" - "@rollup/rollup-linux-riscv64-musl" "4.45.0" - "@rollup/rollup-linux-s390x-gnu" "4.45.0" - "@rollup/rollup-linux-x64-gnu" "4.45.0" - "@rollup/rollup-linux-x64-musl" "4.45.0" - "@rollup/rollup-win32-arm64-msvc" "4.45.0" - "@rollup/rollup-win32-ia32-msvc" "4.45.0" - "@rollup/rollup-win32-x64-msvc" "4.45.0" - fsevents "~2.3.2" - -rollup@^4.34.8, rollup@^4.40.0: - version "4.46.2" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.46.2.tgz#09b1a45d811e26d09bed63dc3ecfb6831c16ce32" - integrity sha512-WMmLFI+Boh6xbop+OAGo9cQ3OgX9MIg7xOQjn+pTCwOkk+FNDAeAemXkJ3HzDJrVXleLOFVa1ipuc1AmEx1Dwg== +rollup-plugin-postcss@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/rollup-plugin-postcss/-/rollup-plugin-postcss-4.0.2.tgz#15e9462f39475059b368ce0e49c800fa4b1f7050" + integrity sha512-05EaY6zvZdmvPUDi3uCcAQoESDcYnv8ogJJQRp6V5kZ6J6P7uAVJlrTZcaaA20wTH527YTnKfkAoPxWI/jPp4w== dependencies: - "@types/estree" "1.0.8" - optionalDependencies: - "@rollup/rollup-android-arm-eabi" "4.46.2" - "@rollup/rollup-android-arm64" "4.46.2" - "@rollup/rollup-darwin-arm64" "4.46.2" - "@rollup/rollup-darwin-x64" "4.46.2" - "@rollup/rollup-freebsd-arm64" "4.46.2" - "@rollup/rollup-freebsd-x64" "4.46.2" - "@rollup/rollup-linux-arm-gnueabihf" "4.46.2" - "@rollup/rollup-linux-arm-musleabihf" "4.46.2" - "@rollup/rollup-linux-arm64-gnu" "4.46.2" - "@rollup/rollup-linux-arm64-musl" "4.46.2" - "@rollup/rollup-linux-loongarch64-gnu" "4.46.2" - "@rollup/rollup-linux-ppc64-gnu" "4.46.2" - "@rollup/rollup-linux-riscv64-gnu" "4.46.2" - "@rollup/rollup-linux-riscv64-musl" "4.46.2" - "@rollup/rollup-linux-s390x-gnu" "4.46.2" - "@rollup/rollup-linux-x64-gnu" "4.46.2" - "@rollup/rollup-linux-x64-musl" "4.46.2" - "@rollup/rollup-win32-arm64-msvc" "4.46.2" - "@rollup/rollup-win32-ia32-msvc" "4.46.2" - "@rollup/rollup-win32-x64-msvc" "4.46.2" - fsevents "~2.3.2" - -rollup@^4.34.9, rollup@^4.47.1: - version "4.47.1" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.47.1.tgz#c40bce25b7140265dbe5467cd32871f71e9f9f0b" - integrity sha512-iasGAQoZ5dWDzULEUX3jiW0oB1qyFOepSyDyoU6S/OhVlDIwj5knI5QBa5RRQ0sK7OE0v+8VIi2JuV+G+3tfNg== + chalk "^4.1.0" + concat-with-sourcemaps "^1.1.0" + cssnano "^5.0.1" + import-cwd "^3.0.0" + p-queue "^6.6.2" + pify "^5.0.0" + postcss-load-config "^3.0.0" + postcss-modules "^4.0.0" + promise.series "^0.2.0" + resolve "^1.19.0" + rollup-pluginutils "^2.8.2" + safe-identifier "^0.4.2" + style-inject "^0.3.0" + +rollup-pluginutils@^2.8.2: + version "2.8.2" + resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz#72f2af0748b592364dbd3389e600e5a9444a351e" + integrity sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ== + dependencies: + estree-walker "^0.6.1" + +rollup@^4.20.0, rollup@^4.34.8, rollup@^4.34.9, rollup@^4.43.0, rollup@^4.47.1: + version "4.49.0" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.49.0.tgz#9751ad9d06a47a4496c3c5c238b27b1422c8b0eb" + integrity sha512-3IVq0cGJ6H7fKXXEdVt+RcYvRCt8beYY9K1760wGQwSAHZcS9eot1zDG5axUbcp/kWRi5zKIIDX8MoKv/TzvZA== dependencies: "@types/estree" "1.0.8" optionalDependencies: - "@rollup/rollup-android-arm-eabi" "4.47.1" - "@rollup/rollup-android-arm64" "4.47.1" - "@rollup/rollup-darwin-arm64" "4.47.1" - "@rollup/rollup-darwin-x64" "4.47.1" - "@rollup/rollup-freebsd-arm64" "4.47.1" - "@rollup/rollup-freebsd-x64" "4.47.1" - "@rollup/rollup-linux-arm-gnueabihf" "4.47.1" - "@rollup/rollup-linux-arm-musleabihf" "4.47.1" - "@rollup/rollup-linux-arm64-gnu" "4.47.1" - "@rollup/rollup-linux-arm64-musl" "4.47.1" - "@rollup/rollup-linux-loongarch64-gnu" "4.47.1" - "@rollup/rollup-linux-ppc64-gnu" "4.47.1" - "@rollup/rollup-linux-riscv64-gnu" "4.47.1" - "@rollup/rollup-linux-riscv64-musl" "4.47.1" - "@rollup/rollup-linux-s390x-gnu" "4.47.1" - "@rollup/rollup-linux-x64-gnu" "4.47.1" - "@rollup/rollup-linux-x64-musl" "4.47.1" - "@rollup/rollup-win32-arm64-msvc" "4.47.1" - "@rollup/rollup-win32-ia32-msvc" "4.47.1" - "@rollup/rollup-win32-x64-msvc" "4.47.1" + "@rollup/rollup-android-arm-eabi" "4.49.0" + "@rollup/rollup-android-arm64" "4.49.0" + "@rollup/rollup-darwin-arm64" "4.49.0" + "@rollup/rollup-darwin-x64" "4.49.0" + "@rollup/rollup-freebsd-arm64" "4.49.0" + "@rollup/rollup-freebsd-x64" "4.49.0" + "@rollup/rollup-linux-arm-gnueabihf" "4.49.0" + "@rollup/rollup-linux-arm-musleabihf" "4.49.0" + "@rollup/rollup-linux-arm64-gnu" "4.49.0" + "@rollup/rollup-linux-arm64-musl" "4.49.0" + "@rollup/rollup-linux-loongarch64-gnu" "4.49.0" + "@rollup/rollup-linux-ppc64-gnu" "4.49.0" + "@rollup/rollup-linux-riscv64-gnu" "4.49.0" + "@rollup/rollup-linux-riscv64-musl" "4.49.0" + "@rollup/rollup-linux-s390x-gnu" "4.49.0" + "@rollup/rollup-linux-x64-gnu" "4.49.0" + "@rollup/rollup-linux-x64-musl" "4.49.0" + "@rollup/rollup-win32-arm64-msvc" "4.49.0" + "@rollup/rollup-win32-ia32-msvc" "4.49.0" + "@rollup/rollup-win32-x64-msvc" "4.49.0" fsevents "~2.3.2" router@^2.2.0: version "2.2.0" - resolved "https://registry.npmjs.org/router/-/router-2.2.0.tgz" + resolved "https://registry.yarnpkg.com/router/-/router-2.2.0.tgz#019be620b711c87641167cc79b99090f00b146ef" integrity sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ== dependencies: debug "^4.4.0" @@ -8729,31 +8708,31 @@ router@^2.2.0: run-applescript@^7.0.0: version "7.0.0" - resolved "https://registry.npmjs.org/run-applescript/-/run-applescript-7.0.0.tgz" + resolved "https://registry.yarnpkg.com/run-applescript/-/run-applescript-7.0.0.tgz#e5a553c2bffd620e169d276c1cd8f1b64778fbeb" integrity sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A== run-async@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/run-async/-/run-async-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/run-async/-/run-async-3.0.0.tgz#42a432f6d76c689522058984384df28be379daad" integrity sha512-540WwVDOMxA6dN6We19EcT9sc3hkXPw5mzRNGM3FkdN/vtE9NFvj5lFAPNwUDmJjXidm3v7TC1cTE7t17Ulm1Q== run-parallel@^1.1.9: version "1.2.0" - resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== dependencies: queue-microtask "^1.2.2" -rxjs@^7.2.0, rxjs@^7.8.1: +rxjs@7.8.2, rxjs@^7.2.0, rxjs@^7.8.1: version "7.8.2" - resolved "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.8.2.tgz#955bc473ed8af11a002a2be52071bf475638607b" integrity sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA== dependencies: tslib "^2.1.0" safe-array-concat@^1.1.3: version "1.1.3" - resolved "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz" + resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.3.tgz#c9e54ec4f603b0bbb8e7e5007a5ee7aecd1538c3" integrity sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q== dependencies: call-bind "^1.0.8" @@ -8764,17 +8743,22 @@ safe-array-concat@^1.1.3: safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.2.0: version "5.2.1" - resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" - resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== +safe-identifier@^0.4.2: + version "0.4.2" + resolved "https://registry.yarnpkg.com/safe-identifier/-/safe-identifier-0.4.2.tgz#cf6bfca31c2897c588092d1750d30ef501d59fcb" + integrity sha512-6pNbSMW6OhAi9j+N8V+U715yBQsaWJ7eyEUaOrawX+isg5ZxhUlV1NipNtgaKHmFGiABwt+ZF04Ii+3Xjkg+8w== + safe-push-apply@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/safe-push-apply/-/safe-push-apply-1.0.0.tgz#01850e981c1602d398c85081f360e4e6d03d27f5" integrity sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA== dependencies: es-errors "^1.3.0" @@ -8782,7 +8766,7 @@ safe-push-apply@^1.0.0: safe-regex-test@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.1.0.tgz#7f87dfb67a3150782eaaf18583ff5d1711ac10c1" integrity sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw== dependencies: call-bound "^1.0.2" @@ -8791,45 +8775,40 @@ safe-regex-test@^1.1.0: "safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0": version "2.1.2" - resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== sax@>=0.6.0: version "1.4.1" - resolved "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.4.1.tgz#44cc8988377f126304d3b3fc1010c733b929ef0f" integrity sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg== secretlint@^10.1.1: - version "10.1.1" - resolved "https://registry.yarnpkg.com/secretlint/-/secretlint-10.1.1.tgz#8cfdd22f75bd840a324b5c0fccd1d4f982b226cb" - integrity sha512-q50i+I9w6HH8P6o34LVq6M3hm5GZn2Eq5lYGHkEByOAbVqBHn8gsMGgyxjP1xSrSv1QjDtjxs/zKPm6JtkNzGw== - dependencies: - "@secretlint/config-creator" "^10.1.1" - "@secretlint/formatter" "^10.1.1" - "@secretlint/node" "^10.1.1" - "@secretlint/profiler" "^10.1.1" + version "10.2.2" + resolved "https://registry.yarnpkg.com/secretlint/-/secretlint-10.2.2.tgz#c0cf997153a2bef0b653874dc87030daa6a35140" + integrity sha512-xVpkeHV/aoWe4vP4TansF622nBEImzCY73y/0042DuJ29iKIaqgoJ8fGxre3rVSHHbxar4FdJobmTnLp9AU0eg== + dependencies: + "@secretlint/config-creator" "^10.2.2" + "@secretlint/formatter" "^10.2.2" + "@secretlint/node" "^10.2.2" + "@secretlint/profiler" "^10.2.2" debug "^4.4.1" globby "^14.1.0" - read-pkg "^8.1.0" + read-pkg "^9.0.1" "semver@2 || 3 || 4 || 5", semver@^5.1.0, semver@^5.5.0: version "5.7.2" - resolved "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== -semver@^7.1.1, semver@^7.3.7, semver@^7.5.2, semver@^7.6.0, semver@^7.6.2: +semver@^7.1.1, semver@^7.3.5, semver@^7.3.7, semver@^7.5.2, semver@^7.5.3, semver@^7.5.4, semver@^7.6.0, semver@^7.6.2: version "7.7.2" resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.2.tgz#67d99fdcd35cec21e6f8b87a7fd515a33f982b58" integrity sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA== -semver@^7.3.5, semver@^7.5.3, semver@^7.5.4: - version "7.7.1" - resolved "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz" - integrity sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA== - send@^1.1.0, send@^1.2.0: version "1.2.0" - resolved "https://registry.npmjs.org/send/-/send-1.2.0.tgz" + resolved "https://registry.yarnpkg.com/send/-/send-1.2.0.tgz#32a7554fb777b831dfa828370f773a3808d37212" integrity sha512-uaW0WwXKpL9blXE2o0bRhoL2EGXIrZxQ2ZQ4mgcfoBxdFmQold+qWsD2jLrfZ0trjKL6vOw0j//eAwcALFjKSw== dependencies: debug "^4.3.5" @@ -8846,14 +8825,14 @@ send@^1.1.0, send@^1.2.0: serialize-javascript@^6.0.2: version "6.0.2" - resolved "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz#defa1e055c83bf6d59ea805d8da862254eb6a6c2" integrity sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g== dependencies: randombytes "^2.1.0" serve-static@^2.2.0: version "2.2.0" - resolved "https://registry.npmjs.org/serve-static/-/serve-static-2.2.0.tgz" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-2.2.0.tgz#9c02564ee259bdd2251b82d659a2e7e1938d66f9" integrity sha512-61g9pCh0Vnh7IutZjtLGGpTA355+OPn2TyDv/6ivP2h/AdAVX9azsoxmg2/M6nZeQZNYBEwIcsne1mJd9oQItQ== dependencies: encodeurl "^2.0.0" @@ -8863,7 +8842,7 @@ serve-static@^2.2.0: set-function-length@^1.2.2: version "1.2.2" - resolved "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz" + resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== dependencies: define-data-property "^1.1.4" @@ -8875,7 +8854,7 @@ set-function-length@^1.2.2: set-function-name@^2.0.2: version "2.0.2" - resolved "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.2.tgz#16a705c5a0dc2f5e638ca96d8a8cd4e1c2b90985" integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ== dependencies: define-data-property "^1.1.4" @@ -8885,7 +8864,7 @@ set-function-name@^2.0.2: set-proto@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/set-proto/-/set-proto-1.0.0.tgz#0760dbcff30b2d7e801fd6e19983e56da337565e" integrity sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw== dependencies: dunder-proto "^1.0.1" @@ -8894,60 +8873,60 @@ set-proto@^1.0.0: setimmediate@^1.0.5: version "1.0.5" - resolved "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz" + resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA== setprototypeof@1.2.0: version "1.2.0" - resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== shebang-command@^1.2.0: version "1.2.0" - resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" integrity sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg== dependencies: shebang-regex "^1.0.0" shebang-command@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== dependencies: shebang-regex "^3.0.0" shebang-regex@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" integrity sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ== shebang-regex@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -shell-quote@^1.6.1, shell-quote@^1.8.1: +shell-quote@1.8.3, shell-quote@^1.6.1: version "1.8.3" - resolved "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.3.tgz" + resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.8.3.tgz#55e40ef33cf5c689902353a3d8cd1a6725f08b4b" integrity sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw== -shiki@3.4.2, shiki@^3.2.2: - version "3.4.2" - resolved "https://registry.npmjs.org/shiki/-/shiki-3.4.2.tgz" - integrity sha512-wuxzZzQG8kvZndD7nustrNFIKYJ1jJoWIPaBpVe2+KHSvtzMi4SBjOxrigs8qeqce/l3U0cwiC+VAkLKSunHQQ== - dependencies: - "@shikijs/core" "3.4.2" - "@shikijs/engine-javascript" "3.4.2" - "@shikijs/engine-oniguruma" "3.4.2" - "@shikijs/langs" "3.4.2" - "@shikijs/themes" "3.4.2" - "@shikijs/types" "3.4.2" +shiki@3.12.0, shiki@^3.9.2: + version "3.12.0" + resolved "https://registry.yarnpkg.com/shiki/-/shiki-3.12.0.tgz#a0668393d04c02402522abcd221ad3a0774b2d44" + integrity sha512-E+ke51tciraTHpaXYXfqnPZFSViKHhSQ3fiugThlfs/om/EonlQ0hSldcqgzOWWqX6PcjkKKzFgrjIaiPAXoaA== + dependencies: + "@shikijs/core" "3.12.0" + "@shikijs/engine-javascript" "3.12.0" + "@shikijs/engine-oniguruma" "3.12.0" + "@shikijs/langs" "3.12.0" + "@shikijs/themes" "3.12.0" + "@shikijs/types" "3.12.0" "@shikijs/vscode-textmate" "^10.0.2" "@types/hast" "^3.0.4" side-channel-list@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/side-channel-list/-/side-channel-list-1.0.0.tgz#10cb5984263115d3b7a0e336591e290a830af8ad" integrity sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA== dependencies: es-errors "^1.3.0" @@ -8955,7 +8934,7 @@ side-channel-list@^1.0.0: side-channel-map@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/side-channel-map/-/side-channel-map-1.0.1.tgz#d6bb6b37902c6fef5174e5f533fab4c732a26f42" integrity sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA== dependencies: call-bound "^1.0.2" @@ -8965,7 +8944,7 @@ side-channel-map@^1.0.1: side-channel-weakmap@^1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz#11dda19d5368e40ce9ec2bdc1fb0ecbc0790ecea" integrity sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A== dependencies: call-bound "^1.0.2" @@ -8976,7 +8955,7 @@ side-channel-weakmap@^1.0.2: side-channel@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.1.0.tgz#c3fcff9c4da932784873335ec9765fa94ff66bc9" integrity sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw== dependencies: es-errors "^1.3.0" @@ -8992,17 +8971,17 @@ siginfo@^2.0.0: signal-exit@^3.0.2, signal-exit@^3.0.7: version "3.0.7" - resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== signal-exit@^4.0.1, signal-exit@^4.1.0: version "4.1.0" - resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== sigstore@^2.2.0: version "2.3.1" - resolved "https://registry.npmjs.org/sigstore/-/sigstore-2.3.1.tgz" + resolved "https://registry.yarnpkg.com/sigstore/-/sigstore-2.3.1.tgz#0755dd2cc4820f2e922506da54d3d628e13bfa39" integrity sha512-8G+/XDU8wNsJOQS5ysDVO0Etg9/2uA5gR9l4ZwijjlwxBcrU6RPfwi2+jJmbP+Ap1Hlp/nVAaEO4Fj22/SL2gQ== dependencies: "@sigstore/bundle" "^2.3.2" @@ -9014,12 +8993,12 @@ sigstore@^2.2.0: simple-concat@^1.0.0: version "1.0.1" - resolved "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.1.tgz#f46976082ba35c2263f1c8ab5edfe26c41c9552f" integrity sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q== simple-get@^4.0.0: version "4.0.1" - resolved "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz" + resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-4.0.1.tgz#4a39db549287c979d352112fa03fd99fd6bc3543" integrity sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA== dependencies: decompress-response "^6.0.0" @@ -9028,7 +9007,7 @@ simple-get@^4.0.0: simple-git@^3.20.0: version "3.28.0" - resolved "https://registry.npmjs.org/simple-git/-/simple-git-3.28.0.tgz" + resolved "https://registry.yarnpkg.com/simple-git/-/simple-git-3.28.0.tgz#c6345b2e387880f8450788a1e388573366ae48ac" integrity sha512-Rs/vQRwsn1ILH1oBUy8NucJlXmnnLeLCfcvbSehkPzbv3wwoFWIdtfd6Ndo6ZPhlPsCZ60CPI4rxurnwAa+a2w== dependencies: "@kwsites/file-exists" "^1.1.1" @@ -9046,17 +9025,17 @@ sirv@^3.0.1: slash@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== slash@^5.1.0: version "5.1.0" - resolved "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz" + resolved "https://registry.yarnpkg.com/slash/-/slash-5.1.0.tgz#be3adddcdf09ac38eebe8dcdc7b1a57a75b095ce" integrity sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg== slice-ansi@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== dependencies: ansi-styles "^4.0.0" @@ -9065,12 +9044,12 @@ slice-ansi@^4.0.0: smart-buffer@^4.2.0: version "4.2.0" - resolved "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz" + resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg== socks-proxy-agent@^8.0.3: version "8.0.5" - resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz" + resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz#b9cdb4e7e998509d7659d689ce7697ac21645bee" integrity sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw== dependencies: agent-base "^7.1.2" @@ -9078,16 +9057,16 @@ socks-proxy-agent@^8.0.3: socks "^2.8.3" socks@^2.8.3: - version "2.8.5" - resolved "https://registry.npmjs.org/socks/-/socks-2.8.5.tgz" - integrity sha512-iF+tNDQla22geJdTyJB1wM/qrX9DMRwWrciEPwWLPRWAUEM8sQiyxgckLxWT1f7+9VabJS0jTGGr4QgBuvi6Ww== + version "2.8.7" + resolved "https://registry.yarnpkg.com/socks/-/socks-2.8.7.tgz#e2fb1d9a603add75050a2067db8c381a0b5669ea" + integrity sha512-HLpt+uLy/pxB+bum/9DzAgiKS8CX1EvbWxI4zlmgGCExImLdiad2iCwXT5Z4c9c3Eq8rP2318mPW2c+QbtjK8A== dependencies: - ip-address "^9.0.5" + ip-address "^10.0.1" smart-buffer "^4.2.0" sort-keys@^5.0.0: version "5.1.0" - resolved "https://registry.npmjs.org/sort-keys/-/sort-keys-5.1.0.tgz" + resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-5.1.0.tgz#50a3f3d1ad3c5a76d043e0aeeba7299241e9aa5c" integrity sha512-aSbHV0DaBcr7u0PVHXzM6NbZNAtrr9sF6+Qfs9UUVG7Ll3jQ6hHi8F/xqIIcn2rvIVbr0v/2zyjSdwSV47AgLQ== dependencies: is-plain-obj "^4.0.0" @@ -9104,14 +9083,19 @@ source-map@0.8.0-beta.0: dependencies: whatwg-url "^7.0.0" +source-map@^0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== + space-separated-tokens@^2.0.0: version "2.0.2" - resolved "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz#1ecd9d2350a3844572c3f4a312bceb018348859f" integrity sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q== spdx-correct@^3.0.0: version "3.2.0" - resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.2.0.tgz#4f5ab0668f0059e34f9c00dce331784a12de4e9c" integrity sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA== dependencies: spdx-expression-parse "^3.0.0" @@ -9119,62 +9103,67 @@ spdx-correct@^3.0.0: spdx-exceptions@^2.1.0: version "2.5.0" - resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz#5d607d27fc806f66d7b64a766650fa890f04ed66" integrity sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w== spdx-expression-parse@^3.0.0: version "3.0.1" - resolved "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== dependencies: spdx-exceptions "^2.1.0" spdx-license-ids "^3.0.0" spdx-license-ids@^3.0.0: - version "3.0.21" - resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.21.tgz" - integrity sha512-Bvg/8F5XephndSK3JffaRqdT+gyhfqIPwDHpX80tJrF8QQRYMo8sNMeaZ2Dp5+jhwKnUmIOyFFQfHRkjJm5nXg== + version "3.0.22" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.22.tgz#abf5a08a6f5d7279559b669f47f0a43e8f3464ef" + integrity sha512-4PRT4nh1EImPbt2jASOKHX7PB7I+e4IWNLvkKFDxNhJlfjbYlleYQh285Z/3mPTHSAK/AvdMmw5BNNuYH8ShgQ== speakingurl@^14.0.1: version "14.0.1" - resolved "https://registry.npmjs.org/speakingurl/-/speakingurl-14.0.1.tgz" + resolved "https://registry.yarnpkg.com/speakingurl/-/speakingurl-14.0.1.tgz#f37ec8ddc4ab98e9600c1c9ec324a8c48d772a53" integrity sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ== -sprintf-js@^1.1.3: - version "1.1.3" - resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz" - integrity sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA== - sprintf-js@~1.0.2: version "1.0.3" - resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== ssri@^10.0.0, ssri@^10.0.6: version "10.0.6" - resolved "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-10.0.6.tgz#a8aade2de60ba2bce8688e3fa349bad05c7dc1e5" integrity sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ== dependencies: minipass "^7.0.3" +stable@^0.1.8: + version "0.1.8" + resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" + integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== + stackback@0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/stackback/-/stackback-0.0.2.tgz#1ac8a0d9483848d1695e418b6d031a3c3ce68e3b" integrity sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw== -statuses@2.0.1, statuses@^2.0.1: +statuses@2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== +statuses@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.2.tgz#8f75eecef765b5e1cfcdc080da59409ed424e382" + integrity sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw== + std-env@^3.5.0, std-env@^3.9.0: version "3.9.0" - resolved "https://registry.npmjs.org/std-env/-/std-env-3.9.0.tgz" + resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.9.0.tgz#1a6f7243b339dca4c9fd55e1c7504c77ef23e8f1" integrity sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw== stdin-discarder@^0.2.2: version "0.2.2" - resolved "https://registry.npmjs.org/stdin-discarder/-/stdin-discarder-0.2.2.tgz" + resolved "https://registry.yarnpkg.com/stdin-discarder/-/stdin-discarder-0.2.2.tgz#390037f44c4ae1a1ae535c5fe38dc3aba8d997be" integrity sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ== stimulus-parser@^0.3.0: @@ -9192,7 +9181,7 @@ stimulus-parser@^0.3.0: stop-iteration-iterator@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz#f481ff70a548f6124d0312c3aa14cbfa7aa542ad" integrity sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ== dependencies: es-errors "^1.3.0" @@ -9200,7 +9189,7 @@ stop-iteration-iterator@^1.1.0: streamx@^2.12.5: version "2.22.1" - resolved "https://registry.npmjs.org/streamx/-/streamx-2.22.1.tgz" + resolved "https://registry.yarnpkg.com/streamx/-/streamx-2.22.1.tgz#c97cbb0ce18da4f4db5a971dc9ab68ff5dc7f5a5" integrity sha512-znKXEBxfatz2GBNK02kRnCXjV+AA4kjZIUxeWSr3UGirZMJfTE9uiwKHobnbgxWyL/JWro8tTq+vOqAK1/qbSA== dependencies: fast-fifo "^1.3.2" @@ -9208,9 +9197,14 @@ streamx@^2.12.5: optionalDependencies: bare-events "^2.2.0" +string-hash@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/string-hash/-/string-hash-1.1.3.tgz#e8aafc0ac1855b4666929ed7dd1275df5d6c811b" + integrity sha512-kJUvRUFK49aub+a7T1nNE66EJbZBMnBgoC1UbCZ5n6bsZKBRga4KgBRTMn/pFkeCZSYtNeSyMxPDM0AXWELk2A== + "string-width-cjs@npm:string-width@^4.2.0": version "4.2.3" - resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== dependencies: emoji-regex "^8.0.0" @@ -9228,7 +9222,7 @@ string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: string-width@^5.0.1, string-width@^5.1.2: version "5.1.2" - resolved "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== dependencies: eastasianwidth "^0.2.0" @@ -9237,7 +9231,7 @@ string-width@^5.0.1, string-width@^5.1.2: string-width@^7.2.0: version "7.2.0" - resolved "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-7.2.0.tgz#b5bb8e2165ce275d4d43476dd2700ad9091db6dc" integrity sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ== dependencies: emoji-regex "^10.3.0" @@ -9246,7 +9240,7 @@ string-width@^7.2.0: string.prototype.padend@^3.0.0: version "3.1.6" - resolved "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.6.tgz" + resolved "https://registry.yarnpkg.com/string.prototype.padend/-/string.prototype.padend-3.1.6.tgz#ba79cf8992609a91c872daa47c6bb144ee7f62a5" integrity sha512-XZpspuSB7vJWhvJc9DLSlrXl1mcA2BdoY5jjnS135ydXqLoqhs96JjDtCkjJEQHvfqZIp9hBuBMgI589peyx9Q== dependencies: call-bind "^1.0.7" @@ -9256,7 +9250,7 @@ string.prototype.padend@^3.0.0: string.prototype.trim@^1.2.10: version "1.2.10" - resolved "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz#40b2dd5ee94c959b4dcfb1d65ce72e90da480c81" integrity sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA== dependencies: call-bind "^1.0.8" @@ -9269,7 +9263,7 @@ string.prototype.trim@^1.2.10: string.prototype.trimend@^1.0.9: version "1.0.9" - resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz#62e2731272cd285041b36596054e9f66569b6942" integrity sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ== dependencies: call-bind "^1.0.8" @@ -9279,7 +9273,7 @@ string.prototype.trimend@^1.0.9: string.prototype.trimstart@^1.0.8: version "1.0.8" - resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz#7ee834dda8c7c17eff3118472bb35bfedaa34dde" integrity sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg== dependencies: call-bind "^1.0.7" @@ -9288,21 +9282,21 @@ string.prototype.trimstart@^1.0.8: string_decoder@^1.1.1, string_decoder@^1.3.0: version "1.3.0" - resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== dependencies: safe-buffer "~5.2.0" string_decoder@~1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== dependencies: safe-buffer "~5.1.0" stringify-entities@^4.0.0: version "4.0.4" - resolved "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz" + resolved "https://registry.yarnpkg.com/stringify-entities/-/stringify-entities-4.0.4.tgz#b3b79ef5f277cc4ac73caeb0236c5ba939b3a4f3" integrity sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg== dependencies: character-entities-html4 "^2.0.0" @@ -9310,7 +9304,7 @@ stringify-entities@^4.0.0: "strip-ansi-cjs@npm:strip-ansi@^6.0.1": version "6.0.1" - resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== dependencies: ansi-regex "^5.0.1" @@ -9324,21 +9318,21 @@ strip-ansi@^6.0.0, strip-ansi@^6.0.1: strip-ansi@^7.0.1, strip-ansi@^7.1.0: version "7.1.0" - resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45" integrity sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ== dependencies: ansi-regex "^6.0.1" strip-bom-buf@^3.0.0, strip-bom-buf@^3.0.1: version "3.0.1" - resolved "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/strip-bom-buf/-/strip-bom-buf-3.0.1.tgz#3f50f447f4650eed6e3743664a3964d638bb716f" integrity sha512-iJaWw2WroigLHzQysdc5WWeUc99p7ea7AEgB6JkY8CMyiO1yTVAA1gIlJJgORElUIR+lcZJkNl1OGChMhvc2Cw== dependencies: is-utf8 "^0.2.1" strip-bom-stream@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/strip-bom-stream/-/strip-bom-stream-5.0.0.tgz#7287b857964c8884d01cee17cb9f86b53e4379a0" integrity sha512-Yo472mU+3smhzqeKlIxClre4s4pwtYZEvDNQvY/sJpnChdaxmKuwU28UVx/v1ORKNMxkmj1GBuvxJQyBk6wYMQ== dependencies: first-chunk-stream "^5.0.0" @@ -9346,22 +9340,22 @@ strip-bom-stream@^5.0.0: strip-bom@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA== strip-final-newline@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-3.0.0.tgz#52894c313fbff318835280aed60ff71ebf12b8fd" integrity sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw== strip-json-comments@^3.1.1: version "3.1.1" - resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== strip-json-comments@~2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== strip-literal@^2.0.0: @@ -9380,11 +9374,24 @@ strip-literal@^3.0.0: structured-source@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/structured-source/-/structured-source-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/structured-source/-/structured-source-4.0.0.tgz#0c9e59ee43dedd8fc60a63731f60e358102a4948" integrity sha512-qGzRFNJDjFieQkl/sVOI2dUjHKRyL9dAJi2gCPGJLbJHBIkyOHxjuocpIEfbLioX+qSJpvbYdT49/YCdMznKxA== dependencies: boundary "^2.0.0" +style-inject@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/style-inject/-/style-inject-0.3.0.tgz#d21c477affec91811cc82355832a700d22bf8dd3" + integrity sha512-IezA2qp+vcdlhJaVm5SOdPPTUu0FCEqfNSli2vRuSIBbu5Nq5UvygTk/VzeCqfLz2Atj3dVII5QBKGZRZ0edzw== + +stylehacks@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-5.1.1.tgz#7934a34eb59d7152149fa69d6e9e56f2fc34bcc9" + integrity sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw== + dependencies: + browserslist "^4.21.4" + postcss-selector-parser "^6.0.4" + sucrase@^3.35.0: version "3.35.0" resolved "https://registry.yarnpkg.com/sucrase/-/sucrase-3.35.0.tgz#57f17a3d7e19b36d8995f06679d121be914ae263" @@ -9400,14 +9407,21 @@ sucrase@^3.35.0: superjson@^2.2.2: version "2.2.2" - resolved "https://registry.npmjs.org/superjson/-/superjson-2.2.2.tgz" + resolved "https://registry.yarnpkg.com/superjson/-/superjson-2.2.2.tgz#9d52bf0bf6b5751a3c3472f1292e714782ba3173" integrity sha512-5JRxVqC8I8NuOUjzBbvVJAKNM8qoVuH0O77h4WInc/qC2q5IreqKxYwgkga3PfA22OayK2ikceb/B26dztPl+Q== dependencies: copy-anything "^3.0.2" +supports-color@8.1.1, supports-color@^8.1.1: + version "8.1.1" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== + dependencies: + has-flag "^4.0.0" + supports-color@^5.3.0: version "5.5.0" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== dependencies: has-flag "^3.0.0" @@ -9419,22 +9433,15 @@ supports-color@^7.0.0, supports-color@^7.1.0: dependencies: has-flag "^4.0.0" -supports-color@^8.1.1: - version "8.1.1" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz" - integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== - dependencies: - has-flag "^4.0.0" - supports-color@^9.4.0: version "9.4.0" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-9.4.0.tgz" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-9.4.0.tgz#17bfcf686288f531db3dea3215510621ccb55954" integrity sha512-VL+lNrEoIXww1coLPOmiEmK/0sGigko5COxI09KzHc2VJXJsQ37UaQ+8quuxjDeA7+KnLGTWRyOXSLLR2Wb4jw== -supports-hyperlinks@^2.0.0: - version "2.3.0" - resolved "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz" - integrity sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA== +supports-hyperlinks@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-3.2.0.tgz#b8e485b179681dea496a1e7abdf8985bd3145461" + integrity sha512-zFObLMyZeEwzAoKCyu1B91U79K2t7ApXuQfo8OuxwXLDgcKxuwM+YvcbIhm6QWqz7mHUH1TVytR1PwVVjEuMig== dependencies: has-flag "^4.0.0" supports-color "^7.0.0" @@ -9444,14 +9451,27 @@ supports-preserve-symlinks-flag@^1.0.0: resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== +svgo@^2.7.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/svgo/-/svgo-2.8.0.tgz#4ff80cce6710dc2795f0c7c74101e6764cfccd24" + integrity sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg== + dependencies: + "@trysound/sax" "0.2.0" + commander "^7.2.0" + css-select "^4.1.3" + css-tree "^1.1.3" + csso "^4.2.0" + picocolors "^1.0.0" + stable "^0.1.8" + tabbable@^6.2.0: version "6.2.0" - resolved "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz" + resolved "https://registry.yarnpkg.com/tabbable/-/tabbable-6.2.0.tgz#732fb62bc0175cfcec257330be187dcfba1f3b97" integrity sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew== table@^6.9.0: version "6.9.0" - resolved "https://registry.npmjs.org/table/-/table-6.9.0.tgz" + resolved "https://registry.yarnpkg.com/table/-/table-6.9.0.tgz#50040afa6264141c7566b3b81d4d82c47a8668f5" integrity sha512-9kY+CygyYM6j02t5YFHbNz2FN5QmYGv9zAjVp4lCDjlCw7amdckXlEt/bjMhUIfj4ThGRE4gCUH5+yGnNuPo5A== dependencies: ajv "^8.0.1" @@ -9489,13 +9509,13 @@ tailwindcss@^3.4.17: sucrase "^3.35.0" tapable@^2.2.0: - version "2.2.2" - resolved "https://registry.npmjs.org/tapable/-/tapable-2.2.2.tgz" - integrity sha512-Re10+NauLTMCudc7T5WLFLAwDhQ0JWdrMK+9B2M8zR5hRExKmsRDCBA7/aV/pNJFltmBFO5BAMlQFi/vq3nKOg== + version "2.2.3" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.3.tgz#4b67b635b2d97578a06a2713d2f04800c237e99b" + integrity sha512-ZL6DDuAlRlLGghwcfmSn9sK3Hr6ArtyudlSAiCqQ6IfE+b+HHbydbYDIG15IfS5do+7XQQBdBiubF/cV2dnDzg== tar-fs@^2.0.0: version "2.1.3" - resolved "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.3.tgz" + resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.1.3.tgz#fb3b8843a26b6f13a08e606f7922875eb1fbbf92" integrity sha512-090nwYJDmlhwFwEW3QQl+vaNnxsO2yVsd45eTKRBzSzu+hlb1w2K9inVq5b0ngXuLVqQ4ApvsUHHnu/zQNkWAg== dependencies: chownr "^1.1.1" @@ -9505,7 +9525,7 @@ tar-fs@^2.0.0: tar-stream@^2.1.4, tar-stream@~2.2.0: version "2.2.0" - resolved "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz" + resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287" integrity sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ== dependencies: bl "^4.0.3" @@ -9516,7 +9536,7 @@ tar-stream@^2.1.4, tar-stream@~2.2.0: tar@^6.1.11, tar@^6.2.1: version "6.2.1" - resolved "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz" + resolved "https://registry.yarnpkg.com/tar/-/tar-6.2.1.tgz#717549c541bc3c2af15751bea94b1dd068d4b03a" integrity sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A== dependencies: chownr "^2.0.0" @@ -9528,7 +9548,7 @@ tar@^6.1.11, tar@^6.2.1: tar@^7.4.0: version "7.4.3" - resolved "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz" + resolved "https://registry.yarnpkg.com/tar/-/tar-7.4.3.tgz#88bbe9286a3fcd900e94592cda7a22b192e80571" integrity sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw== dependencies: "@isaacs/fs-minipass" "^4.0.0" @@ -9540,22 +9560,22 @@ tar@^7.4.0: teex@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/teex/-/teex-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/teex/-/teex-1.0.1.tgz#b8fa7245ef8e8effa8078281946c85ab780a0b12" integrity sha512-eYE6iEI62Ni1H8oIa7KlDU6uQBtqr4Eajni3wX7rpfXD8ysFx8z0+dri+KWEPWpBsxXfxu58x/0jvTVT1ekOSg== dependencies: streamx "^2.12.5" -terminal-link@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz" - integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ== +terminal-link@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-4.0.0.tgz#5f3e50329420fad97d07d624f7df1851d82963f1" + integrity sha512-lk+vH+MccxNqgVqSnkMVKx4VLJfnLjDBGzH16JVZjKE2DoxP57s6/vt6JmXV5I3jBcfGrxNrYtC+mPtU7WJztA== dependencies: - ansi-escapes "^4.2.1" - supports-hyperlinks "^2.0.0" + ansi-escapes "^7.0.0" + supports-hyperlinks "^3.2.0" test-exclude@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== dependencies: "@istanbuljs/schema" "^0.1.2" @@ -9564,19 +9584,19 @@ test-exclude@^6.0.0: text-decoder@^1.1.0: version "1.2.3" - resolved "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.3.tgz" + resolved "https://registry.yarnpkg.com/text-decoder/-/text-decoder-1.2.3.tgz#b19da364d981b2326d5f43099c310cc80d770c65" integrity sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA== dependencies: b4a "^1.6.4" text-table@^0.2.0: version "0.2.0" - resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" + resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== textextensions@^6.11.0: version "6.11.0" - resolved "https://registry.npmjs.org/textextensions/-/textextensions-6.11.0.tgz" + resolved "https://registry.yarnpkg.com/textextensions/-/textextensions-6.11.0.tgz#864535d09f49026150c96f0b0d79f1fa0869db15" integrity sha512-tXJwSr9355kFJI3lbCkPpUH5cP8/M0GGy2xLO34aZCjMXBaK3SoPnZwr/oWmo1FdCnELcs4npdCIOFtq9W3ruQ== dependencies: editions "^6.21.0" @@ -9597,7 +9617,7 @@ thenify-all@^1.0.0: tinybench@^2.5.1, tinybench@^2.9.0: version "2.9.0" - resolved "https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz" + resolved "https://registry.yarnpkg.com/tinybench/-/tinybench-2.9.0.tgz#103c9f8ba6d7237a47ab6dd1dcff77251863426b" integrity sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg== tinyexec@^0.3.2: @@ -9607,12 +9627,12 @@ tinyexec@^0.3.2: tinyexec@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/tinyexec/-/tinyexec-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/tinyexec/-/tinyexec-1.0.1.tgz#70c31ab7abbb4aea0a24f55d120e5990bfa1e0b1" integrity sha512-5uC6DDlmeqiOwCPmK9jMSdOuZTh8bU39Ys6yidB+UTt5hfZUPGAypSgFRiEp+jbi9qH40BLDvy85jIU88wKSqw== tinyglobby@^0.2.11, tinyglobby@^0.2.13, tinyglobby@^0.2.14: version "0.2.14" - resolved "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.14.tgz" + resolved "https://registry.yarnpkg.com/tinyglobby/-/tinyglobby-0.2.14.tgz#5280b0cf3f972b050e74ae88406c0a6a58f4079d" integrity sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ== dependencies: fdir "^6.4.4" @@ -9645,26 +9665,26 @@ tinyspy@^4.0.3: tmp@^0.0.33: version "0.0.33" - resolved "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== dependencies: os-tmpdir "~1.0.2" tmp@^0.2.3, tmp@~0.2.1: - version "0.2.3" - resolved "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz" - integrity sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w== + version "0.2.5" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.2.5.tgz#b06bcd23f0f3c8357b426891726d16015abfd8f8" + integrity sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow== to-regex-range@^5.0.1: version "5.0.1" - resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== dependencies: is-number "^7.0.0" toidentifier@1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== totalist@^3.0.0: @@ -9681,27 +9701,27 @@ tr46@^1.0.1: tr46@~0.0.3: version "0.0.3" - resolved "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== -tree-kill@^1.2.2: +tree-kill@1.2.2, tree-kill@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.2.2.tgz#4ca09a9092c88b73a7cdc5e8a01b507b0790a0cc" integrity sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A== treeverse@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/treeverse/-/treeverse-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/treeverse/-/treeverse-3.0.0.tgz#dd82de9eb602115c6ebd77a574aae67003cb48c8" integrity sha512-gcANaAnd2QDZFmHFEOF4k7uc1J/6a6z3DJMd/QwEyxLoKGiptJRwid582r7QIsFlFMIZ3SnxfS52S4hm2DHkuQ== trim-lines@^3.0.0: version "3.0.1" - resolved "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/trim-lines/-/trim-lines-3.0.1.tgz#d802e332a07df861c48802c04321017b1bd87338" integrity sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg== ts-api-utils@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-2.1.0.tgz#595f7094e46eed364c13fd23e75f9513d29baf91" integrity sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ== ts-interface-checker@^0.1.9: @@ -9711,7 +9731,7 @@ ts-interface-checker@^0.1.9: tsconfig-paths@^4.1.2: version "4.2.0" - resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz" + resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz#ef78e19039133446d244beac0fd6a1632e2d107c" integrity sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg== dependencies: json5 "^2.2.2" @@ -9720,7 +9740,7 @@ tsconfig-paths@^4.1.2: tslib@^2.1.0, tslib@^2.2.0, tslib@^2.3.0, tslib@^2.4.0, tslib@^2.6.2: version "2.8.1" - resolved "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== tsup@^8.5.0: @@ -9747,9 +9767,9 @@ tsup@^8.5.0: tree-kill "^1.2.2" tsx@^4.20.4: - version "4.20.4" - resolved "https://registry.yarnpkg.com/tsx/-/tsx-4.20.4.tgz#3fcf255dbc8826bdde2820f1cff47e31075c1d30" - integrity sha512-yyxBKfORQ7LuRt/BQKBXrpcq59ZvSW0XxwfjAt3w2/8PmdxaFzijtMhTawprSHhpzeM5BgU2hXHG3lklIERZXg== + version "4.20.5" + resolved "https://registry.yarnpkg.com/tsx/-/tsx-4.20.5.tgz#856c8b2f114c50a9f4ae108126967a167f240dc7" + integrity sha512-+wKjMNU9w/EaQayHXb7WA7ZaHY6hN8WgfvHNQ3t1PnU91/7O8TcTnIhCDYTZwnt8JsO9IBqZ30Ln1r7pPF52Aw== dependencies: esbuild "~0.25.0" get-tsconfig "^4.7.5" @@ -9758,7 +9778,7 @@ tsx@^4.20.4: tuf-js@^2.2.1: version "2.2.1" - resolved "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.1.tgz" + resolved "https://registry.yarnpkg.com/tuf-js/-/tuf-js-2.2.1.tgz#fdd8794b644af1a75c7aaa2b197ddffeb2911b56" integrity sha512-GwIJau9XaA8nLVbUXsN3IlFi7WmQ48gBUrl3FTkkL/XLu/POhBzfmX9hd33FNMX1qAsfl6ozO1iMmW9NC8YniA== dependencies: "@tufjs/models" "2.0.1" @@ -9767,41 +9787,41 @@ tuf-js@^2.2.1: tunnel-agent@^0.6.0: version "0.6.0" - resolved "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" integrity sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w== dependencies: safe-buffer "^5.0.1" tunnel@0.0.6: version "0.0.6" - resolved "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz" + resolved "https://registry.yarnpkg.com/tunnel/-/tunnel-0.0.6.tgz#72f1314b34a5b192db012324df2cc587ca47f92c" integrity sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg== -twoslash-protocol@0.3.1: - version "0.3.1" - resolved "https://registry.npmjs.org/twoslash-protocol/-/twoslash-protocol-0.3.1.tgz" - integrity sha512-BMePTL9OkuNISSyyMclBBhV2s9++DiOCyhhCoV5Kaht6eaWLwVjCCUJHY33eZJPsyKeZYS8Wzz0h+XI01VohVw== +twoslash-protocol@0.3.4: + version "0.3.4" + resolved "https://registry.yarnpkg.com/twoslash-protocol/-/twoslash-protocol-0.3.4.tgz#276ccd73dbbc99e19d8df7214b28c01a04d2294a" + integrity sha512-HHd7lzZNLUvjPzG/IE6js502gEzLC1x7HaO1up/f72d8G8ScWAs9Yfa97igelQRDl5h9tGcdFsRp+lNVre1EeQ== -twoslash-vue@^0.3.1: - version "0.3.1" - resolved "https://registry.npmjs.org/twoslash-vue/-/twoslash-vue-0.3.1.tgz" - integrity sha512-9/PS0/iL2m8G6N2ILdI18sZ8l6ex+W2nN5jIaTpfFPlnY0MOX2G5UxEVs+AuNimM9SwEnwfiIuDY9ubDCIQpSQ== +twoslash-vue@^0.3.4: + version "0.3.4" + resolved "https://registry.yarnpkg.com/twoslash-vue/-/twoslash-vue-0.3.4.tgz#9b0ecc81ddeb8322aedd725289f660102ef9c608" + integrity sha512-R9hHbmfQMAiHG2UjB0tVFanEzz0SHDa9ZSxowAQFQMPPZSUSuP0meVG2BW2O+q7NAWzya8aJh/eXtPIMX3qsxA== dependencies: - "@vue/language-core" "2.2.4" - twoslash "0.3.1" - twoslash-protocol "0.3.1" + "@vue/language-core" "^3.0.5" + twoslash "0.3.4" + twoslash-protocol "0.3.4" -twoslash@0.3.1, twoslash@^0.3.1: - version "0.3.1" - resolved "https://registry.npmjs.org/twoslash/-/twoslash-0.3.1.tgz" - integrity sha512-OGqMTGvqXTcb92YQdwGfEdK0nZJA64Aj/ChLOelbl3TfYch2IoBST0Yx4C0LQ7Lzyqm9RpgcpgDxeXQIz4p2Kg== +twoslash@0.3.4, twoslash@^0.3.4: + version "0.3.4" + resolved "https://registry.yarnpkg.com/twoslash/-/twoslash-0.3.4.tgz#fde39a59a60912d30d3d07b2b190943becf8cf75" + integrity sha512-RtJURJlGRxrkJmTcZMjpr7jdYly1rfgpujJr1sBM9ch7SKVht/SjFk23IOAyvwT1NLCk+SJiMrvW4rIAUM2Wug== dependencies: "@typescript/vfs" "^1.6.1" - twoslash-protocol "0.3.1" + twoslash-protocol "0.3.4" type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" - resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== dependencies: prelude-ls "^1.2.1" @@ -9813,22 +9833,17 @@ type-detect@^4.0.0, type-detect@^4.1.0: type-fest@^0.21.3: version "0.21.3" - resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== -type-fest@^3.8.0: - version "3.13.1" - resolved "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz" - integrity sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g== - -type-fest@^4.2.0, type-fest@^4.39.1, type-fest@^4.6.0: +type-fest@^4.39.1, type-fest@^4.6.0: version "4.41.0" - resolved "https://registry.npmjs.org/type-fest/-/type-fest-4.41.0.tgz" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-4.41.0.tgz#6ae1c8e5731273c2bf1f58ad39cbae2c91a46c58" integrity sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA== type-is@^2.0.0, type-is@^2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/type-is/-/type-is-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-2.0.1.tgz#64f6cf03f92fce4015c2b224793f6bdd4b068c97" integrity sha512-OZs6gsjF4vMp32qrCbiVSkrFmXtG/AZhY3t0iAMrMBiAZyV9oALtXO8hsrHbMXF9x6L3grlFuwW2oAz7cav+Gw== dependencies: content-type "^1.0.5" @@ -9837,7 +9852,7 @@ type-is@^2.0.0, type-is@^2.0.1: typed-array-buffer@^1.0.3: version "1.0.3" - resolved "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz" + resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz#a72395450a4869ec033fd549371b47af3a2ee536" integrity sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw== dependencies: call-bound "^1.0.3" @@ -9846,7 +9861,7 @@ typed-array-buffer@^1.0.3: typed-array-byte-length@^1.0.3: version "1.0.3" - resolved "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz" + resolved "https://registry.yarnpkg.com/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz#8407a04f7d78684f3d252aa1a143d2b77b4160ce" integrity sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg== dependencies: call-bind "^1.0.8" @@ -9857,7 +9872,7 @@ typed-array-byte-length@^1.0.3: typed-array-byte-offset@^1.0.4: version "1.0.4" - resolved "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz" + resolved "https://registry.yarnpkg.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz#ae3698b8ec91a8ab945016108aef00d5bff12355" integrity sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ== dependencies: available-typed-arrays "^1.0.7" @@ -9870,7 +9885,7 @@ typed-array-byte-offset@^1.0.4: typed-array-length@^1.0.7: version "1.0.7" - resolved "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz" + resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.7.tgz#ee4deff984b64be1e118b0de8c9c877d5ce73d3d" integrity sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg== dependencies: call-bind "^1.0.7" @@ -9882,7 +9897,7 @@ typed-array-length@^1.0.7: typed-rest-client@^1.8.4: version "1.8.11" - resolved "https://registry.npmjs.org/typed-rest-client/-/typed-rest-client-1.8.11.tgz" + resolved "https://registry.yarnpkg.com/typed-rest-client/-/typed-rest-client-1.8.11.tgz#6906f02e3c91e8d851579f255abf0fd60800a04d" integrity sha512-5UvfMpd1oelmUPRbbaVnq+rHP7ng2cE4qoQkQeAqxRL6PklkxsM0g32/HL0yfvruK6ojQ5x8EE+HF4YV6DtuCA== dependencies: qs "^6.9.1" @@ -9896,17 +9911,17 @@ typescript@^5.9.2: uc.micro@^2.0.0, uc.micro@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-2.1.0.tgz#f8d3f7d0ec4c3dea35a7e3c8efa4cb8b45c9e7ee" integrity sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A== -ufo@^1.5.4: +ufo@^1.6.1: version "1.6.1" - resolved "https://registry.npmjs.org/ufo/-/ufo-1.6.1.tgz" + resolved "https://registry.yarnpkg.com/ufo/-/ufo-1.6.1.tgz#ac2db1d54614d1b22c1d603e3aef44a85d8f146b" integrity sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA== unbox-primitive@^1.1.0: version "1.1.0" - resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.1.0.tgz#8d9d2c9edeea8460c7f35033a88867944934d1e2" integrity sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw== dependencies: call-bound "^1.0.3" @@ -9916,7 +9931,7 @@ unbox-primitive@^1.1.0: underscore@^1.12.1: version "1.13.7" - resolved "https://registry.npmjs.org/underscore/-/underscore-1.13.7.tgz" + resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.13.7.tgz#970e33963af9a7dda228f17ebe8399e5fbe63a10" integrity sha512-GMXzWtsc57XAtguZgaQViUOzs0KTkk8ojr3/xAxXLITqf/3EMwxC0inyETfDFjH/Krbhuep0HNbbjI9i/q3F3g== undici-types@~6.21.0: @@ -9929,64 +9944,59 @@ undici-types@~7.10.0: resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-7.10.0.tgz#4ac2e058ce56b462b056e629cc6a02393d3ff350" integrity sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag== -undici-types@~7.8.0: - version "7.8.0" - resolved "https://registry.npmjs.org/undici-types/-/undici-types-7.8.0.tgz" - integrity sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw== - -undici@^7.10.0: - version "7.10.0" - resolved "https://registry.npmjs.org/undici/-/undici-7.10.0.tgz" - integrity sha512-u5otvFBOBZvmdjWLVW+5DAc9Nkq8f24g0O9oY7qw2JVIF1VocIFoyz9JFkuVOS2j41AufeO0xnlweJ2RLT8nGw== +undici@^7.12.0: + version "7.15.0" + resolved "https://registry.yarnpkg.com/undici/-/undici-7.15.0.tgz#7485007549ad1782b7cab2abfaa1c1aa7b75e106" + integrity sha512-7oZJCPvvMvTd0OlqWsIxTuItTpJBpU1tcbVl24FMn3xt3+VSunwUasmfPJRE57oNO1KsZ4PgA1xTdAX4hq8NyQ== unicorn-magic@^0.1.0: version "0.1.0" - resolved "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.1.0.tgz" + resolved "https://registry.yarnpkg.com/unicorn-magic/-/unicorn-magic-0.1.0.tgz#1bb9a51c823aaf9d73a8bfcd3d1a23dde94b0ce4" integrity sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ== unicorn-magic@^0.3.0: version "0.3.0" - resolved "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.3.0.tgz" + resolved "https://registry.yarnpkg.com/unicorn-magic/-/unicorn-magic-0.3.0.tgz#4efd45c85a69e0dd576d25532fbfa22aa5c8a104" integrity sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA== unique-filename@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-3.0.0.tgz#48ba7a5a16849f5080d26c760c86cf5cf05770ea" integrity sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g== dependencies: unique-slug "^4.0.0" unique-slug@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-4.0.0.tgz#6bae6bb16be91351badd24cdce741f892a6532e3" integrity sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ== dependencies: imurmurhash "^0.1.4" unist-util-is@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz" + resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-6.0.0.tgz#b775956486aff107a9ded971d996c173374be424" integrity sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw== dependencies: "@types/unist" "^3.0.0" unist-util-position@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-5.0.0.tgz#678f20ab5ca1207a97d7ea8a388373c9cf896be4" integrity sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA== dependencies: "@types/unist" "^3.0.0" unist-util-stringify-position@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz#449c6e21a880e0855bf5aabadeb3a740314abac2" integrity sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ== dependencies: "@types/unist" "^3.0.0" unist-util-visit-parents@^6.0.0: version "6.0.1" - resolved "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz" + resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz#4d5f85755c3b8f0dc69e21eca5d6d82d22162815" integrity sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw== dependencies: "@types/unist" "^3.0.0" @@ -9994,7 +10004,7 @@ unist-util-visit-parents@^6.0.0: unist-util-visit@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-5.0.0.tgz#a7de1f31f72ffd3519ea71814cccf5fd6a9217d6" integrity sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg== dependencies: "@types/unist" "^3.0.0" @@ -10003,54 +10013,62 @@ unist-util-visit@^5.0.0: universal-user-agent@^6.0.0: version "6.0.1" - resolved "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.1.tgz" + resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.1.tgz#15f20f55da3c930c57bddbf1734c6654d5fd35aa" integrity sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ== universal-user-agent@^7.0.0, universal-user-agent@^7.0.2: version "7.0.3" - resolved "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-7.0.3.tgz" + resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-7.0.3.tgz#c05870a58125a2dc00431f2df815a77fe69736be" integrity sha512-TmnEAEAsBJVZM/AADELsK76llnwcf9vMKuPz8JflO1frO8Lchitr0fNaN9d+Ap0BjKtqWqd/J17qeDnXh8CL2A== universalify@^2.0.0: version "2.0.1" - resolved "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.1.tgz#168efc2180964e6386d061e094df61afe239b18d" integrity sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw== unpipe@1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== untildify@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/untildify/-/untildify-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/untildify/-/untildify-5.0.0.tgz#3e40c5dd67518cb8582a027b78d3c2747234f921" integrity sha512-bOgQLUnd2G5rhzaTvh1VCI9Fo6bC5cLTpH17T5aFfamyXFYDbbdzN6IXdeoc3jBS7T9hNTmJtYUzJCJ2Xlc9gA== +update-browserslist-db@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz#348377dd245216f9e7060ff50b15a1b740b75420" + integrity sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw== + dependencies: + escalade "^3.2.0" + picocolors "^1.1.1" + uri-js@^4.2.2: version "4.4.1" - resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== dependencies: punycode "^2.1.0" url-join@^4.0.1: version "4.0.1" - resolved "https://registry.npmjs.org/url-join/-/url-join-4.0.1.tgz" + resolved "https://registry.yarnpkg.com/url-join/-/url-join-4.0.1.tgz#b642e21a2646808ffa178c4c5fda39844e12cde7" integrity sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA== util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: version "1.0.2" - resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== uuid@^8.3.0: version "8.3.2" - resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== v8-to-istanbul@^9.0.0: version "9.3.0" - resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz#b9572abfa62bd556c16d75fdebc1a411d5ff3175" integrity sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA== dependencies: "@jridgewell/trace-mapping" "^0.3.12" @@ -10059,7 +10077,7 @@ v8-to-istanbul@^9.0.0: validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: version "3.0.4" - resolved "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== dependencies: spdx-correct "^3.0.0" @@ -10067,30 +10085,30 @@ validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: validate-npm-package-name@^5.0.0: version "5.0.1" - resolved "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz" + resolved "https://registry.yarnpkg.com/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz#a316573e9b49f3ccd90dbb6eb52b3f06c6d604e8" integrity sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ== vary@^1.1.2: version "1.1.2" - resolved "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== -version-range@^4.13.0: - version "4.14.0" - resolved "https://registry.npmjs.org/version-range/-/version-range-4.14.0.tgz" - integrity sha512-gjb0ARm9qlcBAonU4zPwkl9ecKkas+tC2CGwFfptTCWWIVTWY1YUbT2zZKsOAF1jR/tNxxyLwwG0cb42XlYcTg== +version-range@^4.15.0: + version "4.15.0" + resolved "https://registry.yarnpkg.com/version-range/-/version-range-4.15.0.tgz#89df1e921b14d37515aab5e42ed4ac0515cab2c1" + integrity sha512-Ck0EJbAGxHwprkzFO966t4/5QkRuzh+/I1RxhLgUKKwEn+Cd8NwM60mE3AqBZg5gYODoXW0EFsQvbZjRlvdqbg== vfile-message@^4.0.0: - version "4.0.2" - resolved "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz" - integrity sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw== + version "4.0.3" + resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-4.0.3.tgz#87b44dddd7b70f0641c2e3ed0864ba73e2ea8df4" + integrity sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw== dependencies: "@types/unist" "^3.0.0" unist-util-stringify-position "^4.0.0" vfile@^6.0.0: version "6.0.3" - resolved "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz" + resolved "https://registry.yarnpkg.com/vfile/-/vfile-6.0.3.tgz#3652ab1c496531852bf55a6bac57af981ebc38ab" integrity sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q== dependencies: "@types/unist" "^3.0.0" @@ -10098,7 +10116,7 @@ vfile@^6.0.0: vinyl-file@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/vinyl-file/-/vinyl-file-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/vinyl-file/-/vinyl-file-5.0.0.tgz#a051f79a8a0610f21ee69279be42ccfd6065d082" integrity sha512-MvkPF/yA1EX7c6p+juVIvp9+Lxp70YUfNKzEWeHMKpUNVSnTZh2coaOqLxI0pmOe2V9nB+OkgFaMDkodaJUyGw== dependencies: "@types/vinyl" "^2.0.7" @@ -10108,7 +10126,7 @@ vinyl-file@^5.0.0: vinyl@^3.0.0: version "3.0.1" - resolved "https://registry.npmjs.org/vinyl/-/vinyl-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-3.0.1.tgz#5f5ff85255bda2b5da25e4b3bd80b3fc077fb5a9" integrity sha512-0QwqXteBNXgnLCdWdvPQBX6FXRHtIH3VhJPTd5Lwn28tJXc34YqSCWUmkOvtJHBmB3gGoPtrOKk3Ts8/kEZ9aA== dependencies: clone "^2.1.2" @@ -10149,23 +10167,23 @@ vite@^5.0.0: optionalDependencies: fsevents "~2.3.3" -"vite@^5.0.0 || ^6.0.0 || ^7.0.0-0": - version "7.0.6" - resolved "https://registry.yarnpkg.com/vite/-/vite-7.0.6.tgz#7866ccb176db4bbeec0adfb3f907f077881591d0" - integrity sha512-MHFiOENNBd+Bd9uvc8GEsIzdkn1JxMmEeYX35tI3fv0sJBUTfW5tQsoaOwuY4KhBI09A3dUJ/DXf2yxPVPUceg== +"vite@^5.0.0 || ^6.0.0 || ^7.0.0-0", vite@^7.1.2: + version "7.1.3" + resolved "https://registry.yarnpkg.com/vite/-/vite-7.1.3.tgz#8d70cb02fd6346b4bf1329a6760800538ef0faea" + integrity sha512-OOUi5zjkDxYrKhTV3V7iKsoS37VUM7v40+HuwEmcrsf11Cdx9y3DIr2Px6liIcZFwt3XSRpQvFpL3WVy7ApkGw== dependencies: esbuild "^0.25.0" - fdir "^6.4.6" + fdir "^6.5.0" picomatch "^4.0.3" postcss "^8.5.6" - rollup "^4.40.0" + rollup "^4.43.0" tinyglobby "^0.2.14" optionalDependencies: fsevents "~2.3.3" -vite@^6.3.2, vite@^6.3.5: +vite@^6.3.5: version "6.3.5" - resolved "https://registry.npmjs.org/vite/-/vite-6.3.5.tgz" + resolved "https://registry.yarnpkg.com/vite/-/vite-6.3.5.tgz#fec73879013c9c0128c8d284504c6d19410d12a3" integrity sha512-cZn6NDFE7wdTpINgs++ZJ4N49W2vRp8LCKrn3Ob1kYNtOo21vfDoaV5GzBfLU4MovSAB8uNRm4jgzVQZ+mBzPQ== dependencies: esbuild "^0.25.0" @@ -10178,36 +10196,37 @@ vite@^6.3.2, vite@^6.3.5: fsevents "~2.3.3" vitepress-plugin-group-icons@^1.5.5: - version "1.5.5" - resolved "https://registry.npmjs.org/vitepress-plugin-group-icons/-/vitepress-plugin-group-icons-1.5.5.tgz" - integrity sha512-eVnBL3lVOYxByQg5xo44QZtGPv41JyxWI7YxuwrGcNUU+W8MMIjb9XlivBXb3W8CosFllJlLGiqNCBTnFZHFTA== + version "1.6.3" + resolved "https://registry.yarnpkg.com/vitepress-plugin-group-icons/-/vitepress-plugin-group-icons-1.6.3.tgz#d97dcfd7d8ebe28f1fe3e2c62cb9b311f7a8ca74" + integrity sha512-bvPD4lhraLJw3rPtLhUIVsOvNfnHnF+F1LH7BKHekEzeZ4uqdTdqnwEyaT580AoKjjT6/F8En6hVJj7takPKDA== dependencies: "@iconify-json/logos" "^1.2.4" - "@iconify-json/vscode-icons" "^1.2.18" - "@iconify/utils" "^2.3.0" + "@iconify-json/vscode-icons" "^1.2.29" + "@iconify/utils" "^3.0.0" vitepress@^2.0.0-alpha.5: - version "2.0.0-alpha.5" - resolved "https://registry.npmjs.org/vitepress/-/vitepress-2.0.0-alpha.5.tgz" - integrity sha512-fhuGpJ4CETS/lrAHjKu3m88HwesZvAjZLFeIRr9Jejmewyogn1tm2L6lsVg7PWxPmOGoMfihzl3+L6jg6hrTnA== - dependencies: - "@docsearch/css" "^3.9.0" - "@docsearch/js" "^3.9.0" - "@iconify-json/simple-icons" "^1.2.32" - "@shikijs/core" "^3.2.2" - "@shikijs/transformers" "^3.2.2" - "@shikijs/types" "^3.2.2" - "@vitejs/plugin-vue" "^5.2.3" - "@vue/devtools-api" "^7.7.5" - "@vue/shared" "^3.5.13" - "@vueuse/core" "^13.1.0" - "@vueuse/integrations" "^13.1.0" - focus-trap "^7.6.4" + version "2.0.0-alpha.12" + resolved "https://registry.yarnpkg.com/vitepress/-/vitepress-2.0.0-alpha.12.tgz#e75648eec6c43bff1d669f9a7f81f777acc6e4fd" + integrity sha512-yZwCwRRepcpN5QeAhwSnEJxS3I6zJcVixqL1dnm6km4cnriLpQyy2sXQDsE5Ti3pxGPbhU51nTMwI+XC1KNnJg== + dependencies: + "@docsearch/css" "^4.0.0-beta.7" + "@docsearch/js" "^4.0.0-beta.7" + "@iconify-json/simple-icons" "^1.2.47" + "@shikijs/core" "^3.9.2" + "@shikijs/transformers" "^3.9.2" + "@shikijs/types" "^3.9.2" + "@types/markdown-it" "^14.1.2" + "@vitejs/plugin-vue" "^6.0.1" + "@vue/devtools-api" "^8.0.0" + "@vue/shared" "^3.5.18" + "@vueuse/core" "^13.6.0" + "@vueuse/integrations" "^13.6.0" + focus-trap "^7.6.5" mark.js "8.11.1" minisearch "^7.1.2" - shiki "^3.2.2" - vite "^6.3.2" - vue "^3.5.13" + shiki "^3.9.2" + vite "^7.1.2" + vue "^3.5.18" vitest@^1.0.0: version "1.6.1" @@ -10266,7 +10285,7 @@ vitest@^3.2.4: vscode-jsonrpc@8.2.0: version "8.2.0" - resolved "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-8.2.0.tgz" + resolved "https://registry.yarnpkg.com/vscode-jsonrpc/-/vscode-jsonrpc-8.2.0.tgz#f43dfa35fb51e763d17cd94dcca0c9458f35abf9" integrity sha512-C+r0eKJUIfiDIfwJhria30+TYWPtuHJXHtI7J0YlOmKAo7ogxP20T0zxB7HZQIFhIyvoBPwWskjxrvAtfjyZfA== vscode-languageclient@^9.0.1: @@ -10280,7 +10299,7 @@ vscode-languageclient@^9.0.1: vscode-languageserver-protocol@3.17.5: version "3.17.5" - resolved "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.5.tgz" + resolved "https://registry.yarnpkg.com/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.5.tgz#864a8b8f390835572f4e13bd9f8313d0e3ac4bea" integrity sha512-mb1bvRJN8SVznADSGWM9u/b07H7Ecg0I3OgXDuLdn307rl/J3A9YD6/eYOssqhecL27hK1IPZAsaqh00i/Jljg== dependencies: vscode-jsonrpc "8.2.0" @@ -10288,52 +10307,52 @@ vscode-languageserver-protocol@3.17.5: vscode-languageserver-textdocument@^1.0.12: version "1.0.12" - resolved "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.12.tgz" + resolved "https://registry.yarnpkg.com/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.12.tgz#457ee04271ab38998a093c68c2342f53f6e4a631" integrity sha512-cxWNPesCnQCcMPeenjKKsOCKQZ/L6Tv19DTRIGuLWe32lyzWhihGVJ/rcckZXJxfdKCFvRLS3fpBIsV/ZGX4zA== vscode-languageserver-types@3.17.5: version "3.17.5" - resolved "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.5.tgz" + resolved "https://registry.yarnpkg.com/vscode-languageserver-types/-/vscode-languageserver-types-3.17.5.tgz#3273676f0cf2eab40b3f44d085acbb7f08a39d8a" integrity sha512-Ld1VelNuX9pdF39h2Hgaeb5hEZM2Z3jUrrMgWQAu82jMtZp7p3vJT3BzToKtZI7NgQssZje5o0zryOrhQvzQAg== vscode-languageserver@^9.0.1: version "9.0.1" - resolved "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-9.0.1.tgz" + resolved "https://registry.yarnpkg.com/vscode-languageserver/-/vscode-languageserver-9.0.1.tgz#500aef82097eb94df90d008678b0b6b5f474015b" integrity sha512-woByF3PDpkHFUreUa7Hos7+pUWdeWMXRd26+ZX2A8cFx6v/JPTtd4/uN0/jB6XQHYaOlHbio03NTHCqrgG5n7g== dependencies: vscode-languageserver-protocol "3.17.5" vue-resize@^2.0.0-alpha.1: version "2.0.0-alpha.1" - resolved "https://registry.npmjs.org/vue-resize/-/vue-resize-2.0.0-alpha.1.tgz" + resolved "https://registry.yarnpkg.com/vue-resize/-/vue-resize-2.0.0-alpha.1.tgz#43eeb79e74febe932b9b20c5c57e0ebc14e2df3a" integrity sha512-7+iqOueLU7uc9NrMfrzbG8hwMqchfVfSzpVlCMeJQe4pyibqyoifDNbKTZvwxZKDvGkB+PdFeKvnGZMoEb8esg== -vue@^3.5.13, vue@^3.5.14: - version "3.5.16" - resolved "https://registry.npmjs.org/vue/-/vue-3.5.16.tgz" - integrity sha512-rjOV2ecxMd5SiAmof2xzh2WxntRcigkX/He4YFJ6WdRvVUrbt6DxC1Iujh10XLl8xCDRDtGKMeO3D+pRQ1PP9w== +vue@^3.5.18, vue@^3.5.20: + version "3.5.20" + resolved "https://registry.yarnpkg.com/vue/-/vue-3.5.20.tgz#855c3f4c0a1260abc894f729c3ffb6cb687d0d34" + integrity sha512-2sBz0x/wis5TkF1XZ2vH25zWq3G1bFEPOfkBcx2ikowmphoQsPH6X0V3mmPCXA2K1N/XGTnifVyDQP4GfDDeQw== dependencies: - "@vue/compiler-dom" "3.5.16" - "@vue/compiler-sfc" "3.5.16" - "@vue/runtime-dom" "3.5.16" - "@vue/server-renderer" "3.5.16" - "@vue/shared" "3.5.16" + "@vue/compiler-dom" "3.5.20" + "@vue/compiler-sfc" "3.5.20" + "@vue/runtime-dom" "3.5.20" + "@vue/server-renderer" "3.5.20" + "@vue/shared" "3.5.20" walk-up-path@^3.0.1: version "3.0.1" - resolved "https://registry.npmjs.org/walk-up-path/-/walk-up-path-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/walk-up-path/-/walk-up-path-3.0.1.tgz#c8d78d5375b4966c717eb17ada73dbd41490e886" integrity sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA== wcwidth@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz" + resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" integrity sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg== dependencies: defaults "^1.0.3" webidl-conversions@^3.0.0: version "3.0.1" - resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== webidl-conversions@^4.0.2: @@ -10343,19 +10362,19 @@ webidl-conversions@^4.0.2: whatwg-encoding@^3.1.1: version "3.1.1" - resolved "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz" + resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz#d0f4ef769905d426e1688f3e34381a99b60b76e5" integrity sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ== dependencies: iconv-lite "0.6.3" whatwg-mimetype@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz#bc1bf94a985dc50388d54a9258ac405c3ca2fc0a" integrity sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg== whatwg-url@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== dependencies: tr46 "~0.0.3" @@ -10372,7 +10391,7 @@ whatwg-url@^7.0.0: which-boxed-primitive@^1.1.0, which-boxed-primitive@^1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz" + resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz#d76ec27df7fa165f18d5808374a5fe23c29b176e" integrity sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA== dependencies: is-bigint "^1.1.0" @@ -10383,7 +10402,7 @@ which-boxed-primitive@^1.1.0, which-boxed-primitive@^1.1.1: which-builtin-type@^1.2.1: version "1.2.1" - resolved "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz" + resolved "https://registry.yarnpkg.com/which-builtin-type/-/which-builtin-type-1.2.1.tgz#89183da1b4907ab089a6b02029cc5d8d6574270e" integrity sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q== dependencies: call-bound "^1.0.2" @@ -10402,7 +10421,7 @@ which-builtin-type@^1.2.1: which-collection@^1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/which-collection/-/which-collection-1.0.2.tgz#627ef76243920a107e7ce8e96191debe4b16c2a0" integrity sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw== dependencies: is-map "^2.0.3" @@ -10412,7 +10431,7 @@ which-collection@^1.0.2: which-package-manager@^0.0.1: version "0.0.1" - resolved "https://registry.npmjs.org/which-package-manager/-/which-package-manager-0.0.1.tgz" + resolved "https://registry.yarnpkg.com/which-package-manager/-/which-package-manager-0.0.1.tgz#90cd7da6bdc5944a897f4e418ab6659b27299efd" integrity sha512-a+bCExXd8OdYky5J59nimHxTCRPhxZSQtwKh3Ew6lpC4oY9f3KH77XDxcPrComVhSEPtvMjZigS2vZgZfgJuxA== dependencies: execa "^7.1.1" @@ -10421,7 +10440,7 @@ which-package-manager@^0.0.1: which-typed-array@^1.1.16, which-typed-array@^1.1.19: version "1.1.19" - resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz" + resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.19.tgz#df03842e870b6b88e117524a4b364b6fc689f956" integrity sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw== dependencies: available-typed-arrays "^1.0.7" @@ -10434,28 +10453,28 @@ which-typed-array@^1.1.16, which-typed-array@^1.1.19: which@^1.2.9: version "1.3.1" - resolved "https://registry.npmjs.org/which/-/which-1.3.1.tgz" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== dependencies: isexe "^2.0.0" which@^2.0.1: version "2.0.2" - resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: isexe "^2.0.0" which@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/which/-/which-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/which/-/which-4.0.0.tgz#cd60b5e74503a3fbcfbf6cd6b4138a8bae644c1a" integrity sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg== dependencies: isexe "^3.1.1" why-is-node-running@^2.2.2, why-is-node-running@^2.3.0: version "2.3.0" - resolved "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.3.0.tgz" + resolved "https://registry.yarnpkg.com/why-is-node-running/-/why-is-node-running-2.3.0.tgz#a3f69a97107f494b3cdc3bdddd883a7d65cebf04" integrity sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w== dependencies: siginfo "^2.0.0" @@ -10463,17 +10482,17 @@ why-is-node-running@^2.2.2, why-is-node-running@^2.3.0: word-wrap@^1.2.5: version "1.2.5" - resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz" + resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== workerpool@^6.5.1: version "6.5.1" - resolved "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz" + resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.5.1.tgz#060f73b39d0caf97c6db64da004cd01b4c099544" integrity sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA== "wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": version "7.0.0" - resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== dependencies: ansi-styles "^4.0.0" @@ -10482,7 +10501,7 @@ workerpool@^6.5.1: wrap-ansi@^6.2.0: version "6.2.0" - resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== dependencies: ansi-styles "^4.0.0" @@ -10500,7 +10519,7 @@ wrap-ansi@^7.0.0: wrap-ansi@^8.1.0: version "8.1.0" - resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== dependencies: ansi-styles "^6.1.0" @@ -10509,7 +10528,7 @@ wrap-ansi@^8.1.0: wrappy@1: version "1.0.2" - resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== write-file-atomic@^5.0.0: @@ -10525,9 +10544,16 @@ ws@^8.18.2: resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.3.tgz#b56b88abffde62791c639170400c93dcb0c95472" integrity sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg== +wsl-utils@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/wsl-utils/-/wsl-utils-0.1.0.tgz#8783d4df671d4d50365be2ee4c71917a0557baab" + integrity sha512-h3Fbisa2nKGPxCpm89Hk33lBLsnaGBvctQopaBSOW/uIs6FTe1ATyAnKFJrzVs9vpGdsTe73WF3V4lIsk4Gacw== + dependencies: + is-wsl "^3.1.0" + xml2js@^0.5.0: version "0.5.0" - resolved "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz" + resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.5.0.tgz#d9440631fbb2ed800203fad106f2724f62c493b7" integrity sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA== dependencies: sax ">=0.6.0" @@ -10535,7 +10561,7 @@ xml2js@^0.5.0: xmlbuilder@~11.0.0: version "11.0.1" - resolved "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz" + resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3" integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA== y18n@^5.0.5: @@ -10545,42 +10571,37 @@ y18n@^5.0.5: yallist@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== yallist@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-5.0.0.tgz#00e2de443639ed0d78fd87de0d27469fbcffb533" integrity sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw== -yaml@^2.3.4: +yaml@^1.10.2: + version "1.10.2" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" + integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== + +yaml@^2.3.4, yaml@^2.6.0, yaml@^2.8.0: version "2.8.1" resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.8.1.tgz#1870aa02b631f7e8328b93f8bc574fac5d6c4d79" integrity sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw== -yaml@^2.6.0: - version "2.7.0" - resolved "https://registry.npmjs.org/yaml/-/yaml-2.7.0.tgz" - integrity sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA== - -yaml@^2.8.0: - version "2.8.0" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.8.0.tgz#15f8c9866211bdc2d3781a0890e44d4fa1a5fff6" - integrity sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ== - yargs-parser@21.1.1, yargs-parser@^21.1.1: version "21.1.1" - resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== yargs-parser@^20.2.2, yargs-parser@^20.2.9: version "20.2.9" - resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== yargs-unparser@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-2.0.0.tgz#f131f9226911ae5d9ad38c432fe809366c2325eb" integrity sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA== dependencies: camelcase "^6.0.0" @@ -10588,35 +10609,35 @@ yargs-unparser@^2.0.0: flat "^5.0.2" is-plain-obj "^2.1.0" -yargs@^16.2.0: - version "16.2.0" - resolved "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz" - integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== +yargs@17.7.2, yargs@^17.6.2, yargs@^17.7.2: + version "17.7.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269" + integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w== dependencies: - cliui "^7.0.2" + cliui "^8.0.1" escalade "^3.1.1" get-caller-file "^2.0.5" require-directory "^2.1.1" - string-width "^4.2.0" + string-width "^4.2.3" y18n "^5.0.5" - yargs-parser "^20.2.2" + yargs-parser "^21.1.1" -yargs@^17.6.2, yargs@^17.7.2: - version "17.7.2" - resolved "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz" - integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w== +yargs@^16.2.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== dependencies: - cliui "^8.0.1" + cliui "^7.0.2" escalade "^3.1.1" get-caller-file "^2.0.5" require-directory "^2.1.1" - string-width "^4.2.3" + string-width "^4.2.0" y18n "^5.0.5" - yargs-parser "^21.1.1" + yargs-parser "^20.2.2" yauzl@^2.3.1: version "2.10.0" - resolved "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz" + resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" integrity sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g== dependencies: buffer-crc32 "~0.2.3" @@ -10624,14 +10645,14 @@ yauzl@^2.3.1: yazl@^2.2.2: version "2.5.1" - resolved "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz" + resolved "https://registry.yarnpkg.com/yazl/-/yazl-2.5.1.tgz#a3d65d3dd659a5b0937850e8609f22fffa2b5c35" integrity sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw== dependencies: buffer-crc32 "~0.2.3" yeoman-environment@^4.4.1: version "4.4.3" - resolved "https://registry.npmjs.org/yeoman-environment/-/yeoman-environment-4.4.3.tgz" + resolved "https://registry.yarnpkg.com/yeoman-environment/-/yeoman-environment-4.4.3.tgz#37121fcad4f77075445e5c1881b74eded3821b15" integrity sha512-Irk6rymmb9vNZRhQlg8LUDeopnEot2VGlP4VayTNjayfQ3nFbiINTIjZqrtHrQdw29nTxYVOAsYy98jL1p27QQ== dependencies: "@yeoman/adapter" "^1.4.0" @@ -10658,7 +10679,7 @@ yeoman-environment@^4.4.1: yeoman-generator@^7.1.1: version "7.5.1" - resolved "https://registry.npmjs.org/yeoman-generator/-/yeoman-generator-7.5.1.tgz" + resolved "https://registry.yarnpkg.com/yeoman-generator/-/yeoman-generator-7.5.1.tgz#3354691050ca0fbb337e68bfeb21dc247395fa5c" integrity sha512-MYncRvzSTd71BMwiUMAVhfX00sDD8DZDrmPzRxQkWuWQ0V1Qt4Rd0gS/Nee2QDTWvRjvCa+KBfiAVrtOySq+JA== dependencies: "@types/lodash-es" "^4.17.9" @@ -10680,25 +10701,25 @@ yeoman-generator@^7.1.1: yocto-queue@^0.1.0: version "0.1.0" - resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== yocto-queue@^1.0.0: version "1.2.1" - resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.2.1.tgz" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-1.2.1.tgz#36d7c4739f775b3cbc28e6136e21aa057adec418" integrity sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg== yoctocolors-cjs@^2.1.2: - version "2.1.2" - resolved "https://registry.npmjs.org/yoctocolors-cjs/-/yoctocolors-cjs-2.1.2.tgz" - integrity sha512-cYVsTjKl8b+FrnidjibDWskAv7UKOfcwaVZdp/it9n1s9fU3IkgDbhdIRKCW4JDsAlECJY0ytoVPT3sK6kideA== + version "2.1.3" + resolved "https://registry.yarnpkg.com/yoctocolors-cjs/-/yoctocolors-cjs-2.1.3.tgz#7e4964ea8ec422b7a40ac917d3a344cfd2304baa" + integrity sha512-U/PBtDf35ff0D8X8D0jfdzHYEPFxAI7jJlxZXwCSez5M3190m+QobIfh+sWDWSHMCWWJN2AWamkegn6vr6YBTw== yoctocolors@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/yoctocolors/-/yoctocolors-2.1.1.tgz" - integrity sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ== + version "2.1.2" + resolved "https://registry.yarnpkg.com/yoctocolors/-/yoctocolors-2.1.2.tgz#d795f54d173494e7d8db93150cec0ed7f678c83a" + integrity sha512-CzhO+pFNo8ajLM2d2IW/R93ipy99LWjtwblvC1RsoSUMZgyLbYFr221TnSNT7GjGdYui6P459mw9JH/g/zW2ug== zwitch@^2.0.0, zwitch@^2.0.4: version "2.0.4" - resolved "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz" + resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-2.0.4.tgz#c827d4b0acb76fc3e685a4c6ec2902d51070e9d7" integrity sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==