* BREAKING CHANGE: refactor with Dart Sass (supplement to #741)
* chore: update .gitignore to include .vercel and .env*.local
* CI: add build script for Hugo site deployment on Vercel
* CI: update build script for Hugo site deployment on Vercel
* refactor: update SCSS layout styles and introduce page-style mixin
* refactor: reorganize SCSS files and improve layout structure
* refactor: rename copy button classes and update related styles
* 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
* 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
* docs: improve error message clarity for shortcode parent block validation
* feat: add APlayer shortcode and audio support
* feat: support both APlayer and MetingJS
* feat: initialize APlayer when content decrypted
* feat: add tabs and tab shortcodes support
Powered by https://github.com/github/tab-container-element
* fix: adjust tab-container styles for improved layout and responsiveness
- [x] Underline Style (Default)
- [x] Pill Style
- [x] Card Style
- [x] Segment Style
* test: add tabs comprehensive test cases
* style: code optimization
* fix: add tabs support in home scope
* docs: add `<tab-container>` element reference to README files
* feat: enhance tab-container with loading mixin and simplify code
* refactor: update variable references to use root prefix in styles
* docs: add tabs shortcode support to README files
* fix: ensure shortcode is enclosed within a tabs block
* feat: add responsive design for tab-container on smaller screens
* test: remove unnecessary placement attribute for segment tabs
* refactor: remove unused vertical attribute from tabs shortcode
* fix: set default tab type to 'underline' for consistency
* refactor: update tab-button and tab-panel selectors for improved specificity
* ✨ Feat: add support for math passthrough render hook
* ✨ Feat: enable copy-tex extension for KaTeX server-side render
* ✨ Feat: enhance mathematical rendering support with KaTeX and MathJax configurations
* ✨ Feat: add KaTeX error handling and custom macros map config
* ✨ Feat: add MathJax client-side rendering as an alternative math engine
* ✨ Feat: update MathJax CDN configuration and enhance asset loading parameters
* 🔥 Feat: remove unused KaTeX math rendering scripts and update KaTex
* ✨ Feat: make \KaTeX command work in MathJax
* ✨ Feat: update KaTeX CDN links for Twikoo integration
* ⚡ Perf: Math in content encryption
* 🐛 Fix: update class name from 'fi-row' to 'fi-raw' in raw.html shortcode
* 🐛 Fix: correct MathJax math delimiters in load-mathjax.js
* ✨ Feat: enhance MathJax configuration with additional tex parameters and update asset handling
* 🐛 Fix: adjust KaTeX display overflow behavior