@aeolus-fleet/gateway 0.36.1 → 0.36.3

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 (997) hide show
  1. package/README.md +4 -0
  2. package/dist/adapters/fleet/active-ships.d.ts +8 -0
  3. package/dist/adapters/fleet/active-ships.js +22 -0
  4. package/dist/adapters/fleet/active-ships.js.map +1 -0
  5. package/dist/adapters/fleet/actor-door.d.ts +8 -1
  6. package/dist/adapters/fleet/actor-door.js +12 -5
  7. package/dist/adapters/fleet/actor-door.js.map +1 -1
  8. package/dist/adapters/fleet/argo-inbox-door.d.ts +4 -0
  9. package/dist/adapters/fleet/argo-inbox-door.js +81 -0
  10. package/dist/adapters/fleet/argo-inbox-door.js.map +1 -0
  11. package/dist/adapters/fleet/every-listed-ship.d.ts +21 -0
  12. package/dist/adapters/fleet/every-listed-ship.js +28 -0
  13. package/dist/adapters/fleet/every-listed-ship.js.map +1 -0
  14. package/dist/adapters/fleet/fleet-ships.d.ts +1 -3
  15. package/dist/adapters/fleet/fleet-ships.js +5 -22
  16. package/dist/adapters/fleet/fleet-ships.js.map +1 -1
  17. package/dist/adapters/fleet/rest-fleet-door.d.ts +14 -0
  18. package/dist/adapters/fleet/rest-fleet-door.js +50 -6
  19. package/dist/adapters/fleet/rest-fleet-door.js.map +1 -1
  20. package/dist/adapters/http/front-door.js +3 -1
  21. package/dist/adapters/http/front-door.js.map +1 -1
  22. package/dist/adapters/http/live.d.ts +10 -1
  23. package/dist/adapters/http/live.js +10 -1
  24. package/dist/adapters/http/live.js.map +1 -1
  25. package/dist/adapters/http/party-sign-in-routes.d.ts +7 -0
  26. package/dist/adapters/http/party-sign-in-routes.js +18 -0
  27. package/dist/adapters/http/party-sign-in-routes.js.map +1 -1
  28. package/dist/adapters/http/person-tools.js +3 -2
  29. package/dist/adapters/http/person-tools.js.map +1 -1
  30. package/dist/adapters/http/slack-routes.d.ts +2 -0
  31. package/dist/adapters/http/slack-routes.js +12 -4
  32. package/dist/adapters/http/slack-routes.js.map +1 -1
  33. package/dist/adapters/mcp/mcp-servers.d.ts +8 -2
  34. package/dist/adapters/mcp/mcp-servers.js +8 -4
  35. package/dist/adapters/mcp/mcp-servers.js.map +1 -1
  36. package/dist/adapters/pagasae/email-channel.js +5 -3
  37. package/dist/adapters/pagasae/email-channel.js.map +1 -1
  38. package/dist/adapters/pagasae/pagasae-client.js +1 -0
  39. package/dist/adapters/pagasae/pagasae-client.js.map +1 -1
  40. package/dist/adapters/pagasae/shared-sign-in.js +2 -2
  41. package/dist/adapters/pagasae/shared-sign-in.js.map +1 -1
  42. package/dist/adapters/prisma/argo-accounts.d.ts +4 -0
  43. package/dist/adapters/prisma/argo-accounts.js +17 -0
  44. package/dist/adapters/prisma/argo-accounts.js.map +1 -0
  45. package/dist/adapters/prisma/argo-slack-posts.d.ts +4 -0
  46. package/dist/adapters/prisma/argo-slack-posts.js +30 -0
  47. package/dist/adapters/prisma/argo-slack-posts.js.map +1 -0
  48. package/dist/adapters/prisma/argo-wakes.d.ts +4 -0
  49. package/dist/adapters/prisma/argo-wakes.js +54 -0
  50. package/dist/adapters/prisma/argo-wakes.js.map +1 -0
  51. package/dist/adapters/prisma/basket-entries.js +4 -2
  52. package/dist/adapters/prisma/basket-entries.js.map +1 -1
  53. package/dist/adapters/prisma/connected-chats.d.ts +4 -0
  54. package/dist/adapters/prisma/connected-chats.js +21 -0
  55. package/dist/adapters/prisma/connected-chats.js.map +1 -0
  56. package/dist/adapters/prisma/fleet-forgetter.d.ts +1 -1
  57. package/dist/adapters/prisma/fleet-forgetter.js +2 -2
  58. package/dist/adapters/prisma/fleet-forgetter.js.map +1 -1
  59. package/dist/adapters/prisma/generated/browser.d.ts +26 -1
  60. package/dist/adapters/prisma/generated/client.d.ts +26 -1
  61. package/dist/adapters/prisma/generated/internal/class.d.ts +55 -0
  62. package/dist/adapters/prisma/generated/internal/class.js +4 -4
  63. package/dist/adapters/prisma/generated/internal/class.js.map +1 -1
  64. package/dist/adapters/prisma/generated/internal/prismaNamespace.d.ts +428 -1
  65. package/dist/adapters/prisma/generated/internal/prismaNamespace.js +49 -2
  66. package/dist/adapters/prisma/generated/internal/prismaNamespace.js.map +1 -1
  67. package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.d.ts +52 -0
  68. package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js +49 -2
  69. package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
  70. package/dist/adapters/prisma/generated/models/ArgoAccount.d.ts +946 -0
  71. package/dist/adapters/prisma/generated/models/ArgoAccount.js +2 -0
  72. package/dist/adapters/prisma/generated/models/ArgoAccount.js.map +1 -0
  73. package/dist/adapters/prisma/generated/models/ArgoMessageCovered.d.ts +947 -0
  74. package/dist/adapters/prisma/generated/models/ArgoMessageCovered.js +2 -0
  75. package/dist/adapters/prisma/generated/models/ArgoMessageCovered.js.map +1 -0
  76. package/dist/adapters/prisma/generated/models/ArgoSlackPost.d.ts +1065 -0
  77. package/dist/adapters/prisma/generated/models/ArgoSlackPost.js +2 -0
  78. package/dist/adapters/prisma/generated/models/ArgoSlackPost.js.map +1 -0
  79. package/dist/adapters/prisma/generated/models/ArgoWakeSent.d.ts +975 -0
  80. package/dist/adapters/prisma/generated/models/ArgoWakeSent.js +2 -0
  81. package/dist/adapters/prisma/generated/models/ArgoWakeSent.js.map +1 -0
  82. package/dist/adapters/prisma/generated/models/BasketEntry.d.ts +114 -18
  83. package/dist/adapters/prisma/generated/models/ItemOutcome.d.ts +91 -1
  84. package/dist/adapters/prisma/generated/models/OpenedDelivery.d.ts +95 -2
  85. package/dist/adapters/prisma/generated/models/Party.d.ts +32 -1
  86. package/dist/adapters/prisma/generated/models/SlackLinkStep.d.ts +1005 -0
  87. package/dist/adapters/prisma/generated/models/SlackLinkStep.js +2 -0
  88. package/dist/adapters/prisma/generated/models/SlackLinkStep.js.map +1 -0
  89. package/dist/adapters/prisma/generated/models.d.ts +5 -0
  90. package/dist/adapters/prisma/item-outcomes.d.ts +6 -1
  91. package/dist/adapters/prisma/item-outcomes.js +19 -3
  92. package/dist/adapters/prisma/item-outcomes.js.map +1 -1
  93. package/dist/adapters/prisma/opened-deliveries.js +5 -0
  94. package/dist/adapters/prisma/opened-deliveries.js.map +1 -1
  95. package/dist/adapters/prisma/party-store.js +4 -1
  96. package/dist/adapters/prisma/party-store.js.map +1 -1
  97. package/dist/adapters/prisma/slack-link-steps.d.ts +8 -0
  98. package/dist/adapters/prisma/slack-link-steps.js +28 -0
  99. package/dist/adapters/prisma/slack-link-steps.js.map +1 -0
  100. package/dist/adapters/prisma/slack-posts.js +4 -3
  101. package/dist/adapters/prisma/slack-posts.js.map +1 -1
  102. package/dist/adapters/slack/slack-messages.d.ts +2 -0
  103. package/dist/adapters/slack/slack-messages.js +125 -18
  104. package/dist/adapters/slack/slack-messages.js.map +1 -1
  105. package/dist/adapters/trpc/router.d.ts +78 -2
  106. package/dist/adapters/trpc/router.js +36 -1
  107. package/dist/adapters/trpc/router.js.map +1 -1
  108. package/dist/adapters/web-push/web-push.js +1 -1
  109. package/dist/adapters/web-push/web-push.js.map +1 -1
  110. package/dist/app.js +128 -15
  111. package/dist/app.js.map +1 -1
  112. package/dist/core/account-sign-in/account-of-sign-in.d.ts +7 -2
  113. package/dist/core/account-sign-in/account-of-sign-in.js +9 -3
  114. package/dist/core/account-sign-in/account-of-sign-in.js.map +1 -1
  115. package/dist/core/account-sign-in/ports.d.ts +2 -0
  116. package/dist/core/argo-inbox/argo-inbox.d.ts +31 -0
  117. package/dist/core/argo-inbox/argo-inbox.js +23 -0
  118. package/dist/core/argo-inbox/argo-inbox.js.map +1 -0
  119. package/dist/core/argo-inbox/argo-slack-message.d.ts +17 -0
  120. package/dist/core/argo-inbox/argo-slack-message.js +40 -0
  121. package/dist/core/argo-inbox/argo-slack-message.js.map +1 -0
  122. package/dist/core/argo-inbox/argo-slack-post.d.ts +21 -0
  123. package/dist/core/argo-inbox/argo-slack-post.js +2 -0
  124. package/dist/core/argo-inbox/argo-slack-post.js.map +1 -0
  125. package/dist/core/argo-inbox/follow-argo-inbox.d.ts +33 -0
  126. package/dist/core/argo-inbox/follow-argo-inbox.js +133 -0
  127. package/dist/core/argo-inbox/follow-argo-inbox.js.map +1 -0
  128. package/dist/core/argo-inbox/note-argo-account.d.ts +19 -0
  129. package/dist/core/argo-inbox/note-argo-account.js +18 -0
  130. package/dist/core/argo-inbox/note-argo-account.js.map +1 -0
  131. package/dist/core/argo-inbox/ports.d.ts +123 -0
  132. package/dist/core/argo-inbox/ports.js +2 -0
  133. package/dist/core/argo-inbox/ports.js.map +1 -0
  134. package/dist/core/argo-inbox/read-argo-inbox-notice.d.ts +34 -0
  135. package/dist/core/argo-inbox/read-argo-inbox-notice.js +20 -0
  136. package/dist/core/argo-inbox/read-argo-inbox-notice.js.map +1 -0
  137. package/dist/core/argo-inbox/read-argo-section.d.ts +54 -0
  138. package/dist/core/argo-inbox/read-argo-section.js +67 -0
  139. package/dist/core/argo-inbox/read-argo-section.js.map +1 -0
  140. package/dist/core/argo-inbox/show-argo-inbox-in-slack.d.ts +36 -0
  141. package/dist/core/argo-inbox/show-argo-inbox-in-slack.js +125 -0
  142. package/dist/core/argo-inbox/show-argo-inbox-in-slack.js.map +1 -0
  143. package/dist/core/argo-inbox/wake-for-argo.d.ts +37 -0
  144. package/dist/core/argo-inbox/wake-for-argo.js +139 -0
  145. package/dist/core/argo-inbox/wake-for-argo.js.map +1 -0
  146. package/dist/core/mcp-out/grant-calls.js +1 -1
  147. package/dist/core/mcp-out/grant-calls.js.map +1 -1
  148. package/dist/core/mcp-out/hand-call.js +1 -1
  149. package/dist/core/mcp-out/hand-call.js.map +1 -1
  150. package/dist/core/mcp-out/keep-server-title.d.ts +13 -0
  151. package/dist/core/mcp-out/keep-server-title.js +14 -0
  152. package/dist/core/mcp-out/keep-server-title.js.map +1 -0
  153. package/dist/core/mcp-out/ports.d.ts +10 -0
  154. package/dist/core/oauth/exchange-id-jag.d.ts +4 -1
  155. package/dist/core/oauth/exchange-id-jag.js +5 -2
  156. package/dist/core/oauth/exchange-id-jag.js.map +1 -1
  157. package/dist/core/parties/approve-party.js +1 -1
  158. package/dist/core/parties/approve-party.js.map +1 -1
  159. package/dist/core/parties/party.d.ts +2 -0
  160. package/dist/core/parties/party.js.map +1 -1
  161. package/dist/core/parties/ports.d.ts +5 -0
  162. package/dist/core/party-grants/listing-connection.js +2 -2
  163. package/dist/core/party-grants/listing-connection.js.map +1 -1
  164. package/dist/core/party-grants/tell-sign-in-needed.d.ts +2 -0
  165. package/dist/core/party-grants/tell-sign-in-needed.js +16 -4
  166. package/dist/core/party-grants/tell-sign-in-needed.js.map +1 -1
  167. package/dist/core/people/act-in-place.d.ts +42 -0
  168. package/dist/core/people/act-in-place.js +26 -0
  169. package/dist/core/people/act-in-place.js.map +1 -0
  170. package/dist/core/people/answer-delivery.js +13 -1
  171. package/dist/core/people/answer-delivery.js.map +1 -1
  172. package/dist/core/people/basket.d.ts +32 -10
  173. package/dist/core/people/basket.js +24 -6
  174. package/dist/core/people/basket.js.map +1 -1
  175. package/dist/core/people/count-basket.d.ts +4 -3
  176. package/dist/core/people/count-basket.js +9 -3
  177. package/dist/core/people/count-basket.js.map +1 -1
  178. package/dist/core/people/done-delivery.js +1 -1
  179. package/dist/core/people/done-delivery.js.map +1 -1
  180. package/dist/core/people/finish-own-step.js +2 -2
  181. package/dist/core/people/finish-own-step.js.map +1 -1
  182. package/dist/core/people/inbox-entry.d.ts +17 -1
  183. package/dist/core/people/inbox-entry.js +28 -1
  184. package/dist/core/people/inbox-entry.js.map +1 -1
  185. package/dist/core/people/item-job.d.ts +3 -1
  186. package/dist/core/people/item-job.js +5 -1
  187. package/dist/core/people/item-job.js.map +1 -1
  188. package/dist/core/people/item-outcome.d.ts +21 -2
  189. package/dist/core/people/item-outcome.js.map +1 -1
  190. package/dist/core/people/item-places.d.ts +26 -0
  191. package/dist/core/people/item-places.js +12 -0
  192. package/dist/core/people/item-places.js.map +1 -0
  193. package/dist/core/people/open-delivery.d.ts +6 -6
  194. package/dist/core/people/open-delivery.js +13 -10
  195. package/dist/core/people/open-delivery.js.map +1 -1
  196. package/dist/core/people/opened-of.d.ts +5 -1
  197. package/dist/core/people/opened-of.js +5 -1
  198. package/dist/core/people/opened-of.js.map +1 -1
  199. package/dist/core/people/person-wakes.d.ts +49 -0
  200. package/dist/core/people/person-wakes.js +27 -0
  201. package/dist/core/people/person-wakes.js.map +1 -0
  202. package/dist/core/people/ports.d.ts +46 -5
  203. package/dist/core/people/put-in-basket.d.ts +8 -6
  204. package/dist/core/people/put-in-basket.js +16 -5
  205. package/dist/core/people/put-in-basket.js.map +1 -1
  206. package/dist/core/people/read-basket.d.ts +8 -3
  207. package/dist/core/people/read-basket.js +8 -10
  208. package/dist/core/people/read-basket.js.map +1 -1
  209. package/dist/core/people/read-bridge-home.d.ts +39 -11
  210. package/dist/core/people/read-bridge-home.js +74 -12
  211. package/dist/core/people/read-bridge-home.js.map +1 -1
  212. package/dist/core/people/read-chats.d.ts +21 -0
  213. package/dist/core/people/read-chats.js +20 -0
  214. package/dist/core/people/read-chats.js.map +1 -0
  215. package/dist/core/people/read-inbox.d.ts +19 -9
  216. package/dist/core/people/read-inbox.js +57 -15
  217. package/dist/core/people/read-inbox.js.map +1 -1
  218. package/dist/core/people/read-record.d.ts +37 -11
  219. package/dist/core/people/read-record.js +44 -12
  220. package/dist/core/people/read-record.js.map +1 -1
  221. package/dist/core/people/read-send-to.d.ts +23 -0
  222. package/dist/core/people/read-send-to.js +37 -0
  223. package/dist/core/people/read-send-to.js.map +1 -0
  224. package/dist/core/people/read-your-fleet.d.ts +19 -0
  225. package/dist/core/people/read-your-fleet.js +22 -0
  226. package/dist/core/people/read-your-fleet.js.map +1 -0
  227. package/dist/core/people/remove-from-basket.d.ts +2 -1
  228. package/dist/core/people/remove-from-basket.js +4 -1
  229. package/dist/core/people/remove-from-basket.js.map +1 -1
  230. package/dist/core/people/routing.d.ts +13 -4
  231. package/dist/core/people/routing.js +14 -0
  232. package/dist/core/people/routing.js.map +1 -1
  233. package/dist/core/people/send-basket.d.ts +11 -7
  234. package/dist/core/people/send-basket.js +68 -11
  235. package/dist/core/people/send-basket.js.map +1 -1
  236. package/dist/core/people/send-message.d.ts +3 -1
  237. package/dist/core/people/send-message.js +9 -2
  238. package/dist/core/people/send-message.js.map +1 -1
  239. package/dist/core/people/send-stored-answers.d.ts +4 -3
  240. package/dist/core/people/send-stored-answers.js +62 -12
  241. package/dist/core/people/send-stored-answers.js.map +1 -1
  242. package/dist/core/people/stale-item.d.ts +40 -0
  243. package/dist/core/people/stale-item.js +36 -0
  244. package/dist/core/people/stale-item.js.map +1 -0
  245. package/dist/core/people/wake-person.d.ts +3 -1
  246. package/dist/core/people/wake-person.js +5 -3
  247. package/dist/core/people/wake-person.js.map +1 -1
  248. package/dist/core/people/web-push-channel.js +2 -2
  249. package/dist/core/people/web-push-channel.js.map +1 -1
  250. package/dist/core/people/your-fleet.d.ts +44 -0
  251. package/dist/core/people/your-fleet.js +64 -0
  252. package/dist/core/people/your-fleet.js.map +1 -0
  253. package/dist/core/sign-in/account-token.d.ts +5 -1
  254. package/dist/core/sign-in/account-token.js +8 -2
  255. package/dist/core/sign-in/account-token.js.map +1 -1
  256. package/dist/core/sign-in/complete-sign-in.d.ts +4 -1
  257. package/dist/core/sign-in/complete-sign-in.js +5 -2
  258. package/dist/core/sign-in/complete-sign-in.js.map +1 -1
  259. package/dist/core/sign-in/ports.d.ts +2 -0
  260. package/dist/core/slack/answer-in-slack.d.ts +15 -9
  261. package/dist/core/slack/answer-in-slack.js +43 -18
  262. package/dist/core/slack/answer-in-slack.js.map +1 -1
  263. package/dist/core/slack/ask-to-link-slack.d.ts +28 -0
  264. package/dist/core/slack/ask-to-link-slack.js +31 -0
  265. package/dist/core/slack/ask-to-link-slack.js.map +1 -0
  266. package/dist/core/slack/complete-link.d.ts +6 -1
  267. package/dist/core/slack/complete-link.js +6 -0
  268. package/dist/core/slack/complete-link.js.map +1 -1
  269. package/dist/core/slack/done-in-slack.d.ts +36 -0
  270. package/dist/core/slack/done-in-slack.js +63 -0
  271. package/dist/core/slack/done-in-slack.js.map +1 -0
  272. package/dist/core/slack/edit-slack-posts.d.ts +7 -5
  273. package/dist/core/slack/edit-slack-posts.js +13 -10
  274. package/dist/core/slack/edit-slack-posts.js.map +1 -1
  275. package/dist/core/slack/edited-post-of.d.ts +21 -0
  276. package/dist/core/slack/edited-post-of.js +77 -0
  277. package/dist/core/slack/edited-post-of.js.map +1 -0
  278. package/dist/core/slack/ports.d.ts +70 -10
  279. package/dist/core/slack/pressed-post-of.d.ts +9 -0
  280. package/dist/core/slack/pressed-post-of.js +18 -0
  281. package/dist/core/slack/pressed-post-of.js.map +1 -0
  282. package/dist/core/slack/read-slack-dropped-out.d.ts +23 -0
  283. package/dist/core/slack/read-slack-dropped-out.js +24 -0
  284. package/dist/core/slack/read-slack-dropped-out.js.map +1 -0
  285. package/dist/core/slack/read-slack-link.d.ts +4 -0
  286. package/dist/core/slack/read-slack-link.js +5 -0
  287. package/dist/core/slack/read-slack-link.js.map +1 -1
  288. package/dist/core/slack/show-in-slack.js +8 -7
  289. package/dist/core/slack/show-in-slack.js.map +1 -1
  290. package/dist/core/slack/slack-post-of.d.ts +24 -12
  291. package/dist/core/slack/slack-post-of.js +118 -37
  292. package/dist/core/slack/slack-post-of.js.map +1 -1
  293. package/dist/core/slack/slack-post.d.ts +13 -1
  294. package/dist/core/slack/slack-post.js +16 -1
  295. package/dist/core/slack/slack-post.js.map +1 -1
  296. package/dist/core/slack/slack-press.d.ts +1 -1
  297. package/dist/core/slack/slack-press.js +2 -1
  298. package/dist/core/slack/slack-press.js.map +1 -1
  299. package/package.json +4 -2
  300. package/src/adapters/prisma/migrations/20261104090000_basket_entries_note_alone/migration.sql +2 -0
  301. package/src/adapters/prisma/migrations/20261105090000_slack_link_steps/migration.sql +10 -0
  302. package/src/adapters/prisma/migrations/20261106090000_opened_deliveries_withdrawn_steps/migration.sql +2 -0
  303. package/src/adapters/prisma/migrations/20261107090000_opened_deliveries_step_link/migration.sql +2 -0
  304. package/src/adapters/prisma/migrations/20261107100000_opened_deliveries_opened_in/migration.sql +2 -0
  305. package/src/adapters/prisma/migrations/20261108090000_item_outcomes_note_and_seen/migration.sql +4 -0
  306. package/src/adapters/prisma/migrations/20261108090000_parties_display_name/migration.sql +2 -0
  307. package/src/adapters/prisma/migrations/20261109090000_argo_accounts/migration.sql +8 -0
  308. package/src/adapters/prisma/migrations/20261109090000_basket_entries_option_label/migration.sql +2 -0
  309. package/src/adapters/prisma/migrations/20261109100000_basket_entries_sent/migration.sql +3 -0
  310. package/src/adapters/prisma/migrations/20261110090000_argo_slack_posts/migration.sql +12 -0
  311. package/src/adapters/prisma/migrations/20261110090000_connected_chats_indexes/migration.sql +5 -0
  312. package/src/adapters/prisma/migrations/20261110100000_argo_wakes/migration.sql +18 -0
  313. package/src/adapters/prisma/schema.prisma +88 -6
  314. package/web/.next/BUILD_ID +1 -1
  315. package/web/.next/app-path-routes-manifest.json +10 -8
  316. package/web/.next/build-manifest.json +114 -90
  317. package/web/.next/diagnostics/route-bundle-stats.json +268 -208
  318. package/web/.next/fallback-build-manifest.json +3 -3
  319. package/web/.next/prerender-manifest.json +3 -3
  320. package/web/.next/routes-manifest.json +12 -0
  321. package/web/.next/server/app/(bridge)/bridge/basket/page/app-paths-manifest.json +3 -0
  322. package/web/.next/server/app/{(console) → (bridge)}/bridge/basket/page/build-manifest.json +4 -4
  323. package/web/.next/server/app/{(console) → (bridge)}/bridge/basket/page/next-font-manifest.json +1 -1
  324. package/web/.next/server/app/(bridge)/bridge/basket/page/server-reference-manifest.json +105 -0
  325. package/web/.next/server/app/{(console)/bridge/settings/requests/[requestId] → (bridge)/bridge/basket}/page.js +15 -14
  326. package/web/.next/server/app/(bridge)/bridge/basket/page.js.nft.json +1 -0
  327. package/web/.next/server/app/(bridge)/bridge/basket/page_client-reference-manifest.js +3 -0
  328. package/web/.next/server/app/(bridge)/bridge/changes/route/app-paths-manifest.json +3 -0
  329. package/web/.next/server/app/(bridge)/bridge/changes/route.js +8 -0
  330. package/web/.next/server/app/{(console) → (bridge)}/bridge/changes/route.js.nft.json +1 -1
  331. package/web/.next/server/app/(bridge)/bridge/changes/route_client-reference-manifest.js +3 -0
  332. package/web/.next/server/app/(bridge)/bridge/done/page/app-paths-manifest.json +3 -0
  333. package/web/.next/server/app/{(console) → (bridge)}/bridge/done/page/build-manifest.json +4 -4
  334. package/web/.next/server/app/{(console) → (bridge)}/bridge/done/page/next-font-manifest.json +1 -1
  335. package/web/.next/server/app/(bridge)/bridge/done/page/server-reference-manifest.json +25 -0
  336. package/web/.next/server/app/{(console) → (bridge)}/bridge/done/page.js +16 -15
  337. package/web/.next/server/app/{(console)/bridge/settings → (bridge)/bridge/done}/page.js.nft.json +1 -1
  338. package/web/.next/server/app/(bridge)/bridge/done/page_client-reference-manifest.js +3 -0
  339. package/web/.next/server/app/(bridge)/bridge/fleet/page/app-paths-manifest.json +3 -0
  340. package/web/.next/server/app/{(console)/bridge/settings → (bridge)/bridge/fleet}/page/build-manifest.json +4 -4
  341. package/web/.next/server/app/{(console)/bridge/settings → (bridge)/bridge/fleet}/page/next-font-manifest.json +1 -1
  342. package/web/.next/server/app/{(console)/bridge/settings → (bridge)/bridge/fleet}/page/server-reference-manifest.json +3 -3
  343. package/web/.next/server/app/(bridge)/bridge/fleet/page.js +24 -0
  344. package/web/.next/server/app/{(console)/bridge/done → (bridge)/bridge/fleet}/page.js.nft.json +1 -1
  345. package/web/.next/server/app/(bridge)/bridge/fleet/page_client-reference-manifest.js +3 -0
  346. package/web/.next/server/app/(bridge)/bridge/focus/route/app-paths-manifest.json +3 -0
  347. package/web/.next/server/app/(bridge)/bridge/focus/route.js +8 -0
  348. package/web/.next/server/app/{(console) → (bridge)}/bridge/focus/route.js.nft.json +1 -1
  349. package/web/.next/server/app/(bridge)/bridge/focus/route_client-reference-manifest.js +3 -0
  350. package/web/.next/server/app/(bridge)/bridge/page/app-paths-manifest.json +3 -0
  351. package/web/.next/server/app/{(console) → (bridge)}/bridge/page/build-manifest.json +4 -4
  352. package/web/.next/server/app/{(console) → (bridge)}/bridge/page/next-font-manifest.json +1 -1
  353. package/web/.next/server/app/(bridge)/bridge/page/server-reference-manifest.json +95 -0
  354. package/web/.next/server/app/{(console) → (bridge)}/bridge/page.js +16 -14
  355. package/web/.next/server/app/{(console) → (bridge)}/bridge/page.js.nft.json +1 -1
  356. package/web/.next/server/app/(bridge)/bridge/page_client-reference-manifest.js +3 -0
  357. package/web/.next/server/app/(bridge)/bridge/settings/page/app-paths-manifest.json +3 -0
  358. package/web/.next/server/app/(bridge)/bridge/settings/page/build-manifest.json +23 -0
  359. package/web/.next/server/app/(bridge)/bridge/settings/page/next-font-manifest.json +11 -0
  360. package/web/.next/server/app/(bridge)/bridge/settings/page/server-reference-manifest.json +15 -0
  361. package/web/.next/server/app/{(console) → (bridge)}/bridge/settings/page.js +15 -14
  362. package/web/.next/server/app/{(console)/bridge/basket → (bridge)/bridge/settings}/page.js.nft.json +1 -1
  363. package/web/.next/server/app/(bridge)/bridge/settings/page_client-reference-manifest.js +3 -0
  364. package/web/.next/server/app/(bridge)/bridge/settings/requests/[requestId]/page/app-paths-manifest.json +3 -0
  365. package/web/.next/server/app/(bridge)/bridge/settings/requests/[requestId]/page/build-manifest.json +23 -0
  366. package/web/.next/server/app/(bridge)/bridge/settings/requests/[requestId]/page/next-font-manifest.json +11 -0
  367. package/web/.next/server/app/{(console) → (bridge)}/bridge/settings/requests/[requestId]/page/server-reference-manifest.json +6 -6
  368. package/web/.next/server/app/(bridge)/bridge/settings/requests/[requestId]/page.js +26 -0
  369. package/web/.next/server/app/{(console) → (bridge)}/bridge/settings/requests/[requestId]/page.js.nft.json +1 -1
  370. package/web/.next/server/app/(bridge)/bridge/settings/requests/[requestId]/page_client-reference-manifest.js +3 -0
  371. package/web/.next/server/app/(bridge)/bridge/settings/routing/page/app-paths-manifest.json +3 -0
  372. package/web/.next/server/app/(bridge)/bridge/settings/routing/page/build-manifest.json +23 -0
  373. package/web/.next/server/app/(bridge)/bridge/settings/routing/page/next-font-manifest.json +11 -0
  374. package/web/.next/server/app/(bridge)/bridge/settings/routing/page/react-loadable-manifest.json +1 -0
  375. package/web/.next/server/app/{(console) → (bridge)}/bridge/settings/routing/page/server-reference-manifest.json +15 -15
  376. package/web/.next/server/app/{(console) → (bridge)}/bridge/settings/routing/page.js +15 -14
  377. package/web/.next/server/app/(bridge)/bridge/settings/routing/page.js.map +5 -0
  378. package/web/.next/server/app/{(console) → (bridge)}/bridge/settings/routing/page.js.nft.json +1 -1
  379. package/web/.next/server/app/(bridge)/bridge/settings/routing/page_client-reference-manifest.js +3 -0
  380. package/web/.next/server/app/(bridge)/bridge/stay-aware/page/app-paths-manifest.json +3 -0
  381. package/web/.next/server/app/(bridge)/bridge/stay-aware/page/build-manifest.json +23 -0
  382. package/web/.next/server/app/(bridge)/bridge/stay-aware/page/next-font-manifest.json +11 -0
  383. package/web/.next/server/app/(bridge)/bridge/stay-aware/page/react-loadable-manifest.json +1 -0
  384. package/web/.next/server/app/(bridge)/bridge/stay-aware/page/server-reference-manifest.json +95 -0
  385. package/web/.next/server/app/{(console)/bridge/basket → (bridge)/bridge/stay-aware}/page.js +15 -14
  386. package/web/.next/server/app/(bridge)/bridge/stay-aware/page.js.map +5 -0
  387. package/web/.next/server/app/(bridge)/bridge/stay-aware/page.js.nft.json +1 -0
  388. package/web/.next/server/app/(bridge)/bridge/stay-aware/page_client-reference-manifest.js +3 -0
  389. package/web/.next/server/app/(console)/gateway-off/page/build-manifest.json +4 -4
  390. package/web/.next/server/app/(console)/gateway-off/page/server-reference-manifest.json +1 -1
  391. package/web/.next/server/app/(console)/gateway-off/page.js +2 -2
  392. package/web/.next/server/app/(console)/gateway-off/page.js.nft.json +1 -1
  393. package/web/.next/server/app/(console)/gateway-off/page_client-reference-manifest.js +1 -1
  394. package/web/.next/server/app/(console)/meetings/[meetingId]/page/build-manifest.json +4 -4
  395. package/web/.next/server/app/(console)/meetings/[meetingId]/page/server-reference-manifest.json +3 -3
  396. package/web/.next/server/app/(console)/meetings/[meetingId]/page.js +2 -2
  397. package/web/.next/server/app/(console)/meetings/[meetingId]/page.js.nft.json +1 -1
  398. package/web/.next/server/app/(console)/meetings/[meetingId]/page_client-reference-manifest.js +1 -1
  399. package/web/.next/server/app/(console)/outside-parties/[name]/change/page/build-manifest.json +4 -4
  400. package/web/.next/server/app/(console)/outside-parties/[name]/change/page/server-reference-manifest.json +18 -18
  401. package/web/.next/server/app/(console)/outside-parties/[name]/change/page.js +2 -2
  402. package/web/.next/server/app/(console)/outside-parties/[name]/change/page.js.nft.json +1 -1
  403. package/web/.next/server/app/(console)/outside-parties/[name]/change/page_client-reference-manifest.js +1 -1
  404. package/web/.next/server/app/(console)/outside-parties/[name]/page/build-manifest.json +4 -4
  405. package/web/.next/server/app/(console)/outside-parties/[name]/page/server-reference-manifest.json +8 -8
  406. package/web/.next/server/app/(console)/outside-parties/[name]/page.js +2 -2
  407. package/web/.next/server/app/(console)/outside-parties/[name]/page.js.nft.json +1 -1
  408. package/web/.next/server/app/(console)/outside-parties/[name]/page_client-reference-manifest.js +1 -1
  409. package/web/.next/server/app/(console)/outside-parties/[name]/retire/page/build-manifest.json +4 -4
  410. package/web/.next/server/app/(console)/outside-parties/[name]/retire/page/server-reference-manifest.json +18 -18
  411. package/web/.next/server/app/(console)/outside-parties/[name]/retire/page.js +2 -2
  412. package/web/.next/server/app/(console)/outside-parties/[name]/retire/page.js.nft.json +1 -1
  413. package/web/.next/server/app/(console)/outside-parties/[name]/retire/page_client-reference-manifest.js +1 -1
  414. package/web/.next/server/app/(console)/outside-parties/add/page/build-manifest.json +4 -4
  415. package/web/.next/server/app/(console)/outside-parties/add/page/server-reference-manifest.json +10 -10
  416. package/web/.next/server/app/(console)/outside-parties/add/page.js +2 -2
  417. package/web/.next/server/app/(console)/outside-parties/add/page.js.nft.json +1 -1
  418. package/web/.next/server/app/(console)/outside-parties/add/page_client-reference-manifest.js +1 -1
  419. package/web/.next/server/app/(console)/outside-parties/add-a2a-agent/page/build-manifest.json +4 -4
  420. package/web/.next/server/app/(console)/outside-parties/add-a2a-agent/page/server-reference-manifest.json +2 -2
  421. package/web/.next/server/app/(console)/outside-parties/add-a2a-agent/page.js +2 -2
  422. package/web/.next/server/app/(console)/outside-parties/add-a2a-agent/page.js.nft.json +1 -1
  423. package/web/.next/server/app/(console)/outside-parties/add-a2a-agent/page_client-reference-manifest.js +1 -1
  424. package/web/.next/server/app/(console)/outside-parties/add-a2a-client/page/build-manifest.json +4 -4
  425. package/web/.next/server/app/(console)/outside-parties/add-a2a-client/page/server-reference-manifest.json +2 -2
  426. package/web/.next/server/app/(console)/outside-parties/add-a2a-client/page.js +2 -2
  427. package/web/.next/server/app/(console)/outside-parties/add-a2a-client/page.js.nft.json +1 -1
  428. package/web/.next/server/app/(console)/outside-parties/add-a2a-client/page_client-reference-manifest.js +1 -1
  429. package/web/.next/server/app/(console)/outside-parties/page/build-manifest.json +4 -4
  430. package/web/.next/server/app/(console)/outside-parties/page/server-reference-manifest.json +2 -2
  431. package/web/.next/server/app/(console)/outside-parties/page.js +2 -2
  432. package/web/.next/server/app/(console)/outside-parties/page.js.nft.json +1 -1
  433. package/web/.next/server/app/(console)/outside-parties/page_client-reference-manifest.js +1 -1
  434. package/web/.next/server/app/(console)/parties/page/build-manifest.json +4 -4
  435. package/web/.next/server/app/(console)/parties/page/server-reference-manifest.json +8 -8
  436. package/web/.next/server/app/(console)/parties/page.js +2 -2
  437. package/web/.next/server/app/(console)/parties/page.js.nft.json +1 -1
  438. package/web/.next/server/app/(console)/parties/page_client-reference-manifest.js +1 -1
  439. package/web/.next/server/app/(console)/sign-in/failed/page/build-manifest.json +4 -4
  440. package/web/.next/server/app/(console)/sign-in/failed/page/server-reference-manifest.json +1 -1
  441. package/web/.next/server/app/(console)/sign-in/failed/page.js +2 -2
  442. package/web/.next/server/app/(console)/sign-in/failed/page.js.nft.json +1 -1
  443. package/web/.next/server/app/(console)/sign-in/failed/page_client-reference-manifest.js +1 -1
  444. package/web/.next/server/app/(console)/slack/disconnect/page/build-manifest.json +4 -4
  445. package/web/.next/server/app/(console)/slack/disconnect/page/server-reference-manifest.json +11 -11
  446. package/web/.next/server/app/(console)/slack/disconnect/page.js +2 -2
  447. package/web/.next/server/app/(console)/slack/disconnect/page.js.nft.json +1 -1
  448. package/web/.next/server/app/(console)/slack/disconnect/page_client-reference-manifest.js +1 -1
  449. package/web/.next/server/app/(console)/slack/expose/page/build-manifest.json +4 -4
  450. package/web/.next/server/app/(console)/slack/expose/page/server-reference-manifest.json +11 -11
  451. package/web/.next/server/app/(console)/slack/expose/page.js +2 -2
  452. package/web/.next/server/app/(console)/slack/expose/page.js.nft.json +1 -1
  453. package/web/.next/server/app/(console)/slack/expose/page_client-reference-manifest.js +1 -1
  454. package/web/.next/server/app/(console)/slack/link/route.js.nft.json +1 -1
  455. package/web/.next/server/app/(console)/slack/page/build-manifest.json +4 -4
  456. package/web/.next/server/app/(console)/slack/page/server-reference-manifest.json +11 -11
  457. package/web/.next/server/app/(console)/slack/page.js +2 -2
  458. package/web/.next/server/app/(console)/slack/page.js.nft.json +1 -1
  459. package/web/.next/server/app/(console)/slack/page_client-reference-manifest.js +1 -1
  460. package/web/.next/server/app/(console)/slack/remove/page/build-manifest.json +4 -4
  461. package/web/.next/server/app/(console)/slack/remove/page/server-reference-manifest.json +11 -11
  462. package/web/.next/server/app/(console)/slack/remove/page.js +4 -4
  463. package/web/.next/server/app/(console)/slack/remove/page.js.nft.json +1 -1
  464. package/web/.next/server/app/(console)/slack/remove/page_client-reference-manifest.js +1 -1
  465. package/web/.next/server/app/_global-error/page/build-manifest.json +4 -4
  466. package/web/.next/server/app/_global-error/page.js.nft.json +1 -1
  467. package/web/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  468. package/web/.next/server/app/_global-error.html +1 -1
  469. package/web/.next/server/app/_global-error.rsc +1 -1
  470. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  471. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  472. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  473. package/web/.next/server/app/_not-found/page/build-manifest.json +4 -4
  474. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  475. package/web/.next/server/app/_not-found/page.js +2 -2
  476. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  477. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  478. package/web/.next/server/app/apple-icon.png/route.js.nft.json +1 -1
  479. package/web/.next/server/app/authorize/failed/page/build-manifest.json +4 -4
  480. package/web/.next/server/app/authorize/failed/page/server-reference-manifest.json +1 -1
  481. package/web/.next/server/app/authorize/failed/page.js +3 -3
  482. package/web/.next/server/app/authorize/failed/page.js.nft.json +1 -1
  483. package/web/.next/server/app/authorize/failed/page_client-reference-manifest.js +1 -1
  484. package/web/.next/server/app/authorize/pick/page/build-manifest.json +4 -4
  485. package/web/.next/server/app/authorize/pick/page/server-reference-manifest.json +1 -1
  486. package/web/.next/server/app/authorize/pick/page.js +7 -6
  487. package/web/.next/server/app/authorize/pick/page.js.nft.json +1 -1
  488. package/web/.next/server/app/authorize/pick/page_client-reference-manifest.js +1 -1
  489. package/web/.next/server/app/authorize/waiting/approval/page/build-manifest.json +4 -4
  490. package/web/.next/server/app/authorize/waiting/approval/page/server-reference-manifest.json +1 -1
  491. package/web/.next/server/app/authorize/waiting/approval/page.js +3 -3
  492. package/web/.next/server/app/authorize/waiting/approval/page.js.nft.json +1 -1
  493. package/web/.next/server/app/authorize/waiting/approval/page_client-reference-manifest.js +1 -1
  494. package/web/.next/server/app/icon.svg/route.js.nft.json +1 -1
  495. package/web/.next/server/app-paths-manifest.json +10 -8
  496. package/web/.next/server/chunks/0b9d__next-internal_server_app_(bridge)_bridge_changes_route_actions_0wd1c_8tnx6-f.js +3 -0
  497. package/web/.next/server/chunks/[root-of-the-server]__1j0sdz18lzulo._.js +2 -2
  498. package/web/.next/server/chunks/[root-of-the-server]__1o2xxi_001xql._.js +2 -2
  499. package/web/.next/server/chunks/_0up_7s_05-7vm._.js +3 -0
  500. package/web/.next/server/chunks/_0up_7s_05-7vm._.js.map +1 -0
  501. package/web/.next/server/chunks/_0xw0b7avhvg75._.js +1 -1
  502. package/web/.next/server/chunks/_1w2t6c0hpdsrn._.js +1 -1
  503. package/web/.next/server/chunks/_1xaed_q500ez6._.js +3 -0
  504. package/web/.next/server/chunks/_1xaed_q500ez6._.js.map +1 -0
  505. package/web/.next/server/chunks/_20ne4s-e_jzxp._.js +1 -1
  506. package/web/.next/server/chunks/_20ne4s-e_jzxp._.js.map +1 -1
  507. package/web/.next/server/chunks/ssr/01fr_app_(bridge)_bridge_settings_requests_[requestId]_page_actions_0o8g7_xshtmem.js +3 -0
  508. package/web/.next/server/chunks/ssr/01fr_app_(bridge)_bridge_settings_requests_[requestId]_page_actions_0o8g7_xshtmem.js.map +1 -0
  509. package/web/.next/server/chunks/ssr/0b9d__next-internal_server_app_(bridge)_bridge_stay-aware_page_actions_1u0xo0v3y9c34.js +3 -0
  510. package/web/.next/server/chunks/ssr/0b9d__next-internal_server_app_(bridge)_bridge_stay-aware_page_actions_1u0xo0v3y9c34.js.map +1 -0
  511. package/web/.next/server/chunks/ssr/0vkm_server_app_(bridge)_bridge_settings_routing_page_actions_06_j7s24dy5ee.js +3 -0
  512. package/web/.next/server/chunks/ssr/0vkm_server_app_(bridge)_bridge_settings_routing_page_actions_06_j7s24dy5ee.js.map +1 -0
  513. package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_[name]_change_page_actions_04td11fxohsfm.js +1 -1
  514. package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_[name]_change_page_actions_04td11fxohsfm.js.map +1 -1
  515. package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_[name]_page_actions_0u-45itza1ls7.js +1 -1
  516. package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_[name]_page_actions_0u-45itza1ls7.js.map +1 -1
  517. package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_[name]_retire_page_actions_0s7ps6i0ts7v5.js +1 -1
  518. package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_[name]_retire_page_actions_0s7ps6i0ts7v5.js.map +1 -1
  519. package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_add-a2a-client_page_actions_0d_wgiu94c32e.js +1 -1
  520. package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_add-a2a-client_page_actions_0d_wgiu94c32e.js.map +1 -1
  521. package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_add_page_actions_0yfz_dfn-8uo7.js +1 -1
  522. package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_add_page_actions_0yfz_dfn-8uo7.js.map +1 -1
  523. package/web/.next/server/chunks/ssr/[root-of-the-server]__001xx3sm5ur-e._.js +1 -1
  524. package/web/.next/server/chunks/ssr/[root-of-the-server]__001xx3sm5ur-e._.js.map +1 -1
  525. package/web/.next/server/chunks/ssr/{[root-of-the-server]__1yyaeeylnezpi._.js → [root-of-the-server]__04_bc8g0oe4jt._.js} +1 -1
  526. package/web/.next/server/chunks/ssr/[root-of-the-server]__0a6a1yc_ac-qt._.js +1 -1
  527. package/web/.next/server/chunks/ssr/[root-of-the-server]__0a8db18tyk__5._.js +1 -1
  528. package/web/.next/server/chunks/ssr/[root-of-the-server]__0a8db18tyk__5._.js.map +1 -1
  529. package/web/.next/server/chunks/ssr/[root-of-the-server]__0e4l5gt01o04p._.js +3 -0
  530. package/web/.next/server/chunks/ssr/[root-of-the-server]__0e4l5gt01o04p._.js.map +1 -0
  531. package/web/.next/server/chunks/ssr/[root-of-the-server]__0fz0817_b9ljl._.js +1 -1
  532. package/web/.next/server/chunks/ssr/[root-of-the-server]__0gptrhg3mj4hs._.js +57 -0
  533. package/web/.next/server/chunks/ssr/[root-of-the-server]__0gptrhg3mj4hs._.js.map +1 -0
  534. package/web/.next/server/chunks/ssr/[root-of-the-server]__0k3g0p3t9t0c-._.js +1 -1
  535. package/web/.next/server/chunks/ssr/[root-of-the-server]__0k3g0p3t9t0c-._.js.map +1 -1
  536. package/web/.next/server/chunks/ssr/[root-of-the-server]__0kjcooo3pi4_k._.js +57 -0
  537. package/web/.next/server/chunks/ssr/[root-of-the-server]__0kjcooo3pi4_k._.js.map +1 -0
  538. package/web/.next/server/chunks/ssr/[root-of-the-server]__0rmg7huc074bf._.js +3 -0
  539. package/web/.next/server/chunks/ssr/[root-of-the-server]__0rmg7huc074bf._.js.map +1 -0
  540. package/web/.next/server/chunks/ssr/[root-of-the-server]__10s9e8g5x-ws8._.js +1 -1
  541. package/web/.next/server/chunks/ssr/[root-of-the-server]__10s9e8g5x-ws8._.js.map +1 -1
  542. package/web/.next/server/chunks/ssr/[root-of-the-server]__13v3maun347sn._.js +3 -0
  543. package/web/.next/server/chunks/ssr/[root-of-the-server]__13v3maun347sn._.js.map +1 -0
  544. package/web/.next/server/chunks/ssr/[root-of-the-server]__13yoncr_nx3jc._.js +1 -1
  545. package/web/.next/server/chunks/ssr/[root-of-the-server]__13yoncr_nx3jc._.js.map +1 -1
  546. package/web/.next/server/chunks/ssr/{[root-of-the-server]__0gnfxe62edx95._.js → [root-of-the-server]__179upda-y7uap._.js} +1 -1
  547. package/web/.next/server/chunks/ssr/[root-of-the-server]__18-8taiduk1jn._.js +1 -1
  548. package/web/.next/server/chunks/ssr/[root-of-the-server]__18-8taiduk1jn._.js.map +1 -1
  549. package/web/.next/server/chunks/ssr/[root-of-the-server]__1ektgsnjg4btl._.js +3 -0
  550. package/web/.next/server/chunks/ssr/[root-of-the-server]__1ektgsnjg4btl._.js.map +1 -0
  551. package/web/.next/server/chunks/ssr/[root-of-the-server]__1hgu6f5hpnykv._.js +57 -0
  552. package/web/.next/server/chunks/ssr/[root-of-the-server]__1hgu6f5hpnykv._.js.map +1 -0
  553. package/web/.next/server/chunks/ssr/[root-of-the-server]__1nfpyr3ynmwks._.js +3 -0
  554. package/web/.next/server/chunks/ssr/[root-of-the-server]__1nfpyr3ynmwks._.js.map +1 -0
  555. package/web/.next/server/chunks/ssr/[root-of-the-server]__1qpow96uit9t8._.js +1 -1
  556. package/web/.next/server/chunks/ssr/[root-of-the-server]__1qpow96uit9t8._.js.map +1 -1
  557. package/web/.next/server/chunks/ssr/[root-of-the-server]__1ul9rrs2g66lm._.js +4 -0
  558. package/web/.next/server/chunks/ssr/[root-of-the-server]__1ul9rrs2g66lm._.js.map +1 -0
  559. package/web/.next/server/chunks/ssr/[root-of-the-server]__20gvfqy33wcds._.js +57 -0
  560. package/web/.next/server/chunks/ssr/[root-of-the-server]__20gvfqy33wcds._.js.map +1 -0
  561. package/web/.next/server/chunks/ssr/_00fvst5icgei4._.js +3 -0
  562. package/web/.next/server/chunks/ssr/_00fvst5icgei4._.js.map +1 -0
  563. package/web/.next/server/chunks/ssr/_00hfzlqn1og18._.js +1 -1
  564. package/web/.next/server/chunks/ssr/_00hfzlqn1og18._.js.map +1 -1
  565. package/web/.next/server/chunks/ssr/_02mwdj1oj1zgm._.js +3 -0
  566. package/web/.next/server/chunks/ssr/_02mwdj1oj1zgm._.js.map +1 -0
  567. package/web/.next/server/chunks/ssr/_03lk54yp-yhw3._.js +2 -2
  568. package/web/.next/server/chunks/ssr/_03lk54yp-yhw3._.js.map +1 -1
  569. package/web/.next/server/chunks/ssr/_0f7ucdt7bfmun._.js +3 -0
  570. package/web/.next/server/chunks/ssr/_0f7ucdt7bfmun._.js.map +1 -0
  571. package/web/.next/server/chunks/ssr/_0fqd23gyia_8g._.js +3 -0
  572. package/web/.next/server/chunks/ssr/_0fqd23gyia_8g._.js.map +1 -0
  573. package/web/.next/server/chunks/ssr/_0ka_9elusb800._.js +1 -1
  574. package/web/.next/server/chunks/ssr/_0ka_9elusb800._.js.map +1 -1
  575. package/web/.next/server/chunks/ssr/_0kk7op86em7z2._.js +3 -0
  576. package/web/.next/server/chunks/ssr/_0kk7op86em7z2._.js.map +1 -0
  577. package/web/.next/server/chunks/ssr/_0pirspvjp3ggl._.js +3 -0
  578. package/web/.next/server/chunks/ssr/_0pirspvjp3ggl._.js.map +1 -0
  579. package/web/.next/server/chunks/ssr/_0pyd1_y7w8ngp._.js +1 -1
  580. package/web/.next/server/chunks/ssr/_0pyd1_y7w8ngp._.js.map +1 -1
  581. package/web/.next/server/chunks/ssr/_0u0u0owpxx_37._.js +3 -0
  582. package/web/.next/server/chunks/ssr/_0u0u0owpxx_37._.js.map +1 -0
  583. package/web/.next/server/chunks/ssr/_0v_x6k3ztfvx0._.js +3 -0
  584. package/web/.next/server/chunks/ssr/_0v_x6k3ztfvx0._.js.map +1 -0
  585. package/web/.next/server/chunks/ssr/_0x5-_917zcaj9._.js +3 -0
  586. package/web/.next/server/chunks/ssr/_0x5-_917zcaj9._.js.map +1 -0
  587. package/web/.next/server/chunks/ssr/_0xajzaside0sw._.js +3 -0
  588. package/web/.next/server/chunks/ssr/_0xajzaside0sw._.js.map +1 -0
  589. package/web/.next/server/chunks/ssr/_0xickgbbju_9-._.js +1 -1
  590. package/web/.next/server/chunks/ssr/_0xickgbbju_9-._.js.map +1 -1
  591. package/web/.next/server/chunks/ssr/_0yhvyj-yts7qi._.js +3 -0
  592. package/web/.next/server/chunks/ssr/_0yhvyj-yts7qi._.js.map +1 -0
  593. package/web/.next/server/chunks/ssr/_104ilzyn58zw_._.js +3 -0
  594. package/web/.next/server/chunks/ssr/_104ilzyn58zw_._.js.map +1 -0
  595. package/web/.next/server/chunks/ssr/_13_ady-a4058y._.js +3 -0
  596. package/web/.next/server/chunks/ssr/_13_ady-a4058y._.js.map +1 -0
  597. package/web/.next/server/chunks/ssr/_14k1oldo5chf8._.js +3 -0
  598. package/web/.next/server/chunks/ssr/_14k1oldo5chf8._.js.map +1 -0
  599. package/web/.next/server/chunks/ssr/_15whg3fd67b9x._.js +3 -0
  600. package/web/.next/server/chunks/ssr/_15whg3fd67b9x._.js.map +1 -0
  601. package/web/.next/server/chunks/ssr/_17zzluh48wsdb._.js +3 -0
  602. package/web/.next/server/chunks/ssr/_17zzluh48wsdb._.js.map +1 -0
  603. package/web/.next/server/chunks/ssr/_18xv7kh7i655_._.js +3 -0
  604. package/web/.next/server/chunks/ssr/_18xv7kh7i655_._.js.map +1 -0
  605. package/web/.next/server/chunks/ssr/_1_wav28san6dm._.js +1 -1
  606. package/web/.next/server/chunks/ssr/_1_ym4hwge_4r0._.js +3 -0
  607. package/web/.next/server/chunks/ssr/_1_ym4hwge_4r0._.js.map +1 -0
  608. package/web/.next/server/chunks/ssr/_1cc4ie_s4tycq._.js +3 -0
  609. package/web/.next/server/chunks/ssr/_1cc4ie_s4tycq._.js.map +1 -0
  610. package/web/.next/server/chunks/ssr/_1e2o809f0ekry._.js +1 -1
  611. package/web/.next/server/chunks/ssr/{_0a_nsm-ye2r6v._.js → _1gbkqq8ra1nei._.js} +2 -2
  612. package/web/.next/server/chunks/ssr/_1gbkqq8ra1nei._.js.map +1 -0
  613. package/web/.next/server/chunks/ssr/_1gnk2vqna6c6u._.js +3 -0
  614. package/web/.next/server/chunks/ssr/_1gnk2vqna6c6u._.js.map +1 -0
  615. package/web/.next/server/chunks/ssr/_1i8ofnr1a5yle._.js +3 -0
  616. package/web/.next/server/chunks/ssr/_1i8ofnr1a5yle._.js.map +1 -0
  617. package/web/.next/server/chunks/ssr/_1k2b80m058vgx._.js +3 -0
  618. package/web/.next/server/chunks/ssr/_1k2b80m058vgx._.js.map +1 -0
  619. package/web/.next/server/chunks/ssr/_1mg5oon0wpocg._.js +3 -0
  620. package/web/.next/server/chunks/ssr/_1mg5oon0wpocg._.js.map +1 -0
  621. package/web/.next/server/chunks/ssr/_1pjtire7rqla0._.js +1 -1
  622. package/web/.next/server/chunks/ssr/_1pjtire7rqla0._.js.map +1 -1
  623. package/web/.next/server/chunks/ssr/_1qbsmlji34yph._.js +1 -1
  624. package/web/.next/server/chunks/ssr/_1qbsmlji34yph._.js.map +1 -1
  625. package/web/.next/server/chunks/ssr/_1rfpx4ze-3l8z._.js +3 -0
  626. package/web/.next/server/chunks/ssr/{web_features_0mi9a9pdzkdji._.js.map → _1rfpx4ze-3l8z._.js.map} +1 -1
  627. package/web/.next/server/chunks/ssr/_1t74yvog5g6g2._.js +3 -0
  628. package/web/.next/server/chunks/ssr/_1t74yvog5g6g2._.js.map +1 -0
  629. package/web/.next/server/chunks/ssr/_1ve-ao6odintc._.js +3 -0
  630. package/web/.next/server/chunks/ssr/_1ve-ao6odintc._.js.map +1 -0
  631. package/web/.next/server/chunks/ssr/_1xgivp19ts9hn._.js +3 -0
  632. package/web/.next/server/chunks/ssr/_1xgivp19ts9hn._.js.map +1 -0
  633. package/web/.next/server/chunks/ssr/_1zmd3armaxhyu._.js +4 -0
  634. package/web/.next/server/chunks/ssr/_1zmd3armaxhyu._.js.map +1 -0
  635. package/web/.next/server/chunks/ssr/node_modules_0489ke-80obwd._.js +3 -0
  636. package/web/.next/server/chunks/ssr/node_modules_0489ke-80obwd._.js.map +1 -0
  637. package/web/.next/server/chunks/ssr/node_modules_05ni_zu0e0w44._.js +3 -0
  638. package/web/.next/server/chunks/ssr/node_modules_05ni_zu0e0w44._.js.map +1 -0
  639. package/web/.next/server/chunks/ssr/node_modules_07vtvfyfo0a6i._.js +3 -0
  640. package/web/.next/server/chunks/ssr/node_modules_07vtvfyfo0a6i._.js.map +1 -0
  641. package/web/.next/server/chunks/ssr/node_modules_0ettht2so2tkh._.js +1 -1
  642. package/web/.next/server/chunks/ssr/node_modules_0keape0zsobyj._.js +1 -1
  643. package/web/.next/server/chunks/ssr/node_modules_0ue_35q2cegwf._.js +3 -0
  644. package/web/.next/server/chunks/ssr/node_modules_0ue_35q2cegwf._.js.map +1 -0
  645. package/web/.next/server/chunks/ssr/node_modules_12euo0ncdx1pn._.js +3 -0
  646. package/web/.next/server/chunks/ssr/node_modules_12euo0ncdx1pn._.js.map +1 -0
  647. package/web/.next/server/chunks/ssr/node_modules_1722-epjft-rn._.js +3 -0
  648. package/web/.next/server/chunks/ssr/node_modules_1722-epjft-rn._.js.map +1 -0
  649. package/web/.next/server/chunks/ssr/{node_modules_@aeolus-fleet_common_dist_header_1x3s5abk_uj9j._.js → node_modules_@aeolus-fleet_ui_dist_11tn8gozt2_c3._.js} +2 -2
  650. package/web/.next/server/chunks/ssr/node_modules_@aeolus-fleet_ui_dist_11tn8gozt2_c3._.js.map +1 -0
  651. package/web/.next/server/chunks/ssr/node_modules_@aeolus-fleet_ui_dist_16j49enf275ln._.js +3 -0
  652. package/web/.next/server/chunks/ssr/node_modules_@aeolus-fleet_ui_dist_16j49enf275ln._.js.map +1 -0
  653. package/web/.next/server/chunks/ssr/node_modules_@base-ui_0jlwmxa9rk8p_._.js +1 -1
  654. package/web/.next/server/chunks/ssr/node_modules_@base-ui_0jlwmxa9rk8p_._.js.map +1 -1
  655. package/web/.next/server/chunks/ssr/node_modules_@base-ui_19e_nxxf4a88q._.js +1 -1
  656. package/web/.next/server/chunks/ssr/node_modules_@base-ui_19e_nxxf4a88q._.js.map +1 -1
  657. package/web/.next/server/chunks/ssr/node_modules_@base-ui_react_1cvjxnw-b3pnv._.js +3 -0
  658. package/web/.next/server/chunks/ssr/{node_modules_@base-ui_react_1lbvjrzg8s2ox._.js.map → node_modules_@base-ui_react_1cvjxnw-b3pnv._.js.map} +1 -1
  659. package/web/.next/server/chunks/ssr/node_modules_@base-ui_react_toast_index_parts_mjs_20gwon7142aop._.js +3 -0
  660. package/web/.next/server/chunks/ssr/node_modules_@base-ui_react_toast_index_parts_mjs_20gwon7142aop._.js.map +1 -0
  661. package/web/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_bell_mjs_1sxms6d0wfxa2._.js +3 -0
  662. package/web/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_bell_mjs_1sxms6d0wfxa2._.js.map +1 -0
  663. package/web/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_search_mjs_047mxu6_po4kl._.js +3 -0
  664. package/web/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_search_mjs_047mxu6_po4kl._.js.map +1 -0
  665. package/web/.next/server/chunks/ssr/node_modules_next_08hq6z46rczo0._.js +2 -2
  666. package/web/.next/server/chunks/ssr/node_modules_next_dist_0janj0i6dqko7._.js +2 -2
  667. package/web/.next/server/chunks/ssr/node_modules_next_dist_0janj0i6dqko7._.js.map +1 -1
  668. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0g15rgn4n-oiz.js +3 -0
  669. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0g15rgn4n-oiz.js.map +1 -0
  670. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0hzwtyh-646p2.js +3 -0
  671. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0hzwtyh-646p2.js.map +1 -0
  672. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0mm8dt8tws1fz.js +3 -0
  673. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0mm8dt8tws1fz.js.map +1 -0
  674. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0tcy7phl8a4gj.js +3 -0
  675. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0tcy7phl8a4gj.js.map +1 -0
  676. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0ynno0usi0bwx.js +1 -1
  677. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_11x159_oszki3.js +3 -0
  678. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_11x159_oszki3.js.map +1 -0
  679. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_128zox167vtjm.js +1 -1
  680. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_128zox167vtjm.js.map +1 -1
  681. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1dltrn6ii5dd6.js +3 -0
  682. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1dltrn6ii5dd6.js.map +1 -0
  683. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1hm1iu016c1fy.js +3 -0
  684. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1hm1iu016c1fy.js.map +1 -0
  685. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1zaoeyy4_vir_.js +3 -0
  686. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1zaoeyy4_vir_.js.map +1 -0
  687. package/web/.next/server/chunks/ssr/web_0_peudz6-o69m._.js +3 -0
  688. package/web/.next/server/chunks/ssr/web_0_peudz6-o69m._.js.map +1 -0
  689. package/web/.next/server/chunks/ssr/web_0cxcy088wnfmw._.js +3 -0
  690. package/web/.next/server/chunks/ssr/web_0cxcy088wnfmw._.js.map +1 -0
  691. package/web/.next/server/chunks/ssr/web_0oz8bypfxh82g._.js +3 -0
  692. package/web/.next/server/chunks/ssr/web_0oz8bypfxh82g._.js.map +1 -0
  693. package/web/.next/server/chunks/ssr/web_0pk41f5m34jvi._.js +3 -0
  694. package/web/.next/server/chunks/ssr/web_0pk41f5m34jvi._.js.map +1 -0
  695. package/web/.next/server/chunks/ssr/web_0qgev3ti257yj._.js +1 -1
  696. package/web/.next/server/chunks/ssr/web_0wys4l6za8umr._.js +1 -1
  697. package/web/.next/server/chunks/ssr/web_0wys4l6za8umr._.js.map +1 -1
  698. package/web/.next/server/chunks/ssr/web_1fi1x3y7rg7mf._.js +3 -0
  699. package/web/.next/server/chunks/ssr/web_1fi1x3y7rg7mf._.js.map +1 -0
  700. package/web/.next/server/chunks/ssr/web_1ga4pbv72m0ad._.js +1 -1
  701. package/web/.next/server/chunks/ssr/web_1irsulms62lzf._.js +3 -0
  702. package/web/.next/server/chunks/ssr/web_1irsulms62lzf._.js.map +1 -0
  703. package/web/.next/server/chunks/ssr/web_1k2rrq-kr6f9k._.js +3 -0
  704. package/web/.next/server/chunks/ssr/web_1k2rrq-kr6f9k._.js.map +1 -0
  705. package/web/.next/server/chunks/ssr/web_1qvxzqmq4aw94._.js +3 -0
  706. package/web/.next/server/chunks/ssr/web_1qvxzqmq4aw94._.js.map +1 -0
  707. package/web/.next/server/chunks/ssr/web__next-internal_server_app_(bridge)_bridge_basket_page_actions_0g7q_rc5nma1e.js +3 -0
  708. package/web/.next/server/chunks/ssr/web__next-internal_server_app_(bridge)_bridge_basket_page_actions_0g7q_rc5nma1e.js.map +1 -0
  709. package/web/.next/server/chunks/ssr/web__next-internal_server_app_(bridge)_bridge_done_page_actions_0kjm34arntdzv.js +3 -0
  710. package/web/.next/server/chunks/ssr/web__next-internal_server_app_(bridge)_bridge_done_page_actions_0kjm34arntdzv.js.map +1 -0
  711. package/web/.next/server/chunks/ssr/web__next-internal_server_app_(bridge)_bridge_page_actions_1ok64rg3edm_u.js +3 -0
  712. package/web/.next/server/chunks/ssr/web__next-internal_server_app_(bridge)_bridge_page_actions_1ok64rg3edm_u.js.map +1 -0
  713. package/web/.next/server/chunks/ssr/{web_app_(console)_bridge_error_tsx_10gkrn3ey8162._.js → web_app_(bridge)_bridge_error_tsx_0-142o0iqsh3j._.js} +2 -2
  714. package/web/.next/server/chunks/ssr/web_app_(bridge)_bridge_error_tsx_0-142o0iqsh3j._.js.map +1 -0
  715. package/web/.next/server/chunks/ssr/web_app_(bridge)_bridge_error_tsx_1m86qyp1bl9pi._.js +3 -0
  716. package/web/.next/server/chunks/ssr/web_app_(bridge)_bridge_error_tsx_1m86qyp1bl9pi._.js.map +1 -0
  717. package/web/.next/server/chunks/ssr/web_app_(bridge)_bridge_fleet_page_tsx_0uvtx8hiy8g0n._.js +3 -0
  718. package/web/.next/server/chunks/ssr/web_app_(bridge)_bridge_fleet_page_tsx_0uvtx8hiy8g0n._.js.map +1 -0
  719. package/web/.next/server/chunks/ssr/web_app_(bridge)_bridge_settings_page_tsx_1z5yr8ss25q7n._.js +3 -0
  720. package/web/.next/server/chunks/ssr/web_app_(bridge)_bridge_settings_page_tsx_1z5yr8ss25q7n._.js.map +1 -0
  721. package/web/.next/server/chunks/ssr/web_app_(console)_parties_page_tsx_0pp63ghly3eyp._.js +1 -1
  722. package/web/.next/server/chunks/ssr/web_app_authorize_layout_tsx_0gs61_7wzx68y._.js +1 -1
  723. package/web/.next/server/chunks/ssr/web_app_authorize_layout_tsx_0gs61_7wzx68y._.js.map +1 -1
  724. package/web/.next/server/chunks/ssr/web_features_06f9kfi0c4nf8._.js +3 -0
  725. package/web/.next/server/chunks/ssr/web_features_06f9kfi0c4nf8._.js.map +1 -0
  726. package/web/.next/server/chunks/ssr/{web_features_0d48z2epb6oie._.js → web_features_0f2pobf_t4wjt._.js} +2 -2
  727. package/web/.next/server/chunks/ssr/{web_features_0d48z2epb6oie._.js.map → web_features_0f2pobf_t4wjt._.js.map} +1 -1
  728. package/web/.next/server/chunks/ssr/web_features_0rd6357w-eo50._.js +1 -1
  729. package/web/.next/server/chunks/ssr/web_features_12b-75qfhurxi._.js +3 -0
  730. package/web/.next/server/chunks/ssr/web_features_12b-75qfhurxi._.js.map +1 -0
  731. package/web/.next/server/chunks/ssr/web_features_19r68thirqv1n._.js +1 -1
  732. package/web/.next/server/chunks/ssr/web_features_1m5g9a6mwrsd-._.js +1 -1
  733. package/web/.next/server/chunks/ssr/web_features_add-a2a-agent_ui_a2a-agent-form_tsx_0z8t1aalwzyl7._.js +1 -1
  734. package/web/.next/server/chunks/ssr/web_features_add-a2a-agent_ui_a2a-agent-form_tsx_0z8t1aalwzyl7._.js.map +1 -1
  735. package/web/.next/server/chunks/ssr/web_features_add-a2a-client_ui_a2a-client-form_tsx_1anv88g385nwe._.js +1 -1
  736. package/web/.next/server/chunks/ssr/web_features_add-a2a-client_ui_a2a-client-form_tsx_1anv88g385nwe._.js.map +1 -1
  737. package/web/.next/server/chunks/ssr/web_features_add-server_ui_add-server_tsx_1jnmar5xju49k._.js +1 -1
  738. package/web/.next/server/chunks/ssr/web_features_add-server_ui_add-server_tsx_1jnmar5xju49k._.js.map +1 -1
  739. package/web/.next/server/chunks/ssr/web_features_authorize_137wk0n1nu3cn._.js +1 -1
  740. package/web/.next/server/chunks/ssr/web_features_authorize_137wk0n1nu3cn._.js.map +1 -1
  741. package/web/.next/server/chunks/ssr/web_features_bridge_0msm42qwm0-jq._.js +3 -0
  742. package/web/.next/server/chunks/ssr/web_features_bridge_0msm42qwm0-jq._.js.map +1 -0
  743. package/web/.next/server/chunks/ssr/web_features_bridge_1mi9qlb-z5iwt._.js +1 -1
  744. package/web/.next/server/chunks/ssr/web_features_bridge_1mi9qlb-z5iwt._.js.map +1 -1
  745. package/web/.next/server/chunks/ssr/web_features_bridge_fleet_ui_fleet-numbers_tsx_0_afv4j248_w-._.js +3 -0
  746. package/web/.next/server/chunks/ssr/web_features_bridge_fleet_ui_fleet-numbers_tsx_0_afv4j248_w-._.js.map +1 -0
  747. package/web/.next/server/chunks/ssr/web_features_bridge_hooks_bridge-actions_ts_0h-_xm2rcb-ij._.js +1 -1
  748. package/web/.next/server/chunks/ssr/web_features_bridge_hooks_bridge-actions_ts_0h-_xm2rcb-ij._.js.map +1 -1
  749. package/web/.next/server/chunks/ssr/web_features_bridge_state_basket-panel_tsx_1qi_kzld0rfgs._.js +1 -1
  750. package/web/.next/server/chunks/ssr/web_features_bridge_state_basket-panel_tsx_1qi_kzld0rfgs._.js.map +1 -1
  751. package/web/.next/server/chunks/ssr/web_features_bridge_state_decision-panel_tsx_1mzsixgc8zuxc._.js +1 -1
  752. package/web/.next/server/chunks/ssr/web_features_bridge_state_decision-panel_tsx_1mzsixgc8zuxc._.js.map +1 -1
  753. package/web/.next/server/chunks/ssr/web_features_bridge_state_done-panel_tsx_1m844-qb1z9p_._.js +1 -1
  754. package/web/.next/server/chunks/ssr/web_features_bridge_state_done-panel_tsx_1m844-qb1z9p_._.js.map +1 -1
  755. package/web/.next/server/chunks/ssr/web_features_bridge_state_home-panel_tsx_1cc5zdhxogl_2._.js +1 -1
  756. package/web/.next/server/chunks/ssr/web_features_bridge_state_home-panel_tsx_1cc5zdhxogl_2._.js.map +1 -1
  757. package/web/.next/server/chunks/ssr/web_features_bridge_ui_1y4g3fe75nqn5._.js +1 -1
  758. package/web/.next/server/chunks/ssr/web_features_bridge_ui_1y4g3fe75nqn5._.js.map +1 -1
  759. package/web/.next/server/chunks/ssr/web_features_bridge_ui_item-row_tsx_0c_a8wjzwsr7j._.js +3 -0
  760. package/web/.next/server/chunks/ssr/web_features_bridge_ui_item-row_tsx_0c_a8wjzwsr7j._.js.map +1 -0
  761. package/web/.next/server/chunks/ssr/{web_features_0f6r-m-dq36vf._.js → web_features_forms_1u0akr22eh_x_._.js} +2 -2
  762. package/web/.next/server/chunks/ssr/web_features_forms_1u0akr22eh_x_._.js.map +1 -0
  763. package/web/.next/server/chunks/ssr/web_features_frame_01uyck6q56an2._.js +3 -0
  764. package/web/.next/server/chunks/ssr/web_features_frame_01uyck6q56an2._.js.map +1 -0
  765. package/web/.next/server/chunks/ssr/web_features_frame_ui_gateway-header_tsx_0e9tekx4jf7ng._.js +1 -1
  766. package/web/.next/server/chunks/ssr/web_features_frame_ui_gateway-header_tsx_0e9tekx4jf7ng._.js.map +1 -1
  767. package/web/.next/server/chunks/ssr/web_features_meeting_state_meeting-controls_tsx_12g4kzk2mbvvz._.js +1 -1
  768. package/web/.next/server/chunks/ssr/web_features_meeting_state_meeting-controls_tsx_12g4kzk2mbvvz._.js.map +1 -1
  769. package/web/.next/server/chunks/ssr/web_features_outside-parties_ui_switch-card_tsx_1_xnu9bm4tc-_._.js +1 -1
  770. package/web/.next/server/chunks/ssr/web_features_outside-parties_ui_switch-card_tsx_1_xnu9bm4tc-_._.js.map +1 -1
  771. package/web/.next/server/chunks/ssr/web_features_outside-party_1-lre9nfakki7._.js +1 -1
  772. package/web/.next/server/chunks/ssr/web_features_outside-party_actions_ts_102ar5pdowf8s._.js +1 -1
  773. package/web/.next/server/chunks/ssr/web_features_parties_actions_ts_0r-tbfsig2ty-._.js +1 -1
  774. package/web/.next/server/chunks/ssr/web_features_slack_actions_ts_1l3yg9vl20_vu._.js +1 -1
  775. package/web/.next/server/chunks/web__next-internal_server_app_(bridge)_bridge_focus_route_actions_0fx2vmqfq23mq.js +3 -0
  776. package/web/.next/server/middleware-build-manifest.js +114 -90
  777. package/web/.next/server/next-font-manifest.js +1 -1
  778. package/web/.next/server/next-font-manifest.json +14 -6
  779. package/web/.next/server/pages/500.html +1 -1
  780. package/web/.next/server/preview-props.json +3 -3
  781. package/web/.next/server/server-reference-manifest.js +1 -1
  782. package/web/.next/server/server-reference-manifest.json +167 -105
  783. package/web/.next/static/chunks/030kay14jcn_y.js +1 -0
  784. package/web/.next/static/chunks/0ben53l12lrh1.js +1 -0
  785. package/web/.next/static/chunks/0d1u4n5okodee.css +3 -0
  786. package/web/.next/static/chunks/0dg4cy4rae-3o.js +1 -0
  787. package/web/.next/static/chunks/0jwils_670syn.js +1 -0
  788. package/web/.next/static/chunks/0lnew3mjkd54b.js +1 -0
  789. package/web/.next/static/chunks/0m95j-t2qmnd_.js +1 -0
  790. package/web/.next/static/chunks/0r5ujkp-5utsu.js +1 -0
  791. package/web/.next/static/chunks/{1166rxt6h6ilq.js → 1c8q9h-van9r6.js} +1 -1
  792. package/web/.next/static/chunks/{3db90zxmny2y-.js → 1jyiwl5szsvgn.js} +1 -1
  793. package/web/.next/static/chunks/{2z2auwx1s2mgl.js → 1lkcm-iwggfae.js} +1 -1
  794. package/web/.next/static/chunks/1ml6wx1ya9wwo.js +1 -0
  795. package/web/.next/static/chunks/1nzfw6ajt5nf9.js +55 -0
  796. package/web/.next/static/chunks/22wtc73dzqm8f.js +1 -0
  797. package/web/.next/static/chunks/2drwxc7-hry0u.js +1 -0
  798. package/web/.next/static/chunks/2ewacyhp73due.js +1 -0
  799. package/web/.next/static/chunks/2fimf0wcjnmpj.js +1 -0
  800. package/web/.next/static/chunks/2fk9ydkphmyna.js +1 -0
  801. package/web/.next/static/chunks/{07j7jnfe13wx6.js → 2ich96rzec753.js} +1 -1
  802. package/web/.next/static/chunks/2khjzepn4_2a-.js +1 -0
  803. package/web/.next/static/chunks/2mpwg-t6pat39.js +1 -0
  804. package/web/.next/static/chunks/2ui6n5-n032a3.js +1 -0
  805. package/web/.next/static/chunks/2wvdu6-tx1h0l.js +1 -0
  806. package/web/.next/static/chunks/33qpc2y76i927.js +1 -0
  807. package/web/.next/static/chunks/39tst46ewpx_k.js +1 -0
  808. package/web/.next/static/chunks/3h8spyc73a438.js +1 -0
  809. package/web/.next/static/chunks/3kenmp9pjwgf2.js +1 -0
  810. package/web/.next/static/chunks/3knqujtrdi225.js +1 -0
  811. package/web/.next/static/chunks/3v8s571padqcz.js +1 -0
  812. package/web/.next/static/chunks/3wg9zn3lyhf-b.js +1 -0
  813. package/web/.next/static/chunks/{0lzisjsmhlhjf.js → 3zhaqdsq15d1e.js} +1 -1
  814. package/web/.next/trace +1 -1
  815. package/web/.next/trace-build +1 -1
  816. package/web/.next/types/routes.d.ts +3 -1
  817. package/web/.next/types/validator.ts +50 -16
  818. package/web/public/argo-wake-icon.svg +1 -0
  819. package/web/public/wake-worker.js +8 -2
  820. package/web/public/wake-worker.test.ts +52 -0
  821. package/dist/core/people/stale-question.d.ts +0 -28
  822. package/dist/core/people/stale-question.js +0 -26
  823. package/dist/core/people/stale-question.js.map +0 -1
  824. package/web/.next/server/app/(console)/bridge/basket/page/app-paths-manifest.json +0 -3
  825. package/web/.next/server/app/(console)/bridge/basket/page/server-reference-manifest.json +0 -75
  826. package/web/.next/server/app/(console)/bridge/basket/page_client-reference-manifest.js +0 -3
  827. package/web/.next/server/app/(console)/bridge/changes/route/app-paths-manifest.json +0 -3
  828. package/web/.next/server/app/(console)/bridge/changes/route.js +0 -8
  829. package/web/.next/server/app/(console)/bridge/changes/route_client-reference-manifest.js +0 -3
  830. package/web/.next/server/app/(console)/bridge/done/page/app-paths-manifest.json +0 -3
  831. package/web/.next/server/app/(console)/bridge/done/page/server-reference-manifest.json +0 -75
  832. package/web/.next/server/app/(console)/bridge/done/page_client-reference-manifest.js +0 -3
  833. package/web/.next/server/app/(console)/bridge/focus/route/app-paths-manifest.json +0 -3
  834. package/web/.next/server/app/(console)/bridge/focus/route.js +0 -8
  835. package/web/.next/server/app/(console)/bridge/focus/route_client-reference-manifest.js +0 -3
  836. package/web/.next/server/app/(console)/bridge/page/app-paths-manifest.json +0 -3
  837. package/web/.next/server/app/(console)/bridge/page/server-reference-manifest.json +0 -65
  838. package/web/.next/server/app/(console)/bridge/page_client-reference-manifest.js +0 -3
  839. package/web/.next/server/app/(console)/bridge/settings/page/app-paths-manifest.json +0 -3
  840. package/web/.next/server/app/(console)/bridge/settings/page_client-reference-manifest.js +0 -3
  841. package/web/.next/server/app/(console)/bridge/settings/requests/[requestId]/page/app-paths-manifest.json +0 -3
  842. package/web/.next/server/app/(console)/bridge/settings/requests/[requestId]/page/build-manifest.json +0 -23
  843. package/web/.next/server/app/(console)/bridge/settings/requests/[requestId]/page/next-font-manifest.json +0 -11
  844. package/web/.next/server/app/(console)/bridge/settings/requests/[requestId]/page_client-reference-manifest.js +0 -3
  845. package/web/.next/server/app/(console)/bridge/settings/routing/page/app-paths-manifest.json +0 -3
  846. package/web/.next/server/app/(console)/bridge/settings/routing/page/build-manifest.json +0 -23
  847. package/web/.next/server/app/(console)/bridge/settings/routing/page/next-font-manifest.json +0 -11
  848. package/web/.next/server/app/(console)/bridge/settings/routing/page_client-reference-manifest.js +0 -3
  849. package/web/.next/server/chunks/0b9d__next-internal_server_app_(console)_bridge_changes_route_actions_0hj8aqohz6bu6.js +0 -3
  850. package/web/.next/server/chunks/_05qgg3__4kdbm._.js +0 -3
  851. package/web/.next/server/chunks/_05qgg3__4kdbm._.js.map +0 -1
  852. package/web/.next/server/chunks/_1uap5tql2vvsb._.js +0 -3
  853. package/web/.next/server/chunks/_1uap5tql2vvsb._.js.map +0 -1
  854. package/web/.next/server/chunks/ssr/01fr_app_(console)_bridge_settings_requests_[requestId]_page_actions_1au-p5lgnv5e-.js +0 -3
  855. package/web/.next/server/chunks/ssr/01fr_app_(console)_bridge_settings_requests_[requestId]_page_actions_1au-p5lgnv5e-.js.map +0 -1
  856. package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_bridge_settings_routing_page_actions_136lm_jip4d_x.js +0 -3
  857. package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_bridge_settings_routing_page_actions_136lm_jip4d_x.js.map +0 -1
  858. package/web/.next/server/chunks/ssr/[root-of-the-server]__00jy4lqrcvxvc._.js +0 -3
  859. package/web/.next/server/chunks/ssr/[root-of-the-server]__00jy4lqrcvxvc._.js.map +0 -1
  860. package/web/.next/server/chunks/ssr/[root-of-the-server]__0k-5_al3xk509._.js +0 -3
  861. package/web/.next/server/chunks/ssr/[root-of-the-server]__0k-5_al3xk509._.js.map +0 -1
  862. package/web/.next/server/chunks/ssr/[root-of-the-server]__18v7b5ga58a9n._.js +0 -4
  863. package/web/.next/server/chunks/ssr/[root-of-the-server]__18v7b5ga58a9n._.js.map +0 -1
  864. package/web/.next/server/chunks/ssr/[root-of-the-server]__1nxy_j9eswr3i._.js +0 -3
  865. package/web/.next/server/chunks/ssr/[root-of-the-server]__1nxy_j9eswr3i._.js.map +0 -1
  866. package/web/.next/server/chunks/ssr/[root-of-the-server]__1rf344o33bmi4._.js +0 -3
  867. package/web/.next/server/chunks/ssr/[root-of-the-server]__1rf344o33bmi4._.js.map +0 -1
  868. package/web/.next/server/chunks/ssr/_0a_nsm-ye2r6v._.js.map +0 -1
  869. package/web/.next/server/chunks/ssr/_0h-ua-y4p4u1p._.js +0 -3
  870. package/web/.next/server/chunks/ssr/_0h-ua-y4p4u1p._.js.map +0 -1
  871. package/web/.next/server/chunks/ssr/_10-gn6g9yc63s._.js +0 -3
  872. package/web/.next/server/chunks/ssr/_10-gn6g9yc63s._.js.map +0 -1
  873. package/web/.next/server/chunks/ssr/_12fsn_33ga-n0._.js +0 -3
  874. package/web/.next/server/chunks/ssr/_12fsn_33ga-n0._.js.map +0 -1
  875. package/web/.next/server/chunks/ssr/_177fdczus39s7._.js +0 -3
  876. package/web/.next/server/chunks/ssr/_177fdczus39s7._.js.map +0 -1
  877. package/web/.next/server/chunks/ssr/_1hmjvjuxx92vo._.js +0 -3
  878. package/web/.next/server/chunks/ssr/_1hmjvjuxx92vo._.js.map +0 -1
  879. package/web/.next/server/chunks/ssr/_1jx41z6kmxtt0._.js +0 -3
  880. package/web/.next/server/chunks/ssr/_1jx41z6kmxtt0._.js.map +0 -1
  881. package/web/.next/server/chunks/ssr/_1q2s-hb67yjfb._.js +0 -3
  882. package/web/.next/server/chunks/ssr/_1q2s-hb67yjfb._.js.map +0 -1
  883. package/web/.next/server/chunks/ssr/_1yi3j4a16uet-._.js +0 -3
  884. package/web/.next/server/chunks/ssr/_1yi3j4a16uet-._.js.map +0 -1
  885. package/web/.next/server/chunks/ssr/node_modules_01oyodz1bs245._.js +0 -3
  886. package/web/.next/server/chunks/ssr/node_modules_01oyodz1bs245._.js.map +0 -1
  887. package/web/.next/server/chunks/ssr/node_modules_16d4um5s513wz._.js +0 -3
  888. package/web/.next/server/chunks/ssr/node_modules_16d4um5s513wz._.js.map +0 -1
  889. package/web/.next/server/chunks/ssr/node_modules_@aeolus-fleet_common_dist_header_0t_cmi-llaq7g._.js +0 -3
  890. package/web/.next/server/chunks/ssr/node_modules_@aeolus-fleet_common_dist_header_0t_cmi-llaq7g._.js.map +0 -1
  891. package/web/.next/server/chunks/ssr/node_modules_@aeolus-fleet_common_dist_header_1x3s5abk_uj9j._.js.map +0 -1
  892. package/web/.next/server/chunks/ssr/node_modules_@base-ui_react_1lbvjrzg8s2ox._.js +0 -3
  893. package/web/.next/server/chunks/ssr/node_modules_next_dist_0hkpfqt9ne626._.js +0 -3
  894. package/web/.next/server/chunks/ssr/node_modules_next_dist_0hkpfqt9ne626._.js.map +0 -1
  895. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_031g89sb4kgzn.js +0 -3
  896. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_031g89sb4kgzn.js.map +0 -1
  897. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_09rviehv6rh0n.js +0 -3
  898. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_09rviehv6rh0n.js.map +0 -1
  899. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0ka8v6_fxug8r.js +0 -3
  900. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0ka8v6_fxug8r.js.map +0 -1
  901. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1c8zekuy1gkch.js +0 -3
  902. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1c8zekuy1gkch.js.map +0 -1
  903. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1dhzng2nnu0m7.js +0 -3
  904. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1dhzng2nnu0m7.js.map +0 -1
  905. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1rya2ag3z4vug.js +0 -3
  906. package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1rya2ag3z4vug.js.map +0 -1
  907. package/web/.next/server/chunks/ssr/web_0i_1uraygw2ld._.js +0 -3
  908. package/web/.next/server/chunks/ssr/web_0i_1uraygw2ld._.js.map +0 -1
  909. package/web/.next/server/chunks/ssr/web_0wz4onhfbq359._.js +0 -3
  910. package/web/.next/server/chunks/ssr/web_0wz4onhfbq359._.js.map +0 -1
  911. package/web/.next/server/chunks/ssr/web_1-hlf1xzemd3-._.js +0 -3
  912. package/web/.next/server/chunks/ssr/web_1-hlf1xzemd3-._.js.map +0 -1
  913. package/web/.next/server/chunks/ssr/web_107a79_nx4jdd._.js +0 -3
  914. package/web/.next/server/chunks/ssr/web_107a79_nx4jdd._.js.map +0 -1
  915. package/web/.next/server/chunks/ssr/web_127_b93avkwaq._.js +0 -3
  916. package/web/.next/server/chunks/ssr/web_127_b93avkwaq._.js.map +0 -1
  917. package/web/.next/server/chunks/ssr/web__next-internal_server_app_(console)_bridge_basket_page_actions_102xk3g8eko_q.js +0 -3
  918. package/web/.next/server/chunks/ssr/web__next-internal_server_app_(console)_bridge_basket_page_actions_102xk3g8eko_q.js.map +0 -1
  919. package/web/.next/server/chunks/ssr/web__next-internal_server_app_(console)_bridge_done_page_actions_0mm90xd2feta2.js +0 -3
  920. package/web/.next/server/chunks/ssr/web__next-internal_server_app_(console)_bridge_done_page_actions_0mm90xd2feta2.js.map +0 -1
  921. package/web/.next/server/chunks/ssr/web__next-internal_server_app_(console)_bridge_page_actions_082880qz6xa5k.js +0 -3
  922. package/web/.next/server/chunks/ssr/web__next-internal_server_app_(console)_bridge_page_actions_082880qz6xa5k.js.map +0 -1
  923. package/web/.next/server/chunks/ssr/web_app_(console)_bridge_error_tsx_0ty_yk1robyaj._.js +0 -3
  924. package/web/.next/server/chunks/ssr/web_app_(console)_bridge_error_tsx_0ty_yk1robyaj._.js.map +0 -1
  925. package/web/.next/server/chunks/ssr/web_app_(console)_bridge_error_tsx_10gkrn3ey8162._.js.map +0 -1
  926. package/web/.next/server/chunks/ssr/web_app_(console)_bridge_settings_page_tsx_0xzphp7k9ge1u._.js +0 -3
  927. package/web/.next/server/chunks/ssr/web_app_(console)_bridge_settings_page_tsx_0xzphp7k9ge1u._.js.map +0 -1
  928. package/web/.next/server/chunks/ssr/web_features_0f6r-m-dq36vf._.js.map +0 -1
  929. package/web/.next/server/chunks/ssr/web_features_0mi9a9pdzkdji._.js +0 -3
  930. package/web/.next/server/chunks/ssr/web_features_0s8erick0xk77._.js +0 -3
  931. package/web/.next/server/chunks/ssr/web_features_0s8erick0xk77._.js.map +0 -1
  932. package/web/.next/server/chunks/ssr/web_features_0wuo5bgp5tabn._.js +0 -3
  933. package/web/.next/server/chunks/ssr/web_features_0wuo5bgp5tabn._.js.map +0 -1
  934. package/web/.next/server/chunks/ssr/web_features_16cy3vmcijydk._.js +0 -3
  935. package/web/.next/server/chunks/ssr/web_features_16cy3vmcijydk._.js.map +0 -1
  936. package/web/.next/server/chunks/ssr/web_features_1iiqi6dhrst33._.js +0 -3
  937. package/web/.next/server/chunks/ssr/web_features_1iiqi6dhrst33._.js.map +0 -1
  938. package/web/.next/server/chunks/ssr/web_features_1n1hy3nwha2vi._.js +0 -3
  939. package/web/.next/server/chunks/ssr/web_features_1n1hy3nwha2vi._.js.map +0 -1
  940. package/web/.next/server/chunks/ssr/web_features_bridge_0-mhu0jaig2u3._.js +0 -3
  941. package/web/.next/server/chunks/ssr/web_features_bridge_0-mhu0jaig2u3._.js.map +0 -1
  942. package/web/.next/server/chunks/ssr/web_features_bridge_0219fbfmsi68-._.js +0 -3
  943. package/web/.next/server/chunks/ssr/web_features_bridge_0219fbfmsi68-._.js.map +0 -1
  944. package/web/.next/server/chunks/ssr/web_features_bridge_11jndonu4o8fq._.js +0 -3
  945. package/web/.next/server/chunks/ssr/web_features_bridge_11jndonu4o8fq._.js.map +0 -1
  946. package/web/.next/server/chunks/ssr/web_features_bridge_state_0354e3wb0dzx1._.js +0 -3
  947. package/web/.next/server/chunks/ssr/web_features_bridge_state_0354e3wb0dzx1._.js.map +0 -1
  948. package/web/.next/server/chunks/ssr/web_features_bridge_state_live-refresh_tsx_1c1xk-oe0kllv._.js +0 -3
  949. package/web/.next/server/chunks/ssr/web_features_bridge_state_live-refresh_tsx_1c1xk-oe0kllv._.js.map +0 -1
  950. package/web/.next/server/chunks/ssr/web_features_frame_0pe8cwpxe1egb._.js +0 -3
  951. package/web/.next/server/chunks/ssr/web_features_frame_0pe8cwpxe1egb._.js.map +0 -1
  952. package/web/.next/server/chunks/web__next-internal_server_app_(console)_bridge_focus_route_actions_0syd_u8mgzdmi.js +0 -3
  953. package/web/.next/static/chunks/0az9upwm-8_q9.js +0 -1
  954. package/web/.next/static/chunks/0c1tqlbsvq1dj.js +0 -1
  955. package/web/.next/static/chunks/0fh11dkddwf_2.js +0 -1
  956. package/web/.next/static/chunks/0gbozvd_yh421.js +0 -1
  957. package/web/.next/static/chunks/0l9_oie6xi0kd.js +0 -1
  958. package/web/.next/static/chunks/0m512dxdcrv-b.js +0 -1
  959. package/web/.next/static/chunks/0zbcy0_3jemrv.js +0 -1
  960. package/web/.next/static/chunks/1485slb5zus5p.js +0 -1
  961. package/web/.next/static/chunks/180aowme095ds.js +0 -1
  962. package/web/.next/static/chunks/24olc0btcvn7q.js +0 -1
  963. package/web/.next/static/chunks/296w-74ry5lzk.js +0 -1
  964. package/web/.next/static/chunks/2gghdkr64z9f9.js +0 -1
  965. package/web/.next/static/chunks/2hoi73vy1wqpo.js +0 -1
  966. package/web/.next/static/chunks/2mtfca4qk_s34.js +0 -1
  967. package/web/.next/static/chunks/397zvdr6xr5pq.js +0 -1
  968. package/web/.next/static/chunks/3ow9h8hreko-p.css +0 -3
  969. package/web/.next/static/chunks/3pd8pele5x1o9.js +0 -1
  970. package/web/.next/static/chunks/3srfjz42u14tx.js +0 -1
  971. package/web/.next/static/chunks/3x0p-z3zdrk_b.js +0 -1
  972. package/web/.next/static/chunks/3yq9jt4p_0uid.js +0 -1
  973. /package/web/.next/server/app/{(console) → (bridge)}/bridge/basket/page/react-loadable-manifest.json +0 -0
  974. /package/web/.next/server/app/{(console) → (bridge)}/bridge/basket/page.js.map +0 -0
  975. /package/web/.next/server/app/{(console) → (bridge)}/bridge/changes/route/build-manifest.json +0 -0
  976. /package/web/.next/server/app/{(console) → (bridge)}/bridge/changes/route/server-reference-manifest.json +0 -0
  977. /package/web/.next/server/app/{(console) → (bridge)}/bridge/changes/route.js.map +0 -0
  978. /package/web/.next/server/app/{(console) → (bridge)}/bridge/done/page/react-loadable-manifest.json +0 -0
  979. /package/web/.next/server/app/{(console) → (bridge)}/bridge/done/page.js.map +0 -0
  980. /package/web/.next/server/app/{(console)/bridge → (bridge)/bridge/fleet}/page/react-loadable-manifest.json +0 -0
  981. /package/web/.next/server/app/{(console)/bridge → (bridge)/bridge/fleet}/page.js.map +0 -0
  982. /package/web/.next/server/app/{(console) → (bridge)}/bridge/focus/route/build-manifest.json +0 -0
  983. /package/web/.next/server/app/{(console) → (bridge)}/bridge/focus/route/server-reference-manifest.json +0 -0
  984. /package/web/.next/server/app/{(console) → (bridge)}/bridge/focus/route.js.map +0 -0
  985. /package/web/.next/server/app/{(console)/bridge/settings → (bridge)/bridge}/page/react-loadable-manifest.json +0 -0
  986. /package/web/.next/server/app/{(console)/bridge/settings → (bridge)/bridge}/page.js.map +0 -0
  987. /package/web/.next/server/app/{(console)/bridge/settings/requests/[requestId] → (bridge)/bridge/settings}/page/react-loadable-manifest.json +0 -0
  988. /package/web/.next/server/app/{(console)/bridge/settings/requests/[requestId] → (bridge)/bridge/settings}/page.js.map +0 -0
  989. /package/web/.next/server/app/{(console)/bridge/settings/routing → (bridge)/bridge/settings/requests/[requestId]}/page/react-loadable-manifest.json +0 -0
  990. /package/web/.next/server/app/{(console)/bridge/settings/routing → (bridge)/bridge/settings/requests/[requestId]}/page.js.map +0 -0
  991. /package/web/.next/server/chunks/{0b9d__next-internal_server_app_(console)_bridge_changes_route_actions_0hj8aqohz6bu6.js.map → 0b9d__next-internal_server_app_(bridge)_bridge_changes_route_actions_0wd1c_8tnx6-f.js.map} +0 -0
  992. /package/web/.next/server/chunks/ssr/{[root-of-the-server]__1yyaeeylnezpi._.js.map → [root-of-the-server]__04_bc8g0oe4jt._.js.map} +0 -0
  993. /package/web/.next/server/chunks/ssr/{[root-of-the-server]__0gnfxe62edx95._.js.map → [root-of-the-server]__179upda-y7uap._.js.map} +0 -0
  994. /package/web/.next/server/chunks/{web__next-internal_server_app_(console)_bridge_focus_route_actions_0syd_u8mgzdmi.js.map → web__next-internal_server_app_(bridge)_bridge_focus_route_actions_0fx2vmqfq23mq.js.map} +0 -0
  995. /package/web/.next/static/{CMppMkysNciqc8k4TWwia → 79SqN0pBIJ0D-DK1jZmK6}/_buildManifest.js +0 -0
  996. /package/web/.next/static/{CMppMkysNciqc8k4TWwia → 79SqN0pBIJ0D-DK1jZmK6}/_clientMiddlewareManifest.js +0 -0
  997. /package/web/.next/static/{CMppMkysNciqc8k4TWwia → 79SqN0pBIJ0D-DK1jZmK6}/_ssgManifest.js +0 -0
