libre-webui 0.23.1 → 0.24.1

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.
Files changed (206) hide show
  1. package/backend/dist/index.d.ts.map +1 -1
  2. package/backend/dist/index.js +2 -0
  3. package/backend/dist/index.js.map +1 -1
  4. package/backend/dist/routes/chat.d.ts.map +1 -1
  5. package/backend/dist/routes/chat.js +148 -3
  6. package/backend/dist/routes/chat.js.map +1 -1
  7. package/backend/dist/routes/ollama.d.ts.map +1 -1
  8. package/backend/dist/routes/ollama.js +48 -1
  9. package/backend/dist/routes/ollama.js.map +1 -1
  10. package/backend/dist/services/apiTokenService.d.ts.map +1 -1
  11. package/backend/dist/services/apiTokenService.js +1 -0
  12. package/backend/dist/services/apiTokenService.js.map +1 -1
  13. package/backend/dist/services/chatGenerationService.d.ts +11 -1
  14. package/backend/dist/services/chatGenerationService.d.ts.map +1 -1
  15. package/backend/dist/services/chatGenerationService.js +22 -2
  16. package/backend/dist/services/chatGenerationService.js.map +1 -1
  17. package/backend/dist/services/chatService.d.ts +14 -1
  18. package/backend/dist/services/chatService.d.ts.map +1 -1
  19. package/backend/dist/services/chatService.js +109 -5
  20. package/backend/dist/services/chatService.js.map +1 -1
  21. package/backend/dist/services/contextCompactionService.d.ts +36 -0
  22. package/backend/dist/services/contextCompactionService.d.ts.map +1 -0
  23. package/backend/dist/services/contextCompactionService.js +285 -0
  24. package/backend/dist/services/contextCompactionService.js.map +1 -0
  25. package/backend/dist/services/durableChatGenerationService.d.ts.map +1 -1
  26. package/backend/dist/services/durableChatGenerationService.js +121 -11
  27. package/backend/dist/services/durableChatGenerationService.js.map +1 -1
  28. package/backend/dist/services/followUpService.d.ts.map +1 -1
  29. package/backend/dist/services/followUpService.js +8 -2
  30. package/backend/dist/services/followUpService.js.map +1 -1
  31. package/backend/dist/services/modelVisibilityService.d.ts +45 -0
  32. package/backend/dist/services/modelVisibilityService.d.ts.map +1 -0
  33. package/backend/dist/services/modelVisibilityService.js +215 -0
  34. package/backend/dist/services/modelVisibilityService.js.map +1 -0
  35. package/backend/dist/services/ollamaService.d.ts +16 -1
  36. package/backend/dist/services/ollamaService.d.ts.map +1 -1
  37. package/backend/dist/services/ollamaService.js +52 -13
  38. package/backend/dist/services/ollamaService.js.map +1 -1
  39. package/backend/dist/services/pluginService.d.ts +14 -0
  40. package/backend/dist/services/pluginService.d.ts.map +1 -1
  41. package/backend/dist/services/pluginService.js +111 -13
  42. package/backend/dist/services/pluginService.js.map +1 -1
  43. package/backend/dist/services/preferencesService.d.ts.map +1 -1
  44. package/backend/dist/services/preferencesService.js +3 -0
  45. package/backend/dist/services/preferencesService.js.map +1 -1
  46. package/backend/dist/services/titleGenerationService.d.ts.map +1 -1
  47. package/backend/dist/services/titleGenerationService.js +20 -2
  48. package/backend/dist/services/titleGenerationService.js.map +1 -1
  49. package/backend/dist/services/workAgentService.d.ts.map +1 -1
  50. package/backend/dist/services/workAgentService.js +22 -0
  51. package/backend/dist/services/workAgentService.js.map +1 -1
  52. package/backend/dist/types/index.d.ts +23 -2
  53. package/backend/dist/types/index.d.ts.map +1 -1
  54. package/backend/dist/types/index.js.map +1 -1
  55. package/backend/dist/utils/chatContext.d.ts +7 -0
  56. package/backend/dist/utils/chatContext.d.ts.map +1 -1
  57. package/backend/dist/utils/chatContext.js +13 -2
  58. package/backend/dist/utils/chatContext.js.map +1 -1
  59. package/backend/dist/utils/ollamaModelDefaults.d.ts +10 -0
  60. package/backend/dist/utils/ollamaModelDefaults.d.ts.map +1 -1
  61. package/backend/dist/utils/ollamaModelDefaults.js +19 -1
  62. package/backend/dist/utils/ollamaModelDefaults.js.map +1 -1
  63. package/backend/dist/utils/openAIResponsesAdapter.d.ts +2 -0
  64. package/backend/dist/utils/openAIResponsesAdapter.d.ts.map +1 -1
  65. package/backend/dist/utils/openAIResponsesAdapter.js +5 -0
  66. package/backend/dist/utils/openAIResponsesAdapter.js.map +1 -1
  67. package/backend/dist/utils/pluginChatAdapter.d.ts +1 -0
  68. package/backend/dist/utils/pluginChatAdapter.d.ts.map +1 -1
  69. package/backend/dist/utils/pluginChatAdapter.js +101 -11
  70. package/backend/dist/utils/pluginChatAdapter.js.map +1 -1
  71. package/backend/dist/utils/pluginModelCatalog.d.ts +50 -0
  72. package/backend/dist/utils/pluginModelCatalog.d.ts.map +1 -0
  73. package/backend/dist/utils/pluginModelCatalog.js +221 -0
  74. package/backend/dist/utils/pluginModelCatalog.js.map +1 -0
  75. package/backend/dist/utils/pluginStreamAdapter.d.ts +12 -1
  76. package/backend/dist/utils/pluginStreamAdapter.d.ts.map +1 -1
  77. package/backend/dist/utils/pluginStreamAdapter.js +32 -2
  78. package/backend/dist/utils/pluginStreamAdapter.js.map +1 -1
  79. package/backend/dist/utils/pluginStreaming.d.ts +10 -0
  80. package/backend/dist/utils/pluginStreaming.d.ts.map +1 -1
  81. package/backend/dist/utils/pluginStreaming.js.map +1 -1
  82. package/backend/dist/utils/thinkingOptions.d.ts +68 -0
  83. package/backend/dist/utils/thinkingOptions.d.ts.map +1 -0
  84. package/backend/dist/utils/thinkingOptions.js +130 -0
  85. package/backend/dist/utils/thinkingOptions.js.map +1 -0
  86. package/backend/dist/websocketServer.d.ts.map +1 -1
  87. package/backend/dist/websocketServer.js +1 -1
  88. package/backend/dist/websocketServer.js.map +1 -1
  89. package/backend/package.json +3 -3
  90. package/frontend/dist/artifact-runtime/.build-fingerprint +1 -1
  91. package/frontend/dist/artifact-runtime/framer-motion.js +3 -3
  92. package/frontend/dist/artifact-runtime/papaparse.js +5 -5
  93. package/frontend/dist/assets/index-CDQ12KBq.js +34 -0
  94. package/frontend/dist/assets/index-DkFWzmFD.css +1 -0
  95. package/frontend/dist/assets/{markdown-math-ClTedVi7.css → markdown-math-Ddr6Z9Sf.css} +1 -1
  96. package/frontend/dist/index.html +15 -15
  97. package/frontend/dist/js/ArtifactContainer-B-hs0F5K.js +1 -0
  98. package/frontend/dist/js/{ArtifactDemoPage-QRve-734.js → ArtifactDemoPage-QFtJw-u4.js} +1 -1
  99. package/frontend/dist/js/{ArtifactSandboxFrame-DhvA-t-7.js → ArtifactSandboxFrame-S9g_q47-.js} +2 -2
  100. package/frontend/dist/js/ArtifactSlideOutPanel-D0UOo8RW.js +1 -0
  101. package/frontend/dist/js/{Button-BV44cTnj.js → Button-BPf_pOxH.js} +1 -1
  102. package/frontend/dist/js/ChatPage-fdd8500b.js +23 -0
  103. package/frontend/dist/js/FirstTimeSetup-BTjafGOq.js +1 -0
  104. package/frontend/dist/js/GalleryPage-hR9AJ6b-.js +1 -0
  105. package/frontend/dist/js/HomePage-JvTzq-Pp.js +1 -0
  106. package/frontend/dist/js/LibreClawPage-CLJvtXft.js +1 -0
  107. package/frontend/dist/js/{ModelManagerModals-CZAWUxjI.js → ModelManagerModals-DBmm_slu.js} +1 -1
  108. package/frontend/dist/js/ModelSelector-A-viVFEc.js +1 -0
  109. package/frontend/dist/js/ModelsPage-C4Rm-TZF.js +2 -0
  110. package/frontend/dist/js/NotesPage-C7bPU_KF.js +1 -0
  111. package/frontend/dist/js/{OptimizedSyntaxHighlighter-XwqZEoTf.js → OptimizedSyntaxHighlighter-Dz7D1LPB.js} +1 -1
  112. package/frontend/dist/js/{PersonasPage-DpN8DQkY.js → PersonasPage-DpvxbFzv.js} +2 -2
  113. package/frontend/dist/js/{PluginUsagePage-5PXXZXle.js → PluginUsagePage-laF-M2X9.js} +1 -1
  114. package/frontend/dist/js/RichMessageContent-D0mK9vRA.js +3 -0
  115. package/frontend/dist/js/SettingsModal-DNEQ5sTt.js +1 -0
  116. package/frontend/dist/js/{SettingsToggle-WTa0rgvY.js → SettingsToggle-woG_WebF.js} +1 -1
  117. package/frontend/dist/js/{SystemPage-FUnoW7Er.js → SystemPage-Xr7XJv8c.js} +1 -1
  118. package/frontend/dist/js/UserManagementPage-DGmbGTC2.js +1 -0
  119. package/frontend/dist/js/WorkPage-DNKFD9gS.js +6 -0
  120. package/frontend/dist/js/{api-Dw_IuHaz.js → api-DGVZHSkS.js} +2 -2
  121. package/frontend/dist/js/{appStore-DAT2R-5p.js → appStore-DXlmTjIC.js} +2 -2
  122. package/frontend/dist/js/ar-DW79oSyN.js +2 -0
  123. package/frontend/dist/js/authStore-B97lJ5Ee.js +4 -0
  124. package/frontend/dist/js/bn-BEAmE7VH.js +2 -0
  125. package/frontend/dist/js/chatStore-zilBUd1p.js +3 -0
  126. package/frontend/dist/js/{config-0eBxRk6E.js → config-CmEh9o8U.js} +1 -1
  127. package/frontend/dist/js/cs-irpRMzRo.js +2 -0
  128. package/frontend/dist/js/da-cgilTVxc.js +2 -0
  129. package/frontend/dist/js/de-BU-eH3gU.js +2 -0
  130. package/frontend/dist/js/es-B2LRpZ0p.js +2 -0
  131. package/frontend/dist/js/{estree-Db_NKIE7.js → estree-CZO8RS52.js} +1 -1
  132. package/frontend/dist/js/fr-Cd5JM-oQ.js +2 -0
  133. package/frontend/dist/js/hi-CvOhdtiK.js +2 -0
  134. package/frontend/dist/js/{html-INl_p8N8.js → html-C31pxhBG.js} +1 -1
  135. package/frontend/dist/js/id-BtRK5nR_.js +2 -0
  136. package/frontend/dist/js/is-CnEqwgRF.js +2 -0
  137. package/frontend/dist/js/it-CI6WjId6.js +2 -0
  138. package/frontend/dist/js/ja-B6gFOHi6.js +2 -0
  139. package/frontend/dist/js/ko-DuAhnmMf.js +2 -0
  140. package/frontend/dist/js/{markdown-DQbfLH11.js → markdown-C1CEqXpL.js} +1 -1
  141. package/frontend/dist/js/{messageCodeStyles-D7zXzjgH.js → messageCodeStyles-BqQ6kOSU.js} +2 -2
  142. package/frontend/dist/js/ms-C8BIP7MZ.js +2 -0
  143. package/frontend/dist/js/nl-DnEdspER.js +2 -0
  144. package/frontend/dist/js/pl-Ddyyvbse.js +2 -0
  145. package/frontend/dist/js/pt-BYuzm70F.js +2 -0
  146. package/frontend/dist/js/ru-CmSPFxPX.js +2 -0
  147. package/frontend/dist/js/{standalone-CFSd7xCM.js → standalone-Dz0pkxn0.js} +1 -1
  148. package/frontend/dist/js/sv-Dd6SQ9f1.js +2 -0
  149. package/frontend/dist/js/th-CpH8745B.js +2 -0
  150. package/frontend/dist/js/thinking-DwlkTfPX.js +1 -0
  151. package/frontend/dist/js/tr-DuVD75iJ.js +2 -0
  152. package/frontend/dist/js/{typescript-BIFKSiW0.js → typescript-DeXPhp90.js} +1 -1
  153. package/frontend/dist/js/ui-CO0DPqrI.js +2 -0
  154. package/frontend/dist/js/{ui-vendor-54SgntkX.js → ui-vendor-mqjSfAaS.js} +1 -1
  155. package/frontend/dist/js/uk-B0MU-M8k.js +2 -0
  156. package/frontend/dist/js/{useTranslation-C3ei3mJq.js → useTranslation-Bho4HCyg.js} +1 -1
  157. package/frontend/dist/js/{utils-CuC1beTY.js → utils-D9W1Lnkn.js} +1 -1
  158. package/frontend/dist/js/{utils-vendor-BBa8OxtB.js → utils-vendor-DWh39_3x.js} +1 -1
  159. package/frontend/dist/js/vi-BLmFNp_z.js +2 -0
  160. package/frontend/dist/js/{workApi-DlmJ72dN.js → workApi-C4QtuhcE.js} +2 -2
  161. package/frontend/dist/js/zh-BQu0TLhw.js +2 -0
  162. package/package.json +3 -3
  163. package/frontend/dist/assets/index-BXMQqOXF.js +0 -11
  164. package/frontend/dist/assets/index-DBaj1DRj.css +0 -1
  165. package/frontend/dist/js/ArtifactContainer-BUjOZ5M5.js +0 -1
  166. package/frontend/dist/js/ArtifactSlideOutPanel-B8w1Orr1.js +0 -1
  167. package/frontend/dist/js/ChatPage-DKVwaYxn.js +0 -23
  168. package/frontend/dist/js/FirstTimeSetup-DaQveC0v.js +0 -1
  169. package/frontend/dist/js/GalleryPage-Cz-VvarV.js +0 -1
  170. package/frontend/dist/js/HomePage-DF9pZ5V5.js +0 -1
  171. package/frontend/dist/js/LibreClawPage-Dw8YQyFj.js +0 -1
  172. package/frontend/dist/js/ModelSelector-Cc91MEm4.js +0 -1
  173. package/frontend/dist/js/ModelsPage-BgaQuCry.js +0 -2
  174. package/frontend/dist/js/NotesPage-CRAo-TFI.js +0 -1
  175. package/frontend/dist/js/RichMessageContent-C67tFlr1.js +0 -3
  176. package/frontend/dist/js/SettingsModal-BEzMSDlp.js +0 -1
  177. package/frontend/dist/js/UserManagementPage-SBsRbt0H.js +0 -1
  178. package/frontend/dist/js/WorkPage-D3ChSFo-.js +0 -6
  179. package/frontend/dist/js/ar-D0z0P4rC.js +0 -2
  180. package/frontend/dist/js/authStore-CwSMGkEM.js +0 -4
  181. package/frontend/dist/js/bn-BYYU41A7.js +0 -2
  182. package/frontend/dist/js/chatStore-BK6YcouV.js +0 -3
  183. package/frontend/dist/js/cs-BFx6KNZe.js +0 -2
  184. package/frontend/dist/js/da-DSDuY5Du.js +0 -2
  185. package/frontend/dist/js/de-YqhP0FmX.js +0 -2
  186. package/frontend/dist/js/es-Dpr_y1cN.js +0 -2
  187. package/frontend/dist/js/fr-nVg_iAEC.js +0 -2
  188. package/frontend/dist/js/hi-gHKYCgkP.js +0 -2
  189. package/frontend/dist/js/id-C_yID1Zk.js +0 -2
  190. package/frontend/dist/js/is-MoRPLbOM.js +0 -2
  191. package/frontend/dist/js/it-BZTscLxR.js +0 -2
  192. package/frontend/dist/js/ja-DpIbtmZq.js +0 -2
  193. package/frontend/dist/js/ko-LkWggmjU.js +0 -2
  194. package/frontend/dist/js/ms-p3XiQSAo.js +0 -2
  195. package/frontend/dist/js/nl-sEHHO2Kb.js +0 -2
  196. package/frontend/dist/js/pl-D2GD6PDW.js +0 -2
  197. package/frontend/dist/js/pt-DPkn3GUn.js +0 -2
  198. package/frontend/dist/js/ru-C42iHrEd.js +0 -2
  199. package/frontend/dist/js/sv-CGvHo4os.js +0 -2
  200. package/frontend/dist/js/th-BaDNpCdY.js +0 -2
  201. package/frontend/dist/js/tr-BHQvi1cN.js +0 -2
  202. package/frontend/dist/js/ui-CS8EAgvS.js +0 -2
  203. package/frontend/dist/js/uk-7pNGS1b2.js +0 -2
  204. package/frontend/dist/js/vi-DgAfh6mo.js +0 -2
  205. package/frontend/dist/js/zh-FRTz6ZqA.js +0 -2
  206. /package/frontend/dist/js/{markdown-math-mH7AZ_mb.js → markdown-math-DK846gXU.js} +0 -0
