* refactor(assets)!: rewrite content encryption with AES-256-GCM and PBKDF2
- Remove legacy Base64 obfuscation layer (content-encryption.html)
- Replace <cipher-text> with <template> for inert content storage
- Single-layer AES-256-GCM encryption via post-build script
- PBKDF2 key derivation (100k iterations) for encryption
- PBKDF2-protected password verification (data-verify-salt)
- Depth-tracking parser for nested shortcode support
- Dev mode: plaintext content used directly without encryption
- Remove crypto-js and xxhash-wasm vendored dependencies
* feat(post-encrypt): prepare package for npm publishing
- Add bin entry, build script, and dist output for npx usage
- Replace @hugo-fixit/shared with standalone implementations
- Add CLI shebang for direct execution
- Add package README with usage documentation
- Remove FIXIT_ENCRYPT_INPUT env var (redundant with --input)
- Add encryption detection warning in assets.html
- Remove Post-build Encryption sections from READMEs
* chore: integrate post-encrypt into build pipeline and use consola
- Replace console with consola for post-encrypt logging
- Improve verification messages (no templates, count, etc.)
- Simplify build scripts: encrypt runs as part of main build
- Update encryption detection warning to use npx command
* feat(assets): add encryption dev warning admonition
- Add danger admonition in single.html for full-page encryption (dev mode only)
- Add encryption detection warning in assets.html console
- Improve post-encrypt verification messages with template count
* feat(assets): improve encryption i18n, cache security, and error handling
- Add encryptionWarning and encryptionCommand i18n keys for all 16 languages
- Store PBKDF2 verification hash in localStorage cache for better security
- Show decryption errors via flashTooltip instead of console only
- Add FixItDecryptor type definitions in global.ts
- Move encryption detection to init/detection-encryption.html with batched warning
- Remove redundant per-page warning from assets.html
* feat(assets): redesign fixit-decryptor UI with card layout
- Page-level: card form with lock icon header, password input with key icon, primary-colored unlock button, circular re-encrypt button
- Shortcode-level: connected input+button design (search bar style) with focus ring sync
- Remove loading spinner, use display:none/flex toggle via .initialized class
- Move lock icon styling to UnoCSS (text-primary text-xl)
- Initialize CellTooltip on re-encrypt button
- Fix JSDoc @param warnings in global.ts
* refactor(assets): unify TOC template and decryptor animations
- TOC always rendered in `<template data-toc>`, containers populated by initToc()
- Moved TOC scroll/resize handling from events.ts to toc.ts (syncTocLayout, syncTocActiveState)
- Removed EventsModule toc dependency, updated public-api.ts constructor
- Removed visibility:hidden from #toc-auto
- Decryptor: form always visible, @starting-style for fade-in on init
- Decryptor: content expand/collapse animation using height + opacity
- Removed encrypted-hidden from TOC elements in single.html
* refactor(assets): add target to fixit:decrypted event and simplify handlers
- Add { target: Element } payload to fixit:decrypted in event-bus.ts
- Remove $content closure from fixit-decryptor init(), use detail.target
- Update content.ts and toc.ts to use detail.target from event
* fix(assets): use eventBus for TOC scroll/resize listeners and eliminate redundant template parsing
- Replace raw window scroll/resize listeners in TocModule with eventBus
subscriptions (fixit:scroll/fixit:resize), reusing EventsModule's
throttle and debounce instead of duplicating un-throttled handlers.
- Refactor hasUnencryptedTemplate in post-encrypt to accept the already-
computed matches array, avoiding a redundant findEncryptionTemplates
call on the same HTML content.
- Remove crypto-js and xxhash-wasm from README credits.
* style(assets): soften decryptor button background and add form hover shadow
* build(workflow): add post-encrypt step to build script
* 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
* feat: optimize code highlighting for diff language
* refactor: update codeblock configuration and enhance code wrapper functionality
* fix: extra blank lines would appear when copying lines containing code highlighting
* refactor: enhance code block wrapper functionality and add new styles (mac style)
* refactor: enhance code block normal mode
* feat: do noting for code block simple mode
* feat: add copy btn for code block modes mac and simple
* refactor: add code-related variables and update styles for code blocks and gist layout
* feat: update code copy button visibility on hover for larger screens
* feat: update code block mode attribute and remove mac wrapper
* feat!: code block parameters accurate to a single
Remove the `data-open` attribute and use `.open` instead.
* refactor: enhance initCopyCode method to accept optional button parameter
* feat: improve code/diagram copy button styles and transitions for better visibility
* fix: disable copy buttons for simple/mac mode code blocks when copyable set to false
* chore: rename normal partial to code-header
* feat: add preview and expand feature for code blocks (close#312)
* fix: adjust transition timing for code header and fade-out animation
* test: update code block test case
* docs: update comments for code highlight and markup configurations
* feat: adjust code header background color darkening for light and dark themes
* fix: hide aside and breadcrumb pseudo-elements on small screens
* perf: change the code copy button and code expand button to server-side rendering
* fix: the code expand button obscured the code content
* fix: update code background and header colors for improved visibility
* fix: ensure code copy button is only added for copyable code blocks
* feat(code block): add lineNosToggler and lineWrapToggler params and feature for code blocks
* refactor: code syntax highlighting styles
* fix: update background color for line numbers and ensure proper sticky effect
* feat(code block): add support for code file names in code blocks
* fix: code review for PR #665
* feat(i18n): add Japanese and Korean translations; update toggle options in multiple languages
* docs: update configurations and comments
* 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
* chore: use monorepo to manage demo, test and other applications and internal packages
* style: add eslint support and lint code
* chore: refactor project structure and add versioning package replace of fixit-releaser
* chore(deps-dev): replace husky with simple-git-hooks
* Potential fix for code scanning alert no. 13: Shell command built from environment values
* chore(deps-dev): update the final fixit-releaser version
* docs: update contributing guidelines for new structure and commands
---------
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>