'callbacks.postWatcher']) { $this->ssrHandler = new SSRHandler($interactiveNamespace, $rootElementId, $rootElementAttributes); } // phpcs:ignore VariableAnalysis.CodeAnalysis.VariableAnalysis.UnusedVariable -- the type hint is the route contract; there is nothing to read off it public function login(Request $request) { return $this->render('/login', __('Log in', 'bit-connect')); } // phpcs:ignore VariableAnalysis.CodeAnalysis.VariableAnalysis.UnusedVariable -- the type hint is the route contract; there is nothing to read off it public function register(Request $request) { return $this->render('/register', __('Sign up', 'bit-connect')); } // phpcs:ignore VariableAnalysis.CodeAnalysis.VariableAnalysis.UnusedVariable -- the type hint is the route contract; there is nothing to read off it public function verifyEmail(Request $request) { return $this->render('/verify-email', __('Verify email', 'bit-connect')); } // phpcs:ignore VariableAnalysis.CodeAnalysis.VariableAnalysis.UnusedVariable -- the type hint is the route contract; there is nothing to read off it public function forgotPassword(Request $request) { return $this->render('/forgot-password', __('Reset password', 'bit-connect')); } /** * Render the portal shell so the client router can take over. * * @return string */ private function render(string $path, string $title) { // Both steps are needed for the bundle to load; see NotificationsPageController. $baseView = new BaseView(); $baseView->registerAssets(); SeoMeta::forAuthPage($title); return $this->ssrHandler->generateView($path, [], [], []); } }