@bkm016/basalt 0.1.12 → 0.1.13

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.
Files changed (271) hide show
  1. package/{chunk-7jezts2n.js → chunk-06s9pr82.js} +2 -2
  2. package/{chunk-jpnf71q7.js → chunk-095adzn5.js} +2 -2
  3. package/chunk-0a7ft50x.js +18 -0
  4. package/{chunk-vjne04dp.js → chunk-0nedq669.js} +4 -4
  5. package/chunk-0x9netvr.js +5 -0
  6. package/{chunk-9as0p561.js → chunk-15ve3nmv.js} +11 -11
  7. package/chunk-1dbfmejf.js +2 -0
  8. package/{chunk-hbnmymaq.js → chunk-1q6e3mj7.js} +2 -2
  9. package/{chunk-85v69h91.js → chunk-22az84sh.js} +2 -2
  10. package/{chunk-w0rr66z7.js → chunk-2q56egb8.js} +1 -1
  11. package/{chunk-fhxy6y34.js → chunk-2tf7qfbx.js} +2 -2
  12. package/{chunk-nw1xpt3s.js → chunk-2zbj8ny6.js} +2 -2
  13. package/chunk-302n9g7p.js +2 -0
  14. package/{chunk-bk4rpnm8.js → chunk-37ndxehw.js} +2 -2
  15. package/chunk-41das1ty.js +2 -0
  16. package/{chunk-6mges89p.js → chunk-44a7f5ta.js} +5 -5
  17. package/{chunk-jn5pqy5v.js → chunk-46vy2m29.js} +1 -1
  18. package/{chunk-1zj3zvw5.js → chunk-4k9t9jvx.js} +4 -4
  19. package/{chunk-eq4wqxzt.js → chunk-4rnmxtpx.js} +2 -2
  20. package/{chunk-1xfv4bd7.js → chunk-4w9zqv0k.js} +1 -1
  21. package/chunk-6d9r9p91.js +20 -0
  22. package/chunk-6f4ht2hw.js +2 -0
  23. package/{chunk-jj4hqbrx.js → chunk-6sea12mw.js} +3 -3
  24. package/chunk-74wwdx3y.js +3 -0
  25. package/{chunk-w6f2r052.js → chunk-77c2cqp2.js} +1 -1
  26. package/chunk-7chv3knf.js +2 -0
  27. package/chunk-86yr2c0r.js +3 -0
  28. package/{chunk-6sz5q3df.js → chunk-8cgz8xv7.js} +2 -2
  29. package/{chunk-tvm4zmgj.js → chunk-959z9efn.js} +2 -2
  30. package/{chunk-eyrtbbdd.js → chunk-9e8vhzy7.js} +1 -1
  31. package/chunk-b516bp7n.js +3 -0
  32. package/chunk-bja7p3em.js +25 -0
  33. package/chunk-bng72094.js +2 -0
  34. package/{chunk-ksk49hv0.js → chunk-bp61xdsc.js} +1 -1
  35. package/chunk-bq54argx.js +2 -0
  36. package/chunk-ct77cdg7.js +2 -0
  37. package/{chunk-02d3x4mj.js → chunk-dk6fgprw.js} +3 -3
  38. package/chunk-drett6hb.js +2 -0
  39. package/{chunk-4gtgqcct.js → chunk-edbq461k.js} +3 -3
  40. package/{chunk-p2pmdbt2.js → chunk-f0h2bv11.js} +12 -12
  41. package/{chunk-8mezk0cb.js → chunk-g2etemv5.js} +2 -2
  42. package/{chunk-n0ybj4h9.js → chunk-g5p9mj1r.js} +2 -2
  43. package/{chunk-fy82qxa1.js → chunk-gpnqmtbk.js} +1 -1
  44. package/{chunk-kpe7pnhy.js → chunk-h9zxqeqr.js} +4 -4
  45. package/{chunk-qfcr5g35.js → chunk-jjtt9aq8.js} +3 -3
  46. package/{chunk-5wnmbc1b.js → chunk-kbpbrr11.js} +2 -2
  47. package/chunk-m71pj3g1.js +2 -0
  48. package/chunk-mdkfm1ak.js +7 -0
  49. package/chunk-mf04h0yy.js +7 -0
  50. package/chunk-n22vd4at.js +2 -0
  51. package/{chunk-v7wcchy2.js → chunk-nbjnwd54.js} +1 -1
  52. package/{chunk-1h34mzh7.js → chunk-pryvvs96.js} +22 -22
  53. package/{chunk-2kxnw7vs.js → chunk-r1jn77q6.js} +2 -2
  54. package/{chunk-ypqjfv3a.js → chunk-rn3jwyh1.js} +2 -2
  55. package/chunk-sgrrxsnz.js +482 -0
  56. package/chunk-sgz87ht5.js +2 -0
  57. package/{chunk-stj493dn.js → chunk-snz19yc2.js} +2 -2
  58. package/{chunk-qs8zzg50.js → chunk-szj85dqe.js} +2 -2
  59. package/{chunk-nrsd810j.js → chunk-tfhp09nj.js} +2 -2
  60. package/{chunk-hc300148.js → chunk-tfhze1vq.js} +2 -2
  61. package/{chunk-01nve4qy.js → chunk-tjg0gcks.js} +1 -1
  62. package/{chunk-cbgpymt4.js → chunk-tnj2kqb8.js} +1 -1
  63. package/{chunk-3pf1d62g.js → chunk-vqm94hz2.js} +2 -2
  64. package/{chunk-82v8jh1h.js → chunk-xvm0y99b.js} +2 -2
  65. package/{chunk-rwks9zaw.js → chunk-y23dpz5e.js} +2 -2
  66. package/{chunk-ejjem0tc.js → chunk-y4pvhes1.js} +6 -6
  67. package/{chunk-bwawt15q.js → chunk-ydzag81d.js} +2 -2
  68. package/chunk-ymg7mtcx.js +3 -0
  69. package/chunk-yy1f9jxc.js +4044 -0
  70. package/{chunk-ntks40jd.js → chunk-z0c8ek0j.js} +5 -5
  71. package/chunk-zk91579b.js +3 -0
  72. package/{chunk-0fc9apfn.js → chunk-zx75vnw8.js} +18 -18
  73. package/compiled.js +85 -12
  74. package/package.json +1 -1
  75. package/ui-test-worker.js +53 -53
  76. package/web/{chunk-aeymdtm1.js → chunk-0jbf73pr.js} +3 -3
  77. package/web/{chunk-7vgh17es.js → chunk-0rhx7qb8.js} +1 -1
  78. package/web/{chunk-7adsmqv6.js → chunk-0rvwj2wh.js} +2 -2
  79. package/web/chunk-12qf1r6m.js +1 -0
  80. package/web/{chunk-dndd757x.js → chunk-14vmr99v.js} +3 -3
  81. package/web/{chunk-4f6a8dsk.js → chunk-16jc5m0f.js} +1 -1
  82. package/web/{chunk-bra33pt0.js → chunk-1m6fx2h7.js} +2 -2
  83. package/web/{chunk-hva7xyne.js → chunk-1xm9x7d6.js} +1 -1
  84. package/web/{chunk-8539865x.js → chunk-20jxvmbw.js} +1 -1
  85. package/web/chunk-2n5xbnrt.js +1 -0
  86. package/web/{chunk-bygwbpvq.js → chunk-2sef2wft.js} +2 -2
  87. package/web/{chunk-w9gnqkez.js → chunk-2x7vmhm0.js} +2 -2
  88. package/web/{chunk-19zd0tye.js → chunk-2y1avvqj.js} +8 -8
  89. package/web/chunk-36s08nye.js +1 -0
  90. package/web/chunk-3ctmehg4.js +1 -0
  91. package/web/{chunk-ncfzmf2g.js → chunk-3jjksgze.js} +1 -1
  92. package/web/{chunk-aebrw6cv.js → chunk-3p9w8sg5.js} +2 -2
  93. package/web/{chunk-sdr5wa4z.js → chunk-3wpxymxa.js} +3 -3
  94. package/web/{chunk-v34mr9ky.js → chunk-4py9sndw.js} +3 -3
  95. package/web/chunk-4swea9sn.js +1 -0
  96. package/web/chunk-4zz5a483.js +1 -0
  97. package/web/{chunk-3rkkp6ed.js → chunk-5cwxhhae.js} +5 -5
  98. package/web/{chunk-d57fm7k0.js → chunk-5ym5ffd5.js} +2 -2
  99. package/web/{chunk-gten0rpx.js → chunk-6e87m0nm.js} +2 -2
  100. package/web/{chunk-b99k8q22.js → chunk-6rsr2cyw.js} +8 -8
  101. package/web/chunk-6y55gk1n.js +1 -0
  102. package/web/chunk-7aep7k4v.js +1 -0
  103. package/web/{chunk-yf8ykk4v.js → chunk-8j4tzff5.js} +3 -3
  104. package/web/{chunk-ny436sqg.js → chunk-8tgavnwx.js} +1 -1
  105. package/web/{chunk-xvfeq8v2.js → chunk-97t3ngqf.js} +12 -12
  106. package/web/{chunk-gkmaryr4.js → chunk-980zhtht.js} +1 -1
  107. package/web/chunk-9k7fkx80.js +1 -0
  108. package/web/{chunk-hxbfkdjd.js → chunk-9wz8jne3.js} +1 -1
  109. package/web/chunk-a00vg115.js +1 -0
  110. package/web/chunk-a4gbxnm3.js +1 -0
  111. package/web/{chunk-6f2sz84q.js → chunk-a6g3nqp0.js} +1 -1
  112. package/web/{chunk-n9v14vyd.js → chunk-a9er7a7c.js} +22 -22
  113. package/web/chunk-atppv8fk.js +1 -0
  114. package/web/{chunk-xbyrgyy0.js → chunk-awkdw9rw.js} +2 -2
  115. package/web/{chunk-hqxc9m07.js → chunk-b4gcpsbg.js} +10 -10
  116. package/web/{chunk-qdd3bx8q.js → chunk-b9jry5a3.js} +1 -1
  117. package/web/{chunk-jyf7a7yp.js → chunk-ba9qy65y.js} +1 -1
  118. package/web/chunk-bq6mep6p.js +2 -0
  119. package/web/chunk-bwy3e58v.js +1 -0
  120. package/web/{chunk-aa46mrgh.js → chunk-c57f714b.js} +2 -2
  121. package/web/{chunk-b5zf1hs3.js → chunk-c6m4vfn5.js} +101 -101
  122. package/web/{chunk-5np514v5.js → chunk-cr04125j.js} +4 -4
  123. package/web/{chunk-ym7kv2hs.js → chunk-cr05dttm.js} +1 -1
  124. package/web/{chunk-2cyzaqjy.js → chunk-ct7z7bea.js} +3 -3
  125. package/web/{chunk-y2rzeb4v.js → chunk-ct90yf8z.js} +2 -2
  126. package/web/{chunk-yjs6jmdb.js → chunk-ddg8rz82.js} +3 -3
  127. package/web/{chunk-8cnjd0f2.js → chunk-dmha2y9c.js} +18 -18
  128. package/web/{chunk-jeafmjsm.js → chunk-e57h40qa.js} +6 -6
  129. package/web/chunk-eeesa5q1.js +1 -0
  130. package/web/{chunk-4wwd3pfz.js → chunk-eqndhs21.js} +2 -2
  131. package/web/{chunk-td83xf12.js → chunk-eqxy6535.js} +2 -2
  132. package/web/{chunk-wvrs986a.js → chunk-et1rsgmp.js} +3 -3
  133. package/web/chunk-f7jpakwh.js +1 -0
  134. package/web/{chunk-v1hfbjz9.js → chunk-fnvgdvrg.js} +4 -4
  135. package/web/chunk-fp62avjh.js +1 -0
  136. package/web/{chunk-6jb2zyp6.js → chunk-frnh4zqf.js} +2 -2
  137. package/web/chunk-g0be12na.js +1 -0
  138. package/web/{chunk-60mym60n.js → chunk-g7hqafb8.js} +1 -1
  139. package/web/{chunk-wqzbxzk3.js → chunk-ga07tv37.js} +1 -1
  140. package/web/chunk-gr163fex.js +1 -0
  141. package/web/chunk-gxtz10wf.js +1 -0
  142. package/web/{chunk-pjpre6de.js → chunk-h1k2kqbs.js} +6 -6
  143. package/web/{chunk-7tkgbbf9.js → chunk-h6k1x096.js} +2 -2
  144. package/web/{chunk-885kpj14.js → chunk-jccz14ye.js} +2 -2
  145. package/web/{chunk-d73zkc4q.js → chunk-jh33m2mq.js} +2 -2
  146. package/web/{chunk-g488hxx0.js → chunk-jh3k7xex.js} +3 -3
  147. package/web/{chunk-3qxxrwsp.js → chunk-jpem3qvs.js} +10 -10
  148. package/web/chunk-k9qnvx86.js +2 -0
  149. package/web/chunk-kcnj0gan.js +1 -0
  150. package/web/{chunk-2jfesv7m.js → chunk-ke8dffnk.js} +2 -2
  151. package/web/chunk-kpp5xqsb.js +1 -0
  152. package/web/chunk-m33yted6.js +1 -0
  153. package/web/chunk-me5jqqn6.js +1 -0
  154. package/web/{chunk-7v85yvb2.js → chunk-mkxeenph.js} +1 -1
  155. package/web/{chunk-mxkbmgcv.js → chunk-mnf4ngj9.js} +1 -1
  156. package/web/{chunk-30aeb767.js → chunk-mykrm8ba.js} +2 -2
  157. package/web/chunk-mzqqwbmr.js +1 -0
  158. package/web/chunk-npyrdsf8.css +1 -0
  159. package/web/chunk-p6e2vr51.js +34 -0
  160. package/web/{chunk-3n9ypydh.js → chunk-p7pa02k9.js} +2 -2
  161. package/web/chunk-q34as3v6.js +1 -0
  162. package/web/{chunk-7ksg3ccg.js → chunk-q4vy3dkk.js} +2 -2
  163. package/web/chunk-q6c8p73w.js +1 -0
  164. package/web/{chunk-h754ntg7.js → chunk-qb8mbptk.js} +1 -1
  165. package/web/{chunk-g4zm0crw.js → chunk-qbmtah1x.js} +1 -1
  166. package/web/chunk-qn93we3a.js +1 -0
  167. package/web/{chunk-c3fty2c2.js → chunk-qq06x2ce.js} +7 -7
  168. package/web/{chunk-fj753yzt.js → chunk-qq6m2my8.js} +2 -2
  169. package/web/chunk-r1f1egve.js +1 -0
  170. package/web/{chunk-80z8s8zb.js → chunk-s935z8er.js} +1 -1
  171. package/web/{chunk-3psgr0q8.js → chunk-sq75q603.js} +20 -20
  172. package/web/{chunk-qp3tjhaq.js → chunk-ss96cz1f.js} +1 -1
  173. package/web/{chunk-hn8m1vsg.js → chunk-t82sngk9.js} +7 -7
  174. package/web/chunk-tt9410zw.js +8 -0
  175. package/web/{chunk-act3rr85.js → chunk-v4cqc9f9.js} +1 -1
  176. package/web/chunk-ve8gy05p.js +1142 -0
  177. package/web/chunk-vg1ebkce.js +1 -0
  178. package/web/{chunk-k4dnjf8n.js → chunk-vk7ch6fh.js} +3 -3
  179. package/web/chunk-vnt34mkb.js +1 -0
  180. package/web/{chunk-kerfb21g.js → chunk-w28dn4dw.js} +1 -1
  181. package/web/{chunk-rdr6wt22.js → chunk-w4tfad6c.js} +4 -4
  182. package/web/{chunk-81s15c2e.js → chunk-wpxtkxjt.js} +2 -2
  183. package/web/{chunk-h24ybwp6.js → chunk-xcyqd7cn.js} +1 -1
  184. package/web/chunk-xe121vg7.js +1 -0
  185. package/web/chunk-xh4xn1az.js +1 -0
  186. package/web/{chunk-e94pd9rr.js → chunk-xk1vkcj4.js} +9 -9
  187. package/web/chunk-xrk5ewsn.js +1 -0
  188. package/web/{chunk-5g8md2wg.js → chunk-xvm66b7v.js} +4 -4
  189. package/web/{chunk-q1zxvjhs.js → chunk-xxmaqj1m.js} +2 -2
  190. package/web/chunk-xzwxcxb4.js +1 -0
  191. package/web/{chunk-xpecre7w.js → chunk-y9waq403.js} +4 -4
  192. package/web/chunk-ydhnkws0.js +1 -0
  193. package/web/{chunk-ar6jnhm5.js → chunk-yn4t5s9r.js} +1 -1
  194. package/web/chunk-ys2tns0p.js +1 -0
  195. package/web/chunk-zb61mf0a.js +1 -0
  196. package/web/{chunk-r6kk4vp1.js → chunk-ze6azq7z.js} +4 -4
  197. package/web/chunk-zh7193nq.js +2 -0
  198. package/web/chunk-zqcg6frm.js +1 -0
  199. package/web/{chunk-enwfd8d5.js → chunk-zxrbbbtp.js} +2 -2
  200. package/web/index.html +1 -1
  201. package/worker.js +1 -1
  202. package/chunk-2fyjph3f.js +0 -2
  203. package/chunk-37zystxb.js +0 -25
  204. package/chunk-3k627vf2.js +0 -3
  205. package/chunk-7er5pz7s.js +0 -479
  206. package/chunk-7g5smgjj.js +0 -2
  207. package/chunk-7m3jagqn.js +0 -2
  208. package/chunk-9c4gdg1q.js +0 -3
  209. package/chunk-b2bxqeb4.js +0 -2
  210. package/chunk-bpw6q7g0.js +0 -3
  211. package/chunk-cdw03j4t.js +0 -20
  212. package/chunk-ch1r3ted.js +0 -2
  213. package/chunk-cmwdjes8.js +0 -18
  214. package/chunk-db7ws33a.js +0 -7
  215. package/chunk-e1x629v0.js +0 -5
  216. package/chunk-j64dc767.js +0 -3
  217. package/chunk-m4bg1apa.js +0 -7
  218. package/chunk-nhm9z3d8.js +0 -2
  219. package/chunk-pnspvnyd.js +0 -2
  220. package/chunk-qnkrrwmg.js +0 -2
  221. package/chunk-r4gm8ngh.js +0 -2
  222. package/chunk-rks90mh1.js +0 -2
  223. package/chunk-t7te60m7.js +0 -2
  224. package/chunk-tv52xajf.js +0 -2
  225. package/chunk-wqqjzsjt.js +0 -3983
  226. package/chunk-xef4642x.js +0 -3
  227. package/web/chunk-04drx71p.js +0 -1
  228. package/web/chunk-0mdf1qja.js +0 -1
  229. package/web/chunk-0rdgt4jb.css +0 -1
  230. package/web/chunk-1m0kp0g3.js +0 -8
  231. package/web/chunk-3j2tcphs.js +0 -1
  232. package/web/chunk-3k9h7a73.js +0 -1142
  233. package/web/chunk-3m1bb2fw.js +0 -1
  234. package/web/chunk-55nvm2mj.js +0 -1
  235. package/web/chunk-5dkqfnh7.js +0 -2
  236. package/web/chunk-7ky5nrrr.js +0 -1
  237. package/web/chunk-8sdjgv3k.js +0 -1
  238. package/web/chunk-9bxtzwtc.js +0 -1
  239. package/web/chunk-9jy8nc4r.js +0 -1
  240. package/web/chunk-bcjgzwef.js +0 -1
  241. package/web/chunk-cxpnj495.js +0 -2
  242. package/web/chunk-d1btrqmw.js +0 -1
  243. package/web/chunk-d94t9z70.js +0 -1
  244. package/web/chunk-e68jw0bg.js +0 -1
  245. package/web/chunk-fr4fft89.js +0 -1
  246. package/web/chunk-gckmcef6.js +0 -1
  247. package/web/chunk-gnb09wmx.js +0 -1
  248. package/web/chunk-hrgqc1vr.js +0 -1
  249. package/web/chunk-j9c8fa82.js +0 -1
  250. package/web/chunk-jz5mmp64.js +0 -1
  251. package/web/chunk-kxeaj44h.js +0 -1
  252. package/web/chunk-m0136xav.js +0 -1
  253. package/web/chunk-m1rdyvb5.js +0 -1
  254. package/web/chunk-m6vyvgm5.js +0 -1
  255. package/web/chunk-my0ec787.js +0 -1
  256. package/web/chunk-nkpdd9hw.js +0 -1
  257. package/web/chunk-pbp1p5ex.js +0 -1
  258. package/web/chunk-ph75hddv.js +0 -1
  259. package/web/chunk-phdfyqaa.js +0 -1
  260. package/web/chunk-phxa5krt.js +0 -1
  261. package/web/chunk-r4zbw4zj.js +0 -2
  262. package/web/chunk-ry4ycah9.js +0 -1
  263. package/web/chunk-sqm16fat.js +0 -1
  264. package/web/chunk-tj1fn8v2.js +0 -1
  265. package/web/chunk-v0wtk059.js +0 -34
  266. package/web/chunk-v1qt3gq4.js +0 -1
  267. package/web/chunk-v854w9yn.js +0 -1
  268. package/web/chunk-ve56gxq0.js +0 -1
  269. package/web/chunk-w573ym17.js +0 -1
  270. package/web/chunk-x0mjydtp.js +0 -1
  271. package/web/chunk-zhybh04p.js +0 -1
