specrails-desktop 2.28.1 → 2.29.1

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 (252) hide show
  1. package/client/dist/assets/{ActivityFeedPage-DcMmDAP3.js → ActivityFeedPage-D8RKRRoM.js} +1 -1
  2. package/client/dist/assets/AgentBrowserCapture-BUHPHNSN.js +1 -0
  3. package/client/dist/assets/{AgentModeCodePane-CM77ljte.js → AgentModeCodePane-GZc8bNGT.js} +2 -2
  4. package/client/dist/assets/AgentModeJobsPane-DWtQqj3k.js +1 -0
  5. package/client/dist/assets/AgentsPage-CKPtHkRP.js +86 -0
  6. package/client/dist/assets/{AnalyticsPage-B4qflNxi.js → AnalyticsPage-CZW8c77k.js} +1 -1
  7. package/client/dist/assets/{BarChart-Ckstq9fl.js → BarChart-DugEoe2q.js} +2 -2
  8. package/client/dist/assets/CodePage-CQ-uKETG.js +2 -0
  9. package/client/dist/assets/{DesktopAnalyticsPage-DbgMa8OO.js → DesktopAnalyticsPage-Bgo4SyCH.js} +1 -1
  10. package/client/dist/assets/{DocsDialog-BQc9Kwev.js → DocsDialog-DxpWw_La.js} +2 -2
  11. package/client/dist/assets/DocsPage-CmcOkK19.js +11 -0
  12. package/client/dist/assets/{ExportDropdown-a43XHO3Y.js → ExportDropdown-DvTS2wc7.js} +1 -1
  13. package/client/dist/assets/IntegrationsPage-B72WxJ3Z.js +1 -0
  14. package/client/dist/assets/InteractiveJobComposer-B5gh4Qoy.js +19 -0
  15. package/client/dist/assets/JobDetailModal-D-BeqsJ6.js +1 -0
  16. package/client/dist/assets/JobDetailPage-DwdozwLO.js +1 -0
  17. package/client/dist/assets/JobsPage-BDkinklt.js +1 -0
  18. package/client/dist/assets/LoopBuilderPage-CclJ3VZA.js +7 -0
  19. package/client/dist/assets/{LoopPreviewModal-B2wmifF6.js → LoopPreviewModal-Dw4UgoLu.js} +1 -1
  20. package/client/dist/assets/LoopsPage-D7ac4M24.js +1 -0
  21. package/client/dist/assets/PluginsPage-wdC-qa40.js +2 -0
  22. package/client/dist/assets/ProjectSettingsDialog-BlTlRtGI.js +1 -0
  23. package/client/dist/assets/TemplatePreviewModal-CeMx2Red.js +1 -0
  24. package/client/dist/assets/{agent-ostmMYNz2.js → agent-B8BXmlUQ2.js} +1 -1
  25. package/client/dist/assets/{agent-MaTxBlg5.js → agent-BEXYxDbs.js} +1 -1
  26. package/client/dist/assets/{agent-D4JAuEGN2.js → agent-BYc3-6Ln2.js} +1 -1
  27. package/client/dist/assets/{agent-DNQlI8EN.js → agent-BbJorPdT.js} +1 -1
  28. package/client/dist/assets/{agent-CxnRzL6Z.js → agent-CewFImgL.js} +1 -1
  29. package/client/dist/assets/{agent-BuYz6fJd.js → agent-DfhYoUmp.js} +1 -1
  30. package/client/dist/assets/{agent-DyzUH89R.js → agent-TK_rrK4d.js} +1 -1
  31. package/client/dist/assets/{agent-BRJCESkc2.js → agent-bHjA9R_j2.js} +1 -1
  32. package/client/dist/assets/{brain-BPbhM1Jx.js → brain-C92rjjYP.js} +1 -1
  33. package/client/dist/assets/{dist-js-Byjcju1W.js → dist-js-CgpP6tKI.js} +1 -1
  34. package/client/dist/assets/{dist-js-Dh-9lbLD.js → dist-js-DHiN-A_E.js} +1 -1
  35. package/client/dist/assets/index-BVbgKXUu.css +2 -0
  36. package/client/dist/assets/index-DyY1QyIn.js +158 -0
  37. package/client/dist/assets/{lib-yKyTNJ1c.js → lib-0PFDyMxJ.js} +1 -1
  38. package/client/dist/assets/{settings-Bp24JHlv2.js → settings-1w1O5Og82.js} +1 -1
  39. package/client/dist/assets/{settings-C_T0-j9d.js → settings-BSihkr0e.js} +1 -1
  40. package/client/dist/assets/{settings-DhaFKpcw2.js → settings-BiDOB3hV2.js} +1 -1
  41. package/client/dist/assets/{settings-BemR_e3F.js → settings-BoubJhDP2.js} +1 -1
  42. package/client/dist/assets/{settings-BvIwQ3A1.js → settings-CB-EZ_W8.js} +1 -1
  43. package/client/dist/assets/{settings-B_v3zgJf.js → settings-DNL68KTE.js} +1 -1
  44. package/client/dist/assets/{settings-Bx2ObkTR2.js → settings-Jc46vUhd.js} +1 -1
  45. package/client/dist/assets/{settings-BYCMtxOz.js → settings-cJNynGIZ.js} +1 -1
  46. package/client/dist/assets/{upload-Qh1NE3xi.js → upload-CmR4h9H1.js} +1 -1
  47. package/client/dist/assets/{value-BMPeyInx.js → value-JA3bf47v.js} +1 -1
  48. package/client/dist/index.html +4 -4
  49. package/package.json +1 -1
  50. package/server/dist/agent-operator-prompt.js +33 -1
  51. package/server/dist/headroom-manager.js +0 -1
  52. package/server/dist/loop-factory.js +15 -8
  53. package/server/dist/loop-graph.js +7 -0
  54. package/server/dist/loop-run-manager.js +115 -13
  55. package/server/dist/loop-runs-store.js +27 -8
  56. package/server/dist/loop-templates.js +10 -2
  57. package/server/dist/mcp/tools/jobs.js +3 -3
  58. package/server/dist/mcp/tools/rails.js +2 -1
  59. package/server/dist/project-registry.js +2 -0
  60. package/server/dist/project-router-jobs.js +15 -11
  61. package/server/dist/rail-isolated-launch.js +23 -9
  62. package/server/dist/rail-pr-decision.js +18 -6
  63. package/server/dist/rail-worktree-release.js +12 -6
  64. package/server/dist/rails-router.js +9 -2
  65. package/server/dist/worktree-manager.js +115 -19
  66. package/client/dist/assets/AgentBrowserCapture-CZ3oc1UL.js +0 -1
  67. package/client/dist/assets/AgentIntegrationsModal-DkqooCFn.js +0 -1
  68. package/client/dist/assets/AgentModeJobsPane-DbZzogbi.js +0 -1
  69. package/client/dist/assets/AgentsPage-BZIml7eL.js +0 -86
  70. package/client/dist/assets/CodePage-DFZXLbI1.js +0 -2
  71. package/client/dist/assets/DocsPage-OsV44ECy.js +0 -11
  72. package/client/dist/assets/IntegrationsPage-C3E8hZhB.js +0 -1
  73. package/client/dist/assets/InteractiveJobComposer-zj8SrOAl.js +0 -19
  74. package/client/dist/assets/JobDetailModal-Cm6ZeVoh.js +0 -1
  75. package/client/dist/assets/JobDetailPage-DN67LsdX.js +0 -1
  76. package/client/dist/assets/JobsPage-DF9wKGbw.js +0 -1
  77. package/client/dist/assets/LoopBuilderPage-RJ6GGjli.js +0 -7
  78. package/client/dist/assets/LoopsPage-DdlvH-dJ.js +0 -1
  79. package/client/dist/assets/PluginsPage-9DI0a6jI.js +0 -2
  80. package/client/dist/assets/ProjectSettingsDialog-dgy5hqPd.js +0 -1
  81. package/client/dist/assets/TemplatePreviewModal-CERf1IYB.js +0 -1
  82. package/client/dist/assets/index-89SuhD4Y.js +0 -158
  83. package/client/dist/assets/index-DOGzWJhO.css +0 -2
  84. /package/client/dist/assets/{activity-BbWiDfn-2.js → activity--iN4Ad2R2.js} +0 -0
  85. /package/client/dist/assets/{activity-DvECTYGt.js → activity-6hM_ZSg9.js} +0 -0
  86. /package/client/dist/assets/{activity-BZZlEG3a.js → activity-BZNfOdiS.js} +0 -0
  87. /package/client/dist/assets/{activity-DtzRy92x.js → activity-BuVo5sPB.js} +0 -0
  88. /package/client/dist/assets/{activity-D3Ic-HTS.js → activity-CIOLxGvh.js} +0 -0
  89. /package/client/dist/assets/{activity-FleOlK0l2.js → activity-D2r2h3SE2.js} +0 -0
  90. /package/client/dist/assets/{activity-DFbvNqhE2.js → activity-DtxrAUMo2.js} +0 -0
  91. /package/client/dist/assets/{addspec-CFxGvmJR2.js → addspec-BMtLZLW62.js} +0 -0
  92. /package/client/dist/assets/{addspec-DaA-CbTt.js → addspec-CP0HRuxY.js} +0 -0
  93. /package/client/dist/assets/{addspec-NBbcTbLc.js → addspec-CRuvWn8d.js} +0 -0
  94. /package/client/dist/assets/{addspec-BKrH2Ucz.js → addspec-D-JLDsUV.js} +0 -0
  95. /package/client/dist/assets/{addspec-B_LQMHW3.js → addspec-DfhDbg5c.js} +0 -0
  96. /package/client/dist/assets/{addspec-Bw_YQwo62.js → addspec-bsNDdqRm2.js} +0 -0
  97. /package/client/dist/assets/{addspec-CR8MB5Fr2.js → addspec-mgPOt5q02.js} +0 -0
  98. /package/client/dist/assets/{agents-BHgn--3j.js → agents-78bTZGZh.js} +0 -0
  99. /package/client/dist/assets/{agents-CV-_xBvX2.js → agents-BLhWCmDS2.js} +0 -0
  100. /package/client/dist/assets/{agents-B_qGaB0F.js → agents-BUdEi3-N.js} +0 -0
  101. /package/client/dist/assets/{agents-B9pFSJQI2.js → agents-BpoUaoW92.js} +0 -0
  102. /package/client/dist/assets/{agents-HFCqQH0Z.js → agents-CWo-KyAB.js} +0 -0
  103. /package/client/dist/assets/{agents-VsyFhGOS2.js → agents-DDtCJ5M02.js} +0 -0
  104. /package/client/dist/assets/{agents-CP8_ezYG.js → agents-bvyRLczL.js} +0 -0
  105. /package/client/dist/assets/{agentstudio-BEp7Sb46.js → agentstudio-BMQxc_bz.js} +0 -0
  106. /package/client/dist/assets/{agentstudio-RfZavULt2.js → agentstudio-COZriimI2.js} +0 -0
  107. /package/client/dist/assets/{agentstudio-D2A5peWV2.js → agentstudio-CWgXG5W52.js} +0 -0
  108. /package/client/dist/assets/{agentstudio-Br3WD7Xs.js → agentstudio-C_Jq8Tl4.js} +0 -0
  109. /package/client/dist/assets/{agentstudio-BOjG6tgJ.js → agentstudio-Dtq3dGYk.js} +0 -0
  110. /package/client/dist/assets/{agentstudio-RsxnZtUA.js → agentstudio-jKMTdT70.js} +0 -0
  111. /package/client/dist/assets/{agentstudio-CuTt3ZGe2.js → agentstudio-sI27TpBu2.js} +0 -0
  112. /package/client/dist/assets/{aiedit-CV520D4W2.js → aiedit-6CHdb_iv2.js} +0 -0
  113. /package/client/dist/assets/{aiedit-DrIjSojo.js → aiedit-B03pD_Na.js} +0 -0
  114. /package/client/dist/assets/{aiedit-a-Z-g5iC.js → aiedit-BtRqRxML.js} +0 -0
  115. /package/client/dist/assets/{aiedit-D0Syl-mC.js → aiedit-eMN4eQPF.js} +0 -0
  116. /package/client/dist/assets/{aiedit-DnBzjlVz2.js → aiedit-hknZlly82.js} +0 -0
  117. /package/client/dist/assets/{aiedit-26p5A_HY2.js → aiedit-igmw-ZoZ2.js} +0 -0
  118. /package/client/dist/assets/{aiedit-CcugGPbS.js → aiedit-pc5JDUq1.js} +0 -0
  119. /package/client/dist/assets/{analytics-Bpe41fnX2.js → analytics-BWMUZ2Pq2.js} +0 -0
  120. /package/client/dist/assets/{analytics-CpSTNfui.js → analytics-Bj-SmKHa.js} +0 -0
  121. /package/client/dist/assets/{analytics-4-eskbtX.js → analytics-C5dpiS0o.js} +0 -0
  122. /package/client/dist/assets/{analytics-DEe5BMz8.js → analytics-CCprAqk3.js} +0 -0
  123. /package/client/dist/assets/{analytics-4HvXb0Vn2.js → analytics-CR1TJqUi2.js} +0 -0
  124. /package/client/dist/assets/{analytics-DcOITHla2.js → analytics-DfNdXR0y2.js} +0 -0
  125. /package/client/dist/assets/{analytics-Bd9rHGjV.js → analytics-rmHuJv0V.js} +0 -0
  126. /package/client/dist/assets/{attachments-CgOQ9K-6.js → attachments-BgBNSqQd.js} +0 -0
  127. /package/client/dist/assets/{attachments-CA2f3qL3.js → attachments-BjyMmrwE.js} +0 -0
  128. /package/client/dist/assets/{attachments-DlEQu56g2.js → attachments-C9GTTJsx2.js} +0 -0
  129. /package/client/dist/assets/{attachments-CHDbhKeH.js → attachments-DCZOL1RU.js} +0 -0
  130. /package/client/dist/assets/{attachments-jVdKzAXn.js → attachments-DL-bPy9E.js} +0 -0
  131. /package/client/dist/assets/{attachments-D2jwJXQ42.js → attachments-DPCmkFZu2.js} +0 -0
  132. /package/client/dist/assets/{attachments-CKAY5aYG2.js → attachments-rNn1ekRy2.js} +0 -0
  133. /package/client/dist/assets/{browser-Cl-FwPXs.js → browser-BPkhILSJ.js} +0 -0
  134. /package/client/dist/assets/{browser-kA31eYhu2.js → browser-BijVYG0Y2.js} +0 -0
  135. /package/client/dist/assets/{browser-JsiohNmW.js → browser-BqLqJVVT.js} +0 -0
  136. /package/client/dist/assets/{browser-C4VJ5CW12.js → browser-Cc0iDqUi.js} +0 -0
  137. /package/client/dist/assets/{browser-BQFDxrRq.js → browser-Cvg-QHvd2.js} +0 -0
  138. /package/client/dist/assets/{browser-Do2jf8_N.js → browser-FRv8P02E.js} +0 -0
  139. /package/client/dist/assets/{browser-BbJ_q_OT2.js → browser-rWKj-RR_2.js} +0 -0
  140. /package/client/dist/assets/{chat-SaG-ng1x2.js → chat-BgL3zv6x2.js} +0 -0
  141. /package/client/dist/assets/{chat-n43nZGvn.js → chat-Bh3NdgJs.js} +0 -0
  142. /package/client/dist/assets/{chat-BalviUAD.js → chat-Bom6bqK3.js} +0 -0
  143. /package/client/dist/assets/{chat-BMWD_Rx12.js → chat-DdwZjT8K2.js} +0 -0
  144. /package/client/dist/assets/{chat-D5xEtsf3.js → chat-Dnwg-NpQ.js} +0 -0
  145. /package/client/dist/assets/{chat-CJddjN3D2.js → chat-DsbwJhus.js} +0 -0
  146. /package/client/dist/assets/{chat-Ds8GvCnv.js → chat-vylxqR0P2.js} +0 -0
  147. /package/client/dist/assets/{code-BotxM43N2.js → code-BRcDlze52.js} +0 -0
  148. /package/client/dist/assets/{code-CIPmDEd0.js → code-BdMy3Ffq.js} +0 -0
  149. /package/client/dist/assets/{code-HDK4P6Rx.js → code-CeQ0FZpC.js} +0 -0
  150. /package/client/dist/assets/{code-F_KjccGf.js → code-CwnBPPyA.js} +0 -0
  151. /package/client/dist/assets/{code-DUe1Bouz.js → code-DgeHz9CB.js} +0 -0
  152. /package/client/dist/assets/{code-Bit_z2Xd2.js → code-DzC1rMk12.js} +0 -0
  153. /package/client/dist/assets/{code-C9U6M5-e2.js → code-UPVvmAKM2.js} +0 -0
  154. /package/client/dist/assets/{commands-CzFSoIiq2.js → commands-C4Y3C-PF2.js} +0 -0
  155. /package/client/dist/assets/{commands-BllkJauO.js → commands-CSDs9q_2.js} +0 -0
  156. /package/client/dist/assets/{commands-BFQZc9AG.js → commands-DkU0qliq.js} +0 -0
  157. /package/client/dist/assets/{commands-KBbhsnw8.js → commands-JWMfGDmr.js} +0 -0
  158. /package/client/dist/assets/{commands-cKTaLwwV2.js → commands-RHOchN4n2.js} +0 -0
  159. /package/client/dist/assets/{commands-BMkC5-ki.js → commands-u-4eEHCN.js} +0 -0
  160. /package/client/dist/assets/{commands-CWX9WmDX2.js → commands-xHDDGfcP2.js} +0 -0
  161. /package/client/dist/assets/{common-DZbXlmq72.js → common-BM3LFLCE2.js} +0 -0
  162. /package/client/dist/assets/{common-Cfmwcrl52.js → common-Bwafujnc2.js} +0 -0
  163. /package/client/dist/assets/{common-D2cimsul.js → common-C-vU-j-I.js} +0 -0
  164. /package/client/dist/assets/{common-DH7fjyL1.js → common-C5HKSbbz.js} +0 -0
  165. /package/client/dist/assets/{common-CF8iGXrG.js → common-DhWTkocg.js} +0 -0
  166. /package/client/dist/assets/{common-DtXmzX2o2.js → common-DiPTT7V_2.js} +0 -0
  167. /package/client/dist/assets/{common-BfQD173j.js → common-DmqBPwZG.js} +0 -0
  168. /package/client/dist/assets/{dashboard-CiOyDh9L.js → dashboard-B5ang-ZS.js} +0 -0
  169. /package/client/dist/assets/{dashboard-BFfnCtq52.js → dashboard-CHHcOWVL2.js} +0 -0
  170. /package/client/dist/assets/{dashboard-BIC8KtRf2.js → dashboard-DBD4wPGY2.js} +0 -0
  171. /package/client/dist/assets/{dashboard-5C2FOZQX.js → dashboard-DSnztwWH.js} +0 -0
  172. /package/client/dist/assets/{dashboard-CEgg9NAr.js → dashboard-D_aP_InU.js} +0 -0
  173. /package/client/dist/assets/{dashboard-B6iQ-IL_.js → dashboard-DmBcdl1B.js} +0 -0
  174. /package/client/dist/assets/{dashboard-D6x5OnNj2.js → dashboard-RIcUKY1Y2.js} +0 -0
  175. /package/client/dist/assets/{explore-CAc8Qzu32.js → explore-B7fblXBb2.js} +0 -0
  176. /package/client/dist/assets/{explore-ELbrSZyQ2.js → explore-BHtEpoNN2.js} +0 -0
  177. /package/client/dist/assets/{explore-Bhy7WWXv.js → explore-C0k8HrkN.js} +0 -0
  178. /package/client/dist/assets/{explore-BO_OinBD.js → explore-CNBzrEPS.js} +0 -0
  179. /package/client/dist/assets/{explore-DCZL9gRN2.js → explore-D_mWBYCS2.js} +0 -0
  180. /package/client/dist/assets/{explore-DW_YTkQh.js → explore-Dahc1lOx.js} +0 -0
  181. /package/client/dist/assets/{explore-BEpIs343.js → explore-UvW1jEMa.js} +0 -0
  182. /package/client/dist/assets/{format-command-Db1viey1.js → format-command-CuWuRvka.js} +0 -0
  183. /package/client/dist/assets/{integrations-CWjh5VRk.js → integrations-2YcNyAl3.js} +0 -0
  184. /package/client/dist/assets/{integrations-RJfzXkPx2.js → integrations-BXCvXUlG2.js} +0 -0
  185. /package/client/dist/assets/{integrations-CUNe3t9l2.js → integrations-C1ThkTC52.js} +0 -0
  186. /package/client/dist/assets/{integrations-CAjq5tdW2.js → integrations-Crk2rFhL2.js} +0 -0
  187. /package/client/dist/assets/{integrations-CP_aiV_8.js → integrations-D9YrJ_Ep.js} +0 -0
  188. /package/client/dist/assets/{integrations-JOHSCvB3.js → integrations-Dn4JiGtW.js} +0 -0
  189. /package/client/dist/assets/{integrations-CG2dp3Kd.js → integrations-TAcYNh0b.js} +0 -0
  190. /package/client/dist/assets/{jira-C5UjxHE4.js → jira-BHAKtc4B.js} +0 -0
  191. /package/client/dist/assets/{jira-ZdKb-50F2.js → jira-Be369RIR2.js} +0 -0
  192. /package/client/dist/assets/{jira-DTYu3hJi2.js → jira-CPpgA-5z2.js} +0 -0
  193. /package/client/dist/assets/{jira-CQ7mrZde.js → jira-D5efgwp_.js} +0 -0
  194. /package/client/dist/assets/{jira-DtZpokjJ.js → jira-DS7ownDy.js} +0 -0
  195. /package/client/dist/assets/{jira-DIRkZk9U.js → jira-bDs7Im2C.js} +0 -0
  196. /package/client/dist/assets/{jira-B5wszJ1-2.js → jira-uNH1gETL2.js} +0 -0
  197. /package/client/dist/assets/{jobs-DAGiPVIS2.js → jobs-1GV2-4zd2.js} +0 -0
  198. /package/client/dist/assets/{jobs-DAU8C_tZ.js → jobs-26F9gGcE.js} +0 -0
  199. /package/client/dist/assets/{jobs-BJ-Gcao22.js → jobs-BgQzB0Sx2.js} +0 -0
  200. /package/client/dist/assets/{jobs-Da0GaaSc.js → jobs-BqWui9_f.js} +0 -0
  201. /package/client/dist/assets/{jobs-BFIdeDTw.js → jobs-CE8qeIYj.js} +0 -0
  202. /package/client/dist/assets/{jobs-p360zdf1.js → jobs-DzeuASRf.js} +0 -0
  203. /package/client/dist/assets/{jobs-P3unxtxo2.js → jobs-Wh7dn28q2.js} +0 -0
  204. /package/client/dist/assets/{loops-BjK8lmoZ2.js → loops-BvqQ-bHR2.js} +0 -0
  205. /package/client/dist/assets/{loops-Bi4ywYGn.js → loops-CvOWsi5r.js} +0 -0
  206. /package/client/dist/assets/{loops-DDs4KPu_.js → loops-D6D3XHjj.js} +0 -0
  207. /package/client/dist/assets/{loops-Du-bNVpc2.js → loops-DJNhp17p2.js} +0 -0
  208. /package/client/dist/assets/{loops-D3wdUkZV.js → loops-K5_HXfJa.js} +0 -0
  209. /package/client/dist/assets/{loops-DKzYFcq6.js → loops-LIgO_-eM.js} +0 -0
  210. /package/client/dist/assets/{loops-DvGbSfxw2.js → loops-vhJdbcz92.js} +0 -0
  211. /package/client/dist/assets/{mcp-DyULurYS2.js → mcp-CjVKXAhD2.js} +0 -0
  212. /package/client/dist/assets/{mcp-DfmzoT5t.js → mcp-Dcl-XxkR.js} +0 -0
  213. /package/client/dist/assets/{mcp-CbJ04oFS2.js → mcp-DtbxuH3V2.js} +0 -0
  214. /package/client/dist/assets/{mcp-Dd844F5_.js → mcp-H-gnQUdN.js} +0 -0
  215. /package/client/dist/assets/{mcp-zSJ2TsJj.js → mcp-N1nzp8oL.js} +0 -0
  216. /package/client/dist/assets/{mcp-BG-OCJca2.js → mcp-XJNRfxVp2.js} +0 -0
  217. /package/client/dist/assets/{mcp-CrWdq5db.js → mcp-sRmWE8WJ.js} +0 -0
  218. /package/client/dist/assets/{nav-DUuw9VIU2.js → nav-BElxljIF2.js} +0 -0
  219. /package/client/dist/assets/{nav-BY_4EWRv.js → nav-BXO7PJJG2.js} +0 -0
  220. /package/client/dist/assets/{nav-BAMkVEId.js → nav-C8kOuGh8.js} +0 -0
  221. /package/client/dist/assets/{nav-D0Erv9ZJ2.js → nav-COu2E_-L.js} +0 -0
  222. /package/client/dist/assets/{nav-CVXtv0wX2.js → nav-CW9pxWfC2.js} +0 -0
  223. /package/client/dist/assets/{nav-B2_ToNqS.js → nav-CXHUA4uf.js} +0 -0
  224. /package/client/dist/assets/{nav-S4HM94vW.js → nav-DdHF5VWJ.js} +0 -0
  225. /package/client/dist/assets/{setup-q0wRHUp1.js → setup-7J8TjG4O.js} +0 -0
  226. /package/client/dist/assets/{setup-DQWsu2TR.js → setup-BXpw07r-.js} +0 -0
  227. /package/client/dist/assets/{setup-mXnzww4f.js → setup-BiduSX9d.js} +0 -0
  228. /package/client/dist/assets/{setup-1vN48B-m2.js → setup-BuQNKztt2.js} +0 -0
  229. /package/client/dist/assets/{setup-BmJ0Kx16.js → setup-BwMovM9z2.js} +0 -0
  230. /package/client/dist/assets/{setup-JeBwoXoM.js → setup-D84y3wx-.js} +0 -0
  231. /package/client/dist/assets/{setup-T_ApeQDV2.js → setup-DU0ULX8q2.js} +0 -0
  232. /package/client/dist/assets/{specs-Ce5y2iFc2.js → specs-C9Sd7BhH2.js} +0 -0
  233. /package/client/dist/assets/{specs-C6J2zrLM.js → specs-CBDvEYKv.js} +0 -0
  234. /package/client/dist/assets/{specs-DZDoZsDq.js → specs-CIPr9reA2.js} +0 -0
  235. /package/client/dist/assets/{specs-BGRKhM8t.js → specs-CWtKcVDC.js} +0 -0
  236. /package/client/dist/assets/{specs-CT8exGOy2.js → specs-D2clrt2c2.js} +0 -0
  237. /package/client/dist/assets/{specs-GkiL-snY.js → specs-DTplt2XM.js} +0 -0
  238. /package/client/dist/assets/{specs-DbtIzV8a.js → specs-PozUNhqb.js} +0 -0
  239. /package/client/dist/assets/{terminal-Cvabyzm42.js → terminal-BRm03iFA2.js} +0 -0
  240. /package/client/dist/assets/{terminal-BTpE7iki.js → terminal-De2Brd23.js} +0 -0
  241. /package/client/dist/assets/{terminal-D0z12_sJ2.js → terminal-DxQWCqSD2.js} +0 -0
  242. /package/client/dist/assets/{terminal-a6Uq8B0p.js → terminal-WSAvHXoU.js} +0 -0
  243. /package/client/dist/assets/{terminal-DDk_bTw0.js → terminal-Z7KsDM_n.js} +0 -0
  244. /package/client/dist/assets/{terminal-DEyt0prF.js → terminal-cqfd3EDV.js} +0 -0
  245. /package/client/dist/assets/{terminal-BNSg2lR7.js → terminal-xGbCZJHg.js} +0 -0
  246. /package/client/dist/assets/{tickets-sVun0I6v.js → tickets-B7zT4IRf.js} +0 -0
  247. /package/client/dist/assets/{tickets-DZut8Ryt.js → tickets-BoXom7l8.js} +0 -0
  248. /package/client/dist/assets/{tickets-BIxU86j12.js → tickets-C3b8cHhd2.js} +0 -0
  249. /package/client/dist/assets/{tickets-dQfsc7Ph.js → tickets-CFXnJsYF.js} +0 -0
  250. /package/client/dist/assets/{tickets-LfK6LzKl2.js → tickets-CWYFvx1W2.js} +0 -0
  251. /package/client/dist/assets/{tickets-D1IeX2EW.js → tickets-DTHo9c3C.js} +0 -0
  252. /package/client/dist/assets/{tickets-C2BhwzwR.js → tickets-SuX_HkK4.js} +0 -0
