Skip to content

Refactor/plugin onload#478

Merged
Quorafind merged 20 commits into
masterfrom
refactor/plugin-onload
Oct 21, 2025
Merged

Refactor/plugin onload#478
Quorafind merged 20 commits into
masterfrom
refactor/plugin-onload

Conversation

@Quorafind
Copy link
Copy Markdown
Collaborator

No description provided.

- Ensure proper JSON serialization when saving cache to localStorage
- Handle string values in sanitizeCachePayload with JSON parsing
- Make app parameter required for all cache operations
- Add debug logging for troubleshooting cache issues
…ings

- Add dropdown component for quick template selection in file name input
- Implement template management with name/template pairs
- Add configuration UI for managing file name templates
- Support both legacy string arrays and new template definitions
- Enhance settings tab with better template configuration
- Add proper type definitions for QuickCaptureTemplateDefinition
- Improve data migration from legacy template format
- Add validation and normalization for template data
- Update translations for new template features
- Add CSS styles for template dropdown UI
…w and date managers

- Add transaction annotation checks to prevent workflow/date manager conflicts
- Improve bounds checking and error handling in date manager operations
- Add safety checks for document position calculations
- Remove verbose console logging for cleaner output
- Fix code formatting and trailing comma inconsistencies
- Enhance transaction filter coordination to prevent duplicate operations
…vements

- Add hidden modules configuration UI for views, sidebar components, and features
- Refactor WorkspaceSelector to prevent unnecessary re-renders using updateActiveWorkspaceView
- Add module visibility API methods to WorkspaceManager (isViewHidden, isFeatureHidden, etc.)
- Improve workspace state synchronization with new syncFilterState method and FilterSyncHandlers
- Add DEBUG_MODE toggle to FluentTaskView for better debugging control
- Update gitignore to exclude .codex directory

Breaking changes: None
…isibility

- Fix async handling in hidden modules toggle with proper error recovery
- Add type imports for SidebarComponentType and FeatureComponentType
- Refactor module visibility toggle to use workspace manager API methods
- Add try-catch-finally structure to FluentTaskView initialization
- Enhance error handling and logging in view initialization
- Add DEBUG_MODE configuration for conditional logging
- Improve state refresh after module visibility changes
- Add Functional Source License 1.1 with Apache License 2.0 future grant
- Add Contributor License Agreement (CLA) for contributors
- License allows free use while protecting against competing commercial uses
- CLA grants necessary rights for dual licensing model
- Add CLA section to DEVELOPMENT.md with contributor guidelines
- Update README.md with license information and version badge
- Add reference to FSL-1.1-ALv2 license
- Clarify component reusability for developers
- Add PR template with standardized sections for contributions
- Include CLA acknowledgment checkbox in PR checklist
- Add type of change and related issues sections
- Remove deprecated ExperimentalSettings duplicating fluent config
- Clean up unused FluentViewSettings fields (showFluentRibbon, showTopNavigation, etc.)
- Add workspace switch listener to refresh project list automatically
- Improve workspace manager with module visibility controls
- Add methods for managing hidden views, sidebar components, and features
- Auto-enable Fluent Layout when skipping onboarding
- Localize default workspace name with translations
- Remove deprecated Workspace types from fluent-types
Add color picker to workspace creation and rename modals, allowing
users to assign custom colors to workspaces for better visual
distinction. Colors are displayed on workspace icons throughout
the interface.

Additional improvements:
- Improve async/await error handling in Orchestrator, FileSource,
  and IcsSource initialization
- Add ensureHiddenModulesInitialized method for safer module
  visibility configuration
- Optimize view mode changes to prevent unnecessary re-renders
  when clicking the same navigation tab
Add comprehensive task selection and bulk operation capabilities:

- Add TaskSelectionManager for managing task selection state
- Add LongPressDetector for mobile gesture support
- Add BulkOperationsMenu with operations for selected tasks
- Support shift-click and ctrl-click for multi-selection
- Support long-press on mobile to enter selection mode
- Add visual feedback for selected tasks with highlighting
- Add floating badge showing selected task count
- Add write queue in WriteAPI to prevent concurrent writes
- Add updateTasksSequentially API for batch task updates
- Integrate selection manager into task list and tree views