@@ -0,0 +1 @@
1
+ import{h,o,W,i,r,m,e,n,y,rn,er,ze,Pn,Ie,mn,oe,Q,ia,Eo,oa}from"./chunk-ve8gy05p.js";function de(d){let{Button:b,confirm:L,PageLayout:x,Switch:_,cn:F,style:z}=y(),{connection:f,onOpen:O}=d,[D,p]=r([]),[w,H]=r([]),[q,J]=r([]),[I,T]=r(),[B,U]=r([]),[A,V]=r(!0),[k,N]=r(),[C,R]=r(),[G,P]=r(!1),[K,c]=r({}),s=i(0),E=h(async()=>{let t=++s.current;try{let[a,l,u,g]=await Promise.all([f.request("/api/automations"),f.request("/api/projects").catch(()=>[]),f.request("/api/info").catch(()=>{return}),f.request("/api/models").catch(()=>({models:[]}))]),te=[...new Set(a.flatMap((v)=>v.lastSessionID?[v.lastSessionID]:[]))],ne=(await Promise.all(te.map(async(v)=>f.request(`/api/sessions/${encodeURIComponent(v)}`).catch((j)=>{if(j instanceof Error&&"status"in j&&j.status===404)return;throw j})))).filter((v)=>v!==void 0);if(t!==s.current)return;if(p(a.sort((v,j)=>v.created-j.created)),H(l),J(ne),T(u),g?.models)U(g.models.map((v)=>v.id));N(void 0)}catch(a){if(t===s.current)N(a instanceof Error?a.message:"加载失败")}finally{if(t===s.current)V(!1)}},[f]);o(()=>(E(),()=>{s.current++}),[E]);let S=(t)=>{R(t),P(!0)},Y=async(t)=>{c((a)=>({...a,[t.id]:!0}));try{let a=await f.request(`/api/automations/${t.id}/run`,{method:"POST"});O(a.id)}catch(a){N(a instanceof Error?a.message:"运行失败")}finally{c((a)=>({...a,[t.id]:!1}))}},Z=async(t)=>{if(!await L({title:`删除自动化「${t.name}」?`,description:"已经跑出来的会话会保留。",action:"删除",danger:!0}))return;try{await f.request(`/api/automations/${t.id}`,{method:"DELETE"}),p((l)=>l.filter((u)=>u.id!==t.id))}catch(l){N(l instanceof Error?l.message:"删除失败")}},ee=async(t,a)=>{try{let l=await f.request(`/api/automations/${t.id}`,{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify({enabled:a})});p((u)=>u.map((g)=>g.id===t.id?l:g))}catch(l){N(l instanceof Error?l.message:"状态切换失败")}};return n(x,{title:"自动化",description:n(m,{children:["到点自动开一个新会话执行提示词,跑完的结果在会话里查看。",I?.timezone&&n("span",{className:"text-faint",children:["按服务器时区 ",I.timezone,"。"]})]}),actions:n(b,{variant:"primary",onClick:()=>S(null),children:[e(oe,{className:"size-4"}),"新建"]}),children:[k&&e("div",{className:"mb-4 rounded-lg bg-danger/10 px-3 py-2 text-xs text-danger",children:k}),A?e("div",{className:"flex justify-center py-12 text-xs text-faint",children:"正在加载自动化…"}):D.length===0?n("div",{className:z("surface.emptyDashed","animate-fade"),children:[e("div",{className:"grid size-11 place-items-center rounded-xl bg-raised text-dim",children:e(rn,{className:"size-5"})}),n("div",{children:[e("p",{className:"text-[15px] font-medium",children:"还没有自动化"}),e("p",{className:"mt-1 text-sm text-dim",children:"比如「每个工作日 9 点总结昨天的提交」。"})]}),n(b,{size:"sm",onClick:()=>S(null),className:"mt-1",children:[e(oe,{className:"size-3.5"}),"新建自动化"]})]}):e("ul",{className:"flex animate-fade flex-col gap-3",children:D.map((t)=>{let a=t.projectID?w.find((g)=>g.id===t.projectID):void 0,l=t.lastSessionID?q.find((g)=>g.id===t.lastSessionID):void 0,u=Boolean(K[t.id]);return e("li",{children:n("article",{className:z("surface.card","group p-4 transition-[border-color,box-shadow] duration-200 hover:border-line-strong hover:shadow-composer"),children:[n("div",{className:"flex items-start gap-3",children:[n("div",{className:F("min-w-0 flex-1 transition-opacity duration-200",!t.enabled&&"opacity-55"),children:[e("h2",{className:"truncate text-[15px] font-medium",children:t.name}),n("div",{className:"mt-1 flex flex-wrap items-center gap-x-3.5 gap-y-1 text-[13px] text-dim",children:[n("span",{className:"flex items-center gap-1.5 [&_svg]:size-3.5 [&_svg]:text-faint",children:[e(rn,{}),Eo(t.schedule)]}),n("span",{className:"flex items-center gap-1.5 [&_svg]:size-3.5 [&_svg]:text-faint",children:[a?e(ze,{}):e(Pn,{}),a?a.name:"聊天"]}),t.enabled&&t.nextRun!==null&&n("span",{className:"flex items-center gap-1.5 [&_svg]:size-3.5 [&_svg]:text-faint",children:[e(er,{}),"下次 ",oa(t.nextRun)]})]})]}),e(_,{checked:t.enabled,label:t.enabled?"停用":"启用",onCheckedChange:(g)=>ee(t,g),className:"mt-0.5"})]}),e("p",{className:F("mt-3 line-clamp-2 text-sm leading-6 whitespace-pre-wrap text-faint transition-opacity duration-200",!t.enabled&&"opacity-55"),children:t.prompt}),n("div",{className:"mt-3 -mb-1 flex items-center gap-1",children:[n(b,{size:"sm",onClick:()=>Y(t),disabled:u,children:[e(mn,{className:"size-3.5"}),u?"正在启动…":"立即运行"]}),n(b,{size:"sm",variant:"ghost",onClick:()=>S(t),children:[e(Ie,{className:"size-3.5"}),"编辑"]}),n(b,{size:"sm",variant:"danger-ghost",onClick:()=>Z(t),children:[e(Q,{className:"size-3.5"}),"删除"]}),e("div",{className:"flex-1"}),t.lastRun!==null&&n("button",{type:"button",disabled:!l,onClick:()=>l&&O(l.id),className:"rounded-md px-1.5 py-1 text-[13px] text-faint transition-colors enabled:hover:bg-raised enabled:hover:text-ink",children:["上次运行 ",oa(t.lastRun),l?.archivedAt!=null?" · 已归档":"",!l?" · 会话已删除":""]})]})]})},t.id)})}),C!==void 0&&e(se,{open:G,onOpenChange:P,automation:C??void 0,projects:w,models:B,timezone:I?.timezone,onSaved:(t)=>{p((a)=>{let l=a.findIndex((u)=>u.id===t.id);if(l>=0){let u=[...a];return u[l]=t,u}return[...a,t].sort((u,g)=>u.created-g.created)}),P(!1)},connection:f},C?.id??"new")]})}var M="custom",X="chat";function se(d){let{Button:b,Dialog:L,Field:x,Form:_,FormError:F,Input:z,Select:f,Textarea:O}=y(),D=W(),p=d.automation,[w,H]=r(p?.name??""),[q,J]=r(p?.prompt??""),[I,T]=r(p?.schedule??ia[0]?.cron??"0 9 * * *"),[B,U]=r(()=>!ia.some((c)=>c.cron===I)),[A,V]=r(p?.projectID??X),[k,N]=r(p?.model??""),[C,R]=r(!1),[G,P]=r();async function K(c){c.preventDefault(),R(!0),P(void 0);try{let s=A===X?void 0:A,E={name:w,prompt:q,schedule:I,model:k||void 0},S;if(p)S=await d.connection.request(`/api/automations/${p.id}`,{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify({...E,projectID:s??null})});else S=await d.connection.request("/api/automations",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({...E,projectID:s})});d.onSaved(S)}catch(s){P(s instanceof Error?s.message:"保存失败")}finally{R(!1)}}return e(L,{open:d.open,onOpenChange:d.onOpenChange,title:d.automation?"编辑自动化":"新建自动化",size:"lg",footer:n(m,{children:[e("div",{className:"flex-1 max-sm:hidden"}),e(b,{onClick:()=>d.onOpenChange(!1),children:"取消"}),e(b,{type:"submit",form:D,variant:"primary",disabled:C,children:C?"正在保存…":d.automation?"保存":"创建"})]}),children:n(_,{id:D,onSubmit:K,children:[e(x,{label:"名称",children:(c)=>e(z,{id:c,autoFocus:!p,required:!0,value:w,onChange:(s)=>H(s.target.value),placeholder:"例如:每日提交总结"})}),e(x,{label:"提示词",hint:"没人盯着运行,写清楚要做什么、结果怎么汇报。",children:(c)=>e(O,{id:c,required:!0,value:q,onChange:(s)=>J(s.target.value),rows:5,placeholder:"总结昨天到现在的 git 提交,按模块分组,列出需要我关注的改动。"})}),n("div",{className:"grid gap-x-3 gap-y-4 sm:grid-cols-2",children:[e(x,{label:"时间",children:(c)=>e(f,{id:c,value:B?M:I,onValueChange:(s)=>{if(U(s===M),s!==M)T(s)},groups:[{options:ia.map((s)=>({value:s.cron,label:s.label}))},{options:[{value:M,label:"自定义(cron)"}]}]})}),e(x,{label:"在哪里运行",children:(c)=>e(f,{id:c,value:A,onValueChange:V,groups:[{options:[{value:X,label:"聊天",description:"不绑定目录",icon:e(Pn,{})}]},...d.projects.length?[{label:"项目",options:d.projects.map((s)=>({value:s.id,label:s.name,icon:e(ze,{})}))}]:[]]})})]}),B&&e(x,{label:"cron 表达式",hint:`分 时 日 月 周,例如 30 8 * * 1-5 是工作日 8:30。${d.timezone?`按 ${d.timezone} 时间。`:""}`,children:(c)=>e(z,{id:c,required:!0,value:I,onChange:(s)=>T(s.target.value),spellCheck:!1,className:"font-mono"})}),d.models.length>0&&e(x,{label:"模型",children:(c)=>e(f,{id:c,value:k||"default",onValueChange:(s)=>N(s==="default"?"":s),groups:[{options:[{value:"default",label:"默认模型"},...d.models.map((s)=>({value:s,label:s}))]}]})}),e(F,{children:G})]})})}export{de as AutomationsPage};
@@ -1,4 +1,4 @@
1
- import{H}from"./chunk-jyf7a7yp.js";import{t,a,we,M,x,F,C,S,E,T,A,L,R,V,U}from"./chunk-b5zf1hs3.js";import{Q}from"./chunk-n9v14vyd.js";var ht=t(()=>({domains:new Map,transitions:[]}),"createDefaultData"),ot=ht(),St=t(()=>ot.domains,"getDomains"),Mt=t(()=>ot.transitions,"getTransitions"),zt=t((e)=>{if(!e)return;for(let n of e){let o=n.domain,r=(n.items??[]).map((l)=>({label:l.label}));ot.domains.set(o,{name:o,items:r})}},"setDomains"),Lt=t((e)=>{if(!e)return;ot.transitions=e.filter((n)=>{if(n.from===n.to)return a.warn(`Cynefin: self-loop transition on domain "${n.from}" is not meaningful and will be skipped.`),!1;return!0}).map((n)=>({from:n.from,to:n.to,label:n.label||void 0}))},"setTransitions"),Nt=t(()=>U({...M.cynefin,...x().cynefin}),"getConfig"),Pt=t(()=>{C(),ot=ht()},"clear"),it={getDomains:St,getTransitions:Mt,setDomains:zt,setTransitions:Lt,getConfig:Nt,clear:Pt,setAccTitle:S,getAccTitle:E,setDiagramTitle:L,getDiagramTitle:R,getAccDescription:A,setAccDescription:T},It=t((e)=>{H(e,it),it.setDomains(e.domains),it.setTransitions(e.transitions)},"populate"),Wt={parse:t(async(e)=>{let n=await Q("cynefin",e);a.debug(n),It(n)},"parse")};function nt(e){let n=e+1831565813|0;return n=Math.imul(n^n>>>15,n|1),n^=n+Math.imul(n^n>>>7,n|61),((n^n>>>14)>>>0)/4294967296}t(nt,"seededRandom");function xt(e){let n=0;for(let o=0;o<e.length;o++){let r=e.charCodeAt(o);n=(n<<5)-n+r,n|=0}return n}t(xt,"hashString");function $t(e,n){if(typeof e==="number"&&Number.isFinite(e)&&e!==0)return e;return xt(n)}t($t,"resolveSeed");function bt(e,n,o,r){let l=e/2,p=r??e*0.015,at=7,Z=n/7,f=[];for(let i=0;i<=7;i++){let y=nt(o+i*17)*p*2-p;f.push({x:l+y,y:i*Z})}let z=`M${f[0].x},${f[0].y}`;for(let i=0;i<f.length-1;i++){let y=f[i],c=f[i+1],m=(y.y+c.y)/2,D=i%2===0?1:-1,h=p*1.5*D*nt(o+i*31+7),J=y.x+h,K=m,tt=c.x-h;z+=` C${J},${K} ${tt},${m} ${c.x},${c.y}`}return z}t(bt,"generateFoldPath");function wt(e,n,o,r){let l=n/2,p=r??n*0.015,at=7,Z=e/7,f=[];for(let i=0;i<=7;i++){let y=nt(o+i*23)*p*2-p;f.push({x:i*Z,y:l+y})}let z=`M${f[0].x},${f[0].y}`;for(let i=0;i<f.length-1;i++){let y=f[i],c=f[i+1],m=(y.x+c.x)/2,D=i%2===0?1:-1,h=p*1.5*D*nt(o+i*37+11),J=m,K=y.y+h,tt=m,Y=c.y-h;z+=` C${J},${K} ${tt},${Y} ${c.x},${c.y}`}return z}t(wt,"generateHorizontalBoundary");function Ct(e,n){let o=e/2,r=n*0.5,l=n,p=e*0.03;return[`M${o},${r}`,`C${o+p},${r+(l-r)*0.2}`,`${o-p*1.5},${r+(l-r)*0.55}`,`${o+p*0.5},${r+(l-r)*0.75}`,`C${o-p},${r+(l-r)*0.85}`,`${o+p*0.3},${r+(l-r)*0.95}`,`${o},${l}`].join(" ")}t(Ct,"generateCliffPath");function vt(e,n,o,r){return[`M${e-o},${n}`,`A${o},${r} 0 1,1 ${e+o},${n}`,`A${o},${r} 0 1,1 ${e-o},${n}`,"Z"].join(" ")}t(vt,"generateConfusionPath");var gt={complex:{model:"Probe → Sense → Respond",practice:"Emergent Practices"},complicated:{model:"Sense → Analyse → Respond",practice:"Good Practices"},clear:{model:"Sense → Categorise → Respond",practice:"Best Practices"},chaotic:{model:"Act → Sense → Respond",practice:"Novel Practices"},confusion:{model:"",practice:"Disorder"}},Rt=t((e,n)=>{let o=e/2,r=n/2;return{complex:{cx:o/2,cy:r/2,x:0,y:0,w:o,h:r},complicated:{cx:o+o/2,cy:r/2,x:o,y:0,w:o,h:r},chaotic:{cx:o/2,cy:r+r/2,x:0,y:r,w:o,h:r},clear:{cx:o+o/2,cy:r+r/2,x:o,y:r,w:o,h:r},confusion:{cx:o,cy:r,x:o*0.7,y:r*0.7,w:o*0.6,h:r*0.6}}},"getDomainLayouts"),Ft=t(()=>{let e=we(),n=x();return U(e,n.themeVariables).cynefin},"getCynefinDomainColors"),lt=3,Vt=t((e,n,o,r)=>{let l=r.db,p=l.getDomains(),at=l.getTransitions(),Z=l.getDiagramTitle(),f=l.getAccTitle(),z=l.getAccDescription(),i=l.getConfig(),y=Ft();a.debug("Rendering Cynefin diagram");let{width:c,height:m,padding:D,showDomainDescriptions:h,boundaryAmplitude:J}=i,K=c+D*2,tt=m+D*2,Y={complex:y.complexBg,complicated:y.complicatedBg,clear:y.clearBg,chaotic:y.chaoticBg,confusion:y.confusionBg},N=V(n);if(F(N,tt,K,i.useMaxWidth??!0),N.attr("viewBox",`0 0 ${K} ${tt}`),f)N.append("title").text(f);if(z)N.append("desc").text(z);let P=N.append("g").attr("transform",`translate(${D}, ${D})`),et=Rt(c,m),dt=$t(i.seed,n),Dt=P.append("g").attr("class","cynefin-backgrounds"),st=["complex","complicated","chaotic","clear"];for(let d of st){let s=et[d];Dt.append("rect").attr("class","cynefinDomain").attr("x",s.x).attr("y",s.y).attr("width",s.w).attr("height",s.h).attr("fill",Y[d]).attr("fill-opacity",0.4).attr("stroke","none")}let ct=P.append("g").attr("class","cynefin-boundaries");ct.append("path").attr("class","cynefinBoundary").attr("d",bt(c,m,dt,J)).attr("fill","none"),ct.append("path").attr("class","cynefinBoundary").attr("d",wt(c,m,dt+100,J)).attr("fill","none"),ct.append("path").attr("class","cynefinCliff").attr("d",Ct(c,m)).attr("fill","none");let kt=c*0.15,Tt=m*0.15;P.append("path").attr("class","cynefinConfusion").attr("d",vt(c/2,m/2,kt,Tt)).attr("fill",Y.confusion).attr("fill-opacity",0.5);let ft=P.append("g").attr("class","cynefin-labels");for(let d of st){let s=et[d];ft.append("text").attr("class","cynefinDomainLabel").attr("x",s.cx).attr("y",h?s.cy-30:s.cy).attr("text-anchor","middle").attr("dominant-baseline","middle").text(d.charAt(0).toUpperCase()+d.slice(1))}if(ft.append("text").attr("class","cynefinDomainLabel").attr("x",c/2).attr("y",h?m/2-10:m/2).attr("text-anchor","middle").attr("dominant-baseline","middle").text("Confusion"),h){let d=P.append("g").attr("class","cynefin-subtitles");for(let s of st){let g=et[s],u=gt[s];d.append("text").attr("class","cynefinSubtitle").attr("x",g.cx).attr("y",g.cy-10).attr("text-anchor","middle").attr("dominant-baseline","middle").text(u.model),d.append("text").attr("class","cynefinSubtitle").attr("x",g.cx).attr("y",g.cy+5).attr("text-anchor","middle").attr("dominant-baseline","middle").text(u.practice)}d.append("text").attr("class","cynefinSubtitle").attr("x",c/2).attr("y",m/2+8).attr("text-anchor","middle").attr("dominant-baseline","middle").text(gt.confusion.practice)}let mt=P.append("g").attr("class","cynefin-items"),I=26,pt=10,At=["complex","complicated","chaotic","clear","confusion"];for(let d of At){let s=p.get(d);if(!s||s.items.length===0)continue;let g=et[d],u=d==="confusion",O=s.items,X=0;if(u&&s.items.length>lt)X=s.items.length-lt,O=s.items.slice(0,lt);let W;if(u){let w=h?22:14;W=g.cy+w}else W=g.cy+(h?25:15);if([...O].forEach((w,_)=>{let k=W+_*(I+4),G=mt.append("g"),j=G.append("text").attr("class","cynefinItemText").attr("x",0).attr("y",I/2).attr("text-anchor","middle").attr("dominant-baseline","central").text(w.label),v=w.label.length*7,b=j.node();if(b&&typeof b.getBBox==="function"){let rt=b.getBBox();if(rt.width>0)v=rt.width}let B=v+pt*2,q=g.cx-B/2;G.attr("transform",`translate(${q}, ${k})`),G.insert("rect","text").attr("class","cynefinItem").attr("x",0).attr("y",0).attr("width",B).attr("height",I).attr("rx",4).attr("ry",4).attr("fill",Y[d]).attr("fill-opacity",0.95),j.attr("x",B/2).attr("y",I/2)}),X>0){let w=W+O.length*(I+4),_=`+${X} more`,k=mt.append("g"),G=k.append("text").attr("class","cynefinItemText").attr("x",0).attr("y",I/2).attr("text-anchor","middle").attr("dominant-baseline","central").text(_),j=_.length*7,v=G.node();if(v&&typeof v.getBBox==="function"){let q=v.getBBox();if(q.width>0)j=q.width}let b=j+pt*2,B=g.cx-b/2;k.attr("transform",`translate(${B}, ${w})`),k.insert("rect","text").attr("class","cynefinItemOverflow").attr("x",0).attr("y",0).attr("width",b).attr("height",I).attr("rx",4).attr("ry",4).attr("fill",Y[d]).attr("fill-opacity",0.6),G.attr("x",b/2).attr("y",I/2)}}if(at.length>0){let d=N.select("defs").empty()?N.append("defs"):N.select("defs"),s=`cynefin-arrow-${n}`;d.append("marker").attr("id",s).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","cynefinArrowHead");let g=P.append("g").attr("class","cynefin-arrows");at.forEach((u)=>{let O=et[u.from],X=et[u.to];if(!O||!X)return;if(u.from===u.to){a.warn(`Cynefin renderer: skipping self-loop on domain "${u.from}"`);return}let{cx:W,cy:w}=O,{cx:_,cy:k}=X,G=(W+_)/2,j=(w+k)/2,v=_-W,b=k-w,B=Math.sqrt(v*v+b*b),q=B*0.15,rt=-b/B,Bt=v/B,yt=G+rt*q,ut=j+Bt*q;if(g.append("path").attr("class","cynefinArrowLine").attr("d",`M${W},${w} Q${yt},${ut} ${_},${k}`).attr("fill","none").attr("marker-end",`url(#${s})`),u.label)g.append("text").attr("class","cynefinArrowLabel").attr("x",yt).attr("y",ut-6).attr("text-anchor","middle").attr("dominant-baseline","auto").text(u.label)})}if(Z)P.append("text").attr("class","cynefinTitle").attr("x",c/2).attr("y",-D/2).attr("text-anchor","middle").attr("dominant-baseline","middle").text(Z)},"draw"),_t={draw:Vt},Et=t(()=>{let e=we(),n=x();return U(e,n.themeVariables).cynefin},"getCynefinTheme"),Ht=t(()=>{let e=Et();return`
1
+ import{H}from"./chunk-ba9qy65y.js";import{t,a,we,N,x,F,C,S,E,T,A,L,R,V,U}from"./chunk-c6m4vfn5.js";import{J}from"./chunk-a9er7a7c.js";var ht=t(()=>({domains:new Map,transitions:[]}),"createDefaultData"),ot=ht(),St=t(()=>ot.domains,"getDomains"),Mt=t(()=>ot.transitions,"getTransitions"),zt=t((e)=>{if(!e)return;for(let n of e){let o=n.domain,r=(n.items??[]).map((l)=>({label:l.label}));ot.domains.set(o,{name:o,items:r})}},"setDomains"),Lt=t((e)=>{if(!e)return;ot.transitions=e.filter((n)=>{if(n.from===n.to)return a.warn(`Cynefin: self-loop transition on domain "${n.from}" is not meaningful and will be skipped.`),!1;return!0}).map((n)=>({from:n.from,to:n.to,label:n.label||void 0}))},"setTransitions"),Nt=t(()=>U({...N.cynefin,...x().cynefin}),"getConfig"),Pt=t(()=>{C(),ot=ht()},"clear"),it={getDomains:St,getTransitions:Mt,setDomains:zt,setTransitions:Lt,getConfig:Nt,clear:Pt,setAccTitle:S,getAccTitle:E,setDiagramTitle:L,getDiagramTitle:R,getAccDescription:A,setAccDescription:T},It=t((e)=>{H(e,it),it.setDomains(e.domains),it.setTransitions(e.transitions)},"populate"),Wt={parse:t(async(e)=>{let n=await J("cynefin",e);a.debug(n),It(n)},"parse")};function nt(e){let n=e+1831565813|0;return n=Math.imul(n^n>>>15,n|1),n^=n+Math.imul(n^n>>>7,n|61),((n^n>>>14)>>>0)/4294967296}t(nt,"seededRandom");function xt(e){let n=0;for(let o=0;o<e.length;o++){let r=e.charCodeAt(o);n=(n<<5)-n+r,n|=0}return n}t(xt,"hashString");function $t(e,n){if(typeof e==="number"&&Number.isFinite(e)&&e!==0)return e;return xt(n)}t($t,"resolveSeed");function bt(e,n,o,r){let l=e/2,p=r??e*0.015,at=7,Q=n/7,f=[];for(let i=0;i<=7;i++){let y=nt(o+i*17)*p*2-p;f.push({x:l+y,y:i*Q})}let M=`M${f[0].x},${f[0].y}`;for(let i=0;i<f.length-1;i++){let y=f[i],c=f[i+1],m=(y.y+c.y)/2,D=i%2===0?1:-1,h=p*1.5*D*nt(o+i*31+7),Z=y.x+h,K=m,tt=c.x-h;M+=` C${Z},${K} ${tt},${m} ${c.x},${c.y}`}return M}t(bt,"generateFoldPath");function wt(e,n,o,r){let l=n/2,p=r??n*0.015,at=7,Q=e/7,f=[];for(let i=0;i<=7;i++){let y=nt(o+i*23)*p*2-p;f.push({x:i*Q,y:l+y})}let M=`M${f[0].x},${f[0].y}`;for(let i=0;i<f.length-1;i++){let y=f[i],c=f[i+1],m=(y.x+c.x)/2,D=i%2===0?1:-1,h=p*1.5*D*nt(o+i*37+11),Z=m,K=y.y+h,tt=m,Y=c.y-h;M+=` C${Z},${K} ${tt},${Y} ${c.x},${c.y}`}return M}t(wt,"generateHorizontalBoundary");function Ct(e,n){let o=e/2,r=n*0.5,l=n,p=e*0.03;return[`M${o},${r}`,`C${o+p},${r+(l-r)*0.2}`,`${o-p*1.5},${r+(l-r)*0.55}`,`${o+p*0.5},${r+(l-r)*0.75}`,`C${o-p},${r+(l-r)*0.85}`,`${o+p*0.3},${r+(l-r)*0.95}`,`${o},${l}`].join(" ")}t(Ct,"generateCliffPath");function vt(e,n,o,r){return[`M${e-o},${n}`,`A${o},${r} 0 1,1 ${e+o},${n}`,`A${o},${r} 0 1,1 ${e-o},${n}`,"Z"].join(" ")}t(vt,"generateConfusionPath");var gt={complex:{model:"Probe → Sense → Respond",practice:"Emergent Practices"},complicated:{model:"Sense → Analyse → Respond",practice:"Good Practices"},clear:{model:"Sense → Categorise → Respond",practice:"Best Practices"},chaotic:{model:"Act → Sense → Respond",practice:"Novel Practices"},confusion:{model:"",practice:"Disorder"}},Rt=t((e,n)=>{let o=e/2,r=n/2;return{complex:{cx:o/2,cy:r/2,x:0,y:0,w:o,h:r},complicated:{cx:o+o/2,cy:r/2,x:o,y:0,w:o,h:r},chaotic:{cx:o/2,cy:r+r/2,x:0,y:r,w:o,h:r},clear:{cx:o+o/2,cy:r+r/2,x:o,y:r,w:o,h:r},confusion:{cx:o,cy:r,x:o*0.7,y:r*0.7,w:o*0.6,h:r*0.6}}},"getDomainLayouts"),Ft=t(()=>{let e=we(),n=x();return U(e,n.themeVariables).cynefin},"getCynefinDomainColors"),lt=3,Vt=t((e,n,o,r)=>{let l=r.db,p=l.getDomains(),at=l.getTransitions(),Q=l.getDiagramTitle(),f=l.getAccTitle(),M=l.getAccDescription(),i=l.getConfig(),y=Ft();a.debug("Rendering Cynefin diagram");let{width:c,height:m,padding:D,showDomainDescriptions:h,boundaryAmplitude:Z}=i,K=c+D*2,tt=m+D*2,Y={complex:y.complexBg,complicated:y.complicatedBg,clear:y.clearBg,chaotic:y.chaoticBg,confusion:y.confusionBg},z=V(n);if(F(z,tt,K,i.useMaxWidth??!0),z.attr("viewBox",`0 0 ${K} ${tt}`),f)z.append("title").text(f);if(M)z.append("desc").text(M);let P=z.append("g").attr("transform",`translate(${D}, ${D})`),et=Rt(c,m),dt=$t(i.seed,n),Dt=P.append("g").attr("class","cynefin-backgrounds"),st=["complex","complicated","chaotic","clear"];for(let d of st){let s=et[d];Dt.append("rect").attr("class","cynefinDomain").attr("x",s.x).attr("y",s.y).attr("width",s.w).attr("height",s.h).attr("fill",Y[d]).attr("fill-opacity",0.4).attr("stroke","none")}let ct=P.append("g").attr("class","cynefin-boundaries");ct.append("path").attr("class","cynefinBoundary").attr("d",bt(c,m,dt,Z)).attr("fill","none"),ct.append("path").attr("class","cynefinBoundary").attr("d",wt(c,m,dt+100,Z)).attr("fill","none"),ct.append("path").attr("class","cynefinCliff").attr("d",Ct(c,m)).attr("fill","none");let kt=c*0.15,Tt=m*0.15;P.append("path").attr("class","cynefinConfusion").attr("d",vt(c/2,m/2,kt,Tt)).attr("fill",Y.confusion).attr("fill-opacity",0.5);let ft=P.append("g").attr("class","cynefin-labels");for(let d of st){let s=et[d];ft.append("text").attr("class","cynefinDomainLabel").attr("x",s.cx).attr("y",h?s.cy-30:s.cy).attr("text-anchor","middle").attr("dominant-baseline","middle").text(d.charAt(0).toUpperCase()+d.slice(1))}if(ft.append("text").attr("class","cynefinDomainLabel").attr("x",c/2).attr("y",h?m/2-10:m/2).attr("text-anchor","middle").attr("dominant-baseline","middle").text("Confusion"),h){let d=P.append("g").attr("class","cynefin-subtitles");for(let s of st){let g=et[s],u=gt[s];d.append("text").attr("class","cynefinSubtitle").attr("x",g.cx).attr("y",g.cy-10).attr("text-anchor","middle").attr("dominant-baseline","middle").text(u.model),d.append("text").attr("class","cynefinSubtitle").attr("x",g.cx).attr("y",g.cy+5).attr("text-anchor","middle").attr("dominant-baseline","middle").text(u.practice)}d.append("text").attr("class","cynefinSubtitle").attr("x",c/2).attr("y",m/2+8).attr("text-anchor","middle").attr("dominant-baseline","middle").text(gt.confusion.practice)}let mt=P.append("g").attr("class","cynefin-items"),I=26,pt=10,At=["complex","complicated","chaotic","clear","confusion"];for(let d of At){let s=p.get(d);if(!s||s.items.length===0)continue;let g=et[d],u=d==="confusion",O=s.items,X=0;if(u&&s.items.length>lt)X=s.items.length-lt,O=s.items.slice(0,lt);let W;if(u){let w=h?22:14;W=g.cy+w}else W=g.cy+(h?25:15);if([...O].forEach((w,_)=>{let k=W+_*(I+4),G=mt.append("g"),j=G.append("text").attr("class","cynefinItemText").attr("x",0).attr("y",I/2).attr("text-anchor","middle").attr("dominant-baseline","central").text(w.label),v=w.label.length*7,b=j.node();if(b&&typeof b.getBBox==="function"){let rt=b.getBBox();if(rt.width>0)v=rt.width}let B=v+pt*2,q=g.cx-B/2;G.attr("transform",`translate(${q}, ${k})`),G.insert("rect","text").attr("class","cynefinItem").attr("x",0).attr("y",0).attr("width",B).attr("height",I).attr("rx",4).attr("ry",4).attr("fill",Y[d]).attr("fill-opacity",0.95),j.attr("x",B/2).attr("y",I/2)}),X>0){let w=W+O.length*(I+4),_=`+${X} more`,k=mt.append("g"),G=k.append("text").attr("class","cynefinItemText").attr("x",0).attr("y",I/2).attr("text-anchor","middle").attr("dominant-baseline","central").text(_),j=_.length*7,v=G.node();if(v&&typeof v.getBBox==="function"){let q=v.getBBox();if(q.width>0)j=q.width}let b=j+pt*2,B=g.cx-b/2;k.attr("transform",`translate(${B}, ${w})`),k.insert("rect","text").attr("class","cynefinItemOverflow").attr("x",0).attr("y",0).attr("width",b).attr("height",I).attr("rx",4).attr("ry",4).attr("fill",Y[d]).attr("fill-opacity",0.6),G.attr("x",b/2).attr("y",I/2)}}if(at.length>0){let d=z.select("defs").empty()?z.append("defs"):z.select("defs"),s=`cynefin-arrow-${n}`;d.append("marker").attr("id",s).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","cynefinArrowHead");let g=P.append("g").attr("class","cynefin-arrows");at.forEach((u)=>{let O=et[u.from],X=et[u.to];if(!O||!X)return;if(u.from===u.to){a.warn(`Cynefin renderer: skipping self-loop on domain "${u.from}"`);return}let{cx:W,cy:w}=O,{cx:_,cy:k}=X,G=(W+_)/2,j=(w+k)/2,v=_-W,b=k-w,B=Math.sqrt(v*v+b*b),q=B*0.15,rt=-b/B,Bt=v/B,yt=G+rt*q,ut=j+Bt*q;if(g.append("path").attr("class","cynefinArrowLine").attr("d",`M${W},${w} Q${yt},${ut} ${_},${k}`).attr("fill","none").attr("marker-end",`url(#${s})`),u.label)g.append("text").attr("class","cynefinArrowLabel").attr("x",yt).attr("y",ut-6).attr("text-anchor","middle").attr("dominant-baseline","auto").text(u.label)})}if(Q)P.append("text").attr("class","cynefinTitle").attr("x",c/2).attr("y",-D/2).attr("text-anchor","middle").attr("dominant-baseline","middle").text(Q)},"draw"),_t={draw:Vt},Et=t(()=>{let e=we(),n=x();return U(e,n.themeVariables).cynefin},"getCynefinTheme"),Ht=t(()=>{let e=Et();return`
2
2
  .cynefinDomain {
3
3
  stroke: none;
4
4
  }