feat(ui_kit): implement top nav bar
continuous-integration/drone/push Build is passing

This commit was merged in pull request #155.
This commit is contained in:
2023-02-22 17:43:42 +01:00
parent 317eb56d66
commit 4a3fde3a1e
17 changed files with 348 additions and 80 deletions
@@ -14,6 +14,6 @@
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
export 'top_app_bar_component.dart';
export './bottom_navigation_bar_component.dart';
export './top_navigation_bar_component.dart';
export 'top_app_bar_component.dart';
@@ -15,9 +15,10 @@
// along with this program. If not, see <https://www.gnu.org/licenses/>.
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:wyatt_component_copy_with_extension/component_copy_with_extension.dart';
import 'package:wyatt_ui_components/src/core/mixins/copy_with_mixin.dart';
import 'package:wyatt_ui_components/src/domain/entities/bars/top_bar_component.dart';
import 'package:wyatt_ui_components/wyatt_wyatt_ui_components.dart';
part 'top_navigation_bar_component.g.dart';
@@ -25,6 +26,7 @@ part 'top_navigation_bar_component.g.dart';
abstract class TopNavigationBarComponent extends TopBarComponent
with CopyWithMixin<$TopNavigationBarComponentCWProxy> {
const TopNavigationBarComponent({
this.navigationItems,
this.onTap,
this.currentIndex = 0,
super.shape,
@@ -48,6 +50,7 @@ abstract class TopNavigationBarComponent extends TopBarComponent
super.key,
});
final List<TextWrapper>? navigationItems;
final int currentIndex;
final void Function(BuildContext, int)? onTap;
}
@@ -7,16 +7,54 @@ part of 'top_navigation_bar_component.dart';
// **************************************************************************
abstract class $TopNavigationBarComponentCWProxy {
TopNavigationBarComponent leading(Widget? leading);
TopNavigationBarComponent actions(List<Widget>? actions);
TopNavigationBarComponent navigationItems(List<TextWrapper>? navigationItems);
TopNavigationBarComponent onTap(void Function(BuildContext, int)? onTap);
TopNavigationBarComponent currentIndex(int? currentIndex);
TopNavigationBarComponent shape(ShapeBorder? shape);
TopNavigationBarComponent systemOverlayStyle(
SystemUiOverlayStyle? systemOverlayStyle);
TopNavigationBarComponent automaticallyImplyLeading(
bool? automaticallyImplyLeading);
TopNavigationBarComponent flexibleSpace(Widget? flexibleSpace);
TopNavigationBarComponent bottom(PreferredSizeWidget? bottom);
TopNavigationBarComponent elevation(double? elevation);
TopNavigationBarComponent scrolledUnderElevation(
double? scrolledUnderElevation);
TopNavigationBarComponent shadowColor(Color? shadowColor);
TopNavigationBarComponent surfaceTintColor(Color? surfaceTintColor);
TopNavigationBarComponent backgroundColor(MultiColor? backgroundColor);
TopNavigationBarComponent iconTheme(IconThemeData? iconTheme);
TopNavigationBarComponent primary(bool? primary);
TopNavigationBarComponent excludeHeaderSemantics(
bool? excludeHeaderSemantics);
TopNavigationBarComponent toolbarHeight(double? toolbarHeight);
TopNavigationBarComponent leadingWidth(double? leadingWidth);
TopNavigationBarComponent leading(Widget? leading);
TopNavigationBarComponent actions(List<Widget>? actions);
TopNavigationBarComponent expandedWidget(List<Widget>? expandedWidget);
TopNavigationBarComponent key(Key? key);
TopNavigationBarComponent call({
Widget? leading,
List<Widget>? actions,
List<TextWrapper>? navigationItems,
void Function(BuildContext, int)? onTap,
int? currentIndex,
ShapeBorder? shape,
SystemUiOverlayStyle? systemOverlayStyle,
bool? automaticallyImplyLeading,
Widget? flexibleSpace,
PreferredSizeWidget? bottom,
double? elevation,
double? scrolledUnderElevation,
Color? shadowColor,
Color? surfaceTintColor,
MultiColor? backgroundColor,
IconThemeData? iconTheme,
bool? primary,
bool? excludeHeaderSemantics,
double? toolbarHeight,
double? leadingWidth,
Widget? leading,
List<Widget>? actions,
List<Widget>? expandedWidget,
Key? key,
});
}