- Add .env.example with GOOGLE_CLIENT_SECRET_B64 placeholder
- Update esbuild config to inject env vars via define at build time
- Add env.d.ts for TypeScript process.env type declarations
- Use base64 encoding for basic obfuscation of injected secrets
This prevents OAuth client secrets from being committed directly to
the repository. Developers need to create .env with their own secrets.
- Update README installation links to correct GitHub repo
- Change version badge to dynamic release tag
- Simplify DEVELOPMENT.md directory structure documentation
- Add PRIVACY.md with privacy policy information
Introduce a new SettingsModal component that provides a full-featured
settings interface using Obsidian's vertical tabs layout pattern.
The modal includes categorized navigation, deep search functionality,
and mobile-responsive design with back navigation.
Key changes:
- Add SettingsModal with searchable settings, category grouping, and
smooth transitions between tabs
- Refactor ProjectSettingsTab with comprehensive documentation and
clearer section organization
- Support boolean metadata values for project detection (uses filename
as project name when `project: true`)
- Integrate settings modal into FluentTopNavigation
- Add corresponding SCSS styles for the modal layout
- Convert all .css files to .scss format
- Add sass and esbuild-sass-plugin dependencies
- Configure esbuild with sassPlugin for SCSS compilation
- Update all component imports from .css to .scss
- Add _variables.scss for shared SCSS variables
- Add native-layout.scss for new layout styles
- Add TimerStatisticsPanel component for displaying active and completed timers
- Implement completed timer history with configurable max records
- Add timer controls (start/pause/resume/stop) to task list and tree views
- Integrate timer auto-start option in quick capture settings
- Add Working On navigation item for viewing active timers
- Refactor timer manager with unified storage abstraction
- Add i18n translations for timer features (en/zh-cn)
- Add timer statistics CSS styles
- Add comprehensive property mapping system with metadata mappings support
- Implement bidirectional status mapping (symbol to metadata value)
- Add direct frontmatter update capability for Bases entry tasks
- Include default status mappings as fallback for common values
- Deprecate calendar DayView and MonthView components
- Improve property key resolution with custom metadata mappings
- Add debug logging for status conversion troubleshooting
Remove redundant custom date adapter implementations in favor of the DateFnsAdapter exported directly from @taskgenius/calendar library.
- Delete local DateFnsAdapter utility class
- Remove inline NormalizedDateFnsAdapter from calendar component
- Import DateFnsAdapter from @taskgenius/calendar package
- Extend regex patterns to support HH:mm time format in date fields
- Add date-utils with isDateOnly() and formatDateSmart() helpers
- Enhance time-parsing-service to normalize parsed dates with time
- Update WriteAPI and executors to handle date-time patterns
- Add pnpm-workspace.yaml for monorepo configuration
- Move esbuild-plugin-inline-worker to workspace package
- Update package.json to use workspace:* references
- Add workspace-related entries to .gitignore