Skip to content

03-07-2025

Pre-release
Pre-release
Compare
Choose a tag to compare
@fulleni fulleni released this 03 Jul 18:01
· 566 commits to main since this release
ac15f43

🎉 Enhanced Content Management System

This release introduces a major overhaul to our content management system, focusing on providing administrators with more granular control and improving the overall user experience. We've introduced a complete Content Lifecycle Management system, allowing content to be marked as Active, Archived, or Draft.

Alongside this, we've significantly refactored our state management for a faster, more responsive UI. Instead of re-fetching data after every change, the app now intelligently updates its local state, resulting in a snappier experience. Automatic timestamping for content creation and updates has also been integrated to enhance data integrity and visibility.

✨ New Features & Enhancements

  • Content Lifecycle Management: Introduced a ContentStatus field (Active, Archived, Draft) for Categories, Headlines, and Sources. This allows administrators to manage the entire lifecycle of content directly within the system.
  • Automatic Timestamps: All content items now automatically receive createdAt and updatedAt timestamps. The updatedAt field is now displayed in the UI in a dd-MM-yyyy format, providing clear visibility into when content was last modified.
  • Enhanced UI for Content Management:
    • Added dropdowns to the create and edit forms for selecting an item's ContentStatus.
    • Updated table views to display Status and Last Updated columns, providing a more relevant overview of content.
    • Table rows are now selectable, allowing for quick navigation to the corresponding edit page.
  • Localization Support: Added new localization keys for "Status", "Last Updated", and the different content statuses to support internationalization.

🚀 Performance & UX Improvements

  • Optimized State Management: The ContentManagementBloc has been refactored to update its state locally after an item is created, updated, or deleted. This eliminates the need to re-fetch the entire list from the server, leading to a significantly more responsive and efficient user interface.

🔧 Fixes & Refinements

  • Code Quality Improvements: Refactored BLoC states and events to incorporate the new ContentStatus field. Improved type safety and immutability using sealed and final classes, refined Equatable props, and removed various unused imports.
  • Dependency Updates: Updated several dependencies to their latest versions, including go_router, device_preview, and freezed_annotation, and bumped the Flutter SDK constraint.