@aeolus-fleet/gateway 0.28.1 → 0.29.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -6
- package/dist/adapters/crypto/account-sign-in-seals.d.ts +7 -0
- package/dist/adapters/crypto/account-sign-in-seals.js +21 -0
- package/dist/adapters/crypto/account-sign-in-seals.js.map +1 -0
- package/dist/adapters/crypto/sign-in-seals.d.ts +1 -1
- package/dist/adapters/crypto/sign-in-seals.js +3 -6
- package/dist/adapters/crypto/sign-in-seals.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 +6 -0
- package/dist/adapters/fleet/fleet-ships.js +23 -0
- package/dist/adapters/fleet/fleet-ships.js.map +1 -0
- package/dist/adapters/fleet/proxy-ship-reads.d.ts +2 -2
- package/dist/adapters/fleet/proxy-ship-reads.js +6 -3
- package/dist/adapters/fleet/proxy-ship-reads.js.map +1 -1
- package/dist/adapters/fleet/rest-fleet-door.d.ts +2 -1
- package/dist/adapters/fleet/rest-fleet-door.js +34 -14
- package/dist/adapters/fleet/rest-fleet-door.js.map +1 -1
- package/dist/adapters/http/account-sign-in-routes.d.ts +19 -0
- package/dist/adapters/http/account-sign-in-routes.js +61 -0
- package/dist/adapters/http/account-sign-in-routes.js.map +1 -0
- package/dist/adapters/http/forms.d.ts +9 -0
- package/dist/adapters/http/forms.js +23 -0
- package/dist/adapters/http/forms.js.map +1 -0
- package/dist/adapters/http/front-door.d.ts +11 -4
- package/dist/adapters/http/front-door.js +48 -8
- package/dist/adapters/http/front-door.js.map +1 -1
- package/dist/adapters/http/live.d.ts +2 -12
- package/dist/adapters/http/live.js +4 -65
- package/dist/adapters/http/live.js.map +1 -1
- package/dist/adapters/http/oauth-routes.d.ts +14 -16
- package/dist/adapters/http/oauth-routes.js +23 -139
- package/dist/adapters/http/oauth-routes.js.map +1 -1
- package/dist/adapters/http/person-tools.d.ts +9 -4
- package/dist/adapters/http/person-tools.js +49 -5
- package/dist/adapters/http/person-tools.js.map +1 -1
- package/dist/adapters/pagasae/shared-sign-in.d.ts +11 -0
- package/dist/adapters/pagasae/shared-sign-in.js +123 -0
- package/dist/adapters/pagasae/shared-sign-in.js.map +1 -0
- package/dist/adapters/prisma/generated/browser.d.ts +1 -1
- package/dist/adapters/prisma/generated/client.d.ts +1 -1
- 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 +1 -0
- package/dist/adapters/prisma/generated/internal/prismaNamespace.js +1 -0
- package/dist/adapters/prisma/generated/internal/prismaNamespace.js.map +1 -1
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.d.ts +1 -0
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js +1 -0
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
- package/dist/adapters/prisma/generated/models/OpenedDelivery.d.ts +30 -2
- package/dist/adapters/prisma/opened-deliveries.js +18 -12
- package/dist/adapters/prisma/opened-deliveries.js.map +1 -1
- package/dist/adapters/trpc/router.d.ts +143 -4
- package/dist/adapters/trpc/router.js +151 -5
- package/dist/adapters/trpc/router.js.map +1 -1
- package/dist/adapters/web/next-web-app.d.ts +10 -0
- package/dist/adapters/web/next-web-app.js +27 -0
- package/dist/adapters/web/next-web-app.js.map +1 -0
- package/dist/app.d.ts +9 -1
- package/dist/app.js +53 -29
- package/dist/app.js.map +1 -1
- package/dist/bin/aeolus-gateway.js +12 -1
- package/dist/bin/aeolus-gateway.js.map +1 -1
- package/dist/config.d.ts +18 -0
- package/dist/config.js +16 -1
- package/dist/config.js.map +1 -1
- package/dist/core/account-sign-in/account-in-view.d.ts +43 -0
- package/dist/core/account-sign-in/account-in-view.js +52 -0
- package/dist/core/account-sign-in/account-in-view.js.map +1 -0
- package/dist/core/account-sign-in/account-of-sign-in.d.ts +23 -0
- package/dist/core/account-sign-in/account-of-sign-in.js +41 -0
- package/dist/core/account-sign-in/account-of-sign-in.js.map +1 -0
- package/dist/core/account-sign-in/complete-account-sign-in.d.ts +37 -0
- package/dist/core/account-sign-in/complete-account-sign-in.js +25 -0
- package/dist/core/account-sign-in/complete-account-sign-in.js.map +1 -0
- package/dist/core/account-sign-in/ports.d.ts +92 -0
- package/dist/core/account-sign-in/ports.js +3 -0
- package/dist/core/account-sign-in/ports.js.map +1 -0
- package/dist/core/account-sign-in/sign-out-account.d.ts +15 -0
- package/dist/core/account-sign-in/sign-out-account.js +12 -0
- package/dist/core/account-sign-in/sign-out-account.js.map +1 -0
- package/dist/core/account-sign-in/start-account-sign-in.d.ts +25 -0
- package/dist/core/account-sign-in/start-account-sign-in.js +26 -0
- package/dist/core/account-sign-in/start-account-sign-in.js.map +1 -0
- package/dist/core/actors/authenticate-actor.d.ts +14 -15
- package/dist/core/actors/authenticate-actor.js +10 -12
- package/dist/core/actors/authenticate-actor.js.map +1 -1
- package/dist/core/actors/credential-of.d.ts +4 -6
- package/dist/core/actors/credential-of.js +4 -8
- package/dist/core/actors/credential-of.js.map +1 -1
- package/dist/core/connection/answer-pings.d.ts +19 -0
- package/dist/core/connection/answer-pings.js +34 -0
- package/dist/core/connection/answer-pings.js.map +1 -0
- package/dist/core/connection/ports.d.ts +18 -1
- package/dist/core/operator/authenticate-operator.d.ts +4 -3
- package/dist/core/operator/authenticate-operator.js +4 -2
- package/dist/core/operator/authenticate-operator.js.map +1 -1
- package/dist/core/parties/list-owner-choices.d.ts +24 -0
- package/dist/core/parties/list-owner-choices.js +25 -0
- package/dist/core/parties/list-owner-choices.js.map +1 -0
- package/dist/core/parties/list-parties.js +1 -1
- package/dist/core/parties/list-parties.js.map +1 -1
- package/dist/core/parties/ports.d.ts +14 -5
- package/dist/core/parties/shown-party.d.ts +8 -2
- package/dist/core/parties/shown-party.js.map +1 -1
- package/dist/core/people/crew-person-ship.d.ts +3 -5
- package/dist/core/people/crew-person-ship.js +6 -5
- package/dist/core/people/crew-person-ship.js.map +1 -1
- package/dist/core/people/inbox-entry.d.ts +2 -1
- package/dist/core/people/inbox-entry.js +3 -0
- package/dist/core/people/inbox-entry.js.map +1 -1
- package/dist/core/people/list-ships.d.ts +17 -0
- package/dist/core/people/list-ships.js +20 -0
- package/dist/core/people/list-ships.js.map +1 -0
- package/dist/core/people/open-delivery.d.ts +14 -9
- package/dist/core/people/open-delivery.js +24 -4
- package/dist/core/people/open-delivery.js.map +1 -1
- package/dist/core/people/person-crew.d.ts +13 -1
- package/dist/core/people/person-crew.js.map +1 -1
- package/dist/core/people/ports.d.ts +42 -3
- package/dist/core/people/read-inbox.d.ts +15 -9
- package/dist/core/people/read-inbox.js +17 -6
- package/dist/core/people/read-inbox.js.map +1 -1
- package/dist/core/people/send-message.d.ts +32 -0
- package/dist/core/people/send-message.js +22 -0
- package/dist/core/people/send-message.js.map +1 -0
- package/dist/core/requests/ask-for-server.d.ts +2 -2
- package/dist/core/requests/watch-waiting.d.ts +2 -1
- package/dist/core/requests/watch-waiting.js +2 -2
- package/dist/core/requests/watch-waiting.js.map +1 -1
- package/dist/core/sign-in/complete-sign-in.d.ts +4 -11
- package/dist/core/sign-in/complete-sign-in.js +1 -23
- package/dist/core/sign-in/complete-sign-in.js.map +1 -1
- package/dist/core/sign-in/own-page.d.ts +10 -0
- package/dist/core/sign-in/own-page.js +35 -0
- package/dist/core/sign-in/own-page.js.map +1 -0
- package/dist/core/sign-in/ports.d.ts +3 -24
- package/dist/ping-worker.d.ts +20 -0
- package/dist/ping-worker.js +33 -0
- package/dist/ping-worker.js.map +1 -0
- package/package.json +23 -5
- package/src/adapters/prisma/migrations/20261021120000_opened_deliveries_sent_at/migration.sql +4 -0
- package/src/adapters/prisma/schema.prisma +2 -1
- package/web/.next/BUILD_ID +1 -0
- package/web/.next/app-path-routes-manifest.json +17 -0
- package/web/.next/build/chunks/[root-of-the-server]__17pn3jjqv9c44._.js +192 -0
- package/web/.next/build/chunks/[root-of-the-server]__17pn3jjqv9c44._.js.map +8 -0
- package/web/.next/build/chunks/[root-of-the-server]__1ehkf7gbe4e6q._.js +502 -0
- package/web/.next/build/chunks/[root-of-the-server]__1ehkf7gbe4e6q._.js.map +11 -0
- package/web/.next/build/chunks/[turbopack-node]_transforms_postcss_ts_1t6pazwwggn3s._.js +13 -0
- package/web/.next/build/chunks/[turbopack-node]_transforms_postcss_ts_1t6pazwwggn3s._.js.map +5 -0
- package/web/.next/build/chunks/[turbopack]_runtime.js +1056 -0
- package/web/.next/build/chunks/[turbopack]_runtime.js.map +11 -0
- package/web/.next/build/chunks/node_modules_0ds4fgws35qq2._.js +7337 -0
- package/web/.next/build/chunks/node_modules_0ds4fgws35qq2._.js.map +47 -0
- package/web/.next/build/chunks/pool_entry-[turbopack-node]_transforms_postcss_ts_1inl-dyesk97a._.js +6 -0
- package/web/.next/build/chunks/pool_entry-[turbopack-node]_transforms_postcss_ts_1inl-dyesk97a._.js.map +5 -0
- package/web/.next/build/package.json +1 -0
- package/web/.next/build-manifest.json +194 -0
- package/web/.next/diagnostics/build-diagnostics.json +6 -0
- package/web/.next/diagnostics/framework.json +1 -0
- package/web/.next/diagnostics/route-bundle-stats.json +195 -0
- package/web/.next/export-marker.json +6 -0
- package/web/.next/fallback-build-manifest.json +15 -0
- package/web/.next/images-manifest.json +68 -0
- package/web/.next/next-minimal-server.js.nft.json +1 -0
- package/web/.next/next-server.js.nft.json +1 -0
- package/web/.next/package.json +1 -0
- package/web/.next/prerender-manifest.json +40 -0
- package/web/.next/required-server-files.js +367 -0
- package/web/.next/required-server-files.json +367 -0
- package/web/.next/routes-manifest.json +144 -0
- package/web/.next/server/app/_global-error/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/_global-error/page/build-manifest.json +23 -0
- package/web/.next/server/app/_global-error/page/next-font-manifest.json +6 -0
- package/web/.next/server/app/_global-error/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/_global-error/page/server-reference-manifest.json +4 -0
- package/web/.next/server/app/_global-error/page.js +12 -0
- package/web/.next/server/app/_global-error/page.js.map +5 -0
- package/web/.next/server/app/_global-error/page.js.nft.json +1 -0
- package/web/.next/server/app/_global-error/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/_global-error.html +1 -0
- package/web/.next/server/app/_global-error.meta +30 -0
- package/web/.next/server/app/_global-error.rsc +18 -0
- package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +23 -0
- package/web/.next/server/app/_global-error.segments/_full.segment.rsc +18 -0
- package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +2 -0
- package/web/.next/server/app/_not-found/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/_not-found/page/build-manifest.json +23 -0
- package/web/.next/server/app/_not-found/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/_not-found/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/_not-found/page/server-reference-manifest.json +15 -0
- package/web/.next/server/app/_not-found/page.js +17 -0
- package/web/.next/server/app/_not-found/page.js.map +5 -0
- package/web/.next/server/app/_not-found/page.js.nft.json +1 -0
- package/web/.next/server/app/_not-found/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/authorize/failed/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/authorize/failed/page/build-manifest.json +23 -0
- package/web/.next/server/app/authorize/failed/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/authorize/failed/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/authorize/failed/page/server-reference-manifest.json +15 -0
- package/web/.next/server/app/authorize/failed/page.js +18 -0
- package/web/.next/server/app/authorize/failed/page.js.map +5 -0
- package/web/.next/server/app/authorize/failed/page.js.nft.json +1 -0
- package/web/.next/server/app/authorize/failed/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/authorize/pick/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/authorize/pick/page/build-manifest.json +23 -0
- package/web/.next/server/app/authorize/pick/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/authorize/pick/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/authorize/pick/page/server-reference-manifest.json +15 -0
- package/web/.next/server/app/authorize/pick/page.js +19 -0
- package/web/.next/server/app/authorize/pick/page.js.map +5 -0
- package/web/.next/server/app/authorize/pick/page.js.nft.json +1 -0
- package/web/.next/server/app/authorize/pick/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/authorize/waiting/approval/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/authorize/waiting/approval/page/build-manifest.json +23 -0
- package/web/.next/server/app/authorize/waiting/approval/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/authorize/waiting/approval/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/authorize/waiting/approval/page/server-reference-manifest.json +15 -0
- package/web/.next/server/app/authorize/waiting/approval/page.js +19 -0
- package/web/.next/server/app/authorize/waiting/approval/page.js.map +5 -0
- package/web/.next/server/app/authorize/waiting/approval/page.js.nft.json +1 -0
- package/web/.next/server/app/authorize/waiting/approval/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/outside-parties/[name]/change/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/outside-parties/[name]/change/page/build-manifest.json +23 -0
- package/web/.next/server/app/outside-parties/[name]/change/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/outside-parties/[name]/change/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/outside-parties/[name]/change/page/server-reference-manifest.json +35 -0
- package/web/.next/server/app/outside-parties/[name]/change/page.js +22 -0
- package/web/.next/server/app/outside-parties/[name]/change/page.js.map +5 -0
- package/web/.next/server/app/outside-parties/[name]/change/page.js.nft.json +1 -0
- package/web/.next/server/app/outside-parties/[name]/change/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/outside-parties/[name]/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/outside-parties/[name]/page/build-manifest.json +23 -0
- package/web/.next/server/app/outside-parties/[name]/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/outside-parties/[name]/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/outside-parties/[name]/page/server-reference-manifest.json +15 -0
- package/web/.next/server/app/outside-parties/[name]/page.js +20 -0
- package/web/.next/server/app/outside-parties/[name]/page.js.map +5 -0
- package/web/.next/server/app/outside-parties/[name]/page.js.nft.json +1 -0
- package/web/.next/server/app/outside-parties/[name]/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/outside-parties/[name]/retire/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/outside-parties/[name]/retire/page/build-manifest.json +23 -0
- package/web/.next/server/app/outside-parties/[name]/retire/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/outside-parties/[name]/retire/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/outside-parties/[name]/retire/page/server-reference-manifest.json +35 -0
- package/web/.next/server/app/outside-parties/[name]/retire/page.js +21 -0
- package/web/.next/server/app/outside-parties/[name]/retire/page.js.map +5 -0
- package/web/.next/server/app/outside-parties/[name]/retire/page.js.nft.json +1 -0
- package/web/.next/server/app/outside-parties/[name]/retire/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/outside-parties/add/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/outside-parties/add/page/build-manifest.json +23 -0
- package/web/.next/server/app/outside-parties/add/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/outside-parties/add/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/outside-parties/add/page/server-reference-manifest.json +35 -0
- package/web/.next/server/app/outside-parties/add/page.js +19 -0
- package/web/.next/server/app/outside-parties/add/page.js.map +5 -0
- package/web/.next/server/app/outside-parties/add/page.js.nft.json +1 -0
- package/web/.next/server/app/outside-parties/add/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/outside-parties/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/outside-parties/page/build-manifest.json +23 -0
- package/web/.next/server/app/outside-parties/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/outside-parties/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/outside-parties/page/server-reference-manifest.json +25 -0
- package/web/.next/server/app/outside-parties/page.js +20 -0
- package/web/.next/server/app/outside-parties/page.js.map +5 -0
- package/web/.next/server/app/outside-parties/page.js.nft.json +1 -0
- package/web/.next/server/app/outside-parties/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/overview/changes/route/app-paths-manifest.json +3 -0
- package/web/.next/server/app/overview/changes/route/build-manifest.json +12 -0
- package/web/.next/server/app/overview/changes/route/server-reference-manifest.json +4 -0
- package/web/.next/server/app/overview/changes/route.js +6 -0
- package/web/.next/server/app/overview/changes/route.js.map +5 -0
- package/web/.next/server/app/overview/changes/route.js.nft.json +1 -0
- package/web/.next/server/app/overview/changes/route_client-reference-manifest.js +3 -0
- package/web/.next/server/app/overview/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/overview/page/build-manifest.json +23 -0
- package/web/.next/server/app/overview/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/overview/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/overview/page/server-reference-manifest.json +45 -0
- package/web/.next/server/app/overview/page.js +24 -0
- package/web/.next/server/app/overview/page.js.map +5 -0
- package/web/.next/server/app/overview/page.js.nft.json +1 -0
- package/web/.next/server/app/overview/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/overview/requests/[requestId]/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/overview/requests/[requestId]/page/build-manifest.json +23 -0
- package/web/.next/server/app/overview/requests/[requestId]/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/overview/requests/[requestId]/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/overview/requests/[requestId]/page/server-reference-manifest.json +25 -0
- package/web/.next/server/app/overview/requests/[requestId]/page.js +24 -0
- package/web/.next/server/app/overview/requests/[requestId]/page.js.map +5 -0
- package/web/.next/server/app/overview/requests/[requestId]/page.js.nft.json +1 -0
- package/web/.next/server/app/overview/requests/[requestId]/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/parties/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/parties/page/build-manifest.json +23 -0
- package/web/.next/server/app/parties/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/parties/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/parties/page/server-reference-manifest.json +55 -0
- package/web/.next/server/app/parties/page.js +22 -0
- package/web/.next/server/app/parties/page.js.map +5 -0
- package/web/.next/server/app/parties/page.js.nft.json +1 -0
- package/web/.next/server/app/parties/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app/sign-in/failed/page/app-paths-manifest.json +3 -0
- package/web/.next/server/app/sign-in/failed/page/build-manifest.json +23 -0
- package/web/.next/server/app/sign-in/failed/page/next-font-manifest.json +11 -0
- package/web/.next/server/app/sign-in/failed/page/react-loadable-manifest.json +1 -0
- package/web/.next/server/app/sign-in/failed/page/server-reference-manifest.json +15 -0
- package/web/.next/server/app/sign-in/failed/page.js +18 -0
- package/web/.next/server/app/sign-in/failed/page.js.map +5 -0
- package/web/.next/server/app/sign-in/failed/page.js.nft.json +1 -0
- package/web/.next/server/app/sign-in/failed/page_client-reference-manifest.js +3 -0
- package/web/.next/server/app-paths-manifest.json +17 -0
- package/web/.next/server/chunks/[externals]__12s2uxrv8n30f._.js +3 -0
- package/web/.next/server/chunks/[externals]__12s2uxrv8n30f._.js.map +1 -0
- package/web/.next/server/chunks/[root-of-the-server]__00bbah0fbuex2._.js +369 -0
- package/web/.next/server/chunks/[root-of-the-server]__00bbah0fbuex2._.js.map +1 -0
- package/web/.next/server/chunks/[turbopack]_runtime.js +937 -0
- package/web/.next/server/chunks/[turbopack]_runtime.js.map +10 -0
- package/web/.next/server/chunks/ssr/0vkm_server_app_overview_requests_[requestId]_page_actions_08cpboirhdm8t.js +3 -0
- package/web/.next/server/chunks/ssr/0vkm_server_app_overview_requests_[requestId]_page_actions_08cpboirhdm8t.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0-liudmjwlqmo._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0-liudmjwlqmo._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__04_bc8g0oe4jt._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__04_bc8g0oe4jt._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0dywrno7zb0r_._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0dywrno7zb0r_._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0hosi33y5xecr._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0hosi33y5xecr._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0ntyo9p3x-w6a._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0ntyo9p3x-w6a._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0py1t7q9ntzgc._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0py1t7q9ntzgc._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0rzvf7wb60m05._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0rzvf7wb60m05._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__10rfwy-punm8_._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__10rfwy-punm8_._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__10y66e1xx8xiq._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__10y66e1xx8xiq._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__11e7zi5yg_f_4._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__11e7zi5yg_f_4._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__14w0fxvc_of17._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__14w0fxvc_of17._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__160zc0ja_jjnu._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__160zc0ja_jjnu._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__197il4swfpq1a._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__197il4swfpq1a._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1afrhvkbp010p._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1afrhvkbp010p._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1qpk1uw97id0a._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1qpk1uw97id0a._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1vkw2kvzx6fpw._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1vkw2kvzx6fpw._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1wl0vw-n8lbkn._.js +14 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1wl0vw-n8lbkn._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1yyfc4xf3xa-s._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__1yyfc4xf3xa-s._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__216xd8otb96uo._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__216xd8otb96uo._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[turbopack]_runtime.js +937 -0
- package/web/.next/server/chunks/ssr/[turbopack]_runtime.js.map +10 -0
- package/web/.next/server/chunks/ssr/_00hfzlqn1og18._.js +4 -0
- package/web/.next/server/chunks/ssr/_00hfzlqn1og18._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_03lk54yp-yhw3._.js +57 -0
- package/web/.next/server/chunks/ssr/_03lk54yp-yhw3._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_03xm-6l-r6ko0._.js +4 -0
- package/web/.next/server/chunks/ssr/_03xm-6l-r6ko0._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_04iwj3w0divwb._.js +4 -0
- package/web/.next/server/chunks/ssr/_04iwj3w0divwb._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_0xickgbbju_9-._.js +4 -0
- package/web/.next/server/chunks/ssr/_0xickgbbju_9-._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_13qzwpag13tvy._.js +4 -0
- package/web/.next/server/chunks/ssr/_13qzwpag13tvy._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_1bfq0g9c1iw__._.js +4 -0
- package/web/.next/server/chunks/ssr/_1bfq0g9c1iw__._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_1jfy4064jcghi._.js +3 -0
- package/web/.next/server/chunks/ssr/_1jfy4064jcghi._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_1pjtire7rqla0._.js +4 -0
- package/web/.next/server/chunks/ssr/_1pjtire7rqla0._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_1qbsmlji34yph._.js +4 -0
- package/web/.next/server/chunks/ssr/_1qbsmlji34yph._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_0gxlxpuufujz9._.js +33 -0
- package/web/.next/server/chunks/ssr/node_modules_0gxlxpuufujz9._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_0h91jdk0pr40d._.js +33 -0
- package/web/.next/server/chunks/ssr/node_modules_0h91jdk0pr40d._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_0ue_35q2cegwf._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_0ue_35q2cegwf._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_08hq6z46rczo0._.js +17 -0
- package/web/.next/server/chunks/ssr/node_modules_next_08hq6z46rczo0._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_164yuq6c86vw2._.js +291 -0
- package/web/.next/server/chunks/ssr/node_modules_next_164yuq6c86vw2._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_17rgm9-6qzdn5._.js +313 -0
- package/web/.next/server/chunks/ssr/node_modules_next_17rgm9-6qzdn5._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_0janj0i6dqko7._.js +6 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_0janj0i6dqko7._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_1dupwucoqt5qm._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_1dupwucoqt5qm._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_client_components_0p8s4lhdi0ir6._.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_client_components_0p8s4lhdi0ir6._.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_0q-w892nagajq.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_0q-w892nagajq.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0l_sp0xky89qu.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0l_sp0xky89qu.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_compiled_@edge-runtime_cookies_index_1kiz_an963mbg.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_compiled_@edge-runtime_cookies_index_1kiz_an963mbg.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_compiled_@opentelemetry_api_index_1oy1nwhip-98t.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_compiled_@opentelemetry_api_index_1oy1nwhip-98t.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_03zgfhccdkaiy.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_03zgfhccdkaiy.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0fj-1791_p39n.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0fj-1791_p39n.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0pq59x3iko2ai.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0pq59x3iko2ai.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0svltk31-r84e.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0svltk31-r84e.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0ytc4y16h581t.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0ytc4y16h581t.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_15hcath_cy93j.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_15hcath_cy93j.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_18gq8l27vkevg.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_18gq8l27vkevg.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_19--w_z4y02i7.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_19--w_z4y02i7.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1ej-pov8ir4hb.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1ej-pov8ir4hb.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1emdm3ck_2g9k.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1emdm3ck_2g9k.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1mvwdrj8rcdc5.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1mvwdrj8rcdc5.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1uc-ufaepnlh_.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1uc-ufaepnlh_.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1ymh04086158y.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1ymh04086158y.js.map +1 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1z9khw-ht54ev.js +3 -0
- package/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1z9khw-ht54ev.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_0v-7sowo0hupw._.js +3 -0
- package/web/.next/server/chunks/ssr/web_0v-7sowo0hupw._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_0vot73dagfg_x._.js +3 -0
- package/web/.next/server/chunks/ssr/web_0vot73dagfg_x._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_17c7_dhsf-sjp._.js +3 -0
- package/web/.next/server/chunks/ssr/web_17c7_dhsf-sjp._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_1j5yjwqkgyeve._.js +3 -0
- package/web/.next/server/chunks/ssr/web_1j5yjwqkgyeve._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_1nqu01kfi0u66._.js +3 -0
- package/web/.next/server/chunks/ssr/web_1nqu01kfi0u66._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_1zd285_dq60z5._.js +3 -0
- package/web/.next/server/chunks/ssr/web_1zd285_dq60z5._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_207u8paamz3z-._.js +10 -0
- package/web/.next/server/chunks/ssr/web_207u8paamz3z-._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web__next-internal_server_app__global-error_page_actions_0crg1npwvbfn5.js +3 -0
- package/web/.next/server/chunks/ssr/web__next-internal_server_app__global-error_page_actions_0crg1npwvbfn5.js.map +1 -0
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_outside-parties_add_page_actions_0wclx47vjdhe6.js +3 -0
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_outside-parties_add_page_actions_0wclx47vjdhe6.js.map +1 -0
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_overview_page_actions_0hxu14a57nlf2.js +3 -0
- package/web/.next/server/chunks/ssr/web__next-internal_server_app_overview_page_actions_0hxu14a57nlf2.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_app_not-found_tsx_1miwllm8xrp2a._.js +3 -0
- package/web/.next/server/chunks/ssr/web_app_not-found_tsx_1miwllm8xrp2a._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_app_outside-parties_[name]_change_page_tsx_0kfjh3f55us56._.js +3 -0
- package/web/.next/server/chunks/ssr/web_app_outside-parties_[name]_change_page_tsx_0kfjh3f55us56._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_app_outside-parties_[name]_retire_page_tsx_0qhcnjpjipu_2._.js +3 -0
- package/web/.next/server/chunks/ssr/web_app_outside-parties_[name]_retire_page_tsx_0qhcnjpjipu_2._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_app_overview_error_tsx_0qlcwxupzw726._.js +3 -0
- package/web/.next/server/chunks/ssr/web_app_overview_error_tsx_0qlcwxupzw726._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_app_overview_error_tsx_17_cklg40kzxe._.js +3 -0
- package/web/.next/server/chunks/ssr/web_app_overview_error_tsx_17_cklg40kzxe._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_app_parties_page_tsx_1lilxm339jj89._.js +3 -0
- package/web/.next/server/chunks/ssr/web_app_parties_page_tsx_1lilxm339jj89._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_085cv0gogrxxf._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_085cv0gogrxxf._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_0fxkmm4vqke5q._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_0fxkmm4vqke5q._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_0h0ueu8_-_z5k._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_0h0ueu8_-_z5k._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_0k3zd1eymtkgq._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_0k3zd1eymtkgq._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_0vq1wjkuh6dmr._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_0vq1wjkuh6dmr._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_add-server_ui_add-server_tsx_1jnmar5xju49k._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_add-server_ui_add-server_tsx_1jnmar5xju49k._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_authorize_ui_waiting-for-approval_tsx_00iwjvj4orq9g._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_authorize_ui_waiting-for-approval_tsx_00iwjvj4orq9g._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_forms_03k1kg82ux_ee._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_forms_03k1kg82ux_ee._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_forms_1-88lvs4ivi73._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_forms_1-88lvs4ivi73._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_forms_15gausi3cpweg._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_forms_15gausi3cpweg._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_outside-parties_ui_switch-card_tsx_1_xnu9bm4tc-_._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_outside-parties_ui_switch-card_tsx_1_xnu9bm4tc-_._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_outside-party_actions_ts_102ar5pdowf8s._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_outside-party_actions_ts_102ar5pdowf8s._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_outside-party_ui_outside-party_tsx_06a94oekz1ckq._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_outside-party_ui_outside-party_tsx_06a94oekz1ckq._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_overview_16dyz2ngvs14b._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_overview_16dyz2ngvs14b._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_overview_hooks_overview-actions_ts_0-wrat07d1y5g._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_overview_hooks_overview-actions_ts_0-wrat07d1y5g._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_overview_state_decision-panel_tsx_0kpd26ggtr6h_._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_overview_state_decision-panel_tsx_0kpd26ggtr6h_._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_overview_state_inbox-panel_tsx_03hlegjsc27sb._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_overview_state_inbox-panel_tsx_03hlegjsc27sb._.js.map +1 -0
- package/web/.next/server/chunks/ssr/web_features_parties_actions_ts_0r-tbfsig2ty-._.js +3 -0
- package/web/.next/server/chunks/ssr/web_features_parties_actions_ts_0r-tbfsig2ty-._.js.map +1 -0
- package/web/.next/server/chunks/web__next-internal_server_app_overview_changes_route_actions_16jqwsctr1pzg.js +3 -0
- package/web/.next/server/chunks/web__next-internal_server_app_overview_changes_route_actions_16jqwsctr1pzg.js.map +1 -0
- package/web/.next/server/functions-config-manifest.json +4 -0
- package/web/.next/server/interception-route-rewrite-manifest.js +1 -0
- package/web/.next/server/middleware-build-manifest.js +194 -0
- package/web/.next/server/middleware-manifest.json +6 -0
- package/web/.next/server/next-font-manifest.js +1 -0
- package/web/.next/server/next-font-manifest.json +59 -0
- package/web/.next/server/pages/500.html +1 -0
- package/web/.next/server/pages-manifest.json +3 -0
- package/web/.next/server/prefetch-hints.json +11 -0
- package/web/.next/server/preview-props.json +5 -0
- package/web/.next/server/server-reference-manifest.js +1 -0
- package/web/.next/server/server-reference-manifest.json +202 -0
- package/web/.next/static/MLIzjhz2u5r5gyyuciHvf/_buildManifest.js +11 -0
- package/web/.next/static/MLIzjhz2u5r5gyyuciHvf/_clientMiddlewareManifest.js +1 -0
- package/web/.next/static/MLIzjhz2u5r5gyyuciHvf/_ssgManifest.js +1 -0
- package/web/.next/static/chunks/0214opd1iq3ld.js +1 -0
- package/web/.next/static/chunks/0a1vw3r93lh06.js +1 -0
- package/web/.next/static/chunks/0cz1d0mv5g_q7.js +1 -0
- package/web/.next/static/chunks/0hobzrlhklo3e.js +1 -0
- package/web/.next/static/chunks/0lzisjsmhlhjf.js +1 -0
- package/web/.next/static/chunks/0umf92h1sb77c.js +1 -0
- package/web/.next/static/chunks/1ma7v1viiz247.js +1 -0
- package/web/.next/static/chunks/1sgi4p93eayf4.js +1 -0
- package/web/.next/static/chunks/22u81hd6kxqsx.js +1 -0
- package/web/.next/static/chunks/2ewacyhp73due.js +1 -0
- package/web/.next/static/chunks/2hz8yws_wswjz.js +31 -0
- package/web/.next/static/chunks/2qpupho1jn-iy.js +1 -0
- package/web/.next/static/chunks/2rap-vrom5-zw.css +3 -0
- package/web/.next/static/chunks/3jr0srcv_-pfa.js +1 -0
- package/web/.next/static/chunks/3knqujtrdi225.js +1 -0
- package/web/.next/static/chunks/3l_1gcuoe8bfn.js +1 -0
- package/web/.next/static/chunks/3sv0_hjr9t4cp.js +1 -0
- package/web/.next/static/chunks/41rcj9-d-7p_4.js +22 -0
- package/web/.next/static/chunks/turbopack-3-ry682tkyiqk.js +1 -0
- package/web/.next/static/media/geist_mono_variable-s.p.3ms9vq719j3f8.woff2 +0 -0
- package/web/.next/static/media/geist_variable-s.p.0mrjj4bg00-he.woff2 +0 -0
- package/web/.next/trace +1 -0
- package/web/.next/trace-build +1 -0
- package/web/.next/turbopack +0 -0
- package/web/.next/types/cache-life.d.ts +114 -0
- package/web/.next/types/root-params.d.ts +3 -0
- package/web/.next/types/routes.d.ts +85 -0
- package/web/.next/types/validator.ts +288 -0
- package/web/next.config.ts +9 -0
- package/dist/adapters/crypto/page-sessions.d.ts +0 -15
- package/dist/adapters/crypto/page-sessions.js +0 -40
- package/dist/adapters/crypto/page-sessions.js.map +0 -1
- package/dist/adapters/http/add-server-page.d.ts +0 -7
- package/dist/adapters/http/add-server-page.js +0 -175
- package/dist/adapters/http/add-server-page.js.map +0 -1
- package/dist/adapters/http/delivery-page.d.ts +0 -24
- package/dist/adapters/http/delivery-page.js +0 -115
- package/dist/adapters/http/delivery-page.js.map +0 -1
- package/dist/adapters/http/html.d.ts +0 -15
- package/dist/adapters/http/html.js +0 -53
- package/dist/adapters/http/html.js.map +0 -1
- package/dist/adapters/http/outside-parties-page.d.ts +0 -33
- package/dist/adapters/http/outside-parties-page.js +0 -153
- package/dist/adapters/http/outside-parties-page.js.map +0 -1
- package/dist/adapters/http/outside-party-page.d.ts +0 -7
- package/dist/adapters/http/outside-party-page.js +0 -212
- package/dist/adapters/http/outside-party-page.js.map +0 -1
- package/dist/adapters/http/overview-page.d.ts +0 -17
- package/dist/adapters/http/overview-page.js +0 -298
- package/dist/adapters/http/overview-page.js.map +0 -1
- package/dist/adapters/http/parties-page.d.ts +0 -7
- package/dist/adapters/http/parties-page.js +0 -139
- package/dist/adapters/http/parties-page.js.map +0 -1
- package/dist/adapters/http/scope-rows.d.ts +0 -10
- package/dist/adapters/http/scope-rows.js +0 -30
- package/dist/adapters/http/scope-rows.js.map +0 -1
- package/dist/adapters/http/signal.d.ts +0 -61
- package/dist/adapters/http/signal.js +0 -263
- package/dist/adapters/http/signal.js.map +0 -1
- package/dist/core/sign-in/sign-out.d.ts +0 -10
- package/dist/core/sign-in/sign-out.js +0 -9
- package/dist/core/sign-in/sign-out.js.map +0 -1
- package/dist/core/sign-in/start-page-sign-in.d.ts +0 -25
- package/dist/core/sign-in/start-page-sign-in.js +0 -30
- package/dist/core/sign-in/start-page-sign-in.js.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ok } from '../shared/result.js';
|
|
2
|
-
import { inboxEntryOf } from './inbox-entry.js';
|
|
2
|
+
import { inboxEntryOf, openedEntryOf } from './inbox-entry.js';
|
|
3
3
|
import { asPersonCrew } from './person-crew.js';
|
|
4
4
|
/** The most deliveries an inbox lists at once: as many as one receive takes. */
|
|
5
5
|
export const INBOX_LIST_MAX = 10;
|
|
@@ -22,15 +22,26 @@ export async function waitingFor(deps, caller) {
|
|
|
22
22
|
return taken.isOk ? ok({ crew: taken.value.crew, waiting: value.waiting, deliveries: taken.value.value }) : taken;
|
|
23
23
|
}
|
|
24
24
|
/**
|
|
25
|
-
* Use case: a person reads their own person ship's inbox (Q20)
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
25
|
+
* Use case: a person reads their own person ship's inbox (Q20), by titles
|
|
26
|
+
* only, in two groups (aeolus-fleet #1046): what waits, which the gateway
|
|
27
|
+
* takes as the ship's crew, and what any client of the person opened and
|
|
28
|
+
* they have not answered or done yet. A delivery the fleet still holds as
|
|
29
|
+
* waiting, as when it did not take its acknowledgement, is listed waiting
|
|
30
|
+
* only.
|
|
29
31
|
*/
|
|
30
32
|
export function createReadInbox(deps) {
|
|
31
33
|
return async (caller) => {
|
|
32
34
|
const waiting = await waitingFor(deps, caller);
|
|
33
|
-
|
|
35
|
+
if (!waiting.isOk) {
|
|
36
|
+
return waiting;
|
|
37
|
+
}
|
|
38
|
+
const isWaiting = new Set(waiting.value.deliveries.map(({ deliveryId }) => deliveryId));
|
|
39
|
+
const opened = await deps.opened.list(caller.fleetId, waiting.value.crew.shipId);
|
|
40
|
+
return ok({
|
|
41
|
+
waiting: waiting.value.waiting,
|
|
42
|
+
deliveries: waiting.value.deliveries.map(inboxEntryOf),
|
|
43
|
+
opened: opened.filter(({ deliveryId }) => !isWaiting.has(deliveryId)).map(openedEntryOf),
|
|
44
|
+
});
|
|
34
45
|
};
|
|
35
46
|
}
|
|
36
47
|
//# sourceMappingURL=read-inbox.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"read-inbox.js","sourceRoot":"","sources":["../../../src/core/people/read-inbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAe,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAmB,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"read-inbox.js","sourceRoot":"","sources":["../../../src/core/people/read-inbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAe,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAmB,MAAM,kBAAkB,CAAC;AAChF,OAAO,EAAE,YAAY,EAAiE,MAAM,kBAAkB,CAAC;AAG/G,gFAAgF;AAChF,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAC;AAWjC;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,IAAkF,EAClF,MAAoB;IAEpB,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACrG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAClB,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC;IACtC,IAAI,KAAK,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC,CAAC;IAClI,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACpH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAAC,IAA4G;IAC1I,OAAO,KAAK,EAAE,MAAM,EAAE,EAAE;QACtB,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAClB,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAS,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;QAChG,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjF,OAAO,EAAE,CAAC;YACR,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;YAC9B,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC;YACtD,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC;SACzF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { MessageId } from '@aeolus-fleet/common';
|
|
2
|
+
import { type DomainError } from '../shared/errors.js';
|
|
3
|
+
import { type Result } from '../shared/result.js';
|
|
4
|
+
import type { CrewPersonShip } from './crew-person-ship.js';
|
|
5
|
+
import { type PersonCaller, type PersonCrewError } from './person-crew.js';
|
|
6
|
+
import type { PersonCrews, PersonSelector, PersonShipDoor } from './ports.js';
|
|
7
|
+
/** Outbound port: a new key for a message the person gave none. */
|
|
8
|
+
export interface SendKeys {
|
|
9
|
+
newIdempotencyKey(): string;
|
|
10
|
+
}
|
|
11
|
+
export type SendMessage = (input: {
|
|
12
|
+
caller: PersonCaller;
|
|
13
|
+
to: PersonSelector;
|
|
14
|
+
contentType: string;
|
|
15
|
+
payload: string;
|
|
16
|
+
idempotencyKey?: string;
|
|
17
|
+
}) => Promise<Result<{
|
|
18
|
+
messageId: MessageId;
|
|
19
|
+
}, PersonCrewError | DomainError<'SEND_REFUSED'>>>;
|
|
20
|
+
/**
|
|
21
|
+
* Use case: a person starts a message as their person ship (aeolus-fleet
|
|
22
|
+
* #1046), to a ship by its name or any ship of a type. The fleet checks the
|
|
23
|
+
* ship's scopes and the network rules at send time, so the gateway adds no
|
|
24
|
+
* rule of its own and passes the fleet's reason on when it refuses. The
|
|
25
|
+
* person's own key, when given, makes a send tried again go once.
|
|
26
|
+
*/
|
|
27
|
+
export declare function createSendMessage(deps: {
|
|
28
|
+
crewPersonShip: CrewPersonShip;
|
|
29
|
+
crews: PersonCrews;
|
|
30
|
+
door: PersonShipDoor;
|
|
31
|
+
keys: SendKeys;
|
|
32
|
+
}): SendMessage;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { refuse } from '../shared/errors.js';
|
|
2
|
+
import { ok } from '../shared/result.js';
|
|
3
|
+
import { asPersonCrew, withOwnRefusal } from './person-crew.js';
|
|
4
|
+
/**
|
|
5
|
+
* Use case: a person starts a message as their person ship (aeolus-fleet
|
|
6
|
+
* #1046), to a ship by its name or any ship of a type. The fleet checks the
|
|
7
|
+
* ship's scopes and the network rules at send time, so the gateway adds no
|
|
8
|
+
* rule of its own and passes the fleet's reason on when it refuses. The
|
|
9
|
+
* person's own key, when given, makes a send tried again go once.
|
|
10
|
+
*/
|
|
11
|
+
export function createSendMessage(deps) {
|
|
12
|
+
return async ({ caller, to, contentType, payload, idempotencyKey }) => {
|
|
13
|
+
const message = { to, contentType, payload, idempotencyKey: idempotencyKey ?? deps.keys.newIdempotencyKey() };
|
|
14
|
+
const sent = await asPersonCrew(deps, { caller, run: (crew) => withOwnRefusal(deps.door.send(crew.crewToken, message)) });
|
|
15
|
+
if (!sent.isOk) {
|
|
16
|
+
return sent;
|
|
17
|
+
}
|
|
18
|
+
const taken = sent.value.value;
|
|
19
|
+
return taken.isOk ? ok(taken.value) : refuse('SEND_REFUSED', `The fleet did not take your message: ${taken.error.message}`);
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=send-message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"send-message.js","sourceRoot":"","sources":["../../../src/core/people/send-message.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAoB,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,EAAE,EAAe,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,cAAc,EAA2C,MAAM,kBAAkB,CAAC;AAgBzG;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAkG;IAClI,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,EAAE;QACpE,MAAM,OAAO,GAAG,EAAE,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,IAAI,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,CAAC;QAC9G,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;QAC1H,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;QAC/B,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,EAAE,wCAAwC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAC9H,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { FleetId } from '@aeolus-fleet/common';
|
|
2
2
|
import type { PartyStore } from '../parties/ports.js';
|
|
3
|
-
import type {
|
|
3
|
+
import type { GrantCaller } from '../people/person-crew.js';
|
|
4
4
|
import { type DomainError } from '../shared/errors.js';
|
|
5
5
|
import { type Result } from '../shared/result.js';
|
|
6
6
|
import type { AccountGrants } from '../sign-in/ports.js';
|
|
@@ -14,7 +14,7 @@ export interface AskedServer {
|
|
|
14
14
|
readonly expiresAt: Date;
|
|
15
15
|
}
|
|
16
16
|
export type AskForServer = (asked: {
|
|
17
|
-
caller:
|
|
17
|
+
caller: GrantCaller;
|
|
18
18
|
url: string;
|
|
19
19
|
}) => Promise<Result<AskedServer, DomainError<'INVALID_SERVER_URL' | 'OUTSIDE_PARTIES_OFF' | 'SIGNED_OUT' | 'PARTY_EXISTS'>>>;
|
|
20
20
|
/**
|
|
@@ -3,9 +3,10 @@ import type { PartyStore } from '../parties/ports.js';
|
|
|
3
3
|
import type { Clock } from '../shared/clock.js';
|
|
4
4
|
import { type Result } from '../shared/result.js';
|
|
5
5
|
import type { PendingRequests, WaitingSeals } from './ports.js';
|
|
6
|
-
/** Whether the browser that asked still waits, the fleet its request is in, and when the request expires. */
|
|
6
|
+
/** Whether the browser that asked still waits, the fleet its request is in, the client asked for, and when the request expires. */
|
|
7
7
|
export interface WatchedWaiting {
|
|
8
8
|
readonly fleetId: FleetId;
|
|
9
|
+
readonly clientName: string;
|
|
9
10
|
readonly isWaiting: boolean;
|
|
10
11
|
readonly expiresAt: Date;
|
|
11
12
|
}
|
|
@@ -19,11 +19,11 @@ export function createWatchWaiting(deps) {
|
|
|
19
19
|
if (request === undefined) {
|
|
20
20
|
return err({ kind: 'unknownWaiting' });
|
|
21
21
|
}
|
|
22
|
-
const
|
|
22
|
+
const clientId = waiting.request.client_id ?? '';
|
|
23
|
+
const watched = { fleetId: request.fleetId, clientName: request.subject.kind === 'client' ? request.subject.clientName : clientId, expiresAt: request.expiresAt };
|
|
23
24
|
if (isRefused(request, deps.clock.now())) {
|
|
24
25
|
return ok({ ...watched, isWaiting: false });
|
|
25
26
|
}
|
|
26
|
-
const clientId = waiting.request.client_id ?? '';
|
|
27
27
|
const party = request.state === 'approved' ? await deps.parties.findByClient(request.fleetId, clientId) : undefined;
|
|
28
28
|
return ok({ ...watched, isWaiting: party?.state !== 'crewed' });
|
|
29
29
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watch-waiting.js","sourceRoot":"","sources":["../../../src/core/requests/watch-waiting.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,GAAG,EAAE,EAAE,EAAe,MAAM,qBAAqB,CAAC;AAE3D,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"watch-waiting.js","sourceRoot":"","sources":["../../../src/core/requests/watch-waiting.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,GAAG,EAAE,EAAE,EAAe,MAAM,qBAAqB,CAAC;AAE3D,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAc/C;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAA8F;IAC/H,OAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE;QAClD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC;QACzC,CAAC;QACD,IAAI,aAAa,KAAK,OAAO,CAAC,aAAa,EAAE,CAAC;YAC5C,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;QACvC,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QAC7E,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC;QACzC,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC;QACjD,MAAM,OAAO,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;QAClK,IAAI,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;YACzC,OAAO,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9C,CAAC;QACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACpH,OAAO,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,KAAK,QAAQ,EAAE,CAAC,CAAC;IAClE,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -4,7 +4,7 @@ import type { AuthorizationRefusal, ReadAuthorization } from '../oauth/read-auth
|
|
|
4
4
|
import type { AskForClient, ClientAnswer } from '../requests/ask-for-client.js';
|
|
5
5
|
import type { Clock } from '../shared/clock.js';
|
|
6
6
|
import { type Result } from '../shared/result.js';
|
|
7
|
-
import type { AccountGrants, Pagasae,
|
|
7
|
+
import type { AccountGrants, Pagasae, SignInSeals } from './ports.js';
|
|
8
8
|
/**
|
|
9
9
|
* Why a sign-in gave the client no code, beside the request's own refusals:
|
|
10
10
|
* - unknownSignIn: the gateway sealed no sign-in into this state, or its 10 minutes passed;
|
|
@@ -25,12 +25,8 @@ export type SignInRefusal = AuthorizationRefusal | {
|
|
|
25
25
|
} | {
|
|
26
26
|
readonly kind: 'outsidePartiesOff';
|
|
27
27
|
};
|
|
28
|
-
/** What a sign-in answers: the client's answer
|
|
29
|
-
export type SignInAnswer = ClientAnswer
|
|
30
|
-
readonly kind: 'signedIn';
|
|
31
|
-
readonly session: string;
|
|
32
|
-
readonly redirectTo: string;
|
|
33
|
-
};
|
|
28
|
+
/** What a sign-in answers: the client's answer. */
|
|
29
|
+
export type SignInAnswer = ClientAnswer;
|
|
34
30
|
interface Back {
|
|
35
31
|
state?: string | undefined;
|
|
36
32
|
code?: string | undefined;
|
|
@@ -45,9 +41,7 @@ export type CompleteSignIn = (back: Back) => Promise<Result<SignInAnswer, SignIn
|
|
|
45
41
|
* picked: the account's grant is kept, and the client is sent back with the
|
|
46
42
|
* gateway's own code for it, acting in the fleet as the account with no
|
|
47
43
|
* approval (orchestrator-1, slice 7 Q1); or the account asks for access for
|
|
48
|
-
* the client, as an outside party (decision 0056).
|
|
49
|
-
* gateway's pages keeps the account's grant too, and answers a page session
|
|
50
|
-
* naming it, so the pages act as the account.
|
|
44
|
+
* the client, as an outside party (decision 0056).
|
|
51
45
|
*/
|
|
52
46
|
export declare function createCompleteSignIn(deps: {
|
|
53
47
|
readAuthorization: ReadAuthorization;
|
|
@@ -61,6 +55,5 @@ export declare function createCompleteSignIn(deps: {
|
|
|
61
55
|
/** Whether the gateway serves the fleet: connected to it, and switched on where an installation switches fleets (decision 0021). */
|
|
62
56
|
servesFleet: (fleetId: FleetId) => Promise<boolean>;
|
|
63
57
|
askForClient: AskForClient;
|
|
64
|
-
sessions: PageSessions;
|
|
65
58
|
}): CompleteSignIn;
|
|
66
59
|
export {};
|
|
@@ -7,28 +7,9 @@ import { err, ok } from '../shared/result.js';
|
|
|
7
7
|
* picked: the account's grant is kept, and the client is sent back with the
|
|
8
8
|
* gateway's own code for it, acting in the fleet as the account with no
|
|
9
9
|
* approval (orchestrator-1, slice 7 Q1); or the account asks for access for
|
|
10
|
-
* the client, as an outside party (decision 0056).
|
|
11
|
-
* gateway's pages keeps the account's grant too, and answers a page session
|
|
12
|
-
* naming it, so the pages act as the account.
|
|
10
|
+
* the client, as an outside party (decision 0056).
|
|
13
11
|
*/
|
|
14
12
|
export function createCompleteSignIn(deps) {
|
|
15
|
-
/** A sign-in to the pages: the grant kept, and the session naming it; no client to send back, so pagasae's error is said. */
|
|
16
|
-
const signInToPages = async (signIn, { code, error }) => {
|
|
17
|
-
if (error !== undefined || code === undefined) {
|
|
18
|
-
return err({ kind: 'pagasaeRefused', message: error ?? 'pagasae sent no code' });
|
|
19
|
-
}
|
|
20
|
-
const redeemed = await deps.pagasae.redeemCode({ code, verifier: signIn.verifier });
|
|
21
|
-
if (!redeemed.isOk) {
|
|
22
|
-
return err({ kind: 'pagasaeRefused', message: redeemed.error.reason });
|
|
23
|
-
}
|
|
24
|
-
const { fleetId, accountId, personShipId, scopes, refreshToken, accountToken, accountTokenExpiresAt } = redeemed.value;
|
|
25
|
-
if (!(await deps.servesFleet(fleetId))) {
|
|
26
|
-
return err({ kind: 'fleetNotServed' });
|
|
27
|
-
}
|
|
28
|
-
const grantId = deps.secrets.newSecret();
|
|
29
|
-
await deps.grants.save({ grantId, fleetId, accountId, personShipId, scopes, refreshToken, accountToken, accountTokenExpiresAt });
|
|
30
|
-
return ok({ kind: 'signedIn', session: deps.sessions.seal({ fleetId, grantId }), redirectTo: signIn.returnTo });
|
|
31
|
-
};
|
|
32
13
|
return async (back) => {
|
|
33
14
|
const { state, code, error, browserSecret } = back;
|
|
34
15
|
const signIn = state === undefined ? undefined : deps.seals.open(state);
|
|
@@ -38,9 +19,6 @@ export function createCompleteSignIn(deps) {
|
|
|
38
19
|
if (browserSecret !== signIn.browserSecret) {
|
|
39
20
|
return err({ kind: 'otherBrowser' });
|
|
40
21
|
}
|
|
41
|
-
if (signIn.holder === 'page') {
|
|
42
|
-
return signInToPages(signIn, back);
|
|
43
|
-
}
|
|
44
22
|
const read = await deps.readAuthorization(signIn.request);
|
|
45
23
|
if (!read.isOk) {
|
|
46
24
|
return read;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"complete-sign-in.js","sourceRoot":"","sources":["../../../src/core/sign-in/complete-sign-in.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAKjE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAe,MAAM,qBAAqB,CAAC;AAyB3D
|
|
1
|
+
{"version":3,"file":"complete-sign-in.js","sourceRoot":"","sources":["../../../src/core/sign-in/complete-sign-in.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAKjE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAe,MAAM,qBAAqB,CAAC;AAyB3D;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAYpC;IACC,OAAO,KAAK,EAAE,IAAI,EAAE,EAAE;QACpB,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;QACnD,MAAM,MAAM,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxE,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC;YACrF,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC;QACxC,CAAC;QACD,IAAI,aAAa,KAAK,MAAM,CAAC,aAAa,EAAE,CAAC;YAC3C,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;QACvC,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC;QACjC,IAAI,KAAK,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9C,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,CAAC,aAAa,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;QACjK,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QACpF,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnB,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC;QAC9B,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;YAC9C,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC;QACzC,CAAC;QACD,IAAI,aAAa,CAAC,aAAa,KAAK,IAAI,IAAI,aAAa,CAAC,aAAa,KAAK,MAAM,CAAC,OAAO,EAAE,CAAC;YAC3F,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,GAAG,aAAa,CAAC,UAAU,kCAAkC,EAAE,CAAC,CAAC;QAChH,CAAC;QACD,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,qBAAqB,EAAE,GAAG,MAAM,CAAC;QAC/G,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,SAAS,EAAE,YAAY,EAAE,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC;YACxK,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QACzC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,qBAAqB,EAAE,CAAC,CAAC;QACjI,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACvI,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The page of the gateway's own a sign-in's way back names, for both page
|
|
3
|
+
* sign-ins, so the check exists once. A browser resolves the way back:
|
|
4
|
+
* it drops tabs and newlines, reads a backslash as a slash and removes dot
|
|
5
|
+
* segments, so `/a/..//evil.example` ends as `//evil.example`, another
|
|
6
|
+
* site. The way back is kept only when, so resolved, it is a path of the
|
|
7
|
+
* gateway's own, and resolving it again keeps it there.
|
|
8
|
+
*/
|
|
9
|
+
/** The page of the gateway's own with its path, query and hash; undefined for anything else. */
|
|
10
|
+
export declare function ownPageOf(returnTo: string): string | undefined;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The page of the gateway's own a sign-in's way back names, for both page
|
|
3
|
+
* sign-ins, so the check exists once. A browser resolves the way back:
|
|
4
|
+
* it drops tabs and newlines, reads a backslash as a slash and removes dot
|
|
5
|
+
* segments, so `/a/..//evil.example` ends as `//evil.example`, another
|
|
6
|
+
* site. The way back is kept only when, so resolved, it is a path of the
|
|
7
|
+
* gateway's own, and resolving it again keeps it there.
|
|
8
|
+
*/
|
|
9
|
+
/** An origin no address is at: a way back resolved against it that keeps it is the gateway's own, wherever the gateway is. */
|
|
10
|
+
const OWN_ORIGIN = 'https://gateway.invalid';
|
|
11
|
+
/** The way back resolved as a browser resolves it, if it stays at the gateway's own origin. */
|
|
12
|
+
function resolvedOf(returnTo) {
|
|
13
|
+
if (!URL.canParse(returnTo, OWN_ORIGIN)) {
|
|
14
|
+
return undefined;
|
|
15
|
+
}
|
|
16
|
+
const page = new URL(returnTo, OWN_ORIGIN);
|
|
17
|
+
return page.origin === OWN_ORIGIN ? `${page.pathname}${page.search}${page.hash}` : undefined;
|
|
18
|
+
}
|
|
19
|
+
/** Whether a path begins as a browser reads another site: two slashes, or a slash and a backslash. */
|
|
20
|
+
function isAnotherSite(path) {
|
|
21
|
+
return path.startsWith('//') || path.startsWith('/\\');
|
|
22
|
+
}
|
|
23
|
+
/** The page of the gateway's own with its path, query and hash; undefined for anything else. */
|
|
24
|
+
export function ownPageOf(returnTo) {
|
|
25
|
+
if (!returnTo.startsWith('/')) {
|
|
26
|
+
return undefined;
|
|
27
|
+
}
|
|
28
|
+
const resolved = resolvedOf(returnTo);
|
|
29
|
+
if (resolved === undefined || isAnotherSite(resolved)) {
|
|
30
|
+
return undefined;
|
|
31
|
+
}
|
|
32
|
+
// Belt and braces: the value kept, resolved once more, is still the gateway's own and unchanged.
|
|
33
|
+
return resolvedOf(resolved) === resolved ? resolved : undefined;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=own-page.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"own-page.js","sourceRoot":"","sources":["../../../src/core/sign-in/own-page.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,8HAA8H;AAC9H,MAAM,UAAU,GAAG,yBAAyB,CAAC;AAE7C,+FAA+F;AAC/F,SAAS,UAAU,CAAC,QAAgB;IAClC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,CAAC;QACxC,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAC3C,OAAO,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AAC/F,CAAC;AAED,sGAAsG;AACtG,SAAS,aAAa,CAAC,IAAY;IACjC,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;AACzD,CAAC;AAED,gGAAgG;AAChG,MAAM,UAAU,SAAS,CAAC,QAAgB;IACxC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IACtC,IAAI,QAAQ,KAAK,SAAS,IAAI,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,iGAAiG;IACjG,OAAO,UAAU,CAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;AAClE,CAAC"}
|
|
@@ -2,16 +2,12 @@
|
|
|
2
2
|
* A person signs in to the gateway through pagasae, the one identity
|
|
3
3
|
* provider (decision 0054): the gateway is its OpenID Connect client, and
|
|
4
4
|
* the person acts in the fleet as their account, by its account token, from
|
|
5
|
-
* their MCP client
|
|
5
|
+
* their MCP client.
|
|
6
6
|
*/
|
|
7
7
|
import type { FleetId, ShipId } from '@aeolus-fleet/common';
|
|
8
8
|
import type { Result } from '../shared/result.js';
|
|
9
|
-
/**
|
|
10
|
-
|
|
11
|
-
* for an MCP client, its authorization request; for the gateway's pages, the
|
|
12
|
-
* page to go back to.
|
|
13
|
-
*/
|
|
14
|
-
export type PendingSignIn = ClientSignIn | PageSignIn;
|
|
9
|
+
/** A person's sign-in at pagasae under way for an MCP client, with the gateway's PKCE verifier and the client's authorization request. */
|
|
10
|
+
export type PendingSignIn = ClientSignIn;
|
|
15
11
|
interface SignInUnderWay {
|
|
16
12
|
readonly verifier: string;
|
|
17
13
|
/** The secret the browser that started the sign-in holds, so no other browser finishes it (login CSRF). */
|
|
@@ -23,11 +19,6 @@ export interface ClientSignIn extends SignInUnderWay {
|
|
|
23
19
|
/** What the person picked the client to act as: their account, or a party they ask access for (Q1 a). */
|
|
24
20
|
readonly holder: SignInHolder;
|
|
25
21
|
}
|
|
26
|
-
export interface PageSignIn extends SignInUnderWay {
|
|
27
|
-
readonly holder: 'page';
|
|
28
|
-
/** The gateway's own path the browser goes back to once signed in. */
|
|
29
|
-
readonly returnTo: string;
|
|
30
|
-
}
|
|
31
22
|
/** What a client acts as once its person signed in: the account itself, or an outside party (decision 0056). */
|
|
32
23
|
export type SignInHolder = 'account' | 'party';
|
|
33
24
|
/**
|
|
@@ -100,16 +91,4 @@ export interface AccountGrants {
|
|
|
100
91
|
}, tokens: Partial<Pick<AccountGrant, 'refreshToken' | 'accountToken' | 'accountTokenExpiresAt' | 'personShipId' | 'scopes'>>): Promise<void>;
|
|
101
92
|
end(fleetId: FleetId, grantId: string): Promise<void>;
|
|
102
93
|
}
|
|
103
|
-
/** A browser signed in to the gateway's pages: the account's grant it acts by. */
|
|
104
|
-
export interface PageSession {
|
|
105
|
-
readonly fleetId: FleetId;
|
|
106
|
-
readonly grantId: string;
|
|
107
|
-
}
|
|
108
|
-
/** Outbound port: the page session a browser holds in the gateway's own cookie, sealed so no one forges or reads it. */
|
|
109
|
-
export interface PageSessions {
|
|
110
|
-
/** The cookie's value for the session. */
|
|
111
|
-
seal(session: PageSession): string;
|
|
112
|
-
/** The session a Cookie header carries; none when it carries none the gateway sealed. */
|
|
113
|
-
inCookie(cookie: string): PageSession | undefined;
|
|
114
|
-
}
|
|
115
94
|
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The gateway's own ship taking what waits for it, one round at a time: each
|
|
3
|
+
* receive waits while the fleet waits for a delivery, so argo's ping is
|
|
4
|
+
* answered as it comes (blueprint, "Ping"); stopping ends the wait.
|
|
5
|
+
*/
|
|
6
|
+
import type { FastifyBaseLogger } from 'fastify';
|
|
7
|
+
import type { AnswerPings } from './core/connection/answer-pings.js';
|
|
8
|
+
import type { Sleep } from './core/mcp-out/run-party.js';
|
|
9
|
+
export interface PingWorker {
|
|
10
|
+
/** Runs a round every interval until it stops. */
|
|
11
|
+
start(): void;
|
|
12
|
+
/** Stops, once the round under way ended. */
|
|
13
|
+
stop(): Promise<void>;
|
|
14
|
+
}
|
|
15
|
+
export declare function createPingWorker(deps: {
|
|
16
|
+
answerPings: AnswerPings;
|
|
17
|
+
sleep: Sleep;
|
|
18
|
+
intervalMs: number;
|
|
19
|
+
log: FastifyBaseLogger;
|
|
20
|
+
}): PingWorker;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export function createPingWorker(deps) {
|
|
2
|
+
const stopping = new AbortController();
|
|
3
|
+
let running = Promise.resolve();
|
|
4
|
+
const round = async () => {
|
|
5
|
+
try {
|
|
6
|
+
const { acked, refused } = await deps.answerPings(stopping.signal);
|
|
7
|
+
for (const { contentType, senderShipId } of acked) {
|
|
8
|
+
deps.log.info({ contentType, senderShipId }, "the gateway's ship acked a message it does not handle");
|
|
9
|
+
}
|
|
10
|
+
if (refused > 0) {
|
|
11
|
+
deps.log.debug({ refused }, "the fleet refused some calls of the gateway's ship's inbox");
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
catch (error) {
|
|
15
|
+
deps.log.error({ err: error }, 'ping round failed');
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
return {
|
|
19
|
+
start: () => {
|
|
20
|
+
running = (async () => {
|
|
21
|
+
while (!stopping.signal.aborted) {
|
|
22
|
+
await round();
|
|
23
|
+
await deps.sleep(deps.intervalMs, stopping.signal);
|
|
24
|
+
}
|
|
25
|
+
})();
|
|
26
|
+
},
|
|
27
|
+
stop: async () => {
|
|
28
|
+
stopping.abort();
|
|
29
|
+
await running;
|
|
30
|
+
},
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=ping-worker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ping-worker.js","sourceRoot":"","sources":["../src/ping-worker.ts"],"names":[],"mappings":"AAiBA,MAAM,UAAU,gBAAgB,CAAC,IAA4F;IAC3H,MAAM,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;IACvC,IAAI,OAAO,GAAkB,OAAO,CAAC,OAAO,EAAE,CAAC;IAE/C,MAAM,KAAK,GAAG,KAAK,IAAmB,EAAE;QACtC,IAAI,CAAC;YACH,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACnE,KAAK,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,IAAI,KAAK,EAAE,CAAC;gBAClD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,YAAY,EAAE,EAAE,uDAAuD,CAAC,CAAC;YACxG,CAAC;YACD,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;gBAChB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,EAAE,4DAA4D,CAAC,CAAC;YAC5F,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,mBAAmB,CAAC,CAAC;QACtD,CAAC;IACH,CAAC,CAAC;IAEF,OAAO;QACL,KAAK,EAAE,GAAG,EAAE;YACV,OAAO,GAAG,CAAC,KAAK,IAAI,EAAE;gBACpB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBAChC,MAAM,KAAK,EAAE,CAAC;oBACd,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACrD,CAAC;YACH,CAAC,CAAC,EAAE,CAAC;QACP,CAAC;QACD,IAAI,EAAE,KAAK,IAAI,EAAE;YACf,QAAQ,CAAC,KAAK,EAAE,CAAC;YACjB,MAAM,OAAO,CAAC;QAChB,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aeolus-fleet/gateway",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.29.1",
|
|
4
4
|
"description": "Aeolus gateway: outside MCP servers and clients join a fleet as ships, through one gateway beside core.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai-agents",
|
|
@@ -23,6 +23,10 @@
|
|
|
23
23
|
},
|
|
24
24
|
"files": [
|
|
25
25
|
"dist",
|
|
26
|
+
"web/.next",
|
|
27
|
+
"!web/.next/cache",
|
|
28
|
+
"!web/.next/dev",
|
|
29
|
+
"web/next.config.ts",
|
|
26
30
|
"prisma.config.ts",
|
|
27
31
|
"src/adapters/prisma/schema.prisma",
|
|
28
32
|
"src/adapters/prisma/migrations"
|
|
@@ -30,8 +34,8 @@
|
|
|
30
34
|
"scripts": {
|
|
31
35
|
"postinstall": "prisma generate",
|
|
32
36
|
"generate": "prisma generate",
|
|
33
|
-
"build": "tsc --project tsconfig.build.json",
|
|
34
|
-
"typecheck": "tsc --project tsconfig.json",
|
|
37
|
+
"build": "tsc --project tsconfig.build.json && next build web",
|
|
38
|
+
"typecheck": "tsc --project tsconfig.json && next typegen web && tsc --project web/tsconfig.json",
|
|
35
39
|
"lint": "eslint --max-warnings 0 .",
|
|
36
40
|
"test": "vitest run",
|
|
37
41
|
"test:unit": "vitest run --project '*:unit'",
|
|
@@ -40,30 +44,44 @@
|
|
|
40
44
|
"db:migrate": "tsx --env-file-if-exists=.env src/bin/aeolus-gateway.ts migrate"
|
|
41
45
|
},
|
|
42
46
|
"dependencies": {
|
|
43
|
-
"@aeolus-fleet/common": "^0.
|
|
47
|
+
"@aeolus-fleet/common": "^0.29.1",
|
|
48
|
+
"@base-ui/react": "^1.9.0",
|
|
44
49
|
"@fastify/websocket": "^11.3.4",
|
|
45
50
|
"@modelcontextprotocol/client": "^2.3.1",
|
|
46
51
|
"@modelcontextprotocol/server": "^2.3.1",
|
|
47
52
|
"@prisma/adapter-pg": "^7.10.1",
|
|
48
53
|
"@prisma/client": "^7.10.1",
|
|
54
|
+
"@trpc/client": "^11.19.0",
|
|
49
55
|
"@trpc/server": "^11.19.0",
|
|
56
|
+
"class-variance-authority": "^0.7.1",
|
|
57
|
+
"clsx": "^2.1.1",
|
|
50
58
|
"fastify": "^5.12.7",
|
|
59
|
+
"lucide-react": "^1.61.0",
|
|
60
|
+
"next": "^16.4.2",
|
|
51
61
|
"pg": "^8.23.1",
|
|
52
62
|
"prisma": "^7.10.1",
|
|
63
|
+
"react": "^19.3.1",
|
|
64
|
+
"react-dom": "^19.3.1",
|
|
65
|
+
"tailwind-merge": "^3.7.0",
|
|
53
66
|
"zod": "^4.6.5"
|
|
54
67
|
},
|
|
55
68
|
"devDependencies": {
|
|
56
|
-
"@aeolus-fleet/core": "^0.
|
|
69
|
+
"@aeolus-fleet/core": "^0.29.1",
|
|
57
70
|
"@eslint/js": "^10.0.1",
|
|
58
71
|
"@modelcontextprotocol/ext-tasks": "0.2.2",
|
|
72
|
+
"@tailwindcss/postcss": "^4.3.3",
|
|
59
73
|
"@testcontainers/postgresql": "^12.2.0",
|
|
60
74
|
"@types/node": "^26.6.3",
|
|
61
75
|
"@types/pg": "^8.23.1",
|
|
76
|
+
"@types/react": "^19.3.0",
|
|
77
|
+
"@types/react-dom": "^19.3.0",
|
|
62
78
|
"@types/ws": "^8.18.2",
|
|
63
79
|
"eslint": "^10.11.0",
|
|
64
80
|
"eslint-plugin-check-file": "^3.3.2",
|
|
81
|
+
"tailwindcss": "^4.3.3",
|
|
65
82
|
"testcontainers": "^12.2.0",
|
|
66
83
|
"tsx": "^4.23.15",
|
|
84
|
+
"tw-animate-css": "^1.4.0",
|
|
67
85
|
"typescript": "~6.0.3",
|
|
68
86
|
"typescript-eslint": "^8.71.0",
|
|
69
87
|
"vitest": "^5.0.3",
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
-- A person's inbox lists what they opened with when it was sent. A row opened before has only when it was opened.
|
|
2
|
+
ALTER TABLE "opened_deliveries" ADD COLUMN "sent_at" TIMESTAMPTZ(3);
|
|
3
|
+
UPDATE "opened_deliveries" SET "sent_at" = "opened_at";
|
|
4
|
+
ALTER TABLE "opened_deliveries" ALTER COLUMN "sent_at" SET NOT NULL;
|
|
@@ -232,7 +232,7 @@ model PersonCrew {
|
|
|
232
232
|
@@map("person_crews")
|
|
233
233
|
}
|
|
234
234
|
|
|
235
|
-
/// A delivery a person opened, kept until they deal with it, so their answer finds its message and sender (Q28 (a)).
|
|
235
|
+
/// A delivery a person opened, kept until they deal with it, so their answer finds its message and sender and their inbox lists it (Q28 (a)).
|
|
236
236
|
model OpenedDelivery {
|
|
237
237
|
fleetId String @map("fleet_id")
|
|
238
238
|
shipId String @map("ship_id")
|
|
@@ -241,6 +241,7 @@ model OpenedDelivery {
|
|
|
241
241
|
senderShipId String @map("sender_ship_id")
|
|
242
242
|
from String
|
|
243
243
|
title String
|
|
244
|
+
sentAt DateTime @map("sent_at") @db.Timestamptz(3)
|
|
244
245
|
openedAt DateTime @map("opened_at") @db.Timestamptz(3)
|
|
245
246
|
|
|
246
247
|
@@id([fleetId, shipId, deliveryId])
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
MLIzjhz2u5r5gyyuciHvf
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
{
|
|
2
|
+
"/_global-error/page": "/_global-error",
|
|
3
|
+
"/_not-found/page": "/_not-found",
|
|
4
|
+
"/authorize/failed/page": "/authorize/failed",
|
|
5
|
+
"/authorize/pick/page": "/authorize/pick",
|
|
6
|
+
"/authorize/waiting/approval/page": "/authorize/waiting/approval",
|
|
7
|
+
"/outside-parties/[name]/change/page": "/outside-parties/[name]/change",
|
|
8
|
+
"/outside-parties/[name]/page": "/outside-parties/[name]",
|
|
9
|
+
"/outside-parties/[name]/retire/page": "/outside-parties/[name]/retire",
|
|
10
|
+
"/outside-parties/add/page": "/outside-parties/add",
|
|
11
|
+
"/outside-parties/page": "/outside-parties",
|
|
12
|
+
"/overview/changes/route": "/overview/changes",
|
|
13
|
+
"/overview/page": "/overview",
|
|
14
|
+
"/overview/requests/[requestId]/page": "/overview/requests/[requestId]",
|
|
15
|
+
"/parties/page": "/parties",
|
|
16
|
+
"/sign-in/failed/page": "/sign-in/failed"
|
|
17
|
+
}
|