Changed
* Updated `Cloud_API::get_bundles()` to properly check bundle data and return an empty array if no valid bundles are present.
* Refactored `Cloud_List_Table::fetch_snippets()` to always return a valid `Cloud_Snippets` instance.
* Cleaned up bundle iteration code and improved translation handling in the bundles view.
Fixed
* Fixed errors in bundle iteration by adding a check for the bundles array before iterating.
Added
* `code_snippets/hide_welcome_banner` filter hook for hiding welcome banner in dashboard.
Removed
* Functionality allowing `[code_snippet]` shortcodes to be embedded recursively – it will be re-added in a future version.
### Added
* Generated snippet shortcode tags will include the snippet name, for easier identification.
* Admin notices will dismiss automatically after five seconds. ([#208](https://github.com/codesnippetspro/code-snippets/issues/208))
### Changed
* Updated CSS to use latest Sass features.
* Moved theme selector to just above editor preview on settings page (thanks to [brandonjp]). ([#206](https://github.com/codesnippetspro/code-snippets/issues/206))
* `[code_snippet]` shortcodes can now be nested within each other. ([#198](https://github.com/codesnippetspro/code-snippets/issues/198))
### Fixed
* Save buttons above editor did not follow usual validation process in Pro. (PRO) ([#197](https://github.com/codesnippetspro/code-snippets/issues/197))
* Minor inconsistencies in consistent UI elements between Core and Pro.
* Tags input not allowing input. ([#211](https://github.com/codesnippetspro/code-snippets/issues/211))
* Issue with Elementor source code widget. (PRO) ([#205](https://github.com/codesnippetspro/code-snippets/issues/205))
* Snippet descriptions not visible when viewing cloud search results.
* Snippet import page not displaying number of successfully imported snippets.
* Use UTC time when deciding when to display campaign notices.
Changed
* Improved compatability with modern versions of PHP.
* Extended welcome API to include admin notices.
Fixed
* Memory issue from checking aggregate posts while loading front-end syntax highlighter.
* Translation functions being called too early on upgrade, resulting in localisation loading errors.
* Bug preventing the 'share on network' status of network snippets from correctly updating.
* Incorrect logic controlling when to display 'Save Changes' or 'Save Changes and Activate' buttons.
* Old notices persisting when switching between editing and creating snippets.
* Added: New admin menu providing useful resources and updates on the Code Snippets plugin and community.
* Fixed: Minor type compatability issue with newer versions of PHP.
* Improvement: Increment the revision number of CSS and JS snippet when using the 'Reset Caches' debug action. (PRO)
* Fixed: Undefined array key issue when initiating cloud sync. (PRO)
* Fixed: Bug preventing downloading a single snippet from a bundle. (PRO)
* Added: AI generation for all snippet types: HTML, CSS, JS. (PRO)
* Fixed: Translations not loading for strings in JavaScript files.
* Improved: UX in generate dialog, such as allowing 'Enter' to submit the form. (PRO)
* Added: Button to create a cloud connection directly from the Snippets menu when disconnected. (PRO)
* Fixed: Import error when initialising cloud sync configuration. (PRO)
* Improved: Added debug action for resetting snippets caches.
- Fixed: Do not enqueue CSS or JS snippet file if no snippets exist. (PRO)
- Improved: Added additional editor shortcuts to list in tooltip.
- Added: Filter for changing Snippets admin menu position. See this help article for more information.
- Added: Ability to filter shortcode output. Thanks to contributions from Jack Szwergold.
- Fixed: Bug causing all snippets to show in site health information instead of those active.
- Fixed: Unnecessary sanitization of file upload data causing import process to fail on Windows systems.