Commit graph

1201 commits

Author SHA1 Message Date
Quorafind
27c426c474 feat(settings): add workspace selector component
Add a new workspace selector component to the settings tab that allows
users to switch between different workspace configurations. The selector
displays the current workspace icon and name, and provides a dropdown
menu to switch between available workspaces.

- Create WorkspaceSettingsSelector component with workspace switching
- Add styling for the workspace selector UI
- Support workspace icon display and hover effects
- Integrate with existing workspace manager
2025-09-27 09:15:35 +08:00
Quorafind
41f1d95576 feat: improve date positioning logic for task metadata
- Enhanced content parsing to properly handle wiki links, nested brackets, and special characters
- Fixed cancelled date positioning to respect content boundaries
- Added comprehensive test coverage for edge cases
- Cancelled dates now correctly place after task content but before metadata (tags, dataview fields)
- Start dates continue to be placed after content before other metadata
- Properly handles URLs with hashtags without confusing them with tags

This builds on PR #463 to provide a more robust solution for date positioning in tasks.
2025-09-27 09:15:35 +08:00
Quorafind
dab3ecb5d7 fix(editor): improve date positioning in task content
- Fix cancelled date insertion to appear after task content
- Improve content boundary detection for dates and metadata
- Handle wiki links and special characters in task content correctly
- Ensure dates are positioned before tags and dataview fields
2025-09-27 09:15:35 +08:00
haron-IV
8b48e6a25b fix: cancel date goes before task content 2025-09-27 09:15:35 +08:00
Quorafind
9109c07d28 chore(release): bump version to 9.9.0-beta.5 [beta] 2025-09-26 17:33:25 +08:00
Quorafind
8abd736e84 chore(version): fix version issue before 2025-09-26 17:32:16 +08:00
Quorafind
ef0834c65a chore(release): bump version to 9.9.0-beta.5 [beta] 2025-09-26 17:16:00 +08:00
Quorafind
f20c5ebee3 fix(task-mover): prevent archive markers on non-task lines and preserve folded content
- Skip non-task lines (empty lines, regular text) when processing selections
- Detect and move indented content (notes, tags) with parent tasks
- Ensure indented content below tasks moves together as a unit
- Fix child task collection to start after folded content to avoid duplicates
2025-09-26 16:56:50 +08:00
Quorafind
f282bffbf8 fix(setting): manage workspace setting should jump to workspace setting tab 2025-09-25 22:13:39 +08:00
Quorafind
2c24068c69 fix(v2): hide top navigation for two-column views
- Return empty availableModes array for two-column views to hide navigation
- Two-column views have their own specialized UI that doesn't require view mode switching
- Also includes import path updates to use alias paths and minor code style improvements
2025-09-25 22:13:39 +08:00
Quorafind
741b10647e chore(release): bump version to 9.9.0-beta.4 [beta] 2025-09-24 18:52:02 +08:00
Quorafind
b709c90f6f feat(workspace): add custom icon selection for workspaces
- Add icon property to WorkspaceData type for custom workspace icons
- Extract workspace modals to separate module for better organization
- Implement icon selector in create/rename workspace dialogs
- Update workspace selector to display custom icons
- Add dedicated styles for workspace icon UI components
- Support icon inheritance when cloning workspaces
- Enhance workspace settings tab with icon display

This allows users to visually distinguish workspaces beyond names,
improving workspace identification and navigation experience.
2025-09-24 18:48:11 +08:00
Quorafind
6c282f976c fix(v2): resolve filter state management issues
- Fix duplicate filter creation when switching projects
- Remove empty filter groups and validate projectId before creating new filters
- Improve filter reset to properly sync workspace state and UI components
- Fix view refresh after filter clearing by adjusting switchView skip logic

