diff --git a/docs/source/configuration/how-to.md b/docs/source/configuration/how-to.md index 5d4eafd897..a1023c1837 100644 --- a/docs/source/configuration/how-to.md +++ b/docs/source/configuration/how-to.md @@ -20,7 +20,7 @@ then access any of its internal configuration to retrieve the configuration you like: ```js -const absoluteUrl = `${config.settings.apiPath}/${content.url}` +const absoluteUrl = `${config.settings.apiPath}/${content.url}`; ``` Both the main project and individual add-ons can extend Volto's configuration registry. @@ -150,3 +150,31 @@ export default function applyConfig(config) { return config; } +``` + +## `nonContentRoutes` and `nonContentRoutesPublic` + +`nonContentRoutes` is a list of routes reserved in Volto for its functionality as a content management system. +These functions include user authentication and registration, changing settings through control panels, generating a site map, and other functions. +Examples of these routes include `/login`, `/register`, and `/\/controlpanel\/.*$/`. +Editors can't use them for content. +The HTML attribute class value `cms-ui` is applied to members of `nonContentRoutes`. +You can configure `nonContentRoutes` with either a regular expression or a string representing the end of the URI. + +`nonContentRoutesPublic` is a subset of `nonContentRoutes`. +These routes are used for public sections of a Volto site that do not require authentication. +This subset includes `/login`, `/search`, and `/sitemap`. + +The following example shows how to configure settings for `nonContentRoutes` and `nonContentRoutesPublic`. + +```js +export default function applyConfig(config) { + config.settings = { + ...config.settings, + nonContentRoutes:[....], + nonContentRoutesPublic: [....] + }; + + return config; +} +``` diff --git a/docs/source/development/how-to-restrict-blocks.md b/docs/source/development/how-to-restrict-blocks.md index 15fee224ed..ed274ee37b 100644 --- a/docs/source/development/how-to-restrict-blocks.md +++ b/docs/source/development/how-to-restrict-blocks.md @@ -22,12 +22,16 @@ The function has this signature: block: BlockConfigBase; navRoot: Content; contentType: string; + user: Object }) => boolean; } ``` -Where `properties` is the current object data and `block` is the block being evaluated in `BlockChooser`. -`navRoot` is the nearest navigation root object and `contentType` is the current content type. +`properties` is the current object data. +`block` is the block being evaluated in `BlockChooser`. +`navRoot` is the nearest navigation root object. +`contentType` is the current content type. +`user` is an object that represents the currently authenticated user. In the following configuration example, you can restrict a block so that it cannot be added unless the content type is `News Item` or the content item is in a specific path in the content tree (`/folder`): diff --git a/docs/source/release-notes/index.md b/docs/source/release-notes/index.md index 91db671d96..8a11d4dcff 100644 --- a/docs/source/release-notes/index.md +++ b/docs/source/release-notes/index.md @@ -17,6 +17,78 @@ myst: +## 18.0.0-alpha.43 (2024-09-13) + +### Breaking + +- Move `Tags` component to the slot `belowContent`. @wesleybl [#6269](https://github.com/plone/volto/issues/6269) + +### Feature + +- 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) + +### Bugfix + +- 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) + +### Internal + +- Refactored the `SelectWidget` component to a functional component. @lorstenoplo [#5570](https://github.com/plone/volto/issues/5570) +- Allow setting the language for `make backend-docker-start`. Default is `en`. Added usage documentation in Contributing > Develop Volto core, and reorganized it. Cleaned up Configuration > Multilingual. @stevepiercy [#6231](https://github.com/plone/volto/issues/6231) +- Revert rename of `.gitkeep`. @stevepiercy [#6232](https://github.com/plone/volto/issues/6232) +- Upgrade Cypress to 13.13.2. @wesleybl [#6241](https://github.com/plone/volto/issues/6241) +- Complete upgrade Cypress to 13.13.2. Bump actions/upload-artifact@v1 to v4. @stevepiercy [#6242](https://github.com/plone/volto/issues/6242) +- Add `make i18n` command. @Faakhir30 [#6274](https://github.com/plone/volto/issues/6274) +- Update to Plone 6.0.13 @sneridagh [#6285](https://github.com/plone/volto/issues/6285) + +### Documentation + +- Fix redirect of link in documentation to testing Redux store blog post. @stevepiercy [#6239](https://github.com/plone/volto/issues/6239) +- Fix redirect to Docker documentation. @stevepiercy [#6262](https://github.com/plone/volto/issues/6262) +- Added upgrade guide notice about CookiePlone as the recommended way for generating projects and add-on boilerplate @sneridagh [#6286](https://github.com/plone/volto/issues/6286) + ## 18.0.0-alpha.42 (2024-07-30) ### Breaking diff --git a/docs/source/upgrade-guide/index.md b/docs/source/upgrade-guide/index.md index b199673aea..e2bac7815c 100644 --- a/docs/source/upgrade-guide/index.md +++ b/docs/source/upgrade-guide/index.md @@ -40,7 +40,7 @@ For this purpose, we have developed a {ref}`new utility =8.42.0) installed in the backend to work properly. ``` @@ -727,11 +751,11 @@ From Volto 16.0.0-alpha.15 onwards, `volto-slate` is integrated into Volto core The previous text block `text` based on `draftJS` is now deprecated and is restricted (hidden) in Volto bootstrap. This is a major change and should be planned in advance before you install 16.0.0-alpha.15 or later. -```{versionadded} 16.0.0-alpha.15 +```{versionadded} Volto 16.0.0-alpha.15 `volto-slate` added to Volto core as the default text block. ``` -```{deprecated} 16.0.0-alpha.15 +```{deprecated} Volto 16.0.0-alpha.15 `text` text block based on `draftJS` is now deprecated and will be removed from core in Volto 18. ``` @@ -825,7 +849,7 @@ Version 16 is recommended. ### Upgraded to Razzle 4 -```{versionadded} 16.0.0-alpha.38 +```{versionadded} Volto 16.0.0-alpha.38 Volto has upgraded from Razzle 3 to Razzle 4. You should perform these steps in case you are upgrading to this version or above. ``` @@ -1128,7 +1152,7 @@ It maintains signature compatibility with `registry.resolve`, but introduces new See documentation for more information. -````{versionchanged} 16.0.0-alpha.23 +````{versionchanged} Volto 16.0.0-alpha.23 The `component` argument changed in 16.0.0-alpha.23. The `component` key has been flattened for simplification and now it's mapped directly to the `component` argument of `registerComponent`: @@ -1207,7 +1231,7 @@ During the alpha stage, we received feedback and determined that it's too diffic We decided it is best to deal with it as any other schema field and enhance it via schema enhancers. This improves the developer experience, especially when dealing with variations that can provide their own styles and other schema fields. -```{deprecated} 16.0.0-alpha.46 +```{deprecated} Volto 16.0.0-alpha.46 The options `enableStyling` and `stylesSchema` no longer work. You need to provide them using your own block schema. If you are extending an existing one, you should add it as a normal `schemaEnhancer` modification. @@ -1224,7 +1248,7 @@ Since then, the add-on story has improved. It now makes sense to extract this feature into its own add-on. Integrate Sentry in your app with [`@plone-collective/volto-sentry`](https://www.npmjs.com/package/@plone-collective/volto-sentry). -```{versionchanged} 16.0.0.alpha.45 +```{versionchanged} Volto 16.0.0.alpha.45 ``` ### Upgrade `husky` to latest version @@ -1245,7 +1269,7 @@ You can copy over the Volto ones (take a look in Volto's `.husky` folder). ### Better defaults handling -````{versionadded} 16.0.0-alpha.51 +````{versionadded} Volto 16.0.0-alpha.51 Prior to this version, we handled default values in schemas for blocks settings in a faulty and buggy manner. The state inferred was not deterministic and depended on the fields with defaults present. @@ -1361,7 +1385,7 @@ A new `@root` alias has been set up to replace the `~` alias. Support for the `~` alias is still in place, but we now mark it as deprecated. The use of `~` will be removed in Volto 16. -```{deprecated} 15.0 +```{deprecated} Volto 15.0 ``` ## Upgrading to Volto 14.x.x diff --git a/packages/client/CHANGELOG.md b/packages/client/CHANGELOG.md index b609e68f8e..37a57ad33b 100644 --- a/packages/client/CHANGELOG.md +++ b/packages/client/CHANGELOG.md @@ -8,6 +8,12 @@ +## 1.0.0-alpha.17 (2024-09-13) + +### Documentation + +- Add documentation about optional `token` parameter for `ploneClient` initialization. @MAX-786 [#6076](https://github.com/plone/volto/pull/6076) + ## 1.0.0-alpha.16 (2024-06-06) ### Bugfix diff --git a/packages/client/news/6076.documentation b/packages/client/news/6076.documentation deleted file mode 100644 index 138045af4e..0000000000 --- a/packages/client/news/6076.documentation +++ /dev/null @@ -1 +0,0 @@ -Add documentation about optional `token` parameter for `ploneClient` initialization. @MAX-786 \ No newline at end of file diff --git a/packages/client/package.json b/packages/client/package.json index e3563d194d..2b9104397b 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -8,7 +8,7 @@ } ], "license": "MIT", - "version": "1.0.0-alpha.16", + "version": "1.0.0-alpha.17", "repository": { "type": "git", "url": "git@github.com:plone/volto.git" diff --git a/packages/volto-slate/CHANGELOG.md b/packages/volto-slate/CHANGELOG.md index 554619a18d..c7e8ee3c2f 100644 --- a/packages/volto-slate/CHANGELOG.md +++ b/packages/volto-slate/CHANGELOG.md @@ -8,6 +8,12 @@ +## 18.0.0-alpha.18 (2024-09-13) + +### Feature + +- Pass `user`, `navRoot` and `contentType` objects to the `restricted` function of the block settings. @wesleybl [#6264](https://github.com/plone/volto/issues/6264) + ## 18.0.0-alpha.17 (2024-07-05) ### Feature diff --git a/packages/volto-slate/locales/pt_BR/LC_MESSAGES/volto.po b/packages/volto-slate/locales/pt_BR/LC_MESSAGES/volto.po new file mode 100644 index 0000000000..867d80478b --- /dev/null +++ b/packages/volto-slate/locales/pt_BR/LC_MESSAGES/volto.po @@ -0,0 +1,205 @@ +msgid "" +msgstr "" +"Project-Id-Version: Plone\n" +"POT-Creation-Date: 2022-07-20T12:45:09.681Z\n" +"PO-Revision-Date: \n" +"Last-Translator: Érico Andrei \n" +"Language-Team: Plone i18n \n" +"Language: pt_BR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"Language-Code: en\n" +"Language-Name: English\n" +"Preferred-Encodings: utf-8\n" +"Domain: volto\n" +"X-Generator: Poedit 3.5\n" + +# defaultMessage: Add link +#: editor/plugins/Link/index +msgid "Add link" +msgstr "Adicionar link" + +# defaultMessage: An error has occurred while editing "{name}" field. We have been notified and we are looking into it. Please save your work and retry. If the issue persists please contact the site administrator. +#: widgets/HtmlSlateWidget +#, fuzzy +msgid "An error has occurred while editing \"{name}\" field. We have been notified and we are looking into it. Please save your work and retry. If the issue persists please contact the site administrator." +msgstr "Ocorreu um erro ao editar o campo \"{name}\". Fomos notificados e estamos analisando o problema. Salve seu trabalho e tente novamente. Se o problema persistir, entre em contato com o administrador do site." + +# defaultMessage: An error has occurred while rendering "{name}" field. We have been notified and we are looking into it. If the issue persists please contact the site administrator. +#: widgets/RichTextWidgetView +#, fuzzy +msgid "An error has occurred while rendering \"{name}\" field. We have been notified and we are looking into it. If the issue persists please contact the site administrator." +msgstr "Ocorreu um erro ao renderizar o campo \"{name}\". Fomos notificados e estamos analisando o problema. Se o problema persistir, entre em contato com o administrador do site." + +# defaultMessage: Bottom +#: blocks/Table/TableBlockEdit +msgid "Bottom" +msgstr "Base" + +# defaultMessage: Center +#: blocks/Table/TableBlockEdit +#, fuzzy +msgid "Center" +msgstr "Centro" + +# defaultMessage: Delete col +#: blocks/Table/TableBlockEdit editor/plugins/Table/index +#, fuzzy +msgid "Delete col" +msgstr "Excluir coluna" + +# defaultMessage: Delete row +#: blocks/Table/TableBlockEdit editor/plugins/Table/index +#, fuzzy +msgid "Delete row" +msgstr "Excluir linha" + +# defaultMessage: Delete table +#: editor/plugins/Table/index +#, fuzzy +msgid "Delete table" +msgstr "Excluir tabela" + +# defaultMessage: Divide each row into separate cells +#: blocks/Table/TableBlockEdit +#, fuzzy +msgid "Divide each row into separate cells" +msgstr "Dividir cada linha em células separadas" + +# defaultMessage: Edit element +#: elementEditor/messages +#, fuzzy +msgid "Edit element" +msgstr "Editar elemento" + +# defaultMessage: Edit link +#: editor/plugins/AdvancedLink/index editor/plugins/Link/index +#, fuzzy +msgid "Edit link" +msgstr "Editar link" + +# defaultMessage: Fixed width table cells +#: blocks/Table/TableBlockEdit +#, fuzzy +msgid "Fixed width table cells" +msgstr "Células de tabela de largura fixa" + +# defaultMessage: Hide headers +#: blocks/Table/TableBlockEdit +#, fuzzy +msgid "Hide headers" +msgstr "Ocultar cabeçalhos" + +# defaultMessage: Insert col after +#: blocks/Table/TableBlockEdit editor/plugins/Table/index +#, fuzzy +msgid "Insert col after" +msgstr "Inserir coluna após" + +# defaultMessage: Insert col before +#: blocks/Table/TableBlockEdit editor/plugins/Table/index +#, fuzzy +msgid "Insert col before" +msgstr "Inserir coluna antes" + +# defaultMessage: Insert row after +#: blocks/Table/TableBlockEdit editor/plugins/Table/index +#, fuzzy +msgid "Insert row after" +msgstr "Inserir linha após" + +# defaultMessage: Insert row before +#: blocks/Table/TableBlockEdit editor/plugins/Table/index +#, fuzzy +msgid "Insert row before" +msgstr "Inserir linha antes" + +# defaultMessage: Left +#: blocks/Table/TableBlockEdit +#, fuzzy +msgid "Left" +msgstr "Esquerda" + +# defaultMessage: Make the table compact +#: blocks/Table/TableBlockEdit +#, fuzzy +msgid "Make the table compact" +msgstr "Compactar a tabela" + +# defaultMessage: Make the table sortable +#: blocks/Table/TableBlockEdit +msgid "Make the table sortable" +msgstr "Tornar a tabela ordenável" + +# defaultMessage: Middle +#: blocks/Table/TableBlockEdit +msgid "Middle" +msgstr "Meio" + +# defaultMessage: No matching blocks +#: blocks/Text/SlashMenu +#, fuzzy +msgid "No matching blocks" +msgstr "Não há blocos correspondentes" + +# defaultMessage: Reduce complexity +#: blocks/Table/TableBlockEdit +#, fuzzy +msgid "Reduce complexity" +msgstr "Reduzir complexidade" + +# defaultMessage: Remove element +#: elementEditor/messages +#, fuzzy +msgid "Remove element" +msgstr "Remover elemento" + +# defaultMessage: Remove link +#: editor/plugins/AdvancedLink/index +#, fuzzy +msgid "Remove link" +msgstr "Remover link" + +# defaultMessage: Right +#: blocks/Table/TableBlockEdit +#, fuzzy +msgid "Right" +msgstr "Direita" + +# defaultMessage: Stripe alternate rows with color +#: blocks/Table/TableBlockEdit +#, fuzzy +msgid "Stripe alternate rows with color" +msgstr "Alternar cores das linhas" + +# defaultMessage: Table +#: blocks/Table/TableBlockEdit +#, fuzzy +msgid "Table" +msgstr "Tabela" + +# defaultMessage: Table color inverted +#: blocks/Table/TableBlockEdit +#, fuzzy +msgid "Table color inverted" +msgstr "Cor da tabela invertida" + +# defaultMessage: Top +#: blocks/Table/TableBlockEdit +#, fuzzy +msgid "Top" +msgstr "Topo" + +# defaultMessage: Type text… +#: blocks/Text/DefaultTextBlockEditor blocks/Text/DetachedTextBlockEditor +#, fuzzy +msgid "Type text…" +msgstr "Digite texto…" + +# defaultMessage: Visible only in view mode +#: blocks/Table/TableBlockEdit +#, fuzzy +msgid "Visible only in view mode" +msgstr "Visível apenas no modo de visualização" diff --git a/packages/volto-slate/news/+update_pt_br.feature b/packages/volto-slate/news/+update_pt_br.feature new file mode 100644 index 0000000000..35ce73755f --- /dev/null +++ b/packages/volto-slate/news/+update_pt_br.feature @@ -0,0 +1 @@ +Update Brazilian Portuguese translations. @ericof diff --git a/packages/volto-slate/package.json b/packages/volto-slate/package.json index c64a51372f..5e5b6118bd 100644 --- a/packages/volto-slate/package.json +++ b/packages/volto-slate/package.json @@ -1,6 +1,6 @@ { "name": "@plone/volto-slate", - "version": "18.0.0-alpha.17", + "version": "18.0.0-alpha.18", "description": "Slate.js integration with Volto", "main": "src/index.js", "author": "European Environment Agency: IDM2 A-Team", diff --git a/packages/volto-slate/src/blocks/Text/SlashMenu.jsx b/packages/volto-slate/src/blocks/Text/SlashMenu.jsx index 6fd5ed2f30..2a26c39cfe 100644 --- a/packages/volto-slate/src/blocks/Text/SlashMenu.jsx +++ b/packages/volto-slate/src/blocks/Text/SlashMenu.jsx @@ -4,6 +4,7 @@ import { filter, isEmpty } from 'lodash'; import { Menu } from 'semantic-ui-react'; import { useIntl, FormattedMessage } from 'react-intl'; import { Icon } from '@plone/volto/components'; +import { useSelector } from 'react-redux'; const emptySlateBlock = () => ({ value: [ @@ -105,9 +106,13 @@ const PersistentSlashMenu = ({ editor }) => { selected, allowedBlocks, detached, + navRoot, + contentType, } = props; const disableNewBlocks = data?.disableNewBlocks || detached; + const user = useSelector((state) => state.users?.user); + const [slashMenuSelected, setSlashMenuSelected] = React.useState(0); const hasAllowedBlocks = !isEmpty(allowedBlocks); @@ -122,7 +127,13 @@ const PersistentSlashMenu = ({ editor }) => { hasAllowedBlocks ? allowedBlocks.includes(item.id) : typeof item.restricted === 'function' - ? !item.restricted({ properties, block: item }) + ? !item.restricted({ + properties, + block: item, + navRoot, + contentType, + user, + }) : !item.restricted, ) .filter((block) => Boolean(block.title && block.id)) @@ -152,6 +163,9 @@ const PersistentSlashMenu = ({ editor }) => { properties, slashCommand, hasAllowedBlocks, + navRoot, + contentType, + user, ], ); diff --git a/packages/volto/CHANGELOG.md b/packages/volto/CHANGELOG.md index 91db671d96..8a11d4dcff 100644 --- a/packages/volto/CHANGELOG.md +++ b/packages/volto/CHANGELOG.md @@ -17,6 +17,78 @@ myst: +## 18.0.0-alpha.43 (2024-09-13) + +### Breaking + +- Move `Tags` component to the slot `belowContent`. @wesleybl [#6269](https://github.com/plone/volto/issues/6269) + +### Feature + +- 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) + +### Bugfix + +- 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) + +### Internal + +- Refactored the `SelectWidget` component to a functional component. @lorstenoplo [#5570](https://github.com/plone/volto/issues/5570) +- Allow setting the language for `make backend-docker-start`. Default is `en`. Added usage documentation in Contributing > Develop Volto core, and reorganized it. Cleaned up Configuration > Multilingual. @stevepiercy [#6231](https://github.com/plone/volto/issues/6231) +- Revert rename of `.gitkeep`. @stevepiercy [#6232](https://github.com/plone/volto/issues/6232) +- Upgrade Cypress to 13.13.2. @wesleybl [#6241](https://github.com/plone/volto/issues/6241) +- Complete upgrade Cypress to 13.13.2. Bump actions/upload-artifact@v1 to v4. @stevepiercy [#6242](https://github.com/plone/volto/issues/6242) +- Add `make i18n` command. @Faakhir30 [#6274](https://github.com/plone/volto/issues/6274) +- Update to Plone 6.0.13 @sneridagh [#6285](https://github.com/plone/volto/issues/6285) + +### Documentation + +- Fix redirect of link in documentation to testing Redux store blog post. @stevepiercy [#6239](https://github.com/plone/volto/issues/6239) +- Fix redirect to Docker documentation. @stevepiercy [#6262](https://github.com/plone/volto/issues/6262) +- Added upgrade guide notice about CookiePlone as the recommended way for generating projects and add-on boilerplate @sneridagh [#6286](https://github.com/plone/volto/issues/6286) + ## 18.0.0-alpha.42 (2024-07-30) ### Breaking diff --git a/packages/volto/cypress/tests/core/basic/a11y.js b/packages/volto/cypress/tests/core/basic/a11y.js index 9c21668d8f..593c2b4889 100644 --- a/packages/volto/cypress/tests/core/basic/a11y.js +++ b/packages/volto/cypress/tests/core/basic/a11y.js @@ -10,6 +10,10 @@ describe('Accessibility Tests', () => { it('Contact form has not a11y violations', () => { cy.navigate('/contact-form'); + cy.get('#field-name').click().type('input'); + cy.get('#field-from').click().type('something@domain.com'); + cy.get('#field-subject').click().type('input'); + cy.get('#field-message').click().type('input'); cy.checkA11y(); }); diff --git a/packages/volto/cypress/tests/core/blocks/blocks-image.js b/packages/volto/cypress/tests/core/blocks/blocks-image.js index c0c79d2eae..7c9c84b39b 100644 --- a/packages/volto/cypress/tests/core/blocks/blocks-image.js +++ b/packages/volto/cypress/tests/core/blocks/blocks-image.js @@ -35,7 +35,8 @@ describe('Blocks Tests', () => { .last() .focus() .should('have.css', 'outline', 'rgb(16, 16, 16) auto 1px'); - cy.get('.block.image .ui.input input[type="text"]').type( + cy.findByLabelText('Enter a URL to an image').click(); + cy.get('.ui.input.editor-link.input-anchorlink-theme input').type( `https://github.com/plone/volto/raw/main/logos/volto-colorful.png{enter}`, ); cy.get('#toolbar-save').click(); @@ -162,7 +163,7 @@ describe('Blocks Tests', () => { }); }); - it.only('Create an image block and initially alt attr is empty', () => { + it('Create an image block and initially alt attr is empty', () => { // when I add an image block via upload cy.get('.content-area .slate-editor [contenteditable=true]', { timeout: 10000, diff --git a/packages/volto/locales/pt_BR/LC_MESSAGES/volto.po b/packages/volto/locales/pt_BR/LC_MESSAGES/volto.po index bf470f44d5..b5d887bbbe 100644 --- a/packages/volto/locales/pt_BR/LC_MESSAGES/volto.po +++ b/packages/volto/locales/pt_BR/LC_MESSAGES/volto.po @@ -3,7 +3,7 @@ msgstr "" "Project-Id-Version: Plone\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-04-27T19:30:59.079Z\n" -"PO-Revision-Date: 2022-11-14 19:36-0300\n" +"PO-Revision-Date: 2024-09-15 14:20-0300\n" "Last-Translator: Érico Andrei \n" "Language: pt_BR\n" "Language-Team: Portuguese (https://www.transifex.com/plone/teams/14552/pt/)\n" @@ -15,7 +15,7 @@ msgstr "" "Language-Name: Português do Brasil\n" "Preferred-Encodings: utf-8\n" "Domain: volto\n" -"X-Generator: Poedit 3.2\n" +"X-Generator: Poedit 3.5\n" #. Default: "

Add some HTML here

" #: components/manage/Blocks/HTML/Edit @@ -142,7 +142,7 @@ msgstr "Adicionar bloco" #. Default: "Add block in position {index}" #: components/manage/Blocks/Container/NewBlockAddButton msgid "Add block in position {index}" -msgstr "" +msgstr "Adicionar bloco na posição {index}" #. Default: "Add block…" #: helpers/MessageLabels/MessageLabels @@ -595,7 +595,7 @@ msgstr "Alterações guardadas." #. Default: "Check this box to customize the title, description, or image of the target content item for this teaser. Leave it unchecked to show updates to the target content item if it is edited later." #: components/manage/Blocks/Teaser/schema msgid "Check this box to customize the title, description, or image of the target content item for this teaser. Leave it unchecked to show updates to the target content item if it is edited later." -msgstr "" +msgstr "Marque essa caixa para personalizar o título, a descrição ou a imagem do item de conteúdo de destino para esse teaser. Deixe-a desmarcada para mostrar atualizações no item de conteúdo de destino se ele for editado posteriormente." #. Default: "Checkbox" #: components/manage/Widgets/SchemaWidget @@ -750,7 +750,7 @@ msgstr "Itens contidos" #. Default: "Container settings" #: components/manage/Blocks/Container/SimpleContainerToolbar msgid "Container settings" -msgstr "" +msgstr "Configurações de contêineres" #. Default: "Content" #: components/manage/Controlpanels/Controlpanels @@ -781,7 +781,7 @@ msgstr "Regras de conteúdo de pastas pai" #. Default: "Content that links to or references {title}" #: components/manage/LinksToItem/LinksToItem msgid "Content that links to or references {title}" -msgstr "" +msgstr "Conteúdo com links ou referências para {title}" #. Default: "Content type created" #: components/manage/Controlpanels/ContentTypes @@ -880,7 +880,7 @@ msgstr "Senha atual" #. Default: "Customize teaser content" #: components/manage/Blocks/Teaser/schema msgid "Customize teaser content" -msgstr "" +msgstr "Personalizar o conteúdo do destaque" #. Default: "Cut" #: components/manage/Actions/Actions @@ -1017,12 +1017,12 @@ msgstr "Excluir linha" #. Default: "Delete selected items?" #: components/manage/Contents/Contents msgid "Delete selected items?" -msgstr "" +msgstr "Excluir os itens selecionados?" #. Default: "Delete this item?" #: components/manage/Contents/Contents msgid "Delete this item?" -msgstr "" +msgstr "Apagar este item?" #. Default: "Deleted" #: components/manage/Controlpanels/Rules/Rules @@ -1032,7 +1032,7 @@ msgstr "Removida" #. Default: "Deleting this item breaks {brokenReferences} {variation}." #: components/manage/Contents/Contents msgid "Deleting this item breaks {brokenReferences} {variation}." -msgstr "" +msgstr "A exclusão desse item quebra {brokenReferences} {variation}." #. Default: "Depth" #: components/manage/Widgets/QuerystringWidget @@ -1328,7 +1328,7 @@ msgstr "Informe seu nome de usuário para verificação." #. Default: "Entries" #: components/manage/Blocks/ToC/Schema msgid "Entries" -msgstr "" +msgstr "Entradas" #. Default: "Error" #: components/manage/Add/Add @@ -1359,7 +1359,7 @@ msgstr "Evento" #. Default: "Event end date must be on or after {startDateValueOrStartFieldName}" #: helpers/MessageLabels/MessageLabels msgid "Event end date must be on or after {startDateValueOrStartFieldName}" -msgstr "" +msgstr "A data de término do evento deve ser igual ou posterior a {startDateValueOrStartFieldName}" #. Default: "Event listing" #: config/Views @@ -1369,7 +1369,7 @@ msgstr "Listagem de Evento" #. Default: "Event start date must be on or before {endDateValueOrEndFieldName}" #: helpers/MessageLabels/MessageLabels msgid "Event start date must be on or before {endDateValueOrEndFieldName}" -msgstr "" +msgstr "A data de início do evento deve ser igual ou anterior a {endDateValueOrEndFieldName}" #. Default: "Event view" #: config/Views @@ -1596,7 +1596,7 @@ msgstr "Bloco Google Maps" #. Default: "Grid" #: components/manage/Blocks/Grid/schema msgid "Grid" -msgstr "" +msgstr "Grade" #. Default: "Group" #: components/manage/Sharing/Sharing @@ -1611,7 +1611,7 @@ msgstr "Grupo criado" #. Default: "Group deleted" #: helpers/MessageLabels/MessageLabels msgid "Group deleted" -msgstr "" +msgstr "Grupo Excluído" #. Default: "Group roles updated" #: helpers/MessageLabels/MessageLabels @@ -1676,7 +1676,7 @@ msgstr "Ocultar filtros" #. Default: "Hide title" #: components/manage/Blocks/ToC/Schema msgid "Hide title" -msgstr "" +msgstr "Ocultar título" #. Default: "History" #: components/manage/History/History @@ -1712,7 +1712,7 @@ msgstr "ID" #. Default: "Icon View" #: components/manage/Sidebar/ObjectBrowserBody msgid "Icon View" -msgstr "" +msgstr "Visualização de ícone" #. Default: "If all of the following conditions are met:" #: components/manage/Controlpanels/Rules/ConfigureRule @@ -1869,12 +1869,12 @@ msgstr "Bloco inválido" #. Default: "Invalid teaser source" #: components/manage/Blocks/Teaser/Data msgid "Invalid teaser source" -msgstr "" +msgstr "Fonte do destaque inválida" #. Default: "It is not allowed to define both the password and to request sending the password reset message by e-mail. You need to select one of them." #: helpers/MessageLabels/MessageLabels msgid "It is not allowed to define both the password and to request sending the password reset message by e-mail. You need to select one of them." -msgstr "" +msgstr "Não é permitido definir a senha e solicitar o envio da mensagem de redefinição de senha por e-mail. Por favor, selecione um deles." #. Default: "Item batch size" #: components/manage/Widgets/QuerystringWidget @@ -1998,7 +1998,7 @@ msgstr "Link" #. Default: "Anchor link copied to the clipboard" #: helpers/MessageLabels/MessageLabels msgid "Link copied to clipboard" -msgstr "" +msgstr "Link copiado para área de transferência" #. Default: "Link more" #: components/manage/Blocks/Listing/schema @@ -2013,7 +2013,7 @@ msgstr "Visão de redireção de Link" #. Default: "Link settings" #: components/manage/Blocks/Image/schema msgid "Link settings" -msgstr "" +msgstr "Configurações do link" #. Default: "Link Title" #: components/manage/Blocks/Listing/schema @@ -2035,18 +2035,18 @@ msgstr "Linkar tradução para" #. Default: "Linking this item with hyperlink in text" #: components/manage/LinksToItem/LinksToItem msgid "Linking this item with hyperlink in text" -msgstr "" +msgstr "Vinculação deste item com hiperlink no texto" #. Default: "Links and references" #: components/manage/LinksToItem/LinksToItem #: components/manage/Toolbar/More msgid "Links and references" -msgstr "" +msgstr "Links e referências" #. Default: "List View" #: components/manage/Sidebar/ObjectBrowserBody msgid "List View" -msgstr "" +msgstr "Exibição de lista" #. Default: "Listing" #: components/manage/Blocks/Listing/schema @@ -2109,7 +2109,7 @@ msgstr "Nome de usuário" #. Default: "Logo of" #: components/theme/Logo/Logo msgid "Logo of" -msgstr "" +msgstr "Logotipo da" #. Default: "Logout" #: components/manage/Toolbar/PersonalTools @@ -2395,7 +2395,7 @@ msgstr "Nenhum item selecionado" #. Default: "No links to this item found." #: components/manage/LinksToItem/LinksToItem msgid "No links to this item found." -msgstr "" +msgstr "Não foram encontrados links para esse item." #. Default: "No map selected" #: components/manage/Blocks/Maps/MapsSidebar @@ -2501,7 +2501,7 @@ msgstr "Ok" #. Default: "Only 7-bit bytes characters are allowed. Cannot contain uppercase letters, special characters: <, >, &, #, /, ?, or others that are illegal in URLs. Cannot start with: _, aq_, @@, ++. Cannot end with __. Cannot be: request,contributors, ., .., "". Cannot contain new lines." #: components/manage/Widgets/IdWidget msgid "Only 7-bit bytes characters are allowed. Cannot contain uppercase letters, special characters: <, >, &, #, /, ?, or others that are illegal in URLs. Cannot start with: _, aq_, @@, ++. Cannot end with __. Cannot be: request,contributors, ., .., "". Cannot contain new lines." -msgstr "" +msgstr "Somente caracteres de bytes de 7 bits são permitidos. Não pode conter letras maiúsculas, caracteres especiais: <, >, &, #, /, ?, ou outros que são ilegais em URLs. Não pode começar com: , aq, @@, ++. Não pode terminar com __. Não pode ser: request, contributors, ., .., “”. Não pode conter quebras de linha." #. Default: "Open in a new tab" #: components/manage/Blocks/Image/schema @@ -2524,12 +2524,12 @@ msgstr "Abrir navegador de objetos" #. Default: "Order" #: components/manage/Sidebar/Sidebar msgid "Order" -msgstr "" +msgstr "Ordem" #. Default: "Ordered" #: components/manage/Blocks/ToC/Schema msgid "Ordered" -msgstr "" +msgstr "Ordenado" #. Default: "Origin" #: components/manage/Blocks/LeadImage/LeadImageSidebar @@ -2539,7 +2539,7 @@ msgstr "Origem" #. Default: "Overview of relations of all content items" #: components/manage/LinksToItem/LinksToItem msgid "Overview of relations of all content items" -msgstr "" +msgstr "Visão geral das relações de todos os itens de conteúdo" #. Default: "Page" #: components/manage/Toolbar/Toolbar @@ -2783,17 +2783,17 @@ msgstr "Reduzir complexidade" #. Default: "Referencing this item as related item" #: components/manage/LinksToItem/LinksToItem msgid "Referencing this item as related item" -msgstr "" +msgstr "Referenciando este item como item relacionado" #. Default: "Referencing this item with {relationship}" #: components/manage/LinksToItem/LinksToItem msgid "Referencing this item with {relationship}" -msgstr "" +msgstr "Referenciando este item via {relationship}" #. Default: "Refresh source content" #: components/manage/Blocks/Teaser/Data msgid "Refresh source content" -msgstr "" +msgstr "Atualizar o conteúdo de origem" #. Default: "Register" #: components/theme/Anontools/Anontools @@ -2843,7 +2843,7 @@ msgstr "Remover" #. Default: "Remove element {index}" #: components/manage/Blocks/Container/EditBlockWrapper msgid "Remove element {index}" -msgstr "" +msgstr "Remover elemento {index}" #. Default: "Remove item" #: components/manage/Widgets/ObjectListWidget @@ -2932,7 +2932,7 @@ msgstr "Falta informação obrigatória." #. Default: "Reset element {index}" #: components/manage/Blocks/Container/EditBlockWrapper msgid "Reset element {index}" -msgstr "" +msgstr "Redefinir elemento {index}" #. Default: "Reset title" #: components/manage/Widgets/VocabularyTermsWidget @@ -3235,7 +3235,7 @@ msgstr "Envie um e-mail de confirmação com um link para definir a senha." #. Default: "Server Error" #: components/theme/Error/ServerError msgid "Server Error" -msgstr "" +msgstr "Erro de servidor" #. Default: "Set my password" #: components/theme/PasswordReset/PasswordReset @@ -3381,12 +3381,12 @@ msgstr "Pequeno" #. Default: "Some items are also a folder. By deleting them you will delete {containedItemsToDelete} {variation} inside the folders." #: components/manage/Contents/Contents msgid "Some items are also a folder. By deleting them you will delete {containedItemsToDelete} {variation} inside the folders." -msgstr "" +msgstr "Alguns itens também são uma pasta. Ao excluí-los, você excluirá {containedItemsToDelete} {variation} dentro destas pastas." #. Default: "Some items are referenced by other contents. By deleting them {brokenReferences} {variation} will be broken." #: components/manage/Contents/Contents msgid "Some items are referenced by other contents. By deleting them {brokenReferences} {variation} will be broken." -msgstr "" +msgstr "Alguns itens são referenciados por outros conteúdos. Ao excluí-los, {brokenReferences} {variation} podem ser quebrados." #. Default: "Some relations are broken. Please fix." #: components/manage/Controlpanels/Relations/Relations @@ -3433,7 +3433,7 @@ msgstr "Ordenado" #. Default: "Sorted on" #: components/manage/Blocks/Search/components/SortOn msgid "Sorted on" -msgstr "" +msgstr "Ordenado por" #. Default: "Source" #: components/manage/Blocks/HTML/Edit @@ -3483,7 +3483,7 @@ msgstr "Situação" #. Default: "Sticky" #: components/manage/Blocks/ToC/Schema msgid "Sticky" -msgstr "" +msgstr "Fixo" #. Default: "Stop compare" #: components/manage/Multilingual/CompareLanguages @@ -3513,7 +3513,7 @@ msgstr "Assunto" #. Default: "Submit" #: components/manage/AnchorPlugin/components/LinkButton/AddLinkForm msgid "Submit" -msgstr "" +msgstr "Enviar" #. Default: "Success" #: components/manage/Actions/Actions @@ -3679,12 +3679,12 @@ msgstr "O endereço do link é:" #. Default: "The number of items must be greater than or equal to {minItems}" #: helpers/MessageLabels/MessageLabels msgid "The number of items must be greater than or equal to {minItems}" -msgstr "" +msgstr "O número de itens deve ser maior ou igual a {minItems}" #. Default: "The number of items must be less than or equal to {maxItems}" #: helpers/MessageLabels/MessageLabels msgid "The number of items must be less than or equal to {maxItems}" -msgstr "" +msgstr "O número de itens deve ser menor ou igual a {maxItems}" #. Default: "The provided alternative url already exists!" #: components/manage/Aliases/Aliases @@ -3705,7 +3705,7 @@ msgstr "A configuração do site está desatualizada e precisa ser atualizada." #. Default: "The value does not match the pattern {pattern}" #: helpers/MessageLabels/MessageLabels msgid "The value does not match the pattern {pattern}" -msgstr "" +msgstr "O valor não corresponde ao padrão {pattern}" #. Default: "The working copy was discarded" #: components/manage/Toolbar/More @@ -3720,12 +3720,12 @@ msgstr "O {plonecms} tem {copyright} de 2000-{current_year} pela {plonefoundatio #. Default: "There are no groups with the searched criteria" #: helpers/MessageLabels/MessageLabels msgid "There are no groups with the searched criteria" -msgstr "" +msgstr "Não há grupos com os critérios pesquisados" #. Default: "There are no users with the searched criteria" #: helpers/MessageLabels/MessageLabels msgid "There are no users with the searched criteria" -msgstr "" +msgstr "Não há usuários com os critérios pesquisados" #. Default: "There are some errors." #: components/manage/Add/Add @@ -3777,7 +3777,7 @@ msgstr "Esta é uma cópia de trabalho de {title}" #. Default: "This item is also a folder. By deleting it you will delete {containedItemsToDelete} {variation} inside the folder." #: components/manage/Contents/Contents msgid "This item is also a folder. By deleting it you will delete {containedItemsToDelete} {variation} inside the folder." -msgstr "" +msgstr "Esse item também é uma pasta. Ao excluí-lo, você excluirá {containedItemsToDelete} {variation} dentro da pasta." #. Default: "This item was locked by {creator} on {date}" #: components/manage/LockingToastsFactory/LockingToastsFactory @@ -4014,7 +4014,7 @@ msgstr "Atualizar" #. Default: "Update User" #: helpers/MessageLabels/MessageLabels msgid "Update User" -msgstr "" +msgstr "Atualizar o usuário" #. Default: "Update installed addons" #: components/manage/Controlpanels/AddonsControlpanel @@ -4112,7 +4112,7 @@ msgstr "Usuário criado" #. Default: "User deleted" #: helpers/MessageLabels/MessageLabels msgid "User deleted" -msgstr "" +msgstr "Usuário excluído" #. Default: "User name" #: components/manage/Controlpanels/Users/UsersControlpanel @@ -4127,7 +4127,7 @@ msgstr "Papéis do grupo atualizados" #. Default: "User updated successfuly" #: helpers/MessageLabels/MessageLabels msgid "User updated successfuly" -msgstr "" +msgstr "Usuário atualizado com sucesso" #. Default: "Username" #: helpers/MessageLabels/MessageLabels @@ -4186,12 +4186,12 @@ msgstr "Ver mudanças" #. Default: "View links and references to this item" #: components/manage/Contents/Contents msgid "View links and references to this item" -msgstr "" +msgstr "Exibir links e referências a este item" #. Default: "View this revision" #: components/manage/History/History msgid "View this revision" -msgstr "Ver esta revisão" +msgstr "Visualizar esta revisão" #. Default: "View working copy" #: components/manage/Toolbar/More @@ -4236,7 +4236,7 @@ msgstr "Pedimos desculpas pelo inconveniente, mas a página que você estava ten #. Default: "We apologize for the inconvenience, but there was an unexpected error on the server." #: components/theme/Error/ServerError msgid "We apologize for the inconvenience, but there was an unexpected error on the server." -msgstr "" +msgstr "Pedimos desculpas pelo inconveniente, mas ocorreu um erro inesperado no servidor." #. Default: "We apologize for the inconvenience, but you don't have permissions on this resource." #: components/theme/Forbidden/Forbidden @@ -4424,7 +4424,7 @@ msgstr "Visões disponíveis" #. Default: "Error in the block field {errorField}." #: helpers/MessageLabels/MessageLabels msgid "blocksFieldsErrorTitle" -msgstr "" +msgstr "Erro no campo de blocos {errorField}" #. Default: "Forgot your password?" #: components/theme/Login/Login @@ -4440,12 +4440,12 @@ msgstr "Caixa de seleção" #. Default: "column" #: components/manage/Blocks/Grid/templates msgid "column" -msgstr "" +msgstr "coluna" #. Default: "columns" #: components/manage/Blocks/Grid/templates msgid "columns" -msgstr "" +msgstr "colunas" #. Default: "Common" #: config/Blocks @@ -4545,7 +4545,7 @@ msgstr "Onde" #. Default: "This website does not accept files larger than {limit}" #: helpers/MessageLabels/MessageLabels msgid "fileTooLarge" -msgstr "" +msgstr "Este site não aceita arquivos maiores que {limit}" #. Default: "flush intIds and rebuild relations" #: helpers/MessageLabels/MessageLabels @@ -4555,7 +4555,7 @@ msgstr "descarrega os intIds e recontrua os relacionamentos" #. Default: "
  • Regenerate intIds (tokens of relations in relation catalog)
  • Rebuild relations

Check the log for details!

Warning: If you have add-ons relying on intIds, you should not flush them.

" #: helpers/MessageLabels/MessageLabels msgid "flushAndRebuildRelationsHints" -msgstr "" +msgstr "
  • Regerar os intIds (tokens das relações no catálogo de relações)
  • Reconstruir relações

Verifique o log para detalhes!

Aviso: Se você tem complementos que dependem de intIds, não deve excluí-los.

" #. Default: "Head title" #: components/manage/Blocks/Teaser/schema @@ -4585,12 +4585,12 @@ msgstr "Imagem" #. Default: "Clear image" #: components/manage/Blocks/Image/ImageSidebar msgid "image_block_clear" -msgstr "" +msgstr "Remover imagem" #. Default: "Image preview" #: components/manage/Blocks/Image/ImageSidebar msgid "image_block_preview" -msgstr "" +msgstr "Pré-visualização da imagem" #. Default: "Input must be integer" #: helpers/MessageLabels/MessageLabels @@ -4605,12 +4605,12 @@ msgstr "Intranet" #. Default: "item" #: components/manage/Contents/Contents msgid "item" -msgstr "" +msgstr "Item" #. Default: "items" #: components/manage/Contents/Contents msgid "items" -msgstr "" +msgstr "Itens" #. Default: "My email is" #: components/theme/PasswordReset/RequestPasswordReset @@ -4754,12 +4754,12 @@ msgstr "reconstruir relacionamentos" #. Default: "reference" #: components/manage/Contents/Contents msgid "reference" -msgstr "" +msgstr "referência" #. Default: "references" #: components/manage/Contents/Contents msgid "references" -msgstr "" +msgstr "referências" #. Default: "results" #: components/theme/Search/Search @@ -4979,7 +4979,7 @@ msgstr "caminho do destino" #. Default: "Text" #: config/Blocks msgid "text" -msgstr "" +msgstr "texto" #. Default: "Title" #: config/Blocks @@ -5052,7 +5052,7 @@ msgstr "Sim" #. Default: "{count, plural, one {Upload {count} file} other {Upload {count} files}}" #: components/manage/Contents/ContentsUploadModal msgid "{count, plural, one {Upload {count} file} other {Upload {count} files}}" -msgstr "{count, plural, one {Enviar {count} arquivo} other {Enviar {count} arquivos}}" +msgstr "{count, plural, one {Enviar {count} arquivo} ou {Enviar {count} arquivos}}" #. Default: "{count} selected" #: components/manage/Contents/Contents diff --git a/packages/volto/news/+update_pt_br.feature b/packages/volto/news/+update_pt_br.feature new file mode 100644 index 0000000000..35ce73755f --- /dev/null +++ b/packages/volto/news/+update_pt_br.feature @@ -0,0 +1 @@ +Update Brazilian Portuguese translations. @ericof diff --git a/packages/volto/news/2570.bugfix b/packages/volto/news/2570.bugfix new file mode 100644 index 0000000000..490f159699 --- /dev/null +++ b/packages/volto/news/2570.bugfix @@ -0,0 +1,2 @@ +Change Form input:focus text color to the `textColor` value for a11y. +Add Cypress test for contact form inputs. @ThomasKindermann @tedw87 \ No newline at end of file diff --git a/packages/volto/news/4077.feature b/packages/volto/news/4077.feature deleted file mode 100644 index 062a72de76..0000000000 --- a/packages/volto/news/4077.feature +++ /dev/null @@ -1 +0,0 @@ -Refactor AlbumView from class to functional component. @Tishasoumya-02 \ No newline at end of file diff --git a/packages/volto/news/4819.feature b/packages/volto/news/4819.feature deleted file mode 100644 index fe12773f69..0000000000 --- a/packages/volto/news/4819.feature +++ /dev/null @@ -1 +0,0 @@ -Add setting `unwantedControlPanelsFields` and use it in the function `filterControlPanelsSchema`. @wesleybl diff --git a/packages/volto/news/4861.feature b/packages/volto/news/4861.feature deleted file mode 100644 index c5521a45f1..0000000000 --- a/packages/volto/news/4861.feature +++ /dev/null @@ -1 +0,0 @@ -Refactor the `Register` component from class-based to functional. @Tishasoumya-02 diff --git a/packages/volto/news/4955.feature b/packages/volto/news/4955.feature deleted file mode 100644 index 4884c96572..0000000000 --- a/packages/volto/news/4955.feature +++ /dev/null @@ -1 +0,0 @@ -Refactor Toolbar/More component from class to functional component. @Tishasoumya-02 \ No newline at end of file diff --git a/packages/volto/news/4959.feature b/packages/volto/news/4959.feature deleted file mode 100644 index 81e63b0f64..0000000000 --- a/packages/volto/news/4959.feature +++ /dev/null @@ -1 +0,0 @@ -Refactor Blocks/LeadImage/Edit component from class to functional component. @Tishasoumya-02 \ No newline at end of file diff --git a/packages/volto/news/4960.feature b/packages/volto/news/4960.feature deleted file mode 100644 index 6b28eeee61..0000000000 --- a/packages/volto/news/4960.feature +++ /dev/null @@ -1 +0,0 @@ -Refactor Blocks/Video/Edit component from class to functional component. @Tishasoumya-02 \ No newline at end of file diff --git a/packages/volto/news/4985.feature b/packages/volto/news/4985.feature deleted file mode 100644 index 1ba74856d9..0000000000 --- a/packages/volto/news/4985.feature +++ /dev/null @@ -1 +0,0 @@ -Refactor ControlPanel/Users/Aliases component , replacing class component lifecycle methods with functional hooks. @Tishasoumya-02 \ No newline at end of file diff --git a/packages/volto/news/4986.feature b/packages/volto/news/4986.feature deleted file mode 100644 index caaac5aa19..0000000000 --- a/packages/volto/news/4986.feature +++ /dev/null @@ -1 +0,0 @@ -Refactor Controlpanel databaseInformation from class component to functional component. @Tishasoumya-02 \ No newline at end of file diff --git a/packages/volto/news/4993.feature b/packages/volto/news/4993.feature deleted file mode 100644 index f5f831e506..0000000000 --- a/packages/volto/news/4993.feature +++ /dev/null @@ -1 +0,0 @@ -Refactor ControlPanels/Groups RenderGroups from class components to functional component. @Tishasoumya-02 \ No newline at end of file diff --git a/packages/volto/news/4995.feature b/packages/volto/news/4995.feature deleted file mode 100644 index 9e38ddfcec..0000000000 --- a/packages/volto/news/4995.feature +++ /dev/null @@ -1 +0,0 @@ -Refactor AddonsControlpanel from class to functional components. @Tishasoumya \ No newline at end of file diff --git a/packages/volto/news/5044.feature b/packages/volto/news/5044.feature deleted file mode 100644 index 60833498c6..0000000000 --- a/packages/volto/news/5044.feature +++ /dev/null @@ -1 +0,0 @@ -Refactor Preference/Change Password from class to functional component. @Tishasoumya-02 diff --git a/packages/volto/news/5045.feature b/packages/volto/news/5045.feature deleted file mode 100644 index b5385619ac..0000000000 --- a/packages/volto/news/5045.feature +++ /dev/null @@ -1 +0,0 @@ -Refactor Preference/PersonalPreferences from class to functional component. @Tishasoumya-02 diff --git a/packages/volto/news/5046.feature b/packages/volto/news/5046.feature deleted file mode 100644 index acf69da56f..0000000000 --- a/packages/volto/news/5046.feature +++ /dev/null @@ -1 +0,0 @@ -Refactor Preference/PersonalInformation from Class to Functional component. @Tishasoumya-02 \ No newline at end of file diff --git a/packages/volto/news/5048.feature b/packages/volto/news/5048.feature deleted file mode 100644 index 756b8f5891..0000000000 --- a/packages/volto/news/5048.feature +++ /dev/null @@ -1 +0,0 @@ -Storybook test for ContentBreadcrumbs component. @Tishasoumya \ No newline at end of file diff --git a/packages/volto/news/5049.feature b/packages/volto/news/5049.feature deleted file mode 100644 index 8dc75b2192..0000000000 --- a/packages/volto/news/5049.feature +++ /dev/null @@ -1 +0,0 @@ -Storybook Actions component test. @Tishasoumya-02 \ No newline at end of file diff --git a/packages/volto/news/5055.bugfix b/packages/volto/news/5055.bugfix deleted file mode 100644 index d089f7d0b4..0000000000 --- a/packages/volto/news/5055.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix search block showing no option select in sort on property @iRohitSingh \ No newline at end of file diff --git a/packages/volto/news/5066.feature b/packages/volto/news/5066.feature deleted file mode 100644 index 347026cf08..0000000000 --- a/packages/volto/news/5066.feature +++ /dev/null @@ -1 +0,0 @@ -Refactor Display from class to functional component. @Tishasoumya-02 \ No newline at end of file diff --git a/packages/volto/news/5093.feature b/packages/volto/news/5093.feature deleted file mode 100644 index cb0a0ab525..0000000000 --- a/packages/volto/news/5093.feature +++ /dev/null @@ -1 +0,0 @@ -Refactor `ReferenceWidget` from class-based to functional component. @Tishasoumya \ No newline at end of file diff --git a/packages/volto/news/5274.bugfix b/packages/volto/news/5274.bugfix deleted file mode 100644 index da9be01184..0000000000 --- a/packages/volto/news/5274.bugfix +++ /dev/null @@ -1 +0,0 @@ -Displays validation error messages on control panel forms. @wesleybl diff --git a/packages/volto/news/5971.bugfix b/packages/volto/news/5971.bugfix deleted file mode 100644 index 71d9814b79..0000000000 --- a/packages/volto/news/5971.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix `initialValue` block setting. @wesleybl diff --git a/packages/volto/news/6071.bugfix b/packages/volto/news/6071.bugfix deleted file mode 100644 index a6ac978c83..0000000000 --- a/packages/volto/news/6071.bugfix +++ /dev/null @@ -1 +0,0 @@ -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 diff --git a/packages/volto/news/6147.bugfix b/packages/volto/news/6147.bugfix deleted file mode 100644 index f8636db7f6..0000000000 --- a/packages/volto/news/6147.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix `Teaser` block image override option to render external images and internal images pointing to image scales. @Tishasoumya-02 diff --git a/packages/volto/news/6167.feature b/packages/volto/news/6167.feature deleted file mode 100644 index bfa7da310f..0000000000 --- a/packages/volto/news/6167.feature +++ /dev/null @@ -1 +0,0 @@ -Refactor the table of contents block component from a class component to a functional component. @Prince0906 \ No newline at end of file diff --git a/packages/volto/news/6173.feature b/packages/volto/news/6173.feature new file mode 100644 index 0000000000..1d887eae5d --- /dev/null +++ b/packages/volto/news/6173.feature @@ -0,0 +1 @@ +Added `config.settings.nonContentRoutesPublic` to avoid `isCmsUi` issues in these public routes. @giuliaghisini diff --git a/packages/volto/news/6186.feature b/packages/volto/news/6186.feature deleted file mode 100644 index bd02ea020f..0000000000 --- a/packages/volto/news/6186.feature +++ /dev/null @@ -1 +0,0 @@ -Improved URL regex to allow non-public or intranet URLs, such as `https://intranet/` or `file://server/share`. @mamico diff --git a/packages/volto/news/6213.feature b/packages/volto/news/6213.feature deleted file mode 100644 index 76fbceecdc..0000000000 --- a/packages/volto/news/6213.feature +++ /dev/null @@ -1,2 +0,0 @@ - -Refactor the `DatetimeWidget` component from a class component to a functional component. @Raman-Luhach diff --git a/packages/volto/news/6226.bugfix b/packages/volto/news/6226.bugfix deleted file mode 100644 index a571bd1d1e..0000000000 --- a/packages/volto/news/6226.bugfix +++ /dev/null @@ -1 +0,0 @@ -Add Cypress test for search block sort on property. @iRohitSingh diff --git a/packages/volto/news/6230.bugfix b/packages/volto/news/6230.bugfix deleted file mode 100644 index 7e8bc151cb..0000000000 --- a/packages/volto/news/6230.bugfix +++ /dev/null @@ -1 +0,0 @@ -Remove unused i18n message for SortOn component. @davisagli diff --git a/packages/volto/news/6231.internal b/packages/volto/news/6231.internal deleted file mode 100644 index 99beab7a0c..0000000000 --- a/packages/volto/news/6231.internal +++ /dev/null @@ -1 +0,0 @@ -Allow setting the language for `make backend-docker-start`. Default is `en`. Added usage documentation in Contributing > Develop Volto core, and reorganized it. Cleaned up Configuration > Multilingual. @stevepiercy diff --git a/packages/volto/news/6232.internal b/packages/volto/news/6232.internal deleted file mode 100644 index d9d32916c7..0000000000 --- a/packages/volto/news/6232.internal +++ /dev/null @@ -1 +0,0 @@ -Revert rename of `.gitkeep`. @stevepiercy diff --git a/packages/volto/news/6235.bugfix b/packages/volto/news/6235.bugfix deleted file mode 100644 index 8967eedb2a..0000000000 --- a/packages/volto/news/6235.bugfix +++ /dev/null @@ -1 +0,0 @@ -Return a 302 response for server-side rendering of the Link view for unauthenticated users. @davisagli diff --git a/packages/volto/news/6237.bugfix b/packages/volto/news/6237.bugfix deleted file mode 100644 index 7bb075eac5..0000000000 --- a/packages/volto/news/6237.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix loading of .cjs in webpack. @davisagli diff --git a/packages/volto/news/6239.documentation b/packages/volto/news/6239.documentation deleted file mode 100644 index 84013472bd..0000000000 --- a/packages/volto/news/6239.documentation +++ /dev/null @@ -1 +0,0 @@ -Fix redirect of link in documentation to testing Redux store blog post. @stevepiercy diff --git a/packages/volto/news/6240.bugfix b/packages/volto/news/6240.bugfix deleted file mode 100644 index f69fbc8a6c..0000000000 --- a/packages/volto/news/6240.bugfix +++ /dev/null @@ -1,2 +0,0 @@ -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 diff --git a/packages/volto/news/6241.internal b/packages/volto/news/6241.internal deleted file mode 100644 index d157a14bc8..0000000000 --- a/packages/volto/news/6241.internal +++ /dev/null @@ -1 +0,0 @@ -Upgrade Cypress to 13.13.2. @wesleybl diff --git a/packages/volto/news/6242.internal b/packages/volto/news/6242.internal deleted file mode 100644 index f362b022e0..0000000000 --- a/packages/volto/news/6242.internal +++ /dev/null @@ -1 +0,0 @@ -Complete upgrade Cypress to 13.13.2. Bump actions/upload-artifact@v1 to v4. @stevepiercy diff --git a/packages/volto/news/6244.bugfix b/packages/volto/news/6244.bugfix deleted file mode 100644 index 4b9b29e635..0000000000 --- a/packages/volto/news/6244.bugfix +++ /dev/null @@ -1 +0,0 @@ -Changed imports from relative to absolute to avoid type errors in add-on tests. @wesleybl diff --git a/packages/volto/news/6247.bugfix b/packages/volto/news/6247.bugfix deleted file mode 100644 index c74a667f3b..0000000000 --- a/packages/volto/news/6247.bugfix +++ /dev/null @@ -1 +0,0 @@ -In the URL Management control panel, allow external URLs as targets. @davisagli diff --git a/packages/volto/news/6248.feature b/packages/volto/news/6248.feature deleted file mode 100644 index 8f809c135e..0000000000 --- a/packages/volto/news/6248.feature +++ /dev/null @@ -1,2 +0,0 @@ -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 diff --git a/packages/volto/news/6249.bugfix b/packages/volto/news/6249.bugfix new file mode 100644 index 0000000000..6e28743161 --- /dev/null +++ b/packages/volto/news/6249.bugfix @@ -0,0 +1 @@ +Add missing `for` attribute to checkbox label to improve accessibility. @gomez \ No newline at end of file diff --git a/packages/volto/news/6252.bugfix b/packages/volto/news/6252.bugfix deleted file mode 100644 index ac84782906..0000000000 --- a/packages/volto/news/6252.bugfix +++ /dev/null @@ -1 +0,0 @@ -Disable save button when loading POST query @sabrina-bongiovanni diff --git a/packages/volto/news/6258.bugfix b/packages/volto/news/6258.bugfix deleted file mode 100644 index 44a9fe4b9a..0000000000 --- a/packages/volto/news/6258.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix `TypeError: values[0] is undefined` in Contents properties modal. @davisagli diff --git a/packages/volto/news/6262.documentation b/packages/volto/news/6262.documentation deleted file mode 100644 index 0018dd38ef..0000000000 --- a/packages/volto/news/6262.documentation +++ /dev/null @@ -1 +0,0 @@ -Fix redirect to Docker documentation. @stevepiercy diff --git a/packages/volto/news/6269.breaking b/packages/volto/news/6269.breaking deleted file mode 100644 index a361dd27fc..0000000000 --- a/packages/volto/news/6269.breaking +++ /dev/null @@ -1 +0,0 @@ -Move `Tags` component to the slot `belowContent`. @wesleybl diff --git a/packages/volto/news/6273.bugfix b/packages/volto/news/6273.bugfix deleted file mode 100644 index 6caa1e8e5e..0000000000 --- a/packages/volto/news/6273.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix error in `SortOn` component when no sort is selected. @davisagli diff --git a/packages/volto/news/6274.internal b/packages/volto/news/6274.internal deleted file mode 100644 index d56fc85f27..0000000000 --- a/packages/volto/news/6274.internal +++ /dev/null @@ -1 +0,0 @@ -Add `make i18n` command. @Faakhir30 diff --git a/packages/volto/news/6275.bugfix b/packages/volto/news/6275.bugfix deleted file mode 100644 index 47f0ea53ba..0000000000 --- a/packages/volto/news/6275.bugfix +++ /dev/null @@ -1 +0,0 @@ -Place actions storybook in correct path. @Tishasoumya-02 \ No newline at end of file diff --git a/packages/volto/news/6290.documentation b/packages/volto/news/6290.documentation new file mode 100644 index 0000000000..d31cc808d4 --- /dev/null +++ b/packages/volto/news/6290.documentation @@ -0,0 +1 @@ +- Revised Cookieplone section in the Upgrade Guide. @stevepiercy diff --git a/packages/volto/news/6299.bugfix b/packages/volto/news/6299.bugfix new file mode 100644 index 0000000000..0d8ad4608a --- /dev/null +++ b/packages/volto/news/6299.bugfix @@ -0,0 +1 @@ +Fixed findBlocks when no blocks are passed. @giuliaghisini diff --git a/packages/volto/news/6330.bugfix b/packages/volto/news/6330.bugfix new file mode 100644 index 0000000000..809f559863 --- /dev/null +++ b/packages/volto/news/6330.bugfix @@ -0,0 +1 @@ +Changed sidebar accordion text colour from @teal to @textColor. @JeffersonBledsoe diff --git a/packages/volto/news/6332.bugfix b/packages/volto/news/6332.bugfix new file mode 100644 index 0000000000..6b82b6cd5e --- /dev/null +++ b/packages/volto/news/6332.bugfix @@ -0,0 +1 @@ +Labels accessibility for ArrayWidget, SelectWidget, TokenWidget. @folix-01 diff --git a/packages/volto/package.json b/packages/volto/package.json index 03ee312ad8..9b31c08fde 100644 --- a/packages/volto/package.json +++ b/packages/volto/package.json @@ -9,7 +9,7 @@ } ], "license": "MIT", - "version": "18.0.0-alpha.42", + "version": "18.0.0-alpha.43", "repository": { "type": "git", "url": "git@github.com:plone/volto.git" diff --git a/packages/volto/src/components/manage/BlockChooser/BlockChooser.jsx b/packages/volto/src/components/manage/BlockChooser/BlockChooser.jsx index 69b3d87c38..80c5142e81 100644 --- a/packages/volto/src/components/manage/BlockChooser/BlockChooser.jsx +++ b/packages/volto/src/components/manage/BlockChooser/BlockChooser.jsx @@ -1,4 +1,5 @@ import React from 'react'; +import { useSelector } from 'react-redux'; import PropTypes from 'prop-types'; import { filter, map, groupBy, isEmpty } from 'lodash'; import { Accordion, Button } from 'semantic-ui-react'; @@ -35,6 +36,7 @@ const BlockChooser = ({ contentType, }) => { const intl = useIntl(); + const user = useSelector((state) => state.users?.user); const hasAllowedBlocks = !isEmpty(allowedBlocks); const filteredBlocksConfig = filter(blocksConfig, (item) => { @@ -57,7 +59,13 @@ const BlockChooser = ({ // depending on this function, given properties (current present blocks) and the // block being evaluated return typeof item.restricted === 'function' - ? !item.restricted({ properties, block: item, navRoot, contentType }) + ? !item.restricted({ + properties, + block: item, + navRoot, + contentType, + user, + }) : !item.restricted; } } diff --git a/packages/volto/src/components/manage/Blocks/Block/Order/Item.jsx b/packages/volto/src/components/manage/Blocks/Block/Order/Item.jsx index 68e20edcc6..5580fc416f 100644 --- a/packages/volto/src/components/manage/Blocks/Block/Order/Item.jsx +++ b/packages/volto/src/components/manage/Blocks/Block/Order/Item.jsx @@ -98,7 +98,9 @@ export const Item = forwardRef( 0 })} + className={cx('text', { + errored: errors && Object.keys(errors).length > 0, + })} > {config.blocks.blocksConfig[data?.['@type']]?.icon && ( { const { data, path, className, style } = props; const metadata = props.metadata || props.properties; + if (data.blocks_layout === undefined) { + return null; + } const columns = data.blocks_layout.items; const blocksConfig = config.blocks.blocksConfig[data['@type']].blocksConfig || diff --git a/packages/volto/src/components/manage/Blocks/Search/components/CheckboxFacet.jsx b/packages/volto/src/components/manage/Blocks/Search/components/CheckboxFacet.jsx index c4b86c1147..7d0665054f 100644 --- a/packages/volto/src/components/manage/Blocks/Search/components/CheckboxFacet.jsx +++ b/packages/volto/src/components/manage/Blocks/Search/components/CheckboxFacet.jsx @@ -21,6 +21,7 @@ const CheckboxFacet = (props) => { {choices.map(({ label, value }, i) => (
-
@@ -47,11 +50,14 @@ exports[`CheckboxFacet renders a facet component with checkboxes 1`] = ` -