Release Notes v.0.0.11

Jan 21, 2025

ALGA PSA v. 0.0.11 RELEASE NOTES 

New Features

Enhanced TemplateRenderer

  • Dynamic Invoice Fetching: TemplateRenderer now accepts invoiceId instead of invoiceData and dynamically fetches invoice details.

  • Improved List Rendering: Added support for grouped lists with aggregation and better rendering logic.

  • Error Handling: Enhanced error handling and loading states during data fetching.

  • Date Parsing Fix: Resolved issues with getBasicInvoiceViewModel to handle both string and Date objects.

  • Price Calculation Update: Adjusted total_price calculation in the Invoice model to exclude tax amounts.

  • Updated Templates: created new migration for new standard and detailed templates.

  • Styling Updates: Introduced new CSS classes for grouped list styling.

Invoice Management Enhancements

  • Discount Support: Added percentage and fixed-amount discounts for invoices, applicable to line items or the entire invoice.

  • Manual Line Items: Users can now add, edit, and remove manual line items in invoices.

  • Navigation Improvements: Replaced action buttons with dropdown menus, URL-based state management, and browser navigation support.

  • Editing Manual Invoices: Added functionality to edit manually created invoices, with proper validation and error handling.

Billing Features

  • Date Conflict Resolution: Implemented conflict detection for overlapping billing cycles with enhanced validation and error handling.

  • Improved Billing Plan Management: Added a robust BillingPlanDialog component for editing plans, introduced constants for plan types, and improved UI with formatted display values.

Timesheet Approval Changes

  • New Features:

    • Added ability to view and manage approved timesheets.

    • Implemented timesheet approval reversal functionality.

    • Updated UI to display approved timesheet statuses with reversal options.

  • Billing Plan Integration:

    • Added service category change handling for billing plans.

    • Improved time entry queries for accurate billing calculations.

  • Error Handling:

    • Enhanced invoice generation error handling.

    • Added safety checks for invoiced entries before reversal.

    • Improved billing calculation logging with company names.

Project Management

  • Added Editable Start and End Dates for Project Phases and Tasks:

    • Start and end dates for project phases are now editable.

    • Phases are ordered by their end date in the project list for better organization.

    • Tasks now support editable start and end dates, providing more flexibility in scheduling.

    • Enhanced user interface for date editing with real-time validation.

Improvements

Time Entry Enhancements

  • Validation & Usability Improvements:

    • Smart Error Handling: Errors now only display during save attempts and clear when making changes

    • Precise Duration Tracking: Uses actual time differences for duration calculations

    • Billable Time Enforcement: Maintains billable state during invalid entries with 1-minute minimum duration

    • Consistent UI: Updated visual style to match other components

    • Validation Timing: Improved feedback timing with validation on save

  • Component Architecture Improvements:

    • Split TimeEntryDialog into: Dedicated edit form component, Read-only view component and Loading skeletons

    • Performance Boost: Implemented memoization and useCallback optimizations

    • Created dedicated utility files

    • Extracted types to separate definitions

    • Enhanced UIStateContext for better state management

  • Flexible Time Handling:

    • Adaptive Time Entry: Supports both manual input and picker-based entry

    • Immutable Updates: Type-safe state management for reliability

Work Item Picker Enhancements

  • Collapsible Filters: Improved filtering options with the addition of:

    • 'Assigned to' dropdown

    • 'Assigned to me' switch

    • Client dropdown

    • Date range filters

    • Reset filters functionality.

Automation Updates

  • Latest UI Automation Updates:

    • Migrated from direct Puppeteer commands to higher-level helper functions.

    • Added helpers like type(), click(), select(), and wait_for_navigation().

    • Enhanced error handling and server resource cleanup.

    • Improved type support for automation tasks.

    • Simplified integration by removing Anthropic client and consolidating LLM providers.

Bug Fixes

  • Invoice Template Cloning: Resolved issues with cloning invoice templates.

  • Resolved unused fields in billing configuration.

  • Corrected labels for invoice types.

  • Various UI and functionality fixes in billing plans and billing dashboard.