@qelos/aidev 1.1.0 → 1.3.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/.env.aidev.example +12 -1
- package/README.md +65 -7
- package/dist/ai/devin.d.ts +7 -0
- package/dist/ai/devin.d.ts.map +1 -0
- package/dist/ai/devin.js +91 -0
- package/dist/ai/devin.js.map +1 -0
- package/dist/ai/index.js +2 -2
- package/dist/ai/index.js.map +1 -1
- package/dist/cli.js +31 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/help.js +1 -1
- package/dist/commands/help.js.map +1 -1
- package/dist/commands/hooks.d.ts +5 -0
- package/dist/commands/hooks.d.ts.map +1 -0
- package/dist/commands/hooks.js +86 -0
- package/dist/commands/hooks.js.map +1 -0
- package/dist/commands/init.d.ts +1 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +18 -109
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/run.d.ts +2 -1
- package/dist/commands/run.d.ts.map +1 -1
- package/dist/commands/run.js +105 -64
- package/dist/commands/run.js.map +1 -1
- package/dist/commands/schedule.js +2 -2
- package/dist/commands/schedule.js.map +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +8 -1
- package/dist/config.js.map +1 -1
- package/dist/diagnostics.d.ts.map +1 -1
- package/dist/diagnostics.js +1 -2
- package/dist/diagnostics.js.map +1 -1
- package/dist/hooks.d.ts +18 -0
- package/dist/hooks.d.ts.map +1 -1
- package/dist/hooks.js +16 -0
- package/dist/hooks.js.map +1 -1
- package/dist/hooksTemplate.d.ts +14 -0
- package/dist/hooksTemplate.d.ts.map +1 -0
- package/dist/hooksTemplate.js +274 -0
- package/dist/hooksTemplate.js.map +1 -0
- package/dist/logger.d.ts +1 -0
- package/dist/logger.d.ts.map +1 -1
- package/dist/logger.js +32 -0
- package/dist/logger.js.map +1 -1
- package/dist/platform.d.ts +2 -2
- package/dist/platform.js +2 -2
- package/dist/providers/clickup.d.ts +8 -0
- package/dist/providers/clickup.d.ts.map +1 -1
- package/dist/providers/clickup.js +13 -1
- package/dist/providers/clickup.js.map +1 -1
- package/dist/providers/jira.d.ts +2 -0
- package/dist/providers/jira.d.ts.map +1 -1
- package/dist/providers/jira.js +51 -12
- package/dist/providers/jira.js.map +1 -1
- package/dist/providers/linear.d.ts +19 -0
- package/dist/providers/linear.d.ts.map +1 -1
- package/dist/providers/linear.js +65 -18
- package/dist/providers/linear.js.map +1 -1
- package/dist/providers/monday.d.ts +11 -0
- package/dist/providers/monday.d.ts.map +1 -1
- package/dist/providers/monday.js +74 -1
- package/dist/providers/monday.js.map +1 -1
- package/dist/providers/notion.d.ts +1 -0
- package/dist/providers/notion.d.ts.map +1 -1
- package/dist/providers/notion.js +44 -0
- package/dist/providers/notion.js.map +1 -1
- package/dist/providers/trello.d.ts +1 -0
- package/dist/providers/trello.d.ts.map +1 -1
- package/dist/providers/trello.js +53 -0
- package/dist/providers/trello.js.map +1 -1
- package/dist/safeMode.d.ts +32 -0
- package/dist/safeMode.d.ts.map +1 -0
- package/dist/safeMode.js +192 -0
- package/dist/safeMode.js.map +1 -0
- package/dist/types.d.ts +4 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +2 -2
- package/ui/.output/nitro.json +1 -1
- package/ui/.output/public/_nuxt/6wLLp9Nc.js +1 -0
- package/ui/.output/public/_nuxt/BGkU0f28.js +1 -0
- package/ui/.output/public/_nuxt/BOIhDy_l.js +4 -0
- package/ui/.output/public/_nuxt/BWJzzHTi.js +1 -0
- package/ui/.output/public/_nuxt/{3LZdFtk_.js → By4xSvKt.js} +3 -3
- package/ui/.output/public/_nuxt/ByAMJ0xS.js +1 -0
- package/ui/.output/public/_nuxt/C1xk3ymy.js +1 -0
- package/ui/.output/public/_nuxt/CBV5GuL6.js +11 -0
- package/ui/.output/public/_nuxt/CTtW-0zG.js +1 -0
- package/ui/.output/public/_nuxt/CX0vIr0s.js +131 -0
- package/ui/.output/public/_nuxt/{LzHPbXPK.js → CYm8nRCj.js} +1 -1
- package/ui/.output/public/_nuxt/CdHqKVo4.js +1 -0
- package/ui/.output/public/_nuxt/CnXdKLRd.js +16 -0
- package/ui/.output/public/_nuxt/Cz9dogwK.js +1 -0
- package/ui/.output/public/_nuxt/DGHfexQZ.js +1 -0
- package/ui/.output/public/_nuxt/{CWjftssB.js → DOoocm0F.js} +1 -1
- package/ui/.output/public/_nuxt/{DZd8Jv5H.js → D_gcbXK2.js} +1 -1
- package/ui/.output/public/_nuxt/{CO4XMBYO.js → Dfhp6TEA.js} +11 -11
- package/ui/.output/public/_nuxt/{BtD1YBwM.js → G5BjvTWO.js} +1 -1
- package/ui/.output/public/_nuxt/H73b_QUy.js +1 -0
- package/ui/.output/public/_nuxt/{BMTHyzVP.js → LCoCV2KL.js} +1 -1
- package/ui/.output/public/_nuxt/Zrl3Utak.js +1 -0
- package/ui/.output/public/_nuxt/config.CaB_F_OT.css +1 -0
- package/ui/.output/public/_nuxt/default.D13_FS9T.css +1 -0
- package/ui/.output/public/_nuxt/hooks.B03-GWTh.css +1 -0
- package/ui/.output/public/_nuxt/kPPYUzXr.js +2 -0
- package/ui/.output/public/_nuxt/logs.DLMkvOEl.css +1 -0
- package/ui/.output/public/_nuxt/mHp9eItY.js +1 -0
- package/ui/.output/public/_nuxt/{BTfAgCfF.js → tyaD1vVi.js} +1 -1
- package/ui/.output/public/_nuxt/{BGlShnpS.js → ynXKxjpn.js} +1 -1
- package/ui/.output/public/_nuxt/{B8sr5ZW-.js → yqBy-NAR.js} +2 -2
- package/ui/.output/server/chunks/_/hooksTemplate.mjs +365 -0
- package/ui/.output/server/chunks/_/hooksTemplate.mjs.map +1 -0
- package/ui/.output/server/chunks/build/{Badge-YPOjmkfv.mjs → Badge-nNgbDd8N.mjs} +2 -2
- package/ui/.output/server/chunks/build/{Badge-YPOjmkfv.mjs.map → Badge-nNgbDd8N.mjs.map} +1 -1
- package/ui/.output/server/chunks/build/{Button-CZHl6fpI.mjs → Button-CQZG7w2L.mjs} +117 -3
- package/ui/.output/server/chunks/build/Button-CQZG7w2L.mjs.map +1 -0
- package/ui/.output/server/chunks/build/{Card--ibiHV_r.mjs → Card-DdEnDTQW.mjs} +2 -2
- package/ui/.output/server/chunks/build/{Card--ibiHV_r.mjs.map → Card-DdEnDTQW.mjs.map} +1 -1
- package/ui/.output/server/chunks/build/{FormGroup-CX5VmH8y.mjs → FormGroup-BfYiVGgN.mjs} +2 -2
- package/ui/.output/server/chunks/build/{FormGroup-CX5VmH8y.mjs.map → FormGroup-BfYiVGgN.mjs.map} +1 -1
- package/ui/.output/server/chunks/build/{Input-kmqS1oY_.mjs → Input-Cnk3P_aB.mjs} +5 -60
- package/ui/.output/server/chunks/build/Input-Cnk3P_aB.mjs.map +1 -0
- package/ui/.output/server/chunks/build/{Modal-DmZs0Ekg.mjs → Modal-DfVO6DJD.mjs} +10 -5
- package/ui/.output/server/chunks/build/Modal-DfVO6DJD.mjs.map +1 -0
- package/ui/.output/server/chunks/build/{Select-n4_YfXfk.mjs → Select-Dc9_TJIR.mjs} +3 -3
- package/ui/.output/server/chunks/build/{Select-n4_YfXfk.mjs.map → Select-Dc9_TJIR.mjs.map} +1 -1
- package/ui/.output/server/chunks/build/client.precomputed.mjs +1 -1
- package/ui/.output/server/chunks/build/client.precomputed.mjs.map +1 -1
- package/ui/.output/server/chunks/build/{config-Bkb2wy7R.mjs → config-BUokZPak.mjs} +78 -58
- package/ui/.output/server/chunks/build/config-BUokZPak.mjs.map +1 -0
- package/ui/.output/server/chunks/build/config-styles.irltMnuD.mjs +8 -0
- package/ui/.output/server/chunks/build/config-styles.irltMnuD.mjs.map +1 -0
- package/ui/.output/server/chunks/build/{default-DmD3qBXZ.mjs → default-6TcwTt3p.mjs} +10 -9
- package/ui/.output/server/chunks/build/default-6TcwTt3p.mjs.map +1 -0
- package/ui/.output/server/chunks/build/default-styles.BqL9zxh4.mjs +8 -0
- package/ui/.output/server/chunks/build/default-styles.BqL9zxh4.mjs.map +1 -0
- package/ui/.output/server/chunks/build/entry-styles.q-b4rEBh.mjs +11 -0
- package/ui/.output/server/chunks/build/entry-styles.q-b4rEBh.mjs.map +1 -0
- package/ui/.output/server/chunks/build/hooks-k2ZmlVpA.mjs +4181 -0
- package/ui/.output/server/chunks/build/hooks-k2ZmlVpA.mjs.map +1 -0
- package/ui/.output/server/chunks/build/hooks-styles.Ddk4F_Gj.mjs +8 -0
- package/ui/.output/server/chunks/build/hooks-styles.Ddk4F_Gj.mjs.map +1 -0
- package/ui/.output/server/chunks/build/{index-Dy4Tu7MB.mjs → index-DwMIJp2e.mjs} +7 -3
- package/ui/.output/server/chunks/build/index-DwMIJp2e.mjs.map +1 -0
- package/ui/.output/server/chunks/build/{index-BvfXQQ2n.mjs → index-JLPhao-C.mjs} +5 -5
- package/ui/.output/server/chunks/build/{index-BvfXQQ2n.mjs.map → index-JLPhao-C.mjs.map} +1 -1
- package/ui/.output/server/chunks/build/{interval-DHZqEf-n.mjs → interval-DPa3fpS0.mjs} +3 -3
- package/ui/.output/server/chunks/build/{interval-DHZqEf-n.mjs.map → interval-DPa3fpS0.mjs.map} +1 -1
- package/ui/.output/server/chunks/build/{login-B5YkLJCV.mjs → login-D9DpNq3o.mjs} +6 -5
- package/ui/.output/server/chunks/build/login-D9DpNq3o.mjs.map +1 -0
- package/ui/.output/server/chunks/build/{logs-BvD1Y3HI.mjs → logs-BVuWOSb6.mjs} +49 -31
- package/ui/.output/server/chunks/build/logs-BVuWOSb6.mjs.map +1 -0
- package/ui/.output/server/chunks/build/logs-styles.C2Mi0JvX.mjs +8 -0
- package/ui/.output/server/chunks/build/logs-styles.C2Mi0JvX.mjs.map +1 -0
- package/ui/.output/server/chunks/build/{run-BStPkbGg.mjs → run-BVQZSGcX.mjs} +5 -5
- package/ui/.output/server/chunks/build/{run-BStPkbGg.mjs.map → run-BVQZSGcX.mjs.map} +1 -1
- package/ui/.output/server/chunks/build/{schedule-B2UKsnRW.mjs → schedule-rRz2CwWh.mjs} +10 -9
- package/ui/.output/server/chunks/build/schedule-rRz2CwWh.mjs.map +1 -0
- package/ui/.output/server/chunks/build/server.mjs +14 -9
- package/ui/.output/server/chunks/build/server.mjs.map +1 -1
- package/ui/.output/server/chunks/build/styles.mjs +8 -7
- package/ui/.output/server/chunks/build/styles.mjs.map +1 -1
- package/ui/.output/server/chunks/build/{tasks-DBH3Z6lg.mjs → tasks-DJjZQWcq.mjs} +10 -9
- package/ui/.output/server/chunks/build/tasks-DJjZQWcq.mjs.map +1 -0
- package/ui/.output/server/chunks/build/{useApi-Bqajqsuz.mjs → useApi-Brbyp7hV.mjs} +3 -3
- package/ui/.output/server/chunks/build/useApi-Brbyp7hV.mjs.map +1 -0
- package/ui/.output/server/chunks/build/useFormGroup-DqE91r20.mjs +61 -0
- package/ui/.output/server/chunks/build/useFormGroup-DqE91r20.mjs.map +1 -0
- package/ui/.output/server/chunks/nitro/nitro.mjs +202 -164
- package/ui/.output/server/chunks/routes/api/config/test.post.mjs +1 -1
- package/ui/.output/server/chunks/routes/api/config/test.post.mjs.map +1 -1
- package/ui/.output/server/chunks/routes/api/hooks-execute.post.mjs +83 -0
- package/ui/.output/server/chunks/routes/api/hooks-execute.post.mjs.map +1 -0
- package/ui/.output/server/chunks/routes/api/hooks-regenerate.post.mjs +30 -0
- package/ui/.output/server/chunks/routes/api/hooks-regenerate.post.mjs.map +1 -0
- package/ui/.output/server/chunks/routes/api/hooks-update.post.mjs +31 -0
- package/ui/.output/server/chunks/routes/api/hooks-update.post.mjs.map +1 -0
- package/ui/.output/server/chunks/routes/api/hooks.get.mjs +28 -0
- package/ui/.output/server/chunks/routes/api/hooks.get.mjs.map +1 -0
- package/ui/.output/server/chunks/routes/api/hooks.put.mjs +32 -0
- package/ui/.output/server/chunks/routes/api/hooks.put.mjs.map +1 -0
- package/ui/.output/server/chunks/routes/api/logs.get.mjs +7 -2
- package/ui/.output/server/chunks/routes/api/logs.get.mjs.map +1 -1
- package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/_virtual/_rollupPluginBabelHelpers.js +123 -0
- package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/config/index.js +11 -0
- package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/index.js +9 -0
- package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/loader/index.js +175 -0
- package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/utils/compose.js +16 -0
- package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/utils/curry.js +20 -0
- package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/utils/deepMerge.js +18 -0
- package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/utils/isObject.js +9 -0
- package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/utils/makeCancelable.js +25 -0
- package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/validators/index.js +49 -0
- package/ui/.output/server/node_modules/@monaco-editor/loader/package.json +51 -0
- package/ui/.output/server/node_modules/@tanstack/virtual-core/dist/esm/index.js +1197 -0
- package/ui/.output/server/node_modules/@tanstack/virtual-core/dist/esm/lazy-measurements.js +34 -0
- package/ui/.output/server/node_modules/@tanstack/virtual-core/dist/esm/utils.js +74 -0
- package/ui/.output/server/node_modules/@tanstack/virtual-core/package.json +56 -0
- package/ui/.output/server/node_modules/@tanstack/vue-virtual/dist/esm/index.js +66 -0
- package/ui/.output/server/node_modules/@tanstack/vue-virtual/package.json +68 -0
- package/ui/.output/server/node_modules/state-local/lib/cjs/state-local.js +195 -0
- package/ui/.output/server/node_modules/state-local/package.json +59 -0
- package/ui/.output/server/package.json +4 -0
- package/ui/package.json +1 -0
- package/ui/.output/public/_nuxt/B93YYUZf.js +0 -1
- package/ui/.output/public/_nuxt/BAs1isOw.js +0 -1
- package/ui/.output/public/_nuxt/BrZL2iQr.js +0 -1
- package/ui/.output/public/_nuxt/Bv6Ws9vz.js +0 -1
- package/ui/.output/public/_nuxt/C2WdrjFS.js +0 -1
- package/ui/.output/public/_nuxt/CVTgFccA.js +0 -2
- package/ui/.output/public/_nuxt/Ceb2855t.js +0 -1
- package/ui/.output/public/_nuxt/Cg55PjEy.js +0 -4
- package/ui/.output/public/_nuxt/D0ZgktSu.js +0 -1
- package/ui/.output/public/_nuxt/DZIUG6ZX.js +0 -1
- package/ui/.output/public/_nuxt/DihqGT4A.js +0 -1
- package/ui/.output/public/_nuxt/MzK2TZ-I.js +0 -16
- package/ui/.output/public/_nuxt/TJXLPQOj.js +0 -1
- package/ui/.output/public/_nuxt/VuiIFQtE.js +0 -1
- package/ui/.output/public/_nuxt/config.C19X1GwO.css +0 -1
- package/ui/.output/public/_nuxt/default.Dw-0Xw5D.css +0 -1
- package/ui/.output/public/_nuxt/logs.PK6CTQHM.css +0 -1
- package/ui/.output/server/chunks/build/Button-CZHl6fpI.mjs.map +0 -1
- package/ui/.output/server/chunks/build/Input-kmqS1oY_.mjs.map +0 -1
- package/ui/.output/server/chunks/build/Modal-DmZs0Ekg.mjs.map +0 -1
- package/ui/.output/server/chunks/build/config-Bkb2wy7R.mjs.map +0 -1
- package/ui/.output/server/chunks/build/config-styles.B4mTchgT.mjs +0 -8
- package/ui/.output/server/chunks/build/config-styles.B4mTchgT.mjs.map +0 -1
- package/ui/.output/server/chunks/build/default-DmD3qBXZ.mjs.map +0 -1
- package/ui/.output/server/chunks/build/default-styles.DmprFUrQ.mjs +0 -8
- package/ui/.output/server/chunks/build/default-styles.DmprFUrQ.mjs.map +0 -1
- package/ui/.output/server/chunks/build/entry-styles.Cg1Sndbr.mjs +0 -11
- package/ui/.output/server/chunks/build/entry-styles.Cg1Sndbr.mjs.map +0 -1
- package/ui/.output/server/chunks/build/index-Dy4Tu7MB.mjs.map +0 -1
- package/ui/.output/server/chunks/build/login-B5YkLJCV.mjs.map +0 -1
- package/ui/.output/server/chunks/build/logs-BvD1Y3HI.mjs.map +0 -1
- package/ui/.output/server/chunks/build/logs-styles.CU5b1wKf.mjs +0 -8
- package/ui/.output/server/chunks/build/logs-styles.CU5b1wKf.mjs.map +0 -1
- package/ui/.output/server/chunks/build/schedule-B2UKsnRW.mjs.map +0 -1
- package/ui/.output/server/chunks/build/tasks-DBH3Z6lg.mjs.map +0 -1
- package/ui/.output/server/chunks/build/useApi-Bqajqsuz.mjs.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_ as F,d as K,u as Q,s as X}from"./6wLLp9Nc.js";import{R as o,j as d,g as _,F as A,Y as k,a4 as p,B as x,E as g,Z as O,l as j,i as N,m as ee,c as m,f as i,A as ae,a6 as W,aa as le,a9 as v,p as w}from"./CnXdKLRd.js";import{a as ne}from"./mHp9eItY.js";import{_ as te}from"./DlAUqK2U.js";const u=ae(m.ui.strategy,m.ui.select,X),ie=ee({components:{UIcon:F},inheritAttrs:!1,props:{modelValue:{type:[String,Number,Object],default:""},id:{type:String,default:null},name:{type:String,default:null},placeholder:{type:String,default:null},required:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},icon:{type:String,default:null},loadingIcon:{type:String,default:()=>u.default.loadingIcon},leadingIcon:{type:String,default:null},trailingIcon:{type:String,default:()=>u.default.trailingIcon},trailing:{type:Boolean,default:!1},leading:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},padded:{type:Boolean,default:!0},options:{type:Array,default:()=>[]},size:{type:String,default:null,validator(e){return Object.keys(u.size).includes(e)}},color:{type:String,default:()=>u.default.color,validator(e){return[...m.ui.colors,...Object.keys(u.color)].includes(e)}},variant:{type:String,default:()=>u.default.variant,validator(e){return[...Object.keys(u.variant),...Object.values(u.color).flatMap(r=>Object.keys(r))].includes(e)}},optionAttribute:{type:String,default:"label"},valueAttribute:{type:String,default:"value"},selectClass:{type:String,default:null},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},emits:["update:modelValue","change"],setup(e,{emit:r,slots:y}){const{ui:a,attrs:C}=K("select",W(e,"ui"),u,W(e,"class")),{size:z,rounded:f}=Q({ui:a,props:e}),{emitFormChange:n,inputId:c,color:t,size:I,name:q}=ne(e,u),s=i(()=>z.value??I.value),G=l=>{r("update:modelValue",l.target.value)},L=l=>{r("change",l.target.value),n()},M=l=>w(l,e.valueAttribute,""),P=l=>w(l,e.optionAttribute,""),h=l=>["string","number","boolean"].includes(typeof l)?{[e.valueAttribute]:l,[e.optionAttribute]:l}:{...l,[e.valueAttribute]:M(l),[e.optionAttribute]:P(l)},S=i(()=>e.options.map(l=>h(l))),$=i(()=>e.placeholder?[{[e.valueAttribute]:"",[e.optionAttribute]:e.placeholder,disabled:!0},...S.value]:S.value),T=i(()=>{const l=h(e.modelValue),B=$.value.find(H=>H[e.valueAttribute]===l[e.valueAttribute]);return B?B[e.valueAttribute]:""}),U=i(()=>{const l=a.value.color?.[t.value]?.[e.variant]||a.value.variant[e.variant];return le(v(a.value.base,a.value.form,f.value,a.value.size[s.value],e.padded?a.value.padding[s.value]:"p-0",l?.replaceAll("{color}",t.value),(b.value||y.leading)&&a.value.leading.padding[s.value],(V.value||y.trailing)&&a.value.trailing.padding[s.value]),e.placeholder&&!e.modelValue&&a.value.placeholder,e.selectClass)}),b=i(()=>e.icon&&e.leading||e.icon&&!e.trailing||e.loading&&!e.trailing||e.leadingIcon),V=i(()=>e.icon&&e.trailing||e.loading&&e.trailing||e.trailingIcon),E=i(()=>e.loading?e.loadingIcon:e.leadingIcon||e.icon),R=i(()=>e.loading&&!b.value?e.loadingIcon:e.trailingIcon||e.icon),D=i(()=>v(a.value.icon.leading.wrapper,a.value.icon.leading.pointer,a.value.icon.leading.padding[s.value])),J=i(()=>v(a.value.icon.base,t.value&&m.ui.colors.includes(t.value)&&a.value.icon.color.replaceAll("{color}",t.value),a.value.icon.size[s.value],e.loading&&a.value.icon.loading)),Y=i(()=>v(a.value.icon.trailing.wrapper,a.value.icon.trailing.pointer,a.value.icon.trailing.padding[s.value])),Z=i(()=>v(a.value.icon.base,t.value&&m.ui.colors.includes(t.value)&&a.value.icon.color.replaceAll("{color}",t.value),a.value.icon.size[s.value],e.loading&&!b.value&&a.value.icon.loading));return{ui:a,attrs:C,name:q,inputId:c,normalizedOptionsWithPlaceholder:$,normalizedValue:T,isLeading:b,isTrailing:V,selectClass:U,leadingIconName:E,leadingIconClass:J,leadingWrapperIconClass:D,trailingIconName:R,trailingIconClass:Z,trailingWrapperIconClass:Y,onInput:G,onChange:L}}}),ue=["id","name","value","required","disabled"],re=["value","label"],oe=["value","selected","disabled","textContent"],de=["value","selected","disabled","textContent"];function se(e,r,y,a,C,z){const f=F;return o(),d("div",{class:g(e.ui.wrapper)},[_("select",x({id:e.inputId,name:e.name,value:e.modelValue,required:e.required,disabled:e.disabled,class:e.selectClass},e.attrs,{onInput:r[0]||(r[0]=(...n)=>e.onInput&&e.onInput(...n)),onChange:r[1]||(r[1]=(...n)=>e.onChange&&e.onChange(...n))}),[(o(!0),d(A,null,k(e.normalizedOptionsWithPlaceholder,(n,c)=>(o(),d(A,null,[n.children?(o(),d("optgroup",{key:`${n[e.valueAttribute]}-optgroup-${c}`,value:n[e.valueAttribute],label:n[e.optionAttribute]},[(o(!0),d(A,null,k(n.children,(t,I)=>(o(),d("option",{key:`${t[e.valueAttribute]}-${c}-${I}`,value:t[e.valueAttribute],selected:t[e.valueAttribute]===e.normalizedValue,disabled:t.disabled,textContent:p(t[e.optionAttribute])},null,8,oe))),128))],8,re)):(o(),d("option",{key:`${n[e.valueAttribute]}-${c}`,value:n[e.valueAttribute],selected:n[e.valueAttribute]===e.normalizedValue,disabled:n.disabled,textContent:p(n[e.optionAttribute])},null,8,de))],64))),256))],16,ue),e.isLeading&&e.leadingIconName||e.$slots.leading?(o(),d("span",{key:0,class:g(e.leadingWrapperIconClass)},[O(e.$slots,"leading",{disabled:e.disabled,loading:e.loading},()=>[j(f,{name:e.leadingIconName,class:g(e.leadingIconClass)},null,8,["name","class"])],!0)],2)):N("",!0),e.isTrailing&&e.trailingIconName||e.$slots.trailing?(o(),d("span",{key:1,class:g(e.trailingWrapperIconClass)},[O(e.$slots,"trailing",{disabled:e.disabled,loading:e.loading},()=>[j(f,{name:e.trailingIconName,class:g(e.trailingIconClass),"aria-hidden":"true"},null,8,["name","class"])],!0)],2)):N("",!0)],2)}const fe=te(ie,[["render",se],["__scopeId","data-v-cbc9516f"]]);export{fe as _};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.config-page[data-v-bc9f5760]{display:flex;flex-direction:column}.agent-block[data-v-bc9f5760]{background:rgb(var(--color-gray-50)/.5)}:root.dark .agent-block[data-v-bc9f5760]{background:rgb(var(--color-gray-900)/.35)}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.app-shell[data-v-7155b15d]{background:var(--ui-bg,#f8f9fb);display:grid;grid-template-columns:220px 1fr;height:100vh;overflow:hidden}.sidebar[data-v-7155b15d]{background:#0f172a;color:#e2e8f0;gap:1.25rem;overflow-y:auto;padding:1.25rem .75rem}.brand[data-v-7155b15d],.sidebar[data-v-7155b15d]{display:flex;flex-direction:column}.brand[data-v-7155b15d]{padding:0 .5rem}.brand-mark[data-v-7155b15d]{font-size:1.25rem;font-weight:700;letter-spacing:.02em}.brand-sub[data-v-7155b15d]{color:#94a3b8;font-size:.75rem}nav[data-v-7155b15d]{display:flex;flex-direction:column;gap:.125rem}.nav-link[data-v-7155b15d]{align-items:center;border-radius:.375rem;color:#cbd5e1;display:flex;font-size:.92rem;gap:.6rem;padding:.55rem .75rem;text-decoration:none}.nav-link[data-v-7155b15d]:hover{background:#ffffff0d;color:#fff}.nav-link--active[data-v-7155b15d]{background:#3b82f62e;color:#fff}.nav-icon[data-v-7155b15d]{font-size:.9rem;opacity:.85;text-align:center;width:1.1rem}.main[data-v-7155b15d]{display:flex;flex-direction:column;min-height:0;min-width:0;overflow:hidden}.topbar[data-v-7155b15d]{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;flex-shrink:0;justify-content:space-between;padding:.75rem 1.25rem}.cwd[data-v-7155b15d]{align-items:baseline;display:flex;gap:.5rem;min-width:0}.cwd-label[data-v-7155b15d]{color:#6b7280;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.cwd-value[data-v-7155b15d]{color:#111827;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;max-width:60vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content[data-v-7155b15d]{flex:1;min-height:0;overflow-y:auto;padding:1.5rem}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.editor-container[data-v-ad1d8ba7]{overflow:hidden}.editor-container[data-v-ad1d8ba7],.editor-placeholder[data-v-ad1d8ba7]{border:1px solid #e5e7eb;border-radius:.375rem;height:520px}.editor-placeholder[data-v-ad1d8ba7]{align-items:center;color:#9ca3af;display:flex;font-size:.875rem;justify-content:center}.sample-select-menu[data-v-ad1d8ba7]{max-width:240px;min-width:200px}.hook-panel[data-v-ad1d8ba7]{border:1px solid #e5e7eb;border-radius:.375rem;overflow:hidden}.hook-panel-summary[data-v-ad1d8ba7]{align-items:center;background:#f9fafb;cursor:pointer;display:flex;font-size:.875rem;list-style:none;padding:.5rem .75rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}.hook-panel-summary[data-v-ad1d8ba7]:hover{background:#f3f4f6}.hook-panel-summary[data-v-ad1d8ba7]::-webkit-details-marker,.hook-panel-summary[data-v-ad1d8ba7]::marker{display:none}.hook-panel-summary[data-v-ad1d8ba7]:before{color:#6b7280;content:"▸";font-size:.75rem;margin-right:.5rem}details[open]>.hook-panel-summary[data-v-ad1d8ba7]:before{content:"▾"}.hook-panel-body[data-v-ad1d8ba7]{border-top:1px solid #e5e7eb;padding:.75rem}.mock-json[data-v-ad1d8ba7]{background:#f9fafb;border:1px solid #d1d5db;border-radius:.375rem;color:#111827;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;line-height:1.5;padding:.5rem;resize:vertical;width:100%}.mock-json[data-v-ad1d8ba7]:focus{outline:2px solid #3b82f6;outline-offset:1px}.log-output[data-v-ad1d8ba7]{background:#0f172a;border-radius:.375rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;max-height:320px;overflow-y:auto;padding:.75rem}.log-line[data-v-ad1d8ba7]{color:#e2e8f0;line-height:1.6;white-space:pre-wrap;word-break:break-all}.modal-loading[data-v-ad1d8ba7]{align-items:center;display:flex;flex-direction:column;gap:.75rem;padding:2rem 0}.modal-spinner[data-v-ad1d8ba7]{animation:modal-spin-ad1d8ba7 .7s linear infinite;border:2px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:1.75rem;width:1.75rem}@keyframes modal-spin-ad1d8ba7{to{transform:rotate(1turn)}}.hook-panel-highlight[data-v-ad1d8ba7]{animation:hook-highlight-ad1d8ba7 1.2s ease-out}@keyframes hook-highlight-ad1d8ba7{0%{box-shadow:0 0 0 3px #3b82f6}to{box-shadow:0 0 0 3px transparent}}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as q}from"./6wLLp9Nc.js";import{_ as G}from"./CdHqKVo4.js";import{_ as X}from"./BGkU0f28.js";import{_ as Y}from"./D_gcbXK2.js";import{_ as J}from"./Zrl3Utak.js";import{s as K,_ as Q}from"./CYm8nRCj.js";import{_ as W}from"./C1xk3ymy.js";import{_ as Z}from"./BOIhDy_l.js";import{u as ee}from"./G5BjvTWO.js";import{u as te}from"./LCoCV2KL.js";import{m as oe,am as U,M as le,L as se,j as a,l as u,ao as d,w as C,ab as t,X as p,D as ne,R as s,h as ae,i as S,g as l,a4 as i,k as m,f as ie}from"./CnXdKLRd.js";import{_ as re}from"./DlAUqK2U.js";import"./yqBy-NAR.js";import"./Cz9dogwK.js";import"./mHp9eItY.js";const ue={class:"logs-page"},de={class:"flex items-center justify-between gap-3 flex-wrap"},me={class:"text-xs text-gray-500 mt-1"},ce={key:0,class:"ml-2 text-amber-600"},pe={key:1,class:"ml-2 text-gray-500"},fe={key:0},_e={class:"text-xs text-gray-400 mt-0.5"},ge={key:0},ve={key:1},ye={class:"flex items-center gap-2"},xe={class:"controls"},be={class:"autopoll"},he={key:1,class:"meta"},ke={key:0},Se={key:1},we={key:2,class:"empty"},Ve={class:"empty-sub"},Ce={key:3,class:"empty"},Le={key:0,class:"empty-sub"},Te={key:1,class:"empty-sub"},Ue={class:"text-sm text-gray-600"},Ee={class:"flex justify-end gap-2"},Ie=oe({__name:"logs",setup(Ae){const E=ee(),o=p(null),L=ie(()=>o.value?.ttlDays??14),_=p(""),{beginFetch:M,endFetch:$}=te(o),w=p(!1),v=p(""),f=p(""),y=p(1e3),j=[{label:"200",value:200},{label:"500",value:500},{label:"1,000",value:1e3},{label:"5,000",value:5e3},{label:"10,000",value:1e4}],x=p(!0),g=p(!1),b=p(!1),I=p(null);let V=null,h=null;async function k(n={}){const e=M(_);n.explicit&&(w.value=!0);try{const r=new URLSearchParams;r.set("limit",String(y.value)),f.value&&r.set("q",f.value);const T=`/api/logs?${r.toString()}`;o.value=await E(T),e||(_.value=""),n.keepScroll||(await ne(),P())}catch(r){_.value=r instanceof Error?r.message:String(r)}finally{$(e),n.explicit&&(w.value=!1)}}function P(){const n=I.value;n&&(n.scrollTop=n.scrollHeight)}async function R(){b.value=!0;try{await E("/api/logs",{method:"DELETE"}),g.value=!1,await k()}catch(n){_.value=n instanceof Error?n.message:String(n)}finally{b.value=!1}}U(v,n=>{h&&clearTimeout(h),h=setTimeout(()=>{f.value=n},300)}),U([f,y],()=>{k()});function A(){B(),x.value&&(V=K(()=>{typeof document<"u"&&document.visibilityState!=="visible"||k({keepScroll:!0})},5e3))}function B(){V&&(clearInterval(V),V=null)}return U(x,A),le(()=>{k(),A()}),se(()=>{B(),h&&clearTimeout(h)}),(n,e)=>{const r=q,T=G,z=X,D=Y,F=J,H=Q,N=W,O=Z;return s(),a("div",ue,[u(N,null,{header:d(()=>[l("div",de,[l("div",null,[e[8]||(e[8]=l("h1",{class:"text-lg font-semibold"},"Logs",-1)),l("p",me,[l("code",null,i(t(o)?.path||"—"),1),t(o)&&!t(o).exists?(s(),a("span",ce,"not found")):t(o)?(s(),a("span",pe,[m(i(t(o).total.toLocaleString())+" line(s) total",1),t(o).truncated?(s(),a("span",fe,", tailing last "+i(t(o).limit.toLocaleString()),1)):S("",!0)])):S("",!0)]),l("p",_e,[t(L)>0?(s(),a("span",ge,"Auto-pruned: lines older than "+i(t(L))+" day"+i(t(L)===1?"":"s")+" are removed on each run.",1)):(s(),a("span",ve,[...e[7]||(e[7]=[m("Auto-pruning disabled (",-1),l("code",null,"AIDEV_LOG_TTL_DAYS=0",-1),m(").",-1)])]))])]),l("div",ye,[u(r,{color:"gray",variant:"ghost",size:"sm",loading:t(w),disabled:t(w),onClick:e[0]||(e[0]=c=>k({explicit:!0}))},{default:d(()=>[...e[9]||(e[9]=[m(" Refresh ",-1)])]),_:1},8,["loading","disabled"]),u(r,{color:"red",variant:"soft",size:"sm",disabled:!t(o)?.exists||t(o)?.total===0||t(b),onClick:e[1]||(e[1]=c=>g.value=!0)},{default:d(()=>[...e[10]||(e[10]=[m(" Clear log ",-1)])]),_:1},8,["disabled"])])])]),default:d(()=>[t(_)?(s(),ae(T,{key:0,color:"red",variant:"soft",title:t(_),class:"mb-3"},null,8,["title"])):S("",!0),l("div",xe,[u(D,{label:"Search",class:"search-group"},{default:d(()=>[u(z,{modelValue:t(v),"onUpdate:modelValue":e[2]||(e[2]=c=>C(v)?v.value=c:null),placeholder:"Case-insensitive substring filter…",icon:"i-heroicons-magnifying-glass",loading:t(v)!==t(f)},null,8,["modelValue","loading"])]),_:1}),u(D,{label:"Tail lines",class:"tail-group"},{default:d(()=>[u(F,{modelValue:t(y),"onUpdate:modelValue":e[3]||(e[3]=c=>C(y)?y.value=c:null),modelModifiers:{number:!0},options:j},null,8,["modelValue"])]),_:1}),l("div",be,[u(H,{modelValue:t(x),"onUpdate:modelValue":e[4]||(e[4]=c=>C(x)?x.value=c:null),label:"Auto-refresh (5s)"},null,8,["modelValue"])])]),t(o)?(s(),a("div",he,[t(f)?(s(),a("span",ke," Showing "+i(t(o).shown.toLocaleString())+" match(es) in last "+i(Math.min(t(o).total,t(o).limit).toLocaleString())+" line(s) ",1)):(s(),a("span",Se," Showing last "+i(t(o).shown.toLocaleString())+" line(s) ",1))])):S("",!0),t(o)&&!t(o).exists?(s(),a("div",we,[e[13]||(e[13]=l("p",{class:"empty-title"},"Log file does not exist yet",-1)),l("p",Ve,[e[11]||(e[11]=m(" aidev creates it on first run. Once ",-1)),l("code",null,i(t(o).path),1),e[12]||(e[12]=m(" exists, lines will appear here. ",-1))])])):t(o)&&t(o).lines.length===0?(s(),a("div",Ce,[e[14]||(e[14]=l("p",{class:"empty-title"},"No matching lines",-1)),t(f)?(s(),a("p",Le," Nothing in the last "+i(t(o).limit.toLocaleString())+" lines matches “"+i(t(f))+"”. ",1)):(s(),a("p",Te," The log file is empty. "))])):t(o)?(s(),a("pre",{key:4,ref_key:"viewer",ref:I,class:"viewer"},[l("code",null,i(t(o).lines.join(`
|
|
2
|
+
`)),1)],512)):S("",!0)]),_:1}),u(O,{modelValue:t(g),"onUpdate:modelValue":e[6]||(e[6]=c=>C(g)?g.value=c:null)},{default:d(()=>[u(N,null,{header:d(()=>[...e[15]||(e[15]=[l("h3",{class:"text-base font-semibold"},"Clear log file?",-1)])]),footer:d(()=>[l("div",Ee,[u(r,{variant:"ghost",color:"gray",disabled:t(b),onClick:e[5]||(e[5]=c=>g.value=!1)},{default:d(()=>[...e[18]||(e[18]=[m(" Cancel ",-1)])]),_:1},8,["disabled"]),u(r,{color:"red",loading:t(b),onClick:R},{default:d(()=>[...e[19]||(e[19]=[m(" Clear log ",-1)])]),_:1},8,["loading"])])]),default:d(()=>[l("p",Ue,[e[16]||(e[16]=m(" This truncates ",-1)),l("code",null,i(t(o)?.path),1),e[17]||(e[17]=m(" to zero bytes. The file itself stays in place. This cannot be undone. ",-1))])]),_:1})]),_:1},8,["modelValue"])])}}}),Ye=re(Ie,[["__scopeId","data-v-982cf375"]]);export{Ye as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.logs-page[data-v-982cf375]{display:flex;flex-direction:column}.controls[data-v-982cf375]{align-items:end;display:grid;gap:.75rem;grid-template-columns:1fr 12rem auto;margin-bottom:.75rem}.search-group[data-v-982cf375],.tail-group[data-v-982cf375]{min-width:0}.autopoll[data-v-982cf375]{padding-bottom:.45rem;white-space:nowrap}.meta[data-v-982cf375]{color:#6b7280;font-size:.75rem;margin-bottom:.5rem}.viewer[data-v-982cf375]{background:#0f172a;border-radius:.375rem;color:#e2e8f0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;line-height:1.45;margin:0;max-height:65vh;overflow:auto;padding:.75rem 1rem;white-space:pre}.empty[data-v-982cf375]{border:1px dashed #cbd5e1;border-radius:.375rem;color:#475569;padding:1.5rem;text-align:center}.empty-title[data-v-982cf375]{font-weight:600;margin-bottom:.25rem}.empty-sub[data-v-982cf375]{color:#64748b;font-size:.85rem}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a7 as p,v,f,X as F}from"./CnXdKLRd.js";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const h=()=>{};function I(r,i){function o(...t){return new Promise((e,n)=>{Promise.resolve(r(()=>i.apply(this,t),{fn:i,thisArg:this,args:t})).then(e).catch(n)})}return o}function b(r,i={}){let o,t,e=h;const n=u=>{clearTimeout(u),e(),e=h};let m;return u=>{const c=p(r),l=p(i.maxWait);return o&&n(o),c<=0||l!==void 0&&l<=0?(t&&(n(t),t=void 0),Promise.resolve(u())):new Promise((a,d)=>{e=i.rejectOnCancel?d:a,m=u,l&&!t&&(t=setTimeout(()=>{o&&n(o),t=void 0,a(m())},l)),o=setTimeout(()=>{t&&n(t),t=void 0,a(u())},c)})}}function z(r,i=200,o={}){return I(b(i,o),r)}const g=(r,i,o=!0)=>{const t=v("form-events",void 0),e=v("form-group",void 0),n=v("form-inputs",void 0);e&&(!o||r?.legend?e.inputId.value=void 0:r?.id&&(e.inputId.value=r?.id),n&&(n.value[e.name.value]=e.inputId.value));const m=F(!1);function s(a,d){t&&t.emit({type:a,path:d})}function u(){s("blur",e?.name.value),m.value=!0}function c(){s("change",e?.name.value)}const l=z(()=>{(m.value||e?.eagerValidation.value)&&s("input",e?.name.value)},300);return{inputId:f(()=>r?.id??e?.inputId.value),name:f(()=>r?.name??e?.name.value),size:f(()=>{const a=i.size[e?.size.value]?e?.size.value:null;return r?.size??a??i.default?.size}),color:f(()=>e?.error?.value?"red":r?.color),emitFormBlur:u,emitFormInput:l,emitFormChange:c}};export{g as a,h as n,z as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as
|
|
1
|
+
import{_ as R}from"./CdHqKVo4.js";import{_ as x}from"./C1xk3ymy.js";import{m as k,R as d,h as y,ao as b,g as o,H as I,a4 as h,j as v,F as D,E as A,ab as a,i as T,Y as U,f as C,l as m,k as P,am as E,M as N,L as S,X as w,C as F}from"./CnXdKLRd.js";import{_ as $}from"./DlAUqK2U.js";import{a as M}from"./6wLLp9Nc.js";import{u as V}from"./G5BjvTWO.js";import{u as j}from"./LCoCV2KL.js";import"./yqBy-NAR.js";import"./Cz9dogwK.js";const z={class:"stat-body"},L={class:"stat-label"},q={key:0,class:"stat-skeleton"},O={key:1,class:"stat-value"},H=k({__name:"DashboardStatCard",props:{label:{},value:{},loading:{type:Boolean},color:{}},setup(s){return(u,e)=>{const t=x;return d(),y(t,{class:"stat-card"},{default:b(()=>[o("div",{class:"stat-accent",style:I(s.color?`background: ${s.color}`:void 0)},null,4),o("div",z,[o("p",L,h(s.label),1),s.loading?(d(),v("div",q)):(d(),v("p",O,h(s.value??"—"),1))])]),_:1})}}}),W=$(H,[["__scopeId","data-v-3ec41778"]]),X={class:"flex items-center justify-between gap-3 flex-wrap"},Y={class:"period-tabs"},G=["onClick"],J={class:"executed-body"},K={key:0,class:"executed-skeleton"},Q={class:"executed-value"},Z=k({__name:"DashboardExecutedCard",props:{data:{},period:{},loading:{type:Boolean}},emits:["update:period"],setup(s,{emit:u}){const e=s,t=u,g=C(()=>e.period),p=[{value:"week",label:"Week"},{value:"month",label:"Month"},{value:"3months",label:"3 Months"}],f=C(()=>{if(!e.data)return"";const{changeAmount:n,changePercent:r,previous:_}=e.data;if(_===0&&r===null)return"N/A vs prior";const l=n>=0?"+":"",i=r!==null?` ${l}${r}%`:"";return`${l}${n}${i} vs prior`}),c=C(()=>!e.data||e.data.changePercent===null?"badge--neutral":e.data.changeAmount>=0?"badge--up":"badge--down");return(n,r)=>{const _=x;return d(),y(_,null,{header:b(()=>[o("div",X,[r[0]||(r[0]=o("h2",{class:"text-sm font-semibold uppercase tracking-wide text-gray-500"},"Executed Tasks",-1)),o("div",Y,[(d(),v(D,null,U(p,l=>o("button",{key:l.value,class:A(["period-tab",{"period-tab--active":a(g)===l.value}]),onClick:i=>t("update:period",l.value)},h(l.label),11,G)),64))])])]),default:b(()=>[o("div",J,[s.loading?(d(),v("div",K)):(d(),v(D,{key:1},[o("span",Q,h(s.data?.current??"—"),1),s.data?(d(),v("span",{key:0,class:A(["badge",a(c)])},h(a(f)),3)):T("",!0)],64))]),r[1]||(r[1]=o("p",{class:"executed-sub"},"tasks updated in this period",-1))]),_:1})}}}),ee=$(Z,[["__scopeId","data-v-4309758c"]]),te={class:"actions"},ae=k({__name:"DashboardRunActions",emits:["run"],setup(s,{emit:u}){const e=u,t=[{value:"open",label:"Open",color:"primary"},{value:"pending",label:"Pending",color:"sky"},{value:"review",label:"Review",color:"amber"},{value:"all",label:"All",color:"gray"}];return(g,p)=>{const f=M,c=x;return d(),y(c,null,{header:b(()=>[...p[0]||(p[0]=[o("h2",{class:"text-sm font-semibold uppercase tracking-wide text-gray-500"},"Run Actions",-1)])]),default:b(()=>[o("div",te,[(d(),v(D,null,U(t,n=>m(f,{key:n.value,size:"md",color:n.color,class:"action-btn",onClick:r=>e("run",n.value)},{default:b(()=>[P(h(n.label),1)]),_:2},1032,["color","onClick"])),64))])]),_:1})}}}),oe=$(ae,[["__scopeId","data-v-03add317"]]);function ne(){const s=V(),u=w("week"),e=w(null),t=w(""),{loading:g,beginFetch:p,endFetch:f}=j(e);let c=null;async function n(){const l=p(t);try{const i=await s("/api/dashboard/stats",{query:{period:u.value}});e.value=i,i.errors?.length?t.value=i.errors.join("; "):l||(t.value="")}catch(i){t.value=i instanceof Error?i.message:String(i)}finally{f(l)}}function r(l){u.value=l}function _(){c&&clearTimeout(c),c=setTimeout(()=>{n().then(_)},6e4)}return E(u,()=>n()),N(()=>{n().then(_)}),S(()=>{c&&clearTimeout(c)}),{period:u,stats:e,loading:g,error:t,setPeriod:r}}const se={class:"dashboard-page"},le={class:"stats-grid"},re={class:"mt-4"},ce={class:"mt-4"},ie=k({__name:"index",setup(s){const{period:u,stats:e,loading:t,error:g,setPeriod:p}=ne();function f(c){F({path:"/run",query:{autorun:c}})}return(c,n)=>{const r=R,_=W,l=ee,i=oe,B=x;return d(),v("div",se,[m(B,null,{header:b(()=>[...n[0]||(n[0]=[o("h1",{class:"text-lg font-semibold"},"Dashboard",-1)])]),default:b(()=>[a(g)?(d(),y(r,{key:0,color:"red",variant:"soft",title:a(g),class:"mb-4"},null,8,["title"])):T("",!0),o("div",le,[m(_,{label:"Open",value:a(e)?.open??null,loading:a(t),color:"#3b82f6"},null,8,["value","loading"]),m(_,{label:"Pending",value:a(e)?.pending??null,loading:a(t),color:"#0ea5e9"},null,8,["value","loading"]),m(_,{label:"In Review",value:a(e)?.inReview??null,loading:a(t),color:"#f59e0b"},null,8,["value","loading"]),m(_,{label:"All-Time Done",value:a(e)?.allTimeDone??null,loading:a(t),color:"#10b981"},null,8,["value","loading"])]),o("div",re,[m(l,{data:a(e)?.executed??null,period:a(u),loading:a(t),"onUpdate:period":a(p)},null,8,["data","period","loading","onUpdate:period"])]),o("div",ce,[m(i,{onRun:f})])]),_:1})])}}}),he=$(ie,[["__scopeId","data-v-df921e33"]]);export{he as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as a}from"./
|
|
1
|
+
import{_ as a}from"./Cz9dogwK.js";import{_ as i}from"./DlAUqK2U.js";import{ae as u,R as l,j as c,g as e,a4 as r,l as d,ao as p,k as f}from"./CnXdKLRd.js";const m={class:"antialiased bg-white dark:bg-black dark:text-white font-sans grid min-h-screen overflow-hidden place-content-center text-black"},g={class:"max-w-520px text-center z-20"},h=["textContent"],b=["textContent"],x={class:"flex items-center justify-center w-full"},y={__name:"error-404",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},status:{type:Number,default:404},statusText:{type:String,default:"Not Found"},description:{type:String,default:"Sorry, the page you are looking for could not be found."},backHome:{type:String,default:"Go back home"}},setup(t){const n=t;return u({title:`${n.status} - ${n.statusText} | ${n.appName}`,script:[{innerHTML:`!function(){const e=document.createElement("link").relList;if(!(e&&e.supports&&e.supports("modulepreload"))){for(const e of document.querySelectorAll('link[rel="modulepreload"]'))r(e);new MutationObserver(e=>{for(const o of e)if("childList"===o.type)for(const e of o.addedNodes)"LINK"===e.tagName&&"modulepreload"===e.rel&&r(e)}).observe(document,{childList:!0,subtree:!0})}function r(e){if(e.ep)return;e.ep=!0;const r=function(e){const r={};return e.integrity&&(r.integrity=e.integrity),e.referrerPolicy&&(r.referrerPolicy=e.referrerPolicy),"use-credentials"===e.crossOrigin?r.credentials="include":"anonymous"===e.crossOrigin?r.credentials="omit":r.credentials="same-origin",r}(e);fetch(e.href,r)}}();`}],style:[{innerHTML:'*,:after,:before{border-color:var(--un-default-border-color,#e5e7eb);border-style:solid;border-width:0;box-sizing:border-box}:after,:before{--un-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-moz-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}h1{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}h1,p{margin:0}*,:after,:before{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 transparent;--un-ring-shadow:0 0 transparent;--un-shadow-inset: ;--un-shadow:0 0 transparent;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgba(147,197,253,.5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }'}]}),(k,o)=>{const s=a;return l(),c("div",m,[o[0]||(o[0]=e("div",{class:"fixed left-0 right-0 spotlight z-10"},null,-1)),e("div",g,[e("h1",{class:"font-medium mb-8 sm:text-10xl text-8xl",textContent:r(t.status)},null,8,h),e("p",{class:"font-light leading-tight mb-16 px-8 sm:px-0 sm:text-4xl text-xl",textContent:r(t.description)},null,8,b),e("div",x,[d(s,{to:"/",class:"cursor-pointer gradient-border px-4 py-2 sm:px-6 sm:py-3 sm:text-xl text-md"},{default:p(()=>[f(r(t.backHome),1)]),_:1})])])])}}},z=i(y,[["__scopeId","data-v-1bd9e11a"]]);export{z as default};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{ac as w,f as S,r as k,y as B,m as x,ag as C,am as T,t as I,b as R,I as P}from"./CnXdKLRd.js";const E=Object.freeze({left:0,top:0,width:16,height:16}),j=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),N=Object.freeze({...E,...j});Object.freeze({...N,body:"",hidden:!1});function L(e,n){let s=e.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const r in n)s+=" "+r+'="'+n[r]+'"';return'<svg xmlns="http://www.w3.org/2000/svg"'+s+">"+e+"</svg>"}const M=/(-?[0-9.]*[0-9]+[0-9.]*)/g,V=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function v(e,n,s){if(n===1)return e;if(s=s||100,typeof e=="number")return Math.ceil(e*n*s)/s;if(typeof e!="string")return e;const r=e.split(M);if(r===null||!r.length)return e;const t=[];let o=r.shift(),i=V.test(o);for(;;){if(i){const c=parseFloat(o);isNaN(c)?t.push(o):t.push(Math.ceil(c*n*s)/s)}else t.push(o);if(o=r.shift(),o===void 0)return t.join("");i=!i}}function W(e){return e.replace(/"/g,"'").replace(/%/g,"%25").replace(/#/g,"%23").replace(/</g,"%3C").replace(/>/g,"%3E").replace(/\s+/g," ")}function _(e){return"data:image/svg+xml,"+W(e)}function D(e){return'url("'+_(e)+'")'}function G(e){const[n,s,r,t]=e;if(r!==t){const o=Math.max(r,t);return[n-(o-r)/2,s-(o-t)/2,o,o]}return e}const H=Object.freeze({width:null,height:null}),U=Object.freeze({...H,...j});function K(e,n="defs"){let s="";const r=e.indexOf("<"+n);for(;r>=0;){const t=e.indexOf(">",r),o=e.indexOf("</"+n);if(t===-1||o===-1)break;const i=e.indexOf(">",o);if(i===-1)break;s+=e.slice(t+1,o).trim(),e=e.slice(0,r).trim()+e.slice(i+1)}return{defs:s,content:e}}function J(e,n){return e?"<defs>"+e+"</defs>"+n:n}function Q(e,n,s){const r=K(e);return J(r.defs,n+r.content+s)}const X=e=>e==="unset"||e==="undefined"||e==="none";function Y(e,n){const s={...N,...e},r={...U,...n},t={left:s.left,top:s.top,width:s.width,height:s.height};let o=s.body;[s,r].forEach(g=>{const f=[],A=g.hFlip,O=g.vFlip;let m=g.rotate;A?O?m+=2:(f.push("translate("+(t.width+t.left).toString()+" "+(0-t.top).toString()+")"),f.push("scale(-1 1)"),t.top=t.left=0):O&&(f.push("translate("+(0-t.left).toString()+" "+(t.height+t.top).toString()+")"),f.push("scale(1 -1)"),t.top=t.left=0);let d;switch(m<0&&(m-=Math.floor(m/4)*4),m=m%4,m){case 1:d=t.height/2+t.top,f.unshift("rotate(90 "+d.toString()+" "+d.toString()+")");break;case 2:f.unshift("rotate(180 "+(t.width/2+t.left).toString()+" "+(t.height/2+t.top).toString()+")");break;case 3:d=t.width/2+t.left,f.unshift("rotate(-90 "+d.toString()+" "+d.toString()+")");break}m%2===1&&(t.left!==t.top&&(d=t.left,t.left=t.top,t.top=d),t.width!==t.height&&(d=t.width,t.width=t.height,t.height=d)),f.length&&(o=Q(o,'<g transform="'+f.join(" ")+'">',"</g>"))});const i=r.width,c=r.height,a=t.width,l=t.height;let u,h;i===null?(h=c===null?"1em":c==="auto"?l:c,u=v(h,a/l)):(u=i==="auto"?a:i,h=c===null?v(u,l/a):c==="auto"?l:c);const y={},z=(g,f)=>{X(f)||(y[g]=f.toString())};z("width",u),z("height",h);const $=[t.left,t.top,a,l];return y.viewBox=$.join(" "),{attributes:y,viewBox:$,body:o}}function Z(e){const n={display:"inline-block",width:"1em",height:"1em"},s=e.varName;switch(e.pseudoSelector&&(n.content="''"),e.mode){case"background":s&&(n["background-image"]="var(--"+s+")"),n["background-repeat"]="no-repeat",n["background-size"]="100% 100%";break;case"mask":n["background-color"]="currentColor",s&&(n["mask-image"]=n["-webkit-mask-image"]="var(--"+s+")"),n["mask-repeat"]=n["-webkit-mask-repeat"]="no-repeat",n["mask-size"]=n["-webkit-mask-size"]="100% 100%";break}return n}function ee(e,n){const s={},r=n.varName,t=Y(e);let o=t.viewBox;o[2]!==o[3]&&(n.forceSquare?o=G(o):s.width=v("1em",o[2]/o[3]));const i=L(t.body.replace(/currentColor/g,n.color||"black"),{viewBox:`${o[0]} ${o[1]} ${o[2]} ${o[3]}`,width:`${o[2]}`,height:`${o[3]}`}),c=D(i);if(r)s["--"+r]=c;else switch(n.mode){case"background":s["background-image"]=c;break;case"mask":s["mask-image"]=s["-webkit-mask-image"]=c;break}return s}const b={selectorStart:{compressed:"{",compact:" {",expanded:" {"},selectorEnd:{compressed:"}",compact:`; }
|
|
2
2
|
`,expanded:`;
|
|
3
3
|
}
|
|
4
4
|
`},rule:{compressed:"{key}:",compact:" {key}: ",expanded:`
|
|
5
5
|
{key}: `}};function te(e,n="expanded"){const s=[];for(let r=0;r<e.length;r++){const{selector:t,rules:o}=e[r];let c=(t instanceof Array?t.join(n==="compressed"?",":", "):t)+b.selectorStart[n],a=!0;for(const l in o)a||(c+=";"),c+=b.rule[n].replace("{key}",l)+o[l],a=!1;c+=b.selectorEnd[n],s.push(c)}return s.join(n==="compressed"?"":`
|
|
6
|
-
`)}function ne(e,n={}){const s=n.customise?n.customise(e.body):e.body,r=n.mode||(n.color||!s.includes("currentColor")?"background":"mask");let t=n.varName;t===void 0&&r==="mask"&&(t="svg");const o={...n,mode:r,varName:t};r==="background"&&delete o.varName;const i={...n.rules,...Z(o),...ee({...N,...e,body:s},o)},c=n.iconSelector||".icon";return te([{selector:c,rules:i}],o.format)}async function se(e,n){if(!e)return null;const s=k(e);return s||(await B(e).catch(()=>(console.warn(`[Icon] failed to load icon \`${e}\``),null)),k(e))}function
|
|
6
|
+
`)}function ne(e,n={}){const s=n.customise?n.customise(e.body):e.body,r=n.mode||(n.color||!s.includes("currentColor")?"background":"mask");let t=n.varName;t===void 0&&r==="mask"&&(t="svg");const o={...n,mode:r,varName:t};r==="background"&&delete o.varName;const i={...n.rules,...Z(o),...ee({...N,...e,body:s},o)},c=n.iconSelector||".icon";return te([{selector:c,rules:i}],o.format)}async function se(e,n){if(!e)return null;const s=k(e);return s||(await B(e).catch(()=>(console.warn(`[Icon] failed to load icon \`${e}\``),null)),k(e))}function q(e){const n=w().icon,s=(n.collections||[]).sort((r,t)=>t.length-r.length);return S(()=>{const r=e(),t=r.startsWith(n.cssSelectorPrefix)?r.slice(n.cssSelectorPrefix.length):r,o=n.aliases?.[t]||t;if(!o.includes(":")){const i=s.find(c=>o.startsWith(c+"-"));return i?i+":"+o.slice(i.length+1):o}return o})}function F(e,n){if(e!==!1)return e===!0||e===null?n:e}let p;function oe(e){return e.replace(/([^\w-])/g,"\\$1")}function re(){if(p)return p;p=new Set;const e=s=>{if(s=s.replace(/^:where\((.*)\)$/,"$1").trim(),s.startsWith("."))return s},n=s=>{if(s?.length)for(const r of s){r?.cssRules&&n(r.cssRules);const t=r?.selectorText;if(typeof t=="string"){const o=e(t);o&&p.add(o)}}};if(typeof document<"u")for(const s of document.styleSheets)try{const r=s.cssRules||s.rules;n(r)}catch{}return p}const ce=x({name:"NuxtIconCss",props:{name:{type:String,required:!0},customize:{type:[Function,Boolean,null],default:null,required:!1}},setup(e){const n=C(),s=w().icon,r=S(()=>e.name?s.cssSelectorPrefix+e.name:"");function t(c){if(!c)return;const a=k(c);if(a)return a;const l=n.payload?.data?.[c];if(l)return R(c,l),l}const o=S(()=>"."+oe(r.value));function i(c,a=!0){let l=o.value;s.cssWherePseudo&&(l=`:where(${l})`);const u=ne(c,{iconSelector:l,format:"compressed",customise:F(e.customize,s.customize)});return s.cssLayer&&a?`@layer ${s.cssLayer} { ${u} }`:u}{const c=re();async function a(l){if(c.has(o.value)||typeof document>"u")return;const u=document.createElement("style");u.textContent=i(l);const h=document.head.querySelector('style, link[rel="stylesheet"]');h?document.head.insertBefore(u,h):document.head.appendChild(u),c.add(o.value)}T(()=>e.name,()=>{if(c.has(o.value))return;const l=t(e.name);l?a(l):se(e.name).then(u=>{u&&a(u)}).catch(()=>null)},{immediate:!0})}return()=>I("span",{class:["iconify",r.value]})}}),ie=x({name:"NuxtIconSvg",props:{name:{type:String,required:!0},customize:{type:[Function,Boolean,null],default:null,required:!1}},setup(e,{slots:n}){const s=C(),r=w().icon,t=q(()=>e.name),o="i-"+t.value;if(t.value){const i=s.payload.data[o];i&&R(t.value,i)}return()=>I(P,{icon:t.value,ssr:!0,customise:F(e.customize,r.customize)},n)}}),ae=x({name:"NuxtIcon",props:{name:{type:String,required:!0},mode:{type:String,required:!1,default:null},size:{type:[Number,String],required:!1,default:null},customize:{type:[Function,Boolean,null],default:null,required:!1}},setup(e,{slots:n}){const s=C(),r=w().icon,t=q(()=>e.name),o=S(()=>s.vueApp?.component(t.value)||((e.mode||r.mode)==="svg"?ie:ce)),i=S(()=>{const c=e.size||r.size;return c?{fontSize:Number.isNaN(+c)?c:c+"px"}:null});return()=>I(o.value,{...r.attrs,name:t.value,class:r.class,style:i.value,customize:e.customize},n)}});export{ae as default};
|
|
@@ -0,0 +1,365 @@
|
|
|
1
|
+
const HOOK_NAMES = [
|
|
2
|
+
"beforeRun",
|
|
3
|
+
"afterRun",
|
|
4
|
+
"beforeEachTask",
|
|
5
|
+
"afterEachTask",
|
|
6
|
+
"beforeResolveConflicts",
|
|
7
|
+
"afterResolveConflicts",
|
|
8
|
+
"beforeNonCodeTask",
|
|
9
|
+
"afterNonCodeTask",
|
|
10
|
+
"beforeThinkingTask",
|
|
11
|
+
"afterThinkingTask",
|
|
12
|
+
"beforeReviewTask",
|
|
13
|
+
"afterReviewTask",
|
|
14
|
+
"beforeComment",
|
|
15
|
+
"afterComment"
|
|
16
|
+
];
|
|
17
|
+
function generateFullHooksFile() {
|
|
18
|
+
return `// aidev hooks \u2014 customize the AI task automation pipeline
|
|
19
|
+
//
|
|
20
|
+
// Each export below is an async (context, vm) hook. Return a new/updated context object to
|
|
21
|
+
// change prompts, subtasks, etc.; return nothing to keep the incoming context. Throw to abort
|
|
22
|
+
// the current step (whole run, single task, conflict resolution, etc., depending on the hook).
|
|
23
|
+
//
|
|
24
|
+
// vm: run AI (first available agent), postComment, updateStatus, getComments, log.info/warn/error
|
|
25
|
+
//
|
|
26
|
+
// .ts files are loaded via jiti \u2014 no TypeScript compiler or toolchain needed.
|
|
27
|
+
|
|
28
|
+
// \u2500\u2500\u2500 Context types (mirror aidev's internal shapes \u2014 tweak here for editor hints) \u2500
|
|
29
|
+
|
|
30
|
+
interface RunContext {
|
|
31
|
+
config: Record<string, unknown>;
|
|
32
|
+
filter: string;
|
|
33
|
+
taskCount: number;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
interface TaskContext {
|
|
37
|
+
task: { id: string; name: string; description: string; status: string; url: string; tags: string[] };
|
|
38
|
+
config: Record<string, unknown>;
|
|
39
|
+
branchName: string;
|
|
40
|
+
prompt: string;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
interface ResolveConflictsContext {
|
|
44
|
+
task: { id: string; name: string; description: string; status: string; url: string; tags: string[] };
|
|
45
|
+
config: Record<string, unknown>;
|
|
46
|
+
branchName: string;
|
|
47
|
+
conflictFiles: string[];
|
|
48
|
+
prompt: string;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
interface NonCodeTaskContext {
|
|
52
|
+
task: { id: string; name: string; description: string; status: string; url: string; tags: string[] };
|
|
53
|
+
config: Record<string, unknown>;
|
|
54
|
+
prompt: string;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
interface ThinkingTaskContext {
|
|
58
|
+
task: { id: string; name: string; description: string; status: string; url: string; tags: string[] };
|
|
59
|
+
config: Record<string, unknown>;
|
|
60
|
+
branchName: string;
|
|
61
|
+
subtasks: Array<{ id: number; title: string; description: string; status: string }>;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
interface ReviewTaskContext {
|
|
65
|
+
task: { id: string; name: string; description: string; status: string; url: string; tags: string[] };
|
|
66
|
+
config: Record<string, unknown>;
|
|
67
|
+
branchName: string;
|
|
68
|
+
threads: Array<{ id: string; body: string; resolved: boolean }>;
|
|
69
|
+
prompt: string;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
interface CommentContext {
|
|
73
|
+
task: { id: string; name: string; description: string; status: string; url: string; tags: string[] };
|
|
74
|
+
config: Record<string, unknown>;
|
|
75
|
+
/** The comment text about to be (or already) posted */
|
|
76
|
+
text: string;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
interface HookVM {
|
|
80
|
+
runAI(prompt: string): Promise<{ success: boolean; output: string; error: string }>;
|
|
81
|
+
postComment(taskId: string, text: string): Promise<void>;
|
|
82
|
+
updateStatus(taskId: string, status: string): Promise<void>;
|
|
83
|
+
getComments(taskId: string): Promise<Array<{ id: string; text: string; author: string }>>;
|
|
84
|
+
log: { info(msg: string): void; warn(msg: string): void; error(msg: string): void };
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
// \u2500\u2500\u2500 Hooks (fill in \u2014 ask an AI: "implement beforeEachTask to append X to the prompt") \u2500
|
|
88
|
+
|
|
89
|
+
/** Once before any task. AI idea: log counts, or throw if CI env var is missing. */
|
|
90
|
+
export async function beforeRun(_context: RunContext, _vm: HookVM): Promise<RunContext | void> {
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
/** After all tasks in this run. AI idea: post a summary comment or call an external webhook. */
|
|
95
|
+
export async function afterRun(_context: RunContext & { processed: number; skipped: number }, _vm: HookVM): Promise<void> {
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
/** Before each code task AI run. AI idea: append coding standards or repo-specific rules to context.prompt. */
|
|
100
|
+
export async function beforeEachTask(_context: TaskContext, _vm: HookVM): Promise<TaskContext | void> {
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/** After a code task completes the success path (push + review). */
|
|
105
|
+
export async function afterEachTask(_context: TaskContext & { success: boolean }, _vm: HookVM): Promise<void> {
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
/** Before AI-driven merge conflict resolution. AI idea: tighten context.prompt for your stack. */
|
|
110
|
+
export async function beforeResolveConflicts(_context: ResolveConflictsContext, _vm: HookVM): Promise<ResolveConflictsContext | void> {
|
|
111
|
+
return;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
/** After conflict resolution; context.resolved is false when all runners failed. */
|
|
115
|
+
export async function afterResolveConflicts(_context: ResolveConflictsContext & { resolved: boolean }, _vm: HookVM): Promise<void> {
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
/** Before non-code task AI run. AI idea: format context.prompt for ticket-style replies. */
|
|
120
|
+
export async function beforeNonCodeTask(_context: NonCodeTaskContext, _vm: HookVM): Promise<NonCodeTaskContext | void> {
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
/** After non-code task; context.output is the agent response text posted to the ticket. */
|
|
125
|
+
export async function afterNonCodeTask(_context: NonCodeTaskContext & { success: boolean; output: string }, _vm: HookVM): Promise<void> {
|
|
126
|
+
return;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
/** After the plan exists, before subtasks run. AI idea: rewrite subtask descriptions for clarity. */
|
|
130
|
+
export async function beforeThinkingTask(_context: ThinkingTaskContext, _vm: HookVM): Promise<ThinkingTaskContext | void> {
|
|
131
|
+
return;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
/** After all thinking-task subtasks complete. AI idea: notify or archive artifacts. */
|
|
135
|
+
export async function afterThinkingTask(_context: ThinkingTaskContext & { success: boolean }, _vm: HookVM): Promise<void> {
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
/** Before a review task's unresolved threads are processed. AI idea: filter or prioritise threads. */
|
|
140
|
+
export async function beforeReviewTask(_context: ReviewTaskContext, _vm: HookVM): Promise<ReviewTaskContext | void> {
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
/** After a review task's threads have been processed. */
|
|
145
|
+
export async function afterReviewTask(_context: ReviewTaskContext & { success: boolean; resolvedCount: number }, _vm: HookVM): Promise<void> {
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
/** Before a comment is posted. Return modified context to change the text; throw to suppress. */
|
|
150
|
+
export async function beforeComment(_context: CommentContext, _vm: HookVM): Promise<CommentContext | void> {
|
|
151
|
+
return;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
/** After a comment has been posted. AI idea: append a signature or log the event. */
|
|
155
|
+
export async function afterComment(_context: CommentContext, _vm: HookVM): Promise<void> {
|
|
156
|
+
return;
|
|
157
|
+
}
|
|
158
|
+
`;
|
|
159
|
+
}
|
|
160
|
+
const HOOK_STUBS = {
|
|
161
|
+
beforeRun: {
|
|
162
|
+
namedExport: `/** Once before any task. AI idea: log counts, or throw if CI env var is missing. */
|
|
163
|
+
export async function beforeRun(_context: RunContext, _vm: HookVM): Promise<RunContext | void> {
|
|
164
|
+
return;
|
|
165
|
+
}
|
|
166
|
+
`,
|
|
167
|
+
objectMethod: ` /** Once before any task. AI idea: log counts, or throw if CI env var is missing. */
|
|
168
|
+
async beforeRun(_context: RunContext, _vm: HookVM): Promise<RunContext | void> {
|
|
169
|
+
return;
|
|
170
|
+
},
|
|
171
|
+
`
|
|
172
|
+
},
|
|
173
|
+
afterRun: {
|
|
174
|
+
namedExport: `/** After all tasks in this run. AI idea: post a summary comment or call an external webhook. */
|
|
175
|
+
export async function afterRun(_context: RunContext & { processed: number; skipped: number }, _vm: HookVM): Promise<void> {
|
|
176
|
+
return;
|
|
177
|
+
}
|
|
178
|
+
`,
|
|
179
|
+
objectMethod: ` /** After all tasks in this run. AI idea: post a summary comment or call an external webhook. */
|
|
180
|
+
async afterRun(_context: RunContext & { processed: number; skipped: number }, _vm: HookVM): Promise<void> {
|
|
181
|
+
return;
|
|
182
|
+
},
|
|
183
|
+
`
|
|
184
|
+
},
|
|
185
|
+
beforeEachTask: {
|
|
186
|
+
namedExport: `/** Before each code task AI run. AI idea: append coding standards or repo-specific rules to context.prompt. */
|
|
187
|
+
export async function beforeEachTask(_context: TaskContext, _vm: HookVM): Promise<TaskContext | void> {
|
|
188
|
+
return;
|
|
189
|
+
}
|
|
190
|
+
`,
|
|
191
|
+
objectMethod: ` /** Before each code task AI run. AI idea: append coding standards or repo-specific rules to context.prompt. */
|
|
192
|
+
async beforeEachTask(_context: TaskContext, _vm: HookVM): Promise<TaskContext | void> {
|
|
193
|
+
return;
|
|
194
|
+
},
|
|
195
|
+
`
|
|
196
|
+
},
|
|
197
|
+
afterEachTask: {
|
|
198
|
+
namedExport: `/** After a code task completes the success path (push + review). */
|
|
199
|
+
export async function afterEachTask(_context: TaskContext & { success: boolean }, _vm: HookVM): Promise<void> {
|
|
200
|
+
return;
|
|
201
|
+
}
|
|
202
|
+
`,
|
|
203
|
+
objectMethod: ` /** After a code task completes the success path (push + review). */
|
|
204
|
+
async afterEachTask(_context: TaskContext & { success: boolean }, _vm: HookVM): Promise<void> {
|
|
205
|
+
return;
|
|
206
|
+
},
|
|
207
|
+
`
|
|
208
|
+
},
|
|
209
|
+
beforeResolveConflicts: {
|
|
210
|
+
namedExport: `/** Before AI-driven merge conflict resolution. AI idea: tighten context.prompt for your stack. */
|
|
211
|
+
export async function beforeResolveConflicts(_context: ResolveConflictsContext, _vm: HookVM): Promise<ResolveConflictsContext | void> {
|
|
212
|
+
return;
|
|
213
|
+
}
|
|
214
|
+
`,
|
|
215
|
+
objectMethod: ` /** Before AI-driven merge conflict resolution. AI idea: tighten context.prompt for your stack. */
|
|
216
|
+
async beforeResolveConflicts(_context: ResolveConflictsContext, _vm: HookVM): Promise<ResolveConflictsContext | void> {
|
|
217
|
+
return;
|
|
218
|
+
},
|
|
219
|
+
`
|
|
220
|
+
},
|
|
221
|
+
afterResolveConflicts: {
|
|
222
|
+
namedExport: `/** After conflict resolution; context.resolved is false when all runners failed. */
|
|
223
|
+
export async function afterResolveConflicts(_context: ResolveConflictsContext & { resolved: boolean }, _vm: HookVM): Promise<void> {
|
|
224
|
+
return;
|
|
225
|
+
}
|
|
226
|
+
`,
|
|
227
|
+
objectMethod: ` /** After conflict resolution; context.resolved is false when all runners failed. */
|
|
228
|
+
async afterResolveConflicts(_context: ResolveConflictsContext & { resolved: boolean }, _vm: HookVM): Promise<void> {
|
|
229
|
+
return;
|
|
230
|
+
},
|
|
231
|
+
`
|
|
232
|
+
},
|
|
233
|
+
beforeNonCodeTask: {
|
|
234
|
+
namedExport: `/** Before non-code task AI run. AI idea: format context.prompt for ticket-style replies. */
|
|
235
|
+
export async function beforeNonCodeTask(_context: NonCodeTaskContext, _vm: HookVM): Promise<NonCodeTaskContext | void> {
|
|
236
|
+
return;
|
|
237
|
+
}
|
|
238
|
+
`,
|
|
239
|
+
objectMethod: ` /** Before non-code task AI run. AI idea: format context.prompt for ticket-style replies. */
|
|
240
|
+
async beforeNonCodeTask(_context: NonCodeTaskContext, _vm: HookVM): Promise<NonCodeTaskContext | void> {
|
|
241
|
+
return;
|
|
242
|
+
},
|
|
243
|
+
`
|
|
244
|
+
},
|
|
245
|
+
afterNonCodeTask: {
|
|
246
|
+
namedExport: `/** After non-code task; context.output is the agent response text posted to the ticket. */
|
|
247
|
+
export async function afterNonCodeTask(_context: NonCodeTaskContext & { success: boolean; output: string }, _vm: HookVM): Promise<void> {
|
|
248
|
+
return;
|
|
249
|
+
}
|
|
250
|
+
`,
|
|
251
|
+
objectMethod: ` /** After non-code task; context.output is the agent response text posted to the ticket. */
|
|
252
|
+
async afterNonCodeTask(_context: NonCodeTaskContext & { success: boolean; output: string }, _vm: HookVM): Promise<void> {
|
|
253
|
+
return;
|
|
254
|
+
},
|
|
255
|
+
`
|
|
256
|
+
},
|
|
257
|
+
beforeThinkingTask: {
|
|
258
|
+
namedExport: `/** After the plan exists, before subtasks run. AI idea: rewrite subtask descriptions for clarity. */
|
|
259
|
+
export async function beforeThinkingTask(_context: ThinkingTaskContext, _vm: HookVM): Promise<ThinkingTaskContext | void> {
|
|
260
|
+
return;
|
|
261
|
+
}
|
|
262
|
+
`,
|
|
263
|
+
objectMethod: ` /** After the plan exists, before subtasks run. AI idea: rewrite subtask descriptions for clarity. */
|
|
264
|
+
async beforeThinkingTask(_context: ThinkingTaskContext, _vm: HookVM): Promise<ThinkingTaskContext | void> {
|
|
265
|
+
return;
|
|
266
|
+
},
|
|
267
|
+
`
|
|
268
|
+
},
|
|
269
|
+
afterThinkingTask: {
|
|
270
|
+
namedExport: `/** After all thinking-task subtasks complete. AI idea: notify or archive artifacts. */
|
|
271
|
+
export async function afterThinkingTask(_context: ThinkingTaskContext & { success: boolean }, _vm: HookVM): Promise<void> {
|
|
272
|
+
return;
|
|
273
|
+
}
|
|
274
|
+
`,
|
|
275
|
+
objectMethod: ` /** After all thinking-task subtasks complete. AI idea: notify or archive artifacts. */
|
|
276
|
+
async afterThinkingTask(_context: ThinkingTaskContext & { success: boolean }, _vm: HookVM): Promise<void> {
|
|
277
|
+
return;
|
|
278
|
+
},
|
|
279
|
+
`
|
|
280
|
+
},
|
|
281
|
+
beforeReviewTask: {
|
|
282
|
+
namedExport: `/** Before a review task's unresolved threads are processed. AI idea: filter or prioritise threads. */
|
|
283
|
+
export async function beforeReviewTask(_context: ReviewTaskContext, _vm: HookVM): Promise<ReviewTaskContext | void> {
|
|
284
|
+
return;
|
|
285
|
+
}
|
|
286
|
+
`,
|
|
287
|
+
objectMethod: ` /** Before a review task's unresolved threads are processed. AI idea: filter or prioritise threads. */
|
|
288
|
+
async beforeReviewTask(_context: ReviewTaskContext, _vm: HookVM): Promise<ReviewTaskContext | void> {
|
|
289
|
+
return;
|
|
290
|
+
},
|
|
291
|
+
`
|
|
292
|
+
},
|
|
293
|
+
afterReviewTask: {
|
|
294
|
+
namedExport: `/** After a review task's threads have been processed. */
|
|
295
|
+
export async function afterReviewTask(_context: ReviewTaskContext & { success: boolean; resolvedCount: number }, _vm: HookVM): Promise<void> {
|
|
296
|
+
return;
|
|
297
|
+
}
|
|
298
|
+
`,
|
|
299
|
+
objectMethod: ` /** After a review task's threads have been processed. */
|
|
300
|
+
async afterReviewTask(_context: ReviewTaskContext & { success: boolean; resolvedCount: number }, _vm: HookVM): Promise<void> {
|
|
301
|
+
return;
|
|
302
|
+
},
|
|
303
|
+
`
|
|
304
|
+
},
|
|
305
|
+
beforeComment: {
|
|
306
|
+
namedExport: `/** Before a comment is posted. Return modified context to change the text; throw to suppress. */
|
|
307
|
+
export async function beforeComment(_context: CommentContext, _vm: HookVM): Promise<CommentContext | void> {
|
|
308
|
+
return;
|
|
309
|
+
}
|
|
310
|
+
`,
|
|
311
|
+
objectMethod: ` /** Before a comment is posted. Return modified context to change the text; throw to suppress. */
|
|
312
|
+
async beforeComment(_context: CommentContext, _vm: HookVM): Promise<CommentContext | void> {
|
|
313
|
+
return;
|
|
314
|
+
},
|
|
315
|
+
`
|
|
316
|
+
},
|
|
317
|
+
afterComment: {
|
|
318
|
+
namedExport: `/** After a comment has been posted. AI idea: append a signature or log the event. */
|
|
319
|
+
export async function afterComment(_context: CommentContext, _vm: HookVM): Promise<void> {
|
|
320
|
+
return;
|
|
321
|
+
}
|
|
322
|
+
`,
|
|
323
|
+
objectMethod: ` /** After a comment has been posted. AI idea: append a signature or log the event. */
|
|
324
|
+
async afterComment(_context: CommentContext, _vm: HookVM): Promise<void> {
|
|
325
|
+
return;
|
|
326
|
+
},
|
|
327
|
+
`
|
|
328
|
+
}
|
|
329
|
+
};
|
|
330
|
+
function updateHooksFile(existing) {
|
|
331
|
+
const missing = HOOK_NAMES.filter((name) => !isHookPresent(existing, name));
|
|
332
|
+
if (missing.length === 0) {
|
|
333
|
+
return { content: existing, added: [] };
|
|
334
|
+
}
|
|
335
|
+
const style = detectExportStyle(existing);
|
|
336
|
+
let content = existing;
|
|
337
|
+
if (style === "named") {
|
|
338
|
+
const stubs = missing.map((name) => HOOK_STUBS[name].namedExport).join("\n");
|
|
339
|
+
const separator = content.endsWith("\n") ? "\n" : "\n\n";
|
|
340
|
+
content = content + separator + stubs;
|
|
341
|
+
} else {
|
|
342
|
+
const stubs = missing.map((name) => HOOK_STUBS[name].objectMethod).join("\n");
|
|
343
|
+
const lastBrace = content.lastIndexOf("}");
|
|
344
|
+
if (lastBrace === -1) {
|
|
345
|
+
content = content + "\n" + stubs;
|
|
346
|
+
} else {
|
|
347
|
+
content = content.slice(0, lastBrace) + "\n" + stubs + content.slice(lastBrace);
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
return { content, added: missing };
|
|
351
|
+
}
|
|
352
|
+
function isHookPresent(content, name) {
|
|
353
|
+
const namedPattern = new RegExp(`\\bexport\\s+(?:async\\s+)?function\\s+${name}\\b|\\bexport\\s+const\\s+${name}\\b`);
|
|
354
|
+
if (namedPattern.test(content)) return true;
|
|
355
|
+
const objectPattern = new RegExp(`\\b${name}\\s*[:(]`);
|
|
356
|
+
return objectPattern.test(content);
|
|
357
|
+
}
|
|
358
|
+
function detectExportStyle(content) {
|
|
359
|
+
if (/\bexport\s+(?:async\s+)?function\s+\w/.test(content)) return "named";
|
|
360
|
+
if (/\bexport\s+const\s+\w+\s*=\s*async/.test(content)) return "named";
|
|
361
|
+
return "object";
|
|
362
|
+
}
|
|
363
|
+
|
|
364
|
+
export { HOOK_NAMES as H, generateFullHooksFile as g, updateHooksFile as u };
|
|
365
|
+
//# sourceMappingURL=hooksTemplate.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hooksTemplate.mjs","sources":["../../../../../src/hooksTemplate.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _ as __nuxt_component_0,
|
|
1
|
+
import { _ as __nuxt_component_0, c as useUI, u as useInjectButtonGroup } from './Button-CQZG7w2L.mjs';
|
|
2
2
|
import { mergeProps, defineComponent, toRef, computed, useSSRContext } from 'vue';
|
|
3
3
|
import { twJoin } from 'tailwind-merge';
|
|
4
4
|
import { t as twMerge, a as appConfig, m as mergeConfig } from './server.mjs';
|
|
@@ -211,4 +211,4 @@ _sfc_main.setup = (props, ctx) => {
|
|
|
211
211
|
const __nuxt_component_6 = /* @__PURE__ */ _export_sfc(_sfc_main, [["ssrRender", _sfc_ssrRender]]);
|
|
212
212
|
|
|
213
213
|
export { __nuxt_component_6 as _ };
|
|
214
|
-
//# sourceMappingURL=Badge-
|
|
214
|
+
//# sourceMappingURL=Badge-nNgbDd8N.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Badge-
|
|
1
|
+
{"version":3,"file":"Badge-nNgbDd8N.mjs","sources":["../../../../.nuxt/dist/server/_nuxt/Badge-nNgbDd8N.js"],"names":[],"mappings":"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"}
|