828 Commits

Author SHA1 Message Date
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
469907ef59 Add edit and cancelEdit functionality to various document models
- Introduced 'edit', 'cancelEdit', and 'finishEdit' actions across multiple document models, enhancing user interaction during editing processes.
- Updated visibility logic for these actions to ensure they only appear when relevant, improving the user experience.
- Refactored existing visibility functions for consistency across models.
2026-08-09 23:15:36 +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
40b567b17e Refactor AppPassword component for improved readability and modal width adjustment
- Reformatted import statements for better clarity and consistency.
- Increased modal width for the Regenerate Secret functionality to enhance user experience.
- Improved the structure of the createElement call for RegenerateAppPasswordSecret for better readability.
2026-08-09 20:35:42 +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
8c073a598a Enhance modal and drawer styling in App.css for improved UI consistency
- Added styling for `.ant-drawer-mask` to match the existing `.ant-modal-mask` backdrop filter.
- Updated the positioning of `.electron-body .ant-drawer` to align with modal adjustments, ensuring a cohesive layout across components.
2026-08-09 19:21:24 +01:00
2bf929bb49 Merge branch 'electrobun'
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
2026-08-09 16:03:05 +01:00
b2c116c78a Update Windows frame overhang constants for improved window rendering
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Adjusted the CEF frame overhang constants to better align with native window dimensions, enhancing the accuracy of window positioning and rendering in the application.
- Increased the width and height values to accommodate changes in window management.
2026-08-09 15:58:26 +01:00
517921f3e3 Refactor Windows work area handling for improved frame overhang management
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Introduced separate constants for native and CEF window frame overhangs to accommodate different rendering contexts.
- Updated `getMaximizedWorkAreaFrame` to accept a window parameter, allowing dynamic selection of the appropriate overhang based on the window type.
- Enhanced `isWindowWorkAreaMaximized` and `clampWindowToWorkArea` functions to utilize the updated frame overhang logic, improving accuracy in window positioning.
2026-08-09 15:27:54 +01:00
f52f0e35a9 Refactor app version handling in appupdate.js and rpc.js
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Updated `getRunningAppVersion` to retrieve the version from `package.json`, ensuring accurate version representation.
- Modified `getAppVersion` in `rpc.js` to utilize the refactored `getRunningAppVersion`, improving consistency in version reporting.
2026-08-09 15:25:43 +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
19cfeff118 Update transition duration for progress background styles in App.css to enhance animation responsiveness
Some checks reported errors
farmcontrol/farmcontrol-ui/pipeline/head Something is wrong with the build of this commit
2026-08-09 14:57:30 +01:00
0ebc6b4897 Remove z-index from electron navigation wrapper in App.css to simplify styling and improve layout consistency.
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
2026-08-09 14:53:13 +01:00
3a8239c92d Enhance MessageContext for desktop compatibility
- Updated MessageContext to adjust message positioning in the Electrobun desktop application, ensuring messages clear the custom title bar.
- Introduced a conditional MESSAGE_TOP value based on the desktop environment, improving the user experience for desktop users.
2026-08-09 14:52:06 +01:00
3caa62d675 Refactor AppUpdateProgress for improved stage tracking and status management
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Introduced a new mechanism to track the active update stage using an index, allowing for better handling of out-of-order progress events.
- Simplified status determination functions for download, install, and restart stages, enhancing clarity and maintainability.
- Updated the rendering logic to ensure accurate display of progress and status messages, improving user experience during updates.
- Adjusted modal width in AppUpdateContext for better layout consistency.
2026-08-09 14:36:19 +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
9f8beae051 Update AppUpdateContext to improve version formatting and modal behavior
- Refactored the `formatFullAppVersion` function for better readability and maintainability.
- Updated modal components in `AppUpdateProvider` to set `closable` to false, enhancing user experience during update notifications.
2026-08-09 14:16:54 +01:00
3caae592f1 Enhance update messaging and version formatting in AppUpdateContext and appupdate.js
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Introduced a new function `formatFullAppVersion` to standardize the application version and build number representation.
- Updated the `getUpdateInstalledMessage` function to provide detailed feedback on updates, including changes in version, branch, and engine.
- Refactored the update handling logic to improve clarity and maintainability, ensuring users receive accurate and informative update notifications.
2026-08-09 14:06:04 +01:00
ba5856c248 Refactor Windows installer progress macros for improved clarity and functionality
- Introduced new macros for various installation progress stages, enhancing readability and maintainability of the installer script.
- Updated the progress reporting in the `farmcontrol.nsi` file to utilize the new macros, ensuring consistent progress tracking during installation.
- Adjusted the `winappupdate.js` file to align with the new progress constants, improving the accuracy of progress percentage calculations.
2026-08-09 14:02:35 +01:00
324a4a1e6f Enhance app version retrieval in appupdate.js
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Introduced a new function `formatFullAppVersion` to format the application version and build number, improving version representation.
- Updated `getRunningAppVersion` to utilize the new formatting function, ensuring accurate version information is displayed.
- Refactored the `getRunningAppState` function to call `getRunningAppVersion`, enhancing clarity and maintainability of the code.
2026-08-09 13:45:06 +01:00
df1228ffa6 Refactor Windows installer progress parsing to improve file name handling
- Updated the parsing logic in `parseWindowsInstallerProgress` to extract the file name from the copy file path, ensuring only the file name is displayed in progress messages.
- Enhanced readability by renaming the variable from `relativePath` to `fileName` and added logic to handle paths correctly.
2026-08-09 13:40:02 +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
68aed21cc5 Implement RPC request handling in Electrobun bridge and desktop RPC
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Introduced a new mechanism for handling RPC requests and responses in the Electrobun bridge, including timeout management for requests.
- Refactored the desktop RPC to utilize a centralized request handler, improving code organization and clarity.
- Added support for various RPC methods, enhancing communication between the renderer and the desktop environment.
2026-08-09 13:23:03 +01:00
bac09b6543 Merge branch 'electrobun' of https://git.tombutcher.work/tom/farmcontrol-ui into electrobun 2026-08-09 13:14:24 +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
35ce3c39af Refactor ElectronContext for improved Electron detection and streamlined URL handling
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Simplified the `isElectron` function to directly return the result of `isElectrobunBridgeReady` or `isElectrobunDesktop`.
- Removed redundant checks and consolidated URL opening logic to enhance clarity and reduce code duplication.
- Updated event handling for Electron-specific features to utilize the desktopBridge API, improving maintainability and performance.
2026-08-09 12:09:45 +01:00
84a6a86bf3 Enhance Windows installer progress monitoring with improved outcome handling
- Refactored the `startWindowsInstallerProgressWatch` function to notify on installation success, failure, and stalling more reliably.
- Introduced a timeout mechanism to detect stalled installers, improving user feedback during the update process.
- Updated the `launchWindowsInstaller` function to pass new callback parameters for handling different installation outcomes, enhancing overall robustness.
2026-08-09 12:08:53 +01:00
bb2b8148c7 Refine Windows installer shutdown process for improved reliability
- Updated the `restartFarmControlAfterUpdate` function to terminate the Farm Control process directly, avoiding potential issues with tree kills that could affect the installer itself.
- Added a PowerShell command to clean up any lingering CEF helper processes after the main process exits, ensuring a smoother update experience without blocking file renames.
2026-08-09 11:37:14 +01:00
235b038ecc Refactor duplicate installation handling in AppUpdateProvider
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Updated state management for duplicate installations by setting default values to null, simplifying the logic for handling duplicates.
- Changed the initial state of duplicatePromptOpen to false, improving the user experience by preventing unnecessary prompts on load.
2026-08-09 11:19:55 +01:00
b254c0c94d Enhance AppUpdateProvider with improved duplicate installation handling
- Updated the state management for duplicate installations to include specific paths, enhancing clarity for users.
- Modified modal titles to include icons for better visual representation of update statuses.
- Adjusted modal properties for improved user experience during duplicate installation prompts.
2026-08-09 11:19:17 +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
557c334aa0 Refine Windows installer process for improved shutdown handling and error reporting
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Reduced the wait time for graceful shutdown of the Farm Control application from two minutes to two seconds, enhancing responsiveness during updates.
- Implemented additional checks to confirm the termination of the Farm Control process, providing clearer error messages if the process fails to stop.
- Adjusted the loop for verifying process termination to improve efficiency and reduce unnecessary delays.
2026-08-09 11:01:25 +01:00
28295f5912 Enhance Windows installer with parent process ID handling for improved update reliability
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Introduced a new variable to capture the parent process ID, allowing the installer to wait for the exact updater process instead of relying on executable names.
- Updated the `restartFarmControlAfterUpdate` function to handle the new parent PID, ensuring a more reliable shutdown of the Farm Control application during updates.
- Modified the `launchWindowsInstaller` function to pass the current process ID as an argument, enhancing the installer’s ability to manage application restarts effectively.
2026-08-09 10:37:02 +01:00
2bbecb0d6a Implement file enumeration and progress tracking in Windows installer
- Added a new PowerShell script to generate NSIS file lists, enabling the installer to track file copy progress.
- Updated the NSIS scripts to include macros for logging total bytes and individual file copy progress during installation.
- Enhanced the `winappupdate.js` to parse and display copy progress information, improving user feedback during updates.
2026-08-09 10:32:56 +01:00
67511e8b8c Enhance Windows installer update process with improved timing and error handling
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Increased sleep durations in the `restartFarmControlAfterUpdate` function to ensure smoother application restarts during updates.
- Refactored the `startWindowsInstallerProgressWatch` function to reduce polling interval for better responsiveness.
- Cleaned up code formatting for improved readability and consistency across the `appupdate.js` and `winappupdate.js` files.
2026-08-09 10:12:06 +01:00
6bf8648e1f Refine Windows installer update process to handle in-app updates more effectively
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Adjusted the success signal emission in the `restartFarmControlAfterUpdate` function to ensure the application quits and restarts correctly during in-app updates.
- Added a conditional check to control the progress success indication based on the update state, improving the user experience during installations.
2026-08-09 00:32:52 +01:00
de2c93d82f Introduce delay in Windows installer to improve update reliability
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Added a 3-second sleep before clearing leftover installation directories, allowing for smoother transitions during the update process and reducing potential conflicts with file locks.
2026-08-09 00:16:10 +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
d7a7e798cb Enhance Windows installer update process with improved file handling and retry mechanisms
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Added a temporary path change to avoid renaming issues during the update process, ensuring smoother transitions between old and new installations.
- Implemented a retry mechanism for renaming the old installation directory, increasing reliability in scenarios where files are locked.
- Enhanced logging to provide clearer feedback during the installation and renaming steps, improving user experience.
2026-08-08 23:41:44 +01:00
2216a28ce3 Refactor Windows installer update process to improve file handling and cleanup
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Updated the `swapUpdateStaging` macro to streamline the update process by swapping the old and new versions of Farm Control more efficiently.
- Introduced a cleanup step to remove leftover `.old` directories from previous updates, enhancing the installer’s reliability.
- Improved logging for better visibility during the update and removal processes, ensuring users are informed of actions taken.
2026-08-08 23:16:03 +01:00
29bf25cc20 Refactor Windows installer update process for improved file handling
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Introduced new macros `tryRenameProbe` and `waitForInstallDirWritable` to enhance the update process by ensuring files are accessible before replacement.
- Updated the `swapUpdateStaging` macro to include checks for file locks and implement a retry mechanism for directory removal, improving reliability during updates.
- Enhanced detail logging for better visibility during the update process.
2026-08-08 22:35:37 +01:00
ddaeb3cfff Restrict application menu functionality to macOS
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Updated `applyApplicationMenu` and `setupApplicationMenuEvents` functions to return early if the platform is not macOS, ensuring that menu features are only available on macOS.
- Adjusted the `createMainWindow` function to conditionally call menu setup functions based on the operating system, improving cross-platform compatibility.
2026-08-08 22:19:39 +01:00
d2d64ef45d Refactor Windows installer for side-by-side updates and improved directory handling
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Updated the NSIS installer to support side-by-side updates, allowing the running application to remain active while a new version is staged in a separate directory.
- Modified the installation directory handling to ensure the correct paths are used for shortcuts and registry entries.
- Enhanced the update process to include a retry mechanism for folder swaps, improving reliability during updates.
- Adjusted comments and documentation for clarity on the update process and its implications.
2026-08-08 22:06:53 +01:00
e9f4c1f3d3 Refine CEF installer artifact detection logic in app update process
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
- Updated isCefInstallerArtifact function to use a regex pattern for identifying CEF installer artifacts, improving accuracy in artifact name matching.
- Enhanced comments for clarity on CEF build naming conventions, aiding future maintenance and understanding of the code.
2026-08-08 21:56:32 +01:00