* refactor(styles): unify theme properties and update color variables across stylesheets
* Implement theme mode support with light-dark color adjustments across stylesheets
- Added color-scheme support in _root.scss for light and dark modes.
- Replaced theme property mixins with light-dark function in various widget styles including _cell-tooltip.scss, _cookieconsent.scss, _fixed-button.scss, and others.
- Updated alert styles in _alert.scss to use light-dark for border and text colors.
- Refactored code syntax highlighting in _code.scss and _code-syntax/_index.scss to utilize light-dark for background gradients.
- Enhanced search input styles in _search.scss to adapt to theme mode.
- Modified theme switching logic in color-scheme.js and theme.js to support new theme mode structure.
- Adjusted APlayer and Valine styles to accommodate dark mode using new theme variables.
* feat(shortcode): add auto-dark shortcode for dark mode adaptation
* refactor(styles): update theme colors and improve box-shadow properties for better visual consistency
* feat(header): add scroll-state container queries and enhance header shadow effects
* feat(styles): enhance scroll behavior with overscroll-behavior adjustments for better UX
* feat(styles): update code&table styles and colors for improved visual consistency
* feat(styles): update color variables and improve font styling for better visual hierarchy
* feat(markup): add toggle code block functionality with multiple format support
* fix(assets): improve filename generation for code downloads
* feat(code): add `before_tabs` attribute support for tabbed code blocks
* feat(code): implement visibility control for first tab content in code blocks
* Fix deprecation warning with latest hugo version 0.156.0
* fix: use `hugo.Data` to replace the discarded `.Site.Data`
* chore(hugo): update Hugo version requirements to 0.156.0
---------
Co-authored-by: Cell <1024@lruihao.cn>
* feat(File Tree): add `file-tree` shortcode support
* feat(file-tree): add ignoreList parameter to file-tree shortcode
* feat(file-tree): enhance file-tree shortcode with ignoreList and folderSlash options
* feat(file-tree): enhance file-tree shortcode to support data mode
* feat(file-tree): enhance file-tree shortcode to support file mode
* feat(file-tree): improve content parsing in file-tree shortcode
* feat(file-tree): improve root path validation and error handling in filesystem mode
* test(file-tree): add unit tests for `file-tree` shortcode
* feat(file-tree): add file-tree code block rendering support
* refactor(file-tree): extract filesystem scanning to get-file-tree partial
Move directory traversal and root path validation to a separate partial function,
consolidating all filesystem-related logic in one place. This simplifies the
shortcode implementation and ensures a unified data format for rendering.
* docs(readme): extend code fence and shortcode support for file tree in documentation
* feat(file-tree): add fullRootName parameter for root path display in file tree
* feat(file-tree): add language parameter to get-file-tree function
* feat(file-tree): add highlightList parameter for file-tree shortcode
* perf(file-tree): add level param for get-file-tree function to descend only level directories deep
> The `Param` method on a `Page` object looks for the given `KEY` in page parameters, and returns the corresponding value. If it cannot find the `KEY `in page parameters, it looks for the `KEY` in site parameters. If it cannot find the `KEY` in either location, the Param method returns `nil`.
>
> See: https://gohugo.io/methods/page/param/
So `.Page.Param` is only suitable for simple types.
* feat: add blacklist option for image optimisation and enhance shortcode parameters
To ensure compatibility with Hugo 0.153.0, converting GIFs to WebP is prohibited. (gohugoio/hugo#14282)
* feat: enhance image plugin with Matches parameter for better resource handling and improve featured image rendering
* fix: correct URL handling in assets partial for language support
* feat: update JavaScript config paths for assets and post-chat integration
* fix: update favicon and manifest links to use relURL for correct path resolution