rtrm HF Staff commited on
Commit
8a3e9eb
·
unverified ·
1 Parent(s): 4a83c49

feat: ephemeral env & mongo passwordless (#1972)

Browse files
.github/workflows/deploy-dev.yml ADDED
@@ -0,0 +1,62 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ name: Deploy to ephemeral
2
+ on:
3
+ pull_request:
4
+
5
+ jobs:
6
+ branch-slug:
7
+ uses: ./.github/workflows/slugify.yaml
8
+ with:
9
+ value: ${{ github.head_ref }}
10
+
11
+ deploy-dev:
12
+ if: contains(github.event.pull_request.labels.*.name, 'preview')
13
+ runs-on: ubuntu-latest
14
+ needs: branch-slug
15
+ environment:
16
+ name: dev
17
+ url: https://${{ needs.branch-slug.outputs.slug }}.chat-dev.huggingface.tech/chat/
18
+ steps:
19
+ - name: Checkout
20
+ uses: actions/checkout@v4
21
+
22
+ - name: Login to Registry
23
+ uses: docker/login-action@v3
24
+ with:
25
+ username: ${{ secrets.DOCKERHUB_USERNAME }}
26
+ password: ${{ secrets.DOCKERHUB_PASSWORD }}
27
+
28
+ - name: Inject slug/short variables
29
+ uses: rlespinasse/github-slug-action@v4.5.0
30
+
31
+ - name: Set GITHUB_SHA_SHORT from PR
32
+ if: env.GITHUB_EVENT_PULL_REQUEST_HEAD_SHA_SHORT != null
33
+ run: echo "GITHUB_SHA_SHORT=${{ env.GITHUB_EVENT_PULL_REQUEST_HEAD_SHA_SHORT }}" >> $GITHUB_ENV
34
+
35
+ - name: Docker metadata
36
+ id: meta
37
+ uses: docker/metadata-action@v5
38
+ with:
39
+ images: |
40
+ huggingface/chat-ui
41
+ tags: |
42
+ type=raw,value=dev-${{ env.GITHUB_SHA_SHORT }}
43
+
44
+ - name: Set up Docker Buildx
45
+ uses: docker/setup-buildx-action@v3
46
+
47
+ - name: Build and Publish HuggingChat image
48
+ uses: docker/build-push-action@v5
49
+ with:
50
+ context: .
51
+ file: Dockerfile
52
+ push: true
53
+ tags: ${{ steps.meta.outputs.tags }}
54
+ labels: ${{ steps.meta.outputs.labels }}
55
+ platforms: linux/amd64
56
+ cache-to: type=gha,mode=max,scope=amd64
57
+ cache-from: type=gha,scope=amd64
58
+ provenance: false
59
+ build-args: |
60
+ INCLUDE_DB=false
61
+ APP_BASE=/chat
62
+ PUBLIC_COMMIT_SHA=${{ env.GITHUB_SHA_SHORT }}
.github/workflows/slugify.yaml ADDED
@@ -0,0 +1,72 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ name: Generate Branch Slug
2
+
3
+ on:
4
+ workflow_call:
5
+ inputs:
6
+ value:
7
+ description: 'Value to slugify'
8
+ required: true
9
+ type: string
10
+ outputs:
11
+ slug:
12
+ description: 'Slugified value'
13
+ value: ${{ jobs.generate-slug.outputs.slug }}
14
+
15
+ jobs:
16
+ generate-slug:
17
+ runs-on: ubuntu-latest
18
+ outputs:
19
+ slug: ${{ steps.slugify.outputs.slug }}
20
+
21
+ steps:
22
+ - name: Setup Go
23
+ uses: actions/setup-go@v5
24
+ with:
25
+ go-version: '1.21'
26
+
27
+ - name: Generate slug
28
+ id: slugify
29
+ run: |
30
+ # Create working directory
31
+ mkdir -p $HOME/slugify
32
+ cd $HOME/slugify
33
+
34
+ # Create Go script
35
+ cat > main.go << 'EOF'
36
+ package main
37
+
38
+ import (
39
+ "fmt"
40
+ "os"
41
+ "github.com/gosimple/slug"
42
+ )
43
+
44
+ func main() {
45
+ if len(os.Args) < 2 {
46
+ fmt.Println("Usage: slugify <text>")
47
+ os.Exit(1)
48
+ }
49
+
50
+ text := os.Args[1]
51
+ slugged := slug.Make(text)
52
+ fmt.Println(slugged)
53
+ }
54
+ EOF
55
+
56
+ # Initialize module and install dependency
57
+ go mod init slugify
58
+ go mod tidy
59
+ go get github.com/gosimple/slug
60
+
61
+ # Build
62
+ go build -o slugify main.go
63
+
64
+ # Generate slug
65
+ VALUE="${{ inputs.value }}"
66
+ echo "Input value: $VALUE"
67
+
68
+ SLUG=$(./slugify "$VALUE")
69
+ echo "Generated slug: $SLUG"
70
+
71
+ # Export
72
+ echo "slug=$SLUG" >> $GITHUB_OUTPUT
chart/env/dev.yaml ADDED
@@ -0,0 +1,205 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ image:
2
+ repository: huggingface
3
+ name: chat-ui
4
+
5
+ #nodeSelector:
6
+ # role-huggingchat: "true"
7
+ #
8
+ #tolerations:
9
+ # - key: "huggingface.co/huggingchat"
10
+ # operator: "Equal"
11
+ # value: "true"
12
+ # effect: "NoSchedule"
13
+
14
+ serviceAccount:
15
+ enabled: true
16
+ create: true
17
+ name: huggingchat-ephemeral
18
+
19
+ ingress:
20
+ enabled: false
21
+
22
+ ingressInternal:
23
+ enabled: true
24
+ path: "/chat"
25
+ annotations:
26
+ external-dns.alpha.kubernetes.io/hostname: "*.chat-dev.huggingface.tech"
27
+ alb.ingress.kubernetes.io/healthcheck-path: "/chat/healthcheck"
28
+ alb.ingress.kubernetes.io/listen-ports: "[{\"HTTP\": 80}, {\"HTTPS\": 443}]"
29
+ alb.ingress.kubernetes.io/group.name: "chat-dev-internal-public"
30
+ alb.ingress.kubernetes.io/load-balancer-name: "chat-dev-internal-public"
31
+ alb.ingress.kubernetes.io/ssl-redirect: "443"
32
+ alb.ingress.kubernetes.io/tags: "Env=prod,Project=hub,Terraform=true"
33
+ alb.ingress.kubernetes.io/target-group-attributes: deregistration_delay.timeout_seconds=30
34
+ alb.ingress.kubernetes.io/target-type: "ip"
35
+ alb.ingress.kubernetes.io/certificate-arn: "arn:aws:acm:us-east-1:707930574880:certificate/bc3eb446-1c04-432c-ac6b-946a88d725da"
36
+ kubernetes.io/ingress.class: "alb"
37
+
38
+ envVars:
39
+ TEST: "test"
40
+ COUPLE_SESSION_WITH_COOKIE_NAME: "token"
41
+ OPENID_SCOPES: "openid profile inference-api"
42
+ USE_USER_TOKEN: "true"
43
+ AUTOMATIC_LOGIN: "false"
44
+
45
+ ADDRESS_HEADER: "X-Forwarded-For"
46
+ APP_BASE: "/chat"
47
+ ALLOW_IFRAME: "false"
48
+ COOKIE_SAMESITE: "lax"
49
+ COOKIE_SECURE: "true"
50
+ EXPOSE_API: "true"
51
+ METRICS_ENABLED: "true"
52
+ LOG_LEVEL: "debug"
53
+ NODE_LOG_STRUCTURED_DATA: "true"
54
+
55
+ OPENAI_BASE_URL: "https://router.huggingface.co/v1"
56
+ PUBLIC_APP_ASSETS: "huggingchat"
57
+ PUBLIC_APP_NAME: "HuggingChat"
58
+ PUBLIC_APP_DESCRIPTION: "Making the community's best AI chat models available to everyone"
59
+ PUBLIC_ORIGIN: "https://huggingface.co"
60
+ PUBLIC_PLAUSIBLE_SCRIPT_URL: "https://plausible.io/js/pa-Io_oigECawqdlgpf5qvHb.js"
61
+
62
+ TASK_MODEL: "Qwen/Qwen3-4B-Instruct-2507"
63
+ LLM_ROUTER_ARCH_BASE_URL: "https://router.huggingface.co/v1"
64
+ LLM_ROUTER_ROUTES_PATH: "build/client/chat/huggingchat/routes.chat.json"
65
+ LLM_ROUTER_ARCH_MODEL: "katanemo/Arch-Router-1.5B"
66
+ LLM_ROUTER_OTHER_ROUTE: "casual_conversation"
67
+ LLM_ROUTER_ARCH_TIMEOUT_MS: "10000"
68
+ LLM_ROUTER_ENABLE_MULTIMODAL: "true"
69
+ LLM_ROUTER_MULTIMODAL_MODEL: "Qwen/Qwen3-VL-235B-A22B-Thinking"
70
+ PUBLIC_LLM_ROUTER_DISPLAY_NAME: "Omni"
71
+ PUBLIC_LLM_ROUTER_LOGO_URL: "https://cdn-uploads.huggingface.co/production/uploads/5f17f0a0925b9863e28ad517/C5V0v1xZXv6M7FXsdJH9b.png"
72
+ PUBLIC_LLM_ROUTER_ALIAS_ID: "omni"
73
+ MODELS: >
74
+ [
75
+ { "id": "deepseek-ai/DeepSeek-V3.2-Exp", "description": "Experimental V3.2 release focused on faster, lower-cost inference with strong general reasoning and tool use." },
76
+ { "id": "zai-org/GLM-4.6", "description": "Next-gen GLM with very long context and solid multilingual reasoning; good for agents and tools." },
77
+ { "id": "Kwaipilot/KAT-Dev", "description": "Developer-oriented assistant tuned for coding, debugging, and lightweight agent workflows." },
78
+ { "id": "Qwen/Qwen3-VL-235B-A22B-Instruct", "description": "Flagship multimodal Qwen (text+image) instruction model for high-accuracy visual reasoning and detailed explanations." },
79
+ { "id": "deepseek-ai/DeepSeek-V3.1-Terminus", "description": "Refined V3.1 variant optimized for reliability on long contexts, structured outputs, and tool use." },
80
+ { "id": "Qwen/Qwen3-VL-235B-A22B-Thinking", "description": "Deliberative multimodal Qwen that can produce step-wise visual+text reasoning traces for complex tasks." },
81
+ { "id": "zai-org/GLM-4.6-FP8", "description": "FP8-optimized GLM-4.6 for faster/cheaper deployment with near-parity quality on most tasks." },
82
+ { "id": "Qwen/Qwen3-235B-A22B-Thinking-2507", "description": "Deliberative text-only 235B Qwen variant for transparent, step-by-step reasoning on hard problems." },
83
+ { "id": "Qwen/Qwen3-Next-80B-A3B-Instruct", "description": "Instruction tuned Qwen for multilingual reasoning, coding, long contexts." },
84
+ { "id": "Qwen/Qwen3-Next-80B-A3B-Thinking", "description": "Thinking mode Qwen that outputs explicit step by step reasoning." },
85
+ { "id": "moonshotai/Kimi-K2-Instruct-0905", "description": "Instruction MoE strong coding and multi step reasoning, long context." },
86
+ { "id": "openai/gpt-oss-20b", "description": "Efficient open model for reasoning and tool use, runs locally." },
87
+ { "id": "swiss-ai/Apertus-8B-Instruct-2509", "description": "Open, multilingual, trained on compliant data transparent global assistant." },
88
+ { "id": "openai/gpt-oss-120b", "description": "High performing open model suitable for large scale applications." },
89
+ { "id": "Qwen/Qwen3-Coder-30B-A3B-Instruct", "description": "Code specialized Qwen long context strong generation and function calling." },
90
+ { "id": "meta-llama/Llama-3.1-8B-Instruct", "description": "Instruction tuned Llama efficient conversational assistant with improved alignment." },
91
+ { "id": "Qwen/Qwen2.5-VL-7B-Instruct", "description": "Vision language Qwen handles images and text for basic multimodal tasks." },
92
+ { "id": "Qwen/Qwen3-30B-A3B-Instruct-2507", "description": "Instruction tuned Qwen reliable general tasks with long context support." },
93
+ { "id": "baidu/ERNIE-4.5-VL-28B-A3B-PT", "description": "Baidu multimodal MoE strong at complex vision language reasoning." },
94
+ { "id": "baidu/ERNIE-4.5-0.3B-PT", "description": "Tiny efficient Baidu model surprisingly long context for lightweight chat." },
95
+ { "id": "deepseek-ai/DeepSeek-R1", "description": "MoE reasoning model excels at math, logic, coding with steps." },
96
+ { "id": "baidu/ERNIE-4.5-21B-A3B-PT", "description": "Efficient Baidu MoE competitive generation with fewer active parameters." },
97
+ { "id": "swiss-ai/Apertus-70B-Instruct-2509", "description": "Open multilingual model trained on open data transparent and capable." },
98
+ { "id": "Qwen/Qwen3-4B-Instruct-2507", "description": "Compact instruction Qwen great for lightweight assistants and apps." },
99
+ { "id": "meta-llama/Llama-3.2-3B-Instruct", "description": "Small efficient Llama for basic conversations and instructions." },
100
+ { "id": "Qwen/Qwen3-Coder-480B-A35B-Instruct", "description": "Huge Qwen coder repository scale understanding and advanced generation." },
101
+ { "id": "meta-llama/Meta-Llama-3-8B-Instruct", "description": "Aligned, efficient Llama dependable open source assistant tasks." },
102
+ { "id": "Qwen/Qwen3-4B-Thinking-2507", "description": "Small Qwen that emits transparent step by step reasoning." },
103
+ { "id": "moonshotai/Kimi-K2-Instruct", "description": "MoE assistant strong coding, reasoning, agentic tasks, long context." },
104
+ { "id": "zai-org/GLM-4.5V", "description": "Vision language MoE state of the art multimodal reasoning." },
105
+ { "id": "zai-org/GLM-4.6", "description": "Hybrid reasoning model top choice for intelligent agent applications." },
106
+ { "id": "deepseek-ai/DeepSeek-V3.1", "description": "Supports direct and thinking style reasoning within one model." },
107
+ { "id": "Qwen/Qwen3-8B", "description": "Efficient Qwen assistant strong multilingual skills and formatting." },
108
+ { "id": "Qwen/Qwen3-30B-A3B-Thinking-2507", "description": "Thinking mode Qwen explicit reasoning for complex interpretable tasks." },
109
+ { "id": "google/gemma-3-27b-it", "description": "Multimodal Gemma long context strong text and image understanding." },
110
+ { "id": "zai-org/GLM-4.5-Air", "description": "Efficient GLM strong reasoning and tool use at lower cost." },
111
+ { "id": "HuggingFaceTB/SmolLM3-3B", "description": "Small multilingual long context model surprisingly strong reasoning." },
112
+ { "id": "Qwen/Qwen3-30B-A3B", "description": "Qwen base model for general use or further fine tuning." },
113
+ { "id": "Qwen/Qwen2.5-7B-Instruct", "description": "Compact instruction model solid for basic conversation and tasks." },
114
+ { "id": "Qwen/Qwen3-32B", "description": "General purpose Qwen strong for complex queries and dialogues." },
115
+ { "id": "Qwen/QwQ-32B", "description": "Preview Qwen showcasing next generation features and alignment." },
116
+ { "id": "Qwen/Qwen3-235B-A22B-Instruct-2507", "description": "Flagship instruction Qwen near state of the art across domains." },
117
+ { "id": "meta-llama/Llama-3.3-70B-Instruct", "description": "Improved Llama alignment and structure powerful complex conversations." },
118
+ { "id": "Qwen/Qwen2.5-VL-32B-Instruct", "description": "Multimodal Qwen advanced visual reasoning for complex image plus text." },
119
+ { "id": "deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B", "description": "Tiny distilled Qwen stepwise math and logic reasoning." },
120
+ { "id": "Qwen/Qwen3-235B-A22B", "description": "Qwen base at flagship scale ideal for custom fine tuning." },
121
+ { "id": "meta-llama/Llama-4-Scout-17B-16E-Instruct", "description": "Processes text and images excels at summarization and cross modal reasoning." },
122
+ { "id": "NousResearch/Hermes-4-70B", "description": "Steerable assistant strong reasoning and creativity highly helpful." },
123
+ { "id": "Qwen/Qwen2.5-Coder-32B-Instruct", "description": "Code model strong generation and tool use bridges sizes." },
124
+ { "id": "katanemo/Arch-Router-1.5B", "description": "Lightweight router model directs queries to specialized backends." },
125
+ { "id": "meta-llama/Llama-3.2-1B-Instruct", "description": "Ultra small Llama handles basic Q and A and instructions." },
126
+ { "id": "deepseek-ai/DeepSeek-R1-Distill-Qwen-7B", "description": "Distilled Qwen excels at stepwise logic in compact footprint." },
127
+ { "id": "deepseek-ai/DeepSeek-V3", "description": "General language model direct answers strong creative and knowledge tasks." },
128
+ { "id": "deepseek-ai/DeepSeek-V3-0324", "description": "Updated V3 better reasoning and coding strong tool use." },
129
+ { "id": "CohereLabs/command-a-translate-08-2025", "description": "Translation focused Command model high quality multilingual translation." },
130
+ { "id": "deepseek-ai/DeepSeek-R1-Distill-Qwen-32B", "description": "Distilled from R1 strong reasoning standout dense model." },
131
+ { "id": "baidu/ERNIE-4.5-VL-424B-A47B-Base-PT", "description": "Multimodal base text image pretraining for cross modal understanding." },
132
+ { "id": "meta-llama/Llama-4-Maverick-17B-128E-Instruct", "description": "MoE multimodal Llama rivals top vision language models." },
133
+ { "id": "Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8", "description": "Quantized giant coder faster lighter retains advanced code generation." },
134
+ { "id": "deepseek-ai/DeepSeek-R1-0528-Qwen3-8B", "description": "Qwen3 variant with R1 reasoning improvements compact and capable." },
135
+ { "id": "deepseek-ai/DeepSeek-R1-0528", "description": "R1 update improved reasoning, fewer hallucinations, adds function calling.", "parameters": { "max_tokens": 32000 } },
136
+ { "id": "Qwen/Qwen3-14B", "description": "Balanced Qwen good performance and efficiency for assistants." },
137
+ { "id": "MiniMaxAI/MiniMax-M1-80k", "description": "Long context MoE very fast excels at long range reasoning and code." },
138
+ { "id": "Qwen/Qwen2.5-Coder-7B-Instruct", "description": "Efficient coding assistant for lightweight programming tasks." },
139
+ { "id": "aisingapore/Gemma-SEA-LION-v4-27B-IT", "description": "Gemma SEA LION optimized for Southeast Asian languages or enterprise." },
140
+ { "id": "CohereLabs/aya-expanse-8b", "description": "Small Aya Expanse broad knowledge and efficient general reasoning." },
141
+ { "id": "baichuan-inc/Baichuan-M2-32B", "description": "Medical reasoning specialist fine tuned for clinical QA bilingual." },
142
+ { "id": "Qwen/Qwen2.5-VL-72B-Instruct", "description": "Vision language Qwen detailed image interpretation and instructions." },
143
+ { "id": "meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8", "description": "FP8 Maverick efficient deployment retains top multimodal capability." },
144
+ { "id": "zai-org/GLM-4.1V-9B-Thinking", "description": "Vision language with explicit reasoning strong for its size." },
145
+ { "id": "zai-org/GLM-4.5-Air-FP8", "description": "FP8 efficient GLM Air hybrid reasoning with minimal compute." },
146
+ { "id": "google/gemma-2-2b-it", "description": "Small Gemma instruction tuned safe responsible outputs easy deployment." },
147
+ { "id": "arcee-ai/AFM-4.5B", "description": "Enterprise focused model strong CPU performance compliant and practical." },
148
+ { "id": "deepseek-ai/DeepSeek-R1-Distill-Llama-8B", "description": "Llama distilled from R1 strong reasoning and structured outputs." },
149
+ { "id": "CohereLabs/aya-vision-8b", "description": "Vision capable Aya handles images and text for basic multimodal." },
150
+ { "id": "NousResearch/Hermes-3-Llama-3.1-405B", "description": "Highly aligned assistant excels at math, code, QA." },
151
+ { "id": "Qwen/Qwen2.5-72B-Instruct", "description": "Accurate detailed instruction model supports tools and long contexts." },
152
+ { "id": "meta-llama/Llama-Guard-4-12B", "description": "Safety guardrail model filters and enforces content policies." },
153
+ { "id": "CohereLabs/command-a-vision-07-2025", "description": "Command model with image input captioning and visual QA." },
154
+ { "id": "nvidia/Llama-3_1-Nemotron-Ultra-253B-v1", "description": "NVIDIA tuned Llama optimized throughput for research and production." },
155
+ { "id": "meta-llama/Meta-Llama-3-70B-Instruct", "description": "Instruction tuned Llama improved reasoning and reliability over predecessors." },
156
+ { "id": "NousResearch/Hermes-4-405B", "description": "Frontier Hermes hybrid reasoning excels at math, code, creativity." },
157
+ { "id": "NousResearch/Hermes-2-Pro-Llama-3-8B", "description": "Small Hermes highly steerable maximized helpfulness for basics." },
158
+ { "id": "google/gemma-2-9b-it", "description": "Gemma with improved accuracy and context safe, easy to deploy." },
159
+ { "id": "Sao10K/L3-8B-Stheno-v3.2", "description": "Community Llama variant themed tuning and unique conversational style." },
160
+ { "id": "deepcogito/cogito-v2-preview-llama-109B-MoE", "description": "MoE preview advanced reasoning tests DeepCogito v2 fine tuning." },
161
+ { "id": "CohereLabs/c4ai-command-r-08-2024", "description": "Cohere Command variant instruction following with specialized tuning." },
162
+ { "id": "baidu/ERNIE-4.5-300B-A47B-Base-PT", "description": "Large base model foundation for specialized language systems." },
163
+ { "id": "CohereLabs/aya-expanse-32b", "description": "Aya Expanse large comprehensive knowledge and reasoning capabilities." },
164
+ { "id": "CohereLabs/c4ai-command-a-03-2025", "description": "Updated Command assistant improved accuracy and general usefulness." },
165
+ { "id": "CohereLabs/command-a-reasoning-08-2025", "description": "Command variant optimized for complex multi step logical reasoning." },
166
+ { "id": "alpindale/WizardLM-2-8x22B", "description": "Multi expert WizardLM MoE approach for efficient high quality generation." },
167
+ { "id": "tokyotech-llm/Llama-3.3-Swallow-70B-Instruct-v0.4", "description": "Academic fine tune potential multilingual and domain improvements." },
168
+ { "id": "deepseek-ai/DeepSeek-R1-Distill-Llama-70B", "description": "Llama distilled from R1 improved reasoning enterprise friendly." },
169
+ { "id": "CohereLabs/c4ai-command-r7b-12-2024", "description": "Small Command variant research or regional adaptation focus." },
170
+ { "id": "Sao10K/L3-70B-Euryale-v2.1", "description": "Creative community instruct model with distinctive persona." },
171
+ { "id": "CohereLabs/aya-vision-32b", "description": "Larger Aya Vision advanced vision language with detailed reasoning." },
172
+ { "id": "meta-llama/Llama-3.1-405B-Instruct", "description": "Massive instruction model very long context excels at complex tasks." },
173
+ { "id": "CohereLabs/c4ai-command-r7b-arabic-02-2025", "description": "Command tuned for Arabic fluent and culturally appropriate outputs." },
174
+ { "id": "Sao10K/L3-8B-Lunaris-v1", "description": "Community Llama creative role play oriented themed persona." },
175
+ { "id": "Qwen/Qwen2.5-Coder-7B", "description": "Small Qwen coder basic programming assistance for low resource environments." },
176
+ { "id": "Qwen/QwQ-32B-Preview", "description": "Preview Qwen experimental features and architecture refinements." },
177
+ { "id": "deepseek-ai/DeepSeek-R1-Distill-Qwen-14B", "description": "Distilled Qwen mid size strong reasoning and clear steps." },
178
+ { "id": "meta-llama/Llama-3.1-70B-Instruct", "description": "Instruction tuned Llama improved reasoning and factual reliability." },
179
+ { "id": "Qwen/Qwen3-235B-A22B-FP8", "description": "FP8 quantized Qwen flagship efficient access to ultra large capabilities." },
180
+ { "id": "zai-org/GLM-4-32B-0414", "description": "Open licensed GLM matches larger proprietary models on benchmarks." },
181
+ { "id": "SentientAGI/Dobby-Unhinged-Llama-3.3-70B", "description": "Unfiltered candid creative outputs intentionally less restricted behavior." },
182
+ { "id": "marin-community/marin-8b-instruct", "description": "Community tuned assistant helpful conversational everyday tasks." },
183
+ { "id": "deepseek-ai/DeepSeek-Prover-V2-671B", "description": "Specialist for mathematical proofs and formal reasoning workflows." },
184
+ { "id": "NousResearch/Hermes-3-Llama-3.1-70B", "description": "Highly aligned assistant strong complex instruction following." },
185
+ { "id": "Qwen/Qwen2.5-Coder-3B-Instruct", "description": "Tiny coding assistant basic code completions and explanations." },
186
+ { "id": "deepcogito/cogito-v2-preview-llama-70B", "description": "Preview fine tune enhanced reasoning and tool use indications." },
187
+ { "id": "deepcogito/cogito-v2-preview-llama-405B", "description": "Preview at frontier scale tests advanced fine tuning methods." },
188
+ { "id": "deepcogito/cogito-v2-preview-deepseek-671B-MoE", "description": "Experimental blend of DeepCogito and DeepSeek approaches for reasoning." }
189
+ ]
190
+
191
+ infisical:
192
+ enabled: true
193
+ env: "ephemeral-us-east-1"
194
+
195
+ replicas: 1
196
+ autoscaling:
197
+ enabled: false
198
+
199
+ resources:
200
+ requests:
201
+ cpu: 2
202
+ memory: 4Gi
203
+ limits:
204
+ cpu: 4
205
+ memory: 8Gi
package-lock.json CHANGED
@@ -8,12 +8,14 @@
8
  "name": "chat-ui",
9
  "version": "0.20.0",
10
  "dependencies": {
 
11
  "@elysiajs/swagger": "^1.3.0",
12
  "@huggingface/hub": "^2.2.0",
13
  "@huggingface/inference": "^4.11.3",
14
  "@iconify-json/bi": "^1.1.21",
15
  "@resvg/resvg-js": "^2.6.2",
16
  "autoprefixer": "^10.4.14",
 
17
  "bits-ui": "^2.14.2",
18
  "date-fns": "^2.29.3",
19
  "dotenv": "^16.5.0",
@@ -268,6 +270,684 @@
268
  "dev": true,
269
  "license": "ISC"
270
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
271
  "node_modules/@babel/code-frame": {
272
  "version": "7.27.1",
273
  "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz",
@@ -2304,186 +2984,766 @@
2304
  "linux"
2305
  ]
2306
  },
2307
- "node_modules/@rollup/rollup-linux-s390x-gnu": {
2308
- "version": "4.41.1",
2309
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.41.1.tgz",
2310
- "integrity": "sha512-oIE6M8WC9ma6xYqjvPhzZYk6NbobIURvP/lEbh7FWplcMO6gn7MM2yHKA1eC/GvYwzNKK/1LYgqzdkZ8YFxR8g==",
2311
- "cpu": [
2312
- "s390x"
2313
- ],
2314
- "license": "MIT",
2315
- "optional": true,
2316
- "os": [
2317
- "linux"
2318
- ]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2319
  },
2320
- "node_modules/@rollup/rollup-linux-x64-gnu": {
2321
- "version": "4.41.1",
2322
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.41.1.tgz",
2323
- "integrity": "sha512-cWBOvayNvA+SyeQMp79BHPK8ws6sHSsYnK5zDcsC3Hsxr1dgTABKjMnMslPq1DvZIp6uO7kIWhiGwaTdR4Og9A==",
2324
- "cpu": [
2325
- "x64"
2326
- ],
2327
- "license": "MIT",
2328
- "optional": true,
2329
- "os": [
2330
- "linux"
2331
- ]
 
2332
  },
2333
- "node_modules/@rollup/rollup-linux-x64-musl": {
2334
- "version": "4.41.1",
2335
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.41.1.tgz",
2336
- "integrity": "sha512-y5CbN44M+pUCdGDlZFzGGBSKCA4A/J2ZH4edTYSSxFg7ce1Xt3GtydbVKWLlzL+INfFIZAEg1ZV6hh9+QQf9YQ==",
2337
- "cpu": [
2338
- "x64"
2339
- ],
2340
- "license": "MIT",
2341
- "optional": true,
2342
- "os": [
2343
- "linux"
2344
- ]
 
2345
  },
2346
- "node_modules/@rollup/rollup-win32-arm64-msvc": {
2347
- "version": "4.41.1",
2348
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.41.1.tgz",
2349
- "integrity": "sha512-lZkCxIrjlJlMt1dLO/FbpZbzt6J/A8p4DnqzSa4PWqPEUUUnzXLeki/iyPLfV0BmHItlYgHUqJe+3KiyydmiNQ==",
2350
- "cpu": [
2351
- "arm64"
2352
- ],
2353
- "license": "MIT",
2354
- "optional": true,
2355
- "os": [
2356
- "win32"
2357
- ]
2358
  },
2359
- "node_modules/@rollup/rollup-win32-ia32-msvc": {
2360
- "version": "4.41.1",
2361
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.41.1.tgz",
2362
- "integrity": "sha512-+psFT9+pIh2iuGsxFYYa/LhS5MFKmuivRsx9iPJWNSGbh2XVEjk90fmpUEjCnILPEPJnikAU6SFDiEUyOv90Pg==",
2363
- "cpu": [
2364
- "ia32"
2365
- ],
2366
- "license": "MIT",
2367
- "optional": true,
2368
- "os": [
2369
- "win32"
2370
- ]
2371
  },
2372
- "node_modules/@rollup/rollup-win32-x64-msvc": {
2373
- "version": "4.41.1",
2374
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.41.1.tgz",
2375
- "integrity": "sha512-Wq2zpapRYLfi4aKxf2Xff0tN+7slj2d4R87WEzqw7ZLsVvO5zwYCIuEGSZYiK41+GlwUo1HiR+GdkLEJnCKTCw==",
2376
- "cpu": [
2377
- "x64"
2378
- ],
2379
- "license": "MIT",
2380
- "optional": true,
2381
- "os": [
2382
- "win32"
2383
- ]
2384
  },
2385
- "node_modules/@scalar/openapi-types": {
2386
- "version": "0.1.1",
2387
- "resolved": "https://registry.npmjs.org/@scalar/openapi-types/-/openapi-types-0.1.1.tgz",
2388
- "integrity": "sha512-NMy3QNk6ytcCoPUGJH0t4NNr36OWXgZhA3ormr3TvhX1NDgoF95wFyodGVH8xiHeUyn2/FxtETm8UBLbB5xEmg==",
2389
- "license": "MIT",
 
 
 
2390
  "engines": {
2391
- "node": ">=18"
2392
  }
2393
  },
2394
- "node_modules/@scalar/themes": {
2395
- "version": "0.9.86",
2396
- "resolved": "https://registry.npmjs.org/@scalar/themes/-/themes-0.9.86.tgz",
2397
- "integrity": "sha512-QUHo9g5oSWi+0Lm1vJY9TaMZRau8LHg+vte7q5BVTBnu6NuQfigCaN+ouQ73FqIVd96TwMO6Db+dilK1B+9row==",
2398
- "license": "MIT",
2399
  "dependencies": {
2400
- "@scalar/types": "0.1.7"
 
 
 
2401
  },
2402
  "engines": {
2403
- "node": ">=18"
2404
  }
2405
  },
2406
- "node_modules/@scalar/themes/node_modules/@scalar/openapi-types": {
2407
- "version": "0.2.0",
2408
- "resolved": "https://registry.npmjs.org/@scalar/openapi-types/-/openapi-types-0.2.0.tgz",
2409
- "integrity": "sha512-waiKk12cRCqyUCWTOX0K1WEVX46+hVUK+zRPzAahDJ7G0TApvbNkuy5wx7aoUyEk++HHde0XuQnshXnt8jsddA==",
2410
- "license": "MIT",
2411
  "dependencies": {
2412
- "zod": "^3.23.8"
 
 
 
 
 
 
2413
  },
2414
  "engines": {
2415
- "node": ">=18"
2416
  }
2417
  },
2418
- "node_modules/@scalar/themes/node_modules/@scalar/types": {
2419
- "version": "0.1.7",
2420
- "resolved": "https://registry.npmjs.org/@scalar/types/-/types-0.1.7.tgz",
2421
- "integrity": "sha512-irIDYzTQG2KLvFbuTI8k2Pz/R4JR+zUUSykVTbEMatkzMmVFnn1VzNSMlODbadycwZunbnL2tA27AXed9URVjw==",
2422
- "license": "MIT",
2423
  "dependencies": {
2424
- "@scalar/openapi-types": "0.2.0",
2425
- "@unhead/schema": "^1.11.11",
2426
- "nanoid": "^5.1.5",
2427
- "type-fest": "^4.20.0",
2428
- "zod": "^3.23.8"
2429
  },
2430
  "engines": {
2431
- "node": ">=18"
2432
  }
2433
  },
2434
- "node_modules/@scalar/themes/node_modules/type-fest": {
2435
- "version": "4.41.0",
2436
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.41.0.tgz",
2437
- "integrity": "sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==",
2438
- "license": "(MIT OR CC0-1.0)",
 
 
 
2439
  "engines": {
2440
- "node": ">=16"
 
 
 
 
 
 
 
 
 
 
2441
  },
2442
- "funding": {
2443
- "url": "https://github.com/sponsors/sindresorhus"
2444
  }
2445
  },
2446
- "node_modules/@scalar/types": {
2447
- "version": "0.0.12",
2448
- "resolved": "https://registry.npmjs.org/@scalar/types/-/types-0.0.12.tgz",
2449
- "integrity": "sha512-XYZ36lSEx87i4gDqopQlGCOkdIITHHEvgkuJFrXFATQs9zHARop0PN0g4RZYWj+ZpCUclOcaOjbCt8JGe22mnQ==",
2450
- "license": "MIT",
2451
  "dependencies": {
2452
- "@scalar/openapi-types": "0.1.1",
2453
- "@unhead/schema": "^1.9.5"
 
2454
  },
2455
  "engines": {
2456
- "node": ">=18"
2457
  }
2458
  },
2459
- "node_modules/@shuding/opentype.js": {
2460
- "version": "1.4.0-beta.0",
2461
- "resolved": "https://registry.npmjs.org/@shuding/opentype.js/-/opentype.js-1.4.0-beta.0.tgz",
2462
- "integrity": "sha512-3NgmNyH3l/Hv6EvsWJbsvpcpUba6R8IREQ83nH83cyakCw7uM1arZKNfHwv1Wz6jgqrF/j4x5ELvR6PnK9nTcA==",
2463
- "license": "MIT",
2464
  "dependencies": {
2465
- "fflate": "^0.7.3",
2466
- "string.prototype.codepointat": "^0.2.1"
 
 
 
 
 
 
2467
  },
2468
- "bin": {
2469
- "ot": "bin/ot"
 
 
 
 
 
 
 
 
 
2470
  },
2471
  "engines": {
2472
- "node": ">= 8.0.0"
2473
  }
2474
  },
2475
- "node_modules/@shuding/opentype.js/node_modules/fflate": {
2476
- "version": "0.7.4",
2477
- "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.7.4.tgz",
2478
- "integrity": "sha512-5u2V/CDW15QM1XbbgS+0DfPxVB+jUKhWEKuuFuHncbk3tEEqzmoXL+2KyOFuKGqOnmdIy0/davWF1CkuwtibCw==",
2479
- "license": "MIT"
 
 
 
 
 
 
 
2480
  },
2481
- "node_modules/@sinclair/typebox": {
2482
- "version": "0.34.33",
2483
- "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.33.tgz",
2484
- "integrity": "sha512-5HAV9exOMcXRUxo+9iYB5n09XxzCXnfy4VTNW4xnDv+FgjzAGY989C28BIdljKqmF+ZltUwujE3aossvcVtq6g==",
2485
- "license": "MIT",
2486
- "optional": true
 
 
 
 
 
2487
  },
2488
  "node_modules/@sveltejs/acorn-typescript": {
2489
  "version": "1.0.5",
@@ -3503,6 +4763,12 @@
3503
  "postcss": "^8.1.0"
3504
  }
3505
  },
 
 
 
 
 
 
