@aeolus-fleet/console 0.30.1 → 0.31.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) 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 +14 -14
  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 +14 -14
  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 +14 -14
  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 +14 -14
  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 +14 -14
  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 +14 -14
  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 +14 -14
  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 -2
  26. package/.next/standalone/packages/console/.next/server/app/(console)/page/server-reference-manifest.json +14 -14
  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 +14 -14
  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 +14 -14
  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 +14 -14
  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 -2
  40. package/.next/standalone/packages/console/.next/server/app/(console)/squadrons/blueprints/[name]/page/server-reference-manifest.json +14 -14
  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 -2
  44. package/.next/standalone/packages/console/.next/server/app/(console)/squadrons/page/server-reference-manifest.json +14 -14
  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 +14 -14
  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 +14 -14
  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 +14 -14
  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/argo/confirm/page.js.nft.json +1 -1
  65. package/.next/standalone/packages/console/.next/server/app/sign-in/argo/confirm/page_client-reference-manifest.js +1 -1
  66. package/.next/standalone/packages/console/.next/server/app/sign-in/argo/out/route.js.nft.json +1 -1
  67. package/.next/standalone/packages/console/.next/server/app/sign-in/argo/refused/page.js.nft.json +1 -1
  68. package/.next/standalone/packages/console/.next/server/app/sign-in/argo/refused/page_client-reference-manifest.js +1 -1
  69. package/.next/standalone/packages/console/.next/server/app/sign-in/argo/route.js.nft.json +1 -1
  70. package/.next/standalone/packages/console/.next/server/app/sign-in/failed/page.js.nft.json +1 -1
  71. package/.next/standalone/packages/console/.next/server/app/sign-in/failed/page_client-reference-manifest.js +1 -1
  72. package/.next/standalone/packages/console/.next/server/app/sign-in/no-rights/page.js.nft.json +1 -1
  73. package/.next/standalone/packages/console/.next/server/app/sign-in/no-rights/page_client-reference-manifest.js +1 -1
  74. package/.next/standalone/packages/console/.next/server/app/sign-in/nothing-to-manage/page.js.nft.json +1 -1
  75. package/.next/standalone/packages/console/.next/server/app/sign-in/nothing-to-manage/page_client-reference-manifest.js +1 -1
  76. package/.next/standalone/packages/console/.next/server/app/sign-in/page.js.nft.json +1 -1
  77. package/.next/standalone/packages/console/.next/server/app/sign-in/page_client-reference-manifest.js +1 -1
  78. package/.next/standalone/packages/console/.next/server/app/sign-in/unreachable/page.js.nft.json +1 -1
  79. package/.next/standalone/packages/console/.next/server/app/sign-in/unreachable/page_client-reference-manifest.js +1 -1
  80. package/.next/standalone/packages/console/.next/server/app/version/route.js.nft.json +1 -1
  81. package/.next/standalone/packages/console/.next/server/chunks/[root-of-the-server]__0-b_d8j._.js +1 -1
  82. package/.next/standalone/packages/console/.next/server/chunks/[root-of-the-server]__0w4s32w._.js +1 -1
  83. package/.next/standalone/packages/console/.next/server/chunks/[root-of-the-server]__1c0qgbj._.js +1 -1
  84. package/.next/standalone/packages/console/.next/server/chunks/_1uqphll._.js +1 -1
  85. package/.next/standalone/packages/console/.next/server/chunks/ssr/{_1ia6sfj._.js → _022r12n._.js} +1 -1
  86. package/.next/standalone/packages/console/.next/server/chunks/ssr/_02sf-6u._.js +1 -1
  87. package/.next/standalone/packages/console/.next/server/chunks/ssr/{_20ltycf._.js → _05noh6w._.js} +2 -2
  88. package/.next/standalone/packages/console/.next/server/chunks/ssr/_07_cqry._.js +1 -1
  89. package/.next/standalone/packages/console/.next/server/chunks/ssr/_0bdsmu0._.js +1 -1
  90. package/.next/standalone/packages/console/.next/server/chunks/ssr/{_18owi6c._.js → _0is0iyt._.js} +2 -2
  91. package/.next/standalone/packages/console/.next/server/chunks/ssr/_0j-afyt._.js +3 -0
  92. package/.next/standalone/packages/console/.next/server/chunks/ssr/_0nbjb5h._.js +1 -1
  93. package/.next/standalone/packages/console/.next/server/chunks/ssr/_0qux6-9._.js +1 -1
  94. package/.next/standalone/packages/console/.next/server/chunks/ssr/{_135805g._.js → _0sravq5._.js} +2 -2
  95. package/.next/standalone/packages/console/.next/server/chunks/ssr/_14ww2ld._.js +1 -1
  96. package/.next/standalone/packages/console/.next/server/chunks/ssr/_15whprd._.js +3 -0
  97. package/.next/standalone/packages/console/.next/server/chunks/ssr/_1bc8get._.js +1 -1
  98. package/.next/standalone/packages/console/.next/server/chunks/ssr/_1bmxy9n._.js +3 -0
  99. package/.next/standalone/packages/console/.next/server/chunks/ssr/_1e2tdd6._.js +1 -1
  100. package/.next/standalone/packages/console/.next/server/chunks/ssr/_1fthxzz._.js +3 -0
  101. package/.next/standalone/packages/console/.next/server/chunks/ssr/_1hsu1v2._.js +1 -1
  102. package/.next/standalone/packages/console/.next/server/chunks/ssr/_1u0h4gj._.js +1 -1
  103. package/.next/standalone/packages/console/.next/server/chunks/ssr/{_0h-jnay._.js → _1vleg6y._.js} +1 -1
  104. package/.next/standalone/packages/console/.next/server/chunks/ssr/_1ymusis._.js +1 -1
  105. package/.next/standalone/packages/console/.next/server/chunks/ssr/_20j7vun._.js +1 -1
  106. package/.next/standalone/packages/console/.next/server/chunks/ssr/node_modules_zod_v4_classic_external_15fmmz3.js +1 -1
  107. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_03-f8b4._.js +1 -1
  108. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_10js6wa._.js +1 -1
  109. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_00qg_s6._.js +1 -1
  110. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_02v53na._.js +1 -1
  111. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_02wkudy._.js +1 -1
  112. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_04rox65._.js +1 -1
  113. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_05zitd2._.js +1 -1
  114. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_065nea1._.js +1 -1
  115. package/.next/standalone/packages/console/.next/server/chunks/ssr/{packages_console_1qi485p._.js → packages_console_0d8_fed._.js} +1 -1
  116. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_0h_376h._.js +1 -1
  117. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_0ko_ogs._.js +1 -1
  118. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_0sr2-oa._.js +1 -1
  119. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_0ysbad7._.js +1 -1
  120. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_108sez2._.js +1 -1
  121. package/.next/standalone/packages/console/.next/server/chunks/ssr/{packages_console_1k1crw1._.js → packages_console_11f_j7c._.js} +1 -1
  122. package/.next/standalone/packages/console/.next/server/chunks/ssr/{packages_console_1e33jj3._.js → packages_console_16ys_pd._.js} +1 -1
  123. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_1jy5-0g._.js +1 -1
  124. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_1n8w8x0._.js +1 -1
  125. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_1oz8iu7._.js +1 -1
  126. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_1rdu3gt._.js +1 -1
  127. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_1yfimad._.js +1 -1
  128. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_app_(console)_fleet-health_page_tsx_0vcosw1._.js +1 -1
  129. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_app_(console)_network_network-page_tsx_0qc3h-9._.js +1 -1
  130. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_app_(console)_ships_[shipId]_ship-page_tsx_0oahz0r._.js +1 -1
  131. package/.next/standalone/packages/console/.next/server/chunks/ssr/{packages_console_components_organisms_crew-line-dialog_tsx_11y3we6._.js → packages_console_components_organisms_crew-line-dialog_tsx_1l818ht._.js} +1 -1
  132. package/.next/standalone/packages/console/.next/server/chunks/ssr/packages_console_features_ship_ui_organisms_message-sheet_tsx_08bg9ly._.js +1 -1
  133. package/.next/standalone/packages/console/.next/server/chunks/ssr/{packages_console_features_squadrons_organisms_form-squadron-dialog_tsx_04jnwy5._.js → packages_console_features_squadrons_organisms_form-squadron-dialog_tsx_06m8azk._.js} +1 -1
  134. package/.next/standalone/packages/console/.next/server/middleware-build-manifest.js +3 -3
  135. package/.next/standalone/packages/console/.next/server/pages/500.html +1 -1
  136. package/.next/standalone/packages/console/.next/server/server-reference-manifest.js +1 -1
  137. package/.next/standalone/packages/console/.next/server/server-reference-manifest.json +15 -15
  138. package/.next/standalone/packages/console/.next/static/chunks/0_3x64wrf-bcc.js +1 -0
  139. package/.next/standalone/packages/console/.next/static/chunks/{3v8kvo897cw7g.js → 0kcev3l5eyvux.js} +1 -1
  140. package/.next/standalone/packages/console/.next/static/chunks/{09i8egz-ukq1h.js → 19h1iu002omr_.js} +1 -1
  141. package/.next/standalone/packages/console/.next/static/chunks/{23rmynijvqsdw.js → 1b36z114mad41.js} +1 -1
  142. package/.next/standalone/packages/console/.next/static/chunks/1odi-st5n0w9h.js +1 -0
  143. package/.next/standalone/packages/console/.next/static/chunks/{1z-37z24uifp1.js → 1sm_yeexx288v.js} +1 -1
  144. package/.next/standalone/packages/console/.next/static/chunks/{26lqmfd6v4qb4.js → 1tjv8rgwrbbg_.js} +1 -1
  145. package/.next/standalone/packages/console/.next/static/chunks/{0tzezbiiera4t.js → 1u5mjrw1qk334.js} +1 -1
  146. package/.next/standalone/packages/console/.next/static/chunks/{1q730nbf90lr2.js → 1z1jqbwrruy4-.js} +1 -1
  147. package/.next/standalone/packages/console/.next/static/chunks/{180jsws8b9eq6.js → 1z9u9wh2b5l6y.js} +1 -1
  148. package/.next/standalone/packages/console/.next/static/chunks/21xp9ny7yw3ug.js +1 -0
  149. package/.next/standalone/packages/console/.next/static/chunks/{2pkfao79haew9.js → 24yl55yxkaeaf.js} +1 -1
  150. package/.next/standalone/packages/console/.next/static/chunks/27qi3k10y-0hf.js +2 -0
  151. package/.next/standalone/packages/console/.next/static/chunks/2_qyhoh1hlhcy.js +1 -0
  152. package/.next/standalone/packages/console/.next/static/chunks/{0742dltqxo7l5.js → 2bid6ecbjoe6s.js} +1 -1
  153. package/.next/standalone/packages/console/.next/static/chunks/{0b8-il10o0ca2.js → 2bqxl5_u1hjjb.js} +1 -1
  154. package/.next/standalone/packages/console/.next/static/chunks/2cfixbtwii9hq.js +1 -0
  155. package/.next/standalone/packages/console/.next/static/chunks/2dkqrqvxmerj9.css +3 -0
  156. package/.next/standalone/packages/console/.next/static/chunks/2ggf3qa9xixed.js +1 -0
  157. package/.next/standalone/packages/console/.next/static/chunks/{3dqw9msbsb0t0.js → 2h98d1zd2s_t5.js} +1 -1
  158. package/.next/standalone/packages/console/.next/static/chunks/{19p4i84gnm2q6.js → 2l01iyjlu686-.js} +1 -1
  159. package/.next/standalone/packages/console/.next/static/chunks/{0rynbs46ao8hb.js → 2qicmwwvgn33n.js} +1 -1
  160. package/.next/standalone/packages/console/.next/static/chunks/{0jy978bstmu2h.js → 2tl2a2wz8thbf.js} +1 -1
  161. package/.next/standalone/packages/console/.next/static/chunks/{06v0wink6h9wc.js → 2xwbclmo1ptlk.js} +1 -1
  162. package/.next/standalone/packages/console/.next/static/chunks/{2u9g6rfau6qkb.js → 3a0odbvtvug2f.js} +1 -1
  163. package/.next/standalone/packages/console/.next/static/chunks/3q-rob7jfhbps.js +1 -0
  164. package/.next/standalone/packages/console/.next/static/chunks/{12tpena_m0td3.js → 3rm6d-05q8id3.js} +1 -1
  165. package/.next/standalone/packages/console/.next/static/chunks/{14t6zl5-m6-cv.js → 3v5kypqchkulb.js} +1 -1
  166. package/.next/standalone/packages/console/.next/static/chunks/{0lerfeqv17y3h.js → 3wn51b0ga8x5c.js} +1 -1
  167. package/.next/standalone/packages/console/.next/static/chunks/{20zd_xtfl07ru.js → 3ydi8zqssypls.js} +1 -1
  168. package/.next/standalone/packages/console/package.json +3 -3
  169. package/package.json +3 -3
  170. package/.next/standalone/packages/console/.next/server/chunks/ssr/0ysl_console_features_trierarchs_ui_organisms_clear-worktree-dialog_tsx_1cj5i3d._.js +0 -3
  171. package/.next/standalone/packages/console/.next/server/chunks/ssr/_085nqa_._.js +0 -3
  172. package/.next/standalone/packages/console/.next/server/chunks/ssr/_0rdbxnq._.js +0 -3
  173. package/.next/standalone/packages/console/.next/server/chunks/ssr/_1lrul1q._.js +0 -3
  174. package/.next/standalone/packages/console/.next/static/chunks/046j0y9wgycm0.js +0 -1
  175. package/.next/standalone/packages/console/.next/static/chunks/0bnl87gj176h5.js +0 -1
  176. package/.next/standalone/packages/console/.next/static/chunks/0mcbp_1hunti9.js +0 -1
  177. package/.next/standalone/packages/console/.next/static/chunks/0ofpruu2tcm_6.js +0 -1
  178. package/.next/standalone/packages/console/.next/static/chunks/194ocbg7a-yfj.js +0 -2
  179. package/.next/standalone/packages/console/.next/static/chunks/2_x-45vq7prtl.js +0 -1
  180. package/.next/standalone/packages/console/.next/static/chunks/2tj5-rkl0ps53.js +0 -1
  181. package/.next/standalone/packages/console/.next/static/chunks/3m5g2od7yc5cq.js +0 -1
  182. package/.next/standalone/packages/console/.next/static/chunks/3pbm8tp2tq5mv.css +0 -3
  183. /package/.next/standalone/packages/console/.next/static/{FhQ486AZAouB_wqS1YEzn → M3UCCsD3-uSl8HVucbFrh}/_buildManifest.js +0 -0
  184. /package/.next/standalone/packages/console/.next/static/{FhQ486AZAouB_wqS1YEzn → M3UCCsD3-uSl8HVucbFrh}/_clientMiddlewareManifest.js +0 -0
  185. /package/.next/standalone/packages/console/.next/static/{FhQ486AZAouB_wqS1YEzn → M3UCCsD3-uSl8HVucbFrh}/_ssgManifest.js +0 -0
