firestore_odm_builder 3.1.1 copy "firestore_odm_builder: ^3.1.1" to clipboard
firestore_odm_builder: ^3.1.1 copied to clipboard

Code generator for Firestore ODM annotations. Generates type-safe Firestore operations from annotated classes.

3.1.1 #

  • FEAT: refactor model analysis and converter factory for improved instance management. (d078ba72)

3.1.0 #

  • FEAT: add tests for snake_case to camelCase conversion in Firestore collections. (742a3bc3)

3.0.2 #

  • REFACTOR: simplify JSON method checks and improve converter naming conventions. (6d55a580)

3.0.1 #

  • FIX: update parameter types for fromJson and toJson methods in ConverterFactory. (d424c904)

3.0.0 #

  • REFACTOR(model_analyzer): streamline JsonConverter support check and remove unused getBaseTypeName method. (89921d46)
  • REFACTOR: enhance type safety and streamline update operations across multiple classes. (3bee1678)
  • REFACTOR: update patch method signatures and improve import organization. (ce678f25)
  • REFACTOR: update constant property in UpdateGenerator and ConverterFactory for better type handling. (bc372a1a)
  • REFACTOR: replace createConverter with getConverter in converter-related classes. (e88ffa84)
  • REFACTOR: update import statements to use reference_utils in filter and order by generators. (5121f1df)
  • REFACTOR: update import statement and simplify class name retrieval in AggregateGenerator. (8e559a9e)
  • REFACTOR: remove unused Generater class and streamline converter creation process. (56cc0acd)
  • REFACTOR: replace StringHelpers with StringUtils and update string manipulation methods. (916daaf4)
  • REFACTOR: simplify converter and workflow. (a681be50)
  • REFACTOR(model_analyzer): streamline type converter implementations and enhance JSON handling. (a01c8be8)
  • REFACTOR: firestore ODM Converter Logic. (3a93e52e)
  • REFACTOR: remove unused ConverterService and related code. (b55c13b7)
  • REFACTOR: rework converters. (4c0fdf19)
  • REFACTOR: update converter handling to use references instead of instances and improve type conversion logic. (ceed64d8)
  • REFACTOR: introduce TypeConverter interface and refactor ConverterService to use DefaultConverter. (41273c31)
  • REFACTOR: simplify Firestore type handling in ConverterService and ModelAnalyzer. (d35aa8f0)
  • REFACTOR: remove obsolete collection generator and validator classes. (d25796cd)
  • REFACTOR: remove unused imports and streamline code in various files. (63b9891c)
  • REFACTOR: rework to focus on extension-based architecture. (945d8dd0)
  • REFACTOR(converter_generator): enhance JSON support handling and add debug output for ManualUser2. (003ed847)
  • REFACTOR(converter_service): remove unused UnderlyingConverter cases and enhance converter refinement logic. (a1eba267)
  • REFACTOR(update_generator): update field type check for tags and simplify return type comparison. (7c1bb75d)
  • REFACTOR(model_analyzer): simplify model analysis method calls and remove unused code. (496ad723)
  • REFACTOR(schema_generator): add type handling methods and streamline model analysis process. (5d906129)
  • REFACTOR(model_analyzer): simplify model analysis by removing internal analysis method and updating references. (c4583af3)
  • REFACTOR(converter): restructure converter generation with explicit typing and improved annotation handling. (9e470ded)
  • REFACTOR(filter_builder): clean up whitespace and improve readability in UpdateBuilder class. (c203cfe0)
  • REFACTOR(update_generator): remove deprecated call method and clean up code. (760e8356)
  • REFACTOR(name_util): improve error handling and enforce valid element checks in DartType extensions. (00f9f752)
  • REFACTOR(name_util): enhance nullability handling and update type reference logic. (faf15f0f)
  • REFACTOR(converter_service): remove debug print statement from ConverterTemplate. (4856442d)
  • REFACTOR(update_generator): remove debug print statement from update method generation. (67241f3f)
  • REFACTOR(converter_service): enhance type handling and simplify converter logic. (2661cf86)
  • REFACTOR(model_analyzer): simplify TypeConverter interface by removing unused parameters and enhancing method clarity. (8920979b)
  • REFACTOR(model_analyzer): remove unused TypeRegistry class and related methods. (ce290277)
  • REFACTOR: reworking builder. (e076e310)
  • REFACTOR: streamline JSON converter handling and enhance type reference management. (4470a1be)
  • REFACTOR(order_by_generator): update generated OrderByFieldSelector to include type parameters in documentation. (57c32bf5)
  • REFACTOR(filter_generator): enhance filter generation methods using code_builder and improve method structure. (3341ad2d)
  • REFACTOR(schema_generator): enhance schema generation logic using code_builder, improve type handling, and streamline method structure. (300e3f18)
  • REFACTOR(aggregate_generator): enhance method generation for aggregate field selectors and improve type handling. (4359e149)
  • REFACTOR(update_generator): enhance update builder generation and improve method structure. (679dba07)
  • REFACTOR(order_by_generator): enhance method generation for order by selectors and improve nested type analysis. (1a55bbdd)
  • REFACTOR(schema_generator): simplify condition for field analysis in schema generation. (6ea3376f)
  • REFACTOR(converter_generator): enhance type handling and improve converter generation logic. (a61420e6)
  • REFACTOR(converter_generator): streamline toType getter and improve formatting in ConverterTemplate. (58210ade)
  • FIX(custom_converter): missing field converters in custom converter. (d96ec5eb)
  • FEAT: rework builders. (c96df342)
  • FEAT: Implement ConverterFactory for dynamic type conversion. (d3c36136)
  • FEAT(model_analyzer): simplify generic type handling and add debug output for ManualUser2. (28eafbe0)
  • FEAT(converter_generator): add type casting for single and two type parameters in toFirestore conversion. (61a0bf09)
  • FEAT(converter_generator): enhance generic type handling in converter generation. (bd00d10e)
  • FEAT(model_analyzer): enhance recursive analysis for deeper nested types in ModelAnalyzer. (d236709c)
  • FEAT(model_analyzer): skip analysis for type parameters in TypeRegistry and ModelAnalyzer. (fb3cb32d)
  • FEAT(generators): enhance aggregate, filter, order by, and update generators to support generic types. (2f7e69c7)
  • FEAT(schema_generator): enhance converter generation for generic types and improve type analysis. (21b2c7d2)
  • FEAT(converters): introduce generic converters for custom types and enhance type analysis. (534f391a)