3506
  "node_modules/axobject-query": {
3507
  "version": "4.1.0",
3508
  "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz",
@@ -3602,6 +4868,12 @@
3602
  "svelte": "^5.33.0"
3603
  }
3604
  },
 
 
 
 
 
 
3605
  "node_modules/brace-expansion": {
3606
  "version": "2.0.2",
3607
  "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz",
@@ -4943,6 +6215,24 @@
4943
  "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==",
4944
  "license": "MIT"
4945
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4946
  "node_modules/fastq": {
4947
  "version": "1.19.1",
4948
  "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz",
@@ -9023,6 +10313,18 @@
9023
  "url": "https://github.com/sponsors/sindresorhus"
9024
  }
9025
  },
 
 
 
 
 
 
 
 
 
 
 
 
9026
  "node_modules/strtok3": {
9027
  "version": "10.2.2",
9028
  "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-10.2.2.tgz",
 
8
  "name": "chat-ui",
9
  "version": "0.20.0",
10
  "dependencies": {
11
+ "@aws-sdk/credential-providers": "^3.925.0",
12
  "@elysiajs/swagger": "^1.3.0",
13
  "@huggingface/hub": "^2.2.0",
14
  "@huggingface/inference": "^4.11.3",
15
  "@iconify-json/bi": "^1.1.21",
16
  "@resvg/resvg-js": "^2.6.2",
17
  "autoprefixer": "^10.4.14",
18
+ "aws4": "^1.13.2",
19
  "bits-ui": "^2.14.2",
20
  "date-fns": "^2.29.3",
21
  "dotenv": "^16.5.0",
 
270
  "dev": true,
271
  "license": "ISC"
272
  },
273
+ "node_modules/@aws-crypto/sha256-browser": {
274
+ "version": "5.2.0",
275
+ "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-5.2.0.tgz",
276
+ "integrity": "sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw==",
277
+ "license": "Apache-2.0",
278
+ "dependencies": {
279
+ "@aws-crypto/sha256-js": "^5.2.0",
280
+ "@aws-crypto/supports-web-crypto": "^5.2.0",
281
+ "@aws-crypto/util": "^5.2.0",
282
+ "@aws-sdk/types": "^3.222.0",
283
+ "@aws-sdk/util-locate-window": "^3.0.0",
284
+ "@smithy/util-utf8": "^2.0.0",
285
+ "tslib": "^2.6.2"
286
+ }
287
+ },
288
+ "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/is-array-buffer": {
289
+ "version": "2.2.0",
290
+ "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz",
291
+ "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==",
292
+ "license": "Apache-2.0",
293
+ "dependencies": {
294
+ "tslib": "^2.6.2"
295
+ },
296
+ "engines": {
297
+ "node": ">=14.0.0"
298
+ }
299
+ },
300
+ "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-buffer-from": {
301
+ "version": "2.2.0",
302
+ "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz",
303
+ "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==",
304
+ "license": "Apache-2.0",
305
+ "dependencies": {
306
+ "@smithy/is-array-buffer": "^2.2.0",
307
+ "tslib": "^2.6.2"
308
+ },
309
+ "engines": {
310
+ "node": ">=14.0.0"
311
+ }
312
+ },
313
+ "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-utf8": {
314
+ "version": "2.3.0",
315
+ "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz",
316
+ "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==",
317
+ "license": "Apache-2.0",
318
+ "dependencies": {
319
+ "@smithy/util-buffer-from": "^2.2.0",
320
+ "tslib": "^2.6.2"
321
+ },
322
+ "engines": {
323
+ "node": ">=14.0.0"
324
+ }
325
+ },
326
+ "node_modules/@aws-crypto/sha256-js": {
327
+ "version": "5.2.0",
328
+ "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-5.2.0.tgz",
329
+ "integrity": "sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA==",
330
+ "license": "Apache-2.0",
331
+ "dependencies": {
332
+ "@aws-crypto/util": "^5.2.0",
333
+ "@aws-sdk/types": "^3.222.0",
334
+ "tslib": "^2.6.2"
335
+ },
336
+ "engines": {
337
+ "node": ">=16.0.0"
338
+ }
339
+ },
340
+ "node_modules/@aws-crypto/supports-web-crypto": {
341
+ "version": "5.2.0",
342
+ "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-5.2.0.tgz",
343
+ "integrity": "sha512-iAvUotm021kM33eCdNfwIN//F77/IADDSs58i+MDaOqFrVjZo9bAal0NK7HurRuWLLpF1iLX7gbWrjHjeo+YFg==",
344
+ "license": "Apache-2.0",
345
+ "dependencies": {
346
+ "tslib": "^2.6.2"
347
+ }
348
+ },
349
+ "node_modules/@aws-crypto/util": {
350
+ "version": "5.2.0",
351
+ "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-5.2.0.tgz",
352
+ "integrity": "sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==",
353
+ "license": "Apache-2.0",
354
+ "dependencies": {
355
+ "@aws-sdk/types": "^3.222.0",
356
+ "@smithy/util-utf8": "^2.0.0",
357
+ "tslib": "^2.6.2"
358
+ }
359
+ },
360
+ "node_modules/@aws-crypto/util/node_modules/@smithy/is-array-buffer": {
361
+ "version": "2.2.0",
362
+ "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz",
363
+ "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==",
364
+ "license": "Apache-2.0",
365
+ "dependencies": {
366
+ "tslib": "^2.6.2"
367
+ },
368
+ "engines": {
369
+ "node": ">=14.0.0"
370
+ }
371
+ },
372
+ "node_modules/@aws-crypto/util/node_modules/@smithy/util-buffer-from": {
373
+ "version": "2.2.0",
374
+ "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz",
375
+ "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==",
376
+ "license": "Apache-2.0",
377
+ "dependencies": {
378
+ "@smithy/is-array-buffer": "^2.2.0",
379
+ "tslib": "^2.6.2"
380
+ },
381
+ "engines": {
382
+ "node": ">=14.0.0"
383
+ }
384
+ },
385
+ "node_modules/@aws-crypto/util/node_modules/@smithy/util-utf8": {
386
+ "version": "2.3.0",
387
+ "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz",
388
+ "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==",
389
+ "license": "Apache-2.0",
390
+ "dependencies": {
391
+ "@smithy/util-buffer-from": "^2.2.0",
392
+ "tslib": "^2.6.2"
393
+ },
394
+ "engines": {
395
+ "node": ">=14.0.0"
396
+ }
397
+ },
398
+ "node_modules/@aws-sdk/client-cognito-identity": {
399
+ "version": "3.925.0",
400
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.925.0.tgz",
401
+ "integrity": "sha512-7koO8MTU6T0dKAaFi7Bm06t4l8M9z798WSvpwzcCVItf6UAj+popz5MKzomxpd4Ire7C1jqqponiM8rrxNyYcQ==",
402
+ "license": "Apache-2.0",
403
+ "dependencies": {
404
+ "@aws-crypto/sha256-browser": "5.2.0",
405
+ "@aws-crypto/sha256-js": "5.2.0",
406
+ "@aws-sdk/core": "3.922.0",
407
+ "@aws-sdk/credential-provider-node": "3.925.0",
408
+ "@aws-sdk/middleware-host-header": "3.922.0",
409
+ "@aws-sdk/middleware-logger": "3.922.0",
410
+ "@aws-sdk/middleware-recursion-detection": "3.922.0",
411
+ "@aws-sdk/middleware-user-agent": "3.922.0",
412
+ "@aws-sdk/region-config-resolver": "3.925.0",
413
+ "@aws-sdk/types": "3.922.0",
414
+ "@aws-sdk/util-endpoints": "3.922.0",
415
+ "@aws-sdk/util-user-agent-browser": "3.922.0",
416
+ "@aws-sdk/util-user-agent-node": "3.922.0",
417
+ "@smithy/config-resolver": "^4.4.2",
418
+ "@smithy/core": "^3.17.2",
419
+ "@smithy/fetch-http-handler": "^5.3.5",
420
+ "@smithy/hash-node": "^4.2.4",
421
+ "@smithy/invalid-dependency": "^4.2.4",
422
+ "@smithy/middleware-content-length": "^4.2.4",
423
+ "@smithy/middleware-endpoint": "^4.3.6",
424
+ "@smithy/middleware-retry": "^4.4.6",
425
+ "@smithy/middleware-serde": "^4.2.4",
426
+ "@smithy/middleware-stack": "^4.2.4",
427
+ "@smithy/node-config-provider": "^4.3.4",
428
+ "@smithy/node-http-handler": "^4.4.4",
429
+ "@smithy/protocol-http": "^5.3.4",
430
+ "@smithy/smithy-client": "^4.9.2",
431
+ "@smithy/types": "^4.8.1",
432
+ "@smithy/url-parser": "^4.2.4",
433
+ "@smithy/util-base64": "^4.3.0",
434
+ "@smithy/util-body-length-browser": "^4.2.0",
435
+ "@smithy/util-body-length-node": "^4.2.1",
436
+ "@smithy/util-defaults-mode-browser": "^4.3.5",
437
+ "@smithy/util-defaults-mode-node": "^4.2.8",
438
+ "@smithy/util-endpoints": "^3.2.4",
439
+ "@smithy/util-middleware": "^4.2.4",
440
+ "@smithy/util-retry": "^4.2.4",
441
+ "@smithy/util-utf8": "^4.2.0",
442
+ "tslib": "^2.6.2"
443
+ },
444
+ "engines": {
445
+ "node": ">=18.0.0"
446
+ }
447
+ },
448
+ "node_modules/@aws-sdk/client-sso": {
449
+ "version": "3.925.0",
450
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.925.0.tgz",
451
+ "integrity": "sha512-ixC9CyXe/mBo1X+bzOxIIzsdBYzM+klWoHUYzwnPMrXhpDrMjj8D24R/FPqrDnhoYYXiyS4BApRLpeymsFJq2Q==",
452
+ "license": "Apache-2.0",
453
+ "dependencies": {
454
+ "@aws-crypto/sha256-browser": "5.2.0",
455
+ "@aws-crypto/sha256-js": "5.2.0",
456
+ "@aws-sdk/core": "3.922.0",
457
+ "@aws-sdk/middleware-host-header": "3.922.0",
458
+ "@aws-sdk/middleware-logger": "3.922.0",
459
+ "@aws-sdk/middleware-recursion-detection": "3.922.0",
460
+ "@aws-sdk/middleware-user-agent": "3.922.0",
461
+ "@aws-sdk/region-config-resolver": "3.925.0",
462
+ "@aws-sdk/types": "3.922.0",
463
+ "@aws-sdk/util-endpoints": "3.922.0",
464
+ "@aws-sdk/util-user-agent-browser": "3.922.0",
465
+ "@aws-sdk/util-user-agent-node": "3.922.0",
466
+ "@smithy/config-resolver": "^4.4.2",
467
+ "@smithy/core": "^3.17.2",
468
+ "@smithy/fetch-http-handler": "^5.3.5",
469
+ "@smithy/hash-node": "^4.2.4",
470
+ "@smithy/invalid-dependency": "^4.2.4",
471
+ "@smithy/middleware-content-length": "^4.2.4",
472
+ "@smithy/middleware-endpoint": "^4.3.6",
473
+ "@smithy/middleware-retry": "^4.4.6",
474
+ "@smithy/middleware-serde": "^4.2.4",
475
+ "@smithy/middleware-stack": "^4.2.4",
476
+ "@smithy/node-config-provider": "^4.3.4",
477
+ "@smithy/node-http-handler": "^4.4.4",
478
+ "@smithy/protocol-http": "^5.3.4",
479
+ "@smithy/smithy-client": "^4.9.2",
480
+ "@smithy/types": "^4.8.1",
481
+ "@smithy/url-parser": "^4.2.4",
482
+ "@smithy/util-base64": "^4.3.0",
483
+ "@smithy/util-body-length-browser": "^4.2.0",
484
+ "@smithy/util-body-length-node": "^4.2.1",
485
+ "@smithy/util-defaults-mode-browser": "^4.3.5",
486
+ "@smithy/util-defaults-mode-node": "^4.2.8",
487
+ "@smithy/util-endpoints": "^3.2.4",
488
+ "@smithy/util-middleware": "^4.2.4",
489
+ "@smithy/util-retry": "^4.2.4",
490
+ "@smithy/util-utf8": "^4.2.0",
491
+ "tslib": "^2.6.2"
492
+ },
493
+ "engines": {
494
+ "node": ">=18.0.0"
495
+ }
496
+ },
497
+ "node_modules/@aws-sdk/core": {
498
+ "version": "3.922.0",
499
+ "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.922.0.tgz",
500
+ "integrity": "sha512-EvfP4cqJfpO3L2v5vkIlTkMesPtRwWlMfsaW6Tpfm7iYfBOuTi6jx60pMDMTyJNVfh6cGmXwh/kj1jQdR+w99Q==",
501
+ "license": "Apache-2.0",
502
+ "dependencies": {
503
+ "@aws-sdk/types": "3.922.0",
504
+ "@aws-sdk/xml-builder": "3.921.0",
505
+ "@smithy/core": "^3.17.2",
506
+ "@smithy/node-config-provider": "^4.3.4",
507
+ "@smithy/property-provider": "^4.2.4",
508
+ "@smithy/protocol-http": "^5.3.4",
509
+ "@smithy/signature-v4": "^5.3.4",
510
+ "@smithy/smithy-client": "^4.9.2",
511
+ "@smithy/types": "^4.8.1",
512
+ "@smithy/util-base64": "^4.3.0",
513
+ "@smithy/util-middleware": "^4.2.4",
514
+ "@smithy/util-utf8": "^4.2.0",
515
+ "tslib": "^2.6.2"
516
+ },
517
+ "engines": {
518
+ "node": ">=18.0.0"
519
+ }
520
+ },
521
+ "node_modules/@aws-sdk/credential-provider-cognito-identity": {
522
+ "version": "3.925.0",
523
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.925.0.tgz",
524
+ "integrity": "sha512-hSA6PE/u+DYYJVJ01cyKiDR3d31kOJ1l+qJJimEiG+jH1K+EUgjhNVZKHUzEbumVvpWVHeZJ7Hs6iq4F/rS4+g==",
525
+ "license": "Apache-2.0",
526
+ "dependencies": {
527
+ "@aws-sdk/client-cognito-identity": "3.925.0",
528
+ "@aws-sdk/types": "3.922.0",
529
+ "@smithy/property-provider": "^4.2.4",
530
+ "@smithy/types": "^4.8.1",
531
+ "tslib": "^2.6.2"
532
+ },
533
+ "engines": {
534
+ "node": ">=18.0.0"
535
+ }
536
+ },
537
+ "node_modules/@aws-sdk/credential-provider-env": {
538
+ "version": "3.922.0",
539
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.922.0.tgz",
540
+ "integrity": "sha512-WikGQpKkROJSK3D3E7odPjZ8tU7WJp5/TgGdRuZw3izsHUeH48xMv6IznafpRTmvHcjAbDQj4U3CJZNAzOK/OQ==",
541
+ "license": "Apache-2.0",
542
+ "dependencies": {
543
+ "@aws-sdk/core": "3.922.0",
544
+ "@aws-sdk/types": "3.922.0",
545
+ "@smithy/property-provider": "^4.2.4",
546
+ "@smithy/types": "^4.8.1",
547
+ "tslib": "^2.6.2"
548
+ },
549
+ "engines": {
550
+ "node": ">=18.0.0"
551
+ }
552
+ },
553
+ "node_modules/@aws-sdk/credential-provider-http": {
554
+ "version": "3.922.0",
555
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.922.0.tgz",
556
+ "integrity": "sha512-i72DgHMK7ydAEqdzU0Duqh60Q8W59EZmRJ73y0Y5oFmNOqnYsAI+UXyOoCsubp+Dkr6+yOwAn1gPt1XGE9Aowg==",
557
+ "license": "Apache-2.0",
558
+ "dependencies": {
559
+ "@aws-sdk/core": "3.922.0",
560
+ "@aws-sdk/types": "3.922.0",
561
+ "@smithy/fetch-http-handler": "^5.3.5",
562
+ "@smithy/node-http-handler": "^4.4.4",
563
+ "@smithy/property-provider": "^4.2.4",
564
+ "@smithy/protocol-http": "^5.3.4",
565
+ "@smithy/smithy-client": "^4.9.2",
566
+ "@smithy/types": "^4.8.1",
567
+ "@smithy/util-stream": "^4.5.5",
568
+ "tslib": "^2.6.2"
569
+ },
570
+ "engines": {
571
+ "node": ">=18.0.0"
572
+ }
573
+ },
574
+ "node_modules/@aws-sdk/credential-provider-ini": {
575
+ "version": "3.925.0",
576
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.925.0.tgz",
577
+ "integrity": "sha512-TOs/UkKWwXrSPolRTChpDUQjczw6KqbbanF0EzjUm3sp/AS1ThOQCKuTTdaOBZXkCIJdvRmZjF3adccE3rAoXg==",
578
+ "license": "Apache-2.0",
579
+ "dependencies": {
580
+ "@aws-sdk/core": "3.922.0",
581
+ "@aws-sdk/credential-provider-env": "3.922.0",
582
+ "@aws-sdk/credential-provider-http": "3.922.0",
583
+ "@aws-sdk/credential-provider-process": "3.922.0",
584
+ "@aws-sdk/credential-provider-sso": "3.925.0",
585
+ "@aws-sdk/credential-provider-web-identity": "3.925.0",
586
+ "@aws-sdk/nested-clients": "3.925.0",
587
+ "@aws-sdk/types": "3.922.0",
588
+ "@smithy/credential-provider-imds": "^4.2.4",
589
+ "@smithy/property-provider": "^4.2.4",
590
+ "@smithy/shared-ini-file-loader": "^4.3.4",
591
+ "@smithy/types": "^4.8.1",
592
+ "tslib": "^2.6.2"
593
+ },
594
+ "engines": {
595
+ "node": ">=18.0.0"
596
+ }
597
+ },
598
+ "node_modules/@aws-sdk/credential-provider-node": {
599
+ "version": "3.925.0",
600
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.925.0.tgz",
601
+ "integrity": "sha512-+T9mnnTY73MLkVxsk5RtzE4fv7GnMhR7iXhL/yTusf1zLfA09uxlA9VCz6tWxm5rHcO4ZN0x4hnqqDhM+DB5KQ==",
602
+ "license": "Apache-2.0",
603
+ "dependencies": {
604
+ "@aws-sdk/credential-provider-env": "3.922.0",
605
+ "@aws-sdk/credential-provider-http": "3.922.0",
606
+ "@aws-sdk/credential-provider-ini": "3.925.0",
607
+ "@aws-sdk/credential-provider-process": "3.922.0",
608
+ "@aws-sdk/credential-provider-sso": "3.925.0",
609
+ "@aws-sdk/credential-provider-web-identity": "3.925.0",
610
+ "@aws-sdk/types": "3.922.0",
611
+ "@smithy/credential-provider-imds": "^4.2.4",
612
+ "@smithy/property-provider": "^4.2.4",
613
+ "@smithy/shared-ini-file-loader": "^4.3.4",
614
+ "@smithy/types": "^4.8.1",
615
+ "tslib": "^2.6.2"
616
+ },
617
+ "engines": {
618
+ "node": ">=18.0.0"
619
+ }
620
+ },
621
+ "node_modules/@aws-sdk/credential-provider-process": {
622
+ "version": "3.922.0",
623
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.922.0.tgz",
624
+ "integrity": "sha512-1DZOYezT6okslpvMW7oA2q+y17CJd4fxjNFH0jtThfswdh9CtG62+wxenqO+NExttq0UMaKisrkZiVrYQBTShw==",
625
+ "license": "Apache-2.0",
626
+ "dependencies": {
627
+ "@aws-sdk/core": "3.922.0",
628
+ "@aws-sdk/types": "3.922.0",
629
+ "@smithy/property-provider": "^4.2.4",
630
+ "@smithy/shared-ini-file-loader": "^4.3.4",
631
+ "@smithy/types": "^4.8.1",
632
+ "tslib": "^2.6.2"
633
+ },
634
+ "engines": {
635
+ "node": ">=18.0.0"
636
+ }
637
+ },
638
+ "node_modules/@aws-sdk/credential-provider-sso": {
639
+ "version": "3.925.0",
640
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.925.0.tgz",
641
+ "integrity": "sha512-aZlUC6LRsOMDvIu0ifF62mTjL3KGzclWu5XBBN8eLDAYTdhqMxv3HyrqWoiHnGZnZGaVU+II+qsVoeBnGOwHow==",
642
+ "license": "Apache-2.0",
643
+ "dependencies": {
644
+ "@aws-sdk/client-sso": "3.925.0",
645
+ "@aws-sdk/core": "3.922.0",
646
+ "@aws-sdk/token-providers": "3.925.0",
647
+ "@aws-sdk/types": "3.922.0",
648
+ "@smithy/property-provider": "^4.2.4",
649
+ "@smithy/shared-ini-file-loader": "^4.3.4",
650
+ "@smithy/types": "^4.8.1",
651
+ "tslib": "^2.6.2"
652
+ },
653
+ "engines": {
654
+ "node": ">=18.0.0"
655
+ }
656
+ },
657
+ "node_modules/@aws-sdk/credential-provider-web-identity": {
658
+ "version": "3.925.0",
659
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.925.0.tgz",
660
+ "integrity": "sha512-dR34s8Sfd1wJBzIuvRFO2FCnLmYD8iwPWrdXWI2ZypFt1EQR8jeQ20mnS+UOCoR5Z0tY6wJqEgTXKl4KuZ+DUg==",
661
+ "license": "Apache-2.0",
662
+ "dependencies": {
663
+ "@aws-sdk/core": "3.922.0",
664
+ "@aws-sdk/nested-clients": "3.925.0",
665
+ "@aws-sdk/types": "3.922.0",
666
+ "@smithy/property-provider": "^4.2.4",
667
+ "@smithy/shared-ini-file-loader": "^4.3.4",
668
+ "@smithy/types": "^4.8.1",
669
+ "tslib": "^2.6.2"
670
+ },
671
+ "engines": {
672
+ "node": ">=18.0.0"
673
+ }
674
+ },
675
+ "node_modules/@aws-sdk/credential-providers": {
676
+ "version": "3.925.0",
677
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.925.0.tgz",
678
+ "integrity": "sha512-CTTFn+8NiXRoyKbaTKXCSZ9pUs3R3HllTgl2In8Mxl60Eim9QrP3QYbSjH+pqaIOf1qhbe1UuEICzGrO3Y+8MA==",
679
+ "license": "Apache-2.0",
680
+ "dependencies": {
681
+ "@aws-sdk/client-cognito-identity": "3.925.0",
682
+ "@aws-sdk/core": "3.922.0",
683
+ "@aws-sdk/credential-provider-cognito-identity": "3.925.0",
684
+ "@aws-sdk/credential-provider-env": "3.922.0",
685
+ "@aws-sdk/credential-provider-http": "3.922.0",
686
+ "@aws-sdk/credential-provider-ini": "3.925.0",
687
+ "@aws-sdk/credential-provider-node": "3.925.0",
688
+ "@aws-sdk/credential-provider-process": "3.922.0",
689
+ "@aws-sdk/credential-provider-sso": "3.925.0",
690
+ "@aws-sdk/credential-provider-web-identity": "3.925.0",
691
+ "@aws-sdk/nested-clients": "3.925.0",
692
+ "@aws-sdk/types": "3.922.0",
693
+ "@smithy/config-resolver": "^4.4.2",
694
+ "@smithy/core": "^3.17.2",
695
+ "@smithy/credential-provider-imds": "^4.2.4",
696
+ "@smithy/node-config-provider": "^4.3.4",
697
+ "@smithy/property-provider": "^4.2.4",
698
+ "@smithy/types": "^4.8.1",
699
+ "tslib": "^2.6.2"
700
+ },
701
+ "engines": {
702
+ "node": ">=18.0.0"
703
+ }
704
+ },
705
+ "node_modules/@aws-sdk/middleware-host-header": {
706
+ "version": "3.922.0",
707
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.922.0.tgz",
708
+ "integrity": "sha512-HPquFgBnq/KqKRVkiuCt97PmWbKtxQ5iUNLEc6FIviqOoZTmaYG3EDsIbuFBz9C4RHJU4FKLmHL2bL3FEId6AA==",
709
+ "license": "Apache-2.0",
710
+ "dependencies": {
711
+ "@aws-sdk/types": "3.922.0",
712
+ "@smithy/protocol-http": "^5.3.4",
713
+ "@smithy/types": "^4.8.1",
714
+ "tslib": "^2.6.2"
715
+ },
716
+ "engines": {
717
+ "node": ">=18.0.0"
718
+ }
719
+ },
720
+ "node_modules/@aws-sdk/middleware-logger": {
721
+ "version": "3.922.0",
722
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.922.0.tgz",
723
+ "integrity": "sha512-AkvYO6b80FBm5/kk2E636zNNcNgjztNNUxpqVx+huyGn9ZqGTzS4kLqW2hO6CBe5APzVtPCtiQsXL24nzuOlAg==",
724
+ "license": "Apache-2.0",
725
+ "dependencies": {
726
+ "@aws-sdk/types": "3.922.0",
727
+ "@smithy/types": "^4.8.1",
728
+ "tslib": "^2.6.2"
729
+ },
730
+ "engines": {
731
+ "node": ">=18.0.0"
732
+ }
733
+ },
734
+ "node_modules/@aws-sdk/middleware-recursion-detection": {
735
+ "version": "3.922.0",
736
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.922.0.tgz",
737
+ "integrity": "sha512-TtSCEDonV/9R0VhVlCpxZbp/9sxQvTTRKzIf8LxW3uXpby6Wl8IxEciBJlxmSkoqxh542WRcko7NYODlvL/gDA==",
738
+ "license": "Apache-2.0",
739
+ "dependencies": {
740
+ "@aws-sdk/types": "3.922.0",
741
+ "@aws/lambda-invoke-store": "^0.1.1",
742
+ "@smithy/protocol-http": "^5.3.4",
743
+ "@smithy/types": "^4.8.1",
744
+ "tslib": "^2.6.2"
745
+ },
746
+ "engines": {
747
+ "node": ">=18.0.0"
748
+ }
749
+ },
750
+ "node_modules/@aws-sdk/middleware-user-agent": {
751
+ "version": "3.922.0",
752
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.922.0.tgz",
753
+ "integrity": "sha512-N4Qx/9KP3oVQBJOrSghhz8iZFtUC2NNeSZt88hpPhbqAEAtuX8aD8OzVcpnAtrwWqy82Yd2YTxlkqMGkgqnBsQ==",
754
+ "license": "Apache-2.0",
755
+ "dependencies": {
756
+ "@aws-sdk/core": "3.922.0",
757
+ "@aws-sdk/types": "3.922.0",
758
+ "@aws-sdk/util-endpoints": "3.922.0",
759
+ "@smithy/core": "^3.17.2",
760
+ "@smithy/protocol-http": "^5.3.4",
761
+ "@smithy/types": "^4.8.1",
762
+ "tslib": "^2.6.2"
763
+ },
764
+ "engines": {
765
+ "node": ">=18.0.0"
766
+ }
767
+ },
768
+ "node_modules/@aws-sdk/nested-clients": {
769
+ "version": "3.925.0",
770
+ "resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.925.0.tgz",
771
+ "integrity": "sha512-Fc8QhH+1YzGQb5aWQUX6gRnKSzUZ9p3p/muqXIgYBL8RSd5O6hSPhDTyrOWE247zFlOjVlAlEnoTMJKarH0cIA==",
772
+ "license": "Apache-2.0",
773
+ "dependencies": {
774
+ "@aws-crypto/sha256-browser": "5.2.0",
775
+ "@aws-crypto/sha256-js": "5.2.0",
776
+ "@aws-sdk/core": "3.922.0",
777
+ "@aws-sdk/middleware-host-header": "3.922.0",
778
+ "@aws-sdk/middleware-logger": "3.922.0",
779
+ "@aws-sdk/middleware-recursion-detection": "3.922.0",
780
+ "@aws-sdk/middleware-user-agent": "3.922.0",
781
+ "@aws-sdk/region-config-resolver": "3.925.0",
782
+ "@aws-sdk/types": "3.922.0",
783
+ "@aws-sdk/util-endpoints": "3.922.0",
784
+ "@aws-sdk/util-user-agent-browser": "3.922.0",
785
+ "@aws-sdk/util-user-agent-node": "3.922.0",
786
+ "@smithy/config-resolver": "^4.4.2",
787
+ "@smithy/core": "^3.17.2",
788
+ "@smithy/fetch-http-handler": "^5.3.5",
789
+ "@smithy/hash-node": "^4.2.4",
790
+ "@smithy/invalid-dependency": "^4.2.4",
791
+ "@smithy/middleware-content-length": "^4.2.4",
792
+ "@smithy/middleware-endpoint": "^4.3.6",
793
+ "@smithy/middleware-retry": "^4.4.6",
794
+ "@smithy/middleware-serde": "^4.2.4",
795
+ "@smithy/middleware-stack": "^4.2.4",
796
+ "@smithy/node-config-provider": "^4.3.4",
797
+ "@smithy/node-http-handler": "^4.4.4",
798
+ "@smithy/protocol-http": "^5.3.4",
799
+ "@smithy/smithy-client": "^4.9.2",
800
+ "@smithy/types": "^4.8.1",
801
+ "@smithy/url-parser": "^4.2.4",
802
+ "@smithy/util-base64": "^4.3.0",
803
+ "@smithy/util-body-length-browser": "^4.2.0",
804
+ "@smithy/util-body-length-node": "^4.2.1",
805
+ "@smithy/util-defaults-mode-browser": "^4.3.5",
806
+ "@smithy/util-defaults-mode-node": "^4.2.8",
807
+ "@smithy/util-endpoints": "^3.2.4",
808
+ "@smithy/util-middleware": "^4.2.4",
809
+ "@smithy/util-retry": "^4.2.4",
810
+ "@smithy/util-utf8": "^4.2.0",
811
+ "tslib": "^2.6.2"
812
+ },
813
+ "engines": {
814
+ "node": ">=18.0.0"
815
+ }
816
+ },
817
+ "node_modules/@aws-sdk/region-config-resolver": {
818
+ "version": "3.925.0",
819
+ "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.925.0.tgz",
820
+ "integrity": "sha512-FOthcdF9oDb1pfQBRCfWPZhJZT5wqpvdAS5aJzB1WDZ+6EuaAhLzLH/fW1slDunIqq1PSQGG3uSnVglVVOvPHQ==",
821
+ "license": "Apache-2.0",
822
+ "dependencies": {
823
+ "@aws-sdk/types": "3.922.0",
824
+ "@smithy/config-resolver": "^4.4.2",
825
+ "@smithy/node-config-provider": "^4.3.4",
826
+ "@smithy/types": "^4.8.1",
827
+ "tslib": "^2.6.2"
828
+ },
829
+ "engines": {
830
+ "node": ">=18.0.0"
831
+ }
832
+ },
833
+ "node_modules/@aws-sdk/token-providers": {
834
+ "version": "3.925.0",
835
+ "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.925.0.tgz",
836
+ "integrity": "sha512-F4Oibka1W5YYDeL+rGt/Hg3NLjOzrJdmuZOE0OFQt/U6dnJwYmYi2gFqduvZnZcD1agNm37mh7/GUq1zvKS6ig==",
837
+ "license": "Apache-2.0",
838
+ "dependencies": {
839
+ "@aws-sdk/core": "3.922.0",
840
+ "@aws-sdk/nested-clients": "3.925.0",
841
+ "@aws-sdk/types": "3.922.0",
842
+ "@smithy/property-provider": "^4.2.4",
843
+ "@smithy/shared-ini-file-loader": "^4.3.4",
844
+ "@smithy/types": "^4.8.1",
845
+ "tslib": "^2.6.2"
846
+ },
847
+ "engines": {
848
+ "node": ">=18.0.0"
849
+ }
850
+ },
851
+ "node_modules/@aws-sdk/types": {
852
+ "version": "3.922.0",
853
+ "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.922.0.tgz",
854
+ "integrity": "sha512-eLA6XjVobAUAMivvM7DBL79mnHyrm+32TkXNWZua5mnxF+6kQCfblKKJvxMZLGosO53/Ex46ogim8IY5Nbqv2w==",
855
+ "license": "Apache-2.0",
856
+ "dependencies": {
857
+ "@smithy/types": "^4.8.1",
858
+ "tslib": "^2.6.2"
859
+ },
860
+ "engines": {
861
+ "node": ">=18.0.0"
862
+ }
863
+ },
864
+ "node_modules/@aws-sdk/util-endpoints": {
865
+ "version": "3.922.0",
866
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.922.0.tgz",
867
+ "integrity": "sha512-4ZdQCSuNMY8HMlR1YN4MRDdXuKd+uQTeKIr5/pIM+g3TjInZoj8imvXudjcrFGA63UF3t92YVTkBq88mg58RXQ==",
868
+ "license": "Apache-2.0",
869
+ "dependencies": {
870
+ "@aws-sdk/types": "3.922.0",
871
+ "@smithy/types": "^4.8.1",
872
+ "@smithy/url-parser": "^4.2.4",
873
+ "@smithy/util-endpoints": "^3.2.4",
874
+ "tslib": "^2.6.2"
875
+ },
876
+ "engines": {
877
+ "node": ">=18.0.0"
878
+ }
879
+ },
880
+ "node_modules/@aws-sdk/util-locate-window": {
881
+ "version": "3.893.0",
882
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.893.0.tgz",
883
+ "integrity": "sha512-T89pFfgat6c8nMmpI8eKjBcDcgJq36+m9oiXbcUzeU55MP9ZuGgBomGjGnHaEyF36jenW9gmg3NfZDm0AO2XPg==",
884
+ "license": "Apache-2.0",
885
+ "dependencies": {
886
+ "tslib": "^2.6.2"
887
+ },
888
+ "engines": {
889
+ "node": ">=18.0.0"
890
+ }
891
+ },
892
+ "node_modules/@aws-sdk/util-user-agent-browser": {
893
+ "version": "3.922.0",
894
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.922.0.tgz",
895
+ "integrity": "sha512-qOJAERZ3Plj1st7M4Q5henl5FRpE30uLm6L9edZqZXGR6c7ry9jzexWamWVpQ4H4xVAVmiO9dIEBAfbq4mduOA==",
896
+ "license": "Apache-2.0",
897
+ "dependencies": {
898
+ "@aws-sdk/types": "3.922.0",
899
+ "@smithy/types": "^4.8.1",
900
+ "bowser": "^2.11.0",
901
+ "tslib": "^2.6.2"
902
+ }
903
+ },
904
+ "node_modules/@aws-sdk/util-user-agent-node": {
905
+ "version": "3.922.0",
906
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.922.0.tgz",
907
+ "integrity": "sha512-NrPe/Rsr5kcGunkog0eBV+bY0inkRELsD2SacC4lQZvZiXf8VJ2Y7j+Yq1tB+h+FPLsdt3v9wItIvDf/laAm0Q==",
908
+ "license": "Apache-2.0",
909
+ "dependencies": {
910
+ "@aws-sdk/middleware-user-agent": "3.922.0",
911
+ "@aws-sdk/types": "3.922.0",
912
+ "@smithy/node-config-provider": "^4.3.4",
913
+ "@smithy/types": "^4.8.1",
914
+ "tslib": "^2.6.2"
915
+ },
916
+ "engines": {
917
+ "node": ">=18.0.0"
918
+ },
919
+ "peerDependencies": {
920
+ "aws-crt": ">=1.0.0"
921
+ },
922
+ "peerDependenciesMeta": {
923
+ "aws-crt": {
924
+ "optional": true
925
+ }
926
+ }
927
+ },
928
+ "node_modules/@aws-sdk/xml-builder": {
929
+ "version": "3.921.0",
930
+ "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.921.0.tgz",
931
+ "integrity": "sha512-LVHg0jgjyicKKvpNIEMXIMr1EBViESxcPkqfOlT+X1FkmUMTNZEEVF18tOJg4m4hV5vxtkWcqtr4IEeWa1C41Q==",
932
+ "license": "Apache-2.0",
933
+ "dependencies": {
934
+ "@smithy/types": "^4.8.1",
935
+ "fast-xml-parser": "5.2.5",
936
+ "tslib": "^2.6.2"
937
+ },
938
+ "engines": {
939
+ "node": ">=18.0.0"
940
+ }
941
+ },
942
+ "node_modules/@aws/lambda-invoke-store": {
943
+ "version": "0.1.1",
944
+ "resolved": "https://registry.npmjs.org/@aws/lambda-invoke-store/-/lambda-invoke-store-0.1.1.tgz",
945
+ "integrity": "sha512-RcLam17LdlbSOSp9VxmUu1eI6Mwxp+OwhD2QhiSNmNCzoDb0EeUXTD2n/WbcnrAYMGlmf05th6QYq23VqvJqpA==",
946
+ "license": "Apache-2.0",
947
+ "engines": {
948
+ "node": ">=18.0.0"
949
+ }
950
+ },
951
  "node_modules/@babel/code-frame": {
952
  "version": "7.27.1",
953
  "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz",
 
2984
  "linux"
2985
  ]
2986
  },