@@ -1 +1 @@
1
- var e=`Missionszentrale`,t=`Specrails per Chat bedienen`,n=`Missionszentrale`,r=`Bitte den Agenten um alles…`,i=`Senden`,a=`Stopp`,o=`Kopieren`,s={openPreview:`{{name}} anzeigen`,openDownload:`{{name}} herunterladen`,previewTitle:`Vorschau von {{name}}`,downloadTitle:`Datei herunterladen?`,downloadPrompt:`Diese Datei kann hier nicht in der Vorschau angezeigt werden. Möchtest du sie herunterladen?`,download:`Herunterladen`,cancelDownload:`Jetzt nicht`,loading:`Datei wird vorbereitet…`,loadFailed:`Anhang konnte nicht geladen werden`,loadError:`Anhang konnte nicht geladen werden: {{error}}`},c=`Maximieren`,l=`Wiederherstellen`,u=`Minimieren`,d=`Schließen`,f=`Neue Mission`,p=`Wie lautet die Mission?`,m=`Wähle ein Projekt und frag dann. Das Board aktualisiert sich live, während der Agent arbeitet.`,h=`Denkt nach…`,g=`Verbinden…`,_=`App wird abgefragt…`,v={compact:`Kompakt`,comfortable:`Komfortabel`,max:`Maximieren`},y={label:`Modell`},b={hint:`Verlauf durchsuchen — tippen zum Bearbeiten, ↑↓ zum Navigieren`},x={queued:`In Warteschlange`,send:`In Warteschlange senden`,sendHint:`Der Agent arbeitet noch — diese Nachricht wird eingereiht und danach ausgeführt`,placeholder:`Mehr hinzufügen, während der Agent arbeitet — wird eingereiht…`},S={editing:`Bearbeite eingereihte Nachricht {{n}} von {{m}}`,hint:`↑↓ zum Navigieren · Enter speichert · Esc bricht ab`,save:`Eingereihte Nachricht speichern`,cancel:`Bearbeitung abbrechen`,dispatched:`Diese eingereihte Nachricht wurde bereits gesendet — dein Text bleibt als Entwurf erhalten`,saveFailed:`Eingereihte Nachricht konnte nicht gespeichert werden`},C={branch:`Branch`,detached:`(detached)`,dirty:`Nicht committete Änderungen`,switched:`Zu {{branch}} gewechselt`,switchFailed:`Branch-Wechsel fehlgeschlagen`,lockedWhileWorking:`Branch gesperrt, während der Agent arbeitet`,searchPlaceholder:`Branches durchsuchen…`,noMatches:`Keine passenden Branches`,worktrees:`Worktrees`,worktreePathCopied:`Worktree-Pfad kopiert`,copyWorktreePath:`Worktree-Pfad kopieren`},w={label:`Anbieter`,claude:`Claude`,codex:`Codex`,gemini:`Gemini`},T={cycleHint:`⇧⇥ zum Wechseln`,observe:{name:`Beobachten`,desc:`Nur lesen — nichts ändert sich`},edit:{name:`Bearbeiten`,desc:`Erstellen und bearbeiten (umkehrbar)`},operate:{name:`Ausführen`,desc:`KI starten — kostet Geld`},autonomous:{name:`Autonom`,desc:`Löschen und beenden — unumkehrbar`},lockedTitle:`Höhere Stufe erforderlich`,lockedBody:`Diese Aktion erfordert die Stufe „{{level}}“. Du bist auf „{{current}}“.`,raiseHint:`⇧⇥ um die Stufe zu erhöhen, oder frag anders.`},E={title:`Aktion bestätigen`,costAction:`{{action}} · ~{{cost}} · {{tier}}`,approve:`Genehmigen`,cancel:`Abbrechen`,dontAskAgain:`In dieser Sitzung nicht mehr fragen`,approved:`Genehmigt`,cancelled:`Abgebrochen`},D={home:`Start`,searchPlaceholder:`Mit Specrails sprechen…`,recents:`Zuletzt verwendet`,allProjects:`Alle Projekte`,searchAll:`In allen Projekten suchen`,addProject:`Projekt hinzufügen…`,homeHint:`Kein Projekt ausgewählt — über alle Projekte hinweg.`,askCreateOrSearch:`Es ist kein Projekt ausgewählt. Möchtest du ein neues Projekt erstellen oder über alle Projekte hinweg suchen?`},O={remove:`{{label}} entfernen`,addContextAction:`Kontext oder Aktion hinzufügen`,filtering:`Filtere "{{query}}"`,keyboard:`↑↓ Enter Esc`,noMatches:`Keine Treffer`,noMatchesFor:`Keine Treffer für "{{query}}"`,mode:{reference:{title:`Referenz`,hint:`@ Projekte, Specs, Missionen`},trace:{title:`Trace`,hint:`# Jobs, Läufe, IDs`},action:{title:`Aktion`,hint:`/ Befehle für diesen Kontext`}},plus:{reference:`Referenz`,referenceHint:`Projekte, Specs, Missionen`,trace:`Trace`,traceHint:`Jobs, Läufe, IDs`,action:`Aktion`,actionHint:`Erstellen, starten, prüfen`,fileAttachment:`Dateianhang`,fileAttachmentHint:`Docs, Bilder, Logs hinzufügen`,browserCapture:`Browser-Aufnahme`,browserCaptureHint:`Im Workspace-Browser verfügbar`}},k={label:`Mission wechseln`,untitled:`Neue Mission`,new:`Neue Mission`,searchPlaceholder:`Missionen durchsuchen…`,noMatches:`Keine Mission gefunden`,working:`Agent arbeitet`,queuedBadge:`{{n}} in Warteschlange`,delete:`Mission "{{title}}" löschen`,deleteConfirm:`Löschen?`,deleteLiveConfirm:`Der Agent arbeitet — trotzdem löschen?`,confirmDelete:`Löschen bestätigen`,cancelDelete:`Mission behalten`,deleteFailed:`Mission konnte nicht gelöscht werden`},A={title:`Kein KI-Anbieter installiert`,body:`Der Agent benötigt Claude, Codex oder Gemini auf deinem Rechner. Installiere einen und öffne den Agenten erneut, um zu chatten.`,placeholder:`Installiere einen KI-Anbieter, um den Agenten zu nutzen…`},j={title:`Specrails MCP ist aus`,body:`Der Agent braucht den eingebetteten MCP-Server, um die App zu bedienen.`,enable:`Specrails MCP aktivieren`,enabling:`Wird aktiviert…`,enabled:`MCP aktiviert`},M={live:`live`,queued:`in Warteschlange`,running:`läuft`,done:`fertig`,failed:`fehlgeschlagen`},N={generic:`Etwas ist schiefgelaufen. Versuch es erneut.`,busy:`Der Agent ist beschäftigt. Versuch es gleich noch einmal.`},P={kindAgent:`Agenten-Mission`},F=`Neue Mission`,I=`Zur Missionszentrale wechseln`,L=`Zum Board wechseln`,R=`Suchen`,z=`Start`,B=`Lieblingsmissionen`,V=`Ohne Titel`,H={title:`Im Workspace`,terminal:`Terminal`,files:`Dateien`,browser:`Browser`,requiresProject:`Wähle ein Projekt, um dieses Tool zu nutzen`,resizeCode:`Code-Bereich anpassen`,closeFiles:`Code schließen`,browserConfirm:`Zum Agenten hinzufügen`,browserCaptured:`Aufnahme hinzugefügt`,uploadFailed:`Upload fehlgeschlagen`,requiresConversation:`Starte eine Mission, um dieses Werkzeug zu nutzen`,jobs:`Jobs`,closeJobs:`Jobs schließen`,resizeJobs:`Jobs-Bereich anpassen`,noJobs:`Noch keine Jobs — bitte den Agenten, einen zu starten`},U=`Datei anhängen`,W=`„{{title}}“ löschen`,G=`Löschen von „{{title}}“ bestätigen`,K=`„{{title}}“ zu Favoriten hinzufügen`,q=`„{{title}}“ aus Favoriten entfernen`,J=`bestätigen?`,Y=`Dieser Anbieter kann noch keine Bilder lesen — hänge stattdessen Textdateien an`,X={label:`Aufwand`,minimal:`Minimal`,low:`Niedrig`,medium:`Mittel`,high:`Hoch`,xhigh:`Sehr hoch`},Z={rail:`Rail {{index}}`,specCount_one:`{{count}} Spec`,specCount_other:`{{count}} Specs`,base:`Basis-Branch`,openPr:`PR öffnen`,existingPr:`Bestehender PR`,title:{building:`Implementierung in einem isolierten Worktree…`,buildingExistingPr:`Änderungen werden auf einen bestehenden PR angewendet…`,on_review:`Implementierung bereit zur Prüfung`,pr_draft:`Entwurfs-PR erstellt`,pr_draft_degraded:`PR-Auslieferung unvollständig`,pr_ready:`PR bereit zum Merge`,implementation_failed:`Implementierung fehlgeschlagen`,pr_failed:`PR-Erstellung fehlgeschlagen`,merged:`PR gemergt`,discarded:`Verworfen`},buildingHint:`Nach Abschluss wirst du gefragt, ob der PR erstellt werden soll.`,buildingExistingPrHint:`Specrails arbeitet auf dem Branch des bestehenden PRs und pusht die Review-Änderungen zurück in denselben PR.`,createPr:`PR erstellen`,publish:`Veröffentlichen`,checkout:`Checkout`,checkoutTooltip:`Den Hauptordner des Projekts auf {{branch}} auschecken`,checkoutSuccess:`{{branch}} ausgecheckt`,checkoutFailed:`PR-Branch konnte nicht ausgecheckt werden`,retry:`Erneut versuchen`,retryPr:`PR erneut versuchen`,checkMerge:`Merge prüfen`,discard:`Verwerfen`,confirmDiscard:`Verwerfen bestätigen?`,mergedNote:`Gemergt — Specs nach Fertig verschoben`,discardedNote:`Verworfen — Specs zurück ins Backlog`,implementationFailedNote:`Der Implementierungslauf ist fehlgeschlagen, bevor etwas Auslieferbares entstanden ist. Öffne das Run-Protokoll, um den Fehler zu prüfen, und verwirf diese Karte vor einem erneuten Start.`,degraded:{pushed:`Der Branch wurde gepusht, aber die PR konnte nicht erstellt werden — erneut versuchen, um abzuschließen.`,localOnly:`Die Änderungen wurden lokal zusammengeführt, aber nicht gepusht — erneut versuchen, um die PR zu veröffentlichen.`},alreadyResolved:`Bereits anderweitig erledigt`,actionFailed:`Aktion fehlgeschlagen`,notMergedYet:`Noch nicht gemergt`,viewLog:`Ausführungsprotokoll für {{ref}} anzeigen`,runElapsedAria:`{{elapsed}} vergangen`,runCostAria:`{{cost}} ausgegeben`,pinned:{label:`Angeheftet`,marker:`Implementierungskarte — oben angeheftet`,collapse:`Angeheftete Karte minimieren`,expand:`Angeheftete Karte ausklappen`,expandCard:`Diese Karte ausklappen`,collapseCard:`Diese Karte minimieren`,collapsed_one:`Implementierungskarte`,collapsed_other:`{{count}} Implementierungskarten`,state:{building:`Läuft`,on_review:`Review`,pr_draft:`Entwurfs-PR`,pr_ready:`Veröffentlicht`,implementation_failed:`Fehlgeschlagen`,pr_failed:`Fehlgeschlagen`,merged:`Gemerged`,discarded:`Verworfen`}},mergeLocal:`Lokal integrieren`,mergeLocalTooltip:`Führt die gelieferten Branches lokal in {{base}} zusammen (ohne GitHub)`,mergeLocalBlockedDirty:`Integration nicht möglich: dein Arbeitsverzeichnis auf {{base}} hat uncommittete Änderungen. Committe oder stashe sie und versuche es erneut.`,mergeLocalBlockedBranch:`Integration nicht möglich: dein Checkout steht auf {{current}}, nicht auf {{base}}. Wechsle zu {{base}} und versuche es erneut.`,mergedLocally:`Lokal in {{base}} integriert`},Q={heading:`Spec-Entwurf`,drafting:`Entwurf wird aktualisiert…`,acceptanceCriteria:`Akzeptanzkriterien`,untitled:`Spec ohne Titel`,expand:`Vollständige Beschreibung anzeigen`,collapse:`Beschreibung einklappen`},$={openTicket:`Spec #{{id}} öffnen`,openPullRequest:`PR #{{id}} öffnen`,openJob:`Job {{id}} öffnen`,openLoop:`Loop {{id}} öffnen`,ticketNotFound:`Spec #{{id}} nicht gefunden — möglicherweise gelöscht`,pullRequestUrlMissing:`PR #{{id}} wurde ohne URL erwähnt`,pullRequestNotFound:`PR #{{id}} wurde in diesem Projekt nicht gefunden`,jobNotFound:`Job nicht gefunden — möglicherweise gelöscht`,loopNotFound:`Loop nicht gefunden — er wurde möglicherweise gelöscht`,lookupFailed:`Referenz konnte nicht geprüft werden — bitte erneut versuchen`},ee={untitled:`Unbenannte Mission`,menu:`Missionsmenü`,rename:`Umbenennen`,renamePlaceholder:`Name der Mission`,renameHint:`Zum Umbenennen doppelklicken`,renameFailed:`Umbenennen fehlgeschlagen`,addFavorite:`Zu Favoriten hinzufügen`,removeFavorite:`Aus Favoriten entfernen`,copyName:`Missionsname kopieren`,copyId:`Missions-ID kopieren`,copyProject:`Projektname kopieren`,copyProjectPath:`Projektpfad kopieren`,copyFailed:`Kopieren fehlgeschlagen`,copyTranscript:`Transkript kopieren`,copyTranscriptSuccess:`Transkript kopiert`,copyTranscriptFailed:`Transkript konnte nicht kopiert werden`,exportTranscript:`Transkript exportieren (.txt)`,exportTranscriptSuccess:`Transkriptexport gestartet`,exportTranscriptFailed:`Transkript konnte nicht exportiert werden`,delete:`Mission löschen`,deleteConfirm:`Diese Mission löschen? Kann nicht rückgängig gemacht werden.`,deleteFailed:`Mission konnte nicht gelöscht werden`},te=`Was sollen wir als Nächstes bauen?`,ne={title:e,subtitle:t,trigger:n,composerPlaceholder:r,send:i,stop:a,copy:o,attachment:s,maximize:c,restore:l,minimize:u,close:d,newConversation:f,emptyTitle:p,emptyHint:m,thinking:h,connecting:g,consultingCode:_,size:v,model:y,history:b,queue:x,queueEdit:S,git:C,provider:w,tier:T,approval:E,project:D,palette:O,mission:k,noProvider:A,degraded:j,toolCard:M,error:N,chip:P,newAgent:F,switchToAgent:I,switchToKanban:L,search:R,home:z,favoriteMissions:B,untitled:V,workspace:H,attachFile:U,deleteConversation:W,confirmDeleteConversation:G,addFavoriteConversation:K,removeFavoriteConversation:q,confirmShort:J,imagesUnsupported:Y,effort:X,prCard:Z,specDraft:Q,refs:$,header:ee,emptyTitleCodeRain:te};export{K as addFavoriteConversation,E as approval,U as attachFile,s as attachment,P as chip,d as close,r as composerPlaceholder,G as confirmDeleteConversation,J as confirmShort,g as connecting,_ as consultingCode,o as copy,ne as default,j as degraded,W as deleteConversation,X as effort,m as emptyHint,p as emptyTitle,te as emptyTitleCodeRain,N as error,B as favoriteMissions,C as git,ee as header,b as history,z as home,Y as imagesUnsupported,c as maximize,u as minimize,k as mission,y as model,F as newAgent,f as newConversation,A as noProvider,O as palette,Z as prCard,D as project,w as provider,x as queue,S as queueEdit,$ as refs,q as removeFavoriteConversation,l as restore,R as search,i as send,v as size,Q as specDraft,a as stop,t as subtitle,I as switchToAgent,L as switchToKanban,h as thinking,T as tier,e as title,M as toolCard,n as trigger,V as untitled,H as workspace};
1
+ var e=`Missionszentrale`,t=`Specrails per Chat bedienen`,n=`Missionszentrale`,r=`Bitte den Agenten um alles…`,i=`Senden`,a=`Stopp`,o=`Kopieren`,s={openPreview:`{{name}} anzeigen`,openDownload:`{{name}} herunterladen`,previewTitle:`Vorschau von {{name}}`,downloadTitle:`Datei herunterladen?`,downloadPrompt:`Diese Datei kann hier nicht in der Vorschau angezeigt werden. Möchtest du sie herunterladen?`,download:`Herunterladen`,cancelDownload:`Jetzt nicht`,loading:`Datei wird vorbereitet…`,loadFailed:`Anhang konnte nicht geladen werden`,loadError:`Anhang konnte nicht geladen werden: {{error}}`},c=`Maximieren`,l=`Wiederherstellen`,u=`Minimieren`,d=`Schließen`,f=`Neue Mission`,p=`Wie lautet die Mission?`,m=`Wähle ein Projekt und frag dann. Das Board aktualisiert sich live, während der Agent arbeitet.`,h=`Denkt nach…`,g=`Verbinden…`,_=`App wird abgefragt…`,v={compact:`Kompakt`,comfortable:`Komfortabel`,max:`Maximieren`},y={label:`Modell`},b={hint:`Verlauf durchsuchen — tippen zum Bearbeiten, ↑↓ zum Navigieren`},x={queued:`In Warteschlange`,send:`In Warteschlange senden`,sendHint:`Der Agent arbeitet noch — diese Nachricht wird eingereiht und danach ausgeführt`,placeholder:`Mehr hinzufügen, während der Agent arbeitet — wird eingereiht…`},S={editing:`Bearbeite eingereihte Nachricht {{n}} von {{m}}`,hint:`↑↓ zum Navigieren · Enter speichert · Esc bricht ab`,save:`Eingereihte Nachricht speichern`,cancel:`Bearbeitung abbrechen`,dispatched:`Diese eingereihte Nachricht wurde bereits gesendet — dein Text bleibt als Entwurf erhalten`,saveFailed:`Eingereihte Nachricht konnte nicht gespeichert werden`},C={branch:`Branch`,detached:`(detached)`,dirty:`Nicht committete Änderungen`,switched:`Zu {{branch}} gewechselt`,switchFailed:`Branch-Wechsel fehlgeschlagen`,lockedWhileWorking:`Branch gesperrt, während der Agent arbeitet`,searchPlaceholder:`Branches durchsuchen…`,noMatches:`Keine passenden Branches`,worktrees:`Worktrees`,worktreePathCopied:`Worktree-Pfad kopiert`,copyWorktreePath:`Worktree-Pfad kopieren`},w={label:`Anbieter`,claude:`Claude`,codex:`Codex`,gemini:`Gemini`},T={cycleHint:`⇧⇥ zum Wechseln`,observe:{name:`Beobachten`,desc:`Nur lesen — nichts ändert sich`},edit:{name:`Bearbeiten`,desc:`Erstellen und bearbeiten (umkehrbar)`},operate:{name:`Ausführen`,desc:`KI starten — kostet Geld`},autonomous:{name:`Autonom`,desc:`Löschen und beenden — unumkehrbar`},lockedTitle:`Höhere Stufe erforderlich`,lockedBody:`Diese Aktion erfordert die Stufe „{{level}}“. Du bist auf „{{current}}“.`,raiseHint:`⇧⇥ um die Stufe zu erhöhen, oder frag anders.`},E={title:`Aktion bestätigen`,costAction:`{{action}} · ~{{cost}} · {{tier}}`,approve:`Genehmigen`,cancel:`Abbrechen`,dontAskAgain:`In dieser Sitzung nicht mehr fragen`,approved:`Genehmigt`,cancelled:`Abgebrochen`},D={home:`Start`,searchPlaceholder:`Mit Specrails sprechen…`,recents:`Zuletzt verwendet`,allProjects:`Alle Projekte`,searchAll:`In allen Projekten suchen`,addProject:`Projekt hinzufügen…`,homeHint:`Kein Projekt ausgewählt — über alle Projekte hinweg.`,askCreateOrSearch:`Es ist kein Projekt ausgewählt. Möchtest du ein neues Projekt erstellen oder über alle Projekte hinweg suchen?`},O={remove:`{{label}} entfernen`,addContextAction:`Kontext oder Aktion hinzufügen`,filtering:`Filtere "{{query}}"`,keyboard:`↑↓ Enter Esc`,noMatches:`Keine Treffer`,noMatchesFor:`Keine Treffer für "{{query}}"`,mode:{reference:{title:`Referenz`,hint:`@ Projekte, Specs, Missionen`},trace:{title:`Trace`,hint:`# Jobs, Läufe, IDs`},action:{title:`Aktion`,hint:`/ Befehle für diesen Kontext`}},plus:{reference:`Referenz`,referenceHint:`Projekte, Specs, Missionen`,trace:`Trace`,traceHint:`Jobs, Läufe, IDs`,action:`Aktion`,actionHint:`Erstellen, starten, prüfen`,fileAttachment:`Dateianhang`,fileAttachmentHint:`Docs, Bilder, Logs hinzufügen`,browserCapture:`Browser-Aufnahme`,browserCaptureHint:`Im Workspace-Browser verfügbar`}},k={label:`Mission wechseln`,untitled:`Neue Mission`,new:`Neue Mission`,searchPlaceholder:`Missionen durchsuchen…`,noMatches:`Keine Mission gefunden`,working:`Agent arbeitet`,queuedBadge:`{{n}} in Warteschlange`,delete:`Mission "{{title}}" löschen`,deleteConfirm:`Löschen?`,deleteLiveConfirm:`Der Agent arbeitet — trotzdem löschen?`,confirmDelete:`Löschen bestätigen`,cancelDelete:`Mission behalten`,deleteFailed:`Mission konnte nicht gelöscht werden`},A={title:`Kein KI-Anbieter installiert`,body:`Der Agent benötigt Claude, Codex oder Gemini auf deinem Rechner. Installiere einen und öffne den Agenten erneut, um zu chatten.`,placeholder:`Installiere einen KI-Anbieter, um den Agenten zu nutzen…`},j={title:`Specrails MCP ist aus`,body:`Der Agent braucht den eingebetteten MCP-Server, um die App zu bedienen.`,enable:`Specrails MCP aktivieren`,enabling:`Wird aktiviert…`,enabled:`MCP aktiviert`},M={live:`live`,queued:`in Warteschlange`,running:`läuft`,done:`fertig`,failed:`fehlgeschlagen`},N={generic:`Etwas ist schiefgelaufen. Versuch es erneut.`,busy:`Der Agent ist beschäftigt. Versuch es gleich noch einmal.`},P={kindAgent:`Agenten-Mission`},F=`Neue Mission`,I=`Zur Missionszentrale wechseln`,L=`Zum Board wechseln`,R=`Suchen`,z=`Start`,B=`Lieblingsmissionen`,V=`Ohne Titel`,H={title:`Im Workspace`,terminal:`Terminal`,files:`Dateien`,browser:`Browser`,requiresProject:`Wähle ein Projekt, um dieses Tool zu nutzen`,resizeCode:`Code-Bereich anpassen`,closeFiles:`Code schließen`,browserConfirm:`Zum Agenten hinzufügen`,browserCaptured:`Aufnahme hinzugefügt`,uploadFailed:`Upload fehlgeschlagen`,requiresConversation:`Starte eine Mission, um dieses Werkzeug zu nutzen`,jobs:`Jobs`,closeJobs:`Jobs schließen`,resizeJobs:`Jobs-Bereich anpassen`,noJobs:`Noch keine Jobs — bitte den Agenten, einen zu starten`},U=`Datei anhängen`,W=`„{{title}}“ löschen`,G=`Löschen von „{{title}}“ bestätigen`,K=`„{{title}}“ zu Favoriten hinzufügen`,q=`„{{title}}“ aus Favoriten entfernen`,J=`bestätigen?`,Y=`Dieser Anbieter kann noch keine Bilder lesen — hänge stattdessen Textdateien an`,X={label:`Aufwand`,minimal:`Minimal`,low:`Niedrig`,medium:`Mittel`,high:`Hoch`,xhigh:`Sehr hoch`},Z={rail:`Rail {{index}}`,specCount_one:`{{count}} Spec`,specCount_other:`{{count}} Specs`,base:`Basis-Branch`,openPr:`PR öffnen`,existingPr:`Bestehender PR`,title:{building:`Implementierung in einem isolierten Worktree…`,buildingExistingPr:`Änderungen werden auf einen bestehenden PR angewendet…`,paused:`Benötigt eine menschliche Entscheidung`,on_review:`Implementierung bereit zur Prüfung`,pr_draft:`Entwurfs-PR erstellt`,pr_draft_degraded:`PR-Auslieferung unvollständig`,pr_ready:`PR bereit zum Merge`,implementation_failed:`Implementierung fehlgeschlagen`,pr_failed:`PR-Erstellung fehlgeschlagen`,merged:`PR gemergt`,discarded:`Verworfen`},buildingHint:`Nach Abschluss wirst du gefragt, ob der PR erstellt werden soll.`,buildingExistingPrHint:`Specrails arbeitet auf dem Branch des bestehenden PRs und pusht die Review-Änderungen zurück in denselben PR.`,paused:`Implementierung pausiert`,pausedForRun:`Pausiert bei {{ref}}`,resume:`Fortsetzen`,stopExecution:`Ausführung stoppen`,stopExecutionSent:`Stoppsignal gesendet`,stopExecutionFailed:`Ausführung konnte nicht gestoppt werden`,createPr:`PR erstellen`,publish:`Veröffentlichen`,checkout:`Checkout`,checkoutTooltip:`Den Hauptordner des Projekts auf {{branch}} auschecken`,checkoutSuccess:`{{branch}} ausgecheckt`,checkoutFailed:`PR-Branch konnte nicht ausgecheckt werden`,retry:`Erneut versuchen`,retryPr:`PR erneut versuchen`,checkMerge:`Merge prüfen`,discard:`Verwerfen`,confirmDiscard:`Verwerfen bestätigen?`,mergedNote:`Gemergt — Specs nach Fertig verschoben`,discardedNote:`Verworfen — Specs zurück ins Backlog`,implementationFailedNote:`Der Implementierungslauf ist fehlgeschlagen, bevor etwas Auslieferbares entstanden ist. Öffne das Run-Protokoll, um den Fehler zu prüfen, und verwirf diese Karte vor einem erneuten Start.`,degraded:{pushed:`Der Branch wurde gepusht, aber die PR konnte nicht erstellt werden — erneut versuchen, um abzuschließen.`,localOnly:`Die Änderungen wurden lokal zusammengeführt, aber nicht gepusht — erneut versuchen, um die PR zu veröffentlichen.`},alreadyResolved:`Bereits anderweitig erledigt`,actionFailed:`Aktion fehlgeschlagen`,notMergedYet:`Noch nicht gemergt`,viewLog:`Ausführungsprotokoll für {{ref}} anzeigen`,runElapsedAria:`{{elapsed}} vergangen`,runCostAria:`{{cost}} ausgegeben`,pinned:{label:`Angeheftet`,marker:`Implementierungskarte — oben angeheftet`,collapse:`Angeheftete Karte minimieren`,expand:`Angeheftete Karte ausklappen`,expandCard:`Diese Karte ausklappen`,collapseCard:`Diese Karte minimieren`,collapsed_one:`Implementierungskarte`,collapsed_other:`{{count}} Implementierungskarten`,state:{building:`Läuft`,on_review:`Review`,pr_draft:`Entwurfs-PR`,pr_ready:`Veröffentlicht`,implementation_failed:`Fehlgeschlagen`,pr_failed:`Fehlgeschlagen`,merged:`Gemerged`,discarded:`Verworfen`}},mergeLocal:`Lokal integrieren`,mergeLocalTooltip:`Führt die gelieferten Branches lokal in {{base}} zusammen (ohne GitHub)`,mergeLocalBlockedDirty:`Integration nicht möglich: dein Arbeitsverzeichnis auf {{base}} hat uncommittete Änderungen. Committe oder stashe sie und versuche es erneut.`,mergeLocalBlockedBranch:`Integration nicht möglich: dein Checkout steht auf {{current}}, nicht auf {{base}}. Wechsle zu {{base}} und versuche es erneut.`,mergedLocally:`Lokal in {{base}} integriert`},Q={heading:`Spec-Entwurf`,drafting:`Entwurf wird aktualisiert…`,acceptanceCriteria:`Akzeptanzkriterien`,untitled:`Spec ohne Titel`,expand:`Vollständige Beschreibung anzeigen`,collapse:`Beschreibung einklappen`},$={openTicket:`Spec #{{id}} öffnen`,openPullRequest:`PR #{{id}} öffnen`,openJob:`Job {{id}} öffnen`,openLoop:`Loop {{id}} öffnen`,ticketNotFound:`Spec #{{id}} nicht gefunden — möglicherweise gelöscht`,pullRequestUrlMissing:`PR #{{id}} wurde ohne URL erwähnt`,pullRequestNotFound:`PR #{{id}} wurde in diesem Projekt nicht gefunden`,jobNotFound:`Job nicht gefunden — möglicherweise gelöscht`,loopNotFound:`Loop nicht gefunden — er wurde möglicherweise gelöscht`,lookupFailed:`Referenz konnte nicht geprüft werden — bitte erneut versuchen`},ee={untitled:`Unbenannte Mission`,menu:`Missionsmenü`,rename:`Umbenennen`,renamePlaceholder:`Name der Mission`,renameHint:`Zum Umbenennen doppelklicken`,renameFailed:`Umbenennen fehlgeschlagen`,addFavorite:`Zu Favoriten hinzufügen`,removeFavorite:`Aus Favoriten entfernen`,copyName:`Missionsname kopieren`,copyId:`Missions-ID kopieren`,copyProject:`Projektname kopieren`,copyProjectPath:`Projektpfad kopieren`,copyFailed:`Kopieren fehlgeschlagen`,copyTranscript:`Transkript kopieren`,copyTranscriptSuccess:`Transkript kopiert`,copyTranscriptFailed:`Transkript konnte nicht kopiert werden`,exportTranscript:`Transkript exportieren (.txt)`,exportTranscriptSuccess:`Transkriptexport gestartet`,exportTranscriptFailed:`Transkript konnte nicht exportiert werden`,delete:`Mission löschen`,deleteConfirm:`Diese Mission löschen? Kann nicht rückgängig gemacht werden.`,deleteFailed:`Mission konnte nicht gelöscht werden`},te=`Was sollen wir als Nächstes bauen?`,ne={title:e,subtitle:t,trigger:n,composerPlaceholder:r,send:i,stop:a,copy:o,attachment:s,maximize:c,restore:l,minimize:u,close:d,newConversation:f,emptyTitle:p,emptyHint:m,thinking:h,connecting:g,consultingCode:_,size:v,model:y,history:b,queue:x,queueEdit:S,git:C,provider:w,tier:T,approval:E,project:D,palette:O,mission:k,noProvider:A,degraded:j,toolCard:M,error:N,chip:P,newAgent:F,switchToAgent:I,switchToKanban:L,search:R,home:z,favoriteMissions:B,untitled:V,workspace:H,attachFile:U,deleteConversation:W,confirmDeleteConversation:G,addFavoriteConversation:K,removeFavoriteConversation:q,confirmShort:J,imagesUnsupported:Y,effort:X,prCard:Z,specDraft:Q,refs:$,header:ee,emptyTitleCodeRain:te};export{K as addFavoriteConversation,E as approval,U as attachFile,s as attachment,P as chip,d as close,r as composerPlaceholder,G as confirmDeleteConversation,J as confirmShort,g as connecting,_ as consultingCode,o as copy,ne as default,j as degraded,W as deleteConversation,X as effort,m as emptyHint,p as emptyTitle,te as emptyTitleCodeRain,N as error,B as favoriteMissions,C as git,ee as header,b as history,z as home,Y as imagesUnsupported,c as maximize,u as minimize,k as mission,y as model,F as newAgent,f as newConversation,A as noProvider,O as palette,Z as prCard,D as project,w as provider,x as queue,S as queueEdit,$ as refs,q as removeFavoriteConversation,l as restore,R as search,i as send,v as size,Q as specDraft,a as stop,t as subtitle,I as switchToAgent,L as switchToKanban,h as thinking,T as tier,e as title,M as toolCard,n as trigger,V as untitled,H as workspace};
@@ -1 +1 @@
1
- var e=`Control de misiones`,t=`Maneja Specrails conversando`,n=`Control de misiones`,r=`Pídele al agente lo que necesites…`,i=`Enviar`,a=`Detener`,o=`Copiar`,s={openPreview:`Previsualizar {{name}}`,openDownload:`Descargar {{name}}`,previewTitle:`Vista previa de {{name}}`,downloadTitle:`¿Descargar archivo?`,downloadPrompt:`Este archivo no se puede previsualizar aquí. ¿Quieres descargarlo?`,download:`Descargar`,cancelDownload:`Ahora no`,loading:`Preparando archivo…`,loadFailed:`No se pudo cargar el adjunto`,loadError:`No se pudo cargar el adjunto: {{error}}`},c=`Maximizar`,l=`Restaurar`,u=`Minimizar`,d=`Cerrar`,f=`Nueva misión`,p=`¿Cuál es la misión?`,m=`Elige un proyecto y luego pregunta. El tablero se actualiza en vivo mientras el agente trabaja.`,h=`Pensando…`,g=`Conectando…`,_=`Consultando la app…`,v={compact:`Compacto`,comfortable:`Cómodo`,max:`Maximizar`},y={label:`Modelo`},b={hint:`Explorando historial de prompts — escribe para editar, ↑↓ para navegar`},x={queued:`En cola`,send:`Enviar a la cola`,sendHint:`El agente sigue trabajando — este mensaje se pondrá en cola y se ejecutará después`,placeholder:`Añade más mientras el agente trabaja — se pondrá en cola…`},S={editing:`Editando mensaje en cola {{n}} de {{m}}`,hint:`↑↓ para navegar · Enter guarda · Esc cancela`,save:`Guardar mensaje en cola`,cancel:`Cancelar edición`,dispatched:`Ese mensaje en cola ya se envió — tu texto se conserva como borrador`,saveFailed:`No se pudo guardar el mensaje en cola`},C={branch:`Rama`,detached:`(detached)`,dirty:`Cambios sin commitear`,switched:`Cambiado a {{branch}}`,switchFailed:`No se pudo cambiar de rama`,lockedWhileWorking:`Rama bloqueada mientras el agente trabaja`,searchPlaceholder:`Buscar ramas…`,noMatches:`Ninguna rama coincide`,worktrees:`Worktrees`,worktreePathCopied:`Ruta del worktree copiada`,copyWorktreePath:`Copiar ruta del worktree`},w={label:`Proveedor`,claude:`Claude`,codex:`Codex`,gemini:`Gemini`},T={cycleHint:`⇧⇥ para cambiar`,observe:{name:`Observa`,desc:`Solo lectura — nada cambia`},edit:{name:`Edita`,desc:`Crear y editar (reversible)`},operate:{name:`Opera`,desc:`Lanzar IA — tiene coste`},autonomous:{name:`Autónomo`,desc:`Borrar y detener — irreversible`},lockedTitle:`Necesita un nivel superior`,lockedBody:`Esa acción necesita el nivel «{{level}}». Estás en «{{current}}».`,raiseHint:`⇧⇥ para subir el nivel, o pídelo de otra forma.`},E={title:`Confirmar acción`,costAction:`{{action}} · ~{{cost}} · {{tier}}`,approve:`Aprobar`,cancel:`Cancelar`,dontAskAgain:`No volver a preguntar en esta sesión`,approved:`Aprobado`,cancelled:`Cancelado`},D={home:`Inicio`,searchPlaceholder:`Habla con Specrails…`,recents:`Recientes`,allProjects:`Todos los proyectos`,searchAll:`Buscar en todos los proyectos`,addProject:`Añadir proyecto…`,homeHint:`Ningún proyecto seleccionado — operando en todos los proyectos.`,askCreateOrSearch:`No hay ningún proyecto seleccionado. ¿Quieres crear un proyecto nuevo o buscar en todos los proyectos?`},O={remove:`Quitar {{label}}`,addContextAction:`Añadir contexto o acción`,filtering:`Filtrando "{{query}}"`,keyboard:`↑↓ Enter Esc`,noMatches:`Sin resultados`,noMatchesFor:`Sin resultados para "{{query}}"`,mode:{reference:{title:`Referencia`,hint:`@ proyectos, especificaciones, misiones`},trace:{title:`Traza`,hint:`# jobs, ejecuciones, IDs`},action:{title:`Acción`,hint:`/ comandos para este contexto`}},plus:{reference:`Referencia`,referenceHint:`Proyectos, especificaciones, misiones`,trace:`Traza`,traceHint:`Jobs, ejecuciones, IDs`,action:`Acción`,actionHint:`Crear, lanzar, inspeccionar`,fileAttachment:`Archivo adjunto`,fileAttachmentHint:`Añadir docs, imágenes, logs`,browserCapture:`Captura del navegador`,browserCaptureHint:`Disponible desde el navegador del workspace`}},k={label:`Cambiar de misión`,untitled:`Nueva misión`,new:`Nueva misión`,searchPlaceholder:`Buscar misiones…`,noMatches:`Ninguna misión coincide`,working:`El agente está trabajando`,queuedBadge:`{{n}} en cola`,delete:`Eliminar misión "{{title}}"`,deleteConfirm:`¿Eliminar?`,deleteLiveConfirm:`El agente está trabajando — ¿eliminar igualmente?`,confirmDelete:`Confirmar eliminación`,cancelDelete:`Conservar misión`,deleteFailed:`No se pudo eliminar la misión`},A={title:`No hay ningún proveedor de IA instalado`,body:`El agente necesita Claude, Codex o Gemini en tu máquina. Instala uno y vuelve a abrir el agente para empezar a chatear.`,placeholder:`Instala un proveedor de IA para usar el agente…`},j={title:`El MCP de Specrails está apagado`,body:`El agente necesita el servidor MCP integrado para manejar la app.`,enable:`Activar el MCP de Specrails`,enabling:`Activando…`,enabled:`MCP activado`},M={live:`en vivo`,queued:`en cola`,running:`en curso`,done:`hecho`,failed:`fallido`},N={generic:`Algo salió mal. Inténtalo de nuevo.`,busy:`El agente está ocupado. Inténtalo de nuevo en un momento.`},P={kindAgent:`Misión del agente`},F=`Nueva misión`,I=`Cambiar a Control de misiones`,L=`Cambiar al tablero`,R=`Buscar`,z=`Inicio`,B=`Misiones favoritas`,V=`Sin título`,H={title:`En el workspace`,terminal:`Terminal`,files:`Archivos`,browser:`Navegador`,requiresProject:`Selecciona un proyecto para usar esta herramienta`,resizeCode:`Redimensionar panel de código`,closeFiles:`Cerrar código`,browserConfirm:`Añadir al agente`,browserCaptured:`Captura añadida`,uploadFailed:`Error al subir`,requiresConversation:`Inicia una misión para usar esta herramienta`,jobs:`Jobs`,closeJobs:`Cerrar jobs`,resizeJobs:`Redimensionar panel de jobs`,noJobs:`Aún no hay jobs — pide al agente que lance uno`},U=`Adjuntar archivo`,W=`Borrar «{{title}}»`,G=`Confirmar borrado de «{{title}}»`,K=`Añadir «{{title}}» a favoritas`,q=`Quitar «{{title}}» de favoritas`,J=`¿confirmar?`,Y=`Este proveedor aún no lee imágenes — adjunta archivos de texto`,X={label:`Esfuerzo`,minimal:`Mínimo`,low:`Bajo`,medium:`Medio`,high:`Alto`,xhigh:`Extra alto`},Z={rail:`Rail {{index}}`,specCount_one:`{{count}} spec`,specCount_other:`{{count}} specs`,base:`Rama base`,openPr:`Abrir PR`,existingPr:`PR existente`,title:{building:`Implementando en un worktree aislado…`,buildingExistingPr:`Aplicando cambios sobre una PR existente…`,on_review:`Implementación lista para revisar`,pr_draft:`PR en borrador creada`,pr_draft_degraded:`Entrega de la PR incompleta`,pr_ready:`PR lista para el merge`,implementation_failed:`La implementación ha fallado`,pr_failed:`No se pudo crear la PR`,merged:`Merge de la PR completado`,discarded:`Descartada`},buildingHint:`Cuando termine, se te preguntará si crear la PR.`,buildingExistingPrHint:`Specrails está trabajando sobre la rama de la PR existente y subirá los cambios de revisión a esa misma PR.`,createPr:`Crear PR`,publish:`Publicar`,checkout:`Checkout`,checkoutTooltip:`Cambia la carpeta principal del proyecto a {{branch}}`,checkoutSuccess:`Checkout en {{branch}}`,checkoutFailed:`No se pudo hacer checkout de la rama de la PR`,retry:`Reintentar`,retryPr:`Reintentar PR`,checkMerge:`Comprobar merge`,discard:`Descartar`,confirmDiscard:`¿Confirmar descarte?`,mergedNote:`Merge completado — las specs han pasado a Hecho`,discardedNote:`Descartada — las specs han vuelto al backlog`,implementationFailedNote:`El run de implementación falló antes de generar algo entregable. Abre el log del run para revisar el fallo y descarta esta card antes de relanzar.`,degraded:{pushed:`La rama se subió pero no se pudo crear la PR — reintenta para terminar.`,localOnly:`Los cambios se ensamblaron en local pero no se subieron — reintenta para publicar la PR.`},alreadyResolved:`Ya resuelta en otro sitio`,actionFailed:`La acción falló`,notMergedYet:`Aún sin merge`,viewLog:`Ver el registro de ejecución de {{ref}}`,runElapsedAria:`{{elapsed}} transcurridos`,runCostAria:`{{cost}} gastados`,pinned:{label:`Fijada`,marker:`Tarjeta de implementación — fijada arriba`,collapse:`Minimizar tarjeta fijada`,expand:`Expandir tarjeta fijada`,expandCard:`Expandir esta tarjeta`,collapseCard:`Minimizar esta tarjeta`,collapsed_one:`Tarjeta de implementación`,collapsed_other:`{{count}} tarjetas de implementación`,state:{building:`En curso`,on_review:`Revisión`,pr_draft:`PR borrador`,pr_ready:`Publicada`,implementation_failed:`Fallida`,pr_failed:`Fallida`,merged:`Fusionada`,discarded:`Descartada`}},mergeLocal:`Integrar en local`,mergeLocalTooltip:`Fusiona las ramas entregadas en {{base}} en tu checkout local (sin necesidad de GitHub)`,mergeLocalBlockedDirty:`No se puede integrar: tu árbol de trabajo en {{base}} tiene cambios sin commitear. Haz commit o stash y reintenta.`,mergeLocalBlockedBranch:`No se puede integrar: tu checkout está en {{current}}, no en {{base}}. Cambia a {{base}} y reintenta.`,mergedLocally:`Integrado en {{base}} en local`},Q={heading:`Borrador de spec`,drafting:`Actualizando borrador…`,acceptanceCriteria:`Criterios de aceptación`,untitled:`Spec sin título`,expand:`Ver descripción completa`,collapse:`Contraer descripción`},$={openTicket:`Abrir spec #{{id}}`,openPullRequest:`Abrir PR #{{id}}`,openJob:`Abrir job {{id}}`,openLoop:`Abrir loop {{id}}`,ticketNotFound:`Spec #{{id}} no encontrada — puede haber sido eliminada`,pullRequestUrlMissing:`La PR #{{id}} se mencionó sin URL`,pullRequestNotFound:`No se pudo encontrar la PR #{{id}} en este proyecto`,jobNotFound:`Job no encontrado — puede haber sido eliminado`,loopNotFound:`Loop no encontrado — puede haber sido eliminado`,lookupFailed:`No se pudo verificar la referencia — inténtalo de nuevo`},ee={untitled:`Misión sin título`,menu:`Menú de la misión`,rename:`Renombrar`,renamePlaceholder:`Nombre de la misión`,renameHint:`Doble clic para renombrar`,renameFailed:`No se pudo renombrar`,addFavorite:`Añadir a favoritas`,removeFavorite:`Quitar de favoritas`,copyName:`Copiar nombre de la misión`,copyId:`Copiar ID de la misión`,copyProject:`Copiar nombre del proyecto`,copyProjectPath:`Copiar ruta del proyecto`,copyFailed:`No se pudo copiar`,copyTranscript:`Copiar transcripción`,copyTranscriptSuccess:`Transcripción copiada`,copyTranscriptFailed:`No se pudo copiar la transcripción`,exportTranscript:`Exportar transcripción (.txt)`,exportTranscriptSuccess:`Exportación de transcripción iniciada`,exportTranscriptFailed:`No se pudo exportar la transcripción`,delete:`Borrar misión`,deleteConfirm:`¿Borrar esta misión? No se puede deshacer.`,deleteFailed:`No se pudo borrar la misión`},te=`¿Qué construimos ahora?`,ne={title:e,subtitle:t,trigger:n,composerPlaceholder:r,send:i,stop:a,copy:o,attachment:s,maximize:c,restore:l,minimize:u,close:d,newConversation:f,emptyTitle:p,emptyHint:m,thinking:h,connecting:g,consultingCode:_,size:v,model:y,history:b,queue:x,queueEdit:S,git:C,provider:w,tier:T,approval:E,project:D,palette:O,mission:k,noProvider:A,degraded:j,toolCard:M,error:N,chip:P,newAgent:F,switchToAgent:I,switchToKanban:L,search:R,home:z,favoriteMissions:B,untitled:V,workspace:H,attachFile:U,deleteConversation:W,confirmDeleteConversation:G,addFavoriteConversation:K,removeFavoriteConversation:q,confirmShort:J,imagesUnsupported:Y,effort:X,prCard:Z,specDraft:Q,refs:$,header:ee,emptyTitleCodeRain:te};export{K as addFavoriteConversation,E as approval,U as attachFile,s as attachment,P as chip,d as close,r as composerPlaceholder,G as confirmDeleteConversation,J as confirmShort,g as connecting,_ as consultingCode,o as copy,ne as default,j as degraded,W as deleteConversation,X as effort,m as emptyHint,p as emptyTitle,te as emptyTitleCodeRain,N as error,B as favoriteMissions,C as git,ee as header,b as history,z as home,Y as imagesUnsupported,c as maximize,u as minimize,k as mission,y as model,F as newAgent,f as newConversation,A as noProvider,O as palette,Z as prCard,D as project,w as provider,x as queue,S as queueEdit,$ as refs,q as removeFavoriteConversation,l as restore,R as search,i as send,v as size,Q as specDraft,a as stop,t as subtitle,I as switchToAgent,L as switchToKanban,h as thinking,T as tier,e as title,M as toolCard,n as trigger,V as untitled,H as workspace};
1
+ var e=`Control de misiones`,t=`Maneja Specrails conversando`,n=`Control de misiones`,r=`Pídele al agente lo que necesites…`,i=`Enviar`,a=`Detener`,o=`Copiar`,s={openPreview:`Previsualizar {{name}}`,openDownload:`Descargar {{name}}`,previewTitle:`Vista previa de {{name}}`,downloadTitle:`¿Descargar archivo?`,downloadPrompt:`Este archivo no se puede previsualizar aquí. ¿Quieres descargarlo?`,download:`Descargar`,cancelDownload:`Ahora no`,loading:`Preparando archivo…`,loadFailed:`No se pudo cargar el adjunto`,loadError:`No se pudo cargar el adjunto: {{error}}`},c=`Maximizar`,l=`Restaurar`,u=`Minimizar`,d=`Cerrar`,f=`Nueva misión`,p=`¿Cuál es la misión?`,m=`Elige un proyecto y luego pregunta. El tablero se actualiza en vivo mientras el agente trabaja.`,h=`Pensando…`,g=`Conectando…`,_=`Consultando la app…`,v={compact:`Compacto`,comfortable:`Cómodo`,max:`Maximizar`},y={label:`Modelo`},b={hint:`Explorando historial de prompts — escribe para editar, ↑↓ para navegar`},x={queued:`En cola`,send:`Enviar a la cola`,sendHint:`El agente sigue trabajando — este mensaje se pondrá en cola y se ejecutará después`,placeholder:`Añade más mientras el agente trabaja — se pondrá en cola…`},S={editing:`Editando mensaje en cola {{n}} de {{m}}`,hint:`↑↓ para navegar · Enter guarda · Esc cancela`,save:`Guardar mensaje en cola`,cancel:`Cancelar edición`,dispatched:`Ese mensaje en cola ya se envió — tu texto se conserva como borrador`,saveFailed:`No se pudo guardar el mensaje en cola`},C={branch:`Rama`,detached:`(detached)`,dirty:`Cambios sin commitear`,switched:`Cambiado a {{branch}}`,switchFailed:`No se pudo cambiar de rama`,lockedWhileWorking:`Rama bloqueada mientras el agente trabaja`,searchPlaceholder:`Buscar ramas…`,noMatches:`Ninguna rama coincide`,worktrees:`Worktrees`,worktreePathCopied:`Ruta del worktree copiada`,copyWorktreePath:`Copiar ruta del worktree`},w={label:`Proveedor`,claude:`Claude`,codex:`Codex`,gemini:`Gemini`},T={cycleHint:`⇧⇥ para cambiar`,observe:{name:`Observa`,desc:`Solo lectura — nada cambia`},edit:{name:`Edita`,desc:`Crear y editar (reversible)`},operate:{name:`Opera`,desc:`Lanzar IA — tiene coste`},autonomous:{name:`Autónomo`,desc:`Borrar y detener — irreversible`},lockedTitle:`Necesita un nivel superior`,lockedBody:`Esa acción necesita el nivel «{{level}}». Estás en «{{current}}».`,raiseHint:`⇧⇥ para subir el nivel, o pídelo de otra forma.`},E={title:`Confirmar acción`,costAction:`{{action}} · ~{{cost}} · {{tier}}`,approve:`Aprobar`,cancel:`Cancelar`,dontAskAgain:`No volver a preguntar en esta sesión`,approved:`Aprobado`,cancelled:`Cancelado`},D={home:`Inicio`,searchPlaceholder:`Habla con Specrails…`,recents:`Recientes`,allProjects:`Todos los proyectos`,searchAll:`Buscar en todos los proyectos`,addProject:`Añadir proyecto…`,homeHint:`Ningún proyecto seleccionado — operando en todos los proyectos.`,askCreateOrSearch:`No hay ningún proyecto seleccionado. ¿Quieres crear un proyecto nuevo o buscar en todos los proyectos?`},O={remove:`Quitar {{label}}`,addContextAction:`Añadir contexto o acción`,filtering:`Filtrando "{{query}}"`,keyboard:`↑↓ Enter Esc`,noMatches:`Sin resultados`,noMatchesFor:`Sin resultados para "{{query}}"`,mode:{reference:{title:`Referencia`,hint:`@ proyectos, especificaciones, misiones`},trace:{title:`Traza`,hint:`# jobs, ejecuciones, IDs`},action:{title:`Acción`,hint:`/ comandos para este contexto`}},plus:{reference:`Referencia`,referenceHint:`Proyectos, especificaciones, misiones`,trace:`Traza`,traceHint:`Jobs, ejecuciones, IDs`,action:`Acción`,actionHint:`Crear, lanzar, inspeccionar`,fileAttachment:`Archivo adjunto`,fileAttachmentHint:`Añadir docs, imágenes, logs`,browserCapture:`Captura del navegador`,browserCaptureHint:`Disponible desde el navegador del workspace`}},k={label:`Cambiar de misión`,untitled:`Nueva misión`,new:`Nueva misión`,searchPlaceholder:`Buscar misiones…`,noMatches:`Ninguna misión coincide`,working:`El agente está trabajando`,queuedBadge:`{{n}} en cola`,delete:`Eliminar misión "{{title}}"`,deleteConfirm:`¿Eliminar?`,deleteLiveConfirm:`El agente está trabajando — ¿eliminar igualmente?`,confirmDelete:`Confirmar eliminación`,cancelDelete:`Conservar misión`,deleteFailed:`No se pudo eliminar la misión`},A={title:`No hay ningún proveedor de IA instalado`,body:`El agente necesita Claude, Codex o Gemini en tu máquina. Instala uno y vuelve a abrir el agente para empezar a chatear.`,placeholder:`Instala un proveedor de IA para usar el agente…`},j={title:`El MCP de Specrails está apagado`,body:`El agente necesita el servidor MCP integrado para manejar la app.`,enable:`Activar el MCP de Specrails`,enabling:`Activando…`,enabled:`MCP activado`},M={live:`en vivo`,queued:`en cola`,running:`en curso`,done:`hecho`,failed:`fallido`},N={generic:`Algo salió mal. Inténtalo de nuevo.`,busy:`El agente está ocupado. Inténtalo de nuevo en un momento.`},P={kindAgent:`Misión del agente`},F=`Nueva misión`,I=`Cambiar a Control de misiones`,L=`Cambiar al tablero`,R=`Buscar`,z=`Inicio`,B=`Misiones favoritas`,V=`Sin título`,H={title:`En el workspace`,terminal:`Terminal`,files:`Archivos`,browser:`Navegador`,requiresProject:`Selecciona un proyecto para usar esta herramienta`,resizeCode:`Redimensionar panel de código`,closeFiles:`Cerrar código`,browserConfirm:`Añadir al agente`,browserCaptured:`Captura añadida`,uploadFailed:`Error al subir`,requiresConversation:`Inicia una misión para usar esta herramienta`,jobs:`Jobs`,closeJobs:`Cerrar jobs`,resizeJobs:`Redimensionar panel de jobs`,noJobs:`Aún no hay jobs — pide al agente que lance uno`},U=`Adjuntar archivo`,W=`Borrar «{{title}}»`,G=`Confirmar borrado de «{{title}}»`,K=`Añadir «{{title}}» a favoritas`,q=`Quitar «{{title}}» de favoritas`,J=`¿confirmar?`,Y=`Este proveedor aún no lee imágenes — adjunta archivos de texto`,X={label:`Esfuerzo`,minimal:`Mínimo`,low:`Bajo`,medium:`Medio`,high:`Alto`,xhigh:`Extra alto`},Z={rail:`Rail {{index}}`,specCount_one:`{{count}} spec`,specCount_other:`{{count}} specs`,base:`Rama base`,openPr:`Abrir PR`,existingPr:`PR existente`,title:{building:`Implementando en un worktree aislado…`,buildingExistingPr:`Aplicando cambios sobre una PR existente…`,paused:`Necesita decisión humana`,on_review:`Implementación lista para revisar`,pr_draft:`PR en borrador creada`,pr_draft_degraded:`Entrega de la PR incompleta`,pr_ready:`PR lista para el merge`,implementation_failed:`La implementación ha fallado`,pr_failed:`No se pudo crear la PR`,merged:`Merge de la PR completado`,discarded:`Descartada`},buildingHint:`Cuando termine, se te preguntará si crear la PR.`,buildingExistingPrHint:`Specrails está trabajando sobre la rama de la PR existente y subirá los cambios de revisión a esa misma PR.`,paused:`Implementación pausada`,pausedForRun:`Pausada en {{ref}}`,resume:`Resume`,stopExecution:`Stop execution`,stopExecutionSent:`Señal de parada enviada`,stopExecutionFailed:`No se pudo parar la ejecución`,createPr:`Crear PR`,publish:`Publicar`,checkout:`Checkout`,checkoutTooltip:`Cambia la carpeta principal del proyecto a {{branch}}`,checkoutSuccess:`Checkout en {{branch}}`,checkoutFailed:`No se pudo hacer checkout de la rama de la PR`,retry:`Reintentar`,retryPr:`Reintentar PR`,checkMerge:`Comprobar merge`,discard:`Descartar`,confirmDiscard:`¿Confirmar descarte?`,mergedNote:`Merge completado — las specs han pasado a Hecho`,discardedNote:`Descartada — las specs han vuelto al backlog`,implementationFailedNote:`El run de implementación falló antes de generar algo entregable. Abre el log del run para revisar el fallo y descarta esta card antes de relanzar.`,degraded:{pushed:`La rama se subió pero no se pudo crear la PR — reintenta para terminar.`,localOnly:`Los cambios se ensamblaron en local pero no se subieron — reintenta para publicar la PR.`},alreadyResolved:`Ya resuelta en otro sitio`,actionFailed:`La acción falló`,notMergedYet:`Aún sin merge`,viewLog:`Ver el registro de ejecución de {{ref}}`,runElapsedAria:`{{elapsed}} transcurridos`,runCostAria:`{{cost}} gastados`,pinned:{label:`Fijada`,marker:`Tarjeta de implementación — fijada arriba`,collapse:`Minimizar tarjeta fijada`,expand:`Expandir tarjeta fijada`,expandCard:`Expandir esta tarjeta`,collapseCard:`Minimizar esta tarjeta`,collapsed_one:`Tarjeta de implementación`,collapsed_other:`{{count}} tarjetas de implementación`,state:{building:`En curso`,on_review:`Revisión`,pr_draft:`PR borrador`,pr_ready:`Publicada`,implementation_failed:`Fallida`,pr_failed:`Fallida`,merged:`Fusionada`,discarded:`Descartada`}},mergeLocal:`Integrar en local`,mergeLocalTooltip:`Fusiona las ramas entregadas en {{base}} en tu checkout local (sin necesidad de GitHub)`,mergeLocalBlockedDirty:`No se puede integrar: tu árbol de trabajo en {{base}} tiene cambios sin commitear. Haz commit o stash y reintenta.`,mergeLocalBlockedBranch:`No se puede integrar: tu checkout está en {{current}}, no en {{base}}. Cambia a {{base}} y reintenta.`,mergedLocally:`Integrado en {{base}} en local`},Q={heading:`Borrador de spec`,drafting:`Actualizando borrador…`,acceptanceCriteria:`Criterios de aceptación`,untitled:`Spec sin título`,expand:`Ver descripción completa`,collapse:`Contraer descripción`},$={openTicket:`Abrir spec #{{id}}`,openPullRequest:`Abrir PR #{{id}}`,openJob:`Abrir job {{id}}`,openLoop:`Abrir loop {{id}}`,ticketNotFound:`Spec #{{id}} no encontrada — puede haber sido eliminada`,pullRequestUrlMissing:`La PR #{{id}} se mencionó sin URL`,pullRequestNotFound:`No se pudo encontrar la PR #{{id}} en este proyecto`,jobNotFound:`Job no encontrado — puede haber sido eliminado`,loopNotFound:`Loop no encontrado — puede haber sido eliminado`,lookupFailed:`No se pudo verificar la referencia — inténtalo de nuevo`},ee={untitled:`Misión sin título`,menu:`Menú de la misión`,rename:`Renombrar`,renamePlaceholder:`Nombre de la misión`,renameHint:`Doble clic para renombrar`,renameFailed:`No se pudo renombrar`,addFavorite:`Añadir a favoritas`,removeFavorite:`Quitar de favoritas`,copyName:`Copiar nombre de la misión`,copyId:`Copiar ID de la misión`,copyProject:`Copiar nombre del proyecto`,copyProjectPath:`Copiar ruta del proyecto`,copyFailed:`No se pudo copiar`,copyTranscript:`Copiar transcripción`,copyTranscriptSuccess:`Transcripción copiada`,copyTranscriptFailed:`No se pudo copiar la transcripción`,exportTranscript:`Exportar transcripción (.txt)`,exportTranscriptSuccess:`Exportación de transcripción iniciada`,exportTranscriptFailed:`No se pudo exportar la transcripción`,delete:`Borrar misión`,deleteConfirm:`¿Borrar esta misión? No se puede deshacer.`,deleteFailed:`No se pudo borrar la misión`},te=`¿Qué construimos ahora?`,ne={title:e,subtitle:t,trigger:n,composerPlaceholder:r,send:i,stop:a,copy:o,attachment:s,maximize:c,restore:l,minimize:u,close:d,newConversation:f,emptyTitle:p,emptyHint:m,thinking:h,connecting:g,consultingCode:_,size:v,model:y,history:b,queue:x,queueEdit:S,git:C,provider:w,tier:T,approval:E,project:D,palette:O,mission:k,noProvider:A,degraded:j,toolCard:M,error:N,chip:P,newAgent:F,switchToAgent:I,switchToKanban:L,search:R,home:z,favoriteMissions:B,untitled:V,workspace:H,attachFile:U,deleteConversation:W,confirmDeleteConversation:G,addFavoriteConversation:K,removeFavoriteConversation:q,confirmShort:J,imagesUnsupported:Y,effort:X,prCard:Z,specDraft:Q,refs:$,header:ee,emptyTitleCodeRain:te};export{K as addFavoriteConversation,E as approval,U as attachFile,s as attachment,P as chip,d as close,r as composerPlaceholder,G as confirmDeleteConversation,J as confirmShort,g as connecting,_ as consultingCode,o as copy,ne as default,j as degraded,W as deleteConversation,X as effort,m as emptyHint,p as emptyTitle,te as emptyTitleCodeRain,N as error,B as favoriteMissions,C as git,ee as header,b as history,z as home,Y as imagesUnsupported,c as maximize,u as minimize,k as mission,y as model,F as newAgent,f as newConversation,A as noProvider,O as palette,Z as prCard,D as project,w as provider,x as queue,S as queueEdit,$ as refs,q as removeFavoriteConversation,l as restore,R as search,i as send,v as size,Q as specDraft,a as stop,t as subtitle,I as switchToAgent,L as switchToKanban,h as thinking,T as tier,e as title,M as toolCard,n as trigger,V as untitled,H as workspace};
@@ -1 +1 @@
1
- import{Rn as e}from"./index-89SuhD4Y.js";var t=e(`brain`,[[`path`,{d:`M12 18V5`,key:`adv99a`}],[`path`,{d:`M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4`,key:`1e3is1`}],[`path`,{d:`M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5`,key:`1gqd8o`}],[`path`,{d:`M17.997 5.125a4 4 0 0 1 2.526 5.77`,key:`iwvgf7`}],[`path`,{d:`M18 18a4 4 0 0 0 2-7.464`,key:`efp6ie`}],[`path`,{d:`M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517`,key:`1gq6am`}],[`path`,{d:`M6 18a4 4 0 0 1-2-7.464`,key:`k1g0md`}],[`path`,{d:`M6.003 5.125a4 4 0 0 0-2.526 5.77`,key:`q97ue3`}]]);export{t};
1
+ import{Hn as e}from"./index-DyY1QyIn.js";var t=e(`brain`,[[`path`,{d:`M12 18V5`,key:`adv99a`}],[`path`,{d:`M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4`,key:`1e3is1`}],[`path`,{d:`M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5`,key:`1gqd8o`}],[`path`,{d:`M17.997 5.125a4 4 0 0 1 2.526 5.77`,key:`iwvgf7`}],[`path`,{d:`M18 18a4 4 0 0 0 2-7.464`,key:`efp6ie`}],[`path`,{d:`M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517`,key:`1gq6am`}],[`path`,{d:`M6 18a4 4 0 0 1-2-7.464`,key:`k1g0md`}],[`path`,{d:`M6.003 5.125a4 4 0 0 0-2.526 5.77`,key:`q97ue3`}]]);export{t};
@@ -1 +1 @@
1
- import{l as e,u as t}from"./index-89SuhD4Y.js";var n=class{constructor(){this.eventListeners=Object.create(null)}addListener(e,t){return this.on(e,t)}removeListener(e,t){return this.off(e,t)}on(e,t){return e in this.eventListeners?this.eventListeners[e].push(t):this.eventListeners[e]=[t],this}once(e,t){let n=r=>{this.removeListener(e,n),t(r)};return this.addListener(e,n)}off(e,t){return e in this.eventListeners&&(this.eventListeners[e]=this.eventListeners[e].filter(e=>e!==t)),this}removeAllListeners(e){return e?delete this.eventListeners[e]:this.eventListeners=Object.create(null),this}emit(e,t){if(e in this.eventListeners){let n=this.eventListeners[e];for(let e of n)e(t);return!0}return!1}listenerCount(e){return e in this.eventListeners?this.eventListeners[e].length:0}prependListener(e,t){return e in this.eventListeners?this.eventListeners[e].unshift(t):this.eventListeners[e]=[t],this}prependOnceListener(e,t){let n=r=>{this.removeListener(e,n),t(r)};return this.prependListener(e,n)}},r=class{constructor(e){this.pid=e}async write(e){await t(`plugin:shell|stdin_write`,{pid:this.pid,buffer:e})}async kill(){await t(`plugin:shell|kill`,{cmd:`killChild`,pid:this.pid})}},i=class i extends n{constructor(e,t=[],r){super(),this.stdout=new n,this.stderr=new n,this.program=e,this.args=typeof t==`string`?[t]:t,this.options=r??{}}static create(e,t=[],n){return new i(e,t,n)}static sidecar(e,t=[],n){let r=new i(e,t,n);return r.options.sidecar=!0,r}async spawn(){let n=this.program,i=this.args,a=this.options;typeof i==`object`&&Object.freeze(i);let o=new e;return o.onmessage=e=>{switch(e.event){case`Error`:this.emit(`error`,e.payload);break;case`Terminated`:this.emit(`close`,e.payload);break;case`Stdout`:this.stdout.emit(`data`,e.payload);break;case`Stderr`:this.stderr.emit(`data`,e.payload);break}},await t(`plugin:shell|spawn`,{program:n,args:i,options:a,onEvent:o}).then(e=>new r(e))}async execute(){let e=this.program,n=this.args,r=this.options;return typeof n==`object`&&Object.freeze(n),await t(`plugin:shell|execute`,{program:e,args:n,options:r})}};async function a(e,n){await t(`plugin:shell|open`,{path:e,with:n})}export{r as Child,i as Command,n as EventEmitter,a as open};
1
+ import{d as e,f as t}from"./index-DyY1QyIn.js";var n=class{constructor(){this.eventListeners=Object.create(null)}addListener(e,t){return this.on(e,t)}removeListener(e,t){return this.off(e,t)}on(e,t){return e in this.eventListeners?this.eventListeners[e].push(t):this.eventListeners[e]=[t],this}once(e,t){let n=r=>{this.removeListener(e,n),t(r)};return this.addListener(e,n)}off(e,t){return e in this.eventListeners&&(this.eventListeners[e]=this.eventListeners[e].filter(e=>e!==t)),this}removeAllListeners(e){return e?delete this.eventListeners[e]:this.eventListeners=Object.create(null),this}emit(e,t){if(e in this.eventListeners){let n=this.eventListeners[e];for(let e of n)e(t);return!0}return!1}listenerCount(e){return e in this.eventListeners?this.eventListeners[e].length:0}prependListener(e,t){return e in this.eventListeners?this.eventListeners[e].unshift(t):this.eventListeners[e]=[t],this}prependOnceListener(e,t){let n=r=>{this.removeListener(e,n),t(r)};return this.prependListener(e,n)}},r=class{constructor(e){this.pid=e}async write(e){await t(`plugin:shell|stdin_write`,{pid:this.pid,buffer:e})}async kill(){await t(`plugin:shell|kill`,{cmd:`killChild`,pid:this.pid})}},i=class i extends n{constructor(e,t=[],r){super(),this.stdout=new n,this.stderr=new n,this.program=e,this.args=typeof t==`string`?[t]:t,this.options=r??{}}static create(e,t=[],n){return new i(e,t,n)}static sidecar(e,t=[],n){let r=new i(e,t,n);return r.options.sidecar=!0,r}async spawn(){let n=this.program,i=this.args,a=this.options;typeof i==`object`&&Object.freeze(i);let o=new e;return o.onmessage=e=>{switch(e.event){case`Error`:this.emit(`error`,e.payload);break;case`Terminated`:this.emit(`close`,e.payload);break;case`Stdout`:this.stdout.emit(`data`,e.payload);break;case`Stderr`:this.stderr.emit(`data`,e.payload);break}},await t(`plugin:shell|spawn`,{program:n,args:i,options:a,onEvent:o}).then(e=>new r(e))}async execute(){let e=this.program,n=this.args,r=this.options;return typeof n==`object`&&Object.freeze(n),await t(`plugin:shell|execute`,{program:e,args:n,options:r})}};async function a(e,n){await t(`plugin:shell|open`,{path:e,with:n})}export{r as Child,i as Command,n as EventEmitter,a as open};
@@ -1 +1 @@
1
- import{u as e}from"./index-89SuhD4Y.js";function t(e){if(e!==void 0){if(typeof e==`string`)return e;if(`ok`in e&&`cancel`in e)return{OkCancelCustom:[e.ok,e.cancel]};if(`yes`in e&&`no`in e&&`cancel`in e)return{YesNoCancelCustom:[e.yes,e.no,e.cancel]};if(`ok`in e)return{OkCustom:e.ok}}}async function n(t={}){return typeof t==`object`&&Object.freeze(t),await e(`plugin:dialog|open`,{options:t})}async function r(t={}){return typeof t==`object`&&Object.freeze(t),await e(`plugin:dialog|save`,{options:t})}async function i(n,r){return await e(`plugin:dialog|message`,{message:n,title:r?.title,kind:r?.kind,buttons:t(r?.buttons)})}async function a(e,t){let n=typeof t==`string`?{title:t}:t;return n&&!n.buttons&&n.okLabel&&(n.buttons={ok:n.okLabel}),i(e,n)}async function o(e,t){let n=typeof t==`string`?{title:t}:t,r=n?.okLabel||n?.cancelLabel,a=n?.okLabel??`Yes`;return await i(e,{title:n?.title,kind:n?.kind,buttons:r?{ok:a,cancel:n.cancelLabel??`No`}:`YesNo`})===a}async function s(e,t){let n=typeof t==`string`?{title:t}:t,r=n?.okLabel||n?.cancelLabel,a=n?.okLabel??`Ok`;return await i(e,{title:n?.title,kind:n?.kind,buttons:r?{ok:a,cancel:n.cancelLabel??`Cancel`}:`OkCancel`})===a}export{o as ask,s as confirm,a as message,n as open,r as save};
1
+ import{f as e}from"./index-DyY1QyIn.js";function t(e){if(e!==void 0){if(typeof e==`string`)return e;if(`ok`in e&&`cancel`in e)return{OkCancelCustom:[e.ok,e.cancel]};if(`yes`in e&&`no`in e&&`cancel`in e)return{YesNoCancelCustom:[e.yes,e.no,e.cancel]};if(`ok`in e)return{OkCustom:e.ok}}}async function n(t={}){return typeof t==`object`&&Object.freeze(t),await e(`plugin:dialog|open`,{options:t})}async function r(t={}){return typeof t==`object`&&Object.freeze(t),await e(`plugin:dialog|save`,{options:t})}async function i(n,r){return await e(`plugin:dialog|message`,{message:n,title:r?.title,kind:r?.kind,buttons:t(r?.buttons)})}async function a(e,t){let n=typeof t==`string`?{title:t}:t;return n&&!n.buttons&&n.okLabel&&(n.buttons={ok:n.okLabel}),i(e,n)}async function o(e,t){let n=typeof t==`string`?{title:t}:t,r=n?.okLabel||n?.cancelLabel,a=n?.okLabel??`Yes`;return await i(e,{title:n?.title,kind:n?.kind,buttons:r?{ok:a,cancel:n.cancelLabel??`No`}:`YesNo`})===a}async function s(e,t){let n=typeof t==`string`?{title:t}:t,r=n?.okLabel||n?.cancelLabel,a=n?.okLabel??`Ok`;return await i(e,{title:n?.title,kind:n?.kind,buttons:r?{ok:a,cancel:n.cancelLabel??`Cancel`}:`OkCancel`})===a}export{o as ask,s as confirm,a as message,n as open,r as save};