@@ -0,0 +1,221 @@
1
+ /*
2
+ * Libre WebUI
3
+ * Copyright (C) 2025 Kroonen AI, Inc.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at:
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ /**
18
+ * What a provider's model listing says about its models.
19
+ *
20
+ * Discovery used to keep only the identifiers. A context window is worth
21
+ * keeping too: without it the application can count the tokens a conversation
22
+ * spends but has nothing to measure them against, which is the difference
23
+ * between a number and a gauge.
24
+ *
25
+ * Providers name the field differently and some do not report it at all, so
26
+ * every known spelling is read and a missing one is simply absent.
27
+ */
28
+ /** Context-window fields, in the order providers are most likely to mean. */
29
+ const CONTEXT_LENGTH_KEYS = [
30
+ 'context_length',
31
+ 'context_window',
32
+ 'max_context_length',
33
+ 'max_context_tokens',
34
+ 'max_input_tokens',
35
+ 'inputTokenLimit',
36
+ ];
37
+ /**
38
+ * Reported windows are token counts. A value that is not a positive whole
39
+ * number is a provider quirk rather than a window, and is dropped instead of
40
+ * being shown as a budget the user cannot trust.
41
+ */
42
+ const asContextLength = (value) => {
43
+ const length = typeof value === 'string' ? Number(value) : value;
44
+ return typeof length === 'number' &&
45
+ Number.isFinite(length) &&
46
+ Number.isInteger(length) &&
47
+ length > 0
48
+ ? length
49
+ : undefined;
50
+ };
51
+ /**
52
+ * The context window from one entry of a model listing. OpenRouter repeats it
53
+ * under `top_provider`, where it reflects the provider actually serving the
54
+ * model, so that copy wins when the two disagree.
55
+ */
56
+ export function readModelContextLength(entry) {
57
+ if (!entry)
58
+ return undefined;
59
+ const topProvider = entry.top_provider;
60
+ if (topProvider && typeof topProvider === 'object') {
61
+ const nested = asContextLength(topProvider.context_length);
62
+ if (nested !== undefined)
63
+ return nested;
64
+ }
65
+ for (const key of CONTEXT_LENGTH_KEYS) {
66
+ const length = asContextLength(entry[key]);
67
+ if (length !== undefined)
68
+ return length;
69
+ }
70
+ return undefined;
71
+ }
72
+ /**
73
+ * Whether one listing entry says its model can reason. OpenRouter publishes
74
+ * `supported_parameters` for every model, so on entries that carry the array
75
+ * its silence is a real "no"; other providers say nothing, and nothing is
76
+ * recorded rather than guessed here — the name heuristic below is the
77
+ * fallback, kept separate because a listing's own answer must win.
78
+ */
79
+ export function readModelReasoningSupport(entry) {
80
+ if (!entry)
81
+ return undefined;
82
+ const supportedParameters = entry.supported_parameters;
83
+ if (Array.isArray(supportedParameters)) {
84
+ return supportedParameters.some(parameter => parameter === 'reasoning' ||
85
+ parameter === 'include_reasoning' ||
86
+ parameter === 'reasoning_effort');
87
+ }
88
+ const capabilities = entry.capabilities;
89
+ if (Array.isArray(capabilities) &&
90
+ capabilities.some(capability => capability === 'reasoning' || capability === 'thinking')) {
91
+ return true;
92
+ }
93
+ if (entry.reasoning === true)
94
+ return true;
95
+ return undefined;
96
+ }
97
+ /**
98
+ * What a model's name says about reasoning, for the providers whose listings
99
+ * say nothing. This is a maintained table of the major families: a wrong
100
+ * "true" costs a provider error the user can act on, a wrong "false" hides a
101
+ * working control, and an unknown name stays undefined — offered, like an
102
+ * Ollama model that reports no capabilities.
103
+ */
104
+ export function inferReasoningFromModelId(id) {
105
+ const name = id.toLowerCase();
106
+ const tail = name.split('/').pop() ?? name;
107
+ // OpenAI: the o-series, gpt-5 family, and gpt-oss reason; the gpt-4/4o and
108
+ // earlier chat families do not.
109
+ if (/^o[134](-|$)/.test(tail) || tail.startsWith('gpt-5'))
110
+ return true;
111
+ if (tail.includes('gpt-oss'))
112
+ return true;
113
+ if (/^(chatgpt-|gpt-4|gpt-3)/.test(tail))
114
+ return false;
115
+ // Anthropic: extended thinking exists from Claude 3.7 on. Everything older
116
+ // — Claude 3.x, Claude 2, Instant — predates it.
117
+ if (tail.includes('claude')) {
118
+ return !/claude-(3-[05]|3-(haiku|sonnet|opus)|2|instant)/.test(tail);
119
+ }
120
+ // Gemini: thinking arrived with 2.5; 2.0 only in the models that carry
121
+ // "thinking" in the name.
122
+ if (tail.includes('gemini')) {
123
+ if (tail.includes('thinking'))
124
+ return true;
125
+ const generation = /gemini-(\d+(?:\.\d+)?)/.exec(tail);
126
+ return generation ? Number(generation[1]) >= 2.5 : undefined;
127
+ }
128
+ // Open reasoning families served through providers.
129
+ if (/(^|[^a-z])r1([^a-z]|$)/.test(tail) || tail.includes('qwq'))
130
+ return true;
131
+ return undefined;
132
+ }
133
+ export function readModelReasoningMap(entries) {
134
+ const reasoning = {};
135
+ for (const entry of entries) {
136
+ if (!entry || typeof entry !== 'object')
137
+ continue;
138
+ const record = entry;
139
+ const id = record.id;
140
+ if (typeof id !== 'string' || id.length === 0)
141
+ continue;
142
+ const support = readModelReasoningSupport(record) ?? inferReasoningFromModelId(id);
143
+ if (support !== undefined)
144
+ reasoning[id] = support;
145
+ }
146
+ return reasoning;
147
+ }
148
+ export function readModelContextMap(entries) {
149
+ const contexts = {};
150
+ for (const entry of entries) {
151
+ if (!entry || typeof entry !== 'object')
152
+ continue;
153
+ const record = entry;
154
+ const id = record.id;
155
+ if (typeof id !== 'string' || id.length === 0)
156
+ continue;
157
+ const contextLength = readModelContextLength(record);
158
+ if (contextLength !== undefined)
159
+ contexts[id] = contextLength;
160
+ }
161
+ return contexts;
162
+ }
163
+ /**
164
+ * Discovery used to be stored as a plain array of identifiers. It is now an
165
+ * object that still carries that array, so an older build reads it as "nothing
166
+ * discovered" and re-discovers rather than misreading a catalog, and a newer
167
+ * one can tell a catalog with no windows from one written before windows were
168
+ * kept at all.
169
+ */
170
+ export function serializeDiscoveredCatalog(catalog) {
171
+ return JSON.stringify({
172
+ version: 1,
173
+ models: catalog.models,
174
+ context: catalog.modelContext ?? {},
175
+ reasoning: catalog.modelReasoning ?? {},
176
+ });
177
+ }
178
+ export function parseDiscoveredCatalog(serialized) {
179
+ const parsed = JSON.parse(serialized);
180
+ const uniqueModels = (values) => Array.from(new Set(values.filter((model) => typeof model === 'string' && model.length > 0)));
181
+ if (Array.isArray(parsed)) {
182
+ return { models: uniqueModels(parsed), legacy: true };
183
+ }
184
+ // An object catalog missing the reasoning key was written before reasoning
185
+ // support was captured; like the plain-array form it earns one refresh.
186
+ if (!parsed || typeof parsed !== 'object') {
187
+ return { models: [] };
188
+ }
189
+ const record = parsed;
190
+ const models = Array.isArray(record.models)
191
+ ? uniqueModels(record.models)
192
+ : [];
193
+ const context = record.context && typeof record.context === 'object'
194
+ ? record.context
195
+ : undefined;
196
+ const modelContext = {};
197
+ if (context) {
198
+ for (const [model, length] of Object.entries(context)) {
199
+ const contextLength = asContextLength(length);
200
+ if (contextLength !== undefined)
201
+ modelContext[model] = contextLength;
202
+ }
203
+ }
204
+ const reasoning = record.reasoning && typeof record.reasoning === 'object'
205
+ ? record.reasoning
206
+ : undefined;
207
+ const modelReasoning = {};
208
+ if (reasoning) {
209
+ for (const [model, support] of Object.entries(reasoning)) {
210
+ if (typeof support === 'boolean')
211
+ modelReasoning[model] = support;
212
+ }
213
+ }
214
+ return {
215
+ models,
216
+ ...(Object.keys(modelContext).length > 0 ? { modelContext } : {}),
217
+ ...(Object.keys(modelReasoning).length > 0 ? { modelReasoning } : {}),
218
+ ...('reasoning' in record ? {} : { legacy: true }),
219
+ };
220
+ }
221
+ //# sourceMappingURL=pluginModelCatalog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pluginModelCatalog.js","sourceRoot":"","sources":["../../src/utils/pluginModelCatalog.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,16 @@ export interface PluginStreamUsage {
9
9
  completionTokens?: number;