2987
+ "node_modules/@rollup/rollup-linux-s390x-gnu": {
2988
+ "version": "4.41.1",
2989
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.41.1.tgz",
2990
+ "integrity": "sha512-oIE6M8WC9ma6xYqjvPhzZYk6NbobIURvP/lEbh7FWplcMO6gn7MM2yHKA1eC/GvYwzNKK/1LYgqzdkZ8YFxR8g==",
2991
+ "cpu": [
2992
+ "s390x"
2993
+ ],
2994
+ "license": "MIT",
2995
+ "optional": true,
2996
+ "os": [
2997
+ "linux"
2998
+ ]
2999
+ },
3000
+ "node_modules/@rollup/rollup-linux-x64-gnu": {
3001
+ "version": "4.41.1",
3002
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.41.1.tgz",
3003
+ "integrity": "sha512-cWBOvayNvA+SyeQMp79BHPK8ws6sHSsYnK5zDcsC3Hsxr1dgTABKjMnMslPq1DvZIp6uO7kIWhiGwaTdR4Og9A==",
3004
+ "cpu": [
3005
+ "x64"
3006
+ ],
3007
+ "license": "MIT",
3008
+ "optional": true,
3009
+ "os": [
3010
+ "linux"
3011
+ ]
3012
+ },
3013
+ "node_modules/@rollup/rollup-linux-x64-musl": {
3014
+ "version": "4.41.1",
3015
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.41.1.tgz",
3016
+ "integrity": "sha512-y5CbN44M+pUCdGDlZFzGGBSKCA4A/J2ZH4edTYSSxFg7ce1Xt3GtydbVKWLlzL+INfFIZAEg1ZV6hh9+QQf9YQ==",
3017
+ "cpu": [
3018
+ "x64"
3019
+ ],
3020
+ "license": "MIT",
3021
+ "optional": true,
3022
+ "os": [
3023
+ "linux"
3024
+ ]
3025
+ },
3026
+ "node_modules/@rollup/rollup-win32-arm64-msvc": {
3027
+ "version": "4.41.1",
3028
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.41.1.tgz",
3029
+ "integrity": "sha512-lZkCxIrjlJlMt1dLO/FbpZbzt6J/A8p4DnqzSa4PWqPEUUUnzXLeki/iyPLfV0BmHItlYgHUqJe+3KiyydmiNQ==",
3030
+ "cpu": [
3031
+ "arm64"
3032
+ ],
3033
+ "license": "MIT",
3034
+ "optional": true,
3035
+ "os": [
3036
+ "win32"
3037
+ ]
3038
+ },
3039
+ "node_modules/@rollup/rollup-win32-ia32-msvc": {
3040
+ "version": "4.41.1",
3041
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.41.1.tgz",
3042
+ "integrity": "sha512-+psFT9+pIh2iuGsxFYYa/LhS5MFKmuivRsx9iPJWNSGbh2XVEjk90fmpUEjCnILPEPJnikAU6SFDiEUyOv90Pg==",
3043
+ "cpu": [
3044
+ "ia32"
3045
+ ],
3046
+ "license": "MIT",
3047
+ "optional": true,
3048
+ "os": [
3049
+ "win32"
3050
+ ]
3051
+ },
3052
+ "node_modules/@rollup/rollup-win32-x64-msvc": {
3053
+ "version": "4.41.1",
3054
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.41.1.tgz",
3055
+ "integrity": "sha512-Wq2zpapRYLfi4aKxf2Xff0tN+7slj2d4R87WEzqw7ZLsVvO5zwYCIuEGSZYiK41+GlwUo1HiR+GdkLEJnCKTCw==",
3056
+ "cpu": [
3057
+ "x64"
3058
+ ],
3059
+ "license": "MIT",
3060
+ "optional": true,
3061
+ "os": [
3062
+ "win32"
3063
+ ]
3064
+ },
3065
+ "node_modules/@scalar/openapi-types": {
3066
+ "version": "0.1.1",
3067
+ "resolved": "https://registry.npmjs.org/@scalar/openapi-types/-/openapi-types-0.1.1.tgz",
3068
+ "integrity": "sha512-NMy3QNk6ytcCoPUGJH0t4NNr36OWXgZhA3ormr3TvhX1NDgoF95wFyodGVH8xiHeUyn2/FxtETm8UBLbB5xEmg==",
3069
+ "license": "MIT",
3070
+ "engines": {
3071
+ "node": ">=18"
3072
+ }
3073
+ },
3074
+ "node_modules/@scalar/themes": {
3075
+ "version": "0.9.86",
3076
+ "resolved": "https://registry.npmjs.org/@scalar/themes/-/themes-0.9.86.tgz",
3077
+ "integrity": "sha512-QUHo9g5oSWi+0Lm1vJY9TaMZRau8LHg+vte7q5BVTBnu6NuQfigCaN+ouQ73FqIVd96TwMO6Db+dilK1B+9row==",
3078
+ "license": "MIT",
3079
+ "dependencies": {
3080
+ "@scalar/types": "0.1.7"
3081
+ },
3082
+ "engines": {
3083
+ "node": ">=18"
3084
+ }
3085
+ },
3086
+ "node_modules/@scalar/themes/node_modules/@scalar/openapi-types": {
3087
+ "version": "0.2.0",
3088
+ "resolved": "https://registry.npmjs.org/@scalar/openapi-types/-/openapi-types-0.2.0.tgz",
3089
+ "integrity": "sha512-waiKk12cRCqyUCWTOX0K1WEVX46+hVUK+zRPzAahDJ7G0TApvbNkuy5wx7aoUyEk++HHde0XuQnshXnt8jsddA==",
3090
+ "license": "MIT",
3091
+ "dependencies": {
3092
+ "zod": "^3.23.8"
3093
+ },
3094
+ "engines": {
3095
+ "node": ">=18"
3096
+ }
3097
+ },
3098
+ "node_modules/@scalar/themes/node_modules/@scalar/types": {
3099
+ "version": "0.1.7",
3100
+ "resolved": "https://registry.npmjs.org/@scalar/types/-/types-0.1.7.tgz",
3101
+ "integrity": "sha512-irIDYzTQG2KLvFbuTI8k2Pz/R4JR+zUUSykVTbEMatkzMmVFnn1VzNSMlODbadycwZunbnL2tA27AXed9URVjw==",
3102
+ "license": "MIT",
3103
+ "dependencies": {
3104
+ "@scalar/openapi-types": "0.2.0",
3105
+ "@unhead/schema": "^1.11.11",
3106
+ "nanoid": "^5.1.5",
3107
+ "type-fest": "^4.20.0",
3108
+ "zod": "^3.23.8"
3109
+ },
3110
+ "engines": {
3111
+ "node": ">=18"
3112
+ }
3113
+ },
3114
+ "node_modules/@scalar/themes/node_modules/type-fest": {
3115
+ "version": "4.41.0",
3116
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.41.0.tgz",
3117
+ "integrity": "sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==",
3118
+ "license": "(MIT OR CC0-1.0)",
3119
+ "engines": {
3120
+ "node": ">=16"
3121
+ },
3122
+ "funding": {
3123
+ "url": "https://github.com/sponsors/sindresorhus"
3124
+ }
3125
+ },
3126
+ "node_modules/@scalar/types": {
3127
+ "version": "0.0.12",
3128
+ "resolved": "https://registry.npmjs.org/@scalar/types/-/types-0.0.12.tgz",
3129
+ "integrity": "sha512-XYZ36lSEx87i4gDqopQlGCOkdIITHHEvgkuJFrXFATQs9zHARop0PN0g4RZYWj+ZpCUclOcaOjbCt8JGe22mnQ==",
3130
+ "license": "MIT",
3131
+ "dependencies": {
3132
+ "@scalar/openapi-types": "0.1.1",
3133
+ "@unhead/schema": "^1.9.5"
3134
+ },
3135
+ "engines": {
3136
+ "node": ">=18"
3137
+ }
3138
+ },
3139
+ "node_modules/@shuding/opentype.js": {
3140
+ "version": "1.4.0-beta.0",
3141
+ "resolved": "https://registry.npmjs.org/@shuding/opentype.js/-/opentype.js-1.4.0-beta.0.tgz",
3142
+ "integrity": "sha512-3NgmNyH3l/Hv6EvsWJbsvpcpUba6R8IREQ83nH83cyakCw7uM1arZKNfHwv1Wz6jgqrF/j4x5ELvR6PnK9nTcA==",
3143
+ "license": "MIT",
3144
+ "dependencies": {
3145
+ "fflate": "^0.7.3",
3146
+ "string.prototype.codepointat": "^0.2.1"
3147
+ },
3148
+ "bin": {
3149
+ "ot": "bin/ot"
3150
+ },
3151
+ "engines": {
3152
+ "node": ">= 8.0.0"
3153
+ }
3154
+ },
3155
+ "node_modules/@shuding/opentype.js/node_modules/fflate": {
3156
+ "version": "0.7.4",
3157
+ "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.7.4.tgz",
3158
+ "integrity": "sha512-5u2V/CDW15QM1XbbgS+0DfPxVB+jUKhWEKuuFuHncbk3tEEqzmoXL+2KyOFuKGqOnmdIy0/davWF1CkuwtibCw==",
3159
+ "license": "MIT"
3160
+ },
3161
+ "node_modules/@sinclair/typebox": {
3162
+ "version": "0.34.33",
3163
+ "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.33.tgz",
3164
+ "integrity": "sha512-5HAV9exOMcXRUxo+9iYB5n09XxzCXnfy4VTNW4xnDv+FgjzAGY989C28BIdljKqmF+ZltUwujE3aossvcVtq6g==",
3165
+ "license": "MIT",
3166
+ "optional": true
3167
+ },
3168
+ "node_modules/@smithy/abort-controller": {
3169
+ "version": "4.2.4",
3170
+ "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.2.4.tgz",
3171
+ "integrity": "sha512-Z4DUr/AkgyFf1bOThW2HwzREagee0sB5ycl+hDiSZOfRLW8ZgrOjDi6g8mHH19yyU5E2A/64W3z6SMIf5XiUSQ==",
3172
+ "license": "Apache-2.0",
3173
+ "dependencies": {
3174
+ "@smithy/types": "^4.8.1",
3175
+ "tslib": "^2.6.2"
3176
+ },
3177
+ "engines": {
3178
+ "node": ">=18.0.0"
3179
+ }
3180
+ },
3181
+ "node_modules/@smithy/config-resolver": {
3182
+ "version": "4.4.2",
3183
+ "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.4.2.tgz",
3184
+ "integrity": "sha512-4Jys0ni2tB2VZzgslbEgszZyMdTkPOFGA8g+So/NjR8oy6Qwaq4eSwsrRI+NMtb0Dq4kqCzGUu/nGUx7OM/xfw==",
3185
+ "license": "Apache-2.0",
3186
+ "dependencies": {
3187
+ "@smithy/node-config-provider": "^4.3.4",
3188
+ "@smithy/types": "^4.8.1",
3189
+ "@smithy/util-config-provider": "^4.2.0",
3190
+ "@smithy/util-endpoints": "^3.2.4",
3191
+ "@smithy/util-middleware": "^4.2.4",
3192
+ "tslib": "^2.6.2"
3193
+ },
3194
+ "engines": {
3195
+ "node": ">=18.0.0"
3196
+ }
3197
+ },
3198
+ "node_modules/@smithy/core": {
3199
+ "version": "3.17.2",
3200
+ "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.17.2.tgz",
3201
+ "integrity": "sha512-n3g4Nl1Te+qGPDbNFAYf+smkRVB+JhFsGy9uJXXZQEufoP4u0r+WLh6KvTDolCswaagysDc/afS1yvb2jnj1gQ==",
3202
+ "license": "Apache-2.0",
3203
+ "dependencies": {
3204
+ "@smithy/middleware-serde": "^4.2.4",
3205
+ "@smithy/protocol-http": "^5.3.4",
3206
+ "@smithy/types": "^4.8.1",
3207
+ "@smithy/util-base64": "^4.3.0",
3208
+ "@smithy/util-body-length-browser": "^4.2.0",
3209
+ "@smithy/util-middleware": "^4.2.4",
3210
+ "@smithy/util-stream": "^4.5.5",
3211
+ "@smithy/util-utf8": "^4.2.0",
3212
+ "@smithy/uuid": "^1.1.0",
3213
+ "tslib": "^2.6.2"
3214
+ },
3215
+ "engines": {
3216
+ "node": ">=18.0.0"
3217
+ }
3218
+ },
3219
+ "node_modules/@smithy/credential-provider-imds": {
3220
+ "version": "4.2.4",
3221
+ "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.2.4.tgz",
3222
+ "integrity": "sha512-YVNMjhdz2pVto5bRdux7GMs0x1m0Afz3OcQy/4Yf9DH4fWOtroGH7uLvs7ZmDyoBJzLdegtIPpXrpJOZWvUXdw==",
3223
+ "license": "Apache-2.0",
3224
+ "dependencies": {
3225
+ "@smithy/node-config-provider": "^4.3.4",
3226
+ "@smithy/property-provider": "^4.2.4",
3227
+ "@smithy/types": "^4.8.1",
3228
+ "@smithy/url-parser": "^4.2.4",
3229
+ "tslib": "^2.6.2"
3230
+ },
3231
+ "engines": {
3232
+ "node": ">=18.0.0"
3233
+ }
3234
+ },
3235
+ "node_modules/@smithy/fetch-http-handler": {
3236
+ "version": "5.3.5",
3237
+ "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.3.5.tgz",
3238
+ "integrity": "sha512-mg83SM3FLI8Sa2ooTJbsh5MFfyMTyNRwxqpKHmE0ICRIa66Aodv80DMsTQI02xBLVJ0hckwqTRr5IGAbbWuFLQ==",
3239
+ "license": "Apache-2.0",
3240
+ "dependencies": {
3241
+ "@smithy/protocol-http": "^5.3.4",
3242
+ "@smithy/querystring-builder": "^4.2.4",
3243
+ "@smithy/types": "^4.8.1",
3244
+ "@smithy/util-base64": "^4.3.0",
3245
+ "tslib": "^2.6.2"
3246
+ },
3247
+ "engines": {
3248
+ "node": ">=18.0.0"
3249
+ }
3250
+ },
3251
+ "node_modules/@smithy/hash-node": {
3252
+ "version": "4.2.4",
3253
+ "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.2.4.tgz",
3254
+ "integrity": "sha512-kKU0gVhx/ppVMntvUOZE7WRMFW86HuaxLwvqileBEjL7PoILI8/djoILw3gPQloGVE6O0oOzqafxeNi2KbnUJw==",
3255
+ "license": "Apache-2.0",
3256
+ "dependencies": {
3257
+ "@smithy/types": "^4.8.1",
3258
+ "@smithy/util-buffer-from": "^4.2.0",
3259
+ "@smithy/util-utf8": "^4.2.0",
3260
+ "tslib": "^2.6.2"
3261
+ },
3262
+ "engines": {
3263
+ "node": ">=18.0.0"
3264
+ }
3265
+ },
3266
+ "node_modules/@smithy/invalid-dependency": {
3267
+ "version": "4.2.4",
3268
+ "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.2.4.tgz",
3269
+ "integrity": "sha512-z6aDLGiHzsMhbS2MjetlIWopWz//K+mCoPXjW6aLr0mypF+Y7qdEh5TyJ20Onf9FbWHiWl4eC+rITdizpnXqOw==",
3270
+ "license": "Apache-2.0",
3271
+ "dependencies": {
3272
+ "@smithy/types": "^4.8.1",
3273
+ "tslib": "^2.6.2"
3274
+ },
3275
+ "engines": {
3276
+ "node": ">=18.0.0"
3277
+ }
3278
+ },
3279
+ "node_modules/@smithy/is-array-buffer": {
3280
+ "version": "4.2.0",
3281
+ "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-4.2.0.tgz",
3282
+ "integrity": "sha512-DZZZBvC7sjcYh4MazJSGiWMI2L7E0oCiRHREDzIxi/M2LY79/21iXt6aPLHge82wi5LsuRF5A06Ds3+0mlh6CQ==",
3283
+ "license": "Apache-2.0",
3284
+ "dependencies": {
3285
+ "tslib": "^2.6.2"
3286
+ },
3287
+ "engines": {
3288
+ "node": ">=18.0.0"
3289
+ }
3290
+ },
3291
+ "node_modules/@smithy/middleware-content-length": {
3292
+ "version": "4.2.4",
3293
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.2.4.tgz",
3294
+ "integrity": "sha512-hJRZuFS9UsElX4DJSJfoX4M1qXRH+VFiLMUnhsWvtOOUWRNvvOfDaUSdlNbjwv1IkpVjj/Rd/O59Jl3nhAcxow==",
3295
+ "license": "Apache-2.0",
3296
+ "dependencies": {
3297
+ "@smithy/protocol-http": "^5.3.4",
3298
+ "@smithy/types": "^4.8.1",
3299
+ "tslib": "^2.6.2"
3300
+ },
3301
+ "engines": {
3302
+ "node": ">=18.0.0"
3303
+ }
3304
+ },
3305
+ "node_modules/@smithy/middleware-endpoint": {
3306
+ "version": "4.3.6",
3307
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.3.6.tgz",
3308
+ "integrity": "sha512-PXehXofGMFpDqr933rxD8RGOcZ0QBAWtuzTgYRAHAL2BnKawHDEdf/TnGpcmfPJGwonhginaaeJIKluEojiF/w==",
3309
+ "license": "Apache-2.0",
3310
+ "dependencies": {
3311
+ "@smithy/core": "^3.17.2",
3312
+ "@smithy/middleware-serde": "^4.2.4",
3313
+ "@smithy/node-config-provider": "^4.3.4",
3314
+ "@smithy/shared-ini-file-loader": "^4.3.4",
3315
+ "@smithy/types": "^4.8.1",
3316
+ "@smithy/url-parser": "^4.2.4",
3317
+ "@smithy/util-middleware": "^4.2.4",
3318
+ "tslib": "^2.6.2"
3319
+ },
3320
+ "engines": {
3321
+ "node": ">=18.0.0"
3322
+ }
3323
+ },
3324
+ "node_modules/@smithy/middleware-retry": {
3325
+ "version": "4.4.6",
3326
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.4.6.tgz",
3327
+ "integrity": "sha512-OhLx131znrEDxZPAvH/OYufR9d1nB2CQADyYFN4C3V/NQS7Mg4V6uvxHC/Dr96ZQW8IlHJTJ+vAhKt6oxWRndA==",
3328
+ "license": "Apache-2.0",
3329
+ "dependencies": {
3330
+ "@smithy/node-config-provider": "^4.3.4",
3331
+ "@smithy/protocol-http": "^5.3.4",
3332
+ "@smithy/service-error-classification": "^4.2.4",
3333
+ "@smithy/smithy-client": "^4.9.2",
3334
+ "@smithy/types": "^4.8.1",
3335
+ "@smithy/util-middleware": "^4.2.4",
3336
+ "@smithy/util-retry": "^4.2.4",
3337
+ "@smithy/uuid": "^1.1.0",
3338
+ "tslib": "^2.6.2"
3339
+ },
3340
+ "engines": {
3341
+ "node": ">=18.0.0"
3342
+ }
3343
+ },
3344
+ "node_modules/@smithy/middleware-serde": {
3345
+ "version": "4.2.4",
3346
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.2.4.tgz",
3347
+ "integrity": "sha512-jUr3x2CDhV15TOX2/Uoz4gfgeqLrRoTQbYAuhLS7lcVKNev7FeYSJ1ebEfjk+l9kbb7k7LfzIR/irgxys5ZTOg==",
3348
+ "license": "Apache-2.0",
3349
+ "dependencies": {
3350
+ "@smithy/protocol-http": "^5.3.4",
3351
+ "@smithy/types": "^4.8.1",
3352
+ "tslib": "^2.6.2"
3353
+ },
3354
+ "engines": {
3355
+ "node": ">=18.0.0"
3356
+ }
3357
+ },
3358
+ "node_modules/@smithy/middleware-stack": {
3359
+ "version": "4.2.4",
3360
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.2.4.tgz",
3361
+ "integrity": "sha512-Gy3TKCOnm9JwpFooldwAboazw+EFYlC+Bb+1QBsSi5xI0W5lX81j/P5+CXvD/9ZjtYKRgxq+kkqd/KOHflzvgA==",
3362
+ "license": "Apache-2.0",
3363
+ "dependencies": {
3364
+ "@smithy/types": "^4.8.1",
3365
+ "tslib": "^2.6.2"
3366
+ },
3367
+ "engines": {
3368
+ "node": ">=18.0.0"
3369
+ }
3370
+ },
3371
+ "node_modules/@smithy/node-config-provider": {
3372
+ "version": "4.3.4",
3373
+ "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.3.4.tgz",
3374
+ "integrity": "sha512-3X3w7qzmo4XNNdPKNS4nbJcGSwiEMsNsRSunMA92S4DJLLIrH5g1AyuOA2XKM9PAPi8mIWfqC+fnfKNsI4KvHw==",
3375
+ "license": "Apache-2.0",
3376
+ "dependencies": {
3377
+ "@smithy/property-provider": "^4.2.4",
3378
+ "@smithy/shared-ini-file-loader": "^4.3.4",
3379
+ "@smithy/types": "^4.8.1",
3380
+ "tslib": "^2.6.2"
3381
+ },
3382
+ "engines": {
3383
+ "node": ">=18.0.0"
3384
+ }
3385
+ },
3386
+ "node_modules/@smithy/node-http-handler": {
3387
+ "version": "4.4.4",
3388
+ "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.4.4.tgz",
3389
+ "integrity": "sha512-VXHGfzCXLZeKnFp6QXjAdy+U8JF9etfpUXD1FAbzY1GzsFJiDQRQIt2CnMUvUdz3/YaHNqT3RphVWMUpXTIODA==",
3390
+ "license": "Apache-2.0",
3391
+ "dependencies": {
3392
+ "@smithy/abort-controller": "^4.2.4",
3393
+ "@smithy/protocol-http": "^5.3.4",
3394
+ "@smithy/querystring-builder": "^4.2.4",
3395
+ "@smithy/types": "^4.8.1",
3396
+ "tslib": "^2.6.2"
3397
+ },
3398
+ "engines": {
3399
+ "node": ">=18.0.0"
3400
+ }
3401
+ },
3402
+ "node_modules/@smithy/property-provider": {
3403
+ "version": "4.2.4",
3404
+ "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-4.2.4.tgz",
3405
+ "integrity": "sha512-g2DHo08IhxV5GdY3Cpt/jr0mkTlAD39EJKN27Jb5N8Fb5qt8KG39wVKTXiTRCmHHou7lbXR8nKVU14/aRUf86w==",
3406
+ "license": "Apache-2.0",
3407
+ "dependencies": {
3408
+ "@smithy/types": "^4.8.1",
3409
+ "tslib": "^2.6.2"
3410
+ },
3411
+ "engines": {
3412
+ "node": ">=18.0.0"
3413
+ }
3414
+ },
3415
+ "node_modules/@smithy/protocol-http": {
3416
+ "version": "5.3.4",
3417
+ "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.3.4.tgz",
3418
+ "integrity": "sha512-3sfFd2MAzVt0Q/klOmjFi3oIkxczHs0avbwrfn1aBqtc23WqQSmjvk77MBw9WkEQcwbOYIX5/2z4ULj8DuxSsw==",
3419
+ "license": "Apache-2.0",
3420
+ "dependencies": {
3421
+ "@smithy/types": "^4.8.1",
3422
+ "tslib": "^2.6.2"
3423
+ },
3424
+ "engines": {
3425
+ "node": ">=18.0.0"
3426
+ }
3427
+ },
3428
+ "node_modules/@smithy/querystring-builder": {
3429
+ "version": "4.2.4",
3430
+ "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.2.4.tgz",
3431
+ "integrity": "sha512-KQ1gFXXC+WsbPFnk7pzskzOpn4s+KheWgO3dzkIEmnb6NskAIGp/dGdbKisTPJdtov28qNDohQrgDUKzXZBLig==",
3432
+ "license": "Apache-2.0",
3433
+ "dependencies": {
3434
+ "@smithy/types": "^4.8.1",
3435
+ "@smithy/util-uri-escape": "^4.2.0",
3436
+ "tslib": "^2.6.2"
3437
+ },
3438
+ "engines": {
3439
+ "node": ">=18.0.0"
3440
+ }
3441
+ },
3442
+ "node_modules/@smithy/querystring-parser": {
3443
+ "version": "4.2.4",
3444
+ "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.2.4.tgz",
3445
+ "integrity": "sha512-aHb5cqXZocdzEkZ/CvhVjdw5l4r1aU/9iMEyoKzH4eXMowT6M0YjBpp7W/+XjkBnY8Xh0kVd55GKjnPKlCwinQ==",
3446
+ "license": "Apache-2.0",
3447
+ "dependencies": {
3448
+ "@smithy/types": "^4.8.1",
3449
+ "tslib": "^2.6.2"
3450
+ },
3451
+ "engines": {
3452
+ "node": ">=18.0.0"
3453
+ }
3454
+ },
3455
+ "node_modules/@smithy/service-error-classification": {
3456
+ "version": "4.2.4",
3457
+ "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.2.4.tgz",
3458
+ "integrity": "sha512-fdWuhEx4+jHLGeew9/IvqVU/fxT/ot70tpRGuOLxE3HzZOyKeTQfYeV1oaBXpzi93WOk668hjMuuagJ2/Qs7ng==",
3459
+ "license": "Apache-2.0",
3460
+ "dependencies": {
3461
+ "@smithy/types": "^4.8.1"
3462
+ },
3463
+ "engines": {
3464
+ "node": ">=18.0.0"
3465
+ }
3466
+ },
3467
+ "node_modules/@smithy/shared-ini-file-loader": {
3468
+ "version": "4.3.4",
3469
+ "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.3.4.tgz",
3470
+ "integrity": "sha512-y5ozxeQ9omVjbnJo9dtTsdXj9BEvGx2X8xvRgKnV+/7wLBuYJQL6dOa/qMY6omyHi7yjt1OA97jZLoVRYi8lxA==",
3471
+ "license": "Apache-2.0",
3472
+ "dependencies": {
3473
+ "@smithy/types": "^4.8.1",
3474
+ "tslib": "^2.6.2"
3475
+ },
3476
+ "engines": {
3477
+ "node": ">=18.0.0"
3478
+ }
3479
+ },
3480
+ "node_modules/@smithy/signature-v4": {
3481
+ "version": "5.3.4",
3482
+ "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.3.4.tgz",
3483
+ "integrity": "sha512-ScDCpasxH7w1HXHYbtk3jcivjvdA1VICyAdgvVqKhKKwxi+MTwZEqFw0minE+oZ7F07oF25xh4FGJxgqgShz0A==",
3484
+ "license": "Apache-2.0",
3485
+ "dependencies": {
3486
+ "@smithy/is-array-buffer": "^4.2.0",
3487
+ "@smithy/protocol-http": "^5.3.4",
3488
+ "@smithy/types": "^4.8.1",
3489
+ "@smithy/util-hex-encoding": "^4.2.0",
3490
+ "@smithy/util-middleware": "^4.2.4",
3491
+ "@smithy/util-uri-escape": "^4.2.0",
3492
+ "@smithy/util-utf8": "^4.2.0",
3493
+ "tslib": "^2.6.2"
3494
+ },
3495
+ "engines": {
3496
+ "node": ">=18.0.0"
3497
+ }
3498
+ },
3499
+ "node_modules/@smithy/smithy-client": {
3500
+ "version": "4.9.2",
3501
+ "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.9.2.tgz",
3502
+ "integrity": "sha512-gZU4uAFcdrSi3io8U99Qs/FvVdRxPvIMToi+MFfsy/DN9UqtknJ1ais+2M9yR8e0ASQpNmFYEKeIKVcMjQg3rg==",
3503
+ "license": "Apache-2.0",
3504
+ "dependencies": {
3505
+ "@smithy/core": "^3.17.2",
3506
+ "@smithy/middleware-endpoint": "^4.3.6",
3507
+ "@smithy/middleware-stack": "^4.2.4",
3508
+ "@smithy/protocol-http": "^5.3.4",
3509
+ "@smithy/types": "^4.8.1",
3510
+ "@smithy/util-stream": "^4.5.5",
3511
+ "tslib": "^2.6.2"
3512
+ },
3513
+ "engines": {
3514
+ "node": ">=18.0.0"
3515
+ }
3516
+ },
3517
+ "node_modules/@smithy/types": {
3518
+ "version": "4.8.1",
3519
+ "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.8.1.tgz",
3520
+ "integrity": "sha512-N0Zn0OT1zc+NA+UVfkYqQzviRh5ucWwO7mBV3TmHHprMnfcJNfhlPicDkBHi0ewbh+y3evR6cNAW0Raxvb01NA==",
3521
+ "license": "Apache-2.0",
3522
+ "dependencies": {
3523
+ "tslib": "^2.6.2"
3524
+ },
3525
+ "engines": {
3526
+ "node": ">=18.0.0"
3527
+ }
3528
  },
