mirror of
https://github.com/immich-app/immich.git
synced 2026-02-28 01:29:04 +03:00
* feat: html text * feat: mobile ui showcase (#25827) * feat: mobile ui showcase * remove showcase from main app * update fonts * update code to be loaded from asset * fix ci --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> # Conflicts: # mobile/lib/widgets/common/immich_sliver_app_bar.dart --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
49 lines
2.0 KiB
Dart
49 lines
2.0 KiB
Dart
import 'package:flutter/material.dart';
|
|
import 'package:go_router/go_router.dart';
|
|
import 'package:showcase/pages/components/close_button_page.dart';
|
|
import 'package:showcase/pages/components/form_page.dart';
|
|
import 'package:showcase/pages/components/html_text_page.dart';
|
|
import 'package:showcase/pages/components/icon_button_page.dart';
|
|
import 'package:showcase/pages/components/password_input_page.dart';
|
|
import 'package:showcase/pages/components/text_button_page.dart';
|
|
import 'package:showcase/pages/components/text_input_page.dart';
|
|
import 'package:showcase/pages/design_system/constants_page.dart';
|
|
import 'package:showcase/pages/home_page.dart';
|
|
import 'package:showcase/routes.dart';
|
|
import 'package:showcase/widgets/shell_layout.dart';
|
|
|
|
class AppRouter {
|
|
static GoRouter createRouter(VoidCallback onThemeToggle) {
|
|
return GoRouter(
|
|
initialLocation: AppRoute.home.path,
|
|
routes: [
|
|
ShellRoute(
|
|
builder: (context, state, child) =>
|
|
ShellLayout(onThemeToggle: onThemeToggle, child: child),
|
|
routes: AppRoute.values
|
|
.map(
|
|
(route) => GoRoute(
|
|
path: route.path,
|
|
pageBuilder: (context, state) => NoTransitionPage(
|
|
key: state.pageKey,
|
|
child: switch (route) {
|
|
AppRoute.home => HomePage(onThemeToggle: onThemeToggle),
|
|
AppRoute.textButton => const TextButtonPage(),
|
|
AppRoute.iconButton => const IconButtonPage(),
|
|
AppRoute.closeButton => const CloseButtonPage(),
|
|
AppRoute.textInput => const TextInputPage(),
|
|
AppRoute.passwordInput => const PasswordInputPage(),
|
|
AppRoute.form => const FormPage(),
|
|
AppRoute.htmlText => const HtmlTextPage(),
|
|
AppRoute.constants => const ConstantsPage(),
|
|
},
|
|
),
|
|
),
|
|
)
|
|
.toList(),
|
|
),
|
|
],
|
|
);
|
|
}
|
|
}
|