- Introduced NavigationTabsContext to manage tab state and navigation within the dashboard.
- Added DashboardTabs component for improved tabbed navigation, allowing users to add, close, and reorder tabs.
- Enhanced Dashboard layout to conditionally render tab panes based on the active tab, improving user experience.
- Updated various components to utilize navigation tab context, ensuring consistent title management and tab interactions.
- Implemented drag-and-drop functionality for tabs, enabling users to rearrange their workspace effectively.
- Refactored CSS styles for dashboard tabs and panes to ensure proper layout and responsiveness across devices.
- Introduced ObjectChildCards component to manage recipients in the NewEmailMessage and EmailMessageInfo components, allowing for better organization and display of recipient information.
- Updated EmailMessageInfo to include a collapsible section for recipients, enhancing user experience by providing clear visibility of recipient details.
- Refactored email recipient handling in NewEmailMessage to utilize candidatesToRecipients for improved recipient management and validation.
- Enhanced EmailSendButton to accommodate the new recipients structure, ensuring proper data flow and functionality.
- Improved utility functions for email recipient resolution, streamlining the process of fetching and managing recipient data.
- Integrated InfoActionButtons into multiple components across the Finance and Inventory sections, enhancing user interaction and providing contextual actions for invoices, payment policies, payments, tax records, and various inventory items.
- Updated the respective components to include the new buttons with appropriate object types and list mode settings, improving the overall functionality and user experience in the dashboard.
- Wrapped FilePreview in a Spin component to indicate loading state when fetching file data in FileInfo.
- Removed hardcoded color properties from GCodePreview and implemented dynamic theme color support based on user settings.
- Refactored camera and control handling in GCodePreview for improved user interaction and responsiveness.
- Updated File model to include 'extension' field for better file management and sorting capabilities.
- Adjusted formatting in DocumentTemplateInfo component for improved readability and consistency.
- Updated DocumentTemplate and EmailTemplate models to include 'updatedAt' field with appropriate properties for better data tracking.
- Refined file field definitions in both models to enhance clarity and functionality, including master filters and thumbnail support.
- Updated fcTemplateLang to include resourceNames for improved autocompletion in template languages.
- Added resource management capabilities to DocumentTemplate and EmailTemplate models, allowing for dynamic handling of resources.
- Enhanced DocumentTemplateInfo and EmailTemplateInfo components to display and manage resources, improving user interaction and data visibility.
- Refactored related components, including CodeBlockEditor and ObjectProperty, to support resource integration, ensuring consistent functionality across the application.
- Updated field labels in EmailMessage model for clarity, changing 'Recipient' to 'Recipient Email' and 'Recipient Object' to 'Recipient'.
- Added 'Updated At' timestamp field to File model to track modification times, improving data management and auditing capabilities.
- Integrated BulkObjectActions component across various management and dashboard components for improved batch processing capabilities.
- Updated components including Invoices, PaymentPolicies, Payments, TaxRecords, and multiple Inventory and Management sections to include bulk action functionality.
- Enhanced user experience by allowing users to perform actions on multiple items simultaneously, streamlining workflows and improving efficiency.
- Introduced new EmailAccounts and EmailMessages components for managing email accounts and messages.
- Implemented ObjectTable for displaying data with filtering and sorting capabilities.
- Integrated InfoActionButtons for enhanced user interactions across various management functionalities.
- Refactored existing components to replace DocumentPrintButton with InfoActionButtons for consistency in action handling.
- Added EmailAccountInfo component for detailed view and management of individual email accounts.
- Updated the objectData method in SalesOrder and User models to directly return the complete objectData instead of a subset, enhancing data accessibility.
- Improved clarity and maintainability of the objectData function structure in both models, ensuring consistent handling of order and user data.
- Updated lazy loading syntax for component imports across multiple models to enhance code clarity.
- Reformatted content return statements in various components for better readability.
- Adjusted column widths for date fields from 175 to 200 to improve layout consistency across models.
- Ensured consistent formatting and structure in model definitions for better maintainability.
- Removed unused imports and streamlined component structure for better readability.
- Added a new settings schema to manage user and app settings, enhancing configurability.
- Updated state management for settings, including draft and saved settings handling.
- Improved appearance application logic to dynamically adjust theme and density based on user preferences.
- Introduced utility functions for validating and picking settings, ensuring robust settings management.
- Updated lazy loading syntax for component imports to enhance code clarity.
- Reformatted content return statements in SKU components for better readability.
- Added 'overrideCost' and 'overridePrice' fields to SKU models for expanded functionality.
- Adjusted column widths for 'Override Cost' and 'Override Price' fields to improve layout consistency.
- Added new date utility functions for better handling of date ranges, including start and end of month, week, and year.
- Updated FilterInput component to support date unit highlighting and improved tokenization for date expressions.
- Enhanced QuickPropertyFilters to include additional date filter options such as 'Today', 'Yesterday', and relative date ranges.
- Improved CSS styles for date input elements to enhance visibility and user interaction.
- Refactored AuditLogs component to integrate new ObjectTableViewButton for better data representation.
- Modified the getModelByPluralName function to utilize replaceAll instead of replace for improved whitespace removal in formatted names, enhancing consistency in model name formatting.
- 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.
- Added 'additionalCost' and 'additionalCostWithTax' fields to CourierService model.
- Introduced 'connection.port' field in DocumentPrinter model.
- Updated Filament model with 'density' and 'emptySpoolWeight' fields.
- Enhanced Part, PartSku, Product, and ProductSku models by adding 'cost', 'costWithTax', 'price', 'margin', and 'priceWithTax' fields for improved pricing structure.
- Introduced the PostFilamentStock component to handle posting filament stock with confirmation dialog and loading state management.
- Updated NewFilamentStock component to change the default state from 'unconsumed' to 'draft'.
- Enhanced FilamentStock model by adding 'postedAt' field and integrating the PostFilamentStock component into the actions for posting filament stocks.
- Improved visibility and disabled state logic for editing and posting actions based on filament stock state.
- Added disabled state logic to FilamentStock, PartStock, and ProductStock models to prevent actions when the respective object data is not present.
- Improved return values in FilamentStock model to handle undefined cases for starting and current weights, ensuring robust data handling.
- Updated ShipmentInfo component to enhance code readability by adjusting label widths and formatting masterFilter properties.
- Refactored PurchaseOrder model to spread objectData properties, improving data handling and consistency across order-related functionalities.
- Introduced new sections for Filament Stocks, Part Stocks, Product Stocks, and Stock Audits in the StockLocationInfo component, enhancing inventory visibility.
- Added Stock Events section to the StockTransferInfo component, improving data representation for stock transfers.
- Updated StockAuditLevelInfo component to include Stock Audits, ensuring comprehensive audit management.
- Enhanced state management and UI elements for better user experience across all components.
- Removed the default transfer name generation from NewStockTransfer component to simplify initialization.
- Updated the description in PostStockTransfer component to clarify the posting process.
- Enhanced StockTransfer model by adding 'fromLocation' and 'toLocation' filters and columns, improving data representation.
- Refactored properties in StockTransfer model to ensure required fields are correctly set and improved data handling for stock types and quantities.
- Modified NewStockAudit and NewStockAuditLevel components to include a default state of 'draft' in their defaultValues, enhancing the initialization process.
- Updated StockAuditLevel model to make the 'tags' field required, ensuring necessary data is captured.
- Improved data handling in the StockAuditLevel model by refining the value function for better clarity and maintainability.
- Added 'modalCentered' property to the 'post' modal in Invoice, Payment, ProductStock, and PartStock models to improve modal presentation.
- Reformatted content return statements in Invoice, Payment, and PurchaseOrder models for better readability and consistency.
- Introduced Stock Audit Level management components, including StockAuditLevels, NewStockAuditLevel, and StockAuditLevelInfo, to facilitate the creation and management of stock audit levels.
- Enhanced existing StockAudit components by adding a PostStockAudit feature for posting stock audits and updating the NewStockAudit form to handle draft states.
- Updated StockAuditInfo to include new properties and improved visibility settings for audit lines, enhancing user experience and data representation.
- Refactored ObjectModels and sidebar configurations to integrate Stock Audit Levels into the management dashboard, improving navigation and accessibility.
- Added new utility functions and improved data handling across components to ensure seamless integration and performance.
- 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.
- Removed partially paid, partially shipped, and partially delivered metrics from Invoice, PurchaseOrder, and SalesOrder models to streamline data representation.
- Updated shipped and received metrics to include sums of their respective partially metrics, enhancing overall clarity in order tracking.
- 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.
- Introduced a new 'SyncWebhooks' component for managing marketplace webhooks, enhancing integration capabilities.
- Added 'config.webhookUrl' to the Marketplace model, providing a read-only URL for webhook registration.
- Updated the NewMarketplace component to include the webhook URL configuration, improving the setup process for new marketplaces.
- 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.
- Updated SalesOverview to include new collapsible sections for Listing, Marketplace, and Client statistics, improving data organization and visibility.
- Added detailed statistics for Sales Order History, Confirmed Sales Orders, Listing History, Draft Listings, Marketplace History, Ready Marketplaces, Client History, and Active Clients.
- Refactored useCollapseState to manage the expanded state of new sections, ensuring a cohesive user experience across the dashboard.
- 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.
- 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.
- 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.
- Reformatted the NewDocumentTemplate import for better readability.
- Enhanced the layout of the DocumentTemplate component by adjusting column widths for various fields, improving overall data presentation.
- Ensured consistent formatting in the content rendering of NewDocumentTemplate, enhancing code clarity.
- Updated NewDocumentTemplate component to include 'referencedTemplates' in visible properties and object data management, improving template handling.
- Modified DocumentTemplate model to add 'referencedTemplates' field, allowing for better data structure and management of related templates.
- Adjusted App.css to refine styling for object display tags, enhancing visual consistency across the application.
- 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.
- Added a new helper function 'renderDocumentTemplate' to the fcTemplateHelpers for improved document rendering capabilities.
- Introduced 'mapObjectFiltersForQuery' function to streamline filter mapping in API requests, enhancing code readability and maintainability.
- Updated API server context to utilize the new filter mapping function, improving data fetching logic and consistency in handling object filters.
- Refactored sorting parameters in API requests to use 'sortProperty' and 'sortOrder' for better clarity and alignment with naming conventions.
- Updated the NewDocumentSize component to include additional default values for print padding and padding dimensions (left, right, top, bottom).
- Modified the ApiServerProvider to pass padding parameters in API requests, ensuring consistent handling of new padding options.
- Expanded the DocumentSize model to incorporate new fields for print padding and padding dimensions, enhancing the document size configuration capabilities.
- Added a 'list' action to various object models, including AppPassword, AuditLog, Client, and more, to standardize access to list views across the application.
- Updated the ObjectModels.js to include a new label for the 'list' action, improving clarity in the permission matrix.
- Refactored Sidebar.js to incorporate user profile permissions for sidebar item visibility, enhancing user experience based on access rights.
- Introduced utility functions for normalizing paths and filtering sidebar items based on user permissions, streamlining sidebar management.
- Improved the overall structure and readability of the Sidebar and ObjectModels components.
- Consolidated JavaScript completion sources into a new module, improving organization and maintainability.
- Updated the `fcTemplateLang` to utilize the new `javascriptCompletionSources` for enhanced autocomplete capabilities.
- Removed redundant imports and streamlined the code in various components, including Invoices, Payments, TaxRecords, and Inventory sections, by replacing dropdown actions with a unified `ObjectActions` component.
- Improved the handling of object actions across multiple inventory and finance components, enhancing user experience and code consistency.
- Updated ObjectList to accept a new prop, showHyperlink, allowing for conditional rendering of hyperlinks for object items.
- Modified ObjectProperty to pass the showHyperlink prop to ObjectList and ObjectSelect components, enhancing their functionality.
- Improved error handling in ApiServerContext by adding detailed logging for error responses.
- Updated various database models to include showHyperlink attribute for object lists, improving user navigation and interaction.
- Enhanced CSS styles for the permissions matrix table to improve visual clarity and user experience.
- Introduced UserGroups and PermissionSettings components for managing user groups and permission settings.
- Implemented new icons for user groups and permission settings, enhancing visual representation in the dashboard.
- Updated routing and sidebar configuration to include new management sections for user groups and permission settings.
- Enhanced existing components with loading states and improved styling for better user experience.
- Refactored related components to ensure consistency in naming and functionality across the application.
- Introduced a new PermissionSettings management component, including a list view and modal for creating new permission settings.
- Implemented a permissions matrix for managing user permissions with checkboxes for allow, deny, and inherit states.
- Added associated styles in App.css for the permissions matrix table and checkbox components.
- Created new icons and integrated them into the sidebar and relevant components for better visual representation.
- Updated routing and sidebar configuration to include the new Permission Settings section in the management dashboard.
- Updated multiple components including InvoiceInfo, PaymentInfo, TaxRecordInfo, and various stock-related components to use getModelByName for constructing master filters.
- Improved code consistency and readability by replacing hardcoded parent ID references with dynamic model prefixes.
- Cleaned up unnecessary whitespace and optimized component structure for better maintainability.
- Added 'createdAt' and 'updatedAt' fields to various models including Courier, DocumentPrinter, and User for better tracking of records.
- Improved formatting in AuditLog and other models for consistency in code style.
- Updated filters and columns across multiple models to include new date fields, enhancing data management capabilities.
- Introduced a new language support for EJS templates with XML integration, allowing for custom scriptlets and improved syntax highlighting.
- Updated CodeBlockEditor and TemplateEditor components to utilize the new fcTemplateLang for EJS language handling.
- Modified DocumentTemplate model to reflect the new language type for content.
- Added necessary grammar and parser files for fcTemplateLang, enhancing the overall template editing experience.
- Updated Job model to include 'startedAt' and 'finishedAt' in columns and filters, improving data tracking.
- Modified SubJob model to replace specific job and printer IDs with their respective objects in filters, and added 'startedAt' and 'finishedAt' to filters and sorters for better data management.