From 702281c6cf981f4c60452c4fb4660a3aee3d5da7 Mon Sep 17 00:00:00 2001 From: Evan Reichard Date: Fri, 6 Feb 2026 16:00:51 -0500 Subject: [PATCH] feat: implement WYSIWYG markdown editor with Go backend and React frontend - Backend: Go HTTP server with Cobra CLI (--data-dir, --port, --host flags) - CRUD REST API for markdown files with JSON error responses - File storage in flat directory structure (flat structure, .md files only) - Comprehensive logrus logging for all operations - Static file serving for frontend build (./frontend/dist) - Frontend: React + TypeScript + Tailwind CSS - Markdown editor with live GFM preview - File management: list, create, open, save, delete - Theme system (Dark, Light, System) with persistence - Responsive design for desktop and mobile - Backend tests (storage, API handlers) and frontend tests --- .gitignore | 2 + Makefile | 26 + cmd/root.go | 100 + frontend/dist/assets/index-IEmHo4ub.css | 1 + frontend/dist/assets/index-PGya2Dnr.js | 79 + frontend/dist/index.html | 13 + frontend/index.html | 12 + frontend/package-lock.json | 4504 +++++++++++++++++++++++ frontend/package.json | 29 + frontend/postcss.config.js | 6 + frontend/src/App.test.tsx | 7 + frontend/src/App.tsx | 274 ++ frontend/src/index.css | 20 + frontend/src/main.tsx | 10 + frontend/tailwind.config.js | 10 + frontend/tsconfig.json | 24 + frontend/tsconfig.node.json | 11 + frontend/vite.config.ts | 15 + go.mod | 14 + go.sum | 24 + internal/api/handlers.go | 253 ++ internal/api/handlers_test.go | 380 ++ internal/config/config.go | 54 + internal/storage/storage.go | 176 + internal/storage/storage_test.go | 237 ++ main.go | 9 + 26 files changed, 6290 insertions(+) create mode 100644 .gitignore create mode 100644 Makefile create mode 100644 cmd/root.go create mode 100644 frontend/dist/assets/index-IEmHo4ub.css create mode 100644 frontend/dist/assets/index-PGya2Dnr.js create mode 100644 frontend/dist/index.html create mode 100644 frontend/index.html create mode 100644 frontend/package-lock.json create mode 100644 frontend/package.json create mode 100644 frontend/postcss.config.js create mode 100644 frontend/src/App.test.tsx create mode 100644 frontend/src/App.tsx create mode 100644 frontend/src/index.css create mode 100644 frontend/src/main.tsx create mode 100644 frontend/tailwind.config.js create mode 100644 frontend/tsconfig.json create mode 100644 frontend/tsconfig.node.json create mode 100644 frontend/vite.config.ts create mode 100644 go.mod create mode 100644 go.sum create mode 100644 internal/api/handlers.go create mode 100644 internal/api/handlers_test.go create mode 100644 internal/config/config.go create mode 100644 internal/storage/storage.go create mode 100644 internal/storage/storage_test.go create mode 100644 main.go diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ad5512e --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +frontend/node_modules +eval diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..fa6c23a --- /dev/null +++ b/Makefile @@ -0,0 +1,26 @@ +.PHONY: all build test frontend backend frontend-build backend-test + +all: build + +build: backend frontend-build + @echo "Build complete" + +test: backend-test frontend-test + +backend: + go build -o eval ./cmd + +backend-test: + go test ./internal/storage ./internal/api -v + +frontend: + npm --prefix frontend install + +frontend-build: + npm --prefix frontend run build + +frontend-test: + npm --prefix frontend run test + +frontend-dev: + npm --prefix frontend run dev diff --git a/cmd/root.go b/cmd/root.go new file mode 100644 index 0000000..f81e740 --- /dev/null +++ b/cmd/root.go @@ -0,0 +1,100 @@ +package cmd + +import ( + "fmt" + "os" + "path/filepath" + + "eval/internal/api" + "eval/internal/config" + "eval/internal/storage" + "github.com/sirupsen/logrus" + "github.com/spf13/cobra" +) + +var ( + cfg = config.NewConfig() +) + +var rootCmd = &cobra.Command{ + Use: "eval", + Short: "WYSIWYG Markdown Editor Server", + Long: `Eval is a markdown editor with preview featuring Go backend and React frontend.`, + Run: func(cmd *cobra.Command, args []string) { + runServer(cmd) + }, +} + +func init() { + cfg.AddFlags(rootCmd) + rootCmd.PersistentFlags().String("log-level", "info", "Log level (debug, info, warn, error)") +} + +func runServer(cmd *cobra.Command) { + // Initialize logger + logger := logrus.New() + logger.SetFormatter(&logrus.TextFormatter{ + FullTimestamp: true, + }) + logLevel, _ := cmd.Flags().GetString("log-level") + if logLevel != "" { + level, err := logrus.ParseLevel(logLevel) + if err != nil { + logger.Warnf("invalid log level: %v, using info", err) + level = logrus.InfoLevel + } + logger.SetLevel(level) + } + + // Validate config + if err := cfg.Validate(); err != nil { + logger.Fatalf("invalid configuration: %v", err) + } + + // Ensure data directory exists + if err := cfg.EnsureDataDir(); err != nil { + logger.Fatalf("failed to create data directory: %v", err) + } + logger.Infof("using data directory: %s", cfg.DataDirPath()) + + // Initialize storage + store := storage.NewStorage(cfg.DataDirPath()) + + // Initialize API handlers + handlers := api.NewHandlers(store, cfg, logger) + + // Determine build directory (check both build and dist) + buildDir := "./frontend/build" + distDir := "./frontend/dist" + + if _, err := os.Stat(buildDir); os.IsNotExist(err) { + if _, err := os.Stat(distDir); err == nil { + buildDir = distDir + } + } + + if rel, err := filepath.Rel(cfg.DataDirPath(), buildDir); err == nil { + buildDir = rel + } + logger.Infof("serving static files from: %s", buildDir) + + // Setup routes + router, err := handlers.SetupRoutes(buildDir) + if err != nil { + logger.Fatalf("failed to setup routes: %v", err) + } + + // Start server + if err := handlers.StartServer(router); err != nil { + logger.Fatalf("server error: %v", err) + } +} + +// Execute starts the root command +// This is called from main.go in the main package +func Execute() { + if err := rootCmd.Execute(); err != nil { + fmt.Fprintln(os.Stderr, err) + os.Exit(1) + } +} \ No newline at end of file diff --git a/frontend/dist/assets/index-IEmHo4ub.css b/frontend/dist/assets/index-IEmHo4ub.css new file mode 100644 index 0000000..be01443 --- /dev/null +++ b/frontend/dist/assets/index-IEmHo4ub.css @@ -0,0 +1 @@ +*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.mx-auto{margin-left:auto;margin-right:auto}.flex{display:flex}.h-full{height:100%}.h-screen{height:100vh}.w-64{width:16rem}.w-full{width:100%}.max-w-4xl{max-width:56rem}.max-w-7xl{max-width:80rem}.max-w-none{max-width:none}.flex-1{flex:1 1 0%}.resize-none{resize:none}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.border-b{border-bottom-width:1px}.border-r{border-right-width:1px}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-4{padding-top:1rem;padding-bottom:1rem}.text-left{text-align:left}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-bold{font-weight:700}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5;color:#333;background:#fff}#root{min-height:100vh}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.hover\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.hover\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}@media (prefers-color-scheme: dark){.dark\:border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.dark\:bg-blue-900\/20{background-color:#1e3a8a33}.dark\:bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.dark\:text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.dark\:text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.dark\:text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.dark\:text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.dark\:text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.dark\:hover\:bg-gray-800:hover{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.dark\:hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}} diff --git a/frontend/dist/assets/index-PGya2Dnr.js b/frontend/dist/assets/index-PGya2Dnr.js new file mode 100644 index 0000000..46ed4ac --- /dev/null +++ b/frontend/dist/assets/index-PGya2Dnr.js @@ -0,0 +1,79 @@ +(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))l(i);new MutationObserver(i=>{for(const a of i)if(a.type==="childList")for(const u of a.addedNodes)u.tagName==="LINK"&&u.rel==="modulepreload"&&l(u)}).observe(document,{childList:!0,subtree:!0});function n(i){const a={};return i.integrity&&(a.integrity=i.integrity),i.referrerPolicy&&(a.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?a.credentials="include":i.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function l(i){if(i.ep)return;i.ep=!0;const a=n(i);fetch(i.href,a)}})();var iu=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Hu(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var hm={exports:{}},ju={};/** + * @license React + * react-jsx-runtime.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var wy=Symbol.for("react.transitional.element"),Dy=Symbol.for("react.fragment");function mm(t,e,n){var l=null;if(n!==void 0&&(l=""+n),e.key!==void 0&&(l=""+e.key),"key"in e){n={};for(var i in e)i!=="key"&&(n[i]=e[i])}else n=e;return e=n.ref,{$$typeof:wy,type:t,key:l,ref:e!==void 0?e:null,props:n}}ju.Fragment=Dy;ju.jsx=mm;ju.jsxs=mm;hm.exports=ju;var X=hm.exports,pm={exports:{}},Y={};/** + * @license React + * react.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var yo=Symbol.for("react.transitional.element"),_y=Symbol.for("react.portal"),Oy=Symbol.for("react.fragment"),My=Symbol.for("react.strict_mode"),Ny=Symbol.for("react.profiler"),Ry=Symbol.for("react.consumer"),Uy=Symbol.for("react.context"),Ly=Symbol.for("react.forward_ref"),By=Symbol.for("react.suspense"),Hy=Symbol.for("react.memo"),dm=Symbol.for("react.lazy"),jy=Symbol.for("react.activity"),Vs=Symbol.iterator;function qy(t){return t===null||typeof t!="object"?null:(t=Vs&&t[Vs]||t["@@iterator"],typeof t=="function"?t:null)}var gm={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},ym=Object.assign,bm={};function Pl(t,e,n){this.props=t,this.context=e,this.refs=bm,this.updater=n||gm}Pl.prototype.isReactComponent={};Pl.prototype.setState=function(t,e){if(typeof t!="object"&&typeof t!="function"&&t!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,t,e,"setState")};Pl.prototype.forceUpdate=function(t){this.updater.enqueueForceUpdate(this,t,"forceUpdate")};function vm(){}vm.prototype=Pl.prototype;function bo(t,e,n){this.props=t,this.context=e,this.refs=bm,this.updater=n||gm}var vo=bo.prototype=new vm;vo.constructor=bo;ym(vo,Pl.prototype);vo.isPureReactComponent=!0;var Gs=Array.isArray;function cc(){}var dt={H:null,A:null,T:null,S:null},Sm=Object.prototype.hasOwnProperty;function So(t,e,n){var l=n.ref;return{$$typeof:yo,type:t,key:e,ref:l!==void 0?l:null,props:n}}function Yy(t,e){return So(t.type,e,t.props)}function xo(t){return typeof t=="object"&&t!==null&&t.$$typeof===yo}function Vy(t){var e={"=":"=0",":":"=2"};return"$"+t.replace(/[=:]/g,function(n){return e[n]})}var Xs=/\/+/g;function sr(t,e){return typeof t=="object"&&t!==null&&t.key!=null?Vy(""+t.key):e.toString(36)}function Gy(t){switch(t.status){case"fulfilled":return t.value;case"rejected":throw t.reason;default:switch(typeof t.status=="string"?t.then(cc,cc):(t.status="pending",t.then(function(e){t.status==="pending"&&(t.status="fulfilled",t.value=e)},function(e){t.status==="pending"&&(t.status="rejected",t.reason=e)})),t.status){case"fulfilled":return t.value;case"rejected":throw t.reason}}throw t}function yl(t,e,n,l,i){var a=typeof t;(a==="undefined"||a==="boolean")&&(t=null);var u=!1;if(t===null)u=!0;else switch(a){case"bigint":case"string":case"number":u=!0;break;case"object":switch(t.$$typeof){case yo:case _y:u=!0;break;case dm:return u=t._init,yl(u(t._payload),e,n,l,i)}}if(u)return i=i(t),u=l===""?"."+sr(t,0):l,Gs(i)?(n="",u!=null&&(n=u.replace(Xs,"$&/")+"/"),yl(i,e,n,"",function(o){return o})):i!=null&&(xo(i)&&(i=Yy(i,n+(i.key==null||t&&t.key===i.key?"":(""+i.key).replace(Xs,"$&/")+"/")+u)),e.push(i)),1;u=0;var r=l===""?".":l+":";if(Gs(t))for(var c=0;c>>1,b=_[P];if(0>>1;Pi(v,H))Cti(de,v)?(_[P]=de,_[Ct]=H,P=Ct):(_[P]=v,_[Zt]=H,P=Zt);else if(Cti(de,H))_[P]=de,_[Ct]=H,P=Ct;else break t}}return L}function i(_,L){var H=_.sortIndex-L.sortIndex;return H!==0?H:_.id-L.id}if(t.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var a=performance;t.unstable_now=function(){return a.now()}}else{var u=Date,r=u.now();t.unstable_now=function(){return u.now()-r}}var c=[],o=[],f=1,s=null,m=3,h=!1,g=!1,S=!1,k=!1,p=typeof setTimeout=="function"?setTimeout:null,d=typeof clearTimeout=="function"?clearTimeout:null,y=typeof setImmediate<"u"?setImmediate:null;function E(_){for(var L=n(o);L!==null;){if(L.callback===null)l(o);else if(L.startTime<=_)l(o),L.sortIndex=L.expirationTime,e(c,L);else break;L=n(o)}}function w(_){if(S=!1,E(_),!g)if(n(c)!==null)g=!0,T||(T=!0,U());else{var L=n(o);L!==null&&Q(w,L.startTime-_)}}var T=!1,C=-1,M=5,N=-1;function x(){return k?!0:!(t.unstable_now()-N_&&x());){var P=s.callback;if(typeof P=="function"){s.callback=null,m=s.priorityLevel;var b=P(s.expirationTime<=_);if(_=t.unstable_now(),typeof b=="function"){s.callback=b,E(_),L=!0;break e}s===n(c)&&l(c),E(_)}else l(c);s=n(c)}if(s!==null)L=!0;else{var jt=n(o);jt!==null&&Q(w,jt.startTime-_),L=!1}}break t}finally{s=null,m=H,h=!1}L=void 0}}finally{L?U():T=!1}}}var U;if(typeof y=="function")U=function(){y(R)};else if(typeof MessageChannel<"u"){var nt=new MessageChannel,ht=nt.port2;nt.port1.onmessage=R,U=function(){ht.postMessage(null)}}else U=function(){p(R,0)};function Q(_,L){C=p(function(){_(t.unstable_now())},L)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(_){_.callback=null},t.unstable_forceFrameRate=function(_){0>_||125<_?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):M=0<_?Math.floor(1e3/_):5},t.unstable_getCurrentPriorityLevel=function(){return m},t.unstable_next=function(_){switch(m){case 1:case 2:case 3:var L=3;break;default:L=m}var H=m;m=L;try{return _()}finally{m=H}},t.unstable_requestPaint=function(){k=!0},t.unstable_runWithPriority=function(_,L){switch(_){case 1:case 2:case 3:case 4:case 5:break;default:_=3}var H=m;m=_;try{return L()}finally{m=H}},t.unstable_scheduleCallback=function(_,L,H){var P=t.unstable_now();switch(typeof H=="object"&&H!==null?(H=H.delay,H=typeof H=="number"&&0P?(_.sortIndex=H,e(o,_),n(c)===null&&_===n(o)&&(S?(d(C),C=-1):S=!0,Q(w,H-P))):(_.sortIndex=b,e(c,_),g||h||(g=!0,T||(T=!0,U()))),_},t.unstable_shouldYield=x,t.unstable_wrapCallback=function(_){var L=m;return function(){var H=m;m=L;try{return _.apply(this,arguments)}finally{m=H}}}})(Tm);Em.exports=Tm;var Ky=Em.exports,km={exports:{}},Qt={};/** + * @license React + * react-dom.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var Fy=Ne;function zm(t){var e="https://react.dev/errors/"+t;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(Am)}catch(t){console.error(t)}}Am(),km.exports=Qt;var $y=km.exports;/** + * @license React + * react-dom-client.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var Dt=Ky,Cm=Ne,Wy=$y;function A(t){var e="https://react.dev/errors/"+t;if(1El||(t.current=pc[El],pc[El]=null,El--)}function ft(t,e){El++,pc[El]=t.current,t.current=e}var Be=He(null),Gi=He(null),kn=He(null),au=He(null);function uu(t,e){switch(ft(kn,e),ft(Gi,t),ft(Be,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?th(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=th(e),t=Pd(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}Mt(Be),ft(Be,t)}function Yl(){Mt(Be),Mt(Gi),Mt(kn)}function dc(t){t.memoizedState!==null&&ft(au,t);var e=Be.current,n=Pd(e,t.type);e!==n&&(ft(Gi,t),ft(Be,n))}function ru(t){Gi.current===t&&(Mt(Be),Mt(Gi)),au.current===t&&(Mt(au),ta._currentValue=Fn)}var fr,Fs;function Gn(t){if(fr===void 0)try{throw Error()}catch(n){var e=n.stack.trim().match(/\n( *(at )?)/);fr=e&&e[1]||"",Fs=-1)":-1i||c[l]!==o[i]){var f=` +`+c[l].replace(" at new "," at ");return t.displayName&&f.includes("")&&(f=f.replace("",t.displayName)),f}while(1<=l&&0<=i);break}}}finally{hr=!1,Error.prepareStackTrace=n}return(n=t?t.displayName||t.name:"")?Gn(n):""}function l1(t,e){switch(t.tag){case 26:case 27:case 5:return Gn(t.type);case 16:return Gn("Lazy");case 13:return t.child!==e&&e!==null?Gn("Suspense Fallback"):Gn("Suspense");case 19:return Gn("SuspenseList");case 0:case 15:return mr(t.type,!1);case 11:return mr(t.type.render,!1);case 1:return mr(t.type,!0);case 31:return Gn("Activity");default:return""}}function Js(t){try{var e="",n=null;do e+=l1(t,n),n=t,t=t.return;while(t);return e}catch(l){return` +Error generating stack: `+l.message+` +`+l.stack}}var gc=Object.prototype.hasOwnProperty,ko=Dt.unstable_scheduleCallback,pr=Dt.unstable_cancelCallback,i1=Dt.unstable_shouldYield,a1=Dt.unstable_requestPaint,ce=Dt.unstable_now,u1=Dt.unstable_getCurrentPriorityLevel,Rm=Dt.unstable_ImmediatePriority,Um=Dt.unstable_UserBlockingPriority,cu=Dt.unstable_NormalPriority,r1=Dt.unstable_LowPriority,Lm=Dt.unstable_IdlePriority,c1=Dt.log,o1=Dt.unstable_setDisableYieldValue,ua=null,oe=null;function vn(t){if(typeof c1=="function"&&o1(t),oe&&typeof oe.setStrictMode=="function")try{oe.setStrictMode(ua,t)}catch{}}var se=Math.clz32?Math.clz32:h1,s1=Math.log,f1=Math.LN2;function h1(t){return t>>>=0,t===0?32:31-(s1(t)/f1|0)|0}var Ta=256,ka=262144,za=4194304;function Xn(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function Vu(t,e,n){var l=t.pendingLanes;if(l===0)return 0;var i=0,a=t.suspendedLanes,u=t.pingedLanes;t=t.warmLanes;var r=l&134217727;return r!==0?(l=r&~a,l!==0?i=Xn(l):(u&=r,u!==0?i=Xn(u):n||(n=r&~t,n!==0&&(i=Xn(n))))):(r=l&~a,r!==0?i=Xn(r):u!==0?i=Xn(u):n||(n=l&~t,n!==0&&(i=Xn(n)))),i===0?0:e!==0&&e!==i&&!(e&a)&&(a=i&-i,n=e&-e,a>=n||a===32&&(n&4194048)!==0)?e:i}function ra(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function m1(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Bm(){var t=za;return za<<=1,!(za&62914560)&&(za=4194304),t}function dr(t){for(var e=[],n=0;31>n;n++)e.push(t);return e}function ca(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function p1(t,e,n,l,i,a){var u=t.pendingLanes;t.pendingLanes=n,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=n,t.entangledLanes&=n,t.errorRecoveryDisabledLanes&=n,t.shellSuspendCounter=0;var r=t.entanglements,c=t.expirationTimes,o=t.hiddenUpdates;for(n=u&~n;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var S1=/[\n"\\]/g;function xe(t){return t.replace(S1,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function vc(t,e,n,l,i,a,u,r){t.name="",u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"?t.type=u:t.removeAttribute("type"),e!=null?u==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+ye(e)):t.value!==""+ye(e)&&(t.value=""+ye(e)):u!=="submit"&&u!=="reset"||t.removeAttribute("value"),e!=null?Sc(t,u,ye(e)):n!=null?Sc(t,u,ye(n)):l!=null&&t.removeAttribute("value"),i==null&&a!=null&&(t.defaultChecked=!!a),i!=null&&(t.checked=i&&typeof i!="function"&&typeof i!="symbol"),r!=null&&typeof r!="function"&&typeof r!="symbol"&&typeof r!="boolean"?t.name=""+ye(r):t.removeAttribute("name")}function Zm(t,e,n,l,i,a,u,r){if(a!=null&&typeof a!="function"&&typeof a!="symbol"&&typeof a!="boolean"&&(t.type=a),e!=null||n!=null){if(!(a!=="submit"&&a!=="reset"||e!=null)){bc(t);return}n=n!=null?""+ye(n):"",e=e!=null?""+ye(e):n,r||e===t.value||(t.value=e),t.defaultValue=e}l=l??i,l=typeof l!="function"&&typeof l!="symbol"&&!!l,t.checked=r?t.checked:!!l,t.defaultChecked=!!l,u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(t.name=u),bc(t)}function Sc(t,e,n){e==="number"&&ou(t.ownerDocument)===t||t.defaultValue===""+n||(t.defaultValue=""+n)}function Rl(t,e,n,l){if(t=t.options,e){e={};for(var i=0;i"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Ec=!1;if(nn)try{var mi={};Object.defineProperty(mi,"passive",{get:function(){Ec=!0}}),window.addEventListener("test",mi,mi),window.removeEventListener("test",mi,mi)}catch{Ec=!1}var Sn=null,_o=null,Ga=null;function $m(){if(Ga)return Ga;var t,e=_o,n=e.length,l,i="value"in Sn?Sn.value:Sn.textContent,a=i.length;for(t=0;t=Ci),rf=" ",cf=!1;function Pm(t,e){switch(t){case"keyup":return F1.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function tp(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var zl=!1;function I1(t,e){switch(t){case"compositionend":return tp(e);case"keypress":return e.which!==32?null:(cf=!0,rf);case"textInput":return t=e.data,t===rf&&cf?null:t;default:return null}}function $1(t,e){if(zl)return t==="compositionend"||!Mo&&Pm(t,e)?(t=$m(),Ga=_o=Sn=null,zl=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:n,offset:e-t};t=l}t:{for(;n;){if(n.nextSibling){n=n.nextSibling;break t}n=n.parentNode}n=void 0}n=mf(n)}}function ip(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?ip(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function ap(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=ou(t.document);e instanceof t.HTMLIFrameElement;){try{var n=typeof e.contentWindow.location.href=="string"}catch{n=!1}if(n)t=e.contentWindow;else break;e=ou(t.document)}return e}function No(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var a0=nn&&"documentMode"in document&&11>=document.documentMode,Al=null,Tc=null,Di=null,kc=!1;function df(t,e,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;kc||Al==null||Al!==ou(l)||(l=Al,"selectionStart"in l&&No(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),Di&&Zi(Di,l)||(Di=l,l=Cu(Tc,"onSelect"),0>=u,i-=u,Re=1<<32-se(e)+i|n<M?(N=C,C=null):N=C.sibling;var x=m(p,C,y[M],E);if(x===null){C===null&&(C=N);break}t&&C&&x.alternate===null&&e(p,C),d=a(x,d,M),T===null?w=x:T.sibling=x,T=x,C=N}if(M===y.length)return n(p,C),$&&Fe(p,M),w;if(C===null){for(;MM?(N=C,C=null):N=C.sibling;var R=m(p,C,x.value,E);if(R===null){C===null&&(C=N);break}t&&C&&R.alternate===null&&e(p,C),d=a(R,d,M),T===null?w=R:T.sibling=R,T=R,C=N}if(x.done)return n(p,C),$&&Fe(p,M),w;if(C===null){for(;!x.done;M++,x=y.next())x=s(p,x.value,E),x!==null&&(d=a(x,d,M),T===null?w=x:T.sibling=x,T=x);return $&&Fe(p,M),w}for(C=l(C);!x.done;M++,x=y.next())x=h(C,p,M,x.value,E),x!==null&&(t&&x.alternate!==null&&C.delete(x.key===null?M:x.key),d=a(x,d,M),T===null?w=x:T.sibling=x,T=x);return t&&C.forEach(function(U){return e(p,U)}),$&&Fe(p,M),w}function k(p,d,y,E){if(typeof y=="object"&&y!==null&&y.type===xl&&y.key===null&&(y=y.props.children),typeof y=="object"&&y!==null){switch(y.$$typeof){case Ea:t:{for(var w=y.key;d!==null;){if(d.key===w){if(w=y.type,w===xl){if(d.tag===7){n(p,d.sibling),E=i(d,y.props.children),E.return=p,p=E;break t}}else if(d.elementType===w||typeof w=="object"&&w!==null&&w.$$typeof===mn&&Qn(w)===d.type){n(p,d.sibling),E=i(d,y.props),di(E,y),E.return=p,p=E;break t}n(p,d);break}else e(p,d);d=d.sibling}y.type===xl?(E=Jn(y.props.children,p.mode,E,y.key),E.return=p,p=E):(E=Qa(y.type,y.key,y.props,null,p.mode,E),di(E,y),E.return=p,p=E)}return u(p);case xi:t:{for(w=y.key;d!==null;){if(d.key===w)if(d.tag===4&&d.stateNode.containerInfo===y.containerInfo&&d.stateNode.implementation===y.implementation){n(p,d.sibling),E=i(d,y.children||[]),E.return=p,p=E;break t}else{n(p,d);break}else e(p,d);d=d.sibling}E=kr(y,p.mode,E),E.return=p,p=E}return u(p);case mn:return y=Qn(y),k(p,d,y,E)}if(Ei(y))return g(p,d,y,E);if(hi(y)){if(w=hi(y),typeof w!="function")throw Error(A(150));return y=w.call(y),S(p,d,y,E)}if(typeof y.then=="function")return k(p,d,Da(y),E);if(y.$$typeof===Ie)return k(p,d,wa(p,y),E);_a(p,y)}return typeof y=="string"&&y!==""||typeof y=="number"||typeof y=="bigint"?(y=""+y,d!==null&&d.tag===6?(n(p,d.sibling),E=i(d,y),E.return=p,p=E):(n(p,d),E=Tr(y,p.mode,E),E.return=p,p=E),u(p)):n(p,d)}return function(p,d,y,E){try{Ji=0;var w=k(p,d,y,E);return Bl=null,w}catch(C){if(C===li||C===Fu)throw C;var T=ue(29,C,null,p.mode);return T.lanes=E,T.return=p,T}finally{}}}var el=Sp(!0),xp=Sp(!1),pn=!1;function Vo(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Oc(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function An(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function Cn(t,e,n){var l=t.updateQueue;if(l===null)return null;if(l=l.shared,tt&2){var i=l.pending;return i===null?e.next=e:(e.next=i.next,i.next=e),l.pending=e,e=fu(t),hp(t,null,n),e}return Ku(t,l,e,n),fu(t)}function Oi(t,e,n){if(e=e.updateQueue,e!==null&&(e=e.shared,(n&4194048)!==0)){var l=e.lanes;l&=t.pendingLanes,n|=l,e.lanes=n,jm(t,n)}}function Ar(t,e){var n=t.updateQueue,l=t.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var u={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};a===null?i=a=u:a=a.next=u,n=n.next}while(n!==null);a===null?i=a=e:a=a.next=e}else i=a=e;n={baseState:l.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:l.shared,callbacks:l.callbacks},t.updateQueue=n;return}t=n.lastBaseUpdate,t===null?n.firstBaseUpdate=e:t.next=e,n.lastBaseUpdate=e}var Mc=!1;function Mi(){if(Mc){var t=Ll;if(t!==null)throw t}}function Ni(t,e,n,l){Mc=!1;var i=t.updateQueue;pn=!1;var a=i.firstBaseUpdate,u=i.lastBaseUpdate,r=i.shared.pending;if(r!==null){i.shared.pending=null;var c=r,o=c.next;c.next=null,u===null?a=o:u.next=o,u=c;var f=t.alternate;f!==null&&(f=f.updateQueue,r=f.lastBaseUpdate,r!==u&&(r===null?f.firstBaseUpdate=o:r.next=o,f.lastBaseUpdate=c))}if(a!==null){var s=i.baseState;u=0,f=o=c=null,r=a;do{var m=r.lane&-536870913,h=m!==r.lane;if(h?(J&m)===m:(l&m)===m){m!==0&&m===Xl&&(Mc=!0),f!==null&&(f=f.next={lane:0,tag:r.tag,payload:r.payload,callback:null,next:null});t:{var g=t,S=r;m=e;var k=n;switch(S.tag){case 1:if(g=S.payload,typeof g=="function"){s=g.call(k,s,m);break t}s=g;break t;case 3:g.flags=g.flags&-65537|128;case 0:if(g=S.payload,m=typeof g=="function"?g.call(k,s,m):g,m==null)break t;s=gt({},s,m);break t;case 2:pn=!0}}m=r.callback,m!==null&&(t.flags|=64,h&&(t.flags|=8192),h=i.callbacks,h===null?i.callbacks=[m]:h.push(m))}else h={lane:m,tag:r.tag,payload:r.payload,callback:r.callback,next:null},f===null?(o=f=h,c=s):f=f.next=h,u|=m;if(r=r.next,r===null){if(r=i.shared.pending,r===null)break;h=r,r=h.next,h.next=null,i.lastBaseUpdate=h,i.shared.pending=null}}while(!0);f===null&&(c=s),i.baseState=c,i.firstBaseUpdate=o,i.lastBaseUpdate=f,a===null&&(i.shared.lanes=0),Ln|=u,t.lanes=u,t.memoizedState=s}}function Ep(t,e){if(typeof t!="function")throw Error(A(191,t));t.call(e)}function Tp(t,e){var n=t.callbacks;if(n!==null)for(t.callbacks=null,t=0;ta?a:8;var u=j.T,r={};j.T=r,es(t,!1,e,n);try{var c=i(),o=j.S;if(o!==null&&o(r,c),c!==null&&typeof c=="object"&&typeof c.then=="function"){var f=p0(c,l);Ri(t,e,f,fe(t))}else Ri(t,e,l,fe(t))}catch(s){Ri(t,e,{then:function(){},status:"rejected",reason:s},fe())}finally{et.p=a,u!==null&&r.types!==null&&(u.types=r.types),j.T=u}}function S0(){}function Bc(t,e,n,l){if(t.tag!==5)throw Error(A(476));var i=Fp(t).queue;Kp(t,i,e,Fn,n===null?S0:function(){return Jp(t),n(l)})}function Fp(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:Fn,baseState:Fn,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:an,lastRenderedState:Fn},next:null};var n={};return e.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:an,lastRenderedState:n},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function Jp(t){var e=Fp(t);e.next===null&&(e=t.alternate.memoizedState),Ri(t,e.next.queue,{},fe())}function ts(){return Bt(ta)}function Ip(){return xt().memoizedState}function $p(){return xt().memoizedState}function x0(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var n=fe();t=An(n);var l=Cn(e,t,n);l!==null&&(Wt(l,e,n),Oi(l,e,n)),e={cache:jo()},t.payload=e;return}e=e.return}}function E0(t,e,n){var l=fe();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Wu(t)?Pp(e,n):(n=Uo(t,e,n,l),n!==null&&(Wt(n,t,l),td(n,e,l)))}function Wp(t,e,n){var l=fe();Ri(t,e,n,l)}function Ri(t,e,n,l){var i={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Wu(t))Pp(e,i);else{var a=t.alternate;if(t.lanes===0&&(a===null||a.lanes===0)&&(a=e.lastRenderedReducer,a!==null))try{var u=e.lastRenderedState,r=a(u,n);if(i.hasEagerState=!0,i.eagerState=r,me(r,u))return Ku(t,e,i,0),ct===null&&Zu(),!1}catch{}finally{}if(n=Uo(t,e,i,l),n!==null)return Wt(n,t,l),td(n,e,l),!0}return!1}function es(t,e,n,l){if(l={lane:2,revertLane:ss(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Wu(t)){if(e)throw Error(A(479))}else e=Uo(t,n,l,2),e!==null&&Wt(e,t,2)}function Wu(t){var e=t.alternate;return t===V||e!==null&&e===V}function Pp(t,e){Hl=yu=!0;var n=t.pending;n===null?e.next=e:(e.next=n.next,n.next=e),t.pending=e}function td(t,e,n){if(n&4194048){var l=e.lanes;l&=t.pendingLanes,n|=l,e.lanes=n,jm(t,n)}}var $i={readContext:Bt,use:Iu,useCallback:bt,useContext:bt,useEffect:bt,useImperativeHandle:bt,useLayoutEffect:bt,useInsertionEffect:bt,useMemo:bt,useReducer:bt,useRef:bt,useState:bt,useDebugValue:bt,useDeferredValue:bt,useTransition:bt,useSyncExternalStore:bt,useId:bt,useHostTransitionStatus:bt,useFormState:bt,useActionState:bt,useOptimistic:bt,useMemoCache:bt,useCacheRefresh:bt};$i.useEffectEvent=bt;var ed={readContext:Bt,use:Iu,useCallback:function(t,e){return Vt().memoizedState=[t,e===void 0?null:e],t},useContext:Bt,useEffect:_f,useImperativeHandle:function(t,e,n){n=n!=null?n.concat([t]):null,Fa(4194308,4,Vp.bind(null,e,t),n)},useLayoutEffect:function(t,e){return Fa(4194308,4,t,e)},useInsertionEffect:function(t,e){Fa(4,2,t,e)},useMemo:function(t,e){var n=Vt();e=e===void 0?null:e;var l=t();if(nl){vn(!0);try{t()}finally{vn(!1)}}return n.memoizedState=[l,e],l},useReducer:function(t,e,n){var l=Vt();if(n!==void 0){var i=n(e);if(nl){vn(!0);try{n(e)}finally{vn(!1)}}}else i=e;return l.memoizedState=l.baseState=i,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:i},l.queue=t,t=t.dispatch=E0.bind(null,V,t),[l.memoizedState,t]},useRef:function(t){var e=Vt();return t={current:t},e.memoizedState=t},useState:function(t){t=Uc(t);var e=t.queue,n=Wp.bind(null,V,e);return e.dispatch=n,[t.memoizedState,n]},useDebugValue:Wo,useDeferredValue:function(t,e){var n=Vt();return Po(n,t,e)},useTransition:function(){var t=Uc(!1);return t=Kp.bind(null,V,t.queue,!0,!1),Vt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,n){var l=V,i=Vt();if($){if(n===void 0)throw Error(A(407));n=n()}else{if(n=e(),ct===null)throw Error(A(349));J&127||wp(l,e,n)}i.memoizedState=n;var a={value:n,getSnapshot:e};return i.queue=a,_f(_p.bind(null,l,a,t),[t]),l.flags|=2048,Zl(9,{destroy:void 0},Dp.bind(null,l,a,n,e),null),n},useId:function(){var t=Vt(),e=ct.identifierPrefix;if($){var n=Ue,l=Re;n=(l&~(1<<32-se(l)-1)).toString(32)+n,e="_"+e+"R_"+n,n=bu++,0<\/script>",a=a.removeChild(a.firstChild);break;case"select":a=typeof l.is=="string"?u.createElement("select",{is:l.is}):u.createElement("select"),l.multiple?a.multiple=!0:l.size&&(a.size=l.size);break;default:a=typeof l.is=="string"?u.createElement(i,{is:l.is}):u.createElement(i)}}a[Ut]=e,a[Pt]=l;t:for(u=e.child;u!==null;){if(u.tag===5||u.tag===6)a.appendChild(u.stateNode);else if(u.tag!==4&&u.tag!==27&&u.child!==null){u.child.return=u,u=u.child;continue}if(u===e)break t;for(;u.sibling===null;){if(u.return===null||u.return===e)break t;u=u.return}u.sibling.return=u.return,u=u.sibling}e.stateNode=a;t:switch(Ht(a,i,l),i){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break t;case"img":l=!0;break t;default:l=!1}l&&Xe(e)}}return mt(e),Rr(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,n),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==l&&Xe(e);else{if(typeof l!="string"&&e.stateNode===null)throw Error(A(166));if(t=kn.current,pl(e)){if(t=e.stateNode,n=e.memoizedProps,l=null,i=Lt,i!==null)switch(i.tag){case 27:case 5:l=i.memoizedProps}t[Ut]=e,t=!!(t.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||Wd(t.nodeValue,n)),t||Rn(e,!0)}else t=wu(t).createTextNode(l),t[Ut]=e,e.stateNode=t}return mt(e),null;case 31:if(n=e.memoizedState,t===null||t.memoizedState!==null){if(l=pl(e),n!==null){if(t===null){if(!l)throw Error(A(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(A(557));t[Ut]=e}else Pn(),!(e.flags&128)&&(e.memoizedState=null),e.flags|=4;mt(e),t=!1}else n=zr(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=n),t=!0;if(!t)return e.flags&256?(ae(e),e):(ae(e),null);if(e.flags&128)throw Error(A(558))}return mt(e),null;case 13:if(l=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(i=pl(e),l!==null&&l.dehydrated!==null){if(t===null){if(!i)throw Error(A(318));if(i=e.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(A(317));i[Ut]=e}else Pn(),!(e.flags&128)&&(e.memoizedState=null),e.flags|=4;mt(e),i=!1}else i=zr(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=i),i=!0;if(!i)return e.flags&256?(ae(e),e):(ae(e),null)}return ae(e),e.flags&128?(e.lanes=n,e):(n=l!==null,t=t!==null&&t.memoizedState!==null,n&&(l=e.child,i=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(i=l.alternate.memoizedState.cachePool.pool),a=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(a=l.memoizedState.cachePool.pool),a!==i&&(l.flags|=2048)),n!==t&&n&&(e.child.flags|=8192),Oa(e,e.updateQueue),mt(e),null);case 4:return Yl(),t===null&&fs(e.stateNode.containerInfo),mt(e),null;case 10:return tn(e.type),mt(e),null;case 19:if(Mt(St),l=e.memoizedState,l===null)return mt(e),null;if(i=(e.flags&128)!==0,a=l.rendering,a===null)if(i)gi(l,!1);else{if(vt!==0||t!==null&&t.flags&128)for(t=e.child;t!==null;){if(a=gu(t),a!==null){for(e.flags|=128,gi(l,!1),t=a.updateQueue,e.updateQueue=t,Oa(e,t),e.subtreeFlags=0,t=n,n=e.child;n!==null;)mp(n,t),n=n.sibling;return ft(St,St.current&1|2),$&&Fe(e,l.treeForkCount),e.child}t=t.sibling}l.tail!==null&&ce()>Eu&&(e.flags|=128,i=!0,gi(l,!1),e.lanes=4194304)}else{if(!i)if(t=gu(a),t!==null){if(e.flags|=128,i=!0,t=t.updateQueue,e.updateQueue=t,Oa(e,t),gi(l,!0),l.tail===null&&l.tailMode==="hidden"&&!a.alternate&&!$)return mt(e),null}else 2*ce()-l.renderingStartTime>Eu&&n!==536870912&&(e.flags|=128,i=!0,gi(l,!1),e.lanes=4194304);l.isBackwards?(a.sibling=e.child,e.child=a):(t=l.last,t!==null?t.sibling=a:e.child=a,l.last=a)}return l.tail!==null?(t=l.tail,l.rendering=t,l.tail=t.sibling,l.renderingStartTime=ce(),t.sibling=null,n=St.current,ft(St,i?n&1|2:n&1),$&&Fe(e,l.treeForkCount),t):(mt(e),null);case 22:case 23:return ae(e),Go(),l=e.memoizedState!==null,t!==null?t.memoizedState!==null!==l&&(e.flags|=8192):l&&(e.flags|=8192),l?n&536870912&&!(e.flags&128)&&(mt(e),e.subtreeFlags&6&&(e.flags|=8192)):mt(e),n=e.updateQueue,n!==null&&Oa(e,n.retryQueue),n=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(n=t.memoizedState.cachePool.pool),l=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(l=e.memoizedState.cachePool.pool),l!==n&&(e.flags|=2048),t!==null&&Mt(In),null;case 24:return n=null,t!==null&&(n=t.memoizedState.cache),e.memoizedState.cache!==n&&(e.flags|=2048),tn(zt),mt(e),null;case 25:return null;case 30:return null}throw Error(A(156,e.tag))}function C0(t,e){switch(Ho(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return tn(zt),Yl(),t=e.flags,t&65536&&!(t&128)?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return ru(e),null;case 31:if(e.memoizedState!==null){if(ae(e),e.alternate===null)throw Error(A(340));Pn()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(ae(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(A(340));Pn()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return Mt(St),null;case 4:return Yl(),null;case 10:return tn(e.type),null;case 22:case 23:return ae(e),Go(),t!==null&&Mt(In),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return tn(zt),null;case 25:return null;default:return null}}function md(t,e){switch(Ho(e),e.tag){case 3:tn(zt),Yl();break;case 26:case 27:case 5:ru(e);break;case 4:Yl();break;case 31:e.memoizedState!==null&&ae(e);break;case 13:ae(e);break;case 19:Mt(St);break;case 10:tn(e.type);break;case 22:case 23:ae(e),Go(),t!==null&&Mt(In);break;case 24:tn(zt)}}function ma(t,e){try{var n=e.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var i=l.next;n=i;do{if((n.tag&t)===t){l=void 0;var a=n.create,u=n.inst;l=a(),u.destroy=l}n=n.next}while(n!==i)}}catch(r){it(e,e.return,r)}}function Un(t,e,n){try{var l=e.updateQueue,i=l!==null?l.lastEffect:null;if(i!==null){var a=i.next;l=a;do{if((l.tag&t)===t){var u=l.inst,r=u.destroy;if(r!==void 0){u.destroy=void 0,i=e;var c=n,o=r;try{o()}catch(f){it(i,c,f)}}}l=l.next}while(l!==a)}}catch(f){it(e,e.return,f)}}function pd(t){var e=t.updateQueue;if(e!==null){var n=t.stateNode;try{Tp(e,n)}catch(l){it(t,t.return,l)}}}function dd(t,e,n){n.props=ll(t.type,t.memoizedProps),n.state=t.memoizedState;try{n.componentWillUnmount()}catch(l){it(t,e,l)}}function Ui(t,e){try{var n=t.ref;if(n!==null){switch(t.tag){case 26:case 27:case 5:var l=t.stateNode;break;case 30:l=t.stateNode;break;default:l=t.stateNode}typeof n=="function"?t.refCleanup=n(l):n.current=l}}catch(i){it(t,e,i)}}function Le(t,e){var n=t.ref,l=t.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(i){it(t,e,i)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(i){it(t,e,i)}else n.current=null}function gd(t){var e=t.type,n=t.memoizedProps,l=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break t;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(i){it(t,t.return,i)}}function Ur(t,e,n){try{var l=t.stateNode;J0(l,t.type,n,e),l[Pt]=e}catch(i){it(t,t.return,i)}}function yd(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&Hn(t.type)||t.tag===4}function Lr(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||yd(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&Hn(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function Vc(t,e,n){var l=t.tag;if(l===5||l===6)t=t.stateNode,e?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(t,e):(e=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,e.appendChild(t),n=n._reactRootContainer,n!=null||e.onclick!==null||(e.onclick=$e));else if(l!==4&&(l===27&&Hn(t.type)&&(n=t.stateNode,e=null),t=t.child,t!==null))for(Vc(t,e,n),t=t.sibling;t!==null;)Vc(t,e,n),t=t.sibling}function xu(t,e,n){var l=t.tag;if(l===5||l===6)t=t.stateNode,e?n.insertBefore(t,e):n.appendChild(t);else if(l!==4&&(l===27&&Hn(t.type)&&(n=t.stateNode),t=t.child,t!==null))for(xu(t,e,n),t=t.sibling;t!==null;)xu(t,e,n),t=t.sibling}function bd(t){var e=t.stateNode,n=t.memoizedProps;try{for(var l=t.type,i=e.attributes;i.length;)e.removeAttributeNode(i[0]);Ht(e,l,n),e[Ut]=t,e[Pt]=n}catch(a){it(t,t.return,a)}}var Je=!1,kt=!1,Br=!1,Gf=typeof WeakSet=="function"?WeakSet:Set,_t=null;function w0(t,e){if(t=t.containerInfo,Jc=Mu,t=ap(t),No(t)){if("selectionStart"in t)var n={start:t.selectionStart,end:t.selectionEnd};else t:{n=(n=t.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var i=l.anchorOffset,a=l.focusNode;l=l.focusOffset;try{n.nodeType,a.nodeType}catch{n=null;break t}var u=0,r=-1,c=-1,o=0,f=0,s=t,m=null;e:for(;;){for(var h;s!==n||i!==0&&s.nodeType!==3||(r=u+i),s!==a||l!==0&&s.nodeType!==3||(c=u+l),s.nodeType===3&&(u+=s.nodeValue.length),(h=s.firstChild)!==null;)m=s,s=h;for(;;){if(s===t)break e;if(m===n&&++o===i&&(r=u),m===a&&++f===l&&(c=u),(h=s.nextSibling)!==null)break;s=m,m=s.parentNode}s=h}n=r===-1||c===-1?null:{start:r,end:c}}else n=null}n=n||{start:0,end:0}}else n=null;for(Ic={focusedElem:t,selectionRange:n},Mu=!1,_t=e;_t!==null;)if(e=_t,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,_t=t;else for(;_t!==null;){switch(e=_t,a=e.alternate,t=e.flags,e.tag){case 0:if(t&4&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(n=0;n title"))),Ht(a,l,n),a[Ut]=t,Ot(a),l=a;break t;case"link":var u=oh("link","href",i).get(l+(n.href||""));if(u){for(var r=0;rk&&(u=k,k=S,S=u);var p=pf(r,S),d=pf(r,k);if(p&&d&&(h.rangeCount!==1||h.anchorNode!==p.node||h.anchorOffset!==p.offset||h.focusNode!==d.node||h.focusOffset!==d.offset)){var y=s.createRange();y.setStart(p.node,p.offset),h.removeAllRanges(),S>k?(h.addRange(y),h.extend(d.node,d.offset)):(y.setEnd(d.node,d.offset),h.addRange(y))}}}}for(s=[],h=r;h=h.parentNode;)h.nodeType===1&&s.push({element:h,left:h.scrollLeft,top:h.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;rn?32:n,j.T=null,n=Qc,Qc=null;var a=Dn,u=en;if(wt=0,Fl=Dn=null,en=0,tt&6)throw Error(A(331));var r=tt;if(tt|=4,Dd(a.current),Ad(a,a.current,u,n),tt=r,pa(0,!1),oe&&typeof oe.onPostCommitFiberRoot=="function")try{oe.onPostCommitFiberRoot(ua,a)}catch{}return!0}finally{et.p=i,j.T=l,Xd(t,e)}}function Kf(t,e,n){e=Ee(n,e),e=jc(t.stateNode,e,2),t=Cn(t,e,2),t!==null&&(ca(t,2),je(t))}function it(t,e,n){if(t.tag===3)Kf(t,t,n);else for(;e!==null;){if(e.tag===3){Kf(e,t,n);break}else if(e.tag===1){var l=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(wn===null||!wn.has(l))){t=Ee(n,t),n=ud(2),l=Cn(e,n,2),l!==null&&(rd(n,l,e,t),ca(l,2),je(l));break}}e=e.return}}function jr(t,e,n){var l=t.pingCache;if(l===null){l=t.pingCache=new O0;var i=new Set;l.set(e,i)}else i=l.get(e),i===void 0&&(i=new Set,l.set(e,i));i.has(n)||(rs=!0,i.add(n),t=L0.bind(null,t,e,n),e.then(t,t))}function L0(t,e,n){var l=t.pingCache;l!==null&&l.delete(e),t.pingedLanes|=t.suspendedLanes&n,t.warmLanes&=~n,ct===t&&(J&n)===n&&(vt===4||vt===3&&(J&62914560)===J&&300>ce()-Pu?!(tt&2)&&Jl(t,0):cs|=n,Kl===J&&(Kl=0)),je(t)}function Zd(t,e){e===0&&(e=Bm()),t=cl(t,e),t!==null&&(ca(t,e),je(t))}function B0(t){var e=t.memoizedState,n=0;e!==null&&(n=e.retryLane),Zd(t,n)}function H0(t,e){var n=0;switch(t.tag){case 31:case 13:var l=t.stateNode,i=t.memoizedState;i!==null&&(n=i.retryLane);break;case 19:l=t.stateNode;break;case 22:l=t.stateNode._retryCache;break;default:throw Error(A(314))}l!==null&&l.delete(e),Zd(t,n)}function j0(t,e){return ko(t,e)}var zu=null,vl=null,Kc=!1,Au=!1,qr=!1,Tn=0;function je(t){t!==vl&&t.next===null&&(vl===null?zu=vl=t:vl=vl.next=t),Au=!0,Kc||(Kc=!0,Y0())}function pa(t,e){if(!qr&&Au){qr=!0;do for(var n=!1,l=zu;l!==null;){if(t!==0){var i=l.pendingLanes;if(i===0)var a=0;else{var u=l.suspendedLanes,r=l.pingedLanes;a=(1<<31-se(42|t)+1)-1,a&=i&~(u&~r),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,Ff(l,a))}else a=J,a=Vu(l,l===ct?a:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),!(a&3)||ra(l,a)||(n=!0,Ff(l,a));l=l.next}while(n);qr=!1}}function q0(){Kd()}function Kd(){Au=Kc=!1;var t=0;Tn!==0&&$0()&&(t=Tn);for(var e=ce(),n=null,l=zu;l!==null;){var i=l.next,a=Fd(l,e);a===0?(l.next=null,n===null?zu=i:n.next=i,i===null&&(vl=n)):(n=l,(t!==0||a&3)&&(Au=!0)),l=i}wt!==0&&wt!==5||pa(t),Tn!==0&&(Tn=0)}function Fd(t,e){for(var n=t.suspendedLanes,l=t.pingedLanes,i=t.expirationTimes,a=t.pendingLanes&-62914561;0r)break;var f=c.transferSize,s=c.initiatorType;f&&Pf(s)&&(c=c.responseEnd,u+=f*(c"u"?null:document;function lg(t,e,n){var l=ai;if(l&&typeof e=="string"&&e){var i=xe(e);i='link[rel="'+t+'"][href="'+i+'"]',typeof n=="string"&&(i+='[crossorigin="'+n+'"]'),uh.has(i)||(uh.add(i),t={rel:t,crossOrigin:n,href:e},l.querySelector(i)===null&&(e=l.createElement("link"),Ht(e,"link",t),Ot(e),l.head.appendChild(e)))}}function ub(t){cn.D(t),lg("dns-prefetch",t,null)}function rb(t,e){cn.C(t,e),lg("preconnect",t,e)}function cb(t,e,n){cn.L(t,e,n);var l=ai;if(l&&t&&e){var i='link[rel="preload"][as="'+xe(e)+'"]';e==="image"&&n&&n.imageSrcSet?(i+='[imagesrcset="'+xe(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(i+='[imagesizes="'+xe(n.imageSizes)+'"]')):i+='[href="'+xe(t)+'"]';var a=i;switch(e){case"style":a=Il(t);break;case"script":a=ui(t)}Ae.has(a)||(t=gt({rel:"preload",href:e==="image"&&n&&n.imageSrcSet?void 0:t,as:e},n),Ae.set(a,t),l.querySelector(i)!==null||e==="style"&&l.querySelector(da(a))||e==="script"&&l.querySelector(ga(a))||(e=l.createElement("link"),Ht(e,"link",t),Ot(e),l.head.appendChild(e)))}}function ob(t,e){cn.m(t,e);var n=ai;if(n&&t){var l=e&&typeof e.as=="string"?e.as:"script",i='link[rel="modulepreload"][as="'+xe(l)+'"][href="'+xe(t)+'"]',a=i;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":a=ui(t)}if(!Ae.has(a)&&(t=gt({rel:"modulepreload",href:t},e),Ae.set(a,t),n.querySelector(i)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(ga(a)))return}l=n.createElement("link"),Ht(l,"link",t),Ot(l),n.head.appendChild(l)}}}function sb(t,e,n){cn.S(t,e,n);var l=ai;if(l&&t){var i=Nl(l).hoistableStyles,a=Il(t);e=e||"default";var u=i.get(a);if(!u){var r={loading:0,preload:null};if(u=l.querySelector(da(a)))r.loading=5;else{t=gt({rel:"stylesheet",href:t,"data-precedence":e},n),(n=Ae.get(a))&&hs(t,n);var c=u=l.createElement("link");Ot(c),Ht(c,"link",t),c._p=new Promise(function(o,f){c.onload=o,c.onerror=f}),c.addEventListener("load",function(){r.loading|=1}),c.addEventListener("error",function(){r.loading|=2}),r.loading|=4,Wa(u,e,l)}u={type:"stylesheet",instance:u,count:1,state:r},i.set(a,u)}}}function fb(t,e){cn.X(t,e);var n=ai;if(n&&t){var l=Nl(n).hoistableScripts,i=ui(t),a=l.get(i);a||(a=n.querySelector(ga(i)),a||(t=gt({src:t,async:!0},e),(e=Ae.get(i))&&ms(t,e),a=n.createElement("script"),Ot(a),Ht(a,"link",t),n.head.appendChild(a)),a={type:"script",instance:a,count:1,state:null},l.set(i,a))}}function hb(t,e){cn.M(t,e);var n=ai;if(n&&t){var l=Nl(n).hoistableScripts,i=ui(t),a=l.get(i);a||(a=n.querySelector(ga(i)),a||(t=gt({src:t,async:!0,type:"module"},e),(e=Ae.get(i))&&ms(t,e),a=n.createElement("script"),Ot(a),Ht(a,"link",t),n.head.appendChild(a)),a={type:"script",instance:a,count:1,state:null},l.set(i,a))}}function rh(t,e,n,l){var i=(i=kn.current)?Du(i):null;if(!i)throw Error(A(446));switch(t){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(e=Il(n.href),n=Nl(i).hoistableStyles,l=n.get(e),l||(l={type:"style",instance:null,count:0,state:null},n.set(e,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){t=Il(n.href);var a=Nl(i).hoistableStyles,u=a.get(t);if(u||(i=i.ownerDocument||i,u={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},a.set(t,u),(a=i.querySelector(da(t)))&&!a._p&&(u.instance=a,u.state.loading=5),Ae.has(t)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ae.set(t,n),a||mb(i,t,n,u.state))),e&&l===null)throw Error(A(528,""));return u}if(e&&l!==null)throw Error(A(529,""));return null;case"script":return e=n.async,n=n.src,typeof n=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=ui(n),n=Nl(i).hoistableScripts,l=n.get(e),l||(l={type:"script",instance:null,count:0,state:null},n.set(e,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(A(444,t))}}function Il(t){return'href="'+xe(t)+'"'}function da(t){return'link[rel="stylesheet"]['+t+"]"}function ig(t){return gt({},t,{"data-precedence":t.precedence,precedence:null})}function mb(t,e,n,l){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?l.loading=1:(e=t.createElement("link"),l.preload=e,e.addEventListener("load",function(){return l.loading|=1}),e.addEventListener("error",function(){return l.loading|=2}),Ht(e,"link",n),Ot(e),t.head.appendChild(e))}function ui(t){return'[src="'+xe(t)+'"]'}function ga(t){return"script[async]"+t}function ch(t,e,n){if(e.count++,e.instance===null)switch(e.type){case"style":var l=t.querySelector('style[data-href~="'+xe(n.href)+'"]');if(l)return e.instance=l,Ot(l),l;var i=gt({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(t.ownerDocument||t).createElement("style"),Ot(l),Ht(l,"style",i),Wa(l,n.precedence,t),e.instance=l;case"stylesheet":i=Il(n.href);var a=t.querySelector(da(i));if(a)return e.state.loading|=4,e.instance=a,Ot(a),a;l=ig(n),(i=Ae.get(i))&&hs(l,i),a=(t.ownerDocument||t).createElement("link"),Ot(a);var u=a;return u._p=new Promise(function(r,c){u.onload=r,u.onerror=c}),Ht(a,"link",l),e.state.loading|=4,Wa(a,n.precedence,t),e.instance=a;case"script":return a=ui(n.src),(i=t.querySelector(ga(a)))?(e.instance=i,Ot(i),i):(l=n,(i=Ae.get(a))&&(l=gt({},n),ms(l,i)),t=t.ownerDocument||t,i=t.createElement("script"),Ot(i),Ht(i,"link",l),t.head.appendChild(i),e.instance=i);case"void":return null;default:throw Error(A(443,e.type))}else e.type==="stylesheet"&&!(e.state.loading&4)&&(l=e.instance,e.state.loading|=4,Wa(l,n.precedence,t));return e.instance}function Wa(t,e,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),i=l.length?l[l.length-1]:null,a=i,u=0;u title"):null)}function pb(t,e,n){if(n===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function ag(t){return!(t.type==="stylesheet"&&!(t.state.loading&3))}function db(t,e,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&!(n.state.loading&4)){if(n.instance===null){var i=Il(l.href),a=e.querySelector(da(i));if(a){e=a._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=_u.bind(t),e.then(t,t)),n.state.loading|=4,n.instance=a,Ot(a);return}a=e.ownerDocument||e,l=ig(l),(i=Ae.get(i))&&hs(l,i),a=a.createElement("link"),Ot(a);var u=a;u._p=new Promise(function(r,c){u.onload=r,u.onerror=c}),Ht(a,"link",l),n.instance=a}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(n,e),(e=n.state.preload)&&!(n.state.loading&3)&&(t.count++,n=_u.bind(t),e.addEventListener("load",n),e.addEventListener("error",n))}}var Zr=0;function gb(t,e){return t.stylesheets&&t.count===0&&tu(t,t.stylesheets),0Zr?50:800)+e);return t.unsuspend=n,function(){t.unsuspend=null,clearTimeout(l),clearTimeout(i)}}:null}function _u(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)tu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Ou=null;function tu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Ou=new Map,e.forEach(yb,t),Ou=null,_u.call(t))}function yb(t,e){if(!(e.state.loading&4)){var n=Ou.get(t);if(n)var l=n.get(null);else{n=new Map,Ou.set(t,n);for(var i=t.querySelectorAll("link[data-precedence],style[data-precedence]"),a=0;a"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(mg)}catch(t){console.error(t)}}mg(),xm.exports=qu;var zb=xm.exports;const Ab=Hu(zb);function Cb(t,e){const n={};return(t[t.length-1]===""?[...t,""]:t).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}const wb=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,Db=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,_b={};function yh(t,e){return(_b.jsx?Db:wb).test(t)}const Ob=/[ \t\n\f\r]/g;function Mb(t){return typeof t=="object"?t.type==="text"?bh(t.value):!1:bh(t)}function bh(t){return t.replace(Ob,"")===""}class ya{constructor(e,n,l){this.normal=n,this.property=e,l&&(this.space=l)}}ya.prototype.normal={};ya.prototype.property={};ya.prototype.space=void 0;function pg(t,e){const n={},l={};for(const i of t)Object.assign(n,i.property),Object.assign(l,i.normal);return new ya(n,l,e)}function io(t){return t.toLowerCase()}class ee{constructor(e,n){this.attribute=n,this.property=e}}ee.prototype.attribute="";ee.prototype.booleanish=!1;ee.prototype.boolean=!1;ee.prototype.commaOrSpaceSeparated=!1;ee.prototype.commaSeparated=!1;ee.prototype.defined=!1;ee.prototype.mustUseProperty=!1;ee.prototype.number=!1;ee.prototype.overloadedBoolean=!1;ee.prototype.property="";ee.prototype.spaceSeparated=!1;ee.prototype.space=void 0;let Nb=0;const G=sl(),Et=sl(),ao=sl(),D=sl(),st=sl(),ql=sl(),le=sl();function sl(){return 2**++Nb}const uo=Object.freeze(Object.defineProperty({__proto__:null,boolean:G,booleanish:Et,commaOrSpaceSeparated:le,commaSeparated:ql,number:D,overloadedBoolean:ao,spaceSeparated:st},Symbol.toStringTag,{value:"Module"})),Kr=Object.keys(uo);class bs extends ee{constructor(e,n,l,i){let a=-1;if(super(e,n),vh(this,"space",i),typeof l=="number")for(;++a4&&n.slice(0,4)==="data"&&Hb.test(e)){if(e.charAt(4)==="-"){const a=e.slice(5).replace(Sh,Yb);l="data"+a.charAt(0).toUpperCase()+a.slice(1)}else{const a=e.slice(4);if(!Sh.test(a)){let u=a.replace(Bb,qb);u.charAt(0)!=="-"&&(u="-"+u),e="data"+u}}i=bs}return new i(l,e)}function qb(t){return"-"+t.toLowerCase()}function Yb(t){return t.charAt(1).toUpperCase()}const Vb=pg([dg,Rb,bg,vg,Sg],"html"),vs=pg([dg,Ub,bg,vg,Sg],"svg");function Gb(t){return t.join(" ").trim()}var Ss={},xh=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,Xb=/\n/g,Qb=/^\s*/,Zb=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,Kb=/^:\s*/,Fb=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,Jb=/^[;\s]*/,Ib=/^\s+|\s+$/g,$b=` +`,Eh="/",Th="*",Kn="",Wb="comment",Pb="declaration";function tv(t,e){if(typeof t!="string")throw new TypeError("First argument must be a string");if(!t)return[];e=e||{};var n=1,l=1;function i(g){var S=g.match(Xb);S&&(n+=S.length);var k=g.lastIndexOf($b);l=~k?g.length-k:l+g.length}function a(){var g={line:n,column:l};return function(S){return S.position=new u(g),o(),S}}function u(g){this.start=g,this.end={line:n,column:l},this.source=e.source}u.prototype.content=t;function r(g){var S=new Error(e.source+":"+n+":"+l+": "+g);if(S.reason=g,S.filename=e.source,S.line=n,S.column=l,S.source=t,!e.silent)throw S}function c(g){var S=g.exec(t);if(S){var k=S[0];return i(k),t=t.slice(k.length),S}}function o(){c(Qb)}function f(g){var S;for(g=g||[];S=s();)S!==!1&&g.push(S);return g}function s(){var g=a();if(!(Eh!=t.charAt(0)||Th!=t.charAt(1))){for(var S=2;Kn!=t.charAt(S)&&(Th!=t.charAt(S)||Eh!=t.charAt(S+1));)++S;if(S+=2,Kn===t.charAt(S-1))return r("End of comment missing");var k=t.slice(2,S-2);return l+=2,i(k),t=t.slice(S),l+=2,g({type:Wb,comment:k})}}function m(){var g=a(),S=c(Zb);if(S){if(s(),!c(Kb))return r("property missing ':'");var k=c(Fb),p=g({type:Pb,property:kh(S[0].replace(xh,Kn)),value:k?kh(k[0].replace(xh,Kn)):Kn});return c(Jb),p}}function h(){var g=[];f(g);for(var S;S=m();)S!==!1&&(g.push(S),f(g));return g}return o(),h()}function kh(t){return t?t.replace(Ib,Kn):Kn}var ev=tv,nv=iu&&iu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ss,"__esModule",{value:!0});Ss.default=iv;const lv=nv(ev);function iv(t,e){let n=null;if(!t||typeof t!="string")return n;const l=(0,lv.default)(t),i=typeof e=="function";return l.forEach(a=>{if(a.type!=="declaration")return;const{property:u,value:r}=a;i?e(u,r,a):r&&(n=n||{},n[u]=r)}),n}var ir={};Object.defineProperty(ir,"__esModule",{value:!0});ir.camelCase=void 0;var av=/^--[a-zA-Z0-9_-]+$/,uv=/-([a-z])/g,rv=/^[^-]+$/,cv=/^-(webkit|moz|ms|o|khtml)-/,ov=/^-(ms)-/,sv=function(t){return!t||rv.test(t)||av.test(t)},fv=function(t,e){return e.toUpperCase()},zh=function(t,e){return"".concat(e,"-")},hv=function(t,e){return e===void 0&&(e={}),sv(t)?t:(t=t.toLowerCase(),e.reactCompat?t=t.replace(ov,zh):t=t.replace(cv,zh),t.replace(uv,fv))};ir.camelCase=hv;var mv=iu&&iu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},pv=mv(Ss),dv=ir;function ro(t,e){var n={};return!t||typeof t!="string"||(0,pv.default)(t,function(l,i){l&&i&&(n[(0,dv.camelCase)(l,e)]=i)}),n}ro.default=ro;var gv=ro;const yv=Hu(gv),xg=Eg("end"),xs=Eg("start");function Eg(t){return e;function e(n){const l=n&&n.position&&n.position[t]||{};if(typeof l.line=="number"&&l.line>0&&typeof l.column=="number"&&l.column>0)return{line:l.line,column:l.column,offset:typeof l.offset=="number"&&l.offset>-1?l.offset:void 0}}}function bv(t){const e=xs(t),n=xg(t);if(e&&n)return{start:e,end:n}}function qi(t){return!t||typeof t!="object"?"":"position"in t||"type"in t?Ah(t.position):"start"in t||"end"in t?Ah(t):"line"in t||"column"in t?co(t):""}function co(t){return Ch(t&&t.line)+":"+Ch(t&&t.column)}function Ah(t){return co(t&&t.start)+"-"+co(t&&t.end)}function Ch(t){return t&&typeof t=="number"?t:1}class Yt extends Error{constructor(e,n,l){super(),typeof n=="string"&&(l=n,n=void 0);let i="",a={},u=!1;if(n&&("line"in n&&"column"in n?a={place:n}:"start"in n&&"end"in n?a={place:n}:"type"in n?a={ancestors:[n],place:n.position}:a={...n}),typeof e=="string"?i=e:!a.cause&&e&&(u=!0,i=e.message,a.cause=e),!a.ruleId&&!a.source&&typeof l=="string"){const c=l.indexOf(":");c===-1?a.ruleId=l:(a.source=l.slice(0,c),a.ruleId=l.slice(c+1))}if(!a.place&&a.ancestors&&a.ancestors){const c=a.ancestors[a.ancestors.length-1];c&&(a.place=c.position)}const r=a.place&&"start"in a.place?a.place.start:a.place;this.ancestors=a.ancestors||void 0,this.cause=a.cause||void 0,this.column=r?r.column:void 0,this.fatal=void 0,this.file="",this.message=i,this.line=r?r.line:void 0,this.name=qi(a.place)||"1:1",this.place=a.place||void 0,this.reason=this.message,this.ruleId=a.ruleId||void 0,this.source=a.source||void 0,this.stack=u&&a.cause&&typeof a.cause.stack=="string"?a.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}Yt.prototype.file="";Yt.prototype.name="";Yt.prototype.reason="";Yt.prototype.message="";Yt.prototype.stack="";Yt.prototype.column=void 0;Yt.prototype.line=void 0;Yt.prototype.ancestors=void 0;Yt.prototype.cause=void 0;Yt.prototype.fatal=void 0;Yt.prototype.place=void 0;Yt.prototype.ruleId=void 0;Yt.prototype.source=void 0;const Es={}.hasOwnProperty,vv=new Map,Sv=/[A-Z]/g,xv=new Set(["table","tbody","thead","tfoot","tr"]),Ev=new Set(["td","th"]),Tg="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function Tv(t,e){if(!e||e.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const n=e.filePath||void 0;let l;if(e.development){if(typeof e.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");l=Ov(n,e.jsxDEV)}else{if(typeof e.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof e.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");l=_v(n,e.jsx,e.jsxs)}const i={Fragment:e.Fragment,ancestors:[],components:e.components||{},create:l,elementAttributeNameCase:e.elementAttributeNameCase||"react",evaluater:e.createEvaluater?e.createEvaluater():void 0,filePath:n,ignoreInvalidStyle:e.ignoreInvalidStyle||!1,passKeys:e.passKeys!==!1,passNode:e.passNode||!1,schema:e.space==="svg"?vs:Vb,stylePropertyNameCase:e.stylePropertyNameCase||"dom",tableCellAlignToStyle:e.tableCellAlignToStyle!==!1},a=kg(i,t,void 0);return a&&typeof a!="string"?a:i.create(t,i.Fragment,{children:a||void 0},void 0)}function kg(t,e,n){if(e.type==="element")return kv(t,e,n);if(e.type==="mdxFlowExpression"||e.type==="mdxTextExpression")return zv(t,e);if(e.type==="mdxJsxFlowElement"||e.type==="mdxJsxTextElement")return Cv(t,e,n);if(e.type==="mdxjsEsm")return Av(t,e);if(e.type==="root")return wv(t,e,n);if(e.type==="text")return Dv(t,e)}function kv(t,e,n){const l=t.schema;let i=l;e.tagName.toLowerCase()==="svg"&&l.space==="html"&&(i=vs,t.schema=i),t.ancestors.push(e);const a=Ag(t,e.tagName,!1),u=Mv(t,e);let r=ks(t,e);return xv.has(e.tagName)&&(r=r.filter(function(c){return typeof c=="string"?!Mb(c):!0})),zg(t,u,a,e),Ts(u,r),t.ancestors.pop(),t.schema=l,t.create(e,a,u,n)}function zv(t,e){if(e.data&&e.data.estree&&t.evaluater){const l=e.data.estree.body[0];return l.type,t.evaluater.evaluateExpression(l.expression)}la(t,e.position)}function Av(t,e){if(e.data&&e.data.estree&&t.evaluater)return t.evaluater.evaluateProgram(e.data.estree);la(t,e.position)}function Cv(t,e,n){const l=t.schema;let i=l;e.name==="svg"&&l.space==="html"&&(i=vs,t.schema=i),t.ancestors.push(e);const a=e.name===null?t.Fragment:Ag(t,e.name,!0),u=Nv(t,e),r=ks(t,e);return zg(t,u,a,e),Ts(u,r),t.ancestors.pop(),t.schema=l,t.create(e,a,u,n)}function wv(t,e,n){const l={};return Ts(l,ks(t,e)),t.create(e,t.Fragment,l,n)}function Dv(t,e){return e.value}function zg(t,e,n,l){typeof n!="string"&&n!==t.Fragment&&t.passNode&&(e.node=l)}function Ts(t,e){if(e.length>0){const n=e.length>1?e:e[0];n&&(t.children=n)}}function _v(t,e,n){return l;function l(i,a,u,r){const o=Array.isArray(u.children)?n:e;return r?o(a,u,r):o(a,u)}}function Ov(t,e){return n;function n(l,i,a,u){const r=Array.isArray(a.children),c=xs(l);return e(i,a,u,r,{columnNumber:c?c.column-1:void 0,fileName:t,lineNumber:c?c.line:void 0},void 0)}}function Mv(t,e){const n={};let l,i;for(i in e.properties)if(i!=="children"&&Es.call(e.properties,i)){const a=Rv(t,i,e.properties[i]);if(a){const[u,r]=a;t.tableCellAlignToStyle&&u==="align"&&typeof r=="string"&&Ev.has(e.tagName)?l=r:n[u]=r}}if(l){const a=n.style||(n.style={});a[t.stylePropertyNameCase==="css"?"text-align":"textAlign"]=l}return n}function Nv(t,e){const n={};for(const l of e.attributes)if(l.type==="mdxJsxExpressionAttribute")if(l.data&&l.data.estree&&t.evaluater){const a=l.data.estree.body[0];a.type;const u=a.expression;u.type;const r=u.properties[0];r.type,Object.assign(n,t.evaluater.evaluateExpression(r.argument))}else la(t,e.position);else{const i=l.name;let a;if(l.value&&typeof l.value=="object")if(l.value.data&&l.value.data.estree&&t.evaluater){const r=l.value.data.estree.body[0];r.type,a=t.evaluater.evaluateExpression(r.expression)}else la(t,e.position);else a=l.value===null?!0:l.value;n[i]=a}return n}function ks(t,e){const n=[];let l=-1;const i=t.passKeys?new Map:vv;for(;++li?0:i+e:e=e>i?i:e,n=n>0?n:0,l.length<1e4)u=Array.from(l),u.unshift(e,n),t.splice(...u);else for(n&&t.splice(e,n);a0?(he(t,t.length,0,e),t):e}const _h={}.hasOwnProperty;function wg(t){const e={};let n=-1;for(;++n13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||(n&65535)===65535||(n&65535)===65534||n>1114111?"�":String.fromCodePoint(n)}function _e(t){return t.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const Gt=jn(/[A-Za-z]/),qt=jn(/[\dA-Za-z]/),Gv=jn(/[#-'*+\--9=?A-Z^-~]/);function Ru(t){return t!==null&&(t<32||t===127)}const oo=jn(/\d/),Xv=jn(/[\dA-Fa-f]/),Qv=jn(/[!-/:-@[-`{-~]/);function B(t){return t!==null&&t<-2}function ot(t){return t!==null&&(t<0||t===32)}function F(t){return t===-2||t===-1||t===32}const ar=jn(new RegExp("\\p{P}|\\p{S}","u")),il=jn(/\s/);function jn(t){return e;function e(n){return n!==null&&n>-1&&t.test(String.fromCharCode(n))}}function ci(t){const e=[];let n=-1,l=0,i=0;for(;++n55295&&a<57344){const r=t.charCodeAt(n+1);a<56320&&r>56319&&r<57344?(u=String.fromCharCode(a,r),i=1):u="�"}else u=String.fromCharCode(a);u&&(e.push(t.slice(l,n),encodeURIComponent(u)),l=n+i+1,u=""),i&&(n+=i,i=0)}return e.join("")+t.slice(l)}function W(t,e,n,l){const i=l?l-1:Number.POSITIVE_INFINITY;let a=0;return u;function u(c){return F(c)?(t.enter(n),r(c)):e(c)}function r(c){return F(c)&&a++u))return;const C=e.events.length;let M=C,N,x;for(;M--;)if(e.events[M][0]==="exit"&&e.events[M][1].type==="chunkFlow"){if(N){x=e.events[M][1].end;break}N=!0}for(p(l),T=C;Ty;){const w=n[E];e.containerState=w[1],w[0].exit.call(e,t)}n.length=y}function d(){i.write([null]),a=void 0,i=void 0,e.containerState._closeFlow=void 0}}function Iv(t,e,n){return W(t,t.attempt(this.parser.constructs.document,e,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function Wl(t){if(t===null||ot(t)||il(t))return 1;if(ar(t))return 2}function ur(t,e,n){const l=[];let i=-1;for(;++i1&&t[n][1].end.offset-t[n][1].start.offset>1?2:1;const s={...t[l][1].end},m={...t[n][1].start};Mh(s,-c),Mh(m,c),u={type:c>1?"strongSequence":"emphasisSequence",start:s,end:{...t[l][1].end}},r={type:c>1?"strongSequence":"emphasisSequence",start:{...t[n][1].start},end:m},a={type:c>1?"strongText":"emphasisText",start:{...t[l][1].end},end:{...t[n][1].start}},i={type:c>1?"strong":"emphasis",start:{...u.start},end:{...r.end}},t[l][1].end={...u.start},t[n][1].start={...r.end},o=[],t[l][1].end.offset-t[l][1].start.offset&&(o=Se(o,[["enter",t[l][1],e],["exit",t[l][1],e]])),o=Se(o,[["enter",i,e],["enter",u,e],["exit",u,e],["enter",a,e]]),o=Se(o,ur(e.parser.constructs.insideSpan.null,t.slice(l+1,n),e)),o=Se(o,[["exit",a,e],["enter",r,e],["exit",r,e],["exit",i,e]]),t[n][1].end.offset-t[n][1].start.offset?(f=2,o=Se(o,[["enter",t[n][1],e],["exit",t[n][1],e]])):f=0,he(t,l-1,n-l+3,o),n=l+o.length-f-2;break}}for(n=-1;++n0&&F(T)?W(t,d,"linePrefix",a+1)(T):d(T)}function d(T){return T===null||B(T)?t.check(Nh,S,E)(T):(t.enter("codeFlowValue"),y(T))}function y(T){return T===null||B(T)?(t.exit("codeFlowValue"),d(T)):(t.consume(T),y)}function E(T){return t.exit("codeFenced"),e(T)}function w(T,C,M){let N=0;return x;function x(Q){return T.enter("lineEnding"),T.consume(Q),T.exit("lineEnding"),R}function R(Q){return T.enter("codeFencedFence"),F(Q)?W(T,U,"linePrefix",l.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(Q):U(Q)}function U(Q){return Q===r?(T.enter("codeFencedFenceSequence"),nt(Q)):M(Q)}function nt(Q){return Q===r?(N++,T.consume(Q),nt):N>=u?(T.exit("codeFencedFenceSequence"),F(Q)?W(T,ht,"whitespace")(Q):ht(Q)):M(Q)}function ht(Q){return Q===null||B(Q)?(T.exit("codeFencedFence"),C(Q)):M(Q)}}}function cS(t,e,n){const l=this;return i;function i(u){return u===null?n(u):(t.enter("lineEnding"),t.consume(u),t.exit("lineEnding"),a)}function a(u){return l.parser.lazy[l.now().line]?n(u):e(u)}}const Jr={name:"codeIndented",tokenize:sS},oS={partial:!0,tokenize:fS};function sS(t,e,n){const l=this;return i;function i(o){return t.enter("codeIndented"),W(t,a,"linePrefix",5)(o)}function a(o){const f=l.events[l.events.length-1];return f&&f[1].type==="linePrefix"&&f[2].sliceSerialize(f[1],!0).length>=4?u(o):n(o)}function u(o){return o===null?c(o):B(o)?t.attempt(oS,u,c)(o):(t.enter("codeFlowValue"),r(o))}function r(o){return o===null||B(o)?(t.exit("codeFlowValue"),u(o)):(t.consume(o),r)}function c(o){return t.exit("codeIndented"),e(o)}}function fS(t,e,n){const l=this;return i;function i(u){return l.parser.lazy[l.now().line]?n(u):B(u)?(t.enter("lineEnding"),t.consume(u),t.exit("lineEnding"),i):W(t,a,"linePrefix",5)(u)}function a(u){const r=l.events[l.events.length-1];return r&&r[1].type==="linePrefix"&&r[2].sliceSerialize(r[1],!0).length>=4?e(u):B(u)?i(u):n(u)}}const hS={name:"codeText",previous:pS,resolve:mS,tokenize:dS};function mS(t){let e=t.length-4,n=3,l,i;if((t[n][1].type==="lineEnding"||t[n][1].type==="space")&&(t[e][1].type==="lineEnding"||t[e][1].type==="space")){for(l=n;++l=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+e+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return ethis.left.length?this.right.slice(this.right.length-l+this.left.length,this.right.length-e+this.left.length).reverse():this.left.slice(e).concat(this.right.slice(this.right.length-l+this.left.length).reverse())}splice(e,n,l){const i=n||0;this.setCursor(Math.trunc(e));const a=this.right.splice(this.right.length-i,Number.POSITIVE_INFINITY);return l&&vi(this.left,l),a.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(e){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(e)}pushMany(e){this.setCursor(Number.POSITIVE_INFINITY),vi(this.left,e)}unshift(e){this.setCursor(0),this.right.push(e)}unshiftMany(e){this.setCursor(0),vi(this.right,e.reverse())}setCursor(e){if(!(e===this.left.length||e>this.left.length&&this.right.length===0||e<0&&this.left.length===0))if(e=4?e(u):t.interrupt(l.parser.constructs.flow,n,e)(u)}}function Rg(t,e,n,l,i,a,u,r,c){const o=c||Number.POSITIVE_INFINITY;let f=0;return s;function s(p){return p===60?(t.enter(l),t.enter(i),t.enter(a),t.consume(p),t.exit(a),m):p===null||p===32||p===41||Ru(p)?n(p):(t.enter(l),t.enter(u),t.enter(r),t.enter("chunkString",{contentType:"string"}),S(p))}function m(p){return p===62?(t.enter(a),t.consume(p),t.exit(a),t.exit(i),t.exit(l),e):(t.enter(r),t.enter("chunkString",{contentType:"string"}),h(p))}function h(p){return p===62?(t.exit("chunkString"),t.exit(r),m(p)):p===null||p===60||B(p)?n(p):(t.consume(p),p===92?g:h)}function g(p){return p===60||p===62||p===92?(t.consume(p),h):h(p)}function S(p){return!f&&(p===null||p===41||ot(p))?(t.exit("chunkString"),t.exit(r),t.exit(u),t.exit(l),e(p)):f999||h===null||h===91||h===93&&!c||h===94&&!r&&"_hiddenFootnoteSupport"in u.parser.constructs?n(h):h===93?(t.exit(a),t.enter(i),t.consume(h),t.exit(i),t.exit(l),e):B(h)?(t.enter("lineEnding"),t.consume(h),t.exit("lineEnding"),f):(t.enter("chunkString",{contentType:"string"}),s(h))}function s(h){return h===null||h===91||h===93||B(h)||r++>999?(t.exit("chunkString"),f(h)):(t.consume(h),c||(c=!F(h)),h===92?m:s)}function m(h){return h===91||h===92||h===93?(t.consume(h),r++,s):s(h)}}function Lg(t,e,n,l,i,a){let u;return r;function r(m){return m===34||m===39||m===40?(t.enter(l),t.enter(i),t.consume(m),t.exit(i),u=m===40?41:m,c):n(m)}function c(m){return m===u?(t.enter(i),t.consume(m),t.exit(i),t.exit(l),e):(t.enter(a),o(m))}function o(m){return m===u?(t.exit(a),c(u)):m===null?n(m):B(m)?(t.enter("lineEnding"),t.consume(m),t.exit("lineEnding"),W(t,o,"linePrefix")):(t.enter("chunkString",{contentType:"string"}),f(m))}function f(m){return m===u||m===null||B(m)?(t.exit("chunkString"),o(m)):(t.consume(m),m===92?s:f)}function s(m){return m===u||m===92?(t.consume(m),f):f(m)}}function Yi(t,e){let n;return l;function l(i){return B(i)?(t.enter("lineEnding"),t.consume(i),t.exit("lineEnding"),n=!0,l):F(i)?W(t,l,n?"linePrefix":"lineSuffix")(i):e(i)}}const TS={name:"definition",tokenize:zS},kS={partial:!0,tokenize:AS};function zS(t,e,n){const l=this;let i;return a;function a(h){return t.enter("definition"),u(h)}function u(h){return Ug.call(l,t,r,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(h)}function r(h){return i=_e(l.sliceSerialize(l.events[l.events.length-1][1]).slice(1,-1)),h===58?(t.enter("definitionMarker"),t.consume(h),t.exit("definitionMarker"),c):n(h)}function c(h){return ot(h)?Yi(t,o)(h):o(h)}function o(h){return Rg(t,f,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(h)}function f(h){return t.attempt(kS,s,s)(h)}function s(h){return F(h)?W(t,m,"whitespace")(h):m(h)}function m(h){return h===null||B(h)?(t.exit("definition"),l.parser.defined.push(i),e(h)):n(h)}}function AS(t,e,n){return l;function l(r){return ot(r)?Yi(t,i)(r):n(r)}function i(r){return Lg(t,a,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(r)}function a(r){return F(r)?W(t,u,"whitespace")(r):u(r)}function u(r){return r===null||B(r)?e(r):n(r)}}const CS={name:"hardBreakEscape",tokenize:wS};function wS(t,e,n){return l;function l(a){return t.enter("hardBreakEscape"),t.consume(a),i}function i(a){return B(a)?(t.exit("hardBreakEscape"),e(a)):n(a)}}const DS={name:"headingAtx",resolve:_S,tokenize:OS};function _S(t,e){let n=t.length-2,l=3,i,a;return t[l][1].type==="whitespace"&&(l+=2),n-2>l&&t[n][1].type==="whitespace"&&(n-=2),t[n][1].type==="atxHeadingSequence"&&(l===n-1||n-4>l&&t[n-2][1].type==="whitespace")&&(n-=l+1===n?2:4),n>l&&(i={type:"atxHeadingText",start:t[l][1].start,end:t[n][1].end},a={type:"chunkText",start:t[l][1].start,end:t[n][1].end,contentType:"text"},he(t,l,n-l+1,[["enter",i,e],["enter",a,e],["exit",a,e],["exit",i,e]])),t}function OS(t,e,n){let l=0;return i;function i(f){return t.enter("atxHeading"),a(f)}function a(f){return t.enter("atxHeadingSequence"),u(f)}function u(f){return f===35&&l++<6?(t.consume(f),u):f===null||ot(f)?(t.exit("atxHeadingSequence"),r(f)):n(f)}function r(f){return f===35?(t.enter("atxHeadingSequence"),c(f)):f===null||B(f)?(t.exit("atxHeading"),e(f)):F(f)?W(t,r,"whitespace")(f):(t.enter("atxHeadingText"),o(f))}function c(f){return f===35?(t.consume(f),c):(t.exit("atxHeadingSequence"),r(f))}function o(f){return f===null||f===35||ot(f)?(t.exit("atxHeadingText"),r(f)):(t.consume(f),o)}}const MS=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],Uh=["pre","script","style","textarea"],NS={concrete:!0,name:"htmlFlow",resolveTo:LS,tokenize:BS},RS={partial:!0,tokenize:jS},US={partial:!0,tokenize:HS};function LS(t){let e=t.length;for(;e--&&!(t[e][0]==="enter"&&t[e][1].type==="htmlFlow"););return e>1&&t[e-2][1].type==="linePrefix"&&(t[e][1].start=t[e-2][1].start,t[e+1][1].start=t[e-2][1].start,t.splice(e-2,2)),t}function BS(t,e,n){const l=this;let i,a,u,r,c;return o;function o(v){return f(v)}function f(v){return t.enter("htmlFlow"),t.enter("htmlFlowData"),t.consume(v),s}function s(v){return v===33?(t.consume(v),m):v===47?(t.consume(v),a=!0,S):v===63?(t.consume(v),i=3,l.interrupt?e:b):Gt(v)?(t.consume(v),u=String.fromCharCode(v),k):n(v)}function m(v){return v===45?(t.consume(v),i=2,h):v===91?(t.consume(v),i=5,r=0,g):Gt(v)?(t.consume(v),i=4,l.interrupt?e:b):n(v)}function h(v){return v===45?(t.consume(v),l.interrupt?e:b):n(v)}function g(v){const Ct="CDATA[";return v===Ct.charCodeAt(r++)?(t.consume(v),r===Ct.length?l.interrupt?e:U:g):n(v)}function S(v){return Gt(v)?(t.consume(v),u=String.fromCharCode(v),k):n(v)}function k(v){if(v===null||v===47||v===62||ot(v)){const Ct=v===47,de=u.toLowerCase();return!Ct&&!a&&Uh.includes(de)?(i=1,l.interrupt?e(v):U(v)):MS.includes(u.toLowerCase())?(i=6,Ct?(t.consume(v),p):l.interrupt?e(v):U(v)):(i=7,l.interrupt&&!l.parser.lazy[l.now().line]?n(v):a?d(v):y(v))}return v===45||qt(v)?(t.consume(v),u+=String.fromCharCode(v),k):n(v)}function p(v){return v===62?(t.consume(v),l.interrupt?e:U):n(v)}function d(v){return F(v)?(t.consume(v),d):x(v)}function y(v){return v===47?(t.consume(v),x):v===58||v===95||Gt(v)?(t.consume(v),E):F(v)?(t.consume(v),y):x(v)}function E(v){return v===45||v===46||v===58||v===95||qt(v)?(t.consume(v),E):w(v)}function w(v){return v===61?(t.consume(v),T):F(v)?(t.consume(v),w):y(v)}function T(v){return v===null||v===60||v===61||v===62||v===96?n(v):v===34||v===39?(t.consume(v),c=v,C):F(v)?(t.consume(v),T):M(v)}function C(v){return v===c?(t.consume(v),c=null,N):v===null||B(v)?n(v):(t.consume(v),C)}function M(v){return v===null||v===34||v===39||v===47||v===60||v===61||v===62||v===96||ot(v)?w(v):(t.consume(v),M)}function N(v){return v===47||v===62||F(v)?y(v):n(v)}function x(v){return v===62?(t.consume(v),R):n(v)}function R(v){return v===null||B(v)?U(v):F(v)?(t.consume(v),R):n(v)}function U(v){return v===45&&i===2?(t.consume(v),_):v===60&&i===1?(t.consume(v),L):v===62&&i===4?(t.consume(v),jt):v===63&&i===3?(t.consume(v),b):v===93&&i===5?(t.consume(v),P):B(v)&&(i===6||i===7)?(t.exit("htmlFlowData"),t.check(RS,Zt,nt)(v)):v===null||B(v)?(t.exit("htmlFlowData"),nt(v)):(t.consume(v),U)}function nt(v){return t.check(US,ht,Zt)(v)}function ht(v){return t.enter("lineEnding"),t.consume(v),t.exit("lineEnding"),Q}function Q(v){return v===null||B(v)?nt(v):(t.enter("htmlFlowData"),U(v))}function _(v){return v===45?(t.consume(v),b):U(v)}function L(v){return v===47?(t.consume(v),u="",H):U(v)}function H(v){if(v===62){const Ct=u.toLowerCase();return Uh.includes(Ct)?(t.consume(v),jt):U(v)}return Gt(v)&&u.length<8?(t.consume(v),u+=String.fromCharCode(v),H):U(v)}function P(v){return v===93?(t.consume(v),b):U(v)}function b(v){return v===62?(t.consume(v),jt):v===45&&i===2?(t.consume(v),b):U(v)}function jt(v){return v===null||B(v)?(t.exit("htmlFlowData"),Zt(v)):(t.consume(v),jt)}function Zt(v){return t.exit("htmlFlow"),e(v)}}function HS(t,e,n){const l=this;return i;function i(u){return B(u)?(t.enter("lineEnding"),t.consume(u),t.exit("lineEnding"),a):n(u)}function a(u){return l.parser.lazy[l.now().line]?n(u):e(u)}}function jS(t,e,n){return l;function l(i){return t.enter("lineEnding"),t.consume(i),t.exit("lineEnding"),t.attempt(ba,e,n)}}const qS={name:"htmlText",tokenize:YS};function YS(t,e,n){const l=this;let i,a,u;return r;function r(b){return t.enter("htmlText"),t.enter("htmlTextData"),t.consume(b),c}function c(b){return b===33?(t.consume(b),o):b===47?(t.consume(b),w):b===63?(t.consume(b),y):Gt(b)?(t.consume(b),M):n(b)}function o(b){return b===45?(t.consume(b),f):b===91?(t.consume(b),a=0,g):Gt(b)?(t.consume(b),d):n(b)}function f(b){return b===45?(t.consume(b),h):n(b)}function s(b){return b===null?n(b):b===45?(t.consume(b),m):B(b)?(u=s,L(b)):(t.consume(b),s)}function m(b){return b===45?(t.consume(b),h):s(b)}function h(b){return b===62?_(b):b===45?m(b):s(b)}function g(b){const jt="CDATA[";return b===jt.charCodeAt(a++)?(t.consume(b),a===jt.length?S:g):n(b)}function S(b){return b===null?n(b):b===93?(t.consume(b),k):B(b)?(u=S,L(b)):(t.consume(b),S)}function k(b){return b===93?(t.consume(b),p):S(b)}function p(b){return b===62?_(b):b===93?(t.consume(b),p):S(b)}function d(b){return b===null||b===62?_(b):B(b)?(u=d,L(b)):(t.consume(b),d)}function y(b){return b===null?n(b):b===63?(t.consume(b),E):B(b)?(u=y,L(b)):(t.consume(b),y)}function E(b){return b===62?_(b):y(b)}function w(b){return Gt(b)?(t.consume(b),T):n(b)}function T(b){return b===45||qt(b)?(t.consume(b),T):C(b)}function C(b){return B(b)?(u=C,L(b)):F(b)?(t.consume(b),C):_(b)}function M(b){return b===45||qt(b)?(t.consume(b),M):b===47||b===62||ot(b)?N(b):n(b)}function N(b){return b===47?(t.consume(b),_):b===58||b===95||Gt(b)?(t.consume(b),x):B(b)?(u=N,L(b)):F(b)?(t.consume(b),N):_(b)}function x(b){return b===45||b===46||b===58||b===95||qt(b)?(t.consume(b),x):R(b)}function R(b){return b===61?(t.consume(b),U):B(b)?(u=R,L(b)):F(b)?(t.consume(b),R):N(b)}function U(b){return b===null||b===60||b===61||b===62||b===96?n(b):b===34||b===39?(t.consume(b),i=b,nt):B(b)?(u=U,L(b)):F(b)?(t.consume(b),U):(t.consume(b),ht)}function nt(b){return b===i?(t.consume(b),i=void 0,Q):b===null?n(b):B(b)?(u=nt,L(b)):(t.consume(b),nt)}function ht(b){return b===null||b===34||b===39||b===60||b===61||b===96?n(b):b===47||b===62||ot(b)?N(b):(t.consume(b),ht)}function Q(b){return b===47||b===62||ot(b)?N(b):n(b)}function _(b){return b===62?(t.consume(b),t.exit("htmlTextData"),t.exit("htmlText"),e):n(b)}function L(b){return t.exit("htmlTextData"),t.enter("lineEnding"),t.consume(b),t.exit("lineEnding"),H}function H(b){return F(b)?W(t,P,"linePrefix",l.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(b):P(b)}function P(b){return t.enter("htmlTextData"),u(b)}}const Cs={name:"labelEnd",resolveAll:QS,resolveTo:ZS,tokenize:KS},VS={tokenize:FS},GS={tokenize:JS},XS={tokenize:IS};function QS(t){let e=-1;const n=[];for(;++e=3&&(o===null||B(o))?(t.exit("thematicBreak"),e(o)):n(o)}function c(o){return o===i?(t.consume(o),l++,c):(t.exit("thematicBreakSequence"),F(o)?W(t,r,"whitespace")(o):r(o))}}const Jt={continuation:{tokenize:ux},exit:cx,name:"list",tokenize:ax},lx={partial:!0,tokenize:ox},ix={partial:!0,tokenize:rx};function ax(t,e,n){const l=this,i=l.events[l.events.length-1];let a=i&&i[1].type==="linePrefix"?i[2].sliceSerialize(i[1],!0).length:0,u=0;return r;function r(h){const g=l.containerState.type||(h===42||h===43||h===45?"listUnordered":"listOrdered");if(g==="listUnordered"?!l.containerState.marker||h===l.containerState.marker:oo(h)){if(l.containerState.type||(l.containerState.type=g,t.enter(g,{_container:!0})),g==="listUnordered")return t.enter("listItemPrefix"),h===42||h===45?t.check(nu,n,o)(h):o(h);if(!l.interrupt||h===49)return t.enter("listItemPrefix"),t.enter("listItemValue"),c(h)}return n(h)}function c(h){return oo(h)&&++u<10?(t.consume(h),c):(!l.interrupt||u<2)&&(l.containerState.marker?h===l.containerState.marker:h===41||h===46)?(t.exit("listItemValue"),o(h)):n(h)}function o(h){return t.enter("listItemMarker"),t.consume(h),t.exit("listItemMarker"),l.containerState.marker=l.containerState.marker||h,t.check(ba,l.interrupt?n:f,t.attempt(lx,m,s))}function f(h){return l.containerState.initialBlankLine=!0,a++,m(h)}function s(h){return F(h)?(t.enter("listItemPrefixWhitespace"),t.consume(h),t.exit("listItemPrefixWhitespace"),m):n(h)}function m(h){return l.containerState.size=a+l.sliceSerialize(t.exit("listItemPrefix"),!0).length,e(h)}}function ux(t,e,n){const l=this;return l.containerState._closeFlow=void 0,t.check(ba,i,a);function i(r){return l.containerState.furtherBlankLines=l.containerState.furtherBlankLines||l.containerState.initialBlankLine,W(t,e,"listItemIndent",l.containerState.size+1)(r)}function a(r){return l.containerState.furtherBlankLines||!F(r)?(l.containerState.furtherBlankLines=void 0,l.containerState.initialBlankLine=void 0,u(r)):(l.containerState.furtherBlankLines=void 0,l.containerState.initialBlankLine=void 0,t.attempt(ix,e,u)(r))}function u(r){return l.containerState._closeFlow=!0,l.interrupt=void 0,W(t,t.attempt(Jt,e,n),"linePrefix",l.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(r)}}function rx(t,e,n){const l=this;return W(t,i,"listItemIndent",l.containerState.size+1);function i(a){const u=l.events[l.events.length-1];return u&&u[1].type==="listItemIndent"&&u[2].sliceSerialize(u[1],!0).length===l.containerState.size?e(a):n(a)}}function cx(t){t.exit(this.containerState.type)}function ox(t,e,n){const l=this;return W(t,i,"listItemPrefixWhitespace",l.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function i(a){const u=l.events[l.events.length-1];return!F(a)&&u&&u[1].type==="listItemPrefixWhitespace"?e(a):n(a)}}const Lh={name:"setextUnderline",resolveTo:sx,tokenize:fx};function sx(t,e){let n=t.length,l,i,a;for(;n--;)if(t[n][0]==="enter"){if(t[n][1].type==="content"){l=n;break}t[n][1].type==="paragraph"&&(i=n)}else t[n][1].type==="content"&&t.splice(n,1),!a&&t[n][1].type==="definition"&&(a=n);const u={type:"setextHeading",start:{...t[l][1].start},end:{...t[t.length-1][1].end}};return t[i][1].type="setextHeadingText",a?(t.splice(i,0,["enter",u,e]),t.splice(a+1,0,["exit",t[l][1],e]),t[l][1].end={...t[a][1].end}):t[l][1]=u,t.push(["exit",u,e]),t}function fx(t,e,n){const l=this;let i;return a;function a(o){let f=l.events.length,s;for(;f--;)if(l.events[f][1].type!=="lineEnding"&&l.events[f][1].type!=="linePrefix"&&l.events[f][1].type!=="content"){s=l.events[f][1].type==="paragraph";break}return!l.parser.lazy[l.now().line]&&(l.interrupt||s)?(t.enter("setextHeadingLine"),i=o,u(o)):n(o)}function u(o){return t.enter("setextHeadingLineSequence"),r(o)}function r(o){return o===i?(t.consume(o),r):(t.exit("setextHeadingLineSequence"),F(o)?W(t,c,"lineSuffix")(o):c(o))}function c(o){return o===null||B(o)?(t.exit("setextHeadingLine"),e(o)):n(o)}}const hx={tokenize:mx};function mx(t){const e=this,n=t.attempt(ba,l,t.attempt(this.parser.constructs.flowInitial,i,W(t,t.attempt(this.parser.constructs.flow,i,t.attempt(bS,i)),"linePrefix")));return n;function l(a){if(a===null){t.consume(a);return}return t.enter("lineEndingBlank"),t.consume(a),t.exit("lineEndingBlank"),e.currentConstruct=void 0,n}function i(a){if(a===null){t.consume(a);return}return t.enter("lineEnding"),t.consume(a),t.exit("lineEnding"),e.currentConstruct=void 0,n}}const px={resolveAll:Hg()},dx=Bg("string"),gx=Bg("text");function Bg(t){return{resolveAll:Hg(t==="text"?yx:void 0),tokenize:e};function e(n){const l=this,i=this.parser.constructs[t],a=n.attempt(i,u,r);return u;function u(f){return o(f)?a(f):r(f)}function r(f){if(f===null){n.consume(f);return}return n.enter("data"),n.consume(f),c}function c(f){return o(f)?(n.exit("data"),a(f)):(n.consume(f),c)}function o(f){if(f===null)return!0;const s=i[f];let m=-1;if(s)for(;++m-1){const r=u[0];typeof r=="string"?u[0]=r.slice(l):u.shift()}a>0&&u.push(t[i].slice(0,a))}return u}function _x(t,e){let n=-1;const l=[];let i;for(;++n0){const Ce=q.tokenStack[q.tokenStack.length-1];(Ce[1]||Hh).call(q,void 0,Ce[0])}for(O.position={start:hn(z.length>0?z[0][1].start:{line:1,column:1,offset:0}),end:hn(z.length>0?z[z.length-2][1].end:{line:1,column:1,offset:0})},rt=-1;++rt0&&(l.className=["language-"+i[0]]);let a={type:"element",tagName:"code",properties:l,children:[{type:"text",value:n}]};return e.meta&&(a.data={meta:e.meta}),t.patch(e,a),a=t.applyData(e,a),a={type:"element",tagName:"pre",properties:{},children:[a]},t.patch(e,a),a}function Xx(t,e){const n={type:"element",tagName:"del",properties:{},children:t.all(e)};return t.patch(e,n),t.applyData(e,n)}function Qx(t,e){const n={type:"element",tagName:"em",properties:{},children:t.all(e)};return t.patch(e,n),t.applyData(e,n)}function Zx(t,e){const n=typeof t.options.clobberPrefix=="string"?t.options.clobberPrefix:"user-content-",l=String(e.identifier).toUpperCase(),i=ci(l.toLowerCase()),a=t.footnoteOrder.indexOf(l);let u,r=t.footnoteCounts.get(l);r===void 0?(r=0,t.footnoteOrder.push(l),u=t.footnoteOrder.length):u=a+1,r+=1,t.footnoteCounts.set(l,r);const c={type:"element",tagName:"a",properties:{href:"#"+n+"fn-"+i,id:n+"fnref-"+i+(r>1?"-"+r:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(u)}]};t.patch(e,c);const o={type:"element",tagName:"sup",properties:{},children:[c]};return t.patch(e,o),t.applyData(e,o)}function Kx(t,e){const n={type:"element",tagName:"h"+e.depth,properties:{},children:t.all(e)};return t.patch(e,n),t.applyData(e,n)}function Fx(t,e){if(t.options.allowDangerousHtml){const n={type:"raw",value:e.value};return t.patch(e,n),t.applyData(e,n)}}function Yg(t,e){const n=e.referenceType;let l="]";if(n==="collapsed"?l+="[]":n==="full"&&(l+="["+(e.label||e.identifier)+"]"),e.type==="imageReference")return[{type:"text",value:"!["+e.alt+l}];const i=t.all(e),a=i[0];a&&a.type==="text"?a.value="["+a.value:i.unshift({type:"text",value:"["});const u=i[i.length-1];return u&&u.type==="text"?u.value+=l:i.push({type:"text",value:l}),i}function Jx(t,e){const n=String(e.identifier).toUpperCase(),l=t.definitionById.get(n);if(!l)return Yg(t,e);const i={src:ci(l.url||""),alt:e.alt};l.title!==null&&l.title!==void 0&&(i.title=l.title);const a={type:"element",tagName:"img",properties:i,children:[]};return t.patch(e,a),t.applyData(e,a)}function Ix(t,e){const n={src:ci(e.url)};e.alt!==null&&e.alt!==void 0&&(n.alt=e.alt),e.title!==null&&e.title!==void 0&&(n.title=e.title);const l={type:"element",tagName:"img",properties:n,children:[]};return t.patch(e,l),t.applyData(e,l)}function $x(t,e){const n={type:"text",value:e.value.replace(/\r?\n|\r/g," ")};t.patch(e,n);const l={type:"element",tagName:"code",properties:{},children:[n]};return t.patch(e,l),t.applyData(e,l)}function Wx(t,e){const n=String(e.identifier).toUpperCase(),l=t.definitionById.get(n);if(!l)return Yg(t,e);const i={href:ci(l.url||"")};l.title!==null&&l.title!==void 0&&(i.title=l.title);const a={type:"element",tagName:"a",properties:i,children:t.all(e)};return t.patch(e,a),t.applyData(e,a)}function Px(t,e){const n={href:ci(e.url)};e.title!==null&&e.title!==void 0&&(n.title=e.title);const l={type:"element",tagName:"a",properties:n,children:t.all(e)};return t.patch(e,l),t.applyData(e,l)}function t2(t,e,n){const l=t.all(e),i=n?e2(n):Vg(e),a={},u=[];if(typeof e.checked=="boolean"){const f=l[0];let s;f&&f.type==="element"&&f.tagName==="p"?s=f:(s={type:"element",tagName:"p",properties:{},children:[]},l.unshift(s)),s.children.length>0&&s.children.unshift({type:"text",value:" "}),s.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:e.checked,disabled:!0},children:[]}),a.className=["task-list-item"]}let r=-1;for(;++r1}function n2(t,e){const n={},l=t.all(e);let i=-1;for(typeof e.start=="number"&&e.start!==1&&(n.start=e.start);++i0){const u={type:"element",tagName:"tbody",properties:{},children:t.wrap(n,!0)},r=xs(e.children[1]),c=xg(e.children[e.children.length-1]);r&&c&&(u.position={start:r,end:c}),i.push(u)}const a={type:"element",tagName:"table",properties:{},children:t.wrap(i,!0)};return t.patch(e,a),t.applyData(e,a)}function r2(t,e,n){const l=n?n.children:void 0,a=(l?l.indexOf(e):1)===0?"th":"td",u=n&&n.type==="table"?n.align:void 0,r=u?u.length:e.children.length;let c=-1;const o=[];for(;++c0,!0),l[0]),i=l.index+l[0].length,l=n.exec(e);return a.push(Yh(e.slice(i),i>0,!1)),a.join("")}function Yh(t,e,n){let l=0,i=t.length;if(e){let a=t.codePointAt(l);for(;a===jh||a===qh;)l++,a=t.codePointAt(l)}if(n){let a=t.codePointAt(i-1);for(;a===jh||a===qh;)i--,a=t.codePointAt(i-1)}return i>l?t.slice(l,i):""}function s2(t,e){const n={type:"text",value:o2(String(e.value))};return t.patch(e,n),t.applyData(e,n)}function f2(t,e){const n={type:"element",tagName:"hr",properties:{},children:[]};return t.patch(e,n),t.applyData(e,n)}const h2={blockquote:Yx,break:Vx,code:Gx,delete:Xx,emphasis:Qx,footnoteReference:Zx,heading:Kx,html:Fx,imageReference:Jx,image:Ix,inlineCode:$x,linkReference:Wx,link:Px,listItem:t2,list:n2,paragraph:l2,root:i2,strong:a2,table:u2,tableCell:c2,tableRow:r2,text:s2,thematicBreak:f2,toml:Ba,yaml:Ba,definition:Ba,footnoteDefinition:Ba};function Ba(){}const Gg=-1,rr=0,Vi=1,Uu=2,ws=3,Ds=4,_s=5,Os=6,Xg=7,Qg=8,Vh=typeof self=="object"?self:globalThis,m2=(t,e)=>{const n=(i,a)=>(t.set(a,i),i),l=i=>{if(t.has(i))return t.get(i);const[a,u]=e[i];switch(a){case rr:case Gg:return n(u,i);case Vi:{const r=n([],i);for(const c of u)r.push(l(c));return r}case Uu:{const r=n({},i);for(const[c,o]of u)r[l(c)]=l(o);return r}case ws:return n(new Date(u),i);case Ds:{const{source:r,flags:c}=u;return n(new RegExp(r,c),i)}case _s:{const r=n(new Map,i);for(const[c,o]of u)r.set(l(c),l(o));return r}case Os:{const r=n(new Set,i);for(const c of u)r.add(l(c));return r}case Xg:{const{name:r,message:c}=u;return n(new Vh[r](c),i)}case Qg:return n(BigInt(u),i);case"BigInt":return n(Object(BigInt(u)),i);case"ArrayBuffer":return n(new Uint8Array(u).buffer,u);case"DataView":{const{buffer:r}=new Uint8Array(u);return n(new DataView(r),u)}}return n(new Vh[a](u),i)};return l},Gh=t=>m2(new Map,t)(0),gl="",{toString:p2}={},{keys:d2}=Object,Si=t=>{const e=typeof t;if(e!=="object"||!t)return[rr,e];const n=p2.call(t).slice(8,-1);switch(n){case"Array":return[Vi,gl];case"Object":return[Uu,gl];case"Date":return[ws,gl];case"RegExp":return[Ds,gl];case"Map":return[_s,gl];case"Set":return[Os,gl];case"DataView":return[Vi,n]}return n.includes("Array")?[Vi,n]:n.includes("Error")?[Xg,n]:[Uu,n]},Ha=([t,e])=>t===rr&&(e==="function"||e==="symbol"),g2=(t,e,n,l)=>{const i=(u,r)=>{const c=l.push(u)-1;return n.set(r,c),c},a=u=>{if(n.has(u))return n.get(u);let[r,c]=Si(u);switch(r){case rr:{let f=u;switch(c){case"bigint":r=Qg,f=u.toString();break;case"function":case"symbol":if(t)throw new TypeError("unable to serialize "+c);f=null;break;case"undefined":return i([Gg],u)}return i([r,f],u)}case Vi:{if(c){let m=u;return c==="DataView"?m=new Uint8Array(u.buffer):c==="ArrayBuffer"&&(m=new Uint8Array(u)),i([c,[...m]],u)}const f=[],s=i([r,f],u);for(const m of u)f.push(a(m));return s}case Uu:{if(c)switch(c){case"BigInt":return i([c,u.toString()],u);case"Boolean":case"Number":case"String":return i([c,u.valueOf()],u)}if(e&&"toJSON"in u)return a(u.toJSON());const f=[],s=i([r,f],u);for(const m of d2(u))(t||!Ha(Si(u[m])))&&f.push([a(m),a(u[m])]);return s}case ws:return i([r,u.toISOString()],u);case Ds:{const{source:f,flags:s}=u;return i([r,{source:f,flags:s}],u)}case _s:{const f=[],s=i([r,f],u);for(const[m,h]of u)(t||!(Ha(Si(m))||Ha(Si(h))))&&f.push([a(m),a(h)]);return s}case Os:{const f=[],s=i([r,f],u);for(const m of u)(t||!Ha(Si(m)))&&f.push(a(m));return s}}const{message:o}=u;return i([r,{name:c,message:o}],u)};return a},Xh=(t,{json:e,lossy:n}={})=>{const l=[];return g2(!(e||n),!!e,new Map,l)(t),l},Lu=typeof structuredClone=="function"?(t,e)=>e&&("json"in e||"lossy"in e)?Gh(Xh(t,e)):structuredClone(t):(t,e)=>Gh(Xh(t,e));function y2(t,e){const n=[{type:"text",value:"↩"}];return e>1&&n.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(e)}]}),n}function b2(t,e){return"Back to reference "+(t+1)+(e>1?"-"+e:"")}function v2(t){const e=typeof t.options.clobberPrefix=="string"?t.options.clobberPrefix:"user-content-",n=t.options.footnoteBackContent||y2,l=t.options.footnoteBackLabel||b2,i=t.options.footnoteLabel||"Footnotes",a=t.options.footnoteLabelTagName||"h2",u=t.options.footnoteLabelProperties||{className:["sr-only"]},r=[];let c=-1;for(;++c0&&g.push({type:"text",value:" "});let d=typeof n=="string"?n:n(c,h);typeof d=="string"&&(d={type:"text",value:d}),g.push({type:"element",tagName:"a",properties:{href:"#"+e+"fnref-"+m+(h>1?"-"+h:""),dataFootnoteBackref:"",ariaLabel:typeof l=="string"?l:l(c,h),className:["data-footnote-backref"]},children:Array.isArray(d)?d:[d]})}const k=f[f.length-1];if(k&&k.type==="element"&&k.tagName==="p"){const d=k.children[k.children.length-1];d&&d.type==="text"?d.value+=" ":k.children.push({type:"text",value:" "}),k.children.push(...g)}else f.push(...g);const p={type:"element",tagName:"li",properties:{id:e+"fn-"+m},children:t.wrap(f,!0)};t.patch(o,p),r.push(p)}if(r.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:a,properties:{...Lu(u),id:"footnote-label"},children:[{type:"text",value:i}]},{type:"text",value:` +`},{type:"element",tagName:"ol",properties:{},children:t.wrap(r,!0)},{type:"text",value:` +`}]}}const cr=function(t){if(t==null)return T2;if(typeof t=="function")return or(t);if(typeof t=="object")return Array.isArray(t)?S2(t):x2(t);if(typeof t=="string")return E2(t);throw new Error("Expected function, string, or object as test")};function S2(t){const e=[];let n=-1;for(;++n":""))+")"})}return m;function m(){let h=Zg,g,S,k;if((!e||a(c,o,f[f.length-1]||void 0))&&(h=C2(n(c,f)),h[0]===fo))return h;if("children"in c&&c.children){const p=c;if(p.children&&h[0]!==A2)for(S=(l?p.children.length:-1)+u,k=f.concat(p);S>-1&&S0&&n.push({type:"text",value:` +`}),n}function Qh(t){let e=0,n=t.charCodeAt(e);for(;n===9||n===32;)e++,n=t.charCodeAt(e);return t.slice(e)}function Zh(t,e){const n=D2(t,e),l=n.one(t,void 0),i=v2(n),a=Array.isArray(l)?{type:"root",children:l}:l||{type:"root",children:[]};return i&&a.children.push({type:"text",value:` +`},i),a}function R2(t,e){return t&&"run"in t?async function(n,l){const i=Zh(n,{file:l,...e});await t.run(i,l)}:function(n,l){return Zh(n,{file:l,...t||e})}}function Kh(t){if(t)throw t}var lu=Object.prototype.hasOwnProperty,Fg=Object.prototype.toString,Fh=Object.defineProperty,Jh=Object.getOwnPropertyDescriptor,Ih=function(e){return typeof Array.isArray=="function"?Array.isArray(e):Fg.call(e)==="[object Array]"},$h=function(e){if(!e||Fg.call(e)!=="[object Object]")return!1;var n=lu.call(e,"constructor"),l=e.constructor&&e.constructor.prototype&&lu.call(e.constructor.prototype,"isPrototypeOf");if(e.constructor&&!n&&!l)return!1;var i;for(i in e);return typeof i>"u"||lu.call(e,i)},Wh=function(e,n){Fh&&n.name==="__proto__"?Fh(e,n.name,{enumerable:!0,configurable:!0,value:n.newValue,writable:!0}):e[n.name]=n.newValue},Ph=function(e,n){if(n==="__proto__")if(lu.call(e,n)){if(Jh)return Jh(e,n).value}else return;return e[n]},U2=function t(){var e,n,l,i,a,u,r=arguments[0],c=1,o=arguments.length,f=!1;for(typeof r=="boolean"&&(f=r,r=arguments[1]||{},c=2),(r==null||typeof r!="object"&&typeof r!="function")&&(r={});cu.length;let c;r&&u.push(i);try{c=t.apply(this,u)}catch(o){const f=o;if(r&&n)throw f;return i(f)}r||(c&&c.then&&typeof c.then=="function"?c.then(a,i):c instanceof Error?i(c):a(c))}function i(u,...r){n||(n=!0,e(u,...r))}function a(u){i(null,u)}}const Me={basename:H2,dirname:j2,extname:q2,join:Y2,sep:"/"};function H2(t,e){if(e!==void 0&&typeof e!="string")throw new TypeError('"ext" argument must be a string');va(t);let n=0,l=-1,i=t.length,a;if(e===void 0||e.length===0||e.length>t.length){for(;i--;)if(t.codePointAt(i)===47){if(a){n=i+1;break}}else l<0&&(a=!0,l=i+1);return l<0?"":t.slice(n,l)}if(e===t)return"";let u=-1,r=e.length-1;for(;i--;)if(t.codePointAt(i)===47){if(a){n=i+1;break}}else u<0&&(a=!0,u=i+1),r>-1&&(t.codePointAt(i)===e.codePointAt(r--)?r<0&&(l=i):(r=-1,l=u));return n===l?l=u:l<0&&(l=t.length),t.slice(n,l)}function j2(t){if(va(t),t.length===0)return".";let e=-1,n=t.length,l;for(;--n;)if(t.codePointAt(n)===47){if(l){e=n;break}}else l||(l=!0);return e<0?t.codePointAt(0)===47?"/":".":e===1&&t.codePointAt(0)===47?"//":t.slice(0,e)}function q2(t){va(t);let e=t.length,n=-1,l=0,i=-1,a=0,u;for(;e--;){const r=t.codePointAt(e);if(r===47){if(u){l=e+1;break}continue}n<0&&(u=!0,n=e+1),r===46?i<0?i=e:a!==1&&(a=1):i>-1&&(a=-1)}return i<0||n<0||a===0||a===1&&i===n-1&&i===l+1?"":t.slice(i,n)}function Y2(...t){let e=-1,n;for(;++e0&&t.codePointAt(t.length-1)===47&&(n+="/"),e?"/"+n:n}function G2(t,e){let n="",l=0,i=-1,a=0,u=-1,r,c;for(;++u<=t.length;){if(u2){if(c=n.lastIndexOf("/"),c!==n.length-1){c<0?(n="",l=0):(n=n.slice(0,c),l=n.length-1-n.lastIndexOf("/")),i=u,a=0;continue}}else if(n.length>0){n="",l=0,i=u,a=0;continue}}e&&(n=n.length>0?n+"/..":"..",l=2)}else n.length>0?n+="/"+t.slice(i+1,u):n=t.slice(i+1,u),l=u-i-1;i=u,a=0}else r===46&&a>-1?a++:a=-1}return n}function va(t){if(typeof t!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(t))}const X2={cwd:Q2};function Q2(){return"/"}function po(t){return!!(t!==null&&typeof t=="object"&&"href"in t&&t.href&&"protocol"in t&&t.protocol&&t.auth===void 0)}function Z2(t){if(typeof t=="string")t=new URL(t);else if(!po(t)){const e=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+t+"`");throw e.code="ERR_INVALID_ARG_TYPE",e}if(t.protocol!=="file:"){const e=new TypeError("The URL must be of scheme file");throw e.code="ERR_INVALID_URL_SCHEME",e}return K2(t)}function K2(t){if(t.hostname!==""){const l=new TypeError('File URL host must be "localhost" or empty on darwin');throw l.code="ERR_INVALID_FILE_URL_HOST",l}const e=t.pathname;let n=-1;for(;++n0){let[h,...g]=f;const S=l[m][1];mo(S)&&mo(h)&&(h=$r(!0,S,h)),l[m]=[o,h,...g]}}}}const $2=new Ns().freeze();function ec(t,e){if(typeof e!="function")throw new TypeError("Cannot `"+t+"` without `parser`")}function nc(t,e){if(typeof e!="function")throw new TypeError("Cannot `"+t+"` without `compiler`")}function lc(t,e){if(e)throw new Error("Cannot call `"+t+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function em(t){if(!mo(t)||typeof t.type!="string")throw new TypeError("Expected node, got `"+t+"`")}function nm(t,e,n){if(!n)throw new Error("`"+t+"` finished async. Use `"+e+"` instead")}function ja(t){return W2(t)?t:new Jg(t)}function W2(t){return!!(t&&typeof t=="object"&&"message"in t&&"messages"in t)}function P2(t){return typeof t=="string"||tE(t)}function tE(t){return!!(t&&typeof t=="object"&&"byteLength"in t&&"byteOffset"in t)}const eE="https://github.com/remarkjs/react-markdown/blob/main/changelog.md",lm=[],im={allowDangerousHtml:!0},nE=/^(https?|ircs?|mailto|xmpp)$/i,lE=[{from:"astPlugins",id:"remove-buggy-html-in-markdown-parser"},{from:"allowDangerousHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"allowNode",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowElement"},{from:"allowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowedElements"},{from:"disallowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"disallowedElements"},{from:"escapeHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"includeElementIndex",id:"#remove-includeelementindex"},{from:"includeNodeIndex",id:"change-includenodeindex-to-includeelementindex"},{from:"linkTarget",id:"remove-linktarget"},{from:"plugins",id:"change-plugins-to-remarkplugins",to:"remarkPlugins"},{from:"rawSourcePos",id:"#remove-rawsourcepos"},{from:"renderers",id:"change-renderers-to-components",to:"components"},{from:"source",id:"change-source-to-children",to:"children"},{from:"sourcePos",id:"#remove-sourcepos"},{from:"transformImageUri",id:"#add-urltransform",to:"urlTransform"},{from:"transformLinkUri",id:"#add-urltransform",to:"urlTransform"}];function iE(t){const e=aE(t),n=uE(t);return rE(e.runSync(e.parse(n),n),t)}function aE(t){const e=t.rehypePlugins||lm,n=t.remarkPlugins||lm,l=t.remarkRehypeOptions?{...t.remarkRehypeOptions,...im}:im;return $2().use(qx).use(n).use(R2,l).use(e)}function uE(t){const e=t.children||"",n=new Jg;return typeof e=="string"&&(n.value=e),n}function rE(t,e){const n=e.allowedElements,l=e.allowElement,i=e.components,a=e.disallowedElements,u=e.skipHtml,r=e.unwrapDisallowed,c=e.urlTransform||cE;for(const f of lE)Object.hasOwn(e,f.from)&&(""+f.from+(f.to?"use `"+f.to+"` instead":"remove it")+eE+f.id,void 0);return e.className&&(t={type:"element",tagName:"div",properties:{className:e.className},children:t.type==="root"?t.children:[t]}),Ms(t,o),Tv(t,{Fragment:X.Fragment,components:i,ignoreInvalidStyle:!0,jsx:X.jsx,jsxs:X.jsxs,passKeys:!0,passNode:!0});function o(f,s,m){if(f.type==="raw"&&m&&typeof s=="number")return u?m.children.splice(s,1):m.children[s]={type:"text",value:f.value},s;if(f.type==="element"){let h;for(h in Fr)if(Object.hasOwn(Fr,h)&&Object.hasOwn(f.properties,h)){const g=f.properties[h],S=Fr[h];(S===null||S.includes(f.tagName))&&(f.properties[h]=c(String(g||""),h,f))}}if(f.type==="element"){let h=n?!n.includes(f.tagName):a?a.includes(f.tagName):!1;if(!h&&l&&typeof s=="number"&&(h=!l(f,s,m)),h&&m&&typeof s=="number")return r&&f.children?m.children.splice(s,1,...f.children):m.children.splice(s,1),s}}}function cE(t){const e=t.indexOf(":"),n=t.indexOf("?"),l=t.indexOf("#"),i=t.indexOf("/");return e===-1||i!==-1&&e>i||n!==-1&&e>n||l!==-1&&e>l||nE.test(t.slice(0,e))?t:""}function am(t,e){const n=String(t);if(typeof e!="string")throw new TypeError("Expected character");let l=0,i=n.indexOf(e);for(;i!==-1;)l++,i=n.indexOf(e,i+e.length);return l}function oE(t){if(typeof t!="string")throw new TypeError("Expected a string");return t.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function sE(t,e,n){const i=cr((n||{}).ignore||[]),a=fE(e);let u=-1;for(;++u0?{type:"text",value:T}:void 0),T===!1?m.lastIndex=E+1:(g!==E&&d.push({type:"text",value:o.value.slice(g,E)}),Array.isArray(T)?d.push(...T):T&&d.push(T),g=E+y[0].length,p=!0),!m.global)break;y=m.exec(o.value)}return p?(g?\]}]+$/.exec(t);if(!e)return[t,void 0];t=t.slice(0,e.index);let n=e[0],l=n.indexOf(")");const i=am(t,"(");let a=am(t,")");for(;l!==-1&&i>a;)t+=n.slice(0,l+1),n=n.slice(l+1),l=n.indexOf(")"),a++;return[t,n]}function Ig(t,e){const n=t.input.charCodeAt(t.index-1);return(t.index===0||il(n)||ar(n))&&(!e||n!==47)}$g.peek=RE;function AE(){this.buffer()}function CE(t){this.enter({type:"footnoteReference",identifier:"",label:""},t)}function wE(){this.buffer()}function DE(t){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},t)}function _E(t){const e=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=_e(this.sliceSerialize(t)).toLowerCase(),n.label=e}function OE(t){this.exit(t)}function ME(t){const e=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=_e(this.sliceSerialize(t)).toLowerCase(),n.label=e}function NE(t){this.exit(t)}function RE(){return"["}function $g(t,e,n,l){const i=n.createTracker(l);let a=i.move("[^");const u=n.enter("footnoteReference"),r=n.enter("reference");return a+=i.move(n.safe(n.associationId(t),{after:"]",before:a})),r(),u(),a+=i.move("]"),a}function UE(){return{enter:{gfmFootnoteCallString:AE,gfmFootnoteCall:CE,gfmFootnoteDefinitionLabelString:wE,gfmFootnoteDefinition:DE},exit:{gfmFootnoteCallString:_E,gfmFootnoteCall:OE,gfmFootnoteDefinitionLabelString:ME,gfmFootnoteDefinition:NE}}}function LE(t){let e=!1;return t&&t.firstLineBlank&&(e=!0),{handlers:{footnoteDefinition:n,footnoteReference:$g},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function n(l,i,a,u){const r=a.createTracker(u);let c=r.move("[^");const o=a.enter("footnoteDefinition"),f=a.enter("label");return c+=r.move(a.safe(a.associationId(l),{before:c,after:"]"})),f(),c+=r.move("]:"),l.children&&l.children.length>0&&(r.shift(4),c+=r.move((e?` +`:" ")+a.indentLines(a.containerFlow(l,r.current()),e?Wg:BE))),o(),c}}function BE(t,e,n){return e===0?t:Wg(t,e,n)}function Wg(t,e,n){return(n?"":" ")+t}const HE=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];Pg.peek=GE;function jE(){return{canContainEols:["delete"],enter:{strikethrough:YE},exit:{strikethrough:VE}}}function qE(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:HE}],handlers:{delete:Pg}}}function YE(t){this.enter({type:"delete",children:[]},t)}function VE(t){this.exit(t)}function Pg(t,e,n,l){const i=n.createTracker(l),a=n.enter("strikethrough");let u=i.move("~~");return u+=n.containerPhrasing(t,{...i.current(),before:u,after:"~"}),u+=i.move("~~"),a(),u}function GE(){return"~"}function XE(t){return t.length}function QE(t,e){const n=e||{},l=(n.align||[]).concat(),i=n.stringLength||XE,a=[],u=[],r=[],c=[];let o=0,f=-1;for(;++fo&&(o=t[f].length);++pc[p])&&(c[p]=y)}S.push(d)}u[f]=S,r[f]=k}let s=-1;if(typeof l=="object"&&"length"in l)for(;++sc[s]&&(c[s]=d),h[s]=d),m[s]=y}u.splice(1,0,m),r.splice(1,0,h),f=-1;const g=[];for(;++f "),a.shift(2);const u=n.indentLines(n.containerFlow(t,a.current()),FE);return i(),u}function FE(t,e,n){return">"+(n?"":" ")+t}function JE(t,e){return rm(t,e.inConstruct,!0)&&!rm(t,e.notInConstruct,!1)}function rm(t,e,n){if(typeof e=="string"&&(e=[e]),!e||e.length===0)return n;let l=-1;for(;++lu&&(u=a):a=1,i=l+e.length,l=n.indexOf(e,i);return u}function $E(t,e){return!!(e.options.fences===!1&&t.value&&!t.lang&&/[^ \r\n]/.test(t.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(t.value))}function WE(t){const e=t.options.fence||"`";if(e!=="`"&&e!=="~")throw new Error("Cannot serialize code with `"+e+"` for `options.fence`, expected `` ` `` or `~`");return e}function PE(t,e,n,l){const i=WE(n),a=t.value||"",u=i==="`"?"GraveAccent":"Tilde";if($E(t,n)){const s=n.enter("codeIndented"),m=n.indentLines(a,tT);return s(),m}const r=n.createTracker(l),c=i.repeat(Math.max(IE(a,i)+1,3)),o=n.enter("codeFenced");let f=r.move(c);if(t.lang){const s=n.enter(`codeFencedLang${u}`);f+=r.move(n.safe(t.lang,{before:f,after:" ",encode:["`"],...r.current()})),s()}if(t.lang&&t.meta){const s=n.enter(`codeFencedMeta${u}`);f+=r.move(" "),f+=r.move(n.safe(t.meta,{before:f,after:` +`,encode:["`"],...r.current()})),s()}return f+=r.move(` +`),a&&(f+=r.move(a+` +`)),f+=r.move(c),o(),f}function tT(t,e,n){return(n?"":" ")+t}function Rs(t){const e=t.options.quote||'"';if(e!=='"'&&e!=="'")throw new Error("Cannot serialize title with `"+e+"` for `options.quote`, expected `\"`, or `'`");return e}function eT(t,e,n,l){const i=Rs(n),a=i==='"'?"Quote":"Apostrophe",u=n.enter("definition");let r=n.enter("label");const c=n.createTracker(l);let o=c.move("[");return o+=c.move(n.safe(n.associationId(t),{before:o,after:"]",...c.current()})),o+=c.move("]: "),r(),!t.url||/[\0- \u007F]/.test(t.url)?(r=n.enter("destinationLiteral"),o+=c.move("<"),o+=c.move(n.safe(t.url,{before:o,after:">",...c.current()})),o+=c.move(">")):(r=n.enter("destinationRaw"),o+=c.move(n.safe(t.url,{before:o,after:t.title?" ":` +`,...c.current()}))),r(),t.title&&(r=n.enter(`title${a}`),o+=c.move(" "+i),o+=c.move(n.safe(t.title,{before:o,after:i,...c.current()})),o+=c.move(i),r()),u(),o}function nT(t){const e=t.options.emphasis||"*";if(e!=="*"&&e!=="_")throw new Error("Cannot serialize emphasis with `"+e+"` for `options.emphasis`, expected `*`, or `_`");return e}function ia(t){return"&#x"+t.toString(16).toUpperCase()+";"}function Bu(t,e,n){const l=Wl(t),i=Wl(e);return l===void 0?i===void 0?n==="_"?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!0}:l===1?i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!1}:{inside:!1,outside:!1}}ty.peek=lT;function ty(t,e,n,l){const i=nT(n),a=n.enter("emphasis"),u=n.createTracker(l),r=u.move(i);let c=u.move(n.containerPhrasing(t,{after:i,before:r,...u.current()}));const o=c.charCodeAt(0),f=Bu(l.before.charCodeAt(l.before.length-1),o,i);f.inside&&(c=ia(o)+c.slice(1));const s=c.charCodeAt(c.length-1),m=Bu(l.after.charCodeAt(0),s,i);m.inside&&(c=c.slice(0,-1)+ia(s));const h=u.move(i);return a(),n.attentionEncodeSurroundingInfo={after:m.outside,before:f.outside},r+c+h}function lT(t,e,n){return n.options.emphasis||"*"}function iT(t,e){let n=!1;return Ms(t,function(l){if("value"in l&&/\r?\n|\r/.test(l.value)||l.type==="break")return n=!0,fo}),!!((!t.depth||t.depth<3)&&zs(t)&&(e.options.setext||n))}function aT(t,e,n,l){const i=Math.max(Math.min(6,t.depth||1),1),a=n.createTracker(l);if(iT(t,n)){const f=n.enter("headingSetext"),s=n.enter("phrasing"),m=n.containerPhrasing(t,{...a.current(),before:` +`,after:` +`});return s(),f(),m+` +`+(i===1?"=":"-").repeat(m.length-(Math.max(m.lastIndexOf("\r"),m.lastIndexOf(` +`))+1))}const u="#".repeat(i),r=n.enter("headingAtx"),c=n.enter("phrasing");a.move(u+" ");let o=n.containerPhrasing(t,{before:"# ",after:` +`,...a.current()});return/^[\t ]/.test(o)&&(o=ia(o.charCodeAt(0))+o.slice(1)),o=o?u+" "+o:u,n.options.closeAtx&&(o+=" "+u),c(),r(),o}ey.peek=uT;function ey(t){return t.value||""}function uT(){return"<"}ny.peek=rT;function ny(t,e,n,l){const i=Rs(n),a=i==='"'?"Quote":"Apostrophe",u=n.enter("image");let r=n.enter("label");const c=n.createTracker(l);let o=c.move("![");return o+=c.move(n.safe(t.alt,{before:o,after:"]",...c.current()})),o+=c.move("]("),r(),!t.url&&t.title||/[\0- \u007F]/.test(t.url)?(r=n.enter("destinationLiteral"),o+=c.move("<"),o+=c.move(n.safe(t.url,{before:o,after:">",...c.current()})),o+=c.move(">")):(r=n.enter("destinationRaw"),o+=c.move(n.safe(t.url,{before:o,after:t.title?" ":")",...c.current()}))),r(),t.title&&(r=n.enter(`title${a}`),o+=c.move(" "+i),o+=c.move(n.safe(t.title,{before:o,after:i,...c.current()})),o+=c.move(i),r()),o+=c.move(")"),u(),o}function rT(){return"!"}ly.peek=cT;function ly(t,e,n,l){const i=t.referenceType,a=n.enter("imageReference");let u=n.enter("label");const r=n.createTracker(l);let c=r.move("![");const o=n.safe(t.alt,{before:c,after:"]",...r.current()});c+=r.move(o+"]["),u();const f=n.stack;n.stack=[],u=n.enter("reference");const s=n.safe(n.associationId(t),{before:c,after:"]",...r.current()});return u(),n.stack=f,a(),i==="full"||!o||o!==s?c+=r.move(s+"]"):i==="shortcut"?c=c.slice(0,-1):c+=r.move("]"),c}function cT(){return"!"}iy.peek=oT;function iy(t,e,n){let l=t.value||"",i="`",a=-1;for(;new RegExp("(^|[^`])"+i+"([^`]|$)").test(l);)i+="`";for(/[^ \r\n]/.test(l)&&(/^[ \r\n]/.test(l)&&/[ \r\n]$/.test(l)||/^`|`$/.test(l))&&(l=" "+l+" ");++a\u007F]/.test(t.url))}uy.peek=sT;function uy(t,e,n,l){const i=Rs(n),a=i==='"'?"Quote":"Apostrophe",u=n.createTracker(l);let r,c;if(ay(t,n)){const f=n.stack;n.stack=[],r=n.enter("autolink");let s=u.move("<");return s+=u.move(n.containerPhrasing(t,{before:s,after:">",...u.current()})),s+=u.move(">"),r(),n.stack=f,s}r=n.enter("link"),c=n.enter("label");let o=u.move("[");return o+=u.move(n.containerPhrasing(t,{before:o,after:"](",...u.current()})),o+=u.move("]("),c(),!t.url&&t.title||/[\0- \u007F]/.test(t.url)?(c=n.enter("destinationLiteral"),o+=u.move("<"),o+=u.move(n.safe(t.url,{before:o,after:">",...u.current()})),o+=u.move(">")):(c=n.enter("destinationRaw"),o+=u.move(n.safe(t.url,{before:o,after:t.title?" ":")",...u.current()}))),c(),t.title&&(c=n.enter(`title${a}`),o+=u.move(" "+i),o+=u.move(n.safe(t.title,{before:o,after:i,...u.current()})),o+=u.move(i),c()),o+=u.move(")"),r(),o}function sT(t,e,n){return ay(t,n)?"<":"["}ry.peek=fT;function ry(t,e,n,l){const i=t.referenceType,a=n.enter("linkReference");let u=n.enter("label");const r=n.createTracker(l);let c=r.move("[");const o=n.containerPhrasing(t,{before:c,after:"]",...r.current()});c+=r.move(o+"]["),u();const f=n.stack;n.stack=[],u=n.enter("reference");const s=n.safe(n.associationId(t),{before:c,after:"]",...r.current()});return u(),n.stack=f,a(),i==="full"||!o||o!==s?c+=r.move(s+"]"):i==="shortcut"?c=c.slice(0,-1):c+=r.move("]"),c}function fT(){return"["}function Us(t){const e=t.options.bullet||"*";if(e!=="*"&&e!=="+"&&e!=="-")throw new Error("Cannot serialize items with `"+e+"` for `options.bullet`, expected `*`, `+`, or `-`");return e}function hT(t){const e=Us(t),n=t.options.bulletOther;if(!n)return e==="*"?"-":"*";if(n!=="*"&&n!=="+"&&n!=="-")throw new Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===e)throw new Error("Expected `bullet` (`"+e+"`) and `bulletOther` (`"+n+"`) to be different");return n}function mT(t){const e=t.options.bulletOrdered||".";if(e!=="."&&e!==")")throw new Error("Cannot serialize items with `"+e+"` for `options.bulletOrdered`, expected `.` or `)`");return e}function cy(t){const e=t.options.rule||"*";if(e!=="*"&&e!=="-"&&e!=="_")throw new Error("Cannot serialize rules with `"+e+"` for `options.rule`, expected `*`, `-`, or `_`");return e}function pT(t,e,n,l){const i=n.enter("list"),a=n.bulletCurrent;let u=t.ordered?mT(n):Us(n);const r=t.ordered?u==="."?")":".":hT(n);let c=e&&n.bulletLastUsed?u===n.bulletLastUsed:!1;if(!t.ordered){const f=t.children?t.children[0]:void 0;if((u==="*"||u==="-")&&f&&(!f.children||!f.children[0])&&n.stack[n.stack.length-1]==="list"&&n.stack[n.stack.length-2]==="listItem"&&n.stack[n.stack.length-3]==="list"&&n.stack[n.stack.length-4]==="listItem"&&n.indexStack[n.indexStack.length-1]===0&&n.indexStack[n.indexStack.length-2]===0&&n.indexStack[n.indexStack.length-3]===0&&(c=!0),cy(n)===u&&f){let s=-1;for(;++s-1?e.start:1)+(n.options.incrementListMarker===!1?0:e.children.indexOf(t))+a);let u=a.length+1;(i==="tab"||i==="mixed"&&(e&&e.type==="list"&&e.spread||t.spread))&&(u=Math.ceil(u/4)*4);const r=n.createTracker(l);r.move(a+" ".repeat(u-a.length)),r.shift(u);const c=n.enter("listItem"),o=n.indentLines(n.containerFlow(t,r.current()),f);return c(),o;function f(s,m,h){return m?(h?"":" ".repeat(u))+s:(h?a:a+" ".repeat(u-a.length))+s}}function yT(t,e,n,l){const i=n.enter("paragraph"),a=n.enter("phrasing"),u=n.containerPhrasing(t,l);return a(),i(),u}const bT=cr(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function vT(t,e,n,l){return(t.children.some(function(u){return bT(u)})?n.containerPhrasing:n.containerFlow).call(n,t,l)}function ST(t){const e=t.options.strong||"*";if(e!=="*"&&e!=="_")throw new Error("Cannot serialize strong with `"+e+"` for `options.strong`, expected `*`, or `_`");return e}oy.peek=xT;function oy(t,e,n,l){const i=ST(n),a=n.enter("strong"),u=n.createTracker(l),r=u.move(i+i);let c=u.move(n.containerPhrasing(t,{after:i,before:r,...u.current()}));const o=c.charCodeAt(0),f=Bu(l.before.charCodeAt(l.before.length-1),o,i);f.inside&&(c=ia(o)+c.slice(1));const s=c.charCodeAt(c.length-1),m=Bu(l.after.charCodeAt(0),s,i);m.inside&&(c=c.slice(0,-1)+ia(s));const h=u.move(i+i);return a(),n.attentionEncodeSurroundingInfo={after:m.outside,before:f.outside},r+c+h}function xT(t,e,n){return n.options.strong||"*"}function ET(t,e,n,l){return n.safe(t.value,l)}function TT(t){const e=t.options.ruleRepetition||3;if(e<3)throw new Error("Cannot serialize rules with repetition `"+e+"` for `options.ruleRepetition`, expected `3` or more");return e}function kT(t,e,n){const l=(cy(n)+(n.options.ruleSpaces?" ":"")).repeat(TT(n));return n.options.ruleSpaces?l.slice(0,-1):l}const sy={blockquote:KE,break:cm,code:PE,definition:eT,emphasis:ty,hardBreak:cm,heading:aT,html:ey,image:ny,imageReference:ly,inlineCode:iy,link:uy,linkReference:ry,list:pT,listItem:gT,paragraph:yT,root:vT,strong:oy,text:ET,thematicBreak:kT};function zT(){return{enter:{table:AT,tableData:om,tableHeader:om,tableRow:wT},exit:{codeText:DT,table:CT,tableData:rc,tableHeader:rc,tableRow:rc}}}function AT(t){const e=t._align;this.enter({type:"table",align:e.map(function(n){return n==="none"?null:n}),children:[]},t),this.data.inTable=!0}function CT(t){this.exit(t),this.data.inTable=void 0}function wT(t){this.enter({type:"tableRow",children:[]},t)}function rc(t){this.exit(t)}function om(t){this.enter({type:"tableCell",children:[]},t)}function DT(t){let e=this.resume();this.data.inTable&&(e=e.replace(/\\([\\|])/g,_T));const n=this.stack[this.stack.length-1];n.type,n.value=e,this.exit(t)}function _T(t,e){return e==="|"?e:t}function OT(t){const e=t||{},n=e.tableCellPadding,l=e.tablePipeAlign,i=e.stringLength,a=n?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:` +`,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:m,table:u,tableCell:c,tableRow:r}};function u(h,g,S,k){return o(f(h,S,k),h.align)}function r(h,g,S,k){const p=s(h,S,k),d=o([p]);return d.slice(0,d.indexOf(` +`))}function c(h,g,S,k){const p=S.enter("tableCell"),d=S.enter("phrasing"),y=S.containerPhrasing(h,{...k,before:a,after:a});return d(),p(),y}function o(h,g){return QE(h,{align:g,alignDelimiters:l,padding:n,stringLength:i})}function f(h,g,S){const k=h.children;let p=-1;const d=[],y=g.enter("table");for(;++p0&&!n&&(t[t.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}const JT={tokenize:lk,partial:!0};function IT(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:tk,continuation:{tokenize:ek},exit:nk}},text:{91:{name:"gfmFootnoteCall",tokenize:PT},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:$T,resolveTo:WT}}}}function $T(t,e,n){const l=this;let i=l.events.length;const a=l.parser.gfmFootnotes||(l.parser.gfmFootnotes=[]);let u;for(;i--;){const c=l.events[i][1];if(c.type==="labelImage"){u=c;break}if(c.type==="gfmFootnoteCall"||c.type==="labelLink"||c.type==="label"||c.type==="image"||c.type==="link")break}return r;function r(c){if(!u||!u._balanced)return n(c);const o=_e(l.sliceSerialize({start:u.end,end:l.now()}));return o.codePointAt(0)!==94||!a.includes(o.slice(1))?n(c):(t.enter("gfmFootnoteCallLabelMarker"),t.consume(c),t.exit("gfmFootnoteCallLabelMarker"),e(c))}}function WT(t,e){let n=t.length;for(;n--;)if(t[n][1].type==="labelImage"&&t[n][0]==="enter"){t[n][1];break}t[n+1][1].type="data",t[n+3][1].type="gfmFootnoteCallLabelMarker";const l={type:"gfmFootnoteCall",start:Object.assign({},t[n+3][1].start),end:Object.assign({},t[t.length-1][1].end)},i={type:"gfmFootnoteCallMarker",start:Object.assign({},t[n+3][1].end),end:Object.assign({},t[n+3][1].end)};i.end.column++,i.end.offset++,i.end._bufferIndex++;const a={type:"gfmFootnoteCallString",start:Object.assign({},i.end),end:Object.assign({},t[t.length-1][1].start)},u={type:"chunkString",contentType:"string",start:Object.assign({},a.start),end:Object.assign({},a.end)},r=[t[n+1],t[n+2],["enter",l,e],t[n+3],t[n+4],["enter",i,e],["exit",i,e],["enter",a,e],["enter",u,e],["exit",u,e],["exit",a,e],t[t.length-2],t[t.length-1],["exit",l,e]];return t.splice(n,t.length-n+1,...r),t}function PT(t,e,n){const l=this,i=l.parser.gfmFootnotes||(l.parser.gfmFootnotes=[]);let a=0,u;return r;function r(s){return t.enter("gfmFootnoteCall"),t.enter("gfmFootnoteCallLabelMarker"),t.consume(s),t.exit("gfmFootnoteCallLabelMarker"),c}function c(s){return s!==94?n(s):(t.enter("gfmFootnoteCallMarker"),t.consume(s),t.exit("gfmFootnoteCallMarker"),t.enter("gfmFootnoteCallString"),t.enter("chunkString").contentType="string",o)}function o(s){if(a>999||s===93&&!u||s===null||s===91||ot(s))return n(s);if(s===93){t.exit("chunkString");const m=t.exit("gfmFootnoteCallString");return i.includes(_e(l.sliceSerialize(m)))?(t.enter("gfmFootnoteCallLabelMarker"),t.consume(s),t.exit("gfmFootnoteCallLabelMarker"),t.exit("gfmFootnoteCall"),e):n(s)}return ot(s)||(u=!0),a++,t.consume(s),s===92?f:o}function f(s){return s===91||s===92||s===93?(t.consume(s),a++,o):o(s)}}function tk(t,e,n){const l=this,i=l.parser.gfmFootnotes||(l.parser.gfmFootnotes=[]);let a,u=0,r;return c;function c(g){return t.enter("gfmFootnoteDefinition")._container=!0,t.enter("gfmFootnoteDefinitionLabel"),t.enter("gfmFootnoteDefinitionLabelMarker"),t.consume(g),t.exit("gfmFootnoteDefinitionLabelMarker"),o}function o(g){return g===94?(t.enter("gfmFootnoteDefinitionMarker"),t.consume(g),t.exit("gfmFootnoteDefinitionMarker"),t.enter("gfmFootnoteDefinitionLabelString"),t.enter("chunkString").contentType="string",f):n(g)}function f(g){if(u>999||g===93&&!r||g===null||g===91||ot(g))return n(g);if(g===93){t.exit("chunkString");const S=t.exit("gfmFootnoteDefinitionLabelString");return a=_e(l.sliceSerialize(S)),t.enter("gfmFootnoteDefinitionLabelMarker"),t.consume(g),t.exit("gfmFootnoteDefinitionLabelMarker"),t.exit("gfmFootnoteDefinitionLabel"),m}return ot(g)||(r=!0),u++,t.consume(g),g===92?s:f}function s(g){return g===91||g===92||g===93?(t.consume(g),u++,f):f(g)}function m(g){return g===58?(t.enter("definitionMarker"),t.consume(g),t.exit("definitionMarker"),i.includes(a)||i.push(a),W(t,h,"gfmFootnoteDefinitionWhitespace")):n(g)}function h(g){return e(g)}}function ek(t,e,n){return t.check(ba,e,t.attempt(JT,e,n))}function nk(t){t.exit("gfmFootnoteDefinition")}function lk(t,e,n){const l=this;return W(t,i,"gfmFootnoteDefinitionIndent",5);function i(a){const u=l.events[l.events.length-1];return u&&u[1].type==="gfmFootnoteDefinitionIndent"&&u[2].sliceSerialize(u[1],!0).length===4?e(a):n(a)}}function ik(t){let n=(t||{}).singleTilde;const l={name:"strikethrough",tokenize:a,resolveAll:i};return n==null&&(n=!0),{text:{126:l},insideSpan:{null:[l]},attentionMarkers:{null:[126]}};function i(u,r){let c=-1;for(;++c1?c(g):(u.consume(g),s++,h);if(s<2&&!n)return c(g);const k=u.exit("strikethroughSequenceTemporary"),p=Wl(g);return k._open=!p||p===2&&!!S,k._close=!S||S===2&&!!p,r(g)}}}class ak{constructor(){this.map=[]}add(e,n,l){uk(this,e,n,l)}consume(e){if(this.map.sort(function(a,u){return a[0]-u[0]}),this.map.length===0)return;let n=this.map.length;const l=[];for(;n>0;)n-=1,l.push(e.slice(this.map[n][0]+this.map[n][1]),this.map[n][2]),e.length=this.map[n][0];l.push(e.slice()),e.length=0;let i=l.pop();for(;i;){for(const a of i)e.push(a);i=l.pop()}this.map.length=0}}function uk(t,e,n,l){let i=0;if(!(n===0&&l.length===0)){for(;i-1;){const ht=l.events[R][1].type;if(ht==="lineEnding"||ht==="linePrefix")R--;else break}const U=R>-1?l.events[R][1].type:null,nt=U==="tableHead"||U==="tableRow"?T:c;return nt===T&&l.parser.lazy[l.now().line]?n(x):nt(x)}function c(x){return t.enter("tableHead"),t.enter("tableRow"),o(x)}function o(x){return x===124||(u=!0,a+=1),f(x)}function f(x){return x===null?n(x):B(x)?a>1?(a=0,l.interrupt=!0,t.exit("tableRow"),t.enter("lineEnding"),t.consume(x),t.exit("lineEnding"),h):n(x):F(x)?W(t,f,"whitespace")(x):(a+=1,u&&(u=!1,i+=1),x===124?(t.enter("tableCellDivider"),t.consume(x),t.exit("tableCellDivider"),u=!0,f):(t.enter("data"),s(x)))}function s(x){return x===null||x===124||ot(x)?(t.exit("data"),f(x)):(t.consume(x),x===92?m:s)}function m(x){return x===92||x===124?(t.consume(x),s):s(x)}function h(x){return l.interrupt=!1,l.parser.lazy[l.now().line]?n(x):(t.enter("tableDelimiterRow"),u=!1,F(x)?W(t,g,"linePrefix",l.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(x):g(x))}function g(x){return x===45||x===58?k(x):x===124?(u=!0,t.enter("tableCellDivider"),t.consume(x),t.exit("tableCellDivider"),S):w(x)}function S(x){return F(x)?W(t,k,"whitespace")(x):k(x)}function k(x){return x===58?(a+=1,u=!0,t.enter("tableDelimiterMarker"),t.consume(x),t.exit("tableDelimiterMarker"),p):x===45?(a+=1,p(x)):x===null||B(x)?E(x):w(x)}function p(x){return x===45?(t.enter("tableDelimiterFiller"),d(x)):w(x)}function d(x){return x===45?(t.consume(x),d):x===58?(u=!0,t.exit("tableDelimiterFiller"),t.enter("tableDelimiterMarker"),t.consume(x),t.exit("tableDelimiterMarker"),y):(t.exit("tableDelimiterFiller"),y(x))}function y(x){return F(x)?W(t,E,"whitespace")(x):E(x)}function E(x){return x===124?g(x):x===null||B(x)?!u||i!==a?w(x):(t.exit("tableDelimiterRow"),t.exit("tableHead"),e(x)):w(x)}function w(x){return n(x)}function T(x){return t.enter("tableRow"),C(x)}function C(x){return x===124?(t.enter("tableCellDivider"),t.consume(x),t.exit("tableCellDivider"),C):x===null||B(x)?(t.exit("tableRow"),e(x)):F(x)?W(t,C,"whitespace")(x):(t.enter("data"),M(x))}function M(x){return x===null||x===124||ot(x)?(t.exit("data"),C(x)):(t.consume(x),x===92?N:M)}function N(x){return x===92||x===124?(t.consume(x),M):M(x)}}function sk(t,e){let n=-1,l=!0,i=0,a=[0,0,0,0],u=[0,0,0,0],r=!1,c=0,o,f,s;const m=new ak;for(;++nn[2]+1){const g=n[2]+1,S=n[3]-n[2]-1;t.add(g,S,[])}}t.add(n[3]+1,0,[["exit",s,e]])}return i!==void 0&&(a.end=Object.assign({},Sl(e.events,i)),t.add(i,0,[["exit",a,e]]),a=void 0),a}function fm(t,e,n,l,i){const a=[],u=Sl(e.events,n);i&&(i.end=Object.assign({},u),a.push(["exit",i,e])),l.end=Object.assign({},u),a.push(["exit",l,e]),t.add(n+1,0,a)}function Sl(t,e){const n=t[e],l=n[0]==="enter"?"start":"end";return n[1][l]}const fk={name:"tasklistCheck",tokenize:mk};function hk(){return{text:{91:fk}}}function mk(t,e,n){const l=this;return i;function i(c){return l.previous!==null||!l._gfmTasklistFirstContentOfListItem?n(c):(t.enter("taskListCheck"),t.enter("taskListCheckMarker"),t.consume(c),t.exit("taskListCheckMarker"),a)}function a(c){return ot(c)?(t.enter("taskListCheckValueUnchecked"),t.consume(c),t.exit("taskListCheckValueUnchecked"),u):c===88||c===120?(t.enter("taskListCheckValueChecked"),t.consume(c),t.exit("taskListCheckValueChecked"),u):n(c)}function u(c){return c===93?(t.enter("taskListCheckMarker"),t.consume(c),t.exit("taskListCheckMarker"),t.exit("taskListCheck"),r):n(c)}function r(c){return B(c)?e(c):F(c)?t.check({tokenize:pk},e,n)(c):n(c)}}function pk(t,e,n){return W(t,l,"whitespace");function l(i){return i===null?n(i):e(i)}}function dk(t){return wg([qT(),IT(),ik(t),ck(),hk()])}const gk={};function yk(t){const e=this,n=t||gk,l=e.data(),i=l.micromarkExtensions||(l.micromarkExtensions=[]),a=l.fromMarkdownExtensions||(l.fromMarkdownExtensions=[]),u=l.toMarkdownExtensions||(l.toMarkdownExtensions=[]);i.push(dk(n)),a.push(LT()),u.push(BT(n))}function bk(){const[t,e]=Ne.useState([]),[n,l]=Ne.useState(null),[i,a]=Ne.useState(!1),[u,r]=Ne.useState("system"),[c,o]=Ne.useState("");Ne.useEffect(()=>{f(),s(u)},[u]),Ne.useEffect(()=>{n&&o(n.content)},[n]);const f=async()=>{try{const d=await(await fetch("/api/files")).json();e(d)}catch(p){console.error("Failed to load files:",p)}},s=p=>{const d=document.documentElement;p==="system"?window.matchMedia("(prefers-color-scheme: dark)").matches?d.classList.add("dark"):d.classList.remove("dark"):p==="dark"?d.classList.add("dark"):d.classList.remove("dark")},m=p=>{r(p),localStorage.setItem("theme",p)},h=async p=>{try{const y=await(await fetch(`/api/files/${encodeURIComponent(p)}`)).json();l(y),o(y.content),a(!1)}catch(d){console.error("Failed to load file:",d)}},g=()=>{l(null),o(`# New File + +Start writing here...`),a(!0)},S=async()=>{if(n)try{const p=await fetch(`/api/files/${encodeURIComponent(n.filename)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:c})});if(p.ok){const d=await p.json();l(d),a(!1)}}catch(p){console.error("Failed to save file:",p)}else{const p=prompt("Enter filename:","untitled.md");if(!p)return;try{const d=await fetch("/api/files",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({filename:p,content:c,title:p.replace(".md","")})});if(d.ok){await f();const y=await d.json();l(y),a(!1)}}catch(d){console.error("Failed to create file:",d)}}},k=async()=>{if(n&&confirm(`Delete ${n.filename}?`))try{await fetch(`/api/files/${encodeURIComponent(n.filename)}`,{method:"DELETE"}),l(null),o(""),await f()}catch(p){console.error("Failed to delete file:",p)}};return X.jsxs("div",{className:"flex flex-col h-screen",children:[X.jsx("header",{className:"bg-white dark:bg-gray-800 border-b border-gray-200 dark:border-gray-700 p-4",children:X.jsxs("div",{className:"flex items-center justify-between max-w-7xl mx-auto",children:[X.jsx("h1",{className:"text-xl font-bold text-gray-900 dark:text-white",children:"Eval Markdown Editor"}),X.jsx("div",{className:"flex items-center space-x-4",children:X.jsx("div",{className:"flex bg-gray-100 dark:bg-gray-700 rounded-lg p-1",children:["light","dark","system"].map(p=>X.jsx("button",{onClick:()=>m(p),className:`px-3 py-1 text-sm rounded-md transition-colors ${u===p?"bg-white dark:bg-gray-600 text-gray-900 dark:text-white shadow":"text-gray-600 dark:text-gray-400 hover:text-gray-900 dark:hover:text-white"}`,children:p.charAt(0).toUpperCase()+p.slice(1)},p))})})]})}),X.jsxs("div",{className:"flex flex-1 overflow-hidden",children:[X.jsxs("aside",{className:"w-64 bg-gray-50 dark:bg-gray-900 border-r border-gray-200 dark:border-gray-700 flex flex-col",children:[X.jsx("div",{className:"p-4 border-b border-gray-200 dark:border-gray-700",children:X.jsx("button",{onClick:g,className:"w-full bg-blue-600 hover:bg-blue-700 text-white py-2 px-4 rounded-lg transition-colors",children:"New File"})}),X.jsx("div",{className:"flex-1 overflow-y-auto p-2",children:t.length===0?X.jsx("p",{className:"text-gray-500 dark:text-gray-400 text-center py-4",children:"No files yet"}):t.map(p=>X.jsx("button",{onClick:()=>h(p.filename),className:`w-full text-left px-3 py-2 rounded-lg transition-colors ${(n==null?void 0:n.filename)===p.filename?"bg-blue-50 dark:bg-blue-900/20 text-blue-700 dark:text-blue-400":"hover:bg-gray-200 dark:hover:bg-gray-800 text-gray-700 dark:text-gray-300"}`,children:p.title},p.filename))})]}),X.jsx("main",{className:"flex-1 flex flex-col overflow-hidden",children:n?X.jsxs(X.Fragment,{children:[X.jsxs("div",{className:"bg-white dark:bg-gray-800 border-b border-gray-200 dark:border-gray-700 p-2 flex justify-between items-center",children:[X.jsx("span",{className:"text-sm text-gray-600 dark:text-gray-400",children:n.filename}),X.jsx("div",{className:"flex space-x-2",children:i?X.jsxs(X.Fragment,{children:[X.jsx("button",{onClick:S,className:"bg-green-600 hover:bg-green-700 text-white px-4 py-1 rounded-lg transition-colors text-sm",children:"Save"}),X.jsx("button",{onClick:()=>a(!1),className:"bg-gray-600 hover:bg-gray-700 text-white px-4 py-1 rounded-lg transition-colors text-sm",children:"Preview"}),X.jsx("button",{onClick:k,className:"bg-red-600 hover:bg-red-700 text-white px-4 py-1 rounded-lg transition-colors text-sm",children:"Delete"})]}):X.jsx("button",{onClick:()=>a(!0),className:"bg-blue-600 hover:bg-blue-700 text-white px-4 py-1 rounded-lg transition-colors text-sm",children:"Edit"})})]}),X.jsx("div",{className:"flex-1 overflow-hidden bg-white dark:bg-gray-900",children:i?X.jsx("textarea",{value:c,onChange:p=>o(p.target.value),className:"w-full h-full p-4 resize-none focus:outline-none font-mono text-sm bg-gray-50 dark:bg-gray-800 text-gray-900 dark:text-gray-100",spellCheck:!1}):X.jsx("div",{className:"w-full h-full overflow-auto p-6 max-w-4xl mx-auto",children:X.jsx(iE,{remarkPlugins:[yk],className:"prose dark:prose-invert max-w-none",children:c})})})]}):X.jsx("div",{className:"flex-1 flex items-center justify-center bg-gray-50 dark:bg-gray-900",children:X.jsx("div",{className:"text-center text-gray-500 dark:text-gray-400",children:X.jsx("p",{className:"text-lg",children:"Select a file or create a new one"})})})})]})]})}Ab.createRoot(document.getElementById("root")).render(X.jsx(Zy.StrictMode,{children:X.jsx(bk,{})})); diff --git a/frontend/dist/index.html b/frontend/dist/index.html new file mode 100644 index 0000000..5cf1d22 --- /dev/null +++ b/frontend/dist/index.html @@ -0,0 +1,13 @@ + + + + + + Eval Markdown Editor + + + + +
+ + diff --git a/frontend/index.html b/frontend/index.html new file mode 100644 index 0000000..a8046cd --- /dev/null +++ b/frontend/index.html @@ -0,0 +1,12 @@ + + + + + + Eval Markdown Editor + + +
+ + + diff --git a/frontend/package-lock.json b/frontend/package-lock.json new file mode 100644 index 0000000..8e39578 --- /dev/null +++ b/frontend/package-lock.json @@ -0,0 +1,4504 @@ +{ + "name": "eval-frontend", + "version": "0.1.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "eval-frontend", + "version": "0.1.0", + "dependencies": { + "react": "^19.0.0", + "react-dom": "^19.0.0", + "react-markdown": "^9.0.0", + "remark-gfm": "^4.0.0" + }, + "devDependencies": { + "@types/react": "^19.0.0", + "@types/react-dom": "^19.0.0", + "@vitejs/plugin-react": "^4.3.0", + "autoprefixer": "^10.4.20", + "postcss": "^8.4.47", + "tailwindcss": "^3.4.11", + "typescript": "^5.6.0", + "vite": "^5.4.0", + "vitest": "^2.1.0" + } + }, + "node_modules/@alloc/quick-lru": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz", + "integrity": "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.28.5", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz", + "integrity": "sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz", + "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.0", + "@babel/generator": "^7.29.0", + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-module-transforms": "^7.28.6", + "@babel/helpers": "^7.28.6", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/traverse": "^7.29.0", + "@babel/types": "^7.29.0", + "@jridgewell/remapping": "^2.3.5", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.29.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz", + "integrity": "sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.0", + "@babel/types": "^7.29.0", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz", + "integrity": "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.28.6", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz", + "integrity": "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.28.6", + "@babel/types": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz", + "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.28.6", + "@babel/helper-validator-identifier": "^7.28.5", + "@babel/traverse": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.28.6.tgz", + "integrity": "sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", + "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.6.tgz", + "integrity": "sha512-xOBvwq86HHdB7WUDTfKfT/Vuxh7gElQ+Sfti2Cy6yIWNW05P8iUslOVcZ4/sKbE+/jQaukQAdz/gf3724kYdqw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.28.6", + "@babel/types": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.0.tgz", + "integrity": "sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.29.0" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.27.1.tgz", + "integrity": "sha512-6UzkCs+ejGdZ5mFFC/OCUrv028ab2fp1znZmCZjAOBKiBK2jXD1O+BPSfX8X2qjJ75fZBMSnQn3Rq2mrBJK2mw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.27.1.tgz", + "integrity": "sha512-zbwoTsBruTeKB9hSq73ha66iFeJHuaFkUbwvqElnygoNbj/jHRsSeokowZFN3CZ64IvEqcmmkVe89OPXc7ldAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz", + "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.28.6", + "@babel/parser": "^7.28.6", + "@babel/types": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz", + "integrity": "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.0", + "@babel/generator": "^7.29.0", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/types": "^7.29.0", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz", + "integrity": "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@rolldown/pluginutils": { + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.27.tgz", + "integrity": "sha512-+d0F4MKMCbeVUJwG96uQ4SgAznZNSq93I3V+9NHA4OpvqG8mRCpGdKmK8l/dl02h2CCDHwW2FqilnTyDcAnqjA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.57.1.tgz", + "integrity": "sha512-A6ehUVSiSaaliTxai040ZpZ2zTevHYbvu/lDoeAteHI8QnaosIzm4qwtezfRg1jOYaUmnzLX1AOD6Z+UJjtifg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.57.1.tgz", + "integrity": "sha512-dQaAddCY9YgkFHZcFNS/606Exo8vcLHwArFZ7vxXq4rigo2bb494/xKMMwRRQW6ug7Js6yXmBZhSBRuBvCCQ3w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.57.1.tgz", + "integrity": "sha512-crNPrwJOrRxagUYeMn/DZwqN88SDmwaJ8Cvi/TN1HnWBU7GwknckyosC2gd0IqYRsHDEnXf328o9/HC6OkPgOg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.57.1.tgz", + "integrity": "sha512-Ji8g8ChVbKrhFtig5QBV7iMaJrGtpHelkB3lsaKzadFBe58gmjfGXAOfI5FV0lYMH8wiqsxKQ1C9B0YTRXVy4w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.57.1.tgz", + "integrity": "sha512-R+/WwhsjmwodAcz65guCGFRkMb4gKWTcIeLy60JJQbXrJ97BOXHxnkPFrP+YwFlaS0m+uWJTstrUA9o+UchFug==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.57.1.tgz", + "integrity": "sha512-IEQTCHeiTOnAUC3IDQdzRAGj3jOAYNr9kBguI7MQAAZK3caezRrg0GxAb6Hchg4lxdZEI5Oq3iov/w/hnFWY9Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.57.1.tgz", + "integrity": "sha512-F8sWbhZ7tyuEfsmOxwc2giKDQzN3+kuBLPwwZGyVkLlKGdV1nvnNwYD0fKQ8+XS6hp9nY7B+ZeK01EBUE7aHaw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.57.1.tgz", + "integrity": "sha512-rGfNUfn0GIeXtBP1wL5MnzSj98+PZe/AXaGBCRmT0ts80lU5CATYGxXukeTX39XBKsxzFpEeK+Mrp9faXOlmrw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.57.1.tgz", + "integrity": "sha512-MMtej3YHWeg/0klK2Qodf3yrNzz6CGjo2UntLvk2RSPlhzgLvYEB3frRvbEF2wRKh1Z2fDIg9KRPe1fawv7C+g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.57.1.tgz", + "integrity": "sha512-1a/qhaaOXhqXGpMFMET9VqwZakkljWHLmZOX48R0I/YLbhdxr1m4gtG1Hq7++VhVUmf+L3sTAf9op4JlhQ5u1Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-gnu": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.57.1.tgz", + "integrity": "sha512-QWO6RQTZ/cqYtJMtxhkRkidoNGXc7ERPbZN7dVW5SdURuLeVU7lwKMpo18XdcmpWYd0qsP1bwKPf7DNSUinhvA==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-musl": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.57.1.tgz", + "integrity": "sha512-xpObYIf+8gprgWaPP32xiN5RVTi/s5FCR+XMXSKmhfoJjrpRAjCuuqQXyxUa/eJTdAE6eJ+KDKaoEqjZQxh3Gw==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-gnu": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.57.1.tgz", + "integrity": "sha512-4BrCgrpZo4hvzMDKRqEaW1zeecScDCR+2nZ86ATLhAoJ5FQ+lbHVD3ttKe74/c7tNT9c6F2viwB3ufwp01Oh2w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-musl": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.57.1.tgz", + "integrity": "sha512-NOlUuzesGauESAyEYFSe3QTUguL+lvrN1HtwEEsU2rOwdUDeTMJdO5dUYl/2hKf9jWydJrO9OL/XSSf65R5+Xw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.57.1.tgz", + "integrity": "sha512-ptA88htVp0AwUUqhVghwDIKlvJMD/fmL/wrQj99PRHFRAG6Z5nbWoWG4o81Nt9FT+IuqUQi+L31ZKAFeJ5Is+A==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.57.1.tgz", + "integrity": "sha512-S51t7aMMTNdmAMPpBg7OOsTdn4tySRQvklmL3RpDRyknk87+Sp3xaumlatU+ppQ+5raY7sSTcC2beGgvhENfuw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.57.1.tgz", + "integrity": "sha512-Bl00OFnVFkL82FHbEqy3k5CUCKH6OEJL54KCyx2oqsmZnFTR8IoNqBF+mjQVcRCT5sB6yOvK8A37LNm/kPJiZg==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.57.1.tgz", + "integrity": "sha512-ABca4ceT4N+Tv/GtotnWAeXZUZuM/9AQyCyKYyKnpk4yoA7QIAuBt6Hkgpw8kActYlew2mvckXkvx0FfoInnLg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.57.1.tgz", + "integrity": "sha512-HFps0JeGtuOR2convgRRkHCekD7j+gdAuXM+/i6kGzQtFhlCtQkpwtNzkNj6QhCDp7DRJ7+qC/1Vg2jt5iSOFw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-openbsd-x64": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.57.1.tgz", + "integrity": "sha512-H+hXEv9gdVQuDTgnqD+SQffoWoc0Of59AStSzTEj/feWTBAnSfSD3+Dql1ZruJQxmykT/JVY0dE8Ka7z0DH1hw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ] + }, + "node_modules/@rollup/rollup-openharmony-arm64": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.57.1.tgz", + "integrity": "sha512-4wYoDpNg6o/oPximyc/NG+mYUejZrCU2q+2w6YZqrAs2UcNUChIZXjtafAiiZSUc7On8v5NyNj34Kzj/Ltk6dQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.57.1.tgz", + "integrity": "sha512-O54mtsV/6LW3P8qdTcamQmuC990HDfR71lo44oZMZlXU4tzLrbvTii87Ni9opq60ds0YzuAlEr/GNwuNluZyMQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.57.1.tgz", + "integrity": "sha512-P3dLS+IerxCT/7D2q2FYcRdWRl22dNbrbBEtxdWhXrfIMPP9lQhb5h4Du04mdl5Woq05jVCDPCMF7Ub0NAjIew==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-gnu": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.57.1.tgz", + "integrity": "sha512-VMBH2eOOaKGtIJYleXsi2B8CPVADrh+TyNxJ4mWPnKfLB/DBUmzW+5m1xUrcwWoMfSLagIRpjUFeW5CO5hyciQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.57.1.tgz", + "integrity": "sha512-mxRFDdHIWRxg3UfIIAwCm6NzvxG0jDX/wBN6KsQFTvKFqqg9vTrWUE68qEjHt19A5wwx5X5aUi2zuZT7YR0jrA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", + "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.2" + } + }, + "node_modules/@types/debug": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "license": "MIT", + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "license": "MIT" + }, + "node_modules/@types/estree-jsx": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.5.tgz", + "integrity": "sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==", + "license": "MIT", + "dependencies": { + "@types/estree": "*" + } + }, + "node_modules/@types/hast": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/mdast": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", + "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", + "license": "MIT", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/ms": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz", + "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==", + "license": "MIT" + }, + "node_modules/@types/react": { + "version": "19.2.13", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.13.tgz", + "integrity": "sha512-KkiJeU6VbYbUOp5ITMIc7kBfqlYkKA5KhEHVrGMmUUMt7NeaZg65ojdPk+FtNrBAOXNVM5QM72jnADjM+XVRAQ==", + "license": "MIT", + "dependencies": { + "csstype": "^3.2.2" + } + }, + "node_modules/@types/react-dom": { + "version": "19.2.3", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.2.3.tgz", + "integrity": "sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@types/react": "^19.2.0" + } + }, + "node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" + }, + "node_modules/@ungap/structured-clone": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", + "license": "ISC" + }, + "node_modules/@vitejs/plugin-react": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.7.0.tgz", + "integrity": "sha512-gUu9hwfWvvEDBBmgtAowQCojwZmJ5mcLn3aufeCsitijs3+f2NsrPtlAWIR6OPiqljl96GVCUbLe0HyqIpVaoA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.28.0", + "@babel/plugin-transform-react-jsx-self": "^7.27.1", + "@babel/plugin-transform-react-jsx-source": "^7.27.1", + "@rolldown/pluginutils": "1.0.0-beta.27", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.17.0" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" + } + }, + "node_modules/@vitest/expect": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.1.9.tgz", + "integrity": "sha512-UJCIkTBenHeKT1TTlKMJWy1laZewsRIzYighyYiJKZreqtdxSos/S1t+ktRMQWu2CKqaarrkeszJx1cgC5tGZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/spy": "2.1.9", + "@vitest/utils": "2.1.9", + "chai": "^5.1.2", + "tinyrainbow": "^1.2.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/mocker": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-2.1.9.tgz", + "integrity": "sha512-tVL6uJgoUdi6icpxmdrn5YNo3g3Dxv+IHJBr0GXHaEdTcw3F+cPKnsXFhli6nO+f/6SDKPHEK1UN+k+TQv0Ehg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/spy": "2.1.9", + "estree-walker": "^3.0.3", + "magic-string": "^0.30.12" + }, + "funding": { + "url": "https://opencollective.com/vitest" + }, + "peerDependencies": { + "msw": "^2.4.9", + "vite": "^5.0.0" + }, + "peerDependenciesMeta": { + "msw": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/@vitest/pretty-format": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.9.tgz", + "integrity": "sha512-KhRIdGV2U9HOUzxfiHmY8IFHTdqtOhIzCpd8WRdJiE7D/HUcZVD0EgQCVjm+Q9gkUXWgBvMmTtZgIG48wq7sOQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "tinyrainbow": "^1.2.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/runner": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.1.9.tgz", + "integrity": "sha512-ZXSSqTFIrzduD63btIfEyOmNcBmQvgOVsPNPe0jYtESiXkhd8u2erDLnMxmGrDCwHCCHE7hxwRDCT3pt0esT4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/utils": "2.1.9", + "pathe": "^1.1.2" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/snapshot": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.1.9.tgz", + "integrity": "sha512-oBO82rEjsxLNJincVhLhaxxZdEtV0EFHMK5Kmx5sJ6H9L183dHECjiefOAdnqpIgT5eZwT04PoggUnW88vOBNQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/pretty-format": "2.1.9", + "magic-string": "^0.30.12", + "pathe": "^1.1.2" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/spy": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.1.9.tgz", + "integrity": "sha512-E1B35FwzXXTs9FHNK6bDszs7mtydNi5MIfUWpceJ8Xbfb1gBMscAnwLbEu+B44ed6W3XjL9/ehLPHR1fkf1KLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "tinyspy": "^3.0.2" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/utils": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.9.tgz", + "integrity": "sha512-v0psaMSkNJ3A2NMrUEHFRzJtDPFn+/VWZ5WxImB21T9fjucJRmS7xCS3ppEnARb9y11OAzaD+P2Ps+b+BGX5iQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/pretty-format": "2.1.9", + "loupe": "^3.1.2", + "tinyrainbow": "^1.2.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true, + "license": "MIT" + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", + "dev": true, + "license": "MIT" + }, + "node_modules/assertion-error": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz", + "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + } + }, + "node_modules/autoprefixer": { + "version": "10.4.24", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.24.tgz", + "integrity": "sha512-uHZg7N9ULTVbutaIsDRoUkoS8/h3bdsmVJYZ5l3wv8Cp/6UIIoRDm90hZ+BwxUj/hGBEzLxdHNSKuFpn8WOyZw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "browserslist": "^4.28.1", + "caniuse-lite": "^1.0.30001766", + "fraction.js": "^5.3.4", + "picocolors": "^1.1.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/bail": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", + "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/baseline-browser-mapping": { + "version": "2.9.19", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.9.19.tgz", + "integrity": "sha512-ipDqC8FrAl/76p2SSWKSI+H9tFwm7vYqXQrItCuiVPt26Km0jS+NzSsBWAaBusvSbQcfJG+JitdMm+wZAgTYqg==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.js" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz", + "integrity": "sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "baseline-browser-mapping": "^2.9.0", + "caniuse-lite": "^1.0.30001759", + "electron-to-chromium": "^1.5.263", + "node-releases": "^2.0.27", + "update-browserslist-db": "^1.2.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/cac": { + "version": "6.7.14", + "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", + "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001769", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001769.tgz", + "integrity": "sha512-BCfFL1sHijQlBGWBMuJyhZUhzo7wer5sVj9hqekB/7xn0Ypy+pER/edCYQm4exbXj4WiySGp40P8UuTh6w1srg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/ccount": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", + "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/chai": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/chai/-/chai-5.3.3.tgz", + "integrity": "sha512-4zNhdJD/iOjSH0A05ea+Ke6MU5mmpQcbQsSOkgdaUMJ9zTlDTD/GYlwohmIE2u0gaxHYiVHEn1Fw9mZ/ktJWgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "assertion-error": "^2.0.1", + "check-error": "^2.1.1", + "deep-eql": "^5.0.1", + "loupe": "^3.1.0", + "pathval": "^2.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/character-entities": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", + "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-html4": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", + "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-legacy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", + "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-reference-invalid": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz", + "integrity": "sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/check-error": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.3.tgz", + "integrity": "sha512-PAJdDJusoxnwm1VwW07VWwUN1sl7smmC3OKggvndJFadxxDRyFJBX/ggnu/KE4kQAB7a3Dp8f/YXC1FlUprWmA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 16" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/comma-separated-tokens": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", + "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "license": "MIT", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/csstype": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decode-named-character-reference": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.3.0.tgz", + "integrity": "sha512-GtpQYB283KrPp6nRw50q3U9/VfOutZOe103qlN7BPP6Ad27xYnOIWv4lPzo8HCAL+mMZofJ9KEy30fq6MfaK6Q==", + "license": "MIT", + "dependencies": { + "character-entities": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/deep-eql": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz", + "integrity": "sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/devlop": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", + "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", + "license": "MIT", + "dependencies": { + "dequal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "dev": true, + "license": "MIT" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.286", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.286.tgz", + "integrity": "sha512-9tfDXhJ4RKFNerfjdCcZfufu49vg620741MNs26a9+bhLThdB+plgMeou98CAaHu/WATj2iHOOHTp1hWtABj2A==", + "dev": true, + "license": "ISC" + }, + "node_modules/es-module-lexer": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.7.0.tgz", + "integrity": "sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==", + "dev": true, + "license": "MIT" + }, + "node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/estree-util-is-identifier-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz", + "integrity": "sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0" + } + }, + "node_modules/expect-type": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.3.0.tgz", + "integrity": "sha512-knvyeauYhqjOYvQ66MznSMs83wmHrCycNEN6Ao+2AeYEfxUIkuiVxdEa1qlGEPK+We3n0THiDciYSsCcgW/DoA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "license": "MIT" + }, + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fastq": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.20.1.tgz", + "integrity": "sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fraction.js": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-5.3.4.tgz", + "integrity": "sha512-1X1NTtiJphryn/uLQz3whtY6jK3fTqoE3ohKs0tT+Ujr1W59oopxmoEh7Lu5p6vBaPbgoM0bzveAW4Qi5RyWDQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hast-util-to-jsx-runtime": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/hast-util-to-jsx-runtime/-/hast-util-to-jsx-runtime-2.3.6.tgz", + "integrity": "sha512-zl6s8LwNyo1P9uw+XJGvZtdFF1GdAkOg8ujOw+4Pyb76874fLps4ueHXDhXWdk6YHQ6OgUtinliG7RsYvCbbBg==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "devlop": "^1.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "hast-util-whitespace": "^3.0.0", + "mdast-util-mdx-expression": "^2.0.0", + "mdast-util-mdx-jsx": "^3.0.0", + "mdast-util-mdxjs-esm": "^2.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0", + "style-to-js": "^1.0.0", + "unist-util-position": "^5.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-whitespace": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", + "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/html-url-attributes": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/html-url-attributes/-/html-url-attributes-3.0.1.tgz", + "integrity": "sha512-ol6UPyBWqsrO6EJySPz2O7ZSr856WDrEzM5zMqp+FJJLGMW35cLYmmZnl0vztAZxRUoNZJFTCohfjuIJ8I4QBQ==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/inline-style-parser": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.7.tgz", + "integrity": "sha512-Nb2ctOyNR8DqQoR0OwRG95uNWIC0C1lCgf5Naz5H6Ji72KZ8OcFZLz2P5sNgwlyoJ8Yif11oMuYs5pBQa86csA==", + "license": "MIT" + }, + "node_modules/is-alphabetical": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz", + "integrity": "sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-alphanumerical": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz", + "integrity": "sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==", + "license": "MIT", + "dependencies": { + "is-alphabetical": "^2.0.0", + "is-decimal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-decimal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.1.tgz", + "integrity": "sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-hexadecimal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz", + "integrity": "sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jiti": { + "version": "1.21.7", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.7.tgz", + "integrity": "sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==", + "dev": true, + "license": "MIT", + "bin": { + "jiti": "bin/jiti.js" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/lilconfig": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.3.tgz", + "integrity": "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true, + "license": "MIT" + }, + "node_modules/longest-streak": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz", + "integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/loupe": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.2.1.tgz", + "integrity": "sha512-CdzqowRJCeLU72bHvWqwRBBlLcMEtIvGrlvef74kMnV2AolS9Y8xUv1I0U/MNAWMhBlKIoyuEgoJ0t/bbwHbLQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/markdown-table": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.4.tgz", + "integrity": "sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/mdast-util-find-and-replace": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.2.tgz", + "integrity": "sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "escape-string-regexp": "^5.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-from-markdown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.2.tgz", + "integrity": "sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark": "^4.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-3.1.0.tgz", + "integrity": "sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==", + "license": "MIT", + "dependencies": { + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-gfm-autolink-literal": "^2.0.0", + "mdast-util-gfm-footnote": "^2.0.0", + "mdast-util-gfm-strikethrough": "^2.0.0", + "mdast-util-gfm-table": "^2.0.0", + "mdast-util-gfm-task-list-item": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-autolink-literal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.1.tgz", + "integrity": "sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "ccount": "^2.0.0", + "devlop": "^1.0.0", + "mdast-util-find-and-replace": "^3.0.0", + "micromark-util-character": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-footnote": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.1.0.tgz", + "integrity": "sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.1.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-strikethrough": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.0.tgz", + "integrity": "sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-table": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz", + "integrity": "sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "markdown-table": "^3.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-task-list-item": { + "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", + "integrity": "sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-mdx-expression": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-2.0.1.tgz", + "integrity": "sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-mdx-jsx": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-3.2.0.tgz", + "integrity": "sha512-lj/z8v0r6ZtsN/cGNNtemmmfoLAFZnjMbNyLzBafjzikOM+glrjNHPlf6lQDOTccj9n5b0PPihEBbhneMyGs1Q==", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "ccount": "^2.0.0", + "devlop": "^1.1.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "parse-entities": "^4.0.0", + "stringify-entities": "^4.0.0", + "unist-util-stringify-position": "^4.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-mdxjs-esm": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-2.0.1.tgz", + "integrity": "sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-phrasing": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz", + "integrity": "sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-hast": { + "version": "13.2.1", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.1.tgz", + "integrity": "sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@ungap/structured-clone": "^1.0.0", + "devlop": "^1.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "trim-lines": "^3.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-markdown": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.2.tgz", + "integrity": "sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "longest-streak": "^3.0.0", + "mdast-util-phrasing": "^4.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "unist-util-visit": "^5.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", + "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromark": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.2.tgz", + "integrity": "sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "@types/debug": "^4.0.0", + "debug": "^4.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-core-commonmark": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.3.tgz", + "integrity": "sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-destination": "^2.0.0", + "micromark-factory-label": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-factory-title": "^2.0.0", + "micromark-factory-whitespace": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-html-tag-name": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-gfm": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-3.0.0.tgz", + "integrity": "sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==", + "license": "MIT", + "dependencies": { + "micromark-extension-gfm-autolink-literal": "^2.0.0", + "micromark-extension-gfm-footnote": "^2.0.0", + "micromark-extension-gfm-strikethrough": "^2.0.0", + "micromark-extension-gfm-table": "^2.0.0", + "micromark-extension-gfm-tagfilter": "^2.0.0", + "micromark-extension-gfm-task-list-item": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-autolink-literal": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-2.1.0.tgz", + "integrity": "sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==", + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-footnote": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-2.1.0.tgz", + "integrity": "sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==", + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-strikethrough": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.1.0.tgz", + "integrity": "sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==", + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-table": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.1.1.tgz", + "integrity": "sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==", + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-tagfilter": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-2.0.0.tgz", + "integrity": "sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==", + "license": "MIT", + "dependencies": { + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-task-list-item": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.1.0.tgz", + "integrity": "sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==", + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-factory-destination": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.1.tgz", + "integrity": "sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-label": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.1.tgz", + "integrity": "sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-space": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.1.tgz", + "integrity": "sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-title": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.1.tgz", + "integrity": "sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-whitespace": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.1.tgz", + "integrity": "sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-character": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.1.tgz", + "integrity": "sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-chunked": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.1.tgz", + "integrity": "sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-classify-character": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.1.tgz", + "integrity": "sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-combine-extensions": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.1.tgz", + "integrity": "sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-chunked": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-numeric-character-reference": { + "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", + "integrity": "sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-string": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.1.tgz", + "integrity": "sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-encode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz", + "integrity": "sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-html-tag-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.1.tgz", + "integrity": "sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-normalize-identifier": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.1.tgz", + "integrity": "sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-resolve-all": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.1.tgz", + "integrity": "sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-sanitize-uri": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz", + "integrity": "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-subtokenize": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.1.0.tgz", + "integrity": "sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-symbol": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz", + "integrity": "sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-types": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.2.tgz", + "integrity": "sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/node-releases": { + "version": "2.0.27", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz", + "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/parse-entities": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.2.tgz", + "integrity": "sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==", + "license": "MIT", + "dependencies": { + "@types/unist": "^2.0.0", + "character-entities-legacy": "^3.0.0", + "character-reference-invalid": "^2.0.0", + "decode-named-character-reference": "^1.0.0", + "is-alphanumerical": "^2.0.0", + "is-decimal": "^2.0.0", + "is-hexadecimal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/parse-entities/node_modules/@types/unist": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz", + "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==", + "license": "MIT" + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true, + "license": "MIT" + }, + "node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/pathval": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-2.0.1.tgz", + "integrity": "sha512-//nshmD55c46FuFw26xV/xFAaB5HF9Xdap7HJBBnrKdAd6/GxDBaNA1870O79+9ueg61cZLSVc+OaFlfmObYVQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 14.16" + } + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pirates": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", + "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss": { + "version": "8.5.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", + "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-import": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", + "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", + "dev": true, + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-js": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.1.0.tgz", + "integrity": "sha512-oIAOTqgIo7q2EOwbhb8UalYePMvYoIeRY2YKntdpFQXNosSu3vLrniGgmH9OKs/qAkfoj5oB3le/7mINW1LCfw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "camelcase-css": "^2.0.1" + }, + "engines": { + "node": "^12 || ^14 || >= 16" + }, + "peerDependencies": { + "postcss": "^8.4.21" + } + }, + "node_modules/postcss-load-config": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-6.0.1.tgz", + "integrity": "sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "lilconfig": "^3.1.1" + }, + "engines": { + "node": ">= 18" + }, + "peerDependencies": { + "jiti": ">=1.21.0", + "postcss": ">=8.0.9", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + }, + "postcss": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, + "node_modules/postcss-nested": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz", + "integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "postcss-selector-parser": "^6.1.1" + }, + "engines": { + "node": ">=12.0" + }, + "peerDependencies": { + "postcss": "^8.2.14" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/property-information": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-7.1.0.tgz", + "integrity": "sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/react": { + "version": "19.2.4", + "resolved": "https://registry.npmjs.org/react/-/react-19.2.4.tgz", + "integrity": "sha512-9nfp2hYpCwOjAN+8TZFGhtWEwgvWHXqESH8qT89AT/lWklpLON22Lc8pEtnpsZz7VmawabSU0gCjnj8aC0euHQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "19.2.4", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.4.tgz", + "integrity": "sha512-AXJdLo8kgMbimY95O2aKQqsz2iWi9jMgKJhRBAxECE4IFxfcazB2LmzloIoibJI3C12IlY20+KFaLv+71bUJeQ==", + "license": "MIT", + "dependencies": { + "scheduler": "^0.27.0" + }, + "peerDependencies": { + "react": "^19.2.4" + } + }, + "node_modules/react-markdown": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/react-markdown/-/react-markdown-9.1.0.tgz", + "integrity": "sha512-xaijuJB0kzGiUdG7nc2MOMDUDBWPyGAjZtUrow9XxUeua8IqeP+VlIfAZ3bphpcLTnSZXz6z9jcVC/TCwbfgdw==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "hast-util-to-jsx-runtime": "^2.0.0", + "html-url-attributes": "^3.0.0", + "mdast-util-to-hast": "^13.0.0", + "remark-parse": "^11.0.0", + "remark-rehype": "^11.0.0", + "unified": "^11.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + }, + "peerDependencies": { + "@types/react": ">=18", + "react": ">=18" + } + }, + "node_modules/react-refresh": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.17.0.tgz", + "integrity": "sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/remark-gfm": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-4.0.1.tgz", + "integrity": "sha512-1quofZ2RQ9EWdeN34S79+KExV1764+wCUGop5CPL1WGdD0ocPpu91lzPGbwWMECpEpd42kJGQwzRfyov9j4yNg==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-gfm": "^3.0.0", + "micromark-extension-gfm": "^3.0.0", + "remark-parse": "^11.0.0", + "remark-stringify": "^11.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-parse": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-11.0.0.tgz", + "integrity": "sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-from-markdown": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-rehype": { + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-11.1.2.tgz", + "integrity": "sha512-Dh7l57ianaEoIpzbp0PC9UKAdCSVklD8E5Rpw7ETfbTl3FqcOOgq5q2LVDhgGCkaBv7p24JXikPdvhhmHvKMsw==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "mdast-util-to-hast": "^13.0.0", + "unified": "^11.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-stringify": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-11.0.0.tgz", + "integrity": "sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-to-markdown": "^2.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/resolve": { + "version": "1.22.11", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", + "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rollup": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.57.1.tgz", + "integrity": "sha512-oQL6lgK3e2QZeQ7gcgIkS2YZPg5slw37hYufJ3edKlfQSGGm8ICoxswK15ntSzF/a8+h7ekRy7k7oWc3BQ7y8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.8" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.57.1", + "@rollup/rollup-android-arm64": "4.57.1", + "@rollup/rollup-darwin-arm64": "4.57.1", + "@rollup/rollup-darwin-x64": "4.57.1", + "@rollup/rollup-freebsd-arm64": "4.57.1", + "@rollup/rollup-freebsd-x64": "4.57.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.57.1", + "@rollup/rollup-linux-arm-musleabihf": "4.57.1", + "@rollup/rollup-linux-arm64-gnu": "4.57.1", + "@rollup/rollup-linux-arm64-musl": "4.57.1", + "@rollup/rollup-linux-loong64-gnu": "4.57.1", + "@rollup/rollup-linux-loong64-musl": "4.57.1", + "@rollup/rollup-linux-ppc64-gnu": "4.57.1", + "@rollup/rollup-linux-ppc64-musl": "4.57.1", + "@rollup/rollup-linux-riscv64-gnu": "4.57.1", + "@rollup/rollup-linux-riscv64-musl": "4.57.1", + "@rollup/rollup-linux-s390x-gnu": "4.57.1", + "@rollup/rollup-linux-x64-gnu": "4.57.1", + "@rollup/rollup-linux-x64-musl": "4.57.1", + "@rollup/rollup-openbsd-x64": "4.57.1", + "@rollup/rollup-openharmony-arm64": "4.57.1", + "@rollup/rollup-win32-arm64-msvc": "4.57.1", + "@rollup/rollup-win32-ia32-msvc": "4.57.1", + "@rollup/rollup-win32-x64-gnu": "4.57.1", + "@rollup/rollup-win32-x64-msvc": "4.57.1", + "fsevents": "~2.3.2" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/scheduler": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz", + "integrity": "sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==", + "license": "MIT" + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/siginfo": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", + "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==", + "dev": true, + "license": "ISC" + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/space-separated-tokens": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", + "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/stackback": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz", + "integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==", + "dev": true, + "license": "MIT" + }, + "node_modules/std-env": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.10.0.tgz", + "integrity": "sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==", + "dev": true, + "license": "MIT" + }, + "node_modules/stringify-entities": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", + "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", + "license": "MIT", + "dependencies": { + "character-entities-html4": "^2.0.0", + "character-entities-legacy": "^3.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/style-to-js": { + "version": "1.1.21", + "resolved": "https://registry.npmjs.org/style-to-js/-/style-to-js-1.1.21.tgz", + "integrity": "sha512-RjQetxJrrUJLQPHbLku6U/ocGtzyjbJMP9lCNK7Ag0CNh690nSH8woqWH9u16nMjYBAok+i7JO1NP2pOy8IsPQ==", + "license": "MIT", + "dependencies": { + "style-to-object": "1.0.14" + } + }, + "node_modules/style-to-object": { + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-1.0.14.tgz", + "integrity": "sha512-LIN7rULI0jBscWQYaSswptyderlarFkjQ+t79nzty8tcIAceVomEVlLzH5VP4Cmsv6MtKhs7qaAiwlcp+Mgaxw==", + "license": "MIT", + "dependencies": { + "inline-style-parser": "0.2.7" + } + }, + "node_modules/sucrase": { + "version": "3.35.1", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.1.tgz", + "integrity": "sha512-DhuTmvZWux4H1UOnWMB3sk0sbaCVOoQZjv8u1rDoTV0HTdGem9hkAZtl4JZy8P2z4Bg0nT+YMeOFyVr4zcG5Tw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "tinyglobby": "^0.2.11", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tailwindcss": { + "version": "3.4.19", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.19.tgz", + "integrity": "sha512-3ofp+LL8E+pK/JuPLPggVAIaEuhvIz4qNcf3nA1Xn2o/7fb7s/TYpHhwGDv1ZU3PkBluUVaF8PyCHcm48cKLWQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@alloc/quick-lru": "^5.2.0", + "arg": "^5.0.2", + "chokidar": "^3.6.0", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.3.2", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "jiti": "^1.21.7", + "lilconfig": "^3.1.3", + "micromatch": "^4.0.8", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.1.1", + "postcss": "^8.4.47", + "postcss-import": "^15.1.0", + "postcss-js": "^4.0.1", + "postcss-load-config": "^4.0.2 || ^5.0 || ^6.0", + "postcss-nested": "^6.2.0", + "postcss-selector-parser": "^6.1.2", + "resolve": "^1.22.8", + "sucrase": "^3.35.0" + }, + "bin": { + "tailwind": "lib/cli.js", + "tailwindcss": "lib/cli.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "license": "MIT", + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dev": true, + "license": "MIT", + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/tinybench": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz", + "integrity": "sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==", + "dev": true, + "license": "MIT" + }, + "node_modules/tinyexec": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.2.tgz", + "integrity": "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==", + "dev": true, + "license": "MIT" + }, + "node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tinyglobby/node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/tinyglobby/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/tinypool": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.1.1.tgz", + "integrity": "sha512-Zba82s87IFq9A9XmjiX5uZA/ARWDrB03OHlq+Vw1fSdt0I+4/Kutwy8BP4Y/y/aORMo61FQ0vIb5j44vSo5Pkg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.0.0 || >=20.0.0" + } + }, + "node_modules/tinyrainbow": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-1.2.0.tgz", + "integrity": "sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/tinyspy": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-3.0.2.tgz", + "integrity": "sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/trim-lines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", + "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/trough": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/trough/-/trough-2.2.0.tgz", + "integrity": "sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/typescript": { + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/unified": { + "version": "11.0.5", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.5.tgz", + "integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "bail": "^2.0.0", + "devlop": "^1.0.0", + "extend": "^3.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-is": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.1.tgz", + "integrity": "sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-position": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", + "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-stringify-position": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.1.0.tgz", + "integrity": "sha512-m+vIdyeCOpdr/QeQCu2EzxX/ohgS8KbnPDgFni4dQsfSCtpz8UqDyY5GjRru8PDKuYn7Fq19j1CQ+nJSsGKOzg==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit-parents": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.2.tgz", + "integrity": "sha512-goh1s1TBrqSqukSc8wrjwWhL0hiJxgA8m4kFxGlQ+8FYQ3C/m11FcTs4YYem7V664AhHVvgoQLk890Ssdsr2IQ==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", + "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true, + "license": "MIT" + }, + "node_modules/vfile": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", + "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-message": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.3.tgz", + "integrity": "sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vite": { + "version": "5.4.21", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.21.tgz", + "integrity": "sha512-o5a9xKjbtuhY6Bi5S3+HvbRERmouabWbyUcpXXUA1u+GNUKoROi9byOJ8M0nHbHYHkYICiMlqxkg1KkYmm25Sw==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite-node": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.1.9.tgz", + "integrity": "sha512-AM9aQ/IPrW/6ENLQg3AGY4K1N2TGZdR5e4gu/MmmR2xR3Ll1+dib+nook92g4TV3PXVyeyxdWwtaCAiUL0hMxA==", + "dev": true, + "license": "MIT", + "dependencies": { + "cac": "^6.7.14", + "debug": "^4.3.7", + "es-module-lexer": "^1.5.4", + "pathe": "^1.1.2", + "vite": "^5.0.0" + }, + "bin": { + "vite-node": "vite-node.mjs" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/vitest": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-2.1.9.tgz", + "integrity": "sha512-MSmPM9REYqDGBI8439mA4mWhV5sKmDlBKWIYbA3lRb2PTHACE0mgKwA8yQ2xq9vxDTuk4iPrECBAEW2aoFXY0Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/expect": "2.1.9", + "@vitest/mocker": "2.1.9", + "@vitest/pretty-format": "^2.1.9", + "@vitest/runner": "2.1.9", + "@vitest/snapshot": "2.1.9", + "@vitest/spy": "2.1.9", + "@vitest/utils": "2.1.9", + "chai": "^5.1.2", + "debug": "^4.3.7", + "expect-type": "^1.1.0", + "magic-string": "^0.30.12", + "pathe": "^1.1.2", + "std-env": "^3.8.0", + "tinybench": "^2.9.0", + "tinyexec": "^0.3.1", + "tinypool": "^1.0.1", + "tinyrainbow": "^1.2.0", + "vite": "^5.0.0", + "vite-node": "2.1.9", + "why-is-node-running": "^2.3.0" + }, + "bin": { + "vitest": "vitest.mjs" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + }, + "peerDependencies": { + "@edge-runtime/vm": "*", + "@types/node": "^18.0.0 || >=20.0.0", + "@vitest/browser": "2.1.9", + "@vitest/ui": "2.1.9", + "happy-dom": "*", + "jsdom": "*" + }, + "peerDependenciesMeta": { + "@edge-runtime/vm": { + "optional": true + }, + "@types/node": { + "optional": true + }, + "@vitest/browser": { + "optional": true + }, + "@vitest/ui": { + "optional": true + }, + "happy-dom": { + "optional": true + }, + "jsdom": { + "optional": true + } + } + }, + "node_modules/why-is-node-running": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.3.0.tgz", + "integrity": "sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==", + "dev": true, + "license": "MIT", + "dependencies": { + "siginfo": "^2.0.0", + "stackback": "0.0.2" + }, + "bin": { + "why-is-node-running": "cli.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + }, + "node_modules/zwitch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + } + } +} diff --git a/frontend/package.json b/frontend/package.json new file mode 100644 index 0000000..f707c49 --- /dev/null +++ b/frontend/package.json @@ -0,0 +1,29 @@ +{ + "name": "eval-frontend", + "version": "0.1.0", + "private": true, + "type": "module", + "scripts": { + "dev": "vite", + "build": "tsc && vite build", + "preview": "vite preview", + "test": "vitest" + }, + "dependencies": { + "react": "^19.0.0", + "react-dom": "^19.0.0", + "react-markdown": "^9.0.0", + "remark-gfm": "^4.0.0" + }, + "devDependencies": { + "@types/react": "^19.0.0", + "@types/react-dom": "^19.0.0", + "@vitejs/plugin-react": "^4.3.0", + "autoprefixer": "^10.4.20", + "postcss": "^8.4.47", + "tailwindcss": "^3.4.11", + "typescript": "^5.6.0", + "vite": "^5.4.0", + "vitest": "^2.1.0" + } +} diff --git a/frontend/postcss.config.js b/frontend/postcss.config.js new file mode 100644 index 0000000..2e7af2b --- /dev/null +++ b/frontend/postcss.config.js @@ -0,0 +1,6 @@ +export default { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +} diff --git a/frontend/src/App.test.tsx b/frontend/src/App.test.tsx new file mode 100644 index 0000000..c92ecd5 --- /dev/null +++ b/frontend/src/App.test.tsx @@ -0,0 +1,7 @@ +import { describe, it, expect } from 'vitest' + +describe('App', () => { + it('should render', () => { + expect(true).toBe(true) + }) +}) diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx new file mode 100644 index 0000000..15975aa --- /dev/null +++ b/frontend/src/App.tsx @@ -0,0 +1,274 @@ +import { useState, useEffect } from 'react' +import ReactMarkdown from 'react-markdown' +import remarkGfm from 'remark-gfm' + +interface FileMetadata { + filename: string + title: string + modified: string + size: number +} + +interface FileContent { + filename: string + title: string + content: string + modified: string + size: number +} + +function App() { + const [files, setFiles] = useState([]) + const [currentFile, setCurrentFile] = useState(null) + const [isEditing, setIsEditing] = useState(false) + const [theme, setTheme] = useState<'light' | 'dark' | 'system'>('system') + const [content, setContent] = useState('') + + useEffect(() => { + loadFiles() + applyTheme(theme) + }, [theme]) + + useEffect(() => { + if (currentFile) { + setContent(currentFile.content) + } + }, [currentFile]) + + const loadFiles = async () => { + try { + const response = await fetch('/api/files') + const data = await response.json() + setFiles(data) + } catch (error) { + console.error('Failed to load files:', error) + } + } + + const applyTheme = (theme: 'light' | 'dark' | 'system') => { + const root = document.documentElement + if (theme === 'system') { + const prefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches + if (prefersDark) { + root.classList.add('dark') + } else { + root.classList.remove('dark') + } + } else if (theme === 'dark') { + root.classList.add('dark') + } else { + root.classList.remove('dark') + } + } + + const handleThemeChange = (newTheme: 'light' | 'dark' | 'system') => { + setTheme(newTheme) + localStorage.setItem('theme', newTheme) + } + + const handleFileSelect = async (filename: string) => { + try { + const response = await fetch(`/api/files/${encodeURIComponent(filename)}`) + const data = await response.json() + setCurrentFile(data) + setContent(data.content) + setIsEditing(false) + } catch (error) { + console.error('Failed to load file:', error) + } + } + + const handleNewFile = () => { + setCurrentFile(null) + setContent('# New File\n\nStart writing here...') + setIsEditing(true) + } + + const handleSave = async () => { + if (!currentFile) { + // Create new file + const filename = prompt('Enter filename:', 'untitled.md') + if (!filename) return + + try { + const response = await fetch('/api/files', { + method: 'POST', + headers: {'Content-Type': 'application/json'}, + body: JSON.stringify({filename, content, title: filename.replace('.md', '')}) + }) + if (response.ok) { + await loadFiles() + const newFile = await response.json() + setCurrentFile(newFile) + setIsEditing(false) + } + } catch (error) { + console.error('Failed to create file:', error) + } + } else { + // Update existing file + try { + const response = await fetch(`/api/files/${encodeURIComponent(currentFile.filename)}`, { + method: 'PUT', + headers: {'Content-Type': 'application/json'}, + body: JSON.stringify({content}) + }) + if (response.ok) { + const updated = await response.json() + setCurrentFile(updated) + setIsEditing(false) + } + } catch (error) { + console.error('Failed to save file:', error) + } + } + } + + const handleDelete = async () => { + if (currentFile && confirm(`Delete ${currentFile.filename}?`)) { + try { + await fetch(`/api/files/${encodeURIComponent(currentFile.filename)}`, {method: 'DELETE'}) + setCurrentFile(null) + setContent('') + await loadFiles() + } catch (error) { + console.error('Failed to delete file:', error) + } + } + } + + return ( +
+ {/* Header */} +
+
+

Eval Markdown Editor

+ +
+ {/* Theme Switcher */} +
+ {(['light', 'dark', 'system'] as const).map((t) => ( + + ))} +
+
+
+
+ +
+ {/* File Sidebar */} + + + {/* Editor/Preview Area */} +
+ {currentFile ? ( + <> + {/* Editor Toolbar */} +
+ + {currentFile.filename} + +
+ {isEditing ? ( + <> + + + + + ) : ( + + )} +
+
+ + {/* Content Area */} +
+ {isEditing ? ( +