Bulk operations supported:
- Set due date (absolute or relative offset)
- Set start date
- Set priority
- Add/remove tags
- Set status
- Archive tasks
- Delete tasks

New files:
- src/components/features/task/selection/TaskSelectionManager.ts
- src/components/features/task/selection/LongPressDetector.ts
- src/components/features/task/view/BulkOperationsMenu.ts
- src/styles/task-selection.css
- src/types/selection.d.ts
Comprehensive refactoring to improve naming consistency and code quality:

- Rename all "V2" references to "fluent" across codebase
- Update CHANGELOG-BETA.md to use "fluent" scope consistently
- Update comments and documentation from "V2" to "fluent"
- Improve FluentTopNavigation notification count updates:
  - Add async notification count loading to prevent UI blocking
  - Add event listeners for CACHE_READY and TASK_CACHE_UPDATED
  - Improve error handling for notification updates
- Fix ProjectDataCache to use ProjectConfigManager settings
- Improve type safety with explicit imports and type annotations
- Code formatting and cleanup across fluent components
- Remove unnecessary type casts and improve type definitions

This refactoring improves code readability and maintainability while
preserving all existing functionality.
  - Add BATCH_OPERATION_START/COMPLETE events
  - Pause view updates during batch operations
  - Refresh view once after batch operation completes
  - Add payload type definitions for type safety
- Add per-view view mode persistence to remember mode for each navigation item
- Make workspace side leaves optional with default disabled
- Improve project filtering with normalized comparison logic
- Expose dataflow orchestrator early for event subscription
- Enhance type safety across fluent components
- Add missing event listeners for cache updates in ProjectList
…uality

- Switch all imports to use QuickCaptureModalWithSwitch consistently
- Make timeParsingService public in QuickCaptureModalWithSwitch for test access
- Apply consistent code formatting (Prettier)
- Fix add project button placement in ProjectList (move from scrollArea to containerEl)
- Improve UI element creation in FluentSidebar using text parameter
- Prevent content click handler when Shift key is pressed to enable multi-select
- Add Escape key handler to clear task selection
- Improve code formatting and structure
Add support for two distinct projects view modes:
- Projects overview: displays all projects with ProjectsComponent, disables
  ProjectList to prevent conflicting navigation
- Single project: shows filtered tasks for selected project using
  ContentComponent, keeps ProjectList enabled

When navigating to projects view from Other Views menu, project selection
and filters are cleared to enable overview mode. ProjectList interaction
is controlled via CSS class and visual feedback.

Changes:
- FluentSidebar: remove projects exclusion, add setProjectListEnabled()
- ProjectList: add setEnabled() method for controlling interaction state
- FluentTaskView: clear selection on projects navigation, control list state
- FluentComponentManager: switch components based on project selection
- fluent-main.css: add disabled project list styles
- Remove unnecessary void keywords from async function calls
- Standardize code formatting with consistent trailing commas
- Add date operation utilities for task date management
- Add TextPromptModal component for user input
- Enhance FluentActionHandlers with improved task update handling
…lity

- Add snapshot-based filter state capture to prevent state corruption
- Implement immediate save for critical workspace operations
- Add recursive save protection with isSaving flag
- Introduce WORKSPACE_ONLY_KEYS for keys that never merge globally
- Add component visibility controls for sidebar sections
- Improve cache management with targeted invalidation
- Add activeViewId tracking for better view restoration
- Enhance error handling with user-facing notices
- Add backward compatibility for legacy sidebar component IDs
- Remove feature hiding from workspace settings UI
- Filter hidden views from fluent sidebar display
- Deprecate setHiddenFeatures API (always returns empty array)
- Add migration to clean up legacy hidden features from saved workspaces
- Update isFeatureHidden to always return false
@Quorafind Quorafind merged commit f31860e into master Oct 21, 2025
@github-actions github-actions Bot locked and limited conversation to collaborators Oct 21, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant