kaizenai 0.12.0 → 0.13.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.
Files changed (196) hide show
  1. package/dist/client/assets/FeatureOverviewPage-BxSLmFjE.js +6 -0
  2. package/dist/client/assets/FeatureOverviewPage-BxSLmFjE.js.br +0 -0
  3. package/dist/client/assets/FeatureOverviewPage-BxSLmFjE.js.gz +0 -0
  4. package/dist/client/assets/{LocalProjectsPage-FaTau-jU.js → LocalProjectsPage-zbE9M1lS.js} +2 -2
  5. package/dist/client/assets/LocalProjectsPage-zbE9M1lS.js.br +0 -0
  6. package/dist/client/assets/LocalProjectsPage-zbE9M1lS.js.gz +0 -0
  7. package/dist/client/assets/SettingsPage-B1hOripb.js +51 -0
  8. package/dist/client/assets/SettingsPage-B1hOripb.js.br +0 -0
  9. package/dist/client/assets/SettingsPage-B1hOripb.js.gz +0 -0
  10. package/dist/client/assets/_baseUniq-C2w2LY4t.js +1 -0
  11. package/dist/client/assets/_baseUniq-C2w2LY4t.js.br +0 -0
  12. package/dist/client/assets/_baseUniq-C2w2LY4t.js.gz +0 -0
  13. package/dist/client/assets/arc-kI82hC2U.js +1 -0
  14. package/dist/client/assets/arc-kI82hC2U.js.br +0 -0
  15. package/dist/client/assets/arc-kI82hC2U.js.gz +0 -0
  16. package/dist/client/assets/architectureDiagram-Q4EWVU46-Dt-scLmE.js +36 -0
  17. package/dist/client/assets/architectureDiagram-Q4EWVU46-Dt-scLmE.js.br +0 -0
  18. package/dist/client/assets/architectureDiagram-Q4EWVU46-Dt-scLmE.js.gz +0 -0
  19. package/dist/client/assets/blockDiagram-DXYQGD6D-Ceg04fxp.js +132 -0
  20. package/dist/client/assets/blockDiagram-DXYQGD6D-Ceg04fxp.js.br +0 -0
  21. package/dist/client/assets/blockDiagram-DXYQGD6D-Ceg04fxp.js.gz +0 -0
  22. package/dist/client/assets/c4Diagram-AHTNJAMY-D1qS_y2O.js +10 -0
  23. package/dist/client/assets/c4Diagram-AHTNJAMY-D1qS_y2O.js.br +0 -0
  24. package/dist/client/assets/c4Diagram-AHTNJAMY-D1qS_y2O.js.gz +0 -0
  25. package/dist/client/assets/channel-DFe4698G.js +1 -0
  26. package/dist/client/assets/chunk-4BX2VUAB-BzCF8Bhx.js +1 -0
  27. package/dist/client/assets/chunk-4BX2VUAB-BzCF8Bhx.js.br +0 -0
  28. package/dist/client/assets/chunk-4BX2VUAB-BzCF8Bhx.js.gz +0 -0
  29. package/dist/client/assets/chunk-4TB4RGXK-I9HBW3GS.js +206 -0
  30. package/dist/client/assets/chunk-4TB4RGXK-I9HBW3GS.js.br +0 -0
  31. package/dist/client/assets/chunk-4TB4RGXK-I9HBW3GS.js.gz +0 -0
  32. package/dist/client/assets/chunk-55IACEB6-DBrZB3xA.js +1 -0
  33. package/dist/client/assets/chunk-55IACEB6-DBrZB3xA.js.br +0 -0
  34. package/dist/client/assets/chunk-55IACEB6-DBrZB3xA.js.gz +0 -0
  35. package/dist/client/assets/chunk-EDXVE4YY-DIwETEEu.js +1 -0
  36. package/dist/client/assets/chunk-EDXVE4YY-DIwETEEu.js.br +4 -0
  37. package/dist/client/assets/chunk-EDXVE4YY-DIwETEEu.js.gz +0 -0
  38. package/dist/client/assets/chunk-FMBD7UC4-o4TABTop.js +15 -0
  39. package/dist/client/assets/chunk-FMBD7UC4-o4TABTop.js.br +3 -0
  40. package/dist/client/assets/chunk-FMBD7UC4-o4TABTop.js.gz +0 -0
  41. package/dist/client/assets/chunk-OYMX7WX6-DyxvSos-.js +231 -0
  42. package/dist/client/assets/chunk-OYMX7WX6-DyxvSos-.js.br +0 -0
  43. package/dist/client/assets/chunk-OYMX7WX6-DyxvSos-.js.gz +0 -0
  44. package/dist/client/assets/chunk-QZHKN3VN-WCcD-5Oe.js +1 -0
  45. package/dist/client/assets/chunk-QZHKN3VN-WCcD-5Oe.js.br +0 -0
  46. package/dist/client/assets/chunk-QZHKN3VN-WCcD-5Oe.js.gz +0 -0
  47. package/dist/client/assets/chunk-YZCP3GAM-BQzJEIQ2.js +1 -0
  48. package/dist/client/assets/chunk-YZCP3GAM-BQzJEIQ2.js.br +0 -0
  49. package/dist/client/assets/chunk-YZCP3GAM-BQzJEIQ2.js.gz +0 -0
  50. package/dist/client/assets/classDiagram-6PBFFD2Q-W3DhPKCy.js +1 -0
  51. package/dist/client/assets/classDiagram-6PBFFD2Q-W3DhPKCy.js.br +2 -0
  52. package/dist/client/assets/classDiagram-6PBFFD2Q-W3DhPKCy.js.gz +0 -0
  53. package/dist/client/assets/classDiagram-v2-HSJHXN6E-W3DhPKCy.js +1 -0
  54. package/dist/client/assets/classDiagram-v2-HSJHXN6E-W3DhPKCy.js.br +2 -0
  55. package/dist/client/assets/classDiagram-v2-HSJHXN6E-W3DhPKCy.js.gz +0 -0
  56. package/dist/client/assets/clone-OEkyv13U.js +1 -0
  57. package/dist/client/assets/cose-bilkent-S5V4N54A-CB2BC0Fz.js +1 -0
  58. package/dist/client/assets/cose-bilkent-S5V4N54A-CB2BC0Fz.js.br +0 -0
  59. package/dist/client/assets/cose-bilkent-S5V4N54A-CB2BC0Fz.js.gz +0 -0
  60. package/dist/client/assets/cytoscape.esm-cJLYqCaY.js +331 -0
  61. package/dist/client/assets/cytoscape.esm-cJLYqCaY.js.br +0 -0
  62. package/dist/client/assets/cytoscape.esm-cJLYqCaY.js.gz +0 -0
  63. package/dist/client/assets/dagre-KV5264BT-GM3o4wKD.js +4 -0
  64. package/dist/client/assets/dagre-KV5264BT-GM3o4wKD.js.br +0 -0
  65. package/dist/client/assets/dagre-KV5264BT-GM3o4wKD.js.gz +0 -0
  66. package/dist/client/assets/defaultLocale-DX6XiGOO.js +1 -0
  67. package/dist/client/assets/defaultLocale-DX6XiGOO.js.br +0 -0
  68. package/dist/client/assets/defaultLocale-DX6XiGOO.js.gz +0 -0
  69. package/dist/client/assets/diagram-5BDNPKRD-BR7a9HbO.js +10 -0
  70. package/dist/client/assets/diagram-5BDNPKRD-BR7a9HbO.js.br +0 -0
  71. package/dist/client/assets/diagram-5BDNPKRD-BR7a9HbO.js.gz +0 -0
  72. package/dist/client/assets/diagram-G4DWMVQ6-jvXNcST5.js +24 -0
  73. package/dist/client/assets/diagram-G4DWMVQ6-jvXNcST5.js.br +0 -0
  74. package/dist/client/assets/diagram-G4DWMVQ6-jvXNcST5.js.gz +0 -0
  75. package/dist/client/assets/diagram-MMDJMWI5-IKtd4IJw.js +43 -0
  76. package/dist/client/assets/diagram-MMDJMWI5-IKtd4IJw.js.br +0 -0
  77. package/dist/client/assets/diagram-MMDJMWI5-IKtd4IJw.js.gz +0 -0
  78. package/dist/client/assets/diagram-TYMM5635-kaGAX7fz.js +24 -0
  79. package/dist/client/assets/diagram-TYMM5635-kaGAX7fz.js.br +0 -0
  80. package/dist/client/assets/diagram-TYMM5635-kaGAX7fz.js.gz +0 -0
  81. package/dist/client/assets/erDiagram-SMLLAGMA-DgSI8NcK.js +85 -0
  82. package/dist/client/assets/erDiagram-SMLLAGMA-DgSI8NcK.js.br +0 -0
  83. package/dist/client/assets/erDiagram-SMLLAGMA-DgSI8NcK.js.gz +0 -0
  84. package/dist/client/assets/{eye-l365F6h6.js → eye-Chg9E8Pp.js} +1 -1
  85. package/dist/client/assets/eye-Chg9E8Pp.js.br +0 -0
  86. package/dist/client/assets/eye-Chg9E8Pp.js.gz +0 -0
  87. package/dist/client/assets/flowDiagram-DWJPFMVM-BIHN8zd-.js +162 -0
  88. package/dist/client/assets/flowDiagram-DWJPFMVM-BIHN8zd-.js.br +0 -0
  89. package/dist/client/assets/flowDiagram-DWJPFMVM-BIHN8zd-.js.gz +0 -0
  90. package/dist/client/assets/ganttDiagram-T4ZO3ILL-CxIhVwuV.js +292 -0
  91. package/dist/client/assets/ganttDiagram-T4ZO3ILL-CxIhVwuV.js.br +0 -0
  92. package/dist/client/assets/ganttDiagram-T4ZO3ILL-CxIhVwuV.js.gz +0 -0
  93. package/dist/client/assets/gitGraphDiagram-UUTBAWPF-a31qmh2C.js +106 -0
  94. package/dist/client/assets/gitGraphDiagram-UUTBAWPF-a31qmh2C.js.br +0 -0
  95. package/dist/client/assets/gitGraphDiagram-UUTBAWPF-a31qmh2C.js.gz +0 -0
  96. package/dist/client/assets/graph-DAJmXGHa.js +1 -0
  97. package/dist/client/assets/graph-DAJmXGHa.js.br +0 -0
  98. package/dist/client/assets/graph-DAJmXGHa.js.gz +0 -0
  99. package/dist/client/assets/{index-BNHZTMos.js → index-BZRkF5A6.js} +181 -175
  100. package/dist/client/assets/index-BZRkF5A6.js.br +0 -0
  101. package/dist/client/assets/index-BZRkF5A6.js.gz +0 -0
  102. package/dist/client/assets/index-CuRj9_7h.css +32 -0
  103. package/dist/client/assets/index-CuRj9_7h.css.br +0 -0
  104. package/dist/client/assets/index-CuRj9_7h.css.gz +0 -0
  105. package/dist/client/assets/infoDiagram-42DDH7IO-cLNxh5KZ.js +2 -0
  106. package/dist/client/assets/infoDiagram-42DDH7IO-cLNxh5KZ.js.br +0 -0
  107. package/dist/client/assets/infoDiagram-42DDH7IO-cLNxh5KZ.js.gz +0 -0
  108. package/dist/client/assets/init-Gi6I4Gst.js +1 -0
  109. package/dist/client/assets/init-Gi6I4Gst.js.br +0 -0
  110. package/dist/client/assets/init-Gi6I4Gst.js.gz +0 -0
  111. package/dist/client/assets/ishikawaDiagram-UXIWVN3A-CcxhP4Br.js +70 -0
  112. package/dist/client/assets/ishikawaDiagram-UXIWVN3A-CcxhP4Br.js.br +0 -0
  113. package/dist/client/assets/ishikawaDiagram-UXIWVN3A-CcxhP4Br.js.gz +0 -0
  114. package/dist/client/assets/journeyDiagram-VCZTEJTY-D46KbIti.js +139 -0
  115. package/dist/client/assets/journeyDiagram-VCZTEJTY-D46KbIti.js.br +0 -0
  116. package/dist/client/assets/journeyDiagram-VCZTEJTY-D46KbIti.js.gz +0 -0
  117. package/dist/client/assets/kanban-definition-6JOO6SKY-Dybz1m9J.js +89 -0
  118. package/dist/client/assets/kanban-definition-6JOO6SKY-Dybz1m9J.js.br +0 -0
  119. package/dist/client/assets/kanban-definition-6JOO6SKY-Dybz1m9J.js.gz +0 -0
  120. package/dist/client/assets/katex-DkKDou_j.js +257 -0
  121. package/dist/client/assets/katex-DkKDou_j.js.br +0 -0
  122. package/dist/client/assets/katex-DkKDou_j.js.gz +0 -0
  123. package/dist/client/assets/layout-C-M8Av8W.js +1 -0
  124. package/dist/client/assets/layout-C-M8Av8W.js.br +0 -0
  125. package/dist/client/assets/layout-C-M8Av8W.js.gz +0 -0
  126. package/dist/client/assets/linear-C3yBilRF.js +1 -0
  127. package/dist/client/assets/linear-C3yBilRF.js.br +0 -0
  128. package/dist/client/assets/linear-C3yBilRF.js.gz +0 -0
  129. package/dist/client/assets/mermaid.core-Dsp_nHq1.js +309 -0
  130. package/dist/client/assets/mermaid.core-Dsp_nHq1.js.br +0 -0
  131. package/dist/client/assets/mermaid.core-Dsp_nHq1.js.gz +0 -0
  132. package/dist/client/assets/min-BSlwwCfB.js +1 -0
  133. package/dist/client/assets/min-BSlwwCfB.js.br +0 -0
  134. package/dist/client/assets/min-BSlwwCfB.js.gz +0 -0
  135. package/dist/client/assets/mindmap-definition-QFDTVHPH-XtKE_1_l.js +96 -0
  136. package/dist/client/assets/mindmap-definition-QFDTVHPH-XtKE_1_l.js.br +0 -0
  137. package/dist/client/assets/mindmap-definition-QFDTVHPH-XtKE_1_l.js.gz +0 -0
  138. package/dist/client/assets/ordinal-Cboi1Yqb.js +1 -0
  139. package/dist/client/assets/ordinal-Cboi1Yqb.js.br +0 -0
  140. package/dist/client/assets/ordinal-Cboi1Yqb.js.gz +0 -0
  141. package/dist/client/assets/pieDiagram-DEJITSTG-qet2Ts4X.js +30 -0
  142. package/dist/client/assets/pieDiagram-DEJITSTG-qet2Ts4X.js.br +0 -0
  143. package/dist/client/assets/pieDiagram-DEJITSTG-qet2Ts4X.js.gz +0 -0
  144. package/dist/client/assets/quadrantDiagram-34T5L4WZ-mkJwXSt4.js +7 -0
  145. package/dist/client/assets/quadrantDiagram-34T5L4WZ-mkJwXSt4.js.br +0 -0
  146. package/dist/client/assets/quadrantDiagram-34T5L4WZ-mkJwXSt4.js.gz +0 -0
  147. package/dist/client/assets/requirementDiagram-MS252O5E-DI4iiflo.js +84 -0
  148. package/dist/client/assets/requirementDiagram-MS252O5E-DI4iiflo.js.br +0 -0
  149. package/dist/client/assets/requirementDiagram-MS252O5E-DI4iiflo.js.gz +0 -0
  150. package/dist/client/assets/sankeyDiagram-XADWPNL6-B7UGXnbh.js +10 -0
  151. package/dist/client/assets/sankeyDiagram-XADWPNL6-B7UGXnbh.js.br +0 -0
  152. package/dist/client/assets/sankeyDiagram-XADWPNL6-B7UGXnbh.js.gz +0 -0
  153. package/dist/client/assets/sequenceDiagram-FGHM5R23-EwEEFH2U.js +157 -0
  154. package/dist/client/assets/sequenceDiagram-FGHM5R23-EwEEFH2U.js.br +0 -0
  155. package/dist/client/assets/sequenceDiagram-FGHM5R23-EwEEFH2U.js.gz +0 -0
  156. package/dist/client/assets/stateDiagram-FHFEXIEX-CEyL8vFk.js +1 -0
  157. package/dist/client/assets/stateDiagram-FHFEXIEX-CEyL8vFk.js.br +0 -0
  158. package/dist/client/assets/stateDiagram-FHFEXIEX-CEyL8vFk.js.gz +0 -0
  159. package/dist/client/assets/stateDiagram-v2-QKLJ7IA2-CKPSFeVE.js +1 -0
  160. package/dist/client/assets/stateDiagram-v2-QKLJ7IA2-CKPSFeVE.js.br +0 -0
  161. package/dist/client/assets/stateDiagram-v2-QKLJ7IA2-CKPSFeVE.js.gz +0 -0
  162. package/dist/client/assets/timeline-definition-GMOUNBTQ-BE3n-S3r.js +120 -0
  163. package/dist/client/assets/timeline-definition-GMOUNBTQ-BE3n-S3r.js.br +0 -0
  164. package/dist/client/assets/timeline-definition-GMOUNBTQ-BE3n-S3r.js.gz +0 -0
  165. package/dist/client/assets/vennDiagram-DHZGUBPP-SvGW77xZ.js +34 -0
  166. package/dist/client/assets/vennDiagram-DHZGUBPP-SvGW77xZ.js.br +0 -0
  167. package/dist/client/assets/vennDiagram-DHZGUBPP-SvGW77xZ.js.gz +0 -0
  168. package/dist/client/assets/wardley-RL74JXVD-BtIcY1Az.js +162 -0
  169. package/dist/client/assets/wardley-RL74JXVD-BtIcY1Az.js.br +0 -0
  170. package/dist/client/assets/wardley-RL74JXVD-BtIcY1Az.js.gz +0 -0
  171. package/dist/client/assets/wardleyDiagram-NUSXRM2D-BCW7yeFk.js +20 -0
  172. package/dist/client/assets/wardleyDiagram-NUSXRM2D-BCW7yeFk.js.br +0 -0
  173. package/dist/client/assets/wardleyDiagram-NUSXRM2D-BCW7yeFk.js.gz +0 -0
  174. package/dist/client/assets/xychartDiagram-5P7HB3ND-hVj249NG.js +7 -0
  175. package/dist/client/assets/xychartDiagram-5P7HB3ND-hVj249NG.js.br +0 -0
  176. package/dist/client/assets/xychartDiagram-5P7HB3ND-hVj249NG.js.gz +0 -0
  177. package/dist/client/index.html +2 -2
  178. package/dist/server/build-target.json +1 -1
  179. package/dist/server/cli-supervisor.js +2 -1
  180. package/dist/server/cli.js +21294 -20523
  181. package/package.json +2 -1
  182. package/dist/client/assets/FeatureOverviewPage-DxI5AEWA.js +0 -11
  183. package/dist/client/assets/FeatureOverviewPage-DxI5AEWA.js.br +0 -0
  184. package/dist/client/assets/FeatureOverviewPage-DxI5AEWA.js.gz +0 -0
  185. package/dist/client/assets/LocalProjectsPage-FaTau-jU.js.br +0 -0
  186. package/dist/client/assets/LocalProjectsPage-FaTau-jU.js.gz +0 -0
  187. package/dist/client/assets/SettingsPage-BXc56ART.js +0 -51
  188. package/dist/client/assets/SettingsPage-BXc56ART.js.br +0 -0
  189. package/dist/client/assets/SettingsPage-BXc56ART.js.gz +0 -0
  190. package/dist/client/assets/eye-l365F6h6.js.br +0 -0
  191. package/dist/client/assets/eye-l365F6h6.js.gz +0 -0
  192. package/dist/client/assets/index-BNHZTMos.js.br +0 -0
  193. package/dist/client/assets/index-BNHZTMos.js.gz +0 -0
  194. package/dist/client/assets/index-nHIRve5t.css +0 -32
  195. package/dist/client/assets/index-nHIRve5t.css.br +0 -0
  196. package/dist/client/assets/index-nHIRve5t.css.gz +0 -0
