Skip to content

Commit

Permalink
feat: add filters
Browse files Browse the repository at this point in the history
  • Loading branch information
p0dyakov committed Dec 18, 2022
1 parent eea1a9d commit 5c8e68a
Show file tree
Hide file tree
Showing 55 changed files with 6,851 additions and 134 deletions.
12 changes: 6 additions & 6 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -43,12 +43,12 @@ app.*.symbols
app.*.map.json

# Code generation
**/*.g.dart
**/*.gr.dart
**/*.gen.dart
**/*.hive.dart
**/*.freezed.dart
**/*.select.dart
# **/*.g.dart
# **/*.gr.dart
# **/*.gen.dart
# **/*.hive.dart
# **/*.freezed.dart
# **/*.select.dart

# Flutter Version Manager related
.fvm/flutter_sdk
Expand Down
3 changes: 1 addition & 2 deletions android/app/src/debug/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
<manifest xmlns:android="http:https://schemas.android.com/apk/res/android"
package="com.example.shop">
<uses-permission android:name="android.permission.ACCESS_FILE_LOCATION"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
<uses-permission android:name="android.permission.VIBRATE"/>
</manifest>
6 changes: 2 additions & 4 deletions android/app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
<manifest xmlns:android="http:https://schemas.android.com/apk/res/android" package="com.example.shop" xmlns:tools="http:https://schemas.android.com/tools">
<uses-permission android:name="android.permission.ACCESS_FILE_LOCATION"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

<uses-permission android:name="android.permission.VIBRATE"/>

<uses-sdk tools:overrideLibrary="io.github.edufolly.flutterbluetoothserial"/>
<application
android:label="Shop"
Expand Down
3 changes: 1 addition & 2 deletions android/app/src/profile/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
<manifest xmlns:android="http:https://schemas.android.com/apk/res/android"
package="com.example.shop">
<uses-permission android:name="android.permission.ACCESS_FILE_LOCATION"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
<uses-permission android:name="android.permission.VIBRATE"/>
</manifest>
6 changes: 3 additions & 3 deletions lib/src/core/database/hive/app_database.dart
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import 'package:hive_flutter/adapters.dart';
import 'package:shop/src/core/database/hive/app_database_keys.dart';
import 'package:shop/src/feature/shop/model/product.dart';
import 'package:shop/src/feature/shop/model/product_characteristics.dart';
import 'package:shop/src/feature/shop/model/shop.dart';
import 'package:shop/src/feature/shop/model/product/product.dart';
import 'package:shop/src/feature/shop/model/product_characteristics/product_characteristics.dart';
import 'package:shop/src/feature/shop/model/shop/shop.dart';

Future<void> registerAdapters() async {
Hive
Expand Down
41 changes: 41 additions & 0 deletions lib/src/core/enum/environment.select.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
// coverage:ignore-file
// GENERATED CODE - DO NOT MODIFY BY HAND
// ignore_for_file: type=lint

part of 'environment.dart';

// **************************************************************************
// MatcherGenerator
// **************************************************************************

extension $EnvironmentMatcherExtension on Environment {
T when<T>({
required T Function() production,
required T Function() staging,
required T Function() development,
}) {
switch (this) {
case Environment.production:
return production();
case Environment.staging:
return staging();
case Environment.development:
return development();
}
}

T whenConst<T>({
required T production,
required T staging,
required T development,
}) {
switch (this) {
case Environment.production:
return production;
case Environment.staging:
return staging;
case Environment.development:
return development;
}
}
}
1 change: 0 additions & 1 deletion lib/src/core/extension/src/build_context.dart
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ import 'package:shop/src/core/database/hive/app_database.dart';
import 'package:shop/src/core/model/dependencies_storage.dart';
import 'package:shop/src/core/model/environment_storage.dart';
import 'package:shop/src/core/model/repository_storage.dart';
import 'package:shop/src/core/router/app_router.dart';
import 'package:shop/src/core/widget/dependencies_scope.dart';
import 'package:shop/src/core/widget/environment_scope.dart';
import 'package:shop/src/core/widget/repository_scope.dart';
Expand Down
87 changes: 87 additions & 0 deletions lib/src/core/resources/assets.gen.dart

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 15 additions & 0 deletions lib/src/core/resources/fonts.gen.dart

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 1 addition & 3 deletions lib/src/core/router/app_router.dart
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
import 'package:auto_route/auto_route.dart';
import 'package:flutter/material.dart';
import 'package:shop/src/feature/shop/page/product_page.dart';
import 'package:shop/src/feature/shop/model/shop/shop.dart';
import 'package:shop/src/feature/shop/page/products_page.dart';
import 'package:shop/src/feature/shop/page/shops_page.dart';
import 'package:shop/src/feature/shop/model/shop.dart';

part 'app_router.gr.dart';

Expand All @@ -12,7 +11,6 @@ part 'app_router.gr.dart';
replaceInRouteName: 'Page,Route',
routes: [
AutoRoute<void>(page: ShopsPage, path: '/shops', initial: true),
AutoRoute<void>(page: ProductPage, path: '/product'),
AutoRoute<void>(page: ShopProductsPage, path: '/shop_products'),
],
)
Expand Down
107 changes: 107 additions & 0 deletions lib/src/core/router/app_router.gr.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
// **************************************************************************
// AutoRouteGenerator
// **************************************************************************

