@sma1lboy/kobe 0.7.25 → 0.7.26
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 +15 -0
- package/dist/cli/index.js +2 -1
- package/dist/web-ui/assets/AppShell-CQxa6abu.js +7 -0
- package/dist/web-ui/assets/{ChatTerminal-DL9kz6iJ.js → ChatTerminal-BMSvAiAB.js} +2 -2
- package/dist/web-ui/assets/{ChatTranscript-DL4KGcCP.js → ChatTranscript-BJhX29XX.js} +2 -2
- package/dist/web-ui/assets/arrow-left-Cbh2rcaq.js +1 -0
- package/dist/web-ui/assets/board-l1dAjN3Y.js +6 -0
- package/dist/web-ui/assets/chips-D1mC9nB4.js +2 -0
- package/dist/web-ui/assets/index-i463t0Rc.js +10 -0
- package/dist/web-ui/assets/overview-DZo39fTv.js +1 -0
- package/dist/web-ui/assets/routes-DOqWXZU_.js +1 -0
- package/dist/web-ui/assets/tabs-7WK4MwGF.js +1 -0
- package/dist/web-ui/assets/task._taskId-DmEKhgY3.js +1 -0
- package/dist/web-ui/assets/terminal-BUdn99hL.js +1 -0
- package/dist/web-ui/assets/terminal-CapzGZr6.js +1 -0
- package/dist/web-ui/index.html +3 -2
- package/package.json +1 -1
- package/dist/web-ui/assets/AppShell-BUxSw0xG.js +0 -7
- package/dist/web-ui/assets/arrow-left-CPDGLwQs.js +0 -1
- package/dist/web-ui/assets/board-CbwyUj3Z.js +0 -7
- package/dist/web-ui/assets/chips-BYg-ofbe.js +0 -2
- package/dist/web-ui/assets/index-DdSnT7Rv.js +0 -10
- package/dist/web-ui/assets/overview-BFm-fRcJ.js +0 -1
- package/dist/web-ui/assets/react-B8IZ02wI.js +0 -1
- package/dist/web-ui/assets/routes-B6JWLjSF.js +0 -1
- package/dist/web-ui/assets/task._taskId-CnOx0dEd.js +0 -1
- package/dist/web-ui/assets/terminal-D7PGfbSa.js +0 -1
- package/dist/web-ui/assets/triage-89UXpkZl.js +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e,t}from"./react-B8IZ02wI.js";import{a as n,i as r}from"./index-DdSnT7Rv.js";import{B as i,P as a,a as o,c as s,l as c,n as l,r as u,s as d,u as f,v as p,y as m,z as h}from"./chips-BYg-ofbe.js";import{t as g}from"./arrow-left-CPDGLwQs.js";import{n as _}from"./triage-89UXpkZl.js";var v=e(t(),1);function y(e,t,n){if(e.length===0)return null;let r=t?e.indexOf(t):-1;return r===-1?n===1?e[0]:e[e.length-1]:e[Math.min(Math.max(r+n,0),e.length-1)]}function b(e,t){return t&&e.includes(t)?t:null}var x=n(),S=[{key:`attention`,title:`Needs you`,hint:`waiting on input, rate-limited, or errored`,accent:`text-kobe-blue`},{key:`working`,title:`Working`,hint:`engine is running right now`,accent:`text-kobe-orange`},{key:`changes`,title:`Uncommitted changes`,hint:`idle with a dirty worktree`,accent:`text-kobe-green`},{key:`quiet`,title:`Quiet`,hint:`idle, clean`,accent:`text-subtle`}];function C({entry:e,preview:t,highlighted:n,onOpen:r}){let{task:i,engine:a,changes:o}=e,s=m(a?.state);return(0,x.jsxs)(`button`,{type:`button`,"data-overview-card":i.id,onClick:r,className:`flex w-full flex-col gap-1.5 border bg-surface p-3 text-left transition-colors hover:border-primary hover:bg-inset ${n?`border-primary bg-inset`:`border-line`}`,children:[(0,x.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,x.jsx)(`span`,{className:`h-1.5 w-1.5 shrink-0 rounded-full ${p(a?.state)}`}),(0,x.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-[13px] text-fg`,children:i.title||i.branch||i.id}),(0,x.jsx)(l,{pr:i.prStatus}),o&&(o.added>0||o.deleted>0)&&(0,x.jsxs)(`span`,{className:`shrink-0 font-mono text-[10px]`,children:[(0,x.jsxs)(`span`,{className:`text-kobe-green`,children:[`+`,o.added]}),` `,(0,x.jsxs)(`span`,{className:`text-kobe-red`,children:[`−`,o.deleted]})]})]}),t&&(0,x.jsxs)(`div`,{className:`flex items-baseline gap-1.5 text-[11px] text-muted`,title:t,children:[(0,x.jsx)(`span`,{className:`shrink-0 font-mono text-subtle`,children:`❯`}),(0,x.jsx)(`span`,{className:`min-w-0 truncate`,children:t})]}),(0,x.jsxs)(`div`,{className:`flex items-center gap-2 text-[11px] text-subtle`,children:[(0,x.jsx)(`span`,{className:`min-w-0 truncate font-mono`,children:i.branch||i.repo}),(0,x.jsxs)(`span`,{className:`ml-auto flex shrink-0 items-center gap-2`,children:[s&&(0,x.jsx)(`span`,{className:`text-muted`,children:s}),(0,x.jsx)(`span`,{children:u(i.updatedAt||i.createdAt)})]})]})]})}function w(){let{tasks:e,engineStates:t,worktreeChanges:n,hydrated:l}=s(),u=r(),p=f(),[m,w]=(0,v.useState)(``),T=(0,v.useRef)(null);(0,v.useEffect)(()=>{for(let t of e)t.archived||t.kind===`main`||c(t)},[e,t]);let E=(0,v.useMemo)(()=>e.filter(e=>!e.archived&&e.kind!==`main`).map(e=>{let r=t[e.id],i=n[e.worktreePath];return{task:e,engine:r,changes:i,bucket:_(r,i)}}),[e,t,n]),D=(0,v.useMemo)(()=>E.filter(e=>o(e.task,m)),[E,m]),O=(0,v.useMemo)(()=>{let e={attention:[],working:[],changes:[],quiet:[]};for(let t of D)e[t.bucket].push(t);return e},[D]),k=(0,v.useMemo)(()=>S.flatMap(({key:e})=>O[e].map(e=>e.task.id)),[O]),[A,j]=(0,v.useState)(null);(0,v.useEffect)(()=>{j(e=>b(k,e))},[k]),(0,v.useEffect)(()=>{A&&document.querySelector(`[data-overview-card="${CSS.escape(A)}"]`)?.scrollIntoView({block:`nearest`})},[A]);let M=e=>{a(e),d(`task.setActive`,{taskId:e}).catch(()=>{}),u({to:`/task/$taskId`,params:{taskId:e}})};(0,v.useEffect)(()=>{let e=e=>{if(e.metaKey||e.ctrlKey||e.altKey)return;let t=e.target,n=!!t&&(t.tagName===`INPUT`||t.tagName===`TEXTAREA`||t.tagName===`SELECT`||t.isContentEditable),r=e.key===`j`||e.key===`ArrowDown`,i=e.key===`k`||e.key===`ArrowUp`;if(e.key===`/`&&!n)e.preventDefault(),T.current?.focus();else if(e.key===`Escape`&&t===T.current&&m)e.preventDefault(),w(``);else if((r||i)&&!n){if(k.length===0)return;e.preventDefault(),j(e=>y(k,e,r?1:-1))}else if(e.key===`Enter`&&!n&&A){if(t?.closest(`button,a,[role=button]`))return;e.preventDefault(),M(A)}};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[m,k,A]);let N={attention:O.attention.length,working:O.working.length,changes:O.changes.length};return(0,x.jsxs)(`div`,{className:`flex h-screen flex-col overflow-hidden bg-bg text-fg`,children:[(0,x.jsxs)(`header`,{className:`flex h-10 shrink-0 items-center gap-3 border-b border-line bg-surface px-3`,children:[(0,x.jsxs)(`button`,{type:`button`,onClick:()=>u({to:`/`}),className:`flex items-center gap-1.5 text-muted transition-colors hover:text-fg`,title:`Back to workspace`,children:[(0,x.jsx)(g,{size:15,strokeWidth:1.8}),(0,x.jsx)(`span`,{className:`text-[12px]`,children:`Workspace`})]}),(0,x.jsx)(`span`,{className:`text-[10px] font-bold uppercase tracking-[0.12em] text-fg`,children:`Overview`}),(0,x.jsxs)(`label`,{className:`flex h-7 items-center gap-1.5 border border-line bg-bg px-2 text-muted focus-within:border-line-active`,children:[(0,x.jsx)(i,{size:13,strokeWidth:1.8,className:`shrink-0 text-subtle`}),(0,x.jsx)(`input`,{ref:T,value:m,onChange:e=>w(e.target.value),onKeyDown:e=>{e.key===`Enter`&&k.length>0&&(e.preventDefault(),M(k[0]),e.currentTarget.blur())},placeholder:`Filter tasks ( / )`,className:`w-44 bg-transparent text-[12px] text-fg placeholder:text-subtle focus:outline-none`}),m&&(0,x.jsx)(`button`,{type:`button`,onClick:()=>w(``),className:`shrink-0 text-subtle hover:text-fg`,"aria-label":`clear filter`,title:`Clear filter`,children:(0,x.jsx)(h,{size:13,strokeWidth:2})})]}),(0,x.jsxs)(`div`,{className:`ml-auto flex items-center gap-3 font-mono text-[11px]`,children:[(0,x.jsxs)(`span`,{className:`text-kobe-blue`,children:[N.attention,` need input`]}),(0,x.jsxs)(`span`,{className:`text-kobe-orange`,children:[N.working,` running`]}),(0,x.jsxs)(`span`,{className:`text-kobe-green`,children:[N.changes,` dirty`]})]})]}),(0,x.jsx)(`div`,{className:`min-h-0 flex-1 overflow-auto p-4`,children:l?E.length===0?(0,x.jsx)(`p`,{className:`text-[12px] text-subtle`,children:`No worktree tasks yet. Create one from the workspace.`}):D.length===0?(0,x.jsxs)(`p`,{className:`text-[12px] text-subtle`,children:[`No tasks match “`,m.trim(),`”.`]}):(0,x.jsx)(`div`,{className:`grid grid-cols-1 gap-4 md:grid-cols-2 xl:grid-cols-4`,children:S.map(({key:e,title:t,hint:n,accent:r})=>{let i=O[e];return(0,x.jsxs)(`section`,{className:`flex min-w-0 flex-col`,children:[(0,x.jsxs)(`div`,{className:`mb-2 flex items-baseline gap-2`,children:[(0,x.jsx)(`h2`,{className:`text-[11px] font-bold uppercase tracking-[0.12em] ${r}`,children:t}),(0,x.jsx)(`span`,{className:`font-mono text-[10px] text-subtle`,children:i.length})]}),(0,x.jsx)(`p`,{className:`mb-2 text-[10px] leading-relaxed text-subtle`,children:n}),(0,x.jsx)(`div`,{className:`flex flex-col gap-2`,children:i.length===0?(0,x.jsx)(`div`,{className:`border border-dashed border-line-subtle p-3 text-center text-[11px] text-subtle`,children:`none`}):i.map(e=>(0,x.jsx)(C,{entry:e,preview:p[e.task.id],highlighted:e.task.id===A,onOpen:()=>M(e.task.id)},e.task.id))})]},e)})}):(0,x.jsx)(`p`,{className:`text-[12px] text-subtle`,children:`Loading…`})})]})}var T=w;export{T as component};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),s=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},c=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},l=(n,r,a)=>(a=n==null?{}:e(i(n)),c(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n)),u=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.iterator;function m(e){return typeof e!=`object`||!e?null:(e=p&&e[p]||e[`@@iterator`],typeof e==`function`?e:null)}var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,_={};function v(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function y(){}y.prototype=v.prototype;function b(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}var x=b.prototype=new y;x.constructor=b,g(x,v.prototype),x.isPureReactComponent=!0;var S=Array.isArray;function C(){}var w={H:null,A:null,T:null,S:null},T=Object.prototype.hasOwnProperty;function E(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function D(e,t){return E(e.type,t,e.props)}function O(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function k(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var A=/\/+/g;function j(e,t){return typeof e==`object`&&e&&e.key!=null?k(``+e.key):t.toString(36)}function M(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(C,C):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function N(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,N(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+j(e,0):a,S(o)?(i=``,c!=null&&(i=c.replace(A,`$&/`)+`/`),N(o,r,i,``,function(e){return e})):o!=null&&(O(o)&&(o=D(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(A,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(S(e))for(var u=0;u<e.length;u++)a=e[u],s=l+j(a,u),c+=N(a,r,i,s,o);else if(u=m(e),typeof u==`function`)for(e=u.call(e),u=0;!(a=e.next()).done;)a=a.value,s=l+j(a,u++),c+=N(a,r,i,s,o);else if(s===`object`){if(typeof e.then==`function`)return N(M(e),r,i,a,o);throw r=String(e),Error(`Objects are not valid as a React child (found: `+(r===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:r)+`). If you meant to render a collection of children, use an array instead.`)}return c}function P(e,t,n){if(e==null)return e;var r=[],i=0;return N(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function F(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(t){(e._status===0||e._status===-1)&&(e._status=1,e._result=t)},function(t){(e._status===0||e._status===-1)&&(e._status=2,e._result=t)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var I=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},L={map:P,forEach:function(e,t,n){P(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return P(e,function(){t++}),t},toArray:function(e){return P(e,function(e){return e})||[]},only:function(e){if(!O(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=f,e.Children=L,e.Component=v,e.Fragment=r,e.Profiler=a,e.PureComponent=b,e.StrictMode=i,e.Suspense=l,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=w,e.__COMPILER_RUNTIME={__proto__:null,c:function(e){return w.H.useMemoCache(e)}},e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=g({},e.props),i=e.key;if(t!=null)for(a in t.key!==void 0&&(i=``+t.key),t)!T.call(t,a)||a===`key`||a===`__self`||a===`__source`||a===`ref`&&t.ref===void 0||(r[a]=t[a]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var o=Array(a),s=0;s<a;s++)o[s]=arguments[s+2];r.children=o}return E(e.type,i,r)},e.createContext=function(e){return e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:o,_context:e},e},e.createElement=function(e,t,n){var r,i={},a=null;if(t!=null)for(r in t.key!==void 0&&(a=``+t.key),t)T.call(t,r)&&r!==`key`&&r!==`__self`&&r!==`__source`&&(i[r]=t[r]);var o=arguments.length-2;if(o===1)i.children=n;else if(1<o){for(var s=Array(o),c=0;c<o;c++)s[c]=arguments[c+2];i.children=s}if(e&&e.defaultProps)for(r in o=e.defaultProps,o)i[r]===void 0&&(i[r]=o[r]);return E(e,a,i)},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:c,render:e}},e.isValidElement=O,e.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:F}},e.memo=function(e,t){return{$$typeof:u,type:e,compare:t===void 0?null:t}},e.startTransition=function(e){var t=w.T,n={};w.T=n;try{var r=e(),i=w.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&r.then(C,I)}catch(e){I(e)}finally{t!==null&&n.types!==null&&(t.types=n.types),w.T=t}},e.unstable_useCacheRefresh=function(){return w.H.useCacheRefresh()},e.use=function(e){return w.H.use(e)},e.useActionState=function(e,t,n){return w.H.useActionState(e,t,n)},e.useCallback=function(e,t){return w.H.useCallback(e,t)},e.useContext=function(e){return w.H.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e,t){return w.H.useDeferredValue(e,t)},e.useEffect=function(e,t){return w.H.useEffect(e,t)},e.useEffectEvent=function(e){return w.H.useEffectEvent(e)},e.useId=function(){return w.H.useId()},e.useImperativeHandle=function(e,t,n){return w.H.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return w.H.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return w.H.useLayoutEffect(e,t)},e.useMemo=function(e,t){return w.H.useMemo(e,t)},e.useOptimistic=function(e,t){return w.H.useOptimistic(e,t)},e.useReducer=function(e,t,n){return w.H.useReducer(e,t,n)},e.useRef=function(e){return w.H.useRef(e)},e.useState=function(e){return w.H.useState(e)},e.useSyncExternalStore=function(e,t,n){return w.H.useSyncExternalStore(e,t,n)},e.useTransition=function(){return w.H.useTransition()},e.version=`19.2.7`})),d=o(((e,t)=>{t.exports=u()}));export{l as i,o as n,s as r,d as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./AppShell-BUxSw0xG.js";var t=e;export{t as component};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e,t}from"./react-B8IZ02wI.js";import{a as n,t as r}from"./index-DdSnT7Rv.js";import{P as i,R as a,s as o}from"./chips-BYg-ofbe.js";import{t as s}from"./AppShell-BUxSw0xG.js";var c=e(t()),l=n();function u(){let{taskId:e}=r.useParams(),{selectedTaskId:t}=a();return(0,c.useEffect)(()=>{!e||e===t||(i(e),o(`task.setActive`,{taskId:e}).catch(()=>{}))},[e,t]),(0,l.jsx)(s,{})}export{u as component};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./react-B8IZ02wI.js";var t=e({closePtyTab:()=>a,ptyUrl:()=>i,sendPtyText:()=>o});function n(){let e=location.protocol===`https:`?`wss`:`ws`,t=location.hostname||`localhost`,n=Number.parseInt(location.port||`5173`,10);return`${e}://${t}:${Number.isFinite(n)?n+2:5175}`}function r(){let e=location.protocol===`https:`?`https`:`http`,t=location.hostname||`localhost`,n=Number.parseInt(location.port||`5173`,10);return`${e}://${t}:${Number.isFinite(n)?n+2:5175}`}function i(e,t,r,i,a){let o=new URLSearchParams({tab:e,taskId:t,mode:r,cols:String(i),rows:String(a)});return`${n()}/pty?${o.toString()}`}async function a(e){try{await fetch(`${r()}/pty/close`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({tab:e})})}catch{}}async function o(e,t,n){let i=await fetch(`${r()}/pty/send`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({tab:e,taskId:t,text:n})}),a={};try{a=await i.json()}catch{if(i.status===404)throw Error("the PTY server doesn't know /pty/send — restart `kobe web` (the sidecar doesn't hot-reload)")}if(!i.ok||!a.sent)throw Error(a.error??`send failed (${i.status})`);return{spawned:a.spawned===!0}}export{t as i,i as n,o as r,a as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function e(e,t){let n=e?.state;return n===`waiting_permission`||n===`error`||n===`rate_limited`?`attention`:n===`running`?`working`:t&&(t.added>0||t.deleted>0)?`changes`:`quiet`}function t(t,n,r){return r===`all`||e(t,n)===r}export{e as n,t};
|