Resolves issues where:
1. Clicking different projects created duplicate filter entries
2. Clearing filters on inbox page didn't refresh data properly
2025-09-24 17:43:26 +08:00
Quorafind
c0e694b8ee chore(settings): update workspace settings 2025-09-24 16:09:11 +08:00
Quorafind
5c3d19e95c chore(sytles): ignore styles css 2025-09-24 15:31:09 +08:00
Quorafind
dc4816ae1c chore(release): bump version to 9.9.0-beta.3 [beta] 2025-09-24 14:06:08 +08:00
Quorafind
ec09f34771 fix(ui): correct translation interpolation and button alignment
- Fix date interpolation in workspace settings translation
- Add tooltip for disabled delete button on default workspace
- Align v2 nav button items properly with center alignment
2025-09-24 14:03:59 +08:00
Quorafind
2d7a697ec7 chore(release): bump version to 9.9.0-beta.2 [beta] 2025-09-24 13:40:54 +08:00
Quorafind
c096c6c952 refactor(v2): rename V2 interface to Fluent and simplify command names
- Rename "V2 interface" to "Fluent interface" in settings and notices
- Simplify command and ribbon names by removing redundant "Task Genius" prefix
- Fix icon alignment in navigation by adding center alignment
2025-09-24 13:39:57 +08:00
Quorafind
013f5d954d chore(release): bump version to 9.9.0-beta.1 [beta] 2025-09-24 13:30:52 +08:00
Quorafind
78cdf77c1f fix(filter): ensure proper initialization of filter components
- Add null check and default return value in getFilterState method
- Call onload() in modal and popover to ensure component initialization
- Prevents potential runtime errors when filter state is not initialized
2025-09-24 13:28:46 +08:00
Quorafind
2b1018ec46 chore(release): bump version to 9.9.0-beta.0 [beta] 2025-09-24 12:43:09 +08:00
Quorafind
a167e7d256 chore: update packagejson and also release script 2025-09-24 10:44:51 +08:00
Quorafind
86cbad4a47 feat(view): add task count display in view title
- Add createTaskMark() method to show total task count
- Display formatted task count in view title
- Remove debug console.log statement
2025-09-24 08:44:01 +08:00
Quorafind
7721ac191c feat(fluent): add mobile drawer navigation and responsive design
- Implement mobile drawer with overlay and swipe gestures
- Add touch gesture support for drawer open/close
- Refactor sidebar rail mode for better collapsed state
- Add responsive breakpoints for mobile devices
- Optimize search and navigation UI for small screens
- Add mobile-specific CSS classes and styling
- Improve task details panel layout on mobile
2025-09-24 08:42:03 +08:00
Quorafind
59643c038f feat(fluent-sidebar): add right-click context menu for view items
- Add context menu with Open in new tab, Open settings, Copy view options
- Add Hide in sidebar option (limited to Other Views only)
- Add Delete option for custom views
- Support context menu in both expanded and collapsed rail modes
- Use DOM manipulation instead of full re-render for hide/delete actions
- Import ViewConfigModal and TASK_SPECIFIC_VIEW_TYPE for menu functionality
2025-09-24 00:38:05 +08:00
Quorafind
e08aa647af perf(fluent): optimize view initialization and reduce unnecessary renders
- Add initialization flag to prevent multiple renders during startup
- Implement scheduled update system to batch multiple update requests
- Only hide currently visible component instead of all components
- Apply filters once during initialization instead of multiple times
- Defer initial data load in ReviewComponent to avoid duplicate calls
- Add requestAnimationFrame for smoother scheduled updates
- Track visible component separately from active component
- Reduce redundant switchView calls with smarter update logic

This significantly improves startup performance and eliminates render flashing
2025-09-23 17:48:05 +08:00
Quorafind
f3bee5e16d feat(projects): add tree view support and improve view mode system
- Add hierarchical tree view for projects with expand/collapse functionality
- Implement per-view mode configuration (list, tree, kanban, calendar)
- Add tree/list toggle button to sidebar project header
- Remove FluentFilterPanel component (consolidated elsewhere)
- Store tree expansion state and view preference in local storage
- Enhance ProjectList with tree node structure and level-based rendering
- Update styles for tree view indentation and expand indicators
- Configure available view modes per view type
- Improve FileSourceSettings with better organization