@@ -0,0 +1,51 @@
1
+ import{c as Ve,a as Ae,i as Re,a3 as fr,k as n,s as dt,d as dn,a4 as hr,a5 as Yt,a6 as pr,a7 as rt,a8 as Sa,I as ze,a9 as ie,aa as oe,ab as ue,ac as le,ad as yi,B as ce,_ as ki,ae as M,af as ji,O as wi,ag as yt,ah as _i,ai as un,T as Ta,u as gr,b as xr,r as k,g as Me,h as Be,l as Oe,aj as Dt,ak as br,al as at,am as Ni,L as we,an as Js,ao as vr,ap as Ci,aq as Xs,ar as en,as as Si,at as Ti,e as Ii,a1 as Ri,a2 as Ei,au as Ai,av as bs,Q as Pi,aw as Je,ax as Xe,ay as et,U as Ie,az as tt,aA as Ia,aB as Oi,aC as Di,aD as Jt,aE as Ra,aF as Li,aG as he,J as Ea,aH as tn,aI as Aa,C as Mi,aJ as Bi,n as Ui,$ as Fi,E as zi,Z as $i,X as Vi,Y as Zi,aK as Ki,aL as qi,aM as Zs,aN as Ks,aO as qs,aP as Hi,aQ as Pa,aR as Oa,aS as Da,aT as Wi,aU as La,aV as Ma,aW as Gi,aX as vs,aY as ys,aZ as Qi,a_ as Pt,a$ as Yi,b0 as st,b1 as Ji,b2 as Xi,b3 as Ba,b4 as Ua,b5 as eo,b6 as to,b7 as so,b8 as Fa}from"./index-BZRkF5A6.js";import{E as za}from"./eye-Chg9E8Pp.js";/**
2
+ * @license lucide-react v0.562.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const no=[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["path",{d:"M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326",key:"11g9vi"}]],ao=Ve("bell",no);/**
7
+ * @license lucide-react v0.562.0 - ISC
8
+ *
9
+ * This source code is licensed under the ISC license.
10
+ * See the LICENSE file in the root directory of this source tree.
11
+ */const ro=[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"M18 17V9",key:"2bz60n"}],["path",{d:"M13 17V5",key:"1frdt8"}],["path",{d:"M8 17v-3",key:"17ska0"}]],yr=Ve("chart-column",ro);/**
12
+ * @license lucide-react v0.562.0 - ISC
13
+ *
14
+ * This source code is licensed under the ISC license.
15
+ * See the LICENSE file in the root directory of this source tree.
16
+ */const io=[["path",{d:"M15 6v12a3 3 0 1 0 3-3H6a3 3 0 1 0 3 3V6a3 3 0 1 0-3 3h12a3 3 0 1 0-3-3",key:"11bfej"}]],oo=Ve("command",io);/**
17
+ * @license lucide-react v0.562.0 - ISC
18
+ *
19
+ * This source code is licensed under the ISC license.
20
+ * See the LICENSE file in the root directory of this source tree.
21
+ */const lo=[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]],$a=Ve("eye-off",lo);/**
22
+ * @license lucide-react v0.562.0 - ISC
23
+ *
24
+ * This source code is licensed under the ISC license.
25
+ * See the LICENSE file in the root directory of this source tree.
26
+ */const co=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]],uo=Ve("info",co);/**
27
+ * @license lucide-react v0.562.0 - ISC
28
+ *
29
+ * This source code is licensed under the ISC license.
30
+ * See the LICENSE file in the root directory of this source tree.
31
+ */const mo=[["path",{d:"M14 14a2 2 0 0 0 2-2V8h-2",key:"1r06pg"}],["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}],["path",{d:"M8 14a2 2 0 0 0 2-2V8H8",key:"1jzu5j"}]],fo=Ve("message-square-quote",mo);/**
32
+ * @license lucide-react v0.562.0 - ISC
33
+ *
34
+ * This source code is licensed under the ISC license.
35
+ * See the LICENSE file in the root directory of this source tree.
36
+ */const ho=[["path",{d:"M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z",key:"e79jfc"}],["circle",{cx:"13.5",cy:"6.5",r:".5",fill:"currentColor",key:"1okk4w"}],["circle",{cx:"17.5",cy:"10.5",r:".5",fill:"currentColor",key:"f64h9f"}],["circle",{cx:"6.5",cy:"12.5",r:".5",fill:"currentColor",key:"qy21gx"}],["circle",{cx:"8.5",cy:"7.5",r:".5",fill:"currentColor",key:"fotxhn"}]],Va=Ve("palette",ho);/**
37
+ * @license lucide-react v0.562.0 - ISC
38
+ *
39
+ * This source code is licensed under the ISC license.
40
+ * See the LICENSE file in the root directory of this source tree.
41
+ */const po=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]],kr=Ve("rotate-ccw",po);/**
42
+ * @license lucide-react v0.562.0 - ISC
43
+ *
44
+ * This source code is licensed under the ISC license.
45
+ * See the LICENSE file in the root directory of this source tree.
46
+ */const go=[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]],xo=Ve("settings-2",go);/**
47
+ * @license lucide-react v0.562.0 - ISC
48
+ *
49
+ * This source code is licensed under the ISC license.
50
+ * See the LICENSE file in the root directory of this source tree.
51
+ */const bo=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]],vo=Ve("shield",bo),yo="https://kaizenai.codes";function ko(t){return yo}function jo(t){return ko()}function wo(t,e){return`${((t==null?void 0:t.trim())||jo()).replace(/\/+$/,"")}/dashboard`}function qe(t){const e=Ae.c(18);let a,s,o,i,l,d;e[0]!==t?({children:a,className:s,icon:o,type:l,variant:d,...i}=t,e[0]=t,e[1]=a,e[2]=s,e[3]=o,e[4]=i,e[5]=l,e[6]=d):(a=e[1],s=e[2],o=e[3],i=e[4],l=e[5],d=e[6]);const u=l===void 0?"button":l,m=d===void 0?"outline":d;let c;e[7]!==s||e[8]!==m?(c=Re(fr({variant:m,size:"sm"}),"h-auto gap-1.5 px-3 py-1.5",s),e[7]=s,e[8]=m,e[9]=c):c=e[9];let g;e[10]!==a?(g=a?n.jsx("span",{children:a}):null,e[10]=a,e[11]=g):g=e[11];let p;return e[12]!==o||e[13]!==i||e[14]!==c||e[15]!==g||e[16]!==u?(p=n.jsxs("button",{type:u,className:c,...i,children:[o,g]}),e[12]=o,e[13]=i,e[14]=c,e[15]=g,e[16]=u,e[17]=p):p=e[17],p}var ee;(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function a(o){throw new Error}t.assertNever=a,t.arrayToEnum=o=>{const i={};for(const l of o)i[l]=l;return i},t.getValidEnumValues=o=>{const i=t.objectKeys(o).filter(d=>typeof o[o[d]]!="number"),l={};for(const d of i)l[d]=o[d];return t.objectValues(l)},t.objectValues=o=>t.objectKeys(o).map(function(i){return o[i]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{const i=[];for(const l in o)Object.prototype.hasOwnProperty.call(o,l)&&i.push(l);return i},t.find=(o,i)=>{for(const l of o)if(i(l))return l},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function s(o,i=" | "){return o.map(l=>typeof l=="string"?`'${l}'`:l).join(i)}t.joinValues=s,t.jsonStringifyReplacer=(o,i)=>typeof i=="bigint"?i.toString():i})(ee||(ee={}));var Za;(function(t){t.mergeShapes=(e,a)=>({...e,...a})})(Za||(Za={}));const w=ee.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),it=t=>{switch(typeof t){case"undefined":return w.undefined;case"string":return w.string;case"number":return Number.isNaN(t)?w.nan:w.number;case"boolean":return w.boolean;case"function":return w.function;case"bigint":return w.bigint;case"symbol":return w.symbol;case"object":return Array.isArray(t)?w.array:t===null?w.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?w.promise:typeof Map<"u"&&t instanceof Map?w.map:typeof Set<"u"&&t instanceof Set?w.set:typeof Date<"u"&&t instanceof Date?w.date:w.object;default:return w.unknown}},b=ee.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class He extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=s=>{this.issues=[...this.issues,s]},this.addIssues=(s=[])=>{this.issues=[...this.issues,...s]};const a=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,a):this.__proto__=a,this.name="ZodError",this.issues=e}format(e){const a=e||function(i){return i.message},s={_errors:[]},o=i=>{for(const l of i.issues)if(l.code==="invalid_union")l.unionErrors.map(o);else if(l.code==="invalid_return_type")o(l.returnTypeError);else if(l.code==="invalid_arguments")o(l.argumentsError);else if(l.path.length===0)s._errors.push(a(l));else{let d=s,u=0;for(;u<l.path.length;){const m=l.path[u];u===l.path.length-1?(d[m]=d[m]||{_errors:[]},d[m]._errors.push(a(l))):d[m]=d[m]||{_errors:[]},d=d[m],u++}}};return o(this),s}static assert(e){if(!(e instanceof He))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,ee.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=a=>a.message){const a={},s=[];for(const o of this.issues)if(o.path.length>0){const i=o.path[0];a[i]=a[i]||[],a[i].push(e(o))}else s.push(e(o));return{formErrors:s,fieldErrors:a}}get formErrors(){return this.flatten()}}He.create=t=>new He(t);const sn=(t,e)=>{let a;switch(t.code){case b.invalid_type:t.received===w.undefined?a="Required":a=`Expected ${t.expected}, received ${t.received}`;break;case b.invalid_literal:a=`Invalid literal value, expected ${JSON.stringify(t.expected,ee.jsonStringifyReplacer)}`;break;case b.unrecognized_keys:a=`Unrecognized key(s) in object: ${ee.joinValues(t.keys,", ")}`;break;case b.invalid_union:a="Invalid input";break;case b.invalid_union_discriminator:a=`Invalid discriminator value. Expected ${ee.joinValues(t.options)}`;break;case b.invalid_enum_value:a=`Invalid enum value. Expected ${ee.joinValues(t.options)}, received '${t.received}'`;break;case b.invalid_arguments:a="Invalid function arguments";break;case b.invalid_return_type:a="Invalid function return type";break;case b.invalid_date:a="Invalid date";break;case b.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(a=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(a=`${a} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?a=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?a=`Invalid input: must end with "${t.validation.endsWith}"`:ee.assertNever(t.validation):t.validation!=="regex"?a=`Invalid ${t.validation}`:a="Invalid";break;case b.too_small:t.type==="array"?a=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?a=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?a=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?a=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?a=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:a="Invalid input";break;case b.too_big:t.type==="array"?a=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?a=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?a=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?a=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?a=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:a="Invalid input";break;case b.custom:a="Invalid input";break;case b.invalid_intersection_types:a="Intersection results could not be merged";break;case b.not_multiple_of:a=`Number must be a multiple of ${t.multipleOf}`;break;case b.not_finite:a="Number must be finite";break;default:a=e.defaultError,ee.assertNever(t)}return{message:a}};let _o=sn;function No(){return _o}const Co=t=>{const{data:e,path:a,errorMaps:s,issueData:o}=t,i=[...a,...o.path||[]],l={...o,path:i};if(o.message!==void 0)return{...o,path:i,message:o.message};let d="";const u=s.filter(m=>!!m).slice().reverse();for(const m of u)d=m(l,{data:e,defaultError:d}).message;return{...o,path:i,message:d}};function y(t,e){const a=No(),s=Co({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,a,a===sn?void 0:sn].filter(o=>!!o)});t.common.issues.push(s)}class Ee{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,a){const s=[];for(const o of a){if(o.status==="aborted")return B;o.status==="dirty"&&e.dirty(),s.push(o.value)}return{status:e.value,value:s}}static async mergeObjectAsync(e,a){const s=[];for(const o of a){const i=await o.key,l=await o.value;s.push({key:i,value:l})}return Ee.mergeObjectSync(e,s)}static mergeObjectSync(e,a){const s={};for(const o of a){const{key:i,value:l}=o;if(i.status==="aborted"||l.status==="aborted")return B;i.status==="dirty"&&e.dirty(),l.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof l.value<"u"||o.alwaysSet)&&(s[i.value]=l.value)}return{status:e.value,value:s}}}const B=Object.freeze({status:"aborted"}),es=t=>({status:"dirty",value:t}),De=t=>({status:"valid",value:t}),Ka=t=>t.status==="aborted",qa=t=>t.status==="dirty",Mt=t=>t.status==="valid",js=t=>typeof Promise<"u"&&t instanceof Promise;var _;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e==null?void 0:e.message})(_||(_={}));class ut{constructor(e,a,s,o){this._cachedPath=[],this.parent=e,this.data=a,this._path=s,this._key=o}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const Ha=(t,e)=>{if(Mt(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const a=new He(t.common.issues);return this._error=a,this._error}}};function W(t){if(!t)return{};const{errorMap:e,invalid_type_error:a,required_error:s,description:o}=t;if(e&&(a||s))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(l,d)=>{const{message:u}=t;return l.code==="invalid_enum_value"?{message:u??d.defaultError}:typeof d.data>"u"?{message:u??s??d.defaultError}:l.code!=="invalid_type"?{message:d.defaultError}:{message:u??a??d.defaultError}},description:o}}class X{get description(){return this._def.description}_getType(e){return it(e.data)}_getOrReturnCtx(e,a){return a||{common:e.parent.common,data:e.data,parsedType:it(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Ee,ctx:{common:e.parent.common,data:e.data,parsedType:it(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const a=this._parse(e);if(js(a))throw new Error("Synchronous parse encountered promise.");return a}_parseAsync(e){const a=this._parse(e);return Promise.resolve(a)}parse(e,a){const s=this.safeParse(e,a);if(s.success)return s.data;throw s.error}safeParse(e,a){const s={common:{issues:[],async:(a==null?void 0:a.async)??!1,contextualErrorMap:a==null?void 0:a.errorMap},path:(a==null?void 0:a.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:it(e)},o=this._parseSync({data:e,path:s.path,parent:s});return Ha(s,o)}"~validate"(e){var s,o;const a={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:it(e)};if(!this["~standard"].async)try{const i=this._parseSync({data:e,path:[],parent:a});return Mt(i)?{value:i.value}:{issues:a.common.issues}}catch(i){(o=(s=i==null?void 0:i.message)==null?void 0:s.toLowerCase())!=null&&o.includes("encountered")&&(this["~standard"].async=!0),a.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:a}).then(i=>Mt(i)?{value:i.value}:{issues:a.common.issues})}async parseAsync(e,a){const s=await this.safeParseAsync(e,a);if(s.success)return s.data;throw s.error}async safeParseAsync(e,a){const s={common:{issues:[],contextualErrorMap:a==null?void 0:a.errorMap,async:!0},path:(a==null?void 0:a.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:it(e)},o=this._parse({data:e,path:s.path,parent:s}),i=await(js(o)?o:Promise.resolve(o));return Ha(s,i)}refine(e,a){const s=o=>typeof a=="string"||typeof a>"u"?{message:a}:typeof a=="function"?a(o):a;return this._refinement((o,i)=>{const l=e(o),d=()=>i.addIssue({code:b.custom,...s(o)});return typeof Promise<"u"&&l instanceof Promise?l.then(u=>u?!0:(d(),!1)):l?!0:(d(),!1)})}refinement(e,a){return this._refinement((s,o)=>e(s)?!0:(o.addIssue(typeof a=="function"?a(s,o):a),!1))}_refinement(e){return new Ut({schema:this,typeName:U.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:a=>this["~validate"](a)}}optional(){return lt.create(this,this._def)}nullable(){return Ft.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return $e.create(this)}promise(){return Cs.create(this,this._def)}or(e){return _s.create([this,e],this._def)}and(e){return Ns.create(this,e,this._def)}transform(e){return new Ut({...W(this._def),schema:this,typeName:U.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const a=typeof e=="function"?e:()=>e;return new rn({...W(this._def),innerType:this,defaultValue:a,typeName:U.ZodDefault})}brand(){return new Go({typeName:U.ZodBranded,type:this,...W(this._def)})}catch(e){const a=typeof e=="function"?e:()=>e;return new on({...W(this._def),innerType:this,catchValue:a,typeName:U.ZodCatch})}describe(e){const a=this.constructor;return new a({...this._def,description:e})}pipe(e){return mn.create(this,e)}readonly(){return ln.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const So=/^c[^\s-]{8,}$/i,To=/^[0-9a-z]+$/,Io=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Ro=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,Eo=/^[a-z0-9_-]{21}$/i,Ao=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Po=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Oo=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Do="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let Hs;const Lo=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Mo=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,Bo=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,Uo=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Fo=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,zo=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,jr="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",$o=new RegExp(`^${jr}$`);function wr(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);const a=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${a}`}function Vo(t){return new RegExp(`^${wr(t)}$`)}function Zo(t){let e=`${jr}T${wr(t)}`;const a=[];return a.push(t.local?"Z?":"Z"),t.offset&&a.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${a.join("|")})`,new RegExp(`^${e}$`)}function Ko(t,e){return!!((e==="v4"||!e)&&Lo.test(t)||(e==="v6"||!e)&&Bo.test(t))}function qo(t,e){if(!Ao.test(t))return!1;try{const[a]=t.split(".");if(!a)return!1;const s=a.replace(/-/g,"+").replace(/_/g,"/").padEnd(a.length+(4-a.length%4)%4,"="),o=JSON.parse(atob(s));return!(typeof o!="object"||o===null||"typ"in o&&(o==null?void 0:o.typ)!=="JWT"||!o.alg||e&&o.alg!==e)}catch{return!1}}function Ho(t,e){return!!((e==="v4"||!e)&&Mo.test(t)||(e==="v6"||!e)&&Uo.test(t))}class ot extends X{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==w.string){const i=this._getOrReturnCtx(e);return y(i,{code:b.invalid_type,expected:w.string,received:i.parsedType}),B}const s=new Ee;let o;for(const i of this._def.checks)if(i.kind==="min")e.data.length<i.value&&(o=this._getOrReturnCtx(e,o),y(o,{code:b.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),s.dirty());else if(i.kind==="max")e.data.length>i.value&&(o=this._getOrReturnCtx(e,o),y(o,{code:b.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),s.dirty());else if(i.kind==="length"){const l=e.data.length>i.value,d=e.data.length<i.value;(l||d)&&(o=this._getOrReturnCtx(e,o),l?y(o,{code:b.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):d&&y(o,{code:b.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),s.dirty())}else if(i.kind==="email")Oo.test(e.data)||(o=this._getOrReturnCtx(e,o),y(o,{validation:"email",code:b.invalid_string,message:i.message}),s.dirty());else if(i.kind==="emoji")Hs||(Hs=new RegExp(Do,"u")),Hs.test(e.data)||(o=this._getOrReturnCtx(e,o),y(o,{validation:"emoji",code:b.invalid_string,message:i.message}),s.dirty());else if(i.kind==="uuid")Ro.test(e.data)||(o=this._getOrReturnCtx(e,o),y(o,{validation:"uuid",code:b.invalid_string,message:i.message}),s.dirty());else if(i.kind==="nanoid")Eo.test(e.data)||(o=this._getOrReturnCtx(e,o),y(o,{validation:"nanoid",code:b.invalid_string,message:i.message}),s.dirty());else if(i.kind==="cuid")So.test(e.data)||(o=this._getOrReturnCtx(e,o),y(o,{validation:"cuid",code:b.invalid_string,message:i.message}),s.dirty());else if(i.kind==="cuid2")To.test(e.data)||(o=this._getOrReturnCtx(e,o),y(o,{validation:"cuid2",code:b.invalid_string,message:i.message}),s.dirty());else if(i.kind==="ulid")Io.test(e.data)||(o=this._getOrReturnCtx(e,o),y(o,{validation:"ulid",code:b.invalid_string,message:i.message}),s.dirty());else if(i.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),y(o,{validation:"url",code:b.invalid_string,message:i.message}),s.dirty()}else i.kind==="regex"?(i.regex.lastIndex=0,i.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),y(o,{validation:"regex",code:b.invalid_string,message:i.message}),s.dirty())):i.kind==="trim"?e.data=e.data.trim():i.kind==="includes"?e.data.includes(i.value,i.position)||(o=this._getOrReturnCtx(e,o),y(o,{code:b.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),s.dirty()):i.kind==="toLowerCase"?e.data=e.data.toLowerCase():i.kind==="toUpperCase"?e.data=e.data.toUpperCase():i.kind==="startsWith"?e.data.startsWith(i.value)||(o=this._getOrReturnCtx(e,o),y(o,{code:b.invalid_string,validation:{startsWith:i.value},message:i.message}),s.dirty()):i.kind==="endsWith"?e.data.endsWith(i.value)||(o=this._getOrReturnCtx(e,o),y(o,{code:b.invalid_string,validation:{endsWith:i.value},message:i.message}),s.dirty()):i.kind==="datetime"?Zo(i).test(e.data)||(o=this._getOrReturnCtx(e,o),y(o,{code:b.invalid_string,validation:"datetime",message:i.message}),s.dirty()):i.kind==="date"?$o.test(e.data)||(o=this._getOrReturnCtx(e,o),y(o,{code:b.invalid_string,validation:"date",message:i.message}),s.dirty()):i.kind==="time"?Vo(i).test(e.data)||(o=this._getOrReturnCtx(e,o),y(o,{code:b.invalid_string,validation:"time",message:i.message}),s.dirty()):i.kind==="duration"?Po.test(e.data)||(o=this._getOrReturnCtx(e,o),y(o,{validation:"duration",code:b.invalid_string,message:i.message}),s.dirty()):i.kind==="ip"?Ko(e.data,i.version)||(o=this._getOrReturnCtx(e,o),y(o,{validation:"ip",code:b.invalid_string,message:i.message}),s.dirty()):i.kind==="jwt"?qo(e.data,i.alg)||(o=this._getOrReturnCtx(e,o),y(o,{validation:"jwt",code:b.invalid_string,message:i.message}),s.dirty()):i.kind==="cidr"?Ho(e.data,i.version)||(o=this._getOrReturnCtx(e,o),y(o,{validation:"cidr",code:b.invalid_string,message:i.message}),s.dirty()):i.kind==="base64"?Fo.test(e.data)||(o=this._getOrReturnCtx(e,o),y(o,{validation:"base64",code:b.invalid_string,message:i.message}),s.dirty()):i.kind==="base64url"?zo.test(e.data)||(o=this._getOrReturnCtx(e,o),y(o,{validation:"base64url",code:b.invalid_string,message:i.message}),s.dirty()):ee.assertNever(i);return{status:s.value,value:e.data}}_regex(e,a,s){return this.refinement(o=>e.test(o),{validation:a,code:b.invalid_string,..._.errToObj(s)})}_addCheck(e){return new ot({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",..._.errToObj(e)})}url(e){return this._addCheck({kind:"url",..._.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",..._.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",..._.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",..._.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",..._.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",..._.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",..._.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",..._.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",..._.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",..._.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",..._.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",..._.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,offset:(e==null?void 0:e.offset)??!1,local:(e==null?void 0:e.local)??!1,..._.errToObj(e==null?void 0:e.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,..._.errToObj(e==null?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",..._.errToObj(e)})}regex(e,a){return this._addCheck({kind:"regex",regex:e,..._.errToObj(a)})}includes(e,a){return this._addCheck({kind:"includes",value:e,position:a==null?void 0:a.position,..._.errToObj(a==null?void 0:a.message)})}startsWith(e,a){return this._addCheck({kind:"startsWith",value:e,..._.errToObj(a)})}endsWith(e,a){return this._addCheck({kind:"endsWith",value:e,..._.errToObj(a)})}min(e,a){return this._addCheck({kind:"min",value:e,..._.errToObj(a)})}max(e,a){return this._addCheck({kind:"max",value:e,..._.errToObj(a)})}length(e,a){return this._addCheck({kind:"length",value:e,..._.errToObj(a)})}nonempty(e){return this.min(1,_.errToObj(e))}trim(){return new ot({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new ot({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new ot({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(const a of this._def.checks)a.kind==="min"&&(e===null||a.value>e)&&(e=a.value);return e}get maxLength(){let e=null;for(const a of this._def.checks)a.kind==="max"&&(e===null||a.value<e)&&(e=a.value);return e}}ot.create=t=>new ot({checks:[],typeName:U.ZodString,coerce:(t==null?void 0:t.coerce)??!1,...W(t)});function Wo(t,e){const a=(t.toString().split(".")[1]||"").length,s=(e.toString().split(".")[1]||"").length,o=a>s?a:s,i=Number.parseInt(t.toFixed(o).replace(".","")),l=Number.parseInt(e.toFixed(o).replace(".",""));return i%l/10**o}class ts extends X{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==w.number){const i=this._getOrReturnCtx(e);return y(i,{code:b.invalid_type,expected:w.number,received:i.parsedType}),B}let s;const o=new Ee;for(const i of this._def.checks)i.kind==="int"?ee.isInteger(e.data)||(s=this._getOrReturnCtx(e,s),y(s,{code:b.invalid_type,expected:"integer",received:"float",message:i.message}),o.dirty()):i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(s=this._getOrReturnCtx(e,s),y(s,{code:b.too_small,minimum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),o.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(s=this._getOrReturnCtx(e,s),y(s,{code:b.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),o.dirty()):i.kind==="multipleOf"?Wo(e.data,i.value)!==0&&(s=this._getOrReturnCtx(e,s),y(s,{code:b.not_multiple_of,multipleOf:i.value,message:i.message}),o.dirty()):i.kind==="finite"?Number.isFinite(e.data)||(s=this._getOrReturnCtx(e,s),y(s,{code:b.not_finite,message:i.message}),o.dirty()):ee.assertNever(i);return{status:o.value,value:e.data}}gte(e,a){return this.setLimit("min",e,!0,_.toString(a))}gt(e,a){return this.setLimit("min",e,!1,_.toString(a))}lte(e,a){return this.setLimit("max",e,!0,_.toString(a))}lt(e,a){return this.setLimit("max",e,!1,_.toString(a))}setLimit(e,a,s,o){return new ts({...this._def,checks:[...this._def.checks,{kind:e,value:a,inclusive:s,message:_.toString(o)}]})}_addCheck(e){return new ts({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:_.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:_.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:_.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:_.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:_.toString(e)})}multipleOf(e,a){return this._addCheck({kind:"multipleOf",value:e,message:_.toString(a)})}finite(e){return this._addCheck({kind:"finite",message:_.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:_.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:_.toString(e)})}get minValue(){let e=null;for(const a of this._def.checks)a.kind==="min"&&(e===null||a.value>e)&&(e=a.value);return e}get maxValue(){let e=null;for(const a of this._def.checks)a.kind==="max"&&(e===null||a.value<e)&&(e=a.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&ee.isInteger(e.value))}get isFinite(){let e=null,a=null;for(const s of this._def.checks){if(s.kind==="finite"||s.kind==="int"||s.kind==="multipleOf")return!0;s.kind==="min"?(a===null||s.value>a)&&(a=s.value):s.kind==="max"&&(e===null||s.value<e)&&(e=s.value)}return Number.isFinite(a)&&Number.isFinite(e)}}ts.create=t=>new ts({checks:[],typeName:U.ZodNumber,coerce:(t==null?void 0:t.coerce)||!1,...W(t)});class ss extends X{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==w.bigint)return this._getInvalidInput(e);let s;const o=new Ee;for(const i of this._def.checks)i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(s=this._getOrReturnCtx(e,s),y(s,{code:b.too_small,type:"bigint",minimum:i.value,inclusive:i.inclusive,message:i.message}),o.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(s=this._getOrReturnCtx(e,s),y(s,{code:b.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),o.dirty()):i.kind==="multipleOf"?e.data%i.value!==BigInt(0)&&(s=this._getOrReturnCtx(e,s),y(s,{code:b.not_multiple_of,multipleOf:i.value,message:i.message}),o.dirty()):ee.assertNever(i);return{status:o.value,value:e.data}}_getInvalidInput(e){const a=this._getOrReturnCtx(e);return y(a,{code:b.invalid_type,expected:w.bigint,received:a.parsedType}),B}gte(e,a){return this.setLimit("min",e,!0,_.toString(a))}gt(e,a){return this.setLimit("min",e,!1,_.toString(a))}lte(e,a){return this.setLimit("max",e,!0,_.toString(a))}lt(e,a){return this.setLimit("max",e,!1,_.toString(a))}setLimit(e,a,s,o){return new ss({...this._def,checks:[...this._def.checks,{kind:e,value:a,inclusive:s,message:_.toString(o)}]})}_addCheck(e){return new ss({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:_.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:_.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:_.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:_.toString(e)})}multipleOf(e,a){return this._addCheck({kind:"multipleOf",value:e,message:_.toString(a)})}get minValue(){let e=null;for(const a of this._def.checks)a.kind==="min"&&(e===null||a.value>e)&&(e=a.value);return e}get maxValue(){let e=null;for(const a of this._def.checks)a.kind==="max"&&(e===null||a.value<e)&&(e=a.value);return e}}ss.create=t=>new ss({checks:[],typeName:U.ZodBigInt,coerce:(t==null?void 0:t.coerce)??!1,...W(t)});class nn extends X{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==w.boolean){const s=this._getOrReturnCtx(e);return y(s,{code:b.invalid_type,expected:w.boolean,received:s.parsedType}),B}return De(e.data)}}nn.create=t=>new nn({typeName:U.ZodBoolean,coerce:(t==null?void 0:t.coerce)||!1,...W(t)});class ws extends X{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==w.date){const i=this._getOrReturnCtx(e);return y(i,{code:b.invalid_type,expected:w.date,received:i.parsedType}),B}if(Number.isNaN(e.data.getTime())){const i=this._getOrReturnCtx(e);return y(i,{code:b.invalid_date}),B}const s=new Ee;let o;for(const i of this._def.checks)i.kind==="min"?e.data.getTime()<i.value&&(o=this._getOrReturnCtx(e,o),y(o,{code:b.too_small,message:i.message,inclusive:!0,exact:!1,minimum:i.value,type:"date"}),s.dirty()):i.kind==="max"?e.data.getTime()>i.value&&(o=this._getOrReturnCtx(e,o),y(o,{code:b.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),s.dirty()):ee.assertNever(i);return{status:s.value,value:new Date(e.data.getTime())}}_addCheck(e){return new ws({...this._def,checks:[...this._def.checks,e]})}min(e,a){return this._addCheck({kind:"min",value:e.getTime(),message:_.toString(a)})}max(e,a){return this._addCheck({kind:"max",value:e.getTime(),message:_.toString(a)})}get minDate(){let e=null;for(const a of this._def.checks)a.kind==="min"&&(e===null||a.value>e)&&(e=a.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(const a of this._def.checks)a.kind==="max"&&(e===null||a.value<e)&&(e=a.value);return e!=null?new Date(e):null}}ws.create=t=>new ws({checks:[],coerce:(t==null?void 0:t.coerce)||!1,typeName:U.ZodDate,...W(t)});class Wa extends X{_parse(e){if(this._getType(e)!==w.symbol){const s=this._getOrReturnCtx(e);return y(s,{code:b.invalid_type,expected:w.symbol,received:s.parsedType}),B}return De(e.data)}}Wa.create=t=>new Wa({typeName:U.ZodSymbol,...W(t)});class Ga extends X{_parse(e){if(this._getType(e)!==w.undefined){const s=this._getOrReturnCtx(e);return y(s,{code:b.invalid_type,expected:w.undefined,received:s.parsedType}),B}return De(e.data)}}Ga.create=t=>new Ga({typeName:U.ZodUndefined,...W(t)});class Qa extends X{_parse(e){if(this._getType(e)!==w.null){const s=this._getOrReturnCtx(e);return y(s,{code:b.invalid_type,expected:w.null,received:s.parsedType}),B}return De(e.data)}}Qa.create=t=>new Qa({typeName:U.ZodNull,...W(t)});class Ya extends X{constructor(){super(...arguments),this._any=!0}_parse(e){return De(e.data)}}Ya.create=t=>new Ya({typeName:U.ZodAny,...W(t)});class Ja extends X{constructor(){super(...arguments),this._unknown=!0}_parse(e){return De(e.data)}}Ja.create=t=>new Ja({typeName:U.ZodUnknown,...W(t)});class mt extends X{_parse(e){const a=this._getOrReturnCtx(e);return y(a,{code:b.invalid_type,expected:w.never,received:a.parsedType}),B}}mt.create=t=>new mt({typeName:U.ZodNever,...W(t)});class Xa extends X{_parse(e){if(this._getType(e)!==w.undefined){const s=this._getOrReturnCtx(e);return y(s,{code:b.invalid_type,expected:w.void,received:s.parsedType}),B}return De(e.data)}}Xa.create=t=>new Xa({typeName:U.ZodVoid,...W(t)});class $e extends X{_parse(e){const{ctx:a,status:s}=this._processInputParams(e),o=this._def;if(a.parsedType!==w.array)return y(a,{code:b.invalid_type,expected:w.array,received:a.parsedType}),B;if(o.exactLength!==null){const l=a.data.length>o.exactLength.value,d=a.data.length<o.exactLength.value;(l||d)&&(y(a,{code:l?b.too_big:b.too_small,minimum:d?o.exactLength.value:void 0,maximum:l?o.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:o.exactLength.message}),s.dirty())}if(o.minLength!==null&&a.data.length<o.minLength.value&&(y(a,{code:b.too_small,minimum:o.minLength.value,type:"array",inclusive:!0,exact:!1,message:o.minLength.message}),s.dirty()),o.maxLength!==null&&a.data.length>o.maxLength.value&&(y(a,{code:b.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),s.dirty()),a.common.async)return Promise.all([...a.data].map((l,d)=>o.type._parseAsync(new ut(a,l,a.path,d)))).then(l=>Ee.mergeArray(s,l));const i=[...a.data].map((l,d)=>o.type._parseSync(new ut(a,l,a.path,d)));return Ee.mergeArray(s,i)}get element(){return this._def.type}min(e,a){return new $e({...this._def,minLength:{value:e,message:_.toString(a)}})}max(e,a){return new $e({...this._def,maxLength:{value:e,message:_.toString(a)}})}length(e,a){return new $e({...this._def,exactLength:{value:e,message:_.toString(a)}})}nonempty(e){return this.min(1,e)}}$e.create=(t,e)=>new $e({type:t,minLength:null,maxLength:null,exactLength:null,typeName:U.ZodArray,...W(e)});function Lt(t){if(t instanceof pe){const e={};for(const a in t.shape){const s=t.shape[a];e[a]=lt.create(Lt(s))}return new pe({...t._def,shape:()=>e})}else return t instanceof $e?new $e({...t._def,type:Lt(t.element)}):t instanceof lt?lt.create(Lt(t.unwrap())):t instanceof Ft?Ft.create(Lt(t.unwrap())):t instanceof jt?jt.create(t.items.map(e=>Lt(e))):t}class pe extends X{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const e=this._def.shape(),a=ee.objectKeys(e);return this._cached={shape:e,keys:a},this._cached}_parse(e){if(this._getType(e)!==w.object){const m=this._getOrReturnCtx(e);return y(m,{code:b.invalid_type,expected:w.object,received:m.parsedType}),B}const{status:s,ctx:o}=this._processInputParams(e),{shape:i,keys:l}=this._getCached(),d=[];if(!(this._def.catchall instanceof mt&&this._def.unknownKeys==="strip"))for(const m in o.data)l.includes(m)||d.push(m);const u=[];for(const m of l){const c=i[m],g=o.data[m];u.push({key:{status:"valid",value:m},value:c._parse(new ut(o,g,o.path,m)),alwaysSet:m in o.data})}if(this._def.catchall instanceof mt){const m=this._def.unknownKeys;if(m==="passthrough")for(const c of d)u.push({key:{status:"valid",value:c},value:{status:"valid",value:o.data[c]}});else if(m==="strict")d.length>0&&(y(o,{code:b.unrecognized_keys,keys:d}),s.dirty());else if(m!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const m=this._def.catchall;for(const c of d){const g=o.data[c];u.push({key:{status:"valid",value:c},value:m._parse(new ut(o,g,o.path,c)),alwaysSet:c in o.data})}}return o.common.async?Promise.resolve().then(async()=>{const m=[];for(const c of u){const g=await c.key,p=await c.value;m.push({key:g,value:p,alwaysSet:c.alwaysSet})}return m}).then(m=>Ee.mergeObjectSync(s,m)):Ee.mergeObjectSync(s,u)}get shape(){return this._def.shape()}strict(e){return _.errToObj,new pe({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(a,s)=>{var i,l;const o=((l=(i=this._def).errorMap)==null?void 0:l.call(i,a,s).message)??s.defaultError;return a.code==="unrecognized_keys"?{message:_.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new pe({...this._def,unknownKeys:"strip"})}passthrough(){return new pe({...this._def,unknownKeys:"passthrough"})}extend(e){return new pe({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new pe({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:U.ZodObject})}setKey(e,a){return this.augment({[e]:a})}catchall(e){return new pe({...this._def,catchall:e})}pick(e){const a={};for(const s of ee.objectKeys(e))e[s]&&this.shape[s]&&(a[s]=this.shape[s]);return new pe({...this._def,shape:()=>a})}omit(e){const a={};for(const s of ee.objectKeys(this.shape))e[s]||(a[s]=this.shape[s]);return new pe({...this._def,shape:()=>a})}deepPartial(){return Lt(this)}partial(e){const a={};for(const s of ee.objectKeys(this.shape)){const o=this.shape[s];e&&!e[s]?a[s]=o:a[s]=o.optional()}return new pe({...this._def,shape:()=>a})}required(e){const a={};for(const s of ee.objectKeys(this.shape))if(e&&!e[s])a[s]=this.shape[s];else{let i=this.shape[s];for(;i instanceof lt;)i=i._def.innerType;a[s]=i}return new pe({...this._def,shape:()=>a})}keyof(){return _r(ee.objectKeys(this.shape))}}pe.create=(t,e)=>new pe({shape:()=>t,unknownKeys:"strip",catchall:mt.create(),typeName:U.ZodObject,...W(e)});pe.strictCreate=(t,e)=>new pe({shape:()=>t,unknownKeys:"strict",catchall:mt.create(),typeName:U.ZodObject,...W(e)});pe.lazycreate=(t,e)=>new pe({shape:t,unknownKeys:"strip",catchall:mt.create(),typeName:U.ZodObject,...W(e)});class _s extends X{_parse(e){const{ctx:a}=this._processInputParams(e),s=this._def.options;function o(i){for(const d of i)if(d.result.status==="valid")return d.result;for(const d of i)if(d.result.status==="dirty")return a.common.issues.push(...d.ctx.common.issues),d.result;const l=i.map(d=>new He(d.ctx.common.issues));return y(a,{code:b.invalid_union,unionErrors:l}),B}if(a.common.async)return Promise.all(s.map(async i=>{const l={...a,common:{...a.common,issues:[]},parent:null};return{result:await i._parseAsync({data:a.data,path:a.path,parent:l}),ctx:l}})).then(o);{let i;const l=[];for(const u of s){const m={...a,common:{...a.common,issues:[]},parent:null},c=u._parseSync({data:a.data,path:a.path,parent:m});if(c.status==="valid")return c;c.status==="dirty"&&!i&&(i={result:c,ctx:m}),m.common.issues.length&&l.push(m.common.issues)}if(i)return a.common.issues.push(...i.ctx.common.issues),i.result;const d=l.map(u=>new He(u));return y(a,{code:b.invalid_union,unionErrors:d}),B}}get options(){return this._def.options}}_s.create=(t,e)=>new _s({options:t,typeName:U.ZodUnion,...W(e)});function an(t,e){const a=it(t),s=it(e);if(t===e)return{valid:!0,data:t};if(a===w.object&&s===w.object){const o=ee.objectKeys(e),i=ee.objectKeys(t).filter(d=>o.indexOf(d)!==-1),l={...t,...e};for(const d of i){const u=an(t[d],e[d]);if(!u.valid)return{valid:!1};l[d]=u.data}return{valid:!0,data:l}}else if(a===w.array&&s===w.array){if(t.length!==e.length)return{valid:!1};const o=[];for(let i=0;i<t.length;i++){const l=t[i],d=e[i],u=an(l,d);if(!u.valid)return{valid:!1};o.push(u.data)}return{valid:!0,data:o}}else return a===w.date&&s===w.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}class Ns extends X{_parse(e){const{status:a,ctx:s}=this._processInputParams(e),o=(i,l)=>{if(Ka(i)||Ka(l))return B;const d=an(i.value,l.value);return d.valid?((qa(i)||qa(l))&&a.dirty(),{status:a.value,value:d.data}):(y(s,{code:b.invalid_intersection_types}),B)};return s.common.async?Promise.all([this._def.left._parseAsync({data:s.data,path:s.path,parent:s}),this._def.right._parseAsync({data:s.data,path:s.path,parent:s})]).then(([i,l])=>o(i,l)):o(this._def.left._parseSync({data:s.data,path:s.path,parent:s}),this._def.right._parseSync({data:s.data,path:s.path,parent:s}))}}Ns.create=(t,e,a)=>new Ns({left:t,right:e,typeName:U.ZodIntersection,...W(a)});class jt extends X{_parse(e){const{status:a,ctx:s}=this._processInputParams(e);if(s.parsedType!==w.array)return y(s,{code:b.invalid_type,expected:w.array,received:s.parsedType}),B;if(s.data.length<this._def.items.length)return y(s,{code:b.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),B;!this._def.rest&&s.data.length>this._def.items.length&&(y(s,{code:b.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),a.dirty());const i=[...s.data].map((l,d)=>{const u=this._def.items[d]||this._def.rest;return u?u._parse(new ut(s,l,s.path,d)):null}).filter(l=>!!l);return s.common.async?Promise.all(i).then(l=>Ee.mergeArray(a,l)):Ee.mergeArray(a,i)}get items(){return this._def.items}rest(e){return new jt({...this._def,rest:e})}}jt.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new jt({items:t,typeName:U.ZodTuple,rest:null,...W(e)})};class er extends X{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:a,ctx:s}=this._processInputParams(e);if(s.parsedType!==w.map)return y(s,{code:b.invalid_type,expected:w.map,received:s.parsedType}),B;const o=this._def.keyType,i=this._def.valueType,l=[...s.data.entries()].map(([d,u],m)=>({key:o._parse(new ut(s,d,s.path,[m,"key"])),value:i._parse(new ut(s,u,s.path,[m,"value"]))}));if(s.common.async){const d=new Map;return Promise.resolve().then(async()=>{for(const u of l){const m=await u.key,c=await u.value;if(m.status==="aborted"||c.status==="aborted")return B;(m.status==="dirty"||c.status==="dirty")&&a.dirty(),d.set(m.value,c.value)}return{status:a.value,value:d}})}else{const d=new Map;for(const u of l){const m=u.key,c=u.value;if(m.status==="aborted"||c.status==="aborted")return B;(m.status==="dirty"||c.status==="dirty")&&a.dirty(),d.set(m.value,c.value)}return{status:a.value,value:d}}}}er.create=(t,e,a)=>new er({valueType:e,keyType:t,typeName:U.ZodMap,...W(a)});class ns extends X{_parse(e){const{status:a,ctx:s}=this._processInputParams(e);if(s.parsedType!==w.set)return y(s,{code:b.invalid_type,expected:w.set,received:s.parsedType}),B;const o=this._def;o.minSize!==null&&s.data.size<o.minSize.value&&(y(s,{code:b.too_small,minimum:o.minSize.value,type:"set",inclusive:!0,exact:!1,message:o.minSize.message}),a.dirty()),o.maxSize!==null&&s.data.size>o.maxSize.value&&(y(s,{code:b.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),a.dirty());const i=this._def.valueType;function l(u){const m=new Set;for(const c of u){if(c.status==="aborted")return B;c.status==="dirty"&&a.dirty(),m.add(c.value)}return{status:a.value,value:m}}const d=[...s.data.values()].map((u,m)=>i._parse(new ut(s,u,s.path,m)));return s.common.async?Promise.all(d).then(u=>l(u)):l(d)}min(e,a){return new ns({...this._def,minSize:{value:e,message:_.toString(a)}})}max(e,a){return new ns({...this._def,maxSize:{value:e,message:_.toString(a)}})}size(e,a){return this.min(e,a).max(e,a)}nonempty(e){return this.min(1,e)}}ns.create=(t,e)=>new ns({valueType:t,minSize:null,maxSize:null,typeName:U.ZodSet,...W(e)});class tr extends X{get schema(){return this._def.getter()}_parse(e){const{ctx:a}=this._processInputParams(e);return this._def.getter()._parse({data:a.data,path:a.path,parent:a})}}tr.create=(t,e)=>new tr({getter:t,typeName:U.ZodLazy,...W(e)});class sr extends X{_parse(e){if(e.data!==this._def.value){const a=this._getOrReturnCtx(e);return y(a,{received:a.data,code:b.invalid_literal,expected:this._def.value}),B}return{status:"valid",value:e.data}}get value(){return this._def.value}}sr.create=(t,e)=>new sr({value:t,typeName:U.ZodLiteral,...W(e)});function _r(t,e){return new Bt({values:t,typeName:U.ZodEnum,...W(e)})}class Bt extends X{_parse(e){if(typeof e.data!="string"){const a=this._getOrReturnCtx(e),s=this._def.values;return y(a,{expected:ee.joinValues(s),received:a.parsedType,code:b.invalid_type}),B}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){const a=this._getOrReturnCtx(e),s=this._def.values;return y(a,{received:a.data,code:b.invalid_enum_value,options:s}),B}return De(e.data)}get options(){return this._def.values}get enum(){const e={};for(const a of this._def.values)e[a]=a;return e}get Values(){const e={};for(const a of this._def.values)e[a]=a;return e}get Enum(){const e={};for(const a of this._def.values)e[a]=a;return e}extract(e,a=this._def){return Bt.create(e,{...this._def,...a})}exclude(e,a=this._def){return Bt.create(this.options.filter(s=>!e.includes(s)),{...this._def,...a})}}Bt.create=_r;class nr extends X{_parse(e){const a=ee.getValidEnumValues(this._def.values),s=this._getOrReturnCtx(e);if(s.parsedType!==w.string&&s.parsedType!==w.number){const o=ee.objectValues(a);return y(s,{expected:ee.joinValues(o),received:s.parsedType,code:b.invalid_type}),B}if(this._cache||(this._cache=new Set(ee.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){const o=ee.objectValues(a);return y(s,{received:s.data,code:b.invalid_enum_value,options:o}),B}return De(e.data)}get enum(){return this._def.values}}nr.create=(t,e)=>new nr({values:t,typeName:U.ZodNativeEnum,...W(e)});class Cs extends X{unwrap(){return this._def.type}_parse(e){const{ctx:a}=this._processInputParams(e);if(a.parsedType!==w.promise&&a.common.async===!1)return y(a,{code:b.invalid_type,expected:w.promise,received:a.parsedType}),B;const s=a.parsedType===w.promise?a.data:Promise.resolve(a.data);return De(s.then(o=>this._def.type.parseAsync(o,{path:a.path,errorMap:a.common.contextualErrorMap})))}}Cs.create=(t,e)=>new Cs({type:t,typeName:U.ZodPromise,...W(e)});class Ut extends X{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===U.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:a,ctx:s}=this._processInputParams(e),o=this._def.effect||null,i={addIssue:l=>{y(s,l),l.fatal?a.abort():a.dirty()},get path(){return s.path}};if(i.addIssue=i.addIssue.bind(i),o.type==="preprocess"){const l=o.transform(s.data,i);if(s.common.async)return Promise.resolve(l).then(async d=>{if(a.value==="aborted")return B;const u=await this._def.schema._parseAsync({data:d,path:s.path,parent:s});return u.status==="aborted"?B:u.status==="dirty"||a.value==="dirty"?es(u.value):u});{if(a.value==="aborted")return B;const d=this._def.schema._parseSync({data:l,path:s.path,parent:s});return d.status==="aborted"?B:d.status==="dirty"||a.value==="dirty"?es(d.value):d}}if(o.type==="refinement"){const l=d=>{const u=o.refinement(d,i);if(s.common.async)return Promise.resolve(u);if(u instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return d};if(s.common.async===!1){const d=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});return d.status==="aborted"?B:(d.status==="dirty"&&a.dirty(),l(d.value),{status:a.value,value:d.value})}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(d=>d.status==="aborted"?B:(d.status==="dirty"&&a.dirty(),l(d.value).then(()=>({status:a.value,value:d.value}))))}if(o.type==="transform")if(s.common.async===!1){const l=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});if(!Mt(l))return B;const d=o.transform(l.value,i);if(d instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:a.value,value:d}}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(l=>Mt(l)?Promise.resolve(o.transform(l.value,i)).then(d=>({status:a.value,value:d})):B);ee.assertNever(o)}}Ut.create=(t,e,a)=>new Ut({schema:t,typeName:U.ZodEffects,effect:e,...W(a)});Ut.createWithPreprocess=(t,e,a)=>new Ut({schema:e,effect:{type:"preprocess",transform:t},typeName:U.ZodEffects,...W(a)});class lt extends X{_parse(e){return this._getType(e)===w.undefined?De(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}lt.create=(t,e)=>new lt({innerType:t,typeName:U.ZodOptional,...W(e)});class Ft extends X{_parse(e){return this._getType(e)===w.null?De(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Ft.create=(t,e)=>new Ft({innerType:t,typeName:U.ZodNullable,...W(e)});class rn extends X{_parse(e){const{ctx:a}=this._processInputParams(e);let s=a.data;return a.parsedType===w.undefined&&(s=this._def.defaultValue()),this._def.innerType._parse({data:s,path:a.path,parent:a})}removeDefault(){return this._def.innerType}}rn.create=(t,e)=>new rn({innerType:t,typeName:U.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...W(e)});class on extends X{_parse(e){const{ctx:a}=this._processInputParams(e),s={...a,common:{...a.common,issues:[]}},o=this._def.innerType._parse({data:s.data,path:s.path,parent:{...s}});return js(o)?o.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new He(s.common.issues)},input:s.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new He(s.common.issues)},input:s.data})}}removeCatch(){return this._def.innerType}}on.create=(t,e)=>new on({innerType:t,typeName:U.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...W(e)});class ar extends X{_parse(e){if(this._getType(e)!==w.nan){const s=this._getOrReturnCtx(e);return y(s,{code:b.invalid_type,expected:w.nan,received:s.parsedType}),B}return{status:"valid",value:e.data}}}ar.create=t=>new ar({typeName:U.ZodNaN,...W(t)});class Go extends X{_parse(e){const{ctx:a}=this._processInputParams(e),s=a.data;return this._def.type._parse({data:s,path:a.path,parent:a})}unwrap(){return this._def.type}}class mn extends X{_parse(e){const{status:a,ctx:s}=this._processInputParams(e);if(s.common.async)return(async()=>{const i=await this._def.in._parseAsync({data:s.data,path:s.path,parent:s});return i.status==="aborted"?B:i.status==="dirty"?(a.dirty(),es(i.value)):this._def.out._parseAsync({data:i.value,path:s.path,parent:s})})();{const o=this._def.in._parseSync({data:s.data,path:s.path,parent:s});return o.status==="aborted"?B:o.status==="dirty"?(a.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:s.path,parent:s})}}static create(e,a){return new mn({in:e,out:a,typeName:U.ZodPipeline})}}class ln extends X{_parse(e){const a=this._def.innerType._parse(e),s=o=>(Mt(o)&&(o.value=Object.freeze(o.value)),o);return js(a)?a.then(o=>s(o)):s(a)}unwrap(){return this._def.innerType}}ln.create=(t,e)=>new ln({innerType:t,typeName:U.ZodReadonly,...W(e)});var U;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(U||(U={}));const kt=ot.create,Nr=nn.create;mt.create;const Cr=$e.create,fn=pe.create;_s.create;Ns.create;jt.create;const Qo=Bt.create;Cs.create;lt.create;Ft.create;const Yo=/^\d{4}-\d{2}-\d{2}$/,Jo=fn({title:kt().min(1),items:Cr(kt().min(1)).min(1)}),Xo=fn({version:kt().min(1),publishedAt:kt().regex(Yo,"Expected YYYY-MM-DD"),title:kt().min(1),sections:Cr(Jo).min(1),prerelease:Nr().optional()});fn({changeType:Qo(["feature","improvement","fix","internal","docs"]),title:kt().min(1),summary:kt().min(1),public:Nr()});const el=[{version:"0.13.0",publishedAt:"2026-04-29",title:"Mermaid diagrams, OpenCode fixes, and image generation",sections:[{title:"New Features",items:["Mermaid diagrams in plans: Kaizen now renders Mermaid diagrams within plan blocks to better visualize project and architecture changes.","Codex image generation: Kaizen now supports generating images directly using Codex providers."]},{title:"Improvements",items:["Provider handoff and notification settings: The UI and flows for handing off between providers and managing notifications are now more reliable.","OpenCode model discovery: The OpenCode model catalog is more reliable and accurately detects OpenCode-backed models.","Recovered plan interactions: Plan interaction state such as checkboxes and diagrams are safely recovered after session restarts."]}]},{version:"0.12.0",publishedAt:"2026-04-22",title:"Cloud sync beta and multi-chat canvas workflows",sections:[{title:"New Features",items:["Cloud Sync and backups (Beta): Kaizen can now back up supported chat data to the cloud so multi-device workflows are easier to continue and recover.","Individual cloud chat pull from the sidebar: You can now pull a specific chat from cloud sync directly from the sidebar instead of forcing a broader sync step.","Multi-chat canvas: Kaizen now supports multi-view chat canvases so you can keep multiple chats and independent terminals open at the same time."]},{title:"Improvements",items:["Account settings polish: The account settings page layout is cleaner and easier to scan.","Bug fixes and stability improvements: This release also includes smaller fixes across sync flows, canvas behavior, and related UI reliability."]}]},{version:"0.11.0",publishedAt:"2026-04-12",title:"Wider language support across Kaizen and the web app",sections:[{title:"New Features",items:["Expanded multilingual support: Kaizen and the web app now support English, Spanish, French, Japanese, Korean, Thai, and Chinese across the main user-facing product surfaces.","Locale-aware defaults and switching: Both apps now default to the user’s supported language when available, fall back to English otherwise, and keep the user’s explicit language choice on later visits."]},{title:"Improvements",items:["Localized web routing and SEO: The web app now serves locale-prefixed routes, localized metadata, and translated release content so public pages better match the visitor’s language.","Translation coverage and persistence polish: Language selection, settings, provider controls, chat surfaces, and release notes are more consistently translated across devices and sessions."]}]},{version:"0.10.0",publishedAt:"2026-04-11",title:"Qwen beta, OpenCode API keys, and usage tracking",sections:[{title:"New Features",items:["Qwen Code provider support (Beta): Kaizen now supports Qwen as a built-in provider with provider setup, model preferences, and UI integration across the chat workflow.","OpenCode API key provider support: OpenCode-backed providers can now run directly from your API key configuration, which makes models such as GML 5.1 available through your local OpenCode setup.","Usage tracking in Settings: The `/settings/usage` page now tracks Claude and Codex token usage with costs and daily breakdowns so account usage is easier to audit."]},{title:"Improvements",items:["General bug fixes and improvements: This release also includes provider catalog fixes, usage-bar polish, review follow-ups, and broader UI reliability improvements."]}]},{version:"0.9.0",publishedAt:"2026-04-10",title:"Live model catalogs, provider hardening, and relay URL keys",sections:[{title:"New Features",items:["Runtime-derived Codex model catalog: Codex model and reasoning controls now follow the live app-server catalog while safely falling back to Kaizen static defaults when discovery fails.","Smarter OpenRouter model selection: Kaizen now discovers the live OpenRouter model catalog from OpenCode and presents grouped model and quality choices in the chat preferences UI."]},{title:"Improvements",items:["Provider architecture and Gemini reliability improvements: Kaizen now uses provider-owned startup and catalog logic with better Gemini plan-mode handling and safer provider recovery paths.","Rotatable relay URL keys: Relay URLs are now shorter and rotatable while preserving the relay auth and wake flows.","Reduce Kaizen chat open latency: Provider-backed chats and sidebar refreshes stop triggering expensive transcript and usage scans during normal navigation.","Move chats between features: Chat organization now supports moving chats between project features with more reliable drag-and-drop handling."]}]},{version:"0.8.1",publishedAt:"2026-04-08",title:"Relay access sync and billing webhook guard",sections:[{title:"Improvements",items:["Relay access sync: Kaizen now re-checks relay authorization with the server instead of relying on stale local entitlement state, so paid relay access recovers more predictably after account changes.","Billing webhook guard: Polar customer mappings that point at a missing local user now fail cleanly with an explicit validation error instead of crashing on a database foreign-key write."]}]},{version:"0.8.0",publishedAt:"2026-04-08",title:"Project diffs, queued messages, and commit workflow",sections:[{title:"New Features",items:["Project diff sidebar and commit workflow: Kaizen can now inspect project diffs in the sidebar, tune diff viewing preferences, generate commit messages, and turn selected changes into commits from the chat workflow.","Queued outbound messages: The CLI chat flow can now queue follow-up prompts while a turn is still running, with composer controls to preview, edit, remove, and drain queued messages safely."]},{title:"Improvements",items:["Paid relay and pricing updates: Paid users now get relay access by default, pricing copy is clearer, and the dashboard shows subscription state with better post-checkout feedback.","Diff review polish and follow-up fixes: The shipped diff flow includes follow-up fixes for sidebar sizing, disclosure handling, server git behavior, and related regression coverage.","Safer queued-message handling: Attachment staging cleanup, queue drain ordering, duplicate action guards, and attachment-only queue previews are hardened for more predictable chat behavior."]}]},{version:"0.7.2",publishedAt:"2026-04-07",title:"Standalone CLI packaging fix",sections:[{title:"Improvements",items:["Standalone CLI package no longer ships workspace dependencies: Kaizen installs and self-updates no longer fail in production because the published CLI package no longer depends on monorepo workspace packages."]}]},{version:"0.7.1",publishedAt:"2026-04-07",title:"Production-safe remote auth builds",sections:[{title:"Improvements",items:["Remote auth build targets stay production-safe: Development builds can still override the remote auth URL without leaking non-production URLs or env overrides into the shipped production bundle."]}]},{version:"0.7.0",publishedAt:"2026-04-07",title:"Accounts, relay access, and faster chat workflows",sections:[{title:"New Features",items:["Kaizen Connect accounts: Sign the local Kaizen app into your web account and keep account state synced across devices.","Remote relay access and controls: Hosted relay support now includes admin approvals, machine management, an account settings flow, idle shutdown, wake-on-demand, and a dedicated Kaizen Connect landing flow.","Billing and account management: The web app now includes pricing, Polar-backed billing, account dashboards, subscription state, and expanded device management.","Expanded sign-in security: The web app now supports Google and GitHub OAuth, plus TOTP setup for password-based accounts.","Faster handoff and prompting tools: Kaizen now includes saved plan handoff quick chats, reusable quick prompts, and managed custom theme backgrounds.","Native slash commands: The chat composer now supports slash command autocomplete along with built-in PR and workflow commands.","More provider and file support: Kaizen now supports OpenRouter via openCode ACP along with Markdown and PDF chat attachments.","Feature access and privacy controls: Account-gated features now stay visible with locked states, and streamer mode can hide account details, device metadata, and relay URLs.","Broader chat recovery tools: Kaizen can recover more provider-backed chats, including stronger Cursor chat recovery and import support."]},{title:"Improvements",items:["Fix various bugs across chat recovery, waiting prompts, relay/account sync, and dashboard flows.","Fix various performance issues across chat startup, transcript rendering, sidebar updates, websocket sync, local persistence, and asset delivery.","Polish loading states, shared branding, and overall UI consistency across the CLI app and web app."]}]},{version:"0.6.1",publishedAt:"2026-03-30",title:"Background notifications and SEO updates",sections:[{title:"Improvements",items:["Background chat notifications: Kaizen can now alert you with browser notifications, sound, and vibration when background chats need input or finish responding.","SEO enhancements: Updated site metadata, robots.txt rules, and sitemap priorities to improve search engine discoverability."]},{title:"Under the Hood",items:["Added a root `tailscale:reset` script to reset local Tailscale serve configuration during setup and support workflows."]}]},{version:"0.6.0",publishedAt:"2026-03-29",title:"Remote handoff setup and QR launches",sections:[{title:"New Features",items:["Add remote handoff flow for Kaizen: Kaizen can now guide remote Tailscale setup and generate handoff links and QR codes for opening sessions on another device."]}]},{version:"0.5.0",publishedAt:"2026-03-29",title:"Bundled release history and stronger session recovery",sections:[{title:"New Features",items:["Bundled release history and stronger session recovery: Kaizen now ships in-app and web release notes while recovering chat usage and session state more reliably after reloads."]}]},{version:"0.4.0",publishedAt:"2026-03-29",title:"Branding refresh and packaged runtime updates",sections:[{title:"Highlights",items:["Refreshed the Kaizen branding and theme system across the product surface.","Published the built Kaizen runtime and added the web start command needed for the packaged flow.","Renamed the `keizen` app paths to `kaizen`, fixed review follow-ups, and aligned web builds on Node 20."]}]},{version:"0.3.0",publishedAt:"2026-03-29",title:"Feature overview workflow and release workflow baseline",sections:[{title:"Highlights",items:["Added the feature overview workflow and plan attachment support for structured project work.","Added the pull-request skill and the first pass of the npm publish and release workflow guidance."]}]},{version:"0.2.2",publishedAt:"2026-03-28",title:"UI and restart regression fixes",sections:[{title:"Highlights",items:["Fixed Kaizen UI regressions and restart issues that were blocking a stable local runtime."]}]}];function rr(t){return new Date(`${t}T00:00:00.000Z`).getTime()}function tl(t,e="en-US"){return new Intl.DateTimeFormat(e,{month:"short",day:"numeric",year:"numeric",timeZone:"UTC"}).format(new Date(`${t}T00:00:00.000Z`))}function sl(t){return[...t].sort((e,a)=>{const s=rr(a.publishedAt)-rr(e.publishedAt);return s!==0?s:a.version.localeCompare(e.version,void 0,{numeric:!0,sensitivity:"base"})})}const nl=Object.freeze(sl(el.map(t=>Xo.parse(t))));function al(t){const e=Ae.c(5),{entries:a}=t;if(a.length===0){let i;return e[0]===Symbol.for("react.memo_cache_sentinel")?(i=n.jsx("div",{className:"rounded-2xl border border-dashed border-border bg-card/30 px-6 py-10 text-sm text-muted-foreground",children:"No release notes have been published yet."}),e[0]=i):i=e[0],i}let s;e[1]!==a?(s=a.map(rl),e[1]=a,e[2]=s):s=e[2];let o;return e[3]!==s?(o=n.jsx("div",{className:"space-y-4",children:s}),e[3]=s,e[4]=o):o=e[4],o}function rl(t){return n.jsxs("article",{className:"rounded-2xl border border-border bg-card/60 p-5",children:[n.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[n.jsx("h3",{className:"text-base font-semibold text-foreground",children:t.title}),n.jsxs("span",{className:"rounded-full border border-border bg-muted/60 px-2.5 py-1 text-xs font-medium text-muted-foreground",children:["v",t.version]}),t.prerelease?n.jsx("span",{className:"rounded-full border border-amber-500/30 bg-amber-500/10 px-2.5 py-1 text-xs font-medium text-amber-600 dark:text-amber-300",children:"Prerelease"}):null]}),n.jsxs("div",{className:"mt-2 text-xs text-muted-foreground",children:["Published ",tl(t.publishedAt)]}),n.jsx("div",{className:"mt-4 space-y-4 text-sm text-foreground",children:t.sections.map(il)})]},`${t.version}-${t.publishedAt}`)}function il(t){return n.jsxs("section",{className:"space-y-2",children:[n.jsx("h4",{className:"text-sm font-semibold text-foreground",children:t.title}),n.jsx("ul",{className:"list-disc space-y-2 pl-5 text-muted-foreground",children:t.items.map(ol)})]},t.title)}function ol(t){return n.jsx("li",{children:t},t)}function ll(){const t=Ae.c(43),e=dt("quickChatSettings"),a=dt("featureAccess"),{remoteAuth:s,providerCatalog:o,providerSettings:i}=dn();let l;t[0]!==s?(l=hr(s),t[0]=s,t[1]=l):l=t[1];const u=l.features.handoff.enabled,m=Yt(pl),c=Yt(hl),g=Yt(fl),p=Yt(ml),v=Yt(ul);let F;if(t[2]!==c||t[3]!==m||t[4]!==a||t[5]!==u||t[6]!==o||t[7]!==i||t[8]!==p||t[9]!==v||t[10]!==e||t[11]!==g){const q=pr({providerCatalog:o,providerSettings:i});let O;t[13]!==e?(O=e("description"),t[13]=e,t[14]=O):O=t[14];let I;t[15]!==O?(I=n.jsx("div",{className:"max-w-2xl",children:O}),t[15]=O,t[16]=I):I=t[16];let j;t[17]!==a||t[18]!==u?(j=u?null:n.jsx(rt,{level:"account",label:a("cta.account")}),t[17]=a,t[18]=u,t[19]=j):j=t[19];const S=!u;let R;t[20]!==c?(R=()=>c(ji()),t[20]=c,t[21]=R):R=t[21];let H;t[22]===Symbol.for("react.memo_cache_sentinel")?(H=n.jsx(wi,{className:"mr-1.5 h-4 w-4"}),t[22]=H):H=t[22];let $;t[23]!==e?($=e("actions.add"),t[23]=e,t[24]=$):$=t[24];let z;t[25]!==S||t[26]!==R||t[27]!==$?(z=n.jsxs(ce,{type:"button",size:"sm",variant:"outline",className:"rounded-full",disabled:S,onClick:R,children:[H,$]}),t[25]=S,t[26]=R,t[27]=$,t[28]=z):z=t[28];const V=!u;let C;t[29]===Symbol.for("react.memo_cache_sentinel")?(C=n.jsx(kr,{className:"mr-1.5 h-4 w-4"}),t[29]=C):C=t[29];let E;t[30]!==e?(E=e("actions.reset"),t[30]=e,t[31]=E):E=t[31];let Z;t[32]!==v||t[33]!==V||t[34]!==E?(Z=n.jsxs(ce,{type:"button",size:"sm",variant:"outline",className:"rounded-full",disabled:V,onClick:v,children:[C,E]}),t[32]=v,t[33]=V,t[34]=E,t[35]=Z):Z=t[35];let Y;t[36]!==Z||t[37]!==j||t[38]!==z?(Y=n.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[j,z,Z]}),t[36]=Z,t[37]=j,t[38]=z,t[39]=Y):Y=t[39];let te;t[40]!==Y||t[41]!==I?(te=n.jsxs("div",{className:"flex flex-col gap-3 rounded-2xl border border-border bg-card/30 px-4 py-4 text-sm text-muted-foreground sm:flex-row sm:items-center sm:justify-between",children:[I,Y]}),t[40]=Y,t[41]=I,t[42]=te):te=t[42],F=n.jsxs("div",{className:"border-b border-border",children:[te,m.length===0?n.jsx("div",{className:"py-8 text-sm text-muted-foreground",children:e("empty")}):m.map((G,A)=>{const ae=Sa(G.provider,o),ne=ae.models.some(P=>P.id===G.model)?G.model:ae.defaultModel;return n.jsxs("div",{className:`grid gap-4 py-5 md:grid-cols-[minmax(0,1.1fr)_160px_200px_minmax(0,1.2fr)_auto] ${A===0?"":"border-t border-border"}`,children:[n.jsxs("div",{className:"min-w-0",children:[n.jsx("div",{className:"mb-1 text-sm font-medium text-foreground",children:e("fields.label")}),n.jsx(ze,{value:G.label,disabled:!u,onChange:P=>g(G.id,{label:P.target.value}),placeholder:e("placeholders.label")})]}),n.jsxs("div",{className:"min-w-0",children:[n.jsx("div",{className:"mb-1 text-sm font-medium text-foreground",children:e("fields.provider")}),n.jsxs(ie,{value:G.provider,disabled:!u,onValueChange:P=>{const de=P,re=Sa(de,o);g(G.id,{provider:de,model:re.defaultModel,modelOptions:re.defaultModelOptions})},children:[n.jsx(oe,{children:n.jsx(ue,{})}),n.jsx(le,{children:q.map(dl)})]})]}),n.jsxs("div",{className:"min-w-0",children:[n.jsx("div",{className:"mb-1 text-sm font-medium text-foreground",children:e("fields.model")}),n.jsxs(ie,{value:ne,disabled:!u,onValueChange:P=>g(G.id,{model:P}),children:[n.jsx(oe,{children:n.jsx(ue,{})}),n.jsx(le,{children:ae.models.map(cl)})]})]}),n.jsxs("div",{className:"min-w-0",children:[n.jsx("div",{className:"mb-1 text-sm font-medium text-foreground",children:e("fields.basePrompt")}),n.jsx(ze,{value:G.basePrompt,disabled:!u,onChange:P=>g(G.id,{basePrompt:P.target.value}),placeholder:yi})]}),n.jsx("div",{className:"flex items-end",children:n.jsx(ce,{type:"button",size:"icon",variant:"outline",className:"rounded-full","aria-label":e("actions.remove",{label:G.label}),title:e("actions.remove",{label:G.label}),disabled:!u,onClick:()=>p(G.id),children:n.jsx(ki,{className:"h-4 w-4"})})})]},G.id)})]}),t[2]=c,t[3]=m,t[4]=a,t[5]=u,t[6]=o,t[7]=i,t[8]=p,t[9]=v,t[10]=e,t[11]=g,t[12]=F}else F=t[12];return F}function cl(t){return n.jsx(M,{value:t.id,children:t.label},t.id)}function dl(t){return n.jsx(M,{value:t.id,children:t.label},t.id)}function ul(t){return t.resetToDefaults}function ml(t){return t.removeEntry}function fl(t){return t.updateEntry}function hl(t){return t.addEntry}function pl(t){return t.entries}function gl(){const t=Ae.c(87),e=dt("slashCommandSettings"),{providerCatalog:a,providerSettings:s}=dn(),o=yt(_l),i=yt(wl),l=yt(jl),d=yt(kl),u=yt(yl),m=yt(vl),c=yt(bl);let g,p,v,F,q,O,I;if(t[0]!==a||t[1]!==s||t[2]!==l||t[3]!==c||t[4]!==e||t[5]!==m){const de=pr({providerCatalog:a,providerSettings:s});O="border-b border-border";let re;t[13]!==e?(re=e("description"),t[13]=e,t[14]=re):re=t[14];let D;t[15]!==re?(D=n.jsx("div",{className:"max-w-2xl",children:re}),t[15]=re,t[16]=D):D=t[16];let fe;t[17]===Symbol.for("react.memo_cache_sentinel")?(fe=n.jsx(kr,{className:"mr-1.5 h-4 w-4"}),t[17]=fe):fe=t[17];let N;t[18]!==e?(N=e("actions.reset"),t[18]=e,t[19]=N):N=t[19];let ye;t[20]!==c||t[21]!==N?(ye=n.jsxs(ce,{type:"button",size:"sm",variant:"outline",className:"rounded-full",onClick:c,children:[fe,N]}),t[20]=c,t[21]=N,t[22]=ye):ye=t[22],t[23]!==ye||t[24]!==D?(I=n.jsxs("div",{className:"flex flex-col gap-3 rounded-2xl border border-border bg-card/30 px-4 py-4 text-sm text-muted-foreground sm:flex-row sm:items-center sm:justify-between",children:[D,ye]}),t[23]=ye,t[24]=D,t[25]=I):I=t[25],q="grid gap-5 py-5";let ve;t[26]!==e?(ve=e("providers.title"),t[26]=e,t[27]=ve):ve=t[27],t[28]!==ve?(v=n.jsx("div",{className:"mb-1 text-sm font-medium text-foreground",children:ve}),t[28]=ve,t[29]=v):v=t[29];let ke;t[30]!==e?(ke=e("providers.description",{defaults:_i.map(xl).join(", ")}),t[30]=e,t[31]=ke):ke=t[31],t[32]!==ke?(F=n.jsx("div",{className:"mb-3 text-sm text-muted-foreground",children:ke}),t[32]=ke,t[33]=F):F=t[33],g="flex flex-wrap gap-2";let Ne;t[34]!==l||t[35]!==m?(Ne=Ce=>{const Pe=l.includes(Ce.id);return n.jsx(ce,{type:"button","aria-pressed":Pe,variant:Pe?"default":"outline",className:Re("rounded-full",!Pe&&"text-muted-foreground"),onClick:()=>m(Ce.id),children:Ce.label},Ce.id)},t[34]=l,t[35]=m,t[36]=Ne):Ne=t[36],p=de.map(Ne),t[0]=a,t[1]=s,t[2]=l,t[3]=c,t[4]=e,t[5]=m,t[6]=g,t[7]=p,t[8]=v,t[9]=F,t[10]=q,t[11]=O,t[12]=I}else g=t[6],p=t[7],v=t[8],F=t[9],q=t[10],O=t[11],I=t[12];let j;t[37]!==g||t[38]!==p?(j=n.jsx("div",{className:g,children:p}),t[37]=g,t[38]=p,t[39]=j):j=t[39];let S;t[40]!==v||t[41]!==F||t[42]!==j?(S=n.jsxs("div",{children:[v,F,j]}),t[40]=v,t[41]=F,t[42]=j,t[43]=S):S=t[43];let R;t[44]!==e?(R=e("pr.title"),t[44]=e,t[45]=R):R=t[45];let H;t[46]!==R?(H=n.jsx("div",{className:"mb-1 text-sm font-medium text-foreground",children:R}),t[46]=R,t[47]=H):H=t[47];let $;t[48]!==e?($=e("pr.description"),t[48]=e,t[49]=$):$=t[49];let z;t[50]!==$?(z=n.jsx("div",{className:"mb-3 text-sm text-muted-foreground",children:$}),t[50]=$,t[51]=z):z=t[51];let V;t[52]!==d?(V=de=>d(de.target.value),t[52]=d,t[53]=V):V=t[53];let C;t[54]!==o||t[55]!==V?(C=n.jsx(Ta,{value:o,onChange:V,rows:5,className:"min-h-28"}),t[54]=o,t[55]=V,t[56]=C):C=t[56];let E;t[57]!==H||t[58]!==z||t[59]!==C?(E=n.jsxs("div",{className:"border-t border-border pt-5",children:[H,z,C]}),t[57]=H,t[58]=z,t[59]=C,t[60]=E):E=t[60];let Z;t[61]!==e?(Z=e("prUpdate.title"),t[61]=e,t[62]=Z):Z=t[62];let Y;t[63]!==Z?(Y=n.jsx("div",{className:"mb-1 text-sm font-medium text-foreground",children:Z}),t[63]=Z,t[64]=Y):Y=t[64];let te;t[65]!==e?(te=e("prUpdate.description"),t[65]=e,t[66]=te):te=t[66];let G;t[67]!==te?(G=n.jsx("div",{className:"mb-3 text-sm text-muted-foreground",children:te}),t[67]=te,t[68]=G):G=t[68];let A;t[69]!==u?(A=de=>u(de.target.value),t[69]=u,t[70]=A):A=t[70];let ae;t[71]!==i||t[72]!==A?(ae=n.jsx(Ta,{value:i,onChange:A,rows:5,className:"min-h-28"}),t[71]=i,t[72]=A,t[73]=ae):ae=t[73];let h;t[74]!==Y||t[75]!==G||t[76]!==ae?(h=n.jsxs("div",{className:"border-t border-border pt-5",children:[Y,G,ae]}),t[74]=Y,t[75]=G,t[76]=ae,t[77]=h):h=t[77];let ne;t[78]!==E||t[79]!==h||t[80]!==q||t[81]!==S?(ne=n.jsxs("div",{className:q,children:[S,E,h]}),t[78]=E,t[79]=h,t[80]=q,t[81]=S,t[82]=ne):ne=t[82];let P;return t[83]!==ne||t[84]!==O||t[85]!==I?(P=n.jsxs("div",{className:O,children:[I,ne]}),t[83]=ne,t[84]=O,t[85]=I,t[86]=P):P=t[86],P}function xl(t){return un(t).label}function bl(t){return t.resetToDefaults}function vl(t){return t.togglePullRequestProvider}function yl(t){return t.setPullRequestUpdatePrompt}function kl(t){return t.setPullRequestPrompt}function jl(t){return t.pullRequestProviders}function wl(t){return t.pullRequestUpdatePrompt}function _l(t){return t.pullRequestPrompt}const Nl=[{id:"codex",label:"Codex"},{id:"claude",label:"Claude"}];function nt(t){return new Intl.NumberFormat().format(t)}function ir(t){return t===null?"-":new Intl.NumberFormat(void 0,{style:"currency",currency:"USD",minimumFractionDigits:t>=1?2:4,maximumFractionDigits:t>=1?2:4}).format(t)}function Cl(t){const e=new Date(`${t}T00:00:00`);return Number.isNaN(e.getTime())?t:new Intl.DateTimeFormat(void 0,{weekday:"short",month:"short",day:"numeric"}).format(e)}function Sl(t){return t?t.totals.reasoningTokens>0||t.days.some(e=>e.reasoningTokens>0):!1}function Tl(t){const e=Ae.c(91),{access:a,provider:s,window:o,report:i,error:l,isLoading:d,onProviderChange:u,onWindowChange:m,onRefresh:c,onOpenAccount:g}=t,p=dt("providerUsage"),v=dt("featureAccess");if(!a.features.providerUsage.enabled){const D=a.features.providerUsage.level;let fe;e[0]===Symbol.for("react.memo_cache_sentinel")?(fe=n.jsx("div",{className:"flex h-11 w-11 items-center justify-center rounded-2xl border border-border bg-background/80",children:n.jsx(yr,{className:"h-5 w-5"})}),e[0]=fe):fe=e[0];let N;e[1]!==p?(N=p("title"),e[1]=p,e[2]=N):N=e[2];let ye;e[3]!==N?(ye=n.jsx("span",{children:N}),e[3]=N,e[4]=ye):ye=e[4];let ve;e[5]!==v||e[6]!==D?(ve=at(D,{cta:{account:v("cta.account"),paid:v("cta.paid")},denied:{account:v("denied.account",{featureName:"{featureName}"}),paid:v("denied.paid",{featureName:"{featureName}"})},deniedShort:{account:v("deniedShort.account",{featureName:"{featureName}"}),paid:v("deniedShort.paid",{featureName:"{featureName}"})}}),e[5]=v,e[6]=D,e[7]=ve):ve=e[7];let ke;e[8]!==D||e[9]!==ve?(ke=n.jsx(rt,{level:D,label:ve}),e[8]=D,e[9]=ve,e[10]=ke):ke=e[10];let Ne;e[11]!==ye||e[12]!==ke?(Ne=n.jsxs("div",{className:"flex flex-wrap items-center gap-2 text-sm font-medium text-foreground",children:[ye,ke]}),e[11]=ye,e[12]=ke,e[13]=Ne):Ne=e[13];let Ce;e[14]!==v||e[15]!==D?(Ce=Ni("Provider Usage",D,{cta:{account:v("cta.account"),paid:v("cta.paid")},denied:{account:v("denied.account",{featureName:"{featureName}"}),paid:v("denied.paid",{featureName:"{featureName}"})},deniedShort:{account:v("deniedShort.account",{featureName:"{featureName}"}),paid:v("deniedShort.paid",{featureName:"{featureName}"})}}),e[14]=v,e[15]=D,e[16]=Ce):Ce=e[16];let Pe;e[17]!==Ce?(Pe=n.jsx("div",{className:"mt-1 text-sm text-muted-foreground",children:Ce}),e[17]=Ce,e[18]=Pe):Pe=e[18];let We;e[19]!==Ne||e[20]!==Pe?(We=n.jsxs("div",{className:"flex flex-wrap items-center gap-3",children:[fe,n.jsxs("div",{className:"min-w-0 flex-1",children:[Ne,Pe]})]}),e[19]=Ne,e[20]=Pe,e[21]=We):We=e[21];let Ge;e[22]!==v?(Ge=v("actions.openAccountSettings"),e[22]=v,e[23]=Ge):Ge=e[23];let Qe;e[24]!==g||e[25]!==Ge?(Qe=n.jsx("div",{className:"mt-4",children:n.jsx(ce,{type:"button",onClick:g,children:Ge})}),e[24]=g,e[25]=Ge,e[26]=Qe):Qe=e[26];let ft;return e[27]!==Qe||e[28]!==We?(ft=n.jsxs("div",{className:"rounded-3xl border border-border bg-card/40 p-6",children:[We,Qe]}),e[27]=Qe,e[28]=We,e[29]=ft):ft=e[29],ft}let F;e[30]!==i?(F=Sl(i),e[30]=i,e[31]=F):F=e[31];const q=F;let O;e[32]!==p?(O=p("analytics.title"),e[32]=p,e[33]=O):O=e[33];let I;e[34]!==O?(I=n.jsx("div",{className:"text-sm font-medium text-foreground",children:O}),e[34]=O,e[35]=I):I=e[35];let j;e[36]!==p?(j=p("analytics.description"),e[36]=p,e[37]=j):j=e[37];let S;e[38]!==j?(S=n.jsx("div",{className:"mt-1 text-sm text-muted-foreground",children:j}),e[38]=j,e[39]=S):S=e[39];let R;e[40]!==I||e[41]!==S?(R=n.jsxs("div",{children:[I,S]}),e[40]=I,e[41]=S,e[42]=R):R=e[42];let H;e[43]!==u?(H=D=>u(D),e[43]=u,e[44]=H):H=e[44];let $;e[45]===Symbol.for("react.memo_cache_sentinel")?($=n.jsx(oe,{className:"min-w-[160px]",children:n.jsx(ue,{})}),e[45]=$):$=e[45];let z;e[46]===Symbol.for("react.memo_cache_sentinel")?(z=n.jsx(le,{children:Nl.map(Il)}),e[46]=z):z=e[46];let V;e[47]!==s||e[48]!==H?(V=n.jsxs(ie,{value:s,onValueChange:H,children:[$,z]}),e[47]=s,e[48]=H,e[49]=V):V=e[49];let C;e[50]===Symbol.for("react.memo_cache_sentinel")?(C=["week","month"],e[50]=C):C=e[50];let E;e[51]!==m||e[52]!==p||e[53]!==o?(E=n.jsx("div",{className:"inline-flex rounded-xl border border-border bg-background/80 p-1",children:C.map(D=>n.jsx("button",{type:"button",onClick:()=>m(D),className:Re("rounded-lg px-3 py-1.5 text-sm transition-colors",D===o?"bg-foreground text-background":"text-muted-foreground hover:text-foreground"),children:p(D==="week"?"analytics.window.week":"analytics.window.month")},D))}),e[51]=m,e[52]=p,e[53]=o,e[54]=E):E=e[54];let Z;e[55]!==d?(Z=d?n.jsx(we,{className:"mr-2 h-4 w-4 animate-spin"}):n.jsx(Js,{className:"mr-2 h-4 w-4"}),e[55]=d,e[56]=Z):Z=e[56];let Y;e[57]!==p?(Y=p("actions.refresh"),e[57]=p,e[58]=Y):Y=e[58];let te;e[59]!==d||e[60]!==c||e[61]!==Z||e[62]!==Y?(te=n.jsxs(ce,{type:"button",variant:"outline",onClick:c,disabled:d,children:[Z,Y]}),e[59]=d,e[60]=c,e[61]=Z,e[62]=Y,e[63]=te):te=e[63];let G;e[64]!==V||e[65]!==E||e[66]!==te?(G=n.jsxs("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-center",children:[V,E,te]}),e[64]=V,e[65]=E,e[66]=te,e[67]=G):G=e[67];let A;e[68]!==G||e[69]!==R?(A=n.jsxs("div",{className:"flex flex-col gap-4 lg:flex-row lg:items-end lg:justify-between",children:[R,G]}),e[68]=G,e[69]=R,e[70]=A):A=e[70];let ae;e[71]!==i||e[72]!==p?(ae=i?n.jsx("div",{className:"mt-3 text-xs text-muted-foreground",children:p("analytics.summary",{start:i.windowStart,end:i.windowEnd,scannedFiles:i.scannedFiles,durationMs:i.durationMs})}):null,e[71]=i,e[72]=p,e[73]=ae):ae=e[73];let h;e[74]!==A||e[75]!==ae?(h=n.jsxs("div",{className:"rounded-3xl border border-border bg-card/40 p-5",children:[A,ae]}),e[74]=A,e[75]=ae,e[76]=h):h=e[76];let ne;e[77]!==l?(ne=l?n.jsx("div",{className:"rounded-2xl border border-destructive/20 bg-destructive/5 px-4 py-3 text-sm text-destructive",children:l}):null,e[77]=l,e[78]=ne):ne=e[78];let P;e[79]!==i?(P=i!=null&&i.warnings.length?n.jsx("div",{className:"rounded-2xl border border-border bg-card/30 px-4 py-3 text-sm text-muted-foreground",children:i.warnings.join(" ")}):null,e[79]=i,e[80]=P):P=e[80];let de;e[81]!==d||e[82]!==i||e[83]!==q||e[84]!==p?(de=!i&&d?n.jsx("div",{className:"rounded-3xl border border-border bg-card/30 p-6 text-sm text-muted-foreground",children:p("analytics.loading")}):i?n.jsx("div",{className:"overflow-hidden rounded-3xl border border-border bg-card/30",children:n.jsx("div",{className:"overflow-x-auto",children:n.jsxs("table",{className:"min-w-full text-sm",children:[n.jsx("thead",{className:"bg-background/70 text-left text-muted-foreground",children:n.jsxs("tr",{children:[n.jsx("th",{className:"px-4 py-3 font-medium",children:p("analytics.table.date")}),n.jsx("th",{className:"px-4 py-3 text-right font-medium",children:p("analytics.table.input")}),n.jsx("th",{className:"px-4 py-3 text-right font-medium",children:p("analytics.table.output")}),n.jsx("th",{className:"px-4 py-3 text-right font-medium",children:p("analytics.table.cache")}),q?n.jsx("th",{className:"px-4 py-3 text-right font-medium",children:p("analytics.table.reasoning")}):null,n.jsx("th",{className:"px-4 py-3 text-right font-medium",children:p("analytics.table.estimatedCost")})]})}),n.jsx("tbody",{children:i.days.map(D=>n.jsxs("tr",{className:"border-t border-border/70",children:[n.jsx("td",{className:"px-4 py-3 text-foreground",children:Cl(D.date)}),n.jsx("td",{className:"px-4 py-3 text-right tabular-nums",children:nt(D.inputTokens)}),n.jsx("td",{className:"px-4 py-3 text-right tabular-nums",children:nt(D.outputTokens)}),n.jsx("td",{className:"px-4 py-3 text-right tabular-nums",children:nt(D.cacheTokens)}),q?n.jsx("td",{className:"px-4 py-3 text-right tabular-nums",children:nt(D.reasoningTokens)}):null,n.jsx("td",{className:"px-4 py-3 text-right tabular-nums",children:ir(D.estimatedUsd)})]},D.date))}),n.jsx("tfoot",{className:"border-t border-border bg-background/60",children:n.jsxs("tr",{children:[n.jsx("td",{className:"px-4 py-3 font-medium text-foreground",children:p("analytics.table.total")}),n.jsx("td",{className:"px-4 py-3 text-right font-medium tabular-nums",children:nt(i.totals.inputTokens)}),n.jsx("td",{className:"px-4 py-3 text-right font-medium tabular-nums",children:nt(i.totals.outputTokens)}),n.jsx("td",{className:"px-4 py-3 text-right font-medium tabular-nums",children:nt(i.totals.cacheTokens)}),q?n.jsx("td",{className:"px-4 py-3 text-right font-medium tabular-nums",children:nt(i.totals.reasoningTokens)}):null,n.jsx("td",{className:"px-4 py-3 text-right font-medium tabular-nums",children:ir(i.totals.estimatedUsd)})]})})]})})}):n.jsx("div",{className:"rounded-3xl border border-border bg-card/30 p-6 text-sm text-muted-foreground",children:p("analytics.empty")}),e[81]=d,e[82]=i,e[83]=q,e[84]=p,e[85]=de):de=e[85];let re;return e[86]!==h||e[87]!==ne||e[88]!==P||e[89]!==de?(re=n.jsxs("div",{className:"space-y-4",children:[h,ne,P,de]}),e[86]=h,e[87]=ne,e[88]=P,e[89]=de,e[90]=re):re=e[90],re}function Il(t){return n.jsx(M,{value:t.id,children:t.label},t.id)}function Rl(t){const e=Ae.c(30),{access:a}=t,s=gr(),{socket:o}=xr(),i=dt("providerUsage"),[l,d]=k.useState("codex"),[u,m]=k.useState("week"),[c,g]=k.useState(null),[p,v]=k.useState(null),F=k.useRef(0);let q;e[0]!==l||e[1]!==u?(q=Me.settingsUsage(l,u),e[0]=l,e[1]=u,e[2]=q):q=e[2];const O=q,I=Be(O);let j;e[3]!==a.features.providerUsage.enabled||e[4]!==O||e[5]!==l||e[6]!==o||e[7]!==i||e[8]!==u?(j=function(E){if(!a.features.providerUsage.enabled)return Promise.resolve();const Z=F.current=F.current+1;return E==="auto"&&g(null),v(null),Oe(O,()=>o.command({type:"usage.analyticsReport",provider:l,window:u}),{statusLabel:i(E==="refresh"?"analytics.refreshing":"analytics.loading"),dedupe:E!=="refresh"}).then(Y=>{Z===F.current&&g(Y)}).catch(Y=>{if(Z!==F.current)return;const te=Y instanceof Error?Y.message:String(Y);v(te),E==="refresh"&&Dt.error(te)})},e[3]=a.features.providerUsage.enabled,e[4]=O,e[5]=l,e[6]=o,e[7]=i,e[8]=u,e[9]=j):j=e[9];const S=j;let R;e[10]!==S?(R=()=>{S("auto")},e[10]=S,e[11]=R):R=e[11];let H;e[12]!==a.features.providerUsage.enabled||e[13]!==l||e[14]!==o||e[15]!==u?(H=[a.features.providerUsage.enabled,l,o,u],e[12]=a.features.providerUsage.enabled,e[13]=l,e[14]=o,e[15]=u,e[16]=H):H=e[16],k.useEffect(R,H);let $;e[17]!==S?($=()=>{S("refresh")},e[17]=S,e[18]=$):$=e[18];let z;e[19]!==s?(z=()=>s(br),e[19]=s,e[20]=z):z=e[20];let V;return e[21]!==a||e[22]!==p||e[23]!==I||e[24]!==l||e[25]!==c||e[26]!==$||e[27]!==z||e[28]!==u?(V=n.jsx(Tl,{access:a,provider:l,window:u,report:c,error:p,isLoading:I,onProviderChange:d,onWindowChange:m,onRefresh:$,onOpenAccount:z}),e[21]=a,e[22]=p,e[23]=I,e[24]=l,e[25]=c,e[26]=$,e[27]=z,e[28]=u,e[29]=V):V=e[29],V}function El(t){var e;return n.jsx("div",{className:"rounded-lg border border-border bg-muted/30 px-3 py-2 text-sm text-foreground",children:((e=t.remoteAuthSnapshot)==null?void 0:e.baseUrl)??""})}const Al=["account","general","changelog","quick-chats","slash-commands","usage","providers","keybindings"],Ws=30*6e4,or=15e3,Pl="Selected local image",Ol=20*1024*1024;function hn(t){return typeof t=="string"&&(t.startsWith("data:image/")||t.startsWith("managed://"))}function lr(t){return t&&Al.some(e=>e===t)?t:null}function Dl(t){return[{id:"account",label:t("sidebar.account.label"),icon:vo,subtitle:t("sidebar.account.subtitle")},{id:"general",label:t("sidebar.general.label"),icon:xo,subtitle:t("sidebar.general.subtitle")},{id:"changelog",label:t("sidebar.changelog.label"),icon:vr,subtitle:t("sidebar.changelog.subtitle")},{id:"quick-chats",label:t("sidebar.quickChats.label"),icon:Ci,subtitle:t("sidebar.quickChats.subtitle")},{id:"slash-commands",label:t("sidebar.slashCommands.label"),icon:Xs,subtitle:t("sidebar.slashCommands.subtitle")},{id:"usage",label:t("sidebar.usage.label"),icon:yr,subtitle:t("sidebar.usage.subtitle")},{id:"providers",label:t("sidebar.providers.label"),icon:fo,subtitle:t("sidebar.providers.subtitle")},{id:"keybindings",label:t("sidebar.keybindings.label"),icon:oo,subtitle:t("sidebar.keybindings.subtitle")}]}function cr(t,e){return t(`keybindings.items.${{submitChatMessage:"submitChatMessage",toggleQuickPrompts:"toggleQuickPrompts",toggleProjectsSidebar:"toggleProjectsSidebar",toggleEmbeddedTerminal:"toggleEmbeddedTerminal",toggleRightSidebar:"toggleRightSidebar",openInFinder:"openInFinder",openInEditor:"openInEditor",addSplitTerminal:"addSplitTerminal"}[e]}.title`)}const Ll=[{value:"cursor",label:"Cursor"},{value:"vscode",label:"VS Code"},{value:"windsurf",label:"Windsurf"},{value:"custom",label:"Custom"}],Ts=Object.keys(Ji);function rc(t){return`Edit global app shortcuts stored in ${t}.`}function ks(t){return Object.fromEntries(Ts.map(e=>[e,en(t[e])]))}function Ss(t,e){return Ts.every(a=>(t[a]??"")===(e[a]??""))}function Ml(t,e,a){const s={...t};for(const o of Ts)(t[o]??"")===(e[o]??"")&&(s[o]=a[o]??"");return s}function dr(t){return t?hn(t)?"":t:""}function Gs(t){return hn(t)}function ur(t){const e=t.draft.trim();return e===""?t.isShowingLocalImagePlaceholder&&hn(t.currentBackgroundImage)?t.currentBackgroundImage:null:e}function Bl(t,e,a){return e&&Ss(a,e)?{changed:!1,nextCurrent:t,nextLoaded:e,nextSaved:e}:{changed:!0,nextCurrent:!e||Ss(t,e)?a:t,nextLoaded:a,nextSaved:a}}function Ul(t,e={update:"Update",checkForUpdates:"Check for updates"}){const a=(t==null?void 0:t.status)==="checking",s=(t==null?void 0:t.status)==="updating"||(t==null?void 0:t.status)==="restart_pending";return t!=null&&t.updateAvailable?{disabled:s,kind:"update",label:e.update,variant:"default"}:{disabled:a||s,kind:"check",label:e.checkForUpdates,spinning:a,variant:"outline"}}function Ot(t,e,a,s={active:"Active.",inactive:"Inactive."}){const o=un(a,t),i=(e==null?void 0:e.settings[a])??he[a];return o.systemActive?i.active?s.active:s.inactive:so(a,e==null?void 0:e.settings,t)??s.inactive}function Fl(t){return t&&typeof t=="object"&&"idx"in t&&typeof t.idx=="number"&&t.idx>0?"back":"home"}function Qs({themePreference:t,nextBackgroundImage:e,backgroundOpacity:a}){const s=typeof e=="string"&&e.trim()!=="";return t!=="custom"||!s||a!==1?{}:{backgroundOpacity:.85,backgroundBlur:6}}function Ys(t){return t.importSequence===t.latestImportSequence}function zl(t){return t>Ol}function K(t){const e=Ae.c(22),{title:a,description:s,children:o,badge:i,bordered:l,alignStart:d,belowDescription:u}=t,m=l===void 0?!0:l,c=d===void 0?!1:d,g=m?"border-t border-border":void 0,p=`flex flex-col sm:flex-row sm:justify-between gap-3 sm:gap-8 py-5 ${c?"sm:items-start":"sm:items-center"}`;let v;e[0]!==a?(v=n.jsx("span",{children:a}),e[0]=a,e[1]=v):v=e[1];let F;e[2]!==i||e[3]!==v?(F=n.jsxs("div",{className:"flex flex-wrap items-center gap-2 text-sm font-medium text-foreground",children:[v,i]}),e[2]=i,e[3]=v,e[4]=F):F=e[4];let q;e[5]!==s?(q=n.jsx("div",{className:"mt-1 text-[13px] text-muted-foreground",children:s}),e[5]=s,e[6]=q):q=e[6];let O;e[7]!==u?(O=u?n.jsx("div",{className:"min-w-0 max-w-xl",children:u}):null,e[7]=u,e[8]=O):O=e[8];let I;e[9]!==F||e[10]!==q||e[11]!==O?(I=n.jsxs("div",{className:"min-w-0 max-w-xl",children:[F,q,O]}),e[9]=F,e[10]=q,e[11]=O,e[12]=I):I=e[12];let j;e[13]!==o?(j=n.jsx("div",{className:"flex w-full items-center sm:w-auto sm:shrink-0",children:o}),e[13]=o,e[14]=j):j=e[14];let S;e[15]!==j||e[16]!==p||e[17]!==I?(S=n.jsxs("div",{className:p,children:[I,j]}),e[15]=j,e[16]=p,e[17]=I,e[18]=S):S=e[18];let R;return e[19]!==S||e[20]!==g?(R=n.jsx("div",{className:g,children:S}),e[19]=S,e[20]=g,e[21]=R):R=e[21],R}function ct(t){return t<1024?`${t} B`:t<1024*1024?`${(t/1024).toFixed(1)} KB`:t<1024**3?`${(t/(1024*1024)).toFixed(1)} MB`:`${(t/1024**3).toFixed(2)} GiB`}function $l(t){if(t.bytesTotal<=0||t.bytesDone>=t.bytesTotal)return null;const e=Date.now()-t.startedAtMs;if(e<300)return null;const a=t.bytesDone/e;return a<=0?null:(t.bytesTotal-t.bytesDone)/a}function Vl(t,e){if(t===null||!Number.isFinite(t))return null;const a=Math.max(1,Math.round(t/1e3));if(a<60)return e("account.cloudSync.progressEtaSeconds",{seconds:a});const s=Math.max(1,Math.round(a/60));return e("account.cloudSync.progressEtaMinutes",{minutes:s})}function Zl(t){const e=Ae.c(60),{progress:a,settingsT:s}=t;if(!a){let C;e[0]===Symbol.for("react.memo_cache_sentinel")?(C=n.jsx("div",{className:"h-2 w-full overflow-hidden rounded-full bg-muted",children:n.jsx("div",{className:"h-full w-full rounded-full bg-primary/35 motion-safe:animate-pulse"})}),e[0]=C):C=e[0];let E;e[1]!==s?(E=s("account.cloudSync.progressGeneric"),e[1]=s,e[2]=E):E=e[2];let Z;return e[3]!==E?(Z=n.jsxs("div",{className:"mt-4 space-y-2",children:[C,n.jsx("p",{className:"text-xs text-muted-foreground",children:E})]}),e[3]=E,e[4]=Z):Z=e[4],Z}const o=a.phase==="uploading"?"account.cloudSync.progressPhaseUploading":a.phase==="downloading"?"account.cloudSync.progressPhaseDownloading":"account.cloudSync.progressPhaseSnapshot";let i;e[5]!==o||e[6]!==s?(i=s(o),e[5]=o,e[6]=s,e[7]=i):i=e[7];const l=i,d=a.bytesTotal<=0,u=a.bytesTotal>0?Math.min(100,100*a.bytesDone/Math.max(a.bytesTotal,a.bytesDone,1)):0;let m;if(e[8]!==a.bytesDone||e[9]!==a.bytesTotal||e[10]!==a.itemCount||e[11]!==a.itemIndex||e[12]!==a.knownBytes||e[13]!==a.phase||e[14]!==s){if(m=[],a.phase==="uploading"&&(a.knownBytes??0)>0){let C;e[16]!==a.knownBytes||e[17]!==s?(C=s("account.cloudSync.progressUploadSize",{size:ct(a.knownBytes)}),e[16]=a.knownBytes,e[17]=s,e[18]=C):C=e[18],m.push(C)}if(a.bytesTotal>0){let C;e[19]!==a.bytesDone||e[20]!==a.bytesTotal||e[21]!==s?(C=s("account.cloudSync.progressBytes",{done:ct(a.bytesDone),total:ct(a.bytesTotal)}),e[19]=a.bytesDone,e[20]=a.bytesTotal,e[21]=s,e[22]=C):C=e[22],m.push(C)}if(a.phase==="uploading"&&(a.itemCount??0)>1){let C;e[23]!==a.itemCount||e[24]!==s?(C=s("account.cloudSync.progressParts",{count:a.itemCount}),e[23]=a.itemCount,e[24]=s,e[25]=C):C=e[25],m.push(C)}if(a.phase==="downloading"&&(a.itemCount??0)>1&&a.itemIndex!=null){const C=a.itemIndex+1;let E;e[26]!==a.itemCount||e[27]!==s||e[28]!==C?(E=s("account.cloudSync.progressFiles",{current:C,count:a.itemCount}),e[26]=a.itemCount,e[27]=s,e[28]=C,e[29]=E):E=e[29],m.push(E)}e[8]=a.bytesDone,e[9]=a.bytesTotal,e[10]=a.itemCount,e[11]=a.itemIndex,e[12]=a.knownBytes,e[13]=a.phase,e[14]=s,e[15]=m}else m=e[15];let c;e[30]!==d||e[31]!==a||e[32]!==s?(c=d?null:Vl($l(a),s),e[30]=d,e[31]=a,e[32]=s,e[33]=c):c=e[33];const g=c;let p;e[34]!==a.previewLogicalKeys?(p=a.previewLogicalKeys??[],e[34]=a.previewLogicalKeys,e[35]=p):p=e[35];const v=p;let F;e[36]!==a.currentLogicalKeys?(F=a.currentLogicalKeys??[],e[36]=a.currentLogicalKeys,e[37]=F):F=e[37];const q=F;let O;e[38]!==q?(O=new Set(q),e[38]=q,e[39]=O):O=e[39];const I=O;let j;e[40]!==d||e[41]!==u?(j=n.jsx("div",{className:"h-2 w-full overflow-hidden rounded-full bg-muted",children:d?n.jsx("div",{className:"h-full w-full rounded-full bg-primary/35 motion-safe:animate-pulse"}):n.jsx("div",{className:"h-full rounded-full bg-primary transition-[width] duration-300 ease-out",style:{width:`${u}%`}})}),e[40]=d,e[41]=u,e[42]=j):j=e[42];let S;e[43]!==l?(S=n.jsx("div",{className:"font-medium text-foreground/90",children:l}),e[43]=l,e[44]=S):S=e[44];let R;e[45]!==m?(R=m.length>0?n.jsx("div",{children:m.join(" · ")}):null,e[45]=m,e[46]=R):R=e[46];let H;e[47]!==I||e[48]!==v?(H=v.length>0?n.jsx("div",{className:"mt-1 space-y-0.5 font-mono text-[11px]",children:v.map((C,E)=>{const Z=I.has(C);return n.jsxs("div",{className:Z?"text-foreground/90":"text-muted-foreground/80",children:[Z?"-> ":" ",C]},`preview-${C}-${E}`)})}):null,e[47]=I,e[48]=v,e[49]=H):H=e[49];let $;e[50]!==g?($=g?n.jsx("div",{children:g}):null,e[50]=g,e[51]=$):$=e[51];let z;e[52]!==$||e[53]!==S||e[54]!==R||e[55]!==H?(z=n.jsxs("div",{className:"space-y-0.5 text-xs text-muted-foreground",children:[S,R,H,$]}),e[52]=$,e[53]=S,e[54]=R,e[55]=H,e[56]=z):z=e[56];let V;return e[57]!==z||e[58]!==j?(V=n.jsxs("div",{className:"mt-4 space-y-2",children:[j,z]}),e[57]=z,e[58]=j,e[59]=V):V=e[59],V}const Kl=["claude","codex"];function ql(t){const e=Ae.c(72),{prov:a,remote:s,globalStatus:o,summary:i,settingsT:l,onToggleBackup:d,onToggleSync:u}=t,m=s.syncEnabled,c=s.backup[a],g=s.sync[a],p=m&&(c||g),v=m&&c?((i==null?void 0:i.pendingUploadCount)??0)>0:!1,F=m&&g?((i==null?void 0:i.pendingDownloadCount)??0)>0:!1,q=m&&g?((i==null?void 0:i.blockedDownloadCount)??0)>0:!1,O=((i==null?void 0:i.unlinkedRemoteTranscriptCount)??0)>0,I=m&&c?((i==null?void 0:i.chatsPendingLocalPayloadForBackup)??0)>0:!1,j=v||F||I||q;let S,R;if(m)if(!c&&!g){let N;e[2]!==l?(N=l("account.cloudSync.providerStatusExcluded"),e[2]=l,e[3]=N):N=e[3],S=N,R="border-border text-muted-foreground"}else if(o==="syncing"){let N;e[4]!==l?(N=l("account.cloudSync.providerStatusSyncing"),e[4]=l,e[5]=N):N=e[5],S=N,R="border-primary/40 text-foreground"}else if(o==="error"){let N;e[6]!==l?(N=l("account.connection.error"),e[6]=l,e[7]=N):N=e[7],S=N,R="border-destructive/50 text-destructive"}else if(q){let N;e[8]!==l?(N=l("account.cloudSync.providerStatusBlocked"),e[8]=l,e[9]=N):N=e[9],S=N,R="border-amber-500/50 text-amber-700 dark:text-amber-400/90"}else if(j){let N;e[10]!==l?(N=l("account.cloudSync.providerStatusPending"),e[10]=l,e[11]=N):N=e[11],S=N,R="border-amber-500/50 text-amber-700 dark:text-amber-400/90"}else{let N;e[12]!==l?(N=l("account.cloudSync.providerStatusUpToDate"),e[12]=l,e[13]=N):N=e[13],S=N,R="border-emerald-500/45 text-emerald-800 dark:text-emerald-400/90"}else{let N;e[0]!==l?(N=l("account.cloudSync.providerStatusCloudOff"),e[0]=l,e[1]=N):N=e[1],S=N,R="border-border text-muted-foreground"}const H=(i==null?void 0:i.localTranscriptBytes)??0,$=(i==null?void 0:i.remoteTranscriptObjectCount)??0,z=`account.cloudSync.providers.${a}`;let V;e[14]!==l||e[15]!==z?(V=l(z),e[14]=l,e[15]=z,e[16]=V):V=e[16];let C;e[17]!==V?(C=n.jsx("div",{className:"text-sm font-medium",children:V}),e[17]=V,e[18]=C):C=e[18];let E;e[19]!==R?(E=Re("inline-flex items-center gap-1 rounded-full border px-2 py-0.5 text-[10px] font-medium leading-none",R),e[19]=R,e[20]=E):E=e[20];let Z;e[21]!==o||e[22]!==p?(Z=o==="syncing"&&p?n.jsx(we,{className:"size-3 animate-spin","aria-hidden":!0}):null,e[21]=o,e[22]=p,e[23]=Z):Z=e[23];let Y;e[24]!==S||e[25]!==E||e[26]!==Z?(Y=n.jsxs("span",{className:E,children:[Z,S]}),e[24]=S,e[25]=E,e[26]=Z,e[27]=Y):Y=e[27];let te;e[28]!==C||e[29]!==Y?(te=n.jsx("div",{className:"flex flex-wrap items-center justify-between gap-2",children:n.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[C,Y]})}),e[28]=C,e[29]=Y,e[30]=te):te=e[30];let G;e[31]!==c||e[32]!==q||e[33]!==o||e[34]!==j||e[35]!==p||e[36]!==H||e[37]!==m||e[38]!==F||e[39]!==I||e[40]!==v||e[41]!==$||e[42]!==l||e[43]!==i||e[44]!==g||e[45]!==O?(G=i?n.jsxs("div",{className:"space-y-0.5 text-[11px] text-muted-foreground",children:[n.jsx("div",{children:l("account.cloudSync.providerLocalFootprint",{size:ct(H)})}),$>0?n.jsx("div",{children:l("account.cloudSync.providerServerObjects",{count:$})}):null,!c&&m&&H>0?n.jsx("div",{children:l("account.cloudSync.providerHintIfBackupOff",{size:ct(H)})}):null,!g&&m?n.jsx("div",{children:l("account.cloudSync.providerHintIfSyncOff")}):null,p&&j&&o!=="syncing"?n.jsx("div",{className:"text-amber-800 dark:text-amber-400/95",children:l("account.cloudSync.providerStatusPendingHint")}):null,v&&m&&c?n.jsx("div",{children:l("account.cloudSync.providerQueuedUpload",{count:i.pendingUploadCount,size:ct(i.pendingUploadBytes)})}):null,F&&m&&g?n.jsx("div",{children:l("account.cloudSync.providerQueuedDownload",{count:i.pendingDownloadCount})}):null,q&&m&&g?n.jsx("div",{className:"text-amber-800 dark:text-amber-400/95",children:l("account.cloudSync.providerBlockedDownload",{chatCount:i.blockedDownloadCount,projectCount:i.blockedProjectCount})}):null,O?n.jsx("div",{className:"text-muted-foreground",children:l("account.cloudSync.providerUnlinkedRemote",{count:i.unlinkedRemoteTranscriptCount})}):null,I&&m&&c?n.jsx("div",{children:l("account.cloudSync.providerPendingLocalPayload",{count:i.chatsPendingLocalPayloadForBackup})}):null]}):n.jsx("div",{className:"text-[11px] text-muted-foreground",children:"—"}),e[31]=c,e[32]=q,e[33]=o,e[34]=j,e[35]=p,e[36]=H,e[37]=m,e[38]=F,e[39]=I,e[40]=v,e[41]=$,e[42]=l,e[43]=i,e[44]=g,e[45]=O,e[46]=G):G=e[46];let A;e[47]!==d?(A=N=>{d(N.target.checked)},e[47]=d,e[48]=A):A=e[48];let ae;e[49]!==c||e[50]!==A?(ae=n.jsx("input",{type:"checkbox",className:"size-4 rounded border border-input",checked:c,onChange:A}),e[49]=c,e[50]=A,e[51]=ae):ae=e[51];let h;e[52]!==l?(h=l("account.cloudSync.providerBackup"),e[52]=l,e[53]=h):h=e[53];let ne;e[54]!==ae||e[55]!==h?(ne=n.jsxs("label",{className:"flex items-center gap-2 text-xs",children:[ae,h]}),e[54]=ae,e[55]=h,e[56]=ne):ne=e[56];let P;e[57]!==u?(P=N=>{u(N.target.checked)},e[57]=u,e[58]=P):P=e[58];let de;e[59]!==g||e[60]!==P?(de=n.jsx("input",{type:"checkbox",className:"size-4 rounded border border-input",checked:g,onChange:P}),e[59]=g,e[60]=P,e[61]=de):de=e[61];let re;e[62]!==l?(re=l("account.cloudSync.providerSync"),e[62]=l,e[63]=re):re=e[63];let D;e[64]!==de||e[65]!==re?(D=n.jsxs("label",{className:"flex items-center gap-2 text-xs",children:[de,re]}),e[64]=de,e[65]=re,e[66]=D):D=e[66];let fe;return e[67]!==ne||e[68]!==D||e[69]!==te||e[70]!==G?(fe=n.jsxs("div",{className:"space-y-2 rounded-md border border-border p-3",children:[te,G,ne,D]}),e[67]=ne,e[68]=D,e[69]=te,e[70]=G,e[71]=fe):fe=e[71],fe}function cn(t,e){if(!t)return"—";const a=Date.parse(t);return Number.isNaN(a)?t:new Intl.DateTimeFormat(e||"en",{dateStyle:"medium",timeStyle:"short"}).format(a)}function Xt(t){return(t/1024).toFixed(3).replace(/(\.\d*?[1-9])0+$/u,"$1").replace(/\.0+$/u,"")}function Hl(t){const e=Ae.c(3),{url:a}=t;let s;e[0]===Symbol.for("react.memo_cache_sentinel")?(s=tn("/api/qrcode"),e[0]=s):s=e[0];const o=`${s}?value=${encodeURIComponent(a)}`;let i;return e[1]!==o?(i=n.jsx("div",{className:"rounded-2xl border border-border bg-background/80 p-3",children:n.jsx("img",{src:o,alt:"QR code for relay access",className:"h-44 w-44 rounded-lg bg-white p-2"})}),e[1]=o,e[2]=i):i=e[2],i}function Wl(t,e={signedIn:"Connected to Kaizen",signedOut:"Not connected",pendingSignIn:"Finish signing in…",error:"Connection error"}){switch(t){case"signed_in":return e.signedIn;case"signed_out":return e.signedOut;case"pending_sign_in":return e.pendingSignIn;case"error":return e.error;default:return t}}function Gl(t,e){switch(t){case"disabled":return e("account.remoteRelay.status.disabled");case"unauthorized":return e("account.remoteRelay.status.unauthorized");case"registering":return e("account.remoteRelay.status.registering");case"connecting":return e("account.remoteRelay.status.connecting");case"online":return e("account.remoteRelay.status.online");case"offline":return e("account.remoteRelay.status.offline");case"idle_disconnected":return e("account.remoteRelay.status.idleDisconnected");case"manually_disabled":return e("account.remoteRelay.status.manuallyDisabled");case"error":return e("account.remoteRelay.status.error");default:return e("account.remoteRelay.status.disabled")}}function mr(t,e){if(!t)return null;const a=t.trim().toLowerCase();return a==="relay connection failed"?e("account.remoteRelay.errors.connectionFailed"):a==="remote relay unavailable."?e("account.remoteRelay.errors.unavailable"):a==="remote relay machine is not registered yet."?e("account.remoteRelay.errors.notRegisteredYet"):a==="failed to rotate relay url key"?e("account.remoteRelay.errors.rotateUrlFailed"):a==="unable to connect. is the computer able to access the url?"?e("account.remoteRelay.errors.unableToAccessUrl"):t}function Ql(t){const e=Ae.c(15),{access:a,copy:s}=t,o=a.signedIn?s.accountFeaturesUnlocked:s.accountFeaturesLocked;let i;e[0]!==s.accountFeaturesLabel||e[1]!==o?(i={label:s.accountFeaturesLabel,body:o},e[0]=s.accountFeaturesLabel,e[1]=o,e[2]=i):i=e[2];const l=a.paid?s.paidFeaturesUnlocked:s.paidFeaturesLocked;let d;e[3]!==s.paidFeaturesLabel||e[4]!==l?(d={label:s.paidFeaturesLabel,body:l},e[3]=s.paidFeaturesLabel,e[4]=l,e[5]=d):d=e[5];let u;e[6]!==s.destinationBody||e[7]!==s.destinationLabel?(u={label:s.destinationLabel,body:s.destinationBody},e[6]=s.destinationBody,e[7]=s.destinationLabel,e[8]=u):u=e[8];let m;e[9]!==i||e[10]!==d||e[11]!==u?(m=[i,d,u],e[9]=i,e[10]=d,e[11]=u,e[12]=m):m=e[12];const c=m;let g;return e[13]!==c?(g=n.jsx("dl",{className:"w-full min-w-0 space-y-3.5 text-left sm:max-w-[420px]",children:c.map(Yl)}),e[13]=c,e[14]=g):g=e[14],g}function Yl(t){return n.jsxs("div",{children:[n.jsx("dt",{className:"text-xs font-medium uppercase tracking-wide text-muted-foreground",children:t.label}),n.jsx("dd",{className:"mt-1 text-sm leading-snug text-foreground",children:t.body})]},t.label)}function Jl(t){const e=Ae.c(17),{access:a,copy:s}=t;let o;e[0]!==s.accountAccessLabel?(o=n.jsx("dt",{className:"text-xs font-medium uppercase tracking-wide text-muted-foreground",children:s.accountAccessLabel}),e[0]=s.accountAccessLabel,e[1]=o):o=e[1];const i=a.signedIn?s.unlocked:s.locked;let l;e[2]!==i?(l=n.jsx("dd",{className:"mt-1 tabular-nums text-sm text-foreground",children:i}),e[2]=i,e[3]=l):l=e[3];let d;e[4]!==o||e[5]!==l?(d=n.jsxs("div",{children:[o,l]}),e[4]=o,e[5]=l,e[6]=d):d=e[6];let u;e[7]!==s.paidAccessLabel?(u=n.jsx("dt",{className:"text-xs font-medium uppercase tracking-wide text-muted-foreground",children:s.paidAccessLabel}),e[7]=s.paidAccessLabel,e[8]=u):u=e[8];const m=a.paid?s.unlocked:s.locked;let c;e[9]!==m?(c=n.jsx("dd",{className:"mt-1 tabular-nums text-sm text-foreground",children:m}),e[9]=m,e[10]=c):c=e[10];let g;e[11]!==u||e[12]!==c?(g=n.jsxs("div",{children:[u,c]}),e[11]=u,e[12]=c,e[13]=g):g=e[13];let p;return e[14]!==d||e[15]!==g?(p=n.jsxs("dl",{className:"mt-4 grid gap-3 sm:grid-cols-2 sm:gap-x-6",children:[d,g]}),e[14]=d,e[15]=g,e[16]=p):p=e[16],p}function Xl(t){const e=Ae.c(30),{snapshot:a,redactMachineId:s,locale:o,copy:i}=t,l=s===void 0?!1:s;let d;e[0]!==i?(d=i===void 0?{machine:"Machine",machineId:"Machine ID",connected:"Connected",lastHeartbeat:"Last heartbeat"}:i,e[0]=i,e[1]=d):d=e[1];const u=d;if(!a)return null;let m;if(e[2]!==u||e[3]!==o||e[4]!==l||e[5]!==a.connectedAt||e[6]!==a.lastHeartbeatAt||e[7]!==a.machineDisplayName||e[8]!==a.machineId){if(m=[],a.machineDisplayName&&!l){let g;e[10]!==u.machine||e[11]!==a.machineDisplayName?(g={label:u.machine,value:a.machineDisplayName},e[10]=u.machine,e[11]=a.machineDisplayName,e[12]=g):g=e[12],m.push(g)}else if(a.machineId&&!l){let g;e[13]!==u.machineId||e[14]!==a.machineId?(g={label:u.machineId,value:a.machineId},e[13]=u.machineId,e[14]=a.machineId,e[15]=g):g=e[15],m.push(g)}if(a.connectedAt){const g=u.connected;let p;e[16]!==o||e[17]!==a.connectedAt?(p=cn(a.connectedAt,o),e[16]=o,e[17]=a.connectedAt,e[18]=p):p=e[18];let v;e[19]!==u.connected||e[20]!==p?(v={label:g,value:p},e[19]=u.connected,e[20]=p,e[21]=v):v=e[21],m.push(v)}if(a.lastHeartbeatAt){const g=u.lastHeartbeat;let p;e[22]!==o||e[23]!==a.lastHeartbeatAt?(p=cn(a.lastHeartbeatAt,o),e[22]=o,e[23]=a.lastHeartbeatAt,e[24]=p):p=e[24];let v;e[25]!==u.lastHeartbeat||e[26]!==p?(v={label:g,value:p},e[25]=u.lastHeartbeat,e[26]=p,e[27]=v):v=e[27],m.push(v)}e[2]=u,e[3]=o,e[4]=l,e[5]=a.connectedAt,e[6]=a.lastHeartbeatAt,e[7]=a.machineDisplayName,e[8]=a.machineId,e[9]=m}else m=e[9];if(m.length===0)return null;let c;return e[28]!==m?(c=n.jsx("dl",{className:"mt-3 space-y-2 text-sm",children:m.map(ec)}),e[28]=m,e[29]=c):c=e[29],c}function ec(t){return n.jsxs("div",{className:"flex flex-col gap-0.5 sm:flex-row sm:justify-between sm:gap-4",children:[n.jsx("dt",{className:"text-muted-foreground",children:t.label}),n.jsx("dd",{className:"min-w-0 break-all text-right tabular-nums text-foreground sm:text-left",children:t.value})]},t.label)}function ic(){var ha,pa,ga,xa,ba,va,ya,ka,ja,wa,_a,Na,Ca;const t=gr(),e=Si(),{sectionId:a}=Ti(),s=dt("settings"),o=dt("featureAccess"),i=xr(),l=dn(),d=Ii(),u=Ri(),m=Ei(),c=k.useMemo(()=>({...i,...l,...d,...u,...m}),[u,i,l,d,m]),{theme:g,setTheme:p}=Ai(),v=bs(r=>r.locale),F=bs(r=>r.setLocale),q=bs(r=>r.restoreLocale),O=k.useMemo(()=>Dl(r=>s(r)),[s]),I=k.useMemo(()=>({cta:{account:o("cta.account"),paid:o("cta.paid")},denied:{account:o("denied.account",{featureName:"{featureName}"}),paid:o("denied.paid",{featureName:"{featureName}"})},deniedShort:{account:o("deniedShort.account",{featureName:"{featureName}"}),paid:o("deniedShort.paid",{featureName:"{featureName}"})}}),[o]),j=lr(a)??"general",S=c.connectionStatus==="connecting",R=((ha=c.localProjects)==null?void 0:ha.machine.displayName)??s("common.unavailable"),H=((pa=c.localProjects)==null?void 0:pa.projects.length)??0,$=Pi.split("/")[1]??"unknown",z=Je(r=>r.scrollbackLines),V=Je(r=>r.minColumnWidth),C=Je(r=>r.editorPreset),E=Je(r=>r.editorCommandTemplate),Z=Je(r=>r.setScrollbackLines),Y=Je(r=>r.setMinColumnWidth),te=Je(r=>r.setEditorPreset),G=Je(r=>r.setEditorCommandTemplate),A=c.generalSettings,ae=c.keybindings,h=c.providerSettings,ne=Xe(r=>r.defaultProvider),P=Xe(r=>r.providerDefaults),de=Xe(r=>r.showProviderIconsInSideTray),re=Xe(r=>r.setDefaultProvider),D=Xe(r=>r.setProviderDefaultModel),fe=Xe(r=>r.setProviderDefaultModelOptions),N=Xe(r=>r.setProviderDefaultPlanMode),ye=Xe(r=>r.setShowProviderIconsInSideTray),ve=et(r=>r.folderGroupsEnabled),ke=et(r=>r.showFeatureOverviewInSidebar),Ne=et(r=>r.kanbanStatusesEnabled),Ce=et(r=>r.commitProjectMetadataDirectory),Pe=et(r=>r.setFolderGroupsEnabled),We=et(r=>r.setShowFeatureOverviewInSidebar),Ge=et(r=>r.setKanbanStatusesEnabled),Qe=et(r=>r.setCommitProjectMetadataDirectory),ft=Ie(r=>r.themeId),pn=Ie(r=>r.customAppearance),Le=Ie(r=>r.backgroundImage),Ze=Ie(r=>r.backgroundOpacity),wt=Ie(r=>r.backgroundBlur),gn=Ie(r=>r.showProjectIconsInSidebar),Sr=Ie(r=>r.availableThemes),Tr=Ie(r=>r.setThemeId),Ir=Ie(r=>r.setCustomAppearance),zt=Ie(r=>r.setBackgroundImage),$t=Ie(r=>r.setBackgroundOpacity),Vt=Ie(r=>r.setBackgroundBlur),Rr=Ie(r=>r.setShowProjectIconsInSidebar),Er=tt(r=>r.browserNotificationsEnabled),xn=k.useRef(null),bn=tt(r=>r.soundEnabled),vn=tt(r=>r.vibrationEnabled),yn=tt(r=>r.lastPermissionState),as=tt(r=>r.setBrowserNotificationsEnabled),Ar=tt(r=>r.setSoundEnabled),Pr=tt(r=>r.setVibrationEnabled),kn=tt(r=>r.setLastPermissionState),ht=k.useMemo(()=>Ia(ae),[ae]),jn=ht.filePathDisplay||Oi(),Or=(A==null?void 0:A.filePathDisplay)||Di(),rs=k.useMemo(()=>ks(ht.bindings),[ht.bindings]),[wn,Is]=k.useState(String(z)),[_n,Zt]=k.useState(Xt((A==null?void 0:A.settings.sendChunkSizeBytes)??Jt.sendChunkSizeBytes)),[Nn,Rs]=k.useState(String(V)),[Es,Cn]=k.useState(E),[is,_t]=k.useState(dr(Le)),[os,pt]=k.useState(Gs(Le)),ls=k.useRef(!1),Kt=k.useRef(0),[Sn,As]=k.useState(String(Ze)),[Tn,Ps]=k.useState(String(wt)),[gt,qt]=k.useState(()=>ks(ht.bindings)),[Os,In]=k.useState(()=>ks(ht.bindings)),[Rn,cs]=k.useState(null),[ds,En]=k.useState(!1),[An,xt]=k.useState(null),[Pn,us]=k.useState(!1),Ds=k.useRef(rs),On=k.useRef(rs),[Dn,Ls]=k.useState(null),[sc,Dr]=k.useState(""),[Nt,_e]=k.useState(null),[bt,Ct]=k.useState(null),[Ln,St]=k.useState(null),[Mn,Ms]=k.useState(!1),[Lr,Bn]=k.useState(!1),[Ht,Un]=k.useState(!1),Fn=k.useRef(null),[Tt,zn]=k.useState(null),[ms,fs]=k.useState(null),xe=k.useMemo(()=>c.providerCatalog?Ra.map(r=>c.providerCatalog.find(x=>x.id===r.id)??r):Ra.map(r=>({...r,systemActive:!1,availabilityMessage:null})),[c.providerCatalog]),Mr=k.useMemo(()=>new Map(xe.map(r=>[r.id,r])),[xe]),hs=k.useMemo(()=>Li(xe,(h==null?void 0:h.settings)??he),[xe,h==null?void 0:h.settings]),ge=r=>Mr.get(r)??un(r),Br=ne==="last_used"||hs.some(r=>r.id===ne)?ne:"last_used",[$n,Ur]=k.useState([]),Q=c.updateSnapshot,Vn=Me.settingsUpdate("check"),Zn=Me.settingsUpdate("install"),Fr=Me.settingsRemoteAuth("save"),ps=Me.settingsRemoteAuth("sign_in"),It=Me.settingsRemoteAuth("refresh"),Kn=Me.settingsRemoteAuth("sign_out"),qn=Me.settingsRemoteAuth("streamer_mode"),Hn=Me.settingsTheme("refresh"),Wn=Me.settingsTheme("open_editor"),Gn=Me.settingsTheme("open_folder"),Qn=Be(Vn),Yn=Be(Zn);Be(Fr);const Bs=Be(ps),zr=Be(It),$r=Be(Kn),Jn=Be(qn),Ue=Nt!==null||Jn,Vr=Be(Hn),Zr=Be(Wn),Kr=Be(Gn),f=c.remoteAuth,me=hr(f),Us=eo({browserNotificationsEnabled:Er,signedIn:me.signedIn}),Se=c.themeSettings,Fs=Ba(yn),qr=Xi(),Hr=Hi(Fs),zs=Fs!=="unsupported",Xn=k.useRef(e.pathname),Wr=typeof navigator<"u"&&typeof navigator.vibrate=="function",vt=Ul({...Q,status:Yn?"updating":Qn?"checking":Q==null?void 0:Q.status},{update:s("general.header.update"),checkForUpdates:s("general.header.checkForUpdates")}),Gr=Qn||(Q==null?void 0:Q.status)==="checking"?s("general.header.checkingStatus"):Yn||(Q==null?void 0:Q.status)==="updating"?s("general.header.installingStatus"):(Q==null?void 0:Q.status)==="restart_pending"?s("general.updateStatus.restarting",{appName:Ea}):(Q==null?void 0:Q.status)==="available"?s("general.updateStatus.available",{version:Q.latestVersion??""}):(Q==null?void 0:Q.status)==="up_to_date"?s("general.updateStatus.upToDate"):(Q==null?void 0:Q.status)==="error"?s("general.updateStatus.failed"):s("general.updateStatus.notChecked");k.useEffect(()=>{fetch(tn("/api/backgrounds")).then(r=>r.json()).then(r=>Ur(r)).catch(r=>console.error("Failed to load system backgrounds",r))},[]),k.useEffect(()=>{Xn.current=e.pathname},[e.pathname]),k.useEffect(()=>{Is(String(z))},[z]),k.useEffect(()=>{Zt(Xt((A==null?void 0:A.settings.sendChunkSizeBytes)??Jt.sendChunkSizeBytes))},[A==null?void 0:A.settings.sendChunkSizeBytes]),k.useEffect(()=>{Rs(String(V))},[V]),k.useEffect(()=>{Cn(E)},[E]),k.useEffect(()=>{_t(dr(Le)),pt(Gs(Le))},[Le]),k.useEffect(()=>{As(String(Ze))},[Ze]),k.useEffect(()=>{Ps(String(wt))},[wt]),k.useEffect(()=>{const r=rs,x=Ds.current,L=Bl(gt,x,r);L.changed&&(Ds.current=L.nextLoaded,In(L.nextSaved),qt(L.nextCurrent))},[gt,rs]),k.useEffect(()=>{On.current=gt},[gt]),k.useEffect(()=>{a&&(lr(a)||t("/settings/general",{replace:!0}))},[t,a]);function ea(){const r=Number(wn);if(!Number.isFinite(r)){Is(String(z));return}Z(r)}function ta(){const r=Number(Nn);if(!Number.isFinite(r)){Rs(String(V));return}Y(r)}async function sa(r){const x={sendChunkSizeBytes:(A==null?void 0:A.settings.sendChunkSizeBytes)??Jt.sendChunkSizeBytes,locale:(A==null?void 0:A.settings.locale)??Jt.locale,...r};return await c.socket.command({type:"settings.writeGeneralSettings",settings:x})}async function Qr(){const r=(A==null?void 0:A.settings.sendChunkSizeBytes)??Jt.sendChunkSizeBytes,x=Number(_n);if(!Number.isFinite(x)){xt(s("general.chatChunkSize.errors.notNumber")),Zt(Xt(r));return}const L=Math.round(x*1024);if(L<ys||L>vs){xt(s("general.chatChunkSize.errors.outOfRange",{min:ys/1024,max:vs/1024}));return}if(L===r){xt(null),Zt(Xt(r));return}try{us(!0),xt(null);const J=await sa({sendChunkSizeBytes:L});Zt(Xt(J.settings.sendChunkSizeBytes))}catch(J){xt(J instanceof Error?J.message:s("general.errors.saveFailed"))}finally{us(!1)}}async function Yr(r){const x=r,L=v,J=bs.getState().persistedLocale;if(x!==L){F(x);try{us(!0),xt(null),await sa({locale:x})}catch(be){q(L,J),xt(be instanceof Error?be.message:s("general.errors.saveFailed"))}finally{us(!1)}}}function na(){if(ls.current){ls.current=!1;return}const r=ur({draft:is,currentBackgroundImage:Le,isShowingLocalImagePlaceholder:os}),x=Qs({themePreference:g,nextBackgroundImage:r,backgroundOpacity:Ze});zt(r),pt(Gs(r)),x.backgroundOpacity!==void 0&&$t(x.backgroundOpacity),x.backgroundBlur!==void 0&&Vt(x.backgroundBlur),Fe({backgroundImage:r,...x})}function Ye(){ls.current=!1}function aa(){if(ls.current=!0,typeof window>"u")return;const r=()=>{window.setTimeout(()=>{Ye()},0)};window.addEventListener("focus",r,{once:!0})}function Jr(r){var be;const x=(be=r.target.files)==null?void 0:be[0];if(r.target.value="",!x){Ye();return}if(!x.type.startsWith("image/")){Ye(),Dt.error("Choose an image file");return}if(zl(x.size)){Ye(),Dt.error("Image exceeds 20 MiB limit");return}const L=Kt.current+1;Kt.current=L;const J=new FileReader;J.onerror=()=>{Ys({importSequence:L,latestImportSequence:Kt.current})&&(Ye(),Dt.error("Unable to read background image"))},J.onload=()=>{const At=typeof J.result=="string"?J.result:null;if(!At){Ye(),Dt.error("Unable to read background image");return}const se=Le,Ke=is,xi=os,bi=Ze,vi=wt;(async()=>{try{const Wt=await fetch(tn("/api/theme-backgrounds/import"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({dataUrl:At})}),Gt=await Wt.json();if(!Wt.ok||typeof Gt.source!="string")throw new Error(Gt.error??"Unable to import background image");if(!Ys({importSequence:L,latestImportSequence:Kt.current}))return;const Qt=Qs({themePreference:g,nextBackgroundImage:Gt.source,backgroundOpacity:Ze});_t(""),pt(!0),zt(Gt.source),Qt.backgroundOpacity!==void 0&&$t(Qt.backgroundOpacity),Qt.backgroundBlur!==void 0&&Vt(Qt.backgroundBlur),await Fe({backgroundImage:Gt.source,...Qt},{rethrow:!0}),Ye();return}catch(Wt){if(!Ys({importSequence:L,latestImportSequence:Kt.current}))return;zt(se),_t(Ke),pt(xi),$t(bi),Vt(vi),Ye(),Dt.error(Wt instanceof Error?Wt.message:"Unable to import background image");return}})()},J.readAsDataURL(x)}function ra(){const r=Number(Sn);if(!Number.isFinite(r)||r<0||r>1){As(String(Ze));return}$t(r),Fe({backgroundOpacity:r})}function ia(){const r=Number(Tn);if(!Number.isFinite(r)||r<0){Ps(String(wt));return}Vt(r),Fe({backgroundBlur:r})}function gs(r,x){r.key==="Enter"&&(x(),r.currentTarget.blur())}function oa(r,x){r.key==="Enter"&&(x(),r.currentTarget.blur())}function la(){G(Es)}async function Xr(r=On.current){try{En(!0),cs(null);const x={...r},L=await c.socket.command({type:"settings.writeKeybindings",bindings:tc(x)}),J=ks(Ia(L).bindings);Ds.current=J,In(J),qt(be=>Ml(be,x,J))}catch(x){cs(x instanceof Error?x.message:s("keybindings.errors.saveFailed"))}finally{En(!1)}}async function Fe(r,x){try{await c.socket.command({type:"settings.writeThemeSettings",settings:{themePreference:(r==null?void 0:r.themePreference)??g,themeId:(r==null?void 0:r.themeId)??ft,customAppearance:(r==null?void 0:r.customAppearance)??pn,backgroundImage:(r==null?void 0:r.backgroundImage)!==void 0?r.backgroundImage:Le,backgroundOpacity:(r==null?void 0:r.backgroundOpacity)??Ze,backgroundBlur:(r==null?void 0:r.backgroundBlur)??wt,showProjectIconsInSidebar:(r==null?void 0:r.showProjectIconsInSidebar)??gn}})}catch(L){if(console.error("Failed to save theme settings:",L),x!=null&&x.rethrow)throw L}}async function $s(r,x){zn(r);try{await Oe(r==="refresh"?Hn:r==="open_editor"?Wn:Gn,x,{statusLabel:s(r==="refresh"?"general.colorTheme.refreshingStatus":r==="open_editor"?"general.colorTheme.openingFilesStatus":"general.colorTheme.openingFolderStatus")})}finally{zn(L=>L===r?null:L)}}async function ca(){if(me.features.browserNotifications.enabled){fs("requesting");try{const r=await Ua();kn(r),as(r==="granted")}finally{fs(r=>r==="requesting"?null:r)}}}async function ei(){if(me.features.browserNotifications.enabled){fs("testing");try{let r=Ba(yn);Us&&r==="default"&&zs&&(r=await Ua(),kn(r),r!=="granted"&&as(!1)),await to({event:{chatId:c.activeChatId??"settings-test",chatTitle:s("general.testNotification.previewChatTitle"),kind:"needs_input",projectTitle:s("title")},onBrowserNotificationClick:()=>{t("/settings/general",{replace:Xn.current.startsWith("/settings")})},preferences:{browserNotificationsEnabled:Us&&r==="granted",soundEnabled:bn,vibrationEnabled:vn}})}finally{fs(r=>r==="testing"?null:r)}}}async function Rt(r){const x=(h==null?void 0:h.settings)??he,L=r.openrouter.active&&!x.openrouter.active&&!me.features.openrouter.enabled,J=me.features.openrouter.enabled?r:{...r,openrouter:{...r.openrouter,active:!1}};L&&Ls(s("providers.openRouterDenied"));try{L||Ls(null),await c.socket.command({type:"settings.writeProviderSettings",settings:J})}catch(be){Ls(be instanceof Error?be.message:s("providers.errors.saveFailed"))}}function ti(r){cs(null),qt(x=>({...x,[r]:en(Fa[r])}))}function si(){cs(null),qt(Os)}async function ni(r){Ct(r?"enable":"disable");try{St(null),await c.socket.command({type:"remoteRelay.setEnabled",enabled:r})}catch(x){St(x instanceof Error?x.message:String(x))}finally{Ct(x=>x===(r?"enable":"disable")?null:x)}}async function ai(){Ct("reconnect");try{St(null),await c.socket.command({type:"remoteRelay.setEnabled",enabled:!0})}catch(r){St(r instanceof Error?r.message:String(r))}finally{Ct(r=>r==="reconnect"?null:r)}}async function ri(){Ct("rotate");try{St(null),await c.socket.command({type:"remoteRelay.rotateUrlKey"})}catch(r){St(r instanceof Error?r.message:String(r))}finally{Ct(r=>r==="rotate"?null:r)}}const ii=Es.replaceAll("{path}","/Users/jake/Projects/kaizen/src/client/app/App.tsx").replaceAll("{line}","12").replaceAll("{column}","1"),da=O.find(r=>r.id===j)??O[0],oi=j==="keybindings"?s("keybindings.subtitle",{path:jn}):da.subtitle,li=me.features.openrouter.enabled?hs:[...hs,...hs.some(r=>r.id==="openrouter")?[]:[ge("openrouter")]];k.useEffect(()=>{ne==="openrouter"&&(me.features.openrouter.enabled||re("last_used"))},[me.features.openrouter.enabled,ne,re]);const T=c.remoteRelay,Te=(f==null?void 0:f.status)==="signed_in",ci=((ga=f==null?void 0:f.entitlements)==null?void 0:ga["remote.relay"])===!0,di=(T==null?void 0:T.status)==="unauthorized",Vs=Te&&ci&&!di,Et=(T==null?void 0:T.relayEnabled)??!0,ui=(T==null?void 0:T.status)==="idle_disconnected"&&Et,mi=!me.features.openrouter.enabled,fi=!me.features.remoteRelay.enabled,ua=!me.features.crossDeviceStorage.enabled,je=!Te||(f==null?void 0:f.streamerModeEnabled)!==!1,xs=Te&&(f==null?void 0:f.streamerModeEnabled)!==!1,hi=k.useMemo(()=>(f==null?void 0:f.status)==="signed_in"?je?s("account.account.descriptionSignedInHidden",{syncSeconds:or/1e3,fallbackMinutes:Ws/6e4}):s("account.account.descriptionSignedInVisible",{userId:f.userId??s("account.account.yourAccount"),syncSeconds:or/1e3,fallbackMinutes:Ws/6e4,expiresAt:cn(f.accessTokenExpiresAt,v)}):(f==null?void 0:f.status)==="pending_sign_in"?s("account.account.descriptionPending"):f!=null&&f.error?f.error:s("account.account.descriptionSignedOut"),[s,f==null?void 0:f.status,f==null?void 0:f.userId,f==null?void 0:f.accessTokenExpiresAt,f==null?void 0:f.error,je]),pi=k.useMemo(()=>Te?Vs?Et?(T==null?void 0:T.status)==="idle_disconnected"?s("account.remoteRelay.descriptionIdleDisconnected"):T!=null&&T.publicUrl&&!je?s("account.remoteRelay.descriptionPublished",{url:T.publicUrl}):s("account.remoteRelay.descriptionDefault"):s("account.remoteRelay.descriptionDisabled"):s("account.remoteRelay.descriptionControlled"):s("account.remoteRelay.descriptionSignedOut"),[s,Te,Vs,Et,T==null?void 0:T.status,T==null?void 0:T.publicUrl,je]);k.useEffect(()=>{je&&(Ms(!1),Bn(!1),Un(!1))},[je,f==null?void 0:f.status,c.lastRemoteAuthUrl,T==null?void 0:T.publicUrl]);const ma=!S,gi=j==="keybindings"?n.jsxs(n.Fragment,{children:[n.jsx(qe,{"data-testid":"keybindings-cancel-button",onClick:si,disabled:ds||Ss(gt,Os),children:s("keybindings.actions.cancel")}),n.jsx(qe,{"data-testid":"keybindings-save-button",variant:"default",onClick:()=>{Xr()},disabled:ds||Ss(gt,Os),icon:ds?n.jsx(we,{className:"h-4 w-4 animate-spin"}):void 0,children:s(ds?"actions.saving":"actions.save")}),n.jsx(qe,{onClick:()=>{c.handleOpenExternalPath("open_editor",jn)},icon:n.jsx(Xs,{className:"h-4 w-4"}),children:s("actions.openIn",{editor:c.editorLabel})})]}):j==="general"?n.jsx(qe,{variant:vt.variant,onClick:()=>{if(vt.kind==="update"){Oe(Zn,()=>c.handleInstallUpdate(),{statusLabel:s("general.header.installingStatus")});return}Oe(Vn,()=>c.handleCheckForUpdates({force:!0}),{statusLabel:s("general.header.checkingStatus")})},disabled:vt.disabled,icon:vt.kind==="check"?n.jsx(Js,{className:Re("size-3.5",vt.spinning&&"animate-spin")}):vt.kind==="update"?n.jsx(vr,{className:Re("size-3.5")}):void 0,children:vt.label}):null;function fa(){if(Fl(window.history.state)==="back"){t(-1);return}t("/",{replace:!0})}return k.useEffect(()=>{Dr((f==null?void 0:f.baseUrl)??"")},[f==null?void 0:f.baseUrl]),k.useEffect(()=>{const r=c.handleReloadRemoteAuth,x=j==="account"&&Fn.current!=="account";Fn.current=j,x&&(Ue||(f==null?void 0:f.status)!=="signed_in"&&(f==null?void 0:f.status)!=="error"||(_e("refresh"),Oe(It,r,{statusLabel:s("account.actions.refreshingStatus")}).finally(()=>{_e(L=>L==="refresh"?null:L)})))},[It,Ue,f==null?void 0:f.status,j,c.handleReloadRemoteAuth]),k.useEffect(()=>{const r=c.handleReloadRemoteAuth;if(j!=="account"||(f==null?void 0:f.status)!=="signed_in"&&(f==null?void 0:f.status)!=="error")return;const x=()=>{Ue||(_e("refresh"),Oe(It,r,{statusLabel:s("account.actions.refreshingStatus")}).finally(()=>{_e(be=>be==="refresh"?null:be)}))},L=()=>{document.visibilityState==="visible"&&x()};window.addEventListener("focus",x),document.addEventListener("visibilitychange",L);const J=window.setInterval(x,Ws);return()=>{window.removeEventListener("focus",x),document.removeEventListener("visibilitychange",L),window.clearInterval(J)}},[It,Ue,f==null?void 0:f.status,j,c.handleReloadRemoteAuth]),n.jsxs("div",{className:"relative flex h-full flex-1 min-w-0 bg-background",children:[n.jsxs("div",{className:"flex min-w-0 flex-1",children:[n.jsx("aside",{className:`hidden w-[200px] shrink-0 md:block ${ma?"pb-[89px]":""}`,children:n.jsxs("div",{className:"flex flex-col gap-1 px-4 py-6",children:[n.jsx("div",{className:"px-3 pb-5 text-[22px] font-extrabold tracking-[-0.5px] text-foreground",children:s("title")}),O.map(r=>n.jsx("button",{type:"button",onClick:()=>t(`/settings/${r.id}`,{replace:!0}),className:`cursor-pointer rounded-lg px-3 py-2 text-sm ${r.id===j?"bg-muted font-medium text-foreground":"text-muted-foreground hover:bg-muted/50 hover:text-foreground"}`,children:n.jsxs("div",{className:"flex items-center gap-2.5",children:[n.jsx(r.icon,{className:"h-4 w-4 shrink-0"}),n.jsx("span",{children:r.label})]})},r.label))]})}),n.jsxs("div",{className:"min-w-0 flex-1 overflow-y-auto",children:[n.jsx("div",{className:"md:hidden sticky top-0 z-10 bg-background border-b border-border px-4 py-2 backdrop-blur-md",children:n.jsxs("div",{className:"flex items-center gap-1",children:[n.jsx("div",{className:"flex min-w-0 flex-1 items-center gap-1 overflow-x-auto scrollbar-hide",children:O.map(r=>n.jsxs("button",{type:"button",onClick:()=>t(`/settings/${r.id}`,{replace:!0}),className:`flex shrink-0 items-center gap-1.5 rounded-lg px-3 py-1.5 text-sm transition-colors ${r.id===j?"bg-muted font-medium text-foreground":"text-muted-foreground hover:bg-muted/50 hover:text-foreground"}`,children:[n.jsx(r.icon,{className:"h-3.5 w-3.5 shrink-0"}),n.jsx("span",{children:r.label})]},r.id))}),n.jsx("button",{type:"button","aria-label":s("common.closeSettings"),onClick:fa,className:"ml-1 flex shrink-0 items-center justify-center rounded-lg p-1.5 text-muted-foreground transition-colors hover:bg-muted hover:text-foreground",children:n.jsx(Aa,{className:"h-4 w-4"})})]})}),n.jsxs("div",{className:"w-full px-6 pt-8 md:pt-16 pb-32",children:[S?n.jsx("div",{className:"flex min-h-[240px] items-center justify-center rounded-2xl border border-border bg-card/40 px-4 py-6 text-sm text-muted-foreground",children:n.jsxs("div",{className:"flex items-center gap-3",children:[n.jsx(we,{className:"h-4 w-4 animate-spin"}),n.jsx("span",{children:s("common.loadingMachineSettings")})]})}):n.jsxs("div",{className:"mx-auto max-w-4xl",children:[n.jsxs("div",{className:"pb-6",children:[n.jsxs("div",{className:"flex items-center justify-between gap-4 min-h-[34px]",children:[n.jsx("div",{className:"text-lg font-semibold tracking-[-0.2px] text-foreground",children:da.label}),n.jsxs("div",{className:"flex items-center gap-2",children:[gi,n.jsx(qe,{"aria-label":s("common.closeSettings"),title:s("common.closeSettings"),onClick:fa,icon:n.jsx(Aa,{className:"h-4 w-4"}),className:"hidden md:flex"})]})]}),n.jsx("div",{className:"mt-1 text-sm text-muted-foreground",children:oi})]}),j==="account"?n.jsxs("div",{className:"border-b border-border",children:[n.jsx(K,{title:s("account.account.title"),badge:Te?null:n.jsx(rt,{level:"account",label:at("account",I)}),description:hi,bordered:!1,alignStart:!0,children:n.jsxs("div",{className:"w-full min-w-0 space-y-3 sm:max-w-[360px]",children:[El({remoteAuthSnapshot:f,saveLabel:s("account.account.saveUrl")}),n.jsxs("div",{className:"flex flex-wrap gap-2",children:[(f==null?void 0:f.status)==="signed_out"||(f==null?void 0:f.status)==="error"?n.jsxs(n.Fragment,{children:[n.jsxs(ce,{type:"button",variant:"outline",disabled:Ue,onClick:()=>{_e("sign_in"),Oe(ps,()=>c.handleStartRemoteAuthSignIn("sign_up"),{statusLabel:s("account.actions.startingSignUpStatus")}).finally(()=>_e(null))},children:[Nt==="sign_in"||Bs?n.jsx(we,{className:"mr-2 h-4 w-4 animate-spin"}):null,s("account.actions.signUp")]}),n.jsxs(ce,{type:"button",disabled:Ue,onClick:()=>{_e("sign_in"),Oe(ps,()=>c.handleStartRemoteAuthSignIn("sign_in"),{statusLabel:s("account.actions.startingSignInStatus")}).finally(()=>_e(null))},children:[Nt==="sign_in"||Bs?n.jsx(we,{className:"mr-2 h-4 w-4 animate-spin"}):null,s("account.actions.signIn")]})]}):null,(f==null?void 0:f.status)!=="signed_out"?n.jsxs(ce,{type:"button",variant:"outline",disabled:Ue,onClick:()=>{_e("refresh"),Oe(It,()=>c.handleReloadRemoteAuth(),{statusLabel:s("account.actions.refreshingStatus")}).finally(()=>_e(null))},children:[Nt==="refresh"||zr?n.jsx(we,{className:"mr-2 h-4 w-4 animate-spin"}):null,s("account.actions.refresh")]}):null,(f==null?void 0:f.status)!=="signed_out"?n.jsxs(ce,{type:"button",variant:"outline",disabled:Ue,onClick:()=>{_e("sign_out"),Oe(Kn,()=>c.handleSignOutRemoteAuth(),{statusLabel:s("account.actions.signingOutStatus")}).finally(()=>_e(null))},children:[Nt==="sign_out"||$r?n.jsx(we,{className:"mr-2 h-4 w-4 animate-spin"}):null,(f==null?void 0:f.status)==="pending_sign_in"?s("account.actions.cancelSignIn"):s("account.actions.signOut")]}):null]}),(f==null?void 0:f.status)==="pending_sign_in"&&c.lastRemoteAuthUrl?n.jsxs("div",{className:"rounded-lg border border-border bg-muted/30 px-3 py-2 text-xs text-muted-foreground",children:[n.jsx("div",{className:"font-medium text-foreground",children:s("account.account.continueSignIn")}),je&&!Lr?n.jsx(ce,{type:"button",variant:"outline",className:"mt-2",onClick:()=>Bn(!0),children:s("account.account.showSignInLink")}):n.jsx("a",{href:c.lastRemoteAuthUrl,target:"_self",rel:"noreferrer",className:"mt-1 block break-all text-primary underline underline-offset-2",children:c.lastRemoteAuthUrl})]}):null]})}),Te?n.jsxs(n.Fragment,{children:[n.jsx(K,{title:s("account.dashboard.title"),description:s("account.dashboard.description"),alignStart:!0,bordered:!1,children:n.jsxs("a",{href:wo(f==null?void 0:f.baseUrl),target:"_blank",rel:"noopener noreferrer",className:Re(fr({variant:"outline"}),"inline-flex gap-2 no-underline"),children:[n.jsx(zi,{className:"h-4 w-4 shrink-0"}),s("account.dashboard.open")]})}),n.jsx(K,{title:s("account.streamerMode.title"),description:s(Te?"account.streamerMode.descriptionSignedIn":"account.streamerMode.descriptionSignedOut"),alignStart:!0,bordered:!1,children:n.jsxs(ce,{type:"button",variant:xs?"default":"outline","aria-pressed":xs,className:"min-w-[72px]",disabled:!Te||Ue,onClick:()=>{Oe(qn,()=>c.handleSetStreamerMode(!xs),{statusLabel:s("account.streamerMode.updatingStatus")})},children:[Jn?n.jsx(we,{className:"mr-2 h-4 w-4 animate-spin"}):null,s(xs?"common.on":"common.off")]})}),n.jsx(K,{title:s("account.email.title"),description:s(Te?je?"account.email.descriptionHidden":"account.email.descriptionVisible":"account.email.descriptionSignedOut"),alignStart:!0,children:n.jsxs("div",{className:"flex min-w-0 max-w-full items-center gap-2 sm:max-w-[360px]",children:[n.jsx("div",{className:"min-w-0 flex-1 text-sm text-foreground",children:Te?je&&!Ht?n.jsx("span",{className:"text-muted-foreground",children:"—"}):f!=null&&f.email?n.jsx("span",{className:"break-all",children:f.email}):n.jsx("span",{className:"text-muted-foreground",children:s("account.email.notSynced")}):n.jsx("span",{className:"text-muted-foreground",children:"—"})}),Te&&je?n.jsx(ce,{type:"button",variant:"outline",size:"sm",className:"h-9 w-9 shrink-0 p-0","aria-pressed":Ht,"aria-label":s(Ht?"account.email.hide":"account.email.show"),title:s(Ht?"account.email.hide":"account.email.show"),onClick:()=>Un(r=>!r),children:Ht?n.jsx($a,{className:"h-4 w-4"}):n.jsx(za,{className:"h-4 w-4"})}):null]})}),n.jsx(K,{title:s("account.unlockedFeatures.title"),description:s("account.unlockedFeatures.description"),alignStart:!0,children:n.jsxs("div",{className:"w-full min-w-0 space-y-3 sm:max-w-[420px]",children:[n.jsx(Ql,{access:me,copy:{accountFeaturesLabel:s("account.unlockedFeatures.accountFeaturesLabel"),accountFeaturesUnlocked:s("account.unlockedFeatures.accountFeaturesUnlocked"),accountFeaturesLocked:s("account.unlockedFeatures.accountFeaturesLocked"),paidFeaturesLabel:s("account.unlockedFeatures.paidFeaturesLabel"),paidFeaturesUnlocked:s("account.unlockedFeatures.paidFeaturesUnlocked"),paidFeaturesLocked:s("account.unlockedFeatures.paidFeaturesLocked"),destinationLabel:s("account.unlockedFeatures.destinationLabel"),destinationBody:s("account.unlockedFeatures.destinationBody",{route:br})}}),n.jsx(Jl,{access:me,copy:{accountAccessLabel:s("account.unlockedFeatures.accountAccessLabel"),paidAccessLabel:s("account.unlockedFeatures.paidAccessLabel"),unlocked:s("account.unlockedFeatures.unlocked"),locked:s("account.unlockedFeatures.locked")}})]})}),n.jsx(K,{title:s("account.savedData.title"),description:je?s("account.savedData.descriptionHidden"):s("account.savedData.descriptionVisible",{path:(f==null?void 0:f.filePathDisplay)??"~/.kaizen/remote-auth.json"}),alignStart:!0,children:n.jsx("div",{className:"text-sm text-foreground",children:Wl((f==null?void 0:f.status)??"signed_out",{signedIn:s("account.connection.signedIn"),signedOut:s("account.connection.signedOut"),pendingSignIn:s("account.connection.pendingSignIn"),error:s("account.connection.error")})})}),n.jsx(K,{title:s("account.cloudSync.title"),badge:ua?n.jsx(rt,{level:"account",label:at("account",I)}):null,description:s("account.cloudSync.description"),belowDescription:((xa=c.cloudSync)==null?void 0:xa.status)==="syncing"?n.jsx(Zl,{progress:c.cloudSync.progress??null,settingsT:s}):null,alignStart:!0,children:n.jsx("div",{className:"w-full min-w-0 space-y-3 sm:max-w-[420px]",children:ua?n.jsx("div",{className:"text-sm text-muted-foreground",children:at("account",I)}):c.cloudSync==null?n.jsx("div",{className:"text-sm text-muted-foreground",children:s("common.loadingMachineSettings")}):c.cloudSync.configured?n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:"flex flex-wrap items-center gap-3",children:[n.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[n.jsx("input",{type:"checkbox",className:"size-4 rounded border border-input",checked:((va=(ba=c.cloudSync)==null?void 0:ba.remote)==null?void 0:va.syncEnabled)??!1,onChange:r=>{c.handleCloudSyncUpdateSettings({syncEnabled:r.target.checked})}}),s("account.cloudSync.masterEnable")]}),n.jsx(ce,{type:"button",variant:"outline",size:"sm",disabled:((ka=(ya=c.cloudSync)==null?void 0:ya.bootstrap)==null?void 0:ka.required)===!0||((ja=c.cloudSync)==null?void 0:ja.status)==="syncing",onClick:()=>{var r;((r=c.cloudSync)==null?void 0:r.status)!=="syncing"&&c.handleCloudSyncSyncNow()},children:s("account.cloudSync.syncNow")})]}),(wa=c.cloudSync)!=null&&wa.remote?n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"text-sm text-muted-foreground",children:s("account.cloudSync.storage",{used:ct(c.cloudSync.remote.bytesUsed),quota:ct(c.cloudSync.remote.quotaBytes)})}),n.jsx("p",{className:"text-xs text-muted-foreground",children:s("account.cloudSync.backupTranscriptScopeNote")}),(_a=c.cloudSync.bootstrap)!=null&&_a.required?n.jsxs("div",{className:"space-y-2 rounded-md border border-amber-500/40 bg-amber-500/10 p-3 text-xs text-amber-900 dark:text-amber-200",children:[n.jsx("div",{className:"font-medium",children:"This machine found an existing cloud backup."}),n.jsx("div",{children:"Choose how to initialize this machine before sync can run."}),n.jsxs("div",{className:"flex flex-wrap gap-2",children:[n.jsx(ce,{type:"button",size:"sm",onClick:()=>{c.handleCloudSyncResolveBootstrap("replace_local")},children:"Replace Local With Backup"}),n.jsx(ce,{type:"button",size:"sm",variant:"outline",onClick:()=>{c.handleCloudSyncResolveBootstrap("start_fresh")},children:"Start Fresh On This Machine"})]})]}):null]}):null,Kl.map(r=>{var x,L;return(x=c.cloudSync)!=null&&x.remote?n.jsx(ql,{prov:r,remote:c.cloudSync.remote,globalStatus:c.cloudSync.status,summary:(L=c.cloudSync.providerSummaries)==null?void 0:L[r],settingsT:s,onToggleBackup:J=>{c.handleCloudSyncUpdateSettings(r==="claude"?{backupClaude:J}:r==="codex"?{backupCodex:J}:{backupCursor:J})},onToggleSync:J=>{c.handleCloudSyncUpdateSettings(r==="claude"?{syncClaude:J}:r==="codex"?{syncCodex:J}:{syncCursor:J})}},r):null}),n.jsxs("div",{className:"text-xs text-muted-foreground",children:[s("account.cloudSync.status"),":"," ",(Na=c.cloudSync)==null?void 0:Na.status]}),(Ca=c.cloudSync)!=null&&Ca.lastError?n.jsx("div",{className:"text-xs text-destructive",children:s("account.cloudSync.lastError",{message:c.cloudSync.lastError})}):null]}):n.jsx("div",{className:"text-sm text-destructive",children:s("account.cloudSync.notConfigured")})})}),n.jsx(K,{title:s("account.remoteRelay.title"),badge:fi?n.jsx(rt,{level:"paid",label:at("paid",I)}):null,description:pi,alignStart:!0,children:n.jsx("div",{className:"w-full min-w-0 space-y-3 sm:max-w-[420px]",children:me.features.remoteRelay.enabled?Vs?n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between",children:[n.jsxs("div",{className:"text-sm text-foreground",children:[s("account.remoteRelay.statusLabel"),":"," ",Gl(T==null?void 0:T.status,s)]}),n.jsxs("div",{className:"flex flex-wrap items-center justify-end gap-2",children:[T!=null&&T.publicUrl&&je?Mn?n.jsxs(ce,{type:"button",variant:"outline",size:"sm",className:"gap-1.5",onClick:()=>Ms(!1),children:[n.jsx($a,{className:"h-4 w-4 shrink-0"}),s("account.remoteRelay.hide")]}):n.jsxs($i,{children:[n.jsx(Vi,{asChild:!0,children:n.jsxs(ce,{type:"button",variant:"outline",size:"sm",className:"gap-1.5",onClick:()=>Ms(!0),children:[n.jsx(za,{className:"h-4 w-4 shrink-0"}),s("account.remoteRelay.view")]})}),n.jsx(Zi,{side:"bottom",className:"max-w-xs text-left",children:s("account.remoteRelay.hiddenTooltip")})]}):null,n.jsx(ce,{type:"button",variant:Et?"outline":"default",disabled:bt!==null,onClick:()=>{ni(!Et)},children:s(bt==="enable"?"account.remoteRelay.enabling":bt==="disable"?"account.remoteRelay.disabling":Et?"account.remoteRelay.disable":"account.remoteRelay.enable")}),n.jsx(ce,{type:"button",variant:"outline",disabled:bt!==null||!(T!=null&&T.publicUrl),onClick:()=>{ri()},children:s(bt==="rotate"?"account.remoteRelay.rotatingUrl":"account.remoteRelay.rotateUrl")})]})]}),(T==null?void 0:T.status)==="manually_disabled"?n.jsx("div",{className:"rounded-lg border border-border bg-muted/30 px-3 py-2 text-sm text-muted-foreground",children:s("account.remoteRelay.manuallyDisabled")}):null,(T==null?void 0:T.status)==="idle_disconnected"?n.jsxs("div",{className:"space-y-3",children:[n.jsx("div",{className:"rounded-lg border border-border bg-muted/30 px-3 py-2 text-sm text-muted-foreground",children:s("account.remoteRelay.idleDisconnected")}),n.jsx(ce,{type:"button",variant:"outline",disabled:bt!==null||!ui,onClick:()=>{ai()},children:s(bt==="reconnect"?"account.remoteRelay.reconnecting":"account.remoteRelay.reconnectNow")})]}):null,T!=null&&T.publicUrl&&(!je||Mn)?n.jsxs("div",{className:"space-y-3",children:[n.jsx("div",{className:"rounded-lg border border-border bg-muted/30 px-3 py-2 text-xs text-muted-foreground",children:s("account.remoteRelay.scanHint")}),n.jsx(Hl,{url:T.publicUrl}),n.jsx("div",{className:"break-all rounded-lg border border-border bg-muted/30 px-3 py-2 font-mono text-xs text-foreground",children:T.publicUrl})]}):null,mr(Ln??(T==null?void 0:T.error),s)?n.jsx("div",{className:"text-sm text-red-500",children:mr(Ln??(T==null?void 0:T.error),s)}):null,n.jsx(Xl,{snapshot:T,redactMachineId:je,locale:v,copy:{machine:s("account.remoteRelay.facts.machine"),machineId:s("account.remoteRelay.facts.machineId"),connected:s("account.remoteRelay.facts.connected"),lastHeartbeat:s("account.remoteRelay.facts.lastHeartbeat")}})]}):n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:"text-sm text-foreground",children:[s("account.remoteRelay.statusLabel"),":"," ",s("account.remoteRelay.unauthorized")]}),n.jsx("div",{className:"rounded-lg border border-border bg-muted/30 px-3 py-2 text-sm text-muted-foreground",children:s("account.remoteRelay.unauthorizedDescription")})]}):n.jsx("div",{className:"text-sm text-muted-foreground",children:s(Te?"account.remoteRelay.lockedMessage":"account.remoteRelay.signInToUnlock")})})})]}):n.jsx("div",{className:"px-4 py-6",children:n.jsxs(Mi,{className:"rounded-[28px] border border-border/70 shadow-[0_18px_60px_-28px_rgba(15,23,42,0.28)]",children:[n.jsxs(Bi,{className:"space-y-4 p-6",children:[n.jsx("p",{className:"text-xs font-medium uppercase tracking-[0.18em] text-muted-foreground",children:s("account.signInCard.title")}),n.jsx("p",{className:"text-sm leading-6 text-muted-foreground",children:s("account.signInCard.description")})]}),n.jsxs(Ui,{className:"space-y-3 border-t border-border/60 p-6 pt-6",children:[n.jsx("ul",{className:"space-y-3",children:[["openRouter",s("account.signInCard.features.openRouter")],["providerUsage",s("account.signInCard.features.providerUsage")],["planHandoffs",s("account.signInCard.features.planHandoffs")],["streamerMode",s("account.signInCard.features.streamerMode")],["cloudSync",s("account.signInCard.features.cloudSync")]].map(([r,x])=>n.jsxs("li",{className:"flex items-start gap-3 text-sm",children:[n.jsx(Fi,{className:"mt-0.5 h-4 w-4 shrink-0 text-primary"}),n.jsx("span",{className:"leading-6 text-foreground",children:x})]},r))}),n.jsx("div",{className:"mt-4 border-t border-border/40 pt-4 text-sm text-muted-foreground",children:s("account.signInCard.plusTierNote")}),n.jsxs(ce,{type:"button",className:"mt-3 w-full",disabled:Ue,onClick:()=>{_e("sign_in"),Oe(ps,()=>c.handleStartRemoteAuthSignIn("sign_up"),{statusLabel:s("account.actions.startingSignUpStatus")}).finally(()=>_e(null))},children:[Nt==="sign_in"||Bs?n.jsx(we,{className:"mr-2 h-4 w-4 animate-spin"}):null,s("account.signInCard.cta")]})]})]})})]}):j==="general"?n.jsx(n.Fragment,{children:n.jsxs("div",{className:"border-b border-border",children:[n.jsx(K,{title:s("general.applicationUpdate.title"),description:n.jsxs(n.Fragment,{children:[n.jsxs("span",{children:[Gr,"."]}),Q!=null&&Q.lastCheckedAt?n.jsxs("span",{children:[" ",s("general.applicationUpdate.lastChecked",{timestamp:new Intl.DateTimeFormat(v||"en",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"}).format(Q.lastCheckedAt)})]}):null,Q!=null&&Q.error?n.jsxs("span",{children:[" ",Q.error]}):null]}),bordered:!1,children:n.jsxs("div",{className:"text-right text-sm text-foreground",children:[n.jsxs("div",{children:[s("general.applicationUpdate.current"),":"," ",(Q==null?void 0:Q.currentVersion)??$]}),n.jsxs("div",{className:"text-xs text-muted-foreground",children:[s("general.applicationUpdate.latest"),":"," ",(Q==null?void 0:Q.latestVersion)??s("general.applicationUpdate.unknown")]})]})}),n.jsx(K,{title:s("general.language.title"),description:s("general.language.description"),children:n.jsxs(ie,{value:v,onValueChange:r=>void Yr(r),children:[n.jsx(oe,{className:"w-[180px]",children:n.jsx(ue,{})}),n.jsx(le,{children:Ki.map(r=>n.jsx(M,{value:r,children:qi[r]},r))})]})}),n.jsx(K,{title:s("general.theme.title"),description:s("general.theme.description"),children:n.jsxs(ie,{value:g,onValueChange:r=>{p(r),Fe({themePreference:r})},children:[n.jsx(oe,{className:"w-[150px]",children:n.jsx(ue,{})}),n.jsxs(le,{children:[n.jsx(M,{value:"light",children:s("general.theme.light")}),n.jsx(M,{value:"dark",children:s("general.theme.dark")}),n.jsx(M,{value:"system",children:s("general.theme.system")}),n.jsx(M,{value:"custom",children:s("general.theme.custom")})]})]})}),g==="custom"?n.jsxs("div",{className:"mb-2 ml-6 space-y-0 border-l border-border/60 pl-4",children:[n.jsx(K,{title:s("general.appearance.title"),description:s("general.appearance.description"),bordered:!1,children:n.jsxs(ie,{value:pn,onValueChange:r=>{Ir(r),Fe({customAppearance:r})},children:[n.jsx(oe,{className:"w-[150px]",children:n.jsx(ue,{})}),n.jsxs(le,{children:[n.jsx(M,{value:"light",children:s("general.theme.light")}),n.jsx(M,{value:"dark",children:s("general.theme.dark")}),n.jsx(M,{value:"system",children:s("general.theme.system")})]})]})}),n.jsx(K,{title:s("general.colorTheme.title"),description:s("general.colorTheme.description",{themesDirectory:(Se==null?void 0:Se.themesDirectoryDisplay)??"~/.kaizen/themes",themesReadme:(Se==null?void 0:Se.themesReadmeFileDisplay)??"~/.kaizen/themes/THEME_README.md"}),alignStart:!0,bordered:!1,children:n.jsxs("div",{className:"flex w-full min-w-0 flex-col gap-2 sm:max-w-[320px]",children:[n.jsxs("div",{className:"flex items-center gap-2",children:[n.jsxs(ie,{value:ft,onValueChange:r=>{Tr(r),Fe({themeId:r})},children:[n.jsx(oe,{className:"min-w-[180px]",children:n.jsx(ue,{})}),n.jsx(le,{children:n.jsx(Zs,{children:Sr.map(r=>n.jsx(M,{value:r.id,children:r.label},r.id))})})]}),n.jsx(qe,{variant:"outline","aria-label":s("general.colorTheme.refreshThemes"),title:s("general.colorTheme.refreshThemes"),className:"px-2.5",disabled:Tt!==null,onClick:()=>{$s("refresh",()=>c.handleRefreshThemeSettings())},icon:Tt==="refresh"||Vr?n.jsx(we,{className:"size-3.5 animate-spin"}):n.jsx(Js,{className:"size-3.5"})})]}),n.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[n.jsx(qe,{disabled:Tt!==null,onClick:()=>{$s("open_editor",()=>c.handleOpenCustomThemes())},icon:Tt==="open_editor"||Zr?n.jsx(we,{className:"size-3.5 animate-spin"}):n.jsx(Va,{className:"size-3.5"}),children:s("actions.openIn",{editor:c.editorLabel})}),n.jsx(qe,{variant:"outline",disabled:Tt!==null,onClick:()=>{$s("open_folder",()=>c.handleOpenExternalPath("open_finder",(Se==null?void 0:Se.themesDirectoryDisplay)??"~/.kaizen/themes"))},icon:Tt==="open_folder"||Kr?n.jsx(we,{className:"size-3.5 animate-spin"}):n.jsx(Xs,{className:"size-3.5"}),children:s("general.colorTheme.openFolder")})]}),Se!=null&&Se.customThemeWarnings.length?n.jsx("div",{className:"rounded-xl border border-amber-500/20 bg-amber-500/5 px-3 py-2 text-xs text-amber-700 dark:text-amber-300",children:Se.customThemeWarnings.join(" ")}):null]})}),n.jsx(K,{title:s("general.backgroundImage.title"),description:s("general.backgroundImage.description"),alignStart:!0,bordered:!1,children:(()=>{const r=ur({draft:is,currentBackgroundImage:Le,isShowingLocalImagePlaceholder:os}),x=$n.find(se=>se.url===r),L=!r,J=!!r&&!x,be=L?"__none__":J?"__custom__":r,At=L?s("common.none"):J?s("common.customUrl"):(x==null?void 0:x.name)??s("common.unknown");return n.jsxs("div",{className:"flex w-full min-w-0 flex-col gap-2 sm:max-w-[320px]",children:[n.jsxs(ie,{value:be,onValueChange:se=>{if(se==="__none__")_t(""),pt(!1),zt(null),Fe({backgroundImage:null});else{const Ke=Qs({themePreference:g,nextBackgroundImage:se,backgroundOpacity:Ze});_t(se),pt(!1),zt(se),Ke.backgroundOpacity!==void 0&&$t(Ke.backgroundOpacity),Ke.backgroundBlur!==void 0&&Vt(Ke.backgroundBlur),Fe({backgroundImage:se,...Ke})}},children:[n.jsx(oe,{className:"w-full",children:n.jsxs("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:[L?null:n.jsx("img",{src:Ks(Le??null)??void 0,alt:"",className:"h-5 w-9 shrink-0 rounded object-cover"}),n.jsx("span",{className:"truncate",children:At})]})}),n.jsxs(le,{children:[n.jsx(qs,{value:"__none__",children:s("common.none")}),$n.map(se=>n.jsx(qs,{value:se.url,thumbnail:Ks(se.url)??se.url,thumbnailAlt:se.name,children:se.name},se.id)),J?n.jsx(qs,{value:"__custom__",thumbnail:Ks(Le??null)??void 0,thumbnailAlt:"Custom",children:s("common.customUrl")}):null]})]}),n.jsxs("div",{className:"flex w-full items-center gap-2",children:[n.jsx(ze,{type:"text",placeholder:os?Pl:s("general.backgroundImage.placeholder"),value:is,onChange:se=>{pt(!1),_t(se.target.value)},onBlur:na,onKeyDown:se=>oa(se,na),className:"w-full"}),n.jsx("input",{ref:xn,type:"file",accept:"image/*",className:"hidden",onChange:Jr}),n.jsx(qe,{type:"button",variant:"outline",className:"shrink-0 px-2.5",title:"Choose image file","aria-label":"Choose image file",onMouseDown:se=>{aa(),se.preventDefault()},onKeyDown:se=>{se.key!=="Enter"&&se.key!==" "||aa()},onClick:()=>{var se;(se=xn.current)==null||se.click()},icon:n.jsx(Va,{className:"size-3.5"})})]})]})})()}),n.jsx(K,{title:s("general.backgroundOpacity.title"),description:s("general.backgroundOpacity.description"),bordered:!1,children:n.jsx("div",{className:"flex min-w-0 flex-col items-end gap-2",children:n.jsx(ze,{type:"number",min:0,max:1,step:.05,value:Sn,onChange:r=>As(r.target.value),onBlur:ra,onKeyDown:r=>gs(r,ra),className:"hide-number-steppers w-28 text-right font-mono"})})}),n.jsx(K,{title:s("general.backgroundBlur.title"),description:s("general.backgroundBlur.description"),bordered:!1,children:n.jsx("div",{className:"flex min-w-0 flex-col items-end gap-2",children:n.jsx(ze,{type:"number",min:0,max:50,step:1,value:Tn,onChange:r=>Ps(r.target.value),onBlur:ia,onKeyDown:r=>gs(r,ia),className:"hide-number-steppers w-28 text-right font-mono"})})})]}):null,qr?n.jsxs(n.Fragment,{children:[n.jsx(K,{title:s("general.browserNotifications.title"),badge:me.features.browserNotifications.enabled?null:n.jsx(rt,{level:"paid",label:at("paid",I)}),description:s("general.browserNotifications.description"),children:n.jsxs(ie,{value:Us?"enabled":"disabled",onValueChange:r=>{if(r==="enabled"){if(!me.features.browserNotifications.enabled)return;Fs==="granted"?as(!0):ca();return}as(!1)},disabled:!me.features.browserNotifications.enabled||!zs,children:[n.jsx(oe,{className:"w-[100px]",children:n.jsx(ue,{})}),n.jsxs(le,{children:[n.jsx(M,{value:"disabled",children:s("common.off")}),n.jsx(M,{value:"enabled",children:s("common.on")})]})]})}),me.features.browserNotifications.enabled?n.jsxs("div",{className:"mb-2 ml-6 space-y-0 border-l border-border/60 pl-4",children:[n.jsx(K,{title:s("general.permission.title"),description:s("general.permission.description"),bordered:!1,alignStart:!0,children:n.jsxs("div",{className:"flex w-full flex-col items-end gap-2 text-right sm:w-auto",children:[n.jsxs("div",{className:"flex items-center justify-end gap-2 text-sm text-foreground",children:[n.jsx(ao,{className:"size-4 text-muted-foreground"}),n.jsx("span",{children:Hr})]}),n.jsx("div",{className:"flex w-full flex-wrap justify-end gap-2 sm:w-auto",children:n.jsxs(ce,{type:"button",variant:"outline",disabled:!zs||ms!==null,onClick:()=>{ca()},children:[ms==="requesting"?n.jsx(we,{className:"mr-2 size-4 animate-spin"}):null,s("general.permission.enable")]})})]})}),n.jsx(K,{title:s("general.notificationSound.title"),description:s("general.notificationSound.description"),bordered:!1,children:n.jsxs(ie,{value:bn?"enabled":"disabled",onValueChange:r=>{Ar(r==="enabled")},children:[n.jsx(oe,{className:"ml-auto w-[100px]",children:n.jsx(ue,{})}),n.jsxs(le,{children:[n.jsx(M,{value:"disabled",children:s("common.off")}),n.jsx(M,{value:"enabled",children:s("common.on")})]})]})}),Wr?n.jsx(K,{title:s("general.vibration.title"),description:s("general.vibration.description"),bordered:!1,children:n.jsxs(ie,{value:vn?"enabled":"disabled",onValueChange:r=>{Pr(r==="enabled")},children:[n.jsx(oe,{className:"ml-auto w-[100px]",children:n.jsx(ue,{})}),n.jsxs(le,{children:[n.jsx(M,{value:"disabled",children:s("common.off")}),n.jsx(M,{value:"enabled",children:s("common.on")})]})]})}):null,n.jsx(K,{title:s("general.testNotification.title"),description:s("general.testNotification.description"),bordered:!1,children:n.jsx("div",{className:"flex flex-wrap justify-end gap-2",children:n.jsxs(ce,{type:"button",variant:"outline",disabled:ms!==null,onClick:()=>{ei()},children:[ms==="testing"?n.jsx(we,{className:"mr-2 size-4 animate-spin"}):null,s("general.testNotification.button")]})})})]}):null]}):null,n.jsx(K,{title:s("general.projectIcons.title"),description:s("general.projectIcons.description"),children:n.jsxs(ie,{value:gn?"enabled":"disabled",onValueChange:r=>{const x=r==="enabled";Rr(x),Fe({showProjectIconsInSidebar:x})},children:[n.jsx(oe,{className:"w-[100px]",children:n.jsx(ue,{})}),n.jsxs(le,{children:[n.jsx(M,{value:"disabled",children:s("common.off")}),n.jsx(M,{value:"enabled",children:s("common.on")})]})]})}),n.jsx(K,{title:s("general.folderGroups.title"),description:s("general.folderGroups.description"),children:n.jsxs(ie,{value:ve?"enabled":"disabled",onValueChange:r=>Pe(r==="enabled"),children:[n.jsx(oe,{className:"w-[100px]",children:n.jsx(ue,{})}),n.jsxs(le,{children:[n.jsx(M,{value:"disabled",children:s("common.off")}),n.jsx(M,{value:"enabled",children:s("common.on")})]})]})}),ve?n.jsxs("div",{className:"mb-2 ml-6 space-y-0 border-l border-border/60 pl-4",children:[n.jsx(K,{title:s("general.featureOverview.title"),description:s("general.featureOverview.description"),bordered:!1,children:n.jsxs(ie,{value:ke?"enabled":"disabled",onValueChange:r=>We(r==="enabled"),children:[n.jsx(oe,{className:"w-[100px]",children:n.jsx(ue,{})}),n.jsxs(le,{children:[n.jsx(M,{value:"disabled",children:s("common.off")}),n.jsx(M,{value:"enabled",children:s("common.on")})]})]})}),n.jsx(K,{title:s("general.kanbanStatus.title"),description:s("general.kanbanStatus.description"),bordered:!1,children:n.jsxs(ie,{value:Ne?"enabled":"disabled",onValueChange:r=>Ge(r==="enabled"),children:[n.jsx(oe,{className:"w-[100px]",children:n.jsx(ue,{})}),n.jsxs(le,{children:[n.jsx(M,{value:"disabled",children:s("common.off")}),n.jsx(M,{value:"enabled",children:s("common.on")})]})]})}),n.jsx(K,{title:s("general.projectMetadata.title",{directory:Pa}),description:s("general.projectMetadata.description",{appName:Ea,directory:Pa}),bordered:!1,children:n.jsxs(ie,{value:Ce?"commit":"ignore",onValueChange:r=>{const x=r==="commit";Qe(x),c.handleSetCommitProjectMetadataDirectory(x)},children:[n.jsx(oe,{className:"w-[120px]",children:n.jsx(ue,{})}),n.jsxs(le,{children:[n.jsx(M,{value:"commit",children:s("general.projectMetadata.commit")}),n.jsx(M,{value:"ignore",children:s("general.projectMetadata.ignore")})]})]})})]}):null,n.jsx(K,{title:s("general.providerIcons.title"),description:s("general.providerIcons.description"),children:n.jsxs(ie,{value:de?"enabled":"disabled",onValueChange:r=>ye(r==="enabled"),children:[n.jsx(oe,{className:"w-[100px]",children:n.jsx(ue,{})}),n.jsxs(le,{children:[n.jsx(M,{value:"disabled",children:s("common.off")}),n.jsx(M,{value:"enabled",children:s("common.on")})]})]})}),n.jsx(K,{title:s("general.defaultEditor.title"),description:s("general.defaultEditor.description"),alignStart:!0,children:n.jsxs(ie,{value:C,onValueChange:r=>te(r),children:[n.jsx(oe,{className:"min-w-[180px]",children:n.jsx(ue,{})}),n.jsx(le,{children:n.jsx(Zs,{children:Ll.map(r=>n.jsx(M,{value:r.value,children:r.value==="custom"?s("general.defaultEditor.custom"):r.label},r.value))})})]})}),C==="custom"?n.jsx("div",{className:"border-t border-border",children:n.jsxs("div",{className:"flex justify-between gap-8 py-5 pl-6",children:[n.jsxs("div",{className:"min-w-0 max-w-xl",children:[n.jsx("div",{className:"text-sm font-medium text-foreground",children:s("general.commandTemplate.title")}),n.jsx("div",{className:"mt-1 text-[13px] text-muted-foreground",children:s("general.commandTemplate.description")})]}),n.jsxs("div",{className:"flex min-w-0 max-w-[420px] flex-1 flex-col items-stretch gap-2",children:[n.jsx(ze,{type:"text",value:Es,onChange:r=>Cn(r.target.value),onBlur:la,onKeyDown:r=>oa(r,la),className:"font-mono"}),n.jsxs("div",{className:"text-xs text-muted-foreground",children:[s("general.commandTemplate.preview")," ",n.jsx("span",{className:"font-mono",children:ii})]})]})]})}):null,n.jsx(K,{title:s("general.terminalScrollback.title"),description:s("general.terminalScrollback.description"),children:n.jsxs("div",{className:"flex w-full min-w-0 flex-col items-stretch gap-2 md:w-auto md:items-end",children:[n.jsx(ze,{type:"number",min:Da,max:Oa,step:100,value:wn,onChange:r=>Is(r.target.value),onBlur:ea,onKeyDown:r=>gs(r,ea),className:"hide-number-steppers w-full text-left font-mono md:w-28 md:text-right"}),n.jsxs("div",{className:"text-left text-xs text-muted-foreground md:text-right",children:[Da,"-",Oa," ",s("general.terminalScrollback.lines"),z===Wi?` ${s("common.defaultSuffix")}`:""]})]})}),n.jsx(K,{title:s("general.terminalMinColumnWidth.title"),description:s("general.terminalMinColumnWidth.description"),children:n.jsxs("div",{className:"flex w-full min-w-0 flex-col items-stretch gap-2 md:w-auto md:items-end",children:[n.jsx(ze,{type:"number",min:Ma,max:La,step:10,value:Nn,onChange:r=>Rs(r.target.value),onBlur:ta,onKeyDown:r=>gs(r,ta),className:"hide-number-steppers w-full text-left font-mono md:w-28 md:text-right"}),n.jsxs("div",{className:"text-left text-xs text-muted-foreground md:text-right",children:[Ma,"-",La," px",V===Gi?` ${s("common.defaultSuffix")}`:""]})]})}),n.jsx(K,{title:s("general.chatChunkSize.title"),description:n.jsxs("div",{className:"space-y-1",children:[n.jsx("div",{children:s("general.chatChunkSize.description")}),n.jsx("div",{children:s("general.chatChunkSize.details",{path:Or,min:ys/1024,max:vs/1024,default:Qi/1024})}),A!=null&&A.warning?n.jsx("div",{className:"text-amber-700 dark:text-amber-300",children:A.warning}):null,An?n.jsx("div",{className:"text-red-500",children:An}):null]}),children:n.jsxs("div",{className:"flex w-full min-w-0 flex-col items-stretch gap-2 md:w-auto md:items-end",children:[n.jsx(ze,{type:"number",min:ys/1024,max:vs/1024,step:16,value:_n,onChange:r=>Zt(r.target.value),onBlur:()=>{Qr()},onKeyDown:r=>{r.key==="Enter"&&(r.preventDefault(),r.currentTarget.blur())},disabled:Pn,className:"hide-number-steppers w-full text-left font-mono md:w-28 md:text-right"}),n.jsx("div",{className:"text-left text-xs text-muted-foreground md:text-right",children:s(Pn?"actions.saving":"general.chatChunkSize.unit")})]})})]})}):j==="changelog"?n.jsx(al,{entries:nl}):j==="quick-chats"?n.jsx(ll,{}):j==="slash-commands"?n.jsx(gl,{}):j==="usage"?n.jsx(Rl,{access:me}):j==="providers"?n.jsxs("div",{className:"border-b border-border",children:[n.jsx(K,{title:s("providers.defaultProvider.title"),badge:mi?n.jsx(rt,{level:"account",label:at("account",I)}):null,description:s("providers.defaultProvider.description"),bordered:!1,children:n.jsxs(ie,{value:Br,onValueChange:r=>re(r),children:[n.jsx(oe,{className:"min-w-[180px]",children:n.jsx(ue,{})}),n.jsx(le,{children:n.jsxs(Zs,{children:[n.jsx(M,{value:"last_used",children:s("providers.defaultProvider.lastUsed")}),li.map(r=>n.jsx(M,{value:r.id,disabled:r.id==="openrouter"&&!me.features.openrouter.enabled,children:r.label},r.id))]})})]})}),Dn?n.jsx("div",{className:"border-t border-border px-0 py-3 text-sm text-destructive",children:Dn}):null,n.jsx(K,{title:s("providers.sectionTitle",{provider:s("providers.names.claude")}),description:s("providers.savedDefaultsDescription",{provider:s("providers.names.claude"),status:Ot(xe,h,"claude",{active:s("providers.status.activeSentence"),inactive:s("providers.status.inactiveSentence")})}),alignStart:!0,children:n.jsxs("div",{className:Re("max-w-[420px]",!ge("claude").systemActive&&"opacity-50"),children:[n.jsx("div",{className:"mb-3 flex flex-wrap items-center gap-2",children:n.jsxs(ie,{value:((h==null?void 0:h.settings.claude)??he.claude).active?"active":"inactive",onValueChange:r=>{Rt({...(h==null?void 0:h.settings)??he,claude:{...(h==null?void 0:h.settings.claude)??he.claude,active:r==="active"}})},children:[n.jsx(oe,{className:"min-w-[140px]",disabled:!ge("claude").systemActive,children:n.jsx(ue,{})}),n.jsxs(le,{children:[n.jsx(M,{value:"active",children:s("providers.status.active")}),n.jsx(M,{value:"inactive",children:s("providers.status.inactive")})]})]})}),n.jsx(Pt,{availableProviders:xe,selectedProvider:"claude",disabled:!ge("claude").systemActive,showProviderPicker:!1,providerLocked:!0,model:P.claude.model,modelOptions:P.claude.modelOptions,onModelChange:(r,x)=>{D("claude",x)},onClaudeReasoningEffortChange:r=>{fe("claude",{reasoningEffort:r})},onClaudeContextWindowChange:r=>{fe("claude",{contextWindow:r})},onClaudeFastModeChange:r=>{fe("claude",{fastMode:r})},onCodexReasoningEffortChange:()=>{},onGeminiThinkingModeChange:()=>{},onCodexFastModeChange:()=>{},planMode:P.claude.planMode,onPlanModeChange:r=>N("claude",r),includePlanMode:!0,className:"justify-start flex-wrap"})]})}),n.jsx(K,{title:s("providers.sectionTitle",{provider:s("providers.names.codex")}),description:s("providers.savedDefaultsDescription",{provider:s("providers.names.codex"),status:Ot(xe,h,"codex",{active:s("providers.status.activeSentence"),inactive:s("providers.status.inactiveSentence")})}),alignStart:!0,children:n.jsxs("div",{className:Re("max-w-[420px]",!ge("codex").systemActive&&"opacity-50"),children:[n.jsx("div",{className:"mb-3 flex flex-wrap items-center gap-2",children:n.jsxs(ie,{value:((h==null?void 0:h.settings.codex)??he.codex).active?"active":"inactive",onValueChange:r=>{Rt({...(h==null?void 0:h.settings)??he,codex:{...(h==null?void 0:h.settings.codex)??he.codex,active:r==="active"}})},children:[n.jsx(oe,{className:"min-w-[140px]",disabled:!ge("codex").systemActive,children:n.jsx(ue,{})}),n.jsxs(le,{children:[n.jsx(M,{value:"active",children:s("providers.status.active")}),n.jsx(M,{value:"inactive",children:s("providers.status.inactive")})]})]})}),n.jsx(Pt,{availableProviders:xe,selectedProvider:"codex",disabled:!ge("codex").systemActive,showProviderPicker:!1,providerLocked:!0,model:P.codex.model,modelOptions:P.codex.modelOptions,onModelChange:(r,x)=>{D("codex",x),fe("codex",{reasoningEffort:Yi(x,P.codex.modelOptions.reasoningEffort,xe)})},onClaudeReasoningEffortChange:()=>{},onClaudeContextWindowChange:()=>{},onCodexReasoningEffortChange:r=>{fe("codex",{reasoningEffort:r})},onGeminiThinkingModeChange:()=>{},onCodexFastModeChange:r=>{fe("codex",{fastMode:r})},planMode:P.codex.planMode,onPlanModeChange:r=>N("codex",r),includePlanMode:!0,className:"justify-start flex-wrap"})]})}),n.jsx(K,{title:s("providers.sectionTitle",{provider:s("providers.names.gemini")}),description:s("providers.savedDefaultsDescription",{provider:s("providers.names.gemini"),status:Ot(xe,h,"gemini",{active:s("providers.status.activeSentence"),inactive:s("providers.status.inactiveSentence")})}),alignStart:!0,children:n.jsxs("div",{className:Re("max-w-[420px]",!ge("gemini").systemActive&&"opacity-50"),children:[n.jsx("div",{className:"mb-3 flex flex-wrap items-center gap-2",children:n.jsxs(ie,{value:((h==null?void 0:h.settings.gemini)??he.gemini).active?"active":"inactive",onValueChange:r=>{Rt({...(h==null?void 0:h.settings)??he,gemini:{...(h==null?void 0:h.settings.gemini)??he.gemini,active:r==="active"}})},children:[n.jsx(oe,{className:"min-w-[140px]",disabled:!ge("gemini").systemActive,children:n.jsx(ue,{})}),n.jsxs(le,{children:[n.jsx(M,{value:"active",children:s("providers.status.active")}),n.jsx(M,{value:"inactive",children:s("providers.status.inactive")})]})]})}),n.jsx(Pt,{availableProviders:xe,selectedProvider:"gemini",disabled:!ge("gemini").systemActive,showProviderPicker:!1,providerLocked:!0,model:P.gemini.model,modelOptions:P.gemini.modelOptions,onModelChange:(r,x)=>{D("gemini",x)},onClaudeReasoningEffortChange:()=>{},onClaudeContextWindowChange:()=>{},onCodexReasoningEffortChange:()=>{},onGeminiThinkingModeChange:r=>{fe("gemini",{thinkingMode:r})},onCodexFastModeChange:()=>{},planMode:P.gemini.planMode,onPlanModeChange:r=>N("gemini",r),includePlanMode:!0,className:"justify-start flex-wrap"})]})}),n.jsx(K,{title:s("providers.sectionTitle",{provider:s("providers.names.cursor")}),description:s("providers.savedDefaultsDescription",{provider:s("providers.names.cursor"),status:Ot(xe,h,"cursor",{active:s("providers.status.activeSentence"),inactive:s("providers.status.inactiveSentence")})}),alignStart:!0,children:n.jsxs("div",{className:Re("max-w-[420px]",!ge("cursor").systemActive&&"opacity-50"),children:[n.jsx("div",{className:"mb-3 flex flex-wrap items-center gap-2",children:n.jsxs(ie,{value:((h==null?void 0:h.settings.cursor)??he.cursor).active?"active":"inactive",onValueChange:r=>{Rt({...(h==null?void 0:h.settings)??he,cursor:{...(h==null?void 0:h.settings.cursor)??he.cursor,active:r==="active"}})},children:[n.jsx(oe,{className:"min-w-[140px]",disabled:!ge("cursor").systemActive,children:n.jsx(ue,{})}),n.jsxs(le,{children:[n.jsx(M,{value:"active",children:s("providers.status.active")}),n.jsx(M,{value:"inactive",children:s("providers.status.inactive")})]})]})}),n.jsx(Pt,{availableProviders:xe,selectedProvider:"cursor",disabled:!ge("cursor").systemActive,showProviderPicker:!1,providerLocked:!0,model:P.cursor.model,modelOptions:P.cursor.modelOptions,onModelChange:(r,x)=>{D("cursor",x)},onClaudeReasoningEffortChange:()=>{},onClaudeContextWindowChange:()=>{},onCodexReasoningEffortChange:()=>{},onGeminiThinkingModeChange:()=>{},onCodexFastModeChange:()=>{},planMode:P.cursor.planMode,onPlanModeChange:r=>N("cursor",r),includePlanMode:!0,className:"justify-start flex-wrap"})]})}),n.jsx(K,{title:s("providers.sectionTitle",{provider:s("providers.names.qwen")}),description:s("providers.savedDefaultsDescription",{provider:s("providers.names.qwen"),status:Ot(xe,h,"qwen",{active:s("providers.status.activeSentence"),inactive:s("providers.status.inactiveSentence")})}),alignStart:!0,children:n.jsxs("div",{className:Re("max-w-[420px]",!ge("qwen").systemActive&&"opacity-50"),children:[n.jsx("div",{className:"mb-3 flex flex-wrap items-center gap-2",children:n.jsxs(ie,{value:((h==null?void 0:h.settings.qwen)??he.qwen).active?"active":"inactive",onValueChange:r=>{Rt({...(h==null?void 0:h.settings)??he,qwen:{...(h==null?void 0:h.settings.qwen)??he.qwen,active:r==="active"}})},children:[n.jsx(oe,{className:"min-w-[140px]",disabled:!ge("qwen").systemActive,children:n.jsx(ue,{})}),n.jsxs(le,{children:[n.jsx(M,{value:"active",children:s("providers.status.active")}),n.jsx(M,{value:"inactive",children:s("providers.status.inactive")})]})]})}),n.jsx(Pt,{availableProviders:xe,selectedProvider:"qwen",disabled:!ge("qwen").systemActive,showProviderPicker:!1,providerLocked:!0,model:P.qwen.model,modelOptions:P.qwen.modelOptions,onModelChange:(r,x)=>{D("qwen",x)},onClaudeReasoningEffortChange:()=>{},onClaudeContextWindowChange:()=>{},onCodexReasoningEffortChange:()=>{},onGeminiThinkingModeChange:()=>{},onCodexFastModeChange:()=>{},planMode:P.qwen.planMode,onPlanModeChange:r=>N("qwen",r),includePlanMode:!0,className:"justify-start flex-wrap"})]})}),n.jsx(K,{title:s("providers.sectionTitle",{provider:s("providers.names.openrouter")}),badge:me.features.openrouter.enabled?null:n.jsx(rt,{level:"account",label:at("account",I)}),description:s("providers.savedDefaultsOpenRouterDescription",{status:Ot(xe,h,"openrouter",{active:s("providers.status.activeSentence"),inactive:s("providers.status.inactiveSentence")})}),alignStart:!0,children:n.jsxs("div",{className:Re("max-w-[420px]",!ge("openrouter").systemActive&&"opacity-50"),children:[n.jsx("div",{className:"mb-3 flex flex-wrap items-center gap-2",children:n.jsxs(ie,{value:((h==null?void 0:h.settings.openrouter)??he.openrouter).active?"active":"inactive",onValueChange:r=>{Rt({...(h==null?void 0:h.settings)??he,openrouter:{...(h==null?void 0:h.settings.openrouter)??he.openrouter,active:r==="active"}})},children:[n.jsx(oe,{className:"min-w-[140px]",disabled:!ge("openrouter").systemActive||!me.features.openrouter.enabled,children:n.jsx(ue,{})}),n.jsxs(le,{children:[n.jsx(M,{value:"active",children:s("providers.status.active")}),n.jsx(M,{value:"inactive",children:s("providers.status.inactive")})]})]})}),n.jsx(Pt,{availableProviders:xe,selectedProvider:"openrouter",disabled:!ge("openrouter").systemActive||!me.features.openrouter.enabled,showProviderPicker:!1,providerLocked:!0,model:P.openrouter.model,modelOptions:P.openrouter.modelOptions,onModelChange:(r,x)=>{D("openrouter",x)},onClaudeReasoningEffortChange:()=>{},onClaudeContextWindowChange:()=>{},onCodexReasoningEffortChange:()=>{},onGeminiThinkingModeChange:()=>{},onCodexFastModeChange:()=>{},planMode:P.openrouter.planMode,onPlanModeChange:r=>N("openrouter",r),includePlanMode:!0,className:"justify-start flex-wrap"})]})})]}):j==="keybindings"?n.jsxs("div",{className:"border-b border-border",children:[Rn?n.jsx("div",{className:"mb-4 rounded-2xl border border-destructive/20 bg-destructive/5 px-4 py-3 text-sm text-destructive",children:Rn}):null,ht.warning?n.jsx("div",{className:"mb-4 rounded-2xl border border-border bg-card/30 px-4 py-3 text-sm text-muted-foreground",children:ht.warning}):null,Ts.map((r,x)=>{const L=en(Fa[r]),J=gt[r]??"",be=J!==L;return n.jsx(K,{title:cr(s,r),description:n.jsxs(n.Fragment,{children:[n.jsx("span",{children:s("keybindings.items.shared.description")}),be?n.jsxs(n.Fragment,{children:[n.jsx("span",{children:" "}),n.jsx("button",{type:"button",onClick:()=>{ti(r)},className:"inline rounded text-foreground hover:text-foreground/80",children:s("keybindings.items.shared.restore",{value:L})})]}):null]}),bordered:x!==0,children:n.jsx("div",{className:"flex min-w-0 max-w-[420px] flex-1 flex-col items-stretch gap-2",children:n.jsx(ze,{type:"text",value:J,"aria-label":cr(s,r),onChange:At=>{const se=At.target.value;qt(Ke=>({...Ke,[r]:se}))},className:"font-mono"})})},r)})]}):null]}),c.commandError?n.jsxs("div",{className:"mx-auto mt-4 flex max-w-4xl items-start gap-3 rounded-2xl border border-destructive/20 bg-destructive/5 px-4 py-3 text-sm text-destructive",children:[n.jsx(uo,{className:"mt-0.5 h-4 w-4 flex-shrink-0"}),n.jsx("span",{children:c.commandError})]}):null]})]})]}),ma?n.jsx("div",{className:"absolute bottom-0 left-0 right-0 border-t border-border bg-background/95 backdrop-blur supports-[backdrop-filter]:bg-background/80",children:n.jsx("div",{className:"px-6 py-[14.25px]",children:n.jsxs("div",{className:"grid grid-cols-2 gap-x-4 gap-y-2 text-xs text-muted-foreground lg:grid-cols-4 lg:gap-3",children:[n.jsx("div",{className:"min-w-0",children:n.jsxs("div",{className:"flex items-baseline gap-1.5 lg:block",children:[n.jsx("div",{className:"uppercase tracking-wide text-[11px] text-muted-foreground/80 lg:mb-1",children:s("footer.machine")}),n.jsx("div",{className:"truncate text-foreground/80",children:je?s("common.hidden"):R})]})}),n.jsx("div",{className:"min-w-0",children:n.jsxs("div",{className:"flex items-baseline gap-1.5 lg:block",children:[n.jsx("div",{className:"uppercase tracking-wide text-[11px] text-muted-foreground/80 lg:mb-1",children:s("footer.connection")}),n.jsx("div",{className:"truncate text-foreground/80",children:c.connectionStatus})]})}),n.jsx("div",{className:"min-w-0",children:n.jsxs("div",{className:"flex items-baseline gap-1.5 lg:block",children:[n.jsx("div",{className:"uppercase tracking-wide text-[11px] text-muted-foreground/80 lg:mb-1",children:s("footer.projects")}),n.jsx("div",{className:"truncate text-foreground/80",children:H})]})}),n.jsx("div",{className:"min-w-0",children:n.jsxs("div",{className:"flex items-baseline gap-1.5 lg:block",children:[n.jsx("div",{className:"uppercase tracking-wide text-[11px] text-muted-foreground/80 lg:mb-1",children:s("footer.version")}),n.jsx("div",{className:"truncate text-foreground/80",children:$})]})})]})})}):null]})}function tc(t){return{submitChatMessage:st(t.submitChatMessage??""),toggleQuickPrompts:st(t.toggleQuickPrompts??""),toggleProjectsSidebar:st(t.toggleProjectsSidebar??""),toggleEmbeddedTerminal:st(t.toggleEmbeddedTerminal??""),toggleRightSidebar:st(t.toggleRightSidebar??""),openInFinder:st(t.openInFinder??""),openInEditor:st(t.openInEditor??""),addSplitTerminal:st(t.addSplitTerminal??"")}}export{Kl as CLOUD_SYNC_SETTINGS_PROVIDERS,Ol as MAX_BACKGROUND_IMPORT_BYTES,ic as SettingsPage,tc as buildKeybindingPayload,ks as createKeybindingDrafts,dr as formatBackgroundImageDraftValue,Xt as formatChunkSizeKilobytes,Qs as getBackgroundSelectionAdjustments,Ul as getGeneralHeaderAction,rc as getKeybindingsSubtitle,Fl as getSettingsCloseTarget,Dl as getSidebarItems,zl as isBackgroundImportFileTooLarge,hn as isLocalBackgroundImageSource,Ss as keybindingDraftsEqual,Ml as mergeSavedKeybindingDrafts,Bl as reconcileLoadedKeybindingDrafts,mr as remoteRelayErrorLabel,Gl as remoteRelayStatusLabel,ur as resolveBackgroundImageDraftSource,lr as resolveSettingsSectionId,Ys as shouldApplyBackgroundImportResult,Gs as shouldShowLocalBackgroundImageDraftPlaceholder};
@@ -0,0 +1 @@
1
+ import{aX as L,bl as ln,aH as A,aV as P,bm as gn,bn as dn,aG as W,bo as hn,bp as z,bq as pn,br as An,bs as m,aY as N,b1 as U,b4 as T,bt as _n,a$ as on,bu as wn,bv as On,aI as V,bw as vn,bx as R}from"./mermaid.core-Dsp_nHq1.js";var Pn="[object Symbol]";function x(n){return typeof n=="symbol"||L(n)&&ln(n)==Pn}function bn(n,r){for(var e=-1,i=n==null?0:n.length,f=Array(i);++e<i;)f[e]=r(n[e],e,n);return f}var B=P?P.prototype:void 0,H=B?B.toString:void 0;function k(n){if(typeof n=="string")return n;if(A(n))return bn(n,k)+"";if(x(n))return H?H.call(n):"";var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function yn(){}function En(n,r){for(var e=-1,i=n==null?0:n.length;++e<i&&r(n[e],e,n)!==!1;);return n}function cn(n,r,e,i){for(var f=n.length,t=e+-1;++t<f;)if(r(n[t],t,n))return t;return-1}function Tn(n){return n!==n}function In(n,r,e){for(var i=e-1,f=n.length;++i<f;)if(n[i]===r)return i;return-1}function Rn(n,r,e){return r===r?In(n,r,e):cn(n,Tn,e)}function Sn(n,r){var e=n==null?0:n.length;return!!e&&Rn(n,r,0)>-1}function M(n){return W(n)?gn(n):dn(n)}var Ln=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,xn=/^\w*$/;function $(n,r){if(A(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||x(n)?!0:xn.test(n)||!Ln.test(n)||r!=null&&n in Object(r)}var Mn=500;function $n(n){var r=hn(n,function(i){return e.size===Mn&&e.clear(),i}),e=r.cache;return r}var Cn=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Gn=/\\(\\)?/g,Dn=$n(function(n){var r=[];return n.charCodeAt(0)===46&&r.push(""),n.replace(Cn,function(e,i,f,t){r.push(f?t.replace(Gn,"$1"):i||e)}),r});function Fn(n){return n==null?"":k(n)}function j(n,r){return A(n)?n:$(n,r)?[n]:Dn(Fn(n))}function I(n){if(typeof n=="string"||x(n))return n;var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function nn(n,r){r=j(r,n);for(var e=0,i=r.length;n!=null&&e<i;)n=n[I(r[e++])];return e&&e==i?n:void 0}function mn(n,r,e){var i=n==null?void 0:nn(n,r);return i===void 0?e:i}function rn(n,r){for(var e=-1,i=r.length,f=n.length;++e<i;)n[f+e]=r[e];return n}var K=P?P.isConcatSpreadable:void 0;function Nn(n){return A(n)||z(n)||!!(K&&n&&n[K])}function Kr(n,r,e,i,f){var t=-1,s=n.length;for(e||(e=Nn),f||(f=[]);++t<s;){var u=n[t];e(u)?rn(f,u):i||(f[f.length]=u)}return f}function Un(n,r,e,i){var f=-1,t=n==null?0:n.length;for(i&&t&&(e=n[++f]);++f<t;)e=r(e,n[f],f,n);return e}function en(n,r){for(var e=-1,i=n==null?0:n.length,f=0,t=[];++e<i;){var s=n[e];r(s,e,n)&&(t[f++]=s)}return t}function Bn(){return[]}var Hn=Object.prototype,Kn=Hn.propertyIsEnumerable,q=Object.getOwnPropertySymbols,qn=q?function(n){return n==null?[]:(n=Object(n),en(q(n),function(r){return Kn.call(n,r)}))}:Bn;function Yn(n,r,e){var i=r(n);return A(n)?i:rn(i,e(n))}function Y(n){return Yn(n,M,qn)}var Zn="__lodash_hash_undefined__";function Xn(n){return this.__data__.set(n,Zn),this}function Jn(n){return this.__data__.has(n)}function b(n){var r=-1,e=n==null?0:n.length;for(this.__data__=new pn;++r<e;)this.add(n[r])}b.prototype.add=b.prototype.push=Xn;b.prototype.has=Jn;function Qn(n,r){for(var e=-1,i=n==null?0:n.length;++e<i;)if(r(n[e],e,n))return!0;return!1}function tn(n,r){return n.has(r)}var Wn=1,zn=2;function fn(n,r,e,i,f,t){var s=e&Wn,u=n.length,a=r.length;if(u!=a&&!(s&&a>u))return!1;var h=t.get(n),g=t.get(r);if(h&&g)return h==r&&g==n;var l=-1,d=!0,o=e&zn?new b:void 0;for(t.set(n,r),t.set(r,n);++l<u;){var p=n[l],_=r[l];if(i)var w=s?i(_,p,l,r,n,t):i(p,_,l,n,r,t);if(w!==void 0){if(w)continue;d=!1;break}if(o){if(!Qn(r,function(O,v){if(!tn(o,v)&&(p===O||f(p,O,e,i,t)))return o.push(v)})){d=!1;break}}else if(!(p===_||f(p,_,e,i,t))){d=!1;break}}return t.delete(n),t.delete(r),d}function Vn(n){var r=-1,e=Array(n.size);return n.forEach(function(i,f){e[++r]=[f,i]}),e}function C(n){var r=-1,e=Array(n.size);return n.forEach(function(i){e[++r]=i}),e}var kn=1,jn=2,nr="[object Boolean]",rr="[object Date]",er="[object Error]",ir="[object Map]",tr="[object Number]",fr="[object RegExp]",sr="[object Set]",ur="[object String]",ar="[object Symbol]",lr="[object ArrayBuffer]",gr="[object DataView]",Z=P?P.prototype:void 0,S=Z?Z.valueOf:void 0;function dr(n,r,e,i,f,t,s){switch(e){case gr:if(n.byteLength!=r.byteLength||n.byteOffset!=r.byteOffset)return!1;n=n.buffer,r=r.buffer;case lr:return!(n.byteLength!=r.byteLength||!t(new m(n),new m(r)));case nr:case rr:case tr:return An(+n,+r);case er:return n.name==r.name&&n.message==r.message;case fr:case ur:return n==r+"";case ir:var u=Vn;case sr:var a=i&kn;if(u||(u=C),n.size!=r.size&&!a)return!1;var h=s.get(n);if(h)return h==r;i|=jn,s.set(n,r);var g=fn(u(n),u(r),i,f,t,s);return s.delete(n),g;case ar:if(S)return S.call(n)==S.call(r)}return!1}var hr=1,pr=Object.prototype,Ar=pr.hasOwnProperty;function _r(n,r,e,i,f,t){var s=e&hr,u=Y(n),a=u.length,h=Y(r),g=h.length;if(a!=g&&!s)return!1;for(var l=a;l--;){var d=u[l];if(!(s?d in r:Ar.call(r,d)))return!1}var o=t.get(n),p=t.get(r);if(o&&p)return o==r&&p==n;var _=!0;t.set(n,r),t.set(r,n);for(var w=s;++l<a;){d=u[l];var O=n[d],v=r[d];if(i)var F=s?i(v,O,d,r,n,t):i(O,v,d,n,r,t);if(!(F===void 0?O===v||f(O,v,e,i,t):F)){_=!1;break}w||(w=d=="constructor")}if(_&&!w){var y=n.constructor,E=r.constructor;y!=E&&"constructor"in n&&"constructor"in r&&!(typeof y=="function"&&y instanceof y&&typeof E=="function"&&E instanceof E)&&(_=!1)}return t.delete(n),t.delete(r),_}var or=1,X="[object Arguments]",J="[object Array]",c="[object Object]",wr=Object.prototype,Q=wr.hasOwnProperty;function Or(n,r,e,i,f,t){var s=A(n),u=A(r),a=s?J:N(n),h=u?J:N(r);a=a==X?c:a,h=h==X?c:h;var g=a==c,l=h==c,d=a==h;if(d&&U(n)){if(!U(r))return!1;s=!0,g=!1}if(d&&!g)return t||(t=new T),s||_n(n)?fn(n,r,e,i,f,t):dr(n,r,a,e,i,f,t);if(!(e&or)){var o=g&&Q.call(n,"__wrapped__"),p=l&&Q.call(r,"__wrapped__");if(o||p){var _=o?n.value():n,w=p?r.value():r;return t||(t=new T),f(_,w,e,i,t)}}return d?(t||(t=new T),_r(n,r,e,i,f,t)):!1}function G(n,r,e,i,f){return n===r?!0:n==null||r==null||!L(n)&&!L(r)?n!==n&&r!==r:Or(n,r,e,i,G,f)}var vr=1,Pr=2;function br(n,r,e,i){var f=e.length,t=f;if(n==null)return!t;for(n=Object(n);f--;){var s=e[f];if(s[2]?s[1]!==n[s[0]]:!(s[0]in n))return!1}for(;++f<t;){s=e[f];var u=s[0],a=n[u],h=s[1];if(s[2]){if(a===void 0&&!(u in n))return!1}else{var g=new T,l;if(!(l===void 0?G(h,a,vr|Pr,i,g):l))return!1}}return!0}function sn(n){return n===n&&!on(n)}function yr(n){for(var r=M(n),e=r.length;e--;){var i=r[e],f=n[i];r[e]=[i,f,sn(f)]}return r}function un(n,r){return function(e){return e==null?!1:e[n]===r&&(r!==void 0||n in Object(e))}}function Er(n){var r=yr(n);return r.length==1&&r[0][2]?un(r[0][0],r[0][1]):function(e){return e===n||br(e,n,r)}}function cr(n,r){return n!=null&&r in Object(n)}function Tr(n,r,e){r=j(r,n);for(var i=-1,f=r.length,t=!1;++i<f;){var s=I(r[i]);if(!(t=n!=null&&e(n,s)))break;n=n[s]}return t||++i!=f?t:(f=n==null?0:n.length,!!f&&wn(f)&&On(s,f)&&(A(n)||z(n)))}function Ir(n,r){return n!=null&&Tr(n,r,cr)}var Rr=1,Sr=2;function Lr(n,r){return $(n)&&sn(r)?un(I(n),r):function(e){var i=mn(e,n);return i===void 0&&i===r?Ir(e,n):G(r,i,Rr|Sr)}}function xr(n){return function(r){return r==null?void 0:r[n]}}function Mr(n){return function(r){return nn(r,n)}}function $r(n){return $(n)?xr(I(n)):Mr(n)}function an(n){return typeof n=="function"?n:n==null?V:typeof n=="object"?A(n)?Lr(n[0],n[1]):Er(n):$r(n)}function Cr(n,r){return n&&vn(n,r,M)}function Gr(n,r){return function(e,i){if(e==null)return e;if(!W(e))return n(e,i);for(var f=e.length,t=-1,s=Object(e);++t<f&&i(s[t],t,s)!==!1;);return e}}var D=Gr(Cr);function Dr(n){return typeof n=="function"?n:V}function qr(n,r){var e=A(n)?En:D;return e(n,Dr(r))}function Fr(n,r){var e=[];return D(n,function(i,f,t){r(i,f,t)&&e.push(i)}),e}function Yr(n,r){var e=A(n)?en:Fr;return e(n,an(r))}function mr(n,r,e,i,f){return f(n,function(t,s,u){e=i?(i=!1,t):r(e,t,s,u)}),e}function Zr(n,r,e){var i=A(n)?Un:mr,f=arguments.length<3;return i(n,an(r),e,f,D)}var Nr=1/0,Ur=R&&1/C(new R([,-0]))[1]==Nr?function(n){return new R(n)}:yn,Br=200;function Xr(n,r,e){var i=-1,f=Sn,t=n.length,s=!0,u=[],a=u;if(t>=Br){var h=r?null:Ur(n);if(h)return C(h);s=!1,f=tn,a=new b}else a=r?[]:u;n:for(;++i<t;){var g=n[i],l=r?r(g):g;if(g=g!==0?g:0,s&&l===l){for(var d=a.length;d--;)if(a[d]===l)continue n;r&&a.push(l),u.push(g)}else f(a,l,e)||(a!==u&&a.push(l),u.push(g))}return u}export{D as a,Kr as b,bn as c,an as d,rn as e,Yn as f,qn as g,Y as h,x as i,En as j,M as k,Xr as l,Yr as m,qr as n,cn as o,Dr as p,Cr as q,Zr as r,Bn as s,Tr as t,j as u,I as v,nn as w,Ir as x,Fn as y};
@@ -0,0 +1 @@
1
+ import{M as ln,N as an,O as Y,P as O,Q,R as un,S as y,T as tn,V as j,W as _,X as rn,Y as o,Z as sn,$ as on,a0 as fn}from"./mermaid.core-Dsp_nHq1.js";function cn(l){return l.innerRadius}function yn(l){return l.outerRadius}function gn(l){return l.startAngle}function dn(l){return l.endAngle}function mn(l){return l&&l.padAngle}function pn(l,h,D,S,v,R,V,a){var E=D-l,i=S-h,n=V-v,d=a-R,u=d*E-n*i;if(!(u*u<y))return u=(n*(h-R)-d*(l-v))/u,[l+u*E,h+u*i]}function H(l,h,D,S,v,R,V){var a=l-D,E=h-S,i=(V?R:-R)/j(a*a+E*E),n=i*E,d=-i*a,u=l+n,s=h+d,f=D+n,c=S+d,W=(u+f)/2,t=(s+c)/2,m=f-u,g=c-s,A=m*m+g*g,T=v-R,P=u*c-f*s,I=(g<0?-1:1)*j(on(0,T*T*A-P*P)),M=(P*g-m*I)/A,N=(-P*m-g*I)/A,w=(P*g+m*I)/A,p=(-P*m+g*I)/A,x=M-W,e=N-t,r=w-W,X=p-t;return x*x+e*e>r*r+X*X&&(M=w,N=p),{cx:M,cy:N,x01:-n,y01:-d,x11:M*(v/T-1),y11:N*(v/T-1)}}function hn(){var l=cn,h=yn,D=Q(0),S=null,v=gn,R=dn,V=mn,a=null,E=ln(i);function i(){var n,d,u=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-un,c=R.apply(this,arguments)-un,W=rn(c-f),t=c>f;if(a||(a=n=E()),s<u&&(d=s,s=u,u=d),!(s>y))a.moveTo(0,0);else if(W>tn-y)a.moveTo(s*Y(f),s*O(f)),a.arc(0,0,s,f,c,!t),u>y&&(a.moveTo(u*Y(c),u*O(c)),a.arc(0,0,u,c,f,t));else{var m=f,g=c,A=f,T=c,P=W,I=W,M=V.apply(this,arguments)/2,N=M>y&&(S?+S.apply(this,arguments):j(u*u+s*s)),w=_(rn(s-u)/2,+D.apply(this,arguments)),p=w,x=w,e,r;if(N>y){var X=sn(N/u*O(M)),z=sn(N/s*O(M));(P-=X*2)>y?(X*=t?1:-1,A+=X,T-=X):(P=0,A=T=(f+c)/2),(I-=z*2)>y?(z*=t?1:-1,m+=z,g-=z):(I=0,m=g=(f+c)/2)}var Z=s*Y(m),$=s*O(m),B=u*Y(T),C=u*O(T);if(w>y){var F=s*Y(g),G=s*O(g),J=u*Y(A),K=u*O(A),q;if(W<an)if(q=pn(Z,$,J,K,F,G,B,C)){var L=Z-q[0],U=$-q[1],k=F-q[0],b=G-q[1],nn=1/O(fn((L*k+U*b)/(j(L*L+U*U)*j(k*k+b*b)))/2),en=j(q[0]*q[0]+q[1]*q[1]);p=_(w,(u-en)/(nn-1)),x=_(w,(s-en)/(nn+1))}else p=x=0}I>y?x>y?(e=H(J,K,Z,$,s,x,t),r=H(F,G,B,C,s,x,t),a.moveTo(e.cx+e.x01,e.cy+e.y01),x<w?a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,s,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),!t),a.arc(r.cx,r.cy,x,o(r.y11,r.x11),o(r.y01,r.x01),!t))):(a.moveTo(Z,$),a.arc(0,0,s,m,g,!t)):a.moveTo(Z,$),!(u>y)||!(P>y)?a.lineTo(B,C):p>y?(e=H(B,C,F,G,u,-p,t),r=H(Z,$,J,K,u,-p,t),a.lineTo(e.cx+e.x01,e.cy+e.y01),p<w?a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,u,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),t),a.arc(r.cx,r.cy,p,o(r.y11,r.x11),o(r.y01,r.x01),!t))):a.arc(0,0,u,T,A,t)}if(a.closePath(),n)return a=null,n+""||null}return i.centroid=function(){var n=(+l.apply(this,arguments)+ +h.apply(this,arguments))/2,d=(+v.apply(this,arguments)+ +R.apply(this,arguments))/2-an/2;return[Y(d)*n,O(d)*n]},i.innerRadius=function(n){return arguments.length?(l=typeof n=="function"?n:Q(+n),i):l},i.outerRadius=function(n){return arguments.length?(h=typeof n=="function"?n:Q(+n),i):h},i.cornerRadius=function(n){return arguments.length?(D=typeof n=="function"?n:Q(+n),i):D},i.padRadius=function(n){return arguments.length?(S=n==null?null:typeof n=="function"?n:Q(+n),i):S},i.startAngle=function(n){return arguments.length?(v=typeof n=="function"?n:Q(+n),i):v},i.endAngle=function(n){return arguments.length?(R=typeof n=="function"?n:Q(+n),i):R},i.padAngle=function(n){return arguments.length?(V=typeof n=="function"?n:Q(+n),i):V},i.context=function(n){return arguments.length?(a=n??null,i):a},i}export{hn as d};