451 Commits

Author SHA1 Message Date
198b1c2244 Update SimpleDateTimePropertyFilter styles and JSX structure
- Added a transparent background color to the .simple-date-time-property-filter class for improved visual integration.
- Adjusted padding for the Text component within SimpleDateTimePropertyFilter to enhance layout consistency and spacing.
2026-08-11 00:51:55 +01:00
18ac93d8e9 Enhance FilterInput and FilterSidebar with property filter support
- Updated FilterInput to include property filter functionality, allowing for more complex filtering expressions.
- Introduced new utility functions to convert between filter expressions and values, improving data handling.
- Modified FilterSidebar to pass property filter configurations to the FilterInput, enhancing the filtering capabilities.
- Improved SimplePropertyFilter to cache options and prevent unnecessary refetching, optimizing performance during interactions.
2026-08-11 00:45:45 +01:00
6b848d392c Add FilterInput component for enhanced filtering capabilities
Some checks failed
farmcontrol/farmcontrol-ui/pipeline/head There was a failure building this commit
- Introduced a new FilterInput component to streamline user input for filter values, replacing the standard Input component in FilterSidebar and ObjectTable.
- Updated FilterSidebar and ObjectTable to utilize FilterInput, improving the overall filtering experience and consistency across the dashboard.
- Enhanced expression handling in ColumnFilterDropdown to accommodate the new FilterInput component, ensuring seamless integration with existing functionality.
2026-08-11 00:38:06 +01:00
3ed92a141b Enhance TemplateEditor with error handling and popover support
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Updated TemplateEditor to display compile error messages with a Popover for better user interaction.
- Introduced a new button with an icon to trigger the Popover, improving the visibility of error details.
- Adjusted the styling of the Alert component for consistent padding in error messages.
2026-08-10 03:57:37 +01:00
eeccfe077f Enhance fcTemplateLang with autocompletion support and XML schema integration
- Updated fcTemplateLang to accept an autoCompleteObject parameter, improving JavaScript autocompletion capabilities.
- Introduced a new schema.js file defining XML attributes and elements for FarmControl templates, enhancing template editing.
- Modified CodeBlockEditor and ObjectProperty components to pass autoCompleteObject, ensuring consistent autocompletion behavior.
- Updated TemplateEditor to utilize objectData for autocompletion, improving user experience in template editing.
2026-08-10 03:33:01 +01:00
0b210f50cd Add fcTemplateLang support for EJS templates in CodeMirror
- 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.
2026-08-10 03:17:21 +01:00
0e238f9455 Enhance SimpleDateTimePropertyFilter with improved styling and functionality
- Added CSS styles for the SimpleDateTimePropertyFilter component to improve layout and spacing.
- Updated the component to include a more flexible checkbox rendering with indeterminate states.
- Refactored the handleNodeCheck function for better management of checked states and visibility during filtering.
2026-08-10 01:47:43 +01:00
9f4e6869a5 Add SimpleDateTimePropertyFilter component for enhanced date and time filtering
- Introduced SimpleDateTimePropertyFilter component to handle filtering of date and time properties in the dashboard.
- Updated SimplePropertyFilter to integrate the new component, allowing for specialized handling of dateTime and date types.
- Enhanced filtering logic to improve user experience when dealing with date and time selections.
2026-08-10 01:17:01 +01:00
38e89e45c7 Refactor SimplePropertyFilter for improved key handling and filtering logic
Some checks failed
farmcontrol/farmcontrol-ui/pipeline/head There was a failure building this commit
- Enhanced the getOptionKey function to support object types and improve key generation for options.
- Updated local state management to utilize keys for checked values, ensuring consistent behavior during filtering.
- Refactored handleChange and emitChange functions to work with keys, improving clarity and maintainability.
- Adjusted Checkbox component to use generated keys for value handling, enhancing the filtering experience.
2026-08-10 00:56:55 +01:00
0b110cdfff Enhance ObjectTable and ScrollBox components with new filtering capabilities
- Introduced a new SimplePropertyFilter component for advanced filtering options in the ObjectTable.
- Updated ObjectTable to utilize ColumnFilterDropdown for improved filter management and user experience.
- Enhanced ScrollBox to support additional padding options for better layout control.
- Refactored related components to integrate new filtering logic and maintain consistent styling across the dashboard.
2026-08-10 00:42:09 +01:00
ed4f1c7505 Implement editDisabled state across various components for improved editing control
Some checks failed
farmcontrol/farmcontrol-ui/pipeline/head There was a failure building this commit
- Added editDisabled state to multiple components, enhancing control over editing actions based on the current state.
- Updated the disabled property in relevant components to utilize the new editDisabled state, ensuring consistent behavior across the dashboard.
- Refactored imports to remove unused getModelByName function calls, streamlining the codebase.
2026-08-09 23:33:34 +01:00
7065cd312b Refactor isSameActionUrl function in ObjectActions component for clarity
- Updated the isSameActionUrl function to improve readability and maintainability.
- Enhanced comments to clarify the logic behind action URL comparison and visibility control for actions based on the current page state.
2026-08-09 23:20:35 +01:00
1192d56027 Add showEndingDivider prop to ObjectTableViewButton for enhanced layout control
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Updated ObjectTableViewButton component to accept a showEndingDivider prop, allowing for conditional rendering of a divider in the layout.
- Modified multiple dashboard components (Invoices, Payments, TaxRecords, etc.) to utilize the new prop, improving visual separation in the UI.
- Ensured consistent application of the new prop across various components for a cohesive user experience.
2026-08-09 23:08:01 +01:00
0b17a33225 Refactor ObjectTable component for improved readability and layout consistency
- Reformatted the filter logic for clarity in the mergeLoadedPage function.
- Updated the gap property in the Flex component to enhance layout spacing in the sidebar.
2026-08-09 22:53:27 +01:00
e885949639 Enhance ObjectTable component with improved data handling and deduplication
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Introduced logic to filter out duplicate items in the table data, logging warnings for omitted rows.
- Added mechanisms for managing data load generation to prevent stale data issues during asynchronous operations.
- Refactored page loading and merging logic to ensure proper handling of loaded pages and skeleton states.
- Improved state management for loading and clearing table pages, enhancing overall performance and user experience.
2026-08-09 21:07:57 +01:00
78299f688e Add sort functionality to various dashboard components
- Introduced SortSidebarButton to enable sorting in Invoices, Payments, TaxRecords, and Inventory components.
- Integrated useSortSidebarVisibility hook to manage sort sidebar visibility state.
- Updated relevant components to include sorting capabilities, enhancing user experience and data management.
2026-08-09 20:54:53 +01:00
b44eb246eb Update setSearchParams call in ObjectTableNavigationButtons to replace URL parameters without adding to history 2026-08-09 20:48:11 +01:00
9ee46d2067 Refactor NotesPanel component to improve state management and loading behavior
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Removed unnecessary initialized state and replaced it with refs for notes ID and type to optimize re-rendering.
- Updated useEffect dependencies to ensure proper data fetching based on changes in notes ID and type.
- Enhanced loading state handling during note fetching for better user experience.
2026-08-09 19:33:59 +01:00
578caaffc2 Refactor HProgress component and CSS for improved animation and layout
- Updated the HProgress component to include a mask and wave animation for a more visually appealing progress display.
- Adjusted CSS styles in App.css to enhance the animation responsiveness and ensure seamless transitions.
- Removed unnecessary postMessage calls in electrobun-bridge.js to streamline message handling.
- Cleaned up rpc.js by removing the rendererResponseAck handler for better code clarity.
2026-08-09 15:10:35 +01:00
f9d4074d85 Add HProgress component for enhanced progress display in Dashboard
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Introduced a new `HProgress` component to replace the existing `Progress` component, providing a customizable and visually appealing progress indicator.
- Updated `AppUpdateProgress` and `StateDisplay` components to utilize `HProgress`, improving consistency in progress representation across the application.
- Added CSS animations and styles for a smoother user experience during progress updates.
2026-08-09 14:26:06 +01:00
2068b7470b Refactor ObjectTable and ObjectTableNavigationButtons for improved state management
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Updated imports in ObjectTable and ObjectTableNavigationButtons to include getActiveFilterValues from TableStateContext.
- Simplified the useTableStatePersistence hook calls by removing unnecessary destructured values.
- Enhanced navigation button handlers with useCallback for better performance and readability.
- Added keyboard shortcuts for previous and next navigation, improving user experience.
2026-08-09 13:28:23 +01:00
0592f8e322 Enhance styling and functionality in App.css and DashboardNavigation component
- Added user-select properties to prevent text selection in the electron body, while allowing text selection in specific components.
- Updated z-index handling in the electron navigation wrapper for better layering.
- Modified the DashboardNavigation component to include isMaximized state, improving drag region logic for fullscreen and maximized states.
2026-08-09 13:14:20 +01:00
7d79e0d206 Enhance MenuButton component in WindowAppMenu
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Added a new `logo` prop to the `MenuButton` component to conditionally adjust padding and margin based on the presence of a logo.
- Updated the `MenuButton` prop types to include the new `logo` boolean, improving flexibility in rendering menu items with logos.
2026-08-09 11:06:02 +01:00
a0ea239aa6 Enhance main window controls and introduce application menu
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Updated `mainWindow.js` to include a 'quit' action in the IPC handlers, allowing the application to close gracefully.
- Added a new `WindowAppMenu` component to manage application menu items, including options for 'About', 'Check For Updates', and 'Quit'.
- Refactored `DashboardNavigation` to integrate the new `WindowAppMenu`, improving the user interface for non-macOS platforms.
- Adjusted window control handling in `window.js` to support the new menu actions, ensuring consistent behavior across the application.
2026-08-09 00:09:42 +01:00
482cc5dc86 Refactor DashboardNavigation to streamline notification context usage
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Removed unused `notificationCenterVisible` from the `DashboardNavigation` component, simplifying the context usage and improving code clarity.
2026-08-04 02:54:11 +01:00
be51fecba6 Update class logic in DashboardNavigation for electron navigation wrapper
Some checks failed
farmcontrol/farmcontrol-ui/pipeline/head There was a failure building this commit
- Adjusted the class name logic in the `DashboardNavigation` component to conditionally apply the 'electrobun-webkit-app-region-drag' or 'electrobun-webkit-app-region-no-drag' class based on the fullscreen state, enhancing the user interface for electron applications.
2026-08-04 02:40:53 +01:00
19ce749e80 Fix variable naming inconsistency in DashboardNavigation component
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Updated `isFullscreen` to `isFullScreen` for consistency with context naming conventions.
- Adjusted class logic in the navigation wrapper to reflect the updated variable name, ensuring proper styling application.
2026-08-04 02:29:26 +01:00
184a6621d9 Refactor DashboardNavigation and enhance CSS styles
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Updated `DashboardNavigation` to conditionally render controls based on authentication and platform.
- Improved user experience by displaying a "Farm Control" message when controls are hidden.
- Enhanced CSS for the electron navigation wrapper to include z-index and user-select properties for better UI handling.
2026-08-04 02:14:57 +01:00
d28bed7136 Enhance window management and navigation handling
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Added `isFullscreen` context to `DashboardNavigation` for improved UI responsiveness.
- Updated navigation class logic to conditionally apply styles based on fullscreen state.
- Refined window control logic in `window.js` to handle maximize/unmaximize actions more reliably, including asynchronous state synchronization on Windows.
- Introduced adjustments for window frame dimensions in `windows-work-area.js` to account for Win32 DWM overhangs, ensuring accurate maximized state detection and clamping.
2026-08-04 01:57:51 +01:00
813b43595b Update DashboardNavigation to include a vertical divider between logos
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Added a vertical Divider component between the FarmControlLogoSmall and the next logo for improved visual separation.
- Adjusted the right margin of the FarmControlLogoSmall to enhance layout consistency.
2026-08-02 19:31:53 +01:00
1b77428a8a Fix button order in DashboardWindowButtons component for consistent window management display 2026-08-02 16:24:54 +01:00
8e3ce20bb6 Add macOS traffic light controls and enhance window management
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Introduced a new MacOSTrafficLights component to manage window controls (close, minimize, fullscreen) with custom SVG icons.
- Updated DashboardWindowButtons to integrate the new traffic light controls for macOS.
- Enhanced window control functionality in mainWindow.js to toggle fullscreen mode.
- Added CSS styles for traffic light indicators to improve visual representation.
- Refactored DashboardNavigation to streamline the handling of fullscreen state.
2026-08-02 15:57:54 +01:00
805361516e Enhance macOS window effects and improve Electrobun integration
- Adjusted CSS for macOS vibrancy, refining background opacity for light and dark modes.
- Introduced new styles for selected menu items in dark mode to enhance UI consistency.
- Added traffic light positioning and window chrome observer in native macOS window effects for better window management.
- Refactored Electron context to utilize the Electrobun bridge for improved API interactions and error handling.
- Streamlined the initialization process for the Electrobun bridge in the main application entry point.
2026-08-02 12:18:30 +01:00
b1ca3818e3 Enhance DashboardNavigation component with drag-and-drop support
Some checks failed
farmcontrol/farmcontrol-ui/pipeline/head There was a failure building this commit
- Added 'electrobun-webkit-app-region-no-drag' class to navigation items for improved drag-and-drop functionality in Electron.
- Updated layout structure to ensure proper flex behavior in the navigation component.
2026-08-02 02:52:28 +01:00
f90ef10b78 Refactor Windows installer scripts and enhance Electron navigation
- Added macros for uninstalling previous Farm Control installations in the NSIS installer.
- Updated the MSI wrapped configuration to include custom actions for handling previous installations.
- Improved the Electron navigation by modifying CSS classes for better drag-and-drop functionality.
- Enhanced build scripts to include the WixUtilExtension for improved MSI packaging.
2026-08-02 01:49:37 +01:00
00f55d44bf Update PrinterMiscPanel to modify G-code scripts for LCD and BEEPER control
Some checks failed
farmcontrol/farmcontrol-ui/pipeline/head There was a failure building this commit
- Changed the script for controlling the LCD backlight to use the SET_PIN command with the appropriate pin name.
- Updated the BEEPER control script to utilize the SET_PIN command, adjusting the value format for consistency in handling sound output.
2026-08-01 19:37:02 +01:00
8fb8f5e337 Refactor UserProfilePopover and ActionsContext for improved state management and action handling
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Integrated useEffect in UserProfilePopover to close the popover on route changes, enhancing user experience.
- Simplified modal object data handling in ActionsContext to ensure consistent user profile access.
- Updated User model action handling to correctly pass user data to the NewAppPassword component.
- Streamlined dropdown action rendering in UserProfilePopover, improving code clarity and maintainability.
2026-08-01 19:09:24 +01:00
89b6f476c1 Add ModelRoutes and ActionsContext for enhanced model management
- Introduced ModelRoutes to handle dynamic routing for model pages based on object models.
- Created ActionsContext to manage actions and modal states across components, improving action handling and navigation.
- Updated various components to utilize the new buildActionUrl utility for consistent URL generation.
- Refactored existing components to integrate the ActionsProvider, enhancing state management and user interaction.
2026-08-01 18:25:29 +01:00
d982b8dfb3 Refactor components to improve logging and ID handling
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Removed console.log statements from FilePreview and ObjectForm components for cleaner code.
- Replaced console.log with loglevel in KeyboardShortcut for better logging management.
- Updated ID handling in ObjectForm, ObjectTable, PrinterMiscPanel, PrinterPositionPanel, and PrinterTemperaturePanel components to ensure IDs are consistently converted to lowercase, enhancing data integrity.
2026-08-01 16:18:37 +01:00
a2d27c692a Add PrinterControlButtons component for enhanced printer action management
- Introduced PrinterControlButtons to encapsulate start, pause, and cancel actions for printers, improving user interaction.
- Updated ControlPrinter component to integrate PrinterControlButtons, enhancing layout with Flex for better alignment.
- Adjusted button states based on printer status and loading state, ensuring appropriate user feedback and action availability.
2026-08-01 15:54:00 +01:00
e3544ef2e2 Refactor PrinterPositionPanel and PrinterTemperaturePanel for improved styling and layout
- Introduced controlLabelStyle and controlInputStyle for consistent styling of control elements in PrinterPositionPanel.
- Replaced Space components with Flex for better alignment and layout management in PrinterPositionPanel.
- Updated input field widths in PrinterTemperaturePanel for enhanced usability and consistency.
2026-08-01 15:37:51 +01:00
e52798d4ac Enhance printer panels to handle offline state more effectively
- Added an `offline` prop to PrinterTemperaturePanel, PrinterMiscPanel, and PrinterPositionPanel components to manage state when printers are offline.
- Implemented useEffect hooks in each panel to reset relevant data when offline, ensuring accurate display of printer status.
- Updated ControlPrinter component to pass the `offline` state based on the printer's online status, improving user experience during offline scenarios.
2026-08-01 15:28:48 +01:00
f3d6bebc38 Integrate TableStateProvider into App and Dashboard components for enhanced state management
- Added TableStateProvider to the App component, encapsulating routing logic to manage table states effectively.
- Removed redundant TableStateProvider from the DashboardLayout component, streamlining the component structure.
- Updated ControlPrinter and ObjectActions components to improve action visibility and navigation button rendering based on slicer integration state.
- Enhanced action filtering in ObjectActions to eliminate unnecessary dividers, improving menu item clarity.
2026-08-01 15:21:58 +01:00
12cae32e33 Enhance Thumbnail and ApiServerContext components for improved functionality
- Removed the default border style from the Thumbnail component to streamline its appearance.
- Updated the Thumbnail component to dynamically set the width in the card styles, enhancing layout flexibility.
- Modified the fetchFileThumbnail function in ApiServerContext to include an optional parameter for handling 404 errors, improving error management during thumbnail fetching.
- Added a thumbnail property to the GCodeFile model, enabling thumbnail support for GCode files.
2026-08-01 15:11:02 +01:00
1efebeeda6 Refactor ObjectTable component for improved readability and styling consistency
- Simplified the loadPage function call by consolidating parameters into a single line, enhancing code clarity.
- Updated the Splitter component's className to include 'large', ensuring consistent styling across the dashboard components.
2026-08-01 14:44:56 +01:00
342f770841 Optimize FilterIcon rendering in DashboardBreadcrumb component
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Simplified the rendering of the FilterIcon by removing unnecessary opacity styling, enhancing visual clarity while maintaining the intended design.
- This change contributes to a cleaner and more efficient component structure in the Dashboard.
2026-08-01 14:26:44 +01:00
7b926ec409 Update keyboard shortcut hints in ObjectTableNavigationButtons for clarity
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Changed the keyboard shortcut hints from 'ALT LEFT' and 'ALT RIGHT' to 'ALT ←' and 'ALT →' respectively, enhancing visual clarity for users.
- This update aligns with the overall goal of improving user experience and accessibility in navigation.
2026-08-01 14:18:05 +01:00
f91b011c5e Add keyboard shortcuts to EditButtons for improved editing experience
- Integrated KeyboardShortcut component to the EditButtons, allowing users to trigger update and cancel actions using 'ALT + S' and 'ALT + C' respectively during editing.
- Added a shortcut for starting editing with 'ALT + E' when not in editing mode, enhancing user interaction and accessibility.
- Updated button states to ensure actions are only available when not loading or disabled, improving overall workflow efficiency.
2026-08-01 14:18:00 +01:00
dc4a38f391 Refactor KeyboardShortcut component to simplify state management
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Removed unused state for tracking pressed keys, streamlining the key handling logic.
- Eliminated the sync function for pressed keys, enhancing performance and reducing complexity.
- Maintained existing functionality while improving the overall structure of the component.
2026-08-01 14:13:24 +01:00
e4657cc692 Add keyboard shortcuts to ObjectTableNavigationButtons for enhanced navigation
Some checks failed
farmcontrol/farmcontrol-ui/pipeline/head There was a failure building this commit
- Integrated KeyboardShortcut component to allow navigation using 'ALT + LEFT' and 'ALT + RIGHT' key combinations.
- Updated button handlers to trigger navigation actions based on keyboard shortcuts, improving user experience and accessibility.
- Ensured that navigation is only triggered when the buttons are not disabled and the relevant neighbors exist.
2026-08-01 14:00:45 +01:00