3529
+ "node_modules/@smithy/url-parser": {
3530
+ "version": "4.2.4",
3531
+ "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.2.4.tgz",
3532
+ "integrity": "sha512-w/N/Iw0/PTwJ36PDqU9PzAwVElo4qXxCC0eCTlUtIz/Z5V/2j/cViMHi0hPukSBHp4DVwvUlUhLgCzqSJ6plrg==",
3533
+ "license": "Apache-2.0",
3534
+ "dependencies": {
3535
+ "@smithy/querystring-parser": "^4.2.4",
3536
+ "@smithy/types": "^4.8.1",
3537
+ "tslib": "^2.6.2"
3538
+ },
3539
+ "engines": {
3540
+ "node": ">=18.0.0"
3541
+ }
3542
  },
3543
+ "node_modules/@smithy/util-base64": {
3544
+ "version": "4.3.0",
3545
+ "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-4.3.0.tgz",
3546
+ "integrity": "sha512-GkXZ59JfyxsIwNTWFnjmFEI8kZpRNIBfxKjv09+nkAWPt/4aGaEWMM04m4sxgNVWkbt2MdSvE3KF/PfX4nFedQ==",
3547
+ "license": "Apache-2.0",
3548
+ "dependencies": {
3549
+ "@smithy/util-buffer-from": "^4.2.0",
3550
+ "@smithy/util-utf8": "^4.2.0",
3551
+ "tslib": "^2.6.2"
3552
+ },
3553
+ "engines": {
3554
+ "node": ">=18.0.0"
3555
+ }
3556
  },
