Skip to content

Revert 13 hero icon implementation check 378f9#550

Open
freebeedee wants to merge 17 commits into
Make-md:mainfrom
freebeedee:revert-13-hero-icon-implementation-check-378f9
Open

Revert 13 hero icon implementation check 378f9#550
freebeedee wants to merge 17 commits into
Make-md:mainfrom
freebeedee:revert-13-hero-icon-implementation-check-378f9

Conversation

@freebeedee

Copy link
Copy Markdown

No description provided.

qwen-intl and others added 17 commits June 30, 2026 10:20
Key features implemented:
- Updated ObsidianAssetManager to remove hardcoded Lucide brand icons and rely on AssetManager for icon loading
- Modified sticker rendering logic to safely handle missing icons using optional chaining with fallbacks
- Replaced direct getIcon calls with AssetManager.getIconSync/getIcon methods for robust icon retrieval
- Added Hero Icons as replacement built-in iconset for missing Lucide brand icons
- Updated allStickers method to use cached icons from AssetManager instead of hardcoded Lucide array
- Ensured emoji and custom iconsets continue to work while preventing crashes from missing brand icons

The changes resolve the TypeError when accessing removed Lucide brand icons by implementing proper null checks and using the AssetManager for icon resolution, restoring functionality to the sticker picker modal.
Update from task 1ce5d834-515b-4aa8-8659-23fac6e54451
…rmance

Key features implemented:

- New File PERFORMANCE_OPTIMIZATIONS.md: Documents completed performance optimizations including build, worker, caching, concurrency, and async pattern improvements
- New File src/utils/batch-processor.ts: Implements processInBatches, processWithConcurrencyLimit, withTimeout, and debounceAsync utilities
- New File src/utils/lru-cache.ts: Adds reusable LRU cache implementation with configurable max size and O(1) operations
- Updated esbuild.config.mjs: Enables incremental builds, granular minification controls, metafile generation, and parallel worker builds using CPU core count
- Updated src/core/superstate/superstate.ts: Replaces Promise.all with processWithConcurrencyLimit for space actions and initialization (max 4 concurrent)
- Updated src/core/superstate/utils/path.ts: Changes Promise.all to Promise.allSettled in hidePaths for fault tolerance
- Updated src/core/superstate/workers/indexer/indexer.ts: Dynamically calculates worker count from CPU cores, adds findLeastBusyWorker load balancing, implements work-stealing strategy, and integrates LRU cache for path metadata (500 entry limit)

The changes significantly improve application performance through optimized build times, controlled concurrency, efficient caching, and better worker utilization. The asynchronous operations are now more resilient to failures and resource exhaustion.
…d8ff

Update from task da744cb8-c654-407d-9777-e486aefad8ff
…zations

Key features implemented:
- Refactored .gitignore with comprehensive and organized ignore patterns for various file types and environments
- Implemented optimized filter-map operation in cacheParsers.ts to improve metadata parsing performance
- Enhanced Superstate class with concurrency-limited batch processing for actions and spaces initialization
- Updated indexer implementation with LRU caching for path metadata and optimized worker load distribution
- Improved search functionality with pre-filtered visible paths for faster query results
- Added utility function for optimized filtering and mapping operations across multiple modules

The changes introduce significant performance optimizations through reduced iterations and caching while maintaining full functionality. The refactored indexing system now handles metadata more efficiently with improved worker utilization and memory management.
…df1f

Update from task b609df53-c133-4d62-b69f-27bce443df1f
…d8ff

Performance optimization tips ad8ff
Key features implemented:
- Added new script at scripts/fetch-heroicons.mjs to automatically fetch and update Heroicons from GitHub API
- Restored .gitignore with comprehensive ignore rules including dependencies, logs, temp files, editors, Python files, build outputs, compression formats, OS files, and testing artifacts
- Updated src/adapters/obsidian/ui/icons.ts to include all Heroicons outline and solid variants, expanding from a minimal set to full library
- Enhanced icon management by adding heroIconsSolid alongside heroIconsOutline and updating heroIconNames to include both sets

The changes restore proper git ignoring functionality while significantly expanding the available icon set through automated fetching and updating mechanisms.
…-picker-7c537

Update from task db876e65-7132-4ea6-8e75-545e96f7c537
Key features implemented:

- Fix src/adapters/obsidian/ui/icons.ts to resolve undefined heroIconsSolid error by ensuring proper import and usage of Hero Icons v2 outline and solid variants
- Update src/core/superstate/superstate.ts to fix type mismatches between SpaceInfo and string types in space management logic, specifically addressing nonDefaultSpaces array typing and reloadActions parameter validation
- Correct type annotations and variable declarations to ensure consistent SpaceInfo object handling throughout the superstate initialization and space reloading processes

The changes resolve critical TypeScript compilation errors while maintaining existing functionality for icon rendering and space state management.
…-378f9

Update from task 78135fb1-cacb-4aaa-832a-58da515378f9
…-378f9

Update from task 78135fb1-cacb-4aaa-832a-58da515378f9
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants