@eeacms/volto-eea-website-policy 1.5.0 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,20 @@ All notable changes to this project will be documented in this file. Dates are d
4
4
 
5
5
  Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).
6
6
 
7
+ ### [1.6.0](https://github.com/eea/volto-eea-website-policy/compare/1.5.0...1.6.0) - 22 May 2023
8
+
9
+ #### :nail_care: Enhancements
10
+
11
+ - change(blocks): moved most used block config within eea-website-theme [David Ichim - [`b18d5ce`](https://github.com/eea/volto-eea-website-policy/commit/b18d5ce958c7e7f814969df8051d65c49133ca88)]
12
+ - change(blocks): moved layout settings block within volto-eea-website-theme #48 from eea/252559-policy-refactoring [ichim-david - [`45fee8e`](https://github.com/eea/volto-eea-website-policy/commit/45fee8e68d1a18d7be77f33a8207524ae6f7d220)]
13
+ - change(blocks): moved layout settings block from volto-eea-policy to volto-eea-website-theme [David Ichim - [`37bc97d`](https://github.com/eea/volto-eea-website-policy/commit/37bc97d0a3db77fa8f31e750be179cb287814217)]
14
+
15
+ #### :hammer_and_wrench: Others
16
+
17
+ - Increased package version [Alexandru Ghica - [`174b77e`](https://github.com/eea/volto-eea-website-policy/commit/174b77eccf7ba80286edee8ea30c1a3f2523b200)]
18
+ - prettier fix [Miu Razvan - [`eef9199`](https://github.com/eea/volto-eea-website-policy/commit/eef91996a480b371da69506700285c12adb69167)]
19
+ - prettier fix [Miu Razvan - [`0a3bf2d`](https://github.com/eea/volto-eea-website-policy/commit/0a3bf2de5103fd898e68491207751d39c8510d08)]
20
+ - other: disable tableau and map embed blocks [Miu Razvan - [`a032766`](https://github.com/eea/volto-eea-website-policy/commit/a0327664c25c55beb544dd22ca2e9d5cc6380acd)]
7
21
  ### [1.5.0](https://github.com/eea/volto-eea-website-policy/compare/1.4.0...1.5.0) - 24 March 2023
8
22
 
9
23
  #### :bug: Bug Fixes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eeacms/volto-eea-website-policy",
3
- "version": "1.5.0",
3
+ "version": "1.6.0",
4
4
  "description": "@eeacms/volto-eea-website-policy: Volto add-on",
5
5
  "main": "src/index.js",
6
6
  "author": "European Environment Agency: IDM2 A-Team",
package/src/index.js CHANGED
@@ -1,7 +1,5 @@
1
1
  import { runtimeConfig } from '@plone/volto/runtime_config';
2
2
  import installContextNavigationBlock from '@eeacms/volto-eea-website-policy/components/Blocks/ContextNavigation';
3
- import installLayoutSettingsBlock from '@eeacms/volto-eea-website-policy/components/Blocks/LayoutSettings';
4
- import { addStylingFieldsetSchemaEnhancer } from '@eeacms/volto-eea-website-policy/components/Blocks/schema';
5
3
 
6
4
  const applyConfig = (config) => {
7
5
  // #158717#note-25 any path that isn't static, en or controlpanel is treated as external
@@ -59,53 +57,6 @@ const applyConfig = (config) => {
59
57
  config.settings.eea.logoTargetUrl = '/en';
60
58
  }
61
59
 
62
- // Block chooser
63
- config.blocks.blocksConfig.image.mostUsed = false;
64
- config.blocks.blocksConfig.video.mostUsed = false;
65
-
66
- // Grid/Teaser block (kitconcept)
67
- if (config.blocks.blocksConfig.__grid) {
68
- config.blocks.blocksConfig.__grid.restricted = true;
69
- }
70
- if (config.blocks.blocksConfig.imagesGrid) {
71
- config.blocks.blocksConfig.imagesGrid.restricted = true;
72
- }
73
- if (config.blocks.blocksConfig.teaser) {
74
- config.blocks.blocksConfig.teaser.restricted = true;
75
- }
76
-
77
- // Divider
78
- if (config.blocks.blocksConfig.dividerBlock) {
79
- config.blocks.blocksConfig.dividerBlock.mostUsed = true;
80
- }
81
-
82
- // Call to Action
83
- if (config.blocks.blocksConfig.callToActionBlock) {
84
- config.blocks.blocksConfig.callToActionBlock.mostUsed = true;
85
- }
86
-
87
- // Group
88
- if (config.blocks.blocksConfig.group) {
89
- config.blocks.blocksConfig.group.schemaEnhancer = addStylingFieldsetSchemaEnhancer;
90
- }
91
-
92
- // Columns
93
- if (config.blocks.blocksConfig.columnsBlock) {
94
- config.blocks.blocksConfig.columnsBlock.mostUsed = true;
95
- config.blocks.blocksConfig.columnsBlock.schemaEnhancer = addStylingFieldsetSchemaEnhancer;
96
- }
97
-
98
- // Accordion
99
- if (config.blocks.blocksConfig.accordion) {
100
- config.blocks.blocksConfig.accordion.mostUsed = true;
101
- }
102
-
103
- // Listing
104
- if (config.blocks.blocksConfig.listing) {
105
- config.blocks.blocksConfig.listing.title = 'Listing (Content)';
106
- config.blocks.blocksConfig.listing.schemaEnhancer = addStylingFieldsetSchemaEnhancer;
107
- }
108
-
109
60
  // Custom blocks
110
61
  // context navigation
111
62
  config = [installContextNavigationBlock].reduce(
@@ -113,17 +64,18 @@ const applyConfig = (config) => {
113
64
  config,
114
65
  );
115
66
 
116
- // layout settings
117
- config = [installLayoutSettingsBlock].reduce(
118
- (acc, apply) => apply(acc),
119
- config,
120
- );
121
-
122
67
  // Disable some blocks
123
68
  if (config.blocks.blocksConfig.imagecards) {
124
69
  config.blocks.blocksConfig.imagecards.restricted = true;
125
70
  }
126
71
 
72
+ if (config.blocks.blocksConfig.embed_eea_tableau_block) {
73
+ config.blocks.blocksConfig.embed_eea_tableau_block.restricted = true;
74
+ }
75
+ if (config.blocks.blocksConfig.embed_eea_map_block) {
76
+ config.blocks.blocksConfig.embed_eea_map_block.restricted = true;
77
+ }
78
+
127
79
  config.settings.apiExpanders = [
128
80
  ...config.settings.apiExpanders,
129
81
  {
@@ -1,32 +0,0 @@
1
- import React from 'react';
2
- import { EditSchema } from '@eeacms/volto-eea-website-policy/components/Blocks/LayoutSettings/schema';
3
- import { BlockDataForm, SidebarPortal } from '@plone/volto/components';
4
- import LayoutSettingsView from '@eeacms/volto-eea-website-policy/components/Blocks/LayoutSettings/LayoutSettingsView';
5
- import '@eeacms/volto-eea-website-policy/components/Blocks/LayoutSettings/edit.less';
6
-
7
- const LayoutSettingsEdit = (props) => {
8
- const schema = EditSchema();
9
- return (
10
- <>
11
- <h3>Page layout settings</h3>
12
- <LayoutSettingsView {...props} />
13
- <SidebarPortal selected={props.selected}>
14
- {props.selected && (
15
- <BlockDataForm
16
- title={schema.title}
17
- schema={schema}
18
- formData={props.data}
19
- onChangeField={(id, value) => {
20
- props.onChangeBlock(props.block, {
21
- ...props.data,
22
- [id]: value,
23
- });
24
- }}
25
- />
26
- )}
27
- </SidebarPortal>
28
- </>
29
- );
30
- };
31
-
32
- export default LayoutSettingsEdit;
@@ -1,15 +0,0 @@
1
- import React from 'react';
2
- import { BodyClass } from '@plone/volto/helpers';
3
- import { getVoltoStyles } from '@eeacms/volto-eea-website-policy/components/Blocks/schema-utils';
4
- import cx from 'classnames';
5
-
6
- const LayoutSettingsView = (props) => {
7
- const classNames = getVoltoStyles(props.data);
8
- return <BodyClass className={cx(classNames)} />;
9
- };
10
-
11
- function propsAreEqual(prevProps, nextProps) {
12
- return prevProps.data === nextProps.data;
13
- }
14
-
15
- export default React.memo(LayoutSettingsView, propsAreEqual);
@@ -1,4 +0,0 @@
1
- #page-edit .block-editor-layoutSettings,
2
- #page-add .block-editor-layoutSettings {
3
- display: none;
4
- }
@@ -1,24 +0,0 @@
1
- import codeSVG from '@plone/volto/icons/code.svg';
2
- import LayoutSettingsView from './LayoutSettingsView';
3
- import LayoutSettingsEdit from './LayoutSettingsEdit';
4
- import BlockSettingsSchema from '@plone/volto/components/manage/Blocks/Block/Schema';
5
-
6
- export default (config) => {
7
- config.blocks.blocksConfig.layoutSettings = {
8
- id: 'layoutSettings',
9
- title: 'Layout settings',
10
- icon: codeSVG,
11
- group: 'common',
12
- view: LayoutSettingsView,
13
- edit: LayoutSettingsEdit,
14
- schema: BlockSettingsSchema,
15
- restricted: ({ properties }) => {
16
- return !!properties['@type'];
17
- },
18
- mostUsed: true,
19
- blockHasOwnFocusManagement: true,
20
- sidebarTab: 1,
21
- };
22
-
23
- return config;
24
- };
@@ -1,31 +0,0 @@
1
- import imageNarrowSVG from '@eeacms/volto-eea-website-policy/components/Blocks/icons/image-narrow.svg';
2
- import imageFitSVG from '@plone/volto/icons/image-fit.svg';
3
- import imageWideSVG from '@plone/volto/icons/image-wide.svg';
4
-
5
- export const ALIGN_INFO_MAP = {
6
- narrow_view: [imageNarrowSVG, 'Narrow width'],
7
- container_view: [imageFitSVG, 'Container width'],
8
- wide_view: [imageWideSVG, 'Wide width'],
9
- };
10
-
11
- export const EditSchema = () => {
12
- return {
13
- title: 'Page layout settings',
14
- fieldsets: [
15
- {
16
- id: 'default',
17
- title: 'Default',
18
- fields: ['layout_size'],
19
- },
20
- ],
21
- required: [],
22
- properties: {
23
- layout_size: {
24
- widget: 'style_align',
25
- title: 'Layout size',
26
- actions: Object.keys(ALIGN_INFO_MAP),
27
- actionsInfoMap: ALIGN_INFO_MAP,
28
- },
29
- },
30
- };
31
- };
@@ -1,5 +0,0 @@
1
- <svg width="36" height="36" viewBox="0 0 36 36" xmlns="http://www.w3.org/2000/svg">
2
- <path d="M10 13L11.9333 11V25L10 23H26L24.0667 25V11L26 13H10ZM26 11V18V21.5V23.5V25H10V11H26Z" fill="black"/>
3
- <path fill-rule="evenodd" clip-rule="evenodd" d="M7 31H29V29H7V31Z"/>
4
- <path fill-rule="evenodd" clip-rule="evenodd" d="M7 7H29V5H7V7Z"/>
5
- </svg>
@@ -1,16 +0,0 @@
1
- export const getVoltoStyles = (props) => {
2
- // return an object with same key and value for cx class setting
3
- const styles = props ? props : {};
4
- const output = {};
5
- for (const [key, value] of Object.entries(styles)) {
6
- if (key === '@type') {
7
- continue;
8
- }
9
- if (styles[key] === true) {
10
- output[key] = key;
11
- } else {
12
- output[value] = value;
13
- }
14
- }
15
- return output;
16
- };
@@ -1,51 +0,0 @@
1
- import { cloneDeep } from 'lodash';
2
- import imageNarrowSVG from '@eeacms/volto-eea-website-policy/components/Blocks/icons/image-narrow.svg';
3
- import imageFitSVG from '@plone/volto/icons/image-fit.svg';
4
- import imageWideSVG from '@plone/volto/icons/image-wide.svg';
5
- import imageFullSVG from '@plone/volto/icons/image-full.svg';
6
-
7
- export const ALIGN_INFO_MAP = {
8
- narrow_width: [imageNarrowSVG, 'Narrow width'],
9
- container_width: [imageFitSVG, 'Container width'],
10
- wide_width: [imageWideSVG, 'Wide width'],
11
- full: [imageFullSVG, 'Full width'],
12
- };
13
-
14
- export const addStylingFieldsetSchemaEnhancer = ({ schema }) => {
15
- const applied = schema?.properties?.styles;
16
-
17
- if (!applied) {
18
- const resSchema = cloneDeep(schema);
19
-
20
- resSchema.fieldsets.push({
21
- id: 'styling',
22
- fields: ['styles'],
23
- title: 'Styling',
24
- });
25
- resSchema.properties.styles = {
26
- widget: 'object',
27
- title: 'Styling',
28
- schema: {
29
- fieldsets: [
30
- {
31
- id: 'default',
32
- title: 'Default',
33
- fields: ['size'],
34
- },
35
- ],
36
- properties: {
37
- size: {
38
- widget: 'style_align',
39
- title: 'Section size',
40
- actions: Object.keys(ALIGN_INFO_MAP),
41
- actionsInfoMap: ALIGN_INFO_MAP,
42
- },
43
- },
44
- required: [],
45
- },
46
- };
47
- return resSchema;
48
- }
49
-
50
- return schema;
51
- };