@@ -1,3 +0,0 @@
1
- module.exports=[139977,a=>{"use strict";var b=a.i(164831);let c={name:"boxes",size:24,node:[["path",{d:"M2.97 12.92A2 2 0 0 0 2 14.63v3.24a2 2 0 0 0 .97 1.71l3 1.8a2 2 0 0 0 2.06 0L12 19v-5.5l-5-3-4.03 2.42Z",key:"lc1i9w"}],["path",{d:"m7 16.5-4.74-2.85",key:"1o9zyk"}],["path",{d:"m7 16.5 5-3",key:"va8pkn"}],["path",{d:"M7 16.5v5.17",key:"jnp8gn"}],["path",{d:"M12 13.5V19l3.97 2.38a2 2 0 0 0 2.06 0l3-1.8a2 2 0 0 0 .97-1.71v-3.24a2 2 0 0 0-.97-1.71L17 10.5l-5 3Z",key:"8zsnat"}],["path",{d:"m17 16.5-5-3",key:"8arw3v"}],["path",{d:"m17 16.5 4.74-2.85",key:"8rfmw"}],["path",{d:"M17 16.5v5.17",key:"k6z78m"}],["path",{d:"M7.97 4.42A2 2 0 0 0 7 6.13v4.37l5 3 5-3V6.13a2 2 0 0 0-.97-1.71l-3-1.8a2 2 0 0 0-2.06 0l-3 1.8Z",key:"1xygjf"}],["path",{d:"M12 8 7.26 5.15",key:"1vbdud"}],["path",{d:"m12 8 4.74-2.85",key:"3rx089"}],["path",{d:"M12 13.5V8",key:"1io7kd"}]]};c.node;let d=(0,b.default)(c);a.s(["Boxes",0,d],139977)},844561,239315,a=>{"use strict";var b=a.i(164831);let c={name:"folder-open",size:24,node:[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]]};c.node;let d=(0,b.default)(c);a.s(["FolderOpen",0,d],844561);let e={name:"git-branch",size:24,node:[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]]};e.node;let f=(0,b.default)(e);a.s(["GitBranch",0,f],239315)},403512,a=>{"use strict";var b=a.i(164831);let c={name:"plus",size:24,node:[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]};c.node;let d=(0,b.default)(c);a.s(["Plus",0,d],403512)},951675,a=>{"use strict";var b=a.i(164831);let c={name:"trash",size:24,node:[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],aliases:["trash-2"]};c.node;let d=(0,b.default)(c);a.s(["Trash2",0,d],951675)},77458,a=>{"use strict";a.s(["PAGE_SIZE_MAX",0,500])},136501,a=>{"use strict";var b=a.i(187924),c=a.i(139977),d=a.i(598238),e=a.i(23636),f=a.i(164831);let g={name:"tag-x",size:24,node:[["path",{d:"m16.5 6.5-3.914-3.914A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.43 2.43 0 0 0 3.42 0l1.79-1.79",key:"hu94c9"}],["path",{d:"m16.5 10.5 5 5",key:"1jo8bf"}],["path",{d:"m21.5 10.5-5 5",key:"jzei60"}],["circle",{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor",key:"kqv944"}]]};g.node;let h=(0,f.default)(g);var i=a.i(474215),j=a.i(483556),k=a.i(565230);let l={"trierarch-plugin":e.ShipWheel,squadrons:c.Boxes,ship:d.Ship,gone:h};a.s(["LabelChip",0,function({chip:a,onRemove:c,testId:d,className:e,trailing:f,meaning:g}){let h="none"===a.mark?null:l[a.mark],m=`${a.key}=${a.value}`,n=void 0===g?(0,k.chipTitleOf)(a):`${(0,k.chipTitleOf)(a)}. ${g}`;return(0,b.jsxs)("span",{role:"group","aria-label":n,"data-slot":"label-chip","data-testid":d,title:n,className:(0,j.classNames)("inline-flex h-5.5 max-w-full min-w-0 shrink-0 items-center gap-1 rounded-sm border border-border bg-secondary px-1.5 font-mono text-id whitespace-nowrap text-foreground [&_svg]:size-3 [&_svg]:shrink-0 [&_svg]:text-muted-foreground","gone"===a.mark?"border-dashed":null,e),children:[null===h?null:(0,b.jsx)(h,{"aria-hidden":!0}),(0,b.jsxs)("span",{className:"truncate",children:[(0,b.jsxs)("span",{className:"text-muted-foreground",children:[a.key,"="]}),(0,b.jsx)("span",{className:"font-medium",children:a.value})]}),f,void 0===c?null:(0,b.jsx)("button",{type:"button","aria-label":`Remove ${m}`,onClick:c,className:"-mr-1 ml-0.5 inline-flex size-4 items-center justify-center rounded-xs text-muted-foreground hover:bg-accent hover:text-foreground focus-visible:outline-2 focus-visible:outline-ring",children:(0,b.jsx)(i.X,{"aria-hidden":!0})})]})}],136501)},463511,113608,a=>{"use strict";var b=a.i(187924),c=a.i(164831);let d={name:"chevron-up",size:24,node:[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]};d.node;let e=(0,c.default)(d);a.s(["ChevronUp",0,e],113608);var f=a.i(572131),g=a.i(136501);a.s(["ShipLabels",0,function({chips:a}){let[c,d]=(0,f.useState)(!1);return 0===a.length?(0,b.jsx)("span",{className:"text-meta text-muted-foreground",children:"No labels"}):!c&&a.length>2?(0,b.jsxs)("span",{className:"flex min-w-0 flex-wrap items-center gap-1.5",children:[a.slice(0,2).map(a=>(0,b.jsx)(g.LabelChip,{chip:a,testId:"ship-label"},a.valueId)),(0,b.jsxs)("button",{type:"button","aria-label":`Show all ${String(a.length)} labels`,"data-testid":"ship-labels-more",className:"inline-flex h-5.5 items-center rounded-sm bg-secondary px-1.5 text-caption font-medium tabular-nums hover:bg-accent focus-visible:outline-2 focus-visible:outline-ring",onClick:()=>{d(!0)},children:["+",a.length-2]})]}):(0,b.jsxs)("span",{className:"flex min-w-0 flex-wrap items-center gap-1.5",children:[(function(a){let b=[];for(let c of a){let a="none"===c.mark?null:c.ownerName,d=b.find(b=>b.owner===a);void 0===d?b.push({owner:a,chips:[c]}):d.chips.push(c)}return b})(a).map(a=>(0,b.jsxs)("span",{className:"inline-flex flex-wrap items-center gap-1.5",children:[null===a.owner?null:(0,b.jsxs)("span",{className:"text-meta text-muted-foreground",children:["by ",a.owner]}),a.chips.map(a=>(0,b.jsx)(g.LabelChip,{chip:a,testId:"ship-label"},a.valueId))]},a.owner??"")),a.length>2?(0,b.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1 rounded-sm px-1 text-meta hover:bg-accent focus-visible:outline-2 focus-visible:outline-ring [&_svg]:size-(--size-icon-sm)",onClick:()=>{d(!1)},children:[(0,b.jsx)(e,{"aria-hidden":!0}),"Show fewer"]}):null]})}],463511)},935522,a=>{"use strict";var b=a.i(447582),c=a.i(77458),d=a.i(433217);async function e(a){let b,c=[];do{let d=await a(b);if("refused"===d.kind)return d;c.push(...d.data.items),b=d.data.nextCursor??void 0}while(void 0!==b)return{kind:"answered",data:c}}var f=a.i(190146),g=a.i(853272),h=a.i(514499);a.s(["useAssignedShips",0,function(a){let i=(0,h.useTRPC)(),j=(0,h.useTRPCClient)(),k=[...new Set(a)].toSorted(),l=(0,d.useQuery)({queryKey:i.fleet.list.queryKey({assignedTo:k}),queryFn:async()=>(0,g.dataOf)(await e(async a=>({kind:"answered",data:await j.fleet.list.query({assignedTo:k,cursor:a,limit:c.PAGE_SIZE_MAX})}))),enabled:void 0!==a&&k.length>0,refetchInterval:f.LAST_SEEN_REFRESH_MS,select:a=>a.filter(b.isInReadReach)});return void 0!==a&&0===k.length?[]:l.data}],935522)},831121,a=>{"use strict";var b=a.i(187924),c=a.i(483556),d=a.i(929931);let e={running:"bg-tone-ok-fg",crewing:"bg-tone-active-fg",releasing:"bg-tone-active-fg",restarting:"bg-tone-waiting-fg",crashed:"bg-tone-attention-fg"};a.s(["CapacityBar",0,function({spots:a,caps:f,unknownText:g="Unknown",testId:h}){let i=(0,d.capacityLine)(a,f);if(void 0===f||void 0===i)return(0,b.jsx)("span",{"data-testid":h,className:"text-meta text-muted-foreground",children:g});let j=Math.max(0,f.ships-a.length);return(0,b.jsxs)("span",{role:"img","aria-label":i,"data-testid":h,className:"inline-flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[(0,b.jsxs)("span",{"aria-hidden":!0,className:"inline-flex shrink-0 gap-0.5",children:[a.map((a,d)=>(0,b.jsx)("span",{title:`Spot ${String(d+1)}: ${a.name}, ${a.status}`,className:(0,c.classNames)("h-2 w-3 rounded-xs",e[a.status])},a.shipId)),Array.from({length:j},(c,d)=>(0,b.jsx)("span",{title:`Spot ${String(a.length+d+1)}: vacant`,className:"h-2 w-3 rounded-xs border border-input"},`free-${String(d)}`))]}),(0,b.jsx)("span",{className:"text-meta tabular-nums",children:i})]})}])},30465,a=>{"use strict";var b=a.i(187924),c=a.i(582260),d=a.i(256987),e=a.i(844561),f=a.i(239315),g=a.i(23636),h=a.i(26268),i=a.i(238246),j=a.i(506885),k=a.i(929931),l=a.i(872872),m=a.i(176166),n=a.i(831121),o=a.i(240108);let p={alive:"border-tone-ok-border bg-tone-ok-bg text-tone-ok-fg",silent:"border-tone-attention-border bg-tone-attention-bg text-tone-attention-fg","not-started":"border-tone-waiting-border bg-tone-waiting-bg text-tone-waiting-fg"},q={alive:"Alive",silent:"Not answering","not-started":"Not started"};function r({machine:a,now:c}){let e=(0,k.machineLiveness)(a),f=null===a.lastSeenAt?null:new Date(a.lastSeenAt);return(0,b.jsxs)("span",{className:"inline-flex flex-wrap items-center gap-x-2 gap-y-1 text-meta","data-testid":"machine-liveness","data-liveness":e,children:[(0,b.jsxs)(m.Badge,{variant:"outline",className:p[e],children:["alive"===e?(0,b.jsx)(g.ShipWheel,{"aria-hidden":!0}):(0,b.jsx)(d.CircleDashed,{"aria-hidden":!0}),q[e]]}),null===f?(0,b.jsx)("span",{className:"text-muted-foreground",children:"· run its setup line on the machine"}):(0,b.jsxs)("time",{dateTime:a.lastSeenAt??void 0,title:(0,l.fullDateTime)(f),className:"text-muted-foreground tabular-nums",children:["· ","silent"===e?`since ${(0,l.clockTime)(f)}`:(0,l.lastSeen)(f,c).replace("Last seen","seen")]})]})}function s(a,b){let c=(0,l.relativeTime)(a,b);return"Just now"===c?"just now":c}function t({title:a,children:c,className:d}){return(0,b.jsxs)("div",{className:`flex min-w-0 flex-col gap-2 px-4.5 py-4 ${d??""}`,children:[(0,b.jsx)("span",{className:"text-caption font-medium text-muted-foreground",children:a}),c]})}function u({harness:a,now:d}){let e=(0,j.harnessDetection)(a,d);return(0,b.jsxs)("div",{className:"flex flex-col gap-1.5 border-t border-border py-2.5 first-of-type:border-t-0 first-of-type:pt-0",children:[(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-body font-medium [&_svg]:size-(--size-icon-sm) [&_svg]:text-muted-foreground",children:[(0,b.jsx)(c.Bot,{"aria-hidden":!0}),(0,j.harnessWord)(a.harness),void 0===e?null:(0,b.jsx)("span",{className:"font-normal text-meta text-muted-foreground",children:e})]}),(0,k.harnessOptions)(a.options).map(a=>(0,b.jsxs)("span",{className:"flex flex-wrap items-center gap-x-2.5 gap-y-1 text-meta",children:[(0,b.jsx)("span",{className:"text-muted-foreground",children:a.name}),a.values.map(c=>(0,b.jsxs)("span",{className:"font-mono text-id whitespace-nowrap",children:[c,c===a.defaultValue?(0,b.jsx)("span",{className:"font-sans text-muted-foreground",children:" (default)"}):null]},c))]},a.name)),0===a.flags.length?null:(0,b.jsx)("span",{className:"flex flex-wrap items-center gap-1.5",children:a.flags.map(c=>a.riskyFlags?.includes(c)===!0?(0,b.jsxs)("code",{"data-testid":"machine-risky-flag",title:"Risky: every launch runs without its harness's safeguards",className:"inline-flex items-center gap-1 rounded-sm border border-tone-waiting-border bg-tone-waiting-bg px-1.5 font-mono text-id text-tone-waiting-fg [&_svg]:size-(--size-icon-sm)",children:[(0,b.jsx)(h.TriangleAlert,{"aria-hidden":!0}),c,(0,b.jsx)("span",{className:"sr-only",children:" (risky)"})]},c):(0,b.jsx)("code",{className:"rounded-sm bg-muted px-1.5 font-mono text-id",children:c},c))})]})}function v({title:a,icon:c,names:d}){return(0,b.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,b.jsx)("span",{className:"text-caption text-muted-foreground",children:a}),0===d.length?(0,b.jsx)("span",{className:"text-meta text-muted-foreground",children:"None"}):d.map(a=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-meta [&_svg]:size-(--size-icon-sm) [&_svg]:shrink-0 [&_svg]:text-muted-foreground",children:[c,a]},a))]})}function w({workspaces:a}){return(0,b.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,b.jsx)(v,{title:"Repositories · a new worktree per ship",icon:(0,b.jsx)(f.GitBranch,{"aria-hidden":!0}),names:a.repositories}),(0,b.jsx)(v,{title:"Folders · used as they are",icon:(0,b.jsx)(e.FolderOpen,{"aria-hidden":!0}),names:a.folders})]})}a.s(["HarnessOffer",0,u,"MachineCard",0,function({machine:a,spots:c,location:d,now:e}){let{details:f,report:h}=a,j=null===h?null:new Date(h.reportedAt);return(0,b.jsxs)("section",{"aria-label":a.name,"data-testid":"machine-card",className:"grid grid-cols-[minmax(0,18.75rem)_minmax(0,1.25fr)_minmax(0,1fr)] divide-x divide-border rounded-lg border border-border bg-card shadow-sm max-lg:grid-cols-1 max-lg:divide-x-0 max-lg:divide-y",children:[(0,b.jsxs)("div",{className:"flex min-w-0 flex-col gap-2.5 px-4.5 py-4",children:[(0,b.jsxs)(i.default,{href:`/trierarchs/${a.shipId}`,"data-testid":"machine-card-name",className:"inline-flex items-center gap-2 text-section font-semibold hover:underline [&_svg]:size-(--size-icon) [&_svg]:text-muted-foreground",children:[(0,b.jsx)(g.ShipWheel,{"aria-hidden":!0}),a.name]}),(0,b.jsx)(r,{machine:a,now:e}),(0,b.jsxs)("span",{className:"flex flex-wrap items-center gap-1.5 text-meta text-muted-foreground",children:[(0,b.jsx)(o.LocationTag,{kind:d?.kind??null,description:d?.description}),null===f?null:(0,b.jsxs)("span",{className:"font-mono text-id",children:["· trierarch ",f.version]})]}),(0,b.jsx)("div",{role:"separator",className:"h-px bg-border"}),(0,b.jsx)("span",{className:"text-caption font-medium text-muted-foreground",children:"Capacity"}),(0,b.jsx)(n.CapacityBar,{spots:c,caps:f?.caps,testId:"machine-card-capacity",unknownText:null===j?"Unknown until it answers":`Unknown since ${(0,l.clockTime)(j)}`}),null===j?null:(0,b.jsxs)("time",{dateTime:h?.reportedAt,title:(0,l.fullDateTime)(j),className:"text-meta text-muted-foreground",children:["Last answer ",s(j,e)]})]}),(0,b.jsx)(t,{title:"Harnesses, options and flags",children:null===f?(0,b.jsx)("span",{className:"text-meta text-muted-foreground",children:"Unknown until it answers"}):f.harnesses.map(a=>(0,b.jsx)(u,{harness:a,now:e},a.harness))}),(0,b.jsx)(t,{title:"Workspaces",children:null===f?(0,b.jsx)("span",{className:"text-meta text-muted-foreground",children:"Unknown until it answers"}):(0,b.jsx)(w,{workspaces:f.workspaces})})]})},"MachineLiveness",0,r,"WorkspaceOffer",0,w,"lastAnswer",0,s])},842194,a=>{"use strict";var b=a.i(187924),c=a.i(403512),d=a.i(23636),e=a.i(525212),f=a.i(238246),g=a.i(929931),h=a.i(831856),i=a.i(24173),j=a.i(240392),k=a.i(350808),l=a.i(30465);a.s(["MachineList",0,function({connection:a,machines:m,ships:n,error:o,onRetry:p,onJoin:q,now:r}){return"none"===a?(0,b.jsx)(i.EmptyState,{icon:(0,b.jsx)(d.ShipWheel,{"aria-hidden":!0}),title:"The trierarch plugin is not set up for this fleet",description:"Crew requests work without it: they wait on Needs crew and you crew each ship by hand with its starting prompt. With the plugin, trierarchs on your machines start, restart and stop those sessions for you.",action:(0,b.jsx)(h.Button,{nativeButton:!1,render:({children:a,...c})=>(0,b.jsx)("a",{href:"https://github.com/ThomasHendrickx/aeolus-fleet-trierarch-plugin/tree/main/packages/trierarch-plugin#readme",target:"_blank",rel:"noreferrer",...c,children:a}),"data-testid":"trierarchs-setup",children:"How to set up the trierarch plugin"})}):"not-connected"===a?(0,b.jsx)(i.EmptyState,{icon:(0,b.jsx)(e.Unplug,{"aria-hidden":!0}),title:"The trierarch plugin is not connected",description:"Connect it in Settings; its machines show up here then.",action:(0,b.jsx)(h.Button,{nativeButton:!1,render:(0,b.jsx)(f.default,{href:"/settings"}),"data-testid":"trierarchs-open-settings",children:"Open Settings"})}):void 0!==o?(0,b.jsx)(j.InlineError,{variant:"page",title:"Couldn’t read the machines",description:"Nothing changed.",detail:o,onRetry:p}):void 0===m||"unknown"===a?(0,b.jsx)(k.LoadingSkeleton,{variant:"cards",rows:2,label:"Loading the machines"}):0===m.length?(0,b.jsx)(i.EmptyState,{icon:(0,b.jsx)(d.ShipWheel,{"aria-hidden":!0}),title:"No machines yet",description:"Join a machine: its trierarch then starts sessions there for the crew requests the plugin gives it.",action:q?(0,b.jsx)(h.Button,{variant:"primary",icon:(0,b.jsx)(c.Plus,{"aria-hidden":!0}),onClick:q,"data-testid":"trierarchs-join-empty",children:"Join a machine"}):void 0}):(0,b.jsx)("div",{className:"flex flex-col gap-4","data-testid":"machine-list",children:m.map(a=>(0,b.jsx)(l.MachineCard,{machine:a,spots:(0,g.spotsOf)(a,n),location:n.find(b=>b.id===a.shipId)?.location??null,now:r},a.shipId))})}])},206071,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}])},817024,a=>{"use strict";var b=a.i(262700),c=a.i(633308);a.s(["useCrewSettings",0,function(a){let d=(0,b.useConsoleRead)({queryKey:["crew-settings",JSON.stringify(a)],queryFn:()=>(0,c.fetchConsoleRead)({read:"crew-settings",input:{settings:[...a]}}),enabled:a.length>0,staleTime:1/0});return 0===a.length?[]:d.data}])}];
2
-
3
- //# sourceMappingURL=_085nqa_._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[263359,a=>{"use strict";var b=a.i(164831);let c={name:"app-window",size:24,node:[["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}],["path",{d:"M10 4v4",key:"pp8u80"}],["path",{d:"M2 8h20",key:"d11cs7"}],["path",{d:"M6 4v4",key:"1svtjw"}]]};c.node;let d=(0,b.default)(c);a.s(["AppWindow",0,d],263359)},582260,a=>{"use strict";var b=a.i(164831);let c={name:"bot",size:24,node:[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]};c.node;let d=(0,b.default)(c);a.s(["Bot",0,d],582260)},256987,a=>{"use strict";var b=a.i(164831);let c={name:"circle-dashed",size:24,node:[["path",{d:"M10.1 2.182a10 10 0 0 1 3.8 0",key:"5ilxe3"}],["path",{d:"M13.9 21.818a10 10 0 0 1-3.8 0",key:"11zvb9"}],["path",{d:"M17.609 3.721a10 10 0 0 1 2.69 2.7",key:"1iw5b2"}],["path",{d:"M2.182 13.9a10 10 0 0 1 0-3.8",key:"c0bmvh"}],["path",{d:"M20.279 17.609a10 10 0 0 1-2.7 2.69",key:"1ruxm7"}],["path",{d:"M21.818 10.1a10 10 0 0 1 0 3.8",key:"qkgqxc"}],["path",{d:"M3.721 6.391a10 10 0 0 1 2.7-2.69",key:"1mcia2"}],["path",{d:"M6.391 20.279a10 10 0 0 1-2.69-2.7",key:"1fvljs"}]]};c.node;let d=(0,b.default)(c);a.s(["CircleDashed",0,d],256987)},844561,239315,a=>{"use strict";var b=a.i(164831);let c={name:"folder-open",size:24,node:[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]]};c.node;let d=(0,b.default)(c);a.s(["FolderOpen",0,d],844561);let e={name:"git-branch",size:24,node:[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]]};e.node;let f=(0,b.default)(e);a.s(["GitBranch",0,f],239315)},134532,a=>{"use strict";var b=a.i(164831);let c={name:"server",size:24,node:[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]]};c.node;let d=(0,b.default)(c);a.s(["Server",0,d],134532)},853783,a=>{"use strict";var b=a.i(164831);let c={name:"square-terminal",size:24,node:[["path",{d:"m7 11 2-2-2-2",key:"1lz0vl"}],["path",{d:"M11 13h4",key:"1p7l4v"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}]],aliases:["terminal-square"]};c.node;let d=(0,b.default)(c);a.s(["SquareTerminal",0,d],853783)},26268,a=>{"use strict";var b=a.i(164831);let c={name:"triangle-alert",size:24,node:[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],aliases:["alert-triangle"]};c.node;let d=(0,b.default)(c);a.s(["TriangleAlert",0,d],26268)},525212,a=>{"use strict";var b=a.i(164831);let c={name:"unplug",size:24,node:[["path",{d:"m19 5 3-3",key:"yk6iyv"}],["path",{d:"m2 22 3-3",key:"19mgm9"}],["path",{d:"M6.3 20.3a2.4 2.4 0 0 0 3.4 0L12 18l-6-6-2.3 2.3a2.4 2.4 0 0 0 0 3.4Z",key:"goz73y"}],["path",{d:"M7.5 13.5 10 11",key:"7xgeeb"}],["path",{d:"M10.5 16.5 13 14",key:"10btkg"}],["path",{d:"m12 6 6 6 2.3-2.3a2.4 2.4 0 0 0 0-3.4l-2.6-2.6a2.4 2.4 0 0 0-3.4 0Z",key:"1snsnr"}]]};c.node;let d=(0,b.default)(c);a.s(["Unplug",0,d],525212)},77458,a=>{"use strict";a.s(["PAGE_SIZE_MAX",0,500])},240108,a=>{"use strict";var b=a.i(187924),c=a.i(263359),d=a.i(582260),e=a.i(164831);let f={name:"cloud",size:24,node:[["path",{d:"M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z",key:"p7xjir"}]]};f.node;let g=(0,e.default)(f),h={name:"laptop",size:24,node:[["path",{d:"M18 5a2 2 0 0 1 2 2v8.526a2 2 0 0 0 .212.897l1.068 2.127a1 1 0 0 1-.9 1.45H3.62a1 1 0 0 1-.9-1.45l1.068-2.127A2 2 0 0 0 4 15.526V7a2 2 0 0 1 2-2z",key:"1pdavp"}],["path",{d:"M20.054 15.987H3.946",key:"14rxg9"}]]};h.node;let i=(0,e.default)(h),j={name:"map-pin",size:24,node:[["path",{d:"M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0",key:"1r0f0z"}],["circle",{cx:"12",cy:"10",r:"3",key:"ilqhr7"}]]};j.node;let k=(0,e.default)(j),l={name:"message-circle",size:24,node:[["path",{d:"M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719",key:"1sd12s"}]]};l.node;let m=(0,e.default)(l);var n=a.i(134532),o=a.i(853783),p=a.i(525212),q=a.i(483556),r=a.i(506885),s=a.i(629703);let t={DEVICE:i,CLOUD:g,SERVER:n.Server,OTHER:k},u={coding:o.SquareTerminal,chat:m,bot:d.Bot,console:c.AppWindow},v={md:"text-body",sm:"text-meta"};a.s(["LocationTag",0,function({kind:a,description:c=null,harness:d=null,isCompact:e=!1,size:f="md",className:g}){let h=(0,q.classNames)("inline-flex min-w-0 items-center gap-1.5 text-muted-foreground [&_svg]:size-(--size-icon-sm) [&_svg]:shrink-0",v[f],g);if(null===a)return(0,b.jsxs)("span",{"data-slot":"location-tag",className:h,children:[(0,b.jsx)(p.Unplug,{"aria-hidden":!0}),"No session"]});let i=t[a],j=(0,s.locationKindWord)(a),k=null===c?j:`${j} \xb7 ${c}`;if(null!==d){let a=(0,r.harnessKind)(d),e=void 0===a?void 0:u[a],f=(0,r.harnessWord)(d);return(0,b.jsxs)("span",{"data-slot":"location-tag",className:h,title:null===c?`${f} \xb7 ${j}`:`${f} \xb7 ${j}: ${c}`,children:[void 0===e?null:(0,b.jsx)(e,{"aria-hidden":!0}),(0,b.jsx)("span",{className:"truncate text-foreground",children:f}),(0,b.jsx)("span",{"aria-hidden":!0,children:"·"}),(0,b.jsx)(i,{"aria-hidden":!0}),(0,b.jsx)("span",{className:"truncate",children:j}),null===c?null:(0,b.jsxs)("span",{className:"sr-only",children:[": ",c]})]})}return e?(0,b.jsxs)("span",{"data-slot":"location-tag",className:h,title:k,children:[(0,b.jsx)(i,{"aria-hidden":!0}),(0,b.jsxs)("span",{className:"sr-only",children:[j,": "]}),(0,b.jsx)("span",{className:"truncate text-foreground",children:c??j})]}):(0,b.jsxs)("span",{"data-slot":"location-tag",className:h,children:[(0,b.jsx)(i,{"aria-hidden":!0}),(0,b.jsxs)("span",{className:"truncate",children:[j,null===c?null:(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{"aria-hidden":!0,children:" · "}),(0,b.jsx)("span",{className:"sr-only",children:", "}),(0,b.jsx)("span",{className:"text-foreground",children:c})]})]})]})}],240108)},935522,a=>{"use strict";var b=a.i(447582),c=a.i(77458),d=a.i(433217);async function e(a){let b,c=[];do{let d=await a(b);if("refused"===d.kind)return d;c.push(...d.data.items),b=d.data.nextCursor??void 0}while(void 0!==b)return{kind:"answered",data:c}}var f=a.i(190146),g=a.i(853272),h=a.i(514499);a.s(["useAssignedShips",0,function(a){let i=(0,h.useTRPC)(),j=(0,h.useTRPCClient)(),k=[...new Set(a)].toSorted(),l=(0,d.useQuery)({queryKey:i.fleet.list.queryKey({assignedTo:k}),queryFn:async()=>(0,g.dataOf)(await e(async a=>({kind:"answered",data:await j.fleet.list.query({assignedTo:k,cursor:a,limit:c.PAGE_SIZE_MAX})}))),enabled:void 0!==a&&k.length>0,refetchInterval:f.LAST_SEEN_REFRESH_MS,select:a=>a.filter(b.isInReadReach)});return void 0!==a&&0===k.length?[]:l.data}],935522)},831121,a=>{"use strict";var b=a.i(187924),c=a.i(483556),d=a.i(929931);let e={running:"bg-tone-ok-fg",crewing:"bg-tone-active-fg",releasing:"bg-tone-active-fg",restarting:"bg-tone-waiting-fg",crashed:"bg-tone-attention-fg"};a.s(["CapacityBar",0,function({spots:a,caps:f,unknownText:g="Unknown",testId:h}){let i=(0,d.capacityLine)(a,f);if(void 0===f||void 0===i)return(0,b.jsx)("span",{"data-testid":h,className:"text-meta text-muted-foreground",children:g});let j=Math.max(0,f.ships-a.length);return(0,b.jsxs)("span",{role:"img","aria-label":i,"data-testid":h,className:"inline-flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[(0,b.jsxs)("span",{"aria-hidden":!0,className:"inline-flex shrink-0 gap-0.5",children:[a.map((a,d)=>(0,b.jsx)("span",{title:`Spot ${String(d+1)}: ${a.name}, ${a.status}`,className:(0,c.classNames)("h-2 w-3 rounded-xs",e[a.status])},a.shipId)),Array.from({length:j},(c,d)=>(0,b.jsx)("span",{title:`Spot ${String(a.length+d+1)}: vacant`,className:"h-2 w-3 rounded-xs border border-input"},`free-${String(d)}`))]}),(0,b.jsx)("span",{className:"text-meta tabular-nums",children:i})]})}])},30465,a=>{"use strict";var b=a.i(187924),c=a.i(582260),d=a.i(256987),e=a.i(844561),f=a.i(239315),g=a.i(23636),h=a.i(26268),i=a.i(238246),j=a.i(506885),k=a.i(929931),l=a.i(872872),m=a.i(176166),n=a.i(831121),o=a.i(240108);let p={alive:"border-tone-ok-border bg-tone-ok-bg text-tone-ok-fg",silent:"border-tone-attention-border bg-tone-attention-bg text-tone-attention-fg","not-started":"border-tone-waiting-border bg-tone-waiting-bg text-tone-waiting-fg"},q={alive:"Alive",silent:"Not answering","not-started":"Not started"};function r({machine:a,now:c}){let e=(0,k.machineLiveness)(a),f=null===a.lastSeenAt?null:new Date(a.lastSeenAt);return(0,b.jsxs)("span",{className:"inline-flex flex-wrap items-center gap-x-2 gap-y-1 text-meta","data-testid":"machine-liveness","data-liveness":e,children:[(0,b.jsxs)(m.Badge,{variant:"outline",className:p[e],children:["alive"===e?(0,b.jsx)(g.ShipWheel,{"aria-hidden":!0}):(0,b.jsx)(d.CircleDashed,{"aria-hidden":!0}),q[e]]}),null===f?(0,b.jsx)("span",{className:"text-muted-foreground",children:"· run its setup line on the machine"}):(0,b.jsxs)("time",{dateTime:a.lastSeenAt??void 0,title:(0,l.fullDateTime)(f),className:"text-muted-foreground tabular-nums",children:["· ","silent"===e?`since ${(0,l.clockTime)(f)}`:(0,l.lastSeen)(f,c).replace("Last seen","seen")]})]})}function s(a,b){let c=(0,l.relativeTime)(a,b);return"Just now"===c?"just now":c}function t({title:a,children:c,className:d}){return(0,b.jsxs)("div",{className:`flex min-w-0 flex-col gap-2 px-4.5 py-4 ${d??""}`,children:[(0,b.jsx)("span",{className:"text-caption font-medium text-muted-foreground",children:a}),c]})}function u({harness:a,now:d}){let e=(0,j.harnessDetection)(a,d);return(0,b.jsxs)("div",{className:"flex flex-col gap-1.5 border-t border-border py-2.5 first-of-type:border-t-0 first-of-type:pt-0",children:[(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-body font-medium [&_svg]:size-(--size-icon-sm) [&_svg]:text-muted-foreground",children:[(0,b.jsx)(c.Bot,{"aria-hidden":!0}),(0,j.harnessWord)(a.harness),void 0===e?null:(0,b.jsx)("span",{className:"font-normal text-meta text-muted-foreground",children:e})]}),(0,k.harnessOptions)(a.options).map(a=>(0,b.jsxs)("span",{className:"flex flex-wrap items-center gap-x-2.5 gap-y-1 text-meta",children:[(0,b.jsx)("span",{className:"text-muted-foreground",children:a.name}),a.values.map(c=>(0,b.jsxs)("span",{className:"font-mono text-id whitespace-nowrap",children:[c,c===a.defaultValue?(0,b.jsx)("span",{className:"font-sans text-muted-foreground",children:" (default)"}):null]},c))]},a.name)),0===a.flags.length?null:(0,b.jsx)("span",{className:"flex flex-wrap items-center gap-1.5",children:a.flags.map(c=>a.riskyFlags?.includes(c)===!0?(0,b.jsxs)("code",{"data-testid":"machine-risky-flag",title:"Risky: every launch runs without its harness's safeguards",className:"inline-flex items-center gap-1 rounded-sm border border-tone-waiting-border bg-tone-waiting-bg px-1.5 font-mono text-id text-tone-waiting-fg [&_svg]:size-(--size-icon-sm)",children:[(0,b.jsx)(h.TriangleAlert,{"aria-hidden":!0}),c,(0,b.jsx)("span",{className:"sr-only",children:" (risky)"})]},c):(0,b.jsx)("code",{className:"rounded-sm bg-muted px-1.5 font-mono text-id",children:c},c))})]})}function v({title:a,icon:c,names:d}){return(0,b.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,b.jsx)("span",{className:"text-caption text-muted-foreground",children:a}),0===d.length?(0,b.jsx)("span",{className:"text-meta text-muted-foreground",children:"None"}):d.map(a=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-meta [&_svg]:size-(--size-icon-sm) [&_svg]:shrink-0 [&_svg]:text-muted-foreground",children:[c,a]},a))]})}function w({workspaces:a}){return(0,b.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,b.jsx)(v,{title:"Repositories · a new worktree per ship",icon:(0,b.jsx)(f.GitBranch,{"aria-hidden":!0}),names:a.repositories}),(0,b.jsx)(v,{title:"Folders · used as they are",icon:(0,b.jsx)(e.FolderOpen,{"aria-hidden":!0}),names:a.folders})]})}a.s(["HarnessOffer",0,u,"MachineCard",0,function({machine:a,spots:c,location:d,now:e}){let{details:f,report:h}=a,j=null===h?null:new Date(h.reportedAt);return(0,b.jsxs)("section",{"aria-label":a.name,"data-testid":"machine-card",className:"grid grid-cols-[minmax(0,18.75rem)_minmax(0,1.25fr)_minmax(0,1fr)] divide-x divide-border rounded-lg border border-border bg-card shadow-sm max-lg:grid-cols-1 max-lg:divide-x-0 max-lg:divide-y",children:[(0,b.jsxs)("div",{className:"flex min-w-0 flex-col gap-2.5 px-4.5 py-4",children:[(0,b.jsxs)(i.default,{href:`/trierarchs/${a.shipId}`,"data-testid":"machine-card-name",className:"inline-flex items-center gap-2 text-section font-semibold hover:underline [&_svg]:size-(--size-icon) [&_svg]:text-muted-foreground",children:[(0,b.jsx)(g.ShipWheel,{"aria-hidden":!0}),a.name]}),(0,b.jsx)(r,{machine:a,now:e}),(0,b.jsxs)("span",{className:"flex flex-wrap items-center gap-1.5 text-meta text-muted-foreground",children:[(0,b.jsx)(o.LocationTag,{kind:d?.kind??null,description:d?.description}),null===f?null:(0,b.jsxs)("span",{className:"font-mono text-id",children:["· trierarch ",f.version]})]}),(0,b.jsx)("div",{role:"separator",className:"h-px bg-border"}),(0,b.jsx)("span",{className:"text-caption font-medium text-muted-foreground",children:"Capacity"}),(0,b.jsx)(n.CapacityBar,{spots:c,caps:f?.caps,testId:"machine-card-capacity",unknownText:null===j?"Unknown until it answers":`Unknown since ${(0,l.clockTime)(j)}`}),null===j?null:(0,b.jsxs)("time",{dateTime:h?.reportedAt,title:(0,l.fullDateTime)(j),className:"text-meta text-muted-foreground",children:["Last answer ",s(j,e)]})]}),(0,b.jsx)(t,{title:"Harnesses, options and flags",children:null===f?(0,b.jsx)("span",{className:"text-meta text-muted-foreground",children:"Unknown until it answers"}):f.harnesses.map(a=>(0,b.jsx)(u,{harness:a,now:e},a.harness))}),(0,b.jsx)(t,{title:"Workspaces",children:null===f?(0,b.jsx)("span",{className:"text-meta text-muted-foreground",children:"Unknown until it answers"}):(0,b.jsx)(w,{workspaces:f.workspaces})})]})},"MachineLiveness",0,r,"WorkspaceOffer",0,w,"lastAnswer",0,s])},842194,a=>{"use strict";var b=a.i(187924),c=a.i(403512),d=a.i(23636),e=a.i(525212),f=a.i(238246),g=a.i(929931),h=a.i(831856),i=a.i(24173),j=a.i(240392),k=a.i(350808),l=a.i(30465);a.s(["MachineList",0,function({connection:a,machines:m,ships:n,error:o,onRetry:p,onJoin:q,now:r}){return"none"===a?(0,b.jsx)(i.EmptyState,{icon:(0,b.jsx)(d.ShipWheel,{"aria-hidden":!0}),title:"The trierarch plugin is not set up for this fleet",description:"Crew requests work without it: they wait on Needs crew and you crew each ship by hand with its starting prompt. With the plugin, trierarchs on your machines start, restart and stop those sessions for you.",action:(0,b.jsx)(h.Button,{nativeButton:!1,render:({children:a,...c})=>(0,b.jsx)("a",{href:"https://github.com/ThomasHendrickx/aeolus-fleet-trierarch-plugin/tree/main/packages/trierarch-plugin#readme",target:"_blank",rel:"noreferrer",...c,children:a}),"data-testid":"trierarchs-setup",children:"How to set up the trierarch plugin"})}):"not-connected"===a?(0,b.jsx)(i.EmptyState,{icon:(0,b.jsx)(e.Unplug,{"aria-hidden":!0}),title:"The trierarch plugin is not connected",description:"Connect it in Settings; its machines show up here then.",action:(0,b.jsx)(h.Button,{nativeButton:!1,render:(0,b.jsx)(f.default,{href:"/settings"}),"data-testid":"trierarchs-open-settings",children:"Open Settings"})}):void 0!==o?(0,b.jsx)(j.InlineError,{variant:"page",title:"Couldn’t read the machines",description:"Nothing changed.",detail:o,onRetry:p}):void 0===m||"unknown"===a?(0,b.jsx)(k.LoadingSkeleton,{variant:"cards",rows:2,label:"Loading the machines"}):0===m.length?(0,b.jsx)(i.EmptyState,{icon:(0,b.jsx)(d.ShipWheel,{"aria-hidden":!0}),title:"No machines yet",description:"Join a machine: its trierarch then starts sessions there for the crew requests the plugin gives it.",action:q?(0,b.jsx)(h.Button,{variant:"primary",icon:(0,b.jsx)(c.Plus,{"aria-hidden":!0}),onClick:q,"data-testid":"trierarchs-join-empty",children:"Join a machine"}):void 0}):(0,b.jsx)("div",{className:"flex flex-col gap-4","data-testid":"machine-list",children:m.map(a=>(0,b.jsx)(l.MachineCard,{machine:a,spots:(0,g.spotsOf)(a,n),location:n.find(b=>b.id===a.shipId)?.location??null,now:r},a.shipId))})}])},506885,a=>{"use strict";var b=a.i(872872);let c={"claude-code":{word:"Claude Code",kind:"coding"},codex:{word:"Codex",kind:"coding"},"claude-chat":{word:"Claude chat",kind:"chat"},chatgpt:{word:"ChatGPT",kind:"chat"},grok:{word:"Grok",kind:"chat"},grokbot:{word:"Grokbot",kind:"bot"},console:{word:"Console",kind:"console"}};function d(a){return c[a]?.word??a}a.s(["crewLineHarnessWord",0,function(a){return"chat"===a?"Chat":d(a)},"harnessDetection",0,function(a,c){if(void 0===a.version)return;if(void 0===a.modelsConfirmedAt||null===a.modelsConfirmedAt)return`${a.version} \xb7 no model confirmed`;let d=(0,b.relativeTime)(new Date(a.modelsConfirmedAt),c);return`${a.version} \xb7 models confirmed ${"Just now"===d?"just now":d}`},"harnessKind",0,function(a){return c[a]?.kind},"harnessWord",0,d])},629703,a=>{"use strict";let b={DEVICE:"Device",CLOUD:"Cloud",SERVER:"Server",OTHER:"Other"};a.s(["locationKindWord",0,function(a){return b[a]}])},210023,a=>{"use strict";var b=a.i(726112),c=a.i(370025),d=a.i(937927),e=a.i(328422),f=a.i(514499);function g(a){let b=String(a.attempts-1);return a.isPushed?`Handed ${b} times, never confirmed; fifth refused: undeliverable.`:`Handed (pulled) ${b} times, never acknowledged; fifth receive refused: undeliverable.`}let h="Acknowledged, then its turn died; handed once more, and that turn died too: not handled.";function i(){let a=(0,f.useTRPC)(),b=(0,d.useQueryClient)();return()=>b.invalidateQueries({queryKey:a.fleet.pathKey()})}a.s(["DISMISSED_TOAST",0,{title:"Delivery dismissed",description:"It stays in the timelines as dismissed."},"attentionReason",0,function(a){switch(a.state){case"undeliverable":return g(a);case"notHandled":return null===a.reason?h:`${h} Its crew said: ${a.reason}.`}},"canResend",0,function(a){return!a.message.isPing},"deliveryWithId",0,function(a,b){return a?.find(a=>a.deliveryId===b)},"resentToast",0,function(a){return{title:"Message resent",description:`A new message went to ${function(a){let{recipient:b}=a.message;return"ship"===b.kind?b.ship.name:`any ship of type ${b.type}`}(a)}. The original is dismissed.`}},"undeliverableReason",0,g,"useDismissDelivery",0,function(){let a=(0,f.useTRPC)(),b=i();return(0,c.useMutation)(a.fleet.dismiss.mutationOptions({onSuccess:b}))},"useNeedsAttention",0,function(a={}){let c=(0,f.useTRPC)();return(0,e.pagedListOf)((0,b.useInfiniteQuery)(c.fleet.needsAttention.infiniteQueryOptions({...a,limit:e.CONSOLE_PAGE_SIZE},{getNextPageParam:e.nextCursorOf})))},"useResendDelivery",0,function(){let a=(0,f.useTRPC)(),b=i();return(0,c.useMutation)(a.fleet.resend.mutationOptions({onSuccess:b}))}])}];
2
-
3
- //# sourceMappingURL=_0rdbxnq._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[844561,239315,a=>{"use strict";var b=a.i(164831);let c={name:"folder-open",size:24,node:[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]]};c.node;let d=(0,b.default)(c);a.s(["FolderOpen",0,d],844561);let e={name:"git-branch",size:24,node:[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]]};e.node;let f=(0,b.default)(e);a.s(["GitBranch",0,f],239315)},375971,a=>{"use strict";var b=a.i(187924),c=a.i(483556);let d={"on-time":{label:"On time",dot:"bg-tone-ok-fg",text:"text-tone-ok-fg"},late:{label:"Late",dot:"bg-tone-waiting-fg",text:"text-tone-waiting-fg"},silent:{label:"Silent",dot:"bg-tone-attention-fg",text:"text-tone-attention-fg"},"standing-down":{label:"Standing down",dot:"bg-tone-active-fg",text:"text-tone-active-fg"},"not-on-station":{label:"Not on station",dot:"border border-dashed border-muted-foreground",text:"text-foreground"}};function e({health:a}){return(0,b.jsx)("span",{"aria-hidden":!0,className:(0,c.classNames)("size-2 shrink-0 rounded-full",d[a].dot)})}a.s(["HealthIndicator",0,function({health:a,detail:f,className:g}){return(0,b.jsxs)("span",{"data-slot":"health-indicator","data-health":a,className:(0,c.classNames)("inline-flex items-center gap-1.5 text-meta",g),children:[(0,b.jsx)(e,{health:a}),(0,b.jsx)("span",{className:(0,c.classNames)("font-medium",d[a].text),children:d[a].label}),void 0!==f&&(0,b.jsx)("span",{className:"text-muted-foreground",children:f})]})},"HealthSummary",0,function({counts:a,className:f}){return(0,b.jsx)("span",{"data-slot":"health-summary",className:(0,c.classNames)("inline-flex flex-wrap items-center gap-x-3 gap-y-1 text-meta",f),children:a.map(({health:a,count:c})=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,b.jsx)(e,{health:a}),(0,b.jsxs)("span",{children:[c," ",d[a].label.toLowerCase()]})]},a))})}])},770534,a=>{"use strict";var b=a.i(187924),c=a.i(164831);let d={name:"chevrons-down",size:24,node:[["path",{d:"m7 6 5 5 5-5",key:"1lc07p"}],["path",{d:"m7 13 5 5 5-5",key:"1d48rs"}]]};d.node;let e=(0,c.default)(d);var f=a.i(831856),g=a.i(240392);a.s(["LoadMore",0,function({what:a,isLoading:c,isFailed:d,onLoad:h,area:i}){return d?(0,b.jsx)(g.InlineError,{title:`Couldn’t load ${a}`,description:"What is shown stays as it is. Try again in a moment.",onRetry:h,className:"m-3"}):(0,b.jsx)("div",{className:"flex justify-center border-t border-border px-3.5 py-2.5",children:(0,b.jsx)(f.Button,{size:"sm",variant:"ghost",icon:(0,b.jsx)(e,{"aria-hidden":!0}),isLoading:c,onClick:h,"data-testid":`${i}-load-more`,children:c?`Loading ${a}...`:`Load ${a}`})})}],770534)},858523,a=>{"use strict";var b=a.i(187924),c=a.i(331668),d=a.i(238246),e=a.i(483556);a.s(["SquadronTag",0,function({squadronId:a,role:f,size:g="md",className:h}){return(0,b.jsxs)(d.default,{href:`/squadrons/${a}`,"data-slot":"squadron-tag",className:(0,e.classNames)("inline-flex max-w-full items-center gap-1 rounded-sm bg-secondary px-1.5 text-secondary-foreground hover:underline [&_svg]:size-(--size-icon-sm) [&_svg]:shrink-0","sm"===g?"h-5.5 text-meta":"h-6 text-body",h),children:[(0,b.jsx)(c.Shapes,{"aria-hidden":!0}),(0,b.jsx)("span",{className:"truncate font-medium",children:a}),void 0!==f&&(0,b.jsxs)("span",{className:"shrink-0 text-muted-foreground",children:["· ",f]})]})}])},591003,a=>{"use strict";var b=a.i(187924),c=a.i(917256),d=a.i(831856),e=a.i(782247),f=a.i(363089);a.s(["ListPage",0,function({title:a,description:g,titleMeta:h,primaryAction:i,toolbar:j,live:k,onCompose:l,onSearch:m,switcher:n,account:o,banner:p,phoneTopBar:q,children:r}){return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(e.Header,{breadcrumb:a,live:k,switcher:n,account:o,onCompose:l,onSearch:m}),p,q??(0,b.jsx)(f.TopBar,{title:a,live:k,switcher:n,account:o,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:text-title-touch",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,r]})]})}])},941696,468710,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,"causePathOf",0,c,"causeTotalsOf",0,function(a){return b.flatMap(b=>a.byCause.filter(a=>a.cause===b))},"marksOf",0,function(a){let[b]=a.stuckPerHour;return void 0===b?[]:a.places.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){return new Map(a.byMachine.map(({machine:a,count:b})=>[a.id,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{count:b,places:c,oldestSince:d}=a.summary;return null===d?{kind:"delivering"}:{kind:"stuck",count:b,places:c,since:d,dayAgo:a.stuckPerHour.at(-25)?.count??0}},"waitMinutes",0,function(a,b){return Math.max(0,(b.getTime()-Date.parse(a))/6e4)},"waitPosition",0,i],941696);var k=a.i(187924),l=a.i(483556);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)}`))]})}],468710)},831121,a=>{"use strict";var b=a.i(187924),c=a.i(483556),d=a.i(929931);let e={running:"bg-tone-ok-fg",crewing:"bg-tone-active-fg",releasing:"bg-tone-active-fg",restarting:"bg-tone-waiting-fg",crashed:"bg-tone-attention-fg"};a.s(["CapacityBar",0,function({spots:a,caps:f,unknownText:g="Unknown",testId:h}){let i=(0,d.capacityLine)(a,f);if(void 0===f||void 0===i)return(0,b.jsx)("span",{"data-testid":h,className:"text-meta text-muted-foreground",children:g});let j=Math.max(0,f.ships-a.length);return(0,b.jsxs)("span",{role:"img","aria-label":i,"data-testid":h,className:"inline-flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[(0,b.jsxs)("span",{"aria-hidden":!0,className:"inline-flex shrink-0 gap-0.5",children:[a.map((a,d)=>(0,b.jsx)("span",{title:`Spot ${String(d+1)}: ${a.name}, ${a.status}`,className:(0,c.classNames)("h-2 w-3 rounded-xs",e[a.status])},a.shipId)),Array.from({length:j},(c,d)=>(0,b.jsx)("span",{title:`Spot ${String(a.length+d+1)}: vacant`,className:"h-2 w-3 rounded-xs border border-input"},`free-${String(d)}`))]}),(0,b.jsx)("span",{className:"text-meta tabular-nums",children:i})]})}])},30465,a=>{"use strict";var b=a.i(187924),c=a.i(582260),d=a.i(256987),e=a.i(844561),f=a.i(239315),g=a.i(23636),h=a.i(26268),i=a.i(238246),j=a.i(506885),k=a.i(929931),l=a.i(872872),m=a.i(176166),n=a.i(831121),o=a.i(240108);let p={alive:"border-tone-ok-border bg-tone-ok-bg text-tone-ok-fg",silent:"border-tone-attention-border bg-tone-attention-bg text-tone-attention-fg","not-started":"border-tone-waiting-border bg-tone-waiting-bg text-tone-waiting-fg"},q={alive:"Alive",silent:"Not answering","not-started":"Not started"};function r({machine:a,now:c}){let e=(0,k.machineLiveness)(a),f=null===a.lastSeenAt?null:new Date(a.lastSeenAt);return(0,b.jsxs)("span",{className:"inline-flex flex-wrap items-center gap-x-2 gap-y-1 text-meta","data-testid":"machine-liveness","data-liveness":e,children:[(0,b.jsxs)(m.Badge,{variant:"outline",className:p[e],children:["alive"===e?(0,b.jsx)(g.ShipWheel,{"aria-hidden":!0}):(0,b.jsx)(d.CircleDashed,{"aria-hidden":!0}),q[e]]}),null===f?(0,b.jsx)("span",{className:"text-muted-foreground",children:"· run its setup line on the machine"}):(0,b.jsxs)("time",{dateTime:a.lastSeenAt??void 0,title:(0,l.fullDateTime)(f),className:"text-muted-foreground tabular-nums",children:["· ","silent"===e?`since ${(0,l.clockTime)(f)}`:(0,l.lastSeen)(f,c).replace("Last seen","seen")]})]})}function s(a,b){let c=(0,l.relativeTime)(a,b);return"Just now"===c?"just now":c}function t({title:a,children:c,className:d}){return(0,b.jsxs)("div",{className:`flex min-w-0 flex-col gap-2 px-4.5 py-4 ${d??""}`,children:[(0,b.jsx)("span",{className:"text-caption font-medium text-muted-foreground",children:a}),c]})}function u({harness:a,now:d}){let e=(0,j.harnessDetection)(a,d);return(0,b.jsxs)("div",{className:"flex flex-col gap-1.5 border-t border-border py-2.5 first-of-type:border-t-0 first-of-type:pt-0",children:[(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-body font-medium [&_svg]:size-(--size-icon-sm) [&_svg]:text-muted-foreground",children:[(0,b.jsx)(c.Bot,{"aria-hidden":!0}),(0,j.harnessWord)(a.harness),void 0===e?null:(0,b.jsx)("span",{className:"font-normal text-meta text-muted-foreground",children:e})]}),(0,k.harnessOptions)(a.options).map(a=>(0,b.jsxs)("span",{className:"flex flex-wrap items-center gap-x-2.5 gap-y-1 text-meta",children:[(0,b.jsx)("span",{className:"text-muted-foreground",children:a.name}),a.values.map(c=>(0,b.jsxs)("span",{className:"font-mono text-id whitespace-nowrap",children:[c,c===a.defaultValue?(0,b.jsx)("span",{className:"font-sans text-muted-foreground",children:" (default)"}):null]},c))]},a.name)),0===a.flags.length?null:(0,b.jsx)("span",{className:"flex flex-wrap items-center gap-1.5",children:a.flags.map(c=>a.riskyFlags?.includes(c)===!0?(0,b.jsxs)("code",{"data-testid":"machine-risky-flag",title:"Risky: every launch runs without its harness's safeguards",className:"inline-flex items-center gap-1 rounded-sm border border-tone-waiting-border bg-tone-waiting-bg px-1.5 font-mono text-id text-tone-waiting-fg [&_svg]:size-(--size-icon-sm)",children:[(0,b.jsx)(h.TriangleAlert,{"aria-hidden":!0}),c,(0,b.jsx)("span",{className:"sr-only",children:" (risky)"})]},c):(0,b.jsx)("code",{className:"rounded-sm bg-muted px-1.5 font-mono text-id",children:c},c))})]})}function v({title:a,icon:c,names:d}){return(0,b.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,b.jsx)("span",{className:"text-caption text-muted-foreground",children:a}),0===d.length?(0,b.jsx)("span",{className:"text-meta text-muted-foreground",children:"None"}):d.map(a=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-meta [&_svg]:size-(--size-icon-sm) [&_svg]:shrink-0 [&_svg]:text-muted-foreground",children:[c,a]},a))]})}function w({workspaces:a}){return(0,b.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,b.jsx)(v,{title:"Repositories · a new worktree per ship",icon:(0,b.jsx)(f.GitBranch,{"aria-hidden":!0}),names:a.repositories}),(0,b.jsx)(v,{title:"Folders · used as they are",icon:(0,b.jsx)(e.FolderOpen,{"aria-hidden":!0}),names:a.folders})]})}a.s(["HarnessOffer",0,u,"MachineCard",0,function({machine:a,spots:c,location:d,now:e}){let{details:f,report:h}=a,j=null===h?null:new Date(h.reportedAt);return(0,b.jsxs)("section",{"aria-label":a.name,"data-testid":"machine-card",className:"grid grid-cols-[minmax(0,18.75rem)_minmax(0,1.25fr)_minmax(0,1fr)] divide-x divide-border rounded-lg border border-border bg-card shadow-sm max-lg:grid-cols-1 max-lg:divide-x-0 max-lg:divide-y",children:[(0,b.jsxs)("div",{className:"flex min-w-0 flex-col gap-2.5 px-4.5 py-4",children:[(0,b.jsxs)(i.default,{href:`/trierarchs/${a.shipId}`,"data-testid":"machine-card-name",className:"inline-flex items-center gap-2 text-section font-semibold hover:underline [&_svg]:size-(--size-icon) [&_svg]:text-muted-foreground",children:[(0,b.jsx)(g.ShipWheel,{"aria-hidden":!0}),a.name]}),(0,b.jsx)(r,{machine:a,now:e}),(0,b.jsxs)("span",{className:"flex flex-wrap items-center gap-1.5 text-meta text-muted-foreground",children:[(0,b.jsx)(o.LocationTag,{kind:d?.kind??null,description:d?.description}),null===f?null:(0,b.jsxs)("span",{className:"font-mono text-id",children:["· trierarch ",f.version]})]}),(0,b.jsx)("div",{role:"separator",className:"h-px bg-border"}),(0,b.jsx)("span",{className:"text-caption font-medium text-muted-foreground",children:"Capacity"}),(0,b.jsx)(n.CapacityBar,{spots:c,caps:f?.caps,testId:"machine-card-capacity",unknownText:null===j?"Unknown until it answers":`Unknown since ${(0,l.clockTime)(j)}`}),null===j?null:(0,b.jsxs)("time",{dateTime:h?.reportedAt,title:(0,l.fullDateTime)(j),className:"text-meta text-muted-foreground",children:["Last answer ",s(j,e)]})]}),(0,b.jsx)(t,{title:"Harnesses, options and flags",children:null===f?(0,b.jsx)("span",{className:"text-meta text-muted-foreground",children:"Unknown until it answers"}):f.harnesses.map(a=>(0,b.jsx)(u,{harness:a,now:e},a.harness))}),(0,b.jsx)(t,{title:"Workspaces",children:null===f?(0,b.jsx)("span",{className:"text-meta text-muted-foreground",children:"Unknown until it answers"}):(0,b.jsx)(w,{workspaces:f.workspaces})})]})},"MachineLiveness",0,r,"WorkspaceOffer",0,w,"lastAnswer",0,s])}];
2
-
3
- //# sourceMappingURL=_1lrul1q._.js.map
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,779432,e=>{"use strict";var t=e.i(456420);let n={name:"activity",size:24,node:[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]};n.node;let r=(0,t.default)(n);e.s(["Activity",0,r],779432)},444594,e=>{"use strict";var t=e.i(456420);let n={name:"inbox",size:24,node:[["polyline",{points:"22 12 16 12 14 15 10 15 8 12 2 12",key:"o97t9d"}],["path",{d:"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z",key:"oot6mr"}]]};n.node;let r=(0,t.default)(n);e.s(["Inbox",0,r],444594)},218964,e=>{"use strict";var t=e.i(456420);let n={name:"list-checks",size:24,node:[["path",{d:"M13 5h8",key:"a7qcls"}],["path",{d:"M13 12h8",key:"h98zly"}],["path",{d:"M13 19h8",key:"c3s6r1"}],["path",{d:"m3 17 2 2 4-4",key:"1jhpwq"}],["path",{d:"m3 7 2 2 4-4",key:"1obspn"}]]};n.node;let r=(0,t.default)(n);e.s(["ListChecks",0,r],218964)},660011,e=>{"use strict";var t=e.i(456420);let n={name:"shapes",size:24,node:[["path",{d:"M8.3 10a.7.7 0 0 1-.626-1.079L11.4 3a.7.7 0 0 1 1.198-.043L16.3 8.9a.7.7 0 0 1-.572 1.1Z",key:"1bo67w"}],["rect",{x:"3",y:"14",width:"7",height:"7",rx:"1",key:"1bkyp8"}],["circle",{cx:"17.5",cy:"17.5",r:"3.5",key:"w3z12y"}]]};n.node;let r=(0,t.default)(n);e.s(["Shapes",0,r],660011)},263676,e=>{"use strict";var t=e.i(814387);e.s(["X",()=>t.default])},766390,e=>{"use strict";var t=e.i(176782),n=e.i(552245),r=e.i(225913),o=e.i(965324);let i=(0,r.cva)("inline-flex w-fit shrink-0 items-center justify-center gap-1.5 border font-medium whitespace-nowrap [&>svg]:pointer-events-none [&>svg]:size-(--size-icon-sm)",{variants:{variant:{secondary:"h-5.5 rounded-sm border-transparent bg-secondary px-1.5 text-caption text-secondary-foreground",outline:"h-5.5 rounded-sm border-border bg-transparent px-1.5 text-caption text-foreground",type:"h-5.5 rounded-sm border-transparent bg-secondary px-1.5 font-mono text-id text-foreground",kind:"h-5.5 rounded-sm border-transparent bg-highlight px-1.5 font-mono text-id text-primary",count:"h-5 min-w-5 rounded-full border-transparent bg-primary px-1.5 text-micro font-semibold text-primary-foreground tabular-nums","count-neutral":"h-5 min-w-5 rounded-full border-transparent bg-secondary px-1.5 text-micro font-semibold text-foreground tabular-nums","count-attention":"h-5 min-w-5 rounded-full border-tone-attention-border bg-tone-attention-bg px-1.5 text-micro font-semibold text-tone-attention-fg tabular-nums"}},defaultVariants:{variant:"secondary"}});e.s(["Badge",0,function({className:e,variant:r,render:a,...s}){var u;return u={defaultTagName:"span",props:(0,t.mergeProps)({className:(0,o.classNames)(i({variant:r}),e)},s),render:a,state:{slot:"badge",variant:r}},(0,n.useRenderElement)(u.defaultTagName??"div",u,u)}],766390)},406734,e=>{"use strict";var t=e.i(843476);e.s([],158421),e.i(158421);var n=e.i(271645),r=e.i(896499),o=e.i(17989),i=e.i(46420),a=e.i(733332);let s=n.createContext(void 0);function u(e){let t=n.useContext(s);if(void 0===t&&!e)throw Error((0,a.default)(47));return t}var l=e.i(174080),d=e.i(301252),c=e.i(439957),p=e.i(956789),f=e.i(56434),m=e.i(18478),g=e.i(264111),h=e.i(116786),S=e.i(990627),v=e.i(638396);let y={...h.popupStoreSelectors,disabled:e=>e.disabled,instantType:e=>e.instantType,openMethod:e=>e.openMethod,openChangeReason:e=>e.openChangeReason,modal:e=>e.modal,focusManagerModal:e=>e.focusManagerModal,stickIfOpen:e=>e.stickIfOpen,titleElementId:e=>e.titleElementId,descriptionElementId:e=>e.descriptionElementId,openOnHover:e=>e.openOnHover,closeDelay:e=>e.closeDelay,adaptiveOrigin:e=>e.adaptiveOrigin};class R extends d.ReactStore{constructor(e,t,n){const r=new S.PopupTriggerMap;super(b(e,r,t,n),C(r),y)}setOpen=(e,t)=>{let n,r=t.reason===f.REASONS.triggerHover,o=t.reason===f.REASONS.triggerPress&&0===t.event.detail,i=!e&&(t.reason===f.REASONS.escapeKey||null==t.reason),a=(0,g.attachPreventUnmountOnClose)(t),s=this.select("activeTriggerId");if(e||t.reason!==f.REASONS.closePress||null!=t.trigger||null==s||(t.trigger=this.context.triggerElements.getById(s)??this.select("activeTriggerElement")??void 0),this.context.onOpenChange?.(e,t),t.isCanceled)return;this.state.floatingRootContext.dispatchOpenChange(e,t);let u=()=>{let n=(0,g.createPopupOpenState)(this.state,e,t.trigger,a());n.openChangeReason=t.reason,this.update(n)};r?(this.set("stickIfOpen",!0),this.context.stickIfOpenTimeout.start(v.PATIENT_CLICK_THRESHOLD,()=>{this.set("stickIfOpen",!1)}),l.flushSync(u)):u(),o?n="click":i?n="dismiss":t.reason===f.REASONS.focusOut&&(n="focus"),this.set("instantType",n)}}function b(e,t,n,r=!1){let o={...(0,h.createInitialPopupStoreState)(t,n,r),disabled:!1,modal:!1,focusManagerModal:!1,instantType:void 0,openMethod:null,openChangeReason:null,titleElementId:void 0,descriptionElementId:void 0,stickIfOpen:!0,openOnHover:!1,closeDelay:0,adaptiveOrigin:void 0,...e};return o.open&&e?.mounted===void 0&&(o.mounted=!0),o}function C(e){return{popupRef:n.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerFocusTargetRef:n.createRef(),beforeContentFocusGuardRef:n.createRef(),stickIfOpenTimeout:new c.Timeout,triggerElements:e}}var w=e.i(675606);let O=(0,r.fastComponent)(function({props:e}){var r;let o,{children:i,open:a,defaultOpen:u=!1,onOpenChange:l,onOpenChangeComplete:d,modal:c=!1,handle:p,triggerId:m,defaultTriggerId:h=null}=e,S=(r={modal:c,open:u,openProp:a,activeTriggerId:h,triggerIdProp:m},o=(0,g.usePopupRootStore)((e,t)=>new R(r,e,t)),n.useEffect(()=>o.context.stickIfOpenTimeout.disposeEffect(),[o]),o);S.useControlledProp("openProp",a),S.useControlledProp("triggerIdProp",m);let v=S.useState("open"),y=S.useState("mounted"),b=S.useState("payload");S.useContextCallback("onOpenChange",l),S.useContextCallback("onOpenChangeComplete",d),(0,g.usePopupRootSync)(S,v),(0,g.useImplicitActiveTrigger)(S);let{forceUnmount:C}=(0,g.useOpenStateTransitions)(v,S,()=>{S.update({stickIfOpen:!0,openChangeReason:null})});S.useSyncedValues({modal:c}),n.useEffect(()=>{v||S.context.stickIfOpenTimeout.clear()},[S,v]),n.useImperativeHandle(e.actionsRef,()=>({unmount:C,close:()=>S.setOpen(!1,(0,w.createChangeEventDetails)(f.REASONS.imperativeAction))}),[C,S]);let O=v||y;return(0,t.jsxs)(s.Provider,{value:S,children:[p&&(0,t.jsx)(g.PopupHandleAttachment,{handle:p,store:S}),O&&(0,t.jsx)(M,{store:S,modal:c}),"function"==typeof i?i({payload:b}):i]})});function M({store:e,modal:t}){let n=e.useState("floatingRootContext"),r=(0,o.useDismiss)(n,{outsidePressEvent:{mouse:"trap-focus"===t?"sloppy":"intentional",touch:"sloppy"}}),i=r.reference,a=r.floating;return(0,g.usePopupInteractionProps)(e,{activeTriggerProps:i,inactiveTriggerProps:i,popupProps:a}),null}var x=e.i(540886),I=e.i(879938),T=e.i(552245),P=e.i(650316),E=e.i(385689),q=e.i(872135),k=e.i(788015),A=e.i(152535),F=e.i(459636),N=e.i(346570),L=e.i(32199);let D=(0,r.fastComponentRef)(function(e,r){let{render:o,className:i,style:s,disabled:l=!1,nativeButton:d=!0,handle:c,payload:p,openOnHover:m=!1,delay:h=300,closeDelay:S=0,id:y,...R}=e,b=u(!0),C=(0,F.usePopupHandleStore)(c)??b;if(!C)throw Error((0,a.default)(74));let w=(0,k.useBaseUiId)(y),O=C.useState("isTriggerActive",w),M=C.useState("floatingRootContext"),D=C.useState("isOpenedByTrigger",w),j=C.useState("triggerPopupId",w),U=n.useRef(null),{registerTrigger:$,isMountedByThisTrigger:Q}=(0,g.useTriggerDataForwarding)(w,U,C,{payload:p,disabled:l,openOnHover:m,closeDelay:S}),K=C.useState("openChangeReason"),H=C.useState("stickIfOpen"),_=C.useState("openMethod"),B=C.useState("focusManagerModal"),z=(0,q.useHoverReferenceInteraction)(M,{enabled:!l&&m&&("touch"!==_||K!==f.REASONS.triggerPress),mouseOnly:!0,move:!1,handleClose:(0,P.safePolygon)(),restMs:h,delay:{close:S},triggerElementRef:U,isActiveTrigger:O,isClosing:()=>"ending"===C.select("transitionStatus")}),V=(0,E.useClick)(M,{stickIfOpen:H}),G=(0,L.useOpenMethodTriggerProps)(()=>C.select("open"),e=>{C.set("openMethod",e)}),W=C.useState("triggerProps",Q),{getButtonProps:Y,buttonRef:J}=(0,x.useButton)({disabled:l,native:d}),{preFocusGuardRef:Z,handlePreFocusGuardFocus:X,handleFocusTargetFocus:ee}=(0,N.useTriggerFocusGuards)(C,U),et=(0,T.useRenderElement)("button",e,{state:{disabled:l,open:D},ref:[J,r,$,U],props:[V.reference,z,W,G,{[v.CLICK_TRIGGER_IDENTIFIER]:"",id:w,"aria-haspopup":"dialog","aria-expanded":D,"aria-controls":j},R,Y],stateAttributesMapping:{open:e=>e&&K===f.REASONS.triggerPress?I.pressableTriggerOpenStateMapping.open(e):I.triggerOpenStateMapping.open(e)}}),en=(0,t.jsx)(n.Fragment,{children:et},w);return Q&&!B?(0,t.jsxs)(n.Fragment,{children:[(0,t.jsx)(A.FocusGuard,{ref:Z,onFocus:X}),en,(0,t.jsx)(A.FocusGuard,{ref:C.context.triggerFocusTargetRef,onFocus:ee})]}):en});var j=e.i(726674);let U=n.createContext(void 0),$=n.forwardRef(function(e,n){let{keepMounted:r=!1,...o}=e;return u().useState("mounted")||r?(0,t.jsx)(U.Provider,{value:r,children:(0,t.jsx)(j.FloatingPortal,{ref:n,...o})}):null});var Q=e.i(144394),K=e.i(146376);let H=n.createContext(void 0);function _(){let e=n.useContext(H);if(!e)throw Error((0,a.default)(46));return e}var B=e.i(923706),z=e.i(426),V=e.i(222640),G=e.i(789579),W=e.i(33383);let Y=n.forwardRef(function(e,r){let{render:o,className:s,style:l,anchor:d,positionMethod:c,side:p,align:m,sideOffset:g,alignOffset:h,collisionBoundary:S="clipping-ancestors",collisionPadding:y,arrowPadding:R,sticky:b,disableAnchorTracking:C=!1,collisionAvoidance:w=v.POPUP_COLLISION_AVOIDANCE,...O}=e,M=u(),x=function(){let e=n.useContext(U);if(void 0===e)throw Error((0,a.default)(45));return e}(),I=(0,i.useFloatingNodeId)(),T=M.useState("floatingRootContext"),P=M.useState("mounted"),E=M.useState("open"),q=M.useState("openChangeReason"),k=M.useState("activeTriggerElement"),A=M.useState("modal"),F=M.useState("openMethod"),N=M.useState("positionerElement"),L=M.useState("instantType"),D=M.useState("transitionStatus"),j=M.useState("adaptiveOrigin"),$=n.useRef(null),_=(0,V.useAnimationsFinished)(N),Y=(0,B.useAnchorPositioning)({anchor:d,floatingRootContext:T,positionMethod:c,mounted:P,side:p,sideOffset:g,align:m,alignOffset:h,arrowPadding:R,collisionBoundary:S,collisionPadding:y,sticky:b,disableAnchorTracking:C,keepMounted:x,nodeId:I,collisionAvoidance:w,adaptiveOrigin:j}),J=T.useState("domReferenceElement");(0,K.useIsoLayoutEffect)(()=>{let e=$.current;if(J&&($.current=J),e&&J&&J!==e){M.set("instantType",void 0);let e=new AbortController;return _(()=>{M.set("instantType","trigger-change")},e.signal),()=>{e.abort()}}},[J,_,M]);let Z=!0===A&&q!==f.REASONS.triggerHover;(0,W.useAnchoredPopupScrollLock)(E&&Z,"touch"===F,N,k);let X=M.useStateSetter("positionerElement"),ee={open:E,side:Y.side,align:Y.align,anchorHidden:Y.anchorHidden,instant:L},et=(0,G.usePositioner)(e,ee,{styles:Y.positionerStyles,transitionStatus:D,props:O,refs:[r,X],hidden:!P,inert:!E});return(0,t.jsxs)(H.Provider,{value:Y,children:[P&&Z&&(0,t.jsx)(z.InternalBackdrop,{inert:(0,Q.inertValue)(!E),cutout:k}),(0,t.jsx)(i.FloatingNode,{id:I,children:et})]})});var J=e.i(229315),Z=e.i(61487),X=e.i(431157),ee=e.i(137584),et=e.i(673327),en=e.i(96533),er=e.i(253984),eo=e.i(667865);let ei=n.createContext(void 0),ea=n.forwardRef(function(e,r){let{render:o,className:i,style:a,initialFocus:s,finalFocus:l,...d}=e,c=u(),p=_(),m=null!=(0,en.useToolbarRootContext)(!0),{context:h,hasClosePart:S}=function(){let[e,t]=n.useState(0),r=(0,eo.useStableCallback)(()=>(t(e=>e+1),()=>{t(e=>Math.max(0,e-1))}));return{context:n.useMemo(()=>({register:r}),[r]),hasClosePart:e>0}}(),v=c.useState("open"),y=c.useState("openMethod"),R=c.useState("instantType"),b=c.useState("transitionStatus"),C=c.useState("popupProps"),w=c.useState("titleElementId"),O=c.useState("descriptionElementId"),M=c.useState("modal"),x=c.useState("mounted"),P=c.useState("openChangeReason"),E=c.useState("activeTriggerElement"),q=c.useState("floatingRootContext"),k=q.useState("floatingId"),A=c.useState("disabled"),F=c.useState("openOnHover"),N=c.useState("closeDelay");(0,ee.useOpenChangeComplete)({open:v,ref:c.context.popupRef,onComplete(){v&&c.context.onOpenChangeComplete?.(!0)}}),(0,X.useHoverFloatingInteraction)(q,{enabled:F&&!A,closeDelay:N});let L=void 0===s?(0,g.createDefaultInitialFocus)(c.context.popupRef):s,D=!1!==M&&S;c.useSyncedValue("focusManagerModal",D);let j=c.useStateSetter("popupElement"),U={open:v,side:p.side,align:p.align,instant:R,transitionStatus:b},$=(0,T.useRenderElement)("div",e,{state:U,ref:[r,c.context.popupRef,j],props:[C,{id:k,role:"dialog",...g.FOCUSABLE_POPUP_PROPS,"aria-labelledby":w,"aria-describedby":O,onKeyDown(e){m&&et.COMPOSITE_KEYS.has(e.key)&&e.stopPropagation()}},(0,er.getDisabledMountTransitionStyles)(b),d],stateAttributesMapping:I.popupTransitionStateMapping});return(0,t.jsx)(Z.FloatingFocusManager,{context:q,openInteractionType:y,modal:D,disabled:!x||P===f.REASONS.triggerHover,initialFocus:L,returnFocus:l,restoreFocus:"popup",previousFocusableElement:(0,J.isHTMLElement)(E)?E:void 0,nextFocusableElement:c.context.triggerFocusTargetRef,beforeContentFocusGuardRef:c.context.beforeContentFocusGuardRef,children:(0,t.jsx)(ei.Provider,{value:h,children:$})})}),es=n.forwardRef(function(e,t){let{render:n,className:r,style:o,...i}=e,a=u().useState("open"),{arrowRef:s,side:l,align:d,arrowUncentered:c,arrowStyles:p}=_();return(0,T.useRenderElement)("div",e,{state:{open:a,side:l,align:d,uncentered:c},ref:[t,s],props:[{style:p,"aria-hidden":!0},i],stateAttributesMapping:I.popupStateMapping})}),eu=n.forwardRef(function(e,t){let{render:n,className:r,style:o,...i}=e,a=u(),s=a.useState("open"),l=a.useState("mounted"),d=a.useState("transitionStatus"),c=a.useState("openChangeReason");return(0,T.useRenderElement)("div",e,{state:{open:s,transitionStatus:d},ref:t,props:[{role:"presentation",hidden:!l,style:{pointerEvents:c===f.REASONS.triggerHover?"none":void 0,userSelect:"none",WebkitUserSelect:"none"}},i],stateAttributesMapping:I.popupTransitionStateMapping})}),el=n.forwardRef(function(e,t){let{render:n,className:r,style:o,...i}=e,a=u(),s=(0,k.useBaseUiId)(i.id);return a.useSyncedValueWithCleanup("titleElementId",s),(0,T.useRenderElement)("h2",e,{ref:t,props:[{id:s},i]})}),ed=n.forwardRef(function(e,t){let{render:n,className:r,style:o,...i}=e,a=u(),s=(0,k.useBaseUiId)(i.id);return a.useSyncedValueWithCleanup("descriptionElementId",s),(0,T.useRenderElement)("p",e,{ref:t,props:[{id:s},i]})}),ec=n.forwardRef(function(e,t){let r,{render:o,className:i,style:a,disabled:s=!1,nativeButton:l=!0,...d}=e,{buttonRef:c,getButtonProps:p}=(0,x.useButton)({disabled:s,focusableWhenDisabled:!1,native:l}),m=u();return r=n.useContext(ei),(0,K.useIsoLayoutEffect)(()=>r?.register(),[r]),(0,T.useRenderElement)("button",e,{ref:[t,c],props:[{onClick(e){m.setOpen(!1,(0,w.createChangeEventDetails)(f.REASONS.closePress,e.nativeEvent))}},d,p]})});var ep=e.i(818390);let ef=n.forwardRef(function(e,t){let{render:n,className:r,style:o,children:i,...a}=e,s=u(),{side:l}=_(),d=s.useState("instantType"),{children:c,state:p}=(0,ep.usePopupViewport)({store:s,side:l,children:i}),f={activationDirection:p.activationDirection,transitioning:p.transitioning,instant:d};return(0,T.useRenderElement)("div",e,{state:f,ref:t,props:[a,{children:c}],stateAttributesMapping:ep.popupViewportStateMapping})});var em=e.i(564170);class eg extends em.BasePopupHandle{constructor(){super(function(){let e=new S.PopupTriggerMap;return Object.assign(new m.NullStore(Object.freeze(b(void 0,e)),Object.freeze(C(e)),y),{setOpen:p.NOOP})}(),"Popover")}open(e){this.openByTrigger(e)}close(){this.closePopup()}get isOpen(){return this.attachedStore?.select("open")??!1}}e.s(["Arrow",0,es,"Backdrop",0,eu,"Close",0,ec,"Description",0,ed,"Handle",0,eg,"Popup",0,ea,"Portal",0,$,"Positioner",0,Y,"Root",0,function(e){return u(!0)?(0,t.jsx)(O,{props:e}):(0,t.jsx)(i.FloatingTree,{children:(0,t.jsx)(O,{props:e})})},"Title",0,el,"Trigger",0,D,"Viewport",0,ef,"createHandle",0,function(){return new eg}],466914);var eh=e.i(466914),eh=eh,eS=e.i(965324);let ev=eh.Trigger,ey=eh.Title,eR=eh.Description;e.s(["Popover",0,function(e){return(0,t.jsx)(eh.Root,{"data-slot":"popover",...e})},"PopoverContent",0,function({className:e,children:n,anchor:r,side:o="bottom",sideOffset:i=10,align:a="center",...s}){return(0,t.jsx)(eh.Portal,{children:(0,t.jsx)(eh.Positioner,{anchor:r,align:a,side:o,sideOffset:i,className:"isolate z-50",children:(0,t.jsxs)(eh.Popup,{"data-slot":"popover-content",className:(0,eS.classNames)("origin-(--transform-origin) rounded-xl border border-border bg-popover text-popover-foreground shadow-lg duration-(--duration-fast) outline-none data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),...s,children:[(0,t.jsx)(eh.Arrow,{className:"data-[side=bottom]:-top-1.5 data-[side=left]:-right-1.5 data-[side=right]:-left-1.5 data-[side=top]:-bottom-1.5",children:(0,t.jsx)("span",{"aria-hidden":!0,className:"block size-3 rotate-45 border-t border-l border-border bg-popover in-data-[side=left]:rotate-135 in-data-[side=right]:-rotate-45 in-data-[side=top]:-rotate-135"})}),n]})})})},"PopoverDescription",0,eR,"PopoverTitle",0,ey,"PopoverTrigger",0,ev],406734)},748955,153040,749092,e=>{"use strict";var t=e.i(843476),n=e.i(271645),r=e.i(917540),o=e.i(954616),i=e.i(912598),a=e.i(427702),s=e.i(442111),u=e.i(487483),l=e.i(619273),d=e.i(266027),c=e.i(540038);function p(e){let t=(0,a.useTRPC)();return(0,d.useQuery)(t.fleet.shipTypes.queryOptions(e?{status:[...c.EVERY_SHIP_STATUS]}:void 0,{placeholderData:l.keepPreviousData})).data}function f(e){let t=(0,a.useTRPC)(),n=""!==e,r=(0,d.useQuery)(t.fleet.shipCounts.queryOptions({filter:{type:[e]}},{enabled:n}));return n?r.data?.reduce((e,t)=>e+t.active,0):void 0}e.s(["useShipTypes",0,p,"useTypeShipCount",0,f],153040);var m=e.i(341880);function g(){let e=(0,a.useTRPC)();return(0,d.useQuery)(e.fleet.limits.queryOptions(void 0,{refetchInterval:6e4}))}e.s(["useFleetLimits",0,g],749092);var h=e.i(87600),S=e.i(516752);let v=(0,r.lazyDialog)(()=>e.A(81489).then(e=>e.ComposeDialog),e=>e.isOpen);e.s(["ComposeMessage",0,function({isOpen:e,onOpenChange:r,replyTo:l,toShipId:d}){var c;let y,R,b=l?.sender.id??d,[C,w]=(0,n.useState)(""),[O,M]=(0,n.useState)(""),x=(0,u.useShipSearch)(C,e),I=(0,s.useListedShips)(e&&void 0!==b?[b]:[]),T=p(!1)??[],P=f(e?O:""),E=(y=(0,a.useTRPC)(),R=(0,i.useQueryClient)(),(0,o.useMutation)(y.ship.send.mutationOptions({onSuccess:()=>R.invalidateQueries({queryKey:y.fleet.pathKey()})}))),q=g(),k=(0,h.useHostedAccountUrl)(),[A,F]=(0,n.useState)(()=>crypto.randomUUID()),N=(c=[...I?.values()??[],...x??[]]).filter((e,t)=>"agent"===e.kind&&"retired"!==e.status&&c.findIndex(t=>t.id===e.id)===t);return(0,t.jsx)(v,{isOpen:e,onOpenChange:e=>{e||(E.reset(),w(""),M("")),r(e)},ships:N,onShipQueryChange:w,types:T,typeShipCounts:new Map(void 0===P?[]:[[O,P]]),onTypeChange:M,state:E.isPending?"sending":E.isError?"failed":"editing",error:E.error?.message,messageLimit:E.isError?(0,S.messageLimitReached)(q.data):void 0,accountUrl:k,draft:l?{selector:{kind:"ship",shipId:l.sender.id},payload:""}:d&&{selector:{kind:"ship",shipId:d},payload:""},onSend:e=>{E.mutate(function(e,t){let{selector:n,payload:r,inReplyTo:o}=e;return{selector:n,payload:r,contentType:"text/plain",idempotencyKey:t,...void 0===o?{}:{inReplyTo:o}}}({...e,inReplyTo:l?.messageId},A),{onSuccess:()=>{F(crypto.randomUUID()),E.reset(),r(!1),(0,m.showToast)({title:"Message sent",description:"It waits in the inbox until a ship receives it.",tone:"success"})},onError:()=>{q.refetch()}})}})}],748955)},976580,e=>{"use strict";var t=e.i(266027),n=e.i(678485);e.s(["useConsoleRead",0,function(e){let r=(0,t.useQuery)(e);return(0,n.useSignInWhenSessionEnds)([r.error]),r}])},917540,e=>{"use strict";var t=e.i(843476),n=e.i(770703),r=e.i(271645);e.s(["lazyDialog",0,function(e,o){let i=(0,n.default)(e,{ssr:!1});return function(e){let n=o(e),[a,s]=(0,r.useState)(n);return n&&!a&&s(!0),a||n?(0,t.jsx)(i,{...e}):null}}])},516752,e=>{"use strict";let t=new Intl.NumberFormat("en-US");function n(e){return t.format(e)}function r(e){return`${new Date(e).toISOString().slice(11,16)} UTC`}function o({count:e,limit:t}){return null===t?"none":e<t?"below":e===t?"at":"over"}e.s(["composeRefusedNotice",0,function(e){return{title:"This message wasn’t sent",description:`Your fleet reached its limit of ${n(e.limit)} messages today. Sending works again after the limit resets at ${r(e.resetsAt)}.`}},"hasLimits",0,function(e){return void 0!==e&&(null!==e.ships.limit||null!==e.dailyMessages.limit)},"messageLimitNotice",0,function(e){return{title:"Your fleet reached today’s message limit",description:`It sent ${n(e.limit)} messages today, its daily limit. New messages are refused until the limit resets at ${r(e.resetsAt)}.`}},"messageLimitReached",0,function(e){let t=e?.dailyMessages;return t?.limit!=null&&t.count>=t.limit?{limit:t.limit,resetsAt:t.resetsAt}:void 0},"meterCaption",0,function(e){let{count:t,limit:r}=e;if(null===r)return;let i=o(e);return"below"===i?`${n(r-t)} left`:"at"===i?"Limit reached":`${n(t-r)} over the limit`},"meterCount",0,function(e){return n(e)},"meterState",0,o,"resetTime",0,r,"shipLimitNotice",0,function(e){return{title:"Your fleet is at its ship limit",description:`This fleet can have ${n(e)} ships, so it can’t take a new one. Limits are listed on your account.`}},"shipLimitReached",0,function(e){let t=e?.ships;return t?.limit!=null&&t.count>=t.limit?t.limit:void 0}])},714695,e=>{"use strict";let t=["running","crashed","restarting","crewing","releasing"];e.s(["capacityLine",0,function(e,n){if(void 0===n)return;let r=t=>e.filter(e=>e.status===t).length,o=t.slice(1).flatMap(e=>0===r(e)?[]:[`${String(r(e))} ${e}`]),i=e.length>=n.ships;return[`${String(r("running"))} of ${String(n.ships)} running`,...o,...i?["full"]:[]].join(" · ")},"harnessOptions",0,function(e){let t=e.properties;return"object"!=typeof t||null===t?[]:Object.entries(t).flatMap(([e,t])=>{if("object"!=typeof t||null===t||!("enum"in t)||!Array.isArray(t.enum))return[];let n=t.enum.filter(e=>"string"==typeof e),r="default"in t&&"string"==typeof t.default?t.default:void 0;return[{name:e,values:n,...void 0===r?{}:{defaultValue:r}}]})},"machineLiveness",0,function(e){return"awaitingCrew"===e.status&&null===e.lastSeenAt?"not-started":e.isSilent?"silent":"alive"},"silentCount",0,function(e){return e.filter(e=>e.isSilent).length},"spotsOf",0,function(e,n){return n.flatMap(t=>t.crewRequest?.assignedTo?.id===e.shipId?[{shipId:t.id,name:t.name,status:t.crewRequest.status??"crewing",attempt:t.crewRequest.attempt,startedAt:t.crewRequest.startedAt}]:[]).toSorted((e,n)=>t.indexOf(e.status)-t.indexOf(n.status)||e.name.localeCompare(n.name))},"withWorkspaces",0,function(e,t){return e.map(e=>{let n=t.get(e.shipId);if(null==n)return e;let{workspace:r}=n;return{...e,workspace:"worktree"===r.kind?{name:r.repository,kind:"worktree"}:{name:r.name,kind:"folder"}}})}])},954226,e=>{"use strict";e.s(["GATEWAY_NO_ANSWER",0,"the gateway or the fleet did not answer: try again in a moment","SQUADRONS_NO_ANSWER",0,"squadrons or the fleet did not answer: try again in a moment","TRIERARCH_PLUGIN_NO_ANSWER",0,"the trierarch plugin or the fleet did not answer: try again in a moment"])},487483,e=>{"use strict";var t=e.i(970597),n=e.i(619273),r=e.i(266027),o=e.i(731877),i=e.i(427702);e.s(["useShipSearch",0,function(e,a){let s=(0,i.useTRPC)(),u=e.trim(),l=(0,r.useQuery)(s.fleet.list.queryOptions({...""===u?{}:{query:u},limit:o.CONSOLE_PAGE_SIZE},{enabled:a,placeholderData:n.keepPreviousData}));return l.data?.items.filter(t.isInReadReach)}])},448695,686165,e=>{"use strict";var t=e.i(954616),n=e.i(912598),r=e.i(432150),o=e.i(976580),i=e.i(994070),a=e.i(502660),s=e.i(954226),u=e.i(95187);let l=(0,u.createServerReference)("0071f1d0dcd2ee31a3a0eb20026fd44d5bcf894807",u.callServer,void 0,u.findSourceMapURL,"connectSquadrons"),d=["squadrons","connection"];function c(){return(0,o.useConsoleRead)({queryKey:d,queryFn:()=>(0,i.fetchConsoleRead)({read:"squadrons-connection"})})}function p(){let e=c();return void 0===e.data?e.isError?"not-connected":"unknown":e.data.state}e.s(["useConnectSquadrons",0,function(){let e=(0,n.useQueryClient)();return(0,t.useMutation)({mutationFn:()=>(0,a.dataFrom)(l,s.SQUADRONS_NO_ANSWER),onSuccess:t=>{e.setQueryData(d,t)}})},"useHasSquadrons",0,function(){let e=c();return void 0!==e.data&&"none"!==e.data.state},"useSquadronsConnection",0,p,"useSquadronsSettings",0,c],686165);let f=(0,u.createServerReference)("40164adf6b2fb1adaf26eb5633828ca2f113a5502b",u.callServer,void 0,u.findSourceMapURL,"addMember"),m=(0,u.createServerReference)("404e4bb91700b7c02339b0a7c0dbcc33ebe0af00a7",u.callServer,void 0,u.findSourceMapURL,"addRepository"),g=(0,u.createServerReference)("4028d81fa7d21990186b2ad6181e9e914b188c2ed2",u.callServer,void 0,u.findSourceMapURL,"forceStandDown"),h=(0,u.createServerReference)("40dee9b275f00fed3fc6fd16c075aa3e1be204d60c",u.callServer,void 0,u.findSourceMapURL,"formSquadron"),S=(0,u.createServerReference)("408844237367bfc7ea1d817c06590d66924295fbd3",u.callServer,void 0,u.findSourceMapURL,"newCrewLine"),v=(0,u.createServerReference)("00e714e794b49e392263fd7cb92a7bfdfaf77d6b95",u.callServer,void 0,u.findSourceMapURL,"refreshCatalogue"),y=(0,u.createServerReference)("4005c0ee1c3af1af9d69f93e02581eaf5527f99b19",u.callServer,void 0,u.findSourceMapURL,"removeMember"),R=(0,u.createServerReference)("40bc7068316e672da800a5e6c433aa144cf52c361f",u.callServer,void 0,u.findSourceMapURL,"removeRepository"),b=(0,u.createServerReference)("40292c0da190aeac8d721dcae17e0dabd48ca783b8",u.callServer,void 0,u.findSourceMapURL,"standDown"),C=["squadrons","list"];function w(e){return["squadrons","crew-lines",e]}let O=["squadrons","repositories"];function M(){let e=(0,n.useQueryClient)();return async()=>{await Promise.all([e.invalidateQueries({queryKey:O}),e.invalidateQueries({queryKey:["squadrons","catalogue"]})])}}e.s(["useAddMember",0,function(){let e=(0,n.useQueryClient)();return(0,t.useMutation)({mutationFn:async e=>(0,a.dataOf)(await f(e)),onSuccess:async()=>{await e.invalidateQueries({queryKey:C})}})},"useAddRepository",0,function(){let e=M();return(0,t.useMutation)({mutationFn:async e=>(0,a.dataOf)(await m(e)),onSettled:e})},"useBlueprintCrew",0,function(e){let t="connected"===p();return(0,o.useConsoleRead)({queryKey:["squadrons","blueprint-crew",e],queryFn:async()=>void 0===e?[]:(0,i.fetchConsoleRead)({read:"blueprint-crew",input:e}),enabled:t&&void 0!==e})},"useCatalogue",0,function(){let e="connected"===p();return(0,o.useConsoleRead)({queryKey:["squadrons","catalogue"],queryFn:()=>(0,i.fetchConsoleRead)({read:"catalogue"}),enabled:e})},"useForceStandDown",0,function(){let e=(0,n.useQueryClient)();return(0,t.useMutation)({mutationFn:async e=>(0,a.dataOf)(await g(e)),onSuccess:async()=>{await e.invalidateQueries({queryKey:C})}})},"useFormSquadron",0,function(){let e=(0,n.useQueryClient)(),{track:o}=(0,r.useAnalytics)();return(0,t.useMutation)({mutationFn:async({blueprint:e,members:t})=>(0,a.dataOf)(await h({blueprint:e,...void 0===t?{}:{members:t}})),onSuccess:async t=>{o({name:"squadron_formed",roleCount:new Set(t.members.map(e=>e.role)).size}),e.setQueryData(w(t.squadronId),t.members),await e.invalidateQueries({queryKey:C})}})},"useIssuedCrewLines",0,function(e){return new Map(((0,n.useQueryClient)().getQueryData(w(e))??[]).map(e=>[e.shipId,{crewLines:e.crewLines,launchNote:e.launchNote,model:e.model}]))},"useKeptMessages",0,function(e){let t="connected"===p();return(0,o.useConsoleRead)({queryKey:["squadrons","messages",e],queryFn:()=>(0,i.fetchConsoleRead)({read:"kept-messages",input:{squadronId:e}}),refetchInterval:5e3,enabled:t})},"useNewCrewLine",0,function(){let e=(0,n.useQueryClient)();return(0,t.useMutation)({mutationFn:async e=>(0,a.dataOf)(await S(e)),onSuccess:async()=>{await e.invalidateQueries({queryKey:C})}})},"useRefreshCatalogue",0,function(){let e=M();return(0,t.useMutation)({mutationFn:async()=>(0,a.dataOf)(await v()),onSuccess:e})},"useRemoveMember",0,function(){let e=(0,n.useQueryClient)();return(0,t.useMutation)({mutationFn:async e=>(0,a.dataOf)(await y(e)),onSuccess:async()=>{await e.invalidateQueries({queryKey:C})}})},"useRemoveRepository",0,function(){let e=M();return(0,t.useMutation)({mutationFn:async e=>(0,a.dataOf)(await R(e)),onSettled:e})},"useRepositories",0,function(){let e="connected"===p();return(0,o.useConsoleRead)({queryKey:O,queryFn:()=>(0,i.fetchConsoleRead)({read:"repositories"}),enabled:e})},"useSquadrons",0,function(){let e="connected"===p();return(0,o.useConsoleRead)({queryKey:C,queryFn:()=>(0,i.fetchConsoleRead)({read:"squadrons"}),refetchInterval:5e3,enabled:e})},"useStandDown",0,function(){let e=(0,n.useQueryClient)();return(0,t.useMutation)({mutationFn:async e=>(0,a.dataOf)(await b(e)),onSuccess:async()=>{await e.invalidateQueries({queryKey:C})}})}],448695)},784294,e=>{"use strict";function t(e,t){return e.roles.map(e=>({role:e.name,template:`${e.template.name}@${String(e.template.version)}`,count:e.count,checkInMinutes:t.find(t=>t.repository===e.template.repository&&t.name===e.template.name&&t.version===e.template.version)?.checkInMinutes}))}function n(e){let t=Math.floor(e/60),n=e%60;return 0===t?`${String(n)} min`:0===n?`${String(t)} h`:`${String(t)} h ${String(n)} min`}e.s(["blueprintChoices",0,function(e){let t=new Map;for(let n of e.blueprints){let e=`${n.repository}#${n.name}`,r=t.get(e)??{key:e,repository:n.repository,name:n.name,versions:[]};r.versions.push(n),t.set(e,r)}return[...t.values()].map(e=>({...e,versions:[...e.versions].sort((e,t)=>t.version-e.version)})).sort((e,t)=>e.name.localeCompare(t.name))},"blueprintPath",0,function(e){let t=new URLSearchParams({repository:e.repository});return void 0!==e.version&&t.set("version",String(e.version)),`/squadrons/blueprints/${encodeURIComponent(e.name)}?${t.toString()}`},"blueprintsUsing",0,function(e,t){return e.filter(e=>e.roles.some(e=>e.template.repository===t.repository&&e.template.name===t.name&&(void 0===t.version||e.template.version===t.version)))},"checkInText",0,function(e){return e%60==0?`every ${String(e/60)} h`:`every ${String(e)} min`},"handoffsOf",0,function(e,t){let n=e=>[...new Set(e)];return{from:n(e.handoffs.filter(e=>e.to===t).map(e=>e.role)),to:n(e.handoffs.filter(e=>e.role===t).map(e=>e.to))}},"handoffsText",0,function(e){let t=[e.from.length>0?`from ${e.from.join(", ")}`:void 0,e.to.length>0?`to ${e.to.join(", ")}`:void 0].filter(e=>void 0!==e);return 0===t.length?"None":t.join(" · ")},"healthCounts",0,function(e){return["on-time","late","silent","standing-down","not-on-station"].map(t=>({health:t,count:e.filter(e=>e.health===t).length})).filter(e=>e.count>0)},"memberCount",0,function(e){return e.roles.reduce((e,t)=>e+t.count,0)},"membersByRole",0,function(e){let t=new Map;for(let n of e)t.set(n.role,[...t.get(n.role)??[],n]);return[...t.entries()].map(([e,t])=>({role:e,members:t}))},"otherMembersOfRole",0,function(e,t){let n=e.members.find(e=>e.shipId===t)?.role;return e.members.filter(e=>e.role===n&&e.shipId!==t&&"retired"!==e.crew.status).map(e=>e.name)},"roleOptions",0,function(e,n){let{blueprint:r,templates:o}=n;return t(r,o).map(t=>({role:t.role,template:t.template,checkInMinutes:t.checkInMinutes,now:e.members.filter(e=>e.role===t.role&&"retired"!==e.crew.status).length,inBlueprint:t.count}))},"rolePreviews",0,t,"rolesText",0,function(e){return e.roles.map(e=>e.count>1?`${e.name} \xd7${String(e.count)}`:e.name).join(", ")},"shipsInSquadrons",0,function(e){let t=new Map;for(let n of e)if("disbanded"!==n.state)for(let e of(t.set(n.flagship.shipId,{squadronId:n.id,role:null}),n.members))t.set(e.shipId,{squadronId:n.id,role:e.role});return t},"silentMembers",0,function(e){return e.filter(e=>"disbanded"!==e.state).flatMap(e=>e.members.filter(e=>"silent"===e.health).map(t=>({squadronId:e.id,member:t})))},"squadronActionsOffered",0,function(e,t){let n="sailing"===e.state;return{canAddMember:t.canManage&&n&&t.hasRoles,canMessageFlagship:t.canSend&&"disbanded"!==e.state,canStandDown:t.canManage&&n,canForceStandDown:t.canManage&&"disbanded"!==e.state}},"squadronsFromBlueprint",0,function(e,t){return e.filter(e=>e.blueprint.repository===t.repository&&e.blueprint.name===t.name)},"squadronsText",0,function(e){return["forming","sailing","standing-down"].map(t=>({state:t,count:e.filter(e=>e.state===t).length})).filter(e=>e.count>0).map(e=>`${String(e.count)} ${e.state.replace("-"," ")}`).join(", ")},"stationCount",0,function(e){return{onStation:e.members.filter(e=>null!==e.onStationAt).length,total:e.members.length}},"templateChoices",0,function(e){let t=new Map;for(let n of e.templates){let e=`${n.repository}#${n.name}`,r=t.get(e)??{key:e,repository:n.repository,name:n.name,versions:[]};r.versions.push(n),t.set(e,r)}return[...t.values()].map(e=>({...e,versions:[...e.versions].sort((e,t)=>t.version-e.version)})).sort((e,t)=>e.name.localeCompare(t.name))},"templatePath",0,function(e){let t=new URLSearchParams({repository:e.repository});return void 0!==e.version&&t.set("version",String(e.version)),`/squadrons/templates/${encodeURIComponent(e.name)}?${t.toString()}`},"thresholdsText",0,function(e){return`Late after ${n(+e)}, silent after ${n(3*e)}`},"workCounts",0,function(e){return["working","idle","blocked"].map(t=>({state:t,count:e.filter(e=>e?.state===t).length})).filter(e=>e.count>0)}])},500265,e=>{"use strict";var t=e.i(954616),n=e.i(912598),r=e.i(976580),o=e.i(994070),i=e.i(954226),a=e.i(502660),s=e.i(95187);let u=(0,s.createServerReference)("009d06e80d66526e3c6e6509744e8d40a79a3fdb04",s.callServer,void 0,s.findSourceMapURL,"connectTrierarchPlugin"),l=(0,s.createServerReference)("40363316a4d7940b6d701b683981de09579ca684ba",s.callServer,void 0,s.findSourceMapURL,"joinMachine"),d=["trierarch-plugin","connection"];function c(){return(0,r.useConsoleRead)({queryKey:d,queryFn:()=>(0,o.fetchConsoleRead)({read:"trierarch-plugin-connection"})})}function p(){let e=c();return void 0===e.data?e.isError?"not-connected":"unknown":e.data.state}function f(){let e=c();return void 0!==e.data&&"none"!==e.data.state}let m=["trierarch-plugin","machines"],g=e=>["trierarch-plugin","check",JSON.stringify(e)];e.s(["useConnectTrierarchPlugin",0,function(){let e=(0,n.useQueryClient)();return(0,t.useMutation)({mutationFn:()=>(0,a.dataFrom)(u,i.TRIERARCH_PLUGIN_NO_ANSWER),onSuccess:t=>{e.setQueryData(d,t)}})},"useCrewSettingsCheck",0,function(e){let t=(0,n.useQueryClient)(),i=()=>(0,o.fetchConsoleRead)({read:"crew-settings-check",input:{settings:e}});return{...(0,r.useConsoleRead)({queryKey:g(e),queryFn:i,enabled:void 0!==e}),checkNow:()=>t.query({queryKey:g(e),queryFn:i,staleTime:0})}},"useHasTrierarchPlugin",0,f,"useJoinMachine",0,function(){let e=(0,n.useQueryClient)();return(0,t.useMutation)({mutationFn:async e=>(0,a.dataOf)(await l(e)),onSuccess:async()=>{await e.invalidateQueries({queryKey:m})}})},"useMachines",0,function(){let e="connected"===p();return(0,r.useConsoleRead)({queryKey:m,queryFn:()=>(0,o.fetchConsoleRead)({read:"machines"}),refetchInterval:1e4,enabled:e})},"useTrierarchPluginConnection",0,p,"useTrierarchPluginSettings",0,c,"useTrierarchPluginVersion",0,function(){let e=f();return(0,r.useConsoleRead)({queryKey:["console-version","trierarch-plugin"],queryFn:()=>(0,o.fetchConsoleRead)({read:"trierarch-plugin-version"}),enabled:e}).data??void 0}],500265)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,915860,e=>{"use strict";var t=e.i(843476),s=e.i(618566),n=e.i(271645),a=e.i(60592),i=e.i(748955),r=e.i(456420);let d={name:"arrow-down-left",size:24,node:[["path",{d:"M17 7 7 17",key:"15tmo1"}],["path",{d:"M17 17H7V7",key:"1org7z"}]]};d.node;let l=(0,r.default)(d),o={name:"arrow-up-right",size:24,node:[["path",{d:"M7 7h10v10",key:"1tivn9"}],["path",{d:"M7 17 17 7",key:"1vkiza"}]]};o.node;let c=(0,r.default)(o),u={name:"mail",size:24,node:[["path",{d:"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7",key:"132q7q"}],["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}]]};u.node;let m=(0,r.default)(u);var h=e.i(825398),p=e.i(574296),x=e.i(965324),g=e.i(369693);function f(e,t){return RegExp(`"${t}"\\s*:\\s*"((?:[^"\\\\]|\\\\.)*)"`).exec(e)?.[1]}let v={"application/vnd.aeolus.squadron.check-in+json":()=>"Checked in at its flagship","application/vnd.aeolus.squadron.role+json":e=>{let t=f(e,"role");return void 0===t?"Given its role":`Given the role: ${t}`},"application/vnd.aeolus.squadron.on-station+json":e=>{let t=f(e,"role");return void 0===t?"Took up its role":`Took up the role: ${t}`},"application/vnd.aeolus.squadron.stand-down+json":()=>"Asked to stand down","application/vnd.aeolus.squadron.stood-down+json":()=>"Stood down"};var b=e.i(379369),w=e.i(849635),j=e.i(890135);function y(e,t){return e.sentAt.localeCompare(t.sentAt)||e.id.localeCompare(t.id)}var N=e.i(67874),k=e.i(817981),C=e.i(188393),S=e.i(639124),T=e.i(78865);function R({message:e,shipId:s,now:n,onOpenMessage:a}){var i,r,d;let o,u,m=e.sender.id===s,h=new Date(e.sentAt),p=void 0!==(u=v[r=(i=e).contentType,r.split(";")[0]?.trim().toLowerCase()??""])?{text:u(i.preview),isCode:!1}:(0,g.isJson)(i.contentType)?{text:0===(o=function(e){let t,s=[],n=0,a=0;for(;a<e.length;){let i=e[a]??"";if('"'===i){let{value:i,end:r}=function(e,t){let s=t+1;for(;s<e.length&&'"'!==e[s];)s+="\\"===e[s]?2:1;return{value:e.slice(t+1,s),end:s+1}}(e,a);1===n&&void 0===t&&e.slice(r).trimStart().startsWith(":")?t=i:1===n&&void 0!==t&&r<=e.length&&'"'===e[r-1]&&(s.push([t,i]),t=void 0),a=r;continue}if("{"===i||"["===i)1===n&&void 0!==t&&(s.push([t,"…"]),t=void 0),n+=1;else if("}"===i||"]"===i)n-=1;else if(1===n&&void 0!==t&&/[-\dtfn]/.test(i)){let n=/^(-?\d[\d.eE+-]*|true|false|null)/.exec(e.slice(a))?.[1];if(void 0!==n){s.push([t,n]),t=void 0,a+=n.length;continue}}a+=1}return s}(d=i.preview)).length?d:o.map(([e,t])=>`${e} ${t}`).join(" · "),isCode:!0}:{text:i.preview,isCode:!1};return(0,t.jsx)("li",{className:"border-b border-border last:border-b-0",children:(0,t.jsxs)("button",{type:"button","data-testid":"message-row","data-message-id":e.id,"aria-label":`${m?"Sent":"Received"} message: ${p.text}`,className:"flex w-full items-start gap-3 px-3.5 py-3 text-left transition-colors duration-(--duration-fast) hover:bg-accent",onClick:()=>{a(e.id)},children:[(0,t.jsx)("span",{"aria-hidden":!0,className:"mt-0.5 flex size-7 shrink-0 items-center justify-center rounded-md border border-tone-ended-border bg-tone-ended-bg text-tone-ended-fg [&_svg]:size-(--size-icon-sm)",children:(0,t.jsx)(m?c:l,{})}),(0,t.jsxs)("span",{className:"flex min-w-0 flex-1 flex-col gap-1",children:[(0,t.jsxs)("span",{className:"flex flex-wrap items-center justify-between gap-2",children:[(0,t.jsx)(S.Sentence,{parts:m?"ship"===e.recipient.kind?[(0,j.text)("To "),(0,j.ship)(e.recipient.ship)]:[(0,j.text)(`To any ship of type ${e.recipient.type}`)]:[(0,j.text)("From "),(0,j.ship)(e.sender)],className:"text-body text-foreground max-sm:text-body-touch"}),(0,t.jsx)(T.StatusBadge,{status:(0,b.deliveryStatus)(e.delivery)})]}),(0,t.jsx)("span",{"data-testid":"message-line",className:(0,x.classNames)("truncate text-muted-foreground",p.isCode?"font-mono text-id":"text-meta"),children:p.text}),(0,t.jsx)("time",{dateTime:e.sentAt,title:(0,w.fullDateTime)(h),className:"text-meta text-muted-foreground tabular-nums",children:(0,w.relativeTime)(h,n)})]})]})})}function $({shipId:e,messages:s,state:n,onRetry:a,more:i,now:r,onOpenMessage:d}){return"loading"===n?(0,t.jsx)(C.LoadingSkeleton,{variant:"list",rows:3,label:"Loading the messages"}):"error"===n?(0,t.jsxs)("div",{className:"flex flex-col gap-3 rounded-lg border border-border bg-card p-3",children:[(0,t.jsx)(k.InlineError,{title:"Couldn’t load the messages",description:"The rest of the page is current. Try again in a moment."}),a?(0,t.jsx)(p.Button,{size:"sm",icon:(0,t.jsx)(h.RotateCw,{"aria-hidden":!0}),onClick:a,className:"self-start",children:"Try again"}):null]}):0!==s.length||i?(0,t.jsxs)("div",{className:"flex flex-col gap-3",children:[(function(e){let t=new Map(e.map(e=>[e.id,e])),s=new Map;for(let n of e){let e=function(e,t){let s=new Set([e.id]),n=e,a=null===n.inReplyTo?void 0:t.get(n.inReplyTo);for(;a&&!s.has(a.id);)s.add(a.id),a=null===(n=a).inReplyTo?void 0:t.get(n.inReplyTo);return n}(n,t);s.set(e.id,[...s.get(e.id)??[],n])}return[...s.entries()].map(([e,t])=>{let s=t.toSorted(y);return{id:e,messages:s,lastSentAt:s.at(-1)?.sentAt??""}}).toSorted((e,t)=>t.lastSentAt.localeCompare(e.lastSentAt)||t.id.localeCompare(e.id))})(s).map(s=>(0,t.jsx)("section",{"data-testid":"message-thread","aria-label":`Thread of ${String(s.messages.length)} ${1===s.messages.length?"message":"messages"}`,className:"overflow-hidden rounded-lg border border-border bg-card",children:(0,t.jsx)("ol",{children:s.messages.map(s=>(0,t.jsx)(R,{message:s,shipId:e,now:r,onOpenMessage:d},s.id))})},s.id)),i]}):(0,t.jsx)(N.EmptyState,{variant:"section",icon:(0,t.jsx)(m,{}),title:"No messages yet",description:"Messages this ship sends or receives appear here as they happen."})}var I=e.i(917540),q=e.i(490262),A=e.i(54492),L=e.i(808041),D=e.i(905387),O=e.i(280581),z=e.i(510921),M=e.i(878608),P=e.i(684156),B=e.i(500265),E=e.i(341880),F=e.i(316984),H=e.i(474544),V=e.i(758925),_=e.i(218964),U=e.i(611568),W=e.i(668997),K=e.i(457665),G=e.i(395925),Y=e.i(586875),J=e.i(522016),X=e.i(34512),Q=e.i(866616),Z=e.i(695960);let ee={request:"Couldn’t request crew",remove:"Couldn’t remove the request",restart:"Couldn’t restart the crew"};function et({at:e,now:s,children:n}){return(0,t.jsx)("time",{dateTime:e,title:(0,w.fullDateTime)(new Date(e)),className:"tabular-nums",children:n??(0,w.sinceTime)(new Date(e),s)})}function es({trierarch:e,hasTrierarchs:s}){return(0,t.jsxs)(J.default,{href:s?`/trierarchs/${e.id}`:`/ships/${e.id}`,"data-testid":"crew-request-trierarch",className:"inline-flex min-w-0 items-center gap-1.5 font-medium text-foreground underline decoration-input underline-offset-3 [&_svg]:size-(--size-icon-sm) [&_svg]:shrink-0 [&_svg]:text-muted-foreground",children:[(0,t.jsx)(Y.ShipWheel,{"aria-hidden":!0}),(0,t.jsx)("span",{className:"truncate",children:e.name})]})}function en({requestedBy:e,requestedAt:s,now:n}){let a=null===e?null:e.name===j.OPERATOR_NAME?"you":e.name;return(0,t.jsxs)("span",{"data-testid":"crew-request-requested-by",children:[null===a?"Requested ":`Requested by ${a} `,(0,t.jsx)(et,{at:s,now:n,children:(0,w.relativeTime)(new Date(s),n)}),"."]})}let ea={note:"border-border bg-muted text-muted-foreground",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"};function ei({tone:e,icon:s,children:n}){return(0,t.jsxs)("div",{role:"attention"===e?"alert":"waiting"===e?"status":"note","data-testid":"crew-request-note",className:`flex items-start gap-2 rounded-lg border px-3 py-2.5 text-meta [&_svg]:mt-0.5 [&_svg]:size-(--size-icon-sm) [&_svg]:shrink-0 ${ea[e]}`,children:[s,(0,t.jsx)("span",{children:n})]})}function er({stage:e,now:s}){let n="running"===e.status?e.startedAt:null,a=(0,A.restartWords)(e);return null===n&&void 0===a?null:(0,t.jsxs)("span",{className:"text-meta text-muted-foreground","data-testid":"crew-request-session",children:[null===n?null:(0,t.jsxs)(t.Fragment,{children:["since ",(0,t.jsx)(et,{at:n,now:s})]}),null!==n&&void 0!==a?" · ":null,a]})}function ed({rows:e,machineLabels:s=[]}){return(0,t.jsxs)("dl",{"data-testid":"crew-request-settings",className:"grid grid-cols-[repeat(auto-fill,minmax(8.5rem,1fr))] gap-x-5 gap-y-3 border-t border-border pt-3",children:[e.map(e=>(0,t.jsxs)("div",{className:"flex min-w-0 flex-col gap-0.5",children:[(0,t.jsx)("dt",{className:"text-caption font-medium text-muted-foreground",children:e.label}),(0,t.jsxs)("dd",{className:"flex min-w-0 flex-wrap items-baseline gap-x-1.5 text-body font-medium",children:[null===e.value?(0,t.jsx)("span",{className:"font-normal text-muted-foreground",children:"None"}):(0,t.jsx)("span",{className:e.isMono?"truncate font-mono text-id":"truncate",children:"Harness"===e.label?(0,Q.harnessWord)(e.value):e.value}),void 0===e.meta?null:(0,t.jsx)("span",{className:"text-meta font-normal text-muted-foreground",children:e.meta})]})]},e.label)),0===s.length?null:(0,t.jsxs)("div",{className:"col-span-full flex min-w-0 flex-col gap-0.5","data-testid":"crew-request-machine-labels",children:[(0,t.jsx)("dt",{className:"text-caption font-medium text-muted-foreground",children:"Machine labels"}),(0,t.jsx)("dd",{className:"flex min-w-0 flex-wrap items-center gap-1.5",children:s.map((e,s)=>(0,t.jsxs)(n.Fragment,{children:[0===s?null:(0,t.jsx)("span",{className:"text-meta text-muted-foreground",children:"and"}),(0,t.jsx)(Z.LabelChip,{chip:e})]},e.valueId))})]})]})}function el(){return(0,t.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,t.jsx)(_.ListChecks,{"aria-hidden":!0,className:"size-(--size-icon) text-muted-foreground"}),(0,t.jsx)("h2",{className:"text-section font-semibold",children:"Crew request"})]})}function eo(e){let{noMachineMatchesReason:s}=(0,X.useConsoleConstants)(),{stage:n,requestedBy:a,now:i,canManage:r,isAwaitingCrew:d,busy:l,error:o}=e,c=void 0===o?null:(0,t.jsx)(k.InlineError,{title:ee[o.action],description:`${o.message} Nothing changed.`});if("none"===n.kind)return(0,t.jsxs)("section",{"aria-label":"Crew request","data-testid":"crew-request",className:"flex flex-col gap-2.5 rounded-lg border border-border bg-card px-4 py-3.5 shadow-sm",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-3.5",children:[(0,t.jsx)(el,{}),(0,t.jsx)("p",{className:"min-w-0 flex-1 text-meta text-muted-foreground",children:e.hasTrierarchs?"No crew request. A crew request keeps this ship crewed: a trierarch starts a session for it and restarts it when it stops.":"No crew request. A crew request puts this ship on your Needs crew list until you crew it by hand."}),r?(0,t.jsx)(p.Button,{size:"sm",icon:(0,t.jsx)(_.ListChecks,{}),isLoading:"request"===l,onClick:e.onRequest,"data-testid":"crew-request-request",children:"Request crew"}):null]}),c]});let u=(0,A.crewRequestAction)(n),m=void 0!==l;return(0,t.jsxs)("section",{"aria-label":"Crew request","data-testid":"crew-request",className:"flex flex-col gap-2.5 rounded-lg border border-border bg-card px-4 py-3.5 shadow-sm",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-3",children:[(0,t.jsx)(el,{}),(0,t.jsxs)("span",{className:"inline-flex min-w-0 items-center gap-2","data-testid":"crew-request-state",children:["assigned"===n.kind?(0,t.jsx)(T.StatusBadge,{status:n.status}):(0,t.jsx)(T.StatusBadge,{status:n.kind}),"needsCrew"===n.kind?(0,t.jsx)("span",{className:"text-meta text-muted-foreground",children:e.hasTrierarchs?"not assigned yet":n.reason??(0,t.jsxs)(t.Fragment,{children:["since ",(0,t.jsx)(et,{at:n.requestedAt,now:i})]})}):null,"crewedByHand"===n.kind&&null!==n.since?(0,t.jsxs)("span",{className:"text-meta text-muted-foreground",children:["since ",(0,t.jsx)(et,{at:n.since,now:i})]}):null,"assigned"===n.kind?(0,t.jsx)(er,{stage:n,now:i}):null,"assigned"===n.kind&&"releasing"===n.status&&void 0!==e.statusChangedAt?(0,t.jsxs)("span",{className:"text-meta text-muted-foreground",children:["asked ",(0,t.jsx)(et,{at:e.statusChangedAt,now:i})]}):null]}),"assigned"===n.kind?(0,t.jsxs)("span",{className:"inline-flex min-w-0 items-center gap-1 text-meta",children:["on ",(0,t.jsx)(es,{trierarch:n.trierarch,hasTrierarchs:e.hasTrierarchs??!1})]}):null,(0,t.jsx)("span",{className:"flex-1"}),"assigned"===n.kind&&"releasing"===n.status?(0,t.jsxs)("span",{className:"text-meta text-muted-foreground",children:["Waiting for ",n.trierarch.name]}):null,r?(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:["remove"===u?(0,t.jsx)(p.Button,{size:"sm",variant:"ghost",isLoading:"remove"===l,disabled:m,onClick:e.onRemove,"data-testid":"crew-request-remove",children:"Remove request"}):null,(0,A.isRestartable)(n)?(0,t.jsx)(p.Button,{size:"sm",icon:(0,t.jsx)(G.RotateCcw,{}),isLoading:"restart"===l,disabled:m,onClick:e.onRestart,"data-testid":"crew-request-restart",children:"Restart"}):null,void 0!==e.onEdit&&void 0!==u?(0,t.jsx)(p.Button,{size:"sm",icon:(0,t.jsx)(W.Pen,{}),disabled:m,onClick:e.onEdit,"data-testid":"crew-request-edit",children:"Edit…"}):null,"release"===u?(0,t.jsx)(p.Button,{size:"sm",icon:(0,t.jsx)(K.Power,{}),disabled:m,onClick:e.onRelease,"data-testid":"crew-request-release",children:"Release…"}):null,"needsCrew"===n.kind&&d&&!e.hasTrierarchs?(0,t.jsx)(p.Button,{size:"sm",variant:"primary",icon:(0,t.jsx)(V.KeyRound,{}),disabled:m,onClick:e.onGetStartingPrompt,"data-testid":"crew-request-prompt",children:"Get starting prompt"}):null]}):null]}),"assigned"===n.kind?function(e,s){let{trierarch:n}=e,a=void 0===s.statusChangedAt?null:(0,t.jsx)(et,{at:s.statusChangedAt,now:s.now});switch(e.status){case"crewing":return(0,t.jsxs)(ei,{tone:"note",icon:(0,t.jsx)(U.LoaderCircle,{"aria-hidden":!0}),children:[n.name," is starting the session."]});case"running":return null;case"restarting":return(0,t.jsxs)(ei,{tone:"waiting",icon:(0,t.jsx)(G.RotateCcw,{"aria-hidden":!0}),children:[(0,t.jsx)("strong",{className:"font-medium",children:null===a?"The session stopped.":(0,t.jsxs)(t.Fragment,{children:["The session stopped at ",a,"."]})})," ",n.name," is starting it again. Once its restarts are used up it stops trying and the request shows Crashed."]});case"crashed":return(0,t.jsxs)(ei,{tone:"attention",icon:(0,t.jsx)(F.CircleX,{"aria-hidden":!0}),children:[(0,t.jsx)("strong",{className:"font-medium",children:null===a?"Crashed.":(0,t.jsxs)(t.Fragment,{children:["Crashed at ",a,"."]})})," The session kept stopping and ",n.name," ","stopped trying. The lease still holds, so new deliveries wait in the inbox. Restart crews it again with the same settings."]});case"releasing":return(0,t.jsxs)(ei,{tone:"note",icon:(0,t.jsx)(K.Power,{"aria-hidden":!0}),children:["Releasing: ",n.name," is stopping the session and cleaning up. The request goes away once it confirms."]})}}(n,{statusChangedAt:e.statusChangedAt,now:i}):null,"needsCrew"===n.kind&&e.hasTrierarchs?null===n.reason?(0,t.jsx)(ei,{tone:"note",icon:(0,t.jsx)(U.LoaderCircle,{"aria-hidden":!0}),children:"Waiting for the trierarch plugin to assign a trierarch."}):n.reason===s&&void 0!==e.machineLabels&&e.machineLabels.length>0?(0,t.jsxs)(ei,{tone:"waiting",icon:(0,t.jsx)(H.Clock,{"aria-hidden":!0}),children:[(0,t.jsx)("strong",{className:"font-medium",children:"No machine matches these labels."})," The plugin places this ship only on a machine with ",(0,M.machineLabelsText)(e.machineLabels),", and none"," ",(0,M.noMatchWords)(e.machineLabels.length).carries,". It assigns a trierarch as soon as one does; until then this ship is on Needs crew."]}):(0,t.jsxs)(ei,{tone:"waiting",icon:(0,t.jsx)(H.Clock,{"aria-hidden":!0}),children:[(0,t.jsxs)("strong",{className:"font-medium",children:[(0,j.capitalised)(n.reason),"."]})," The plugin assigns a trierarch as soon as one fits. Until then this ship is on Needs crew."]}):null,c,void 0===e.settingsRows?null:(0,t.jsx)(ed,{rows:e.settingsRows,machineLabels:e.machineLabels}),(0,t.jsxs)("p",{className:"text-meta text-muted-foreground",children:["needsCrew"!==n.kind||e.hasTrierarchs?null:"On your Needs crew list. Crew it by hand: get a starting prompt and start a session with it. Crewing it fulfils the request; the request stays until you remove it. ","crewedByHand"===n.kind?`${n.crewedBy.name===j.OPERATOR_NAME?"You":n.crewedBy.name} crewed it by hand. The request stands: if the lease ends, the ship is back on Needs crew until you crew it again or release it. `:null,(0,t.jsx)(en,{requestedBy:a,requestedAt:n.requestedAt,now:i}),"assigned"===n.kind&&"releasing"!==n.status?" The trierarch keeps it crewed until you release it.":null]})]})}var ec=e.i(686165),eu=e.i(448695);let em=(0,I.lazyDialog)(()=>e.A(823569).then(e=>e.RequestCrewDialog),e=>e.isOpen),eh=(0,I.lazyDialog)(()=>e.A(705419).then(e=>e.CrewReleaseDialog),e=>e.isOpen),ep=(0,I.lazyDialog)(()=>e.A(495953).then(e=>e.StartingPromptDialog),e=>e.isOpen);function ex({ship:e,timeline:s,now:a}){let i=(0,q.useAccess)(),r=(0,B.useHasTrierarchPlugin)(),d=(0,D.useRequestCrew)(),l=(0,D.useLabelContext)(),o=(0,D.useRemoveCrewRequest)(),c=(0,D.useReleaseShip)(),u=(0,D.useGetStartingPrompt)(),[m,h]=(0,n.useState)(),[p,x]=(0,n.useState)(),[g,f]=(0,n.useState)(!1),[v,b]=(0,n.useState)(),[w,j]=(0,n.useState)(!1),[y,N]=(0,n.useState)(),[k]=(0,z.useCrewSettings)(null===e.crewRequest?[]:[e.crewRequest.settings])??[],C=function(e){let s=(0,B.useMachines)(),a=(0,ec.useSquadronsConnection)(),i=(0,eu.useSquadrons)(),r=(0,D.useRequestCrew)(),d=(0,D.useLabelContext)(s.data?.map(e=>e.shipId)),[l,o]=(0,n.useState)(),[c,u]=(0,n.useState)(null),[m,h]=(0,n.useState)(),p=(0,L.offersOf)(s.data??[]),{shipLabelsMax:x}=(0,X.useConsoleConstants)(),g=void 0===d||void 0===s.data?void 0:(0,M.machineLabelsInputOf)(d,{machines:s.data,shipLabelsMax:x}),f=(0,z.useCrewSettings)(e?.heldSettings===void 0?[]:[e.heldSettings]),v=f?.[0]??null,b=(0,L.settingsOf)("edit"===l?(0,L.valuesOf)(v,p):(0,L.defaultValues)(p)),w=void 0!==l&&void 0!==e&&("edit"!==l||void 0!==f),j=(0,B.useCrewSettingsCheck)(w&&void 0!==s.data?null===c?b:c:void 0),y=async t=>{if(void 0!==e&&void 0!==l){r.reset();try{let e=await j.checkNow();if("refused"===e.kind)return void h(new Date)}catch{}r.mutate({shipId:e.shipId,settings:t},{onSuccess:()=>{o(void 0),(0,E.showToast)("edit"===l?{title:`Settings saved for ${e.shipName}`,description:"Its trierarch restarts the session with them.",tone:"success"}:{title:`Crew requested for ${e.shipName}`,description:"The trierarch plugin assigns a trierarch that fits.",tone:"success"})}})}};return{open:e=>{r.reset(),u(null),h(void 0),o(e)},dialog:void 0===e?null:(0,t.jsx)(em,{shipName:e.shipName,mode:l??"request",state:s.isError?"unreachable":void 0===s.data?"loading":"ready",offers:p,heldSettings:v,squadrons:"connected"===a?(i.data??[]).filter(e=>"disbanded"!==e.state).map(e=>e.id):void 0,...void 0===g?{}:{machineLabels:g},check:j.data,refusedAt:m,error:r.error?.message,isPending:r.isPending,isOpen:w,onOpenChange:e=>{e||o(void 0)},onSettingsChange:e=>{u(e),h(void 0)},onSubmit:e=>void y(e),onRetry:()=>{s.refetch()}})}}("agent"===e.kind&&"retired"!==e.status?{shipId:e.id,shipName:e.name,heldSettings:e.crewRequest?.settings}:void 0);if("agent"!==e.kind||"retired"===e.status)return null;let S=(0,A.crewRequestStage)(e),T=e.crewRequest,R=async(e,t)=>{h(e),x(void 0);try{return await t(),!0}catch(t){return x({action:e,message:t instanceof Error?t.message:String(t)}),!1}finally{h(void 0)}},$=()=>{u.reset(),N((0,P.isUnclaimedPromptOut)(e)&&e.startingPrompt?{issuedAt:e.startingPrompt.issuedAt}:void 0),j(!0),u.mutate({shipId:e.id})},I=async()=>{await R("request",()=>d.mutateAsync({shipId:e.id,settings:{}}))&&(0,E.showToast)({title:`${e.name} needs crew`,description:"It is on your Needs crew list until you crew it.",tone:"success",..."awaitingCrew"===e.status&&i.canManage?{action:{label:"Get starting prompt",onClick:$}}:{}})},F=async()=>{null===T||"assigned"!==S.kind||await R("restart",()=>d.mutateAsync({shipId:e.id,settings:T.settings}))&&(0,E.showToast)({title:`Restarting ${e.name}`,description:`${S.trierarch.name} starts its session again with the same settings.`,tone:"success"})},H=async t=>{b(void 0);let s=(0,A.releaseSteps)(t),n=0;try{for(let t of s)await ("removeCrewRequest"===t?o.mutateAsync({shipId:e.id}):c.mutateAsync({shipId:e.id})),n+=1;f(!1)}catch(t){let e=t instanceof Error?t.message:String(t);b(0===n?`${e} Nothing changed.`:`${e} Its crew request is removed; the session still holds the ship. Try again to end its lease.`)}};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(eo,{stage:S,requestedBy:(0,A.requestedBy)(s),statusChangedAt:(0,A.statusChangedAt)(s),now:a,canManage:i.canManage,isAwaitingCrew:"awaitingCrew"===e.status,hasTrierarchs:r,busy:m,error:p,settingsRows:null===T?void 0:(0,L.settingsRows)(k),...null===T||void 0===l?{}:{machineLabels:(0,O.pickedChips)((0,M.machineLabelIdsOf)(k),l)},onRequest:()=>{r?C.open("request"):I()},...r?{onEdit:()=>{C.open("edit")}}:{},onRemove:()=>void R("remove",()=>o.mutateAsync({shipId:e.id})),onRelease:()=>{b(void 0),f(!0)},onRestart:()=>void F(),onGetStartingPrompt:$}),C.dialog,"crewedByHand"===S.kind||"assigned"===S.kind?(0,t.jsx)(eh,{shipName:e.name,stage:S,sessionLocation:null===e.location?null:e.location.description??e.location.kind.toLowerCase(),inFlightCount:e.inFlightDeliveries,isOpen:g,onOpenChange:f,isPending:o.isPending||c.isPending,error:v,onConfirm:()=>void H(S)}):null,(0,t.jsx)(ep,{shipName:e.name,state:u.data?"shown":u.isError?"error":"issuing",prompt:u.data?.prompt,crewLines:u.data?.crewLines,replacesUnclaimed:y,error:u.error?.message,isOpen:w,onOpenChange:e=>{e||(u.reset(),j(!1))},onConfirm:()=>{u.mutate({shipId:e.id})}})]})}var eg=e.i(784294),ef=e.i(219249);function ev({label:e,children:s}){return(0,t.jsxs)("div",{className:"flex min-w-0 flex-col gap-1 bg-card px-3.5 py-3",children:[(0,t.jsx)("dt",{className:"text-meta text-muted-foreground",children:e}),(0,t.jsx)("dd",{className:"flex min-w-0 flex-wrap items-center gap-1.5 text-body text-foreground",children:s})]})}function eb({shipId:e,now:s}){let n=(0,eu.useSquadrons)(),a=(0,eu.useCatalogue)(),i=n.data?.find(t=>t.flagship.shipId===e||t.members.some(t=>t.shipId===e));if(!i)return null;let r=(0,t.jsx)(J.default,{href:`/squadrons/${i.id}`,className:"font-mono hover:underline","data-testid":"ship-squadron-link",children:i.id});if(i.flagship.shipId===e)return(0,t.jsxs)("div",{role:"note","data-testid":"ship-flagship-note",className:"flex flex-wrap items-center gap-3 rounded-lg border border-border bg-muted px-3.5 py-3 text-meta text-foreground",children:[(0,t.jsxs)("span",{className:"grow",children:["Flagship of squadron ",r,": the address for work sent to the team. The squadron manager crews it, so it can’t be released, renamed or retired; it retires when the squadron disbands."]}),(0,t.jsx)(p.Button,{size:"xs",nativeButton:!1,render:(0,t.jsx)(J.default,{href:`/squadrons/${i.id}`}),"data-testid":"ship-open-squadron",children:"Open squadron"})]});let d=i.members.find(t=>t.shipId===e);if(!d)return null;let l=a.data?.blueprints.find(e=>e.repository===i.blueprint.repository&&e.name===i.blueprint.name&&e.version===i.blueprint.version),o=l?.roles.find(e=>e.name===d.role)?.template,c=null===d.crew.lastSeenAt?void 0:(0,w.duration)(new Date(d.crew.lastSeenAt),s);return(0,t.jsxs)("div",{className:"flex flex-col gap-3",children:["silent"===d.health&&"disbanded"!==i.state&&(0,t.jsxs)("div",{role:"alert","data-testid":"ship-silent-alert",className:"rounded-lg border border-tone-attention-border bg-tone-attention-bg px-3.5 py-3 text-meta text-foreground",children:[(0,t.jsx)("strong",{className:"font-semibold text-tone-attention-fg",children:void 0===c?"Silent.":`Silent: not seen for ${c}.`})," It checks in"," ",(0,eg.checkInText)(d.checkInMinutes),", so its session has probably stopped. Get a new crew line and start a new session; the old crew line then stops working."]}),(0,t.jsxs)("dl",{"data-testid":"ship-squadron-facts",className:"grid grid-cols-4 gap-px overflow-hidden rounded-lg border border-border bg-border max-sm:grid-cols-2",children:[(0,t.jsxs)(ev,{label:"Squadron",children:[r,(0,t.jsx)(T.StatusBadge,{status:i.state})]}),(0,t.jsxs)(ev,{label:"Role and template",children:[(0,t.jsx)("span",{className:"rounded-sm bg-secondary px-1.5 font-mono text-id",children:d.role}),o&&(0,t.jsxs)(J.default,{href:(0,eg.templatePath)(o),className:"font-mono text-meta hover:underline",children:[o.name,"@",o.version]})]}),(0,t.jsx)(ev,{label:"Health",children:(0,t.jsx)(ef.HealthIndicator,{health:d.health,detail:"silent"===d.health||"late"===d.health?c:void 0})}),(0,t.jsx)(ev,{label:"Hand-offs",children:l?(0,t.jsx)("span",{className:"text-meta",children:(0,eg.handoffsText)((0,eg.handoffsOf)(l,d.role))}):(0,t.jsx)(J.default,{href:(0,eg.blueprintPath)(i.blueprint),className:"text-meta text-muted-foreground hover:underline",children:"See its blueprint"})})]})]})}var ew=e.i(221959),ej=e.i(215327),ey=e.i(876561),eN=e.i(422768),ek=e.i(810818),eC=e.i(869309),eS=e.i(765649),eT=e.i(766390),eR=e.i(861966),e$=e.i(219321),eI=e.i(763481);function eq({harness:e,model:s,testId:n}){return null===e&&null===s?null:(0,t.jsxs)("span",{"data-testid":n,className:"flex min-w-0 flex-wrap items-center gap-x-1 text-meta text-muted-foreground",children:[null===e?null:(0,t.jsx)("span",{children:(0,Q.harnessWord)(e)}),null!==e&&null!==s?(0,t.jsx)("span",{"aria-hidden":!0,children:"·"}):null,null===s?null:(0,t.jsx)("span",{className:"truncate font-mono text-id",children:s})]})}var eA=e.i(73330);function eL({ping:e,now:s,testId:n}){return null===e?null:(0,t.jsx)("span",{title:`Pinged ${(0,w.fullDateTime)(new Date(e.sentAt))}`,"data-testid":n,"data-state":e.state,className:"text-meta text-muted-foreground tabular-nums",children:(0,eA.pingLine)(e,s)})}var eD=e.i(867927),eO=e.i(793361),ez=e.i(591703);function eM({details:e,bytes:s,version:n,testId:a}){return(0,t.jsxs)("details",{"data-testid":a,className:"group rounded-lg border border-border bg-card",children:[(0,t.jsxs)("summary",{className:"flex cursor-pointer list-none items-center gap-1.5 px-3.5 py-2.5 text-meta text-muted-foreground [&::-webkit-details-marker]:hidden",children:[(0,t.jsx)(eD.ChevronRight,{"aria-hidden":!0,className:"size-(--size-icon-sm) shrink-0 transition-transform group-open:rotate-90"}),(0,t.jsx)("span",{className:"font-medium text-foreground",children:"Report details"}),(0,t.jsxs)("span",{className:"tabular-nums",children:["· version ",n]})]}),(0,t.jsx)("div",{className:"px-3.5 pb-3.5",children:(0,t.jsx)(ez.CodeBlock,{label:(0,eO.reportDetailsLabel)(s),code:(0,eO.reportDetailsJson)(e),copyLabel:"Copy report details",codeTestId:`${a}-code`})})]})}function eP({statement:e,testId:s}){return null===e?(0,t.jsx)("span",{"data-testid":s,className:"text-meta text-muted-foreground",children:"No statement"}):"commission"===e.by?(0,t.jsxs)("span",{"data-testid":s,className:"flex min-w-0 flex-col gap-0.5",children:[(0,t.jsx)("span",{className:"text-body text-foreground",children:e.note}),(0,t.jsx)("span",{className:"text-meta text-muted-foreground",children:"Commission note, until a crew states one"})]}):(0,t.jsxs)("span",{"data-testid":s,className:"flex min-w-0 flex-col gap-1.5",children:[(0,t.jsx)("span",{className:"text-body text-foreground",children:e.summary}),0===e.capabilities.length?null:(0,t.jsx)("ul",{"aria-label":"Offers",className:"flex min-w-0 flex-col gap-1",children:e.capabilities.map(e=>(0,t.jsxs)("li",{className:"flex min-w-0 flex-wrap items-baseline gap-x-1.5 text-meta",children:[(0,t.jsx)("span",{className:"font-mono text-id text-foreground",children:e.name}),void 0===e.title?null:(0,t.jsx)("span",{className:"text-foreground",children:e.title}),void 0===e.description?null:(0,t.jsx)("span",{className:"text-muted-foreground",children:e.description})]},e.name))}),(0,t.jsxs)("span",{className:"text-meta text-muted-foreground",children:["Stated by its crew · version ",e.version]})]})}var eB=e.i(781830),eE=e.i(539448);function eF({label:e,children:s}){return(0,t.jsxs)("div",{className:"flex min-w-0 flex-col gap-1 bg-card px-3.5 py-3",children:[(0,t.jsx)("dt",{className:"text-meta text-muted-foreground",children:e}),(0,t.jsx)("dd",{className:"flex min-w-0 items-center gap-1.5 text-body text-foreground",children:s})]})}function eH({ship:e,now:s,labels:n,way:a}){let i,r="operator"===e.kind,d=null===e.crewedSince?null:new Date(e.crewedSince),l=new Date(e.commissionedAt);return(0,t.jsxs)("dl",{className:"grid grid-cols-4 gap-px overflow-hidden rounded-lg border border-border bg-border max-sm:grid-cols-2",children:[(0,t.jsx)(eF,{label:"Location",children:(0,t.jsxs)("span",{className:"inline-flex min-w-0 flex-col gap-0.5",children:[(0,t.jsx)(eI.LocationTag,{kind:e.location?.kind??null,description:e.location?.description,size:"md"}),(0,t.jsx)(eq,{harness:e.harness,model:e.model?.id??null,testId:"ship-model"}),null===e.lastSeenAt?null:(0,t.jsx)("time",{dateTime:e.lastSeenAt,title:(0,w.fullDateTime)(new Date(e.lastSeenAt)),"data-testid":"ship-last-seen",className:"text-meta text-muted-foreground tabular-nums",children:(0,w.lastSeen)(new Date(e.lastSeenAt),s)}),(0,t.jsx)(eL,{ping:e.ping,now:s,testId:"ship-ping-status"}),"agent"!==e.kind&&"plugin"!==e.kind?null:(0,t.jsx)(eB.ReportLine,{report:e.report,now:s,variant:"full",testId:"ship-report"})]})}),(0,t.jsx)(eF,{label:"Crewed since",children:d?(0,t.jsx)("time",{dateTime:e.crewedSince??void 0,title:(0,w.fullDateTime)(d),className:"tabular-nums",children:(i=s.getTime()-d.getTime()<864e5?(0,w.clockTime)(d):(0,w.shortDateTime)(d),`${i} \xb7 ${(0,w.duration)(d,s)}`)}):(0,t.jsx)("span",{className:"text-muted-foreground",children:"Not crewed"})}),(0,t.jsx)(eF,{label:"Commissioned",children:(0,t.jsx)("time",{dateTime:e.commissionedAt,title:(0,w.fullDateTime)(l),children:r?`Fleet created ${(0,w.dayDate)(l)}`:(0,w.dayDate)(l)})}),(0,t.jsxs)(eF,{label:"Ship id",children:[(0,t.jsx)("span",{className:"truncate font-mono text-id",children:e.id}),(0,t.jsx)(eR.CopyButton,{value:e.id,label:"Copy ship id"})]}),void 0===a?null:(0,t.jsxs)("div",{className:"col-span-4 flex min-w-0 items-start gap-4 bg-card px-3.5 py-2.5 max-sm:col-span-2 max-sm:flex-col max-sm:gap-1.5","data-testid":"ship-delivery",children:[(0,t.jsx)("dt",{className:"shrink-0 text-meta text-muted-foreground",children:"Delivery"}),(0,t.jsx)("dd",{className:"min-w-0 flex-1",children:a})]}),r?null:(0,t.jsxs)("div",{className:"col-span-4 flex min-w-0 items-start gap-4 bg-card px-3.5 py-2.5 max-sm:col-span-2 max-sm:flex-col max-sm:gap-1.5",children:[(0,t.jsx)("dt",{className:"shrink-0 text-meta text-muted-foreground",children:"Statement"}),(0,t.jsx)("dd",{className:"min-w-0 flex-1",children:(0,t.jsx)(eP,{statement:e.statement,testId:"ship-statement"})})]}),void 0===n?null:(0,t.jsxs)("div",{className:"col-span-4 flex min-w-0 items-center gap-4 bg-card px-3.5 py-2.5 max-sm:col-span-2 max-sm:flex-col max-sm:items-start max-sm:gap-1.5","data-testid":"ship-labels",children:[(0,t.jsx)("dt",{className:"shrink-0 text-meta text-muted-foreground",children:"Labels"}),(0,t.jsx)("dd",{className:"min-w-0 flex-1",children:n})]})]})}function eV({icon:e,children:s}){return(0,t.jsxs)("p",{className:"flex items-center gap-2 rounded-lg border border-border bg-muted px-3.5 py-2.5 text-meta text-muted-foreground [&_svg]:size-(--size-icon-sm) [&_svg]:shrink-0",children:[e,(0,t.jsx)("span",{children:s})]})}function e_({ship:e,shipId:s,state:n,actions:a,crewRequest:i,now:r,backHref:d="/",labels:l,isPluginShip:o=!1,way:c}){let{fleetScopes:u}=(0,X.useConsoleConstants)();if("loading"===n||"ready"===n&&void 0===e)return(0,t.jsxs)("div",{"aria-busy":!0,"data-testid":"ship-header",className:"flex flex-col gap-4",children:[(0,t.jsx)("span",{className:"sr-only",children:"Loading the ship"}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(e$.Skeleton,{className:"h-8 w-40"}),(0,t.jsx)(e$.Skeleton,{className:"h-6 w-20"}),(0,t.jsx)(e$.Skeleton,{className:"h-6 w-16"})]}),(0,t.jsx)(e$.Skeleton,{className:"h-16 w-full rounded-lg"})]});if("not-found"===n||void 0===e)return(0,t.jsx)("div",{"data-testid":"ship-header",children:(0,t.jsx)(N.EmptyState,{variant:"section",icon:(0,t.jsx)(eN.CircleAlert,{}),title:"Ship not found",description:(0,t.jsxs)(t.Fragment,{children:["No ship with the id ",s?(0,t.jsx)("span",{className:"font-mono text-id",children:s}):"given"," exists in this fleet. The link may be incomplete. Retired ships keep their page."]}),action:(0,t.jsx)(p.Button,{size:"sm",nativeButton:!1,render:({children:e,...s})=>(0,t.jsx)(J.default,{href:d,...s,children:e}),children:"Back to fleet overview"})})});let m="operator"===e.kind,h="retired"===e.status;return(0,t.jsxs)("div",{"data-testid":"ship-header",className:"flex flex-col gap-4 max-sm:gap-3",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[(0,t.jsxs)("div",{className:"flex min-w-0 flex-wrap items-center gap-2.5 max-sm:flex-col max-sm:items-start max-sm:gap-1.5",children:[(0,t.jsx)("h1",{className:"min-w-0",children:(0,t.jsx)(eE.ShipName,{name:e.name,shipId:e.id,size:"title",isSuffixShown:h})}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,t.jsx)(T.StatusBadge,{status:e.status}),m?(0,t.jsxs)(eT.Badge,{variant:"kind",children:[(0,t.jsx)(eS.UserRound,{"aria-hidden":!0}),"operator"]}):(0,t.jsxs)(t.Fragment,{children:[o?(0,t.jsxs)(eT.Badge,{variant:"kind","data-testid":"ship-plugin",children:[(0,t.jsx)(eC.Plug,{"aria-hidden":!0}),"plugin"]}):null,(0,t.jsx)(eT.Badge,{variant:"type",children:e.type}),e.scopes.filter(e=>u.some(t=>t===e)).map(e=>(0,t.jsx)(eT.Badge,{variant:"kind","data-testid":"ship-fleet-scope",children:e},e))]}),"awaitingCrew"===e.status&&null===e.startingPrompt?(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-meta text-muted-foreground [&_svg]:size-(--size-icon-sm)",children:[(0,t.jsx)(V.KeyRound,{"aria-hidden":!0}),"No starting prompt issued"]}):null,"awaitingCrew"===e.status&&null!==e.startingPrompt?(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-meta text-muted-foreground [&_svg]:size-(--size-icon-sm)",children:[(0,t.jsx)(V.KeyRound,{"aria-hidden":!0}),(0,t.jsxs)("span",{children:["Prompt issued"," ",(0,t.jsx)("time",{dateTime:e.startingPrompt.issuedAt,title:(0,w.fullDateTime)(new Date(e.startingPrompt.issuedAt)),children:(0,w.relativeTime)(new Date(e.startingPrompt.issuedAt),r)}),e.startingPrompt.isClaimed?", claimed":", not claimed yet"]})]}):null]})]}),a&&!h?(0,t.jsx)("div",{className:(0,x.classNames)("flex flex-wrap items-center gap-2","max-sm:w-full max-sm:[&>*]:flex-1"),children:a}):null]}),m?(0,t.jsx)(eV,{icon:(0,t.jsx)(ek.Info,{"aria-hidden":!0}),children:"argo is your ship. This console session crews it. It can’t be released, renamed or retired."}):null,h&&null!==e.retiredAt?(0,t.jsxs)(eV,{icon:(0,t.jsx)(ey.Archive,{"aria-hidden":!0}),children:["Retired on ",(0,w.fullDateTime)(new Date(e.retiredAt)),". Read-only."]}):null,i,(0,t.jsx)(eH,{ship:e,now:r,labels:l,way:c}),("agent"===e.kind||"plugin"===e.kind)&&e.report?.details&&null!==e.report.detailsBytes?(0,t.jsx)(eM,{details:e.report.details,bytes:e.report.detailsBytes,version:e.report.detailsVersion,testId:"ship-report-details"}):null]})}var eU=e.i(749655),eW=e.i(446157);function eK({view:e,onOpenMessage:s}){let{lines:n,oldest:a}=e;return(0,t.jsxs)("ul",{"data-testid":"ship-way","aria-label":"Its side of the way",className:"flex flex-col gap-1",children:[n.map(e=>(0,t.jsx)(eW.WayLineItem,{line:e,testId:"ship-way-line"},e.text)),a?(0,t.jsx)("li",{children:(0,t.jsxs)("button",{type:"button","data-testid":"ship-way-oldest","aria-label":`Open the oldest message waiting: ${a.text}`,onClick:()=>{s(a.messageId)},className:"inline-flex flex-wrap items-center gap-1.5 rounded-xs text-left text-meta hover:underline focus-visible:outline-2 focus-visible:outline-ring max-sm:text-body-touch",children:[(0,t.jsx)(T.StatusBadge,{status:a.status}),a.isOverdue?(0,t.jsx)(eU.AlarmClock,{"aria-hidden":!0,className:"size-3.5 shrink-0 text-tone-attention-fg"}):null,(0,t.jsx)("span",{className:(0,x.classNames)(a.isOverdue?"text-tone-attention-fg":"text-muted-foreground"),children:a.text}),(0,t.jsx)(eD.ChevronRight,{"aria-hidden":!0,className:"size-(--size-icon-sm)"})]})}):null]})}var eG=e.i(699261),eY=e.i(689664),eJ=e.i(716327),eX=e.i(456539),eQ=e.i(77071),eZ=e.i(263676),e0=e.i(770703),e1=e.i(406734);let e2=(0,e0.default)(()=>e.A(867858).then(e=>e.LabelPicker),{loadableGenerated:{modules:[259068]},ssr:!1});function e5({chip:e,labelKey:s,isBusy:a,onUnassign:i,onChange:r}){let[d,l]=(0,n.useState)(!1);return(0,t.jsxs)(e1.Popover,{open:d,onOpenChange:l,children:[(0,t.jsx)(e1.PopoverTrigger,{render:(0,t.jsx)("button",{type:"button","aria-label":`Change or remove ${e.key}=${e.value}`,"data-testid":"ship-label-yours",disabled:a,className:"inline-flex items-center rounded-sm focus-visible:outline-2 focus-visible:outline-ring disabled:opacity-60"}),children:(0,t.jsx)(Z.LabelChip,{chip:e,trailing:(0,t.jsx)(eJ.ChevronDown,{"aria-hidden":!0}),className:"hover:bg-accent"})}),(0,t.jsxs)(e1.PopoverContent,{align:"start",sideOffset:6,className:"w-72 p-1.5","data-testid":"ship-label-menu",children:[(0,t.jsxs)("span",{className:"flex items-center justify-between px-2 pt-1 pb-1.5 text-meta",children:[(0,t.jsxs)("span",{className:"font-mono",children:[e.key,"=",(0,t.jsx)("span",{className:"text-muted-foreground",children:e.value})]}),(0,t.jsx)("span",{className:"text-muted-foreground",children:"Change the value"})]}),(0,t.jsx)("ul",{className:"flex flex-col",children:(s?.values??[]).map(n=>{let a=n.valueId===e.valueId,i=s?.carriedValueIds.includes(n.valueId)??!1;return(0,t.jsx)("li",{children:(0,t.jsxs)("button",{type:"button",disabled:i,"data-testid":"ship-label-value",className:"flex h-(--size-control-sm) w-full items-center gap-2 rounded-sm px-2 text-left text-body hover:bg-accent focus-visible:outline-2 focus-visible:outline-ring disabled:pointer-events-none [&_svg]:size-(--size-icon-sm)",onClick:()=>{l(!1),r({from:e.valueId,to:n.valueId})},children:[(0,t.jsx)("span",{className:"w-4",children:i?(0,t.jsx)(eY.Check,{"aria-hidden":!0}):null}),(0,t.jsx)("span",{className:(0,x.classNames)("min-w-0 grow truncate font-mono",i&&!a?"text-muted-foreground":void 0),children:n.value}),(0,t.jsx)("span",{className:"text-meta text-muted-foreground tabular-nums",children:i&&!a?"Carried":`${String(n.shipCount)} ${1===n.shipCount?"ship":"ships"}`})]})},n.valueId)})}),(0,t.jsx)("div",{className:"mt-1 border-t border-border pt-1",children:(0,t.jsxs)("button",{type:"button","data-testid":"ship-label-remove",className:"flex h-(--size-control-sm) w-full items-center gap-2 rounded-sm px-2 text-body text-destructive-text hover:bg-accent focus-visible:outline-2 focus-visible:outline-ring [&_svg]:size-(--size-icon-sm)",onClick:()=>{l(!1),i(e.valueId)},children:[(0,t.jsx)(eZ.X,{"aria-hidden":!0}),"Remove label"]})})]})]})}function e3({keys:e,isBusy:s,onAssign:a}){let[i,r]=(0,n.useState)(!1);return(0,t.jsxs)(e1.Popover,{open:i,onOpenChange:r,children:[(0,t.jsx)(e1.PopoverTrigger,{render:(0,t.jsx)(p.Button,{variant:"ghost",size:"xs",icon:(0,t.jsx)(eQ.Plus,{}),disabled:s,"data-testid":"ship-labels-add"}),children:"Add label"}),(0,t.jsxs)(e1.PopoverContent,{align:"start",sideOffset:6,className:"w-80 p-2","data-testid":"ship-labels-add-popover",children:[(0,t.jsxs)("span",{className:"flex items-center justify-between px-2 pt-1 pb-2 text-body font-medium",children:["Add a label",(0,t.jsx)("span",{className:"text-meta font-normal text-muted-foreground",children:"Yours"})]}),0===e.length?(0,t.jsx)("p",{className:"px-2 py-2 text-meta text-muted-foreground",children:"You have no labels yet. Define one on the Labels page, then put it on ships here."}):(0,t.jsx)(e2,{groups:[{title:"Yours",keys:[...e]}],pickedValueIds:e.flatMap(e=>e.carriedValueIds),pickedWord:"Carried",onPick:e=>{r(!1),a(e)}}),(0,t.jsx)("p",{className:"mt-2 flex items-center justify-between border-t border-border px-2 pt-2 text-meta",children:(0,t.jsx)(J.default,{href:"/labels",className:"font-medium hover:underline",children:0===e.length?"Define a label":"Manage labels"})})]})]})}function e7({chips:e,keys:s,limit:a,isBusy:i,error:r,onAssign:d,onUnassign:l,onChange:o}){let[c,u]=(0,n.useState)(!1),m=!c&&e.length>3,h=m?e.slice(0,2):e,p=[...new Set(h.filter(e=>"none"!==e.mark).map(e=>e.ownerName))];return(0,t.jsxs)("span",{className:"flex min-w-0 flex-col gap-2","data-testid":"ship-labels-edit",children:[(0,t.jsxs)("span",{className:"flex min-w-0 flex-wrap items-center gap-1.5",children:[0===e.length?(0,t.jsx)("span",{className:"text-meta text-muted-foreground",children:"No labels"}):null,h.filter(e=>"none"===e.mark).map(e=>(0,t.jsx)(e5,{chip:e,labelKey:s.find(t=>t.labelId===e.labelId),isBusy:i,onUnassign:l,onChange:o},e.valueId)),m?(0,t.jsxs)("button",{type:"button","aria-label":`Show all ${String(e.length)} labels`,"data-testid":"ship-labels-more",className:"inline-flex h-5.5 items-center rounded-sm bg-secondary px-1.5 text-caption font-medium tabular-nums hover:bg-accent focus-visible:outline-2 focus-visible:outline-ring",onClick:()=>{u(!0)},children:["+",e.length-2]}):null,a.isAtLimit?null:(0,t.jsx)(e3,{keys:s,isBusy:i,onAssign:d}),p.map(e=>(0,t.jsxs)("span",{className:"inline-flex flex-wrap items-center gap-1.5",children:[(0,t.jsxs)("span",{className:"text-meta text-muted-foreground",children:["by ",e]}),h.filter(t=>"none"!==t.mark&&t.ownerName===e).map(e=>(0,t.jsx)(Z.LabelChip,{chip:e,testId:"ship-label"},e.valueId))]},e)),c&&e.length>3?(0,t.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1 rounded-sm px-1 text-meta hover:bg-accent focus-visible:outline-2 focus-visible:outline-ring [&_svg]:size-(--size-icon-sm)",onClick:()=>{u(!1)},children:[(0,t.jsx)(eX.ChevronUp,{"aria-hidden":!0}),"Show fewer"]}):null,a.isAtLimit?(0,t.jsx)("span",{className:"text-meta text-muted-foreground",children:"At the limit: a ship carries at most 20 labels (decision 0031)."}):null,void 0===a.count?null:(0,t.jsx)("span",{className:"ml-auto text-meta text-muted-foreground tabular-nums","data-testid":"ship-labels-count",children:a.count})]}),void 0===r?null:(0,t.jsx)(k.InlineError,{title:r.title,description:`Refused: ${r.message}. Nothing changed.`})]})}function e6(e,t){for(let s of e){let e=s.values.find(e=>e.valueId===t);if(void 0!==e)return`${s.key}=${e.value}`}return"the label"}function e4({ship:e}){let{shipLabelsMax:s}=(0,X.useConsoleConstants)(),a=(0,D.useLabelContext)(),i=(0,q.useAccess)(),r=(0,D.useAssignLabel)(),d=(0,D.useUnassignLabel)(),[l,o]=(0,n.useState)(void 0);if(void 0===a)return(0,t.jsx)(e$.Skeleton,{className:"h-5.5 w-40"});let c=(0,O.chipsOf)(e,a);if(!(0,O.canAssignLabelsTo)(e,i))return(0,t.jsx)(eG.ShipLabels,{chips:c});let u=(0,O.assignKeysOf)(e,a),m=e=>t=>{o({title:e,message:t.message})};return(0,t.jsx)(e7,{chips:c,keys:u,limit:(0,O.labelLimitOf)(e,s),isBusy:r.isPending||d.isPending,error:l,onAssign:t=>{o(void 0),r.mutate({shipId:e.id,valueId:t},{onError:m(`Couldn’t add ${e6(u,t)}`)})},onUnassign:t=>{o(void 0),d.mutate({shipId:e.id,valueId:t},{onError:m(`Couldn’t remove ${e6(u,t)}`)})},onChange:({from:t,to:s})=>{o(void 0),d.mutate({shipId:e.id,valueId:t},{onSuccess:()=>{r.mutate({shipId:e.id,valueId:s},{onError:n=>{r.mutate({shipId:e.id,valueId:t}),m(`Couldn’t change ${e6(u,t)} to ${e6(u,s)}`)(n)}})},onError:m(`Couldn’t change ${e6(u,t)}`)})}})}var e8=e.i(987255),e9=e.i(831458);let te={name:"lock-keyhole",size:24,node:[["circle",{cx:"12",cy:"16",r:"1",key:"1au0dj"}],["rect",{x:"3",y:"10",width:"18",height:"12",rx:"2",key:"6s8ecr"}],["path",{d:"M7 10V7a5 5 0 0 1 10 0v3",key:"1pqi11"}]]};te.node;let tt=(0,r.default)(te),ts={name:"log-in",size:24,node:[["path",{d:"m10 17 5-5-5-5",key:"1bsop3"}],["path",{d:"M15 12H3",key:"6jk70r"}],["path",{d:"M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4",key:"u53s6r"}]]};ts.node;let tn=(0,r.default)(ts);var ta=e.i(367784),ti=e.i(25799);let tr={name:"mail-minus",size:24,node:[["path",{d:"M22 15V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v12c0 1.1.9 2 2 2h8",key:"fuxbkv"}],["path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7",key:"1ocrg3"}],["path",{d:"M16 19h6",key:"xwg31i"}]]};tr.node;let td=(0,r.default)(tr),tl={name:"mail-x",size:24,node:[["path",{d:"M22 12.532V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8.792",key:"8lpqwp"}],["path",{d:"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7",key:"132q7q"}],["path",{d:"m16.5 16.5 5 5",key:"zc9lw7"}],["path",{d:"m21.5 16.5-5 5",key:"1empo3"}]]};tl.node;let to=(0,r.default)(tl),tc={name:"message-square-text",size:24,node:[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}],["path",{d:"M7 11h10",key:"1twpyw"}],["path",{d:"M7 15h6",key:"d9of3u"}],["path",{d:"M7 7h8",key:"af5zfr"}]]};tc.node;let tu=(0,r.default)(tc),tm={name:"package-x",size:24,node:[["path",{d:"M12 22V12",key:"d0xqtd"}],["path",{d:"m16.5 14.5 5 5",key:"ozpm51"}],["path",{d:"m16.5 19.5 5-5",key:"syf6b9"}],["path",{d:"M21 10.5V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.729l7 4a2 2 0 0 0 2 .001l.13-.074",key:"isw6gs"}],["path",{d:"M3.29 7 12 12l8.71-5",key:"19ckod"}],["path",{d:"m7.5 4.27 8.997 5.148",key:"9yrvtv"}]]};tm.node;let th=(0,r.default)(tm),tp={name:"pen-line",size:24,node:[["path",{d:"M13 21h8",key:"1jsn5i"}],["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}]],aliases:["edit-3"]};tp.node;let tx=(0,r.default)(tp),tg={name:"shield-alert",size:24,node:[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M12 16h.01",key:"1drbdi"}]]};tg.node;let tf=(0,r.default)(tg);var tv=e.i(837817),tb=e.i(127361);function tw(e,t){let s=e.details[t];return"string"==typeof s?s:void 0}function tj(e){return tw(e,"key")??""}function ty(e){return(tw(e,"values")??"").split(",").join(", ")}function tN(e){return e?[(0,j.text)(" by "),(0,j.ship)(e)]:[]}let tk={deregistered:"Its session deregistered.",takenOver:"Taken over by a new console session.",signedOut:"The operator signed out.",passwordReset:"Its session ended with the operator password reset.",accountCutOff:"Its session ended: the account signed in as argo was cut off.",retired:"Its session ended: the ship was retired."};function tC(e){return e.message?.isPing===!0}function tS(e){return e.message?[(0,j.text)(tC(e)?"a ping from ":"a message from "),(0,j.ship)(e.message.sender)]:[(0,j.text)("a message")]}function tT(e){let[t,...s]=tS(e);return t?.kind==="text"?[(0,j.text)((0,j.capitalised)(t.text)),...s]:tS(e)}function tR(e,t){let{shipId:s,verb:n}=t,a=e.actor;return[...null===a||a.id===s?[(0,j.text)((0,j.capitalised)(n))]:[(0,j.ship)(a),(0,j.text)(` ${n}`)],(0,j.text)(" "),...tS(e)]}let t$={received:l,sent:c,claimed:tn,released:ta.LogOut,prompt:V.KeyRound,commissioned:e9.Flag,acknowledged:ti.MailCheck,returned:tv.Undo2,undeliverable:to,secret:tt,fleet:e8.Anchor,password:tf,retired:ey.Archive,abandoned:th,dismissed:td,renamed:tx,reported:tu},tI={waiting:"border-tone-waiting-border bg-tone-waiting-bg text-tone-waiting-fg",active:"border-tone-active-border bg-tone-active-bg text-tone-active-fg",ok:"border-tone-ok-border bg-tone-ok-bg text-tone-ok-fg",attention:"border-tone-attention-border bg-tone-attention-bg text-tone-attention-fg",ended:"border-tone-ended-border bg-tone-ended-bg text-tone-ended-fg"},tq="flex w-full gap-3 px-3.5 py-3 text-left";function tA({entry:e,shipId:s,now:n,onOpenMessage:a,accountNames:i={}}){let{parts:r,tone:d,icon:l}=function(e,t){switch(e.type){case"FleetInitialised":return{parts:[(0,j.text)("Fleet initialised")],tone:"ended",icon:"fleet"};case"ShipCommissioned":{let t=tw(e,"type");return{parts:[(0,j.text)("Commissioned"),...tN(e.actor),...void 0===t?[]:[(0,j.text)(` as ${t}`)]],tone:"ended",icon:"commissioned"}}case"OwnerSet":let s;return{parts:"inherited"===(s=tw(e,"how"))?[(0,j.text)("Owner set: its commissioner's owner")]:"named"===s?[(0,j.text)("Owner set: named"),...tN(e.actor)]:[(0,j.text)("Owner set: argo by default")],tone:"ended",icon:"commissioned"};case"OwnerChanged":return{parts:"ownerRetired"===tw(e,"why")?[(0,j.text)("Owner retired: argo owns it now")]:[(0,j.text)("Owner changed"),...tN(e.actor)],tone:"ended",icon:"renamed"};case"StartingPromptIssued":return{parts:[(0,j.text)("Starting prompt issued")],tone:"ended",icon:"prompt"};case"ShipClaimed":return{parts:[(0,j.text)(`Claimed by a session on ${function(e){let t=tw(e,"locationDescription");if(void 0!==t&&""!==t)return t;let s=tw(e,"location");return"DEVICE"===s||"CLOUD"===s||"SERVER"===s||"OTHER"===s?(0,tb.locationKindWord)(s):"an unknown location"}(e)}`)],tone:"ok",icon:"claimed"};case"LeaseRevoked":let n,a;return{parts:[..."released"===(n=tw(e,"reason")??"")?[(0,j.text)("Released"),...tN(e.actor),(0,j.text)(".")]:[(0,j.text)(tk[n]??"Its session ended.")],..."number"==typeof(a=e.details.returnedDeliveries)&&a>0?[(0,j.text)(` ${(0,j.counted)(a,{one:"in-flight delivery",many:"in-flight deliveries"})} went back to pending.`)]:[]],tone:"waiting",icon:"released"};case"CredentialRevoked":return{parts:[(0,j.text)("Secret invalidated")],tone:"ended",icon:"secret"};case"OperatorLoginSet":return{parts:[(0,j.text)("Email and password set")],tone:"waiting",icon:"password"};case"OperatorPasswordReset":return{parts:[(0,j.text)("Operator password reset")],tone:"waiting",icon:"password"};case"FleetLimitsChanged":return{parts:[(0,j.text)("Fleet limits changed")],tone:"ended",icon:"fleet"};case"SignInTicketIssued":return{parts:[(0,j.text)("Sign-in ticket issued")],tone:"ended",icon:"password"};case"ViewerSessionStarted":return{parts:[(0,j.text)("Someone started viewing the fleet")],tone:"ended",icon:"password"};case"CrewRequested":return{parts:[(0,j.text)("Crew requested"),...tN(e.actor)],tone:"waiting",icon:"claimed"};case"CrewRequestRemoved":return{parts:[(0,j.text)("Crew request removed"),...tN(e.actor)],tone:"ended",icon:"released"};case"CrewRequestExplained":{let t=tw(e,"reason");return{parts:[(0,j.text)(void 0===t?"Crew request can not be placed yet":`Crew request can not be placed: ${t}`),...tN(e.actor)],tone:"waiting",icon:"reported"}}case"CrewRequestGivenBack":{let t=tw(e,"reason");return{parts:[(0,j.text)(void 0===t?"Crew request given back":`Crew request given back: ${t}`),...tN(e.actor)],tone:"waiting",icon:"released"}}case"WorktreeClearRequested":return{parts:[(0,j.text)(`Clearing of the kept ${tw(e,"repository")??""} worktree requested`),...tN(e.actor)],tone:"waiting",icon:"reported"};case"WorktreeCleared":return{parts:[(0,j.text)("not-kept"===tw(e,"outcome")?`Kept ${tw(e,"repository")??""} worktree cleared (none was kept)`:`Kept ${tw(e,"repository")??""} worktree cleared`),...tN(e.actor)],tone:"ended",icon:"retired"};case"WorktreeClearRemoved":return{parts:[(0,j.text)(`Clearing of the kept ${tw(e,"repository")??""} worktree dropped`),...tN(e.actor)],tone:"ended",icon:"released"};case"CrewAssigned":return{parts:[(0,j.text)("Crew request assigned"),...tN(e.actor)],tone:"waiting",icon:"claimed"};case"CrewStatusChanged":{let t=tw(e,"status");return{parts:[(0,j.text)(void 0===t?"Crew status changed":`Crew ${t}`),...tN(e.actor)],tone:"crashed"===t?"attention":"active",icon:"reported"}}case"LabelDefined":return{parts:[(0,j.text)(`Label ${tj(e)} defined: ${ty(e)}`)],tone:"ended",icon:"reported"};case"LabelValuesChanged":return{parts:[(0,j.text)(`Label ${tj(e)} values changed: ${ty(e)}`)],tone:"ended",icon:"reported"};case"LabelRetired":return{parts:[(0,j.text)(`Label ${tj(e)} retired`)],tone:"ended",icon:"retired"};case"NetworkRulesSet":{let t=e.details.rules,s=String(e.details.version??""),n="number"==typeof t?`Network rules set: ${String(t)} rules`:"Network rules cleared: every ship reaches every ship";return{parts:[(0,j.text)(`${n}, version ${s}`),...tN(e.actor)],tone:"ended",icon:"fleet"}}case"NetworkRulesDraftSaved":{let t=e.details.rules,s="number"==typeof t?`${String(t)} rules`:"every ship reaches every ship";return{parts:[(0,j.text)(`Network rules draft saved: ${s}, against version ${String(e.details.savedAgainstVersion??"")}`),...tN(e.actor)],tone:"ended",icon:"fleet"}}case"NetworkRulesDraftDiscarded":return{parts:[(0,j.text)("Network rules draft discarded"),...tN(e.actor)],tone:"ended",icon:"fleet"};case"NetworkRulesDeclared":{let t=e.details.rules,s="number"==typeof t&&t>0?`Network rules declared: ${String(t)} rules`:"Declared network rules withdrawn";return{parts:[(0,j.text)(s),...tN(e.actor)],tone:"ended",icon:"fleet"}}case"ScopesDeclared":{let t="number"==typeof e.details.scopes?e.details.scopes:0;return{parts:[(0,j.text)(`Scopes declared: namespace ${tw(e,"namespace")??""}, ${String(t)} ${1===t?"scope":"scopes"}`),...tN(e.actor)],tone:"ended",icon:"fleet"}}case"ScopesChanged":{let t=tw(e,"added")??"",s=tw(e,"removed")??"",n=[...""===t?[]:[`granted ${t}`],...""===s?[]:[`revoked ${s}`]];return{parts:[(0,j.text)(`Scopes changed: ${n.join(", ")}`),...tN(e.actor)],tone:"ended",icon:"fleet"}}case"PluginConnected":return{parts:[(0,j.text)("Connected as a plugin: reads every ship"),...tN(e.actor)],tone:"ended",icon:"fleet"};case"PluginDisconnected":return{parts:[(0,j.text)(`No longer a connected plugin: ${tw(e,"why")??""}`),...tN(e.actor)],tone:"ended",icon:"fleet"};case"VerifiedFactsRemoved":return{parts:[(0,j.text)(`Verified facts removed: ${String(e.details.facts??"")}, ${"writerRetired"===tw(e,"why")?"their writer retired":"the ship retired"}`)],tone:"ended",icon:"reported"};case"VerifiedFactsSet":{let t=e.details.facts;return{parts:[(0,j.text)(0===t?"Verified facts withdrawn":`Verified facts set: ${String(t??"")}`),...tN(e.actor)],tone:"ended",icon:"reported"}}case"NetworkPluginRegistered":return{parts:[(0,j.text)(`Networking plugin registered: while unavailable ${tw(e,"whileUnavailable")??""}, version ${String(e.details.version??"")}`),...tN(e.actor)],tone:"ended",icon:"fleet"};case"NetworkPluginUnregistered":return{parts:[(0,j.text)(`Networking plugin unregistered: every ship reaches every ship, version ${String(e.details.version??"")}`),...tN(e.actor)],tone:"ended",icon:"fleet"};case"BuiltInRuleChanged":{let t=tw(e,"verb"),s="viewerRead"===e.details.rule?"viewer read":`${tw(e,"rule")??""}${void 0===t?"":` for ${t}`}`,n=!0===e.details.isOn?"on":"off";return{parts:[(0,j.text)(`Built-in rule ${s} turned ${n}, version ${String(e.details.version??"")}`),...tN(e.actor)],tone:"ended",icon:"fleet"}}case"LabelDeleted":return{parts:[(0,j.text)(`Label ${tj(e)} deleted`)],tone:"ended",icon:"retired"};case"LabelAssigned":return{parts:[(0,j.text)(`Labelled ${tj(e)}=${tw(e,"value")??""}`),...tN(e.actor)],tone:"ended",icon:"reported"};case"LabelUnassigned":return{parts:[(0,j.text)(`Label ${tj(e)}=${tw(e,"value")??""} removed`),...tN(e.actor)],tone:"ended",icon:"reported"};case"MessageAccepted":let i;return{parts:(i=e.message)?tC(e)&&"ship"===i.recipient.kind?i.sender.id===t?[(0,j.text)("Pinged "),(0,j.ship)(i.recipient.ship)]:[(0,j.text)("Pinged by "),(0,j.ship)(i.sender)]:i.sender.id===t?"ship"===i.recipient.kind?[(0,j.text)("Sent a message to "),(0,j.ship)(i.recipient.ship)]:[(0,j.text)(`Sent a message to any ship of type ${i.recipient.type}`)]:[(0,j.text)("Received a message from "),(0,j.ship)(i.sender)]:[(0,j.text)("A message was sent")],tone:"ended",icon:e.message?.sender.id===t?"sent":"received"};case"LeasePushed":return{parts:[(0,j.text)("Pushed: its trierarch or plugin watcher receives for its session")],tone:"ok",icon:"received"};case"DeliveryReceived":return{parts:tR(e,{shipId:t,verb:!0===e.details.again?"received again":"received"}),tone:"active",icon:"received"};case"DeliveryHanded":return{parts:tR(e,{shipId:t,verb:!0===e.details.onceMore?"took once more":"took"}),tone:"active",icon:"received"};case"DeliveryHandled":return{parts:tR(e,{shipId:t,verb:"handled"}),tone:"ok",icon:"acknowledged"};case"DeliveryNotHandled":return{parts:[...tT(e),(0,j.text)(" was not handled: its turn died twice")],tone:"attention",icon:"undeliverable"};case"DeliveryOverdue":let r,d,l;return{parts:[...tT(e),(0,j.text)(` is overdue: ${(d="number"==typeof(r=e.details.minutes)?`${String(r)} min`:"too long","notConfirmed"===(l=tw(e,"clock"))?`handed, not confirmed for ${d}`:`waiting ${d} while its session is ${"busy"===l?"busy":"idle"}`)}, argo told`)],tone:"attention",icon:"undeliverable"};case"DeliveryAcknowledged":return{parts:"pong"===tw(e,"answer")?[...tR(e,{shipId:t,verb:"answered"}),(0,j.text)(" with pong")]:tR(e,{shipId:t,verb:"acknowledged"}),tone:"ok",icon:"acknowledged"};case"DeliveryReturned":return{parts:[...tT(e),(0,j.text)(" went back to pending")],tone:"waiting",icon:"returned"};case"DeliveryUndeliverable":return{parts:[...tT(e),(0,j.text)(" became undeliverable")],tone:"attention",icon:"undeliverable"};case"ShipRetired":{let t=e.details.abandonedDeliveries;return{parts:[(0,j.text)("Retired"),...tN(e.actor),(0,j.text)("."),..."number"==typeof t&&t>0?[(0,j.text)(` ${(0,j.counted)(t,{one:"delivery",many:"deliveries"})} abandoned.`)]:[]],tone:"ended",icon:"retired"}}case"DeliveryAbandoned":return{parts:[...tT(e),(0,j.text)(" was abandoned")],tone:"ended",icon:"abandoned"};case"ShipReported":{let t=tw(e,"state")??"in",s=tw(e,"note");return{parts:[(0,j.text)(void 0===s?`Reported ${t}`:`Reported ${t}: ${s}`)],tone:Object.hasOwn(eO.REPORT_TONES,t)?eO.REPORT_TONES[t]:"ended",icon:"reported"}}case"StatementSet":return{parts:[(0,j.text)(`Stated what it is and offers: ${String(e.details.capabilities??"")} capabilities, version ${String(e.details.version??"")}`)],tone:"ended",icon:"reported"};case"TurnReported":{let t=tw(e,"turn");return{parts:[(0,j.text)("busy"===t?"Turn started: busy":"Turn ended: idle")],tone:"busy"===t?"active":"ended",icon:"reported"}}case"ShipRenamed":{let t=tw(e,"from"),s=tw(e,"to");return{parts:[(0,j.text)(void 0===t||void 0===s?"Renamed":`Renamed from ${t} to ${s}`),...tN(e.actor)],tone:"ended",icon:"renamed"}}case"DeliveryDismissed":return{parts:[...tT(e),(0,j.text)(" was dismissed"),...tN(e.actor)],tone:"ended",icon:"dismissed"}}}(e,s),o=t$[l],c=new Date(e.occurredAt),u=(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{"aria-hidden":!0,className:(0,x.classNames)("flex size-7 shrink-0 items-center justify-center rounded-md border [&_svg]:size-(--size-icon-sm)",tI[d]),children:(0,t.jsx)(o,{})}),(0,t.jsxs)("span",{className:"flex min-w-0 flex-col gap-1",children:[(0,t.jsx)(S.Sentence,{parts:r,className:"text-body text-foreground max-sm:text-body-touch"}),(0,t.jsxs)("span",{className:"text-meta text-muted-foreground",children:[(0,t.jsx)("time",{dateTime:e.occurredAt,title:(0,w.fullDateTime)(c),className:"tabular-nums",children:(0,w.relativeTime)(c,n)}),null===e.signedInAccountId?null:(0,t.jsxs)("span",{"data-testid":"ship-timeline-account",children:[" · by ",i[e.signedInAccountId]??e.signedInAccountId]})]})]})]}),{message:m}=e;return(0,t.jsx)("li",{"data-testid":"ship-timeline-entry","data-type":e.type,className:"border-b border-border last:border-b-0",children:m?(0,t.jsx)("button",{type:"button",className:(0,x.classNames)(tq,"transition-colors duration-(--duration-fast) hover:bg-accent"),onClick:()=>{a(m.id)},children:u}):(0,t.jsx)("div",{className:tq,children:u})})}function tL({shipId:e,entries:s,state:n,onRetry:a,more:i,now:r,onOpenMessage:d,accountNames:l}){return"loading"===n?(0,t.jsx)(C.LoadingSkeleton,{variant:"list",rows:4,label:"Loading the timeline"}):"error"===n?(0,t.jsxs)("div",{"data-testid":"ship-timeline",className:"flex flex-col gap-3 rounded-lg border border-border bg-card p-3",children:[(0,t.jsx)(k.InlineError,{title:"Couldn’t load the timeline",description:"The rest of the page is current. Try again in a moment."}),a?(0,t.jsx)(p.Button,{size:"sm",icon:(0,t.jsx)(h.RotateCw,{"aria-hidden":!0}),onClick:a,className:"self-start",children:"Try again"}):null]}):(0,t.jsxs)("div",{"data-testid":"ship-timeline",className:"overflow-hidden rounded-lg border border-border bg-card",children:[(0,t.jsx)("ol",{"aria-label":"Timeline",children:s.map(s=>(0,t.jsx)(tA,{entry:s,shipId:e,now:r,onOpenMessage:d,accountNames:l},s.id))}),i,s.length<=1&&!i?(0,t.jsx)("p",{className:"border-t border-border px-3.5 py-3 text-center text-meta text-muted-foreground first:border-t-0",children:"Nothing else yet. Claims, releases and messages appear here as they happen."}):null]})}var tD=e.i(298421),tO=e.i(976580),tz=e.i(994070),tM=e.i(837631),tP=e.i(787964),tB=e.i(46929),tE=e.i(718423),tF=e.i(296676),tH=e.i(609176),tV=e.i(678485),t_=e.i(853573),tU=e.i(285595),tW=e.i(928459),tK=e.i(414732);function tG({party:e}){let s=e.name===j.OPERATOR_NAME;return(0,t.jsx)(eE.ShipName,{name:e.name,shipId:e.id,size:"meta",isOperator:s,isSuffixShown:!s})}function tY({delivery:e}){let{sender:s,recipient:n}=e.message;return(0,t.jsxs)("span",{className:"flex min-w-0 flex-wrap items-baseline gap-x-1.5 text-meta text-muted-foreground",children:[(0,t.jsx)(tG,{party:s}),(0,t.jsx)("span",{"aria-hidden":!0,children:"→"}),(0,t.jsx)("span",{className:"sr-only",children:"to"}),"ship"===n.kind?(0,t.jsx)(tG,{party:n.ship}):(0,t.jsxs)("span",{children:["any ship of type ",n.type]})]})}function tJ({delivery:e}){let{payload:s,contentType:n}=e.message;return(0,t.jsx)("span",{className:(0,x.classNames)("block min-w-0 truncate text-foreground",(0,g.isJson)(n)?"font-mono text-id":"text-body max-sm:text-body-touch"),title:s,children:s.split("\n")[0]})}function tX(e){return(0,tW.attentionReason)(e)}function tQ(e){var t;return`the message from ${e.message.sender.name} to ${"ship"===(t=e.message.recipient).kind?t.ship.name:`any ship of type ${t.type}`}`}function tZ({delivery:e,onResend:s,onDismiss:n,pendingIds:a,layout:i}){let r=a.has(e.deliveryId),d="phone"===i;if(void 0===s&&void 0===n)return null;let l=void 0!==s&&(0,tW.canResend)(e)?(0,t.jsx)(p.Button,{size:d?"touch":"sm",variant:d?"primary":"secondary",icon:(0,t.jsx)(h.RotateCw,{"aria-hidden":!0}),isLoading:r,"data-testid":"attention-resend","aria-label":`Resend ${tQ(e)}`,onClick:()=>{s(e.deliveryId)},className:d?"flex-1":void 0,children:"Resend"}):null,o=void 0===n?null:(0,t.jsx)(p.Button,{size:d?"touch":"sm",variant:d?"secondary":"ghost",disabled:r,"data-testid":"attention-dismiss","aria-label":`Dismiss ${tQ(e)}`,onClick:()=>{n(e.deliveryId)},className:d?"flex-1":void 0,children:"Dismiss"});return d?(0,t.jsxs)("div",{className:"flex gap-2 pt-1",children:[o,l]}):(0,t.jsxs)("div",{className:"flex items-center justify-end gap-1.5",children:[l,o]})}function t0({deliveries:e,onOpen:s,now:n,...a}){return(0,t.jsxs)("div",{className:"flex flex-col gap-2 max-sm:hidden",children:[(0,t.jsxs)(tK.Table,{"aria-label":"Undeliverable and not handled deliveries",children:[(0,t.jsx)(tK.TableHeader,{children:(0,t.jsxs)(tK.TableRow,{children:[(0,t.jsx)(tK.TableHead,{children:"State"}),(0,t.jsx)(tK.TableHead,{children:"Message"}),(0,t.jsx)(tK.TableHead,{children:"Reason"}),(0,t.jsx)(tK.TableHead,{children:"Since"}),(0,t.jsx)(tK.TableHead,{children:"Actions"})]})}),(0,t.jsx)(tK.TableBody,{children:e.map(e=>{let i=new Date(e.since);return(0,t.jsxs)(tK.TableRow,{"data-testid":"attention-row","data-delivery-id":e.deliveryId,children:[(0,t.jsx)(tK.TableCell,{className:"align-top",children:(0,t.jsx)(T.StatusBadge,{status:e.state})}),(0,t.jsx)(tK.TableCell,{className:"max-w-96 align-top",children:(0,t.jsxs)("button",{type:"button","aria-label":`Open ${tQ(e)}`,onClick:()=>{s(e)},className:"flex w-full min-w-0 flex-col gap-0.5 rounded-xs text-left focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring",children:[(0,t.jsx)(tJ,{delivery:e}),(0,t.jsx)(tY,{delivery:e})]})}),(0,t.jsx)(tK.TableCell,{className:"max-w-48 align-top text-meta whitespace-normal text-muted-foreground",children:tX(e)}),(0,t.jsx)(tK.TableCell,{className:"align-top",children:(0,t.jsxs)("span",{className:"flex flex-col gap-0.5 tabular-nums",children:[(0,t.jsx)("time",{dateTime:e.since,title:(0,w.fullDateTime)(i),className:"text-body text-foreground",children:(0,w.shortDateTime)(i)}),(0,t.jsxs)("span",{className:"text-meta text-muted-foreground",children:[(0,w.duration)(i,n)," ago"]})]})}),(0,t.jsx)(tK.TableCell,{className:"align-top",children:(0,t.jsx)(tZ,{delivery:e,layout:"table",...a})})]},e.deliveryId)})})]}),(0,t.jsx)("p",{className:"text-meta text-muted-foreground",children:"Resend creates a new message with the same payload, linked to the original. Dismiss marks the delivery resolved. Abandoned deliveries are not listed here."})]})}function t1({deliveries:e,onOpen:s,now:n,...a}){return(0,t.jsx)("ul",{"aria-label":"Undeliverable and not handled deliveries",className:"flex flex-col gap-3 sm:hidden",children:e.map(e=>{let i=new Date(e.since),r=n.getTime()-i.getTime()<864e5?(0,w.clockTime)(i):(0,w.shortDateTime)(i);return(0,t.jsxs)("li",{"data-testid":"attention-row","data-delivery-id":e.deliveryId,className:"flex flex-col gap-1.5 rounded-lg border border-border bg-card px-3.5 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsx)(T.StatusBadge,{status:e.state}),(0,t.jsxs)("button",{type:"button","aria-label":`Open ${tQ(e)}`,onClick:()=>{s(e)},className:"inline-flex items-center gap-1 rounded-xs text-meta text-muted-foreground tabular-nums focus-visible:outline-2 focus-visible:outline-ring [&_svg]:size-(--size-icon-sm)",children:[(0,w.duration)(i,n),(0,t.jsx)(eD.ChevronRight,{"aria-hidden":!0})]})]}),(0,t.jsx)(tJ,{delivery:e}),(0,t.jsx)(tY,{delivery:e}),(0,t.jsxs)("p",{className:"text-meta text-muted-foreground",children:[tX(e)," Since"," ",(0,t.jsx)("time",{dateTime:e.since,title:(0,w.fullDateTime)(i),className:"tabular-nums",children:r}),"."]}),(0,t.jsx)(tZ,{delivery:e,layout:"phone",...a})]},e.deliveryId)})})}function t2({deliveries:e,state:s,onRetry:n,...a}){return"loading"===s?(0,t.jsxs)("div",{"data-slot":"needs-attention-list","data-state":"loading",children:[(0,t.jsx)(C.LoadingSkeleton,{variant:"table",rows:2,label:"Loading Needs attention",className:"max-sm:hidden"}),(0,t.jsx)(C.LoadingSkeleton,{variant:"list",rows:2,label:"Loading Needs attention",className:"sm:hidden"})]}):"error"===s?(0,t.jsx)("div",{"data-slot":"needs-attention-list","data-state":"error","data-testid":"attention-error",children:(0,t.jsx)(k.InlineError,{variant:"page",title:"Couldn’t load Needs attention",description:"This page couldn’t reach the fleet server. Undeliverable deliveries are kept on the server, so nothing is lost.",onRetry:n})}):0===e.length?(0,t.jsx)("div",{"data-slot":"needs-attention-list","data-state":"empty","data-testid":"attention-empty",children:(0,t.jsx)(N.EmptyState,{icon:(0,t.jsx)(tU.CircleCheck,{className:"text-tone-ok-fg"}),title:"Nothing needs your attention",description:"Undeliverable deliveries show up here as soon as they happen."})}):(0,t.jsxs)("div",{"data-slot":"needs-attention-list","data-state":"ready",className:"flex flex-col gap-3",children:[(0,t.jsx)(t0,{deliveries:e,...a}),(0,t.jsx)(t1,{deliveries:e,...a})]})}function t5({shipId:e}){let a=(0,s.useRouter)(),i=(0,tF.useNow)(),r=(0,tW.useNeedsAttention)({shipId:e,state:"notHandled"}),d=(0,tW.useResendDelivery)(),l=(0,tW.useDismissDelivery)(),o=(0,q.useAccess)(),[c,u]=(0,n.useState)(new Set),m=r.items??[],h=(e,t)=>{u(t=>new Set([...t,e])),t().finally(()=>{u(t=>new Set([...t].filter(t=>t!==e)))})};return 0===m.length?null:(0,t.jsxs)("section",{"aria-labelledby":"ship-not-handled","data-testid":"ship-not-handled",className:"flex flex-col gap-2",children:[(0,t.jsxs)("h2",{id:"ship-not-handled",className:"text-body font-semibold",children:["Not handled (",m.length,")"]}),(0,t.jsx)(t2,{deliveries:m,state:"ready",onRetry:r.retry,onResend:o.canResend?e=>{let t=(0,tW.deliveryWithId)(m,e);h(e,async()=>{try{await d.mutateAsync({deliveryId:e}),t&&(0,E.showToast)({...(0,tW.resentToast)(t),tone:"success"})}catch(e){(0,E.showToast)({title:"Couldn’t resend the message",description:t3(e),tone:"error"})}})}:void 0,onDismiss:o.canResend?e=>{h(e,async()=>{try{await l.mutateAsync({deliveryId:e}),(0,E.showToast)({...tW.DISMISSED_TOAST,tone:"success"})}catch(e){(0,E.showToast)({title:"Couldn’t dismiss the delivery",description:t3(e),tone:"error"})}})}:void 0,onOpen:t=>{a.replace(`/ships/${e}?tab=messages&message=${t.message.id}`,{scroll:!1})},pendingIds:c,now:i}),r.hasMore?(0,t.jsx)(tD.LoadMore,{what:"more not handled",isLoading:r.isLoadingMore,isFailed:r.isLoadMoreFailed,onLoad:r.loadMore,area:"ship-not-handled"}):null]})}function t3(e){return e instanceof Error?e.message:"Try again in a moment."}let t7="timeline",t6="messages",t4=(0,I.lazyDialog)(()=>e.A(665030).then(e=>e.MessageSheet),e=>e.isOpen);e.s(["ShipPageFor",0,function({shipId:e,tab:r,messageId:d}){let l,o=(0,s.useRouter)(),c=(0,tF.useNow)(),u=(0,tH.usePluginShipIds)(),m=(0,t_.useShip)(e),h=(0,t_.useShipTimeline)(e),p=(l=[...new Set((h.items??[]).flatMap(e=>null===e.signedInAccountId?[]:[e.signedInAccountId]))].sort(),(0,tO.useConsoleRead)({queryKey:["account-names",...l],queryFn:()=>(0,tz.fetchConsoleRead)({read:"account-names",input:{accountIds:l}}),enabled:l.length>0}).data??{}),x=(0,t_.useShipMessages)(e),g=(0,t_.useMessage)(d),f=(0,t_.useShipWay)(e),v=(0,B.useMachines)(),j=(0,tE.useLiveFleet)(),y=(0,tP.useConsoleFrame)(),N=(0,eu.useSquadrons)(),k=(0,q.useAccess)(),[C,S]=(0,n.useState)();(0,tV.useSignInWhenSessionEnds)([m.error,h.error,x.error,g.error,j.error]);let T=t=>{let s,n;o.replace((s=new URLSearchParams,t.tab!==t7&&s.set("tab",t.tab),void 0!==t.messageId&&s.set("message",t.messageId),""===(n=s.toString())?`/ships/${e}`:`/ships/${e}?${n}`),{scroll:!1})},R=e=>{T({tab:r,messageId:e})},I="NOT_FOUND"===(0,tB.trpcErrorCode)(m.error)||null===m.data,A=f.data&&m.data?.kind==="agent"?function(e,t){let{now:s,machines:n=[]}=t;if(null===e.lease)return{lines:[],oldest:null};let{by:a,turn:i}=e.lease,r=0===e.waiting?[{icon:"time",tone:"neutral",text:"Nothing waiting"}]:[];return{lines:[null===a?{icon:"pull",tone:"neutral",text:"Pull: nobody wakes it"}:{...(0,b.holderWordsOf)(a),tone:"neutral"},...function(e,t){if(e?.kind!=="trierarch")return[];let s=t.machines.find(t=>t.shipId===e.trierarch.id);if(!s?.isSilent)return[];let n=null===s.lastSeenAt?"":` since ${(0,w.sinceTime)(new Date(s.lastSeenAt),t.now)}`;return[{icon:"silent",tone:"attention",text:`Trierarch on ${e.trierarch.name} silent${n}`}]}(a,{now:s,machines:n}),...function(e,t){if(null===e)return[];let s=(0,w.sinceTime)(new Date(e.at),t);return"busy"===e.turn?[{icon:"busy",tone:"active",text:`Busy since ${s}`}]:[{icon:"idle",tone:"neutral",text:`Idle since ${s}`}]}(i,s),...r],oldest:function(e,t){let{oldest:s,waiting:n}=e;if(null===s)return null;let{state:a,way:i}=s.delivery,r=[(0,w.relativeTime)(new Date(i.since),t).toLowerCase()];return"handed"===a&&r.push(i.isPulled?"not acknowledged":"not confirmed"),i.overdue&&r.push(`argo told at ${String(i.overdue.minutes)} min`),n>1&&r.push(`oldest of ${String(n)}`),{messageId:s.messageId,status:(0,b.deliveryStatus)({state:a,isPulled:i.isPulled}),isOverdue:null!==i.overdue,text:r.join(" · ")}}(e,s)}}(f.data,{now:c,machines:v.data??[]}):void 0,L=(0,eg.shipsInSquadrons)(N.data??[]).get(e);return(0,t.jsx)(tM.DetailPage,{switcher:y.switcher,account:y.account,onCompose:y.onCompose,onSearch:y.onSearch,banner:y.banner,title:m.data?.name??"Ship",parents:L?[{href:"/squadrons",label:"Squadrons"},{href:`/squadrons/${L.squadronId}`,label:L.squadronId}]:[{href:"/",label:"Fleet overview"}],live:j.live,header:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(e_,{ship:m.data??void 0,shipId:e,state:I?"not-found":m.data?"ready":"loading",now:c,actions:m.data?(0,t.jsx)(ew.ShipActions,{ship:m.data,compose:i.ComposeMessage,crewLineFlow:ej.NewCrewLineFlow}):void 0,crewRequest:m.data?(0,t.jsx)(ex,{ship:m.data,timeline:h.items??[],now:c}):void 0,labels:m.data?(0,t.jsx)(e4,{ship:m.data}):void 0,isPluginShip:u.has(e),way:A&&f.data?.lease?(0,t.jsx)(eK,{view:A,onOpenMessage:R}):void 0}),I?null:(0,t.jsx)(eb,{shipId:e,now:c}),I?null:(0,t.jsx)(t5,{shipId:e})]}),sheet:(0,t.jsx)(t4,{message:g.data,messageId:d,state:"NOT_FOUND"===(0,tB.trpcErrorCode)(g.error)?"not-found":g.data?"ready":"loading",isOpen:void 0!==d,now:c,machines:v.data??[],onOpenMessage:R,onOpenChange:e=>{e||T({tab:r})},onReply:k.canSend?e=>{S({messageId:e.id,sender:e.sender})}:void 0}),children:(0,t.jsxs)(t.Fragment,{children:[I?null:(0,t.jsxs)(a.Tabs,{value:r,onValueChange:e=>{T({tab:e===t6?t6:t7,messageId:d})},children:[(0,t.jsxs)(a.TabsList,{variant:"line","aria-label":`${m.data?.name??"Ship"} history`,children:[(0,t.jsx)(a.TabsTrigger,{variant:"line",value:t7,children:"Timeline"}),(0,t.jsx)(a.TabsTrigger,{variant:"line",value:t6,children:"Messages"})]}),(0,t.jsx)(a.TabsContent,{value:t7,className:"pt-4",children:(0,t.jsx)(tL,{shipId:e,entries:h.items??[],state:h.isFailed?"error":h.items?"ready":"loading",onRetry:h.retry,more:h.hasMore?(0,t.jsx)(tD.LoadMore,{what:"older events",isLoading:h.isLoadingMore,isFailed:h.isLoadMoreFailed,onLoad:h.loadMore,area:"ship-timeline"}):null,now:c,onOpenMessage:R,accountNames:p})}),(0,t.jsx)(a.TabsContent,{value:t6,className:"pt-4",children:(0,t.jsx)($,{shipId:e,messages:x.items??[],state:x.isFailed?"error":x.items?"ready":"loading",onRetry:x.retry,more:x.hasMore?(0,t.jsx)(tD.LoadMore,{what:"older messages",isLoading:x.isLoadingMore,isFailed:x.isLoadMoreFailed,onLoad:x.loadMore,area:"message-threads"}):null,now:c,onOpenMessage:R})})]}),(0,t.jsx)(i.ComposeMessage,{isOpen:void 0!==C,onOpenChange:e=>{e||S(void 0)},replyTo:C})]})})}],915860)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,419413,e=>{"use strict";e.s(["PAGE_SIZE_MAX",0,500])},887851,e=>{"use strict";var t=e.i(843476),i=e.i(792150),n=e.i(24071),a=e.i(867927),r=e.i(566595),s=e.i(749287),l=e.i(586875),o=e.i(271645),d=e.i(965324),c=e.i(937338),u=e.i(212470);let m=[{value:"*",testId:"label-picker-any"},{value:"#",testId:"label-picker-same"}],h={"trierarch-plugin":l.ShipWheel,squadrons:i.Boxes,ship:s.Ship};function p(e,t){return`${String(e)} ${1===e?t:`${t}s`}`}e.s(["LabelPicker",0,function({groups:e,pickedValueIds:i,onPick:s,size:l="sm",pickedWord:z="Picked",countWord:b="ship",terms:g}){let[f,v]=(0,o.useState)(""),[y,j]=(0,o.useState)(void 0),k="touch"===l,S=(0,d.classNames)("flex w-full items-center gap-2 rounded-sm px-2 text-left hover:bg-accent focus-visible:outline-2 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50",k?"min-h-(--size-control-touch) text-body-touch":"h-(--size-control-sm) text-body");if(void 0!==y)return(0,t.jsxs)("div",{className:"flex flex-col gap-1","data-testid":"label-picker-values",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-2 px-1 pb-1",children:[(0,t.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1 rounded-sm px-1 font-mono text-body hover:bg-accent focus-visible:outline-2 focus-visible:outline-ring [&_svg]:size-(--size-icon-sm)",onClick:()=>{j(void 0)},"aria-label":`Back to the keys, from ${y.key}`,children:[(0,t.jsx)(n.ChevronLeft,{"aria-hidden":!0}),y.key,"="]}),(0,t.jsxs)("span",{className:"text-meta text-muted-foreground",children:["ship"===b?"Ships":"Machines"," with each"]})]}),(0,t.jsxs)("ul",{className:"flex flex-col",children:[void 0===g?null:m.map(({value:e,testId:i})=>{let n=g.picked.some(t=>t.labelId===y.labelId&&t.value===e);return(0,t.jsx)("li",{children:(0,t.jsxs)("button",{type:"button",className:S,disabled:n,"data-testid":i,onClick:()=>{g.onPick({labelId:y.labelId,value:e}),j(void 0),v("")},children:[(0,t.jsx)("span",{className:"w-3 shrink-0 font-mono",children:e}),(0,t.jsx)("span",{className:"min-w-0 grow truncate",children:c.TERM_MEANINGS[e]}),n?(0,t.jsx)("span",{className:"shrink-0 text-meta text-muted-foreground",children:z}):null]})},e)}),y.values.map(e=>{let n=i.includes(e.valueId);return(0,t.jsx)("li",{children:(0,t.jsxs)("button",{type:"button",className:S,disabled:n,"data-testid":"label-picker-value",onClick:()=>{s(e.valueId),j(void 0),v("")},children:[(0,t.jsx)("span",{className:"min-w-0 grow truncate font-mono",children:e.value}),(0,t.jsx)("span",{className:"shrink-0 text-meta text-muted-foreground tabular-nums",children:n?z:p(e.shipCount,b)})]})},e.valueId)})]})]});let x=f.trim().toLowerCase(),w=e.map(e=>({...e,keys:e.keys.filter(e=>""===x||e.key.includes(x))})).filter(e=>e.keys.length>0);return(0,t.jsxs)("div",{className:"flex flex-col gap-2","data-testid":"label-picker",children:[(0,t.jsx)(u.Input,{type:"search","aria-label":"Find a key",placeholder:"Find a key",size:k?"touch":"md",leadingIcon:(0,t.jsx)(r.Search,{}),value:f,onChange:e=>{v(e.target.value)}}),0===w.length?(0,t.jsx)("p",{className:"px-2 py-3 text-meta text-muted-foreground",children:0===e.length?"The fleet has no labels yet.":`No key matches “${f.trim()}”.`}):w.map(e=>(0,t.jsxs)("div",{className:"flex flex-col",children:[(0,t.jsx)("span",{className:"px-2 pt-1 pb-0.5 text-caption text-muted-foreground",children:e.title}),(0,t.jsx)("ul",{className:"flex flex-col",children:e.keys.map(e=>{let i="none"===e.mark?null:h[e.mark];return(0,t.jsx)("li",{children:(0,t.jsxs)("button",{type:"button",className:(0,d.classNames)(S,"[&_svg]:size-(--size-icon-sm) [&_svg]:shrink-0 [&_svg]:text-muted-foreground"),"data-testid":"label-picker-key",onClick:()=>{j(e)},children:[null===i?null:(0,t.jsx)(i,{"aria-hidden":!0}),(0,t.jsx)("span",{className:"font-mono",children:e.key}),(0,t.jsx)("span",{className:"min-w-0 grow truncate text-meta text-muted-foreground",children:p(e.values.length,"value")}),(0,t.jsx)(a.ChevronRight,{"aria-hidden":!0})]})},e.labelId)})})]},e.title))]})}])},259068,function(e){e.n(e.i(887851))},937338,711514,e=>{"use strict";var t,i=e.i(681307),n=e.i(383615);let a=i.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","fleet:person","fleet:owner","fleet:explain","fleet:connect","labels:any","fleet:verify","scopes:declare","scopes:grant"]),r=["messages","fleet","crew","labels","scopes"],s="[a-z][a-z0-9-]{0,31}";RegExp(`^${s}$`);let l=RegExp(`^${s}:${s}$`),o=i.z.string().regex(l,"A scope is <namespace>:<action>").refine(e=>{var t;return t=e.slice(0,e.indexOf(":")),!r.some(e=>e===t)||a.safeParse(e).success},"No such core scope");i.z.enum(["messages:resend","fleet:read","fleet:commission","fleet:manage","crew:assign","crew:run","labels:define","labels:assign","fleet:network","fleet:on-behalf","fleet:person","fleet:owner","fleet:explain","fleet:connect","labels:any","fleet:verify"]);let d=i.z.enum(["operator","agent","viewer","person","app","plugin"]);i.z.enum(["agent","person","app","plugin"]),i.z.enum(["DEVICE","CLOUD","SERVER","OTHER"]);let c=i.z.enum(["awaitingCrew","crewed","retired"]);i.z.enum(["ship","type"]),i.z.enum(["pending","received","handed","acknowledged","handled","notHandled","undeliverable","dismissed","abandoned"]),i.z.enum(["FleetInitialised","ShipCommissioned","OwnerSet","OwnerChanged","ShipClaimed","LeaseRevoked","CredentialRevoked","StartingPromptIssued","OperatorPasswordReset","OperatorLoginSet","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","NetworkRulesDraftSaved","NetworkRulesDraftDiscarded","NetworkPluginRegistered","NetworkPluginUnregistered","BuiltInRuleChanged","ScopesDeclared","ScopesChanged","PluginConnected","PluginDisconnected","VerifiedFactsSet","VerifiedFactsRemoved"]);let u=i.z.string().min(1).max(128).brand();i.z.object({iss:i.z.string(),aud:(0,n.idSchema)("fleet"),sub:u,org:i.z.string().min(1),scope:i.z.string(),group:i.z.array(i.z.string()),person_ship:(0,n.idSchema)("ship").optional(),argo:i.z.boolean().optional(),iat:i.z.number(),exp:i.z.number()}).transform((e,t)=>{let n=e.scope.split(" ").filter(e=>""!==e),a=i.z.array(o).safeParse(n);return a.success?{issuer:e.iss,fleetId:e.aud,accountId:e.sub,organisationId:e.org,scopes:a.data,groupValues:e.group,personShipId:e.person_ship??null,isArgoAllowed:e.argo??!1,issuedAt:new Date(1e3*e.iat),endsAt:new Date(1e3*e.exp)}:(t.addIssue({code:"custom",message:"scope holds a malformed or unknown scope",path:["scope"]}),i.z.NEVER)}),new TextEncoder;let m=i.z.record(i.z.string(),i.z.json()),h=["crewing","running","restarting","crashed","releasing"],p=i.z.enum(h),z=["none","needsCrew","crewedByHand",...h],b=i.z.enum(z),g=`A reason is one line of at most ${String(200)} characters`;i.z.object({shipId:(0,n.idSchema)("ship"),settings:m}),i.z.object({settingsVersion:i.z.int().min(1)}),i.z.object({shipId:(0,n.idSchema)("ship")}),i.z.strictObject({}),i.z.object({settingsVersion:i.z.int().min(1),requestedAt:i.z.iso.datetime(),assignedTo:i.z.object({id:(0,n.idSchema)("ship"),name:i.z.string()}).nullable(),status:p.nullable(),reason:i.z.string().nullable(),crewedBy:i.z.object({id:(0,n.idSchema)("ship"),name:i.z.string()}).nullable(),attempt:i.z.int().min(0),startedAt:i.z.iso.datetime().nullable(),givenBack:i.z.array(i.z.object({trierarch:i.z.object({id:(0,n.idSchema)("ship"),name:i.z.string()}),settingsVersion:i.z.int().min(1),reason:i.z.string(),givenBackAt:i.z.iso.datetime()}))}).extend({settings:m}),i.z.object({shipId:(0,n.idSchema)("ship"),trierarchShipId:(0,n.idSchema)("ship")}),i.z.strictObject({}),i.z.object({shipId:(0,n.idSchema)("ship"),status:p,attempt:i.z.int().min(0).optional(),startedAt:i.z.iso.datetime().nullable().optional()}),i.z.strictObject({}),i.z.object({shipId:(0,n.idSchema)("ship")}),i.z.strictObject({}),i.z.array(i.z.object({shipId:(0,n.idSchema)("ship"),settings:m,settingsVersion:i.z.int().min(1),requestedAt:i.z.iso.datetime(),status:p.nullable(),isFinal:i.z.boolean(),ownerShipId:(0,n.idSchema)("ship").nullable(),ownerName:i.z.string().nullable()})),i.z.object({shipId:(0,n.idSchema)("ship"),reason:i.z.string().trim().max(200,g).refine(e=>!/[\r\n]/.test(e),g).nullable()}),i.z.strictObject({}),i.z.object({shipId:(0,n.idSchema)("ship"),settingsVersion:i.z.int().min(1),reason:i.z.string().trim().min(1,g).max(200,g).refine(e=>!/[\r\n]/.test(e),g)}),i.z.strictObject({});var f=e.i(419413);function v(e){return i.z.object({cursor:e.optional(),limit:i.z.int().min(1).max(f.PAGE_SIZE_MAX).optional()})}let y=i.z.string(),j=i.z.object({id:(0,n.idSchema)("labelValue"),value:i.z.string()}),k=i.z.object({labelId:(0,n.idSchema)("label"),key:i.z.string(),valueId:(0,n.idSchema)("labelValue"),value:i.z.string()}),S=i.z.enum(["console","claudeCode","codex","trierarch","plugin","other"]),x=i.z.object({query:i.z.string().optional(),name:i.z.string().optional(),status:i.z.array(c).optional(),type:i.z.array(i.z.string()).optional(),shipKind:i.z.array(d).optional(),crewRequest:i.z.array(b).optional(),assignedTo:i.z.array((0,n.idSchema)("ship")).optional(),needsCrew:i.z.enum(["withTrierarchs","withoutTrierarchs"]).optional(),valueIds:i.z.array((0,n.idSchema)("labelValue")).optional(),shipIds:i.z.array((0,n.idSchema)("ship")).optional(),kind:i.z.array(S).optional(),pluginShipIds:i.z.array((0,n.idSchema)("ship")).optional()});i.z.object({filter:x.optional()}).optional(),i.z.object({status:i.z.array(c).optional()}).optional(),i.z.array(i.z.string());let w=i.z.object({column:i.z.enum(["ship","status","report","runsOn","seen","requested"]),direction:i.z.enum(["ascending","descending"])}),I=i.z.object({isEmpty:i.z.boolean(),value:i.z.string(),name:i.z.string(),id:(0,n.idSchema)("ship")});v(i.z.string().max(4096).transform(function(e){try{let t=atob(e.replaceAll("-","+").replaceAll("_","/"));return JSON.parse(new TextDecoder().decode(Uint8Array.from(t,e=>e.charCodeAt(0))))}catch{return}}).pipe(I)).extend({...x.shape,sort:w.optional()}).optional(),i.z.object({key:y,values:i.z.array(y)}),i.z.object({labelId:(0,n.idSchema)("label"),values:i.z.array(j)}),i.z.object({labelId:(0,n.idSchema)("label"),values:i.z.array(y)}),i.z.object({values:i.z.array(j)}),i.z.object({labelId:(0,n.idSchema)("label")}),i.z.object({key:y,value:y}),i.z.object({labelId:(0,n.idSchema)("label"),valueId:(0,n.idSchema)("labelValue")}),i.z.object({shipId:(0,n.idSchema)("ship"),valueId:(0,n.idSchema)("labelValue")}),i.z.object({});let R=i.z.discriminatedUnion("kind",[i.z.object({kind:i.z.literal("ship"),id:(0,n.idSchema)("ship"),name:i.z.string()}),i.z.object({kind:i.z.literal("installation")})]),N=i.z.object({id:(0,n.idSchema)("label"),key:i.z.string(),values:i.z.array(j),owner:R});i.z.array(N.extend({shipCount:i.z.int().min(0),values:i.z.array(j.extend({shipCount:i.z.int().min(0)}))}));let C=i.z.union([(0,n.idSchema)("labelValue"),i.z.object({labelId:(0,n.idSchema)("label"),value:i.z.enum(["*","#"])}),i.z.object({owner:i.z.union([(0,n.idSchema)("ship"),i.z.enum(["*","#"])])})]);function A(e){return"string"!=typeof e&&"owner"in e}let O=i.z.array(C),E=["send","read","manage"],V=i.z.object({verb:i.z.enum(E),from:O,to:O}),D=i.z.array(V).nullable();i.z.object({rules:D}),i.z.object({savedAgainstVersion:i.z.int().min(0)}),i.z.object({version:i.z.int().min(0)}),i.z.object({applied:i.z.object({rules:D,version:i.z.int().min(0)}),draft:i.z.object({rules:D,savedAt:i.z.iso.datetime(),savedAgainstVersion:i.z.int().min(0)}).nullable()}),i.z.object({});let T=["argo","owner","answer","pluginRead","viewerRead","installation","open"];i.z.object({rule:i.z.enum(T),isOn:i.z.boolean()});let _=i.z.object({rule:i.z.enum(T),isOn:i.z.boolean()});i.z.array(_),i.z.object({version:i.z.int().min(0)}),i.z.object({rules:i.z.array(V)}),i.z.object({rules:i.z.int().min(0)});let L=i.z.discriminatedUnion("kind",[i.z.object({kind:i.z.literal("ship"),shipId:(0,n.idSchema)("ship")}),i.z.object({kind:i.z.literal("installation")})]);i.z.array(i.z.object({declarer:L,rules:i.z.array(V)}));let $=i.z.object({id:(0,n.idSchema)("ship"),name:i.z.string(),labels:i.z.array(k),owner:i.z.object({id:(0,n.idSchema)("ship"),name:i.z.string()}).nullable()}),P=i.z.discriminatedUnion("kind",[$.extend({kind:i.z.literal("ship")}),i.z.object({kind:i.z.literal("account"),accountId:u,labels:i.z.array(k),personShip:i.z.object({id:(0,n.idSchema)("ship"),name:i.z.string()}).nullable()}),i.z.object({kind:i.z.literal("installation")})]),M=i.z.object({id:(0,n.idSchema)("reachRefusal"),at:i.z.iso.datetime(),sender:P,askedBy:$.nullable(),recipient:i.z.discriminatedUnion("kind",[i.z.object({kind:i.z.literal("ship"),ship:$}),i.z.object({kind:i.z.literal("type"),type:i.z.string(),ships:i.z.array($)})]),verb:i.z.enum(E),settingsVersion:i.z.int().min(1)});v((0,n.idSchema)("reachRefusal")),t=(0,n.idSchema)("reachRefusal"),i.z.object({items:i.z.array(M),nextCursor:t.nullable()}),i.z.object({fromShipId:(0,n.idSchema)("ship"),toShipId:(0,n.idSchema)("ship").optional(),against:i.z.enum(["applied","draft"]).optional()});let B=i.z.union([i.z.object({builtIn:i.z.enum(T)}),i.z.object({rule:i.z.int().min(0)}),i.z.object({declared:L,index:i.z.int().min(0)})]),U=i.z.array(i.z.object({shipId:(0,n.idSchema)("ship"),rule:B}));i.z.object({send:U,read:U,manage:U});let q=i.z.array(i.z.object({fromShipId:(0,n.idSchema)("ship"),toShipId:(0,n.idSchema)("ship"),rule:B}));i.z.object({send:i.z.object({gained:q,lost:q}),read:i.z.object({gained:q,lost:q}),manage:i.z.object({gained:q,lost:q})}),e.s(["ANY_LABEL_VALUE",0,"*","NETWORK_VERBS",0,E,"SAME_LABEL_VALUE",0,"#","isOwnerTerm",0,A],711514);var F=e.i(280581);function W(e){return"all-to-all"===e.kind?null:e.rules.map(e=>({verb:e.verb,from:[...e.from],to:[...e.to]}))}function G(e,t){return"all-to-all"===e.kind?e:{kind:"rules",rules:e.rules.map(e=>e.key===t.key?t.change(e):e)}}function H(e,t){return K(e)===K(t)}function K(e){return"string"==typeof e?e:A(e)?`owner=${e.owner}`:`${e.labelId}=${e.value}`}function J(e,t){let i=e["from"===t?"to":"from"];return e[t].filter(e=>"string"!=typeof e&&!A(e)&&"#"===e.value&&!i.some(t=>H(t,e)))}function X(e,t){let i=e=>e.some(e=>A(e)&&"#"===e.owner);return i(e[t])&&!i(e["from"===t?"to":"from"])}e.s(["OWNER_TERM_MEANINGS",0,{"*":"Any owner","#":"The same owner as the other side"},"TERM_MEANINGS",0,{"*":"Any value","#":"The same value as the other side"},"VERB_WORDS",0,{send:"May send to",read:"May read",manage:"May manage"},"addRule",0,function(e,t){return"all-to-all"===e.kind||e.rules.length>=t.limits.rulesMax?e:{kind:"rules",rules:[...e.rules,{key:t.newKey(),verb:"send",from:[],to:[]}]}},"addTerm",0,function(e,t){return G(e,{key:t.rule,change:e=>{let i=e[t.side];return i.some(e=>H(e,t.term))||i.length>=t.limits.selectorMax?e:{...e,[t.side]:[...i,t.term]}}})},"draftOf",0,function(e,t){return null===e?{kind:"all-to-all"}:{kind:"rules",rules:e.map(e=>({key:t(),verb:e.verb,from:[...e.from],to:[...e.to]}))}},"hasSameValueOnOneSide",0,function(e){return"rules"===e.kind&&e.rules.some(e=>J(e,"from").length+J(e,"to").length>0||X(e,"from")||X(e,"to"))},"isChanged",0,function(e,t){return JSON.stringify(W(e))!==JSON.stringify(t)},"ownerChoicesOf",0,function(e){return e.ships.filter(e=>("operator"===e.kind||"person"===e.kind)&&"retired"!==e.status).map(e=>({shipId:e.id,name:e.name}))},"removeRule",0,function(e,t){return"all-to-all"===e.kind?e:{kind:"rules",rules:e.rules.filter(e=>e.key!==t)}},"removeTerm",0,function(e,t){return G(e,{key:t.rule,change:e=>({...e,[t.side]:e[t.side].filter(e=>!H(e,t.term))})})},"rulesOf",0,W,"sameValueProblemOf",0,function(e,t){let[i]=J(e,t.side);if(void 0===i)return X(e,t.side)?"owner=# needs owner=# on the other side: # matches the same owner there.":void 0;let n=t.context.labels.find(e=>e.id===i.labelId)?.key??i.labelId;return`${n}=# needs ${n}=# on the other side: # matches the same value there.`},"selectorOf",0,function(e,t){let i=[],n=[],a=[];for(let r of e){if(A(r)){let e=function(e,t){if("*"===e.owner||"#"===e.owner)return{term:e,text:`owner=${e.owner}`};let i=t.ships.find(t=>t.id===e.owner);return void 0===i?void 0:{term:e,text:`owner=${i.name}`}}(r,t);void 0===e?a.push(r):n.push(e);continue}let e=function(e,t){if("string"==typeof e){let[i]=(0,F.pickedChips)([e],t);return void 0===i?void 0:{labelId:i.labelId,key:i.key,value:i.value,mark:i.mark,ownerName:i.ownerName,term:e}}let i=t.labels.find(t=>t.id===e.labelId);if(void 0===i)return;let n=t.ownerOf.get(i.id);return{labelId:i.id,key:i.key,value:e.value,mark:n?.mark??"ship",ownerName:n?.name??(0,F.labelOwnerName)(i.owner),term:e}}(r,t);void 0===e?a.push(r):i.push(e)}return{chips:i,owners:n,unknown:a}},"setRulesOn",0,function(e,t){return t?"rules"===e.kind?e:{kind:"rules",rules:[]}:{kind:"all-to-all"}},"setVerb",0,function(e,t){return G(e,{key:t.rule,change:e=>({...e,verb:t.verb})})},"termKeyOf",0,K],937338)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,967928,t=>{t.v(s=>Promise.all(["static/chunks/0rynbs46ao8hb.js","static/chunks/05q5fopmtrwk-.js"].map(s=>t.l(s))).then(()=>s(792963)))}]);