Skip to content

Commit

Permalink
Version 1.1.0
Browse files Browse the repository at this point in the history
  • Loading branch information
rares45 committed Sep 19, 2024
1 parent 4e93993 commit 2d9b410
Show file tree
Hide file tree
Showing 139 changed files with 5,623 additions and 423 deletions.
3 changes: 3 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
github: rares45
buy_me_a_coffee: raresvanca
custom: ['revolut.me/raresvanca']
5 changes: 2 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,2 @@
## 0.0.1

* TODO: Describe initial release.
## 1.1.0
* Fixed isssues
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2023 2.5 Perceivers
Copyright (c) 2024 2.5 Perceivers

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
71 changes: 48 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,39 +1,64 @@
<!--
This README describes the package. If you publish this package to pub.dev,
this README's contents appear on the landing page for your package.
# Expand

For information about how to write a good package README, see the guide for
[writing package pages](https://dart.dev/guides/libraries/writing-package-pages).
<div align="center">

For general information about developing packages, see the Dart guide for
[creating packages](https://dart.dev/guides/libraries/create-library-packages)
and the Flutter guide for
[developing packages and plugins](https://flutter.dev/developing-packages).
-->
[![GitHub stars][github_stars_badge]][github_stars_link]
[![Package: master_detail_flow][package_badge]][package_link]
[![Language: Dart][language_badge]][language_link]
[![License: MIT][license_badge]][license_link]

TODO: Put a short description of the package here that helps potential users
know whether this package might be useful for them.
</div>

## Features
[github_stars_badge]: https://img.shields.io/github/stars/2-5-perceivers/expand?style=flat&color=yellow
[github_stars_link]: https://github.com/2-5-perceivers/expand/stargazers
[package_badge]: https://img.shields.io/pub/v/expand?color=green
[package_link]: https://pub.dev/packages/expand
[language_badge]: https://img.shields.io/badge/language-Dart-blue
[language_link]: https://dart.dev
[license_badge]: https://img.shields.io/github/license/2-5-perceivers/expand
[license_link]: https://opensource.org/licenses/MIT

TODO: List what your package can do. Maybe include images, gifs, or videos.
**expand** is a Flutter package designed to help creating sleek, fast and simple expandable widgets, using minimum code.

![Demo Gif](https://github.com/2-5-perceivers/expand/blob/master/images/demo.gif?raw=true)

## Installation

To use this package, add master_detail_flow as a dependency using:
```
flutter pub add expand
```

## Getting started

TODO: List prerequisites and provide or point to information on how to
start using the package.
Wrap any list of expandable widgets in a ExpandableProvider, and you are done.

## Usage

TODO: Include short and useful examples for package users. Add longer examples
to `/example` folder.
Here is a basic example of how to use `ExpandableTile`:

```dart
const like = 'sample';
ExpandableProvider(
child: ListView(
children: [
ExpandableTile(
title: const Text('Tile 1'),
detailsBuilder: (context) => Container(height: 200),
),
ExpandableTile(
title: const Text('Tile 2'),
detailsBuilder: (context) => Container(height: 200),
),
],
),
),
```

## Additional information
The use of ExpandableProvider can be skipped using an `ExpandableController` that can be provided manually.

### Key components
* `ExpandableProvider` + `ExpandableController`: the state providers for expansion cards
* `ExpandableCard`: The base of all expandable widgets
* `ExpandableTile`: An ListTile with expandable details

TODO: Tell users more about the package: where to find more information, how to
contribute to the package, how to file issues, what response they can expect
from the package authors, and more.
For further details, visit the [documentation](https://pub.dev/documentation/expand/latest/).
157 changes: 138 additions & 19 deletions analysis_options.yaml
Original file line number Diff line number Diff line change
@@ -1,33 +1,152 @@
include: package:flutter_lints/flutter.yaml

analyzer:
strong-mode:
implicit-dynamic: false
errors:
# treat missing required parameters as a warning (not a hint)
missing_required_param: warning
# treat missing returns as a warning (not a hint)
missing_return: warning
# allow having TODOs in the code
todo: ignore

linter:
rules:
# API lint rules
public_member_api_docs: true
library_private_types_in_public_api: true
package_api_docs: true
type_annotate_public_apis: true
# Flutter lint rules
always_use_package_imports: true
always_declare_return_types: true
sort_pub_dependencies: true
sort_child_properties_last: true
sort_constructors_first: true
sort_unnamed_constructors_first: true
prefer_single_quotes: true
always_put_required_named_parameters_first: true
annotate_overrides: true
avoid_as: true
avoid_dynamic_calls: true
avoid_final_parameters: true
avoid_positional_boolean_parameters: true
avoid_relative_lib_imports: true
avoid_setters_without_getters: true
avoid_shadowing_type_parameters: true
avoid_slow_async_io: true
avoid_type_to_string: true
avoid_types_on_closure_parameters: true
avoid_unnecessary_containers: true
avoid_void_async: true
avoid_annotating_with_dynamic: true
avoid_print: true
cancel_subscriptions: true
cascade_invocations: true
cast_nullable_to_non_nullable: true
close_sinks: true
collection_methods_unrelated_type: true
combinators_ordering: true
control_flow_in_finally: true
depend_on_referenced_packages: true
directives_ordering: true
prefer_final_fields: true
discarded_futures: true
document_ignores: true
empty_constructor_bodies: true
empty_statements: true
eol_at_end_of_file: true
file_names: true
lines_longer_than_80_chars: true
literal_only_boolean_expressions: true
matching_super_parameters: true
missing_whitespace_between_adjacent_strings: true
no_default_cases: true
no_duplicate_case_values: true
no_leading_underscores_for_library_prefixes: true
no_leading_underscores_for_local_identifiers: true
no_literal_bool_comparisons: true
no_logic_in_create_state: true
no_runtimeType_toString: true
no_self_assignments: true
noop_primitive_operations: true
omit_local_variable_types: true
only_throw_errors: true
overridden_fields: true
parameter_assignments: true
prefer_adjacent_string_concatenation: true
prefer_asserts_in_initializer_lists: true
prefer_conditional_assignment: true
prefer_const_constructors: true
prefer_const_constructors_in_immutables: true
prefer_const_declarations: true
prefer_const_literals_to_create_immutables: true
prefer_constructors_over_static_methods: true
prefer_expression_function_bodies: true
prefer_final_fields: true
prefer_final_locals: true
prefer_final_parameters: false
prefer_for_elements_to_map_fromIterable: true
prefer_function_declarations_over_variables: true
prefer_if_elements_to_conditional_expressions: true
prefer_if_null_operators: true
prefer_conditional_assignment: true
prefer_collection_literals: true
prefer_contains: true
prefer_final_in_for_each: true
prefer_final_parameters: true
prefer_initializing_formals: true
prefer_inlined_adds: true
prefer_int_literals: true
prefer_interpolation_to_compose_strings: true
prefer_is_empty: true
prefer_is_not_empty: true
prefer_iterable_whereType: true
prefer_mixin: true
prefer_null_aware_method_calls: true
prefer_null_aware_operators: true
public_member_api_docs: true

# Additional information about this file can be found at
# https://dart.dev/guides/language/analysis-options

analyzer:
errors:
todo: ignore
prefer_single_quotes: true
prefer_spread_collections: true
prefer_typing_uninitialized_variables: true
recursive_getters: true
require_trailing_commas: true
secure_pubspec_urls: true
sized_box_for_whitespace: true
sized_box_shrink_expand: true
slash_for_doc_comments: true
sort_child_properties_last: true
sort_constructors_first: true
sort_pub_dependencies: true
sort_unnamed_constructors_first: true
super_goes_last: true
tighten_type_of_initializing_formals: true
type_init_formals: true
type_literal_in_constant_pattern: true
unnecessary_brace_in_string_interps: true
unnecessary_breaks: true
unnecessary_const: true
unnecessary_constructor_name: true
unnecessary_getters_setters: true
unnecessary_lambdas: true
unnecessary_late: true
unnecessary_null_aware_assignments: true
unnecessary_null_aware_operator_on_extension_on_nullable: true
unnecessary_null_checks: true
unnecessary_null_in_if_null_operators: true
unnecessary_nullable_for_final_variable_declarations: true
unnecessary_overrides: true
unnecessary_parenthesis: true
unnecessary_raw_strings: true
unnecessary_statements: true
unnecessary_string_escapes: true
unnecessary_string_interpolations: true
unnecessary_this: true
unnecessary_to_list_in_spreads: true
unreachable_from_main: true
unrelated_type_equality_checks: true
use_build_context_synchronously: true
use_colored_box: true
use_decorated_box: true
use_full_hex_values_for_flutter_colors: true
use_function_type_syntax_for_parameters: true
use_if_null_to_convert_nulls_to_bools: true
use_is_even_rather_than_modulo: true
use_key_in_widget_constructors: true
use_late_for_private_fields_and_variables: true
use_named_constants: true
use_raw_strings: true
use_rethrow_when_possible: true
use_setters_to_change_properties: true
use_string_buffers: true
use_super_parameters: true
use_to_and_as_if_applicable: true
43 changes: 43 additions & 0 deletions example/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# Miscellaneous
*.class
*.log
*.pyc
*.swp
.DS_Store
.atom/
.buildlog/
.history
.svn/
migrate_working_dir/

# IntelliJ related
*.iml
*.ipr
*.iws
.idea/

# The .vscode folder contains launch configuration and tasks you configure in
# VS Code which you may wish to be included in version control, so this line
# is commented out by default.
#.vscode/

# Flutter/Dart/Pub related
**/doc/api/
**/ios/Flutter/.last_build_id
.dart_tool/
.flutter-plugins
.flutter-plugins-dependencies
.pub-cache/
.pub/
/build/

# Symbolication related
app.*.symbols

# Obfuscation related
app.*.map.json

# Android Studio will place build artifacts here
/android/app/debug
/android/app/profile
/android/app/release
45 changes: 45 additions & 0 deletions example/.metadata
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# This file tracks properties of this Flutter project.
# Used by Flutter tool to assess capabilities and perform upgrades etc.
#
# This file should be version controlled and should not be manually edited.

version:
revision: "4cf269e36de2573851eaef3c763994f8f9be494d"
channel: "stable"

project_type: app

# Tracks metadata for the flutter migrate command
migration:
platforms:
- platform: root
create_revision: 4cf269e36de2573851eaef3c763994f8f9be494d
base_revision: 4cf269e36de2573851eaef3c763994f8f9be494d
- platform: android
create_revision: 4cf269e36de2573851eaef3c763994f8f9be494d
base_revision: 4cf269e36de2573851eaef3c763994f8f9be494d
- platform: ios
create_revision: 4cf269e36de2573851eaef3c763994f8f9be494d
base_revision: 4cf269e36de2573851eaef3c763994f8f9be494d
- platform: linux
create_revision: 4cf269e36de2573851eaef3c763994f8f9be494d
base_revision: 4cf269e36de2573851eaef3c763994f8f9be494d
- platform: macos
create_revision: 4cf269e36de2573851eaef3c763994f8f9be494d
base_revision: 4cf269e36de2573851eaef3c763994f8f9be494d
- platform: web
create_revision: 4cf269e36de2573851eaef3c763994f8f9be494d
base_revision: 4cf269e36de2573851eaef3c763994f8f9be494d
- platform: windows
create_revision: 4cf269e36de2573851eaef3c763994f8f9be494d
base_revision: 4cf269e36de2573851eaef3c763994f8f9be494d

# User provided section

# List of Local paths (relative to this file) that should be
# ignored by the migrate tool.
#
# Files that are not part of the templates will be ignored by default.
unmanaged_files:
- 'lib/main.dart'
- 'ios/Runner.xcodeproj/project.pbxproj'
3 changes: 3 additions & 0 deletions example/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# example

A new Flutter project.
1 change: 1 addition & 0 deletions example/analysis_options.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
include: package:flutter_lints/flutter.yaml
13 changes: 13 additions & 0 deletions example/android/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
gradle-wrapper.jar
/.gradle
/captures/
/gradlew
/gradlew.bat
/local.properties
GeneratedPluginRegistrant.java

# Remember to never publicly share your keystore.
# See https://flutter.dev/to/reference-keystore
key.properties
**/*.keystore
**/*.jks
Loading

0 comments on commit 2d9b410

Please sign in to comment.