BREAKING CHANGE: FluentFilterPanel component removed - filter functionality moved to view header
2025-09-23 09:58:39 +08:00
Quorafind
1e162c219a feat(fluent-nav): hide entire navigation when no view tabs are needed
- Add configurable availableModes support to TopNavigation
- Hide complete navigation bar when availableModes is empty
- Dynamically show/hide navigation based on view requirements
- Update rendering logic to be conditional on available modes

This improves UI clarity for special views that don't require tab-based navigation
2025-09-23 09:50:20 +08:00
Quorafind
743b9ca866 feat(projects): add context menu with edit and delete functionality
- Add right-click context menu to project items with Edit/Delete options
- Create EditProjectModal for editing project display names and colors
- Support separate display names from internal project names
- Implement project deletion with confirmation dialog
- Disable menu options for task-derived (non-custom) projects
- Add forceRefresh parameter to AutoComplete cache
2025-09-22 23:08:16 +08:00
Quorafind
adc7e3e8e0 refactor(workspace): make search query ephemeral across workspace switches
- Remove searchQuery from workspace persistence to keep it ephemeral
- Clear search input when switching workspaces
- Preserve selectedProject and advanced filters
- Ensure consistent search clearing behavior in all switch scenarios
2025-09-22 21:37:11 +08:00
Quorafind
f617992d80 fix(workspace): resolve filter state persistence and restoration issues
- Fix workspace filter state not persisting correctly across switches
- Add detailed logging for workspace operations debugging
- Store fluentFilterState separately per workspace to prevent cross-contamination
- Handle default workspace fluentFilterState as workspace-scoped setting
- Save filter state when search query or project selection changes
- Clear cache properly when switching workspaces
- Add console logging to trace filter save/restore operations
2025-09-22 21:10:07 +08:00
Quorafind
2b7179ed9e feat(fluent): implement workspace management with persistent filter states
- Add WorkspaceManager for handling workspace operations
- Implement filter state persistence per workspace and view
- Add workspace settings UI in settings page with create/rename/delete
- Fix infinite refresh loop by using debounced quiet save
- Store fluentFilterState in workspace overrides for each view
- Add workspace events system for UI synchronization
- Support workspace switching with automatic state restoration
2025-09-22 20:09:55 +08:00
Quorafind
9f008db1a0 feat(fluent): add project creation UI with sorting capabilities
- Add CustomProject interface for project persistence
- Implement ProjectPopover (desktop) and ProjectModal (mobile) for project creation
- Add color picker with 15 predefined colors for visual organization
- Replace add button with sort menu in sidebar
- Implement 6 sort options (name, tasks, created date) with localStorage persistence
- Use Intl.Collator for locale-sensitive string comparison
- Extend Obsidian Component class for proper lifecycle management
- Add comprehensive CSS styling for popover and modal interfaces
2025-09-22 11:55:06 +08:00
Quorafind
c747e2bb14 feat(fluent): add overflow menu for other views and optimized task updates
- Add configurable overflow threshold for Other Views (default: 5)
- Show overflow menu (ellipsis) when more than 5 other views exist
- Add setting in Beta Test tab to configure overflow threshold
- Implement refreshCurrentViewData for lightweight updates
- Optimize task updates to only refresh affected components
- Preserve details panel state during task updates
- Avoid full view re-renders when task data changes
2025-09-22 09:13:03 +08:00
Quorafind
86f8d1719e feat(fluent): add collapsible sidebar and full task context menu
- Implement collapsible sidebar with rail mode for narrow layouts
- Add responsive auto-collapse on resize (<768px width)
- Add sidebar toggle button in view header
- Integrate TaskDetailsComponent for full task detail editing
- Implement comprehensive context menu with status switching
- Add task deletion with subtask handling
- Add edit in file functionality
- Refresh navigation badges when tasks update
- Improve clickable icon styling for view tabs
- Optimize task filtering to use pre-computed filtered tasks
- Add computeOtherItems method to dynamically generate other view items
2025-09-21 21:59:34 +08:00
Quorafind
c722fb4c88 feat(fluent): add project filter integration and details panel
- Add project property to filter component with standard conditions
- Integrate project selection with global filter UI state
- Sync project filters bidirectionally between sidebar and filter UI
- Implement details panel for task context menu actions
- Make projects view use content component with global filters
- Add project filter implementation in task-filter-utils
2025-09-21 09:50:11 +08:00
Quorafind
846d3bbeb6 refactor(fluent): streamline filter panel integration and fix view mode initialization
- Remove standalone filter panel in favor of Obsidian view header integration
- Fix view mode initialization to default to list view for content-based views
- Add setIsTreeView method for external view mode control
- Improve component initialization logging for better debugging
- Remove unused patches documentation file
- Fix TypeScript type issues with filter options
2025-09-21 08:28:03 +08:00
Quorafind
6b779f84a5 feat(experimental): add Fluent interface foundation with settings infrastructure
- Add ExperimentalSettings interface with Fluent configuration options
- Implement FluentIntegration class for managing experimental features
- Add Fluent toggle and ribbon icon settings in Beta Test settings tab
- Create experimental folder structure for Fluent components
- Add settings migration for experimental features
- Register Fluent integration on plugin load
2025-09-20 22:06:59 +08:00
Quorafind
e1ab75d420 chore(release): bump version to 9.8.14 2025-09-19 11:42:26 +08:00
Quorafind
c8dfe578fa refactor: remove unused plus token regex pattern
Remove TOKEN_PLUS_REGEX and its references from regex definitions and WriteAPI. This token pattern was no longer being used in the codebase and was adding unnecessary complexity to the regex matching logic.
2025-09-19 11:39:57 +08:00
Quorafind
ede2379365 refactor: extract token regexes to centralized location
Moved context (@) and plus (+) token regex patterns from inline usage
in WriteAPI to centralized regex-define module for consistency and
reusability. Now uses Unicode flag for better international character
support.
2025-09-19 11:15:09 +08:00
Quorafind
58a22af4e6 style(icons): enhance checkbox hover effects
- Add darker color on hover using brightness filter (75%)
- Remove background color on hover with media query
- Add smooth transition animation for hover state
- Fix TypeScript variable initialization in HabitChartModal
2025-09-19 10:49:33 +08:00
Quorafind
33629685fc fix(write): sanitize spaces in project and context tags for Tasks format
Replace spaces with hyphens in project and context tags when using Tasks
format to ensure proper tag parsing. Dataview format preserves original
spaces as intended.
2025-09-19 09:52:31 +08:00
Quorafind
f770126e33 fix(write): preserve spaces in project and context tags when updating tasks
Allow spaces within project tags (#project/...) and context tags (@context...)
when stripping trailing metadata during task updates. This prevents breaking
multi-word project and context values.
2025-09-18 23:07:40 +08:00
Quorafind
c93406cbe7 chore(release): bump version to 9.8.13 2025-09-17 22:52:52 +08:00
Quorafind
01613e5d7d fix(write): preserve unknown dataview fields when updating task metadata
- Refactored metadata detection to only match recognized dataview keys
- Fixed content preservation when inserting start/cancelled dates
- Added strict trailing metadata pattern matching to avoid false positives
- Preserved user-defined fields like [projt::new] during metadata updates
- Added comprehensive tests for dataview and emoji format preservation
2025-09-17 22:51:56 +08:00
Quorafind
a787cee793 fix(write): preserve wiki links and inline code when updating task metadata
- Improved metadata detection to avoid matching content inside wiki links [[...]], markdown links [text](url), and inline code blocks
- Fixed issue where links in task content could be incorrectly treated as metadata markers
- Added comprehensive test to verify links and code blocks are preserved during metadata updates
- Ensures task content remains intact when only metadata is being modified
2025-09-17 21:09:40 +08:00
Quorafind
968e5dcc41 chore(release): bump version to 9.8.12 2025-09-16 16:49:10 +08:00
Quorafind
2d5c117d5f fix(view): prevent rendering when container not visible
- Add visibility checks before task list rendering to avoid DOM errors
- Implement retry mechanism with timeout for deferred rendering
- Queue refresh requests instead of skipping when render in progress
- Fix cache ready event to properly trigger view refresh
- Prevent concurrent renders while allowing force refresh override
2025-09-16 16:32:44 +08:00