3557
+ "node_modules/@smithy/util-body-length-browser": {
3558
+ "version": "4.2.0",
3559
+ "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-4.2.0.tgz",
3560
+ "integrity": "sha512-Fkoh/I76szMKJnBXWPdFkQJl2r9SjPt3cMzLdOB6eJ4Pnpas8hVoWPYemX/peO0yrrvldgCUVJqOAjUrOLjbxg==",
3561
+ "license": "Apache-2.0",
3562
+ "dependencies": {
3563
+ "tslib": "^2.6.2"
3564
+ },
3565
+ "engines": {
3566
+ "node": ">=18.0.0"
3567
+ }
 
3568
  },
3569
+ "node_modules/@smithy/util-body-length-node": {
3570
+ "version": "4.2.1",
3571
+ "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-4.2.1.tgz",
3572
+ "integrity": "sha512-h53dz/pISVrVrfxV1iqXlx5pRg3V2YWFcSQyPyXZRrZoZj4R4DeWRDo1a7dd3CPTcFi3kE+98tuNyD2axyZReA==",
3573
+ "license": "Apache-2.0",
3574
+ "dependencies": {
3575
+ "tslib": "^2.6.2"
3576
+ },
3577
+ "engines": {
3578
+ "node": ">=18.0.0"
3579
+ }
 
3580
  },
