filterator 0.1.3
filterator: ^0.1.3 copied to clipboard
API Query Builder for Dart – A powerful, flexible library for building structured API queries with filtering, sorting, pagination, and easy conversion to API-specific formats.
0.1.3 #
- updates the Dart SDK constraint in
pubspec.yaml
from^3.7.2
to>=3.0.0 <4.0.0
.
0.1.2-beta.2 #
- Deleted unused files:
packages/filterator/lib/src/core/field_types.dart
packages/filterator/lib/src/core/selection.dart
packages/filterator/test/query_tests/query_operators_test.dart
(functionality moved)packages/filterator/test/query_tests/query_tests.dart
packages/filterator/test/query_tests/query_tools_test.dart
(functionality moved)
- Updated
packages/filterator/lib/src/core/query.dart
to remove the staticcast
method fromApiQuery
. - Updated
packages/filterator/test/fiterator_test.dart
to import tests from the newcore
directory. - Created new test files in
packages/filterator/test/core/
:converter_tests.dart
: Basic tests forApiStandardConverter
.query_test.dart
: Tests forApiQuery
construction andtoMap
serialization.paging_operators_test.dart
: (Renamed fromquery_tests/paging_operators_test.dart
) Tests for paging helper functions andApiQuery
toMap
with complex filtering.query_filter_test.dart
: Tests forApiQueryFilter
construction andtoMap
serialization, includingcloneApiQueryFilter
.query_metadata_test.dart
: Tests forApiQueryMetadata
construction,empty
factory, andtoMap
.query_filter_group_test.dart
: Tests forApiQueryFilteringGroup
construction, shortcut constructors,toMap
serialization with nested groups, andcloneApiQueryFilteringGroup
.query_operators_test.dart
: Tests for helper functions for paging, filter groups, filters, ordering, and selections.query_operation_test.dart
: Tests forQueryOperationStringExtension
,QueryOperationExtension
, andQueryOrderDirectionExtension
.query_ordering_test.dart
: Tests forApiQueryOrdering
construction,toMap
, andcloneApiQueryOrdering
.query_response_test.dart
: Tests forApiQueryResponse
construction,empty
factory, andtoMap
.query_paging_test.dart
: Tests forApiQueryPaging
construction, factories,copyWith
,toMap
, andcloneApiQueryPaging
.query_selections_test.dart
: Tests forApiQuerySelection
construction, cloning,copyWith
, andtoMap
serialization.
- Updated
packages/filterator/lib/src/core/core.dart
to remove the export offield_types.dart
.
0.1.1-beta.1 #
- Updating the dependency version in
README.md
to^0.1.0-beta.1
. - Removing extra newlines and whitespace from code examples in
README.md
. - Updating the package description in
pubspec.yaml
for better clarity.
0.1.0-beta.1 #
🚀 Features - Initial Release #
-
Dynamic Query Interface (
ApiQuery
) Introduced a flexible, type-safe API query builder interface supporting:- Simple filters with
where()
andwheres()
helpers - Nested filtering using logical groups:
and()
/or()
- Full control over filtering conditions, ordering, paging, and selection
- Simple filters with
-
Standardized Query Filters (
ApiQueryFilter
)- Supports operations like:
eq
,neq
,lt
,gt
,contains
,inList
, etc. - Provides both short-form and verbose syntax for maximum flexibility
- Supports operations like:
-
Pagination Support (
paginate()
)- Easily define
limit
andoffset
for paginated requests
- Easily define
-
Field Selection (
include()
/exclude()
)- Explicitly include or exclude response fields for lightweight API calls
-
Sorting (
ordering()
)- Order results by any field with direction control (ascending or descending)
-
SupyConverter
-
Converts
ApiQuery
objects to:- Query parameters (
toQueryParameters()
) - JSON body payloads (
toRequestBody()
) - Nested map structures (
body()
)
- Query parameters (
-
Ready to integrate with Supy-style or similar RESTful backends
-
Encoder toggle to support different formats (e.g., REST, GraphQL, OData)
-
-
Extensibility
- Designed to be extensible for future formats and standards (GraphQL, OData, etc.)
- Easily plug in other converters following the same interface