feat: Add CMD+K command palette with ninja-keys integration
Implement a command palette accessible via CMD+K/Ctrl+K using the ninja-keys web component. Features include: - New /api/cmd-k endpoint serving dynamic CV entries (experiences, projects, courses) - Language-aware responses with 1-hour cache headers - Scroll-to-section functionality for quick navigation - Enhanced keyboard shortcuts modal with CMD+K documentation - Comprehensive test coverage for API and UI interactions Also includes cleanup of deprecated debug test files and various UI polish improvements to contact form, themes, and action bar components.
This commit is contained in:
@@ -100,34 +100,38 @@ def handleScroll()
|
||||
end
|
||||
end
|
||||
|
||||
-- Back to top button visibility
|
||||
if currentScroll > 300
|
||||
set #back-to-top's *display to 'flex'
|
||||
-- Back to top button visibility (with null check)
|
||||
set backToTop to #back-to-top
|
||||
if backToTop is not null
|
||||
if currentScroll > 300
|
||||
set backToTop's *display to 'flex'
|
||||
end
|
||||
if currentScroll <= 300
|
||||
set backToTop's *display to 'none'
|
||||
end
|
||||
end
|
||||
|
||||
if currentScroll <= 300
|
||||
set #back-to-top's *display to 'none'
|
||||
end
|
||||
|
||||
-- At-bottom class for fixed buttons
|
||||
-- At-bottom class for fixed buttons (with null checks)
|
||||
if isAtBottom
|
||||
add .at-bottom to #back-to-top
|
||||
add .at-bottom to #info-button
|
||||
add .at-bottom to #shortcuts-button
|
||||
add .at-bottom to #download-button
|
||||
add .at-bottom to #print-friendly-button
|
||||
if backToTop is not null then add .at-bottom to backToTop end
|
||||
if #info-button is not null then add .at-bottom to #info-button end
|
||||
if #shortcuts-button is not null then add .at-bottom to #shortcuts-button end
|
||||
if #download-button is not null then add .at-bottom to #download-button end
|
||||
if #print-friendly-button is not null then add .at-bottom to #print-friendly-button end
|
||||
if #cmd-k-button is not null then add .at-bottom to #cmd-k-button end
|
||||
add .at-bottom to .color-theme-switcher
|
||||
add .at-bottom to #zoom-toggle-button
|
||||
if #zoom-toggle-button is not null then add .at-bottom to #zoom-toggle-button end
|
||||
end
|
||||
|
||||
if not isAtBottom
|
||||
remove .at-bottom from #back-to-top
|
||||
remove .at-bottom from #info-button
|
||||
remove .at-bottom from #shortcuts-button
|
||||
remove .at-bottom from #download-button
|
||||
remove .at-bottom from #print-friendly-button
|
||||
if backToTop is not null then remove .at-bottom from backToTop end
|
||||
if #info-button is not null then remove .at-bottom from #info-button end
|
||||
if #shortcuts-button is not null then remove .at-bottom from #shortcuts-button end
|
||||
if #download-button is not null then remove .at-bottom from #download-button end
|
||||
if #print-friendly-button is not null then remove .at-bottom from #print-friendly-button end
|
||||
if #cmd-k-button is not null then remove .at-bottom from #cmd-k-button end
|
||||
remove .at-bottom from .color-theme-switcher
|
||||
remove .at-bottom from #zoom-toggle-button
|
||||
if #zoom-toggle-button is not null then remove .at-bottom from #zoom-toggle-button end
|
||||
end
|
||||
|
||||
-- Update last scroll position
|
||||
|
||||
Reference in New Issue
Block a user