3581
+ "node_modules/@smithy/util-buffer-from": {
3582
+ "version": "4.2.0",
3583
+ "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-4.2.0.tgz",
3584
+ "integrity": "sha512-kAY9hTKulTNevM2nlRtxAG2FQ3B2OR6QIrPY3zE5LqJy1oxzmgBGsHLWTcNhWXKchgA0WHW+mZkQrng/pgcCew==",
3585
+ "license": "Apache-2.0",
3586
+ "dependencies": {
3587
+ "@smithy/is-array-buffer": "^4.2.0",
3588
+ "tslib": "^2.6.2"
3589
+ },
3590
+ "engines": {
3591
+ "node": ">=18.0.0"
3592
+ }
3593
  },
3594
+ "node_modules/@smithy/util-config-provider": {
3595
+ "version": "4.2.0",
3596
+ "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-4.2.0.tgz",
3597
+ "integrity": "sha512-YEjpl6XJ36FTKmD+kRJJWYvrHeUvm5ykaUS5xK+6oXffQPHeEM4/nXlZPe+Wu0lsgRUcNZiliYNh/y7q9c2y6Q==",
3598
+ "license": "Apache-2.0",
3599
+ "dependencies": {
3600
+ "tslib": "^2.6.2"
3601
+ },
3602
  "engines": {
3603
+ "node": ">=18.0.0"
3604
  }
3605
  },
