import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{$t as t,Qt as n,Yt as r,er as i,nn as a,rn as o}from"./control-ui-foundation-CeFMP1Ly.js";import{Da as s,Js as c,Oa as l,U as u,Zn as d,_ as ee,b as f,fl as p,g as te,ja as ne,lc as re,ml as ie,ms as ae,ps as m,qs as oe,u as h,uc as se,vr as ce,w as le,y as g,yr as ue}from"./control-ui-core-pH6nakZ-.js";import{G as _,I as de,J as v,R as y,W as b,Z as fe,at as pe,h as me,i as he,m as ge,n as _e,rt as x}from"./lit-runtime-BEtFSUCp.js";import{Cn as ve,Jt as ye,Yt as be,ln as xe,m as Se,p as Ce}from"./control-ui-core-DGVkFhVB.js";import{Ft as we,Gt as Te,Ht as S,It as C,Lt as Ee,N as De,Rt as Oe,qt as w}from"./control-ui-core-Br5DB0Zj.js";import{In as ke,Ln as Ae}from"./control-ui-boot-wpHCbPL9.js";import{$i as je,$s as Me,Ca as Ne,Cc as Pe,Jl as Fe,Kl as Ie,Ld as Le,Qs as Re,Sn as ze,Tc as Be,Xs as T,Ys as Ve,Zs as He,_a as Ue,ac as We,an as Ge,bc as Ke,cc as qe,dc as Je,ea as Ye,ec as Xe,fc as Ze,gc as Qe,gn as $e,hc as E,ic as D,lc as et,mc as tt,mn as nt,nc as O,oc as rt,on as it,pc as at,rc as ot,sc as st,tc as ct,uc as lt,vc as ut,vn as k,wa as dt,wc as ft,xc as pt,xn as mt,ya as ht,yc as gt,yn as _t}from"./control-ui-boot-Cdpgu1Gm.js";import{it as A}from"./control-ui-boot-BPFwXC8p.js";import{n as vt,t as yt}from"./channel-picker-DBMoQAsl.js";import{n as bt,t as xt}from"./select-picker-BINM0f88.js";import"./text-BRLnxsjx.js";import{t as St}from"./web-awesome-popover-DTDr8XNA.js";import{n as Ct,t as wt}from"./hub-tabs-mHLCJmKB.js";import{n as Tt,t as Et}from"./settings-workspace-Bo4nqRhI.js";import{n as Dt,t as Ot}from"./gateway-page-controller-bzyUg03c.js";import{n as kt,t as At}from"./model-picker-CTfQ10Hi.js";import{n as jt,t as Mt}from"./cron-jobs-pagination-BITiheQo.js";import{a as Nt,n as Pt,s as j}from"./presenter-CKFufLDk.js";import{n as Ft,t as It}from"./agent-scope-control-C6P46hJO.js";function Lt(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{return``}}function Rt(){try{return Intl.supportedValuesOf?.(`timeZone`)??[]}catch{return[]}}function zt(e){let t=new Set;return e.map(e=>e.trim()).filter(e=>!e||t.has(e)?!1:(t.add(e),!0))}function Bt(e,t=Lt(),n=Rt()){return zt([t,`UTC`,...e.map(e=>e.schedule.kind===`cron`&&typeof e.schedule.tz==`string`?e.schedule.tz:``),...a(n.map(e=>e.trim()).filter(Boolean))])}function Vt(){return(Vt=e((()=>{r()})))()}function Ht(e){let t=re(e.runtimeConfig),r=e.cron.cronForm.deliveryChannel.trim()||`last`,i=new Set((e.agentsList?.agents??[]).filter(e=>e.kind===`system`).map(e=>e.id.trim())),a=n([...c(e.agentsList?.agents??[]).map(e=>e.id.trim()),...e.cron.cronJobs.map(e=>typeof e.agentId==`string`&&!i.has(e.agentId.trim())?e.agentId.trim():``)]),o=n([...e.modelSuggestions,...et(t),...e.cron.cronJobs.map(e=>{let t=Re(e);return t?.kind===`agentTurn`&&typeof t.model==`string`?t.model.trim():``})]),s=e.cron.cronJobs.map(e=>typeof e.delivery?.to==`string`?e.delivery.to.trim():``).filter(Boolean),l=(r===`last`?Object.values(e.channels.channelsSnapshot?.channelAccounts??{}).flat():e.channels.channelsSnapshot?.channelAccounts?.[r]??[]).flatMap(e=>[e.accountId,e.name]).filter(e=>typeof e==`string`).map(e=>e.trim()).filter(Boolean),u=n([...s,...l]);return{agentSuggestions:a,modelSuggestions:o,timezoneSuggestions:Bt(e.cron.cronJobs),accountTargets:l,deliveryToSuggestions:e.cron.cronForm.deliveryMode===`webhook`?u.filter(e=>/^https?:\/\//i.test(e)):u}}var Ut;function Wt(){return(Wt=e((()=>{r(),oe(),se(),ct(),Vt(),Ut=[`off`,`minimal`,`low`,`medium`,`high`]})))()}function Gt(e){let t=new URLSearchParams(e),n=t.get(`job`)?.trim()||null;return{jobId:n,runId:n&&t.get(`run`)?.trim()||null}}function Kt(e,t){if(t.runId===e)return!0;let n=qt.exec(e);return n!==null&&n[1]===t.jobId&&t.runAtMs===Number(n[2])}var qt;function M(){return(M=e((()=>{qt=/^cron:(.+):(\d+)$/u})))()}function N(e){let t=e.tabs;return t?Ct({id:t.id,active:e.value,tabs:e.options.map(e=>({value:e.value,label:e.label,testId:e.testId})),ariaLabel:e.ariaLabel??``,panelId:t.panelId,className:`cron-tabs`,variant:t.variant,onSelect:e.onChange}):_t({value:e.value,options:e.options,ariaLabel:e.ariaLabel,onChange:t=>e.onChange(t)})}function Jt(){return(Jt=e((()=>{wt(),it()})))()}function Yt(e){let t=e.agentScoped?e.scopedTotal??w(`common.na`):e.status?.jobs??Math.max(e.jobsTotal,e.jobs.length),n=e.status?.enabled===!1?null:e.agentScoped?e.scopedNextWakeAtMs:e.status?.nextWakeAtMs??null,r=e.failingCount;return v`
${t}
${w(`cron.stats.tasks`)}
路
{e.onListTabChange(`activity`),e.onRunsFiltersChange({cronRunsStatuses:[`error`]})}}
>
${r??w(`common.na`)}
${w(`cron.stats.failing`)}
路
${w(`cron.stats.nextWake`)}
${Nt(n)}
`}function Xt(){return(Xt=e((()=>{b(),S(),j()})))()}function P(e,t,n,r){return{id:e,emoji:t,nameKey:`cron.suggestions.ideas.${e}.name`,taglineKey:`cron.suggestions.ideas.${e}.tagline`,promptKey:`cron.suggestions.ideas.${e}.prompt`,scheduleKey:n,schedule:r}}function Zt(e){return{name:w(e.nameKey),payloadText:w(e.promptKey),payloadKind:`agentTurn`,sessionTarget:`isolated`,wakeMode:`now`,deleteAfterRun:!1,enabled:!0,...e.schedule}}var F,I,Qt,$t,en;function tn(){return(tn=e((()=>{S(),F={scheduleKind:`cron`,cronExpr:`0 9 * * 1-5`},I={scheduleKind:`cron`,cronExpr:`0 8 * * *`},Qt={scheduleKind:`cron`,cronExpr:`0 9 * * 1`},$t={scheduleKind:`every`,everyAmount:`1`,everyUnit:`hours`},en=[P(`repoPulse`,`馃悪`,`cron.suggestions.schedules.weekdayMornings`,F),P(`standupGhostwriter`,`馃懟`,`cron.suggestions.schedules.weekdayMornings`,F),P(`hackerNewsScout`,`馃敪`,`cron.suggestions.schedules.everyMorning`,I),P(`dependencyRadar`,`馃洶锔廯,`cron.suggestions.schedules.weekly`,Qt),P(`watchdog`,`馃`,`cron.suggestions.schedules.hourly`,$t),P(`polyglotMinute`,`馃棧锔廯,`cron.suggestions.schedules.everyMorning`,I)]})))()}function L(e,t){return v`
${e}
${t}
`}function nn(e){let t=f(e.lastCheckedAtMs,{fallback:w(`cron.runs.notChecked`)}),n=f(e.lastFiredAtMs,{fallback:w(`cron.runs.neverFired`)});return v`
${C(`gitBranch`)}
${w(`cron.runs.conditionActivity`)}
${w(`cron.runs.conditionActivityHint`)}
${L(w(`cron.runs.checks`),String(e.checkCount))}
${L(w(`cron.runs.lastChecked`),t)}
${L(w(`cron.runs.lastFired`),n)}
`}function rn(e){if(e.checkCount===0)return w(`cron.runs.emptyConditionUnchecked`);let t=e.checkCount===1?`cron.runs.emptyConditionHintOne`:`cron.runs.emptyConditionHint`;return w(t,{count:String(e.checkCount)})}function an(){return[{value:`ok`,label:w(`cron.runs.runStatusOk`)},{value:`error`,label:w(`cron.runs.runStatusError`)},{value:`skipped`,label:w(`cron.runs.runStatusSkipped`)}]}function on(){return[{value:`delivered`,label:w(`cron.runs.deliveryDelivered`)},{value:`not-delivered`,label:w(`cron.runs.deliveryNotDelivered`)},{value:`unknown`,label:w(`cron.runs.deliveryUnknown`)},{value:`not-requested`,label:w(`cron.runs.deliveryNotRequested`)}]}function sn(e,t,n){let r=new Set(e);return n?r.add(t):r.delete(t),Array.from(r)}function cn(e,t){return e.length===0?t:e.length<=2?e.join(`, `):`${e[0]} +${e.length-1}`}function ln(e){let t=e.options.filter(t=>e.selected.includes(t.value)).map(e=>e.label),n=t.length>2?`${e.summary} (${new Intl.ListFormat(Te.getLocale(),{style:`long`,type:`conjunction`}).format(t)})`:e.summary;return v`
{let n=t.detail.item.value;if(n===`${z}clear`){e.onClear();return}if(n?.startsWith(R)){t.preventDefault();let r=n.slice(7);e.onToggle(r,!e.selected.includes(r))}}}
>
${e.summary}
${C(`chevronDown`)}
${e.options.map(t=>v`
${t.label}
`)}
${w(`cron.runs.clear`)}
`}function un(e){let t=e.runs.toSorted((t,n)=>e.runsSortDir===`asc`?t.ts-n.ts:n.ts-t.ts),n=e.runsQuery.trim().length>0||e.runsStatuses.length>0||e.runsDeliveryStatuses.length>0,r=an(),i=on(),a=r.filter(t=>e.runsStatuses.includes(t.value)).map(e=>e.label),o=i.filter(t=>e.runsDeliveryStatuses.includes(t.value)).map(e=>e.label),s=cn(a,w(`cron.runs.allStatuses`)),c=cn(o,w(`cron.runs.allDelivery`)),l=e.runsSortDir===`asc`?w(`cron.runs.oldestFirst`):w(`cron.runs.newestFirst`);return v`
${e.conditionActivity?nn(e.conditionActivity):_}
${C(`search`)}
e.onRunsFiltersChange({cronRunsQuery:t.target.value})}
/>
${ln({id:`status`,title:w(`cron.runs.status`),summary:s,options:r,selected:e.runsStatuses,onToggle:(t,n)=>{let r=sn(e.runsStatuses,t,n);e.onRunsFiltersChange({cronRunsStatuses:r})},onClear:()=>{e.onRunsFiltersChange({cronRunsStatuses:[]})}})}
${ln({id:`delivery`,title:w(`cron.runs.delivery`),summary:c,options:i,selected:e.runsDeliveryStatuses,onToggle:(t,n)=>{let r=sn(e.runsDeliveryStatuses,t,n);e.onRunsFiltersChange({cronRunsDeliveryStatuses:r})},onClear:()=>{e.onRunsFiltersChange({cronRunsDeliveryStatuses:[]})}})}
{let n=t.detail.item.value;(n===`asc`||n===`desc`)&&e.onRunsFiltersChange({cronRunsSortDir:n})}}
>
${l}
${C(`chevronDown`)}
${w(`cron.runs.newestFirst`)}
${e.runsSortDir===`desc`?C(`check`):_}
${w(`cron.runs.oldestFirst`)}
${e.runsSortDir===`asc`?C(`check`):_}
${t.length===0?n?v`
${w(`cron.runs.noMatching`)}
`:v`
${e.conditionActivity?w(`cron.runs.emptyConditionTitle`):w(`cron.runs.emptyTitle`)}
${e.conditionActivity?rn(e.conditionActivity):w(`cron.runs.emptyHint`)}
`:v`
${t.map(t=>mn(t,e.agentId,e.basePath,e.highlightedRunId,e.onNavigateToChat))}
`}
${e.runsHasMore?v`
${e.runsLoadingMore?w(`cron.list.loading`):w(`cron.runs.loadMore`)}
`:_}
`}function dn(e,t=Date.now()){let n=f(e);return w(e>t?`cron.runEntry.next`:`cron.runEntry.due`,{rel:n})}function fn(e){switch(e){case`ok`:return w(`cron.runs.runStatusOk`);case`error`:return w(`cron.runs.runStatusError`);case`skipped`:return w(`cron.runs.runStatusSkipped`);default:return w(`cron.runs.runStatusUnknown`)}}function pn(e){switch(e){case`delivered`:return w(`cron.runs.deliveryDelivered`);case`not-delivered`:return w(`cron.runs.deliveryNotDelivered`);case`not-requested`:return w(`cron.runs.deliveryNotRequested`);default:return w(`cron.runs.deliveryUnknown`)}}function mn(e,t,n,r,i){let a=typeof e.sessionKey==`string`&&e.sessionKey.trim().length>0?ne({face:`chat`,sessionKey:e.sessionKey,fallbackAgentId:t,basePath:n}).href:null,o=fn(e.status??`unknown`),s=pn(e.deliveryStatus??`not-requested`),c=e.usage,l=c&&typeof c.total_tokens==`number`?`${h(c.total_tokens)} ${w(`usage.metrics.tokens`)}`:c&&typeof c.input_tokens==`number`&&typeof c.output_tokens==`number`?`${h(c.input_tokens)} in / ${h(c.output_tokens)} out`:null,d=e.summary||m(e.error)||w(`cron.runEntry.noSummary`),f=!!e.error&&!!e.summary,p=m(e.deliverySuppressionReason),re=[s,p?w(`cron.runEntry.deliverySuppression`,{reason:p}):null,e.model,e.provider,l].filter(Boolean),ie=!!(r&&Kt(r,e));return v`
`}var R,z;function hn(){return(hn=e((()=>{b(),_e(),Oe(),De(),je(),S(),ae(),le(),s(),M(),R=`option:`,z=`command:`})))()}function gn(e){return[{value:`last`,label:`last`,kind:`neutral`},...o(e.channels.filter(Boolean)).map(t=>({value:t,label:e.channelMeta?.find(e=>e.id===t)?.label||e.channelLabels?.[t]||t}))]}function B(e,n){let r=o(t(n));return r.length===0?_:v`
${r.map(e=>v` `)}
`}function V(e){return`cron-error-${e}`}function H(e){return`cron-${e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}`}function _n(e,t,n){return e===`payloadText`&&t.payloadKind===`systemEvent`?w(`cron.form.mainTimelineMessage`):w(e===`deliveryTo`&&n===`webhook`?`cron.form.webhookUrl`:Q[e])}function vn(e,t,n){return Object.keys(Q).flatMap(r=>{let i=e[r];return i?[{key:r,label:_n(r,t,n),message:i,inputId:H(r)}]:[]})}function yn(e){let t=document.getElementById(e);t instanceof HTMLElement&&(typeof t.scrollIntoView==`function`&&t.scrollIntoView({block:`center`,behavior:Ge()}),t.focus())}function bn(e,t){return e?v`${w(e)}
`:_}function xn(e){return v`
${e}
*
${w(`cron.form.requiredSr`)}
`}function U(e){let t=e.wide?`cron-control cron-control--wide`:`cron-control`,n=e.error?v`
${e.control}${bn(e.error,e.errorId)}
`:v`${e.control}
`;return v`
${e.required?xn(e.label):e.label}
${e.help?v`${e.help} `:_}
${n}
`}function W(e,t,n){let r=n.errorKey?e.fieldErrors[n.errorKey]:void 0,i=r&&n.errorKey&&n.describeError!==!1?V(n.errorKey):void 0;return v`
e.onFormChange({[t]:n.currentTarget.value})}
/>
`}function G(e,t,n){let r=n.errorKey;return U({label:n.label,controlId:H(t),required:n.required,help:n.help,error:r?e.fieldErrors[r]:void 0,errorId:r?V(r):void 0,control:W(e,t,n)})}function K(e,t,n){let r=n.value??e.form[t];return(n.channel?vt:bt)({id:n.standalone?void 0:H(t),label:n.label,value:n.channel?r||`last`:r,options:n.options,disabled:n.disabled,onChange:n=>e.onFormChange({[t]:n})})}function q(e,t,n){return U({label:n.label,controlId:H(t),help:n.help,control:K(e,t,n)})}function J(e,t,n){return ze({title:n.label,description:n.help,checked:e.form[t],onChange:n=>e.onFormChange({[t]:n})})}function Sn(e){let t=e.editingJob?`job`:e.createOpen?`create`:`overview`;return v`
${t===`overview`?wn(e):Ln(e,t)}
${B(`cron-agent-suggestions`,e.agentSuggestions)}
${B(`cron-thinking-suggestions`,e.thinkingSuggestions)}
${B(`cron-tz-suggestions`,e.timezoneSuggestions)}
${B(`cron-delivery-to-suggestions`,e.deliveryToSuggestions)}
${B(`cron-delivery-account-suggestions`,e.accountSuggestions)}
`}function Cn(e){return e.canManage?_:v`
${C(`lock`)}
${w(`cron.adminRequired`)}
`}function wn(e){let t=e.jobsScheduleKindFilter!==`all`||e.jobsLastStatusFilter!==`all`||e.jobsTriggerFilter!==`all`||e.jobsSortBy!==`nextRunAtMs`||e.jobsSortDir!==`asc`,n=t||e.jobsQuery.trim().length>0||e.jobsEnabledFilter!==`all`,r=!e.loading&&e.hasLoaded&&!e.listError&&!e.error&&e.jobsTotal===0&&!n&&e.canManage,i=[v`
`,v`
${e.listTab===`activity`?k({},v`
${un(e)}
`):[k({},On(e,n)),r?In(e):_]}
`];return v`
`}function Tn(e){return N({value:e.listTab,options:[{value:`tasks`,label:w(`cron.list.tasksTab`),testId:`cron-list-tab-tasks`},{value:`activity`,label:w(`cron.list.activityTab`),testId:`cron-list-tab-activity`}],ariaLabel:w(`cron.list.viewLabel`),tabs:{id:`cron-list`,panelId:`cron-list-panel`},onChange:e.onListTabChange})}function En(e,t){return v`
`}function Y(e,t,n){return v`
${n.label}
e.onJobsFiltersChange({[t]:n.currentTarget.value})}
>
${n.options.map(({value:e,label:t})=>v`${t} `)}
`}function Dn(e,t){return v`
${C(`listFilter`)}
{e.currentTarget.previousElementSibling?.setAttribute(`aria-expanded`,`true`)}}
@wa-hide=${e=>{e.currentTarget.previousElementSibling?.setAttribute(`aria-expanded`,`false`)}}
>
${Y(e,`cronJobsScheduleKindFilter`,{label:w(`cron.jobs.schedule`),value:e.jobsScheduleKindFilter,testId:`cron-jobs-schedule-filter`,options:Object.entries(Zn).map(([e,t])=>({value:e,label:w(t)}))})}
${Y(e,`cronJobsLastStatusFilter`,{label:w(`cron.jobs.lastRun`),value:e.jobsLastStatusFilter,testId:`cron-jobs-last-status-filter`,options:[{value:`all`,label:w(`cron.jobs.all`)},{value:`ok`,label:w(`cron.runs.runStatusOk`)},{value:`error`,label:w(`cron.runs.runStatusError`)},{value:`skipped`,label:w(`cron.runs.runStatusSkipped`)},{value:`unknown`,label:w(`cron.runs.runStatusUnknown`)}]})}
${Y(e,`cronJobsTriggerFilter`,{label:w(`cron.jobs.condition`),value:e.jobsTriggerFilter,testId:`cron-jobs-trigger-filter`,options:[{value:`all`,label:w(`cron.jobs.all`)},{value:`conditional`,label:w(`cron.jobs.conditional`)},{value:`unconditional`,label:w(`cron.jobs.unconditional`)}]})}
${Y(e,`cronJobsSortBy`,{label:w(`cron.jobs.sort`),value:e.jobsSortBy,options:[{value:`nextRunAtMs`,label:w(`cron.jobs.nextRun`)},{value:`updatedAtMs`,label:w(`cron.jobs.recentlyUpdated`)},{value:`name`,label:w(`cron.jobs.name`)}]})}
${Y(e,`cronJobsSortDir`,{label:w(`cron.jobs.direction`),value:e.jobsSortDir,options:[{value:`asc`,label:w(`cron.jobs.ascending`)},{value:`desc`,label:w(`cron.jobs.descending`)}]})}
${w(`cron.jobs.reset`)}
`}function On(e,t){let n=e.loading&&!e.hasLoaded,r=e.loading||e.jobsLoadingMore;return v`
${w(`cron.jobs.name`)}
${w(`cron.jobs.schedule`)}
${w(`cron.jobs.nextRun`)}
${w(`cron.jobs.lastRun`)}
${e.canManage?v` `:_}
${e.jobs.length===0?n?v`
${w(`cron.list.loading`)}
`:e.hasLoaded?v`
${w(t?`cron.list.noMatching`:`cron.list.emptyTitle`)}
${t?_:v`
${w(`cron.list.emptyHint`)}
`}
`:_:me(e.jobs,e=>e.id,t=>kn(t,e))}
${jt({jobsShown:e.jobs.length,jobsTotal:e.jobsTotal,hasMore:e.jobsHasMore,loading:e.loading,loadingMore:e.jobsLoadingMore,onLoadMore:e.onLoadMoreJobs})}
`}function kn(e,t){let n=e.description?.trim(),r=A(e.payload.kind),i=e.state?.nextRunAtMs,a=typeof i==`number`&&Number.isFinite(i),o=ft(e)?v`${w(`cron.runs.runStatusRunning`)} `:a?f(i):w(`common.na`);return v`
t.onSelectJob(e)}
>
${An(e)}
${e.name}
${e.trigger?jn():_}
${n||!e.enabled?v`
${n?v`
${n}
`:_}
${n&&!e.enabled?v`路 `:_}
${e.enabled?_:Mn(e)}
`:_}
${X(`cron-table__schedule`,w(`cron.jobs.schedule`),Pt(e))}
${X(`cron-table__next`,w(`cron.jobs.nextRun`),o)}
${X(`cron-table__last`,w(`cron.jobs.lastRun`),Pn(e))}
${t.canManage?v`
e.stopPropagation()}>
t.onRun(e,`force`)}
>
${C(`play`)}
${r?_:zn(t,e,{compact:!0,testId:`cron-row-toggle-${e.id}`})}
${Fn(t,e)}
`:_}
`}function X(e,t,n){return v`
${t}
${n}
`}function An(e){let t=e.state?.autoDisabled,n=ft(e)?{className:`cron-table__state--running`,iconName:`loader`,label:w(`cron.runs.runStatusRunning`)}:t?{className:`cron-table__state--error`,iconName:`lock`,label:Nn(e)}:Pe(e)?{className:`cron-table__state--error`,iconName:`alertTriangle`,label:w(`cron.runs.runStatusError`)}:e.enabled?{className:`cron-table__state--active`,iconName:null,label:w(`cron.detail.active`)}:{className:`cron-table__state--paused`,iconName:`pause`,label:w(`cron.list.paused`)};return v`${n.iconName?C(n.iconName):v` `} `}function jn(){let e=w(`cron.form.triggerConfigured`);return v`${C(`gitBranch`)} `}function Mn(e){if(!e.state?.autoDisabled)return v`${w(`cron.list.paused`)} `;let t=Nn(e),n=e.state?.lastError?.trim();return v`${t} `}function Nn(e){let t=e.state?.autoDisabled;return t?w(t.reason===`schedule-errors`?`cron.list.autoDisabledScheduleErrors`:`cron.list.autoDisabledRunFailures`,{count:String(t.consecutiveErrors)}):w(`cron.list.paused`)}function Pn(e){let t=Be(e),n=e.state?.lastRunAtMs,r=typeof n==`number`&&Number.isFinite(n)?f(n):null;if(t===`unknown`||!r)return v`${w(`common.na`)} `;let i=t===`ok`?v`${C(`check`)} `:t===`error`?v`${C(`x`)} `:v`${C(`cornerDownRight`)} `,a=fn(t);return v`
${i}
${r}
`}function Fn(e,t){if(!e.canManage)return _;let n=A(t.payload.kind);return v`
`}function In(e){return k({title:w(`cron.suggestions.title`)},en.map(t=>v`
e.onOpenCreate(Zt(t))}
>
${t.emoji} ${w(t.nameKey)}
${w(t.taglineKey)}
${w(t.scheduleKey)}
${Ee.chevronRight}
`))}function Ln(e,t){let n=t===`job`?e.editingJob??void 0:void 0,r=t===`job`&&!!n,i=t===`job`&&e.detailTab===`history`,a=n?.trigger?{checkCount:n.state?.triggerEvalCount??0,lastCheckedAtMs:n.state?.lastTriggerEvalAtMs,lastFiredAtMs:n.state?.lastTriggerFireAtMs}:void 0,o=[v`
${C(`arrowLeft`)} ${w(`cron.detail.back`)}
`,Rn(e,t,n),Cn(e),r?Bn(e):_,e.error?v`${e.error}
`:_,v`
${i?k({title:w(`cron.detail.historyTitle`)},v`
${un({...e,conditionActivity:a})}
`):Vn(e,t)}
`];return v`
`}function Rn(e,t,n){let r=t===`job`?n?.name??e.form.name:w(`cron.detail.newTitle`),i=t===`job`?n?.description?.trim():void 0,a=A(n?.payload.kind),o=n?.state?.nextRunAtMs,s=typeof o==`number`&&Number.isFinite(o)?` 路 ${w(`cron.jobState.next`)} ${f(o)}`:``,c=t===`job`&&n?`${Pt(n)}${s}`:w(`cron.detail.newSubtitle`);return v`
`}function zn(e,t,n){let r=t.enabled?w(`cron.detail.active`):w(`cron.detail.paused`),i=t.enabled?w(`cron.actions.pause`):w(`cron.actions.resume`);return v`
${mt({checked:t.enabled,disabled:e.busy||!e.canManage,ariaLabel:n?.compact?i:r,onChange:n=>{e.canManage&&e.onToggle(t,n)}})}
${n?.compact?_:v`${r} `}
`}function Bn(e){return N({value:e.detailTab,options:[{value:`settings`,label:w(`cron.detail.settingsTab`),testId:`cron-detail-tab-settings`},{value:`history`,label:w(`cron.detail.historyTitle`),testId:`cron-detail-tab-history`}],ariaLabel:w(`cron.detail.tabsLabel`),tabs:{id:`cron-detail`,panelId:`cron-detail-panel`,variant:`sub`},onChange:e.onDetailTabChange})}function Vn(e,t){let n=e.form.payloadLocked,r=t===`job`&&A(e.editingJob?.payload.kind),i=!n&&e.form.payloadKind===`agentTurn`,a=e.form.sessionTarget!==`main`&&(e.form.payloadKind===`agentTurn`||n),o=e.form.deliveryMode===`announce`&&!a?`none`:e.form.deliveryMode,s=vn(e.fieldErrors,e.form,o),c=e.canManage&&!e.busy&&s.length>0,l=c&&!e.canSubmit?s.length===1?w(`cron.form.fixFields`,{count:String(s.length)}):w(`cron.form.fixFieldsPlural`,{count:String(s.length)}):``;return v`
${Hn(e,{payloadLocked:n,isAgentTurn:i})} ${Un(e)}
${Gn(e)}
${Kn(e,{supportsAnnounce:a,selectedDeliveryMode:o})}
${qn(e,{mode:t,isAgentTurn:i,selectedDeliveryMode:o})}
${c?v`
`:_}
${e.canManage&&!r?v`
${e.busy?w(`cron.form.saving`):w(t===`job`?`cron.form.saveChanges`:`cron.form.createTask`)}
${t===`create`?v`
${w(`cron.form.createAndRun`)}
`:_}
${w(`cron.form.cancel`)}
${l?v`
${l}
`:_}
`:_}
`}function Z(e,t,n,r){return v`
`}function Hn(e,t){let n=e.form.payloadKind===`script`?w(`cron.form.script`):e.form.payloadKind===`heartbeat`?`Heartbeat monitor`:e.form.payloadKind===`skillCollectionReview`?`Skill collection review`:w(`cron.form.command`),r=t.payloadLocked?n:e.form.payloadKind===`systemEvent`?w(`cron.form.mainTimelineMessage`):w(`cron.form.assistantTaskPrompt`),i=t.payloadLocked?w(`cron.form.readOnlyPayloadHelp`):e.form.payloadKind===`systemEvent`?w(`cron.form.systemEventHelp`):w(`cron.form.agentTurnHelp`),a=t.payloadLocked?Qn[e.form.payloadKind]:``,s=U({label:r,controlId:a?``:`cron-payload-text`,required:!0,help:i,stacked:!0,wide:!0,error:e.fieldErrors.payloadText,errorId:V(`payloadText`),control:a?v`
${he(Ue(e.form.payloadText,a))}
`:v`
`}),c=w(`cron.form.action`),l=t.payloadLocked?U({label:c,controlId:H(`payloadKind`),control:v`
`}):q(e,`payloadKind`,{label:c,options:[{value:`systemEvent`,label:w(`cron.form.systemEvent`)},{value:`agentTurn`,label:w(`cron.form.agentTurn`)}]}),u=w(`cron.form.model`),d=e.fieldErrors.payloadModel,ee=o(e.modelSuggestions).map(e=>({value:e,label:e,provider:Fe(e)??void 0})),f=t.isAgentTurn?v`
${U({label:u,controlId:``,help:w(`cron.form.modelHelp`),error:d,errorId:V(`payloadModel`),control:kt({id:`cron-payload-model-picker`,label:u,value:e.form.payloadModel,options:[{value:``,label:w(`quickSettings.model.default`)},...ee],custom:{id:H(`payloadModel`),label:w(`cron.form.customModel`),placeholder:w(`cron.form.modelPlaceholder`),invalid:!!d,describedBy:d?V(`payloadModel`):void 0},onChange:t=>e.onFormChange({payloadModel:t})})})}
${G(e,`payloadThinking`,{label:w(`cron.form.thinking`),help:w(`cron.form.thinkingHelp`),errorKey:`payloadThinking`,describeError:!1,list:`cron-thinking-suggestions`,placeholder:w(`cron.form.thinkingPlaceholder`)})}
`:_;return k({},v`${s}${l}${f}`)}function Un(e){let t=e.form.sessionTarget,n=t===`main`||t===`isolated`;return k({title:w(`cron.detail.generalSection`)},v`
${G(e,`name`,{label:w(`cron.form.fieldName`),required:!0,errorKey:`name`,placeholder:w(`cron.form.namePlaceholder`)})}
${G(e,`agentId`,{label:w(`cron.form.agentId`),help:w(`cron.form.agentHelp`),list:`cron-agent-suggestions`,disabled:e.form.clearAgent,placeholder:w(`cron.form.agentPlaceholder`)})}
${q(e,`sessionTarget`,{label:w(`cron.form.runsIn`),help:w(`cron.form.sessionHelp`),options:[{value:`main`,label:w(`cron.form.mainSession`)},{value:`isolated`,label:w(`cron.form.isolatedSession`)},...n?[]:[{value:t,label:t}]]})}
`)}function Wn(e){if(e.scheduleKind===`every`){let t=e.everyAmount.trim();if(pt(t,e.everyUnit)===void 0)return null;if(Number(t)===1){let t=e.everyUnit===`seconds`?`cron.form.summaryEverySecondOne`:e.everyUnit===`minutes`?`cron.form.summaryEveryMinuteOne`:e.everyUnit===`hours`?`cron.form.summaryEveryHourOne`:`cron.form.summaryEveryDayOne`;return w(t)}let n=e.everyUnit===`seconds`?`cron.form.summaryEverySeconds`:e.everyUnit===`minutes`?`cron.form.summaryEveryMinutes`:e.everyUnit===`hours`?`cron.form.summaryEveryHours`:`cron.form.summaryEveryDays`;return w(n,{amount:t})}if(e.scheduleKind===`at`){let t=Date.parse(e.scheduleAt);return Number.isFinite(t)?w(`cron.form.summaryOnce`,{at:g(t)}):null}if(e.scheduleKind===`cron`){let t=e.cronExpr.trim();if(!t)return null;let n=e.cronTz.trim();return n?w(`cron.form.summaryCronTz`,{expr:t,tz:n}):w(`cron.form.summaryCron`,{expr:t})}return e.scheduleKind===`on-exit`?w(`cron.form.repeatOnExit`):e.scheduleKind===`stream`?w(`cron.form.repeatStream`):null}function Gn(e){let t=e.form,n=t.scheduleKind===`on-exit`,r=t.scheduleKind===`stream`,i=n?{value:`on-exit`,label:w(`cron.form.repeatOnExit`)}:r?{value:`stream`,label:w(`cron.form.repeatStream`)}:null,a=[...i?[{...i,testId:`cron-schedule-kind-${i.value}`}]:[],{value:`every`,label:w(`cron.form.repeatInterval`),testId:`cron-schedule-kind-every`},{value:`at`,label:w(`cron.form.repeatOnce`),testId:`cron-schedule-kind-at`},{value:`cron`,label:w(`cron.form.cronOption`),testId:`cron-schedule-kind-cron`}],o=Wn(t);return k({title:w(`cron.detail.scheduleSection`)},v`
${$e({title:w(`cron.form.repeat`),description:n?w(`cron.form.onExitHelp`):void 0,stacked:!0,control:N({value:t.scheduleKind,options:a,ariaLabel:w(`cron.form.repeat`),onChange:n=>e.onFormChange({scheduleKind:n,...n===`at`&&(t.scheduleKind===`every`||t.scheduleKind===`cron`)?{deleteAfterRun:!0}:n===`every`||n===`cron`?{deleteAfterRun:!1}:{}})})})}
${t.scheduleKind===`at`?G(e,`scheduleAt`,{label:w(`cron.form.runAt`),required:!0,errorKey:`scheduleAt`,type:`datetime-local`}):_}
${t.scheduleKind===`every`?U({label:w(`cron.form.every`),controlId:`cron-every-amount`,required:!0,error:e.fieldErrors.everyAmount,errorId:V(`everyAmount`),control:v`
${W(e,`everyAmount`,{label:w(`cron.form.every`),required:!0,errorKey:`everyAmount`,placeholder:w(`cron.form.everyAmountPlaceholder`)})}
${K(e,`everyUnit`,{label:w(`cron.form.unit`),standalone:!0,options:[{value:`seconds`,label:w(`cron.form.seconds`)},{value:`minutes`,label:w(`cron.form.minutes`)},{value:`hours`,label:w(`cron.form.hours`)},{value:`days`,label:w(`cron.form.days`)}]})}
`}):_}
${t.scheduleKind===`cron`?v`
${G(e,`cronExpr`,{label:w(`cron.form.expression`),required:!0,errorKey:`cronExpr`,mono:!0,placeholder:w(`cron.form.expressionPlaceholder`)})}
${G(e,`cronTz`,{label:w(`cron.form.timezoneOptional`),help:w(`cron.form.timezoneHelp`),list:`cron-tz-suggestions`,placeholder:w(`cron.form.timezonePlaceholder`)})}
`:_}
${o?v` ${C(`clock`)}${o}
`:_}
`)}function Kn(e,t){let n=gn(e);return k({title:w(`cron.detail.deliverySection`)},v`
${q(e,`deliveryMode`,{label:w(`cron.form.deliveryModeLabel`),help:w(`cron.form.deliveryHelp`),value:t.selectedDeliveryMode,options:[...t.supportsAnnounce?[{value:`announce`,label:w(`cron.form.announceDefault`)}]:[],{value:`webhook`,label:w(`cron.form.webhookPost`)},{value:`none`,label:w(`cron.form.noneInternal`)}]})}
${t.selectedDeliveryMode===`announce`?v`
${q(e,`deliveryChannel`,{label:w(`cron.form.channel`),help:w(`cron.form.channelHelp`),value:e.form.deliveryChannel||`last`,options:n,channel:!0})}
${G(e,`deliveryTo`,{label:w(`cron.form.to`),help:w(`cron.form.toHelp`),list:`cron-delivery-to-suggestions`,placeholder:w(`cron.form.toPlaceholder`)})}
`:_}
${t.selectedDeliveryMode===`webhook`?G(e,`deliveryTo`,{label:w(`cron.form.webhookUrl`),required:!0,help:w(`cron.form.webhookHelp`),errorKey:`deliveryTo`,list:`cron-delivery-to-suggestions`,placeholder:w(`cron.form.webhookPlaceholder`)}):_}
`)}function qn(e,t){let n=e.form.scheduleKind===`cron`,r=gn(e);return v`
${w(`cron.form.advanced`)}
${e.form.triggerEnabled?v`
${C(`gitBranch`)} ${w(`cron.form.triggerConfigured`)}
`:_}
${w(`cron.form.advancedHelp`)}
${Jn(e)}
${G(e,`description`,{label:w(`cron.form.description`),placeholder:w(`cron.form.descriptionPlaceholder`)})}
${t.mode===`create`?J(e,`enabled`,{label:w(`cron.form.startEnabled`)}):_}
${q(e,`wakeMode`,{label:w(`cron.form.wakeMode`),help:w(`cron.form.wakeModeHelp`),options:[{value:`now`,label:w(`cron.form.now`)},{value:`next-heartbeat`,label:w(`cron.form.nextHeartbeat`)}]})}
${t.isAgentTurn?G(e,`timeoutSeconds`,{label:w(`cron.form.timeoutSeconds`),help:w(`cron.form.timeoutHelp`),errorKey:`timeoutSeconds`,placeholder:w(`cron.form.timeoutPlaceholder`)}):_}
${e.form.scheduleKind===`at`||e.form.scheduleKind===`on-exit`?J(e,`deleteAfterRun`,{label:w(`cron.form.deleteAfterRun`),help:w(`cron.form.deleteAfterRunHelp`)}):_}
${J(e,`clearAgent`,{label:w(`cron.form.clearAgentOverride`),help:w(`cron.form.clearAgentHelp`)})}
${U({label:w(`cron.form.sessionKey`),controlId:`cron-session-key`,help:w(`cron.form.sessionKeyHelp`),control:v`
e.onFormChange({sessionKey:t.target.value})}
/>
`})}
${n?v`
${J(e,`scheduleExact`,{label:w(`cron.form.exactTiming`),help:w(`cron.form.exactTimingHelp`)})}
${U({label:w(`cron.form.staggerWindow`),controlId:`cron-stagger-amount`,error:e.fieldErrors.staggerAmount,errorId:V(`staggerAmount`),control:v`
${W(e,`staggerAmount`,{label:w(`cron.form.staggerWindow`),disabled:e.form.scheduleExact,errorKey:`staggerAmount`,placeholder:w(`cron.form.staggerPlaceholder`)})}
${K(e,`staggerUnit`,{label:w(`cron.form.staggerUnit`),standalone:!0,disabled:e.form.scheduleExact,options:[{value:`seconds`,label:w(`cron.form.seconds`)},{value:`minutes`,label:w(`cron.form.minutes`)}]})}
`})}
`:_}
${t.isAgentTurn?v`
${U({label:w(`cron.form.accountId`),controlId:`cron-delivery-account-id`,help:w(`cron.form.accountIdHelp`),control:v`
e.onFormChange({deliveryAccountId:t.target.value})}
/>
`})}
${J(e,`payloadLightContext`,{label:w(`cron.form.lightContext`),help:w(`cron.form.lightContextHelp`)})}
${Yn(e,r)}
`:_}
${t.selectedDeliveryMode===`none`?_:J(e,`deliveryBestEffort`,{label:w(`cron.form.bestEffortDelivery`),help:w(`cron.form.bestEffortHelp`)})}
`}function Jn(e){let t=e.form.payloadKind===`script`;return!t&&e.status===null?_:e.status?.triggersEnabled!==!0||t?$e({title:w(`cron.form.conditionTrigger`),description:t?w(`cron.errors.triggerScriptPayloadUnsupported`):e.form.triggerEnabled?w(`cron.form.triggerDisabledConfigured`):w(`cron.form.triggerDisabled`),control:e.form.triggerEnabled?v`e.onFormChange({triggerEnabled:!1})}
>
${w(`cron.form.clearTrigger`)}
`:_}):v`
${J(e,`triggerEnabled`,{label:w(`cron.form.conditionTrigger`),help:w(`cron.form.conditionTriggerHelp`)})}
${e.form.triggerEnabled?v`
${U({label:w(`cron.form.triggerScript`),controlId:`cron-trigger-script`,required:!0,help:w(`cron.form.triggerScriptHelp`),error:e.fieldErrors.triggerScript,errorId:V(`triggerScript`),stacked:!0,wide:!0,control:v``})}
${J(e,`triggerOnce`,{label:w(`cron.form.triggerOnce`),help:w(`cron.form.triggerOnceHelp`)})}
`:_}
`}function Yn(e,t){return v`
${q(e,`failureAlertMode`,{label:w(`cron.form.failureAlerts`),help:w(`cron.form.failureAlertsHelp`),options:[{value:`inherit`,label:w(`cron.form.failureAlertInherit`)},{value:`disabled`,label:w(`cron.form.failureAlertDisabled`)},{value:`custom`,label:w(`cron.form.failureAlertCustom`)}]})}
${e.form.failureAlertMode===`custom`?v`
${G(e,`failureAlertAfter`,{label:w(`cron.form.failureAlertAfter`),help:w(`cron.form.failureAlertAfterHelp`),errorKey:`failureAlertAfter`,placeholder:`2`})}
${G(e,`failureAlertCooldownSeconds`,{label:w(`cron.form.failureAlertCooldown`),help:w(`cron.form.failureAlertCooldownHelp`),errorKey:`failureAlertCooldownSeconds`,placeholder:`3600`})}
${q(e,`failureAlertChannel`,{label:w(`cron.form.failureAlertChannel`),value:e.form.failureAlertChannel||`last`,options:t,channel:!0})}
${G(e,`failureAlertTo`,{label:w(`cron.form.failureAlertTo`),help:w(`cron.form.failureAlertToHelp`),list:`cron-delivery-to-suggestions`,placeholder:w(`cron.form.failureAlertToPlaceholder`)})}
${q(e,`failureAlertDeliveryMode`,{label:w(`cron.form.failureAlertMode`),value:e.form.failureAlertDeliveryMode||`announce`,options:[{value:`announce`,label:w(`cron.form.failureAlertAnnounce`)},{value:`webhook`,label:w(`cron.form.failureAlertWebhook`)}]})}
${G(e,`failureAlertAccountId`,{label:w(`cron.form.failureAlertAccountId`),placeholder:w(`cron.form.failureAlertAccountPlaceholder`)})}
`:_}
`}var Q,Xn,Zn,Qn;function $n(){return($n=e((()=>{r(),b(),de(),ge(),_e(),yt(),Mt(),Oe(),ht(),At(),Ie(),xt(),we(),De(),St(),it(),S(),Ke(),ae(),le(),j(),Jt(),Xt(),tn(),hn(),Q={name:`cron.form.fieldName`,scheduleAt:`cron.form.runAt`,everyAmount:`cron.form.every`,cronExpr:`cron.form.expression`,staggerAmount:`cron.form.staggerWindow`,triggerScript:`cron.form.triggerScript`,payloadText:`cron.form.assistantTaskPrompt`,payloadModel:`cron.form.model`,payloadThinking:`cron.form.thinking`,timeoutSeconds:`cron.form.timeoutSeconds`,deliveryTo:`cron.form.to`,failureAlertAfter:`cron.form.failureAlertAfter`,failureAlertCooldownSeconds:`cron.form.failureAlertCooldown`},Xn=[{value:`all`,labelKey:`cron.tabs.all`},{value:`enabled`,labelKey:`cron.tabs.active`},{value:`disabled`,labelKey:`cron.tabs.paused`}],Zn={all:`cron.jobs.all`,at:`cron.form.at`,every:`cron.form.every`,cron:`cron.form.cronOption`,"on-exit":`cron.form.repeatOnExit`,stream:`cron.form.repeatStream`},Qn={script:`javascript`,command:`bash`,heartbeat:``,skillCollectionReview:``,systemEvent:``,agentTurn:``}})))()}var $,er;function tr(){return(tr=e((()=>{Ae(),b(),fe(),xe(),Se(),ye(),It(),Ne(),Et(),S(),d(),ct(),s(),Dt(),ie(),ue(),Wt(),M(),$n(),$=class extends p{constructor(...e){super(...e),this.routeSearch=``,this.cron=He(),this.agentsList=null,this.cronModelSuggestions=[],this.listTab=`tasks`,this.detailTab=`settings`,this.pendingRouteData=null,this.highlightedRunId=null,this.pendingRunScroll=!1,this.modelSuggestionsState=null,this.gateway=new Ot(this,{getGateway:()=>this.context?.gateway,invalidateRequests:e=>this.resetGatewayState(e.snapshot),onSnapshot:e=>{e.initial&&this.resetGatewayState(e.snapshot)},ensureInitialData:()=>this.ensureInitialData()}),this.observeAgentScope=Le(e=>{this.resetGatewayState(this.context.gateway.snapshot),this.cron.cronAgentId=e,this.listTab=`tasks`,this.detailTab=`settings`,this.ensureInitialData(),this.requestUpdate()}),this.subscriptions=new ce(this).watch(()=>this.context?.agents,(e,t)=>e.subscribe(t),()=>this.syncAgentsState()).watch(()=>this.context?.channels,(e,t)=>e.subscribe(t)).watch(()=>this.context?.runtimeConfig,(e,t)=>e.subscribe(t)).effect(()=>this.context?.agentSelection,e=>this.observeAgentScope(e)).effect(()=>this.context?.gateway,e=>e.subscribeEvents(t=>{this.gateway.gateway===e&&this.context.gateway===e&&this.gateway.connected&&this.gateway.client&&t.event===`cron`&&this.refreshCron({tableFilters:!0})})),this.lastPanelKey=null}get canManageCron(){return be(this.context.gateway.snapshot).canAdmin}disconnectedCallback(){this.subscriptions.clear(),super.disconnectedCallback()}resetGatewayState(e){let t=e?.phase===`connected`;this.cron=He({client:e?.client??null,connected:t}),this.cron.cronAgentId=this.context.agentSelection.state.scopeId,this.agentsList=t?this.context.agents.state.agentsList:null,this.cronModelSuggestions=[],this.modelSuggestionsState=null}syncAgentsState(){this.agentsList=this.context.agents.state.agentsList}ensureInitialData(){if(!(!this.cron.connected||!this.cron.client)&&(!this.agentsList&&!this.context.agents.state.agentsLoading&&this.context.agents.ensureList(),!this.cron.cronStatus&&!this.cron.cronLoading?this.refreshCron({tableFilters:!0}):!this.cron.cronRuns.length&&!this.cron.cronRunsLoadingMore&&this.loadRuns(this.cron.cronRunsScope===`all`?null:this.cron.cronRunsJobId),this.modelSuggestionsState!==this.cron)){let e=this.cron;this.modelSuggestionsState=e,this.loadModelSuggestions(e)}}requestCronUpdate(e=this.cron){this.cron===e&&this.requestUpdate()}willUpdate(e){if(e.has(`routeSearch`)){let e=Gt(this.routeSearch);this.pendingRouteData=e.jobId?e:null,this.highlightedRunId=null,this.pendingRunScroll=!1}}updated(){let e=this.cron.cronEditingJob?.id??null,t=`${e?`job`:this.cron.cronCreateOpen?`create`:`overview`}:${e??``}`;if(t!==this.lastPanelKey){this.lastPanelKey=t,this.detailTab=e&&this.highlightedRunId?`history`:`settings`;let n=this.closest(`.content`);n instanceof HTMLElement&&typeof n.scrollTo==`function`&&n.scrollTo({top:0})}if(this.pendingRouteData&&!this.cron.cronLoading&&this.cron.cronJobsSnapshotRevision){let e=this.pendingRouteData;this.pendingRouteData=null;let t=this.cron.cronJobs.find(t=>t.id===e.jobId);t&&this.selectJob(t,e.runId)}if(this.pendingRunScroll){let e=this.querySelector(`.cron-run-entry--highlighted`);e&&(e.scrollIntoView?.({block:`nearest`}),this.pendingRunScroll=!1)}}async refreshCron(e){let t=this.cron;if(!t.connected||!t.client)return;let n=t.cronRunsScope===`job`?t.cronRunsJobId:null;this.loadRuns(n),this.context.channels.refresh(!1),await Promise.all([this.runCronTask(e=>We(e)),this.runCronTask(e=>ut(e)),this.runCronTask(e=>gt(e)),this.runCronTask(t=>O(t,{tableFilters:e.tableFilters}))])}loadRuns(e){return this.runCronTask(t=>D(t,e))}async loadModelSuggestions(e){let t={client:e.client,connected:e.connected,cronModelSuggestions:this.cronModelSuggestions};await ot(t,this.context.agentSelection.state.selectedId),this.isConnected&&this.cron===e&&this.modelSuggestionsState===e&&e.connected&&t.client===e.client&&(this.cronModelSuggestions=t.cronModelSuggestions)}async runCronTask(e){let t=this.cron;try{let n=e(t);return this.requestCronUpdate(t),await n}finally{this.requestCronUpdate(t)}}runCronAdminTask(e){this.canManageCron&&this.runCronTask(e)}patchForm(e){this.canManageCron&&(this.cron.cronForm=st({...this.cron.cronForm,...e},e),this.cron.cronFieldErrors=Qe(this.cron.cronForm),this.requestCronUpdate())}selectJob(e,t=null){this.highlightedRunId=t,this.pendingRunScroll=!!t,t&&(this.detailTab=`history`),this.cron.cronCreateOpen=!1,Ze(this.cron,e),this.requestCronUpdate(),this.runCronTask(async t=>{E(t,{cronRunsScope:`job`}),t.cronRunsJobId=e.id,await D(t,e.id)})}openCreate(e){if(this.canManageCron){if(T(this.cron,this.context.agentSelection.state.selectedId),this.cron.cronCreateOpen=!0,e){this.patchForm(e);return}this.requestCronUpdate()}}cloneJob(e){this.canManageCron&&(Je(this.cron,e),this.cron.cronCreateOpen=!0,this.requestCronUpdate())}async removeJob(e){let t=this.context,n=this.cron,r=this.gateway.capture(),i=this.canManageCron,a=n.cronEditingJob?.id===e.id?n.cronEditingJob:n.cronJobs.find(t=>t.id===e.id&&t.updatedAtMs===e.updatedAtMs);if(!r||!i||!a)return;let o=a.id,s=a.updatedAtMs,c=a.name,l=await dt({title:w(`cron.actions.removeConfirmTitle`,{name:c}),message:w(`cron.actions.removeConfirmMessage`),confirmLabel:w(`cron.actions.remove`),danger:!0}),u=n.cronEditingJob?.id===o?n.cronEditingJob:n.cronJobs.find(e=>e.id===o);!l||this.context!==t||this.cron!==n||!this.gateway.isCurrent(r)||!this.canManageCron||!u||u.updatedAtMs!==s||await this.runCronTask(async e=>{await qe(e,u),e.cronRunsScope===`job`&&e.cronRunsJobId===null&&(E(e,{cronRunsScope:`all`}),await D(e,null))})}closePanel(){T(this.cron,this.context.agentSelection.state.selectedId),this.cron.cronCreateOpen=!1,this.requestCronUpdate(),this.runCronTask(async e=>{E(e,{cronRunsScope:`all`}),e.cronRunsJobId=null,await D(e,null)})}submitForm(e={}){this.runCronAdminTask(async t=>{let n=await Ve(t);n.saved&&(t.cronEditingJob||(e.runNow&&n.jobId&&await lt(t,n.jobId,`force`),t.cronCreateOpen=!1,t.cronRunsScope===`job`&&(E(t,{cronRunsScope:`all`}),t.cronRunsJobId=null,await D(t,null))))})}render(){let e=this.context.channels.state,t=l(this.context),n=Ht({channels:e,runtimeConfig:this.context.runtimeConfig.state,cron:this.cron,agentsList:this.agentsList,modelSuggestions:this.cronModelSuggestions}),r=this.canManageCron;return v`
${Tt(Sn({basePath:this.context.basePath,agentId:t,loading:this.cron.cronLoading,hasLoaded:this.cron.cronJobsSnapshotRevision!==null,listError:this.cron.cronJobsError,canManage:r,status:this.cron.cronStatus,failingCount:this.cron.cronFailingCount,agentScoped:this.cron.cronAgentId!==null,scopedTotal:this.cron.cronScopedTotal,scopedNextWakeAtMs:this.cron.cronScopedNextWakeAtMs,jobs:Me(this.cron),jobsLoadingMore:this.cron.cronJobsLoadingMore,jobsTotal:this.cron.cronJobsTotal,jobsHasMore:this.cron.cronJobsHasMore,jobsQuery:this.cron.cronJobsQuery,jobsEnabledFilter:this.cron.cronJobsEnabledFilter,jobsScheduleKindFilter:this.cron.cronJobsScheduleKindFilter,jobsLastStatusFilter:this.cron.cronJobsLastStatusFilter,jobsTriggerFilter:this.cron.cronJobsTriggerFilter,jobsSortBy:this.cron.cronJobsSortBy,jobsSortDir:this.cron.cronJobsSortDir,editingJob:this.cron.cronEditingJob,createOpen:this.cron.cronCreateOpen,listTab:this.listTab,detailTab:this.detailTab,error:this.cron.cronError,busy:this.cron.cronBusy,form:this.cron.cronForm,channels:e.channelsSnapshot?.channelMeta?.length?e.channelsSnapshot.channelMeta.map(e=>e.id):e.channelsSnapshot?.channelOrder??[],channelLabels:e.channelsSnapshot?.channelLabels??{},channelMeta:e.channelsSnapshot?.channelMeta??[],runs:this.cron.cronRuns,highlightedRunId:this.highlightedRunId,runsTotal:this.cron.cronRunsTotal,runsHasMore:this.cron.cronRunsHasMore,runsLoadingMore:this.cron.cronRunsLoadingMore,runsStatuses:this.cron.cronRunsStatuses,runsDeliveryStatuses:this.cron.cronRunsDeliveryStatuses,runsQuery:this.cron.cronRunsQuery,runsSortDir:this.cron.cronRunsSortDir,fieldErrors:this.cron.cronFieldErrors,canSubmit:!Xe(this.cron.cronFieldErrors),agentSuggestions:n.agentSuggestions,modelSuggestions:n.modelSuggestions,thinkingSuggestions:Ut,timezoneSuggestions:n.timezoneSuggestions,deliveryToSuggestions:n.deliveryToSuggestions,accountSuggestions:n.accountTargets,onListTabChange:e=>{this.listTab=e},onDetailTabChange:e=>{this.detailTab=e},onFormChange:e=>this.patchForm(e),onRefresh:()=>void this.refreshCron({tableFilters:!0}),onSubmit:()=>this.submitForm(),onSubmitRunNow:()=>this.submitForm({runNow:!0}),onSelectJob:e=>this.selectJob(e),onOpenCreate:e=>this.openCreate(e),onClosePanel:()=>this.closePanel(),onClone:e=>this.cloneJob(e),onToggle:(e,t)=>this.runCronAdminTask(n=>at(n,e,t)),onRun:(e,t)=>this.runCronAdminTask(n=>lt(n,e.id,t??`force`)),onRemove:e=>void this.removeJob(e),onLoadMoreJobs:()=>void this.runCronTask(e=>O(e,{append:!0,tableFilters:!0})),onJobsFiltersChange:e=>void this.runCronTask(async t=>{tt(t,e),await O(t,{append:!1,tableFilters:!0})}),onJobsFiltersReset:()=>void this.runCronTask(async e=>{tt(e,{cronJobsScheduleKindFilter:`all`,cronJobsLastStatusFilter:`all`,cronJobsTriggerFilter:`all`,cronJobsSortBy:`nextRunAtMs`,cronJobsSortDir:`asc`}),await O(e,{append:!1,tableFilters:!0})}),onLoadMoreRuns:()=>void this.runCronTask(e=>rt(e)),onRunsFiltersChange:e=>void this.runCronTask(async t=>{E(t,e),await D(t,t.cronRunsScope===`all`?null:t.cronRunsJobId)}),onNavigateToChat:e=>this.context.navigate(`chat`,ne({context:this.context,face:`chat`,sessionKey:e}).options)}))}
`}},i([ke({context:Ce,subscribe:!0})],$.prototype,`context`,void 0),i([pe({attribute:!1})],$.prototype,`routeSearch`,void 0),i([x()],$.prototype,`cron`,void 0),i([x()],$.prototype,`agentsList`,void 0),i([x()],$.prototype,`cronModelSuggestions`,void 0),i([x()],$.prototype,`listTab`,void 0),i([x()],$.prototype,`detailTab`,void 0),er={header:!0,render:e=>v` `},customElements.get(`openclaw-cron-page`)||customElements.define(`openclaw-cron-page`,$)})))()}tr();export{er as cronPageComponent};
//# sourceMappingURL=cron-page-DuAoJlqW.js.map