@aeolus-fleet/console 0.26.1 → 0.27.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (215) hide show
  1. package/.next/standalone/packages/console/.next/BUILD_ID +1 -1
  2. package/.next/standalone/packages/console/.next/build-manifest.json +3 -3
  3. package/.next/standalone/packages/console/.next/prerender-manifest.json +3 -3
  4. package/.next/standalone/packages/console/.next/server/app/(console)/fleet-health/[cause]/page/server-reference-manifest.json +16 -16
  5. package/.next/standalone/packages/console/.next/server/app/(console)/fleet-health/[cause]/page.js.nft.json +1 -1
  6. package/.next/standalone/packages/console/.next/server/app/(console)/fleet-health/[cause]/page_client-reference-manifest.js +1 -1
  7. package/.next/standalone/packages/console/.next/server/app/(console)/fleet-health/page/server-reference-manifest.json +16 -16
  8. package/.next/standalone/packages/console/.next/server/app/(console)/fleet-health/page.js.nft.json +1 -1
  9. package/.next/standalone/packages/console/.next/server/app/(console)/fleet-health/page_client-reference-manifest.js +1 -1
  10. package/.next/standalone/packages/console/.next/server/app/(console)/inbox/page/server-reference-manifest.json +16 -16
  11. package/.next/standalone/packages/console/.next/server/app/(console)/inbox/page.js.nft.json +1 -1
  12. package/.next/standalone/packages/console/.next/server/app/(console)/inbox/page_client-reference-manifest.js +1 -1
  13. package/.next/standalone/packages/console/.next/server/app/(console)/labels/page/server-reference-manifest.json +16 -16
  14. package/.next/standalone/packages/console/.next/server/app/(console)/labels/page.js.nft.json +1 -1
  15. package/.next/standalone/packages/console/.next/server/app/(console)/labels/page_client-reference-manifest.js +1 -1
  16. package/.next/standalone/packages/console/.next/server/app/(console)/needs-attention/page/server-reference-manifest.json +16 -16
  17. package/.next/standalone/packages/console/.next/server/app/(console)/needs-attention/page.js.nft.json +1 -1
  18. package/.next/standalone/packages/console/.next/server/app/(console)/needs-attention/page_client-reference-manifest.js +1 -1
  19. package/.next/standalone/packages/console/.next/server/app/(console)/needs-crew/page/server-reference-manifest.json +16 -16
  20. package/.next/standalone/packages/console/.next/server/app/(console)/needs-crew/page.js.nft.json +1 -1
  21. package/.next/standalone/packages/console/.next/server/app/(console)/needs-crew/page_client-reference-manifest.js +1 -1
  22. package/.next/standalone/packages/console/.next/server/app/(console)/network/page/server-reference-manifest.json +16 -16
  23. package/.next/standalone/packages/console/.next/server/app/(console)/network/page.js.nft.json +1 -1
  24. package/.next/standalone/packages/console/.next/server/app/(console)/network/page_client-reference-manifest.js +1 -1
  25. package/.next/standalone/packages/console/.next/server/app/(console)/page/react-loadable-manifest.json +2 -1
  26. package/.next/standalone/packages/console/.next/server/app/(console)/page/server-reference-manifest.json +16 -16
  27. package/.next/standalone/packages/console/.next/server/app/(console)/page.js.nft.json +1 -1
  28. package/.next/standalone/packages/console/.next/server/app/(console)/page_client-reference-manifest.js +1 -1
  29. package/.next/standalone/packages/console/.next/server/app/(console)/settings/page/server-reference-manifest.json +16 -16
  30. package/.next/standalone/packages/console/.next/server/app/(console)/settings/page.js.nft.json +1 -1
  31. package/.next/standalone/packages/console/.next/server/app/(console)/settings/page_client-reference-manifest.js +1 -1
  32. package/.next/standalone/packages/console/.next/server/app/(console)/ships/[shipId]/page/react-loadable-manifest.json +1 -1
  33. package/.next/standalone/packages/console/.next/server/app/(console)/ships/[shipId]/page/server-reference-manifest.json +16 -16
  34. package/.next/standalone/packages/console/.next/server/app/(console)/ships/[shipId]/page.js.nft.json +1 -1
  35. package/.next/standalone/packages/console/.next/server/app/(console)/ships/[shipId]/page_client-reference-manifest.js +1 -1
  36. package/.next/standalone/packages/console/.next/server/app/(console)/squadrons/[squadronId]/page/server-reference-manifest.json +16 -16
  37. package/.next/standalone/packages/console/.next/server/app/(console)/squadrons/[squadronId]/page.js.nft.json +1 -1
  38. package/.next/standalone/packages/console/.next/server/app/(console)/squadrons/[squadronId]/page_client-reference-manifest.js +1 -1
  39. package/.next/standalone/packages/console/.next/server/app/(console)/squadrons/blueprints/[name]/page/react-loadable-manifest.json +2 -1
  40. package/.next/standalone/packages/console/.next/server/app/(console)/squadrons/blueprints/[name]/page/server-reference-manifest.json +16 -16
  41. package/.next/standalone/packages/console/.next/server/app/(console)/squadrons/blueprints/[name]/page.js.nft.json +1 -1
  42. package/.next/standalone/packages/console/.next/server/app/(console)/squadrons/blueprints/[name]/page_client-reference-manifest.js +1 -1
  43. package/.next/standalone/packages/console/.next/server/app/(console)/squadrons/page/react-loadable-manifest.json +2 -1
  44. package/.next/standalone/packages/console/.next/server/app/(console)/squadrons/page/server-reference-manifest.json +16 -16
  45. package/.next/standalone/packages/console/.next/server/app/(console)/squadrons/page.js.nft.json +1 -1
  46. package/.next/standalone/packages/console/.next/server/app/(console)/squadrons/page_client-reference-manifest.js +1 -1
  47. package/.next/standalone/packages/console/.next/server/app/(console)/squadrons/templates/[name]/page/server-reference-manifest.json +16 -16
  48. package/.next/standalone/packages/console/.next/server/app/(console)/squadrons/templates/[name]/page.js.nft.json +1 -1
  49. package/.next/standalone/packages/console/.next/server/app/(console)/squadrons/templates/[name]/page_client-reference-manifest.js +1 -1
  50. package/.next/standalone/packages/console/.next/server/app/(console)/trierarchs/[shipId]/page/server-reference-manifest.json +16 -16
  51. package/.next/standalone/packages/console/.next/server/app/(console)/trierarchs/[shipId]/page.js.nft.json +1 -1
  52. package/.next/standalone/packages/console/.next/server/app/(console)/trierarchs/[shipId]/page_client-reference-manifest.js +1 -1
  53. package/.next/standalone/packages/console/.next/server/app/(console)/trierarchs/page/server-reference-manifest.json +16 -16
  54. package/.next/standalone/packages/console/.next/server/app/(console)/trierarchs/page.js.nft.json +1 -1
  55. package/.next/standalone/packages/console/.next/server/app/(console)/trierarchs/page_client-reference-manifest.js +1 -1
  56. package/.next/standalone/packages/console/.next/server/app/_global-error.html +1 -1
  57. package/.next/standalone/packages/console/.next/server/app/_global-error.rsc +1 -1
  58. package/.next/standalone/packages/console/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  59. package/.next/standalone/packages/console/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  60. package/.next/standalone/packages/console/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  61. package/.next/standalone/packages/console/.next/server/app/_not-found/page.js.nft.json +1 -1
  62. package/.next/standalone/packages/console/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  63. package/.next/standalone/packages/console/.next/server/app/api/reads/[read]/route.js.nft.json +1 -1
  64. package/.next/standalone/packages/console/.next/server/app/sign-in/failed/page.js.nft.json +1 -1
  65. package/.next/standalone/packages/console/.next/server/app/sign-in/failed/page_client-reference-manifest.js +1 -1
  66. package/.next/standalone/packages/console/.next/server/app/sign-in/page.js.nft.json +1 -1
  67. package/.next/standalone/packages/console/.next/server/app/sign-in/page_client-reference-manifest.js +1 -1
  68. package/.next/standalone/packages/console/.next/server/app/version/route.js.nft.json +1 -1
  69. package/.next/standalone/packages/console/.next/server/chunks/[root-of-the-server]__06f_104._.js +1 -1
  70. package/.next/standalone/packages/console/.next/server/chunks/[root-of-the-server]__1cfwaji._.js +1 -1
  71. package/.next/standalone/packages/console/.next/server/chunks/_1uqphll._.js +1 -1
  72. package/.next/standalone/packages/console/.next/server/chunks/ssr/0mxb_server_app_(console)_squadrons_blueprints_[name]_page_actions_170owr_.js +1 -1
  73. package/.next/standalone/packages/console/.next/server/chunks/ssr/0mxb_server_app_(console)_squadrons_templates_[name]_page_actions_09abrr0.js +1 -1
  74. package/.next/standalone/packages/console/.next/server/chunks/ssr/0ysl_console__next-internal_server_app_(console)_fleet-health_page_actions_1gb6-fk.js +1 -1
  75. package/.next/standalone/packages/console/.next/server/chunks/ssr/0ysl_console__next-internal_server_app_(console)_needs-crew_page_actions_08gu8-f.js +1 -1
  76. package/.next/standalone/packages/console/.next/server/chunks/ssr/0ysl_console__next-internal_server_app_(console)_network_page_actions_1muuv-j.js +1 -1
  77. package/.next/standalone/packages/console/.next/server/chunks/ssr/0ysl_console__next-internal_server_app_(console)_settings_page_actions_0b6qztr.js +1 -1
  78. package/.next/standalone/packages/console/.next/server/chunks/ssr/0ysl_console__next-internal_server_app_(console)_ships_[shipId]_page_actions_0g2nd1p.js +1 -1
  79. package/.next/standalone/packages/console/.next/server/chunks/ssr/0ysl_console__next-internal_server_app_(console)_squadrons_page_actions_1x3afts.js +1 -1
  80. package/.next/standalone/packages/console/.next/server/chunks/ssr/0ysl_console__next-internal_server_app_(console)_trierarchs_page_actions_1ow37mz.js +1 -1
  81. package/.next/standalone/packages/console/.next/server/chunks/ssr/1eui__next-internal_server_app_(console)_fleet-health_[cause]_page_actions_1kltvcl.js +1 -1
  82. package/.next/standalone/packages/console/.next/server/chunks/ssr/1eui__next-internal_server_app_(console)_needs-attention_page_actions_1jfgclw.js +1 -1
  83. package/.next/standalone/packages/console/.next/server/chunks/ssr/1eui__next-internal_server_app_(console)_squadrons_[squadronId]_page_actions_1lzqlye.js +1 -1
  84. package/.next/standalone/packages/console/.next/server/chunks/ssr/1eui__next-internal_server_app_(console)_trierarchs_[shipId]_page_actions_0l7bxva.js +1 -1
  85. package/.next/standalone/packages/console/.next/server/chunks/ssr/_0-lk0hi._.js +1 -1
  86. package/.next/standalone/packages/console/.next/server/chunks/ssr/_06472wf._.js +1 -1
  87. package/.next/standalone/packages/console/.next/server/chunks/ssr/_065633k._.js +1 -1
  88. package/.next/standalone/packages/console/.next/server/chunks/ssr/_0bx9rsi._.js +1 -1
  89. package/.next/standalone/packages/console/.next/server/chunks/ssr/{_1dr4sxv._.js → _0dgwyy6._.js} +1 -1
  90. package/.next/standalone/packages/console/.next/server/chunks/ssr/_0dq16_0._.js +1 -1
  91. package/.next/standalone/packages/console/.next/server/chunks/ssr/_0eeox-9._.js +1 -1
  92. package/.next/standalone/packages/console/.next/server/chunks/ssr/_0ibcqy0._.js +1 -1
  93. package/.next/standalone/packages/console/.next/server/chunks/ssr/{_0mx1tkz._.js → _0ljoc6_._.js} +1 -1
  94. package/.next/standalone/packages/console/.next/server/chunks/ssr/_0q3cblh._.js +1 -1
  95. package/.next/standalone/packages/console/.next/server/chunks/ssr/_0qft7s4._.js +1 -1
  96. package/.next/standalone/packages/console/.next/server/chunks/ssr/_0qo94ne._.js +1 -1
  97. package/.next/standalone/packages/console/.next/server/chunks/ssr/_0txw0_-._.js +1 -1
  98. package/.next/standalone/packages/console/.next/server/chunks/ssr/_0vwj8z1._.js +3 -0
  99. package/.next/standalone/packages/console/.next/server/chunks/ssr/{_15d37tz._.js → _0wmw6gw._.js} +1 -1
  100. package/.next/standalone/packages/console/.next/server/chunks/ssr/_0z9_vmu._.js +1 -1
  101. package/.next/standalone/packages/console/.next/server/chunks/ssr/_1150wmd._.js +1 -1
  102. package/.next/standalone/packages/console/.next/server/chunks/ssr/_15_xzod._.js +1 -1
  103. package/.next/standalone/packages/console/.next/server/chunks/ssr/{_1m4ivsp._.js → _167gn91._.js} +1 -1
  104. package/.next/standalone/packages/console/.next/server/chunks/ssr/_1_9jlty._.js +3 -0
  105. package/.next/standalone/packages/console/.next/server/chunks/ssr/{_0_2b2as._.js → _1bvkf-u._.js} +1 -1
  106. package/.next/standalone/packages/console/.next/server/chunks/ssr/_1cak3vp._.js +1 -1
  107. package/.next/standalone/packages/console/.next/server/chunks/ssr/{_1rm79p_._.js → _1calzjj._.js} +1 -1
  108. package/.next/standalone/packages/console/.next/server/chunks/ssr/_1hb5q4e._.js +3 -0
  109. package/.next/standalone/packages/console/.next/server/chunks/ssr/_1khnccn._.js +1 -1
  110. package/.next/standalone/packages/console/.next/server/chunks/ssr/{_0um_0ko._.js → _1m738ix._.js} +1 -1
  111. package/.next/standalone/packages/console/.next/server/chunks/ssr/_1q4-osx._.js +1 -1
  112. package/.next/standalone/packages/console/.next/server/chunks/ssr/_1svohzj._.js +1 -1
  113. package/.next/standalone/packages/console/.next/server/chunks/ssr/_1t4d5qx._.js +1 -1
  114. package/.next/standalone/packages/console/.next/server/chunks/ssr/_1tmr0q5._.js +1 -1
  115. package/.next/standalone/packages/console/.next/server/chunks/ssr/_1u0h4gj._.js +1 -1
  116. package/.next/standalone/packages/console/.next/server/chunks/ssr/_1yjxbcr._.js +1 -1
  117. package/.next/standalone/packages/console/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_0nwj88l._.js +3 -0
  118. package/.next/standalone/packages/console/.next/server/chunks/ssr/{packages_common_dist_schemas_ping_043mvb2.js → node_modules_zod_v4_classic_external_15fmmz3.js} +3 -3
  119. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_1t6joug._.js +3 -0
  120. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_common_dist_1_gq_cl._.js +1 -1
  121. package/.next/standalone/packages/console/.next/server/chunks/ssr/{packages_console_1phsut4._.js → packages_console_095mmim._.js} +1 -1
  122. package/.next/standalone/packages/console/.next/server/chunks/ssr/{packages_console_0-cynql._.js → packages_console_11eh-8v._.js} +2 -2
  123. package/.next/standalone/packages/console/.next/server/chunks/ssr/{packages_console_0hcloef._.js → packages_console_13ry5_2._.js} +1 -1
  124. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_1bm_b0f._.js +1 -1
  125. package/.next/standalone/packages/console/.next/server/chunks/ssr/{packages_console_1mg652q._.js → packages_console_1myu9eb._.js} +2 -2
  126. package/.next/standalone/packages/console/.next/server/chunks/ssr/{packages_console_1932jy8._.js → packages_console_1pds_ub._.js} +2 -2
  127. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console__next-internal_server_app_(console)_inbox_page_actions_0q9_xye.js +1 -1
  128. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console__next-internal_server_app_(console)_labels_page_actions_0tk7mqs.js +1 -1
  129. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console__next-internal_server_app_(console)_page_actions_1ftjjyq.js +1 -1
  130. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_app_(console)_network_network-page_tsx_0qc3h-9._.js +1 -1
  131. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_app_(console)_overview-page_tsx_15siba6._.js +1 -1
  132. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_app_(console)_ships_[shipId]_ship-page_tsx_0oahz0r._.js +1 -1
  133. package/.next/standalone/packages/console/.next/server/chunks/ssr/{packages_console_components_organisms_crew-line-dialog_tsx_1wiepn9._.js → packages_console_components_organisms_crew-line-dialog_tsx_1tmwb3z._.js} +1 -1
  134. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_features_ship_ui_organisms_message-sheet_tsx_08bg9ly._.js +3 -0
  135. package/.next/standalone/packages/console/.next/server/chunks/ssr/{packages_console_features_squadrons_organisms_form-squadron-dialog_tsx_0uvng9u._.js → packages_console_features_squadrons_organisms_form-squadron-dialog_tsx_11piudw._.js} +1 -1
  136. package/.next/standalone/packages/console/.next/server/chunks/ssr/{packages_console_features_squadrons_organisms_form-squadron-dialog_tsx_0o-4rcz._.js → packages_console_features_squadrons_organisms_form-squadron-dialog_tsx_1_2jov8._.js} +1 -1
  137. package/.next/standalone/packages/console/.next/server/chunks/ssr/{packages_console_features_trierarchs_organisms_clear-worktree-dialog_tsx_1vo-jvm._.js → packages_console_features_trierarchs_organisms_clear-worktree-dialog_tsx_0dogayz._.js} +1 -1
  138. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_lib_1b-azvo._.js +1 -1
  139. package/.next/standalone/packages/console/.next/server/middleware-build-manifest.js +3 -3
  140. package/.next/standalone/packages/console/.next/server/pages/500.html +1 -1
  141. package/.next/standalone/packages/console/.next/server/server-reference-manifest.js +1 -1
  142. package/.next/standalone/packages/console/.next/server/server-reference-manifest.json +17 -17
  143. package/.next/standalone/packages/console/.next/static/chunks/09d3pvbsjtshj.js +1 -0
  144. package/.next/standalone/packages/console/.next/static/chunks/0c7bjft6zc04t.js +1 -0
  145. package/.next/standalone/packages/console/.next/static/chunks/{40z-3somzsrdu.js → 0fa8e9n5fw6ti.js} +1 -1
  146. package/.next/standalone/packages/console/.next/static/chunks/{2r6qbt-3eyyx0.js → 0fj5fpwgxkqx6.js} +1 -1
  147. package/.next/standalone/packages/console/.next/static/chunks/{0dym46wdgyr8s.js → 0ht5wi5oe5_za.js} +1 -1
  148. package/.next/standalone/packages/console/.next/static/chunks/{3b-s07jfktn4h.js → 0k-zw0ldc55vf.js} +1 -1
  149. package/.next/standalone/packages/console/.next/static/chunks/0k_f9ghdbhdlh.js +1 -0
  150. package/.next/standalone/packages/console/.next/static/chunks/{1-qb94mliowen.js → 0of7ho03vihb8.js} +1 -1
  151. package/.next/standalone/packages/console/.next/static/chunks/{3tgyz9diu6s8b.js → 101ihp2v2np_3.js} +1 -1
  152. package/.next/standalone/packages/console/.next/static/chunks/{13dlsye_vo200.js → 126uqxulir3hs.js} +1 -1
  153. package/.next/standalone/packages/console/.next/static/chunks/14e-f0w_cfqhg.js +1 -0
  154. package/.next/standalone/packages/console/.next/static/chunks/{27w_ak-u49z7c.js → 169-oge56q06i.js} +1 -1
  155. package/.next/standalone/packages/console/.next/static/chunks/{3l9d_pyzbdymw.js → 1a9zf8kv0co9n.js} +1 -1
  156. package/.next/standalone/packages/console/.next/static/chunks/1bra8hyy6r84a.js +1 -0
  157. package/.next/standalone/packages/console/.next/static/chunks/{1o0gz-w01gi32.js → 1gmxwgg3tuq9j.js} +1 -1
  158. package/.next/standalone/packages/console/.next/static/chunks/{1rdp_b6odjqw0.js → 1l5d_-f5_4n13.js} +1 -1
  159. package/.next/standalone/packages/console/.next/static/chunks/1lu3lt0jl2qe-.js +1 -0
  160. package/.next/standalone/packages/console/.next/static/chunks/{3ndsjj121oi4m.css → 1qpq5_mt8o9ya.css} +1 -1
  161. package/.next/standalone/packages/console/.next/static/chunks/{1l8zdqmp_9rf5.js → 1rnej87ue7-0n.js} +1 -1
  162. package/.next/standalone/packages/console/.next/static/chunks/{0f4gp6zc0v7ff.js → 1splzlg79ytml.js} +1 -1
  163. package/.next/standalone/packages/console/.next/static/chunks/{1da369dzazef6.js → 1wfdv058l23gm.js} +1 -1
  164. package/.next/standalone/packages/console/.next/static/chunks/24bvw3_s7h3f3.js +1 -0
  165. package/.next/standalone/packages/console/.next/static/chunks/28pbrg59hx8sb.js +1 -0
  166. package/.next/standalone/packages/console/.next/static/chunks/{0m5y3s3tz9qdy.js → 2chqk2x196ti0.js} +1 -1
  167. package/.next/standalone/packages/console/.next/static/chunks/2j2d4nw9_nas6.js +1 -0
  168. package/.next/standalone/packages/console/.next/static/chunks/2k8crfymkve8d.js +1 -0
  169. package/.next/standalone/packages/console/.next/static/chunks/{08kmb58ulpuue.js → 2l7g6epwsx9wf.js} +1 -1
  170. package/.next/standalone/packages/console/.next/static/chunks/2y5xx24gswylp.js +1 -0
  171. package/.next/standalone/packages/console/.next/static/chunks/{1hl55s9nte__6.js → 318sjnwsspety.js} +1 -1
  172. package/.next/standalone/packages/console/.next/static/chunks/{03ktpgapfr1fd.js → 32f8-4_7znbir.js} +1 -1
  173. package/.next/standalone/packages/console/.next/static/chunks/36n7fei4v2kye.js +1 -0
  174. package/.next/standalone/packages/console/.next/static/chunks/{17odvid17s2tw.js → 3cae8s07yzv_o.js} +1 -1
  175. package/.next/standalone/packages/console/.next/static/chunks/3f5v4p3jz0k1g.js +1 -0
  176. package/.next/standalone/packages/console/.next/static/chunks/3jszhx5rvbjvw.js +1 -0
  177. package/.next/standalone/packages/console/.next/static/chunks/{2l8wcne7b1_zj.js → 3k61es128845f.js} +1 -1
  178. package/.next/standalone/packages/console/.next/static/chunks/3n6d3yt_vtnne.js +1 -0
  179. package/.next/standalone/packages/console/.next/static/chunks/3o8213x94m4o3.js +1 -0
  180. package/.next/standalone/packages/console/.next/static/chunks/3qrq-wd28w60w.js +1 -0
  181. package/.next/standalone/packages/console/.next/static/chunks/{3qr3u05dpx3ge.js → 3vr80dn3nyqqi.js} +2 -2
  182. package/.next/standalone/packages/console/.next/static/chunks/{2t433o8fl-ml0.js → 3wqzb_30qmu4l.js} +1 -1
  183. package/.next/standalone/packages/console/.next/static/chunks/3yjner-hzsvhr.js +1 -0
  184. package/.next/standalone/packages/console/.next/static/chunks/{44uzs2qr-cee1.js → 40kwaybl7nu8j.js} +1 -1
  185. package/.next/standalone/packages/console/.next/static/chunks/420usygo4rcxp.js +1 -0
  186. package/.next/standalone/packages/console/package.json +3 -3
  187. package/README.md +2 -2
  188. package/package.json +3 -3
  189. package/.next/standalone/packages/console/.next/server/chunks/ssr/_007hyay._.js +0 -3
  190. package/.next/standalone/packages/console/.next/server/chunks/ssr/_0v442oo._.js +0 -3
  191. package/.next/standalone/packages/console/.next/server/chunks/ssr/_10t_dof._.js +0 -3
  192. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_17dse8h._.js +0 -3
  193. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_features_ship_organisms_message-sheet_tsx_0quy9k0._.js +0 -3
  194. package/.next/standalone/packages/console/.next/static/chunks/0774ajv3n2sec.js +0 -1
  195. package/.next/standalone/packages/console/.next/static/chunks/0c17wq4vgezhs.js +0 -1
  196. package/.next/standalone/packages/console/.next/static/chunks/0dv6nkmic67qu.js +0 -1
  197. package/.next/standalone/packages/console/.next/static/chunks/0v7urhig04x47.js +0 -1
  198. package/.next/standalone/packages/console/.next/static/chunks/0vf_ufda6f5_a.js +0 -1
  199. package/.next/standalone/packages/console/.next/static/chunks/1_6o6fps43670.js +0 -1
  200. package/.next/standalone/packages/console/.next/static/chunks/1imn88cebly66.js +0 -1
  201. package/.next/standalone/packages/console/.next/static/chunks/2a-1xtmi1hx3h.js +0 -1
  202. package/.next/standalone/packages/console/.next/static/chunks/2egdjg_8otxoe.js +0 -1
  203. package/.next/standalone/packages/console/.next/static/chunks/2ihkzqv4yg9le.js +0 -1
  204. package/.next/standalone/packages/console/.next/static/chunks/2kzhuwq53l7ml.js +0 -1
  205. package/.next/standalone/packages/console/.next/static/chunks/2wmpsx0-ppato.js +0 -1
  206. package/.next/standalone/packages/console/.next/static/chunks/2ybp2gr6g0hjh.js +0 -1
  207. package/.next/standalone/packages/console/.next/static/chunks/3fl8vffzef7ta.js +0 -1
  208. package/.next/standalone/packages/console/.next/static/chunks/3flwn71cq8_6u.js +0 -1
  209. package/.next/standalone/packages/console/.next/static/chunks/3v_rd25hyqdcr.js +0 -1
  210. package/.next/standalone/packages/console/.next/static/chunks/3xpa57z5k1j9u.js +0 -1
  211. package/.next/standalone/packages/console/.next/static/chunks/425ol2sav0q-i.js +0 -1
  212. package/.next/standalone/packages/console/.next/static/chunks/43wzzfkiwha23.js +0 -1
  213. /package/.next/standalone/packages/console/.next/static/{7ilR2JMt_PkXHhRu_RUkU → Idv688KqeLyROC1itAuuQ}/_buildManifest.js +0 -0
  214. /package/.next/standalone/packages/console/.next/static/{7ilR2JMt_PkXHhRu_RUkU → Idv688KqeLyROC1itAuuQ}/_clientMiddlewareManifest.js +0 -0
  215. /package/.next/standalone/packages/console/.next/static/{7ilR2JMt_PkXHhRu_RUkU → Idv688KqeLyROC1itAuuQ}/_ssgManifest.js +0 -0
