@cuongtran001/kanna 1.59.1 → 1.59.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/assets/BoardsPage-BJkUI3xk.js +1 -0
- package/dist/client/assets/BoardsRoutePage-pFkJ3x-H.js +1 -0
- package/dist/client/assets/ChatPage-D9y9hLRv.js +91 -0
- package/dist/client/assets/CronJobRow-DQ92ZRVU.js +1 -0
- package/dist/client/assets/CronJobsPage-BlfQqeXC.js +1 -0
- package/dist/client/assets/KannaSocketProvider-BYzbF-ZZ.js +1 -0
- package/dist/client/assets/LocalProjectsPage-BILbPsVL.js +1 -0
- package/dist/client/assets/SettingsPage-DWB0UIKV.js +9 -0
- package/dist/client/assets/StackBoardsRoutePage-BBFCx9kq.js +1 -0
- package/dist/client/assets/WorkflowsPage-BCmjMR5E.js +1 -0
- package/dist/client/assets/WorkflowsSection-B_ya0pWY.js +15 -0
- package/dist/client/assets/asJsonValue-BZZNOY3h.js +23 -0
- package/dist/client/assets/chatSounds-Vjyz-qzm.js +1 -0
- package/dist/client/assets/chevron-right-D-TEhl17.js +1 -0
- package/dist/client/assets/clipboard.adapter-D4C0lqNi.js +1 -0
- package/dist/client/assets/columnStyle-DT2e8teS.js +1 -0
- package/dist/client/assets/editor-icons-Dsr8JKOB.js +1 -0
- package/dist/client/assets/ellipsis-MhInDMgR.js +1 -0
- package/dist/client/assets/external-link-LrOQtjYd.js +1 -0
- package/dist/client/assets/folder-DuMhErNx.js +1 -0
- package/dist/client/assets/index-BmOjl6Nq.js +81 -0
- package/dist/client/assets/index-CvEN_rIH.css +1 -0
- package/dist/client/assets/input-cwJtmp9q.js +1 -0
- package/dist/client/assets/monitor-Cyt9XtDP.js +1 -0
- package/dist/client/assets/pendingActionsStore-DGzIfOTB.js +43 -0
- package/dist/client/assets/plus-BngPdg7w.js +1 -0
- package/dist/client/assets/popover-wtxVQEQw.js +1 -0
- package/dist/client/assets/pushClient-DJ27IYFl.js +1 -0
- package/dist/client/assets/runDetached-DF34X1ur.js +1 -0
- package/dist/client/assets/segmented-control-D6a3Xq39.js +1 -0
- package/dist/client/assets/settings-header-button-QpYUtRq3.js +1 -0
- package/dist/client/assets/square-pen-DCQw0euW.js +1 -0
- package/dist/client/assets/state-mark-Dxq3FW_Q.js +1 -0
- package/dist/client/assets/status-pill-DHWS-GQi.js +1 -0
- package/dist/client/assets/terminal-CHSwyVSE.js +1 -0
- package/dist/client/assets/useAppGlobalState-Hwdqj6gT.js +1 -0
- package/dist/client/assets/useKannaState-D_8iZovg.js +5 -0
- package/dist/client/assets/workflowsStore-Cnzsclqw.js +1 -0
- package/dist/client/index.html +20 -20
- package/package.json +1 -1
- package/dist/client/assets/BoardsPage-BPGR9OOi.js +0 -1
- package/dist/client/assets/BoardsRoutePage-yBoVLt4V.js +0 -1
- package/dist/client/assets/ChatPage-BLnSd0OF.js +0 -91
- package/dist/client/assets/CronJobRow-DE33RW0I.js +0 -1
- package/dist/client/assets/CronJobsPage-ifG5Lb6y.js +0 -1
- package/dist/client/assets/KannaSocketProvider-iK8q9Q8h.js +0 -1
- package/dist/client/assets/LocalProjectsPage-vVKE14OG.js +0 -1
- package/dist/client/assets/SettingsPage-Dpdvc0LG.js +0 -9
- package/dist/client/assets/StackBoardsRoutePage-DEoyjzTK.js +0 -1
- package/dist/client/assets/WorkflowsPage-Cd0p2xL2.js +0 -1
- package/dist/client/assets/WorkflowsSection-cP576dUB.js +0 -15
- package/dist/client/assets/asJsonValue-BjkJBCoI.js +0 -23
- package/dist/client/assets/auth-DUhzkkRE.js +0 -1
- package/dist/client/assets/branding-By6lBIW4.js +0 -1
- package/dist/client/assets/chatFocusPolicy-BURwahY1.js +0 -43
- package/dist/client/assets/chatSounds-pLMluNSm.js +0 -1
- package/dist/client/assets/chevron-right-DZc7KcG7.js +0 -1
- package/dist/client/assets/clipboard.adapter-Cvk7DX_N.js +0 -1
- package/dist/client/assets/columnStyle-B5lGZnG9.js +0 -1
- package/dist/client/assets/editor-icons-QwrWjTOd.js +0 -1
- package/dist/client/assets/ellipsis-Z7MHhFv0.js +0 -1
- package/dist/client/assets/external-link-DaXnR_wn.js +0 -1
- package/dist/client/assets/folder-Chw-AqxM.js +0 -1
- package/dist/client/assets/index-CnO6O7HU.css +0 -1
- package/dist/client/assets/index-DB4iksZD.js +0 -81
- package/dist/client/assets/input-BAZOlMiO.js +0 -1
- package/dist/client/assets/monitor-BB910qj9.js +0 -1
- package/dist/client/assets/plus-D5dTGdZg.js +0 -1
- package/dist/client/assets/popover-npZYWQJi.js +0 -1
- package/dist/client/assets/pushClient-BGd5L0OX.js +0 -1
- package/dist/client/assets/settings-header-button-C39G9dFD.js +0 -1
- package/dist/client/assets/square-pen-DYTeH5GN.js +0 -1
- package/dist/client/assets/state-mark-PnwvN0Hn.js +0 -1
- package/dist/client/assets/status-pill-p7nYwgyG.js +0 -1
- package/dist/client/assets/terminal-CdI6cd88.js +0 -1
- package/dist/client/assets/timer.adapter-3ogYHJ19.js +0 -1
- package/dist/client/assets/useKannaState-B9-QjgyG.js +0 -5
- package/dist/client/assets/workflowsStore-hM0eh_Ao.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./react-CQOZoUwg.js";import{B as n,G as r,L as i,Z as a,a as o,c as s,i as c,n as l,r as u,t as d,z as f}from"./pendingActionsStore-DGzIfOTB.js";import{t as p}from"./jsx-runtime-DREnUpxT.js";import{t as m}from"./ellipsis-MhInDMgR.js";import{t as h}from"./plus-BngPdg7w.js";import{t as g}from"./input-cwJtmp9q.js";import{n as _,r as v,t as y}from"./popover-wtxVQEQw.js";import{o as b,r as x,s as S,t as C}from"./columnStyle-DT2e8teS.js";var w=e(t(),1),T=[],E=r()(e=>({templates:T,templatesStatus:`loading`,openMenuId:null,picking:!1,renamingId:null,error:null,setTemplates:t=>e({templates:Array.isArray(t)?t:[],templatesStatus:`ready`}),beginTemplatesLoad:()=>e({templatesStatus:`loading`}),failTemplatesLoad:()=>e({templatesStatus:`failed`}),openMenu:t=>e({openMenuId:t}),closeMenu:()=>e({openMenuId:null}),openPicker:()=>e({picking:!0,error:null}),closePicker:()=>e({picking:!1}),startRename:t=>e({renamingId:t,picking:!1,openMenuId:null}),stopRename:()=>e({renamingId:null}),setError:t=>e({error:t})}));function D(e){return e.templates}var O=e(p(),1),k=[`board.update`,`board.duplicate`,`board.saveAsTemplate`,`board.archive`];function A(e){return c(t=>k.some(n=>t.inFlight[d(n,e)]===!0))}function j({ownerKind:e,ownerId:t,ownerName:n,socket:r,onOpenBoard:c}){let f=x(e,t),p=S(b(f)),m=E(D),g=E(e=>e.picking),_=E(e=>e.renamingId),v=E(e=>e.error),y=E(e=>e.templatesStatus),C=d(`board.create`,f),T=u(C),{openPicker:k,closePicker:A,startRename:j,stopRename:N,setError:P,setTemplates:I}=E.getState();(0,w.useEffect)(()=>r.subscribe({type:`boards`,ownerKind:e,ownerId:t},e=>{S.getState().setBoards(x(e.ownerKind,e.ownerId),e.boards)}),[e,t,r]),(0,w.useEffect)(()=>{let e=!1,t=E.getState();return t.templatesStatus!==`ready`&&t.beginTemplatesLoad(),r.command({type:`board.templates.list`}).then(t=>{e||I(t)},a(t=>{o.error(s,`board.templates.list failed`,t),e||E.getState().failTemplatesLoad()})),()=>{e=!0}},[r,I]);let L=(0,w.useCallback)(async e=>{try{return await r.command(e),P(null),!0}catch(e){return P(e instanceof Error?e.message:`That did not work.`),!1}},[r,P]),R=(0,w.useCallback)(n=>{l(C,async()=>{await L({type:`board.create`,ownerKind:e,ownerId:t,title:n?n.name:`Untitled board`,templateId:n?.id??null})&&A()})},[A,C,e,t,L]),z=(0,w.useCallback)((e,t)=>{N();let n=t.trim();n!==``&&l(d(`board.update`,e),()=>L({type:`board.update`,boardId:e,title:n}))},[L,N]),B=g||p.length===0;return(0,O.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col bg-background`,children:[(0,O.jsxs)(`header`,{className:`flex items-end justify-between gap-4 border-b border-border px-6 py-4`,children:[(0,O.jsxs)(`div`,{className:`min-w-0`,children:[(0,O.jsx)(`h1`,{className:`text-lg font-medium leading-tight tracking-[-0.01em] text-foreground`,children:`Boards`}),(0,O.jsxs)(`p`,{className:`truncate text-13 text-muted-foreground`,children:[n,p.length>0?(0,O.jsxs)(`span`,{className:`tabular-nums`,children:[` · `,p.length,` boards`]}):null]})]}),p.length>0?(0,O.jsxs)(i,{size:`sm`,onClick:k,pending:T,children:[(0,O.jsx)(h,{className:`size-3.5`}),`New board`]}):null]}),v?(0,O.jsx)(`p`,{className:`border-b border-border px-6 py-2 text-13 text-destructive-text`,children:v}):null,(0,O.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:[B?(0,O.jsx)(F,{templates:m,templatesStatus:y,creating:T,firstRun:p.length===0,onPick:R,onCancel:A}):null,p.length>0?(0,O.jsx)(`ul`,{className:`px-4 py-1`,children:p.map(e=>(0,O.jsx)(M,{board:e,renaming:_===e.id,onOpen:c,onStartRename:j,onRename:z,onCancelRename:N,onCommand:L},e.id))}):null]})]})}function M({board:e,renaming:t,onOpen:n,onStartRename:r,onRename:i,onCancelRename:a,onCommand:o}){let s=A(e.id),c=(0,w.useCallback)(()=>n(e.id),[e.id,n]),l=(0,w.useCallback)(t=>{t.key===`Enter`&&i(e.id,t.currentTarget.value),t.key===`Escape`&&a()},[e.id,a,i]),u=(0,w.useCallback)(t=>i(e.id,t.currentTarget.value),[e.id,i]);return(0,O.jsxs)(`li`,{"aria-busy":s||void 0,className:`group grid grid-cols-[1fr_auto_auto] items-center gap-5 border-b border-border px-3 py-3 last:border-b-0 hover:bg-secondary`,children:[(0,O.jsx)(`div`,{className:`min-w-0`,children:t?(0,O.jsx)(g,{autoFocus:!0,defaultValue:e.title,onKeyDown:l,onBlur:u,className:`h-7 max-w-sm`,"aria-label":`Board name`}):(0,O.jsxs)(`button`,{type:`button`,onClick:c,className:`block w-full text-left`,children:[(0,O.jsx)(`span`,{className:`block truncate text-15 font-semibold tracking-[-0.005em] text-foreground`,children:e.title}),e.description?(0,O.jsx)(`span`,{className:`mt-0.5 block truncate text-13 text-muted-foreground`,children:e.description}):null]})}),(0,O.jsxs)(`div`,{className:`flex items-center gap-4 text-xs text-muted-foreground`,children:[(0,O.jsxs)(`span`,{children:[(0,O.jsx)(`b`,{className:`font-medium tabular-nums text-foreground`,children:e.columnCount}),` columns`]}),(0,O.jsxs)(`span`,{children:[(0,O.jsx)(`b`,{className:`font-medium tabular-nums text-foreground`,children:e.cardCount}),` cards`]})]}),(0,O.jsx)(N,{board:e,pending:s,onStartRename:r,onCommand:o})]})}function N({board:e,pending:t,onStartRename:r,onCommand:i}){let a=E(t=>t.openMenuId===e.id),{openMenu:o,closeMenu:s}=E.getState(),c=(0,w.useCallback)(t=>{t?o(e.id):s()},[e.id,s,o]),u=(0,w.useCallback)(()=>{s(),r(e.id)},[e.id,s,r]),p=(0,w.useCallback)(()=>{s(),l(d(`board.duplicate`,e.id),()=>i({type:`board.duplicate`,boardId:e.id,title:`${e.title} copy`}))},[e.id,e.title,s,i]),h=(0,w.useCallback)(()=>{s(),l(d(`board.saveAsTemplate`,e.id),()=>i({type:`board.saveAsTemplate`,boardId:e.id,name:e.title}))},[e.id,e.title,s,i]),g=(0,w.useCallback)(()=>{s(),l(d(`board.archive`,e.id),()=>i({type:`board.archive`,boardId:e.id}))},[e.id,s,i]);return(0,O.jsxs)(y,{open:a,onOpenChange:c,children:[(0,O.jsx)(v,{asChild:!0,children:(0,O.jsx)(`button`,{type:`button`,"aria-label":`Actions for ${e.title}`,disabled:t,"aria-busy":t||void 0,className:n(`rounded-md px-1.5 py-1 text-muted-foreground opacity-0 transition-opacity group-hover:opacity-100 data-[state=open]:opacity-100`,t&&`opacity-100`),children:t?(0,O.jsx)(f,{className:`size-4`}):(0,O.jsx)(m,{className:`size-4`})})}),(0,O.jsxs)(_,{align:`end`,className:`w-56 p-1`,children:[(0,O.jsx)(P,{onClick:u,children:`Rename`}),(0,O.jsx)(P,{onClick:p,children:`Duplicate structure`}),(0,O.jsx)(P,{onClick:h,children:`Save as template`}),(0,O.jsx)(`div`,{className:`my-1 h-px bg-border`}),(0,O.jsx)(P,{onClick:g,tone:`destructive`,children:`Archive`})]})]})}function P({onClick:e,children:t,tone:r}){return(0,O.jsx)(`button`,{type:`button`,onClick:e,className:n(`flex w-full items-center rounded-sm px-2 py-1.5 text-left text-xs font-medium hover:bg-secondary`,r===`destructive`&&`text-destructive-text`),children:t})}function F({templates:e,templatesStatus:t,creating:n,firstRun:r,onPick:a,onCancel:o}){let s=(0,w.useCallback)(()=>a(null),[a]);return(0,O.jsxs)(`div`,{className:`px-6 py-8`,children:[r?(0,O.jsxs)(O.Fragment,{children:[(0,O.jsx)(`h2`,{className:`text-15 font-semibold text-foreground`,children:`No boards yet.`}),(0,O.jsx)(`p`,{className:`mt-1 max-w-[58ch] text-sm text-muted-foreground`,children:`A board turns issues into work your agents can pick up. Start from a shape, or import an existing tracker.`})]}):(0,O.jsx)(`h2`,{className:`text-15 font-semibold text-foreground`,children:`Start from a shape`}),(0,O.jsxs)(`div`,{className:`mt-4 max-w-xl rounded-lg border border-border`,"aria-busy":n||void 0,children:[e.map(e=>(0,O.jsx)(I,{template:e,disabled:n,onPick:a},e.id)),t===`loading`?(0,O.jsxs)(`p`,{role:`status`,className:`flex items-center gap-2 px-3.5 py-2.5 text-xs text-muted-foreground`,children:[(0,O.jsx)(f,{}),`Loading templates…`]}):null,t===`failed`?(0,O.jsx)(`p`,{className:`px-3.5 py-2.5 text-xs text-muted-foreground`,children:`Couldn't load templates.`}):null,(0,O.jsx)(`button`,{type:`button`,onClick:s,disabled:n,className:`flex w-full items-center border-t border-border px-3.5 py-2.5 text-left hover:bg-secondary disabled:pointer-events-none disabled:opacity-60`,children:(0,O.jsxs)(`span`,{children:[(0,O.jsx)(`span`,{className:`block text-sm font-medium text-foreground`,children:`Empty board`}),(0,O.jsx)(`span`,{className:`block text-xs text-muted-foreground`,children:`Name your own columns`})]})})]}),n?(0,O.jsxs)(`p`,{role:`status`,className:`mt-3 flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,O.jsx)(f,{}),`Creating board…`]}):null,r?null:(0,O.jsx)(i,{variant:`ghost`,size:`sm`,className:`mt-3`,onClick:o,children:`Cancel`})]})}function I({template:e,disabled:t,onPick:r}){let i=(0,w.useCallback)(()=>r(e),[r,e]),a=e.definition.columns;return(0,O.jsxs)(`button`,{type:`button`,onClick:i,disabled:t,className:`flex w-full items-center gap-3 border-b border-border px-3.5 py-2.5 text-left last:border-b-0 hover:bg-secondary disabled:pointer-events-none disabled:opacity-60`,children:[(0,O.jsxs)(`span`,{className:`min-w-0`,children:[(0,O.jsx)(`span`,{className:`block text-sm font-medium text-foreground`,children:e.name}),(0,O.jsx)(`span`,{className:`block truncate text-xs text-muted-foreground`,children:a.map(e=>e.title).join(` · `)})]}),(0,O.jsx)(`span`,{"aria-hidden":!0,className:`ml-auto flex shrink-0 gap-1`,children:a.map((t,r)=>(0,O.jsx)(`span`,{className:n(`size-1.5 rounded-full`,t.colorToken?C[t.colorToken]:`bg-muted-icon`)},`${e.id}-${String(r)}`))})]})}export{j as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./react-CQOZoUwg.js";import{ct as n,ot as r,st as i}from"./pendingActionsStore-DGzIfOTB.js";import{t as a}from"./jsx-runtime-DREnUpxT.js";import{o}from"./formatters-wSVyvDFZ.js";import{t as s}from"./BoardsPage-BJkUI3xk.js";var c=e(t(),1),l=e(a(),1);function u(){let e=i(),t=r(),{projectId:a=``}=n(),u=[...e.sidebarData.starredProjectGroups,...e.sidebarData.projectGroups].find(e=>e.groupKey===a),d=u?o(u.localPath):`Project`,f=(0,c.useCallback)(e=>{t(`/boards/${a}/${e}`)},[t,a]);return(0,l.jsx)(`div`,{className:`relative flex min-h-0 min-w-0 flex-1 flex-col`,children:(0,l.jsx)(s,{ownerKind:`project`,ownerId:a,ownerName:d,socket:e.socket,onOpenBoard:f})})}export{u as BoardsRoutePage};
|