10
10
  totalTokens?: number;
11
11
  }
12
+ /**
13
+ * Generation timings a server reports for itself. llama.cpp and the servers
14
+ * that copy its shape return these beside `usage`; they are not part of the
15
+ * OpenAI schema.
16
+ */
17
+ export interface PluginStreamTimings {
18
+ promptMs?: number;
19
+ predictedMs?: number;
20
+ predictedPerSecond?: number;
21
+ }
12
22
  export type PluginStreamChunk = {
13
23
  type: 'content';
14
24
  content: string;
@@ -20,7 +30,8 @@ export type PluginStreamChunk = {
20
30
  toolCall: PluginToolCall;
21
31
  } | {
22
32
  type: 'usage';
23
- usage: PluginStreamUsage;
33
+ usage?: PluginStreamUsage;
34
+ timings?: PluginStreamTimings;
24
35
  } | {
25
36
  type: 'done';
26
37
  doneReason?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"pluginStreamAdapter.d.ts","sourceRoot":"","sources":["../../src/utils/pluginStreamAdapter.ts"],"names":[],"mappings":"AA2BA,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,iBAAiB;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,iBAAiB,GACzB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,EAAE,cAAc,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,iBAAiB,CAAA;CAAE,GAC3C;IACE,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC5C,CAAC;AA+FN,wBAAuB,8BAA8B,CACnD,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,GAC1C,cAAc,CAAC,iBAAiB,EAAE,IAAI,EAAE,OAAO,CAAC,CAoHlD;AAuED,MAAM,WAAW,sBAAsB;IACrC;;;;;OAKG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED,wBAAuB,6BAA6B,CAClD,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,EAC3C,UAAU,CAAC,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,sBAAsB,GACrC,cAAc,CAAC,iBAAiB,EAAE,IAAI,EAAE,OAAO,CAAC,CA6flD;AAWD,wBAAuB,uBAAuB,CAC5C,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,GAC1C,cAAc,CAAC,iBAAiB,EAAE,IAAI,EAAE,OAAO,CAAC,CAmOlD"}
1
+ {"version":3,"file":"pluginStreamAdapter.d.ts","sourceRoot":"","sources":["../../src/utils/pluginStreamAdapter.ts"],"names":[],"mappings":"AA2BA,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,iBAAiB;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,MAAM,iBAAiB,GACzB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,EAAE,cAAc,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAAC,OAAO,CAAC,EAAE,mBAAmB,CAAA;CAAE,GAC3E;IACE,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC5C,CAAC;AA+FN,wBAAuB,8BAA8B,CACnD,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,GAC1C,cAAc,CAAC,iBAAiB,EAAE,IAAI,EAAE,OAAO,CAAC,CAyHlD;AAiGD,MAAM,WAAW,sBAAsB;IACrC;;;;;OAKG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED,wBAAuB,6BAA6B,CAClD,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,EAC3C,UAAU,CAAC,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,sBAAsB,GACrC,cAAc,CAAC,iBAAiB,EAAE,IAAI,EAAE,OAAO,CAAC,CA6flD;AAWD,wBAAuB,uBAAuB,CAC5C,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,GAC1C,cAAc,CAAC,iBAAiB,EAAE,IAAI,EAAE,OAAO,CAAC,CAmOlD"}
@@ -143,8 +143,13 @@ export async function* streamOpenAICompatibleResponse(response) {
143
143
  throw new Error(`Plugin API error: ${providerError}`);
144
144
  }
145
145
  const usage = parseOpenAIUsage(payload.usage);
146
- if (usage) {
147
- yield { type: 'usage', usage };
146
+ const timings = parseProviderTimings(payload.timings);
147
+ if (usage || timings) {
148
+ yield {
149
+ type: 'usage',
150
+ ...(usage ? { usage } : {}),
151
+ ...(timings ? { timings } : {}),
152
+ };
148
153
  }
149
154
  const delta = getChoiceDelta(payload);
150
155
  if (!delta) {
@@ -200,6 +205,31 @@ function pluginStreamError(payload) {
200
205
  : undefined;
201
206
  return message?.slice(0, 500);
202
207
  }
208
+ /**
209
+ * Servers in the llama.cpp family report their own generation timings beside
210
+ * `usage`. They are not part of the OpenAI schema, so they arrive untyped and
211
+ * would otherwise be dropped, leaving speed and durations blank.
212
+ */
213
+ function parseProviderTimings(value) {
214
+ if (!value || typeof value !== 'object')
215
+ return undefined;
216
+ const record = value;
217
+ const numeric = (key) => typeof record[key] === 'number' && Number.isFinite(record[key])
218
+ ? record[key]
219
+ : undefined;
220
+ const timings = {
221
+ ...(numeric('prompt_ms') !== undefined
222
+ ? { promptMs: numeric('prompt_ms') }
223
+ : {}),
224
+ ...(numeric('predicted_ms') !== undefined
225
+ ? { predictedMs: numeric('predicted_ms') }
226
+ : {}),
227
+ ...(numeric('predicted_per_second') !== undefined
228
+ ? { predictedPerSecond: numeric('predicted_per_second') }
229
+ : {}),
230
+ };
231
+ return Object.keys(timings).length > 0 ? timings : undefined;
232
+ }
203
233
  function parseOpenAIUsage(value) {
204
234
  if (!value || typeof value !== 'object')
205
235
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"pluginStreamAdapter.js","sourceRoot":"","sources":["../../src/utils/pluginStreamAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pluginStreamAdapter.js","sourceRoot":"","sources":["../../src/utils/pluginStreamAdapter.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,16 @@ export type PluginStreamChunk = {
20
20
  completionTokens?: number;
21
21
  totalTokens?: number;
22
22
  };
23
+ /**
24
+ * Server-reported timings. llama.cpp and its relatives return these
25
+ * alongside usage; measuring them here instead would only report our
26
+ * own network round trip.
27
+ */
28
+ timings?: {
29
+ promptMs?: number;
30
+ predictedMs?: number;
31
+ predictedPerSecond?: number;
32
+ };
23
33
  } | {
24
34
  type: 'done';
25
35
  doneReason?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"pluginStreaming.d.ts","sourceRoot":"","sources":["../../src/utils/pluginStreaming.ts"],"names":[],"mappings":"AAkBA,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,wBAAwB,CAAC;AAGhC,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,iBAAiB,GACzB;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GACD;IACE,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GACD;IACE,IAAI,EAAE,WAAW,CAAC;IAClB,QAAQ,CAAC,EAAE,oBAAoB,CAAC;CACjC,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE;QACN,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACH,GACD;IACE,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC5C,CAAC;AAEN,MAAM,WAAW,2BAA2B;IAC1C,EAAE,EAAE,aAAa,CAAC;IAClB,MAAM,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC5C;AAID,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,SAAS,oBAAoB,EAAE,GACzC,MAAM,CAaR;AAED,wBAAsB,oBAAoB,CAAC,EACzC,EAAE,EACF,MAAM,EACN,SAAS,EACT,gBAAuB,EACvB,MAAM,GACP,EAAE,2BAA2B,GAAG,OAAO,CAAC,0BAA0B,CAAC,CA2HnE"}
1
+ {"version":3,"file":"pluginStreaming.d.ts","sourceRoot":"","sources":["../../src/utils/pluginStreaming.ts"],"names":[],"mappings":"AAkBA,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,wBAAwB,CAAC;AAGhC,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,iBAAiB,GACzB;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GACD;IACE,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GACD;IACE,IAAI,EAAE,WAAW,CAAC;IAClB,QAAQ,CAAC,EAAE,oBAAoB,CAAC;CACjC,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE;QACN,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF;;;;OAIG;IACH,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAC;CACH,GACD;IACE,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC5C,CAAC;AAEN,MAAM,WAAW,2BAA2B;IAC1C,EAAE,EAAE,aAAa,CAAC;IAClB,MAAM,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC5C;AAID,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,SAAS,oBAAoB,EAAE,GACzC,MAAM,CAaR;AAED,wBAAsB,oBAAoB,CAAC,EACzC,EAAE,EACF,MAAM,EACN,SAAS,EACT,gBAAuB,EACvB,MAAM,GACP,EAAE,2BAA2B,GAAG,OAAO,CAAC,0BAA0B,CAAC,CA2HnE"}
@@ -1 +1 @@
1
- {"version":3,"file":"pluginStreaming.js","sourceRoot":"","sources":["../../src/utils/pluginStreaming.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pluginStreaming.js","sourceRoot":"","sources":["../../src/utils/pluginStreaming.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * How hard a model should think before it answers.
3
+ *
4
+ * Every provider spells this differently: Ollama takes a top-level `think`,
5
+ * OpenAI takes a reasoning effort, Anthropic and Gemini take a token budget.
6
+ * The application keeps one value on the generation options and translates it
7
+ * at each provider boundary, so a conversation carries its own setting no
8
+ * matter which model answers it.
9
+ *
10
+ * Unset means the provider decides, which is what every request did before
11
+ * this option existed. Nothing is added to a payload for an unset value.
12
+ */
13
+ export declare const THINKING_LEVELS: readonly ['low', 'medium', 'high'];
14
+ export type ThinkingLevel = (typeof THINKING_LEVELS)[number];
15
+ /** `false` disables reasoning, `true` enables it at the provider's default. */
16
+ export type ThinkingPreference = boolean | ThinkingLevel;
17
+ export declare function isThinkingLevel(value: unknown): value is ThinkingLevel;
18
+ /**
19
+ * Reads whatever arrived from a client or a stored preference. Anything that
20
+ * is not a level or a boolean is dropped rather than guessed at, so a stale
21
+ * value cannot reach a provider as an unknown request field.
22
+ */
23
+ export declare function normalizeThinkingPreference(value: unknown): ThinkingPreference | undefined;
24
+ /**
25
+ * `think` travels with the generation options because that is how a chat
26
+ * carries its own settings, but it is never a sampling parameter: Ollama takes
27
+ * it beside `options`, and the other providers take their own field entirely.
28
+ * This lifts it back out at the request boundary.
29
+ */
30
+ type WithoutThink<T> = T extends Record<string, unknown> ? Omit<T, 'think'> : T;
31
+ export declare function splitThinkingOption<T extends Record<string, unknown> | undefined>(options: T): {
32
+ think: ThinkingPreference | undefined;
33
+ options: WithoutThink<T>;
34
+ };
35
+ /**
36
+ * OpenAI-style reasoning effort. `true` means "think, but I have no opinion
37
+ * about how much", which is the middle setting. Anything unset, disabled, or
38
+ * unrecognized asks for nothing, so no reasoning field reaches the provider.
39
+ */
40
+ export declare function thinkingEffort(think: unknown): ThinkingLevel | undefined;
41
+ /** Reasoning token budget for the providers that take one. */
42
+ export declare function thinkingBudgetTokens(think: unknown): number | undefined;
43
+ /**
44
+ * A reply has to fit beside the reasoning it took: Anthropic rejects a budget
45
+ * that is not smaller than `max_tokens`, Gemini counts thinking against
46
+ * `maxOutputTokens`, and a budget that eats the whole allowance leaves the
47
+ * answer truncated.
48
+ */
49
+ export declare function maxTokensForBudget(maxTokens: number | undefined, budgetTokens: number): number;
50
+ /**
51
+ * Fit a thinking budget and an output ceiling together. An explicit user
52
+ * ceiling is respected by shrinking the budget into it rather than silently
53
+ * raising a cap the user chose; only a ceiling too small to hold any
54
+ * thinking at all is raised, and by the minimum that makes the request
55
+ * valid.
56
+ */
57
+ export declare function fitThinkingBudget(maxTokens: number | undefined, budgetTokens: number): {
58
+ maxTokens: number;
59
+ budgetTokens: number;
60
+ };
61
+ /**
62
+ * The only Ollama family that understands named thinking levels. Every other
63
+ * reasoning model takes `think` as a boolean, so a level from a chat that
64
+ * moved between models degrades to "on" instead of erroring.
65
+ */
66
+ export declare function ollamaSupportsThinkingLevels(model: string): boolean;
67
+ export {};
68
+ //# sourceMappingURL=thinkingOptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"thinkingOptions.d.ts","sourceRoot":"","sources":["../../src/utils/thinkingOptions.ts"],"names":[],"mappings":"AAiBA;;;;;;;;;;;GAWG;AAEH,eAAO,MAAM,eAAe,YAAI,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAU,CAAC;AAElE,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7D,+EAA+E;AAC/E,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,aAAa,CAAC;AAiBzD,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAKtE;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,OAAO,GACb,kBAAkB,GAAG,SAAS,CAMhC;AAED;;;;;GAKG;AACH,KAAK,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;AAEhF,wBAAgB,mBAAmB,CACjC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAE7C,OAAO,EAAE,CAAC,GACT;IACD,KAAK,EAAE,kBAAkB,GAAG,SAAS,CAAC;IACtC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;CAC1B,CAUA;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,aAAa,GAAG,SAAS,CAIxE;AAED,8DAA8D;AAC9D,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAGvE;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,YAAY,EAAE,MAAM,GACnB,MAAM,CAGR;AAKD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,YAAY,EAAE,MAAM,GACnB;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAmB7C;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEnE"}