@@ -0,0 +1,3 @@
1
+ module.exports=[98959,a=>{"use strict";var b=a.i(56757),c=a.i(2811);b.z.object({shipId:(0,c.idSchema)("ship")}),b.z.object({messageId:(0,c.idSchema)("message"),sentAt:b.z.iso.datetime(),isNew:b.z.boolean()}),b.z.object({deliveryId:(0,c.idSchema)("delivery")}),b.z.strictObject({}),a.s(["isPingContentType",0,function(a){let[b=""]=a.split(";");return"application/vnd.aeolus.ping"===b.trim().toLowerCase()}])},49821,a=>{"use strict";var b=a.i(87924),c=a.i(35559),d=a.i(23063),e=a.i(72131),f=a.i(88191),g=a.i(65563),h=a.i(90146),i=a.i(34564),j=a.i(10023),k=a.i(68450),l=a.i(98959),m=a.i(49651),n=a.i(14499),o=a.i(41696),p=a.i(64831);let q={name:"arrow-left",size:24,node:[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]};q.node;let r=(0,p.default)(q);var s=a.i(38246),t=a.i(76166),u=a.i(12068),v=a.i(24173),w=a.i(40392),x=a.i(50808),y=a.i(72872),z=a.i(68710);let A={pending:"pending",received:"received",handed:"handed",undeliverable:"undeliverable"};function B({place:a,ship:c,now:e}){let f=a.place,g="undeliverable"===a.cause?null:(0,o.nextStepOf)(a);return(0,b.jsxs)("header",{className:"flex flex-wrap items-start justify-between gap-3",children:[(0,b.jsxs)("div",{className:"flex min-w-0 flex-col gap-2",children:[(0,b.jsxs)("h2",{className:"flex flex-wrap items-center gap-2 text-section font-semibold text-foreground",children:["ship"===f.kind?f.ship.name:(0,b.jsx)(t.Badge,{variant:"type",children:f.type}),void 0!==c&&(0,b.jsx)(d.StatusBadge,{status:c.status}),void 0!==c&&(0,b.jsx)(t.Badge,{variant:"type",children:c.type})]}),(0,b.jsxs)("dl",{className:"flex flex-wrap gap-x-6 gap-y-1 text-meta",children:["ship"===f.kind&&c?.lastSeenAt!=null&&(0,b.jsxs)("div",{children:[(0,b.jsx)("dt",{className:"text-muted-foreground",children:"Session last seen"}),(0,b.jsx)("dd",{className:"text-foreground",title:(0,y.shortDateTime)(new Date(c.lastSeenAt)),children:(0,y.relativeTime)(new Date(c.lastSeenAt),e)})]}),"ship"===f.kind&&null!==f.machine&&(0,b.jsxs)("div",{children:[(0,b.jsx)("dt",{className:"text-muted-foreground",children:"Machine"}),(0,b.jsxs)("dd",{className:"text-foreground",children:[f.machine.name,null!==f.machine.lastSeenAt&&` \xb7 last seen ${(0,y.relativeTime)(new Date(f.machine.lastSeenAt),e)}`]})]}),"type"===f.kind&&(0,b.jsxs)("div",{children:[(0,b.jsx)("dt",{className:"text-muted-foreground",children:"Sent to"}),(0,b.jsxs)("dd",{className:"text-foreground",children:["Any ship of type ",f.type]})]})]})]}),null!==g&&(0,b.jsx)(u.Button,{variant:"secondary",size:"sm",nativeButton:!1,render:(0,b.jsx)(s.default,{href:g.href}),className:"max-sm:h-(--size-control-touch) max-sm:w-full","data-testid":"drilldown-next-step",children:g.label})]})}function C({cause:a,state:c,places:e,ships:f,messages:g,onRetry:h,onResend:i,onDismiss:j,pendingIds:k,now:l}){return"error"===c?(0,b.jsx)(w.InlineError,{variant:"page",title:"Couldn’t load the stuck deliveries",description:"Nothing changed in the fleet. The page tries again by itself.",onRetry:h}):"loading"===c?(0,b.jsx)(x.LoadingSkeleton,{variant:"cards",rows:2,label:"Loading the stuck deliveries"}):0===e.length?(0,b.jsx)(v.EmptyState,{title:`Nothing ${(0,d.statusLabel)(a).toLowerCase()}`,description:"No delivery is stuck for this cause now.",action:(0,b.jsxs)(u.Button,{variant:"secondary",nativeButton:!1,render:(0,b.jsx)(s.default,{href:"/fleet-health"}),children:[(0,b.jsx)(r,{"aria-hidden":!0}),"Back to Health"]})}):(0,b.jsxs)("div",{"data-testid":"drilldown",className:"flex flex-col gap-5 max-sm:gap-3.5",children:[(0,b.jsx)("p",{className:"text-body text-muted-foreground max-sm:text-body-touch",children:o.CAUSE_SENTENCES[a]}),e.map(a=>{let c="ship"===a.place.kind?f.get(a.place.ship.id):void 0;return(0,b.jsxs)("section",{"aria-label":(0,o.placeName)(a.place),"data-testid":"drilldown-place",className:"flex flex-col gap-3 rounded-lg border border-border bg-card p-4 shadow-sm max-sm:rounded-xl",children:[(0,b.jsx)(B,{place:a,ship:c,now:l}),(0,b.jsxs)("div",{className:"grid grid-cols-[minmax(0,2fr)_minmax(0,1fr)_auto_auto] gap-x-4 max-sm:grid-cols-1",children:[(0,b.jsxs)("div",{className:"col-span-4 grid grid-cols-subgrid border-b border-border pb-2 text-caption font-medium text-muted-foreground max-sm:hidden",children:[(0,b.jsx)("span",{children:"Message"}),(0,b.jsx)("span",{children:"How long (1 min to 7 d)"}),(0,b.jsx)("span",{children:"Since"}),(0,b.jsx)("span",{children:"State"})]}),(0,b.jsx)("ul",{className:"col-span-4 grid grid-cols-subgrid divide-y divide-border max-sm:col-span-1",children:a.deliveries.map(c=>{let e=g.get(c.messageId),f="ship"===a.place.kind?a.place.ship.id:e?.sender.id,h=k.has(c.deliveryId);return(0,b.jsxs)("li",{"data-testid":"drilldown-row","data-delivery-id":c.deliveryId,className:"col-span-4 grid grid-cols-subgrid items-center gap-y-2 py-3 max-sm:col-span-1",children:[(0,b.jsxs)("div",{className:"flex min-w-0 flex-col gap-0.5",children:[void 0===f?(0,b.jsx)("span",{className:"truncate text-body text-foreground",children:e?.preview??"…"}):(0,b.jsx)(s.default,{href:(0,o.messagePathOn)(f,c.messageId),className:"truncate text-body text-foreground hover:underline","data-testid":"drilldown-open",children:void 0===e?"Open the message":e.preview}),void 0!==e&&(0,b.jsxs)("span",{className:"text-meta text-muted-foreground",children:["from ",e.sender.name]})]}),(0,b.jsx)(z.WaitStrip,{waits:[(0,o.waitMinutes)(c.since,l)],label:`Waiting ${(0,y.duration)(new Date(c.since),l)}`}),(0,b.jsxs)("span",{className:"text-meta tabular-nums text-muted-foreground",title:(0,y.shortDateTime)(new Date(c.since)),children:[(0,y.shortDateTime)(new Date(c.since))," · ",(0,y.duration)(new Date(c.since),l)]}),(0,b.jsxs)("span",{className:"flex flex-wrap items-center gap-2",children:[(0,b.jsx)(d.StatusBadge,{status:A[c.state]}),"undeliverable"===c.state&&void 0!==i&&void 0!==e&&!e.isPing&&(0,b.jsx)(u.Button,{variant:"secondary",size:"xs",disabled:h,onClick:()=>{i(c.deliveryId)},"data-testid":"drilldown-resend",className:"max-sm:h-(--size-control-touch)",children:"Resend"}),"undeliverable"===c.state&&void 0!==j&&(0,b.jsx)(u.Button,{variant:"ghost",size:"xs",disabled:h,onClick:()=>{j(c.deliveryId)},"data-testid":"drilldown-dismiss",className:"max-sm:h-(--size-control-touch)",children:"Dismiss"})]})]},c.deliveryId)})})]})]},"ship"===a.place.kind?a.place.ship.id:a.place.type)})]})}function D({cause:a}){let c=(0,k.useNow)(),d=(0,i.useFleetHealth)(),p=(0,h.useFleetSnapshot)(),q=(0,g.useAccess)(),r=(0,j.useResendDelivery)(),s=(0,j.useDismissDelivery)(),[t,u]=(0,e.useState)(new Set),v=(0,o.causeGroupsOf)(d.data??{stuck:[]}).find(b=>b.cause===a)?.places??[],{messages:w}=function(a){let b=(0,n.useTRPC)(),c=(0,m.useQueries)({queries:a.map(a=>b.fleet.message.queryOptions({messageId:a}))}),d=new Map;for(let a of c)a.data&&d.set(a.data.id,{preview:(0,o.previewOf)(a.data.payload),sender:a.data.sender,isPing:(0,l.isPingContentType)(a.data.contentType)});return{messages:d,isLoading:c.some(a=>a.isPending)}}(v.flatMap(a=>a.deliveries.map(a=>a.messageId))),x=new Map((p.data??[]).map(a=>[a.id,{status:a.status,type:a.type,lastSeenAt:a.lastSeenAt}])),y=(a,b)=>{u(b=>new Set([...b,a])),b().finally(()=>{u(b=>new Set([...b].filter(b=>b!==a)))})};return(0,b.jsx)(C,{cause:a,state:d.isError?"error":d.data?"ready":"loading",places:v,ships:x,messages:w,onRetry:()=>{d.refetch()},onResend:q.canManage?a=>{let b=v.find(b=>b.deliveries.some(b=>b.deliveryId===a));y(a,async()=>{try{await r.mutateAsync({deliveryId:a}),(0,f.showToast)({title:"Message resent",description:void 0===b?"The original is dismissed.":`A new message went to ${(0,o.placeName)(b.place)}. The original is dismissed.`,tone:"success"})}catch(a){(0,f.showToast)({title:"Couldn’t resend the message",description:E(a),tone:"error"})}})}:void 0,onDismiss:q.canManage?a=>{y(a,async()=>{try{await s.mutateAsync({deliveryId:a}),(0,f.showToast)({...j.DISMISSED_TOAST,tone:"success"})}catch(a){(0,f.showToast)({title:"Couldn’t dismiss the delivery",description:E(a),tone:"error"})}})}:void 0,pendingIds:t,now:c})}function E(a){return a instanceof Error?a.message:"Try again in a moment."}var F=a.i(38023),G=a.i(67336),H=a.i(10572);a.s(["CausePage",0,function({cause:a}){let e=(0,F.useConsoleFrame)(),f=(0,G.useLiveFleet)(),g=(0,i.useFleetHealth)();(0,H.useSignInWhenSessionEnds)([g.error,f.error]);let h=g.data?.stuck.filter(b=>b.cause===a).reduce((a,b)=>a+b.count,0);return(0,b.jsx)(c.DetailPage,{onCompose:e.onCompose,onSearch:e.onSearch,banner:e.banner,title:(0,d.statusLabel)(a),parents:[{href:"/fleet-health",label:"Health"}],live:f.live,header:(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-3","data-testid":"drilldown-header",children:[(0,b.jsx)(d.StatusBadge,{status:a}),void 0===h?null:(0,b.jsxs)("p",{className:"text-section font-semibold text-foreground",children:[h," ",1===h?"delivery":"deliveries"," stuck"]})]}),children:(0,b.jsx)(D,{cause:a})})}],49821)},41696,68710,a=>{"use strict";let b=["noShipCanTake","waitingForCrew","stalledInFlight","undeliverable"];function c(a){return`/fleet-health/${a}`}function d(a){return"ship"===a.kind?a.ship.name:a.type}let e={noShipCanTake:"no ship can take",waitingForCrew:"waiting for crew",stalledInFlight:"stalled in flight",undeliverable:"undeliverable"},f=[{minutes:1,label:"1 min"},{minutes:10,label:"10 min"},{minutes:60,label:"1 h"},{minutes:1440,label:"1 d"},{minutes:10080,label:"7 d"}],g=Math.log(1),h=Math.log(10080);function i(a){return Math.min(Math.max((Math.log(Math.max(a,1))-g)/(h-g),0),1)}let j={pending:"pending",received:"received",handed:"handed (pulled)",undeliverable:"undeliverable"};a.s(["CAUSE_SENTENCES",0,{noShipCanTake:"Sent to a type with no active ship. Waits until you commission one.",waitingForCrew:"Sent to a ship no session crews. Waits until it is crewed.",stalledInFlight:"Taken by a session that went quiet. Waits until it acknowledges or the ship is released.",undeliverable:"Taken five times, never acknowledged. Waits for you to resend or dismiss."},"WAIT_TICKS",0,f,"causeGroupsOf",0,function(a){return b.flatMap(b=>{let c=a.stuck.filter(a=>a.cause===b).toSorted((a,b)=>a.oldestSince.localeCompare(b.oldestSince));return 0===c.length?[]:[{cause:b,count:c.reduce((a,b)=>a+b.count,0),places:c}]})},"causePathOf",0,c,"marksOf",0,function(a){let[b]=a.stuckPerHour;return void 0===b?[]:a.stuck.filter(a=>a.oldestSince>b.at).toSorted((a,b)=>a.oldestSince.localeCompare(b.oldestSince)).map((b,c)=>({number:c+1,hour:a.stuckPerHour.findIndex(a=>a.at>=b.oldestSince),label:`${d(b.place)}: ${e[b.cause]}`}))},"medianText",0,function(a,b){let c=Math.round(a/1e3);return c<60?`${String(c)} s`:b(new Date(0),new Date(a))},"messagePathOn",0,function(a,b){return`/ships/${a}?tab=messages&message=${b}`},"nextStepOf",0,function(a){let b=a.place;switch(a.cause){case"noShipCanTake":return{label:`Commission a ${d(b)}`,href:"/?commission=new"};case"waitingForCrew":return"ship"===b.kind?{label:"Get starting prompt",href:`/ships/${b.ship.id}`}:{label:"Open ships of type",href:`/?type=${encodeURIComponent(b.type)}`};case"stalledInFlight":if("ship"===b.kind&&null!==b.machine)return{label:"Open machine",href:`/trierarchs/${b.machine.id}`};return"ship"===b.kind?{label:"Open ship",href:`/ships/${b.ship.id}`}:{label:"Open ships of type",href:`/?type=${encodeURIComponent(b.type)}`};case"undeliverable":return{label:"Resend or dismiss",href:c("undeliverable")}}},"placeName",0,d,"placeNote",0,function(a,b){let c=a.place;if("stalledInFlight"!==a.cause||"ship"!==c.kind)return null;let d=[...new Set(a.deliveries.map(a=>j[a.state]))].join(", ");if(null!==c.machine){let a=null===c.machine.lastSeenAt?"never seen":`last seen ${b.since(new Date(c.machine.lastSeenAt))}`;return`${d}, machine ${c.machine.name} ${a}`}let e=b.facts?.lastSeenAt??null;return null===e?d:`${d}, session last seen ${b.since(new Date(e))}`},"previewOf",0,function(a){return a.split("\n",1)[0]?.trim()??""},"stuckByMachine",0,function(a){let b=new Map;for(let c of a.stuck)"ship"===c.place.kind&&null!==c.place.machine&&b.set(c.place.machine.id,(b.get(c.place.machine.id)??0)+c.count);return b},"trendSentence",0,function(a){return a.count>a.dayAgo?`Up from ${String(a.dayAgo)} a day ago.`:a.count<a.dayAgo?`Down from ${String(a.dayAgo)} a day ago.`:"As many as a day ago."},"verdictOf",0,function(a){let[b]=a.stuck.map(a=>a.oldestSince).toSorted();if(void 0===b)return{kind:"delivering"};let c=a.stuckPerHour.at(-25)?.count??0;return{kind:"stuck",count:a.stuck.reduce((a,b)=>a+b.count,0),places:a.stuck.length,since:b,dayAgo:c}},"waitMinutes",0,function(a,b){return Math.max(0,(b.getTime()-Date.parse(a))/6e4)},"waitPosition",0,i],41696);var k=a.i(87924),l=a.i(80487);function m(a){return`${100*i(a)}%`}a.s(["WaitAxis",0,function({className:a}){return(0,k.jsx)("div",{"aria-hidden":!0,className:(0,l.classNames)("relative h-4 w-full text-micro text-muted-foreground",a),children:f.map((a,b)=>(0,k.jsx)("span",{className:(0,l.classNames)("absolute whitespace-nowrap",0===b?"":b===f.length-1?"-translate-x-full":"-translate-x-1/2"),style:{left:m(a.minutes)},children:a.label},a.minutes))})},"WaitStrip",0,function({waits:a,label:b,className:c}){let d=Math.max(0,...a);return(0,k.jsxs)("div",{role:"img","aria-label":b,"data-testid":"health-wait-strip",className:(0,l.classNames)("relative h-4 w-full",c),children:[(0,k.jsx)("span",{"aria-hidden":!0,className:"absolute inset-y-0 rounded-xs bg-muted",style:{left:m(10),right:`calc(100% - ${m(60)})`}}),(0,k.jsx)("span",{"aria-hidden":!0,className:"absolute inset-x-0 top-1/2 h-px bg-border"}),f.map(a=>(0,k.jsx)("span",{"aria-hidden":!0,className:"absolute top-1/4 h-1/2 w-px bg-border",style:{left:m(a.minutes)}},a.minutes)),(0,k.jsx)("span",{"aria-hidden":!0,className:"absolute top-1/2 h-0.5 -translate-y-1/2 rounded-full bg-foreground opacity-35",style:{left:0,width:m(d)}}),a.map((a,b)=>(0,k.jsx)("span",{"aria-hidden":!0,className:"absolute top-1/2 size-2.5 -translate-1/2 rounded-full border-2 border-card bg-foreground",style:{left:m(a)}},`${a}-${String(b)}`))]})}],68710)}];
2
+
3
+ //# sourceMappingURL=packages_1t6joug._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[33839,a=>{"use strict";var b=a.i(53112);let c=b.z.enum(["messages:send","messages:receive","fleet:read","fleet:manage","crew:assign","crew:run","labels:define","labels:assign","fleet:network"]),d=["fleet:read","fleet:manage","crew:assign","crew:run","labels:define","labels:assign","fleet:network"],e=b.z.enum(d),f=b.z.enum(["operator","agent","viewer"]),g=b.z.enum(["DEVICE","CLOUD","SERVER","OTHER"]),h=b.z.enum(["awaitingCrew","crewed","retired"]);b.z.enum(["ship","type"]);let i=b.z.enum(["pending","received","handed","acknowledged","handled","notHandled","undeliverable","dismissed","abandoned"]),j=b.z.enum(["FleetInitialised","ShipCommissioned","ShipClaimed","LeaseRevoked","CredentialRevoked","StartingPromptIssued","OperatorPasswordReset","MessageAccepted","LeasePushed","DeliveryReceived","DeliveryHanded","DeliveryAcknowledged","DeliveryHandled","DeliveryNotHandled","DeliveryOverdue","DeliveryUndeliverable","DeliveryReturned","ShipRetired","DeliveryAbandoned","DeliveryDismissed","ShipRenamed","ShipReported","TurnReported","SignInTicketIssued","FleetLimitsChanged","ViewerSessionStarted","CrewRequested","CrewRequestRemoved","CrewAssigned","CrewStatusChanged","CrewRequestExplained","CrewRequestGivenBack","LabelDefined","LabelValuesChanged","LabelRetired","LabelAssigned","LabelUnassigned","LabelDeleted","WorktreeClearRequested","WorktreeCleared","WorktreeClearRemoved","NetworkRulesSet","NetworkRulesDeclared","NetworkPluginRegistered","NetworkPluginUnregistered"]);a.s(["FLEET_SCOPES",0,d,"deliveryStateSchema",0,i,"eventTypeSchema",0,j,"fleetScopeSchema",0,e,"locationKindSchema",0,g,"scopeSchema",0,c,"shipKindSchema",0,f,"shipStatusSchema",0,h])},8220,a=>{"use strict";var b=a.i(53112),c=a.i(62051);new TextEncoder;let d=b.z.record(b.z.string(),b.z.json()),e=["crewing","running","restarting","crashed","releasing"],f=b.z.enum(e),g=`A reason is one line of at most ${String(200)} characters`;b.z.object({shipId:(0,c.idSchema)("ship"),settings:d}),b.z.object({settingsVersion:b.z.int().min(1)}),b.z.object({shipId:(0,c.idSchema)("ship")}),b.z.strictObject({});let h=b.z.object({settingsVersion:b.z.int().min(1),requestedAt:b.z.iso.datetime(),assignedTo:b.z.object({id:(0,c.idSchema)("ship"),name:b.z.string()}).nullable(),status:f.nullable(),reason:b.z.string().nullable(),crewedBy:b.z.object({id:(0,c.idSchema)("ship"),name:b.z.string()}).nullable(),attempt:b.z.int().min(0),startedAt:b.z.iso.datetime().nullable(),givenBack:b.z.array(b.z.object({trierarch:b.z.object({id:(0,c.idSchema)("ship"),name:b.z.string()}),settingsVersion:b.z.int().min(1),reason:b.z.string(),givenBackAt:b.z.iso.datetime()}))}),i=h.extend({settings:d});b.z.object({shipId:(0,c.idSchema)("ship"),trierarchShipId:(0,c.idSchema)("ship")}),b.z.strictObject({}),b.z.object({shipId:(0,c.idSchema)("ship"),status:f,attempt:b.z.int().min(0).optional(),startedAt:b.z.iso.datetime().nullable().optional()}),b.z.strictObject({}),b.z.object({shipId:(0,c.idSchema)("ship")}),b.z.strictObject({}),b.z.array(b.z.object({shipId:(0,c.idSchema)("ship"),settings:d,settingsVersion:b.z.int().min(1),requestedAt:b.z.iso.datetime(),status:f.nullable(),isFinal:b.z.boolean()})),b.z.object({shipId:(0,c.idSchema)("ship"),reason:b.z.string().trim().max(200,g).refine(a=>!/[\r\n]/.test(a),g).nullable()}),b.z.strictObject({}),b.z.object({shipId:(0,c.idSchema)("ship"),settingsVersion:b.z.int().min(1),reason:b.z.string().trim().min(1,g).max(200,g).refine(a=>!/[\r\n]/.test(a),g)}),b.z.strictObject({}),a.s(["CREW_STATUSES",0,e,"crewRequestSchema",0,i,"crewStatusSchema",0,f,"listedCrewRequestSchema",0,h])}];
1
+ module.exports=[33839,a=>{"use strict";var b=a.i(53112);let c=b.z.enum(["messages:send","messages:receive","messages:force","messages:resend","fleet:read","fleet:commission","fleet:manage","crew:assign","crew:run","labels:define","labels:assign","fleet:network","fleet:on-behalf","scopes:declare","scopes:grant"]),d=["messages","fleet","crew","labels","scopes"],e="[a-z][a-z0-9-]{0,31}";RegExp(`^${e}$`);let f=RegExp(`^${e}:${e}$`),g=b.z.string().regex(f,"A scope is <namespace>:<action>").refine(a=>{var b;return b=a.slice(0,a.indexOf(":")),!d.some(a=>a===b)||c.safeParse(a).success},"No such core scope"),h=["messages:resend","fleet:read","fleet:commission","fleet:manage","crew:assign","crew:run","labels:define","labels:assign","fleet:network","fleet:on-behalf"];b.z.enum(h);let i=b.z.enum(["operator","agent","viewer","person","app"]),j=b.z.enum(["agent","person","app"]),k=b.z.enum(["DEVICE","CLOUD","SERVER","OTHER"]),l=b.z.enum(["awaitingCrew","crewed","retired"]);b.z.enum(["ship","type"]);let m=b.z.enum(["pending","received","handed","acknowledged","handled","notHandled","undeliverable","dismissed","abandoned"]),n=b.z.enum(["FleetInitialised","ShipCommissioned","OwnerSet","OwnerChanged","ShipClaimed","LeaseRevoked","CredentialRevoked","StartingPromptIssued","OperatorPasswordReset","MessageAccepted","LeasePushed","DeliveryReceived","DeliveryHanded","DeliveryAcknowledged","DeliveryHandled","DeliveryNotHandled","DeliveryOverdue","DeliveryUndeliverable","DeliveryReturned","ShipRetired","DeliveryAbandoned","DeliveryDismissed","ShipRenamed","ShipReported","StatementSet","TurnReported","SignInTicketIssued","FleetLimitsChanged","ViewerSessionStarted","CrewRequested","CrewRequestRemoved","CrewAssigned","CrewStatusChanged","CrewRequestExplained","CrewRequestGivenBack","LabelDefined","LabelValuesChanged","LabelRetired","LabelAssigned","LabelUnassigned","LabelDeleted","WorktreeClearRequested","WorktreeCleared","WorktreeClearRemoved","NetworkRulesSet","NetworkRulesDeclared","NetworkPluginRegistered","NetworkPluginUnregistered","BuiltInRuleChanged","ScopesDeclared","ScopesChanged","PluginConnected","PluginDisconnected"]);a.s(["FLEET_SCOPES",0,h,"commissionedShipKindSchema",0,j,"deliveryStateSchema",0,m,"eventTypeSchema",0,n,"locationKindSchema",0,k,"scopeNameSchema",0,g,"scopeSchema",0,c,"shipKindSchema",0,i,"shipStatusSchema",0,l])},8220,a=>{"use strict";var b=a.i(53112),c=a.i(62051);new TextEncoder;let d=b.z.record(b.z.string(),b.z.json()),e=["crewing","running","restarting","crashed","releasing"],f=b.z.enum(e),g=`A reason is one line of at most ${String(200)} characters`;b.z.object({shipId:(0,c.idSchema)("ship"),settings:d}),b.z.object({settingsVersion:b.z.int().min(1)}),b.z.object({shipId:(0,c.idSchema)("ship")}),b.z.strictObject({});let h=b.z.object({settingsVersion:b.z.int().min(1),requestedAt:b.z.iso.datetime(),assignedTo:b.z.object({id:(0,c.idSchema)("ship"),name:b.z.string()}).nullable(),status:f.nullable(),reason:b.z.string().nullable(),crewedBy:b.z.object({id:(0,c.idSchema)("ship"),name:b.z.string()}).nullable(),attempt:b.z.int().min(0),startedAt:b.z.iso.datetime().nullable(),givenBack:b.z.array(b.z.object({trierarch:b.z.object({id:(0,c.idSchema)("ship"),name:b.z.string()}),settingsVersion:b.z.int().min(1),reason:b.z.string(),givenBackAt:b.z.iso.datetime()}))}),i=h.extend({settings:d});b.z.object({shipId:(0,c.idSchema)("ship"),trierarchShipId:(0,c.idSchema)("ship")}),b.z.strictObject({}),b.z.object({shipId:(0,c.idSchema)("ship"),status:f,attempt:b.z.int().min(0).optional(),startedAt:b.z.iso.datetime().nullable().optional()}),b.z.strictObject({}),b.z.object({shipId:(0,c.idSchema)("ship")}),b.z.strictObject({}),b.z.array(b.z.object({shipId:(0,c.idSchema)("ship"),settings:d,settingsVersion:b.z.int().min(1),requestedAt:b.z.iso.datetime(),status:f.nullable(),isFinal:b.z.boolean(),ownerShipId:(0,c.idSchema)("ship").nullable(),ownerName:b.z.string().nullable()})),b.z.object({shipId:(0,c.idSchema)("ship"),reason:b.z.string().trim().max(200,g).refine(a=>!/[\r\n]/.test(a),g).nullable()}),b.z.strictObject({}),b.z.object({shipId:(0,c.idSchema)("ship"),settingsVersion:b.z.int().min(1),reason:b.z.string().trim().min(1,g).max(200,g).refine(a=>!/[\r\n]/.test(a),g)}),b.z.strictObject({}),a.s(["CREW_STATUSES",0,e,"crewRequestSchema",0,i,"crewStatusSchema",0,f,"listedCrewRequestSchema",0,h])}];
2
2
 
3
3
  //# sourceMappingURL=packages_common_dist_1_gq_cl._.js.map
@@ -1,3 +1,3 @@
1
1
  module.exports=[43020,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_1qdwv0j._.js"].map(b=>a.l(b))).then(()=>b(52702)))},53831,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_1nov-za._.js"].map(b=>a.l(b))).then(()=>b(80459)))},68359,a=>{a.v(b=>Promise.all(["server/chunks/ssr/packages_console_components_1cwibut._.js"].map(b=>a.l(b))).then(()=>b(44344)))},59777,a=>{a.v(b=>Promise.all(["server/chunks/ssr/packages_console_1bm_b0f._.js","server/chunks/ssr/packages_console_components_atoms_combobox_tsx_1cy612l._.js"].map(b=>a.l(b))).then(()=>b(45029)))},15695,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_0h3dzkf._.js"].map(b=>a.l(b))).then(()=>b(51543)))},66785,a=>{a.v(b=>Promise.all(["server/chunks/ssr/packages_console_0xg819q._.js"].map(b=>a.l(b))).then(()=>b(50916)))},65537,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_181kxvr._.js"].map(b=>a.l(b))).then(()=>b(62921)))}];