3606
+ "node_modules/@smithy/util-defaults-mode-browser": {
3607
+ "version": "4.3.5",
3608
+ "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.3.5.tgz",
3609
+ "integrity": "sha512-GwaGjv/QLuL/QHQaqhf/maM7+MnRFQQs7Bsl6FlaeK6lm6U7mV5AAnVabw68cIoMl5FQFyKK62u7RWRzWL25OQ==",
3610
+ "license": "Apache-2.0",
3611
  "dependencies": {
3612
+ "@smithy/property-provider": "^4.2.4",
3613
+ "@smithy/smithy-client": "^4.9.2",
3614
+ "@smithy/types": "^4.8.1",
3615
+ "tslib": "^2.6.2"
3616
  },
3617
  "engines": {
3618
+ "node": ">=18.0.0"
3619
  }
3620
  },
3621
+ "node_modules/@smithy/util-defaults-mode-node": {
3622
+ "version": "4.2.8",
3623
+ "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.2.8.tgz",
3624
+ "integrity": "sha512-gIoTf9V/nFSIZ0TtgDNLd+Ws59AJvijmMDYrOozoMHPJaG9cMRdqNO50jZTlbM6ydzQYY8L/mQ4tKSw/TB+s6g==",
3625
+ "license": "Apache-2.0",
3626
  "dependencies": {
3627
+ "@smithy/config-resolver": "^4.4.2",
3628
+ "@smithy/credential-provider-imds": "^4.2.4",
3629
+ "@smithy/node-config-provider": "^4.3.4",
3630
+ "@smithy/property-provider": "^4.2.4",
3631
+ "@smithy/smithy-client": "^4.9.2",
3632
+ "@smithy/types": "^4.8.1",
3633
+ "tslib": "^2.6.2"
3634
  },
3635
  "engines": {
3636
+ "node": ">=18.0.0"
3637
  }
3638
  },
