Skip to content

Commit

Permalink
Add index files for various modules and update imports for consistency
Browse files Browse the repository at this point in the history
  • Loading branch information
lucasilverentand committed Dec 18, 2024
1 parent 7fc3872 commit bebb7a7
Show file tree
Hide file tree
Showing 35 changed files with 145 additions and 65 deletions.
35 changes: 10 additions & 25 deletions oui/lib/oui.dart
Original file line number Diff line number Diff line change
@@ -1,26 +1,11 @@
library oui;
library;

export 'package:flutter/foundation.dart';
export 'package:flutter/widgets.dart';
export 'package:flutter_hooks/flutter_hooks.dart';
export 'package:hooks_riverpod/hooks_riverpod.dart'
hide describeIdentity, shortHash;

export 'src/actions/oui_action.dart';
export 'src/app/oui_app_context.dart';
export 'src/app/oui_app.dart';
export 'src/auth/oui_auth_provider.dart';
export 'src/components/buttons/oui_pressable.dart';
export 'src/config/oui_config.dart';
export 'src/router/oui_route_information_parser.dart';
export 'src/router/oui_router.dart';
export 'src/scaffold/oui_scaffold_rail.dart';
export 'src/scaffold/oui_scaffold.dart';
export 'src/screens/oui_screen.dart';
export 'src/utils/background.dart';
export 'src/config/config_container.dart';
export 'src/utils/oui_localized.dart';
export 'src/utils/oui_border.dart';
export 'src/utils/oui_metadata.dart';
export 'src/utils/oui_sides.dart';
export 'src/utils/range.dart';
export 'src/actions/_index.dart';
export 'src/app/_index.dart';
export 'src/auth/_index.dart';
export 'src/components/_index.dart';
export 'src/config/_index.dart';
export 'src/router/_index.dart';
export 'src/scaffold/_index.dart';
export 'src/screens/_index.dart';
export 'src/utils/_index.dart';
Empty file added oui/lib/src/actions/_index.dart
Empty file.
2 changes: 2 additions & 0 deletions oui/lib/src/app/_index.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
export 'oui_app.dart';
export 'oui_app_context.dart';
11 changes: 10 additions & 1 deletion oui/lib/src/app/oui_app.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,13 @@
import 'package:oui/oui.dart';
import 'package:flutter/widgets.dart';
import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:oui/src/app/oui_app_context.dart';
import 'package:oui/src/auth/oui_auth_provider.dart';
import 'package:oui/src/config/oui_config.dart';
import 'package:oui/src/router/oui_route_information_parser.dart';
import 'package:oui/src/router/oui_router.dart';
import 'package:oui/src/screens/oui_screen.dart';
import 'package:oui/src/screens/oui_screen_registry.dart';
import 'package:oui/src/utils/oui_metadata.dart';

/// A widget that serves as the root of the OUI application.
///
Expand Down
4 changes: 3 additions & 1 deletion oui/lib/src/app/oui_app_context.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
import 'package:oui/oui.dart';
import 'package:flutter/widgets.dart';
import 'package:oui/src/config/oui_config.dart';
import 'package:oui/src/router/oui_router.dart';