2
2
 
3
- //# sourceMappingURL=packages_console_1phsut4._.js.map
3
+ //# sourceMappingURL=packages_console_095mmim._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[71251,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(2955),e=a.i(67042),f=a.i(45098),g=a.i(48136),h=a.i(72309),i=a.i(40392),j=a.i(98600);function k({id:a,label:c,isOptional:d,hint:e,error:g,children:h}){return(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsxs)(f.Label,{htmlFor:a,children:[c,d?(0,b.jsx)("span",{className:"font-normal text-muted-foreground",children:" optional"}):null]}),h,void 0===e?null:(0,b.jsx)("p",{className:"text-meta text-muted-foreground",children:e}),void 0===g?null:(0,b.jsx)(i.InlineError,{variant:"field",title:g})]})}function l({id:a,items:c,value:d,onPick:e,isDisabled:f,testId:h}){return(0,b.jsxs)(g.Select,{items:c,value:d,disabled:f,onValueChange:a=>{"string"==typeof a&&e(a)},children:[(0,b.jsx)(g.SelectTrigger,{id:a,className:"h-(--size-control) w-full","data-testid":h,children:(0,b.jsx)(g.SelectValue,{})}),(0,b.jsx)(g.SelectContent,{children:Object.entries(c).map(([a,c])=>(0,b.jsx)(g.SelectItem,{value:a,children:c},a))})]})}a.s(["CrewSettingsFields",0,function({offers:a,values:f,onChange:g,firstPromptMaxBytes:i,squadrons:m,refusal:n,isDisabled:o=!1,machineLabels:p}){var q;let r={harness:(0,c.useId)(),workspace:(0,c.useId)(),options:(0,c.useId)(),firstPrompt:(0,c.useId)(),squadron:(0,c.useId)()},s=a.find(a=>a.harness===f.harness),t=a=>n?.field===a?n.reason:void 0,u=(0,d.promptBytes)(f.firstPrompt),v=u>i,w=Object.fromEntries([...(s?.repositories??[]).map(a=>[`worktree:${a}`,`${a} \xb7 new worktree`]),...(s?.folders??[]).map(a=>[`folder:${a}`,`${a} \xb7 folder, as it is`])]);return(0,b.jsxs)("div",{className:"flex flex-col gap-4","data-testid":"crew-settings-fields",children:[(0,b.jsx)(k,{id:r.harness,label:"Harness",error:t("harness"),children:(0,b.jsx)(l,{id:r.harness,items:Object.fromEntries(a.map(a=>[a.harness,(0,e.harnessWord)(a.harness)])),value:f.harness,isDisabled:o,testId:"crew-settings-harness",onPick:b=>{g((0,d.withHarness)(f,{harness:b,offers:a}))}})}),(0,b.jsx)(k,{id:r.workspace,label:"Workspace",hint:"A repository gets a new git worktree for this ship; a folder is used as it is, shared by the ships in it.",error:t("workspace"),children:(0,b.jsx)(l,{id:r.workspace,items:w,value:void 0===(q=f.workspace)?"":"worktree"===q.kind?`worktree:${q.repository}`:`folder:${q.name}`,isDisabled:o,testId:"crew-settings-workspace",onPick:a=>{g({...f,workspace:function(a){let[b,...c]=a.split(":"),d=c.join(":");return"worktree"===b?{kind:"worktree",repository:d}:"folder"===b?{kind:"folder",name:d}:void 0}(a)})}})}),void 0===p?null:(0,b.jsx)(j.MachineLabelsField,{shipName:p.shipName,picked:p.chipsOf(f.machineLabels),groups:p.groups,match:p.matchOf(f.machineLabels),max:p.max,isDisabled:o,onAdd:a=>{g({...f,machineLabels:[...f.machineLabels,a]})},onRemove:a=>{g({...f,machineLabels:f.machineLabels.filter(b=>b!==a)})}}),(s?.options??[]).map((a,c)=>(0,b.jsx)(k,{id:`${r.options}-${String(c)}`,label:a.name,error:0===c?t("options"):void 0,children:(0,b.jsx)(l,{id:`${r.options}-${String(c)}`,items:Object.fromEntries(a.values.map(b=>[b,b===a.defaultValue?`${b} (default)`:b])),value:f.options[a.name]??"",isDisabled:o,testId:`crew-settings-option-${a.name}`,onPick:b=>{g({...f,options:{...f.options,[a.name]:b}})}})},a.name)),(0,b.jsx)(k,{id:r.firstPrompt,label:"First prompt",isOptional:!0,hint:(0,b.jsxs)("span",{className:"flex justify-between gap-3",children:[(0,b.jsx)("span",{children:"The session starts with it, on its first start only."}),(0,b.jsxs)("span",{className:"tabular-nums",children:[(0,d.byteSize)(u)," of ",(0,d.byteSize)(i)]})]}),error:v?`A first prompt is at most ${(0,d.byteSize)(i)}.`:t("firstPrompt"),children:(0,b.jsx)(h.Textarea,{id:r.firstPrompt,rows:3,disabled:o,"aria-invalid":!!v||void 0,"data-testid":"crew-settings-first-prompt",value:f.firstPrompt,onChange:a=>{g({...f,firstPrompt:a.target.value})}})}),void 0===m?null:(0,b.jsx)(k,{id:r.squadron,label:"Squadron",isOptional:!0,hint:"The session starts with that squadron’s crew line and template.",error:t("squadron"),children:(0,b.jsx)(l,{id:r.squadron,items:{"":"None",...Object.fromEntries(m.map(a=>[a,a]))},value:f.squadron,isDisabled:o,testId:"crew-settings-squadron",onPick:a=>{g({...f,squadron:a})}})})]})}])},98600,a=>{"use strict";var b=a.i(87924),c=a.i(93817),d=a.i(8311),e=a.i(3512),f=a.i(74215),g=a.i(38246),h=a.i(72131),i=a.i(19721),j=a.i(82611),k=a.i(12068),l=a.i(60275),m=a.i(36501);let n=(0,i.default)(async()=>{},{loadableGenerated:{modules:[59068]},ssr:!1});function o({groups:a,picked:c,isDisabled:d,onAdd:f}){let[i,j]=(0,h.useState)(!1);return(0,b.jsxs)(l.Popover,{open:i,onOpenChange:j,children:[(0,b.jsx)(l.PopoverTrigger,{render:(0,b.jsx)(k.Button,{type:"button",variant:"ghost",size:"xs",icon:(0,b.jsx)(e.Plus,{}),disabled:d,"data-testid":"machine-labels-add"}),children:"Add label"}),(0,b.jsxs)(l.PopoverContent,{align:"start",sideOffset:6,className:"w-80 p-2","data-testid":"machine-labels-popover",children:[(0,b.jsx)("span",{className:"block px-2 pt-1 pb-2 text-body font-medium",children:"Machine label"}),(0,b.jsx)(n,{groups:a,pickedValueIds:c.map(a=>a.valueId),countWord:"machine",onPick:a=>{j(!1),f(a)}}),(0,b.jsxs)("p",{className:"mt-2 flex items-center justify-between gap-2 border-t border-border px-2 pt-2 text-meta text-muted-foreground",children:["Exact matches, all must hold.",(0,b.jsx)(g.default,{href:"/labels",className:"font-medium text-foreground hover:underline",children:"Manage labels"})]})]})]})}a.s(["MachineLabelsField",0,function({shipName:a,picked:e,groups:g,match:i,max:k,isDisabled:l,onAdd:n,onRemove:p,unknown:q=[],onRemoveUnknown:r}){let s=(0,j.noMatchWords)(e.length);return(0,b.jsxs)("div",{className:"flex flex-col gap-1.5","data-testid":"machine-labels",children:[(0,b.jsxs)("span",{className:"text-body font-medium",children:["Machine labels",(0,b.jsx)("span",{className:"font-normal text-muted-foreground",children:" optional"})]}),(0,b.jsxs)("div",{className:"flex min-h-(--size-control-sm) flex-wrap items-center gap-1.5",children:[0===e.length?(0,b.jsx)("span",{className:"text-meta text-muted-foreground",children:"Any machine"}):null,e.map((a,c)=>(0,b.jsxs)(h.Fragment,{children:[0===c?null:(0,b.jsx)("span",{className:"text-meta text-muted-foreground",children:"and"}),(0,b.jsx)(m.LabelChip,{chip:a,testId:"machine-label",...l?{}:{onRemove:()=>{p(a.valueId)}}})]},a.valueId)),q.map(a=>(0,b.jsxs)("span",{"data-testid":"machine-label-unknown",title:`${a}: not in this fleet`,className:"inline-flex h-5.5 items-center gap-1 rounded-sm border border-tone-attention-border bg-tone-attention-bg px-1.5 font-mono text-id text-tone-attention-fg [&_svg]:size-3",children:[(0,b.jsx)(c.CircleAlert,{"aria-hidden":!0}),a,void 0===r||l?null:(0,b.jsx)("button",{type:"button","aria-label":`Remove ${a}`,onClick:()=>{r(a)},className:"-mr-1 ml-0.5 inline-flex size-4 items-center justify-center rounded-xs hover:bg-accent focus-visible:outline-2 focus-visible:outline-ring",children:(0,b.jsx)(f.X,{"aria-hidden":!0})})]},a)),e.length+q.length>=k?null:(0,b.jsx)(o,{groups:g,picked:e,isDisabled:l,onAdd:n})]}),0===q.length?null:(0,b.jsxs)("p",{role:"alert","data-testid":"machine-labels-unknown-note",className:"text-meta text-tone-attention-fg",children:["Not in this fleet: ",q.join(", "),". Forming refuses ",1===q.length?"it":"them",": define ",1===q.length?"it":"them"," on the Labels page, or remove ",1===q.length?"it":"them"," here."]}),0===e.length?null:0===i.matching.length?(0,b.jsxs)("p",{role:"status","data-testid":"machine-labels-match",className:"flex items-start gap-2 rounded-lg border border-tone-waiting-border bg-tone-waiting-bg px-3 py-2 text-meta text-tone-waiting-fg [&_svg]:mt-0.5 [&_svg]:size-(--size-icon-sm) [&_svg]:shrink-0",children:[(0,b.jsx)(d.Clock,{"aria-hidden":!0}),(0,b.jsxs)("span",{children:["No machine matches ",s.these,". You can still request: it waits on Needs crew until a machine ",s.carries,"."]})]}):(0,b.jsxs)("p",{className:"text-meta","data-testid":"machine-labels-match",children:["Matches ",i.matching.length," of ",i.total," ",1===i.total?"machine":"machines",": ",i.matching.join(", "),"."]}),(0,b.jsxs)("p",{className:"text-meta text-muted-foreground",children:["The plugin places ",a," only on a machine that carries every label here. Leave it empty for any machine."]})]})}])},46502,a=>{"use strict";var b=a.i(87924),c=a.i(73370),d=a.i(8311),e=a.i(58983),f=a.i(48819),g=a.i(23636),h=a.i(72131),i=a.i(1851),j=a.i(2955),k=a.i(72872),l=a.i(12068),m=a.i(18441),n=a.i(2374),o=a.i(71251),p=a.i(40392);let q={request:{title:a=>`Request a crew for ${a}`,description:"The trierarch plugin picks a trierarch, which starts the session and keeps it crewed.",action:"Request crew",busy:"Requesting"},edit:{title:a=>`Edit the crew request for ${a}`,description:"Saving writes a new version of the settings: its trierarch stops the session and starts it again with them, in the same workspace.",action:"Save and restart",busy:"Saving"}},r={waiting:"border-tone-waiting-border bg-tone-waiting-bg text-tone-waiting-fg",attention:"border-tone-attention-border bg-tone-attention-bg text-tone-attention-fg",note:"border-border bg-muted text-muted-foreground"};function s({tone:a,icon:c,children:d}){return(0,b.jsxs)("div",{role:"attention"===a?"alert":"status","data-testid":"request-crew-banner",className:`flex items-start gap-2 rounded-lg border px-3.5 py-2.5 text-meta [&_svg]:mt-0.5 [&_svg]:size-(--size-icon-sm) [&_svg]:shrink-0 ${r[a]}`,children:[c,(0,b.jsx)("span",{children:d})]})}function t(a){let{firstPromptMaxBytes:e}=(0,i.useConsoleConstants)(),{shipName:f,mode:n,offers:r,heldSettings:t,squadrons:u,machineLabels:v,check:w,refusedAt:x,error:y,isPending:z,onSettingsChange:A,onSubmit:B}=a,C=q[n],[D,E]=(0,h.useState)(()=>"edit"===n?(0,j.valuesOf)(t,r):(0,j.defaultValues)(r)),F=(0,j.settingsOf)(D),G=w?.kind==="refused"?w:void 0,H=(0,j.promptBytes)(D.firstPrompt)>e,I=D.machineLabels.length>0&&v?.matchOf(D.machineLabels).matching.length===0,J=void 0!==F&&void 0===G&&!H&&!z;return(0,b.jsxs)("form",{noValidate:!0,className:"contents",onSubmit:a=>{a.preventDefault(),J&&B(F)},children:[(0,b.jsxs)(m.DialogHeader,{children:[(0,b.jsx)(m.DialogTitle,{children:C.title(f)}),(0,b.jsx)(m.DialogDescription,{children:C.description})]}),0===r.length?(0,b.jsx)(s,{tone:"waiting",icon:(0,b.jsx)(g.ShipWheel,{"aria-hidden":!0}),children:"No machine answers with what it offers yet. Join a machine under Trierarchs, or wait for its trierarch to report."}):void 0!==G&&void 0!==x?(0,b.jsxs)(s,{tone:"attention",icon:(0,b.jsx)(c.CircleX,{"aria-hidden":!0}),children:["The trierarch plugin refused: ",G.field,". Nothing was requested. Change the field below and try again."]}):w?.kind!=="noRoom"||I?null:(0,b.jsx)(s,{tone:"waiting",icon:(0,b.jsx)(d.Clock,{"aria-hidden":!0}),children:"No trierarch has a free slot right now. You can still request: the request waits on Needs crew and the plugin assigns a trierarch when a slot frees up."}),0===r.length?null:(0,b.jsx)(o.CrewSettingsFields,{offers:r,values:D,firstPromptMaxBytes:e,onChange:a=>{E(a),A((0,j.settingsOf)(a))},squadrons:u,refusal:G,isDisabled:z,...void 0===v?{}:{machineLabels:{...v,shipName:f}}}),void 0===y?null:(0,b.jsx)(p.InlineError,{title:"edit"===n?"Couldn’t save the settings":"Couldn’t request crew",description:`${y} Nothing changed.`}),(0,b.jsxs)(m.DialogFooter,{className:"items-center",children:[(0,b.jsx)("span",{className:"mr-auto text-meta text-muted-foreground","data-testid":"request-crew-note",children:void 0!==G&&void 0!==x?`Refused at ${(0,k.secondsTime)(x)}. Nothing was requested.`:I?"The request will wait for a machine with these labels.":w?.kind==="noRoom"?"The request will wait for room.":null}),(0,b.jsx)(m.DialogClose,{render:(0,b.jsx)(l.Button,{type:"button",disabled:z}),children:"Cancel"}),(0,b.jsx)(l.Button,{type:"submit",variant:"primary",icon:(0,b.jsx)(g.ShipWheel,{}),isLoading:z,disabled:!J,"data-testid":"request-crew-submit",children:z?C.busy:C.action})]})]})}a.s(["RequestCrewDialog",0,function(a){let{shipName:d,mode:h,state:i,isOpen:j,onOpenChange:k,isPending:o,onRetry:p}=a,r=q[h];return(0,b.jsx)(m.Dialog,{open:j,onOpenChange:a=>{o||k(a)},children:(0,b.jsx)(m.DialogContent,{size:"md","data-testid":"request-crew-dialog",className:n.dialogSurface.phoneFullScreen,children:"ready"===i?(0,b.jsx)(t,{...a}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(m.DialogHeader,{children:[(0,b.jsx)(m.DialogTitle,{children:r.title(d)}),(0,b.jsx)(m.DialogDescription,{children:r.description})]}),"loading"===i?(0,b.jsx)(s,{tone:"note",icon:(0,b.jsx)(e.LoaderCircle,{"aria-hidden":!0,className:"motion-safe:animate-spin"}),children:"Loading the trierarch plugin’s options."}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(s,{tone:"attention",icon:(0,b.jsx)(c.CircleX,{"aria-hidden":!0}),children:"The trierarch plugin is not answering. Its options can’t load, so a request with settings can’t be made now. Nothing changed."}),(0,b.jsx)("div",{children:(0,b.jsx)(l.Button,{size:"sm",icon:(0,b.jsx)(f.RotateCw,{}),onClick:p,"data-testid":"request-crew-retry",children:"Try again"})}),"request"===h?(0,b.jsxs)("p",{className:"text-meta text-muted-foreground",children:["You can still crew ",d," by hand: close this and use Get starting prompt."]}):null]}),(0,b.jsxs)(m.DialogFooter,{className:"items-center",children:[(0,b.jsx)("span",{className:"mr-auto text-meta text-muted-foreground",children:"loading"===i?"Waiting for the trierarch plugin.":`${r.action} is off until the plugin answers.`}),(0,b.jsx)(m.DialogClose,{render:(0,b.jsx)(l.Button,{type:"button"}),children:"Cancel"}),(0,b.jsx)(l.Button,{type:"button",variant:"primary",icon:(0,b.jsx)(g.ShipWheel,{}),disabled:!0,children:r.action})]})]})})})}])}];
1
+ module.exports=[71251,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(2955),e=a.i(67042),f=a.i(45098),g=a.i(48136),h=a.i(72309),i=a.i(40392),j=a.i(98600);function k({id:a,label:c,isOptional:d,hint:e,error:g,children:h}){return(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsxs)(f.Label,{htmlFor:a,children:[c,d?(0,b.jsx)("span",{className:"font-normal text-muted-foreground",children:" optional"}):null]}),h,void 0===e?null:(0,b.jsx)("p",{className:"text-meta text-muted-foreground",children:e}),void 0===g?null:(0,b.jsx)(i.InlineError,{variant:"field",title:g})]})}function l({id:a,items:c,value:d,onPick:e,isDisabled:f,testId:h}){return(0,b.jsxs)(g.Select,{items:c,value:d,disabled:f,onValueChange:a=>{"string"==typeof a&&e(a)},children:[(0,b.jsx)(g.SelectTrigger,{id:a,className:"h-(--size-control) w-full","data-testid":h,children:(0,b.jsx)(g.SelectValue,{})}),(0,b.jsx)(g.SelectContent,{children:Object.entries(c).map(([a,c])=>(0,b.jsx)(g.SelectItem,{value:a,children:c},a))})]})}a.s(["CrewSettingsFields",0,function({offers:a,values:f,onChange:g,firstPromptMaxBytes:i,squadrons:m,refusal:n,isDisabled:o=!1,machineLabels:p}){var q;let r={harness:(0,c.useId)(),workspace:(0,c.useId)(),options:(0,c.useId)(),firstPrompt:(0,c.useId)(),squadron:(0,c.useId)()},s=a.find(a=>a.harness===f.harness),t=a=>n?.field===a?n.reason:void 0,u=(0,d.promptBytes)(f.firstPrompt),v=u>i,w=Object.fromEntries([...(s?.repositories??[]).map(a=>[`worktree:${a}`,`${a} \xb7 new worktree`]),...(s?.folders??[]).map(a=>[`folder:${a}`,`${a} \xb7 folder, as it is`])]);return(0,b.jsxs)("div",{className:"flex flex-col gap-4","data-testid":"crew-settings-fields",children:[(0,b.jsx)(k,{id:r.harness,label:"Harness",error:t("harness"),children:(0,b.jsx)(l,{id:r.harness,items:Object.fromEntries(a.map(a=>[a.harness,(0,e.harnessWord)(a.harness)])),value:f.harness,isDisabled:o,testId:"crew-settings-harness",onPick:b=>{g((0,d.withHarness)(f,{harness:b,offers:a}))}})}),(0,b.jsx)(k,{id:r.workspace,label:"Workspace",hint:"A repository gets a new git worktree for this ship; a folder is used as it is, shared by the ships in it.",error:t("workspace"),children:(0,b.jsx)(l,{id:r.workspace,items:w,value:void 0===(q=f.workspace)?"":"worktree"===q.kind?`worktree:${q.repository}`:`folder:${q.name}`,isDisabled:o,testId:"crew-settings-workspace",onPick:a=>{g({...f,workspace:function(a){let[b,...c]=a.split(":"),d=c.join(":");return"worktree"===b?{kind:"worktree",repository:d}:"folder"===b?{kind:"folder",name:d}:void 0}(a)})}})}),void 0===p?null:(0,b.jsx)(j.MachineLabelsField,{shipName:p.shipName,picked:p.chipsOf(f.machineLabels),groups:p.groups,match:p.matchOf(f.machineLabels),max:p.max,isDisabled:o,onAdd:a=>{g({...f,machineLabels:[...f.machineLabels,a]})},onRemove:a=>{g({...f,machineLabels:f.machineLabels.filter(b=>b!==a)})}}),(s?.options??[]).map((a,c)=>(0,b.jsx)(k,{id:`${r.options}-${String(c)}`,label:a.name,error:0===c?t("options"):void 0,children:(0,b.jsx)(l,{id:`${r.options}-${String(c)}`,items:Object.fromEntries(a.values.map(b=>[b,b===a.defaultValue?`${b} (default)`:b])),value:f.options[a.name]??"",isDisabled:o,testId:`crew-settings-option-${a.name}`,onPick:b=>{g({...f,options:{...f.options,[a.name]:b}})}})},a.name)),(0,b.jsx)(k,{id:r.firstPrompt,label:"First prompt",isOptional:!0,hint:(0,b.jsxs)("span",{className:"flex justify-between gap-3",children:[(0,b.jsx)("span",{children:"The session starts with it, on its first start only."}),(0,b.jsxs)("span",{className:"tabular-nums",children:[(0,d.byteSize)(u)," of ",(0,d.byteSize)(i)]})]}),error:v?`A first prompt is at most ${(0,d.byteSize)(i)}.`:t("firstPrompt"),children:(0,b.jsx)(h.Textarea,{id:r.firstPrompt,rows:3,disabled:o,"aria-invalid":!!v||void 0,"data-testid":"crew-settings-first-prompt",value:f.firstPrompt,onChange:a=>{g({...f,firstPrompt:a.target.value})}})}),void 0===m?null:(0,b.jsx)(k,{id:r.squadron,label:"Squadron",isOptional:!0,hint:"The session starts with that squadron’s crew line and template.",error:t("squadron"),children:(0,b.jsx)(l,{id:r.squadron,items:{"":"None",...Object.fromEntries(m.map(a=>[a,a]))},value:f.squadron,isDisabled:o,testId:"crew-settings-squadron",onPick:a=>{g({...f,squadron:a})}})})]})}])},98600,a=>{"use strict";var b=a.i(87924),c=a.i(93817),d=a.i(8311),e=a.i(3512),f=a.i(74215),g=a.i(38246),h=a.i(72131),i=a.i(19721),j=a.i(82611),k=a.i(12068),l=a.i(60275),m=a.i(36501);let n=(0,i.default)(async()=>{},{loadableGenerated:{modules:[59068]},ssr:!1});function o({groups:a,picked:c,isDisabled:d,onAdd:f}){let[i,j]=(0,h.useState)(!1);return(0,b.jsxs)(l.Popover,{open:i,onOpenChange:j,children:[(0,b.jsx)(l.PopoverTrigger,{render:(0,b.jsx)(k.Button,{type:"button",variant:"ghost",size:"xs",icon:(0,b.jsx)(e.Plus,{}),disabled:d,"data-testid":"machine-labels-add"}),children:"Add label"}),(0,b.jsxs)(l.PopoverContent,{align:"start",sideOffset:6,className:"w-80 p-2","data-testid":"machine-labels-popover",children:[(0,b.jsx)("span",{className:"block px-2 pt-1 pb-2 text-body font-medium",children:"Machine label"}),(0,b.jsx)(n,{groups:a,pickedValueIds:c.map(a=>a.valueId),countWord:"machine",onPick:a=>{j(!1),f(a)}}),(0,b.jsxs)("p",{className:"mt-2 flex items-center justify-between gap-2 border-t border-border px-2 pt-2 text-meta text-muted-foreground",children:["Exact matches, all must hold.",(0,b.jsx)(g.default,{href:"/labels",className:"font-medium text-foreground hover:underline",children:"Manage labels"})]})]})]})}a.s(["MachineLabelsField",0,function({shipName:a,picked:e,groups:g,match:i,max:k,isDisabled:l,onAdd:n,onRemove:p,unknown:q=[],onRemoveUnknown:r}){let s=(0,j.noMatchWords)(e.length);return(0,b.jsxs)("div",{className:"flex flex-col gap-1.5","data-testid":"machine-labels",children:[(0,b.jsxs)("span",{className:"text-body font-medium",children:["Machine labels",(0,b.jsx)("span",{className:"font-normal text-muted-foreground",children:" optional"})]}),(0,b.jsxs)("div",{className:"flex min-h-(--size-control-sm) flex-wrap items-center gap-1.5",children:[0===e.length?(0,b.jsx)("span",{className:"text-meta text-muted-foreground",children:"Any machine"}):null,e.map((a,c)=>(0,b.jsxs)(h.Fragment,{children:[0===c?null:(0,b.jsx)("span",{className:"text-meta text-muted-foreground",children:"and"}),(0,b.jsx)(m.LabelChip,{chip:a,testId:"machine-label",...l?{}:{onRemove:()=>{p(a.valueId)}}})]},a.valueId)),q.map(a=>(0,b.jsxs)("span",{"data-testid":"machine-label-unknown",title:`${a}: not in this fleet`,className:"inline-flex h-5.5 items-center gap-1 rounded-sm border border-tone-attention-border bg-tone-attention-bg px-1.5 font-mono text-id text-tone-attention-fg [&_svg]:size-3",children:[(0,b.jsx)(c.CircleAlert,{"aria-hidden":!0}),a,void 0===r||l?null:(0,b.jsx)("button",{type:"button","aria-label":`Remove ${a}`,onClick:()=>{r(a)},className:"-mr-1 ml-0.5 inline-flex size-4 items-center justify-center rounded-xs hover:bg-accent focus-visible:outline-2 focus-visible:outline-ring",children:(0,b.jsx)(f.X,{"aria-hidden":!0})})]},a)),e.length+q.length>=k?null:(0,b.jsx)(o,{groups:g,picked:e,isDisabled:l,onAdd:n})]}),0===q.length?null:(0,b.jsxs)("p",{role:"alert","data-testid":"machine-labels-unknown-note",className:"text-meta text-tone-attention-fg",children:["Not in this fleet: ",q.join(", "),". Forming refuses ",1===q.length?"it":"them",": define ",1===q.length?"it":"them"," on the Labels page, or remove ",1===q.length?"it":"them"," here."]}),0===e.length?null:0===i.matching.length?(0,b.jsxs)("p",{role:"status","data-testid":"machine-labels-match",className:"flex items-start gap-2 rounded-lg border border-tone-waiting-border bg-tone-waiting-bg px-3 py-2 text-meta text-tone-waiting-fg [&_svg]:mt-0.5 [&_svg]:size-(--size-icon-sm) [&_svg]:shrink-0",children:[(0,b.jsx)(d.Clock,{"aria-hidden":!0}),(0,b.jsxs)("span",{children:["No machine matches ",s.these,". You can still request: it waits on Needs crew until a machine ",s.carries,"."]})]}):(0,b.jsxs)("p",{className:"text-meta","data-testid":"machine-labels-match",children:["Matches ",i.matching.length," of ",i.total," ",1===i.total?"machine":"machines",": ",i.matching.join(", "),"."]}),(0,b.jsxs)("p",{className:"text-meta text-muted-foreground",children:["The plugin places ",a," only on a machine that carries every label here. Leave it empty for any machine."]})]})}])},14481,a=>{"use strict";var b=a.i(87924),c=a.i(73370),d=a.i(8311),e=a.i(58983),f=a.i(48819),g=a.i(23636),h=a.i(72131),i=a.i(1851),j=a.i(2955),k=a.i(72872),l=a.i(12068),m=a.i(18441),n=a.i(2374),o=a.i(71251),p=a.i(40392);let q={request:{title:a=>`Request a crew for ${a}`,description:"The trierarch plugin picks a trierarch, which starts the session and keeps it crewed.",action:"Request crew",busy:"Requesting"},edit:{title:a=>`Edit the crew request for ${a}`,description:"Saving writes a new version of the settings: its trierarch stops the session and starts it again with them, in the same workspace.",action:"Save and restart",busy:"Saving"}},r={waiting:"border-tone-waiting-border bg-tone-waiting-bg text-tone-waiting-fg",attention:"border-tone-attention-border bg-tone-attention-bg text-tone-attention-fg",note:"border-border bg-muted text-muted-foreground"};function s({tone:a,icon:c,children:d}){return(0,b.jsxs)("div",{role:"attention"===a?"alert":"status","data-testid":"request-crew-banner",className:`flex items-start gap-2 rounded-lg border px-3.5 py-2.5 text-meta [&_svg]:mt-0.5 [&_svg]:size-(--size-icon-sm) [&_svg]:shrink-0 ${r[a]}`,children:[c,(0,b.jsx)("span",{children:d})]})}function t(a){let{firstPromptMaxBytes:e}=(0,i.useConsoleConstants)(),{shipName:f,mode:n,offers:r,heldSettings:t,squadrons:u,machineLabels:v,check:w,refusedAt:x,error:y,isPending:z,onSettingsChange:A,onSubmit:B}=a,C=q[n],[D,E]=(0,h.useState)(()=>"edit"===n?(0,j.valuesOf)(t,r):(0,j.defaultValues)(r)),F=(0,j.settingsOf)(D),G=w?.kind==="refused"?w:void 0,H=(0,j.promptBytes)(D.firstPrompt)>e,I=D.machineLabels.length>0&&v?.matchOf(D.machineLabels).matching.length===0,J=void 0!==F&&void 0===G&&!H&&!z;return(0,b.jsxs)("form",{noValidate:!0,className:"contents",onSubmit:a=>{a.preventDefault(),J&&B(F)},children:[(0,b.jsxs)(m.DialogHeader,{children:[(0,b.jsx)(m.DialogTitle,{children:C.title(f)}),(0,b.jsx)(m.DialogDescription,{children:C.description})]}),0===r.length?(0,b.jsx)(s,{tone:"waiting",icon:(0,b.jsx)(g.ShipWheel,{"aria-hidden":!0}),children:"No machine answers with what it offers yet. Join a machine under Trierarchs, or wait for its trierarch to report."}):void 0!==G&&void 0!==x?(0,b.jsxs)(s,{tone:"attention",icon:(0,b.jsx)(c.CircleX,{"aria-hidden":!0}),children:["The trierarch plugin refused: ",G.field,". Nothing was requested. Change the field below and try again."]}):w?.kind!=="noRoom"||I?null:(0,b.jsx)(s,{tone:"waiting",icon:(0,b.jsx)(d.Clock,{"aria-hidden":!0}),children:"No trierarch has a free slot right now. You can still request: the request waits on Needs crew and the plugin assigns a trierarch when a slot frees up."}),0===r.length?null:(0,b.jsx)(o.CrewSettingsFields,{offers:r,values:D,firstPromptMaxBytes:e,onChange:a=>{E(a),A((0,j.settingsOf)(a))},squadrons:u,refusal:G,isDisabled:z,...void 0===v?{}:{machineLabels:{...v,shipName:f}}}),void 0===y?null:(0,b.jsx)(p.InlineError,{title:"edit"===n?"Couldn’t save the settings":"Couldn’t request crew",description:`${y} Nothing changed.`}),(0,b.jsxs)(m.DialogFooter,{className:"items-center",children:[(0,b.jsx)("span",{className:"mr-auto text-meta text-muted-foreground","data-testid":"request-crew-note",children:void 0!==G&&void 0!==x?`Refused at ${(0,k.secondsTime)(x)}. Nothing was requested.`:I?"The request will wait for a machine with these labels.":w?.kind==="noRoom"?"The request will wait for room.":null}),(0,b.jsx)(m.DialogClose,{render:(0,b.jsx)(l.Button,{type:"button",disabled:z}),children:"Cancel"}),(0,b.jsx)(l.Button,{type:"submit",variant:"primary",icon:(0,b.jsx)(g.ShipWheel,{}),isLoading:z,disabled:!J,"data-testid":"request-crew-submit",children:z?C.busy:C.action})]})]})}a.s(["RequestCrewDialog",0,function(a){let{shipName:d,mode:h,state:i,isOpen:j,onOpenChange:k,isPending:o,onRetry:p}=a,r=q[h];return(0,b.jsx)(m.Dialog,{open:j,onOpenChange:a=>{o||k(a)},children:(0,b.jsx)(m.DialogContent,{size:"md","data-testid":"request-crew-dialog",className:n.dialogSurface.phoneFullScreen,children:"ready"===i?(0,b.jsx)(t,{...a}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(m.DialogHeader,{children:[(0,b.jsx)(m.DialogTitle,{children:r.title(d)}),(0,b.jsx)(m.DialogDescription,{children:r.description})]}),"loading"===i?(0,b.jsx)(s,{tone:"note",icon:(0,b.jsx)(e.LoaderCircle,{"aria-hidden":!0,className:"motion-safe:animate-spin"}),children:"Loading the trierarch plugin’s options."}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(s,{tone:"attention",icon:(0,b.jsx)(c.CircleX,{"aria-hidden":!0}),children:"The trierarch plugin is not answering. Its options can’t load, so a request with settings can’t be made now. Nothing changed."}),(0,b.jsx)("div",{children:(0,b.jsx)(l.Button,{size:"sm",icon:(0,b.jsx)(f.RotateCw,{}),onClick:p,"data-testid":"request-crew-retry",children:"Try again"})}),"request"===h?(0,b.jsxs)("p",{className:"text-meta text-muted-foreground",children:["You can still crew ",d," by hand: close this and use Get starting prompt."]}):null]}),(0,b.jsxs)(m.DialogFooter,{className:"items-center",children:[(0,b.jsx)("span",{className:"mr-auto text-meta text-muted-foreground",children:"loading"===i?"Waiting for the trierarch plugin.":`${r.action} is off until the plugin answers.`}),(0,b.jsx)(m.DialogClose,{render:(0,b.jsx)(l.Button,{type:"button"}),children:"Cancel"}),(0,b.jsx)(l.Button,{type:"button",variant:"primary",icon:(0,b.jsx)(g.ShipWheel,{}),disabled:!0,children:r.action})]})]})})})}])}];
2
2
 