3639
+ "node_modules/@smithy/util-endpoints": {
3640
+ "version": "3.2.4",
3641
+ "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-3.2.4.tgz",
3642
+ "integrity": "sha512-f+nBDhgYRCmUEDKEQb6q0aCcOTXRDqH5wWaFHJxt4anB4pKHlgGoYP3xtioKXH64e37ANUkzWf6p4Mnv1M5/Vg==",
3643
+ "license": "Apache-2.0",
3644
  "dependencies": {
3645
+ "@smithy/node-config-provider": "^4.3.4",
3646
+ "@smithy/types": "^4.8.1",
3647
+ "tslib": "^2.6.2"
 
 
3648
  },
3649
  "engines": {
3650
+ "node": ">=18.0.0"
3651
  }
3652
  },
3653
+ "node_modules/@smithy/util-hex-encoding": {
3654
+ "version": "4.2.0",
3655
+ "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-4.2.0.tgz",
3656
+ "integrity": "sha512-CCQBwJIvXMLKxVbO88IukazJD9a4kQ9ZN7/UMGBjBcJYvatpWk+9g870El4cB8/EJxfe+k+y0GmR9CAzkF+Nbw==",
3657
+ "license": "Apache-2.0",
3658
+ "dependencies": {
3659
+ "tslib": "^2.6.2"
3660
+ },
3661
  "engines": {
3662
+ "node": ">=18.0.0"
3663
+ }
3664
+ },
3665
+ "node_modules/@smithy/util-middleware": {
3666
+ "version": "4.2.4",
3667
+ "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-4.2.4.tgz",
3668
+ "integrity": "sha512-fKGQAPAn8sgV0plRikRVo6g6aR0KyKvgzNrPuM74RZKy/wWVzx3BMk+ZWEueyN3L5v5EDg+P582mKU+sH5OAsg==",
3669
+ "license": "Apache-2.0",
3670
+ "dependencies": {
3671
+ "@smithy/types": "^4.8.1",
3672
+ "tslib": "^2.6.2"
3673
  },
3674
+ "engines": {
3675
+ "node": ">=18.0.0"
3676
  }
3677
  },
3678
+ "node_modules/@smithy/util-retry": {
3679
+ "version": "4.2.4",
3680
+ "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.2.4.tgz",
3681
+ "integrity": "sha512-yQncJmj4dtv/isTXxRb4AamZHy4QFr4ew8GxS6XLWt7sCIxkPxPzINWd7WLISEFPsIan14zrKgvyAF+/yzfwoA==",
3682
+ "license": "Apache-2.0",
3683
  "dependencies": {
3684
+ "@smithy/service-error-classification": "^4.2.4",
3685
+ "@smithy/types": "^4.8.1",
3686
+ "tslib": "^2.6.2"
3687
  },
3688
  "engines": {
3689
+ "node": ">=18.0.0"
3690
  }
3691
  },
3692
+ "node_modules/@smithy/util-stream": {
3693
+ "version": "4.5.5",
3694
+ "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.5.5.tgz",
3695
+ "integrity": "sha512-7M5aVFjT+HPilPOKbOmQfCIPchZe4DSBc1wf1+NvHvSoFTiFtauZzT+onZvCj70xhXd0AEmYnZYmdJIuwxOo4w==",
3696
+ "license": "Apache-2.0",
3697
  "dependencies": {
3698
+ "@smithy/fetch-http-handler": "^5.3.5",
3699
+ "@smithy/node-http-handler": "^4.4.4",
3700
+ "@smithy/types": "^4.8.1",
3701
+ "@smithy/util-base64": "^4.3.0",
3702
+ "@smithy/util-buffer-from": "^4.2.0",
3703
+ "@smithy/util-hex-encoding": "^4.2.0",
3704
+ "@smithy/util-utf8": "^4.2.0",
3705
+ "tslib": "^2.6.2"
3706
  },
3707
+ "engines": {
3708
+ "node": ">=18.0.0"
3709
+ }
3710
+ },
3711
+ "node_modules/@smithy/util-uri-escape": {
3712
+ "version": "4.2.0",
3713
+ "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-4.2.0.tgz",
3714
+ "integrity": "sha512-igZpCKV9+E/Mzrpq6YacdTQ0qTiLm85gD6N/IrmyDvQFA4UnU3d5g3m8tMT/6zG/vVkWSU+VxeUyGonL62DuxA==",
3715
+ "license": "Apache-2.0",
3716
+ "dependencies": {
3717
+ "tslib": "^2.6.2"
3718
  },
3719
  "engines": {
3720
+ "node": ">=18.0.0"
3721
  }
3722
  },
3723
+ "node_modules/@smithy/util-utf8": {
3724
+ "version": "4.2.0",
3725
+ "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-4.2.0.tgz",
3726
+ "integrity": "sha512-zBPfuzoI8xyBtR2P6WQj63Rz8i3AmfAaJLuNG8dWsfvPe8lO4aCPYLn879mEgHndZH1zQ2oXmG8O1GGzzaoZiw==",
3727
+ "license": "Apache-2.0",
3728
+ "dependencies": {
3729
+ "@smithy/util-buffer-from": "^4.2.0",
3730
+ "tslib": "^2.6.2"
3731
+ },
3732
+ "engines": {
3733
+ "node": ">=18.0.0"
3734
+ }
3735
  },
3736
+ "node_modules/@smithy/uuid": {
3737
+ "version": "1.1.0",
3738
+ "resolved": "https://registry.npmjs.org/@smithy/uuid/-/uuid-1.1.0.tgz",
3739
+ "integrity": "sha512-4aUIteuyxtBUhVdiQqcDhKFitwfd9hqoSDYY2KRXiWtgoWJ9Bmise+KfEPDiVHWeJepvF8xJO9/9+WDIciMFFw==",
3740
+ "license": "Apache-2.0",
3741
+ "dependencies": {
3742
+ "tslib": "^2.6.2"
3743
+ },
3744
+ "engines": {
3745
+ "node": ">=18.0.0"
3746
+ }
3747
  },
3748
  "node_modules/@sveltejs/acorn-typescript": {
3749
  "version": "1.0.5",
 
4763
  "postcss": "^8.1.0"
4764
  }
4765
  },
4766
+ "node_modules/aws4": {
4767
+ "version": "1.13.2",
4768
+ "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.13.2.tgz",
4769
+ "integrity": "sha512-lHe62zvbTB5eEABUVi/AwVh0ZKY9rMMDhmm+eeyuuUQbQ3+J+fONVQOZyj+DdrvD4BY33uYniyRJ4UJIaSKAfw==",
4770
+ "license": "MIT"
4771
+ },
4772
  "node_modules/axobject-query": {
4773
  "version": "4.1.0",
4774
  "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz",
 
4868
  "svelte": "^5.33.0"
4869
  }
4870
  },
4871
+ "node_modules/bowser": {
4872
+ "version": "2.12.1",
4873
+ "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.12.1.tgz",
4874
+ "integrity": "sha512-z4rE2Gxh7tvshQ4hluIT7XcFrgLIQaw9X3A+kTTRdovCz5PMukm/0QC/BKSYPj3omF5Qfypn9O/c5kgpmvYUCw==",
4875
+ "license": "MIT"
4876
+ },
4877
  "node_modules/brace-expansion": {
4878
  "version": "2.0.2",
4879
  "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz",
 
6215
  "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==",
6216
  "license": "MIT"
6217
  },
6218
+ "node_modules/fast-xml-parser": {
6219
+ "version": "5.2.5",
6220
+ "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.2.5.tgz",
6221
+ "integrity": "sha512-pfX9uG9Ki0yekDHx2SiuRIyFdyAr1kMIMitPvb0YBo8SUfKvia7w7FIyd/l6av85pFYRhZscS75MwMnbvY+hcQ==",
6222
+ "funding": [
6223
+ {
6224
+ "type": "github",
6225
+ "url": "https://github.com/sponsors/NaturalIntelligence"
6226
+ }
6227
+ ],
6228
+ "license": "MIT",
6229
+ "dependencies": {
6230
+ "strnum": "^2.1.0"
6231
+ },
6232
+ "bin": {
6233
+ "fxparser": "src/cli/cli.js"
6234
+ }
6235
+ },
6236
  "node_modules/fastq": {
6237
  "version": "1.19.1",
6238
  "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz",
 
10313
  "url": "https://github.com/sponsors/sindresorhus"
10314
  }
10315
  },
10316
+ "node_modules/strnum": {
10317
+ "version": "2.1.1",
10318
+ "resolved": "https://registry.npmjs.org/strnum/-/strnum-2.1.1.tgz",
10319
+ "integrity": "sha512-7ZvoFTiCnGxBtDqJ//Cu6fWtZtc7Y3x+QOirG15wztbdngGSkht27o2pyGWrVy0b4WAy3jbKmnoK6g5VlVNUUw==",
10320
+ "funding": [
10321
+ {
10322
+ "type": "github",
10323
+ "url": "https://github.com/sponsors/NaturalIntelligence"
10324
+ }
10325
+ ],
10326
+ "license": "MIT"
10327
+ },
10328
  "node_modules/strtok3": {
10329
  "version": "10.2.2",
10330
  "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-10.2.2.tgz",
package.json CHANGED
@@ -66,12 +66,14 @@
66
  },
67
  "type": "module",
68
  "dependencies": {
 
69
  "@elysiajs/swagger": "^1.3.0",
70
  "@huggingface/hub": "^2.2.0",
71
  "@huggingface/inference": "^4.11.3",
72
  "@iconify-json/bi": "^1.1.21",
73
  "@resvg/resvg-js": "^2.6.2",
74
  "autoprefixer": "^10.4.14",
 
75
  "bits-ui": "^2.14.2",
76
  "date-fns": "^2.29.3",
77
  "dotenv": "^16.5.0",
 
66
  },
67
  "type": "module",
68
  "dependencies": {
69
+ "@aws-sdk/credential-providers": "^3.925.0",
70
  "@elysiajs/swagger": "^1.3.0",
71
  "@huggingface/hub": "^2.2.0",
72
  "@huggingface/inference": "^4.11.3",
73
  "@iconify-json/bi": "^1.1.21",
74
  "@resvg/resvg-js": "^2.6.2",
75
  "autoprefixer": "^10.4.14",
76
+ "aws4": "^1.13.2",
77
  "bits-ui": "^2.14.2",
78
  "date-fns": "^2.29.3",
79
  "dotenv": "^16.5.0",