// GENERATED CODE - DO NOT MODIFY BY HAND

// **************************************************************************
// AutoRouteGenerator
// **************************************************************************
//
// ignore_for_file: type=lint

part of 'app_router.dart';

class _$AppRouter extends RootStackRouter {
_$AppRouter([GlobalKey<NavigatorState>? navigatorKey]) : super(navigatorKey);

@override
final Map<String, PageFactory> pagesMap = {
ShopsRoute.name: (routeData) {
return CustomPage<void>(
routeData: routeData,
child: const ShopsPage(),
transitionsBuilder: TransitionsBuilders.slideLeft,
opaque: true,
barrierDismissible: false,
);
},
ShopProductsRoute.name: (routeData) {
final args = routeData.argsAs<ShopProductsRouteArgs>();
return CustomPage<void>(
routeData: routeData,
child: ShopProductsPage(
key: args.key,
shop: args.shop,
),
transitionsBuilder: TransitionsBuilders.slideLeft,
opaque: true,
barrierDismissible: false,
);
},
};

@override
List<RouteConfig> get routes => [
RouteConfig(
'/#redirect',
path: '/',
redirectTo: '/shops',
fullMatch: true,
),
RouteConfig(
ShopsRoute.name,
path: '/shops',
),
RouteConfig(
ShopProductsRoute.name,
path: '/shop_products',
),
];
}

/// generated route for
/// [ShopsPage]
class ShopsRoute extends PageRouteInfo<void> {
const ShopsRoute()
: super(
ShopsRoute.name,
path: '/shops',
);

static const String name = 'ShopsRoute';
}

/// generated route for
/// [ShopProductsPage]
class ShopProductsRoute extends PageRouteInfo<ShopProductsRouteArgs> {
ShopProductsRoute({
Key? key,
required Shop shop,
}) : super(
ShopProductsRoute.name,
path: '/shop_products',
args: ShopProductsRouteArgs(
key: key,
shop: shop,
),
);

static const String name = 'ShopProductsRoute';
}

class ShopProductsRouteArgs {
const ShopProductsRouteArgs({
this.key,
required this.shop,
});

final Key? key;

final Shop shop;

@override
String toString() {
return 'ShopProductsRouteArgs{key: $key, shop: $shop}';
}
}
48 changes: 48 additions & 0 deletions lib/src/core/utils/show_draggable_bottom_sheet.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
import 'package:flutter/material.dart';
import 'package:shop/src/core/resource/theme/sizes.dart';

Future<void> showDraggableBottomSheet({
required Widget child,
required BuildContext context,
}) =>
showModalBottomSheet(
context: context,
useRootNavigator: true,
backgroundColor: Colors.transparent,
barrierColor: Colors.black.withOpacity(0.48),
builder: (context) => ConstrainedBox(
constraints: const BoxConstraints(
minHeight: 120,
),
child: Container(
decoration: const BoxDecoration(
color: Color.fromARGB(255, 245, 245, 245),
borderRadius: BorderRadius.only(
topLeft: Radius.circular(10),
topRight: Radius.circular(10),
),
),
padding: const EdgeInsets.only(
left: kDefaultPadding,
right: kDefaultPadding,
bottom: 30,
),
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
const SizedBox(height: 8),
Container(
height: 4,
width: 44,
decoration: const BoxDecoration(
color: Color(0xFFDEDEDE),
borderRadius: BorderRadius.all(Radius.circular(4)),
),
),
const SizedBox(height: 24),
child
],
),
),
),
);
Loading

0 comments on commit 5c8e68a

Please sign in to comment.