@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
package/dist/app.js
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* cookie, and the hosting service's, with the installation token.
|
|
5
5
|
*/
|
|
6
6
|
import { randomUUID } from 'node:crypto';
|
|
7
|
+
import { FLEET_HEADER, idSchema } from '@aeolus-fleet/common';
|
|
7
8
|
import { fastifyTRPCPlugin } from '@trpc/server/adapters/fastify';
|
|
8
9
|
import Fastify, {} from 'fastify';
|
|
9
10
|
import { sha256RequestHasher } from './adapters/crypto/request-hasher.js';
|
|
@@ -27,15 +28,10 @@ import { createRunParty } from './core/mcp-out/run-party.js';
|
|
|
27
28
|
import { createPrismaCalls } from './adapters/prisma/calls.js';
|
|
28
29
|
import { sleep } from './adapters/timers/sleep.js';
|
|
29
30
|
import { createPartyWorkers } from './party-workers.js';
|
|
30
|
-
import { gatewayRouter } from './adapters/trpc/router.js';
|
|
31
|
-
import { registerOutsidePartiesPage } from './adapters/http/outside-parties-page.js';
|
|
32
|
-
import { registerAddServerPage } from './adapters/http/add-server-page.js';
|
|
31
|
+
import { gatewayRouter, WAITING_SECRET_HEADER } from './adapters/trpc/router.js';
|
|
33
32
|
import { registerFrontDoor } from './adapters/http/front-door.js';
|
|
34
|
-
import {
|
|
35
|
-
import { createChangeHub, registerLive } from './adapters/http/live.js';
|
|
36
|
-
import { overviewLivePages, registerOverviewPage } from './adapters/http/overview-page.js';
|
|
33
|
+
import { createChangeHub } from './adapters/http/live.js';
|
|
37
34
|
import { listenToChanges } from './adapters/prisma/changes.js';
|
|
38
|
-
import { registerPartiesPage } from './adapters/http/parties-page.js';
|
|
39
35
|
import { registerOAuthRoutes } from './adapters/http/oauth-routes.js';
|
|
40
36
|
import { registerMcpEndpoint } from './adapters/http/mcp-endpoint.js';
|
|
41
37
|
import { createShipAliases } from './adapters/crypto/ship-aliases.js';
|
|
@@ -52,7 +48,6 @@ import { createPrismaAuthorizationCodes, createPrismaIssuedTokens, createPrismaO
|
|
|
52
48
|
import { createExchangeToken } from './core/oauth/exchange-token.js';
|
|
53
49
|
import { createSignInSeals } from './adapters/crypto/sign-in-seals.js';
|
|
54
50
|
import { createWaitingSeals } from './adapters/crypto/waiting-seals.js';
|
|
55
|
-
import { createPageSessions, pageCookieOf } from './adapters/crypto/page-sessions.js';
|
|
56
51
|
import { createRequestIds } from './adapters/crypto/request-ids.js';
|
|
57
52
|
import { createAskForClient } from './core/requests/ask-for-client.js';
|
|
58
53
|
import { createAskForServer } from './core/requests/ask-for-server.js';
|
|
@@ -62,23 +57,33 @@ import { createAskOwners } from './core/requests/ask-owners.js';
|
|
|
62
57
|
import { createPrismaOwnerQuestions } from './adapters/prisma/owner-questions.js';
|
|
63
58
|
import { createPrismaOutcomeNotices } from './adapters/prisma/outcome-notices.js';
|
|
64
59
|
import { createOutcomeWorker } from './outcome-worker.js';
|
|
60
|
+
import { createPingWorker } from './ping-worker.js';
|
|
65
61
|
import { createOpenRequest } from './core/requests/open-request.js';
|
|
66
62
|
import { createReadWaiting } from './core/requests/read-waiting.js';
|
|
67
63
|
import { createWatchWaiting } from './core/requests/watch-waiting.js';
|
|
68
64
|
import { createPagasae } from './adapters/pagasae/pagasae-client.js';
|
|
65
|
+
import { createSharedSignIn } from './adapters/pagasae/shared-sign-in.js';
|
|
66
|
+
import { createAccountSignInSeals } from './adapters/crypto/account-sign-in-seals.js';
|
|
67
|
+
import { cookieValueOf, registerAccountSignIn } from './adapters/http/account-sign-in-routes.js';
|
|
68
|
+
import { createAccountInView } from './core/account-sign-in/account-in-view.js';
|
|
69
|
+
import { createAccountOfSignIn } from './core/account-sign-in/account-of-sign-in.js';
|
|
70
|
+
import { createCompleteAccountSignIn } from './core/account-sign-in/complete-account-sign-in.js';
|
|
71
|
+
import { SHARED_SIGN_IN_COOKIE } from './core/account-sign-in/ports.js';
|
|
72
|
+
import { createSignOutAccount } from './core/account-sign-in/sign-out-account.js';
|
|
73
|
+
import { createStartAccountSignIn } from './core/account-sign-in/start-account-sign-in.js';
|
|
69
74
|
import { createPrismaAccountGrants } from './adapters/prisma/account-grants.js';
|
|
70
75
|
import { createCompleteSignIn } from './core/sign-in/complete-sign-in.js';
|
|
71
76
|
import { createStartSignIn } from './core/sign-in/start-sign-in.js';
|
|
72
|
-
import { createStartPageSignIn } from './core/sign-in/start-page-sign-in.js';
|
|
73
|
-
import { createSignOut } from './core/sign-in/sign-out.js';
|
|
74
77
|
import { createAccountTokenOf } from './core/sign-in/account-token.js';
|
|
75
78
|
import { err } from './core/shared/result.js';
|
|
76
79
|
import { createEndSignIns } from './core/sign-in/end-sign-ins.js';
|
|
77
80
|
import { createAnswerDelivery } from './core/people/answer-delivery.js';
|
|
78
81
|
import { createCrewPersonShip } from './core/people/crew-person-ship.js';
|
|
79
82
|
import { createDoneDelivery } from './core/people/done-delivery.js';
|
|
83
|
+
import { createListShips } from './core/people/list-ships.js';
|
|
80
84
|
import { createOpenDelivery } from './core/people/open-delivery.js';
|
|
81
85
|
import { createReadInbox } from './core/people/read-inbox.js';
|
|
86
|
+
import { createSendMessage } from './core/people/send-message.js';
|
|
82
87
|
import { createPrismaOpenedDeliveries } from './adapters/prisma/opened-deliveries.js';
|
|
83
88
|
import { createPrismaPersonCrews } from './adapters/prisma/person-crews.js';
|
|
84
89
|
import { createReadAuthorization } from './core/oauth/read-authorization.js';
|
|
@@ -87,6 +92,7 @@ import { createFleetNetwork } from './adapters/fleet/fleet-network.js';
|
|
|
87
92
|
import { createPrismaOutsidePartySwitches } from './adapters/prisma/outside-party-switches.js';
|
|
88
93
|
import { createReadOutsideParties, createSetOutsideParties } from './core/outside-parties/set-outside-parties.js';
|
|
89
94
|
import { createConnect } from './core/connection/connect.js';
|
|
95
|
+
import { createAnswerPings } from './core/connection/answer-pings.js';
|
|
90
96
|
import { createReadConnection } from './core/connection/read-connection.js';
|
|
91
97
|
import { createDeleteFleet } from './core/installation/delete-fleet.js';
|
|
92
98
|
import { createReadFleet } from './core/installation/read-fleet.js';
|
|
@@ -95,11 +101,13 @@ import { createSetFleetEnabled } from './core/installation/set-fleet-enabled.js'
|
|
|
95
101
|
import { createAuthenticateOperator } from './core/operator/authenticate-operator.js';
|
|
96
102
|
import { createApproveClientParty, createApproveParty } from './core/parties/approve-party.js';
|
|
97
103
|
import { createCrewParty } from './core/parties/crew-party.js';
|
|
104
|
+
import { createListOwnerChoices } from './core/parties/list-owner-choices.js';
|
|
98
105
|
import { createListParties, createReadParty } from './core/parties/list-parties.js';
|
|
99
106
|
import { createAuthenticateActor } from './core/actors/authenticate-actor.js';
|
|
100
107
|
import { createRetireParty } from './core/parties/retire-party.js';
|
|
101
108
|
import { createChangePartyOwner, createChangePartyScopes } from './core/parties/change-party.js';
|
|
102
109
|
import { logRefusedFacts } from './adapters/fleet/logged-verified-facts.js';
|
|
110
|
+
import { createFleetShips } from './adapters/fleet/fleet-ships.js';
|
|
103
111
|
import { createProxyShipReads } from './adapters/fleet/proxy-ship-reads.js';
|
|
104
112
|
import { createProxyShipsAsActor } from './adapters/fleet/proxy-ships-as-actor.js';
|
|
105
113
|
import { createCredentialOf } from './core/actors/credential-of.js';
|
|
@@ -226,6 +234,7 @@ export function createGatewayApp(options) {
|
|
|
226
234
|
const proxyShipReads = createProxyShipReads(options.fleetUrl);
|
|
227
235
|
const listParties = createListParties({ parties, fleet: proxyShipReads, credentialOf: (actor, sent) => credentialOf(actor, sent) });
|
|
228
236
|
const readParty = createReadParty({ parties, fleet: proxyShipReads, credentialOf: (actor, sent) => credentialOf(actor, sent) });
|
|
237
|
+
const listOwnerChoices = createListOwnerChoices({ ships: createFleetShips(options.fleetUrl), credentialOf: (actor, sent) => credentialOf(actor, sent) });
|
|
229
238
|
// An account's credential needs its account token, set up with the sign-in below.
|
|
230
239
|
const setOutsidePartiesOnly = createSetOutsideParties({ switches: outsidePartySwitches, network: createFleetNetwork(options.fleetUrl), clock, credentialOf: (actor, sent) => credentialOf(actor, sent) });
|
|
231
240
|
// Off stops the fleet's workers; on starts its crewed parties' workers again.
|
|
@@ -257,7 +266,6 @@ export function createGatewayApp(options) {
|
|
|
257
266
|
const grants = createPrismaAccountGrants(prisma);
|
|
258
267
|
const pendingRequests = createPrismaPendingRequests(prisma);
|
|
259
268
|
const waitings = createWaitingSeals(options.gatewaySecret);
|
|
260
|
-
const pageSessions = createPageSessions(options.gatewaySecret);
|
|
261
269
|
const issuing = { codes: authorizationCodes, secrets: oauthSecrets, clock, issuer };
|
|
262
270
|
const openRequestOnly = createOpenRequest({ requests: pendingRequests, ids: createRequestIds(), clock });
|
|
263
271
|
// A request opened has the gateway's owner asked at once, not at the next round.
|
|
@@ -266,7 +274,7 @@ export function createGatewayApp(options) {
|
|
|
266
274
|
outcomes.tellNow();
|
|
267
275
|
return opened;
|
|
268
276
|
};
|
|
269
|
-
// The
|
|
277
|
+
// The web app's pages and the waiting page hear each committed change to the fleet's requests, from whichever gateway made it.
|
|
270
278
|
const hub = createChangeHub();
|
|
271
279
|
const signIn = pagasae === undefined
|
|
272
280
|
? undefined
|
|
@@ -282,7 +290,6 @@ export function createGatewayApp(options) {
|
|
|
282
290
|
clock,
|
|
283
291
|
issuer,
|
|
284
292
|
servesFleet: async (fleetId) => (await connections.find(fleetId)) !== undefined && (await isServed(fleetId)),
|
|
285
|
-
sessions: pageSessions,
|
|
286
293
|
askForClient: createAskForClient({
|
|
287
294
|
parties,
|
|
288
295
|
requests: pendingRequests,
|
|
@@ -296,7 +303,6 @@ export function createGatewayApp(options) {
|
|
|
296
303
|
watchWaiting: createWatchWaiting({ waitings, requests: pendingRequests, parties, clock }),
|
|
297
304
|
hub,
|
|
298
305
|
clock,
|
|
299
|
-
pages: { start: createStartPageSignIn({ seals, pagasae, secrets: oauthSecrets, clock }), signOut: createSignOut({ grants }), sessions: pageSessions },
|
|
300
306
|
};
|
|
301
307
|
registerOAuthRoutes(server, {
|
|
302
308
|
...(signIn === undefined ? {} : { signIn }),
|
|
@@ -313,10 +319,12 @@ export function createGatewayApp(options) {
|
|
|
313
319
|
const opened = createPrismaOpenedDeliveries(prisma);
|
|
314
320
|
const asCrew = { crewPersonShip: createCrewPersonShip({ accountTokenOf, connections, door, crews, clock }), crews, door: door.person };
|
|
315
321
|
return {
|
|
316
|
-
readInbox: createReadInbox(asCrew),
|
|
322
|
+
readInbox: createReadInbox({ ...asCrew, opened }),
|
|
317
323
|
openDelivery: createOpenDelivery({ ...asCrew, opened, clock }),
|
|
318
324
|
answerDelivery: createAnswerDelivery({ ...asCrew, opened }),
|
|
319
325
|
doneDelivery: createDoneDelivery({ ...asCrew, opened }),
|
|
326
|
+
listShips: createListShips(asCrew),
|
|
327
|
+
sendMessage: createSendMessage({ ...asCrew, keys: { newIdempotencyKey: randomUUID } }),
|
|
320
328
|
askForServer: createAskForServer({ grants, parties, openRequest, servesOutsideParties }),
|
|
321
329
|
};
|
|
322
330
|
};
|
|
@@ -332,8 +340,23 @@ export function createGatewayApp(options) {
|
|
|
332
340
|
...(person === undefined ? {} : { person }),
|
|
333
341
|
});
|
|
334
342
|
// What every call of the API reads, from the request's console session and installation token.
|
|
335
|
-
|
|
336
|
-
const
|
|
343
|
+
// The pages' shared account sign-in, where the gateway is an app at pagasae (header design H5); else no shared sign-in names anyone.
|
|
344
|
+
const signIns = options.pagasae === undefined || options.pagasaeApp === undefined
|
|
345
|
+
? undefined
|
|
346
|
+
: createSharedSignIn({ url: options.pagasae.url, ...options.pagasaeApp, redirectUri: `${issuer}/sign-in/done`, timeoutMs: PAGASAE_TIMEOUT_MS });
|
|
347
|
+
const accountOf = signIns === undefined ? Object.assign(() => Promise.resolve(err({ kind: 'signedOut' })), { forget: () => undefined }) : createAccountOfSignIn({ signIns, clock });
|
|
348
|
+
const accountInView = signIns === undefined ? undefined : createAccountInView({ signIns, accountOf });
|
|
349
|
+
if (signIns !== undefined) {
|
|
350
|
+
const accountSeals = createAccountSignInSeals(options.gatewaySecret);
|
|
351
|
+
registerAccountSignIn(server, {
|
|
352
|
+
issuer,
|
|
353
|
+
start: createStartAccountSignIn({ seals: accountSeals, signIns, secrets: oauthSecrets, clock }),
|
|
354
|
+
complete: createCompleteAccountSignIn({ seals: accountSeals, signIns, clock }),
|
|
355
|
+
signOut: createSignOutAccount({ signIns, accountOf }),
|
|
356
|
+
});
|
|
357
|
+
}
|
|
358
|
+
const credentialOf = createCredentialOf({ connections });
|
|
359
|
+
const authenticateActor = createAuthenticateActor({ authenticateOperator, door, connections, accountOf });
|
|
337
360
|
const outcomes = createOutcomeWorker({
|
|
338
361
|
expireRequests: createExpireRequests({ requests: pendingRequests, clock }),
|
|
339
362
|
tellOutcomes: createTellOutcomes({ notices: createPrismaOutcomeNotices(prisma), requests: pendingRequests, connections, sender: door }),
|
|
@@ -342,6 +365,7 @@ export function createGatewayApp(options) {
|
|
|
342
365
|
intervalMs: OUTCOME_ROUND_MS,
|
|
343
366
|
log: server.log,
|
|
344
367
|
});
|
|
368
|
+
const pings = createPingWorker({ answerPings: createAnswerPings({ connections, inbox: door.gatewayInbox }), sleep, intervalMs: POLL_MS, log: server.log });
|
|
345
369
|
const decideRequestOnly = createDecideRequest({ requests: pendingRequests, approveParty, approveClientParty, clock });
|
|
346
370
|
// A decided request's outcomes are told at once, not at the next round.
|
|
347
371
|
const decideRequest = async (input) => {
|
|
@@ -354,6 +378,9 @@ export function createGatewayApp(options) {
|
|
|
354
378
|
const contextFor = (sent) => ({
|
|
355
379
|
...sent,
|
|
356
380
|
authenticateActor,
|
|
381
|
+
changes: hub,
|
|
382
|
+
accountInView,
|
|
383
|
+
accountApps: signIns === undefined ? undefined : (signIn) => signIns.apps(signIn),
|
|
357
384
|
isServed,
|
|
358
385
|
heldConnection,
|
|
359
386
|
installation: { mode: installation, token: options.installationToken },
|
|
@@ -370,6 +397,7 @@ export function createGatewayApp(options) {
|
|
|
370
397
|
changePartyOwner,
|
|
371
398
|
changePartyScopes,
|
|
372
399
|
readParty,
|
|
400
|
+
listOwnerChoices,
|
|
373
401
|
checkServer,
|
|
374
402
|
readPartyTools,
|
|
375
403
|
stateParty,
|
|
@@ -381,6 +409,8 @@ export function createGatewayApp(options) {
|
|
|
381
409
|
listMine: createListMine({ requests: pendingRequests, clock }),
|
|
382
410
|
decideRequest,
|
|
383
411
|
...(person === undefined ? {} : { person }),
|
|
412
|
+
// Only a gateway that signs people in connects MCP clients, so only it shows their authorize pages.
|
|
413
|
+
...(signIn === undefined ? {} : { readAuthorization, watchWaiting: signIn.watchWaiting }),
|
|
384
414
|
});
|
|
385
415
|
const trpc = {
|
|
386
416
|
prefix: '/trpc',
|
|
@@ -394,23 +424,15 @@ export function createGatewayApp(options) {
|
|
|
394
424
|
createContext: ({ req }) => contextFor({
|
|
395
425
|
cookie: req.headers.cookie,
|
|
396
426
|
crewToken: req.headers.authorization?.startsWith(BEARER) === true ? req.headers.authorization.slice(BEARER.length) : undefined,
|
|
427
|
+
signIn: cookieValueOf(SHARED_SIGN_IN_COOKIE, req.headers.cookie),
|
|
428
|
+
fleetInView: idSchema('fleet').safeParse(req.headers[FLEET_HEADER]).data,
|
|
397
429
|
installationTokenSent: typeof req.headers['x-aeolus-installation-token'] === 'string' ? req.headers['x-aeolus-installation-token'] : undefined,
|
|
430
|
+
waitingSecret: typeof req.headers[WAITING_SECRET_HEADER] === 'string' ? req.headers[WAITING_SECRET_HEADER] : undefined,
|
|
398
431
|
}),
|
|
399
432
|
},
|
|
400
433
|
};
|
|
401
434
|
void server.register(fastifyTRPCPlugin, trpc);
|
|
402
|
-
|
|
403
|
-
// The pages are accounts only (Thomas, 20 Oct): only the page session's cookie reaches them, never the console's.
|
|
404
|
-
const pageContextFor = (cookie) => contextFor({ cookie: pageCookieOf(cookie), crewToken: undefined, installationTokenSent: undefined });
|
|
405
|
-
// Pages sign people in through pagasae; a gateway that signs no one in says so.
|
|
406
|
-
const pageSignIn = pagasae === undefined ? 'none' : 'pages';
|
|
407
|
-
registerPartiesPage(server, { contextFor: pageContextFor, signIn: pageSignIn });
|
|
408
|
-
registerOutsidePartiesPage(server, { contextFor: pageContextFor, signIn: pageSignIn });
|
|
409
|
-
registerAddServerPage(server, { contextFor: pageContextFor, signIn: pageSignIn });
|
|
410
|
-
registerOutsidePartyPage(server, { contextFor: pageContextFor, signIn: pageSignIn });
|
|
411
|
-
registerOverviewPage(server, { contextFor: pageContextFor, signIn: pageSignIn, clock });
|
|
412
|
-
registerFrontDoor(server);
|
|
413
|
-
registerLive(server, { contextFor: pageContextFor, hub, pages: overviewLivePages({ clock }) });
|
|
435
|
+
registerFrontDoor(server, options.web === undefined ? {} : { web: options.web });
|
|
414
436
|
let changes;
|
|
415
437
|
server.addHook('onReady', async () => {
|
|
416
438
|
changes = await listenToChanges(options.databaseUrl, { onChange: hub.publish, onResync: hub.resync });
|
|
@@ -436,10 +458,12 @@ export function createGatewayApp(options) {
|
|
|
436
458
|
}
|
|
437
459
|
}
|
|
438
460
|
outcomes.start();
|
|
461
|
+
pings.start();
|
|
439
462
|
return restored;
|
|
440
463
|
},
|
|
441
464
|
close: async () => {
|
|
442
465
|
await outcomes.stop();
|
|
466
|
+
await pings.stop();
|
|
443
467
|
await workers.stop();
|
|
444
468
|
await server.close();
|
|
445
469
|
},
|
package/dist/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EAAE,iBAAiB,EAAiC,MAAM,+BAA+B,CAAC;AACjG,OAAO,OAAO,EAAE,EAAmD,MAAM,SAAS,CAAC;AAEnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,uCAAuC,CAAC;AACpF,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAAE,gCAAgC,EAAE,MAAM,4CAA4C,CAAC;AAC9F,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAoC,MAAM,2BAA2B,CAAC;AAC5F,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAE3F,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,6BAA6B,EAAE,MAAM,2CAA2C,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,6BAA6B,EAAE,MAAM,+CAA+C,CAAC;AAC9F,OAAO,EAAE,8BAA8B,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AACvI,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACtF,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAElF,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAoB,MAAM,iCAAiC,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAuB,MAAM,iCAAiC,CAAC;AAC5F,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,4BAA4B,EAAE,MAAM,wCAAwC,CAAC;AACtF,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,gCAAgC,EAAE,MAAM,6CAA6C,CAAC;AAC/F,OAAO,EAAE,wBAAwB,EAAE,uBAAuB,EAA0B,MAAM,+CAA+C,CAAC;AAC1I,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAuB,MAAM,sCAAsC,CAAC;AACjG,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAExE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAC;AACtF,OAAO,EAAE,wBAAwB,EAAE,kBAAkB,EAA8C,MAAM,iCAAiC,CAAC;AAC3I,OAAO,EAAE,eAAe,EAAkB,MAAM,8BAA8B,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEpF,OAAO,EAAE,uBAAuB,EAAc,MAAM,qCAAqC,CAAC;AAC1F,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACjG,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,EAAE,kBAAkB,EAAwB,MAAM,gCAAgC,CAAC;AAC1F,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,2BAA2B,EAAE,MAAM,uCAAuC,CAAC;AAEpF,MAAM,CAAC,MAAM,WAAW,GAAU,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;AAE5D,8DAA8D;AAC9D,MAAM,wBAAwB,GAAG,GAAG,CAAC;AAqBrC,qGAAqG;AACrG,MAAM,oBAAoB,GAAG,CAAC,GAAG,MAAM,CAAC;AAExC,mFAAmF;AACnF,MAAM,kBAAkB,GAAG,uBAAuB,CAAC;AAEnD,gEAAgE;AAChE,MAAM,0BAA0B,GAAG,KAAK,CAAC;AAEzC,4DAA4D;AAC5D,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAElC,mGAAmG;AACnG,MAAM,MAAM,GAAG,SAAS,CAAC;AAEzB,mHAAmH;AACnH,MAAM,OAAO,GAAG,KAAK,CAAC;AAEtB,4FAA4F;AAC5F,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAGhC,gHAAgH;AAChH,MAAM,eAAe,GAAG,MAAM,CAAC;AAE/B,uDAAuD;AACvD,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAE7B,oHAAoH;AACpH,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAgBxD,MAAM,UAAU,gBAAgB,CAAC,OAA0B;IACzD,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC,CAAC;IAC3D,MAAM,WAAW,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;IACxD,MAAM,YAAY,GAAqB,OAAO,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IACpG,MAAM,QAAQ,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,cAAc,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;IAE5D,kGAAkG;IAClG,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC;IACjC,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;IAEzD,2EAA2E;IAC3E,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;QAClD,IAAI,CAAC;YACH,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;YAC5B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QAC1B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,sBAAsB,CAAC,CAAC;YACzD,OAAO,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,WAAW,CAAC;IAC3C,MAAM,IAAI,GAAG,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,cAAc,GAAG,oBAAoB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;IAC1E,0GAA0G;IAC1G,MAAM,cAAc,GAAmB,KAAK,EAAE,OAAO,EAAE,EAAE;QACvD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;QACzG,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,MAAM,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,IAAI,IAAI,EAAE,CAAC;IAClH,CAAC,CAAC;IACF,MAAM,QAAQ,GAAG,gCAAgC,CAAC,MAAM,CAAC,CAAC;IAC1D,MAAM,eAAe,GAAG,qBAAqB,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC,CAAC;IAC1G,MAAM,SAAS,GAAG,eAAe,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC;IAC7D,MAAM,WAAW,GAAG,iBAAiB,CAAC,EAAE,SAAS,EAAE,0BAA0B,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC,CAAC;IACvI,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;IACnE,MAAM,oBAAoB,GAAG,0BAA0B,CAAC,EAAE,QAAQ,EAAE,0BAA0B,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACpH,MAAM,OAAO,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;IACnC,sGAAsG;IACtG,MAAM,UAAU,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,YAAY,IAAI,eAAe,EAAE,UAAU,EAAE,OAAO,CAAC,iBAAiB,IAAI,oBAAoB,EAAE,CAAC;IACtI,MAAM,UAAU,GAAG,gBAAgB,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;IAC3F,MAAM,QAAQ,GAAG,cAAc,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,cAAc,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,iBAAiB,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,iBAAiB,IAAI,oBAAoB,EAAE,CAAC,CAAC;IAChK,MAAM,WAAW,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;IACpD,MAAM,oBAAoB,GAAG,gCAAgC,CAAC,MAAM,CAAC,CAAC;IACtE,MAAM,oBAAoB,GAAG,CAAC,OAAgB,EAAE,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtF,MAAM,WAAW,GAAG,iBAAiB,CAAC,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC;IACzE,MAAM,cAAc,GAAG,oBAAoB,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,kBAAkB,CAAC;QACjC,OAAO;QACP,UAAU;QACV,QAAQ,EAAE,cAAc,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC;QACxG,cAAc,EAAE,oBAAoB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;QACtH,oBAAoB;QACpB,GAAG,EAAE,MAAM,CAAC,GAAG;KAChB,CAAC,CAAC;IACH,4FAA4F;IAC5F,MAAM,YAAY,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;IACvE,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,CAAC;IACpJ,MAAM,aAAa,GAAG,eAAe,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,mFAAmF;IACnF,MAAM,YAAY,GAAiB,KAAK,EAAE,KAAK,EAAE,EAAE;QACjD,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAClB,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,eAAe,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACrF,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;IACF,MAAM,SAAS,GAAc,KAAK,EAAE,KAAK,EAAE,EAAE;QAC3C,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAChB,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,eAAe,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACnF,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IACF,MAAM,sBAAsB,GAAG,wBAAwB,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,CAAC;IAChK,0FAA0F;IAC1F,MAAM,kBAAkB,GAAuB,KAAK,EAAE,KAAK,EAAE,EAAE;QAC7D,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,KAAK,CAAC,CAAC;QACrD,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAClB,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,eAAe,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACrF,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;IACF,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpE,6EAA6E;IAC7E,MAAM,OAAO,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,CAAC,KAAY,EAAE,IAAqB,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC;IACxI,MAAM,WAAW,GAAG,iBAAiB,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,wBAAwB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAChG,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACzD,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;IAC3D,MAAM,cAAc,GAAG,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9D,MAAM,WAAW,GAAG,iBAAiB,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IACpI,MAAM,SAAS,GAAG,eAAe,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IAChI,kFAAkF;IAClF,MAAM,qBAAqB,GAAG,uBAAuB,CAAC,EAAE,QAAQ,EAAE,oBAAoB,EAAE,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IAC1M,8EAA8E;IAC9E,MAAM,iBAAiB,GAAsB,KAAK,EAAE,KAAK,EAAE,EAAE;QAC3D,MAAM,GAAG,GAAG,MAAM,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAChC,MAAM,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAC/B,KAAK,MAAM,KAAK,IAAI,MAAM,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC3C,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;oBAC1C,MAAM,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;IAEF,mIAAmI;IACnI,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,IAAI,kBAAkB,CAAC;IACvD,MAAM,QAAQ,GAAG,GAAG,MAAM,MAAM,CAAC;IACjC,MAAM,YAAY,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC;IACtD,MAAM,kBAAkB,GAAG,8BAA8B,CAAC,MAAM,CAAC,CAAC;IAClE,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,6BAA6B,CAAC,EAAE,SAAS,EAAE,0BAA0B,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC5K,MAAM,cAAc,GAAG,oBAAoB,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;IAC9F,MAAM,YAAY,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC;IACtD,MAAM,KAAK,GAAG,iBAAiB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACvD,kIAAkI;IAClI,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,MAAM,mBAAmB,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAC5K,MAAM,MAAM,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IACjD,MAAM,eAAe,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,kBAAkB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAC3D,MAAM,YAAY,GAAG,kBAAkB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IACpF,MAAM,eAAe,GAAG,iBAAiB,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,EAAE,gBAAgB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IACzG,iFAAiF;IACjF,MAAM,WAAW,GAAgB,KAAK,EAAE,KAAK,EAAE,EAAE;QAC/C,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,KAAK,CAAC,CAAC;QAC5C,QAAQ,CAAC,OAAO,EAAE,CAAC;QACnB,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IACF,qGAAqG;IACrG,MAAM,GAAG,GAAG,eAAe,EAAE,CAAC;IAC9B,MAAM,MAAM,GACV,OAAO,KAAK,SAAS;QACnB,CAAC,CAAC,SAAS;QACX,CAAC,CAAC;YACE,KAAK,EAAE,iBAAiB,CAAC,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;YAC7F,QAAQ,EAAE,oBAAoB,CAAC;gBAC7B,iBAAiB;gBACjB,KAAK;gBACL,OAAO;gBACP,MAAM;gBACN,KAAK,EAAE,kBAAkB;gBACzB,OAAO,EAAE,YAAY;gBACrB,KAAK;gBACL,MAAM;gBACN,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,MAAM,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;gBAC5G,QAAQ,EAAE,YAAY;gBACtB,YAAY,EAAE,kBAAkB,CAAC;oBAC/B,OAAO;oBACP,QAAQ,EAAE,eAAe;oBACzB,WAAW;oBACX,oBAAoB;oBACpB,QAAQ;oBACR,GAAG,OAAO;iBACX,CAAC;aACH,CAAC;YACF,WAAW,EAAE,iBAAiB,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC;YAC/G,YAAY,EAAE,kBAAkB,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;YACzF,GAAG;YACH,KAAK;YACL,KAAK,EAAE,EAAE,KAAK,EAAE,qBAAqB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE;SACtJ,CAAC;IACR,mBAAmB,CAAC,MAAM,EAAE;QAC1B,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3C,MAAM;QACN,QAAQ;QACR,iBAAiB;QACjB,aAAa,EAAE,mBAAmB,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;KACvJ,CAAC,CAAC;IACH,iHAAiH;IACjH,MAAM,cAAc,GAAmB,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IAC1L,oFAAoF;IACpF,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,MAAM,KAAK,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,4BAA4B,CAAC,MAAM,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,EAAE,cAAc,EAAE,oBAAoB,CAAC,EAAE,cAAc,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;QACvI,OAAO;YACL,SAAS,EAAE,eAAe,CAAC,MAAM,CAAC;YAClC,YAAY,EAAE,kBAAkB,CAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;YAC9D,cAAc,EAAE,oBAAoB,CAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,CAAC;YAC3D,YAAY,EAAE,kBAAkB,CAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,CAAC;YACvD,YAAY,EAAE,kBAAkB,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,CAAC;SACzF,CAAC;IACJ,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACnE,MAAM,SAAS,GAAG,eAAe,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,iBAAiB,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACnH,mBAAmB,CAAC,MAAM,EAAE;QAC1B,QAAQ;QACR,uBAAuB,EAAE,6BAA6B,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;QACxH,SAAS;QACT,QAAQ,EAAE,cAAc,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,YAAY,IAAI,eAAe,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC;QAC/N,cAAc,EAAE,oBAAoB,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACnE,oBAAoB;QACpB,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;KAC5C,CAAC,CAAC;IAEH,+FAA+F;IAC/F,MAAM,YAAY,GAAG,kBAAkB,CAAC,EAAE,WAAW,EAAE,cAAc,EAAE,CAAC,CAAC;IACzE,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,EAAE,oBAAoB,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC,CAAC;IACvI,MAAM,QAAQ,GAAG,mBAAmB,CAAC;QACnC,cAAc,EAAE,oBAAoB,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;QAC1E,YAAY,EAAE,kBAAkB,CAAC,EAAE,OAAO,EAAE,0BAA0B,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QACvI,SAAS,EAAE,eAAe,CAAC,EAAE,SAAS,EAAE,0BAA0B,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM,WAAW,EAAE,CAAC;QAC3L,KAAK;QACL,UAAU,EAAE,gBAAgB;QAC5B,GAAG,EAAE,MAAM,CAAC,GAAG;KAChB,CAAC,CAAC;IACH,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,YAAY,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,CAAC;IACtH,wEAAwE;IACxE,MAAM,aAAa,GAAkB,KAAK,EAAE,KAAK,EAAE,EAAE;QACnD,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,QAAQ,CAAC,OAAO,EAAE,CAAC;QACrB,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,CAAC,IAA8G,EAAW,EAAE,CAAC,CAAC;QAC/I,GAAG,IAAI;QACP,iBAAiB;QACjB,QAAQ;QACR,cAAc;QACd,YAAY,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC,iBAAiB,EAAE;QACtE,eAAe;QACf,SAAS;QACT,WAAW;QACX,UAAU,EAAE,gBAAgB,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;QAC9D,cAAc;QACd,OAAO;QACP,YAAY;QACZ,SAAS;QACT,WAAW;QACX,WAAW;QACX,gBAAgB;QAChB,iBAAiB;QACjB,SAAS;QACT,WAAW;QACX,cAAc;QACd,UAAU;QACV,QAAQ;QACR,kBAAkB,EAAE,wBAAwB,CAAC,EAAE,QAAQ,EAAE,oBAAoB,EAAE,CAAC;QAChF,iBAAiB;QACjB,cAAc;QACd,YAAY,EAAE,kBAAkB,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;QACtE,QAAQ,EAAE,cAAc,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;QAC9D,aAAa;QACb,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;KAC5C,CAAC,CAAC;IAEH,MAAM,IAAI,GAA4C;QACpD,MAAM,EAAE,OAAO;QACf,WAAW,EAAE;YACX,MAAM,EAAE,aAAa;YACrB,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;gBAC3B,IAAI,KAAK,CAAC,IAAI,KAAK,uBAAuB,EAAE,CAAC;oBAC3C,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,KAAK,IAAI,KAAK,EAAE,IAAI,EAAE,EAAE,kBAAkB,CAAC,CAAC;gBAC5E,CAAC;YACH,CAAC;YACD,aAAa,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CACzB,UAAU,CAAC;gBACT,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM;gBAC1B,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC9H,qBAAqB,EAAE,OAAO,GAAG,CAAC,OAAO,CAAC,6BAA6B,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC,CAAC,CAAC,SAAS;aAC/I,CAAC;SACL;KACF,CAAC;IACF,KAAK,MAAM,CAAC,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;IAC9C,mHAAmH;IACnH,kHAAkH;IAClH,MAAM,cAAc,GAAG,CAAC,MAA0B,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,qBAAqB,EAAE,SAAS,EAAE,CAAC,CAAC;IAC5J,gFAAgF;IAChF,MAAM,UAAU,GAAc,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;IACvE,mBAAmB,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;IAChF,0BAA0B,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;IACvF,qBAAqB,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;IAClF,wBAAwB,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;IACrF,oBAAoB,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;IACxF,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAE1B,YAAY,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,EAAE,KAAK,EAAE,iBAAiB,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IAC/F,IAAI,OAA+C,CAAC;IACpD,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;QACnC,OAAO,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;IACxG,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;QACnC,MAAM,OAAO,EAAE,KAAK,EAAE,CAAC;QACvB,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,MAAM;QACN,kBAAkB,EAAE,KAAK,IAAI,EAAE;YAC7B,MAAM,QAAQ,GAAyC,EAAE,CAAC;YAC1D,KAAK,MAAM,IAAI,IAAI,MAAM,WAAW,CAAC,SAAS,EAAE,EAAE,CAAC;gBACjD,mCAAmC;gBACnC,MAAM,UAAU,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC5H,IAAI,UAAU,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;oBACrC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBACrF,CAAC;YACH,CAAC;YACD,KAAK,MAAM,KAAK,IAAI,MAAM,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC3C,IAAI,MAAM,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;oBAClC,MAAM,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;YACD,QAAQ,CAAC,KAAK,EAAE,CAAC;YACjB,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,KAAK,EAAE,KAAK,IAAI,EAAE;YAChB,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACtB,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACvB,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,15 +6,21 @@
|
|
|
6
6
|
* `aeolus-gateway migrate`: migrates the database alone. Every setting
|
|
7
7
|
* comes from environment variables (src/config.ts).
|
|
8
8
|
*/
|
|
9
|
+
import { fileURLToPath } from 'node:url';
|
|
9
10
|
import { requireCoreVersion } from '../adapters/fleet/core-version.js';
|
|
10
11
|
import { MigrationError, migrateDatabase } from '../adapters/prisma/migrate.js';
|
|
12
|
+
import { startNextWebApp } from '../adapters/web/next-web-app.js';
|
|
11
13
|
import { createGatewayApp } from '../app.js';
|
|
12
14
|
import { ConfigError, loadConfig, loadDatabaseUrl } from '../config.js';
|
|
13
15
|
const USAGE = 'Usage: aeolus-gateway start | migrate';
|
|
16
|
+
/** The web app's folder, at the package's root beside src and dist. */
|
|
17
|
+
const WEB_DIR = new URL('../../web', import.meta.url);
|
|
14
18
|
async function start() {
|
|
15
19
|
const config = loadConfig(process.env);
|
|
16
20
|
await requireCoreVersion(config.fleetUrl);
|
|
17
21
|
await migrateDatabase(config.databaseUrl);
|
|
22
|
+
// Started from source (tsx), the web app compiles as it is asked; from the package, it serves its build.
|
|
23
|
+
const web = await startNextWebApp({ dir: fileURLToPath(WEB_DIR), isDevelopment: import.meta.url.endsWith('.ts'), apiUrl: config.apiUrl });
|
|
18
24
|
const app = createGatewayApp({
|
|
19
25
|
databaseUrl: config.databaseUrl,
|
|
20
26
|
fleetUrl: config.fleetUrl,
|
|
@@ -24,6 +30,8 @@ async function start() {
|
|
|
24
30
|
logger: { level: config.logLevel },
|
|
25
31
|
...(config.installationToken === undefined ? {} : { installationToken: config.installationToken }),
|
|
26
32
|
...(config.pagasae === undefined ? {} : { pagasae: config.pagasae }),
|
|
33
|
+
...(config.pagasaeApp === undefined ? {} : { pagasaeApp: config.pagasaeApp }),
|
|
34
|
+
web: web.handle,
|
|
27
35
|
});
|
|
28
36
|
// Every fleet the gateway was connected to, connected again with its kept crew token.
|
|
29
37
|
const restored = await app.restoreConnections();
|
|
@@ -35,7 +43,10 @@ async function start() {
|
|
|
35
43
|
}
|
|
36
44
|
for (const signal of ['SIGINT', 'SIGTERM']) {
|
|
37
45
|
process.once(signal, () => {
|
|
38
|
-
void app
|
|
46
|
+
void app
|
|
47
|
+
.close()
|
|
48
|
+
.then(() => web.close())
|
|
49
|
+
.then(() => process.exit(0));
|
|
39
50
|
});
|
|
40
51
|
}
|
|
41
52
|
await app.server.listen({ host: config.host, port: config.port });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aeolus-gateway.js","sourceRoot":"","sources":["../../src/bin/aeolus-gateway.ts"],"names":[],"mappings":";AACA;;;;;;GAMG;AACH,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAExE,MAAM,KAAK,GAAG,uCAAuC,CAAC;AAEtD,KAAK,UAAU,KAAK;IAClB,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACvC,MAAM,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC1C,MAAM,eAAe,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,GAAG,GAAG,gBAAgB,CAAC;QAC3B,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE;QAClC,GAAG,CAAC,MAAM,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAClG,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"aeolus-gateway.js","sourceRoot":"","sources":["../../src/bin/aeolus-gateway.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
/** How long an MCP client's call waits for its answer unless set (Q13). */
|
|
2
|
+
export declare const MCP_WAIT_MAX_MS_DEFAULT = 10000;
|
|
1
3
|
export interface Config {
|
|
2
4
|
/** The gateway's own database, which may share the fleet's Postgres server. */
|
|
3
5
|
databaseUrl: string;
|
|
@@ -17,6 +19,12 @@ export interface Config {
|
|
|
17
19
|
* MCP endpoint below it. This machine at the gateway's port unless set.
|
|
18
20
|
*/
|
|
19
21
|
publicUrl: string;
|
|
22
|
+
/**
|
|
23
|
+
* Where the web app's server calls the gateway's API: this machine at the
|
|
24
|
+
* gateway's port, never an address a request names, so a page forwards a
|
|
25
|
+
* browser's cookies only to the gateway itself.
|
|
26
|
+
*/
|
|
27
|
+
apiUrl: string;
|
|
20
28
|
/** Keys what the gateway derives: ship aliases, result handles and idempotency keys. Changing it renames every ship to outside clients. */
|
|
21
29
|
gatewaySecret: string;
|
|
22
30
|
/** How long an outside MCP client's call waits for its answer before it is answered its handle. */
|
|
@@ -31,6 +39,16 @@ export interface Config {
|
|
|
31
39
|
clientId: string;
|
|
32
40
|
clientSecret: string;
|
|
33
41
|
} | undefined;
|
|
42
|
+
/**
|
|
43
|
+
* The gateway's pages as an app at pagasae (its APP_CLIENTS), with the
|
|
44
|
+
* redirect URI `<public URL>/sign-in/done`: people sign in to the pages
|
|
45
|
+
* with the account sign-in every Aeolus app shares (header design H5).
|
|
46
|
+
* Unset, nobody signs in to them that way.
|
|
47
|
+
*/
|
|
48
|
+
pagasaeApp: {
|
|
49
|
+
clientId: string;
|
|
50
|
+
clientSecret: string;
|
|
51
|
+
} | undefined;
|
|
34
52
|
}
|
|
35
53
|
export declare class ConfigError extends Error {
|
|
36
54
|
name: string;
|
package/dist/config.js
CHANGED
|
@@ -4,7 +4,7 @@ const INSTALLATION_TOKEN_MIN_LENGTH = 32;
|
|
|
4
4
|
/** The shortest gateway secret: 32 characters, as long as the HMAC keys it makes. */
|
|
5
5
|
const GATEWAY_SECRET_MIN_LENGTH = 32;
|
|
6
6
|
/** How long an MCP client's call waits for its answer unless set (Q13). */
|
|
7
|
-
const MCP_WAIT_MAX_MS_DEFAULT = 10_000;
|
|
7
|
+
export const MCP_WAIT_MAX_MS_DEFAULT = 10_000;
|
|
8
8
|
const environmentSchema = z.object({
|
|
9
9
|
DATABASE_URL: z.url({ protocol: /^postgres(ql)?$/, error: 'must be a postgres:// or postgresql:// URL' }),
|
|
10
10
|
FLEET_URL: z.url({ protocol: /^https?$/, error: 'must be an http:// or https:// URL' }),
|
|
@@ -18,6 +18,8 @@ const environmentSchema = z.object({
|
|
|
18
18
|
PAGASAE_URL: z.url({ protocol: /^https?$/, error: 'must be an http:// or https:// URL' }).optional(),
|
|
19
19
|
PAGASAE_CLIENT_ID: z.string().min(1).optional(),
|
|
20
20
|
PAGASAE_CLIENT_SECRET: z.string().min(1).optional(),
|
|
21
|
+
PAGASAE_APP_CLIENT_ID: z.string().min(1).optional(),
|
|
22
|
+
PAGASAE_APP_CLIENT_SECRET: z.string().min(1).optional(),
|
|
21
23
|
});
|
|
22
24
|
/** What `aeolus-gateway migrate` reads: the database alone. */
|
|
23
25
|
const databaseEnvironmentSchema = environmentSchema.pick({ DATABASE_URL: true });
|
|
@@ -42,9 +44,11 @@ export function loadConfig(environment) {
|
|
|
42
44
|
logLevel: variables.LOG_LEVEL,
|
|
43
45
|
installationToken: variables.INSTALLATION_TOKEN,
|
|
44
46
|
publicUrl: (variables.GATEWAY_PUBLIC_URL ?? `http://127.0.0.1:${String(variables.PORT)}`).replace(/\/$/, ''),
|
|
47
|
+
apiUrl: `http://127.0.0.1:${String(variables.PORT)}`,
|
|
45
48
|
gatewaySecret: variables.GATEWAY_SECRET,
|
|
46
49
|
mcpWaitMaxMs: variables.MCP_WAIT_MAX_MS,
|
|
47
50
|
pagasae: pagasaeOf(variables),
|
|
51
|
+
pagasaeApp: pagasaeAppOf(variables),
|
|
48
52
|
};
|
|
49
53
|
}
|
|
50
54
|
/** pagasae's three settings: all of them, or none. */
|
|
@@ -58,6 +62,17 @@ function pagasaeOf(variables) {
|
|
|
58
62
|
}
|
|
59
63
|
return { url: url.replace(/\/$/, ''), clientId, clientSecret };
|
|
60
64
|
}
|
|
65
|
+
/** The pages' app client: both settings, or neither, and only beside pagasae. */
|
|
66
|
+
function pagasaeAppOf(variables) {
|
|
67
|
+
const { PAGASAE_URL: url, PAGASAE_APP_CLIENT_ID: clientId, PAGASAE_APP_CLIENT_SECRET: clientSecret } = variables;
|
|
68
|
+
if (clientId === undefined && clientSecret === undefined) {
|
|
69
|
+
return undefined;
|
|
70
|
+
}
|
|
71
|
+
if (url === undefined || clientId === undefined || clientSecret === undefined) {
|
|
72
|
+
throw new ConfigError('PAGASAE_APP_CLIENT_ID and PAGASAE_APP_CLIENT_SECRET: set both beside PAGASAE_URL, or neither');
|
|
73
|
+
}
|
|
74
|
+
return { clientId, clientSecret };
|
|
75
|
+
}
|
|
61
76
|
/** The database URL alone, for `aeolus-gateway migrate`. */
|
|
62
77
|
export function loadDatabaseUrl(environment) {
|
|
63
78
|
return parsed(databaseEnvironmentSchema, environment).DATABASE_URL;
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,6FAA6F;AAC7F,MAAM,6BAA6B,GAAG,EAAE,CAAC;AAEzC,qFAAqF;AACrF,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAErC,2EAA2E;AAC3E,MAAM,uBAAuB,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { FleetId } from '@aeolus-fleet/common';
|
|
2
|
+
import { type Result } from '../shared/result.js';
|
|
3
|
+
import type { AccountOfSignIn } from './account-of-sign-in.js';
|
|
4
|
+
import type { SharedAccountToken, SharedSignIn } from './ports.js';
|
|
5
|
+
/**
|
|
6
|
+
* Where a page goes for its account:
|
|
7
|
+
* - signedIn: it shows the fleet as the account, by this token;
|
|
8
|
+
* - goTo: it asked for no fleet, and goes to this one;
|
|
9
|
+
* - elsewhere: the account may not open the gateway there, and goes to an app it may open (H9).
|
|
10
|
+
*/
|
|
11
|
+
export type AccountInViewAnswer = {
|
|
12
|
+
readonly kind: 'signedIn';
|
|
13
|
+
readonly fleetId: FleetId;
|
|
14
|
+
readonly token: SharedAccountToken;
|
|
15
|
+
} | {
|
|
16
|
+
readonly kind: 'goTo';
|
|
17
|
+
readonly fleetId: FleetId;
|
|
18
|
+
} | {
|
|
19
|
+
readonly kind: 'elsewhere';
|
|
20
|
+
readonly url: string;
|
|
21
|
+
};
|
|
22
|
+
/** Why a page has no account: no shared sign-in, or one that ended (signedOut), or pagasae did not answer. */
|
|
23
|
+
export type AccountInViewRefusal = {
|
|
24
|
+
readonly kind: 'signedOut';
|
|
25
|
+
} | {
|
|
26
|
+
readonly kind: 'pagasaeUnavailable';
|
|
27
|
+
};
|
|
28
|
+
export type AccountInView = (asked: {
|
|
29
|
+
signIn: string | undefined;
|
|
30
|
+
fleetId: FleetId | undefined;
|
|
31
|
+
}) => Promise<Result<AccountInViewAnswer, AccountInViewRefusal>>;
|
|
32
|
+
/**
|
|
33
|
+
* Use case: the account a page of the gateway shows the fleet in its address
|
|
34
|
+
* as (orchestrator-1, 21 Oct: `?fleet=<fleet id>`, so two tabs show two
|
|
35
|
+
* fleets and a link opens the same one). With no fleet asked for, the page
|
|
36
|
+
* goes to the first fleet whose gateway the account may open (header design
|
|
37
|
+
* H1). Where the account holds no right, it goes to an app it may open
|
|
38
|
+
* there, Account at least (H9).
|
|
39
|
+
*/
|
|
40
|
+
export declare function createAccountInView(deps: {
|
|
41
|
+
signIns: Pick<SharedSignIn, 'apps'>;
|
|
42
|
+
accountOf: AccountOfSignIn;
|
|
43
|
+
}): AccountInView;
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { err, ok } from '../shared/result.js';
|
|
2
|
+
/** The app every account may open (header design H1), where an account with nothing else to open goes. */
|
|
3
|
+
const ACCOUNT_APP = 'account';
|
|
4
|
+
const GATEWAY_APP = 'gateway';
|
|
5
|
+
/** The first app the account may open in the fleet, else Account; none at all is no answer pagasae gives. */
|
|
6
|
+
function elsewhere(openable, fleetId) {
|
|
7
|
+
const inFleet = openable.fleets.find((fleet) => fleet.fleetId === fleetId)?.apps.find((app) => app.app !== GATEWAY_APP);
|
|
8
|
+
const account = openable.apps.find((app) => app.app === ACCOUNT_APP);
|
|
9
|
+
return { kind: 'elsewhere', url: inFleet?.url ?? account?.url ?? '/' };
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Use case: the account a page of the gateway shows the fleet in its address
|
|
13
|
+
* as (orchestrator-1, 21 Oct: `?fleet=<fleet id>`, so two tabs show two
|
|
14
|
+
* fleets and a link opens the same one). With no fleet asked for, the page
|
|
15
|
+
* goes to the first fleet whose gateway the account may open (header design
|
|
16
|
+
* H1). Where the account holds no right, it goes to an app it may open
|
|
17
|
+
* there, Account at least (H9).
|
|
18
|
+
*/
|
|
19
|
+
export function createAccountInView(deps) {
|
|
20
|
+
const openable = async (signIn, fleetId) => {
|
|
21
|
+
const apps = await deps.signIns.apps(signIn);
|
|
22
|
+
if (!apps.isOk) {
|
|
23
|
+
return err(apps.error.kind === 'signedOut' ? { kind: 'signedOut' } : { kind: 'pagasaeUnavailable' });
|
|
24
|
+
}
|
|
25
|
+
if (fleetId !== undefined) {
|
|
26
|
+
return ok(elsewhere(apps.value, fleetId));
|
|
27
|
+
}
|
|
28
|
+
const gateway = apps.value.fleets.find((fleet) => fleet.apps.some((app) => app.app === GATEWAY_APP));
|
|
29
|
+
return ok(gateway === undefined ? elsewhere(apps.value, undefined) : { kind: 'goTo', fleetId: gateway.fleetId });
|
|
30
|
+
};
|
|
31
|
+
return async ({ signIn, fleetId }) => {
|
|
32
|
+
if (signIn === undefined) {
|
|
33
|
+
return err({ kind: 'signedOut' });
|
|
34
|
+
}
|
|
35
|
+
if (fleetId === undefined) {
|
|
36
|
+
return openable(signIn, undefined);
|
|
37
|
+
}
|
|
38
|
+
const token = await deps.accountOf({ signIn, fleetId });
|
|
39
|
+
if (token.isOk) {
|
|
40
|
+
return ok({ kind: 'signedIn', fleetId, token: token.value });
|
|
41
|
+
}
|
|
42
|
+
switch (token.error.kind) {
|
|
43
|
+
case 'noRights':
|
|
44
|
+
return openable(signIn, fleetId);
|
|
45
|
+
case 'signedOut':
|
|
46
|
+
return err({ kind: 'signedOut' });
|
|
47
|
+
case 'unavailable':
|
|
48
|
+
return err({ kind: 'pagasaeUnavailable' });
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=account-in-view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account-in-view.js","sourceRoot":"","sources":["../../../src/core/account-sign-in/account-in-view.ts"],"names":[],"mappings":"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"}
|