@aeolus-fleet/gateway 0.29.1 → 0.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -3
- package/dist/adapters/a2a/a2a-agents.d.ts +6 -0
- package/dist/adapters/a2a/a2a-agents.js +238 -0
- package/dist/adapters/a2a/a2a-agents.js.map +1 -0
- package/dist/adapters/a2a/agent-cards.d.ts +4 -0
- package/dist/adapters/a2a/agent-cards.js +90 -0
- package/dist/adapters/a2a/agent-cards.js.map +1 -0
- package/dist/adapters/crypto/agent-keys.d.ts +3 -0
- package/dist/adapters/crypto/agent-keys.js +13 -0
- package/dist/adapters/crypto/agent-keys.js.map +1 -0
- package/dist/adapters/crypto/call-keys.js +2 -0
- package/dist/adapters/crypto/call-keys.js.map +1 -1
- package/dist/adapters/fleet/console-sessions.js +10 -6
- package/dist/adapters/fleet/console-sessions.js.map +1 -1
- package/dist/adapters/fleet/core-version.d.ts +1 -1
- package/dist/adapters/fleet/core-version.js +1 -1
- package/dist/adapters/fleet/fleet-ships.d.ts +3 -1
- package/dist/adapters/fleet/fleet-ships.js +19 -10
- package/dist/adapters/fleet/fleet-ships.js.map +1 -1
- package/dist/adapters/fleet/rest-fleet-door.d.ts +2 -2
- package/dist/adapters/fleet/rest-fleet-door.js +29 -5
- package/dist/adapters/fleet/rest-fleet-door.js.map +1 -1
- package/dist/adapters/http/a2a-cards.d.ts +24 -0
- package/dist/adapters/http/a2a-cards.js +62 -0
- package/dist/adapters/http/a2a-cards.js.map +1 -0
- package/dist/adapters/http/a2a-endpoint.d.ts +28 -0
- package/dist/adapters/http/a2a-endpoint.js +424 -0
- package/dist/adapters/http/a2a-endpoint.js.map +1 -0
- package/dist/adapters/http/a2a-streams.d.ts +28 -0
- package/dist/adapters/http/a2a-streams.js +74 -0
- package/dist/adapters/http/a2a-streams.js.map +1 -0
- package/dist/adapters/http/a2a-tasks.d.ts +18 -0
- package/dist/adapters/http/a2a-tasks.js +117 -0
- package/dist/adapters/http/a2a-tasks.js.map +1 -0
- package/dist/adapters/http/front-door.js +8 -4
- package/dist/adapters/http/front-door.js.map +1 -1
- package/dist/adapters/http/live.d.ts +3 -1
- package/dist/adapters/http/live.js +6 -2
- package/dist/adapters/http/live.js.map +1 -1
- package/dist/adapters/http/oauth-routes.d.ts +1 -1
- package/dist/adapters/http/oauth-routes.js +16 -3
- package/dist/adapters/http/oauth-routes.js.map +1 -1
- package/dist/adapters/mcp/mcp-servers.js +2 -0
- package/dist/adapters/mcp/mcp-servers.js.map +1 -1
- package/dist/adapters/pagasae/email-channel.d.ts +8 -0
- package/dist/adapters/pagasae/email-channel.js +37 -0
- package/dist/adapters/pagasae/email-channel.js.map +1 -0
- package/dist/adapters/pagasae/pagasae-client.js +6 -2
- package/dist/adapters/pagasae/pagasae-client.js.map +1 -1
- package/dist/adapters/prisma/agent-calls.d.ts +3 -0
- package/dist/adapters/prisma/agent-calls.js +49 -0
- package/dist/adapters/prisma/agent-calls.js.map +1 -0
- package/dist/adapters/prisma/changes.d.ts +17 -8
- package/dist/adapters/prisma/changes.js +18 -5
- package/dist/adapters/prisma/changes.js.map +1 -1
- package/dist/adapters/prisma/client-calls.d.ts +1 -1
- package/dist/adapters/prisma/client-calls.js +83 -21
- package/dist/adapters/prisma/client-calls.js.map +1 -1
- package/dist/adapters/prisma/email-channels.d.ts +4 -0
- package/dist/adapters/prisma/email-channels.js +14 -0
- package/dist/adapters/prisma/email-channels.js.map +1 -0
- package/dist/adapters/prisma/fleet-forgetter.d.ts +1 -1
- package/dist/adapters/prisma/fleet-forgetter.js +2 -2
- package/dist/adapters/prisma/fleet-forgetter.js.map +1 -1
- package/dist/adapters/prisma/focused-pages.d.ts +4 -0
- package/dist/adapters/prisma/focused-pages.js +13 -0
- package/dist/adapters/prisma/focused-pages.js.map +1 -0
- package/dist/adapters/prisma/generated/browser.d.ts +45 -0
- package/dist/adapters/prisma/generated/client.d.ts +45 -0
- package/dist/adapters/prisma/generated/commonInputTypes.d.ts +54 -54
- package/dist/adapters/prisma/generated/internal/class.d.ts +99 -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 +783 -1
- package/dist/adapters/prisma/generated/internal/prismaNamespace.js +101 -3
- package/dist/adapters/prisma/generated/internal/prismaNamespace.js.map +1 -1
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.d.ts +107 -0
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js +101 -3
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
- package/dist/adapters/prisma/generated/models/A2aAgentCall.d.ts +1203 -0
- package/dist/adapters/prisma/generated/models/A2aAgentCall.js +2 -0
- package/dist/adapters/prisma/generated/models/A2aAgentCall.js.map +1 -0
- package/dist/adapters/prisma/generated/models/A2aAgentReply.d.ts +1003 -0
- package/dist/adapters/prisma/generated/models/A2aAgentReply.js +2 -0
- package/dist/adapters/prisma/generated/models/A2aAgentReply.js.map +1 -0
- package/dist/adapters/prisma/generated/models/A2aPush.d.ts +1413 -0
- package/dist/adapters/prisma/generated/models/A2aPush.js +2 -0
- package/dist/adapters/prisma/generated/models/A2aPush.js.map +1 -0
- package/dist/adapters/prisma/generated/models/A2aPushConfig.d.ts +1322 -0
- package/dist/adapters/prisma/generated/models/A2aPushConfig.js +2 -0
- package/dist/adapters/prisma/generated/models/A2aPushConfig.js.map +1 -0
- package/dist/adapters/prisma/generated/models/A2aTask.d.ts +1002 -0
- package/dist/adapters/prisma/generated/models/A2aTask.js +2 -0
- package/dist/adapters/prisma/generated/models/A2aTask.js.map +1 -0
- package/dist/adapters/prisma/generated/models/ClientCall.d.ts +136 -15
- package/dist/adapters/prisma/generated/models/ClientCallReply.d.ts +0 -7
- package/dist/adapters/prisma/generated/models/EmailChannel.d.ts +946 -0
- package/dist/adapters/prisma/generated/models/EmailChannel.js +2 -0
- package/dist/adapters/prisma/generated/models/EmailChannel.js.map +1 -0
- package/dist/adapters/prisma/generated/models/FocusedPage.d.ts +974 -0
- package/dist/adapters/prisma/generated/models/FocusedPage.js +2 -0
- package/dist/adapters/prisma/generated/models/FocusedPage.js.map +1 -0
- package/dist/adapters/prisma/generated/models/IssuedToken.d.ts +47 -41
- package/dist/adapters/prisma/generated/models/OAuthClient.d.ts +32 -8
- package/dist/adapters/prisma/generated/models/Party.d.ts +90 -3
- package/dist/adapters/prisma/generated/models/WakeSent.d.ts +975 -0
- package/dist/adapters/prisma/generated/models/WakeSent.js +2 -0
- package/dist/adapters/prisma/generated/models/WakeSent.js.map +1 -0
- package/dist/adapters/prisma/generated/models/WebPushSubscription.d.ts +1115 -0
- package/dist/adapters/prisma/generated/models/WebPushSubscription.js +2 -0
- package/dist/adapters/prisma/generated/models/WebPushSubscription.js.map +1 -0
- package/dist/adapters/prisma/generated/models.d.ts +9 -0
- package/dist/adapters/prisma/oauth-stores.js +3 -2
- package/dist/adapters/prisma/oauth-stores.js.map +1 -1
- package/dist/adapters/prisma/party-store.js +35 -6
- package/dist/adapters/prisma/party-store.js.map +1 -1
- package/dist/adapters/prisma/person-crews.js +9 -0
- package/dist/adapters/prisma/person-crews.js.map +1 -1
- package/dist/adapters/prisma/push-store.d.ts +3 -0
- package/dist/adapters/prisma/push-store.js +102 -0
- package/dist/adapters/prisma/push-store.js.map +1 -0
- package/dist/adapters/prisma/waiter-locks.d.ts +4 -0
- package/dist/adapters/prisma/waiter-locks.js +72 -0
- package/dist/adapters/prisma/waiter-locks.js.map +1 -0
- package/dist/adapters/prisma/wakes-sent.d.ts +4 -0
- package/dist/adapters/prisma/wakes-sent.js +10 -0
- package/dist/adapters/prisma/wakes-sent.js.map +1 -0
- package/dist/adapters/prisma/web-push-subscriptions.d.ts +3 -0
- package/dist/adapters/prisma/web-push-subscriptions.js +33 -0
- package/dist/adapters/prisma/web-push-subscriptions.js.map +1 -0
- package/dist/adapters/trpc/router.d.ts +397 -9
- package/dist/adapters/trpc/router.js +247 -16
- package/dist/adapters/trpc/router.js.map +1 -1
- package/dist/adapters/web-push/web-push.d.ts +9 -0
- package/dist/adapters/web-push/web-push.js +70 -0
- package/dist/adapters/web-push/web-push.js.map +1 -0
- package/dist/adapters/webhooks/allowed-lookup.d.ts +14 -0
- package/dist/adapters/webhooks/allowed-lookup.js +28 -0
- package/dist/adapters/webhooks/allowed-lookup.js.map +1 -0
- package/dist/adapters/webhooks/host-resolver.d.ts +3 -0
- package/dist/adapters/webhooks/host-resolver.js +13 -0
- package/dist/adapters/webhooks/host-resolver.js.map +1 -0
- package/dist/adapters/webhooks/webhook-poster.d.ts +6 -0
- package/dist/adapters/webhooks/webhook-poster.js +67 -0
- package/dist/adapters/webhooks/webhook-poster.js.map +1 -0
- package/dist/app.d.ts +12 -0
- package/dist/app.js +273 -14
- package/dist/app.js.map +1 -1
- package/dist/bin/aeolus-gateway.js +3 -0
- package/dist/bin/aeolus-gateway.js.map +1 -1
- package/dist/config.d.ts +14 -0
- package/dist/config.js +24 -0
- package/dist/config.js.map +1 -1
- package/dist/core/a2a-in/authenticate-a2a-client.d.ts +23 -0
- package/dist/core/a2a-in/authenticate-a2a-client.js +21 -0
- package/dist/core/a2a-in/authenticate-a2a-client.js.map +1 -0
- package/dist/core/a2a-in/deliver-pushes.d.ts +24 -0
- package/dist/core/a2a-in/deliver-pushes.js +48 -0
- package/dist/core/a2a-in/deliver-pushes.js.map +1 -0
- package/dist/core/a2a-in/find-reached-ship.d.ts +18 -0
- package/dist/core/a2a-in/find-reached-ship.js +20 -0
- package/dist/core/a2a-in/find-reached-ship.js.map +1 -0
- package/dist/core/a2a-in/follow-a2a-task.d.ts +25 -0
- package/dist/core/a2a-in/follow-a2a-task.js +23 -0
- package/dist/core/a2a-in/follow-a2a-task.js.map +1 -0
- package/dist/core/a2a-in/inbound-message.d.ts +30 -0
- package/dist/core/a2a-in/inbound-message.js +33 -0
- package/dist/core/a2a-in/inbound-message.js.map +1 -0
- package/dist/core/a2a-in/list-a2a-tasks.d.ts +18 -0
- package/dist/core/a2a-in/list-a2a-tasks.js +14 -0
- package/dist/core/a2a-in/list-a2a-tasks.js.map +1 -0
- package/dist/core/a2a-in/list-push-configs.d.ts +20 -0
- package/dist/core/a2a-in/list-push-configs.js +18 -0
- package/dist/core/a2a-in/list-push-configs.js.map +1 -0
- package/dist/core/a2a-in/list-reached-ships.d.ts +25 -0
- package/dist/core/a2a-in/list-reached-ships.js +22 -0
- package/dist/core/a2a-in/list-reached-ships.js.map +1 -0
- package/dist/core/a2a-in/notice-task-changes.d.ts +19 -0
- package/dist/core/a2a-in/notice-task-changes.js +17 -0
- package/dist/core/a2a-in/notice-task-changes.js.map +1 -0
- package/dist/core/a2a-in/ports.d.ts +124 -0
- package/dist/core/a2a-in/ports.js +2 -0
- package/dist/core/a2a-in/ports.js.map +1 -0
- package/dist/core/a2a-in/push-config-view.d.ts +8 -0
- package/dist/core/a2a-in/push-config-view.js +2 -0
- package/dist/core/a2a-in/push-config-view.js.map +1 -0
- package/dist/core/a2a-in/push-to-webhooks.d.ts +19 -0
- package/dist/core/a2a-in/push-to-webhooks.js +19 -0
- package/dist/core/a2a-in/push-to-webhooks.js.map +1 -0
- package/dist/core/a2a-in/read-a2a-task.d.ts +12 -0
- package/dist/core/a2a-in/read-a2a-task.js +11 -0
- package/dist/core/a2a-in/read-a2a-task.js.map +1 -0
- package/dist/core/a2a-in/read-push-config.d.ts +16 -0
- package/dist/core/a2a-in/read-push-config.js +14 -0
- package/dist/core/a2a-in/read-push-config.js.map +1 -0
- package/dist/core/a2a-in/remove-push-config.d.ts +15 -0
- package/dist/core/a2a-in/remove-push-config.js +13 -0
- package/dist/core/a2a-in/remove-push-config.js.map +1 -0
- package/dist/core/a2a-in/send-a2a-message.d.ts +34 -0
- package/dist/core/a2a-in/send-a2a-message.js +106 -0
- package/dist/core/a2a-in/send-a2a-message.js.map +1 -0
- package/dist/core/a2a-in/set-push-config.d.ts +30 -0
- package/dist/core/a2a-in/set-push-config.js +27 -0
- package/dist/core/a2a-in/set-push-config.js.map +1 -0
- package/dist/core/a2a-in/subscribe-to-a2a-task.d.ts +18 -0
- package/dist/core/a2a-in/subscribe-to-a2a-task.js +17 -0
- package/dist/core/a2a-in/subscribe-to-a2a-task.js.map +1 -0
- package/dist/core/a2a-in/task-view.d.ts +51 -0
- package/dist/core/a2a-in/task-view.js +49 -0
- package/dist/core/a2a-in/task-view.js.map +1 -0
- package/dist/core/a2a-in/webhook-address.d.ts +7 -0
- package/dist/core/a2a-in/webhook-address.js +17 -0
- package/dist/core/a2a-in/webhook-address.js.map +1 -0
- package/dist/core/a2a-in/webhook.d.ts +6 -0
- package/dist/core/a2a-in/webhook.js +80 -0
- package/dist/core/a2a-in/webhook.js.map +1 -0
- package/dist/core/a2a-out/agent-endpoint.d.ts +10 -0
- package/dist/core/a2a-out/agent-endpoint.js +10 -0
- package/dist/core/a2a-out/agent-endpoint.js.map +1 -0
- package/dist/core/a2a-out/agent-event.d.ts +41 -0
- package/dist/core/a2a-out/agent-event.js +64 -0
- package/dist/core/a2a-out/agent-event.js.map +1 -0
- package/dist/core/a2a-out/agent-message.d.ts +36 -0
- package/dist/core/a2a-out/agent-message.js +36 -0
- package/dist/core/a2a-out/agent-message.js.map +1 -0
- package/dist/core/a2a-out/agent-statement.d.ts +10 -0
- package/dist/core/a2a-out/agent-statement.js +45 -0
- package/dist/core/a2a-out/agent-statement.js.map +1 -0
- package/dist/core/a2a-out/follow-agent-task.d.ts +40 -0
- package/dist/core/a2a-out/follow-agent-task.js +125 -0
- package/dist/core/a2a-out/follow-agent-task.js.map +1 -0
- package/dist/core/a2a-out/hand-a2a-message.d.ts +36 -0
- package/dist/core/a2a-out/hand-a2a-message.js +132 -0
- package/dist/core/a2a-out/hand-a2a-message.js.map +1 -0
- package/dist/core/a2a-out/mark-a2a-agent.d.ts +24 -0
- package/dist/core/a2a-out/mark-a2a-agent.js +24 -0
- package/dist/core/a2a-out/mark-a2a-agent.js.map +1 -0
- package/dist/core/a2a-out/ports.d.ts +200 -0
- package/dist/core/a2a-out/ports.js +2 -0
- package/dist/core/a2a-out/ports.js.map +1 -0
- package/dist/core/a2a-out/read-agent-statement.d.ts +13 -0
- package/dist/core/a2a-out/read-agent-statement.js +13 -0
- package/dist/core/a2a-out/read-agent-statement.js.map +1 -0
- package/dist/core/a2a-out/run-a2a-agent.d.ts +26 -0
- package/dist/core/a2a-out/run-a2a-agent.js +46 -0
- package/dist/core/a2a-out/run-a2a-agent.js.map +1 -0
- package/dist/core/a2a-out/state-a2a-agent.d.ts +26 -0
- package/dist/core/a2a-out/state-a2a-agent.js +31 -0
- package/dist/core/a2a-out/state-a2a-agent.js.map +1 -0
- package/dist/core/actors/authenticate-actor.d.ts +11 -5
- package/dist/core/actors/authenticate-actor.js +7 -3
- package/dist/core/actors/authenticate-actor.js.map +1 -1
- package/dist/core/actors/credential-of.d.ts +3 -2
- package/dist/core/actors/credential-of.js +4 -3
- package/dist/core/actors/credential-of.js.map +1 -1
- package/dist/core/mcp-in/call-tool.js +2 -0
- package/dist/core/mcp-in/call-tool.js.map +1 -1
- package/dist/core/mcp-in/client-call.d.ts +35 -4
- package/dist/core/mcp-in/client-call.js +57 -10
- package/dist/core/mcp-in/client-call.js.map +1 -1
- package/dist/core/mcp-in/collect-replies.d.ts +4 -3
- package/dist/core/mcp-in/collect-replies.js +4 -0
- package/dist/core/mcp-in/collect-replies.js.map +1 -1
- package/dist/core/mcp-in/ports.d.ts +52 -3
- package/dist/core/mcp-out/hand-call.d.ts +5 -1
- package/dist/core/mcp-out/hand-call.js +9 -1
- package/dist/core/mcp-out/hand-call.js.map +1 -1
- package/dist/core/mcp-out/run-party.d.ts +29 -7
- package/dist/core/mcp-out/run-party.js +14 -6
- package/dist/core/mcp-out/run-party.js.map +1 -1
- package/dist/core/mcp-out/state-party.d.ts +4 -2
- package/dist/core/mcp-out/state-party.js +10 -3
- package/dist/core/mcp-out/state-party.js.map +1 -1
- package/dist/core/mcp-out/statement.d.ts +2 -1
- package/dist/core/mcp-out/statement.js.map +1 -1
- package/dist/core/oauth/exchange-id-jag.d.ts +28 -0
- package/dist/core/oauth/exchange-id-jag.js +66 -0
- package/dist/core/oauth/exchange-id-jag.js.map +1 -0
- package/dist/core/oauth/exchange-token.d.ts +25 -11
- package/dist/core/oauth/exchange-token.js +50 -3
- package/dist/core/oauth/exchange-token.js.map +1 -1
- package/dist/core/oauth/ports.d.ts +17 -6
- package/dist/core/oauth/register-client.js +1 -1
- package/dist/core/oauth/register-client.js.map +1 -1
- package/dist/core/operator/authenticate-operator.d.ts +5 -9
- package/dist/core/operator/authenticate-operator.js +4 -4
- package/dist/core/operator/authenticate-operator.js.map +1 -1
- package/dist/core/operator/ports.d.ts +15 -9
- package/dist/core/parties/add-a2a-agent.d.ts +34 -0
- package/dist/core/parties/add-a2a-agent.js +45 -0
- package/dist/core/parties/add-a2a-agent.js.map +1 -0
- package/dist/core/parties/add-a2a-client.d.ts +30 -0
- package/dist/core/parties/add-a2a-client.js +47 -0
- package/dist/core/parties/add-a2a-client.js.map +1 -0
- package/dist/core/parties/add-client-party.d.ts +38 -0
- package/dist/core/parties/add-client-party.js +40 -0
- package/dist/core/parties/add-client-party.js.map +1 -0
- package/dist/core/parties/approve-party.d.ts +43 -2
- package/dist/core/parties/approve-party.js +9 -5
- package/dist/core/parties/approve-party.js.map +1 -1
- package/dist/core/parties/approver.d.ts +7 -0
- package/dist/core/parties/approver.js +9 -0
- package/dist/core/parties/approver.js.map +1 -0
- package/dist/core/parties/check-server.d.ts +2 -1
- package/dist/core/parties/check-server.js +1 -1
- package/dist/core/parties/check-server.js.map +1 -1
- package/dist/core/parties/crew-party.d.ts +18 -4
- package/dist/core/parties/crew-party.js +36 -4
- package/dist/core/parties/crew-party.js.map +1 -1
- package/dist/core/parties/party.d.ts +23 -1
- package/dist/core/parties/party.js +17 -4
- package/dist/core/parties/party.js.map +1 -1
- package/dist/core/parties/ports.d.ts +16 -0
- package/dist/core/parties/read-party-tools.d.ts +4 -3
- package/dist/core/parties/read-party-tools.js +4 -2
- package/dist/core/parties/read-party-tools.js.map +1 -1
- package/dist/core/parties/shown-party.d.ts +8 -0
- package/dist/core/parties/shown-party.js +4 -0
- package/dist/core/parties/shown-party.js.map +1 -1
- package/dist/core/parties/switch-tool.d.ts +29 -0
- package/dist/core/parties/switch-tool.js +33 -0
- package/dist/core/parties/switch-tool.js.map +1 -0
- package/dist/core/parties/tool-switches.d.ts +27 -0
- package/dist/core/parties/tool-switches.js +17 -0
- package/dist/core/parties/tool-switches.js.map +1 -0
- package/dist/core/people/answer-delivery.d.ts +2 -1
- package/dist/core/people/answer-delivery.js.map +1 -1
- package/dist/core/people/done-delivery.d.ts +2 -1
- package/dist/core/people/done-delivery.js.map +1 -1
- package/dist/core/people/focus-page.d.ts +18 -0
- package/dist/core/people/focus-page.js +20 -0
- package/dist/core/people/focus-page.js.map +1 -0
- package/dist/core/people/open-delivery.d.ts +3 -1
- package/dist/core/people/open-delivery.js +2 -0
- package/dist/core/people/open-delivery.js.map +1 -1
- package/dist/core/people/opened-of.d.ts +7 -2
- package/dist/core/people/opened-of.js +6 -1
- package/dist/core/people/opened-of.js.map +1 -1
- package/dist/core/people/person-crew.d.ts +2 -0
- package/dist/core/people/person-crew.js +6 -2
- package/dist/core/people/person-crew.js.map +1 -1
- package/dist/core/people/ports.d.ts +151 -3
- package/dist/core/people/read-wake-channels.d.ts +42 -0
- package/dist/core/people/read-wake-channels.js +21 -0
- package/dist/core/people/read-wake-channels.js.map +1 -0
- package/dist/core/people/turn-email-channel.d.ts +21 -0
- package/dist/core/people/turn-email-channel.js +22 -0
- package/dist/core/people/turn-email-channel.js.map +1 -0
- package/dist/core/people/turn-off-web-push.d.ts +13 -0
- package/dist/core/people/turn-off-web-push.js +14 -0
- package/dist/core/people/turn-off-web-push.js.map +1 -0
- package/dist/core/people/turn-on-web-push.d.ts +35 -0
- package/dist/core/people/turn-on-web-push.js +49 -0
- package/dist/core/people/turn-on-web-push.js.map +1 -0
- package/dist/core/people/wait-on-person-ship.d.ts +44 -0
- package/dist/core/people/wait-on-person-ship.js +92 -0
- package/dist/core/people/wait-on-person-ship.js.map +1 -0
- package/dist/core/people/wake-person.d.ts +40 -0
- package/dist/core/people/wake-person.js +74 -0
- package/dist/core/people/wake-person.js.map +1 -0
- package/dist/core/people/web-push-channel.d.ts +17 -0
- package/dist/core/people/web-push-channel.js +35 -0
- package/dist/core/people/web-push-channel.js.map +1 -0
- package/dist/core/requests/decide-request.d.ts +0 -2
- package/dist/core/requests/decide-request.js +3 -6
- package/dist/core/requests/decide-request.js.map +1 -1
- package/dist/core/requests/list-to-decide.js +1 -1
- package/dist/core/requests/list-to-decide.js.map +1 -1
- package/dist/core/shared/errors.d.ts +1 -1
- package/dist/core/shared/errors.js.map +1 -1
- package/dist/core/sign-in/ports.d.ts +13 -0
- package/dist/core/vault/credential.d.ts +6 -2
- package/dist/party-workers.d.ts +9 -1
- package/dist/party-workers.js +37 -5
- package/dist/party-workers.js.map +1 -1
- package/dist/person-waiters.d.ts +30 -0
- package/dist/person-waiters.js +89 -0
- package/dist/person-waiters.js.map +1 -0
- package/package.json +7 -3
- package/src/adapters/prisma/migrations/20261023120000_party_bearer_hash/migration.sql +4 -0
- package/src/adapters/prisma/migrations/20261023130000_client_credentials/migration.sql +5 -0
- package/src/adapters/prisma/migrations/20261023200000_a2a_tasks/migration.sql +20 -0
- package/src/adapters/prisma/migrations/20261023210000_tool_switches/migration.sql +2 -0
- package/src/adapters/prisma/migrations/20261024090000_a2a_pushes/migration.sql +37 -0
- package/src/adapters/prisma/migrations/20261024100000_party_is_repeatable/migration.sql +2 -0
- package/src/adapters/prisma/migrations/20261024110000_a2a_agent_calls/migration.sql +29 -0
- package/src/adapters/prisma/migrations/20261024115000_wakes/migration.sql +17 -0
- package/src/adapters/prisma/migrations/20261024120000_focused_pages/migration.sql +11 -0
- package/src/adapters/prisma/migrations/20261024130000_web_push_subscriptions/migration.sql +14 -0
- package/src/adapters/prisma/schema.prisma +159 -5
- package/web/.next/BUILD_ID +1 -1
- package/web/.next/app-path-routes-manifest.json +14 -11
- package/web/.next/build-manifest.json +39 -15
- package/web/.next/diagnostics/route-bundle-stats.json +107 -58
- package/web/.next/fallback-build-manifest.json +3 -3
- package/web/.next/next-minimal-server.js.nft.json +1 -1
- package/web/.next/next-server.js.nft.json +1 -1
- package/web/.next/prerender-manifest.json +3 -3
- package/web/.next/routes-manifest.json +18 -0
- package/web/.next/server/app/(console)/outside-parties/[name]/change/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/(console)/outside-parties/[name]/change/page/build-manifest.json +23 -0
- package/web/.next/server/app/(console)/outside-parties/[name]/change/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/(console)/outside-parties/[name]/change/page/server-reference-manifest.json +55 -0
- package/web/.next/server/app/(console)/outside-parties/[name]/change/page.js +25 -0
- package/web/.next/server/app/(console)/outside-parties/[name]/change/page.js.nft.json +1 -0
- package/web/.next/server/app/(console)/outside-parties/[name]/change/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(console)/outside-parties/[name]/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/{outside-parties/[name]/retire → (console)/outside-parties/[name]}/page/build-manifest.json +1 -1
- package/web/.next/server/app/{outside-parties/[name]/retire → (console)/outside-parties/[name]}/page/next-font-manifest.json +1 -1
- package/web/.next/server/app/(console)/outside-parties/[name]/page/server-reference-manifest.json +35 -0
- package/web/.next/server/app/(console)/outside-parties/[name]/page.js +24 -0
- package/web/.next/server/app/(console)/outside-parties/[name]/page.js.nft.json +1 -0
- package/web/.next/server/app/(console)/outside-parties/[name]/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(console)/outside-parties/[name]/retire/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/(console)/outside-parties/[name]/retire/page/build-manifest.json +23 -0
- package/web/.next/server/app/(console)/outside-parties/[name]/retire/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/(console)/outside-parties/[name]/retire/page/server-reference-manifest.json +55 -0
- package/web/.next/server/app/(console)/outside-parties/[name]/retire/page.js +25 -0
- package/web/.next/server/app/(console)/outside-parties/[name]/retire/page.js.nft.json +1 -0
- package/web/.next/server/app/(console)/outside-parties/[name]/retire/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(console)/outside-parties/add/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/{outside-parties/[name]/change → (console)/outside-parties/add}/page/build-manifest.json +1 -1
- package/web/.next/server/app/{outside-parties/[name]/change → (console)/outside-parties/add}/page/next-font-manifest.json +1 -1
- package/web/.next/server/app/(console)/outside-parties/add/page/server-reference-manifest.json +55 -0
- package/web/.next/server/app/(console)/outside-parties/add/page.js +25 -0
- package/web/.next/server/app/(console)/outside-parties/add/page.js.nft.json +1 -0
- package/web/.next/server/app/(console)/outside-parties/add/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(console)/outside-parties/add-a2a-agent/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/(console)/outside-parties/add-a2a-agent/page/build-manifest.json +23 -0
- package/web/.next/server/app/(console)/outside-parties/add-a2a-agent/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/(console)/outside-parties/add-a2a-agent/page/server-reference-manifest.json +25 -0
- package/web/.next/server/app/{outside-parties/add → (console)/outside-parties/add-a2a-agent}/page.js +14 -13
- package/web/.next/server/app/(console)/outside-parties/add-a2a-agent/page.js.nft.json +1 -0
- package/web/.next/server/app/(console)/outside-parties/add-a2a-agent/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(console)/outside-parties/add-a2a-client/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/(console)/outside-parties/add-a2a-client/page/build-manifest.json +23 -0
- package/web/.next/server/app/(console)/outside-parties/add-a2a-client/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/(console)/outside-parties/add-a2a-client/page/server-reference-manifest.json +25 -0
- package/web/.next/server/app/(console)/outside-parties/add-a2a-client/page.js +21 -0
- package/web/.next/server/app/(console)/outside-parties/add-a2a-client/page.js.nft.json +1 -0
- package/web/.next/server/app/(console)/outside-parties/add-a2a-client/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(console)/outside-parties/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/{outside-parties/[name] → (console)/outside-parties}/page/build-manifest.json +1 -1
- package/web/.next/server/app/{outside-parties/add → (console)/outside-parties}/page/next-font-manifest.json +1 -1
- package/web/.next/server/app/{outside-parties → (console)/outside-parties}/page/server-reference-manifest.json +6 -6
- package/web/.next/server/app/{outside-parties → (console)/outside-parties}/page.js +13 -12
- package/web/.next/server/app/(console)/outside-parties/page.js.nft.json +1 -0
- package/web/.next/server/app/(console)/outside-parties/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(console)/overview/changes/route/app-paths-manifest.json +3 -0
- package/web/.next/server/app/(console)/overview/changes/route.js +7 -0
- package/web/.next/server/app/(console)/overview/changes/route.js.nft.json +1 -0
- package/web/.next/server/app/(console)/overview/changes/route_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(console)/overview/focus/route/app-paths-manifest.json +3 -0
- package/web/.next/server/app/(console)/overview/focus/route/build-manifest.json +12 -0
- package/web/.next/server/app/(console)/overview/focus/route/server-reference-manifest.json +4 -0
- package/web/.next/server/app/(console)/overview/focus/route.js +7 -0
- package/web/.next/server/app/(console)/overview/focus/route.js.nft.json +1 -0
- package/web/.next/server/app/(console)/overview/focus/route_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(console)/overview/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/{sign-in/failed → (console)/overview}/page/build-manifest.json +1 -1
- package/web/.next/server/app/{parties → (console)/overview}/page/next-font-manifest.json +1 -1
- package/web/.next/server/app/(console)/overview/page/server-reference-manifest.json +75 -0
- package/web/.next/server/app/{overview/requests/[requestId] → (console)/overview}/page.js +15 -14
- package/web/.next/server/app/(console)/overview/page.js.nft.json +1 -0
- package/web/.next/server/app/(console)/overview/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(console)/overview/requests/[requestId]/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/(console)/overview/requests/[requestId]/page/build-manifest.json +23 -0
- package/web/.next/server/app/(console)/overview/requests/[requestId]/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/{overview → (console)/overview}/requests/[requestId]/page/server-reference-manifest.json +6 -6
- package/web/.next/server/app/{overview → (console)/overview/requests/[requestId]}/page.js +15 -14
- package/web/.next/server/app/(console)/overview/requests/[requestId]/page.js.map +5 -0
- package/web/.next/server/app/(console)/overview/requests/[requestId]/page.js.nft.json +1 -0
- package/web/.next/server/app/(console)/overview/requests/[requestId]/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(console)/parties/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/{outside-parties → (console)/parties}/page/build-manifest.json +1 -1
- package/web/.next/server/app/{outside-parties → (console)/parties}/page/next-font-manifest.json +1 -1
- package/web/.next/server/app/(console)/parties/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/{parties → (console)/parties}/page/server-reference-manifest.json +18 -18
- package/web/.next/server/app/{parties → (console)/parties}/page.js +12 -11
- package/web/.next/server/app/(console)/parties/page.js.map +5 -0
- package/web/.next/server/app/(console)/parties/page.js.nft.json +1 -0
- package/web/.next/server/app/(console)/parties/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/(console)/sign-in/failed/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/{outside-parties/add → (console)/sign-in/failed}/page/build-manifest.json +1 -1
- package/web/.next/server/app/{outside-parties/[name] → (console)/sign-in/failed}/page/next-font-manifest.json +1 -1
- package/web/.next/server/app/(console)/sign-in/failed/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/{sign-in → (console)/sign-in}/failed/page/server-reference-manifest.json +3 -3
- package/web/.next/server/app/{sign-in → (console)/sign-in}/failed/page.js +13 -12
- package/web/.next/server/app/(console)/sign-in/failed/page.js.map +5 -0
- package/web/.next/server/app/(console)/sign-in/failed/page.js.nft.json +1 -0
- package/web/.next/server/app/(console)/sign-in/failed/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/_global-error/page.js +3 -3
- package/web/.next/server/app/_global-error/page.js.nft.json +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/server-reference-manifest.json +1 -1
- package/web/.next/server/app/_not-found/page.js +7 -7
- 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/authorize/failed/page/server-reference-manifest.json +1 -1
- package/web/.next/server/app/authorize/failed/page.js +11 -9
- 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/server-reference-manifest.json +1 -1
- package/web/.next/server/app/authorize/pick/page.js +12 -10
- 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/server-reference-manifest.json +1 -1
- package/web/.next/server/app/authorize/waiting/approval/page.js +11 -9
- 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-paths-manifest.json +14 -11
- package/web/.next/server/chunks/0b9d__next-internal_server_app_(console)_overview_focus_route_actions_10hgyjvv-6fus.js +3 -0
- package/web/.next/server/chunks/1mb5_next-internal_server_app_(console)_overview_changes_route_actions_0zbq7lqsf5nng.js +3 -0
- package/web/.next/server/chunks/[externals]__0fgpzedhhntg9._.js +3 -0
- package/web/.next/server/chunks/[externals]__0fgpzedhhntg9._.js.map +1 -0
- package/web/.next/server/chunks/{[root-of-the-server]__00bbah0fbuex2._.js → [root-of-the-server]__0ykc8bq_c06a1._.js} +22 -22
- package/web/.next/server/chunks/[root-of-the-server]__0ykc8bq_c06a1._.js.map +1 -0
- package/web/.next/server/chunks/_04is-uopj3op9._.js +3 -0
- package/web/.next/server/chunks/_04is-uopj3op9._.js.map +1 -0
- package/web/.next/server/chunks/_1-fw4-pwzazl4._.js +3 -0
- package/web/.next/server/chunks/_1-fw4-pwzazl4._.js.map +1 -0
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_[name]_change_page_actions_04td11fxohsfm.js +3 -0
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_[name]_change_page_actions_04td11fxohsfm.js.map +1 -0
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_[name]_page_actions_0u-45itza1ls7.js +3 -0
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_[name]_page_actions_0u-45itza1ls7.js.map +1 -0
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_[name]_retire_page_actions_0s7ps6i0ts7v5.js +3 -0
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_[name]_retire_page_actions_0s7ps6i0ts7v5.js.map +1 -0
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_add-a2a-client_page_actions_0d_wgiu94c32e.js +3 -0
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_add-a2a-client_page_actions_0d_wgiu94c32e.js.map +1 -0
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_add_page_actions_0yfz_dfn-8uo7.js +3 -0
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_outside-parties_add_page_actions_0yfz_dfn-8uo7.js.map +1 -0
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_overview_requests_[requestId]_page_actions_0uki9j3mtuz9e.js +3 -0
- package/web/.next/server/chunks/ssr/0vkm_server_app_(console)_overview_requests_[requestId]_page_actions_0uki9j3mtuz9e.js.map +1 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__1qpk1uw97id0a._.js → [root-of-the-server]__0-og0bl8lr2xq._.js} +2 -2
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0-og0bl8lr2xq._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__07udzu2zwg_74._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__07udzu2zwg_74._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__197il4swfpq1a._.js → [root-of-the-server]__0a68v9ynev4q6._.js} +2 -2
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0a68v9ynev4q6._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0grpi5wnl9ppf._.js +10 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0grpi5wnl9ppf._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0k3g0p3t9t0c-._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0k3g0p3t9t0c-._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0l2_dk9d4o01n._.js +3 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__1vkw2kvzx6fpw._.js.map → [root-of-the-server]__0l2_dk9d4o01n._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0m57jyae0dn_7._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0m57jyae0dn_7._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0n2us07jk-78w._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0n2us07jk-78w._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0rr5u24i9tjyc._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0rr5u24i9tjyc._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__10y66e1xx8xiq._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__10y66e1xx8xiq._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__11w36a4le04vy._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__11w36a4le04vy._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__0ntyo9p3x-w6a._.js → [root-of-the-server]__179upda-y7uap._.js} +2 -2
- package/web/.next/server/chunks/ssr/[root-of-the-server]__179upda-y7uap._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1dtyycvqa6uht._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1dtyycvqa6uht._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1gb-3dttuacyz._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1gb-3dttuacyz._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1k25lo5ka4mgd._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1k25lo5ka4mgd._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1m9atpy0vkbmj._.js +3 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__0dywrno7zb0r_._.js.map → [root-of-the-server]__1m9atpy0vkbmj._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1n_sq_58wdluh._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1n_sq_58wdluh._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1w5swo8gmjyx6._.js +3 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__216xd8otb96uo._.js.map → [root-of-the-server]__1w5swo8gmjyx6._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1wl0vw-n8lbkn._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1yjb00o7x58xv._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1yjb00o7x58xv._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_0-lfpqqlgfhzj._.js +3 -0
- package/web/.next/server/chunks/ssr/_0-lfpqqlgfhzj._.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/_0bhvvyz0q_0ja._.js +4 -0
- package/web/.next/server/chunks/ssr/_0bhvvyz0q_0ja._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{_13qzwpag13tvy._.js → _0pyd1_y7w8ngp._.js} +2 -2
- package/web/.next/server/chunks/ssr/_0pyd1_y7w8ngp._.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/_12fsn_33ga-n0._.js +3 -0
- package/web/.next/server/chunks/ssr/_12fsn_33ga-n0._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_1_wav28san6dm._.js +4 -0
- package/web/.next/server/chunks/ssr/_1_wav28san6dm._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_1hmjvjuxx92vo._.js +3 -0
- package/web/.next/server/chunks/ssr/_1hmjvjuxx92vo._.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/_1qbsmlji34yph._.js +1 -1
- package/web/.next/server/chunks/ssr/_1qbsmlji34yph._.js.map +1 -1
- package/web/.next/server/chunks/ssr/node_modules_0cyjln1rocvt5._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_0cyjln1rocvt5._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_1ins1z8o_qrka._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_1ins1z8o_qrka._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_1wdusod3fyk3s._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_1wdusod3fyk3s._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_@aeolus-fleet_common_dist_header_1id6g-6m2hh0l._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_@aeolus-fleet_common_dist_header_1id6g-6m2hh0l._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_@aeolus-fleet_common_dist_header_1jvz31plyg2f-._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_@aeolus-fleet_common_dist_header_1jvz31plyg2f-._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_08hq6z46rczo0._.js +1 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_client_components_server-async-storage_0t1datokkgym0.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_client_components_server-async-storage_0t1datokkgym0.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_06etuymo2azrg.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_06etuymo2azrg.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_08lcy-jnk5o43.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_08lcy-jnk5o43.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0bnypafopxsfl.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0bnypafopxsfl.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0e8cobt3o_8ur.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0e8cobt3o_8ur.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0gzed-epom5si.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0gzed-epom5si.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0k0-b63ptvbl5.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0k0-b63ptvbl5.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0pik0g65vv-wi.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0pik0g65vv-wi.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0xccr6d8xcb1p.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0xccr6d8xcb1p.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_13agc620bnznv.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_13agc620bnznv.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_184-gj4lz41i-.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_184-gj4lz41i-.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1bt2ioufqh6fl.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1bt2ioufqh6fl.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1d613l6zsee_e.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1d613l6zsee_e.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1o0-ipfysjmro.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1o0-ipfysjmro.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1x-0vplt44lez.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1x-0vplt44lez.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_0-ufi2al5ubig._.js +3 -0
- package/web/.next/server/chunks/ssr/web_0-ufi2al5ubig._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_0_jk9eione6lx._.js +3 -0
- package/web/.next/server/chunks/ssr/web_0_jk9eione6lx._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_0v-7sowo0hupw._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_0wys4l6za8umr._.js +3 -0
- package/web/.next/server/chunks/ssr/web_0wys4l6za8umr._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_1ga4pbv72m0ad._.js +3 -0
- package/web/.next/server/chunks/ssr/web_1ga4pbv72m0ad._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{web_1nqu01kfi0u66._.js → web_1loiet18xbddu._.js} +2 -2
- package/web/.next/server/chunks/ssr/web_1loiet18xbddu._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_(console)_overview_page_actions_18on1ziyg1nzy.js +3 -0
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_(console)_overview_page_actions_18on1ziyg1nzy.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_app_(console)_layout_tsx_1t-5g79yb9xtl._.js +3 -0
- package/web/.next/server/chunks/ssr/web_app_(console)_layout_tsx_1t-5g79yb9xtl._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{web_app_outside-parties_[name]_change_page_tsx_0kfjh3f55us56._.js → web_app_(console)_outside-parties_[name]_change_page_tsx_00bpg0s2eypj9._.js} +2 -2
- package/web/.next/server/chunks/ssr/web_app_(console)_outside-parties_[name]_change_page_tsx_00bpg0s2eypj9._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{web_app_outside-parties_[name]_retire_page_tsx_0qhcnjpjipu_2._.js → web_app_(console)_outside-parties_[name]_retire_page_tsx_1zxy74pr5_2kn._.js} +2 -2
- package/web/.next/server/chunks/ssr/web_app_(console)_outside-parties_[name]_retire_page_tsx_1zxy74pr5_2kn._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{web_app_overview_error_tsx_17_cklg40kzxe._.js → web_app_(console)_overview_error_tsx_087e7ba8loavc._.js} +2 -2
- package/web/.next/server/chunks/ssr/web_app_(console)_overview_error_tsx_087e7ba8loavc._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_app_(console)_overview_error_tsx_1nn1jz5nh77af._.js +3 -0
- package/web/.next/server/chunks/ssr/web_app_(console)_overview_error_tsx_1nn1jz5nh77af._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_app_(console)_parties_page_tsx_0pp63ghly3eyp._.js +3 -0
- package/web/.next/server/chunks/ssr/web_app_(console)_parties_page_tsx_0pp63ghly3eyp._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_app_authorize_layout_tsx_0gs61_7wzx68y._.js +3 -0
- package/web/.next/server/chunks/ssr/web_app_authorize_layout_tsx_0gs61_7wzx68y._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_085cv0gogrxxf._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_085cv0gogrxxf._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_features_0ahlkugj7fu3n._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_0ahlkugj7fu3n._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_0h0ueu8_-_z5k._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_0h0ueu8_-_z5k._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_features_0i_kwiszuiqcp._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_0i_kwiszuiqcp._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_0xnlgtw8bfqaa._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_0xnlgtw8bfqaa._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_1--8ungjj--ht._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_1--8ungjj--ht._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_19v3mlx8c_h1-._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_19v3mlx8c_h1-._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_1_2m6l73qk7qw._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_1_2m6l73qk7qw._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_1qq_ruz59ldc9._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_1qq_ruz59ldc9._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_add-a2a-agent_ui_a2a-agent-form_tsx_0z8t1aalwzyl7._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_add-a2a-agent_ui_a2a-agent-form_tsx_0z8t1aalwzyl7._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_add-a2a-client_ui_a2a-client-form_tsx_1anv88g385nwe._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_add-a2a-client_ui_a2a-client-form_tsx_1anv88g385nwe._.js.map +1 -0
- 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_authorize_137wk0n1nu3cn._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_authorize_137wk0n1nu3cn._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_forms_1d1jyea2jni9o._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_forms_1d1jyea2jni9o._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_forms_form-state_ts_2142hiopykfk1._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_forms_form-state_ts_2142hiopykfk1._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_forms_ui_credential-fields_tsx_0l-w19zg-7x4b._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_forms_ui_credential-fields_tsx_0l-w19zg-7x4b._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_frame_0pe8cwpxe1egb._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_frame_0pe8cwpxe1egb._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_frame_ui_gateway-header_tsx_0e9tekx4jf7ng._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_frame_ui_gateway-header_tsx_0e9tekx4jf7ng._.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_outside-party_actions_ts_102ar5pdowf8s._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_features_outside-party_ui_20x5u9bhxeehi._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_outside-party_ui_20x5u9bhxeehi._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_overview_16dyz2ngvs14b._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_overview_16dyz2ngvs14b._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_features_overview_hooks_overview-actions_ts_0-wrat07d1y5g._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_overview_hooks_overview-actions_ts_0-wrat07d1y5g._.js.map +1 -1
- package/web/.next/server/chunks/ssr/web_features_overview_state_1wuk95dw2_whp._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_overview_state_1wuk95dw2_whp._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_overview_state_decision-panel_tsx_0kpd26ggtr6h_._.js +1 -1
- package/web/.next/server/chunks/ssr/web_features_overview_state_decision-panel_tsx_0kpd26ggtr6h_._.js.map +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_parties_actions_ts_0r-tbfsig2ty-._.js.map +1 -1
- package/web/.next/server/middleware-build-manifest.js +39 -15
- package/web/.next/server/next-font-manifest.js +1 -1
- package/web/.next/server/next-font-manifest.json +21 -13
- 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 +176 -74
- package/web/.next/static/chunks/00njqo86bx2kb.js +1 -0
- package/web/.next/static/chunks/047i2x2j--shk.css +3 -0
- package/web/.next/static/chunks/07j7jnfe13wx6.js +1 -0
- package/web/.next/static/chunks/0g4cpamshfwmn.js +1 -0
- package/web/.next/static/chunks/0j84uiid6fsim.js +1 -0
- package/web/.next/static/chunks/0p_kl57bddsiy.js +1 -0
- package/web/.next/static/chunks/1aa1d23q1vokr.js +1 -0
- package/web/.next/static/chunks/1ca21kggixrjz.js +1 -0
- package/web/.next/static/chunks/1jvae6c-4jwji.js +1 -0
- package/web/.next/static/chunks/23ud2e13dn8f4.js +1 -0
- package/web/.next/static/chunks/2_41h3v090ur9.js +1 -0
- package/web/.next/static/chunks/2x00o45pdbkok.js +1 -0
- package/web/.next/static/chunks/31vy122d9fvme.js +1 -0
- package/web/.next/static/chunks/3apnqdh48__yw.js +1 -0
- package/web/.next/static/chunks/3okm5g88ig1l3.js +1 -0
- package/web/.next/static/chunks/{0a1vw3r93lh06.js → 3v6tr952p9dba.js} +1 -1
- package/web/.next/trace +1 -1
- package/web/.next/trace-build +1 -1
- package/web/.next/types/routes.d.ts +8 -3
- package/web/.next/types/validator.ts +128 -50
- package/web/public/wake-worker.js +17 -0
- package/web/.next/server/app/outside-parties/[name]/change/page/app-paths-manifest.json +0 -3
- package/web/.next/server/app/outside-parties/[name]/change/page/server-reference-manifest.json +0 -35
- package/web/.next/server/app/outside-parties/[name]/change/page.js +0 -22
- package/web/.next/server/app/outside-parties/[name]/change/page.js.nft.json +0 -1
- package/web/.next/server/app/outside-parties/[name]/change/page_client-reference-manifest.js +0 -3
- package/web/.next/server/app/outside-parties/[name]/page/app-paths-manifest.json +0 -3
- package/web/.next/server/app/outside-parties/[name]/page/server-reference-manifest.json +0 -15
- package/web/.next/server/app/outside-parties/[name]/page.js +0 -20
- package/web/.next/server/app/outside-parties/[name]/page.js.nft.json +0 -1
- package/web/.next/server/app/outside-parties/[name]/page_client-reference-manifest.js +0 -3
- package/web/.next/server/app/outside-parties/[name]/retire/page/app-paths-manifest.json +0 -3
- package/web/.next/server/app/outside-parties/[name]/retire/page/server-reference-manifest.json +0 -35
- package/web/.next/server/app/outside-parties/[name]/retire/page.js +0 -21
- package/web/.next/server/app/outside-parties/[name]/retire/page.js.nft.json +0 -1
- package/web/.next/server/app/outside-parties/[name]/retire/page_client-reference-manifest.js +0 -3
- package/web/.next/server/app/outside-parties/add/page/app-paths-manifest.json +0 -3
- package/web/.next/server/app/outside-parties/add/page/server-reference-manifest.json +0 -35
- package/web/.next/server/app/outside-parties/add/page.js.nft.json +0 -1
- package/web/.next/server/app/outside-parties/add/page_client-reference-manifest.js +0 -3
- package/web/.next/server/app/outside-parties/page/app-paths-manifest.json +0 -3
- package/web/.next/server/app/outside-parties/page.js.nft.json +0 -1
- package/web/.next/server/app/outside-parties/page_client-reference-manifest.js +0 -3
- package/web/.next/server/app/overview/changes/route/app-paths-manifest.json +0 -3
- package/web/.next/server/app/overview/changes/route.js +0 -6
- package/web/.next/server/app/overview/changes/route.js.nft.json +0 -1
- package/web/.next/server/app/overview/changes/route_client-reference-manifest.js +0 -3
- package/web/.next/server/app/overview/page/app-paths-manifest.json +0 -3
- package/web/.next/server/app/overview/page/build-manifest.json +0 -23
- package/web/.next/server/app/overview/page/next-font-manifest.json +0 -11
- package/web/.next/server/app/overview/page/server-reference-manifest.json +0 -45
- package/web/.next/server/app/overview/page.js.nft.json +0 -1
- package/web/.next/server/app/overview/page_client-reference-manifest.js +0 -3
- package/web/.next/server/app/overview/requests/[requestId]/page/app-paths-manifest.json +0 -3
- package/web/.next/server/app/overview/requests/[requestId]/page/build-manifest.json +0 -23
- package/web/.next/server/app/overview/requests/[requestId]/page/next-font-manifest.json +0 -11
- package/web/.next/server/app/overview/requests/[requestId]/page.js.nft.json +0 -1
- package/web/.next/server/app/overview/requests/[requestId]/page_client-reference-manifest.js +0 -3
- package/web/.next/server/app/parties/page/app-paths-manifest.json +0 -3
- package/web/.next/server/app/parties/page/build-manifest.json +0 -23
- package/web/.next/server/app/parties/page.js.nft.json +0 -1
- package/web/.next/server/app/parties/page_client-reference-manifest.js +0 -3
- package/web/.next/server/app/sign-in/failed/page/app-paths-manifest.json +0 -3
- package/web/.next/server/app/sign-in/failed/page/next-font-manifest.json +0 -11
- package/web/.next/server/app/sign-in/failed/page.js.nft.json +0 -1
- package/web/.next/server/app/sign-in/failed/page_client-reference-manifest.js +0 -3
- package/web/.next/server/chunks/[externals]__12s2uxrv8n30f._.js +0 -3
- package/web/.next/server/chunks/[root-of-the-server]__00bbah0fbuex2._.js.map +0 -1
- package/web/.next/server/chunks/ssr/0vkm_server_app_overview_requests_[requestId]_page_actions_08cpboirhdm8t.js +0 -3
- package/web/.next/server/chunks/ssr/0vkm_server_app_overview_requests_[requestId]_page_actions_08cpboirhdm8t.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0-liudmjwlqmo._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0-liudmjwlqmo._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0dywrno7zb0r_._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0hosi33y5xecr._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0hosi33y5xecr._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0ntyo9p3x-w6a._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0rzvf7wb60m05._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0rzvf7wb60m05._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__10rfwy-punm8_._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__10rfwy-punm8_._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__11e7zi5yg_f_4._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__11e7zi5yg_f_4._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__197il4swfpq1a._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1afrhvkbp010p._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1afrhvkbp010p._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1qpk1uw97id0a._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1vkw2kvzx6fpw._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1yyfc4xf3xa-s._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1yyfc4xf3xa-s._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__216xd8otb96uo._.js +0 -3
- package/web/.next/server/chunks/ssr/_03xm-6l-r6ko0._.js +0 -4
- package/web/.next/server/chunks/ssr/_03xm-6l-r6ko0._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_04iwj3w0divwb._.js +0 -4
- package/web/.next/server/chunks/ssr/_04iwj3w0divwb._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_13qzwpag13tvy._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_1bfq0g9c1iw__._.js +0 -4
- package/web/.next/server/chunks/ssr/_1bfq0g9c1iw__._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_1jfy4064jcghi._.js +0 -3
- package/web/.next/server/chunks/ssr/_1jfy4064jcghi._.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_compiled_@opentelemetry_api_index_1oy1nwhip-98t.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_compiled_@opentelemetry_api_index_1oy1nwhip-98t.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_03zgfhccdkaiy.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_03zgfhccdkaiy.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0fj-1791_p39n.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0fj-1791_p39n.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0pq59x3iko2ai.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0pq59x3iko2ai.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0svltk31-r84e.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0svltk31-r84e.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0ytc4y16h581t.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0ytc4y16h581t.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_15hcath_cy93j.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_15hcath_cy93j.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1ej-pov8ir4hb.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1ej-pov8ir4hb.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1emdm3ck_2g9k.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1emdm3ck_2g9k.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1mvwdrj8rcdc5.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1mvwdrj8rcdc5.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1uc-ufaepnlh_.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1uc-ufaepnlh_.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1ymh04086158y.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1ymh04086158y.js.map +0 -1
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1z9khw-ht54ev.js +0 -3
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1z9khw-ht54ev.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_0vot73dagfg_x._.js +0 -3
- package/web/.next/server/chunks/ssr/web_0vot73dagfg_x._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_17c7_dhsf-sjp._.js +0 -3
- package/web/.next/server/chunks/ssr/web_17c7_dhsf-sjp._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_1j5yjwqkgyeve._.js +0 -3
- package/web/.next/server/chunks/ssr/web_1j5yjwqkgyeve._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_1nqu01kfi0u66._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_1zd285_dq60z5._.js +0 -3
- package/web/.next/server/chunks/ssr/web_1zd285_dq60z5._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_207u8paamz3z-._.js +0 -10
- package/web/.next/server/chunks/ssr/web_207u8paamz3z-._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_outside-parties_add_page_actions_0wclx47vjdhe6.js +0 -3
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_outside-parties_add_page_actions_0wclx47vjdhe6.js.map +0 -1
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_overview_page_actions_0hxu14a57nlf2.js +0 -3
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_overview_page_actions_0hxu14a57nlf2.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_app_not-found_tsx_1miwllm8xrp2a._.js +0 -3
- package/web/.next/server/chunks/ssr/web_app_not-found_tsx_1miwllm8xrp2a._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_app_outside-parties_[name]_change_page_tsx_0kfjh3f55us56._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_app_outside-parties_[name]_retire_page_tsx_0qhcnjpjipu_2._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_app_overview_error_tsx_0qlcwxupzw726._.js +0 -3
- package/web/.next/server/chunks/ssr/web_app_overview_error_tsx_0qlcwxupzw726._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_app_overview_error_tsx_17_cklg40kzxe._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_app_parties_page_tsx_1lilxm339jj89._.js +0 -3
- package/web/.next/server/chunks/ssr/web_app_parties_page_tsx_1lilxm339jj89._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_features_0k3zd1eymtkgq._.js +0 -3
- package/web/.next/server/chunks/ssr/web_features_0k3zd1eymtkgq._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_features_0vq1wjkuh6dmr._.js +0 -3
- package/web/.next/server/chunks/ssr/web_features_0vq1wjkuh6dmr._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_features_forms_03k1kg82ux_ee._.js +0 -3
- package/web/.next/server/chunks/ssr/web_features_forms_03k1kg82ux_ee._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_features_forms_1-88lvs4ivi73._.js +0 -3
- package/web/.next/server/chunks/ssr/web_features_forms_1-88lvs4ivi73._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_features_forms_15gausi3cpweg._.js +0 -3
- package/web/.next/server/chunks/ssr/web_features_forms_15gausi3cpweg._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_features_outside-party_ui_outside-party_tsx_06a94oekz1ckq._.js +0 -3
- package/web/.next/server/chunks/ssr/web_features_outside-party_ui_outside-party_tsx_06a94oekz1ckq._.js.map +0 -1
- package/web/.next/server/chunks/ssr/web_features_overview_state_inbox-panel_tsx_03hlegjsc27sb._.js +0 -3
- package/web/.next/server/chunks/ssr/web_features_overview_state_inbox-panel_tsx_03hlegjsc27sb._.js.map +0 -1
- package/web/.next/server/chunks/web__next-internal_server_app_overview_changes_route_actions_16jqwsctr1pzg.js +0 -3
- package/web/.next/static/chunks/0214opd1iq3ld.js +0 -1
- package/web/.next/static/chunks/0hobzrlhklo3e.js +0 -1
- package/web/.next/static/chunks/1ma7v1viiz247.js +0 -1
- package/web/.next/static/chunks/1sgi4p93eayf4.js +0 -1
- package/web/.next/static/chunks/22u81hd6kxqsx.js +0 -1
- package/web/.next/static/chunks/2qpupho1jn-iy.js +0 -1
- package/web/.next/static/chunks/2rap-vrom5-zw.css +0 -3
- package/web/.next/static/chunks/3jr0srcv_-pfa.js +0 -1
- package/web/.next/static/chunks/3l_1gcuoe8bfn.js +0 -1
- package/web/.next/static/chunks/3sv0_hjr9t4cp.js +0 -1
- /package/web/.next/server/app/{outside-parties → (console)/outside-parties}/[name]/change/page/react-loadable-manifest.json +0 -0
- /package/web/.next/server/app/{outside-parties → (console)/outside-parties}/[name]/change/page.js.map +0 -0
- /package/web/.next/server/app/{outside-parties → (console)/outside-parties}/[name]/page/react-loadable-manifest.json +0 -0
- /package/web/.next/server/app/{outside-parties → (console)/outside-parties}/[name]/page.js.map +0 -0
- /package/web/.next/server/app/{outside-parties → (console)/outside-parties}/[name]/retire/page/react-loadable-manifest.json +0 -0
- /package/web/.next/server/app/{outside-parties → (console)/outside-parties}/[name]/retire/page.js.map +0 -0
- /package/web/.next/server/app/{overview → (console)/outside-parties/add}/page/react-loadable-manifest.json +0 -0
- /package/web/.next/server/app/{overview → (console)/outside-parties/add}/page.js.map +0 -0
- /package/web/.next/server/app/{outside-parties/add → (console)/outside-parties/add-a2a-agent}/page/react-loadable-manifest.json +0 -0
- /package/web/.next/server/app/{outside-parties/add → (console)/outside-parties/add-a2a-agent}/page.js.map +0 -0
- /package/web/.next/server/app/{outside-parties → (console)/outside-parties/add-a2a-client}/page/react-loadable-manifest.json +0 -0
- /package/web/.next/server/app/{outside-parties → (console)/outside-parties/add-a2a-client}/page.js.map +0 -0
- /package/web/.next/server/app/{overview/requests/[requestId] → (console)/outside-parties}/page/react-loadable-manifest.json +0 -0
- /package/web/.next/server/app/{overview/requests/[requestId] → (console)/outside-parties}/page.js.map +0 -0
- /package/web/.next/server/app/{overview → (console)/overview}/changes/route/build-manifest.json +0 -0
- /package/web/.next/server/app/{overview → (console)/overview}/changes/route/server-reference-manifest.json +0 -0
- /package/web/.next/server/app/{overview → (console)/overview}/changes/route.js.map +0 -0
- /package/web/.next/server/app/{parties/page.js.map → (console)/overview/focus/route.js.map} +0 -0
- /package/web/.next/server/app/{parties → (console)/overview}/page/react-loadable-manifest.json +0 -0
- /package/web/.next/server/app/{sign-in/failed → (console)/overview}/page.js.map +0 -0
- /package/web/.next/server/app/{sign-in/failed → (console)/overview/requests/[requestId]}/page/react-loadable-manifest.json +0 -0
- /package/web/.next/server/chunks/{[externals]__12s2uxrv8n30f._.js.map → 0b9d__next-internal_server_app_(console)_overview_focus_route_actions_10hgyjvv-6fus.js.map} +0 -0
- /package/web/.next/server/chunks/{web__next-internal_server_app_overview_changes_route_actions_16jqwsctr1pzg.js.map → 1mb5_next-internal_server_app_(console)_overview_changes_route_actions_0zbq7lqsf5nng.js.map} +0 -0
- /package/web/.next/static/{MLIzjhz2u5r5gyyuciHvf → Az1CqrzgGHMZVR4nw9717}/_buildManifest.js +0 -0
- /package/web/.next/static/{MLIzjhz2u5r5gyyuciHvf → Az1CqrzgGHMZVR4nw9717}/_clientMiddlewareManifest.js +0 -0
- /package/web/.next/static/{MLIzjhz2u5r5gyyuciHvf → Az1CqrzgGHMZVR4nw9717}/_ssgManifest.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../web/features/overview/state/inbox-panel.tsx","../../../../../web/features/overview/hooks/data%3A48b0e0%20%3Ctext/javascript%3E","../../../../../web/features/overview/hooks/data%3A2908de%20%3Ctext/javascript%3E","../../../../../web/features/overview/hooks/data%3Aafddb4%20%3Ctext/javascript%3E","../../../../../web/features/overview/ui/delivery-card.tsx","../../../../../web/features/overview/ui/inbox-list.tsx","../../../../../web/features/overview/state/wake-panel.tsx","../../../../../web/features/overview/hooks/data%3Ac16472%20%3Ctext/javascript%3E","../../../../../web/features/overview/hooks/data%3A4321db%20%3Ctext/javascript%3E","../../../../../web/features/overview/hooks/data%3A0ff6e4%20%3Ctext/javascript%3E","../../../../../web/features/overview/services/web-push.ts","../../../../../web/features/overview/state/web-push-panel.tsx"],"sourcesContent":["'use client';\n\nimport { useState, useTransition } from 'react';\n\nimport { answerDelivery, doneDelivery, openDelivery, type ActionOutcome } from '../hooks/overview-actions';\nimport type { FocusedDelivery, Inbox, InboxEntry } from '../services/deliveries';\nimport { DeliveryCard, type DeliveryControl } from '../ui/delivery-card';\nimport { InboxList } from '../ui/inbox-list';\nimport { Notice } from '../ui/notice';\n\n/**\n * The person's inbox with one delivery in focus at a time. Opening is their\n * own act, so it is a press, never a link: the gateway acknowledges the\n * delivery for them, and it is shown whole, once. Answering or being done\n * says so in place, and the inbox reads itself again.\n */\nexport function InboxPanel({ fleetId, inbox }: { fleetId: string; inbox: Inbox }) {\n const [focus, setFocus] = useState<FocusedDelivery | undefined>();\n const [note, setNote] = useState('');\n const [openingId, setOpeningId] = useState<string | undefined>();\n const [working, setWorking] = useState<DeliveryControl | undefined>();\n const [openFailure, setOpenFailure] = useState<{ deliveryId: string; message: string } | undefined>();\n const [failure, setFailure] = useState<string | undefined>();\n const [done, setDone] = useState<string | undefined>();\n const [, startTransition] = useTransition();\n\n const show = (delivery: FocusedDelivery) => {\n setFocus(delivery);\n setNote('');\n setFailure(undefined);\n setDone(undefined);\n };\n\n const open = (entry: InboxEntry) => {\n setOpeningId(entry.deliveryId);\n setOpenFailure(undefined);\n setDone(undefined);\n startTransition(async () => {\n const outcome = await openDelivery(fleetId, entry.deliveryId);\n setOpeningId(undefined);\n if (outcome.isOk) {\n show(outcome.value);\n } else {\n setOpenFailure({ deliveryId: entry.deliveryId, message: outcome.message });\n }\n });\n };\n\n const settle = ({ control, action, said }: { control: DeliveryControl; action: () => Promise<ActionOutcome<undefined>>; said: string }) => {\n setWorking(control);\n setFailure(undefined);\n startTransition(async () => {\n const outcome = await action();\n setWorking(undefined);\n if (outcome.isOk) {\n setFocus(undefined);\n setDone(said);\n } else {\n setFailure(outcome.message);\n }\n });\n };\n\n if (focus !== undefined) {\n return (\n <DeliveryCard\n delivery={focus}\n note={note}\n working={working}\n failure={failure}\n onNoteChange={setNote}\n onAnswer={(option) => { settle({ control: option === undefined ? { kind: 'note' } : { kind: 'option', option }, action: () => answerDelivery({ fleet: fleetId, deliveryId: focus.deliveryId, input: { questionId: focus.question?.id, option, note } }), said: `Your answer went to ${focus.from}.` }); }\n }\n onDone={() => { settle({ control: { kind: 'done' }, action: () => doneDelivery(fleetId, focus.deliveryId), said: `Done with “${focus.title}”.` }); }}\n onBack={() => { setFocus(undefined); }}\n />\n );\n }\n return (\n <div className=\"grid gap-4\">\n {done === undefined ? null : <Notice message={done} isFailure={false} />}\n <InboxList\n waitingCount={inbox.waiting}\n waiting={inbox.deliveries}\n opened={inbox.opened}\n openingId={openingId}\n failure={openFailure}\n onOpen={open}\n onFocus={(entry) => { show({ ...entry, payload: undefined, question: undefined }); }}\n />\n </div>\n );\n}\n","/* __next_internal_action_entry_do_not_use__ [{\"4094bd2603f6cb4c692f8c5bbc35b6dfa0e2cd78a8\":{\"name\":\"answerDelivery\"}},\"web/features/overview/hooks/overview-actions.ts\",\"\"] */\"use turbopack: no side effects\";import{createServerReference,callServer,findSourceMapURL}from\"private-next-rsc-action-client-wrapper\";const $$RSC_SERVER_ACTION_1=/*#__PURE__*/createServerReference(\"4094bd2603f6cb4c692f8c5bbc35b6dfa0e2cd78a8\",callServer,void 0,findSourceMapURL,\"answerDelivery\");export{$$RSC_SERVER_ACTION_1 as answerDelivery};","/* __next_internal_action_entry_do_not_use__ [{\"6014a23e56a6300e1adee24bc60d3989cf9a3ffcaa\":{\"name\":\"doneDelivery\"}},\"web/features/overview/hooks/overview-actions.ts\",\"\"] */\"use turbopack: no side effects\";import{createServerReference,callServer,findSourceMapURL}from\"private-next-rsc-action-client-wrapper\";const $$RSC_SERVER_ACTION_2=/*#__PURE__*/createServerReference(\"6014a23e56a6300e1adee24bc60d3989cf9a3ffcaa\",callServer,void 0,findSourceMapURL,\"doneDelivery\");export{$$RSC_SERVER_ACTION_2 as doneDelivery};","/* __next_internal_action_entry_do_not_use__ [{\"60813b25998f3aa5040c7138940db92bf5b1bba1ae\":{\"name\":\"openDelivery\"}},\"web/features/overview/hooks/overview-actions.ts\",\"\"] */\"use turbopack: no side effects\";import{createServerReference,callServer,findSourceMapURL}from\"private-next-rsc-action-client-wrapper\";const $$RSC_SERVER_ACTION_0=/*#__PURE__*/createServerReference(\"60813b25998f3aa5040c7138940db92bf5b1bba1ae\",callServer,void 0,findSourceMapURL,\"openDelivery\");export{$$RSC_SERVER_ACTION_0 as openDelivery};","import type { FocusedDelivery } from '../services/deliveries';\nimport { ActionButton } from './action-button';\nimport { Notice } from './notice';\n\n/** Which of the card's controls is working: an option of the question, the note alone, or done. */\nexport type DeliveryControl = { kind: 'option'; option: number } | { kind: 'note' } | { kind: 'done' };\n\n/**\n * One delivery in focus (design B, Signal). A question is answered with one\n * tap on a button that names the option it sends, the asker's pick on a\n * dashed edge; any delivery may get a note as its answer, and a message may\n * be done with. Opened before, it shows by its title alone, as its content\n * was shown once.\n */\nexport function DeliveryCard({\n delivery,\n note,\n working,\n failure,\n onNoteChange,\n onAnswer,\n onDone,\n onBack,\n}: {\n delivery: FocusedDelivery;\n note: string;\n working: DeliveryControl | undefined;\n failure: string | undefined;\n onNoteChange: (note: string) => void;\n onAnswer: (option: number | undefined) => void;\n onDone: () => void;\n onBack: () => void;\n}) {\n const { question } = delivery;\n const isWorking = working !== undefined;\n const picked = question?.options.find((option) => option.key === question.pick.option);\n return (\n <section data-testid=\"overview-delivery\" className=\"grid gap-3 rounded-lg border border-border bg-card p-6 text-card-foreground shadow-sm\">\n <span className=\"text-caption text-muted-foreground\">\n {delivery.from} · {new Date(delivery.sentAt).toUTCString()}\n </span>\n <h2 className=\"text-heading font-semibold\">{question?.title ?? delivery.title}</h2>\n {question === undefined ? (\n delivery.payload === undefined ? (\n <p className=\"text-muted-foreground\">You opened this before; its content was shown to you then.</p>\n ) : (\n <pre className=\"whitespace-pre-wrap rounded-md bg-muted p-3 font-mono text-caption\">{delivery.payload}</pre>\n )\n ) : (\n <>\n <p className=\"whitespace-pre-wrap\">{question.context}</p>\n <div className=\"flex flex-wrap gap-2\">\n {question.options.map((option) => (\n <ActionButton\n key={option.key}\n title={option.detail}\n variant={option.key === question.pick.option ? 'primary' : 'secondary'}\n className={option.key === question.pick.option ? 'outline-2 outline-offset-2 outline-dashed outline-ring' : ''}\n isPending={working?.kind === 'option' && working.option === option.key}\n pendingLabel=\"Sending...\"\n disabled={isWorking}\n onClick={() => { onAnswer(option.key); }}\n >\n {option.label}\n </ActionButton>\n ))}\n </div>\n {picked === undefined ? null : (\n <p className=\"text-muted-foreground\">\n {picked.label} is the pick of {delivery.from}: {question.pick.why}\n </p>\n )}\n </>\n )}\n <label className=\"grid gap-1\">\n <span>{question === undefined ? 'Your answer' : 'Note'}</span>\n <textarea\n data-testid=\"overview-note\"\n rows={2}\n value={note}\n onChange={(event) => { onNoteChange(event.target.value); }}\n placeholder={question === undefined ? '' : 'Optional, sent with your answer'}\n className=\"rounded-md border border-input bg-background p-2\"\n />\n </label>\n {failure === undefined ? null : <Notice message={failure} isFailure />}\n <div className=\"flex flex-wrap gap-2\">\n <ActionButton data-testid=\"overview-answer\" variant={question === undefined ? 'primary' : 'secondary'} isPending={working?.kind === 'note'} pendingLabel=\"Sending...\" disabled={isWorking} onClick={() => { onAnswer(undefined); }}>\n {question === undefined ? 'Answer' : 'Send the note alone'}\n </ActionButton>\n {question === undefined ? (\n <ActionButton data-testid=\"overview-done\" isPending={working?.kind === 'done'} pendingLabel=\"Marking done...\" disabled={isWorking} onClick={onDone}>\n Done\n </ActionButton>\n ) : null}\n <button type=\"button\" onClick={onBack} disabled={isWorking} className=\"inline-flex h-9 items-center rounded-md px-4 text-muted-foreground hover:bg-accent disabled:opacity-70\">\n Back to the inbox\n </button>\n </div>\n </section>\n );\n}\n","import type { InboxEntry } from '../services/deliveries';\nimport { ActionButton } from './action-button';\nimport { Notice } from './notice';\n\nfunction EntryText({ entry }: { entry: InboxEntry }) {\n return (\n <span className=\"flex min-w-0 flex-1 flex-col text-left\">\n <span className=\"truncate\">{entry.title}</span>\n <span className=\"text-caption text-muted-foreground\">from {entry.from}</span>\n </span>\n );\n}\n\n/**\n * The person's inbox in two groups (aeolus-fleet #1046): what waits, which\n * they open one at a time, and what they opened and have not answered or\n * been done with yet. A failure to open says why by the delivery.\n */\nexport function InboxList({\n waitingCount,\n waiting,\n opened,\n openingId,\n failure,\n onOpen,\n onFocus,\n}: {\n waitingCount: number;\n waiting: readonly InboxEntry[];\n opened: readonly InboxEntry[];\n openingId: string | undefined;\n failure: { deliveryId: string; message: string } | undefined;\n onOpen: (entry: InboxEntry) => void;\n onFocus: (entry: InboxEntry) => void;\n}) {\n return (\n <div className=\"grid gap-6\">\n {waiting.length === 0 ? null : (\n <section className=\"grid gap-2\">\n <h2 className=\"text-section font-semibold\">Next · {waitingCount}</h2>\n {waiting.map((entry) => (\n <div key={entry.deliveryId} className=\"grid gap-2 rounded-md border border-border bg-card p-3\">\n <div className=\"flex items-center gap-3\">\n <EntryText entry={entry} />\n <ActionButton data-testid=\"overview-open\" isPending={openingId === entry.deliveryId} pendingLabel=\"Opening...\" disabled={openingId !== undefined} onClick={() => { onOpen(entry); }}>\n Open\n </ActionButton>\n </div>\n {failure?.deliveryId === entry.deliveryId ? <Notice message={failure.message} isFailure /> : null}\n </div>\n ))}\n </section>\n )}\n {opened.length === 0 ? null : (\n <section className=\"grid gap-2\">\n <h2 className=\"text-section font-semibold\">Opened, not yet dealt with · {opened.length}</h2>\n {opened.map((entry) => (\n <div key={entry.deliveryId} className=\"flex items-center gap-3 rounded-md border border-border bg-card p-3\">\n <EntryText entry={entry} />\n <button type=\"button\" data-testid=\"overview-deal\" onClick={() => { onFocus(entry); }} className=\"inline-flex h-9 items-center rounded-md border border-border px-4 hover:bg-accent\">\n Answer or be done\n </button>\n </div>\n ))}\n </section>\n )}\n </div>\n );\n}\n","'use client';\n\nimport { useState, useTransition } from 'react';\n\nimport { turnEmail } from '../hooks/overview-actions';\nimport type { WakeChannels } from '../services/deliveries';\nimport { ActionButton } from '../ui/action-button';\nimport { Notice } from '../ui/notice';\nimport { WebPushPanel } from './web-push-panel';\n\n/**\n * Where the person turns on the channels that wake them when something\n * waits for their person ship while they are away (wake a person, W8):\n * email, where the gateway sends it, and web push per browser, where it\n * holds push keys. Nothing is on by default. The wake says only that\n * something waits in the fleet, with a link here. While a page of theirs\n * here is in focus, it shows what arrives and no wake goes out (W6).\n */\nexport function WakePanel({ fleetId, channels }: { fleetId: string; channels: WakeChannels }) {\n const [isTurning, startTransition] = useTransition();\n const [failure, setFailure] = useState<string | undefined>();\n const { email, webPush } = channels;\n if (!email.isOffered && webPush.publicKey === null) {\n return null;\n }\n\n const turn = (isOn: boolean) => {\n setFailure(undefined);\n startTransition(async () => {\n const outcome = await turnEmail(fleetId, isOn);\n if (!outcome.isOk) {\n setFailure(outcome.message);\n }\n });\n };\n\n return (\n <section className=\"grid gap-2\" aria-labelledby=\"overview-wake-heading\">\n <h2 id=\"overview-wake-heading\" className=\"text-section font-semibold\">\n When something waits\n </h2>\n {!email.isOffered ? null : (\n <div className=\"flex items-center gap-3 rounded-md border border-border bg-card p-3\">\n <span className=\"flex min-w-0 flex-1 flex-col\">\n <span>Email</span>\n <span data-testid=\"overview-wake-email-state\" className=\"text-caption text-muted-foreground\">\n {email.isOn ? 'On: you get an email when something waits for you in this fleet, with a link here. Never what waits.' : 'Off: nothing tells you when something waits while you are away.'}\n </span>\n </span>\n <ActionButton data-testid=\"overview-wake-email\" isPending={isTurning} pendingLabel={email.isOn ? 'Turning off...' : 'Turning on...'} onClick={() => { turn(!email.isOn); }}>\n {email.isOn ? 'Turn off' : 'Turn on'}\n </ActionButton>\n </div>\n )}\n {failure === undefined ? null : <Notice message={failure} isFailure />}\n {webPush.publicKey === null ? null : <WebPushPanel fleetId={fleetId} webPushKey={webPush.publicKey} browsers={webPush.browsers} />}\n </section>\n );\n}\n","/* __next_internal_action_entry_do_not_use__ [{\"60b48f9537cbc087081a7c9cb59da4be205bfeabdd\":{\"name\":\"turnEmail\"}},\"web/features/overview/hooks/overview-actions.ts\",\"\"] */\"use turbopack: no side effects\";import{createServerReference,callServer,findSourceMapURL}from\"private-next-rsc-action-client-wrapper\";const $$RSC_SERVER_ACTION_3=/*#__PURE__*/createServerReference(\"60b48f9537cbc087081a7c9cb59da4be205bfeabdd\",callServer,void 0,findSourceMapURL,\"turnEmail\");export{$$RSC_SERVER_ACTION_3 as turnEmail};","/* __next_internal_action_entry_do_not_use__ [{\"60aac98a56e7babd7b75c679560c72a3ef6741a3b7\":{\"name\":\"turnOffWebPush\"}},\"web/features/overview/hooks/overview-actions.ts\",\"\"] */\"use turbopack: no side effects\";import{createServerReference,callServer,findSourceMapURL}from\"private-next-rsc-action-client-wrapper\";const $$RSC_SERVER_ACTION_5=/*#__PURE__*/createServerReference(\"60aac98a56e7babd7b75c679560c72a3ef6741a3b7\",callServer,void 0,findSourceMapURL,\"turnOffWebPush\");export{$$RSC_SERVER_ACTION_5 as turnOffWebPush};","/* __next_internal_action_entry_do_not_use__ [{\"60da3873bc1544318b9ef24fd1e90ef1716e80cdd3\":{\"name\":\"turnOnWebPush\"}},\"web/features/overview/hooks/overview-actions.ts\",\"\"] */\"use turbopack: no side effects\";import{createServerReference,callServer,findSourceMapURL}from\"private-next-rsc-action-client-wrapper\";const $$RSC_SERVER_ACTION_4=/*#__PURE__*/createServerReference(\"60da3873bc1544318b9ef24fd1e90ef1716e80cdd3\",callServer,void 0,findSourceMapURL,\"turnOnWebPush\");export{$$RSC_SERVER_ACTION_4 as turnOnWebPush};","/**\n * What the overview's section of wakes works out in the browser (wake a\n * person, W8): the name a browser it turns web push on in is listed by, the\n * gateway's push key as the browser's push manager takes it, and the\n * subscription the browser sends the gateway.\n */\n\n/** A browser's push subscription as the gateway takes it, with the browser's name. */\nexport interface SubscriptionInput {\n readonly endpoint: string;\n readonly keys: { readonly p256dh: string; readonly auth: string };\n readonly browser: string;\n}\n\n/** The browsers and systems a name is made of, the first that matches counting: Edge and Chrome also say Safari, and Chrome says Chrome. */\nconst BROWSERS: readonly (readonly [RegExp, string])[] = [\n [/Edg\\//, 'Edge'],\n [/Firefox\\//, 'Firefox'],\n [/Chrome\\//, 'Chrome'],\n [/Safari\\//, 'Safari'],\n];\nconst SYSTEMS: readonly (readonly [RegExp, string])[] = [\n [/iPhone|iPad/, 'iOS'],\n [/Android/, 'Android'],\n [/Mac OS X/, 'macOS'],\n [/Windows/, 'Windows'],\n [/Linux/, 'Linux'],\n];\n\nconst firstOf = (userAgent: string, names: readonly (readonly [RegExp, string])[]): string | undefined => names.find(([pattern]) => pattern.test(userAgent))?.[1];\n\n/** The name a browser is listed by, such as Firefox on Linux, from its user agent. */\nexport function browserNameOf(userAgent: string): string {\n const browser = firstOf(userAgent, BROWSERS);\n const system = firstOf(userAgent, SYSTEMS);\n if (browser === undefined) {\n return 'A browser';\n }\n return system === undefined ? browser : `${browser} on ${system}`;\n}\n\n/** The bytes a base64url key stands for, as the browser's push manager takes the gateway's key. */\nexport function applicationServerKeyOf(key: string): Uint8Array<ArrayBuffer> {\n const binary = atob(key.replaceAll('-', '+').replaceAll('_', '/'));\n return Uint8Array.from(binary, (character) => character.charCodeAt(0));\n}\n\n/** The subscription to send, from the push manager's own, or none when it gave no endpoint or keys. */\nexport function subscriptionInputOf(subscription: { endpoint?: string; keys?: Record<string, string> }, browser: string): SubscriptionInput | undefined {\n const { endpoint, keys } = subscription;\n const p256dh = keys?.p256dh;\n const auth = keys?.auth;\n return endpoint === undefined || p256dh === undefined || auth === undefined ? undefined : { endpoint, keys: { p256dh, auth }, browser };\n}\n","'use client';\n\nimport { useEffect, useState, useTransition } from 'react';\n\nimport { turnOffWebPush, turnOnWebPush } from '../hooks/overview-actions';\nimport type { WakeChannels } from '../services/deliveries';\nimport { applicationServerKeyOf, browserNameOf, subscriptionInputOf } from '../services/web-push';\nimport { ActionButton } from '../ui/action-button';\nimport { Notice } from '../ui/notice';\n\n/** The service worker that shows a wake and opens the overview when it is pressed. */\nconst WORKER_PATH = '/wake-worker.js';\n\n/** Whether this browser takes web push at all. */\nfunction isPushTaken(): boolean {\n return 'serviceWorker' in navigator && 'PushManager' in window && 'Notification' in window;\n}\n\n/** This browser's own push subscription with the gateway's worker, if it has one. */\nasync function ownSubscription(): Promise<PushSubscription | null> {\n const registration = await navigator.serviceWorker.getRegistration(WORKER_PATH);\n return (await registration?.pushManager.getSubscription()) ?? null;\n}\n\n/** Asks the browser's permission, then subscribes it with the gateway's key: the subscription to send, or why there is none. */\nasync function subscribed(webPushKey: string): Promise<{ readonly isOk: true; readonly value: PushSubscription } | { readonly isOk: false; readonly message: string }> {\n if ((await Notification.requestPermission()) !== 'granted') {\n return { isOk: false, message: 'Your browser did not allow notifications from this site: allow them, then turn web push on again' };\n }\n const registration = await navigator.serviceWorker.register(WORKER_PATH);\n await navigator.serviceWorker.ready;\n return { isOk: true, value: await registration.pushManager.subscribe({ userVisibleOnly: true, applicationServerKey: applicationServerKeyOf(webPushKey) }) };\n}\n\n/**\n * Web push in the overview's section of wakes (wake a person, W8): the\n * person turns it on for this browser, which asks the browser's permission\n * first, sees the browsers they turned it on in, and removes one. Nothing is\n * on until they turn it on. A browser whose push service ended its\n * subscription is said to be gone.\n */\nexport function WebPushPanel({ fleetId, webPushKey, browsers }: { fleetId: string; webPushKey: string; browsers: WakeChannels['webPush']['browsers'] }) {\n const [isTaken, setIsTaken] = useState(true);\n const [ownEndpoint, setOwnEndpoint] = useState<string | undefined>();\n const [working, setWorking] = useState<string | undefined>();\n const [failure, setFailure] = useState<string | undefined>();\n const [, startTransition] = useTransition();\n\n useEffect(() => {\n if (!isPushTaken()) {\n setIsTaken(false);\n return;\n }\n void ownSubscription().then((own) => {\n setOwnEndpoint(own?.endpoint);\n });\n }, []);\n\n const turnOn = () => {\n setWorking('on');\n setFailure(undefined);\n startTransition(async () => {\n try {\n const subscription = await subscribed(webPushKey);\n if (!subscription.isOk) {\n setFailure(subscription.message);\n return;\n }\n const input = subscriptionInputOf(subscription.value.toJSON(), browserNameOf(navigator.userAgent));\n if (input === undefined) {\n setFailure('Your browser gave no push subscription: try again');\n return;\n }\n const outcome = await turnOnWebPush(fleetId, input);\n if (outcome.isOk) {\n setOwnEndpoint(input.endpoint);\n } else {\n setFailure(outcome.message);\n }\n } catch {\n setFailure('Your browser could not turn web push on: try again');\n } finally {\n setWorking(undefined);\n }\n });\n };\n\n const remove = (endpoint: string) => {\n setWorking(endpoint);\n setFailure(undefined);\n startTransition(async () => {\n if (endpoint === ownEndpoint) {\n await (await ownSubscription())?.unsubscribe();\n setOwnEndpoint(undefined);\n }\n const outcome = await turnOffWebPush(fleetId, endpoint);\n setWorking(undefined);\n if (!outcome.isOk) {\n setFailure(outcome.message);\n }\n });\n };\n\n const isOwnOn = ownEndpoint !== undefined && browsers.some(({ endpoint, isGone }) => endpoint === ownEndpoint && !isGone);\n return (\n <div className=\"grid gap-2\" data-testid=\"overview-wake-web-push\">\n {browsers.map(({ endpoint, browser, addedAt, isGone }) => (\n <div key={endpoint} className=\"flex items-center gap-3 rounded-md border border-border bg-card p-3\">\n <span className=\"flex min-w-0 flex-1 flex-col\">\n <span className=\"truncate\">\n Web push in {browser}\n {endpoint === ownEndpoint ? ' · this browser' : ''}\n </span>\n <span className=\"text-caption text-muted-foreground\">\n {isGone ? 'No longer takes wakes: its push service ended them. Turn web push on again in that browser, or remove it.' : `On since ${new Date(addedAt).toLocaleDateString()}: it tells you when something waits in this fleet, with a link here. Never what waits.`}\n </span>\n </span>\n <ActionButton data-testid=\"overview-web-push-remove\" isPending={working === endpoint} pendingLabel=\"Removing...\" disabled={working !== undefined} onClick={() => { remove(endpoint); }}>\n Remove\n </ActionButton>\n </div>\n ))}\n {!isTaken ? (\n <p className=\"text-caption text-muted-foreground\">This browser takes no web push.</p>\n ) : isOwnOn ? null : (\n <div>\n <ActionButton data-testid=\"overview-web-push-on\" variant=\"primary\" isPending={working === 'on'} pendingLabel=\"Turning on...\" disabled={working !== undefined} onClick={turnOn}>\n Turn on web push in this browser\n </ActionButton>\n </div>\n )}\n {failure === undefined ? null : <Notice message={failure} isFailure />}\n </div>\n );\n}\n"],"names":["$$RSC_SERVER_ACTION_1","$$RSC_SERVER_ACTION_3"],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[91445,a=>{"use strict";var b=a.i(87924),c=a.i(50944),d=a.i(72131),e=a.i(5050);let f=(0,e.createServerReference)("
|
|
1
|
+
module.exports=[91445,a=>{"use strict";var b=a.i(87924),c=a.i(50944),d=a.i(72131),e=a.i(5050);let f=(0,e.createServerReference)("4084bf9f28c49a623dd2f7cf9c1254bb378e2b87bf",e.callServer,void 0,e.findSourceMapURL,"decideRequest");var g=a.i(51636),h=a.i(35149);let i=["messages:send","messages:receive"],j={"messages:send":"Send","messages:receive":"Receive","fleet:read":"Read the fleet"};var k=a.i(1542),l=a.i(24229);let m="rounded-md border border-input bg-background px-2 py-1.5";function n({scope:a,isLocked:c}){return(0,b.jsxs)("label",{className:"flex items-center gap-2",children:[c?(0,b.jsx)("input",{type:"checkbox",checked:!0,disabled:!0,"aria-label":j[a]??a}):(0,b.jsx)("input",{type:"checkbox",name:"scope",value:a,"aria-label":j[a]??a}),(0,b.jsx)("span",{children:j[a]??a}),(0,b.jsx)("span",{className:"font-mono text-caption text-muted-foreground",children:a}),c?(0,b.jsx)("span",{className:"text-caption text-muted-foreground",children:"(always)"}):null]})}function o(a,b){let c=a.get(b);return"string"==typeof c?c:""}function p({request:a,heldScopes:c,owners:e,working:f,failure:j,onDecide:q}){let[r,s]=(0,d.useState)("bearer"),t=function(a){switch(a.subject.kind){case"client":return a.subject.clientName;case"server":return URL.canParse(a.subject.url)?new URL(a.subject.url).host:a.subject.url}}(a),u="server"===a.subject.kind;return(0,b.jsxs)("section",{className:"grid gap-3 rounded-lg border border-border bg-card p-6 text-card-foreground shadow-sm",children:[(0,b.jsxs)("h2",{className:"text-heading font-semibold",children:["Approve ",t]}),(0,b.jsxs)("form",{onSubmit:a=>{a.preventDefault();let b=new FormData(a.currentTarget),c=b.getAll("scope").filter(a=>"string"==typeof a);q({kind:"approve",name:o(b,"name"),ownerShipId:o(b,"ownerShipId"),scopes:c,server:u?{credentialKind:(0,g.C)(o(b,"credentialKind")),token:o(b,"token"),clientId:o(b,"clientId"),clientSecret:o(b,"clientSecret"),issuer:o(b,"issuer"),scope:o(b,"scope-requested"),concurrencyLimit:Number(o(b,"concurrencyLimit"))}:void 0})},className:"grid gap-3",children:[(0,b.jsxs)("label",{className:"grid gap-1",children:[(0,b.jsx)("span",{children:"Proxy ship's name"}),(0,b.jsx)("input",{name:"name",defaultValue:t.toLowerCase().replaceAll(/[^a-z0-9]+/g,"-").replaceAll(/^-+|-+$/g,""),required:!0,className:m})]}),(0,b.jsx)(h.f,{choices:e.isOk?e.value:[],current:null,help:"A person ship or argo. It answers for this party.",refusal:e.isOk?void 0:e.refusal}),(0,b.jsxs)("fieldset",{className:"grid gap-1",children:[(0,b.jsx)("legend",{children:"Scopes"}),i.map(a=>(0,b.jsx)(n,{scope:a,isLocked:!0},a)),c.filter(a=>!i.includes(a)).map(a=>(0,b.jsx)(n,{scope:a,isLocked:!1},a))]}),u?(0,b.jsxs)("fieldset",{className:"grid gap-2",children:[(0,b.jsx)("legend",{children:"The server's credential"}),(0,b.jsxs)("label",{className:"grid gap-1",children:[(0,b.jsx)("span",{children:"Credential"}),(0,b.jsx)("select",{name:"credentialKind",value:r,onChange:a=>{s((0,g.C)(a.target.value))},className:m,children:g.x.map(({kind:a,label:c})=>(0,b.jsx)("option",{value:a,children:c},a))})]}),"none"===r?null:"bearer"===r?(0,b.jsxs)("label",{className:"grid gap-1",children:[(0,b.jsx)("span",{children:"Bearer token"}),(0,b.jsx)("input",{type:"password",name:"token",className:m})]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("label",{className:"grid gap-1",children:[(0,b.jsx)("span",{children:"Client id"}),(0,b.jsx)("input",{name:"clientId",className:m})]}),(0,b.jsxs)("label",{className:"grid gap-1",children:[(0,b.jsx)("span",{children:"Client secret"}),(0,b.jsx)("input",{type:"password",name:"clientSecret",className:m})]}),(0,b.jsxs)("label",{className:"grid gap-1",children:[(0,b.jsx)("span",{children:"Issuer"}),(0,b.jsx)("input",{type:"url",name:"issuer",className:m})]}),(0,b.jsxs)("label",{className:"grid gap-1",children:[(0,b.jsx)("span",{children:"Scope"}),(0,b.jsx)("input",{name:"scope-requested",className:m})]})]}),(0,b.jsxs)("label",{className:"grid gap-1",children:[(0,b.jsx)("span",{children:"Calls at once"}),(0,b.jsx)("input",{type:"number",name:"concurrencyLimit",min:1,max:10,defaultValue:4,className:m})]})]}):null,void 0===j?null:(0,b.jsx)(l.f,{message:j,isFailure:!0}),(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsx)(k.f,{type:"submit",variant:"primary","data-testid":"overview-approve",isPending:"approve"===f,pendingLabel:"Approving...",disabled:void 0!==f,children:"Approve"}),(0,b.jsx)(k.f,{type:"button","data-testid":"overview-deny",isPending:"deny"===f,pendingLabel:"Denying...",disabled:void 0!==f,onClick:()=>{q({kind:"deny"})},children:"Deny"})]})]})]})}a.s(["DecisionPanel",0,function({fleetId:a,request:e,heldScopes:g,owners:h}){let i=(0,c.useRouter)(),[j,k]=(0,d.useState)(),[l,m]=(0,d.useState)(),[,n]=(0,d.useTransition)();return(0,b.jsx)(p,{request:e,heldScopes:g,owners:h,working:j,failure:l,onDecide:b=>{k(b.kind),m(void 0),n(async()=>{let c=await f({fleet:a,requestId:e.requestId,input:b});c.isOk?i.push(`/overview?${new URLSearchParams({fleet:a,decided:b.kind}).toString()}`):(k(void 0),m(c.message))})}})}],91445)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=web_features_overview_state_decision-panel_tsx_0kpd26ggtr6h_._.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../web/features/overview/state/decision-panel.tsx","../../../../../web/features/overview/hooks/data%3A20669f%20%3Ctext/javascript%3E","../../../../../web/features/overview/ui/decision-form.tsx","../../../../../web/features/overview/services/requests.ts"],"sourcesContent":["'use client';\n\nimport { useRouter } from 'next/navigation';\nimport { useState, useTransition } from 'react';\n\nimport type { OwnerChoices } from '../../forms/ui/owner-field';\nimport { decideRequest } from '../hooks/overview-actions';\nimport type { DecisionInput, ShownRequest } from '../services/requests';\nimport { DecisionForm } from '../ui/decision-form';\n\n/** Decides one request as the signed-in approver, then goes back to the Overview, which says nothing more waits here. */\nexport function DecisionPanel({ fleetId, request, heldScopes, owners }: { fleetId: string; request: ShownRequest; heldScopes: readonly string[]; owners: OwnerChoices }) {\n const router = useRouter();\n const [working, setWorking] = useState<DecisionInput['kind'] | undefined>();\n const [failure, setFailure] = useState<string | undefined>();\n const [, startTransition] = useTransition();\n const decide = (decision: DecisionInput) => {\n setWorking(decision.kind);\n setFailure(undefined);\n startTransition(async () => {\n const outcome = await decideRequest({ fleet: fleetId, requestId: request.requestId, input: decision });\n if (outcome.isOk) {\n router.push(`/overview?${new URLSearchParams({ fleet: fleetId, decided: decision.kind }).toString()}`);\n return;\n }\n setWorking(undefined);\n setFailure(outcome.message);\n });\n };\n return <DecisionForm request={request} heldScopes={heldScopes} owners={owners} working={working} failure={failure} onDecide={decide} />;\n}\n","/* __next_internal_action_entry_do_not_use__ [{\"40e3b1ad8f9fb8e176b3525a47087f36b14fbcba6e\":{\"name\":\"decideRequest\"}},\"web/features/overview/hooks/overview-actions.ts\",\"\"] */\"use turbopack: no side effects\";import{createServerReference,callServer,findSourceMapURL}from\"private-next-rsc-action-client-wrapper\";const $$RSC_SERVER_ACTION_3=/*#__PURE__*/createServerReference(\"40e3b1ad8f9fb8e176b3525a47087f36b14fbcba6e\",callServer,void 0,findSourceMapURL,\"decideRequest\");export{$$RSC_SERVER_ACTION_3 as decideRequest};","'use client';\n\nimport { useState, type SyntheticEvent } from 'react';\n\nimport { OwnerField, type OwnerChoices } from '../../forms/ui/owner-field';\nimport { EVERY_APP_SHIP_SCOPES, scopeLabel, subjectName, suggestedName, type DecisionInput, type ServerCredentialInput, type ShownRequest } from '../services/requests';\nimport { ActionButton } from './action-button';\nimport { Notice } from './notice';\n\nconst CONCURRENCY_LIMIT_DEFAULT = 4;\n\nconst FIELD = 'rounded-md border border-input bg-background px-2 py-1.5';\n\nfunction ScopeRow({ scope, isLocked }: { scope: string; isLocked: boolean }) {\n return (\n <label className=\"flex items-center gap-2\">\n {isLocked ? <input type=\"checkbox\" checked disabled aria-label={scopeLabel(scope)} /> : <input type=\"checkbox\" name=\"scope\" value={scope} aria-label={scopeLabel(scope)} />}\n <span>{scopeLabel(scope)}</span>\n <span className=\"font-mono text-caption text-muted-foreground\">{scope}</span>\n {isLocked ? <span className=\"text-caption text-muted-foreground\">(always)</span> : null}\n </label>\n );\n}\n\nfunction text(form: FormData, name: string): string {\n const value = form.get(name);\n return typeof value === 'string' ? value : '';\n}\n\nfunction serverOf(form: FormData): ServerCredentialInput {\n return {\n credentialKind: text(form, 'credentialKind') === 'clientCredentials' ? 'clientCredentials' : 'bearer',\n token: text(form, 'token'),\n clientId: text(form, 'clientId'),\n clientSecret: text(form, 'clientSecret'),\n issuer: text(form, 'issuer'),\n scope: text(form, 'scope-requested'),\n concurrencyLimit: Number(text(form, 'concurrencyLimit')),\n };\n}\n\n/**\n * The decision on a request: approving names the proxy ship and its owner,\n * and offers as scope rows only the scopes the approver holds, messages:send\n * and messages:receive locked on (0046, 0053); a server's credential too.\n * What was typed stays when the API refuses.\n */\nexport function DecisionForm({\n request,\n heldScopes,\n owners,\n working,\n failure,\n onDecide,\n}: {\n request: ShownRequest;\n heldScopes: readonly string[];\n owners: OwnerChoices;\n working: DecisionInput['kind'] | undefined;\n failure: string | undefined;\n onDecide: (decision: DecisionInput) => void;\n}) {\n const [credentialKind, setCredentialKind] = useState<ServerCredentialInput['credentialKind']>('bearer');\n const name = subjectName(request);\n const isServer = request.subject.kind === 'server';\n const approve = (event: SyntheticEvent<HTMLFormElement>) => {\n event.preventDefault();\n const form = new FormData(event.currentTarget);\n const scopes = form.getAll('scope').filter((scope) => typeof scope === 'string');\n onDecide({ kind: 'approve', name: text(form, 'name'), ownerShipId: text(form, 'ownerShipId'), scopes, server: isServer ? serverOf(form) : undefined });\n };\n return (\n <section className=\"grid gap-3 rounded-lg border border-border bg-card p-6 text-card-foreground shadow-sm\">\n <h2 className=\"text-heading font-semibold\">Approve {name}</h2>\n <form onSubmit={approve} className=\"grid gap-3\">\n <label className=\"grid gap-1\">\n <span>Proxy ship's name</span>\n <input name=\"name\" defaultValue={suggestedName(name)} required className={FIELD} />\n </label>\n <OwnerField choices={owners.isOk ? owners.value : []} current={null} help=\"A person ship or argo. It answers for this party.\" refusal={owners.isOk ? undefined : owners.refusal} />\n <fieldset className=\"grid gap-1\">\n <legend>Scopes</legend>\n {EVERY_APP_SHIP_SCOPES.map((scope) => (\n <ScopeRow key={scope} scope={scope} isLocked />\n ))}\n {heldScopes\n .filter((scope) => !EVERY_APP_SHIP_SCOPES.includes(scope))\n .map((scope) => (\n <ScopeRow key={scope} scope={scope} isLocked={false} />\n ))}\n </fieldset>\n {isServer ? (\n <fieldset className=\"grid gap-2\">\n <legend>The server's credential</legend>\n <label className=\"grid gap-1\">\n <span>Credential</span>\n <select name=\"credentialKind\" value={credentialKind} onChange={(event) => { setCredentialKind(event.target.value === 'clientCredentials' ? 'clientCredentials' : 'bearer'); }} className={FIELD}>\n <option value=\"bearer\">Bearer token</option>\n <option value=\"clientCredentials\">OAuth client credentials</option>\n </select>\n </label>\n {credentialKind === 'bearer' ? (\n <label className=\"grid gap-1\">\n <span>Bearer token</span>\n <input type=\"password\" name=\"token\" className={FIELD} />\n </label>\n ) : (\n <>\n <label className=\"grid gap-1\">\n <span>Client id</span>\n <input name=\"clientId\" className={FIELD} />\n </label>\n <label className=\"grid gap-1\">\n <span>Client secret</span>\n <input type=\"password\" name=\"clientSecret\" className={FIELD} />\n </label>\n <label className=\"grid gap-1\">\n <span>Issuer</span>\n <input type=\"url\" name=\"issuer\" className={FIELD} />\n </label>\n <label className=\"grid gap-1\">\n <span>Scope</span>\n <input name=\"scope-requested\" className={FIELD} />\n </label>\n </>\n )}\n <label className=\"grid gap-1\">\n <span>Calls at once</span>\n <input type=\"number\" name=\"concurrencyLimit\" min={1} max={10} defaultValue={CONCURRENCY_LIMIT_DEFAULT} className={FIELD} />\n </label>\n </fieldset>\n ) : null}\n {failure === undefined ? null : <Notice message={failure} isFailure />}\n <div className=\"flex gap-2\">\n <ActionButton type=\"submit\" variant=\"primary\" data-testid=\"overview-approve\" isPending={working === 'approve'} pendingLabel=\"Approving...\" disabled={working !== undefined}>\n Approve\n </ActionButton>\n <ActionButton type=\"button\" data-testid=\"overview-deny\" isPending={working === 'deny'} pendingLabel=\"Denying...\" disabled={working !== undefined} onClick={() => { onDecide({ kind: 'deny' }); }}>\n Deny\n </ActionButton>\n </div>\n </form>\n </section>\n );\n}\n","/**\n * How the Overview names and states a request for an outside party (design\n * B, Signal): pure view logic, no React and no API client.\n */\nimport type { inferRouterOutputs } from '@trpc/server';\n\nimport type { GatewayRouter } from '../../../../src/adapters/trpc/router.js';\n\n/** A request as the API shows it. */\nexport type ShownRequest = inferRouterOutputs<GatewayRouter>['requests']['toDecide'][number];\n\n/** The tones a status shows, from the design tokens; a status always has its words too. */\nexport type Tone = 'waiting' | 'active' | 'ok' | 'attention' | 'ended';\n\nexport interface Status {\n readonly tone: Tone;\n readonly label: string;\n}\n\nconst DAY_MS = 86_400_000;\n\n/** How an outside party is named before it has a proxy ship: a client by its name, a server by its host. */\nexport function subjectName(request: ShownRequest): string {\n switch (request.subject.kind) {\n case 'client':\n return request.subject.clientName;\n case 'server':\n return URL.canParse(request.subject.url) ? new URL(request.subject.url).host : request.subject.url;\n }\n}\n\nexport function subjectKind(request: ShownRequest): string {\n switch (request.subject.kind) {\n case 'client':\n return 'MCP client';\n case 'server':\n return 'MCP server';\n }\n}\n\n/** Days left of the 7 a request is kept, counted up, so its last day reads as such, in the attention tone. */\nexport function daysLeft(request: ShownRequest, now: Date): Status {\n const days = Math.ceil((Date.parse(request.expiresAt) - now.getTime()) / DAY_MS);\n return days <= 1 ? { tone: 'attention', label: 'Last day' } : { tone: 'waiting', label: `${String(days)} d left` };\n}\n\n/** A request's state as the console shows a status; one still pending shows its days left. */\nexport function requestStatus(request: ShownRequest, now: Date): Status {\n switch (request.state) {\n case 'pending':\n return daysLeft(request, now);\n case 'approving':\n return { tone: 'active', label: 'Approving' };\n case 'approved':\n return { tone: 'ok', label: 'Approved' };\n case 'denied':\n return { tone: 'ended', label: 'Denied' };\n case 'expired':\n return { tone: 'ended', label: 'Expired' };\n }\n}\n\n/** A proxy ship's name offered from the party's own: lower case letters, digits and dashes. */\nexport function suggestedName(name: string): string {\n return name\n .toLowerCase()\n .replaceAll(/[^a-z0-9]+/g, '-')\n .replaceAll(/^-+|-+$/g, '');\n}\n\n/** The scopes every app ship gets (0046): shown locked on, and always sent. */\nexport const EVERY_APP_SHIP_SCOPES: readonly string[] = ['messages:send', 'messages:receive'];\n\nconst SCOPE_LABELS: Record<string, string> = {\n 'messages:send': 'Send',\n 'messages:receive': 'Receive',\n 'fleet:read': 'Read the fleet',\n};\n\n/** A scope's plain label, shown beside the scope itself. */\nexport function scopeLabel(scope: string): string {\n return SCOPE_LABELS[scope] ?? scope;\n}\n\n/** The server's credential as the decision form takes it. */\nexport interface ServerCredentialInput {\n readonly credentialKind: 'bearer' | 'clientCredentials';\n readonly token: string;\n readonly clientId: string;\n readonly clientSecret: string;\n readonly issuer: string;\n readonly scope: string;\n readonly concurrencyLimit: number;\n}\n\nexport type DecisionInput = { readonly kind: 'deny' } | { readonly kind: 'approve'; readonly name: string; readonly ownerShipId: string; readonly scopes: readonly string[]; readonly server: ServerCredentialInput | undefined };\n"],"names":["$$RSC_SERVER_ACTION_3"],"mappings":"wDAEA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OCH+M,EAAA,EAAA,CAAA,CAAA,MAAsG,IAAMA,EAAmC,CAAA,EAAA,EAAA,iBAAb,IAAa,AAAqB,EAAC,KAAxB,wCAAqE,EAAA,UAAU,CAAC,KAAK,EAAE,EAAA,gBAAgB,CAAC,iBCIpc,IAAA,EAAA,EAAA,CAAA,CAAA,OCmEO,IAAM,EAA2C,CAAC,gBAAiB,mBAAmB,CAEvF,EAAuC,CAC3C,gBAAiB,OACjB,mBAAoB,UACpB,aAAc,gBAChB,EDvEA,IAAA,EAAA,EAAA,CAAA,CAAA,MACA,EAAA,EAAA,CAAA,CAAA,OAIA,IAAM,EAAQ,2DAEd,SAAS,EAAS,OAAE,CAAK,UAAE,CAAQ,CAAwC,EACzE,MACE,CAAA,EAAA,EAAA,IAAA,EAAC,QAAA,CAAM,UAAU,oCACd,EAAW,CAAA,EAAA,EAAA,GAAA,EAAC,QAAA,CAAM,KAAK,WAAW,OAAO,CAAA,CAAA,EAAC,QAAQ,CAAA,CAAA,EAAC,cAAY,KAAW,IAAa,CAAA,EAAA,EAAA,GAAA,EAAC,QAAA,CAAM,KAAK,WAAW,KAAK,QAAQ,MAAO,EAAO,cCiE3H,ADjEuI,CCiEtI,EAAM,EDjE2I,ECiEvI,EDhE1B,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,UCgEE,CDhEI,KAAW,IAClB,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,UAAU,wDAAgD,IAC/D,EAAW,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,UAAU,8CAAqC,aAAkB,OAGzF,CAEA,SAAS,EAAK,CAAc,CAAE,CAAY,EACxC,IAAM,EAAQ,EAAK,GAAG,CAAC,GACvB,MAAwB,UAAjB,OAAO,EAAqB,EAAQ,EAC7C,CAoBO,SAAS,EAAa,SAC3B,CAAO,CACP,YAAU,QACV,CAAM,SACN,CAAO,SACP,CAAO,CACP,UAAQ,CAQT,EACC,GAAM,CAAC,EAAgB,EAAkB,CAAG,CAAA,EAAA,EAAA,QAAA,AAAQ,EAA0C,UACxF,ECzCD,ADyCQ,SCzCC,AAAY,CAAqB,EAC/C,OAAQ,EAAQ,OAAO,CAAC,IAAI,EAC1B,IAAK,SACH,OAAO,EAAQ,OAAO,CAAC,UAAU,AACnC,KAAK,SACH,OAAO,IAAI,QAAQ,CAAC,EAAQ,OAAO,CAAC,GAAG,EAAI,IAAI,IAAI,EAAQ,OAAO,CAAC,GAAG,EAAE,IAAI,CAAG,EAAQ,OAAO,CAAC,GAAG,AACtG,CACF,EDkC2B,GACnB,EAAoC,WAAzB,EAAQ,OAAO,CAAC,IAAI,CAOrC,MACE,CAAA,EAAA,EAAA,IAAA,EAAC,UAAA,CAAQ,UAAU,kGACjB,CAAA,EAAA,EAAA,IAAA,EAAC,KAAA,CAAG,UAAU,uCAA6B,WAAS,KACpD,CAAA,EAAA,EAAA,IAAA,EAAC,OAAA,CAAK,SATM,AAAC,CASG,GARlB,EAAM,cAAc,GACpB,IAAM,EAAO,IAAI,SAAS,EAAM,aAAa,EACvC,EAAS,EAAK,MAAM,CAAC,SAAS,MAAM,CAAC,AAAC,GAA2B,UAAjB,OAAO,GAC7D,EAAS,CAAE,KAAM,UAAW,KAAM,EAAK,EAAM,QAAS,YAAa,EAAK,EAAM,sBAAgB,EAAQ,OAAQ,EAvCzG,CACL,QAsCyH,OAtCzG,AAAiC,KAA5B,qBAAM,kBAA4C,oBAAsB,SAC7F,MAAO,IAAW,CAAN,QACZ,SAAU,EAoCwH,EApC7G,CAAN,WACf,aAAc,IAAW,CAAN,eACnB,OAAQ,IAAW,CAAN,SACb,MAAO,IAAW,CAAN,kBACZ,iBAAkB,OAAO,IAAW,CAAN,mBAChC,OA+B4I,CAAU,EACtJ,EAI6B,UAAU,uBACjC,CAAA,EAAA,EAAA,IAAA,EAAC,QAAA,CAAM,UAAU,uBACf,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,UAAK,sBACN,CAAA,EAAA,EAAA,GAAA,EAAC,QAAA,CAAM,KAAK,OAAO,aCbpB,ADagD,CAAd,CCZtC,WAAW,GACX,UAAU,CAAC,cAAe,KAC1B,UAAU,CAAC,WAAY,IDUoC,QAAQ,CAAA,CAAA,EAAC,UAAW,OAE5E,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAU,CAAA,CAAC,QAAS,EAAO,IAAI,CAAG,EAAO,KAAK,CAAG,EAAE,CAAE,QAAS,KAAM,KAAK,oDAAoD,QAAS,EAAO,IAAI,CAAG,OAAY,EAAO,OAAO,GAC/K,CAAA,EAAA,EAAA,IAAA,EAAC,WAAA,CAAS,UAAU,uBAClB,CAAA,EAAA,EAAA,GAAA,EAAC,SAAA,UAAO,WACP,EAAsB,GAAG,CAAC,AAAC,GAC1B,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAqB,MAAO,EAAO,QAAQ,CAAA,CAAA,GAA7B,IAEhB,EACE,MAAM,CAAE,AAAD,GAAW,CAAC,EAAsB,QAAQ,CAAC,IAClD,GAAG,CAAC,AAAC,GACJ,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAqB,MAAO,EAAO,UAAU,GAA/B,OAGpB,EACC,CAAA,EAAA,EAAA,IAAA,EAAC,WAAA,CAAS,UAAU,uBAClB,CAAA,EAAA,EAAA,GAAA,EAAC,SAAA,UAAO,4BACR,CAAA,EAAA,EAAA,IAAA,EAAC,QAAA,CAAM,UAAU,uBACf,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,UAAK,eACN,CAAA,EAAA,EAAA,IAAA,EAAC,SAAA,CAAO,KAAK,iBAAiB,MAAO,EAAgB,SAAU,AAAC,IAAY,EAAyC,sBAAvB,EAAM,MAAM,CAAC,KAAK,CAA2B,oBAAsB,SAAW,EAAG,UAAW,YACxL,CAAA,EAAA,EAAA,GAAA,EAAC,SAAA,CAAO,MAAM,kBAAS,iBACvB,CAAA,EAAA,EAAA,GAAA,EAAC,SAAA,CAAO,MAAM,6BAAoB,mCAGlB,WAAnB,EACC,CAAA,EAAA,EAAA,IAAA,EAAC,QAAA,CAAM,UAAU,uBACf,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,UAAK,iBACN,CAAA,EAAA,EAAA,GAAA,EAAC,QAAA,CAAM,KAAK,WAAW,KAAK,QAAQ,UAAW,OAGjD,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,QAAA,CAAA,WACE,CAAA,EAAA,EAAA,IAAA,EAAC,QAAA,CAAM,UAAU,uBACf,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,UAAK,cACN,CAAA,EAAA,EAAA,GAAA,EAAC,QAAA,CAAM,KAAK,WAAW,UAAW,OAEpC,CAAA,EAAA,EAAA,IAAA,EAAC,QAAA,CAAM,UAAU,uBACf,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,UAAK,kBACN,CAAA,EAAA,EAAA,GAAA,EAAC,QAAA,CAAM,KAAK,WAAW,KAAK,eAAe,UAAW,OAExD,CAAA,EAAA,EAAA,IAAA,EAAC,QAAA,CAAM,UAAU,uBACf,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,UAAK,WACN,CAAA,EAAA,EAAA,GAAA,EAAC,QAAA,CAAM,KAAK,MAAM,KAAK,SAAS,UAAW,OAE7C,CAAA,EAAA,EAAA,IAAA,EAAC,QAAA,CAAM,UAAU,uBACf,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,UAAK,UACN,CAAA,EAAA,EAAA,GAAA,EAAC,QAAA,CAAM,KAAK,kBAAkB,UAAW,UAI/C,CAAA,EAAA,EAAA,IAAA,EAAC,QAAA,CAAM,UAAU,uBACf,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,UAAK,kBACN,CAAA,EAAA,EAAA,GAAA,EAAC,QAAA,CAAM,KAAK,SAAS,KAAK,mBAAmB,IAAK,EAAG,IAAK,GAAI,aAvH1C,CAuHwD,CAA2B,UAAW,UAGpH,UACS,IAAZ,EAAwB,KAAO,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAM,CAAA,CAAC,QAAS,EAAS,SAAS,CAAA,CAAA,IACnE,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAI,UAAU,uBACb,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAY,CAAA,CAAC,KAAK,SAAS,QAAQ,UAAU,cAAY,mBAAmB,UAAuB,YAAZ,EAAuB,aAAa,eAAe,SAAU,KAAY,eAAW,YAG5K,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAY,CAAA,CAAC,KAAK,SAAS,cAAY,gBAAgB,UAAuB,SAAZ,EAAoB,aAAa,aAAa,SAAU,AAAY,WAAW,QAAS,KAAQ,EAAS,CAAE,KAAM,MAAO,EAAI,WAAG,iBAO5M,wBFrIO,SAAS,AAAc,SAAE,CAAO,SAAE,CAAO,YAAE,CAAU,QAAE,CAAM,CAAmG,EACrK,IAAM,EAAS,CAAA,EAAA,EAAA,SAAA,AAAS,IAClB,CAAC,EAAS,EAAW,CAAG,CAAA,EAAA,EAAA,QAAA,AAAQ,IAChC,CAAC,EAAS,EAAW,CAAG,CAAA,EAAA,EAAA,QAAA,AAAQ,IAChC,EAAG,EAAgB,CAAG,CAAA,EAAA,EAAA,aAAA,AAAa,IAczC,MAAO,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAa,QAAS,EAAS,WAAY,EAAY,OAAQ,EAAQ,QAAS,EAAS,QAAS,EAAS,SAbpG,AAAC,CAa6G,GAZ3H,EAAW,EAAS,IAAI,EACxB,OAAW,GACX,EAAgB,UACd,IAAM,EAAU,MAAM,EAAc,CAAE,MAAO,EAAS,UAAW,EAAQ,SAAS,CAAE,MAAO,CAAS,EACpG,CAAI,EAAQ,IAAI,CACd,CADgB,CACT,IAAI,CAAC,CAAC,UAAU,EAAE,IAAI,gBAAgB,CAAE,MAAO,EAAS,QAAS,EAAS,IAAI,AAAC,GAAG,QAAQ,GAAA,CAAI,GAGvG,OAAW,GACX,EAAW,EAAQ,OAAO,EAC5B,EACF,GAEF"}
|
|
1
|
+
{"version":3,"sources":["../../../../../web/features/overview/state/decision-panel.tsx","../../../../../web/features/overview/hooks/data%3A7f2b83%20%3Ctext/javascript%3E","../../../../../web/features/overview/ui/decision-form.tsx","../../../../../web/features/overview/services/requests.ts"],"sourcesContent":["'use client';\n\nimport { useRouter } from 'next/navigation';\nimport { useState, useTransition } from 'react';\n\nimport type { OwnerChoices } from '../../forms/ui/owner-field';\nimport { decideRequest } from '../hooks/overview-actions';\nimport type { DecisionInput, ShownRequest } from '../services/requests';\nimport { DecisionForm } from '../ui/decision-form';\n\n/** Decides one request as the signed-in approver, then goes back to the Overview, which says nothing more waits here. */\nexport function DecisionPanel({ fleetId, request, heldScopes, owners }: { fleetId: string; request: ShownRequest; heldScopes: readonly string[]; owners: OwnerChoices }) {\n const router = useRouter();\n const [working, setWorking] = useState<DecisionInput['kind'] | undefined>();\n const [failure, setFailure] = useState<string | undefined>();\n const [, startTransition] = useTransition();\n const decide = (decision: DecisionInput) => {\n setWorking(decision.kind);\n setFailure(undefined);\n startTransition(async () => {\n const outcome = await decideRequest({ fleet: fleetId, requestId: request.requestId, input: decision });\n if (outcome.isOk) {\n router.push(`/overview?${new URLSearchParams({ fleet: fleetId, decided: decision.kind }).toString()}`);\n return;\n }\n setWorking(undefined);\n setFailure(outcome.message);\n });\n };\n return <DecisionForm request={request} heldScopes={heldScopes} owners={owners} working={working} failure={failure} onDecide={decide} />;\n}\n","/* __next_internal_action_entry_do_not_use__ [{\"4084bf9f28c49a623dd2f7cf9c1254bb378e2b87bf\":{\"name\":\"decideRequest\"}},\"web/features/overview/hooks/overview-actions.ts\",\"\"] */\"use turbopack: no side effects\";import{createServerReference,callServer,findSourceMapURL}from\"private-next-rsc-action-client-wrapper\";const $$RSC_SERVER_ACTION_6=/*#__PURE__*/createServerReference(\"4084bf9f28c49a623dd2f7cf9c1254bb378e2b87bf\",callServer,void 0,findSourceMapURL,\"decideRequest\");export{$$RSC_SERVER_ACTION_6 as decideRequest};","'use client';\n\nimport { useState, type SyntheticEvent } from 'react';\n\nimport { CREDENTIAL_KINDS, credentialKindOf } from '../../forms/server-credential';\nimport { OwnerField, type OwnerChoices } from '../../forms/ui/owner-field';\nimport { EVERY_APP_SHIP_SCOPES, scopeLabel, subjectName, suggestedName, type DecisionInput, type ServerCredentialInput, type ShownRequest } from '../services/requests';\nimport { ActionButton } from './action-button';\nimport { Notice } from './notice';\n\nconst CONCURRENCY_LIMIT_DEFAULT = 4;\n\nconst FIELD = 'rounded-md border border-input bg-background px-2 py-1.5';\n\nfunction ScopeRow({ scope, isLocked }: { scope: string; isLocked: boolean }) {\n return (\n <label className=\"flex items-center gap-2\">\n {isLocked ? <input type=\"checkbox\" checked disabled aria-label={scopeLabel(scope)} /> : <input type=\"checkbox\" name=\"scope\" value={scope} aria-label={scopeLabel(scope)} />}\n <span>{scopeLabel(scope)}</span>\n <span className=\"font-mono text-caption text-muted-foreground\">{scope}</span>\n {isLocked ? <span className=\"text-caption text-muted-foreground\">(always)</span> : null}\n </label>\n );\n}\n\nfunction text(form: FormData, name: string): string {\n const value = form.get(name);\n return typeof value === 'string' ? value : '';\n}\n\nfunction serverOf(form: FormData): ServerCredentialInput {\n return {\n credentialKind: credentialKindOf(text(form, 'credentialKind')),\n token: text(form, 'token'),\n clientId: text(form, 'clientId'),\n clientSecret: text(form, 'clientSecret'),\n issuer: text(form, 'issuer'),\n scope: text(form, 'scope-requested'),\n concurrencyLimit: Number(text(form, 'concurrencyLimit')),\n };\n}\n\n/**\n * The decision on a request: approving names the proxy ship and its owner,\n * and offers as scope rows only the scopes the approver holds, messages:send\n * and messages:receive locked on (0046, 0053); a server's credential too.\n * What was typed stays when the API refuses.\n */\nexport function DecisionForm({\n request,\n heldScopes,\n owners,\n working,\n failure,\n onDecide,\n}: {\n request: ShownRequest;\n heldScopes: readonly string[];\n owners: OwnerChoices;\n working: DecisionInput['kind'] | undefined;\n failure: string | undefined;\n onDecide: (decision: DecisionInput) => void;\n}) {\n const [credentialKind, setCredentialKind] = useState<ServerCredentialInput['credentialKind']>('bearer');\n const name = subjectName(request);\n const isServer = request.subject.kind === 'server';\n const approve = (event: SyntheticEvent<HTMLFormElement>) => {\n event.preventDefault();\n const form = new FormData(event.currentTarget);\n const scopes = form.getAll('scope').filter((scope) => typeof scope === 'string');\n onDecide({ kind: 'approve', name: text(form, 'name'), ownerShipId: text(form, 'ownerShipId'), scopes, server: isServer ? serverOf(form) : undefined });\n };\n return (\n <section className=\"grid gap-3 rounded-lg border border-border bg-card p-6 text-card-foreground shadow-sm\">\n <h2 className=\"text-heading font-semibold\">Approve {name}</h2>\n <form onSubmit={approve} className=\"grid gap-3\">\n <label className=\"grid gap-1\">\n <span>Proxy ship's name</span>\n <input name=\"name\" defaultValue={suggestedName(name)} required className={FIELD} />\n </label>\n <OwnerField choices={owners.isOk ? owners.value : []} current={null} help=\"A person ship or argo. It answers for this party.\" refusal={owners.isOk ? undefined : owners.refusal} />\n <fieldset className=\"grid gap-1\">\n <legend>Scopes</legend>\n {EVERY_APP_SHIP_SCOPES.map((scope) => (\n <ScopeRow key={scope} scope={scope} isLocked />\n ))}\n {heldScopes\n .filter((scope) => !EVERY_APP_SHIP_SCOPES.includes(scope))\n .map((scope) => (\n <ScopeRow key={scope} scope={scope} isLocked={false} />\n ))}\n </fieldset>\n {isServer ? (\n <fieldset className=\"grid gap-2\">\n <legend>The server's credential</legend>\n <label className=\"grid gap-1\">\n <span>Credential</span>\n <select name=\"credentialKind\" value={credentialKind} onChange={(event) => { setCredentialKind(credentialKindOf(event.target.value)); }} className={FIELD}>\n {CREDENTIAL_KINDS.map(({ kind, label }) => (\n <option key={kind} value={kind}>\n {label}\n </option>\n ))}\n </select>\n </label>\n {credentialKind === 'none' ? null : credentialKind === 'bearer' ? (\n <label className=\"grid gap-1\">\n <span>Bearer token</span>\n <input type=\"password\" name=\"token\" className={FIELD} />\n </label>\n ) : (\n <>\n <label className=\"grid gap-1\">\n <span>Client id</span>\n <input name=\"clientId\" className={FIELD} />\n </label>\n <label className=\"grid gap-1\">\n <span>Client secret</span>\n <input type=\"password\" name=\"clientSecret\" className={FIELD} />\n </label>\n <label className=\"grid gap-1\">\n <span>Issuer</span>\n <input type=\"url\" name=\"issuer\" className={FIELD} />\n </label>\n <label className=\"grid gap-1\">\n <span>Scope</span>\n <input name=\"scope-requested\" className={FIELD} />\n </label>\n </>\n )}\n <label className=\"grid gap-1\">\n <span>Calls at once</span>\n <input type=\"number\" name=\"concurrencyLimit\" min={1} max={10} defaultValue={CONCURRENCY_LIMIT_DEFAULT} className={FIELD} />\n </label>\n </fieldset>\n ) : null}\n {failure === undefined ? null : <Notice message={failure} isFailure />}\n <div className=\"flex gap-2\">\n <ActionButton type=\"submit\" variant=\"primary\" data-testid=\"overview-approve\" isPending={working === 'approve'} pendingLabel=\"Approving...\" disabled={working !== undefined}>\n Approve\n </ActionButton>\n <ActionButton type=\"button\" data-testid=\"overview-deny\" isPending={working === 'deny'} pendingLabel=\"Denying...\" disabled={working !== undefined} onClick={() => { onDecide({ kind: 'deny' }); }}>\n Deny\n </ActionButton>\n </div>\n </form>\n </section>\n );\n}\n","/**\n * How the Overview names and states a request for an outside party (design\n * B, Signal): pure view logic, no React and no API client.\n */\nimport type { inferRouterOutputs } from '@trpc/server';\n\nimport type { GatewayRouter } from '../../../../src/adapters/trpc/router.js';\nimport type { CredentialKind } from '../../forms/server-credential';\n\n/** A request as the API shows it. */\nexport type ShownRequest = inferRouterOutputs<GatewayRouter>['requests']['toDecide'][number];\n\n/** The tones a status shows, from the design tokens; a status always has its words too. */\nexport type Tone = 'waiting' | 'active' | 'ok' | 'attention' | 'ended';\n\nexport interface Status {\n readonly tone: Tone;\n readonly label: string;\n}\n\nconst DAY_MS = 86_400_000;\n\n/** How an outside party is named before it has a proxy ship: a client by its name, a server by its host. */\nexport function subjectName(request: ShownRequest): string {\n switch (request.subject.kind) {\n case 'client':\n return request.subject.clientName;\n case 'server':\n return URL.canParse(request.subject.url) ? new URL(request.subject.url).host : request.subject.url;\n }\n}\n\nexport function subjectKind(request: ShownRequest): string {\n switch (request.subject.kind) {\n case 'client':\n return 'MCP client';\n case 'server':\n return 'MCP server';\n }\n}\n\n/** Days left of the 7 a request is kept, counted up, so its last day reads as such, in the attention tone. */\nexport function daysLeft(request: ShownRequest, now: Date): Status {\n const days = Math.ceil((Date.parse(request.expiresAt) - now.getTime()) / DAY_MS);\n return days <= 1 ? { tone: 'attention', label: 'Last day' } : { tone: 'waiting', label: `${String(days)} d left` };\n}\n\n/** A request's state as the console shows a status; one still pending shows its days left. */\nexport function requestStatus(request: ShownRequest, now: Date): Status {\n switch (request.state) {\n case 'pending':\n return daysLeft(request, now);\n case 'approving':\n return { tone: 'active', label: 'Approving' };\n case 'approved':\n return { tone: 'ok', label: 'Approved' };\n case 'denied':\n return { tone: 'ended', label: 'Denied' };\n case 'expired':\n return { tone: 'ended', label: 'Expired' };\n }\n}\n\n/** A proxy ship's name offered from the party's own: lower case letters, digits and dashes. */\nexport function suggestedName(name: string): string {\n return name\n .toLowerCase()\n .replaceAll(/[^a-z0-9]+/g, '-')\n .replaceAll(/^-+|-+$/g, '');\n}\n\n/** The scopes every app ship gets (0046): shown locked on, and always sent. */\nexport const EVERY_APP_SHIP_SCOPES: readonly string[] = ['messages:send', 'messages:receive'];\n\nconst SCOPE_LABELS: Record<string, string> = {\n 'messages:send': 'Send',\n 'messages:receive': 'Receive',\n 'fleet:read': 'Read the fleet',\n};\n\n/** A scope's plain label, shown beside the scope itself. */\nexport function scopeLabel(scope: string): string {\n return SCOPE_LABELS[scope] ?? scope;\n}\n\n/** The server's credential as the decision form takes it. */\nexport interface ServerCredentialInput {\n readonly credentialKind: CredentialKind;\n readonly token: string;\n readonly clientId: string;\n readonly clientSecret: string;\n readonly issuer: string;\n readonly scope: string;\n readonly concurrencyLimit: number;\n}\n\nexport type DecisionInput = { readonly kind: 'deny' } | { readonly kind: 'approve'; readonly name: string; readonly ownerShipId: string; readonly scopes: readonly string[]; readonly server: ServerCredentialInput | undefined };\n"],"names":["$$RSC_SERVER_ACTION_6"],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[5901,33621,a=>{"use strict";var b=a.i(37936),c=a.i(29517),d=a.i(18558),e=a.i(66283),f=a.i(1324);let
|
|
1
|
+
module.exports=[5901,33621,a=>{"use strict";var b=a.i(37936),c=a.i(29517),d=a.i(18558),e=a.i(66283),f=a.i(1324),g=a.i(29493);let h="/parties";async function i(a,b){let c,g=await (0,e.z)((0,f.v)(a,f.H));try{c=await b(g)}catch(a){return{kind:"refused",message:(0,e.s)(a)}}return(0,d.revalidatePath)(h),{kind:"done",message:c}}async function j(a,b){let d=(0,c.f)("ship").safeParse((0,f.v)(b,"ownerShipId"));if(!d.success)return{kind:"refused",message:"The owner's ship id is not a ship id (shp_...)"};let e=(0,f.v)(b,"scope");return i(b,async a=>{let c=await a.parties.approve.mutate({requestId:(0,f.v)(b,"requestId"),name:(0,f.v)(b,"name"),url:(0,f.v)(b,"url"),credential:(0,g.y)({credentialKind:(0,f.v)(b,"credentialKind"),token:(0,f.v)(b,"token"),clientId:(0,f.v)(b,"clientId"),clientSecret:(0,f.v)(b,"clientSecret"),issuer:(0,f.v)(b,"issuer"),scope:e}),ownerShipId:d.data,concurrencyLimit:Number((0,f.v)(b,"concurrencyLimit"))});return`${c.name} is approved`})}async function k(a,b){return i(b,async a=>{let c=await a.parties.crew.mutate({name:(0,f.v)(b,"name"),secret:(0,f.v)(b,"secret")});return`${c.name} is crewed`})}async function l(a,b){let c=(0,f.v)(b,"name");return i(b,async a=>(await a.parties.state.mutate({name:c}),`${c}'s tools are stated`))}async function m(a,b){let c=(0,f.v)(b,"tool");return i(b,async a=>(await a.parties.markTool.mutate({name:(0,f.v)(b,"name"),tool:c,isRepeatable:"on"===(0,f.v)(b,"isRepeatable")}),`${c} is marked`))}a.s(["f",0,h],33621),(0,a.i(13095).ensureServerEntryExports)([j,k,l,m]),(0,b.registerServerReference)(j,"60e81a7b1b2cd680f1710af09041d199e9a79ab8bf",null),(0,b.registerServerReference)(k,"60dd1d604cf53ed6f52f9c464309f81ffdd0971376",null),(0,b.registerServerReference)(l,"602f2cefa05ec94f97e9b8f00a1f806044e176ce66",null),(0,b.registerServerReference)(m,"6007d842b0bc2281f78959ca8e2698fc4df0047195",null),a.s(["L",0,j,"P",0,k,"p",0,m,"g",0,l],5901)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=web_features_parties_actions_ts_0r-tbfsig2ty-._.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../web/features/parties/actions.ts","../../../../../web/features/parties/paths.ts"],"sourcesContent":["'use server';\n\n/**\n * The Parties page's forms, for an account holding fleet:manage: approving\n * an outside MCP server, handing over a secret, stating a party and marking\n * its tools. Each asks the API as the account, which checks its scopes.\n */\nimport { idSchema } from '@aeolus-fleet/common';\nimport { revalidatePath } from 'next/cache';\n\nimport { refusalMessageOf, requestApi } from '../../lib/gateway-api/page-api';\nimport type { GatewayApi } from '../../lib/gateway-api/gateway-api';\nimport { FLEET_FIELD, fieldOf, type FormState } from '../forms/form-state';\nimport { PARTIES_PATH } from './paths';\n\n/** Calls the API as the account in the form's fleet: done says what changed, a refusal why. */\nasync function asAccount(form: FormData, call: (api: GatewayApi) => Promise<string>): Promise<FormState> {\n const api = await requestApi(fieldOf(form, FLEET_FIELD));\n let message: string;\n try {\n message = await call(api);\n } catch (error) {\n return { kind: 'refused', message: refusalMessageOf(error) };\n }\n revalidatePath(PARTIES_PATH);\n return { kind: 'done', message };\n}\n\nexport async function approveParty(_previous: FormState, form: FormData): Promise<FormState> {\n const ownerShipId = idSchema('ship').safeParse(fieldOf(form, 'ownerShipId'));\n if (!ownerShipId.success) {\n return { kind: 'refused', message: \"The owner's ship id is not a ship id (shp_...)\" };\n }\n const scope = fieldOf(form, 'scope');\n return asAccount(form, async (api) => {\n const approved = await api.parties.approve.mutate({\n requestId: fieldOf(form, 'requestId'),\n name: fieldOf(form, 'name'),\n url: fieldOf(form, 'url'),\n credential
|
|
1
|
+
{"version":3,"sources":["../../../../../web/features/parties/actions.ts","../../../../../web/features/parties/paths.ts"],"sourcesContent":["'use server';\n\n/**\n * The Parties page's forms, for an account holding fleet:manage: approving\n * an outside MCP server, handing over a secret, stating a party and marking\n * its tools. Each asks the API as the account, which checks its scopes.\n */\nimport { idSchema } from '@aeolus-fleet/common';\nimport { revalidatePath } from 'next/cache';\n\nimport { refusalMessageOf, requestApi } from '../../lib/gateway-api/page-api';\nimport type { GatewayApi } from '../../lib/gateway-api/gateway-api';\nimport { FLEET_FIELD, fieldOf, type FormState } from '../forms/form-state';\nimport { serverCredentialOf } from '../forms/server-credential';\nimport { PARTIES_PATH } from './paths';\n\n/** Calls the API as the account in the form's fleet: done says what changed, a refusal why. */\nasync function asAccount(form: FormData, call: (api: GatewayApi) => Promise<string>): Promise<FormState> {\n const api = await requestApi(fieldOf(form, FLEET_FIELD));\n let message: string;\n try {\n message = await call(api);\n } catch (error) {\n return { kind: 'refused', message: refusalMessageOf(error) };\n }\n revalidatePath(PARTIES_PATH);\n return { kind: 'done', message };\n}\n\nexport async function approveParty(_previous: FormState, form: FormData): Promise<FormState> {\n const ownerShipId = idSchema('ship').safeParse(fieldOf(form, 'ownerShipId'));\n if (!ownerShipId.success) {\n return { kind: 'refused', message: \"The owner's ship id is not a ship id (shp_...)\" };\n }\n const scope = fieldOf(form, 'scope');\n return asAccount(form, async (api) => {\n const approved = await api.parties.approve.mutate({\n requestId: fieldOf(form, 'requestId'),\n name: fieldOf(form, 'name'),\n url: fieldOf(form, 'url'),\n credential: serverCredentialOf({ credentialKind: fieldOf(form, 'credentialKind'), token: fieldOf(form, 'token'), clientId: fieldOf(form, 'clientId'), clientSecret: fieldOf(form, 'clientSecret'), issuer: fieldOf(form, 'issuer'), scope }),\n ownerShipId: ownerShipId.data,\n concurrencyLimit: Number(fieldOf(form, 'concurrencyLimit')),\n });\n return `${approved.name} is approved`;\n });\n}\n\nexport async function crewParty(_previous: FormState, form: FormData): Promise<FormState> {\n return asAccount(form, async (api) => {\n const crewed = await api.parties.crew.mutate({ name: fieldOf(form, 'name'), secret: fieldOf(form, 'secret') });\n return `${crewed.name} is crewed`;\n });\n}\n\nexport async function stateParty(_previous: FormState, form: FormData): Promise<FormState> {\n const name = fieldOf(form, 'name');\n return asAccount(form, async (api) => {\n await api.parties.state.mutate({ name });\n return `${name}'s tools are stated`;\n });\n}\n\nexport async function markTool(_previous: FormState, form: FormData): Promise<FormState> {\n const tool = fieldOf(form, 'tool');\n return asAccount(form, async (api) => {\n await api.parties.markTool.mutate({ name: fieldOf(form, 'name'), tool, isRepeatable: fieldOf(form, 'isRepeatable') === 'on' });\n return `${tool} is marked`;\n });\n}\n","/** The Parties page. */\nexport const PARTIES_PATH = '/parties';\n"],"names":["PARTIES_PATH"],"mappings":"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"}
|
|
@@ -7,9 +7,9 @@ globalThis.__BUILD_MANIFEST = {
|
|
|
7
7
|
"static/chunks/0cz1d0mv5g_q7.js"
|
|
8
8
|
],
|
|
9
9
|
"lowPriorityFiles": [
|
|
10
|
-
"static/
|
|
11
|
-
"static/
|
|
12
|
-
"static/
|
|
10
|
+
"static/Az1CqrzgGHMZVR4nw9717/_buildManifest.js",
|
|
11
|
+
"static/Az1CqrzgGHMZVR4nw9717/_ssgManifest.js",
|
|
12
|
+
"static/Az1CqrzgGHMZVR4nw9717/_clientMiddlewareManifest.js"
|
|
13
13
|
],
|
|
14
14
|
"rootMainFiles": [
|
|
15
15
|
"static/chunks/2hz8yws_wswjz.js",
|
|
@@ -45,7 +45,7 @@ globalThis.__BUILD_MANIFEST = {
|
|
|
45
45
|
94553
|
|
46
46
|
]
|
|
47
47
|
},
|
|
48
|
-
"/
|
|
48
|
+
"/(console)/outside-parties/page": {
|
|
49
49
|
"otherChunks": [
|
|
50
50
|
"static/chunks/2hz8yws_wswjz.js",
|
|
51
51
|
"static/chunks/3knqujtrdi225.js",
|
|
@@ -57,7 +57,7 @@ globalThis.__BUILD_MANIFEST = {
|
|
|
57
57
|
94553
|
|
58
58
|
]
|
|
59
59
|
},
|
|
60
|
-
"/
|
|
60
|
+
"/(console)/outside-parties/[name]/page": {
|
|
61
61
|
"otherChunks": [
|
|
62
62
|
"static/chunks/2hz8yws_wswjz.js",
|
|
63
63
|
"static/chunks/3knqujtrdi225.js",
|
|
@@ -69,7 +69,19 @@ globalThis.__BUILD_MANIFEST = {
|
|
|
69
69
|
94553
|
|
70
70
|
]
|
|
71
71
|
},
|
|
72
|
-
"/
|
|
72
|
+
"/(console)/outside-parties/[name]/change/page": {
|
|
73
|
+
"otherChunks": [
|
|
74
|
+
"static/chunks/2hz8yws_wswjz.js",
|
|
75
|
+
"static/chunks/3knqujtrdi225.js",
|
|
76
|
+
"static/chunks/0lzisjsmhlhjf.js",
|
|
77
|
+
"static/chunks/41rcj9-d-7p_4.js",
|
|
78
|
+
"static/chunks/2ewacyhp73due.js"
|
|
79
|
+
],
|
|
80
|
+
"runtimeModuleIds": [
|
|
81
|
+
94553
|
|
82
|
+
]
|
|
83
|
+
},
|
|
84
|
+
"/(console)/outside-parties/[name]/retire/page": {
|
|
73
85
|
"otherChunks": [
|
|
74
86
|
"static/chunks/2hz8yws_wswjz.js",
|
|
75
87
|
"static/chunks/3knqujtrdi225.js",
|
|
@@ -81,7 +93,7 @@ globalThis.__BUILD_MANIFEST = {
|
|
|
81
93
|
94553
|
|
82
94
|
]
|
|
83
95
|
},
|
|
84
|
-
"/outside-parties/page": {
|
|
96
|
+
"/(console)/outside-parties/add/page": {
|
|
85
97
|
"otherChunks": [
|
|
86
98
|
"static/chunks/2hz8yws_wswjz.js",
|
|
87
99
|
"static/chunks/3knqujtrdi225.js",
|
|
@@ -93,7 +105,7 @@ globalThis.__BUILD_MANIFEST = {
|
|
|
93
105
|
94553
|
|
94
106
|
]
|
|
95
107
|
},
|
|
96
|
-
"/outside-parties/
|
|
108
|
+
"/(console)/outside-parties/add-a2a-agent/page": {
|
|
97
109
|
"otherChunks": [
|
|
98
110
|
"static/chunks/2hz8yws_wswjz.js",
|
|
99
111
|
"static/chunks/3knqujtrdi225.js",
|
|
@@ -105,7 +117,7 @@ globalThis.__BUILD_MANIFEST = {
|
|
|
105
117
|
94553
|
|
106
118
|
]
|
|
107
119
|
},
|
|
108
|
-
"/outside-parties/
|
|
120
|
+
"/(console)/outside-parties/add-a2a-client/page": {
|
|
109
121
|
"otherChunks": [
|
|
110
122
|
"static/chunks/2hz8yws_wswjz.js",
|
|
111
123
|
"static/chunks/3knqujtrdi225.js",
|
|
@@ -117,7 +129,7 @@ globalThis.__BUILD_MANIFEST = {
|
|
|
117
129
|
94553
|
|
118
130
|
]
|
|
119
131
|
},
|
|
120
|
-
"/
|
|
132
|
+
"/(console)/overview/page": {
|
|
121
133
|
"otherChunks": [
|
|
122
134
|
"static/chunks/2hz8yws_wswjz.js",
|
|
123
135
|
"static/chunks/3knqujtrdi225.js",
|
|
@@ -129,7 +141,7 @@ globalThis.__BUILD_MANIFEST = {
|
|
|
129
141
|
94553
|
|
130
142
|
]
|
|
131
143
|
},
|
|
132
|
-
"/
|
|
144
|
+
"/(console)/overview/requests/[requestId]/page": {
|
|
133
145
|
"otherChunks": [
|
|
134
146
|
"static/chunks/2hz8yws_wswjz.js",
|
|
135
147
|
"static/chunks/3knqujtrdi225.js",
|
|
@@ -141,7 +153,7 @@ globalThis.__BUILD_MANIFEST = {
|
|
|
141
153
|
94553
|
|
142
154
|
]
|
|
143
155
|
},
|
|
144
|
-
"/
|
|
156
|
+
"/(console)/parties/page": {
|
|
145
157
|
"otherChunks": [
|
|
146
158
|
"static/chunks/2hz8yws_wswjz.js",
|
|
147
159
|
"static/chunks/3knqujtrdi225.js",
|
|
@@ -153,7 +165,7 @@ globalThis.__BUILD_MANIFEST = {
|
|
|
153
165
|
94553
|
|
154
166
|
]
|
|
155
167
|
},
|
|
156
|
-
"/
|
|
168
|
+
"/(console)/sign-in/failed/page": {
|
|
157
169
|
"otherChunks": [
|
|
158
170
|
"static/chunks/2hz8yws_wswjz.js",
|
|
159
171
|
"static/chunks/3knqujtrdi225.js",
|
|
@@ -165,7 +177,19 @@ globalThis.__BUILD_MANIFEST = {
|
|
|
165
177
|
94553
|
|
166
178
|
]
|
|
167
179
|
},
|
|
168
|
-
"/
|
|
180
|
+
"/authorize/failed/page": {
|
|
181
|
+
"otherChunks": [
|
|
182
|
+
"static/chunks/2hz8yws_wswjz.js",
|
|
183
|
+
"static/chunks/3knqujtrdi225.js",
|
|
184
|
+
"static/chunks/0lzisjsmhlhjf.js",
|
|
185
|
+
"static/chunks/41rcj9-d-7p_4.js",
|
|
186
|
+
"static/chunks/2ewacyhp73due.js"
|
|
187
|
+
],
|
|
188
|
+
"runtimeModuleIds": [
|
|
189
|
+
94553
|
|
190
|
+
]
|
|
191
|
+
},
|
|
192
|
+
"/authorize/pick/page": {
|
|
169
193
|
"otherChunks": [
|
|
170
194
|
"static/chunks/2hz8yws_wswjz.js",
|
|
171
195
|
"static/chunks/3knqujtrdi225.js",
|
|
@@ -177,7 +201,7 @@ globalThis.__BUILD_MANIFEST = {
|
|
|
177
201
|
94553
|
|
178
202
|
]
|
|
179
203
|
},
|
|
180
|
-
"/
|
|
204
|
+
"/authorize/waiting/approval/page": {
|
|
181
205
|
"otherChunks": [
|
|
182
206
|
"static/chunks/2hz8yws_wswjz.js",
|
|
183
207
|
"static/chunks/3knqujtrdi225.js",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
self.__NEXT_FONT_MANIFEST="{\n \"app\": {\n \"[project]/web/app/
|
|
1
|
+
self.__NEXT_FONT_MANIFEST="{\n \"app\": {\n \"[project]/web/app/(console)/outside-parties/[name]/change/page\": [\n \"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2\",\n \"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2\"\n ],\n \"[project]/web/app/(console)/outside-parties/[name]/page\": [\n \"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2\",\n \"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2\"\n ],\n \"[project]/web/app/(console)/outside-parties/[name]/retire/page\": [\n \"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2\",\n \"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2\"\n ],\n \"[project]/web/app/(console)/outside-parties/add-a2a-agent/page\": [\n \"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2\",\n \"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2\"\n ],\n \"[project]/web/app/(console)/outside-parties/add-a2a-client/page\": [\n \"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2\",\n \"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2\"\n ],\n \"[project]/web/app/(console)/outside-parties/add/page\": [\n \"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2\",\n \"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2\"\n ],\n \"[project]/web/app/(console)/outside-parties/page\": [\n \"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2\",\n \"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2\"\n ],\n \"[project]/web/app/(console)/overview/page\": [\n \"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2\",\n \"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2\"\n ],\n \"[project]/web/app/(console)/overview/requests/[requestId]/page\": [\n \"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2\",\n \"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2\"\n ],\n \"[project]/web/app/(console)/parties/page\": [\n \"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2\",\n \"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2\"\n ],\n \"[project]/web/app/(console)/sign-in/failed/page\": [\n \"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2\",\n \"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2\"\n ],\n \"[project]/web/app/_not-found/page\": [\n \"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2\",\n \"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2\"\n ],\n \"[project]/web/app/authorize/failed/page\": [\n \"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2\",\n \"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2\"\n ],\n \"[project]/web/app/authorize/pick/page\": [\n \"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2\",\n \"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2\"\n ],\n \"[project]/web/app/authorize/waiting/approval/page\": [\n \"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2\",\n \"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2\"\n ]\n },\n \"appUsingSizeAdjust\": true,\n \"pages\": {},\n \"pagesUsingSizeAdjust\": false\n}"
|
|
@@ -1,54 +1,62 @@
|
|
|
1
1
|
{
|
|
2
2
|
"app": {
|
|
3
|
-
"[project]/web/app/
|
|
3
|
+
"[project]/web/app/(console)/outside-parties/[name]/change/page": [
|
|
4
4
|
"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2",
|
|
5
5
|
"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2"
|
|
6
6
|
],
|
|
7
|
-
"[project]/web/app/
|
|
7
|
+
"[project]/web/app/(console)/outside-parties/[name]/page": [
|
|
8
8
|
"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2",
|
|
9
9
|
"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2"
|
|
10
10
|
],
|
|
11
|
-
"[project]/web/app/
|
|
11
|
+
"[project]/web/app/(console)/outside-parties/[name]/retire/page": [
|
|
12
12
|
"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2",
|
|
13
13
|
"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2"
|
|
14
14
|
],
|
|
15
|
-
"[project]/web/app/
|
|
15
|
+
"[project]/web/app/(console)/outside-parties/add-a2a-agent/page": [
|
|
16
|
+
"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2",
|
|
17
|
+
"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2"
|
|
18
|
+
],
|
|
19
|
+
"[project]/web/app/(console)/outside-parties/add-a2a-client/page": [
|
|
16
20
|
"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2",
|
|
17
21
|
"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2"
|
|
18
22
|
],
|
|
19
|
-
"[project]/web/app/outside-parties/
|
|
23
|
+
"[project]/web/app/(console)/outside-parties/add/page": [
|
|
20
24
|
"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2",
|
|
21
25
|
"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2"
|
|
22
26
|
],
|
|
23
|
-
"[project]/web/app/outside-parties/
|
|
27
|
+
"[project]/web/app/(console)/outside-parties/page": [
|
|
24
28
|
"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2",
|
|
25
29
|
"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2"
|
|
26
30
|
],
|
|
27
|
-
"[project]/web/app/
|
|
31
|
+
"[project]/web/app/(console)/overview/page": [
|
|
28
32
|
"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2",
|
|
29
33
|
"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2"
|
|
30
34
|
],
|
|
31
|
-
"[project]/web/app/
|
|
35
|
+
"[project]/web/app/(console)/overview/requests/[requestId]/page": [
|
|
32
36
|
"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2",
|
|
33
37
|
"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2"
|
|
34
38
|
],
|
|
35
|
-
"[project]/web/app/
|
|
39
|
+
"[project]/web/app/(console)/parties/page": [
|
|
36
40
|
"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2",
|
|
37
41
|
"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2"
|
|
38
42
|
],
|
|
39
|
-
"[project]/web/app/
|
|
43
|
+
"[project]/web/app/(console)/sign-in/failed/page": [
|
|
40
44
|
"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2",
|
|
41
45
|
"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2"
|
|
42
46
|
],
|
|
43
|
-
"[project]/web/app/
|
|
47
|
+
"[project]/web/app/_not-found/page": [
|
|
44
48
|
"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2",
|
|
45
49
|
"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2"
|
|
46
50
|
],
|
|
47
|
-
"[project]/web/app/
|
|
51
|
+
"[project]/web/app/authorize/failed/page": [
|
|
48
52
|
"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2",
|
|
49
53
|
"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2"
|
|
50
54
|
],
|
|
51
|
-
"[project]/web/app/
|
|
55
|
+
"[project]/web/app/authorize/pick/page": [
|
|
56
|
+
"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2",
|
|
57
|
+
"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2"
|
|
58
|
+
],
|
|
59
|
+
"[project]/web/app/authorize/waiting/approval/page": [
|
|
52
60
|
"static/media/geist_variable-s.p.0mrjj4bg00-he.woff2",
|
|
53
61
|
"static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2"
|
|
54
62
|
]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/2hz8yws_wswjz.js"/><script src="/_next/static/chunks/3knqujtrdi225.js" async=""></script><script src="/_next/static/chunks/0lzisjsmhlhjf.js" async=""></script><script src="/_next/static/chunks/41rcj9-d-7p_4.js" async=""></script><script src="/_next/static/chunks/2ewacyhp73due.js" async=""></script><script src="/_next/static/chunks/turbopack-3-ry682tkyiqk.js" async=""></script><script src="/_next/static/chunks/0umf92h1sb77c.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/0cz1d0mv5g_q7.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script id="_R_">(globalThis["TURBOPACK"] || (globalThis["TURBOPACK"] = [])).push({"otherChunks":["static/chunks/2hz8yws_wswjz.js","static/chunks/3knqujtrdi225.js","static/chunks/0lzisjsmhlhjf.js","static/chunks/41rcj9-d-7p_4.js","static/chunks/2ewacyhp73due.js"],"runtimeModuleIds":[94553]});</script><script src="/_next/static/chunks/2hz8yws_wswjz.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:\"/_next/static/chunks/0umf92h1sb77c.js\"\n3:I[39756,[\"$2\"],\"default\"]\n4:I[37457,[\"$2\"],\"default\"]\n7:I[97367,[\"$2\"],\"OutletBoundary\"]\n8:\"$Sreact.suspense\"\na:\"ViewportBoundary\"\nb:I[97367,[\"$2\"],\"$a\"]\nd:\"MetadataBoundary\"\ne:I[97367,[\"$2\"],\"$d\"]\n10:I[68027,[\"$2\"],\"default\",1]\n5:X\n"])</script><script>self.__next_f.push([1,"6:[[\"children\",{\"s\":\"__PAGE__\",\"h\":528,\"d\":{\"r\":[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L7\",null,{\"children\":[\"$\",\"$8\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@9\"}]}]]}],\"p\":false,\"v\":null}}]]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"t\":{\"t\":{\"s\":\"\",\"h\":528,\"d\":{\"r\":[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],\"p\":false,\"v\":\"$5\"},\"c\":\"$Q6\"},\"h\":{\"r\":[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$Lb\",null,{\"children\":\"$Lc\"}],[\"$\",\"$Le\",null,{\"children\":[[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$8\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lf\"}]}],null]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],\"p\":false,\"v\":null}},\"m\":\"$undefined\",\"G\":[\"$10\",[]],\"S\":true,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"
|
|
1
|
+
<!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/2hz8yws_wswjz.js"/><script src="/_next/static/chunks/3knqujtrdi225.js" async=""></script><script src="/_next/static/chunks/0lzisjsmhlhjf.js" async=""></script><script src="/_next/static/chunks/41rcj9-d-7p_4.js" async=""></script><script src="/_next/static/chunks/2ewacyhp73due.js" async=""></script><script src="/_next/static/chunks/turbopack-3-ry682tkyiqk.js" async=""></script><script src="/_next/static/chunks/0umf92h1sb77c.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/0cz1d0mv5g_q7.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script id="_R_">(globalThis["TURBOPACK"] || (globalThis["TURBOPACK"] = [])).push({"otherChunks":["static/chunks/2hz8yws_wswjz.js","static/chunks/3knqujtrdi225.js","static/chunks/0lzisjsmhlhjf.js","static/chunks/41rcj9-d-7p_4.js","static/chunks/2ewacyhp73due.js"],"runtimeModuleIds":[94553]});</script><script src="/_next/static/chunks/2hz8yws_wswjz.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:\"/_next/static/chunks/0umf92h1sb77c.js\"\n3:I[39756,[\"$2\"],\"default\"]\n4:I[37457,[\"$2\"],\"default\"]\n7:I[97367,[\"$2\"],\"OutletBoundary\"]\n8:\"$Sreact.suspense\"\na:\"ViewportBoundary\"\nb:I[97367,[\"$2\"],\"$a\"]\nd:\"MetadataBoundary\"\ne:I[97367,[\"$2\"],\"$d\"]\n10:I[68027,[\"$2\"],\"default\",1]\n5:X\n"])</script><script>self.__next_f.push([1,"6:[[\"children\",{\"s\":\"__PAGE__\",\"h\":528,\"d\":{\"r\":[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L7\",null,{\"children\":[\"$\",\"$8\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@9\"}]}]]}],\"p\":false,\"v\":null}}]]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"t\":{\"t\":{\"s\":\"\",\"h\":528,\"d\":{\"r\":[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],\"p\":false,\"v\":\"$5\"},\"c\":\"$Q6\"},\"h\":{\"r\":[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$Lb\",null,{\"children\":\"$Lc\"}],[\"$\",\"$Le\",null,{\"children\":[[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$8\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lf\"}]}],null]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],\"p\":false,\"v\":null}},\"m\":\"$undefined\",\"G\":[\"$10\",[]],\"S\":true,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"Az1CqrzgGHMZVR4nw9717\"}\n"])</script><script>self.__next_f.push([1,"5:C\nc:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"9:null\nf:[]\n"])</script></body></html>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"previewModeId": "
|
|
3
|
-
"previewModeSigningKey": "
|
|
4
|
-
"previewModeEncryptionKey": "
|
|
2
|
+
"previewModeId": "89c2c0f530bf63fdb0caf5722ef3e8de",
|
|
3
|
+
"previewModeSigningKey": "52e929bb87272bb0a2f76037f2acf3de5c6602b9b1c358ecc3bab3af7ea90f23",
|
|
4
|
+
"previewModeEncryptionKey": "c344fb4c8e78831db0e9f81cc005632ad2ae7305fb16ced4e580225c42bd26cf"
|
|
5
5
|
}
|