specrails-desktop 2.0.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 (455) hide show
  1. package/.claude/commands/specrails/batch-implement.md +287 -0
  2. package/.claude/commands/specrails/compat-check.md +271 -0
  3. package/.claude/commands/specrails/doctor.md +62 -0
  4. package/.claude/commands/specrails/enrich.md +1635 -0
  5. package/.claude/commands/specrails/explore-spec.md +173 -0
  6. package/.claude/commands/specrails/health-check.md +527 -0
  7. package/.claude/commands/specrails/implement.md +1457 -0
  8. package/.claude/commands/specrails/memory-inspect.md +259 -0
  9. package/.claude/commands/specrails/opsx-diff.md +419 -0
  10. package/.claude/commands/specrails/propose-spec.md +102 -0
  11. package/.claude/commands/specrails/reconfig.md +89 -0
  12. package/.claude/commands/specrails/refactor-recommender.md +212 -0
  13. package/.claude/commands/specrails/retry.md +363 -0
  14. package/.claude/commands/specrails/telemetry.md +552 -0
  15. package/.claude/commands/specrails/why.md +96 -0
  16. package/LICENSE +21 -0
  17. package/README.md +290 -0
  18. package/cli/dist/specrails-desktop.js +1098 -0
  19. package/client/dist/assets/ActivityFeedPage-Gy4x8dBt.js +1 -0
  20. package/client/dist/assets/AgentsPage-CPgu--Fb.js +86 -0
  21. package/client/dist/assets/AnalyticsPage-B5sJEee2.js +1 -0
  22. package/client/dist/assets/BarChart-7IMQ8HY1.js +33 -0
  23. package/client/dist/assets/CodePage-CBdFvbwe.js +2 -0
  24. package/client/dist/assets/DesktopAnalyticsPage-w0rdTq4w.js +1 -0
  25. package/client/dist/assets/DocsDialog-BZUYM7wm.js +11 -0
  26. package/client/dist/assets/DocsPage-9QglWl46.js +11 -0
  27. package/client/dist/assets/ExportDropdown-BLZFXtNi.js +1 -0
  28. package/client/dist/assets/IntegrationsPage-BxBE4y99.js +3 -0
  29. package/client/dist/assets/JobDetailPage-DydWx_5S.js +16 -0
  30. package/client/dist/assets/JobsPage-20ibw0IO.js +1 -0
  31. package/client/dist/assets/abap-Bw6f2wDG.js +1 -0
  32. package/client/dist/assets/activity-BEIp_Y1A.js +1 -0
  33. package/client/dist/assets/activity-BdrPln96.js +1 -0
  34. package/client/dist/assets/activity-CpkRS8Sx.js +1 -0
  35. package/client/dist/assets/activity-DKCpESPt.js +1 -0
  36. package/client/dist/assets/activity-DOUVEjJi.js +1 -0
  37. package/client/dist/assets/activity-DRwkql_y.js +1 -0
  38. package/client/dist/assets/activity-DcDQ7tjw.js +1 -0
  39. package/client/dist/assets/activity-Dv6H7wEr.js +1 -0
  40. package/client/dist/assets/addon-image-3WCl5Vhd.js +1 -0
  41. package/client/dist/assets/addon-ligatures-C5OdliKs.js +2 -0
  42. package/client/dist/assets/addon-webgl-BbX6pSjl.js +44 -0
  43. package/client/dist/assets/addspec-B5yl4Loj.js +1 -0
  44. package/client/dist/assets/addspec-BEeF5-zc.js +1 -0
  45. package/client/dist/assets/addspec-D33ocMxf.js +1 -0
  46. package/client/dist/assets/addspec-DFswZ0jK.js +1 -0
  47. package/client/dist/assets/addspec-DRE-jZv7.js +1 -0
  48. package/client/dist/assets/addspec-DVZ15Jp8.js +1 -0
  49. package/client/dist/assets/addspec-Fkv91Opc.js +1 -0
  50. package/client/dist/assets/addspec-GWm4ffKl.js +1 -0
  51. package/client/dist/assets/agents-1nCDWRmP.js +1 -0
  52. package/client/dist/assets/agents-Bm9rPqnt.js +1 -0
  53. package/client/dist/assets/agents-CMxtJMLD.js +1 -0
  54. package/client/dist/assets/agents-DK-Dlc0i.js +1 -0
  55. package/client/dist/assets/agents-Q6Ldfpxx.js +1 -0
  56. package/client/dist/assets/agents-TeOSy-ax.js +1 -0
  57. package/client/dist/assets/agents-iTqjRajS.js +1 -0
  58. package/client/dist/assets/agents-s87sMGzL.js +1 -0
  59. package/client/dist/assets/agentstudio-B6Wb59E7.js +1 -0
  60. package/client/dist/assets/agentstudio-BADhZ41e.js +1 -0
  61. package/client/dist/assets/agentstudio-BSnWLR63.js +1 -0
  62. package/client/dist/assets/agentstudio-BdidyBzZ.js +1 -0
  63. package/client/dist/assets/agentstudio-CxlUllqI.js +1 -0
  64. package/client/dist/assets/agentstudio-D3I62TLJ.js +1 -0
  65. package/client/dist/assets/agentstudio-DuH9TogZ.js +1 -0
  66. package/client/dist/assets/agentstudio-Kw88_dUF.js +1 -0
  67. package/client/dist/assets/aiedit-BWxHGsYA.js +1 -0
  68. package/client/dist/assets/aiedit-D2ji6Qy0.js +1 -0
  69. package/client/dist/assets/aiedit-DAhZTvtk.js +1 -0
  70. package/client/dist/assets/aiedit-DJMny-D5.js +1 -0
  71. package/client/dist/assets/aiedit-DOcxERkU.js +1 -0
  72. package/client/dist/assets/aiedit-DvrcbwGv.js +1 -0
  73. package/client/dist/assets/aiedit-TTwzL1TS.js +1 -0
  74. package/client/dist/assets/aiedit-WBSjT_C1.js +1 -0
  75. package/client/dist/assets/analytics-BIdr0YfL.js +1 -0
  76. package/client/dist/assets/analytics-C6EzgtdE.js +1 -0
  77. package/client/dist/assets/analytics-C9Zc-rkM.js +1 -0
  78. package/client/dist/assets/analytics-CVx3YOc0.js +1 -0
  79. package/client/dist/assets/analytics-CYj0tfj7.js +1 -0
  80. package/client/dist/assets/analytics-CnY4kNG3.js +1 -0
  81. package/client/dist/assets/analytics-CrPCZRJ-.js +1 -0
  82. package/client/dist/assets/analytics-DMCto-TF.js +1 -0
  83. package/client/dist/assets/apex-Cw8_REBo.js +1 -0
  84. package/client/dist/assets/atom-one-dark-B-oHczHB.css +1 -0
  85. package/client/dist/assets/attachments-BIsSSnHJ.js +1 -0
  86. package/client/dist/assets/attachments-BW4L3l2L.js +1 -0
  87. package/client/dist/assets/attachments-Bcf6BG6V.js +1 -0
  88. package/client/dist/assets/attachments-Bke8sCU4.js +1 -0
  89. package/client/dist/assets/attachments-COcrGRFz.js +1 -0
  90. package/client/dist/assets/attachments-DYHGA2Dj.js +1 -0
  91. package/client/dist/assets/attachments-Dd92KpUH.js +1 -0
  92. package/client/dist/assets/attachments-DzdU6DV6.js +1 -0
  93. package/client/dist/assets/azcli-Cz6HAoOw.js +1 -0
  94. package/client/dist/assets/bat-CcJ-xyqL.js +1 -0
  95. package/client/dist/assets/bicep-z1WDCKYz.js +2 -0
  96. package/client/dist/assets/browser-5ErDlJoR.js +1 -0
  97. package/client/dist/assets/browser-Bc-YdlVg.js +1 -0
  98. package/client/dist/assets/browser-BlYF4OOq.js +1 -0
  99. package/client/dist/assets/browser-CT-ReZGt.js +1 -0
  100. package/client/dist/assets/browser-DGITz3fC.js +1 -0
  101. package/client/dist/assets/browser-JsAIGCEW.js +1 -0
  102. package/client/dist/assets/browser-M5-rbPlw.js +1 -0
  103. package/client/dist/assets/browser-Qya9cARy.js +1 -0
  104. package/client/dist/assets/cameligo-BRewOpfa.js +1 -0
  105. package/client/dist/assets/chat-BEGuC03z.js +1 -0
  106. package/client/dist/assets/chat-BEW60P_u.js +1 -0
  107. package/client/dist/assets/chat-BQNMD0PL.js +1 -0
  108. package/client/dist/assets/chat-BsbNGPW9.js +1 -0
  109. package/client/dist/assets/chat-CboQguCi.js +1 -0
  110. package/client/dist/assets/chat-DRCa9pOt.js +1 -0
  111. package/client/dist/assets/chat-DwUm6W9z.js +1 -0
  112. package/client/dist/assets/chat-yoXwguQu.js +1 -0
  113. package/client/dist/assets/chunk-CilyBKbf.js +1 -0
  114. package/client/dist/assets/clojure-DBjRWN6g.js +1 -0
  115. package/client/dist/assets/clsx-DnqN-uhr.js +1 -0
  116. package/client/dist/assets/code-AL1rVIMb.js +1 -0
  117. package/client/dist/assets/code-C0BKpkht.js +1 -0
  118. package/client/dist/assets/code-C0FTS3ew.js +1 -0
  119. package/client/dist/assets/code-CPcHxzxw.js +1 -0
  120. package/client/dist/assets/code-D3ryDniw.js +1 -0
  121. package/client/dist/assets/code-D3zVVQTj.js +1 -0
  122. package/client/dist/assets/code-PCmfS3dn.js +1 -0
  123. package/client/dist/assets/code-exI0G5Wd.js +1 -0
  124. package/client/dist/assets/codicon-ngg6Pgfi.ttf +0 -0
  125. package/client/dist/assets/coffee-Cfk_XHGR.js +1 -0
  126. package/client/dist/assets/commands-B772IyDa.js +1 -0
  127. package/client/dist/assets/commands-BDDp6xFG.js +1 -0
  128. package/client/dist/assets/commands-CJxCry-o.js +1 -0
  129. package/client/dist/assets/commands-CfgY-_of.js +1 -0
  130. package/client/dist/assets/commands-DLrvnPNg.js +1 -0
  131. package/client/dist/assets/commands-IXMOKBYt.js +1 -0
  132. package/client/dist/assets/commands-UD1NzmwX.js +1 -0
  133. package/client/dist/assets/commands-sqrqsxyE.js +1 -0
  134. package/client/dist/assets/common-DCr6VzJ7.js +1 -0
  135. package/client/dist/assets/common-Dard9UNH.js +1 -0
  136. package/client/dist/assets/common-DeDELLZJ.js +1 -0
  137. package/client/dist/assets/common-DltqHaAe.js +1 -0
  138. package/client/dist/assets/common-Dmm1GhdD.js +1 -0
  139. package/client/dist/assets/common-DnjcgkPH.js +1 -0
  140. package/client/dist/assets/common-GbpxfPG8.js +1 -0
  141. package/client/dist/assets/common-wA36jmj1.js +1 -0
  142. package/client/dist/assets/cpp-BVob6BaP.js +1 -0
  143. package/client/dist/assets/csharp-C4fbRuOu.js +1 -0
  144. package/client/dist/assets/csp-DthFP_vT.js +1 -0
  145. package/client/dist/assets/css-CGMH0hcW.js +3 -0
  146. package/client/dist/assets/css.worker-Wv5dxAWO.js +89 -0
  147. package/client/dist/assets/cssMode-Cc6ozl-J.js +1 -0
  148. package/client/dist/assets/cypher-Pnf68BRV.js +1 -0
  149. package/client/dist/assets/dart-PMMOtxZX.js +1 -0
  150. package/client/dist/assets/dashboard-B4ixDVk8.js +1 -0
  151. package/client/dist/assets/dashboard-BZBADHSj.js +1 -0
  152. package/client/dist/assets/dashboard-C1MfeUHs.js +1 -0
  153. package/client/dist/assets/dashboard-C7SK6xu5.js +1 -0
  154. package/client/dist/assets/dashboard-CB6Le1yN.js +1 -0
  155. package/client/dist/assets/dashboard-CoTpMOBM.js +1 -0
  156. package/client/dist/assets/dashboard-Duo4DDCW.js +1 -0
  157. package/client/dist/assets/dashboard-I19DXBxw.js +1 -0
  158. package/client/dist/assets/dist-js-BY-Fv_fg.js +1 -0
  159. package/client/dist/assets/dist-js-Bakc4uxT.js +1 -0
  160. package/client/dist/assets/dockerfile-di1nsJCc.js +1 -0
  161. package/client/dist/assets/ecl-D_WVcB5M.js +1 -0
  162. package/client/dist/assets/editor-Br_kD0ds.css +1 -0
  163. package/client/dist/assets/editor.api2-XLGzZfbc.js +872 -0
  164. package/client/dist/assets/editor.main-CfXxHimg.js +6 -0
  165. package/client/dist/assets/editor.worker-Bd9IXS8d.js +26 -0
  166. package/client/dist/assets/elixir-OAdJEMOn.js +1 -0
  167. package/client/dist/assets/explore-4mFpnrKU.js +1 -0
  168. package/client/dist/assets/explore-A8Ltoblq.js +1 -0
  169. package/client/dist/assets/explore-B9A3iN2W.js +1 -0
  170. package/client/dist/assets/explore-BV5Xxlsn.js +1 -0
  171. package/client/dist/assets/explore-BrBJvfjP.js +1 -0
  172. package/client/dist/assets/explore-C3FSE42C.js +1 -0
  173. package/client/dist/assets/explore-D2EFgt8J.js +1 -0
  174. package/client/dist/assets/explore-hFc3HFcp.js +1 -0
  175. package/client/dist/assets/flow9-D3QEZjgn.js +1 -0
  176. package/client/dist/assets/format-command-CwGuwzGA.js +1 -0
  177. package/client/dist/assets/freemarker2-DP7J1gG3.js +3 -0
  178. package/client/dist/assets/fsharp-BF0k_8N8.js +1 -0
  179. package/client/dist/assets/go-BAQO5Jsz.js +1 -0
  180. package/client/dist/assets/graphql-hdFVFkiV.js +1 -0
  181. package/client/dist/assets/handlebars-BjRlucw6.js +1 -0
  182. package/client/dist/assets/hcl-DWnl1o-X.js +1 -0
  183. package/client/dist/assets/html-OumBQJ-U.js +1 -0
  184. package/client/dist/assets/html.worker-CQP8QQsS.js +502 -0
  185. package/client/dist/assets/htmlMode-CStc3zXM.js +1 -0
  186. package/client/dist/assets/index-CimDRRi7.css +2 -0
  187. package/client/dist/assets/index-XGZaKl_u.js +142 -0
  188. package/client/dist/assets/ini-CB-6OVu3.js +1 -0
  189. package/client/dist/assets/integrations-C3p12Ms6.js +1 -0
  190. package/client/dist/assets/integrations-Cr6hH7XR.js +1 -0
  191. package/client/dist/assets/integrations-Cublz3m6.js +1 -0
  192. package/client/dist/assets/integrations-D28q1kF6.js +1 -0
  193. package/client/dist/assets/integrations-DRdbki5W.js +1 -0
  194. package/client/dist/assets/integrations-DaC4SzzL.js +1 -0
  195. package/client/dist/assets/integrations-DmQYCUvN.js +1 -0
  196. package/client/dist/assets/integrations-HIlUxXVs.js +1 -0
  197. package/client/dist/assets/java-d1CmfiHX.js +1 -0
  198. package/client/dist/assets/javascript-CMk--e7g.js +1 -0
  199. package/client/dist/assets/jobs-BE1siB0M.js +1 -0
  200. package/client/dist/assets/jobs-BHcQ_Faf.js +1 -0
  201. package/client/dist/assets/jobs-CFfc2dNX.js +1 -0
  202. package/client/dist/assets/jobs-CSi5n8X_.js +1 -0
  203. package/client/dist/assets/jobs-Dc3X86PY.js +1 -0
  204. package/client/dist/assets/jobs-De5tASex.js +1 -0
  205. package/client/dist/assets/jobs-DsoXEdo7.js +1 -0
  206. package/client/dist/assets/jobs-Wl-ApPMb.js +1 -0
  207. package/client/dist/assets/json.worker-DzV-CpCQ.js +58 -0
  208. package/client/dist/assets/jsonMode-C2h3ZcjZ.js +7 -0
  209. package/client/dist/assets/julia-Bgv08lKa.js +1 -0
  210. package/client/dist/assets/kotlin-u98kaVTf.js +1 -0
  211. package/client/dist/assets/less-CjYwpgg5.js +2 -0
  212. package/client/dist/assets/lexon-YTjaAFBB.js +1 -0
  213. package/client/dist/assets/lib-CPxTMOAq.js +7 -0
  214. package/client/dist/assets/liquid-mI3KJrBE.js +1 -0
  215. package/client/dist/assets/lspLanguageFeatures-DU09ggWi.js +4 -0
  216. package/client/dist/assets/lua-BzmkWv27.js +1 -0
  217. package/client/dist/assets/m3-CFwk9fw0.js +1 -0
  218. package/client/dist/assets/markdown-CR5iMpSZ.js +1 -0
  219. package/client/dist/assets/mdx-C41VDTR_.js +1 -0
  220. package/client/dist/assets/mips-CcEalc17.js +1 -0
  221. package/client/dist/assets/monaco.contribution-CPObAXMC.js +2 -0
  222. package/client/dist/assets/msdax-BQbkawnr.js +1 -0
  223. package/client/dist/assets/mysql-GTlaaW_P.js +1 -0
  224. package/client/dist/assets/nav-0fwkrgHt.js +1 -0
  225. package/client/dist/assets/nav-BEL3MTwK.js +1 -0
  226. package/client/dist/assets/nav-B_G-TJDW.js +1 -0
  227. package/client/dist/assets/nav-C2YXcbZS.js +1 -0
  228. package/client/dist/assets/nav-ClzOE4mA.js +1 -0
  229. package/client/dist/assets/nav-CtYwmMgu.js +1 -0
  230. package/client/dist/assets/nav-D2bOGSEg.js +1 -0
  231. package/client/dist/assets/nav-iH1V5j6o.js +1 -0
  232. package/client/dist/assets/objective-c-Byu1T5if.js +1 -0
  233. package/client/dist/assets/pascal-BrfzBfRm.js +1 -0
  234. package/client/dist/assets/pascaligo-BXXKFUeo.js +1 -0
  235. package/client/dist/assets/perl-B3OikKq-.js +1 -0
  236. package/client/dist/assets/pgsql-CTsa0Acc.js +1 -0
  237. package/client/dist/assets/php-DiQh3FUW.js +1 -0
  238. package/client/dist/assets/pla-92uH8Fzm.js +1 -0
  239. package/client/dist/assets/postiats-BbeWkKUr.js +1 -0
  240. package/client/dist/assets/powerquery-DgDMzpsm.js +1 -0
  241. package/client/dist/assets/powershell-BfdUUzaG.js +1 -0
  242. package/client/dist/assets/preload-helper-DSXbuxSR.js +1 -0
  243. package/client/dist/assets/protobuf-BojW2ftW.js +2 -0
  244. package/client/dist/assets/pug-BxqTg3IU.js +1 -0
  245. package/client/dist/assets/python-Y27rKQtk.js +1 -0
  246. package/client/dist/assets/qsharp-BX_A-MW9.js +1 -0
  247. package/client/dist/assets/r-D9BMnxvJ.js +1 -0
  248. package/client/dist/assets/razor-Cd5-q9Bp.js +1 -0
  249. package/client/dist/assets/redis-5cJqEQJJ.js +1 -0
  250. package/client/dist/assets/redshift-d8BBqiwb.js +1 -0
  251. package/client/dist/assets/restructuredtext-C8a6yIcZ.js +1 -0
  252. package/client/dist/assets/ruby-egeh-6KX.js +1 -0
  253. package/client/dist/assets/rust-a3r9IInB.js +1 -0
  254. package/client/dist/assets/sb-y8iRIDei.js +1 -0
  255. package/client/dist/assets/scala-BPDK2AmK.js +1 -0
  256. package/client/dist/assets/scheme-BIWUEoOs.js +1 -0
  257. package/client/dist/assets/scss-CA-PSzwg.js +3 -0
  258. package/client/dist/assets/settings-55oDcbSh.js +1 -0
  259. package/client/dist/assets/settings-Bd4Tq1RB.js +1 -0
  260. package/client/dist/assets/settings-CCSM-Fhn.js +1 -0
  261. package/client/dist/assets/settings-D3e_bDoW.js +1 -0
  262. package/client/dist/assets/settings-DKbTkbn7.js +1 -0
  263. package/client/dist/assets/settings-Dxpo6_w7.js +1 -0
  264. package/client/dist/assets/settings-bt84e3Aa.js +1 -0
  265. package/client/dist/assets/settings-nu68QukM.js +1 -0
  266. package/client/dist/assets/setup-BMqwfbW9.js +1 -0
  267. package/client/dist/assets/setup-Bb5LcG28.js +1 -0
  268. package/client/dist/assets/setup-BeEx2_da.js +1 -0
  269. package/client/dist/assets/setup-CCCrB53Q.js +1 -0
  270. package/client/dist/assets/setup-CJA0ATmd.js +1 -0
  271. package/client/dist/assets/setup-CeiDbZcb.js +1 -0
  272. package/client/dist/assets/setup-Cus7TApA.js +1 -0
  273. package/client/dist/assets/setup-D9qOs2Xo.js +1 -0
  274. package/client/dist/assets/shell--LiT1Bja.js +1 -0
  275. package/client/dist/assets/solidity-DdqZccZg.js +1 -0
  276. package/client/dist/assets/sophia-S6-YxNG_.js +1 -0
  277. package/client/dist/assets/sparql-BSf5kMp2.js +1 -0
  278. package/client/dist/assets/specs-BFfu3u-a.js +1 -0
  279. package/client/dist/assets/specs-B__C8-8a.js +1 -0
  280. package/client/dist/assets/specs-CZ1PsXsC.js +1 -0
  281. package/client/dist/assets/specs-D2FzlLn9.js +1 -0
  282. package/client/dist/assets/specs-DaUTrNF9.js +1 -0
  283. package/client/dist/assets/specs-Dyc5hYeE.js +1 -0
  284. package/client/dist/assets/specs-cKEh2LXt.js +1 -0
  285. package/client/dist/assets/specs-k0PyLDVt.js +1 -0
  286. package/client/dist/assets/sql-D7KgjR8G.js +1 -0
  287. package/client/dist/assets/st-BnoDa-Ml.js +1 -0
  288. package/client/dist/assets/swift-DEUHTkUX.js +1 -0
  289. package/client/dist/assets/systemverilog-Tqb_KPnW.js +1 -0
  290. package/client/dist/assets/tcl-BmBFS2qq.js +1 -0
  291. package/client/dist/assets/terminal-80yDMgMF.js +1 -0
  292. package/client/dist/assets/terminal-Bje4ziIa.js +1 -0
  293. package/client/dist/assets/terminal-C2WYcFHF.js +1 -0
  294. package/client/dist/assets/terminal-CSONJOex.js +1 -0
  295. package/client/dist/assets/terminal-DEqzGtcr.js +1 -0
  296. package/client/dist/assets/terminal-DeWzh6ys.js +1 -0
  297. package/client/dist/assets/terminal-YOlsJCQj.js +1 -0
  298. package/client/dist/assets/terminal-lkZYR4wJ.js +1 -0
  299. package/client/dist/assets/tickets-CB7N30gm.js +1 -0
  300. package/client/dist/assets/tickets-CF2PYelu.js +1 -0
  301. package/client/dist/assets/tickets-DNOANUXr.js +1 -0
  302. package/client/dist/assets/tickets-DU1aqsbr.js +1 -0
  303. package/client/dist/assets/tickets-DYvafSaY.js +1 -0
  304. package/client/dist/assets/tickets-DlpC_iTg.js +1 -0
  305. package/client/dist/assets/tickets-DucYgtdl.js +1 -0
  306. package/client/dist/assets/tickets-clefmXLv.js +1 -0
  307. package/client/dist/assets/ts.worker-METxwbDZ.js +67719 -0
  308. package/client/dist/assets/tsMode-B0y_xEci.js +11 -0
  309. package/client/dist/assets/twig-BQV8igWC.js +1 -0
  310. package/client/dist/assets/typescript-BzK0OgwW.js +1 -0
  311. package/client/dist/assets/typespec-DlFroUGY.js +1 -0
  312. package/client/dist/assets/useProjectCache-DSaiGFjV.js +1 -0
  313. package/client/dist/assets/vb-BlrJpIMX.js +1 -0
  314. package/client/dist/assets/wgsl-BWgIc6FZ.js +298 -0
  315. package/client/dist/assets/workers-rt--R2Qy.js +1 -0
  316. package/client/dist/assets/xml-eX9QXAmI.js +1 -0
  317. package/client/dist/assets/yaml-fcsNkpOt.js +1 -0
  318. package/client/dist/index.html +246 -0
  319. package/docs/README.md +54 -0
  320. package/docs/cli.md +198 -0
  321. package/docs/codex.md +210 -0
  322. package/docs/creating-specs.md +197 -0
  323. package/docs/customizing.md +197 -0
  324. package/docs/getting-started.md +140 -0
  325. package/docs/internals/README.md +25 -0
  326. package/docs/internals/adding-a-provider.md +238 -0
  327. package/docs/internals/api-reference.md +634 -0
  328. package/docs/internals/architecture.md +332 -0
  329. package/docs/internals/configuration.md +172 -0
  330. package/docs/internals/openspec-workflow.md +282 -0
  331. package/docs/internals/operations-runbook.md +198 -0
  332. package/docs/internals/profiles.md +152 -0
  333. package/docs/platforms/macos.md +130 -0
  334. package/docs/platforms/windows.md +81 -0
  335. package/docs/running-pipelines.md +240 -0
  336. package/docs/terminal.md +138 -0
  337. package/docs/tracking-cost.md +155 -0
  338. package/package.json +82 -0
  339. package/server/dist/agent-generator.js +232 -0
  340. package/server/dist/agent-refine-db.js +124 -0
  341. package/server/dist/agent-refine-manager.js +526 -0
  342. package/server/dist/ai-invocations.js +111 -0
  343. package/server/dist/attachment-manager.js +299 -0
  344. package/server/dist/auth.js +207 -0
  345. package/server/dist/binary-probe.js +35 -0
  346. package/server/dist/browser-capture-manager.js +576 -0
  347. package/server/dist/browser-capture-types.js +28 -0
  348. package/server/dist/browser-network.js +149 -0
  349. package/server/dist/browser-playwright.js +888 -0
  350. package/server/dist/build-dirs.js +44 -0
  351. package/server/dist/changes-reader.js +120 -0
  352. package/server/dist/chat-manager.js +1060 -0
  353. package/server/dist/chromium-resolver.js +311 -0
  354. package/server/dist/code-explorer-router.js +788 -0
  355. package/server/dist/codex-otel-bridge.js +235 -0
  356. package/server/dist/command-resolver.js +102 -0
  357. package/server/dist/config.js +306 -0
  358. package/server/dist/context-budget.js +113 -0
  359. package/server/dist/context-scope.js +279 -0
  360. package/server/dist/contract-refine-runner.js +521 -0
  361. package/server/dist/core-compat.js +207 -0
  362. package/server/dist/core-package.js +14 -0
  363. package/server/dist/db.js +1034 -0
  364. package/server/dist/desktop-analytics.js +156 -0
  365. package/server/dist/desktop-db.js +456 -0
  366. package/server/dist/desktop-router.js +735 -0
  367. package/server/dist/docs-router.js +207 -0
  368. package/server/dist/explore-contract-refine.js +421 -0
  369. package/server/dist/explore-cwd-manager.js +242 -0
  370. package/server/dist/explore-draft-title.js +47 -0
  371. package/server/dist/explore-smash.js +450 -0
  372. package/server/dist/feature-flags.js +17 -0
  373. package/server/dist/file-provenance.js +382 -0
  374. package/server/dist/file-summary-generator.js +221 -0
  375. package/server/dist/file-summary-manager.js +689 -0
  376. package/server/dist/hooks.js +102 -0
  377. package/server/dist/ids.js +7 -0
  378. package/server/dist/index.js +586 -0
  379. package/server/dist/metrics.js +136 -0
  380. package/server/dist/mobile/index.js +16 -0
  381. package/server/dist/mobile/mobile-admin-router.js +84 -0
  382. package/server/dist/mobile/mobile-auth.js +67 -0
  383. package/server/dist/mobile/mobile-devices.js +80 -0
  384. package/server/dist/mobile/mobile-event-bus.js +39 -0
  385. package/server/dist/mobile/mobile-gateway.js +285 -0
  386. package/server/dist/mobile/mobile-mdns.js +81 -0
  387. package/server/dist/mobile/mobile-pairing.js +179 -0
  388. package/server/dist/mobile/mobile-redact.js +53 -0
  389. package/server/dist/mobile/mobile-router.js +411 -0
  390. package/server/dist/mobile/mobile-tls.js +86 -0
  391. package/server/dist/mobile/mobile-types.js +9 -0
  392. package/server/dist/mobile/mobile-ws.js +275 -0
  393. package/server/dist/path-resolver.js +298 -0
  394. package/server/dist/plugin-manager.js +617 -0
  395. package/server/dist/plugins/claude-approval.js +179 -0
  396. package/server/dist/plugins/claude-md-mutation.js +146 -0
  397. package/server/dist/plugins/codex-mcp.js +108 -0
  398. package/server/dist/plugins/contributors.js +72 -0
  399. package/server/dist/plugins/drift.js +58 -0
  400. package/server/dist/plugins/index.js +14 -0
  401. package/server/dist/plugins/json-mutation.js +120 -0
  402. package/server/dist/plugins/manager.js +32 -0
  403. package/server/dist/plugins/ownership.js +86 -0
  404. package/server/dist/plugins/paths.js +37 -0
  405. package/server/dist/plugins/prereq-installer.js +104 -0
  406. package/server/dist/plugins/rail-integration.js +79 -0
  407. package/server/dist/plugins/serena/index.js +13 -0
  408. package/server/dist/plugins/serena/install.js +91 -0
  409. package/server/dist/plugins/serena/instructions-content.js +21 -0
  410. package/server/dist/plugins/serena/manifest.js +111 -0
  411. package/server/dist/plugins/serena/verify.js +78 -0
  412. package/server/dist/plugins-router.js +215 -0
  413. package/server/dist/pricing.js +89 -0
  414. package/server/dist/profile-manager.js +310 -0
  415. package/server/dist/profiles-router.js +759 -0
  416. package/server/dist/project-registry.js +443 -0
  417. package/server/dist/project-router.js +4016 -0
  418. package/server/dist/proposal-manager.js +291 -0
  419. package/server/dist/provider-selection.js +69 -0
  420. package/server/dist/providers/claude-adapter.js +281 -0
  421. package/server/dist/providers/codex-adapter.js +264 -0
  422. package/server/dist/providers/index.js +23 -0
  423. package/server/dist/providers/registry.js +37 -0
  424. package/server/dist/providers/types.js +22 -0
  425. package/server/dist/queue-manager.js +1511 -0
  426. package/server/dist/rails-router.js +362 -0
  427. package/server/dist/rails-store.js +116 -0
  428. package/server/dist/result-event.js +106 -0
  429. package/server/dist/schemas/profile.v1.json +151 -0
  430. package/server/dist/setup-manager.js +1165 -0
  431. package/server/dist/setup-prerequisites.js +372 -0
  432. package/server/dist/smash-runner.js +663 -0
  433. package/server/dist/spec-draft-parser.js +133 -0
  434. package/server/dist/spec-launcher-manager.js +174 -0
  435. package/server/dist/spec-models.js +32 -0
  436. package/server/dist/specrails-tech-client.js +82 -0
  437. package/server/dist/spending.js +448 -0
  438. package/server/dist/telemetry-compactor.js +180 -0
  439. package/server/dist/telemetry-export.js +317 -0
  440. package/server/dist/telemetry-receiver.js +224 -0
  441. package/server/dist/terminal-manager.js +633 -0
  442. package/server/dist/terminal-marks-store.js +117 -0
  443. package/server/dist/terminal-osc-parser.js +159 -0
  444. package/server/dist/terminal-settings.js +282 -0
  445. package/server/dist/terminal-shell-integration.js +196 -0
  446. package/server/dist/ticket-broadcast.js +47 -0
  447. package/server/dist/ticket-store.js +397 -0
  448. package/server/dist/ticket-watcher.js +117 -0
  449. package/server/dist/types.js +10 -0
  450. package/server/dist/user-mcp-config.js +117 -0
  451. package/server/dist/util/cli-prompt.js +181 -0
  452. package/server/dist/util/secure-fs.js +50 -0
  453. package/server/dist/util/win-spawn.js +43 -0
  454. package/server/dist/webhook-manager.js +89 -0
  455. package/server/dist/ws-routing.js +47 -0
