UNPKG

@plone/volto

Version:
634 lines (476 loc) 482 kB
--- myst: html_meta: "description": "Volto Release Notes for the Plone content management system" "property=og:description": "Volto Release Notes for the Plone content management system" "property=og:title": "Volto Release Notes" "keywords": "Volto, Plone, frontend, Release Notes, change log, changelog, change history" --- # Volto Release Notes <!-- Do *NOT* add new change log entries to this file. Instead create a file in the news directory. For helpful instructions, see: https://6.docs.plone.org/contributing/index.html#change-log-entry --> <!-- towncrier release notes start --> ## 18.11.1 (2025-04-07) ### Bugfix - Fixed regression on brown bag minor version of `@storybook/addon-webpack5-compiler-babel`. @sneridagh [#6930](https://github.com/plone/volto/issues/6930) ## 18.11.0 (2025-03-31) ### Feature - Add hidden widget. @robgietema Add static text widget. @robgietema Add time widget. @robgietema Add radio group widget. @robgietema Add checkbox group widget. @robgietema Add taken slugs to slugify helper. @robgietema Add filter choices, additional choices and sort to select widget. @robgietema Add max size and accept type checks to file widget. @robgietema Fix bug with pressing enter in blocks form that events gets bubbled from modal to blocks area. @robgietema Add option to pass custom widget `config` to field component. @robgietema Add optional widgets `config` to form component. @robgietema Add option to override the form component and the buttons in the form component. @robgietema Add option to override cancel label in form. @robgietema Add option to choose between icon and text buttons in the form component. @robgietema Add option to change form data from outside of the form in the modal form. @robgietema Move field factory properties per field to a utility so it can be registered from other packages. @robgietema Move field factory initial data per field to a utility so it can be registered from other packages. @robgietema Add filter factory option to schema widget. @robgietema Add additional factory option to schema widget. @robgietema Add option to allow editing the id of the fields in the schema widget. @robgietema Fix bug when multiple fields were added with the same id in the schema widget. @robgietema Add option to select the shortname as initial data for a new field in the schema widget. @robgietema Change properties form on the fly in the add field modal when changing the factory. @robgietema Fix bug where error messages where not rendered in the form because a string was expected. @robgietema Don't show request error multiple times when a form is validated. @robgietema Fix a bug where the video block schema was not used for validation. @robgietema [#6370](https://github.com/plone/volto/issues/6370) - Add Russian translation in Volto. @toropok [#6874](https://github.com/plone/volto/issues/6874) - Use Plone 6.1.1 final. @sneridagh ### Bugfix - Fixed horizontal drag and drop placeholder. Now it appears behind the next element, and if it is the last element, it highlights the whole draggable area. Vertical placeholder remained untouched. @Narcis2005 [#4405](https://github.com/plone/volto/issues/4405) - Fixed Makefile to use `SITE_DEFAULT_LANGUAGE` instead of `LANGUAGE` for backend Docker setup. This aligns with plone/plone-backend#170 changes and resolves conflicts with the OS `LANGUAGE` environment variable. @boss6825 [#6747](https://github.com/plone/volto/issues/6747) - Improved error handling in the Form component to display the title of the error field in the Toast. This ensures that users see a more descriptive and clear error message when a field is invalid. @alexandreIFB [#6833](https://github.com/plone/volto/issues/6833) - Fix error when saving content with ObjectBrowserNav open. @wesleybl [#6845](https://github.com/plone/volto/issues/6845) - Fix the toolbar icon for the back navigation in the contact form. @kittauri [#6852](https://github.com/plone/volto/issues/6852) - Check if the destination (build public directory) exists before trying to create it in AfterBuildPlugin when consolidating `public` folders from add-ons. @sneridagh [#6853](https://github.com/plone/volto/issues/6853) - Add `aria-label` for search and cancel buttons for the input on search block. @Wagner3UB [#6862](https://github.com/plone/volto/issues/6862) - Prevent submit form from ImageWidget. @giuliaghisini [#6879](https://github.com/plone/volto/issues/6879) - Fixed merge public folder from addons regression. @reebalazs @sneridagh [#6919](https://github.com/plone/volto/issues/6919) ### Internal - Enable documentation builds and update README.md links on branch `18.x.x`. @stevepiercy, @sneridagh [#6876](https://github.com/plone/volto/issues/6876) ### Documentation - Changed `LANGUAGE` to `SITE_DEFAULT_LANGUAGE` in documentation examples to align with plone/plone-backend#170 changes. @boss6825 [#6747](https://github.com/plone/volto/issues/6747) ## 18.10.1 (2025-03-14) ### Bugfix - Fix validation allowing relative URLs when `allowExternals` prop is set. @sneridagh [#6840](https://github.com/plone/volto/issues/6840) ## 18.10.0 (2025-03-13) ### Feature - Add validator for `default_language` in language control panel. @sneridagh [#6811](https://github.com/plone/volto/issues/6811) - Allow setting the default language via a runtime environment variable. @sneridagh [#6830](https://github.com/plone/volto/issues/6830) ### Bugfix - For form validation, use the backend validator props passed to fields. @iRohitSingh. [#6816](https://github.com/plone/volto/issues/6816) - The style wrapper `buildStyleObjectFromData` now accounts for container blocks. @sneridagh [#6832](https://github.com/plone/volto/issues/6832) ### Documentation - Use Cookieplone for installation everywhere. @stevepiercy [#6820](https://github.com/plone/volto/issues/6820) ## 18.9.2 (2025-03-07) ### Bugfix - Does not show empty `class` attribute when rendering `img` tag with `Image` component. @wesleybl [#6788](https://github.com/plone/volto/issues/6788) - Fixed button types across several components to allow reuse in more complex forms @pnicolli [#6791](https://github.com/plone/volto/issues/6791) - Fixed `AlternateHrefLangs` component, missing `FlattenToAppURL`. @sneridagh [#6799](https://github.com/plone/volto/issues/6799) - a11y - Added id attribute to checkbox widget for proper identification and fixes label functionality for screen readers. @Wagner3UB [#6802](https://github.com/plone/volto/issues/6802) ### Documentation - Improve the wording on theming docs. @erral [#6767](https://github.com/plone/volto/issues/6767) - Fix MyST warnings about bad references, remove cookiecutter-plone-starter link, and remove `rietveldschroderhuis.nl` due to repeated failures and no response in https://github.com/collective/awesome-volto/pull/27. @stevepiercy [#6812](https://github.com/plone/volto/issues/6812) ## 18.9.1 (2025-02-20) ### Bugfix - Fix load more comments link. @sneridagh [#6759](https://github.com/plone/volto/issues/6759) ### Internal - Move Seven to its own branch. @sneridagh [#6769](https://github.com/plone/volto/issues/6769) ### Documentation - Fix reference to `link.svg` and include of `_inc/_install-browser-reqs-volto.md`. @stevepiercy [#6760](https://github.com/plone/volto/issues/6760) ## 18.9.0 (2025-02-17) ### Feature - Add self link in alternate language links @erral [#6602](https://github.com/plone/volto/issues/6602) ### Bugfix - Serve `sitemap.xml.gz` as an alias for `sitemap-index.xml`. @reebalazs [#6561](https://github.com/plone/volto/issues/6561) - Move the block chooser beneath the block, instead of covering the block and preventing making a choice, when `config.experimental.addBlockButton` is enabled. @giuliaghisini [#6751](https://github.com/plone/volto/issues/6751) ### Internal - Use Plone 6.1.0 final release. @sneridagh [#6731](https://github.com/plone/volto/issues/6731) - Add Film Basque Country website to README. @erral [#6741](https://github.com/plone/volto/issues/6741) - Sync content from Awesome Volto into README. @stevepiercy [#6745](https://github.com/plone/volto/issues/6745) - Fixes intermittent error in cypress "Index Text Block" test. @wesleybl [#6755](https://github.com/plone/volto/issues/6755) ### Documentation - Document Slate heading as anchor links in Volto blocks user manual. @nileshgulia1 [#5755](https://github.com/plone/volto/issues/5755) ## 18.8.2 (2025-02-08) ### Bugfix - Use a text widget for editing the frontend domain setting in the Volto Settings control panel, instead of the URL widget which causes problems by erasing the current domain. @davisagli [#4171](https://github.com/plone/volto/issues/4171) - Update Dutch translations. @mauritsvanrees [#6476](https://github.com/plone/volto/issues/6476) ### Internal - Test(cypress): fix breaking a list by typing Enter refs- #6586 @nileshgulia1 [#6570](https://github.com/plone/volto/issues/6570) - Add the block `group` name in the block configuration. @erral [#6679](https://github.com/plone/volto/issues/6679) - Test with Plone 6.1.0rc1. @sneridagh [#6682](https://github.com/plone/volto/issues/6682) - Revise the existing issue templates and create a new one for PLIP tasks. @stevepiercy [#6683](https://github.com/plone/volto/issues/6683) - Fix documentation build at Read the Docs. @sneridagh [#6684](https://github.com/plone/volto/issues/6684) - Upgrade jotai to 2.11.3 @ksuess [#6685](https://github.com/plone/volto/issues/6685) - Add Makefile command for testing Cookieplone in CI @sneridagh [#6728](https://github.com/plone/volto/issues/6728) ## 18.8.1 (2025-02-04) ### Bugfix - Fix regression in moving blocks from Grid block. @sneridagh [#6642](https://github.com/plone/volto/issues/6642) ### Internal - Fix `corepack` in CI. @sneridagh For more info: https://github.com/nodejs/corepack/issues/612 [#6640](https://github.com/plone/volto/issues/6640) - Update TS version. @sneridagh [#6641](https://github.com/plone/volto/issues/6641) ## 18.8.0 (2025-01-31) ### Feature - Show the working copy actions (checkin/checkout) based on whether they are enabled in the backend, instead of the `hasWorkingCopySupport` setting. @wesleybl, @davisagli [#5284](https://github.com/plone/volto/issues/5284) - Expose `robots.txt` setting in Volto control panel, and render `robots.txt` based on REST API call. @robgietema [#5580](https://github.com/plone/volto/issues/5580) - Update tests to match the new message in the add-ons loader. @sneridagh [#6630](https://github.com/plone/volto/issues/6630) ### Bugfix - Pass `intl` object to `initialValue` function. @wesleybl [#6529](https://github.com/plone/volto/issues/6529) - Update Dutch translations @fredvd [#6531](https://github.com/plone/volto/issues/6531) - Correctly handle when one of the items is `null` in the Relations control panel. @giuliaghisini [#6629](https://github.com/plone/volto/issues/6629) - Added `field.pattern` as a parameter to the internationalized message. @ionlizarazu [#6631](https://github.com/plone/volto/issues/6631) - Display the appropriately sized image to eliminate blurring from upsizing smaller images in the `srcSet` generation. @giuliaghisini [#6634](https://github.com/plone/volto/issues/6634) ### Internal - Add acceptance test for non-manager user editing group memberships. @ksuess [#5786](https://github.com/plone/volto/issues/5786) - Enhance Volto contributing guidelines. @stevepiercy [#6613](https://github.com/plone/volto/issues/6613) - Split Read the Docs pull request preview builds between Volto and `@plone/registry`. @stevepiercy [#6617](https://github.com/plone/volto/issues/6617) - Updates the first-timer message to use the correct link for feature voting. @stevepiercy [#6625](https://github.com/plone/volto/issues/6625) - Allow `2021.ploneconf.org` to fail readme-link-check. @stevepiercy [#6627](https://github.com/plone/volto/issues/6627) ### Documentation - Amended version policy documentation. @sneridagh Added deprecation notice for Semantic UI theming. [#6541](https://github.com/plone/volto/issues/6541) - Document how to migrate projects to Cookieplone. @stevepiercy @erral [#6626](https://github.com/plone/volto/issues/6626) ## 18.7.0 (2025-01-24) ### Feature - - Fixed handling of the site logo preview to appear after upload. @Shyam-Raghuwanshi [#6591](https://github.com/plone/volto/issues/6591) - Provide language alternate links @erral [#6602](https://github.com/plone/volto/issues/6602) - feat(cypress):Add custom check Accessibility command @Tishasoumya-02 [#6606](https://github.com/plone/volto/issues/6606) ### Bugfix - Improve the usability of the `ObjectBrowser` when inputting a manual value, checking it on blur, and adding a local validator. @sneridagh [#6576](https://github.com/plone/volto/issues/6576) - fix(useClipboard): Do not have a pending promise in a boolean state @nileshgulia1 [#6585](https://github.com/plone/volto/issues/6585) ### Internal - Add Seven convenience Makefile commands. @sneridagh [#6599](https://github.com/plone/volto/issues/6599) - Restore pull request previews on Read the Docs. @stevepiercy [#6612](https://github.com/plone/volto/issues/6612) - Fix lint-staged throwing warnings when a file is checked-in and ignored. @sneridagh [#6614](https://github.com/plone/volto/issues/6614) ### Documentation - Enhancements of the upgrade guide for Volto 18, since we detected some inconsistencies. @sneridagh [#6609](https://github.com/plone/volto/issues/6609) ## 18.6.0 (2025-01-11) ### Feature - Add component to show related items, which can be enabled using the `showRelatedItems` setting. @wesleybl [#3740](https://github.com/plone/volto/issues/3740) ### Bugfix - The depth field in the base search query of the search block was ignored, causing search results to include items beyond the specified depth level. Search results now respect the specified depth configuration. @TechSubham [#5856](https://github.com/plone/volto/issues/5856) - No longer add classes from the query string search text in the `body` tag. @Abhishek-17h [#6493](https://github.com/plone/volto/issues/6493) - Fixed folder contents issues with persistent selection across page changes. @pnicolli [#6554](https://github.com/plone/volto/issues/6554) - Fix robots.txt in devmode @reebalazs [#6572](https://github.com/plone/volto/issues/6572) ### Documentation - Fix redirecting links to Mozilla Developer Network's responsive images. @stevepiercy [#6552](https://github.com/plone/volto/issues/6552) - Add Volto block examples in the documentation. @erral [#6560](https://github.com/plone/volto/issues/6560) ## 18.5.0 (2025-01-09) ### Feature - Add component to show related items, which can be enabled using the `showRelatedItems` setting. @wesleybl [#3740](https://github.com/plone/volto/issues/3740) ### Bugfix - The depth field in the base search query of the search block was ignored, causing search results to include items beyond the specified depth level. Search results now respect the specified depth configuration. @TechSubham [#5856](https://github.com/plone/volto/issues/5856) - No longer add classes from the query string search text in the `body` tag. @Abhishek-17h [#6493](https://github.com/plone/volto/issues/6493) - Fixed folder contents issues with persistent selection across page changes. @pnicolli [#6554](https://github.com/plone/volto/issues/6554) - Fix robots.txt in devmode @reebalazs [#6572](https://github.com/plone/volto/issues/6572) ### Documentation - Fix redirecting links to Mozilla Developer Network's responsive images. @stevepiercy [#6552](https://github.com/plone/volto/issues/6552) - Add Volto block examples in the documentation. @erral [#6560](https://github.com/plone/volto/issues/6560) ## 18.4.0 (2024-12-17) ### Feature - Added a setting in the `config` object to set the site's CSS layers, if required. @sneridagh [#6539](https://github.com/plone/volto/issues/6539) ### Internal - Fixed and re-enabled the types declaration extractor from core Volto. @sneridagh [#6534](https://github.com/plone/volto/issues/6534) ### Documentation - Add monorepo structure to the README. Update the monorepo structure file tree. @stevepiercy [#6542](https://github.com/plone/volto/issues/6542) ## 18.3.0 (2024-12-12) ### Feature - Add disable Teaser block Align handlers for teasers inside containers. @sneridagh [#6527](https://github.com/plone/volto/issues/6527) ### Bugfix - Fix inline comment in `SlotRenderer`. @sneridagh [#6409](https://github.com/plone/volto/issues/6409) - Enhanced linkintegrity popup and moved all logic in a separate component ContentsDeleteModal @giuliaghisini [#6516](https://github.com/plone/volto/issues/6516) - Disable initial scroll to top after SSR completion. @Faakhir30 [#6523](https://github.com/plone/volto/issues/6523) - Add missing styleWrapper style builder information in container/Grid. @sneridagh [#6527](https://github.com/plone/volto/issues/6527) ## 18.2.3 (2024-12-09) ### Bugfix - Fixed circular import error in dev with HMR in core Views and Widgets shadow customizations. @sneridagh [#6526](https://github.com/plone/volto/issues/6526) ## 18.2.2 (2024-12-09) ### Bugfix - Fixed circular import error in dev with HMR in core Blocks shadow customizations. @sneridagh [#6525](https://github.com/plone/volto/issues/6525) ## 18.2.1 (2024-12-09) ### Bugfix - Fixes ICS download in non-public event content. @sneridagh [#6515](https://github.com/plone/volto/issues/6515) - Fixed circular import error in dev with HMR in `App` component when imported in the main default config. @sneridagh [#6524](https://github.com/plone/volto/issues/6524) ### Internal - Fix extension in files containing JSX. @sneridagh [#6520](https://github.com/plone/volto/issues/6520) ## 18.2.0 (2024-12-08) ### Internal - Removed all imports from barrel files for components, actions, helpers, hooks and lodash. @pnicolli [#6509](https://github.com/plone/volto/issues/6509) ## 18.1.2 (2024-12-05) ### Bugfix - Remove `not ie 11` from browserslist configuration, because it is now included in `not dead`. @stevepiercy [#6501](https://github.com/plone/volto/issues/6501) - Fix warnings related to `snapshot.managedPaths` on startup. @davisagli [#6511](https://github.com/plone/volto/issues/6511) ### Internal - Add Accessibility acceptance tests for content types. @ana-oprea @ichim-david [#6339](https://github.com/plone/volto/issues/6339) - Fixed the `README.md` for Volto core when releasing to npm registry: copy it from the root of the monorepo on release. @sneridagh [#6510](https://github.com/plone/volto/issues/6510) ### Documentation - Add new Volto trainings to tutorials. @stevepiercy [#6499](https://github.com/plone/volto/issues/6499) - `html_use_opensearch` value must not have a trailing slash. Clean up comments. @stevepiercy [#6502](https://github.com/plone/volto/issues/6502) ## 18.1.1 (2024-11-21) ### Bugfix - Do not break toolbar if layout id is not registered in layoutViewsNamesMapping. @cekk [#6485](https://github.com/plone/volto/issues/6485) - Replace _all_ spaces with `-` in `BodyClass` classes, instead of with `-` or `` depending on the content type or section. @giuliaghisini [#6487](https://github.com/plone/volto/issues/6487) ### Internal - Update instructions to install `pipx` in `RELEASING.md`. @stevepiercy [#6496](https://github.com/plone/volto/issues/6496) ### Documentation - More privacy concerning youtube links and fixing link check warnings for youtube playlist links. @stevepiercy @ksuess [#4203](https://github.com/plone/volto/issues/4203) - Remove conflicting `searchtools.js` file from documentation to allow default Sphinx search in main Plone documentation. @stevepiercy [#6482](https://github.com/plone/volto/issues/6482) - Add support for sphinxcontrib-youtube. @stevepiercy [#6486](https://github.com/plone/volto/issues/6486) - Refactor documentation includes to align with main documentation pattern. @stevepiercy [#6495](https://github.com/plone/volto/issues/6495) ## 18.1.0 (2024-11-11) ### Feature - Update Dutch translations. @fredvd [#6476](https://github.com/plone/volto/issues/6476) ### Bugfix - URL Management control panel: Show errors from a failed CSV upload. @davisagli [#6473](https://github.com/plone/volto/issues/6473) - Added missing style Helmet serialization in the HTML component to make it work in SSR. @sneridagh Fix deprecation notice for the usage of apple-mobile-web-app-capable. [#6480](https://github.com/plone/volto/issues/6480) ### Internal - Added React Router 7 experimental PoC. @sneridagh [#6472](https://github.com/plone/volto/issues/6472) ### Documentation - Overhaul and update of the add-ons section in documentation. @sneridagh [#6397](https://github.com/plone/volto/issues/6397) ## 18.0.3 (2024-11-05) ### Bugfix - Fixed image generation because of a bug in the docker build with registry typings. @sneridagh [#6471](https://github.com/plone/volto/issues/6471) ## 18.0.2 (2024-11-05) ### Internal - Fix missing export src in @plone/components Also improve packaging in packages. @sneridagh [#6470](https://github.com/plone/volto/issues/6470) ## 18.0.1 (2024-11-05) ### Bugfix - Fix ERR_REQUIRE from ESM module requiring CJS module in `@plone/registry` fix tests. @sneridagh [#6458](https://github.com/plone/volto/issues/6458) ### Internal - Improve exports in @plone/registry, adapt the Jest test setup. @sneridagh [#6461](https://github.com/plone/volto/issues/6461) - Removed `parcel` completely from core. @sneridagh [#6469](https://github.com/plone/volto/issues/6469) ### Documentation - Fix display of nvm version when installing it for Contributing to Volto. @stevepiercy [#6460](https://github.com/plone/volto/issues/6460) ## 18.0.0 (2024-10-31) (Summary) ### Breaking - Dropped support for Node.js 18, since Volto only supports the last two LTS versions. @sneridagh Volto might continue to work on it, but it will be no longer tested in CI. [#6371](https://github.com/plone/volto/issues/6371) - Added `react/jsx-key` rule for ESlint to detect missing key property in iterators. @sneridagh [#6387](https://github.com/plone/volto/issues/6387) - Move `Tags` component to the slot `belowContent`. @wesleybl [#6269](https://github.com/plone/volto/issues/6269) - Add foundations for extensible validation in forms. @sneridagh - `packages/volto/src/helpers/FormValidation/FormValidation.jsx` has been heavily refactored. - If you shadowed this component in your project or add-on, you should review it and update it accordingly. [#6161](https://github.com/plone/volto/issues/6161) - Remove `react-share` library and `SocialSharing` component @sneridagh [#6162](https://github.com/plone/volto/issues/6162) - In the widget mapping, moved the `SchemaWidget` registration from the `id` object to the `widget` object, and added the `widget` key to the `schema` object in the `properties` object for `makeSchemaList`. @sneridagh [#6189](https://github.com/plone/volto/issues/6189) - Fixed image widget position and look and feel in sidebar. @ichim-david - Updated the markup of the widget in the sidebar to render the widget on a single column bellow the label. - AddLink Pop-up of the widget is now rendered inside `toolbar-inner` instead of the document body, this fixes the positioning of the toolbar when scrolling. [#6159](https://github.com/plone/volto/issues/6159) - Added `ImageWidget` component with upload, drop, external, and inline capabilities. @sneridagh @ichim-david @dobri1408 - The user experience of the image upload has changed. - The input field is now a row of buttons. - The input field's placeholder text was moved above the buttons. - Together these changes improve usability both on small screens and in small containers, such as when the widget is in grid block elements. - If you shadow the image block edit component, make sure it continues to work as you expect, or update it to use the new image upload widget component. [#5607](https://github.com/plone/volto/issues/5607) - Improve container detection, `config.settings.containerBlockTypes` is no longer needed @sneridagh [#6099](https://github.com/plone/volto/issues/6099) - Fix JavaScript events association on error pages. Also remove settings `config.settings.serverConfig.extractScripts.errorPages`. Now scripts are added to error pages, regardless of whether we are in production mode or not. @wesleybl [#6048](https://github.com/plone/volto/issues/6048) - Breaking from the original slots implementation: - Now `config.getSlots` in the configuration registry takes the argument `location` instead of `pathname`. - This allows to have more expressive conditions, and fulfill the use case of the `Add` form. @sneridagh [#6063](https://github.com/plone/volto/issues/6063) - Use `id` instead of `title` for the fieldset's generated value when rendering a `Field` component in a form. @sneridagh [#5921](https://github.com/plone/volto/issues/5921) - Moved `devDependencies` and `dependencies` to where they belong. @sneridagh [#5879](https://github.com/plone/volto/issues/5879) - Remove legacy `text`, `table` and `hero` blocks based in `draftJS` @sneridagh [#5846](https://github.com/plone/volto/issues/5846) - Upgrade Volto core to use React 18.2.0 @sneridagh [#3221](https://github.com/plone/volto/issues/3221) - Improved accessibility of logo component. @Molochem [#5776](https://github.com/plone/volto/issues/5776) - Remove the isDisabled from all fields in the left side form of the babel view, make them read only instead @sneridagh [#5762](https://github.com/plone/volto/issues/5762) - Experimental feature flag for new add block button enabled by default. @sneridagh [#4947](https://github.com/plone/volto/issues/4947) - Moved add-on registry to its own package. @sneridagh [#4949](https://github.com/plone/volto/issues/4949) - Sidebar formtabs item links are now real buttons with `ui button` class for proper keyboard and screen reader support @ichim-david [#5294](https://github.com/plone/volto/issues/5294) ### Feature - Update Romanian translation. @avoinea [#6454](https://github.com/plone/volto/issues/6454) - Update Brazilian Portuguese translation [@ericof] - Enhance the `buildStyleObjectFromData` helper. @sneridagh [#6445](https://github.com/plone/volto/issues/6445) - URL Management control panel: add a filter for redirects created after a given date. **Note:** This requires `Products.CMFPlone` 6.0.14 and `plone.restapi` 9.8.0 or later. @davisagli [#6414](https://github.com/plone/volto/issues/6414) - URL Management control panel: Move the form for adding a new redirect into a modal. @davisagli [#6421](https://github.com/plone/volto/issues/6421) - URL Management control panel: Add feature to bulk upload redirects in a CSV file. **Note:** This requires `plone.restapi` 9.8.0 or later. @davisagli [#6421](https://github.com/plone/volto/issues/6421) - Introducing "client transforms for Redux reducers". @sneridagh [#6422](https://github.com/plone/volto/issues/6422) - URL Management control panel: Add a way to edit existing aliases. @davisagli [#6425](https://github.com/plone/volto/issues/6425) - Added `config.settings.nonContentRoutesPublic` to avoid `isCmsUi` issues in these public routes. @giuliaghisini [#6173](https://github.com/plone/volto/issues/6173) - Add language independent field icon. @iRohitSingh [#6297](https://github.com/plone/volto/issues/6297) - Improve DiffField.jsx to render only the blocks on the page with better support for displaying HTML elements such as images. @dobri1408 [#6309](https://github.com/plone/volto/issues/6309) - Updated Italian Italian translations. @gianniftp [#6342](https://github.com/plone/volto/issues/6342) - Update Brazilian Portuguese translations. @ericof - Refactor AlbumView from class to functional component. @Tishasoumya-02 [#4077](https://github.com/plone/volto/issues/4077) - Add setting `unwantedControlPanelsFields` and use it in the function `filterControlPanelsSchema`. @wesleybl [#4819](https://github.com/plone/volto/issues/4819) - Refactor the `Register` component from class-based to functional. @Tishasoumya-02 [#4861](https://github.com/plone/volto/issues/4861) - Refactor Toolbar/More component from class to functional component. @Tishasoumya-02 [#4955](https://github.com/plone/volto/issues/4955) - Refactor Blocks/LeadImage/Edit component from class to functional component. @Tishasoumya-02 [#4959](https://github.com/plone/volto/issues/4959) - Refactor Blocks/Video/Edit component from class to functional component. @Tishasoumya-02 [#4960](https://github.com/plone/volto/issues/4960) - Refactor ControlPanel/Users/Aliases component , replacing class component lifecycle methods with functional hooks. @Tishasoumya-02 [#4985](https://github.com/plone/volto/issues/4985) - Refactor Controlpanel databaseInformation from class component to functional component. @Tishasoumya-02 [#4986](https://github.com/plone/volto/issues/4986) - Refactor ControlPanels/Groups RenderGroups from class components to functional component. @Tishasoumya-02 [#4993](https://github.com/plone/volto/issues/4993) - Refactor AddonsControlpanel from class to functional components. @Tishasoumya [#4995](https://github.com/plone/volto/issues/4995) - Refactor Preference/Change Password from class to functional component. @Tishasoumya-02 [#5044](https://github.com/plone/volto/issues/5044) - Refactor Preference/PersonalPreferences from class to functional component. @Tishasoumya-02 [#5045](https://github.com/plone/volto/issues/5045) - Refactor Preference/PersonalInformation from Class to Functional component. @Tishasoumya-02 [#5046](https://github.com/plone/volto/issues/5046) - Refactor Contents/ContentsUploadModal & Storybook-@Tishasoumya-02 [#5047](https://github.com/plone/volto/issues/5047) - Storybook test for ContentBreadcrumbs component. @Tishasoumya [#5048](https://github.com/plone/volto/issues/5048) - Storybook Actions component test. @Tishasoumya-02 [#5049](https://github.com/plone/volto/issues/5049) - Refactor Display from class to functional component. @Tishasoumya-02 [#5066](https://github.com/plone/volto/issues/5066) - Refactor `ReferenceWidget` from class-based to functional component. @Tishasoumya [#5093](https://github.com/plone/volto/issues/5093) - Refactor the table of contents block component from a class component to a functional component. @Prince0906 [#6167](https://github.com/plone/volto/issues/6167) - Improved URL regex to allow non-public or intranet URLs, such as `https://intranet/` or `file://server/share`. @mamico [#6186](https://github.com/plone/volto/issues/6186) - Refactor the `DatetimeWidget` component from a class component to a functional component. @Raman-Luhach [#6213](https://github.com/plone/volto/issues/6213) - The schema for the `ContentsPropertiesModal` can be enhanced using the `contentPropertiesSchemaEnhancer` setting. Also, the properties form is now prepopulated with values if all selected items share the same value. @davisagli [#6248](https://github.com/plone/volto/issues/6248) - Pass the `user`, `navRoot` and `contentType` objects to the `restricted` function of the block settings. @wesleybl [#6264](https://github.com/plone/volto/issues/6264) - (feat): Add loading visual and succes message in controlpanel when deleting users and groups @dobri1408 [#6127](https://github.com/plone/volto/issues/6127) - Add option for live teasers @steffenri @pbauer @nileshgulia1 @tlotze [#6023](https://github.com/plone/volto/issues/6023) - Improve shadowing by including the support for js->jsx extensions in old shadows. This allow support for upcoming renaming of files that should be jsx and are js. @sneridagh [#6113](https://github.com/plone/volto/issues/6113) - Added blocks layout navigator @robgietema @sneridagh [#5642](https://github.com/plone/volto/issues/5642) - Add support for reading the add-ons `tsconfig.json` paths and add them to the build resolve aliases @sneridagh [#6096](https://github.com/plone/volto/issues/6096) - Added object browser icon view @robgietema [#5279](https://github.com/plone/volto/issues/5279) - Refactor TextWidget. @Tishasoumya-02 [#6020](https://github.com/plone/volto/issues/6020) - Refactor IdWidget -@Tishasoumya-02 [#6027](https://github.com/plone/volto/issues/6027) - The `ContentTypeCondition` now supports the `Add` form, and detects when you create a content type that is set in the condition. @sneridagh Added a new `BodyClass` helper while adding a new content type of the form `is-adding-contenttype-mycontenttype`. @sneridagh [#6063](https://github.com/plone/volto/issues/6063) - Add support for configurable `public` directory defined per add-on. @sneridagh [#6072](https://github.com/plone/volto/issues/6072) - Removes navigation settings that are not used by Volto. @wesleybl [#5961](https://github.com/plone/volto/issues/5961) - Add Hindi translation in Volto. @iFlameing [#6015](https://github.com/plone/volto/issues/6015) - Add parameters to `ContentsUploadModal` to be reusable in different scenarios. @erral [#5881](https://github.com/plone/volto/issues/5881) - Print error message from request in toast, if `clipboardRequest` return an error. @cekk [#5932](https://github.com/plone/volto/issues/5932) - Add id attribute to discussions container and individual comments [@ericof] [#5904](https://github.com/plone/volto/issues/5904) - Improve the usage of `RAZZLE_JEST_CONFIG`. @sneridagh [#5901](https://github.com/plone/volto/issues/5901) - Match props passed to the BlockView if reused from the BlockEdit @sneridagh [#5876](https://github.com/plone/volto/issues/5876) - Added download link to filename in file widget @sabrina-bongiovanni [#5880](https://github.com/plone/volto/issues/5880) - Do not display options for Site Administrator to create, modify, or delete Manager users. @wesleybl [#5244](https://github.com/plone/volto/issues/5244) - Support for slots @sneridagh [#5775](https://github.com/plone/volto/issues/5775) - Add accordion to metadata form. @robgietema [#5760](https://github.com/plone/volto/issues/5760) - Added the `ignore` property to allow exceptions to rules that are applied to all routes. @dobri1408 [#5621](https://github.com/plone/volto/issues/5621) - Add global form state. @robgietema [#5721](https://github.com/plone/volto/issues/5721) - Allow editor to edit metadata during bulk upload. @iFlameing [#5549](https://github.com/plone/volto/issues/5549) - Added `aria-live="polite"` in `Contents.jsx` to improve accessibility for the Contents page. @Hrittik20 [#5617](https://github.com/plone/volto/issues/5617) - Support for passing whole data object of the initial blocks in local config. Refactor initial block type to its own helpers. @sneridagh [#5718](https://github.com/plone/volto/issues/5718) - Improve validation of IdWidget @tedw [#3716](https://github.com/plone/volto/issues/3716) - Add image preview in object browser widget. @robgietema [#5658](https://github.com/plone/volto/issues/5658) - Enhanced `ColorPickerWidget` with additional color definitions, saving it as an object instead of a string. @sneridagh [#5585](https://github.com/plone/volto/issues/5585) - Allow to opt out of the nested prefixed name build in the custom CSS properties style name generator if an object is found in the style wrapper object. @sneridagh [#5586](https://github.com/plone/volto/issues/5586) - Added support for custom CSS properties in the `StyleWrapper`. @sneridagh [#5581](https://github.com/plone/volto/issues/5581) - Added conditional variations support. @sneridagh @robgietema [#5424](https://github.com/plone/volto/issues/5424) - Added `navRoot` and `contentType` to `restricted` key in blocks configuration. @sneridagh [#5517](https://github.com/plone/volto/issues/5517) - Add support for `preview_image_link` behavior in Volto Image component @sneridagh [#5523](https://github.com/plone/volto/issues/5523) - New monorepo @sneridagh [#5409](https://github.com/plone/volto/issues/5409) - Use special breadcrumb in control panel @tiberiuichim [#5292](https://github.com/plone/volto/issues/5292) - Plone type definitions in its own package @sneridagh [#5397](https://github.com/plone/volto/issues/5397) - Use container from component registry in sitemap component and also refactor the class to functional component. @iRohitSingh [#5418](https://github.com/plone/volto/issues/5418) - Improvements and completeness of the ContentMetadataTags component @ericof @sneridagh [#5433](https://github.com/plone/volto/issues/5433) - List plone.app.linkintegrity breaches with links to the pages in the delete confirmation modal. @jaroel [#5234](https://github.com/plone/volto/issues/5234) ### Bugfix - Fix error "Exception: No query supplied" in the listing block, when there is no criteria selected. @tedw87 [#3839](https://github.com/plone/volto/issues/3839) - Fixed page changes not being announced to screen reader users. @JeffersonBledsoe [#5288](https://github.com/plone/volto/issues/5288) - Fix useSelector is returned a different result when called with the same parameters in IdWidget. @iFlameing [#6449](https://github.com/plone/volto/issues/6449) - Moved `applyBlockDefaults` one component up so the style is computed correctly. @sneridagh [#6451](https://github.com/plone/volto/issues/6451) - Fix site setup access check by using `@actions` endpoint to validate permissions. @Faakhir30 [#6355](https://github.com/plone/volto/issues/6355) - Fix redirect after login if the `Login` component is used on a route other than `/login` or `/logout`. @dobri1408 [#6419](https://github.com/plone/volto/issues/6419) - URL Management control panel: Improve layout for long paths. @davisagli [#6421](https://github.com/plone/volto/issues/6421) - URL Management control panel: add missing translations. @davisagli [#6436](https://github.com/plone/volto/issues/6436) - Revert "Fix block chooser search is not focusable when clicked on add button" #5867 @sneridagh It was causing a regression described in #6389 [#6390](https://github.com/plone/volto/issues/6390) - Added missing arg for `buildStyleClassNamesExtenders` @sneridagh [#6381](https://github.com/plone/volto/issues/6381) - Increase specificity of table header style selector to properly override colors for better contrast @jackahl [#2487](https://github.com/plone/volto/issues/2487) - Change Form input:focus text color to the `textColor` value for a11y. Add Cypress test for contact form inputs. @ThomasKindermann @tedw87 [#2570](https://github.com/plone/volto/issues/2570) - Add missing `for` attribute to checkbox label to improve accessibility. @gomez [#6249](https://github.com/plone/volto/issues/6249) - Fixed build style classnames in edit mode. Also use buildStyleClassNamesExtenders. @giuliaghisini [#6259](https://github.com/plone/volto/issues/6259) - Fetch `user` before pass it to the `restricted` function of the block settings. @wesleybl [#6293](https://github.com/plone/volto/issues/6293) - Join validation errors in one single toast and update errors from response. @cekk - Toast content now has a <div> wrapper instead of a <p>. @cekk [#6295](https://github.com/plone/volto/issues/6295) - Fixed findBlocks when no blocks are passed. @giuliaghisini [#6299](https://github.com/plone/volto/issues/6299) - Fixed toolbar buttons not having a focus outline. @JeffersonBledsoe [#6313](https://github.com/plone/volto/issues/6313) - fix: SidebarPopup close on ESC keypress @nileshgulia1 [#6315](https://github.com/plone/volto/issues/6315) - Changed sidebar accordion text colour from @teal to @textColor. @JeffersonBledsoe [#6330](https://github.com/plone/volto/issues/6330) - Labels accessibility for ArrayWidget, SelectWidget, TokenWidget. @folix-01 [#6332](https://github.com/plone/volto/issues/6332) - Use lighter blue as link color in inverted tables to improve contrast for a11y @jackahl [#6334](https://github.com/plone/volto/issues/6334) - Fix search block showing no option select in sort on property @iRohitSingh [#5055](https://github.com/plone/volto/issues/5055) - Displays validation error messages on control panel forms. @wesleybl [#5274](https://github.com/plone/volto/issues/5274) - Fix `initialValue` block setting. @wesleybl [#5971](https://github.com/plone/volto/issues/5971) - When user changes location, set the `userSession.token` value based on cookie. This fixes the login status not being properly determined by the application. @tiberiu-ichim [#6071](https://github.com/plone/volto/issues/6071) - Fix `Teaser` block image override option to render external images and internal images pointing to image scales. @Tishasoumya-02 [#6147](https://github.com/plone/volto/issues/6147) - Add Cypress test for search block sort on property. @iRohitSingh [#6226](https://github.com/plone/volto/issues/6226) - Remove unused i18n message for SortOn component. @davisagli [#6230](https://github.com/plone/volto/issues/6230) - Return a 302 response for server-side rendering of the Link view for unauthenticated users. @davisagli [#6235](https://github.com/plone/volto/issues/6235) - Fix loading of .cjs in webpack. @davisagli [#6237](https://github.com/plone/volto/issues/6237) - fixed change of form.ui.hovered when editing blocks, because if you have a FormBlock component inside another one, onMouseOver fires for all stacked blocks and you cannot use the nested form. @giuliaghisini [#6240](https://github.com/plone/volto/issues/6240) - Changed imports from relative to absolute to avoid type errors in add-on tests. @wesleybl [#6244](https://github.com/plone/volto/issues/6244) - In the URL Management control panel, allow external URLs as targets. @davisagli [#6247](https://github.com/plone/volto/issues/6247) - Disable save button when loading POST query @sabrina-bongiovanni [#6252](https://github.com/plone/volto/issues/6252) - Fix `TypeError: values[0] is undefined` in Contents properties modal. @davisagli [#6258](https://github.com/plone/volto/issues/6258) - Fix error in `SortOn` component when no sort is selected. @davisagli [#6273](https://github.com/plone/volto/issues/6273) - Place actions storybook in correct path. @Tishasoumya-02 [#6275](https://github.com/plone/volto/issues/6275) - Remove `Generate tabs for items other than folders` field from navigation control panel. @wesleybl [#6278](https://github.com/plone/volto/issues/6278) - Fix error rendering empty grid blocks. @MAX-786 [#6279](https://github.com/plone/volto/issues/6279) - Fixed instant error on click on an item of the "Order" tab @sneridagh [#6284](https://github.com/plone/volto/issues/6284) - Fixed UTC problems in `RecurrenceWidget`. @giuliaghisini [#5002](https://github.com/plone/volto/issues/5002) - Do not send sorting information in the search block if no sort_on setting is configured @erral [#5338](https://github.com/plone/volto/issues/5338) - Fixed pagination in search results by passing `pageSize` explicitly to all search API calls. @EshaanAgg [#5464](https://github.com/plone/volto/issues/5464) - Fix the toolbar handler color for the homepage to match its "published" state. @sabrina-bongiovanni [#6126](https://github.com/plone/volto/issues/6126) - Allow `ImageWidget` value to be an object and use the `@id` to get the value if present. This is useful for fields that were using the `object_browser` widget previously to set values. @ichim-david [#6156](https://github.com/plone/volto/issues/6156) - Persist data for the `backend-docker-start` Docker container in a Docker volume named `volto-backend-data`. This way the data is persisted between runs of the container. You can also delete the `data` volume to start fresh. @ichim-david [#6157](https://github.com/plone/volto/issues/6157) - Improve CSS for the `SchemaWidget` widget. @robgietema @sneridagh [#6189](https://github.com/plone/volto/issues/6189) - Revisit login/logout process, better catching of edge cases @sneridagh [#6155](https://github.com/plone/volto/issues/6155) - Restored browse link in `Slate` `AddLink` Pop-up. @ichim-david Fixed recursive error when uploading an image using the `Image` widget. @sneridagh Fixed image display when using an external URL. @sneridagh Fixed the position of the `Image` widget toolbar when scrolling by changing the position of the toolbar to be within the widget area instead of the body. @ichim-david Improved display of `AddLink` Pop-up when using it inside the `Image` widget where we don't have a link picker. @ichim-david [#6159](https://github.com/plone/volto/issues/6159) - Fix aria-label of items that are `folderish` in ObjectBrowserNav component when performing item search. Previously it said `Select item.title` now `Browse item.title`. This brings it in line with the aria-label when not performing an item search. @sneridagh [#6150](https://github.com/plone/volto/issues/6150) - Cleanup Image widget and pass down onSelectItem prop if any @sneridagh [#6132](https://github.com/plone/volto/issues/6132) - Whitelist some dynamic imports to suppress vite warnings in storybook @tomschall [#6133](https://github.com/plone/volto/issues/6133) - fix reset teaser source button giving undefined error when no target is selected @nileshgulia1 [#6121](https://github.com/plone/volto/issues/6121) - Added three missing German translations. [@jensens] [#6124](https://github.com/plone/volto/issues/6124) - Ensure that sidebar field will not steal focus when metadata is edited @dobri1408 [#5983](https://github.com/plone/volto/issues/5983) - Fixed 'diff' path for nonContentRoutes. @giuliaghisini [#6102](https://github.com/plone/volto/issues/6102) - Prevent duplicated UUIDs in inner blocks when copying container blocks @sneridagh [#6112](https://github.com/plone/volto/issues/6112) - Support nested directories in public folder add-on sync folders both in dev and build mode @sneridagh [#6098](https://github.com/plone/volto/issues/6098) - export getFieldURL from Url.js in helpers @dobri1408 [#6100](https://github.com/plone/volto/issues/6100) - Fix internalUrl Widget to Reflect Prop Changes via onChangeBlock @dorbi1408 @ichim-david [#6036](https://github.com/plone/volto/issues/6036) - Add default 'l' and 'center' values to size and align fields of `Image` block. This fixes data not having any value adding proper options to the `Image` block. @ichim-david [#6046](https://github.com/plone/volto/issues/6046) - Fix public folder in dev mode, now it starts by default with the default Volto core defined public files @sneridagh [#6081](https://github.com/plone/volto/issues/6081) - Fix link in pop-up in `RelationsMatrix.jsx`. @stevepiercy [#6085](https://github.com/plone/volto/issues/6085) - Fix Uncaught RangeError: date value is not finite in DateTimeFormat.format. @mauritsvanrees [#6087](https://github.com/plone/volto/issues/6087) - relations control panel. Restrict eglible relation targets according relation constraints of fields vocabulary. @ksuess [#6091](https://github.com/plone/volto/issues/6091) - Better `Icon` component JSDoc typings @sneridagh [#6095](https://github.com/plone/volto/issues/6095) - Fix block chooser search is not focusable when clicked on add button @iRohitSingh [#5866](https://github.com/plone/volto/issues/5866) - Fixed skiplink links not tracking focus correctly @JeffersonBledsoe [#5959](https://github.com/plone/volto/issues/5959) - Remove left and right padding from _Event > Edit recurrence > Repeat on_ buttons when repeating for weekly or yearly events for big fonts, preventing overflow. @sabrina-bongiovanni [#6070](https://github.com/plone/volto/issues/6070) - Return a redirect response from Volto server-side rendering if the API request was redirected. @JeffersonBledsoe @mamico [#4834](https://github.com/plone/volto/issues/4834) - Fixed separator edit class spilling outside of the block toolbar @JeffersonBledsoe [#6010](https://github.com/plone/volto/issues/6010) - Fix duplication of execution of the build dependencies script on start @sneridagh [#6022](https://github.com/plone/volto/issues/6022) - In the EditBlockWrapper, pass the `showRestricted` prop to the BlockChooserButton. @JeffersonBledsoe [#6026](https://github.com/plone/volto/issues/6026) - Replace relative Import Path with Alias Import in 'Form.jsx' @MAX-786 [#6040](https://github.com/plone/volto/issues/6040) - Allow X-Robots-Tag header in images/files middleware @sneridagh [#6043](https://github.com/plone/volto/issues/6043) - Replaced the spinner with a progress bar that shows the number of files being uploaded (Uploading x files out of y), and positioned the progress bar properly, while uploading a large number of files. @victorchrollo14 [#5620](https://github.com/plone/volto/issues/5620) - Disable `jsx-a11y/label-has-associated-control` so that we can use `eslint-plugin-jsx-a11y` version 6.8.0 if it's pulled by other dependencies. @ichim-david [#5785](https://github.com/plone/volto/issues/5785) - Fix some type definitions in JSDocs @sneridagh [#6014](https://github.com/plone/volto/issues/6014) - Use `pnpm` 9.1.1 @sneridagh Remove `postinstall` script for building dependencies @sneridagh [#6017](https://github.com/plone/volto/issues/6017) - Fix image disappears after pressing the Enter key on title field in image content-type. @iFlameing [#5973](https://github.com/plone/volto/issues/5973) - Defines the last 4 parameters of the `asyncConnect` function with optional. @wesleybl [#5985](https://github.com/plone/volto/issues/5985) - Fix server side sidebar rendering @sneridagh [#5993](https://github.com/plone/volto/issues/5993) - Add possibility to pass down `locale`, `messages` and `defaultLocale` properties inside the `customStore` object to `IntlProvider`. With this change we can control react-intl language provider from inside storybook and switch for example from english to german with storybook args. [#5976](https://github.com/plone/volto/issues/5976) - Fix no router link in logo @sneridagh [#5981](https://github.com/plone/volto/issues/5981) - Fi