3
- //# sourceMappingURL=packages_console_0-cynql._.js.map
3
+ //# sourceMappingURL=packages_console_11eh-8v._.js.map
@@ -1,3 +1,3 @@
1
1
  module.exports=[82886,a=>{"use strict";var b=a.i(87924),c=a.i(73224),d=a.i(86002),e=a.i(13931),f=a.i(72131),g=a.i(34301),h=a.i(65563),i=a.i(6071),j=a.i(90146),k=a.i(99929),l=a.i(12068);let m=(0,g.lazyDialog)(()=>a.A(94191).then(a=>a.CrewReleaseDialog),a=>a.isOpen);function n({ship:a}){let c=(0,h.useAccess)(),d=(0,j.useRemoveCrewRequest)(),[g,o]=(0,f.useState)(!1),p=(0,k.useShip)(g?a.id:void 0),q=(0,i.crewRequestStage)(a);return c.canManage&&"assigned"===q.kind&&"crashed"===q.status?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(l.Button,{size:"xs",icon:(0,b.jsx)(e.Power,{}),"data-testid":"needs-crew-release",onClick:()=>{d.reset(),o(!0)},children:"Release…"}),(0,b.jsx)(m,{shipName:a.name,stage:q,inFlightCount:p.data?.inFlightDeliveries??0,isOpen:g&&void 0!==p.data,onOpenChange:o,isPending:d.isPending,error:null===d.error?void 0:`${d.error.message} Nothing changed.`,onConfirm:()=>{d.mutate({shipId:a.id},{onSuccess:()=>{o(!1)}})}})]}):null}var o=a.i(53805),p=a.i(71027),q=a.i(62140),r=a.i(23636),s=a.i(38246),t=a.i(60271),u=a.i(72872),v=a.i(76166),w=a.i(24173),x=a.i(40392),y=a.i(50808),z=a.i(23063);function A({at:a,now:c}){let d=new Date(a);return(0,b.jsx)("time",{dateTime:a,title:(0,u.fullDateTime)(d),className:"tabular-nums",children:c.getTime()-d.getTime()<864e5?`Today, ${(0,u.clockTime)(d)}`:(0,u.shortDateTime)(d)})}function B({ship:a,now:c}){let d=(0,t.handCrewOf)(a);switch(d.kind){case"no-prompt":return(0,b.jsx)("span",{className:"text-muted-foreground",children:"No starting prompt issued"});case"prompt-unclaimed":return(0,b.jsxs)("span",{className:"flex flex-col",children:[(0,b.jsxs)("span",{children:["Prompt issued ",(0,b.jsx)(A,{at:d.issuedAt,now:c})]}),(0,b.jsx)("span",{className:"text-muted-foreground",children:"No session has taken it yet"})]});case"crew-ended":return(0,b.jsxs)("span",{className:"flex flex-col",children:[(0,b.jsx)("span",{children:"Was crewed by hand"}),null===d.endedAt?null:(0,b.jsxs)("span",{className:"text-muted-foreground",children:["Lease ended ",(0,b.jsx)(A,{at:d.endedAt,now:c})]})]})}}function C({ship:a}){let c=(0,i.crewRequestStage)(a);return"assigned"===c.kind?(0,b.jsxs)("span",{className:"flex flex-wrap items-center gap-x-2 gap-y-1",children:[(0,b.jsx)(z.StatusBadge,{status:c.status}),(0,b.jsxs)("span",{className:"inline-flex items-center gap-1",children:["on",(0,b.jsxs)(s.default,{href:`/trierarchs/${c.trierarch.id}`,className:"inline-flex items-center gap-1 font-medium underline decoration-input underline-offset-3 [&_svg]:size-(--size-icon-sm) [&_svg]:text-muted-foreground",children:[(0,b.jsx)(r.ShipWheel,{"aria-hidden":!0}),c.trierarch.name]})]})]}):(0,b.jsxs)("span",{className:"flex flex-wrap items-center gap-x-2 gap-y-1",children:[(0,b.jsx)(z.StatusBadge,{status:"needsCrew"}),(0,b.jsx)("span",{className:"text-muted-foreground",children:"needsCrew"===c.kind&&null!==c.reason?c.reason:"Not assigned yet"})]})}let D="grid items-center gap-x-4 gap-y-1.5 px-4 py-3 max-sm:grid-cols-1 max-sm:px-3.5 sm:grid-cols-[minmax(0,1fr)_minmax(0,1.6fr)_minmax(0,1fr)_minmax(0,11rem)]";function E({ships:a,hasTrierarchs:c,error:d,onRetry:e,actionOf:f,now:g}){return void 0!==d?(0,b.jsx)(x.InlineError,{variant:"page",title:"Couldn’t read the fleet",description:"Nothing changed.",detail:d,onRetry:e}):void 0===a?(0,b.jsx)(y.LoadingSkeleton,{variant:"table",rows:3,label:"Loading Needs crew"}):0===a.length?(0,b.jsx)(w.EmptyState,{icon:(0,b.jsx)(q.ListChecks,{"aria-hidden":!0}),title:"Nothing needs crew",description:c?"Every crew request is running. A request shows here while it waits for a trierarch, is crewing, restarting or crashed.":"No ship with a crew request awaits crew. Request a crew on a ship’s page to put it here."}):(0,b.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,b.jsxs)("div",{className:"overflow-hidden rounded-lg border border-border bg-card","data-testid":"needs-crew-list",children:[(0,b.jsxs)("div",{className:`${D} border-b border-border bg-muted py-2.5 text-caption font-medium text-muted-foreground max-sm:hidden`,"aria-hidden":!0,children:[(0,b.jsx)("span",{children:"Ship"}),(0,b.jsx)("span",{children:c?"Status":"Crew"}),(0,b.jsx)("span",{children:"Requested"}),(0,b.jsx)("span",{className:"sr-only",children:"Next step"})]}),(0,b.jsx)("ul",{className:"divide-y divide-border",children:a.map(a=>(0,b.jsxs)("li",{className:`${D} text-body`,"data-testid":"needs-crew-row",children:[(0,b.jsxs)("span",{className:"flex min-w-0 items-center gap-2",children:[(0,b.jsx)(s.default,{href:`/ships/${a.id}`,className:"truncate font-medium hover:underline","data-testid":"needs-crew-ship",children:a.name}),(0,b.jsx)(v.Badge,{variant:"type",children:a.type})]}),(0,b.jsx)("span",{className:"min-w-0 text-meta",children:c?(0,b.jsx)(C,{ship:a}):(0,b.jsx)(B,{ship:a,now:g})}),(0,b.jsx)("span",{className:"flex flex-col text-meta",children:null===a.crewRequest?null:(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(A,{at:a.crewRequest.requestedAt,now:g}),g.getTime()-new Date(a.crewRequest.requestedAt).getTime()<864e5?(0,b.jsx)("span",{className:"text-muted-foreground",children:(0,u.relativeTime)(new Date(a.crewRequest.requestedAt),g)}):null]})}),(0,b.jsx)("span",{className:"flex justify-end max-sm:justify-start",children:f?.(a)})]},a.id))})]}),(0,b.jsx)("p",{className:"text-meta text-muted-foreground",children:c?"Running requests are not listed here; the fleet overview shows them. A request stays until you release the ship.":"A request stays until you remove it or release the ship. With the trierarch plugin, trierarchs crew these for you."})]})}var F=a.i(91003),G=a.i(38023),H=a.i(67336),I=a.i(10023),J=a.i(68450),K=a.i(34159),L=a.i(10572);a.s(["default",0,function(){let a=(0,J.useNow)(),e=(0,G.useConsoleFrame)(),f=(0,I.useNeedsAttention)(),g=(0,H.useLiveFleet)(),h=(0,j.useFleetSnapshot)(),i=(0,K.usePluginNav)();(0,L.useSignInWhenSessionEnds)([f.error,g.error,h.error]);let{hasTrierarchs:k}=i;return(0,b.jsx)(F.ListPage,{...e,title:"Needs crew",description:k?"Ships with a crew request that are not running. Trierarchs crew them; you step in when one crashes or waits for room.":"Ships you asked to keep crewed that have no crew. Crew each one by hand; crewing it fulfils the request.",live:g.live,toolbar:(0,b.jsx)(c.FleetSegments,{active:"needs-crew",needsCrewCount:i.needsCrewCount}),children:(0,b.jsx)(E,{ships:void 0===h.data?void 0:(0,t.needsCrew)(h.data,{hasTrierarchs:k}),hasTrierarchs:k,error:h.isError?h.error.message:void 0,onRetry:()=>{h.refetch()},actionOf:a=>k?(0,b.jsx)(n,{ship:a}):(0,b.jsx)(o.ShipActions,{ship:a,layout:"next",compose:d.ComposeMessage,crewLineFlow:p.NewCrewLineFlow}),now:a})})}],82886)},73224,a=>{"use strict";var b=a.i(87924),c=a.i(38246),d=a.i(80487);a.s(["FleetSegments",0,function({active:a,needsCrewCount:e}){let f=a=>(0,d.classNames)("flex h-(--size-control-touch) grow items-center justify-center gap-1.5 rounded-md text-body-touch font-medium",a?"bg-card text-foreground shadow-sm":"text-muted-foreground");return(0,b.jsxs)("nav",{"aria-label":"Fleet views",className:"flex gap-0.5 rounded-lg border border-border bg-muted p-0.5 sm:hidden","data-testid":"fleet-segments",children:[(0,b.jsx)(c.default,{href:"/","aria-current":"ships"===a?"page":void 0,className:f("ships"===a),"data-testid":"fleet-segment-ships",children:"Ships"}),(0,b.jsxs)(c.default,{href:"/needs-crew","aria-current":"needs-crew"===a?"page":void 0,className:f("needs-crew"===a),"data-testid":"fleet-segment-needs-crew",children:["Needs crew",void 0===e||0===e?null:(0,b.jsx)("span",{className:"text-micro tabular-nums",children:e})]})]})}])},43020,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_00in26l._.js"].map(b=>a.l(b))).then(()=>b(52702)))},94191,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_0_b0_q2._.js"].map(b=>a.l(b))).then(()=>b(58864)))},91003,a=>{"use strict";var b=a.i(87924),c=a.i(17256),d=a.i(12068),e=a.i(82247),f=a.i(63089);a.s(["ListPage",0,function({title:a,description:g,titleMeta:h,primaryAction:i,toolbar:j,live:k,onCompose:l,onSearch:m,account:n,banner:o,phoneTopBar:p,children:q}){return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(e.Header,{breadcrumb:a,live:k,onCompose:l,onSearch:m}),o,p??(0,b.jsx)(f.TopBar,{title:a,live:k,account:n,onSearch:m,actions:l?(0,b.jsx)(d.Button,{variant:"ghost",size:"touch",isIconOnly:!0,"aria-label":"Compose","data-testid":"top-bar-compose",onClick:l,children:(0,b.jsx)(c.SquarePen,{"aria-hidden":!0})}):void 0}),(0,b.jsxs)("main",{className:"flex grow flex-col gap-5 px-8 py-6 max-sm:gap-3.5 max-sm:px-4 max-sm:pt-3.5 max-sm:pb-[calc(var(--size-tabbar)+var(--spacing)*4)]",children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-start justify-between gap-4 max-sm:gap-3",children:[(0,b.jsxs)("div",{className:"flex min-w-0 flex-col gap-1",children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-x-2.5 gap-y-1",children:[(0,b.jsx)("h1",{className:"text-title font-semibold tracking-tight text-foreground max-sm:hidden",children:a}),h]}),g?(0,b.jsx)("p",{className:"text-meta text-muted-foreground max-sm:text-body-touch",children:g}):null]}),i?(0,b.jsx)("div",{className:"shrink-0 max-sm:w-full max-sm:[&>*]:w-full",children:i}):null]}),j,q]})]})}])},53831,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_1qde2ge._.js","server/chunks/ssr/packages_console_components_atoms_input_tsx_0ux0uln._.js"].map(b=>a.l(b))).then(()=>b(80459)))},68359,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_0wy-ep_._.js"].map(b=>a.l(b))).then(()=>b(44344)))},15695,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_0h3dzkf._.js"].map(b=>a.l(b))).then(()=>b(51543)))},66785,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_02ozs01._.js","server/chunks/ssr/packages_console_components_atoms_input_tsx_0ux0uln._.js"].map(b=>a.l(b))).then(()=>b(50916)))},65537,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_0nmqout._.js","server/chunks/ssr/packages_console_components_atoms_input_tsx_0ux0uln._.js"].map(b=>a.l(b))).then(()=>b(62921)))}];
