llm-simple-router 0.11.15 → 0.11.16
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/dist/proxy/handler/failover-loop.js +16 -1
- package/dist/proxy/transform/stream-ant2resp.js +8 -0
- package/dist/proxy/transform/stream-bridge-chat2resp.js +8 -0
- package/frontend-dist/assets/{CardContent-CjG9la6t.js → CardContent-BcEfenjA.js} +1 -1
- package/frontend-dist/assets/{CardTitle-DLg3AzYe.js → CardTitle-DYZ1nEij.js} +1 -1
- package/frontend-dist/assets/{CascadingModelSelect-uI71MquC.js → CascadingModelSelect-DiQd2tqy.js} +1 -1
- package/frontend-dist/assets/{Checkbox-BN-RZ6gV.js → Checkbox-CD3gHguE.js} +1 -1
- package/frontend-dist/assets/{CollapsibleContent-1Jnv6xUL.js → CollapsibleContent-9VNHVOlr.js} +1 -1
- package/frontend-dist/assets/{CollapsibleTrigger-efrWnbjX.js → CollapsibleTrigger-URlpQe3s.js} +1 -1
- package/frontend-dist/assets/{Dashboard-CvOVaMuA.js → Dashboard-CCAizFnj.js} +1 -1
- package/frontend-dist/assets/{Input-B7SStAr9.js → Input-C36rtA88.js} +1 -1
- package/frontend-dist/assets/{Label-pcY5ONLi.js → Label-NlDnS0hh.js} +1 -1
- package/frontend-dist/assets/{Login-B7X1YFxm.js → Login-Oc8GGTzQ.js} +1 -1
- package/frontend-dist/assets/{Logs-DUS2AiMd.js → Logs-DfNY388O.js} +1 -1
- package/frontend-dist/assets/{MappingEntryEditor-trK_pdk8.js → MappingEntryEditor-DUddWrf3.js} +1 -1
- package/frontend-dist/assets/{ModelMappings-hXKpwXVH.js → ModelMappings-LvBOV4YM.js} +1 -1
- package/frontend-dist/assets/{Monitor-BYeg4vZ3.js → Monitor-CD8U-EC2.js} +1 -1
- package/frontend-dist/assets/{Providers-DTIpcRW3.js → Providers-D8xSq6JV.js} +1 -1
- package/frontend-dist/assets/{ProxyEnhancement-Cmti88q4.js → ProxyEnhancement-CtClv6Wk.js} +1 -1
- package/frontend-dist/assets/{QuickSetup-g860Hl8u.js → QuickSetup-CQbiLGW9.js} +1 -1
- package/frontend-dist/assets/{RetryRules-DZwp2UG4.js → RetryRules-ClmjahAR.js} +1 -1
- package/frontend-dist/assets/{RouterKeys-DfdjoM2L.js → RouterKeys-CtMpnDdC.js} +1 -1
- package/frontend-dist/assets/{RovingFocusItem-CPyYVYtN.js → RovingFocusItem-Ceje_lw7.js} +1 -1
- package/frontend-dist/assets/{Schedules-B7LliotC.js → Schedules-CwEoR9Dy.js} +1 -1
- package/frontend-dist/assets/{Settings-DIyvniYc.js → Settings-i77swjR_.js} +1 -1
- package/frontend-dist/assets/{Setup-C2737yJ7.js → Setup-kipvINSU.js} +1 -1
- package/frontend-dist/assets/{Switch-BlOIfUMO.js → Switch-DXezfRxm.js} +1 -1
- package/frontend-dist/assets/{TooltipTrigger-DF06pXkC.js → TooltipTrigger-B9CzWCMf.js} +1 -1
- package/frontend-dist/assets/{TransformRulesForm-DJZim24h.js → TransformRulesForm-DTTczTpW.js} +1 -1
- package/frontend-dist/assets/{UnifiedRequestDialog-BFHeYqYY.js → UnifiedRequestDialog-DMneXqW7.js} +1 -1
- package/frontend-dist/assets/{VisuallyHiddenInput-C8GAHZzN.js → VisuallyHiddenInput-DHPQNF7u.js} +1 -1
- package/frontend-dist/assets/{button-DsVDTV_5.js → button-TLLNRbZD.js} +2 -2
- package/frontend-dist/assets/{copy-B9-1OTfs.js → copy-Cf6sB2Lf.js} +1 -1
- package/frontend-dist/assets/{dialog-C3OF45pf.js → dialog-BE-rQIBC.js} +1 -1
- package/frontend-dist/assets/{index-DVY081yH.js → index-Ddp1uc7O.js} +2 -2
- package/frontend-dist/assets/{model-patches-D7N5lB_e.js → model-patches-D5zh4Loe.js} +1 -1
- package/frontend-dist/assets/{sparkles-BPDHpMYW.js → sparkles-B4QXJ2mW.js} +1 -1
- package/frontend-dist/assets/{trash-2-DmnTuMRP.js → trash-2-BA4iW5la.js} +1 -1
- package/frontend-dist/assets/{useClipboard-DTVDIfen.js → useClipboard-BKh8GbsP.js} +1 -1
- package/frontend-dist/assets/{useLogRetention-Dz4ZFJD0.js → useLogRetention-B_NLcgPw.js} +1 -1
- package/frontend-dist/index.html +2 -2
- package/package.json +1 -1
|
@@ -230,7 +230,22 @@ export async function executeFailoverLoop(ctx, errors, deps, upstreamPath, adapt
|
|
|
230
230
|
rCtx.mappingReason = effectiveMappingReason;
|
|
231
231
|
const provider = getProviderById(db, resolved.provider_id);
|
|
232
232
|
if (!provider || !provider.is_active) {
|
|
233
|
-
|
|
233
|
+
lastFailoverTrigger = "provider_unavailable";
|
|
234
|
+
insertRejectedLog({
|
|
235
|
+
db, logId, apiType: clientApiType,
|
|
236
|
+
model: clientModel, statusCode: 503,
|
|
237
|
+
errorMessage: `Provider '${resolved.provider_id}' unavailable`,
|
|
238
|
+
startTime, isStream, routerKeyId,
|
|
239
|
+
originalBody: rawBody, clientHeaders: cliHdrs,
|
|
240
|
+
providerId: resolved.provider_id, originalModel: null,
|
|
241
|
+
isFailover: isFailoverIteration, originalRequestId: isFailoverIteration ? rootLogId : null,
|
|
242
|
+
sessionId: ctx.metadata.get("session_id"),
|
|
243
|
+
pipelineSnapshot: iterationSnapshot.toJSON(),
|
|
244
|
+
matcher, logFileWriter,
|
|
245
|
+
mapping_reason: rCtx.mappingReason ?? null,
|
|
246
|
+
});
|
|
247
|
+
excludeTargets.push(resolved);
|
|
248
|
+
continue;
|
|
234
249
|
}
|
|
235
250
|
// 当前迭代的工具错误刷新闭包(统一 6 处调用)
|
|
236
251
|
const flushCurrentErrors = () => flushToolErrors(provider.id, resolved.backend_model ?? clientModel, logId);
|
|
@@ -92,6 +92,7 @@ export class AnthropicToResponsesTransform extends BaseSSETransform {
|
|
|
92
92
|
type: RESPONSES_SSE_EVENTS.REASONING_SUMMARY_PART_ADDED,
|
|
93
93
|
output_index: this.outputIndex,
|
|
94
94
|
summary_index: 0,
|
|
95
|
+
item_id: this.currentItemId,
|
|
95
96
|
part: { type: "summary_text", text: "" },
|
|
96
97
|
sequence_number: this.nextSeq(),
|
|
97
98
|
});
|
|
@@ -111,6 +112,7 @@ export class AnthropicToResponsesTransform extends BaseSSETransform {
|
|
|
111
112
|
type: RESPONSES_SSE_EVENTS.CONTENT_PART_ADDED,
|
|
112
113
|
output_index: this.outputIndex,
|
|
113
114
|
content_index: 0,
|
|
115
|
+
item_id: this.currentItemId,
|
|
114
116
|
part: { type: "output_text", text: "", annotations: [] },
|
|
115
117
|
sequence_number: this.nextSeq(),
|
|
116
118
|
});
|
|
@@ -153,6 +155,7 @@ export class AnthropicToResponsesTransform extends BaseSSETransform {
|
|
|
153
155
|
type: RESPONSES_SSE_EVENTS.REASONING_SUMMARY_TEXT_DELTA,
|
|
154
156
|
output_index: this.outputIndex,
|
|
155
157
|
summary_index: 0,
|
|
158
|
+
item_id: this.currentItemId,
|
|
156
159
|
delta: thinking,
|
|
157
160
|
sequence_number: this.nextSeq(),
|
|
158
161
|
});
|
|
@@ -166,6 +169,7 @@ export class AnthropicToResponsesTransform extends BaseSSETransform {
|
|
|
166
169
|
type: RESPONSES_SSE_EVENTS.OUTPUT_TEXT_DELTA,
|
|
167
170
|
output_index: this.outputIndex,
|
|
168
171
|
content_index: 0,
|
|
172
|
+
item_id: this.currentItemId,
|
|
169
173
|
delta: text,
|
|
170
174
|
sequence_number: this.nextSeq(),
|
|
171
175
|
});
|
|
@@ -197,6 +201,7 @@ export class AnthropicToResponsesTransform extends BaseSSETransform {
|
|
|
197
201
|
type: RESPONSES_SSE_EVENTS.REASONING_SUMMARY_TEXT_DONE,
|
|
198
202
|
output_index: this.outputIndex,
|
|
199
203
|
summary_index: 0,
|
|
204
|
+
item_id: this.currentItemId,
|
|
200
205
|
text,
|
|
201
206
|
sequence_number: this.nextSeq(),
|
|
202
207
|
});
|
|
@@ -204,6 +209,7 @@ export class AnthropicToResponsesTransform extends BaseSSETransform {
|
|
|
204
209
|
type: RESPONSES_SSE_EVENTS.REASONING_SUMMARY_PART_DONE,
|
|
205
210
|
output_index: this.outputIndex,
|
|
206
211
|
summary_index: 0,
|
|
212
|
+
item_id: this.currentItemId,
|
|
207
213
|
part: { type: "summary_text", text },
|
|
208
214
|
sequence_number: this.nextSeq(),
|
|
209
215
|
});
|
|
@@ -222,6 +228,7 @@ export class AnthropicToResponsesTransform extends BaseSSETransform {
|
|
|
222
228
|
type: RESPONSES_SSE_EVENTS.OUTPUT_TEXT_DONE,
|
|
223
229
|
output_index: this.outputIndex,
|
|
224
230
|
content_index: 0,
|
|
231
|
+
item_id: this.currentItemId,
|
|
225
232
|
text,
|
|
226
233
|
sequence_number: this.nextSeq(),
|
|
227
234
|
});
|
|
@@ -229,6 +236,7 @@ export class AnthropicToResponsesTransform extends BaseSSETransform {
|
|
|
229
236
|
type: RESPONSES_SSE_EVENTS.CONTENT_PART_DONE,
|
|
230
237
|
output_index: this.outputIndex,
|
|
231
238
|
content_index: 0,
|
|
239
|
+
item_id: this.currentItemId,
|
|
232
240
|
part: { type: "output_text", text, annotations: [] },
|
|
233
241
|
sequence_number: this.nextSeq(),
|
|
234
242
|
});
|
|
@@ -69,6 +69,7 @@ export class ChatToResponsesBridgeTransform extends BaseSSETransform {
|
|
|
69
69
|
type: RESPONSES_SSE_EVENTS.OUTPUT_TEXT_DONE,
|
|
70
70
|
output_index: this.outputIndex,
|
|
71
71
|
content_index: this.contentIndex,
|
|
72
|
+
item_id: this.currentMessageItemId,
|
|
72
73
|
text: this.textBuffer,
|
|
73
74
|
sequence_number: this.nextSeq(),
|
|
74
75
|
});
|
|
@@ -76,6 +77,7 @@ export class ChatToResponsesBridgeTransform extends BaseSSETransform {
|
|
|
76
77
|
type: RESPONSES_SSE_EVENTS.CONTENT_PART_DONE,
|
|
77
78
|
output_index: this.outputIndex,
|
|
78
79
|
content_index: this.contentIndex,
|
|
80
|
+
item_id: this.currentMessageItemId,
|
|
79
81
|
part: { type: "output_text", text: this.textBuffer, annotations: [] },
|
|
80
82
|
sequence_number: this.nextSeq(),
|
|
81
83
|
});
|
|
@@ -111,6 +113,7 @@ export class ChatToResponsesBridgeTransform extends BaseSSETransform {
|
|
|
111
113
|
type: RESPONSES_SSE_EVENTS.REASONING_SUMMARY_TEXT_DONE,
|
|
112
114
|
output_index: this.outputIndex,
|
|
113
115
|
summary_index: 0,
|
|
116
|
+
item_id: this.currentReasoningItemId,
|
|
114
117
|
text: this.reasoningBuffer,
|
|
115
118
|
sequence_number: this.nextSeq(),
|
|
116
119
|
});
|
|
@@ -118,6 +121,7 @@ export class ChatToResponsesBridgeTransform extends BaseSSETransform {
|
|
|
118
121
|
type: RESPONSES_SSE_EVENTS.REASONING_SUMMARY_PART_DONE,
|
|
119
122
|
output_index: this.outputIndex,
|
|
120
123
|
summary_index: 0,
|
|
124
|
+
item_id: this.currentReasoningItemId,
|
|
121
125
|
part: { type: "summary_text", text: this.reasoningBuffer },
|
|
122
126
|
sequence_number: this.nextSeq(),
|
|
123
127
|
});
|
|
@@ -264,6 +268,7 @@ export class ChatToResponsesBridgeTransform extends BaseSSETransform {
|
|
|
264
268
|
type: RESPONSES_SSE_EVENTS.REASONING_SUMMARY_PART_ADDED,
|
|
265
269
|
output_index: this.outputIndex,
|
|
266
270
|
summary_index: 0,
|
|
271
|
+
item_id: this.currentReasoningItemId,
|
|
267
272
|
part: { type: "summary_text", text: "" },
|
|
268
273
|
sequence_number: this.nextSeq(),
|
|
269
274
|
});
|
|
@@ -272,6 +277,7 @@ export class ChatToResponsesBridgeTransform extends BaseSSETransform {
|
|
|
272
277
|
type: RESPONSES_SSE_EVENTS.REASONING_SUMMARY_TEXT_DELTA,
|
|
273
278
|
output_index: this.outputIndex,
|
|
274
279
|
summary_index: 0,
|
|
280
|
+
item_id: this.currentReasoningItemId,
|
|
275
281
|
delta: delta.reasoning_content,
|
|
276
282
|
sequence_number: this.nextSeq(),
|
|
277
283
|
});
|
|
@@ -306,6 +312,7 @@ export class ChatToResponsesBridgeTransform extends BaseSSETransform {
|
|
|
306
312
|
type: RESPONSES_SSE_EVENTS.CONTENT_PART_ADDED,
|
|
307
313
|
output_index: this.outputIndex,
|
|
308
314
|
content_index: this.contentIndex,
|
|
315
|
+
item_id: this.currentMessageItemId,
|
|
309
316
|
part: { type: "output_text", text: "", annotations: [] },
|
|
310
317
|
sequence_number: this.nextSeq(),
|
|
311
318
|
});
|
|
@@ -314,6 +321,7 @@ export class ChatToResponsesBridgeTransform extends BaseSSETransform {
|
|
|
314
321
|
type: RESPONSES_SSE_EVENTS.OUTPUT_TEXT_DELTA,
|
|
315
322
|
output_index: this.outputIndex,
|
|
316
323
|
content_index: this.contentIndex,
|
|
324
|
+
item_id: this.currentMessageItemId,
|
|
317
325
|
delta: delta.content,
|
|
318
326
|
sequence_number: this.nextSeq(),
|
|
319
327
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Gt as e,et as t,gt as n,it as r,qt as i,r as a,yt as o}from"./button-
|
|
1
|
+
import{Gt as e,et as t,gt as n,it as r,qt as i,r as a,yt as o}from"./button-TLLNRbZD.js";var s=[`data-size`],c=r({__name:`Card`,props:{class:{type:[Boolean,null,String,Object,Array]},size:{default:`default`}},setup(r){let c=r;return(l,u)=>(n(),t(`div`,{"data-slot":`card`,"data-size":r.size,class:i(e(a)(`ring-foreground/10 bg-card text-card-foreground gap-4 overflow-hidden rounded-lg py-4 text-sm ring-1 has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:gap-3 data-[size=sm]:py-3 data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-lg *:[img:last-child]:rounded-b-lg group/card flex flex-col`,c.class))},[o(l.$slots,`default`)],10,s))}}),l=r({__name:`CardContent`,props:{class:{type:[Boolean,null,String,Object,Array]}},setup(r){let s=r;return(r,c)=>(n(),t(`div`,{"data-slot":`card-content`,class:i(e(a)(`px-4 group-data-[size=sm]/card:px-3`,s.class))},[o(r.$slots,`default`)],2))}});export{c as n,l as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Gt as e,et as t,gt as n,it as r,qt as i,r as a,yt as o}from"./button-
|
|
1
|
+
import{Gt as e,et as t,gt as n,it as r,qt as i,r as a,yt as o}from"./button-TLLNRbZD.js";var s=r({__name:`CardHeader`,props:{class:{type:[Boolean,null,String,Object,Array]}},setup(r){let s=r;return(r,c)=>(n(),t(`div`,{"data-slot":`card-header`,class:i(e(a)(`gap-1 rounded-t-xl px-4 group-data-[size=sm]/card:px-3 [.border-b]:pb-4 group-data-[size=sm]/card:[.border-b]:pb-3 group/card-header @container/card-header grid auto-rows-min items-start has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto]`,s.class))},[o(r.$slots,`default`)],2))}}),c=r({__name:`CardTitle`,props:{class:{type:[Boolean,null,String,Object,Array]}},setup(r){let s=r;return(r,c)=>(n(),t(`div`,{"data-slot":`card-title`,class:i(e(a)(`text-base leading-snug font-medium group-data-[size=sm]/card:text-sm cn-font-heading`,s.class))},[o(r.$slots,`default`)],2))}});export{s as n,c as t};
|
package/frontend-dist/assets/{CascadingModelSelect-uI71MquC.js → CascadingModelSelect-DiQd2tqy.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$ as e,Gt as t,H as n,J as r,L as i,Lt as a,Q as o,X as s,Xt as c,Z as l,et as u,gt as d,it as f,kt as p,qt as m,rt as h,vt as g}from"./button-
|
|
1
|
+
import{$ as e,Gt as t,H as n,J as r,L as i,Lt as a,Q as o,X as s,Xt as c,Z as l,et as u,gt as d,it as f,kt as p,qt as m,rt as h,vt as g}from"./button-TLLNRbZD.js";import{b as _,ft as v,ht as y,v as b,y as x}from"./index-Ddp1uc7O.js";var S=i(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]),C=i(`plus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]),w=[`onMouseenter`],T={class:`truncate max-w-40`},E={key:0,class:`ml-1 text-[10px] px-1 py-px rounded bg-emerald-500/15 text-emerald-400 shrink-0`},D=[`onMouseenter`],O=[`onClick`],k={class:`truncate`},A={key:0,class:`shrink-0 text-xs text-muted-foreground`},j={key:0,class:`px-2 py-1.5 text-sm text-muted-foreground`},M=f({__name:`CascadingSelect`,props:{groups:{},modelValue:{},placeholder:{default:``},compact:{type:Boolean,default:!1}},emits:[`update:modelValue`],setup(i,{emit:f}){let{t:y}=n(),C=i,M=s(()=>C.placeholder||y(`common.selectPlaceholder`)),N=f,P=a(!1),F=a(null),I=s(()=>{if(!C.modelValue)return``;let e=C.groups.find(e=>e.key===C.modelValue.groupKey);if(!e)return``;let t=e.options.find(e=>e.value===C.modelValue.value);return t?`${e.label} / ${t.label}`:``});function L(e,t){N(`update:modelValue`,{groupKey:e,value:t}),P.value=!1}function R(e){P.value=e,e||(F.value=null)}return(n,a)=>(d(),o(t(_),{open:P.value,"onUpdate:open":R},{default:p(()=>[h(t(b),{"as-child":``},{default:p(()=>[l(`div`,{class:m([`flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background cursor-pointer hover:bg-accent hover:text-accent-foreground`,[i.compact?`h-8 text-xs px-2.5 py-1`:`h-10 text-sm px-3 py-2`,{"ring-2 ring-ring ring-offset-2":P.value}]])},[l(`span`,{class:m([`truncate`,i.modelValue?`text-foreground`:`text-muted-foreground`])},c(I.value||M.value),3),h(t(v),{class:`h-4 w-4 shrink-0 opacity-50`})],2)]),_:1}),h(t(x),{align:`start`,"side-offset":4,class:`z-[200] w-auto min-w-56 overflow-visible p-1`},{default:p(()=>[(d(!0),u(r,null,g(i.groups,n=>(d(),u(`div`,{key:n.key,class:m([`relative flex cursor-pointer items-center justify-between rounded-sm px-2 py-1.5 text-sm hover:bg-accent hover:text-accent-foreground`,{"bg-accent text-accent-foreground z-10":F.value===n.key}]),onMouseenter:e=>F.value=n.key},[l(`span`,T,c(n.label),1),n.badge?(d(),u(`span`,E,c(n.badge),1)):e(``,!0),h(t(S),{class:`ml-1 h-4 w-4 shrink-0 opacity-50`}),F.value===n.key&&n.options.length>0?(d(),u(`div`,{key:1,class:`absolute left-full top-0 ml-0.5 min-w-48 rounded-md border bg-popover p-1 text-popover-foreground shadow-md`,onMouseenter:e=>F.value=n.key},[(d(!0),u(r,null,g(n.options,t=>(d(),u(`div`,{key:t.value,class:m([`flex cursor-pointer items-center justify-between gap-2 rounded-sm px-2 py-1.5 text-sm hover:bg-accent hover:text-accent-foreground`,{"bg-accent text-accent-foreground":i.modelValue?.groupKey===n.key&&i.modelValue?.value===t.value}]),onClick:e=>L(n.key,t.value)},[l(`span`,k,c(t.label),1),t.tag?(d(),u(`span`,A,c(t.tag),1)):e(``,!0)],10,O))),128))],40,D)):e(``,!0)],42,w))),128)),i.groups.length===0?(d(),u(`div`,j,c(t(y)(`common.noOptions`)),1)):e(``,!0)]),_:1})]),_:1},8,[`open`]))}}),N=f({__name:`CascadingModelSelect`,props:{providers:{},modelValue:{},placeholder:{default:``},compact:{type:Boolean}},emits:[`update:modelValue`],setup(e,{emit:t}){let{t:r}=n(),i=e,a=s(()=>i.placeholder||r(`mappings.selectProviderModel`)),c=t,l=s(()=>i.providers.map(e=>({key:e.provider.id,label:e.provider.name,badge:e.isNew?r(`common.new`):void 0,options:e.models.map(e=>({value:e.name,label:e.name,tag:y(e.contextWindow)}))}))),u=s(()=>i.modelValue?{groupKey:i.modelValue.provider_id,value:i.modelValue.model}:void 0);function f(e){c(`update:modelValue`,{provider_id:e.groupKey,model:e.value})}return(t,n)=>(d(),o(M,{groups:l.value,"model-value":u.value,placeholder:a.value,compact:e.compact,"onUpdate:modelValue":f},null,8,[`groups`,`model-value`,`placeholder`,`compact`]))}});export{C as n,N as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$ as e,Gt as t,Jt as n,K as r,Q as i,X as a,dt as o,gt as s,i as c,it as l,kt as u,m as d,o as f,ot as p,q as m,r as h,rt as g,x as _,xt as v,yt as y}from"./button-
|
|
1
|
+
import{$ as e,Gt as t,Jt as n,K as r,Q as i,X as a,dt as o,gt as s,i as c,it as l,kt as u,m as d,o as f,ot as p,q as m,r as h,rt as g,x as _,xt as v,yt as y}from"./button-TLLNRbZD.js";import{t as b}from"./VisuallyHiddenInput-DHPQNF7u.js";import{t as x}from"./RovingFocusItem-Ceje_lw7.js";import{J as S,K as C,R as w,U as T,V as E,X as D,pt as O}from"./index-Ddp1uc7O.js";function k(e,t){return C(e)?!1:Array.isArray(e)?e.some(e=>D(e,t)):D(e,t)}var[A,j]=S(`CheckboxGroupRoot`);function M(e){return e===`indeterminate`}function N(e){return M(e)?`indeterminate`:e?`checked`:`unchecked`}var[P,F]=S(`CheckboxRoot`),I=l({inheritAttrs:!1,__name:`CheckboxRoot`,props:{defaultValue:{type:null,required:!1},modelValue:{type:null,required:!1,default:void 0},disabled:{type:Boolean,required:!1},value:{type:null,required:!1,default:`on`},id:{type:String,required:!1},trueValue:{type:null,required:!1,default:()=>!0},falseValue:{type:null,required:!1,default:()=>!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`},name:{type:String,required:!1},required:{type:Boolean,required:!1}},emits:[`update:modelValue`],setup(n,{emit:l}){let p=n,h=l,{forwardRef:g,currentElement:_}=f(),S=A(null),w=d(p,`modelValue`,h,{defaultValue:p.defaultValue??p.falseValue,passive:p.modelValue===void 0}),E=a(()=>S?.disabled.value||p.disabled),O=a(()=>D(w.value,p.trueValue)),j=a(()=>C(S?.modelValue.value)?w.value===`indeterminate`?`indeterminate`:O.value:k(S.modelValue.value,p.value));function P(){if(C(S?.modelValue.value))w.value===`indeterminate`?w.value=p.trueValue:w.value=O.value?p.falseValue:p.trueValue;else{let e=[...S.modelValue.value||[]];if(k(e,p.value)){let t=e.findIndex(e=>D(e,p.value));e.splice(t,1)}else e.push(p.value);S.modelValue.value=e}}let I=T(_),L=a(()=>p.id&&_.value?document.querySelector(`[for="${p.id}"]`)?.innerText:void 0);return F({disabled:E,state:j}),(n,a)=>(s(),i(v(t(S)?.rovingFocus.value?t(x):t(c)),o(n.$attrs,{id:n.id,ref:t(g),role:`checkbox`,"as-child":n.asChild,as:n.as,type:n.as===`button`?`button`:void 0,"aria-checked":t(M)(j.value)?`mixed`:j.value,"aria-required":n.required,"aria-label":n.$attrs[`aria-label`]||L.value,"data-state":t(N)(j.value),"data-disabled":E.value?``:void 0,disabled:E.value,focusable:t(S)?.rovingFocus.value?!E.value:void 0,onKeydown:r(m(()=>{},[`prevent`]),[`enter`]),onClick:P}),{default:u(()=>[y(n.$slots,`default`,{modelValue:t(w),state:j.value}),t(I)&&n.name&&!t(S)?(s(),i(t(b),{key:0,type:`checkbox`,checked:!!j.value,name:n.name,value:n.value,disabled:E.value,required:n.required},null,8,[`checked`,`name`,`value`,`disabled`,`required`])):e(`v-if`,!0)]),_:3},16,[`id`,`as-child`,`as`,`type`,`aria-checked`,`aria-required`,`aria-label`,`data-state`,`data-disabled`,`disabled`,`focusable`,`onKeydown`]))}}),L=l({__name:`CheckboxIndicator`,props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`span`}},setup(e){let{forwardRef:n}=f(),r=P();return(e,a)=>(s(),i(t(w),{present:e.forceMount||t(M)(t(r).state.value)||t(r).state.value===!0},{default:u(()=>[g(t(c),o({ref:t(n),"data-state":t(N)(t(r).state.value),"data-disabled":t(r).disabled.value?``:void 0,style:{pointerEvents:`none`},"as-child":e.asChild,as:e.as},e.$attrs),{default:u(()=>[y(e.$slots,`default`)]),_:3},16,[`data-state`,`data-disabled`,`as-child`,`as`])]),_:3},8,[`present`]))}}),R=l({__name:`Checkbox`,props:{defaultValue:{},modelValue:{},disabled:{type:Boolean},value:{},id:{},trueValue:{},falseValue:{},asChild:{type:Boolean},as:{},name:{},required:{type:Boolean},class:{type:[Boolean,null,String,Object,Array]}},emits:[`update:modelValue`],setup(e,{emit:r}){let a=e,c=r,l=E(_(a,`class`),c);return(e,r)=>(s(),i(t(I),o({"data-slot":`checkbox`},t(l),{class:t(h)(`border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary aria-invalid:aria-checked:border-primary aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 flex size-4 items-center justify-center rounded-md border transition-colors group-has-disabled/field:opacity-50 focus-visible:ring-3 aria-invalid:ring-3 peer relative shrink-0 outline-none after:absolute after:-inset-x-3 after:-inset-y-2 disabled:cursor-not-allowed disabled:opacity-50`,a.class)}),{default:u(r=>[g(t(L),{"data-slot":`checkbox-indicator`,class:`[&>svg]:size-3.5 grid place-content-center text-current transition-none`},{default:u(()=>[y(e.$slots,`default`,n(p(r)),()=>[g(t(O))])]),_:2},1024)]),_:3},16,[`class`]))}});export{R as t};
|
package/frontend-dist/assets/{CollapsibleContent-1Jnv6xUL.js → CollapsibleContent-9VNHVOlr.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$ as e,Et as t,Gt as n,Ht as r,Jt as i,Lt as a,Q as o,X as s,d as c,dt as l,ft as u,gt as d,i as f,it as p,kt as m,m as h,mt as g,o as _,ot as v,rt as y,yt as b}from"./button-
|
|
1
|
+
import{$ as e,Et as t,Gt as n,Ht as r,Jt as i,Lt as a,Q as o,X as s,d as c,dt as l,ft as u,gt as d,i as f,it as p,kt as m,m as h,mt as g,o as _,ot as v,rt as y,yt as b}from"./button-TLLNRbZD.js";import{B as x,J as S,R as C,V as w}from"./index-Ddp1uc7O.js";var[T,E]=S(`CollapsibleRoot`),D=p({__name:`CollapsibleRoot`,props:{defaultOpen:{type:Boolean,required:!1,default:!1},open:{type:Boolean,required:!1,default:void 0},disabled:{type:Boolean,required:!1},unmountOnHide:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`update:open`],setup(e,{expose:t,emit:i}){let a=e,s=h(a,`open`,i,{defaultValue:a.defaultOpen,passive:a.open===void 0}),{disabled:c,unmountOnHide:l}=r(a);return E({contentId:``,disabled:c,open:s,unmountOnHide:l,onOpenToggle:()=>{c.value||(s.value=!s.value)}}),t({open:s}),_(),(e,t)=>(d(),o(n(f),{as:e.as,"as-child":a.asChild,"data-state":n(s)?`open`:`closed`,"data-disabled":n(c)?``:void 0},{default:m(()=>[b(e.$slots,`default`,{open:n(s)})]),_:3},8,[`as`,`as-child`,`data-state`,`data-disabled`]))}}),O=p({inheritAttrs:!1,__name:`CollapsibleContent`,props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`contentFound`],setup(r,{emit:i}){let p=r,h=i,v=T();v.contentId||=x(void 0,`reka-collapsible-content`);let S=a(),{forwardRef:w,currentElement:E}=_(),D=a(0),O=a(0),k=s(()=>v.open.value),A=a(k.value),j=a();t(()=>[k.value,S.value?.present],async()=>{await u();let e=E.value;if(!e)return;j.value=j.value||{transitionDuration:e.style.transitionDuration,animationName:e.style.animationName},e.style.transitionDuration=`0s`,e.style.animationName=`none`;let t=e.getBoundingClientRect();O.value=t.height,D.value=t.width,A.value||(e.style.transitionDuration=j.value.transitionDuration,e.style.animationName=j.value.animationName)},{immediate:!0});let M=s(()=>A.value&&v.open.value);return g(()=>{requestAnimationFrame(()=>{A.value=!1})}),c(E,`beforematch`,e=>{requestAnimationFrame(()=>{v.onOpenToggle(),h(`contentFound`)})}),(t,r)=>(d(),o(n(C),{ref_key:`presentRef`,ref:S,present:t.forceMount||n(v).open.value,"force-mount":!0},{default:m(({present:r})=>[y(n(f),l(t.$attrs,{id:n(v).contentId,ref:n(w),"as-child":p.asChild,as:t.as,hidden:r?void 0:n(v).unmountOnHide.value?``:`until-found`,"data-state":M.value?void 0:n(v).open.value?`open`:`closed`,"data-disabled":n(v).disabled?.value?``:void 0,style:{"--reka-collapsible-content-height":`${O.value}px`,"--reka-collapsible-content-width":`${D.value}px`}}),{default:m(()=>[!n(v).unmountOnHide.value||r?b(t.$slots,`default`,{key:0}):e(`v-if`,!0)]),_:2},1040,[`id`,`as-child`,`as`,`hidden`,`data-state`,`data-disabled`,`style`])]),_:3},8,[`present`]))}}),k=p({__name:`Collapsible`,props:{defaultOpen:{type:Boolean},open:{type:Boolean},disabled:{type:Boolean},unmountOnHide:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`update:open`],setup(e,{emit:t}){let r=w(e,t);return(e,t)=>(d(),o(n(D),l({"data-slot":`collapsible`},n(r)),{default:m(t=>[b(e.$slots,`default`,i(v(t)))]),_:3},16))}}),A=p({__name:`CollapsibleContent`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,r)=>(d(),o(n(O),l({"data-slot":`collapsible-content`},t),{default:m(()=>[b(e.$slots,`default`)]),_:3},16))}});export{k as n,T as r,A as t};
|
package/frontend-dist/assets/{CollapsibleTrigger-efrWnbjX.js → CollapsibleTrigger-URlpQe3s.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Gt as e,Q as t,dt as n,gt as r,i,it as a,kt as o,o as s,yt as c}from"./button-
|
|
1
|
+
import{Gt as e,Q as t,dt as n,gt as r,i,it as a,kt as o,o as s,yt as c}from"./button-TLLNRbZD.js";import{r as l}from"./CollapsibleContent-9VNHVOlr.js";var u=a({__name:`CollapsibleTrigger`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(n){let a=n;s();let u=l();return(n,s)=>(r(),t(e(i),{type:n.as===`button`?`button`:void 0,as:n.as,"as-child":a.asChild,"aria-controls":e(u).contentId,"aria-expanded":e(u).open.value,"data-state":e(u).open.value?`open`:`closed`,"data-disabled":e(u).disabled?.value?``:void 0,disabled:e(u).disabled?.value,onClick:e(u).onOpenToggle},{default:o(()=>[c(n.$slots,`default`)]),_:3},8,[`type`,`as`,`as-child`,`aria-controls`,`aria-expanded`,`data-state`,`data-disabled`,`disabled`,`onClick`]))}}),d=a({__name:`CollapsibleTrigger`,props:{asChild:{type:Boolean},as:{}},setup(i){let a=i;return(i,s)=>(r(),t(e(u),n({"data-slot":`collapsible-trigger`},a),{default:o(()=>[c(i.$slots,`default`)]),_:3},16))}});export{d as t};
|