Skip to content

Commit

Permalink
Refactor
Browse files Browse the repository at this point in the history
  • Loading branch information
natsuk4ze committed Jan 22, 2024
1 parent 5ca12d5 commit c7924ea
Show file tree
Hide file tree
Showing 5 changed files with 37 additions and 26 deletions.
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
[![CodeFactor](https://www.codefactor.io/repository/github/natsuk4ze/npm/badge)](https://www.codefactor.io/repository/github/natsuk4ze/npm)
![Test](https://github.com/natsuk4ze/npm/actions/workflows/ci.yml/badge.svg?branch=master)

## 🚧 Now Refactoring... 🚧

## Push ⭐️ if you like, Thank you シ

A [npm](https://www.npmjs.com) client app with modern flutter coding style.
Expand Down
22 changes: 22 additions & 0 deletions lib/extensions.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
import 'package:dio/dio.dart';
import 'package:flutter/material.dart';
import 'package:hooks_riverpod/hooks_riverpod.dart';

extension BuildContextX on BuildContext {
bool get isLargeScreen => MediaQuery.of(this).size.width > 600;
}

extension CancelTokenX on Ref {
CancelToken get cancelToken {
final cT = CancelToken();
onDispose(cT.cancel);
return cT;
}
}

extension ListX on List {
static List<T>? fromOrNull<T>(Iterable<dynamic>? source) {
if (source == null) return null;
return List<T>.from(source);
}
}
8 changes: 1 addition & 7 deletions lib/features/packages/packages.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import 'package:dio/dio.dart';
import 'package:freezed_annotation/freezed_annotation.dart';
import 'package:npm/extensions.dart';
import 'package:npm/features/score/score.dart';
import 'package:npm/repository.dart';
import 'package:riverpod_annotation/riverpod_annotation.dart';
Expand Down Expand Up @@ -50,10 +51,3 @@ class Package with _$Package {
);
}
}

extension ListX on List {
static List<T>? fromOrNull<T>(Iterable<dynamic>? source) {
if (source == null) return null;
return List<T>.from(source);
}
}
22 changes: 12 additions & 10 deletions lib/features/packages/packages_page.dart
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import 'package:flutter_hooks/flutter_hooks.dart';
import 'package:gap/gap.dart';
import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:npm/common_widgets/empty_image.dart';
import 'package:npm/extensions.dart';
import 'package:npm/features/packages/package_item.dart';
import 'package:npm/features/packages/packages.dart';
import 'package:npm/features/score/score.dart';
Expand Down Expand Up @@ -31,7 +32,6 @@ class PackagesPage extends HookConsumerWidget {
final searchController = useTextEditingController(text: 'color');
useListenable(searchController);
final l10n = ref.watch(l10nProvider);
final isLargeScreen = MediaQuery.of(context).size.width > 600;

return Scaffold(
appBar: AppBar(
Expand Down Expand Up @@ -60,28 +60,30 @@ class PackagesPage extends HookConsumerWidget {
),
body: Padding(
padding: const EdgeInsets.symmetric(horizontal: 16),
child: isLargeScreen
child: context.isLargeScreen
? Row(
children: [
const _SortPannel(),
const VerticalDivider(),
Expanded(
child: _PackageItems(
searchText: searchController.text,
),
child: _PackageItems(searchText: searchController.text),
),
],
)
: NestedScrollView(
headerSliverBuilder: (_, __) => [
const SliverAppBar(
surfaceTintColor: Colors.transparent,
toolbarHeight: 200,
title: SizedBox(
width: double.maxFinite, child: _SortPannel()))
surfaceTintColor: Colors.transparent,
toolbarHeight: 200,
title: SizedBox(
width: double.maxFinite,
child: _SortPannel(),
),
)
],
body: Center(
child: _PackageItems(searchText: searchController.text)),
child: _PackageItems(searchText: searchController.text),
),
),
),
);
Expand Down
9 changes: 0 additions & 9 deletions lib/repository.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import 'package:dio/dio.dart';
import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:npm/features/package_details/package_details.dart';
import 'package:npm/features/packages/packages.dart';
import 'package:riverpod_annotation/riverpod_annotation.dart';
Expand Down Expand Up @@ -32,11 +31,3 @@ class Repository {
return PackageDetails.fromJson(response.data);
}
}

extension CancelTokenX on Ref {
CancelToken get cancelToken {
final cT = CancelToken();
onDispose(cT.cancel);
return cT;
}
}

0 comments on commit c7924ea

Please sign in to comment.