module Web.FrontController where import IHP.RouterPrelude import IHP.LoginSupport.Middleware import IHP.ControllerPrelude (getAppConfig) import Generated.Types import Web.Types import Web.Routes () import Config (AnnotationLauncherEnabled (..)) -- Controllers import Web.Controller.Hubs () import Web.Controller.Widgets () import Web.Controller.InteractionEvents () import Web.Controller.Annotations () import Web.Controller.AnnotationThreads () import Web.Controller.RequirementCandidates () import Web.Controller.Requirements () import Web.Controller.DecisionRecords () import Web.Controller.DeploymentRecords () import Web.Controller.AgentProposals () import Web.Controller.ApiInteractionEvents () import Web.Controller.EnvelopeEmissionContracts () import Web.Controller.InteractionReportingContracts () import Web.Controller.WidgetAdapterSpecs () import Web.Controller.CrossHubPropagations () import Web.Controller.WidgetOwnerships () import Web.Controller.HubRoutingRules () import Web.Controller.FederatedPolicyOverlays () import Web.Controller.StewardshipRoles () import Web.Controller.ArchiveRecords () import Web.Controller.FederatedGovernance () import Web.Controller.Sessions () instance FrontController WebApplication where controllers = [ parseRoute @SessionsController , parseRoute @HubsController , parseRoute @WidgetsController , parseRoute @InteractionEventsController , parseRoute @AnnotationsController , parseRoute @AnnotationThreadsController , parseRoute @RequirementCandidatesController , parseRoute @RequirementsController , parseRoute @DecisionRecordsController , parseRoute @DeploymentRecordsController , parseRoute @AgentProposalsController , parseRoute @ApiInteractionEventsController , parseRoute @EnvelopeEmissionContractsController , parseRoute @InteractionReportingContractsController , parseRoute @WidgetAdapterSpecsController , parseRoute @CrossHubPropagationsController , parseRoute @WidgetOwnershipsController , parseRoute @HubRoutingRulesController , parseRoute @FederatedPolicyOverlaysController , parseRoute @StewardshipRolesController , parseRoute @ArchiveRecordsController , parseRoute @FederatedGovernanceController ] instance InitControllerContext WebApplication where initContext = do setLayout defaultLayout initAuthentication @User annotationLauncherScript :: (?context :: ControllerContext) => Html annotationLauncherScript = let AnnotationLauncherEnabled enabled = getAppConfig @AnnotationLauncherEnabled in if enabled then [hsx||] else mempty defaultLayout :: Layout defaultLayout inner = [hsx|