@kitn.ai/ui 0.29.0 → 0.31.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 +11 -7
- package/dist/{Icon-DObhsRtm.js → Icon-DJDuE_-x.js} +1 -1
- package/dist/action-icons-xkBBVKkF.js +1 -0
- package/dist/agent-tooling/construct/schema-url.d.ts +9 -0
- package/dist/agent-tooling/construct/schema.d.ts +76 -1
- package/dist/agent-tooling/construct/templates.d.ts +45 -0
- package/dist/arrow-down-DU6wOl-h.js +1 -0
- package/dist/arrow-left-DD46kN17.js +1 -0
- package/dist/artifact-DoUAr1Fd.js +1 -0
- package/dist/assets/dev-DwzHsqYD.js +553 -0
- package/dist/{attachments-Qr4kg-2b.js → attachments-BLWPDiLH.js} +1 -1
- package/dist/{audio-visualizer-DToYdfSc.js → audio-visualizer-DhHicYvV.js} +1 -1
- package/dist/{badge-CdEu_jn2.js → badge-BGm7pcwi.js} +1 -1
- package/dist/{bell-DQAAOpDz.js → bell-CMEdSo7A.js} +1 -1
- package/dist/builder-app/App.d.ts +1 -0
- package/dist/builder-app/edit-guard.d.ts +8 -0
- package/dist/builder-app/main.d.ts +0 -0
- package/dist/builder-page/assets/index-C10OF-ur.js +72 -0
- package/dist/builder-page/assets/index-CFyKLBlu.css +1 -0
- package/dist/builder-page/index.html +20 -0
- package/dist/button-BM0YTTDQ.js +1 -0
- package/dist/{card-renderer-Jx70m6_l.js → card-renderer-Ds-wXc6_.js} +1 -1
- package/dist/check-BG1VfYjm.js +1 -0
- package/dist/{checkbox-group-B2_rpoPM.js → checkbox-group-CqXj8ehz.js} +1 -1
- package/dist/{checkbox-D7iRB3nL.js → checkbox-np_5mKxM.js} +1 -1
- package/dist/chevron-down-CZ4W0hy6.js +1 -0
- package/dist/chevron-right-5gdxkCTF.js +1 -0
- package/dist/{choice-card-m0BYqqOK.js → choice-card-BYBmPAT5.js} +1 -1
- package/dist/circle-C0lwjD2A.js +1 -0
- package/dist/circle-check-BfT1cxQU.js +1 -0
- package/dist/{circle-x-BPG0iPst.js → circle-x-DzUfvRqr.js} +1 -1
- package/dist/{code-block-ClMLKb7C.js → code-block-H6E5Eurc.js} +1 -1
- package/dist/{collapsible-B4DlWicL.js → collapsible-CBq1Tj6y.js} +1 -1
- package/dist/components/builder-composer-triggers.d.ts +62 -0
- package/dist/components/builder-layout.d.ts +54 -0
- package/dist/components/builder-message-actions.d.ts +63 -0
- package/dist/components/builder-panel-derived.d.ts +18 -0
- package/dist/components/builder-panel.d.ts +240 -0
- package/dist/components/builder-preview.d.ts +11 -0
- package/dist/components/builder-shell-controls.d.ts +69 -0
- package/dist/components/builder-skeleton.d.ts +58 -0
- package/dist/components/builder-start.d.ts +79 -0
- package/dist/components/builder-workspace-variants.d.ts +23 -0
- package/dist/components/captions.d.ts +66 -0
- package/dist/components/chat-thread.d.ts +27 -1
- package/dist/components/construct-form-paths.d.ts +54 -0
- package/dist/components/message.d.ts +5 -0
- package/dist/{composer-sQ0HcvyG.js → composer-B5IvgxAF.js} +1 -1
- package/dist/{confirm-card-rQWDQsnC.js → confirm-card-B63pZIfG.js} +1 -1
- package/dist/construct-cli.es.js +469 -125
- package/dist/construct-templates.d.ts +5 -0
- package/dist/construct-templates.js +266 -0
- package/dist/construct.js +269 -86
- package/dist/{context-0kg4ZX1J.js → context-Byqor78j.js} +1 -1
- package/dist/controllable-C4BSt73s.js +1 -0
- package/dist/{conversation-item-BxwQLaFJ.js → conversation-item-piXZFRWa.js} +1 -1
- package/dist/{conversation-list-BCfGN1JU.js → conversation-list-B5yu9cPg.js} +1 -1
- package/dist/{copy-n9u9rqpi.js → copy-DfI2NYEX.js} +1 -1
- package/dist/{create-tween-uPkArjIG.js → create-tween-C4j96_Aj.js} +1 -1
- package/dist/{create-tween-C-q-JCM-.js → create-tween-CHleHI8m.js} +1 -1
- package/dist/{create-tween-CRrJXxBd.js → create-tween-DQ6lOhdl.js} +1 -1
- package/dist/{create-tween-DZ3RRDHD.js → create-tween-DyjTgkJi.js} +1 -1
- package/dist/custom-elements.json +40 -5
- package/dist/{default-input-CaMrJkgH.js → default-input-Bwmt8Lai.js} +1 -1
- package/dist/define-B3OpsIDE.js +1 -0
- package/dist/define.js +41 -41
- package/dist/define.server.js +46 -46
- package/dist/{disclosure-WUImBbDv.js → disclosure-ZSAlD4wg.js} +1 -1
- package/dist/{dropdown-wZVeJOMd.js → dropdown-CSRhiMN2.js} +1 -1
- package/dist/elements/agent-card.js +1 -1
- package/dist/elements/artifact.js +1 -1
- package/dist/elements/attachments.js +1 -1
- package/dist/elements/audio-visualizer.js +1 -1
- package/dist/elements/avatar.js +1 -1
- package/dist/elements/badge.js +1 -1
- package/dist/elements/button.js +1 -1
- package/dist/elements/card.js +1 -1
- package/dist/elements/cards.js +1 -1
- package/dist/elements/chain-of-thought.js +1 -1
- package/dist/elements/chat-actions.d.ts +12 -0
- package/dist/elements/chat-scope-picker.js +1 -1
- package/dist/elements/chat-types.d.ts +7 -2
- package/dist/elements/chat-workspace.js +1 -1
- package/dist/elements/chat.js +1 -1
- package/dist/elements/checkbox-group.js +1 -1
- package/dist/elements/checkbox.js +1 -1
- package/dist/elements/checkpoint.js +1 -1
- package/dist/elements/choice.js +1 -1
- package/dist/elements/coachmark.js +1 -1
- package/dist/elements/code-block.js +1 -1
- package/dist/elements/command.js +1 -1
- package/dist/elements/compare.js +1 -1
- package/dist/elements/composer.js +1 -1
- package/dist/elements/confirm-card.js +1 -1
- package/dist/elements/context-meter.js +1 -1
- package/dist/elements/conversation-item.js +1 -1
- package/dist/elements/conversation-list.js +1 -1
- package/dist/elements/dialog.js +1 -1
- package/dist/elements/dock.js +1 -1
- package/dist/elements/dropdown.js +1 -1
- package/dist/elements/editable-label.js +1 -1
- package/dist/elements/embed.js +1 -1
- package/dist/elements/empty.js +1 -1
- package/dist/elements/feedback-bar.js +1 -1
- package/dist/elements/file-tree.js +1 -1
- package/dist/elements/file-upload.js +1 -1
- package/dist/elements/form.js +1 -1
- package/dist/elements/hover-card.js +1 -1
- package/dist/elements/icon.js +1 -1
- package/dist/elements/image.js +1 -1
- package/dist/elements/input.js +1 -1
- package/dist/elements/kbd.js +1 -1
- package/dist/elements/link-preview.js +1 -1
- package/dist/elements/loader.js +1 -1
- package/dist/elements/markdown.js +1 -1
- package/dist/elements/menu.js +1 -1
- package/dist/elements/message-skills.js +1 -1
- package/dist/elements/message.js +1 -1
- package/dist/elements/model-switcher.js +1 -1
- package/dist/elements/nav.js +1 -1
- package/dist/elements/notice.js +1 -1
- package/dist/elements/pane-grid.js +1 -1
- package/dist/elements/pane-group.js +1 -1
- package/dist/elements/pane.js +1 -1
- package/dist/elements/popover.js +1 -1
- package/dist/elements/progress-bar.js +1 -1
- package/dist/elements/prompt-dock.js +1 -1
- package/dist/elements/prompt-input.js +1 -1
- package/dist/elements/prompt-suggestions.js +1 -1
- package/dist/elements/radio-group.js +1 -1
- package/dist/elements/reasoning.js +1 -1
- package/dist/elements/remote.js +1 -1
- package/dist/elements/resizable.js +1 -1
- package/dist/elements/response-stream.js +1 -1
- package/dist/elements/screen.js +1 -1
- package/dist/elements/scroll-area.js +1 -1
- package/dist/elements/scroll-button.js +1 -1
- package/dist/elements/search.js +1 -1
- package/dist/elements/segmented.js +1 -1
- package/dist/elements/select.js +1 -1
- package/dist/elements/separator.js +1 -1
- package/dist/elements/setting-item.js +1 -1
- package/dist/elements/settings-group.js +1 -1
- package/dist/elements/skeleton.js +1 -1
- package/dist/elements/slider.js +1 -1
- package/dist/elements/source.js +1 -1
- package/dist/elements/status.js +1 -1
- package/dist/elements/switch.js +1 -1
- package/dist/elements/tabs.js +1 -1
- package/dist/elements/tasks.js +1 -1
- package/dist/elements/text-shimmer.js +1 -1
- package/dist/elements/thinking-bar.js +1 -1
- package/dist/elements/thread.js +1 -1
- package/dist/elements/toast.js +1 -1
- package/dist/elements/tool.js +1 -1
- package/dist/elements/tooltip.js +1 -1
- package/dist/elements/voice-input.js +1 -1
- package/dist/elements/voice-output.js +1 -1
- package/dist/elements.d.ts +22 -10
- package/dist/{ellipsis-CbOpJnU3.js → ellipsis-CJ5QIjWo.js} +1 -1
- package/dist/{embed-CrfjkbUG.js → embed-6Vji0PfS.js} +1 -1
- package/dist/{external-link-ByXAwBBQ.js → external-link-BPTtTdet.js} +1 -1
- package/dist/{file-text-DMib2qwt.js → file-text-eVjcFDrK.js} +1 -1
- package/dist/{file-tree-CJqM2aP7.js → file-tree-a9tfWYmg.js} +1 -1
- package/dist/{folder-_BAb929C.js → folder-DN6Ilq6d.js} +1 -1
- package/dist/{form-DSZgZQZk.js → form-U1cwhcQx.js} +1 -1
- package/dist/{hover-card-BQbul9eq.js → hover-card-C5ptzZOZ.js} +1 -1
- package/dist/{icon-CdcfRhYI.js → icon-BOMrFp0D.js} +1 -1
- package/dist/index.js +2297 -2279
- package/dist/index.server.js +2102 -2084
- package/dist/{info-DsFjGuI_.js → info-DxzKsIHn.js} +1 -1
- package/dist/{input-DKbmkMos.js → input-aW72PACH.js} +1 -1
- package/dist/kai.es.js +1 -1
- package/dist/{kbd-PvdGhX4s.js → kbd-BP-6MwUs.js} +1 -1
- package/dist/{link-preview-DbM1866N.js → link-preview-CZaDilMG.js} +1 -1
- package/dist/{link-zF8PzWfF.js → link-rlN11N0B.js} +1 -1
- package/dist/loader-BdFK70fF.js +1 -0
- package/dist/{markdown-LMvmAyBk.js → markdown-DjEaoNz-.js} +1 -1
- package/dist/mcp.es.js +587 -111
- package/dist/message--Nlbemtp.js +1 -0
- package/dist/message-C88yTu2A.js +1 -0
- package/dist/message-circle-CZeVDN1f.js +1 -0
- package/dist/message-square-BXNBKC6i.js +1 -0
- package/dist/{minimize-2-BQRoBV1V.js → minimize-2-BxLOOSEf.js} +1 -1
- package/dist/{model-switcher-CMpCOYcB.js → model-switcher-BxRvub2A.js} +1 -1
- package/dist/{overlay-Cb-MkyDa.js → overlay-CDwKJtHN.js} +1 -1
- package/dist/{panel-right-i8warFxT.js → panel-right-BovedCwW.js} +1 -1
- package/dist/{paperclip-ByY3UVO6.js → paperclip-D0Xyjja2.js} +1 -1
- package/dist/play-DGJ4MgB2.js +1 -0
- package/dist/primitives/speech.d.ts +35 -0
- package/dist/primitives/use-auto-resize.d.ts +11 -0
- package/dist/{progress-bar-jVAHvMUf.js → progress-bar-D-aQfy5h.js} +1 -1
- package/dist/{prompt-suggestion-CD-qtNgC.js → prompt-suggestion-C6qLjMEQ.js} +1 -1
- package/dist/{radio-BsoBMhkF.js → radio-D1CkXISc.js} +1 -1
- package/dist/react/index.d.ts +22 -6
- package/dist/react.js +13 -13
- package/dist/{reasoning-4kBPtlTx.js → reasoning-DARmbgmE.js} +1 -1
- package/dist/register-impl-WcrdIihK.js +424 -0
- package/dist/{resizable-uPmY9VY-.js → resizable-Da6oSO2z.js} +1 -1
- package/dist/{rotate-ccw-B2xn93py.js → rotate-ccw-31ed1xK_.js} +1 -1
- package/dist/{rotate-cw-CMVLoCyH.js → rotate-cw-qkl39dw3.js} +1 -1
- package/dist/{scroll-area-BqLUo8ZZ.js → scroll-area-RrKnLYlA.js} +1 -1
- package/dist/{scroll-button-DslXiJyL.js → scroll-button--QeNjobK.js} +1 -1
- package/dist/{select-2cLRtPGT.js → select-CS_0mWW3.js} +1 -1
- package/dist/{separator-BWQtNJcM.js → separator-fT-zBypW.js} +1 -1
- package/dist/{settings-BBR63jLg.js → settings-dfkV_WDm.js} +1 -1
- package/dist/{settings-group-B2ciy-Iw.js → settings-group-CX694npG.js} +1 -1
- package/dist/{skeleton-CkHI-HgC.js → skeleton-BsqKD9TV.js} +1 -1
- package/dist/{slider-DDR9U-i0.js → slider-_EWfTH9H.js} +1 -1
- package/dist/{solid-DruVOXnf.js → solid-BITWG_VE.js} +4214 -3996
- package/dist/{solid-BzCFdL25.js → solid-CRFYWlBw.js} +5647 -5373
- package/dist/solid.d.ts +6 -0
- package/dist/solid.js +259 -254
- package/dist/solid.server.js +259 -254
- package/dist/{source-GEnFF528.js → source-Da1TFiuj.js} +1 -1
- package/dist/speech-CjbWuqG2.js +1 -0
- package/dist/{star-CilHq8GP.js → star-ZvSbbXS6.js} +1 -1
- package/dist/{store-Ciyk6eZG.js → store-DE5lcr9q.js} +1 -1
- package/dist/{switch-KkeQIbuH.js → switch-P_fsHqv3.js} +1 -1
- package/dist/{tasks-card-BrN4bggJ.js → tasks-card-B86qqyZm.js} +1 -1
- package/dist/text-shimmer-BAkw_65G.js +1 -0
- package/dist/textarea-Bkinatpi.js +1 -0
- package/dist/theme.tokens.css +22 -21
- package/dist/{thumbs-up-CsT9Wzb9.js → thumbs-up-CDGW7a4o.js} +1 -1
- package/dist/{toast-store-tgK6MuMv.js → toast-store-B94I50AO.js} +1 -1
- package/dist/{tool-DzUjIBT8.js → tool-CUiCeyi1.js} +1 -1
- package/dist/{tooltip-Bkkg_4t0.js → tooltip-B3wlQSPh.js} +1 -1
- package/dist/{trash-2-jBKxjGGQ.js → trash-2-Cu8yZmFQ.js} +1 -1
- package/dist/{triangle-alert-DlQ68ppf.js → triangle-alert-CCtDUUmn.js} +1 -1
- package/dist/ui/button-variant-names.d.ts +12 -0
- package/dist/ui/button.d.ts +6 -0
- package/dist/ui/color-field.d.ts +48 -0
- package/dist/ui/textarea.d.ts +4 -0
- package/dist/ui/toggle-chip.d.ts +40 -0
- package/dist/{upload-TcAHXv9W.js → upload-CxotJlLv.js} +1 -1
- package/dist/{use-card-resolution-DaZqAdWf.js → use-card-resolution-DILUvNyj.js} +1 -1
- package/dist/{variant-aurora-DbW_OWL2.js → variant-aurora-BGaXBBGf.js} +1 -1
- package/dist/{variant-aurora-BhLuYxJR.js → variant-aurora-BLcQmvkd.js} +1 -1
- package/dist/{variant-aurora-CNmfHhcx.js → variant-aurora-DZIfAtx1.js} +2 -2
- package/dist/{variant-aurora-D6GsdTPA.js → variant-aurora-DpoIW4ZX.js} +2 -2
- package/dist/{variant-custom-BRvaNHSi.js → variant-custom-BhtWdAxE.js} +1 -1
- package/dist/{variant-custom-DMTrEO5w.js → variant-custom-BtApuSyr.js} +2 -2
- package/dist/{variant-custom-DV2x254s.js → variant-custom-C-zS4ZtE.js} +2 -2
- package/dist/{variant-custom-BvYHR62b.js → variant-custom-swi9PXxU.js} +1 -1
- package/dist/{variant-wave-sp-qwsdI.js → variant-wave-7JCIwhpb.js} +1 -1
- package/dist/{variant-wave-BpDd8t3Z.js → variant-wave-BG4nGr6x.js} +1 -1
- package/dist/{variant-wave-BNMGrDfj.js → variant-wave-C32lM9G2.js} +2 -2
- package/dist/{variant-wave-CyBueXj9.js → variant-wave-Dl6jOiK3.js} +2 -2
- package/dist/x-C4niw05N.js +1 -0
- package/frameworks/react/index.tsx +12 -6
- package/kit-base.css +311 -0
- package/llms-full.txt +9 -6
- package/llms.txt +1 -1
- package/package.json +23 -4
- package/solid.css +48 -0
- package/src/elements/element-meta.json +39 -14
- package/theme.css +39 -23
- package/dist/action-icons-CcgNN2oT.js +0 -1
- package/dist/arrow-down-CjRU3JgV.js +0 -1
- package/dist/arrow-left-Bnpb1UEW.js +0 -1
- package/dist/artifact-Bwt7OgcR.js +0 -1
- package/dist/assets/dev-5XzXYR21.js +0 -91
- package/dist/button-DkuOnGLy.js +0 -1
- package/dist/check-njkVdZu2.js +0 -1
- package/dist/chevron-down-B72s6PXR.js +0 -1
- package/dist/chevron-right-BatuHzUm.js +0 -1
- package/dist/circle-check-B62pODB3.js +0 -1
- package/dist/circle-zx0ByzY9.js +0 -1
- package/dist/controllable-CnGpMF6r.js +0 -1
- package/dist/define-By-uL588.js +0 -1
- package/dist/loader-BM4CEz4G.js +0 -1
- package/dist/message-BSsgvHvf.js +0 -1
- package/dist/message-BYZECyek.js +0 -1
- package/dist/message-circle-DruwObfX.js +0 -1
- package/dist/message-square-BG6q6mlm.js +0 -1
- package/dist/play-BvKKq3fX.js +0 -1
- package/dist/register-impl-B1hLkrI8.js +0 -424
- package/dist/text-shimmer-Dcj1MHuq.js +0 -1
- package/dist/textarea-Dpvbngbg.js +0 -1
- package/dist/x-Z5UntkIJ.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as C,g as b,j as k,o as q,h as I,c as M}from"../define-
|
|
1
|
+
import{f as C,g as b,j as k,o as q,h as I,c as M}from"../define-B3OpsIDE.js";import{D as V}from"../default-input-Bwmt8Lai.js";import{n as g,e as R,s as f}from"../composer-B5IvgxAF.js";C("kai-prompt-input",{value:void 0,placeholder:"Send a message...",disabled:!1,loading:!1,suggestions:void 0,suggestionMode:"submit",webSearch:!1,voice:!1,stoppable:!1,submit:"always",attach:!0,attachments:void 0,triggers:void 0,kindIcons:void 0},(o,{dispatch:a,flag:s,element:c,expose:S})=>{const[w,h]=b(o.value??""),[l,r]=b(o.attachments??[]);k(()=>{o.attachments&&r(o.attachments)});const[x,y]=b([]);q(()=>{const t=()=>{const u=[...c.querySelectorAll("kai-action")];y(u.map(n=>{var p;return{id:n.id||n.getAttribute("action")||"",label:((p=n.textContent)==null?void 0:p.trim())||n.getAttribute("label")||n.id||"",icon:n.getAttribute("icon")??void 0,tooltip:n.getAttribute("tooltip")??void 0}}))};t();const e=new MutationObserver(t);e.observe(c,{childList:!0,attributes:!0,subtree:!0}),I(()=>e.disconnect())});const m=()=>typeof o.value=="string"?o.value:w();let i={doc:[],text:"",entities:[]};k(()=>{const t=o.value;if(t!=null&&typeof t!="string"){const e=g(t);h(e),i={doc:e,text:f(e),entities:R(e)}}});const d=t=>{h(t),t!==i.text&&(i={doc:g(t),text:t,entities:[]}),a("kai-value-change",{value:t,doc:i.doc,entities:i.entities})},v=()=>{a("kai-submit",{value:f(g(m())),doc:i.doc,entities:i.entities,attachments:l()}),r([])},A=t=>{(o.suggestionMode??"submit")==="fill"?(d(t),a("kai-suggestion-click",{value:t})):(a("kai-submit",{value:t,doc:g(t),entities:[],attachments:l()}),r([]))};return S({focus:t=>{const e=c.shadowRoot,u=e?.querySelector('[contenteditable]:not([contenteditable="false"]), textarea')??e?.querySelector('input:not([type="file"])');u?.focus(t)},blur:()=>{var t,e;return(e=(t=c.shadowRoot)==null?void 0:t.activeElement)==null?void 0:e.blur()},clear:()=>{d(""),l().length&&(r([]),a("kai-attachments-change",{attachments:[]}))},send:()=>v()}),M(V,{get value(){return m()},get placeholder(){return o.placeholder},get disabled(){return s("disabled")},get loading(){return s("loading")},get stoppable(){return s("stoppable")},get submit(){return o.submit},get attach(){return s("attach")},get suggestions(){return o.suggestions},get attachments(){return l()},get webSearch(){return s("webSearch")},get voice(){return s("voice")},get toolbarActions(){return x()},get triggers(){return o.triggers},get kindIcons(){return o.kindIcons},onComposerChange:t=>{i=t},onValueChange:d,onSubmit:v,onSuggestionClick:A,onAttachmentsChange:t=>{r(t),a("kai-attachments-change",{attachments:t})},onWebSearch:()=>a("kai-web-search"),onVoice:()=>a("kai-voice"),onStop:()=>a("kai-stop"),onAction:t=>a("kai-toolbar-action",{action:t})})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as b,g as f,o as p,h as d,i as k,c as a,F as m,a as x,b as y,t as z}from"../define-
|
|
1
|
+
import{f as b,g as f,o as p,h as d,i as k,c as a,F as m,a as x,b as y,t as z}from"../define-B3OpsIDE.js";import{P as A}from"../prompt-suggestion-C6qLjMEQ.js";var w=z("<div>");const C=e=>typeof e=="string"?e:e.label,S=e=>typeof e=="string"?e:e.value??e.label,O=e=>typeof e=="string"?void 0:e.icon;function l(e){var s;const r=((s=e.textContent)==null?void 0:s.trim())??"",n=e.getAttribute("value")??r;return{label:r,value:n,icon:e.getAttribute("icon")??void 0}}b("kai-suggestions",{suggestions:[],variant:"outline",size:"md",layout:"chips",block:!1,highlight:void 0},(e,{dispatch:s,flag:r,element:n})=>{const[g,u]=f([]);p(()=>{const t=()=>{const h=[...n.querySelectorAll("kai-suggestion")];u(h.map(l))};t();const i=new MutationObserver(t);i.observe(n,{childList:!0,attributes:!0,subtree:!0}),d(()=>i.disconnect())});const c=()=>[...e.suggestions??[],...g()],o=()=>e.layout==="list",v=()=>o()?"flex flex-col gap-0.5":r("block")?"flex flex-col gap-2":"flex flex-wrap gap-2";return(()=>{var t=w();return k(t,a(m,{get each(){return c()},children:i=>a(A,{get variant(){return e.variant},get size(){return e.size},get icon(){return O(i)},get block(){return r("block")},get list(){return o()},get highlight(){return e.highlight},onClick:()=>s("kai-select",{value:S(i)}),get children(){return C(i)}})})),x(()=>y(t,v())),t})()});export{l as parseSuggestionNode};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as m,g as f,z as o,j as A,c as h}from"../define-
|
|
1
|
+
import{f as m,g as f,z as o,j as A,c as h}from"../define-B3OpsIDE.js";import{R as k}from"../radio-D1CkXISc.js";m("kai-radio-group",{options:[],value:void 0,name:void 0,disabled:void 0,label:void 0},(l,s)=>{const{element:t,dispatch:d,flag:v,expose:g}=s,[a,u]=f(l.value??t.getAttribute("value")??""),b=e=>e==null?t.getAttribute("value")??"":String(e),c=e=>{o(a)!==e&&(u(e),d("kai-change",{value:e}))};return Object.defineProperty(t,"value",{get:()=>a(),set:e=>{const r=b(e);o(a)!==r&&u(r)},configurable:!0,enumerable:!0}),A(()=>{const e=a();e?t.getAttribute("value")!==e&&t.setAttribute("value",e):t.hasAttribute("value")&&t.removeAttribute("value")}),g({focus:e=>{var r;const i=t.shadowRoot,n=[...i?.querySelectorAll('input[type="radio"]')??[]];(r=n.find(p=>p.checked)??n[0])==null||r.focus(e)}}),h(k,{get options(){return l.options??[]},get value(){return a()},get name(){return l.name},get disabled(){return v("disabled")},get label(){return l.label},onChange:e=>c(e)})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as d,A as i,c as r,C as s}from"../define-
|
|
1
|
+
import{f as d,A as i,c as r,C as s}from"../define-B3OpsIDE.js";import{R as g,a as u,b as m}from"../reasoning-DARmbgmE.js";import{w as f}from"../disclosure-ZSAlD4wg.js";d("kai-reasoning",{text:"",label:"Reasoning",open:void 0,defaultOpen:void 0,streaming:!1,markdown:!0,disabled:void 0},(t,n)=>{const{flag:e}=n,o=i();let a;return f(n,()=>a,()=>t.open),r(s,{get portalMount(){return o.portalMount()},get children(){return r(g,{get defaultOpen(){return e("defaultOpen")},get isStreaming(){return e("streaming")},get disabled(){return e("disabled")},controllerRef:l=>a=l,get children(){return[r(u,{get children(){return t.label}}),r(m,{get markdown(){return e("markdown")},get children(){return t.text}})]}})}})});
|
package/dist/elements/remote.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as J,g as K,h as T,o as Q,j as X}from"../define-
|
|
1
|
+
import{f as J,g as K,h as T,o as Q,j as X}from"../define-B3OpsIDE.js";import{r as Y,e as Z}from"../card-routing-0YidER_3.js";const q="kitn-card";function M(n,e){return function(o){return{protocol:q,version:n,nonce:e,message:o}}}function ee(n,e){if(typeof n!="object"||n===null)return!1;const o=n,t=o.message;return o.protocol===q&&typeof o.version=="string"&&typeof o.nonce=="string"&&typeof t=="object"&&t!==null&&t.dir===e}function ne(n,e,o){const t=new URL(n).origin;if(e===o)throw new Error("[kai-remote] providerOrigin must be cross-origin to the host");if(t===o)throw new Error("[kai-remote] src must not be same-origin as the host");if(t!==e)throw new Error("[kai-remote] src origin must equal providerOrigin")}const te=new Set(["protocol","version","dir","kind","mode","locale","edge","code","acceptedVersion","supportedVersions","cardId","type","id","height","target"]),oe=new Set(["authToken","nonce"]);function O(n){if(Array.isArray(n))return n.map(O);if(n&&typeof n=="object"){const e={};for(const[o,t]of Object.entries(n))oe.has(o)?e[o]="[redacted]":typeof t=="object"&&t!==null?e[o]=O(t):e[o]=te.has(o)?t:"[redacted]";return e}return n}function re(n){return/^[0-9]+$/.test(n)}const ie=new Set(["__proto__","constructor","prototype"]);function R(n){if(Array.isArray(n))return n.some(R);if(n&&typeof n=="object"){for(const e of Object.keys(n))if(ie.has(e)||R(n[e]))return!0}return!1}const ce=new Set(["ready","submit","action","send-prompt","open","resize","state","dismiss","error"]);function ae(n){return typeof n=="string"&&ce.has(n)}const V=["1"],le="allow-scripts allow-forms allow-same-origin",de=5e3;function se(n){try{return new URL(n).host}catch{return n}}function ue(n){const{container:e,providerOrigin:o,src:t,policy:r,maxHeight:d}=n,s=typeof window<"u"?window.location.origin:"";ne(t,o,s);const g=n.handshakeTimeoutMs??de;let m=0,w=P(),k=M("1",w),l="connecting",b=pe(n.context),v=n.envelope,p=null,u=null,c=null,I,y=null;function $(i){try{console.warn("[kai-remote]",O(i))}catch{}}function x(i){const a=c?.contentWindow;if(a)try{a.postMessage(k(i),o)}catch{}}function S(){I!==void 0&&(clearTimeout(I),I=void 0)}function U(i){l==="open"?x({dir:"down",kind:"context",context:i}):l==="connecting"&&(p=i)}function _(i){l==="open"?x({dir:"down",kind:"render",envelope:i}):l==="connecting"&&(u=i)}function z(){p&&(x({dir:"down",kind:"context",context:p}),p=null),u&&(x({dir:"down",kind:"render",envelope:u}),u=null)}function D(i){const a=document.createElement("div");a.setAttribute("role","alert"),a.dataset.kaiRemoteFallback="";const E=document.createElement("p");E.textContent=i,a.appendChild(E);const h=document.createElement("button");h.type="button",h.textContent="Retry",h.addEventListener("click",()=>W()),a.appendChild(h),c&&c.parentNode===e?e.replaceChild(a,c):e.appendChild(a),c=null}function L(i){l!=="closed"&&(S(),l="error",p=null,u=null,D(i))}function j(){const i=m,a=document.createElement("iframe");a.setAttribute("sandbox",n.sandbox??le),a.setAttribute("referrerpolicy","no-referrer"),a.setAttribute("allow","");const E=v.title??v.type;a.setAttribute("title",`${E} \u2014 provided by ${se(o)}`),a.style.border="0",a.style.width="100%",a.addEventListener("load",()=>{m!==i||l!=="connecting"||(k=M("1",w),x({dir:"down",kind:"hello",supportedVersions:V}),S(),I=setTimeout(()=>{var h;m!==i||l!=="connecting"||(L("[timeout] The card took too long to load."),(h=r?.onError)==null||h.call(r,v.id,"[timeout] handshake timed out"))},g))}),y=h=>N(h,i),window.addEventListener("message",y),c=a,e.appendChild(a),a.setAttribute("src",t)}function W(){l==="error"&&(m+=1,w=P(),k=M("1",w),l="connecting",p=null,u=null,S(),y&&(window.removeEventListener("message",y),y=null),c&&(c.remove(),c=null),p=b,u=v,e.querySelectorAll("[data-kai-remote-fallback]").forEach(i=>i.remove()),j())}function F(i){if(!c)return;const a=Math.min(i,d??1/0);c.style.height=`${a}px`}function H(){if(c)try{c.blur()}catch{}}function N(i,a){var E,h;if(a!==m||l==="closed"||l==="error")return;const A=i.data;if(i.origin===o&&i.source===c?.contentWindow&&ee(A,"up")&&A.nonce===w)try{const C=A.message;switch(C.kind){case"ready":{if(l!=="connecting")return;const f=C.acceptedVersion;if(!re(f)||!V.includes(f)){L("[version-unsupported] This card needs a different host version."),(E=r?.onError)==null||E.call(r,v.id,"[version-unsupported] no compatible protocol version");return}k=M(f,w),S(),l="open",p||(p=b),u||(u=v),z();return}case"event":{if(l!=="open")return;const f=C.event;if(f.cardId!==v.id)return;if(f.kind==="resize"){F(f.height);return}if(!ae(f.kind)||R(f)){$(A);return}Y(r??{},f);return}case"focus-edge":{H();return}case"fault":{const f=C.code,G=C.message;L(`[${f}] The card reported a problem.`),(h=r?.onError)==null||h.call(r,v.id,`[${f}] ${G}`);return}default:return}}catch{$(A)}}const B={updateContext(i){l!=="closed"&&(b=fe(b,i),U(b))},update(i){l!=="closed"&&(v=i,_(i))},destroy(){l!=="closed"&&(m+=1,l==="open"&&x({dir:"down",kind:"teardown"}),l="closed",S(),y&&(window.removeEventListener("message",y),y=null),c&&(c.remove(),c=null),e.querySelectorAll("[data-kai-remote-fallback]").forEach(i=>i.remove()))},state(){return l}};return j(),B}function P(){const n=new Uint8Array(16);crypto.getRandomValues(n);let e="";for(const o of n)e+=o.toString(16).padStart(2,"0");return e}function pe(n){return{...n}}function fe(n,e){return{...n,...e}}function me(n){if(!n||n==="*"||n.includes(","))return!1;let e;try{e=new URL(n)}catch{return!1}return e.pathname!=="/"||e.search!==""||e.hash!==""?!1:e.protocol==="https:"?!0:e.protocol==="http:"?e.hostname==="localhost"||e.hostname==="127.0.0.1":!1}function he(n,e){function o(t){Z(n,t)}return{onSubmit(t,r){var d;o({kind:"submit",cardId:t,data:r}),(d=e?.onSubmit)==null||d.call(e,t,r)},onAction(t,r,d){var s;o({kind:"action",cardId:t,action:r,payload:d}),(s=e?.onAction)==null||s.call(e,t,r,d)},onSendPrompt(t,r){var d;o({kind:"send-prompt",cardId:"",text:t,mode:r.mode,context:r.context}),(d=e?.onSendPrompt)==null||d.call(e,t,r)},onOpen(t,r){var d;o({kind:"open",cardId:"",url:t,target:r}),(d=e?.onOpen)==null||d.call(e,t,r)},onState(t,r){var d;o({kind:"state",cardId:t,patch:r}),(d=e?.onState)==null||d.call(e,t,r)},onDismiss(t){var r;o({kind:"dismiss",cardId:t}),(r=e?.onDismiss)==null||r.call(e,t)},onReopen(t){var r;o({kind:"reopen",cardId:t}),(r=e?.onReopen)==null||r.call(e,t)},onError(t,r){var d;o({kind:"error",cardId:t,message:r}),(d=e?.onError)==null||d.call(e,t,r)},maxSendPromptMode:e?.maxSendPromptMode}}J("kai-remote",{src:void 0,providerOrigin:void 0,envelope:void 0,policy:void 0},(n,{element:e})=>{let o;const[t,r]=K(!1);if(typeof window<"u"&&typeof window.matchMedia=="function"){const s=window.matchMedia("(prefers-color-scheme: dark)");r(s.matches);const g=m=>r(m.matches);s.addEventListener("change",g),T(()=>s.removeEventListener("change",g))}const d=()=>{const s=n.theme??"auto";return s==="dark"||s==="auto"&&t()};return Q(()=>{const s=e.shadowRoot;if(!s)return;function g(u){const c=document.createElement("div");c.setAttribute("role","alert"),c.textContent=u,s.appendChild(c)}const m=n.providerOrigin;if(!me(m)){g(`[kai-remote] Invalid provider-origin "${m??""}". Must be an absolute https: origin, or http://localhost / http://127.0.0.1 for local dev.`);return}const w=n.src;if(!w){g('[kai-remote] Missing required "src" attribute.');return}const k=n.envelope;if(!k){g('[kai-remote] Missing required "envelope" property.');return}const l={theme:{mode:d()?"dark":"light"},locale:typeof navigator<"u"&&navigator.language||"en"},b=n.policy,v=he(e,b),p=document.createElement("div");s.appendChild(p);try{o=ue({container:p,providerOrigin:m,src:w,envelope:k,context:l,policy:v})}catch(u){const c=u instanceof Error?u.message:String(u);g(`[kai-remote] Mount failed: ${c}`),p.remove();return}T(()=>{o?.destroy(),o=void 0})}),X(()=>{const s=d()?"dark":"light";o?.updateContext({theme:{mode:s}})}),[]});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as j,j as H,g as O,o as ie,h as ne,x as ae,i as re,c as S,S as le,v as D,a as G,d as h,n as se,F as de,l as oe,t as A}from"../define-
|
|
1
|
+
import{f as j,j as H,g as O,o as ie,h as ne,x as ae,i as re,c as S,S as le,v as D,a as G,d as h,n as se,F as de,l as oe,t as A}from"../define-B3OpsIDE.js";import{c as ce,n as $,R as ue}from"../resizable-Da6oSO2z.js";var me=A("<style>:host{display:block;height:100%}"),he=A("<div data-resizable-root style=display:flex;width:100%;height:100%>"),fe=A('<div data-panel style="display:grid;grid-template-rows:minmax(0, 1fr);grid-template-columns:minmax(0, 1fr);min-width:0;min-height:0;overflow:hidden"><slot>'),be=A("<style>:host{display:block;width:100%;height:100%;min-width:0;min-height:0;overflow:auto}"),ve=A('<div style="display:grid;grid-template-rows:minmax(0, 1fr);grid-template-columns:minmax(0, 1fr);width:100%;height:100%;min-width:0;min-height:0"><slot>');const pe="kai-maximize-intent",ge="kai-maximize-state",C=3;function L(c){if(c===void 0||c==="")return{};const r=c.trim();return r.endsWith("px")?{pxAttr:String(parseFloat(r))}:r.endsWith("%")?{pctAttr:String(parseFloat(r))}:Number.isFinite(Number(r))?{pctAttr:r}:{}}j("kai-resizable",{orientation:"horizontal",maximizedIndex:null,handle:"line"},(c,{element:r,dispatch:f,expose:b})=>{const[d,k]=O([]),m=()=>c.orientation==="vertical"?"vertical":"horizontal";function g(){const t=Array.from(r.children).filter(e=>e.tagName.toLowerCase()==="kai-resizable-item");t.length>C&&console.warn(`<kai-resizable>: only the first ${C} <kai-resizable-item> children are laid out (got ${t.length}). Nest <kai-resizable> for more.`);const i=t.slice(0,C).map(e=>{e.hasAttribute("data-kai-default-size")||e.setAttribute("data-kai-default-size",e.getAttribute("size")??"");const a=e.getAttribute("data-kai-default-size")||void 0,l=e.hasAttribute("collapsed")&&e.getAttribute("collapsed")!=="false";return{el:e,size:e.getAttribute("size")??void 0,defaultSize:a,min:e.getAttribute("min")??void 0,max:e.getAttribute("max")??void 0,locked:e.hasAttribute("locked")&&e.getAttribute("locked")!=="false",hidden:e.hidden||e.hasAttribute("hidden")&&e.getAttribute("hidden")!=="false",collapsed:l}});let n=0;for(const e of i)e.hidden||e.collapsed?e.el.removeAttribute("slot"):(e.el.setAttribute("slot",`p${n}`),n++);for(const e of t.slice(C))e.removeAttribute("slot");Q(d(),i)&&k(i)}function Q(t,i){if(t.length!==i.length)return!0;for(let n=0;n<t.length;n++){const e=t[n],a=i[n];if(e.el!==a.el||e.size!==a.size||e.min!==a.min||e.max!==a.max||e.locked!==a.locked||e.hidden!==a.hidden||e.collapsed!==a.collapsed)return!0}return!1}const w=()=>d().filter(t=>!t.hidden&&!t.collapsed);function I(){return w().map(t=>{var i;const n=((i=t.el.assignedSlot)==null?void 0:i.closest("[data-panel]"))??t.el,e=n.parentElement,a=m()==="horizontal"?"width":"height",l=e?e.getBoundingClientRect()[a]:0,v=n.getBoundingClientRect()[a];return l>0?Math.round(v/l*100):0})}function E(){f("kai-change",{sizes:I()})}let N=!1;function U(){const t=w(),i=I();t.length===i.length&&(N=!0,t.forEach((n,e)=>{const a=i[e];Number.isFinite(a)&&a>0&&n.el.setAttribute("size",`${a}%`)}),queueMicrotask(()=>{N=!1}))}const[y,q]=O(null);let x=!1;function V(t){let i=t instanceof Element?t:t?.parentElement??null;const n=d().map(e=>e.el);for(;i;){if(i instanceof HTMLElement&&n.includes(i))return i;i=i.parentElement??i.getRootNode().host??null}return null}function Y(t){return{size:t.getAttribute("size"),hidden:t.hidden||t.hasAttribute("hidden")&&t.getAttribute("hidden")!=="false",locked:t.hasAttribute("locked")&&t.getAttribute("locked")!=="false"}}function M(t,i,n){n?t.setAttribute(i,""):t.removeAttribute(i)}function F(t){const i=d(),n=i.findIndex(u=>u.el===t);if(n<0)return;const e=y();if(e){if(e.item===t)return;z()}x=!0;const a=I();let l=0;const v=i.map(u=>{const p=Y(u.el);if(!p.hidden){const o=a[l++];Number.isFinite(o)&&o>0&&u.el.setAttribute("size",`${o}%`)}return{el:u.el,size:u.el.getAttribute("size"),hidden:p.hidden,locked:p.locked}});i.forEach((u,p)=>{p===n?(u.el.removeAttribute("size"),u.el.removeAttribute("locked"),M(u.el,"hidden",!1)):M(u.el,"hidden",!0)}),q({item:t,saved:v}),r.setAttribute("data-maximized",""),t.setAttribute("data-maximized-panel",""),g(),E(),queueMicrotask(()=>{x=!1}),t.dispatchEvent(new CustomEvent("kai-maximize-state",{detail:{maximized:!0},bubbles:!1,composed:!0})),f("kai-maximize-change",{maximized:!0,index:n})}function z(){const t=y();if(!t)return;x=!0;for(const n of t.saved)n.el.isConnected&&(n.size===null?n.el.removeAttribute("size"):n.el.setAttribute("size",n.size),M(n.el,"hidden",n.hidden),M(n.el,"locked",n.locked),n.el.removeAttribute("data-maximized-panel"));const i=t.item;q(null),r.removeAttribute("data-maximized"),g(),E(),queueMicrotask(()=>{x=!1}),r.dispatchEvent(new CustomEvent("kai-maximize-state",{detail:{maximized:!1},bubbles:!1,composed:!0})),i?.dispatchEvent(new CustomEvent("kai-maximize-state",{detail:{maximized:!1},bubbles:!1,composed:!0})),f("kai-maximize-change",{maximized:!1,index:null})}ie(()=>{g();const t=e=>{const a=e;e.stopPropagation();const l=V(a.target);l&&(a.detail.requested?F(l):z())};r.addEventListener("kai-maximize-intent",t);const i=e=>{e.key!=="Escape"||!y()||(e.stopPropagation(),z())};r.addEventListener("keydown",i,!0);const n=new MutationObserver(()=>{if(N)return;g();const e=y();if(e){const a=e.item,l=a.isConnected&&r.contains(a),v=l&&!(a.hidden||a.hasAttribute("hidden"))&&!(a.hasAttribute("collapsed")&&a.getAttribute("collapsed")!=="false");if(!l||!v){z();return}}x||queueMicrotask(E)});n.observe(r,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["size","locked","min","max","hidden","collapsed"]}),ne(()=>{n.disconnect(),r.removeEventListener("kai-maximize-intent",t),r.removeEventListener("keydown",i,!0)}),b({maximize:e=>{var a;const l=(a=d()[e])==null?void 0:a.el;l&&F(l)},restore:()=>z()}),H(ae(()=>c.maximizedIndex,e=>{var a;if(e==null)z();else{const l=(a=d()[e])==null?void 0:a.el;l&&F(l)}},{defer:!0}))});const ee=()=>m()==="horizontal";return[me(),(()=>{var t=he();return re(t,S(de,{get each(){return w()},children:(i,n)=>{const e=L(i.min),a=L(i.max),l=L(i.defaultSize),v=ce($(i.size),$(i.min),$(i.max)),u=()=>w()[n()-1],p=()=>{var o;return!!(i.locked||(o=u())!=null&&o.locked)};return[S(le,{get when(){return n()>0},get children(){return S(ue,{get handle(){return c.handle??"line"},get orientation(){return m()},get static(){return p()},onPanelResize:()=>{U(),queueMicrotask(E)}})}}),(()=>{var o=fe(),_=o.firstChild;return _._$owner=D(),G(s=>{var R=i.locked?"":void 0,T=e.pxAttr,P=e.pctAttr,B=a.pxAttr,K=a.pctAttr,W=l.pxAttr,X=l.pctAttr,te={...v!==void 0?{"flex-basis":v,"flex-grow":"0","flex-shrink":"0"}:{flex:"1 1 0%"}},Z=`p${n()}`;return R!==s.e&&h(o,"data-locked",s.e=R),T!==s.t&&h(o,"data-min-size",s.t=T),P!==s.a&&h(o,"data-min-size-pct",s.a=P),B!==s.o&&h(o,"data-max-size",s.o=B),K!==s.i&&h(o,"data-max-size-pct",s.i=K),W!==s.n&&h(o,"data-default-size",s.n=W),X!==s.s&&h(o,"data-default-size-pct",s.s=X),s.h=se(o,te,s.h),Z!==s.r&&h(_,"name",s.r=Z),s},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0}),o})()]}})),G(i=>{var n=m(),e=ee()?"row":"column";return n!==i.e&&h(t,"data-orientation",i.e=n),e!==i.t&&oe(t,"flex-direction",i.t=e),i},{e:void 0,t:void 0}),t})()]});function J(c,r){const f=d=>d==null||d===""?null:String(d),b=d=>{let k;H(()=>{const m=f(r[d]);if(m===k)return;const g=c.getAttribute(d);m!==g&&(k=m,m===null?c.removeAttribute(d):c.setAttribute(d,m))})};b("size"),b("min"),b("max")}j("kai-resizable-item",{size:void 0,min:void 0,max:void 0,locked:!1,hidden:!1,collapsed:!1},(c,{element:r,reflectFlag:f})=>(f("collapsed"),f("locked"),J(r,c),[be(),(()=>{var b=ve(),d=b.firstChild;return d._$owner=D(),b})()]));export{pe as KAI_MAXIMIZE_INTENT,ge as KAI_MAXIMIZE_STATE,J as reflectItemConfig};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{g as M,h as G,s as H,j as w,x as I,c as y,S as J,i as S,F as K,a as L,b as N,l as O,m as P,D as Q,t as k,f as R}from"../define-
|
|
1
|
+
import{g as M,h as G,s as H,j as w,x as I,c as y,S as J,i as S,F as K,a as L,b as N,l as O,m as P,D as Q,t as k,f as R}from"../define-B3OpsIDE.js";import{c as U}from"../cn-DN5AWfiS.js";function z(t){const e=Math.min(100,Math.max(1,t));return Math.round(1e3/Math.sqrt(e))}function T(t){const e=Math.min(100,Math.max(1,t));return Math.max(1,Math.round(100/Math.sqrt(e)))}function V(t){const e=t.speed??20,g=t.characterChunkSize??3,[p,s]=M(""),[v,c]=M(!0),[a,o]=M([]);let i="",l=0,r,n,m=!1,d;function x(){r!==void 0&&(clearInterval(r),r=void 0),n!==void 0&&(clearTimeout(n),n=void 0)}function C(){if(!m){if(l>=i.length){d||(x(),c(!0));return}l=Math.min(l+g,i.length),s(i.slice(0,l))}}async function $(u){d=u[Symbol.asyncIterator]();try{for(;;){const{value:f,done:D}=await d.next();if(D)break;f&&(i+=f,o(h=>[...h,{text:f,index:h.length}]))}}finally{d=void 0}}function j(u){if(b(),c(!1),typeof u=="string")if(i=u,t.mode==="typewriter")r=setInterval(C,e);else{const f=u.split(/(\s+)/).filter(Boolean);o(f.map((F,A)=>({text:F,index:A}))),s(u);const D=typeof t.segmentDelay=="number"?Math.max(0,t.segmentDelay):T(e),h=t.fadeDuration??z(e);n=setTimeout(()=>{n=void 0,c(!0)},f.length*D+h)}else t.mode==="typewriter"&&(r=setInterval(C,e)),$(u).then(()=>{t.mode==="fade"&&(s(i),c(!0))})}function q(){m=!0}function B(){m=!1}function b(){x(),i="",l=0,m=!1,d=void 0,s(""),c(!0),o([])}return G(()=>x()),{displayedText:p,isComplete:v,segments:a,startStreaming:j,pause:q,resume:B,reset:b}}var W=k("<style>"),X=k("<div class=relative>"),_=k("<span>");function E(t){const[e]=H(t,["textStream","mode","speed","class","onComplete","as","fadeDuration","segmentDelay","characterChunkSize"]),g=()=>e.mode??"typewriter",p=()=>e.speed??20,s=V({mode:g(),speed:p(),characterChunkSize:e.characterChunkSize,fadeDuration:e.fadeDuration,segmentDelay:e.segmentDelay});w(I(()=>e.textStream,a=>{a&&s.startStreaming(a)})),w(I(()=>s.isComplete(),a=>{var o;a&&((o=e.onComplete)==null||o.call(e))},{defer:!0}));const v=()=>`
|
|
2
2
|
@keyframes fadeIn {
|
|
3
3
|
from { opacity: 0; }
|
|
4
4
|
to { opacity: 1; }
|
package/dist/elements/screen.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{g as E,j as _,h as j,c as g,u as q,d as k,i as s,S,a as H,b as M,t as f,e as P,f as D,v as y}from"../define-
|
|
1
|
+
import{g as E,j as _,h as j,c as g,u as q,d as k,i as s,S,a as H,b as M,t as f,e as P,f as D,v as y}from"../define-B3OpsIDE.js";import{c as F}from"../cn-DN5AWfiS.js";import{c as G}from"../overlay-CDwKJtHN.js";import{a as J}from"../arrow-left-DD46kN17.js";import{w as K}from"../disclosure-ZSAlD4wg.js";var L=f('<button part=back type=button aria-label=Back class="inline-flex size-8 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-muted hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring">'),N=f('<div part=body role=dialog aria-modal=true tabindex=-1><header part=header class="flex shrink-0 items-center gap-2 border-b border-border px-3 py-2"><h2 part=title class="min-w-0 flex-1 truncate text-sm font-semibold text-foreground"></h2><div class="flex shrink-0 items-center gap-1"></div></header><div class="min-h-0 flex-1 overflow-auto">');let Q=0;function T(t){var d;const[v,b]=E(t.defaultOpen??!1),h=`kai-screen-title-${++Q}`,m=()=>t.open!==void 0,l=()=>m()?!!t.open:v(),u=e=>{var r;m()||b(e),(r=t.onOpenChange)==null||r.call(t,e)};(d=t.controllerRef)==null||d.call(t,{open:l,setOpen:u});const n=G(l);let x,A=null,w=[];const C=()=>t.back!==!1,$=()=>{var e;return(e=t.onBack)==null?void 0:e.call(t)},z=()=>{var e;if(t.noInert)return;const r=(e=t.host)==null?void 0:e.call(t),o=r?.parentElement;if(!(!r||!o))for(const p of Array.from(o.children)){if(p===r)continue;const i=p;w.push({el:i,hadInert:i.hasAttribute("inert"),hadAriaHidden:i.getAttribute("aria-hidden")}),i.setAttribute("inert",""),i.setAttribute("aria-hidden","true")}},I=()=>{for(const{el:e,hadInert:r,hadAriaHidden:o}of w)r||e.removeAttribute("inert"),o===null?e.removeAttribute("aria-hidden"):e.setAttribute("aria-hidden",o);w=[]};_(e=>{const r=l();if(r&&!e)A=document.activeElement??null,z(),queueMicrotask(()=>x?.focus());else if(!r&&e){I();const o=A;A=null,o&&o.isConnected&&queueMicrotask(()=>o.focus())}return r},!1),j(I);const B=e=>{e.key==="Escape"&&(e.stopPropagation(),$())};return g(S,{get when(){return n.present()},get children(){var e=N(),r=e.firstChild,o=r.firstChild,p=o.nextSibling,i=r.nextSibling;return e.$$keydown=B,q(a=>{var c;x=a,n.setRef(a),(c=t.surfaceRef)==null||c.call(t,a)},e),k(e,"aria-labelledby",h),s(r,g(S,{get when(){return C()},get children(){var a=L();return a.$$click=$,s(a,g(J,{size:16,"aria-hidden":"true"})),a}}),o),k(o,"id",h),s(o,()=>t.titleSlot??t.title),s(p,()=>t.actions),s(i,()=>t.children),H(a=>{var c=n.state()==="open"?"":void 0,O=n.state()==="closed"?"":void 0,R=F("absolute inset-0 z-40 flex flex-col bg-background text-foreground outline-none","animate-in fade-in-0 slide-in-from-bottom-2 motion-reduce:animate-none","data-[closed]:animate-out data-[closed]:fade-out-0 data-[closed]:slide-out-to-bottom-2");return c!==a.e&&k(e,"data-expanded",a.e=c),O!==a.t&&k(e,"data-closed",a.t=O),R!==a.a&&M(e,a.a=R),a},{e:void 0,t:void 0,a:void 0}),e}})}P(["keydown","click"]);var U=f("<slot>"),V=f("<slot name=title>"),W=f("<slot name=actions>");D("kai-screen",{open:void 0,defaultOpen:void 0,headline:void 0,back:void 0,noInert:void 0},(t,d)=>{const{flag:v,element:b,dispatch:h,expose:m}=d;let l,u;return K(d,()=>l,()=>t.open),m({focus:n=>u?.focus(n)}),g(T,{get defaultOpen(){return v("defaultOpen")},get back(){return!(t.back===!1||b.getAttribute("back")==="false")},get noInert(){return v("noInert")},host:()=>b,get titleSlot(){return(()=>{var n=V();return n._$owner=y(),s(n,()=>t.headline),n})()},get actions(){return(()=>{var n=W();return n._$owner=y(),n})()},onBack:()=>{h("kai-back",{})},controllerRef:n=>l=n,surfaceRef:n=>u=n,get children(){var n=U();return n._$owner=y(),n}})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as l,c as o,v as i,t as a}from"../define-
|
|
1
|
+
import{f as l,c as o,v as i,t as a}from"../define-B3OpsIDE.js";import{S as e}from"../scroll-area-RrKnLYlA.js";var n=a("<style>:host{display:block;min-height:0}"),s=a("<slot>");l("kai-scroll-area",{orientation:"vertical"},r=>[n(),o(e,{class:"h-full max-h-full w-full max-w-full",part:"viewport",get orientation(){return r.orientation},get children(){var t=s();return t._$owner=i(),t}})]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as b,g as w,o as E,h as k,c as u,S as y,i as H,m as x,t as L}from"../define-
|
|
1
|
+
import{f as b,g as w,o as E,h as k,c as u,S as y,i as H,m as x,t as L}from"../define-B3OpsIDE.js";import{c as z}from"../cn-DN5AWfiS.js";import{B as S}from"../button-BM0YTTDQ.js";import{a as B}from"../arrow-down-DU6wOl-h.js";var C=L("<span>");const T=50,I="Scroll to bottom";function A(e){return(e??"outline")==="outline"?"border border-input bg-card text-card-foreground kai-elevation":"kai-elevation"}function Y(e){let r=e.parentElement;for(;r&&r!==document.documentElement;){const n=getComputedStyle(r),a=n.overflow+n.overflowY;if(/auto|scroll/.test(a)&&r.scrollHeight>r.clientHeight)return r;r=r.parentElement}return null}b("kai-scroll-button",{for:void 0,variant:"outline",size:"icon",label:void 0,showLabel:void 0},(e,{element:r,dispatch:n,flag:a})=>{const[l,d]=w(!0);let o=null,i=[];function s(){if(!o)return;const{scrollTop:t,scrollHeight:v,clientHeight:p}=o;d(v-t-p<T)}function g(){o&&(o.scrollTo({top:o.scrollHeight,behavior:"smooth"}),d(!0))}function m(t){o=t,t.addEventListener("scroll",s,{passive:!0}),s(),i.push(()=>t.removeEventListener("scroll",s))}function h(){i.forEach(t=>t()),i=[],o=null}E(()=>{const t=e.for?document.getElementById(e.for):Y(r);t&&m(t)}),k(h);const f=()=>e.label??I,c=()=>a("showLabel");return u(S,{get variant(){return e.variant??"outline"},get size(){return e.size??"icon"},get"aria-label"(){return x(()=>!!c())()?void 0:f()},get tabindex(){return l()?-1:0},get"aria-hidden"(){return l()?"true":void 0},get class(){return z("rounded-lg transition-all duration-150 ease-out",A(e.variant),c()?"h-9 w-auto gap-1.5 px-3 text-sm":"",l()?"pointer-events-none translate-y-4 scale-95 opacity-0":"translate-y-0 scale-100 opacity-100")},onClick:()=>{g(),n("kai-scroll")},get children(){return[u(B,{class:"h-4 w-4 shrink-0","aria-hidden":"true"}),u(y,{get when(){return c()},get children(){var t=C();return H(t,f),t}})]}})});
|
package/dist/elements/search.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as C,e as S,g as j,z as h,j as T,c as i,S as u,i as I,m as K,t as v}from"../define-
|
|
1
|
+
import{f as C,e as S,g as j,z as h,j as T,c as i,S as u,i as I,m as K,t as v}from"../define-B3OpsIDE.js";import{I as V}from"../input-aW72PACH.js";import{K as $}from"../kbd-BP-6MwUs.js";import{L as E}from"../loader-BdFK70fF.js";import{r as m}from"../icon-BOMrFp0D.js";var L=v('<button type=button part=clear aria-label=Clear class="inline-flex size-5 shrink-0 items-center justify-center rounded text-muted-foreground transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring">'),N=v("<style>:host{display:block}");C("kai-search",{value:void 0,placeholder:"Search\u2026",icon:"search",debounce:200,loading:!1,shortcut:void 0},(a,d)=>{const{element:t,dispatch:n,flag:b,expose:f}=d,[r,l]=j(a.value??t.getAttribute("value")??""),p=e=>e==null?t.getAttribute("value")??"":String(e);Object.defineProperty(t,"value",{get:()=>r(),set:e=>{const g=p(e);h(r)!==g&&l(g)},configurable:!0,enumerable:!0}),T(()=>{const e=r();e?t.getAttribute("value")!==e&&t.setAttribute("value",e):t.hasAttribute("value")&&t.removeAttribute("value")});let s;const k=()=>{const e=Number(a.debounce??200);return Number.isFinite(e)&&e>=0?e:200},y=e=>{s&&clearTimeout(s),s=setTimeout(()=>n("kai-search",{value:e}),k())},o=()=>{var e;return((e=t.shadowRoot)==null?void 0:e.querySelector("input"))??null},z=e=>{l(e),y(e)},c=()=>{var e;s&&clearTimeout(s),l(""),n("kai-search",{value:""}),(e=o())==null||e.focus()},x=e=>{e.key==="Enter"&&n("kai-submit",{value:h(r)})};f({focus:()=>{var e;return(e=o())==null?void 0:e.focus()},clear:c});const A=i(u,{get when(){return b("loading")},get fallback(){return m(a.icon??"search",{class:"size-4 shrink-0",imgClass:"size-4 shrink-0",spanClass:"inline-flex size-4 shrink-0 items-center justify-center",ariaHidden:!0})},get children(){return i(E,{variant:"circular",size:"sm"})}}),w=[i(u,{get when(){return r()},get children(){var e=L();return e.$$click=c,I(e,()=>m("x",{class:"size-4",imgClass:"size-4"})),e}}),i(u,{get when(){return K(()=>!r())()&&a.shortcut},get children(){return i($,{get keys(){return a.shortcut},size:"sm"})}})];return[N(),i(V,{type:"search",get value(){return r()},get placeholder(){return a.placeholder??"Search\u2026"},leading:A,trailing:w,onValueInput:z,onValueChange:e=>n("kai-change",{value:e}),onKeyDown:x})]}),S(["click"]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{q as C,i as g,c as p,u as D,S as j,a as x,d as y,b as A,F as $,t as f,e as H,f as M,g as S,z as w,j as q}from"../define-
|
|
1
|
+
import{q as C,i as g,c as p,u as D,S as j,a as x,d as y,b as A,F as $,t as f,e as H,f as M,g as S,z as w,j as q}from"../define-B3OpsIDE.js";import{c as z}from"../cn-DN5AWfiS.js";import{r as E}from"../icon-BOMrFp0D.js";var F=f("<div role=group part=track>"),I=f('<span class="inline-flex shrink-0 items-center"aria-hidden=true>'),P=f("<button type=button part=segment><span>");const R={sm:"h-7 px-2 text-xs",md:"h-8 px-3 text-sm"};function K(u){const r=C({size:"md"},u),i=[],c=()=>r.options.findIndex(t=>t.value===r.value),s=t=>{var n;const o=r.options[t];o&&(r.onChange(o.value),(n=i[t])==null||n.focus())},d=t=>{const n=r.options.length;if(n===0)return;const o=c();t.key==="ArrowRight"||t.key==="ArrowDown"?(t.preventDefault(),s((Math.max(o,0)+1)%n)):t.key==="ArrowLeft"||t.key==="ArrowUp"?(t.preventDefault(),s((Math.max(o,0)-1+n)%n)):t.key==="Home"?(t.preventDefault(),s(0)):t.key==="End"&&(t.preventDefault(),s(n-1))};return(()=>{var t=F();return t.$$keydown=d,g(t,p($,{get each(){return r.options},children:(n,o)=>{const e=()=>n.value===r.value,v=()=>e()||c()===-1&&o()===0;return(()=>{var l=P(),m=l.firstChild;return l.$$click=()=>r.onChange(n.value),D(a=>{i[o()]=a},l),g(l,p(j,{get when(){return n.icon},get children(){var a=I();return g(a,()=>n.icon),a}}),m),g(m,()=>n.label),x(a=>{var h=e(),b=v()?0:-1,k=z("inline-flex items-center justify-center gap-1.5 rounded-md font-medium transition-colors","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",R[r.size],e()?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground");return h!==a.e&&y(l,"aria-pressed",a.e=h),b!==a.t&&y(l,"tabindex",a.t=b),k!==a.a&&A(l,a.a=k),a},{e:void 0,t:void 0,a:void 0}),l})()}})),x(()=>A(t,z("inline-flex items-center gap-0.5 rounded-lg bg-surface-sunken p-0.5",r.class))),t})()}H(["keydown","click"]);var L=f("<style>:host{display:inline-flex}");M("kai-segmented",{options:[],value:void 0,size:"md"},(u,r)=>{const{element:i,dispatch:c}=r,[s,d]=S(u.value??i.getAttribute("value")??""),t=e=>e==null?i.getAttribute("value")??"":String(e),n=e=>{w(s)!==e&&(d(e),c("kai-change",{value:e}))};Object.defineProperty(i,"value",{get:()=>s(),set:e=>{const v=t(e);w(s)!==v&&d(v)},configurable:!0,enumerable:!0}),q(()=>{const e=s();e?i.getAttribute("value")!==e&&i.setAttribute("value",e):i.hasAttribute("value")&&i.removeAttribute("value")});const o=()=>(u.options??[]).map(e=>({value:e.value,label:e.label,icon:e.icon?E(e.icon,{class:"size-4 shrink-0",imgClass:"size-4 shrink-0",spanClass:"inline-flex size-4 shrink-0 items-center justify-center",ariaHidden:!0}):void 0}));return[L(),p(K,{get options(){return o()},get value(){return s()},get size(){return u.size??"md"},onChange:e=>n(e)})]});
|
package/dist/elements/select.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f,g as h,z as v,j as A,c as y}from"../define-
|
|
1
|
+
import{f,g as h,z as v,j as A,c as y}from"../define-B3OpsIDE.js";import{S as q}from"../select-CS_0mWW3.js";f("kai-select",{options:[],value:void 0,placeholder:void 0,multiple:void 0,invalid:void 0,disabled:void 0,required:void 0,label:void 0,name:void 0},(l,d)=>{const{element:r,dispatch:g,flag:a,expose:c}=d,s=l.value??r.getAttribute("value")??"",[i,n]=h(s?[s]:[]),o=()=>i()[0]??"",b=e=>e==null?r.getAttribute("value")??"":String(e),p=e=>{const t=v(i);t.length===e.length&&t.every((u,m)=>u===e[m])||(n(e),g("kai-change",{value:e[0]??"",values:e}))};return Object.defineProperty(r,"value",{get:()=>o(),set:e=>{const t=b(e);v(o)!==t&&n(t?[t]:[])},configurable:!0,enumerable:!0}),Object.defineProperty(r,"values",{get:()=>i(),set:e=>n(Array.isArray(e)?e.map(String):[]),configurable:!0,enumerable:!0}),A(()=>{const e=o();e?r.getAttribute("value")!==e&&r.setAttribute("value",e):r.hasAttribute("value")&&r.removeAttribute("value")}),c({focus:e=>{var t,u;return(u=(t=r.shadowRoot)==null?void 0:t.querySelector("select"))==null?void 0:u.focus(e)}}),y(q,{get options(){return l.options??[]},get value(){return i()},get placeholder(){return l.placeholder},get multiple(){return a("multiple")},get invalid(){return a("invalid")},get disabled(){return a("disabled")},get required(){return a("required")},get"aria-label"(){return l.label},get name(){return l.name},onChange:e=>p([...e.currentTarget.selectedOptions].map(t=>t.value))})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as o,i,c as e,t as n}from"../define-
|
|
1
|
+
import{f as o,i,c as e,t as n}from"../define-B3OpsIDE.js";import{S as s}from"../separator-fT-zBypW.js";var l=n("<style>");o("kai-separator",{orientation:"horizontal"},a=>{const t=()=>a.orientation==="vertical";return[(()=>{var r=l();return i(r,()=>t()?":host{display:inline-block;align-self:stretch}":":host{display:block}"),r})(),e(s,{get orientation(){return t()?"vertical":"horizontal"},part:"separator"})]});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as i,g as a,o as c,h as l,c as u,m as b,v as d,t as m}from"../define-
|
|
1
|
+
import{f as i,g as a,o as c,h as l,c as u,m as b,v as d,t as m}from"../define-B3OpsIDE.js";import{S as p}from"../settings-group-CX694npG.js";var v=m("<slot name=control>");i("kai-setting-item",{label:"",description:void 0},(t,{element:r})=>{const[s,n]=a(!1);return c(()=>{const e=()=>n(!!r.querySelector(':scope > [slot="control"]'));e();const o=new MutationObserver(e);o.observe(r,{childList:!0,attributes:!0,subtree:!0}),l(()=>o.disconnect())}),u(p,{get label(){return t.label??""},get description(){return t.description},get control(){return b(()=>!!s())()?(()=>{var e=v();return e._$owner=d(),e})():void 0}})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as t,c as e,v as n,t as o}from"../define-
|
|
1
|
+
import{f as t,c as e,v as n,t as o}from"../define-B3OpsIDE.js";import{a}from"../settings-group-CX694npG.js";var s=o("<slot>");t("kai-settings-group",{heading:"",description:void 0},r=>e(a,{get heading(){return r.heading??""},get description(){return r.description},get children(){var i=s();return i._$owner=n(),i}}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as e,c as i,m as r,t as a}from"../define-
|
|
1
|
+
import{f as e,c as i,m as r,t as a}from"../define-B3OpsIDE.js";import{S as n}from"../skeleton-BsqKD9TV.js";var s=a("<style>:host{display:block}");e("kai-skeleton",{variant:"text",width:void 0,height:void 0,lines:void 0},t=>[s(),i(n,{get variant(){return t.variant??"text"},get width(){return t.width},get height(){return t.height},get lines(){return r(()=>t.lines!=null)()?Number(t.lines):void 0}})]);
|
package/dist/elements/slider.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as A,g as N,z as l,j as h,c as L}from"../define-
|
|
1
|
+
import{f as A,g as N,z as l,j as h,c as L}from"../define-B3OpsIDE.js";import{S}from"../slider-_EWfTH9H.js";A("kai-slider",{min:void 0,max:void 0,step:void 0,value:void 0,disabled:void 0,label:void 0,name:void 0,valueLabel:void 0},(r,g)=>{const{element:a,dispatch:m,flag:o,expose:c}=g,n=(e,t)=>{if(e==null||typeof e=="string"&&e.trim()==="")return t;const i=Number(e);return Number.isFinite(i)?i:t},s=()=>n(r.min,0),v=()=>n(r.max,100),[u,b]=N(r.value!=null?n(r.value,(s()+v())/2):n(a.getAttribute("value"),(s()+v())/2)),p=e=>e==null?n(a.getAttribute("value"),l(u)):n(e,l(u)),d=(e,t)=>{o("disabled")||t==="kai-input"&&l(u)===e||(b(e),m(t,{value:e}))};Object.defineProperty(a,"value",{get:()=>u(),set:e=>{const t=p(e);l(u)!==t&&b(t)},configurable:!0,enumerable:!0}),h(()=>{const e=String(u());a.getAttribute("value")!==e&&a.setAttribute("value",e)}),c({focus:e=>{var t,i;return(i=(t=a.shadowRoot)==null?void 0:t.querySelector('input[type="range"]'))==null?void 0:i.focus(e)}});const f=()=>{const e=r.step;if(e==null)return;if(String(e)==="any")return"any";const t=Number(e);return Number.isFinite(t)?t:void 0},y=()=>{const e=r.valueLabel;return typeof e=="function"?e:o("valueLabel")};return L(S,{get min(){return s()},get max(){return v()},get step(){return f()},get value(){return u()},get disabled(){return o("disabled")},get"aria-label"(){return r.label},get name(){return r.name},get valueLabel(){return y()},onInput:e=>d(e.currentTarget.valueAsNumber,"kai-input"),onChange:e=>d(e.currentTarget.valueAsNumber,"kai-change")})});
|
package/dist/elements/source.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as o,c as t,S as v,g as p,o as w,h as m,F,m as A,t as S}from"../define-
|
|
1
|
+
import{f as o,c as t,S as v,g as p,o as w,h as m,F,m as A,t as S}from"../define-B3OpsIDE.js";import{a,b as c,c as l,S as k}from"../source-Da1TFiuj.js";var y=S("<style>:host{display:inline-flex}");o("kai-source",{href:"",label:void 0,headline:"",description:"",showFavicon:!1},(e,{flag:n})=>[y(),t(v,{get when(){return e.href},get children(){return t(a,{get href(){return e.href},get children(){return[t(c,{get label(){return e.label},get showFavicon(){return n("showFavicon")}}),t(l,{get title(){return e.headline??""},get description(){return e.description??""}})]}})}})]);function u(e){return{href:e.getAttribute("href")??"",label:e.getAttribute("label")??void 0,title:e.getAttribute("headline")??void 0,description:e.getAttribute("description")??void 0,showFavicon:e.hasAttribute("show-favicon")&&e.getAttribute("show-favicon")!=="false"}}o("kai-sources",{sources:[],showFavicon:!1,numbered:!1},(e,{element:n,flag:s})=>{const[h,d]=p([]);w(()=>{const r=()=>{const f=[...n.querySelectorAll("kai-source")];d(f.map(u))};r();const i=new MutationObserver(r);i.observe(n,{childList:!0,attributes:!0,subtree:!0}),m(()=>i.disconnect())});const g=()=>[...e.sources??[],...h()],b=()=>s("numbered");return t(k,{get children(){return t(F,{get each(){return g()},children:(r,i)=>t(a,{get href(){return r.href},get children(){return[t(c,{get label(){return A(()=>!!b())()?i()+1:r.label},get showFavicon(){return r.showFavicon??s("showFavicon")}}),t(l,{get title(){return r.title??""},get description(){return r.description??""}})]}})})}})});export{u as parseKaiSourceElement};
|
package/dist/elements/status.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as h,i as w,c as g,a as p,b as v,S as z,p as y,q as x,d as l,t as r,f as k}from"../define-
|
|
1
|
+
import{s as h,i as w,c as g,a as p,b as v,S as z,p as y,q as x,d as l,t as r,f as k}from"../define-B3OpsIDE.js";import{c as i}from"../cn-DN5AWfiS.js";var C=r("<span aria-hidden=true>"),S=r("<span><span>");const m={new:"bg-tool-blue",online:"bg-tool-green",busy:"bg-tool-red",away:"bg-tool-amber",offline:"bg-muted-foreground"},q={sm:"size-2",md:"size-2.5"};function A(t){const[s,c]=h(t,["status","size","pulse","label","class"]),n=()=>s.status??"new";return(()=>{var a=S(),o=a.firstChild;return w(a,g(z,{get when(){return s.pulse},get children(){var e=C();return p(()=>v(e,i("absolute inline-flex h-full w-full animate-ping rounded-full opacity-75 motion-reduce:hidden",m[n()]))),e}}),o),y(o,x(c,{get class(){return i("relative inline-block rounded-full",m[n()],q[s.size??"sm"])}}),!1,!1),p(e=>{var u=i("relative inline-flex",s.class),d=s.label?"status":void 0,b=s.label,f=s.label?void 0:"true";return u!==e.e&&v(a,e.e=u),d!==e.t&&l(a,"role",e.t=d),b!==e.a&&l(a,"aria-label",e.a=b),f!==e.o&&l(a,"aria-hidden",e.o=f),e},{e:void 0,t:void 0,a:void 0,o:void 0}),a})()}var _=r("<style>:host{display:inline-flex}");k("kai-status",{status:"new",pulse:!1,label:void 0,size:"sm"},(t,{flag:s})=>[_(),g(A,{get status(){return t.status??"new"},get size(){return t.size??"sm"},get pulse(){return s("pulse")},get label(){return t.label},part:"dot"})]);
|
package/dist/elements/switch.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as b,g as k,z as o,j as v,c as f}from"../define-
|
|
1
|
+
import{f as b,g as k,z as o,j as v,c as f}from"../define-B3OpsIDE.js";import{S as m}from"../switch-P_fsHqv3.js";b("kai-switch",{checked:void 0,defaultChecked:void 0,disabled:void 0,label:void 0,name:void 0,value:void 0},(d,n)=>{const{element:t,dispatch:s,flag:r,expose:h}=n,[a,l]=k(r("defaultChecked")||r("checked")),g=e=>e===!0?!0:e===!1?!1:t.hasAttribute("checked")&&t.getAttribute("checked")!=="false",i=e=>{r("disabled")||o(a)!==e&&(l(e),s("kai-change",{checked:e}))};return Object.defineProperty(t,"checked",{get:()=>a(),set:e=>{const c=g(e);o(a)!==c&&l(c)},configurable:!0,enumerable:!0}),v(()=>{const e=a();e!==t.hasAttribute("checked")&&t.toggleAttribute("checked",e)}),h({toggle:()=>i(!o(a)),focus:e=>{var c,u;return(u=(c=t.shadowRoot)==null?void 0:c.querySelector('button[role="switch"]'))==null?void 0:u.focus(e)}}),f(m,{get checked(){return a()},get disabled(){return r("disabled")},get label(){return d.label},get name(){return d.name},get value(){return d.value},onChange:e=>i(e)})});
|
package/dist/elements/tabs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as E,u as C,p as V,q as j,i as k,c as D,a as z,d as x,b as F,F as H,t as q,e as I,f as L,g as R}from"../define-
|
|
1
|
+
import{s as E,u as C,p as V,q as j,i as k,c as D,a as z,d as x,b as F,F as H,t as q,e as I,f as L,g as R}from"../define-B3OpsIDE.js";import{r as S}from"../icon-BOMrFp0D.js";import{c as h}from"../cn-DN5AWfiS.js";var B=q("<div>"),K=q("<button type=button part=tab role=tab>");const N={segmented:"inline-flex items-center gap-1 rounded-lg bg-muted p-1",underline:"inline-flex items-center gap-1 border-b border-border"};function P(l,a){const s="inline-flex items-center gap-1.5 whitespace-nowrap text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50";return l==="underline"?h(s,"border-b-2 px-3 py-2 -mb-px",a?"border-primary text-foreground":"border-transparent text-muted-foreground hover:text-foreground"):h(s,"rounded-md px-3 py-1.5",a?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground")}function T(l){const[a,s]=E(l,["items","value","variant","block","disabled","onChange","ref","class"]),b=()=>a.items??[],v=()=>a.variant??"segmented",f={},u=()=>b().filter(t=>!t.disabled),o=()=>a.value,c=()=>{var t;return o()!==void 0&&u().some(r=>r.id===o())?o():(t=u()[0])==null?void 0:t.id},n=t=>{var r;a.disabled||t.disabled||t.id!==a.value&&((r=a.onChange)==null||r.call(a,t.id))},g=t=>{const r=f[t];r&&r.focus()},m=(t,r)=>{const i=u();if(i.length===0)return;const d=i.findIndex(p=>p.id===r.id);let e;switch(t.key){case"ArrowRight":case"ArrowDown":e=i[(d+1)%i.length];break;case"ArrowLeft":case"ArrowUp":e=i[(d-1+i.length)%i.length];break;case"Home":e=i[0];break;case"End":e=i[i.length-1];break;case"Enter":case" ":t.preventDefault(),n(r);return;default:return}e&&(t.preventDefault(),n(e),g(e.id))};return(()=>{var t=B();return C(r=>{var i;return(i=a.ref)==null?void 0:i.call(a,r)},t),V(t,j(s,{role:"tablist",part:"tablist",get"aria-disabled"(){return a.disabled?"true":void 0},get class(){return h(N[v()],a.block&&"flex w-full",a.class)}}),!1,!0),k(t,D(H,{get each(){return b()},children:r=>{const i=()=>r.id===o();return(()=>{var d=K();return d.$$keydown=e=>m(e,r),d.$$click=()=>n(r),C(e=>{f[r.id]=e},d),k(d,()=>S(r.icon,{class:"size-4 shrink-0"}),null),k(d,()=>r.label,null),z(e=>{var p=i()?"":void 0,w=i()?"true":"false",y=r.id===c()?0:-1,A=a.disabled||r.disabled,$=h(P(v(),i()),a.block&&"flex-1 justify-center");return p!==e.e&&x(d,"data-active",e.e=p),w!==e.t&&x(d,"aria-selected",e.t=w),y!==e.a&&x(d,"tabindex",e.a=y),A!==e.o&&(d.disabled=e.o=A),$!==e.i&&F(d,e.i=$),e},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),d})()}})),t})()}I(["click","keydown"]),L("kai-tabs",{items:void 0,value:void 0,defaultValue:void 0,variant:"segmented",block:void 0,disabled:void 0},(l,{dispatch:a,flag:s,expose:b})=>{const[v,f]=R(l.defaultValue),u=()=>l.value??v(),o=n=>{f(n),a("kai-tab-change",{value:n})};let c;return b({select:n=>{var g;const m=(g=l.items)==null?void 0:g.find(t=>t.id===n);!m||m.disabled||s("disabled")||o(n)},focus:()=>{var n;(n=c?.querySelector('[role="tab"][tabindex="0"]:not([disabled])'))==null||n.focus()}}),D(T,{get items(){return l.items},get value(){return u()},get variant(){return l.variant??"segmented"},get block(){return s("block")},get disabled(){return s("disabled")},onChange:o,ref:n=>c=n})});
|
package/dist/elements/tasks.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as i,c as u}from"../define-
|
|
1
|
+
import{f as i,c as u}from"../define-B3OpsIDE.js";import{T as s}from"../tasks-card-B86qqyZm.js";i("kai-tasks",{data:void 0,cardId:void 0,heading:void 0,resolution:void 0,value:void 0,defaultValue:void 0,disabled:!1,readonly:!1},(a,{element:t,dispatch:o,flag:d,expose:r})=>{let e;return r({select:l=>e?.select(l),toggle:(l,n)=>e?.toggle(l,n),send:()=>e?.send(),focus:l=>e?.focus(l),dismiss:()=>e?.dismiss(),reopen:()=>e?.reopen()}),u(s,{get data(){return a.data},get cardId(){return a.cardId??(t.id||"kai-tasks")},get heading(){return a.heading},get resolution(){return a.resolution},get value(){return a.value},get defaultValue(){return a.defaultValue},get disabled(){return d("disabled")},get readonly(){return d("readonly")},onValueChange:l=>o("kai-value-change",l),controllerRef:l=>e=l,hostElement:t})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as r,c as a}from"../define-
|
|
1
|
+
import{f as r,c as a}from"../define-B3OpsIDE.js";import{T as e}from"../text-shimmer-BAkw_65G.js";r("kai-text-shimmer",{text:"",as:"span",duration:4,spread:20},t=>a(e,{get as(){return t.as},get duration(){return t.duration},get spread(){return t.spread},class:"text-body",get children(){return t.text}}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as d,i as o,c as r,y as u,S as c,a as b,b as f,t as i,e as g,f as m}from"../define-
|
|
1
|
+
import{s as d,i as o,c as r,y as u,S as c,a as b,b as f,t as i,e as g,f as m}from"../define-B3OpsIDE.js";import{c as x}from"../cn-DN5AWfiS.js";import{T as p}from"../text-shimmer-BAkw_65G.js";import{c as h}from"../chevron-right-5gdxkCTF.js";var k=i('<button type=button class="flex items-center gap-1 text-sm transition-opacity hover:opacity-80">'),v=i('<button type=button class="text-muted-foreground hover:text-foreground border-muted-foreground/50 hover:border-foreground border-b border-dotted text-sm transition-colors">'),w=i("<div>");function y(n){const[t]=d(n,["class","text","onStop","stopLabel","onClick"]),s=()=>t.text??"Thinking",l=()=>t.stopLabel??"Answer now";return(()=>{var a=w();return o(a,r(c,{get when(){return t.onClick},get fallback(){return r(p,{class:"cursor-default text-sm font-medium",get children(){return s()}})},get children(){var e=k();return u(e,"click",t.onClick,!0),o(e,r(p,{class:"text-sm font-medium",get children(){return s()}}),null),o(e,r(h,{class:"text-muted-foreground size-4"}),null),e}}),null),o(a,r(c,{get when(){return t.onStop},get children(){var e=v();return u(e,"click",t.onStop,!0),o(e,l),e}}),null),b(()=>f(a,x("flex w-full items-center justify-between",t.class))),a})()}g(["click"]),m("kai-thinking-bar",{text:"Thinking",stoppable:!1,stopLabel:"Answer now"},(n,{dispatch:t,flag:s,reflectFlag:l})=>(l("stoppable"),r(y,{get text(){return n.text},get stopLabel(){return n.stopLabel},get onStop(){return s("stoppable")?()=>t("kai-stop"):void 0}})));
|
package/dist/elements/thread.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A as H,k as B,o as w,c as r,u as M,i as h,S as l,F as R,a as T,b as k,C as z,t as c,f as A,g as $,h as C,m as E,v as F}from"../define-
|
|
1
|
+
import{A as H,k as B,o as w,c as r,u as M,i as h,S as l,F as R,a as T,b as k,C as z,t as c,f as A,g as $,h as C,m as E,v as F}from"../define-B3OpsIDE.js";import{r as j,T as L}from"../slots-DaNjX0rc.js";import{C as q,a as N,b as O,S as U}from"../scroll-button--QeNjobK.js";import{M as _,a as x,b as D}from"../message-C88yTu2A.js";import{c as G,a as I,b as J}from"../message--Nlbemtp.js";import{L as K}from"../loader-BdFK70fF.js";var P=c('<div class="flex min-h-[10rem] flex-1 flex-col items-center justify-center gap-1 py-12 text-center"><p class="text-sm font-medium text-foreground">No messages yet</p><p class="text-xs text-muted-foreground">Messages will appear here as the conversation starts.'),Q=c('<div class="rounded-lg px-1 py-2">'),V=c('<div class="absolute bottom-4 left-1/2 flex w-full max-w-3xl -translate-x-1/2 justify-center px-5">'),S=c("<div>");function W(){return P()}function X(e){const i=H(),m=()=>e.actionsReveal==="hover"?"hover":"always";let o;const u=G({emit:a=>{var t;return(t=e.onMessageAction)==null?void 0:t.call(e,a)},target:()=>o}),g=()=>e.scrollButton!==!1,p=()=>e.messages.length===0&&!e.loading,v=B(()=>e.messages.map(a=>a.id));return w(()=>{var a;(a=e.controllerRef)==null||a.call(e,{scrollToBottom:t=>{const n=o?.querySelector(".overflow-y-auto");n?.scrollTo({top:n.scrollHeight,behavior:t??"smooth"})}})}),r(z,{get proseSize(){return e.proseSize},get codeTheme(){return e.codeTheme},get codeHighlight(){return e.codeHighlight!==!1},get portalMount(){return i.portalMount()},get children(){var a=S();return M(t=>o=t,a),h(a,r(q,{class:"h-full px-4 py-3",get children(){return[r(N,{class:"mx-auto w-full max-w-3xl space-y-4",get children(){return[r(l,{get when(){return p()},get children(){return r(l,{get when(){return e.empty},get fallback(){return r(W,{})},get children(){return e.empty}})}}),r(R,{get each(){return v()},children:(t,n)=>r(l,{get when(){return e.messages[n()]},children:s=>{const y=r(_,{get parts(){return s().parts},get cardTypes(){return e.cardTypes},get cardSchemas(){return e.cardSchemas},get cardHostElement(){return e.cardHostElement},get isUser(){return s().role==="user"},get markdown(){return s().role==="assistant"},get actions(){return s().actions},get actionsReveal(){return m()},get activeFeedback(){return u.resolveFeedback(s())},get copied(){return u.isCopied(s().id)},onAction:d=>u.handleAction(s(),d)}),b=()=>m()==="hover"?"group ":"";return r(l,{get when(){return s().avatar},get fallback(){return r(x,{get role(){return s().role},get class(){return`${b()}${s().role==="user"?"flex-col items-end":"flex-col items-start"}`},children:y})},children:d=>r(x,{get role(){return s().role},get class(){return b()},get children(){return[r(D,{get src(){return d().src??""},get alt(){return d().alt??""},get fallback(){return d().fallback}}),(()=>{var f=S();return h(f,y),T(()=>k(f,`flex min-w-0 flex-1 flex-col ${s().role==="user"?"items-end":"items-start"}`)),f})()]}})})}})}),r(l,{get when(){return e.loading},get children(){return r(x,{class:"flex-col items-start",get children(){var t=Q();return h(t,r(K,{variant:"typing"})),t}})}}),r(O,{})]}}),r(l,{get when(){return g()},get children(){var t=V();return h(t,r(U,{})),t}})]}})),T(()=>k(a,`relative flex h-full min-h-0 flex-col bg-background ${e.class??""}`)),a}})}var Y=c("<style>:host{display:block;height:100%}"),Z=c("<slot name=empty>");A("kai-thread",{messages:void 0,loading:!1,proseSize:"sm",codeTheme:"github-dark-dimmed",codeHighlight:!0,actionsReveal:"always",scrollButton:!0,class:void 0,cardTypes:void 0,cardSchemas:void 0},(e,{element:i,dispatch:m,flag:o,expose:u})=>{let g;const p=J("kai-thread"),[v,a]=$({});return w(()=>{const t=()=>a(j(i,L));t();const n=new MutationObserver(t);n.observe(i,{childList:!0}),C(()=>n.disconnect())}),u({scrollToBottom:t=>g?.scrollToBottom(t)}),[Y(),r(X,{get class(){return e.class},get messages(){return p(e.messages)},get loading(){return o("loading")},get proseSize(){return e.proseSize},get codeTheme(){return e.codeTheme},get codeHighlight(){return o("codeHighlight")},get actionsReveal(){return e.actionsReveal},get scrollButton(){return e.scrollButton!==!1},get cardTypes(){return I(e.cardTypes,e.theme)},get cardSchemas(){return e.cardSchemas},cardHostElement:i,get empty(){return E(()=>!!v().empty)()?(()=>{var t=Z();return t._$owner=F(),t})():void 0},onMessageAction:t=>m("kai-message-action",t),controllerRef:t=>g=t})]});
|
package/dist/elements/toast.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{g as y,k as Q,j as G,h as H,c as i,i as h,F as U,u as V,a as z,d as N,b as L,l as q,n as Z,S as b,t as D,x as ee,e as ie,f as ae}from"../define-By-uL588.js";import{c as g}from"../cn-DN5AWfiS.js";import{c as se}from"../overlay-Cb-MkyDa.js";import{r as te,t as de}from"../toast-store-tgK6MuMv.js";import{c as le}from"../check-njkVdZu2.js";import{c as ce}from"../circle-x-BPG0iPst.js";import{i as ue}from"../info-DsFjGuI_.js";import{t as me}from"../triangle-alert-DlQ68ppf.js";import{x as pe}from"../x-Z5UntkIJ.js";var ve=D("<button type=button>"),fe=D("<button type=button aria-label=Dismiss>"),J=D("<div>"),ge=D('<div class="min-w-0 flex-1"><div class="font-medium leading-snug">'),he=D('<span class="min-w-0 flex-1 truncate">'),xe=D('<div role=region aria-label=Notifications aria-live=polite data-stack=collapsed style="z-index:var(--kai-toast-z, 100)"><div class="pointer-events-auto relative transition-[height] duration-200 ease-out"style="min-width:16rem;max-width:min(30rem, calc(100vw - 2rem))">'),be=D('<div role=region aria-label=Notifications aria-live=polite data-stack=expanded style="z-index:var(--kai-toast-z, 100)">');function we(){var t,c;const[u,f]=y(typeof window<"u"&&((t=window.matchMedia)==null?void 0:t.call(window,"(prefers-reduced-motion: reduce)").matches)===!0);if(typeof window<"u"&&window.matchMedia){const m=window.matchMedia("(prefers-reduced-motion: reduce)"),l=()=>f(m.matches);(c=m.addEventListener)==null||c.call(m,"change",l),H(()=>{var d;return(d=m.removeEventListener)==null?void 0:d.call(m,"change",l)})}return u}function re(t){const[c,u]=y(!0),f=se(c),m=()=>t.item.variant??"neutral",l=()=>t.item.dismissible!==!1,d=()=>t.item.appearance??t.appearance??"pill",v=()=>t.item.inverse??t.inverse??!1,I=()=>v()?"bg-foreground text-background border-transparent":"bg-popover text-popover-foreground border-border",Y=()=>v()?"text-background/70":"text-muted-foreground",E=()=>v()?"text-background hover:text-background/80":"text-primary hover:text-primary/80",S=()=>v()?"text-background/70 hover:text-background":"text-muted-foreground hover:text-foreground";let A=te(t.item),T=0,k,$="timeout";const w=()=>{k!==void 0&&(clearTimeout(k),k=void 0)},j=()=>{w(),!(A<=0)&&(T=Date.now(),k=setTimeout(()=>{$="timeout",u(!1)},A))},K=()=>{k!==void 0&&(w(),A-=Date.now()-T)},[P,X]=y(!1),F=()=>t.paused===!0||P();G(ee(()=>te(t.item),e=>{A=e,F()?w():j()})),G(ee(F,e=>{e?K():j()},{defer:!0})),H(w),G(()=>{!f.present()&&!c()&&t.onDismiss($)});const _=()=>{w(),$="close",u(!1)},R=()=>{var e;const o=t.item.action;o&&((e=t.onAction)==null||e.call(t,o.label),o.onAction()===!1||(w(),$="action",u(!1)))},x=()=>d()==="card"?"mt-0.5":void 0,B=()=>[i(b,{get when(){return m()==="success"},get children(){return i(le,{get class(){return g("size-4 shrink-0 text-emerald-500",x())}})}}),i(b,{get when(){return m()==="warning"},get children(){return i(me,{get class(){return g("size-4 shrink-0 text-warning",x())}})}}),i(b,{get when(){return m()==="error"},get children(){return i(ce,{get class(){return g("size-4 shrink-0 text-destructive",x())}})}}),i(b,{get when(){return m()==="info"},get children(){return i(ue,{get class(){return g("size-4 shrink-0 text-info",x())}})}})],n=e=>i(b,{get when(){return t.item.action},children:o=>(()=>{var r=ve();return r.$$click=R,h(r,()=>o().label),z(()=>L(r,g(d()==="card"?g("inline-flex shrink-0 items-center rounded-md border px-2.5 py-1 text-xs font-medium transition-colors",v()?"border-background/30 text-background hover:bg-background/10":"border-border text-foreground hover:bg-accent"):g("shrink-0 rounded-md text-sm font-medium underline-offset-2 hover:underline",E()),e.class))),r})()}),a=()=>i(b,{get when(){return l()},get children(){var e=fe();return e.$$click=_,h(e,i(pe,{class:"size-3.5"})),z(()=>L(e,g("-mr-1 flex size-5 shrink-0 items-center justify-center rounded-md transition-colors",S()))),e}});return i(b,{get when(){return f.present()},get children(){var e=J();e.addEventListener("pointerleave",()=>X(!1)),e.addEventListener("pointerenter",()=>X(!0));var o=f.setRef;return typeof o=="function"?V(o,e):f.setRef=e,h(e,i(B,{}),null),h(e,i(b,{get when(){return d()==="card"},get fallback(){return[(()=>{var r=he();return h(r,()=>t.item.message),r})(),i(n,{}),i(a,{})]},get children(){return[(()=>{var r=ge(),s=r.firstChild;return h(s,()=>t.item.message),h(r,i(b,{get when(){return t.item.description},get children(){var p=J();return h(p,()=>t.item.description),z(()=>L(p,g("mt-1 line-clamp-2 text-xs leading-snug",Y()))),p}}),null),h(r,i(n,{class:"mt-2"}),null),r})(),i(a,{})]}}),null),z(r=>{var s=m()==="error"?"alert":"status",p=d(),M=v()?"":void 0,C=f.state()==="closed"?"":void 0,O=g("pointer-events-auto border text-sm shadow-lg",I(),"animate-in fade-in-0 slide-in-from-top-4","data-[closed]:animate-out data-[closed]:fade-out-0 data-[closed]:slide-out-to-top-2",d()==="card"?"flex min-w-[24rem] items-start gap-3 rounded-xl p-4 shadow-xl":"flex items-center gap-3 rounded-full px-4 py-2.5");return s!==r.e&&N(e,"role",r.e=s),p!==r.t&&N(e,"data-appearance",r.t=p),M!==r.a&&N(e,"data-inverse",r.a=M),C!==r.o&&N(e,"data-closed",r.o=C),O!==r.i&&L(e,r.i=O),r},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),e}})}const ne={"top-center":"top-4 left-1/2 -translate-x-1/2 items-center","top-right":"top-4 right-4 items-end","top-left":"top-4 left-4 items-start","bottom-center":"bottom-4 left-1/2 -translate-x-1/2 items-center flex-col-reverse","bottom-right":"bottom-4 right-4 items-end flex-col-reverse","bottom-left":"bottom-4 left-4 items-start flex-col-reverse"},ke={"top-center":"items-center","top-left":"items-start","top-right":"items-end","bottom-center":"items-center flex-col-reverse","bottom-left":"items-start flex-col-reverse","bottom-right":"items-end flex-col-reverse"},W=12;function oe(t,c){const u=c.left+c.width/2,f=c.top+W,m=c.bottom-W,l=c.left+W,d=c.right-W,v=`${Math.max(0,c.width-W*2)}px`;switch(t){case"top-left":return{top:`${f}px`,left:`${l}px`,transform:"none","max-width":v};case"top-right":return{top:`${f}px`,left:`${d}px`,transform:"translateX(-100%)","max-width":v};case"bottom-center":return{top:`${m}px`,left:`${u}px`,transform:"translate(-50%, -100%)","max-width":v};case"bottom-left":return{top:`${m}px`,left:`${l}px`,transform:"translateY(-100%)","max-width":v};case"bottom-right":return{top:`${m}px`,left:`${d}px`,transform:"translate(-100%, -100%)","max-width":v};default:return{top:`${f}px`,left:`${u}px`,transform:"translateX(-50%)","max-width":v}}}function $e(t){const c=()=>t.max??3,u=()=>t.position??"top-center",f=()=>t.stack??"expanded",m=we(),l=()=>f()==="collapsed"&&!m(),[d,v]=y(!1),[I,Y]=y(!1),E=()=>d()||I(),S=20,A=.05,T=48,k=8,$=()=>u().startsWith("bottom"),w=()=>$()?-1:1,[j,K]=y(T),P=n=>{if(!n||typeof window>"u")return;const a=()=>{const o=n.offsetHeight;o&&K(o)};if(a(),typeof ResizeObserver>"u")return;const e=new ResizeObserver(a);e.observe(n),H(()=>e.disconnect())},X=n=>E()?`translateY(${w()*(j()+k)*n}px) scale(1)`:`translateY(${w()*S*n}px) scale(${1-A*n})`,F=()=>{const n=R().length;return n?E()?n*j()+(n-1)*k:j()+(n-1)*S:0},_=Q(()=>[...(t.toasts??[]).filter(n=>(n.target??void 0)===t.target)].reverse()),R=Q(()=>_().slice(0,c())),[x,B]=y(null);return G(()=>{const n=t.target;if(!n||typeof window>"u"){B(null);return}const a=window,e=()=>{const r=n.getBoundingClientRect();B({top:r.top,left:r.left,right:r.right,bottom:r.bottom,width:r.width})};e();const o=new ResizeObserver(e);o.observe(n),a.addEventListener("scroll",e,!0),a.addEventListener("resize",e),H(()=>{o.disconnect(),a.removeEventListener("scroll",e,!0),a.removeEventListener("resize",e)})}),i(b,{get when(){return l()},get fallback(){return(()=>{var n=be();return h(n,i(U,{get each(){return R()},children:a=>i(re,{item:a,get appearance(){return t.appearance},get inverse(){return t.inverse},onDismiss:e=>{var o;return(o=t.onDismiss)==null?void 0:o.call(t,a.id,e)},onAction:e=>{var o;return(o=t.onAction)==null?void 0:o.call(t,a.id,e)}})})),z(a=>{var e=g("pointer-events-none fixed flex flex-col gap-2",x()?ke[u()]:g("max-w-[min(30rem,calc(100vw-2rem))]",ne[u()])),o={...x()?oe(u(),x()):void 0};return e!==a.e&&L(n,a.e=e),a.t=Z(n,o,a.t),a},{e:void 0,t:void 0}),n})()},get children(){var n=xe(),a=n.firstChild;return n.$$focusout=()=>Y(!1),n.$$focusin=()=>Y(!0),n.addEventListener("pointerleave",()=>v(!1)),n.addEventListener("pointerenter",()=>v(!0)),h(a,i(U,{get each(){return R()},children:(e,o)=>(()=>{var r=J();return V(s=>{o()===0&&P(s)},r),h(r,i(re,{item:e,get paused(){return E()},get appearance(){return t.appearance},get inverse(){return t.inverse},onDismiss:s=>{var p;return(p=t.onDismiss)==null?void 0:p.call(t,e.id,s)},onAction:s=>{var p;return(p=t.onAction)==null?void 0:p.call(t,e.id,s)}})),z(s=>{var p=o(),M=g("absolute inset-x-0 flex transition-[transform,opacity] duration-200 ease-out",$()?"bottom-0 origin-bottom":"top-0 origin-top",u().endsWith("right")?"justify-end":u().endsWith("left")?"justify-start":"justify-center"),C=String(c()-o()),O=X(o());return p!==s.e&&N(r,"data-depth",s.e=p),M!==s.t&&L(r,s.t=M),C!==s.a&&q(r,"z-index",s.a=C),O!==s.o&&q(r,"transform",s.o=O),s},{e:void 0,t:void 0,a:void 0,o:void 0}),r})()})),z(e=>{var o=E()?"":void 0,r=g("pointer-events-none fixed",!x()&&ne[u()]),s={...x()?oe(u(),x()):void 0},p=`${F()}px`;return o!==e.e&&N(n,"data-expanded",e.e=o),r!==e.t&&L(n,e.t=r),e.a=Z(n,s,e.a),p!==e.o&&q(a,"height",e.o=p),e},{e:void 0,t:void 0,a:void 0,o:void 0}),n}})}ie(["click","focusin","focusout"]),ae("kai-toast-region",{toasts:[],position:"top-center",max:3,stack:"expanded",appearance:"pill",inverse:!1,target:void 0},(t,{dispatch:c,flag:u})=>{const f=()=>{const l=t.max,d=typeof l=="string"?parseInt(l,10):l;return typeof d=="number"&&!Number.isNaN(d)?d:3},m=l=>{de.dismiss(l)};return i($e,{get toasts(){return t.toasts??[]},get position(){return t.position},get max(){return f()},get stack(){return t.stack},get appearance(){return t.appearance},get inverse(){return u("inverse")},get target(){return t.target},onDismiss:(l,d)=>{m(l),c("kai-dismiss",{id:l,reason:d})},onAction:(l,d)=>c("kai-action",{id:l,label:d})})});
|
|
1
|
+
import{g as y,k as Q,j as G,h as H,c as i,i as h,F as U,u as V,a as z,d as N,b as L,l as q,n as Z,S as b,t as D,x as ee,e as ie,f as ae}from"../define-B3OpsIDE.js";import{c as g}from"../cn-DN5AWfiS.js";import{c as se}from"../overlay-CDwKJtHN.js";import{r as te,t as de}from"../toast-store-B94I50AO.js";import{c as le}from"../check-BG1VfYjm.js";import{c as ce}from"../circle-x-DzUfvRqr.js";import{i as ue}from"../info-DxzKsIHn.js";import{t as me}from"../triangle-alert-CCtDUUmn.js";import{x as pe}from"../x-C4niw05N.js";var ve=D("<button type=button>"),fe=D("<button type=button aria-label=Dismiss>"),J=D("<div>"),ge=D('<div class="min-w-0 flex-1"><div class="font-medium leading-snug">'),he=D('<span class="min-w-0 flex-1 truncate">'),xe=D('<div role=region aria-label=Notifications aria-live=polite data-stack=collapsed style="z-index:var(--kai-toast-z, 100)"><div class="pointer-events-auto relative transition-[height] duration-200 ease-out"style="min-width:16rem;max-width:min(30rem, calc(100vw - 2rem))">'),be=D('<div role=region aria-label=Notifications aria-live=polite data-stack=expanded style="z-index:var(--kai-toast-z, 100)">');function we(){var t,c;const[u,f]=y(typeof window<"u"&&((t=window.matchMedia)==null?void 0:t.call(window,"(prefers-reduced-motion: reduce)").matches)===!0);if(typeof window<"u"&&window.matchMedia){const m=window.matchMedia("(prefers-reduced-motion: reduce)"),l=()=>f(m.matches);(c=m.addEventListener)==null||c.call(m,"change",l),H(()=>{var d;return(d=m.removeEventListener)==null?void 0:d.call(m,"change",l)})}return u}function re(t){const[c,u]=y(!0),f=se(c),m=()=>t.item.variant??"neutral",l=()=>t.item.dismissible!==!1,d=()=>t.item.appearance??t.appearance??"pill",v=()=>t.item.inverse??t.inverse??!1,I=()=>v()?"bg-foreground text-background border-transparent":"bg-popover text-popover-foreground border-border",Y=()=>v()?"text-background/70":"text-muted-foreground",E=()=>v()?"text-background hover:text-background/80":"text-primary hover:text-primary/80",S=()=>v()?"text-background/70 hover:text-background":"text-muted-foreground hover:text-foreground";let A=te(t.item),T=0,k,$="timeout";const w=()=>{k!==void 0&&(clearTimeout(k),k=void 0)},j=()=>{w(),!(A<=0)&&(T=Date.now(),k=setTimeout(()=>{$="timeout",u(!1)},A))},K=()=>{k!==void 0&&(w(),A-=Date.now()-T)},[P,X]=y(!1),F=()=>t.paused===!0||P();G(ee(()=>te(t.item),e=>{A=e,F()?w():j()})),G(ee(F,e=>{e?K():j()},{defer:!0})),H(w),G(()=>{!f.present()&&!c()&&t.onDismiss($)});const _=()=>{w(),$="close",u(!1)},R=()=>{var e;const o=t.item.action;o&&((e=t.onAction)==null||e.call(t,o.label),o.onAction()===!1||(w(),$="action",u(!1)))},x=()=>d()==="card"?"mt-0.5":void 0,B=()=>[i(b,{get when(){return m()==="success"},get children(){return i(le,{get class(){return g("size-4 shrink-0 text-emerald-500",x())}})}}),i(b,{get when(){return m()==="warning"},get children(){return i(me,{get class(){return g("size-4 shrink-0 text-warning",x())}})}}),i(b,{get when(){return m()==="error"},get children(){return i(ce,{get class(){return g("size-4 shrink-0 text-destructive",x())}})}}),i(b,{get when(){return m()==="info"},get children(){return i(ue,{get class(){return g("size-4 shrink-0 text-info",x())}})}})],n=e=>i(b,{get when(){return t.item.action},children:o=>(()=>{var r=ve();return r.$$click=R,h(r,()=>o().label),z(()=>L(r,g(d()==="card"?g("inline-flex shrink-0 items-center rounded-md border px-2.5 py-1 text-xs font-medium transition-colors",v()?"border-background/30 text-background hover:bg-background/10":"border-border text-foreground hover:bg-accent"):g("shrink-0 rounded-md text-sm font-medium underline-offset-2 hover:underline",E()),e.class))),r})()}),a=()=>i(b,{get when(){return l()},get children(){var e=fe();return e.$$click=_,h(e,i(pe,{class:"size-3.5"})),z(()=>L(e,g("-mr-1 flex size-5 shrink-0 items-center justify-center rounded-md transition-colors",S()))),e}});return i(b,{get when(){return f.present()},get children(){var e=J();e.addEventListener("pointerleave",()=>X(!1)),e.addEventListener("pointerenter",()=>X(!0));var o=f.setRef;return typeof o=="function"?V(o,e):f.setRef=e,h(e,i(B,{}),null),h(e,i(b,{get when(){return d()==="card"},get fallback(){return[(()=>{var r=he();return h(r,()=>t.item.message),r})(),i(n,{}),i(a,{})]},get children(){return[(()=>{var r=ge(),s=r.firstChild;return h(s,()=>t.item.message),h(r,i(b,{get when(){return t.item.description},get children(){var p=J();return h(p,()=>t.item.description),z(()=>L(p,g("mt-1 line-clamp-2 text-xs leading-snug",Y()))),p}}),null),h(r,i(n,{class:"mt-2"}),null),r})(),i(a,{})]}}),null),z(r=>{var s=m()==="error"?"alert":"status",p=d(),M=v()?"":void 0,C=f.state()==="closed"?"":void 0,O=g("pointer-events-auto border text-sm shadow-lg",I(),"animate-in fade-in-0 slide-in-from-top-4","data-[closed]:animate-out data-[closed]:fade-out-0 data-[closed]:slide-out-to-top-2",d()==="card"?"flex min-w-[24rem] items-start gap-3 rounded-xl p-4 shadow-xl":"flex items-center gap-3 rounded-full px-4 py-2.5");return s!==r.e&&N(e,"role",r.e=s),p!==r.t&&N(e,"data-appearance",r.t=p),M!==r.a&&N(e,"data-inverse",r.a=M),C!==r.o&&N(e,"data-closed",r.o=C),O!==r.i&&L(e,r.i=O),r},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),e}})}const ne={"top-center":"top-4 left-1/2 -translate-x-1/2 items-center","top-right":"top-4 right-4 items-end","top-left":"top-4 left-4 items-start","bottom-center":"bottom-4 left-1/2 -translate-x-1/2 items-center flex-col-reverse","bottom-right":"bottom-4 right-4 items-end flex-col-reverse","bottom-left":"bottom-4 left-4 items-start flex-col-reverse"},ke={"top-center":"items-center","top-left":"items-start","top-right":"items-end","bottom-center":"items-center flex-col-reverse","bottom-left":"items-start flex-col-reverse","bottom-right":"items-end flex-col-reverse"},W=12;function oe(t,c){const u=c.left+c.width/2,f=c.top+W,m=c.bottom-W,l=c.left+W,d=c.right-W,v=`${Math.max(0,c.width-W*2)}px`;switch(t){case"top-left":return{top:`${f}px`,left:`${l}px`,transform:"none","max-width":v};case"top-right":return{top:`${f}px`,left:`${d}px`,transform:"translateX(-100%)","max-width":v};case"bottom-center":return{top:`${m}px`,left:`${u}px`,transform:"translate(-50%, -100%)","max-width":v};case"bottom-left":return{top:`${m}px`,left:`${l}px`,transform:"translateY(-100%)","max-width":v};case"bottom-right":return{top:`${m}px`,left:`${d}px`,transform:"translate(-100%, -100%)","max-width":v};default:return{top:`${f}px`,left:`${u}px`,transform:"translateX(-50%)","max-width":v}}}function $e(t){const c=()=>t.max??3,u=()=>t.position??"top-center",f=()=>t.stack??"expanded",m=we(),l=()=>f()==="collapsed"&&!m(),[d,v]=y(!1),[I,Y]=y(!1),E=()=>d()||I(),S=20,A=.05,T=48,k=8,$=()=>u().startsWith("bottom"),w=()=>$()?-1:1,[j,K]=y(T),P=n=>{if(!n||typeof window>"u")return;const a=()=>{const o=n.offsetHeight;o&&K(o)};if(a(),typeof ResizeObserver>"u")return;const e=new ResizeObserver(a);e.observe(n),H(()=>e.disconnect())},X=n=>E()?`translateY(${w()*(j()+k)*n}px) scale(1)`:`translateY(${w()*S*n}px) scale(${1-A*n})`,F=()=>{const n=R().length;return n?E()?n*j()+(n-1)*k:j()+(n-1)*S:0},_=Q(()=>[...(t.toasts??[]).filter(n=>(n.target??void 0)===t.target)].reverse()),R=Q(()=>_().slice(0,c())),[x,B]=y(null);return G(()=>{const n=t.target;if(!n||typeof window>"u"){B(null);return}const a=window,e=()=>{const r=n.getBoundingClientRect();B({top:r.top,left:r.left,right:r.right,bottom:r.bottom,width:r.width})};e();const o=new ResizeObserver(e);o.observe(n),a.addEventListener("scroll",e,!0),a.addEventListener("resize",e),H(()=>{o.disconnect(),a.removeEventListener("scroll",e,!0),a.removeEventListener("resize",e)})}),i(b,{get when(){return l()},get fallback(){return(()=>{var n=be();return h(n,i(U,{get each(){return R()},children:a=>i(re,{item:a,get appearance(){return t.appearance},get inverse(){return t.inverse},onDismiss:e=>{var o;return(o=t.onDismiss)==null?void 0:o.call(t,a.id,e)},onAction:e=>{var o;return(o=t.onAction)==null?void 0:o.call(t,a.id,e)}})})),z(a=>{var e=g("pointer-events-none fixed flex flex-col gap-2",x()?ke[u()]:g("max-w-[min(30rem,calc(100vw-2rem))]",ne[u()])),o={...x()?oe(u(),x()):void 0};return e!==a.e&&L(n,a.e=e),a.t=Z(n,o,a.t),a},{e:void 0,t:void 0}),n})()},get children(){var n=xe(),a=n.firstChild;return n.$$focusout=()=>Y(!1),n.$$focusin=()=>Y(!0),n.addEventListener("pointerleave",()=>v(!1)),n.addEventListener("pointerenter",()=>v(!0)),h(a,i(U,{get each(){return R()},children:(e,o)=>(()=>{var r=J();return V(s=>{o()===0&&P(s)},r),h(r,i(re,{item:e,get paused(){return E()},get appearance(){return t.appearance},get inverse(){return t.inverse},onDismiss:s=>{var p;return(p=t.onDismiss)==null?void 0:p.call(t,e.id,s)},onAction:s=>{var p;return(p=t.onAction)==null?void 0:p.call(t,e.id,s)}})),z(s=>{var p=o(),M=g("absolute inset-x-0 flex transition-[transform,opacity] duration-200 ease-out",$()?"bottom-0 origin-bottom":"top-0 origin-top",u().endsWith("right")?"justify-end":u().endsWith("left")?"justify-start":"justify-center"),C=String(c()-o()),O=X(o());return p!==s.e&&N(r,"data-depth",s.e=p),M!==s.t&&L(r,s.t=M),C!==s.a&&q(r,"z-index",s.a=C),O!==s.o&&q(r,"transform",s.o=O),s},{e:void 0,t:void 0,a:void 0,o:void 0}),r})()})),z(e=>{var o=E()?"":void 0,r=g("pointer-events-none fixed",!x()&&ne[u()]),s={...x()?oe(u(),x()):void 0},p=`${F()}px`;return o!==e.e&&N(n,"data-expanded",e.e=o),r!==e.t&&L(n,e.t=r),e.a=Z(n,s,e.a),p!==e.o&&q(a,"height",e.o=p),e},{e:void 0,t:void 0,a:void 0,o:void 0}),n}})}ie(["click","focusin","focusout"]),ae("kai-toast-region",{toasts:[],position:"top-center",max:3,stack:"expanded",appearance:"pill",inverse:!1,target:void 0},(t,{dispatch:c,flag:u})=>{const f=()=>{const l=t.max,d=typeof l=="string"?parseInt(l,10):l;return typeof d=="number"&&!Number.isNaN(d)?d:3},m=l=>{de.dismiss(l)};return i($e,{get toasts(){return t.toasts??[]},get position(){return t.position},get max(){return f()},get stack(){return t.stack},get appearance(){return t.appearance},get inverse(){return u("inverse")},get target(){return t.target},onDismiss:(l,d)=>{m(l),c("kai-dismiss",{id:l,reason:d})},onAction:(l,d)=>c("kai-action",{id:l,label:d})})});
|
package/dist/elements/tool.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as i,g as s,c as r,S as f}from"../define-
|
|
1
|
+
import{f as i,g as s,c as r,S as f}from"../define-B3OpsIDE.js";import{T as u}from"../tool-CUiCeyi1.js";import{w as g}from"../disclosure-ZSAlD4wg.js";i("kai-tool",{tool:void 0,open:void 0,defaultOpen:void 0,disabled:void 0},(e,t)=>{const{flag:o,reflectFlag:l}=t,[a,d]=s();return g(t,a,()=>e.open),l("disabled"),r(f,{get when(){return e.tool},get children(){return r(u,{get toolPart(){return e.tool},get defaultOpen(){return o("defaultOpen")},get disabled(){return o("disabled")},controllerRef:n=>d(n)})}})});
|
package/dist/elements/tooltip.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as i,c as d,v as s,m as r,t as a}from"../define-
|
|
1
|
+
import{f as i,c as d,v as s,m as r,t as a}from"../define-B3OpsIDE.js";import{T as p}from"../tooltip-B3wlQSPh.js";import{w as u}from"../disclosure-ZSAlD4wg.js";var c=a("<style>:host{display:inline-flex}"),m=a("<slot>");i("kai-tooltip",{content:"",openDelay:void 0,closeDelay:void 0,placement:void 0,open:void 0,defaultOpen:void 0,disabled:void 0},(e,o)=>{const{flag:l}=o;let n;return u(o,()=>n,()=>e.open),[c(),d(p,{get content(){return e.content??""},get openDelay(){return r(()=>e.openDelay!=null)()?Number(e.openDelay):void 0},get closeDelay(){return r(()=>e.closeDelay!=null)()?Number(e.closeDelay):void 0},get placement(){return e.placement??void 0},get defaultOpen(){return l("defaultOpen")},get disabled(){return l("disabled")},controllerRef:t=>n=t,get children(){var t=m();return t._$owner=s(),t}})]});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{g as x,h as B,s as V,j as D,x as U,i as j,c as h,F as $,l as q,S as C,m as z,a as A,b as G,t as T,f as H}from"../define-
|
|
1
|
+
import{g as x,h as B,s as V,j as D,x as U,i as j,c as h,F as $,l as q,S as C,m as z,a as A,b as G,t as T,f as H}from"../define-B3OpsIDE.js";import{c as L}from"../cn-DN5AWfiS.js";import{B as J}from"../button-BM0YTTDQ.js";import{T as K}from"../tooltip-B3wlQSPh.js";function N(r={}){const s=r.mimeType??"audio/webm;codecs=opus",[c,m]=x(!1),[l,e]=x(null),[t,u]=x();let a,v=[],f;async function o(){e(null),v=[];try{const n=await navigator.mediaDevices.getUserMedia({audio:!0});return u(n),a=new MediaRecorder(n,{mimeType:s}),a.ondataavailable=i=>{i.data.size>0&&v.push(i.data)},a.onstop=()=>{const i=new Blob(v,{type:s});n.getTracks().forEach(d=>d.stop()),u(void 0),m(!1),f?.(i)},a.start(),m(!0),new Promise(i=>{f=i})}catch(n){const i=t();throw i&&(i.getTracks().forEach(d=>d.stop()),u(void 0)),e(n instanceof Error?n.message:"Microphone access denied"),m(!1),n}}function y(){a&&a.state==="recording"&&a.stop()}return B(()=>y()),{isRecording:c,error:l,stream:t,start:o,stop:y}}function P(){if(typeof window>"u")return;const r=window;return r.SpeechRecognition??r.webkitSpeechRecognition}function O(r={}){const[s,c]=x(!1),[m,l]=x(null),e=P()!==void 0;let t,u,a="";function v(o={}){l(null),a="";const y=P();if(!y){const n="SpeechRecognition is not supported in this browser";return l(n),Promise.reject(new Error(n))}try{return t=new y,o.lang&&(t.lang=o.lang),t.interimResults=r.interim===!0,t.continuous=!1,t.onresult=n=>{var i;let d="";for(let w=n.resultIndex;w<n.results.length;w++){const E=n.results[w],R=((i=E[0])==null?void 0:i.transcript)??"";E.isFinal?a+=R:d+=R}d&&o.onInterim&&o.onInterim(d)},t.onerror=n=>{var i;const d=n.error??"unknown",w=`Speech recognition error: ${d}`;l(w),(i=o.onError)==null||i.call(o,d,w)},t.onend=()=>{c(!1),u?.(a),t=void 0},t.start(),c(!0),new Promise(n=>{u=n})}catch(n){throw l(n instanceof Error?n.message:"Speech recognition failed to start"),c(!1),n}}function f(){t&&s()&&t.stop()}return B(()=>{t&&t.abort()}),{isSupported:e,isListening:s,error:m,start:v,stop:f}}var Q=T('<svg width=16 height=16 viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round><path d="M12 1a3 3 0 00-3 3v8a3 3 0 006 0V4a3 3 0 00-3-3z"></path><path d="M19 10v2a7 7 0 01-14 0v-2"></path><line x1=12 y1=19 x2=12 y2=23></line><line x1=8 y1=23 x2=16 y2=23>'),W=T('<svg width=14 height=14 viewBox="0 0 24 24"fill=currentColor><rect x=4 y=4 width=16 height=16 rx=2>'),X=T('<svg width=16 height=16 viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 class=animate-spin><path d="M21 12a9 9 0 11-6.219-8.56">'),Y=T("<div>"),Z=T('<div class="absolute inset-0 animate-ping rounded-full border-2 border-red-400/30"style=animation-duration:2s>');function _(r){var s;const[c]=V(r,["onTranscribe","onTranscription","disabled","class"]),{isRecording:m,start:l,stop:e}=N(),t=O({interim:r.interim}),[u,a]=x(!1),v=()=>!r.hasTranscribe&&t.isSupported,f=()=>u()?"Transcribing...":o()?"Stop recording":"Voice input",o=()=>v()?t.isListening():m();async function y(){var g,p;let k=!1;try{const b=await t.start({lang:r.lang,onInterim:r.interim?I=>{var S;return(S=r.onInterim)==null?void 0:S.call(r,I)}:void 0,onError:(I,S)=>{var M;k=!0,(M=r.onError)==null||M.call(r,{source:"recognition",error:I,message:S})}});b.trim()?c.onTranscription(b.trim()):k||(g=r.onError)==null||g.call(r,{source:"recognition",error:"no-result",message:"Speech recognition ended without capturing any text"})}catch(b){k||(p=r.onError)==null||p.call(r,{source:"recognition",error:b instanceof Error?b.name:"unknown",message:b instanceof Error?b.message:String(b)})}}async function n(){try{const g=await l();a(!0);try{const p=await c.onTranscribe(g);p.trim()&&c.onTranscription(p.trim())}finally{a(!1)}}catch{a(!1)}}function i(){v()?y():n()}function d(){v()?t.stop():e()}async function w(){o()?d():i()}D(U(o,g=>{var p;(p=r.onRecordingChange)==null||p.call(r,g)},{defer:!0})),(s=r.controllerRef)==null||s.call(r,{start:()=>{o()||i()},stop:()=>d()});const E=()=>Q(),R=()=>W(),F=()=>X();return(()=>{var g=Y();return j(g,h(C,{get when(){return o()},get children(){return h($,{each:[0,1,2],children:p=>(()=>{var k=Z();return q(k,"animation-delay",`${p*.3}s`),k})()})}}),null),j(g,h(K,{get content(){return f()},get children(){return h(J,{variant:"ghost",size:"icon-sm",get"aria-label"(){return f()},onClick:w,get disabled(){return c.disabled||u()},get class(){return L("relative z-10 rounded-full transition-all duration-300",o()&&"bg-destructive text-white hover:bg-destructive/80")},get children(){return[h(C,{get when(){return u()},get children(){return h(F,{})}}),h(C,{get when(){return z(()=>!u())()&&o()},get children(){return h(R,{})}}),h(C,{get when(){return z(()=>!u())()&&!o()},get children(){return h(E,{})}})]}})}}),null),A(()=>G(g,L("relative inline-flex items-center justify-center",c.class))),g})()}H("kai-voice-input",{transcribe:void 0,disabled:!1,recognitionLang:void 0,interim:!1},(r,{dispatch:s,flag:c,expose:m})=>{let l;return m({start:()=>l?.start(),stop:()=>l?.stop()}),h(_,{get disabled(){return c("disabled")},get hasTranscribe(){return typeof r.transcribe=="function"},get lang(){return r.recognitionLang},get interim(){return c("interim")},onTranscribe:async e=>(s("kai-audio-captured",{blob:e}),r.transcribe?r.transcribe(e):""),onTranscription:e=>s("kai-transcription",{text:e}),onInterim:e=>s("kai-transcript-interim",{text:e}),onRecordingChange:e=>s("kai-recording-change",{recording:e}),onError:e=>s("kai-voice-error",e),controllerRef:e=>l=e})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as
|
|
1
|
+
import{s as q,g as w,j as z,x,h as D,i as F,c as i,S as f,m as b,a as G,b as H,t as p,f as I}from"../define-B3OpsIDE.js";import{c as R}from"../cn-DN5AWfiS.js";import{B as J}from"../button-BM0YTTDQ.js";import{T as K}from"../tooltip-B3wlQSPh.js";import{c as C,r as N,p as P,h as E,a as Q}from"../speech-CjbWuqG2.js";var V=p('<svg width=16 height=16 viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round><polygon points="11 5 6 9 2 9 2 15 6 15 11 19 11 5"></polygon><path d="M19.07 4.93a10 10 0 010 14.14M15.54 8.46a5 5 0 010 7.07">'),W=p('<svg width=14 height=14 viewBox="0 0 24 24"fill=currentColor><rect x=4 y=4 width=16 height=16 rx=2>'),X=p('<svg width=16 height=16 viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 class=animate-spin><path d="M21 12a9 9 0 11-6.219-8.56">'),Y=p("<div>");function Z(e){var c;const[a]=q(e,["text","disabled","class"]),[l,t]=w(!1),[n,v]=w(!1);let r,d,h;const j=()=>!!e.onSynthesize||E(),m=()=>n()?"Synthesizing...":l()?"Stop":"Read aloud";function k(){d&&(URL.revokeObjectURL(d),d=void 0)}function U(){!E()||!a.text||(C(),h=new SpeechSynthesisUtterance(a.text),h.onstart=()=>t(!0),h.onend=()=>t(!1),h.onerror=s=>{var u;t(!1);const o=s?.error??"unknown";o==="canceled"||o==="interrupted"||(u=e.onError)==null||u.call(e,{source:"synthesis",error:o,message:`Speech synthesis error: ${o}`})},Q(h))}async function B(){var s,u;if(!(!e.onSynthesize||!a.text)){v(!0);try{const o=await e.onSynthesize(a.text);(s=e.onSynthesized)==null||s.call(e,o),k(),d=URL.createObjectURL(o),r??(r=new Audio),r.src=d,r.onended=()=>t(!1),r.onerror=()=>{var S;t(!1),(S=e.onError)==null||S.call(e,{source:"synthesis",error:"playback-failed",message:"The synthesized audio failed to play"})},await r.play(),t(!0)}catch(o){t(!1),(u=e.onError)==null||u.call(e,{source:"synthesis",error:o instanceof Error?o.name:"unknown",message:o instanceof Error?o.message:String(o)})}finally{v(!1)}}}function g(){e.onSynthesize?B():U()}function y(){e.onSynthesize?r&&(r.pause(),r.currentTime=0):C(),t(!1)}function L(){e.onSynthesize?r?.pause():P()}function M(){e.onSynthesize?r?.play():N()}function T(){l()?y():g()}z(x(l,s=>{var u;(u=e.onSpeakingChange)==null||u.call(e,s)},{defer:!0})),z(x(()=>a.text,s=>{e.autoplay&&s&&g()},{defer:!0})),(c=e.controllerRef)==null||c.call(e,{speak:g,pause:L,resume:M,stop:y}),D(()=>{y(),k()});const O=()=>V(),A=()=>W(),$=()=>X();return(()=>{var s=Y();return F(s,i(K,{get content(){return m()},get children(){return i(J,{part:"button",variant:"ghost",size:"icon-sm",get"aria-label"(){return m()},get"aria-pressed"(){return l()},onClick:T,get disabled(){return a.disabled||!j()||n()},get class(){return R("relative z-10 rounded-full transition-all duration-300")},get children(){return[i(f,{get when(){return n()},get children(){return i($,{})}}),i(f,{get when(){return b(()=>!n())()&&l()},get children(){return i(A,{})}}),i(f,{get when(){return b(()=>!n())()&&!l()},get children(){return i(O,{})}})]}})}})),G(()=>H(s,R("relative inline-flex items-center justify-center",a.class))),s})()}I("kai-voice-output",{text:"",autoplay:!1,synthesize:void 0,disabled:!1},(e,{dispatch:c,flag:a,expose:l})=>{let t;return l({speak:()=>t?.speak(),pause:()=>t?.pause(),resume:()=>t?.resume(),stop:()=>t?.stop()}),i(Z,{get text(){return e.text??""},get autoplay(){return a("autoplay")},get disabled(){return a("disabled")},get onSynthesize(){return e.synthesize?n=>e.synthesize(n):void 0},onSpeakingChange:n=>c("kai-speaking-change",{speaking:n}),onSynthesized:n=>c("kai-synthesized",{blob:n}),onError:n=>c("kai-voice-error",n),controllerRef:n=>t=n})});
|