From 7a016de819f90fa33335e99a3c48b1125e46a4a7 Mon Sep 17 00:00:00 2001 From: Mira Date: Sat, 13 Sep 2025 19:15:44 +1000 Subject: [PATCH 1/2] add ai doc structure --- app/docs/ai/agents-todo/cs294-194-196/index.mdx | 8 ++++++++ app/docs/ai/agents-todo/index.mdx | 8 ++++++++ .../ai/ai-math-basics/calculus-optimization/index.mdx | 8 ++++++++ app/docs/ai/ai-math-basics/index.mdx | 8 ++++++++ app/docs/ai/ai-math-basics/information-theory/index.mdx | 8 ++++++++ app/docs/ai/ai-math-basics/linear-algebra/index.mdx | 8 ++++++++ .../ai/ai-math-basics/linear-algebra/resources/index.mdx | 8 ++++++++ app/docs/ai/ai-math-basics/numerical-analysis/index.mdx | 8 ++++++++ .../ai/ai-math-basics/probability-statistics/index.mdx | 8 ++++++++ .../probability-statistics/resources/index.mdx | 8 ++++++++ app/docs/ai/compute-platforms/autodl/index.mdx | 8 ++++++++ .../autodl/pycharm-connect-autodl/index.mdx | 8 ++++++++ app/docs/ai/compute-platforms/index.mdx | 8 ++++++++ app/docs/ai/compute-platforms/internstudio/index.mdx | 8 ++++++++ app/docs/ai/foundation-models/architectures/index.mdx | 8 ++++++++ app/docs/ai/foundation-models/datasets/index.mdx | 8 ++++++++ app/docs/ai/foundation-models/deploy-infer/index.mdx | 8 ++++++++ app/docs/ai/foundation-models/evaluation/index.mdx | 8 ++++++++ app/docs/ai/foundation-models/finetune/index.mdx | 8 ++++++++ app/docs/ai/foundation-models/finetune/lora/index.mdx | 8 ++++++++ app/docs/ai/foundation-models/finetune/peft/index.mdx | 8 ++++++++ app/docs/ai/foundation-models/index.mdx | 8 ++++++++ app/docs/ai/foundation-models/qkv-interview/index.mdx | 8 ++++++++ .../qkv-interview/why-q-not-cache/index.mdx | 8 ++++++++ app/docs/ai/foundation-models/resources/index.mdx | 8 ++++++++ app/docs/ai/foundation-models/training/index.mdx | 8 ++++++++ app/docs/ai/foundation-models/training/moe-todo/index.mdx | 8 ++++++++ app/docs/ai/generative-todo/index.mdx | 8 ++++++++ app/docs/ai/index.mdx | 8 ++++++++ app/docs/ai/llm-basics/courses/cmu-advanced-nlp/index.mdx | 8 ++++++++ app/docs/ai/llm-basics/courses/cs224n/index.mdx | 8 ++++++++ app/docs/ai/llm-basics/courses/cs336/index.mdx | 8 ++++++++ app/docs/ai/llm-basics/courses/happy-llm/index.mdx | 8 ++++++++ app/docs/ai/llm-basics/courses/index.mdx | 8 ++++++++ app/docs/ai/llm-basics/courses/nanogpt/index.mdx | 8 ++++++++ app/docs/ai/llm-basics/courses/notes-todo/index.mdx | 8 ++++++++ app/docs/ai/llm-basics/cuda/index.mdx | 8 ++++++++ app/docs/ai/llm-basics/deep-learning/d2l/index.mdx | 8 ++++++++ app/docs/ai/llm-basics/deep-learning/index.mdx | 8 ++++++++ app/docs/ai/llm-basics/deep-learning/misc/index.mdx | 8 ++++++++ app/docs/ai/llm-basics/deep-learning/nlp/index.mdx | 8 ++++++++ app/docs/ai/llm-basics/embeddings/index.mdx | 8 ++++++++ .../ai/llm-basics/embeddings/qwen3-embedding/index.mdx | 8 ++++++++ app/docs/ai/llm-basics/index.mdx | 8 ++++++++ app/docs/ai/llm-basics/pytorch/index.mdx | 8 ++++++++ app/docs/ai/llm-basics/transformer/ai-by-hand/index.mdx | 8 ++++++++ app/docs/ai/llm-basics/transformer/index.mdx | 8 ++++++++ app/docs/ai/methodology/fast-reading-with-llm/index.mdx | 8 ++++++++ .../ai/methodology/find-research-direction-2-0/index.mdx | 8 ++++++++ app/docs/ai/methodology/first-sci-submission/index.mdx | 8 ++++++++ app/docs/ai/methodology/index.mdx | 8 ++++++++ app/docs/ai/methodology/reproduce-papers/index.mdx | 8 ++++++++ app/docs/ai/misc-tools/csdn-unlock/index.mdx | 8 ++++++++ app/docs/ai/misc-tools/github/index.mdx | 8 ++++++++ app/docs/ai/misc-tools/index.mdx | 8 ++++++++ app/docs/ai/misc-tools/paper-reading-software/index.mdx | 8 ++++++++ app/docs/ai/misc-tools/perplexity/index.mdx | 8 ++++++++ app/docs/ai/misc-tools/perplexity/npm/index.mdx | 8 ++++++++ app/docs/ai/misc-tools/zotero/index.mdx | 8 ++++++++ .../ai/model-datasets-platforms/hf-daily-papers/index.mdx | 8 ++++++++ .../ai/model-datasets-platforms/huggingface/index.mdx | 8 ++++++++ app/docs/ai/model-datasets-platforms/imagenet/index.mdx | 8 ++++++++ app/docs/ai/model-datasets-platforms/index.mdx | 8 ++++++++ app/docs/ai/model-datasets-platforms/modelscope/index.mdx | 8 ++++++++ app/docs/ai/model-datasets-platforms/swan-lab/index.mdx | 8 ++++++++ app/docs/ai/multimodal/courses/index.mdx | 8 ++++++++ app/docs/ai/multimodal/index.mdx | 8 ++++++++ app/docs/ai/multimodal/llava/clip/index.mdx | 8 ++++++++ app/docs/ai/multimodal/llava/index.mdx | 8 ++++++++ app/docs/ai/multimodal/llava/paper-reading/index.mdx | 8 ++++++++ app/docs/ai/multimodal/llava/repro-todo/index.mdx | 8 ++++++++ app/docs/ai/multimodal/llava/resources/index.mdx | 8 ++++++++ app/docs/ai/multimodal/mllm/index.mdx | 8 ++++++++ app/docs/ai/multimodal/qwenvl/code-reading/index.mdx | 8 ++++++++ app/docs/ai/multimodal/qwenvl/finetune-repro/index.mdx | 8 ++++++++ app/docs/ai/multimodal/qwenvl/index.mdx | 8 ++++++++ app/docs/ai/multimodal/qwenvl/qwen2-5-vl/index.mdx | 8 ++++++++ app/docs/ai/multimodal/video-mm-todo/index.mdx | 8 ++++++++ app/docs/ai/multimodal/vit/index.mdx | 8 ++++++++ app/docs/ai/multimodal/vit/notes/index.mdx | 8 ++++++++ .../multimodal/vit/pruning-compression-papers/index.mdx | 8 ++++++++ app/docs/ai/multimodal/vit/repro-attempts/index.mdx | 8 ++++++++ app/docs/ai/recommender-systems/competitions/index.mdx | 8 ++++++++ app/docs/ai/recommender-systems/index.mdx | 8 ++++++++ app/docs/ai/recommender-systems/notes/index.mdx | 8 ++++++++ app/docs/ai/recommender-systems/papers-toscreen/index.mdx | 8 ++++++++ .../recommender-systems/papers-toscreen/llm4rec/index.mdx | 8 ++++++++ app/docs/ai/recommender-systems/projects/index.mdx | 8 ++++++++ .../projects/tianchi-news-todo/index.mdx | 8 ++++++++ .../resources/datawhale-llm-recsys/index.mdx | 8 ++++++++ app/docs/ai/recommender-systems/resources/index.mdx | 8 ++++++++ .../resources/industry-practice/index.mdx | 8 ++++++++ .../ai/recommender-systems/resources/wangshusen/index.mdx | 8 ++++++++ .../ai/recommender-systems/roadmap-wip/business/index.mdx | 8 ++++++++ app/docs/ai/recommender-systems/roadmap-wip/index.mdx | 8 ++++++++ .../ai/recommender-systems/roadmap-wip/models/index.mdx | 8 ++++++++ app/docs/ai/reinforcement-learning/cot/index.mdx | 8 ++++++++ .../ai/reinforcement-learning/cot/latent-cot/index.mdx | 8 ++++++++ app/docs/ai/reinforcement-learning/cot/mcot/index.mdx | 8 ++++++++ .../ai/reinforcement-learning/deepseek-r1-todo/index.mdx | 8 ++++++++ app/docs/ai/reinforcement-learning/grpo-repro/index.mdx | 8 ++++++++ app/docs/ai/reinforcement-learning/index.mdx | 8 ++++++++ .../ai/reinforcement-learning/papers-toscreen/index.mdx | 8 ++++++++ app/docs/ai/reinforcement-learning/resources/index.mdx | 8 ++++++++ .../resources/zhaoshiyu-course/index.mdx | 8 ++++++++ 105 files changed, 840 insertions(+) create mode 100644 app/docs/ai/agents-todo/cs294-194-196/index.mdx create mode 100644 app/docs/ai/agents-todo/index.mdx create mode 100644 app/docs/ai/ai-math-basics/calculus-optimization/index.mdx create mode 100644 app/docs/ai/ai-math-basics/index.mdx create mode 100644 app/docs/ai/ai-math-basics/information-theory/index.mdx create mode 100644 app/docs/ai/ai-math-basics/linear-algebra/index.mdx create mode 100644 app/docs/ai/ai-math-basics/linear-algebra/resources/index.mdx create mode 100644 app/docs/ai/ai-math-basics/numerical-analysis/index.mdx create mode 100644 app/docs/ai/ai-math-basics/probability-statistics/index.mdx create mode 100644 app/docs/ai/ai-math-basics/probability-statistics/resources/index.mdx create mode 100644 app/docs/ai/compute-platforms/autodl/index.mdx create mode 100644 app/docs/ai/compute-platforms/autodl/pycharm-connect-autodl/index.mdx create mode 100644 app/docs/ai/compute-platforms/index.mdx create mode 100644 app/docs/ai/compute-platforms/internstudio/index.mdx create mode 100644 app/docs/ai/foundation-models/architectures/index.mdx create mode 100644 app/docs/ai/foundation-models/datasets/index.mdx create mode 100644 app/docs/ai/foundation-models/deploy-infer/index.mdx create mode 100644 app/docs/ai/foundation-models/evaluation/index.mdx create mode 100644 app/docs/ai/foundation-models/finetune/index.mdx create mode 100644 app/docs/ai/foundation-models/finetune/lora/index.mdx create mode 100644 app/docs/ai/foundation-models/finetune/peft/index.mdx create mode 100644 app/docs/ai/foundation-models/index.mdx create mode 100644 app/docs/ai/foundation-models/qkv-interview/index.mdx create mode 100644 app/docs/ai/foundation-models/qkv-interview/why-q-not-cache/index.mdx create mode 100644 app/docs/ai/foundation-models/resources/index.mdx create mode 100644 app/docs/ai/foundation-models/training/index.mdx create mode 100644 app/docs/ai/foundation-models/training/moe-todo/index.mdx create mode 100644 app/docs/ai/generative-todo/index.mdx create mode 100644 app/docs/ai/index.mdx create mode 100644 app/docs/ai/llm-basics/courses/cmu-advanced-nlp/index.mdx create mode 100644 app/docs/ai/llm-basics/courses/cs224n/index.mdx create mode 100644 app/docs/ai/llm-basics/courses/cs336/index.mdx create mode 100644 app/docs/ai/llm-basics/courses/happy-llm/index.mdx create mode 100644 app/docs/ai/llm-basics/courses/index.mdx create mode 100644 app/docs/ai/llm-basics/courses/nanogpt/index.mdx create mode 100644 app/docs/ai/llm-basics/courses/notes-todo/index.mdx create mode 100644 app/docs/ai/llm-basics/cuda/index.mdx create mode 100644 app/docs/ai/llm-basics/deep-learning/d2l/index.mdx create mode 100644 app/docs/ai/llm-basics/deep-learning/index.mdx create mode 100644 app/docs/ai/llm-basics/deep-learning/misc/index.mdx create mode 100644 app/docs/ai/llm-basics/deep-learning/nlp/index.mdx create mode 100644 app/docs/ai/llm-basics/embeddings/index.mdx create mode 100644 app/docs/ai/llm-basics/embeddings/qwen3-embedding/index.mdx create mode 100644 app/docs/ai/llm-basics/index.mdx create mode 100644 app/docs/ai/llm-basics/pytorch/index.mdx create mode 100644 app/docs/ai/llm-basics/transformer/ai-by-hand/index.mdx create mode 100644 app/docs/ai/llm-basics/transformer/index.mdx create mode 100644 app/docs/ai/methodology/fast-reading-with-llm/index.mdx create mode 100644 app/docs/ai/methodology/find-research-direction-2-0/index.mdx create mode 100644 app/docs/ai/methodology/first-sci-submission/index.mdx create mode 100644 app/docs/ai/methodology/index.mdx create mode 100644 app/docs/ai/methodology/reproduce-papers/index.mdx create mode 100644 app/docs/ai/misc-tools/csdn-unlock/index.mdx create mode 100644 app/docs/ai/misc-tools/github/index.mdx create mode 100644 app/docs/ai/misc-tools/index.mdx create mode 100644 app/docs/ai/misc-tools/paper-reading-software/index.mdx create mode 100644 app/docs/ai/misc-tools/perplexity/index.mdx create mode 100644 app/docs/ai/misc-tools/perplexity/npm/index.mdx create mode 100644 app/docs/ai/misc-tools/zotero/index.mdx create mode 100644 app/docs/ai/model-datasets-platforms/hf-daily-papers/index.mdx create mode 100644 app/docs/ai/model-datasets-platforms/huggingface/index.mdx create mode 100644 app/docs/ai/model-datasets-platforms/imagenet/index.mdx create mode 100644 app/docs/ai/model-datasets-platforms/index.mdx create mode 100644 app/docs/ai/model-datasets-platforms/modelscope/index.mdx create mode 100644 app/docs/ai/model-datasets-platforms/swan-lab/index.mdx create mode 100644 app/docs/ai/multimodal/courses/index.mdx create mode 100644 app/docs/ai/multimodal/index.mdx create mode 100644 app/docs/ai/multimodal/llava/clip/index.mdx create mode 100644 app/docs/ai/multimodal/llava/index.mdx create mode 100644 app/docs/ai/multimodal/llava/paper-reading/index.mdx create mode 100644 app/docs/ai/multimodal/llava/repro-todo/index.mdx create mode 100644 app/docs/ai/multimodal/llava/resources/index.mdx create mode 100644 app/docs/ai/multimodal/mllm/index.mdx create mode 100644 app/docs/ai/multimodal/qwenvl/code-reading/index.mdx create mode 100644 app/docs/ai/multimodal/qwenvl/finetune-repro/index.mdx create mode 100644 app/docs/ai/multimodal/qwenvl/index.mdx create mode 100644 app/docs/ai/multimodal/qwenvl/qwen2-5-vl/index.mdx create mode 100644 app/docs/ai/multimodal/video-mm-todo/index.mdx create mode 100644 app/docs/ai/multimodal/vit/index.mdx create mode 100644 app/docs/ai/multimodal/vit/notes/index.mdx create mode 100644 app/docs/ai/multimodal/vit/pruning-compression-papers/index.mdx create mode 100644 app/docs/ai/multimodal/vit/repro-attempts/index.mdx create mode 100644 app/docs/ai/recommender-systems/competitions/index.mdx create mode 100644 app/docs/ai/recommender-systems/index.mdx create mode 100644 app/docs/ai/recommender-systems/notes/index.mdx create mode 100644 app/docs/ai/recommender-systems/papers-toscreen/index.mdx create mode 100644 app/docs/ai/recommender-systems/papers-toscreen/llm4rec/index.mdx create mode 100644 app/docs/ai/recommender-systems/projects/index.mdx create mode 100644 app/docs/ai/recommender-systems/projects/tianchi-news-todo/index.mdx create mode 100644 app/docs/ai/recommender-systems/resources/datawhale-llm-recsys/index.mdx create mode 100644 app/docs/ai/recommender-systems/resources/index.mdx create mode 100644 app/docs/ai/recommender-systems/resources/industry-practice/index.mdx create mode 100644 app/docs/ai/recommender-systems/resources/wangshusen/index.mdx create mode 100644 app/docs/ai/recommender-systems/roadmap-wip/business/index.mdx create mode 100644 app/docs/ai/recommender-systems/roadmap-wip/index.mdx create mode 100644 app/docs/ai/recommender-systems/roadmap-wip/models/index.mdx create mode 100644 app/docs/ai/reinforcement-learning/cot/index.mdx create mode 100644 app/docs/ai/reinforcement-learning/cot/latent-cot/index.mdx create mode 100644 app/docs/ai/reinforcement-learning/cot/mcot/index.mdx create mode 100644 app/docs/ai/reinforcement-learning/deepseek-r1-todo/index.mdx create mode 100644 app/docs/ai/reinforcement-learning/grpo-repro/index.mdx create mode 100644 app/docs/ai/reinforcement-learning/index.mdx create mode 100644 app/docs/ai/reinforcement-learning/papers-toscreen/index.mdx create mode 100644 app/docs/ai/reinforcement-learning/resources/index.mdx create mode 100644 app/docs/ai/reinforcement-learning/resources/zhaoshiyu-course/index.mdx diff --git a/app/docs/ai/agents-todo/cs294-194-196/index.mdx b/app/docs/ai/agents-todo/cs294-194-196/index.mdx new file mode 100644 index 0000000..42f717a --- /dev/null +++ b/app/docs/ai/agents-todo/cs294-194-196/index.mdx @@ -0,0 +1,8 @@ +--- +title: "CS294/194-196 Large Language Model Agents" +description: "CS294/194-196 课程相关资料。" +--- + +# CS294/194-196 Large Language Model Agents + +占位页,待补充内容。 diff --git a/app/docs/ai/agents-todo/index.mdx b/app/docs/ai/agents-todo/index.mdx new file mode 100644 index 0000000..4001e62 --- /dev/null +++ b/app/docs/ai/agents-todo/index.mdx @@ -0,0 +1,8 @@ +--- +title: "Agent-TODO" +description: "智能体(Agent)相关待办与资料。" +--- + +# Agent-TODO + +占位页,待补充内容。 diff --git a/app/docs/ai/ai-math-basics/calculus-optimization/index.mdx b/app/docs/ai/ai-math-basics/calculus-optimization/index.mdx new file mode 100644 index 0000000..00c4297 --- /dev/null +++ b/app/docs/ai/ai-math-basics/calculus-optimization/index.mdx @@ -0,0 +1,8 @@ +--- +title: "微积分与优化 (Calculus & Optimization)" +description: "微积分与优化基础与资料。" +--- + +# 微积分与优化(Calculus & Optimization) + +占位页,待补充内容。 diff --git a/app/docs/ai/ai-math-basics/index.mdx b/app/docs/ai/ai-math-basics/index.mdx new file mode 100644 index 0000000..1dc5661 --- /dev/null +++ b/app/docs/ai/ai-math-basics/index.mdx @@ -0,0 +1,8 @@ +--- +title: "AI 数学基础" +description: "涵盖线性代数、概率统计、微积分与优化等。" +--- + +# AI 数学基础 + +占位页,待补充内容。 diff --git a/app/docs/ai/ai-math-basics/information-theory/index.mdx b/app/docs/ai/ai-math-basics/information-theory/index.mdx new file mode 100644 index 0000000..e38a15a --- /dev/null +++ b/app/docs/ai/ai-math-basics/information-theory/index.mdx @@ -0,0 +1,8 @@ +--- +title: "信息论 (Information Theory)" +description: "信息论基础与资料。" +--- + +# 信息论(Information Theory) + +占位页,待补充内容。 diff --git a/app/docs/ai/ai-math-basics/linear-algebra/index.mdx b/app/docs/ai/ai-math-basics/linear-algebra/index.mdx new file mode 100644 index 0000000..75c91c7 --- /dev/null +++ b/app/docs/ai/ai-math-basics/linear-algebra/index.mdx @@ -0,0 +1,8 @@ +--- +title: "线性代数" +description: "线性代数笔记与参考。" +--- + +# 线性代数 + +占位页,待补充内容。 diff --git a/app/docs/ai/ai-math-basics/linear-algebra/resources/index.mdx b/app/docs/ai/ai-math-basics/linear-algebra/resources/index.mdx new file mode 100644 index 0000000..4280d04 --- /dev/null +++ b/app/docs/ai/ai-math-basics/linear-algebra/resources/index.mdx @@ -0,0 +1,8 @@ +--- +title: "参考资料" +description: "线性代数参考资料。" +--- + +# 参考资料(线性代数) + +占位页,待补充内容。 diff --git a/app/docs/ai/ai-math-basics/numerical-analysis/index.mdx b/app/docs/ai/ai-math-basics/numerical-analysis/index.mdx new file mode 100644 index 0000000..78d4bf6 --- /dev/null +++ b/app/docs/ai/ai-math-basics/numerical-analysis/index.mdx @@ -0,0 +1,8 @@ +--- +title: "数值分析 (Numerical Analysis)" +description: "数值分析基础与资料。" +--- + +# 数值分析(Numerical Analysis) + +占位页,待补充内容。 diff --git a/app/docs/ai/ai-math-basics/probability-statistics/index.mdx b/app/docs/ai/ai-math-basics/probability-statistics/index.mdx new file mode 100644 index 0000000..fc02a15 --- /dev/null +++ b/app/docs/ai/ai-math-basics/probability-statistics/index.mdx @@ -0,0 +1,8 @@ +--- +title: "概率论与数理统计 (Probability & Statistics)" +description: "概率与统计基础与资料。" +--- + +# 概率论与数理统计(Probability & Statistics) + +占位页,待补充内容。 diff --git a/app/docs/ai/ai-math-basics/probability-statistics/resources/index.mdx b/app/docs/ai/ai-math-basics/probability-statistics/resources/index.mdx new file mode 100644 index 0000000..4aaedce --- /dev/null +++ b/app/docs/ai/ai-math-basics/probability-statistics/resources/index.mdx @@ -0,0 +1,8 @@ +--- +title: "参考资料" +description: "概率与统计参考资料。" +--- + +# 参考资料(概率与统计) + +占位页,待补充内容。 diff --git a/app/docs/ai/compute-platforms/autodl/index.mdx b/app/docs/ai/compute-platforms/autodl/index.mdx new file mode 100644 index 0000000..1f6977d --- /dev/null +++ b/app/docs/ai/compute-platforms/autodl/index.mdx @@ -0,0 +1,8 @@ +--- +title: "AutoDL" +description: "AutoDL 平台相关资料。" +--- + +# AutoDL + +占位页,待补充内容。 diff --git a/app/docs/ai/compute-platforms/autodl/pycharm-connect-autodl/index.mdx b/app/docs/ai/compute-platforms/autodl/pycharm-connect-autodl/index.mdx new file mode 100644 index 0000000..cd054d8 --- /dev/null +++ b/app/docs/ai/compute-platforms/autodl/pycharm-connect-autodl/index.mdx @@ -0,0 +1,8 @@ +--- +title: "【保姆级图文详解】PyCharm专业版连接AutoDl详细教程" +description: "PyCharm 连接 AutoDL 教程。" +--- + +# 【保姆级图文详解】PyCharm专业版连接AutoDl详细教程 + +占位页,待补充内容。 diff --git a/app/docs/ai/compute-platforms/index.mdx b/app/docs/ai/compute-platforms/index.mdx new file mode 100644 index 0000000..3cde665 --- /dev/null +++ b/app/docs/ai/compute-platforms/index.mdx @@ -0,0 +1,8 @@ +--- +title: "算力平台" +description: "算力平台与使用指南。" +--- + +# 算力平台 + +占位页,待补充内容。 diff --git a/app/docs/ai/compute-platforms/internstudio/index.mdx b/app/docs/ai/compute-platforms/internstudio/index.mdx new file mode 100644 index 0000000..dc0cd89 --- /dev/null +++ b/app/docs/ai/compute-platforms/internstudio/index.mdx @@ -0,0 +1,8 @@ +--- +title: "Internstudio" +description: "Internstudio 平台相关资料。" +--- + +# Internstudio + +占位页,待补充内容。 diff --git a/app/docs/ai/foundation-models/architectures/index.mdx b/app/docs/ai/foundation-models/architectures/index.mdx new file mode 100644 index 0000000..8d62eb7 --- /dev/null +++ b/app/docs/ai/foundation-models/architectures/index.mdx @@ -0,0 +1,8 @@ +--- +title: "模型结构" +description: "模型结构与架构。" +--- + +# 模型结构 + +占位页,待补充内容。 diff --git a/app/docs/ai/foundation-models/datasets/index.mdx b/app/docs/ai/foundation-models/datasets/index.mdx new file mode 100644 index 0000000..328dbc8 --- /dev/null +++ b/app/docs/ai/foundation-models/datasets/index.mdx @@ -0,0 +1,8 @@ +--- +title: "数据集构建" +description: "大模型数据集构建与清洗。" +--- + +# 数据集构建 + +占位页,待补充内容。 diff --git a/app/docs/ai/foundation-models/deploy-infer/index.mdx b/app/docs/ai/foundation-models/deploy-infer/index.mdx new file mode 100644 index 0000000..cb20962 --- /dev/null +++ b/app/docs/ai/foundation-models/deploy-infer/index.mdx @@ -0,0 +1,8 @@ +--- +title: "部署与推理" +description: "模型部署与推理。" +--- + +# 部署与推理 + +占位页,待补充内容。 diff --git a/app/docs/ai/foundation-models/evaluation/index.mdx b/app/docs/ai/foundation-models/evaluation/index.mdx new file mode 100644 index 0000000..c88562c --- /dev/null +++ b/app/docs/ai/foundation-models/evaluation/index.mdx @@ -0,0 +1,8 @@ +--- +title: "模型评测" +description: "评测方法与基准。" +--- + +# 模型评测 + +占位页,待补充内容。 diff --git a/app/docs/ai/foundation-models/finetune/index.mdx b/app/docs/ai/foundation-models/finetune/index.mdx new file mode 100644 index 0000000..9c1f5f8 --- /dev/null +++ b/app/docs/ai/foundation-models/finetune/index.mdx @@ -0,0 +1,8 @@ +--- +title: "模型微调" +description: "模型微调策略与实践。" +--- + +# 模型微调 + +占位页,待补充内容。 diff --git a/app/docs/ai/foundation-models/finetune/lora/index.mdx b/app/docs/ai/foundation-models/finetune/lora/index.mdx new file mode 100644 index 0000000..c2f72e1 --- /dev/null +++ b/app/docs/ai/foundation-models/finetune/lora/index.mdx @@ -0,0 +1,8 @@ +--- +title: "LORA微调" +description: "LoRA 微调记录。" +--- + +# LORA 微调 + +占位页,待补充内容。 diff --git a/app/docs/ai/foundation-models/finetune/peft/index.mdx b/app/docs/ai/foundation-models/finetune/peft/index.mdx new file mode 100644 index 0000000..5e66877 --- /dev/null +++ b/app/docs/ai/foundation-models/finetune/peft/index.mdx @@ -0,0 +1,8 @@ +--- +title: "PEFT参数高效微调" +description: "PEFT 参数高效微调。" +--- + +# PEFT 参数高效微调 + +占位页,待补充内容。 diff --git a/app/docs/ai/foundation-models/index.mdx b/app/docs/ai/foundation-models/index.mdx new file mode 100644 index 0000000..ddb3856 --- /dev/null +++ b/app/docs/ai/foundation-models/index.mdx @@ -0,0 +1,8 @@ +--- +title: "基座大模型" +description: "基础模型的数据、训练、微调、部署与评测。" +--- + +# 基座大模型 + +占位页,待补充内容。 diff --git a/app/docs/ai/foundation-models/qkv-interview/index.mdx b/app/docs/ai/foundation-models/qkv-interview/index.mdx new file mode 100644 index 0000000..5763a6d --- /dev/null +++ b/app/docs/ai/foundation-models/qkv-interview/index.mdx @@ -0,0 +1,8 @@ +--- +title: "经典面试QKV问题" +description: "经典面试 QKV 相关问题。" +--- + +# 经典面试 QKV 问题 + +占位页,待补充内容。 diff --git a/app/docs/ai/foundation-models/qkv-interview/why-q-not-cache/index.mdx b/app/docs/ai/foundation-models/qkv-interview/why-q-not-cache/index.mdx new file mode 100644 index 0000000..dffe4b9 --- /dev/null +++ b/app/docs/ai/foundation-models/qkv-interview/why-q-not-cache/index.mdx @@ -0,0 +1,8 @@ +--- +title: "那为什么Q不可以Cache?" +description: "关于 Q 不可 Cache 的讨论。" +--- + +# 那为什么 Q 不可以 Cache? + +占位页,待补充内容。 diff --git a/app/docs/ai/foundation-models/resources/index.mdx b/app/docs/ai/foundation-models/resources/index.mdx new file mode 100644 index 0000000..65c8cff --- /dev/null +++ b/app/docs/ai/foundation-models/resources/index.mdx @@ -0,0 +1,8 @@ +--- +title: "参考资料" +description: "基座大模型参考资料。" +--- + +# 参考资料(基座大模型) + +占位页,待补充内容。 diff --git a/app/docs/ai/foundation-models/training/index.mdx b/app/docs/ai/foundation-models/training/index.mdx new file mode 100644 index 0000000..d0aba34 --- /dev/null +++ b/app/docs/ai/foundation-models/training/index.mdx @@ -0,0 +1,8 @@ +--- +title: "模型训练" +description: "大模型训练相关笔记。" +--- + +# 模型训练 + +占位页,待补充内容。 diff --git a/app/docs/ai/foundation-models/training/moe-todo/index.mdx b/app/docs/ai/foundation-models/training/moe-todo/index.mdx new file mode 100644 index 0000000..5229980 --- /dev/null +++ b/app/docs/ai/foundation-models/training/moe-todo/index.mdx @@ -0,0 +1,8 @@ +--- +title: "MoE TODO" +description: "MoE 相关待办记录。" +--- + +# MoE TODO + +占位页,待补充内容。 diff --git a/app/docs/ai/generative-todo/index.mdx b/app/docs/ai/generative-todo/index.mdx new file mode 100644 index 0000000..930bcff --- /dev/null +++ b/app/docs/ai/generative-todo/index.mdx @@ -0,0 +1,8 @@ +--- +title: "生成模型-TODO" +description: "生成模型相关待办与资料。" +--- + +# 生成模型 TODO + +占位页,待补充内容。 diff --git a/app/docs/ai/index.mdx b/app/docs/ai/index.mdx new file mode 100644 index 0000000..596c1c0 --- /dev/null +++ b/app/docs/ai/index.mdx @@ -0,0 +1,8 @@ +--- +title: "AI 知识库" +description: "AI 相关笔记与资料的目录占位页。" +--- + +# AI 知识库 + +占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/courses/cmu-advanced-nlp/index.mdx b/app/docs/ai/llm-basics/courses/cmu-advanced-nlp/index.mdx new file mode 100644 index 0000000..91ede1b --- /dev/null +++ b/app/docs/ai/llm-basics/courses/cmu-advanced-nlp/index.mdx @@ -0,0 +1,8 @@ +--- +title: "CMU Advanced NLP" +description: "CMU 高级 NLP 课程笔记。" +--- + +# CMU Advanced NLP + +占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/courses/cs224n/index.mdx b/app/docs/ai/llm-basics/courses/cs224n/index.mdx new file mode 100644 index 0000000..028e128 --- /dev/null +++ b/app/docs/ai/llm-basics/courses/cs224n/index.mdx @@ -0,0 +1,8 @@ +--- +title: "CS224斯坦福CS224N《深度学习自然语言处理》-从nlp基础讲起,有miniGPT" +description: "CS224N 课程相关笔记。" +--- + +# CS224N 斯坦福《深度学习自然语言处理》 + +占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/courses/cs336/index.mdx b/app/docs/ai/llm-basics/courses/cs336/index.mdx new file mode 100644 index 0000000..67fa43d --- /dev/null +++ b/app/docs/ai/llm-basics/courses/cs336/index.mdx @@ -0,0 +1,8 @@ +--- +title: "斯坦福大学 2025 年春季的 CS336 课程「从头开始创造语言模型」" +description: "斯坦福 CS336 课程笔记。" +--- + +# 斯坦福 CS336 从头开始创造语言模型 + +占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/courses/happy-llm/index.mdx b/app/docs/ai/llm-basics/courses/happy-llm/index.mdx new file mode 100644 index 0000000..42435c7 --- /dev/null +++ b/app/docs/ai/llm-basics/courses/happy-llm/index.mdx @@ -0,0 +1,8 @@ +--- +title: "Happy-LLM-从0构建一个参数大小为215M的大模型。" +description: "Happy-LLM 项目课程笔记。" +--- + +# Happy-LLM 从 0 构建 215M 模型 + +占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/courses/index.mdx b/app/docs/ai/llm-basics/courses/index.mdx new file mode 100644 index 0000000..980157b --- /dev/null +++ b/app/docs/ai/llm-basics/courses/index.mdx @@ -0,0 +1,8 @@ +--- +title: "入门课程" +description: "LLM/深度学习课程。" +--- + +# 入门课程(LLM) + +占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/courses/nanogpt/index.mdx b/app/docs/ai/llm-basics/courses/nanogpt/index.mdx new file mode 100644 index 0000000..028311b --- /dev/null +++ b/app/docs/ai/llm-basics/courses/nanogpt/index.mdx @@ -0,0 +1,8 @@ +--- +title: "NanoGPT-从零实现GPT,Tokenizer并进行预训练" +description: "NanoGPT 从零实现与预训练。" +--- + +# NanoGPT-从零实现GPT,Tokenizer并进行预训练 + +占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/courses/notes-todo/index.mdx b/app/docs/ai/llm-basics/courses/notes-todo/index.mdx new file mode 100644 index 0000000..e233928 --- /dev/null +++ b/app/docs/ai/llm-basics/courses/notes-todo/index.mdx @@ -0,0 +1,8 @@ +--- +title: "笔记TODO" +description: "课程笔记待办清单。" +--- + +# 笔记 TODO + +占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/cuda/index.mdx b/app/docs/ai/llm-basics/cuda/index.mdx new file mode 100644 index 0000000..6bfa88e --- /dev/null +++ b/app/docs/ai/llm-basics/cuda/index.mdx @@ -0,0 +1,8 @@ +--- +title: "CUDA" +description: "CUDA 学习与优化。" +--- + +# CUDA + +占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/deep-learning/d2l/index.mdx b/app/docs/ai/llm-basics/deep-learning/d2l/index.mdx new file mode 100644 index 0000000..ad56381 --- /dev/null +++ b/app/docs/ai/llm-basics/deep-learning/d2l/index.mdx @@ -0,0 +1,8 @@ +--- +title: "李沐动手学深度学习" +description: "《动手学深度学习》相关笔记。" +--- + +# 李沐动手学深度学习 + +占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/deep-learning/index.mdx b/app/docs/ai/llm-basics/deep-learning/index.mdx new file mode 100644 index 0000000..3d5b642 --- /dev/null +++ b/app/docs/ai/llm-basics/deep-learning/index.mdx @@ -0,0 +1,8 @@ +--- +title: "深度学习基础" +description: "深度学习基础内容。" +--- + +# 深度学习基础 + +占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/deep-learning/misc/index.mdx b/app/docs/ai/llm-basics/deep-learning/misc/index.mdx new file mode 100644 index 0000000..8d1ed3f --- /dev/null +++ b/app/docs/ai/llm-basics/deep-learning/misc/index.mdx @@ -0,0 +1,8 @@ +--- +title: "其他资料" +description: "深度学习杂项资料。" +--- + +# 其他资料(深度学习) + +占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/deep-learning/nlp/index.mdx b/app/docs/ai/llm-basics/deep-learning/nlp/index.mdx new file mode 100644 index 0000000..f9dfc6b --- /dev/null +++ b/app/docs/ai/llm-basics/deep-learning/nlp/index.mdx @@ -0,0 +1,8 @@ +--- +title: "NLP" +description: "自然语言处理基础。" +--- + +# NLP + +占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/embeddings/index.mdx b/app/docs/ai/llm-basics/embeddings/index.mdx new file mode 100644 index 0000000..4987f8a --- /dev/null +++ b/app/docs/ai/llm-basics/embeddings/index.mdx @@ -0,0 +1,8 @@ +--- +title: "Embedding模型" +description: "Embedding/向量化相关资料。" +--- + +# Embedding模型 + +占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/embeddings/qwen3-embedding/index.mdx b/app/docs/ai/llm-basics/embeddings/qwen3-embedding/index.mdx new file mode 100644 index 0000000..47d1bb5 --- /dev/null +++ b/app/docs/ai/llm-basics/embeddings/qwen3-embedding/index.mdx @@ -0,0 +1,8 @@ +--- +title: "Qwen3-embedding" +description: "Qwen3 Embedding 模型相关。" +--- + +# Qwen3-embedding + +占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/index.mdx b/app/docs/ai/llm-basics/index.mdx new file mode 100644 index 0000000..dc833af --- /dev/null +++ b/app/docs/ai/llm-basics/index.mdx @@ -0,0 +1,8 @@ +--- +title: "大模型基础" +description: "LLM 基础与实践资料目录。" +--- + +# 大模型基础 + +占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/pytorch/index.mdx b/app/docs/ai/llm-basics/pytorch/index.mdx new file mode 100644 index 0000000..6696028 --- /dev/null +++ b/app/docs/ai/llm-basics/pytorch/index.mdx @@ -0,0 +1,8 @@ +--- +title: "Pytorch" +description: "Pytorch 学习记录。" +--- + +# Pytorch + +占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/transformer/ai-by-hand/index.mdx b/app/docs/ai/llm-basics/transformer/ai-by-hand/index.mdx new file mode 100644 index 0000000..2b52b8b --- /dev/null +++ b/app/docs/ai/llm-basics/transformer/ai-by-hand/index.mdx @@ -0,0 +1,8 @@ +--- +title: "AI by Hand:手搓 AI 模型" +description: "从零手写 AI/Transformer 模型。" +--- + +# AI by Hand:手搓 AI 模型 + +占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/transformer/index.mdx b/app/docs/ai/llm-basics/transformer/index.mdx new file mode 100644 index 0000000..86dbcb1 --- /dev/null +++ b/app/docs/ai/llm-basics/transformer/index.mdx @@ -0,0 +1,8 @@ +--- +title: "Transformer" +description: "Transformer 相关知识与资料。" +--- + +# Transformer + +占位页,待补充内容。 diff --git a/app/docs/ai/methodology/fast-reading-with-llm/index.mdx b/app/docs/ai/methodology/fast-reading-with-llm/index.mdx new file mode 100644 index 0000000..3b7ba39 --- /dev/null +++ b/app/docs/ai/methodology/fast-reading-with-llm/index.mdx @@ -0,0 +1,8 @@ +--- +title: "科研自救指南 | 如何使用大模型实现论文速读" +description: "论文速读工作流。" +--- + +# 科研自救指南 | 如何使用大模型实现论文速读 + +占位页,待补充内容。 diff --git a/app/docs/ai/methodology/find-research-direction-2-0/index.mdx b/app/docs/ai/methodology/find-research-direction-2-0/index.mdx new file mode 100644 index 0000000..ea38940 --- /dev/null +++ b/app/docs/ai/methodology/find-research-direction-2-0/index.mdx @@ -0,0 +1,8 @@ +--- +title: "科研自救指南 | 如何找到研究方向2.0" +description: "科研选题与方向方法论。" +--- + +# 科研自救指南 | 如何找到研究方向 2.0 + +占位页,待补充内容。 diff --git a/app/docs/ai/methodology/first-sci-submission/index.mdx b/app/docs/ai/methodology/first-sci-submission/index.mdx new file mode 100644 index 0000000..441723c --- /dev/null +++ b/app/docs/ai/methodology/first-sci-submission/index.mdx @@ -0,0 +1,8 @@ +--- +title: "科研自救指南 | 如何投稿人生第一篇SCI论文?" +description: "SCI 投稿流程与准备。" +--- + +# 科研自救指南 | 如何投稿人生第一篇 SCI 论文? + +占位页,待补充内容。 diff --git a/app/docs/ai/methodology/index.mdx b/app/docs/ai/methodology/index.mdx new file mode 100644 index 0000000..28733c6 --- /dev/null +++ b/app/docs/ai/methodology/index.mdx @@ -0,0 +1,8 @@ +--- +title: "方法论学习" +description: "科研方法论与工作方法。" +--- + +# 方法论学习 + +占位页,待补充内容。 diff --git a/app/docs/ai/methodology/reproduce-papers/index.mdx b/app/docs/ai/methodology/reproduce-papers/index.mdx new file mode 100644 index 0000000..64ffda1 --- /dev/null +++ b/app/docs/ai/methodology/reproduce-papers/index.mdx @@ -0,0 +1,8 @@ +--- +title: "科研自救指南 | 如何复现论文代码" +description: "论文代码复现方法论。" +--- + +# 科研自救指南 | 如何复现论文代码 + +占位页,待补充内容。 diff --git a/app/docs/ai/misc-tools/csdn-unlock/index.mdx b/app/docs/ai/misc-tools/csdn-unlock/index.mdx new file mode 100644 index 0000000..84792b6 --- /dev/null +++ b/app/docs/ai/misc-tools/csdn-unlock/index.mdx @@ -0,0 +1,8 @@ +--- +title: "CSDN破解" +description: "CSDN 内容访问相关。" +--- + +# CSDN 破解 + +占位页,待补充内容。 diff --git a/app/docs/ai/misc-tools/github/index.mdx b/app/docs/ai/misc-tools/github/index.mdx new file mode 100644 index 0000000..f8f2725 --- /dev/null +++ b/app/docs/ai/misc-tools/github/index.mdx @@ -0,0 +1,8 @@ +--- +title: "github" +description: "GitHub 使用与技巧。" +--- + +# GitHub + +占位页,待补充内容。 diff --git a/app/docs/ai/misc-tools/index.mdx b/app/docs/ai/misc-tools/index.mdx new file mode 100644 index 0000000..1a90599 --- /dev/null +++ b/app/docs/ai/misc-tools/index.mdx @@ -0,0 +1,8 @@ +--- +title: "杂项工具" +description: "学习与研究相关的杂项工具。" +--- + +# 杂项工具 + +占位页,待补充内容。 diff --git a/app/docs/ai/misc-tools/paper-reading-software/index.mdx b/app/docs/ai/misc-tools/paper-reading-software/index.mdx new file mode 100644 index 0000000..e4bf4a9 --- /dev/null +++ b/app/docs/ai/misc-tools/paper-reading-software/index.mdx @@ -0,0 +1,8 @@ +--- +title: "论文阅读软件" +description: "论文阅读工具与工作流。" +--- + +# 论文阅读软件 + +占位页,待补充内容。 diff --git a/app/docs/ai/misc-tools/perplexity/index.mdx b/app/docs/ai/misc-tools/perplexity/index.mdx new file mode 100644 index 0000000..69dde55 --- /dev/null +++ b/app/docs/ai/misc-tools/perplexity/index.mdx @@ -0,0 +1,8 @@ +--- +title: "perplexity" +description: "Perplexity 使用与整合。" +--- + +# Perplexity + +占位页,待补充内容。 diff --git a/app/docs/ai/misc-tools/perplexity/npm/index.mdx b/app/docs/ai/misc-tools/perplexity/npm/index.mdx new file mode 100644 index 0000000..d46802f --- /dev/null +++ b/app/docs/ai/misc-tools/perplexity/npm/index.mdx @@ -0,0 +1,8 @@ +--- +title: "NPM" +description: "与 Perplexity 相关 NPM 工具。" +--- + +# NPM(Perplexity) + +占位页,待补充内容。 diff --git a/app/docs/ai/misc-tools/zotero/index.mdx b/app/docs/ai/misc-tools/zotero/index.mdx new file mode 100644 index 0000000..f4d7c08 --- /dev/null +++ b/app/docs/ai/misc-tools/zotero/index.mdx @@ -0,0 +1,8 @@ +--- +title: "Zotero" +description: "Zotero 使用与插件。" +--- + +# Zotero + +占位页,待补充内容。 diff --git a/app/docs/ai/model-datasets-platforms/hf-daily-papers/index.mdx b/app/docs/ai/model-datasets-platforms/hf-daily-papers/index.mdx new file mode 100644 index 0000000..4c06a91 --- /dev/null +++ b/app/docs/ai/model-datasets-platforms/hf-daily-papers/index.mdx @@ -0,0 +1,8 @@ +--- +title: "Hugging Face 论文平台 Daily Papers" +description: "HF Daily Papers 相关。" +--- + +# Hugging Face 论文平台 Daily Papers + +占位页,待补充内容。 diff --git a/app/docs/ai/model-datasets-platforms/huggingface/index.mdx b/app/docs/ai/model-datasets-platforms/huggingface/index.mdx new file mode 100644 index 0000000..4e1b0a2 --- /dev/null +++ b/app/docs/ai/model-datasets-platforms/huggingface/index.mdx @@ -0,0 +1,8 @@ +--- +title: "Huggingface" +description: "Huggingface 平台相关。" +--- + +# Huggingface + +占位页,待补充内容。 diff --git a/app/docs/ai/model-datasets-platforms/imagenet/index.mdx b/app/docs/ai/model-datasets-platforms/imagenet/index.mdx new file mode 100644 index 0000000..2389896 --- /dev/null +++ b/app/docs/ai/model-datasets-platforms/imagenet/index.mdx @@ -0,0 +1,8 @@ +--- +title: "ImageNet" +description: "ImageNet 数据集相关。" +--- + +# ImageNet + +占位页,待补充内容。 diff --git a/app/docs/ai/model-datasets-platforms/index.mdx b/app/docs/ai/model-datasets-platforms/index.mdx new file mode 100644 index 0000000..7451c28 --- /dev/null +++ b/app/docs/ai/model-datasets-platforms/index.mdx @@ -0,0 +1,8 @@ +--- +title: "模型数据集平台" +description: "模型与数据集平台相关目录。" +--- + +# 模型数据集平台 + +占位页,待补充内容。 diff --git a/app/docs/ai/model-datasets-platforms/modelscope/index.mdx b/app/docs/ai/model-datasets-platforms/modelscope/index.mdx new file mode 100644 index 0000000..8b1f11b --- /dev/null +++ b/app/docs/ai/model-datasets-platforms/modelscope/index.mdx @@ -0,0 +1,8 @@ +--- +title: "Modelscope" +description: "Modelscope 平台相关。" +--- + +# Modelscope + +占位页,待补充内容。 diff --git a/app/docs/ai/model-datasets-platforms/swan-lab/index.mdx b/app/docs/ai/model-datasets-platforms/swan-lab/index.mdx new file mode 100644 index 0000000..361fbdd --- /dev/null +++ b/app/docs/ai/model-datasets-platforms/swan-lab/index.mdx @@ -0,0 +1,8 @@ +--- +title: "Swan Lab- AI 模型训练跟踪与可视化工具" +description: "Swan Lab 平台相关。" +--- + +# Swan Lab — AI 模型训练跟踪与可视化工具 + +占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/courses/index.mdx b/app/docs/ai/multimodal/courses/index.mdx new file mode 100644 index 0000000..34f16a9 --- /dev/null +++ b/app/docs/ai/multimodal/courses/index.mdx @@ -0,0 +1,8 @@ +--- +title: "多模态基础课程" +description: "多模态学习课程。" +--- + +# 多模态基础课程 + +占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/index.mdx b/app/docs/ai/multimodal/index.mdx new file mode 100644 index 0000000..4a4b64d --- /dev/null +++ b/app/docs/ai/multimodal/index.mdx @@ -0,0 +1,8 @@ +--- +title: "多模态大模型" +description: "多模态模型课程、框架与实现。" +--- + +# 多模态大模型 + +占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/llava/clip/index.mdx b/app/docs/ai/multimodal/llava/clip/index.mdx new file mode 100644 index 0000000..bec7ee0 --- /dev/null +++ b/app/docs/ai/multimodal/llava/clip/index.mdx @@ -0,0 +1,8 @@ +--- +title: "CLIP" +description: "CLIP 模型资料。" +--- + +# CLIP + +占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/llava/index.mdx b/app/docs/ai/multimodal/llava/index.mdx new file mode 100644 index 0000000..ce58f11 --- /dev/null +++ b/app/docs/ai/multimodal/llava/index.mdx @@ -0,0 +1,8 @@ +--- +title: "LLaVA-多模态大模型框架基础结构" +description: "LLaVA 框架相关。" +--- + +# LLaVA-多模态大模型框架基础结构 + +占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/llava/paper-reading/index.mdx b/app/docs/ai/multimodal/llava/paper-reading/index.mdx new file mode 100644 index 0000000..9b6dd27 --- /dev/null +++ b/app/docs/ai/multimodal/llava/paper-reading/index.mdx @@ -0,0 +1,8 @@ +--- +title: "LLaVA论文精读" +description: "LLaVA 论文阅读。" +--- + +# LLaVA 论文精读 + +占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/llava/repro-todo/index.mdx b/app/docs/ai/multimodal/llava/repro-todo/index.mdx new file mode 100644 index 0000000..256958f --- /dev/null +++ b/app/docs/ai/multimodal/llava/repro-todo/index.mdx @@ -0,0 +1,8 @@ +--- +title: "LLaVA复现TODO" +description: "LLaVA 复现待办。" +--- + +# LLaVA 复现 TODO + +占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/llava/resources/index.mdx b/app/docs/ai/multimodal/llava/resources/index.mdx new file mode 100644 index 0000000..46455c0 --- /dev/null +++ b/app/docs/ai/multimodal/llava/resources/index.mdx @@ -0,0 +1,8 @@ +--- +title: "阅读资料" +description: "LLaVA 相关阅读。" +--- + +# 阅读资料(LLaVA) + +占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/mllm/index.mdx b/app/docs/ai/multimodal/mllm/index.mdx new file mode 100644 index 0000000..857d11c --- /dev/null +++ b/app/docs/ai/multimodal/mllm/index.mdx @@ -0,0 +1,8 @@ +--- +title: "MLLM多模态大模型" +description: "多模态大模型(MLLM)资料。" +--- + +# MLLM 多模态大模型 + +占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/qwenvl/code-reading/index.mdx b/app/docs/ai/multimodal/qwenvl/code-reading/index.mdx new file mode 100644 index 0000000..0a2d071 --- /dev/null +++ b/app/docs/ai/multimodal/qwenvl/code-reading/index.mdx @@ -0,0 +1,8 @@ +--- +title: "Qwen2.5VL源码解读" +description: "Qwen2.5VL 源码阅读。" +--- + +# Qwen2.5VL 源码解读 + +占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/qwenvl/finetune-repro/index.mdx b/app/docs/ai/multimodal/qwenvl/finetune-repro/index.mdx new file mode 100644 index 0000000..fb385ad --- /dev/null +++ b/app/docs/ai/multimodal/qwenvl/finetune-repro/index.mdx @@ -0,0 +1,8 @@ +--- +title: "微调复现" +description: "QwenVL 微调复现。" +--- + +# 微调复现(QwenVL) + +占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/qwenvl/index.mdx b/app/docs/ai/multimodal/qwenvl/index.mdx new file mode 100644 index 0000000..039463f --- /dev/null +++ b/app/docs/ai/multimodal/qwenvl/index.mdx @@ -0,0 +1,8 @@ +--- +title: "QwenVL" +description: "QwenVL 多模态相关。" +--- + +# QwenVL + +占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/qwenvl/qwen2-5-vl/index.mdx b/app/docs/ai/multimodal/qwenvl/qwen2-5-vl/index.mdx new file mode 100644 index 0000000..56380a6 --- /dev/null +++ b/app/docs/ai/multimodal/qwenvl/qwen2-5-vl/index.mdx @@ -0,0 +1,8 @@ +--- +title: "Qwen2.5VL" +description: "Qwen2.5VL 相关。" +--- + +# Qwen2.5VL + +占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/video-mm-todo/index.mdx b/app/docs/ai/multimodal/video-mm-todo/index.mdx new file mode 100644 index 0000000..6852c4b --- /dev/null +++ b/app/docs/ai/multimodal/video-mm-todo/index.mdx @@ -0,0 +1,8 @@ +--- +title: "多模态视频大模型-TODO" +description: "视频多模态待办。" +--- + +# 多模态视频大模型 TODO + +占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/vit/index.mdx b/app/docs/ai/multimodal/vit/index.mdx new file mode 100644 index 0000000..2ce83aa --- /dev/null +++ b/app/docs/ai/multimodal/vit/index.mdx @@ -0,0 +1,8 @@ +--- +title: "ViT视觉编码器" +description: "Vision Transformer 资料。" +--- + +# ViT 视觉编码器 + +占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/vit/notes/index.mdx b/app/docs/ai/multimodal/vit/notes/index.mdx new file mode 100644 index 0000000..3106995 --- /dev/null +++ b/app/docs/ai/multimodal/vit/notes/index.mdx @@ -0,0 +1,8 @@ +--- +title: "ViT学习笔记" +description: "ViT 学习笔记。" +--- + +# ViT 学习笔记 + +占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/vit/pruning-compression-papers/index.mdx b/app/docs/ai/multimodal/vit/pruning-compression-papers/index.mdx new file mode 100644 index 0000000..094bb5f --- /dev/null +++ b/app/docs/ai/multimodal/vit/pruning-compression-papers/index.mdx @@ -0,0 +1,8 @@ +--- +title: "ViTs剪枝压缩论文" +description: "ViTs 剪枝与压缩论文。" +--- + +# ViTs 剪枝压缩论文 + +占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/vit/repro-attempts/index.mdx b/app/docs/ai/multimodal/vit/repro-attempts/index.mdx new file mode 100644 index 0000000..9faf075 --- /dev/null +++ b/app/docs/ai/multimodal/vit/repro-attempts/index.mdx @@ -0,0 +1,8 @@ +--- +title: "复现尝试" +description: "ViT 复现尝试。" +--- + +# 复现尝试(ViT) + +占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/competitions/index.mdx b/app/docs/ai/recommender-systems/competitions/index.mdx new file mode 100644 index 0000000..c0cdc64 --- /dev/null +++ b/app/docs/ai/recommender-systems/competitions/index.mdx @@ -0,0 +1,8 @@ +--- +title: "相关比赛" +description: "推荐系统相关比赛。" +--- + +# 相关比赛(推荐系统) + +占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/index.mdx b/app/docs/ai/recommender-systems/index.mdx new file mode 100644 index 0000000..def92fd --- /dev/null +++ b/app/docs/ai/recommender-systems/index.mdx @@ -0,0 +1,8 @@ +--- +title: "推荐系统" +description: "推荐系统学习路径、资料与项目目录。" +--- + +# 推荐系统 + +占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/notes/index.mdx b/app/docs/ai/recommender-systems/notes/index.mdx new file mode 100644 index 0000000..be64b6a --- /dev/null +++ b/app/docs/ai/recommender-systems/notes/index.mdx @@ -0,0 +1,8 @@ +--- +title: "推荐系统学习笔记" +description: "学习笔记。" +--- + +# 推荐系统学习笔记 + +占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/papers-toscreen/index.mdx b/app/docs/ai/recommender-systems/papers-toscreen/index.mdx new file mode 100644 index 0000000..0869314 --- /dev/null +++ b/app/docs/ai/recommender-systems/papers-toscreen/index.mdx @@ -0,0 +1,8 @@ +--- +title: "推荐系统项目论文(待筛选)" +description: "论文筛选列表。" +--- + +# 推荐系统项目论文(待筛选) + +占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/papers-toscreen/llm4rec/index.mdx b/app/docs/ai/recommender-systems/papers-toscreen/llm4rec/index.mdx new file mode 100644 index 0000000..3a5ec05 --- /dev/null +++ b/app/docs/ai/recommender-systems/papers-toscreen/llm4rec/index.mdx @@ -0,0 +1,8 @@ +--- +title: "LLM4REC" +description: "LLM4REC 论文与资料。" +--- + +# LLM4REC + +占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/projects/index.mdx b/app/docs/ai/recommender-systems/projects/index.mdx new file mode 100644 index 0000000..0803251 --- /dev/null +++ b/app/docs/ai/recommender-systems/projects/index.mdx @@ -0,0 +1,8 @@ +--- +title: "初学者实战项目" +description: "推荐系统入门实战项目。" +--- + +# 初学者实战项目(推荐系统) + +占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/projects/tianchi-news-todo/index.mdx b/app/docs/ai/recommender-systems/projects/tianchi-news-todo/index.mdx new file mode 100644 index 0000000..cd11f03 --- /dev/null +++ b/app/docs/ai/recommender-systems/projects/tianchi-news-todo/index.mdx @@ -0,0 +1,8 @@ +--- +title: "阿里天池新闻推荐系统TODO" +description: "天池新闻推荐系统项目待办。" +--- + +# 阿里天池新闻推荐系统 TODO + +占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/resources/datawhale-llm-recsys/index.mdx b/app/docs/ai/recommender-systems/resources/datawhale-llm-recsys/index.mdx new file mode 100644 index 0000000..95e2191 --- /dev/null +++ b/app/docs/ai/recommender-systems/resources/datawhale-llm-recsys/index.mdx @@ -0,0 +1,8 @@ +--- +title: "Datawhale大模型推荐系统组队学" +description: "Datawhale 组队学习资料。" +--- + +# Datawhale 大模型推荐系统组队学 + +占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/resources/index.mdx b/app/docs/ai/recommender-systems/resources/index.mdx new file mode 100644 index 0000000..67ed718 --- /dev/null +++ b/app/docs/ai/recommender-systems/resources/index.mdx @@ -0,0 +1,8 @@ +--- +title: "推荐学习资料" +description: "推荐系统学习资料。" +--- + +# 推荐学习资料(推荐系统) + +占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/resources/industry-practice/index.mdx b/app/docs/ai/recommender-systems/resources/industry-practice/index.mdx new file mode 100644 index 0000000..cd19e0e --- /dev/null +++ b/app/docs/ai/recommender-systems/resources/industry-practice/index.mdx @@ -0,0 +1,8 @@ +--- +title: "《互联网大厂推荐算法实战》" +description: "互联网大厂实践资料。" +--- + +# 《互联网大厂推荐算法实战》 + +占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/resources/wangshusen/index.mdx b/app/docs/ai/recommender-systems/resources/wangshusen/index.mdx new file mode 100644 index 0000000..c85bf04 --- /dev/null +++ b/app/docs/ai/recommender-systems/resources/wangshusen/index.mdx @@ -0,0 +1,8 @@ +--- +title: "王树森" +description: "王树森老师推荐系统资料。" +--- + +# 王树森(推荐系统) + +占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/roadmap-wip/business/index.mdx b/app/docs/ai/recommender-systems/roadmap-wip/business/index.mdx new file mode 100644 index 0000000..695ccdd --- /dev/null +++ b/app/docs/ai/recommender-systems/roadmap-wip/business/index.mdx @@ -0,0 +1,8 @@ +--- +title: "学习业务" +description: "推荐系统业务相关。" +--- + +# 学习业务(推荐系统) + +占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/roadmap-wip/index.mdx b/app/docs/ai/recommender-systems/roadmap-wip/index.mdx new file mode 100644 index 0000000..0b6eff1 --- /dev/null +++ b/app/docs/ai/recommender-systems/roadmap-wip/index.mdx @@ -0,0 +1,8 @@ +--- +title: "推荐系统学习路径(WIP)" +description: "学习路径(进行中)。" +--- + +# 推荐系统学习路径(WIP) + +占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/roadmap-wip/models/index.mdx b/app/docs/ai/recommender-systems/roadmap-wip/models/index.mdx new file mode 100644 index 0000000..275af21 --- /dev/null +++ b/app/docs/ai/recommender-systems/roadmap-wip/models/index.mdx @@ -0,0 +1,8 @@ +--- +title: "学习模型" +description: "推荐系统模型学习。" +--- + +# 学习模型(推荐系统) + +占位页,待补充内容。 diff --git a/app/docs/ai/reinforcement-learning/cot/index.mdx b/app/docs/ai/reinforcement-learning/cot/index.mdx new file mode 100644 index 0000000..9d7b29b --- /dev/null +++ b/app/docs/ai/reinforcement-learning/cot/index.mdx @@ -0,0 +1,8 @@ +--- +title: "思维链COT" +description: "思维链(COT)相关资料。" +--- + +# 思维链 COT + +占位页,待补充内容。 diff --git a/app/docs/ai/reinforcement-learning/cot/latent-cot/index.mdx b/app/docs/ai/reinforcement-learning/cot/latent-cot/index.mdx new file mode 100644 index 0000000..f548361 --- /dev/null +++ b/app/docs/ai/reinforcement-learning/cot/latent-cot/index.mdx @@ -0,0 +1,8 @@ +--- +title: "Latent cot" +description: "Latent COT 相关资料。" +--- + +# Latent COT + +占位页,待补充内容。 diff --git a/app/docs/ai/reinforcement-learning/cot/mcot/index.mdx b/app/docs/ai/reinforcement-learning/cot/mcot/index.mdx new file mode 100644 index 0000000..9484231 --- /dev/null +++ b/app/docs/ai/reinforcement-learning/cot/mcot/index.mdx @@ -0,0 +1,8 @@ +--- +title: "MCOT" +description: "MCOT 相关资料。" +--- + +# MCOT + +占位页,待补充内容。 diff --git a/app/docs/ai/reinforcement-learning/deepseek-r1-todo/index.mdx b/app/docs/ai/reinforcement-learning/deepseek-r1-todo/index.mdx new file mode 100644 index 0000000..92ceb57 --- /dev/null +++ b/app/docs/ai/reinforcement-learning/deepseek-r1-todo/index.mdx @@ -0,0 +1,8 @@ +--- +title: "DEEPSEEK-R1解读TODO" +description: "DEEPSEEK-R1 相关解读的待办。" +--- + +# DEEPSEEK-R1 解读 TODO + +占位页,待补充内容。 diff --git a/app/docs/ai/reinforcement-learning/grpo-repro/index.mdx b/app/docs/ai/reinforcement-learning/grpo-repro/index.mdx new file mode 100644 index 0000000..054d31f --- /dev/null +++ b/app/docs/ai/reinforcement-learning/grpo-repro/index.mdx @@ -0,0 +1,8 @@ +--- +title: "GRPO复现参考" +description: "GRPO 复现相关参考。" +--- + +# GRPO 复现参考 + +占位页,待补充内容。 diff --git a/app/docs/ai/reinforcement-learning/index.mdx b/app/docs/ai/reinforcement-learning/index.mdx new file mode 100644 index 0000000..f818dff --- /dev/null +++ b/app/docs/ai/reinforcement-learning/index.mdx @@ -0,0 +1,8 @@ +--- +title: "强化学习" +description: "强化学习笔记与资料。" +--- + +# 强化学习 + +占位页,待补充内容。 diff --git a/app/docs/ai/reinforcement-learning/papers-toscreen/index.mdx b/app/docs/ai/reinforcement-learning/papers-toscreen/index.mdx new file mode 100644 index 0000000..b85d5f0 --- /dev/null +++ b/app/docs/ai/reinforcement-learning/papers-toscreen/index.mdx @@ -0,0 +1,8 @@ +--- +title: "强化学习项目论文(待筛选)" +description: "项目论文筛选列表。" +--- + +# 强化学习项目论文(待筛选) + +占位页,待补充内容。 diff --git a/app/docs/ai/reinforcement-learning/resources/index.mdx b/app/docs/ai/reinforcement-learning/resources/index.mdx new file mode 100644 index 0000000..3e555e6 --- /dev/null +++ b/app/docs/ai/reinforcement-learning/resources/index.mdx @@ -0,0 +1,8 @@ +--- +title: "推荐学习资料" +description: "强化学习资料汇总。" +--- + +# 推荐学习资料(强化学习) + +占位页,待补充内容。 diff --git a/app/docs/ai/reinforcement-learning/resources/zhaoshiyu-course/index.mdx b/app/docs/ai/reinforcement-learning/resources/zhaoshiyu-course/index.mdx new file mode 100644 index 0000000..07a3344 --- /dev/null +++ b/app/docs/ai/reinforcement-learning/resources/zhaoshiyu-course/index.mdx @@ -0,0 +1,8 @@ +--- +title: "西湖大学赵世钰强化学习课程" +description: "赵世钰强化学习课程相关资料。" +--- + +# 西湖大学赵世钰强化学习课程 + +占位页,待补充内容。 From 3fe7bbd3f6fa22e0c62fda47a0cdac3ef3c93460 Mon Sep 17 00:00:00 2001 From: Mira Date: Sun, 14 Sep 2025 00:30:00 +1000 Subject: [PATCH 2/2] add ai notes and resolve duplicate title issue --- .../ai/agents-todo/cs294-194-196/index.mdx | 10 +- app/docs/ai/agents-todo/index.mdx | 11 +- .../calculus-optimization/index.mdx | 44 +- app/docs/ai/ai-math-basics/index.mdx | 84 +- .../information-theory/index.mdx | 42 +- .../ai-math-basics/linear-algebra/index.mdx | 51 +- .../linear-algebra/resources/index.mdx | 15 +- .../numerical-analysis/index.mdx | 35 +- .../probability-statistics/index.mdx | 53 +- .../resources/index.mdx | 11 +- .../ai/compute-platforms/autodl/index.mdx | 8 - .../autodl/pycharm-connect-autodl/index.mdx | 8 - app/docs/ai/compute-platforms/index.mdx | 214 +- .../compute-platforms/internstudio/index.mdx | 8 - .../foundation-models/architectures/index.mdx | 8 - .../ai/foundation-models/datasets/index.mdx | 322 +- .../foundation-models/deploy-infer/index.mdx | 438 +- .../ai/foundation-models/evaluation/index.mdx | 290 +- .../ai/foundation-models/finetune/index.mdx | 343 +- .../foundation-models/finetune/lora/index.mdx | 8 - .../foundation-models/finetune/peft/index.mdx | 8 - app/docs/ai/foundation-models/index.mdx | 120 +- .../foundation-models/qkv-interview/index.mdx | 101 +- .../qkv-interview/why-q-not-cache/index.mdx | 8 - .../ai/foundation-models/resources/index.mdx | 8 - .../ai/foundation-models/training/index.mdx | 288 +- .../training/moe-todo/index.mdx | 8 - app/docs/ai/generative-todo/index.mdx | 11 +- app/docs/ai/index.mdx | 27 +- .../courses/cmu-advanced-nlp/index.mdx | 8 - .../ai/llm-basics/courses/cs224n/index.mdx | 8 - .../ai/llm-basics/courses/cs336/index.mdx | 8 - .../ai/llm-basics/courses/happy-llm/index.mdx | 8 - app/docs/ai/llm-basics/courses/index.mdx | 65 +- .../ai/llm-basics/courses/nanogpt/index.mdx | 8 - .../llm-basics/courses/notes-todo/index.mdx | 8 - app/docs/ai/llm-basics/cuda/index.mdx | 29 +- .../ai/llm-basics/deep-learning/d2l/index.mdx | 22 +- .../ai/llm-basics/deep-learning/index.mdx | 106 +- .../llm-basics/deep-learning/misc/index.mdx | 36 +- .../ai/llm-basics/deep-learning/nlp/index.mdx | 15 +- app/docs/ai/llm-basics/embeddings/index.mdx | 36 +- .../embeddings/qwen3-embedding/index.mdx | 23 +- app/docs/ai/llm-basics/index.mdx | 163 +- app/docs/ai/llm-basics/pytorch/index.mdx | 127 +- .../transformer/ai-by-hand/index.mdx | 26 +- app/docs/ai/llm-basics/transformer/index.mdx | 44 +- .../fast-reading-with-llm/index.mdx | 8 - .../find-research-direction-2-0/index.mdx | 8 - .../first-sci-submission/index.mdx | 8 - app/docs/ai/methodology/index.mdx | 213 +- .../ai/methodology/reproduce-papers/index.mdx | 8 - app/docs/ai/misc-tools/csdn-unlock/index.mdx | 8 - app/docs/ai/misc-tools/github/index.mdx | 8 - app/docs/ai/misc-tools/index.mdx | 118 +- .../paper-reading-software/index.mdx | 8 - app/docs/ai/misc-tools/perplexity/index.mdx | 8 - .../ai/misc-tools/perplexity/npm/index.mdx | 8 - app/docs/ai/misc-tools/zotero/index.mdx | 8 - .../hf-daily-papers/index.mdx | 8 - .../huggingface/index.mdx | 8 - .../imagenet/index.mdx | 8 - .../ai/model-datasets-platforms/index.mdx | 192 +- .../modelscope/index.mdx | 8 - .../swan-lab/index.mdx | 8 - app/docs/ai/multimodal/courses/index.mdx | 18 +- app/docs/ai/multimodal/index.mdx | 166 +- app/docs/ai/multimodal/llava/clip/index.mdx | 8 - app/docs/ai/multimodal/llava/index.mdx | 120 +- .../multimodal/llava/paper-reading/index.mdx | 8 - .../ai/multimodal/llava/repro-todo/index.mdx | 8 - .../ai/multimodal/llava/resources/index.mdx | 8 - app/docs/ai/multimodal/mllm/index.mdx | 10 +- .../multimodal/qwenvl/code-reading/index.mdx | 8 - .../qwenvl/finetune-repro/index.mdx | 8 - app/docs/ai/multimodal/qwenvl/index.mdx | 232 +- .../ai/multimodal/qwenvl/qwen2-5-vl/index.mdx | 8 - .../ai/multimodal/video-mm-todo/index.mdx | 11 +- app/docs/ai/multimodal/vit/index.mdx | 10 +- app/docs/ai/multimodal/vit/notes/index.mdx | 8 - .../vit/pruning-compression-papers/index.mdx | 8 - .../multimodal/vit/repro-attempts/index.mdx | 8 - .../competitions/index.mdx | 8 - app/docs/ai/recommender-systems/index.mdx | 171 +- .../ai/recommender-systems/notes/index.mdx | 8 - .../papers-toscreen/index.mdx | 8 - .../papers-toscreen/llm4rec/index.mdx | 8 - .../ai/recommender-systems/projects/index.mdx | 8 - .../projects/tianchi-news-todo/index.mdx | 8 - .../resources/datawhale-llm-recsys/index.mdx | 8 - .../recommender-systems/resources/index.mdx | 8 - .../resources/industry-practice/index.mdx | 8 - .../resources/wangshusen/index.mdx | 8 - .../roadmap-wip/business/index.mdx | 8 - .../recommender-systems/roadmap-wip/index.mdx | 8 - .../roadmap-wip/models/index.mdx | 8 - .../ai/reinforcement-learning/cot/index.mdx | 8 - .../cot/latent-cot/index.mdx | 8 - .../reinforcement-learning/cot/mcot/index.mdx | 8 - .../deepseek-r1-todo/index.mdx | 8 - .../grpo-repro/index.mdx | 8 - app/docs/ai/reinforcement-learning/index.mdx | 149 +- .../papers-toscreen/index.mdx | 8 - .../resources/index.mdx | 8 - .../resources/zhaoshiyu-course/index.mdx | 8 - package-lock.json | 10812 ++++++++++++++++ public/images/word/word-img-01.png | Bin 0 -> 121753 bytes public/images/word/word-img-02.png | Bin 0 -> 135450 bytes public/images/word/word-img-03.png | Bin 0 -> 141878 bytes public/images/word/word-img-04.png | Bin 0 -> 32446 bytes public/images/word/word-img-05.png | Bin 0 -> 45046 bytes 111 files changed, 15246 insertions(+), 666 deletions(-) delete mode 100644 app/docs/ai/compute-platforms/autodl/index.mdx delete mode 100644 app/docs/ai/compute-platforms/autodl/pycharm-connect-autodl/index.mdx delete mode 100644 app/docs/ai/compute-platforms/internstudio/index.mdx delete mode 100644 app/docs/ai/foundation-models/architectures/index.mdx delete mode 100644 app/docs/ai/foundation-models/finetune/lora/index.mdx delete mode 100644 app/docs/ai/foundation-models/finetune/peft/index.mdx delete mode 100644 app/docs/ai/foundation-models/qkv-interview/why-q-not-cache/index.mdx delete mode 100644 app/docs/ai/foundation-models/resources/index.mdx delete mode 100644 app/docs/ai/foundation-models/training/moe-todo/index.mdx delete mode 100644 app/docs/ai/llm-basics/courses/cmu-advanced-nlp/index.mdx delete mode 100644 app/docs/ai/llm-basics/courses/cs224n/index.mdx delete mode 100644 app/docs/ai/llm-basics/courses/cs336/index.mdx delete mode 100644 app/docs/ai/llm-basics/courses/happy-llm/index.mdx delete mode 100644 app/docs/ai/llm-basics/courses/nanogpt/index.mdx delete mode 100644 app/docs/ai/llm-basics/courses/notes-todo/index.mdx delete mode 100644 app/docs/ai/methodology/fast-reading-with-llm/index.mdx delete mode 100644 app/docs/ai/methodology/find-research-direction-2-0/index.mdx delete mode 100644 app/docs/ai/methodology/first-sci-submission/index.mdx delete mode 100644 app/docs/ai/methodology/reproduce-papers/index.mdx delete mode 100644 app/docs/ai/misc-tools/csdn-unlock/index.mdx delete mode 100644 app/docs/ai/misc-tools/github/index.mdx delete mode 100644 app/docs/ai/misc-tools/paper-reading-software/index.mdx delete mode 100644 app/docs/ai/misc-tools/perplexity/index.mdx delete mode 100644 app/docs/ai/misc-tools/perplexity/npm/index.mdx delete mode 100644 app/docs/ai/misc-tools/zotero/index.mdx delete mode 100644 app/docs/ai/model-datasets-platforms/hf-daily-papers/index.mdx delete mode 100644 app/docs/ai/model-datasets-platforms/huggingface/index.mdx delete mode 100644 app/docs/ai/model-datasets-platforms/imagenet/index.mdx delete mode 100644 app/docs/ai/model-datasets-platforms/modelscope/index.mdx delete mode 100644 app/docs/ai/model-datasets-platforms/swan-lab/index.mdx delete mode 100644 app/docs/ai/multimodal/llava/clip/index.mdx delete mode 100644 app/docs/ai/multimodal/llava/paper-reading/index.mdx delete mode 100644 app/docs/ai/multimodal/llava/repro-todo/index.mdx delete mode 100644 app/docs/ai/multimodal/llava/resources/index.mdx delete mode 100644 app/docs/ai/multimodal/qwenvl/code-reading/index.mdx delete mode 100644 app/docs/ai/multimodal/qwenvl/finetune-repro/index.mdx delete mode 100644 app/docs/ai/multimodal/qwenvl/qwen2-5-vl/index.mdx delete mode 100644 app/docs/ai/multimodal/vit/notes/index.mdx delete mode 100644 app/docs/ai/multimodal/vit/pruning-compression-papers/index.mdx delete mode 100644 app/docs/ai/multimodal/vit/repro-attempts/index.mdx delete mode 100644 app/docs/ai/recommender-systems/competitions/index.mdx delete mode 100644 app/docs/ai/recommender-systems/notes/index.mdx delete mode 100644 app/docs/ai/recommender-systems/papers-toscreen/index.mdx delete mode 100644 app/docs/ai/recommender-systems/papers-toscreen/llm4rec/index.mdx delete mode 100644 app/docs/ai/recommender-systems/projects/index.mdx delete mode 100644 app/docs/ai/recommender-systems/projects/tianchi-news-todo/index.mdx delete mode 100644 app/docs/ai/recommender-systems/resources/datawhale-llm-recsys/index.mdx delete mode 100644 app/docs/ai/recommender-systems/resources/index.mdx delete mode 100644 app/docs/ai/recommender-systems/resources/industry-practice/index.mdx delete mode 100644 app/docs/ai/recommender-systems/resources/wangshusen/index.mdx delete mode 100644 app/docs/ai/recommender-systems/roadmap-wip/business/index.mdx delete mode 100644 app/docs/ai/recommender-systems/roadmap-wip/index.mdx delete mode 100644 app/docs/ai/recommender-systems/roadmap-wip/models/index.mdx delete mode 100644 app/docs/ai/reinforcement-learning/cot/index.mdx delete mode 100644 app/docs/ai/reinforcement-learning/cot/latent-cot/index.mdx delete mode 100644 app/docs/ai/reinforcement-learning/cot/mcot/index.mdx delete mode 100644 app/docs/ai/reinforcement-learning/deepseek-r1-todo/index.mdx delete mode 100644 app/docs/ai/reinforcement-learning/grpo-repro/index.mdx delete mode 100644 app/docs/ai/reinforcement-learning/papers-toscreen/index.mdx delete mode 100644 app/docs/ai/reinforcement-learning/resources/index.mdx delete mode 100644 app/docs/ai/reinforcement-learning/resources/zhaoshiyu-course/index.mdx create mode 100644 package-lock.json create mode 100644 public/images/word/word-img-01.png create mode 100644 public/images/word/word-img-02.png create mode 100644 public/images/word/word-img-03.png create mode 100644 public/images/word/word-img-04.png create mode 100644 public/images/word/word-img-05.png diff --git a/app/docs/ai/agents-todo/cs294-194-196/index.mdx b/app/docs/ai/agents-todo/cs294-194-196/index.mdx index 42f717a..06bc796 100644 --- a/app/docs/ai/agents-todo/cs294-194-196/index.mdx +++ b/app/docs/ai/agents-todo/cs294-194-196/index.mdx @@ -1,8 +1,10 @@ ---- +--- title: "CS294/194-196 Large Language Model Agents" -description: "CS294/194-196 课程相关资料。" +description: "CS294/194-196 课程相关资料" --- -# CS294/194-196 Large Language Model Agents +## 课程信息 -占位页,待补充内容。 +- 官网: https://rdi.berkeley.edu/llm-agents/f24 +- 机构: UC Berkeley +- 特色: 系统性介绍 LLM 智能体的理论和实践 diff --git a/app/docs/ai/agents-todo/index.mdx b/app/docs/ai/agents-todo/index.mdx index 4001e62..bae9951 100644 --- a/app/docs/ai/agents-todo/index.mdx +++ b/app/docs/ai/agents-todo/index.mdx @@ -1,8 +1,7 @@ +--- +title: "Agent" +description: "大语言模型智能体:CS294/194-196课程、ReAct、FireAct等" +status: todo --- -title: "Agent-TODO" -description: "智能体(Agent)相关待办与资料。" ---- - -# Agent-TODO -占位页,待补充内容。 +本节聚合 LLM 智能体相关的课程与技术框架,后续补充。 diff --git a/app/docs/ai/ai-math-basics/calculus-optimization/index.mdx b/app/docs/ai/ai-math-basics/calculus-optimization/index.mdx index 00c4297..6972ec2 100644 --- a/app/docs/ai/ai-math-basics/calculus-optimization/index.mdx +++ b/app/docs/ai/ai-math-basics/calculus-optimization/index.mdx @@ -1,8 +1,44 @@ ---- +--- title: "微积分与优化 (Calculus & Optimization)" -description: "微积分与优化基础与资料。" +description: "微积分与优化核心概念及其在大模型中的应用" +date: "2024-01-12" +tags: + - calculus + - optimization + - derivative + - gradient + - chain-rule + - convex-optimization + - backpropagation + - sgd + - adam + - rmsprop --- -# 微积分与优化(Calculus & Optimization) +## 核心 + +- 导数 +- 偏导数 +- 梯度 +- 链式法则 +- 泰勒展开 +- 拉格朗日乘子法 +- 凸优化 + +## 大模型应用 + +### 反向传播 (Backpropagation) + +- 梯度计算和链式法则的完美体现。 + +### 模型训练 + +- 最小化损失函数(优化问题)的核心,各种优化器(SGD、Adam、RMSProp)都是梯度下降的变体。 + +### 激活函数 + +- 它们的导数特性对梯度传播至关重要。 + +### 模型收敛性分析 -占位页,待补充内容。 +- 涉及到微积分中的收敛性理论。 diff --git a/app/docs/ai/ai-math-basics/index.mdx b/app/docs/ai/ai-math-basics/index.mdx index 1dc5661..4edd551 100644 --- a/app/docs/ai/ai-math-basics/index.mdx +++ b/app/docs/ai/ai-math-basics/index.mdx @@ -1,8 +1,84 @@ ---- +--- title: "AI 数学基础" -description: "涵盖线性代数、概率统计、微积分与优化等。" +description: "AI相关数学基础知识:线性代数、概率统计、微积分优化、信息论、数值分析" +date: "2025-01-27" +tags: + - mathematics + - linear-algebra + - probability + - calculus + - information-theory --- -# AI 数学基础 +AI和大模型需要扎实的数学基础。本节涵盖了深度学习和大模型开发所需的核心数学概念。 + +## 核心数学领域 + +### 1. 线性代数 (Linear Algebra) + +**核心概念**: 向量、矩阵、张量、特征值/特征向量、SVD(奇异值分解)、PCA(主成分分析) + +**大模型应用**: + +- **Embedding (嵌入)**: 词向量、Token嵌入本质上就是高维向量 +- **Attention Mechanism (注意力机制)**: QKV矩阵乘法、Self-Attention的核心计算(点积) +- **Transformer架构**: 各种层(Linear Layer)、残差连接、Feed-Forward Network都涉及矩阵运算 +- **模型参数**: 整个模型的参数量可以用矩阵、张量来表示 +- **降维与可视化**: 对Embedding空间进行降维(t-SNE, UMAP, PCA)以进行分析 + +**参考资料**: + +- [沉浸式线性代数](https://textbooks.math.gatech.edu/ila/index2.html) +- [3Blue1Brown线性代数的本质](https://www.youtube.com/@3blue1brown) - 可视化极佳,能帮助建立直观理解 +- 《线性代数的几何意义》(任广千, 谢聪, 胡翠芳) + +### 2. 概率论与数理统计 (Probability & Statistics) + +**核心概念**: 随机变量、概率分布(高斯、伯努利、多项式)、期望、方差、协方差、条件概率、贝叶斯定理、最大似然估计(MLE)、最大后验估计(MAP) + +**大模型应用**: + +- **语言建模**: P(下一个词 | 上下文) 就是条件概率 +- **损失函数**: 交叉熵损失来源于信息论和概率分布的差异度量 +- **采样与生成**: Top-k, Top-p (nucleus) sampling都基于概率分布 +- **不确定性量化**: 对模型预测结果的置信度评估 +- **强化学习**: 基于概率策略的优化 + +### 3. 微积分与优化 (Calculus & Optimization) + +**核心概念**: 导数、偏导数、梯度、链式法则、泰勒展开、拉格朗日乘子法、凸优化 + +**大模型应用**: + +- **反向传播**: 梯度计算和链式法则的完美体现 +- **模型训练**: 最小化损失函数(优化问题)的核心,各种优化器(SGD、Adam、RMSProp)都是梯度下降的变体 +- **激活函数**: 它们的导数特性对梯度传播至关重要 +- **模型收敛性分析**: 涉及微积分中的收敛性理论 + +### 4. 信息论 (Information Theory) + +**核心概念**: 信息量、熵(Entropy)、联合熵、条件熵、互信息、交叉熵、KL散度 + +**大模型应用**: + +- **损失函数**: 交叉熵损失是衡量预测分布与真实分布之间差异的度量 +- **注意力机制**: 计算注意力权重时,softmax操作与概率分布和熵的关联 +- **强化学习**: 策略梯度的优化目标中可能包含熵正则项;TRPO/PPO算法的核心是KL散度约束 +- **模型压缩与量化**: 量化信息损失的评估 + +### 5. 数值分析 (Numerical Analysis) + +**核心概念**: 浮点数精度、数值稳定性、梯度裁剪、学习率调度 + +**大模型应用**: + +- **防止梯度爆炸/消失**: 大模型层数深,计算量大,数值稳定性问题尤为突出 +- **BFloat16/FP16训练**: 理解不同精度浮点数对模型训练的影响 +- **优化器选择**: 某些优化器在数值上更稳定 + +## 学习建议 -占位页,待补充内容。 +1. **理论与实践结合**: 不要只停留在公式推导,要理解这些数学概念在AI中的具体应用 +2. **可视化理解**: 利用3Blue1Brown等资源建立几何直观 +3. **代码实现**: 尝试用代码实现基本的数学运算,加深理解 +4. **循序渐进**: 从基础概念开始,逐步深入到高级应用 diff --git a/app/docs/ai/ai-math-basics/information-theory/index.mdx b/app/docs/ai/ai-math-basics/information-theory/index.mdx index e38a15a..f749261 100644 --- a/app/docs/ai/ai-math-basics/information-theory/index.mdx +++ b/app/docs/ai/ai-math-basics/information-theory/index.mdx @@ -1,8 +1,42 @@ ---- +--- title: "信息论 (Information Theory)" -description: "信息论基础与资料。" +description: "信息论核心概念及其在大模型中的应用" +date: "2024-01-13" +tags: + - information-theory + - entropy + - cross-entropy + - kl-divergence + - mutual-information + - rl + - model-compression --- -# 信息论(Information Theory) +## 核心 + +- 信息量 +- 熵(Entropy) +- 联合熵 +- 条件熵 +- 互信息 +- 交叉熵(Cross-Entropy) +- KL散度(Kullback-Leibler Divergence) + +## 大模型应用 + +### 损失函数 + +- 交叉熵损失是衡量预测分布与真实分布之间差异的度量。 + +### 注意力机制 + +- 计算注意力权重时,softmax 操作与概率分布和熵的关联。 + +### 强化学习 + +- 策略梯度的优化目标中可能包含熵正则项,以鼓励探索。 +- TRPO / PPO 算法的核心是 KL 散度约束。 + +### 模型压缩与量化 -占位页,待补充内容。 +- 量化信息损失的评估。 diff --git a/app/docs/ai/ai-math-basics/linear-algebra/index.mdx b/app/docs/ai/ai-math-basics/linear-algebra/index.mdx index 75c91c7..cb23b8f 100644 --- a/app/docs/ai/ai-math-basics/linear-algebra/index.mdx +++ b/app/docs/ai/ai-math-basics/linear-algebra/index.mdx @@ -1,8 +1,49 @@ +--- +title: "线性代数 (Linear Algebra)" +description: "线性代数核心概念及其在大模型中的应用" +date: "2024-01-10" +tags: + - linear-algebra + - matrix + - tensor + - embedding + - attention + - transformer + - pca + - svd --- -title: "线性代数" -description: "线性代数笔记与参考。" ---- -# 线性代数 +## 核心 + +- 向量 +- 矩阵 +- 张量 +- 特征值 / 特征向量 +- SVD(奇异值分解) +- PCA(主成分分析) + +## 大模型应用 + +### Embedding (嵌入) + +- 词向量、Token 嵌入本质上就是高维向量。 + +### Attention Mechanism (注意力机制) + +- QKV 矩阵乘法 +- Self-Attention 的核心计算(点积) + +### Transformer 架构 + +- 各种层(Linear Layer) +- 残差连接(Residual Connection) +- Feed-Forward Network + → 都涉及矩阵运算 + +### 模型参数 + +- 整个模型的参数量可以用矩阵、张量来表示。 + +### 降维与可视化 -占位页,待补充内容。 +- 对 Embedding 空间进行降维(t-SNE, UMAP, PCA)以进行分析。 diff --git a/app/docs/ai/ai-math-basics/linear-algebra/resources/index.mdx b/app/docs/ai/ai-math-basics/linear-algebra/resources/index.mdx index 4280d04..9915fe1 100644 --- a/app/docs/ai/ai-math-basics/linear-algebra/resources/index.mdx +++ b/app/docs/ai/ai-math-basics/linear-algebra/resources/index.mdx @@ -1,8 +1,15 @@ ---- +--- title: "参考资料" description: "线性代数参考资料。" +date: "2024-01-10" +tags: + - linear-algebra + - resources --- -# 参考资料(线性代数) - -占位页,待补充内容。 +- [沉浸式线性代数 (Immersive Linear Algebra)](https://textbooks.math.gatech.edu/ila/index2.html) +- 《线性代数的几何意义 (任广千, 谢聪, 胡翠芳)》 PDF +- [3Blue1Brown (YouTube频道)](https://www.3blue1brown.com/) + - 《线性代数的本质》系列视频 + - 《微积分的本质》系列视频 + → 可视化极佳,能帮助建立直观理解。 diff --git a/app/docs/ai/ai-math-basics/numerical-analysis/index.mdx b/app/docs/ai/ai-math-basics/numerical-analysis/index.mdx index 78d4bf6..75f2918 100644 --- a/app/docs/ai/ai-math-basics/numerical-analysis/index.mdx +++ b/app/docs/ai/ai-math-basics/numerical-analysis/index.mdx @@ -1,8 +1,35 @@ ---- +--- title: "数值分析 (Numerical Analysis)" -description: "数值分析基础与资料。" +description: "数值分析核心概念及其在大模型中的应用" +date: "2024-01-14" +tags: + - numerical-analysis + - floating-point + - stability + - gradient-clipping + - learning-rate + - bfloat16 + - fp16 + - optimizer --- -# 数值分析(Numerical Analysis) +## 核心 + +- 浮点数精度 +- 数值稳定性 +- 梯度裁剪(Gradient Clipping) +- 学习率调度 + +## 大模型应用 + +### 防止梯度爆炸 / 消失 + +- 大模型层数深,计算量大,数值稳定性问题尤为突出。 + +### BFloat16 / FP16 训练 + +- 理解不同精度浮点数对模型训练的影响。 + +### 优化器选择 -占位页,待补充内容。 +- 某些优化器在数值上更稳定。 diff --git a/app/docs/ai/ai-math-basics/probability-statistics/index.mdx b/app/docs/ai/ai-math-basics/probability-statistics/index.mdx index fc02a15..1b93d78 100644 --- a/app/docs/ai/ai-math-basics/probability-statistics/index.mdx +++ b/app/docs/ai/ai-math-basics/probability-statistics/index.mdx @@ -1,8 +1,53 @@ ---- +--- title: "概率论与数理统计 (Probability & Statistics)" -description: "概率与统计基础与资料。" +description: "概率论与数理统计核心概念及其在大模型中的应用" +date: "2024-01-11" +tags: + - probability + - statistics + - random-variable + - distribution + - bayes + - mle + - map + - hypothesis-testing + - confidence-interval + - cross-entropy + - rlhf --- -# 概率论与数理统计(Probability & Statistics) +## 核心 + +- 随机变量 +- 概率分布(高斯、伯努利、多项式) +- 期望 +- 方差 +- 协方差 +- 条件概率 +- 贝叶斯定理 +- 最大似然估计(MLE) +- 最大后验估计(MAP) +- 假设检验 +- 置信区间 + +## 大模型应用 + +### 语言建模 + +- P(下一个词 | 上下文) 就是条件概率。 + +### 损失函数 + +- 交叉熵损失(Cross-Entropy Loss)来源于信息论和概率分布的差异度量。 + +### 采样与生成 + +- Top-k, Top-p (nucleus) sampling 都基于概率分布。 + +### 不确定性量化 + +- 对模型预测结果的置信度评估。 + +### 强化学习 (RLHF) -占位页,待补充内容。 +- 基于概率策略的优化。 diff --git a/app/docs/ai/ai-math-basics/probability-statistics/resources/index.mdx b/app/docs/ai/ai-math-basics/probability-statistics/resources/index.mdx index 4aaedce..c9dcf2f 100644 --- a/app/docs/ai/ai-math-basics/probability-statistics/resources/index.mdx +++ b/app/docs/ai/ai-math-basics/probability-statistics/resources/index.mdx @@ -1,8 +1,11 @@ --- title: "参考资料" -description: "概率与统计参考资料。" +description: "概率论与数理统计参考资料。" +date: "2024-01-11" +tags: + - probability + - statistics + - resources --- -# 参考资料(概率与统计) - -占位页,待补充内容。 +- 方浩 diff --git a/app/docs/ai/compute-platforms/autodl/index.mdx b/app/docs/ai/compute-platforms/autodl/index.mdx deleted file mode 100644 index 1f6977d..0000000 --- a/app/docs/ai/compute-platforms/autodl/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "AutoDL" -description: "AutoDL 平台相关资料。" ---- - -# AutoDL - -占位页,待补充内容。 diff --git a/app/docs/ai/compute-platforms/autodl/pycharm-connect-autodl/index.mdx b/app/docs/ai/compute-platforms/autodl/pycharm-connect-autodl/index.mdx deleted file mode 100644 index cd054d8..0000000 --- a/app/docs/ai/compute-platforms/autodl/pycharm-connect-autodl/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "【保姆级图文详解】PyCharm专业版连接AutoDl详细教程" -description: "PyCharm 连接 AutoDL 教程。" ---- - -# 【保姆级图文详解】PyCharm专业版连接AutoDl详细教程 - -占位页,待补充内容。 diff --git a/app/docs/ai/compute-platforms/index.mdx b/app/docs/ai/compute-platforms/index.mdx index 3cde665..9099038 100644 --- a/app/docs/ai/compute-platforms/index.mdx +++ b/app/docs/ai/compute-platforms/index.mdx @@ -1,8 +1,214 @@ ---- +--- title: "算力平台" -description: "算力平台与使用指南。" +description: "AI开发算力平台:AutoDL、InternStudio等云服务使用指南" +date: "2025-01-27" +tags: + - compute-platforms + - autodl + - internstudio + - gpu-cloud + - development-environment --- -# 算力平台 +AI模型训练和推理需要强大的算力支持。本节介绍主流的算力平台和云服务,帮助开发者选择合适的计算资源。 + +## AutoDL + +### 平台特色 + +- **官网**: [https://www.autodl.com/home](https://www.autodl.com/home) +- **定位**: 专业的GPU云服务平台 +- **优势**: 价格实惠,操作简单,适合个人开发者和小团队 + +### 使用文档 + +- **完整文档**: [AutoDL官方文档](https://www.autodl.com/docs/) +- **涵盖内容**: + - 实例创建和管理 + - 环境配置 + - 数据上传下载 + - 费用计算 + +### 【保姆级图文详解】PyCharm专业版连接AutoDL详细教程 + +**配置步骤**: + +1. **创建AutoDL实例**: 选择合适的GPU配置 +2. **获取连接信息**: 记录IP地址、端口、用户名 +3. **配置PyCharm**: 设置远程解释器 +4. **文件同步**: 配置自动上传下载 +5. **调试运行**: 远程调试和代码执行 + +**网络配置**: + +- SSH连接配置 +- 端口映射设置 +- 文件传输优化 +- 网络稳定性保障 + +**开发工作流**: + +- 本地代码编写 +- 远程代码同步 +- GPU资源调度 +- 结果文件下载 + +## InternStudio + +### 平台介绍 + +- **官网**: [https://studio.intern-ai.org.cn/](https://studio.intern-ai.org.cn/user/account) +- **特色**: 上海AI实验室提供的免费算力平台 +- **适用**: 学习、研究、小型项目开发 + +### 连接与使用 + +**SSH连接配置**: + +- [SSH连接及端口映射教程](https://juejin.cn/post/7446234916049829939) +- 支持远程开发环境 +- 提供JupyterLab界面 + +**第四期训练营资源**: + +- **GitHub**: [Tutorial第四期](https://github.com/InternLM/Tutorial/tree/camp4) +- **Linux基础**: [InternStudio基础指令](https://aicarrier.feishu.cn/wiki/XZChwwDsciyFyHk5mGTc1EKinkc) + +### 开源社区项目申报 + +**算力申请**: + +- 🔥 [书生大模型开源社区项目申报](https://openxlab.org.cn/apps) 🔥 +- 适用于开源项目和学术研究 +- 提供长期稳定的算力支持 + +## 平台对比与选择 + +### AutoDL适用场景 + +**优势**: + +- 按时计费,成本可控 +- 丰富的预装环境 +- 良好的中文支持 +- 稳定的网络连接 + +**适合用户**: + +- 个人开发者 +- 初学者和学生 +- 短期项目需求 +- 预算有限的团队 + +### InternStudio适用场景 + +**优势**: + +- 免费使用额度 +- 学术友好 +- 与InternLM生态结合 +- 教育资源丰富 + +**适合用户**: + +- 学生和研究人员 +- InternLM模型使用者 +- 教学和培训 +- 开源项目开发 + +### 其他云平台选择 + +#### 国际平台 + +- **Google Colab**: 免费GPU,适合学习和轻量级开发 +- **AWS EC2**: 企业级服务,功能全面但成本较高 +- **Microsoft Azure**: 与Windows生态结合好 +- **Lambda Labs**: 专业GPU云服务 + +#### 国内平台 + +- **阿里云**: 企业级服务,生态完善 +- **腾讯云**: 游戏和社交场景优化 +- **百度云**: AI平台和PaddlePaddle生态 +- **华为云**: 昇腾AI处理器支持 + +## 使用技巧与最佳实践 + +### 成本优化 + +1. **按需使用**: 及时关闭不用的实例 +2. **预装环境**: 选择合适的预装镜像 +3. **数据管理**: 合理规划存储空间 +4. **监控告警**: 设置费用和资源告警 + +### 开发效率 + +1. **环境配置**: 使用Docker或conda管理环境 +2. **代码同步**: 配置Git或文件同步工具 +3. **调试方法**: 掌握远程调试技巧 +4. **资源监控**: 实时监控GPU、内存使用情况 + +### 数据安全 + +1. **定期备份**: 重要数据多地备份 +2. **版本控制**: 使用Git管理代码版本 +3. **访问控制**: 设置安全的SSH密钥 +4. **合规要求**: 遵守数据处理相关法规 + +## 环境配置指南 + +### 深度学习环境 + +**基础组件**: + +- CUDA/cuDNN +- Python 3.8+ +- PyTorch/TensorFlow +- Jupyter Notebook + +**常用库**: + +```bash +# PyTorch生态 +pip install torch torchvision transformers datasets + +# 科学计算 +pip install numpy pandas matplotlib seaborn + +# 机器学习 +pip install scikit-learn xgboost lightgbm + +# 深度学习辅助 +pip install wandb tensorboard +``` + +### 开发工具配置 + +- **IDE**: PyCharm Professional, VSCode +- **调试**: pdb, ipdb +- **性能分析**: nvidia-smi, htop +- **版本控制**: Git, DVC + +## 故障排除 + +### 常见问题 + +1. **连接超时**: 检查网络和防火墙设置 +2. **GPU不可用**: 验证CUDA安装和驱动版本 +3. **内存不足**: 优化批处理大小和模型参数 +4. **存储空间**: 清理临时文件和日志 + +### 性能优化 + +1. **GPU利用率**: 监控和优化GPU使用效率 +2. **I/O优化**: 优化数据读取和预处理 +3. **内存管理**: 合理设置缓存和批处理 +4. **并行计算**: 利用多GPU和分布式训练 + +## 学习建议 -占位页,待补充内容。 +1. **平台熟悉**: 深入了解至少一个主要平台 +2. **成本意识**: 学会合理控制和预算算力成本 +3. **环境管理**: 掌握环境配置和依赖管理 +4. **监控调优**: 学会监控资源使用和性能调优 +5. **安全实践**: 重视数据安全和访问控制 diff --git a/app/docs/ai/compute-platforms/internstudio/index.mdx b/app/docs/ai/compute-platforms/internstudio/index.mdx deleted file mode 100644 index dc0cd89..0000000 --- a/app/docs/ai/compute-platforms/internstudio/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "Internstudio" -description: "Internstudio 平台相关资料。" ---- - -# Internstudio - -占位页,待补充内容。 diff --git a/app/docs/ai/foundation-models/architectures/index.mdx b/app/docs/ai/foundation-models/architectures/index.mdx deleted file mode 100644 index 8d62eb7..0000000 --- a/app/docs/ai/foundation-models/architectures/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "模型结构" -description: "模型结构与架构。" ---- - -# 模型结构 - -占位页,待补充内容。 diff --git a/app/docs/ai/foundation-models/datasets/index.mdx b/app/docs/ai/foundation-models/datasets/index.mdx index 328dbc8..c4547a2 100644 --- a/app/docs/ai/foundation-models/datasets/index.mdx +++ b/app/docs/ai/foundation-models/datasets/index.mdx @@ -1,8 +1,322 @@ ---- +--- title: "数据集构建" -description: "大模型数据集构建与清洗。" +description: "大模型数据集构建:数据来源、处理流程、质量控制" +date: "2025-01-27" +tags: + - dataset-construction + - data-processing + - data-quality + - common-crawl + - data-cleaning --- -# 数据集构建 +数据是大模型的基础,高质量的数据集直接影响模型性能。本节详细介绍大模型数据集的构建方法和技术。 + +## 数据来源 + +### 网络数据 + +- **Common Crawl**: 大规模网页爬取数据 + - 覆盖全球数十亿网页 + - 多语言内容丰富 + - 定期更新数据快照 + +- **Wikipedia**: 高质量百科全书数据 + - 多语言版本 + - 结构化知识内容 + - 持续更新维护 + +### 专业数据 + +- **书籍语料**: 高质量文本数据 + - Project Gutenberg开源书籍 + - 学术出版物 + - 技术文档和手册 + +- **代码数据**: GitHub等代码仓库 + - 开源项目代码 + - 多种编程语言 + - 代码注释和文档 + +- **学术论文**: arXiv、PubMed等学术数据 + - 最新研究成果 + - 专业领域知识 + - 引用关系网络 + +## 数据处理流程 + +### 1. 数据清洗 + +**文本质量过滤**: + +- 去除低质量内容(乱码、重复文本) +- 语言检测和过滤 +- 格式标准化处理 +- 编码统一转换 + +**内容过滤**: + +- 去除广告和垃圾信息 +- 过滤有害和不当内容 +- 移除隐私敏感信息 +- 版权内容识别 + +### 2. 格式统一 + +**文本规范化**: + +- 统一编码格式(UTF-8) +- 标准化标点符号 +- 处理特殊字符 +- 段落和换行规范 + +**结构化处理**: + +- 提取正文内容 +- 去除HTML标签 +- 保留有意义的格式信息 +- 统一文档结构 + +### 3. 去重处理 + +**精确去重**: + +- MD5哈希匹配 +- 完全相同内容识别 +- 批量去重处理 + +**模糊去重**: + +- MinHash算法 +- 相似度阈值设置 +- 近似重复检测 +- SimHash指纹匹配 + +**跨文档去重**: + +- 段落级别去重 +- 句子级别去重 +- n-gram重叠检测 + +### 4. 质量过滤 + +**统计指标过滤**: + +- 文档长度限制 +- 词汇丰富度检查 +- 语言复杂度评估 +- 标点符号比例 + +**语言模型评分**: + +- 困惑度(Perplexity)评估 +- 语言模型打分 +- 可读性评估 +- 语法正确性检查 + +### 5. 隐私保护 + +**个人信息识别(PII)**: + +- 邮箱地址检测 +- 电话号码识别 +- 身份证号码过滤 +- 地址信息处理 + +**数据脱敏**: + +- 敏感信息替换 +- 匿名化处理 +- 差分隐私技术 +- 数据加密存储 + +## 数据质量控制 + +### 质量评估指标 + +**内容质量**: + +- 信息准确性 +- 逻辑连贯性 +- 语言流畅度 +- 知识深度 + +**多样性指标**: + +- 主题覆盖范围 +- 语言风格多样性 +- 来源多样性 +- 时间跨度覆盖 + +**平衡性考虑**: + +- 语言分布平衡 +- 领域知识平衡 +- 观点立场平衡 +- 文化背景多样性 + +### 质量保证流程 + +**自动化检查**: + +- 批量质量评估 +- 异常检测算法 +- 统计分析报告 +- 质量趋势监控 + +**人工审核**: + +- 随机抽样检查 +- 专家领域审核 +- 标注质量控制 +- 反馈循环机制 + +## 特殊数据处理 + +### 多语言数据 + +**语言检测**: + +- 自动语言识别 +- 多语言混合处理 +- 方言和变体识别 +- 代码切换处理 + +**跨语言对齐**: + +- 平行语料构建 +- 翻译质量评估 +- 文化适应性调整 + +### 多模态数据 + +**图文对齐**: + +- 图像-文本配对 +- 描述准确性验证 +- 视觉内容理解 +- 多模态一致性 + +**结构化数据**: + +- 表格数据处理 +- 知识图谱集成 +- 数据库内容提取 + +## 数据管道技术 + +### 分布式处理 + +**大数据框架**: + +- Apache Spark处理 +- Hadoop生态系统 +- 分布式存储(HDFS) +- 流式数据处理 + +**并行化策略**: + +- 数据分片处理 +- 任务调度优化 +- 资源动态分配 +- 故障恢复机制 + +### 数据版本管理 + +**版本控制**: + +- 数据集版本追踪 +- 变更记录管理 +- 回滚机制设计 +- 增量更新支持 + +**元数据管理**: + +- 数据源信息记录 +- 处理流程追踪 +- 质量指标监控 +- 使用统计分析 + +## 合规性考虑 + +### 法律法规 + +**数据合规**: + +- GDPR隐私保护 +- 版权法律要求 +- 地区法规遵循 +- 行业标准对接 + +**使用许可**: + +- 开源协议理解 +- 商业使用限制 +- 衍生作品规则 +- 归属声明要求 + +### 伦理考虑 + +**偏见和公平性**: + +- 数据偏见识别 +- 代表性问题分析 +- 公平性评估指标 +- 偏见缓解策略 + +**社会影响**: + +- 内容价值观审查 +- 文化敏感性考虑 +- 社会责任承担 +- 负面影响评估 + +## 最佳实践 + +### 数据管理 + +1. **建立清晰的数据标准** +2. **实施自动化质量检查** +3. **保持数据处理透明度** +4. **定期更新和维护数据集** +5. **建立完善的文档记录** + +### 工具推荐 + +**数据处理工具**: + +- pandas: Python数据处理 +- Apache Beam: 批处理和流处理 +- Dask: 并行计算框架 +- Ray: 分布式计算平台 + +**质量检查工具**: + +- Great Expectations: 数据质量框架 +- Apache Griffin: 数据质量监控 +- Deequ: 数据质量测试 + +## 未来发展趋势 + +1. **自动化程度提升**: 更智能的数据处理流程 +2. **实时数据集成**: 动态数据更新和集成 +3. **隐私保护技术**: 联邦学习和差分隐私 +4. **多模态融合**: 更复杂的多模态数据处理 +5. **个性化数据**: 针对特定任务的定制化数据集 + +## 学习建议 + +1. **理论基础**: 掌握数据科学和统计学基础 +2. **工程技能**: 熟练使用大数据处理工具 +3. **质量意识**: 培养对数据质量的敏感度 +4. **合规意识**: 了解相关法律法规要求 +5. **实践经验**: 参与实际的数据集构建项目 + +## 来自 UNSW IT-AI内卷地狱 文档摘录 -占位页,待补充内容。 +- https://huggingface.co/ +- AK https://hf.co/akhaliq +- https://www.modelscope.cn/home +- https://www.kaggle.com/datasets +- UCI 机器学习仓库:https://archive.ics.uci.edu/ml/index.php +- ImageNet diff --git a/app/docs/ai/foundation-models/deploy-infer/index.mdx b/app/docs/ai/foundation-models/deploy-infer/index.mdx index cb20962..c816b7e 100644 --- a/app/docs/ai/foundation-models/deploy-infer/index.mdx +++ b/app/docs/ai/foundation-models/deploy-infer/index.mdx @@ -1,8 +1,438 @@ ---- +--- title: "部署与推理" -description: "模型部署与推理。" +description: "大模型部署与推理优化:KV Cache、Flash Attention、量化技术、推理框架" +date: "2025-01-27" +tags: + - model-deployment + - inference-optimization + - kv-cache + - flash-attention + - quantization + - vllm --- -# 部署与推理 +大模型的部署与推理是将训练好的模型投入实际应用的关键环节,涉及推理优化、部署框架、服务架构等多个方面。 + +## 推理优化技术 + +### KV Cache + +**核心原理**: 缓存键值对,避免重复计算,加速生成过程。 + +**实现机制**: + +- 存储历史序列的Key和Value +- 新token只需计算当前Query +- 显著降低计算复杂度 +- 从O(n²·d)降低到O(n·d) + +**内存管理**: + +- 动态内存分配 +- 批处理优化 +- 内存碎片整理 +- OOM预防机制 + +### Flash Attention + +**技术特点**: 内存高效的注意力计算算法 + +**核心优化**: + +- 分块计算策略 +- 内存访问优化 +- IO复杂度降低 +- 数值稳定性保证 + +**性能提升**: + +- 内存使用减少 +- 计算速度提升 +- 支持更长序列 +- 硬件友好设计 + +### 量化技术 + +**量化方法**: + +- **INT8量化**: 8位整数表示 +- **INT4量化**: 4位整数表示 +- **混合精度**: 不同层使用不同精度 +- **动态量化**: 运行时量化 + +**量化策略**: + +- 权重量化 +- 激活量化 +- KV Cache量化 +- 梯度量化 + +**工具支持**: + +- PyTorch量化 +- TensorRT量化 +- ONNX量化 +- 自定义量化kernel + +### 并行推理 + +**模型并行**: + +- 张量并行: 层内参数分割 +- 流水线并行: 层间流水线 +- 专家并行: MoE模型专家分配 +- 混合并行: 多种并行组合 + +**数据并行**: + +- 批处理并行 +- 序列并行 +- 动态批处理 +- 连续批处理 + +## 部署框架 + +### vLLM + +**特色**: 高吞吐量推理引擎 + +- **PagedAttention**: 高效内存管理 +- **连续批处理**: 动态批处理优化 +- **流式输出**: 实时响应支持 +- **多GPU支持**: 大模型分布式推理 + +**核心技术**: + +- 内存池管理 +- 请求调度优化 +- KV Cache共享 +- 推理并发控制 + +### TensorRT-LLM + +**特色**: NVIDIA优化推理框架 + +- **深度优化**: 针对NVIDIA GPU优化 +- **算子融合**: 自动算子融合优化 +- **多精度**: 支持FP16/INT8/INT4 +- **插件生态**: 丰富的插件支持 + +**优化技术**: + +- Graph优化 +- 内存优化 +- Kernel融合 +- 动态shape支持 + +### Text Generation Inference (TGI) + +**特色**: HuggingFace推理服务 + +- **易用性**: 简单部署和使用 +- **模型支持**: 广泛的模型支持 +- **API标准**: 标准化API接口 +- **监控**: 内置监控和日志 + +**功能特性**: + +- 自动批处理 +- 流式响应 +- 安全过滤 +- 负载均衡 + +### FastChat + +**特色**: 聊天模型部署框架 + +- **多模型**: 支持多种聊天模型 +- **Web界面**: 友好的用户界面 +- **API服务**: RESTful API支持 +- **分布式**: 多节点部署支持 + +## 服务架构设计 + +### 推理服务架构 + +**组件设计**: + +- 模型加载器 +- 请求处理器 +- 批处理调度器 +- 响应生成器 +- 监控组件 + +**性能优化**: + +- 异步处理 +- 连接池管理 +- 缓存策略 +- 资源调度 + +### 负载均衡 + +**策略**: + +- 轮询调度 +- 最少连接 +- 加权分配 +- 健康检查 + +**实现**: + +- Nginx负载均衡 +- HAProxy配置 +- Kubernetes Service +- 自定义负载均衡器 + +### 扩缩容策略 + +**水平扩展**: + +- 实例数量调整 +- 动态扩缩容 +- 资源监控触发 +- 预热机制 + +**垂直扩展**: + +- 资源规格调整 +- GPU内存扩展 +- CPU核心增加 +- 存储容量扩展 + +## 内存优化 + +### 内存管理策略 + +**KV Cache优化**: + +- 分页存储 +- 内存共享 +- 垃圾回收 +- 碎片整理 + +**模型权重优化**: + +- 权重共享 +- 延迟加载 +- 内存映射 +- 压缩存储 + +### 内存监控 + +**监控指标**: + +- 内存使用率 +- OOM频率 +- 内存碎片率 +- GC时间统计 + +**告警机制**: + +- 阈值告警 +- 趋势预警 +- 自动处理 +- 故障转移 + +## 推理性能优化 + +### 延迟优化 + +**减少延迟策略**: + +- 模型预热 +- 批处理优化 +- 算子融合 +- 硬件加速 + +**首Token延迟(TTFT)**: + +- 预填充优化 +- 内存预分配 +- 模型预加载 +- 缓存预热 + +### 吞吐量优化 + +**提升吞吐量**: + +- 批处理大小调优 +- 并发请求处理 +- 流水线处理 +- 资源利用率提升 + +**连续批处理**: + +- 动态批次调整 +- 请求优先级管理 +- 延迟敏感度调节 +- 公平性保证 + +### 成本优化 + +**计算成本**: + +- GPU利用率最大化 +- 混合实例使用 +- 按需扩缩容 +- Spot实例利用 + +**存储成本**: + +- 模型压缩 +- 冷热数据分离 +- 缓存策略优化 +- 数据生命周期管理 + +## 质量保证 + +### 模型验证 + +**功能测试**: + +- 输出质量验证 +- 边界条件测试 +- 压力测试 +- 回归测试 + +**性能测试**: + +- 延迟基准测试 +- 吞吐量测试 +- 并发能力测试 +- 稳定性测试 + +### 监控体系 + +**核心指标**: + +- QPS (每秒查询数) +- 平均响应时间 +- P99延迟 +- 错误率 +- 资源使用率 + +**监控工具**: + +- Prometheus监控 +- Grafana可视化 +- 自定义监控 +- 告警系统 + +### A/B测试 + +**测试设计**: + +- 流量分割 +- 指标对比 +- 统计显著性 +- 效果评估 + +**实现方案**: + +- 灰度发布 +- 蓝绿部署 +- 金丝雀发布 +- 影子测试 + +## 安全与合规 + +### 安全防护 + +**输入验证**: + +- 内容过滤 +- 长度限制 +- 格式检查 +- 恶意输入检测 + +**输出控制**: + +- 内容审核 +- 敏感信息过滤 +- 版权保护 +- 有害内容拦截 + +### 隐私保护 + +**数据保护**: + +- 请求日志脱敏 +- 用户信息匿名化 +- 数据加密传输 +- 存储加密 + +**合规要求**: + +- GDPR合规 +- 数据本地化 +- 审计日志 +- 权限控制 + +## 故障处理 + +### 常见问题 + +**性能问题**: + +- 内存不足OOM +- GPU利用率低 +- 延迟突增 +- 吞吐量下降 + +**稳定性问题**: + +- 服务崩溃 +- 内存泄漏 +- 网络超时 +- 模型异常 + +### 恢复策略 + +**自动恢复**: + +- 健康检查 +- 自动重启 +- 故障转移 +- 服务降级 + +**监控告警**: + +- 实时监控 +- 预警机制 +- 自动处理 +- 人工介入 + +## 最佳实践 + +### 部署建议 + +1. **渐进式部署**: 从小规模开始逐步扩展 +2. **性能基准**: 建立性能基准和监控体系 +3. **资源规划**: 合理规划计算和存储资源 +4. **安全优先**: 重视安全和隐私保护 +5. **文档完整**: 维护完整的部署文档 + +### 运维策略 + +1. **自动化运维**: 尽可能自动化运维流程 +2. **监控告警**: 建立完善的监控告警体系 +3. **备份恢复**: 制定数据备份和恢复策略 +4. **版本管理**: 规范化版本发布流程 +5. **应急预案**: 制定详细的应急处理预案 + +## 未来发展趋势 + +1. **硬件协同**: 软硬件深度协同优化 +2. **边缘部署**: 边缘计算设备模型部署 +3. **联邦推理**: 分布式隐私保护推理 +4. **自适应优化**: 智能自适应推理优化 +5. **绿色计算**: 低功耗环保推理技术 + +## 学习建议 -占位页,待补充内容。 +1. **系统性学习**: 全面了解推理优化技术栈 +2. **动手实践**: 亲自部署和优化推理服务 +3. **性能调优**: 深入学习性能调优技巧 +4. **工具熟练**: 熟练使用主流推理框架 +5. **持续关注**: 跟踪最新的优化技术发展 diff --git a/app/docs/ai/foundation-models/evaluation/index.mdx b/app/docs/ai/foundation-models/evaluation/index.mdx index c88562c..8b72b1c 100644 --- a/app/docs/ai/foundation-models/evaluation/index.mdx +++ b/app/docs/ai/foundation-models/evaluation/index.mdx @@ -1,8 +1,290 @@ ---- +--- title: "模型评测" -description: "评测方法与基准。" +description: "大模型评测体系:BenchMark、评测指标、中英文评测基准" +date: "2025-01-27" +tags: + - model-evaluation + - benchmark + - mmlu + - c-eval + - evaluation-metrics --- -# 模型评测 +模型评测是衡量大模型性能和能力的重要手段,为模型改进和应用选择提供科学依据。 + +## BenchMark评测体系 + +### 通用能力评测 + +#### MMLU (Massive Multitask Language Understanding) + +- **评测范围**: 多任务语言理解 +- **题目数量**: 15,908道选择题 +- **学科领域**: 57个学科,从数学到历史 +- **难度等级**: 从高中到专业水平 +- **评测指标**: 准确率 + +#### HellaSwag + +- **评测目标**: 常识推理能力 +- **任务类型**: 句子完成任务 +- **数据来源**: 真实场景描述 +- **评测指标**: 准确率 + +#### ARC (AI2 Reasoning Challenge) + +- **评测重点**: 科学推理能力 +- **题目类型**: 小学科学选择题 +- **难度分级**: Easy和Challenge两个级别 +- **特色**: 需要多步推理 + +#### GSM8K + +- **评测范围**: 数学问题求解 +- **题目类型**: 小学数学应用题 +- **答案形式**: 数值答案 +- **评测重点**: 数学推理链 + +### 中文评测基准 + +#### C-Eval + +- **评测目标**: 中文综合评测 +- **题目数量**: 13,948道题目 +- **学科覆盖**: 52个学科领域 +- **难度范围**: 从中学到专业水平 +- **特色**: 中国教育体系对齐 + +#### CMMLU (Chinese Massive Multitask Language Understanding) + +- **评测范围**: 中文多任务评测 +- **题目来源**: 中国考试和教材 +- **学科分类**: 人文、社科、理工、医学等 +- **评测指标**: 多维度评估 + +#### AGIEval + +- **评测特色**: 人类考试评测 +- **数据来源**: 真实考试题目 +- **考试类型**: 高考、公务员考试、法考等 +- **评测价值**: 与人类能力直接对比 + +### 专业领域评测 + +#### HumanEval + +- **评测目标**: 代码生成能力 +- **任务类型**: 函数实现 +- **编程语言**: 主要是Python +- **评测方法**: 单元测试通过率 + +#### MATH + +- **评测范围**: 数学竞赛题目 +- **难度等级**: 高中数学竞赛水平 +- **题目类型**: 证明题、计算题 +- **评测方法**: 答案正确性 + +#### BBH (Big-Bench Hard) + +- **评测特色**: 大语言模型挑战 +- **任务来源**: Big-Bench困难子集 +- **评测重点**: 推理和理解能力 +- **题目特点**: 对大模型具有挑战性 + +## 评测方法论 + +### 评测设计原则 + +1. **全面性**: 覆盖模型的多种能力 +2. **客观性**: 避免主观偏见和偏好 +3. **可重复性**: 结果可重现和验证 +4. **公平性**: 对不同模型公平比较 +5. **实用性**: 与实际应用场景相关 + +### 评测维度 + +#### 知识能力 + +- **事实性知识**: 基础知识掌握 +- **概念理解**: 抽象概念理解 +- **知识推理**: 基于知识的推理 +- **知识更新**: 最新知识掌握 + +#### 推理能力 + +- **逻辑推理**: 演绎和归纳推理 +- **数学推理**: 数值计算和证明 +- **常识推理**: 日常生活常识 +- **因果推理**: 因果关系理解 + +#### 语言能力 + +- **语言理解**: 文本理解和解析 +- **语言生成**: 流畅和准确的生成 +- **多语言**: 跨语言能力 +- **语言风格**: 不同风格适应 + +#### 安全性评测 + +- **有害内容**: 避免生成有害内容 +- **偏见检测**: 社会偏见识别 +- **隐私保护**: 隐私信息处理 +- **对抗鲁棒性**: 对抗攻击抵抗 + +## 评测实施 + +### 评测流程 + +1. **基准选择**: 根据评测目标选择合适基准 +2. **环境准备**: 配置评测环境和依赖 +3. **模型准备**: 加载和配置待评测模型 +4. **执行评测**: 运行评测脚本和程序 +5. **结果分析**: 统计和分析评测结果 + +### 评测框架 + +#### OpenCompass + +- **特色**: 开源评测框架 +- **支持**: 多种模型和基准 +- **功能**: 自动化评测流程 +- **可视化**: 结果展示和对比 + +#### lm-evaluation-harness + +- **来源**: EleutherAI开源 +- **特色**: 标准化评测接口 +- **支持**: 广泛的评测任务 +- **易用**: 简单的命令行接口 + +#### FlagEval + +- **来源**: 智源研究院 +- **特色**: 中文评测友好 +- **覆盖**: 全面的评测维度 +- **标准**: 科学的评测标准 + +### 评测环境 + +#### 硬件要求 + +- **GPU**: 根据模型大小选择 +- **内存**: 充足的系统内存 +- **存储**: 快速的SSD存储 +- **网络**: 稳定的网络连接 + +#### 软件环境 + +- **Python**: 主要编程语言 +- **PyTorch/TensorFlow**: 深度学习框架 +- **transformers**: 模型加载库 +- **评测工具**: 特定评测框架 + +## 结果分析 + +### 性能指标 + +#### 准确率指标 + +- **Accuracy**: 总体准确率 +- **Top-k准确率**: 前k个预测中的准确率 +- **F1分数**: 精确率和召回率的调和平均 +- **BLEU/ROUGE**: 文本生成质量 + +#### 效率指标 + +- **推理速度**: Token生成速度 +- **内存使用**: 推理时内存占用 +- **能耗指标**: 推理能耗统计 +- **成本效益**: 性能成本比 + +### 对比分析 + +#### 模型对比 + +- **同规模模型**: 相同参数量模型对比 +- **不同架构**: 不同架构模型对比 +- **发展趋势**: 模型能力发展趋势 +- **优劣分析**: 各模型优缺点分析 + +#### 能力分析 + +- **强项识别**: 模型擅长的任务领域 +- **弱项分析**: 模型不足的方面 +- **改进方向**: 模型优化建议 +- **应用建议**: 适用场景推荐 + +### 可视化展示 + +#### 雷达图 + +- 多维能力展示 +- 不同模型对比 +- 直观的能力分布 +- 平衡性分析 + +#### 热力图 + +- 细粒度性能展示 +- 任务维度分析 +- 性能差异可视化 +- 模式识别 + +## 评测挑战 + +### 技术挑战 + +1. **评测成本**: 大模型评测资源消耗大 +2. **基准局限**: 现有基准可能不够全面 +3. **作弊检测**: 防止模型在基准上作弊 +4. **动态更新**: 基准需要持续更新 + +### 方法学挑战 + +1. **评测偏见**: 评测基准可能存在偏见 +2. **文化差异**: 跨文化评测的公平性 +3. **能力定义**: 如何科学定义和测量能力 +4. **生态效应**: 评测对模型发展的影响 + +## 未来发展 + +### 评测创新 + +1. **动态评测**: 实时更新的评测基准 +2. **交互评测**: 多轮交互的评测模式 +3. **人机协作**: 人类专家参与的评测 +4. **自动化**: 更智能的自动评测系统 + +### 评测标准 + +1. **国际标准**: 建立国际认可的评测标准 +2. **行业规范**: 制定行业评测规范 +3. **认证体系**: 建立模型能力认证 +4. **监管配合**: 与监管要求相结合 + +## 最佳实践 + +### 评测策略 + +1. **多维评测**: 从多个维度全面评估 +2. **基准组合**: 使用多个基准交叉验证 +3. **定期评测**: 建立定期评测机制 +4. **结果校验**: 多次评测确保可靠性 +5. **透明公开**: 公开评测方法和结果 + +### 结果应用 + +1. **模型改进**: 基于评测结果改进模型 +2. **应用指导**: 指导模型应用场景选择 +3. **能力匹配**: 任务与模型能力匹配 +4. **风险评估**: 识别模型应用风险 +5. **持续监控**: 持续监控模型性能 + +## 学习建议 -占位页,待补充内容。 +1. **理解基准**: 深入理解各种评测基准 +2. **实践评测**: 亲自进行模型评测实验 +3. **分析结果**: 学会科学分析评测结果 +4. **关注发展**: 跟踪评测方法的最新发展 +5. **批判思维**: 对评测结果保持批判性思考 diff --git a/app/docs/ai/foundation-models/finetune/index.mdx b/app/docs/ai/foundation-models/finetune/index.mdx index 9c1f5f8..c4f5ca1 100644 --- a/app/docs/ai/foundation-models/finetune/index.mdx +++ b/app/docs/ai/foundation-models/finetune/index.mdx @@ -1,8 +1,343 @@ ---- +--- title: "模型微调" -description: "模型微调策略与实践。" +description: "大模型微调技术:LoRA、PEFT、微调框架等参数高效微调方法" +date: "2025-01-27" +tags: + - fine-tuning + - lora + - peft + - parameter-efficient + - unsloth --- -# 模型微调 +模型微调是将预训练大模型适应特定任务的关键技术。本节介绍各种高效微调方法和实践技巧。 + +## 微调概述 + +### 微调类型 + +1. **全参数微调**: 更新所有模型参数 +2. **参数高效微调(PEFT)**: 只训练少量参数 +3. **指令微调**: 基于指令数据的微调 +4. **对齐微调**: 人类偏好对齐微调 + +### 微调挑战 + +- **计算资源**: 大模型全参数微调成本高 +- **灾难性遗忘**: 微调可能损害原有能力 +- **数据质量**: 高质量任务数据获取困难 +- **超参数敏感**: 微调超参数选择关键 + +## 参数高效微调 (PEFT) + +### 核心思想 + +通过训练少量参数实现与全参数微调相当的效果,大幅降低计算和存储成本。 + +### 主要方法 + +#### LoRA (Low-Rank Adaptation) + +**原理**: 将权重更新分解为低秩矩阵的乘积 + +``` +W_new = W_original + ΔW = W_original + BA +``` + +其中B和A是可训练的低秩矩阵。 + +**优势**: + +- 大幅减少可训练参数量 +- 保持预训练权重不变 +- 支持多任务LoRA合并 +- 推理时可合并回原权重 + +#### AdaLoRA (Adaptive LoRA) + +**改进**: 自适应调整不同层的秩大小 + +- 根据重要性分配参数预算 +- 动态裁剪不重要的参数 +- 进一步提升参数效率 + +#### Prefix Tuning + +**原理**: 在输入序列前添加可训练的前缀token + +- 只训练前缀部分的参数 +- 保持模型主体不变 +- 适用于生成任务 + +#### P-Tuning v2 + +**改进**: Prefix Tuning的深度版本 + +- 在每一层都添加可训练参数 +- 更好的任务适应能力 +- 适用于理解和生成任务 + +#### BitFit + +**原理**: 仅调优偏置参数 + +- 极少的参数量(小于0.1%) +- 适用于小规模任务微调 +- 计算成本极低 + +### 方法对比 + +| 方法 | 参数量 | 适用场景 | 优势 | 劣势 | +| ------------- | -------- | -------- | -------------- | -------------- | +| LoRA | 0.1-1% | 通用任务 | 效果好,易实现 | 需要选择秩大小 | +| Prefix Tuning | 0.1-3% | 生成任务 | 效果稳定 | 序列长度限制 | +| P-Tuning v2 | 0.1-5% | 理解任务 | 适应性强 | 参数略多 | +| BitFit | 小于0.1% | 简单任务 | 极少参数 | 表达能力有限 | + +## 微调框架与工具 + +### 推荐框架 + +#### LLaMA-Factory + +- **特色**: 全面的微调工具箱 +- **支持**: 多种模型和微调方法 +- **易用性**: Web界面和配置化 +- **文档**: 详细的使用教程 + +#### Hugging Face TRL + +- **特色**: 官方推荐框架 +- **支持**: RL微调、SFT、DPO +- **生态**: 与transformers深度集成 +- **更新**: 持续更新最新技术 + +#### Swift框架 + +- **来源**: 阿里巴巴开源 +- **特色**: 中文友好,支持多模态 +- **性能**: 针对国产硬件优化 +- **社区**: 活跃的中文社区 + +#### X-Tuner框架 + +- **来源**: MMDetection团队 +- **特色**: 轻量级,易扩展 +- **性能**: 内存优化出色 +- **集成**: 与MMX系列工具集成 + +### Unsloth - 高效微调框架 + +- **项目**: [GitHub链接](https://github.com/unslothai/unsloth) +- **特色**: 速度提升显著(2-5x) +- **优化**: 内存使用减少80% +- **支持**: 主流模型和方法 +- **易用**: 简单的API接口 + +## 微调实践要点 + +### 学习重点 + +**深入理解底层原理**: + +- 不能只会跑脚本,必须学会底层实现 +- 理解KV Cache机制和内存管理 +- 掌握Causal Mask的作用和实现 +- 了解梯度计算和反向传播 + +### 数据准备 + +**数据格式**: + +- 指令-回答对格式 +- 对话格式数据 +- 任务特定格式 +- 多轮对话处理 + +**数据质量**: + +- 数据清洗和去重 +- 质量评估和筛选 +- 数据平衡和增强 +- 领域数据收集 + +### 超参数调优 + +**关键参数**: + +- 学习率: 通常比预训练更小 +- LoRA秩(r): 平衡性能和效率 +- LoRA alpha: 控制适应强度 +- 批次大小: 根据硬件调整 + +**训练策略**: + +- 渐进式学习率调度 +- 早停策略避免过拟合 +- 梯度累积模拟大批次 +- 定期评估和保存 + +## 多任务微调 + +### 任务路由 + +**方法**: + +- 任务特定的LoRA模块 +- 专家混合(MoE)架构 +- 条件生成控制 +- 多头输出设计 + +### 模块化设计 + +**LoRA组合**: + +- 任务特定LoRA +- 领域通用LoRA +- 能力增强LoRA +- 动态组合策略 + +## 高级微调技术 + +### 指令微调 (Instruction Tuning) + +**数据构建**: + +- 多样化指令模板 +- 任务描述变体 +- 少样本示例 +- 负样本构造 + +**训练策略**: + +- 多任务混合训练 +- 课程学习策略 +- 对比学习增强 +- 元学习方法 + +### 强化学习微调 (RLHF) + +**流程**: + +1. 监督微调(SFT) +2. 奖励模型训练 +3. 强化学习优化 +4. 迭代改进 + +**关键技术**: + +- PPO算法优化 +- 奖励模型设计 +- 价值函数估计 +- 策略梯度计算 + +### 对齐微调 + +**方法**: + +- Constitutional AI +- DPO (Direct Preference Optimization) +- 人类反馈学习 +- 价值观对齐 + +## 评估与分析 + +### 评估指标 + +**任务性能**: + +- 准确率、F1分数 +- BLEU、ROUGE分数 +- 人工评估质量 +- 任务特定指标 + +**模型能力**: + +- 原有能力保持 +- 新任务适应能力 +- 泛化性能测试 +- 鲁棒性分析 + +### 分析工具 + +**可视化**: + +- 损失曲线分析 +- 注意力权重可视化 +- 参数变化追踪 +- 性能对比图表 + +**诊断**: + +- 过拟合检测 +- 灾难性遗忘分析 +- 参数重要性分析 +- 激活模式分析 + +## 部署与推理 + +### 模型合并 + +**LoRA合并**: + +```python +# 将LoRA权重合并回基础模型 +merged_model = base_model + lora_model.merge() +``` + +**多LoRA切换**: + +- 动态加载不同LoRA +- 任务特定路由 +- 内存高效切换 +- 批处理优化 + +### 推理优化 + +**内存优化**: + +- 量化技术应用 +- 梯度检查点 +- 动态批处理 +- KV Cache优化 + +**速度优化**: + +- 模型并行推理 +- 批处理优化 +- 硬件加速 +- 编译优化 + +## 最佳实践 + +### 实验设计 + +1. **基线建立**: 从简单方法开始 +2. **消融实验**: 验证每个组件的作用 +3. **超参数搜索**: 系统性调优 +4. **多次实验**: 确保结果可重复 +5. **详细记录**: 记录所有实验细节 + +### 工程技巧 + +1. **渐进式训练**: 从小数据到大数据 +2. **检查点管理**: 定期保存和恢复 +3. **监控机制**: 实时监控训练状态 +4. **错误处理**: 优雅处理训练异常 +5. **资源管理**: 合理分配计算资源 + +## 未来发展趋势 + +1. **自动化微调**: 自动选择微调策略和超参数 +2. **多模态微调**: 跨模态任务的统一微调 +3. **个性化微调**: 用户个性化的模型适应 +4. **联邦微调**: 隐私保护的分布式微调 +5. **持续学习**: 不遗忘的持续适应学习 + +## 学习建议 -占位页,待补充内容。 +1. **理论基础**: 深入理解微调的数学原理 +2. **动手实践**: 从简单任务开始练习 +3. **代码阅读**: 阅读优秀框架的源码 +4. **实验对比**: 对比不同方法的效果 +5. **社区参与**: 活跃在开源社区和论坛 diff --git a/app/docs/ai/foundation-models/finetune/lora/index.mdx b/app/docs/ai/foundation-models/finetune/lora/index.mdx deleted file mode 100644 index c2f72e1..0000000 --- a/app/docs/ai/foundation-models/finetune/lora/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "LORA微调" -description: "LoRA 微调记录。" ---- - -# LORA 微调 - -占位页,待补充内容。 diff --git a/app/docs/ai/foundation-models/finetune/peft/index.mdx b/app/docs/ai/foundation-models/finetune/peft/index.mdx deleted file mode 100644 index 5e66877..0000000 --- a/app/docs/ai/foundation-models/finetune/peft/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "PEFT参数高效微调" -description: "PEFT 参数高效微调。" ---- - -# PEFT 参数高效微调 - -占位页,待补充内容。 diff --git a/app/docs/ai/foundation-models/index.mdx b/app/docs/ai/foundation-models/index.mdx index ddb3856..11cf9f7 100644 --- a/app/docs/ai/foundation-models/index.mdx +++ b/app/docs/ai/foundation-models/index.mdx @@ -1,8 +1,122 @@ --- title: "基座大模型" -description: "基础模型的数据、训练、微调、部署与评测。" +description: "基础模型的全生命周期:数据构建、训练、微调、部署与评测" +date: "2025-01-27" +tags: + - foundation-models + - llm-lifecycle + - model-development --- -# 基座大模型 +基座大模型是现代 AI 系统的核心,本节涵盖从数据构建到部署评测的完整技术栈与生命周期管理。 -占位页,待补充内容。 +## 核心组成部分 + +### 📊 数据集构建 + +- 前往: [数据集构建](./datasets/) +- 数据来源与获取策略 +- 数据清洗与质量控制 +- 隐私保护与合规处理 +- 多模态数据处理技术 + +### 🔧 模型训练 + +- 前往: [模型训练](./training/) +- 分布式训练技术 +- MoE 混合专家模型 +- 模型权重合并策略 +- 训练优化与稳定性 + +### 🎯 模型微调 + +- 前往: [模型微调](./finetune/) +- LoRA 低秩适应 +- PEFT 参数高效微调 +- 指令微调与对齐 +- 微调框架与工具 + +### 🚀 部署与推理 + +- 前往: [部署与推理](./deploy-infer/) +- KV Cache 优化 +- Flash Attention 加速 +- 量化与并行推理 +- 推理框架对比 + +### 📈 模型评测 + +- 前往: [模型评测](./evaluation/) +- Benchmark 评测体系 +- 中英文评测基准 +- 评测方法与指标 +- 结果分析与应用 + +### 🏗️ 模型结构 + +- 前往: [模型结构](./architectures/) +- Decoder-only 架构 +- 注意力机制设计 +- 位置编码方案 +- 架构演进趋势 + +### 💡 QKV 面试问题 + +- 前往: [QKV 面试问题](./qkv-interview/) +- KV Cache 工作原理 +- 注意力机制细节 +- 经典面试题解析 +- 技术要点深度剖析 + +## 学习路径 + +### 初学者路线 + +1. 理论基础:Transformer 架构与注意力机制 +2. 数据处理:了解数据集构建流程 +3. 微调实践:掌握 LoRA 等参数高效微调 +4. 评测理解:熟悉主流基准与指标 + +### 进阶开发 + +1. 训练优化:分布式训练与 MoE +2. 推理加速:KV Cache、Flash Attention 等 +3. 部署工程:vLLM、TensorRT 等推理框架 +4. 性能调优:系统级性能分析与优化 + +### 架构设计 + +1. 架构取舍:不同架构优缺点与场景 +2. 系统集成:端到端应用系统设计 +3. 成本优化:平衡性能、成本与资源 +4. 技术选型:面向场景的技术方案 + +## 重要概念 + +### Decoder-only 架构优势 + +- 注意力满足:因果注意力适配生成任务 +- 生成适配:天然适合自回归语言建模 +- 统一框架:多任务统一为文本生成 + +### KV Cache 核心原理 + +- 重复利用:历史 KV 复用降低计算 +- 复杂度降低:O(n²) → O(n) +- 内存权衡:空间换时间 + +## 技术发展趋势 + +1. 模型效率:参数高效训练与推理优化 +2. 多模态融合:文本/图像/音频统一 +3. 长序列处理:更长上下文支持 +4. 边缘部署:面向边缘设备的压缩 +5. 绿色 AI:降低能耗的计算技术 + +## 参考资料 + +- 动手学大模型(知乎专栏) +- 《Attention is All You Need》 +- 《Language Models are Few-Shot Learners》 + +> 💡 学习建议:栈面宽且更新快,依据角色与目标选择路线;理论与实践并重,持续跟进前沿。 diff --git a/app/docs/ai/foundation-models/qkv-interview/index.mdx b/app/docs/ai/foundation-models/qkv-interview/index.mdx index 5763a6d..cef38d5 100644 --- a/app/docs/ai/foundation-models/qkv-interview/index.mdx +++ b/app/docs/ai/foundation-models/qkv-interview/index.mdx @@ -1,8 +1,105 @@ --- title: "经典面试QKV问题" -description: "经典面试 QKV 相关问题。" +description: "深入解析Transformer中QKV机制和KV Cache的经典面试问题" +date: "2025-01-27" +tags: + - interview-questions + - qkv + - kv-cache + - attention-mechanism + - transformer --- # 经典面试 QKV 问题 -占位页,待补充内容。 +Transformer中的QKV机制是大模型面试的热门话题。本节深入解析相关的经典面试问题。 + +## 核心面试问题 + +### 1. 在LLM推理时,为什么KV可以Cache? + +**核心原因**: 自回归生成的特性决定了KV可以重复使用。 + +**详细解析**: + +1. **减少重复计算**: 历史序列的Key和Value在每次生成时都需要重新计算,通过缓存避免重复计算 +2. **提升推理速度**: 生成新token时只需计算当前token的Query,与缓存的KV进行注意力计算 +3. **降低计算复杂度**: 从O(n²·d)降低到O(n·d),n是序列长度,d是向量维度 +4. **跨请求复用**: 相同前缀的多个请求可以共享KV Cache,提高系统整体吞吐量 + +### 2. 那为什么Q不可以Cache? + +**关键理解**: Q不需要Cache,而不是不能Cache。 + +**原因分析**: + +1. **依赖性差异**: 每个新生成token的输出只依赖于当前token的Q,Q在下次推理时不会被再次使用 +2. **计算效率考虑**: 缓存Q不会带来效率提升,每个Q都是基于前面序列生成的,具有时序依赖性 +3. **自回归特性**: 每个Token生成仅依赖于之前所有Token,Q的计算本身就是基于历史序列的 + +### 3. 为什么需要三个不同的矩阵WQ、WK、WV? + +**功能分离**: 将注意力机制分解为三个不同的功能: + +- **查询生成 (WQ)**: 生成"我要找什么" +- **键生成 (WK)**: 生成"我是什么" +- **值生成 (WV)**: 生成"我包含什么信息" + +**数学原理**: 不同的线性变换学习不同的表示空间,增加模型的表达能力和灵活性。 + +### 4. Multi-Head Attention的作用是什么? + +**核心思想**: 并行的专门化,不同的头学习不同类型的注意力模式。 + +**具体作用**: + +1. **信息子空间**: 每个头关注不同的特征子空间 +2. **注意力多样性**: 同时捕获多种注意力模式 +3. **位置信息**: 不同头可能关注不同的位置关系 +4. **语义层次**: 不同头关注不同层次的语义信息 + +### 5. KV Cache的内存使用量如何计算? + +**计算公式**: + +``` +KV Cache内存 = 2 × 序列长度 × 层数 × 隐藏维度 × 头数 × 精度字节数 +``` + +**优化策略**: + +- 量化: 使用INT8或INT4量化KV Cache +- 分页: PagedAttention的分页存储 +- 压缩: 动态压缩不活跃的Cache +- 共享: 多请求间的Cache共享 + +## 进阶技术问题 + +### Flash Attention优化原理 + +- **内存访问优化**: 分块计算注意力,减少HBM与SRAM间的数据传输 +- **算法改进**: IO复杂度从O(N²)降低到O(N²d²/M),支持更长的序列长度 + +### 不同精度对KV Cache的影响 + +| 精度 | 内存占用 | 计算速度 | 精度损失 | +| ---- | -------- | -------- | -------- | +| FP16 | 50% | 1.5-2x | 极小 | +| INT8 | 25% | 2-3x | 小 | +| INT4 | 12.5% | 3-4x | 中等 | + +## 面试准备建议 + +### 技术深度 + +1. **理解原理**: 深入理解注意力机制的数学原理 +2. **实现细节**: 了解KV Cache的具体实现 +3. **优化技术**: 掌握相关的优化技术 +4. **性能分析**: 能够分析内存和计算开销 + +### 表达技巧 + +1. **结构化回答**: 按照原理→实现→优化的顺序 +2. **举例说明**: 用具体例子解释抽象概念 +3. **数据支撑**: 用具体数据说明优化效果 +4. **对比分析**: 对比不同方案的优缺点 diff --git a/app/docs/ai/foundation-models/qkv-interview/why-q-not-cache/index.mdx b/app/docs/ai/foundation-models/qkv-interview/why-q-not-cache/index.mdx deleted file mode 100644 index dffe4b9..0000000 --- a/app/docs/ai/foundation-models/qkv-interview/why-q-not-cache/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "那为什么Q不可以Cache?" -description: "关于 Q 不可 Cache 的讨论。" ---- - -# 那为什么 Q 不可以 Cache? - -占位页,待补充内容。 diff --git a/app/docs/ai/foundation-models/resources/index.mdx b/app/docs/ai/foundation-models/resources/index.mdx deleted file mode 100644 index 65c8cff..0000000 --- a/app/docs/ai/foundation-models/resources/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "参考资料" -description: "基座大模型参考资料。" ---- - -# 参考资料(基座大模型) - -占位页,待补充内容。 diff --git a/app/docs/ai/foundation-models/training/index.mdx b/app/docs/ai/foundation-models/training/index.mdx index d0aba34..269d480 100644 --- a/app/docs/ai/foundation-models/training/index.mdx +++ b/app/docs/ai/foundation-models/training/index.mdx @@ -1,8 +1,288 @@ ---- +--- title: "模型训练" -description: "大模型训练相关笔记。" +description: "大模型训练技术:MoE、分布式训练、模型权重合并等" +date: "2025-01-27" +tags: + - model-training + - distributed-training + - moe + - model-merging + - training-optimization --- -# 模型训练 +大模型训练是一个复杂的工程问题,涉及分布式计算、内存优化、训练稳定性等多个方面。 + +## 训练基础 + +### 训练流程 + +1. **数据准备**: 分词、批处理、数据加载 +2. **模型初始化**: 权重初始化、架构配置 +3. **前向传播**: 计算损失函数 +4. **反向传播**: 梯度计算和更新 +5. **模型保存**: 检查点保存和恢复 + +### 关键技术 + +- **梯度累积**: 模拟大批次训练 +- **混合精度**: FP16/BF16训练加速 +- **梯度裁剪**: 防止梯度爆炸 +- **学习率调度**: 优化收敛过程 + +## 分布式训练 + +### 数据并行 + +- **原理**: 不同GPU处理不同数据批次 +- **实现**: PyTorch DDP, DeepSpeed +- **适用**: 模型较小但数据量大的场景 + +### 模型并行 + +- **张量并行**: 将模型层分割到不同GPU +- **流水线并行**: 将模型层按顺序分配 +- **专家并行**: MoE模型的专家分配 + +### 混合并行 + +- **3D并行**: 数据+张量+流水线并行 +- **Zero冗余优化**: 优化器状态分片 +- **激活重计算**: 用计算换内存 + +## MoE (Mixture of Experts) + +### 核心概念 + +**稀疏激活**: 每次只激活部分专家网络,实现计算效率和模型容量的平衡。 + +**路由机制**: 智能分配输入到合适的专家 + +- Top-k路由: 选择最相关的k个专家 +- 负载均衡: 确保专家使用的均衡性 +- 噪声注入: 提高路由的鲁棒性 + +**架构设计**: + +- 专家网络结构 +- 门控网络设计 +- 残差连接策略 + +### 技术挑战 + +1. **负载均衡**: 防止专家利用不均 +2. **通信开销**: 跨设备专家调用 +3. **训练稳定性**: 路由学习收敛 +4. **推理优化**: 稀疏模型推理加速 + +## 模型权重合并 + +📊 **权重合并技术表格**: 查看完整的权重合并方法对比 + +### 合并策略 + +**线性插值合并**: + +```python +merged_weight = alpha * weight_1 + (1 - alpha) * weight_2 +``` + +**SLERP (球面线性插值)**: + +- 适用于归一化权重 +- 保持权重向量的角度关系 +- 在embedding层特别有效 + +**Task Arithmetic**: + +- 基于任务向量的合并 +- 支持多任务能力组合 +- 可控的能力迁移 + +### 应用场景 + +- **多任务模型融合**: 组合不同任务的能力 +- **不同训练阶段整合**: 结合不同阶段的权重 +- **模型能力组合优化**: 平衡不同能力维度 + +## 训练优化技术 + +### 内存优化 + +**梯度检查点**: + +- 重计算激活值 +- 减少内存占用 +- 计算时间权衡 + +**零冗余优化器**: + +- ZeRO-1: 优化器状态分片 +- ZeRO-2: 添加梯度分片 +- ZeRO-3: 参数分片 + +**CPU卸载**: + +- 参数CPU存储 +- 动态加载到GPU +- 内存容量扩展 + +### 计算优化 + +**算子融合**: + +- LayerNorm融合 +- Attention算子优化 +- 自定义CUDA kernel + +**编译优化**: + +- TorchScript编译 +- TensorRT优化 +- ONNX转换 + +## 训练稳定性 + +### 数值稳定性 + +**损失缩放**: + +- 自动混合精度 +- 动态损失缩放 +- 梯度溢出检测 + +**权重初始化**: + +- Xavier/Kaiming初始化 +- 层次化初始化 +- 预训练权重加载 + +### 训练监控 + +**指标监控**: + +- 损失曲线跟踪 +- 梯度范数监控 +- 学习率变化 +- 内存使用情况 + +**异常检测**: + +- NaN/Inf检测 +- 梯度爆炸监控 +- 模型发散预警 + +## 大规模训练工程 + +### 硬件配置 + +**计算资源**: + +- GPU集群配置 +- 内存和带宽要求 +- 存储系统设计 +- 网络拓扑优化 + +**环境管理**: + +- Docker容器化 +- 环境一致性保证 +- 依赖管理 +- 版本控制 + +### 实验管理 + +**超参数搜索**: + +- 网格搜索 +- 贝叶斯优化 +- 早停策略 +- 资源预算管理 + +**实验追踪**: + +- MLflow实验记录 +- Weights & Biases监控 +- 实验结果对比 +- 可复现性保证 + +## 故障处理 + +### 常见问题 + +1. **内存不足**: 批次大小调整、梯度累积 +2. **收敛问题**: 学习率调整、架构优化 +3. **通信故障**: 网络配置、节点恢复 +4. **数据问题**: 数据验证、异常处理 + +### 恢复策略 + +**检查点机制**: + +- 定期保存模型状态 +- 优化器状态保存 +- 随机种子记录 +- 训练进度恢复 + +**容错设计**: + +- 节点故障检测 +- 自动任务重启 +- 弹性训练架构 +- 数据完整性校验 + +## 性能优化 + +### 系统层面 + +**I/O优化**: + +- 数据预加载 +- 多进程数据loading +- 内存映射文件 +- SSD存储优化 + +**通信优化**: + +- AllReduce算法优化 +- 通信拓扑设计 +- 带宽利用率提升 +- 延迟降低技术 + +### 算法层面 + +**训练策略**: + +- 渐进式训练 +- 课程学习 +- 对抗训练 +- 多阶段训练 + +**正则化技术**: + +- Dropout变体 +- 权重衰减 +- 标签平滑 +- 数据增强 + +## 最佳实践 + +1. **充分的实验设计**: 控制变量、可复现性 +2. **渐进式扩展**: 从小模型到大模型逐步验证 +3. **监控驱动**: 实时监控训练状态和资源使用 +4. **文档记录**: 详细记录实验配置和结果 +5. **团队协作**: 建立良好的实验分享机制 + +## 未来发展方向 + +1. **自动化训练**: 自动超参数调优、架构搜索 +2. **高效架构**: 更高效的模型架构设计 +3. **硬件协同**: 软硬件协同优化 +4. **绿色AI**: 降低训练能耗和碳排放 +5. **联邦学习**: 分布式协作训练范式 + +## 来自 UNSW IT-AI内卷地狱 文档摘录 -占位页,待补充内容。 +- Swan Lab - AI 模型训练跟踪与可视化工具 +- 文档: https://docs.swanlab.cn/guide_cloud/general/what-is-swanlab.html +- 官网: https://swanlab.cn +- GitHub: https://github.com/swanhubx/swanlab diff --git a/app/docs/ai/foundation-models/training/moe-todo/index.mdx b/app/docs/ai/foundation-models/training/moe-todo/index.mdx deleted file mode 100644 index 5229980..0000000 --- a/app/docs/ai/foundation-models/training/moe-todo/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "MoE TODO" -description: "MoE 相关待办记录。" ---- - -# MoE TODO - -占位页,待补充内容。 diff --git a/app/docs/ai/generative-todo/index.mdx b/app/docs/ai/generative-todo/index.mdx index 930bcff..a7356ca 100644 --- a/app/docs/ai/generative-todo/index.mdx +++ b/app/docs/ai/generative-todo/index.mdx @@ -1,8 +1,7 @@ +--- +title: "生成模型" +description: "生成模型:Diffusion 等生成技术" +status: todo --- -title: "生成模型-TODO" -description: "生成模型相关待办与资料。" ---- - -# 生成模型 TODO -占位页,待补充内容。 +本节聚合生成模型资料(Diffusion 等),后续补充。 diff --git a/app/docs/ai/index.mdx b/app/docs/ai/index.mdx index 596c1c0..465f03d 100644 --- a/app/docs/ai/index.mdx +++ b/app/docs/ai/index.mdx @@ -1,8 +1,29 @@ --- title: "AI 知识库" -description: "AI 相关笔记与资料的目录占位页。" +description: "UNSW IT-AI内卷地狱 - AI 学习资源全面整理" +date: "2025-01-27" +tags: + - ai + - machine-learning + - deep-learning + - llm --- -# AI 知识库 +该文档致力于汇总高质量 AI 学习资源,减少信息分散与重复,便于协作维护与持续更新。 -占位页,待补充内容。 +## 学习路径 + +本知识库按以下结构组织: + +- AI 数学基础:线性代数、概率统计、微积分与优化、信息论、数值分析 +- 大模型基础:深度学习、PyTorch、CUDA、Transformer、Embedding、入门课程 +- 强化学习:RL 基础、思维链 COT、GRPO +- 基座大模型:数据集、训练、微调、部署、评测、模型结构 +- 多模态大模型:LLaVA、QwenVL、ViT、MLLM +- 推荐系统:学习路径、实战项目、论文资源 +- Agent:大模型智能体 +- 生成模型:Diffusion Models +- 方法论学习:科研指南、论文阅读 +- 杂项工具:开发工具、平台使用 + +> 注意:论文合集可邀请到 Zotero 协作;“TODO” 代表待施工项目。 diff --git a/app/docs/ai/llm-basics/courses/cmu-advanced-nlp/index.mdx b/app/docs/ai/llm-basics/courses/cmu-advanced-nlp/index.mdx deleted file mode 100644 index 91ede1b..0000000 --- a/app/docs/ai/llm-basics/courses/cmu-advanced-nlp/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "CMU Advanced NLP" -description: "CMU 高级 NLP 课程笔记。" ---- - -# CMU Advanced NLP - -占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/courses/cs224n/index.mdx b/app/docs/ai/llm-basics/courses/cs224n/index.mdx deleted file mode 100644 index 028e128..0000000 --- a/app/docs/ai/llm-basics/courses/cs224n/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "CS224斯坦福CS224N《深度学习自然语言处理》-从nlp基础讲起,有miniGPT" -description: "CS224N 课程相关笔记。" ---- - -# CS224N 斯坦福《深度学习自然语言处理》 - -占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/courses/cs336/index.mdx b/app/docs/ai/llm-basics/courses/cs336/index.mdx deleted file mode 100644 index 67fa43d..0000000 --- a/app/docs/ai/llm-basics/courses/cs336/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "斯坦福大学 2025 年春季的 CS336 课程「从头开始创造语言模型」" -description: "斯坦福 CS336 课程笔记。" ---- - -# 斯坦福 CS336 从头开始创造语言模型 - -占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/courses/happy-llm/index.mdx b/app/docs/ai/llm-basics/courses/happy-llm/index.mdx deleted file mode 100644 index 42435c7..0000000 --- a/app/docs/ai/llm-basics/courses/happy-llm/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "Happy-LLM-从0构建一个参数大小为215M的大模型。" -description: "Happy-LLM 项目课程笔记。" ---- - -# Happy-LLM 从 0 构建 215M 模型 - -占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/courses/index.mdx b/app/docs/ai/llm-basics/courses/index.mdx index 980157b..08bb531 100644 --- a/app/docs/ai/llm-basics/courses/index.mdx +++ b/app/docs/ai/llm-basics/courses/index.mdx @@ -1,8 +1,65 @@ --- -title: "入门课程" -description: "LLM/深度学习课程。" +title: "大模型入门课程" +description: "深度学习与大模型相关的课程资料汇总。" --- -# 入门课程(LLM) +# 入门课程 -占位页,待补充内容。 +## CS224N 斯坦福《深度学习自然语言处理》 + +从 NLP 基础讲起,有 miniGPT + +- 官网:[CS224N Stanford](https://web.stanford.edu/class/cs224n/index.html#schedule) +- 视频:(2025 中英)斯坦福 CS224N《深度学习自然语言处理》 +- 课件与作业地址:[Quark 网盘](https://pan.quark.cn/s/1e43e9b25006) + +--- + +## CMU Advanced NLP + +- 课程主页:[CMU Advanced NLP Spring 2025](https://cmu-l3.github.io/anlp-spring2025/) +- 代码地址:[Github Repo](https://github.com/cmu-l3/anlp-spring2025-code/tree/main) +- 作业: + - **minLLaMA**: [HW1](https://github.com/cmu-l3/anlp-spring2025-hw1) (从零实现 LLaMA,质量超级高) + - **RAG**: [HW2](https://github.com/cmu-l3/anlp-spring2025-hw2) + +--- + +## NanoGPT —— 从零实现 GPT + +- 代码:[NanoGPT GitHub](https://github.com/karpathy/nanoGPT) +- 学习资料:【LLM 训练系列】NanoGPT 源码详解和中文 GPT 训练实践 + +--- + +## 斯坦福大学 CS336 《从头开始创造语言模型》 (Spring 2025) + +- 课程视频:[YouTube 播放列表](https://www.youtube.com/watch?v=SQ3fZ1sAqXI&list=PLoROMvodv4rOY23Y0BoGoBGgQ1zmU_MT_) +- 课程主页:[CS336 官方站点](https://stanford-cs336.github.io/spring2025/) +- 代码仓库:[GitHub Repo](https://github.com/stanford-cs336/spring2025-lectures) +- 视频翻译:[Bilibili](https://www.bilibili.com/video/BV13SV9zdEhX/?spm_id_from=333.337.search-card.all.click&vd_source=14245d272f6606a31fe299db9e47ca84) +- 翻译合集:[知乎专栏](https://zhuanlan.zhihu.com/p/1906315844386034284) +- 私有作业仓库:TODO + +### 作业说明 + +1. **作业 1**:实现 BPE 分词器、Transformer 架构、Adam 优化器,并在 TinyStories 和 OpenWebText 上训练模型(仅允许用 PyTorch 原语)。 +2. **作业 2**:在 Triton 中实现 Flash Attention 2、分布式数据并行 + 优化器分片。 +3. **作业 3**:Scaling Law。使用 IsoFLOP 拟合 Scaling Law,模拟有限计算预算的实验过程。 +4. **作业 4**:数据处理。将 Common Crawl HTML 转为文本,过滤(质量、有害内容、PII),去重。 +5. **作业 5**:对齐。实现监督微调、专家迭代、GRPO 与变体,在 Qwen 2.5 Math 1.5B 上运行 RL 提升 MATH 指标。 + +### 前置课程 + +- 数学:MATH 51、CME 100 +- 概率:CS 109 + +### 学习笔记 + +- CS336 学习笔记:TODO + +--- + +## Happy-LLM —— 从零构建 215M 大模型 + +- 代码仓库:[Happy-LLM GitHub](https://github.com/datawhalechina/happy-llm) diff --git a/app/docs/ai/llm-basics/courses/nanogpt/index.mdx b/app/docs/ai/llm-basics/courses/nanogpt/index.mdx deleted file mode 100644 index 028311b..0000000 --- a/app/docs/ai/llm-basics/courses/nanogpt/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "NanoGPT-从零实现GPT,Tokenizer并进行预训练" -description: "NanoGPT 从零实现与预训练。" ---- - -# NanoGPT-从零实现GPT,Tokenizer并进行预训练 - -占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/courses/notes-todo/index.mdx b/app/docs/ai/llm-basics/courses/notes-todo/index.mdx deleted file mode 100644 index e233928..0000000 --- a/app/docs/ai/llm-basics/courses/notes-todo/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "笔记TODO" -description: "课程笔记待办清单。" ---- - -# 笔记 TODO - -占位页,待补充内容。 diff --git a/app/docs/ai/llm-basics/cuda/index.mdx b/app/docs/ai/llm-basics/cuda/index.mdx index 6bfa88e..302e1ea 100644 --- a/app/docs/ai/llm-basics/cuda/index.mdx +++ b/app/docs/ai/llm-basics/cuda/index.mdx @@ -1,8 +1,29 @@ ---- +--- title: "CUDA" -description: "CUDA 学习与优化。" +description: "CUDA 学习资料与大模型相关优化技术" +date: "2024-01-17" +tags: + - cuda + - gpu + - triton + - cutlass + - flashattention + - ring-attention + - profiling --- -# CUDA +## 推荐课程 + +- [CUDA Lectures(Github 课程,内容全面)](https://github.com/cuda-mode/lectures) + 涵盖 **profiling、Triton、Cutlass、FlashAttention、Ring Attention** 等实用主题。 + +## 相关文章 + +- [知乎专栏:CUDA 进阶学习](https://zhuanlan.zhihu.com/p/711304830) + +## 学习价值 -占位页,待补充内容。 +- 理解 GPU 并行计算与内存优化 +- 掌握模型加速的核心组件(FlashAttention、Ring Attention) +- 学会利用 profiling 定位性能瓶颈 +- 熟悉 Triton / Cutlass 等新一代高性能 GPU 编程框架 diff --git a/app/docs/ai/llm-basics/deep-learning/d2l/index.mdx b/app/docs/ai/llm-basics/deep-learning/d2l/index.mdx index ad56381..9e89d9a 100644 --- a/app/docs/ai/llm-basics/deep-learning/d2l/index.mdx +++ b/app/docs/ai/llm-basics/deep-learning/d2l/index.mdx @@ -1,8 +1,24 @@ ---- +--- title: "李沐动手学深度学习" description: "《动手学深度学习》相关笔记。" +date: "2024-01-18" +tags: + - d2l + - deep-learning + - pytorch + - notes --- -# 李沐动手学深度学习 +## 官方资源 + +- [动手学深度学习 (D2L 官方站点)](https://zh-v2.d2l.ai/) + +## 电子书 + +- [李沐 - 《动手学深度学习》.pdf] +- [动手学深度学习 (PyTorch 版).pdf] + +## 学习笔记 -占位页,待补充内容。 +- 动手学深度学习笔记 TODO +- 夸克网盘:[动手学深度学习中文笔记](https://pan.quark.cn/s/9a7cf3f3eae2) diff --git a/app/docs/ai/llm-basics/deep-learning/index.mdx b/app/docs/ai/llm-basics/deep-learning/index.mdx index 3d5b642..980bd75 100644 --- a/app/docs/ai/llm-basics/deep-learning/index.mdx +++ b/app/docs/ai/llm-basics/deep-learning/index.mdx @@ -1,8 +1,106 @@ ---- +--- title: "深度学习基础" -description: "深度学习基础内容。" +description: "深度学习基础知识:李沐动手学深度学习、NLP、机器学习资源" +date: "2025-01-27" +tags: + - deep-learning + - d2l + - nlp + - machine-learning --- -# 深度学习基础 +深度学习是大模型的理论基础,本节提供系统的学习资源和实践指导。 + +## 李沐动手学深度学习 + +### 核心资源 + +- **官方网站**: [https://zh-v2.d2l.ai/](https://zh-v2.d2l.ai/) - 中文版在线教程 +- **特色**: 理论与代码并重,提供PyTorch和MXNet实现 +- **内容**: 从基础的线性回归到高级的注意力机制 + +### 学习资料 + +- **PDF版本**: 李沐-《动手学深度学习》 +- **PyTorch版**: 动手学深度学习(Pytorch版) +- **笔记资源**: 动手学深度学习中文笔记 + - 夸克网盘链接:https://pan.quark.cn/s/9a7cf3f3eae2 + +### 学习特点 + +- **实践导向**: 每个概念都有对应的代码实现 +- **渐进式**: 从简单概念逐步构建复杂模型 +- **全面性**: 覆盖深度学习的主要领域 +- **更新及时**: 持续更新最新技术和方法 + +## 学习建议 + +### 学习顺序 + +1. **数学基础**: 线性代数、概率论、微积分 +2. **机器学习**: 传统机器学习算法理解 +3. **深度学习**: 神经网络基础和反向传播 +4. **现代架构**: Transformer和注意力机制 +5. **实践应用**: 具体任务的模型应用 + +### 实践建议 + +1. **理论实践并重**: 每学一个概念就动手实现 +2. **项目驱动**: 通过完整项目巩固知识 +3. **社区参与**: 加入学习社区,交流讨论 +4. **持续更新**: 跟踪最新的技术发展 + +### 常见挑战 + +1. **数学门槛**: 需要一定的数学基础 +2. **概念抽象**: 一些概念较为抽象,需要多实践 +3. **技术更新快**: 需要持续学习新技术 +4. **实践与理论结合**: 平衡理论学习和实践操作 + +## 进阶方向 + +### 理论深化 + +- 优化理论与算法 +- 信息论与深度学习 +- 统计学习理论 +- 贝叶斯深度学习 + +### 应用领域 + +- 计算机视觉 +- 自然语言处理 +- 语音识别与合成 +- 推荐系统 + +### 工程实践 + +- 大规模训练 +- 模型部署与优化 +- 分布式计算 +- MLOps实践 + +## 学习资源汇总 + +### 在线课程 + +- MIT 6.034 Artificial Intelligence +- Stanford CS229 Machine Learning +- Deep Learning Specialization (Coursera) +- Fast.ai Practical Deep Learning + +### 经典教材 + +- 《深度学习》(花书) +- 《机器学习》(西瓜书) +- 《统计学习方法》 +- 《模式识别与机器学习》 + +### 实践平台 + +- Kaggle竞赛平台 +- Google Colab +- Jupyter Notebook +- GitHub开源项目 -占位页,待补充内容。 +这些资源为深度学习提供了从理论到实践的完整学习路径,建议根据个人基础和目标选择合适的学习方式。 diff --git a/app/docs/ai/llm-basics/deep-learning/misc/index.mdx b/app/docs/ai/llm-basics/deep-learning/misc/index.mdx index 8d1ed3f..ec6c493 100644 --- a/app/docs/ai/llm-basics/deep-learning/misc/index.mdx +++ b/app/docs/ai/llm-basics/deep-learning/misc/index.mdx @@ -3,6 +3,38 @@ title: "其他资料" description: "深度学习杂项资料。" --- -# 其他资料(深度学习) +# 其他重要资源 -占位页,待补充内容。 +## 机器学习南瓜书 + +- **核心价值**: 周志华《机器学习》的公式推导解析 +- **适用人群**: 希望深入理解算法数学原理的学习者 +- **内容特色**: 详细的数学推导和证明过程 + +## 花书 (深度学习) + +- **作者**: Ian Goodfellow, Yoshua Bengio, Aaron Courville +- **特色**: 理论基础扎实,数学严谨 +- **内容**: 深度学习的理论基础和数学原理 +- **适用**: 研究人员和高级开发者 + +## MIT深度学习教材 + +- **官方网站**: [https://www.deeplearningbook.org/](https://www.deeplearningbook.org/) +- **特色**: 权威理论参考,学术标准 +- **语言**: 英文原版,理论深度高 + +## 北大CSDIY + +- **资源链接**: [https://csdiy.wiki/](https://csdiy.wiki/) +- **特色**: 计算机自学指南,包含深度学习路径 +- **内容**: 课程推荐、学习路径、实践项目 + +## 视频课程资源 + +### 咕泡程序员AI课程 + +- **课程**: 【人工智能机器学习】2023最新系统教程 +- **内容**: 机器学习算法、机器学习实战 +- **链接**: [B站视频](https://www.bilibili.com/video/BV1hM4y1U7FV) +- **特色**: 系统性强,实战导向 diff --git a/app/docs/ai/llm-basics/deep-learning/nlp/index.mdx b/app/docs/ai/llm-basics/deep-learning/nlp/index.mdx index f9dfc6b..290f009 100644 --- a/app/docs/ai/llm-basics/deep-learning/nlp/index.mdx +++ b/app/docs/ai/llm-basics/deep-learning/nlp/index.mdx @@ -3,6 +3,17 @@ title: "NLP" description: "自然语言处理基础。" --- -# NLP +# NLP基础 -占位页,待补充内容。 +## HuggingFace NLP课程 + +- **官方链接**: [https://huggingface.co/learn/llm-course/zh-CN/chapter7/2](https://huggingface.co/learn/llm-course/zh-CN/chapter7/2) +- **特色**: 实用的NLP工具与技术 +- **内容**: Transformers库使用、模型微调、部署等 + +## 学习路径 + +1. **基础概念**: 文本预处理、词向量、语言模型 +2. **经典模型**: RNN、LSTM、GRU、Attention +3. **现代架构**: Transformer、BERT、GPT系列 +4. **实践应用**: 文本分类、命名实体识别、机器翻译 diff --git a/app/docs/ai/llm-basics/embeddings/index.mdx b/app/docs/ai/llm-basics/embeddings/index.mdx index 4987f8a..3617cea 100644 --- a/app/docs/ai/llm-basics/embeddings/index.mdx +++ b/app/docs/ai/llm-basics/embeddings/index.mdx @@ -1,8 +1,38 @@ ---- +--- title: "Embedding模型" description: "Embedding/向量化相关资料。" +date: "2024-01-15" +tags: + - embedding + - vector + - representation + - nlp + - retrieval --- -# Embedding模型 +**Embedding(嵌入/向量化)** 是一种将离散对象(如词语、句子、图片、用户行为等)映射到连续向量空间的技术。 +通过这种表示方式,语义上相近的对象在向量空间中往往距离也更近,从而便于计算和建模。 + +## 核心思想 + +- **离散 → 连续**:将符号化的输入转化为数值向量,便于神经网络处理。 +- **语义保留**:向量空间结构能够保留对象之间的语义关系。 +- **可计算性**:向量可以进行加法、点积、余弦相似度等运算,实现检索、聚类、分类等功能。 + +## 大模型中的应用 + +- **词/句子向量**:NLP 模型中最常见的表示方式(如 Word2Vec、BERT、GPT)。 +- **多模态表示**:将图像、音频、视频等信息映射到相同的向量空间,实现跨模态检索。 +- **检索与推荐**:基于向量相似度的语义检索(向量数据库、RAG)、个性化推荐系统。 +- **微调与融合**:通过 LoRA、SLERP 等方法优化特定任务的向量表示。 + +## 典型方法 + +- **早期方法**:Word2Vec、GloVe +- **上下文相关表示**:ELMo、BERT +- **生成式大模型的嵌入**:GPT 系列、Qwen Embedding、OpenAI Embedding API + +## 总结 -占位页,待补充内容。 +Embedding 是现代机器学习和大模型应用的基础模块。 +它不仅连接了离散世界与连续世界,也是语义理解、检索增强生成(RAG)、多模态融合的核心工具。 diff --git a/app/docs/ai/llm-basics/embeddings/qwen3-embedding/index.mdx b/app/docs/ai/llm-basics/embeddings/qwen3-embedding/index.mdx index 47d1bb5..e155520 100644 --- a/app/docs/ai/llm-basics/embeddings/qwen3-embedding/index.mdx +++ b/app/docs/ai/llm-basics/embeddings/qwen3-embedding/index.mdx @@ -1,8 +1,23 @@ ---- +--- title: "Qwen3-embedding" -description: "Qwen3 Embedding 模型相关。" +description: "Qwen3 Embedding 模型的关键点、深度解读与实战资料" +date: "2024-01-15" +tags: + - qwen3 + - embedding + - slerp + - lora + - fine-tuning --- -# Qwen3-embedding +## 关键点 + +- SLERP 权重合并算法 + +## 深度解读 + +- [深度解读 Qwen3 Embedding](https://zhuanlan.zhihu.com/p/1916627276335945288) + +## 实战 -占位页,待补充内容。 +- [Qwen3 Embedding 模型 LoRA 微调实战](https://zhuanlan.zhihu.com/p/1914711055654950451) diff --git a/app/docs/ai/llm-basics/index.mdx b/app/docs/ai/llm-basics/index.mdx index dc833af..2501e9e 100644 --- a/app/docs/ai/llm-basics/index.mdx +++ b/app/docs/ai/llm-basics/index.mdx @@ -1,8 +1,165 @@ --- title: "大模型基础" -description: "LLM 基础与实践资料目录。" +description: "大模型基础知识体系:深度学习、PyTorch、CUDA、Transformer" +date: "2025-01-27" +tags: + - llm-basics + - deep-learning + - pytorch + - transformer --- -# 大模型基础 +大模型基础涵盖从深度学习理论到实际开发的完整知识体系,为理解和开发大模型提供坚实基础。 -占位页,待补充内容。 +## 核心学习模块 + +### 📚 深度学习基础 + +- 前往: [深度学习基础](./deep-learning/) +- 李沐动手学深度学习 +- NLP 基础课程 +- 机器学习经典教材 +- 理论与实践结合 + +### 🔧 PyTorch 框架 + +- 前往: [PyTorch框架](./pytorch/) +- 小土堆入门教程 +- 张量操作进阶 +- 面试要点总结 +- 项目实战指导 + +### CUDA 编程 + +- 前往: [CUDA编程](./cuda/) +- CUDA Mode 系统课程 +- GPU 并行计算原理 +- 性能优化技巧 +- FlashAttention 实现 + +### Transformer 架构 + +- 前往: [Transformer架构](./transformer/) +- Attention 机制详解 +- 多头注意力原理 +- 位置编码设计 +- 架构可视化学习 + +### 🎯 Embedding 模型 + +- 前往: [Embedding模型](./embeddings/) +- Qwen3-embedding 深度解读 +- SLERP 权重合并算法 +- 向量化表示技术 +- 相似度计算方法 + +### 📖 入门课程 + +- 前往: [入门课程](./courses/) +- CS224N 斯坦福 NLP 课程 +- CMU Advanced NLP +- NanoGPT 实现项目 +- CS336 语言模型课程 +- Happy-LLM 实践项目 + +## 学习路径规划 + +### 初学者路线 + +1. 数学基础:线性代数、概率论、微积分 +2. 深度学习:神经网络、反向传播、优化算法 +3. 框架掌握:PyTorch 基础操作和模型构建 +4. 架构理解:Transformer 和注意力机制 + +### 进阶开发 + +1. CUDA 编程:GPU 并行计算和性能优化 +2. 模型实现:从零实现 Transformer 架构 +3. 训练优化:大规模模型训练技术 +4. 部署应用:模型推理和服务化 + +### 研究导向 + +1. 理论深入:数学原理和算法创新 +2. 前沿跟踪:最新论文和技术趋势 +3. 实验设计:科学的实验方法论 +4. 代码复现:顶会论文复现能力 + +## 重要概念速览 + +### Transformer 核心 + +- Self-Attention:自注意力机制 +- Multi-Head:多头并行表示学习 +- Position Encoding:位置信息编码 +- Feed Forward:前馈神经网络 + +### PyTorch 要点 + +- 张量操作:多维数组的高效计算 +- 自动梯度:动态图与反向传播 +- 模块化设计:nn.Module 构建复杂模型 +- GPU 加速:CUDA 支持与内存管理 + +### CUDA 优化 + +- 并行计算:利用 GPU 大规模并行能力 +- 内存管理:全局/共享内存优化 +- 算子融合:减少内存访问与计算开销 +- 性能分析:Profile 工具定位瓶颈 + +## 实践项目建议 + +### 入门项目 + +- 手写数字识别 (MNIST) +- 文本分类器实现 +- 简单的 seq2seq 模型 +- 基础注意力机制 + +### 进阶项目 + +- miniGPT 从零实现 +- Transformer 机器翻译 +- BERT 模型微调 +- 大模型推理优化 + +### 高级项目 + +- 分布式训练系统 +- 自定义 CUDA 算子 +- 模型压缩与量化 +- 端到端大模型应用 + +## 学习资源推荐 + +### 在线课程 + +- 李沐《动手学深度学习》 +- 斯坦福 CS224N +- CMU Advanced NLP +- Fast.ai 实用深度学习 + +### 经典教材 + +- 《深度学习(花书)》 +- 《动手学深度学习》 +- 《机器学习(西瓜书)》 +- 《统计学习方法》 + +### 实践平台 + +- Google Colab +- Kaggle 竞赛 +- GitHub 开源项目 +- Hugging Face 模型库 + +## 学习建议 + +1. 循序渐进:从基础概念到复杂架构 +2. 理论实践并重:学一个概念就动手实现 +3. 项目驱动:用完整项目联结知识 +4. 社区参与:加入开源与技术讨论 +5. 持续更新:跟踪最新研究与技术 + +> 💡 核心理念:基础不只是“知识点”,更是解决复杂问题的能力。结合理论与实战,循序渐进建立完整体系。 diff --git a/app/docs/ai/llm-basics/pytorch/index.mdx b/app/docs/ai/llm-basics/pytorch/index.mdx index 6696028..ddca14a 100644 --- a/app/docs/ai/llm-basics/pytorch/index.mdx +++ b/app/docs/ai/llm-basics/pytorch/index.mdx @@ -1,8 +1,125 @@ +--- +title: "PyTorch" +description: "PyTorch深度学习框架:入门教程、张量操作、面试要点" +date: "2025-01-27" +tags: + - pytorch + - deep-learning-framework + - tensor + - neural-networks --- -title: "Pytorch" -description: "Pytorch 学习记录。" ---- -# Pytorch +PyTorch是现代深度学习最重要的框架之一,特别在研究和大模型开发中占主导地位。 + +## 入门教程 + +### 小土堆PyTorch教程 + +- **视频地址**: [PyTorch深度学习快速入门教程](https://www.bilibili.com/video/BV1hE411t7RN/) +- **特色**: 绝对通俗易懂,适合零基础学习者 +- **内容覆盖**: + - PyTorch基础概念 + - 张量操作 + - 神经网络构建 + - 训练循环设计 + - 实际项目案例 + +### 官方资源 + +- **PyTorch官方中文教程**: [https://pytorch.ac.cn/tutorials/](https://pytorch.ac.cn/tutorials/) +- **菜鸟教程**: [https://www.runoob.com/pytorch/pytorch-tensor.html](https://www.runoob.com/pytorch/pytorch-tensor.html) +- **特色**: 权威性强,内容全面,持续更新 + +### PyTorch面试精华 + +- **资源链接**: [https://www.mstx.cn/pytorch.html](https://www.mstx.cn/pytorch.html) +- **覆盖内容**: + - PyTorch基础概念 + - 常见面试问题 + - 代码实现要点 + - 性能优化技巧 + +## 张量操作进阶 + +### einops库 + +- **GitHub**: [https://github.com/arogozhnikov/einops](https://github.com/arogozhnikov/einops) +- **特色**: 优雅的张量操作,代码可读性强 +- **核心功能**: `rearrange`, `reduce`, `repeat` + +### The Tensor Cookbook + +- **网站**: [https://tensorcookbook.com/](https://tensorcookbook.com/) +- **GitHub**: [https://github.com/thomasahle/tensorgrad](https://github.com/thomasahle/tensorgrad) +- **特色**: 可视化张量操作指南 +- **知乎讨论**: [张量食谱相关讨论](https://www.zhihu.com/search?type=content&q=%E5%BC%A0%E9%87%8F%E9%A3%9F%E8%B0%B1) + +## 经典教材 + +### Deep Learning with PyTorch Step-by-Step + +- **特色**: 从基础到高级的完整路径,逐步深入的PyTorch学习 +- **适用**: 有一定基础的学习者 +- **内容**: 包含完整的项目实战案例 + +## 核心概念 + +### 张量 (Tensor) + +PyTorch的核心数据结构,支持GPU加速的多维数组。 + +### 自动梯度 (Autograd) + +动态计算图和自动微分系统,深度学习训练的核心。 + +### 神经网络模块 (nn.Module) + +构建神经网络的基础类,支持模块化设计。 + +## 实践建议 + +### 学习路径 + +1. **基础入门**: 张量操作、自动梯度 +2. **模型构建**: nn.Module、损失函数 +3. **训练循环**: 优化器、学习率调度 +4. **高级特性**: 分布式、优化技术 +5. **项目实战**: 完整项目开发 + +### 开发技巧 + +1. **多动手**: 每个概念都要亲自实现 +2. **读源码**: 理解底层实现原理 +3. **做项目**: 通过项目巩固知识 +4. **参与社区**: 贡献开源项目 + +PyTorch作为深度学习的主流框架,掌握其核心概念和高级特性对于大模型开发至关重要。 + +1. [PyTorch 深度学习快速入门教程(绝对通俗易懂!)【小土堆】](https://www.bilibili.com/video/BV1hE411t7RN/?spm_id_from=333.337.search-card.all.click&vd_source=14245d272f6606a31fe299db9e47ca84) +2. [PyTorch 面试精华](https://www.mstx.cn/pytorch.html) +3. [菜鸟教程 - PyTorch](https://www.runoob.com/pytorch/pytorch-tensor.html) +4. [PyTorch 官方中文教程](https://pytorch.ac.cn/tutorials/) + +## 张量 (Tensor) + +### 张量工具与库 + +- [einops (Github)](https://github.com/arogozhnikov/einops) + +### Tensor Cookbook 及相关资料 + +- [The Tensor Cookbook(可视化张量)](https://tensorcookbook.com/) +- [知乎 - 张量食谱相关讨论](https://www.zhihu.com/search?type=content&q=%E5%BC%A0%E9%87%8F%E9%A3%9F%E8%B0%B1) +- [tensorgrad (Github)](https://github.com/thomasahle/tensorgrad) +- [Cookbook PDF] +- Deep Learning with PyTorch Step-by-Step: A Beginner’s Guide (Daniel Voigt Godoy) PDF (Z-Library) + +## Jupyter 内核注册(来自群文档摘录) + +```bash +pip install ipykernel -占位页,待补充内容。 +# 注册内核(示例) +python -m ipykernel install --user --name myenv +python -m ipykernel install --user --name yourname --display-name yourname +``` diff --git a/app/docs/ai/llm-basics/transformer/ai-by-hand/index.mdx b/app/docs/ai/llm-basics/transformer/ai-by-hand/index.mdx index 2b52b8b..360d09a 100644 --- a/app/docs/ai/llm-basics/transformer/ai-by-hand/index.mdx +++ b/app/docs/ai/llm-basics/transformer/ai-by-hand/index.mdx @@ -1,8 +1,26 @@ ---- +--- title: "AI by Hand:手搓 AI 模型" -description: "从零手写 AI/Transformer 模型。" +description: "AI by Hand 项目资源与介绍" +date: "2024-01-16" +tags: + - ai-by-hand + - transformer + - visualization + - tutorial --- -# AI by Hand:手搓 AI 模型 +## 项目主页 + +- [AI by Hand 官方网站](https://www.byhand.ai/) + → 提供图解和交互式展示,帮助从零理解 AI 模型的计算过程。 + +## 相关介绍 + +- [CSDN 介绍文章](https://blog.csdn.net/qq_35591253/article/details/144326165) +- [Dongou Tech 博客 - AI by Hand ✍️ with Prof. Tom Yeh](https://dongou.tech/ai/dongou/ai-by-hand-%E2%9C%8D%EF%B8%8F-with-prof-tom-yeh-for-ai-professionals/) + +## 学习价值 -占位页,待补充内容。 +- 通过“手算”方式理解 Transformer 等模型的核心运算 +- 可视化讲解 Attention、矩阵运算等机制 +- 适合想要从基础逻辑层面掌握大模型原理的学习者 diff --git a/app/docs/ai/llm-basics/transformer/index.mdx b/app/docs/ai/llm-basics/transformer/index.mdx index 86dbcb1..f5c2096 100644 --- a/app/docs/ai/llm-basics/transformer/index.mdx +++ b/app/docs/ai/llm-basics/transformer/index.mdx @@ -1,8 +1,44 @@ ---- +--- title: "Transformer" -description: "Transformer 相关知识与资料。" +description: "Transformer 架构与注意力机制相关资料" +date: "2024-01-16" +tags: + - transformer + - attention + - qkv + - multi-head-attention + - tokenizer + - positional-encoding + - feedforward + - normalization + - decoding --- -# Transformer +## 核心论文与代码 + +- [Attention is All You Need (原始论文, 2017)](https://arxiv.org/abs/1706.03762) +- [Github 代码复现(PyTorch)](https://github.com/jadore801120/attention-is-all-you-need-pytorch) + +## 关键概念 + +- Self-Attention 的 QKV 计算 +- Scaled Dot-Product 的作用 +- Multi-Head Attention 的原理 +- 分词与 Tokenizer +- 词嵌入(Word Embedding) +- 位置编码(Positional Encoding) +- 注意力机制(Attention Mechanism) +- 前馈网络(Feed Forward Network) +- 掩码(Masking) +- 层归一化(Normalization) +- 解码技术(Decoding Techniques) + +## 深入学习 + +- Transformer 论文逐段精读 【论文精读】 + +## 注意力机制学习资源 -占位页,待补充内容。 +- 【高清中英字幕】2025 年吴恩达详细讲解 Transformer 工作原理 + - [原课程链接(DeepLearning.AI Short Courses)](https://www.deeplearning.ai/short-courses/how-transformer-llms-work/) +- 彻底弄清注意力机制 diff --git a/app/docs/ai/methodology/fast-reading-with-llm/index.mdx b/app/docs/ai/methodology/fast-reading-with-llm/index.mdx deleted file mode 100644 index 3b7ba39..0000000 --- a/app/docs/ai/methodology/fast-reading-with-llm/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "科研自救指南 | 如何使用大模型实现论文速读" -description: "论文速读工作流。" ---- - -# 科研自救指南 | 如何使用大模型实现论文速读 - -占位页,待补充内容。 diff --git a/app/docs/ai/methodology/find-research-direction-2-0/index.mdx b/app/docs/ai/methodology/find-research-direction-2-0/index.mdx deleted file mode 100644 index ea38940..0000000 --- a/app/docs/ai/methodology/find-research-direction-2-0/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "科研自救指南 | 如何找到研究方向2.0" -description: "科研选题与方向方法论。" ---- - -# 科研自救指南 | 如何找到研究方向 2.0 - -占位页,待补充内容。 diff --git a/app/docs/ai/methodology/first-sci-submission/index.mdx b/app/docs/ai/methodology/first-sci-submission/index.mdx deleted file mode 100644 index 441723c..0000000 --- a/app/docs/ai/methodology/first-sci-submission/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "科研自救指南 | 如何投稿人生第一篇SCI论文?" -description: "SCI 投稿流程与准备。" ---- - -# 科研自救指南 | 如何投稿人生第一篇 SCI 论文? - -占位页,待补充内容。 diff --git a/app/docs/ai/methodology/index.mdx b/app/docs/ai/methodology/index.mdx index 28733c6..2e2dccb 100644 --- a/app/docs/ai/methodology/index.mdx +++ b/app/docs/ai/methodology/index.mdx @@ -1,8 +1,213 @@ ---- +--- title: "方法论学习" -description: "科研方法论与工作方法。" +description: "科研自救指南:研究方向、论文速读、代码复现、SCI投稿等方法论" +date: "2025-01-27" +tags: + - methodology + - research + - paper-reading + - code-reproduction + - sci-publication --- -# 方法论学习 +科研不仅需要技术能力,更需要正确的方法论指导。本节提供从研究方向选择到论文发表的完整科研方法论。 + +## 科研自救指南系列 + +### 科研自救指南 | 如何找到研究方向2.0 + +**核心方法**: + +1. **文献调研**: 系统性阅读领域综述和顶会论文 +2. **问题识别**: 发现当前研究的不足和空白 +3. **技术趋势**: 跟踪前沿技术发展方向 +4. **实践验证**: 通过小规模实验验证想法可行性 + +**具体步骤**: + +- **第一步**: 广泛阅读,建立知识图谱 +- **第二步**: 深入特定子领域,找到兴趣点 +- **第三步**: 分析现有方法的局限性 +- **第四步**: 提出改进思路并验证 + +**选择标准**: + +- 个人兴趣和天赋匹配 +- 技术发展趋势 +- 实际应用价值 +- 研究资源可获得性 + +### 科研自救指南 | 如何使用大模型实现论文速读 + +**大模型辅助阅读策略**: + +**1. 论文结构化解读**: + +- 使用GPT等模型快速提取论文关键信息 +- 自动生成论文摘要和要点 +- 识别论文的创新点和贡献 + +**2. 批量文献处理**: + +- 批量处理PDF文档 +- 生成文献对比表格 +- 构建知识图谱 + +**3. 深度理解辅助**: + +- 解释复杂的技术概念 +- 分析数学公式和算法 +- 提供相关背景知识 + +**实用工具推荐**: + +- **ChatPDF**: 直接与PDF对话 +- **Perplexity**: 学术搜索和文献分析 +- **Claude**: 长文本处理专家 +- **自定义Prompt**: 设计专门的论文阅读提示词 + +### 科研自救指南 | 如何复现论文代码 + +**复现流程**: + +**1. 准备阶段**: + +- 仔细阅读论文和补充材料 +- 查找官方代码仓库 +- 分析实验设置和超参数 + +**2. 环境搭建**: + +- 复现论文中的软硬件环境 +- 安装依赖包和特定版本 +- 准备数据集和预处理 + +**3. 逐步实现**: + +- 从最简单的baseline开始 +- 逐个模块进行实现和测试 +- 对比中间结果确保正确性 + +**4. 调试优化**: + +- 分析复现结果与论文的差异 +- 调整超参数和实现细节 +- 记录调试过程和经验 + +**常见问题与解决**: + +- **环境不一致**: 使用Docker或虚拟环境 +- **数据不可用**: 寻找替代数据集或合成数据 +- **硬件限制**: 调整批处理大小和模型规模 +- **版本冲突**: 固定依赖包版本 + +### 科研自救指南 | 如何投稿人生第一篇SCI论文? + +**投稿前准备**: + +**1. 论文质量检查**: + +- 创新性:确保有明确的技术贡献 +- 实验完整性:充分的实验验证和对比 +- 写作质量:逻辑清晰,表达准确 +- 格式规范:遵循目标期刊要求 + +**2. 期刊选择策略**: + +- 影响因子vs接收难度平衡 +- 领域匹配度 +- 审稿周期 +- 开放获取政策 + +**3. 投稿材料准备**: + +- Cover Letter:简明扼要介绍工作 +- Highlights:突出主要贡献 +- 图表优化:清晰美观的可视化 +- 补充材料:详细的实验和代码 + +**投稿流程管理**: + +- 时间规划:预留充分的修改时间 +- 状态跟踪:及时关注审稿进度 +- 回复准备:为可能的修改要求做准备 + +**应对审稿意见**: + +- 积极态度:将意见视为改进机会 +- 逐条回复:详细回应每个问题 +- 修改说明:清楚标注所有修改 +- 实验补充:根据要求补充必要实验 + +## 扩展学习资源 + +### 美团北斗大模型课题 + +- **资源链接**: [美团技术文章](https://mp.weixin.qq.com/s/kyrM35FYIdV1NJr3m7CGoA) +- **学习价值**: 工业界大模型应用实践 +- **核心内容**: 从技术方案到产品落地的完整流程 + +### 学术写作提升 + +**写作技巧**: + +- 结构化写作:金字塔原理 +- 科技英语:专业术语和表达 +- 图表设计:数据可视化最佳实践 +- 引用规范:正确的文献引用格式 + +**工具推荐**: + +- **语法检查**: Grammarly, LanguageTool +- **参考文献**: Zotero, Mendeley +- **图表制作**: matplotlib, plotly, tikz +- **协作编辑**: Overleaf, Google Docs + +## 研究能力培养 + +### 批判性思维 + +1. **质疑精神**: 不盲从权威,独立思考 +2. **逻辑分析**: 理性分析论证过程 +3. **证据评估**: 客观评价实验证据 +4. **创新思维**: 从不同角度思考问题 + +### 学术交流技能 + +1. **论文presentation**: 清晰准确的学术报告 +2. **海报展示**: 有效的可视化交流 +3. **学术讨论**: 建设性的学术对话 +4. **网络建设**: 建立学术合作关系 + +### 项目管理能力 + +1. **时间管理**: 合理安排研究计划 +2. **资源协调**: 有效利用各种资源 +3. **团队协作**: 与导师和同学协作 +4. **风险控制**: 识别和应对研究风险 + +## 心理调适与坚持 + +### 应对挫折 + +- **正常化**: 认识到失败是研究的常态 +- **学习机会**: 从失败中提取经验教训 +- **支持系统**: 寻求导师和同行支持 +- **心理健康**: 保持良好的心理状态 + +### 保持动力 + +- **短期目标**: 设定可实现的阶段性目标 +- **成就感**: 及时庆祝小的进步 +- **兴趣驱动**: 保持对研究问题的好奇心 +- **长期愿景**: 明确研究的意义和价值 + +## 实践建议 + +1. **系统性学习**: 建立完整的知识体系,而非碎片化学习 +2. **实践导向**: 将方法论应用到具体的研究项目中 +3. **持续改进**: 根据实践经验不断优化方法 +4. **经验分享**: 与同行交流经验和教训 +5. **终身学习**: 保持对新方法和工具的开放态度 -占位页,待补充内容。 +> 💡 **核心思想**: 科研方法论不是死板的规则,而是需要根据具体情况灵活应用的指导原则。关键是要培养科学的思维方式和解决问题的能力。 diff --git a/app/docs/ai/methodology/reproduce-papers/index.mdx b/app/docs/ai/methodology/reproduce-papers/index.mdx deleted file mode 100644 index 64ffda1..0000000 --- a/app/docs/ai/methodology/reproduce-papers/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "科研自救指南 | 如何复现论文代码" -description: "论文代码复现方法论。" ---- - -# 科研自救指南 | 如何复现论文代码 - -占位页,待补充内容。 diff --git a/app/docs/ai/misc-tools/csdn-unlock/index.mdx b/app/docs/ai/misc-tools/csdn-unlock/index.mdx deleted file mode 100644 index 84792b6..0000000 --- a/app/docs/ai/misc-tools/csdn-unlock/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "CSDN破解" -description: "CSDN 内容访问相关。" ---- - -# CSDN 破解 - -占位页,待补充内容。 diff --git a/app/docs/ai/misc-tools/github/index.mdx b/app/docs/ai/misc-tools/github/index.mdx deleted file mode 100644 index f8f2725..0000000 --- a/app/docs/ai/misc-tools/github/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "github" -description: "GitHub 使用与技巧。" ---- - -# GitHub - -占位页,待补充内容。 diff --git a/app/docs/ai/misc-tools/index.mdx b/app/docs/ai/misc-tools/index.mdx index 1a90599..073b19a 100644 --- a/app/docs/ai/misc-tools/index.mdx +++ b/app/docs/ai/misc-tools/index.mdx @@ -1,8 +1,118 @@ ---- +--- title: "杂项工具" -description: "学习与研究相关的杂项工具。" +description: "AI开发与学习相关的实用工具集合" +date: "2025-01-27" +tags: + - tools + - zotero + - github + - perplexity + - productivity --- -# 杂项工具 +AI学习和开发过程中需要各种实用工具来提高效率。本节整理了论文管理、代码开发、在线服务等方面的优质工具。 + +## 论文阅读与管理 + +### Zotero - 文献管理神器 + +**功能特色**: + +- 文献收集、整理、引用管理 +- 支持PDF标注和笔记 +- 多平台同步 +- 丰富的插件生态 + +**学习资源**: + +- [Zotero中文指南](https://zotero-chinese.com/user-guide/quick-start) - 快速上手指南 +- [翻译插件设置](https://zhuanlan.zhihu.com/p/11419778268) - 提升阅读效率 +- [DeepL Pro翻译](https://deepl-pro.com/#/translate) - 高质量翻译服务 + +**共享学习**: + +- **Intern-S1 Zotero群组** - 玩转Zotero,助力科研提效 +- 支持团队协作和文献共享 + +## 开发工具 + +### GitHub相关 + +**代理与镜像**: + +- [GitHub镜像站](https://github.akams.cn/) - 加速访问GitHub +- **基础操作教程** - 掌握Git和GitHub的基本使用 + +### 破解与资源获取 + +**CSDN内容获取**: + +- [CSDN文档破解](https://zhuanlan.zhihu.com/p/10504181475) - 绕过付费限制 +- [破解服务网站](https://cs.cuckooing.cn/) - 在线文档获取 + +> ⚠️ **注意**: 请合理使用破解工具,支持原创内容和知识付费 + +## AI辅助工具 + +### Perplexity - AI搜索助手 + +**服务特色**: + +- AI驱动的智能搜索 +- 实时信息检索 +- 学术文献查找 +- Literature Review辅助 + +**获取方式**: + +- [推荐链接](https://plex.it/referrals/HO4F6X9N) - 学生身份可免费领取一个月Pro会员 +- 特别适合文献调研和背景资料收集 + +### Node.js和NPM + +**环境搭建**: + +- [Node.js安装指南](https://blog.csdn.net/weixin_62818371/article/details/146175470) +- 推荐版本:Node.js v22.19.0 LTS + +### Jupyter环境配置 + +**内核管理**: + +```bash +# 安装ipykernel +pip install ipykernel + +# 注册内核 +python -m ipykernel install --user --name myenv + +# 自定义显示名称 +python -m ipykernel install --user --name yourname --display-name yourname +``` + +## 写作与分享 + +### 技术博客平台 + +**稀土掘金**: + +- [掘金写作平台](https://juejin.cn/) - 技术内容分享 +- 特色:技术氛围浓厚,读者质量高 +- 支持Markdown写作,排版美观 + +## 面试与求职 + +### 面试宝典 + +**推荐资源**: + +- 《从0到∞: 大语言模型知识面试一本通》 +- 《从1到∞: 多模态大模型知识面试一本通》 + +## 使用建议 -占位页,待补充内容。 +1. **工具组合**: 根据工作流程选择合适的工具组合 +2. **自动化优先**: 能自动化的任务尽量自动化 +3. **持续优化**: 定期评估和优化工具使用效率 +4. **分享交流**: 与同行分享有用的工具和技巧 +5. **备份重要**: 重要数据和配置要做好备份 diff --git a/app/docs/ai/misc-tools/paper-reading-software/index.mdx b/app/docs/ai/misc-tools/paper-reading-software/index.mdx deleted file mode 100644 index e4bf4a9..0000000 --- a/app/docs/ai/misc-tools/paper-reading-software/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "论文阅读软件" -description: "论文阅读工具与工作流。" ---- - -# 论文阅读软件 - -占位页,待补充内容。 diff --git a/app/docs/ai/misc-tools/perplexity/index.mdx b/app/docs/ai/misc-tools/perplexity/index.mdx deleted file mode 100644 index 69dde55..0000000 --- a/app/docs/ai/misc-tools/perplexity/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "perplexity" -description: "Perplexity 使用与整合。" ---- - -# Perplexity - -占位页,待补充内容。 diff --git a/app/docs/ai/misc-tools/perplexity/npm/index.mdx b/app/docs/ai/misc-tools/perplexity/npm/index.mdx deleted file mode 100644 index d46802f..0000000 --- a/app/docs/ai/misc-tools/perplexity/npm/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "NPM" -description: "与 Perplexity 相关 NPM 工具。" ---- - -# NPM(Perplexity) - -占位页,待补充内容。 diff --git a/app/docs/ai/misc-tools/zotero/index.mdx b/app/docs/ai/misc-tools/zotero/index.mdx deleted file mode 100644 index f4d7c08..0000000 --- a/app/docs/ai/misc-tools/zotero/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "Zotero" -description: "Zotero 使用与插件。" ---- - -# Zotero - -占位页,待补充内容。 diff --git a/app/docs/ai/model-datasets-platforms/hf-daily-papers/index.mdx b/app/docs/ai/model-datasets-platforms/hf-daily-papers/index.mdx deleted file mode 100644 index 4c06a91..0000000 --- a/app/docs/ai/model-datasets-platforms/hf-daily-papers/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "Hugging Face 论文平台 Daily Papers" -description: "HF Daily Papers 相关。" ---- - -# Hugging Face 论文平台 Daily Papers - -占位页,待补充内容。 diff --git a/app/docs/ai/model-datasets-platforms/huggingface/index.mdx b/app/docs/ai/model-datasets-platforms/huggingface/index.mdx deleted file mode 100644 index 4e1b0a2..0000000 --- a/app/docs/ai/model-datasets-platforms/huggingface/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "Huggingface" -description: "Huggingface 平台相关。" ---- - -# Huggingface - -占位页,待补充内容。 diff --git a/app/docs/ai/model-datasets-platforms/imagenet/index.mdx b/app/docs/ai/model-datasets-platforms/imagenet/index.mdx deleted file mode 100644 index 2389896..0000000 --- a/app/docs/ai/model-datasets-platforms/imagenet/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "ImageNet" -description: "ImageNet 数据集相关。" ---- - -# ImageNet - -占位页,待补充内容。 diff --git a/app/docs/ai/model-datasets-platforms/index.mdx b/app/docs/ai/model-datasets-platforms/index.mdx index 7451c28..1b2541d 100644 --- a/app/docs/ai/model-datasets-platforms/index.mdx +++ b/app/docs/ai/model-datasets-platforms/index.mdx @@ -1,8 +1,192 @@ ---- +--- title: "模型数据集平台" -description: "模型与数据集平台相关目录。" +description: "主流AI模型、数据集和开发平台汇总" +date: "2025-01-27" +tags: + - platforms + - huggingface + - modelscope + - datasets + - models --- -# 模型数据集平台 +现代AI开发离不开各种模型和数据集平台。本节汇总了主要的AI开发平台、模型库和数据集资源。 + +## 主流平台 + +### Hugging Face + +**平台特色**: + +- 全球最大的AI模型社区 +- 丰富的预训练模型库 +- 易用的transformers库 +- 强大的数据集生态 + +**核心功能**: + +- **模型库**: 数十万个预训练模型 +- **数据集**: 大规模数据集集合 +- **Spaces**: 在线模型演示平台 +- **Datasets库**: 高效的数据集处理工具 + +**官网**: [https://huggingface.co/](https://huggingface.co/) + +### Hugging Face Daily Papers + +**特色**: + +- AI领域最新论文每日更新 +- 论文摘要和关键信息提取 +- 社区讨论和分享 + +**访问方式**: + +- [Daily Papers](https://hf.co/papers) - 每日论文推荐 +- [AK推荐](https://hf.co/akhaliq) - 精选高质量论文 + +**使用价值**: [平台介绍文章](https://mp.weixin.qq.com/s/25fnXvyUPkp8YXmKnIOTyQ) + +### ModelScope (魔搭社区) + +**平台定位**: 中国版Hugging Face + +**核心优势**: + +- 阿里巴巴开源的模型社区 +- 专注中文模型和应用 +- 更好的国内访问速度 +- 丰富的中文数据集 + +**官网**: [https://www.modelscope.cn/](https://www.modelscope.cn/) + +## 数据集资源 + +### 通用数据集平台 + +**Kaggle**: + +- **网址**: [https://www.kaggle.com/datasets](https://www.kaggle.com/datasets) +- **特色**: 竞赛数据集、社区分享 +- **优势**: 高质量标注数据、实际业务场景 + +**UCI机器学习仓库**: + +- **网址**: [https://archive.ics.uci.edu/ml/index.php](https://archive.ics.uci.edu/ml/index.php) +- **特色**: 经典机器学习数据集 +- **适用**: 算法研究、教学实验 + +### 专业数据集 + +#### ImageNet + +经典的计算机视觉数据集,深度学习发展的重要里程碑。 + +**特点**: + +- 超过1400万张图像 +- 1000个类别分类任务 +- 计算机视觉模型的标准测试集 + +#### 其他重要数据集 + +- **COCO**: 目标检测和分割 +- **OpenImages**: 大规模图像数据集 +- **Common Crawl**: 网页爬取文本数据 +- **WMT**: 机器翻译数据集 + +## 开发与训练平台 + +### 使用教程 + +详细的平台使用指南: [教程链接](https://github.com/InternLM/Tutorial/tree/camp4/docs/L0/maas) + +### Swan Lab - AI模型训练跟踪 + +**功能特色**: + +- AI模型训练过程可视化 +- 实验管理和结果对比 +- 团队协作和分享 + +**访问方式**: + +- **官网**: [https://swanlab.cn](https://swanlab.cn) +- **GitHub**: [https://github.com/swanhubx/swanlab](https://github.com/swanhubx/swanlab) +- **文档**: [https://docs.swanlab.cn/](https://docs.swanlab.cn/guide_cloud/general/what-is-swanlab.html) + +**应用场景**: + +- 训练过程监控 +- 超参数调优记录 +- 模型性能对比 +- 团队实验分享 + +## 平台选择建议 + +### 国际平台 + +**Hugging Face适用场景**: + +- 需要最新的国际模型 +- 参与全球AI社区 +- 访问最全面的模型库 +- 英文项目开发 + +### 国内平台 + +**ModelScope适用场景**: + +- 中文NLP任务 +- 国内网络环境限制 +- 本土化AI应用 +- 合规性要求 + +### 数据集选择 + +**考虑因素**: + +1. **任务匹配度**: 数据集是否符合具体任务需求 +2. **数据质量**: 标注准确性和完整性 +3. **规模大小**: 是否满足模型训练需求 +4. **许可证**: 商业使用的法律限制 +5. **更新频率**: 数据的时效性 + +## 最佳实践 + +### 模型选择策略 + +1. **任务匹配**: 选择针对具体任务优化的模型 +2. **规模平衡**: 在性能和计算资源间找平衡 +3. **社区活跃度**: 选择维护良好的模型 +4. **文档完整性**: 确保有详细的使用说明 + +### 数据集使用规范 + +1. **版权合规**: 遵守数据集的许可证要求 +2. **数据预处理**: 标准化数据格式和质量 +3. **验证分割**: 合理划分训练、验证、测试集 +4. **偏差检查**: 识别和处理数据集偏差 + +### 平台集成 + +1. **多平台组合**: 结合不同平台的优势 +2. **本地缓存**: 重要模型和数据的本地备份 +3. **版本管理**: 记录使用的模型和数据集版本 +4. **自动化流程**: 建立模型下载和更新的自动化流程 + +## 发展趋势 + +1. **模型民主化**: 降低AI模型使用门槛 +2. **生态融合**: 平台间更好的互操作性 +3. **质量提升**: 更严格的模型和数据质量控制 +4. **本土化发展**: 各地区专业化平台的兴起 +5. **商业化成熟**: 从开源分享到商业服务的转化 + +## 学习建议 -占位页,待补充内容。 +1. **多平台熟悉**: 掌握主要平台的使用方法 +2. **社区参与**: 积极参与模型和数据集的分享 +3. **质量意识**: 重视数据和模型的质量评估 +4. **版权意识**: 了解开源许可和商业使用规范 +5. **技术跟踪**: 关注平台功能更新和新技术集成 diff --git a/app/docs/ai/model-datasets-platforms/modelscope/index.mdx b/app/docs/ai/model-datasets-platforms/modelscope/index.mdx deleted file mode 100644 index 8b1f11b..0000000 --- a/app/docs/ai/model-datasets-platforms/modelscope/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "Modelscope" -description: "Modelscope 平台相关。" ---- - -# Modelscope - -占位页,待补充内容。 diff --git a/app/docs/ai/model-datasets-platforms/swan-lab/index.mdx b/app/docs/ai/model-datasets-platforms/swan-lab/index.mdx deleted file mode 100644 index 361fbdd..0000000 --- a/app/docs/ai/model-datasets-platforms/swan-lab/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "Swan Lab- AI 模型训练跟踪与可视化工具" -description: "Swan Lab 平台相关。" ---- - -# Swan Lab — AI 模型训练跟踪与可视化工具 - -占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/courses/index.mdx b/app/docs/ai/multimodal/courses/index.mdx index 34f16a9..ab18a92 100644 --- a/app/docs/ai/multimodal/courses/index.mdx +++ b/app/docs/ai/multimodal/courses/index.mdx @@ -1,8 +1,20 @@ ---- +--- title: "多模态基础课程" description: "多模态学习课程。" +date: "2024-01-18" +tags: + - multimodal + - cmu + - course --- -# 多模态基础课程 +## 卡内基梅隆大学 【多模态机器学习】 (CMU Multimodal Machine Learning) -占位页,待补充内容。 +- [课程主页](https://cmu-multicomp-lab.github.io/mmml-course/) +- 主讲人:Louis-Philippe Morency 教授(CMU Language Technologies Institute) +- 内容覆盖: + - 多模态表示学习 (Representation Learning) + - 多模态对齐 (Alignment) + - 跨模态迁移与融合 (Fusion & Transfer) + - 应用场景:情感识别、对话系统、视频理解等 +- 特点:这是全球最系统的多模态机器学习课程之一,每年都会更新讲义与论文阅读清单。 diff --git a/app/docs/ai/multimodal/index.mdx b/app/docs/ai/multimodal/index.mdx index 4a4b64d..ab0d3a2 100644 --- a/app/docs/ai/multimodal/index.mdx +++ b/app/docs/ai/multimodal/index.mdx @@ -1,8 +1,168 @@ --- title: "多模态大模型" -description: "多模态模型课程、框架与实现。" +description: "多模态大模型技术体系:LLaVA、QwenVL、ViT 等主流框架" +date: "2025-01-27" +tags: + - multimodal + - vision-language + - llava + - qwen-vl --- -# 多模态大模型 +多模态大模型结合视觉、文本等多种模态信息,是 AI 向通用智能迈进的重要一步。 -占位页,待补充内容。 +## 核心技术框架 + +### 🎯 LLaVA 框架 + +- 前往: [LLaVA 框架](./llava/) +- 视觉指令调优开创 +- ViT + 投影层 + LLM 架构 +- CLIP 基础技术详解 +- 复现项目实践指导 + +### 🚀 QwenVL 系列 + +- 前往: [QwenVL 系列](./qwenvl/) +- 中文多模态大模型标杆 +- Qwen2.5-VL 技术创新 +- 微调复现实践教程 +- 源码解读与简化实践 + +### 👁️ ViT 视觉编码器 + +- 前往: [ViT 视觉编码器](./vit/) +- Vision Transformer 原理 +- 模型压缩与优化技术 +- Token 合并策略研究 +- 学习笔记资源整理 + +### 🧠 MLLM 多模态大模型 + +- 前往: [MLLM 多模态大模型](./mllm/) +- 主流模型技术对比 +- 细粒度感知技术 +- 长视频理解方案 +- 多轮对话交互设计 + +### 📹 视频大模型 + +- 前往: [视频大模型](./video-mm-todo/) +- 时空建模技术挑战 +- 长视频理解问题 +- 多粒度理解方案 +- 实时处理技术 + +### 📚 多模态课程 + +- 前往: [多模态课程](./courses/) +- 理论基础与实践结合 +- 模态对齐与融合技术 +- 协同学习方法 + +## 技术发展脉络 + +### 架构演进 + +``` +单模态模型 → 简单多模态融合 → 深度跨模态对齐 → 统一多模态架构 +``` + +### 关键突破 + +1. CLIP:对比学习跨模态预训练 +2. LLaVA:视觉指令调优范式 +3. QwenVL:中文多模态能力 +4. Qwen2.5-VL:长视频与动态分辨率 + +## 学习路径 + +### 初学者路线 + +1. 视觉基础:计算机视觉基本概念 +2. CLIP 理解:跨模态对比学习原理 +3. LLaVA 入门:多模态框架基础 +4. 简单应用:图像描述与问答 + +### 进阶开发 + +1. 架构深入:多模态模型设计原理 +2. QwenVL 实践:工业级模型微调 +3. 性能优化:推理加速与模型压缩 +4. 创新应用:复杂任务开发 + +## 重要概念 + +### 跨模态对齐 + +- 语义对齐:不同模态语义映射 +- 时序对齐:视频/音频时间同步 +- 空间对齐:图像区域与文本对齐 + +### 融合策略 + +- 早期融合:特征级融合 +- 晚期融合:决策级融合 +- 深度融合:多层交互融合 + +### 指令调优 + +- 视觉指令:基于图像的任务指令 +- 多轮对话:连续多模态交互 +- 任务泛化:跨任务能力迁移 + +## 应用场景 + +### 内容理解 + +- 图像/视频描述生成 +- 多模态问答系统 +- 文档智能分析 +- 场景理解推理 + +### 创作辅助 + +- 图文内容创作 +- 视频脚本生成 +- 设计灵感提供 +- 营销素材制作 + +### 教育培训 + +- 可视化教学辅导 +- 个性化学习指导 +- 作业批改助手 +- 知识图谱构建 + +### 工业应用 + +- 质量检测分拣 +- 监控视频理解 +- 医疗影像分析 +- 自动驾驶感知 + +## 技术挑战与方向 + +### 核心难题 + +1. 模态差异:表示鸿沟 +2. 数据对齐:高质量配对数据 +3. 计算复杂:训练/推理开销 +4. 泛化能力:跨域/跨任务泛化 + +### 解决方向 + +1. 更好预训练:大规模自监督 +2. 高效架构:轻量化多模态模型 +3. 数据增强:合成与扩充 +4. 持续学习:增量学习与适应 + +## 发展趋势 + +1. 模型统一化:更统一的多模态架构 +2. 效率优化:降低开销,提升速度 +3. 能力泛化:跨模态/跨任务泛化 +4. 实时交互:支持实时多模态交互 +5. 边缘部署:适配移动与边缘设备 + +> 💡 学习建议:从 CLIP 和 LLaVA 入手,逐步深入最新进展;重视动手实践与应用开发。 diff --git a/app/docs/ai/multimodal/llava/clip/index.mdx b/app/docs/ai/multimodal/llava/clip/index.mdx deleted file mode 100644 index bec7ee0..0000000 --- a/app/docs/ai/multimodal/llava/clip/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "CLIP" -description: "CLIP 模型资料。" ---- - -# CLIP - -占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/llava/index.mdx b/app/docs/ai/multimodal/llava/index.mdx index ce58f11..b89da28 100644 --- a/app/docs/ai/multimodal/llava/index.mdx +++ b/app/docs/ai/multimodal/llava/index.mdx @@ -1,8 +1,118 @@ +--- +title: "LLaVA" +description: "LLaVA多模态大模型框架:架构解析、CLIP基础、论文精读、复现实践" +date: "2025-01-27" +tags: + - llava + - multimodal + - vision-language + - clip + - visual-instruction-tuning --- -title: "LLaVA-多模态大模型框架基础结构" -description: "LLaVA 框架相关。" ---- -# LLaVA-多模态大模型框架基础结构 +LLaVA (Large Language and Vision Assistant) 是多模态大模型的开创性框架,开启了视觉指令调优的新范式。 + +![](/images/word/word-img-03.png) + +## 核心架构 + +### 基本结构 + +``` +ViT视觉编码器 → 投影层跨模态对齐 → LLM语言生成 +``` + +![](/images/word/word-img-04.png) + +![](/images/word/word-img-05.png) + +### 技术特点 + +- **视觉编码**: 使用预训练的Vision Transformer处理图像 +- **跨模态对齐**: 通过投影层将视觉特征映射到语言空间 +- **语言生成**: 基于LLM进行多模态理解和生成 +- **指令调优**: 开创了视觉指令调优的新范式 + +## 学习资源 + +### 核心论文 + +- **论文**: [Visual Instruction Tuning](https://arxiv.org/abs/2304.08485) +- **代码**: [LLaVA GitHub](https://github.com/haotian-liu/LLaVA) +- **特色**: 首次提出视觉指令调优概念 + +### CLIP基础 + +**CLIP (Contrastive Language-Image Pre-training)** 是多模态学习的重要基础技术。 + +**架构设计**: + +- **双塔结构**: Text Encoder + Image Encoder +- **对比学习**: 通过(image, text)数据对进行预训练 +- **零样本能力**: 强大的图文匹配和分类能力 + +**学习资源**: + +- **论文**: [Learning Transferable Visual Representations](https://arxiv.org/abs/2103.00020) +- **代码**: [OpenAI CLIP](https://github.com/openai/CLIP) + +### LLaVA复现项目 + +计划复现LLaVA模型,深入理解多模态模型的训练流程和技术细节。 + +## 技术深度解析 + +### 视觉指令调优 + +**核心思想**: 让模型学会理解和执行基于图像的指令。 + +**数据构建**: + +- 图像描述任务 +- 视觉问答任务 +- 复杂推理任务 +- 指令遵循任务 + +### 跨模态对齐 + +**对齐挑战**: 视觉和语言模态的语义空间差异 + +**解决方案**: + +- 线性投影层映射 +- 对比学习预训练 +- 多任务联合训练 +- 渐进式对齐策略 + +## 应用场景 + +### 图像理解 + +- **图像描述**: 自动生成图像的详细描述 +- **视觉问答**: 基于图像内容回答问题 +- **场景分析**: 理解复杂场景和行为 +- **细节检测**: 识别图像中的关键细节 + +### 教育辅助 + +- **视觉教学**: 基于图像的知识讲解 +- **作业辅导**: 帮助理解图表和示例 +- **创意启发**: 基于视觉内容的创意引导 +- **学习评估**: 视觉化学习效果评估 + +### 内容创作 + +- **故事创作**: 基于图像创作故事 +- **营销文案**: 商品图像的描述生成 +- **社交媒体**: 图片配文和hashtag生成 +- **创意设计**: 设计思路和概念阐释 + +## 学习建议 + +1. **CLIP基础**: 理解跨模态预训练 +2. **论文精读**: 深入研究LLaVA技术细节 +3. **代码分析**: 阅读官方实现代码 +4. **复现实践**: 尝试简化版本实现 +5. **应用开发**: 构建实际应用场景 -占位页,待补充内容。 +LLaVA作为多模态大模型的里程碑工作,为理解视觉语言交互和构建智能多模态系统提供了重要基础。 diff --git a/app/docs/ai/multimodal/llava/paper-reading/index.mdx b/app/docs/ai/multimodal/llava/paper-reading/index.mdx deleted file mode 100644 index 9b6dd27..0000000 --- a/app/docs/ai/multimodal/llava/paper-reading/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "LLaVA论文精读" -description: "LLaVA 论文阅读。" ---- - -# LLaVA 论文精读 - -占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/llava/repro-todo/index.mdx b/app/docs/ai/multimodal/llava/repro-todo/index.mdx deleted file mode 100644 index 256958f..0000000 --- a/app/docs/ai/multimodal/llava/repro-todo/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "LLaVA复现TODO" -description: "LLaVA 复现待办。" ---- - -# LLaVA 复现 TODO - -占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/llava/resources/index.mdx b/app/docs/ai/multimodal/llava/resources/index.mdx deleted file mode 100644 index 46455c0..0000000 --- a/app/docs/ai/multimodal/llava/resources/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "阅读资料" -description: "LLaVA 相关阅读。" ---- - -# 阅读资料(LLaVA) - -占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/mllm/index.mdx b/app/docs/ai/multimodal/mllm/index.mdx index 857d11c..6c8c9b3 100644 --- a/app/docs/ai/multimodal/mllm/index.mdx +++ b/app/docs/ai/multimodal/mllm/index.mdx @@ -1,8 +1,4 @@ +--- +title: "MLLM 多模态大模型" +description: "多模态大模型(MLLM)资料" --- -title: "MLLM多模态大模型" -description: "多模态大模型(MLLM)资料。" ---- - -# MLLM 多模态大模型 - -占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/qwenvl/code-reading/index.mdx b/app/docs/ai/multimodal/qwenvl/code-reading/index.mdx deleted file mode 100644 index 0a2d071..0000000 --- a/app/docs/ai/multimodal/qwenvl/code-reading/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "Qwen2.5VL源码解读" -description: "Qwen2.5VL 源码阅读。" ---- - -# Qwen2.5VL 源码解读 - -占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/qwenvl/finetune-repro/index.mdx b/app/docs/ai/multimodal/qwenvl/finetune-repro/index.mdx deleted file mode 100644 index fb385ad..0000000 --- a/app/docs/ai/multimodal/qwenvl/finetune-repro/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "微调复现" -description: "QwenVL 微调复现。" ---- - -# 微调复现(QwenVL) - -占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/qwenvl/index.mdx b/app/docs/ai/multimodal/qwenvl/index.mdx index 039463f..392b34c 100644 --- a/app/docs/ai/multimodal/qwenvl/index.mdx +++ b/app/docs/ai/multimodal/qwenvl/index.mdx @@ -1,8 +1,232 @@ ---- +--- title: "QwenVL" -description: "QwenVL 多模态相关。" +description: "QwenVL多模态大模型系列:发展历程、Qwen2.5-VL技术创新、微调实践" +date: "2025-01-27" +tags: + - qwen-vl + - multimodal + - vision-language + - chinese-model + - mrope --- -# QwenVL +QwenVL是阿里巴巴开源的多模态大模型系列,在中文多模态理解方面表现出色,技术不断迭代升级。 + +## 发展历程 + +### Qwen-VL (第一代) + +- **论文**: [https://arxiv.org/abs/2308.12966](https://arxiv.org/abs/2308.12966) +- **代码**: [https://github.com/QwenLM/Qwen-VL](https://github.com/QwenLM/Qwen-VL) +- **特色**: 中文多模态能力的开创性工作 +- **能力**: 图像理解、OCR、文档分析 + +### Qwen2-VL (第二代) + +- **论文**: [https://arxiv.org/abs/2409.12191](https://arxiv.org/abs/2409.12191) +- **项目**: [HuggingFace文档](https://huggingface.co/docs/transformers/main/model_doc/qwen2_vl) +- **改进**: 架构优化、性能提升 +- **新功能**: 视频理解、多轮对话增强 + +### Qwen2.5-VL (最新一代) + +- **论文**: [https://arxiv.org/abs/2502.13923](https://arxiv.org/abs/2502.13923) +- **项目**: [https://github.com/QwenLM/Qwen2.5-VL](https://github.com/QwenLM/Qwen2.5-VL) +- **突破**: 多项技术创新和性能飞跃 + +## Qwen2.5-VL技术创新 + +### 核心技术突破 + +#### 1. 窗口注意力 (Window Attention) + +- **目标**: 提升长序列处理效率 +- **原理**: 将注意力计算限制在局部窗口内 +- **优势**: 降低计算复杂度,支持更长序列 +- **应用**: 长文档理解、高分辨率图像处理 + +#### 2. 绝对时间编码 (Absolute Time Encoding) + +- **功能**: 增强时序建模能力 +- **应用**: 视频理解、时间序列分析 +- **优势**: 更好的时间关系建模 +- **创新**: 结合绝对和相对时间信息 + +#### 3. 动态分辨率处理 (Dynamic Resolution) + +- **特点**: 适应不同尺寸输入 +- **技术**: 自适应图像分割和处理 +- **优势**: 保持图像细节,提升处理效率 +- **应用**: 任意分辨率图像理解 + +#### 4. 长视频理解 (Long Video Understanding) + +- **能力**: 支持长时间视频内容理解 +- **技术**: 时序建模和内存优化 +- **应用**: 电影分析、监控视频理解 +- **挑战**: 计算效率和内存管理 + +#### 5. 多模态旋转位置编码 (MROPE) + +- **创新**: 改进的位置编码机制 +- **优势**: 更好的空间和时间位置建模 +- **应用**: 多模态序列理解 +- **技术**: 结合旋转位置编码和多模态特性 + +## 微调复现实践 + +### 学习资源 + +#### 视频教程 + +- **详细教程**: [B站Qwen2.5-VL微调教程](https://www.bilibili.com/video/BV1djF2emEcS) +- **内容覆盖**: 环境配置、数据准备、训练过程、效果评估 +- **适用对象**: 希望实践多模态模型微调的开发者 + +#### 目标检测微调 + +- **专项教程**: [Grounding任务微调指南](https://zhuanlan.zhihu.com/p/1910287556211352282) +- **任务特点**: 结合目标检测和语言理解 +- **应用场景**: 视觉定位、物体识别、场景理解 +- **技术要点**: 边界框预测、多任务学习 + +### 微调实践步骤 + +#### 1. 环境准备 + +```bash +# 安装依赖 +pip install torch transformers +pip install qwen-vl-utils + +# 配置GPU环境 +export CUDA_VISIBLE_DEVICES=0 +``` + +#### 2. 数据准备 + +- **数据格式**: 图文对话格式 +- **质量要求**: 高质量标注数据 +- **预处理**: 图像缩放、文本清洗 +- **增强策略**: 数据增强和平衡 + +#### 3. 模型配置 + +- **基础模型**: 选择合适的预训练权重 +- **微调策略**: LoRA或全参数微调 +- **超参数**: 学习率、批次大小等 +- **硬件配置**: GPU内存和计算要求 + +#### 4. 训练监控 + +- **损失曲线**: 监控训练和验证损失 +- **性能指标**: 准确率、BLEU分数等 +- **可视化**: 训练过程可视化分析 +- **早停策略**: 防止过拟合 + +## 源码解读 + +### 预训练三阶段设计 + +#### 第一阶段:视觉预训练 + +- **目标**: 训练视觉编码器 +- **数据**: 图像标题、视觉知识、OCR数据 +- **策略**: 仅训练ViT,冻结语言模型 +- **效果**: 建立基础的视觉理解能力 + +#### 第二阶段:多模态预训练 + +- **目标**: 跨模态对齐和理解 +- **数据**: 交错数据、VQA、视频、智能体数据 +- **策略**: 解冻所有参数,联合训练 +- **重点**: 视觉-语言对齐学习 + +#### 第三阶段:长上下文预训练 + +- **目标**: 增强长序列处理能力 +- **数据**: 视频数据、智能体交互数据 +- **策略**: 增加序列长度,优化注意力机制 +- **创新**: 长视频理解和复杂推理 + +### 技术详解资源 + +- **深度解析**: [Qwen2.5-VL源码解读](https://zhuanlan.zhihu.com/p/1921289925552210138) +- **内容**: 架构设计、训练策略、优化技巧 +- **价值**: 深入理解工业级多模态模型实现 + +## 简化版实现 + +### 手撕Qwen2.5项目 + +通过简化版实现深入理解模型架构和关键技术点。 + +#### 实现要点 + +1. **注意力机制**: 窗口注意力的简化实现 +2. **位置编码**: MROPE的核心逻辑 +3. **多模态融合**: 图文特征对齐机制 +4. **动态处理**: 可变分辨率输入处理 + +#### 学习价值 + +- 掌握多模态模型核心原理 +- 理解工程实现的技术细节 +- 积累模型开发实战经验 +- 为创新研究打下基础 + +## 应用场景 + +### 文档理解 + +- **OCR增强**: 结合文字识别和理解 +- **表格分析**: 复杂表格数据提取 +- **版面分析**: 文档结构理解 +- **多语言**: 中英文混合文档处理 + +### 视频分析 + +- **内容理解**: 视频内容自动摘要 +- **时序分析**: 动作识别和事件检测 +- **多模态问答**: 基于视频的问答系统 +- **实时处理**: 流式视频分析 + +### 智能助手 + +- **多轮对话**: 基于视觉的对话系统 +- **任务执行**: 视觉引导的任务完成 +- **创意协作**: 设计和创作辅助 +- **教育应用**: 个性化学习辅导 + +## 技术发展趋势 + +### 效率优化 + +- 模型压缩和量化 +- 推理加速技术 +- 边缘设备部署 +- 实时交互能力 + +### 能力扩展 + +- 三维视觉理解 +- 视频生成能力 +- 多模态推理 +- 跨语言理解 + +### 应用深化 + +- 行业专业化 +- 个性化定制 +- 安全可控性 +- 伦理合规性 + +## 学习建议 + +1. **循序渐进**: 从Qwen-VL开始,逐步深入最新版本 +2. **动手实践**: 完成微调项目,积累实战经验 +3. **源码研读**: 深入理解工业级实现细节 +4. **社区参与**: 关注开源社区动态和技术讨论 +5. **应用创新**: 结合具体场景开发创新应用 -占位页,待补充内容。 +QwenVL系列代表了中文多模态大模型的最高水平,学习其技术实现和应用实践对于多模态AI开发具有重要价值。 diff --git a/app/docs/ai/multimodal/qwenvl/qwen2-5-vl/index.mdx b/app/docs/ai/multimodal/qwenvl/qwen2-5-vl/index.mdx deleted file mode 100644 index 56380a6..0000000 --- a/app/docs/ai/multimodal/qwenvl/qwen2-5-vl/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "Qwen2.5VL" -description: "Qwen2.5VL 相关。" ---- - -# Qwen2.5VL - -占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/video-mm-todo/index.mdx b/app/docs/ai/multimodal/video-mm-todo/index.mdx index 6852c4b..d84d248 100644 --- a/app/docs/ai/multimodal/video-mm-todo/index.mdx +++ b/app/docs/ai/multimodal/video-mm-todo/index.mdx @@ -1,8 +1,7 @@ +--- +title: "多模态视频大模型" +description: "视频多模态资料与方向" +status: todo --- -title: "多模态视频大模型-TODO" -description: "视频多模态待办。" ---- - -# 多模态视频大模型 TODO -占位页,待补充内容。 +资料后续补充。 diff --git a/app/docs/ai/multimodal/vit/index.mdx b/app/docs/ai/multimodal/vit/index.mdx index 2ce83aa..96c0161 100644 --- a/app/docs/ai/multimodal/vit/index.mdx +++ b/app/docs/ai/multimodal/vit/index.mdx @@ -1,8 +1,4 @@ +--- +title: "ViT 视觉编码器" +description: "Vision Transformer 资料" --- -title: "ViT视觉编码器" -description: "Vision Transformer 资料。" ---- - -# ViT 视觉编码器 - -占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/vit/notes/index.mdx b/app/docs/ai/multimodal/vit/notes/index.mdx deleted file mode 100644 index 3106995..0000000 --- a/app/docs/ai/multimodal/vit/notes/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "ViT学习笔记" -description: "ViT 学习笔记。" ---- - -# ViT 学习笔记 - -占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/vit/pruning-compression-papers/index.mdx b/app/docs/ai/multimodal/vit/pruning-compression-papers/index.mdx deleted file mode 100644 index 094bb5f..0000000 --- a/app/docs/ai/multimodal/vit/pruning-compression-papers/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "ViTs剪枝压缩论文" -description: "ViTs 剪枝与压缩论文。" ---- - -# ViTs 剪枝压缩论文 - -占位页,待补充内容。 diff --git a/app/docs/ai/multimodal/vit/repro-attempts/index.mdx b/app/docs/ai/multimodal/vit/repro-attempts/index.mdx deleted file mode 100644 index 9faf075..0000000 --- a/app/docs/ai/multimodal/vit/repro-attempts/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "复现尝试" -description: "ViT 复现尝试。" ---- - -# 复现尝试(ViT) - -占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/competitions/index.mdx b/app/docs/ai/recommender-systems/competitions/index.mdx deleted file mode 100644 index c0cdc64..0000000 --- a/app/docs/ai/recommender-systems/competitions/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "相关比赛" -description: "推荐系统相关比赛。" ---- - -# 相关比赛(推荐系统) - -占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/index.mdx b/app/docs/ai/recommender-systems/index.mdx index def92fd..dba4ab4 100644 --- a/app/docs/ai/recommender-systems/index.mdx +++ b/app/docs/ai/recommender-systems/index.mdx @@ -1,8 +1,171 @@ ---- +--- title: "推荐系统" -description: "推荐系统学习路径、资料与项目目录。" +description: "推荐系统学习路径、实战项目、论文资源和相关比赛" +date: "2025-01-27" +tags: + - recommender-systems + - recsys + - llm4rec + - collaborative-filtering + - deep-learning --- -# 推荐系统 +推荐系统是AI在工业界最重要的应用之一,从传统的协同过滤到现代的大模型推荐,本节涵盖推荐系统的完整学习路径。 + +## 8.1 推荐系统学习路径(WIP) + +### 8.1.1 学习业务 + +搜索&广告&推荐的scope不太一样: + +- **搜索**: 关注query召回,理解用户搜索意图 +- **广告**: 关注广告主&广告平台&用户体验三方博弈 +- **推荐**: 关注长期生态,用户长期价值最大化 + +**核心差异**: + +- 推荐只看item融合得分的序是否准确 +- 广告还要保证得分的距离(涉及到出价机制) +- 一般来说,推荐系统item得分可以简单概括为:**recall → ctr × cvr** +- 广告系统还要乘上bid(出价)和deep_cvr得分(如付费金额) + +**业务理解建议**: 不管是搜索广告还是推荐,都建议买一本《计算广告》把业务读懂。 + +### 8.1.2 学习模型 + +推荐系统模型发展历程: + +1. **传统方法**: 协同过滤、矩阵分解 +2. **深度学习**: DeepFM、Wide&Deep、DIN等 +3. **预训练模型**: BERT4Rec、SASRec等 +4. **大模型时代**: LLM4Rec、ChatRec等 + +## 8.2 推荐学习资料 + +### 8.2.1 王树森推荐系统课程 + +- **视频地址**: [B站推荐系统课程](https://www.bilibili.com/video/BV1pS4y1a7QT) +- **特色**: 理论与实践并重,工业界经验丰富 +- **内容**: 从基础的协同过滤到深度学习推荐模型 + +### 8.2.2 Datawhale大模型推荐系统组队学习 + +- **教程地址**: [GitHub仓库](https://github.com/datawhalechina/fun-rec) +- **在线网站**: [https://datawhalechina.github.io/fun-rec/](https://datawhalechina.github.io/fun-rec/#/) +- **特色**: 组队学习模式,适合初学者入门 + +### 8.2.3 《互联网大厂推荐算法实战》 + +- **资源链接**: [知乎文章介绍](https://zhuanlan.zhihu.com/p/623814354) +- **特色**: 工业界实战经验分享 +- **内容**: 大厂推荐算法的实际应用案例 + +## 8.3 初学者实战项目 + +### 8.3.1 阿里天池新闻推荐系统 + +- **比赛地址**: [天池新闻推荐](https://tianchi.aliyun.com/competition/entrance/531842/introduction) +- **特色**: 真实业务场景,数据质量高 +- **学习价值**: 完整的推荐系统开发流程 + +**推荐系统实战项目合集**: 整理更多实战项目资源 + +## 8.4 推荐系统学习笔记 + +📊 **推荐系统学习笔记表格**: 查看完整的学习笔记整理 + +**核心内容包括**: + +- 经典推荐算法原理 +- 深度学习推荐模型 +- 工业界部署经验 +- 评估指标和优化策略 + +## 8.5 推荐系统项目论文(待筛选) + +GitHub论文合集,持续更新。内容比较贴近业务,不太涉及生成式推荐。 + +📊 **推荐系统论文筛选表格**: 查看完整的论文筛选列表 + +**筛选状态**: + +- 未开始:待筛选 +- 评估中:正在评估 +- 已完成:已审理完成 +- 不推荐:质量不达标 +- 未开源:代码未开源 + +### LLM4REC + +大模型在推荐系统中的应用,包括: + +- **预训练推荐模型**: 使用大规模数据预训练 +- **生成式推荐**: 将推荐转化为生成任务 +- **多模态推荐**: 结合文本、图像等多模态信息 +- **对话式推荐**: 基于自然语言交互的推荐 + +## 8.6 相关比赛 + +### 腾讯广告大赛 + +- **官网**: [https://algo.qq.com](https://algo.qq.com) +- **赛题特点**: 参赛者需基于脱敏处理后用户的协同、文本、视觉等全模态历史行为数据,预测其下一次可能交互的广告 +- **技术要求**: 每个行为包含广告的ID类特征,以及多模态信息(如图像、文本等) +- **创新方向**: 通过提供基线模型,增加方案评审环节等方式,引导选手突破传统判别式推荐算法框架,探索生成式推荐 + +### 多模态短视频点击预测项目 - 马栏山杯 + +- **官网**: [https://challenge.ai.mgtv.com/](https://challenge.ai.mgtv.com/) +- **赛题**: 基于芒果TV的多模态特征,结合用户特征和行为数据,预测用户观看的视频和完播率 +- **技术亮点**: 2025 MGTV多模态视频推荐0.256+baseline完整分享 + +### Kaggle Playground - FlightRank2025 + +- **赛题**: 2025旅客个性化航班推荐 +- **目标**: 构建智能航班排名模型,预测商务旅客将从搜索结果中选择哪个航班选项 +- **参考方案**: [CatBoost Ranker Baseline](https://www.kaggle.com/code/ka1242/catboost-ranker-baseline-flightrank-2025) + +## 技术发展趋势 + +### 传统推荐 → 大模型推荐 + +1. **表示学习**: 从稀疏特征到dense embedding +2. **序列建模**: 从静态特征到动态序列 +3. **多模态融合**: 从单一模态到多模态信息 +4. **生成式推荐**: 从判别式模型到生成式模型 + +### 工业界部署考虑 + +1. **延迟要求**: 毫秒级响应时间 +2. **throughput**: 高并发请求处理 +3. **存储优化**: 模型压缩和量化 +4. **A/B测试**: 在线效果评估 + +### 评估指标体系 + +**离线指标**: + +- 准确率类:Precision, Recall, F1 +- 排序类:NDCG, MAP, MRR +- 多样性:Coverage, Diversity + +**在线指标**: + +- 点击率 (CTR) +- 转化率 (CVR) +- 停留时间 +- 用户留存 + +## 学习建议 + +1. **业务理解优先**: 深入理解推荐业务的本质和目标 +2. **算法进阶**: 从经典算法开始,逐步深入深度学习方法 +3. **实战导向**: 通过项目和比赛积累实际经验 +4. **工程能力**: 重视系统设计和工程实现能力 +5. **持续学习**: 关注大模型等前沿技术在推荐中的应用 + +## 来自群文档摘录 -占位页,待补充内容。 +- LLM4REC(大模型推荐) +- 学习路径(WIP):学习业务、学习模型 +- 推荐学习资料:王树森、Datawhale、实战项目 diff --git a/app/docs/ai/recommender-systems/notes/index.mdx b/app/docs/ai/recommender-systems/notes/index.mdx deleted file mode 100644 index be64b6a..0000000 --- a/app/docs/ai/recommender-systems/notes/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "推荐系统学习笔记" -description: "学习笔记。" ---- - -# 推荐系统学习笔记 - -占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/papers-toscreen/index.mdx b/app/docs/ai/recommender-systems/papers-toscreen/index.mdx deleted file mode 100644 index 0869314..0000000 --- a/app/docs/ai/recommender-systems/papers-toscreen/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "推荐系统项目论文(待筛选)" -description: "论文筛选列表。" ---- - -# 推荐系统项目论文(待筛选) - -占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/papers-toscreen/llm4rec/index.mdx b/app/docs/ai/recommender-systems/papers-toscreen/llm4rec/index.mdx deleted file mode 100644 index 3a5ec05..0000000 --- a/app/docs/ai/recommender-systems/papers-toscreen/llm4rec/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "LLM4REC" -description: "LLM4REC 论文与资料。" ---- - -# LLM4REC - -占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/projects/index.mdx b/app/docs/ai/recommender-systems/projects/index.mdx deleted file mode 100644 index 0803251..0000000 --- a/app/docs/ai/recommender-systems/projects/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "初学者实战项目" -description: "推荐系统入门实战项目。" ---- - -# 初学者实战项目(推荐系统) - -占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/projects/tianchi-news-todo/index.mdx b/app/docs/ai/recommender-systems/projects/tianchi-news-todo/index.mdx deleted file mode 100644 index cd11f03..0000000 --- a/app/docs/ai/recommender-systems/projects/tianchi-news-todo/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "阿里天池新闻推荐系统TODO" -description: "天池新闻推荐系统项目待办。" ---- - -# 阿里天池新闻推荐系统 TODO - -占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/resources/datawhale-llm-recsys/index.mdx b/app/docs/ai/recommender-systems/resources/datawhale-llm-recsys/index.mdx deleted file mode 100644 index 95e2191..0000000 --- a/app/docs/ai/recommender-systems/resources/datawhale-llm-recsys/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "Datawhale大模型推荐系统组队学" -description: "Datawhale 组队学习资料。" ---- - -# Datawhale 大模型推荐系统组队学 - -占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/resources/index.mdx b/app/docs/ai/recommender-systems/resources/index.mdx deleted file mode 100644 index 67ed718..0000000 --- a/app/docs/ai/recommender-systems/resources/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "推荐学习资料" -description: "推荐系统学习资料。" ---- - -# 推荐学习资料(推荐系统) - -占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/resources/industry-practice/index.mdx b/app/docs/ai/recommender-systems/resources/industry-practice/index.mdx deleted file mode 100644 index cd19e0e..0000000 --- a/app/docs/ai/recommender-systems/resources/industry-practice/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "《互联网大厂推荐算法实战》" -description: "互联网大厂实践资料。" ---- - -# 《互联网大厂推荐算法实战》 - -占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/resources/wangshusen/index.mdx b/app/docs/ai/recommender-systems/resources/wangshusen/index.mdx deleted file mode 100644 index c85bf04..0000000 --- a/app/docs/ai/recommender-systems/resources/wangshusen/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "王树森" -description: "王树森老师推荐系统资料。" ---- - -# 王树森(推荐系统) - -占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/roadmap-wip/business/index.mdx b/app/docs/ai/recommender-systems/roadmap-wip/business/index.mdx deleted file mode 100644 index 695ccdd..0000000 --- a/app/docs/ai/recommender-systems/roadmap-wip/business/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "学习业务" -description: "推荐系统业务相关。" ---- - -# 学习业务(推荐系统) - -占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/roadmap-wip/index.mdx b/app/docs/ai/recommender-systems/roadmap-wip/index.mdx deleted file mode 100644 index 0b6eff1..0000000 --- a/app/docs/ai/recommender-systems/roadmap-wip/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "推荐系统学习路径(WIP)" -description: "学习路径(进行中)。" ---- - -# 推荐系统学习路径(WIP) - -占位页,待补充内容。 diff --git a/app/docs/ai/recommender-systems/roadmap-wip/models/index.mdx b/app/docs/ai/recommender-systems/roadmap-wip/models/index.mdx deleted file mode 100644 index 275af21..0000000 --- a/app/docs/ai/recommender-systems/roadmap-wip/models/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "学习模型" -description: "推荐系统模型学习。" ---- - -# 学习模型(推荐系统) - -占位页,待补充内容。 diff --git a/app/docs/ai/reinforcement-learning/cot/index.mdx b/app/docs/ai/reinforcement-learning/cot/index.mdx deleted file mode 100644 index 9d7b29b..0000000 --- a/app/docs/ai/reinforcement-learning/cot/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "思维链COT" -description: "思维链(COT)相关资料。" ---- - -# 思维链 COT - -占位页,待补充内容。 diff --git a/app/docs/ai/reinforcement-learning/cot/latent-cot/index.mdx b/app/docs/ai/reinforcement-learning/cot/latent-cot/index.mdx deleted file mode 100644 index f548361..0000000 --- a/app/docs/ai/reinforcement-learning/cot/latent-cot/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "Latent cot" -description: "Latent COT 相关资料。" ---- - -# Latent COT - -占位页,待补充内容。 diff --git a/app/docs/ai/reinforcement-learning/cot/mcot/index.mdx b/app/docs/ai/reinforcement-learning/cot/mcot/index.mdx deleted file mode 100644 index 9484231..0000000 --- a/app/docs/ai/reinforcement-learning/cot/mcot/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "MCOT" -description: "MCOT 相关资料。" ---- - -# MCOT - -占位页,待补充内容。 diff --git a/app/docs/ai/reinforcement-learning/deepseek-r1-todo/index.mdx b/app/docs/ai/reinforcement-learning/deepseek-r1-todo/index.mdx deleted file mode 100644 index 92ceb57..0000000 --- a/app/docs/ai/reinforcement-learning/deepseek-r1-todo/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "DEEPSEEK-R1解读TODO" -description: "DEEPSEEK-R1 相关解读的待办。" ---- - -# DEEPSEEK-R1 解读 TODO - -占位页,待补充内容。 diff --git a/app/docs/ai/reinforcement-learning/grpo-repro/index.mdx b/app/docs/ai/reinforcement-learning/grpo-repro/index.mdx deleted file mode 100644 index 054d31f..0000000 --- a/app/docs/ai/reinforcement-learning/grpo-repro/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "GRPO复现参考" -description: "GRPO 复现相关参考。" ---- - -# GRPO 复现参考 - -占位页,待补充内容。 diff --git a/app/docs/ai/reinforcement-learning/index.mdx b/app/docs/ai/reinforcement-learning/index.mdx index f818dff..ca5c9a0 100644 --- a/app/docs/ai/reinforcement-learning/index.mdx +++ b/app/docs/ai/reinforcement-learning/index.mdx @@ -1,8 +1,149 @@ ---- +--- title: "强化学习" -description: "强化学习笔记与资料。" +description: "强化学习基础理论、思维链COT、GRPO等在大模型中的应用" +date: "2025-01-27" +tags: + - reinforcement-learning + - rlhf + - cot + - grpo + - ppo --- -# 强化学习 +强化学习在大模型时代发挥着重要作用,特别是在推理和对齐方面。从RLHF到思维链推理,强化学习为大模型的能力提升提供了关键技术支撑。 + +## 推荐学习资料 + +### 西湖大学赵世钰强化学习课程 + +**课程特色**: 强化学习的数学原理,从零开始到透彻理解 + +**学习资源**: + +- **书籍与PPT**: [GitHub仓库](https://github.com/MathFoundationRL/Book-Mathmatical-Foundation-of-Reinforcement-Learning) +- **视频课程**: [B站完整课程](https://www.bilibili.com/video/BV1sd4y167NS/) +- **特色**: 数学推导严谨,理论基础扎实 + +### RethinkFun强化学习系列 + +**推荐UP主**: [@RethinkFun](https://space.bilibili.com/18235884/) + +**核心视频**: + +- [强化学习RL基本原理](https://www.bilibili.com/video/BV1rooaYVEk8/) - 大白话解释,原理图解+公式推导 +- [PPO和GRPO算法流程](https://www.bilibili.com/video/BV15cZYYvEhz/) - 算法原理图解 + +### 入门教程 + +- **强化学习极简入门** - 通俗理解MDP、DP MC TD和Q学习、策略梯度、PPO + +## 强化学习项目论文(待筛选) + +> 📊 **论文筛选表格**: 点击查看完整的强化学习论文待筛选列表 +> +> 状态分类:未开始、评估中、已完成、不推荐、未开源 + +## GRPO复现参考 + +### TRL框架 + +- **项目**: [TRL (Transformer Reinforcement Learning)](https://github.com/huggingface/trl) +- **特色**: HuggingFace官方强化学习框架 +- **支持**: GRPO、PPO、DPO等多种算法 + +## 思维链COT + +### 核心概念 + +思维链推理是让大模型展示推理过程的重要技术,提高了模型的可解释性和推理能力。 + +### 重要论文与项目 + +#### CoT-Valve: Length-Compressible Chain-of-Thought Tuning + +- **特色**: 可压缩长度的思维链调优技术 +- **来源**: [HuggingFace Daily Papers](https://huggingface.co/papers/date/2025-07-25) + +#### MCOT (Multi-Chain-of-Thought) + +- **项目**: [Awesome-MCoT](https://github.com/yaotingwangofficial/Awesome-MCoT) +- **特色**: 多思维链推理,提升复杂推理任务性能 + +#### Latent CoT (潜在思维链) + +- **项目**: [Awesome-Latent-CoT](https://github.com/awesome-latent-cot) +- **核心理念**: 将推理过程从语言符号转移到潜在空间中,捕捉更丰富和复杂的思维过程 + +### 多模态COT + +结合视觉和文本信息的思维链推理,在多模态任务中展现强大能力。 + +### 潜空间推理综述 + +- **重要综述**: [哈工大首篇潜空间推理综述](https://zhuanlan.zhihu.com/p/1930639357087298531) +- **核心观点**: 重构大模型推理能力边界,探索潜在空间中的推理机制 + +## DEEPSEEK-R1解读 + +DeepSeek-R1作为推理能力突出的大模型,其技术细节值得深入研究: + +- 推理机制设计 +- 训练策略分析 +- 性能评估方法 + +## 学习路径建议 + +### 基础阶段 + +1. **数学基础**: 概率论、动态规划、优化理论 +2. **基本概念**: MDP、值函数、策略、回报 +3. **经典算法**: Q-learning、策略梯度、Actor-Critic + +### 进阶阶段 + +1. **现代算法**: PPO、TRPO、SAC、TD3 +2. **大模型应用**: RLHF、Constitutional AI +3. **思维链技术**: CoT、MCOT、Latent CoT + +### 实践阶段 + +1. **框架使用**: OpenAI Gym、Stable Baselines3、TRL +2. **项目实战**: 游戏AI、对话系统优化 +3. **论文复现**: 关键算法的复现与改进 + +## 应用领域 + +### 大模型对齐 + +- **RLHF**: 从人类反馈中学习,提升模型输出质量 +- **Constitutional AI**: 基于原则的AI对齐方法 +- **DPO**: 直接偏好优化,简化RLHF流程 + +### 推理能力提升 + +- **思维链推理**: 提升复杂推理任务性能 +- **工具使用**: 训练模型使用外部工具 +- **代码生成**: 提升编程能力 + +### 多智能体系统 + +- **协作学习**: 多个智能体协同解决问题 +- **竞争学习**: 通过竞争提升个体能力 +- **社会学习**: 从其他智能体行为中学习 + +## 前沿趋势 + +1. **离线强化学习**: 从静态数据集中学习策略 +2. **元学习**: 快速适应新任务的学习算法 +3. **安全强化学习**: 确保学习过程和结果的安全性 +4. **可解释强化学习**: 提升决策过程的可解释性 + +## 来自 UNSW IT-AI内卷地狱 文档摘录 + +- 思维链 COT / Multi-step COT(MCOT)/ Latent CoT -占位页,待补充内容。 +- GRPO 学习资料: + - B站合集:https://space.bilibili.com/18235884/search?keyword=GRPO + - PPO/GRPO 算法讲解:https://www.bilibili.com/video/BV15cZYYvEhz/ + - 论文与资料汇总:https://github.com/yaotingwangofficial/Awesome-MCoT +- 强化学习数学基础书籍:GitHub https://github.com/MathFoundationRL/Book-Mathmatical-Foundation-of-Reinforcement-Learning diff --git a/app/docs/ai/reinforcement-learning/papers-toscreen/index.mdx b/app/docs/ai/reinforcement-learning/papers-toscreen/index.mdx deleted file mode 100644 index b85d5f0..0000000 --- a/app/docs/ai/reinforcement-learning/papers-toscreen/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "强化学习项目论文(待筛选)" -description: "项目论文筛选列表。" ---- - -# 强化学习项目论文(待筛选) - -占位页,待补充内容。 diff --git a/app/docs/ai/reinforcement-learning/resources/index.mdx b/app/docs/ai/reinforcement-learning/resources/index.mdx deleted file mode 100644 index 3e555e6..0000000 --- a/app/docs/ai/reinforcement-learning/resources/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "推荐学习资料" -description: "强化学习资料汇总。" ---- - -# 推荐学习资料(强化学习) - -占位页,待补充内容。 diff --git a/app/docs/ai/reinforcement-learning/resources/zhaoshiyu-course/index.mdx b/app/docs/ai/reinforcement-learning/resources/zhaoshiyu-course/index.mdx deleted file mode 100644 index 07a3344..0000000 --- a/app/docs/ai/reinforcement-learning/resources/zhaoshiyu-course/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "西湖大学赵世钰强化学习课程" -description: "赵世钰强化学习课程相关资料。" ---- - -# 西湖大学赵世钰强化学习课程 - -占位页,待补充内容。 diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..aab6eab --- /dev/null +++ b/package-lock.json @@ -0,0 +1,10812 @@ +{ + "name": "docs-site", + "version": "0.1.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "docs-site", + "version": "0.1.0", + "hasInstallScript": true, + "dependencies": { + "@types/mdx": "^2.0.13", + "class-variance-authority": "^0.7.1", + "clsx": "^2.1.1", + "fumadocs-core": "^15.7.11", + "fumadocs-mdx": "^11.9.1", + "fumadocs-ui": "^15.7.11", + "lucide-react": "^0.544.0", + "next": "^15.5.3", + "react": "^19.1.1", + "react-dom": "^19.1.1", + "rehype-autolink-headings": "^7.1.0", + "rehype-slug": "^6.0.0", + "remark-gfm": "^4.0.1", + "tailwind-merge": "^3.3.1" + }, + "devDependencies": { + "@tailwindcss/postcss": "^4.1.13", + "@types/node": "latest", + "@types/react": "^19.1.12", + "@types/react-dom": "^19.1.9", + "autoprefixer": "^10.4.21", + "eslint": "^9.35.0", + "eslint-config-next": "^15.5.3", + "husky": "^9.1.7", + "lint-staged": "^16.1.6", + "postcss": "^8.5.6", + "prettier": "3.6.2", + "tailwindcss": "^4.1.13", + "tw-animate-css": "^1.3.8", + "typescript": "^5.6.3" + } + }, + "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/@emnapi/core": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.5.0.tgz", + "integrity": "sha512-sbP8GzB1WDzacS8fgNPpHlp6C9VZe+SJP3F90W9rLemaQj2PzIuTEl1qDOYQf58YIpyjViI24y9aPWCjEzY2cg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.1.0", + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/runtime": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.5.0.tgz", + "integrity": "sha512-97/BJ3iXHww3djw6hYIfErCZFee7qCtrneuLa20UXFCOTCfBM2cvQHjWJ2EG0s0MtdNwInarqCTz35i4wWXHsQ==", + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/wasi-threads": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz", + "integrity": "sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.9.tgz", + "integrity": "sha512-OaGtL73Jck6pBKjNIe24BnFE6agGl+6KxDtTfHhy1HmhthfKouEcOhqpSL64K4/0WCtbKFLOdzD/44cJ4k9opA==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.9.tgz", + "integrity": "sha512-5WNI1DaMtxQ7t7B6xa572XMXpHAaI/9Hnhk8lcxF4zVN4xstUgTlvuGDorBguKEnZO70qwEcLpfifMLoxiPqHQ==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.9.tgz", + "integrity": "sha512-IDrddSmpSv51ftWslJMvl3Q2ZT98fUSL2/rlUXuVqRXHCs5EUF1/f+jbjF5+NG9UffUDMCiTyh8iec7u8RlTLg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.9.tgz", + "integrity": "sha512-I853iMZ1hWZdNllhVZKm34f4wErd4lMyeV7BLzEExGEIZYsOzqDWDf+y082izYUE8gtJnYHdeDpN/6tUdwvfiw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.9.tgz", + "integrity": "sha512-XIpIDMAjOELi/9PB30vEbVMs3GV1v2zkkPnuyRRURbhqjyzIINwj+nbQATh4H9GxUgH1kFsEyQMxwiLFKUS6Rg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.9.tgz", + "integrity": "sha512-jhHfBzjYTA1IQu8VyrjCX4ApJDnH+ez+IYVEoJHeqJm9VhG9Dh2BYaJritkYK3vMaXrf7Ogr/0MQ8/MeIefsPQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.9.tgz", + "integrity": "sha512-z93DmbnY6fX9+KdD4Ue/H6sYs+bhFQJNCPZsi4XWJoYblUqT06MQUdBCpcSfuiN72AbqeBFu5LVQTjfXDE2A6Q==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.9.tgz", + "integrity": "sha512-mrKX6H/vOyo5v71YfXWJxLVxgy1kyt1MQaD8wZJgJfG4gq4DpQGpgTB74e5yBeQdyMTbgxp0YtNj7NuHN0PoZg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.9.tgz", + "integrity": "sha512-HBU2Xv78SMgaydBmdor38lg8YDnFKSARg1Q6AT0/y2ezUAKiZvc211RDFHlEZRFNRVhcMamiToo7bDx3VEOYQw==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.9.tgz", + "integrity": "sha512-BlB7bIcLT3G26urh5Dmse7fiLmLXnRlopw4s8DalgZ8ef79Jj4aUcYbk90g8iCa2467HX8SAIidbL7gsqXHdRw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.9.tgz", + "integrity": "sha512-e7S3MOJPZGp2QW6AK6+Ly81rC7oOSerQ+P8L0ta4FhVi+/j/v2yZzx5CqqDaWjtPFfYz21Vi1S0auHrap3Ma3A==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.9.tgz", + "integrity": "sha512-Sbe10Bnn0oUAB2AalYztvGcK+o6YFFA/9829PhOCUS9vkJElXGdphz0A3DbMdP8gmKkqPmPcMJmJOrI3VYB1JQ==", + "cpu": [ + "loong64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.9.tgz", + "integrity": "sha512-YcM5br0mVyZw2jcQeLIkhWtKPeVfAerES5PvOzaDxVtIyZ2NUBZKNLjC5z3/fUlDgT6w89VsxP2qzNipOaaDyA==", + "cpu": [ + "mips64el" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.9.tgz", + "integrity": "sha512-++0HQvasdo20JytyDpFvQtNrEsAgNG2CY1CLMwGXfFTKGBGQT3bOeLSYE2l1fYdvML5KUuwn9Z8L1EWe2tzs1w==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.9.tgz", + "integrity": "sha512-uNIBa279Y3fkjV+2cUjx36xkx7eSjb8IvnL01eXUKXez/CBHNRw5ekCGMPM0BcmqBxBcdgUWuUXmVWwm4CH9kg==", + "cpu": [ + "riscv64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.9.tgz", + "integrity": "sha512-Mfiphvp3MjC/lctb+7D287Xw1DGzqJPb/J2aHHcHxflUo+8tmN/6d4k6I2yFR7BVo5/g7x2Monq4+Yew0EHRIA==", + "cpu": [ + "s390x" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.9.tgz", + "integrity": "sha512-iSwByxzRe48YVkmpbgoxVzn76BXjlYFXC7NvLYq+b+kDjyyk30J0JY47DIn8z1MO3K0oSl9fZoRmZPQI4Hklzg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.9.tgz", + "integrity": "sha512-9jNJl6FqaUG+COdQMjSCGW4QiMHH88xWbvZ+kRVblZsWrkXlABuGdFJ1E9L7HK+T0Yqd4akKNa/lO0+jDxQD4Q==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.9.tgz", + "integrity": "sha512-RLLdkflmqRG8KanPGOU7Rpg829ZHu8nFy5Pqdi9U01VYtG9Y0zOG6Vr2z4/S+/3zIyOxiK6cCeYNWOFR9QP87g==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.9.tgz", + "integrity": "sha512-YaFBlPGeDasft5IIM+CQAhJAqS3St3nJzDEgsgFixcfZeyGPCd6eJBWzke5piZuZ7CtL656eOSYKk4Ls2C0FRQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.9.tgz", + "integrity": "sha512-1MkgTCuvMGWuqVtAvkpkXFmtL8XhWy+j4jaSO2wxfJtilVCi0ZE37b8uOdMItIHz4I6z1bWWtEX4CJwcKYLcuA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openharmony-arm64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.9.tgz", + "integrity": "sha512-4Xd0xNiMVXKh6Fa7HEJQbrpP3m3DDn43jKxMjxLLRjWnRsfxjORYJlXPO4JNcXtOyfajXorRKY9NkOpTHptErg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.9.tgz", + "integrity": "sha512-WjH4s6hzo00nNezhp3wFIAfmGZ8U7KtrJNlFMRKxiI9mxEK1scOMAaa9i4crUtu+tBr+0IN6JCuAcSBJZfnphw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.9.tgz", + "integrity": "sha512-mGFrVJHmZiRqmP8xFOc6b84/7xa5y5YvR1x8djzXpJBSv/UsNK6aqec+6JDjConTgvvQefdGhFDAs2DLAds6gQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.9.tgz", + "integrity": "sha512-b33gLVU2k11nVx1OhX3C8QQP6UHQK4ZtN56oFWvVXvz2VkDoe6fbG8TOgHFxEvqeqohmRnIHe5A1+HADk4OQww==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.9.tgz", + "integrity": "sha512-PPOl1mi6lpLNQxnGoyAfschAodRFYXJ+9fs6WHXz7CSWKbOqiMZsubC+BQsVKuul+3vKLuwTHsS2c2y9EoKwxQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.0.tgz", + "integrity": "sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/config-array": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.0.tgz", + "integrity": "sha512-ENIdc4iLu0d93HeYirvKmrzshzofPw6VkZRKQGe9Nv46ZnWUzcF1xV01dcvEg/1wXUR61OmmlSfyeyO7EvjLxQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/object-schema": "^2.1.6", + "debug": "^4.3.1", + "minimatch": "^3.1.2" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/config-helpers": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.3.1.tgz", + "integrity": "sha512-xR93k9WhrDYpXHORXpxVL5oHj3Era7wo6k/Wd8/IsQNnZUTzkGS29lyn3nAT05v6ltUuTFVCCYDEGfy2Or/sPA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/core": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.15.2.tgz", + "integrity": "sha512-78Md3/Rrxh83gCxoUc0EiciuOHsIITzLy53m3d9UyiW8y9Dj2D29FeETqyKA+BRK76tnTp6RXWb3pCay8Oyomg==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", + "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/js": { + "version": "9.35.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.35.0.tgz", + "integrity": "sha512-30iXE9whjlILfWobBkNerJo+TXYsgVM5ERQwMcMKCHckHflCmf7wXDAHlARoWnh0s1U72WqlbeyE7iAcCzuCPw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + } + }, + "node_modules/@eslint/object-schema": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz", + "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.5.tgz", + "integrity": "sha512-Z5kJ+wU3oA7MMIqVR9tyZRtjYPr4OC004Q4Rw7pgOKUOKkJfZ3O24nz3WYfGRpMDNmcOi3TwQOmgm7B7Tpii0w==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.15.2", + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@floating-ui/core": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.7.3.tgz", + "integrity": "sha512-sGnvb5dmrJaKEZ+LDIpguvdX3bDlEllmv4/ClQ9awcmCZrlx5jQyyMWFM5kBI+EyNOCDDiKk8il0zeuX3Zlg/w==", + "license": "MIT", + "dependencies": { + "@floating-ui/utils": "^0.2.10" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.7.4.tgz", + "integrity": "sha512-OOchDgh4F2CchOX94cRVqhvy7b3AFb+/rQXyswmzmGakRfkMgoWVjfnLWkRirfLEfuD4ysVW16eXzwt3jHIzKA==", + "license": "MIT", + "dependencies": { + "@floating-ui/core": "^1.7.3", + "@floating-ui/utils": "^0.2.10" + } + }, + "node_modules/@floating-ui/react-dom": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.6.tgz", + "integrity": "sha512-4JX6rEatQEvlmgU80wZyq9RT96HZJa88q8hp0pBd+LrczeDI4o6uA2M+uvxngVHo4Ihr8uibXxH6+70zhAFrVw==", + "license": "MIT", + "dependencies": { + "@floating-ui/dom": "^1.7.4" + }, + "peerDependencies": { + "react": ">=16.8.0", + "react-dom": ">=16.8.0" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.10.tgz", + "integrity": "sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==", + "license": "MIT" + }, + "node_modules/@formatjs/intl-localematcher": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.6.1.tgz", + "integrity": "sha512-ePEgLgVCqi2BBFnTMWPfIghu6FkbZnnBVhO2sSxvLfrdFw7wCHAHiDoM2h4NRgjbaY7+B7HgOLZGkK187pZTZg==", + "license": "MIT", + "dependencies": { + "tslib": "^2.8.0" + } + }, + "node_modules/@humanfs/core": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.7", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.7.tgz", + "integrity": "sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanfs/core": "^0.19.1", + "@humanwhocodes/retry": "^0.4.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/retry": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", + "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@img/sharp-darwin-arm64": { + "version": "0.34.3", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.34.3.tgz", + "integrity": "sha512-ryFMfvxxpQRsgZJqBd4wsttYQbCxsJksrv9Lw/v798JcQ8+w84mBWuXwl+TT0WJ/WrYOLaYpwQXi3sA9nTIaIg==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-arm64": "1.2.0" + } + }, + "node_modules/@img/sharp-darwin-x64": { + "version": "0.34.3", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.34.3.tgz", + "integrity": "sha512-yHpJYynROAj12TA6qil58hmPmAwxKKC7reUqtGLzsOHfP7/rniNGTL8tjWX6L3CTV4+5P4ypcS7Pp+7OB+8ihA==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-x64": "1.2.0" + } + }, + "node_modules/@img/sharp-libvips-darwin-arm64": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.2.0.tgz", + "integrity": "sha512-sBZmpwmxqwlqG9ueWFXtockhsxefaV6O84BMOrhtg/YqbTaRdqDE7hxraVE3y6gVM4eExmfzW4a8el9ArLeEiQ==", + "cpu": [ + "arm64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "darwin" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-darwin-x64": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.2.0.tgz", + "integrity": "sha512-M64XVuL94OgiNHa5/m2YvEQI5q2cl9d/wk0qFTDVXcYzi43lxuiFTftMR1tOnFQovVXNZJ5TURSDK2pNe9Yzqg==", + "cpu": [ + "x64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "darwin" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-arm": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.2.0.tgz", + "integrity": "sha512-mWd2uWvDtL/nvIzThLq3fr2nnGfyr/XMXlq8ZJ9WMR6PXijHlC3ksp0IpuhK6bougvQrchUAfzRLnbsen0Cqvw==", + "cpu": [ + "arm" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-arm64": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.2.0.tgz", + "integrity": "sha512-RXwd0CgG+uPRX5YYrkzKyalt2OJYRiJQ8ED/fi1tq9WQW2jsQIn0tqrlR5l5dr/rjqq6AHAxURhj2DVjyQWSOA==", + "cpu": [ + "arm64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-ppc64": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.2.0.tgz", + "integrity": "sha512-Xod/7KaDDHkYu2phxxfeEPXfVXFKx70EAFZ0qyUdOjCcxbjqyJOEUpDe6RIyaunGxT34Anf9ue/wuWOqBW2WcQ==", + "cpu": [ + "ppc64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-s390x": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.2.0.tgz", + "integrity": "sha512-eMKfzDxLGT8mnmPJTNMcjfO33fLiTDsrMlUVcp6b96ETbnJmd4uvZxVJSKPQfS+odwfVaGifhsB07J1LynFehw==", + "cpu": [ + "s390x" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-x64": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.2.0.tgz", + "integrity": "sha512-ZW3FPWIc7K1sH9E3nxIGB3y3dZkpJlMnkk7z5tu1nSkBoCgw2nSRTFHI5pB/3CQaJM0pdzMF3paf9ckKMSE9Tg==", + "cpu": [ + "x64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linuxmusl-arm64": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.2.0.tgz", + "integrity": "sha512-UG+LqQJbf5VJ8NWJ5Z3tdIe/HXjuIdo4JeVNADXBFuG7z9zjoegpzzGIyV5zQKi4zaJjnAd2+g2nna8TZvuW9Q==", + "cpu": [ + "arm64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linuxmusl-x64": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.2.0.tgz", + "integrity": "sha512-SRYOLR7CXPgNze8akZwjoGBoN1ThNZoqpOgfnOxmWsklTGVfJiGJoC/Lod7aNMGA1jSsKWM1+HRX43OP6p9+6Q==", + "cpu": [ + "x64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-linux-arm": { + "version": "0.34.3", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.34.3.tgz", + "integrity": "sha512-oBK9l+h6KBN0i3dC8rYntLiVfW8D8wH+NPNT3O/WBHeW0OQWCjfWksLUaPidsrDKpJgXp3G3/hkmhptAW0I3+A==", + "cpu": [ + "arm" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm": "1.2.0" + } + }, + "node_modules/@img/sharp-linux-arm64": { + "version": "0.34.3", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.34.3.tgz", + "integrity": "sha512-QdrKe3EvQrqwkDrtuTIjI0bu6YEJHTgEeqdzI3uWJOH6G1O8Nl1iEeVYRGdj1h5I21CqxSvQp1Yv7xeU3ZewbA==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm64": "1.2.0" + } + }, + "node_modules/@img/sharp-linux-ppc64": { + "version": "0.34.3", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.34.3.tgz", + "integrity": "sha512-GLtbLQMCNC5nxuImPR2+RgrviwKwVql28FWZIW1zWruy6zLgA5/x2ZXk3mxj58X/tszVF69KK0Is83V8YgWhLA==", + "cpu": [ + "ppc64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-ppc64": "1.2.0" + } + }, + "node_modules/@img/sharp-linux-s390x": { + "version": "0.34.3", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.34.3.tgz", + "integrity": "sha512-3gahT+A6c4cdc2edhsLHmIOXMb17ltffJlxR0aC2VPZfwKoTGZec6u5GrFgdR7ciJSsHT27BD3TIuGcuRT0KmQ==", + "cpu": [ + "s390x" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-s390x": "1.2.0" + } + }, + "node_modules/@img/sharp-linux-x64": { + "version": "0.34.3", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.34.3.tgz", + "integrity": "sha512-8kYso8d806ypnSq3/Ly0QEw90V5ZoHh10yH0HnrzOCr6DKAPI6QVHvwleqMkVQ0m+fc7EH8ah0BB0QPuWY6zJQ==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-x64": "1.2.0" + } + }, + "node_modules/@img/sharp-linuxmusl-arm64": { + "version": "0.34.3", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.34.3.tgz", + "integrity": "sha512-vAjbHDlr4izEiXM1OTggpCcPg9tn4YriK5vAjowJsHwdBIdx0fYRsURkxLG2RLm9gyBq66gwtWI8Gx0/ov+JKQ==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-arm64": "1.2.0" + } + }, + "node_modules/@img/sharp-linuxmusl-x64": { + "version": "0.34.3", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.34.3.tgz", + "integrity": "sha512-gCWUn9547K5bwvOn9l5XGAEjVTTRji4aPTqLzGXHvIr6bIDZKNTA34seMPgM0WmSf+RYBH411VavCejp3PkOeQ==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-x64": "1.2.0" + } + }, + "node_modules/@img/sharp-wasm32": { + "version": "0.34.3", + "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.34.3.tgz", + "integrity": "sha512-+CyRcpagHMGteySaWos8IbnXcHgfDn7pO2fiC2slJxvNq9gDipYBN42/RagzctVRKgxATmfqOSulgZv5e1RdMg==", + "cpu": [ + "wasm32" + ], + "license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT", + "optional": true, + "dependencies": { + "@emnapi/runtime": "^1.4.4" + }, + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-arm64": { + "version": "0.34.3", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.34.3.tgz", + "integrity": "sha512-MjnHPnbqMXNC2UgeLJtX4XqoVHHlZNd+nPt1kRPmj63wURegwBhZlApELdtxM2OIZDRv/DFtLcNhVbd1z8GYXQ==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-ia32": { + "version": "0.34.3", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.34.3.tgz", + "integrity": "sha512-xuCdhH44WxuXgOM714hn4amodJMZl3OEvf0GVTm0BEyMeA2to+8HEdRPShH0SLYptJY1uBw+SCFP9WVQi1Q/cw==", + "cpu": [ + "ia32" + ], + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-x64": { + "version": "0.34.3", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.34.3.tgz", + "integrity": "sha512-OWwz05d++TxzLEv4VnsTz5CmZ6mI6S05sfQGEMrNrQcOEERbX46332IvE7pO/EUiw7jUrrS40z/M7kPyjfl04g==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@isaacs/fs-minipass": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz", + "integrity": "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^7.0.4" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "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/@mdx-js/mdx": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-3.1.1.tgz", + "integrity": "sha512-f6ZO2ifpwAQIpzGWaBQT2TXxPv6z3RBzQKpVftEWN78Vl/YweF1uwussDx8ECAXVtr3Rs89fKyG9YlzUs9DyGQ==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/mdx": "^2.0.0", + "acorn": "^8.0.0", + "collapse-white-space": "^2.0.0", + "devlop": "^1.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "estree-util-scope": "^1.0.0", + "estree-walker": "^3.0.0", + "hast-util-to-jsx-runtime": "^2.0.0", + "markdown-extensions": "^2.0.0", + "recma-build-jsx": "^1.0.0", + "recma-jsx": "^1.0.0", + "recma-stringify": "^1.0.0", + "rehype-recma": "^1.0.0", + "remark-mdx": "^3.0.0", + "remark-parse": "^11.0.0", + "remark-rehype": "^11.0.0", + "source-map": "^0.7.0", + "unified": "^11.0.0", + "unist-util-position-from-estree": "^2.0.0", + "unist-util-stringify-position": "^4.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@napi-rs/wasm-runtime": { + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.12.tgz", + "integrity": "sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "^1.4.3", + "@emnapi/runtime": "^1.4.3", + "@tybys/wasm-util": "^0.10.0" + } + }, + "node_modules/@next/env": { + "version": "15.5.3", + "resolved": "https://registry.npmjs.org/@next/env/-/env-15.5.3.tgz", + "integrity": "sha512-RSEDTRqyihYXygx/OJXwvVupfr9m04+0vH8vyy0HfZ7keRto6VX9BbEk0J2PUk0VGy6YhklJUSrgForov5F9pw==", + "license": "MIT" + }, + "node_modules/@next/eslint-plugin-next": { + "version": "15.5.3", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-15.5.3.tgz", + "integrity": "sha512-SdhaKdko6dpsSr0DldkESItVrnPYB1NS2NpShCSX5lc7SSQmLZt5Mug6t2xbiuVWEVDLZSuIAoQyYVBYp0dR5g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-glob": "3.3.1" + } + }, + "node_modules/@next/swc-darwin-arm64": { + "version": "15.5.3", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-15.5.3.tgz", + "integrity": "sha512-nzbHQo69+au9wJkGKTU9lP7PXv0d1J5ljFpvb+LnEomLtSbJkbZyEs6sbF3plQmiOB2l9OBtN2tNSvCH1nQ9Jg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-darwin-x64": { + "version": "15.5.3", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-15.5.3.tgz", + "integrity": "sha512-w83w4SkOOhekJOcA5HBvHyGzgV1W/XvOfpkrxIse4uPWhYTTRwtGEM4v/jiXwNSJvfRvah0H8/uTLBKRXlef8g==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-gnu": { + "version": "15.5.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-15.5.3.tgz", + "integrity": "sha512-+m7pfIs0/yvgVu26ieaKrifV8C8yiLe7jVp9SpcIzg7XmyyNE7toC1fy5IOQozmr6kWl/JONC51osih2RyoXRw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-musl": { + "version": "15.5.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-15.5.3.tgz", + "integrity": "sha512-u3PEIzuguSenoZviZJahNLgCexGFhso5mxWCrrIMdvpZn6lkME5vc/ADZG8UUk5K1uWRy4hqSFECrON6UKQBbQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-gnu": { + "version": "15.5.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-15.5.3.tgz", + "integrity": "sha512-lDtOOScYDZxI2BENN9m0pfVPJDSuUkAD1YXSvlJF0DKwZt0WlA7T7o3wrcEr4Q+iHYGzEaVuZcsIbCps4K27sA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-musl": { + "version": "15.5.3", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-15.5.3.tgz", + "integrity": "sha512-9vWVUnsx9PrY2NwdVRJ4dUURAQ8Su0sLRPqcCCxtX5zIQUBES12eRVHq6b70bbfaVaxIDGJN2afHui0eDm+cLg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-arm64-msvc": { + "version": "15.5.3", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-15.5.3.tgz", + "integrity": "sha512-1CU20FZzY9LFQigRi6jM45oJMU3KziA5/sSG+dXeVaTm661snQP6xu3ykGxxwU5sLG3sh14teO/IOEPVsQMRfA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-x64-msvc": { + "version": "15.5.3", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-15.5.3.tgz", + "integrity": "sha512-JMoLAq3n3y5tKXPQwCK5c+6tmwkuFDa2XAxz8Wm4+IVthdBZdZGh+lmiLUHg9f9IDwIQpUjp+ysd6OkYTyZRZw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "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/@nolyfill/is-core-module": { + "version": "1.0.39", + "resolved": "https://registry.npmjs.org/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz", + "integrity": "sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.4.0" + } + }, + "node_modules/@orama/orama": { + "version": "3.1.13", + "resolved": "https://registry.npmjs.org/@orama/orama/-/orama-3.1.13.tgz", + "integrity": "sha512-O0hdKt4K31i8fpq8Bw5RfdPVAqm0EdduBUcluPo2MRcfCOwUEf5JlnvRhf/J0ezOYOD8jQ/LumYZxOVi/XK/BA==", + "license": "Apache-2.0", + "engines": { + "node": ">= 20.0.0" + } + }, + "node_modules/@radix-ui/number": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/number/-/number-1.1.1.tgz", + "integrity": "sha512-MkKCwxlXTgz6CFoJx3pCwn07GKp36+aZyu/u2Ln2VrA5DcdyCZkASEDBTd8x5whTQQL5CiYf4prXKLcgQdv29g==", + "license": "MIT" + }, + "node_modules/@radix-ui/primitive": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.3.tgz", + "integrity": "sha512-JTF99U/6XIjCBo0wqkU5sK10glYe27MRRsfwoiq5zzOEZLHU3A3KCMa5X/azekYRCJ0HlwI0crAXS/5dEHTzDg==", + "license": "MIT" + }, + "node_modules/@radix-ui/react-accordion": { + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@radix-ui/react-accordion/-/react-accordion-1.2.12.tgz", + "integrity": "sha512-T4nygeh9YE9dLRPhAHSeOZi7HBXo+0kYIPJXayZfvWOWA0+n3dESrZbjfDPUABkUNym6Hd+f2IR113To8D2GPA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collapsible": "1.1.12", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-arrow": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.1.7.tgz", + "integrity": "sha512-F+M1tLhO+mlQaOWspE8Wstg+z6PwxwRd8oQ8IXceWz92kfAmalTRf0EjrouQeo7QssEPfCn05B4Ihs1K9WQ/7w==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collapsible": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/@radix-ui/react-collapsible/-/react-collapsible-1.1.12.tgz", + "integrity": "sha512-Uu+mSh4agx2ib1uIGPP4/CKNULyajb3p92LsVXmH2EHVMTfZWpll88XJ0j4W0z3f8NK1eYl1+Mf/szHPmcHzyA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collection": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-collection/-/react-collection-1.1.7.tgz", + "integrity": "sha512-Fh9rGN0MoI4ZFUNyfFVNU4y9LUz93u9/0K+yLgA2bwRojxM8JU1DyvvMBabnZPBgMWREAJvU2jjVzq+LrFUglw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.2.tgz", + "integrity": "sha512-z4eqJvfiNnFMHIIvXP3CY57y2WJs5g2v3X0zm9mEJkrkNv4rDxu+sg9Jh8EkXyeqBkB7SOcboo9dMVqhyrACIg==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dialog": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.1.15.tgz", + "integrity": "sha512-TCglVRtzlffRNxRMEyR36DGBLJpeusFcgMVD9PZEzAKnUs1lKCgX5u9BmC2Yg+LL9MgZDugFFs1Vl+Jp4t/PGw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-direction": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-direction/-/react-direction-1.1.1.tgz", + "integrity": "sha512-1UEWRX6jnOA2y4H5WczZ44gOOjTEmlqv1uNW4GAJEO5+bauCBhv8snY65Iw5/VOS/ghKN9gr2KjnLKxrsvoMVw==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dismissable-layer": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.11.tgz", + "integrity": "sha512-Nqcp+t5cTB8BinFkZgXiMJniQH0PsUt2k51FUhbdfeKvc4ACcG2uQniY/8+h1Yv6Kza4Q7lD7PQV0z0oicE0Mg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-escape-keydown": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-guards": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.1.3.tgz", + "integrity": "sha512-0rFg/Rj2Q62NCm62jZw0QX7a3sz6QCQU0LpZdNrJX8byRGaGVTqbrW9jAoIAHyMQqsNpeZ81YgSizOt5WXq0Pw==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-scope": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.1.7.tgz", + "integrity": "sha512-t2ODlkXBQyn7jkl6TNaw/MtVEVvIGelJDCG41Okq/KwUsJBwQ4XVZsHAVUkK4mBv3ewiAS3PGuUWuY2BoK4ZUw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-id": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.1.tgz", + "integrity": "sha512-kGkGegYIdQsOb4XjsfM97rXsiHaBwco+hFI66oO4s9LU+PLAC5oJ7khdOVFxkhsmlbpUqDAvXw11CluXP+jkHg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-navigation-menu": { + "version": "1.2.14", + "resolved": "https://registry.npmjs.org/@radix-ui/react-navigation-menu/-/react-navigation-menu-1.2.14.tgz", + "integrity": "sha512-YB9mTFQvCOAQMHU+C/jVl96WmuWeltyUEpRJJky51huhds5W2FQr1J8D/16sQlf0ozxkPK8uF3niQMdUwZPv5w==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-visually-hidden": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popover": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popover/-/react-popover-1.1.15.tgz", + "integrity": "sha512-kr0X2+6Yy/vJzLYJUPCZEc8SfQcf+1COFoAqauJm74umQhta9M7lNJHP7QQS3vkvcGLQUbWpMzwrXYwrYztHKA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popper": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.2.8.tgz", + "integrity": "sha512-0NJQ4LFFUuWkE7Oxf0htBKS6zLkkjBH+hM1uk7Ng705ReR8m/uelduy1DBo0PyBXPKVnBA6YBlU94MBGXrSBCw==", + "license": "MIT", + "dependencies": { + "@floating-ui/react-dom": "^2.0.0", + "@radix-ui/react-arrow": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-rect": "1.1.1", + "@radix-ui/react-use-size": "1.1.1", + "@radix-ui/rect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-portal": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.9.tgz", + "integrity": "sha512-bpIxvq03if6UNwXZ+HTK71JLh4APvnXntDc6XOX8UVq4XQOVl7lwok0AvIl+b8zgCw3fSaVTZMpAPPagXbKmHQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-presence": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.5.tgz", + "integrity": "sha512-/jfEwNDdQVBCNvjkGit4h6pMOzq8bHkopq458dPt2lMjx+eBQUohZNG9A7DtO/O5ukSbxuaNGXMjHicgwy6rQQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-roving-focus": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-roving-focus/-/react-roving-focus-1.1.11.tgz", + "integrity": "sha512-7A6S9jSgm/S+7MdtNDSb+IU859vQqJ/QAtcYQcfFC6W8RS4IxIZDldLR0xqCFZ6DCyrQLjLPsxtTNch5jVA4lA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-scroll-area": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/@radix-ui/react-scroll-area/-/react-scroll-area-1.2.10.tgz", + "integrity": "sha512-tAXIa1g3sM5CGpVT0uIbUx/U3Gs5N8T52IICuCtObaos1S8fzsrPXG5WObkQN3S6NVl6wKgPhAIiBGbWnvc97A==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.1", + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tabs": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/@radix-ui/react-tabs/-/react-tabs-1.1.13.tgz", + "integrity": "sha512-7xdcatg7/U+7+Udyoj2zodtI9H/IIopqo+YOIcZOq1nJwXWBZ9p8xiu5llXlekDbZkca79a/fozEYQXIA4sW6A==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-callback-ref": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.1.tgz", + "integrity": "sha512-FkBMwD+qbGQeMu1cOHnuGB6x4yzPjho8ap5WtbEJ26umhgqVXbhekKUQO+hZEL1vU92a3wHwdp0HAcqAUF5iDg==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-controllable-state": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.2.2.tgz", + "integrity": "sha512-BjasUjixPFdS+NKkypcyyN5Pmg83Olst0+c6vGov0diwTEo6mgdqVR6hxcEgFuh4QrAs7Rc+9KuGJ9TVCj0Zzg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-effect-event": "0.0.2", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-effect-event": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-effect-event/-/react-use-effect-event-0.0.2.tgz", + "integrity": "sha512-Qp8WbZOBe+blgpuUT+lw2xheLP8q0oatc9UpmiemEICxGvFLYmHm9QowVZGHtJlGbS6A6yJ3iViad/2cVjnOiA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-escape-keydown": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.1.1.tgz", + "integrity": "sha512-Il0+boE7w/XebUHyBjroE+DbByORGR9KKmITzbR7MyQ4akpORYP/ZmbhAr0DG7RmmBqoOnZdy2QlvajJ2QA59g==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-callback-ref": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-layout-effect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.1.tgz", + "integrity": "sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-previous": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-previous/-/react-use-previous-1.1.1.tgz", + "integrity": "sha512-2dHfToCj/pzca2Ck724OZ5L0EVrr3eHRNsG/b3xQJLA2hZpVCS99bLAX+hm1IHXDEnzU6by5z/5MIY794/a8NQ==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-rect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-1.1.1.tgz", + "integrity": "sha512-QTYuDesS0VtuHNNvMh+CjlKJ4LJickCMUAqjlE3+j8w+RlRpwyX3apEQKGFzbZGdo7XNG1tXa+bQqIE7HIXT2w==", + "license": "MIT", + "dependencies": { + "@radix-ui/rect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-size": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.1.1.tgz", + "integrity": "sha512-ewrXRDTAqAXlkl6t/fkXWNAhFX9I+CkKlw6zjEwk86RSPKwZr3xpBRso655aqYafwtnbpHLj6toFzmd6xdVptQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-visually-hidden": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-visually-hidden/-/react-visually-hidden-1.2.3.tgz", + "integrity": "sha512-pzJq12tEaaIhqjbzpCuv/OypJY/BPavOofm+dbab+MHLajy277+1lLm6JFcGgF5eskJ6mquGirhXY2GD/8u8Ug==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/rect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-1.1.1.tgz", + "integrity": "sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==", + "license": "MIT" + }, + "node_modules/@rtsao/scc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", + "dev": true, + "license": "MIT" + }, + "node_modules/@rushstack/eslint-patch": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.12.0.tgz", + "integrity": "sha512-5EwMtOqvJMMa3HbmxLlF74e+3/HhwBTMcvt3nqVJgGCozO6hzIPOBlwm8mGVNR9SN2IJpxSnlxczyDjcn7qIyw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@shikijs/core": { + "version": "3.12.2", + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-3.12.2.tgz", + "integrity": "sha512-L1Safnhra3tX/oJK5kYHaWmLEBJi1irASwewzY3taX5ibyXyMkkSDZlq01qigjryOBwrXSdFgTiZ3ryzSNeu7Q==", + "license": "MIT", + "dependencies": { + "@shikijs/types": "3.12.2", + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.4", + "hast-util-to-html": "^9.0.5" + } + }, + "node_modules/@shikijs/engine-javascript": { + "version": "3.12.2", + "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-3.12.2.tgz", + "integrity": "sha512-Nm3/azSsaVS7hk6EwtHEnTythjQfwvrO5tKqMlaH9TwG1P+PNaR8M0EAKZ+GaH2DFwvcr4iSfTveyxMIvXEHMw==", + "license": "MIT", + "dependencies": { + "@shikijs/types": "3.12.2", + "@shikijs/vscode-textmate": "^10.0.2", + "oniguruma-to-es": "^4.3.3" + } + }, + "node_modules/@shikijs/engine-oniguruma": { + "version": "3.12.2", + "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.12.2.tgz", + "integrity": "sha512-hozwnFHsLvujK4/CPVHNo3Bcg2EsnG8krI/ZQ2FlBlCRpPZW4XAEQmEwqegJsypsTAN9ehu2tEYe30lYKSZW/w==", + "license": "MIT", + "dependencies": { + "@shikijs/types": "3.12.2", + "@shikijs/vscode-textmate": "^10.0.2" + } + }, + "node_modules/@shikijs/langs": { + "version": "3.12.2", + "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-3.12.2.tgz", + "integrity": "sha512-bVx5PfuZHDSHoBal+KzJZGheFuyH4qwwcwG/n+MsWno5cTlKmaNtTsGzJpHYQ8YPbB5BdEdKU1rga5/6JGY8ww==", + "license": "MIT", + "dependencies": { + "@shikijs/types": "3.12.2" + } + }, + "node_modules/@shikijs/rehype": { + "version": "3.12.2", + "resolved": "https://registry.npmjs.org/@shikijs/rehype/-/rehype-3.12.2.tgz", + "integrity": "sha512-9wg+FKv0ByaQScTonpZdrDhADOoJP/yCWLAuiYYG6GehwNV5rGwnLvWKj33UmtLedKMSHzWUdB+Un6rfDFo/FA==", + "license": "MIT", + "dependencies": { + "@shikijs/types": "3.12.2", + "@types/hast": "^3.0.4", + "hast-util-to-string": "^3.0.1", + "shiki": "3.12.2", + "unified": "^11.0.5", + "unist-util-visit": "^5.0.0" + } + }, + "node_modules/@shikijs/themes": { + "version": "3.12.2", + "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-3.12.2.tgz", + "integrity": "sha512-fTR3QAgnwYpfGczpIbzPjlRnxyONJOerguQv1iwpyQZ9QXX4qy/XFQqXlf17XTsorxnHoJGbH/LXBvwtqDsF5A==", + "license": "MIT", + "dependencies": { + "@shikijs/types": "3.12.2" + } + }, + "node_modules/@shikijs/transformers": { + "version": "3.12.2", + "resolved": "https://registry.npmjs.org/@shikijs/transformers/-/transformers-3.12.2.tgz", + "integrity": "sha512-+z1aMq4N5RoNGY8i7qnTYmG2MBYzFmwkm/yOd6cjEI7OVzcldVvzQCfxU1YbIVgsyB0xHVc2jFe1JhgoXyUoSQ==", + "license": "MIT", + "dependencies": { + "@shikijs/core": "3.12.2", + "@shikijs/types": "3.12.2" + } + }, + "node_modules/@shikijs/types": { + "version": "3.12.2", + "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-3.12.2.tgz", + "integrity": "sha512-K5UIBzxCyv0YoxN3LMrKB9zuhp1bV+LgewxuVwHdl4Gz5oePoUFrr9EfgJlGlDeXCU1b/yhdnXeuRvAnz8HN8Q==", + "license": "MIT", + "dependencies": { + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.4" + } + }, + "node_modules/@shikijs/vscode-textmate": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz", + "integrity": "sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==", + "license": "MIT" + }, + "node_modules/@standard-schema/spec": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.0.0.tgz", + "integrity": "sha512-m2bOd0f2RT9k8QJx1JN85cZYyH1RqFBdlwtkSlf4tBDYLCiiZnv1fIIwacK6cqwXavOydf0NPToMQgpKq+dVlA==", + "license": "MIT" + }, + "node_modules/@swc/helpers": { + "version": "0.5.15", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.15.tgz", + "integrity": "sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + } + }, + "node_modules/@tailwindcss/node": { + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.1.13.tgz", + "integrity": "sha512-eq3ouolC1oEFOAvOMOBAmfCIqZBJuvWvvYWh5h5iOYfe1HFC6+GZ6EIL0JdM3/niGRJmnrOc+8gl9/HGUaaptw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/remapping": "^2.3.4", + "enhanced-resolve": "^5.18.3", + "jiti": "^2.5.1", + "lightningcss": "1.30.1", + "magic-string": "^0.30.18", + "source-map-js": "^1.2.1", + "tailwindcss": "4.1.13" + } + }, + "node_modules/@tailwindcss/oxide": { + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.1.13.tgz", + "integrity": "sha512-CPgsM1IpGRa880sMbYmG1s4xhAy3xEt1QULgTJGQmZUeNgXFR7s1YxYygmJyBGtou4SyEosGAGEeYqY7R53bIA==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "detect-libc": "^2.0.4", + "tar": "^7.4.3" + }, + "engines": { + "node": ">= 10" + }, + "optionalDependencies": { + "@tailwindcss/oxide-android-arm64": "4.1.13", + "@tailwindcss/oxide-darwin-arm64": "4.1.13", + "@tailwindcss/oxide-darwin-x64": "4.1.13", + "@tailwindcss/oxide-freebsd-x64": "4.1.13", + "@tailwindcss/oxide-linux-arm-gnueabihf": "4.1.13", + "@tailwindcss/oxide-linux-arm64-gnu": "4.1.13", + "@tailwindcss/oxide-linux-arm64-musl": "4.1.13", + "@tailwindcss/oxide-linux-x64-gnu": "4.1.13", + "@tailwindcss/oxide-linux-x64-musl": "4.1.13", + "@tailwindcss/oxide-wasm32-wasi": "4.1.13", + "@tailwindcss/oxide-win32-arm64-msvc": "4.1.13", + "@tailwindcss/oxide-win32-x64-msvc": "4.1.13" + } + }, + "node_modules/@tailwindcss/oxide-android-arm64": { + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.1.13.tgz", + "integrity": "sha512-BrpTrVYyejbgGo57yc8ieE+D6VT9GOgnNdmh5Sac6+t0m+v+sKQevpFVpwX3pBrM2qKrQwJ0c5eDbtjouY/+ew==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-darwin-arm64": { + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.1.13.tgz", + "integrity": "sha512-YP+Jksc4U0KHcu76UhRDHq9bx4qtBftp9ShK/7UGfq0wpaP96YVnnjFnj3ZFrUAjc5iECzODl/Ts0AN7ZPOANQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-darwin-x64": { + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.1.13.tgz", + "integrity": "sha512-aAJ3bbwrn/PQHDxCto9sxwQfT30PzyYJFG0u/BWZGeVXi5Hx6uuUOQEI2Fa43qvmUjTRQNZnGqe9t0Zntexeuw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-freebsd-x64": { + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.1.13.tgz", + "integrity": "sha512-Wt8KvASHwSXhKE/dJLCCWcTSVmBj3xhVhp/aF3RpAhGeZ3sVo7+NTfgiN8Vey/Fi8prRClDs6/f0KXPDTZE6nQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": { + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.1.13.tgz", + "integrity": "sha512-mbVbcAsW3Gkm2MGwA93eLtWrwajz91aXZCNSkGTx/R5eb6KpKD5q8Ueckkh9YNboU8RH7jiv+ol/I7ZyQ9H7Bw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm64-gnu": { + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.1.13.tgz", + "integrity": "sha512-wdtfkmpXiwej/yoAkrCP2DNzRXCALq9NVLgLELgLim1QpSfhQM5+ZxQQF8fkOiEpuNoKLp4nKZ6RC4kmeFH0HQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm64-musl": { + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.1.13.tgz", + "integrity": "sha512-hZQrmtLdhyqzXHB7mkXfq0IYbxegaqTmfa1p9MBj72WPoDD3oNOh1Lnxf6xZLY9C3OV6qiCYkO1i/LrzEdW2mg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-x64-gnu": { + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.1.13.tgz", + "integrity": "sha512-uaZTYWxSXyMWDJZNY1Ul7XkJTCBRFZ5Fo6wtjrgBKzZLoJNrG+WderJwAjPzuNZOnmdrVg260DKwXCFtJ/hWRQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-x64-musl": { + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.1.13.tgz", + "integrity": "sha512-oXiPj5mi4Hdn50v5RdnuuIms0PVPI/EG4fxAfFiIKQh5TgQgX7oSuDWntHW7WNIi/yVLAiS+CRGW4RkoGSSgVQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi": { + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.1.13.tgz", + "integrity": "sha512-+LC2nNtPovtrDwBc/nqnIKYh/W2+R69FA0hgoeOn64BdCX522u19ryLh3Vf3F8W49XBcMIxSe665kwy21FkhvA==", + "bundleDependencies": [ + "@napi-rs/wasm-runtime", + "@emnapi/core", + "@emnapi/runtime", + "@tybys/wasm-util", + "@emnapi/wasi-threads", + "tslib" + ], + "cpu": [ + "wasm32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "^1.4.5", + "@emnapi/runtime": "^1.4.5", + "@emnapi/wasi-threads": "^1.0.4", + "@napi-rs/wasm-runtime": "^0.2.12", + "@tybys/wasm-util": "^0.10.0", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@tailwindcss/oxide-win32-arm64-msvc": { + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.1.13.tgz", + "integrity": "sha512-dziTNeQXtoQ2KBXmrjCxsuPk3F3CQ/yb7ZNZNA+UkNTeiTGgfeh+gH5Pi7mRncVgcPD2xgHvkFCh/MhZWSgyQg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-win32-x64-msvc": { + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.1.13.tgz", + "integrity": "sha512-3+LKesjXydTkHk5zXX01b5KMzLV1xl2mcktBJkje7rhFUpUlYJy7IMOLqjIRQncLTa1WZZiFY/foAeB5nmaiTw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/postcss": { + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/postcss/-/postcss-4.1.13.tgz", + "integrity": "sha512-HLgx6YSFKJT7rJqh9oJs/TkBFhxuMOfUKSBEPYwV+t78POOBsdQ7crhZLzwcH3T0UyUuOzU/GK5pk5eKr3wCiQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@alloc/quick-lru": "^5.2.0", + "@tailwindcss/node": "4.1.13", + "@tailwindcss/oxide": "4.1.13", + "postcss": "^8.4.41", + "tailwindcss": "4.1.13" + } + }, + "node_modules/@tybys/wasm-util": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", + "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "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/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true, + "license": "MIT" + }, + "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/mdx": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.13.tgz", + "integrity": "sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==", + "license": "MIT" + }, + "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/node": { + "version": "24.3.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.3.3.tgz", + "integrity": "sha512-GKBNHjoNw3Kra1Qg5UXttsY5kiWMEfoHq2TmXb+b1rcm6N7B3wTrFYIf/oSZ1xNQ+hVVijgLkiDZh7jRRsh+Gw==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~7.10.0" + } + }, + "node_modules/@types/react": { + "version": "19.1.13", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.1.13.tgz", + "integrity": "sha512-hHkbU/eoO3EG5/MZkuFSKmYqPbSVk5byPFa3e7y/8TybHiLMACgI8seVYlicwk7H5K/rI2px9xrQp/C+AUDTiQ==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "19.1.9", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.1.9.tgz", + "integrity": "sha512-qXRuZaOsAdXKFyOhRBg6Lqqc0yay13vN7KrIg4L7N4aaHN68ma9OK3NE1BoDFgFOTfM7zg+3/8+2n8rLUH3OKQ==", + "devOptional": true, + "license": "MIT", + "peerDependencies": { + "@types/react": "^19.0.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/@typescript-eslint/eslint-plugin": { + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.43.0.tgz", + "integrity": "sha512-8tg+gt7ENL7KewsKMKDHXR1vm8tt9eMxjJBYINf6swonlWgkYn5NwyIgXpbbDxTNU5DgpDFfj95prcTq2clIQQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/regexpp": "^4.10.0", + "@typescript-eslint/scope-manager": "8.43.0", + "@typescript-eslint/type-utils": "8.43.0", + "@typescript-eslint/utils": "8.43.0", + "@typescript-eslint/visitor-keys": "8.43.0", + "graphemer": "^1.4.0", + "ignore": "^7.0.0", + "natural-compare": "^1.4.0", + "ts-api-utils": "^2.1.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^8.43.0", + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", + "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.43.0.tgz", + "integrity": "sha512-B7RIQiTsCBBmY+yW4+ILd6mF5h1FUwJsVvpqkrgpszYifetQ2Ke+Z4u6aZh0CblkUGIdR59iYVyXqqZGkZ3aBw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/scope-manager": "8.43.0", + "@typescript-eslint/types": "8.43.0", + "@typescript-eslint/typescript-estree": "8.43.0", + "@typescript-eslint/visitor-keys": "8.43.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/project-service": { + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.43.0.tgz", + "integrity": "sha512-htB/+D/BIGoNTQYffZw4uM4NzzuolCoaA/BusuSIcC8YjmBYQioew5VUZAYdAETPjeed0hqCaW7EHg+Robq8uw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/tsconfig-utils": "^8.43.0", + "@typescript-eslint/types": "^8.43.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.43.0.tgz", + "integrity": "sha512-daSWlQ87ZhsjrbMLvpuuMAt3y4ba57AuvadcR7f3nl8eS3BjRc8L9VLxFLk92RL5xdXOg6IQ+qKjjqNEimGuAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.43.0", + "@typescript-eslint/visitor-keys": "8.43.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/tsconfig-utils": { + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.43.0.tgz", + "integrity": "sha512-ALC2prjZcj2YqqL5X/bwWQmHA2em6/94GcbB/KKu5SX3EBDOsqztmmX1kMkvAJHzxk7TazKzJfFiEIagNV3qEA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.43.0.tgz", + "integrity": "sha512-qaH1uLBpBuBBuRf8c1mLJ6swOfzCXryhKND04Igr4pckzSEW9JX5Aw9AgW00kwfjWJF0kk0ps9ExKTfvXfw4Qg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.43.0", + "@typescript-eslint/typescript-estree": "8.43.0", + "@typescript-eslint/utils": "8.43.0", + "debug": "^4.3.4", + "ts-api-utils": "^2.1.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.43.0.tgz", + "integrity": "sha512-vQ2FZaxJpydjSZJKiSW/LJsabFFvV7KgLC5DiLhkBcykhQj8iK9BOaDmQt74nnKdLvceM5xmhaTF+pLekrxEkw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.43.0.tgz", + "integrity": "sha512-7Vv6zlAhPb+cvEpP06WXXy/ZByph9iL6BQRBDj4kmBsW98AqEeQHlj/13X+sZOrKSo9/rNKH4Ul4f6EICREFdw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/project-service": "8.43.0", + "@typescript-eslint/tsconfig-utils": "8.43.0", + "@typescript-eslint/types": "8.43.0", + "@typescript-eslint/visitor-keys": "8.43.0", + "debug": "^4.3.4", + "fast-glob": "^3.3.2", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^2.1.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/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/@typescript-eslint/typescript-estree/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/@typescript-eslint/typescript-estree/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.43.0.tgz", + "integrity": "sha512-S1/tEmkUeeswxd0GGcnwuVQPFWo8NzZTOMxCvw8BX7OMxnNae+i8Tm7REQen/SwUIPoPqfKn7EaZ+YLpiB3k9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.7.0", + "@typescript-eslint/scope-manager": "8.43.0", + "@typescript-eslint/types": "8.43.0", + "@typescript-eslint/typescript-estree": "8.43.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.43.0.tgz", + "integrity": "sha512-T+S1KqRD4sg/bHfLwrpF/K3gQLBM1n7Rp7OjjikjTEssI2YJzQpi5WXoynOaQ93ERIuq3O8RBTOUYDKszUCEHw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.43.0", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "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/@unrs/resolver-binding-android-arm-eabi": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm-eabi/-/resolver-binding-android-arm-eabi-1.11.1.tgz", + "integrity": "sha512-ppLRUgHVaGRWUx0R0Ut06Mjo9gBaBkg3v/8AxusGLhsIotbBLuRk51rAzqLC8gq6NyyAojEXglNjzf6R948DNw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@unrs/resolver-binding-android-arm64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm64/-/resolver-binding-android-arm64-1.11.1.tgz", + "integrity": "sha512-lCxkVtb4wp1v+EoN+HjIG9cIIzPkX5OtM03pQYkG+U5O/wL53LC4QbIeazgiKqluGeVEeBlZahHalCaBvU1a2g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@unrs/resolver-binding-darwin-arm64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-arm64/-/resolver-binding-darwin-arm64-1.11.1.tgz", + "integrity": "sha512-gPVA1UjRu1Y/IsB/dQEsp2V1pm44Of6+LWvbLc9SDk1c2KhhDRDBUkQCYVWe6f26uJb3fOK8saWMgtX8IrMk3g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@unrs/resolver-binding-darwin-x64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-x64/-/resolver-binding-darwin-x64-1.11.1.tgz", + "integrity": "sha512-cFzP7rWKd3lZaCsDze07QX1SC24lO8mPty9vdP+YVa3MGdVgPmFc59317b2ioXtgCMKGiCLxJ4HQs62oz6GfRQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@unrs/resolver-binding-freebsd-x64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-freebsd-x64/-/resolver-binding-freebsd-x64-1.11.1.tgz", + "integrity": "sha512-fqtGgak3zX4DCB6PFpsH5+Kmt/8CIi4Bry4rb1ho6Av2QHTREM+47y282Uqiu3ZRF5IQioJQ5qWRV6jduA+iGw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm-gnueabihf": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-gnueabihf/-/resolver-binding-linux-arm-gnueabihf-1.11.1.tgz", + "integrity": "sha512-u92mvlcYtp9MRKmP+ZvMmtPN34+/3lMHlyMj7wXJDeXxuM0Vgzz0+PPJNsro1m3IZPYChIkn944wW8TYgGKFHw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm-musleabihf": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-musleabihf/-/resolver-binding-linux-arm-musleabihf-1.11.1.tgz", + "integrity": "sha512-cINaoY2z7LVCrfHkIcmvj7osTOtm6VVT16b5oQdS4beibX2SYBwgYLmqhBjA1t51CarSaBuX5YNsWLjsqfW5Cw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-gnu/-/resolver-binding-linux-arm64-gnu-1.11.1.tgz", + "integrity": "sha512-34gw7PjDGB9JgePJEmhEqBhWvCiiWCuXsL9hYphDF7crW7UgI05gyBAi6MF58uGcMOiOqSJ2ybEeCvHcq0BCmQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-musl/-/resolver-binding-linux-arm64-musl-1.11.1.tgz", + "integrity": "sha512-RyMIx6Uf53hhOtJDIamSbTskA99sPHS96wxVE/bJtePJJtpdKGXO1wY90oRdXuYOGOTuqjT8ACccMc4K6QmT3w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-ppc64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-ppc64-gnu/-/resolver-binding-linux-ppc64-gnu-1.11.1.tgz", + "integrity": "sha512-D8Vae74A4/a+mZH0FbOkFJL9DSK2R6TFPC9M+jCWYia/q2einCubX10pecpDiTmkJVUH+y8K3BZClycD8nCShA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-riscv64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-gnu/-/resolver-binding-linux-riscv64-gnu-1.11.1.tgz", + "integrity": "sha512-frxL4OrzOWVVsOc96+V3aqTIQl1O2TjgExV4EKgRY09AJ9leZpEg8Ak9phadbuX0BA4k8U5qtvMSQQGGmaJqcQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-riscv64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-musl/-/resolver-binding-linux-riscv64-musl-1.11.1.tgz", + "integrity": "sha512-mJ5vuDaIZ+l/acv01sHoXfpnyrNKOk/3aDoEdLO/Xtn9HuZlDD6jKxHlkN8ZhWyLJsRBxfv9GYM2utQ1SChKew==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-s390x-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-s390x-gnu/-/resolver-binding-linux-s390x-gnu-1.11.1.tgz", + "integrity": "sha512-kELo8ebBVtb9sA7rMe1Cph4QHreByhaZ2QEADd9NzIQsYNQpt9UkM9iqr2lhGr5afh885d/cB5QeTXSbZHTYPg==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-x64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-gnu/-/resolver-binding-linux-x64-gnu-1.11.1.tgz", + "integrity": "sha512-C3ZAHugKgovV5YvAMsxhq0gtXuwESUKc5MhEtjBpLoHPLYM+iuwSj3lflFwK3DPm68660rZ7G8BMcwSro7hD5w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-x64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-musl/-/resolver-binding-linux-x64-musl-1.11.1.tgz", + "integrity": "sha512-rV0YSoyhK2nZ4vEswT/QwqzqQXw5I6CjoaYMOX0TqBlWhojUf8P94mvI7nuJTeaCkkds3QE4+zS8Ko+GdXuZtA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-wasm32-wasi": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-wasm32-wasi/-/resolver-binding-wasm32-wasi-1.11.1.tgz", + "integrity": "sha512-5u4RkfxJm+Ng7IWgkzi3qrFOvLvQYnPBmjmZQ8+szTK/b31fQCnleNl1GgEt7nIsZRIf5PLhPwT0WM+q45x/UQ==", + "cpu": [ + "wasm32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@napi-rs/wasm-runtime": "^0.2.11" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@unrs/resolver-binding-win32-arm64-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-arm64-msvc/-/resolver-binding-win32-arm64-msvc-1.11.1.tgz", + "integrity": "sha512-nRcz5Il4ln0kMhfL8S3hLkxI85BXs3o8EYoattsJNdsX4YUU89iOkVn7g0VHSRxFuVMdM4Q1jEpIId1Ihim/Uw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@unrs/resolver-binding-win32-ia32-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-ia32-msvc/-/resolver-binding-win32-ia32-msvc-1.11.1.tgz", + "integrity": "sha512-DCEI6t5i1NmAZp6pFonpD5m7i6aFrpofcp4LA2i8IIq60Jyo28hamKBxNrZcyOwVOZkgsRp9O2sXWBWP8MnvIQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@unrs/resolver-binding-win32-x64-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-x64-msvc/-/resolver-binding-win32-x64-msvc-1.11.1.tgz", + "integrity": "sha512-lrW200hZdbfRtztbygyaq/6jP6AKE8qQN2KvPcJ+x7wiD038YtnYtZ82IMNJ69GJibV7bwL3y9FgK+5w/pYt6g==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/acorn": { + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-escapes": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-7.1.0.tgz", + "integrity": "sha512-YdhtCd19sKRKfAAUsrcC1wzm4JuzJoiX4pOJqIoW2qmKj5WzG/dL8uUJ0361zaXtHqK7gEhOwtAtz7t3Yq3X5g==", + "dev": true, + "license": "MIT", + "dependencies": { + "environment": "^1.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", + "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "license": "Python-2.0" + }, + "node_modules/aria-hidden": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.6.tgz", + "integrity": "sha512-ik3ZgC9dY/lYVVM++OISsaYDeg1tb0VtP5uL3ouh1koGOaUMDPpbFIei4JkFimWUFPn90sbMNMXQAIVOlnYKJA==", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/aria-query": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz", + "integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-includes": { + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", + "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.24.0", + "es-object-atoms": "^1.1.1", + "get-intrinsic": "^1.3.0", + "is-string": "^1.1.1", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.findlast": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", + "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz", + "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "es-shim-unscopables": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", + "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", + "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.tosorted": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", + "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3", + "es-errors": "^1.3.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", + "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ast-types-flow": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz", + "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/astring": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/astring/-/astring-1.9.0.tgz", + "integrity": "sha512-LElXdjswlqjWrPpJFg1Fx4wpkOCxj1TDHlSV4PlaRxHGWko024xICaa97ZkMfs6DRKlCguiAI+rbXv5GWwXIkg==", + "license": "MIT", + "bin": { + "astring": "bin/astring" + } + }, + "node_modules/async-function": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", + "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/autoprefixer": { + "version": "10.4.21", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.21.tgz", + "integrity": "sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==", + "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.24.4", + "caniuse-lite": "^1.0.30001702", + "fraction.js": "^4.3.7", + "normalize-range": "^0.1.2", + "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/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/axe-core": { + "version": "4.10.3", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.10.3.tgz", + "integrity": "sha512-Xm7bpRXnDSX2YE2YFfBk2FnF0ep6tmG7xPh8iHee8MIcrgq762Nkce856dYtJYLkuIoYZvGfTs/PbZhideTcEg==", + "dev": true, + "license": "MPL-2.0", + "engines": { + "node": ">=4" + } + }, + "node_modules/axobject-query": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", + "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">= 0.4" + } + }, + "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/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/baseline-browser-mapping": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.3.tgz", + "integrity": "sha512-mcE+Wr2CAhHNWxXN/DdTI+n4gsPc5QpXpWnyCQWiQYIYZX+ZMJ8juXZgjRa/0/YPJo/NSsgW15/YgmI4nbysYw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.js" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "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.26.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.26.0.tgz", + "integrity": "sha512-P9go2WrP9FiPwLv3zqRD/Uoxo0RSHjzFCiQz7d4vbmwNqQFo9T9WCeP/Qn5EbcKQY6DBbkxEXNcpJOmncNrb7A==", + "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.8.2", + "caniuse-lite": "^1.0.30001741", + "electron-to-chromium": "^1.5.218", + "node-releases": "^2.0.21", + "update-browserslist-db": "^1.1.3" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/call-bind": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.0", + "es-define-property": "^1.0.0", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001741", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001741.tgz", + "integrity": "sha512-QGUGitqsc8ARjLdgAfxETDhRbJ0REsP6O3I96TAth/mVjh2cYzN2u+3AzPP3aVSm2FehEItaJw1xd+IGBXWeSw==", + "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/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "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/chokidar": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", + "license": "MIT", + "dependencies": { + "readdirp": "^4.0.1" + }, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/chownr": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", + "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/class-variance-authority": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/class-variance-authority/-/class-variance-authority-0.7.1.tgz", + "integrity": "sha512-Ka+9Trutv7G8M6WT6SeiRWz792K5qEqIGEGzXKhAE6xOWAY6pPH8U+9IY3oCMv6kqTmLsv7Xh/2w2RigkePMsg==", + "license": "Apache-2.0", + "dependencies": { + "clsx": "^2.1.1" + }, + "funding": { + "url": "https://polar.sh/cva" + } + }, + "node_modules/cli-cursor": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-5.0.0.tgz", + "integrity": "sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==", + "dev": true, + "license": "MIT", + "dependencies": { + "restore-cursor": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-truncate": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-4.0.0.tgz", + "integrity": "sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==", + "dev": true, + "license": "MIT", + "dependencies": { + "slice-ansi": "^5.0.0", + "string-width": "^7.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/client-only": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", + "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==", + "license": "MIT" + }, + "node_modules/clsx": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/collapse-white-space": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-2.1.0.tgz", + "integrity": "sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/color": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", + "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", + "license": "MIT", + "optional": true, + "dependencies": { + "color-convert": "^2.0.1", + "color-string": "^1.9.0" + }, + "engines": { + "node": ">=12.5.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/color-string": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "license": "MIT", + "optional": true, + "dependencies": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true, + "license": "MIT" + }, + "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": "14.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-14.0.1.tgz", + "integrity": "sha512-2JkV3gUZUVrbNA+1sjBOYLsMZ5cEEl8GTFP2a4AVz5hvasAMCQ1D2l2le/cX+pV4N6ZU17zjUahLpIXRrnWL8A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=20" + } + }, + "node_modules/compute-scroll-into-view": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-3.1.1.tgz", + "integrity": "sha512-VRhuHOLoKYOy4UbilLbUzbYg93XLjv2PncJC50EuTWPA3gaja1UjBsUP/D/9/juV3vQFr6XBEzn9KCAHdUvOHw==", + "license": "MIT" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "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==", + "license": "MIT", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/damerau-levenshtein": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/data-view-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/inspect-js" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/debug": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decode-named-character-reference": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.2.0.tgz", + "integrity": "sha512-c6fcElNV6ShtZXmsgNgFFV5tVX2PaV4g+MOAkb8eXHvn6sryJBrZa9r0zV6+dtTyoCKxtDy5tyQ5ZwQuidtd+Q==", + "license": "MIT", + "dependencies": { + "character-entities": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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/detect-libc": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz", + "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==", + "devOptional": true, + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, + "node_modules/detect-node-es": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", + "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==", + "license": "MIT" + }, + "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/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.5.218", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.218.tgz", + "integrity": "sha512-uwwdN0TUHs8u6iRgN8vKeWZMRll4gBkz+QMqdS7DDe49uiK68/UX92lFb61oiFPrpYZNeZIqa4bA7O6Aiasnzg==", + "dev": true, + "license": "ISC" + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true, + "license": "MIT" + }, + "node_modules/enhanced-resolve": { + "version": "5.18.3", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.3.tgz", + "integrity": "sha512-d4lC8xfavMeBjzGr2vECC3fsGXziXZQyJxD868h2M/mBI3PwAuODxAkLkq5HYuvrPYcUtiLzsTo8U3PgX3Ocww==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/environment": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/environment/-/environment-1.1.0.tgz", + "integrity": "sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/es-abstract": { + "version": "1.24.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz", + "integrity": "sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.2", + "arraybuffer.prototype.slice": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "data-view-buffer": "^1.0.2", + "data-view-byte-length": "^1.0.2", + "data-view-byte-offset": "^1.0.1", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "es-set-tostringtag": "^2.1.0", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.8", + "get-intrinsic": "^1.3.0", + "get-proto": "^1.0.1", + "get-symbol-description": "^1.1.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "internal-slot": "^1.1.0", + "is-array-buffer": "^3.0.5", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.2", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.2.1", + "is-set": "^2.0.3", + "is-shared-array-buffer": "^1.0.4", + "is-string": "^1.1.1", + "is-typed-array": "^1.1.15", + "is-weakref": "^1.1.1", + "math-intrinsics": "^1.1.0", + "object-inspect": "^1.13.4", + "object-keys": "^1.1.1", + "object.assign": "^4.1.7", + "own-keys": "^1.0.1", + "regexp.prototype.flags": "^1.5.4", + "safe-array-concat": "^1.1.3", + "safe-push-apply": "^1.0.0", + "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", + "stop-iteration-iterator": "^1.1.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.3", + "typed-array-byte-length": "^1.0.3", + "typed-array-byte-offset": "^1.0.4", + "typed-array-length": "^1.0.7", + "unbox-primitive": "^1.1.0", + "which-typed-array": "^1.1.19" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-iterator-helpers": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.1.tgz", + "integrity": "sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.6", + "es-errors": "^1.3.0", + "es-set-tostringtag": "^2.0.3", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.6", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "iterator.prototype": "^1.1.4", + "safe-array-concat": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-shim-unscopables": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", + "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-to-primitive": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", + "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.2.7", + "is-date-object": "^1.0.5", + "is-symbol": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/esast-util-from-estree": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/esast-util-from-estree/-/esast-util-from-estree-2.0.0.tgz", + "integrity": "sha512-4CyanoAudUSBAn5K13H4JhsMH6L9ZP7XbLVe/dKybkxMO7eDyLsT8UHl9TRNrU2Gr9nz+FovfSIjuXWJ81uVwQ==", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "devlop": "^1.0.0", + "estree-util-visit": "^2.0.0", + "unist-util-position-from-estree": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/esast-util-from-js": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/esast-util-from-js/-/esast-util-from-js-2.0.1.tgz", + "integrity": "sha512-8Ja+rNJ0Lt56Pcf3TAmpBZjmx8ZcK5Ts4cAzIOjsjevg9oSXJnl6SUQ2EevU8tv3h6ZLWmoKL5H4fgWvdvfETw==", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "acorn": "^8.0.0", + "esast-util-from-estree": "^2.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/esbuild": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.9.tgz", + "integrity": "sha512-CRbODhYyQx3qp7ZEwzxOk4JBqmD/seJrzPa/cGjY1VtIn5E09Oi9/dB4JwctnfZ8Q8iT7rioVv5k/FNT/uf54g==", + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.25.9", + "@esbuild/android-arm": "0.25.9", + "@esbuild/android-arm64": "0.25.9", + "@esbuild/android-x64": "0.25.9", + "@esbuild/darwin-arm64": "0.25.9", + "@esbuild/darwin-x64": "0.25.9", + "@esbuild/freebsd-arm64": "0.25.9", + "@esbuild/freebsd-x64": "0.25.9", + "@esbuild/linux-arm": "0.25.9", + "@esbuild/linux-arm64": "0.25.9", + "@esbuild/linux-ia32": "0.25.9", + "@esbuild/linux-loong64": "0.25.9", + "@esbuild/linux-mips64el": "0.25.9", + "@esbuild/linux-ppc64": "0.25.9", + "@esbuild/linux-riscv64": "0.25.9", + "@esbuild/linux-s390x": "0.25.9", + "@esbuild/linux-x64": "0.25.9", + "@esbuild/netbsd-arm64": "0.25.9", + "@esbuild/netbsd-x64": "0.25.9", + "@esbuild/openbsd-arm64": "0.25.9", + "@esbuild/openbsd-x64": "0.25.9", + "@esbuild/openharmony-arm64": "0.25.9", + "@esbuild/sunos-x64": "0.25.9", + "@esbuild/win32-arm64": "0.25.9", + "@esbuild/win32-ia32": "0.25.9", + "@esbuild/win32-x64": "0.25.9" + } + }, + "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": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "9.35.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.35.0.tgz", + "integrity": "sha512-QePbBFMJFjgmlE+cXAlbHZbHpdFVS2E/6vzCy7aKlebddvl1vadiC4JFV5u/wqTkNUwEV8WrQi257jf5f06hrg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.8.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.21.0", + "@eslint/config-helpers": "^0.3.1", + "@eslint/core": "^0.15.2", + "@eslint/eslintrc": "^3.3.1", + "@eslint/js": "9.35.0", + "@eslint/plugin-kit": "^0.3.5", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.2", + "@types/estree": "^1.0.6", + "@types/json-schema": "^7.0.15", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.4.0", + "eslint-visitor-keys": "^4.2.1", + "espree": "^10.4.0", + "esquery": "^1.5.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } + } + }, + "node_modules/eslint-config-next": { + "version": "15.5.3", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-15.5.3.tgz", + "integrity": "sha512-e6j+QhQFOr5pfsc8VJbuTD9xTXJaRvMHYjEeLPA2pFkheNlgPLCkxdvhxhfuM4KGcqSZj2qEnpHisdTVs3BxuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@next/eslint-plugin-next": "15.5.3", + "@rushstack/eslint-patch": "^1.10.3", + "@typescript-eslint/eslint-plugin": "^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0", + "@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-import-resolver-typescript": "^3.5.2", + "eslint-plugin-import": "^2.31.0", + "eslint-plugin-jsx-a11y": "^6.10.0", + "eslint-plugin-react": "^7.37.0", + "eslint-plugin-react-hooks": "^5.0.0" + }, + "peerDependencies": { + "eslint": "^7.23.0 || ^8.0.0 || ^9.0.0", + "typescript": ">=3.3.1" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-import-resolver-typescript": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.10.1.tgz", + "integrity": "sha512-A1rHYb06zjMGAxdLSkN2fXPBwuSaQ0iO5M/hdyS0Ajj1VBaRp0sPD3dn1FhME3c/JluGFbwSxyCfqdSbtQLAHQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "@nolyfill/is-core-module": "1.0.39", + "debug": "^4.4.0", + "get-tsconfig": "^4.10.0", + "is-bun-module": "^2.0.0", + "stable-hash": "^0.0.5", + "tinyglobby": "^0.2.13", + "unrs-resolver": "^1.6.2" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint-import-resolver-typescript" + }, + "peerDependencies": { + "eslint": "*", + "eslint-plugin-import": "*", + "eslint-plugin-import-x": "*" + }, + "peerDependenciesMeta": { + "eslint-plugin-import": { + "optional": true + }, + "eslint-plugin-import-x": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils": { + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.1.tgz", + "integrity": "sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^3.2.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import": { + "version": "2.32.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.32.0.tgz", + "integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rtsao/scc": "^1.1.0", + "array-includes": "^3.1.9", + "array.prototype.findlastindex": "^1.2.6", + "array.prototype.flat": "^1.3.3", + "array.prototype.flatmap": "^1.3.3", + "debug": "^3.2.7", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.9", + "eslint-module-utils": "^2.12.1", + "hasown": "^2.0.2", + "is-core-module": "^2.16.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.8", + "object.groupby": "^1.0.3", + "object.values": "^1.2.1", + "semver": "^6.3.1", + "string.prototype.trimend": "^1.0.9", + "tsconfig-paths": "^3.15.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import/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/eslint-plugin-jsx-a11y": { + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.2.tgz", + "integrity": "sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "aria-query": "^5.3.2", + "array-includes": "^3.1.8", + "array.prototype.flatmap": "^1.3.2", + "ast-types-flow": "^0.0.8", + "axe-core": "^4.10.0", + "axobject-query": "^4.1.0", + "damerau-levenshtein": "^1.0.8", + "emoji-regex": "^9.2.2", + "hasown": "^2.0.2", + "jsx-ast-utils": "^3.3.5", + "language-tags": "^1.0.9", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.8", + "safe-regex-test": "^1.0.3", + "string.prototype.includes": "^2.0.1" + }, + "engines": { + "node": ">=4.0" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9" + } + }, + "node_modules/eslint-plugin-react": { + "version": "7.37.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.5.tgz", + "integrity": "sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-includes": "^3.1.8", + "array.prototype.findlast": "^1.2.5", + "array.prototype.flatmap": "^1.3.3", + "array.prototype.tosorted": "^1.1.4", + "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.2.1", + "estraverse": "^5.3.0", + "hasown": "^2.0.2", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.9", + "object.fromentries": "^2.0.8", + "object.values": "^1.2.1", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.5", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.12", + "string.prototype.repeat": "^1.0.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.2.0.tgz", + "integrity": "sha512-+f15FfK64YQwZdJNELETdn5ibXEUQmW1DZL6KXhNnc2heoy/sg9VJJeT7n8TlMWouzWqSWavFkIhHyIbIAEapg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" + } + }, + "node_modules/eslint-plugin-react/node_modules/resolve": { + "version": "2.0.0-next.5", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", + "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/eslint-plugin-react/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/eslint-scope": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", + "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", + "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.15.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-util-attach-comments": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/estree-util-attach-comments/-/estree-util-attach-comments-3.0.0.tgz", + "integrity": "sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/estree-util-build-jsx": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/estree-util-build-jsx/-/estree-util-build-jsx-3.0.1.tgz", + "integrity": "sha512-8U5eiL6BTrPxp/CHbs2yMgP8ftMhR5ww1eIKoWRMlqvltHF8fZn5LRDvTKuxD3DUn+shRbLGqXemcP51oFCsGQ==", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "devlop": "^1.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "estree-walker": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "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-util-scope": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/estree-util-scope/-/estree-util-scope-1.0.0.tgz", + "integrity": "sha512-2CAASclonf+JFWBNJPndcOpA8EMJwa0Q8LUFJEKqXLW6+qBvbFZuF5gItbQOs/umBUkjviCSDCbBwU2cXbmrhQ==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "devlop": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/estree-util-to-js": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/estree-util-to-js/-/estree-util-to-js-2.0.0.tgz", + "integrity": "sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg==", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "astring": "^1.8.0", + "source-map": "^0.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/estree-util-value-to-estree": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-3.4.0.tgz", + "integrity": "sha512-Zlp+gxis+gCfK12d3Srl2PdX2ybsEA8ZYy6vQGVQTNNYLEGRQQ56XB64bjemN8kxIKXP1nC9ip4Z+ILy9LGzvQ==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/remcohaszing" + } + }, + "node_modules/estree-util-visit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/estree-util-visit/-/estree-util-visit-2.0.0.tgz", + "integrity": "sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww==", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/unist": "^3.0.0" + }, + "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==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eventemitter3": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", + "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==", + "dev": true, + "license": "MIT" + }, + "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-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "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.4" + }, + "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/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fastq": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^4.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "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/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "dev": true, + "license": "ISC" + }, + "node_modules/for-each": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fumadocs-core": { + "version": "15.7.11", + "resolved": "https://registry.npmjs.org/fumadocs-core/-/fumadocs-core-15.7.11.tgz", + "integrity": "sha512-G7NjwU1OhQRM2Ntfko0KxHmJodVg4yBSbo66DBPILWKyzn5GGZ2rBRjLpf9p/yMeVbzIdB1HY17Ns66Q/i2/ew==", + "license": "MIT", + "dependencies": { + "@formatjs/intl-localematcher": "^0.6.1", + "@orama/orama": "^3.1.13", + "@shikijs/rehype": "^3.12.2", + "@shikijs/transformers": "^3.12.2", + "github-slugger": "^2.0.0", + "hast-util-to-estree": "^3.1.3", + "hast-util-to-jsx-runtime": "^2.3.6", + "image-size": "^2.0.2", + "negotiator": "^1.0.0", + "npm-to-yarn": "^3.0.1", + "react-remove-scroll": "^2.7.1", + "remark": "^15.0.0", + "remark-gfm": "^4.0.1", + "remark-rehype": "^11.1.2", + "scroll-into-view-if-needed": "^3.1.0", + "shiki": "^3.12.2", + "unist-util-visit": "^5.0.0" + }, + "peerDependencies": { + "@mixedbread/sdk": "^0.19.0", + "@oramacloud/client": "1.x.x || 2.x.x", + "@tanstack/react-router": "1.x.x", + "@types/react": "*", + "algoliasearch": "5.x.x", + "next": "14.x.x || 15.x.x", + "react": "18.x.x || 19.x.x", + "react-dom": "18.x.x || 19.x.x", + "react-router": "7.x.x", + "waku": "^0.26.0" + }, + "peerDependenciesMeta": { + "@mixedbread/sdk": { + "optional": true + }, + "@oramacloud/client": { + "optional": true + }, + "@tanstack/react-router": { + "optional": true + }, + "@types/react": { + "optional": true + }, + "algoliasearch": { + "optional": true + }, + "next": { + "optional": true + }, + "react": { + "optional": true + }, + "react-dom": { + "optional": true + }, + "react-router": { + "optional": true + }, + "waku": { + "optional": true + } + } + }, + "node_modules/fumadocs-mdx": { + "version": "11.9.1", + "resolved": "https://registry.npmjs.org/fumadocs-mdx/-/fumadocs-mdx-11.9.1.tgz", + "integrity": "sha512-GFcRR2SdF3qt8YKcZbQbnH2mT57+GL5cyxsbyQwnj0ziFI0h7g4ITimpLkG3tArBNJE8V9NiLkPukmiuC93TSg==", + "license": "MIT", + "dependencies": { + "@mdx-js/mdx": "^3.1.1", + "@standard-schema/spec": "^1.0.0", + "chokidar": "^4.0.3", + "esbuild": "^0.25.9", + "estree-util-value-to-estree": "^3.4.0", + "js-yaml": "^4.1.0", + "lru-cache": "^11.2.1", + "picocolors": "^1.1.1", + "remark-mdx": "^3.1.1", + "remark-parse": "^11.0.0", + "tinyexec": "^1.0.1", + "tinyglobby": "^0.2.15", + "unified": "^11.0.5", + "unist-util-visit": "^5.0.0", + "zod": "^4.1.5" + }, + "bin": { + "fumadocs-mdx": "bin.js" + }, + "peerDependencies": { + "@fumadocs/mdx-remote": "^1.4.0", + "fumadocs-core": "^14.0.0 || ^15.0.0", + "next": "^15.3.0", + "react": "*", + "vite": "6.x.x || 7.x.x" + }, + "peerDependenciesMeta": { + "@fumadocs/mdx-remote": { + "optional": true + }, + "next": { + "optional": true + }, + "react": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/fumadocs-ui": { + "version": "15.7.11", + "resolved": "https://registry.npmjs.org/fumadocs-ui/-/fumadocs-ui-15.7.11.tgz", + "integrity": "sha512-XViexribg1qKSDqjBCCScMdvFdT78Lxk9r6BUw4klG1bKQfllUTH3zg8UK04EAI5DXmVnfRPZ+LHUMPMH69taQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-accordion": "^1.2.12", + "@radix-ui/react-collapsible": "^1.1.12", + "@radix-ui/react-dialog": "^1.1.15", + "@radix-ui/react-direction": "^1.1.1", + "@radix-ui/react-navigation-menu": "^1.2.14", + "@radix-ui/react-popover": "^1.1.15", + "@radix-ui/react-presence": "^1.1.5", + "@radix-ui/react-scroll-area": "^1.2.10", + "@radix-ui/react-slot": "^1.2.3", + "@radix-ui/react-tabs": "^1.1.13", + "class-variance-authority": "^0.7.1", + "fumadocs-core": "15.7.11", + "lodash.merge": "^4.6.2", + "next-themes": "^0.4.6", + "postcss-selector-parser": "^7.1.0", + "react-medium-image-zoom": "^5.3.0", + "scroll-into-view-if-needed": "^3.1.0", + "tailwind-merge": "^3.3.1" + }, + "peerDependencies": { + "@types/react": "*", + "next": "14.x.x || 15.x.x", + "react": "18.x.x || 19.x.x", + "react-dom": "18.x.x || 19.x.x", + "tailwindcss": "^3.4.14 || ^4.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "next": { + "optional": true + }, + "tailwindcss": { + "optional": true + } + } + }, + "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/function.prototype.name": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", + "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "functions-have-names": "^1.2.3", + "hasown": "^2.0.2", + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-east-asian-width": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.4.0.tgz", + "integrity": "sha512-QZjmEOC+IT1uk6Rx0sX22V6uHWVwbdbxf1faPqJ1QhLdGgsRGCZoyaQBm/piRdJy/D2um6hM1UP7ZEeQ4EkP+Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-nonce": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz", + "integrity": "sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-symbol-description": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-tsconfig": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.10.1.tgz", + "integrity": "sha512-auHyJ4AgMz7vgS8Hp3N6HXSmlMdUyhSUrfBF16w153rxtLIEOE+HGqaBppczZvnHLqQJfiHotCYpNhl0lUROFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "resolve-pkg-maps": "^1.0.0" + }, + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + } + }, + "node_modules/github-slugger": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-2.0.0.tgz", + "integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==", + "license": "ISC" + }, + "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/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true, + "license": "MIT" + }, + "node_modules/has-bigints": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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-heading-rank": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-heading-rank/-/hast-util-heading-rank-3.0.0.tgz", + "integrity": "sha512-EJKb8oMUXVHcWZTDepnr+WNbfnXKFNf9duMesmr4S8SXTJBJ9M4Yok08pu9vxdJwdlGRhVumk9mEhkEvKGifwA==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-is-element": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz", + "integrity": "sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-estree": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/hast-util-to-estree/-/hast-util-to-estree-3.1.3.tgz", + "integrity": "sha512-48+B/rJWAp0jamNbAAf9M7Uf//UVqAoMmgXhBdxTDJLGKY+LRnZ99qcG+Qjl5HfMpYNzS5v4EAwVEF34LeAj7w==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "devlop": "^1.0.0", + "estree-util-attach-comments": "^3.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", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-html": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.5.tgz", + "integrity": "sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "ccount": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-whitespace": "^3.0.0", + "html-void-elements": "^3.0.0", + "mdast-util-to-hast": "^13.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0", + "stringify-entities": "^4.0.0", + "zwitch": "^2.0.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "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-to-string": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-3.0.1.tgz", + "integrity": "sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.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-void-elements": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz", + "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/husky": { + "version": "9.1.7", + "resolved": "https://registry.npmjs.org/husky/-/husky-9.1.7.tgz", + "integrity": "sha512-5gs5ytaNjBrh5Ow3zrvdUUY+0VxIuWVL4i9irt6friV+BqdCfmV11CQTWMiBYWHbXhco+J1kHfTOUkePhCDvMA==", + "dev": true, + "license": "MIT", + "bin": { + "husky": "bin.js" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/typicode" + } + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/image-size": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-2.0.2.tgz", + "integrity": "sha512-IRqXKlaXwgSMAMtpNzZa1ZAe8m+Sa1770Dhk8VkSsP9LS+iHD62Zd8FQKs8fbPiagBE7BzoFX23cxFnwshpV6w==", + "license": "MIT", + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=16.x" + } + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inline-style-parser": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.4.tgz", + "integrity": "sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q==", + "license": "MIT" + }, + "node_modules/internal-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.2", + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "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-array-buffer": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", + "license": "MIT", + "optional": true + }, + "node_modules/is-async-function": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", + "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "async-function": "^1.0.0", + "call-bound": "^1.0.3", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bigint": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-bigints": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-boolean-object": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", + "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bun-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-bun-module/-/is-bun-module-2.0.0.tgz", + "integrity": "sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.7.1" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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-data-view": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", + "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-tostringtag": "^1.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-finalizationregistry": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", + "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-generator-function": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", + "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-proto": "^1.0.0", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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-number-object": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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/is-regex": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", + "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", + "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "license": "MIT" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/iterator.prototype": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.5.tgz", + "integrity": "sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.6", + "get-proto": "^1.0.0", + "has-symbols": "^1.1.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/jiti": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.5.1.tgz", + "integrity": "sha512-twQoecYPiVA5K/h6SxtORw/Bs3ar+mLUtoPSc7iMXzQzK8d7eJ/R09wmTwAjiamETn1cXYPGfNnu7DMoHgu12w==", + "dev": true, + "license": "MIT", + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "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/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/jsx-ast-utils": { + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", + "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-includes": "^3.1.6", + "array.prototype.flat": "^1.3.1", + "object.assign": "^4.1.4", + "object.values": "^1.1.6" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/language-subtag-registry": { + "version": "0.3.23", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.23.tgz", + "integrity": "sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==", + "dev": true, + "license": "CC0-1.0" + }, + "node_modules/language-tags": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz", + "integrity": "sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==", + "dev": true, + "license": "MIT", + "dependencies": { + "language-subtag-registry": "^0.3.20" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lightningcss": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.30.1.tgz", + "integrity": "sha512-xi6IyHML+c9+Q3W0S4fCQJOym42pyurFiJUHEcEyHS0CeKzia4yZDEsLlqOFykxOdHpNy0NmvVO31vcSqAxJCg==", + "dev": true, + "license": "MPL-2.0", + "dependencies": { + "detect-libc": "^2.0.3" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "lightningcss-darwin-arm64": "1.30.1", + "lightningcss-darwin-x64": "1.30.1", + "lightningcss-freebsd-x64": "1.30.1", + "lightningcss-linux-arm-gnueabihf": "1.30.1", + "lightningcss-linux-arm64-gnu": "1.30.1", + "lightningcss-linux-arm64-musl": "1.30.1", + "lightningcss-linux-x64-gnu": "1.30.1", + "lightningcss-linux-x64-musl": "1.30.1", + "lightningcss-win32-arm64-msvc": "1.30.1", + "lightningcss-win32-x64-msvc": "1.30.1" + } + }, + "node_modules/lightningcss-darwin-arm64": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.30.1.tgz", + "integrity": "sha512-c8JK7hyE65X1MHMN+Viq9n11RRC7hgin3HhYKhrMyaXflk5GVplZ60IxyoVtzILeKr+xAJwg6zK6sjTBJ0FKYQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-x64": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.30.1.tgz", + "integrity": "sha512-k1EvjakfumAQoTfcXUcHQZhSpLlkAuEkdMBsI/ivWw9hL+7FtilQc0Cy3hrx0AAQrVtQAbMI7YjCgYgvn37PzA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-freebsd-x64": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.30.1.tgz", + "integrity": "sha512-kmW6UGCGg2PcyUE59K5r0kWfKPAVy4SltVeut+umLCFoJ53RdCUWxcRDzO1eTaxf/7Q2H7LTquFHPL5R+Gjyig==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm-gnueabihf": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.30.1.tgz", + "integrity": "sha512-MjxUShl1v8pit+6D/zSPq9S9dQ2NPFSQwGvxBCYaBYLPlCWuPh9/t1MRS8iUaR8i+a6w7aps+B4N0S1TYP/R+Q==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-gnu": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.30.1.tgz", + "integrity": "sha512-gB72maP8rmrKsnKYy8XUuXi/4OctJiuQjcuqWNlJQ6jZiWqtPvqFziskH3hnajfvKB27ynbVCucKSm2rkQp4Bw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-musl": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.30.1.tgz", + "integrity": "sha512-jmUQVx4331m6LIX+0wUhBbmMX7TCfjF5FoOH6SD1CttzuYlGNVpA7QnrmLxrsub43ClTINfGSYyHe2HWeLl5CQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-gnu": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.30.1.tgz", + "integrity": "sha512-piWx3z4wN8J8z3+O5kO74+yr6ze/dKmPnI7vLqfSqI8bccaTGY5xiSGVIJBDd5K5BHlvVLpUB3S2YCfelyJ1bw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-musl": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.30.1.tgz", + "integrity": "sha512-rRomAK7eIkL+tHY0YPxbc5Dra2gXlI63HL+v1Pdi1a3sC+tJTcFrHX+E86sulgAXeI7rSzDYhPSeHHjqFhqfeQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-arm64-msvc": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.30.1.tgz", + "integrity": "sha512-mSL4rqPi4iXq5YVqzSsJgMVFENoa4nGTT/GjO2c0Yl9OuQfPsIfncvLrEW6RbbB24WtZ3xP/2CCmI3tNkNV4oA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-x64-msvc": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.30.1.tgz", + "integrity": "sha512-PVqXh48wh4T53F/1CCu8PIPCxLzWyCnn/9T5W1Jpmdy5h9Cwd+0YQS6/LwhHXSafuc61/xg9Lv5OrCby6a++jg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "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/lint-staged": { + "version": "16.1.6", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-16.1.6.tgz", + "integrity": "sha512-U4kuulU3CKIytlkLlaHcGgKscNfJPNTiDF2avIUGFCv7K95/DCYQ7Ra62ydeRWmgQGg9zJYw2dzdbztwJlqrow==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^5.6.0", + "commander": "^14.0.0", + "debug": "^4.4.1", + "lilconfig": "^3.1.3", + "listr2": "^9.0.3", + "micromatch": "^4.0.8", + "nano-spawn": "^1.0.2", + "pidtree": "^0.6.0", + "string-argv": "^0.3.2", + "yaml": "^2.8.1" + }, + "bin": { + "lint-staged": "bin/lint-staged.js" + }, + "engines": { + "node": ">=20.17" + }, + "funding": { + "url": "https://opencollective.com/lint-staged" + } + }, + "node_modules/lint-staged/node_modules/chalk": { + "version": "5.6.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz", + "integrity": "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/listr2": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-9.0.3.tgz", + "integrity": "sha512-0aeh5HHHgmq1KRdMMDHfhMWQmIT/m7nRDTlxlFqni2Sp0had9baqsjJRvDGdlvgd6NmPE0nPloOipiQJGFtTHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "cli-truncate": "^4.0.0", + "colorette": "^2.0.20", + "eventemitter3": "^5.0.1", + "log-update": "^6.1.0", + "rfdc": "^1.4.1", + "wrap-ansi": "^9.0.0" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "license": "MIT" + }, + "node_modules/log-update": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-6.1.0.tgz", + "integrity": "sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-escapes": "^7.0.0", + "cli-cursor": "^5.0.0", + "slice-ansi": "^7.1.0", + "strip-ansi": "^7.1.0", + "wrap-ansi": "^9.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-update/node_modules/ansi-styles": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/log-update/node_modules/is-fullwidth-code-point": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-5.1.0.tgz", + "integrity": "sha512-5XHYaSyiqADb4RnZ1Bdad6cPp8Toise4TzEjcOYDHZkTCbKgiUl7WTUCpNWHuxmDt91wnsZBc9xinNzopv3JMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-east-asian-width": "^1.3.1" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-update/node_modules/slice-ansi": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-7.1.2.tgz", + "integrity": "sha512-iOBWFgUX7caIZiuutICxVgX1SdxwAVFFKwt1EvMYYec/NWO5meOJ6K5uQxhrYBdQJne4KxiqZc+KptFOWFSI9w==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.2.1", + "is-fullwidth-code-point": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "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/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lru-cache": { + "version": "11.2.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.2.1.tgz", + "integrity": "sha512-r8LA6i4LP4EeWOhqBaZZjDWwehd1xUJPCJd9Sv300H0ZmcUER4+JPh7bqqZeqs1o5pgtgvXm+d9UGrB5zZGDiQ==", + "license": "ISC", + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/lucide-react": { + "version": "0.544.0", + "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-0.544.0.tgz", + "integrity": "sha512-t5tS44bqd825zAW45UQxpG2CvcC4urOwn2TrwSH8u+MjeE+1NnWl6QqeQ/6NdjMqdOygyiT9p3Ev0p1NJykxjw==", + "license": "ISC", + "peerDependencies": { + "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/magic-string": { + "version": "0.30.19", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.19.tgz", + "integrity": "sha512-2N21sPY9Ws53PZvsEpVtNuSW+ScYbQdp4b9qUaL+9QkHUrGFKo56Lg9Emg5s9V/qrtNBmiR01sYhUOwu3H+VOw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/markdown-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/markdown-extensions/-/markdown-extensions-2.0.0.tgz", + "integrity": "sha512-o5vL7aDWatOTX8LzaS1WMoaoxIiLRQJuIKKe2wAw6IeULDHaqbiqiggmx+pKvZDb1Sj+pE46Sn1T7lCqfFtg1Q==", + "license": "MIT", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "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-find-and-replace/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/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": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-mdx/-/mdast-util-mdx-3.0.0.tgz", + "integrity": "sha512-JfbYLAW7XnYTTbUsmpu0kdBUVe+yKVJZBItEjwyYJiDJuZ9w4eeaqks4HQO+R7objWgS2ymV60GYpI14Ug554w==", + "license": "MIT", + "dependencies": { + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-mdx-expression": "^2.0.0", + "mdast-util-mdx-jsx": "^3.0.0", + "mdast-util-mdxjs-esm": "^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.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz", + "integrity": "sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==", + "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-extension-mdx-expression": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx-expression/-/micromark-extension-mdx-expression-3.0.1.tgz", + "integrity": "sha512-dD/ADLJ1AeMvSAKBwO22zG22N4ybhe7kFIZ3LsDI0GlsNr2A3KYxb0LdC1u5rj4Nw+CHKY0RVdnHX8vj8ejm4Q==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-mdx-expression": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-mdx-jsx": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-3.0.2.tgz", + "integrity": "sha512-e5+q1DjMh62LZAJOnDraSSbDMvGJ8x3cbjygy2qFEi7HCeUT4BDKCvMozPozcD6WmOt6sVvYDNBKhFSz3kjOVQ==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "devlop": "^1.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "micromark-factory-mdx-expression": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-mdx-md": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx-md/-/micromark-extension-mdx-md-2.0.0.tgz", + "integrity": "sha512-EpAiszsB3blw4Rpba7xTOUptcFeBFi+6PY8VnJ2hhimH+vCQDirWgsMpz7w1XcZE7LVrSAUGb9VJpG9ghlYvYQ==", + "license": "MIT", + "dependencies": { + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-mdxjs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs/-/micromark-extension-mdxjs-3.0.0.tgz", + "integrity": "sha512-A873fJfhnJ2siZyUrJ31l34Uqwy4xIFmvPY1oj+Ean5PHcPBYzEsvqvWGaWcfEIr11O5Dlw3p2y0tZWpKHDejQ==", + "license": "MIT", + "dependencies": { + "acorn": "^8.0.0", + "acorn-jsx": "^5.0.0", + "micromark-extension-mdx-expression": "^3.0.0", + "micromark-extension-mdx-jsx": "^3.0.0", + "micromark-extension-mdx-md": "^2.0.0", + "micromark-extension-mdxjs-esm": "^3.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-mdxjs-esm": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs-esm/-/micromark-extension-mdxjs-esm-3.0.0.tgz", + "integrity": "sha512-DJFl4ZqkErRpq/dAPyeWp15tGrcrrJho1hKK5uBS70BCtfrIFg81sqcTVu3Ta+KD1Tk5vAtBNElWxtAa+m8K9A==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-position-from-estree": "^2.0.0", + "vfile-message": "^4.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-mdx-expression": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/micromark-factory-mdx-expression/-/micromark-factory-mdx-expression-2.0.3.tgz", + "integrity": "sha512-kQnEtA3vzucU2BkrIa8/VaSAsP+EJ3CKOvhMuJgOEGg9KDC6OAY6nSnNDVRiVNRqj7Y4SlSzcStaH/5jge8JdQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-position-from-estree": "^2.0.0", + "vfile-message": "^4.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-events-to-acorn": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/micromark-util-events-to-acorn/-/micromark-util-events-to-acorn-2.0.3.tgz", + "integrity": "sha512-jmsiEIiZ1n7X1Rr5k8wVExBQCg5jy4UXVADItHmNk1zkwEVhBuIUKRu3fqv+hs4nxLISi2DQGlqIOGiFxgbfHg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "@types/unist": "^3.0.0", + "devlop": "^1.0.0", + "estree-util-visit": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "vfile-message": "^4.0.0" + } + }, + "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/mimic-function": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/mimic-function/-/mimic-function-5.0.1.tgz", + "integrity": "sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minizlib": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.0.2.tgz", + "integrity": "sha512-oG62iEk+CYt5Xj2YqI5Xi9xWUeZhDI8jjQmC5oThVH5JGCTgIjr7ciJDzC7MBzYd//WvR1OTmP5Q38Q8ShQtVA==", + "dev": true, + "license": "MIT", + "dependencies": { + "minipass": "^7.1.2" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/mkdirp": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz", + "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==", + "dev": true, + "license": "MIT", + "bin": { + "mkdirp": "dist/cjs/src/bin.js" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "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/nano-spawn": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/nano-spawn/-/nano-spawn-1.0.3.tgz", + "integrity": "sha512-jtpsQDetTnvS2Ts1fiRdci5rx0VYws5jGyC+4IYOTnIQ/wwdf6JdomlHBwqC3bJYOvaKu0C2GSZ1A60anrYpaA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=20.17" + }, + "funding": { + "url": "https://github.com/sindresorhus/nano-spawn?sponsor=1" + } + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "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/napi-postinstall": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.3.3.tgz", + "integrity": "sha512-uTp172LLXSxuSYHv/kou+f6KW3SMppU9ivthaVTXian9sOt3XM/zHYHpRZiLgQoxeWfYUnslNWQHF1+G71xcow==", + "dev": true, + "license": "MIT", + "bin": { + "napi-postinstall": "lib/cli.js" + }, + "engines": { + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/napi-postinstall" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/negotiator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz", + "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/next": { + "version": "15.5.3", + "resolved": "https://registry.npmjs.org/next/-/next-15.5.3.tgz", + "integrity": "sha512-r/liNAx16SQj4D+XH/oI1dlpv9tdKJ6cONYPwwcCC46f2NjpaRWY+EKCzULfgQYV6YKXjHBchff2IZBSlZmJNw==", + "license": "MIT", + "dependencies": { + "@next/env": "15.5.3", + "@swc/helpers": "0.5.15", + "caniuse-lite": "^1.0.30001579", + "postcss": "8.4.31", + "styled-jsx": "5.1.6" + }, + "bin": { + "next": "dist/bin/next" + }, + "engines": { + "node": "^18.18.0 || ^19.8.0 || >= 20.0.0" + }, + "optionalDependencies": { + "@next/swc-darwin-arm64": "15.5.3", + "@next/swc-darwin-x64": "15.5.3", + "@next/swc-linux-arm64-gnu": "15.5.3", + "@next/swc-linux-arm64-musl": "15.5.3", + "@next/swc-linux-x64-gnu": "15.5.3", + "@next/swc-linux-x64-musl": "15.5.3", + "@next/swc-win32-arm64-msvc": "15.5.3", + "@next/swc-win32-x64-msvc": "15.5.3", + "sharp": "^0.34.3" + }, + "peerDependencies": { + "@opentelemetry/api": "^1.1.0", + "@playwright/test": "^1.51.1", + "babel-plugin-react-compiler": "*", + "react": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", + "react-dom": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", + "sass": "^1.3.0" + }, + "peerDependenciesMeta": { + "@opentelemetry/api": { + "optional": true + }, + "@playwright/test": { + "optional": true + }, + "babel-plugin-react-compiler": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, + "node_modules/next-themes": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.4.6.tgz", + "integrity": "sha512-pZvgD5L0IEvX5/9GWyHMf3m8BKiVQwsCMHfoFosXtXBMnaS0ZnIJ9ST4b4NqLVKDEm8QBxoNNGNaBv2JNF6XNA==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc" + } + }, + "node_modules/next/node_modules/postcss": { + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "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.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/node-releases": { + "version": "2.0.21", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.21.tgz", + "integrity": "sha512-5b0pgg78U3hwXkCM8Z9b2FJdPZlr9Psr9V2gQPESdGHqbntyFJKFW4r5TeWGFzafGY3hzs1JC62VEQMbl1JFkw==", + "dev": true, + "license": "MIT" + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-to-yarn": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/npm-to-yarn/-/npm-to-yarn-3.0.1.tgz", + "integrity": "sha512-tt6PvKu4WyzPwWUzy/hvPFqn+uwXO0K1ZHka8az3NnrhWJDmSqI8ncWq0fkL0k/lmmi5tAC11FXwXuh0rFbt1A==", + "license": "MIT", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/nebrelbug/npm-to-yarn?sponsor=1" + } + }, + "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-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.entries": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz", + "integrity": "sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", + "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.values": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", + "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/onetime": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-7.0.0.tgz", + "integrity": "sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-function": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/oniguruma-parser": { + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/oniguruma-parser/-/oniguruma-parser-0.12.1.tgz", + "integrity": "sha512-8Unqkvk1RYc6yq2WBYRj4hdnsAxVze8i7iPfQr8e4uSP3tRv0rpZcbGUDvxfQQcdwHt/e9PrMvGCsa8OqG9X3w==", + "license": "MIT" + }, + "node_modules/oniguruma-to-es": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-4.3.3.tgz", + "integrity": "sha512-rPiZhzC3wXwE59YQMRDodUwwT9FZ9nNBwQQfsd1wfdtlKEyCdRV0avrTcSZ5xlIvGRVPd/cx6ZN45ECmS39xvg==", + "license": "MIT", + "dependencies": { + "oniguruma-parser": "^0.12.1", + "regex": "^6.0.1", + "regex-recursion": "^6.0.2" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/own-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", + "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.6", + "object-keys": "^1.1.1", + "safe-push-apply": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "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-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "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/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "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/pidtree": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz", + "integrity": "sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==", + "dev": true, + "license": "MIT", + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/possible-typed-array-names": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", + "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "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-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "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/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.6.2.tgz", + "integrity": "sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ==", + "dev": true, + "license": "MIT", + "bin": { + "prettier": "bin/prettier.cjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dev": true, + "license": "MIT", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "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/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "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.1.1", + "resolved": "https://registry.npmjs.org/react/-/react-19.1.1.tgz", + "integrity": "sha512-w8nqGImo45dmMIfljjMwOGtbmC/mk4CMYhWIicdSflH91J9TyCyczcPFXJzrZ/ZXcgGRFeP6BU0BEJTw6tZdfQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.1.1.tgz", + "integrity": "sha512-Dlq/5LAZgF0Gaz6yiqZCf6VCcZs1ghAJyrsu84Q/GT0gV+mCxbfmKNoGRKBYMJ8IEdGPqu49YWXD02GCknEDkw==", + "license": "MIT", + "dependencies": { + "scheduler": "^0.26.0" + }, + "peerDependencies": { + "react": "^19.1.1" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/react-medium-image-zoom": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/react-medium-image-zoom/-/react-medium-image-zoom-5.3.0.tgz", + "integrity": "sha512-RCIzVlsKqy3BYgGgYbolUfuvx0aSKC7YhX/IJGEp+WJxsqdIVYJHkBdj++FAj6VD7RiWj6VVmdCfa/9vJE9hZg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/rpearce" + } + ], + "license": "BSD-3-Clause", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/react-remove-scroll": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.7.1.tgz", + "integrity": "sha512-HpMh8+oahmIdOuS5aFKKY6Pyog+FNaZV/XyJOq7b4YFwsFHe5yYfdbIalI4k3vU2nSDql7YskmUseHsRrJqIPA==", + "license": "MIT", + "dependencies": { + "react-remove-scroll-bar": "^2.3.7", + "react-style-singleton": "^2.2.3", + "tslib": "^2.1.0", + "use-callback-ref": "^1.3.3", + "use-sidecar": "^1.1.3" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-remove-scroll-bar": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.8.tgz", + "integrity": "sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==", + "license": "MIT", + "dependencies": { + "react-style-singleton": "^2.2.2", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-style-singleton": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.3.tgz", + "integrity": "sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==", + "license": "MIT", + "dependencies": { + "get-nonce": "^1.0.0", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/readdirp": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", + "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", + "license": "MIT", + "engines": { + "node": ">= 14.18.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/recma-build-jsx": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/recma-build-jsx/-/recma-build-jsx-1.0.0.tgz", + "integrity": "sha512-8GtdyqaBcDfva+GUKDr3nev3VpKAhup1+RvkMvUxURHpW7QyIvk9F5wz7Vzo06CEMSilw6uArgRqhpiUcWp8ew==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-util-build-jsx": "^3.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/recma-jsx": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/recma-jsx/-/recma-jsx-1.0.1.tgz", + "integrity": "sha512-huSIy7VU2Z5OLv6oFLosQGGDqPqdO1iq6bWNAdhzMxSJP7RAso4fCZ1cKu8j9YHCZf3TPrq4dw3okhrylgcd7w==", + "license": "MIT", + "dependencies": { + "acorn-jsx": "^5.0.0", + "estree-util-to-js": "^2.0.0", + "recma-parse": "^1.0.0", + "recma-stringify": "^1.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + }, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/recma-parse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/recma-parse/-/recma-parse-1.0.0.tgz", + "integrity": "sha512-OYLsIGBB5Y5wjnSnQW6t3Xg7q3fQ7FWbw/vcXtORTnyaSFscOtABg+7Pnz6YZ6c27fG1/aN8CjfwoUEUIdwqWQ==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "esast-util-from-js": "^2.0.0", + "unified": "^11.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/recma-stringify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/recma-stringify/-/recma-stringify-1.0.0.tgz", + "integrity": "sha512-cjwII1MdIIVloKvC9ErQ+OgAtwHBmcZ0Bg4ciz78FtbT8In39aAYbaA7zvxQ61xVMSPE8WxhLwLbhif4Js2C+g==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-util-to-js": "^2.0.0", + "unified": "^11.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", + "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.1", + "which-builtin-type": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/regex/-/regex-6.0.1.tgz", + "integrity": "sha512-uorlqlzAKjKQZ5P+kTJr3eeJGSVroLKoHmquUj4zHWuR+hEyNqlXsSKlYYF5F4NI6nl7tWCs0apKJ0lmfsXAPA==", + "license": "MIT", + "dependencies": { + "regex-utilities": "^2.3.0" + } + }, + "node_modules/regex-recursion": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-6.0.2.tgz", + "integrity": "sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==", + "license": "MIT", + "dependencies": { + "regex-utilities": "^2.3.0" + } + }, + "node_modules/regex-utilities": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/regex-utilities/-/regex-utilities-2.3.0.tgz", + "integrity": "sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==", + "license": "MIT" + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/rehype-autolink-headings": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/rehype-autolink-headings/-/rehype-autolink-headings-7.1.0.tgz", + "integrity": "sha512-rItO/pSdvnvsP4QRB1pmPiNHUskikqtPojZKJPPPAVx9Hj8i8TwMBhofrrAYRhYOOBZH9tgmG5lPqDLuIWPWmw==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@ungap/structured-clone": "^1.0.0", + "hast-util-heading-rank": "^3.0.0", + "hast-util-is-element": "^3.0.0", + "unified": "^11.0.0", + "unist-util-visit": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/rehype-recma": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/rehype-recma/-/rehype-recma-1.0.0.tgz", + "integrity": "sha512-lqA4rGUf1JmacCNWWZx0Wv1dHqMwxzsDWYMTowuplHF3xH0N/MmrZ/G3BDZnzAkRmxDadujCjaKM2hqYdCBOGw==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "@types/hast": "^3.0.0", + "hast-util-to-estree": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/rehype-slug": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/rehype-slug/-/rehype-slug-6.0.0.tgz", + "integrity": "sha512-lWyvf/jwu+oS5+hL5eClVd3hNdmwM1kAC0BUvEGD19pajQMIzcNUd/k9GsfQ+FfECvX+JE+e9/btsKH0EjJT6A==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "github-slugger": "^2.0.0", + "hast-util-heading-rank": "^3.0.0", + "hast-util-to-string": "^3.0.0", + "unist-util-visit": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark": { + "version": "15.0.1", + "resolved": "https://registry.npmjs.org/remark/-/remark-15.0.1.tgz", + "integrity": "sha512-Eht5w30ruCXgFmxVUSlNWQ9iiimq07URKeFS3hNc8cUWy1llX4KDWfyEDZRycMc+znsN9Ux5/tJ/BFdgdOwA3A==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.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-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-mdx": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-3.1.1.tgz", + "integrity": "sha512-Pjj2IYlUY3+D8x00UJsIOg5BEvfMyeI+2uLPn9VO9Wg4MEtN/VTIq2NEJQfde9PnX15KgtHyl9S0BcTnWrIuWg==", + "license": "MIT", + "dependencies": { + "mdast-util-mdx": "^3.0.0", + "micromark-extension-mdxjs": "^3.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.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.0", + "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/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + } + }, + "node_modules/restore-cursor": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-5.1.0.tgz", + "integrity": "sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==", + "dev": true, + "license": "MIT", + "dependencies": { + "onetime": "^7.0.0", + "signal-exit": "^4.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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/rfdc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", + "dev": true, + "license": "MIT" + }, + "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/safe-array-concat": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", + "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "has-symbols": "^1.1.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-push-apply": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", + "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-regex-test": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-regex": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/scheduler": { + "version": "0.26.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.26.0.tgz", + "integrity": "sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==", + "license": "MIT" + }, + "node_modules/scroll-into-view-if-needed": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/scroll-into-view-if-needed/-/scroll-into-view-if-needed-3.1.0.tgz", + "integrity": "sha512-49oNpRjWRvnU8NyGVmUaYG4jtTkNonFZI86MmGRDqBphEK2EXT9gdEUoQPZhuBM8yWHxCWbobltqYO5M4XrUvQ==", + "license": "MIT", + "dependencies": { + "compute-scroll-into-view": "^3.0.2" + } + }, + "node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "devOptional": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-proto": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", + "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/sharp": { + "version": "0.34.3", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.34.3.tgz", + "integrity": "sha512-eX2IQ6nFohW4DbvHIOLRB3MHFpYqaqvXd3Tp5e/T/dSH83fxaNJQRvDMhASmkNTsNTVF2/OOopzRCt7xokgPfg==", + "hasInstallScript": true, + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "color": "^4.2.3", + "detect-libc": "^2.0.4", + "semver": "^7.7.2" + }, + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-darwin-arm64": "0.34.3", + "@img/sharp-darwin-x64": "0.34.3", + "@img/sharp-libvips-darwin-arm64": "1.2.0", + "@img/sharp-libvips-darwin-x64": "1.2.0", + "@img/sharp-libvips-linux-arm": "1.2.0", + "@img/sharp-libvips-linux-arm64": "1.2.0", + "@img/sharp-libvips-linux-ppc64": "1.2.0", + "@img/sharp-libvips-linux-s390x": "1.2.0", + "@img/sharp-libvips-linux-x64": "1.2.0", + "@img/sharp-libvips-linuxmusl-arm64": "1.2.0", + "@img/sharp-libvips-linuxmusl-x64": "1.2.0", + "@img/sharp-linux-arm": "0.34.3", + "@img/sharp-linux-arm64": "0.34.3", + "@img/sharp-linux-ppc64": "0.34.3", + "@img/sharp-linux-s390x": "0.34.3", + "@img/sharp-linux-x64": "0.34.3", + "@img/sharp-linuxmusl-arm64": "0.34.3", + "@img/sharp-linuxmusl-x64": "0.34.3", + "@img/sharp-wasm32": "0.34.3", + "@img/sharp-win32-arm64": "0.34.3", + "@img/sharp-win32-ia32": "0.34.3", + "@img/sharp-win32-x64": "0.34.3" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/shiki": { + "version": "3.12.2", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-3.12.2.tgz", + "integrity": "sha512-uIrKI+f9IPz1zDT+GMz+0RjzKJiijVr6WDWm9Pe3NNY6QigKCfifCEv9v9R2mDASKKjzjQ2QpFLcxaR3iHSnMA==", + "license": "MIT", + "dependencies": { + "@shikijs/core": "3.12.2", + "@shikijs/engine-javascript": "3.12.2", + "@shikijs/engine-oniguruma": "3.12.2", + "@shikijs/langs": "3.12.2", + "@shikijs/themes": "3.12.2", + "@shikijs/types": "3.12.2", + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.4" + } + }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "license": "MIT", + "optional": true, + "dependencies": { + "is-arrayish": "^0.3.1" + } + }, + "node_modules/slice-ansi": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.0.0", + "is-fullwidth-code-point": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/slice-ansi/node_modules/ansi-styles": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/source-map": { + "version": "0.7.6", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.6.tgz", + "integrity": "sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==", + "license": "BSD-3-Clause", + "engines": { + "node": ">= 12" + } + }, + "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==", + "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/stable-hash": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/stable-hash/-/stable-hash-0.0.5.tgz", + "integrity": "sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==", + "dev": true, + "license": "MIT" + }, + "node_modules/stop-iteration-iterator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", + "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "internal-slot": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string-argv": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.2.tgz", + "integrity": "sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.6.19" + } + }, + "node_modules/string-width": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", + "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^10.3.0", + "get-east-asian-width": "^1.0.0", + "strip-ansi": "^7.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width/node_modules/emoji-regex": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.5.0.tgz", + "integrity": "sha512-lb49vf1Xzfx080OKA0o6l8DQQpV+6Vg95zyCJX9VB/BqKYlhG7N4wgROUUHRA+ZPUefLnteQOad7z1kT2bV7bg==", + "dev": true, + "license": "MIT" + }, + "node_modules/string.prototype.includes": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz", + "integrity": "sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.12", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.12.tgz", + "integrity": "sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.6", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.6", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "regexp.prototype.flags": "^1.5.3", + "set-function-name": "^2.0.2", + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.repeat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", + "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", + "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-data-property": "^1.1.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-object-atoms": "^1.0.0", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", + "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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/strip-ansi": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz", + "integrity": "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/style-to-js": { + "version": "1.1.17", + "resolved": "https://registry.npmjs.org/style-to-js/-/style-to-js-1.1.17.tgz", + "integrity": "sha512-xQcBGDxJb6jjFCTzvQtfiPn6YvvP2O8U1MDIPNfJQlWMYfktPy+iGsHE7cssjs7y84d9fQaK4UF3RIJaAHSoYA==", + "license": "MIT", + "dependencies": { + "style-to-object": "1.0.9" + } + }, + "node_modules/style-to-object": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-1.0.9.tgz", + "integrity": "sha512-G4qppLgKu/k6FwRpHiGiKPaPTFcG3g4wNVX/Qsfu+RqQM30E7Tyu/TEgxcL9PNLF5pdRLwQdE3YKKf+KF2Dzlw==", + "license": "MIT", + "dependencies": { + "inline-style-parser": "0.2.4" + } + }, + "node_modules/styled-jsx": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.6.tgz", + "integrity": "sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==", + "license": "MIT", + "dependencies": { + "client-only": "0.0.1" + }, + "engines": { + "node": ">= 12.0.0" + }, + "peerDependencies": { + "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0 || ^19.0.0-0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "babel-plugin-macros": { + "optional": true + } + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "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/tailwind-merge": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-3.3.1.tgz", + "integrity": "sha512-gBXpgUm/3rp1lMZZrM/w7D8GKqshif0zAymAhbCyIt8KMe+0v9DQ7cdYLR4FHH/cKpdTXb+A/tKKU3eolfsI+g==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/dcastil" + } + }, + "node_modules/tailwindcss": { + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.1.13.tgz", + "integrity": "sha512-i+zidfmTqtwquj4hMEwdjshYYgMbOrPzb9a0M3ZgNa0JMoZeFC6bxZvO8yr8ozS6ix2SDz0+mvryPeBs2TFE+w==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/tapable": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.3.tgz", + "integrity": "sha512-ZL6DDuAlRlLGghwcfmSn9sK3Hr6ArtyudlSAiCqQ6IfE+b+HHbydbYDIG15IfS5do+7XQQBdBiubF/cV2dnDzg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/tar": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz", + "integrity": "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==", + "dev": true, + "license": "ISC", + "dependencies": { + "@isaacs/fs-minipass": "^4.0.0", + "chownr": "^3.0.0", + "minipass": "^7.1.2", + "minizlib": "^3.0.1", + "mkdirp": "^3.0.1", + "yallist": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/tinyexec": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.0.1.tgz", + "integrity": "sha512-5uC6DDlmeqiOwCPmK9jMSdOuZTh8bU39Ys6yidB+UTt5hfZUPGAypSgFRiEp+jbi9qH40BLDvy85jIU88wKSqw==", + "license": "MIT" + }, + "node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "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==", + "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==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "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-api-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" + } + }, + "node_modules/tsconfig-paths": { + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", + "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" + }, + "node_modules/tw-animate-css": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/tw-animate-css/-/tw-animate-css-1.3.8.tgz", + "integrity": "sha512-Qrk3PZ7l7wUcGYhwZloqfkWCmaXZAoqjkdbIDvzfGshwGtexa/DAs9koXxIkrpEasyevandomzCBAV1Yyop5rw==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/Wombosvideo" + } + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", + "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", + "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", + "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.15", + "reflect.getprototypeof": "^1.0.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", + "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0", + "reflect.getprototypeof": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typescript": { + "version": "5.9.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.2.tgz", + "integrity": "sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/unbox-primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", + "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-bigints": "^1.0.2", + "has-symbols": "^1.1.0", + "which-boxed-primitive": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/undici-types": { + "version": "7.10.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.10.0.tgz", + "integrity": "sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==", + "dev": true, + "license": "MIT" + }, + "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.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", + "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "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-position-from-estree": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unist-util-position-from-estree/-/unist-util-position-from-estree-2.0.0.tgz", + "integrity": "sha512-KaFVRjoqLyF6YXCbVLNad/eS4+OfPQQn2yOd7zF/h5T/CSL2v8NpN6a5TPvtbXthAGw5nG+PuTtq+DdIZr+cRQ==", + "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.0.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", + "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", + "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.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", + "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unrs-resolver": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/unrs-resolver/-/unrs-resolver-1.11.1.tgz", + "integrity": "sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "napi-postinstall": "^0.3.0" + }, + "funding": { + "url": "https://opencollective.com/unrs-resolver" + }, + "optionalDependencies": { + "@unrs/resolver-binding-android-arm-eabi": "1.11.1", + "@unrs/resolver-binding-android-arm64": "1.11.1", + "@unrs/resolver-binding-darwin-arm64": "1.11.1", + "@unrs/resolver-binding-darwin-x64": "1.11.1", + "@unrs/resolver-binding-freebsd-x64": "1.11.1", + "@unrs/resolver-binding-linux-arm-gnueabihf": "1.11.1", + "@unrs/resolver-binding-linux-arm-musleabihf": "1.11.1", + "@unrs/resolver-binding-linux-arm64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-arm64-musl": "1.11.1", + "@unrs/resolver-binding-linux-ppc64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-riscv64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-riscv64-musl": "1.11.1", + "@unrs/resolver-binding-linux-s390x-gnu": "1.11.1", + "@unrs/resolver-binding-linux-x64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-x64-musl": "1.11.1", + "@unrs/resolver-binding-wasm32-wasi": "1.11.1", + "@unrs/resolver-binding-win32-arm64-msvc": "1.11.1", + "@unrs/resolver-binding-win32-ia32-msvc": "1.11.1", + "@unrs/resolver-binding-win32-x64-msvc": "1.11.1" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", + "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", + "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/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/use-callback-ref": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.3.tgz", + "integrity": "sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-sidecar": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.3.tgz", + "integrity": "sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==", + "license": "MIT", + "dependencies": { + "detect-node-es": "^1.1.0", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "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==", + "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/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", + "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.1.0", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.2.1", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.1.0", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-collection": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", + "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-9.0.2.tgz", + "integrity": "sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.2.1", + "string-width": "^7.0.0", + "strip-ansi": "^7.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/yallist": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", + "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/yaml": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.1.tgz", + "integrity": "sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==", + "dev": true, + "license": "ISC", + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14.6" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zod": { + "version": "4.1.8", + "resolved": "https://registry.npmjs.org/zod/-/zod-4.1.8.tgz", + "integrity": "sha512-5R1P+WwQqmmMIEACyzSvo4JXHY5WiAFHRMg+zBZKgKS+Q1viRa0C1hmUKtHltoIFKtIdki3pRxkmpP74jnNYHQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + }, + "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/public/images/word/word-img-01.png b/public/images/word/word-img-01.png new file mode 100644 index 0000000000000000000000000000000000000000..0a4f00348782ba1f41f5869c99b22b273d1f5b2b GIT binary patch literal 121753 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 literal 0 HcmV?d00001 diff --git a/public/images/word/word-img-02.png b/public/images/word/word-img-02.png new file mode 100644 index 0000000000000000000000000000000000000000..72a895286f0bfb7ffed82ec35abf2146936d0a45 GIT binary patch literal 135450 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ü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 MboFyt=akR{0K#&1m;e9( literal 0 HcmV?d00001 diff --git a/public/images/word/word-img-03.png b/public/images/word/word-img-03.png new file mode 100644 index 0000000000000000000000000000000000000000..fbb9767230258bca8d466307a0b141af814b5530 GIT binary patch literal 141878 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

  • g!#gl$>vXV0~RI)I@J)^C{Gg?lLp|eLN9R)dO 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 IJ&%d`KTeEcWB>pF literal 0 HcmV?d00001 diff --git a/public/images/word/word-img-04.png b/public/images/word/word-img-04.png new file mode 100644 index 0000000000000000000000000000000000000000..937dd1510813fdcd509a9cc072219f4aa1db4fed GIT binary patch literal 32446 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 W6s>3|VZi6oL&!-fOIC@S1pOaQ#+>5- literal 0 HcmV?d00001 diff --git a/public/images/word/word-img-05.png b/public/images/word/word-img-05.png new file mode 100644 index 0000000000000000000000000000000000000000..75a6306b15890ccb813bf332eef50dfe04c11530 GIT binary patch literal 45046 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