- Updated multiple dashboard components (Invoices, PaymentPolicies, Payments, TaxRecords, FilamentStocks, OrderItems, PartStocks, ProductStocks, PurchaseOrders, Shipments, StockAudits, StockEvents, StockLocations, StockTransfers, AppPasswords, AuditLogs) to incorporate ListViewTabs and ListViewEditButtons for enhanced user interaction.
- Introduced ObjectListViewProvider to manage view state and filter/sort changes across components, improving maintainability and user experience.
- Added state management for active views and filter/sort handling to streamline component functionality.
- Modified padding styles for buttons in the QuickPropertyFilters component to improve visual consistency.
- Enhanced text prompts to provide clearer instructions for users regarding property filtering options.
- Refactored FilterInput component to utilize CSS classes for operand icons, tags, and chips, improving maintainability and readability.
- Added new CSS styles in App.css for filter input elements, enhancing visual consistency and user experience.
- Updated component structure to streamline rendering and improve performance, including adjustments to the property filter layout and scrollbar handling.
- Integrated Badge component to display the count of active sorters in the SortSidebarButton.
- Utilized useLocation and useTableState hooks to manage sorting state based on the current route.
- Updated TableStateContext to include pageSorters state and setPageSorter function for improved sorting functionality across the dashboard.
- Integrated property filter value into the QuickPropertyFilters component for improved filtering capabilities.
- Updated ObjectTable to register page sorter and manage filter states more effectively.
- Refactored QuickPropertyFilters to include category labels and clear filter functionality, enhancing user experience.
- Adjusted styles and layout for better usability and visual consistency across components.
- Moved the MissingPlaceholder component logic to a new position within the SimplePropertyFilter component for improved readability and structure.
- Ensured that the component correctly displays a message when no options are found while maintaining the loading state functionality.
- Added MissingPlaceholder component to display a message when no options are found.
- Introduced omitUndefinedValues utility to filter out undefined values from filter objects, improving data handling.
- Updated loading state initialization to reflect visibility status.
- Optimized filter handling for better performance and clarity in the SimpleDateTimePropertyFilter component.
- Introduced QuickPropertyFilters component for streamlined property filtering functionality.
- Updated FilterInput to integrate QuickPropertyFilters, enhancing user experience with quick access to filter options.
- Modified ObjectTable to include QuickPropertyFilters, improving filtering capabilities within the dashboard.
- Adjusted styles in App.css for dropdown z-index and input font consistency.
- Added expression highlighting functionality to the InputNumberCal component, allowing operators and brackets to be visually distinct.
- Implemented layout synchronization for highlighted expressions to match input field dimensions.
- Updated styles in App.css for dropdown and input number components to improve visual hierarchy and user experience.
- Refactored input handling to support expression mode with keyboard interactions for better usability.
- Updated NewObjectButtons to disable controls based on loading state and current step.
- Refactored NewObjectForm to integrate computed entries calculation and manage loading state more effectively.
- Enhanced ObjectProperty and WizardView components to respect the disabled state during form interactions.
- Introduced new utility functions for calculating model computed entries, improving data handling and clarity.
- Introduced new utility functions in ObjectSelect for tree node searching and value validation, improving data handling and user experience.
- Enhanced ObjectSelect component to manage object updates and reloading logic more effectively, ensuring accurate state representation.
- Added subscription capabilities for all object updates in ApiServerContext, allowing for real-time updates across components.
- Refactored existing methods to improve clarity and maintainability, enhancing overall performance of the dashboard components.
- Added useCallback for formatTooltipValue to improve tooltip display by incorporating prefix, suffix, and rounding based on series definitions.
- Updated data structure in chart data preparation to include prefix and suffix for values, enhancing clarity in displayed metrics.
- Imported round utility function to facilitate number rounding based on series configuration, improving data presentation accuracy.
- Updated NewHost component to include new fields for 'deviceInfo.user.shell' and 'deviceInfo.process.execPath', improving the detail of host information captured.
- Enhanced ObjectForm component to handle nested property paths correctly, ensuring computed values do not overwrite parent objects when sibling properties exist.
- Modified ObjectInfo component to correctly display values for object properties, improving data representation.
- Refactored Host model to include new device information fields, enhancing the overall data structure for hosts.
- Updated ObjectProperty component to improve rendering logic for state and message values, enhancing user feedback.
- Reformatted fieldNames for better readability and maintainability in the Tree component.
- Updated DocumentPrintButton to include subscription handling for document templates, improving real-time updates and user experience.
- Refactored UserNotifierToggle to manage user notifier states with enhanced subscription logic, ensuring accurate updates and improved performance.
- Introduced memoization and callback optimizations to streamline data fetching and state management in both components.
- Expanded FinanceOverview, InventoryOverview, and SalesOverview components to include new statistics and history displays for various object types, improving data visibility.
- Added support for tax record statistics, payment history, and invoice history in FinanceOverview.
- Introduced stock transfer, shipment, and part stock history statistics in InventoryOverview.
- Enhanced SalesOverview with order item statistics and shipment history, providing a more comprehensive view of sales data.
- Updated ModelHistoryDisplay to support dynamic history groups, improving flexibility in data representation.
- Refactored various model definitions to include new statistical measures, enhancing the overall data model structure.
- Added functionality to toggle between vertical and horizontal layouts in the DashboardOverviewFlexColumns component, improving responsiveness based on available space.
- Implemented useLayoutEffect to manage layout changes dynamically, ensuring optimal display of child components.
- Updated CSS styles to support the new vertical layout, enhancing the overall user experience in the dashboard.
- Introduced LazyWhenVisible component to optimize rendering of dashboard sections based on scroll visibility, improving performance.
- Updated DashboardOverviewPage to utilize LazyWhenVisible for sections containing stats, history, or tables, enhancing user experience by loading content only when visible.
- Added useScrollVisibility hook to manage visibility state, ensuring efficient resource usage during scrolling.
- Reformatted code for better readability by adjusting the structure of the useHistoryLegendOverlay hook.
- Updated padding in Card components for consistent layout across displays.
- Enhanced Flex components with consistent gap values for improved spacing.
- Added overflow handling to div elements to prevent layout issues with chart rows.
- Improved loading state handling for better user feedback when no data is available.
- Introduced new components, HistoryEChart and HistoryChartLegend, to replace Recharts with ECharts for improved charting capabilities in the dashboard.
- Updated HistoryDisplay and ModelHistoryDisplay components to utilize the new ECharts components, enhancing the overall data visualization experience.
- Implemented a custom tooltip for ECharts to provide detailed information on data points, improving user interaction and data insights.
- Added a hook, useHistoryLegendOverlay, to manage the visibility of the chart legend based on available space, optimizing the layout for different screen sizes.
- Removed unused Recharts imports and related code, streamlining the component structure and improving performance.
- Updated FilterSidebarButton to include a Badge displaying the count of active filters based on the current location, improving user awareness of applied filters.
- Integrated useTableState and useLocation hooks for dynamic filter management, enhancing the overall functionality of the filter sidebar.
- Implemented a MissingPlaceholder component in SimplePropertyFilter to display a message when no options are available, enhancing user feedback during data retrieval.
- Improved loading and visibility handling to optimize the user experience in scenarios with empty option lists.
- Updated FilterInput, FilterSidebar, ObjectTable, SimpleDateTimePropertyFilter, and SimplePropertyFilter components to support new filter and masterFilter props, improving data filtering capabilities.
- Introduced ObjectTableFilterContext for better state management of filter values across components, enhancing the overall user experience.
- Refactored getModelPropertyValues function in ApiServerContext to accept filter parameters, allowing for more dynamic data fetching based on user-defined filters.
- Improved loading and visibility handling in SimpleDateTimePropertyFilter and SimplePropertyFilter to optimize performance during data retrieval.
- Introduced new components for managing Payment Policies and Fulfillment Policies, enhancing the dashboard's functionality for financial management.
- Added corresponding SVG icons for Payment Policy, Fulfillment Policy, and Return Policy to improve visual representation.
- Updated App.css with new styles for file gallery previews, ensuring a cohesive layout and user experience across the dashboard.
- Implemented new object forms and tables for Payment Policies, allowing for better data handling and user interaction.
- Enhanced the object creation and update processes by integrating the stripNestedObjectProperties utility function, ensuring cleaner payloads are sent to the createObject and updateObject functions.
- Updated the import statements in both NewObjectForm and ObjectForm to include the new utility function, improving data management and consistency across forms.
- Adjusted CSS styles in App.css for improved visual consistency, including changes to the positioning and appearance of skeleton inputs and separators.
- Modified padding in DashboardOverviewPage to enhance layout during editing mode.
- Enhanced loading state handling in ModelHistoryDisplay to provide clearer feedback based on chart data availability.
- Introduced a new Card component for the overview flex columns actions, improving the layout and organization of action buttons.
- Updated styles in App.css to support the new action card positioning and enhance overall visual consistency.
- Replaced the XMarkIcon with a BinIcon for better clarity in the remove action button.
- Adjusted padding in the DashboardOverviewPage to improve layout during editing mode.
- Introduced DashboardOverviewPage and DashboardOverviewFlexColumns components to streamline the layout and management of dashboard sections, improving overall organization and usability.
- Replaced individual collapsible sections in Finance, Inventory, Production, and Sales overviews with a unified structure, enhancing maintainability and consistency across the dashboard.
- Added ActionsButton component for improved action handling and keyboard shortcuts, enhancing user interaction capabilities.
- Updated styles in App.css to support new drag-and-drop functionality and layout features, ensuring a cohesive visual experience.
- Refactored existing components to utilize the new structure, improving code clarity and reducing redundancy.
- Added a switch to toggle between absolute and relative value modes for chart data in ModelHistoryDisplay, improving data analysis flexibility.
- Refactored chart data calculation to support relative values based on the selected history mode, enhancing user experience and data interpretation.
- Updated component layout for better alignment and usability of the new features.
- Updated InventoryOverview to include additional statistics for part stock, filament stock, product stock, and stock events, improving data visibility.
- Refactored InfoCollapse components to support new statistics and ensure proper state management for collapsible sections.
- Enhanced ModelHistoryDisplay to support both line and bar chart types, providing more flexibility in data visualization.
- Added new stats definitions for FilamentStock, PartStock, ProductStock, and StockEvent models to support the expanded inventory features.
- Renamed 'partStocks' to 'partStockList' in NewProductStock and ProductStockInfo components for consistency and clarity.
- Updated visible properties and object data handling to reflect the new naming convention.
- Refactored utility functions in NewObjectForm and ObjectForm to utilize a new mergeFormData function for improved data management.
- Enhanced ObjectInfo and ObjectProperty components by removing unnecessary state management and ensuring proper data flow.
- Adjusted layout properties in ObjectList and ObjectSelect components for better responsiveness and usability.
- Updated CourierServiceInfo and ListingInfo components to include collapsible sections for Marketplaces and Listing Description, improving data organization and user experience.
- Introduced ObjectProperty component to display marketplace details and listing descriptions dynamically.
- Added new properties to the Courier and Listing models to support marketplaces and stock quantity, enhancing data management capabilities.
- Implemented SyncMarketplace component for refreshing marketplace metadata, streamlining the synchronization process.
- Enhanced CustomSelect and MarkdownDisplay components for better usability and content rendering.
- Introduced a new AdaptiveSplitter component to enhance layout flexibility in the dashboard, allowing for dynamic resizing of panels.
- Updated App.css to include styles for the new adaptive splitter, ensuring consistent appearance and behavior across different orientations.
- Refactored DashboardSidebarSplitter to utilize the AdaptiveSplitter, improving sidebar management and responsiveness during resizing.
- Adjusted transition properties and sizes for smoother user experience when interacting with the splitter components.
- Introduced ExternalLink component to manage external links consistently across the application, enhancing user experience in Electron environments.
- Updated About and UrlDisplay components to utilize ExternalLink for improved link handling and to ensure proper behavior in Electron.
- Removed direct usage of Ant Design's Link component in favor of the new ExternalLink, streamlining the codebase and enhancing maintainability.
- Updated transition timing functions in App.css for smoother animations, replacing 'ease-in-out' with a custom cubic-bezier curve.
- Increased the sidebar size transition duration in DashboardSidebarSplitter from 150ms to 300ms for improved user experience during resizing.
- Refactored transition properties for the dashboard splitter to ensure consistent animation behavior across components.
- Removed the delete action from various components including InvoiceInfo, PaymentInfo, and others to streamline functionality.
- Introduced a new DeleteObject component to handle deletion logic in a centralized manner, enhancing code maintainability.
- Updated models to utilize the new DeleteObject component for consistent deletion handling across the application.
- Simplified ObjectForm by eliminating the previous delete modal, improving component structure and clarity.
- Introduced applyComputedEntries function to streamline the merging of computed entries with existing object data, enhancing clarity and maintainability.
- Updated NewObjectForm and ObjectForm components to utilize applyComputedEntries for setting initial form data and computed values, improving data handling consistency.
- Refactored ObjectChildTable to ensure proper handling of value props and fallback mechanisms, enhancing user experience during editing.
- Removed unused DeleteObjectModal from ObjectForm, simplifying the component structure.
- Introduced a new setting for showNavigationLabels in the ThemeContext to manage the visibility of navigation labels.
- Updated the Settings component to allow users to toggle navigation labels and persist this setting.
- Modified the DashboardNavigation component to conditionally render navigation labels based on user preference.
- Adjusted App.css to improve styling for navigation items when labels are hidden.
- Updated App.css to refine styling for object display tags and introduced a border for better visual distinction.
- Enhanced NewDocumentJob component by adding a default quantity value for improved user experience.
- Introduced PrinterQueue component to manage and display printer job queues, enhancing the ControlPrinter functionality.
- Improved MissingPlaceholder component with additional props for customizable border and padding options.
- Adjusted ObjectDisplay and ObjectList components for better layout and interaction, including cursor changes for clickable elements.
- Updated ThemeContext to manage new color variables for consistent theming across components.
- Updated ObjectList component to use Flex for layout, enhancing responsiveness and alignment.
- Introduced scrollHorizontal prop to conditionally render content in a horizontal scroll box.
- Adjusted ObjectProperty to pass scrollHorizontal prop, ensuring consistent behavior in table views.
- Enhanced SimplePropertyFilter to handle objectList type correctly, improving data handling.
- Modified background color in App.css to use color-mix for improved visual effects.
- Added border and box-shadow to .react-pdf__Page class for better PDF presentation.
- Simplified conditional styling in PDFViewer.jsx for cleaner code structure.
- Replaced HProgress and ElipsisText with the new ProgressDisplay component in AppUpdateProgress for improved code clarity and reusability.
- Updated TemplatePreview to utilize ProgressDisplay for rendering download progress, enhancing consistency across components.
- Introduced ProgressDisplay component to encapsulate progress rendering logic, allowing for customizable label positioning and styling.
- Replaced a div with a Flex component to enhance layout and alignment of the TemplatePreview.
- Adjusted styles to ensure minimum width and proper cursor behavior during panning.
- Streamlined iframe rendering within the new structure for better responsiveness and user experience.
- Added a new function to clear iframe contents, improving resource management and preventing stale data display.
- Integrated the clearIframeContents function into the PDF preview type change handler, ensuring a clean slate when switching to PDF previews.
- Updated state management for iframe size and preview content to enhance user experience and maintain consistency.
- Modified the TemplatePreview component to improve the styling of the Card element, setting maxWidth, minWidth, and margin for better layout.
- Adjusted Flex component's gap for improved spacing between elements, enhancing overall visual presentation.
- Introduced PDFPreview and PDFViewer components to facilitate PDF rendering and interaction within the dashboard.
- Implemented zoom and pan functionalities in PDFPreview for improved user experience.
- Enhanced App.css with styles for a new overlay during PDF loading, ensuring a smooth visual transition.
- Updated TemplatePreview to integrate PDF viewing capabilities, allowing users to preview PDF documents seamlessly.
- Modified ApiServerContext to support asynchronous PDF downloads, improving document handling efficiency.