@@ -0,0 +1,3 @@
1
+ (()=>{"use strict";module.exports=[34117,49644,67737,20941,22840,a=>{var b=a.i(92277);let c={name:"bell",size:24,node:[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["path",{d:"M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326",key:"11g9vi"}]]};c.node;let d=(0,b.f)(c);a.s(["f",0,d],34117);let e={name:"check-check",size:24,node:[["path",{d:"M18 6 7 17l-5-5",key:"116fxf"}],["path",{d:"m22 10-7.5 7.5L13 16",key:"ke71qq"}]]};e.node;let f=(0,b.f)(e);a.s(["f",0,f],49644);let g={name:"globe",size:24,node:[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]]};g.node;let h=(0,b.f)(g);a.s(["f",0,h],67737);let i={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"}]]};i.node;let j=(0,b.f)(i);a.s(["f",0,j],20941);let k={name:"route",size:24,node:[["circle",{cx:"6",cy:"19",r:"3",key:"1kj8tv"}],["path",{d:"M9 19h8.5a3.5 3.5 0 0 0 0-7h-11a3.5 3.5 0 0 1 0-7H15",key:"1d8sl"}],["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}]]};k.node;let l=(0,b.f)(k);a.s(["f",0,l],22840)},80845,a=>{var b=a.i(92277);let c={name:"ship",size:24,node:[["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 9.189V13",key:"yp40p3"}],["path",{d:"M19 12V6a2 2 0 00-2-2H7a2 2 0 00-2 2v6",key:"1wcigf"}],["path",{d:"M19.38 19A11.6 11.6 0 0021 13l-8.188-3.639a2 2 0 00-1.624 0L3 13.001a11.6 11.6 0 002.81 7.76",key:"1kdp0u"}],["path",{d:"M2 20c.6.5 1.2 1 2.5 1 2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1s1.2 1 2.5 1c2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1",key:"1l8w7g"}]]};c.node;let d=(0,b.f)(c);a.s(["f",0,d],80845)},22120,48473,a=>{var b=a.i(92277);let c={name:"shopping-basket",size:24,node:[["path",{d:"m15 11-1 9",key:"5wnq3a"}],["path",{d:"m19 11-4-7",key:"cnml18"}],["path",{d:"M2 11h20",key:"3eubbj"}],["path",{d:"m3.5 11 1.6 7.4a2 2 0 0 0 2 1.6h9.8a2 2 0 0 0 2-1.6l1.7-7.4",key:"yiazzp"}],["path",{d:"M4.5 15.5h15",key:"13mye1"}],["path",{d:"m5 11 4-7",key:"116ra9"}],["path",{d:"m9 11 1 9",key:"1ojof7"}]]};c.node;let d=(0,b.f)(c);a.s(["f",0,d],22120);let e={name:"sliders-horizontal",size:24,node:[["path",{d:"M10 5H3",key:"1qgfaw"}],["path",{d:"M12 19H3",key:"yhmn1j"}],["path",{d:"M14 3v4",key:"1sua03"}],["path",{d:"M16 17v4",key:"1q0r14"}],["path",{d:"M21 12h-9",key:"1o4lsq"}],["path",{d:"M21 19h-5",key:"1rlt1p"}],["path",{d:"M21 5h-7",key:"1oszz2"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M8 12H3",key:"a7s4jb"}]]};e.node;let f=(0,b.f)(e);a.s(["f",0,f],48473)},95679,a=>{var b=a.i(92277);let c={name:"user-round",size:24,node:[["circle",{cx:"12",cy:"8",r:"5",key:"1hypcn"}],["path",{d:"M20 21a8 8 0 0 0-16 0",key:"rfgkzh"}]],aliases:["user-2"]};c.node;let d=(0,b.f)(c);a.s(["f",0,d],95679)},10692,a=>{var b=a.i(717),c=a.i(66283);let d=(0,b.cache)(async a=>{try{return{kind:"read",value:await a.people.yourFleet.query()}}catch(b){let a=(0,c.U)(b);if("FORBIDDEN"===a)return{kind:"forbidden"};if("UNAUTHORIZED"===a)throw b;return{kind:"unreadable",message:void 0===a?"The gateway did not answer.":(0,c.s)(b)}}});a.s(["f",0,d])},87665,a=>{a.s(["f",0,"/bridge/fleet"])},88276,36369,a=>{var b=a.i(717),c=a.i(10692),d=a.i(66283);let e=["slack","chat","web-push","email"],f={home:{name:"Bridge",hasBack:!1,tab:"waiting"},basket:{name:"Basket",hasBack:!0,tab:"waiting"},"stay-aware":{name:"Stay aware",hasBack:!1,tab:"aware"},done:{name:"Done",hasBack:!1,tab:"done"},fleet:{name:"Your fleet",hasBack:!1,tab:"fleet"},routing:{name:"Where things show",hasBack:!0,tab:null},settings:{name:"Settings",hasBack:!0,tab:null}};function g({home:a,basket:b,fleetAlerts:c,argo:d}){let e={basket:b,fleetAlerts:c,...void 0===d?{}:{argo:d}};switch(a.kind){case"read":return{waiting:a.value.waiting.count,stayAware:a.value.stayAware.filter(({state:a})=>"new"===a).length,...e};case"none":return{waiting:0,stayAware:0,...e};case"unreadable":return{waiting:void 0,stayAware:void 0,...e}}}a.s(["f",0,function(a){return f[a]},"E",0,g],36369);let h={decide:void 0,do:void 0,"stay-aware":void 0,"everything-else":void 0};async function i(a){try{return await a}catch(a){if("FORBIDDEN"===(0,d.U)(a))return;throw a}}async function j(a){try{return{kind:"read",value:await a}}catch(b){let a=(0,d.U)(b);if("FORBIDDEN"===a)return{kind:"none"};if("UNAUTHORIZED"===a)throw b;return{kind:"unreadable",whoDidNotAnswer:void 0===a?"gateway":"fleet"}}}let k=(0,b.cache)(a=>j(a.people.home.query()));async function l(a){try{return await a.people.argoInboxNotice.query()}catch{return{kind:"none"}}}let m=(0,b.cache)(async a=>{try{return await a.people.argoSection.query()}catch{return null}});async function n(a){try{return await a.slack.droppedOut.query()}catch(a){return"FORBIDDEN"===(0,d.U)(a)?null:void 0}}async function o(a){try{var b;let c;return c=(b=await a.people.routing.query()).jobs.find(({job:a})=>"decide"===a),e.filter(a=>b.offered[a]&&c?.places[a]===!0)}catch{return}}async function p(a){let b=await j(a.people.basketCount.query());return"read"===b.kind?b.value.count:0}async function q(a){let[b,d,e,f]=await Promise.all([k(a),p(a),(0,c.f)(a),m(a)]);return g({home:b,basket:d,fleetAlerts:"read"===e.kind?e.value.counts.alert:void 0,argo:f?.count})}async function r(a){let[b,c]=await Promise.all([i(a.requests.toDecide.query()),i(a.requests.mine.query())]);return{toDecide:b,mine:c}}async function s(a){let[b,c,d,e,f]=await Promise.all([i(a.people.routing.query()),i(a.people.wakeChannels.query()),i(a.slack.link.query()),i(a.people.chats.query()),k(a)]),g="read"===f.kind?function({waiting:a,stayAware:b}){let c=b=>a.filter(a=>a.job===b).length;return{decide:c("decide"),do:c("do"),"stay-aware":b,"everything-else":void 0}}({waiting:f.value.waiting.items,stayAware:f.value.stayAware.length}):h;return{routing:b,wakeChannels:c,slackLink:d,chats:e?.names??[],waitingByJob:g}}async function t(a,b){let c=await i(a.requests.toDecide.query())??[];return{request:c.find(a=>a.requestId===b),toDecide:c}}a.s(["C",0,l,"k",0,m,"M",0,function(a){return j(a.people.basket.query())},"I",0,k,"W",0,s,"n",0,r,"S",0,o,"x",0,function(a,b){return j(a.people.record.query({cursor:b}))},"F",0,t,"N",0,q,"P",0,n,"c",0,function(a){return"unreadable"===a.kind?void 0:new Date().toISOString()}],88276)},2919,a=>{a.s(["F",0,"argo","D",0,function({kind:a}){return"question"===a?"Answer in the console as argo":"Open in the console as argo"},"z",0,function({title:a,at:b,by:c,isInConsole:d},{isPhone:e}){let f=null===c?"":` by ${c}`,g=`Done at argo${f}${d&&!e?" in the console":""}, ${new Date(b).toISOString().slice(11,16)}: ${function(a){let[b=a]=a.split(":",1);return""===b.trim()?a:b.trim()}(a)}.`;return e?g:`${g} Gone from this list for everyone allowed as argo.`}])},36554,a=>{var b=a.i(7997),c=a.i(717),d=a.i(16421),e=a.i(38735),f=a.i(8403),g=a.i(69979),h=a.i(7421),i=a.i(22126),j=a.i(88276),k=a.i(62938),l=a.i(34117),m=a.i(49644),n=a.i(67737),o=a.i(20941),p=a.i(22840),q=a.i(80845),r=a.i(22120),s=a.i(48473),t=a.i(55476),u=a.i(72913),v=a.i(87665),w=a.i(29660),x=a.i(2919),y=a.i(26011),z=a.i(47472);let A={waiting:"bg-tone-waiting-bg text-tone-waiting-fg",basket:"bg-primary text-primary-foreground",attention:"bg-tone-attention-bg text-tone-attention-fg",argo:"bg-highlight text-primary",plain:"bg-secondary text-foreground"};function B({count:a,tone:c,className:d}){return void 0===a||0===a?null:(0,b.jsx)("span",{className:(0,z.f)("inline-flex h-[18px] min-w-[18px] items-center justify-center rounded-full px-[5px] text-micro font-semibold tabular-nums",A[c],d),children:a})}function C({entry:a}){let{key:c,label:d,href:e,Icon:f,isCurrent:g,count:h}=a;return(0,b.jsxs)("a",{href:e,"data-testid":`bridge-side-${c}`,"aria-current":g?"page":void 0,className:`flex h-[30px] items-center gap-2.5 rounded-md px-2.5 text-foreground ${g?"bg-accent font-medium [&>svg]:text-primary":"hover:bg-accent"}`,children:[(0,b.jsx)(f,{"aria-hidden":!0,className:"size-4 shrink-0"}),d,void 0===h?null:(0,b.jsx)(B,{count:h.value,tone:h.tone,className:"ml-auto"})]})}function D({fleetId:a,screen:c,counts:d,accountUrl:e,foot:f,switcher:g}){let h=(a,b)=>({key:a,isCurrent:a===c,...b}),i=[h("home",{label:"Waiting on you",href:(0,t.i)(w.P,a),Icon:o.f,count:{value:d.waiting,tone:"waiting"}}),...d.basket>0||"basket"===c?[h("basket",{label:"Basket",href:(0,t.i)(w.H,a),Icon:r.f,count:{value:d.basket,tone:"basket"}})]:[],h("stay-aware",{label:"Stay aware",href:(0,t.i)(w.C,a),Icon:l.f,count:{value:d.stayAware,tone:"plain"}}),h("done",{label:"Done",href:(0,t.i)(w.a,a),Icon:m.f}),h("fleet",{label:"Your fleet",href:(0,t.i)(v.f,a),Icon:q.f,count:{value:d.fleetAlerts,tone:"attention"}})],j=[h("routing",{label:"Where things show",href:(0,t.i)(w.i,a),Icon:p.f}),{key:"outside-parties",label:"Outside parties",href:(0,t.i)(u.$,a),Icon:n.f,isCurrent:!1},...void 0===e?[]:[{key:"account",label:"Fleets and account",href:e,Icon:s.f,isCurrent:!1}]];return(0,b.jsxs)("aside",{"data-testid":"bridge-sidebar",className:"sticky top-0 flex h-dvh w-(--size-sidebar) shrink-0 flex-col gap-0.5 border-r border-border bg-sidebar p-3 text-sidebar-foreground max-sm:hidden",children:[(0,b.jsx)("div",{className:"mb-2.5 flex h-10 min-w-0 items-center font-semibold",children:void 0===g?(0,b.jsxs)("span",{className:"flex items-center gap-2.5 px-2",children:[(0,b.jsx)("span",{className:"inline-flex size-7 items-center justify-center rounded-md bg-primary text-primary-foreground",children:(0,b.jsx)(q.f,{"aria-hidden":!0,className:"size-4"})}),"Bridge"]}):(0,b.jsx)(k.AppSwitcher,{switcher:g,layout:"full",className:"min-w-0"})}),(0,b.jsx)("nav",{"aria-label":"Bridge",className:"flex flex-col gap-0.5",children:i.map(a=>(0,b.jsx)(C,{entry:a},a.key))}),void 0===d.argo?null:(0,b.jsxs)("nav",{"aria-label":"For argo",className:"flex flex-col gap-0.5",children:[(0,b.jsx)("span",{className:"px-2.5 pt-3.5 pb-1.5 text-caption font-medium text-muted-foreground",children:"For argo"}),(0,b.jsxs)("a",{href:`${(0,t.i)(w.P,a)}#${x.F}`,"data-testid":"bridge-side-argo",className:"flex h-[30px] items-center gap-2.5 rounded-md px-2.5 text-foreground hover:bg-accent",children:[(0,b.jsx)(y.f,{className:"-mx-0.5"}),"Waits at argo",(0,b.jsx)(B,{count:d.argo,tone:"argo",className:"ml-auto"})]})]}),(0,b.jsxs)("nav",{"aria-label":"Settings",className:"flex flex-col gap-0.5",children:[(0,b.jsx)("a",{href:(0,t.i)(w.T,a),"data-testid":"bridge-side-settings","aria-current":"settings"===c?"page":void 0,className:`px-2.5 pt-3.5 pb-1.5 text-caption font-medium hover:text-foreground ${"settings"===c?"text-foreground":"text-muted-foreground"}`,children:"Settings"}),j.map(a=>(0,b.jsx)(C,{entry:a},a.key))]}),(0,b.jsx)("div",{className:"mt-auto flex min-w-0 items-center gap-2.5 border-t border-border p-2",children:f})]})}var E=a.i(95679),F=a.i(36369);function G({fleetId:a,count:c}){return(0,b.jsxs)("div",{"data-testid":"bridge-basket-bar",className:"flex items-center gap-2.5 border-t border-border bg-highlight px-3.5 py-2",children:[(0,b.jsx)(r.f,{"aria-hidden":!0,className:"size-4 text-primary"}),(0,b.jsxs)("span",{children:[(0,b.jsxs)("b",{className:"font-semibold",children:["Basket ",c]})," ",(0,b.jsx)("span",{className:"text-muted-foreground",children:"not sent"})]}),(0,b.jsx)("a",{href:(0,t.i)(w.H,a),className:"ml-auto inline-flex h-8 items-center rounded-md bg-primary px-3 font-medium text-primary-foreground hover:bg-primary-hover",children:"Open"})]})}function H({fleetId:a,screen:c,counts:d}){let{tab:e}=(0,F.f)(c),f=[{key:"waiting",label:"Waiting",path:w.P,Icon:o.f,count:{value:d.waiting,tone:"waiting"}},...void 0===d.argo?[]:[{key:"argo",label:"argo",path:w.P,anchor:x.F,Icon:E.f,count:{value:d.argo,tone:"argo"}}],{key:"aware",label:"Aware",path:w.C,Icon:l.f,count:{value:d.stayAware,tone:"plain"}},{key:"done",label:"Done",path:w.a,Icon:m.f},{key:"fleet",label:"Fleet",path:v.f,Icon:q.f,count:{value:d.fleetAlerts,tone:"attention"}}];return(0,b.jsxs)("div",{className:"sticky bottom-0 z-30 bg-background sm:hidden",children:[d.basket>0&&"basket"!==c?(0,b.jsx)(G,{fleetId:a,count:d.basket}):null,(0,b.jsx)("nav",{"aria-label":"Bridge",className:"flex h-(--size-tabbar) border-t border-border pb-3",children:f.map(({key:c,label:d,path:f,anchor:g,Icon:h,count:i})=>(0,b.jsxs)("a",{href:void 0===g?(0,t.i)(f,a):`${(0,t.i)(f,a)}#${g}`,"data-testid":`bridge-tab-${c}`,"aria-current":c===e?"page":void 0,className:`relative flex flex-1 flex-col items-center justify-center gap-1 text-micro font-medium ${c===e?"text-primary":"text-muted-foreground"}`,children:[(0,b.jsx)(h,{"aria-hidden":!0,className:"size-(--size-icon-tab)"}),d,void 0===i?null:(0,b.jsx)(B,{count:i.value,tone:i.tone,className:"absolute top-1 left-[calc(50%+6px)] h-4 min-w-4 text-[10px]"})]},c))})]})}var I=a.i(21476),J=a.i(93738);let K={waiting:void 0,stayAware:void 0,basket:0,fleetAlerts:void 0};async function L({counts:a,children:c}){let d=await a;return(0,b.jsx)(I.KeptRead,{readAt:void 0===d.waiting?void 0:new Date().toISOString(),children:c(d)})}async function M(a){let[b,c]=await Promise.all([(0,d.f)(),(0,f.f)()]);return void 0===b?{account:void 0,fleetName:void 0}:{account:{email:b.account.email,accountUrl:b.apps.find(({app:a})=>"account"===a)?.url,theme:c},switcher:(0,e.f)(b).find(({fleet:b})=>b.id===a),fleetName:b.fleets.find(({id:b})=>b===a)?.name}}async function N({api:a,fleetId:d,screen:e,children:f}){let g=(0,j.N)(a);g.catch(()=>void 0);let{account:h,fleetName:i,switcher:k}=await M(d),l=a=>(0,b.jsx)(D,{switcher:k,fleetId:d,screen:e,counts:a,accountUrl:h?.accountUrl,foot:void 0===h?null:(0,b.jsx)(J.SidebarPerson,{account:h,fleetName:i,isAllowedAsArgo:void 0!==a.argo})}),m=a=>(0,b.jsx)(H,{fleetId:d,screen:e,counts:a});return(0,b.jsxs)("div",{className:"flex min-h-dvh",children:[(0,b.jsx)(c.Suspense,{fallback:l(K),children:(0,b.jsx)(L,{counts:g,children:l})}),(0,b.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[(0,b.jsx)(J.ShellFrame,{fleetId:d,fleetName:i,screen:e,account:h,switcher:k,children:f}),(0,b.jsx)(c.Suspense,{fallback:m(K),children:(0,b.jsx)(L,{counts:g,children:m})})]})]})}a.s(["L",0,function(){return(0,b.jsx)(g.f,{header:(0,b.jsx)(h.f,{}),children:(0,b.jsx)(i.f,{})})},"n",0,N],36554)},52079,a=>{var b=a.i(11857);(0,b.registerClientReference)(function(){throw Error("Attempted to call AsLastRead() from the server but AsLastRead is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/web/features/bridge/state/kept-read.tsx","AsLastRead");let c=(0,b.registerClientReference)(function(){throw Error("Attempted to call KeptRead() from the server but KeptRead is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/web/features/bridge/state/kept-read.tsx","KeptRead");(0,b.registerClientReference)(function(){throw Error("Attempted to call useLastReadAt() from the server but useLastReadAt is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/web/features/bridge/state/kept-read.tsx","useLastReadAt"),a.s(["KeptRead",0,c])},21476,a=>{var b=a.i(52079);a.n(b)},57244,a=>{var b=a.i(11857);let c=(0,b.registerClientReference)(function(){throw Error("Attempted to call ShellFrame() from the server but ShellFrame is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/web/features/bridge/state/shell-frame.tsx","ShellFrame"),d=(0,b.registerClientReference)(function(){throw Error("Attempted to call SidebarPerson() from the server but SidebarPerson is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/web/features/bridge/state/shell-frame.tsx","SidebarPerson");a.s(["ShellFrame",0,c,"SidebarPerson",0,d])},93738,a=>{var b=a.i(57244);a.n(b)},26011,a=>{var b=a.i(7997),c=a.i(95679);a.s(["f",0,function({className:a=""}){return(0,b.jsx)("span",{"aria-hidden":"true",className:`inline-flex size-5 shrink-0 items-center justify-center rounded-sm bg-highlight text-primary ${a}`,children:(0,b.jsx)(c.f,{className:"size-3"})})}])}]})();
2
+
3
+ //# sourceMappingURL=_1k2b80m058vgx._.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../node_modules/lucide-react/src/icons/route.ts","../../../../../node_modules/lucide-react/src/icons/bell.ts","../../../../../node_modules/lucide-react/src/icons/inbox.ts","../../../../../node_modules/lucide-react/src/icons/check-check.ts","../../../../../node_modules/lucide-react/src/icons/globe.ts","../../../../../node_modules/lucide-react/src/icons/ship.ts","../../../../../node_modules/lucide-react/src/icons/sliders-horizontal.ts","../../../../../node_modules/lucide-react/src/icons/shopping-basket.ts","../../../../../node_modules/lucide-react/src/icons/user-round.ts","../../../../../web/features/bridge/fleet/hooks/read-your-fleet.ts","../../../../../web/features/bridge/fleet/paths.ts","../../../../../web/features/bridge/hooks/read-bridge.ts","../../../../../web/features/bridge/services/routing.ts","../../../../../web/features/bridge/services/shell.ts","../../../../../web/features/bridge/services/argo-section.ts","../../../../../web/features/bridge/state/bridge-shell.tsx","../../../../../web/features/bridge/ui/bridge-sidebar.tsx","../../../../../web/features/bridge/ui/shell-count.tsx","../../../../../web/features/bridge/ui/bridge-tabs.tsx","../../../../../web/features/bridge/state/kept-read.tsx/__nextjs-internal-proxy.mjs%20%7B%20server%20%3D%3E%20%22%5Bproject%5D/web/features/bridge/state/kept-read.tsx%22%20%7D","../../../../../web/features/bridge/state/shell-frame.tsx/__nextjs-internal-proxy.mjs%20%7B%20server%20%3D%3E%20%22%5Bproject%5D/web/features/bridge/state/shell-frame.tsx%22%20%7D","../../../../../web/features/bridge/ui/argo-mark.tsx"],"sourcesContent":["import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'route',\n size: 24,\n node: [\n ['circle', { cx: '6', cy: '19', r: '3', key: '1kj8tv' }],\n ['path', { d: 'M9 19h8.5a3.5 3.5 0 0 0 0-7h-11a3.5 3.5 0 0 1 0-7H15', key: '1d8sl' }],\n ['circle', { cx: '18', cy: '5', r: '3', key: 'gq8acd' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Route\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8Y2lyY2xlIGN4PSI2IiBjeT0iMTkiIHI9IjMiIC8+CiAgPHBhdGggZD0iTTkgMTloOC41YTMuNSAzLjUgMCAwIDAgMC03aC0xMWEzLjUgMy41IDAgMCAxIDAtN0gxNSIgLz4KICA8Y2lyY2xlIGN4PSIxOCIgY3k9IjUiIHI9IjMiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/route\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Route = createLucideIcon(__iconData);\n\nexport default Route;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'bell',\n size: 24,\n node: [\n ['path', { d: 'M10.268 21a2 2 0 0 0 3.464 0', key: 'vwvbt9' }],\n [\n 'path',\n {\n d: 'M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326',\n key: '11g9vi',\n },\n ],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Bell\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTAuMjY4IDIxYTIgMiAwIDAgMCAzLjQ2NCAwIiAvPgogIDxwYXRoIGQ9Ik0zLjI2MiAxNS4zMjZBMSAxIDAgMCAwIDQgMTdoMTZhMSAxIDAgMCAwIC43NC0xLjY3M0MxOS40MSAxMy45NTYgMTggMTIuNDk5IDE4IDhBNiA2IDAgMCAwIDYgOGMwIDQuNDk5LTEuNDExIDUuOTU2LTIuNzM4IDcuMzI2IiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/bell\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Bell = createLucideIcon(__iconData);\n\nexport default Bell;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'inbox',\n size: 24,\n node: [\n ['polyline', { points: '22 12 16 12 14 15 10 15 8 12 2 12', key: 'o97t9d' }],\n [\n 'path',\n {\n 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',\n key: 'oot6mr',\n },\n ],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Inbox\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cG9seWxpbmUgcG9pbnRzPSIyMiAxMiAxNiAxMiAxNCAxNSAxMCAxNSA4IDEyIDIgMTIiIC8+CiAgPHBhdGggZD0iTTUuNDUgNS4xMSAyIDEydjZhMiAyIDAgMCAwIDIgMmgxNmEyIDIgMCAwIDAgMi0ydi02bC0zLjQ1LTYuODlBMiAyIDAgMCAwIDE2Ljc2IDRINy4yNGEyIDIgMCAwIDAtMS43OSAxLjExeiIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/inbox\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Inbox = createLucideIcon(__iconData);\n\nexport default Inbox;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'check-check',\n size: 24,\n node: [\n ['path', { d: 'M18 6 7 17l-5-5', key: '116fxf' }],\n ['path', { d: 'm22 10-7.5 7.5L13 16', key: 'ke71qq' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name CheckCheck\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTggNiA3IDE3bC01LTUiIC8+CiAgPHBhdGggZD0ibTIyIDEwLTcuNSA3LjVMMTMgMTYiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/check-check\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst CheckCheck = createLucideIcon(__iconData);\n\nexport default CheckCheck;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'globe',\n size: 24,\n node: [\n ['circle', { cx: '12', cy: '12', r: '10', key: '1mglay' }],\n ['path', { d: 'M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20', key: '13o1zl' }],\n ['path', { d: 'M2 12h20', key: '9i4pu4' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Globe\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIxMCIgLz4KICA8cGF0aCBkPSJNMTIgMmExNC41IDE0LjUgMCAwIDAgMCAyMCAxNC41IDE0LjUgMCAwIDAgMC0yMCIgLz4KICA8cGF0aCBkPSJNMiAxMmgyMCIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/globe\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Globe = createLucideIcon(__iconData);\n\nexport default Globe;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'ship',\n size: 24,\n node: [\n ['path', { d: 'M12 2v2', key: 'tus03m' }],\n ['path', { d: 'M12 9.189V13', key: 'yp40p3' }],\n ['path', { d: 'M19 12V6a2 2 0 00-2-2H7a2 2 0 00-2 2v6', key: '1wcigf' }],\n [\n 'path',\n {\n d: 'M19.38 19A11.6 11.6 0 0021 13l-8.188-3.639a2 2 0 00-1.624 0L3 13.001a11.6 11.6 0 002.81 7.76',\n key: '1kdp0u',\n },\n ],\n [\n 'path',\n {\n d: 'M2 20c.6.5 1.2 1 2.5 1 2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1s1.2 1 2.5 1c2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1',\n key: '1l8w7g',\n },\n ],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Ship\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTIgMnYyIiAvPgogIDxwYXRoIGQ9Ik0xMiA5LjE4OVYxMyIgLz4KICA8cGF0aCBkPSJNMTkgMTJWNmEyIDIgMCAwMC0yLTJIN2EyIDIgMCAwMC0yIDJ2NiIgLz4KICA8cGF0aCBkPSJNMTkuMzggMTlBMTEuNiAxMS42IDAgMDAyMSAxM2wtOC4xODgtMy42MzlhMiAyIDAgMDAtMS42MjQgMEwzIDEzLjAwMWExMS42IDExLjYgMCAwMDIuODEgNy43NiIgLz4KICA8cGF0aCBkPSJNMiAyMGMuNi41IDEuMiAxIDIuNSAxIDIuNSAwIDIuNS0yIDUtMiAxLjMgMCAxLjkuNSAyLjUgMXMxLjIgMSAyLjUgMWMyLjUgMCAyLjUtMiA1LTIgMS4zIDAgMS45LjUgMi41IDEiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/ship\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Ship = createLucideIcon(__iconData);\n\nexport default Ship;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'sliders-horizontal',\n size: 24,\n node: [\n ['path', { d: 'M10 5H3', key: '1qgfaw' }],\n ['path', { d: 'M12 19H3', key: 'yhmn1j' }],\n ['path', { d: 'M14 3v4', key: '1sua03' }],\n ['path', { d: 'M16 17v4', key: '1q0r14' }],\n ['path', { d: 'M21 12h-9', key: '1o4lsq' }],\n ['path', { d: 'M21 19h-5', key: '1rlt1p' }],\n ['path', { d: 'M21 5h-7', key: '1oszz2' }],\n ['path', { d: 'M8 10v4', key: 'tgpxqk' }],\n ['path', { d: 'M8 12H3', key: 'a7s4jb' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name SlidersHorizontal\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTAgNUgzIiAvPgogIDxwYXRoIGQ9Ik0xMiAxOUgzIiAvPgogIDxwYXRoIGQ9Ik0xNCAzdjQiIC8+CiAgPHBhdGggZD0iTTE2IDE3djQiIC8+CiAgPHBhdGggZD0iTTIxIDEyaC05IiAvPgogIDxwYXRoIGQ9Ik0yMSAxOWgtNSIgLz4KICA8cGF0aCBkPSJNMjEgNWgtNyIgLz4KICA8cGF0aCBkPSJNOCAxMHY0IiAvPgogIDxwYXRoIGQ9Ik04IDEySDMiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/sliders-horizontal\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst SlidersHorizontal = createLucideIcon(__iconData);\n\nexport default SlidersHorizontal;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'shopping-basket',\n size: 24,\n node: [\n ['path', { d: 'm15 11-1 9', key: '5wnq3a' }],\n ['path', { d: 'm19 11-4-7', key: 'cnml18' }],\n ['path', { d: 'M2 11h20', key: '3eubbj' }],\n ['path', { d: 'm3.5 11 1.6 7.4a2 2 0 0 0 2 1.6h9.8a2 2 0 0 0 2-1.6l1.7-7.4', key: 'yiazzp' }],\n ['path', { d: 'M4.5 15.5h15', key: '13mye1' }],\n ['path', { d: 'm5 11 4-7', key: '116ra9' }],\n ['path', { d: 'm9 11 1 9', key: '1ojof7' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name ShoppingBasket\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJtMTUgMTEtMSA5IiAvPgogIDxwYXRoIGQ9Im0xOSAxMS00LTciIC8+CiAgPHBhdGggZD0iTTIgMTFoMjAiIC8+CiAgPHBhdGggZD0ibTMuNSAxMSAxLjYgNy40YTIgMiAwIDAgMCAyIDEuNmg5LjhhMiAyIDAgMCAwIDItMS42bDEuNy03LjQiIC8+CiAgPHBhdGggZD0iTTQuNSAxNS41aDE1IiAvPgogIDxwYXRoIGQ9Im01IDExIDQtNyIgLz4KICA8cGF0aCBkPSJtOSAxMSAxIDkiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/shopping-basket\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst ShoppingBasket = createLucideIcon(__iconData);\n\nexport default ShoppingBasket;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'user-round',\n size: 24,\n node: [\n ['circle', { cx: '12', cy: '8', r: '5', key: '1hypcn' }],\n ['path', { d: 'M20 21a8 8 0 0 0-16 0', key: 'rfgkzh' }],\n ],\n aliases: ['user-2'],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name UserRound\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjgiIHI9IjUiIC8+CiAgPHBhdGggZD0iTTIwIDIxYTggOCAwIDAgMC0xNiAwIiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/user-round\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst UserRound = createLucideIcon(__iconData);\n\nexport default UserRound;\n","import { cache } from 'react';\n\nimport type { GatewayApi } from '../../../../lib/gateway-api/gateway-api';\nimport { refusalCodeOf, refusalMessageOf } from '../../../../lib/gateway-api/page-api';\nimport type { YourFleet } from '../services/your-fleet';\n\n/**\n * What Bridge read of Your fleet: the fleet as the account reads it; that the\n * fleet does not let the account read it, so the panel is left out; or that\n * it cannot be read now, saying why.\n */\nexport type FleetRead = { kind: 'read'; value: YourFleet } | { kind: 'forbidden' } | { kind: 'unreadable'; message: string };\n\n/**\n * Your fleet, read through the gateway's API as the signed-in account, once\n * per page: the shell's alert count and the page share the read. A sign-in\n * that ended is thrown on, so the page sends the person to sign in again.\n */\nexport const readYourFleet = cache(async (api: GatewayApi): Promise<FleetRead> => {\n try {\n return { kind: 'read', value: await api.people.yourFleet.query() };\n } catch (error) {\n const code = refusalCodeOf(error);\n if (code === 'FORBIDDEN') {\n return { kind: 'forbidden' };\n }\n if (code === 'UNAUTHORIZED') {\n throw error;\n }\n return { kind: 'unreadable', message: code === undefined ? 'The gateway did not answer.' : refusalMessageOf(error) };\n }\n});\n","/** The phone's Fleet tab, and the page Your fleet on Bridge home leads to. */\nexport const BRIDGE_FLEET_PATH = '/bridge/fleet';\n","/**\n * What Bridge's pages show, read through the gateway's API as the signed-in\n * account (docs/design/bridge; decision 0056): Bridge home, a page of the\n * record for Done, Bridge's settings: the requests to decide for an\n * approver and the requests they asked, and where things show: each job's\n * places, the channels that wake the person and their Slack link. A part the\n * API refuses the account (FORBIDDEN) is not theirs to see, so it is left\n * out.\n */\nimport { cache } from 'react';\n\nimport type { GatewayApi } from '../../../lib/gateway-api/gateway-api';\nimport { readYourFleet } from '../fleet/hooks/read-your-fleet';\nimport { refusalCodeOf } from '../../../lib/gateway-api/page-api';\nimport type { ArgoInboxNotice } from '../services/argo-inbox-notice';\nimport type { ArgoSection } from '../services/argo-section';\nimport type { WhoDidNotAnswer } from '../ui/unreadable-banner';\nimport type { WakeChannels } from '../services/deliveries';\nimport type { BasketView } from '../services/basket';\nimport type { BridgeHome, RecordPage } from '../services/items';\nimport type { ShownRequest } from '../services/requests';\nimport { decidePlacesOf, waitingByJobOf, type RoutedPlace, type RoutingView, type WaitingByJob } from '../services/routing';\nimport { shellCountsOf, type ShellCounts } from '../services/shell';\n\n/** What waits of each job while Bridge home cannot be read: no count is said. */\nconst NOTHING_KNOWN_WAITING: WaitingByJob = { decide: undefined, do: undefined, 'stay-aware': undefined, 'everything-else': undefined };\n\n/**\n * What Bridge read of the person ship: what it answered; none, for an account\n * with no person ship, on which nothing waits; or that the record cannot be\n * read now, saying why. Nothing was acknowledged then, so nothing is lost.\n */\nexport type BridgeRead<T> = { kind: 'read'; value: T } | { kind: 'none' } | { kind: 'unreadable'; whoDidNotAnswer: WhoDidNotAnswer };\n\nexport interface BridgeSettingsParts {\n readonly toDecide: readonly ShownRequest[] | undefined;\n readonly mine: readonly ShownRequest[] | undefined;\n}\n\n/** Where things show (Bridge, section 8): each job's places, and the places' own state. */\nexport interface BridgeRoutingParts {\n readonly routing: RoutingView | undefined;\n /** The channels that can wake the person when something waits for their person ship (wake a person, W8). */\n readonly wakeChannels: WakeChannels | undefined;\n /** The person's Slack link (gateway scopes 9.6); none while the fleet's own bot is not in Slack. */\n readonly slackLink: SlackLink | null | undefined;\n /** The chats connected through the gateway as the person ship, by name. */\n readonly chats: readonly string[];\n /** What already waits of each job, for the toast after a change; none known while Bridge home cannot be read. */\n readonly waitingByJob: WaitingByJob;\n}\n\n/** Why Slack shows the person nothing now, as the gateway answers it: the fleet's own bot, by its name, was removed in Slack. */\nexport type SlackDroppedOut = NonNullable<Awaited<ReturnType<GatewayApi['slack']['droppedOut']['query']>>>;\n\n/** A person's Slack link as the gateway answers it: the workspace, and the Slack name linked, none while unlinked. */\nexport type SlackLink = NonNullable<Awaited<ReturnType<GatewayApi['slack']['link']['query']>>>;\n\nasync function unlessForbidden<T>(call: Promise<T>): Promise<T | undefined> {\n try {\n return await call;\n } catch (error) {\n if (refusalCodeOf(error) === 'FORBIDDEN') {\n return undefined;\n }\n throw error;\n }\n}\n\n/** When a part was read, now, for the browser to keep it as last read; none while the record cannot be read. */\nexport function readTimeOf(read: BridgeRead<unknown>): string | undefined {\n return read.kind === 'unreadable' ? undefined : new Date().toISOString();\n}\n\n/** A read of the person ship: a sign-in that ended is thrown on, so the page sends the person to sign in again. */\nasync function personRead<T>(call: Promise<T>): Promise<BridgeRead<T>> {\n try {\n return { kind: 'read', value: await call };\n } catch (error) {\n const code = refusalCodeOf(error);\n if (code === 'FORBIDDEN') {\n return { kind: 'none' };\n }\n if (code === 'UNAUTHORIZED') {\n throw error;\n }\n // Core's own words stay out of the page: the banner says it once (states.html).\n return { kind: 'unreadable', whoDidNotAnswer: code === undefined ? 'gateway' : 'fleet' };\n }\n}\n\n/** Bridge home, read once per page: the shell's counts and home's lists share the read. */\nexport const readBridgeHome = cache((api: GatewayApi): Promise<BridgeRead<BridgeHome>> => personRead(api.people.home.query()));\n\n/** Bridge home's notice of argo's read rule; none while the gateway does not answer it, as home shows without it. */\nexport async function readArgoInboxNotice(api: GatewayApi): Promise<ArgoInboxNotice> {\n try {\n return await api.people.argoInboxNotice.query();\n } catch {\n return { kind: 'none' };\n }\n}\n\n/** Bridge's argo section, read once per page: the shell's count and home's section share the read. None for an account not allowed as argo, or while the gateway does not answer it, as Bridge shows without it. */\nexport const readArgoSection = cache(async (api: GatewayApi): Promise<ArgoSection | null> => {\n try {\n return await api.people.argoSection.query();\n } catch {\n return null;\n }\n});\n\n\n/**\n * Why Slack shows the person nothing now, if it dropped out (Bridge, section\n * 9): null while it did not, or for an account the API refuses it to;\n * undefined while it cannot be read now, so Bridge goes on saying what it\n * last read. The person's own reads say whether their sign-in ended.\n */\nexport async function readSlackDroppedOut(api: GatewayApi): Promise<SlackDroppedOut | null | undefined> {\n try {\n return await api.slack.droppedOut.query();\n } catch (error) {\n return refusalCodeOf(error) === 'FORBIDDEN' ? null : undefined;\n }\n}\n\n/** The places besides Bridge that show a question, for an opened question to name; none while routing cannot be read, as the question shows without them. */\nexport async function readDecidePlaces(api: GatewayApi): Promise<RoutedPlace[] | undefined> {\n try {\n return decidePlacesOf(await api.people.routing.query());\n } catch {\n return undefined;\n }\n}\n\nexport function readBasket(api: GatewayApi): Promise<BridgeRead<BasketView>> {\n return personRead(api.people.basket.query());\n}\n\n/** How many answers the basket holds, for the navigation: none for an account with no person ship, or while it cannot be read now. */\nexport async function readBasketCount(api: GatewayApi): Promise<number> {\n const read = await personRead(api.people.basketCount.query());\n return read.kind === 'read' ? read.value.count : 0;\n}\n\n/**\n * The counts Bridge's shell shows on every page: what waits and the unseen\n * to stay aware of, from Bridge home's read, the basket's answers, the\n * ships with an alert, from Your fleet's read, and what waits at argo. A count it cannot read now is\n * left out.\n */\nexport async function readShellCounts(api: GatewayApi): Promise<ShellCounts> {\n const [home, basket, fleet, argo] = await Promise.all([readBridgeHome(api), readBasketCount(api), readYourFleet(api), readArgoSection(api)]);\n return shellCountsOf({ home, basket, fleetAlerts: fleet.kind === 'read' ? fleet.value.counts.alert : undefined, argo: argo?.count });\n}\n\nexport function readRecordPage(api: GatewayApi, cursor: string | null): Promise<BridgeRead<RecordPage>> {\n return personRead(api.people.record.query({ cursor }));\n}\n\nexport async function readBridgeSettings(api: GatewayApi): Promise<BridgeSettingsParts> {\n const [toDecide, mine] = await Promise.all([unlessForbidden(api.requests.toDecide.query()), unlessForbidden(api.requests.mine.query())]);\n return { toDecide, mine };\n}\n\nexport async function readBridgeRouting(api: GatewayApi): Promise<BridgeRoutingParts> {\n const [routing, wakeChannels, slackLink, chats, home] = await Promise.all([\n unlessForbidden(api.people.routing.query()),\n unlessForbidden(api.people.wakeChannels.query()),\n unlessForbidden(api.slack.link.query()),\n unlessForbidden(api.people.chats.query()),\n readBridgeHome(api),\n ]);\n const waitingByJob = home.kind === 'read' ? waitingByJobOf({ waiting: home.value.waiting.items, stayAware: home.value.stayAware.length }) : NOTHING_KNOWN_WAITING;\n return { routing, wakeChannels, slackLink, chats: chats?.names ?? [], waitingByJob };\n}\n\n/** One request to decide, undefined once it no longer waits, and the queue beside it. */\nexport async function readRequestToDecide(api: GatewayApi, requestId: string): Promise<{ request: ShownRequest | undefined; toDecide: readonly ShownRequest[] }> {\n const toDecide = (await unlessForbidden(api.requests.toDecide.query())) ?? [];\n return { request: toDecide.find((open) => open.requestId === requestId), toDecide };\n}\n","/**\n * Where things show as Bridge's routing page shows it (Bridge, section 8;\n * the routing mockup): the jobs and places by the names the person reads,\n * each place card's state and its one action, and the toast that says what\n * a change does (CC20).\n */\nimport type { inferRouterOutputs } from '@trpc/server';\n\nimport type { GatewayRouter } from '../../../../src/adapters/trpc/router.js';\n\n/** Where each job shows besides Bridge, per place, as the API answers it. */\nexport type RoutingView = inferRouterOutputs<GatewayRouter>['people']['routing'];\nexport type RoutedJob = RoutingView['jobs'][number]['job'];\nexport type RoutedPlace = keyof RoutingView['offered'];\n\nexport const ROUTED_PLACES: readonly RoutedPlace[] = ['slack', 'chat', 'web-push', 'email'];\n\nexport const JOB_NAMES: Readonly<Record<RoutedJob, { readonly name: string; readonly holds: string; readonly item: string; readonly items: string }>> = {\n decide: { name: 'Decide', holds: 'Questions from your ships', item: 'question', items: 'questions' },\n do: { name: 'Do what only you can', holds: 'Steps: sign in, create, approve', item: 'step', items: 'steps' },\n 'stay-aware': { name: 'Stay aware', holds: 'Alerts and notices', item: 'alert or notice', items: 'alerts and notices' },\n 'everything-else': { name: 'Everything else', holds: 'Replies and other messages', item: 'message', items: 'messages' },\n};\n\nexport const PLACE_NAMES: Readonly<Record<RoutedPlace, string>> = { slack: 'Slack', chat: 'A chat', 'web-push': 'Web push', email: 'Email' };\n\n/** The jobs that wait on the person, which email's Turn on wakes them for: email says only that something waits. */\nconst WAITING_JOBS: readonly RoutedJob[] = ['decide', 'do'];\n\nconst KEEPS_EVERY_ITEM = 'Bridge keeps every item.';\n\n/** What the toast after a change says: its title, and what the place now shows. */\nexport interface RoutingToast {\n readonly title: string;\n readonly detail: string;\n}\n\n/** What already waits of each job: the count in what waits, the unseen to stay aware of; none for everything else, which does not wait. */\nexport type WaitingByJob = Readonly<Record<RoutedJob, number | undefined>>;\n\nexport function waitingByJobOf({ waiting, stayAware }: { waiting: readonly { readonly job: RoutedJob }[]; stayAware: number }): WaitingByJob {\n const countOf = (job: RoutedJob) => waiting.filter((item) => item.job === job).length;\n return { decide: countOf('decide'), do: countOf('do'), 'stay-aware': stayAware, 'everything-else': undefined };\n}\n\n/** The sentence on what stays where it is: those already waiting stay in Bridge, and in a chat while one shows the job; none when nothing waits. */\nfunction alreadyWaitingOf(waiting: number | undefined, isChatOn: boolean): string {\n if (waiting === undefined || waiting === 0) {\n return '';\n }\n const where = isChatOn ? 'in Bridge and in a chat' : 'in Bridge';\n return ` The ${String(waiting)} already waiting ${waiting === 1 ? 'stays' : 'stay'} ${where}.`;\n}\n\n/**\n * What turning a place on or off for a job does (CC20): a chat lists every\n * item not done; a place that pushes shows only what arrives from now on,\n * those already waiting staying where they are; Slack off for everything\n * else still shows a bot ship's messages (Bots only).\n */\nexport function turnedToastOf(change: { job: RoutedJob; place: RoutedPlace; isOn: boolean; waiting: number | undefined; isChatOn: boolean }): RoutingToast {\n const { job, place, isOn, waiting, isChatOn } = change;\n const { name, item, items } = JOB_NAMES[job];\n const title = `${PLACE_NAMES[place]} is ${isOn ? 'on' : 'off'} for ${name}`;\n if (!isOn) {\n return { title, detail: job === 'everything-else' && place === 'slack' ? `Bots only: a bot ship's messages and replies to Slack still show there. ${KEEPS_EVERY_ITEM}` : KEEPS_EVERY_ITEM };\n }\n if (place === 'chat') {\n return { title, detail: `A chat lists every ${item} not done when you ask it.` };\n }\n return { title, detail: `${PLACE_NAMES[place]} shows ${items} that arrive from now on.${alreadyWaitingOf(waiting, isChatOn)}` };\n}\n\n/** A place card's one action: none, or the one its state offers. */\nexport type PlaceAction = 'none' | 'link' | 'unlink' | 'remove' | 'turnOn' | 'turnOff';\n\n/** A place card as the page draws it: its state in a badge, what it does, and its one action. */\nexport interface PlaceCard {\n readonly state: { readonly label: string; readonly isOk: boolean };\n readonly description: string;\n readonly action: PlaceAction;\n}\n\nconst NOT_OFFERED = { label: 'Not offered', isOk: false } as const;\nconst OFF = { label: 'Off', isOk: false } as const;\nconst WAKE_SAYS = 'Says only that something waits, with a link here.';\nconst WAKE_OFF = `${WAKE_SAYS} Nothing is on until you turn it on.`;\nconst CHAT_LISTS = 'through the gateway. Lists what waits when you ask it.';\n\n/** Slack's card: linked as the person's Slack name, not linked yet, or no workspace in the fleet. */\nexport function slackCardOf(slack: { workspaceName: string; link: { slackName: string } | null } | null): PlaceCard {\n if (slack === null) {\n return { state: { label: 'Not connected', isOk: false }, description: 'This fleet has no Slack workspace.', action: 'none' };\n }\n const { workspaceName, link } = slack;\n return link === null\n ? { state: { label: 'Not linked', isOk: false }, description: `Link your Slack account in ${workspaceName} to see items there and answer them.`, action: 'link' }\n : { state: { label: 'Linked', isOk: true }, description: `As @${link.slackName} in ${workspaceName}. A button press or a thread reply there is yours.`, action: 'unlink' };\n}\n\n/** A chat's card: connected, naming the chats signed in as the person, or not connected. */\nexport function chatCardOf(names: readonly string[]): PlaceCard {\n return names.length === 0\n ? { state: { label: 'Not connected', isOk: false }, description: `claude.ai or another MCP client, ${CHAT_LISTS}`, action: 'none' }\n : { state: { label: 'Connected', isOk: true }, description: `${new Intl.ListFormat('en', { type: 'conjunction' }).format(names)}, ${CHAT_LISTS}`, action: 'none' };\n}\n\n/** Web push's card, about this browser: on here, off here, a browser that takes none, or a gateway that sends none. */\nexport function webPushCardOf(webPush: {\n isOffered: boolean;\n isTaken: boolean;\n ownEndpoint: string | undefined;\n browsers: readonly { readonly endpoint: string; readonly browser: string; readonly isGone: boolean }[];\n}): PlaceCard {\n if (!webPush.isOffered) {\n return { state: NOT_OFFERED, description: 'This gateway sends no web push.', action: 'none' };\n }\n if (!webPush.isTaken) {\n return { state: OFF, description: 'This browser takes no web push.', action: 'none' };\n }\n const own = webPush.browsers.find(({ endpoint, isGone }) => endpoint === webPush.ownEndpoint && !isGone);\n return own === undefined ? { state: OFF, description: WAKE_OFF, action: 'turnOn' } : { state: { label: 'This browser', isOk: true }, description: `${own.browser}. ${WAKE_SAYS}`, action: 'remove' };\n}\n\n/** Email's card: on while any job wakes by email, else off; or a gateway that sends none. */\nexport function emailCardOf({ isOffered, isOnForAnyJob }: { isOffered: boolean; isOnForAnyJob: boolean }): PlaceCard {\n if (!isOffered) {\n return { state: NOT_OFFERED, description: 'This gateway sends no email.', action: 'none' };\n }\n return isOnForAnyJob ? { state: { label: 'On', isOk: true }, description: WAKE_SAYS, action: 'turnOff' } : { state: OFF, description: WAKE_OFF, action: 'turnOn' };\n}\n\n/** What email's Turn on and Turn off change: on for what waits on the person where it is off; off for every job it is on for. */\nexport function emailTurnsOf(routing: Pick<RoutingView, 'jobs'>, isOn: boolean): { job: RoutedJob; place: 'email'; isOn: boolean }[] {\n return routing.jobs.filter(({ job, places }) => places.email !== isOn && (!isOn || WAITING_JOBS.includes(job))).map(({ job }) => ({ job, place: 'email', isOn }));\n}\n\n/** The places as a sentence names them after Bridge. */\nconst PLACE_WORDS: Readonly<Record<RoutedPlace, string>> = { slack: 'Slack', chat: 'a chat', 'web-push': 'web push', email: 'email' };\n\n/** The places besides Bridge that show a question: those routing has on for Decide that the gateway offers, in routing's order. */\nexport function decidePlacesOf(routing: RoutingView): RoutedPlace[] {\n const decide = routing.jobs.find(({ job }) => job === 'decide');\n return ROUTED_PLACES.filter((place) => routing.offered[place] && decide?.places[place] === true);\n}\n\n/** Where an opened question shows (decide.html): Bridge and the places on for Decide, and that one answer counts wherever it is given. */\nexport function shownInOf(places: readonly RoutedPlace[]): string {\n const named = ['Bridge', ...places.map((place) => PLACE_WORDS[place])];\n const last = named.at(-1);\n const list = named.length === 1 ? 'Bridge' : `${named.slice(0, -1).join(', ')} and ${String(last)}`;\n return `Shows in ${list}, as Where things show sets for Decide. One answer, wherever you give it.`;\n}\n","/**\n * Bridge's shell (docs/design/bridge/mockups): the screen in view named as\n * the sidebar names it, in the breadcrumb on desktop and as the phone's\n * screen title, with a back chevron where it leads back to home, and the\n * phone's tab it is under. Pure view logic, no React and no API client.\n */\nimport type { HomeItem } from './items';\n\n/** Bridge's pages, each a screen of the shell. */\nexport type BridgeScreen = 'home' | 'basket' | 'stay-aware' | 'done' | 'fleet' | 'routing' | 'settings';\n\n/** The phone's four tabs. */\nexport type PhoneTab = 'waiting' | 'aware' | 'done' | 'fleet';\n\nexport interface ScreenNaming {\n readonly name: string;\n /** Whether the phone's title leads back to home with a back chevron. */\n readonly hasBack: boolean;\n /** The phone's tab shown current; none for a page under no tab, such as the settings. */\n readonly tab: PhoneTab | null;\n}\n\nconst SCREENS: Record<BridgeScreen, ScreenNaming> = {\n home: { name: 'Bridge', hasBack: false, tab: 'waiting' },\n basket: { name: 'Basket', hasBack: true, tab: 'waiting' },\n 'stay-aware': { name: 'Stay aware', hasBack: false, tab: 'aware' },\n done: { name: 'Done', hasBack: false, tab: 'done' },\n fleet: { name: 'Your fleet', hasBack: false, tab: 'fleet' },\n routing: { name: 'Where things show', hasBack: true, tab: null },\n settings: { name: 'Settings', hasBack: true, tab: null },\n};\n\nconst OPENED: Record<HomeItem['job'], string> = {\n decide: 'Question',\n do: 'Step',\n 'stay-aware': 'Stay aware',\n 'everything-else': 'Message',\n};\n\nexport function screenOf(screen: BridgeScreen): ScreenNaming {\n return SCREENS[screen];\n}\n\n/** The phone's title while an item is open in place of its list, by its job. */\nexport function openedScreenOf(job: HomeItem['job']): string {\n return OPENED[job];\n}\n\n/** The counts the shell shows: what waits, the unseen to stay aware of, the basket's answers and the ships with an alert; one not known now is left out. */\nexport interface ShellCounts {\n readonly waiting: number | undefined;\n readonly stayAware: number | undefined;\n readonly basket: number;\n readonly fleetAlerts: number | undefined;\n /** What waits at argo, apart from what waits on the person (argo's inbox, AI4); none for an account not allowed as argo. */\n readonly argo?: number;\n}\n\n/** Bridge home as the shell reads it: its counts, none for an account with no person ship, or not readable now. */\nexport type HomeForCounts =\n | { readonly kind: 'read'; readonly value: { readonly waiting: { readonly count: number }; readonly stayAware: readonly { readonly state: string }[] } }\n | { readonly kind: 'none' }\n | { readonly kind: 'unreadable' };\n\n/** What waits as home counts it; of the stay-aware feed only the alerts and notices not seen yet (CC16); what waits at argo in a count of its own. */\nexport function shellCountsOf({ home, basket, fleetAlerts, argo }: { home: HomeForCounts; basket: number; fleetAlerts: number | undefined; argo?: number | undefined }): ShellCounts {\n const others = { basket, fleetAlerts, ...(argo === undefined ? {} : { argo }) };\n switch (home.kind) {\n case 'read':\n return { waiting: home.value.waiting.count, stayAware: home.value.stayAware.filter(({ state }) => state === 'new').length, ...others };\n case 'none':\n return { waiting: 0, stayAware: 0, ...others };\n case 'unreadable':\n return { waiting: undefined, stayAware: undefined, ...others };\n }\n}\n","/**\n * Bridge's argo section (aeolus-fleet docs/design/argo-inbox, AI2 to AI4):\n * what waits at argo, for an account allowed as argo, with its own count,\n * as the gateway's API answers it. Pure view logic, no React and no API\n * client.\n */\nimport type { inferRouterOutputs } from '@trpc/server';\n\nimport type { GatewayRouter } from '../../../../src/adapters/trpc/router.js';\n\nexport type ArgoSection = NonNullable<inferRouterOutputs<GatewayRouter>['people']['argoSection']>;\n\n/** Where the argo section is on Bridge home: the sidebar's entry and the phone's tab lead to it. */\nexport const ARGO_SECTION_ANCHOR = 'argo';\n\n/** An item's one button: a question is answered, anything else opened, in the console as argo (argo's inbox, AI2). */\nexport function argoActionOf({ kind }: Pick<ArgoSection['items'][number], 'kind'>): string {\n return kind === 'question' ? 'Answer in the console as argo' : 'Open in the console as argo';\n}\n\n/** A done message's title as the done line says it, as the mockup draws it: what comes before its first colon, the whole title when it has none. */\nfunction doneTitleOf(title: string): string {\n const [subject = title] = title.split(':', 1);\n return subject.trim() === '' ? title : subject.trim();\n}\n\n/** What the section says of the newest message done at argo: by whom, where, when (its time of day, in UTC, as the mockup says it) and what; shorter on a phone. */\nexport function doneLineOf({ title, at, by, isInConsole }: NonNullable<ArgoSection['done']>, { isPhone }: { isPhone: boolean }): string {\n const who = by === null ? '' : ` by ${by}`;\n const where = isInConsole && !isPhone ? ' in the console' : '';\n const line = `Done at argo${who}${where}, ${new Date(at).toISOString().slice(11, 16)}: ${doneTitleOf(title)}.`;\n return isPhone ? line : `${line} Gone from this list for everyone allowed as argo.`;\n}\n","import type { AppSwitcherModel } from '@aeolus-fleet/common/rules';\nimport { Suspense, type ReactNode } from 'react';\n\nimport type { GatewayApi } from '../../../lib/gateway-api/gateway-api';\nimport { readHeader } from '../../frame/hooks/read-header';\nimport { headerSwitchersOf } from '../../frame/services/header-switchers';\nimport { readTheme } from '../../frame/hooks/read-theme';\nimport { Frame } from '../../frame/ui/frame';\nimport { PlainHeader } from '../../frame/ui/plain-header';\nimport { NoSignIn } from '../../sign-in/ui/no-sign-in';\nimport { readShellCounts } from '../hooks/read-bridge';\nimport type { BridgeScreen } from '../services/shell';\nimport { BridgeSidebar, type ShellCounts } from '../ui/bridge-sidebar';\nimport { BridgeTabs } from '../ui/bridge-tabs';\nimport { KeptRead } from './kept-read';\nimport { ShellFrame, SidebarPerson, type ShellAccount } from './shell-frame';\n\n/** The shell before its counts are read: none shown, the basket left out. */\nconst NO_COUNTS: ShellCounts = { waiting: undefined, stayAware: undefined, basket: 0, fleetAlerts: undefined };\n\n/** The counts once read; while what waits cannot be read, the browser shows them as last read (states.html). */\nasync function Counted({ counts, children }: { counts: Promise<ShellCounts>; children: (counts: ShellCounts) => ReactNode }) {\n const read = await counts;\n return <KeptRead readAt={read.waiting === undefined ? undefined : new Date().toISOString()}>{children(read)}</KeptRead>;\n}\n\n/** The account signed in and the fleet in view by name, as the header's read answers them; none while it cannot be read. */\nasync function readShellPerson(fleetId: string): Promise<{ account: ShellAccount | undefined; fleetName: string | undefined; switcher?: AppSwitcherModel }> {\n const [answer, theme] = await Promise.all([readHeader(), readTheme()]);\n if (answer === undefined) {\n return { account: undefined, fleetName: undefined };\n }\n return {\n account: { email: answer.account.email, accountUrl: answer.apps.find(({ app }) => app === 'account')?.url, theme },\n switcher: headerSwitchersOf(answer).find(({ fleet }) => fleet.id === fleetId),\n fleetName: answer.fleets.find(({ id }) => id === fleetId)?.name,\n };\n}\n\n/**\n * Bridge's shell around each of its pages, in place of the gateway's top\n * bar (docs/design/bridge/mockups; aeolus-fleet#1536): on desktop the\n * sidebar and the top bar with the breadcrumb and Live; on the phone the\n * screen title, the four tabs and the basket's bar above them. Its counts\n * are read beside the page, which shows while they load.\n */\nexport async function BridgeShell({ api, fleetId, screen, children }: { api: GatewayApi; fleetId: string; screen: BridgeScreen; children: ReactNode }) {\n const counts = readShellCounts(api);\n // The counts are awaited where they show, after the person is read: a refusal meanwhile is not left unhandled.\n counts.catch(() => undefined);\n const { account, fleetName, switcher } = await readShellPerson(fleetId);\n const sidebar = (shown: ShellCounts) => (\n <BridgeSidebar switcher={switcher} fleetId={fleetId} screen={screen} counts={shown} accountUrl={account?.accountUrl} foot={account === undefined ? null : <SidebarPerson account={account} fleetName={fleetName} isAllowedAsArgo={shown.argo !== undefined} />} />\n );\n const tabs = (shown: ShellCounts) => <BridgeTabs fleetId={fleetId} screen={screen} counts={shown} />;\n return (\n <div className=\"flex min-h-dvh\">\n <Suspense fallback={sidebar(NO_COUNTS)}>\n <Counted counts={counts}>{sidebar}</Counted>\n </Suspense>\n <div className=\"flex min-w-0 flex-1 flex-col\">\n <ShellFrame fleetId={fleetId} fleetName={fleetName} screen={screen} account={account} switcher={switcher}>\n {children}\n </ShellFrame>\n <Suspense fallback={tabs(NO_COUNTS)}>\n <Counted counts={counts}>{tabs}</Counted>\n </Suspense>\n </div>\n </div>\n );\n}\n\n/** A Bridge page on a gateway that signs no one in: the plain bar and why. */\nexport function BridgeNoSignIn() {\n return (\n <Frame header={<PlainHeader />}>\n <NoSignIn />\n </Frame>\n );\n}\n","import type { AppSwitcherModel } from '@aeolus-fleet/common/rules';\nimport { AppSwitcher } from '@aeolus-fleet/ui';\nimport { Bell, CheckCheck, Globe, Inbox, Route, Ship, ShoppingBasket, SlidersHorizontal, type LucideIcon } from 'lucide-react';\nimport type { ReactNode } from 'react';\n\nimport { inFleet } from '../../../lib/gateway-api/page-account';\nimport { OUTSIDE_PARTIES_PATH } from '../../outside-parties/paths';\nimport { BRIDGE_FLEET_PATH } from '../fleet/paths';\nimport { BRIDGE_BASKET_PATH, BRIDGE_DONE_PATH, BRIDGE_PATH, BRIDGE_ROUTING_PATH, BRIDGE_SETTINGS_PATH, BRIDGE_STAY_AWARE_PATH } from '../paths';\nimport { ARGO_SECTION_ANCHOR } from '../services/argo-section';\nimport type { BridgeScreen, ShellCounts } from '../services/shell';\n\nexport type { ShellCounts };\nimport { ArgoMark } from './argo-mark';\nimport { ShellCount, type CountTone } from './shell-count';\n\n\ninterface Entry {\n readonly key: string;\n readonly label: string;\n readonly href: string;\n readonly Icon: LucideIcon;\n readonly isCurrent: boolean;\n readonly count?: { readonly value: number | undefined; readonly tone: CountTone };\n}\n\nfunction SidebarEntry({ entry }: { entry: Entry }) {\n const { key, label, href, Icon, isCurrent, count } = entry;\n return (\n <a\n href={href}\n data-testid={`bridge-side-${key}`}\n aria-current={isCurrent ? 'page' : undefined}\n className={`flex h-[30px] items-center gap-2.5 rounded-md px-2.5 text-foreground ${isCurrent ? 'bg-accent font-medium [&>svg]:text-primary' : 'hover:bg-accent'}`}\n >\n <Icon aria-hidden className=\"size-4 shrink-0\" />\n {label}\n {count === undefined ? null : <ShellCount count={count.value} tone={count.tone} className=\"ml-auto\" />}\n </a>\n );\n}\n\n/**\n * Bridge's sidebar on desktop: the shared app menu in place of the Bridge mark; Waiting on you,\n * the basket while it holds any (section 9, rule 2), Stay aware, Done and\n * Your fleet, each with its count; for an account allowed as argo, Waits at\n * argo under For argo, with argo's own count (argo's inbox, AI4), leading to\n * home's argo section; the settings: Where things show, the\n * outside parties, and Fleets and account, the account page in the account\n * app; the person at the foot.\n */\nexport function BridgeSidebar({ fleetId, screen, counts, accountUrl, foot, switcher }: { fleetId: string; screen: BridgeScreen; counts: ShellCounts; accountUrl: string | undefined; foot: ReactNode; switcher?: AppSwitcherModel }) {\n const entry = (key: BridgeScreen, rest: Omit<Entry, 'key' | 'isCurrent'>): Entry => ({ key, isCurrent: key === screen, ...rest });\n const pages: Entry[] = [\n entry('home', { label: 'Waiting on you', href: inFleet(BRIDGE_PATH, fleetId), Icon: Inbox, count: { value: counts.waiting, tone: 'waiting' } }),\n ...(counts.basket > 0 || screen === 'basket' ? [entry('basket', { label: 'Basket', href: inFleet(BRIDGE_BASKET_PATH, fleetId), Icon: ShoppingBasket, count: { value: counts.basket, tone: 'basket' } })] : []),\n entry('stay-aware', { label: 'Stay aware', href: inFleet(BRIDGE_STAY_AWARE_PATH, fleetId), Icon: Bell, count: { value: counts.stayAware, tone: 'plain' } }),\n entry('done', { label: 'Done', href: inFleet(BRIDGE_DONE_PATH, fleetId), Icon: CheckCheck }),\n entry('fleet', { label: 'Your fleet', href: inFleet(BRIDGE_FLEET_PATH, fleetId), Icon: Ship, count: { value: counts.fleetAlerts, tone: 'attention' } }),\n ];\n const settings: Entry[] = [\n entry('routing', { label: 'Where things show', href: inFleet(BRIDGE_ROUTING_PATH, fleetId), Icon: Route }),\n { key: 'outside-parties', label: 'Outside parties', href: inFleet(OUTSIDE_PARTIES_PATH, fleetId), Icon: Globe, isCurrent: false },\n ...(accountUrl === undefined ? [] : [{ key: 'account', label: 'Fleets and account', href: accountUrl, Icon: SlidersHorizontal, isCurrent: false }]),\n ];\n return (\n <aside data-testid=\"bridge-sidebar\" className=\"sticky top-0 flex h-dvh w-(--size-sidebar) shrink-0 flex-col gap-0.5 border-r border-border bg-sidebar p-3 text-sidebar-foreground max-sm:hidden\">\n <div className=\"mb-2.5 flex h-10 min-w-0 items-center font-semibold\">\n {switcher === undefined ? (\n <span className=\"flex items-center gap-2.5 px-2\">\n <span className=\"inline-flex size-7 items-center justify-center rounded-md bg-primary text-primary-foreground\">\n <Ship aria-hidden className=\"size-4\" />\n </span>\n Bridge\n </span>\n ) : <AppSwitcher switcher={switcher} layout=\"full\" className=\"min-w-0\" />}\n </div>\n <nav aria-label=\"Bridge\" className=\"flex flex-col gap-0.5\">\n {pages.map((page) => (\n <SidebarEntry key={page.key} entry={page} />\n ))}\n </nav>\n {counts.argo === undefined ? null : (\n <nav aria-label=\"For argo\" className=\"flex flex-col gap-0.5\">\n <span className=\"px-2.5 pt-3.5 pb-1.5 text-caption font-medium text-muted-foreground\">For argo</span>\n <a href={`${inFleet(BRIDGE_PATH, fleetId)}#${ARGO_SECTION_ANCHOR}`} data-testid=\"bridge-side-argo\" className=\"flex h-[30px] items-center gap-2.5 rounded-md px-2.5 text-foreground hover:bg-accent\">\n <ArgoMark className=\"-mx-0.5\" />\n Waits at argo\n <ShellCount count={counts.argo} tone=\"argo\" className=\"ml-auto\" />\n </a>\n </nav>\n )}\n <nav aria-label=\"Settings\" className=\"flex flex-col gap-0.5\">\n <a\n href={inFleet(BRIDGE_SETTINGS_PATH, fleetId)}\n data-testid=\"bridge-side-settings\"\n aria-current={screen === 'settings' ? 'page' : undefined}\n className={`px-2.5 pt-3.5 pb-1.5 text-caption font-medium hover:text-foreground ${screen === 'settings' ? 'text-foreground' : 'text-muted-foreground'}`}\n >\n Settings\n </a>\n {settings.map((setting) => (\n <SidebarEntry key={setting.key} entry={setting} />\n ))}\n </nav>\n <div className=\"mt-auto flex min-w-0 items-center gap-2.5 border-t border-border p-2\">{foot}</div>\n </aside>\n );\n}\n","import { classNames } from '@aeolus-fleet/ui';\n\n/** How a count is drawn in the shell: waiting in its tone, the basket filled, alerts in theirs, argo's in the primary colour, anything else plain. */\nexport type CountTone = 'waiting' | 'basket' | 'attention' | 'argo' | 'plain';\n\nconst TONES: Record<CountTone, string> = {\n waiting: 'bg-tone-waiting-bg text-tone-waiting-fg',\n basket: 'bg-primary text-primary-foreground',\n attention: 'bg-tone-attention-bg text-tone-attention-fg',\n argo: 'bg-highlight text-primary',\n plain: 'bg-secondary text-foreground',\n};\n\n/** A count beside an entry of the shell (home.html): none at nought, nor while it is not known. */\nexport function ShellCount({ count, tone, className }: { count: number | undefined; tone: CountTone; className?: string }) {\n if (count === undefined || count === 0) {\n return null;\n }\n return <span className={classNames('inline-flex h-[18px] min-w-[18px] items-center justify-center rounded-full px-[5px] text-micro font-semibold tabular-nums', TONES[tone], className)}>{count}</span>;\n}\n","import { Bell, CheckCheck, Inbox, Ship, ShoppingBasket, UserRound, type LucideIcon } from 'lucide-react';\n\nimport { inFleet } from '../../../lib/gateway-api/page-account';\nimport { BRIDGE_FLEET_PATH } from '../fleet/paths';\nimport { BRIDGE_BASKET_PATH, BRIDGE_DONE_PATH, BRIDGE_PATH, BRIDGE_STAY_AWARE_PATH } from '../paths';\nimport { ARGO_SECTION_ANCHOR } from '../services/argo-section';\nimport { screenOf, type BridgeScreen, type PhoneTab } from '../services/shell';\nimport type { ShellCounts } from './bridge-sidebar';\nimport { ShellCount, type CountTone } from './shell-count';\n\ninterface Tab {\n readonly key: PhoneTab | 'argo';\n readonly label: string;\n readonly path: string;\n /** A place on the page it leads to. */\n readonly anchor?: string;\n readonly Icon: LucideIcon;\n readonly count?: { readonly value: number | undefined; readonly tone: CountTone };\n}\n\n/** The basket as a bar above the tabs (basket.html; aeolus-fleet#1515): its count, not sent, and the way to it. */\nfunction BasketBar({ fleetId, count }: { fleetId: string; count: number }) {\n return (\n <div data-testid=\"bridge-basket-bar\" className=\"flex items-center gap-2.5 border-t border-border bg-highlight px-3.5 py-2\">\n <ShoppingBasket aria-hidden className=\"size-4 text-primary\" />\n <span>\n <b className=\"font-semibold\">Basket {count}</b> <span className=\"text-muted-foreground\">not sent</span>\n </span>\n <a href={inFleet(BRIDGE_BASKET_PATH, fleetId)} className=\"ml-auto inline-flex h-8 items-center rounded-md bg-primary px-3 font-medium text-primary-foreground hover:bg-primary-hover\">\n Open\n </a>\n </div>\n );\n}\n\n/**\n * The phone's foot (home.html): the basket as a bar while it holds any,\n * except on the basket itself, above four tabs: Waiting, Aware, Done and\n * Fleet, each with its count, the tab the page in view is under current;\n * for an account allowed as argo, argo's tab beside Waiting, with argo's own\n * count, leading to home's argo section (argo's inbox, AI4).\n */\nexport function BridgeTabs({ fleetId, screen, counts }: { fleetId: string; screen: BridgeScreen; counts: ShellCounts }) {\n const { tab: current } = screenOf(screen);\n const tabs: Tab[] = [\n { key: 'waiting', label: 'Waiting', path: BRIDGE_PATH, Icon: Inbox, count: { value: counts.waiting, tone: 'waiting' } },\n ...(counts.argo === undefined ? [] : [{ key: 'argo' as const, label: 'argo', path: BRIDGE_PATH, anchor: ARGO_SECTION_ANCHOR, Icon: UserRound, count: { value: counts.argo, tone: 'argo' as const } }]),\n { key: 'aware', label: 'Aware', path: BRIDGE_STAY_AWARE_PATH, Icon: Bell, count: { value: counts.stayAware, tone: 'plain' } },\n { key: 'done', label: 'Done', path: BRIDGE_DONE_PATH, Icon: CheckCheck },\n { key: 'fleet', label: 'Fleet', path: BRIDGE_FLEET_PATH, Icon: Ship, count: { value: counts.fleetAlerts, tone: 'attention' } },\n ];\n return (\n <div className=\"sticky bottom-0 z-30 bg-background sm:hidden\">\n {counts.basket > 0 && screen !== 'basket' ? <BasketBar fleetId={fleetId} count={counts.basket} /> : null}\n <nav aria-label=\"Bridge\" className=\"flex h-(--size-tabbar) border-t border-border pb-3\">\n {tabs.map(({ key, label, path, anchor, Icon, count }) => (\n <a\n key={key}\n href={anchor === undefined ? inFleet(path, fleetId) : `${inFleet(path, fleetId)}#${anchor}`}\n data-testid={`bridge-tab-${key}`}\n aria-current={key === current ? 'page' : undefined}\n className={`relative flex flex-1 flex-col items-center justify-center gap-1 text-micro font-medium ${key === current ? 'text-primary' : 'text-muted-foreground'}`}\n >\n <Icon aria-hidden className=\"size-(--size-icon-tab)\" />\n {label}\n {count === undefined ? null : <ShellCount count={count.value} tone={count.tone} className=\"absolute top-1 left-[calc(50%+6px)] h-4 min-w-4 text-[10px]\" />}\n </a>\n ))}\n </nav>\n </div>\n );\n}\n","// This file is generated by next-core EcmascriptClientReferenceModule.\nimport { registerClientReference } from \"react-server-dom-turbopack/server\";\nexport const AsLastRead = registerClientReference(\n function() { throw new Error(\"Attempted to call AsLastRead() from the server but AsLastRead is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.\"); },\n \"[project]/web/features/bridge/state/kept-read.tsx\",\n \"AsLastRead\",\n);\nexport const KeptRead = registerClientReference(\n function() { throw new Error(\"Attempted to call KeptRead() from the server but KeptRead is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.\"); },\n \"[project]/web/features/bridge/state/kept-read.tsx\",\n \"KeptRead\",\n);\nexport const useLastReadAt = registerClientReference(\n function() { throw new Error(\"Attempted to call useLastReadAt() from the server but useLastReadAt is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.\"); },\n \"[project]/web/features/bridge/state/kept-read.tsx\",\n \"useLastReadAt\",\n);\n","// This file is generated by next-core EcmascriptClientReferenceModule.\nimport { registerClientReference } from \"react-server-dom-turbopack/server\";\nexport const ShellFrame = registerClientReference(\n function() { throw new Error(\"Attempted to call ShellFrame() from the server but ShellFrame is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.\"); },\n \"[project]/web/features/bridge/state/shell-frame.tsx\",\n \"ShellFrame\",\n);\nexport const SidebarPerson = registerClientReference(\n function() { throw new Error(\"Attempted to call SidebarPerson() from the server but SidebarPerson is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.\"); },\n \"[project]/web/features/bridge/state/shell-frame.tsx\",\n \"SidebarPerson\",\n);\n","import { UserRound } from 'lucide-react';\n\n/** argo's mark (argo-inbox mockups): argo's figure on the highlight, beside what is argo's and not the person's own. */\nexport function ArgoMark({ className = '' }: { className?: string }) {\n return (\n <span aria-hidden=\"true\" className={`inline-flex size-5 shrink-0 items-center justify-center rounded-sm bg-highlight text-primary ${className}`}>\n <UserRound className=\"size-3\" />\n </span>\n );\n}\n"],"names":["readYourFleet","api","kind","value","people","yourFleet","query","error","code","message","undefined","BRIDGE_FLEET_PATH","ROUTED_PLACES","JOB_NAMES","decide","name","holds","item","items","do","PLACE_NAMES","slack","chat","email","WAITING_JOBS","KEEPS_EVERY_ITEM","waitingByJobOf","waiting","stayAware","countOf","job","filter","length","alreadyWaitingOf","isChatOn","where","String","turnedToastOf","change","place","isOn","title","detail","NOT_OFFERED","label","isOk","OFF","WAKE_SAYS","WAKE_OFF","CHAT_LISTS","slackCardOf","state","description","action","workspaceName","link","slackName","chatCardOf","names","Intl","ListFormat","type","format","webPushCardOf","webPush","isOffered","isTaken","own","browsers","find","endpoint","isGone","ownEndpoint","browser","emailCardOf","isOnForAnyJob","emailTurnsOf","routing","jobs","places","includes","map","PLACE_WORDS","decidePlacesOf","offered","shownInOf","named","last","at","list","slice","join","ARGO_SECTION_ANCHOR","argoActionOf","doneTitleOf","subject","split","trim","doneLineOf","by","isInConsole","isPhone","who","line","Date","toISOString","TONES","basket","attention","argo","plain","ShellCount","count","tone","className","AsLastRead","Error","KeptRead","useLastReadAt","ShellFrame","SidebarPerson","ArgoMark"],"mappings":"yUCaM,SAQiD,CAavD,CAAA,ACAA,CDAA,ACAA,CDAA,ACAA,CAAA,ADAA,ACAA,CAAA,ADAA,CCAA,CAAA,EAAA,EAAA,CAAA,EAAA,+KCNmB,CAAA,ADhBN,ADAA,CEgBM,CAAA,CAAA,CAAA,AAAiB,CAAjB,AAAiB,CAAjB,AAAiB,CAAjB,AAAiB,CAAjB,AAAiB,CAAjB,AAAiB,CAAjB,AAAiB,CAAjB,AAAiB,CAAA,AAAjB,CAAA,AAAiB,CAAjB,AAA2B,CAAA,+FCrBe,CFAlC,6DEC0C,CAAA,AJAnD,CAAA,AIAmD,CAAA,AJAnD,CIAmD,AJAnD,iCICY,IAAA,wJFFuC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,wIAO3E,AAEJ,CAAA,ADAA,oDDb0C,CACxC,CGAA,ADAA,AEAA,AJAA,ACAA,CEAA,AHAA,AIAA,AHAA,ACAA,CFAA,AEAA,ADAA,AGAA,ADAA,CAAA,AFAA,ACAA,AEAA,AJAA,CAAA,sBAGE,UAAW,CAAA,AIAA,AFAV,OFAqB,GAAI,KAAM,EAAG,IAAK,CCA1B,ACAS,AEAa,ADAE,GHAO,WAC7C,WAAc,CGAA,ACAA,AJAA,CIAA,AJAA,AGAA,CCAA,ADAA,AHAA,CIAA,ADAA,AHAA,CIAA,ADAA,AHAA,CIAA,ADAA,AHAA,CIAA,ADAA,AHAA,CIAA,ADAA,AHAA,CIAA,AJAA,AGAA,CAAA,ACAA,AJAA,CAAA,AGAA,ACAA,CJAA,AIAA,ADAA,CAAA,AHAA,AIAA,CJAA,AGAA,ACAA,CJAA,AGAA,ACAA,CJAA,AGAA,ACAA,CAAA,AJAA,AGAA,CAAA,ACAA,AJAA,CGAA,ACAA,AJAA,CIAA,ADAA,AHAA,CGAA,ACAA,AJAA,CGAA,AHAA,AIAA,CDAA,ACAA,AJAA,gCAAwD,CIAA,AJAA,CIAA,AJAA,CIAA,AJAA,CIAA,AJAA,AAAK,CIAL,AJAK,CIAL,AJAK,CAAA,IAAA,CAAS,CAAA,CACpF,CAAC,UAAY,GAAI,CIAH,CAAA,CAAA,CAAA,AJAG,CIAH,AJAG,AAAM,CIAT,AJAS,CIAT,AJAS,CAAI,CIAD,AJAC,CIAD,AJAC,CAAA,AIAD,CJAM,CIAD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,CAAA,ACAA,CDAA,ACAA,CAAA,ADAA,CAAA,ACAA,CAAA,ADAA,CCAA,ADAA,CAAA,CAAA,CAAA,CACN,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CAAA,ACAA,CDAM,CCAA,ADAA,CCAA,ADAA,CACN,ICAA,ADAA,CAAA,ACAA,ADAM,CACJ,SAAW,EAAG,CAAA,ACAA,CAAA,ADAA,CAAA,ACAA,CDAA,ACAA,CAAA,ADAA,CCAA,ADAA,CAAA,ACAA,CAAA,ADAA,CCAA,ADAA,CAAW,ACAX,ADAA,CAAW,ACAX,CDAW,ACAX,EDAgB,CCAF,ADAE,CCAF,ADAE,QAAU,CACxC,SAAW,EAAG,CCAA,ADAA,CCAA,ADAA,CAAA,ACAA,CDAA,ACAA,CAAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CAAA,ACAA,CAAA,ADAA,CCAA,ADAA,AAAY,CCAZ,ADAY,GAAK,CCAH,ADAG,mBACpB,EAAG,CAAA,ACAA,CAAA,ADAA,CAAA,ACAA,CAAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,AAAW,IAAK,UAAU,CACxC,QAAS,CAAA,AAAE,ACAF,EDAK,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,CAAA,ACAA,CDAA,ACAA,CDAA,ACAA,CAAA,ADAA,CCAA,ADAA,CCAA,ADAA,CCAA,ADAA,AAAY,CCAZ,ADAY,CCAZ,ADAY,CCAZ,ADAY,CCAZ,ADAY,AAAK,CAAA,ACAjB,CDAiB,ACAjB,CAAA,ADAiB,CAAA,ACAjB,CAAA,ADAiB,CCAjB,ADAiB,CCAjB,ADAiB,CCAjB,EDA2B,CCA3B,ADCd,CCDc,ADCb,CCDa,ADCb,ACAA,CADa,AACb,ADAA,CCDa,AACb,ADAA,CAAA,ACAA,AADa,CDCb,ACAA,AADa,CACb,ADAA,ACDa,CAAA,ADCb,ACAA,ADAQ,CCDK,ADCL,ACAA,CADK,CDCA,ACDA,CDCA,ACAA,AADA,CDCA,ACAA,AADA,CDCA,ACDA,AACA,CADA,AACA,ADAA,CCDA,ADCA,ACAA,CADA,AACA,ADAA,CCDA,AACA,ADAA,CCDA,AACA,ADAA,CCAA,A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","ignoreList":[0,1,2,3,4,5,6,7,8,19,20]}
@@ -0,0 +1,3 @@
1
+ (()=>{"use strict";module.exports=[83900,37149,62591,86708,a=>{var b=a.i(64831);let c={name:"bell",size:24,node:[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["path",{d:"M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326",key:"11g9vi"}]]};c.node;let d=(0,b.f)(c);a.s(["f",0,d],83900);let e={name:"hash",size:24,node:[["line",{x1:"4",x2:"20",y1:"9",y2:"9",key:"4lhtct"}],["line",{x1:"4",x2:"20",y1:"15",y2:"15",key:"vyu0kd"}],["line",{x1:"10",x2:"8",y1:"3",y2:"21",key:"1ggp8o"}],["line",{x1:"16",x2:"14",y1:"3",y2:"21",key:"weycgp"}]]};e.node;let f=(0,b.f)(e);a.s(["f",0,f],37149);let g={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"}]]};g.node;let h=(0,b.f)(g);a.s(["f",0,h],62591);let i={name:"sparkles",size:24,node:[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]],aliases:["stars"]};i.node;let j=(0,b.f)(i);a.s(["f",0,j],86708)},33540,a=>{var b=a.i(64831);let c={name:"search",size:24,node:[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]};c.node;let d=(0,b.f)(c);a.s(["f",0,d],33540)},20988,a=>{var b=a.i(87924),c=a.i(56672),d=a.i(5759);a.s(["LastReadHeading",0,function(){let a=(0,d.useLastReadAt)();return void 0===a?null:(0,b.jsxs)("div",{className:"max-sm:hidden",children:[(0,b.jsx)("h1",{id:"bridge-waiting-heading",className:"text-heading font-semibold",children:"Waiting on you"}),(0,b.jsx)("p",{className:"text-muted-foreground","data-testid":"bridge-last-read",children:`Last read ${(0,c.C)(a)}`})]})}])}]})();
2
+
3
+ //# sourceMappingURL=_1mg5oon0wpocg._.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../node_modules/lucide-react/src/icons/sparkles.ts","../../../../../node_modules/lucide-react/src/icons/hash.ts","../../../../../node_modules/lucide-react/src/icons/mail.ts","../../../../../node_modules/lucide-react/src/icons/bell.ts","../../../../../node_modules/lucide-react/src/icons/search.ts","../../../../../web/features/bridge/state/last-read-heading.tsx"],"sourcesContent":["import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'sparkles',\n size: 24,\n node: [\n [\n 'path',\n {\n d: 'M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z',\n key: '1s2grr',\n },\n ],\n ['path', { d: 'M20 2v4', key: '1rf3ol' }],\n ['path', { d: 'M22 4h-4', key: 'gwowj6' }],\n ['circle', { cx: '4', cy: '20', r: '2', key: '6kqj1y' }],\n ],\n aliases: ['stars'],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Sparkles\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTEuMDE3IDIuODE0YTEgMSAwIDAgMSAxLjk2NiAwbDEuMDUxIDUuNTU4YTIgMiAwIDAgMCAxLjU5NCAxLjU5NGw1LjU1OCAxLjA1MWExIDEgMCAwIDEgMCAxLjk2NmwtNS41NTggMS4wNTFhMiAyIDAgMCAwLTEuNTk0IDEuNTk0bC0xLjA1MSA1LjU1OGExIDEgMCAwIDEtMS45NjYgMGwtMS4wNTEtNS41NThhMiAyIDAgMCAwLTEuNTk0LTEuNTk0bC01LjU1OC0xLjA1MWExIDEgMCAwIDEgMC0xLjk2Nmw1LjU1OC0xLjA1MWEyIDIgMCAwIDAgMS41OTQtMS41OTR6IiAvPgogIDxwYXRoIGQ9Ik0yMCAydjQiIC8+CiAgPHBhdGggZD0iTTIyIDRoLTQiIC8+CiAgPGNpcmNsZSBjeD0iNCIgY3k9IjIwIiByPSIyIiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/sparkles\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Sparkles = createLucideIcon(__iconData);\n\nexport default Sparkles;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'hash',\n size: 24,\n node: [\n ['line', { x1: '4', x2: '20', y1: '9', y2: '9', key: '4lhtct' }],\n ['line', { x1: '4', x2: '20', y1: '15', y2: '15', key: 'vyu0kd' }],\n ['line', { x1: '10', x2: '8', y1: '3', y2: '21', key: '1ggp8o' }],\n ['line', { x1: '16', x2: '14', y1: '3', y2: '21', key: 'weycgp' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Hash\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8bGluZSB4MT0iNCIgeDI9IjIwIiB5MT0iOSIgeTI9IjkiIC8+CiAgPGxpbmUgeDE9IjQiIHgyPSIyMCIgeTE9IjE1IiB5Mj0iMTUiIC8+CiAgPGxpbmUgeDE9IjEwIiB4Mj0iOCIgeTE9IjMiIHkyPSIyMSIgLz4KICA8bGluZSB4MT0iMTYiIHgyPSIxNCIgeTE9IjMiIHkyPSIyMSIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/hash\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Hash = createLucideIcon(__iconData);\n\nexport default Hash;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'mail',\n size: 24,\n node: [\n ['path', { d: 'm22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7', key: '132q7q' }],\n ['rect', { x: '2', y: '4', width: '20', height: '16', rx: '2', key: 'izxlao' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Mail\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJtMjIgNy04Ljk5MSA1LjcyN2EyIDIgMCAwIDEtMi4wMDkgMEwyIDciIC8+CiAgPHJlY3QgeD0iMiIgeT0iNCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjE2IiByeD0iMiIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/mail\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Mail = createLucideIcon(__iconData);\n\nexport default Mail;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'bell',\n size: 24,\n node: [\n ['path', { d: 'M10.268 21a2 2 0 0 0 3.464 0', key: 'vwvbt9' }],\n [\n 'path',\n {\n d: 'M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326',\n key: '11g9vi',\n },\n ],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Bell\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTAuMjY4IDIxYTIgMiAwIDAgMCAzLjQ2NCAwIiAvPgogIDxwYXRoIGQ9Ik0zLjI2MiAxNS4zMjZBMSAxIDAgMCAwIDQgMTdoMTZhMSAxIDAgMCAwIC43NC0xLjY3M0MxOS40MSAxMy45NTYgMTggMTIuNDk5IDE4IDhBNiA2IDAgMCAwIDYgOGMwIDQuNDk5LTEuNDExIDUuOTU2LTIuNzM4IDcuMzI2IiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/bell\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Bell = createLucideIcon(__iconData);\n\nexport default Bell;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'search',\n size: 24,\n node: [\n ['path', { d: 'm21 21-4.34-4.34', key: '14j7rj' }],\n ['circle', { cx: '11', cy: '11', r: '8', key: '4ej97u' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Search\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJtMjEgMjEtNC4zNC00LjM0IiAvPgogIDxjaXJjbGUgY3g9IjExIiBjeT0iMTEiIHI9IjgiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/search\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Search = createLucideIcon(__iconData);\n\nexport default Search;\n","'use client';\n\nimport { lastReadTimeOf } from '../services/last-read';\nimport { useLastReadAt } from './kept-read';\n\n/**\n * Bridge home's title row as last read, while the record cannot be read\n * (states.html): what waits, and when it was read in place of the count,\n * above the banners; left out on the phone, as its frame draws it. Read now,\n * home's lists carry their own title row.\n */\nexport function LastReadHeading() {\n const lastReadAt = useLastReadAt();\n if (lastReadAt === undefined) {\n return null;\n }\n return (\n <div className=\"max-sm:hidden\">\n <h1 id=\"bridge-waiting-heading\" className=\"text-heading font-semibold\">\n Waiting on you\n </h1>\n <p className=\"text-muted-foreground\" data-testid=\"bridge-last-read\">{`Last read ${lastReadTimeOf(lastReadAt)}`}</p>\n </div>\n );\n}\n"],"names":["LastReadHeading","lastReadAt","undefined","className","id"],"mappings":"kHGOK,CDAA,ADAA,AEAA,CAAA,ADAA,ADAA,CEAA,AFAA,ACAA,CCAA,AFAA,ACAA,CCAA,AFAA,ACAA,CDAA,AEAA,ADAA,CAAA,ADAA,AEAA,gDAA4D,CDAC,ADAC,AEC/D,uJAIS,CFK+B,CAAA,CAAA,CAAA,GEIW,CAAA,CAAA,CAAA,CAAA,aAa1C,EAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,0DF3BrB,CEAD,ADAA,ADAC,CEAD,AFAC,ACAD,CAAA,ADAC,AEAD,CFAC,AEAD,ADAA,ADAM,CEAN,ADAA,ADAM,CEAN,ADAA,ADAM,CCAN,ACAA,AFAM,AAAI,CEAV,AFAU,ACAV,CAAA,ACAA,AFAU,CEAV,ADAA,ADAU,CEAV,ADAA,ADAU,CAAA,ACAV,ACAA,AFAgB,CCAhB,ACAA,CFAgB,ACAhB,ACAA,CDAA,ADAgB,AEAhB,AFAoB,CEApB,ADAA,ADAoB,CAAA,AEApB,ADAA,CCAA,AFAoB,ACApB,CAAA,ADAyB,AEAzB,AFAoB,CCApB,ACAA,AFAyB,CAAA,AEAzB,ADAA,CCAA,AFAyB,ACAzB,kBDAiD,CCAD,CAAA,CAAA,CAAA,CAAA,QDC/C,CAAA,ACAD,CDAC,CAAA,yCACd,OAAQ,CAAA,AAAE,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,AAAM,CAAA,CAAA,CAAA,AAAI,CAAA,CAAA,CAAA,CAAA,AAAK,EAAA,CAAA,AAAI,CAAA,CAAA,CAAA,CAAA,AAAK,CAAA,CAAA,CAAA,AAAI,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAK,AAAL,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,4DAQb,CAAA,CAAA,CAAA,CAAA,yICVW,CAAU,CAAA,YAC1D,IAAK,EAAG,CAAA,ADAF,SCAc,CDAA,ACAA,CDAA,ACAA,CAAA,ADAA,CCAA,ADAA,CAAA,ACAA,OAAc,CAAA,IAAM,GAAI,CDAH,ACAG,CDAH,ACAG,CDAH,ACAG,CAAA,ADAH,ACAQ,IAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,mBAoBrE,CChBA,ADgBA,CAAA,AChBA,ADgBA,CAAA,AChBA,ADgBA,CChBA,ADgBA,CAAA,AChBA,ADgBiB,CAAjB,AChBA,ADgBiB,CChBjB,ADgBA,AAAiB,CAAjB,AAAiB,CAAjB,AAAiB,CAAjB,AAAiB,CAAjB,AAAiB,CAAjB,AAAiB,CAAjB,AAAiB,CAAA,AAAjB,CAA2B,AAA3B,CAA2B,aFzBjC,CEAA,ADAA,AEAA,AHAA,CGAA,AHAA,AEAA,ADAA,CEAA,AFAA,ACAA,AFAA,CGAA,AFAA,ACAA,AFAA,AAAM,CGAN,AFAA,ACAA,AFAA,CAAmC,MAClC,CCAA,ADAA,AEAA,ACAA,CFDK,ACAA,AFAA,AACL,AGAA,AFAA,ACAA,ACDK,CHAA,AECL,ACAA,AFAA,ADAA,ACDK,ACAA,ACAA,CDCL,AADK,ACCL,AFAA,ADAA,ACDK,ADAA,AGAA,CDCL,ACAA,AFAA,ADAA,CEAA,ACAA,AFAA,ADAA,CAAA,CAAA,CAAA,CAAA,CACN,CCAA,ACAA,ACAA,AHAA,CAAA,ACAA,AEAA,ADAA,CCAA,ADAA,ADAA,ADAA,CCAA,ACAA,ACAA,AHAA,CAAM,CAAA,ACAA,ACAA,ACAA,CFAA,ACAA,ACAA,AHAA,CACN,ICAA,ADAA,AEAA,ACAA,CFAA,AEAA,ADAA,AFAA,AAAM,EAEF,CAAA,ACAD,ACAA,CFAC,ACAD,ACAA,CAAA,AFAC,ACAD,CAAA,ACAA,AFAC,CEAD,AFAC,ACAD,CDAC,AEAD,ADAA,EDEG,CAAA,CAAG,CAAA,ACAN,wQDCG,CEIoC,ACJpC,CDIoC,EFJ/B,CEI0C,ACJ5C,AHAE,SAET,CACA,CAAC,OAAQ,CCgBA,ADhBA,AAAE,CCgBF,CAAA,ADhBK,CCgBL,ADhBK,CCgBL,ADhBK,CCgBL,ADhBK,CCgBL,ADhBK,CCgBL,ADhBK,CCgBL,ADhBK,CCgBL,ADhBK,CCgBL,ADhBK,CCgBL,ADhBK,CCgBL,ADhBK,AAAW,IAAK,CCgBJ,ADhBI,CCgBJ,ADhBI,CCgBJ,ADhBI,CCgBJ,ADhBI,CCgBJ,ADhBI,CCgBM,ADhBN,CAAA,ACgBM,CDhBN,CAAU,CAAA,CACxC,CAAC,CAAA,CAAA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","ignoreList":[0,1,2,3,4]}
@@ -1,4 +1,4 @@
1
1
  (()=>{"use strict";module.exports=[13095,(a,b,c)=>{function d(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Error(`A "use server" file can only export async functions, found ${typeof c}.
2
- Read more: https://nextjs.org/docs/messages/invalid-use-server-value`)}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},37936,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(11857)},73290,a=>{var b=a.i(70043);a.S([b,"4050b261d17e2b265fd019f61804f3eae3b8901966,f"],73290)},70043,a=>{var b=a.i(37936),c=a.i(5246),d=a.i(67591);async function e(a){(0,d.x)(a)&&(await (0,c.cookies)()).set(d.g,a,{path:"/",sameSite:"lax",maxAge:31536e3})}(0,a.i(13095).ensureServerEntryExports)([e]),(0,b.registerServerReference)(e,"4050b261d17e2b265fd019f61804f3eae3b8901966",null),a.s(["f",0,e])}]})();
2
+ Read more: https://nextjs.org/docs/messages/invalid-use-server-value`)}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},37936,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(11857)},73290,a=>{var b=a.i(70043);a.S([b,"40ca8029b8207bd47293950b98bdbd89c6c994c5fa,f"],73290)},70043,a=>{var b=a.i(37936),c=a.i(5246),d=a.i(67591);async function e(a){(0,d.x)(a)&&(await (0,c.cookies)()).set(d.g,a,{path:"/",sameSite:"lax",maxAge:31536e3})}(0,a.i(13095).ensureServerEntryExports)([e]),(0,b.registerServerReference)(e,"40ca8029b8207bd47293950b98bdbd89c6c994c5fa",null),a.s(["f",0,e])}]})();
3
3
 
4
4
  //# sourceMappingURL=_1pjtire7rqla0._.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../node_modules/next/src/build/webpack/loaders/next-flight-loader/action-validate.ts","../../../../../node_modules/next/src/build/webpack/loaders/next-flight-loader/server-reference.ts","../../../../../web/.next-internal/server/app/_not-found/page/actions.js%20%28server%20actions%20loader%29","../../../../../web/features/frame/actions.ts"],"sourcesContent":["// This function ensures that all the exported values are valid server actions,\n// during the runtime. By definition all actions are required to be async\n// functions, but here we can only check that they are functions.\nexport function ensureServerEntryExports(actions: any[]) {\n for (let i = 0; i < actions.length; i++) {\n const action = actions[i]\n if (typeof action !== 'function') {\n throw new Error(\n `A \"use server\" file can only export async functions, found ${typeof action}.\\nRead more: https://nextjs.org/docs/messages/invalid-use-server-value`\n )\n }\n }\n}\n","/* eslint-disable import/no-extraneous-dependencies */\nexport { registerServerReference } from 'react-server-dom-webpack/server'\n","export {setTheme as '4050b261d17e2b265fd019f61804f3eae3b8901966'} from 'ACTIONS_MODULE0'\n","'use server';\n\n/** The header's theme choice, kept for this browser for a year. */\nimport { cookies } from 'next/headers';\n\nimport { isTheme, THEME_COOKIE } from './theme';\n\nconst YEAR_SECONDS = 365 * 24 * 60 * 60;\n\nexport async function setTheme(theme: unknown): Promise<void> {\n if (!isTheme(theme)) {\n return;\n }\n (await cookies()).set(THEME_COOKIE, theme, { path: '/', sameSite: 'lax', maxAge: YEAR_SECONDS });\n}\n"],"names":["ensureServerEntryExports","actions","i","length","action","Error","registerServerReference","YEAR_SECONDS","setTheme","theme","set","path","sameSite","maxAge"],"mappings":"mDAGO,SAASA,EAAyBC,CAAc,EACrD,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAQE,MAAM,CAAED,IAAK,CACvC,IAAME,EAASH,CAAO,CAACC,EAAE,CACzB,GAAsB,YAAlB,AAA8B,OAAvBE,EACT,MAAUC,AAAJ,MACJ,CAAC,2DAA2D,EAAE,OAAOD,EAAO;AAAA,oEAAuE,CAAC,CAG1J,CACF,0EATgBJ,2BAAAA,qCAAAA,sBCHoC,OAAA,cAAA,CAAA,EAAA,aAAA,oCAC3CM,0BAAAA,qCAAAA,EAAAA,uBAAuB,YAAQ,CAAA,CAAA,IAAA,cCDxC,IAAA,EAAA,EAAA,CAAA,CAAA,iGCGA,EAAA,EAAA,CAAA,CAAA,MAEA,EAAA,EAAA,CAAA,CAAA,OAIO,eAAeE,EAASC,CAAc,EACtC,CAAA,EAAA,EAAA,CAAA,AAAO,EAACA,IAGb,CAAC,GAHoB,GAGd,CAAA,EAAA,EAAA,OAAA,AAAO,GAAA,CAAE,CAAEC,GAAG,CAAC,EAAA,CAAY,CAAED,EAAO,CAAEE,KAAM,IAAKC,SAAU,MAAOC,OANtD,CAM8DN,KANxD,CAMqE,EAChG,EAPgC,KAAK,mCAEfC,IAAAA,CAAAA,EAAAA,EAAAA,uBAAAA,EAAAA,EAAAA,6CAAAA","ignoreList":[0,1]}
1
+ {"version":3,"sources":["../../../../../node_modules/next/src/build/webpack/loaders/next-flight-loader/action-validate.ts","../../../../../node_modules/next/src/build/webpack/loaders/next-flight-loader/server-reference.ts","../../../../../web/.next-internal/server/app/_not-found/page/actions.js%20%28server%20actions%20loader%29","../../../../../web/features/frame/actions.ts"],"sourcesContent":["// This function ensures that all the exported values are valid server actions,\n// during the runtime. By definition all actions are required to be async\n// functions, but here we can only check that they are functions.\nexport function ensureServerEntryExports(actions: any[]) {\n for (let i = 0; i < actions.length; i++) {\n const action = actions[i]\n if (typeof action !== 'function') {\n throw new Error(\n `A \"use server\" file can only export async functions, found ${typeof action}.\\nRead more: https://nextjs.org/docs/messages/invalid-use-server-value`\n )\n }\n }\n}\n","/* eslint-disable import/no-extraneous-dependencies */\nexport { registerServerReference } from 'react-server-dom-webpack/server'\n","export {setTheme as '40ca8029b8207bd47293950b98bdbd89c6c994c5fa'} from 'ACTIONS_MODULE0'\n","'use server';\n\n/** The header's theme choice, kept for this browser for a year. */\nimport { cookies } from 'next/headers';\n\nimport { isTheme, THEME_COOKIE } from './theme';\n\nconst YEAR_SECONDS = 365 * 24 * 60 * 60;\n\nexport async function setTheme(theme: unknown): Promise<void> {\n if (!isTheme(theme)) {\n return;\n }\n (await cookies()).set(THEME_COOKIE, theme, { path: '/', sameSite: 'lax', maxAge: YEAR_SECONDS });\n}\n"],"names":["ensureServerEntryExports","actions","i","length","action","Error","registerServerReference","YEAR_SECONDS","setTheme","theme","set","path","sameSite","maxAge"],"mappings":"mDAGO,SAASA,EAAyBC,CAAc,EACrD,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAQE,MAAM,CAAED,IAAK,CACvC,IAAME,EAASH,CAAO,CAACC,EAAE,CACzB,GAAsB,YAAlB,AAA8B,OAAvBE,EACT,MAAUC,AAAJ,MACJ,CAAC,2DAA2D,EAAE,OAAOD,EAAO;AAAA,oEAAuE,CAAC,CAG1J,CACF,0EATgBJ,2BAAAA,qCAAAA,sBCHoC,OAAA,cAAA,CAAA,EAAA,aAAA,oCAC3CM,0BAAAA,qCAAAA,EAAAA,uBAAuB,YAAQ,CAAA,CAAA,IAAA,cCDxC,IAAA,EAAA,EAAA,CAAA,CAAA,iGCGA,EAAA,EAAA,CAAA,CAAA,MAEA,EAAA,EAAA,CAAA,CAAA,OAIO,eAAeE,EAASC,CAAc,EACtC,CAAA,EAAA,EAAA,CAAA,AAAO,EAACA,IAGb,CAAC,GAHoB,GAGd,CAAA,EAAA,EAAA,OAAA,AAAO,GAAA,CAAE,CAAEC,GAAG,CAAC,EAAA,CAAY,CAAED,EAAO,CAAEE,KAAM,IAAKC,SAAU,MAAOC,OANtD,CAM8DN,KANxD,CAMqE,EAChG,EAPgC,KAAK,mCAEfC,IAAAA,CAAAA,EAAAA,EAAAA,uBAAAA,EAAAA,EAAAA,6CAAAA","ignoreList":[0,1]}
@@ -1,4 +1,4 @@
1
1
  (()=>{"use strict";module.exports=[13095,(a,b,c)=>{function d(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Error(`A "use server" file can only export async functions, found ${typeof c}.
2
- Read more: https://nextjs.org/docs/messages/invalid-use-server-value`)}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},37936,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(11857)},33170,a=>{var b=a.i(70043);a.S([b,"4050b261d17e2b265fd019f61804f3eae3b8901966,f"],33170)},70043,a=>{var b=a.i(37936),c=a.i(5246),d=a.i(67591);async function e(a){(0,d.x)(a)&&(await (0,c.cookies)()).set(d.g,a,{path:"/",sameSite:"lax",maxAge:31536e3})}(0,a.i(13095).ensureServerEntryExports)([e]),(0,b.registerServerReference)(e,"4050b261d17e2b265fd019f61804f3eae3b8901966",null),a.s(["f",0,e])}]})();
2
+ Read more: https://nextjs.org/docs/messages/invalid-use-server-value`)}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},37936,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(11857)},33170,a=>{var b=a.i(70043);a.S([b,"40ca8029b8207bd47293950b98bdbd89c6c994c5fa,f"],33170)},70043,a=>{var b=a.i(37936),c=a.i(5246),d=a.i(67591);async function e(a){(0,d.x)(a)&&(await (0,c.cookies)()).set(d.g,a,{path:"/",sameSite:"lax",maxAge:31536e3})}(0,a.i(13095).ensureServerEntryExports)([e]),(0,b.registerServerReference)(e,"40ca8029b8207bd47293950b98bdbd89c6c994c5fa",null),a.s(["f",0,e])}]})();
3
3
 
4
4
  //# sourceMappingURL=_1qbsmlji34yph._.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../node_modules/next/src/build/webpack/loaders/next-flight-loader/action-validate.ts","../../../../../node_modules/next/src/build/webpack/loaders/next-flight-loader/server-reference.ts","../../../../../web/.next-internal/server/app/authorize/pick/page/actions.js%20%28server%20actions%20loader%29","../../../../../web/features/frame/actions.ts"],"sourcesContent":["// This function ensures that all the exported values are valid server actions,\n// during the runtime. By definition all actions are required to be async\n// functions, but here we can only check that they are functions.\nexport function ensureServerEntryExports(actions: any[]) {\n for (let i = 0; i < actions.length; i++) {\n const action = actions[i]\n if (typeof action !== 'function') {\n throw new Error(\n `A \"use server\" file can only export async functions, found ${typeof action}.\\nRead more: https://nextjs.org/docs/messages/invalid-use-server-value`\n )\n }\n }\n}\n","/* eslint-disable import/no-extraneous-dependencies */\nexport { registerServerReference } from 'react-server-dom-webpack/server'\n","export {setTheme as '4050b261d17e2b265fd019f61804f3eae3b8901966'} from 'ACTIONS_MODULE0'\n","'use server';\n\n/** The header's theme choice, kept for this browser for a year. */\nimport { cookies } from 'next/headers';\n\nimport { isTheme, THEME_COOKIE } from './theme';\n\nconst YEAR_SECONDS = 365 * 24 * 60 * 60;\n\nexport async function setTheme(theme: unknown): Promise<void> {\n if (!isTheme(theme)) {\n return;\n }\n (await cookies()).set(THEME_COOKIE, theme, { path: '/', sameSite: 'lax', maxAge: YEAR_SECONDS });\n}\n"],"names":["ensureServerEntryExports","actions","i","length","action","Error","registerServerReference","YEAR_SECONDS","setTheme","theme","set","path","sameSite","maxAge"],"mappings":"mDAGO,SAASA,EAAyBC,CAAc,EACrD,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAQE,MAAM,CAAED,IAAK,CACvC,IAAME,EAASH,CAAO,CAACC,EAAE,CACzB,GAAsB,YAAlB,AAA8B,OAAvBE,EACT,MAAUC,AAAJ,MACJ,CAAC,2DAA2D,EAAE,OAAOD,EAAO;AAAA,oEAAuE,CAAC,CAG1J,CACF,0EATgBJ,2BAAAA,qCAAAA,sBCHoC,OAAA,cAAA,CAAA,EAAA,aAAA,oCAC3CM,0BAAAA,qCAAAA,EAAAA,uBAAuB,YAAQ,CAAA,CAAA,IAAA,cCDxC,IAAA,EAAA,EAAA,CAAA,CAAA,iGCGA,EAAA,EAAA,CAAA,CAAA,MAEA,EAAA,EAAA,CAAA,CAAA,OAIO,eAAeE,EAASC,CAAc,EACtC,CAAA,EAAA,EAAA,CAAA,AAAO,EAACA,IAGb,CAAC,GAHoB,GAGd,CAAA,EAAA,EAAA,OAAA,AAAO,GAAA,CAAE,CAAEC,GAAG,CAAC,EAAA,CAAY,CAAED,EAAO,CAAEE,KAAM,IAAKC,SAAU,MAAOC,OANtD,CAM8DN,KANxD,CAMqE,EAChG,EAPgC,KAAK,mCAEfC,IAAAA,CAAAA,EAAAA,EAAAA,uBAAAA,EAAAA,EAAAA,6CAAAA","ignoreList":[0,1]}
1
+ {"version":3,"sources":["../../../../../node_modules/next/src/build/webpack/loaders/next-flight-loader/action-validate.ts","../../../../../node_modules/next/src/build/webpack/loaders/next-flight-loader/server-reference.ts","../../../../../web/.next-internal/server/app/authorize/pick/page/actions.js%20%28server%20actions%20loader%29","../../../../../web/features/frame/actions.ts"],"sourcesContent":["// This function ensures that all the exported values are valid server actions,\n// during the runtime. By definition all actions are required to be async\n// functions, but here we can only check that they are functions.\nexport function ensureServerEntryExports(actions: any[]) {\n for (let i = 0; i < actions.length; i++) {\n const action = actions[i]\n if (typeof action !== 'function') {\n throw new Error(\n `A \"use server\" file can only export async functions, found ${typeof action}.\\nRead more: https://nextjs.org/docs/messages/invalid-use-server-value`\n )\n }\n }\n}\n","/* eslint-disable import/no-extraneous-dependencies */\nexport { registerServerReference } from 'react-server-dom-webpack/server'\n","export {setTheme as '40ca8029b8207bd47293950b98bdbd89c6c994c5fa'} from 'ACTIONS_MODULE0'\n","'use server';\n\n/** The header's theme choice, kept for this browser for a year. */\nimport { cookies } from 'next/headers';\n\nimport { isTheme, THEME_COOKIE } from './theme';\n\nconst YEAR_SECONDS = 365 * 24 * 60 * 60;\n\nexport async function setTheme(theme: unknown): Promise<void> {\n if (!isTheme(theme)) {\n return;\n }\n (await cookies()).set(THEME_COOKIE, theme, { path: '/', sameSite: 'lax', maxAge: YEAR_SECONDS });\n}\n"],"names":["ensureServerEntryExports","actions","i","length","action","Error","registerServerReference","YEAR_SECONDS","setTheme","theme","set","path","sameSite","maxAge"],"mappings":"mDAGO,SAASA,EAAyBC,CAAc,EACrD,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAQE,MAAM,CAAED,IAAK,CACvC,IAAME,EAASH,CAAO,CAACC,EAAE,CACzB,GAAsB,YAAlB,AAA8B,OAAvBE,EACT,MAAUC,AAAJ,MACJ,CAAC,2DAA2D,EAAE,OAAOD,EAAO;AAAA,oEAAuE,CAAC,CAG1J,CACF,0EATgBJ,2BAAAA,qCAAAA,sBCHoC,OAAA,cAAA,CAAA,EAAA,aAAA,oCAC3CM,0BAAAA,qCAAAA,EAAAA,uBAAuB,YAAQ,CAAA,CAAA,IAAA,cCDxC,IAAA,EAAA,EAAA,CAAA,CAAA,iGCGA,EAAA,EAAA,CAAA,CAAA,MAEA,EAAA,EAAA,CAAA,CAAA,OAIO,eAAeE,EAASC,CAAc,EACtC,CAAA,EAAA,EAAA,CAAA,AAAO,EAACA,IAGb,CAAC,GAHoB,GAGd,CAAA,EAAA,EAAA,OAAA,AAAO,GAAA,CAAE,CAAEC,GAAG,CAAC,EAAA,CAAY,CAAED,EAAO,CAAEE,KAAM,IAAKC,SAAU,MAAOC,OANtD,CAM8DN,KANxD,CAMqE,EAChG,EAPgC,KAAK,mCAEfC,IAAAA,CAAAA,EAAAA,EAAAA,uBAAAA,EAAAA,EAAAA,6CAAAA","ignoreList":[0,1]}
@@ -0,0 +1,3 @@
1
+ (()=>{"use strict";module.exports=[22432,21817,43256,27350,a=>{var b=a.i(82360);a.s(["f",0,b],22432),a.s(["f",0,b],21817),a.s(["f",0,b],43256),a.s(["f",0,b],27350)},30587,a=>{a.s(["H",0,"fleet","Q",0,{kind:"idle"}])},31614,a=>{var b=a.i(87924),c=a.i(72131),d=a.i(30587),e=a.i(36855),f=a.i(77237);a.s(["ActionForm",0,function({action:a,fleetId:g,children:h,submit:i,className:j="grid gap-3",testId:k}){let[l,m]=(0,c.useActionState)(a,d.Q);return(0,b.jsxs)("form",{action:m,className:j,"data-testid":k,children:[(0,b.jsx)("input",{type:"hidden",name:d.H,value:g}),h,(0,b.jsx)("div",{children:(0,b.jsx)(f.f,{pending:i.pending,...void 0===i.kind?{}:{kind:i.kind},children:i.label})}),(0,b.jsx)(e.f,{state:l})]})}])},88412,a=>{let b="inline-flex h-9 items-center justify-center gap-2 rounded-md px-4 font-medium disabled:opacity-60",c={primary:`${b} bg-primary text-primary-foreground hover:bg-primary-hover`,secondary:`${b} border border-border bg-card hover:bg-accent`,destructive:`${b} bg-destructive text-destructive-foreground`};a.s(["x",0,c,"r",0,"rounded-lg border border-border bg-card p-6 text-card-foreground shadow-sm","w",0,"h-9 w-full rounded-md border border-input bg-background px-3 font-mono text-code","z",0,"grid gap-1"])},36855,a=>{var b=a.i(87924);a.s(["f",0,function({state:a,testId:c}){switch(a.kind){case"idle":return null;case"done":return(0,b.jsx)("p",{role:"status","data-testid":c,className:"rounded-md border border-tone-ok-border bg-tone-ok-bg px-3 py-2 text-tone-ok-fg",children:a.message});case"refused":case"openNetwork":return(0,b.jsx)("p",{role:"alert","data-testid":c,className:"rounded-md border border-tone-attention-border bg-tone-attention-bg px-3 py-2 text-tone-attention-fg",children:a.message})}}])},77237,a=>{var b=a.i(87924),c=a.i(35112),d=a.i(88412);a.s(["f",0,function({children:a,pending:e,kind:f="primary",testId:g}){let h=(0,c.useFormStatus)();return(0,b.jsx)("button",{type:"submit",className:d.x[f],disabled:h.pending,"aria-busy":h.pending,"data-testid":g,children:h.pending?e:a})}])},82636,a=>{var b=a.i(87924),c=a.i(21338),d=a.i(22432),e=a.i(37987),f=a.i(21817),g=a.i(43256),h=a.i(27350),i=a.i(69035),j=a.i(21777),k=a.i(85804),l=a.i(72131);a.s(["ShipPicker",0,function({ships:a}){let m=a.map(({shipId:a,name:b})=>({value:a,label:b})),[n,o]=(0,l.useState)(null);return(0,b.jsxs)(c.f.Root,{items:m,value:n,onValueChange:a=>{o(a)},isItemEqualToValue:(a,b)=>a?.value===b?.value,children:[(0,b.jsx)("input",{type:"hidden",name:"shipId",value:n?.value??""}),(0,b.jsxs)("div",{className:"grid gap-1","data-testid":"slack-ship-picker",children:[(0,b.jsx)(d.f.Label,{className:"font-medium",children:"Ship"}),(0,b.jsx)(e.f.Input,{placeholder:"Search the agent ships and A2A agents",className:"h-9 w-full rounded-md border border-input bg-background px-3"})]}),(0,b.jsx)(f.f.Portal,{children:(0,b.jsx)(g.f.Positioner,{sideOffset:4,className:"z-50",children:(0,b.jsxs)(h.f.Popup,{className:"max-h-72 w-(--anchor-width) overflow-auto rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md",children:[(0,b.jsx)(i.f.Empty,{className:"px-2 py-1 text-muted-foreground",children:"No ship matches."}),(0,b.jsx)(j.f.List,{children:a=>(0,b.jsx)(k.f.Item,{value:a,className:"cursor-default rounded-sm px-2 py-1 data-highlighted:bg-accent",children:a.label},a.value)})]})})})]})}])}]})();
2
+
3
+ //# sourceMappingURL=_1rfpx4ze-3l8z._.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../web/features/forms/form-state.ts","../../../../../web/features/forms/ui/action-form.tsx","../../../../../web/features/forms/ui/look.ts","../../../../../web/features/forms/ui/outcome.tsx","../../../../../web/features/forms/ui/submit-button.tsx","../../../../../web/features/slack/ui/ship-picker.tsx"],"sourcesContent":["/**\n * What a page's form (a server action) answers the browser: nothing yet,\n * done with what changed, or refused with why, as the API said it. The\n * open network's warning asks for a confirm (interop I-3).\n */\nexport type FormState =\n | { kind: 'idle' }\n | { kind: 'done'; message: string }\n | { kind: 'refused'; message: string }\n | { kind: 'openNetwork'; message: string };\n\nexport const IDLE: FormState = { kind: 'idle' };\n\n/** A form's text field, empty when it was not sent. */\nexport function fieldOf(form: FormData, name: string): string {\n const value = form.get(name);\n return typeof value === 'string' ? value : '';\n}\n\n/** The form's fields as text, files left out. */\nexport function fieldsOf(form: FormData): Record<string, string> {\n return Object.fromEntries([...form.entries()].flatMap(([name, value]) => (typeof value === 'string' ? [[name, value]] : [])));\n}\n\n/** The fleet a page's form names: the page's own, sent in a hidden field. */\nexport const FLEET_FIELD = 'fleet';\n","'use client';\n\nimport { useActionState, type ReactNode } from 'react';\n\nimport { FLEET_FIELD, IDLE, type FormState } from '../form-state';\nimport type { ButtonKind } from './look';\nimport { Outcome } from './outcome';\nimport { SubmitButton } from './submit-button';\n\n/** A page's form: its fields, the fleet it is for, its button, and how it ended. */\nexport function ActionForm({\n action,\n fleetId,\n children,\n submit,\n className = 'grid gap-3',\n testId,\n}: {\n action: (previous: FormState, form: FormData) => Promise<FormState>;\n fleetId: string;\n children?: ReactNode;\n submit: { label: ReactNode; pending: string; kind?: ButtonKind };\n className?: string;\n testId?: string;\n}) {\n const [state, formAction] = useActionState(action, IDLE);\n return (\n <form action={formAction} className={className} data-testid={testId}>\n <input type=\"hidden\" name={FLEET_FIELD} value={fleetId} />\n {children}\n <div>\n <SubmitButton pending={submit.pending} {...(submit.kind === undefined ? {} : { kind: submit.kind })}>\n {submit.label}\n </SubmitButton>\n </div>\n <Outcome state={state} />\n </form>\n );\n}\n","/** The classes the pages share, on the design tokens: a card and the button kinds. */\nexport const CARD = 'rounded-lg border border-border bg-card p-6 text-card-foreground shadow-sm';\n\nconst BUTTON = 'inline-flex h-9 items-center justify-center gap-2 rounded-md px-4 font-medium disabled:opacity-60';\n\nexport const BUTTONS = {\n primary: `${BUTTON} bg-primary text-primary-foreground hover:bg-primary-hover`,\n secondary: `${BUTTON} border border-border bg-card hover:bg-accent`,\n destructive: `${BUTTON} bg-destructive text-destructive-foreground`,\n} as const;\n\nexport type ButtonKind = keyof typeof BUTTONS;\n\nexport const INPUT = 'h-9 w-full rounded-md border border-input bg-background px-3 font-mono text-code';\n\nexport const LABEL = 'grid gap-1';\n","import type { FormState } from '../form-state';\n\n/** How a form ended: what changed, or why it was refused. Nothing while it has not been sent. */\nexport function Outcome({ state, testId }: { state: FormState; testId?: string }) {\n switch (state.kind) {\n case 'idle':\n return null;\n case 'done':\n return (\n <p role=\"status\" data-testid={testId} className=\"rounded-md border border-tone-ok-border bg-tone-ok-bg px-3 py-2 text-tone-ok-fg\">\n {state.message}\n </p>\n );\n case 'refused':\n case 'openNetwork':\n return (\n <p role=\"alert\" data-testid={testId} className=\"rounded-md border border-tone-attention-border bg-tone-attention-bg px-3 py-2 text-tone-attention-fg\">\n {state.message}\n </p>\n );\n }\n}\n","'use client';\n\nimport type { ReactNode } from 'react';\nimport { useFormStatus } from 'react-dom';\n\nimport { BUTTONS, type ButtonKind } from './look';\n\n/** A form's button: it says the form is on its way at once, and takes no second press meanwhile. */\nexport function SubmitButton({ children, pending, kind = 'primary', testId }: { children: ReactNode; pending: string; kind?: ButtonKind; testId?: string }) {\n const status = useFormStatus();\n return (\n <button type=\"submit\" className={BUTTONS[kind]} disabled={status.pending} aria-busy={status.pending} data-testid={testId}>\n {status.pending ? pending : children}\n </button>\n );\n}\n","'use client';\n\nimport { Combobox } from '@base-ui/react/combobox';\nimport { useState } from 'react';\n\ninterface ShipItem {\n value: string;\n label: string;\n}\n\n/** Picks one ship to expose by its name, searched; the form sends its id. */\nexport function ShipPicker({ ships }: { ships: readonly { shipId: string; name: string }[] }) {\n const items: ShipItem[] = ships.map(({ shipId, name }) => ({ value: shipId, label: name }));\n const [picked, setPicked] = useState<ShipItem | null>(null);\n return (\n <Combobox.Root items={items} value={picked} onValueChange={(next: ShipItem | null) => {\n setPicked(next);\n }}\n isItemEqualToValue={(item: ShipItem | null, chosen: ShipItem | null) => item?.value === chosen?.value}\n >\n <input type=\"hidden\" name=\"shipId\" value={picked?.value ?? ''} />\n <div className=\"grid gap-1\" data-testid=\"slack-ship-picker\">\n <Combobox.Label className=\"font-medium\">Ship</Combobox.Label>\n <Combobox.Input placeholder=\"Search the agent ships and A2A agents\" className=\"h-9 w-full rounded-md border border-input bg-background px-3\" />\n </div>\n <Combobox.Portal>\n <Combobox.Positioner sideOffset={4} className=\"z-50\">\n <Combobox.Popup className=\"max-h-72 w-(--anchor-width) overflow-auto rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md\">\n <Combobox.Empty className=\"px-2 py-1 text-muted-foreground\">No ship matches.</Combobox.Empty>\n <Combobox.List>\n {(item: ShipItem) => (\n <Combobox.Item key={item.value} value={item} className=\"cursor-default rounded-sm px-2 py-1 data-highlighted:bg-accent\">\n {item.label}\n </Combobox.Item>\n )}\n </Combobox.List>\n </Combobox.Popup>\n </Combobox.Positioner>\n </Combobox.Portal>\n </Combobox.Root>\n );\n}\n"],"names":["IDLE","kind","fieldOf","form","name","value","get","fieldsOf","Object","fromEntries","entries","flatMap","FLEET_FIELD","ActionForm","action","fleetId","children","submit","className","testId","state","formAction","type","pending","undefined","label","CARD","BUTTON","BUTTONS","primary","secondary","destructive","INPUT","LABEL","Outcome","role","message","SubmitButton","status","disabled","ShipPicker","ships","items","map","shipId","picked","setPicked","Root","onValueChange","next","isItemEqualToValue","item","chosen","Label","Input","placeholder","Portal","Positioner","sideOffset","Popup","Empty","List","Item"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../web/features/forms/form-state.ts","../../../../../web/features/forms/ui/action-form.tsx","../../../../../web/features/forms/ui/look.ts","../../../../../web/features/forms/ui/outcome.tsx","../../../../../web/features/forms/ui/submit-button.tsx","../../../../../web/features/slack/ui/ship-picker.tsx"],"sourcesContent":["/**\n * What a page's form (a server action) answers the browser: nothing yet,\n * done with what changed, or refused with why, as the API said it. The\n * open network's warning asks for a confirm (interop I-3).\n */\nexport type FormState =\n | { kind: 'idle' }\n | { kind: 'done'; message: string }\n | { kind: 'refused'; message: string }\n | { kind: 'openNetwork'; message: string };\n\nexport const IDLE: FormState = { kind: 'idle' };\n\n/** A form's text field, empty when it was not sent. */\nexport function fieldOf(form: FormData, name: string): string {\n const value = form.get(name);\n return typeof value === 'string' ? value : '';\n}\n\n/** The form's fields as text, files left out. */\nexport function fieldsOf(form: FormData): Record<string, string> {\n return Object.fromEntries([...form.entries()].flatMap(([name, value]) => (typeof value === 'string' ? [[name, value]] : [])));\n}\n\n/** The fleet a page's form names: the page's own, sent in a hidden field. */\nexport const FLEET_FIELD = 'fleet';\n","'use client';\n\nimport { useActionState, type ReactNode } from 'react';\n\nimport { FLEET_FIELD, IDLE, type FormState } from '../form-state';\nimport type { ButtonKind } from './look';\nimport { Outcome } from './outcome';\nimport { SubmitButton } from './submit-button';\n\n/** A page's form: its fields, the fleet it is for, its button, and how it ended. */\nexport function ActionForm({\n action,\n fleetId,\n children,\n submit,\n className = 'grid gap-3',\n testId,\n}: {\n action: (previous: FormState, form: FormData) => Promise<FormState>;\n fleetId: string;\n children?: ReactNode;\n submit: { label: ReactNode; pending: string; kind?: ButtonKind };\n className?: string;\n testId?: string;\n}) {\n const [state, formAction] = useActionState(action, IDLE);\n return (\n <form action={formAction} className={className} data-testid={testId}>\n <input type=\"hidden\" name={FLEET_FIELD} value={fleetId} />\n {children}\n <div>\n <SubmitButton pending={submit.pending} {...(submit.kind === undefined ? {} : { kind: submit.kind })}>\n {submit.label}\n </SubmitButton>\n </div>\n <Outcome state={state} />\n </form>\n );\n}\n","/** The classes the pages share, on the design tokens: a card and the button kinds. */\nexport const CARD = 'rounded-lg border border-border bg-card p-6 text-card-foreground shadow-sm';\n\nconst BUTTON = 'inline-flex h-9 items-center justify-center gap-2 rounded-md px-4 font-medium disabled:opacity-60';\n\nexport const BUTTONS = {\n primary: `${BUTTON} bg-primary text-primary-foreground hover:bg-primary-hover`,\n secondary: `${BUTTON} border border-border bg-card hover:bg-accent`,\n destructive: `${BUTTON} bg-destructive text-destructive-foreground`,\n} as const;\n\nexport type ButtonKind = keyof typeof BUTTONS;\n\nexport const INPUT = 'h-9 w-full rounded-md border border-input bg-background px-3 font-mono text-code';\n\nexport const LABEL = 'grid gap-1';\n","import type { FormState } from '../form-state';\n\n/** How a form ended: what changed, or why it was refused. Nothing while it has not been sent. */\nexport function Outcome({ state, testId }: { state: FormState; testId?: string }) {\n switch (state.kind) {\n case 'idle':\n return null;\n case 'done':\n return (\n <p role=\"status\" data-testid={testId} className=\"rounded-md border border-tone-ok-border bg-tone-ok-bg px-3 py-2 text-tone-ok-fg\">\n {state.message}\n </p>\n );\n case 'refused':\n case 'openNetwork':\n return (\n <p role=\"alert\" data-testid={testId} className=\"rounded-md border border-tone-attention-border bg-tone-attention-bg px-3 py-2 text-tone-attention-fg\">\n {state.message}\n </p>\n );\n }\n}\n","'use client';\n\nimport type { ReactNode } from 'react';\nimport { useFormStatus } from 'react-dom';\n\nimport { BUTTONS, type ButtonKind } from './look';\n\n/** A form's button: it says the form is on its way at once, and takes no second press meanwhile. */\nexport function SubmitButton({ children, pending, kind = 'primary', testId }: { children: ReactNode; pending: string; kind?: ButtonKind; testId?: string }) {\n const status = useFormStatus();\n return (\n <button type=\"submit\" className={BUTTONS[kind]} disabled={status.pending} aria-busy={status.pending} data-testid={testId}>\n {status.pending ? pending : children}\n </button>\n );\n}\n","'use client';\n\nimport { Combobox } from '@base-ui/react/combobox';\nimport { useState } from 'react';\n\ninterface ShipItem {\n value: string;\n label: string;\n}\n\n/** Picks one ship to expose by its name, searched; the form sends its id. */\nexport function ShipPicker({ ships }: { ships: readonly { shipId: string; name: string }[] }) {\n const items: ShipItem[] = ships.map(({ shipId, name }) => ({ value: shipId, label: name }));\n const [picked, setPicked] = useState<ShipItem | null>(null);\n return (\n <Combobox.Root items={items} value={picked} onValueChange={(next: ShipItem | null) => {\n setPicked(next);\n }}\n isItemEqualToValue={(item: ShipItem | null, chosen: ShipItem | null) => item?.value === chosen?.value}\n >\n <input type=\"hidden\" name=\"shipId\" value={picked?.value ?? ''} />\n <div className=\"grid gap-1\" data-testid=\"slack-ship-picker\">\n <Combobox.Label className=\"font-medium\">Ship</Combobox.Label>\n <Combobox.Input placeholder=\"Search the agent ships and A2A agents\" className=\"h-9 w-full rounded-md border border-input bg-background px-3\" />\n </div>\n <Combobox.Portal>\n <Combobox.Positioner sideOffset={4} className=\"z-50\">\n <Combobox.Popup className=\"max-h-72 w-(--anchor-width) overflow-auto rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md\">\n <Combobox.Empty className=\"px-2 py-1 text-muted-foreground\">No ship matches.</Combobox.Empty>\n <Combobox.List>\n {(item: ShipItem) => (\n <Combobox.Item key={item.value} value={item} className=\"cursor-default rounded-sm px-2 py-1 data-highlighted:bg-accent\">\n {item.label}\n </Combobox.Item>\n )}\n </Combobox.List>\n </Combobox.Popup>\n </Combobox.Positioner>\n </Combobox.Portal>\n </Combobox.Root>\n );\n}\n"],"names":["IDLE","kind","fieldOf","form","name","value","get","fieldsOf","Object","fromEntries","entries","flatMap","FLEET_FIELD","ActionForm","action","fleetId","children","submit","className","testId","state","formAction","type","pending","undefined","label","CARD","BUTTON","BUTTONS","primary","secondary","destructive","INPUT","LABEL","Outcome","role","message","SubmitButton","status","disabled","ShipPicker","ships","items","map","shipId","picked","setPicked","Root","onValueChange","next","isItemEqualToValue","item","chosen","Label","Input","placeholder","Portal","Positioner","sideOffset","Popup","Empty","List","Item"],"mappings":"0LAyB2B,cAdI,CAAEC,KAAM,MAAO,gCCT9C,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,2BAGO,SAASY,AAAW,QACzBC,CAAM,SACNC,CAAO,UACPC,CAAQ,QACRC,CAAM,WACNC,EAAY,YAAY,QACxBC,CAAM,CAQP,EACC,GAAM,CAACC,EAAOC,EAAW,CAAG,CAAA,EAAA,EAAA,cAAA,AAAc,EAACP,EAAQ,EAAA,CAAI,EACvD,MACE,CAAA,EAAA,EAAA,IAAA,EAAC,OAAA,CAAKA,OAAQO,EAAYH,UAAWA,EAAW,cAAaC,YAC3D,CAAA,EAAA,EAAA,GAAA,EAAC,QAAA,CAAMG,KAAK,SAASlB,KAAM,EAAA,CAAW,CAAEC,MAAOU,IAC9CC,EACD,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,UACC,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAY,CAAA,CAACO,QAASN,EAAOM,OAAO,CAAG,QAAoBC,IAAhBP,EAAOhB,IAAI,CAAiB,CAAC,EAAI,CAAEA,KAAMgB,EAAOhB,IAAK,AAAD,CAAE,UAC/FgB,EAAOQ,KAAK,KAGjB,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAO,CAAA,CAACL,MAAOA,MAGtB,eCnCA,IAAMO,EAAS,oGAEFC,EAAU,CACrBC,QAAS,CAAA,EAAGF,EAAO,0DAA0D,CAAC,CAC9EG,UAAW,CAAA,EAAGH,EAAO,6CAA6C,CAAC,CACnEI,YAAa,CAAA,EAAGJ,EAAO,2CAA2C,CAAC,AACrE,qBARoB,mFAYC,yFAEA,sDCZd,SAASO,AAAQ,OAAEd,CAAK,QAAED,CAAM,CAAyC,EAC9E,OAAQC,EAAMnB,IAAI,EAChB,IAAK,OACH,OAAO,IACT,KAAK,OACH,MACE,CAAA,EAAA,EAAA,GAAA,EAAC,IAAA,CAAEkC,KAAK,SAAS,cAAahB,EAAQD,UAAU,2FAC7CE,EAAMgB,OAAO,EAGpB,KAAK,UACL,IAAK,cACH,MACE,CAAA,EAAA,EAAA,GAAA,EAAC,IAAA,CAAED,KAAK,QAAQ,cAAahB,EAAQD,UAAU,gHAC5CE,EAAMgB,OAAO,EAGtB,CACF,gCClBA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,kBAGO,SAASC,AAAa,UAAErB,CAAQ,SAAEO,CAAO,MAAEtB,EAAO,SAAS,QAAEkB,CAAM,CAAgF,EACxJ,IAAMmB,EAAS,CAAA,EAAA,EAAA,aAAa,AAAb,IACf,MACE,CAAA,EAAA,EAAA,GAAA,EAAC,SAAA,CAAOhB,KAAK,SAASJ,UAAW,EAAA,CAAO,CAACjB,EAAK,CAAEsC,SAAUD,EAAOf,OAAO,CAAE,YAAWe,EAAOf,OAAO,CAAE,cAAaJ,WAC/GmB,EAAOf,OAAO,CAAGA,EAAUP,GAGlC,gCCbA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,2BAQO,SAASwB,AAAW,OAAEC,CAAK,CAA0D,EAC1F,IAAMC,EAAoBD,EAAME,GAAG,CAAC,CAAC,QAAEC,CAAM,MAAExC,CAAI,CAAE,GAAK,CAAC,CAAEC,MAAOuC,EAAQnB,MAAOrB,EAAK,CAAC,EACnF,CAACyC,EAAQC,EAAU,CAAG,CAAA,EAAA,EAAA,QAAA,AAAQ,EAAkB,MACtD,MACE,CAAA,EAAA,EAAA,IAAA,EAAC,EAAA,CAAQ,CAACC,IAAI,CAAA,CAACL,MAAOA,EAAOrC,MAAOwC,EAAQG,cAAgBC,AAAD,IACvDH,EAAUG,EACZ,EACAC,mBAAoB,CAACC,EAAuBC,IAA4BD,GAAM9C,QAAU+C,GAAQ/C,gBAEhG,CAAA,EAAA,EAAA,GAAA,EAAC,QAAA,CAAMiB,KAAK,SAASlB,KAAK,SAASC,MAAOwC,GAAQxC,OAAS,KAC3D,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAIa,UAAU,aAAa,cAAY,8BACtC,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAQ,CAACmC,KAAK,CAAA,CAACnC,UAAU,uBAAc,SACxC,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAQ,CAACoC,KAAK,CAAA,CAACC,YAAY,wCAAwCrC,UAAU,oEAEhF,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAQ,CAACsC,MAAM,CAAA,UACd,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAQ,CAACC,UAAU,CAAA,CAACC,WAAY,EAAGxC,UAAU,gBAC5C,CAAA,EAAA,EAAA,IAAA,EAAC,EAAA,CAAQ,CAACyC,KAAK,CAAA,CAACzC,UAAU,uIACxB,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAQ,CAAC0C,KAAK,CAAA,CAAC1C,UAAU,2CAAkC,qBAC5D,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAQ,CAAC2C,IAAI,CAAA,UACX,AAACV,GACA,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAQ,CAACW,IAAI,CAAA,CAAkBzD,MAAO8C,EAAMjC,UAAU,0EACpDiC,EAAK1B,KAAK,EADO0B,EAAK9C,KAAK,aAU9C"}
@@ -0,0 +1,3 @@
1
+ (()=>{"use strict";module.exports=[7963,a=>{var b=a.i(64831);let c={name:"chevron-left",size:24,node:[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]};c.node;let d=(0,b.f)(c);a.s(["f",0,d],7963)},16550,a=>{a.s(["H",0,"/bridge/basket","P",0,"/bridge","i",0,"/bridge/settings/routing","T",0,"/bridge/settings"])},17758,18145,a=>{let b={home:{name:"Bridge",hasBack:!1,tab:"waiting"},basket:{name:"Basket",hasBack:!0,tab:"waiting"},"stay-aware":{name:"Stay aware",hasBack:!1,tab:"aware"},done:{name:"Done",hasBack:!1,tab:"done"},fleet:{name:"Your fleet",hasBack:!1,tab:"fleet"},routing:{name:"Where things show",hasBack:!0,tab:null},settings:{name:"Settings",hasBack:!0,tab:null}},c={decide:"Question",do:"Step","stay-aware":"Stay aware","everything-else":"Message"};a.s(["u",0,function(a){return c[a]},"f",0,function(a){return b[a]}],17758);var d=a.i(87924),e=a.i(72131);let f=(0,e.createContext)(void 0);a.s(["D",0,function({children:a}){let[b,c]=(0,e.useState)();return(0,d.jsx)(f,{value:{opened:b,setOpened:c},children:a(b)})},"R",0,function(a,b){let c=(0,e.useContext)(f)?.setOpened,d=(0,e.useRef)(b);(0,e.useEffect)(()=>{d.current=b}),(0,e.useEffect)(()=>{if(void 0!==c)return c(void 0===a?void 0:{title:a,onBack:()=>{d.current()}}),()=>{c(void 0)}},[c,a])}],18145)},5759,56672,a=>{var b=a.i(87924),c=a.i(72131);function d(a,b){return void 0!==b.readAt?{kept:{readAt:b.readAt,part:b.part},shown:{part:b.part,lastReadAt:void 0}}:void 0===a?{kept:a,shown:{part:b.part,lastReadAt:void 0}}:{kept:a,shown:{part:a.part,lastReadAt:a.readAt}}}a.s(["C",0,function(a){return`${new Date(a).toISOString().slice(11,16)} UTC`},"R",0,d],56672);let e=(0,c.createContext)(void 0);function f({at:a,children:c}){return(0,b.jsx)(e,{value:a,children:c})}a.s(["KeptRead",0,function({readAt:a,children:e}){let[g,h]=(0,c.useState)(),i=d(g,{readAt:a,part:e});return i.kept?.readAt!==g?.readAt&&h(i.kept),(0,b.jsx)(f,{at:i.shown.lastReadAt,children:i.shown.part})},"useLastReadAt",0,function(){return(0,c.useContext)(e)}],5759)},44337,a=>{var b=a.i(87924),c=a.i(83230),d=a.i(64831);let e={name:"globe",size:24,node:[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]]};e.node;let f=(0,d.f)(e),g={name:"route",size:24,node:[["circle",{cx:"6",cy:"19",r:"3",key:"1kj8tv"}],["path",{d:"M9 19h8.5a3.5 3.5 0 0 0 0-7h-11a3.5 3.5 0 0 1 0-7H15",key:"1d8sl"}],["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}]]};g.node;let h=(0,d.f)(g),i={name:"sliders-horizontal",size:24,node:[["path",{d:"M10 5H3",key:"1qgfaw"}],["path",{d:"M12 19H3",key:"yhmn1j"}],["path",{d:"M14 3v4",key:"1sua03"}],["path",{d:"M16 17v4",key:"1q0r14"}],["path",{d:"M21 12h-9",key:"1o4lsq"}],["path",{d:"M21 19h-5",key:"1rlt1p"}],["path",{d:"M21 5h-7",key:"1oszz2"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M8 12H3",key:"a7s4jb"}]]};i.node;let j=(0,d.f)(i);var k=a.i(25959),l=a.i(919),m=a.i(48242),n=a.i(72131),o=a.i(50944),p=a.i(16550);let q={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"}]]};q.node;let r=(0,d.f)(q);var s=a.i(52562),t=a.i(7963),u=a.i(17758);let v="inline-flex size-8 shrink-0 items-center justify-center rounded-md hover:bg-accent sm:hidden";function w({fleetId:a,hasBack:c,opened:d}){return void 0!==d?(0,b.jsx)("button",{type:"button","data-testid":"bridge-back","aria-label":"Back",onClick:d.onBack,className:v,children:(0,b.jsx)(t.f,{"aria-hidden":!0,className:"size-5"})}):c?(0,b.jsx)("a",{"data-testid":"bridge-back","aria-label":"Back to Bridge",href:(0,k.f)(p.P,a),className:v,children:(0,b.jsx)(t.f,{"aria-hidden":!0,className:"size-5"})}):null}function x({fleetId:a,fleetName:c,screen:d,isLive:e,opened:f,avatar:g}){let{name:h,hasBack:i}=(0,u.f)(d),j=void 0!==f&&"home"===d?"Waiting on you":h;return(0,b.jsxs)("header",{className:"sticky top-0 z-30 flex h-14 shrink-0 items-center gap-2 border-b border-border bg-background pr-3 pl-4",children:[(0,b.jsx)(w,{fleetId:a,hasBack:i,opened:f}),(0,b.jsxs)("span",{"data-testid":"bridge-crumb",className:"text-muted-foreground max-sm:hidden",children:[void 0===c?null:`${c} / `,(0,b.jsx)("b",{className:"font-semibold text-foreground",children:j})]}),(0,b.jsx)("span",{"data-testid":"bridge-title",className:`min-w-0 flex-1 truncate font-semibold tracking-tight sm:hidden ${i||void 0!==f?"text-lg":"text-title-touch"}`,children:f?.title??h}),e?(0,b.jsxs)("span",{"data-testid":"bridge-live",className:"inline-flex items-center gap-1.5 text-meta text-muted-foreground",children:[(0,b.jsx)("i",{"aria-hidden":!0,className:"inline-block size-2 rounded-full bg-tone-ok-fg"}),"Live"]}):null,(0,b.jsx)("span",{className:"sm:hidden",children:g})]})}var y=a.i(18145);function z({fleetId:a,switcher:d,account:{email:e,accountUrl:g,theme:i}}){let{account:n,signOutForm:o}=(0,l.f)({email:e,accountUrl:g,theme:i,entries:[...d?.apps.map(({app:a,label:c,url:d,isCurrent:e})=>({key:`app-${a}`,label:c,href:d,icon:e?(0,b.jsx)(s.f,{"aria-hidden":!0}):(0,b.jsx)(r,{"aria-hidden":!0}),isPhoneOnly:!0}))??[],{key:"routing",label:"Where things show",icon:(0,b.jsx)(h,{"aria-hidden":!0}),href:(0,k.f)(p.i,a),isPhoneOnly:!0},{key:"outside-parties",label:"Outside parties",icon:(0,b.jsx)(f,{"aria-hidden":!0}),href:(0,k.f)(m.$,a),isPhoneOnly:!0},...void 0===g?[]:[{key:"fleets-and-account",label:"Fleets and account",icon:(0,b.jsx)(j,{"aria-hidden":!0}),href:g,isPhoneOnly:!0}]]});return(0,b.jsxs)(b.Fragment,{children:[o,(0,b.jsx)(c.AvatarMenuSheet,{...n})]})}a.s(["ShellFrame",0,function({fleetId:a,fleetName:c,screen:d,account:e,switcher:f,children:g}){let h=function(a){let b=(0,o.useRouter)(),[c,d]=(0,n.useState)(!1);return(0,n.useEffect)(()=>{let c=new EventSource(`/bridge/changes?fleet=${encodeURIComponent(a)}`);return c.onopen=()=>{d(!0)},c.onerror=()=>{d(!1)},c.onmessage=()=>{b.refresh()},()=>{c.close()}},[a,b]),c}(a);return(0,n.useEffect)(()=>{let b,c=()=>{let c="visible"===document.visibilityState&&document.hasFocus();c&&void 0===b?b=new EventSource(`/bridge/focus?fleet=${encodeURIComponent(a)}`):c||void 0===b||(b.close(),b=void 0)};return c(),window.addEventListener("focus",c),window.addEventListener("blur",c),document.addEventListener("visibilitychange",c),()=>{window.removeEventListener("focus",c),window.removeEventListener("blur",c),document.removeEventListener("visibilitychange",c),b?.close()}},[a]),(0,b.jsx)(y.D,{children:i=>(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(x,{fleetId:a,fleetName:c,screen:d,isLive:h,opened:i,avatar:void 0===e?null:(0,b.jsx)(z,{fleetId:a,switcher:f,account:e})}),(0,b.jsx)("main",{className:"w-full max-w-5xl flex-1 px-4 py-5 sm:px-6",children:g})]})})},"SidebarPerson",0,function({account:{email:a,accountUrl:d,theme:e},fleetName:f,isAllowedAsArgo:g=!1}){let{account:h,signOutForm:i}=(0,l.f)({email:a,accountUrl:d,theme:e});return(0,b.jsxs)(b.Fragment,{children:[i,(0,b.jsx)(c.AvatarMenu,{...h}),(0,b.jsxs)("span",{className:"flex min-w-0 flex-col leading-4",children:[(0,b.jsx)("span",{"data-testid":"bridge-person",className:"truncate font-medium",children:a}),(0,b.jsx)("span",{className:"truncate text-caption text-muted-foreground",children:g?`${f??""} \xb7 allowed as argo`:f})]})]})}],44337)}]})();
2
+
3
+ //# sourceMappingURL=_1t74yvog5g6g2._.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../node_modules/lucide-react/src/icons/chevron-left.ts","../../../../../web/features/bridge/paths.ts","../../../../../web/features/bridge/services/shell.ts","../../../../../web/features/bridge/state/opened-item.tsx","../../../../../web/features/bridge/state/kept-read.tsx","../../../../../web/features/bridge/services/last-read.ts","../../../../../web/features/bridge/hooks/use-focus-report.ts","../../../../../web/features/bridge/hooks/use-live-refresh.ts","../../../../../web/features/bridge/state/shell-frame.tsx","../../../../../web/features/bridge/ui/bridge-top-bar.tsx","../../../../../web/features/bridge/ui/phone-app-entries.tsx","../../../../../node_modules/lucide-react/src/icons/app-window.ts","../../../../../node_modules/lucide-react/src/icons/globe.ts","../../../../../node_modules/lucide-react/src/icons/route.ts","../../../../../node_modules/lucide-react/src/icons/sliders-horizontal.ts"],"sourcesContent":["import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'chevron-left',\n size: 24,\n node: [['path', { d: 'm15 18-6-6 6-6', key: '1wnfg3' }]],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name ChevronLeft\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJtMTUgMTgtNi02IDYtNiIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/chevron-left\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst ChevronLeft = createLucideIcon(__iconData);\n\nexport default ChevronLeft;\n","/** Bridge's pages (docs/design/bridge): home, the basket, Stay aware, Done, Your fleet, Bridge's settings and where things show; a module of their own, so a page in the browser names them too. */\nexport const BRIDGE_PATH = '/bridge';\nexport const BRIDGE_BASKET_PATH = '/bridge/basket';\nexport const BRIDGE_STAY_AWARE_PATH = '/bridge/stay-aware';\nexport const BRIDGE_DONE_PATH = '/bridge/done';\nexport const BRIDGE_SETTINGS_PATH = '/bridge/settings';\nexport const BRIDGE_ROUTING_PATH = '/bridge/settings/routing';\n","/**\n * Bridge's shell (docs/design/bridge/mockups): the screen in view named as\n * the sidebar names it, in the breadcrumb on desktop and as the phone's\n * screen title, with a back chevron where it leads back to home, and the\n * phone's tab it is under. Pure view logic, no React and no API client.\n */\nimport type { HomeItem } from './items';\n\n/** Bridge's pages, each a screen of the shell. */\nexport type BridgeScreen = 'home' | 'basket' | 'stay-aware' | 'done' | 'fleet' | 'routing' | 'settings';\n\n/** The phone's four tabs. */\nexport type PhoneTab = 'waiting' | 'aware' | 'done' | 'fleet';\n\nexport interface ScreenNaming {\n readonly name: string;\n /** Whether the phone's title leads back to home with a back chevron. */\n readonly hasBack: boolean;\n /** The phone's tab shown current; none for a page under no tab, such as the settings. */\n readonly tab: PhoneTab | null;\n}\n\nconst SCREENS: Record<BridgeScreen, ScreenNaming> = {\n home: { name: 'Bridge', hasBack: false, tab: 'waiting' },\n basket: { name: 'Basket', hasBack: true, tab: 'waiting' },\n 'stay-aware': { name: 'Stay aware', hasBack: false, tab: 'aware' },\n done: { name: 'Done', hasBack: false, tab: 'done' },\n fleet: { name: 'Your fleet', hasBack: false, tab: 'fleet' },\n routing: { name: 'Where things show', hasBack: true, tab: null },\n settings: { name: 'Settings', hasBack: true, tab: null },\n};\n\nconst OPENED: Record<HomeItem['job'], string> = {\n decide: 'Question',\n do: 'Step',\n 'stay-aware': 'Stay aware',\n 'everything-else': 'Message',\n};\n\nexport function screenOf(screen: BridgeScreen): ScreenNaming {\n return SCREENS[screen];\n}\n\n/** The phone's title while an item is open in place of its list, by its job. */\nexport function openedScreenOf(job: HomeItem['job']): string {\n return OPENED[job];\n}\n\n/** The counts the shell shows: what waits, the unseen to stay aware of, the basket's answers and the ships with an alert; one not known now is left out. */\nexport interface ShellCounts {\n readonly waiting: number | undefined;\n readonly stayAware: number | undefined;\n readonly basket: number;\n readonly fleetAlerts: number | undefined;\n /** What waits at argo, apart from what waits on the person (argo's inbox, AI4); none for an account not allowed as argo. */\n readonly argo?: number;\n}\n\n/** Bridge home as the shell reads it: its counts, none for an account with no person ship, or not readable now. */\nexport type HomeForCounts =\n | { readonly kind: 'read'; readonly value: { readonly waiting: { readonly count: number }; readonly stayAware: readonly { readonly state: string }[] } }\n | { readonly kind: 'none' }\n | { readonly kind: 'unreadable' };\n\n/** What waits as home counts it; of the stay-aware feed only the alerts and notices not seen yet (CC16); what waits at argo in a count of its own. */\nexport function shellCountsOf({ home, basket, fleetAlerts, argo }: { home: HomeForCounts; basket: number; fleetAlerts: number | undefined; argo?: number | undefined }): ShellCounts {\n const others = { basket, fleetAlerts, ...(argo === undefined ? {} : { argo }) };\n switch (home.kind) {\n case 'read':\n return { waiting: home.value.waiting.count, stayAware: home.value.stayAware.filter(({ state }) => state === 'new').length, ...others };\n case 'none':\n return { waiting: 0, stayAware: 0, ...others };\n case 'unreadable':\n return { waiting: undefined, stayAware: undefined, ...others };\n }\n}\n","'use client';\n\nimport { createContext, useContext, useEffect, useRef, useState, type ReactNode } from 'react';\n\nimport type { OpenedItem } from '../ui/bridge-top-bar';\n\nconst OpenedItemContext = createContext<{ opened: OpenedItem | undefined; setOpened: (opened: OpenedItem | undefined) => void } | undefined>(undefined);\n\n/** Holds the item open in place of its list, if any, for the shell's phone title. */\nexport function OpenedItemProvider({ children }: { children: (opened: OpenedItem | undefined) => ReactNode }) {\n const [opened, setOpened] = useState<OpenedItem | undefined>();\n return <OpenedItemContext value={{ opened, setOpened }}>{children(opened)}</OpenedItemContext>;\n}\n\n/**\n * Names the item open in place of its list to the shell, by its title, the\n * back chevron closing it; undefined while none is open. Outside Bridge's\n * shell it does nothing.\n */\nexport function useOpenedItem(title: string | undefined, onBack: () => void): void {\n const setOpened = useContext(OpenedItemContext)?.setOpened;\n const back = useRef(onBack);\n useEffect(() => {\n back.current = onBack;\n });\n useEffect(() => {\n if (setOpened === undefined) {\n return undefined;\n }\n setOpened(title === undefined ? undefined : { title, onBack: () => { back.current(); } });\n return () => {\n setOpened(undefined);\n };\n }, [setOpened, title]);\n}\n","'use client';\n\nimport { createContext, useContext, useState, type ReactNode } from 'react';\n\nimport { nextShownOf, type KeptPart } from '../services/last-read';\n\nconst LastReadContext = createContext<string | undefined>(undefined);\n\n/**\n * A part of a Bridge page the server read, kept in the browser while the\n * page is open (states.html): read now, it shows and is kept; while the\n * record cannot be read, the part last read shows in its place, and what is\n * inside it can tell with useLastReadAt. With nothing read yet, the\n * server's own answer shows, such as nothing at all.\n */\nexport function KeptRead({ readAt, children }: { readAt: string | undefined; children: ReactNode }) {\n const [kept, setKept] = useState<KeptPart<ReactNode> | undefined>();\n const next = nextShownOf(kept, { readAt, part: children });\n // Each read the server answers carries its own time: a new time is a new read to keep.\n if (next.kept?.readAt !== kept?.readAt) {\n setKept(next.kept);\n }\n return <AsLastRead at={next.shown.lastReadAt}>{next.shown.part}</AsLastRead>;\n}\n\n/** Shows what is inside as last read at a time; as read now with none. */\nexport function AsLastRead({ at, children }: { at: string | undefined; children: ReactNode }) {\n return <LastReadContext value={at}>{children}</LastReadContext>;\n}\n\n/** When what shows was last read, while it shows as last read; undefined while it is read now. */\nexport function useLastReadAt(): string | undefined {\n return useContext(LastReadContext);\n}\n","/**\n * A page part as last read (states.html; Bridge, section 9: core does not\n * answer): while the record cannot be read, the page goes on showing what it\n * last read, saying when. The browser keeps what it showed; the gateway keeps\n * no copy of a payload (Bridge, section 6). Pure view logic, no React.\n */\n\n/** What the server answered for a part: read at a time, or, with no time, what to show while it could not be read. */\nexport interface PartAnswer<T> {\n readonly readAt: string | undefined;\n readonly part: T;\n}\n\n/** The last part read, and when. */\nexport interface KeptPart<T> {\n readonly readAt: string;\n readonly part: T;\n}\n\n/** What shows of a part: as read now, or, with a time, as last read then. */\nexport interface ShownPart<T> {\n readonly part: T;\n readonly lastReadAt: string | undefined;\n}\n\nexport function nextShownOf<T>(kept: KeptPart<T> | undefined, answer: PartAnswer<T>): { kept: KeptPart<T> | undefined; shown: ShownPart<T> } {\n if (answer.readAt !== undefined) {\n return { kept: { readAt: answer.readAt, part: answer.part }, shown: { part: answer.part, lastReadAt: undefined } };\n }\n if (kept === undefined) {\n return { kept, shown: { part: answer.part, lastReadAt: undefined } };\n }\n return { kept, shown: { part: kept.part, lastReadAt: kept.readAt } };\n}\n\n/** The time of day a part was last read, in UTC to the minute, as Bridge says its other times. */\nexport function lastReadTimeOf(readAt: string): string {\n return `${new Date(readAt).toISOString().slice(11, 16)} UTC`;\n}\n","'use client';\n\nimport { useEffect } from 'react';\n\n/** The stream the page holds while in focus, which the web app's server follows on the gateway's API for the browser. */\nexport const FOCUS_PATH = '/bridge/focus';\n\n/**\n * Tells the gateway while the page is in focus (wake a person, W6): it holds\n * the focus stream open while the window has focus and the page shows, and\n * closes it when either ends. While a page of the person is in focus, what\n * arrives is shown there and no wake goes out; an open page not in focus\n * changes nothing. A lost connection no longer counts as in focus.\n */\nexport function useFocusReport(fleetId: string): void {\n useEffect(() => {\n let focus: EventSource | undefined;\n const report = () => {\n const isInFocus = document.visibilityState === 'visible' && document.hasFocus();\n if (isInFocus && focus === undefined) {\n focus = new EventSource(`${FOCUS_PATH}?fleet=${encodeURIComponent(fleetId)}`);\n } else if (!isInFocus && focus !== undefined) {\n focus.close();\n focus = undefined;\n }\n };\n report();\n window.addEventListener('focus', report);\n window.addEventListener('blur', report);\n document.addEventListener('visibilitychange', report);\n return () => {\n window.removeEventListener('focus', report);\n window.removeEventListener('blur', report);\n document.removeEventListener('visibilitychange', report);\n focus?.close();\n };\n }, [fleetId]);\n}\n","'use client';\n\nimport { useRouter } from 'next/navigation';\nimport { useEffect, useState } from 'react';\n\n/** The page's live updates, which the web app's server follows on the gateway's API for the browser. */\nexport const CHANGES_PATH = '/bridge/changes';\n\n/**\n * Keeps the page in step with its fleet's requests: whenever one changes,\n * the page reads itself again on the server, as its own caller. The browser\n * opens the stream again by itself when it drops. Answers whether the stream\n * is open now, so the page can say it is live.\n */\nexport function useLiveRefresh(fleetId: string): boolean {\n const router = useRouter();\n const [isLive, setIsLive] = useState(false);\n useEffect(() => {\n const changes = new EventSource(`${CHANGES_PATH}?fleet=${encodeURIComponent(fleetId)}`);\n changes.onopen = () => {\n setIsLive(true);\n };\n changes.onerror = () => {\n setIsLive(false);\n };\n changes.onmessage = () => {\n router.refresh();\n };\n return () => {\n changes.close();\n };\n }, [fleetId, router]);\n return isLive;\n}\n","'use client';\n\nimport type { Theme } from '@aeolus-fleet/common';\nimport type { AppSwitcherModel } from '@aeolus-fleet/common/rules';\nimport { AvatarMenu, AvatarMenuSheet } from '@aeolus-fleet/ui';\nimport { Globe, Route, SlidersHorizontal } from 'lucide-react';\nimport type { ReactNode } from 'react';\n\nimport { inFleet } from '../../../lib/gateway-api/page-account';\nimport { useAccountMenu } from '../../frame/hooks/use-account-menu';\nimport { OUTSIDE_PARTIES_PATH } from '../../outside-parties/paths';\nimport { useFocusReport } from '../hooks/use-focus-report';\nimport { useLiveRefresh } from '../hooks/use-live-refresh';\nimport { BRIDGE_ROUTING_PATH } from '../paths';\nimport type { BridgeScreen } from '../services/shell';\nimport { phoneAppEntries } from '../ui/phone-app-entries';\nimport { BridgeTopBar } from '../ui/bridge-top-bar';\nimport { OpenedItemProvider } from './opened-item';\n\n/** The account signed in, as the shell shows it: its email, the account app's address, the theme it chose. */\nexport interface ShellAccount {\n readonly email: string;\n readonly accountUrl: string | undefined;\n readonly theme: Theme;\n}\n\n/**\n * The person at the sidebar's foot (home.html): the avatar opens the\n * avatar menu, beside the account's email and the fleet in view.\n */\nexport function SidebarPerson({ account: { email, accountUrl, theme }, fleetName, isAllowedAsArgo = false }: { account: ShellAccount; fleetName: string | undefined; isAllowedAsArgo?: boolean }) {\n const { account, signOutForm } = useAccountMenu({ email, accountUrl, theme });\n return (\n <>\n {signOutForm}\n <AvatarMenu {...account} />\n <span className=\"flex min-w-0 flex-col leading-4\">\n <span data-testid=\"bridge-person\" className=\"truncate font-medium\">\n {email}\n </span>\n <span className=\"truncate text-caption text-muted-foreground\">{isAllowedAsArgo ? `${fleetName ?? ''} · allowed as argo` : fleetName}</span>\n </span>\n </>\n );\n}\n\n/** The phone's avatar: its sheet carries the settings the tab bar lacks (header design H6). */\nfunction PhoneAvatar({ fleetId, switcher, account: { email, accountUrl, theme } }: { fleetId: string; switcher?: AppSwitcherModel; account: ShellAccount }) {\n const { account, signOutForm } = useAccountMenu({\n email,\n accountUrl,\n theme,\n entries: [\n ...phoneAppEntries(switcher),\n { key: 'routing', label: 'Where things show', icon: <Route aria-hidden />, href: inFleet(BRIDGE_ROUTING_PATH, fleetId), isPhoneOnly: true },\n { key: 'outside-parties', label: 'Outside parties', icon: <Globe aria-hidden />, href: inFleet(OUTSIDE_PARTIES_PATH, fleetId), isPhoneOnly: true },\n ...(accountUrl === undefined ? [] : [{ key: 'fleets-and-account', label: 'Fleets and account', icon: <SlidersHorizontal aria-hidden />, href: accountUrl, isPhoneOnly: true }]),\n ],\n });\n return (\n <>\n {signOutForm}\n <AvatarMenuSheet {...account} />\n </>\n );\n}\n\n/**\n * The part of Bridge's shell that lives in the browser: the top bar over\n * the page, Live while the page follows its changes, the phone's title\n * naming an item open in place of its list. It keeps the page live, and\n * tells the gateway while it is in focus (wake a person, W6).\n */\nexport function ShellFrame({ fleetId, fleetName, screen, account, switcher, children }: { fleetId: string; fleetName: string | undefined; screen: BridgeScreen; account: ShellAccount | undefined; switcher?: AppSwitcherModel; children: ReactNode }) {\n const isLive = useLiveRefresh(fleetId);\n useFocusReport(fleetId);\n return (\n <OpenedItemProvider>\n {(opened) => (\n <>\n <BridgeTopBar fleetId={fleetId} fleetName={fleetName} screen={screen} isLive={isLive} opened={opened} avatar={account === undefined ? null : <PhoneAvatar fleetId={fleetId} switcher={switcher} account={account} />} />\n <main className=\"w-full max-w-5xl flex-1 px-4 py-5 sm:px-6\">{children}</main>\n </>\n )}\n </OpenedItemProvider>\n );\n}\n","import { ChevronLeft } from 'lucide-react';\nimport type { ReactNode } from 'react';\n\nimport { inFleet } from '../../../lib/gateway-api/page-account';\nimport { BRIDGE_PATH } from '../paths';\nimport { screenOf, type BridgeScreen } from '../services/shell';\n\n/** What the breadcrumb names while an item is open from home: the list it was opened from (decide.html, do.html, basket.html). */\nconst OPENED_FROM_HOME = 'Waiting on you';\n\n/** An item open in place of its list: the phone's title names it, and its back chevron closes it. */\nexport interface OpenedItem {\n readonly title: string;\n readonly onBack: () => void;\n}\n\nconst BACK = 'inline-flex size-8 shrink-0 items-center justify-center rounded-md hover:bg-accent sm:hidden';\n\nfunction Back({ fleetId, hasBack, opened }: { fleetId: string; hasBack: boolean; opened: OpenedItem | undefined }) {\n if (opened !== undefined) {\n return (\n <button type=\"button\" data-testid=\"bridge-back\" aria-label=\"Back\" onClick={opened.onBack} className={BACK}>\n <ChevronLeft aria-hidden className=\"size-5\" />\n </button>\n );\n }\n if (!hasBack) {\n return null;\n }\n return (\n <a data-testid=\"bridge-back\" aria-label=\"Back to Bridge\" href={inFleet(BRIDGE_PATH, fleetId)} className={BACK}>\n <ChevronLeft aria-hidden className=\"size-5\" />\n </a>\n );\n}\n\n/**\n * Bridge's top bar (home.html, basket.html, decide.html). On desktop the\n * breadcrumb, the fleet then the page in view (Waiting on you while an item\n * is open from home), and Live. On the phone the\n * screen title, an item open in place of its list named by it, with a back\n * chevron where it leads back, Live and the avatar. Live shows while the\n * page follows its changes.\n */\nexport function BridgeTopBar({ fleetId, fleetName, screen, isLive, opened, avatar }: { fleetId: string; fleetName: string | undefined; screen: BridgeScreen; isLive: boolean; opened: OpenedItem | undefined; avatar: ReactNode }) {\n const { name, hasBack } = screenOf(screen);\n const crumb = opened !== undefined && screen === 'home' ? OPENED_FROM_HOME : name;\n return (\n <header className=\"sticky top-0 z-30 flex h-14 shrink-0 items-center gap-2 border-b border-border bg-background pr-3 pl-4\">\n <Back fleetId={fleetId} hasBack={hasBack} opened={opened} />\n <span data-testid=\"bridge-crumb\" className=\"text-muted-foreground max-sm:hidden\">\n {fleetName === undefined ? null : `${fleetName} / `}\n <b className=\"font-semibold text-foreground\">{crumb}</b>\n </span>\n <span data-testid=\"bridge-title\" className={`min-w-0 flex-1 truncate font-semibold tracking-tight sm:hidden ${hasBack || opened !== undefined ? 'text-lg' : 'text-title-touch'}`}>\n {opened?.title ?? name}\n </span>\n {isLive ? (\n <span data-testid=\"bridge-live\" className=\"inline-flex items-center gap-1.5 text-meta text-muted-foreground\">\n <i aria-hidden className=\"inline-block size-2 rounded-full bg-tone-ok-fg\" />\n Live\n </span>\n ) : null}\n <span className=\"sm:hidden\">{avatar}</span>\n </header>\n );\n}\n","import type { AppSwitcherModel } from '@aeolus-fleet/common/rules';\nimport type { AvatarMenuEntry } from '@aeolus-fleet/ui';\nimport { AppWindow, Check } from 'lucide-react';\n\n/** The shared switcher's permitted apps, offered in the phone avatar sheet without replacing the screen title. */\nexport function phoneAppEntries(switcher: AppSwitcherModel | undefined): AvatarMenuEntry[] {\n return switcher?.apps.map(({ app, label, url, isCurrent }) => ({\n key: `app-${app}`,\n label,\n href: url,\n icon: isCurrent ? <Check aria-hidden /> : <AppWindow aria-hidden />,\n isPhoneOnly: true,\n })) ?? [];\n}\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'app-window',\n size: 24,\n node: [\n ['rect', { x: '2', y: '4', width: '20', height: '16', rx: '2', key: 'izxlao' }],\n ['path', { d: 'M10 4v4', key: 'pp8u80' }],\n ['path', { d: 'M2 8h20', key: 'd11cs7' }],\n ['path', { d: 'M6 4v4', key: '1svtjw' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name AppWindow\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cmVjdCB4PSIyIiB5PSI0IiB3aWR0aD0iMjAiIGhlaWdodD0iMTYiIHJ4PSIyIiAvPgogIDxwYXRoIGQ9Ik0xMCA0djQiIC8+CiAgPHBhdGggZD0iTTIgOGgyMCIgLz4KICA8cGF0aCBkPSJNNiA0djQiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/app-window\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst AppWindow = createLucideIcon(__iconData);\n\nexport default AppWindow;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'globe',\n size: 24,\n node: [\n ['circle', { cx: '12', cy: '12', r: '10', key: '1mglay' }],\n ['path', { d: 'M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20', key: '13o1zl' }],\n ['path', { d: 'M2 12h20', key: '9i4pu4' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Globe\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIxMCIgLz4KICA8cGF0aCBkPSJNMTIgMmExNC41IDE0LjUgMCAwIDAgMCAyMCAxNC41IDE0LjUgMCAwIDAgMC0yMCIgLz4KICA8cGF0aCBkPSJNMiAxMmgyMCIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/globe\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Globe = createLucideIcon(__iconData);\n\nexport default Globe;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'route',\n size: 24,\n node: [\n ['circle', { cx: '6', cy: '19', r: '3', key: '1kj8tv' }],\n ['path', { d: 'M9 19h8.5a3.5 3.5 0 0 0 0-7h-11a3.5 3.5 0 0 1 0-7H15', key: '1d8sl' }],\n ['circle', { cx: '18', cy: '5', r: '3', key: 'gq8acd' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Route\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8Y2lyY2xlIGN4PSI2IiBjeT0iMTkiIHI9IjMiIC8+CiAgPHBhdGggZD0iTTkgMTloOC41YTMuNSAzLjUgMCAwIDAgMC03aC0xMWEzLjUgMy41IDAgMCAxIDAtN0gxNSIgLz4KICA8Y2lyY2xlIGN4PSIxOCIgY3k9IjUiIHI9IjMiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/route\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Route = createLucideIcon(__iconData);\n\nexport default Route;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'sliders-horizontal',\n size: 24,\n node: [\n ['path', { d: 'M10 5H3', key: '1qgfaw' }],\n ['path', { d: 'M12 19H3', key: 'yhmn1j' }],\n ['path', { d: 'M14 3v4', key: '1sua03' }],\n ['path', { d: 'M16 17v4', key: '1q0r14' }],\n ['path', { d: 'M21 12h-9', key: '1o4lsq' }],\n ['path', { d: 'M21 19h-5', key: '1rlt1p' }],\n ['path', { d: 'M21 5h-7', key: '1oszz2' }],\n ['path', { d: 'M8 10v4', key: 'tgpxqk' }],\n ['path', { d: 'M8 12H3', key: 'a7s4jb' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name SlidersHorizontal\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTAgNUgzIiAvPgogIDxwYXRoIGQ9Ik0xMiAxOUgzIiAvPgogIDxwYXRoIGQ9Ik0xNCAzdjQiIC8+CiAgPHBhdGggZD0iTTE2IDE3djQiIC8+CiAgPHBhdGggZD0iTTIxIDEyaC05IiAvPgogIDxwYXRoIGQ9Ik0yMSAxOWgtNSIgLz4KICA8cGF0aCBkPSJNMjEgNWgtNyIgLz4KICA8cGF0aCBkPSJNOCAxMHY0IiAvPgogIDxwYXRoIGQ9Ik04IDEySDMiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/sliders-horizontal\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst SlidersHorizontal = createLucideIcon(__iconData);\n\nexport default SlidersHorizontal;\n"],"names":["BRIDGE_PATH","BRIDGE_BASKET_PATH","BRIDGE_STAY_AWARE_PATH","BRIDGE_DONE_PATH","BRIDGE_SETTINGS_PATH","BRIDGE_ROUTING_PATH","SCREENS","home","name","hasBack","tab","basket","done","fleet","routing","settings","OPENED","decide","do","screenOf","screen","openedScreenOf","job","shellCountsOf","fleetAlerts","argo","others","undefined","kind","waiting","value","count","stayAware","filter","state","length","nextShownOf","kept","answer","readAt","part","shown","lastReadAt","lastReadTimeOf","Date","toISOString","slice","key"],"mappings":"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","ignoreList":[0,11,12,13,14]}