@@ -0,0 +1 @@
1
+ var e={configureAgents:`Configurar agentes de {{provider}}`,configureSubtitle:`Elige qué agentes instalar y cómo ejecutarlos.`,tabs:{agents:`Agentes`,models:`Modelos`},skipForNow:`Omitir por ahora`,install:`Instalar`,nextProvider:`Siguiente: {{provider}}`,installingProvider:`Instalando {{provider}}…`,installingSpecrails:`Instalando specrails...`,installingFromTemplates:`Instalando agentes desde plantillas`,waitingForOutput:`Esperando salida...`,checkpoints:{baseInstall:`Instalación base`,agentSelection:`Selección de agentes`,agentGeneration:`Generación de agentes`},steps:{configure:`Configurar`},summary:{agents:`Agentes`,agentSkills:`Skills de agente`,skills:`Skills`,openspecSkills:`Skills de OpenSpec`,legacyRemoved_one:`Eliminado {{count}} comando legacy <code>/specrails:*</code>`,legacyRemoved_other:`Eliminados {{count}} comandos legacy <code>/specrails:*</code>`},complete:{welcome:`Bienvenido a <spec>spec</spec><rails>rails</rails>`,configured:`<strong>{{projectName}}</strong> ya está configurado con flujos de desarrollo impulsados por IA. Tus agentes y comandos especializados están listos para usar.`,installedForEngines_one:`Instalado para {{count}} motor`,installedForEngines_other:`Instalado para {{count}} motores`,learnMore:`Aprende a sacar el máximo partido a specrails:`,continueToProject:`Continuar al proyecto`},error:{title:`La configuración ha fallado`,skipSetup:`Omitir configuración`,prereqMissing:`La configuración de SpecRails necesita Node.js, npm, npx y Git disponibles en el PATH antes de poder instalar este proyecto.`,prereqRetryHint:`Instala las herramientas que faltan, reinicia Specrails y reintenta la configuración.`}},t={title:`Añadir proyecto`,description:`Registra un directorio de proyecto para gestionarlo desde Specrails.`,noProviderDetected:`No se ha detectado ningún CLI de IA. Instala primero Claude Code o Codex CLI.`,pathLabel:`Ruta del proyecto`,pathPlaceholder:`/Users/yo/mi-proyecto`,pathHint:`Ruta absoluta a la raíz del proyecto`,browseForFolder:`Buscar carpeta`,selectProjectFolder:`Seleccionar carpeta del proyecto`,nameLabel:`Nombre para mostrar`,optional:`(opcional)`,namePlaceholder:`Mi proyecto`,nameHint:`Por defecto, el nombre del directorio`,providersLabel:`Proveedores de IA`,notFound:`no encontrado`,multiProviderHint:`Se configurarán ambos motores. El primero es el predeterminado del proyecto. No se puede cambiar después de la creación.`,singleProviderHint:`No se puede cambiar una vez creado el proyecto.`,adding:`Añadiendo...`,submit:`Añadir proyecto`,toolsRequired_one:`Se necesita {{tools}} para añadir un proyecto`,toolsRequired_other:`Se necesitan {{tools}} para añadir un proyecto`,errors:{pathRequired:`La ruta del proyecto es obligatoria`,selectProvider:`Selecciona al menos un proveedor de IA`,addFailed:`No se pudo añadir el proyecto`},toasts:{registered:`Proyecto "{{name}}" registrado`}},n={corruptedBundle:`bundle dañado — reinstala la app`,notInstalled:`no instalado`,failedToExecute:`encontrado pero no se pudo ejecutar`,failedToExecuteAt:`encontrado en {{path}} pero no se pudo ejecutar`,failedToExecuteWithError:`encontrado pero no se pudo ejecutar ({{error}})`,failedToExecuteAtWithError:`encontrado en {{path}} pero no se pudo ejecutar ({{error}})`,needsMinimum:`{{version}} encontrada — se necesita {{minVersion}}+`,unknownVersion:`desconocida`,installedLabel:`instalado`,verifyError:`No se pudieron verificar las herramientas de desarrollo en local — la instalación lo validará.`,allDetected:`Todas las herramientas necesarias detectadas`,bundleCorruptedTitle:`Bundle de la app dañado`,toolsRequired_one:`{{count}} herramienta de desarrollo necesaria`,toolsRequired_other:`{{count}} herramientas de desarrollo necesarias`,reinstallHint:`Reinstala la app Specrails para restaurar las herramientas incluidas.`,installMissingHint:`Instala las herramientas que faltan para continuar.`,moreInfo:`Más información`,bundledBadge:`incluida`},r={title:`Instalar herramientas de desarrollo`,description:`SpecRails necesita Node.js, npm, npx y Git en el PATH. Elige el snippet de tu SO, ejecútalo y pulsa "Ya lo he instalado, volver a comprobar".`,darwin:{intro:`Homebrew te da ambas herramientas en una línea. Si no tienes brew, usa las descargas oficiales.`,installNodeGit:`Instalar Node.js y Git con Homebrew`},win32:{intro:`Winget viene incluido en Windows 11 y en las versiones recientes de Windows 10. Abre PowerShell o Terminal y ejecuta:`,installNode:`Instalar Node.js LTS`,installGit:`Instalar Git`,note:`Tras la instalación, reinicia Specrails para que Windows actualice el PATH.`},linux:{intro:`Usa el gestor de paquetes de tu distro:`,debian:`Debian / Ubuntu`,fedora:`Fedora / RHEL`},links:{nodeOfficial:`Node.js (oficial)`,gitOfficial:`Git (oficial)`,gitWindows:`Git para Windows (oficial)`},showOtherPlatforms:`Mostrar otras plataformas`,hideOtherPlatforms:`Ocultar otras plataformas`,recheck:`Ya lo he instalado, volver a comprobar`,diagnostics:{copy:`Copiar diagnóstico`,copied:`Diagnóstico copiado`,failed:`Error al copiar`},corrupted:{title:`Bundle de la app dañado`,description:`No se pudieron verificar una o más herramientas incluidas (Node.js, Git).`,body:`Esta herramienta viene incluida con la app Specrails y no puede instalarse por separado. Si ves este mensaje, el bundle de la app puede estar dañado. Reinstala Specrails.`}},i={title:`Progreso de la configuración`,progress:`{{done}} de {{total}} completados`,rawLog_one:`Log sin procesar ({{count}} línea)`,rawLog_other:`Log sin procesar ({{count}} líneas)`},a={title:`Asistente de configuración`,subtitle:`Responde a las preguntas para configurar tu proyecto`,settingUp:`Configurando tu proyecto...`,placeholder:`Escribe una respuesta...`,keyboardHint:`Enter para enviar, Shift+Enter para nueva línea`},o={title:`Bienvenido a <spec>spec</spec><rails>rails</rails>`,description:`Specrails gestiona varios proyectos desde una única interfaz. Añade tu primer proyecto para empezar.`,addFirstProject:`Añade tu primer proyecto`},s={productTour:`Tour del producto`,stepCount:`Paso {{current}} de {{total}}`,goToStep:`Ir al paso {{step}}: {{label}}`,stepLabel:`Paso {{step}}`,dontShowAgain:`No volver a mostrar`,skipTour:`Saltar el tour`,getStarted:`Empezar`,flow:{addSpec:`Añade una spec`,dropInRail:`Suéltala en un rail`,hitPlay:`Dale a Play`,ship:`Ship`,architect:`Arquitecto`,developer:`Desarrollador`,reviewer:`Revisor`},welcome:{nav:`Bienvenida`,title:`Bienvenido a Specrails`,subtitle:`Tu centro de mando local para publicar software con agentes de IA`,intro:`Specrails convierte una idea en código publicado — y te permite <b>ver, dirigir y confiar en</b> cada paso. Redacta una spec hablando con una IA, suéltala en un rail de ejecución y dale a Play. El pipeline se encarga de la arquitectura, la implementación, la revisión y la pull request, retransmitiendo su trabajo en directo en todo momento.`,coreLoopLabel:`El bucle principal`,flowCaption:`Cada spec pasa automáticamente por <b>Arquitecto → Desarrollador → Revisor → Ship</b>.`,localNote:`<b>100 % local · un solo usuario · sin cuentas.</b> Todo se ejecuta en tu máquina. Tu código nunca sale del portátil a menos que <i>tú</i> lances un agente sobre él.`,tourNote:`Este tour rápido repasa todo lo que puede hacer la aplicación — alrededor de un minuto.`},authorSpecs:{nav:`Crea specs`,title:`Convierte ideas en specs`,subtitle:`Seis formas de capturar exactamente lo que quieres construir`,intro:`Una <b>spec</b> es una descripción del trabajo que quieres que se haga. Redáctala como mejor encaje en cada momento — desde una línea rápida hasta una conversación completa con la IA.`,exploreLabel:`Explore — conversa`,exploreBody:`Describe lo que quieres en un chat; un borrador en vivo se reconstruye en cada turno. Un slider de presets ajusta cuánto contexto del proyecto ve la IA — desde solo tu mensaje hasta el codebase completo más tus servidores MCP.`,quickLabel:`Quick — de una sola vez`,quickBody:`¿Ya sabes lo que quieres? Genera una spec completa en un solo turno. Opcionalmente, enriquécela con una Contract Layer: nombres exactos, formas de datos, invariantes y una lista de archivos a tocar para que los agentes no reinventen nada.`,websiteLabel:`Desde una web`,websiteBody:`Abre un navegador embebido. Selecciona un elemento al pasar el ratón o arrastra un rectángulo, y la captura, el DOM y el CSS aplicado se convierten en adjuntos. La versión de escritorio incluye su propio Chromium, así que funciona sin conexión.`,smashLabel:`SMASH para una épica grande`,smashBody:`Divide una spec grande en una familia de sub-specs más pequeñas con un clic — cada hija lleva un breve resumen en su tarjeta.`,draftsLabel:`Borradores y seguir editando`,draftsBody:`Aparca una exploración en curso como ticket en borrador y retómala más tarde; reabre cualquier spec en Explore para seguir refinándola.`,compareLabel:`Compara lado a lado`,compareBody:`Arrastra una spec al borde de la pantalla y se desliza un selector con tus otras specs — revisa dos a la vez, al estilo tablet.`},rails:{nav:`Ejecuta en rails`,title:`Ejecuta el pipeline sobre rails`,subtitle:`Organiza las specs en carriles y lanza los agentes`,intro:`El lado derecho del Dashboard son tus <b>Rails</b> — carriles de ejecución. Arrastra una tarjeta de spec a un rail y pulsa <play>▶ Play</play> para lanzar un job de implementación.`,jobLabel:`Qué ejecuta cada job`,flowCaption:`Cada fase retransmite sus logs en directo mientras trabaja.`,modeLabel:`Elige cómo se ejecuta un rail`,modeBody:`Cada rail elige un modo: <b>Implement</b> (el pipeline estructurado completo), <b>Batch</b> (varias specs en secuencia) o <b>Ultracode</b> (Claude trabaja de forma autónoma, sin pipeline fijo).`,profilesLabel:`Perfiles de agentes`,profilesBody:`Un catálogo declarativo por proyecto que decide qué agentes se ejecutan y qué modelo usa cada uno — se elige por rail y se congela por job para que el trabajo concurrente quede aislado.`,jobDetailLabel:`Detalle del job en directo`,jobDetailBody:`Cada job muestra una cabecera con la identidad del ticket, un contador de duración en directo y los turnos y tokens acumulados, con el coste definitivo resuelto al terminar.`,isolationLabel:`Muchos proyectos, aislados`,isolationBody:`Cada proyecto tiene su propia base de datos y su propia cola de jobs. Ejecuta proyectos distintos a la vez y cambia entre ellos desde la barra lateral izquierda — tu posición se recuerda por proyecto.`},providers:{nav:`Tu agente`,title:`Trae tu propio agente`,subtitle:`Claude Code y Codex, como motores de primera clase`,intro:`La aplicación trata <b>Claude Code</b> y <b>Codex CLI</b> como motores intercambiables tras un mismo contrato. Un proyecto puede instalar uno o ambos — la elección se hace en el momento de la instalación.`,table:{capability:`Capacidad`,streamingResume:`Streaming y reanudación de sesión`,native:`Nativo`,costReporting:`Informe de costes`,providerBilled:`Facturado por el proveedor`,estimated:`Estimado (~)`,telemetry:`Telemetría (OTEL)`,synthesized:`Sintetizada`,agentProfiles:`Perfiles de agentes`},calloutLabel:`Cuando ambos están instalados`,calloutBody:`Elige el motor <b>por spec, por rail o por lanzamiento de terminal</b>. La aplicación recuerda tu última elección por proyecto. El coste de Codex se estima con una tarifa local y siempre se marca con <mono>~</mono>.`},cost:{nav:`Controla el coste`,title:`Controla cada céntimo`,subtitle:`Cada invocación facturable, registrada y visualizada`,intro:`Cada invocación de IA — en rails, Quick, Explore, ediciones con IA, SMASH y resúmenes de archivos — se registra tanto para <b>Claude como para Codex</b>. Se acabó adivinar lo que cuestan los agentes.`,analyticsLabel:`Página de analítica`,analyticsBody:`Un hero de burn-rate, línea temporal diaria, top de tickets, desglose por modelo y un scatter de coste frente a turnos. Filtra por periodo (7d / 30d / 90d / Todo) y por superficie.`,perTicketLabel:`Gasto por ticket`,perTicketBody:`El detalle de cada spec muestra cuánto costó y cuántos turnos llevó, con enlace directo a la analítica filtrada por ese ticket.`,honestLabel:`Números honestos`,honestBody:`El coste de Claude es la cifra facturada por el proveedor; el de Codex es estimado y se marca con <mono>~</mono>. Los totales de tokens incluyen los niveles de caché, así que las cifras cuadran de verdad.`,budgetsLabel:`Presupuestos y alertas`,budgetsBody:`Define un presupuesto diario y una alerta de coste por job; la aplicación pausa la cola automáticamente cuando cruzas la línea. Exporta lo que quieras a CSV o JSON.`},workspace:{nav:`Espacio de trabajo`,title:`Hazlo tu espacio de trabajo`,subtitle:`Todo lo que necesitas sin salir de la ventana`,terminalLabel:`Panel de terminal`,terminalBody:`Un terminal real al estilo VS Code en la parte inferior (<mod></mod> <j></j>) — renderizado WebGL, búsqueda, imágenes inline, arrastrar y soltar rutas e integración con el shell. Hasta 10 sesiones por proyecto.`,codeLabel:`Explorador de código`,codeBody:`Un árbol de archivos de solo lectura y un visor Monaco con resúmenes de IA en lenguaje llano y chips de procedencia «tocado por IA», para que cualquiera pueda seguir qué cambió y por qué.`,integrationsLabel:`Integraciones`,integrationsBody:`Un marketplace por proyecto de integraciones MCP — la navegación semántica de código de Serena viene incluida. Las instalaciones son aditivas: añadir una nunca altera otra.`,themesLabel:`Temas`,themesBody:`Cinco temas integrados — specrails (por defecto), dracula, aurora-light, obsidian-dark y matrix — aplicados antes de que la UI pinte, así no hay parpadeo. Cámbialos en Ajustes → Apariencia.`,chatsLabel:`Chats minimizables`,chatsBody:`Aparca una sesión de Explore o AI Edit en un chip del dock y retómala más tarde — nunca se pierde entre recargas o cambios de proyecto.`,desktopLabel:`Escritorio o navegador`,desktopBody:`Ejecuta Specrails en tu navegador o descarga la app de escritorio firmada (macOS y Windows), que incluye su propio servidor y runtimes.`},moveFast:{nav:`Ve rápido`,title:`Muévete a la velocidad del pensamiento`,subtitle:`Teclado primero, en todas partes`,paletteLabel:`Paleta de comandos`,paletteShortcut:`<f>Pulsa</f> <mod></mod> <m>+</m> <k></k> <m>en cualquier parte</m>`,paletteBody:`Cambia de proyecto, ejecuta comandos de spec, salta a cualquier página y encuentra jobs recientes — todo con búsqueda difusa.`,terminalLabel:`Panel de terminal`,terminalBody:`Alterna con <mod></mod> <j></j>.`,shortcutsLabel:`Todos los atajos`,shortcutsBody:`Pulsa <q></q> para ver la chuleta completa.`,chatLabel:`Barra lateral de chat`,chatBody:`Alterna la barra lateral derecha con <mod></mod> <bkey></bkey>.`,projectsLabel:`Barra lateral de proyectos`,projectsBody:`Alterna la barra lateral Arc izquierda con <alt></alt> <mod></mod> <bkey></bkey>.`,outro:`<b>Fin del tour.</b> Añade un proyecto desde la barra lateral izquierda y publica tu primera spec. Puedes reabrir este recorrido cuando quieras desde Ajustes.`}},c={wizard:e,addProject:t,prerequisites:n,instructions:r,checkpoints:i,setupChat:a,welcome:o,onboarding:s};export{t as addProject,i as checkpoints,c as default,r as instructions,s as onboarding,n as prerequisites,a as setupChat,o as welcome,e as wizard};
@@ -0,0 +1 @@
1
+ var e={configureAgents:`{{provider}} エージェントを設定`,configureSubtitle:`インストールするエージェントと実行方法を選択してください。`,tabs:{agents:`エージェント`,models:`モデル`},skipForNow:`今はスキップ`,install:`インストール`,nextProvider:`次へ: {{provider}}`,installingProvider:`{{provider}} をインストール中…`,installingSpecrails:`specrails をインストール中…`,installingFromTemplates:`テンプレートからエージェントをインストール中`,waitingForOutput:`出力を待機中…`,checkpoints:{baseInstall:`ベースインストール`,agentSelection:`エージェント選択`,agentGeneration:`エージェント生成`},steps:{configure:`設定`},summary:{agents:`エージェント`,agentSkills:`エージェントスキル`,skills:`スキル`,openspecSkills:`OpenSpec スキル`,legacyRemoved_one:`レガシーの <code>/specrails:*</code> コマンドを {{count}} 件削除しました`,legacyRemoved_other:`レガシーの <code>/specrails:*</code> コマンドを {{count}} 件削除しました`},complete:{welcome:`<spec>spec</spec><rails>rails</rails> へようこそ`,configured:`<strong>{{projectName}}</strong> に AI 駆動の開発ワークフローが設定されました。専用のエージェントとコマンドが利用できます。`,installedForEngines_one:`{{count}} 個のエンジンにインストールしました`,installedForEngines_other:`{{count}} 個のエンジンにインストールしました`,learnMore:`specrails を最大限に活用する方法:`,continueToProject:`プロジェクトへ進む`},error:{title:`セットアップに失敗しました`,skipSetup:`セットアップをスキップ`,prereqMissing:`SpecRails のセットアップには、PATH 上で利用可能な Node.js、npm、npx、Git が必要です。`,prereqRetryHint:`不足しているツールをインストールし、Specrails を再起動してからセットアップを再試行してください。`}},t={title:`プロジェクトを追加`,description:`プロジェクトディレクトリを登録して Specrails から管理します。`,noProviderDetected:`AI CLI が見つかりません。まず Claude Code または Codex CLI をインストールしてください。`,pathLabel:`プロジェクトパス`,pathPlaceholder:`/Users/me/my-project`,pathHint:`プロジェクトルートへの絶対パス`,browseForFolder:`フォルダを参照`,selectProjectFolder:`プロジェクトフォルダを選択`,nameLabel:`表示名`,optional:`(任意)`,namePlaceholder:`マイプロジェクト`,nameHint:`デフォルトはディレクトリ名`,providersLabel:`AI プロバイダー`,notFound:`見つかりません`,multiProviderHint:`両方のエンジンがセットアップされます。最初のものがプロジェクトのデフォルトです。作成後は変更できません。`,singleProviderHint:`プロジェクト作成後は変更できません。`,adding:`追加中…`,submit:`プロジェクトを追加`,toolsRequired_one:`プロジェクトの追加には {{tools}} が必要です`,toolsRequired_other:`プロジェクトの追加には {{tools}} が必要です`,errors:{pathRequired:`プロジェクトパスは必須です`,selectProvider:`AI プロバイダーを1つ以上選択してください`,addFailed:`プロジェクトの追加に失敗しました`},toasts:{registered:`プロジェクト「{{name}}」を登録しました`}},n={corruptedBundle:`バンドル破損 — アプリを再インストールしてください`,notInstalled:`未インストール`,failedToExecute:`見つかりましたが実行できませんでした`,failedToExecuteAt:`{{path}} に見つかりましたが実行できませんでした`,failedToExecuteWithError:`見つかりましたが実行できませんでした({{error}})`,failedToExecuteAtWithError:`{{path}} に見つかりましたが実行できませんでした({{error}})`,needsMinimum:`{{version}} が見つかりました — {{minVersion}} 以上が必要です`,unknownVersion:`不明`,installedLabel:`インストール済み`,verifyError:`開発者ツールをローカルで検証できませんでした — インストール時に検証されます。`,allDetected:`必要なツールはすべて検出されました`,bundleCorruptedTitle:`アプリバンドルが破損しています`,toolsRequired_one:`{{count}} 個の開発者ツールが必要です`,toolsRequired_other:`{{count}} 個の開発者ツールが必要です`,reinstallHint:`Specrails アプリを再インストールしてバンドルツールを復元してください。`,installMissingHint:`続行するには不足しているツールをインストールしてください。`,moreInfo:`詳細`,bundledBadge:`バンドル`},r={title:`開発者ツールをインストール`,description:`SpecRails には PATH 上の Node.js、npm、npx、Git が必要です。お使いの OS のスニペットを選んで実行し、「インストールしました。再チェック」をクリックしてください。`,darwin:{intro:`Homebrew なら1行で両方のツールをインストールできます。brew がない場合は公式ダウンロードを利用してください。`,installNodeGit:`Homebrew で Node.js と Git をインストール`},win32:{intro:`Winget は Windows 11 および最近の Windows 10 に同梱されています。PowerShell またはターミナルを開いて実行してください:`,installNode:`Node.js LTS をインストール`,installGit:`Git をインストール`,note:`インストール後、Windows が PATH を更新するように Specrails を再起動してください。`},linux:{intro:`ディストリビューションのパッケージマネージャーを使用してください:`,debian:`Debian / Ubuntu`,fedora:`Fedora / RHEL`},links:{nodeOfficial:`Node.js(公式)`,gitOfficial:`Git(公式)`,gitWindows:`Git for Windows(公式)`},showOtherPlatforms:`他のプラットフォームを表示`,hideOtherPlatforms:`他のプラットフォームを非表示`,recheck:`インストールしました。再チェック`,diagnostics:{copy:`診断情報をコピー`,copied:`診断情報をコピーしました`,failed:`コピーに失敗しました`},corrupted:{title:`アプリバンドルが破損しています`,description:`バンドルされたツール(Node.js、Git)の一部を検証できませんでした。`,body:`このツールは Specrails アプリにバンドルされており、個別にインストールできません。このメッセージが表示される場合、アプリバンドルが破損している可能性があります。Specrails を再インストールしてください。`}},i={title:`セットアップの進行状況`,progress:`{{done}} / {{total}} 完了`,rawLog_one:`生ログ({{count}} 行)`,rawLog_other:`生ログ({{count}} 行)`},a={title:`セットアップアシスタント`,subtitle:`プロンプトに応答してプロジェクトを設定します`,settingUp:`プロジェクトをセットアップ中…`,placeholder:`返信を入力…`,keyboardHint:`Enter で送信、Shift+Enter で改行`},o={title:`<spec>spec</spec><rails>rails</rails> へようこそ`,description:`Specrails は複数のプロジェクトを単一のインターフェースで管理します。最初のプロジェクトを追加して始めましょう。`,addFirstProject:`最初のプロジェクトを追加`},s=JSON.parse(`{"productTour":"プロダクトツアー","stepCount":"ステップ {{current}} / {{total}}","goToStep":"ステップ {{step}} へ移動: {{label}}","stepLabel":"ステップ {{step}}","dontShowAgain":"今後表示しない","skipTour":"ツアーをスキップ","getStarted":"始める","flow":{"addSpec":"スペックを追加","dropInRail":"レールにドロップ","hitPlay":"再生を押す","ship":"Ship","architect":"アーキテクト","developer":"デベロッパー","reviewer":"レビュアー"},"welcome":{"nav":"ようこそ","title":"Specrails へようこそ","subtitle":"AI エージェントでソフトウェアを出荷するためのローカルコックピット","intro":"Specrails はアイデアを出荷済みのコードに変えます — そのすべてのステップを<b>見て、操り、信頼</b>できます。AI と対話してスペックを下書きし、実行レールにドロップして再生を押すだけ。パイプラインがアーキテクチャ、実装、レビュー、プルリクエストまで処理し、その作業をライブでストリーミングします。","coreLoopLabel":"コアループ","flowCaption":"各スペックは <b>アーキテクト → デベロッパー → レビュアー → Ship</b> を自動で流れます。","localNote":"<b>100% ローカル · シングルユーザー · アカウント不要。</b>すべてあなたのマシン上で動作します。<i>あなた</i>がエージェントを起動しない限り、コードがラップトップの外に出ることはありません。","tourNote":"このクイックツアーではアプリの全機能を紹介します — 所要時間は約1分です。"},"authorSpecs":{"nav":"スペック作成","title":"アイデアをスペックに変える","subtitle":"作りたいものを正確に捉える6つの方法","intro":"<b>スペック</b>とは、実行してほしい作業の記述です。短い一文から AI との本格的な対話まで、その時々に合った方法で作成できます。","exploreLabel":"Explore — 対話する","exploreBody":"作りたいものをチャットで説明すると、ライブドラフトがターンごとに再構築されます。プリセットスライダーで AI に見せるプロジェクトコンテキストの量を調整できます — メッセージのみから、コードベース全体 + MCP サーバーまで。","quickLabel":"Quick — 一発生成","quickBody":"作りたいものが明確なら、1ターンで完全なスペックを生成できます。オプションで Contract Layer によるエンリッチも可能: 正確な名前、データ形状、不変条件、変更ファイルリストにより、エージェントが車輪の再発明をしません。","websiteLabel":"ウェブサイトから","websiteBody":"埋め込みブラウザが開きます。要素をホバー選択するか矩形をドラッグすると、スクリーンショット、DOM、適用された CSS が添付ファイルになります。デスクトップ版は独自の Chromium を同梱しているのでオフラインでも動作します。","smashLabel":"大きなエピックを SMASH","smashBody":"大きなスペックをワンクリックで小さなサブスペック群に分解します — 各子スペックのカードには短い要約が付きます。","draftsLabel":"下書きと編集の再開","draftsBody":"進行中の探索を下書きチケットとして保存し、後で再開できます。どのスペックも Explore で開き直して改良を続けられます。","compareLabel":"並べて比較","compareBody":"スペックを画面の端にドラッグすると、他のスペックのピッカーがスライドインします — タブレット風に2つを並べてレビューできます。"},"rails":{"nav":"レールで実行","title":"パイプラインをレールで実行","subtitle":"スペックをレーンに整理してエージェントを起動","intro":"ダッシュボードの右側が<b>レール</b> — 実行レーンです。スペックカードをレールにドラッグして <play>▶ 再生</play> を押すと、実装ジョブが起動します。","jobLabel":"各ジョブの実行内容","flowCaption":"各フェーズは作業中のログをライブでストリーミングします。","modeLabel":"レールの実行方法を選択","modeBody":"各レールはモードを選べます: <b>Implement</b>(完全な構造化パイプライン)、<b>Batch</b>(複数スペックを順次実行)、<b>Ultracode</b>(Claude が固定パイプラインなしで自律的に作業)。","profilesLabel":"エージェントプロファイル","profilesBody":"どのエージェントを実行し、それぞれどのモデルを使うかを決めるプロジェクトごとの宣言的カタログ — レールごとに選択され、ジョブごとにスナップショットされるため並行作業が分離されます。","jobDetailLabel":"ライブジョブ詳細","jobDetailBody":"各ジョブにはチケット識別ヘッダー、ライブの経過時間ティッカー、進行中のターン/トークン数が表示され、確定コストは終了時に解決されます。","isolationLabel":"複数プロジェクト、完全分離","isolationBody":"各プロジェクトは独自のデータベースとジョブキューを持ちます。複数のプロジェクトを同時に実行し、左サイドバーから切り替えられます — 位置はプロジェクトごとに記憶されます。"},"providers":{"nav":"あなたのエージェント","title":"自分のエージェントを持ち込む","subtitle":"Claude Code と Codex をファーストクラスのエンジンとして","intro":"アプリは <b>Claude Code</b> と <b>Codex CLI</b> を、単一のコントラクトの背後で交換可能なエンジンとして扱います。プロジェクトには片方または両方をインストールでき、選択はインストール時に行います。","table":{"capability":"機能","streamingResume":"ストリーミングとセッション再開","native":"ネイティブ","costReporting":"コストレポート","providerBilled":"プロバイダー請求額","estimated":"推定(~)","telemetry":"テレメトリ(OTEL)","synthesized":"合成","agentProfiles":"エージェントプロファイル"},"calloutLabel":"両方インストールされている場合","calloutBody":"<b>スペックごと、レールごと、ターミナル起動ごと</b>にエンジンを選べます。アプリはプロジェクトごとに最後の選択を記憶します。Codex のコストはローカルのレートカードからの推定で、常に <mono>~</mono> が付きます。"},"cost":{"nav":"コスト追跡","title":"1セント単位で追跡","subtitle":"課金対象のすべての呼び出しを記録・可視化","intro":"レール、Quick、Explore、AI 編集、SMASH、ファイル要約にわたるすべての AI 呼び出しが <b>Claude と Codex の両方</b>で記録されます。エージェントのコストを推測する必要はもうありません。","analyticsLabel":"分析ページ","analyticsBody":"バーンレートのヒーロー表示、日次タイムライン、トップチケット、モデル別内訳、コスト対ターン数の散布図。期間(7日 / 30日 / 90日 / 全期間)とサーフェスでフィルタできます。","perTicketLabel":"チケット別の支出","perTicketBody":"各スペックの詳細にはコストと所要ターン数が表示され、そのチケットでフィルタした分析ページへディープリンクします。","honestLabel":"正直な数字","honestBody":"Claude のコストはプロバイダー請求額そのもの。Codex は推定で <mono>~</mono> が付きます。トークン合計にはキャッシュ階層が含まれるため、数字がきちんと一致します。","budgetsLabel":"予算とアラート","budgetsBody":"日次予算とジョブ単位のコストアラートを設定でき、上限を超えるとアプリが自動でキューを一時停止します。すべて CSV または JSON にエクスポートできます。"},"workspace":{"nav":"ワークスペース","title":"あなたのワークスペースに","subtitle":"ウィンドウを離れずに必要なすべてを","terminalLabel":"ターミナルパネル","terminalBody":"画面下部の本格的な VS Code スタイルのターミナル(<mod></mod> <j></j>)— WebGL レンダリング、検索、インライン画像、パスのドラッグ&ドロップ、シェル統合。プロジェクトごとに最大10セッション。","codeLabel":"コードエクスプローラー","codeBody":"読み取り専用のファイルツリーと Monaco ビューアに、平易な AI 要約と「AI が変更」の来歴チップが付き、誰でも何がなぜ変わったかを追えます。","integrationsLabel":"インテグレーション","integrationsBody":"プロジェクトごとの MCP インテグレーションのマーケットプレイス — Serena のセマンティックコードナビゲーションを同梱。インストールは加算式で、追加しても他に影響しません。","themesLabel":"テーマ","themesBody":"5つの組み込みテーマ — specrails(デフォルト)、dracula、aurora-light、obsidian-dark、matrix — を UI の描画前に適用するため、フラッシュがありません。設定 → 外観で変更できます。","chatsLabel":"最小化できるチャット","chatsBody":"Explore や AI 編集のセッションをドックのチップに格納して後で再開 — リフレッシュやプロジェクト切り替えで失われることはありません。","desktopLabel":"デスクトップまたはブラウザ","desktopBody":"ブラウザで Specrails を実行するか、サーバーとランタイムを同梱した署名済みデスクトップアプリ(macOS と Windows)を入手できます。"},"moveFast":{"nav":"高速操作","title":"思考のスピードで動く","subtitle":"どこでもキーボードファースト","paletteLabel":"コマンドパレット","paletteShortcut":"<f>どこでも</f> <mod></mod> <m>+</m> <k></k> <m>を押す</m>","paletteBody":"プロジェクトの切り替え、スペックコマンドの実行、任意のページへのジャンプ、最近のジョブの検索 — すべてあいまい検索で。","terminalLabel":"ターミナルパネル","terminalBody":"<mod></mod> <j></j> で切り替え。","shortcutsLabel":"全ショートカット","shortcutsBody":"<q></q> を押すと完全なチートシートが表示されます。","chatLabel":"チャットサイドバー","chatBody":"<mod></mod> <bkey></bkey> で右サイドバーを切り替え。","projectsLabel":"プロジェクトサイドバー","projectsBody":"<alt></alt> <mod></mod> <bkey></bkey> で左の Arc サイドバーを切り替え。","outro":"<b>ツアーは以上です。</b>左サイドバーからプロジェクトを追加して、最初のスペックを出荷しましょう。このウォークスルーは設定からいつでも再表示できます。"}}`),c={wizard:e,addProject:t,prerequisites:n,instructions:r,checkpoints:i,setupChat:a,welcome:o,onboarding:s};export{t as addProject,i as checkpoints,c as default,r as instructions,s as onboarding,n as prerequisites,a as setupChat,o as welcome,e as wizard};
@@ -0,0 +1 @@
1
+ var e={comments:{lineComment:`#`},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`]],autoClosingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`'`,close:`'`},{open:"`",close:"`"}],surroundingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`'`,close:`'`},{open:"`",close:"`"}]},t={defaultToken:``,ignoreCase:!0,tokenPostfix:`.shell`,brackets:[{token:`delimiter.bracket`,open:`{`,close:`}`},{token:`delimiter.parenthesis`,open:`(`,close:`)`},{token:`delimiter.square`,open:`[`,close:`]`}],keywords:[`if`,`then`,`do`,`else`,`elif`,`while`,`until`,`for`,`in`,`esac`,`fi`,`fin`,`fil`,`done`,`exit`,`set`,`unset`,`export`,`function`],builtins:`ab.awk.bash.beep.cat.cc.cd.chown.chmod.chroot.clear.cp.curl.cut.diff.echo.find.gawk.gcc.get.git.grep.hg.kill.killall.ln.ls.make.mkdir.openssl.mv.nc.node.npm.ping.ps.restart.rm.rmdir.sed.service.sh.shopt.shred.source.sort.sleep.ssh.start.stop.su.sudo.svn.tee.telnet.top.touch.vi.vim.wall.wc.wget.who.write.yes.zsh`.split(`.`),startingWithDash:/\-+\w+/,identifiersWithDashes:/[a-zA-Z]\w+(?:@startingWithDash)+/,symbols:/[=><!~?&|+\-*\/\^;\.,]+/,tokenizer:{root:[[/@identifiersWithDashes/,``],[/(\s)((?:@startingWithDash)+)/,[`white`,`attribute.name`]],[/[a-zA-Z]\w*/,{cases:{"@keywords":`keyword`,"@builtins":`type.identifier`,"@default":``}}],{include:`@whitespace`},{include:`@strings`},{include:`@parameters`},{include:`@heredoc`},[/[{}\[\]()]/,`@brackets`],[/@symbols/,`delimiter`],{include:`@numbers`},[/[,;]/,`delimiter`]],whitespace:[[/\s+/,`white`],[/(^#!.*$)/,`metatag`],[/(^#.*$)/,`comment`]],numbers:[[/\d*\.\d+([eE][\-+]?\d+)?/,`number.float`],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,`number.hex`],[/\d+/,`number`]],strings:[[/'/,`string`,`@stringBody`],[/"/,`string`,`@dblStringBody`]],stringBody:[[/'/,`string`,`@popall`],[/./,`string`]],dblStringBody:[[/"/,`string`,`@popall`],[/./,`string`]],heredoc:[[/(<<[-<]?)(\s*)(['"`]?)([\w\-]+)(['"`]?)/,[`constants`,`white`,`string.heredoc.delimiter`,`string.heredoc`,`string.heredoc.delimiter`]]],parameters:[[/\$\d+/,`variable.predefined`],[/\$\w+/,`variable`],[/\$[*@#?\-$!0_]/,`variable`],[/\$'/,`variable`,`@parameterBodyQuote`],[/\$"/,`variable`,`@parameterBodyDoubleQuote`],[/\$\(/,`variable`,`@parameterBodyParen`],[/\$\{/,`variable`,`@parameterBodyCurlyBrace`]],parameterBodyQuote:[[/[^#:%*@\-!_']+/,`variable`],[/[#:%*@\-!_]/,`delimiter`],[/[']/,`variable`,`@pop`]],parameterBodyDoubleQuote:[[/[^#:%*@\-!_"]+/,`variable`],[/[#:%*@\-!_]/,`delimiter`],[/["]/,`variable`,`@pop`]],parameterBodyParen:[[/[^#:%*@\-!_)]+/,`variable`],[/[#:%*@\-!_]/,`delimiter`],[/[)]/,`variable`,`@pop`]],parameterBodyCurlyBrace:[[/[^#:%*@\-!_}]+/,`variable`],[/[#:%*@\-!_]/,`delimiter`],[/[}]/,`variable`,`@pop`]]}};export{e as conf,t as language};
@@ -0,0 +1 @@
1
+ var e={comments:{lineComment:`//`,blockComment:[`/*`,`*/`]},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`],[`<`,`>`]],autoClosingPairs:[{open:`"`,close:`"`,notIn:[`string`,`comment`]},{open:`{`,close:`}`,notIn:[`string`,`comment`]},{open:`[`,close:`]`,notIn:[`string`,`comment`]},{open:`(`,close:`)`,notIn:[`string`,`comment`]}]},t={defaultToken:``,tokenPostfix:`.sol`,brackets:[{token:`delimiter.curly`,open:`{`,close:`}`},{token:`delimiter.parenthesis`,open:`(`,close:`)`},{token:`delimiter.square`,open:`[`,close:`]`},{token:`delimiter.angle`,open:`<`,close:`>`}],keywords:`pragma.solidity.contract.library.using.struct.function.modifier.constructor.address.string.bool.Int.Uint.Byte.Fixed.Ufixed.int.int8.int16.int24.int32.int40.int48.int56.int64.int72.int80.int88.int96.int104.int112.int120.int128.int136.int144.int152.int160.int168.int176.int184.int192.int200.int208.int216.int224.int232.int240.int248.int256.uint.uint8.uint16.uint24.uint32.uint40.uint48.uint56.uint64.uint72.uint80.uint88.uint96.uint104.uint112.uint120.uint128.uint136.uint144.uint152.uint160.uint168.uint176.uint184.uint192.uint200.uint208.uint216.uint224.uint232.uint240.uint248.uint256.byte.bytes.bytes1.bytes2.bytes3.bytes4.bytes5.bytes6.bytes7.bytes8.bytes9.bytes10.bytes11.bytes12.bytes13.bytes14.bytes15.bytes16.bytes17.bytes18.bytes19.bytes20.bytes21.bytes22.bytes23.bytes24.bytes25.bytes26.bytes27.bytes28.bytes29.bytes30.bytes31.bytes32.fixed.fixed0x8.fixed0x16.fixed0x24.fixed0x32.fixed0x40.fixed0x48.fixed0x56.fixed0x64.fixed0x72.fixed0x80.fixed0x88.fixed0x96.fixed0x104.fixed0x112.fixed0x120.fixed0x128.fixed0x136.fixed0x144.fixed0x152.fixed0x160.fixed0x168.fixed0x176.fixed0x184.fixed0x192.fixed0x200.fixed0x208.fixed0x216.fixed0x224.fixed0x232.fixed0x240.fixed0x248.fixed0x256.fixed8x8.fixed8x16.fixed8x24.fixed8x32.fixed8x40.fixed8x48.fixed8x56.fixed8x64.fixed8x72.fixed8x80.fixed8x88.fixed8x96.fixed8x104.fixed8x112.fixed8x120.fixed8x128.fixed8x136.fixed8x144.fixed8x152.fixed8x160.fixed8x168.fixed8x176.fixed8x184.fixed8x192.fixed8x200.fixed8x208.fixed8x216.fixed8x224.fixed8x232.fixed8x240.fixed8x248.fixed16x8.fixed16x16.fixed16x24.fixed16x32.fixed16x40.fixed16x48.fixed16x56.fixed16x64.fixed16x72.fixed16x80.fixed16x88.fixed16x96.fixed16x104.fixed16x112.fixed16x120.fixed16x128.fixed16x136.fixed16x144.fixed16x152.fixed16x160.fixed16x168.fixed16x176.fixed16x184.fixed16x192.fixed16x200.fixed16x208.fixed16x216.fixed16x224.fixed16x232.fixed16x240.fixed24x8.fixed24x16.fixed24x24.fixed24x32.fixed24x40.fixed24x48.fixed24x56.fixed24x64.fixed24x72.fixed24x80.fixed24x88.fixed24x96.fixed24x104.fixed24x112.fixed24x120.fixed24x128.fixed24x136.fixed24x144.fixed24x152.fixed24x160.fixed24x168.fixed24x176.fixed24x184.fixed24x192.fixed24x200.fixed24x208.fixed24x216.fixed24x224.fixed24x232.fixed32x8.fixed32x16.fixed32x24.fixed32x32.fixed32x40.fixed32x48.fixed32x56.fixed32x64.fixed32x72.fixed32x80.fixed32x88.fixed32x96.fixed32x104.fixed32x112.fixed32x120.fixed32x128.fixed32x136.fixed32x144.fixed32x152.fixed32x160.fixed32x168.fixed32x176.fixed32x184.fixed32x192.fixed32x200.fixed32x208.fixed32x216.fixed32x224.fixed40x8.fixed40x16.fixed40x24.fixed40x32.fixed40x40.fixed40x48.fixed40x56.fixed40x64.fixed40x72.fixed40x80.fixed40x88.fixed40x96.fixed40x104.fixed40x112.fixed40x120.fixed40x128.fixed40x136.fixed40x144.fixed40x152.fixed40x160.fixed40x168.fixed40x176.fixed40x184.fixed40x192.fixed40x200.fixed40x208.fixed40x216.fixed48x8.fixed48x16.fixed48x24.fixed48x32.fixed48x40.fixed48x48.fixed48x56.fixed48x64.fixed48x72.fixed48x80.fixed48x88.fixed48x96.fixed48x104.fixed48x112.fixed48x120.fixed48x128.fixed48x136.fixed48x144.fixed48x152.fixed48x160.fixed48x168.fixed48x176.fixed48x184.fixed48x192.fixed48x200.fixed48x208.fixed56x8.fixed56x16.fixed56x24.fixed56x32.fixed56x40.fixed56x48.fixed56x56.fixed56x64.fixed56x72.fixed56x80.fixed56x88.fixed56x96.fixed56x104.fixed56x112.fixed56x120.fixed56x128.fixed56x136.fixed56x144.fixed56x152.fixed56x160.fixed56x168.fixed56x176.fixed56x184.fixed56x192.fixed56x200.fixed64x8.fixed64x16.fixed64x24.fixed64x32.fixed64x40.fixed64x48.fixed64x56.fixed64x64.fixed64x72.fixed64x80.fixed64x88.fixed64x96.fixed64x104.fixed64x112.fixed64x120.fixed64x128.fixed64x136.fixed64x144.fixed64x152.fixed64x160.fixed64x168.fixed64x176.fixed64x184.fixed64x192.fixed72x8.fixed72x16.fixed72x24.fixed72x32.fixed72x40.fixed72x48.fixed72x56.fixed72x64.fixed72x72.fixed72x80.fixed72x88.fixed72x96.fixed72x104.fixed72x112.fixed72x120.fixed72x128.fixed72x136.fixed72x144.fixed72x152.fixed72x160.fixed72x168.fixed72x176.fixed72x184.fixed80x8.fixed80x16.fixed80x24.fixed80x32.fixed80x40.fixed80x48.fixed80x56.fixed80x64.fixed80x72.fixed80x80.fixed80x88.fixed80x96.fixed80x104.fixed80x112.fixed80x120.fixed80x128.fixed80x136.fixed80x144.fixed80x152.fixed80x160.fixed80x168.fixed80x176.fixed88x8.fixed88x16.fixed88x24.fixed88x32.fixed88x40.fixed88x48.fixed88x56.fixed88x64.fixed88x72.fixed88x80.fixed88x88.fixed88x96.fixed88x104.fixed88x112.fixed88x120.fixed88x128.fixed88x136.fixed88x144.fixed88x152.fixed88x160.fixed88x168.fixed96x8.fixed96x16.fixed96x24.fixed96x32.fixed96x40.fixed96x48.fixed96x56.fixed96x64.fixed96x72.fixed96x80.fixed96x88.fixed96x96.fixed96x104.fixed96x112.fixed96x120.fixed96x128.fixed96x136.fixed96x144.fixed96x152.fixed96x160.fixed104x8.fixed104x16.fixed104x24.fixed104x32.fixed104x40.fixed104x48.fixed104x56.fixed104x64.fixed104x72.fixed104x80.fixed104x88.fixed104x96.fixed104x104.fixed104x112.fixed104x120.fixed104x128.fixed104x136.fixed104x144.fixed104x152.fixed112x8.fixed112x16.fixed112x24.fixed112x32.fixed112x40.fixed112x48.fixed112x56.fixed112x64.fixed112x72.fixed112x80.fixed112x88.fixed112x96.fixed112x104.fixed112x112.fixed112x120.fixed112x128.fixed112x136.fixed112x144.fixed120x8.fixed120x16.fixed120x24.fixed120x32.fixed120x40.fixed120x48.fixed120x56.fixed120x64.fixed120x72.fixed120x80.fixed120x88.fixed120x96.fixed120x104.fixed120x112.fixed120x120.fixed120x128.fixed120x136.fixed128x8.fixed128x16.fixed128x24.fixed128x32.fixed128x40.fixed128x48.fixed128x56.fixed128x64.fixed128x72.fixed128x80.fixed128x88.fixed128x96.fixed128x104.fixed128x112.fixed128x120.fixed128x128.fixed136x8.fixed136x16.fixed136x24.fixed136x32.fixed136x40.fixed136x48.fixed136x56.fixed136x64.fixed136x72.fixed136x80.fixed136x88.fixed136x96.fixed136x104.fixed136x112.fixed136x120.fixed144x8.fixed144x16.fixed144x24.fixed144x32.fixed144x40.fixed144x48.fixed144x56.fixed144x64.fixed144x72.fixed144x80.fixed144x88.fixed144x96.fixed144x104.fixed144x112.fixed152x8.fixed152x16.fixed152x24.fixed152x32.fixed152x40.fixed152x48.fixed152x56.fixed152x64.fixed152x72.fixed152x80.fixed152x88.fixed152x96.fixed152x104.fixed160x8.fixed160x16.fixed160x24.fixed160x32.fixed160x40.fixed160x48.fixed160x56.fixed160x64.fixed160x72.fixed160x80.fixed160x88.fixed160x96.fixed168x8.fixed168x16.fixed168x24.fixed168x32.fixed168x40.fixed168x48.fixed168x56.fixed168x64.fixed168x72.fixed168x80.fixed168x88.fixed176x8.fixed176x16.fixed176x24.fixed176x32.fixed176x40.fixed176x48.fixed176x56.fixed176x64.fixed176x72.fixed176x80.fixed184x8.fixed184x16.fixed184x24.fixed184x32.fixed184x40.fixed184x48.fixed184x56.fixed184x64.fixed184x72.fixed192x8.fixed192x16.fixed192x24.fixed192x32.fixed192x40.fixed192x48.fixed192x56.fixed192x64.fixed200x8.fixed200x16.fixed200x24.fixed200x32.fixed200x40.fixed200x48.fixed200x56.fixed208x8.fixed208x16.fixed208x24.fixed208x32.fixed208x40.fixed208x48.fixed216x8.fixed216x16.fixed216x24.fixed216x32.fixed216x40.fixed224x8.fixed224x16.fixed224x24.fixed224x32.fixed232x8.fixed232x16.fixed232x24.fixed240x8.fixed240x16.fixed248x8.ufixed.ufixed0x8.ufixed0x16.ufixed0x24.ufixed0x32.ufixed0x40.ufixed0x48.ufixed0x56.ufixed0x64.ufixed0x72.ufixed0x80.ufixed0x88.ufixed0x96.ufixed0x104.ufixed0x112.ufixed0x120.ufixed0x128.ufixed0x136.ufixed0x144.ufixed0x152.ufixed0x160.ufixed0x168.ufixed0x176.ufixed0x184.ufixed0x192.ufixed0x200.ufixed0x208.ufixed0x216.ufixed0x224.ufixed0x232.ufixed0x240.ufixed0x248.ufixed0x256.ufixed8x8.ufixed8x16.ufixed8x24.ufixed8x32.ufixed8x40.ufixed8x48.ufixed8x56.ufixed8x64.ufixed8x72.ufixed8x80.ufixed8x88.ufixed8x96.ufixed8x104.ufixed8x112.ufixed8x120.ufixed8x128.ufixed8x136.ufixed8x144.ufixed8x152.ufixed8x160.ufixed8x168.ufixed8x176.ufixed8x184.ufixed8x192.ufixed8x200.ufixed8x208.ufixed8x216.ufixed8x224.ufixed8x232.ufixed8x240.ufixed8x248.ufixed16x8.ufixed16x16.ufixed16x24.ufixed16x32.ufixed16x40.ufixed16x48.ufixed16x56.ufixed16x64.ufixed16x72.ufixed16x80.ufixed16x88.ufixed16x96.ufixed16x104.ufixed16x112.ufixed16x120.ufixed16x128.ufixed16x136.ufixed16x144.ufixed16x152.ufixed16x160.ufixed16x168.ufixed16x176.ufixed16x184.ufixed16x192.ufixed16x200.ufixed16x208.ufixed16x216.ufixed16x224.ufixed16x232.ufixed16x240.ufixed24x8.ufixed24x16.ufixed24x24.ufixed24x32.ufixed24x40.ufixed24x48.ufixed24x56.ufixed24x64.ufixed24x72.ufixed24x80.ufixed24x88.ufixed24x96.ufixed24x104.ufixed24x112.ufixed24x120.ufixed24x128.ufixed24x136.ufixed24x144.ufixed24x152.ufixed24x160.ufixed24x168.ufixed24x176.ufixed24x184.ufixed24x192.ufixed24x200.ufixed24x208.ufixed24x216.ufixed24x224.ufixed24x232.ufixed32x8.ufixed32x16.ufixed32x24.ufixed32x32.ufixed32x40.ufixed32x48.ufixed32x56.ufixed32x64.ufixed32x72.ufixed32x80.ufixed32x88.ufixed32x96.ufixed32x104.ufixed32x112.ufixed32x120.ufixed32x128.ufixed32x136.ufixed32x144.ufixed32x152.ufixed32x160.ufixed32x168.ufixed32x176.ufixed32x184.ufixed32x192.ufixed32x200.ufixed32x208.ufixed32x216.ufixed32x224.ufixed40x8.ufixed40x16.ufixed40x24.ufixed40x32.ufixed40x40.ufixed40x48.ufixed40x56.ufixed40x64.ufixed40x72.ufixed40x80.ufixed40x88.ufixed40x96.ufixed40x104.ufixed40x112.ufixed40x120.ufixed40x128.ufixed40x136.ufixed40x144.ufixed40x152.ufixed40x160.ufixed40x168.ufixed40x176.ufixed40x184.ufixed40x192.ufixed40x200.ufixed40x208.ufixed40x216.ufixed48x8.ufixed48x16.ufixed48x24.ufixed48x32.ufixed48x40.ufixed48x48.ufixed48x56.ufixed48x64.ufixed48x72.ufixed48x80.ufixed48x88.ufixed48x96.ufixed48x104.ufixed48x112.ufixed48x120.ufixed48x128.ufixed48x136.ufixed48x144.ufixed48x152.ufixed48x160.ufixed48x168.ufixed48x176.ufixed48x184.ufixed48x192.ufixed48x200.ufixed48x208.ufixed56x8.ufixed56x16.ufixed56x24.ufixed56x32.ufixed56x40.ufixed56x48.ufixed56x56.ufixed56x64.ufixed56x72.ufixed56x80.ufixed56x88.ufixed56x96.ufixed56x104.ufixed56x112.ufixed56x120.ufixed56x128.ufixed56x136.ufixed56x144.ufixed56x152.ufixed56x160.ufixed56x168.ufixed56x176.ufixed56x184.ufixed56x192.ufixed56x200.ufixed64x8.ufixed64x16.ufixed64x24.ufixed64x32.ufixed64x40.ufixed64x48.ufixed64x56.ufixed64x64.ufixed64x72.ufixed64x80.ufixed64x88.ufixed64x96.ufixed64x104.ufixed64x112.ufixed64x120.ufixed64x128.ufixed64x136.ufixed64x144.ufixed64x152.ufixed64x160.ufixed64x168.ufixed64x176.ufixed64x184.ufixed64x192.ufixed72x8.ufixed72x16.ufixed72x24.ufixed72x32.ufixed72x40.ufixed72x48.ufixed72x56.ufixed72x64.ufixed72x72.ufixed72x80.ufixed72x88.ufixed72x96.ufixed72x104.ufixed72x112.ufixed72x120.ufixed72x128.ufixed72x136.ufixed72x144.ufixed72x152.ufixed72x160.ufixed72x168.ufixed72x176.ufixed72x184.ufixed80x8.ufixed80x16.ufixed80x24.ufixed80x32.ufixed80x40.ufixed80x48.ufixed80x56.ufixed80x64.ufixed80x72.ufixed80x80.ufixed80x88.ufixed80x96.ufixed80x104.ufixed80x112.ufixed80x120.ufixed80x128.ufixed80x136.ufixed80x144.ufixed80x152.ufixed80x160.ufixed80x168.ufixed80x176.ufixed88x8.ufixed88x16.ufixed88x24.ufixed88x32.ufixed88x40.ufixed88x48.ufixed88x56.ufixed88x64.ufixed88x72.ufixed88x80.ufixed88x88.ufixed88x96.ufixed88x104.ufixed88x112.ufixed88x120.ufixed88x128.ufixed88x136.ufixed88x144.ufixed88x152.ufixed88x160.ufixed88x168.ufixed96x8.ufixed96x16.ufixed96x24.ufixed96x32.ufixed96x40.ufixed96x48.ufixed96x56.ufixed96x64.ufixed96x72.ufixed96x80.ufixed96x88.ufixed96x96.ufixed96x104.ufixed96x112.ufixed96x120.ufixed96x128.ufixed96x136.ufixed96x144.ufixed96x152.ufixed96x160.ufixed104x8.ufixed104x16.ufixed104x24.ufixed104x32.ufixed104x40.ufixed104x48.ufixed104x56.ufixed104x64.ufixed104x72.ufixed104x80.ufixed104x88.ufixed104x96.ufixed104x104.ufixed104x112.ufixed104x120.ufixed104x128.ufixed104x136.ufixed104x144.ufixed104x152.ufixed112x8.ufixed112x16.ufixed112x24.ufixed112x32.ufixed112x40.ufixed112x48.ufixed112x56.ufixed112x64.ufixed112x72.ufixed112x80.ufixed112x88.ufixed112x96.ufixed112x104.ufixed112x112.ufixed112x120.ufixed112x128.ufixed112x136.ufixed112x144.ufixed120x8.ufixed120x16.ufixed120x24.ufixed120x32.ufixed120x40.ufixed120x48.ufixed120x56.ufixed120x64.ufixed120x72.ufixed120x80.ufixed120x88.ufixed120x96.ufixed120x104.ufixed120x112.ufixed120x120.ufixed120x128.ufixed120x136.ufixed128x8.ufixed128x16.ufixed128x24.ufixed128x32.ufixed128x40.ufixed128x48.ufixed128x56.ufixed128x64.ufixed128x72.ufixed128x80.ufixed128x88.ufixed128x96.ufixed128x104.ufixed128x112.ufixed128x120.ufixed128x128.ufixed136x8.ufixed136x16.ufixed136x24.ufixed136x32.ufixed136x40.ufixed136x48.ufixed136x56.ufixed136x64.ufixed136x72.ufixed136x80.ufixed136x88.ufixed136x96.ufixed136x104.ufixed136x112.ufixed136x120.ufixed144x8.ufixed144x16.ufixed144x24.ufixed144x32.ufixed144x40.ufixed144x48.ufixed144x56.ufixed144x64.ufixed144x72.ufixed144x80.ufixed144x88.ufixed144x96.ufixed144x104.ufixed144x112.ufixed152x8.ufixed152x16.ufixed152x24.ufixed152x32.ufixed152x40.ufixed152x48.ufixed152x56.ufixed152x64.ufixed152x72.ufixed152x80.ufixed152x88.ufixed152x96.ufixed152x104.ufixed160x8.ufixed160x16.ufixed160x24.ufixed160x32.ufixed160x40.ufixed160x48.ufixed160x56.ufixed160x64.ufixed160x72.ufixed160x80.ufixed160x88.ufixed160x96.ufixed168x8.ufixed168x16.ufixed168x24.ufixed168x32.ufixed168x40.ufixed168x48.ufixed168x56.ufixed168x64.ufixed168x72.ufixed168x80.ufixed168x88.ufixed176x8.ufixed176x16.ufixed176x24.ufixed176x32.ufixed176x40.ufixed176x48.ufixed176x56.ufixed176x64.ufixed176x72.ufixed176x80.ufixed184x8.ufixed184x16.ufixed184x24.ufixed184x32.ufixed184x40.ufixed184x48.ufixed184x56.ufixed184x64.ufixed184x72.ufixed192x8.ufixed192x16.ufixed192x24.ufixed192x32.ufixed192x40.ufixed192x48.ufixed192x56.ufixed192x64.ufixed200x8.ufixed200x16.ufixed200x24.ufixed200x32.ufixed200x40.ufixed200x48.ufixed200x56.ufixed208x8.ufixed208x16.ufixed208x24.ufixed208x32.ufixed208x40.ufixed208x48.ufixed216x8.ufixed216x16.ufixed216x24.ufixed216x32.ufixed216x40.ufixed224x8.ufixed224x16.ufixed224x24.ufixed224x32.ufixed232x8.ufixed232x16.ufixed232x24.ufixed240x8.ufixed240x16.ufixed248x8.event.enum.let.mapping.private.public.external.inherited.payable.true.false.var.import.constant.if.else.for.else.for.while.do.break.continue.throw.returns.return.suicide.new.is.this.super`.split(`.`),operators:`=.>.<.!.~.?.:.==.<=.>=.!=.&&.||.++.--.+.-.*./.&.|.^.%.<<.>>.>>>.+=.-=.*=./=.&=.|=.^=.%=.<<=.>>=.>>>=`.split(`.`),symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,integersuffix:/(ll|LL|u|U|l|L)?(ll|LL|u|U|l|L)?/,floatsuffix:/[fFlL]?/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:`keyword.$0`},"@default":`identifier`}}],{include:`@whitespace`},[/\[\[.*\]\]/,`annotation`],[/^\s*#\w+/,`keyword`],[/int\d*/,`keyword`],[/[{}()\[\]]/,`@brackets`],[/[<>](?!@symbols)/,`@brackets`],[/@symbols/,{cases:{"@operators":`delimiter`,"@default":``}}],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,`number.float`],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,`number.float`],[/0[xX][0-9a-fA-F']*[0-9a-fA-F](@integersuffix)/,`number.hex`],[/0[0-7']*[0-7](@integersuffix)/,`number.octal`],[/0[bB][0-1']*[0-1](@integersuffix)/,`number.binary`],[/\d[\d']*\d(@integersuffix)/,`number`],[/\d(@integersuffix)/,`number`],[/[;,.]/,`delimiter`],[/"([^"\\]|\\.)*$/,`string.invalid`],[/"/,`string`,`@string`],[/'[^\\']'/,`string`],[/(')(@escapes)(')/,[`string`,`string.escape`,`string`]],[/'/,`string.invalid`]],whitespace:[[/[ \t\r\n]+/,``],[/\/\*\*(?!\/)/,`comment.doc`,`@doccomment`],[/\/\*/,`comment`,`@comment`],[/\/\/.*$/,`comment`]],comment:[[/[^\/*]+/,`comment`],[/\*\//,`comment`,`@pop`],[/[\/*]/,`comment`]],doccomment:[[/[^\/*]+/,`comment.doc`],[/\*\//,`comment.doc`,`@pop`],[/[\/*]/,`comment.doc`]],string:[[/[^\\"]+/,`string`],[/@escapes/,`string.escape`],[/\\./,`string.escape.invalid`],[/"/,`string`,`@pop`]]}};export{e as conf,t as language};
@@ -0,0 +1 @@
1
+ var e={comments:{lineComment:`//`,blockComment:[`/*`,`*/`]},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`],[`<`,`>`]],autoClosingPairs:[{open:`"`,close:`"`,notIn:[`string`,`comment`]},{open:`{`,close:`}`,notIn:[`string`,`comment`]},{open:`[`,close:`]`,notIn:[`string`,`comment`]},{open:`(`,close:`)`,notIn:[`string`,`comment`]}]},t={defaultToken:``,tokenPostfix:`.aes`,brackets:[{token:`delimiter.curly`,open:`{`,close:`}`},{token:`delimiter.parenthesis`,open:`(`,close:`)`},{token:`delimiter.square`,open:`[`,close:`]`},{token:`delimiter.angle`,open:`<`,close:`>`}],keywords:`contract.library.entrypoint.function.stateful.state.hash.signature.tuple.list.address.string.bool.int.record.datatype.type.option.oracle.oracle_query.Call.Bits.Bytes.Oracle.String.Crypto.Address.Auth.Chain.None.Some.bits.bytes.event.let.map.private.public.true.false.var.if.else.throw`.split(`.`),operators:`=.>.<.!.~.?.::.:.==.<=.>=.!=.&&.||.++.--.+.-.*./.&.|.^.%.<<.>>.>>>.+=.-=.*=./=.&=.|=.^=.%=.<<=.>>=.>>>=`.split(`.`),symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,integersuffix:/(ll|LL|u|U|l|L)?(ll|LL|u|U|l|L)?/,floatsuffix:/[fFlL]?/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:`keyword.$0`},"@default":`identifier`}}],{include:`@whitespace`},[/\[\[.*\]\]/,`annotation`],[/^\s*#\w+/,`keyword`],[/int\d*/,`keyword`],[/[{}()\[\]]/,`@brackets`],[/[<>](?!@symbols)/,`@brackets`],[/@symbols/,{cases:{"@operators":`delimiter`,"@default":``}}],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,`number.float`],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,`number.float`],[/0[xX][0-9a-fA-F']*[0-9a-fA-F](@integersuffix)/,`number.hex`],[/0[0-7']*[0-7](@integersuffix)/,`number.octal`],[/0[bB][0-1']*[0-1](@integersuffix)/,`number.binary`],[/\d[\d']*\d(@integersuffix)/,`number`],[/\d(@integersuffix)/,`number`],[/[;,.]/,`delimiter`],[/"([^"\\]|\\.)*$/,`string.invalid`],[/"/,`string`,`@string`],[/'[^\\']'/,`string`],[/(')(@escapes)(')/,[`string`,`string.escape`,`string`]],[/'/,`string.invalid`]],whitespace:[[/[ \t\r\n]+/,``],[/\/\*\*(?!\/)/,`comment.doc`,`@doccomment`],[/\/\*/,`comment`,`@comment`],[/\/\/.*$/,`comment`]],comment:[[/[^\/*]+/,`comment`],[/\*\//,`comment`,`@pop`],[/[\/*]/,`comment`]],doccomment:[[/[^\/*]+/,`comment.doc`],[/\*\//,`comment.doc`,`@pop`],[/[\/*]/,`comment.doc`]],string:[[/[^\\"]+/,`string`],[/@escapes/,`string.escape`],[/\\./,`string.escape.invalid`],[/"/,`string`,`@pop`]]}};export{e as conf,t as language};
@@ -0,0 +1 @@
1
+ var e={comments:{lineComment:`#`},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`]],autoClosingPairs:[{open:`'`,close:`'`,notIn:[`string`]},{open:`"`,close:`"`,notIn:[`string`]},{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`}]},t={defaultToken:``,tokenPostfix:`.rq`,brackets:[{token:`delimiter.curly`,open:`{`,close:`}`},{token:`delimiter.parenthesis`,open:`(`,close:`)`},{token:`delimiter.square`,open:`[`,close:`]`},{token:`delimiter.angle`,open:`<`,close:`>`}],keywords:`add.as.asc.ask.base.by.clear.construct.copy.create.data.delete.desc.describe.distinct.drop.false.filter.from.graph.group.having.in.insert.limit.load.minus.move.named.not.offset.optional.order.prefix.reduced.select.service.silent.to.true.undef.union.using.values.where.with`.split(`.`),builtinFunctions:`a.abs.avg.bind.bnode.bound.ceil.coalesce.concat.contains.count.datatype.day.encode_for_uri.exists.floor.group_concat.hours.if.iri.isblank.isiri.isliteral.isnumeric.isuri.lang.langmatches.lcase.max.md5.min.minutes.month.now.rand.regex.replace.round.sameterm.sample.seconds.sha1.sha256.sha384.sha512.str.strafter.strbefore.strdt.strends.strlang.strlen.strstarts.struuid.substr.sum.timezone.tz.ucase.uri.uuid.year`.split(`.`),ignoreCase:!0,tokenizer:{root:[[/<[^\s\u00a0>]*>?/,`tag`],{include:`@strings`},[/#.*/,`comment`],[/[{}()\[\]]/,`@brackets`],[/[;,.]/,`delimiter`],[/[_\w\d]+:(\.(?=[\w_\-\\%])|[:\w_-]|\\[-\\_~.!$&'()*+,;=/?#@%]|%[a-f\d][a-f\d])*/,`tag`],[/:(\.(?=[\w_\-\\%])|[:\w_-]|\\[-\\_~.!$&'()*+,;=/?#@%]|%[a-f\d][a-f\d])+/,`tag`],[/[$?]?[_\w\d]+/,{cases:{"@keywords":{token:`keyword`},"@builtinFunctions":{token:`predefined.sql`},"@default":`identifier`}}],[/\^\^/,`operator.sql`],[/\^[*+\-<>=&|^\/!?]*/,`operator.sql`],[/[*+\-<>=&|\/!?]/,`operator.sql`],[/@[a-z\d\-]*/,`metatag.html`],[/\s+/,`white`]],strings:[[/'([^'\\]|\\.)*$/,`string.invalid`],[/'$/,`string.sql`,`@pop`],[/'/,`string.sql`,`@stringBody`],[/"([^"\\]|\\.)*$/,`string.invalid`],[/"$/,`string.sql`,`@pop`],[/"/,`string.sql`,`@dblStringBody`]],stringBody:[[/[^\\']+/,`string.sql`],[/\\./,`string.escape`],[/'/,`string.sql`,`@pop`]],dblStringBody:[[/[^\\"]+/,`string.sql`],[/\\./,`string.escape`],[/"/,`string.sql`,`@pop`]]}};export{e as conf,t as language};
@@ -0,0 +1 @@
1
+ var e={title:`スペック`,dropHere:`ここにドロップ`,emptyNoSpecs:`スペックはまだありません`,emptyNoLabelMatch:`アクティブなラベルに一致するスペックはありません`,emptyNoActiveSpecs:`アクティブなスペックはありません`,emptyHint:`「+ 追加」をクリックして開始`,dropToMarkDone:`ドロップして完了にする`,emptyNoDoneLabelMatch:`アクティブなラベルに一致する完了スペックはありません`,emptyNoCompleted:`完了したスペックはまだありません`,untitledSpec:`無題のスペック`},t={todo:`Todo`,inProgress:`進行中`,done:`完了`,cancelled:`キャンセル`},n={critical:`クリティカル`,high:`高`,medium:`中`,low:`低`},r={epic:`エピック`,epicWithCount:`エピック · {{count}}`,subSpec:`↑ Sub-Spec`,review:`レビュー`,needsReviewTitle:`このスペックは完了とマークされましたが、ジョブが失敗で終了しました — 確認してください`,raw:`Raw`,rawTitle:`Raw スペック — 取り込み時に AI 生成なし`,contract:`Contract`,openParentEpicTitle:`親エピック #{{id}} を開く · {{title}}`},i={deleteSpec:`スペック #{{id}} を削除`,deleteTicket:`チケット #{{id}} を削除`,ticketFallbackLabel:`チケット #{{id}}`,dependsOn:`{{count}} 件に依存`,continueEditing:`編集を続ける`,continueEditingTitle:`このスペックの編集を続ける`,moveToRail:`レールに移動`},a={noTickets:`チケットはまだありません`,noTicketsHint:`最初のチケットを作成するか、プロダクトバックログコマンドを実行してチケットを生成してください`,createFirst:`最初のチケットを作成`},o={loadFailed:`チケットの読み込みに失敗しました`},s={status:{draft:`下書き`,todo:`Todo`,inProgress:`進行中`,done:`完了`,cancelled:`キャンセル`},filterAll:`すべて ({{count}})`,statusWithCount:`{{status}} ({{count}})`,allLabels:`すべてのラベル`,searchPlaceholder:`検索...`,columns:{status:`ステータス`,title:`タイトル`,priority:`優先度`,labels:`ラベル`,updated:`更新`},noMatch:`フィルターに一致するチケットはありません`,clearFilters:`フィルターをクリア`,loadMore:`さらに読み込む(残り {{count}} 件)`},c={emptyTodo:`未着手のチケットはありません`,emptyInProgress:`進行中のものはありません`,emptyDone:`完了したチケットはありません`,cancelledSection:`キャンセル ({{count}})`},l={ariaLabel:`ステータスで絞り込み`,all:`すべて`,todo:`ToDo`,done:`完了`},u={modeAriaLabel:`並べ替えモード`,tooltip:`並べ替え: {{mode}}`,toggleDirAriaLabel:`並べ替え方向を切り替え`,ascending:`昇順`,descending:`降順`,modes:{default:`デフォルト`,ticketId:`チケット #`,priority:`優先度`}},d={ariaLabel:`スペック表示`,listView:`リスト表示`,postitView:`付箋表示`},f={ariaLabel:`ラベルで絞り込み`,all:`すべて`,empty:`このプロジェクトにラベルはありません。`,selected_one:`{{count}} 件のラベル`,selected_other:`{{count}} 件のラベル`,clear:`クリア`},p={board:e,status:t,priority:n,badges:r,card:i,emptyState:a,errors:o,listView:s,gridView:c,statusFilter:l,sortControl:u,viewTier:d,labelFilter:f};export{r as badges,e as board,i as card,p as default,a as emptyState,o as errors,c as gridView,f as labelFilter,s as listView,n as priority,u as sortControl,t as status,l as statusFilter,d as viewTier};
@@ -0,0 +1 @@
1
+ var e={title:`Spec`,dropHere:`Largar aqui`,emptyNoSpecs:`Ainda não há specs`,emptyNoLabelMatch:`Nenhuma spec corresponde às etiquetas ativas`,emptyNoActiveSpecs:`Sem specs ativas`,emptyHint:`Clique em "+ Adicionar" para começar`,dropToMarkDone:`Largue para marcar como concluída`,emptyNoDoneLabelMatch:`Nenhuma spec concluída corresponde às etiquetas ativas`,emptyNoCompleted:`Ainda não há specs concluídas`,untitledSpec:`Spec sem título`},t={todo:`Por fazer`,inProgress:`Em curso`,done:`Concluído`,cancelled:`Cancelado`},n={critical:`crítica`,high:`alta`,medium:`média`,low:`baixa`},r={epic:`Épico`,epicWithCount:`Épico · {{count}}`,subSpec:`↑ Sub-Spec`,review:`Revisão`,needsReviewTitle:`Esta spec foi marcada como concluída mas o job terminou em falha — reveja-a`,raw:`Raw`,rawTitle:`Spec Raw — sem geração por IA na criação`,contract:`Contract`,openParentEpicTitle:`Abrir o Épico pai #{{id}} · {{title}}`},i={deleteSpec:`Eliminar spec #{{id}}`,deleteTicket:`Eliminar ticket #{{id}}`,ticketFallbackLabel:`Ticket #{{id}}`,dependsOn:`Depende de {{count}}`,continueEditing:`Continuar a editar`,continueEditingTitle:`Continuar a editar esta spec`,moveToRail:`Mover para um rail`},a={noTickets:`Ainda não há tickets`,noTicketsHint:`Crie o seu primeiro ticket ou execute um comando de product backlog para preencher os tickets`,createFirst:`Criar o seu primeiro ticket`},o={loadFailed:`Falha ao carregar os tickets`},s={status:{draft:`rascunho`,todo:`por fazer`,inProgress:`em curso`,done:`concluído`,cancelled:`cancelado`},filterAll:`Todos ({{count}})`,statusWithCount:`{{status}} ({{count}})`,allLabels:`Todas as etiquetas`,searchPlaceholder:`Pesquisar...`,columns:{status:`Estado`,title:`Título`,priority:`Prioridade`,labels:`Etiquetas`,updated:`Atualizado`},noMatch:`Nenhum ticket corresponde aos seus filtros`,clearFilters:`Limpar filtros`,loadMore:`Carregar mais ({{count}} restantes)`},c={emptyTodo:`Sem tickets por fazer`,emptyInProgress:`Nada em curso`,emptyDone:`Sem tickets concluídos`,cancelledSection:`Cancelados ({{count}})`},l={ariaLabel:`Filtrar por estado`,all:`Todos`,todo:`Por fazer`,done:`Concluído`},u={modeAriaLabel:`Modo de ordenação`,tooltip:`Ordenar: {{mode}}`,toggleDirAriaLabel:`Inverter a direção da ordenação`,ascending:`Ascendente`,descending:`Descendente`,modes:{default:`Predefinida`,ticketId:`Ticket #`,priority:`Prioridade`}},d={ariaLabel:`Vista de specs`,listView:`Vista de lista`,postitView:`Vista de post-its`},f={ariaLabel:`Filtrar por etiquetas`,all:`Todas`,empty:`Não há etiquetas neste projeto.`,selected_one:`{{count}} etiqueta`,selected_other:`{{count}} etiquetas`,clear:`limpar`},p={board:e,status:t,priority:n,badges:r,card:i,emptyState:a,errors:o,listView:s,gridView:c,statusFilter:l,sortControl:u,viewTier:d,labelFilter:f};export{r as badges,e as board,i as card,p as default,a as emptyState,o as errors,c as gridView,f as labelFilter,s as listView,n as priority,u as sortControl,t as status,l as statusFilter,d as viewTier};
@@ -0,0 +1 @@
1
+ var e={title:`Spec`,dropHere:`Déposer ici`,emptyNoSpecs:`Aucune spec pour l'instant`,emptyNoLabelMatch:`Aucune spec ne correspond aux labels actifs`,emptyNoActiveSpecs:`Aucune spec active`,emptyHint:`Cliquez sur « + Ajouter » pour commencer`,dropToMarkDone:`Déposez pour marquer comme terminée`,emptyNoDoneLabelMatch:`Aucune spec terminée ne correspond aux labels actifs`,emptyNoCompleted:`Aucune spec terminée pour l'instant`,untitledSpec:`Spec sans titre`},t={todo:`À faire`,inProgress:`En cours`,done:`Terminé`,cancelled:`Annulé`},n={critical:`critique`,high:`haute`,medium:`moyenne`,low:`basse`},r={epic:`Epic`,epicWithCount:`Epic · {{count}}`,subSpec:`↑ Sous-spec`,review:`À revoir`,needsReviewTitle:`Cette spec a été marquée comme terminée mais son job a échoué — vérifiez-la`,raw:`Raw`,rawTitle:`Spec Raw — aucune génération IA à la création`,contract:`Contract`,openParentEpicTitle:`Ouvrir l'Epic parent #{{id}} · {{title}}`},i={deleteSpec:`Supprimer la spec #{{id}}`,deleteTicket:`Supprimer le ticket #{{id}}`,ticketFallbackLabel:`Ticket #{{id}}`,dependsOn:`Dépend de {{count}}`,continueEditing:`Continuer l'édition`,continueEditingTitle:`Continuer à éditer cette spec`,moveToRail:`Déplacer vers un rail`},a={noTickets:`Aucun ticket pour l'instant`,noTicketsHint:`Créez votre premier ticket ou exécutez une commande de product backlog pour remplir les tickets`,createFirst:`Créer votre premier ticket`},o={loadFailed:`Échec du chargement des tickets`},s={status:{draft:`brouillon`,todo:`à faire`,inProgress:`en cours`,done:`terminé`,cancelled:`annulé`},filterAll:`Tous ({{count}})`,statusWithCount:`{{status}} ({{count}})`,allLabels:`Tous les labels`,searchPlaceholder:`Rechercher…`,columns:{status:`Statut`,title:`Titre`,priority:`Priorité`,labels:`Labels`,updated:`Mis à jour`},noMatch:`Aucun ticket ne correspond à vos filtres`,clearFilters:`Effacer les filtres`,loadMore:`Charger plus ({{count}} restants)`},c={emptyTodo:`Aucun ticket à faire`,emptyInProgress:`Rien en cours`,emptyDone:`Aucun ticket terminé`,cancelledSection:`Annulés ({{count}})`},l={ariaLabel:`Filtrer par statut`,all:`Tous`,todo:`À faire`,done:`Terminé`},u={modeAriaLabel:`Mode de tri`,tooltip:`Tri : {{mode}}`,toggleDirAriaLabel:`Inverser le sens du tri`,ascending:`Croissant`,descending:`Décroissant`,modes:{default:`Par défaut`,ticketId:`Ticket #`,priority:`Priorité`}},d={ariaLabel:`Vue des specs`,listView:`Vue liste`,postitView:`Vue post-it`},f={ariaLabel:`Filtrer par labels`,all:`Tous`,empty:`Aucun label dans ce projet.`,selected_one:`{{count}} label`,selected_other:`{{count}} labels`,clear:`effacer`},p={board:e,status:t,priority:n,badges:r,card:i,emptyState:a,errors:o,listView:s,gridView:c,statusFilter:l,sortControl:u,viewTier:d,labelFilter:f};export{r as badges,e as board,i as card,p as default,a as emptyState,o as errors,c as gridView,f as labelFilter,s as listView,n as priority,u as sortControl,t as status,l as statusFilter,d as viewTier};
@@ -0,0 +1 @@
1
+ var e={title:`Spec`,dropHere:`拖放到此处`,emptyNoSpecs:`暂无 spec`,emptyNoLabelMatch:`没有符合所选标签的 spec`,emptyNoActiveSpecs:`没有进行中的 spec`,emptyHint:`点击“+ 添加”开始`,dropToMarkDone:`拖放至此标记为完成`,emptyNoDoneLabelMatch:`没有符合所选标签的已完成 spec`,emptyNoCompleted:`暂无已完成的 spec`,untitledSpec:`未命名 spec`},t={todo:`待办`,inProgress:`进行中`,done:`完成`,cancelled:`已取消`},n={critical:`紧急`,high:`高`,medium:`中`,low:`低`},r={epic:`Epic`,epicWithCount:`Epic · {{count}}`,subSpec:`↑ 子 Spec`,review:`待审查`,needsReviewTitle:`此 spec 已标记为完成,但其任务以失败告终——请审查`,raw:`Raw`,rawTitle:`Raw spec——录入时不经过 AI 生成`,contract:`Contract`,openParentEpicTitle:`打开父级 Epic #{{id}} · {{title}}`},i={deleteSpec:`删除 spec #{{id}}`,deleteTicket:`删除工单 #{{id}}`,ticketFallbackLabel:`工单 #{{id}}`,dependsOn:`依赖 {{count}} 项`,continueEditing:`继续编辑`,continueEditingTitle:`继续编辑此 spec`,moveToRail:`放入 Rail`},a={noTickets:`暂无工单`,noTicketsHint:`创建第一个工单,或运行 product backlog 命令来填充工单`,createFirst:`创建第一个工单`},o={loadFailed:`加载工单失败`},s={status:{draft:`草稿`,todo:`待办`,inProgress:`进行中`,done:`完成`,cancelled:`已取消`},filterAll:`全部({{count}})`,statusWithCount:`{{status}}({{count}})`,allLabels:`全部标签`,searchPlaceholder:`搜索…`,columns:{status:`状态`,title:`标题`,priority:`优先级`,labels:`标签`,updated:`更新时间`},noMatch:`没有符合筛选条件的工单`,clearFilters:`清除筛选`,loadMore:`加载更多(剩余 {{count}} 个)`},c={emptyTodo:`没有待办工单`,emptyInProgress:`没有进行中的工单`,emptyDone:`没有已完成的工单`,cancelledSection:`已取消({{count}})`},l={ariaLabel:`按状态筛选`,all:`全部`,todo:`待办`,done:`完成`},u={modeAriaLabel:`排序方式`,tooltip:`排序:{{mode}}`,toggleDirAriaLabel:`切换排序方向`,ascending:`升序`,descending:`降序`,modes:{default:`默认`,ticketId:`工单 #`,priority:`优先级`}},d={ariaLabel:`Spec 视图`,listView:`列表视图`,postitView:`便签视图`},f={ariaLabel:`按标签筛选`,all:`全部`,empty:`此项目没有标签。`,selected_one:`{{count}} 个标签`,selected_other:`{{count}} 个标签`,clear:`清除`},p={board:e,status:t,priority:n,badges:r,card:i,emptyState:a,errors:o,listView:s,gridView:c,statusFilter:l,sortControl:u,viewTier:d,labelFilter:f};export{r as badges,e as board,i as card,p as default,a as emptyState,o as errors,c as gridView,f as labelFilter,s as listView,n as priority,u as sortControl,t as status,l as statusFilter,d as viewTier};
@@ -0,0 +1 @@
1
+ var e={title:`Spec`,dropHere:`Hier ablegen`,emptyNoSpecs:`Noch keine Specs`,emptyNoLabelMatch:`Keine Specs entsprechen den aktiven Labels`,emptyNoActiveSpecs:`Keine aktiven Specs`,emptyHint:`Klicke auf „+ Hinzufügen“, um loszulegen`,dropToMarkDone:`Ablegen, um als fertig zu markieren`,emptyNoDoneLabelMatch:`Keine fertigen Specs entsprechen den aktiven Labels`,emptyNoCompleted:`Noch keine abgeschlossenen Specs`,untitledSpec:`Unbenannte Spec`},t={todo:`To-do`,inProgress:`In Arbeit`,done:`Fertig`,cancelled:`Abgebrochen`},n={critical:`kritisch`,high:`hoch`,medium:`mittel`,low:`niedrig`},r={epic:`Epic`,epicWithCount:`Epic · {{count}}`,subSpec:`↑ Sub-Spec`,review:`Review`,needsReviewTitle:`Diese Spec wurde als fertig markiert, aber ihr Job ist fehlgeschlagen – bitte prüfen`,raw:`Raw`,rawTitle:`Raw-Spec – keine KI-Generierung bei der Erfassung`,contract:`Contract`,openParentEpicTitle:`Übergeordnetes Epic #{{id}} öffnen · {{title}}`},i={deleteSpec:`Spec #{{id}} löschen`,deleteTicket:`Ticket #{{id}} löschen`,ticketFallbackLabel:`Ticket #{{id}}`,dependsOn:`Hängt von {{count}} ab`,continueEditing:`Weiter bearbeiten`,continueEditingTitle:`Diese Spec weiter bearbeiten`,moveToRail:`Auf Rail verschieben`},a={noTickets:`Noch keine Tickets`,noTicketsHint:`Erstelle dein erstes Ticket oder führe einen Product-Backlog-Befehl aus, um Tickets zu befüllen`,createFirst:`Erstes Ticket erstellen`},o={loadFailed:`Tickets konnten nicht geladen werden`},s={status:{draft:`Entwurf`,todo:`To-do`,inProgress:`in Arbeit`,done:`fertig`,cancelled:`abgebrochen`},filterAll:`Alle ({{count}})`,statusWithCount:`{{status}} ({{count}})`,allLabels:`Alle Labels`,searchPlaceholder:`Suchen…`,columns:{status:`Status`,title:`Titel`,priority:`Priorität`,labels:`Labels`,updated:`Aktualisiert`},noMatch:`Keine Tickets entsprechen deinen Filtern`,clearFilters:`Filter zurücksetzen`,loadMore:`Mehr laden ({{count}} verbleibend)`},c={emptyTodo:`Keine offenen Tickets`,emptyInProgress:`Nichts in Arbeit`,emptyDone:`Keine abgeschlossenen Tickets`,cancelledSection:`Abgebrochen ({{count}})`},l={ariaLabel:`Nach Status filtern`,all:`Alle`,todo:`To-do`,done:`Fertig`},u={modeAriaLabel:`Sortiermodus`,tooltip:`Sortierung: {{mode}}`,toggleDirAriaLabel:`Sortierrichtung umschalten`,ascending:`Aufsteigend`,descending:`Absteigend`,modes:{default:`Standard`,ticketId:`Ticket #`,priority:`Priorität`}},d={ariaLabel:`Spec-Ansicht`,listView:`Listenansicht`,postitView:`Post-it-Ansicht`},f={ariaLabel:`Nach Labels filtern`,all:`Alle`,empty:`Keine Labels in diesem Projekt.`,selected_one:`{{count}} Label`,selected_other:`{{count}} Labels`,clear:`zurücksetzen`},p={board:e,status:t,priority:n,badges:r,card:i,emptyState:a,errors:o,listView:s,gridView:c,statusFilter:l,sortControl:u,viewTier:d,labelFilter:f};export{r as badges,e as board,i as card,p as default,a as emptyState,o as errors,c as gridView,f as labelFilter,s as listView,n as priority,u as sortControl,t as status,l as statusFilter,d as viewTier};
@@ -0,0 +1 @@
1
+ var e={title:`Spec`,dropHere:`Suelta aquí`,emptyNoSpecs:`Aún no hay specs`,emptyNoLabelMatch:`Ninguna spec coincide con las etiquetas activas`,emptyNoActiveSpecs:`No hay specs activas`,emptyHint:`Haz clic en «+ Añadir» para empezar`,dropToMarkDone:`Suelta para marcar como hecha`,emptyNoDoneLabelMatch:`Ninguna spec hecha coincide con las etiquetas activas`,emptyNoCompleted:`Aún no hay specs completadas`,untitledSpec:`Spec sin título`},t={todo:`Por hacer`,inProgress:`En curso`,done:`Hecho`,cancelled:`Cancelado`},n={critical:`crítica`,high:`alta`,medium:`media`,low:`baja`},r={epic:`Épica`,epicWithCount:`Épica · {{count}}`,subSpec:`↑ Sub-Spec`,review:`Revisar`,needsReviewTitle:`Esta spec se marcó como hecha pero su job terminó en fallo — revísala`,raw:`Raw`,rawTitle:`Spec Raw — sin generación con IA al crearla`,contract:`Contract`,openParentEpicTitle:`Abrir la épica padre #{{id}} · {{title}}`},i={deleteSpec:`Eliminar spec #{{id}}`,deleteTicket:`Eliminar ticket #{{id}}`,ticketFallbackLabel:`Ticket #{{id}}`,dependsOn:`Depende de {{count}}`,continueEditing:`Seguir editando`,continueEditingTitle:`Seguir editando esta spec`,moveToRail:`Mover a un rail`},a={noTickets:`Aún no hay tickets`,noTicketsHint:`Crea tu primer ticket o ejecuta un comando de product backlog para generar tickets`,createFirst:`Crea tu primer ticket`},o={loadFailed:`No se pudieron cargar los tickets`},s={status:{draft:`borrador`,todo:`por hacer`,inProgress:`en curso`,done:`hecho`,cancelled:`cancelado`},filterAll:`Todos ({{count}})`,statusWithCount:`{{status}} ({{count}})`,allLabels:`Todas las etiquetas`,searchPlaceholder:`Buscar...`,columns:{status:`Estado`,title:`Título`,priority:`Prioridad`,labels:`Etiquetas`,updated:`Actualizado`},noMatch:`Ningún ticket coincide con tus filtros`,clearFilters:`Limpiar filtros`,loadMore:`Cargar más ({{count}} restantes)`},c={emptyTodo:`No hay tickets por hacer`,emptyInProgress:`Nada en curso`,emptyDone:`No hay tickets completados`,cancelledSection:`Cancelados ({{count}})`},l={ariaLabel:`Filtrar por estado`,all:`Todos`,todo:`Por hacer`,done:`Hechos`},u={modeAriaLabel:`Modo de ordenación`,tooltip:`Ordenar: {{mode}}`,toggleDirAriaLabel:`Cambiar dirección de ordenación`,ascending:`Ascendente`,descending:`Descendente`,modes:{default:`Por defecto`,ticketId:`Ticket #`,priority:`Prioridad`}},d={ariaLabel:`Vista de specs`,listView:`Vista de lista`,postitView:`Vista post-it`},f={ariaLabel:`Filtrar por etiquetas`,all:`Todas`,empty:`No hay etiquetas en este proyecto.`,selected_one:`{{count}} etiqueta`,selected_other:`{{count}} etiquetas`,clear:`limpiar`},p={board:e,status:t,priority:n,badges:r,card:i,emptyState:a,errors:o,listView:s,gridView:c,statusFilter:l,sortControl:u,viewTier:d,labelFilter:f};export{r as badges,e as board,i as card,p as default,a as emptyState,o as errors,c as gridView,f as labelFilter,s as listView,n as priority,u as sortControl,t as status,l as statusFilter,d as viewTier};
@@ -0,0 +1 @@
1
+ import{n as e}from"./chunk-CilyBKbf.js";var t=e({badges:()=>a,board:()=>n,card:()=>o,default:()=>h,emptyState:()=>s,errors:()=>c,gridView:()=>u,labelFilter:()=>m,listView:()=>l,priority:()=>i,sortControl:()=>f,status:()=>r,statusFilter:()=>d,viewTier:()=>p}),n={title:`Spec`,dropHere:`Drop here`,emptyNoSpecs:`No specs yet`,emptyNoLabelMatch:`No specs match the active labels`,emptyNoActiveSpecs:`No active specs`,emptyHint:`Click "+ Add" to get started`,dropToMarkDone:`Drop to mark as done`,emptyNoDoneLabelMatch:`No done specs match the active labels`,emptyNoCompleted:`No completed specs yet`,untitledSpec:`Untitled spec`},r={todo:`Todo`,inProgress:`In Progress`,done:`Done`,cancelled:`Cancelled`},i={critical:`critical`,high:`high`,medium:`medium`,low:`low`},a={epic:`Epic`,epicWithCount:`Epic · {{count}}`,subSpec:`↑ Sub-Spec`,review:`Review`,needsReviewTitle:`This spec was marked done but its job ended in failure — review it`,raw:`Raw`,rawTitle:`Raw spec — no AI generation at intake`,contract:`Contract`,openParentEpicTitle:`Open parent Epic #{{id}} · {{title}}`},o={deleteSpec:`Delete spec #{{id}}`,deleteTicket:`Delete ticket #{{id}}`,ticketFallbackLabel:`Ticket #{{id}}`,dependsOn:`Depends on {{count}}`,continueEditing:`Continue Editing`,continueEditingTitle:`Continue editing this spec`,moveToRail:`Move to Rail`},s={noTickets:`No tickets yet`,noTicketsHint:`Create your first ticket or run a product backlog command to populate tickets`,createFirst:`Create your first ticket`},c={loadFailed:`Failed to load tickets`},l={status:{draft:`draft`,todo:`todo`,inProgress:`in progress`,done:`done`,cancelled:`cancelled`},filterAll:`All ({{count}})`,statusWithCount:`{{status}} ({{count}})`,allLabels:`All labels`,searchPlaceholder:`Search...`,columns:{status:`Status`,title:`Title`,priority:`Priority`,labels:`Labels`,updated:`Updated`},noMatch:`No tickets match your filters`,clearFilters:`Clear filters`,loadMore:`Load more ({{count}} remaining)`},u={emptyTodo:`No tickets to do`,emptyInProgress:`Nothing in progress`,emptyDone:`No completed tickets`,cancelledSection:`Cancelled ({{count}})`},d={ariaLabel:`Filter by status`,all:`All`,todo:`ToDo`,done:`Done`},f={modeAriaLabel:`Sort mode`,tooltip:`Sort: {{mode}}`,toggleDirAriaLabel:`Toggle sort direction`,ascending:`Ascending`,descending:`Descending`,modes:{default:`Default`,ticketId:`Ticket #`,priority:`Priority`}},p={ariaLabel:`Specs view`,listView:`List view`,postitView:`Post-it view`},m={ariaLabel:`Filter by labels`,all:`All`,empty:`No labels in this project.`,selected_one:`{{count}} label`,selected_other:`{{count}} labels`,clear:`clear`},h={board:n,status:r,priority:i,badges:a,card:o,emptyState:s,errors:c,listView:l,gridView:u,statusFilter:d,sortControl:f,viewTier:p,labelFilter:m};export{t};
@@ -0,0 +1 @@
1
+ var e={title:`Spec`,dropHere:`Rilascia qui`,emptyNoSpecs:`Ancora nessuna spec`,emptyNoLabelMatch:`Nessuna spec corrisponde alle etichette attive`,emptyNoActiveSpecs:`Nessuna spec attiva`,emptyHint:`Clicca "+ Aggiungi" per iniziare`,dropToMarkDone:`Rilascia per contrassegnare come completata`,emptyNoDoneLabelMatch:`Nessuna spec completata corrisponde alle etichette attive`,emptyNoCompleted:`Ancora nessuna spec completata`,untitledSpec:`Spec senza titolo`},t={todo:`Da fare`,inProgress:`In corso`,done:`Completato`,cancelled:`Annullato`},n={critical:`critica`,high:`alta`,medium:`media`,low:`bassa`},r={epic:`Epic`,epicWithCount:`Epic · {{count}}`,subSpec:`↑ Sub-Spec`,review:`Revisione`,needsReviewTitle:`Questa spec è stata contrassegnata come completata ma il suo job è terminato con un errore — rivedila`,raw:`Raw`,rawTitle:`Spec Raw — nessuna generazione AI alla creazione`,contract:`Contract`,openParentEpicTitle:`Apri l'Epic padre #{{id}} · {{title}}`},i={deleteSpec:`Elimina spec #{{id}}`,deleteTicket:`Elimina ticket #{{id}}`,ticketFallbackLabel:`Ticket #{{id}}`,dependsOn:`Dipende da {{count}}`,continueEditing:`Continua a modificare`,continueEditingTitle:`Continua a modificare questa spec`,moveToRail:`Sposta su un rail`},a={noTickets:`Ancora nessun ticket`,noTicketsHint:`Crea il tuo primo ticket o esegui un comando di product backlog per popolare i ticket`,createFirst:`Crea il tuo primo ticket`},o={loadFailed:`Impossibile caricare i ticket`},s={status:{draft:`bozza`,todo:`da fare`,inProgress:`in corso`,done:`completato`,cancelled:`annullato`},filterAll:`Tutti ({{count}})`,statusWithCount:`{{status}} ({{count}})`,allLabels:`Tutte le etichette`,searchPlaceholder:`Cerca...`,columns:{status:`Stato`,title:`Titolo`,priority:`Priorità`,labels:`Etichette`,updated:`Aggiornato`},noMatch:`Nessun ticket corrisponde ai filtri`,clearFilters:`Cancella filtri`,loadMore:`Carica altri ({{count}} rimanenti)`},c={emptyTodo:`Nessun ticket da fare`,emptyInProgress:`Niente in corso`,emptyDone:`Nessun ticket completato`,cancelledSection:`Annullati ({{count}})`},l={ariaLabel:`Filtra per stato`,all:`Tutti`,todo:`Da fare`,done:`Completati`},u={modeAriaLabel:`Modalità di ordinamento`,tooltip:`Ordina: {{mode}}`,toggleDirAriaLabel:`Inverti direzione di ordinamento`,ascending:`Crescente`,descending:`Decrescente`,modes:{default:`Predefinito`,ticketId:`Ticket #`,priority:`Priorità`}},d={ariaLabel:`Vista delle spec`,listView:`Vista elenco`,postitView:`Vista post-it`},f={ariaLabel:`Filtra per etichette`,all:`Tutte`,empty:`Nessuna etichetta in questo progetto.`,selected_one:`{{count}} etichetta`,selected_other:`{{count}} etichette`,clear:`cancella`},p={board:e,status:t,priority:n,badges:r,card:i,emptyState:a,errors:o,listView:s,gridView:c,statusFilter:l,sortControl:u,viewTier:d,labelFilter:f};export{r as badges,e as board,i as card,p as default,a as emptyState,o as errors,c as gridView,f as labelFilter,s as listView,n as priority,u as sortControl,t as status,l as statusFilter,d as viewTier};
@@ -0,0 +1 @@
1
+ var e={comments:{lineComment:`--`,blockComment:[`/*`,`*/`]},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`]],autoClosingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`'`,close:`'`}],surroundingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`'`,close:`'`}]},t={defaultToken:``,tokenPostfix:`.sql`,ignoreCase:!0,brackets:[{open:`[`,close:`]`,token:`delimiter.square`},{open:`(`,close:`)`,token:`delimiter.parenthesis`}],keywords:`ABORT.ABSOLUTE.ACTION.ADA.ADD.AFTER.ALL.ALLOCATE.ALTER.ALWAYS.ANALYZE.AND.ANY.ARE.AS.ASC.ASSERTION.AT.ATTACH.AUTHORIZATION.AUTOINCREMENT.AVG.BACKUP.BEFORE.BEGIN.BETWEEN.BIT.BIT_LENGTH.BOTH.BREAK.BROWSE.BULK.BY.CASCADE.CASCADED.CASE.CAST.CATALOG.CHAR.CHARACTER.CHARACTER_LENGTH.CHAR_LENGTH.CHECK.CHECKPOINT.CLOSE.CLUSTERED.COALESCE.COLLATE.COLLATION.COLUMN.COMMIT.COMPUTE.CONFLICT.CONNECT.CONNECTION.CONSTRAINT.CONSTRAINTS.CONTAINS.CONTAINSTABLE.CONTINUE.CONVERT.CORRESPONDING.COUNT.CREATE.CROSS.CURRENT.CURRENT_DATE.CURRENT_TIME.CURRENT_TIMESTAMP.CURRENT_USER.CURSOR.DATABASE.DATE.DAY.DBCC.DEALLOCATE.DEC.DECIMAL.DECLARE.DEFAULT.DEFERRABLE.DEFERRED.DELETE.DENY.DESC.DESCRIBE.DESCRIPTOR.DETACH.DIAGNOSTICS.DISCONNECT.DISK.DISTINCT.DISTRIBUTED.DO.DOMAIN.DOUBLE.DROP.DUMP.EACH.ELSE.END.END-EXEC.ERRLVL.ESCAPE.EXCEPT.EXCEPTION.EXCLUDE.EXCLUSIVE.EXEC.EXECUTE.EXISTS.EXIT.EXPLAIN.EXTERNAL.EXTRACT.FAIL.FALSE.FETCH.FILE.FILLFACTOR.FILTER.FIRST.FLOAT.FOLLOWING.FOR.FOREIGN.FORTRAN.FOUND.FREETEXT.FREETEXTTABLE.FROM.FULL.FUNCTION.GENERATED.GET.GLOB.GLOBAL.GO.GOTO.GRANT.GROUP.GROUPS.HAVING.HOLDLOCK.HOUR.IDENTITY.IDENTITYCOL.IDENTITY_INSERT.IF.IGNORE.IMMEDIATE.IN.INCLUDE.INDEX.INDEXED.INDICATOR.INITIALLY.INNER.INPUT.INSENSITIVE.INSERT.INSTEAD.INT.INTEGER.INTERSECT.INTERVAL.INTO.IS.ISNULL.ISOLATION.JOIN.KEY.KILL.LANGUAGE.LAST.LEADING.LEFT.LEVEL.LIKE.LIMIT.LINENO.LOAD.LOCAL.LOWER.MATCH.MATERIALIZED.MAX.MERGE.MIN.MINUTE.MODULE.MONTH.NAMES.NATIONAL.NATURAL.NCHAR.NEXT.NO.NOCHECK.NONCLUSTERED.NONE.NOT.NOTHING.NOTNULL.NULL.NULLIF.NULLS.NUMERIC.OCTET_LENGTH.OF.OFF.OFFSET.OFFSETS.ON.ONLY.OPEN.OPENDATASOURCE.OPENQUERY.OPENROWSET.OPENXML.OPTION.OR.ORDER.OTHERS.OUTER.OUTPUT.OVER.OVERLAPS.PAD.PARTIAL.PARTITION.PASCAL.PERCENT.PIVOT.PLAN.POSITION.PRAGMA.PRECEDING.PRECISION.PREPARE.PRESERVE.PRIMARY.PRINT.PRIOR.PRIVILEGES.PROC.PROCEDURE.PUBLIC.QUERY.RAISE.RAISERROR.RANGE.READ.READTEXT.REAL.RECONFIGURE.RECURSIVE.REFERENCES.REGEXP.REINDEX.RELATIVE.RELEASE.RENAME.REPLACE.REPLICATION.RESTORE.RESTRICT.RETURN.RETURNING.REVERT.REVOKE.RIGHT.ROLLBACK.ROW.ROWCOUNT.ROWGUIDCOL.ROWS.RULE.SAVE.SAVEPOINT.SCHEMA.SCROLL.SECOND.SECTION.SECURITYAUDIT.SELECT.SEMANTICKEYPHRASETABLE.SEMANTICSIMILARITYDETAILSTABLE.SEMANTICSIMILARITYTABLE.SESSION.SESSION_USER.SET.SETUSER.SHUTDOWN.SIZE.SMALLINT.SOME.SPACE.SQL.SQLCA.SQLCODE.SQLERROR.SQLSTATE.SQLWARNING.STATISTICS.SUBSTRING.SUM.SYSTEM_USER.TABLE.TABLESAMPLE.TEMP.TEMPORARY.TEXTSIZE.THEN.TIES.TIME.TIMESTAMP.TIMEZONE_HOUR.TIMEZONE_MINUTE.TO.TOP.TRAILING.TRAN.TRANSACTION.TRANSLATE.TRANSLATION.TRIGGER.TRIM.TRUE.TRUNCATE.TRY_CONVERT.TSEQUAL.UNBOUNDED.UNION.UNIQUE.UNKNOWN.UNPIVOT.UPDATE.UPDATETEXT.UPPER.USAGE.USE.USER.USING.VACUUM.VALUE.VALUES.VARCHAR.VARYING.VIEW.VIRTUAL.WAITFOR.WHEN.WHENEVER.WHERE.WHILE.WINDOW.WITH.WITHIN GROUP.WITHOUT.WORK.WRITE.WRITETEXT.YEAR.ZONE`.split(`.`),operators:`ALL.AND.ANY.BETWEEN.EXISTS.IN.LIKE.NOT.OR.SOME.EXCEPT.INTERSECT.UNION.APPLY.CROSS.FULL.INNER.JOIN.LEFT.OUTER.RIGHT.CONTAINS.FREETEXT.IS.NULL.PIVOT.UNPIVOT.MATCHED`.split(`.`),builtinFunctions:`AVG.CHECKSUM_AGG.COUNT.COUNT_BIG.GROUPING.GROUPING_ID.MAX.MIN.SUM.STDEV.STDEVP.VAR.VARP.CUME_DIST.FIRST_VALUE.LAG.LAST_VALUE.LEAD.PERCENTILE_CONT.PERCENTILE_DISC.PERCENT_RANK.COLLATE.COLLATIONPROPERTY.TERTIARY_WEIGHTS.FEDERATION_FILTERING_VALUE.CAST.CONVERT.PARSE.TRY_CAST.TRY_CONVERT.TRY_PARSE.ASYMKEY_ID.ASYMKEYPROPERTY.CERTPROPERTY.CERT_ID.CRYPT_GEN_RANDOM.DECRYPTBYASYMKEY.DECRYPTBYCERT.DECRYPTBYKEY.DECRYPTBYKEYAUTOASYMKEY.DECRYPTBYKEYAUTOCERT.DECRYPTBYPASSPHRASE.ENCRYPTBYASYMKEY.ENCRYPTBYCERT.ENCRYPTBYKEY.ENCRYPTBYPASSPHRASE.HASHBYTES.IS_OBJECTSIGNED.KEY_GUID.KEY_ID.KEY_NAME.SIGNBYASYMKEY.SIGNBYCERT.SYMKEYPROPERTY.VERIFYSIGNEDBYCERT.VERIFYSIGNEDBYASYMKEY.CURSOR_STATUS.DATALENGTH.IDENT_CURRENT.IDENT_INCR.IDENT_SEED.IDENTITY.SQL_VARIANT_PROPERTY.CURRENT_TIMESTAMP.DATEADD.DATEDIFF.DATEFROMPARTS.DATENAME.DATEPART.DATETIME2FROMPARTS.DATETIMEFROMPARTS.DATETIMEOFFSETFROMPARTS.DAY.EOMONTH.GETDATE.GETUTCDATE.ISDATE.MONTH.SMALLDATETIMEFROMPARTS.SWITCHOFFSET.SYSDATETIME.SYSDATETIMEOFFSET.SYSUTCDATETIME.TIMEFROMPARTS.TODATETIMEOFFSET.YEAR.CHOOSE.COALESCE.IIF.NULLIF.ABS.ACOS.ASIN.ATAN.ATN2.CEILING.COS.COT.DEGREES.EXP.FLOOR.LOG.LOG10.PI.POWER.RADIANS.RAND.ROUND.SIGN.SIN.SQRT.SQUARE.TAN.APP_NAME.APPLOCK_MODE.APPLOCK_TEST.ASSEMBLYPROPERTY.COL_LENGTH.COL_NAME.COLUMNPROPERTY.DATABASE_PRINCIPAL_ID.DATABASEPROPERTYEX.DB_ID.DB_NAME.FILE_ID.FILE_IDEX.FILE_NAME.FILEGROUP_ID.FILEGROUP_NAME.FILEGROUPPROPERTY.FILEPROPERTY.FULLTEXTCATALOGPROPERTY.FULLTEXTSERVICEPROPERTY.INDEX_COL.INDEXKEY_PROPERTY.INDEXPROPERTY.OBJECT_DEFINITION.OBJECT_ID.OBJECT_NAME.OBJECT_SCHEMA_NAME.OBJECTPROPERTY.OBJECTPROPERTYEX.ORIGINAL_DB_NAME.PARSENAME.SCHEMA_ID.SCHEMA_NAME.SCOPE_IDENTITY.SERVERPROPERTY.STATS_DATE.TYPE_ID.TYPE_NAME.TYPEPROPERTY.DENSE_RANK.NTILE.RANK.ROW_NUMBER.PUBLISHINGSERVERNAME.OPENDATASOURCE.OPENQUERY.OPENROWSET.OPENXML.CERTENCODED.CERTPRIVATEKEY.CURRENT_USER.HAS_DBACCESS.HAS_PERMS_BY_NAME.IS_MEMBER.IS_ROLEMEMBER.IS_SRVROLEMEMBER.LOGINPROPERTY.ORIGINAL_LOGIN.PERMISSIONS.PWDENCRYPT.PWDCOMPARE.SESSION_USER.SESSIONPROPERTY.SUSER_ID.SUSER_NAME.SUSER_SID.SUSER_SNAME.SYSTEM_USER.USER.USER_ID.USER_NAME.ASCII.CHAR.CHARINDEX.CONCAT.DIFFERENCE.FORMAT.LEFT.LEN.LOWER.LTRIM.NCHAR.PATINDEX.QUOTENAME.REPLACE.REPLICATE.REVERSE.RIGHT.RTRIM.SOUNDEX.SPACE.STR.STUFF.SUBSTRING.UNICODE.UPPER.BINARY_CHECKSUM.CHECKSUM.CONNECTIONPROPERTY.CONTEXT_INFO.CURRENT_REQUEST_ID.ERROR_LINE.ERROR_NUMBER.ERROR_MESSAGE.ERROR_PROCEDURE.ERROR_SEVERITY.ERROR_STATE.FORMATMESSAGE.GETANSINULL.GET_FILESTREAM_TRANSACTION_CONTEXT.HOST_ID.HOST_NAME.ISNULL.ISNUMERIC.MIN_ACTIVE_ROWVERSION.NEWID.NEWSEQUENTIALID.ROWCOUNT_BIG.XACT_STATE.TEXTPTR.TEXTVALID.COLUMNS_UPDATED.EVENTDATA.TRIGGER_NESTLEVEL.UPDATE.CHANGETABLE.CHANGE_TRACKING_CONTEXT.CHANGE_TRACKING_CURRENT_VERSION.CHANGE_TRACKING_IS_COLUMN_IN_MASK.CHANGE_TRACKING_MIN_VALID_VERSION.CONTAINSTABLE.FREETEXTTABLE.SEMANTICKEYPHRASETABLE.SEMANTICSIMILARITYDETAILSTABLE.SEMANTICSIMILARITYTABLE.FILETABLEROOTPATH.GETFILENAMESPACEPATH.GETPATHLOCATOR.PATHNAME.GET_TRANSMISSION_STATUS`.split(`.`),builtinVariables:`@@DATEFIRST.@@DBTS.@@LANGID.@@LANGUAGE.@@LOCK_TIMEOUT.@@MAX_CONNECTIONS.@@MAX_PRECISION.@@NESTLEVEL.@@OPTIONS.@@REMSERVER.@@SERVERNAME.@@SERVICENAME.@@SPID.@@TEXTSIZE.@@VERSION.@@CURSOR_ROWS.@@FETCH_STATUS.@@DATEFIRST.@@PROCID.@@ERROR.@@IDENTITY.@@ROWCOUNT.@@TRANCOUNT.@@CONNECTIONS.@@CPU_BUSY.@@IDLE.@@IO_BUSY.@@PACKET_ERRORS.@@PACK_RECEIVED.@@PACK_SENT.@@TIMETICKS.@@TOTAL_ERRORS.@@TOTAL_READ.@@TOTAL_WRITE`.split(`.`),pseudoColumns:[`$ACTION`,`$IDENTITY`,`$ROWGUID`,`$PARTITION`],tokenizer:{root:[{include:`@comments`},{include:`@whitespace`},{include:`@pseudoColumns`},{include:`@numbers`},{include:`@strings`},{include:`@complexIdentifiers`},{include:`@scopes`},[/[;,.]/,`delimiter`],[/[()]/,`@brackets`],[/[\w@#$]+/,{cases:{"@operators":`operator`,"@builtinVariables":`predefined`,"@builtinFunctions":`predefined`,"@keywords":`keyword`,"@default":`identifier`}}],[/[<>=!%&+\-*/|~^]/,`operator`]],whitespace:[[/\s+/,`white`]],comments:[[/--+.*/,`comment`],[/\/\*/,{token:`comment.quote`,next:`@comment`}]],comment:[[/[^*/]+/,`comment`],[/\*\//,{token:`comment.quote`,next:`@pop`}],[/./,`comment`]],pseudoColumns:[[/[$][A-Za-z_][\w@#$]*/,{cases:{"@pseudoColumns":`predefined`,"@default":`identifier`}}]],numbers:[[/0[xX][0-9a-fA-F]*/,`number`],[/[$][+-]*\d*(\.\d*)?/,`number`],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,`number`]],strings:[[/N'/,{token:`string`,next:`@string`}],[/'/,{token:`string`,next:`@string`}]],string:[[/[^']+/,`string`],[/''/,`string`],[/'/,{token:`string`,next:`@pop`}]],complexIdentifiers:[[/\[/,{token:`identifier.quote`,next:`@bracketedIdentifier`}],[/"/,{token:`identifier.quote`,next:`@quotedIdentifier`}]],bracketedIdentifier:[[/[^\]]+/,`identifier`],[/]]/,`identifier`],[/]/,{token:`identifier.quote`,next:`@pop`}]],quotedIdentifier:[[/[^"]+/,`identifier`],[/""/,`identifier`],[/"/,{token:`identifier.quote`,next:`@pop`}]],scopes:[[/BEGIN\s+(DISTRIBUTED\s+)?TRAN(SACTION)?\b/i,`keyword`],[/BEGIN\s+TRY\b/i,{token:`keyword.try`}],[/END\s+TRY\b/i,{token:`keyword.try`}],[/BEGIN\s+CATCH\b/i,{token:`keyword.catch`}],[/END\s+CATCH\b/i,{token:`keyword.catch`}],[/(BEGIN|CASE)\b/i,{token:`keyword.block`}],[/END\b/i,{token:`keyword.block`}],[/WHEN\b/i,{token:`keyword.choice`}],[/THEN\b/i,{token:`keyword.choice`}]]}};export{e as conf,t as language};
@@ -0,0 +1 @@
1
+ var e={comments:{lineComment:`//`,blockComment:[`(*`,`*)`]},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`],[`var`,`end_var`],[`var_input`,`end_var`],[`var_output`,`end_var`],[`var_in_out`,`end_var`],[`var_temp`,`end_var`],[`var_global`,`end_var`],[`var_access`,`end_var`],[`var_external`,`end_var`],[`type`,`end_type`],[`struct`,`end_struct`],[`program`,`end_program`],[`function`,`end_function`],[`function_block`,`end_function_block`],[`action`,`end_action`],[`step`,`end_step`],[`initial_step`,`end_step`],[`transaction`,`end_transaction`],[`configuration`,`end_configuration`],[`tcp`,`end_tcp`],[`recource`,`end_recource`],[`channel`,`end_channel`],[`library`,`end_library`],[`folder`,`end_folder`],[`binaries`,`end_binaries`],[`includes`,`end_includes`],[`sources`,`end_sources`]],autoClosingPairs:[{open:`[`,close:`]`},{open:`{`,close:`}`},{open:`(`,close:`)`},{open:`/*`,close:`*/`},{open:`'`,close:`'`,notIn:[`string_sq`]},{open:`"`,close:`"`,notIn:[`string_dq`]},{open:`var_input`,close:`end_var`},{open:`var_output`,close:`end_var`},{open:`var_in_out`,close:`end_var`},{open:`var_temp`,close:`end_var`},{open:`var_global`,close:`end_var`},{open:`var_access`,close:`end_var`},{open:`var_external`,close:`end_var`},{open:`type`,close:`end_type`},{open:`struct`,close:`end_struct`},{open:`program`,close:`end_program`},{open:`function`,close:`end_function`},{open:`function_block`,close:`end_function_block`},{open:`action`,close:`end_action`},{open:`step`,close:`end_step`},{open:`initial_step`,close:`end_step`},{open:`transaction`,close:`end_transaction`},{open:`configuration`,close:`end_configuration`},{open:`tcp`,close:`end_tcp`},{open:`recource`,close:`end_recource`},{open:`channel`,close:`end_channel`},{open:`library`,close:`end_library`},{open:`folder`,close:`end_folder`},{open:`binaries`,close:`end_binaries`},{open:`includes`,close:`end_includes`},{open:`sources`,close:`end_sources`}],surroundingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`'`,close:`'`},{open:`var`,close:`end_var`},{open:`var_input`,close:`end_var`},{open:`var_output`,close:`end_var`},{open:`var_in_out`,close:`end_var`},{open:`var_temp`,close:`end_var`},{open:`var_global`,close:`end_var`},{open:`var_access`,close:`end_var`},{open:`var_external`,close:`end_var`},{open:`type`,close:`end_type`},{open:`struct`,close:`end_struct`},{open:`program`,close:`end_program`},{open:`function`,close:`end_function`},{open:`function_block`,close:`end_function_block`},{open:`action`,close:`end_action`},{open:`step`,close:`end_step`},{open:`initial_step`,close:`end_step`},{open:`transaction`,close:`end_transaction`},{open:`configuration`,close:`end_configuration`},{open:`tcp`,close:`end_tcp`},{open:`recource`,close:`end_recource`},{open:`channel`,close:`end_channel`},{open:`library`,close:`end_library`},{open:`folder`,close:`end_folder`},{open:`binaries`,close:`end_binaries`},{open:`includes`,close:`end_includes`},{open:`sources`,close:`end_sources`}],folding:{markers:{start:RegExp(`^\\s*#pragma\\s+region\\b`),end:RegExp(`^\\s*#pragma\\s+endregion\\b`)}}},t={defaultToken:``,tokenPostfix:`.st`,ignoreCase:!0,brackets:[{token:`delimiter.curly`,open:`{`,close:`}`},{token:`delimiter.parenthesis`,open:`(`,close:`)`},{token:`delimiter.square`,open:`[`,close:`]`}],keywords:`if.end_if.elsif.else.case.of.to.__try.__catch.__finally.do.with.by.while.repeat.end_while.end_repeat.end_case.for.end_for.task.retain.non_retain.constant.with.at.exit.return.interval.priority.address.port.on_channel.then.iec.file.uses.version.packagetype.displayname.copyright.summary.vendor.common_source.from.extends.implements`.split(`.`),constant:[`false`,`true`,`null`],defineKeywords:`var.var_input.var_output.var_in_out.var_temp.var_global.var_access.var_external.end_var.type.end_type.struct.end_struct.program.end_program.function.end_function.function_block.end_function_block.interface.end_interface.method.end_method.property.end_property.namespace.end_namespace.configuration.end_configuration.tcp.end_tcp.resource.end_resource.channel.end_channel.library.end_library.folder.end_folder.binaries.end_binaries.includes.end_includes.sources.end_sources.action.end_action.step.initial_step.end_step.transaction.end_transaction`.split(`.`),typeKeywords:[`int`,`sint`,`dint`,`lint`,`usint`,`uint`,`udint`,`ulint`,`real`,`lreal`,`time`,`date`,`time_of_day`,`date_and_time`,`string`,`bool`,`byte`,`word`,`dword`,`array`,`pointer`,`lword`],operators:`=.>.<.:.:=.<=.>=.<>.&.+.-.*.**.MOD.^.or.and.not.xor.abs.acos.asin.atan.cos.exp.expt.ln.log.sin.sqrt.tan.sel.max.min.limit.mux.shl.shr.rol.ror.indexof.sizeof.adr.adrinst.bitadr.is_valid.ref.ref_to`.split(`.`),builtinVariables:[],builtinFunctions:`sr.rs.tp.ton.tof.eq.ge.le.lt.ne.round.trunc.ctd.сtu.ctud.r_trig.f_trig.move.concat.delete.find.insert.left.len.replace.right.rtc`.split(`.`),symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/(\.\.)/,`delimiter`],[/\b(16#[0-9A-Fa-f\_]*)+\b/,`number.hex`],[/\b(2#[01\_]+)+\b/,`number.binary`],[/\b(8#[0-9\_]*)+\b/,`number.octal`],[/\b\d*\.\d+([eE][\-+]?\d+)?\b/,`number.float`],[/\b(L?REAL)#[0-9\_\.e]+\b/,`number.float`],[/\b(BYTE|(?:D|L)?WORD|U?(?:S|D|L)?INT)#[0-9\_]+\b/,`number`],[/\d+/,`number`],[/\b(T|DT|TOD)#[0-9:-_shmyd]+\b/,`tag`],[/\%(I|Q|M)(X|B|W|D|L)[0-9\.]+/,`tag`],[/\%(I|Q|M)[0-9\.]*/,`tag`],[/\b[A-Za-z]{1,6}#[0-9]+\b/,`tag`],[/\b(TO_|CTU_|CTD_|CTUD_|MUX_|SEL_)[A_Za-z]+\b/,`predefined`],[/\b[A_Za-z]+(_TO_)[A_Za-z]+\b/,`predefined`],[/[;]/,`delimiter`],[/[.]/,{token:`delimiter`,next:`@params`}],[/[a-zA-Z_]\w*/,{cases:{"@operators":`operators`,"@keywords":`keyword`,"@typeKeywords":`type`,"@defineKeywords":`variable`,"@constant":`constant`,"@builtinVariables":`predefined`,"@builtinFunctions":`predefined`,"@default":`identifier`}}],{include:`@whitespace`},[/[{}()\[\]]/,`@brackets`],[/"([^"\\]|\\.)*$/,`string.invalid`],[/"/,{token:`string.quote`,bracket:`@open`,next:`@string_dq`}],[/'/,{token:`string.quote`,bracket:`@open`,next:`@string_sq`}],[/'[^\\']'/,`string`],[/(')(@escapes)(')/,[`string`,`string.escape`,`string`]],[/'/,`string.invalid`]],params:[[/\b[A-Za-z0-9_]+\b(?=\()/,{token:`identifier`,next:`@pop`}],[/\b[A-Za-z0-9_]+\b/,`variable.name`,`@pop`]],comment:[[/[^\/*]+/,`comment`],[/\/\*/,`comment`,`@push`],[`\\*/`,`comment`,`@pop`],[/[\/*]/,`comment`]],comment2:[[/[^\(*]+/,`comment`],[/\(\*/,`comment`,`@push`],[`\\*\\)`,`comment`,`@pop`],[/[\(*]/,`comment`]],whitespace:[[/[ \t\r\n]+/,`white`],[/\/\/.*$/,`comment`],[/\/\*/,`comment`,`@comment`],[/\(\*/,`comment`,`@comment2`]],string_dq:[[/[^\\"]+/,`string`],[/@escapes/,`string.escape`],[/\\./,`string.escape.invalid`],[/"/,{token:`string.quote`,bracket:`@close`,next:`@pop`}]],string_sq:[[/[^\\']+/,`string`],[/@escapes/,`string.escape`],[/\\./,`string.escape.invalid`],[/'/,{token:`string.quote`,bracket:`@close`,next:`@pop`}]]}};export{e as conf,t as language};
@@ -0,0 +1 @@
1
+ var e={comments:{lineComment:`//`,blockComment:[`/*`,`*/`]},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`]],autoClosingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`'`,close:`'`},{open:"`",close:"`"}],surroundingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`'`,close:`'`},{open:"`",close:"`"}]},t={defaultToken:``,tokenPostfix:`.swift`,identifier:/[a-zA-Z_][\w$]*/,attributes:`@GKInspectable.@IBAction.@IBDesignable.@IBInspectable.@IBOutlet.@IBSegueAction.@NSApplicationMain.@NSCopying.@NSManaged.@Sendable.@UIApplicationMain.@autoclosure.@actorIndependent.@asyncHandler.@available.@convention.@derivative.@differentiable.@discardableResult.@dynamicCallable.@dynamicMemberLookup.@escaping.@frozen.@globalActor.@inlinable.@inline.@main.@noDerivative.@nonobjc.@noreturn.@objc.@objcMembers.@preconcurrency.@propertyWrapper.@requires_stored_property_inits.@resultBuilder.@testable.@unchecked.@unknown.@usableFromInline.@warn_unqualified_access`.split(`.`),accessmodifiers:[`open`,`public`,`internal`,`fileprivate`,`private`],keywords:`#available.#colorLiteral.#column.#dsohandle.#else.#elseif.#endif.#error.#file.#fileID.#fileLiteral.#filePath.#function.#if.#imageLiteral.#keyPath.#line.#selector.#sourceLocation.#warning.Any.Protocol.Self.Type.actor.as.assignment.associatedtype.associativity.async.await.break.case.catch.class.continue.convenience.default.defer.deinit.didSet.do.dynamic.dynamicType.else.enum.extension.fallthrough.false.fileprivate.final.for.func.get.guard.higherThan.if.import.in.indirect.infix.init.inout.internal.is.isolated.lazy.left.let.lowerThan.mutating.nil.none.nonisolated.nonmutating.open.operator.optional.override.postfix.precedence.precedencegroup.prefix.private.protocol.public.repeat.required.rethrows.return.right.safe.self.set.some.static.struct.subscript.super.switch.throw.throws.true.try.typealias.unowned.unsafe.var.weak.where.while.willSet.__consuming.__owned`.split(`.`),symbols:/[=(){}\[\].,:;@#\_&\-<>`?!+*\\\/]/,operatorstart:/[\/=\-+!*%<>&|^~?\u00A1-\u00A7\u00A9\u00AB\u00AC\u00AE\u00B0-\u00B1\u00B6\u00BB\u00BF\u00D7\u00F7\u2016-\u2017\u2020-\u2027\u2030-\u203E\u2041-\u2053\u2055-\u205E\u2190-\u23FF\u2500-\u2775\u2794-\u2BFF\u2E00-\u2E7F\u3001-\u3003\u3008-\u3030]/,operatorend:/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE00-\uFE0F\uFE20-\uFE2F\uE0100-\uE01EF]/,operators:/(@operatorstart)((@operatorstart)|(@operatorend))*/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[{include:`@whitespace`},{include:`@comment`},{include:`@attribute`},{include:`@literal`},{include:`@keyword`},{include:`@invokedmethod`},{include:`@symbol`}],whitespace:[[/\s+/,`white`],[/"""/,`string.quote`,`@endDblDocString`]],endDblDocString:[[/[^"]+/,`string`],[/\\"/,`string`],[/"""/,`string.quote`,`@popall`],[/"/,`string`]],symbol:[[/[{}()\[\]]/,`@brackets`],[/[<>](?!@symbols)/,`@brackets`],[/[.]/,`delimiter`],[/@operators/,`operator`],[/@symbols/,`operator`]],comment:[[/\/\/\/.*$/,`comment.doc`],[/\/\*\*/,`comment.doc`,`@commentdocbody`],[/\/\/.*$/,`comment`],[/\/\*/,`comment`,`@commentbody`]],commentdocbody:[[/\/\*/,`comment`,`@commentbody`],[/\*\//,`comment.doc`,`@pop`],[/\:[a-zA-Z]+\:/,`comment.doc.param`],[/./,`comment.doc`]],commentbody:[[/\/\*/,`comment`,`@commentbody`],[/\*\//,`comment`,`@pop`],[/./,`comment`]],attribute:[[/@@@identifier/,{cases:{"@attributes":`keyword.control`,"@default":``}}]],literal:[[/"/,{token:`string.quote`,next:`@stringlit`}],[/0[b]([01]_?)+/,`number.binary`],[/0[o]([0-7]_?)+/,`number.octal`],[/0[x]([0-9a-fA-F]_?)+([pP][\-+](\d_?)+)?/,`number.hex`],[/(\d_?)*\.(\d_?)+([eE][\-+]?(\d_?)+)?/,`number.float`],[/(\d_?)+/,`number`]],stringlit:[[/\\\(/,{token:`operator`,next:`@interpolatedexpression`}],[/@escapes/,`string`],[/\\./,`string.escape.invalid`],[/"/,{token:`string.quote`,next:`@pop`}],[/./,`string`]],interpolatedexpression:[[/\(/,{token:`operator`,next:`@interpolatedexpression`}],[/\)/,{token:`operator`,next:`@pop`}],{include:`@literal`},{include:`@keyword`},{include:`@symbol`}],keyword:[[/`/,{token:`operator`,next:`@escapedkeyword`}],[/@identifier/,{cases:{"@keywords":`keyword`,"[A-Z][a-zA-Z0-9$]*":`type.identifier`,"@default":`identifier`}}]],escapedkeyword:[[/`/,{token:`operator`,next:`@pop`}],[/./,`identifier`]],invokedmethod:[[/([.])(@identifier)/,{cases:{$2:[`delimeter`,`type.identifier`],"@default":``}}]]}};export{e as conf,t as language};
@@ -0,0 +1 @@
1
+ var e={comments:{lineComment:`//`,blockComment:[`/*`,`*/`]},brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`],[`begin`,`end`],[`case`,`endcase`],[`casex`,`endcase`],[`casez`,`endcase`],[`checker`,`endchecker`],[`class`,`endclass`],[`clocking`,`endclocking`],[`config`,`endconfig`],[`function`,`endfunction`],[`generate`,`endgenerate`],[`group`,`endgroup`],[`interface`,`endinterface`],[`module`,`endmodule`],[`package`,`endpackage`],[`primitive`,`endprimitive`],[`program`,`endprogram`],[`property`,`endproperty`],[`specify`,`endspecify`],[`sequence`,`endsequence`],[`table`,`endtable`],[`task`,`endtask`]],autoClosingPairs:[{open:`[`,close:`]`},{open:`{`,close:`}`},{open:`(`,close:`)`},{open:`'`,close:`'`,notIn:[`string`,`comment`]},{open:`"`,close:`"`,notIn:[`string`]}],surroundingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`'`,close:`'`}],folding:{offSide:!1,markers:{start:RegExp(`^(?:\\s*|.*(?!\\/[\\/\\*])[^\\w])(?:begin|case(x|z)?|class|clocking|config|covergroup|function|generate|interface|module|package|primitive|property|program|sequence|specify|table|task)\\b`),end:RegExp(`^(?:\\s*|.*(?!\\/[\\/\\*])[^\\w])(?:end|endcase|endclass|endclocking|endconfig|endgroup|endfunction|endgenerate|endinterface|endmodule|endpackage|endprimitive|endproperty|endprogram|endsequence|endspecify|endtable|endtask)\\b`)}}},t={defaultToken:``,tokenPostfix:`.sv`,brackets:[{token:`delimiter.curly`,open:`{`,close:`}`},{token:`delimiter.parenthesis`,open:`(`,close:`)`},{token:`delimiter.square`,open:`[`,close:`]`},{token:`delimiter.angle`,open:`<`,close:`>`}],keywords:`accept_on.alias.always.always_comb.always_ff.always_latch.and.assert.assign.assume.automatic.before.begin.bind.bins.binsof.bit.break.buf.bufif0.bufif1.byte.case.casex.casez.cell.chandle.checker.class.clocking.cmos.config.const.constraint.context.continue.cover.covergroup.coverpoint.cross.deassign.default.defparam.design.disable.dist.do.edge.else.end.endcase.endchecker.endclass.endclocking.endconfig.endfunction.endgenerate.endgroup.endinterface.endmodule.endpackage.endprimitive.endprogram.endproperty.endspecify.endsequence.endtable.endtask.enum.event.eventually.expect.export.extends.extern.final.first_match.for.force.foreach.forever.fork.forkjoin.function.generate.genvar.global.highz0.highz1.if.iff.ifnone.ignore_bins.illegal_bins.implements.implies.import.incdir.include.initial.inout.input.inside.instance.int.integer.interconnect.interface.intersect.join.join_any.join_none.large.let.liblist.library.local.localparam.logic.longint.macromodule.matches.medium.modport.module.nand.negedge.nettype.new.nexttime.nmos.nor.noshowcancelled.not.notif0.notif1.null.or.output.package.packed.parameter.pmos.posedge.primitive.priority.program.property.protected.pull0.pull1.pulldown.pullup.pulsestyle_ondetect.pulsestyle_onevent.pure.rand.randc.randcase.randsequence.rcmos.real.realtime.ref.reg.reject_on.release.repeat.restrict.return.rnmos.rpmos.rtran.rtranif0.rtranif1.s_always.s_eventually.s_nexttime.s_until.s_until_with.scalared.sequence.shortint.shortreal.showcancelled.signed.small.soft.solve.specify.specparam.static.string.strong.strong0.strong1.struct.super.supply0.supply1.sync_accept_on.sync_reject_on.table.tagged.task.this.throughout.time.timeprecision.timeunit.tran.tranif0.tranif1.tri.tri0.tri1.triand.trior.trireg.type.typedef.union.unique.unique0.unsigned.until.until_with.untyped.use.uwire.var.vectored.virtual.void.wait.wait_order.wand.weak.weak0.weak1.while.wildcard.wire.with.within.wor.xnor.xor`.split(`.`),builtin_gates:[`and`,`nand`,`nor`,`or`,`xor`,`xnor`,`buf`,`not`,`bufif0`,`bufif1`,`notif1`,`notif0`,`cmos`,`nmos`,`pmos`,`rcmos`,`rnmos`,`rpmos`,`tran`,`tranif1`,`tranif0`,`rtran`,`rtranif1`,`rtranif0`],operators:`=.+=.-=.*=./=.%=.&=.|=.^=.<<=.>>+.<<<=.>>>=.?.:.+.-.!.~.&.~&.|.~|.^.~^.^~.+.-.*./.%.==.!=.===.!==.==?.!=?.&&.||.**.<.<=.>.>=.&.|.^.>>.<<.>>>.<<<.++.--.->.<->.inside.dist.::.+:.-:.*>.&&&.|->.|=>.#=#`.split(`.`),symbols:/[=><!~?:&|+\-*\/\^%#]+/,escapes:/%%|\\(?:[antvf\\"']|x[0-9A-Fa-f]{1,2}|[0-7]{1,3})/,identifier:/(?:[a-zA-Z_][a-zA-Z0-9_$\.]*|\\\S+ )/,systemcall:/[$][a-zA-Z0-9_]+/,timeunits:/s|ms|us|ns|ps|fs/,tokenizer:{root:[[/^(\s*)(@identifier)/,[``,{cases:{"@builtin_gates":{token:`keyword.$2`,next:`@module_instance`},table:{token:`keyword.$2`,next:`@table`},"@keywords":{token:`keyword.$2`},"@default":{token:`identifier`,next:`@module_instance`}}}]],[/^\s*`include/,{token:`keyword.directive.include`,next:`@include`}],[/^\s*`\s*\w+/,`keyword`],{include:`@identifier_or_keyword`},{include:`@whitespace`},[/\(\*.*\*\)/,`annotation`],[/@systemcall/,`variable.predefined`],[/[{}()\[\]]/,`@brackets`],[/[<>](?!@symbols)/,`@brackets`],[/@symbols/,{cases:{"@operators":`delimiter`,"@default":``}}],{include:`@numbers`},[/[;,.]/,`delimiter`],{include:`@strings`}],identifier_or_keyword:[[/@identifier/,{cases:{"@keywords":{token:`keyword.$0`},"@default":`identifier`}}]],numbers:[[/\d+?[\d_]*(?:\.[\d_]+)?[eE][\-+]?\d+/,`number.float`],[/\d+?[\d_]*\.[\d_]+(?:\s*@timeunits)?/,`number.float`],[/(?:\d+?[\d_]*\s*)?'[sS]?[dD]\s*[0-9xXzZ?]+?[0-9xXzZ?_]*/,`number`],[/(?:\d+?[\d_]*\s*)?'[sS]?[bB]\s*[0-1xXzZ?]+?[0-1xXzZ?_]*/,`number.binary`],[/(?:\d+?[\d_]*\s*)?'[sS]?[oO]\s*[0-7xXzZ?]+?[0-7xXzZ?_]*/,`number.octal`],[/(?:\d+?[\d_]*\s*)?'[sS]?[hH]\s*[0-9a-fA-FxXzZ?]+?[0-9a-fA-FxXzZ?_]*/,`number.hex`],[/1step/,`number`],[/[\dxXzZ]+?[\dxXzZ_]*(?:\s*@timeunits)?/,`number`],[/'[01xXzZ]+/,`number`]],module_instance:[{include:`@whitespace`},[/(#?)(\()/,[``,{token:`@brackets`,next:`@port_connection`}]],[/@identifier\s*[;={}\[\],]/,{token:`@rematch`,next:`@pop`}],[/@symbols|[;={}\[\],]/,{token:`@rematch`,next:`@pop`}],[/@identifier/,`type`],[/;/,`delimiter`,`@pop`]],port_connection:[{include:`@identifier_or_keyword`},{include:`@whitespace`},[/@systemcall/,`variable.predefined`],{include:`@numbers`},{include:`@strings`},[/[,]/,`delimiter`],[/\(/,`@brackets`,`@port_connection`],[/\)/,`@brackets`,`@pop`]],whitespace:[[/[ \t\r\n]+/,``],[/\/\*/,`comment`,`@comment`],[/\/\/.*$/,`comment`]],comment:[[/[^\/*]+/,`comment`],[/\*\//,`comment`,`@pop`],[/[\/*]/,`comment`]],strings:[[/"([^"\\]|\\.)*$/,`string.invalid`],[/"/,`string`,`@string`]],string:[[/[^\\"]+/,`string`],[/@escapes/,`string.escape`],[/\\./,`string.escape.invalid`],[/"/,`string`,`@pop`]],include:[[/(\s*)(")([\w*\/*]*)(.\w*)(")/,[``,`string.include.identifier`,`string.include.identifier`,`string.include.identifier`,{token:`string.include.identifier`,next:`@pop`}]],[/(\s*)(<)([\w*\/*]*)(.\w*)(>)/,[``,`string.include.identifier`,`string.include.identifier`,`string.include.identifier`,{token:`string.include.identifier`,next:`@pop`}]]],table:[{include:`@whitespace`},[/[()]/,`@brackets`],[/[:;]/,`delimiter`],[/[01\-*?xXbBrRfFpPnN]/,`variable.predefined`],[`endtable`,`keyword.endtable`,`@pop`]]}};export{e as conf,t as language};
@@ -0,0 +1 @@
1
+ var e={brackets:[[`{`,`}`],[`[`,`]`],[`(`,`)`]],autoClosingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`'`,close:`'`}],surroundingPairs:[{open:`{`,close:`}`},{open:`[`,close:`]`},{open:`(`,close:`)`},{open:`"`,close:`"`},{open:`'`,close:`'`}]},t={tokenPostfix:`.tcl`,specialFunctions:[`set`,`unset`,`rename`,`variable`,`proc`,`coroutine`,`foreach`,`incr`,`append`,`lappend`,`linsert`,`lreplace`],mainFunctions:[`if`,`then`,`elseif`,`else`,`case`,`switch`,`while`,`for`,`break`,`continue`,`return`,`package`,`namespace`,`catch`,`exit`,`eval`,`expr`,`uplevel`,`upvar`],builtinFunctions:`file.info.concat.join.lindex.list.llength.lrange.lsearch.lsort.split.array.parray.binary.format.regexp.regsub.scan.string.subst.dict.cd.clock.exec.glob.pid.pwd.close.eof.fblocked.fconfigure.fcopy.fileevent.flush.gets.open.puts.read.seek.socket.tell.interp.after.auto_execok.auto_load.auto_mkindex.auto_reset.bgerror.error.global.history.load.source.time.trace.unknown.unset.update.vwait.winfo.wm.bind.event.pack.place.grid.font.bell.clipboard.destroy.focus.grab.lower.option.raise.selection.send.tk.tkwait.tk_bisque.tk_focusNext.tk_focusPrev.tk_focusFollowsMouse.tk_popup.tk_setPalette`.split(`.`),symbols:/[=><!~?:&|+\-*\/\^%]+/,brackets:[{open:`(`,close:`)`,token:`delimiter.parenthesis`},{open:`{`,close:`}`,token:`delimiter.curly`},{open:`[`,close:`]`,token:`delimiter.square`}],escapes:/\\(?:[abfnrtv\\"'\[\]\{\};\$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,variables:/(?:\$+(?:(?:\:\:?)?[a-zA-Z_]\w*)+)/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@specialFunctions":{token:`keyword.flow`,next:`@specialFunc`},"@mainFunctions":`keyword`,"@builtinFunctions":`variable`,"@default":`operator.scss`}}],[/\s+\-+(?!\d|\.)\w*|{\*}/,`metatag`],{include:`@whitespace`},[/[{}()\[\]]/,`@brackets`],[/@symbols/,`operator`],[/\$+(?:\:\:)?\{/,{token:`identifier`,next:`@nestedVariable`}],[/@variables/,`type.identifier`],[/\.(?!\d|\.)[\w\-]*/,`operator.sql`],[/\d+(\.\d+)?/,`number`],[/\d+/,`number`],[/;/,`delimiter`],[/"/,{token:`string.quote`,bracket:`@open`,next:`@dstring`}],[/'/,{token:`string.quote`,bracket:`@open`,next:`@sstring`}]],dstring:[[/\[/,{token:`@brackets`,next:`@nestedCall`}],[/\$+(?:\:\:)?\{/,{token:`identifier`,next:`@nestedVariable`}],[/@variables/,`type.identifier`],[/[^\\$\[\]"]+/,`string`],[/@escapes/,`string.escape`],[/"/,{token:`string.quote`,bracket:`@close`,next:`@pop`}]],sstring:[[/\[/,{token:`@brackets`,next:`@nestedCall`}],[/\$+(?:\:\:)?\{/,{token:`identifier`,next:`@nestedVariable`}],[/@variables/,`type.identifier`],[/[^\\$\[\]']+/,`string`],[/@escapes/,`string.escape`],[/'/,{token:`string.quote`,bracket:`@close`,next:`@pop`}]],whitespace:[[/[ \t\r\n]+/,`white`],[/#.*\\$/,{token:`comment`,next:`@newlineComment`}],[/#.*(?!\\)$/,`comment`]],newlineComment:[[/.*\\$/,`comment`],[/.*(?!\\)$/,{token:`comment`,next:`@pop`}]],nestedVariable:[[/[^\{\}\$]+/,`type.identifier`],[/\}/,{token:`identifier`,next:`@pop`}]],nestedCall:[[/\[/,{token:`@brackets`,next:`@nestedCall`}],[/\]/,{token:`@brackets`,next:`@pop`}],{include:`root`}],specialFunc:[[/"/,{token:`string`,next:`@dstring`}],[/'/,{token:`string`,next:`@sstring`}],[/\S+/,{token:`type`,next:`@pop`}]]}};export{e as conf,t as language};
@@ -0,0 +1 @@
1
+ var e={title:`Terminal`,openCliMulti:`Abrir CLI de IA en un terminal nuevo`,openCli:`Abrir {{cli}} en un terminal nuevo`,maxTerminals:`Máximo {{max}} terminales por proyecto`,openInBrowser:`Abrir en el navegador`,pasteScript:`Pegar script rápido en el terminal activo`,pasteScriptNoActive:`No hay terminal activo donde pegar`,newTerminal:`Nuevo terminal`,killActive:`Matar el terminal activo`,restorePanel:`Restaurar panel`,maximizePanel:`Maximizar panel`},t={collapse:`Contraer panel del terminal`,expand:`Expandir panel del terminal`},n={resize:`Redimensionar panel del terminal`},r={rename:`Renombrar {{name}}`,close:`Cerrar {{name}}`},i={noTerminals:`Aún no hay terminales en este proyecto.`,newTerminal:`Nuevo terminal`},a={placeholder:`Buscar`,previous:`Anterior (Shift+Enter)`,next:`Siguiente (Enter)`,matchCase:`Coincidir mayúsculas y minúsculas`,regex:`Regex`,wholeWord:`Palabra completa`,close:`Cerrar (Esc)`},o={paste:`Pegar`,selectAll:`Seleccionar todo`,clear:`Limpiar`,search:`Buscar…`,saveScrollback:`Guardar scrollback en un archivo…`,openPath:`Abrir {{path}}`},s={open:`Abrir {{name}}`},c={configureBrowserUrl:`Configurar la URL del navegador en ajustes…`,editQuickScript:`Editar el script rápido en ajustes…`},l={limitReached:`Límite de terminales alcanzado (máx. {{max}}).`,spawnFailed:`El shell no pudo iniciarse — puede que la aplicación se esté quedando sin descriptores de archivo. Prueba a reiniciar la aplicación.`,invalidName:`Nombre de terminal no válido.`,openFailed:`No se pudo abrir el terminal.`,serverUnreachable:`No se pudo contactar con el servidor para abrir un terminal.`,exitedImmediately:`El terminal terminó de inmediato — puede que el shell no haya podido iniciarse. Si sigue ocurriendo, reinicia la aplicación.`},u={processExited:`[proceso terminado]`,processExitedWithCode:`[proceso terminado (código {{code}})]`},d={commandFinished:`Comando finalizado`,commandFinishedNamed:`{{command}} finalizado`,finishedBody:`exit {{code}} en {{elapsed}}`},f={seconds:`{{seconds}}s`,minutesSeconds:`{{minutes}}m {{seconds}}s`},p={topBar:e,panelChevron:t,dragHandle:n,sidebar:r,emptyState:i,search:a,contextMenu:o,cliMenu:s,shortcutMenu:c,errors:l,session:u,notifications:d,duration:f};export{s as cliMenu,o as contextMenu,p as default,n as dragHandle,f as duration,i as emptyState,l as errors,d as notifications,t as panelChevron,a as search,u as session,c as shortcutMenu,r as sidebar,e as topBar};
@@ -0,0 +1 @@
1
+ var e={title:`Terminal`,openCliMulti:`Ouvrir une CLI IA dans un nouveau terminal`,openCli:`Ouvrir {{cli}} dans un nouveau terminal`,maxTerminals:`Max {{max}} terminaux par projet`,openInBrowser:`Ouvrir dans le navigateur`,pasteScript:`Coller le script rapide dans le terminal actif`,pasteScriptNoActive:`Aucun terminal actif où coller`,newTerminal:`Nouveau terminal`,killActive:`Tuer le terminal actif`,restorePanel:`Restaurer le panneau`,maximizePanel:`Agrandir le panneau`},t={collapse:`Replier le panneau du terminal`,expand:`Déplier le panneau du terminal`},n={resize:`Redimensionner le panneau du terminal`},r={rename:`Renommer {{name}}`,close:`Fermer {{name}}`},i={noTerminals:`Aucun terminal pour ce projet pour l'instant.`,newTerminal:`Nouveau terminal`},a={placeholder:`Rechercher`,previous:`Précédent (Maj+Entrée)`,next:`Suivant (Entrée)`,matchCase:`Respecter la casse`,regex:`Regex`,wholeWord:`Mot entier`,close:`Fermer (Échap)`},o={paste:`Coller`,selectAll:`Tout sélectionner`,clear:`Effacer`,search:`Rechercher…`,saveScrollback:`Enregistrer l'historique dans un fichier…`,openPath:`Ouvrir {{path}}`},s={open:`Ouvrir {{name}}`},c={configureBrowserUrl:`Configurer l'URL du navigateur dans les paramètres…`,editQuickScript:`Modifier le script rapide dans les paramètres…`},l={limitReached:`Limite de terminaux atteinte (max {{max}}).`,spawnFailed:`Le shell n'a pas pu démarrer — l'application manque peut-être de descripteurs de fichiers. Essayez de redémarrer l'application.`,invalidName:`Nom de terminal invalide.`,openFailed:`Échec de l'ouverture du terminal.`,serverUnreachable:`Impossible de joindre le serveur pour ouvrir un terminal.`,exitedImmediately:`Le terminal s'est fermé immédiatement — le shell n'a peut-être pas pu démarrer. Si cela se reproduit, redémarrez l'application.`},u={processExited:`[processus terminé]`,processExitedWithCode:`[processus terminé (code {{code}})]`},d={commandFinished:`Commande terminée`,commandFinishedNamed:`{{command}} terminée`,finishedBody:`exit {{code}} en {{elapsed}}`},f={seconds:`{{seconds}}s`,minutesSeconds:`{{minutes}}m {{seconds}}s`},p={topBar:e,panelChevron:t,dragHandle:n,sidebar:r,emptyState:i,search:a,contextMenu:o,cliMenu:s,shortcutMenu:c,errors:l,session:u,notifications:d,duration:f};export{s as cliMenu,o as contextMenu,p as default,n as dragHandle,f as duration,i as emptyState,l as errors,d as notifications,t as panelChevron,a as search,u as session,c as shortcutMenu,r as sidebar,e as topBar};
@@ -0,0 +1 @@
1
+ var e={title:`终端`,openCliMulti:`在新终端中打开 AI CLI`,openCli:`在新终端中打开 {{cli}}`,maxTerminals:`每个项目最多 {{max}} 个终端`,openInBrowser:`在浏览器中打开`,pasteScript:`将快捷脚本粘贴到当前终端`,pasteScriptNoActive:`没有可粘贴的活动终端`,newTerminal:`新建终端`,killActive:`终止当前终端`,restorePanel:`还原面板`,maximizePanel:`最大化面板`},t={collapse:`收起终端面板`,expand:`展开终端面板`},n={resize:`调整终端面板大小`},r={rename:`重命名 {{name}}`,close:`关闭 {{name}}`},i={noTerminals:`此项目还没有终端。`,newTerminal:`新建终端`},a={placeholder:`查找`,previous:`上一个 (Shift+Enter)`,next:`下一个 (Enter)`,matchCase:`区分大小写`,regex:`正则表达式`,wholeWord:`全字匹配`,close:`关闭 (Esc)`},o={paste:`粘贴`,selectAll:`全选`,clear:`清屏`,search:`搜索…`,saveScrollback:`将回滚内容保存到文件…`,openPath:`打开 {{path}}`},s={open:`打开 {{name}}`},c={configureBrowserUrl:`在设置中配置浏览器 URL…`,editQuickScript:`在设置中编辑快捷脚本…`},l={limitReached:`已达到终端数量上限(最多 {{max}} 个)。`,spawnFailed:`Shell 启动失败 — 应用的文件描述符可能不足。请尝试重启应用。`,invalidName:`终端名称无效。`,openFailed:`打开终端失败。`,serverUnreachable:`无法连接服务器以打开终端。`,exitedImmediately:`终端立即退出 — Shell 可能启动失败。如果持续发生,请重启应用。`},u={processExited:`[进程已退出]`,processExitedWithCode:`[进程已退出(代码 {{code}})]`},d={commandFinished:`命令已完成`,commandFinishedNamed:`{{command}} 已完成`,finishedBody:`退出码 {{code}},耗时 {{elapsed}}`},f={seconds:`{{seconds}}s`,minutesSeconds:`{{minutes}}m {{seconds}}s`},p={topBar:e,panelChevron:t,dragHandle:n,sidebar:r,emptyState:i,search:a,contextMenu:o,cliMenu:s,shortcutMenu:c,errors:l,session:u,notifications:d,duration:f};export{s as cliMenu,o as contextMenu,p as default,n as dragHandle,f as duration,i as emptyState,l as errors,d as notifications,t as panelChevron,a as search,u as session,c as shortcutMenu,r as sidebar,e as topBar};
@@ -0,0 +1 @@
1
+ import{n as e}from"./chunk-CilyBKbf.js";var t=e({cliMenu:()=>l,contextMenu:()=>c,default:()=>h,dragHandle:()=>i,duration:()=>m,emptyState:()=>o,errors:()=>d,notifications:()=>p,panelChevron:()=>r,search:()=>s,session:()=>f,shortcutMenu:()=>u,sidebar:()=>a,topBar:()=>n}),n={title:`Terminal`,openCliMulti:`Open AI CLI in new terminal`,openCli:`Open {{cli}} in new terminal`,maxTerminals:`Max {{max}} terminals per project`,openInBrowser:`Open in browser`,pasteScript:`Paste quick script into active terminal`,pasteScriptNoActive:`No active terminal to paste into`,newTerminal:`New terminal`,killActive:`Kill active terminal`,restorePanel:`Restore panel`,maximizePanel:`Maximize panel`},r={collapse:`Collapse terminal panel`,expand:`Expand terminal panel`},i={resize:`Resize terminal panel`},a={rename:`Rename {{name}}`,close:`Close {{name}}`},o={noTerminals:`No terminals yet for this project.`,newTerminal:`New terminal`},s={placeholder:`Find`,previous:`Previous (Shift+Enter)`,next:`Next (Enter)`,matchCase:`Match case`,regex:`Regex`,wholeWord:`Whole word`,close:`Close (Esc)`},c={paste:`Paste`,selectAll:`Select All`,clear:`Clear`,search:`Search…`,saveScrollback:`Save scrollback to file…`,openPath:`Open {{path}}`},l={open:`Open {{name}}`},u={configureBrowserUrl:`Configure browser URL in settings…`,editQuickScript:`Edit quick script in settings…`},d={limitReached:`Terminal limit reached (max {{max}}).`,spawnFailed:`The shell failed to start — the app may be low on file descriptors. Try restarting the app.`,invalidName:`Invalid terminal name.`,openFailed:`Failed to open terminal.`,serverUnreachable:`Could not reach the server to open a terminal.`,exitedImmediately:`Terminal exited immediately — the shell may have failed to start. If this keeps happening, restart the app.`},f={processExited:`[process exited]`,processExitedWithCode:`[process exited (code {{code}})]`},p={commandFinished:`Command finished`,commandFinishedNamed:`{{command}} finished`,finishedBody:`exit {{code}} in {{elapsed}}`},m={seconds:`{{seconds}}s`,minutesSeconds:`{{minutes}}m {{seconds}}s`},h={topBar:n,panelChevron:r,dragHandle:i,sidebar:a,emptyState:o,search:s,contextMenu:c,cliMenu:l,shortcutMenu:u,errors:d,session:f,notifications:p,duration:m};export{t};
@@ -0,0 +1 @@
1
+ var e={title:`ターミナル`,openCliMulti:`新しいターミナルで AI CLI を開く`,openCli:`新しいターミナルで {{cli}} を開く`,maxTerminals:`ターミナルはプロジェクトあたり最大 {{max}} 件`,openInBrowser:`ブラウザで開く`,pasteScript:`クイックスクリプトをアクティブなターミナルに貼り付け`,pasteScriptNoActive:`貼り付け先のアクティブなターミナルがありません`,newTerminal:`新しいターミナル`,killActive:`アクティブなターミナルを強制終了`,restorePanel:`パネルを復元`,maximizePanel:`パネルを最大化`},t={collapse:`ターミナルパネルを折りたたむ`,expand:`ターミナルパネルを展開`},n={resize:`ターミナルパネルのサイズを変更`},r={rename:`{{name}} の名前を変更`,close:`{{name}} を閉じる`},i={noTerminals:`このプロジェクトにはまだターミナルがありません。`,newTerminal:`新しいターミナル`},a={placeholder:`検索`,previous:`前へ (Shift+Enter)`,next:`次へ (Enter)`,matchCase:`大文字と小文字を区別`,regex:`正規表現`,wholeWord:`単語単位`,close:`閉じる (Esc)`},o={paste:`貼り付け`,selectAll:`すべて選択`,clear:`クリア`,search:`検索…`,saveScrollback:`スクロールバックをファイルに保存…`,openPath:`{{path}} を開く`},s={open:`{{name}} を開く`},c={configureBrowserUrl:`設定でブラウザ URL を構成…`,editQuickScript:`設定でクイックスクリプトを編集…`},l={limitReached:`ターミナル数の上限に達しました (最大 {{max}})。`,spawnFailed:`シェルの起動に失敗しました — アプリのファイルディスクリプタが不足している可能性があります。アプリを再起動してみてください。`,invalidName:`ターミナル名が無効です。`,openFailed:`ターミナルを開けませんでした。`,serverUnreachable:`ターミナルを開くためにサーバーへ接続できませんでした。`,exitedImmediately:`ターミナルが直ちに終了しました — シェルの起動に失敗した可能性があります。繰り返し発生する場合はアプリを再起動してください。`},u={processExited:`[プロセスが終了しました]`,processExitedWithCode:`[プロセスが終了しました (コード {{code}})]`},d={commandFinished:`コマンドが完了しました`,commandFinishedNamed:`{{command}} が完了しました`,finishedBody:`exit {{code}} · 所要 {{elapsed}}`},f={seconds:`{{seconds}}s`,minutesSeconds:`{{minutes}}m {{seconds}}s`},p={topBar:e,panelChevron:t,dragHandle:n,sidebar:r,emptyState:i,search:a,contextMenu:o,cliMenu:s,shortcutMenu:c,errors:l,session:u,notifications:d,duration:f};export{s as cliMenu,o as contextMenu,p as default,n as dragHandle,f as duration,i as emptyState,l as errors,d as notifications,t as panelChevron,a as search,u as session,c as shortcutMenu,r as sidebar,e as topBar};
@@ -0,0 +1 @@
1
+ var e={title:`Terminal`,openCliMulti:`Abrir CLI de IA num novo terminal`,openCli:`Abrir {{cli}} num novo terminal`,maxTerminals:`Máx. {{max}} terminais por projeto`,openInBrowser:`Abrir no browser`,pasteScript:`Colar script rápido no terminal ativo`,pasteScriptNoActive:`Não há terminal ativo onde colar`,newTerminal:`Novo terminal`,killActive:`Terminar o terminal ativo`,restorePanel:`Restaurar painel`,maximizePanel:`Maximizar painel`},t={collapse:`Recolher painel do terminal`,expand:`Expandir painel do terminal`},n={resize:`Redimensionar painel do terminal`},r={rename:`Renomear {{name}}`,close:`Fechar {{name}}`},i={noTerminals:`Ainda não há terminais para este projeto.`,newTerminal:`Novo terminal`},a={placeholder:`Localizar`,previous:`Anterior (Shift+Enter)`,next:`Seguinte (Enter)`,matchCase:`Maiúsculas/minúsculas`,regex:`Regex`,wholeWord:`Palavra inteira`,close:`Fechar (Esc)`},o={paste:`Colar`,selectAll:`Selecionar tudo`,clear:`Limpar`,search:`Pesquisar…`,saveScrollback:`Guardar scrollback em ficheiro…`,openPath:`Abrir {{path}}`},s={open:`Abrir {{name}}`},c={configureBrowserUrl:`Configurar URL do browser nas definições…`,editQuickScript:`Editar script rápido nas definições…`},l={limitReached:`Limite de terminais atingido (máx. {{max}}).`,spawnFailed:`A shell não conseguiu arrancar — a aplicação pode estar com poucos descritores de ficheiros. Tente reiniciar a aplicação.`,invalidName:`Nome de terminal inválido.`,openFailed:`Falha ao abrir o terminal.`,serverUnreachable:`Não foi possível contactar o servidor para abrir um terminal.`,exitedImmediately:`O terminal terminou imediatamente — a shell pode não ter arrancado. Se continuar a acontecer, reinicie a aplicação.`},u={processExited:`[processo terminado]`,processExitedWithCode:`[processo terminado (código {{code}})]`},d={commandFinished:`Comando concluído`,commandFinishedNamed:`{{command}} concluído`,finishedBody:`exit {{code}} em {{elapsed}}`},f={seconds:`{{seconds}}s`,minutesSeconds:`{{minutes}}m {{seconds}}s`},p={topBar:e,panelChevron:t,dragHandle:n,sidebar:r,emptyState:i,search:a,contextMenu:o,cliMenu:s,shortcutMenu:c,errors:l,session:u,notifications:d,duration:f};export{s as cliMenu,o as contextMenu,p as default,n as dragHandle,f as duration,i as emptyState,l as errors,d as notifications,t as panelChevron,a as search,u as session,c as shortcutMenu,r as sidebar,e as topBar};
@@ -0,0 +1 @@
1
+ var e={title:`Terminal`,openCliMulti:`AI-CLI in neuem Terminal öffnen`,openCli:`{{cli}} in neuem Terminal öffnen`,maxTerminals:`Max. {{max}} Terminals pro Projekt`,openInBrowser:`Im Browser öffnen`,pasteScript:`Schnell-Skript ins aktive Terminal einfügen`,pasteScriptNoActive:`Kein aktives Terminal zum Einfügen`,newTerminal:`Neues Terminal`,killActive:`Aktives Terminal beenden`,restorePanel:`Panel wiederherstellen`,maximizePanel:`Panel maximieren`},t={collapse:`Terminal-Panel einklappen`,expand:`Terminal-Panel ausklappen`},n={resize:`Größe des Terminal-Panels ändern`},r={rename:`{{name}} umbenennen`,close:`{{name}} schließen`},i={noTerminals:`Noch keine Terminals für dieses Projekt.`,newTerminal:`Neues Terminal`},a={placeholder:`Suchen`,previous:`Vorheriger Treffer (Shift+Enter)`,next:`Nächster Treffer (Enter)`,matchCase:`Groß-/Kleinschreibung beachten`,regex:`Regex`,wholeWord:`Ganzes Wort`,close:`Schließen (Esc)`},o={paste:`Einfügen`,selectAll:`Alles auswählen`,clear:`Leeren`,search:`Suchen…`,saveScrollback:`Scrollback in Datei speichern…`,openPath:`{{path}} öffnen`},s={open:`{{name}} öffnen`},c={configureBrowserUrl:`Browser-URL in den Einstellungen konfigurieren…`,editQuickScript:`Schnell-Skript in den Einstellungen bearbeiten…`},l={limitReached:`Terminal-Limit erreicht (max. {{max}}).`,spawnFailed:`Die Shell konnte nicht gestartet werden – der App fehlen womöglich File-Deskriptoren. Versuche, die App neu zu starten.`,invalidName:`Ungültiger Terminal-Name.`,openFailed:`Terminal konnte nicht geöffnet werden.`,serverUnreachable:`Server zum Öffnen eines Terminals nicht erreichbar.`,exitedImmediately:`Terminal wurde sofort beendet – die Shell konnte womöglich nicht starten. Wenn das wiederholt passiert, starte die App neu.`},u={processExited:`[Prozess beendet]`,processExitedWithCode:`[Prozess beendet (Code {{code}})]`},d={commandFinished:`Befehl abgeschlossen`,commandFinishedNamed:`{{command}} abgeschlossen`,finishedBody:`Exit {{code}} in {{elapsed}}`},f={seconds:`{{seconds}}s`,minutesSeconds:`{{minutes}}m {{seconds}}s`},p={topBar:e,panelChevron:t,dragHandle:n,sidebar:r,emptyState:i,search:a,contextMenu:o,cliMenu:s,shortcutMenu:c,errors:l,session:u,notifications:d,duration:f};export{s as cliMenu,o as contextMenu,p as default,n as dragHandle,f as duration,i as emptyState,l as errors,d as notifications,t as panelChevron,a as search,u as session,c as shortcutMenu,r as sidebar,e as topBar};
@@ -0,0 +1 @@
1
+ var e={title:`Terminale`,openCliMulti:`Apri CLI AI in un nuovo terminale`,openCli:`Apri {{cli}} in un nuovo terminale`,maxTerminals:`Massimo {{max}} terminali per progetto`,openInBrowser:`Apri nel browser`,pasteScript:`Incolla lo script rapido nel terminale attivo`,pasteScriptNoActive:`Nessun terminale attivo in cui incollare`,newTerminal:`Nuovo terminale`,killActive:`Termina il terminale attivo`,restorePanel:`Ripristina pannello`,maximizePanel:`Massimizza pannello`},t={collapse:`Comprimi pannello terminale`,expand:`Espandi pannello terminale`},n={resize:`Ridimensiona pannello terminale`},r={rename:`Rinomina {{name}}`,close:`Chiudi {{name}}`},i={noTerminals:`Ancora nessun terminale per questo progetto.`,newTerminal:`Nuovo terminale`},a={placeholder:`Trova`,previous:`Precedente (Shift+Invio)`,next:`Successivo (Invio)`,matchCase:`Maiuscole/minuscole`,regex:`Regex`,wholeWord:`Parola intera`,close:`Chiudi (Esc)`},o={paste:`Incolla`,selectAll:`Seleziona tutto`,clear:`Pulisci`,search:`Cerca…`,saveScrollback:`Salva scrollback su file…`,openPath:`Apri {{path}}`},s={open:`Apri {{name}}`},c={configureBrowserUrl:`Configura l'URL del browser nelle impostazioni…`,editQuickScript:`Modifica lo script rapido nelle impostazioni…`},l={limitReached:`Limite di terminali raggiunto (max {{max}}).`,spawnFailed:`Avvio della shell non riuscito — l'app potrebbe avere pochi file descriptor. Prova a riavviare l'app.`,invalidName:`Nome del terminale non valido.`,openFailed:`Impossibile aprire il terminale.`,serverUnreachable:`Impossibile raggiungere il server per aprire un terminale.`,exitedImmediately:`Il terminale si è chiuso immediatamente — la shell potrebbe non essersi avviata. Se il problema persiste, riavvia l'app.`},u={processExited:`[processo terminato]`,processExitedWithCode:`[processo terminato (codice {{code}})]`},d={commandFinished:`Comando completato`,commandFinishedNamed:`{{command}} completato`,finishedBody:`exit {{code}} in {{elapsed}}`},f={seconds:`{{seconds}}s`,minutesSeconds:`{{minutes}}m {{seconds}}s`},p={topBar:e,panelChevron:t,dragHandle:n,sidebar:r,emptyState:i,search:a,contextMenu:o,cliMenu:s,shortcutMenu:c,errors:l,session:u,notifications:d,duration:f};export{s as cliMenu,o as contextMenu,p as default,n as dragHandle,f as duration,i as emptyState,l as errors,d as notifications,t as panelChevron,a as search,u as session,c as shortcutMenu,r as sidebar,e as topBar};
@@ -0,0 +1 @@
1
+ var e={critical:`Critique`,high:`Haute`,medium:`Moyenne`,low:`Basse`},t={todo:`À faire`,inProgress:`En cours`,done:`Terminé`,cancelled:`Annulé`},n={manual:`Créé manuellement`,productBacklog:`Depuis le product backlog`,proposeSpec:`Depuis une proposition de spec`,getBacklogSpecs:`Depuis les specs du backlog`,freePrompt:`Depuis un prompt Raw`},r={title:`Titre`,description:`Description`,status:`Statut`,priority:`Priorité`,labels:`Labels`,markdownPlaceholder:`Description en Markdown…`,supportsMarkdown:`Markdown pris en charge`},i={createdAgo:`Créé {{time}}`,updatedAgo:`Mis à jour {{time}}`},a=`Sans titre`,o={title:`Supprimer le ticket`,body:`Voulez-vous vraiment supprimer <strong>#{{id}} {{title}}</strong> ? Cette action est irréversible.`},s={toast:{updated:`Ticket mis à jour`,updateFailed:`Échec de la mise à jour du ticket`},compare:`Comparer`,compareTooltip:`Comparer avec une autre spec`,doneEditing:`Terminer l'édition`,addDescription:`Ajouter une description…`,prerequisites:`Prérequis`,addLabel:`Ajouter un label`,addLabelPlaceholder:`Ajouter un label…`,effort:`Effort`,assignee:`Assigné à`,continueEditing:`Continuer l'édition`,ticketFallbackLabel:`Ticket #{{id}}`},c={title:`Contract Layer`,populated:`{{n}}/5 renseignés`},l={moveToRail:`Déplacer vers un rail`,removeFromRail:`Retirer du rail`,currentlyOn:`Actuellement sur {{rail}}`,popoverTitle:`Déplacer vers un rail`,noRails:`Aucun rail disponible.`},u={ariaLabel:`Actions du ticket`,deleteTicket:`Supprimer le ticket`,changeStatus:`Changer le statut`,statusOptions:`Options de statut`,setPriority:`Définir la priorité`,priorityOptions:`Options de priorité`},d={list:`Vue liste`,grid:`Vue grille (Kanban)`,postit:`Vue post-it`},f={title:`Créer un ticket`,titlePlaceholder:`Titre du ticket…`,labelsPlaceholder:`Saisissez pour ajouter des labels…`,create:`Créer`,creating:`Création…`,toast:{created:`Ticket créé`,createFailed:`Échec de la création du ticket`}},p={title:`Comparer avec…`,todoCount:`({{n}} à faire)`,searchPlaceholder:`Rechercher des specs à faire…`,noMatches:`Aucune spec à faire correspondante`,empty:`Aucune autre spec à faire à comparer`},m={ariaLabel:`Voir les dépenses du ticket dans Analytics`,turns_one:`{{count}} tour`,turns_other:`{{count}} tours`,active:`{{duration}} actif`,breakdownItem:`{{n}} {{label}}`},h={newTicket:`Nouveau ticket : {{title}}`,newTicketsAdded_one:`{{count}} nouveau ticket ajouté depuis la product discovery`,newTicketsAdded_other:`{{count}} nouveaux tickets ajoutés depuis la product discovery`},g={priority:e,ticketStatus:t,source:n,fields:r,meta:i,untitled:a,deleteDialog:o,detailModal:s,contractLayer:c,rail:l,contextMenu:u,viewMode:d,createModal:f,comparePicker:p,spendingLine:m,toasts:h};export{p as comparePicker,u as contextMenu,c as contractLayer,f as createModal,g as default,o as deleteDialog,s as detailModal,r as fields,i as meta,e as priority,l as rail,n as source,m as spendingLine,t as ticketStatus,h as toasts,a as untitled,d as viewMode};
@@ -0,0 +1 @@
1
+ var e={critical:`紧急`,high:`高`,medium:`中`,low:`低`},t={todo:`待办`,inProgress:`进行中`,done:`完成`,cancelled:`已取消`},n={manual:`手动创建`,productBacklog:`来自产品 backlog`,proposeSpec:`来自 spec 提案`,getBacklogSpecs:`来自 backlog spec`,freePrompt:`来自 Raw prompt`},r={title:`标题`,description:`描述`,status:`状态`,priority:`优先级`,labels:`标签`,markdownPlaceholder:`Markdown 描述…`,supportsMarkdown:`支持 Markdown`},i={createdAgo:`创建于 {{time}}`,updatedAgo:`更新于 {{time}}`},a=`未命名`,o={title:`删除工单`,body:`确定要删除 <strong>#{{id}} {{title}}</strong> 吗?此操作无法撤销。`},s={toast:{updated:`工单已更新`,updateFailed:`更新工单失败`},compare:`对比`,compareTooltip:`与另一个 spec 对比`,doneEditing:`完成编辑`,addDescription:`添加描述…`,prerequisites:`前置条件`,addLabel:`添加标签`,addLabelPlaceholder:`添加标签…`,effort:`工作量`,assignee:`负责人`,continueEditing:`继续编辑`,ticketFallbackLabel:`工单 #{{id}}`},c={title:`Contract Layer`,populated:`已填充 {{n}}/5`},l={moveToRail:`放入 Rail`,removeFromRail:`从 Rail 移除`,currentlyOn:`当前位于 {{rail}}`,popoverTitle:`放入 rail`,noRails:`没有可用的 rail。`},u={ariaLabel:`工单操作`,deleteTicket:`删除工单`,changeStatus:`更改状态`,statusOptions:`状态选项`,setPriority:`设置优先级`,priorityOptions:`优先级选项`},d={list:`列表视图`,grid:`网格视图(看板)`,postit:`便签视图`},f={title:`创建工单`,titlePlaceholder:`工单标题…`,labelsPlaceholder:`输入以添加标签…`,create:`创建`,creating:`正在创建…`,toast:{created:`工单已创建`,createFailed:`创建工单失败`}},p={title:`选择对比对象…`,todoCount:`({{n}} 个待办)`,searchPlaceholder:`搜索待办 spec…`,noMatches:`没有匹配的待办 spec`,empty:`没有其他可对比的待办 spec`},m={ariaLabel:`在分析页查看此工单的支出`,turns_one:`{{count}} 轮`,turns_other:`{{count}} 轮`,active:`活跃 {{duration}}`,breakdownItem:`{{n}} {{label}}`},h={newTicket:`新工单:{{title}}`,newTicketsAdded_one:`已从产品发现新增 {{count}} 个工单`,newTicketsAdded_other:`已从产品发现新增 {{count}} 个工单`},g={priority:e,ticketStatus:t,source:n,fields:r,meta:i,untitled:a,deleteDialog:o,detailModal:s,contractLayer:c,rail:l,contextMenu:u,viewMode:d,createModal:f,comparePicker:p,spendingLine:m,toasts:h};export{p as comparePicker,u as contextMenu,c as contractLayer,f as createModal,g as default,o as deleteDialog,s as detailModal,r as fields,i as meta,e as priority,l as rail,n as source,m as spendingLine,t as ticketStatus,h as toasts,a as untitled,d as viewMode};
@@ -0,0 +1 @@
1
+ var e={critical:`クリティカル`,high:`高`,medium:`中`,low:`低`},t={todo:`Todo`,inProgress:`進行中`,done:`完了`,cancelled:`キャンセル`},n={manual:`手動で作成`,productBacklog:`プロダクトバックログから`,proposeSpec:`スペック提案から`,getBacklogSpecs:`バックログスペックから`,freePrompt:`Raw プロンプトから`},r={title:`タイトル`,description:`説明`,status:`ステータス`,priority:`優先度`,labels:`ラベル`,markdownPlaceholder:`Markdown で説明...`,supportsMarkdown:`Markdown 対応`},i={createdAgo:`{{time}}に作成`,updatedAgo:`{{time}}に更新`},a=`無題`,o={title:`チケットを削除`,body:`<strong>#{{id}} {{title}}</strong> を削除してもよろしいですか?この操作は元に戻せません。`},s={toast:{updated:`チケットを更新しました`,updateFailed:`チケットの更新に失敗しました`},compare:`比較`,compareTooltip:`別のスペックと比較`,doneEditing:`編集を終了`,addDescription:`説明を追加...`,prerequisites:`前提条件`,addLabel:`ラベルを追加`,addLabelPlaceholder:`ラベルを追加...`,effort:`工数`,assignee:`担当者`,continueEditing:`編集を続ける`,ticketFallbackLabel:`チケット #{{id}}`},c={title:`Contract Layer`,populated:`{{n}}/5 件入力済み`},l={moveToRail:`レールに移動`,removeFromRail:`レールから削除`,currentlyOn:`現在 {{rail}} 上にあります`,popoverTitle:`レールに移動`,noRails:`利用可能なレールがありません。`},u={ariaLabel:`チケット操作`,deleteTicket:`チケットを削除`,changeStatus:`ステータスを変更`,statusOptions:`ステータスオプション`,setPriority:`優先度を設定`,priorityOptions:`優先度オプション`},d={list:`リスト表示`,grid:`グリッド表示(カンバン)`,postit:`付箋表示`},f={title:`チケットを作成`,titlePlaceholder:`チケットのタイトル...`,labelsPlaceholder:`入力してラベルを追加...`,create:`作成`,creating:`作成中...`,toast:{created:`チケットを作成しました`,createFailed:`チケットの作成に失敗しました`}},p={title:`比較対象を選択…`,todoCount:`(Todo {{n}} 件)`,searchPlaceholder:`Todo のスペックを検索…`,noMatches:`一致する Todo スペックはありません`,empty:`比較できる他の Todo スペックはありません`},m={ariaLabel:`アナリティクスでチケットの支出を表示`,turns_one:`{{count}} ターン`,turns_other:`{{count}} ターン`,active:`アクティブ {{duration}}`,breakdownItem:`{{n}} {{label}}`},h={newTicket:`新しいチケット: {{title}}`,newTicketsAdded_one:`プロダクトディスカバリーから {{count}} 件の新しいチケットを追加しました`,newTicketsAdded_other:`プロダクトディスカバリーから {{count}} 件の新しいチケットを追加しました`},g={priority:e,ticketStatus:t,source:n,fields:r,meta:i,untitled:a,deleteDialog:o,detailModal:s,contractLayer:c,rail:l,contextMenu:u,viewMode:d,createModal:f,comparePicker:p,spendingLine:m,toasts:h};export{p as comparePicker,u as contextMenu,c as contractLayer,f as createModal,g as default,o as deleteDialog,s as detailModal,r as fields,i as meta,e as priority,l as rail,n as source,m as spendingLine,t as ticketStatus,h as toasts,a as untitled,d as viewMode};
@@ -0,0 +1 @@
1
+ var e={critical:`Crítica`,high:`Alta`,medium:`Média`,low:`Baixa`},t={todo:`Por fazer`,inProgress:`Em curso`,done:`Concluído`,cancelled:`Cancelado`},n={manual:`Criado manualmente`,productBacklog:`Do product backlog`,proposeSpec:`De proposta de spec`,getBacklogSpecs:`De specs do backlog`,freePrompt:`De prompt Raw`},r={title:`Título`,description:`Descrição`,status:`Estado`,priority:`Prioridade`,labels:`Etiquetas`,markdownPlaceholder:`Descrição em Markdown...`,supportsMarkdown:`Suporta Markdown`},i={createdAgo:`Criado {{time}}`,updatedAgo:`Atualizado {{time}}`},a=`Sem título`,o={title:`Eliminar ticket`,body:`Tem a certeza de que quer eliminar <strong>#{{id}} {{title}}</strong>? Esta ação não pode ser anulada.`},s={toast:{updated:`Ticket atualizado`,updateFailed:`Falha ao atualizar o ticket`},compare:`Comparar`,compareTooltip:`Comparar com outra spec`,doneEditing:`Terminar edição`,addDescription:`Adicionar uma descrição...`,prerequisites:`Pré-requisitos`,addLabel:`Adicionar etiqueta`,addLabelPlaceholder:`Adicionar etiqueta...`,effort:`Esforço`,assignee:`Responsável`,continueEditing:`Continuar a editar`,ticketFallbackLabel:`Ticket #{{id}}`},c={title:`Contract Layer`,populated:`{{n}}/5 preenchidas`},l={moveToRail:`Mover para um rail`,removeFromRail:`Remover do rail`,currentlyOn:`Atualmente em {{rail}}`,popoverTitle:`Mover para um rail`,noRails:`Nenhum rail disponível.`},u={ariaLabel:`Ações do ticket`,deleteTicket:`Eliminar ticket`,changeStatus:`Alterar estado`,statusOptions:`Opções de estado`,setPriority:`Definir prioridade`,priorityOptions:`Opções de prioridade`},d={list:`Vista de lista`,grid:`Vista de grelha (Kanban)`,postit:`Vista de post-its`},f={title:`Criar ticket`,titlePlaceholder:`Título do ticket...`,labelsPlaceholder:`Escreva para adicionar etiquetas...`,create:`Criar`,creating:`A criar...`,toast:{created:`Ticket criado`,createFailed:`Falha ao criar o ticket`}},p={title:`Comparar com…`,todoCount:`({{n}} por fazer)`,searchPlaceholder:`Pesquisar specs por fazer…`,noMatches:`Nenhuma spec por fazer corresponde`,empty:`Não há outras specs por fazer para comparar`},m={ariaLabel:`Ver os gastos do ticket em Analytics`,turns_one:`{{count}} turno`,turns_other:`{{count}} turnos`,active:`{{duration}} ativo`,breakdownItem:`{{n}} {{label}}`},h={newTicket:`Novo ticket: {{title}}`,newTicketsAdded_one:`{{count}} novo ticket adicionado a partir da descoberta de produto`,newTicketsAdded_other:`{{count}} novos tickets adicionados a partir da descoberta de produto`},g={priority:e,ticketStatus:t,source:n,fields:r,meta:i,untitled:a,deleteDialog:o,detailModal:s,contractLayer:c,rail:l,contextMenu:u,viewMode:d,createModal:f,comparePicker:p,spendingLine:m,toasts:h};export{p as comparePicker,u as contextMenu,c as contractLayer,f as createModal,g as default,o as deleteDialog,s as detailModal,r as fields,i as meta,e as priority,l as rail,n as source,m as spendingLine,t as ticketStatus,h as toasts,a as untitled,d as viewMode};
@@ -0,0 +1 @@
1
+ var e={critical:`Crítica`,high:`Alta`,medium:`Media`,low:`Baja`},t={todo:`Por hacer`,inProgress:`En curso`,done:`Hecho`,cancelled:`Cancelado`},n={manual:`Creado manualmente`,productBacklog:`Desde el product backlog`,proposeSpec:`Desde una propuesta de spec`,getBacklogSpecs:`Desde specs del backlog`,freePrompt:`Desde un prompt Raw`},r={title:`Título`,description:`Descripción`,status:`Estado`,priority:`Prioridad`,labels:`Etiquetas`,markdownPlaceholder:`Descripción en Markdown...`,supportsMarkdown:`Admite Markdown`},i={createdAgo:`Creado {{time}}`,updatedAgo:`Actualizado {{time}}`},a=`Sin título`,o={title:`Eliminar ticket`,body:`¿Seguro que quieres eliminar <strong>#{{id}} {{title}}</strong>? Esta acción no se puede deshacer.`},s={toast:{updated:`Ticket actualizado`,updateFailed:`No se pudo actualizar el ticket`},compare:`Comparar`,compareTooltip:`Comparar con otra spec`,doneEditing:`Terminar edición`,addDescription:`Añadir una descripción...`,prerequisites:`Requisitos previos`,addLabel:`Añadir etiqueta`,addLabelPlaceholder:`Añadir etiqueta...`,effort:`Esfuerzo`,assignee:`Asignado a`,continueEditing:`Seguir editando`,ticketFallbackLabel:`Ticket #{{id}}`},c={title:`Contract Layer`,populated:`{{n}}/5 con contenido`},l={moveToRail:`Mover a un rail`,removeFromRail:`Quitar del rail`,currentlyOn:`Actualmente en {{rail}}`,popoverTitle:`Mover a un rail`,noRails:`No hay rails disponibles.`},u={ariaLabel:`Acciones del ticket`,deleteTicket:`Eliminar ticket`,changeStatus:`Cambiar estado`,statusOptions:`Opciones de estado`,setPriority:`Establecer prioridad`,priorityOptions:`Opciones de prioridad`},d={list:`Vista de lista`,grid:`Vista de cuadrícula (Kanban)`,postit:`Vista post-it`},f={title:`Crear ticket`,titlePlaceholder:`Título del ticket...`,labelsPlaceholder:`Escribe para añadir etiquetas...`,create:`Crear`,creating:`Creando...`,toast:{created:`Ticket creado`,createFailed:`No se pudo crear el ticket`}},p={title:`Comparar con…`,todoCount:`({{n}} por hacer)`,searchPlaceholder:`Buscar specs por hacer…`,noMatches:`Ninguna spec por hacer coincide`,empty:`No hay otras specs por hacer para comparar`},m={ariaLabel:`Ver el gasto del ticket en Analíticas`,turns_one:`{{count}} turno`,turns_other:`{{count}} turnos`,active:`{{duration}} activo`,breakdownItem:`{{n}} {{label}}`},h={newTicket:`Nuevo ticket: {{title}}`,newTicketsAdded_one:`{{count}} ticket nuevo añadido desde product discovery`,newTicketsAdded_other:`{{count}} tickets nuevos añadidos desde product discovery`},g={priority:e,ticketStatus:t,source:n,fields:r,meta:i,untitled:a,deleteDialog:o,detailModal:s,contractLayer:c,rail:l,contextMenu:u,viewMode:d,createModal:f,comparePicker:p,spendingLine:m,toasts:h};export{p as comparePicker,u as contextMenu,c as contractLayer,f as createModal,g as default,o as deleteDialog,s as detailModal,r as fields,i as meta,e as priority,l as rail,n as source,m as spendingLine,t as ticketStatus,h as toasts,a as untitled,d as viewMode};
@@ -0,0 +1 @@
1
+ var e={critical:`Kritisch`,high:`Hoch`,medium:`Mittel`,low:`Niedrig`},t={todo:`To-do`,inProgress:`In Arbeit`,done:`Fertig`,cancelled:`Abgebrochen`},n={manual:`Manuell erstellt`,productBacklog:`Aus dem Product-Backlog`,proposeSpec:`Aus einem Spec-Vorschlag`,getBacklogSpecs:`Aus Backlog-Specs`,freePrompt:`Aus Raw-Prompt`},r={title:`Titel`,description:`Beschreibung`,status:`Status`,priority:`Priorität`,labels:`Labels`,markdownPlaceholder:`Markdown-Beschreibung…`,supportsMarkdown:`Unterstützt Markdown`},i={createdAgo:`Erstellt {{time}}`,updatedAgo:`Aktualisiert {{time}}`},a=`Unbenannt`,o={title:`Ticket löschen`,body:`Möchtest du <strong>#{{id}} {{title}}</strong> wirklich löschen? Diese Aktion kann nicht rückgängig gemacht werden.`},s={toast:{updated:`Ticket aktualisiert`,updateFailed:`Ticket konnte nicht aktualisiert werden`},compare:`Vergleichen`,compareTooltip:`Mit einer anderen Spec vergleichen`,doneEditing:`Bearbeitung abschließen`,addDescription:`Beschreibung hinzufügen…`,prerequisites:`Voraussetzungen`,addLabel:`Label hinzufügen`,addLabelPlaceholder:`Label hinzufügen…`,effort:`Aufwand`,assignee:`Zugewiesen an`,continueEditing:`Weiter bearbeiten`,ticketFallbackLabel:`Ticket #{{id}}`},c={title:`Contract Layer`,populated:`{{n}}/5 befüllt`},l={moveToRail:`Auf Rail verschieben`,removeFromRail:`Von Rail entfernen`,currentlyOn:`Aktuell auf {{rail}}`,popoverTitle:`Auf Rail verschieben`,noRails:`Keine Rails verfügbar.`},u={ariaLabel:`Ticket-Aktionen`,deleteTicket:`Ticket löschen`,changeStatus:`Status ändern`,statusOptions:`Statusoptionen`,setPriority:`Priorität festlegen`,priorityOptions:`Prioritätsoptionen`},d={list:`Listenansicht`,grid:`Rasteransicht (Kanban)`,postit:`Post-it-Ansicht`},f={title:`Ticket erstellen`,titlePlaceholder:`Ticket-Titel…`,labelsPlaceholder:`Tippen, um Labels hinzuzufügen…`,create:`Erstellen`,creating:`Wird erstellt…`,toast:{created:`Ticket erstellt`,createFailed:`Ticket konnte nicht erstellt werden`}},p={title:`Vergleichen mit…`,todoCount:`({{n}} To-do)`,searchPlaceholder:`To-do-Specs durchsuchen…`,noMatches:`Keine passenden To-do-Specs`,empty:`Keine anderen To-do-Specs zum Vergleichen`},m={ariaLabel:`Ticket-Ausgaben in Analytics anzeigen`,turns_one:`{{count}} Turn`,turns_other:`{{count}} Turns`,active:`{{duration}} aktiv`,breakdownItem:`{{n}} {{label}}`},h={newTicket:`Neues Ticket: {{title}}`,newTicketsAdded_one:`{{count}} neues Ticket aus der Produkt-Discovery hinzugefügt`,newTicketsAdded_other:`{{count}} neue Tickets aus der Produkt-Discovery hinzugefügt`},g={priority:e,ticketStatus:t,source:n,fields:r,meta:i,untitled:a,deleteDialog:o,detailModal:s,contractLayer:c,rail:l,contextMenu:u,viewMode:d,createModal:f,comparePicker:p,spendingLine:m,toasts:h};export{p as comparePicker,u as contextMenu,c as contractLayer,f as createModal,g as default,o as deleteDialog,s as detailModal,r as fields,i as meta,e as priority,l as rail,n as source,m as spendingLine,t as ticketStatus,h as toasts,a as untitled,d as viewMode};
@@ -0,0 +1 @@
1
+ import{n as e}from"./chunk-CilyBKbf.js";var t=e({comparePicker:()=>h,contextMenu:()=>f,contractLayer:()=>u,createModal:()=>m,default:()=>v,deleteDialog:()=>c,detailModal:()=>l,fields:()=>a,meta:()=>o,priority:()=>n,rail:()=>d,source:()=>i,spendingLine:()=>g,ticketStatus:()=>r,toasts:()=>_,untitled:()=>s,viewMode:()=>p}),n={critical:`Critical`,high:`High`,medium:`Medium`,low:`Low`},r={todo:`Todo`,inProgress:`In Progress`,done:`Done`,cancelled:`Cancelled`},i={manual:`Created manually`,productBacklog:`From product backlog`,proposeSpec:`From spec proposal`,getBacklogSpecs:`From backlog specs`,freePrompt:`From Raw prompt`},a={title:`Title`,description:`Description`,status:`Status`,priority:`Priority`,labels:`Labels`,markdownPlaceholder:`Markdown description...`,supportsMarkdown:`Supports markdown`},o={createdAgo:`Created {{time}}`,updatedAgo:`Updated {{time}}`},s=`Untitled`,c={title:`Delete ticket`,body:`Are you sure you want to delete <strong>#{{id}} {{title}}</strong>? This action cannot be undone.`},l={toast:{updated:`Ticket updated`,updateFailed:`Failed to update ticket`},compare:`Compare`,compareTooltip:`Compare with another spec`,doneEditing:`Done editing`,addDescription:`Add a description...`,prerequisites:`Prerequisites`,addLabel:`Add label`,addLabelPlaceholder:`Add label...`,effort:`Effort`,assignee:`Assignee`,continueEditing:`Continue Editing`,ticketFallbackLabel:`Ticket #{{id}}`},u={title:`Contract Layer`,populated:`{{n}}/5 populated`},d={moveToRail:`Move to Rail`,removeFromRail:`Remove from Rail`,currentlyOn:`Currently on {{rail}}`,popoverTitle:`Move to rail`,noRails:`No rails available.`},f={ariaLabel:`Ticket actions`,deleteTicket:`Delete ticket`,changeStatus:`Change status`,statusOptions:`Status options`,setPriority:`Set priority`,priorityOptions:`Priority options`},p={list:`List view`,grid:`Grid view (Kanban)`,postit:`Post-it view`},m={title:`Create Ticket`,titlePlaceholder:`Ticket title...`,labelsPlaceholder:`Type to add labels...`,create:`Create`,creating:`Creating...`,toast:{created:`Ticket created`,createFailed:`Failed to create ticket`}},h={title:`Compare with…`,todoCount:`({{n}} todo)`,searchPlaceholder:`Search todo specs…`,noMatches:`No matching todo specs`,empty:`No other todo specs to compare`},g={ariaLabel:`View ticket spending in Analytics`,turns_one:`{{count}} turn`,turns_other:`{{count}} turns`,active:`{{duration}} active`,breakdownItem:`{{n}} {{label}}`},_={newTicket:`New ticket: {{title}}`,newTicketsAdded_one:`{{count}} new ticket added from product discovery`,newTicketsAdded_other:`{{count}} new tickets added from product discovery`},v={priority:n,ticketStatus:r,source:i,fields:a,meta:o,untitled:s,deleteDialog:c,detailModal:l,contractLayer:u,rail:d,contextMenu:f,viewMode:p,createModal:m,comparePicker:h,spendingLine:g,toasts:_};export{t};
@@ -0,0 +1 @@
1
+ var e={critical:`Critica`,high:`Alta`,medium:`Media`,low:`Bassa`},t={todo:`Da fare`,inProgress:`In corso`,done:`Completato`,cancelled:`Annullato`},n={manual:`Creato manualmente`,productBacklog:`Dal product backlog`,proposeSpec:`Da proposta di spec`,getBacklogSpecs:`Dalle spec del backlog`,freePrompt:`Da prompt Raw`},r={title:`Titolo`,description:`Descrizione`,status:`Stato`,priority:`Priorità`,labels:`Etichette`,markdownPlaceholder:`Descrizione in Markdown...`,supportsMarkdown:`Supporta Markdown`},i={createdAgo:`Creato {{time}}`,updatedAgo:`Aggiornato {{time}}`},a=`Senza titolo`,o={title:`Elimina ticket`,body:`Vuoi davvero eliminare <strong>#{{id}} {{title}}</strong>? Questa azione è irreversibile.`},s={toast:{updated:`Ticket aggiornato`,updateFailed:`Impossibile aggiornare il ticket`},compare:`Confronta`,compareTooltip:`Confronta con un'altra spec`,doneEditing:`Fine modifica`,addDescription:`Aggiungi una descrizione...`,prerequisites:`Prerequisiti`,addLabel:`Aggiungi etichetta`,addLabelPlaceholder:`Aggiungi etichetta...`,effort:`Effort`,assignee:`Assegnatario`,continueEditing:`Continua a modificare`,ticketFallbackLabel:`Ticket #{{id}}`},c={title:`Contract Layer`,populated:`{{n}}/5 compilate`},l={moveToRail:`Sposta su un rail`,removeFromRail:`Rimuovi dal rail`,currentlyOn:`Attualmente su {{rail}}`,popoverTitle:`Sposta su un rail`,noRails:`Nessun rail disponibile.`},u={ariaLabel:`Azioni ticket`,deleteTicket:`Elimina ticket`,changeStatus:`Cambia stato`,statusOptions:`Opzioni di stato`,setPriority:`Imposta priorità`,priorityOptions:`Opzioni di priorità`},d={list:`Vista elenco`,grid:`Vista griglia (Kanban)`,postit:`Vista post-it`},f={title:`Crea ticket`,titlePlaceholder:`Titolo del ticket...`,labelsPlaceholder:`Digita per aggiungere etichette...`,create:`Crea`,creating:`Creazione...`,toast:{created:`Ticket creato`,createFailed:`Impossibile creare il ticket`}},p={title:`Confronta con…`,todoCount:`({{n}} da fare)`,searchPlaceholder:`Cerca tra le spec da fare…`,noMatches:`Nessuna spec da fare corrispondente`,empty:`Nessun'altra spec da fare da confrontare`},m={ariaLabel:`Vedi la spesa del ticket in Analytics`,turns_one:`{{count}} turno`,turns_other:`{{count}} turni`,active:`{{duration}} di attività`,breakdownItem:`{{n}} {{label}}`},h={newTicket:`Nuovo ticket: {{title}}`,newTicketsAdded_one:`{{count}} nuovo ticket aggiunto dalla product discovery`,newTicketsAdded_other:`{{count}} nuovi ticket aggiunti dalla product discovery`},g={priority:e,ticketStatus:t,source:n,fields:r,meta:i,untitled:a,deleteDialog:o,detailModal:s,contractLayer:c,rail:l,contextMenu:u,viewMode:d,createModal:f,comparePicker:p,spendingLine:m,toasts:h};export{p as comparePicker,u as contextMenu,c as contractLayer,f as createModal,g as default,o as deleteDialog,s as detailModal,r as fields,i as meta,e as priority,l as rail,n as source,m as spendingLine,t as ticketStatus,h as toasts,a as untitled,d as viewMode};