2
2
 
3
- //# sourceMappingURL=packages_console_0hcloef._.js.map
3
+ //# sourceMappingURL=packages_console_13ry5_2._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[18441,a=>{"use strict";var b=a.i(87924),c=a.i(94203),d=a.i(80487),e=a.i(2374);a.s(["Dialog",0,function(a){return(0,b.jsx)(c.Dialog.Root,{"data-slot":"dialog",...a})},"DialogClose",0,function(a){return(0,b.jsx)(c.Dialog.Close,{"data-slot":"dialog-close",...a})},"DialogContent",0,function({className:a,size:f,children:g,...h}){return(0,b.jsxs)(c.Dialog.Portal,{children:[(0,b.jsx)(c.Dialog.Backdrop,{"data-slot":"dialog-overlay",className:e.dialogSurface.overlay}),(0,b.jsx)(c.Dialog.Popup,{"data-slot":"dialog-content",className:(0,d.classNames)(e.dialogSurface.popup({size:f}),a),...h,children:g})]})},"DialogDescription",0,function({className:a,...f}){return(0,b.jsx)(c.Dialog.Description,{"data-slot":"dialog-description",className:(0,d.classNames)(e.dialogSurface.description,a),...f})},"DialogFooter",0,function({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"dialog-footer",className:(0,d.classNames)(e.dialogSurface.footer,a),...c})},"DialogHeader",0,function({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"dialog-header",className:(0,d.classNames)(e.dialogSurface.header,a),...c})},"DialogTitle",0,function({className:a,...f}){return(0,b.jsx)(c.Dialog.Title,{"data-slot":"dialog-title",className:(0,d.classNames)(e.dialogSurface.title,a),...f})}])},72309,a=>{"use strict";var b=a.i(87924),c=a.i(187),d=a.i(80487);let e=(0,c.cva)("w-full min-w-0 resize-none rounded-md border border-input bg-card px-3 py-2 text-foreground shadow-sm transition-[border-color,box-shadow] duration-(--duration-fast) outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/22 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/16 disabled:cursor-not-allowed disabled:bg-muted disabled:opacity-50 disabled:shadow-none",{variants:{size:{md:"text-body",touch:"rounded-lg text-input-touch"},isMono:{true:"font-mono",false:""}},compoundVariants:[{size:"md",isMono:!0,className:"text-code"}],defaultVariants:{size:"md",isMono:!1}});a.s(["Textarea",0,function({className:a,size:c,isMono:f,rows:g=4,...h}){return(0,b.jsx)("textarea",{"data-slot":"textarea",rows:g,className:(0,d.classNames)(e({size:c,isMono:f}),a),...h})}])},71251,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(2955),e=a.i(67042),f=a.i(45098),g=a.i(48136),h=a.i(72309),i=a.i(40392),j=a.i(98600);function k({id:a,label:c,isOptional:d,hint:e,error:g,children:h}){return(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsxs)(f.Label,{htmlFor:a,children:[c,d?(0,b.jsx)("span",{className:"font-normal text-muted-foreground",children:" optional"}):null]}),h,void 0===e?null:(0,b.jsx)("p",{className:"text-meta text-muted-foreground",children:e}),void 0===g?null:(0,b.jsx)(i.InlineError,{variant:"field",title:g})]})}function l({id:a,items:c,value:d,onPick:e,isDisabled:f,testId:h}){return(0,b.jsxs)(g.Select,{items:c,value:d,disabled:f,onValueChange:a=>{"string"==typeof a&&e(a)},children:[(0,b.jsx)(g.SelectTrigger,{id:a,className:"h-(--size-control) w-full","data-testid":h,children:(0,b.jsx)(g.SelectValue,{})}),(0,b.jsx)(g.SelectContent,{children:Object.entries(c).map(([a,c])=>(0,b.jsx)(g.SelectItem,{value:a,children:c},a))})]})}a.s(["CrewSettingsFields",0,function({offers:a,values:f,onChange:g,firstPromptMaxBytes:i,squadrons:m,refusal:n,isDisabled:o=!1,machineLabels:p}){var q;let r={harness:(0,c.useId)(),workspace:(0,c.useId)(),options:(0,c.useId)(),firstPrompt:(0,c.useId)(),squadron:(0,c.useId)()},s=a.find(a=>a.harness===f.harness),t=a=>n?.field===a?n.reason:void 0,u=(0,d.promptBytes)(f.firstPrompt),v=u>i,w=Object.fromEntries([...(s?.repositories??[]).map(a=>[`worktree:${a}`,`${a} \xb7 new worktree`]),...(s?.folders??[]).map(a=>[`folder:${a}`,`${a} \xb7 folder, as it is`])]);return(0,b.jsxs)("div",{className:"flex flex-col gap-4","data-testid":"crew-settings-fields",children:[(0,b.jsx)(k,{id:r.harness,label:"Harness",error:t("harness"),children:(0,b.jsx)(l,{id:r.harness,items:Object.fromEntries(a.map(a=>[a.harness,(0,e.harnessWord)(a.harness)])),value:f.harness,isDisabled:o,testId:"crew-settings-harness",onPick:b=>{g((0,d.withHarness)(f,{harness:b,offers:a}))}})}),(0,b.jsx)(k,{id:r.workspace,label:"Workspace",hint:"A repository gets a new git worktree for this ship; a folder is used as it is, shared by the ships in it.",error:t("workspace"),children:(0,b.jsx)(l,{id:r.workspace,items:w,value:void 0===(q=f.workspace)?"":"worktree"===q.kind?`worktree:${q.repository}`:`folder:${q.name}`,isDisabled:o,testId:"crew-settings-workspace",onPick:a=>{g({...f,workspace:function(a){let[b,...c]=a.split(":"),d=c.join(":");return"worktree"===b?{kind:"worktree",repository:d}:"folder"===b?{kind:"folder",name:d}:void 0}(a)})}})}),void 0===p?null:(0,b.jsx)(j.MachineLabelsField,{shipName:p.shipName,picked:p.chipsOf(f.machineLabels),groups:p.groups,match:p.matchOf(f.machineLabels),max:p.max,isDisabled:o,onAdd:a=>{g({...f,machineLabels:[...f.machineLabels,a]})},onRemove:a=>{g({...f,machineLabels:f.machineLabels.filter(b=>b!==a)})}}),(s?.options??[]).map((a,c)=>(0,b.jsx)(k,{id:`${r.options}-${String(c)}`,label:a.name,error:0===c?t("options"):void 0,children:(0,b.jsx)(l,{id:`${r.options}-${String(c)}`,items:Object.fromEntries(a.values.map(b=>[b,b===a.defaultValue?`${b} (default)`:b])),value:f.options[a.name]??"",isDisabled:o,testId:`crew-settings-option-${a.name}`,onPick:b=>{g({...f,options:{...f.options,[a.name]:b}})}})},a.name)),(0,b.jsx)(k,{id:r.firstPrompt,label:"First prompt",isOptional:!0,hint:(0,b.jsxs)("span",{className:"flex justify-between gap-3",children:[(0,b.jsx)("span",{children:"The session starts with it, on its first start only."}),(0,b.jsxs)("span",{className:"tabular-nums",children:[(0,d.byteSize)(u)," of ",(0,d.byteSize)(i)]})]}),error:v?`A first prompt is at most ${(0,d.byteSize)(i)}.`:t("firstPrompt"),children:(0,b.jsx)(h.Textarea,{id:r.firstPrompt,rows:3,disabled:o,"aria-invalid":!!v||void 0,"data-testid":"crew-settings-first-prompt",value:f.firstPrompt,onChange:a=>{g({...f,firstPrompt:a.target.value})}})}),void 0===m?null:(0,b.jsx)(k,{id:r.squadron,label:"Squadron",isOptional:!0,hint:"The session starts with that squadron’s crew line and template.",error:t("squadron"),children:(0,b.jsx)(l,{id:r.squadron,items:{"":"None",...Object.fromEntries(m.map(a=>[a,a]))},value:f.squadron,isDisabled:o,testId:"crew-settings-squadron",onPick:a=>{g({...f,squadron:a})}})})]})}])},98600,a=>{"use strict";var b=a.i(87924),c=a.i(93817),d=a.i(8311),e=a.i(3512),f=a.i(74215),g=a.i(38246),h=a.i(72131),i=a.i(19721),j=a.i(82611),k=a.i(12068),l=a.i(60275),m=a.i(36501);let n=(0,i.default)(async()=>{},{loadableGenerated:{modules:[59068]},ssr:!1});function o({groups:a,picked:c,isDisabled:d,onAdd:f}){let[i,j]=(0,h.useState)(!1);return(0,b.jsxs)(l.Popover,{open:i,onOpenChange:j,children:[(0,b.jsx)(l.PopoverTrigger,{render:(0,b.jsx)(k.Button,{type:"button",variant:"ghost",size:"xs",icon:(0,b.jsx)(e.Plus,{}),disabled:d,"data-testid":"machine-labels-add"}),children:"Add label"}),(0,b.jsxs)(l.PopoverContent,{align:"start",sideOffset:6,className:"w-80 p-2","data-testid":"machine-labels-popover",children:[(0,b.jsx)("span",{className:"block px-2 pt-1 pb-2 text-body font-medium",children:"Machine label"}),(0,b.jsx)(n,{groups:a,pickedValueIds:c.map(a=>a.valueId),countWord:"machine",onPick:a=>{j(!1),f(a)}}),(0,b.jsxs)("p",{className:"mt-2 flex items-center justify-between gap-2 border-t border-border px-2 pt-2 text-meta text-muted-foreground",children:["Exact matches, all must hold.",(0,b.jsx)(g.default,{href:"/labels",className:"font-medium text-foreground hover:underline",children:"Manage labels"})]})]})]})}a.s(["MachineLabelsField",0,function({shipName:a,picked:e,groups:g,match:i,max:k,isDisabled:l,onAdd:n,onRemove:p,unknown:q=[],onRemoveUnknown:r}){let s=(0,j.noMatchWords)(e.length);return(0,b.jsxs)("div",{className:"flex flex-col gap-1.5","data-testid":"machine-labels",children:[(0,b.jsxs)("span",{className:"text-body font-medium",children:["Machine labels",(0,b.jsx)("span",{className:"font-normal text-muted-foreground",children:" optional"})]}),(0,b.jsxs)("div",{className:"flex min-h-(--size-control-sm) flex-wrap items-center gap-1.5",children:[0===e.length?(0,b.jsx)("span",{className:"text-meta text-muted-foreground",children:"Any machine"}):null,e.map((a,c)=>(0,b.jsxs)(h.Fragment,{children:[0===c?null:(0,b.jsx)("span",{className:"text-meta text-muted-foreground",children:"and"}),(0,b.jsx)(m.LabelChip,{chip:a,testId:"machine-label",...l?{}:{onRemove:()=>{p(a.valueId)}}})]},a.valueId)),q.map(a=>(0,b.jsxs)("span",{"data-testid":"machine-label-unknown",title:`${a}: not in this fleet`,className:"inline-flex h-5.5 items-center gap-1 rounded-sm border border-tone-attention-border bg-tone-attention-bg px-1.5 font-mono text-id text-tone-attention-fg [&_svg]:size-3",children:[(0,b.jsx)(c.CircleAlert,{"aria-hidden":!0}),a,void 0===r||l?null:(0,b.jsx)("button",{type:"button","aria-label":`Remove ${a}`,onClick:()=>{r(a)},className:"-mr-1 ml-0.5 inline-flex size-4 items-center justify-center rounded-xs hover:bg-accent focus-visible:outline-2 focus-visible:outline-ring",children:(0,b.jsx)(f.X,{"aria-hidden":!0})})]},a)),e.length+q.length>=k?null:(0,b.jsx)(o,{groups:g,picked:e,isDisabled:l,onAdd:n})]}),0===q.length?null:(0,b.jsxs)("p",{role:"alert","data-testid":"machine-labels-unknown-note",className:"text-meta text-tone-attention-fg",children:["Not in this fleet: ",q.join(", "),". Forming refuses ",1===q.length?"it":"them",": define ",1===q.length?"it":"them"," on the Labels page, or remove ",1===q.length?"it":"them"," here."]}),0===e.length?null:0===i.matching.length?(0,b.jsxs)("p",{role:"status","data-testid":"machine-labels-match",className:"flex items-start gap-2 rounded-lg border border-tone-waiting-border bg-tone-waiting-bg px-3 py-2 text-meta text-tone-waiting-fg [&_svg]:mt-0.5 [&_svg]:size-(--size-icon-sm) [&_svg]:shrink-0",children:[(0,b.jsx)(d.Clock,{"aria-hidden":!0}),(0,b.jsxs)("span",{children:["No machine matches ",s.these,". You can still request: it waits on Needs crew until a machine ",s.carries,"."]})]}):(0,b.jsxs)("p",{className:"text-meta","data-testid":"machine-labels-match",children:["Matches ",i.matching.length," of ",i.total," ",1===i.total?"machine":"machines",": ",i.matching.join(", "),"."]}),(0,b.jsxs)("p",{className:"text-meta text-muted-foreground",children:["The plugin places ",a," only on a machine that carries every label here. Leave it empty for any machine."]})]})}])},45029,a=>{"use strict";var b=a.i(87924),c=a.i(86257),d=a.i(97024),e=a.i(73370),f=a.i(31247),g=a.i(72131),h=a.i(80487),i=a.i(1851),j=a.i(2955),k=a.i(18691),l=a.i(12068),m=a.i(78398),n=a.i(18441),o=a.i(2374),p=a.i(75297),q=a.i(45098),r=a.i(45469),s=a.i(72309),t=a.i(71251),u=a.i(40392),v=a.i(21521),w=a.i(82252);let x={"fleet:read":"Read the fleet, every message included","fleet:manage":"Manage the fleet","crew:assign":"Assign crews","crew:run":"Run crews","labels:define":"Define labels","labels:assign":"Assign labels","fleet:network":"Set network rules"};function y({activeShips:a,isPending:o,error:z,shipLimit:A,accountUrl:B,crewRequest:C,onSubmit:D}){let E=(0,i.useConsoleConstants)(),{shipHandleMaxLength:F,firstPromptMaxBytes:G}=E,H=(0,g.useId)(),I=(0,g.useId)(),J=(0,g.useId)(),K=(0,g.useId)(),L=(0,g.useId)(),M=(0,g.useId)(),[N,O]=(0,g.useState)(""),[P,Q]=(0,g.useState)(""),[R,S]=(0,g.useState)(""),[T,U]=(0,g.useState)([]),[V,W]=(0,g.useState)(void 0!==C),[X,Y]=(0,g.useState)(()=>(0,j.defaultValues)(C?.offers??[])),Z=X.machineLabels.length>0&&C?.machineLabels?.matchOf(X.machineLabels).matching.length===0,$=(0,j.settingsOf)(X),_=C?.check?.kind==="refused"?C.check:void 0,aa=!V||void 0===C||void 0!==$&&void 0===_&&(0,j.promptBytes)(X.firstPrompt)<=G,ab=(0,k.checkShipName)(N,{activeNames:a.map(a=>a.name)}),ac="invalid"===ab.kind||"reserved"===ab.kind||"taken"===ab.kind,ad=P.trim(),ae=(0,c.isShipHandle)(ad),af=""!==ad&&!ae,ag=[...new Set(a.map(a=>a.type))].sort(),ah="available"===ab.kind&&ae&&void 0===A&&aa,ai=void 0!==C&&V;return(0,b.jsxs)("form",{noValidate:!0,"data-testid":"commission-form",className:"contents",onSubmit:a=>{a.preventDefault(),ah&&D({name:N,type:ad,...""===R.trim()?{}:{note:R},...0===T.length?{}:{fleetScopes:[...T]}},V?void 0===C?{settings:{}}:void 0===$?void 0:{settings:$}:void 0)},children:[(0,b.jsxs)(n.DialogHeader,{children:[(0,b.jsx)(n.DialogTitle,{children:"Commission a ship"}),(0,b.jsx)(n.DialogDescription,{children:ai?"A durable identity with its own inbox, and a crew request so it gets a session right away.":"A ship is a durable agent identity with its own inbox. Next, you get the starting prompt."})]}),void 0===A?null:(0,b.jsx)(v.LimitNotice,{...(0,w.shipLimitNotice)(A),accountUrl:B,testId:"commission-ship-limit"}),(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsxs)("div",{className:"flex items-baseline justify-between",children:[(0,b.jsx)(q.Label,{htmlFor:H,children:"Name"}),(0,b.jsxs)("span",{className:"text-caption text-muted-foreground tabular-nums",children:[N.length," / ",F]})]}),(0,b.jsxs)("div",{className:"relative",children:[(0,b.jsx)(p.Input,{id:H,isMono:!0,autoComplete:"off",autoCapitalize:"off",spellCheck:!1,placeholder:"e.g. reviewer-02","data-testid":"commission-name","aria-invalid":!!ac||void 0,"aria-describedby":I,className:"pr-9 max-sm:h-(--size-control-touch) max-sm:text-input-touch",value:N,onChange:a=>{O((0,k.asHandle)(a.target.value))}}),"available"===ab.kind?(0,b.jsx)(d.CircleCheck,{"aria-hidden":!0,className:"absolute top-1/2 right-3 size-(--size-icon) -translate-y-1/2 text-tone-ok-fg"}):ac?(0,b.jsx)(e.CircleX,{"aria-hidden":!0,className:"absolute top-1/2 right-3 size-(--size-icon) -translate-y-1/2 text-destructive-text"}):null]}),(0,b.jsx)("p",{id:I,"aria-live":"polite",className:(0,h.classNames)("text-meta",ac?"text-destructive-text":"text-muted-foreground"),children:ab.message})]}),(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsx)(q.Label,{htmlFor:J,children:"Type"}),(0,b.jsx)(m.Combobox,{id:J,options:ag.map(a=>({value:a,label:a})),value:""===P?null:P,onValueChange:a=>{Q(a??"")},isFreeText:!0,toQuery:k.asHandle,leadingIcon:(0,b.jsx)(f.Tag,{}),placeholder:"e.g. reviewer",isInvalid:af,"aria-describedby":K,"data-testid":"commission-type"}),(0,b.jsx)("p",{id:K,className:(0,h.classNames)("text-meta",af?"text-destructive-text":"text-muted-foreground"),children:af?`Use 1 to ${String(F)} lowercase letters, digits, hyphens or colons.`:(0,k.typeHint)(P,a.filter(a=>a.type===ad).length)})]}),(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsx)(q.Label,{htmlFor:L,children:"Note (optional)"}),(0,b.jsx)(s.Textarea,{id:L,rows:2,"data-testid":"commission-note",value:R,onChange:a=>{S(a.target.value)}})]}),(0,b.jsxs)("fieldset",{className:"flex flex-col gap-2",children:[(0,b.jsx)("legend",{className:"mb-1.5 text-body font-medium text-foreground",children:"Fleet access"}),E.fleetScopes.map(a=>(0,b.jsxs)("label",{className:"flex items-center justify-between gap-3 text-body text-foreground",children:[(0,b.jsxs)("span",{children:[x[a]," ",(0,b.jsx)("span",{className:"font-mono text-id text-muted-foreground",children:a})]}),(0,b.jsx)(r.Switch,{checked:T.includes(a),onCheckedChange:b=>{U(c=>b?[...c,a]:c.filter(b=>b!==a))},"data-testid":`commission-${a.replace(":","-")}`})]},a)),(0,b.jsx)("p",{className:"text-meta text-muted-foreground",children:"Every ship sends and receives. Fleet access lets its session act as the console does; crew ships lets a trierarch start their sessions. It cannot be changed later."})]}),(0,b.jsxs)("div",{className:"flex flex-col gap-3 border-t border-border pt-4",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,b.jsx)(q.Label,{htmlFor:M,children:"Request a crew"}),(0,b.jsx)(r.Switch,{id:M,checked:V,onCheckedChange:W,"data-testid":"commission-request-crew"})]}),(0,b.jsx)("p",{className:"-mt-2 text-meta text-muted-foreground",children:void 0===C?`Puts ${""===N?"the ship":N} on your Needs crew list until you crew it by hand. You get its starting prompt next either way.`:"The trierarch plugin picks a trierarch that starts the session and keeps it crewed."}),ai?(0,b.jsx)(t.CrewSettingsFields,{offers:C.offers,values:X,firstPromptMaxBytes:G,onChange:a=>{Y(a),C.onSettingsChange((0,j.settingsOf)(a))},squadrons:C.squadrons,refusal:_,isDisabled:o,...void 0===C.machineLabels?{}:{machineLabels:{...C.machineLabels,shipName:""===N.trim()?"this ship":N.trim()}}}):null]}),void 0===z?null:(0,b.jsx)(u.InlineError,{title:"Not commissioned",description:z}),(0,b.jsxs)(n.DialogFooter,{className:"items-center",children:[void 0===C?null:(0,b.jsx)("span",{className:"mr-auto text-meta text-muted-foreground","data-testid":"commission-crew-note",children:V?Z?"The request will wait for a machine with these labels.":C.check?.kind==="noRoom"?"The request will wait for room.":"Uncheck Request a crew to get the starting prompt instead.":null}),(0,b.jsx)(n.DialogClose,{render:(0,b.jsx)(l.Button,{type:"button",disabled:o}),children:"Cancel"}),(0,b.jsx)(l.Button,{type:"submit",variant:"primary",isLoading:o,disabled:!ah,"data-testid":"commission-submit",children:o?"Commissioning":ai?"Commission and request crew":"Commission ship"})]})]})}a.s(["CommissionDialog",0,function(a){let{isOpen:c,onOpenChange:d,isPending:e}=a;return(0,b.jsx)(n.Dialog,{open:c,onOpenChange:a=>{e||d(a)},children:(0,b.jsx)(n.DialogContent,{size:"md","data-testid":"commission-dialog",className:o.dialogSurface.phoneFullScreen,children:(0,b.jsx)(y,{...a})})})}])},18691,86257,a=>{"use strict";let b=/^[a-z0-9:-]+$/;function c(a){return a.length<=48&&b.test(a)}String(48),a.s(["SHIP_HANDLE_MAX_LENGTH",0,48,"isShipHandle",0,c],86257);var d=a.i(31429);let e=`Lowercase letters, digits, hyphens and colons, up to ${String(48)} characters, unique among active ships.`;a.s(["asHandle",0,function(a){return a.toLowerCase()},"checkShipName",0,function(a,b){return""===a?{kind:"empty",message:e}:c(a)?a===d.OPERATOR_NAME?{kind:"reserved",message:`${d.OPERATOR_NAME} is reserved for the operator ship.`}:a===b.current?{kind:"unchanged",message:"That is its name now."}:b.activeNames.includes(a)?{kind:"taken",message:`${a} is already used by an active ship.`}:{kind:"available",message:`${a} is available.`}:{kind:"invalid",message:`Use 1 to ${String(48)} lowercase letters, digits, hyphens or colons.`}},"typeHint",0,function(a,b){let c=a.trim();return""===c?"Free text. Pick a type in use or write a new one.":0===b?`No ship uses this type yet. ${c} becomes a new type.`:1===b?"1 ship uses this type.":`${String(b)} ships use this type.`}],18691)}];
1
+ module.exports=[18441,a=>{"use strict";var b=a.i(87924),c=a.i(94203),d=a.i(80487),e=a.i(2374);a.s(["Dialog",0,function(a){return(0,b.jsx)(c.Dialog.Root,{"data-slot":"dialog",...a})},"DialogClose",0,function(a){return(0,b.jsx)(c.Dialog.Close,{"data-slot":"dialog-close",...a})},"DialogContent",0,function({className:a,size:f,children:g,...h}){return(0,b.jsxs)(c.Dialog.Portal,{children:[(0,b.jsx)(c.Dialog.Backdrop,{"data-slot":"dialog-overlay",className:e.dialogSurface.overlay}),(0,b.jsx)(c.Dialog.Popup,{"data-slot":"dialog-content",className:(0,d.classNames)(e.dialogSurface.popup({size:f}),a),...h,children:g})]})},"DialogDescription",0,function({className:a,...f}){return(0,b.jsx)(c.Dialog.Description,{"data-slot":"dialog-description",className:(0,d.classNames)(e.dialogSurface.description,a),...f})},"DialogFooter",0,function({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"dialog-footer",className:(0,d.classNames)(e.dialogSurface.footer,a),...c})},"DialogHeader",0,function({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"dialog-header",className:(0,d.classNames)(e.dialogSurface.header,a),...c})},"DialogTitle",0,function({className:a,...f}){return(0,b.jsx)(c.Dialog.Title,{"data-slot":"dialog-title",className:(0,d.classNames)(e.dialogSurface.title,a),...f})}])},72309,a=>{"use strict";var b=a.i(87924),c=a.i(187),d=a.i(80487);let e=(0,c.cva)("w-full min-w-0 resize-none rounded-md border border-input bg-card px-3 py-2 text-foreground shadow-sm transition-[border-color,box-shadow] duration-(--duration-fast) outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/22 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/16 disabled:cursor-not-allowed disabled:bg-muted disabled:opacity-50 disabled:shadow-none",{variants:{size:{md:"text-body",touch:"rounded-lg text-input-touch"},isMono:{true:"font-mono",false:""}},compoundVariants:[{size:"md",isMono:!0,className:"text-code"}],defaultVariants:{size:"md",isMono:!1}});a.s(["Textarea",0,function({className:a,size:c,isMono:f,rows:g=4,...h}){return(0,b.jsx)("textarea",{"data-slot":"textarea",rows:g,className:(0,d.classNames)(e({size:c,isMono:f}),a),...h})}])},71251,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(2955),e=a.i(67042),f=a.i(45098),g=a.i(48136),h=a.i(72309),i=a.i(40392),j=a.i(98600);function k({id:a,label:c,isOptional:d,hint:e,error:g,children:h}){return(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsxs)(f.Label,{htmlFor:a,children:[c,d?(0,b.jsx)("span",{className:"font-normal text-muted-foreground",children:" optional"}):null]}),h,void 0===e?null:(0,b.jsx)("p",{className:"text-meta text-muted-foreground",children:e}),void 0===g?null:(0,b.jsx)(i.InlineError,{variant:"field",title:g})]})}function l({id:a,items:c,value:d,onPick:e,isDisabled:f,testId:h}){return(0,b.jsxs)(g.Select,{items:c,value:d,disabled:f,onValueChange:a=>{"string"==typeof a&&e(a)},children:[(0,b.jsx)(g.SelectTrigger,{id:a,className:"h-(--size-control) w-full","data-testid":h,children:(0,b.jsx)(g.SelectValue,{})}),(0,b.jsx)(g.SelectContent,{children:Object.entries(c).map(([a,c])=>(0,b.jsx)(g.SelectItem,{value:a,children:c},a))})]})}a.s(["CrewSettingsFields",0,function({offers:a,values:f,onChange:g,firstPromptMaxBytes:i,squadrons:m,refusal:n,isDisabled:o=!1,machineLabels:p}){var q;let r={harness:(0,c.useId)(),workspace:(0,c.useId)(),options:(0,c.useId)(),firstPrompt:(0,c.useId)(),squadron:(0,c.useId)()},s=a.find(a=>a.harness===f.harness),t=a=>n?.field===a?n.reason:void 0,u=(0,d.promptBytes)(f.firstPrompt),v=u>i,w=Object.fromEntries([...(s?.repositories??[]).map(a=>[`worktree:${a}`,`${a} \xb7 new worktree`]),...(s?.folders??[]).map(a=>[`folder:${a}`,`${a} \xb7 folder, as it is`])]);return(0,b.jsxs)("div",{className:"flex flex-col gap-4","data-testid":"crew-settings-fields",children:[(0,b.jsx)(k,{id:r.harness,label:"Harness",error:t("harness"),children:(0,b.jsx)(l,{id:r.harness,items:Object.fromEntries(a.map(a=>[a.harness,(0,e.harnessWord)(a.harness)])),value:f.harness,isDisabled:o,testId:"crew-settings-harness",onPick:b=>{g((0,d.withHarness)(f,{harness:b,offers:a}))}})}),(0,b.jsx)(k,{id:r.workspace,label:"Workspace",hint:"A repository gets a new git worktree for this ship; a folder is used as it is, shared by the ships in it.",error:t("workspace"),children:(0,b.jsx)(l,{id:r.workspace,items:w,value:void 0===(q=f.workspace)?"":"worktree"===q.kind?`worktree:${q.repository}`:`folder:${q.name}`,isDisabled:o,testId:"crew-settings-workspace",onPick:a=>{g({...f,workspace:function(a){let[b,...c]=a.split(":"),d=c.join(":");return"worktree"===b?{kind:"worktree",repository:d}:"folder"===b?{kind:"folder",name:d}:void 0}(a)})}})}),void 0===p?null:(0,b.jsx)(j.MachineLabelsField,{shipName:p.shipName,picked:p.chipsOf(f.machineLabels),groups:p.groups,match:p.matchOf(f.machineLabels),max:p.max,isDisabled:o,onAdd:a=>{g({...f,machineLabels:[...f.machineLabels,a]})},onRemove:a=>{g({...f,machineLabels:f.machineLabels.filter(b=>b!==a)})}}),(s?.options??[]).map((a,c)=>(0,b.jsx)(k,{id:`${r.options}-${String(c)}`,label:a.name,error:0===c?t("options"):void 0,children:(0,b.jsx)(l,{id:`${r.options}-${String(c)}`,items:Object.fromEntries(a.values.map(b=>[b,b===a.defaultValue?`${b} (default)`:b])),value:f.options[a.name]??"",isDisabled:o,testId:`crew-settings-option-${a.name}`,onPick:b=>{g({...f,options:{...f.options,[a.name]:b}})}})},a.name)),(0,b.jsx)(k,{id:r.firstPrompt,label:"First prompt",isOptional:!0,hint:(0,b.jsxs)("span",{className:"flex justify-between gap-3",children:[(0,b.jsx)("span",{children:"The session starts with it, on its first start only."}),(0,b.jsxs)("span",{className:"tabular-nums",children:[(0,d.byteSize)(u)," of ",(0,d.byteSize)(i)]})]}),error:v?`A first prompt is at most ${(0,d.byteSize)(i)}.`:t("firstPrompt"),children:(0,b.jsx)(h.Textarea,{id:r.firstPrompt,rows:3,disabled:o,"aria-invalid":!!v||void 0,"data-testid":"crew-settings-first-prompt",value:f.firstPrompt,onChange:a=>{g({...f,firstPrompt:a.target.value})}})}),void 0===m?null:(0,b.jsx)(k,{id:r.squadron,label:"Squadron",isOptional:!0,hint:"The session starts with that squadron’s crew line and template.",error:t("squadron"),children:(0,b.jsx)(l,{id:r.squadron,items:{"":"None",...Object.fromEntries(m.map(a=>[a,a]))},value:f.squadron,isDisabled:o,testId:"crew-settings-squadron",onPick:a=>{g({...f,squadron:a})}})})]})}])},98600,a=>{"use strict";var b=a.i(87924),c=a.i(93817),d=a.i(8311),e=a.i(3512),f=a.i(74215),g=a.i(38246),h=a.i(72131),i=a.i(19721),j=a.i(82611),k=a.i(12068),l=a.i(60275),m=a.i(36501);let n=(0,i.default)(async()=>{},{loadableGenerated:{modules:[59068]},ssr:!1});function o({groups:a,picked:c,isDisabled:d,onAdd:f}){let[i,j]=(0,h.useState)(!1);return(0,b.jsxs)(l.Popover,{open:i,onOpenChange:j,children:[(0,b.jsx)(l.PopoverTrigger,{render:(0,b.jsx)(k.Button,{type:"button",variant:"ghost",size:"xs",icon:(0,b.jsx)(e.Plus,{}),disabled:d,"data-testid":"machine-labels-add"}),children:"Add label"}),(0,b.jsxs)(l.PopoverContent,{align:"start",sideOffset:6,className:"w-80 p-2","data-testid":"machine-labels-popover",children:[(0,b.jsx)("span",{className:"block px-2 pt-1 pb-2 text-body font-medium",children:"Machine label"}),(0,b.jsx)(n,{groups:a,pickedValueIds:c.map(a=>a.valueId),countWord:"machine",onPick:a=>{j(!1),f(a)}}),(0,b.jsxs)("p",{className:"mt-2 flex items-center justify-between gap-2 border-t border-border px-2 pt-2 text-meta text-muted-foreground",children:["Exact matches, all must hold.",(0,b.jsx)(g.default,{href:"/labels",className:"font-medium text-foreground hover:underline",children:"Manage labels"})]})]})]})}a.s(["MachineLabelsField",0,function({shipName:a,picked:e,groups:g,match:i,max:k,isDisabled:l,onAdd:n,onRemove:p,unknown:q=[],onRemoveUnknown:r}){let s=(0,j.noMatchWords)(e.length);return(0,b.jsxs)("div",{className:"flex flex-col gap-1.5","data-testid":"machine-labels",children:[(0,b.jsxs)("span",{className:"text-body font-medium",children:["Machine labels",(0,b.jsx)("span",{className:"font-normal text-muted-foreground",children:" optional"})]}),(0,b.jsxs)("div",{className:"flex min-h-(--size-control-sm) flex-wrap items-center gap-1.5",children:[0===e.length?(0,b.jsx)("span",{className:"text-meta text-muted-foreground",children:"Any machine"}):null,e.map((a,c)=>(0,b.jsxs)(h.Fragment,{children:[0===c?null:(0,b.jsx)("span",{className:"text-meta text-muted-foreground",children:"and"}),(0,b.jsx)(m.LabelChip,{chip:a,testId:"machine-label",...l?{}:{onRemove:()=>{p(a.valueId)}}})]},a.valueId)),q.map(a=>(0,b.jsxs)("span",{"data-testid":"machine-label-unknown",title:`${a}: not in this fleet`,className:"inline-flex h-5.5 items-center gap-1 rounded-sm border border-tone-attention-border bg-tone-attention-bg px-1.5 font-mono text-id text-tone-attention-fg [&_svg]:size-3",children:[(0,b.jsx)(c.CircleAlert,{"aria-hidden":!0}),a,void 0===r||l?null:(0,b.jsx)("button",{type:"button","aria-label":`Remove ${a}`,onClick:()=>{r(a)},className:"-mr-1 ml-0.5 inline-flex size-4 items-center justify-center rounded-xs hover:bg-accent focus-visible:outline-2 focus-visible:outline-ring",children:(0,b.jsx)(f.X,{"aria-hidden":!0})})]},a)),e.length+q.length>=k?null:(0,b.jsx)(o,{groups:g,picked:e,isDisabled:l,onAdd:n})]}),0===q.length?null:(0,b.jsxs)("p",{role:"alert","data-testid":"machine-labels-unknown-note",className:"text-meta text-tone-attention-fg",children:["Not in this fleet: ",q.join(", "),". Forming refuses ",1===q.length?"it":"them",": define ",1===q.length?"it":"them"," on the Labels page, or remove ",1===q.length?"it":"them"," here."]}),0===e.length?null:0===i.matching.length?(0,b.jsxs)("p",{role:"status","data-testid":"machine-labels-match",className:"flex items-start gap-2 rounded-lg border border-tone-waiting-border bg-tone-waiting-bg px-3 py-2 text-meta text-tone-waiting-fg [&_svg]:mt-0.5 [&_svg]:size-(--size-icon-sm) [&_svg]:shrink-0",children:[(0,b.jsx)(d.Clock,{"aria-hidden":!0}),(0,b.jsxs)("span",{children:["No machine matches ",s.these,". You can still request: it waits on Needs crew until a machine ",s.carries,"."]})]}):(0,b.jsxs)("p",{className:"text-meta","data-testid":"machine-labels-match",children:["Matches ",i.matching.length," of ",i.total," ",1===i.total?"machine":"machines",": ",i.matching.join(", "),"."]}),(0,b.jsxs)("p",{className:"text-meta text-muted-foreground",children:["The plugin places ",a," only on a machine that carries every label here. Leave it empty for any machine."]})]})}])},45029,a=>{"use strict";var b=a.i(87924),c=a.i(86257),d=a.i(97024),e=a.i(73370),f=a.i(31247),g=a.i(72131),h=a.i(80487),i=a.i(1851),j=a.i(2955),k=a.i(18691),l=a.i(12068),m=a.i(78398),n=a.i(18441),o=a.i(2374),p=a.i(75297),q=a.i(45098),r=a.i(45469),s=a.i(72309),t=a.i(71251),u=a.i(40392),v=a.i(21521),w=a.i(82252);function x({activeShips:a,isPending:o,error:y,shipLimit:z,accountUrl:A,crewRequest:B,scopeGroups:C,onSubmit:D}){let{shipHandleMaxLength:E,firstPromptMaxBytes:F}=(0,i.useConsoleConstants)(),G=(0,g.useId)(),H=(0,g.useId)(),I=(0,g.useId)(),J=(0,g.useId)(),K=(0,g.useId)(),L=(0,g.useId)(),[M,N]=(0,g.useState)(""),[O,P]=(0,g.useState)(""),[Q,R]=(0,g.useState)(""),[S,T]=(0,g.useState)([]),[U,V]=(0,g.useState)(void 0!==B),[W,X]=(0,g.useState)(()=>(0,j.defaultValues)(B?.offers??[])),Y=W.machineLabels.length>0&&B?.machineLabels?.matchOf(W.machineLabels).matching.length===0,Z=(0,j.settingsOf)(W),$=B?.check?.kind==="refused"?B.check:void 0,_=!U||void 0===B||void 0!==Z&&void 0===$&&(0,j.promptBytes)(W.firstPrompt)<=F,aa=(0,k.checkShipName)(M,{activeNames:a.map(a=>a.name)}),ab="invalid"===aa.kind||"reserved"===aa.kind||"taken"===aa.kind,ac=O.trim(),ad=(0,c.isShipHandle)(ac),ae=""!==ac&&!ad,af=[...new Set(a.map(a=>a.type))].sort(),ag="available"===aa.kind&&ad&&void 0===z&&_,ah=void 0!==B&&U;return(0,b.jsxs)("form",{noValidate:!0,"data-testid":"commission-form",className:"contents",onSubmit:a=>{a.preventDefault(),ag&&D({name:M,type:ac,...""===Q.trim()?{}:{note:Q},...0===S.length?{}:{scopes:[...S]}},U?void 0===B?{settings:{}}:void 0===Z?void 0:{settings:Z}:void 0)},children:[(0,b.jsxs)(n.DialogHeader,{children:[(0,b.jsx)(n.DialogTitle,{children:"Commission a ship"}),(0,b.jsx)(n.DialogDescription,{children:ah?"A durable identity with its own inbox, and a crew request so it gets a session right away.":"A ship is a durable agent identity with its own inbox. Next, you get the starting prompt."})]}),void 0===z?null:(0,b.jsx)(v.LimitNotice,{...(0,w.shipLimitNotice)(z),accountUrl:A,testId:"commission-ship-limit"}),(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsxs)("div",{className:"flex items-baseline justify-between",children:[(0,b.jsx)(q.Label,{htmlFor:G,children:"Name"}),(0,b.jsxs)("span",{className:"text-caption text-muted-foreground tabular-nums",children:[M.length," / ",E]})]}),(0,b.jsxs)("div",{className:"relative",children:[(0,b.jsx)(p.Input,{id:G,isMono:!0,autoComplete:"off",autoCapitalize:"off",spellCheck:!1,placeholder:"e.g. reviewer-02","data-testid":"commission-name","aria-invalid":!!ab||void 0,"aria-describedby":H,className:"pr-9 max-sm:h-(--size-control-touch) max-sm:text-input-touch",value:M,onChange:a=>{N((0,k.asHandle)(a.target.value))}}),"available"===aa.kind?(0,b.jsx)(d.CircleCheck,{"aria-hidden":!0,className:"absolute top-1/2 right-3 size-(--size-icon) -translate-y-1/2 text-tone-ok-fg"}):ab?(0,b.jsx)(e.CircleX,{"aria-hidden":!0,className:"absolute top-1/2 right-3 size-(--size-icon) -translate-y-1/2 text-destructive-text"}):null]}),(0,b.jsx)("p",{id:H,"aria-live":"polite",className:(0,h.classNames)("text-meta",ab?"text-destructive-text":"text-muted-foreground"),children:aa.message})]}),(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsx)(q.Label,{htmlFor:I,children:"Type"}),(0,b.jsx)(m.Combobox,{id:I,options:af.map(a=>({value:a,label:a})),value:""===O?null:O,onValueChange:a=>{P(a??"")},isFreeText:!0,toQuery:k.asHandle,leadingIcon:(0,b.jsx)(f.Tag,{}),placeholder:"e.g. reviewer",isInvalid:ae,"aria-describedby":J,"data-testid":"commission-type"}),(0,b.jsx)("p",{id:J,className:(0,h.classNames)("text-meta",ae?"text-destructive-text":"text-muted-foreground"),children:ae?`Use 1 to ${String(E)} lowercase letters, digits, hyphens or colons.`:(0,k.typeHint)(O,a.filter(a=>a.type===ac).length)})]}),(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsx)(q.Label,{htmlFor:K,children:"Note (optional)"}),(0,b.jsx)(s.Textarea,{id:K,rows:2,"data-testid":"commission-note",value:Q,onChange:a=>{R(a.target.value)}})]}),void 0===C?(0,b.jsx)("p",{className:"text-meta text-muted-foreground","data-testid":"commission-scopes-reading",children:"Reading the fleet's scopes."}):C.map(a=>(0,b.jsxs)("fieldset",{className:"flex flex-col gap-2","data-testid":`commission-scopes-${a.namespace??"fleet"}`,children:[(0,b.jsxs)("legend",{className:"mb-1.5 text-body font-medium text-foreground",children:[a.title," ",null===a.namespace?null:(0,b.jsx)("span",{className:"font-mono text-id text-muted-foreground",children:a.namespace})]}),a.scopes.map(({scope:a,description:c})=>(0,b.jsxs)("label",{className:"flex items-center justify-between gap-3 text-body text-foreground",children:[(0,b.jsxs)("span",{children:[c," ",(0,b.jsx)("span",{className:"font-mono text-id text-muted-foreground",children:a})]}),(0,b.jsx)(r.Switch,{checked:S.includes(a),onCheckedChange:b=>{T(c=>b?[...c,a]:c.filter(b=>b!==a))},"data-testid":`commission-${a.replace(":","-")}`})]},a)),null===a.namespace?(0,b.jsx)("p",{className:"text-meta text-muted-foreground",children:"Every ship sends and receives. Fleet access lets its session act as the console does; crew ships lets a trierarch start their sessions. It cannot be changed later."}):null]},a.namespace??"")),(0,b.jsxs)("div",{className:"flex flex-col gap-3 border-t border-border pt-4",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,b.jsx)(q.Label,{htmlFor:L,children:"Request a crew"}),(0,b.jsx)(r.Switch,{id:L,checked:U,onCheckedChange:V,"data-testid":"commission-request-crew"})]}),(0,b.jsx)("p",{className:"-mt-2 text-meta text-muted-foreground",children:void 0===B?`Puts ${""===M?"the ship":M} on your Needs crew list until you crew it by hand. You get its starting prompt next either way.`:"The trierarch plugin picks a trierarch that starts the session and keeps it crewed."}),ah?(0,b.jsx)(t.CrewSettingsFields,{offers:B.offers,values:W,firstPromptMaxBytes:F,onChange:a=>{X(a),B.onSettingsChange((0,j.settingsOf)(a))},squadrons:B.squadrons,refusal:$,isDisabled:o,...void 0===B.machineLabels?{}:{machineLabels:{...B.machineLabels,shipName:""===M.trim()?"this ship":M.trim()}}}):null]}),void 0===y?null:(0,b.jsx)(u.InlineError,{title:"Not commissioned",description:y}),(0,b.jsxs)(n.DialogFooter,{className:"items-center",children:[void 0===B?null:(0,b.jsx)("span",{className:"mr-auto text-meta text-muted-foreground","data-testid":"commission-crew-note",children:U?Y?"The request will wait for a machine with these labels.":B.check?.kind==="noRoom"?"The request will wait for room.":"Uncheck Request a crew to get the starting prompt instead.":null}),(0,b.jsx)(n.DialogClose,{render:(0,b.jsx)(l.Button,{type:"button",disabled:o}),children:"Cancel"}),(0,b.jsx)(l.Button,{type:"submit",variant:"primary",isLoading:o,disabled:!ag,"data-testid":"commission-submit",children:o?"Commissioning":ah?"Commission and request crew":"Commission ship"})]})]})}a.s(["CommissionDialog",0,function(a){let{isOpen:c,onOpenChange:d,isPending:e}=a;return(0,b.jsx)(n.Dialog,{open:c,onOpenChange:a=>{e||d(a)},children:(0,b.jsx)(n.DialogContent,{size:"md","data-testid":"commission-dialog",className:o.dialogSurface.phoneFullScreen,children:(0,b.jsx)(x,{...a})})})}])},18691,86257,a=>{"use strict";let b=/^[a-z0-9:-]+$/;function c(a){return a.length<=48&&b.test(a)}String(48),a.s(["SHIP_HANDLE_MAX_LENGTH",0,48,"isShipHandle",0,c],86257);var d=a.i(31429);let e=`Lowercase letters, digits, hyphens and colons, up to ${String(48)} characters, unique among active ships.`;a.s(["asHandle",0,function(a){return a.toLowerCase()},"checkShipName",0,function(a,b){return""===a?{kind:"empty",message:e}:c(a)?a===d.OPERATOR_NAME?{kind:"reserved",message:`${d.OPERATOR_NAME} is reserved for the operator ship.`}:a===b.current?{kind:"unchanged",message:"That is its name now."}:b.activeNames.includes(a)?{kind:"taken",message:`${a} is already used by an active ship.`}:{kind:"available",message:`${a} is available.`}:{kind:"invalid",message:`Use 1 to ${String(48)} lowercase letters, digits, hyphens or colons.`}},"typeHint",0,function(a,b){let c=a.trim();return""===c?"Free text. Pick a type in use or write a new one.":0===b?`No ship uses this type yet. ${c} becomes a new type.`:1===b?"1 ship uses this type.":`${String(b)} ships use this type.`}],18691)}];
2
2
 
