libre-webui 0.14.3 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +91 -23
- package/backend/dist/db.d.ts.map +1 -1
- package/backend/dist/db.js +84 -0
- package/backend/dist/db.js.map +1 -1
- package/backend/dist/index.d.ts.map +1 -1
- package/backend/dist/index.js +99 -35
- package/backend/dist/index.js.map +1 -1
- package/backend/dist/middleware/auth.d.ts.map +1 -1
- package/backend/dist/middleware/auth.js +27 -2
- package/backend/dist/middleware/auth.js.map +1 -1
- package/backend/dist/routes/plugins.d.ts.map +1 -1
- package/backend/dist/routes/plugins.js +1 -1
- package/backend/dist/routes/plugins.js.map +1 -1
- package/backend/dist/routes/users.d.ts.map +1 -1
- package/backend/dist/routes/users.js +40 -6
- package/backend/dist/routes/users.js.map +1 -1
- package/backend/dist/routes/work.d.ts +3 -0
- package/backend/dist/routes/work.d.ts.map +1 -0
- package/backend/dist/routes/work.js +604 -0
- package/backend/dist/routes/work.js.map +1 -0
- package/backend/dist/services/ollamaService.d.ts +7 -2
- package/backend/dist/services/ollamaService.d.ts.map +1 -1
- package/backend/dist/services/ollamaService.js +8 -8
- package/backend/dist/services/ollamaService.js.map +1 -1
- package/backend/dist/services/pluginService.d.ts.map +1 -1
- package/backend/dist/services/pluginService.js +8 -9
- package/backend/dist/services/pluginService.js.map +1 -1
- package/backend/dist/services/preferencesService.d.ts.map +1 -1
- package/backend/dist/services/preferencesService.js +1 -0
- package/backend/dist/services/preferencesService.js.map +1 -1
- package/backend/dist/services/workAgentGuidance.d.ts +23 -0
- package/backend/dist/services/workAgentGuidance.d.ts.map +1 -0
- package/backend/dist/services/workAgentGuidance.js +129 -0
- package/backend/dist/services/workAgentGuidance.js.map +1 -0
- package/backend/dist/services/workAgentService.d.ts +33 -0
- package/backend/dist/services/workAgentService.d.ts.map +1 -0
- package/backend/dist/services/workAgentService.js +880 -0
- package/backend/dist/services/workAgentService.js.map +1 -0
- package/backend/dist/services/workEventService.d.ts +40 -0
- package/backend/dist/services/workEventService.d.ts.map +1 -0
- package/backend/dist/services/workEventService.js +324 -0
- package/backend/dist/services/workEventService.js.map +1 -0
- package/backend/dist/services/workModelProviderService.d.ts +49 -0
- package/backend/dist/services/workModelProviderService.d.ts.map +1 -0
- package/backend/dist/services/workModelProviderService.js +916 -0
- package/backend/dist/services/workModelProviderService.js.map +1 -0
- package/backend/dist/services/workRuntimeService.d.ts +143 -0
- package/backend/dist/services/workRuntimeService.d.ts.map +1 -0
- package/backend/dist/services/workRuntimeService.js +1860 -0
- package/backend/dist/services/workRuntimeService.js.map +1 -0
- package/backend/dist/services/workTaskService.d.ts +96 -0
- package/backend/dist/services/workTaskService.d.ts.map +1 -0
- package/backend/dist/services/workTaskService.js +718 -0
- package/backend/dist/services/workTaskService.js.map +1 -0
- package/backend/dist/types/index.d.ts +3 -0
- package/backend/dist/types/index.d.ts.map +1 -1
- package/backend/dist/types/index.js.map +1 -1
- package/backend/dist/types/work.d.ts +209 -0
- package/backend/dist/types/work.d.ts.map +1 -0
- package/backend/dist/types/work.js +18 -0
- package/backend/dist/types/work.js.map +1 -0
- package/backend/dist/utils/pluginChatAdapter.d.ts +9 -0
- package/backend/dist/utils/pluginChatAdapter.d.ts.map +1 -1
- package/backend/dist/utils/pluginChatAdapter.js +32 -6
- package/backend/dist/utils/pluginChatAdapter.js.map +1 -1
- package/backend/dist/utils/pluginStreamAdapter.d.ts +12 -0
- package/backend/dist/utils/pluginStreamAdapter.d.ts.map +1 -1
- package/backend/dist/utils/pluginStreamAdapter.js +168 -19
- package/backend/dist/utils/pluginStreamAdapter.js.map +1 -1
- package/backend/dist/utils/pluginStreaming.d.ts +10 -0
- package/backend/dist/utils/pluginStreaming.d.ts.map +1 -1
- package/backend/dist/utils/pluginStreaming.js.map +1 -1
- package/backend/package.json +1 -1
- package/electron/main.js +39 -16
- package/frontend/dist/assets/index-Bv-twCuY.css +1 -0
- package/frontend/dist/assets/index-uCHBH_PM.js +5 -0
- package/frontend/dist/index.html +5 -4
- package/frontend/dist/js/{ArtifactContainer-CuvIIoHC.js → ArtifactContainer-CXfmVx8T.js} +1 -1
- package/frontend/dist/js/{ArtifactDemoPage-DI0QzAee.js → ArtifactDemoPage-B1_AuMd2.js} +1 -1
- package/frontend/dist/js/ArtifactSlideOutPanel-C0eTguNL.js +1 -0
- package/frontend/dist/js/ChatPage-1bK0gDBy.js +16 -0
- package/frontend/dist/js/FirstTimeSetup-DOoZUaRs.js +1 -0
- package/frontend/dist/js/GalleryPage-6WwyH3kt.js +1 -0
- package/frontend/dist/js/LibreClawPage-ChHVfPLb.js +1 -0
- package/frontend/dist/js/{ModelManagerModals-DfgizeSq.js → ModelManagerModals-DneqFQJC.js} +1 -1
- package/frontend/dist/js/ModelsPage-Dw6wdiMt.js +2 -0
- package/frontend/dist/js/PersonasPage-BxdI2e1-.js +13 -0
- package/frontend/dist/js/RichMessageContent-WQLdJ5jq.js +3 -0
- package/frontend/dist/js/SettingsModal-C-cK6TNb.js +1 -0
- package/frontend/dist/js/UserManagementPage-DqjNXPkf.js +1 -0
- package/frontend/dist/js/WorkPage-MGR3odo6.js +2 -0
- package/frontend/dist/js/api-DD5qhhLf.js +19 -0
- package/frontend/dist/js/{ar-UnnZB1Qy.js → ar-CCVY0-7X.js} +2 -2
- package/frontend/dist/js/babel-BnLuavNv.js +16 -0
- package/frontend/dist/js/{bn-uZXaDyeV.js → bn-CoU5CSph.js} +2 -2
- package/frontend/dist/js/{cs-CCXlnUEB.js → cs-CR6pjIbG.js} +2 -2
- package/frontend/dist/js/{da--BpVVGPp.js → da-CkyYITRz.js} +2 -2
- package/frontend/dist/js/{de-DZd9lsBc.js → de-DwNANzB-.js} +2 -2
- package/frontend/dist/js/{es-Bm968oUX.js → es-TxygiaVQ.js} +2 -2
- package/frontend/dist/js/estree-DPzMpjFm.js +44 -0
- package/frontend/dist/js/{fr-RlC0rD8I.js → fr-DvEqVpZr.js} +2 -2
- package/frontend/dist/js/{hi-C6kwkL7d.js → hi-CyrWkyh7.js} +2 -2
- package/frontend/dist/js/html-R50jmBYq.js +25 -0
- package/frontend/dist/js/{id-CDfqnnXS.js → id-PJjIGHGM.js} +2 -2
- package/frontend/dist/js/{is-Dnd_7Jqv.js → is-ChXcN1tI.js} +2 -2
- package/frontend/dist/js/{it-BM0j6_Sz.js → it-DsgM8-MJ.js} +2 -2
- package/frontend/dist/js/{ja-xGblKDDf.js → ja-ivtt80N2.js} +2 -2
- package/frontend/dist/js/{ko-CQ2d_Oj0.js → ko-B8l_Ice1.js} +2 -2
- package/frontend/dist/js/markdown-C08x2H-K.js +70 -0
- package/frontend/dist/js/{ms-CFpRuv_a.js → ms-DoUBI6Qi.js} +2 -2
- package/frontend/dist/js/{nl-D6oTztmP.js → nl-DsX5Hj8m.js} +2 -2
- package/frontend/dist/js/{pl-ByuvABul.js → pl-Db_NKL4x.js} +2 -2
- package/frontend/dist/js/postcss-DSDkwgFE.js +62 -0
- package/frontend/dist/js/{pt-CNFV21T7.js → pt-CpzBhb5J.js} +2 -2
- package/frontend/dist/js/router-vendor-BjDI9mRe.js +1 -0
- package/frontend/dist/js/{ru-CRsSOntz.js → ru-DCXvJyXJ.js} +2 -2
- package/frontend/dist/js/standalone-DpMZUvjd.js +29 -0
- package/frontend/dist/js/{sv-BRkwjyS5.js → sv-DcVoybc7.js} +2 -2
- package/frontend/dist/js/{th-DigqsQEB.js → th-D0G7HyQn.js} +2 -2
- package/frontend/dist/js/{tr-B5aMUMJE.js → tr-CMDOh4Aq.js} +2 -2
- package/frontend/dist/js/typescript-B6y_hxBm.js +22 -0
- package/frontend/dist/js/ui-vendor-DUqvZsfs.js +177 -0
- package/frontend/dist/js/{uk-BUYi3llT.js → uk-D2MMa6LP.js} +2 -2
- package/frontend/dist/js/useBaseQuery-Duml3DYp.js +1 -0
- package/frontend/dist/js/useQuery-C0lZwNoc.js +1 -0
- package/frontend/dist/js/{vi-hQIcXi3m.js → vi-B8uHT8yh.js} +2 -2
- package/frontend/dist/js/yaml-mLy9chOK.js +154 -0
- package/frontend/dist/js/{zh-CUDZ3JDv.js → zh-CNqa_15K.js} +2 -2
- package/package.json +3 -2
- package/plugins/kimi-code.json +6 -37
- package/frontend/dist/assets/index-BKzwVaAM.js +0 -16
- package/frontend/dist/assets/index-BPvF-fpc.css +0 -1
- package/frontend/dist/js/ArtifactSlideOutPanel-BzBemzHy.js +0 -1
- package/frontend/dist/js/ChatPage-DqpXctC2.js +0 -16
- package/frontend/dist/js/FirstTimeSetup-DRWeCsVI.js +0 -1
- package/frontend/dist/js/GalleryPage-CgD8fVx0.js +0 -1
- package/frontend/dist/js/LibreClawPage-B_Yon2fQ.js +0 -1
- package/frontend/dist/js/ModelsPage-CAKQ7J-b.js +0 -2
- package/frontend/dist/js/PersonasPage-Dj6Bka4I.js +0 -13
- package/frontend/dist/js/RichMessageContent-DP7XoxIa.js +0 -3
- package/frontend/dist/js/SettingsModal-BFyYhZYE.js +0 -1
- package/frontend/dist/js/UserManagementPage-CGMnhZr1.js +0 -1
- package/frontend/dist/js/router-vendor-Bbvzv1ZC.js +0 -1
- package/frontend/dist/js/ui-vendor-CurEAeCe.js +0 -177
- package/frontend/dist/js/useBaseQuery-B1on3xcz.js +0 -1
- package/frontend/dist/js/useQuery-CXvo2RBT.js +0 -1
package/README.md
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
### Your AI stack should answer to you.
|
|
8
8
|
|
|
9
|
-
**A local-first workspace for
|
|
9
|
+
**A local-first workspace for chat, private knowledge, artifacts, and isolated model-driven work.**<br>
|
|
10
10
|
Self-hosted. Provider-flexible. Apache 2.0.
|
|
11
11
|
|
|
12
12
|
**Run local. Bring the providers you choose. Keep control of the interface around them.**
|
|
@@ -18,7 +18,7 @@ Self-hosted. Provider-flexible. Apache 2.0.
|
|
|
18
18
|
<a href="https://www.npmjs.com/package/libre-webui"><img src="https://img.shields.io/npm/v/libre-webui?style=flat-square&label=npm&color=cb3837" alt="npm version"></a>
|
|
19
19
|
<a href="https://github.com/libre-webui/libre-webui/blob/main/LICENSE"><img src="https://img.shields.io/badge/license-Apache--2.0-15803d?style=flat-square" alt="Apache 2.0 License"></a>
|
|
20
20
|
<a href="https://github.com/libre-webui/libre-webui/actions/workflows/format.yml"><img src="https://img.shields.io/github/actions/workflow/status/libre-webui/libre-webui/format.yml?branch=main&style=flat-square&label=main%20checks" alt="Main branch checks"></a>
|
|
21
|
-
<a href="https://github.com/libre-webui/libre-webui"><img src="https://img.shields.io/github/stars/libre-webui/libre-webui?style=flat-square&label=stars&color=
|
|
21
|
+
<a href="https://github.com/libre-webui/libre-webui"><img src="https://img.shields.io/github/stars/libre-webui/libre-webui?style=flat-square&label=stars&color=ff7b52" alt="GitHub stars"></a>
|
|
22
22
|
</p>
|
|
23
23
|
|
|
24
24
|
<p>
|
|
@@ -73,19 +73,25 @@ ollama pull gemma3:4b
|
|
|
73
73
|
|
|
74
74
|
That is enough to start. Cloud accounts are not required. When you do want a remote model, add only the provider you choose.
|
|
75
75
|
|
|
76
|
+
Chat works without Docker. The new **Work** mode additionally needs Docker on
|
|
77
|
+
the machine running the Libre WebUI backend. If Docker is missing, Libre WebUI
|
|
78
|
+
still starts normally and Work shows a clear **Runtime unavailable** state
|
|
79
|
+
instead of running commands on the host.
|
|
80
|
+
|
|
76
81
|
## One workspace. Your choices.
|
|
77
82
|
|
|
78
83
|
Libre WebUI turns a model endpoint into a complete working environment without taking ownership of the stack around it.
|
|
79
84
|
|
|
80
|
-
|
|
|
81
|
-
|
|
|
82
|
-
| **Talk to the model you want**
|
|
83
|
-
| **
|
|
84
|
-
| **
|
|
85
|
-
| **
|
|
86
|
-
| **
|
|
87
|
-
| **
|
|
88
|
-
| **
|
|
85
|
+
| | What you can do |
|
|
86
|
+
| ------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
87
|
+
| **Talk to the model you want** | Stream conversations through local Ollama, Ollama Cloud, bundled providers, or compatible endpoints. Discover and manage models from the UI. |
|
|
88
|
+
| **Give every task a workspace** | Let a tool-capable model inspect files, edit code, run commands, and preview an app in a persistent, task-scoped Docker workspace. |
|
|
89
|
+
| **Bring your own context** | Chat with PDF and plain-text documents using keyword retrieval or optional semantic embeddings. |
|
|
90
|
+
| **Turn answers into artifacts** | Preview sandboxed HTML, SVG, JSON, code, and multi-file artifacts beside a normal chat. |
|
|
91
|
+
| **Create with more than text** | Generate images, use provider-backed speech, and build reusable personas with prompts, parameters, and memory. |
|
|
92
|
+
| **Make the interface yours** | Keep light or dark mode across refreshes, apply an adaptive accent theme, and work in 25 languages/locales including Arabic RTL. |
|
|
93
|
+
| **Operate it your way** | Use local accounts, roles, optional OAuth, Docker, Kubernetes, npm, or the Electron desktop client. |
|
|
94
|
+
| **Extend without lock-in** | Configure chat, embeddings, image generation, and text-to-speech providers through the plugin layer. |
|
|
89
95
|
|
|
90
96
|
## Local-first is a real boundary
|
|
91
97
|
|
|
@@ -109,10 +115,65 @@ Credentials can come from deployment-wide environment variables or encrypted, us
|
|
|
109
115
|
|
|
110
116
|
[Explore the plugin system →](https://docs.librewebui.org/PLUGIN_ARCHITECTURE)
|
|
111
117
|
|
|
112
|
-
##
|
|
118
|
+
## Work: one persistent environment per task
|
|
119
|
+
|
|
120
|
+
Work is Libre WebUI's built-in coding-agent surface. Choose **Work** beside
|
|
121
|
+
**Chat**, select a tool-capable model, and describe what you want to build or
|
|
122
|
+
change. Each task keeps its own conversation, exact provider route, files, tool
|
|
123
|
+
activity, and preview state.
|
|
124
|
+
|
|
125
|
+
```text
|
|
126
|
+
Work task
|
|
127
|
+
├── durable conversation and run history in SQLite
|
|
128
|
+
├── dedicated Docker named volume mounted at /workspace
|
|
129
|
+
├── disposable, policy-checked container for commands
|
|
130
|
+
└── Files · Activity · Preview workspace pane
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
The model can list, read, write, and search task files, run bounded shell
|
|
134
|
+
commands, and start or stop a browser preview. The workspace includes a
|
|
135
|
+
light/dark syntax-highlighted editor, supported-file formatting, browser drafts,
|
|
136
|
+
conflict-aware saves, and a draggable responsive split between conversation and
|
|
137
|
+
workspace. Tasks remain in the main sidebar so returning to an older task also
|
|
138
|
+
returns to its existing files and history.
|
|
139
|
+
|
|
140
|
+
Active runs stream assistant text, provider-exposed reasoning, tool calls,
|
|
141
|
+
results, usage, and state changes into the interface. Reasoning appears only
|
|
142
|
+
when the selected provider returns it; Libre WebUI cannot reveal a model's
|
|
143
|
+
hidden chain-of-thought. Server-owned worker skills teach the model the
|
|
144
|
+
workspace boundary, efficient project discovery, safe editing, verification,
|
|
145
|
+
and preview lifecycle without adding control files to the project.
|
|
146
|
+
|
|
147
|
+
Work can use installed Ollama models, Ollama Cloud models, or configured
|
|
148
|
+
completion/chat plugins through OpenAI-compatible, Anthropic, and Gemini tool
|
|
149
|
+
adapters. Tool support is required. Selecting a remote route shows a dismissible
|
|
150
|
+
per-user disclosure because an autonomous run may make multiple paid provider
|
|
151
|
+
calls and may send conversation context and requested tool results—including
|
|
152
|
+
file contents—to that service.
|
|
153
|
+
|
|
154
|
+
The same configurable round budget applies to every provider route (48 by
|
|
155
|
+
default). If it is exhausted, Work requests a final no-tools progress handoff
|
|
156
|
+
and ends in the yellow **Needs input** state instead of reporting a false
|
|
157
|
+
success or a raw provider-specific round-limit error. A follow-up run continues
|
|
158
|
+
in the same durable workspace.
|
|
159
|
+
|
|
160
|
+
Work is admin-only and never falls back to host command execution. Containers
|
|
161
|
+
run as a non-root user with a read-only root filesystem, dropped capabilities,
|
|
162
|
+
resource limits, and only the task volume mounted. Containers are still not
|
|
163
|
+
virtual machines, current Work tasks have Docker bridge egress, and task volumes
|
|
164
|
+
need their own backup and storage policy.
|
|
165
|
+
|
|
166
|
+
[Read the Work workspace guide →](https://docs.librewebui.org/WORKSPACES)
|
|
167
|
+
|
|
168
|
+
## Optional broader agents, with the runtime kept separate
|
|
113
169
|
|
|
114
170
|
[Libre Claw](https://github.com/kroonen-ai/libre-claw) is an optional, admin-controlled local agent runtime. Libre WebUI provides the authenticated control surface for durable runs, timelines, approvals, schedules, usage, and configuration; Libre Claw owns the tools, memory, permission model, and execution.
|
|
115
171
|
|
|
172
|
+
Libre Claw is separate from Work. Work is native to Libre WebUI and focused on
|
|
173
|
+
one isolated project workspace; Libre Claw is the optional daemon for broader
|
|
174
|
+
file, shell, git, browser, HTTP, web-search, MCP, memory, approval, and
|
|
175
|
+
automation workflows.
|
|
176
|
+
|
|
116
177
|
```text
|
|
117
178
|
Browser or desktop client
|
|
118
179
|
│
|
|
@@ -125,6 +186,7 @@ Browser or desktop client
|
|
|
125
186
|
│
|
|
126
187
|
├────────► Ollama (local models)
|
|
127
188
|
├────────► selected provider plugins
|
|
189
|
+
├────────► Docker (native Work task containers)
|
|
128
190
|
└────────► Libre Claw (optional agent runtime)
|
|
129
191
|
```
|
|
130
192
|
|
|
@@ -134,19 +196,25 @@ The WebUI backend does not execute Libre Claw's shell or browser tools itself. I
|
|
|
134
196
|
|
|
135
197
|
## Deploy on your terms
|
|
136
198
|
|
|
137
|
-
| Path | Command or link | Best for
|
|
138
|
-
| ------------------- | ----------------------------------------------------------------------- |
|
|
139
|
-
| **npm** | `npx libre-webui` |
|
|
140
|
-
| **Docker + Ollama** | `docker compose up -d` | Persistent
|
|
141
|
-
| **External Ollama** | `docker compose -f docker-compose.external-ollama.yml up -d` |
|
|
142
|
-
| **NVIDIA Docker** | `docker compose -f docker-compose.gpu.yml up -d` | Local GPU inference
|
|
143
|
-
| **Kubernetes** | `helm install libre-webui oci://ghcr.io/libre-webui/charts/libre-webui` | Cluster
|
|
144
|
-
| **Desktop client** | [GitHub Releases](https://github.com/libre-webui/libre-webui/releases) | Electron
|
|
145
|
-
| **Source** | `npm install && npm run dev` | Development
|
|
199
|
+
| Path | Command or link | Best for |
|
|
200
|
+
| ------------------- | ----------------------------------------------------------------------- | --------------------------------------------------------------------- |
|
|
201
|
+
| **npm** | `npx libre-webui` | Fast local start; Work is available when local Docker is installed |
|
|
202
|
+
| **Docker + Ollama** | `docker compose up -d` | Persistent chat stack; Work is unavailable in the standard image |
|
|
203
|
+
| **External Ollama** | `docker compose -f docker-compose.external-ollama.yml up -d` | Existing Ollama; same standard-container Work limitation |
|
|
204
|
+
| **NVIDIA Docker** | `docker compose -f docker-compose.gpu.yml up -d` | Local GPU inference; same standard-container Work limitation |
|
|
205
|
+
| **Kubernetes** | `helm install libre-webui oci://ghcr.io/libre-webui/charts/libre-webui` | Cluster deployment; the current chart has no Work runtime driver |
|
|
206
|
+
| **Desktop client** | [GitHub Releases](https://github.com/libre-webui/libre-webui/releases) | Electron UI; Work runs wherever its separately managed backend runs |
|
|
207
|
+
| **Source** | `npm install && npm run dev` | Development; Work uses Docker available to the native backend process |
|
|
146
208
|
|
|
147
209
|
Docker commands assume you have cloned this repository. Production deployments should set stable `JWT_SECRET` and `ENCRYPTION_KEY` values, persist the data directory, back up the database and key together, and terminate public traffic with HTTPS.
|
|
148
210
|
|
|
149
|
-
|
|
211
|
+
The standard Libre WebUI container deliberately does not include the Docker CLI
|
|
212
|
+
or mount the host Docker socket, so it reports Work as unavailable. Mounting
|
|
213
|
+
`/var/run/docker.sock` into a web application grants root-equivalent control of
|
|
214
|
+
the Docker host and is not enabled or recommended as a casual workaround. See
|
|
215
|
+
the Work guide before designing a separate runtime integration.
|
|
216
|
+
|
|
217
|
+
[Work](https://docs.librewebui.org/WORKSPACES) · [Docker](https://docs.librewebui.org/DOCKER) · [Kubernetes](https://docs.librewebui.org/KUBERNETES) · [Environment variables](https://docs.librewebui.org/ENVIRONMENT_VARIABLES) · [Hardware guide](https://docs.librewebui.org/HARDWARE_REQUIREMENTS)
|
|
150
218
|
|
|
151
219
|
## Built from experience, for independence
|
|
152
220
|
|
|
@@ -196,7 +264,7 @@ For enterprise work, contact **enterprise@kroonen.ai**. To support independent d
|
|
|
196
264
|
|
|
197
265
|
Stars help independent software get discovered without buying attention.
|
|
198
266
|
|
|
199
|
-
<a href="https://github.com/libre-webui/libre-webui"><img src="https://img.shields.io/github/stars/libre-webui/libre-webui?style=for-the-badge&label=Star%20Libre%20WebUI&color=
|
|
267
|
+
<a href="https://github.com/libre-webui/libre-webui"><img src="https://img.shields.io/github/stars/libre-webui/libre-webui?style=for-the-badge&label=Star%20Libre%20WebUI&color=ff7b52" alt="Star Libre WebUI on GitHub"></a>
|
|
200
268
|
|
|
201
269
|
<br><br>
|
|
202
270
|
|
package/backend/dist/db.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"AAiBA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AA0BtC;;GAEG;AACH,wBAAgB,WAAW,IAAI,QAAQ,CAAC,QAAQ,CA0D/C;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAO1D;
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"AAiBA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AA0BtC;;GAEG;AACH,wBAAgB,WAAW,IAAI,QAAQ,CAAC,QAAQ,CA0D/C;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAO1D;AAqcD;;GAEG;AACH,wBAAgB,aAAa,IAAI,IAAI,CAMpC;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,CAa/C;AAGD,eAAe,WAAW,CAAC"}
|
package/backend/dist/db.js
CHANGED
|
@@ -272,6 +272,66 @@ function initializeTables() {
|
|
|
272
272
|
created_at INTEGER NOT NULL,
|
|
273
273
|
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE
|
|
274
274
|
)
|
|
275
|
+
`);
|
|
276
|
+
// Native Work tasks. Workspace files live in a task-owned Docker volume;
|
|
277
|
+
// SQLite stores ownership, conversation history, and durable run state.
|
|
278
|
+
db.exec(`
|
|
279
|
+
CREATE TABLE IF NOT EXISTS work_tasks (
|
|
280
|
+
id TEXT PRIMARY KEY,
|
|
281
|
+
user_id TEXT NOT NULL,
|
|
282
|
+
title TEXT NOT NULL,
|
|
283
|
+
model TEXT NOT NULL,
|
|
284
|
+
provider_type TEXT NOT NULL DEFAULT 'ollama',
|
|
285
|
+
provider_id TEXT,
|
|
286
|
+
status TEXT NOT NULL DEFAULT 'idle',
|
|
287
|
+
network_enabled INTEGER NOT NULL DEFAULT 1,
|
|
288
|
+
volume_name TEXT NOT NULL UNIQUE,
|
|
289
|
+
container_name TEXT NOT NULL UNIQUE,
|
|
290
|
+
preview_url TEXT,
|
|
291
|
+
preview_status TEXT NOT NULL DEFAULT 'stopped',
|
|
292
|
+
created_at INTEGER NOT NULL,
|
|
293
|
+
updated_at INTEGER NOT NULL,
|
|
294
|
+
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE
|
|
295
|
+
);
|
|
296
|
+
|
|
297
|
+
CREATE TABLE IF NOT EXISTS work_runs (
|
|
298
|
+
id TEXT PRIMARY KEY,
|
|
299
|
+
task_id TEXT NOT NULL,
|
|
300
|
+
model TEXT NOT NULL,
|
|
301
|
+
provider_type TEXT NOT NULL DEFAULT 'ollama',
|
|
302
|
+
provider_id TEXT,
|
|
303
|
+
status TEXT NOT NULL DEFAULT 'queued',
|
|
304
|
+
error TEXT,
|
|
305
|
+
created_at INTEGER NOT NULL,
|
|
306
|
+
started_at INTEGER,
|
|
307
|
+
finished_at INTEGER,
|
|
308
|
+
FOREIGN KEY (task_id) REFERENCES work_tasks(id) ON DELETE CASCADE
|
|
309
|
+
);
|
|
310
|
+
|
|
311
|
+
CREATE TABLE IF NOT EXISTS work_messages (
|
|
312
|
+
id TEXT PRIMARY KEY,
|
|
313
|
+
task_id TEXT NOT NULL,
|
|
314
|
+
run_id TEXT,
|
|
315
|
+
role TEXT NOT NULL,
|
|
316
|
+
kind TEXT NOT NULL,
|
|
317
|
+
content TEXT NOT NULL,
|
|
318
|
+
metadata TEXT,
|
|
319
|
+
message_index INTEGER NOT NULL,
|
|
320
|
+
created_at INTEGER NOT NULL,
|
|
321
|
+
FOREIGN KEY (task_id) REFERENCES work_tasks(id) ON DELETE CASCADE,
|
|
322
|
+
FOREIGN KEY (run_id) REFERENCES work_runs(id) ON DELETE SET NULL,
|
|
323
|
+
UNIQUE(task_id, message_index)
|
|
324
|
+
);
|
|
325
|
+
|
|
326
|
+
CREATE INDEX IF NOT EXISTS idx_work_tasks_user_updated
|
|
327
|
+
ON work_tasks(user_id, updated_at DESC);
|
|
328
|
+
CREATE INDEX IF NOT EXISTS idx_work_runs_task_created
|
|
329
|
+
ON work_runs(task_id, created_at DESC);
|
|
330
|
+
CREATE UNIQUE INDEX IF NOT EXISTS idx_work_runs_one_active
|
|
331
|
+
ON work_runs(task_id)
|
|
332
|
+
WHERE status IN ('queued', 'preparing', 'running');
|
|
333
|
+
CREATE INDEX IF NOT EXISTS idx_work_messages_task_index
|
|
334
|
+
ON work_messages(task_id, message_index);
|
|
275
335
|
`);
|
|
276
336
|
// Create indexes for better performance
|
|
277
337
|
db.exec(`
|
|
@@ -383,6 +443,30 @@ function runMigrations() {
|
|
|
383
443
|
db.exec(`ALTER TABLE personas ADD COLUMN ${column.name} ${column.type}`);
|
|
384
444
|
}
|
|
385
445
|
}
|
|
446
|
+
// Work initially stored only a model name. Preserve those existing tasks as
|
|
447
|
+
// explicit Ollama routes so a newly activated plugin with the same model
|
|
448
|
+
// name can never silently redirect their prompts to a remote provider.
|
|
449
|
+
for (const table of ['work_tasks', 'work_runs']) {
|
|
450
|
+
const tableInfo = db
|
|
451
|
+
.prepare(`PRAGMA table_info(${table})`)
|
|
452
|
+
.all();
|
|
453
|
+
const columns = tableInfo.map(column => column.name);
|
|
454
|
+
if (!columns.includes('provider_type')) {
|
|
455
|
+
db.exec(`ALTER TABLE ${table} ADD COLUMN provider_type TEXT NOT NULL DEFAULT 'ollama'`);
|
|
456
|
+
}
|
|
457
|
+
if (!columns.includes('provider_id')) {
|
|
458
|
+
db.exec(`ALTER TABLE ${table} ADD COLUMN provider_id TEXT`);
|
|
459
|
+
}
|
|
460
|
+
db.prepare(`UPDATE ${table}
|
|
461
|
+
SET provider_type = 'ollama', provider_id = NULL
|
|
462
|
+
WHERE provider_type IS NULL
|
|
463
|
+
OR provider_type NOT IN ('ollama', 'plugin')
|
|
464
|
+
OR (provider_type = 'ollama' AND provider_id IS NOT NULL)`).run();
|
|
465
|
+
}
|
|
466
|
+
// Work networking is now an implementation detail instead of a task-level
|
|
467
|
+
// switch. Existing workspaces must stay preview-capable after the control
|
|
468
|
+
// is removed from the UI.
|
|
469
|
+
db.prepare('UPDATE work_tasks SET network_enabled = 1 WHERE network_enabled != 1').run();
|
|
386
470
|
}
|
|
387
471
|
catch (error) {
|
|
388
472
|
logger.error('Error running migrations:', error);
|
package/backend/dist/db.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAkBA,OAAO,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAkBA,OAAO,UAAU,CAAC;AA0DlB,QAAA,MAAM,GAAG,6CAAY,CAAC;AA+gBtB,eAAe,GAAG,CAAC"}
|
package/backend/dist/index.js
CHANGED
|
@@ -33,7 +33,7 @@ import './env.js';
|
|
|
33
33
|
* limitations under the License.
|
|
34
34
|
*/
|
|
35
35
|
import express from 'express';
|
|
36
|
-
import rateLimit from 'express-rate-limit';
|
|
36
|
+
import rateLimit, { ipKeyGenerator } from 'express-rate-limit';
|
|
37
37
|
import cors from 'cors';
|
|
38
38
|
import helmet from 'helmet';
|
|
39
39
|
import morgan from 'morgan';
|
|
@@ -53,7 +53,11 @@ import imageGenRoutes from './routes/imageGen.js';
|
|
|
53
53
|
import embeddingsRoutes from './routes/embeddings.js';
|
|
54
54
|
import huggingfaceHubRoutes from './routes/huggingfaceHub.js';
|
|
55
55
|
import libreClawRoutes from './routes/libreClaw.js';
|
|
56
|
+
import workRoutes from './routes/work.js';
|
|
56
57
|
import ollamaService from './services/ollamaService.js';
|
|
58
|
+
import workRuntimeService from './services/workRuntimeService.js';
|
|
59
|
+
import workTaskService from './services/workTaskService.js';
|
|
60
|
+
import workAgentService from './services/workAgentService.js';
|
|
57
61
|
import { GitHubOAuthService } from './services/simpleGitHubOAuth.js';
|
|
58
62
|
import { HuggingFaceOAuthService } from './services/simpleHuggingFaceOAuth.js';
|
|
59
63
|
import { loadAppPackage, resolveFrontendDist } from './utils/packagePaths.js';
|
|
@@ -62,6 +66,19 @@ import { createLogger } from './utils/logger.js';
|
|
|
62
66
|
const pkg = loadAppPackage(import.meta.url);
|
|
63
67
|
const app = express();
|
|
64
68
|
const logger = createLogger('server');
|
|
69
|
+
// Containers are execution state, while each task's named volume is durable.
|
|
70
|
+
// Stop all known Work containers on backend startup so an interrupted command
|
|
71
|
+
// or loopback preview cannot continue running without a supervising process.
|
|
72
|
+
const workRecovery = workTaskService.recoverOnStartup();
|
|
73
|
+
if (workRecovery.tasks.length > 0) {
|
|
74
|
+
const cleanup = await workRuntimeService.beginRecovery(workRecovery.tasks);
|
|
75
|
+
if (cleanup.failed > 0) {
|
|
76
|
+
logger.warn(`Work is fail-closed while ${cleanup.failed} startup container cleanup(s) are retried.`);
|
|
77
|
+
}
|
|
78
|
+
if (workRecovery.interruptedRuns > 0 || workRecovery.activePreviews > 0) {
|
|
79
|
+
logger.info(`Recovered ${workRecovery.interruptedRuns} interrupted Work run(s) and ${workRecovery.activePreviews} preview(s).`);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
65
82
|
// Trust proxy setting for running behind reverse proxies (Nginx, Caddy, etc.)
|
|
66
83
|
// Set TRUST_PROXY=1 or TRUST_PROXY=loopback or TRUST_PROXY=uniquelocal etc.
|
|
67
84
|
const trustProxy = process.env.TRUST_PROXY;
|
|
@@ -79,8 +96,6 @@ if (trustProxy) {
|
|
|
79
96
|
}
|
|
80
97
|
const isProduction = process.env.NODE_ENV === 'production';
|
|
81
98
|
const port = process.env.PORT || (isProduction ? 8080 : 3001);
|
|
82
|
-
const hasTurnstile = Boolean(process.env.TURNSTILE_SITE_KEY?.trim()) &&
|
|
83
|
-
Boolean(process.env.TURNSTILE_SECRET_KEY?.trim());
|
|
84
99
|
const corsOrigins = process.env.CORS_ORIGIN?.split(',') || [
|
|
85
100
|
'http://localhost:5173',
|
|
86
101
|
'http://localhost:3000',
|
|
@@ -119,12 +134,9 @@ const corsConfig = {
|
|
|
119
134
|
};
|
|
120
135
|
// Security middleware
|
|
121
136
|
app.use(helmet({
|
|
122
|
-
//
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
!hasTurnstile
|
|
126
|
-
? true
|
|
127
|
-
: false,
|
|
137
|
+
// Work previews are generated by arbitrary local dev servers, which do
|
|
138
|
+
// not normally emit CORP. Their iframe is still constrained to loopback.
|
|
139
|
+
crossOriginEmbedderPolicy: false,
|
|
128
140
|
// Content Security Policy - Docker-aware configuration
|
|
129
141
|
contentSecurityPolicy: {
|
|
130
142
|
directives: {
|
|
@@ -165,12 +177,17 @@ app.use(helmet({
|
|
|
165
177
|
fontSrc: ["'self'", 'data:', 'https://fonts.gstatic.com'],
|
|
166
178
|
mediaSrc: ["'self'", 'data:', 'blob:'],
|
|
167
179
|
objectSrc: ["'none'"],
|
|
168
|
-
frameSrc: [
|
|
180
|
+
frameSrc: [
|
|
181
|
+
"'self'",
|
|
182
|
+
'https://challenges.cloudflare.com',
|
|
183
|
+
'http://127.0.0.1:*',
|
|
184
|
+
'http://localhost:*',
|
|
185
|
+
],
|
|
169
186
|
frameAncestors: ["'self'"],
|
|
170
187
|
formAction: ["'self'"],
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
188
|
+
// npx desktop mode is production but previews are loopback HTTP.
|
|
189
|
+
// Upgrading them to HTTPS would make every generated preview fail.
|
|
190
|
+
upgradeInsecureRequests: null,
|
|
174
191
|
baseUri: ["'self'"],
|
|
175
192
|
manifestSrc: ["'self'"],
|
|
176
193
|
workerSrc: ["'self'", 'blob:'],
|
|
@@ -240,19 +257,6 @@ const preferencesRateLimiter = rateLimit({
|
|
|
240
257
|
standardHeaders: true,
|
|
241
258
|
legacyHeaders: false,
|
|
242
259
|
});
|
|
243
|
-
// Rate limiter for the /api/plugins route. This must run before optionalAuth so
|
|
244
|
-
// unauthenticated requests cannot exhaust authentication, filesystem, or
|
|
245
|
-
// credential-store work before reaching the route-specific write limits.
|
|
246
|
-
const pluginsRateLimiter = rateLimit({
|
|
247
|
-
windowMs: 15 * 60 * 1000, // 15 minutes
|
|
248
|
-
max: 200, // allow normal settings traffic while bounding plugin enumeration
|
|
249
|
-
message: {
|
|
250
|
-
success: false,
|
|
251
|
-
error: 'Too many plugin requests from this IP, please try again later.',
|
|
252
|
-
},
|
|
253
|
-
standardHeaders: true,
|
|
254
|
-
legacyHeaders: false,
|
|
255
|
-
});
|
|
256
260
|
// Rate limiter for the /api/ollama route
|
|
257
261
|
const ollamaRateLimiter = rateLimit({
|
|
258
262
|
windowMs: 15 * 60 * 1000, // 15 minutes
|
|
@@ -341,13 +345,57 @@ const libreClawRateLimiter = rateLimit({
|
|
|
341
345
|
standardHeaders: true,
|
|
342
346
|
legacyHeaders: false,
|
|
343
347
|
});
|
|
348
|
+
// Rate limiter for isolated Work task APIs
|
|
349
|
+
const workRateLimiter = rateLimit({
|
|
350
|
+
windowMs: 15 * 60 * 1000, // 15 minutes
|
|
351
|
+
// The active pane currently polls both the task list and selected task once
|
|
352
|
+
// per second; keep useful abuse protection without throttling normal runs.
|
|
353
|
+
max: 3000,
|
|
354
|
+
message: {
|
|
355
|
+
success: false,
|
|
356
|
+
error: 'Too many Work requests from this IP, please try again later.',
|
|
357
|
+
},
|
|
358
|
+
standardHeaders: true,
|
|
359
|
+
legacyHeaders: false,
|
|
360
|
+
});
|
|
361
|
+
// Bound authentication work before parsing bearer tokens without accumulating
|
|
362
|
+
// successful requests into one long-lived shared-proxy quota.
|
|
363
|
+
const pluginAuthBurstRateLimiter = rateLimit({
|
|
364
|
+
windowMs: 60 * 1000,
|
|
365
|
+
max: 100,
|
|
366
|
+
skipSuccessfulRequests: true,
|
|
367
|
+
message: {
|
|
368
|
+
success: false,
|
|
369
|
+
error: 'Too many concurrent plugin requests, please try again later.',
|
|
370
|
+
},
|
|
371
|
+
standardHeaders: false,
|
|
372
|
+
legacyHeaders: false,
|
|
373
|
+
});
|
|
374
|
+
// Authenticated users receive independent discovery quotas. Guests fall back
|
|
375
|
+
// to a normalized IP key, while writes retain stricter route-specific limits.
|
|
376
|
+
const pluginRouteRateLimiter = rateLimit({
|
|
377
|
+
windowMs: 15 * 60 * 1000, // 15 minutes
|
|
378
|
+
max: 1000,
|
|
379
|
+
keyGenerator: req => {
|
|
380
|
+
const userId = req.user?.userId;
|
|
381
|
+
return userId
|
|
382
|
+
? `user:${userId}`
|
|
383
|
+
: `ip:${ipKeyGenerator(req.ip ?? 'unknown')}`;
|
|
384
|
+
},
|
|
385
|
+
message: {
|
|
386
|
+
success: false,
|
|
387
|
+
error: 'Too many plugin requests, please try again later.',
|
|
388
|
+
},
|
|
389
|
+
standardHeaders: true,
|
|
390
|
+
legacyHeaders: false,
|
|
391
|
+
});
|
|
344
392
|
// API routes
|
|
345
393
|
app.use('/api/auth', authRateLimiter, optionalAuth, authRoutes);
|
|
346
394
|
app.use('/api/users', usersRateLimiter, optionalAuth, usersRoutes);
|
|
347
395
|
app.use('/api/ollama', ollamaRateLimiter, ollamaRoutes);
|
|
348
396
|
app.use('/api/chat', chatRateLimiter, optionalAuth, chatRoutes);
|
|
349
397
|
app.use('/api/preferences', preferencesRateLimiter, optionalAuth, preferencesRoutes);
|
|
350
|
-
app.use('/api/plugins',
|
|
398
|
+
app.use('/api/plugins', pluginAuthBurstRateLimiter, optionalAuth, pluginRouteRateLimiter, pluginRoutes);
|
|
351
399
|
app.use('/api/embeddings', embeddingsRoutes);
|
|
352
400
|
app.use('/api/documents', documentsRateLimiter, documentRoutes);
|
|
353
401
|
app.use('/api/personas', personasRateLimiter, optionalAuth, personaRoutes);
|
|
@@ -355,6 +403,7 @@ app.use('/api/tts', ttsRateLimiter, optionalAuth, ttsRoutes);
|
|
|
355
403
|
app.use('/api/image-gen', imageGenRateLimiter, optionalAuth, imageGenRoutes);
|
|
356
404
|
app.use('/api/huggingface-hub', huggingfaceHubRoutes);
|
|
357
405
|
app.use('/api/libre-claw', libreClawRateLimiter, libreClawRoutes);
|
|
406
|
+
app.use('/api/work', workRateLimiter, workRoutes);
|
|
358
407
|
// Serve frontend static files in production (for npx libre-webui)
|
|
359
408
|
if (process.env.NODE_ENV === 'production' ||
|
|
360
409
|
process.env.SERVE_FRONTEND === 'true') {
|
|
@@ -439,17 +488,32 @@ server.listen({ port, host: '0.0.0.0' }, () => {
|
|
|
439
488
|
});
|
|
440
489
|
});
|
|
441
490
|
// Graceful shutdown
|
|
442
|
-
|
|
443
|
-
|
|
491
|
+
let shutdownStarted = false;
|
|
492
|
+
const shutdown = (signal) => {
|
|
493
|
+
if (shutdownStarted)
|
|
494
|
+
return;
|
|
495
|
+
shutdownStarted = true;
|
|
496
|
+
logger.info(`${signal} signal received: stopping Work containers`);
|
|
444
497
|
server.close(() => {
|
|
445
498
|
logger.info('HTTP server closed');
|
|
446
499
|
});
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
server.close(() => {
|
|
451
|
-
logger.info('HTTP server closed');
|
|
500
|
+
const timeout = new Promise(resolve => {
|
|
501
|
+
const timer = setTimeout(() => resolve('timeout'), 15000);
|
|
502
|
+
timer.unref();
|
|
452
503
|
});
|
|
453
|
-
|
|
504
|
+
void Promise.race([workAgentService.shutdown(), timeout]).then(result => {
|
|
505
|
+
if (result === 'timeout') {
|
|
506
|
+
logger.warn('Timed out waiting for Work containers to stop.');
|
|
507
|
+
}
|
|
508
|
+
else if (result.failed > 0) {
|
|
509
|
+
logger.warn(`Failed to stop ${result.failed} Work container(s) during shutdown.`);
|
|
510
|
+
}
|
|
511
|
+
else {
|
|
512
|
+
logger.info(`Stopped ${result.stopped} Work container(s).`);
|
|
513
|
+
}
|
|
514
|
+
});
|
|
515
|
+
};
|
|
516
|
+
process.on('SIGTERM', () => shutdown('SIGTERM'));
|
|
517
|
+
process.on('SIGINT', () => shutdown('SIGINT'));
|
|
454
518
|
export default app;
|
|
455
519
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/middleware/auth.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/middleware/auth.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE1D,OAAO,EAAe,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAM3E,MAAM,WAAW,oBAAqB,SAAQ,OAAO;IACnD,IAAI,CAAC,EAAE,gBAAgB,CAAC;CACzB;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,GACvB,KAAK,oBAAoB,EACzB,KAAK,QAAQ,EACb,MAAM,YAAY,KACjB,OAAO,CAAC,IAAI,CA+Bd,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,GACvB,KAAK,oBAAoB,EACzB,KAAK,QAAQ,EACb,MAAM,YAAY,KACjB,OAAO,CAAC,IAAI,CAkCd,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,GACvB,KAAK,oBAAoB,EACzB,KAAK,QAAQ,EACb,MAAM,YAAY,KACjB,OAAO,CAAC,IAAI,CAgBd,CAAC"}
|