@aeolus-fleet/gateway 0.36.0 → 0.36.2
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.
- package/dist/adapters/fleet/active-ships.d.ts +8 -0
- package/dist/adapters/fleet/active-ships.js +22 -0
- package/dist/adapters/fleet/active-ships.js.map +1 -0
- package/dist/adapters/fleet/every-listed-ship.d.ts +21 -0
- package/dist/adapters/fleet/every-listed-ship.js +28 -0
- package/dist/adapters/fleet/every-listed-ship.js.map +1 -0
- package/dist/adapters/fleet/fleet-ships.d.ts +1 -3
- package/dist/adapters/fleet/fleet-ships.js +5 -22
- package/dist/adapters/fleet/fleet-ships.js.map +1 -1
- package/dist/adapters/fleet/rest-fleet-door.js +40 -6
- package/dist/adapters/fleet/rest-fleet-door.js.map +1 -1
- package/dist/adapters/http/party-sign-in-routes.d.ts +7 -0
- package/dist/adapters/http/party-sign-in-routes.js +18 -0
- package/dist/adapters/http/party-sign-in-routes.js.map +1 -1
- package/dist/adapters/http/person-tools.js +3 -2
- package/dist/adapters/http/person-tools.js.map +1 -1
- package/dist/adapters/http/slack-routes.d.ts +2 -0
- package/dist/adapters/http/slack-routes.js +12 -4
- package/dist/adapters/http/slack-routes.js.map +1 -1
- package/dist/adapters/mcp/mcp-servers.d.ts +8 -2
- package/dist/adapters/mcp/mcp-servers.js +8 -4
- package/dist/adapters/mcp/mcp-servers.js.map +1 -1
- package/dist/adapters/prisma/basket-entries.js +4 -2
- package/dist/adapters/prisma/basket-entries.js.map +1 -1
- package/dist/adapters/prisma/connected-chats.d.ts +4 -0
- package/dist/adapters/prisma/connected-chats.js +21 -0
- package/dist/adapters/prisma/connected-chats.js.map +1 -0
- package/dist/adapters/prisma/fleet-forgetter.js +1 -1
- package/dist/adapters/prisma/fleet-forgetter.js.map +1 -1
- package/dist/adapters/prisma/generated/browser.d.ts +6 -1
- package/dist/adapters/prisma/generated/client.d.ts +6 -1
- package/dist/adapters/prisma/generated/internal/class.d.ts +11 -0
- package/dist/adapters/prisma/generated/internal/class.js +4 -4
- package/dist/adapters/prisma/generated/internal/class.js.map +1 -1
- package/dist/adapters/prisma/generated/internal/prismaNamespace.d.ts +95 -1
- package/dist/adapters/prisma/generated/internal/prismaNamespace.js +19 -1
- package/dist/adapters/prisma/generated/internal/prismaNamespace.js.map +1 -1
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.d.ts +19 -0
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js +19 -1
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
- package/dist/adapters/prisma/generated/models/BasketEntry.d.ts +114 -18
- package/dist/adapters/prisma/generated/models/ItemOutcome.d.ts +91 -1
- package/dist/adapters/prisma/generated/models/OpenedDelivery.d.ts +95 -2
- package/dist/adapters/prisma/generated/models/Party.d.ts +32 -1
- package/dist/adapters/prisma/generated/models/SlackLinkStep.d.ts +1005 -0
- package/dist/adapters/prisma/generated/models/SlackLinkStep.js +2 -0
- package/dist/adapters/prisma/generated/models/SlackLinkStep.js.map +1 -0
- package/dist/adapters/prisma/generated/models.d.ts +1 -0
- package/dist/adapters/prisma/item-outcomes.d.ts +6 -1
- package/dist/adapters/prisma/item-outcomes.js +19 -3
- package/dist/adapters/prisma/item-outcomes.js.map +1 -1
- package/dist/adapters/prisma/opened-deliveries.js +5 -0
- package/dist/adapters/prisma/opened-deliveries.js.map +1 -1
- package/dist/adapters/prisma/party-store.js +4 -1
- package/dist/adapters/prisma/party-store.js.map +1 -1
- package/dist/adapters/prisma/slack-link-steps.d.ts +8 -0
- package/dist/adapters/prisma/slack-link-steps.js +28 -0
- package/dist/adapters/prisma/slack-link-steps.js.map +1 -0
- package/dist/adapters/prisma/slack-posts.js +4 -3
- package/dist/adapters/prisma/slack-posts.js.map +1 -1
- package/dist/adapters/slack/slack-messages.d.ts +2 -0
- package/dist/adapters/slack/slack-messages.js +124 -18
- package/dist/adapters/slack/slack-messages.js.map +1 -1
- package/dist/adapters/trpc/router.d.ts +54 -2
- package/dist/adapters/trpc/router.js +25 -1
- package/dist/adapters/trpc/router.js.map +1 -1
- package/dist/app.js +39 -13
- package/dist/app.js.map +1 -1
- package/dist/core/mcp-out/grant-calls.js +1 -1
- package/dist/core/mcp-out/grant-calls.js.map +1 -1
- package/dist/core/mcp-out/hand-call.js +1 -1
- package/dist/core/mcp-out/hand-call.js.map +1 -1
- package/dist/core/mcp-out/keep-server-title.d.ts +13 -0
- package/dist/core/mcp-out/keep-server-title.js +14 -0
- package/dist/core/mcp-out/keep-server-title.js.map +1 -0
- package/dist/core/mcp-out/ports.d.ts +10 -0
- package/dist/core/parties/approve-party.js +1 -1
- package/dist/core/parties/approve-party.js.map +1 -1
- package/dist/core/parties/party.d.ts +2 -0
- package/dist/core/parties/party.js.map +1 -1
- package/dist/core/parties/ports.d.ts +5 -0
- package/dist/core/party-grants/listing-connection.js +2 -2
- package/dist/core/party-grants/listing-connection.js.map +1 -1
- package/dist/core/party-grants/tell-sign-in-needed.d.ts +2 -0
- package/dist/core/party-grants/tell-sign-in-needed.js +16 -4
- package/dist/core/party-grants/tell-sign-in-needed.js.map +1 -1
- package/dist/core/people/act-in-place.d.ts +42 -0
- package/dist/core/people/act-in-place.js +26 -0
- package/dist/core/people/act-in-place.js.map +1 -0
- package/dist/core/people/answer-delivery.js +13 -1
- package/dist/core/people/answer-delivery.js.map +1 -1
- package/dist/core/people/basket.d.ts +32 -10
- package/dist/core/people/basket.js +24 -6
- package/dist/core/people/basket.js.map +1 -1
- package/dist/core/people/count-basket.d.ts +4 -3
- package/dist/core/people/count-basket.js +9 -3
- package/dist/core/people/count-basket.js.map +1 -1
- package/dist/core/people/done-delivery.js +1 -1
- package/dist/core/people/done-delivery.js.map +1 -1
- package/dist/core/people/finish-own-step.js +2 -2
- package/dist/core/people/finish-own-step.js.map +1 -1
- package/dist/core/people/inbox-entry.d.ts +17 -1
- package/dist/core/people/inbox-entry.js +28 -1
- package/dist/core/people/inbox-entry.js.map +1 -1
- package/dist/core/people/item-job.d.ts +3 -1
- package/dist/core/people/item-job.js +5 -1
- package/dist/core/people/item-job.js.map +1 -1
- package/dist/core/people/item-outcome.d.ts +21 -2
- package/dist/core/people/item-outcome.js.map +1 -1
- package/dist/core/people/item-places.d.ts +26 -0
- package/dist/core/people/item-places.js +12 -0
- package/dist/core/people/item-places.js.map +1 -0
- package/dist/core/people/open-delivery.d.ts +6 -6
- package/dist/core/people/open-delivery.js +13 -10
- package/dist/core/people/open-delivery.js.map +1 -1
- package/dist/core/people/opened-of.d.ts +5 -1
- package/dist/core/people/opened-of.js +5 -1
- package/dist/core/people/opened-of.js.map +1 -1
- package/dist/core/people/ports.d.ts +40 -3
- package/dist/core/people/put-in-basket.d.ts +8 -6
- package/dist/core/people/put-in-basket.js +16 -5
- package/dist/core/people/put-in-basket.js.map +1 -1
- package/dist/core/people/read-basket.d.ts +8 -3
- package/dist/core/people/read-basket.js +8 -10
- package/dist/core/people/read-basket.js.map +1 -1
- package/dist/core/people/read-bridge-home.d.ts +39 -11
- package/dist/core/people/read-bridge-home.js +74 -12
- package/dist/core/people/read-bridge-home.js.map +1 -1
- package/dist/core/people/read-chats.d.ts +21 -0
- package/dist/core/people/read-chats.js +20 -0
- package/dist/core/people/read-chats.js.map +1 -0
- package/dist/core/people/read-inbox.d.ts +19 -9
- package/dist/core/people/read-inbox.js +57 -15
- package/dist/core/people/read-inbox.js.map +1 -1
- package/dist/core/people/read-record.d.ts +37 -11
- package/dist/core/people/read-record.js +44 -12
- package/dist/core/people/read-record.js.map +1 -1
- package/dist/core/people/read-send-to.d.ts +23 -0
- package/dist/core/people/read-send-to.js +37 -0
- package/dist/core/people/read-send-to.js.map +1 -0
- package/dist/core/people/read-your-fleet.d.ts +19 -0
- package/dist/core/people/read-your-fleet.js +22 -0
- package/dist/core/people/read-your-fleet.js.map +1 -0
- package/dist/core/people/remove-from-basket.d.ts +2 -1
- package/dist/core/people/remove-from-basket.js +4 -1
- package/dist/core/people/remove-from-basket.js.map +1 -1
- package/dist/core/people/routing.d.ts +13 -4
- package/dist/core/people/routing.js +14 -0
- package/dist/core/people/routing.js.map +1 -1
- package/dist/core/people/send-basket.d.ts +11 -7
- package/dist/core/people/send-basket.js +68 -11
- package/dist/core/people/send-basket.js.map +1 -1
- package/dist/core/people/send-message.d.ts +3 -1
- package/dist/core/people/send-message.js +9 -2
- package/dist/core/people/send-message.js.map +1 -1
- package/dist/core/people/send-stored-answers.d.ts +4 -3
- package/dist/core/people/send-stored-answers.js +62 -12
- package/dist/core/people/send-stored-answers.js.map +1 -1
- package/dist/core/people/stale-item.d.ts +40 -0
- package/dist/core/people/stale-item.js +36 -0
- package/dist/core/people/stale-item.js.map +1 -0
- package/dist/core/people/wake-person.d.ts +3 -1
- package/dist/core/people/wake-person.js +4 -2
- package/dist/core/people/wake-person.js.map +1 -1
- package/dist/core/people/your-fleet.d.ts +44 -0
- package/dist/core/people/your-fleet.js +64 -0
- package/dist/core/people/your-fleet.js.map +1 -0
- package/dist/core/slack/answer-in-slack.d.ts +15 -9
- package/dist/core/slack/answer-in-slack.js +43 -18
- package/dist/core/slack/answer-in-slack.js.map +1 -1
- package/dist/core/slack/ask-to-link-slack.d.ts +28 -0
- package/dist/core/slack/ask-to-link-slack.js +31 -0
- package/dist/core/slack/ask-to-link-slack.js.map +1 -0
- package/dist/core/slack/complete-link.d.ts +6 -1
- package/dist/core/slack/complete-link.js +6 -0
- package/dist/core/slack/complete-link.js.map +1 -1
- package/dist/core/slack/done-in-slack.d.ts +36 -0
- package/dist/core/slack/done-in-slack.js +63 -0
- package/dist/core/slack/done-in-slack.js.map +1 -0
- package/dist/core/slack/edit-slack-posts.d.ts +7 -5
- package/dist/core/slack/edit-slack-posts.js +13 -10
- package/dist/core/slack/edit-slack-posts.js.map +1 -1
- package/dist/core/slack/edited-post-of.d.ts +19 -0
- package/dist/core/slack/edited-post-of.js +77 -0
- package/dist/core/slack/edited-post-of.js.map +1 -0
- package/dist/core/slack/ports.d.ts +68 -10
- package/dist/core/slack/pressed-post-of.d.ts +9 -0
- package/dist/core/slack/pressed-post-of.js +18 -0
- package/dist/core/slack/pressed-post-of.js.map +1 -0
- package/dist/core/slack/read-slack-dropped-out.d.ts +23 -0
- package/dist/core/slack/read-slack-dropped-out.js +24 -0
- package/dist/core/slack/read-slack-dropped-out.js.map +1 -0
- package/dist/core/slack/read-slack-link.d.ts +4 -0
- package/dist/core/slack/read-slack-link.js +5 -0
- package/dist/core/slack/read-slack-link.js.map +1 -1
- package/dist/core/slack/show-in-slack.js +8 -7
- package/dist/core/slack/show-in-slack.js.map +1 -1
- package/dist/core/slack/slack-post-of.d.ts +24 -12
- package/dist/core/slack/slack-post-of.js +118 -37
- package/dist/core/slack/slack-post-of.js.map +1 -1
- package/dist/core/slack/slack-post.d.ts +13 -1
- package/dist/core/slack/slack-post.js +16 -1
- package/dist/core/slack/slack-post.js.map +1 -1
- package/dist/core/slack/slack-press.d.ts +1 -1
- package/dist/core/slack/slack-press.js +2 -1
- package/dist/core/slack/slack-press.js.map +1 -1
- package/dist/person-waiters.js +3 -1
- package/dist/person-waiters.js.map +1 -1
- package/package.json +2 -1
- package/src/adapters/prisma/migrations/20261104090000_basket_entries_note_alone/migration.sql +2 -0
- package/src/adapters/prisma/migrations/20261105090000_slack_link_steps/migration.sql +10 -0
- package/src/adapters/prisma/migrations/20261106090000_opened_deliveries_withdrawn_steps/migration.sql +2 -0
- package/src/adapters/prisma/migrations/20261107090000_opened_deliveries_step_link/migration.sql +2 -0
- package/src/adapters/prisma/migrations/20261107100000_opened_deliveries_opened_in/migration.sql +2 -0
- package/src/adapters/prisma/migrations/20261108090000_item_outcomes_note_and_seen/migration.sql +4 -0
- package/src/adapters/prisma/migrations/20261108090000_parties_display_name/migration.sql +2 -0
- package/src/adapters/prisma/migrations/20261109090000_basket_entries_option_label/migration.sql +2 -0
- package/src/adapters/prisma/migrations/20261109100000_basket_entries_sent/migration.sql +3 -0
- package/src/adapters/prisma/migrations/20261110090000_connected_chats_indexes/migration.sql +5 -0
- package/src/adapters/prisma/schema.prisma +41 -6
- package/web/.next/BUILD_ID +1 -1
- package/web/.next/app-path-routes-manifest.json +10 -8
- package/web/.next/build-manifest.json +114 -90
- package/web/.next/diagnostics/route-bundle-stats.json +264 -206
- package/web/.next/fallback-build-manifest.json +3 -3
- package/web/.next/prerender-manifest.json +3 -3
- package/web/.next/routes-manifest.json +12 -0
- package/web/.next/server/app/(bridge)/bridge/basket/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/{(console) → (bridge)}/bridge/basket/page/build-manifest.json +4 -4
- package/web/.next/server/app/{(console) → (bridge)}/bridge/basket/page/next-font-manifest.json +1 -1
- package/web/.next/server/app/(bridge)/bridge/basket/page/server-reference-manifest.json +105 -0
- package/web/.next/server/app/{(console)/bridge/settings/requests/[requestId] → (bridge)/bridge/basket}/page.js +14 -13
- package/web/.next/server/app/(bridge)/bridge/basket/page.js.nft.json +1 -0
- package/web/.next/server/app/(bridge)/bridge/basket/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(bridge)/bridge/changes/route/app-paths-manifest.json +3 -0
- package/web/.next/server/app/(bridge)/bridge/changes/route.js +8 -0
- package/web/.next/server/app/{(console) → (bridge)}/bridge/changes/route.js.nft.json +1 -1
- package/web/.next/server/app/(bridge)/bridge/changes/route_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(bridge)/bridge/done/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/{(console) → (bridge)}/bridge/done/page/build-manifest.json +4 -4
- package/web/.next/server/app/{(console) → (bridge)}/bridge/done/page/next-font-manifest.json +1 -1
- package/web/.next/server/app/(bridge)/bridge/done/page/server-reference-manifest.json +25 -0
- package/web/.next/server/app/{(console) → (bridge)}/bridge/done/page.js +15 -14
- package/web/.next/server/app/{(console) → (bridge)}/bridge/done/page.js.nft.json +1 -1
- package/web/.next/server/app/(bridge)/bridge/done/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(bridge)/bridge/fleet/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/{(console)/bridge/settings → (bridge)/bridge/fleet}/page/build-manifest.json +4 -4
- package/web/.next/server/app/{(console)/bridge/settings → (bridge)/bridge/fleet}/page/next-font-manifest.json +1 -1
- package/web/.next/server/app/{(console)/bridge/settings → (bridge)/bridge/fleet}/page/server-reference-manifest.json +3 -3
- package/web/.next/server/app/(bridge)/bridge/fleet/page.js +24 -0
- package/web/.next/server/app/{(console)/bridge/basket → (bridge)/bridge/fleet}/page.js.nft.json +1 -1
- package/web/.next/server/app/(bridge)/bridge/fleet/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(bridge)/bridge/focus/route/app-paths-manifest.json +3 -0
- package/web/.next/server/app/(bridge)/bridge/focus/route.js +8 -0
- package/web/.next/server/app/{(console) → (bridge)}/bridge/focus/route.js.nft.json +1 -1
- package/web/.next/server/app/(bridge)/bridge/focus/route_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(bridge)/bridge/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/{(console) → (bridge)}/bridge/page/build-manifest.json +4 -4
- package/web/.next/server/app/{(console) → (bridge)}/bridge/page/next-font-manifest.json +1 -1
- package/web/.next/server/app/(bridge)/bridge/page/server-reference-manifest.json +95 -0
- package/web/.next/server/app/{(console) → (bridge)}/bridge/page.js +16 -14
- package/web/.next/server/app/{(console) → (bridge)}/bridge/page.js.nft.json +1 -1
- package/web/.next/server/app/(bridge)/bridge/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(bridge)/bridge/settings/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/(bridge)/bridge/settings/page/build-manifest.json +23 -0
- package/web/.next/server/app/(bridge)/bridge/settings/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/(bridge)/bridge/settings/page/server-reference-manifest.json +15 -0
- package/web/.next/server/app/{(console) → (bridge)}/bridge/settings/page.js +13 -12
- package/web/.next/server/app/{(console) → (bridge)}/bridge/settings/page.js.nft.json +1 -1
- package/web/.next/server/app/(bridge)/bridge/settings/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(bridge)/bridge/settings/requests/[requestId]/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/(bridge)/bridge/settings/requests/[requestId]/page/build-manifest.json +23 -0
- package/web/.next/server/app/(bridge)/bridge/settings/requests/[requestId]/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/{(console) → (bridge)}/bridge/settings/requests/[requestId]/page/server-reference-manifest.json +6 -6
- package/web/.next/server/app/(bridge)/bridge/settings/requests/[requestId]/page.js +26 -0
- package/web/.next/server/app/{(console) → (bridge)}/bridge/settings/requests/[requestId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(bridge)/bridge/settings/requests/[requestId]/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(bridge)/bridge/settings/routing/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/(bridge)/bridge/settings/routing/page/build-manifest.json +23 -0
- package/web/.next/server/app/(bridge)/bridge/settings/routing/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/(bridge)/bridge/settings/routing/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/{(console) → (bridge)}/bridge/settings/routing/page/server-reference-manifest.json +15 -15
- package/web/.next/server/app/{(console) → (bridge)}/bridge/settings/routing/page.js +15 -14
- package/web/.next/server/app/(bridge)/bridge/settings/routing/page.js.map +5 -0
- package/web/.next/server/app/{(console) → (bridge)}/bridge/settings/routing/page.js.nft.json +1 -1
- package/web/.next/server/app/(bridge)/bridge/settings/routing/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(bridge)/bridge/stay-aware/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/(bridge)/bridge/stay-aware/page/build-manifest.json +23 -0
- package/web/.next/server/app/(bridge)/bridge/stay-aware/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/(bridge)/bridge/stay-aware/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/(bridge)/bridge/stay-aware/page/server-reference-manifest.json +95 -0
- package/web/.next/server/app/{(console)/bridge/basket → (bridge)/bridge/stay-aware}/page.js +15 -14
- package/web/.next/server/app/(bridge)/bridge/stay-aware/page.js.map +5 -0
- package/web/.next/server/app/(bridge)/bridge/stay-aware/page.js.nft.json +1 -0
- package/web/.next/server/app/(bridge)/bridge/stay-aware/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(console)/gateway-off/page/build-manifest.json +4 -4
- package/web/.next/server/app/(console)/gateway-off/page/server-reference-manifest.json +1 -1
- package/web/.next/server/app/(console)/gateway-off/page.js +2 -2
- package/web/.next/server/app/(console)/gateway-off/page.js.nft.json +1 -1
- package/web/.next/server/app/(console)/gateway-off/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(console)/meetings/[meetingId]/page/build-manifest.json +4 -4
- package/web/.next/server/app/(console)/meetings/[meetingId]/page/server-reference-manifest.json +3 -3
- package/web/.next/server/app/(console)/meetings/[meetingId]/page.js +2 -2
- package/web/.next/server/app/(console)/meetings/[meetingId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(console)/meetings/[meetingId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(console)/outside-parties/[name]/change/page/build-manifest.json +4 -4
- package/web/.next/server/app/(console)/outside-parties/[name]/change/page/server-reference-manifest.json +18 -18
- package/web/.next/server/app/(console)/outside-parties/[name]/change/page.js +2 -2
- package/web/.next/server/app/(console)/outside-parties/[name]/change/page.js.nft.json +1 -1
- package/web/.next/server/app/(console)/outside-parties/[name]/change/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(console)/outside-parties/[name]/page/build-manifest.json +4 -4
- package/web/.next/server/app/(console)/outside-parties/[name]/page/server-reference-manifest.json +8 -8
- package/web/.next/server/app/(console)/outside-parties/[name]/page.js +2 -2
- package/web/.next/server/app/(console)/outside-parties/[name]/page.js.nft.json +1 -1
- package/web/.next/server/app/(console)/outside-parties/[name]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(console)/outside-parties/[name]/retire/page/build-manifest.json +4 -4
- package/web/.next/server/app/(console)/outside-parties/[name]/retire/page/server-reference-manifest.json +18 -18
- package/web/.next/server/app/(console)/outside-parties/[name]/retire/page.js +2 -2
- package/web/.next/server/app/(console)/outside-parties/[name]/retire/page.js.nft.json +1 -1
- package/web/.next/server/app/(console)/outside-parties/[name]/retire/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(console)/outside-parties/add/page/build-manifest.json +4 -4
- package/web/.next/server/app/(console)/outside-parties/add/page/server-reference-manifest.json +10 -10
- package/web/.next/server/app/(console)/outside-parties/add/page.js +2 -2
- package/web/.next/server/app/(console)/outside-parties/add/page.js.nft.json +1 -1
- package/web/.next/server/app/(console)/outside-parties/add/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(console)/outside-parties/add-a2a-agent/page/build-manifest.json +4 -4
- package/web/.next/server/app/(console)/outside-parties/add-a2a-agent/page/server-reference-manifest.json +2 -2
- package/web/.next/server/app/(console)/outside-parties/add-a2a-agent/page.js +2 -2
- package/web/.next/server/app/(console)/outside-parties/add-a2a-agent/page.js.nft.json +1 -1
- package/web/.next/server/app/(console)/outside-parties/add-a2a-agent/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(console)/outside-parties/add-a2a-client/page/build-manifest.json +4 -4
- package/web/.next/server/app/(console)/outside-parties/add-a2a-client/page/server-reference-manifest.json +2 -2
- package/web/.next/server/app/(console)/outside-parties/add-a2a-client/page.js +2 -2
- package/web/.next/server/app/(console)/outside-parties/add-a2a-client/page.js.nft.json +1 -1
- package/web/.next/server/app/(console)/outside-parties/add-a2a-client/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(console)/outside-parties/page/build-manifest.json +4 -4
- package/web/.next/server/app/(console)/outside-parties/page/server-reference-manifest.json +2 -2
- package/web/.next/server/app/(console)/outside-parties/page.js +2 -2
- package/web/.next/server/app/(console)/outside-parties/page.js.nft.json +1 -1
- package/web/.next/server/app/(console)/outside-parties/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(console)/parties/page/build-manifest.json +4 -4
- package/web/.next/server/app/(console)/parties/page/server-reference-manifest.json +8 -8
- package/web/.next/server/app/(console)/parties/page.js +2 -2
- package/web/.next/server/app/(console)/parties/page.js.nft.json +1 -1
- package/web/.next/server/app/(console)/parties/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(console)/sign-in/failed/page/build-manifest.json +4 -4
- package/web/.next/server/app/(console)/sign-in/failed/page/server-reference-manifest.json +1 -1
- package/web/.next/server/app/(console)/sign-in/failed/page.js +2 -2
- package/web/.next/server/app/(console)/sign-in/failed/page.js.nft.json +1 -1
- package/web/.next/server/app/(console)/sign-in/failed/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(console)/slack/disconnect/page/build-manifest.json +4 -4
- package/web/.next/server/app/(console)/slack/disconnect/page/server-reference-manifest.json +9 -9
- package/web/.next/server/app/(console)/slack/disconnect/page.js +2 -2
- package/web/.next/server/app/(console)/slack/disconnect/page.js.nft.json +1 -1
- package/web/.next/server/app/(console)/slack/disconnect/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(console)/slack/expose/page/build-manifest.json +4 -4
- package/web/.next/server/app/(console)/slack/expose/page/server-reference-manifest.json +9 -9
- package/web/.next/server/app/(console)/slack/expose/page.js +2 -2
- package/web/.next/server/app/(console)/slack/expose/page.js.nft.json +1 -1
- package/web/.next/server/app/(console)/slack/expose/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(console)/slack/link/route.js.nft.json +1 -1
- package/web/.next/server/app/(console)/slack/page/build-manifest.json +4 -4
- package/web/.next/server/app/(console)/slack/page/server-reference-manifest.json +9 -9
- package/web/.next/server/app/(console)/slack/page.js +2 -2
- package/web/.next/server/app/(console)/slack/page.js.nft.json +1 -1
- package/web/.next/server/app/(console)/slack/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(console)/slack/remove/page/build-manifest.json +4 -4
- package/web/.next/server/app/(console)/slack/remove/page/server-reference-manifest.json +9 -9
- package/web/.next/server/app/(console)/slack/remove/page.js +4 -4
- package/web/.next/server/app/(console)/slack/remove/page.js.nft.json +1 -1
- package/web/.next/server/app/(console)/slack/remove/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/_global-error/page/build-manifest.json +4 -4
- package/web/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/web/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/_global-error.html +1 -1
- package/web/.next/server/app/_global-error.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/web/.next/server/app/_not-found/page/build-manifest.json +4 -4
- package/web/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
- package/web/.next/server/app/_not-found/page.js +2 -2
- package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/apple-icon.png/route.js.nft.json +1 -1
- package/web/.next/server/app/authorize/failed/page/build-manifest.json +4 -4
- package/web/.next/server/app/authorize/failed/page/server-reference-manifest.json +1 -1
- package/web/.next/server/app/authorize/failed/page.js +3 -2
- package/web/.next/server/app/authorize/failed/page.js.nft.json +1 -1
- package/web/.next/server/app/authorize/failed/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/authorize/pick/page/build-manifest.json +4 -4
- package/web/.next/server/app/authorize/pick/page/server-reference-manifest.json +1 -1
- package/web/.next/server/app/authorize/pick/page.js +7 -5
- package/web/.next/server/app/authorize/pick/page.js.nft.json +1 -1
- package/web/.next/server/app/authorize/pick/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/authorize/waiting/approval/page/build-manifest.json +4 -4
- package/web/.next/server/app/authorize/waiting/approval/page/server-reference-manifest.json +1 -1
- package/web/.next/server/app/authorize/waiting/approval/page.js +3 -2
- package/web/.next/server/app/authorize/waiting/approval/page.js.nft.json +1 -1
- package/web/.next/server/app/authorize/waiting/approval/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/icon.svg/route.js.nft.json +1 -1
- package/web/.next/server/app-paths-manifest.json +10 -8
- package/web/.next/server/chunks/0b9d__next-internal_server_app_(bridge)_bridge_changes_route_actions_0wd1c_8tnx6-f.js +3 -0
- package/web/.next/server/chunks/[root-of-the-server]__1j0sdz18lzulo._.js +2 -2
- package/web/.next/server/chunks/[root-of-the-server]__1o2xxi_001xql._.js +2 -2
- package/web/.next/server/chunks/_0up_7s_05-7vm._.js +3 -0
- package/web/.next/server/chunks/_0up_7s_05-7vm._.js.map +1 -0
- package/web/.next/server/chunks/_0xw0b7avhvg75._.js +1 -1
- package/web/.next/server/chunks/_1w2t6c0hpdsrn._.js +1 -1
- package/web/.next/server/chunks/_1xaed_q500ez6._.js +3 -0
- package/web/.next/server/chunks/_1xaed_q500ez6._.js.map +1 -0
- package/web/.next/server/chunks/_20ne4s-e_jzxp._.js +1 -1
- package/web/.next/server/chunks/_20ne4s-e_jzxp._.js.map +1 -1
- package/web/.next/server/chunks/ssr/01fr_app_(bridge)_bridge_settings_requests_[requestId]_page_actions_0o8g7_xshtmem.js +3 -0
- package/web/.next/server/chunks/ssr/01fr_app_(bridge)_bridge_settings_requests_[requestId]_page_actions_0o8g7_xshtmem.js.map +1 -0
- package/web/.next/server/chunks/ssr/0b9d__next-internal_server_app_(bridge)_bridge_stay-aware_page_actions_1u0xo0v3y9c34.js +3 -0
- package/web/.next/server/chunks/ssr/0b9d__next-internal_server_app_(bridge)_bridge_stay-aware_page_actions_1u0xo0v3y9c34.js.map +1 -0
- package/web/.next/server/chunks/ssr/0vkm_server_app_(bridge)_bridge_settings_routing_page_actions_06_j7s24dy5ee.js +3 -0
- package/web/.next/server/chunks/ssr/0vkm_server_app_(bridge)_bridge_settings_routing_page_actions_06_j7s24dy5ee.js.map +1 -0
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_[name]_change_page_actions_04td11fxohsfm.js +1 -1
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_[name]_change_page_actions_04td11fxohsfm.js.map +1 -1
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_[name]_page_actions_0u-45itza1ls7.js +1 -1
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_[name]_page_actions_0u-45itza1ls7.js.map +1 -1
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_[name]_retire_page_actions_0s7ps6i0ts7v5.js +1 -1
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_[name]_retire_page_actions_0s7ps6i0ts7v5.js.map +1 -1
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_add-a2a-client_page_actions_0d_wgiu94c32e.js +1 -1
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_add-a2a-client_page_actions_0d_wgiu94c32e.js.map +1 -1
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_add_page_actions_0yfz_dfn-8uo7.js +1 -1
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_add_page_actions_0yfz_dfn-8uo7.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__001xx3sm5ur-e._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__001xx3sm5ur-e._.js.map +1 -1
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__1yyaeeylnezpi._.js → [root-of-the-server]__04_bc8g0oe4jt._.js} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0a6a1yc_ac-qt._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0a8db18tyk__5._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0a8db18tyk__5._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0e4l5gt01o04p._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0e4l5gt01o04p._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0gptrhg3mj4hs._.js +57 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0gptrhg3mj4hs._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0k3g0p3t9t0c-._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0k3g0p3t9t0c-._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0kjcooo3pi4_k._.js +57 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0kjcooo3pi4_k._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0rmg7huc074bf._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0rmg7huc074bf._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__10s9e8g5x-ws8._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__10s9e8g5x-ws8._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__13v3maun347sn._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__13v3maun347sn._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__13yoncr_nx3jc._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__13yoncr_nx3jc._.js.map +1 -1
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__0gnfxe62edx95._.js → [root-of-the-server]__179upda-y7uap._.js} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__18-8taiduk1jn._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__18-8taiduk1jn._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1hgu6f5hpnykv._.js +57 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1hgu6f5hpnykv._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1j6n8jj7-5t6v._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1j6n8jj7-5t6v._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1qpow96uit9t8._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1qpow96uit9t8._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1qtzvez4cn5be._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1qtzvez4cn5be._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1ul9rrs2g66lm._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1ul9rrs2g66lm._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__20gvfqy33wcds._.js +57 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__20gvfqy33wcds._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_00hfzlqn1og18._.js +1 -1
- package/web/.next/server/chunks/ssr/_00hfzlqn1og18._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_03lk54yp-yhw3._.js +2 -2
- package/web/.next/server/chunks/ssr/_03lk54yp-yhw3._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_0cnpz5jm2_9xf._.js +3 -0
- package/web/.next/server/chunks/ssr/_0cnpz5jm2_9xf._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_0f7ucdt7bfmun._.js +3 -0
- package/web/.next/server/chunks/ssr/_0f7ucdt7bfmun._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_0ka_9elusb800._.js +1 -1
- package/web/.next/server/chunks/ssr/_0ka_9elusb800._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_0kk7op86em7z2._.js +3 -0
- package/web/.next/server/chunks/ssr/_0kk7op86em7z2._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_0oekmfmigr0qv._.js +3 -0
- package/web/.next/server/chunks/ssr/_0oekmfmigr0qv._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_0pirspvjp3ggl._.js +3 -0
- package/web/.next/server/chunks/ssr/_0pirspvjp3ggl._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_0pyd1_y7w8ngp._.js +1 -1
- package/web/.next/server/chunks/ssr/_0pyd1_y7w8ngp._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_0v_x6k3ztfvx0._.js +3 -0
- package/web/.next/server/chunks/ssr/_0v_x6k3ztfvx0._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_0vid8-myyy-_4._.js +3 -0
- package/web/.next/server/chunks/ssr/_0vid8-myyy-_4._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_0xickgbbju_9-._.js +1 -1
- package/web/.next/server/chunks/ssr/_0xickgbbju_9-._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_0y5eahpucp8g_._.js +3 -0
- package/web/.next/server/chunks/ssr/_0y5eahpucp8g_._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_13fbnlwrl24s3._.js +3 -0
- package/web/.next/server/chunks/ssr/_13fbnlwrl24s3._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_14k1oldo5chf8._.js +3 -0
- package/web/.next/server/chunks/ssr/_14k1oldo5chf8._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_15whg3fd67b9x._.js +3 -0
- package/web/.next/server/chunks/ssr/_15whg3fd67b9x._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_17zzluh48wsdb._.js +3 -0
- package/web/.next/server/chunks/ssr/_17zzluh48wsdb._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_18xv7kh7i655_._.js +3 -0
- package/web/.next/server/chunks/ssr/_18xv7kh7i655_._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_1_wav28san6dm._.js +1 -1
- package/web/.next/server/chunks/ssr/_1_ym4hwge_4r0._.js +3 -0
- package/web/.next/server/chunks/ssr/_1_ym4hwge_4r0._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_1a9wrl8uw7x-y._.js +3 -0
- package/web/.next/server/chunks/ssr/_1a9wrl8uw7x-y._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{_1hmjvjuxx92vo._.js → _1airu8wwf7z1b._.js} +2 -2
- package/web/.next/server/chunks/ssr/_1airu8wwf7z1b._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_1e2o809f0ekry._.js +1 -1
- package/web/.next/server/chunks/ssr/{_0a_nsm-ye2r6v._.js → _1gbkqq8ra1nei._.js} +2 -2
- package/web/.next/server/chunks/ssr/_1gbkqq8ra1nei._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_1i5zdy3tp2ykh._.js +3 -0
- package/web/.next/server/chunks/ssr/_1i5zdy3tp2ykh._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_1i8ofnr1a5yle._.js +3 -0
- package/web/.next/server/chunks/ssr/_1i8ofnr1a5yle._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_1iorutn_o9hja._.js +3 -0
- package/web/.next/server/chunks/ssr/_1iorutn_o9hja._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_1kdx8a0j5cxyl._.js +3 -0
- package/web/.next/server/chunks/ssr/_1kdx8a0j5cxyl._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_1mg5oon0wpocg._.js +3 -0
- package/web/.next/server/chunks/ssr/_1mg5oon0wpocg._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_1pjtire7rqla0._.js +1 -1
- package/web/.next/server/chunks/ssr/_1pjtire7rqla0._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_1pp0z5srqqqyl._.js +3 -0
- package/web/.next/server/chunks/ssr/_1pp0z5srqqqyl._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_1qbsmlji34yph._.js +1 -1
- package/web/.next/server/chunks/ssr/_1qbsmlji34yph._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_1rfpx4ze-3l8z._.js +3 -0
- package/web/.next/server/chunks/ssr/{web_features_0mi9a9pdzkdji._.js.map → _1rfpx4ze-3l8z._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_1t74yvog5g6g2._.js +3 -0
- package/web/.next/server/chunks/ssr/_1t74yvog5g6g2._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_1ve-ao6odintc._.js +3 -0
- package/web/.next/server/chunks/ssr/_1ve-ao6odintc._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_1xuikhitica6p._.js +3 -0
- package/web/.next/server/chunks/ssr/_1xuikhitica6p._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_1zmd3armaxhyu._.js +4 -0
- package/web/.next/server/chunks/ssr/_1zmd3armaxhyu._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_0489ke-80obwd._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_0489ke-80obwd._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_0gpbs01t1c_a4._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_0gpbs01t1c_a4._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_0ue_35q2cegwf._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_0ue_35q2cegwf._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_0zgrzr0ui3gi8._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_0zgrzr0ui3gi8._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_174jf4d4t_bo_._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_174jf4d4t_bo_._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_1qxtjrbc2-6xd._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_1qxtjrbc2-6xd._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_@aeolus-fleet_common_dist_header_0t_cmi-llaq7g._.js +1 -1
- package/web/.next/server/chunks/ssr/node_modules_@aeolus-fleet_common_dist_header_0t_cmi-llaq7g._.js.map +1 -1
- package/web/.next/server/chunks/ssr/node_modules_@aeolus-fleet_common_dist_header_app-switcher_08qq5-uxv7jii.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_@aeolus-fleet_common_dist_header_app-switcher_08qq5-uxv7jii.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_@aeolus-fleet_common_dist_header_class-names_1h5pbm2ucssiq.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_@aeolus-fleet_common_dist_header_class-names_1h5pbm2ucssiq.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_@base-ui_0jlwmxa9rk8p_._.js +1 -1
- package/web/.next/server/chunks/ssr/node_modules_@base-ui_0jlwmxa9rk8p_._.js.map +1 -1
- package/web/.next/server/chunks/ssr/node_modules_@base-ui_19e_nxxf4a88q._.js +1 -1
- package/web/.next/server/chunks/ssr/node_modules_@base-ui_19e_nxxf4a88q._.js.map +1 -1
- package/web/.next/server/chunks/ssr/node_modules_@base-ui_react_1cvjxnw-b3pnv._.js +3 -0
- 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
- package/web/.next/server/chunks/ssr/node_modules_@base-ui_react_toast_index_parts_mjs_20gwon7142aop._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_@base-ui_react_toast_index_parts_mjs_20gwon7142aop._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_bell_mjs_1sxms6d0wfxa2._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_bell_mjs_1sxms6d0wfxa2._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_search_mjs_047mxu6_po4kl._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_search_mjs_047mxu6_po4kl._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_08hq6z46rczo0._.js +2 -2
- package/web/.next/server/chunks/ssr/node_modules_next_dist_0janj0i6dqko7._.js +2 -2
- package/web/.next/server/chunks/ssr/node_modules_next_dist_0janj0i6dqko7._.js.map +1 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0g15rgn4n-oiz.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0g15rgn4n-oiz.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0hzwtyh-646p2.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0hzwtyh-646p2.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0mm8dt8tws1fz.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0mm8dt8tws1fz.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0tcy7phl8a4gj.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0tcy7phl8a4gj.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0ynno0usi0bwx.js +1 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_11x159_oszki3.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_11x159_oszki3.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_128zox167vtjm.js +1 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_128zox167vtjm.js.map +1 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1dltrn6ii5dd6.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1dltrn6ii5dd6.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1hm1iu016c1fy.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1hm1iu016c1fy.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1zaoeyy4_vir_.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1zaoeyy4_vir_.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_0_peudz6-o69m._.js +3 -0
- package/web/.next/server/chunks/ssr/web_0_peudz6-o69m._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_0cxcy088wnfmw._.js +3 -0
- package/web/.next/server/chunks/ssr/web_0cxcy088wnfmw._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_0oz8bypfxh82g._.js +3 -0
- package/web/.next/server/chunks/ssr/web_0oz8bypfxh82g._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_0pk41f5m34jvi._.js +3 -0
- package/web/.next/server/chunks/ssr/web_0pk41f5m34jvi._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_0wys4l6za8umr._.js +1 -1
- package/web/.next/server/chunks/ssr/web_0wys4l6za8umr._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_1fi1x3y7rg7mf._.js +3 -0
- package/web/.next/server/chunks/ssr/web_1fi1x3y7rg7mf._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_1irsulms62lzf._.js +3 -0
- package/web/.next/server/chunks/ssr/web_1irsulms62lzf._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_1k2rrq-kr6f9k._.js +3 -0
- package/web/.next/server/chunks/ssr/web_1k2rrq-kr6f9k._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_1qvxzqmq4aw94._.js +3 -0
- package/web/.next/server/chunks/ssr/web_1qvxzqmq4aw94._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_(bridge)_bridge_basket_page_actions_0g7q_rc5nma1e.js +3 -0
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_(bridge)_bridge_basket_page_actions_0g7q_rc5nma1e.js.map +1 -0
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_(bridge)_bridge_done_page_actions_0kjm34arntdzv.js +3 -0
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_(bridge)_bridge_done_page_actions_0kjm34arntdzv.js.map +1 -0
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_(bridge)_bridge_page_actions_1ok64rg3edm_u.js +3 -0
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_(bridge)_bridge_page_actions_1ok64rg3edm_u.js.map +1 -0
- 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
- package/web/.next/server/chunks/ssr/web_app_(bridge)_bridge_error_tsx_0-142o0iqsh3j._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_app_(bridge)_bridge_error_tsx_1m86qyp1bl9pi._.js +3 -0
- package/web/.next/server/chunks/ssr/web_app_(bridge)_bridge_error_tsx_1m86qyp1bl9pi._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_app_(bridge)_bridge_fleet_page_tsx_0uvtx8hiy8g0n._.js +3 -0
- package/web/.next/server/chunks/ssr/web_app_(bridge)_bridge_fleet_page_tsx_0uvtx8hiy8g0n._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_app_(bridge)_bridge_settings_page_tsx_1z5yr8ss25q7n._.js +3 -0
- package/web/.next/server/chunks/ssr/web_app_(bridge)_bridge_settings_page_tsx_1z5yr8ss25q7n._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{web_features_0f6r-m-dq36vf._.js → web_features_025l9l6m2zkya._.js} +2 -2
- package/web/.next/server/chunks/ssr/{web_features_0f6r-m-dq36vf._.js.map → web_features_025l9l6m2zkya._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/web_features_05aos-xwnl3m_._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_05aos-xwnl3m_._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_0bwqcs9wjf4y8._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_0bwqcs9wjf4y8._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{web_features_0d48z2epb6oie._.js → web_features_0f2pobf_t4wjt._.js} +2 -2
- package/web/.next/server/chunks/ssr/{web_features_0d48z2epb6oie._.js.map → web_features_0f2pobf_t4wjt._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/web_features_add-a2a-agent_ui_a2a-agent-form_tsx_0z8t1aalwzyl7._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_add-a2a-agent_ui_a2a-agent-form_tsx_0z8t1aalwzyl7._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_features_add-a2a-client_ui_a2a-client-form_tsx_1anv88g385nwe._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_add-a2a-client_ui_a2a-client-form_tsx_1anv88g385nwe._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_features_add-server_ui_add-server_tsx_1jnmar5xju49k._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_add-server_ui_add-server_tsx_1jnmar5xju49k._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_0w95y19yk5w14._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_bridge_0w95y19yk5w14._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_bridge_1mi9qlb-z5iwt._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_1mi9qlb-z5iwt._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_fleet_ui_fleet-numbers_tsx_0_afv4j248_w-._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_bridge_fleet_ui_fleet-numbers_tsx_0_afv4j248_w-._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_bridge_hooks_bridge-actions_ts_0h-_xm2rcb-ij._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_hooks_bridge-actions_ts_0h-_xm2rcb-ij._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_state_basket-panel_tsx_1qi_kzld0rfgs._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_state_basket-panel_tsx_1qi_kzld0rfgs._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_state_decision-panel_tsx_1mzsixgc8zuxc._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_state_decision-panel_tsx_1mzsixgc8zuxc._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_state_done-panel_tsx_1m844-qb1z9p_._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_state_done-panel_tsx_1m844-qb1z9p_._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_state_home-panel_tsx_1cc5zdhxogl_2._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_state_home-panel_tsx_1cc5zdhxogl_2._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_ui_1y4g3fe75nqn5._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_ui_1y4g3fe75nqn5._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_ui_item-row_tsx_0c_a8wjzwsr7j._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_bridge_ui_item-row_tsx_0c_a8wjzwsr7j._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_frame_0pe8cwpxe1egb._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_frame_0pe8cwpxe1egb._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_features_frame_ui_gateway-header_tsx_0e9tekx4jf7ng._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_frame_ui_gateway-header_tsx_0e9tekx4jf7ng._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_features_meeting_state_meeting-controls_tsx_12g4kzk2mbvvz._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_meeting_state_meeting-controls_tsx_12g4kzk2mbvvz._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_features_outside-parties_paths_ts_0vbj9elyqekpp._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_outside-parties_paths_ts_0vbj9elyqekpp._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_outside-parties_ui_switch-card_tsx_1_xnu9bm4tc-_._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_outside-parties_ui_switch-card_tsx_1_xnu9bm4tc-_._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_features_outside-party_actions_ts_102ar5pdowf8s._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_parties_actions_ts_0r-tbfsig2ty-._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_slack_actions_ts_1l3yg9vl20_vu._.js +1 -1
- package/web/.next/server/chunks/web__next-internal_server_app_(bridge)_bridge_focus_route_actions_0fx2vmqfq23mq.js +3 -0
- package/web/.next/server/middleware-build-manifest.js +114 -90
- package/web/.next/server/next-font-manifest.js +1 -1
- package/web/.next/server/next-font-manifest.json +14 -6
- package/web/.next/server/pages/500.html +1 -1
- package/web/.next/server/preview-props.json +3 -3
- package/web/.next/server/server-reference-manifest.js +1 -1
- package/web/.next/server/server-reference-manifest.json +163 -101
- package/web/.next/static/chunks/{40j58bya72xh1.js → 0k33n07zesv12.js} +1 -1
- package/web/.next/static/chunks/0ozz8jadgfdrx.js +1 -0
- package/web/.next/static/chunks/{1166rxt6h6ilq.js → 1c8q9h-van9r6.js} +1 -1
- package/web/.next/static/chunks/1nzfw6ajt5nf9.js +55 -0
- package/web/.next/static/chunks/1uhmdmkn5gsk2.js +1 -0
- package/web/.next/static/chunks/1v36iovy1f5cj.js +1 -0
- package/web/.next/static/chunks/1vhvy8bx4fxur.js +1 -0
- package/web/.next/static/chunks/1vhx_nu9nxo1v.js +1 -0
- package/web/.next/static/chunks/{3hvw5n04pbwg8.js → 23vvtbj-zoa_f.js} +1 -1
- package/web/.next/static/chunks/24vn5i6ojvl8l.js +1 -0
- package/web/.next/static/chunks/2dgbb29jkr_tu.js +1 -0
- package/web/.next/static/chunks/2ewacyhp73due.js +1 -0
- package/web/.next/static/chunks/2fimf0wcjnmpj.js +1 -0
- package/web/.next/static/chunks/2fk9ydkphmyna.js +1 -0
- package/web/.next/static/chunks/2l6hafvocw-rd.js +1 -0
- package/web/.next/static/chunks/2ld8_nap7g_uy.js +1 -0
- package/web/.next/static/chunks/2mpwg-t6pat39.js +1 -0
- package/web/.next/static/chunks/2pvcbql986wln.js +1 -0
- package/web/.next/static/chunks/2s1efgj6gxjgl.js +1 -0
- package/web/.next/static/chunks/2zlx-c_0x38uo.css +3 -0
- package/web/.next/static/chunks/34u_331hqync_.js +1 -0
- package/web/.next/static/chunks/39tst46ewpx_k.js +1 -0
- package/web/.next/static/chunks/{322fzslly9wpf.js → 3_bb0g4jkqn8q.js} +1 -1
- package/web/.next/static/chunks/3d5z1i-6yksxd.js +1 -0
- package/web/.next/static/chunks/3jq9vu8tr29j2.js +1 -0
- package/web/.next/static/chunks/3kenmp9pjwgf2.js +1 -0
- package/web/.next/static/chunks/3knqujtrdi225.js +1 -0
- package/web/.next/static/chunks/{0lzisjsmhlhjf.js → 3zhaqdsq15d1e.js} +1 -1
- package/web/.next/trace +1 -1
- package/web/.next/trace-build +1 -1
- package/web/.next/types/routes.d.ts +3 -1
- package/web/.next/types/validator.ts +50 -16
- package/dist/core/people/stale-question.d.ts +0 -28
- package/dist/core/people/stale-question.js +0 -26
- package/dist/core/people/stale-question.js.map +0 -1
- package/web/.next/server/app/(console)/bridge/basket/page/app-paths-manifest.json +0 -3
- package/web/.next/server/app/(console)/bridge/basket/page/server-reference-manifest.json +0 -75
- package/web/.next/server/app/(console)/bridge/basket/page_client-reference-manifest.js +0 -3
- package/web/.next/server/app/(console)/bridge/changes/route/app-paths-manifest.json +0 -3
- package/web/.next/server/app/(console)/bridge/changes/route.js +0 -8
- package/web/.next/server/app/(console)/bridge/changes/route_client-reference-manifest.js +0 -3
- package/web/.next/server/app/(console)/bridge/done/page/app-paths-manifest.json +0 -3
- package/web/.next/server/app/(console)/bridge/done/page/server-reference-manifest.json +0 -75
- package/web/.next/server/app/(console)/bridge/done/page_client-reference-manifest.js +0 -3
- package/web/.next/server/app/(console)/bridge/focus/route/app-paths-manifest.json +0 -3
- package/web/.next/server/app/(console)/bridge/focus/route.js +0 -8
- package/web/.next/server/app/(console)/bridge/focus/route_client-reference-manifest.js +0 -3
- package/web/.next/server/app/(console)/bridge/page/app-paths-manifest.json +0 -3
- package/web/.next/server/app/(console)/bridge/page/server-reference-manifest.json +0 -65
- package/web/.next/server/app/(console)/bridge/page_client-reference-manifest.js +0 -3
- package/web/.next/server/app/(console)/bridge/settings/page/app-paths-manifest.json +0 -3
- package/web/.next/server/app/(console)/bridge/settings/page_client-reference-manifest.js +0 -3
- package/web/.next/server/app/(console)/bridge/settings/requests/[requestId]/page/app-paths-manifest.json +0 -3
- package/web/.next/server/app/(console)/bridge/settings/requests/[requestId]/page/build-manifest.json +0 -23
- package/web/.next/server/app/(console)/bridge/settings/requests/[requestId]/page/next-font-manifest.json +0 -11
- package/web/.next/server/app/(console)/bridge/settings/requests/[requestId]/page_client-reference-manifest.js +0 -3
- package/web/.next/server/app/(console)/bridge/settings/routing/page/app-paths-manifest.json +0 -3
- package/web/.next/server/app/(console)/bridge/settings/routing/page/build-manifest.json +0 -23
- package/web/.next/server/app/(console)/bridge/settings/routing/page/next-font-manifest.json +0 -11
- package/web/.next/server/app/(console)/bridge/settings/routing/page_client-reference-manifest.js +0 -3
- package/web/.next/server/chunks/0b9d__next-internal_server_app_(console)_bridge_changes_route_actions_0hj8aqohz6bu6.js +0 -3
- package/web/.next/server/chunks/_05qgg3__4kdbm._.js +0 -3
- package/web/.next/server/chunks/_05qgg3__4kdbm._.js.map +0 -1
- package/web/.next/server/chunks/_1uap5tql2vvsb._.js +0 -3
- package/web/.next/server/chunks/_1uap5tql2vvsb._.js.map +0 -1
- package/web/.next/server/chunks/ssr/01fr_app_(console)_bridge_settings_requests_[requestId]_page_actions_1au-p5lgnv5e-.js +0 -3
- package/web/.next/server/chunks/ssr/01fr_app_(console)_bridge_settings_requests_[requestId]_page_actions_1au-p5lgnv5e-.js.map +0 -1
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_bridge_settings_routing_page_actions_136lm_jip4d_x.js +0 -3
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_bridge_settings_routing_page_actions_136lm_jip4d_x.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__00jy4lqrcvxvc._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__00jy4lqrcvxvc._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0k-5_al3xk509._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0k-5_al3xk509._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__18v7b5ga58a9n._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__18v7b5ga58a9n._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1nxy_j9eswr3i._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1nxy_j9eswr3i._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1rf344o33bmi4._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1rf344o33bmi4._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_0a_nsm-ye2r6v._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_0h-ua-y4p4u1p._.js +0 -3
- package/web/.next/server/chunks/ssr/_0h-ua-y4p4u1p._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_0swrejvekuzfx._.js +0 -3
- package/web/.next/server/chunks/ssr/_0swrejvekuzfx._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_12fsn_33ga-n0._.js +0 -3
- package/web/.next/server/chunks/ssr/_12fsn_33ga-n0._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_1hmjvjuxx92vo._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_1jx41z6kmxtt0._.js +0 -3
- package/web/.next/server/chunks/ssr/_1jx41z6kmxtt0._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_1q2s-hb67yjfb._.js +0 -3
- package/web/.next/server/chunks/ssr/_1q2s-hb67yjfb._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_1qdpkpsskm5wj._.js +0 -3
- package/web/.next/server/chunks/ssr/_1qdpkpsskm5wj._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_1yi3j4a16uet-._.js +0 -3
- package/web/.next/server/chunks/ssr/_1yi3j4a16uet-._.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_01oyodz1bs245._.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_01oyodz1bs245._.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_16d4um5s513wz._.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_16d4um5s513wz._.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_@base-ui_react_1lbvjrzg8s2ox._.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_0hkpfqt9ne626._.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_0hkpfqt9ne626._.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_031g89sb4kgzn.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_031g89sb4kgzn.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_09rviehv6rh0n.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_09rviehv6rh0n.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0ka8v6_fxug8r.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0ka8v6_fxug8r.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1c8zekuy1gkch.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1c8zekuy1gkch.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1dhzng2nnu0m7.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1dhzng2nnu0m7.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1rya2ag3z4vug.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1rya2ag3z4vug.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_0i_1uraygw2ld._.js +0 -3
- package/web/.next/server/chunks/ssr/web_0i_1uraygw2ld._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_0wz4onhfbq359._.js +0 -3
- package/web/.next/server/chunks/ssr/web_0wz4onhfbq359._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_1-hlf1xzemd3-._.js +0 -3
- package/web/.next/server/chunks/ssr/web_1-hlf1xzemd3-._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_107a79_nx4jdd._.js +0 -3
- package/web/.next/server/chunks/ssr/web_107a79_nx4jdd._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_127_b93avkwaq._.js +0 -3
- package/web/.next/server/chunks/ssr/web_127_b93avkwaq._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_(console)_bridge_basket_page_actions_102xk3g8eko_q.js +0 -3
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_(console)_bridge_basket_page_actions_102xk3g8eko_q.js.map +0 -1
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_(console)_bridge_done_page_actions_0mm90xd2feta2.js +0 -3
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_(console)_bridge_done_page_actions_0mm90xd2feta2.js.map +0 -1
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_(console)_bridge_page_actions_082880qz6xa5k.js +0 -3
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_(console)_bridge_page_actions_082880qz6xa5k.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_app_(console)_bridge_error_tsx_0ty_yk1robyaj._.js +0 -3
- package/web/.next/server/chunks/ssr/web_app_(console)_bridge_error_tsx_0ty_yk1robyaj._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_app_(console)_bridge_error_tsx_10gkrn3ey8162._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_app_(console)_bridge_settings_page_tsx_0xzphp7k9ge1u._.js +0 -3
- package/web/.next/server/chunks/ssr/web_app_(console)_bridge_settings_page_tsx_0xzphp7k9ge1u._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_features_0mi9a9pdzkdji._.js +0 -3
- package/web/.next/server/chunks/ssr/web_features_0s8erick0xk77._.js +0 -3
- package/web/.next/server/chunks/ssr/web_features_0s8erick0xk77._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_features_0wuo5bgp5tabn._.js +0 -3
- package/web/.next/server/chunks/ssr/web_features_0wuo5bgp5tabn._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_features_1je122n6carea._.js +0 -3
- package/web/.next/server/chunks/ssr/web_features_1je122n6carea._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_features_1n1hy3nwha2vi._.js +0 -3
- package/web/.next/server/chunks/ssr/web_features_1n1hy3nwha2vi._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_features_1nrnskep6p8ci._.js +0 -3
- package/web/.next/server/chunks/ssr/web_features_1nrnskep6p8ci._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_0-mhu0jaig2u3._.js +0 -3
- package/web/.next/server/chunks/ssr/web_features_bridge_0-mhu0jaig2u3._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_0219fbfmsi68-._.js +0 -3
- package/web/.next/server/chunks/ssr/web_features_bridge_0219fbfmsi68-._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_11jndonu4o8fq._.js +0 -3
- package/web/.next/server/chunks/ssr/web_features_bridge_11jndonu4o8fq._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_state_0354e3wb0dzx1._.js +0 -3
- package/web/.next/server/chunks/ssr/web_features_bridge_state_0354e3wb0dzx1._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_features_bridge_state_live-refresh_tsx_1c1xk-oe0kllv._.js +0 -3
- package/web/.next/server/chunks/ssr/web_features_bridge_state_live-refresh_tsx_1c1xk-oe0kllv._.js.map +0 -1
- package/web/.next/server/chunks/web__next-internal_server_app_(console)_bridge_focus_route_actions_0syd_u8mgzdmi.js +0 -3
- package/web/.next/static/chunks/0c1tqlbsvq1dj.js +0 -1
- package/web/.next/static/chunks/0fh11dkddwf_2.js +0 -1
- package/web/.next/static/chunks/0fu7je2vzzzh7.js +0 -1
- package/web/.next/static/chunks/0zbcy0_3jemrv.js +0 -1
- package/web/.next/static/chunks/180aowme095ds.js +0 -1
- package/web/.next/static/chunks/1ehmzxr697ifa.js +0 -1
- package/web/.next/static/chunks/1lyv8ukt_q3ph.js +0 -1
- package/web/.next/static/chunks/1ymfhxs-xqiy6.js +0 -1
- package/web/.next/static/chunks/2799kv0y5g2va.js +0 -1
- package/web/.next/static/chunks/2gghdkr64z9f9.js +0 -1
- package/web/.next/static/chunks/2hoi73vy1wqpo.js +0 -1
- package/web/.next/static/chunks/2jr8r6g9kk42a.js +0 -1
- package/web/.next/static/chunks/2mtfca4qk_s34.js +0 -1
- package/web/.next/static/chunks/36fnm0ezsx1eh.js +0 -1
- package/web/.next/static/chunks/3f2trjz7_wrzh.js +0 -1
- package/web/.next/static/chunks/3ow9h8hreko-p.css +0 -3
- package/web/.next/static/chunks/3pd8pele5x1o9.js +0 -1
- package/web/.next/static/chunks/3rt603msircrl.js +0 -1
- package/web/.next/static/chunks/3srfjz42u14tx.js +0 -1
- /package/web/.next/server/app/{(console) → (bridge)}/bridge/basket/page/react-loadable-manifest.json +0 -0
- /package/web/.next/server/app/{(console) → (bridge)}/bridge/basket/page.js.map +0 -0
- /package/web/.next/server/app/{(console) → (bridge)}/bridge/changes/route/build-manifest.json +0 -0
- /package/web/.next/server/app/{(console) → (bridge)}/bridge/changes/route/server-reference-manifest.json +0 -0
- /package/web/.next/server/app/{(console) → (bridge)}/bridge/changes/route.js.map +0 -0
- /package/web/.next/server/app/{(console) → (bridge)}/bridge/done/page/react-loadable-manifest.json +0 -0
- /package/web/.next/server/app/{(console) → (bridge)}/bridge/done/page.js.map +0 -0
- /package/web/.next/server/app/{(console)/bridge → (bridge)/bridge/fleet}/page/react-loadable-manifest.json +0 -0
- /package/web/.next/server/app/{(console)/bridge → (bridge)/bridge/fleet}/page.js.map +0 -0
- /package/web/.next/server/app/{(console) → (bridge)}/bridge/focus/route/build-manifest.json +0 -0
- /package/web/.next/server/app/{(console) → (bridge)}/bridge/focus/route/server-reference-manifest.json +0 -0
- /package/web/.next/server/app/{(console) → (bridge)}/bridge/focus/route.js.map +0 -0
- /package/web/.next/server/app/{(console)/bridge/settings → (bridge)/bridge}/page/react-loadable-manifest.json +0 -0
- /package/web/.next/server/app/{(console)/bridge/settings → (bridge)/bridge}/page.js.map +0 -0
- /package/web/.next/server/app/{(console)/bridge/settings/requests/[requestId] → (bridge)/bridge/settings}/page/react-loadable-manifest.json +0 -0
- /package/web/.next/server/app/{(console)/bridge/settings/requests/[requestId] → (bridge)/bridge/settings}/page.js.map +0 -0
- /package/web/.next/server/app/{(console)/bridge/settings/routing → (bridge)/bridge/settings/requests/[requestId]}/page/react-loadable-manifest.json +0 -0
- /package/web/.next/server/app/{(console)/bridge/settings/routing → (bridge)/bridge/settings/requests/[requestId]}/page.js.map +0 -0
- /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
- /package/web/.next/server/chunks/ssr/{[root-of-the-server]__1yyaeeylnezpi._.js.map → [root-of-the-server]__04_bc8g0oe4jt._.js.map} +0 -0
- /package/web/.next/server/chunks/ssr/{[root-of-the-server]__0gnfxe62edx95._.js.map → [root-of-the-server]__179upda-y7uap._.js.map} +0 -0
- /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
- /package/web/.next/static/{IMWKx2sJwt7EwwpStr8tb → 2O8_FQX7YN47L5_OxojXH}/_buildManifest.js +0 -0
- /package/web/.next/static/{IMWKx2sJwt7EwwpStr8tb → 2O8_FQX7YN47L5_OxojXH}/_clientMiddlewareManifest.js +0 -0
- /package/web/.next/static/{IMWKx2sJwt7EwwpStr8tb → 2O8_FQX7YN47L5_OxojXH}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ITEM_JOBS, routingOf } from '../people/routing.js';
|
|
2
|
+
import { botStateOf } from './slack-app.js';
|
|
3
|
+
/**
|
|
4
|
+
* Use case: whether Slack dropped out for the person (Bridge, section 9: a
|
|
5
|
+
* place fails, it drops out and Bridge says why). It did when the fleet's
|
|
6
|
+
* own bot was removed in Slack (app_uninstalled, tokens_revoked) while it
|
|
7
|
+
* showed the person something: they linked Slack and turned it on, or left
|
|
8
|
+
* it on, for a job. Nothing to an account with no person ship in the fleet.
|
|
9
|
+
*/
|
|
10
|
+
export function createReadSlackDroppedOut(deps) {
|
|
11
|
+
return async ({ actor }) => {
|
|
12
|
+
if (actor.kind !== 'account' || actor.personShipId === null) {
|
|
13
|
+
return null;
|
|
14
|
+
}
|
|
15
|
+
const bot = await deps.apps.gatewayBot(actor.fleetId);
|
|
16
|
+
if (bot === undefined || botStateOf(bot) !== 'removedInSlack') {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
const [link, routes] = await Promise.all([deps.links.ofAccount(actor.fleetId, actor.accountId), deps.routes.list({ fleetId: actor.fleetId, shipId: actor.personShipId })]);
|
|
20
|
+
const routing = routingOf(routes, deps.defaults);
|
|
21
|
+
return link !== undefined && ITEM_JOBS.some((job) => routing.isOn(job, 'slack')) ? { botName: bot.name } : null;
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=read-slack-dropped-out.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read-slack-dropped-out.js","sourceRoot":"","sources":["../../../src/core/slack/read-slack-dropped-out.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAqC,MAAM,sBAAsB,CAAC;AAE/F,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAS5C;;;;;;GAMG;AACH,MAAM,UAAU,yBAAyB,CAAC,IAA8H;IACtK,OAAO,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;QACzB,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;YAC5D,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtD,IAAI,GAAG,KAAK,SAAS,IAAI,UAAU,CAAC,GAAG,CAAC,KAAK,gBAAgB,EAAE,CAAC;YAC9D,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC;QAC3K,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjD,OAAO,IAAI,KAAK,SAAS,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAClH,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { Actor } from '../actors/authenticate-actor.js';
|
|
2
|
+
import type { AsksToLinkSlack } from './ask-to-link-slack.js';
|
|
2
3
|
import type { SlackApps, SlackLinks, SlackWorkspaces } from './ports.js';
|
|
3
4
|
/** A person's Slack link as Bridge's settings show it: the workspace, and the Slack name linked, none while unlinked. */
|
|
4
5
|
export interface ShownSlackLink {
|
|
@@ -14,9 +15,12 @@ export type ReadSlackLink = (input: {
|
|
|
14
15
|
* Use case: the person's Slack link in Bridge's settings (gateway scopes 9.6),
|
|
15
16
|
* offered once the fleet's own bot is in the fleet's workspace, which then
|
|
16
17
|
* has its name; nothing to an account with no person ship in the fleet.
|
|
18
|
+
* A person it offers Link Slack to is asked to link Slack by a step
|
|
19
|
+
* (Bridge, BG7).
|
|
17
20
|
*/
|
|
18
21
|
export declare function createReadSlackLink(deps: {
|
|
19
22
|
workspaces: Pick<SlackWorkspaces, 'find'>;
|
|
20
23
|
apps: Pick<SlackApps, 'gatewayBot'>;
|
|
21
24
|
links: Pick<SlackLinks, 'ofAccount'>;
|
|
25
|
+
askToLink: AsksToLinkSlack;
|
|
22
26
|
}): ReadSlackLink;
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
* Use case: the person's Slack link in Bridge's settings (gateway scopes 9.6),
|
|
3
3
|
* offered once the fleet's own bot is in the fleet's workspace, which then
|
|
4
4
|
* has its name; nothing to an account with no person ship in the fleet.
|
|
5
|
+
* A person it offers Link Slack to is asked to link Slack by a step
|
|
6
|
+
* (Bridge, BG7).
|
|
5
7
|
*/
|
|
6
8
|
export function createReadSlackLink(deps) {
|
|
7
9
|
return async ({ actor }) => {
|
|
@@ -14,6 +16,9 @@ export function createReadSlackLink(deps) {
|
|
|
14
16
|
return null;
|
|
15
17
|
}
|
|
16
18
|
const link = await deps.links.ofAccount(actor.fleetId, actor.accountId);
|
|
19
|
+
if (link === undefined) {
|
|
20
|
+
await deps.askToLink({ fleetId: actor.fleetId, personShipId: actor.personShipId, workspaceName: workspace.teamName });
|
|
21
|
+
}
|
|
17
22
|
return { workspaceName: workspace.teamName, link: link === undefined ? null : { slackName: link.slackName } };
|
|
18
23
|
};
|
|
19
24
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"read-slack-link.js","sourceRoot":"","sources":["../../../src/core/slack/read-slack-link.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"read-slack-link.js","sourceRoot":"","sources":["../../../src/core/slack/read-slack-link.ts"],"names":[],"mappings":"AAYA;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAA0J;IAC5L,OAAO,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;QACzB,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;YAC5D,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtD,IAAI,SAAS,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,GAAG,KAAK,IAAI,IAAI,SAAS,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YACpG,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACxE,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,aAAa,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;QACxH,CAAC;QACD,OAAO,EAAE,aAAa,EAAE,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;IAChH,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -47,12 +47,12 @@ export function createShowInSlack(deps) {
|
|
|
47
47
|
const gatewayBot = isOn ? await deps.apps.gatewayBot(fleetId) : undefined;
|
|
48
48
|
return isInSlack(gatewayBot) ? { app: gatewayBot, channel: slackUserId, threadTs: null } : undefined;
|
|
49
49
|
};
|
|
50
|
-
/** Posts it, waiting out Slack's rate limits: the Slack message, or none when Slack refused it. */
|
|
50
|
+
/** Posts it, waiting out Slack's rate limits: the conversation Slack answered it is in and its Slack message, or none when Slack refused it. */
|
|
51
51
|
const posted = async (where, shown) => {
|
|
52
52
|
for (let tried = 1;; tried += 1) {
|
|
53
|
-
const answered = await deps.slack.post(where.app.bot.token, { messageId: shown.messageId, channel: where.channel, threadTs: where.threadTs,
|
|
53
|
+
const answered = await deps.slack.post(where.app.bot.token, { messageId: shown.messageId, channel: where.channel, threadTs: where.threadTs, message: shown.message });
|
|
54
54
|
if (answered.isOk) {
|
|
55
|
-
return answered.value
|
|
55
|
+
return answered.value;
|
|
56
56
|
}
|
|
57
57
|
if (answered.error.kind !== 'rateLimited' || tried >= RATE_LIMITED_TRIES) {
|
|
58
58
|
return undefined;
|
|
@@ -77,13 +77,14 @@ export function createShowInSlack(deps) {
|
|
|
77
77
|
return 'notShown';
|
|
78
78
|
}
|
|
79
79
|
const app = await deps.apps.find(post.fleetId, post.appId);
|
|
80
|
-
const
|
|
81
|
-
const
|
|
82
|
-
if (
|
|
80
|
+
const { text, item, buttons } = slackPostOf(delivery, { bridgeUrl: deps.bridgeUrlOf(post.fleetId), isHeadedBySender: app?.shipId === null });
|
|
81
|
+
const inSlack = isInSlack(app) ? await posted({ app, channel: post.channel, threadTs: post.threadTs }, { messageId: post.messageId, message: { text, item, buttons } }) : undefined;
|
|
82
|
+
if (inSlack === undefined) {
|
|
83
83
|
await deps.posts.remove(post.fleetId, post);
|
|
84
84
|
return 'notShown';
|
|
85
85
|
}
|
|
86
|
-
|
|
86
|
+
// Kept in the conversation Slack answered: a post to a person's user id is in their direct messages, which Slack names by an id of its own.
|
|
87
|
+
await deps.posts.save({ ...post, ...inSlack });
|
|
87
88
|
}
|
|
88
89
|
return 'shown';
|
|
89
90
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"show-in-slack.js","sourceRoot":"","sources":["../../../src/core/slack/show-in-slack.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAI9C,OAAO,EAAE,EAAE,EAAe,MAAM,qBAAqB,CAAC;AAItD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD,yEAAyE;AACzE,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAE7B,MAAM,SAAS,GAAG,IAAI,CAAC;AAEvB,wHAAwH;AACxH,MAAM,eAAe,GAAG,CAAC,CAAC;AAiB1B,SAAS,SAAS,CAAC,GAAyB;IAC1C,OAAO,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,GAAG,KAAK,IAAI,IAAI,GAAG,CAAC,gBAAgB,KAAK,IAAI,CAAC;AAChF,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,iBAAiB,CAAC,IASjC;IACC,kJAAkJ;IAClJ,MAAM,OAAO,GAAG,KAAK,EAAE,IAAe,EAAE,EAAE,QAAQ,EAAE,IAAI,EAA+C,EAA8B,EAAE;QACrI,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;QACpD,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;QACjJ,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;YAC3D,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;gBACnB,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,EAAE,EAAE,CAAC;YAC3F,CAAC;QACH,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;QACnE,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;YACnB,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC5D,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1E,OAAO,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACvG,CAAC,CAAC;IAEF,
|
|
1
|
+
{"version":3,"file":"show-in-slack.js","sourceRoot":"","sources":["../../../src/core/slack/show-in-slack.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,25 +1,37 @@
|
|
|
1
1
|
import type { PersonDelivery } from '../people/ports.js';
|
|
2
|
-
import type { SlackButton } from './ports.js';
|
|
2
|
+
import type { SlackButton, SlackMessage } from './ports.js';
|
|
3
3
|
/** The most a Slack message shows in full. */
|
|
4
4
|
export declare const MESSAGE_MAX_LENGTH = 40000;
|
|
5
5
|
/** The most one block of a Slack message shows. */
|
|
6
6
|
export declare const BLOCK_MAX_LENGTH = 3000;
|
|
7
|
-
/**
|
|
8
|
-
export
|
|
7
|
+
/** The most characters Slack takes in a button's text: it refuses the whole post for one longer. */
|
|
8
|
+
export declare const BUTTON_TEXT_MAX_LENGTH = 75;
|
|
9
|
+
/**
|
|
10
|
+
* The option as its question's post lists it in full, in Slack's markup,
|
|
11
|
+
* numbered as its button is: so an edit names it whole from the post alone,
|
|
12
|
+
* though its button cut it. None when the post lists no options: then every
|
|
13
|
+
* button's text is short enough to be whole.
|
|
14
|
+
*/
|
|
15
|
+
export declare function listedOptionOf(body: string | null, key: number): string | undefined;
|
|
16
|
+
/** What a delivery shows as in Slack: an item framed as views.html draws it, its text in Slack's markup, or a link to the gateway for what Slack does not show in full; with its buttons. */
|
|
17
|
+
export interface SlackShown extends SlackMessage {
|
|
9
18
|
readonly kind: 'shown' | 'link';
|
|
10
|
-
readonly text: string;
|
|
11
|
-
readonly buttons: readonly SlackButton[];
|
|
12
19
|
}
|
|
13
20
|
/** The button under an item with no other: seeing it is what it asks, or all the person does with it in Slack (Bridge, section 6). */
|
|
14
21
|
export declare const SEEN: SlackButton;
|
|
22
|
+
/** The button under a step that marks it done (Bridge, CC14). */
|
|
23
|
+
export declare const DONE: SlackButton;
|
|
24
|
+
/** Text as Slack shows it as it is: its control characters escaped. */
|
|
25
|
+
export declare function escaped(text: string): string;
|
|
15
26
|
/**
|
|
16
|
-
* What a delivery shows as in Slack (gateway scopes 9.5 step 2):
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
* type, or more than Slack shows in full (40,000
|
|
20
|
-
* goes as a link to the gateway's pages. The
|
|
21
|
-
*
|
|
22
|
-
* or any other message,
|
|
27
|
+
* What a delivery shows as in Slack (gateway scopes 9.5 step 2): an item,
|
|
28
|
+
* a question, a step, an alert or a notice, as views.html draws it; text and
|
|
29
|
+
* Markdown as text, Markdown in Slack's markup; JSON as a code block.
|
|
30
|
+
* Another content type, or more than Slack shows in full (40,000
|
|
31
|
+
* characters, a block 3,000), goes as a link to the gateway's pages. The
|
|
32
|
+
* gateway's own bot heads a message that is no item with the sender's name.
|
|
33
|
+
* An item with no other button, an alert, a notice or any other message,
|
|
34
|
+
* gets Seen.
|
|
23
35
|
*/
|
|
24
36
|
export declare function slackPostOf(delivery: PersonDelivery, shown: {
|
|
25
37
|
bridgeUrl: string;
|
|
@@ -1,22 +1,62 @@
|
|
|
1
|
-
import { QUESTION_CONTENT_TYPE, questionSchema } from '@aeolus-fleet/common';
|
|
2
|
-
import {
|
|
1
|
+
import { ALERT_CONTENT_TYPE, QUESTION_CONTENT_TYPE, questionSchema } from '@aeolus-fleet/common';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { essenceOf, jobOf, NOTICE_CONTENT_TYPE, STEP_CONTENT_TYPE, STEP_REPLACEMENT_CONTENT_TYPE } from '../people/item-job.js';
|
|
3
4
|
/** The most a Slack message shows in full. */
|
|
4
5
|
export const MESSAGE_MAX_LENGTH = 40_000;
|
|
5
6
|
/** The most one block of a Slack message shows. */
|
|
6
7
|
export const BLOCK_MAX_LENGTH = 3_000;
|
|
8
|
+
/** The most characters Slack takes in a button's text: it refuses the whole post for one longer. */
|
|
9
|
+
export const BUTTON_TEXT_MAX_LENGTH = 75;
|
|
10
|
+
/** About the most characters of a button's text Slack shows on a phone before it cuts the rest: a question with a longer one lists its options in full. */
|
|
11
|
+
const BUTTON_TEXT_SHOWN_LENGTH = 30;
|
|
12
|
+
const ELLIPSIS = '…';
|
|
13
|
+
/** How an option listed in full under a question's context begins: its number, bold. */
|
|
14
|
+
const LISTED_OPTION_PREFIX = (key) => `*${String(key)}.* `;
|
|
15
|
+
/**
|
|
16
|
+
* The option as its question's post lists it in full, in Slack's markup,
|
|
17
|
+
* numbered as its button is: so an edit names it whole from the post alone,
|
|
18
|
+
* though its button cut it. None when the post lists no options: then every
|
|
19
|
+
* button's text is short enough to be whole.
|
|
20
|
+
*/
|
|
21
|
+
export function listedOptionOf(body, key) {
|
|
22
|
+
const prefix = LISTED_OPTION_PREFIX(key);
|
|
23
|
+
const line = body?.split('\n').find((each) => each.startsWith(prefix));
|
|
24
|
+
return line === undefined ? undefined : `${String(key)}. ${line.slice(prefix.length)}`;
|
|
25
|
+
}
|
|
7
26
|
/** The button under an item with no other: seeing it is what it asks, or all the person does with it in Slack (Bridge, section 6). */
|
|
8
27
|
export const SEEN = { text: 'Seen', isSeen: true };
|
|
28
|
+
/** The button under a step that marks it done (Bridge, CC14). */
|
|
29
|
+
export const DONE = { text: 'Done', isDone: true };
|
|
30
|
+
/** What an item is called in its post's heading, by its content type, with its job's name (Bridge, section 6). */
|
|
31
|
+
const ITEMS = new Map([
|
|
32
|
+
[QUESTION_CONTENT_TYPE, { noun: 'Question', job: 'Decide' }],
|
|
33
|
+
[STEP_CONTENT_TYPE, { noun: 'Step', job: 'Do' }],
|
|
34
|
+
[STEP_REPLACEMENT_CONTENT_TYPE, { noun: 'Step', job: 'Do' }],
|
|
35
|
+
[ALERT_CONTENT_TYPE, { noun: 'Alert', job: 'Stay aware' }],
|
|
36
|
+
[NOTICE_CONTENT_TYPE, { noun: 'Notice', job: 'Stay aware' }],
|
|
37
|
+
]);
|
|
38
|
+
/** What Slack reads of a step, as common's stepSchema words it from its release after 0.35.0 (Bridge B2); it moves to common's then. */
|
|
39
|
+
const stepSchema = z.object({ why: z.string(), link: z.url({ protocol: /^https?$/ }).optional() });
|
|
40
|
+
/** The step a delivery asks: a step's own, or the new step a step replacement asks. */
|
|
41
|
+
const STEP_SCHEMAS = new Map([
|
|
42
|
+
[STEP_CONTENT_TYPE, stepSchema],
|
|
43
|
+
[STEP_REPLACEMENT_CONTENT_TYPE, z.object({ step: stepSchema }).transform(({ step }) => step)],
|
|
44
|
+
]);
|
|
45
|
+
function parsedOf(schema, payload) {
|
|
46
|
+
try {
|
|
47
|
+
return schema.safeParse(JSON.parse(payload)).data;
|
|
48
|
+
}
|
|
49
|
+
catch {
|
|
50
|
+
return undefined;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
9
53
|
/** The buttons of an item that shows no option: Seen, but for a question or a step, which seeing does not end. */
|
|
10
54
|
function seenOf(contentType) {
|
|
11
55
|
const job = jobOf(contentType);
|
|
12
56
|
return job === 'stay-aware' || job === 'everything-else' ? [SEEN] : [];
|
|
13
57
|
}
|
|
14
|
-
/** The content type's essence, its parameters gone. */
|
|
15
|
-
function essenceOf(contentType) {
|
|
16
|
-
return (contentType.split(';')[0] ?? '').trim().toLowerCase();
|
|
17
|
-
}
|
|
18
58
|
/** Text as Slack shows it as it is: its control characters escaped. */
|
|
19
|
-
function escaped(text) {
|
|
59
|
+
export function escaped(text) {
|
|
20
60
|
return text.replaceAll('&', '&').replaceAll('<', '<').replaceAll('>', '>');
|
|
21
61
|
}
|
|
22
62
|
/** Markdown in Slack's markup: bold, strike, links and headings; italics, code and lists read the same. */
|
|
@@ -28,22 +68,81 @@ function slackMarkupOf(markdown) {
|
|
|
28
68
|
.replaceAll(/~~([^~\n]+)~~/g, '~$1~')
|
|
29
69
|
.replaceAll(/^#{1,6} +(.+)$/gm, '*$1*');
|
|
30
70
|
}
|
|
71
|
+
/** What a question, a step, an alert or a notice asks with in Slack; none when its payload does not read. */
|
|
72
|
+
function askingOf(delivery, bridgeUrl) {
|
|
73
|
+
const { senderName, payload } = delivery;
|
|
74
|
+
const essence = essenceOf(delivery.contentType);
|
|
75
|
+
const openInBridge = `<${bridgeUrl}|Open in Bridge>`;
|
|
76
|
+
if (essence === QUESTION_CONTENT_TYPE) {
|
|
77
|
+
const question = parsedOf(questionSchema, payload);
|
|
78
|
+
if (question === undefined) {
|
|
79
|
+
return undefined;
|
|
80
|
+
}
|
|
81
|
+
const options = question.options.map(({ key, label }) => ({ key, label, text: `${String(key)}. ${label}` }));
|
|
82
|
+
// Slack cuts a long button's text where it shows it, and refuses a post for one over its limit: such options read in full in the body.
|
|
83
|
+
const isAnyCut = options.some(({ text }) => text.length > BUTTON_TEXT_SHOWN_LENGTH);
|
|
84
|
+
const listed = isAnyCut ? `\n\n${options.map(({ key, label }) => `${LISTED_OPTION_PREFIX(key)}${escaped(label)}`).join('\n')}` : '';
|
|
85
|
+
return {
|
|
86
|
+
body: `${slackMarkupOf(question.context)}${listed}`,
|
|
87
|
+
aside: `${escaped(senderName)} picks ${String(question.pick.option)}: ${escaped(question.pick.why)}`,
|
|
88
|
+
footer: `${openInBridge} · reply in the thread to add a note`,
|
|
89
|
+
buttons: options.map(({ key, text }) => ({ text: text.length > BUTTON_TEXT_MAX_LENGTH ? `${text.slice(0, BUTTON_TEXT_MAX_LENGTH - ELLIPSIS.length)}${ELLIPSIS}` : text, option: key, isPicked: key === question.pick.option })),
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
const stepSchemaOf = STEP_SCHEMAS.get(essence);
|
|
93
|
+
if (stepSchemaOf !== undefined) {
|
|
94
|
+
const step = parsedOf(stepSchemaOf, payload);
|
|
95
|
+
if (step === undefined) {
|
|
96
|
+
return undefined;
|
|
97
|
+
}
|
|
98
|
+
const open = step.link === undefined ? [] : [{ text: `Open ${new URL(step.link).host}`, url: step.link }];
|
|
99
|
+
return { body: slackMarkupOf(step.why), aside: null, footer: openInBridge, buttons: [...open, DONE] };
|
|
100
|
+
}
|
|
101
|
+
return { body: null, aside: null, footer: null, buttons: [SEEN] };
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* An item as its post shows it (Bridge, views.html): headed by its asker
|
|
105
|
+
* and job, its title, then what it asks with. A question: its context, the
|
|
106
|
+
* asker's pick, a button per option numbered with the pick's filled, its
|
|
107
|
+
* text cut at Slack's limit, the options listed in full under the context
|
|
108
|
+
* once a button's text is longer than Slack shows on a phone, and Open in
|
|
109
|
+
* Bridge with a thread reply as a note; a step: its why, Open on its
|
|
110
|
+
* link and Done; an alert or a notice: its headline and Seen. None for any
|
|
111
|
+
* other message, one with no headline, or one whose payload does not read.
|
|
112
|
+
*/
|
|
113
|
+
function itemPostOf(delivery, bridgeUrl) {
|
|
114
|
+
const essence = essenceOf(delivery.contentType);
|
|
115
|
+
const named = ITEMS.get(essence);
|
|
116
|
+
const asking = named === undefined || delivery.headline === null ? undefined : askingOf(delivery, bridgeUrl);
|
|
117
|
+
if (named === undefined || delivery.headline === null || asking === undefined) {
|
|
118
|
+
return undefined;
|
|
119
|
+
}
|
|
120
|
+
const { body, aside, footer, buttons } = asking;
|
|
121
|
+
const asker = escaped(delivery.senderName);
|
|
122
|
+
const title = escaped(delivery.headline);
|
|
123
|
+
const isAware = jobOf(delivery.contentType) === 'stay-aware';
|
|
124
|
+
const item = { asker: delivery.senderName, heading: `${named.noun} from ${asker} · ${named.job}`, title, body, aside, footer, tone: isAware ? 'aware' : 'asking' };
|
|
125
|
+
const isInBlocks = [item.heading, title, body ?? '', aside ?? '', footer ?? ''].every((block) => block.length <= BLOCK_MAX_LENGTH);
|
|
126
|
+
return isInBlocks ? { kind: 'shown', text: `${named.noun} from ${asker}: ${title}`, item, buttons } : undefined;
|
|
127
|
+
}
|
|
31
128
|
/**
|
|
32
|
-
* What a delivery shows as in Slack (gateway scopes 9.5 step 2):
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
* type, or more than Slack shows in full (40,000
|
|
36
|
-
* goes as a link to the gateway's pages. The
|
|
37
|
-
*
|
|
38
|
-
* or any other message,
|
|
129
|
+
* What a delivery shows as in Slack (gateway scopes 9.5 step 2): an item,
|
|
130
|
+
* a question, a step, an alert or a notice, as views.html draws it; text and
|
|
131
|
+
* Markdown as text, Markdown in Slack's markup; JSON as a code block.
|
|
132
|
+
* Another content type, or more than Slack shows in full (40,000
|
|
133
|
+
* characters, a block 3,000), goes as a link to the gateway's pages. The
|
|
134
|
+
* gateway's own bot heads a message that is no item with the sender's name.
|
|
135
|
+
* An item with no other button, an alert, a notice or any other message,
|
|
136
|
+
* gets Seen.
|
|
39
137
|
*/
|
|
40
138
|
export function slackPostOf(delivery, shown) {
|
|
41
139
|
const { senderName, contentType, payload } = delivery;
|
|
42
|
-
const link = { kind: 'link', text: `${escaped(senderName)} sent you a message Slack does not show in full: <${shown.bridgeUrl}|open it in the gateway>`, buttons: seenOf(contentType) };
|
|
43
|
-
|
|
140
|
+
const link = { kind: 'link', text: `${escaped(senderName)} sent you a message Slack does not show in full: <${shown.bridgeUrl}|open it in the gateway>`, item: null, buttons: seenOf(contentType) };
|
|
141
|
+
if (ITEMS.has(essenceOf(contentType))) {
|
|
142
|
+
return itemPostOf(delivery, shown.bridgeUrl) ?? link;
|
|
143
|
+
}
|
|
44
144
|
const essence = essenceOf(contentType);
|
|
45
145
|
let text;
|
|
46
|
-
let buttons = seenOf(contentType);
|
|
47
146
|
if (essence === 'text/plain') {
|
|
48
147
|
text = escaped(payload);
|
|
49
148
|
}
|
|
@@ -53,28 +152,10 @@ export function slackPostOf(delivery, shown) {
|
|
|
53
152
|
else if (essence === 'application/json') {
|
|
54
153
|
text = `\`\`\`${payload}\`\`\``;
|
|
55
154
|
}
|
|
56
|
-
else if (essence === QUESTION_CONTENT_TYPE) {
|
|
57
|
-
let parsed;
|
|
58
|
-
try {
|
|
59
|
-
parsed = JSON.parse(payload);
|
|
60
|
-
}
|
|
61
|
-
catch {
|
|
62
|
-
return link;
|
|
63
|
-
}
|
|
64
|
-
const question = questionSchema.safeParse(parsed);
|
|
65
|
-
if (!question.success) {
|
|
66
|
-
return link;
|
|
67
|
-
}
|
|
68
|
-
text = `*${escaped(question.data.title)}*\n${escaped(question.data.context)}`;
|
|
69
|
-
buttons = question.data.options.map(({ key, label }) => ({ text: label, option: key }));
|
|
70
|
-
if (headed(text).length > BLOCK_MAX_LENGTH) {
|
|
71
|
-
return link;
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
155
|
else {
|
|
75
156
|
return link;
|
|
76
157
|
}
|
|
77
|
-
const full =
|
|
78
|
-
return full.length > MESSAGE_MAX_LENGTH ? link : { kind: 'shown', text: full, buttons };
|
|
158
|
+
const full = shown.isHeadedBySender ? `*${escaped(senderName)}*\n${text}` : text;
|
|
159
|
+
return full.length > MESSAGE_MAX_LENGTH ? link : { kind: 'shown', text: full, item: null, buttons: seenOf(contentType) };
|
|
79
160
|
}
|
|
80
161
|
//# sourceMappingURL=slack-post-of.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slack-post-of.js","sourceRoot":"","sources":["../../../src/core/slack/slack-post-of.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"slack-post-of.js","sourceRoot":"","sources":["../../../src/core/slack/slack-post-of.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,8 +31,20 @@ export interface PostToEdit {
|
|
|
31
31
|
readonly deliveryId: DeliveryId;
|
|
32
32
|
readonly ts: string;
|
|
33
33
|
};
|
|
34
|
-
readonly outcome: Pick<ItemOutcome, 'place' | 'kind' | 'option'>;
|
|
34
|
+
readonly outcome: Pick<ItemOutcome, 'place' | 'kind' | 'option' | 'at'>;
|
|
35
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* Whether the post is in the conversation, through the bot's app. A post
|
|
38
|
+
* to a person's direct messages goes by their user id, and Slack names the
|
|
39
|
+
* conversation by an id of its own only once it answers: until then, the
|
|
40
|
+
* post kept by a user id is in the direct messages of its person ship's
|
|
41
|
+
* person with that bot, the only ones a person ship's posts go to by user
|
|
42
|
+
* id (aeolus-fleet#1573).
|
|
43
|
+
*/
|
|
44
|
+
export declare function isPostIn(post: SlackPost, conversation: {
|
|
45
|
+
appId: string;
|
|
46
|
+
channel: string;
|
|
47
|
+
}): boolean;
|
|
36
48
|
/**
|
|
37
49
|
* Whether the post is a delivery not yet in Slack that starts a thread in
|
|
38
50
|
* the conversation: a reply in a thread there that matches no post may be
|
|
@@ -1,10 +1,25 @@
|
|
|
1
|
+
/** How Slack's ids begin: a person's user id, and the conversation id of direct messages. */
|
|
2
|
+
const USER_ID = /^[UW]/;
|
|
3
|
+
const DIRECT_MESSAGES_PREFIX = 'D';
|
|
4
|
+
/**
|
|
5
|
+
* Whether the post is in the conversation, through the bot's app. A post
|
|
6
|
+
* to a person's direct messages goes by their user id, and Slack names the
|
|
7
|
+
* conversation by an id of its own only once it answers: until then, the
|
|
8
|
+
* post kept by a user id is in the direct messages of its person ship's
|
|
9
|
+
* person with that bot, the only ones a person ship's posts go to by user
|
|
10
|
+
* id (aeolus-fleet#1573).
|
|
11
|
+
*/
|
|
12
|
+
export function isPostIn(post, conversation) {
|
|
13
|
+
const isInDirectMessages = USER_ID.test(post.channel) && conversation.channel.startsWith(DIRECT_MESSAGES_PREFIX);
|
|
14
|
+
return post.appId === conversation.appId && (post.channel === conversation.channel || isInDirectMessages);
|
|
15
|
+
}
|
|
1
16
|
/**
|
|
2
17
|
* Whether the post is a delivery not yet in Slack that starts a thread in
|
|
3
18
|
* the conversation: a reply in a thread there that matches no post may be
|
|
4
19
|
* under it, before the gateway keeps its Slack message.
|
|
5
20
|
*/
|
|
6
21
|
export function isAwaitingSlackIn(post, conversation) {
|
|
7
|
-
return post.deliveryId !== null && post.ts === null && post.threadTs === null && post
|
|
22
|
+
return post.deliveryId !== null && post.ts === null && post.threadTs === null && isPostIn(post, conversation);
|
|
8
23
|
}
|
|
9
24
|
/** Whether the post is a delivery the gateway did not finish: not yet in Slack. */
|
|
10
25
|
export function isUnfinished(post) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slack-post.js","sourceRoot":"","sources":["../../../src/core/slack/slack-post.ts"],"names":[],"mappings":"AAoCA
|
|
1
|
+
{"version":3,"file":"slack-post.js","sourceRoot":"","sources":["../../../src/core/slack/slack-post.ts"],"names":[],"mappings":"AAoCA,6FAA6F;AAC7F,MAAM,OAAO,GAAG,OAAO,CAAC;AACxB,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAEnC;;;;;;;GAOG;AACH,MAAM,UAAU,QAAQ,CAAC,IAAe,EAAE,YAAgD;IACxF,MAAM,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC;IACjH,OAAO,IAAI,CAAC,KAAK,KAAK,YAAY,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,KAAK,YAAY,CAAC,OAAO,IAAI,kBAAkB,CAAC,CAAC;AAC5G,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAe,EAAE,YAAgD;IACjG,OAAO,IAAI,CAAC,UAAU,KAAK,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;AAChH,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,YAAY,CAAC,IAAe;IAC1C,OAAO,IAAI,CAAC,UAAU,KAAK,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC;AACtD,CAAC"}
|
|
@@ -5,7 +5,7 @@ import { type Result } from '../shared/result.js';
|
|
|
5
5
|
import type { SlackApps, SlackLinks, SlackPosts, SlackSignatures } from './ports.js';
|
|
6
6
|
import type { SlackApp } from './slack-app.js';
|
|
7
7
|
import { type SignedRequest } from './slack-request.js';
|
|
8
|
-
import type
|
|
8
|
+
import { type SlackPost } from './slack-post.js';
|
|
9
9
|
/** A press of a button under a post of the gateway's: the app, who pressed it, the Slack message it is under, and the fleet message its buttons name. */
|
|
10
10
|
export interface SlackPress extends SignedRequest {
|
|
11
11
|
readonly appId: string;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { err, ok } from '../shared/result.js';
|
|
2
2
|
import { isSignedBy } from './slack-request.js';
|
|
3
|
+
import { isPostIn } from './slack-post.js';
|
|
3
4
|
/**
|
|
4
5
|
* What a press acts on, signed as an event is, by the person the delivery
|
|
5
6
|
* was posted to, in the conversation it was posted in; none for anything
|
|
@@ -15,7 +16,7 @@ export async function pressedOf(deps, press) {
|
|
|
15
16
|
}
|
|
16
17
|
const link = await deps.links.find(app.fleetId, { teamId, userId });
|
|
17
18
|
const kept = link?.stoppedAt === null ? await deps.posts.ofMessage(app.fleetId, { personShipId: link.personShipId, messageId }) : undefined;
|
|
18
|
-
const post = kept
|
|
19
|
+
const post = kept !== undefined && isPostIn(kept, { appId, channel }) ? kept : undefined;
|
|
19
20
|
const crew = post === undefined ? undefined : await deps.crews.find(app.fleetId, post.personShipId);
|
|
20
21
|
const { bot } = app;
|
|
21
22
|
if (post === undefined || post.deliveryId === null || post.senderShipId === null || crew === undefined || bot === null) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slack-press.js","sourceRoot":"","sources":["../../../src/core/slack/slack-press.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,GAAG,EAAE,EAAE,EAAe,MAAM,qBAAqB,CAAC;AAG3D,OAAO,EAAE,UAAU,EAAsB,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"slack-press.js","sourceRoot":"","sources":["../../../src/core/slack/slack-press.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,GAAG,EAAE,EAAE,EAAe,MAAM,qBAAqB,CAAC;AAG3D,OAAO,EAAE,UAAU,EAAsB,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAkB,MAAM,iBAAiB,CAAC;AAmB3D;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,IAAkM,EAClM,KAAiB;IAEjB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IACxF,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAC/C,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC;QAClH,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;IACpC,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5I,MAAM,IAAI,GAAG,IAAI,KAAK,SAAS,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IACzF,MAAM,IAAI,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACpG,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC;IACpB,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACvH,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC;IACvB,CAAC;IACD,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;AAC7H,CAAC"}
|
package/dist/person-waiters.js
CHANGED
|
@@ -26,7 +26,9 @@ export function createPersonWaiters(deps) {
|
|
|
26
26
|
await deps.locks.give(ship);
|
|
27
27
|
}
|
|
28
28
|
};
|
|
29
|
-
const wake = (
|
|
29
|
+
const wake = (crewed) => {
|
|
30
|
+
// Only the ids: a crew handed over holds its token, and a waiter logs its ship.
|
|
31
|
+
const ship = { fleetId: crewed.fleetId, shipId: crewed.shipId };
|
|
30
32
|
const key = keyOf(ship);
|
|
31
33
|
if (running.has(key) || stopping.signal.aborted) {
|
|
32
34
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"person-waiters.js","sourceRoot":"","sources":["../src/person-waiters.ts"],"names":[],"mappings":"AAcA,4CAA4C;AAC5C,MAAM,UAAU,GAAG,GAAG,CAAC;AAavB,MAAM,UAAU,mBAAmB,CAAC,IAA2I;IAC7K,MAAM,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;IACvC,0FAA0F;IAC1F,MAAM,OAAO,GAAG,IAAI,GAAG,EAAgG,CAAC;IACxH,IAAI,MAAM,GAAkB,OAAO,CAAC,OAAO,EAAE,CAAC;IAE9C,MAAM,KAAK,GAAG,CAAC,EAAE,OAAO,EAAE,MAAM,EAAc,EAAU,EAAE,CAAC,GAAG,OAAO,IAAI,MAAM,EAAE,CAAC;IAElF,MAAM,GAAG,GAAG,KAAK,EAAE,IAAgB,EAAE,IAAqB,EAAiB,EAAE;QAC3E,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YACnC,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QACtC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAC9C,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5B,OAAO;QACT,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAC7D,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;gBACjC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,qFAAqF,CAAC,CAAC;YAC7G,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"person-waiters.js","sourceRoot":"","sources":["../src/person-waiters.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aeolus-fleet/gateway",
|
|
3
|
-
"version": "0.36.
|
|
3
|
+
"version": "0.36.2",
|
|
4
4
|
"description": "Aeolus gateway: outside MCP servers and clients join a fleet as ships, through one gateway beside core.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai-agents",
|
|
@@ -65,6 +65,7 @@
|
|
|
65
65
|
"prisma": "^7.10.1",
|
|
66
66
|
"react": "^19.3.1",
|
|
67
67
|
"react-dom": "^19.3.1",
|
|
68
|
+
"react-markdown": "^10.1.0",
|
|
68
69
|
"tailwind-merge": "^3.7.0",
|
|
69
70
|
"web-push": "^3.6.7",
|
|
70
71
|
"zod": "^4.6.5"
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
-- CreateTable
|
|
2
|
+
CREATE TABLE "slack_link_steps" (
|
|
3
|
+
"fleet_id" TEXT NOT NULL,
|
|
4
|
+
"person_ship_id" TEXT NOT NULL,
|
|
5
|
+
"step_id" TEXT NOT NULL,
|
|
6
|
+
"is_told" BOOLEAN NOT NULL DEFAULT false,
|
|
7
|
+
"step_message_id" TEXT,
|
|
8
|
+
|
|
9
|
+
CONSTRAINT "slack_link_steps_pkey" PRIMARY KEY ("fleet_id","person_ship_id")
|
|
10
|
+
);
|
package/src/adapters/prisma/migrations/20261108090000_item_outcomes_note_and_seen/migration.sql
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
-- The note the person sent with an outcome, and where and when they first saw the item, so Done tells its history (aeolus-fleet#1543).
|
|
2
|
+
ALTER TABLE "item_outcomes" ADD COLUMN "note" TEXT;
|
|
3
|
+
ALTER TABLE "item_outcomes" ADD COLUMN "seen_in" TEXT;
|
|
4
|
+
ALTER TABLE "item_outcomes" ADD COLUMN "seen_at" TIMESTAMPTZ(3);
|