3
3
  //# sourceMappingURL=packages_console_1bm_b0f._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[82329,a=>{"use strict";var b=a.i(8219);let c={compose:"canSend",commission:"canManage","form-squadron":"canManage"};a.s(["allowedPaletteItems",0,function(a,b){return a.filter(a=>"action"===a.kind?b[c[a.id]]:"squadron-action"!==a.kind||b.canManage)},"paletteGroups",0,function(a,b){let c=b.trim().toLowerCase(),d=a.filter(a=>""===c?"squadron-action"!==a.kind:("ship"===a.kind?[a.name,a.type]:"squadron"===a.kind?[a.id,a.blueprint]:"squadron-action"===a.kind?[a.squadronId]:"blueprint"===a.kind?[a.name]:[a.label]).some(a=>a.toLowerCase().includes(c))),e=d.filter(a=>"ship"===a.kind);return[{key:"actions",label:"Actions",items:d.filter(a=>"action"===a.kind||"squadron-action"===a.kind)},{key:"ships",label:"Ships",items:""===c?e.slice(0,8):e},{key:"squadrons",label:"Squadrons",items:d.filter(a=>"squadron"===a.kind)},{key:"blueprints",label:"Blueprints",items:d.filter(a=>"blueprint"===a.kind)},{key:"pages",label:"Go to",items:d.filter(a=>"page"===a.kind)}].filter(a=>a.items.length>0)},"paletteItemsOf",0,function(a,c){return[{kind:"action",id:"commission",label:"Commission ship"},...c?[{kind:"action",id:"form-squadron",label:"Form squadron"}]:[],{kind:"action",id:"compose",label:"Compose a message"},...a.filter(a=>"agent"===a.kind&&"retired"!==a.status).map(a=>({kind:"ship",id:a.id,name:a.name,type:a.type,status:a.status,href:`/ships/${a.id}`})),...(c?.squadrons??[]).filter(a=>"disbanded"!==a.state).map(a=>({kind:"squadron",id:a.id,blueprint:a.blueprint.name,state:a.state,href:`/squadrons/${a.id}`})),...(c?.squadrons??[]).filter(a=>"sailing"===a.state).flatMap(a=>[{kind:"squadron-action",id:`add-member:${a.id}`,squadronId:a.id,action:"add-member",label:`Add member to ${a.id}…`,href:`/squadrons/${a.id}?action=add-member`},{kind:"squadron-action",id:`stand-down:${a.id}`,squadronId:a.id,action:"stand-down",label:`Stand down ${a.id}…`,href:`/squadrons/${a.id}?action=stand-down`}]),...(c?.blueprints??[]).map(a=>({kind:"blueprint",id:a.key,name:a.name,version:a.versions[0]?.version??0,href:(0,b.blueprintPath)(a)})),{kind:"page",id:"overview",label:"Fleet overview",href:"/"},...c?[{kind:"page",id:"squadrons",label:"Squadrons",href:"/squadrons"}]:[],{kind:"page",id:"inbox",label:"Operator inbox",href:"/inbox"},{kind:"page",id:"health",label:"Health",href:"/fleet-health"}]},"paletteKeyOf",0,function(a){return`${a.kind}:${a.id}`}])},13916,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_0gnkc87._.js","server/chunks/ssr/_1n8dahj._.js"].map(b=>a.l(b))).then(()=>b(4812)))},95751,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_1n8dahj._.js","server/chunks/ssr/_0bx9rsi._.js","server/chunks/ssr/packages_console_components_atoms_input_tsx_0ux0uln._.js","server/chunks/ssr/packages_console_components_atoms_combobox_tsx_1cy612l._.js","server/chunks/ssr/_0xju-eu._.js"].map(b=>a.l(b))).then(()=>b(66786)))},6071,a=>{"use strict";a.s(["crewRequestAction",0,function(a){switch(a.kind){case"none":return;case"needsCrew":return"remove";case"crewedByHand":return"release";case"assigned":return"releasing"===a.status?void 0:"release"}},"crewRequestStage",0,function(a){let b=a.crewRequest;return null===b?{kind:"none"}:null!==b.assignedTo?{kind:"assigned",requestedAt:b.requestedAt,trierarch:b.assignedTo,status:b.status??"crewing",attempt:b.attempt,startedAt:b.startedAt}:null!==b.crewedBy?{kind:"crewedByHand",requestedAt:b.requestedAt,crewedBy:b.crewedBy,since:a.crewedSince??null}:{kind:"needsCrew",requestedAt:b.requestedAt,reason:b.reason}},"isRestartable",0,function(a){return"assigned"===a.kind&&"crashed"===a.status},"releaseSteps",0,function(a){return"crewedByHand"===a.kind?["removeCrewRequest","release"]:["removeCrewRequest"]},"requestedBy",0,function(a){return a.find(a=>"CrewRequested"===a.type)?.actor??null},"restartWords",0,function({status:a,attempt:b}){let c=`${String(b)} ${1===b?"restart":"restarts"}`;switch(a){case"restarting":return`attempt ${String(b)}`;case"crashed":return c;case"running":return 0===b?void 0:c;case"crewing":case"releasing":return}},"statusChangedAt",0,function(a){return a.find(a=>"CrewStatusChanged"===a.type)?.occurredAt}])},34564,a=>{"use strict";var b=a.i(33217),c=a.i(14499);function d(){let a=(0,c.useTRPC)();return(0,b.useQuery)(a.fleet.health.queryOptions(void 0,{refetchInterval:6e4}))}function e(a){return a?.stuck.reduce((a,b)=>a+b.count,0)}a.s(["stuckCountOf",0,e,"useFleetHealth",0,d,"useStuckCount",0,function(){return e(d().data)}])},28562,a=>{"use strict";var b=a.i(70025),c=a.i(37927),d=a.i(65563),e=a.i(62700),f=a.i(33308),g=a.i(5050);let h=(0,g.createServerReference)("0010f112d55b74380f8f413f46d62e842a4bb3e398",g.callServer,void 0,g.findSourceMapURL,"connectNetworkingPlugin"),i=(0,g.createServerReference)("4085731954f97da9e497ddfcf03be5f7bc98427ba0",g.callServer,void 0,g.findSourceMapURL,"saveNetworkDeclaration"),j=(0,g.createServerReference)("400a50e1a46d4cf3c9764c40ff90bd452cc7addc34",g.callServer,void 0,g.findSourceMapURL,"saveNetworkRules");var k=a.i(53272),l=a.i(14499);let m=["networking-plugin","connection"],n=["networking-plugin","network"];function o(){return(0,e.useConsoleRead)({queryKey:m,queryFn:()=>(0,f.fetchConsoleRead)({read:"networking-plugin-connection"})})}function p(){let a=(0,d.useAccess)(),b=o();return a.canEditNetwork&&b.data?.state==="connected"}a.s(["useConnectNetworkingPlugin",0,function(){let a=(0,c.useQueryClient)();return(0,b.useMutation)({mutationFn:async()=>(0,k.dataOf)(await h()),onSuccess:b=>{a.setQueryData(m,b)}})},"useHasNetwork",0,p,"useHasNetworkingPlugin",0,function(){let a=o();return void 0!==a.data&&"none"!==a.data.state},"useNetwork",0,function(){let a=p();return(0,e.useConsoleRead)({queryKey:n,queryFn:()=>(0,f.fetchConsoleRead)({read:"network"}),enabled:a})},"useNetworkingPluginSettings",0,o,"useSaveNetworkDeclaration",0,function(){let a=(0,c.useQueryClient)();return(0,b.useMutation)({mutationFn:async a=>(0,k.dataOf)(await i(a)),onSuccess:b=>{a.setQueryData(n,a=>void 0===a?void 0:{...a,declaration:b.declaration})}})},"useSaveNetworkRules",0,function(){let a=(0,l.useTRPC)(),d=(0,c.useQueryClient)();return(0,b.useMutation)({mutationFn:async a=>(0,k.dataOf)(await j(a)),onSuccess:async b=>{d.setQueryData(n,a=>void 0===a?void 0:{...a,rules:b.rules}),await d.invalidateQueries({queryKey:a.fleet.explainReach.pathKey()})}})}],28562)},68450,a=>{"use strict";let b;var c=a.i(72131);let d=Date.now(),e=new Set;function f(a){return e.add(a),b??=setInterval(()=>{for(let a of(d=Date.now(),e))a()},1e4),()=>{e.delete(a),0===e.size&&(clearInterval(b),b=void 0)}}function g(){return d}a.s(["useNow",0,function(){return new Date((0,c.useSyncExternalStore)(f,g,g))}])},34159,60271,a=>{"use strict";var b=a.i(65563),c=a.i(90146),d=a.i(6071);function e(a,b){return a.filter(a=>(function(a,b){if("retired"===a.status)return!1;let c=(0,d.crewRequestStage)(a);return b.hasTrierarchs?"needsCrew"===c.kind||"assigned"===c.kind&&"running"!==c.status&&"releasing"!==c.status:"needsCrew"===c.kind&&"awaitingCrew"===a.status})(a,b)).toSorted((a,b)=>(a.crewRequest?.requestedAt??"").localeCompare(b.crewRequest?.requestedAt??""))}let f={crewing:{tone:"active",word:"Crewing"},running:{tone:"ok",word:"Running"},restarting:{tone:"waiting",word:"Restarting"},crashed:{tone:"attention",word:"Crashed"},releasing:{tone:"active",word:"Releasing"}};a.s(["crewRequestKey",0,function(a){return"assigned"===a.kind?a.status:a.kind},"crewRequestKeyWord",0,function(a){return"none"===a?"No request":"needsCrew"===a?"Needs crew":"crewedByHand"===a?"Crewed by hand":f[a].word},"crewRequestKeysOf",0,function(a){return["none","needsCrew","crewedByHand",...a]},"handCrewOf",0,function(a){return null===a.startingPrompt?{kind:"no-prompt"}:a.startingPrompt.isClaimed?{kind:"crew-ended",endedAt:a.awaitingCrewSince}:{kind:"prompt-unclaimed",issuedAt:a.startingPrompt.issuedAt}},"needsCrew",0,e],60271);var g=a.i(28562),h=a.i(54763),i=a.i(29931),j=a.i(93454);a.s(["usePluginNav",0,function(){let a=(0,b.useAccess)(),d=(0,h.useHasSquadrons)(),f=(0,j.useHasTrierarchPlugin)(),k=(0,g.useHasNetworkingPlugin)(),l=(0,g.useHasNetwork)(),m=(0,j.useMachines)(),n=(0,c.useFleetSnapshot)();return{...void 0===n.data?{}:{needsCrewCount:e(n.data,{hasTrierarchs:f}).length},hasSquadrons:d,hasTrierarchs:f,...void 0===m.data?{}:{trierarchsCount:(0,i.silentCount)(m.data)},hasNetwork:l,hasSettings:a.canManage&&(d||f||k)}}],34159)}];