2.3.3 #

  • FIX(update_generator): enhance deprecation notice for update method and clarify usage of patch operations. (519cb496)
  • FIX(update_generator): optimize null checks and improve data assignment in update method. (8ee14379)

2.3.2 #

  • REFACTOR(generator): simplify update builder generation by using converter parameter. (99923a5f)

2.3.1 #

  • FIX(subcollections): implement path-specific isolation to prevent cross-collection access. (95d31e58)
  • FIX(generator): correct extension placement for nested subcollections. (9f64c681)

2.3.0 #

  • REFACTOR: improve JSON serialization support checks in ModelAnalyzer. (407232c5)
  • REFACTOR: streamline Firestore conversion methods and enhance type key generation with element annotations. (3ff3aa2c)
  • REFACTOR: Firestore ODM to use FirestoreConverter instead of ModelConverter. (40acf7dc)
  • FIX: list and map casting. (349c29e9)
  • FEAT: update AnnotationConverter to use fromJson and toJson methods; refactor FieldInfo and ModelAnalysis to utilize TypeAnalysisResult. (7cf6784d)
  • FEAT: add support for manual serialization in ConverterGenerator. (aa0ed533)
  • FEAT: enhance UpdateGenerator to support custom toFirestore expressions for fields with converters. (c9fd3091)
  • FEAT: add nestedProfiles field to ListLengthModel and update JSON conversion logic. (447a5f77)
  • FEAT: add automatic JSON conversion support for generic collections. (c115bcfb)
  • FEAT: enhance Firestore converters to support custom IList, ISet, and IMap types with dynamic conversion expressions. (6e7456c0)
  • FEAT: enhance Firestore type determination by incorporating @JsonConverter support. (213b2821)
  • FEAT: enhance FirestoreType enum and add Firestore type determination for Dart types. (35c63402)
  • FEAT: add DurationFieldUpdate class and support for Duration type in update generator. (5cca1de8)
  • FEAT: enhance update builder with DefaultUpdateBuilder and streamline field update methods. (1b277aa0)

2.2.2 #

  • FIX: IMap bug fixes and patch operations in UpdateBuilder. (579476a4)

2.2.1 #

  • REFACTOR: remove debug print statements from model analysis and firestore generator. (98217a66)

2.2.0 #

  • REFACTOR: remove unused variables and simplify field analysis in ModelAnalyzer. (1032f4e0)
  • FIX: specify version for firestore_odm_annotation dependency in pubspec.yaml. (a768af95)
  • FEAT: Add comprehensive batch operations support. (802a629b)
  • FEAT: refactor project folder structure. (d4907075)
  • DOCS: Update all documentation URLs to GitHub Pages. (321ccdcd)
  • DOCS: refactor and centralize README.md. (7c121c62)

2.1.0 #

  • FEAT: add json_annotation dependency to pubspec.yaml. (f2c7f28d)

2.0.1 #

  • REFACTOR: code formatting and improve readability across multiple files. (4a7876b7)
  • REFACTOR: update Firestore ODM builders to enhance type handling and improve code structure. (841f5073)
  • REFACTOR: update to use element2 API for improved type handling. (77260aa7)
  • REFACTOR: firestore ODM code generation to utilize ModelAnalysis. (1e82daab)
  • REFACTOR: refactor and clean up code across multiple files. (cc44c322)

