diff --git a/packages/blocks/blocksAntd/demo/examples/PageHeaderMenu.yaml b/packages/blocks/blocksAntd/demo/examples/PageHeaderMenu.yaml
index e8e2f0bf6..b3dd9293a 100644
--- a/packages/blocks/blocksAntd/demo/examples/PageHeaderMenu.yaml
+++ b/packages/blocks/blocksAntd/demo/examples/PageHeaderMenu.yaml
@@ -1,6 +1,6 @@
- id: default
type: PageHeaderMenu
-- id: "properties.menu"
+- id: 'properties.menu'
type: PageHeaderMenu
properties:
menu:
@@ -17,11 +17,11 @@
properties:
icon: ExclamationCircleOutlined
title: Alert
-- id: "properties.logo.src"
+- id: 'properties.logo.src'
type: PageHeaderMenu
properties:
logo:
- src: "https://lowdefy.com/logos/name_250.png"
+ src: 'https://lowdefy.com/logos/name_250.png'
menu:
links:
- id: Introduction
@@ -36,11 +36,11 @@
properties:
icon: ExclamationCircleOutlined
title: Alert
-- id: "properties.logo.alt"
+- id: 'properties.logo.alt'
type: PageHeaderMenu
properties:
logo:
- alt: "Header logo alt text"
+ alt: 'Header logo alt text'
menu:
links:
- id: Introduction
@@ -55,17 +55,55 @@
properties:
icon: ExclamationCircleOutlined
title: Alert
-- id: "properties.logo.style"
+- id: 'properties.logo.style'
type: PageHeaderMenu
properties:
logo:
- style:
+ style:
border: 5px solid blue
-- id: "properties.header.color"
+- id: 'properties.logo.srcset'
+ type: PageHeaderMenu
+ properties:
+ logo:
+ srcset: 'https://lowdefy.com/logos/name_250.png 250w, https://lowdefy.com/logos/name_450.png 450w'
+ menu:
+ links:
+ - id: Introduction
+ type: MenuLink
+ pageId: introduction
+ properties:
+ icon: RocketOutlined
+ title: Introduction
+ - id: alert
+ type: MenuLink
+ pageId: Alert
+ properties:
+ icon: ExclamationCircleOutlined
+ title: Alert
+- id: 'properties.logo.size'
+ type: PageHeaderMenu
+ properties:
+ logo:
+ srcset: '(max-width: 767px) 40px, 768px'
+ menu:
+ links:
+ - id: Introduction
+ type: MenuLink
+ pageId: introduction
+ properties:
+ icon: RocketOutlined
+ title: Introduction
+ - id: alert
+ type: MenuLink
+ pageId: Alert
+ properties:
+ icon: ExclamationCircleOutlined
+ title: Alert
+- id: 'properties.header.color'
type: PageHeaderMenu
properties:
header:
- color: "#3f51b5"
+ color: '#3f51b5'
menu:
links:
- id: Introduction
@@ -80,7 +118,7 @@
properties:
icon: ExclamationCircleOutlined
title: Alert
-- id: "properties.header.theme: light"
+- id: 'properties.header.theme: light'
type: PageHeaderMenu
properties:
header:
@@ -99,42 +137,42 @@
properties:
icon: ExclamationCircleOutlined
title: Alert
-- id: "properties.breadcrumb.list"
+- id: 'properties.breadcrumb.list'
type: PageHeaderMenu
properties:
breadcrumb:
- list:
+ list:
- Link one
- Link two
-- id: "properties.footer.style"
+- id: 'properties.footer.style'
type: PageHeaderMenu
properties:
footer:
- style:
+ style:
border: 5px solid blue
areas:
footer:
blocks: []
-- id: "properties.content.style"
+- id: 'properties.content.style'
type: PageHeaderMenu
properties:
content:
- style:
+ style:
border: 5px solid blue
areas:
content:
blocks: []
-- id: "properties.header.style"
+- id: 'properties.header.style'
type: PageHeaderMenu
properties:
header:
- style:
+ style:
border: 5px solid blue
areas:
header:
blocks: []
-- id: "properties.style"
+- id: 'properties.style'
type: PageHeaderMenu
properties:
- style:
- border: 5px solid blue
\ No newline at end of file
+ style:
+ border: 5px solid blue
diff --git a/packages/blocks/blocksAntd/demo/examples/PageSiderMenu.yaml b/packages/blocks/blocksAntd/demo/examples/PageSiderMenu.yaml
index e0e1c9f31..2af669be2 100644
--- a/packages/blocks/blocksAntd/demo/examples/PageSiderMenu.yaml
+++ b/packages/blocks/blocksAntd/demo/examples/PageSiderMenu.yaml
@@ -1,6 +1,6 @@
- id: default
type: PageSiderMenu
-- id: "properties.menu"
+- id: 'properties.menu'
type: PageSiderMenu
properties:
menu:
@@ -17,11 +17,11 @@
properties:
icon: ExclamationCircleOutlined
title: Alert
-- id: "properties.logo.src"
+- id: 'properties.logo.src'
type: PageHeaderMenu
properties:
logo:
- src: "https://lowdefy.com/logos/name_250.png"
+ src: 'https://lowdefy.com/logos/name_250.png'
menu:
links:
- id: Introduction
@@ -36,11 +36,11 @@
properties:
icon: ExclamationCircleOutlined
title: Alert
-- id: "properties.logo.alt"
+- id: 'properties.logo.alt'
type: PageHeaderMenu
properties:
logo:
- alt: "Header logo alt text"
+ alt: 'Header logo alt text'
menu:
links:
- id: Introduction
@@ -55,17 +55,55 @@
properties:
icon: ExclamationCircleOutlined
title: Alert
-- id: "properties.logo.style"
+- id: 'properties.logo.style'
type: PageHeaderMenu
properties:
logo:
- style:
+ style:
border: 5px solid blue
-- id: "properties.header.color"
+- id: 'properties.logo.srcset'
+ type: PageHeaderMenu
+ properties:
+ logo:
+ srcset: 'https://lowdefy.com/logos/name_250.png 250w, https://lowdefy.com/logos/name_450.png 450w'
+ menu:
+ links:
+ - id: Introduction
+ type: MenuLink
+ pageId: introduction
+ properties:
+ icon: RocketOutlined
+ title: Introduction
+ - id: alert
+ type: MenuLink
+ pageId: Alert
+ properties:
+ icon: ExclamationCircleOutlined
+ title: Alert
+- id: 'properties.logo.size'
+ type: PageHeaderMenu
+ properties:
+ logo:
+ srcset: '(max-width: 767px) 40px, 768px'
+ menu:
+ links:
+ - id: Introduction
+ type: MenuLink
+ pageId: introduction
+ properties:
+ icon: RocketOutlined
+ title: Introduction
+ - id: alert
+ type: MenuLink
+ pageId: Alert
+ properties:
+ icon: ExclamationCircleOutlined
+ title: Alert
+- id: 'properties.header.color'
type: PageSiderMenu
properties:
header:
- color: "#3f51b5"
+ color: '#3f51b5'
menu:
links:
- id: Introduction
@@ -80,11 +118,11 @@
properties:
icon: ExclamationCircleOutlined
title: Alert
-- id: "properties.sider.color"
+- id: 'properties.sider.color'
type: PageSiderMenu
properties:
sider:
- color: "#faf7a5"
+ color: '#faf7a5'
menu:
links:
- id: Introduction
@@ -99,13 +137,13 @@
properties:
icon: ExclamationCircleOutlined
title: Alert
-- id: "properties.menu.selectedColor"
+- id: 'properties.menu.selectedColor'
type: PageSiderMenu
properties:
sider:
- color: "#faf7a5"
+ color: '#faf7a5'
menu:
- selectedColor: "#a30331"
+ selectedColor: '#a30331'
links:
- id: Introduction
type: MenuLink
@@ -119,7 +157,7 @@
properties:
icon: ExclamationCircleOutlined
title: Alert
-- id: "properties.header.theme: light"
+- id: 'properties.header.theme: light'
type: PageSiderMenu
properties:
header:
@@ -138,41 +176,41 @@
properties:
icon: ExclamationCircleOutlined
title: Alert
-- id: "properties.breadcrumb.list"
+- id: 'properties.breadcrumb.list'
type: PageHeaderMenu
properties:
breadcrumb:
- list:
+ list:
- Link one
- Link two
-- id: "properties.footer.style"
+- id: 'properties.footer.style'
type: PageHeaderMenu
properties:
footer:
- style:
+ style:
border: 5px solid blue
areas:
footer:
blocks: []
-- id: "properties.content.style"
+- id: 'properties.content.style'
type: PageHeaderMenu
properties:
content:
- style:
+ style:
border: 5px solid blue
areas:
content:
blocks: []
-- id: "properties.sider.style"
+- id: 'properties.sider.style'
type: PageHeaderMenu
properties:
sider:
- style:
+ style:
border: 5px solid blue
areas:
sider:
blocks: []
-- id: "properties.sider.initialCollapsed"
+- id: 'properties.sider.initialCollapsed'
type: PageHeaderMenu
properties:
sider:
@@ -180,12 +218,12 @@
areas:
sider:
blocks: []
-- id: "properties.sider.theme: dark"
+- id: 'properties.sider.theme: dark'
type: PageHeaderMenu
properties:
sider:
theme: dark
-- id: "properties.toggleSiderButton.type"
+- id: 'properties.toggleSiderButton.type'
type: PageHeaderMenu
properties:
toggleSiderButton:
@@ -193,7 +231,7 @@
areas:
sider:
blocks: []
-- id: "properties.toggleSiderButton.hide"
+- id: 'properties.toggleSiderButton.hide'
type: PageHeaderMenu
properties:
toggleSiderButton:
@@ -201,17 +239,17 @@
areas:
sider:
blocks: []
-- id: "properties.header.style"
+- id: 'properties.header.style'
type: PageHeaderMenu
properties:
header:
- style:
+ style:
border: 5px solid blue
areas:
header:
blocks: []
-- id: "properties.style"
+- id: 'properties.style'
type: PageHeaderMenu
properties:
- style:
- border: 5px solid blue
\ No newline at end of file
+ style:
+ border: 5px solid blue
diff --git a/packages/blocks/blocksAntd/src/blocks/PageHeaderMenu/PageHeaderMenu.js b/packages/blocks/blocksAntd/src/blocks/PageHeaderMenu/PageHeaderMenu.js
index 05aa927d0..0bccbe047 100644
--- a/packages/blocks/blocksAntd/src/blocks/PageHeaderMenu/PageHeaderMenu.js
+++ b/packages/blocks/blocksAntd/src/blocks/PageHeaderMenu/PageHeaderMenu.js
@@ -56,12 +56,10 @@ const PageHeaderMenu = ({
justifyContent: 'flex-end',
},
logo: {
- width: 130,
margin: '0px 30px',
flex: '0 1 auto',
sm: { margin: '0 10px' },
md: { margin: '0 15px' },
- lg: { margin: '0 30px' },
},
lgMenu: {
flex: '1 1 auto',
@@ -124,8 +122,28 @@ const PageHeaderMenu = ({
? '/public/logo-light-theme.png'
: '/public/logo-dark-theme.png')
}
+ srcset={
+ (properties.logo && (properties.logo.srcset || properties.logo.src)) ||
+ (get(properties, 'header.theme') === 'light'
+ ? '/public/logo-square-light-theme.png 40w, /public/logo-light-theme.png 768w'
+ : '/public/logo-square-dark-theme.png 40w, /public/logo-dark-theme.png 768w')
+ }
+ sizes={
+ (properties.logo && properties.logo.sizes) ||
+ '(max-width: 767px) 40px, 768px'
+ }
alt={(properties.logo && properties.logo.alt) || 'Lowdefy'}
className={methods.makeCssClass([
+ {
+ width: 130,
+ sm: {
+ width:
+ properties.logo && properties.logo.src && !properties.logo.srcset
+ ? 130
+ : 40,
+ },
+ md: { width: 130 },
+ },
styles.logo,
properties.logo && properties.logo.style,
])}
diff --git a/packages/blocks/blocksAntd/src/blocks/PageHeaderMenu/PageHeaderMenu.json b/packages/blocks/blocksAntd/src/blocks/PageHeaderMenu/PageHeaderMenu.json
index 136253261..9b7781ac2 100644
--- a/packages/blocks/blocksAntd/src/blocks/PageHeaderMenu/PageHeaderMenu.json
+++ b/packages/blocks/blocksAntd/src/blocks/PageHeaderMenu/PageHeaderMenu.json
@@ -34,6 +34,14 @@
"type": "string",
"description": "Header logo source url."
},
+ "srcset": {
+ "type": "string",
+ "description": "Header logo srcset for logo img element."
+ },
+ "size": {
+ "type": "string",
+ "description": "Header logo size for logo img element."
+ },
"alt": {
"type": "string",
"default": "Lowdefy",
diff --git a/packages/blocks/blocksAntd/src/blocks/PageSiderMenu/PageSiderMenu.js b/packages/blocks/blocksAntd/src/blocks/PageSiderMenu/PageSiderMenu.js
index 171161b80..5c359296e 100644
--- a/packages/blocks/blocksAntd/src/blocks/PageSiderMenu/PageSiderMenu.js
+++ b/packages/blocks/blocksAntd/src/blocks/PageSiderMenu/PageSiderMenu.js
@@ -71,7 +71,6 @@ const PageSiderMenu = ({
justifyContent: 'flex-end',
},
logo: {
- width: 130,
margin: '0 30px 0 0',
flex: '0 1 auto',
sm: { margin: '0 10px 0 0' },
@@ -169,8 +168,28 @@ const PageSiderMenu = ({
? '/public/logo-light-theme.png'
: '/public/logo-dark-theme.png')
}
+ srcset={
+ (properties.logo && (properties.logo.srcset || properties.logo.src)) ||
+ (get(properties, 'header.theme') === 'light'
+ ? '/public/logo-square-light-theme.png 40w, /public/logo-light-theme.png 768w'
+ : '/public/logo-square-dark-theme.png 40w, /public/logo-dark-theme.png 768w')
+ }
+ sizes={
+ (properties.logo && properties.logo.sizes) ||
+ '(max-width: 767px) 40px, 768px'
+ }
alt={(properties.logo && properties.logo.alt) || 'Lowdefy'}
className={methods.makeCssClass([
+ {
+ width: 130,
+ sm: {
+ width:
+ properties.logo && properties.logo.src && !properties.logo.srcset
+ ? 130
+ : 40,
+ },
+ md: { width: 130 },
+ },
styles.logo,
properties.logo && properties.logo.style,
])}
diff --git a/packages/blocks/blocksAntd/src/blocks/PageSiderMenu/PageSiderMenu.json b/packages/blocks/blocksAntd/src/blocks/PageSiderMenu/PageSiderMenu.json
index 0872bdad1..6d3fa8e17 100644
--- a/packages/blocks/blocksAntd/src/blocks/PageSiderMenu/PageSiderMenu.json
+++ b/packages/blocks/blocksAntd/src/blocks/PageSiderMenu/PageSiderMenu.json
@@ -44,6 +44,14 @@
"type": "string",
"description": "Header logo source url."
},
+ "srcset": {
+ "type": "string",
+ "description": "Header logo srcset for logo img element."
+ },
+ "size": {
+ "type": "string",
+ "description": "Header logo size for logo img element."
+ },
"alt": {
"type": "string",
"default": "Lowdefy",
diff --git a/packages/blocks/blocksAntd/tests/__snapshots__/PageHeaderMenu.mock.test.js.snap b/packages/blocks/blocksAntd/tests/__snapshots__/PageHeaderMenu.mock.test.js.snap
index 74ccffaf7..9d41e0cba 100644
--- a/packages/blocks/blocksAntd/tests/__snapshots__/PageHeaderMenu.mock.test.js.snap
+++ b/packages/blocks/blocksAntd/tests/__snapshots__/PageHeaderMenu.mock.test.js.snap
@@ -871,6 +871,110 @@ Array [
]
`;
+exports[`Mock render - properties.logo.size - value[0] - default 1`] = `
+Array [
+ Array [
+ Object {
+ "children":
+
+
+ ,
+ "className": "css-vooagt",
+ "id": "properties.logo.size",
+ },
+ Object {},
+ ],
+]
+`;
+
exports[`Mock render - properties.logo.src - value[0] - default 1`] = `
Array [
Array [
@@ -975,6 +1079,110 @@ Array [
]
`;
+exports[`Mock render - properties.logo.srcset - value[0] - default 1`] = `
+Array [
+ Array [
+ Object {
+ "children":
+
+
+ ,
+ "className": "css-vooagt",
+ "id": "properties.logo.srcset",
+ },
+ Object {},
+ ],
+]
+`;
+
exports[`Mock render - properties.logo.style - value[0] - default 1`] = `
Array [
Array [
diff --git a/packages/blocks/blocksAntd/tests/__snapshots__/PageHeaderMenu.test.js.snap b/packages/blocks/blocksAntd/tests/__snapshots__/PageHeaderMenu.test.js.snap
index 49ab7884c..e2d969a3b 100644
--- a/packages/blocks/blocksAntd/tests/__snapshots__/PageHeaderMenu.test.js.snap
+++ b/packages/blocks/blocksAntd/tests/__snapshots__/PageHeaderMenu.test.js.snap
@@ -32,10 +32,18 @@ exports[`Test Schema properties.logo.alt 1`] = `true`;
exports[`Test Schema properties.logo.alt 2`] = `null`;
+exports[`Test Schema properties.logo.size 1`] = `true`;
+
+exports[`Test Schema properties.logo.size 2`] = `null`;
+
exports[`Test Schema properties.logo.src 1`] = `true`;
exports[`Test Schema properties.logo.src 2`] = `null`;
+exports[`Test Schema properties.logo.srcset 1`] = `true`;
+
+exports[`Test Schema properties.logo.srcset 2`] = `null`;
+
exports[`Test Schema properties.logo.style 1`] = `true`;
exports[`Test Schema properties.logo.style 2`] = `null`;
diff --git a/packages/blocks/blocksAntd/tests/__snapshots__/PageSiderMenu.mock.test.js.snap b/packages/blocks/blocksAntd/tests/__snapshots__/PageSiderMenu.mock.test.js.snap
index 19f69071c..893dc130d 100644
--- a/packages/blocks/blocksAntd/tests/__snapshots__/PageSiderMenu.mock.test.js.snap
+++ b/packages/blocks/blocksAntd/tests/__snapshots__/PageSiderMenu.mock.test.js.snap
@@ -723,6 +723,96 @@ Array [
]
`;
+exports[`Mock render - properties.logo.size - value[0] - default 1`] = `
+Array [
+ Array [
+ Object {
+ "children":
+
+
+ ,
+ "className": "css-vooagt",
+ "id": "properties.logo.size",
+ },
+ Object {},
+ ],
+]
+`;
+
exports[`Mock render - properties.logo.src - value[0] - default 1`] = `
Array [
Array [
@@ -813,6 +903,96 @@ Array [
]
`;
+exports[`Mock render - properties.logo.srcset - value[0] - default 1`] = `
+Array [
+ Array [
+ Object {
+ "children":
+
+
+ ,
+ "className": "css-vooagt",
+ "id": "properties.logo.srcset",
+ },
+ Object {},
+ ],
+]
+`;
+
exports[`Mock render - properties.logo.style - value[0] - default 1`] = `
Array [
Array [
diff --git a/packages/blocks/blocksAntd/tests/__snapshots__/PageSiderMenu.test.js.snap b/packages/blocks/blocksAntd/tests/__snapshots__/PageSiderMenu.test.js.snap
index bf1c6bd54..2bc09c58b 100644
--- a/packages/blocks/blocksAntd/tests/__snapshots__/PageSiderMenu.test.js.snap
+++ b/packages/blocks/blocksAntd/tests/__snapshots__/PageSiderMenu.test.js.snap
@@ -55,8 +55,10 @@ exports[`Render default - value[0] 1`] = `
>
@@ -228,8 +230,10 @@ exports[`Render properties.breadcrumb.list - value[0] 1`] = `
>
@@ -435,8 +439,10 @@ exports[`Render properties.content.style - value[0] 1`] = `
>
@@ -608,8 +614,10 @@ exports[`Render properties.footer.style - value[0] 1`] = `
>
@@ -796,8 +804,10 @@ exports[`Render properties.header.color - value[0] 1`] = `
>
@@ -1066,8 +1076,10 @@ exports[`Render properties.header.style - value[0] 1`] = `
>
@@ -1239,8 +1251,10 @@ exports[`Render properties.header.theme: light - value[0] 1`] = `
>
@@ -1499,8 +1513,10 @@ exports[`Render properties.logo.alt - value[0] 1`] = `
>
@@ -1704,6 +1720,268 @@ exports[`Render properties.logo.alt - value[0] 1`] = `
`;
+exports[`Render properties.logo.size - value[0] 1`] = `
+
+`;
+
exports[`Render properties.logo.src - value[0] 1`] = `
@@ -1964,6 +2244,268 @@ exports[`Render properties.logo.src - value[0] 1`] = `
`;
+exports[`Render properties.logo.srcset - value[0] 1`] = `
+
+`;
+
exports[`Render properties.logo.style - value[0] 1`] = `
@@ -2192,8 +2736,10 @@ exports[`Render properties.menu - value[0] 1`] = `
>
@@ -2452,8 +2998,10 @@ exports[`Render properties.menu.selectedColor - value[0] 1`] = `
>
@@ -2712,8 +3260,10 @@ exports[`Render properties.sider.color - value[0] 1`] = `
>
@@ -2972,8 +3522,10 @@ exports[`Render properties.sider.initialCollapsed - value[0] 1`] = `
>
@@ -3156,8 +3708,10 @@ exports[`Render properties.sider.style - value[0] 1`] = `
>
@@ -3340,8 +3894,10 @@ exports[`Render properties.sider.theme: dark - value[0] 1`] = `
>
@@ -3513,8 +4069,10 @@ exports[`Render properties.style - value[0] 1`] = `
>
@@ -3686,8 +4244,10 @@ exports[`Render properties.toggleSiderButton.hide - value[0] 1`] = `
>
@@ -3870,8 +4430,10 @@ exports[`Render properties.toggleSiderButton.type - value[0] 1`] = `
>
@@ -4031,10 +4593,18 @@ exports[`Test Schema properties.logo.alt 1`] = `true`;
exports[`Test Schema properties.logo.alt 2`] = `null`;
+exports[`Test Schema properties.logo.size 1`] = `true`;
+
+exports[`Test Schema properties.logo.size 2`] = `null`;
+
exports[`Test Schema properties.logo.src 1`] = `true`;
exports[`Test Schema properties.logo.src 2`] = `null`;
+exports[`Test Schema properties.logo.srcset 1`] = `true`;
+
+exports[`Test Schema properties.logo.srcset 2`] = `null`;
+
exports[`Test Schema properties.logo.style 1`] = `true`;
exports[`Test Schema properties.logo.style 2`] = `null`;