class OuiAppContext extends InheritedWidget {
final OuiConfig config;
Expand Down
1 change: 1 addition & 0 deletions oui/lib/src/auth/_index.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export 'oui_auth_provider.dart';
1 change: 1 addition & 0 deletions oui/lib/src/components/_index.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export 'oui_pressable.dart';
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
import 'package:oui/oui.dart';
import 'package:flutter/widgets.dart';
import 'package:flutter_hooks/flutter_hooks.dart';
import '../actions/oui_action.dart';
import '../app/oui_app_context.dart';

/// Represents the state of the Pressable widget.
enum OuiPressableState {
Expand Down
2 changes: 2 additions & 0 deletions oui/lib/src/config/_index.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
export 'config_container.dart';
export 'oui_config.dart';
5 changes: 4 additions & 1 deletion oui/lib/src/config/oui_config.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
import 'package:oui/oui.dart';
import 'dart:ui';

import 'package:oui/src/components/oui_pressable.dart';
import 'package:oui/src/scaffold/oui_scaffold.dart';

class OuiConfig {
final Color backdropColor;
Expand Down
4 changes: 4 additions & 0 deletions oui/lib/src/router/_index.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
export 'oui_path_match.dart';
export 'oui_path.dart';
export 'oui_route_information_parser.dart';
export 'oui_router.dart';
3 changes: 2 additions & 1 deletion oui/lib/src/router/oui_path.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import 'package:oui/oui.dart';
import '../screens/oui_screen.dart';
import 'oui_path_match.dart';

/// Represents a segment of a path in the Oui routing system.
class OuiPathSegment {
Expand Down
3 changes: 2 additions & 1 deletion oui/lib/src/router/oui_path_match.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import 'package:oui/oui.dart';
import '../screens/oui_screen.dart';
import 'oui_path.dart';

/// Represents a match for a specific path segment.
///
Expand Down
5 changes: 4 additions & 1 deletion oui/lib/src/router/oui_route_information_parser.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
import 'package:oui/oui.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/widgets.dart';
import 'package:oui/src/router/oui_path_match.dart';
import 'package:oui/src/screens/oui_screen_registry.dart';

/// A route information parser that converts URIs to [OuiPathMatch] objects.
///
Expand Down
9 changes: 5 additions & 4 deletions oui/lib/src/router/oui_router.dart
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
import 'package:oui/oui.dart';

export 'oui_path.dart';
export 'oui_path_match.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/widgets.dart';
import 'oui_path_match.dart';
import '../scaffold/oui_scaffold.dart';
import '../screens/oui_screen_registry.dart';

class OuiRouter extends RouterDelegate<OuiPathMatch> with ChangeNotifier {
final OuiScreenRegistry _registry;
Expand Down
2 changes: 2 additions & 0 deletions oui/lib/src/scaffold/_index.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
export 'oui_scaffold_rail.dart';
export 'oui_scaffold.dart';
44 changes: 42 additions & 2 deletions oui/lib/src/scaffold/oui_scaffold.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,12 @@
import 'package:oui/oui.dart';
import 'package:flutter/widgets.dart';
import 'package:hooks_riverpod/hooks_riverpod.dart';

import '../app/oui_app_context.dart';
import '../config/config_container.dart';
import '../utils/oui_sides.dart';
import '../router/oui_path_match.dart';

import 'oui_scaffold_rail.dart';

class OuiScaffoldConfig {
final ConfigContainer<OuiRectSide, OuiScaffoldRailConfig> rails;
Expand All @@ -13,6 +21,20 @@ class OuiScaffoldConfig {
});
}

class OuiScaffoldDivider extends StatelessWidget {
const OuiScaffoldDivider({
super.key,
});

@override
Widget build(BuildContext context) {
return Container(
color: const Color(0xFF000000),
width: 1,
);
}
}

class OuiScaffold extends HookConsumerWidget {
final OuiPathMatch currentPath;

Expand All @@ -26,16 +48,34 @@ class OuiScaffold extends HookConsumerWidget {
return Container(
color: context.config.backdropColor,
child: Row(
crossAxisAlignment: CrossAxisAlignment.stretch,
mainAxisSize: MainAxisSize.max,
children: [
// if (config.rails[OuiRectSide.left].enabled)
const OuiScaffoldRail(OuiRectSide.left),
Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.stretch,
children: [
// if (config.rails.top.enabled)
const OuiScaffoldRail(OuiRectSide.top),
Expanded(
child: currentPath.screens.last.builder(context),
child: Row(
crossAxisAlignment: CrossAxisAlignment.stretch,
mainAxisAlignment: MainAxisAlignment.center,
mainAxisSize: MainAxisSize.max,
children: currentPath.screens
.expand(
(screen) => [
Expanded(
child: screen.builder(context),
),
if (screen != currentPath.screens.last)
const OuiScaffoldDivider(),
],
)
.toList(growable: false),
),
),
// if (config.rails.bottom.enabled)
const OuiScaffoldRail(OuiRectSide.bottom),
Expand Down
10 changes: 8 additions & 2 deletions oui/lib/src/scaffold/oui_scaffold_rail.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
import 'package:oui/oui.dart';
import 'package:flutter/widgets.dart';
import '../app/oui_app_context.dart';
import '../utils/background.dart';
import '../utils/oui_border.dart';
import '../utils/oui_sides.dart';

class OuiScaffoldRailConfig {
final Background? background;
Expand Down Expand Up @@ -48,11 +52,12 @@ class OuiScaffoldRail extends StatelessWidget {
),
);

if (side.direction.isHorizontal) {
if ([OuiRectSide.top, OuiRectSide.bottom].contains(side)) {
return Container(
height: 72,
decoration: decoration,
child: Row(
mainAxisSize: MainAxisSize.max,
children: items,
),
);
Expand All @@ -61,6 +66,7 @@ class OuiScaffoldRail extends StatelessWidget {
width: 72,
decoration: decoration,
child: Column(
mainAxisSize: MainAxisSize.max,
children: items,
),
);
Expand Down
4 changes: 4 additions & 0 deletions oui/lib/src/screens/_index.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
export 'oui_screen.dart';
export 'oui_screen_metadata.dart';
export 'oui_screen_registry.dart';
export 'oui_screen_size.dart';
9 changes: 4 additions & 5 deletions oui/lib/src/screens/oui_screen.dart
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
import 'package:oui/oui.dart';

export 'oui_screen_registry.dart';
export 'oui_screen_metadata.dart';
export 'oui_screen_size.dart';
import 'package:flutter/widgets.dart';
import 'package:oui/src/screens/oui_screen_metadata.dart';
import 'package:oui/src/screens/oui_screen_size.dart';
import 'package:oui/src/utils/oui_localized.dart';

/// Defines the possible types of screens in the OUI framework.
///
Expand Down
3 changes: 2 additions & 1 deletion oui/lib/src/screens/oui_screen_metadata.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import 'package:oui/oui.dart';
import '../utils/oui_metadata.dart';
import '../router/oui_path.dart';

/// Provider class for resolving metadata about OUI screens.
///
Expand Down
5 changes: 4 additions & 1 deletion oui/lib/src/screens/oui_screen_registry.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
import 'package:oui/oui.dart';
import '../router/oui_path.dart';
import '../router/oui_path_match.dart';
import '../utils/oui_localized.dart';
import 'oui_screen.dart';

/// Represents an entry in the Oui screen registry.
///
Expand Down
5 changes: 5 additions & 0 deletions oui/lib/src/utils/_index.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
export 'background.dart';
export 'oui_border.dart';
export 'oui_localized.dart';
export 'oui_metadata.dart';
export 'oui_sides.dart';
2 changes: 1 addition & 1 deletion oui/lib/src/utils/background.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import 'package:oui/oui.dart';
import 'package:flutter/widgets.dart';

class Background extends StatelessWidget {
final Color? color;
Expand Down
3 changes: 2 additions & 1 deletion oui/lib/src/utils/oui_border.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import 'package:oui/oui.dart';
import 'package:flutter/rendering.dart';
import 'package:oui/src/utils/oui_sides.dart';

/// A class that defines the border properties for Oui components.
class OuiBorder {
Expand Down
2 changes: 1 addition & 1 deletion oui/lib/src/utils/oui_metadata.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import 'package:oui/oui.dart';
import 'package:flutter/widgets.dart';

/// Provider class for resolving metadata about OUI components.
///
Expand Down
9 changes: 0 additions & 9 deletions oui/lib/src/utils/range.dart

This file was deleted.

3 changes: 2 additions & 1 deletion oui/test/src/router/oui_path_match_test.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import 'package:flutter_test/flutter_test.dart';
import 'package:oui/oui.dart';
import 'package:oui/src/router/oui_path.dart';
import 'package:oui/src/router/oui_path_match.dart';
import '../screens/screen_testing_utils.dart';

void main() {
Expand Down
2 changes: 1 addition & 1 deletion oui/test/src/router/oui_path_test.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import 'package:flutter_test/flutter_test.dart';
import 'package:oui/oui.dart';
import 'package:oui/src/router/oui_path.dart';

import '../screens/screen_testing_utils.dart';

Expand Down
3 changes: 2 additions & 1 deletion oui/test/src/screens/oui_screen_metadata_test.dart
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:oui/oui.dart';
import 'package:oui/src/router/oui_path.dart';
import 'package:oui/src/screens/oui_screen_metadata.dart';

void main() {
group('OuiScreenMetadata', () {
Expand Down
3 changes: 2 additions & 1 deletion oui/test/src/screens/oui_screen_registry_test.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import 'package:flutter_test/flutter_test.dart';
import 'package:oui/oui.dart';
import 'package:oui/src/router/oui_path.dart';
import 'package:oui/src/screens/oui_screen_registry.dart';

import 'screen_testing_utils.dart';

Expand Down
6 changes: 5 additions & 1 deletion oui/test/src/screens/screen_testing_utils.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
import 'package:oui/oui.dart';
import 'package:flutter/widgets.dart';
import 'package:oui/src/router/oui_path.dart';
import 'package:oui/src/screens/oui_screen.dart';
import 'package:oui/src/screens/oui_screen_metadata.dart';
import 'package:oui/src/utils/oui_localized.dart';

OuiScreen testScreen(
String id, {
Expand Down
3 changes: 2 additions & 1 deletion oui/test/src/utils/oui_metadata_test.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import 'package:flutter/widgets.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:oui/oui.dart';
import 'package:oui/src/utils/oui_metadata.dart';

void main() {
group('OuiMetadata', () {
Expand Down
1 change: 1 addition & 0 deletions oui_showcase/lib/screens/sub_screen.dart
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import 'package:flutter/widgets.dart';
import 'package:oui/oui.dart';

final subScreen = OuiScreen(
Expand Down
1 change: 1 addition & 0 deletions oui_showcase/lib/screens/test_screen.dart
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import 'package:flutter/widgets.dart';
import 'package:oui/oui.dart';
import 'package:oui_showcase/screens/sub_screen.dart';

Expand Down

0 comments on commit bebb7a7

Please sign in to comment.