2.0.0 #

Note: This release has breaking changes.

  • REFACTOR: remove TupleAggregateQuery and UpdateBuilder, introduce utility functions for Firestore data processing. (8a224de8)
  • FIX: implement defer writes pattern to resolve read-write ordering. (cf1ae907)
  • FEAT: enhance type analysis with robust iterable and map support in generators. (0d4ed7bf)
  • FEAT: add map operations, bulk delete, and collection bulk operations with comprehensive testing. (d5612029)
  • FEAT: Enhance transaction support in Firestore ODM. (5ba0b618)
  • FEAT: Implement pagination support in Firestore ODM. (6abde897)
  • FEAT: implement callable update and order by instances to reduce generated code. (cf16cea8)
  • BREAKING FEAT: add aggregation and pagination support with builder-to-selector refactor. (8978198c)

1.1.2 #

  • REFACTOR: remove unused _getSingularName method. (8020f9e1)
  • REFACTOR: remove obsolete document access method generation. (09a25af4)
  • REFACTOR: implement callable filter instances to reduce generated code. (a19b2f11)
  • REFACTOR: integrate ModelConverter for data transformation across services. (90979671)
  • REFACTOR: remove local path references to firestore_odm_annotation. (48b84db7)
  • REFACTOR: remove unused imports and obsolete schema generation method. (86c0525a)
  • REFACTOR: simplify CollectionInfo and remove unused suffix generation. (9087b3d1)

1.1.1 #

  • REFACTOR: improve schema class name generation and add assigned value extraction. (997aa36a)

1.1.0 #

  • REFACTOR: transform monolithic FirestoreGenerator into modular architecture. (a3d79960)
  • REFACTOR: Remove all hardcoded field names and simplify generator. (8afa7ecd)
  • REFACTOR: Move basic field builders from generator to core package. (eb71eaea)
  • REFACTOR: clean up API naming and remove legacy methods. (d4045b14)
  • FIX: eliminate duplicate collection classes for same model. (3142a19a)
  • FIX: refactor collection classes to be generic and reusable. (f873b8be)
  • FIX: Restore path dependencies for proper development workflow. (d4d555c0)
  • FIX: restore nested updater class generation. (8b32dc96)
  • FIX: remove hardcoded 'id' references, use dynamic documentIdField. (135af011)
  • FIX: Resolve remaining lint issues in generated code. (13e6288e)
  • FIX: Resolve lint issues in generated code. (4133293c)
  • FIX: Remove unnecessary null assertion from filter addition in Firestore generator. (4f6fb294)
  • FEAT: implement type-safe aggregate operations and count queries with generated field selectors. (8e95df5b)
  • FEAT: Introduce schema-based architecture for Firestore ODM. (de939d90)
  • FEAT: Successfully publish all packages to pub.dev. (9e10b6c6)
  • FEAT: Complete CI/CD pipeline setup with melos for publishing. (5f3e440c)
  • FEAT: convert FirestoreODM constructor to named parameters. (519b3e14)
  • FEAT: Add support for automatic document ID detection in models. (6b0c1101)
  • FEAT: unify Collection annotation to support multiple collection paths. (9fbb73b6)
  • FEAT: implement multiple @Collection annotations with subcollection support. (10a9564b)
  • FEAT: add comprehensive @Collection validation system. (12659528)
  • FEAT: refactor to unified @Collection annotation with subcollection support. (c4330d39)
  • FEAT: add @DocumentIdField annotation support. (9cfb884d)
  • FEAT: Remove legacy orderBy methods from implementation and tests. (e77a6349)
  • FEAT: Update test cases to support mixed update syntax and update README. (5785fc80)
  • FEAT: complete Firestore ODM library implementation. (f7b0da36)
  • FEAT: implement chained updates and enhanced ODM features. (59460a10)
  • FEAT: implement nested field updates with copyWith-style API. (a968695a)
  • FEAT: comprehensive testing of complex data types and extension methods. (56ff7e93)
  • FEAT: implement RxDB-style API with atomic operations. (08af4f52)
  • FEAT: restructure as monorepo with strong-typed Firestore ODM. (b9e6ced0)
  • FEAT: Complete Firestore ODM example with working code generation. (77f515bf)
  • FEAT: Convert Firestore ODM to monorepo library. (279e3547)

Changelog #

1.0.0 - 2025-01-09 #

Added #

  • Initial release of firestore_odm_builder
  • Code generation for @Collection and @SubCollection annotations
  • Type-safe query builder generation
  • Automatic serialization/deserialization code generation
  • Real-time snapshot support generation
  • Transaction and batch operation support
  • Comprehensive error handling and validation