1
+ module.exports=[82329,a=>{"use strict";var b=a.i(8219);let c={compose:"canSend",commission:"canManage","form-squadron":"canManage"};a.s(["allowedPaletteItems",0,function(a,b){return a.filter(a=>"action"===a.kind?b[c[a.id]]:"squadron-action"!==a.kind||b.canManage)},"paletteGroups",0,function(a,b){let c=b.trim().toLowerCase(),d=a.filter(a=>""===c?"squadron-action"!==a.kind:("ship"===a.kind?[a.name,a.type]:"squadron"===a.kind?[a.id,a.blueprint]:"squadron-action"===a.kind?[a.squadronId]:"blueprint"===a.kind?[a.name]:[a.label]).some(a=>a.toLowerCase().includes(c))),e=d.filter(a=>"ship"===a.kind);return[{key:"actions",label:"Actions",items:d.filter(a=>"action"===a.kind||"squadron-action"===a.kind)},{key:"ships",label:"Ships",items:""===c?e.slice(0,8):e},{key:"squadrons",label:"Squadrons",items:d.filter(a=>"squadron"===a.kind)},{key:"blueprints",label:"Blueprints",items:d.filter(a=>"blueprint"===a.kind)},{key:"pages",label:"Go to",items:d.filter(a=>"page"===a.kind)}].filter(a=>a.items.length>0)},"paletteItemsOf",0,function(a,c){return[{kind:"action",id:"commission",label:"Commission ship"},...c?[{kind:"action",id:"form-squadron",label:"Form squadron"}]:[],{kind:"action",id:"compose",label:"Compose a message"},...a.filter(a=>"agent"===a.kind&&"retired"!==a.status).map(a=>({kind:"ship",id:a.id,name:a.name,type:a.type,status:a.status,href:`/ships/${a.id}`})),...(c?.squadrons??[]).filter(a=>"disbanded"!==a.state).map(a=>({kind:"squadron",id:a.id,blueprint:a.blueprint.name,state:a.state,href:`/squadrons/${a.id}`})),...(c?.squadrons??[]).filter(a=>"sailing"===a.state).flatMap(a=>[{kind:"squadron-action",id:`add-member:${a.id}`,squadronId:a.id,action:"add-member",label:`Add member to ${a.id}…`,href:`/squadrons/${a.id}?action=add-member`},{kind:"squadron-action",id:`stand-down:${a.id}`,squadronId:a.id,action:"stand-down",label:`Stand down ${a.id}…`,href:`/squadrons/${a.id}?action=stand-down`}]),...(c?.blueprints??[]).map(a=>({kind:"blueprint",id:a.key,name:a.name,version:a.versions[0]?.version??0,href:(0,b.blueprintPath)(a)})),{kind:"page",id:"overview",label:"Fleet overview",href:"/"},...c?[{kind:"page",id:"squadrons",label:"Squadrons",href:"/squadrons"}]:[],{kind:"page",id:"inbox",label:"Operator inbox",href:"/inbox"},{kind:"page",id:"health",label:"Health",href:"/fleet-health"}]},"paletteKeyOf",0,function(a){return`${a.kind}:${a.id}`}])},13916,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_0gnkc87._.js","server/chunks/ssr/_1n8dahj._.js"].map(b=>a.l(b))).then(()=>b(4812)))},95751,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_1n8dahj._.js","server/chunks/ssr/_0bx9rsi._.js","server/chunks/ssr/packages_console_components_atoms_input_tsx_0ux0uln._.js","server/chunks/ssr/packages_console_components_atoms_combobox_tsx_1cy612l._.js","server/chunks/ssr/_0xju-eu._.js"].map(b=>a.l(b))).then(()=>b(66786)))},6071,a=>{"use strict";a.s(["crewRequestAction",0,function(a){switch(a.kind){case"none":return;case"needsCrew":return"remove";case"crewedByHand":return"release";case"assigned":return"releasing"===a.status?void 0:"release"}},"crewRequestStage",0,function(a){let b=a.crewRequest;return null===b?{kind:"none"}:null!==b.assignedTo?{kind:"assigned",requestedAt:b.requestedAt,trierarch:b.assignedTo,status:b.status??"crewing",attempt:b.attempt,startedAt:b.startedAt}:null!==b.crewedBy?{kind:"crewedByHand",requestedAt:b.requestedAt,crewedBy:b.crewedBy,since:a.crewedSince??null}:{kind:"needsCrew",requestedAt:b.requestedAt,reason:b.reason}},"isRestartable",0,function(a){return"assigned"===a.kind&&"crashed"===a.status},"releaseSteps",0,function(a){return"crewedByHand"===a.kind?["removeCrewRequest","release"]:["removeCrewRequest"]},"requestedBy",0,function(a){return a.find(a=>"CrewRequested"===a.type)?.actor??null},"restartWords",0,function({status:a,attempt:b}){let c=`${String(b)} ${1===b?"restart":"restarts"}`;switch(a){case"restarting":return`attempt ${String(b)}`;case"crashed":return c;case"running":return 0===b?void 0:c;case"crewing":case"releasing":return}},"statusChangedAt",0,function(a){return a.find(a=>"CrewStatusChanged"===a.type)?.occurredAt}])},34564,a=>{"use strict";var b=a.i(33217),c=a.i(14499);function d(){let a=(0,c.useTRPC)();return(0,b.useQuery)(a.fleet.health.queryOptions(void 0,{refetchInterval:6e4}))}function e(a){return a?.stuck.reduce((a,b)=>a+b.count,0)}a.s(["stuckCountOf",0,e,"useFleetHealth",0,d,"useStuckCount",0,function(){return e(d().data)}])},28562,a=>{"use strict";var b=a.i(70025),c=a.i(37927),d=a.i(65563),e=a.i(62700),f=a.i(33308),g=a.i(5050);let h=(0,g.createServerReference)("009a9dd2c79cc9126c99ac2ff7655513b63d944f78",g.callServer,void 0,g.findSourceMapURL,"connectNetworkingPlugin"),i=(0,g.createServerReference)("40186341a12770af13e9b31298dcd5538e89126e60",g.callServer,void 0,g.findSourceMapURL,"saveNetworkDeclaration"),j=(0,g.createServerReference)("40aaf7f1fb4934d680a473bbbfc73abe291541796c",g.callServer,void 0,g.findSourceMapURL,"saveNetworkRules");var k=a.i(53272),l=a.i(14499);let m=["networking-plugin","connection"],n=["networking-plugin","network"];function o(){return(0,e.useConsoleRead)({queryKey:m,queryFn:()=>(0,f.fetchConsoleRead)({read:"networking-plugin-connection"})})}function p(){let a=(0,d.useAccess)(),b=o();return a.canEditNetwork&&b.data?.state==="connected"}a.s(["useConnectNetworkingPlugin",0,function(){let a=(0,c.useQueryClient)();return(0,b.useMutation)({mutationFn:async()=>(0,k.dataOf)(await h()),onSuccess:b=>{a.setQueryData(m,b)}})},"useHasNetwork",0,p,"useHasNetworkingPlugin",0,function(){let a=o();return void 0!==a.data&&"none"!==a.data.state},"useNetwork",0,function(){let a=p();return(0,e.useConsoleRead)({queryKey:n,queryFn:()=>(0,f.fetchConsoleRead)({read:"network"}),enabled:a})},"useNetworkingPluginSettings",0,o,"useSaveNetworkDeclaration",0,function(){let a=(0,c.useQueryClient)();return(0,b.useMutation)({mutationFn:async a=>(0,k.dataOf)(await i(a)),onSuccess:b=>{a.setQueryData(n,a=>void 0===a?void 0:{...a,declaration:b.declaration})}})},"useSaveNetworkRules",0,function(){let a=(0,l.useTRPC)(),d=(0,c.useQueryClient)();return(0,b.useMutation)({mutationFn:async a=>(0,k.dataOf)(await j(a)),onSuccess:async b=>{d.setQueryData(n,a=>void 0===a?void 0:{...a,rules:b.rules}),await d.invalidateQueries({queryKey:a.fleet.explainReach.pathKey()})}})}],28562)},68450,a=>{"use strict";let b;var c=a.i(72131);let d=Date.now(),e=new Set;function f(a){return e.add(a),b??=setInterval(()=>{for(let a of(d=Date.now(),e))a()},1e4),()=>{e.delete(a),0===e.size&&(clearInterval(b),b=void 0)}}function g(){return d}a.s(["useNow",0,function(){return new Date((0,c.useSyncExternalStore)(f,g,g))}])},34159,60271,a=>{"use strict";var b=a.i(65563),c=a.i(90146),d=a.i(6071);function e(a,b){return a.filter(a=>(function(a,b){if("retired"===a.status)return!1;let c=(0,d.crewRequestStage)(a);return b.hasTrierarchs?"needsCrew"===c.kind||"assigned"===c.kind&&"running"!==c.status&&"releasing"!==c.status:"needsCrew"===c.kind&&"awaitingCrew"===a.status})(a,b)).toSorted((a,b)=>(a.crewRequest?.requestedAt??"").localeCompare(b.crewRequest?.requestedAt??""))}let f={crewing:{tone:"active",word:"Crewing"},running:{tone:"ok",word:"Running"},restarting:{tone:"waiting",word:"Restarting"},crashed:{tone:"attention",word:"Crashed"},releasing:{tone:"active",word:"Releasing"}};a.s(["crewRequestKey",0,function(a){return"assigned"===a.kind?a.status:a.kind},"crewRequestKeyWord",0,function(a){return"none"===a?"No request":"needsCrew"===a?"Needs crew":"crewedByHand"===a?"Crewed by hand":f[a].word},"crewRequestKeysOf",0,function(a){return["none","needsCrew","crewedByHand",...a]},"handCrewOf",0,function(a){return null===a.startingPrompt?{kind:"no-prompt"}:a.startingPrompt.isClaimed?{kind:"crew-ended",endedAt:a.awaitingCrewSince}:{kind:"prompt-unclaimed",issuedAt:a.startingPrompt.issuedAt}},"needsCrew",0,e],60271);var g=a.i(28562),h=a.i(54763),i=a.i(29931),j=a.i(93454);a.s(["usePluginNav",0,function(){let a=(0,b.useAccess)(),d=(0,h.useHasSquadrons)(),f=(0,j.useHasTrierarchPlugin)(),k=(0,g.useHasNetworkingPlugin)(),l=(0,g.useHasNetwork)(),m=(0,j.useMachines)(),n=(0,c.useFleetSnapshot)();return{...void 0===n.data?{}:{needsCrewCount:e(n.data,{hasTrierarchs:f}).length},hasSquadrons:d,hasTrierarchs:f,...void 0===m.data?{}:{trierarchsCount:(0,i.silentCount)(m.data)},hasNetwork:l,hasSettings:a.canManage&&(d||f||k)}}],34159)}];
2
2
 
3
- //# sourceMappingURL=packages_console_1mg652q._.js.map
3
+ //# sourceMappingURL=packages_console_1myu9eb._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[43020,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_13q51ov._.js"].map(b=>a.l(b))).then(()=>b(52702)))},94191,a=>{a.v(b=>Promise.all(["server/chunks/ssr/packages_console_components_1zx3jz4._.js"].map(b=>a.l(b))).then(()=>b(58864)))},53831,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_1qde2ge._.js","server/chunks/ssr/packages_console_components_atoms_input_tsx_0ux0uln._.js"].map(b=>a.l(b))).then(()=>b(80459)))},68359,a=>{a.v(b=>Promise.all(["server/chunks/ssr/packages_console_components_1s1xs87._.js"].map(b=>a.l(b))).then(()=>b(44344)))},15695,a=>{a.v(b=>Promise.all(["server/chunks/ssr/packages_console_1foyyva._.js"].map(b=>a.l(b))).then(()=>b(51543)))},66785,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_02ozs01._.js","server/chunks/ssr/packages_console_components_atoms_input_tsx_0ux0uln._.js"].map(b=>a.l(b))).then(()=>b(50916)))},65537,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_0nmqout._.js","server/chunks/ssr/packages_console_components_atoms_input_tsx_0ux0uln._.js"].map(b=>a.l(b))).then(()=>b(62921)))},86839,a=>{a.v(b=>Promise.all(["server/chunks/ssr/packages_console_features_ship_organisms_message-sheet_tsx_0quy9k0._.js"].map(b=>a.l(b))).then(()=>b(60792)))},63219,a=>{a.v(b=>Promise.all(["server/chunks/ssr/packages_console_0-cynql._.js","server/chunks/ssr/packages_console_components_atoms_select_tsx_1v_3j3i._.js","server/chunks/ssr/_1eftnop._.js"].map(b=>a.l(b))).then(()=>b(46502)))}];
1
+ module.exports=[43020,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_13q51ov._.js"].map(b=>a.l(b))).then(()=>b(52702)))},94191,a=>{a.v(b=>Promise.all(["server/chunks/ssr/packages_console_components_1zx3jz4._.js"].map(b=>a.l(b))).then(()=>b(58864)))},53831,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_1qde2ge._.js","server/chunks/ssr/packages_console_components_atoms_input_tsx_0ux0uln._.js"].map(b=>a.l(b))).then(()=>b(80459)))},68359,a=>{a.v(b=>Promise.all(["server/chunks/ssr/packages_console_components_1s1xs87._.js"].map(b=>a.l(b))).then(()=>b(44344)))},15695,a=>{a.v(b=>Promise.all(["server/chunks/ssr/packages_console_1foyyva._.js"].map(b=>a.l(b))).then(()=>b(51543)))},66785,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_02ozs01._.js","server/chunks/ssr/packages_console_components_atoms_input_tsx_0ux0uln._.js"].map(b=>a.l(b))).then(()=>b(50916)))},65537,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_0nmqout._.js","server/chunks/ssr/packages_console_components_atoms_input_tsx_0ux0uln._.js"].map(b=>a.l(b))).then(()=>b(62921)))},66094,a=>{a.v(b=>Promise.all(["server/chunks/ssr/packages_console_features_ship_ui_organisms_message-sheet_tsx_08bg9ly._.js"].map(b=>a.l(b))).then(()=>b(97201)))},30796,a=>{a.v(b=>Promise.all(["server/chunks/ssr/packages_console_11eh-8v._.js","server/chunks/ssr/packages_console_components_atoms_select_tsx_1v_3j3i._.js","server/chunks/ssr/_1eftnop._.js"].map(b=>a.l(b))).then(()=>b(14481)))}];
2
2
 
3
- //# sourceMappingURL=packages_console_1932jy8._.js.map
3
+ //# sourceMappingURL=packages_console_1pds_ub._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[1526,a=>{"use strict";var b=a.i(1741),c=a.i(80213),d=a.i(2318),e=a.i(10021);a.s([],67695),a.i(67695),a.s(["0010f112d55b74380f8f413f46d62e842a4bb3e398",()=>c.connectNetworkingPlugin,"0025a4a9e47f54fd8c4e89d7c3ba3eff0f8f94a6a5",()=>b.connectSquadrons,"00504942d4e0bf674ec1e314a8b3bb1a2608d0a93c",()=>b.refreshCatalogue,"008942b55c97671f07eb5b0010b150c263b22ed856",()=>d.connectTrierarchPlugin,"4009d86c0e6f886cec1660fa31202296061ada4aac",()=>b.newCrewLine,"400a50e1a46d4cf3c9764c40ff90bd452cc7addc34",()=>c.saveNetworkRules,"400c25e7dffe7920758f9da2782442d7a80ee1d603",()=>d.joinMachine,"406583997907bed47f88e13ac8e7a43e9a94fd7a0b",()=>b.standDown,"4080b498edd63076fd092ac256d47b936c67f88ebd",()=>b.forceStandDown,"4085731954f97da9e497ddfcf03be5f7bc98427ba0",()=>c.saveNetworkDeclaration,"408843bf5d722478cb5268a7563c92a1d3fc5c0a40",()=>b.addMember,"40994eec252a0c7c1e550827b00c2ee595deb3176e",()=>b.removeMember,"40a40f99f97b5623d89fc1b915f73d16c2c33763c3",()=>e.answerQuestion,"40c53bf6653da32b2ccf3cb26cc7b2f9cab983d8cd",()=>b.removeRepository,"40c8327a1221857ea7398f609d085c8e5040b228ee",()=>b.addRepository,"40dc8708744441e4216f2f28710af4c1f7d9e3ba58",()=>b.formSquadron],1526)}];
1
+ module.exports=[1526,a=>{"use strict";var b=a.i(1741),c=a.i(80213),d=a.i(2318),e=a.i(10021);a.s([],67695),a.i(67695),a.s(["0076d368f7b1c7b110fabfc0320a7a65882b15675f",()=>b.refreshCatalogue,"009a9dd2c79cc9126c99ac2ff7655513b63d944f78",()=>c.connectNetworkingPlugin,"00eea1ef15ff74c54ffa7cdde5feba94075f8b2c07",()=>d.connectTrierarchPlugin,"00fbf801076232a27b3bc07186aa51d147ca895b14",()=>b.connectSquadrons,"400a6351d2c214948d5d92886760e02a5ca02bfec3",()=>d.joinMachine,"40186341a12770af13e9b31298dcd5538e89126e60",()=>c.saveNetworkDeclaration,"401e9018ab91de7805624058a330e0cb843b049db6",()=>b.standDown,"402070bc731a5a4d9be24f68ad462011db7e7b5c16",()=>b.formSquadron,"40212305ae0985a3d0e53cd865291d2d160605b358",()=>b.forceStandDown,"403127f114cafe01c447421adff043740443b137f2",()=>b.removeMember,"403ae89ecae1f74d24a7ace30d61344abcab6fea28",()=>e.answerQuestion,"4077ef07355825980390caf65d5aa215be2ad29918",()=>b.addRepository,"407de106003396f4fece5b1f91dd5398a4f084f2cc",()=>b.newCrewLine,"40aaf7f1fb4934d680a473bbbfc73abe291541796c",()=>c.saveNetworkRules,"40d5965364d3c37b3312310c5cce1cc7bce0af6e1e",()=>b.removeRepository,"40e60e62511b1571e60979acf17bb5ffb6a498b4ff",()=>b.addMember],1526)}];
2
2
 
3
3
  //# sourceMappingURL=packages_console__next-internal_server_app_%28console%29_inbox_page_actions_0q9_xye.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[52489,a=>{"use strict";var b=a.i(1741),c=a.i(80213),d=a.i(2318),e=a.i(10021);a.s([],44277),a.i(44277),a.s(["0010f112d55b74380f8f413f46d62e842a4bb3e398",()=>c.connectNetworkingPlugin,"0025a4a9e47f54fd8c4e89d7c3ba3eff0f8f94a6a5",()=>b.connectSquadrons,"00504942d4e0bf674ec1e314a8b3bb1a2608d0a93c",()=>b.refreshCatalogue,"008942b55c97671f07eb5b0010b150c263b22ed856",()=>d.connectTrierarchPlugin,"4009d86c0e6f886cec1660fa31202296061ada4aac",()=>b.newCrewLine,"400a50e1a46d4cf3c9764c40ff90bd452cc7addc34",()=>c.saveNetworkRules,"400c25e7dffe7920758f9da2782442d7a80ee1d603",()=>d.joinMachine,"406583997907bed47f88e13ac8e7a43e9a94fd7a0b",()=>b.standDown,"4080b498edd63076fd092ac256d47b936c67f88ebd",()=>b.forceStandDown,"4085731954f97da9e497ddfcf03be5f7bc98427ba0",()=>c.saveNetworkDeclaration,"408843bf5d722478cb5268a7563c92a1d3fc5c0a40",()=>b.addMember,"40994eec252a0c7c1e550827b00c2ee595deb3176e",()=>b.removeMember,"40a40f99f97b5623d89fc1b915f73d16c2c33763c3",()=>e.answerQuestion,"40c53bf6653da32b2ccf3cb26cc7b2f9cab983d8cd",()=>b.removeRepository,"40c8327a1221857ea7398f609d085c8e5040b228ee",()=>b.addRepository,"40dc8708744441e4216f2f28710af4c1f7d9e3ba58",()=>b.formSquadron],52489)}];
1
+ module.exports=[52489,a=>{"use strict";var b=a.i(1741),c=a.i(80213),d=a.i(2318),e=a.i(10021);a.s([],44277),a.i(44277),a.s(["0076d368f7b1c7b110fabfc0320a7a65882b15675f",()=>b.refreshCatalogue,"009a9dd2c79cc9126c99ac2ff7655513b63d944f78",()=>c.connectNetworkingPlugin,"00eea1ef15ff74c54ffa7cdde5feba94075f8b2c07",()=>d.connectTrierarchPlugin,"00fbf801076232a27b3bc07186aa51d147ca895b14",()=>b.connectSquadrons,"400a6351d2c214948d5d92886760e02a5ca02bfec3",()=>d.joinMachine,"40186341a12770af13e9b31298dcd5538e89126e60",()=>c.saveNetworkDeclaration,"401e9018ab91de7805624058a330e0cb843b049db6",()=>b.standDown,"402070bc731a5a4d9be24f68ad462011db7e7b5c16",()=>b.formSquadron,"40212305ae0985a3d0e53cd865291d2d160605b358",()=>b.forceStandDown,"403127f114cafe01c447421adff043740443b137f2",()=>b.removeMember,"403ae89ecae1f74d24a7ace30d61344abcab6fea28",()=>e.answerQuestion,"4077ef07355825980390caf65d5aa215be2ad29918",()=>b.addRepository,"407de106003396f4fece5b1f91dd5398a4f084f2cc",()=>b.newCrewLine,"40aaf7f1fb4934d680a473bbbfc73abe291541796c",()=>c.saveNetworkRules,"40d5965364d3c37b3312310c5cce1cc7bce0af6e1e",()=>b.removeRepository,"40e60e62511b1571e60979acf17bb5ffb6a498b4ff",()=>b.addMember],52489)}];
2
2
 
3
3
  //# sourceMappingURL=packages_console__next-internal_server_app_%28console%29_labels_page_actions_0tk7mqs.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[94521,a=>{"use strict";var b=a.i(1741),c=a.i(80213),d=a.i(2318),e=a.i(10021);a.s([],2155),a.i(2155),a.s(["0010f112d55b74380f8f413f46d62e842a4bb3e398",()=>c.connectNetworkingPlugin,"0025a4a9e47f54fd8c4e89d7c3ba3eff0f8f94a6a5",()=>b.connectSquadrons,"00504942d4e0bf674ec1e314a8b3bb1a2608d0a93c",()=>b.refreshCatalogue,"008942b55c97671f07eb5b0010b150c263b22ed856",()=>d.connectTrierarchPlugin,"4009d86c0e6f886cec1660fa31202296061ada4aac",()=>b.newCrewLine,"400a50e1a46d4cf3c9764c40ff90bd452cc7addc34",()=>c.saveNetworkRules,"400c25e7dffe7920758f9da2782442d7a80ee1d603",()=>d.joinMachine,"406583997907bed47f88e13ac8e7a43e9a94fd7a0b",()=>b.standDown,"4080b498edd63076fd092ac256d47b936c67f88ebd",()=>b.forceStandDown,"4085731954f97da9e497ddfcf03be5f7bc98427ba0",()=>c.saveNetworkDeclaration,"408843bf5d722478cb5268a7563c92a1d3fc5c0a40",()=>b.addMember,"40994eec252a0c7c1e550827b00c2ee595deb3176e",()=>b.removeMember,"40a40f99f97b5623d89fc1b915f73d16c2c33763c3",()=>e.answerQuestion,"40c53bf6653da32b2ccf3cb26cc7b2f9cab983d8cd",()=>b.removeRepository,"40c8327a1221857ea7398f609d085c8e5040b228ee",()=>b.addRepository,"40dc8708744441e4216f2f28710af4c1f7d9e3ba58",()=>b.formSquadron],94521)}];
1
+ module.exports=[94521,a=>{"use strict";var b=a.i(1741),c=a.i(80213),d=a.i(2318),e=a.i(10021);a.s([],2155),a.i(2155),a.s(["0076d368f7b1c7b110fabfc0320a7a65882b15675f",()=>b.refreshCatalogue,"009a9dd2c79cc9126c99ac2ff7655513b63d944f78",()=>c.connectNetworkingPlugin,"00eea1ef15ff74c54ffa7cdde5feba94075f8b2c07",()=>d.connectTrierarchPlugin,"00fbf801076232a27b3bc07186aa51d147ca895b14",()=>b.connectSquadrons,"400a6351d2c214948d5d92886760e02a5ca02bfec3",()=>d.joinMachine,"40186341a12770af13e9b31298dcd5538e89126e60",()=>c.saveNetworkDeclaration,"401e9018ab91de7805624058a330e0cb843b049db6",()=>b.standDown,"402070bc731a5a4d9be24f68ad462011db7e7b5c16",()=>b.formSquadron,"40212305ae0985a3d0e53cd865291d2d160605b358",()=>b.forceStandDown,"403127f114cafe01c447421adff043740443b137f2",()=>b.removeMember,"403ae89ecae1f74d24a7ace30d61344abcab6fea28",()=>e.answerQuestion,"4077ef07355825980390caf65d5aa215be2ad29918",()=>b.addRepository,"407de106003396f4fece5b1f91dd5398a4f084f2cc",()=>b.newCrewLine,"40aaf7f1fb4934d680a473bbbfc73abe291541796c",()=>c.saveNetworkRules,"40d5965364d3c37b3312310c5cce1cc7bce0af6e1e",()=>b.removeRepository,"40e60e62511b1571e60979acf17bb5ffb6a498b4ff",()=>b.addMember],94521)}];
2
2
 
3
3
  //# sourceMappingURL=packages_console__next-internal_server_app_%28console%29_page_actions_1ftjjyq.js.map